Merge "Merge commit '3d6176ad27301b189799cd2cd7d2feadaf248f13' into cros_sdk"
diff --git a/OWNERS.kernel b/OWNERS.kernel
index 9340c2f..2173290 100644
--- a/OWNERS.kernel
+++ b/OWNERS.kernel
@@ -1,6 +1,5 @@
 # Some files may benefit from kernel-domain expertise.
 briannorris@chromium.org
 dianders@chromium.org
-drinkcat@chromium.org
 groeck@chromium.org
 swboyd@chromium.org
diff --git a/app-accessibility/espeak-ng/Manifest b/app-accessibility/espeak-ng/Manifest
index 9943fcc..fefc032 100644
--- a/app-accessibility/espeak-ng/Manifest
+++ b/app-accessibility/espeak-ng/Manifest
@@ -1 +1 @@
-DIST espeak-ng-1.49.3.12.tar.gz 15407875 BLAKE2B 8850ef4464ae8d491120673b74fe7be02e466b9d031725656b497f8e27fe910fb22ca2a688fcf226347a7d85efc1a367dfa581d0d94e1a4e6a7e891a03b50550 SHA512 96b3aff54590333df50c95194d47a42b616e4fcfb8416d14810747f3b4b25865d687b41c75b4ad9ecf790408f23a2ba69dea44a35566369ae553a9bfcefbe285
+DIST espeak-ng-1.49.3.13.tar.gz 15407880 BLAKE2B 7c08e5122dc78871f45ec7d1c8967d03307c1ea563b70b7a0ae34b6d5ef7d280f98161a5e566233a810dd0d9cd121ca897a4aeb6e892eee20296fa07457096ee SHA512 4f1df76bb420656d3a2e1084a83d0a2fca9562c458ac6cc98d59207bcd58280bcc33a670068060e5e940c160f067746e3cde04b7a9034fe4e6f61f7ff092124c
diff --git a/app-accessibility/espeak-ng/espeak-ng-1.49.3.12.ebuild b/app-accessibility/espeak-ng/espeak-ng-1.49.3.13.ebuild
similarity index 100%
rename from app-accessibility/espeak-ng/espeak-ng-1.49.3.12.ebuild
rename to app-accessibility/espeak-ng/espeak-ng-1.49.3.13.ebuild
diff --git a/app-accessibility/googletts/Manifest b/app-accessibility/googletts/Manifest
index 697d05c..bb29a94 100644
--- a/app-accessibility/googletts/Manifest
+++ b/app-accessibility/googletts/Manifest
@@ -1 +1 @@
-DIST googletts-26.5.tar.xz 118800272 BLAKE2B 8d3d03337f229b4b54c30d958f543d952f92d141f521e4e06b2b2fc262e128183c7e3c8263576bbc0c78c5d2ad123fe898017b31a48063a0aed2dc19cc3b9514 SHA512 478f7a17bfc8bb0c99f9768cf9c8d1c9dc255f3cbda12c59abebf1815d46dd3c1f7c789c9eda521012f6a1ffad620c9737ab056b3a0816a64f4989c33b2d4d37
+DIST googletts-26.6.1.tar.xz 119203764 BLAKE2B 68a56b368ae24048d539411fc32841b8920881160af9ef35e55081e6b0fcb3da6e80d28b96994954411bae3488c5b50b009b49911a6c3b4be6609d63abfb13cb SHA512 7a82841cbda6cc104b95831123f7c6ee6f085c8d2ff7230178becfb9585cd398bec752acab361cb965fba7f99463d25647a28d13e05edaafe24f9ccd0bb7dde7
diff --git a/app-accessibility/googletts/googletts-26.5.ebuild b/app-accessibility/googletts/googletts-26.6.1.ebuild
similarity index 100%
rename from app-accessibility/googletts/googletts-26.5.ebuild
rename to app-accessibility/googletts/googletts-26.6.1.ebuild
diff --git a/app-arch/libarchive/Manifest b/app-arch/libarchive/Manifest
new file mode 100644
index 0000000..5a2008c
--- /dev/null
+++ b/app-arch/libarchive/Manifest
@@ -0,0 +1 @@
+DIST libarchive-3.5.1.tar.gz 7008338 BLAKE2B 243dfda2bd4582bbc20679328b89aae0c530475c822dcf9ff25c65df2017b8f18bb616142d6ab016ccea4a5aa1b410d46b913c2ee0afefd2fdb1a41cf51585d9 SHA512 08ddd74bef4cef0981739da202879f36cf7ca33a8f6d438724588efe3ab8477f2f1d0cccf7b8ed0bedfc0c8d0cab16ee3ae5c0c6e83b6811bc650d7d7471a996
diff --git a/sys-fs/archivemount/OWNERS b/app-arch/libarchive/OWNERS
similarity index 100%
copy from sys-fs/archivemount/OWNERS
copy to app-arch/libarchive/OWNERS
diff --git a/app-arch/libarchive/files/libarchive-3.5.0-darwin-strnlen.patch b/app-arch/libarchive/files/libarchive-3.5.0-darwin-strnlen.patch
new file mode 100644
index 0000000..8f540e4
--- /dev/null
+++ b/app-arch/libarchive/files/libarchive-3.5.0-darwin-strnlen.patch
@@ -0,0 +1,27 @@
+https://github.com/macports/macports-ports/blob/master/archivers/libarchive/files/patch-libarchive-3.5-strnlen.diff
+
+next release should have a fix for this
+
+--- a/libarchive/archive_read_support_format_mtree.c
++++ b/libarchive/archive_read_support_format_mtree.c
+@@ -65,6 +65,20 @@ __FBSDID("$FreeBSD: head/lib/libarchive/archive_read_support_format_mtree.c 2011
+ #define O_CLOEXEC	0
+ #endif
+ 
++#ifdef __APPLE__
++#if  __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 1070
++static size_t strnlen(const char *s, size_t maxlen) {
++  size_t l = 0;
++  while (l < maxlen && *s) {
++    l++;
++    s++;
++  }
++  return l;
++}
++#endif
++#endif
++
++
+ #define	MTREE_HAS_DEVICE	0x0001
+ #define	MTREE_HAS_FFLAGS	0x0002
+ #define	MTREE_HAS_GID		0x0004
diff --git a/app-arch/libarchive/files/libarchive-3.5.1-7zip-32-bit-size.patch b/app-arch/libarchive/files/libarchive-3.5.1-7zip-32-bit-size.patch
new file mode 100644
index 0000000..ca0d1c6
--- /dev/null
+++ b/app-arch/libarchive/files/libarchive-3.5.1-7zip-32-bit-size.patch
@@ -0,0 +1,38 @@
+commit 4da892a67a30476798af79586fec79388620756c
+Author: r0ptr <r0ptr@protonmail.com>
+Date:   Sun Jan 10 13:36:03 2021 +0100
+
+    Fix truncation of size values during 7zip archive extraction on 32bit architectures
+
+diff --git a/libarchive/archive_read_support_format_7zip.c b/libarchive/archive_read_support_format_7zip.c
+index 6ce9d1a0..f98566a3 100644
+--- a/libarchive/archive_read_support_format_7zip.c
++++ b/libarchive/archive_read_support_format_7zip.c
+@@ -808,8 +808,12 @@ archive_read_format_7zip_read_data(struct archive_read *a,
+ 	if (zip->end_of_entry)
+ 		return (ARCHIVE_EOF);
+ 
+-	bytes = read_stream(a, buff,
+-		(size_t)zip->entry_bytes_remaining, 0);
++	const uint64_t max_read_size = 16 * 1024 * 1024;  // Don't try to read more than 16 MB at a time
++	size_t bytes_to_read = max_read_size;
++	if ((uint64_t)bytes_to_read > zip->entry_bytes_remaining) {
++		bytes_to_read = zip->entry_bytes_remaining;
++	}
++	bytes = read_stream(a, buff, bytes_to_read, 0);
+ 	if (bytes < 0)
+ 		return ((int)bytes);
+ 	if (bytes == 0) {
+@@ -3031,10 +3035,10 @@ extract_pack_stream(struct archive_read *a, size_t minimum)
+ 			    "Truncated 7-Zip file body");
+ 			return (ARCHIVE_FATAL);
+ 		}
+-		if (bytes_avail > (ssize_t)zip->pack_stream_inbytes_remaining)
++		if ((uint64_t)bytes_avail > zip->pack_stream_inbytes_remaining)
+ 			bytes_avail = (ssize_t)zip->pack_stream_inbytes_remaining;
+ 		zip->pack_stream_inbytes_remaining -= bytes_avail;
+-		if (bytes_avail > (ssize_t)zip->folder_outbytes_remaining)
++		if ((uint64_t)bytes_avail > zip->folder_outbytes_remaining)
+ 			bytes_avail = (ssize_t)zip->folder_outbytes_remaining;
+ 		zip->folder_outbytes_remaining -= bytes_avail;
+ 		zip->uncompressed_buffer_bytes_remaining = bytes_avail;
diff --git a/app-arch/libarchive/files/libarchive-3.5.1-disable-rar5.patch b/app-arch/libarchive/files/libarchive-3.5.1-disable-rar5.patch
new file mode 100644
index 0000000..24b5528
--- /dev/null
+++ b/app-arch/libarchive/files/libarchive-3.5.1-disable-rar5.patch
@@ -0,0 +1,14 @@
+diff --git a/libarchive/archive_read_support_format_rar5.c b/libarchive/archive_read_support_format_rar5.c
+index 5d62d16e..32e1757c 100644
+--- a/libarchive/archive_read_support_format_rar5.c
++++ b/libarchive/archive_read_support_format_rar5.c
+@@ -4059,6 +4059,9 @@ static int rar5_init(struct rar5* rar) {
+ }
+ 
+ int archive_read_support_format_rar5(struct archive *_a) {
++	/* Chrome OS has disabled libarchive/rar5 support. */
++	return ARCHIVE_FATAL;
++
+ 	struct archive_read* ar;
+ 	int ret;
+ 	struct rar5* rar;
diff --git a/app-arch/libarchive/libarchive-3.5.1-r2.ebuild b/app-arch/libarchive/libarchive-3.5.1-r2.ebuild
new file mode 120000
index 0000000..ba24b32
--- /dev/null
+++ b/app-arch/libarchive/libarchive-3.5.1-r2.ebuild
@@ -0,0 +1 @@
+libarchive-3.5.1.ebuild
\ No newline at end of file
diff --git a/app-arch/libarchive/libarchive-3.5.1.ebuild b/app-arch/libarchive/libarchive-3.5.1.ebuild
new file mode 100644
index 0000000..b8bc8f8
--- /dev/null
+++ b/app-arch/libarchive/libarchive-3.5.1.ebuild
@@ -0,0 +1,149 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit libtool multilib-minimal toolchain-funcs
+
+DESCRIPTION="Multi-format archive and compression library"
+HOMEPAGE="https://www.libarchive.org/"
+SRC_URI="https://www.libarchive.org/downloads/${P}.tar.gz"
+
+LICENSE="BSD BSD-2 BSD-4 public-domain"
+SLOT="0/13"
+KEYWORDS="*"
+IUSE="acl blake2 +bzip2 +e2fsprogs expat +iconv kernel_linux lz4 +lzma lzo nettle static-libs +threads xattr +zlib zstd"
+
+RDEPEND="
+	acl? ( virtual/acl[${MULTILIB_USEDEP}] )
+	blake2? ( app-crypt/libb2[${MULTILIB_USEDEP}] )
+	bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
+	expat? ( dev-libs/expat[${MULTILIB_USEDEP}] )
+	!expat? ( dev-libs/libxml2[${MULTILIB_USEDEP}] )
+	iconv? ( virtual/libiconv[${MULTILIB_USEDEP}] )
+	kernel_linux? (
+		xattr? ( sys-apps/attr[${MULTILIB_USEDEP}] )
+	)
+	dev-libs/openssl:0=[${MULTILIB_USEDEP}]
+	lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
+	lzma? ( app-arch/xz-utils[threads=,${MULTILIB_USEDEP}] )
+	lzo? ( >=dev-libs/lzo-2[${MULTILIB_USEDEP}] )
+	nettle? ( dev-libs/nettle:0=[${MULTILIB_USEDEP}] )
+	zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
+	zstd? ( app-arch/zstd[${MULTILIB_USEDEP}] )"
+DEPEND="${RDEPEND}
+	kernel_linux? (
+		virtual/os-headers
+		e2fsprogs? ( sys-fs/e2fsprogs )
+	)"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-3.5.0-darwin-strnlen.patch  # drop on next release
+	# There was a security vulnerability in libarchive's rar5 support. We don't
+	# have a fix yet, but we also don't use it (unlike libarchive's support for
+	# other formats). Just disable it.
+	# https://bugs.chromium.org/p/chromium/issues/detail?id=1233932
+	"${FILESDIR}"/${PN}-3.5.1-disable-rar5.patch
+	# https://github.com/libarchive/libarchive/commit/4da892a67a30476798af79586fec79388620756c
+	# was committed on 2021-01-10, after 3.5.1 was released on 2020-12-26.
+	"${FILESDIR}"/${PN}-3.5.1-7zip-32-bit-size.patch
+)
+
+src_prepare() {
+	default
+	elibtoolize  # is required for Solaris sol2_ld linker fix
+}
+
+multilib_src_configure() {
+	export ac_cv_header_ext2fs_ext2_fs_h=$(usex e2fsprogs) #354923
+
+	local myconf=(
+		$(use_enable acl)
+		$(use_enable static-libs static)
+		$(use_enable xattr)
+		$(use_with blake2 libb2)
+		$(use_with bzip2 bz2lib)
+		$(use_with expat)
+		$(use_with !expat xml2)
+		$(use_with iconv)
+		$(use_with lz4)
+		$(use_with lzma)
+		$(use_with lzo lzo2)
+		$(use_with nettle)
+		$(use_with zlib)
+		$(use_with zstd)
+
+		# Windows-specific
+		--without-cng
+	)
+	if multilib_is_native_abi ; then
+		myconf+=(
+			--enable-bsdcat=$(tc-is-static-only && echo static || echo shared)
+			--enable-bsdcpio=$(tc-is-static-only && echo static || echo shared)
+			--enable-bsdtar=$(tc-is-static-only && echo static || echo shared)
+		)
+	else
+		myconf+=(
+			--disable-bsdcat
+			--disable-bsdcpio
+			--disable-bsdtar
+		)
+	fi
+
+	ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+	if multilib_is_native_abi ; then
+		emake
+	else
+		emake libarchive.la
+	fi
+}
+
+src_test() {
+	mkdir -p "${T}"/bin || die
+	# tests fail when lbzip2[symlink] is used in place of ref bunzip2
+	ln -s "${BROOT}/bin/bunzip2" "${T}"/bin || die
+	local -x PATH=${T}/bin:${PATH}
+	multilib-minimal_src_test
+}
+
+multilib_src_test() {
+	# sandbox is breaking long symlink behavior
+	local -x SANDBOX_ON=0
+	local -x LD_PRELOAD=
+	# some locales trigger different output that breaks tests
+	local -x LC_ALL=C
+	emake check
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi ; then
+		emake DESTDIR="${D}" install
+
+		# Create symlinks for FreeBSD
+		if ! use prefix && [[ ${CHOST} == *-freebsd* ]]; then
+			# Exclude cat for the time being #589876
+			for bin in cpio tar; do
+				dosym bsd${bin} /usr/bin/${bin}
+				echo '.so bsd${bin}.1' > "${T}"/${bin}.1
+				doman "${T}"/${bin}.1
+			done
+		fi
+	else
+		local install_targets=(
+			install-includeHEADERS
+			install-libLTLIBRARIES
+			install-pkgconfigDATA
+		)
+		emake DESTDIR="${D}" "${install_targets[@]}"
+	fi
+
+	# Libs.private: should be used from libarchive.pc instead
+	find "${ED}" -type f -name "*.la" -delete || die
+}
+
+multilib_src_install_all() {
+	cd "${S}" || die
+	einstalldocs
+}
diff --git a/app-arch/libarchive/metadata.xml b/app-arch/libarchive/metadata.xml
new file mode 100644
index 0000000..82253c3
--- /dev/null
+++ b/app-arch/libarchive/metadata.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type="person">
+		<email>mgorny@gentoo.org</email>
+		<name>MichaƂ Górny</name>
+	</maintainer>
+	<longdescription lang="en">
+		C library and command-line tools for reading and writing tar, cpio, zip, ISO, and other archive formats.
+	</longdescription>
+	<use>
+		<flag name="blake2">
+			Enable Blake2 hash support via <pkg>app-crypt/libb2</pkg>.
+		</flag>
+		<flag name="bzip2">
+			Allow accessing bzip2-compressed archives through libbz2 (which
+			comes with <pkg>app-arch/bzip2</pkg>). This only affects
+			libarchive's native support: bsdtar will keep using bunzip2 as a
+			filter if that's not built-in.
+		</flag>
+		<flag name="e2fsprogs">
+			Use file flags from <pkg>sys-fs/e2fsprogs</pkg> headers instead of <pkg>virtual/os-headers</pkg> headers
+		</flag>
+		<flag name="nettle">
+			Use <pkg>dev-libs/nettle</pkg> as crypto backend
+		</flag>
+		<flag name="zlib">
+			Allow accessing gzip-compressed archives through
+			<pkg>sys-libs/zlib</pkg>. This only affects libarchive's native
+			support: bsdtar will keep using gunzip as a filter if that's not
+			built-in. It's also needed for supporting extraction of ZIP
+			files.
+		</flag>
+	</use>
+	<upstream>
+		<remote-id type="cpe">cpe:/a:libarchive:libarchive</remote-id>
+		<remote-id type="github">libarchive/libarchive</remote-id>
+		<bugs-to>https://github.com/libarchive/libarchive/issues</bugs-to>
+	</upstream>
+</pkgmetadata>
diff --git a/app-benchmarks/blktests/blktests-20190430-r2.ebuild b/app-benchmarks/blktests/blktests-20190430-r3.ebuild
similarity index 100%
rename from app-benchmarks/blktests/blktests-20190430-r2.ebuild
rename to app-benchmarks/blktests/blktests-20190430-r3.ebuild
diff --git a/app-benchmarks/blktests/blktests-20190430.ebuild b/app-benchmarks/blktests/blktests-20190430.ebuild
index 606939f..bfaa66f 100644
--- a/app-benchmarks/blktests/blktests-20190430.ebuild
+++ b/app-benchmarks/blktests/blktests-20190430.ebuild
@@ -16,6 +16,10 @@
 
 DEPEND=""
 
+PATCHES=(
+	"${FILESDIR}/blktests-20190430-Remove-unnecessary-linux-kvm.h-include.patch"
+)
+
 RDEPEND="sys-fs/e2fsprogs
 	sys-block/blktrace
 	sys-block/fio
diff --git a/app-benchmarks/blktests/files/blktests-20190430-Remove-unnecessary-linux-kvm.h-include.patch b/app-benchmarks/blktests/files/blktests-20190430-Remove-unnecessary-linux-kvm.h-include.patch
new file mode 100644
index 0000000..b7878e7f
--- /dev/null
+++ b/app-benchmarks/blktests/files/blktests-20190430-Remove-unnecessary-linux-kvm.h-include.patch
@@ -0,0 +1,25 @@
+From c7bac39fbed3fa6735197266512f5d50e67b84cb Mon Sep 17 00:00:00 2001
+From: jrrk <jrrk2@cam.ac.uk>
+Date: Fri, 18 Oct 2019 22:48:17 +0100
+Subject: [PATCH] Remove unnecessary linux/kvm.h include in sg syzkaller test
+ (#53)
+
+---
+ src/sg/syzkaller1.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/src/sg/syzkaller1.c b/src/sg/syzkaller1.c
+index e254d4a..9ea4c21 100644
+--- a/src/sg/syzkaller1.c
++++ b/src/sg/syzkaller1.c
+@@ -34,7 +34,6 @@
+ #include <linux/if_ether.h>
+ #include <linux/if_tun.h>
+ #include <linux/ip.h>
+-#include <linux/kvm.h>
+ #include <linux/sched.h>
+ #include <linux/tcp.h>
+ #include <net/if_arp.h>
+-- 
+2.32.0
+
diff --git a/app-benchmarks/microbenchmarks/microbenchmarks-0.0.1-r7.ebuild b/app-benchmarks/microbenchmarks/microbenchmarks-0.0.1-r7.ebuild
deleted file mode 100644
index 87cf690..0000000
--- a/app-benchmarks/microbenchmarks/microbenchmarks-0.0.1-r7.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="a3c495a9f5657c3778e5179d1c1ba073ad26020b"
-CROS_WORKON_TREE="73cce14d35b05e518d243f94d8466463cdce4ead"
-CROS_WORKON_PROJECT="chromiumos/platform/microbenchmarks"
-CROS_WORKON_LOCALNAME="../platform/microbenchmarks"
-
-inherit cros-workon cros-common.mk
-
-DESCRIPTION="Home for microbenchmarks designed in-house."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/microbenchmarks"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-src_install() {
-	dobin "${OUT}"/memory-eater/memory-eater
-}
diff --git a/app-benchmarks/microbenchmarks/microbenchmarks-0.0.1-r8.ebuild b/app-benchmarks/microbenchmarks/microbenchmarks-0.0.1-r8.ebuild
new file mode 100644
index 0000000..f8cb5fc
--- /dev/null
+++ b/app-benchmarks/microbenchmarks/microbenchmarks-0.0.1-r8.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="beefcc767427751cf1343c1a944c5dbce7aabfa2"
+CROS_WORKON_TREE="d2f7a20eeeca7497d1af6de7e1afcb217fc28aae"
+CROS_WORKON_PROJECT="chromiumos/platform/microbenchmarks"
+CROS_WORKON_LOCALNAME="../platform/microbenchmarks"
+
+inherit cros-workon cros-common.mk
+
+DESCRIPTION="Home for microbenchmarks designed in-house."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/microbenchmarks"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+src_install() {
+	dobin "${OUT}"/memory-eater/memory-eater
+}
diff --git a/app-crypt/tpm-tools/tpm-tools-1.3.9.1-r2.ebuild b/app-crypt/tpm-tools/tpm-tools-1.3.9.1-r2.ebuild
deleted file mode 100644
index a939d39..0000000
--- a/app-crypt/tpm-tools/tpm-tools-1.3.9.1-r2.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic cros-sanitizers
-
-DESCRIPTION="TrouSerS' support tools for the Trusted Platform Modules"
-HOMEPAGE="http://trousers.sourceforge.net"
-SRC_URI="mirror://sourceforge/trousers/${PN}/${P}.tar.gz"
-
-LICENSE="CPL-1.0"
-SLOT="0"
-KEYWORDS="*"
-IUSE="libressl nls pkcs11 tpm2 debug"
-
-DEPEND="
-	!tpm2? ( >=app-crypt/trousers-0.3.0 )
-	!libressl? ( dev-libs/openssl:0= )
-	libressl? ( dev-libs/libressl:0= )
-	pkcs11? ( dev-libs/opencryptoki )"
-RDEPEND="${DEPEND}"
-BDEPEND="nls? ( sys-devel/gettext )"
-
-S="${WORKDIR}"
-
-PATCHES=(
-	"${FILESDIR}/${P}-openssl-1.1.patch"
-	# Patch for Chromium OS testing.
-	"${FILESDIR}"/${P}-password.patch
-)
-
-src_prepare() {
-	default
-
-	sed -i -r \
-		-e '/CFLAGS/s/ -m64//' \
-		configure.ac || die
-
-	eautoreconf
-}
-
-src_configure() {
-	sanitizers-setup-env
-	append-cppflags $(usex debug -DDEBUG -DNDEBUG)
-
-	econf \
-		$(use_enable nls) \
-		$(use pkcs11 || echo --disable-pkcs11-support)
-}
-
-src_install() {
-	default
-	find "${D}" -name '*.la' -delete || die
-}
diff --git a/app-crypt/tpm-tools/tpm-tools-1.3.9.1-r3.ebuild b/app-crypt/tpm-tools/tpm-tools-1.3.9.1-r3.ebuild
new file mode 100644
index 0000000..4451d34
--- /dev/null
+++ b/app-crypt/tpm-tools/tpm-tools-1.3.9.1-r3.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools flag-o-matic cros-sanitizers
+
+DESCRIPTION="TrouSerS' support tools for the Trusted Platform Modules"
+HOMEPAGE="http://trousers.sourceforge.net"
+SRC_URI="mirror://sourceforge/trousers/${PN}/${P}.tar.gz"
+
+LICENSE="CPL-1.0"
+SLOT="0"
+KEYWORDS="*"
+IUSE="libressl nls pkcs11 tpm tpm_dynamic debug"
+
+DEPEND="
+	tpm? ( >=app-crypt/trousers-0.3.0 )
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:0= )
+	pkcs11? ( dev-libs/opencryptoki )"
+RDEPEND="${DEPEND}"
+BDEPEND="nls? ( sys-devel/gettext )"
+
+S="${WORKDIR}"
+
+PATCHES=(
+	"${FILESDIR}/${P}-openssl-1.1.patch"
+	# Patch for Chromium OS testing.
+	"${FILESDIR}"/${P}-password.patch
+)
+
+src_prepare() {
+	default
+
+	sed -i -r \
+		-e '/CFLAGS/s/ -m64//' \
+		configure.ac || die
+
+	eautoreconf
+}
+
+src_configure() {
+	sanitizers-setup-env
+	append-cppflags "$(usex debug -DDEBUG -DNDEBUG)"
+
+	econf \
+		"$(use_enable nls)" \
+		"$(use pkcs11 || echo --disable-pkcs11-support)"
+}
+
+src_install() {
+	default
+	find "${D}" -name '*.la' -delete || die
+	if use tpm_dynamic; then
+		mv "${D}"/usr/sbin/tpm_version "${D}"/usr/sbin/tpm1_version || die
+	fi
+}
diff --git a/app-crypt/trousers-tests/trousers-tests-0.0.1-r90.ebuild b/app-crypt/trousers-tests/trousers-tests-0.0.1-r90.ebuild
deleted file mode 100644
index 80154e5..0000000
--- a/app-crypt/trousers-tests/trousers-tests-0.0.1-r90.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="21ea14eb031957f9cf8d00a57dd45a7a1e9dae84"
-CROS_WORKON_TREE="60ed0f862fd08a2c848734d206da47d7666a8524"
-CROS_WORKON_PROJECT="chromiumos/third_party/trousers"
-CROS_WORKON_EGIT_BRANCH="master-0.3.13"
-
-inherit cros-workon autotest
-
-DESCRIPTION="Trousers TPM tests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/trousers/"
-SRC_URI=""
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-DEPEND="
-	app-crypt/trousers
-	!<chromeos-base/autotest-tests-0.0.1-r1521
-"
-RDEPEND="${DEPEND}"
-
-# Enable autotest by default.
-IUSE="${IUSE} +autotest"
-
-IUSE_TESTS="
-	+tests_hardware_TPM
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-CROS_WORKON_LOCALNAME=trousers
-
-# path from root of repo
-AUTOTEST_CLIENT_SITE_TESTS=autotest
-
-src_compile() {
-	# for Makefile
-	export TROUSERS_DIR=${WORKDIR}/${P}
-	autotest_src_compile
-}
-
diff --git a/app-crypt/trousers-tests/trousers-tests-0.0.1-r99.ebuild b/app-crypt/trousers-tests/trousers-tests-0.0.1-r99.ebuild
new file mode 100644
index 0000000..ee4588f
--- /dev/null
+++ b/app-crypt/trousers-tests/trousers-tests-0.0.1-r99.ebuild
@@ -0,0 +1,43 @@
+# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="46a10b414310b2eb631fef43aa6f8f9d8126dc26"
+CROS_WORKON_TREE="338c66b8fa6b3a6459f48133658412755e2ec78e"
+CROS_WORKON_PROJECT="chromiumos/third_party/trousers"
+CROS_WORKON_EGIT_BRANCH="master-0.3.13"
+
+inherit cros-workon autotest
+
+DESCRIPTION="Trousers TPM tests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/trousers/"
+SRC_URI=""
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+DEPEND="
+	app-crypt/trousers
+	!<chromeos-base/autotest-tests-0.0.1-r1521
+"
+RDEPEND="${DEPEND}"
+
+# Enable autotest by default.
+IUSE="${IUSE} +autotest"
+
+IUSE_TESTS="
+	+tests_hardware_TPM
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+CROS_WORKON_LOCALNAME=trousers
+
+# path from root of repo
+AUTOTEST_CLIENT_SITE_TESTS=autotest
+
+src_compile() {
+	# for Makefile
+	export TROUSERS_DIR=${WORKDIR}/${P}
+	autotest_src_compile
+}
+
diff --git a/app-crypt/trousers/trousers-0.3.3-r105.ebuild b/app-crypt/trousers/trousers-0.3.3-r105.ebuild
deleted file mode 100644
index bf6e387..0000000
--- a/app-crypt/trousers/trousers-0.3.3-r105.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2009 Gentoo Foundation
-# Copyright 2010 Google, Inc.
-# Distributed under the terms of the GNU General Public License v2
-# $Header$
-
-EAPI="5"
-CROS_WORKON_COMMIT="21ea14eb031957f9cf8d00a57dd45a7a1e9dae84"
-CROS_WORKON_TREE="60ed0f862fd08a2c848734d206da47d7666a8524"
-CROS_WORKON_PROJECT="chromiumos/third_party/trousers"
-CROS_WORKON_EGIT_BRANCH="chromeos-0.3.13"
-
-inherit autotools base cros-debug cros-sanitizers cros-workon flag-o-matic libchrome systemd tmpfiles user
-
-DESCRIPTION="An open-source TCG Software Stack (TSS) v1.1 implementation"
-HOMEPAGE="http://trousers.sf.net"
-LICENSE="CPL-1.0"
-KEYWORDS="*"
-SLOT="0"
-IUSE="asan doc mocktpm systemd tss_trace"
-
-COMMON_DEPEND="
-	chromeos-base/libhwsec-foundation
-	>=chromeos-base/metrics-0.0.1-r3152
-	>=dev-libs/openssl-0.9.7:0="
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="${COMMON_DEPEND}
-	dev-util/pkgconfig"
-
-## TODO: Check if this patch is useful for us.
-## PATCHES=(	"${FILESDIR}/${PN}-0.2.3-nouseradd.patch" )
-
-pkg_setup() {
-	# New user/group for the daemon
-	enewgroup tss
-	enewuser tss
-}
-
-src_prepare() {
-	base_src_prepare
-
-	sed -e "s/-Werror //" -i configure.in
-	eautoreconf
-}
-
-src_configure() {
-	sanitizers-setup-env
-	use tss_trace && append-cppflags -DTSS_TRACE
-	use mocktpm && append-cppflags -DMOCK_TPM
-
-	cros-debug-add-NDEBUG
-	export BASE_VER="$(libchrome_ver)"
-	econf
-}
-
-src_install() {
-	default
-	dodoc NICETOHAVES
-	use doc && dodoc doc/*
-
-	# Install the empty system.data files
-	dodir /etc/trousers
-	insinto /etc/trousers
-	doins "${S}"/dist/system.data.*
-
-	# Install the init scripts
-	if use systemd; then
-		systemd_dounit init/*.service
-		systemd_enable_service boot-services.target tcsd.service
-		systemd_enable_service boot-services.target tpm-probe.service
-	else
-		insinto /etc/init
-		doins init/*.conf
-	fi
-	exeinto /usr/share/cros/init
-	doexe init/tcsd-pre-start.sh
-	dotmpfiles tmpfiles.d/tcsd.conf
-}
-
-pkg_postinst() {
-	elog "If you have problems starting tcsd, please check permissions and"
-	elog "ownership on /dev/tpm* and ~tss/system.data"
-}
diff --git a/app-crypt/trousers/trousers-0.3.3-r115.ebuild b/app-crypt/trousers/trousers-0.3.3-r115.ebuild
new file mode 100644
index 0000000..ab2b82e
--- /dev/null
+++ b/app-crypt/trousers/trousers-0.3.3-r115.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Copyright 2010 Google, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header$
+
+EAPI="5"
+CROS_WORKON_COMMIT="46a10b414310b2eb631fef43aa6f8f9d8126dc26"
+CROS_WORKON_TREE="338c66b8fa6b3a6459f48133658412755e2ec78e"
+CROS_WORKON_PROJECT="chromiumos/third_party/trousers"
+CROS_WORKON_EGIT_BRANCH="chromeos-0.3.13"
+
+inherit autotools base cros-debug cros-sanitizers cros-workon flag-o-matic libchrome systemd tmpfiles user
+
+DESCRIPTION="An open-source TCG Software Stack (TSS) v1.1 implementation"
+HOMEPAGE="http://trousers.sf.net"
+LICENSE="CPL-1.0"
+KEYWORDS="*"
+SLOT="0"
+IUSE="asan doc mocktpm systemd tpm_dynamic tss_trace"
+
+COMMON_DEPEND="
+	chromeos-base/libhwsec-foundation
+	>=chromeos-base/metrics-0.0.1-r3152
+	>=dev-libs/openssl-0.9.7:0="
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="${COMMON_DEPEND}
+	dev-util/pkgconfig"
+
+## TODO: Check if this patch is useful for us.
+## PATCHES=(	"${FILESDIR}/${PN}-0.2.3-nouseradd.patch" )
+
+pkg_setup() {
+	# New user/group for the daemon
+	enewgroup tss
+	enewuser tss
+}
+
+src_prepare() {
+	base_src_prepare
+
+	sed -e "s/-Werror //" -i configure.in
+	export FUZZER="$(usev fuzzer)"
+	eautoreconf
+}
+
+src_configure() {
+	sanitizers-setup-env
+	use tss_trace && append-cppflags -DTSS_TRACE
+	use mocktpm && append-cppflags -DMOCK_TPM
+	use fuzzer && append-cppflags -DFUZZED_TPM
+
+	cros-debug-add-NDEBUG
+	export BASE_VER="$(libchrome_ver)"
+	econf
+}
+
+src_install() {
+	default
+	dodoc NICETOHAVES
+	use doc && dodoc doc/*
+
+	# Install the empty system.data files
+	dodir /etc/trousers
+	insinto /etc/trousers
+	doins "${S}"/dist/system.data.*
+
+	# Install the init scripts
+	if use systemd; then
+		systemd_dounit init/*.service
+		systemd_enable_service boot-services.target tcsd.service
+		systemd_enable_service boot-services.target tpm-probe.service
+	else
+		insinto /etc/init
+		doins init/*.conf
+
+		if use tpm_dynamic; then
+			sed -i '/env TPM_DYNAMIC=/s:=.*:=true:' \
+				"${D}/etc/init/tpm-probe.conf" ||
+				die "Can't activate tpm_dynamic in tpm-probe.conf"
+		fi
+	fi
+	exeinto /usr/share/cros/init
+	doexe init/tcsd-pre-start.sh
+	dotmpfiles tmpfiles.d/tcsd.conf
+}
+
+pkg_postinst() {
+	elog "If you have problems starting tcsd, please check permissions and"
+	elog "ownership on /dev/tpm* and ~tss/system.data"
+}
diff --git a/app-crypt/trousers/trousers-9999.ebuild b/app-crypt/trousers/trousers-9999.ebuild
index 4474712..63a2ff2 100644
--- a/app-crypt/trousers/trousers-9999.ebuild
+++ b/app-crypt/trousers/trousers-9999.ebuild
@@ -14,7 +14,7 @@
 LICENSE="CPL-1.0"
 KEYWORDS="~*"
 SLOT="0"
-IUSE="asan doc mocktpm systemd tss_trace"
+IUSE="asan doc mocktpm systemd tpm_dynamic tss_trace"
 
 COMMON_DEPEND="
 	chromeos-base/libhwsec-foundation
@@ -39,6 +39,7 @@
 	base_src_prepare
 
 	sed -e "s/-Werror //" -i configure.in
+	export FUZZER="$(usev fuzzer)"
 	eautoreconf
 }
 
@@ -46,6 +47,7 @@
 	sanitizers-setup-env
 	use tss_trace && append-cppflags -DTSS_TRACE
 	use mocktpm && append-cppflags -DMOCK_TPM
+	use fuzzer && append-cppflags -DFUZZED_TPM
 
 	cros-debug-add-NDEBUG
 	export BASE_VER="$(libchrome_ver)"
@@ -70,6 +72,12 @@
 	else
 		insinto /etc/init
 		doins init/*.conf
+
+		if use tpm_dynamic; then
+			sed -i '/env TPM_DYNAMIC=/s:=.*:=true:' \
+				"${D}/etc/init/tpm-probe.conf" ||
+				die "Can't activate tpm_dynamic in tpm-probe.conf"
+		fi
 	fi
 	exeinto /usr/share/cros/init
 	doexe init/tcsd-pre-start.sh
diff --git a/app-emulation/lxc/Manifest b/app-emulation/lxc/Manifest
index be6144f..b7204f6 100644
--- a/app-emulation/lxc/Manifest
+++ b/app-emulation/lxc/Manifest
@@ -1,3 +1,3 @@
-DIST lxc-4.0.9.tar.gz 1500310 BLAKE2B 3796d36b6f76ec595dc28207e66ec9f5a7c1a39f5c5ebc851638c519be35f59b4ec06a71b2866cd8fef0a6140f61fd4b70c900f5a8ffd42d7da7a30d3ff59975 SHA512 4ef9d9efdd4118fdffde8b49c6ae71cf5eb060be51daaa4f4ceb804c743fbf3278e6518e6a694faefc720f2834f98ac48d67842d589a2120b8f7ec4c3b61fa84
-DIST lxc-4.0.9.tar.gz.asc 833 BLAKE2B 2d275c968831410d987aa7f8062f4e35ba15043f92f38fd3bdd6bf80964906741d05ccd93789132d421ee1c8778cec6a2e76c4f0eb2165cf0107261495fa6856 SHA512 4c90dfbdba90959ee8df5da8ca8b240f65ab03ab91637833c677e2a73592c09f9c5a55b9a261be6efb0888156c916223ff1aa9003b18d46e667908aaa550c944
+DIST lxc-4.0.10.tar.gz 1515002 BLAKE2B 2a5b94ad767c8a11a5c34d19f12d812bd284337045ad5021c80a5f69be608085ac465edde8c385cc558e45638c9f061793c0c9db616ccbe0614554b4fbf62005 SHA512 ec3ccf344a91b50b30985562c54ad93d2db2d29c24d31da8e3a69e801c8bd23c1560274c1850c39eb7e984940ba86d3ebae75db136320d6bbc5eb03bda4c5318
+DIST lxc-4.0.10.tar.gz.asc 833 BLAKE2B 3dd6e8793d1b725ab9eb73d4fa78ce2767bf830fb70d6cc7052e70d2adbc46e4fcf6d986595322b64cb9c71417b801ef6ee3c7612c46dbeb10acba01a5bd69e0 SHA512 dd2d3ac4e066eca4e0358c9a2c371a227d3a0b5cf6e452fe34fa5c8cff46e25fa0555c9f707511a8603348fa969c1e7abf85ad7d27fdcaff613b733066861608
 DIST lxc-3.0.3.tar.gz 1263371 SHA256 620cb832cc02c63bf4d330657bf6176544e145da281ee384a34d689635a19841 SHA512 cdc411364153d7ed494bab604260f5cbdfd5bd7734a59af970b3198c7b3cb340b6736856a2189d5989e169945a817ac8b531bc3ab62217a4285dd63a851f9c8a WHIRLPOOL d2ee6f15747c3a746f2994344abc74239bddab82f5370dece3da9ce8379324db2a050b52d151d3c1c0b77bfeeb6b708af3eac28cabda0960cacf071c43b73d1c
diff --git a/app-emulation/lxc/lxc-4.0.10.ebuild b/app-emulation/lxc/lxc-4.0.10.ebuild
new file mode 100644
index 0000000..3a4b888
--- /dev/null
+++ b/app-emulation/lxc/lxc-4.0.10.ebuild
@@ -0,0 +1,177 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# TODO(crbug.com/1097610) Once stabilized, this can probably go back
+# to portage-stable
+
+EAPI=7
+
+inherit autotools bash-completion-r1 linux-info flag-o-matic optfeature pam readme.gentoo-r1 systemd verify-sig
+
+DESCRIPTION="A userspace interface for the Linux kernel containment features"
+HOMEPAGE="https://linuxcontainers.org/ https://github.com/lxc/lxc"
+SRC_URI="https://linuxcontainers.org/downloads/lxc/${P}.tar.gz
+	verify-sig? ( https://linuxcontainers.org/downloads/lxc/${P}.tar.gz.asc )"
+
+KEYWORDS="*"
+
+LICENSE="LGPL-3"
+SLOT="4"
+IUSE="apparmor +caps doc man pam seccomp selinux +ssl +tools verify-sig"
+
+RDEPEND="app-misc/pax-utils
+	sys-apps/util-linux
+	sys-libs/libcap
+	virtual/awk
+	caps? ( sys-libs/libcap )
+	pam? ( sys-libs/pam )
+	seccomp? ( sys-libs/libseccomp )
+	selinux? ( sys-libs/libselinux )
+	ssl? (
+		dev-libs/openssl:0=
+	)"
+DEPEND="${RDEPEND}
+	>=sys-kernel/linux-headers-4
+	apparmor? ( sys-apps/apparmor )"
+BDEPEND="doc? ( app-doc/doxygen )
+	man? ( app-text/docbook-sgml-utils )
+	verify-sig? ( app-crypt/openpgp-keys-linuxcontainers )"
+
+CONFIG_CHECK="~!NETPRIO_CGROUP
+	~CGROUPS
+	~CGROUP_CPUACCT
+	~CGROUP_DEVICE
+	~CGROUP_FREEZER
+
+	~CGROUP_SCHED
+	~CPUSETS
+	~IPC_NS
+	~MACVLAN
+
+	~MEMCG
+	~NAMESPACES
+	~NET_NS
+	~PID_NS
+
+	~POSIX_MQUEUE
+	~USER_NS
+	~UTS_NS
+	~VETH"
+
+ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers"
+ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking"
+ERROR_MEMCG="CONFIG_MEMCG: needed for memory resource control in containers"
+ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network"
+ERROR_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: needed for lxc-execute command"
+ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info"
+ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking"
+
+DOCS=( AUTHORS CONTRIBUTING MAINTAINERS NEWS README doc/FAQ.txt )
+
+pkg_setup() {
+	linux-info_pkg_setup
+}
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-3.0.0-bash-completion.patch
+	"${FILESDIR}"/${PN}-2.0.5-omit-sysconfig.patch # bug 558854
+)
+
+VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linuxcontainers.asc
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+src_configure() {
+	append-flags -fno-strict-aliasing
+
+	prefix="${EPREFIX}"/opt/google/lxd-next
+
+	local myeconfargs=(
+		--prefix="${prefix}"
+		--bindir="${prefix}"/usr/bin
+		--localstatedir=/var
+		--sbindir="${prefix}"/usr/bin
+		--datadir="${prefix}"/usr/share
+		--sysconfdir="${prefix}"/etc
+
+		--with-config-path=/var/lib/lxc
+		--with-distro=gentoo
+		--with-init-script=systemd
+		--with-rootfs-path="${prefix}"/var/lib/lxc/rootfs
+		--with-runtime-path=/run
+		--with-systemdsystemunitdir="${prefix}$(systemd_get_systemunitdir)"
+
+		--disable-coverity-build
+		--disable-dlog
+		--disable-fuzzers
+		--disable-mutex-debugging
+		--disable-no-undefined
+		--disable-rpath
+		--disable-sanitizers
+		--disable-tests
+		--disable-werror
+
+		--enable-bash
+		--enable-commands
+		--enable-memfd-rexec
+		--enable-thread-safety
+
+		$(use_enable apparmor)
+		$(use_enable caps capabilities)
+		$(use_enable doc api-docs)
+		$(use_enable doc examples)
+		$(use_enable man doc)
+		$(use_enable pam)
+		$(use_enable seccomp)
+		$(use_enable selinux)
+		$(use_enable ssl openssl)
+		$(use_enable tools)
+
+		$(use_with pam pamdir "${prefix}$(getpam_mod_dir)")
+	)
+
+	econf "${myeconfargs[@]}"
+}
+
+src_install() {
+	default
+
+	prefix="${ED}/opt/google/lxd-next"
+
+	mv "${prefix}"/usr/share/bash-completion/completions/${PN} "${prefix}"/$(get_bashcompdir)/${PN}-start || die
+	bashcomp_alias ${PN}-start \
+		${PN}-{attach,cgroup,copy,console,create,destroy,device,execute,freeze,info,monitor,snapshot,stop,unfreeze,wait}
+
+	keepdir /etc/lxc /var/lib/lxc/rootfs /var/log/lxc
+	rmdir "${D}"/var/cache/lxc "${D}"/var/cache || die "rmdir failed"
+
+	find "${D}" -name '*.la' -delete -o -name '*.a' -delete || die
+
+	# Gentoo-specific additions!
+	newinitd "${FILESDIR}/${PN}.initd.8" ${PN}
+
+	DOC_CONTENTS="
+		For openrc, there is an init script provided with the package.
+		You should only need to symlink /etc/init.d/lxc to
+		/etc/init.d/lxc.configname to start the container defined in
+		/etc/lxc/configname.conf.
+
+		Correspondingly, for systemd a service file lxc@.service is installed.
+		Enable and start lxc@configname in order to start the container defined
+		in /etc/lxc/configname.conf."
+	DISABLE_AUTOFORMATTING=true
+	readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+	readme.gentoo_print_elog
+
+	elog "Please run 'lxc-checkconfig' to see optional kernel features."
+	elog
+	optfeature "automatic template scripts" app-emulation/lxc-templates
+	optfeature "Debian-based distribution container image support" dev-util/debootstrap
+	optfeature "snapshot & restore functionality" sys-process/criu
+}
diff --git a/app-emulation/lxc/lxc-4.0.9.ebuild b/app-emulation/lxc/lxc-4.0.9.ebuild
deleted file mode 100644
index b6b7555..0000000
--- a/app-emulation/lxc/lxc-4.0.9.ebuild
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# TODO(crbug.com/1097610) Once stabilized, this can probably go back
-# to portage-stable
-
-EAPI=7
-
-inherit autotools bash-completion-r1 linux-info flag-o-matic optfeature pam readme.gentoo-r1 systemd verify-sig
-
-DESCRIPTION="A userspace interface for the Linux kernel containment features"
-HOMEPAGE="https://linuxcontainers.org/ https://github.com/lxc/lxc"
-SRC_URI="https://linuxcontainers.org/downloads/lxc/${P}.tar.gz
-	verify-sig? ( https://linuxcontainers.org/downloads/lxc/${P}.tar.gz.asc )"
-
-KEYWORDS="*"
-
-LICENSE="LGPL-3"
-SLOT="4"
-IUSE="apparmor +caps doc man pam selinux +ssl +tools verify-sig"
-
-RDEPEND="app-misc/pax-utils
-	sys-apps/util-linux
-	sys-libs/libcap
-	sys-libs/libseccomp
-	virtual/awk
-	caps? ( sys-libs/libcap )
-	pam? ( sys-libs/pam )
-	selinux? ( sys-libs/libselinux )
-	ssl? (
-		dev-libs/openssl:0=
-	)"
-DEPEND="${RDEPEND}
-	>=sys-kernel/linux-headers-4
-	apparmor? ( sys-apps/apparmor )"
-BDEPEND="doc? ( app-doc/doxygen )
-	man? ( app-text/docbook-sgml-utils )
-	verify-sig? ( app-crypt/openpgp-keys-linuxcontainers )"
-
-CONFIG_CHECK="~!NETPRIO_CGROUP
-	~CGROUPS
-	~CGROUP_CPUACCT
-	~CGROUP_DEVICE
-	~CGROUP_FREEZER
-
-	~CGROUP_SCHED
-	~CPUSETS
-	~IPC_NS
-	~MACVLAN
-
-	~MEMCG
-	~NAMESPACES
-	~NET_NS
-	~PID_NS
-
-	~POSIX_MQUEUE
-	~USER_NS
-	~UTS_NS
-	~VETH"
-
-ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers"
-ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking"
-ERROR_MEMCG="CONFIG_MEMCG: needed for memory resource control in containers"
-ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network"
-ERROR_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: needed for lxc-execute command"
-ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info"
-ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking"
-
-DOCS=( AUTHORS CONTRIBUTING MAINTAINERS NEWS README doc/FAQ.txt )
-
-pkg_setup() {
-	linux-info_pkg_setup
-}
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-3.0.0-bash-completion.patch
-	"${FILESDIR}"/${PN}-2.0.5-omit-sysconfig.patch # bug 558854
-)
-
-VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linuxcontainers.asc
-
-src_prepare() {
-	default
-	eautoreconf
-}
-
-src_configure() {
-	append-flags -fno-strict-aliasing
-
-	prefix="${EPREFIX}"/opt/google/lxd-next
-
-	local myeconfargs=(
-		--prefix="${prefix}"
-		--bindir="${prefix}"/usr/bin
-		--localstatedir=/var
-		--sbindir="${prefix}"/usr/bin
-		--datadir="${prefix}"/usr/share
-		--sysconfdir="${prefix}"/etc
-
-		--with-config-path=/var/lib/lxc
-		--with-distro=gentoo
-		--with-init-script=systemd
-		--with-rootfs-path="${prefix}"/var/lib/lxc/rootfs
-		--with-runtime-path=/run
-		--with-systemdsystemunitdir="${prefix}$(systemd_get_systemunitdir)"
-
-		--disable-coverity-build
-		--disable-dlog
-		--disable-fuzzers
-		--disable-mutex-debugging
-		--disable-no-undefined
-		--disable-rpath
-		--disable-sanitizers
-		--disable-tests
-		--disable-werror
-
-		--enable-bash
-		--enable-commands
-		--enable-memfd-rexec
-		--enable-seccomp
-		--enable-thread-safety
-
-		$(use_enable apparmor)
-		$(use_enable caps capabilities)
-		$(use_enable doc api-docs)
-		$(use_enable doc examples)
-		$(use_enable man doc)
-		$(use_enable pam)
-		$(use_enable selinux)
-		$(use_enable ssl openssl)
-		$(use_enable tools)
-
-		$(use_with pam pamdir "${prefix}$(getpam_mod_dir)")
-	)
-
-	econf "${myeconfargs[@]}"
-}
-
-src_install() {
-	default
-
-	prefix="${ED}/opt/google/lxd-next"
-
-	mv "${prefix}"/usr/share/bash-completion/completions/${PN} "${prefix}"/$(get_bashcompdir)/${PN}-start || die
-	bashcomp_alias ${PN}-start \
-		${PN}-{attach,cgroup,copy,console,create,destroy,device,execute,freeze,info,monitor,snapshot,stop,unfreeze,wait}
-
-	keepdir /etc/lxc /var/lib/lxc/rootfs /var/log/lxc
-	rmdir "${D}"/var/cache/lxc "${D}"/var/cache || die "rmdir failed"
-
-	find "${D}" -name '*.la' -delete -o -name '*.a' -delete || die
-
-	# Gentoo-specific additions!
-	newinitd "${FILESDIR}/${PN}.initd.8" ${PN}
-
-	DOC_CONTENTS="
-		For openrc, there is an init script provided with the package.
-		You should only need to symlink /etc/init.d/lxc to
-		/etc/init.d/lxc.configname to start the container defined in
-		/etc/lxc/configname.conf.
-
-		Correspondingly, for systemd a service file lxc@.service is installed.
-		Enable and start lxc@configname in order to start the container defined
-		in /etc/lxc/configname.conf."
-	DISABLE_AUTOFORMATTING=true
-	readme.gentoo_create_doc
-}
-
-pkg_postinst() {
-	readme.gentoo_print_elog
-
-	elog "Please run 'lxc-checkconfig' to see optional kernel features."
-	elog
-	optfeature "automatic template scripts" app-emulation/lxc-templates
-	optfeature "Debian-based distribution container image support" dev-util/debootstrap
-	optfeature "snapshot & restore functionality" sys-process/criu
-}
diff --git a/app-emulation/lxd/Manifest b/app-emulation/lxd/Manifest
index 54e38c1..5bc6817 100644
--- a/app-emulation/lxd/Manifest
+++ b/app-emulation/lxd/Manifest
@@ -1,3 +1,3 @@
 DIST lxd-3.17.tar.gz 23494267 BLAKE2B 69948c1a032b2d22f298416205aed457b3a94d42c6239b360a7c63a20a89f85dd67557c8864328055419627fb24b003dba8b386bfbe98e3a860cce24204f82ba SHA512 5dcfb423d091733736fb7df7ed14a638ecab1280863836d91e63823683521d4f4e1ee52f364cb76b0abf8382dc115598d96037c90d772a0b664476cb6917e7d7
-DIST lxd-4.0.6.tar.gz 15353779 BLAKE2B f699e91c53b407e5a0e47fe40b133d6216754b1e5c5829ee68993468565f2080c12cbcbf8373d6da16ca94a3648ec51b874e66ff589be09dc95f2382d18f3e12 SHA512 58efaac50dbcbb3cf0e7aa1b3b43085beae4546dfcd081720b049c2b88bf120b9a74e7db1238bbdd8cc2449e039b076ece3734e8f46f3ddbdc70aaae8b326963
-DIST lxd-4.0.6.tar.gz.asc 833 BLAKE2B 6d1756b130a944a98e62d809c45129178bfc39158c71e09319cdaff7461b14bda467e44a781bb5c15d40afdae4d3ec86f98919738a8c169d3fff910d8e9fe58a SHA512 6c59bd8ec9bf0d9bd90c8ab2970cf6928c0bef3736631ea2a56ebc464f33940366d35925ddfc4104c13fa0fd4e1bea42796e0a2eb82a8bf395957829f938c7db
+DIST lxd-4.0.7.tar.gz 15454709 BLAKE2B 6278fa058efa15a689a982dcf0bce58bf320ac500bc8bd6cd4227f5f126a03dd85a65363d4d36b3437a0a2fd8e08e8a7332b96f9aba8e8eb2aa508d1129fec13 SHA512 dd99db21a4de95d95e6bd53dcbd68f4d9f0ffbd9e60d994340cd0b1e820068e671507a9718d1c56488c79ad49019f86637a4a8b9c945cdd3f70d59c9e2026fb1
+DIST lxd-4.0.7.tar.gz.asc 833 BLAKE2B a28e43d1fd0d5851a62121069703637e7ba25cbeb142507e4e162b254eddce2b5a13a100eedb202fbf3d8aa40f6e20b4fd587ef38f6c73a07d2bd9d8d9d00c8f SHA512 561d7cbf94a37e7ed03828ac98a2022dc1a4e11b80cdee3ad925bf4226b78b9e1d1b9c51ed070e60fba881b69e06dc70be2713026285b10de5cca59549ac5f82
diff --git a/app-emulation/lxd/files/lxd-4.0.6-set-path.sh b/app-emulation/lxd/files/set-path.sh
similarity index 100%
rename from app-emulation/lxd/files/lxd-4.0.6-set-path.sh
rename to app-emulation/lxd/files/set-path.sh
diff --git a/app-emulation/lxd/lxd-4.0.6.ebuild b/app-emulation/lxd/lxd-4.0.6.ebuild
deleted file mode 100644
index 15045a3..0000000
--- a/app-emulation/lxd/lxd-4.0.6.ebuild
+++ /dev/null
@@ -1,199 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-#
-# shellcheck disable=SC2034
-
-EAPI=7
-
-DESCRIPTION="Fast, dense and secure container management"
-HOMEPAGE="https://linuxcontainers.org/lxd/introduction/ https://github.com/lxc/lxd"
-
-# TODO(crbug/1097610) tremplin requires that someone install the lxd client
-# library. Currently this is done in the 3.17 ebuild, but when this becomes the
-# main ebuild it will need to be moved here.
-CROS_GO_PACKAGES=(
-)
-
-CROS_GO_WORKSPACE="${S}/_dist"
-EGO_PN="github.com/lxc/lxd"
-BIN_PATH="/opt/google/lxd-next/usr/bin"
-CROS_GO_BINARIES=(
-	"${EGO_PN}/lxd:${BIN_PATH}/lxd"
-	"${EGO_PN}/fuidshift:${BIN_PATH}/fuidshift"
-	"${EGO_PN}/lxd-agent:${BIN_PATH}/lxd-agent"
-	"${EGO_PN}/lxd-benchmark:${BIN_PATH}/lxd-benchmark"
-	"${EGO_PN}/lxd-p2c:${BIN_PATH}/lxd-p2c"
-	"${EGO_PN}/lxc:${BIN_PATH}/lxc"
-	"${EGO_PN}/lxc-to-lxd:${BIN_PATH}/lxc-to-lxd"
-)
-
-# Needs to include licenses for all bundled programs and libraries.
-LICENSE="Apache-2.0 BSD BSD-2 LGPL-3 MIT MPL-2.0"
-SLOT="4"
-KEYWORDS="*"
-
-IUSE="apparmor ipv6 nls verify-sig"
-
-inherit autotools bash-completion-r1 linux-info optfeature systemd verify-sig cros-go user
-
-SRC_URI="https://linuxcontainers.org/downloads/lxd/${P}.tar.gz
-	verify-sig? ( https://linuxcontainers.org/downloads/lxd/${P}.tar.gz.asc )"
-
-DEPEND="app-arch/xz-utils
-	>=app-emulation/lxc-3.0.0:4[apparmor?,seccomp(+)]
-	dev-db/sqlite
-	dev-libs/libuv
-	dev-libs/lzo
-	net-dns/dnsmasq[dhcp,ipv6?]
-	virtual/libudev"
-RDEPEND="${DEPEND}
-	net-firewall/ebtables
-	net-firewall/iptables[ipv6?]
-	sys-apps/iproute2[ipv6?]
-	sys-fs/fuse:0=
-	sys-fs/lxcfs:4
-	sys-fs/squashfs-tools[lzma]
-	virtual/acl"
-BDEPEND="dev-lang/go
-	nls? ( sys-devel/gettext )
-	verify-sig? ( app-crypt/openpgp-keys-linuxcontainers )"
-
-CONFIG_CHECK="
-	~CGROUPS
-	~IPC_NS
-	~NET_NS
-	~PID_NS
-
-	~SECCOMP
-	~USER_NS
-	~UTS_NS
-"
-
-ERROR_IPC_NS="CONFIG_IPC_NS is required."
-ERROR_NET_NS="CONFIG_NET_NS is required."
-ERROR_PID_NS="CONFIG_PID_NS is required."
-ERROR_SECCOMP="CONFIG_SECCOMP is required."
-ERROR_UTS_NS="CONFIG_UTS_NS is required."
-
-VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linuxcontainers.asc
-
-src_unpack() {
-	unpack "${A}"
-	cd "${S}" || die
-
-	# Instead of using the lxd symlink in the dist directory, move the lxd
-	# source into that directory. Otherwise, the cros-go_src_install stage
-	# will fail since it won't traverse symlinks.
-	rm "${S}/_dist/src/${EGO_PN}"
-	mkdir "${S}/_dist/src/${EGO_PN}"
-	find "${S}"/* -maxdepth 0 \
-				-type d \
-				! -name "_dist" \
-				-exec mv {} "${S}/_dist/src/${EGO_PN}" \;
-}
-
-src_configure() {
-	DEPS="${S}/_dist/deps"
-
-	cd "${DEPS}/raft" || die "Can't cd to raft dir"
-	eautoreconf
-	econf --enable-static=no
-
-	cd "${DEPS}/dqlite" || die "Can't cd to dqlite dir"
-	export RAFT_CFLAGS="-I${DEPS}/raft/include/"
-	export RAFT_LIBS="${DEPS}/raft/.libs"
-	eautoreconf
-	econf --enable-static=no
-}
-
-src_compile() {
-	DEPS="${S}/_dist/deps"
-
-	cd "${DEPS}/raft" || die "Can't cd to raft dir"
-	emake
-
-	cd "${DEPS}/dqlite" || die "Can't cd to dqlite dir"
-	emake
-
-	cd "${S}" || die
-
-	# Taken from the output of make deps
-	export CGO_CFLAGS="-I${DEPS}/raft/include/ -I${DEPS}/dqlite/include/"
-	export CGO_LDFLAGS="-L${DEPS}/raft/.libs -L${DEPS}/dqlite/.libs/"
-	export LD_LIBRARY_PATH="${DEPS}/raft/.libs/:${DEPS}/dqlite/.libs/"
-	export CGO_LDFLAGS_ALLOW="-Wl,-wrap,pthread_create"
-
-	# TODO(crbug/1097610) Because we're installing everything to different
-	# paths, we need to tell pkg-config and cgo where to find it. This can
-	# be removed when we commit to LXD 4.0
-	install_root="${SYSROOT}/opt/google/lxd-next"
-	export PKG_CONFIG_LIBDIR="${install_root}/$(get_libdir)/pkgconfig:${SYSROOT}/$(get_libdir)/pkgconfig"
-	export PKG_CONFIG_SYSROOT_DIR="${SYSROOT}"
-	export PKG_CONFIG="/usr/bin/pkg-config"
-	export CGO_CFLAGS="${CGO_CFLAGS} -I${install_root}/include"
-	export CGO_LDFLAGS="${CGO_LDFLAGS} -L${install_root}/$(get_libdir)"
-
-	cros-go_src_compile
-
-	if use nls; then
-		cd "${S}/_dist/src/${EGO_PN}" || die
-		emake -f "${S}/Makefile" build-mo
-	fi
-}
-
-src_test() {
-	DEPS="${S}/_dist/deps"
-
-	# Taken from the output of make deps
-	export CGO_CFLAGS="-I${DEPS}/raft/include/ -I${DEPS}/dqlite/include/"
-	export CGO_LDFLAGS="-L${DEPS}/raft/.libs -L${DEPS}/dqlite/.libs/"
-	export LD_LIBRARY_PATH="${DEPS}/raft/.libs/:${DEPS}/dqlite/.libs/"
-	export CGO_LDFLAGS_ALLOW="-Wl,-wrap,pthread_create"
-
-	# TODO(sidereal) would be nice to enable more tests here
-	cros_go test -v ${EGO_PN}/lxd || die
-}
-
-src_install() {
-	cros-go_src_install
-
-	DEPS="${S}/_dist/deps"
-
-	cd "${DEPS}/raft" || die
-	emake DESTDIR="${D}/opt/google/lxd-next" install
-
-	cd "${DEPS}/dqlite" || die
-	emake DESTDIR="${D}/opt/google/lxd-next" install
-
-	cd "${S}" || die
-	newbashcomp "${S}/_dist/src/${EGO_PN}/scripts/bash/lxd-client" lxc
-
-	dodoc AUTHORS _dist/src/${EGO_PN}/doc/*
-	use nls && domo "${S}/_dist/src/${EGO_PN}/po/"*.mo
-
-	# TODO(crbug/1097610) Remove this once we no longer need to do weird
-	# things with PATH
-	insinto /etc/bash/bashrc.d
-	newins "${FILESDIR}/${P}-set-path.sh" ".set-path-for-lxd-next.sh"
-	newins "$(mktemp)" "set-path-for-lxd-next.sh"
-}
-
-pkg_postinst() {
-	cros-go_pkg_postinst
-
-	# The control socket will be owned by (and writeable by) this group.
-	enewgroup lxd
-
-	elog
-	elog "Consult https://wiki.gentoo.org/wiki/LXD for more information,"
-	elog "including a Quick Start."
-	elog
-	elog "Please run 'lxc-checkconfig' to see all optional kernel features."
-	elog
-	elog "Optional features:"
-	optfeature "btrfs storage backend" sys-fs/btrfs-progs
-	optfeature "lvm2 storage backend" sys-fs/lvm2
-	optfeature "zfs storage backend" sys-fs/zfs
-	elog
-	elog "Be sure to add your local user to the lxd group."
-}
diff --git a/app-emulation/lxd/lxd-4.0.7.ebuild b/app-emulation/lxd/lxd-4.0.7.ebuild
new file mode 100644
index 0000000..eccb3f7
--- /dev/null
+++ b/app-emulation/lxd/lxd-4.0.7.ebuild
@@ -0,0 +1,200 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+#
+# shellcheck disable=SC2034
+
+EAPI=7
+
+DESCRIPTION="Fast, dense and secure container management"
+HOMEPAGE="https://linuxcontainers.org/lxd/introduction/ https://github.com/lxc/lxd"
+
+# TODO(crbug/1097610) tremplin requires that someone install the lxd client
+# library. Currently this is done in the 3.17 ebuild, but when this becomes the
+# main ebuild it will need to be moved here.
+CROS_GO_PACKAGES=(
+)
+
+CROS_GO_WORKSPACE="${S}/_dist"
+EGO_PN="github.com/lxc/lxd"
+BIN_PATH="/opt/google/lxd-next/usr/bin"
+CROS_GO_BINARIES=(
+	"${EGO_PN}/lxd:${BIN_PATH}/lxd"
+	"${EGO_PN}/fuidshift:${BIN_PATH}/fuidshift"
+	"${EGO_PN}/lxd-agent:${BIN_PATH}/lxd-agent"
+	"${EGO_PN}/lxd-benchmark:${BIN_PATH}/lxd-benchmark"
+	"${EGO_PN}/lxd-p2c:${BIN_PATH}/lxd-p2c"
+	"${EGO_PN}/lxc:${BIN_PATH}/lxc"
+	"${EGO_PN}/lxc-to-lxd:${BIN_PATH}/lxc-to-lxd"
+)
+
+# Needs to include licenses for all bundled programs and libraries.
+LICENSE="Apache-2.0 BSD BSD-2 LGPL-3 MIT MPL-2.0"
+SLOT="4"
+KEYWORDS="*"
+
+IUSE="apparmor ipv6 nls verify-sig"
+
+inherit autotools bash-completion-r1 linux-info optfeature systemd verify-sig cros-go user
+
+SRC_URI="https://linuxcontainers.org/downloads/lxd/${P}.tar.gz
+	verify-sig? ( https://linuxcontainers.org/downloads/lxd/${P}.tar.gz.asc )"
+
+DEPEND="app-arch/xz-utils
+	>=app-emulation/lxc-3.0.0:4[apparmor?,seccomp(+)]
+	dev-db/sqlite
+	dev-libs/libuv
+	app-arch/lz4
+	dev-libs/lzo
+	net-dns/dnsmasq[dhcp,ipv6?]
+	virtual/libudev"
+RDEPEND="${DEPEND}
+	net-firewall/ebtables
+	net-firewall/iptables[ipv6?]
+	sys-apps/iproute2[ipv6?]
+	sys-fs/fuse:0=
+	sys-fs/lxcfs:4
+	sys-fs/squashfs-tools[lzma]
+	virtual/acl"
+BDEPEND="dev-lang/go
+	nls? ( sys-devel/gettext )
+	verify-sig? ( app-crypt/openpgp-keys-linuxcontainers )"
+
+CONFIG_CHECK="
+	~CGROUPS
+	~IPC_NS
+	~NET_NS
+	~PID_NS
+
+	~SECCOMP
+	~USER_NS
+	~UTS_NS
+"
+
+ERROR_IPC_NS="CONFIG_IPC_NS is required."
+ERROR_NET_NS="CONFIG_NET_NS is required."
+ERROR_PID_NS="CONFIG_PID_NS is required."
+ERROR_SECCOMP="CONFIG_SECCOMP is required."
+ERROR_UTS_NS="CONFIG_UTS_NS is required."
+
+VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/linuxcontainers.asc
+
+src_unpack() {
+	unpack "${A}"
+	cd "${S}" || die
+
+	# Instead of using the lxd symlink in the dist directory, move the lxd
+	# source into that directory. Otherwise, the cros-go_src_install stage
+	# will fail since it won't traverse symlinks.
+	rm "${S}/_dist/src/${EGO_PN}"
+	mkdir "${S}/_dist/src/${EGO_PN}"
+	find "${S}"/* -maxdepth 0 \
+				-type d \
+				! -name "_dist" \
+				-exec mv {} "${S}/_dist/src/${EGO_PN}" \;
+}
+
+src_configure() {
+	DEPS="${S}/_dist/deps"
+
+	cd "${DEPS}/raft" || die "Can't cd to raft dir"
+	eautoreconf
+	econf --enable-static=no
+
+	cd "${DEPS}/dqlite" || die "Can't cd to dqlite dir"
+	export RAFT_CFLAGS="-I${DEPS}/raft/include/"
+	export RAFT_LIBS="${DEPS}/raft/.libs"
+	eautoreconf
+	econf --enable-static=no
+}
+
+src_compile() {
+	DEPS="${S}/_dist/deps"
+
+	cd "${DEPS}/raft" || die "Can't cd to raft dir"
+	emake
+
+	cd "${DEPS}/dqlite" || die "Can't cd to dqlite dir"
+	emake
+
+	cd "${S}" || die
+
+	# Taken from the output of make deps
+	export CGO_CFLAGS="-I${DEPS}/raft/include/ -I${DEPS}/dqlite/include/"
+	export CGO_LDFLAGS="-L${DEPS}/raft/.libs -L${DEPS}/dqlite/.libs/"
+	export LD_LIBRARY_PATH="${DEPS}/raft/.libs/:${DEPS}/dqlite/.libs/"
+	export CGO_LDFLAGS_ALLOW="(-Wl,-wrap,pthread_create)|(-Wl,-z,now)"
+
+	# TODO(crbug/1097610) Because we're installing everything to different
+	# paths, we need to tell pkg-config and cgo where to find it. This can
+	# be removed when we commit to LXD 4.0
+	install_root="${SYSROOT}/opt/google/lxd-next"
+	export PKG_CONFIG_LIBDIR="${install_root}/$(get_libdir)/pkgconfig:${SYSROOT}/$(get_libdir)/pkgconfig"
+	export PKG_CONFIG_SYSROOT_DIR="${SYSROOT}"
+	export PKG_CONFIG="/usr/bin/pkg-config"
+	export CGO_CFLAGS="${CGO_CFLAGS} -I${install_root}/include"
+	export CGO_LDFLAGS="${CGO_LDFLAGS} -L${install_root}/$(get_libdir)"
+
+	cros-go_src_compile
+
+	if use nls; then
+		cd "${S}/_dist/src/${EGO_PN}" || die
+		emake -f "${S}/Makefile" build-mo
+	fi
+}
+
+src_test() {
+	DEPS="${S}/_dist/deps"
+
+	# Taken from the output of make deps
+	export CGO_CFLAGS="-I${DEPS}/raft/include/ -I${DEPS}/dqlite/include/"
+	export CGO_LDFLAGS="-L${DEPS}/raft/.libs -L${DEPS}/dqlite/.libs/"
+	export LD_LIBRARY_PATH="${DEPS}/raft/.libs/:${DEPS}/dqlite/.libs/"
+	export CGO_LDFLAGS_ALLOW="-Wl,-wrap,pthread_create"
+
+	# TODO(sidereal) would be nice to enable more tests here
+	cros_go test -v ${EGO_PN}/lxd || die
+}
+
+src_install() {
+	cros-go_src_install
+
+	DEPS="${S}/_dist/deps"
+
+	cd "${DEPS}/raft" || die
+	emake DESTDIR="${D}/opt/google/lxd-next" install
+
+	cd "${DEPS}/dqlite" || die
+	emake DESTDIR="${D}/opt/google/lxd-next" install
+
+	cd "${S}" || die
+	newbashcomp "${S}/_dist/src/${EGO_PN}/scripts/bash/lxd-client" lxc
+
+	dodoc AUTHORS _dist/src/${EGO_PN}/doc/*
+	use nls && domo "${S}/_dist/src/${EGO_PN}/po/"*.mo
+
+	# TODO(crbug/1097610) Remove this once we no longer need to do weird
+	# things with PATH
+	insinto /etc/bash/bashrc.d
+	newins "${FILESDIR}/set-path.sh" ".set-path-for-lxd-next.sh"
+	newins "$(mktemp)" "set-path-for-lxd-next.sh"
+}
+
+pkg_postinst() {
+	cros-go_pkg_postinst
+
+	# The control socket will be owned by (and writeable by) this group.
+	enewgroup lxd
+
+	elog
+	elog "Consult https://wiki.gentoo.org/wiki/LXD for more information,"
+	elog "including a Quick Start."
+	elog
+	elog "Please run 'lxc-checkconfig' to see all optional kernel features."
+	elog
+	elog "Optional features:"
+	optfeature "btrfs storage backend" sys-fs/btrfs-progs
+	optfeature "lvm2 storage backend" sys-fs/lvm2
+	optfeature "zfs storage backend" sys-fs/zfs
+	elog
+	elog "Be sure to add your local user to the lxd group."
+}
diff --git a/app-misc/edid-decode/Manifest b/app-misc/edid-decode/Manifest
index dbcaec1..45bede4 100644
--- a/app-misc/edid-decode/Manifest
+++ b/app-misc/edid-decode/Manifest
@@ -1 +1 @@
-DIST edid-decode-20190614.tar.gz 30358 SHA256 dd1c9132854c42d44429a5cc1b9c3e944bb7fbf0ddb57a2de512c38b0b701a67 SHA512 4e2e17dd3ed9221cd2d4fb8a084d6b0cd6581371e0e2a80d3891e8a80ec71bbc39cbc9d19dd801d30d731abf959215abb4e7953913c03a211162f7dbaa1cd68e WHIRLPOOL 57e73015e187590bbae0463ed8c6c3e382304d0b64570984674b89b694346b0c373fd0b8d47105664d475b7748ac6ae959e09301729f6cd799867b9bdf37812d
+DIST edid-decode-20210514.tar.gz 117864 SHA256 70158a0c5cfec4706c4d88969cc7cf57dbbb89adc7ebe6906925f46806e2be1a SHA512 1b94d63d69d563b7f15c0ecb1090f0a2854f002fc89da9f7e0878c788a38761626b911b6bbf36294cafc2e03465be900bf0aa6942f174206e9c8e4a04b0f9c49 WHIRLPOOL 79d208c1295ec18843b23b07f18f4e414dc724b3b49b2f952dcf594095e7b2fe8f5980cf9ec8723f2a6877a0cbe4de5440c30e8ba398b4d6079967c0082cfd9e
diff --git a/app-misc/edid-decode/edid-decode-20190614.ebuild b/app-misc/edid-decode/edid-decode-20210514.ebuild
similarity index 100%
rename from app-misc/edid-decode/edid-decode-20190614.ebuild
rename to app-misc/edid-decode/edid-decode-20210514.ebuild
diff --git a/app-text/ghostscript-gpl/files/ghostscript-9.54-fix-buffer-allocation-in-file_prepare_stream.patch b/app-text/ghostscript-gpl/files/ghostscript-9.54-fix-buffer-allocation-in-file_prepare_stream.patch
new file mode 100644
index 0000000..332c544
--- /dev/null
+++ b/app-text/ghostscript-gpl/files/ghostscript-9.54-fix-buffer-allocation-in-file_prepare_stream.patch
@@ -0,0 +1,27 @@
+From 62d2e5626b88e5abadffadf1d9a9a4471dd8fa41 Mon Sep 17 00:00:00 2001
+From: Marcin Wojtas <mw@semihalf.com>
+Date: Thu, 8 Jul 2021 22:09:16 +0000
+Subject: [PATCH] Fix uninitialized buffer allocation in file_prepare_stream()
+
+The buffer allocated via gs_alloc_bytes() in file_prepare_stream()
+remained uninitialized. Zero entire allocated heap memory,
+in order to fix that.
+---
+ base/sfxcommon.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/base/sfxcommon.c b/base/sfxcommon.c
+index e506bd64f..9b707efd0 100644
+--- a/base/sfxcommon.c
++++ b/base/sfxcommon.c
+@@ -201,6 +201,7 @@ file_prepare_stream(const char *fname, uint len, const char *file_access,
+         gs_free_object(mem, s, "file_prepare_stream");
+         return_error(gs_error_VMerror);
+     }
++    memset(buffer, 0, buffer_size);
+     if (fname != 0) {
+         memcpy(buffer, fname, len);
+         buffer[len] = 0;	/* terminate string */
+-- 
+2.32.0.93.g670b81a890-goog
+
diff --git a/app-text/ghostscript-gpl/files/ghostscript-9.54-remove-library-support.patch b/app-text/ghostscript-gpl/files/ghostscript-9.54-remove-library-support.patch
new file mode 100644
index 0000000..608144b
--- /dev/null
+++ b/app-text/ghostscript-gpl/files/ghostscript-9.54-remove-library-support.patch
@@ -0,0 +1,72 @@
+From cefc92544f8db5b4a134bb9aed69aad188849e8b Mon Sep 17 00:00:00 2001
+From: Sean Kau <skau@chromium.org>
+Date: Wed, 4 Aug 2021 10:09:54 -0700
+Subject: [PATCH] Disallow loading of Postscript libraries
+
+This removes handling of the GS_LIB environment variable and the
+-I command line flag for loading libararies.
+---
+ psi/imainarg.c | 38 +-------------------------------------
+ 1 file changed, 1 insertion(+), 37 deletions(-)
+
+diff --git a/psi/imainarg.c b/psi/imainarg.c
+index 43834d647..17afd8cd5 100644
+--- a/psi/imainarg.c
++++ b/psi/imainarg.c
+@@ -148,25 +148,6 @@ gs_main_init_with_args01(gs_main_instance * minst, int argc, char *argv[])
+     code = gs_main_init0(minst, 0, 0, 0, GS_MAX_LIB_DIRS);
+     if (code < 0)
+         return code;
+-/* This first check is not needed on VMS since GS_LIB evaluates to the same
+-   value as that returned by gs_lib_default_path.  Also, since GS_LIB is
+-   defined as a searchlist logical and getenv only returns the first entry
+-   in the searchlist, it really doesn't make sense to search that particular
+-   directory twice.
+-*/
+-#ifndef __VMS
+-    {
+-        int len = 0;
+-        int code = gp_getenv(GS_LIB, (char *)0, &len);
+-
+-        if (code < 0) {         /* key present, value doesn't fit */
+-            char *path = (char *)gs_alloc_bytes(minst->heap, len, "GS_LIB");
+-
+-            gp_getenv(GS_LIB, path, &len);      /* can't fail */
+-            minst->lib_path.env = path;
+-        }
+-    }
+-#endif /* __VMS */
+     minst->lib_path.final = gs_lib_default_path;
+     code = gs_main_set_lib_paths(minst);
+     if (code < 0)
+@@ -655,26 +636,9 @@ run_stdin:
+             }
+         case 'h':               /* print help */
+         case '?':               /* ditto */
++        case 'I':               /* -I is not supported */ 
+             print_help(minst);
+             return gs_error_Info;      /* show usage info on exit */
+-        case 'I':               /* specify search path */
+-            {
+-                const char *path;
+-
+-                if (arg[0] == 0) {
+-                    code = arg_next(pal, (const char **)&path, minst->heap);
+-                    if (code < 0)
+-                        return code;
+-                    code = gs_lib_ctx_stash_sanitized_arg(minst->heap->gs_lib_ctx, "?");
+-                    if (code < 0)
+-                        return code;
+-                } else
+-                    path = arg;
+-                if (path == NULL)
+-                    return gs_error_Fatal;
+-                gs_main_add_lib_path(minst, path);
+-            }
+-            break;
+         case 'K':               /* set malloc limit */
+             {
+                 long msize = 0;
+-- 
+2.32.0.605.g8dce9f2422-goog
+
diff --git a/app-text/ghostscript-gpl/ghostscript-gpl-9.54.0-r3.ebuild b/app-text/ghostscript-gpl/ghostscript-gpl-9.54.0-r5.ebuild
similarity index 100%
rename from app-text/ghostscript-gpl/ghostscript-gpl-9.54.0-r3.ebuild
rename to app-text/ghostscript-gpl/ghostscript-gpl-9.54.0-r5.ebuild
diff --git a/chromeos-base/aosp-frameworks-ml-nn-vts/aosp-frameworks-ml-nn-vts-0.0.1-r27.ebuild b/chromeos-base/aosp-frameworks-ml-nn-vts/aosp-frameworks-ml-nn-vts-0.0.1-r27.ebuild
deleted file mode 100644
index dcafc82..0000000
--- a/chromeos-base/aosp-frameworks-ml-nn-vts/aosp-frameworks-ml-nn-vts-0.0.1-r27.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("5dfd9e4dfe21b6eac6ed7d243bbdaa5e8864715f" "707d4b9ddbbec5c5d0efe448b4a98d1bf39d3210" "fd0a01eb09dcc34f1a42e5c0f6ebf0f384fd9abd")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "4c0cc8d00d5d746519a55a17088ff6173845837c" "7a08574830b90bb538e281ba8c2240d2826fefb9")
-inherit cros-constants
-
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform2"
-	"aosp/platform/frameworks/ml"
-	"aosp/platform/hardware/interfaces/neuralnetworks"
-)
-CROS_WORKON_REPO=(
-	"${CROS_GIT_HOST_URL}"
-	"${CROS_GIT_HOST_URL}"
-	"${CROS_GIT_HOST_URL}"
-)
-CROS_WORKON_EGIT_BRANCH=(
-	"main"
-	"master"
-	"master"
-)
-CROS_WORKON_LOCALNAME=(
-	"platform2"
-	"aosp/frameworks/ml"
-	"aosp/hardware/interfaces/neuralnetworks"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}/platform2"
-	"${S}/platform2/aosp/frameworks/ml"
-	"${S}/platform2/aosp/hardware/interfaces/neuralnetworks"
-)
-CROS_WORKON_SUBTREE=(
-	"common-mk .gn"
-	"nn"
-	""
-)
-
-PLATFORM_SUBDIR="aosp/frameworks/ml/nn/chromeos/tests"
-
-inherit cros-workon platform flag-o-matic
-
-DESCRIPTION="HAL / Driver Vendor and Compatability Test Tools for NNAPI"
-HOMEPAGE="https://developer.android.com/ndk/guides/neuralnetworks"
-
-LICENSE="BSD-Google Apache-2.0"
-KEYWORDS="*"
-
-RDEPEND="
-	chromeos-base/aosp-frameworks-ml-nn:=
-"
-
-DEPEND="
-	${RDEPEND}
-"
-
-src_configure() {
-	if use x86 || use amd64; then
-		append-cppflags "-D_Float16=__fp16"
-		append-cxxflags "-Xclang -fnative-half-type"
-		append-cxxflags "-Xclang -fallow-half-arguments-and-returns"
-	fi
-	platform_src_configure
-}
-
-src_install() {
-	dobin "${OUT}/cros_nnapi_vts_1_0"
-	dobin "${OUT}/cros_nnapi_vts_1_1"
-	dobin "${OUT}/cros_nnapi_vts_1_2"
-	dobin "${OUT}/cros_nnapi_vts_1_3"
-	dobin "${OUT}/cros_nnapi_cts"
-}
diff --git a/chromeos-base/aosp-frameworks-ml-nn-vts/aosp-frameworks-ml-nn-vts-0.0.1-r59.ebuild b/chromeos-base/aosp-frameworks-ml-nn-vts/aosp-frameworks-ml-nn-vts-0.0.1-r59.ebuild
new file mode 100644
index 0000000..aba660b
--- /dev/null
+++ b/chromeos-base/aosp-frameworks-ml-nn-vts/aosp-frameworks-ml-nn-vts-0.0.1-r59.ebuild
@@ -0,0 +1,74 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "1d79a489d66f3d525327d5019add759885ec4eb0" "eee167fa829d108a5678624050425899b348a252")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "57f269579b5f598e16c8f972c88eaa2033539b34" "dc25ed68a7d37cb190a28c01c84f8bb2e874bb47")
+inherit cros-constants
+
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform2"
+	"aosp/platform/frameworks/ml"
+	"aosp/platform/hardware/interfaces/neuralnetworks"
+)
+CROS_WORKON_REPO=(
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_HOST_URL}"
+)
+CROS_WORKON_EGIT_BRANCH=(
+	"main"
+	"master"
+	"master"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform2"
+	"aosp/frameworks/ml"
+	"aosp/hardware/interfaces/neuralnetworks"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}/platform2"
+	"${S}/platform2/aosp/frameworks/ml"
+	"${S}/platform2/aosp/hardware/interfaces/neuralnetworks"
+)
+CROS_WORKON_SUBTREE=(
+	"common-mk .gn"
+	""
+	""
+)
+
+PLATFORM_SUBDIR="aosp/frameworks/ml/chromeos/tests"
+
+inherit cros-workon platform flag-o-matic
+
+DESCRIPTION="HAL / Driver Vendor and Compatability Test Tools for NNAPI"
+HOMEPAGE="https://developer.android.com/ndk/guides/neuralnetworks"
+
+LICENSE="BSD-Google Apache-2.0"
+KEYWORDS="*"
+
+RDEPEND="
+	chromeos-base/aosp-frameworks-ml-nn:=
+"
+
+DEPEND="
+	${RDEPEND}
+"
+
+src_configure() {
+	if use x86 || use amd64; then
+		append-cppflags "-D_Float16=__fp16"
+		append-cxxflags "-Xclang -fnative-half-type"
+		append-cxxflags "-Xclang -fallow-half-arguments-and-returns"
+	fi
+	platform_src_configure
+}
+
+src_install() {
+	dobin "${OUT}/cros_nnapi_vts_1_0"
+	dobin "${OUT}/cros_nnapi_vts_1_1"
+	dobin "${OUT}/cros_nnapi_vts_1_2"
+	dobin "${OUT}/cros_nnapi_vts_1_3"
+	dobin "${OUT}/cros_nnapi_cts"
+}
diff --git a/chromeos-base/aosp-frameworks-ml-nn-vts/aosp-frameworks-ml-nn-vts-9999.ebuild b/chromeos-base/aosp-frameworks-ml-nn-vts/aosp-frameworks-ml-nn-vts-9999.ebuild
index 2d7848e9..814fead 100644
--- a/chromeos-base/aosp-frameworks-ml-nn-vts/aosp-frameworks-ml-nn-vts-9999.ebuild
+++ b/chromeos-base/aosp-frameworks-ml-nn-vts/aosp-frameworks-ml-nn-vts-9999.ebuild
@@ -32,11 +32,11 @@
 )
 CROS_WORKON_SUBTREE=(
 	"common-mk .gn"
-	"nn"
+	""
 	""
 )
 
-PLATFORM_SUBDIR="aosp/frameworks/ml/nn/chromeos/tests"
+PLATFORM_SUBDIR="aosp/frameworks/ml/chromeos/tests"
 
 inherit cros-workon platform flag-o-matic
 
diff --git a/chromeos-base/aosp-frameworks-ml-nn/aosp-frameworks-ml-nn-0.0.1-r199.ebuild b/chromeos-base/aosp-frameworks-ml-nn/aosp-frameworks-ml-nn-0.0.1-r199.ebuild
deleted file mode 100644
index a246db3..0000000
--- a/chromeos-base/aosp-frameworks-ml-nn/aosp-frameworks-ml-nn-0.0.1-r199.ebuild
+++ /dev/null
@@ -1,174 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("5dfd9e4dfe21b6eac6ed7d243bbdaa5e8864715f" "707d4b9ddbbec5c5d0efe448b4a98d1bf39d3210" "fd0a01eb09dcc34f1a42e5c0f6ebf0f384fd9abd")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "4c0cc8d00d5d746519a55a17088ff6173845837c" "7a08574830b90bb538e281ba8c2240d2826fefb9")
-inherit cros-constants
-
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform2"
-	"aosp/platform/frameworks/ml"
-	"aosp/platform/hardware/interfaces/neuralnetworks"
-)
-CROS_WORKON_REPO=(
-	"${CROS_GIT_HOST_URL}"
-	"${CROS_GIT_HOST_URL}"
-	"${CROS_GIT_HOST_URL}"
-)
-CROS_WORKON_LOCALNAME=(
-	"platform2"
-	"aosp/frameworks/ml"
-	"aosp/hardware/interfaces/neuralnetworks"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}/platform2"
-	"${S}/platform2/aosp/frameworks/ml"
-	"${S}/platform2/aosp/hardware/interfaces/neuralnetworks"
-)
-CROS_WORKON_SUBTREE=(
-	"common-mk .gn"
-	"nn"
-	""
-)
-
-PLATFORM_SUBDIR="aosp/frameworks/ml/nn"
-
-inherit cros-workon platform flag-o-matic
-
-DESCRIPTION="Chrome OS port of the Android Neural Network API"
-HOMEPAGE="https://developer.android.com/ndk/guides/neuralnetworks"
-
-LICENSE="BSD-Google Apache-2.0"
-KEYWORDS="*"
-IUSE="cpu_flags_x86_avx2 vendor-nnhal minimal-driver"
-
-RDEPEND="
-	chromeos-base/nnapi:=
-	dev-libs/openssl:=
-	sci-libs/tensorflow:=
-"
-
-DEPEND="
-	${RDEPEND}
-	dev-libs/libtextclassifier
-	>=dev-cpp/eigen-3
-"
-
-src_configure() {
-	if use x86 || use amd64; then
-		append-cppflags "-D_Float16=__fp16"
-		append-cxxflags "-Xclang -fnative-half-type"
-		append-cxxflags "-Xclang -fallow-half-arguments-and-returns"
-	fi
-	if use minimal-driver; then
-		append-cppflags "-DNNAPI_USE_MINIMAL_DRIVER"
-	fi
-	platform_src_configure
-}
-
-platform_pkg_test() {
-	local tests=(
-		chromeos common runtime runtime_generated
-	)
-	local gtest_excl_filter="-"
-	local qemu_gtest_excl_filter="-"
-
-	# These tests fail with Tensorflow 2.5.0. Don't want to block
-	# the uprev on that, since nothing in production is using this
-	# package yet. Tracking this test failure in following bug.
-	# TODO: b/189803299
-	gtest_excl_filter+="TestGenerated/*.Test/svdf_bias_present*:"
-	qemu_gtest_excl_filter+="TestGenerated/*.Test/svdf_bias_present*:"
-
-	# When running in qemu, these tests freeze the emulator when hitting
-	# EventFlag::wake from libfmq. The error printed is:
-	# Error in event flag wake attempt: Function not implemented
-	# This is a known issue, see:
-	# https://chromium.googlesource.com/chromiumos/docs/+/master/testing/running_unit_tests.md#caveats
-	# TODO(http://crbug.com/1117470): tracking bug for qemu fix
-	qemu_gtest_excl_filter+="Flavor/ExecutionTest10.Wait/*:"
-	qemu_gtest_excl_filter+="Flavor/ExecutionTest11.Wait/*:"
-	qemu_gtest_excl_filter+="Flavor/ExecutionTest12.Wait/*:"
-	qemu_gtest_excl_filter+="Flavor/ExecutionTest13.Wait/*:"
-	qemu_gtest_excl_filter+="IntrospectionFlavor/ExecutionTest13.Wait/*:"
-	qemu_gtest_excl_filter+="Unfenced/TimingTest.Test/12:"
-	qemu_gtest_excl_filter+="Unfenced/TimingTest.Test/15:"
-	qemu_gtest_excl_filter+="Unfenced/TimingTest.Test/18:"
-	qemu_gtest_excl_filter+="Unfenced/TimingTest.Test/21:"
-	qemu_gtest_excl_filter+="Unfenced/TimingTest.Test/24:"
-	qemu_gtest_excl_filter+="ValidationTestBurst.BurstComputeBadCompilation:"
-	qemu_gtest_excl_filter+="ValidationTestBurst.BurstComputeConcurrent:"
-	qemu_gtest_excl_filter+="ValidationTestBurst.BurstComputeDifferentCompilations:"
-	qemu_gtest_excl_filter+="ValidationTestBurst.BurstComputeNull:"
-	qemu_gtest_excl_filter+="ValidationTestBurst.FreeBurstBeforeMemory:"
-	qemu_gtest_excl_filter+="ValidationTestBurst.FreeMemoryBeforeBurst:"
-	qemu_gtest_excl_filter+="ValidationTestCompilation.ExecutionUsability:"
-	qemu_gtest_excl_filter+="ValidationTestCompilationForDevices_1.ExecutionTiming:"
-	qemu_gtest_excl_filter+="ValidationTestCompilationForDevices_1.ExecutionSetTimeout:"
-	qemu_gtest_excl_filter+="ValidationTestCompilationForDevices_1.ExecutionSetTimeoutMaximum:"
-
-	if use asan; then
-		# Some tests do not correctly clean up the Execution object and it is
-		# left 'in-flight', which gets ignored by ANeuralNetworksExecution_free.
-		# See b/161844605.
-		# Look for 'passed an in-flight ANeuralNetworksExecution' in log output
-		gtest_excl_filter+="Fenced/TimingTest.Test/2:"
-		gtest_excl_filter+="Fenced/TimingTest.Test/19:"
-		gtest_excl_filter+="Flavor/ExecutionTest10.Wait/1:"
-		gtest_excl_filter+="Flavor/ExecutionTest10.Wait/2:"
-		gtest_excl_filter+="Flavor/ExecutionTest10.Wait/4:"
-		gtest_excl_filter+="Flavor/ExecutionTest11.Wait/1:"
-		gtest_excl_filter+="Flavor/ExecutionTest11.Wait/2:"
-		gtest_excl_filter+="Flavor/ExecutionTest11.Wait/4:"
-		gtest_excl_filter+="Flavor/ExecutionTest12.Wait/1:"
-		gtest_excl_filter+="Flavor/ExecutionTest12.Wait/2:"
-		gtest_excl_filter+="Flavor/ExecutionTest12.Wait/4:"
-		gtest_excl_filter+="Flavor/ExecutionTest13.Wait/1:"
-		gtest_excl_filter+="Flavor/ExecutionTest13.Wait/2:"
-		gtest_excl_filter+="Flavor/ExecutionTest13.Wait/4:"
-		gtest_excl_filter+="IntrospectionFlavor/ExecutionTest13.Wait/1:"
-		gtest_excl_filter+="IntrospectionFlavor/ExecutionTest13.Wait/2:"
-		gtest_excl_filter+="IntrospectionFlavor/ExecutionTest13.Wait/4:"
-
-		# This is due to a leak caused when copying the memory pools
-		# into the request object in this test. lsan_suppressions doesn't
-		# work due to the lack of /usr/bin/llvm-symbolizer, so just exclude.
-		gtest_excl_filter+="ComplianceTest.DeviceMemory:"
-		gtest_excl_filter+="ValidateRequestTest.ScalarOutput:"
-		gtest_excl_filter+="ValidateRequestTest.UnknownOutputRank:"
-
-		# Disable asan container overflow checks that are coming from gtest,
-		# not our code. Strangely this only started happening once we made
-		# common a shared library.
-		# See: https://crbug.com/1067977, https://crbug.com/1069722
-		# https://github.com/google/sanitizers/wiki/AddressSanitizerContainerOverflow#false-positives
-		export ASAN_OPTIONS+=":detect_container_overflow=0:"
-	fi
-
-	local test_target
-	for test_target in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_target}_testrunner" "0" "${gtest_excl_filter}" "${qemu_gtest_excl_filter}"
-	done
-}
-
-src_install() {
-	einfo "Installing runtime & common Headers."
-	insinto /usr/include/aosp/frameworks/ml/nn/common
-	doins -r "${S}"/common/include
-	insinto /usr/include/aosp/frameworks/ml/nn/runtime
-	doins -r "${S}"/runtime/include
-	insinto /usr/include/aosp/frameworks/ml/nn/driver/cache
-	doins "${S}"/driver/cache/nnCache/nnCache.h
-	doins "${S}"/driver/cache/BlobCache/BlobCache.h
-
-	einfo "Installing libs."
-	dolib.so "${OUT}/lib/libneuralnetworks.so"
-	dolib.so "${OUT}/lib/libnn-common.so"
-
-	if ! use vendor-nnhal ; then
-		einfo "Installing reference vendor hal."
-		dolib.so "${OUT}/lib/libvendor-nn-hal.so"
-	fi
-}
diff --git a/chromeos-base/aosp-frameworks-ml-nn/aosp-frameworks-ml-nn-0.0.1-r233.ebuild b/chromeos-base/aosp-frameworks-ml-nn/aosp-frameworks-ml-nn-0.0.1-r233.ebuild
new file mode 100644
index 0000000..09dacf7
--- /dev/null
+++ b/chromeos-base/aosp-frameworks-ml-nn/aosp-frameworks-ml-nn-0.0.1-r233.ebuild
@@ -0,0 +1,226 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "1d79a489d66f3d525327d5019add759885ec4eb0" "eee167fa829d108a5678624050425899b348a252")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "57f269579b5f598e16c8f972c88eaa2033539b34" "dc25ed68a7d37cb190a28c01c84f8bb2e874bb47")
+inherit cros-constants
+
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform2"
+	"aosp/platform/frameworks/ml"
+	"aosp/platform/hardware/interfaces/neuralnetworks"
+)
+CROS_WORKON_REPO=(
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_HOST_URL}"
+)
+CROS_WORKON_EGIT_BRANCH=(
+	"main"
+	"master"
+	"master"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform2"
+	"aosp/frameworks/ml"
+	"aosp/hardware/interfaces/neuralnetworks"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}/platform2"
+	"${S}/platform2/aosp/frameworks/ml"
+	"${S}/platform2/aosp/hardware/interfaces/neuralnetworks"
+)
+CROS_WORKON_SUBTREE=(
+	"common-mk .gn"
+	""
+	""
+)
+
+PLATFORM_SUBDIR="aosp/frameworks/ml"
+
+inherit cros-workon platform flag-o-matic
+
+DESCRIPTION="Chrome OS port of the Android Neural Network API"
+HOMEPAGE="https://developer.android.com/ndk/guides/neuralnetworks"
+
+LICENSE="BSD-Google Apache-2.0"
+KEYWORDS="*"
+IUSE="cpu_flags_x86_avx2 vendor-nnhal minimal-driver xnnpack-driver"
+
+RDEPEND="
+	chromeos-base/nnapi:=
+	dev-libs/openssl:=
+	sci-libs/tensorflow:=
+"
+
+DEPEND="
+	${RDEPEND}
+	dev-libs/libtextclassifier
+	>=dev-cpp/eigen-3
+"
+
+src_configure() {
+	if use x86 || use amd64; then
+		append-cppflags "-D_Float16=__fp16"
+		append-cxxflags "-Xclang -fnative-half-type"
+		append-cxxflags "-Xclang -fallow-half-arguments-and-returns"
+	fi
+	if use xnnpack-driver; then
+		append-cppflags "-DNNAPI_USE_XNNPACK_DRIVER"
+	fi
+	if use minimal-driver; then
+		append-cppflags "-DNNAPI_USE_MINIMAL_DRIVER"
+	fi
+	platform_src_configure
+}
+
+platform_pkg_test() {
+	local tests=(
+		chromeos common runtime runtime_generated
+	)
+	local gtest_excl_filter="-"
+	local qemu_gtest_excl_filter="-"
+
+	# These tests fail with Tensorflow 2.5.0. Don't want to block
+	# the uprev on that, since nothing in production is using this
+	# package yet. Tracking this test failure in following bug.
+	# TODO: b/189803299
+	gtest_excl_filter+="TestGenerated/*.Test/svdf_bias_present*:"
+	qemu_gtest_excl_filter+="TestGenerated/*.Test/svdf_bias_present*:"
+
+	# When running in qemu, these tests freeze the emulator when hitting
+	# EventFlag::wake from libfmq. The error printed is:
+	# Error in event flag wake attempt: Function not implemented
+	# This is a known issue, see:
+	# https://chromium.googlesource.com/chromiumos/docs/+/master/testing/running_unit_tests.md#caveats
+	# TODO(http://crbug.com/1117470): tracking bug for qemu fix
+	qemu_gtest_excl_filter+="Flavor/ExecutionTest10.Wait*:"
+	qemu_gtest_excl_filter+="Flavor/ExecutionTest11.Wait*:"
+	qemu_gtest_excl_filter+="Flavor/ExecutionTest12.Wait*:"
+	qemu_gtest_excl_filter+="Flavor/ExecutionTest13.Wait*:"
+	qemu_gtest_excl_filter+="IntrospectionFlavor/ExecutionTest13.Wait*:"
+	qemu_gtest_excl_filter+="Unfenced/TimingTest.Test/12:"
+	qemu_gtest_excl_filter+="Unfenced/TimingTest.Test/15:"
+	qemu_gtest_excl_filter+="Unfenced/TimingTest.Test/18:"
+	qemu_gtest_excl_filter+="Unfenced/TimingTest.Test/21:"
+	qemu_gtest_excl_filter+="Unfenced/TimingTest.Test/24:"
+	qemu_gtest_excl_filter+="ValidationTestBurst.BurstComputeBadCompilation:"
+	qemu_gtest_excl_filter+="ValidationTestBurst.BurstComputeConcurrent:"
+	qemu_gtest_excl_filter+="ValidationTestBurst.BurstComputeDifferentCompilations:"
+	qemu_gtest_excl_filter+="ValidationTestBurst.BurstComputeNull:"
+	qemu_gtest_excl_filter+="ValidationTestBurst.FreeBurstBeforeMemory:"
+	qemu_gtest_excl_filter+="ValidationTestBurst.FreeMemoryBeforeBurst:"
+	qemu_gtest_excl_filter+="ValidationTestCompilation.ExecutionUsability:"
+	qemu_gtest_excl_filter+="ValidationTestCompilation.ReusableExecutionConcurrent:"
+	qemu_gtest_excl_filter+="ValidationTestCompilation.NonReusableExecutionConcurrent:"
+	qemu_gtest_excl_filter+="ValidationTestCompilationForDevices_1.ExecutionTiming:"
+	qemu_gtest_excl_filter+="ValidationTestCompilationForDevices_1.ExecutionSetTimeout:"
+	qemu_gtest_excl_filter+="ValidationTestCompilationForDevices_1.ExecutionSetTimeoutMaximum:"
+
+	if use asan; then
+		# Some tests do not correctly clean up the Execution object and it is
+		# left 'in-flight', which gets ignored by ANeuralNetworksExecution_free.
+		# See b/161844605.
+		# Look for 'passed an in-flight ANeuralNetworksExecution' in log output
+		gtest_excl_filter+="Fenced/TimingTest.Test/2:"
+		gtest_excl_filter+="Fenced/TimingTest.Test/19:"
+		gtest_excl_filter+="Flavor/ExecutionTest10.Wait/1:"
+		gtest_excl_filter+="Flavor/ExecutionTest10.Wait/2:"
+		gtest_excl_filter+="Flavor/ExecutionTest10.Wait/4:"
+		gtest_excl_filter+="Flavor/ExecutionTest11.Wait/1:"
+		gtest_excl_filter+="Flavor/ExecutionTest11.Wait/2:"
+		gtest_excl_filter+="Flavor/ExecutionTest11.Wait/4:"
+		gtest_excl_filter+="Flavor/ExecutionTest12.Wait/1:"
+		gtest_excl_filter+="Flavor/ExecutionTest12.Wait/2:"
+		gtest_excl_filter+="Flavor/ExecutionTest12.Wait/4:"
+		gtest_excl_filter+="Flavor/ExecutionTest13.Wait/1:"
+		gtest_excl_filter+="Flavor/ExecutionTest13.Wait/2:"
+		gtest_excl_filter+="Flavor/ExecutionTest13.Wait/4:"
+		gtest_excl_filter+="IntrospectionFlavor/ExecutionTest13.Wait/1:"
+		gtest_excl_filter+="IntrospectionFlavor/ExecutionTest13.Wait/2:"
+		gtest_excl_filter+="IntrospectionFlavor/ExecutionTest13.Wait/4:"
+
+		# This is due to a leak caused when copying the memory pools
+		# into the request object in this test. lsan_suppressions doesn't
+		# work due to the lack of /usr/bin/llvm-symbolizer, so just exclude.
+		gtest_excl_filter+="ComplianceTest.DeviceMemory:"
+		gtest_excl_filter+="ValidateRequestTest.ScalarOutput:"
+		gtest_excl_filter+="ValidateRequestTest.UnknownOutputRank:"
+
+		# Buffer overflow here, but seems to be expected?
+		gtest_excl_filter+="OperandExtraParamsTest.TestChannelQuantValuesBadScalesCount:"
+
+		# Leaks in CPUExecutor
+		gtest_excl_filter+="*RandomPartitioningTest*:"
+
+		# Disable asan container overflow checks that are coming from gtest,
+		# not our code. Strangely this only started happening once we made
+		# common a shared library.
+		# See: https://crbug.com/1067977, https://crbug.com/1069722
+		# https://github.com/google/sanitizers/wiki/AddressSanitizerContainerOverflow#false-positives
+		export ASAN_OPTIONS+=":detect_container_overflow=0:detect_odr_violation=0:"
+	fi
+	if use xnnpack-driver; then
+		# These tests don't currently work with the XNNPACK driver
+		gtest_excl_filter+="ValidationTestExecutionDeviceMemory.SetInputFromMemory*:"
+		gtest_excl_filter+="ValidationTestExecutionDeviceMemory.SetOutputFromMemory*:"
+		gtest_excl_filter+="TestGenerated/*.Test/maximum_broadcast*:"
+		gtest_excl_filter+="TestGenerated/*.Test/maximum_simple*:"
+		gtest_excl_filter+="TestGenerated/*.Test/minimum_broadcast*:"
+		gtest_excl_filter+="TestGenerated/*.Test/minimum_simple*:"
+		gtest_excl_filter+="TestGenerated/*.Test/pad*:"
+		gtest_excl_filter+="TestGenerated/*.Test/prelu*:"
+		gtest_excl_filter+="TestGenerated/*.Test/resize_bilinear_v1_3_align_corners*:"
+		gtest_excl_filter+="TestGenerated/*.Test/depthwise_conv2d_invalid_filter_dims_nhwc*:"
+		gtest_excl_filter+="TestGenerated/DeviceMemoryTest.Test/*:"
+	fi
+	local test_target
+	for test_target in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_target}_testrunner" "0" "${gtest_excl_filter}" "${qemu_gtest_excl_filter}"
+	done
+
+	if use xnnpack-driver; then
+		platform_test "run" "${OUT}/runtime_xnn_testrunner"
+	fi
+}
+
+src_compile() {
+	platform_src_compile
+	if use xnnpack-driver; then
+		platform "compile" "xnn-driver"
+		platform "compile" "runtime_xnn_testrunner"
+	fi
+}
+
+src_install() {
+	einfo "Installing runtime & common Headers."
+	insinto /usr/include/aosp/frameworks/ml/nn/common
+	doins -r "${S}"/common/include
+	insinto /usr/include/aosp/frameworks/ml/nn/runtime
+	doins -r "${S}"/runtime/include
+	insinto /usr/include/aosp/frameworks/ml/nn/driver/cache
+	doins "${S}"/driver/cache/nnCache/nnCache.h
+	doins "${S}"/driver/cache/BlobCache/BlobCache.h
+
+	einfo "Installing libs."
+	dolib.so "${OUT}/lib/libneuralnetworks.so"
+	dolib.so "${OUT}/lib/libnn-common.so"
+
+	einfo "Installing default driver"
+	dolib.so "${OUT}/lib/libfull-driver.so"
+
+	if ! use vendor-nnhal ; then
+		einfo "Installing reference vendor hal."
+		dolib.so "${OUT}/lib/libvendor-nn-hal.so"
+	fi
+	if use minimal-driver; then
+		einfo "Installing minimal drivers"
+		dolib.so "${OUT}/lib/libminimal-driver.so"
+	fi
+	if use xnnpack-driver; then
+		einfo "Installing xnnpack drivers"
+		dolib.so "${OUT}/lib/libxnn-driver.so"
+	fi
+}
diff --git a/chromeos-base/aosp-frameworks-ml-nn/aosp-frameworks-ml-nn-9999.ebuild b/chromeos-base/aosp-frameworks-ml-nn/aosp-frameworks-ml-nn-9999.ebuild
index c5b22c8..ce03aea 100644
--- a/chromeos-base/aosp-frameworks-ml-nn/aosp-frameworks-ml-nn-9999.ebuild
+++ b/chromeos-base/aosp-frameworks-ml-nn/aosp-frameworks-ml-nn-9999.ebuild
@@ -15,6 +15,11 @@
 	"${CROS_GIT_HOST_URL}"
 	"${CROS_GIT_HOST_URL}"
 )
+CROS_WORKON_EGIT_BRANCH=(
+	"main"
+	"master"
+	"master"
+)
 CROS_WORKON_LOCALNAME=(
 	"platform2"
 	"aosp/frameworks/ml"
@@ -27,11 +32,11 @@
 )
 CROS_WORKON_SUBTREE=(
 	"common-mk .gn"
-	"nn"
+	""
 	""
 )
 
-PLATFORM_SUBDIR="aosp/frameworks/ml/nn"
+PLATFORM_SUBDIR="aosp/frameworks/ml"
 
 inherit cros-workon platform flag-o-matic
 
@@ -40,7 +45,7 @@
 
 LICENSE="BSD-Google Apache-2.0"
 KEYWORDS="~*"
-IUSE="cpu_flags_x86_avx2 vendor-nnhal minimal-driver"
+IUSE="cpu_flags_x86_avx2 vendor-nnhal minimal-driver xnnpack-driver"
 
 RDEPEND="
 	chromeos-base/nnapi:=
@@ -60,6 +65,9 @@
 		append-cxxflags "-Xclang -fnative-half-type"
 		append-cxxflags "-Xclang -fallow-half-arguments-and-returns"
 	fi
+	if use xnnpack-driver; then
+		append-cppflags "-DNNAPI_USE_XNNPACK_DRIVER"
+	fi
 	if use minimal-driver; then
 		append-cppflags "-DNNAPI_USE_MINIMAL_DRIVER"
 	fi
@@ -86,11 +94,11 @@
 	# This is a known issue, see:
 	# https://chromium.googlesource.com/chromiumos/docs/+/master/testing/running_unit_tests.md#caveats
 	# TODO(http://crbug.com/1117470): tracking bug for qemu fix
-	qemu_gtest_excl_filter+="Flavor/ExecutionTest10.Wait/*:"
-	qemu_gtest_excl_filter+="Flavor/ExecutionTest11.Wait/*:"
-	qemu_gtest_excl_filter+="Flavor/ExecutionTest12.Wait/*:"
-	qemu_gtest_excl_filter+="Flavor/ExecutionTest13.Wait/*:"
-	qemu_gtest_excl_filter+="IntrospectionFlavor/ExecutionTest13.Wait/*:"
+	qemu_gtest_excl_filter+="Flavor/ExecutionTest10.Wait*:"
+	qemu_gtest_excl_filter+="Flavor/ExecutionTest11.Wait*:"
+	qemu_gtest_excl_filter+="Flavor/ExecutionTest12.Wait*:"
+	qemu_gtest_excl_filter+="Flavor/ExecutionTest13.Wait*:"
+	qemu_gtest_excl_filter+="IntrospectionFlavor/ExecutionTest13.Wait*:"
 	qemu_gtest_excl_filter+="Unfenced/TimingTest.Test/12:"
 	qemu_gtest_excl_filter+="Unfenced/TimingTest.Test/15:"
 	qemu_gtest_excl_filter+="Unfenced/TimingTest.Test/18:"
@@ -103,6 +111,8 @@
 	qemu_gtest_excl_filter+="ValidationTestBurst.FreeBurstBeforeMemory:"
 	qemu_gtest_excl_filter+="ValidationTestBurst.FreeMemoryBeforeBurst:"
 	qemu_gtest_excl_filter+="ValidationTestCompilation.ExecutionUsability:"
+	qemu_gtest_excl_filter+="ValidationTestCompilation.ReusableExecutionConcurrent:"
+	qemu_gtest_excl_filter+="ValidationTestCompilation.NonReusableExecutionConcurrent:"
 	qemu_gtest_excl_filter+="ValidationTestCompilationForDevices_1.ExecutionTiming:"
 	qemu_gtest_excl_filter+="ValidationTestCompilationForDevices_1.ExecutionSetTimeout:"
 	qemu_gtest_excl_filter+="ValidationTestCompilationForDevices_1.ExecutionSetTimeoutMaximum:"
@@ -137,18 +147,49 @@
 		gtest_excl_filter+="ValidateRequestTest.ScalarOutput:"
 		gtest_excl_filter+="ValidateRequestTest.UnknownOutputRank:"
 
+		# Buffer overflow here, but seems to be expected?
+		gtest_excl_filter+="OperandExtraParamsTest.TestChannelQuantValuesBadScalesCount:"
+
+		# Leaks in CPUExecutor
+		gtest_excl_filter+="*RandomPartitioningTest*:"
+
 		# Disable asan container overflow checks that are coming from gtest,
 		# not our code. Strangely this only started happening once we made
 		# common a shared library.
 		# See: https://crbug.com/1067977, https://crbug.com/1069722
 		# https://github.com/google/sanitizers/wiki/AddressSanitizerContainerOverflow#false-positives
-		export ASAN_OPTIONS+=":detect_container_overflow=0:"
+		export ASAN_OPTIONS+=":detect_container_overflow=0:detect_odr_violation=0:"
 	fi
-
+	if use xnnpack-driver; then
+		# These tests don't currently work with the XNNPACK driver
+		gtest_excl_filter+="ValidationTestExecutionDeviceMemory.SetInputFromMemory*:"
+		gtest_excl_filter+="ValidationTestExecutionDeviceMemory.SetOutputFromMemory*:"
+		gtest_excl_filter+="TestGenerated/*.Test/maximum_broadcast*:"
+		gtest_excl_filter+="TestGenerated/*.Test/maximum_simple*:"
+		gtest_excl_filter+="TestGenerated/*.Test/minimum_broadcast*:"
+		gtest_excl_filter+="TestGenerated/*.Test/minimum_simple*:"
+		gtest_excl_filter+="TestGenerated/*.Test/pad*:"
+		gtest_excl_filter+="TestGenerated/*.Test/prelu*:"
+		gtest_excl_filter+="TestGenerated/*.Test/resize_bilinear_v1_3_align_corners*:"
+		gtest_excl_filter+="TestGenerated/*.Test/depthwise_conv2d_invalid_filter_dims_nhwc*:"
+		gtest_excl_filter+="TestGenerated/DeviceMemoryTest.Test/*:"
+	fi
 	local test_target
 	for test_target in "${tests[@]}"; do
 		platform_test "run" "${OUT}/${test_target}_testrunner" "0" "${gtest_excl_filter}" "${qemu_gtest_excl_filter}"
 	done
+
+	if use xnnpack-driver; then
+		platform_test "run" "${OUT}/runtime_xnn_testrunner"
+	fi
+}
+
+src_compile() {
+	platform_src_compile
+	if use xnnpack-driver; then
+		platform "compile" "xnn-driver"
+		platform "compile" "runtime_xnn_testrunner"
+	fi
 }
 
 src_install() {
@@ -165,8 +206,19 @@
 	dolib.so "${OUT}/lib/libneuralnetworks.so"
 	dolib.so "${OUT}/lib/libnn-common.so"
 
+	einfo "Installing default driver"
+	dolib.so "${OUT}/lib/libfull-driver.so"
+
 	if ! use vendor-nnhal ; then
 		einfo "Installing reference vendor hal."
 		dolib.so "${OUT}/lib/libvendor-nn-hal.so"
 	fi
+	if use minimal-driver; then
+		einfo "Installing minimal drivers"
+		dolib.so "${OUT}/lib/libminimal-driver.so"
+	fi
+	if use xnnpack-driver; then
+		einfo "Installing xnnpack drivers"
+		dolib.so "${OUT}/lib/libxnn-driver.so"
+	fi
 }
diff --git a/chromeos-base/arc-adbd/arc-adbd-0.0.1-r368.ebuild b/chromeos-base/arc-adbd/arc-adbd-0.0.1-r368.ebuild
deleted file mode 100644
index 6370817..0000000
--- a/chromeos-base/arc-adbd/arc-adbd-0.0.1-r368.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="7cc682322dc60e43d949f6055d5b3885536bea07"
-CROS_WORKON_TREE=("d5666e714c30f8f7921e63e91f60431992f31333" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="arc/adbd common-mk .gn"
-
-PLATFORM_SUBDIR="arc/adbd"
-
-inherit cros-workon platform
-
-DESCRIPTION="Container to run Android's adbd proxy."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/adbd"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="+seccomp fuzzer arcvm"
-
-RDEPEND="
-	chromeos-base/minijail
-"
-
-src_install() {
-	insinto /etc/init
-	if use arcvm; then
-		doins init/arcvm-adbd.conf
-		insinto /etc/dbus-1/system.d
-		doins init/dbus-1/ArcVmAdbd.conf
-	else
-		doins init/arc-adbd.conf
-	fi
-
-	insinto /usr/share/policy
-	use seccomp && newins "seccomp/arc$(usex arcvm vm '')-adbd-${ARCH}.policy" "arc$(usex arcvm vm '')-adbd-seccomp.policy"
-
-	dosbin "${OUT}/arc-adbd"
-
-	# Install fuzzers.
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc-adbd-setup-config-fs-fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc-adbd-setup-function-fs-fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc-adbd-create-pipe-fuzzer
-}
diff --git a/chromeos-base/arc-adbd/arc-adbd-0.0.1-r399.ebuild b/chromeos-base/arc-adbd/arc-adbd-0.0.1-r399.ebuild
new file mode 100644
index 0000000..8d95412
--- /dev/null
+++ b/chromeos-base/arc-adbd/arc-adbd-0.0.1-r399.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("797d8d57ec73bac74c0846d62c37eb750d3e7177" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="arc/adbd common-mk .gn"
+
+PLATFORM_SUBDIR="arc/adbd"
+
+inherit cros-workon platform
+
+DESCRIPTION="Container to run Android's adbd proxy."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/adbd"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="+seccomp fuzzer arcvm"
+
+RDEPEND="
+	chromeos-base/minijail
+"
+
+src_install() {
+	insinto /etc/init
+	if use arcvm; then
+		doins init/arcvm-adbd.conf
+		insinto /etc/dbus-1/system.d
+		doins init/dbus-1/ArcVmAdbd.conf
+	else
+		doins init/arc-adbd.conf
+	fi
+
+	insinto /usr/share/policy
+	use seccomp && newins "seccomp/arc$(usex arcvm vm '')-adbd-${ARCH}.policy" "arc$(usex arcvm vm '')-adbd-seccomp.policy"
+
+	dosbin "${OUT}/arc-adbd"
+
+	# Install fuzzers.
+	# fuzzer_component_id is unknown/unlisted
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc-adbd-setup-config-fs-fuzzer
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc-adbd-setup-function-fs-fuzzer
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc-adbd-create-pipe-fuzzer
+}
diff --git a/chromeos-base/arc-adbd/arc-adbd-9999.ebuild b/chromeos-base/arc-adbd/arc-adbd-9999.ebuild
index acd2eea6..954ca2e 100644
--- a/chromeos-base/arc-adbd/arc-adbd-9999.ebuild
+++ b/chromeos-base/arc-adbd/arc-adbd-9999.ebuild
@@ -40,6 +40,7 @@
 	dosbin "${OUT}/arc-adbd"
 
 	# Install fuzzers.
+	# fuzzer_component_id is unknown/unlisted
 	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc-adbd-setup-config-fs-fuzzer
 	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc-adbd-setup-function-fs-fuzzer
 	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc-adbd-create-pipe-fuzzer
diff --git a/chromeos-base/arc-apk-cache/arc-apk-cache-0.0.1-r374.ebuild b/chromeos-base/arc-apk-cache/arc-apk-cache-0.0.1-r374.ebuild
deleted file mode 100644
index fd2b92b..0000000
--- a/chromeos-base/arc-apk-cache/arc-apk-cache-0.0.1-r374.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "4c6e571afb4a8fe4d876184e2d85fe856c411540" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/apk-cache .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="arc/apk-cache"
-
-inherit cros-workon platform
-
-DESCRIPTION="Maintains APK cache in ARC."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/apk-cache"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="+seccomp"
-
-RDEPEND="
-	chromeos-base/minijail
-	dev-db/sqlite:=
-"
-
-DEPEND="
-	dev-db/sqlite:=
-"
-
-src_install() {
-	insinto /etc/init
-	doins init/apk-cache-cleaner.conf
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	use seccomp && newins \
-		"seccomp/apk-cache-cleaner-seccomp-${ARCH}.policy" \
-		apk-cache-cleaner-seccomp.policy
-
-	dosbin "${OUT}/apk-cache-cleaner"
-	dobin  "${OUT}/apk-cache-ctl"
-	dosbin apk-cache-cleaner-jailed
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/apk-cache-cleaner_testrunner"
-	platform_test "run" "${OUT}/apk-cache-ctl_testrunner"
-}
diff --git a/chromeos-base/arc-apk-cache/arc-apk-cache-0.0.1-r402.ebuild b/chromeos-base/arc-apk-cache/arc-apk-cache-0.0.1-r402.ebuild
new file mode 100644
index 0000000..b99903a
--- /dev/null
+++ b/chromeos-base/arc-apk-cache/arc-apk-cache-0.0.1-r402.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "337a3b9cf4ad4e8ccde785f9b20c19e35c9fca87" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/apk-cache .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="arc/apk-cache"
+
+inherit cros-workon platform
+
+DESCRIPTION="Maintains APK cache in ARC."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/apk-cache"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="+seccomp"
+
+RDEPEND="
+	chromeos-base/minijail
+	dev-db/sqlite:=
+"
+
+DEPEND="
+	dev-db/sqlite:=
+"
+
+src_install() {
+	insinto /etc/init
+	doins init/apk-cache-cleaner.conf
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	use seccomp && newins \
+		"seccomp/apk-cache-cleaner-seccomp-${ARCH}.policy" \
+		apk-cache-cleaner-seccomp.policy
+
+	dosbin "${OUT}/apk-cache-cleaner"
+	dobin  "${OUT}/apk-cache-ctl"
+	dosbin apk-cache-cleaner-jailed
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/apk-cache-cleaner_testrunner"
+	platform_test "run" "${OUT}/apk-cache-ctl_testrunner"
+}
diff --git a/chromeos-base/arc-appfuse/arc-appfuse-0.0.1-r307.ebuild b/chromeos-base/arc-appfuse/arc-appfuse-0.0.1-r307.ebuild
deleted file mode 100644
index f03a11e..0000000
--- a/chromeos-base/arc-appfuse/arc-appfuse-0.0.1-r307.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "ac2c9f71de71bb13b6d64a1245a8ea072da49f28" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/container/appfuse .gn"
-
-PLATFORM_SUBDIR="arc/container/appfuse"
-
-inherit cros-workon platform user
-
-DESCRIPTION="D-Bus service to provide ARC Appfuse"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/appfuse"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="
-	sys-apps/dbus:=
-	sys-fs/fuse:=
-"
-
-DEPEND="${RDEPEND}
-	chromeos-base/system_api:=
-"
-
-BDEPEND="
-	virtual/pkgconfig
-"
-
-src_install() {
-	platform_install
-}
-
-pkg_preinst() {
-	enewuser "arc-appfuse-provider"
-	enewgroup "arc-appfuse-provider"
-}
-
-platform_pkg_test() {
-	platform test_all
-}
diff --git a/chromeos-base/arc-appfuse/arc-appfuse-0.0.1-r337.ebuild b/chromeos-base/arc-appfuse/arc-appfuse-0.0.1-r337.ebuild
new file mode 100644
index 0000000..5e2c759
--- /dev/null
+++ b/chromeos-base/arc-appfuse/arc-appfuse-0.0.1-r337.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "1b41cb03ecd456155c5226522578107d4b748436" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/container/appfuse .gn"
+
+PLATFORM_SUBDIR="arc/container/appfuse"
+
+inherit cros-workon platform user
+
+DESCRIPTION="D-Bus service to provide ARC Appfuse"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/appfuse"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="
+	sys-apps/dbus:=
+	sys-fs/fuse:=
+"
+
+DEPEND="${RDEPEND}
+	chromeos-base/system_api:=
+"
+
+BDEPEND="
+	virtual/pkgconfig
+"
+
+src_install() {
+	platform_install
+}
+
+pkg_preinst() {
+	enewuser "arc-appfuse-provider"
+	enewgroup "arc-appfuse-provider"
+}
+
+platform_pkg_test() {
+	platform test_all
+}
diff --git a/chromeos-base/arc-base/arc-base-0.0.1-r395.ebuild b/chromeos-base/arc-base/arc-base-0.0.1-r395.ebuild
deleted file mode 100644
index 9807576..0000000
--- a/chromeos-base/arc-base/arc-base-0.0.1-r395.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "9fc9c94a2d45e1fa0d13e8eab0e41814a9cd8c42" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/container/bundle .gn"
-
-inherit cros-workon user
-
-DESCRIPTION="Container to run Android."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/bundle"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-IUSE="
-	arcpp
-	arcvm
-	"
-
-REQUIRED_USE="|| ( arcpp arcvm )"
-
-RDEPEND="!<chromeos-base/chromeos-cheets-scripts-0.0.3"
-DEPEND="${RDEPEND}"
-
-CONTAINER_ROOTFS="/opt/google/containers/android/rootfs"
-
-src_install() {
-	if use arcpp; then
-		insinto /opt/google/containers/android
-		doins arc/container/bundle/pi/config.json
-
-		# Install exception file for FIFO blocking policy on stateful partition.
-		insinto /usr/share/cros/startup/fifo_exceptions
-		doins arc/container/bundle/arc-fifo-exceptions.txt
-
-		# Install exception file for symlink blocking policy on stateful partition.
-		insinto /usr/share/cros/startup/symlink_exceptions
-		doins arc/container/bundle/arc-symlink-exceptions.txt
-	fi
-}
-
-pkg_preinst() {
-	# ARCVM also needs these users on the host side for proper ugid remapping.
-	enewuser "wayland"
-	enewgroup "wayland"
-	enewuser "arc-bridge"
-	enewgroup "arc-bridge"
-	enewuser "android-root"
-	enewgroup "android-root"
-	enewgroup "arc-sensor"
-	enewgroup "android-everybody"
-	enewgroup "android-reserved-disk"
-}
-
-pkg_postinst() {
-	if use arcpp; then
-		local root_uid=$(egetent passwd android-root | cut -d: -f3)
-		local root_gid=$(egetent group android-root | cut -d: -f3)
-
-		# Create a rootfs directory, and then a subdirectory mount point. We
-		# use 0500 for CONTAINER_ROOTFS instead of 0555 so that non-system
-		# processes running outside the container don't start depending on
-		# files in system.raw.img.
-		# These are created here rather than at
-		# install because some of them may already exist and have mounts.
-		install -d --mode=0500 "--owner=${root_uid}" "--group=${root_gid}" \
-			"${ROOT}${CONTAINER_ROOTFS}" \
-			|| true
-		# This CONTAINER_ROOTFS/root directory works as a mount point for
-		# system.raw.img, and once it's mounted, the image's root directory's
-		# permissions override the mode, owner, and group mkdir sets here.
-		mkdir -p "${ROOT}${CONTAINER_ROOTFS}/root" || true
-		install -d --mode=0500 "--owner=${root_uid}" "--group=${root_gid}" \
-			"${ROOT}${CONTAINER_ROOTFS}/android-data" \
-			|| true
-	fi
-}
diff --git a/chromeos-base/arc-base/arc-base-0.0.1-r420.ebuild b/chromeos-base/arc-base/arc-base-0.0.1-r420.ebuild
new file mode 100644
index 0000000..c0ab30d
--- /dev/null
+++ b/chromeos-base/arc-base/arc-base-0.0.1-r420.ebuild
@@ -0,0 +1,84 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "9fc9c94a2d45e1fa0d13e8eab0e41814a9cd8c42" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/container/bundle .gn"
+
+inherit cros-workon user
+
+DESCRIPTION="Container to run Android."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/bundle"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+IUSE="
+	arcpp
+	arcvm
+	"
+
+REQUIRED_USE="|| ( arcpp arcvm )"
+
+RDEPEND="!<chromeos-base/chromeos-cheets-scripts-0.0.3"
+DEPEND="${RDEPEND}"
+
+CONTAINER_ROOTFS="/opt/google/containers/android/rootfs"
+
+src_install() {
+	if use arcpp; then
+		insinto /opt/google/containers/android
+		doins arc/container/bundle/pi/config.json
+
+		# Install exception file for FIFO blocking policy on stateful partition.
+		insinto /usr/share/cros/startup/fifo_exceptions
+		doins arc/container/bundle/arc-fifo-exceptions.txt
+
+		# Install exception file for symlink blocking policy on stateful partition.
+		insinto /usr/share/cros/startup/symlink_exceptions
+		doins arc/container/bundle/arc-symlink-exceptions.txt
+	fi
+}
+
+pkg_preinst() {
+	# ARCVM also needs these users on the host side for proper ugid remapping.
+	enewuser "wayland"
+	enewgroup "wayland"
+	enewuser "arc-bridge"
+	enewgroup "arc-bridge"
+	enewuser "android-root"
+	enewgroup "android-root"
+	enewgroup "arc-sensor"
+	enewgroup "android-everybody"
+	enewgroup "android-reserved-disk"
+}
+
+pkg_postinst() {
+	if use arcpp; then
+		local root_uid=$(egetent passwd android-root | cut -d: -f3)
+		local root_gid=$(egetent group android-root | cut -d: -f3)
+
+		# Create a rootfs directory, and then a subdirectory mount point. We
+		# use 0500 for CONTAINER_ROOTFS instead of 0555 so that non-system
+		# processes running outside the container don't start depending on
+		# files in system.raw.img.
+		# These are created here rather than at
+		# install because some of them may already exist and have mounts.
+		install -d --mode=0500 "--owner=${root_uid}" "--group=${root_gid}" \
+			"${ROOT}${CONTAINER_ROOTFS}" \
+			|| true
+		# This CONTAINER_ROOTFS/root directory works as a mount point for
+		# system.raw.img, and once it's mounted, the image's root directory's
+		# permissions override the mode, owner, and group mkdir sets here.
+		mkdir -p "${ROOT}${CONTAINER_ROOTFS}/root" || true
+		install -d --mode=0500 "--owner=${root_uid}" "--group=${root_gid}" \
+			"${ROOT}${CONTAINER_ROOTFS}/android-data" \
+			|| true
+	fi
+}
diff --git a/chromeos-base/arc-common-scripts/arc-common-scripts-0.0.1-r183.ebuild b/chromeos-base/arc-common-scripts/arc-common-scripts-0.0.1-r183.ebuild
deleted file mode 100644
index 3afb658..0000000
--- a/chromeos-base/arc-common-scripts/arc-common-scripts-0.0.1-r183.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="513e5662d18591543021a62874f49792a30fd2e7"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "bb51f9f8da453999f939ccb6a91e5c1a73b89308" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/container/scripts .gn"
-
-inherit cros-workon
-
-DESCRIPTION="ARC++ common scripts."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/scripts"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-
-IUSE="arcpp iioservice"
-RDEPEND="
-	!<=chromeos-base/arc-base-0.0.1-r349
-	!<chromeos-base/arc-setup-0.0.1-r1084
-	app-misc/jq"
-DEPEND=""
-
-src_install() {
-	dosbin arc/container/scripts/android-sh
-	insinto /etc/init
-	doins arc/container/scripts/arc-kmsg-logger.conf
-	use iioservice || doins arc/container/scripts/arc-sensor.conf
-	doins arc/container/scripts/arc-ureadahead.conf
-	insinto /etc/sysctl.d
-	doins arc/container/scripts/01-sysctl-arc.conf
-	# Redirect ARC logs to arc.log.
-	insinto /etc/rsyslog.d
-	doins arc/container/scripts/rsyslog.arc.conf
-}
diff --git a/chromeos-base/arc-common-scripts/arc-common-scripts-0.0.1-r211.ebuild b/chromeos-base/arc-common-scripts/arc-common-scripts-0.0.1-r211.ebuild
new file mode 100644
index 0000000..48a107b
--- /dev/null
+++ b/chromeos-base/arc-common-scripts/arc-common-scripts-0.0.1-r211.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "434170aa6f4b0783eb80a76648f8e27f71b420fd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/container/scripts .gn"
+
+inherit cros-workon
+
+DESCRIPTION="ARC++ common scripts."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/scripts"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+
+IUSE="arcpp iioservice"
+RDEPEND="
+	!<=chromeos-base/arc-base-0.0.1-r349
+	!<chromeos-base/arc-setup-0.0.1-r1084
+	app-misc/jq"
+DEPEND=""
+
+src_install() {
+	dosbin arc/container/scripts/android-sh
+	insinto /etc/init
+	doins arc/container/scripts/arc-kmsg-logger.conf
+	use iioservice || doins arc/container/scripts/arc-sensor.conf
+	doins arc/container/scripts/arc-ureadahead.conf
+	insinto /etc/sysctl.d
+	doins arc/container/scripts/01-sysctl-arc.conf
+	# Redirect ARC logs to arc.log.
+	insinto /etc/rsyslog.d
+	doins arc/container/scripts/rsyslog.arc.conf
+}
diff --git a/chromeos-base/arc-data-snapshotd/arc-data-snapshotd-0.0.1-r116.ebuild b/chromeos-base/arc-data-snapshotd/arc-data-snapshotd-0.0.1-r116.ebuild
new file mode 100644
index 0000000..1248b5a
--- /dev/null
+++ b/chromeos-base/arc-data-snapshotd/arc-data-snapshotd-0.0.1-r116.ebuild
@@ -0,0 +1,81 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "2990ccc5d96216d454ad2d415b45bde9bbf0f80f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+inherit cros-constants
+
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="common-mk arc/data-snapshotd .gn"
+
+PLATFORM_SUBDIR="arc/data-snapshotd"
+
+inherit cros-workon platform user
+
+DESCRIPTION="ARC data snapshotd daemon in Chrome OS."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/arc/data-snapshotd"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="+seccomp selinux"
+
+RDEPEND="
+	chromeos-base/bootlockbox-client:=
+	chromeos-base/minijail:=
+"
+
+DEPEND="
+	${RDEPEND}
+	chromeos-base/system_api:=
+	dev-libs/protobuf:=
+	selinux? (
+		sys-libs/libselinux:=
+	)
+"
+
+src_install() {
+	insinto /etc/init
+	doins init/arc-data-snapshotd.conf
+	doins init/arc-data-snapshotd-worker.conf
+
+	# Install DBUS configuration file.
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.ArcDataSnapshotd.conf
+	doins dbus/org.chromium.ArcDataSnapshotdWorker.conf
+	doins dbus/ArcDataSnapshotdUpstart.conf
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	use seccomp && newins \
+		"seccomp/arc-data-snapshotd-seccomp-${ARCH}.policy" \
+		arc-data-snapshotd-seccomp.policy
+
+	dobin "${OUT}/arc-data-snapshotd"
+	dobin "${OUT}/arc-data-snapshotd-worker"
+}
+
+pkg_preinst() {
+	enewuser "arc-data-snapshotd"
+	enewgroup "arc-data-snapshotd"
+}
+
+platform_pkg_test() {
+	# Disable tests that invoke arc::data_snapshotd::CopySnapshotDirectory
+	# on qemu.
+	local gtest_filter_qemu=""
+	gtest_filter_qemu+="-DBusAdaptorTest.TakeSnapshotAndroidDataSymLink:"
+	gtest_filter_qemu+="DBusAdaptorTest.TakeSnapshotDouble:"
+	gtest_filter_qemu+="DBusAdaptorTest.LoadSnapshotUnknownUser:"
+	gtest_filter_qemu+="DBusAdaptorTest.LoadSnapshotSuccess:"
+	gtest_filter_qemu+="DBusAdaptorTest.LoadSnapshotPreviousSuccess:"
+
+	platform_test "run" "${OUT}/arc-data-snapshotd_test" "" "" \
+		"${gtest_filter_qemu}"
+	platform_test "run" "${OUT}/arc-data-snapshotd-worker_test" "" "" \
+		"${gtest_filter_qemu}"
+}
diff --git a/chromeos-base/arc-data-snapshotd/arc-data-snapshotd-0.0.1-r84.ebuild b/chromeos-base/arc-data-snapshotd/arc-data-snapshotd-0.0.1-r84.ebuild
deleted file mode 100644
index 8a5e97e..0000000
--- a/chromeos-base/arc-data-snapshotd/arc-data-snapshotd-0.0.1-r84.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "9107f8d50d8863fe8587f75a2d4d7560450cf59d" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-inherit cros-constants
-
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="common-mk arc/data-snapshotd .gn"
-
-PLATFORM_SUBDIR="arc/data-snapshotd"
-
-inherit cros-workon platform user
-
-DESCRIPTION="ARC data snapshotd daemon in Chrome OS."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/arc/data-snapshotd"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="+seccomp selinux"
-
-RDEPEND="
-	chromeos-base/bootlockbox-client:=
-	chromeos-base/minijail:=
-"
-
-DEPEND="
-	${RDEPEND}
-	chromeos-base/system_api:=
-	dev-libs/protobuf:=
-	selinux? (
-		sys-libs/libselinux:=
-	)
-"
-
-src_install() {
-	insinto /etc/init
-	doins init/arc-data-snapshotd.conf
-	doins init/arc-data-snapshotd-worker.conf
-
-	# Install DBUS configuration file.
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.ArcDataSnapshotd.conf
-	doins dbus/org.chromium.ArcDataSnapshotdWorker.conf
-	doins dbus/ArcDataSnapshotdUpstart.conf
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	use seccomp && newins \
-		"seccomp/arc-data-snapshotd-seccomp-${ARCH}.policy" \
-		arc-data-snapshotd-seccomp.policy
-
-	dobin "${OUT}/arc-data-snapshotd"
-	dobin "${OUT}/arc-data-snapshotd-worker"
-}
-
-pkg_preinst() {
-	enewuser "arc-data-snapshotd"
-	enewgroup "arc-data-snapshotd"
-}
-
-platform_pkg_test() {
-	# Disable tests that invoke arc::data_snapshotd::CopySnapshotDirectory
-	# on qemu.
-	local gtest_filter_qemu=""
-	gtest_filter_qemu+="-DBusAdaptorTest.TakeSnapshotAndroidDataSymLink:"
-	gtest_filter_qemu+="DBusAdaptorTest.TakeSnapshotDouble:"
-	gtest_filter_qemu+="DBusAdaptorTest.LoadSnapshotUnknownUser:"
-	gtest_filter_qemu+="DBusAdaptorTest.LoadSnapshotSuccess:"
-	gtest_filter_qemu+="DBusAdaptorTest.LoadSnapshotPreviousSuccess:"
-
-	platform_test "run" "${OUT}/arc-data-snapshotd_test" "" "" \
-		"${gtest_filter_qemu}"
-	platform_test "run" "${OUT}/arc-data-snapshotd-worker_test" "" "" \
-		"${gtest_filter_qemu}"
-}
diff --git a/chromeos-base/arc-host-clock-service/arc-host-clock-service-0.0.1-r59.ebuild b/chromeos-base/arc-host-clock-service/arc-host-clock-service-0.0.1-r59.ebuild
deleted file mode 100644
index 052ed4f..0000000
--- a/chromeos-base/arc-host-clock-service/arc-host-clock-service-0.0.1-r59.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "d5ebac6b78340ae031e643c6ddb2afdb32017e76" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/vm/host_clock .gn"
-
-PLATFORM_SUBDIR="arc/vm/host_clock"
-
-inherit cros-workon platform user
-
-DESCRIPTION="ARC host clock service"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/arc/vm/host_clock"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="
-"
-
-DEPEND="
-	${RDEPEND}
-	chromeos-base/system_api
-"
-
-src_install() {
-	dobin "${OUT}"/arc-host-clock-service
-
-	insinto /etc/init
-	doins arc-host-clock-service.conf
-}
-
-pkg_preinst() {
-	enewuser "arc-host-clock"
-	enewgroup "arc-host-clock"
-}
diff --git a/chromeos-base/arc-host-clock-service/arc-host-clock-service-0.0.1-r85.ebuild b/chromeos-base/arc-host-clock-service/arc-host-clock-service-0.0.1-r85.ebuild
new file mode 100644
index 0000000..aafd99d
--- /dev/null
+++ b/chromeos-base/arc-host-clock-service/arc-host-clock-service-0.0.1-r85.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "cca15ee6031a3289ea3e45535963bb5874662caa" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/vm/host_clock .gn"
+
+PLATFORM_SUBDIR="arc/vm/host_clock"
+
+inherit cros-workon platform user
+
+DESCRIPTION="ARC host clock service"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/arc/vm/host_clock"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="
+"
+
+DEPEND="
+	${RDEPEND}
+	chromeos-base/system_api
+"
+
+src_install() {
+	dobin "${OUT}"/arc-host-clock-service
+
+	insinto /etc/init
+	doins arc-host-clock-service.conf
+}
+
+pkg_preinst() {
+	enewuser "arc-host-clock"
+	enewgroup "arc-host-clock"
+}
diff --git a/chromeos-base/arc-keymaster/arc-keymaster-0.0.1-r246.ebuild b/chromeos-base/arc-keymaster/arc-keymaster-0.0.1-r246.ebuild
deleted file mode 100644
index 5962cf7..0000000
--- a/chromeos-base/arc-keymaster/arc-keymaster-0.0.1-r246.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("6f9011123f3656c45bb34148673aa110a22326b3" "49dfc58d6c4c66f5d0b0d06f0161da4e602a1293")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "cd360f89c2a9c43343acba09894918cb5ef94620" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "6dbc19849752c206e135ab59349ebb1cc62bb435")
-inherit cros-constants
-
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_PROJECT=("chromiumos/platform2" "platform/system/keymaster")
-CROS_WORKON_REPO=(
-	"${CROS_GIT_HOST_URL}"
-	"${CROS_GIT_AOSP_URL}"
-)
-CROS_WORKON_EGIT_BRANCH=("master" "pie-release")
-CROS_WORKON_LOCALNAME=("platform2" "aosp/system/keymaster")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/aosp/system/keymaster")
-CROS_WORKON_SUBTREE=("common-mk arc/keymaster .gn" "")
-
-PLATFORM_SUBDIR="arc/keymaster"
-
-# This BoringSSL integration follows go/boringssl-cros.
-# DO NOT COPY TO OTHER PACKAGES WITHOUT CONSULTING SECURITY TEAM.
-BORINGSSL_PN="boringssl"
-BORINGSSL_PV="430a7423039682e4bbc7b522e3b57b2c8dca5e3b"
-BORINGSSL_P="${BORINGSSL_PN}-${BORINGSSL_PV}"
-BORINGSSL_OUTDIR="${WORKDIR}/boringssl_outputs/"
-
-CMAKE_USE_DIR="${WORKDIR}/${BORINGSSL_P}"
-BUILD_DIR="${WORKDIR}/${BORINGSSL_P}_build"
-
-inherit flag-o-matic cmake-utils cros-workon platform user
-
-DESCRIPTION="Android keymaster service in Chrome OS."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/keymaster"
-SRC_URI="https://github.com/google/${BORINGSSL_PN}/archive/${BORINGSSL_PV}.tar.gz -> ${BORINGSSL_P}.tar.gz"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="+seccomp"
-
-RDEPEND="
-	chromeos-base/chaps:=
-	chromeos-base/cryptohome:=
-	chromeos-base/minijail:=
-	dev-libs/protobuf:=
-"
-
-DEPEND="
-	${RDEPEND}
-	chromeos-base/session_manager-client:=
-	chromeos-base/system_api:=
-"
-
-HEADER_TAINT="#ifdef CHROMEOS_OPENSSL_IS_OPENSSL
-#error \"Do not mix OpenSSL and BoringSSL headers.\"
-#endif
-#define CHROMEOS_OPENSSL_IS_BORINGSSL\n"
-
-src_unpack() {
-	platform_src_unpack
-	unpack "${BORINGSSL_P}.tar.gz"
-	# Taint BoringSSL headers so they don't silently mix with OpenSSL.
-	find "${BORINGSSL_P}/include/openssl" -type f -exec awk -i inplace -v \
-		"taint=${HEADER_TAINT}" 'NR == 1 {print taint} {print}' {} \;
-}
-
-src_prepare() {
-	cmake-utils_src_prepare
-
-	# Expose libhardware headers from arc-toolchain-p.
-	local arc_arch="${ARCH}"
-	# arm needs to use arm64 directory, which provides combined arm/arm64
-	# headers.
-	if [[ "${ARCH}" == "arm" ]]; then
-		arc_arch="arm64"
-	fi
-	mkdir -p "${WORKDIR}/libhardware/include" || die
-	cp -rfp "/opt/android-p/${arc_arch}/usr/include/hardware" "${WORKDIR}/libhardware/include" || die
-	append-cxxflags "-I${WORKDIR}/libhardware/include"
-
-	# Expose BoringSSL headers and outputs.
-	append-cxxflags "-I${WORKDIR}/${BORINGSSL_P}/include"
-	append-ldflags "-L${BORINGSSL_OUTDIR}"
-	# Verify upstream hasn't changed relevant context code.
-	cd "${WORKDIR}/${P}/aosp/system/keymaster" || die
-	eapply --dry-run "${FILESDIR}/keymaster-context-hooks.patch"
-	# Fix C++17 compilation. Can be removed once we update to newer version of
-	# keymaster that contains https://r.android.com/1412947.
-	cd "${WORKDIR}/${P}/aosp/system/keymaster" || die
-	eapply "${FILESDIR}/0001-keymaster-fix-C-17-compilation.patch"
-	# Make P Keymaster compatible with latest BoringSSL.
-	eapply "${FILESDIR}/keymaster-boringssl-update.patch"
-}
-
-src_configure() {
-	local mycmakeargs=(
-		"-DCMAKE_BUILD_TYPE=Release"
-		"-DCMAKE_SYSTEM_PROCESSOR=${CHOST%%-*}"
-		"-DBUILD_SHARED_LIBS=OFF"
-	)
-	cmake-utils_src_configure
-	platform_src_configure
-}
-
-src_compile() {
-	# Compile BoringSSL and expose libcrypto.a.
-	cmake-utils_src_compile
-	mkdir -p "${BORINGSSL_OUTDIR}" || die
-	cp -p "${BUILD_DIR}/crypto/libcrypto.a" "${BORINGSSL_OUTDIR}/libboringcrypto.a" || die
-
-	platform_src_compile
-}
-
-src_install() {
-	insinto /etc/init
-	doins init/arc-keymasterd.conf
-
-	# Install DBUS configuration file.
-	insinto /etc/dbus-1/system.d
-	doins dbus_permissions/org.chromium.ArcKeymaster.conf
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	use seccomp && newins \
-		"seccomp/arc-keymasterd-seccomp-${ARCH}.policy" \
-		arc-keymasterd-seccomp.policy
-
-	# Install shared libs and binary.
-	dolib.so "${OUT}/lib/libarckeymaster_context.so"
-	dolib.so "${OUT}/lib/libkeymaster.so"
-	dosbin "${OUT}/arc-keymasterd"
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_keymasterd_fuzzer
-}
-
-pkg_preinst() {
-	enewuser "arc-keymasterd"
-	enewgroup "arc-keymasterd"
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/arc-keymasterd_testrunner"
-}
diff --git a/chromeos-base/arc-keymaster/arc-keymaster-0.0.1-r283.ebuild b/chromeos-base/arc-keymaster/arc-keymaster-0.0.1-r283.ebuild
new file mode 100644
index 0000000..a9c1353
--- /dev/null
+++ b/chromeos-base/arc-keymaster/arc-keymaster-0.0.1-r283.ebuild
@@ -0,0 +1,148 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "49dfc58d6c4c66f5d0b0d06f0161da4e602a1293")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "222cd53e50c531fae543745aeb9c0530e50aca32" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "6dbc19849752c206e135ab59349ebb1cc62bb435")
+inherit cros-constants
+
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_PROJECT=("chromiumos/platform2" "platform/system/keymaster")
+CROS_WORKON_REPO=(
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_AOSP_URL}"
+)
+CROS_WORKON_EGIT_BRANCH=("master" "pie-release")
+CROS_WORKON_LOCALNAME=("platform2" "aosp/system/keymaster")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/aosp/system/keymaster")
+CROS_WORKON_SUBTREE=("common-mk arc/keymaster .gn" "")
+
+PLATFORM_SUBDIR="arc/keymaster"
+
+# This BoringSSL integration follows go/boringssl-cros.
+# DO NOT COPY TO OTHER PACKAGES WITHOUT CONSULTING SECURITY TEAM.
+BORINGSSL_PN="boringssl"
+BORINGSSL_PV="430a7423039682e4bbc7b522e3b57b2c8dca5e3b"
+BORINGSSL_P="${BORINGSSL_PN}-${BORINGSSL_PV}"
+BORINGSSL_OUTDIR="${WORKDIR}/boringssl_outputs/"
+
+CMAKE_USE_DIR="${WORKDIR}/${BORINGSSL_P}"
+BUILD_DIR="${WORKDIR}/${BORINGSSL_P}_build"
+
+inherit flag-o-matic cmake-utils cros-workon platform user
+
+DESCRIPTION="Android keymaster service in Chrome OS."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/keymaster"
+SRC_URI="https://github.com/google/${BORINGSSL_PN}/archive/${BORINGSSL_PV}.tar.gz -> ${BORINGSSL_P}.tar.gz"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="+seccomp"
+
+RDEPEND="
+	chromeos-base/chaps:=
+	chromeos-base/cryptohome:=
+	chromeos-base/cryptohome-client:=
+	chromeos-base/minijail:=
+	dev-libs/protobuf:=
+"
+
+DEPEND="
+	${RDEPEND}
+	chromeos-base/session_manager-client:=
+	chromeos-base/system_api:=
+"
+
+HEADER_TAINT="#ifdef CHROMEOS_OPENSSL_IS_OPENSSL
+#error \"Do not mix OpenSSL and BoringSSL headers.\"
+#endif
+#define CHROMEOS_OPENSSL_IS_BORINGSSL\n"
+
+src_unpack() {
+	platform_src_unpack
+	unpack "${BORINGSSL_P}.tar.gz"
+	# Taint BoringSSL headers so they don't silently mix with OpenSSL.
+	find "${BORINGSSL_P}/include/openssl" -type f -exec awk -i inplace -v \
+		"taint=${HEADER_TAINT}" 'NR == 1 {print taint} {print}' {} \;
+}
+
+src_prepare() {
+	cmake-utils_src_prepare
+
+	# Expose libhardware headers from arc-toolchain-p.
+	local arc_arch="${ARCH}"
+	# arm needs to use arm64 directory, which provides combined arm/arm64
+	# headers.
+	if [[ "${ARCH}" == "arm" ]]; then
+		arc_arch="arm64"
+	fi
+	mkdir -p "${WORKDIR}/libhardware/include" || die
+	cp -rfp "/opt/android-p/${arc_arch}/usr/include/hardware" "${WORKDIR}/libhardware/include" || die
+	append-cxxflags "-I${WORKDIR}/libhardware/include"
+
+	# Expose BoringSSL headers and outputs.
+	append-cxxflags "-I${WORKDIR}/${BORINGSSL_P}/include"
+	append-ldflags "-L${BORINGSSL_OUTDIR}"
+	# Verify upstream hasn't changed relevant context code.
+	cd "${WORKDIR}/${P}/aosp/system/keymaster" || die
+	eapply --dry-run "${FILESDIR}/keymaster-context-hooks.patch"
+	# Fix C++17 compilation. Can be removed once we update to newer version of
+	# keymaster that contains https://r.android.com/1412947.
+	cd "${WORKDIR}/${P}/aosp/system/keymaster" || die
+	eapply "${FILESDIR}/0001-keymaster-fix-C-17-compilation.patch"
+	# Make P Keymaster compatible with latest BoringSSL.
+	eapply "${FILESDIR}/keymaster-boringssl-update.patch"
+}
+
+src_configure() {
+	local mycmakeargs=(
+		"-DCMAKE_BUILD_TYPE=Release"
+		"-DCMAKE_SYSTEM_PROCESSOR=${CHOST%%-*}"
+		"-DBUILD_SHARED_LIBS=OFF"
+	)
+	cmake-utils_src_configure
+	platform_src_configure
+}
+
+src_compile() {
+	# Compile BoringSSL and expose libcrypto.a.
+	cmake-utils_src_compile
+	mkdir -p "${BORINGSSL_OUTDIR}" || die
+	cp -p "${BUILD_DIR}/crypto/libcrypto.a" "${BORINGSSL_OUTDIR}/libboringcrypto.a" || die
+
+	platform_src_compile
+}
+
+src_install() {
+	insinto /etc/init
+	doins init/arc-keymasterd.conf
+
+	# Install DBUS configuration file.
+	insinto /etc/dbus-1/system.d
+	doins dbus_permissions/org.chromium.ArcKeymaster.conf
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	use seccomp && newins \
+		"seccomp/arc-keymasterd-seccomp-${ARCH}.policy" \
+		arc-keymasterd-seccomp.policy
+
+	# Install shared libs and binary.
+	dolib.so "${OUT}/lib/libarckeymaster_context.so"
+	dolib.so "${OUT}/lib/libkeymaster.so"
+	dosbin "${OUT}/arc-keymasterd"
+
+	local fuzzer_component_id="157100"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_keymasterd_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+pkg_preinst() {
+	enewuser "arc-keymasterd"
+	enewgroup "arc-keymasterd"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/arc-keymasterd_testrunner"
+}
diff --git a/chromeos-base/arc-keymaster/arc-keymaster-9999.ebuild b/chromeos-base/arc-keymaster/arc-keymaster-9999.ebuild
index 31e847a..1b53cea 100644
--- a/chromeos-base/arc-keymaster/arc-keymaster-9999.ebuild
+++ b/chromeos-base/arc-keymaster/arc-keymaster-9999.ebuild
@@ -41,6 +41,7 @@
 RDEPEND="
 	chromeos-base/chaps:=
 	chromeos-base/cryptohome:=
+	chromeos-base/cryptohome-client:=
 	chromeos-base/minijail:=
 	dev-libs/protobuf:=
 "
@@ -130,7 +131,9 @@
 	dolib.so "${OUT}/lib/libkeymaster.so"
 	dosbin "${OUT}/arc-keymasterd"
 
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_keymasterd_fuzzer
+	local fuzzer_component_id="157100"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_keymasterd_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 pkg_preinst() {
diff --git a/chromeos-base/arc-myfiles/arc-myfiles-0.0.1-r201.ebuild b/chromeos-base/arc-myfiles/arc-myfiles-0.0.1-r201.ebuild
deleted file mode 100644
index 1b9dfae..0000000
--- a/chromeos-base/arc-myfiles/arc-myfiles-0.0.1-r201.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "c8a2550e2697f391dc686b4a72841d4568a5de73" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/container/myfiles .gn"
-
-inherit cros-workon
-
-DESCRIPTION="Container to run Android's MyFiles daemon."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/myfiles"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="chromeos-base/mount-passthrough
-	!<chromeos-base/chromeos-cheets-scripts-0.0.2-r470
-"
-
-src_install() {
-	insinto /etc/init
-	doins arc/container/myfiles/arc-myfiles.conf
-	doins arc/container/myfiles/arc-myfiles-default.conf
-	doins arc/container/myfiles/arc-myfiles-read.conf
-	doins arc/container/myfiles/arc-myfiles-write.conf
-}
diff --git a/chromeos-base/arc-myfiles/arc-myfiles-0.0.1-r226.ebuild b/chromeos-base/arc-myfiles/arc-myfiles-0.0.1-r226.ebuild
new file mode 100644
index 0000000..43fc2a8
--- /dev/null
+++ b/chromeos-base/arc-myfiles/arc-myfiles-0.0.1-r226.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "c8a2550e2697f391dc686b4a72841d4568a5de73" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/container/myfiles .gn"
+
+inherit cros-workon
+
+DESCRIPTION="Container to run Android's MyFiles daemon."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/myfiles"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="chromeos-base/mount-passthrough
+	!<chromeos-base/chromeos-cheets-scripts-0.0.2-r470
+"
+
+src_install() {
+	insinto /etc/init
+	doins arc/container/myfiles/arc-myfiles.conf
+	doins arc/container/myfiles/arc-myfiles-default.conf
+	doins arc/container/myfiles/arc-myfiles-read.conf
+	doins arc/container/myfiles/arc-myfiles-write.conf
+}
diff --git a/chromeos-base/arc-obb-mounter/arc-obb-mounter-0.0.2-r451.ebuild b/chromeos-base/arc-obb-mounter/arc-obb-mounter-0.0.2-r451.ebuild
deleted file mode 100644
index bc78232..0000000
--- a/chromeos-base/arc-obb-mounter/arc-obb-mounter-0.0.2-r451.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e77993554f66d7d254d4cdb7210c63195cd7d453" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/container/obb-mounter .gn"
-
-PLATFORM_SUBDIR="arc/container/obb-mounter"
-
-inherit cros-workon platform
-
-DESCRIPTION="D-Bus service to mount OBB files"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/obb-mounter"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="
-	sys-fs/fuse:=
-	sys-libs/libcap:=
-"
-
-DEPEND="${RDEPEND}"
-
-BDEPEND="
-	virtual/pkgconfig
-"
-
-
-CONTAINER_DIR="/opt/google/containers/arc-obb-mounter"
-
-src_install() {
-	dobin "${OUT}"/arc-obb-mounter
-	dobin "${OUT}"/mount-obb
-
-	insinto /etc/dbus-1/system.d
-	doins org.chromium.ArcObbMounter.conf
-
-	insinto /etc/init
-	doins init/arc-obb-mounter.conf
-
-	insinto "${CONTAINER_DIR}"
-	doins "${OUT}"/rootfs.squashfs
-
-	# Keep the parent directory of mountpoints inaccessible from non-root
-	# users because mountpoints themselves are often world-readable but we
-	# do not want to expose them.
-	# container-root is where the root filesystem of the container in which
-	# arc-obb-mounter daemon runs is mounted.
-	diropts --mode=0700 --owner=root --group=root
-	keepdir "${CONTAINER_DIR}"/mountpoints/
-	keepdir "${CONTAINER_DIR}"/mountpoints/container-root
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/mount-obb_fuzzer
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/arc-obb-mounter_testrunner"
-}
diff --git a/chromeos-base/arc-obb-mounter/arc-obb-mounter-0.0.2-r482.ebuild b/chromeos-base/arc-obb-mounter/arc-obb-mounter-0.0.2-r482.ebuild
new file mode 100644
index 0000000..5a85ccb
--- /dev/null
+++ b/chromeos-base/arc-obb-mounter/arc-obb-mounter-0.0.2-r482.ebuild
@@ -0,0 +1,57 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "63863adae39809cf6a9db2633d644dd8200dd340" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/container/obb-mounter .gn"
+
+PLATFORM_SUBDIR="arc/container/obb-mounter"
+
+inherit cros-workon platform
+
+DESCRIPTION="D-Bus service to mount OBB files"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/obb-mounter"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="
+	sys-fs/fuse:=
+	sys-libs/libcap:=
+"
+
+DEPEND="${RDEPEND}"
+
+BDEPEND="
+	virtual/pkgconfig
+"
+
+
+CONTAINER_DIR="/opt/google/containers/arc-obb-mounter"
+
+src_install() {
+	platform_install
+
+	# Keep the parent directory of mountpoints inaccessible from non-root
+	# users because mountpoints themselves are often world-readable but we
+	# do not want to expose them.
+	# container-root is where the root filesystem of the container in which
+	# arc-obb-mounter daemon runs is mounted.
+	diropts --mode=0700 --owner=root --group=root
+	keepdir "${CONTAINER_DIR}"/mountpoints/
+	keepdir "${CONTAINER_DIR}"/mountpoints/container-root
+
+	local fuzzer_component_id="516669"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/mount-obb_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform test_all
+}
diff --git a/chromeos-base/arc-obb-mounter/arc-obb-mounter-9999.ebuild b/chromeos-base/arc-obb-mounter/arc-obb-mounter-9999.ebuild
index d7140cf..8059beb 100644
--- a/chromeos-base/arc-obb-mounter/arc-obb-mounter-9999.ebuild
+++ b/chromeos-base/arc-obb-mounter/arc-obb-mounter-9999.ebuild
@@ -34,17 +34,7 @@
 CONTAINER_DIR="/opt/google/containers/arc-obb-mounter"
 
 src_install() {
-	dobin "${OUT}"/arc-obb-mounter
-	dobin "${OUT}"/mount-obb
-
-	insinto /etc/dbus-1/system.d
-	doins org.chromium.ArcObbMounter.conf
-
-	insinto /etc/init
-	doins init/arc-obb-mounter.conf
-
-	insinto "${CONTAINER_DIR}"
-	doins "${OUT}"/rootfs.squashfs
+	platform_install
 
 	# Keep the parent directory of mountpoints inaccessible from non-root
 	# users because mountpoints themselves are often world-readable but we
@@ -55,9 +45,11 @@
 	keepdir "${CONTAINER_DIR}"/mountpoints/
 	keepdir "${CONTAINER_DIR}"/mountpoints/container-root
 
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/mount-obb_fuzzer
+	local fuzzer_component_id="516669"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/mount-obb_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
-	platform_test "run" "${OUT}/arc-obb-mounter_testrunner"
+	platform test_all
 }
diff --git a/chromeos-base/arc-removable-media/arc-removable-media-0.0.1-r293.ebuild b/chromeos-base/arc-removable-media/arc-removable-media-0.0.1-r293.ebuild
deleted file mode 100644
index 729b047..0000000
--- a/chromeos-base/arc-removable-media/arc-removable-media-0.0.1-r293.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a668f1f1ed688f833488719ca2ccefc7e1e4272b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/container/removable-media .gn"
-
-inherit cros-workon
-
-DESCRIPTION="Container to run Android's removable-media daemon."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/removable-media"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="chromeos-base/mount-passthrough
-	!<chromeos-base/chromeos-cheets-scripts-0.0.2-r470
-"
-
-src_install() {
-	insinto /etc/init
-	doins arc/container/removable-media/arc-removable-media.conf
-	doins arc/container/removable-media/arc-removable-media-default.conf
-	doins arc/container/removable-media/arc-removable-media-read.conf
-	doins arc/container/removable-media/arc-removable-media-write.conf
-}
diff --git a/chromeos-base/arc-removable-media/arc-removable-media-0.0.1-r318.ebuild b/chromeos-base/arc-removable-media/arc-removable-media-0.0.1-r318.ebuild
new file mode 100644
index 0000000..ffa78e4
--- /dev/null
+++ b/chromeos-base/arc-removable-media/arc-removable-media-0.0.1-r318.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "a668f1f1ed688f833488719ca2ccefc7e1e4272b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/container/removable-media .gn"
+
+inherit cros-workon
+
+DESCRIPTION="Container to run Android's removable-media daemon."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/removable-media"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="chromeos-base/mount-passthrough
+	!<chromeos-base/chromeos-cheets-scripts-0.0.2-r470
+"
+
+src_install() {
+	insinto /etc/init
+	doins arc/container/removable-media/arc-removable-media.conf
+	doins arc/container/removable-media/arc-removable-media-default.conf
+	doins arc/container/removable-media/arc-removable-media-read.conf
+	doins arc/container/removable-media/arc-removable-media-write.conf
+}
diff --git a/chromeos-base/arc-sdcard/arc-sdcard-0.0.1-r293.ebuild b/chromeos-base/arc-sdcard/arc-sdcard-0.0.1-r293.ebuild
deleted file mode 100644
index a1f0f26..0000000
--- a/chromeos-base/arc-sdcard/arc-sdcard-0.0.1-r293.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "8d42b591edbde62798f5c6399507eb627c83326f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/container/sdcard .gn"
-
-PLATFORM_SUBDIR="arc/container/sdcard"
-
-inherit cros-workon platform
-
-DESCRIPTION="Container to run Android's sdcard daemon."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/sdcard"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="esdfs"
-
-CONTAINER_DIR="/opt/google/containers/arc-sdcard"
-
-RDEPEND="!esdfs? ( chromeos-base/arc-setup )"
-DEPEND="${DEPEND}"
-
-src_install() {
-	if ! use esdfs; then
-		insinto /etc/init
-		doins arc-sdcard.conf
-	fi
-
-	insinto "${CONTAINER_DIR}"
-	doins "${OUT}"/rootfs.squashfs
-
-	# Keep the parent directory of mountpoints inaccessible from non-root
-	# users because mountpoints themselves are often world-readable but we
-	# do not want to expose them.
-	# container-root is where the root filesystem of the container in which
-	# arc-obb-mounter daemon runs is mounted.
-	diropts --mode=0700 --owner=root --group=root
-	keepdir "${CONTAINER_DIR}"/mountpoints/
-	keepdir "${CONTAINER_DIR}"/mountpoints/container-root
-}
diff --git a/chromeos-base/arc-sdcard/arc-sdcard-0.0.1-r318.ebuild b/chromeos-base/arc-sdcard/arc-sdcard-0.0.1-r318.ebuild
new file mode 100644
index 0000000..4528cf4
--- /dev/null
+++ b/chromeos-base/arc-sdcard/arc-sdcard-0.0.1-r318.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "94ae762a180b92279a7a9f0009240f9eaa7f435e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/container/sdcard .gn"
+
+PLATFORM_SUBDIR="arc/container/sdcard"
+
+inherit cros-workon platform
+
+DESCRIPTION="Container to run Android's sdcard daemon."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/sdcard"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="esdfs"
+
+# CONTAINER_DIR must be kept consistent with installation configuration in
+# ${PLATFORM_SUBDIR}/BUILD.gn.
+CONTAINER_DIR="/opt/google/containers/arc-sdcard"
+
+RDEPEND="!esdfs? ( chromeos-base/arc-setup )"
+DEPEND="${DEPEND}"
+
+src_install() {
+	platform_install
+
+	# Keep the parent directory of mountpoints inaccessible from non-root
+	# users because mountpoints themselves are often world-readable but we
+	# do not want to expose them.
+	# container-root is where the root filesystem of the container in which
+	# arc-obb-mounter daemon runs is mounted.
+	diropts --mode=0700 --owner=root --group=root
+	keepdir "${CONTAINER_DIR}"/mountpoints/
+	keepdir "${CONTAINER_DIR}"/mountpoints/container-root
+}
diff --git a/chromeos-base/arc-sdcard/arc-sdcard-9999.ebuild b/chromeos-base/arc-sdcard/arc-sdcard-9999.ebuild
index be03d47..2a510f9 100644
--- a/chromeos-base/arc-sdcard/arc-sdcard-9999.ebuild
+++ b/chromeos-base/arc-sdcard/arc-sdcard-9999.ebuild
@@ -20,19 +20,15 @@
 KEYWORDS="~*"
 IUSE="esdfs"
 
+# CONTAINER_DIR must be kept consistent with installation configuration in
+# ${PLATFORM_SUBDIR}/BUILD.gn.
 CONTAINER_DIR="/opt/google/containers/arc-sdcard"
 
 RDEPEND="!esdfs? ( chromeos-base/arc-setup )"
 DEPEND="${DEPEND}"
 
 src_install() {
-	if ! use esdfs; then
-		insinto /etc/init
-		doins arc-sdcard.conf
-	fi
-
-	insinto "${CONTAINER_DIR}"
-	doins "${OUT}"/rootfs.squashfs
+	platform_install
 
 	# Keep the parent directory of mountpoints inaccessible from non-root
 	# users because mountpoints themselves are often world-readable but we
diff --git a/chromeos-base/arc-sensor-service/arc-sensor-service-0.0.1-r106.ebuild b/chromeos-base/arc-sensor-service/arc-sensor-service-0.0.1-r106.ebuild
new file mode 100644
index 0000000..58a5c71
--- /dev/null
+++ b/chromeos-base/arc-sensor-service/arc-sensor-service-0.0.1-r106.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "ec78547a4cf853b7a6279e652b11383b0ba8115e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/vm/sensor_service .gn"
+
+PLATFORM_SUBDIR="arc/vm/sensor_service"
+
+inherit cros-workon platform
+
+DESCRIPTION="ARC sensor service."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/sensor_service"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="
+"
+
+DEPEND="
+	${RDEPEND}
+"
+
+src_install() {
+	dobin "${OUT}"/arc_sensor_service
+
+	insinto /etc/init
+	doins init/arc-sensor-service.conf
+
+	insinto /etc/dbus-1/system.d
+	doins init/dbus-1/org.chromium.ArcSensorService.conf
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/arc_sensor_service_testrunner"
+}
diff --git a/chromeos-base/arc-sensor-service/arc-sensor-service-0.0.1-r79.ebuild b/chromeos-base/arc-sensor-service/arc-sensor-service-0.0.1-r79.ebuild
deleted file mode 100644
index 87d77cb..0000000
--- a/chromeos-base/arc-sensor-service/arc-sensor-service-0.0.1-r79.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "37d18ee31b53064c7077aaf9c02849897112588c" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/vm/sensor_service .gn"
-
-PLATFORM_SUBDIR="arc/vm/sensor_service"
-
-inherit cros-workon platform
-
-DESCRIPTION="ARC sensor service."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/sensor_service"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="
-"
-
-DEPEND="
-	${RDEPEND}
-"
-
-src_install() {
-	dobin "${OUT}"/arc_sensor_service
-
-	insinto /etc/init
-	doins init/arc-sensor-service.conf
-
-	insinto /etc/dbus-1/system.d
-	doins init/dbus-1/org.chromium.ArcSensorService.conf
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/arc_sensor_service_testrunner"
-}
diff --git a/chromeos-base/arc-setup/arc-setup-0.0.1-r1248.ebuild b/chromeos-base/arc-setup/arc-setup-0.0.1-r1248.ebuild
deleted file mode 100644
index cb5f976..0000000
--- a/chromeos-base/arc-setup/arc-setup-0.0.1-r1248.ebuild
+++ /dev/null
@@ -1,148 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="7ad3c0d318ab6cd2ff9a75d1b99ef69d423e433d"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "f4925a46fc9b9ab39b7c7a11ad97e12a0d0bb39d" "aa0612733aca2d5ffa65470f07408228b473ebdb" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk arc/setup chromeos-config metrics .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="arc/setup"
-
-inherit cros-workon platform
-
-DESCRIPTION="Set up environment to run ARC."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/setup"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="
-	arcpp
-	arcvm
-	esdfs
-	fuzzer
-	generated_cros_config
-	houdini
-	houdini64
-	iioservice
-	ndk_translation
-	unibuild
-	test"
-
-REQUIRED_USE="|| ( arcpp arcvm )"
-
-COMMON_DEPEND="
-	arcpp? (
-		esdfs? ( chromeos-base/arc-sdcard )
-	)
-	chromeos-base/bootstat:=
-	chromeos-base/chromeos-config-tools:=
-	chromeos-base/cryptohome-client:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/patchpanel-client:=
-	dev-libs/libxml2:=
-	dev-libs/protobuf:=
-	sys-libs/libselinux:=
-	chromeos-base/minijail:=
-"
-
-RDEPEND="${COMMON_DEPEND}
-	!<chromeos-base/arc-common-scripts-0.0.1-r131
-	!<chromeos-base/arcvm-common-scripts-0.0.1-r77
-	chromeos-base/patchpanel
-	arcvm? ( chromeos-base/crosvm )
-	arcpp? (
-		chromeos-base/swap-init
-		esdfs? ( sys-apps/restorecon )
-	)
-"
-
-DEPEND="${COMMON_DEPEND}
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
-	chromeos-base/system_api:=[fuzzer?]
-	test? ( chromeos-base/arc-base )
-"
-
-
-enable_esdfs() {
-	[[ -f "$1" ]] || die
-	local data=$(jq ".USE_ESDFS=true" "$1")
-	echo "${data}" > "$1" || die
-}
-
-
-src_install() {
-	# Used for both ARCVM and ARC.
-	dosbin "${OUT}"/arc-prepare-host-generated-dir
-	dosbin "${OUT}"/arc-remove-data
-	dosbin "${OUT}"/arc-remove-stale-data
-	insinto /etc/init
-	doins init/arc-prepare-host-generated-dir.conf
-	doins init/arc-remove-data.conf
-	doins init/arc-stale-directory-remover.conf
-
-	# Some binaries are only for ARCVM
-	if use arcvm; then
-		dosbin "${OUT}"/arc-apply-per-board-config
-		dosbin "${OUT}"/arc-create-data
-		dosbin "${OUT}"/arc-handle-upgrade
-		insinto /etc/init
-		doins init/arcvm-per-board-features.conf
-		doins init/arc-create-data.conf
-		doins init/arc-handle-upgrade.conf
-		insinto /etc/dbus-1/system.d
-		doins init/dbus-1/ArcVmSetupUpstart.conf
-	fi
-
-	# Other files are only for ARC.
-	if use arcpp; then
-		dosbin "${OUT}"/arc-setup
-		insinto /etc/init
-		doins init/arc-boot-continue.conf
-		doins init/arc-lifetime.conf
-		doins init/arc-update-restorecon-last.conf
-		doins init/arcpp-post-login-services.conf
-		if use esdfs; then
-			doins init/arc-sdcard.conf
-			doins init/arc-sdcard-mount.conf
-		fi
-		doins init/arc-system-mount.conf
-		insinto /etc/dbus-1/system.d
-		doins init/dbus-1/ArcSetupUpstart.conf
-
-		insinto /usr/share/arc-setup
-		doins init/arc-setup/config.json
-
-		if use esdfs; then
-			enable_esdfs "${D}/usr/share/arc-setup/config.json"
-		fi
-
-		insinto /opt/google/containers/arc-art
-		doins "${OUT}/dev-rootfs.squashfs"
-
-		# container-root is where the root filesystem of the container in which
-		# patchoat and dex2oat runs is mounted. dev-rootfs is mount point
-		# for squashfs.
-		diropts --mode=0700 --owner=root --group=root
-		keepdir /opt/google/containers/arc-art/mountpoints/container-root
-		keepdir /opt/google/containers/arc-art/mountpoints/dev-rootfs
-		keepdir /opt/google/containers/arc-art/mountpoints/vendor
-
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_setup_util_find_all_properties_fuzzer
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_setup_util_find_fingerprint_and_sdk_version_fuzzer
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_property_util_expand_property_contents_fuzzer
-	fi
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/arc-setup_testrunner"
-}
diff --git a/chromeos-base/arc-setup/arc-setup-0.0.1-r1324.ebuild b/chromeos-base/arc-setup/arc-setup-0.0.1-r1324.ebuild
new file mode 100644
index 0000000..74315b4
--- /dev/null
+++ b/chromeos-base/arc-setup/arc-setup-0.0.1-r1324.ebuild
@@ -0,0 +1,148 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "079fc106d691c6c107528102d9c248d99e3d9663" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk arc/setup chromeos-config metrics .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="arc/setup"
+
+inherit tmpfiles cros-workon cros-unibuild platform
+
+DESCRIPTION="Set up environment to run ARC."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/setup"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="
+	arcpp
+	arcvm
+	esdfs
+	fuzzer
+	houdini
+	houdini64
+	iioservice
+	ndk_translation
+	test"
+
+REQUIRED_USE="|| ( arcpp arcvm )"
+
+COMMON_DEPEND="
+	arcpp? (
+		esdfs? ( chromeos-base/arc-sdcard )
+	)
+	chromeos-base/bootstat:=
+	chromeos-base/chromeos-config-tools:=
+	chromeos-base/cryptohome-client:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/patchpanel-client:=
+	dev-libs/libxml2:=
+	dev-libs/protobuf:=
+	sys-libs/libselinux:=
+	chromeos-base/minijail:=
+"
+
+RDEPEND="${COMMON_DEPEND}
+	!<chromeos-base/arc-common-scripts-0.0.1-r131
+	!<chromeos-base/arcvm-common-scripts-0.0.1-r77
+	chromeos-base/patchpanel
+	arcvm? ( chromeos-base/crosvm )
+	arcpp? (
+		chromeos-base/swap-init
+		esdfs? ( sys-apps/restorecon )
+	)
+"
+
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/system_api:=[fuzzer?]
+	test? ( chromeos-base/arc-base )
+"
+
+
+enable_esdfs() {
+	[[ -f "$1" ]] || die
+	local data=$(jq ".USE_ESDFS=true" "$1")
+	echo "${data}" > "$1" || die
+}
+
+
+src_install() {
+	# Used for both ARCVM and ARC.
+	dosbin "${OUT}"/arc-prepare-host-generated-dir
+	dosbin "${OUT}"/arc-remove-data
+	dosbin "${OUT}"/arc-remove-stale-data
+	insinto /etc/init
+	doins init/arc-prepare-host-generated-dir.conf
+	doins init/arc-remove-data.conf
+	doins init/arc-stale-directory-remover.conf
+
+	dotmpfiles tmpfiles.d/*.conf
+
+	# Some binaries are only for ARCVM
+	if use arcvm; then
+		dosbin "${OUT}"/arc-apply-per-board-config
+		dosbin "${OUT}"/arc-create-data
+		dosbin "${OUT}"/arc-handle-upgrade
+		insinto /etc/init
+		doins init/arcvm-per-board-features.conf
+		doins init/arc-create-data.conf
+		doins init/arc-handle-upgrade.conf
+		insinto /etc/dbus-1/system.d
+		doins init/dbus-1/ArcVmSetupUpstart.conf
+	fi
+
+	# Other files are only for ARC.
+	if use arcpp; then
+		dosbin "${OUT}"/arc-setup
+		insinto /etc/init
+		doins init/arc-boot-continue.conf
+		doins init/arc-lifetime.conf
+		doins init/arc-update-restorecon-last.conf
+		doins init/arcpp-post-login-services.conf
+		if use esdfs; then
+			doins init/arc-sdcard.conf
+			doins init/arc-sdcard-mount.conf
+		fi
+		doins init/arc-system-mount.conf
+		insinto /etc/dbus-1/system.d
+		doins init/dbus-1/ArcSetupUpstart.conf
+
+		insinto /usr/share/arc-setup
+		doins init/arc-setup/config.json
+
+		if use esdfs; then
+			enable_esdfs "${D}/usr/share/arc-setup/config.json"
+		fi
+
+		insinto /opt/google/containers/arc-art
+		doins "${OUT}/dev-rootfs.squashfs"
+
+		# container-root is where the root filesystem of the container in which
+		# patchoat and dex2oat runs is mounted. dev-rootfs is mount point
+		# for squashfs.
+		diropts --mode=0700 --owner=root --group=root
+		keepdir /opt/google/containers/arc-art/mountpoints/container-root
+		keepdir /opt/google/containers/arc-art/mountpoints/dev-rootfs
+		keepdir /opt/google/containers/arc-art/mountpoints/vendor
+
+		local fuzzer_component_id="488493"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_setup_util_find_all_properties_fuzzer \
+			--comp "${fuzzer_component_id}"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_setup_util_find_fingerprint_and_sdk_version_fuzzer \
+			--comp "${fuzzer_component_id}"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_property_util_expand_property_contents_fuzzer \
+			--comp "${fuzzer_component_id}"
+	fi
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/arc-setup_testrunner"
+}
diff --git a/chromeos-base/arc-setup/arc-setup-9999.ebuild b/chromeos-base/arc-setup/arc-setup-9999.ebuild
index b66958c..9c3ae35 100644
--- a/chromeos-base/arc-setup/arc-setup-9999.ebuild
+++ b/chromeos-base/arc-setup/arc-setup-9999.ebuild
@@ -13,7 +13,7 @@
 PLATFORM_NATIVE_TEST="yes"
 PLATFORM_SUBDIR="arc/setup"
 
-inherit cros-workon platform
+inherit tmpfiles cros-workon cros-unibuild platform
 
 DESCRIPTION="Set up environment to run ARC."
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/setup"
@@ -25,12 +25,10 @@
 	arcvm
 	esdfs
 	fuzzer
-	generated_cros_config
 	houdini
 	houdini64
 	iioservice
 	ndk_translation
-	unibuild
 	test"
 
 REQUIRED_USE="|| ( arcpp arcvm )"
@@ -62,10 +60,6 @@
 "
 
 DEPEND="${COMMON_DEPEND}
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
 	chromeos-base/system_api:=[fuzzer?]
 	test? ( chromeos-base/arc-base )
 "
@@ -88,6 +82,8 @@
 	doins init/arc-remove-data.conf
 	doins init/arc-stale-directory-remover.conf
 
+	dotmpfiles tmpfiles.d/*.conf
+
 	# Some binaries are only for ARCVM
 	if use arcvm; then
 		dosbin "${OUT}"/arc-apply-per-board-config
@@ -135,9 +131,13 @@
 		keepdir /opt/google/containers/arc-art/mountpoints/dev-rootfs
 		keepdir /opt/google/containers/arc-art/mountpoints/vendor
 
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_setup_util_find_all_properties_fuzzer
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_setup_util_find_fingerprint_and_sdk_version_fuzzer
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_property_util_expand_property_contents_fuzzer
+		local fuzzer_component_id="488493"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_setup_util_find_all_properties_fuzzer \
+			--comp "${fuzzer_component_id}"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_setup_util_find_fingerprint_and_sdk_version_fuzzer \
+			--comp "${fuzzer_component_id}"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/arc_property_util_expand_property_contents_fuzzer \
+			--comp "${fuzzer_component_id}"
 	fi
 }
 
diff --git a/chromeos-base/arc-sslh-init/arc-sslh-init-0.0.1-r19.ebuild b/chromeos-base/arc-sslh-init/arc-sslh-init-0.0.1-r22.ebuild
similarity index 100%
rename from chromeos-base/arc-sslh-init/arc-sslh-init-0.0.1-r19.ebuild
rename to chromeos-base/arc-sslh-init/arc-sslh-init-0.0.1-r22.ebuild
diff --git a/chromeos-base/arc-sslh-init/files/sslh-seccomp-amd64.policy b/chromeos-base/arc-sslh-init/files/sslh-seccomp-amd64.policy
index 29cf14a..01ba4b2 100644
--- a/chromeos-base/arc-sslh-init/files/sslh-seccomp-amd64.policy
+++ b/chromeos-base/arc-sslh-init/files/sslh-seccomp-amd64.policy
@@ -4,6 +4,7 @@
 
 write: 1
 select: 1
+pselect6: 1
 read: 1
 close: 1
 getpeername: 1
@@ -30,6 +31,8 @@
 rt_sigreturn: 1
 setgid: 1
 setuid: 1
+faccessat: 1
+faccessat2: 1
 access: 1
 arch_prctl: 1
 getpid: 1
@@ -45,3 +48,7 @@
 kill: 1
 lseek: 1
 fstatfs: 1
+writev: 1
+rt_sigprocmask: 1
+gettid: 1
+tgkill: 1
diff --git a/chromeos-base/arc-sslh-init/files/sslh-seccomp-arm.policy b/chromeos-base/arc-sslh-init/files/sslh-seccomp-arm.policy
index 978f5f0..787583e 100644
--- a/chromeos-base/arc-sslh-init/files/sslh-seccomp-arm.policy
+++ b/chromeos-base/arc-sslh-init/files/sslh-seccomp-arm.policy
@@ -4,6 +4,8 @@
 
 write: 1
 _newselect: 1
+pselect6: 1
+pselect6_time64: 1
 read: 1
 close: 1
 getpeername: 1
@@ -19,6 +21,8 @@
 stat64: 1
 mmap2: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
 fstat64: 1
+fstatat64: 1
+statx: 1
 mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
 rt_sigaction: 1
 brk: 1
@@ -29,6 +33,8 @@
 rt_sigreturn: 1
 setgid32: 1
 setuid32: 1
+faccessat: 1
+faccessat2: 1
 access: 1
 getpid: 1
 listen: 1
@@ -45,3 +51,8 @@
 lseek: 1
 _llseek: 1
 fstatfs64: 1
+fstatfs: 1
+writev: 1
+rt_sigprocmask: 1
+gettid: 1
+tgkill: 1
diff --git a/chromeos-base/arc-sslh-init/files/sslh-seccomp-arm64.policy b/chromeos-base/arc-sslh-init/files/sslh-seccomp-arm64.policy
index a2308475..ce36fe6 100644
--- a/chromeos-base/arc-sslh-init/files/sslh-seccomp-arm64.policy
+++ b/chromeos-base/arc-sslh-init/files/sslh-seccomp-arm64.policy
@@ -29,6 +29,7 @@
 setgid: 1
 setuid: 1
 faccessat: 1
+faccessat2: 1
 getpid: 1
 listen: 1
 setgroups: 1
@@ -42,3 +43,7 @@
 kill: 1
 lseek: 1
 fstatfs: 1
+writev: 1
+rt_sigprocmask: 1
+gettid: 1
+tgkill: 1
diff --git a/chromeos-base/arc-sslh-init/files/upstart/sslh.conf b/chromeos-base/arc-sslh-init/files/upstart/sslh.conf
index c2497d2..033f55b 100644
--- a/chromeos-base/arc-sslh-init/files/upstart/sslh.conf
+++ b/chromeos-base/arc-sslh-init/files/upstart/sslh.conf
@@ -11,7 +11,7 @@
 respawn
 expect fork
 
-exec minijail0 -i -I -p -l -r -v -w --uts \
+exec minijail0 -i -I -p -l -N -r -v -w --uts \
   -P /mnt/empty --mount-dev \
   -b /,/ -b /proc,/proc -b /dev/log,/dev/log \
   -S /usr/share/policy/sslh-seccomp.policy \
diff --git a/chromeos-base/arcvm-boot-notification-server/arcvm-boot-notification-server-0.0.1-r102.ebuild b/chromeos-base/arcvm-boot-notification-server/arcvm-boot-notification-server-0.0.1-r102.ebuild
deleted file mode 100644
index 490ed8c..0000000
--- a/chromeos-base/arcvm-boot-notification-server/arcvm-boot-notification-server-0.0.1-r102.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2020 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="95515b5e08fc2fa008e47885fda8bd443d8c5b0b"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "0c5d891fa800a59e0e40fbece73b10a84f3fde65" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/vm/boot_notification_server .gn"
-
-PLATFORM_SUBDIR="arc/vm/boot_notification_server"
-
-inherit cros-workon platform user
-
-DESCRIPTION="ARCVM boot notification server"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/boot_notification_server"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-SLOT="0/0"
-IUSE="+seccomp"
-
-src_install() {
-	newsbin "${OUT}/boot_notification_server" arcvm_boot_notification_server
-
-	insinto /etc/init
-	doins arcvm-boot-notification-server.conf
-
-	insinto /usr/share/policy
-	use seccomp && newins "arcvm_boot_notification_server-seccomp-${ARCH}.policy" arcvm_boot_notification_server-seccomp.policy
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/boot_notification_server_testrunner"
-}
-
-pkg_preinst() {
-	enewuser arcvm-boot-notification-server
-	enewgroup arcvm-boot-notification-server
-}
diff --git a/chromeos-base/arcvm-boot-notification-server/arcvm-boot-notification-server-0.0.1-r131.ebuild b/chromeos-base/arcvm-boot-notification-server/arcvm-boot-notification-server-0.0.1-r131.ebuild
new file mode 100644
index 0000000..d811ac5
--- /dev/null
+++ b/chromeos-base/arcvm-boot-notification-server/arcvm-boot-notification-server-0.0.1-r131.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2020 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "cb40b464bebda1c6fe4169ae48078e8388cfacde" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/vm/boot_notification_server .gn"
+
+PLATFORM_SUBDIR="arc/vm/boot_notification_server"
+
+inherit cros-workon platform user
+
+DESCRIPTION="ARCVM boot notification server"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/boot_notification_server"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+SLOT="0/0"
+IUSE="+seccomp"
+
+src_install() {
+	newsbin "${OUT}/boot_notification_server" arcvm_boot_notification_server
+
+	insinto /etc/init
+	doins arcvm-boot-notification-server.conf
+
+	insinto /usr/share/policy
+	use seccomp && newins "arcvm_boot_notification_server-seccomp-${ARCH}.policy" arcvm_boot_notification_server-seccomp.policy
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/boot_notification_server_testrunner"
+}
+
+pkg_preinst() {
+	enewuser arcvm-boot-notification-server
+	enewgroup arcvm-boot-notification-server
+}
diff --git a/chromeos-base/arcvm-common-scripts/arcvm-common-scripts-0.0.1-r140.ebuild b/chromeos-base/arcvm-common-scripts/arcvm-common-scripts-0.0.1-r140.ebuild
deleted file mode 100644
index abb1d17..0000000
--- a/chromeos-base/arcvm-common-scripts/arcvm-common-scripts-0.0.1-r140.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "68f4c05e6bc458438aeae9eaf6c21df9bbf74427" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/vm/scripts .gn"
-
-inherit cros-workon
-
-DESCRIPTION="ARCVM common scripts."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/scripts"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="
-	${RDEPEND}
-	!<=chromeos-base/arc-base-0.0.1-r349
-	!<=chromeos-base/arc-common-scripts-0.0.1-r132
-	chromeos-base/arcvm-mount-media-dirs
-"
-
-src_install() {
-	dosbin arc/vm/scripts/android-sh
-
-	insinto /etc/init
-	doins arc/vm/scripts/init/arcvm-fsverity-certs.conf
-	doins arc/vm/scripts/init/arcvm-host.conf
-	doins arc/vm/scripts/init/arcvm-post-login-services.conf
-	doins arc/vm/scripts/init/arcvm-post-vm-start-services.conf
-	doins arc/vm/scripts/init/arcvm-pre-login-services.conf
-	doins arc/vm/scripts/init/arcvm-ureadahead.conf
-
-	insinto /etc/dbus-1/system.d
-	doins arc/vm/scripts/init/dbus-1/ArcVmScripts.conf
-
-	insinto /usr/share/arcvm
-	doins arc/vm/scripts/init/config.json
-
-	insinto /usr/share/arcvm/fsverity-certs
-	doins arc/vm/scripts/init/certs/fsverity-release.x509.der
-	doins arc/vm/scripts/init/certs/play_store_fsi_cert.der
-
-	# Redirect ARCVM logs to arc.log.
-	insinto /etc/rsyslog.d
-	doins arc/vm/scripts/rsyslog.arc.conf
-}
diff --git a/chromeos-base/arcvm-common-scripts/arcvm-common-scripts-0.0.1-r170.ebuild b/chromeos-base/arcvm-common-scripts/arcvm-common-scripts-0.0.1-r170.ebuild
new file mode 100644
index 0000000..c8c19ae
--- /dev/null
+++ b/chromeos-base/arcvm-common-scripts/arcvm-common-scripts-0.0.1-r170.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "ed9e63bcf54c862d625a1306658dc5fdeffd637e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/vm/scripts .gn"
+
+inherit cros-workon
+
+DESCRIPTION="ARCVM common scripts."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/scripts"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="
+	${RDEPEND}
+	!<=chromeos-base/arc-base-0.0.1-r349
+	!<=chromeos-base/arc-common-scripts-0.0.1-r132
+	chromeos-base/arcvm-mount-media-dirs
+"
+
+src_install() {
+	dosbin arc/vm/scripts/android-sh
+
+	insinto /etc/init
+	doins arc/vm/scripts/init/arcvm-fsverity-certs.conf
+	doins arc/vm/scripts/init/arcvm-host.conf
+	doins arc/vm/scripts/init/arcvm-post-login-services.conf
+	doins arc/vm/scripts/init/arcvm-post-vm-start-services.conf
+	doins arc/vm/scripts/init/arcvm-pre-login-services.conf
+	doins arc/vm/scripts/init/arcvm-ureadahead.conf
+
+	insinto /etc/dbus-1/system.d
+	doins arc/vm/scripts/init/dbus-1/ArcVmScripts.conf
+
+	insinto /usr/share/arcvm
+	doins arc/vm/scripts/init/config.json
+
+	insinto /usr/share/arcvm/fsverity-certs
+	doins arc/vm/scripts/init/certs/fsverity-release.x509.der
+	doins arc/vm/scripts/init/certs/play_store_fsi_cert.der
+
+	# Redirect ARCVM logs to arc.log.
+	insinto /etc/rsyslog.d
+	doins arc/vm/scripts/rsyslog.arc.conf
+}
diff --git a/chromeos-base/arcvm-forward-pstore/arcvm-forward-pstore-0.0.1-r175.ebuild b/chromeos-base/arcvm-forward-pstore/arcvm-forward-pstore-0.0.1-r175.ebuild
deleted file mode 100644
index 2bc64ea..0000000
--- a/chromeos-base/arcvm-forward-pstore/arcvm-forward-pstore-0.0.1-r175.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 2020 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "7743fe686ef9bd5ed2f18d1eb6cf820611970167" "7ef75a42aba67052842459f221271e681184cc89" "c1bde153626532428bf7409bc0597e79452c5eb8")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-
-PLATFORM2_PATHS=(
-	common-mk
-	.gn
-
-	arc/vm/forward-pstore
-
-	vm_tools/BUILD.gn
-	vm_tools/common
-)
-CROS_WORKON_SUBTREE="${PLATFORM2_PATHS[*]}"
-
-PLATFORM_SUBDIR="arc/vm/forward-pstore"
-
-inherit cros-workon platform
-
-DESCRIPTION="Forwards pstore file for ARCVM after upgrade."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/arc/vm/forward-pstore"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-SLOT="0/0"
-IUSE="+seccomp"
-
-RDEPEND="
-	dev-libs/protobuf:=
-"
-DEPEND="
-	${RDEPEND}
-	chromeos-base/system_api:=
-	chromeos-base/vm_protos:=
-"
-
-src_install() {
-	newsbin "${OUT}/arcvm-forward-pstore" arcvm-forward-pstore
-
-	insinto /etc/init
-	doins arcvm-forward-pstore.conf
-
-	# Install DBUS configuration file.
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.ArcVmForwardPstore.conf
-
-	# Install seccomp policy
-	insinto /usr/share/policy
-	use seccomp && newins "seccomp-${ARCH}.policy" arcvm-forward-pstore-seccomp.policy
-}
diff --git a/chromeos-base/arcvm-forward-pstore/arcvm-forward-pstore-0.0.1-r204.ebuild b/chromeos-base/arcvm-forward-pstore/arcvm-forward-pstore-0.0.1-r204.ebuild
new file mode 100644
index 0000000..f124d8f
--- /dev/null
+++ b/chromeos-base/arcvm-forward-pstore/arcvm-forward-pstore-0.0.1-r204.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2020 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "b4fab968c859994b8684a18449d80d4279f6c706" "7ef75a42aba67052842459f221271e681184cc89" "c1bde153626532428bf7409bc0597e79452c5eb8")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+
+PLATFORM2_PATHS=(
+	common-mk
+	.gn
+
+	arc/vm/forward-pstore
+
+	vm_tools/BUILD.gn
+	vm_tools/common
+)
+CROS_WORKON_SUBTREE="${PLATFORM2_PATHS[*]}"
+
+PLATFORM_SUBDIR="arc/vm/forward-pstore"
+
+inherit cros-workon platform
+
+DESCRIPTION="Forwards pstore file for ARCVM after upgrade."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/arc/vm/forward-pstore"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+SLOT="0/0"
+IUSE="+seccomp"
+
+RDEPEND="
+	dev-libs/protobuf:=
+"
+DEPEND="
+	${RDEPEND}
+	chromeos-base/system_api:=
+	chromeos-base/vm_protos:=
+"
+
+src_install() {
+	newsbin "${OUT}/arcvm-forward-pstore" arcvm-forward-pstore
+
+	insinto /etc/init
+	doins arcvm-forward-pstore.conf
+
+	# Install DBUS configuration file.
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.ArcVmForwardPstore.conf
+
+	# Install seccomp policy
+	insinto /usr/share/policy
+	use seccomp && newins "seccomp-${ARCH}.policy" arcvm-forward-pstore-seccomp.policy
+}
diff --git a/chromeos-base/arcvm-mojo-proxy/arcvm-mojo-proxy-0.0.1-r34.ebuild b/chromeos-base/arcvm-mojo-proxy/arcvm-mojo-proxy-0.0.1-r34.ebuild
deleted file mode 100644
index 03976f3..0000000
--- a/chromeos-base/arcvm-mojo-proxy/arcvm-mojo-proxy-0.0.1-r34.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e23cacccf4a8be891ad29fabf2c717600327a772" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/vm/mojo_proxy .gn"
-
-PLATFORM_SUBDIR="arc/vm/mojo_proxy"
-
-inherit cros-workon platform
-
-DESCRIPTION="ARCVM mojo proxy."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/mojo_proxy"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-# This package was renamed from  arcvm-vsock-proxy. Put a blocker to uninstall
-# the old package.
-# TODO(hashimoto): Remove this blocker later.
-RDEPEND="
-	!chromeos-base/arcvm-vsock-proxy
-
-	dev-libs/protobuf:=
-	sys-fs/fuse
-"
-
-DEPEND="
-	${RDEPEND}
-"
-
-src_install() {
-	newbin "${OUT}"/server_proxy arcvm_server_proxy
-
-	insinto /etc/init
-	doins init/arcvm-server-proxy.conf
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/mojo_proxy_test"
-}
diff --git a/chromeos-base/arcvm-mojo-proxy/arcvm-mojo-proxy-0.0.1-r62.ebuild b/chromeos-base/arcvm-mojo-proxy/arcvm-mojo-proxy-0.0.1-r62.ebuild
new file mode 100644
index 0000000..b869045
--- /dev/null
+++ b/chromeos-base/arcvm-mojo-proxy/arcvm-mojo-proxy-0.0.1-r62.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "f1a3e4ff4103d5e0d2dd4c9f705a5c3cc14fd97a" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/vm/mojo_proxy .gn"
+
+PLATFORM_SUBDIR="arc/vm/mojo_proxy"
+
+inherit cros-workon platform
+
+DESCRIPTION="ARCVM mojo proxy."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/mojo_proxy"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="
+	dev-libs/protobuf:=
+	sys-fs/fuse
+"
+
+DEPEND="
+	${RDEPEND}
+"
+
+src_install() {
+	newbin "${OUT}"/server_proxy arcvm_server_proxy
+
+	insinto /etc/init
+	doins init/arcvm-server-proxy.conf
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/mojo_proxy_test"
+}
diff --git a/chromeos-base/arcvm-mojo-proxy/arcvm-mojo-proxy-9999.ebuild b/chromeos-base/arcvm-mojo-proxy/arcvm-mojo-proxy-9999.ebuild
index a86099f..e032301 100644
--- a/chromeos-base/arcvm-mojo-proxy/arcvm-mojo-proxy-9999.ebuild
+++ b/chromeos-base/arcvm-mojo-proxy/arcvm-mojo-proxy-9999.ebuild
@@ -19,12 +19,7 @@
 LICENSE="BSD-Google"
 KEYWORDS="~*"
 
-# This package was renamed from  arcvm-vsock-proxy. Put a blocker to uninstall
-# the old package.
-# TODO(hashimoto): Remove this blocker later.
 RDEPEND="
-	!chromeos-base/arcvm-vsock-proxy
-
 	dev-libs/protobuf:=
 	sys-fs/fuse
 "
diff --git a/chromeos-base/arcvm-mount-media-dirs/arcvm-mount-media-dirs-0.0.1-r70.ebuild b/chromeos-base/arcvm-mount-media-dirs/arcvm-mount-media-dirs-0.0.1-r70.ebuild
deleted file mode 100644
index cfb8269..0000000
--- a/chromeos-base/arcvm-mount-media-dirs/arcvm-mount-media-dirs-0.0.1-r70.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "954e934fa76d67253d978d97346b24a1fce9be2c" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/vm/scripts/init/mount-media-dirs .gn"
-
-inherit cros-workon
-
-DESCRIPTION="Mount media directories on a mount point shared with ARCVM."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/scripts/init/mount-media-dirs"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="
-	chromeos-base/mount-passthrough
-"
-
-src_install() {
-	insinto /etc/init
-	doins arc/vm/scripts/init/mount-media-dirs/arcvm-mount-myfiles.conf
-	doins arc/vm/scripts/init/mount-media-dirs/arcvm-mount-play-files.conf
-	doins arc/vm/scripts/init/mount-media-dirs/arcvm-mount-removable-media.conf
-	doins arc/vm/scripts/init/mount-media-dirs/arcvm-mount-sdcard-dir.conf
-}
diff --git a/chromeos-base/arcvm-mount-media-dirs/arcvm-mount-media-dirs-0.0.1-r95.ebuild b/chromeos-base/arcvm-mount-media-dirs/arcvm-mount-media-dirs-0.0.1-r95.ebuild
new file mode 100644
index 0000000..db97f47
--- /dev/null
+++ b/chromeos-base/arcvm-mount-media-dirs/arcvm-mount-media-dirs-0.0.1-r95.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "954e934fa76d67253d978d97346b24a1fce9be2c" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/vm/scripts/init/mount-media-dirs .gn"
+
+inherit cros-workon
+
+DESCRIPTION="Mount media directories on a mount point shared with ARCVM."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/scripts/init/mount-media-dirs"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="
+	chromeos-base/mount-passthrough
+"
+
+src_install() {
+	insinto /etc/init
+	doins arc/vm/scripts/init/mount-media-dirs/arcvm-mount-myfiles.conf
+	doins arc/vm/scripts/init/mount-media-dirs/arcvm-mount-play-files.conf
+	doins arc/vm/scripts/init/mount-media-dirs/arcvm-mount-removable-media.conf
+	doins arc/vm/scripts/init/mount-media-dirs/arcvm-mount-sdcard-dir.conf
+}
diff --git a/chromeos-base/atrusctl/atrusctl-0.0.1-r973.ebuild b/chromeos-base/atrusctl/atrusctl-0.0.1-r973.ebuild
deleted file mode 100644
index 5a90fcd..0000000
--- a/chromeos-base/atrusctl/atrusctl-0.0.1-r973.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("e3e4d3ec57ebaf15c52d430687a3c5263bb0b23e" "77a0ad988406a971fc45b4e66befc240fbf0d48a")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "90cfa2a210ebed49a8ce050686db523ef372c62c")
-CROS_WORKON_LOCALNAME=("platform2" "third_party/atrusctl")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "chromiumos/third_party/atrusctl")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/atrusctl")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
-
-PLATFORM_SUBDIR="atrusctl"
-
-inherit cros-workon platform udev user
-
-DESCRIPTION="CrOS daemon for the Atrus speakerphone"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/atrusctl/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-DEPEND="
-	virtual/libusb:1
-	virtual/libudev:0=
-"
-RDEPEND="
-	${DEPEND}
-	!sys-apps/atrusctl
-"
-
-src_install() {
-	dosbin "${OUT}/atrusd"
-
-	insinto /etc/rsyslog.d
-	newins conf/rsyslog-atrus.conf atrus.conf
-
-	udev_newrules conf/udev-atrus.rules 99-atrus.rules
-
-	insinto /etc/init
-	doins init/atrusd.conf
-
-	insinto /etc/dbus-1/system.d
-	doins dbus_permissions/org.chromium.Atrusctl.conf
-}
-
-pkg_preinst() {
-	enewuser atrus
-	enewgroup atrus
-}
diff --git a/chromeos-base/atrusctl/atrusctl-0.0.1-r999.ebuild b/chromeos-base/atrusctl/atrusctl-0.0.1-r999.ebuild
new file mode 100644
index 0000000..a72eb2d
--- /dev/null
+++ b/chromeos-base/atrusctl/atrusctl-0.0.1-r999.ebuild
@@ -0,0 +1,51 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "24930066fb77f8af643b40059de08c6b51eb7039")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "3217b3c0f1cdbcfb2cbe6d195c04b3753392783f")
+CROS_WORKON_LOCALNAME=("platform2" "third_party/atrusctl")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "chromiumos/third_party/atrusctl")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/atrusctl")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE=("common-mk .gn" "")
+
+PLATFORM_SUBDIR="atrusctl"
+
+inherit cros-workon platform udev user
+
+DESCRIPTION="CrOS daemon for the Atrus speakerphone"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/atrusctl/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+DEPEND="
+	virtual/libusb:1
+	virtual/libudev:0=
+"
+RDEPEND="
+	${DEPEND}
+	!sys-apps/atrusctl
+"
+
+src_install() {
+	dosbin "${OUT}/atrusd"
+
+	insinto /etc/rsyslog.d
+	newins conf/rsyslog-atrus.conf atrus.conf
+
+	udev_newrules conf/udev-atrus.rules 99-atrus.rules
+
+	insinto /etc/init
+	doins init/atrusd.conf
+
+	insinto /etc/dbus-1/system.d
+	doins dbus_permissions/org.chromium.Atrusctl.conf
+}
+
+pkg_preinst() {
+	enewuser atrus
+	enewgroup atrus
+}
diff --git a/chromeos-base/attestation-client/attestation-client-0.0.1-r318.ebuild b/chromeos-base/attestation-client/attestation-client-0.0.1-r318.ebuild
deleted file mode 100644
index 21d7008..0000000
--- a/chromeos-base/attestation-client/attestation-client-0.0.1-r318.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "8a6aa0783afea740fe52cec225aef91187cbcde6" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk attestation .gn"
-
-PLATFORM_SUBDIR="attestation/client"
-
-inherit cros-workon platform
-
-DESCRIPTION="Attestation D-Bus client library for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/attestation/client/"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="cros_host"
-
-# D-Bus proxies generated by this client library depend on the code generator
-# itself (chromeos-dbus-bindings) and produce header files that rely on
-# libbrillo library, hence both dependencies. We require the particular
-# revision because libbrillo-0.0.1-r1 changed location of header files from
-# chromeos/ to brillo/ and chromeos-dbus-bindings-0.0.1-r1058 generates the
-# code using the new location.
-DEPEND="
-	cros_host? ( >=chromeos-base/chromeos-dbus-bindings-0.0.1-r1058 )
-	chromeos-base/libbrillo:=
-"
-
-# Note that for RDEPEND, we conflict with attestation package older than
-# 0.0.1 because this client is incompatible with daemon older than version
-# 0.0.1. We didn't RDEPEND on attestation version 0.0.1 or greater because
-# we don't want to create circular dependency in case the package attestation
-# depends on some package foo that also depend on this package.
-RDEPEND="
-	!<chromeos-base/attestation-0.0.1
-	chromeos-base/libbrillo:=
-"
-
-src_install() {
-	# Install D-Bus client library.
-	platform_install_dbus_client_lib "attestation"
-}
diff --git a/chromeos-base/attestation-client/attestation-client-0.0.1-r365.ebuild b/chromeos-base/attestation-client/attestation-client-0.0.1-r365.ebuild
new file mode 100644
index 0000000..c1a2899
--- /dev/null
+++ b/chromeos-base/attestation-client/attestation-client-0.0.1-r365.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "0eb41e5da113495ed84a62fb776c5190764cc83d" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk attestation .gn"
+
+PLATFORM_SUBDIR="attestation/client"
+
+inherit cros-workon platform
+
+DESCRIPTION="Attestation D-Bus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/attestation/client/"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="cros_host"
+
+# D-Bus proxies generated by this client library depend on the code generator
+# itself (chromeos-dbus-bindings) and produce header files that rely on
+# libbrillo library, hence both dependencies. We require the particular
+# revision because libbrillo-0.0.1-r1 changed location of header files from
+# chromeos/ to brillo/ and chromeos-dbus-bindings-0.0.1-r1058 generates the
+# code using the new location.
+DEPEND="
+	cros_host? ( >=chromeos-base/chromeos-dbus-bindings-0.0.1-r1058 )
+	chromeos-base/libbrillo:=
+"
+
+# Note that for RDEPEND, we conflict with attestation package older than
+# 0.0.1 because this client is incompatible with daemon older than version
+# 0.0.1. We didn't RDEPEND on attestation version 0.0.1 or greater because
+# we don't want to create circular dependency in case the package attestation
+# depends on some package foo that also depend on this package.
+RDEPEND="
+	!<chromeos-base/attestation-0.0.1
+	chromeos-base/libbrillo:=
+"
+
+src_install() {
+	# Install D-Bus client library.
+	platform_install_dbus_client_lib "attestation"
+}
diff --git a/chromeos-base/attestation/attestation-0.0.1-r3188.ebuild b/chromeos-base/attestation/attestation-0.0.1-r3188.ebuild
deleted file mode 100644
index e2ce139..0000000
--- a/chromeos-base/attestation/attestation-0.0.1-r3188.ebuild
+++ /dev/null
@@ -1,107 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="d27dfb81bc87df4db16849f5da1b96f1cf5cd10b"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "8a6aa0783afea740fe52cec225aef91187cbcde6" "8640df3a4aff4084b644aeefc4d31752a1d97665" "81dfbbc1756a3b4224b447e7bf10a916d97c4f66" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6" "a06a3f47395fb7b584188c6852764bc773e5497e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk attestation chaps libhwsec metrics tpm_manager trunks .gn"
-
-PLATFORM_SUBDIR="attestation"
-
-inherit cros-workon libchrome platform user
-
-DESCRIPTION="Attestation service for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/attestation/"
-
-LICENSE="Apache-2.0"
-KEYWORDS="*"
-IUSE="generic_tpm2 test tpm tpm2"
-
-REQUIRED_USE="tpm2? ( !tpm )"
-
-RDEPEND="
-	tpm? (
-		app-crypt/trousers:=
-	)
-	tpm2? (
-		chromeos-base/trunks:=
-	)
-	chromeos-base/chaps:=
-	chromeos-base/system_api:=[fuzzer?]
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/minijail:=
-	chromeos-base/tpm_manager:=
-	chromeos-base/attestation-client
-	"
-
-DEPEND="
-	${RDEPEND}
-	test? ( chromeos-base/libhwsec:= )
-	chromeos-base/vboot_reference:=
-	tpm2? (
-		chromeos-base/trunks:=[test?]
-		chromeos-base/chromeos-ec-headers:=
-	)
-	"
-
-pkg_preinst() {
-	# Create user and group for attestation.
-	enewuser "attestation"
-	enewgroup "attestation"
-	# Create group for /mnt/stateful_partition/unencrypted/preserve.
-	enewgroup "preserve"
-}
-
-src_install() {
-	insinto /etc/dbus-1/system.d
-	doins server/org.chromium.Attestation.conf
-
-	insinto /etc/init
-	doins server/attestationd.conf
-
-	dosbin "${OUT}"/attestationd
-	dobin "${OUT}"/attestation_client
-
-	insinto /usr/share/policy
-	newins server/attestationd-seccomp-${ARCH}.policy attestationd-seccomp.policy
-
-	insinto /etc/dbus-1/system.d
-	doins pca_agent/server/org.chromium.PcaAgent.conf
-	insinto /etc/init
-	doins pca_agent/server/pca_agentd.conf
-	dosbin "${OUT}"/pca_agentd
-	dobin "${OUT}"/pca_agent_client
-
-	dolib.so "${OUT}"/lib/libattestation.so
-
-	insinto /usr/include/attestation/common
-	doins common/attestation_interface.h
-	doins common/print_attestation_ca_proto.h
-	doins common/print_interface_proto.h
-	doins common/print_keystore_proto.h
-
-	# Install the generated dbus-binding for fake pca agent.
-	# It does no harm to install the header even for non-test image build.
-	insinto /usr/include/attestation/pca-agent/dbus_adaptors
-	doins "${OUT}"/gen/include/attestation/pca-agent/dbus_adaptors/org.chromium.PcaAgent.h
-
-	insinto /usr/share/policy
-	newins "pca_agent/server/pca_agentd-seccomp-${ARCH}.policy" pca_agentd-seccomp.policy
-}
-
-platform_pkg_test() {
-	local tests=(
-		attestation_testrunner
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/attestation/attestation-0.0.1-r3306.ebuild b/chromeos-base/attestation/attestation-0.0.1-r3306.ebuild
new file mode 100644
index 0000000..51e28996
--- /dev/null
+++ b/chromeos-base/attestation/attestation-0.0.1-r3306.ebuild
@@ -0,0 +1,111 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="7e56fbcc6f3c9e9ba98bf43a52940100e5fbc918"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "0eb41e5da113495ed84a62fb776c5190764cc83d" "113dbae63eb106c56996900e98cd65103bf297dc" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "1e9ca239fab09ba22b58e4a22d63e2ede865b159" "e08a2eb734e33827dffeecf57eca046cd1091373" "659b97d9c804b358f4bd27925620d4dd1cee8fc7" "d8da1275feb26afab354f35df7316b3840f8330b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk attestation chaps libhwsec libhwsec-foundation metrics tpm_manager trunks .gn"
+
+PLATFORM_SUBDIR="attestation"
+
+inherit cros-workon libchrome platform user
+
+DESCRIPTION="Attestation service for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/attestation/"
+
+LICENSE="Apache-2.0"
+KEYWORDS="*"
+IUSE="generic_tpm2 test tpm tpm_dynamic tpm2"
+
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
+
+RDEPEND="
+	tpm? (
+		app-crypt/trousers:=
+	)
+	tpm2? (
+		chromeos-base/trunks:=
+	)
+	chromeos-base/chaps:=
+	chromeos-base/libhwsec-foundation:=
+	chromeos-base/system_api:=[fuzzer?]
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/minijail:=
+	chromeos-base/tpm_manager:=
+	chromeos-base/attestation-client
+	"
+
+DEPEND="
+	${RDEPEND}
+	test? ( chromeos-base/libhwsec:= )
+	chromeos-base/vboot_reference:=
+	tpm2? (
+		chromeos-base/trunks:=[test?]
+		chromeos-base/chromeos-ec-headers:=
+	)
+	"
+
+pkg_preinst() {
+	# Create user and group for attestation.
+	enewuser "attestation"
+	enewgroup "attestation"
+	# Create group for /mnt/stateful_partition/unencrypted/preserve.
+	enewgroup "preserve"
+}
+
+src_install() {
+	insinto /etc/dbus-1/system.d
+	doins server/org.chromium.Attestation.conf
+
+	insinto /etc/init
+	doins server/attestationd.conf
+
+	dosbin "${OUT}"/attestationd
+	dobin "${OUT}"/attestation_client
+
+	insinto /usr/share/policy
+	newins server/attestationd-seccomp-${ARCH}.policy attestationd-seccomp.policy
+
+	insinto /etc/dbus-1/system.d
+	doins pca_agent/server/org.chromium.PcaAgent.conf
+	insinto /etc/init
+	doins pca_agent/server/pca_agentd.conf
+	dosbin "${OUT}"/pca_agentd
+	dobin "${OUT}"/pca_agent_client
+
+	dolib.so "${OUT}"/lib/libattestation.so
+
+	insinto /usr/include/attestation/common
+	doins common/attestation_interface.h
+	doins common/print_attestation_ca_proto.h
+	doins common/print_interface_proto.h
+	doins common/print_keystore_proto.h
+
+	# Install the generated dbus-binding for fake pca agent.
+	# It does no harm to install the header even for non-test image build.
+	insinto /usr/include/attestation/pca-agent/dbus_adaptors
+	doins "${OUT}"/gen/include/attestation/pca-agent/dbus_adaptors/org.chromium.PcaAgent.h
+
+	insinto /usr/share/policy
+	newins "pca_agent/server/pca_agentd-seccomp-${ARCH}.policy" pca_agentd-seccomp.policy
+}
+
+platform_pkg_test() {
+	local tests=(
+		attestation_testrunner
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/attestation/attestation-9999.ebuild b/chromeos-base/attestation/attestation-9999.ebuild
index f6c538d..72c48bf 100644
--- a/chromeos-base/attestation/attestation-9999.ebuild
+++ b/chromeos-base/attestation/attestation-9999.ebuild
@@ -8,7 +8,7 @@
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_OUTOFTREE_BUILD=1
 # TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk attestation chaps libhwsec metrics tpm_manager trunks .gn"
+CROS_WORKON_SUBTREE="common-mk attestation chaps libhwsec libhwsec-foundation metrics tpm_manager trunks .gn"
 
 PLATFORM_SUBDIR="attestation"
 
@@ -19,9 +19,12 @@
 
 LICENSE="Apache-2.0"
 KEYWORDS="~*"
-IUSE="generic_tpm2 test tpm tpm2"
+IUSE="generic_tpm2 test tpm tpm_dynamic tpm2"
 
-REQUIRED_USE="tpm2? ( !tpm )"
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
 
 RDEPEND="
 	tpm? (
@@ -31,6 +34,7 @@
 		chromeos-base/trunks:=
 	)
 	chromeos-base/chaps:=
+	chromeos-base/libhwsec-foundation:=
 	chromeos-base/system_api:=[fuzzer?]
 	>=chromeos-base/metrics-0.0.1-r3152:=
 	chromeos-base/minijail:=
diff --git a/chromeos-base/audiotest/audiotest-0.0.1-r93.ebuild b/chromeos-base/audiotest/audiotest-0.0.1-r93.ebuild
deleted file mode 100644
index 5791e91..0000000
--- a/chromeos-base/audiotest/audiotest-0.0.1-r93.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-CROS_WORKON_COMMIT="edd4bdfaf196016350c0def3fa2e6eabc502339d"
-CROS_WORKON_TREE="e51a0909385bb2619e4b4e099e8a7e3dcd5e629c"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_PROJECT="chromiumos/platform/audiotest"
-CROS_WORKON_LOCALNAME="platform/audiotest"
-
-inherit cros-sanitizers cros-workon cros-common.mk
-
-DESCRIPTION="Audio test tools"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/audiotest"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="-asan"
-
-RDEPEND="media-libs/alsa-lib
-	media-sound/adhd"
-DEPEND="${RDEPEND}"
-
-src_configure() {
-	sanitizers-setup-env
-	cros-common.mk_src_configure
-}
-
-src_install() {
-	# Install built tools
-	pushd "${OUT}" >/dev/null
-	dobin src/alsa_api_test
-	dobin alsa_conformance_test/alsa_conformance_test
-	dobin src/alsa_helpers
-	dobin src/audiofuntest
-	dobin src/cras_api_test
-	dobin src/loopback_latency
-	dobin script/alsa_conformance_test.py
-	popd >/dev/null
-}
diff --git a/chromeos-base/audiotest/audiotest-0.0.1-r96.ebuild b/chromeos-base/audiotest/audiotest-0.0.1-r96.ebuild
new file mode 100644
index 0000000..de8e6c6
--- /dev/null
+++ b/chromeos-base/audiotest/audiotest-0.0.1-r96.ebuild
@@ -0,0 +1,42 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+CROS_WORKON_COMMIT="3573db7b05c9cc9ba9ac28a84fc50878cc6f50eb"
+CROS_WORKON_TREE="3c34b1c606c64edf394205492d939b0d82fd4db8"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_PROJECT="chromiumos/platform/audiotest"
+CROS_WORKON_LOCALNAME="platform/audiotest"
+
+inherit cros-sanitizers cros-workon cros-common.mk
+
+DESCRIPTION="Audio test tools"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/audiotest"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="-asan"
+
+RDEPEND="media-libs/alsa-lib
+	media-sound/adhd"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+	sanitizers-setup-env
+	cros-common.mk_src_configure
+}
+
+src_install() {
+	# Install built tools
+	pushd "${OUT}" >/dev/null
+	dobin src/alsa_api_test
+	dobin alsa_conformance_test/alsa_conformance_test
+	dobin src/alsa_helpers
+	dobin src/audiofuntest
+	dobin src/cras_api_test
+	dobin src/loopback_latency
+	dobin script/alsa_conformance_test.py
+	popd >/dev/null
+}
diff --git a/chromeos-base/authpolicy/authpolicy-0.0.1-r1646.ebuild b/chromeos-base/authpolicy/authpolicy-0.0.1-r1646.ebuild
deleted file mode 100644
index fd9ac3b..0000000
--- a/chromeos-base/authpolicy/authpolicy-0.0.1-r1646.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="0553127ef2b660a5c71f12a9417ed4ad35f07120"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "8e29f11c718c4a832c570433a5cf1e5382d6576f" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk authpolicy metrics .gn"
-
-PLATFORM_SUBDIR="authpolicy"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Provides authentication to LDAP and fetching device/user policies"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/authpolicy/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="+samba asan fuzzer"
-
-COMMMON_DEPEND="
-	app-crypt/mit-krb5:=
-	chromeos-base/libbrillo:=[asan?,fuzzer?]
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	>=chromeos-base/minijail-0.0.1-r1477:=
-	dev-libs/protobuf:=
-	samba? ( >=net-fs/samba-4.5.3-r6:= )
-	sys-apps/dbus:=
-	sys-libs/libcap:=
-"
-RDEPEND="${COMMMON_DEPEND}"
-DEPEND="
-	${COMMMON_DEPEND}
-	>=chromeos-base/protofiles-0.0.45:=
-	chromeos-base/session_manager-client:=
-	chromeos-base/system_api:=[fuzzer?]
-"
-
-pkg_setup() {
-	# Has to be done in pkg_setup() instead of pkg_preinst() since
-	# src_install() needs authpolicyd.
-	enewuser "authpolicyd"
-	enewgroup "authpolicyd"
-	enewuser "authpolicyd-exec"
-	enewgroup "authpolicyd-exec"
-	cros-workon_pkg_setup
-}
-
-src_install() {
-	dosbin "${OUT}"/authpolicyd
-	dosbin "${OUT}"/authpolicy_parser
-	insinto /etc/dbus-1/system.d
-	doins etc/dbus-1/org.chromium.AuthPolicy.conf
-	insinto /etc/init
-	doins etc/init/authpolicyd.conf
-	insinto /usr/share/policy
-	doins seccomp_filters/*.policy
-	insinto /usr/share/cros/startup/process_management_policies
-	doins setuid_restrictions/authpolicyd_whitelist.txt
-
-	# Create daemon store folder prototype, see
-	# https://chromium.googlesource.com/chromiumos/docs/+/master/sandboxing.md#securely-mounting-cryptohome-daemon-store-folders
-	local daemon_store="/etc/daemon-store/authpolicyd"
-	dodir "${daemon_store}"
-	fperms 0700 "${daemon_store}"
-	fowners authpolicyd:authpolicyd "${daemon_store}"
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/preg_parser_fuzzer \
-		--dict "${S}"/policy/testdata/preg_parser_fuzzer.dict
-}
-
-platform_pkg_test() {
-	local tests=(
-		authpolicy_test
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-
-	platform_fuzzer_test "${OUT}"/preg_parser_fuzzer
-}
diff --git a/chromeos-base/authpolicy/authpolicy-0.0.1-r1700.ebuild b/chromeos-base/authpolicy/authpolicy-0.0.1-r1700.ebuild
new file mode 100644
index 0000000..ff10276
--- /dev/null
+++ b/chromeos-base/authpolicy/authpolicy-0.0.1-r1700.ebuild
@@ -0,0 +1,91 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="c7de58509c6837dc0241aa92c6a32dbf4cc55161"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "0bf1226a413aea19f7ebc0f2957a40f2852662a6" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk authpolicy metrics .gn"
+
+PLATFORM_SUBDIR="authpolicy"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Provides authentication to LDAP and fetching device/user policies"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/authpolicy/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="+samba asan fuzzer"
+
+COMMMON_DEPEND="
+	app-crypt/mit-krb5:=
+	chromeos-base/cryptohome-client:=
+	chromeos-base/libbrillo:=[asan?,fuzzer?]
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	>=chromeos-base/minijail-0.0.1-r1477:=
+	dev-libs/protobuf:=
+	samba? ( >=net-fs/samba-4.5.3-r6:= )
+	sys-apps/dbus:=
+	sys-libs/libcap:=
+"
+RDEPEND="${COMMMON_DEPEND}"
+DEPEND="
+	${COMMMON_DEPEND}
+	>=chromeos-base/protofiles-0.0.48:=
+	chromeos-base/session_manager-client:=
+	chromeos-base/system_api:=[fuzzer?]
+"
+
+pkg_setup() {
+	# Has to be done in pkg_setup() instead of pkg_preinst() since
+	# src_install() needs authpolicyd.
+	enewuser "authpolicyd"
+	enewgroup "authpolicyd"
+	enewuser "authpolicyd-exec"
+	enewgroup "authpolicyd-exec"
+	cros-workon_pkg_setup
+}
+
+src_install() {
+	dosbin "${OUT}"/authpolicyd
+	dosbin "${OUT}"/authpolicy_parser
+	insinto /etc/dbus-1/system.d
+	doins etc/dbus-1/org.chromium.AuthPolicy.conf
+	insinto /etc/init
+	doins etc/init/authpolicyd.conf
+	insinto /usr/share/policy
+	doins seccomp_filters/*.policy
+	insinto /usr/share/cros/startup/process_management_policies
+	doins setuid_restrictions/authpolicyd_uid_allowlist.txt
+
+	# Create daemon store folder prototype, see
+	# https://chromium.googlesource.com/chromiumos/docs/+/master/sandboxing.md#securely-mounting-cryptohome-daemon-store-folders
+	local daemon_store="/etc/daemon-store/authpolicyd"
+	dodir "${daemon_store}"
+	fperms 0700 "${daemon_store}"
+	fowners authpolicyd:authpolicyd "${daemon_store}"
+
+	# fuzzer_component_id is unknown/unlisted
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/preg_parser_fuzzer \
+		--dict "${S}"/policy/testdata/preg_parser_fuzzer.dict
+}
+
+platform_pkg_test() {
+	local tests=(
+		authpolicy_test
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+
+	platform_fuzzer_test "${OUT}"/preg_parser_fuzzer
+}
diff --git a/chromeos-base/authpolicy/authpolicy-9999.ebuild b/chromeos-base/authpolicy/authpolicy-9999.ebuild
index 076483d..3b36adc 100644
--- a/chromeos-base/authpolicy/authpolicy-9999.ebuild
+++ b/chromeos-base/authpolicy/authpolicy-9999.ebuild
@@ -24,6 +24,7 @@
 
 COMMMON_DEPEND="
 	app-crypt/mit-krb5:=
+	chromeos-base/cryptohome-client:=
 	chromeos-base/libbrillo:=[asan?,fuzzer?]
 	>=chromeos-base/metrics-0.0.1-r3152:=
 	>=chromeos-base/minijail-0.0.1-r1477:=
@@ -35,7 +36,7 @@
 RDEPEND="${COMMMON_DEPEND}"
 DEPEND="
 	${COMMMON_DEPEND}
-	>=chromeos-base/protofiles-0.0.45:=
+	>=chromeos-base/protofiles-0.0.48:=
 	chromeos-base/session_manager-client:=
 	chromeos-base/system_api:=[fuzzer?]
 "
@@ -60,7 +61,7 @@
 	insinto /usr/share/policy
 	doins seccomp_filters/*.policy
 	insinto /usr/share/cros/startup/process_management_policies
-	doins setuid_restrictions/authpolicyd_whitelist.txt
+	doins setuid_restrictions/authpolicyd_uid_allowlist.txt
 
 	# Create daemon store folder prototype, see
 	# https://chromium.googlesource.com/chromiumos/docs/+/master/sandboxing.md#securely-mounting-cryptohome-daemon-store-folders
@@ -69,6 +70,7 @@
 	fperms 0700 "${daemon_store}"
 	fowners authpolicyd:authpolicyd "${daemon_store}"
 
+	# fuzzer_component_id is unknown/unlisted
 	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/preg_parser_fuzzer \
 		--dict "${S}"/policy/testdata/preg_parser_fuzzer.dict
 }
diff --git a/chromeos-base/autotest-all/autotest-all-0.0.1-r53.ebuild b/chromeos-base/autotest-all/autotest-all-0.0.1-r55.ebuild
similarity index 100%
rename from chromeos-base/autotest-all/autotest-all-0.0.1-r53.ebuild
rename to chromeos-base/autotest-all/autotest-all-0.0.1-r55.ebuild
diff --git a/chromeos-base/autotest-chrome/autotest-chrome-0.0.1-r7821.ebuild b/chromeos-base/autotest-chrome/autotest-chrome-0.0.1-r7821.ebuild
deleted file mode 100644
index f85b828..0000000
--- a/chromeos-base/autotest-chrome/autotest-chrome-0.0.1-r7821.ebuild
+++ /dev/null
@@ -1,270 +0,0 @@
-# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="17d46ec5c4ae09655632d7486cd6d835cc822125"
-CROS_WORKON_TREE="6973c3a9a86e204afe2b17cab6b9e3e258fd648d"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-
-inherit cros-workon autotest
-
-DESCRIPTION="Autotest tests that require chrome_binary_test, or telemetry deps"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-# Enable autotest by default.
-IUSE="
-	${IUSE}
-	+autotest
-	+cellular
-	drm_atomic
-	+shill
-	+tpm
-	tpm2
-	vaapi
-"
-
-RDEPEND="
-	!chromeos-base/autotest-telemetry
-	!<chromeos-base/autotest-tests-0.0.4
-	!<chromeos-base/autotest-tests-cellular-0.0.1-r3203
-	chromeos-base/autotest-deps-graphics
-	chromeos-base/autotest-deps-policy
-	chromeos-base/autotest-deps-webgl-mpd
-	chromeos-base/chromeos-chrome
-	dev-python/mkvparse
-	shill? ( chromeos-base/shill-test-scripts )
-	chromeos-base/telemetry
-	sys-apps/ethtool
-	vaapi? ( x11-libs/libva )
-	tests_graphics_WebGLAquarium? ( app-benchmarks/microbenchmarks dev-util/memory-eater-locked )
-	virtual/autotest-private-libs
-"
-
-DEPEND="${RDEPEND}"
-
-IUSE_TESTS=(
-	# Tests that depend on telemetry.
-	+tests_accessibility_Check
-	+tests_accessibility_ChromeVoxSound
-	+tests_audio_ActiveStreamStress
-	+tests_audio_AudioCorruption
-	+tests_audio_CrasCheck
-	+tests_audio_PlaybackPower
-	+tests_audio_SeekAudioFeedback
-	+tests_autoupdate_EOL
-	+tests_autoupdate_LoginStartUpdateLogout
-	+tests_autoupdate_StartOOBEUpdate
-	+tests_autoupdate_UpdateFromUI
-	+tests_autoupdate_UserData
-	+tests_bluetooth_AdapterReboot
-	+tests_bluetooth_AdapterHealth
-	+tests_bluetooth_IDCheck
-	+tests_bluetooth_RegressionClient
-	+tests_bluetooth_TurnOnOffUI
-	+tests_desktopui_AudioFeedback
-	+tests_desktopui_CheckRlzPingSent
-	+tests_desktopui_ChromeCheck
-	tests_desktopui_ConnectivityDiagnostics
-	+tests_desktopui_MediaAudioFeedback
-	+tests_desktopui_ScreenLocker
-	+tests_desktopui_SimpleLogin
-	+tests_desktopui_UrlFetchWithChromeDriver
-	+tests_display_ClientChameleonConnection
-	+tests_display_DisplayContainEdid
-	+tests_enterprise_FakeEnrollment
-	+tests_enterprise_KioskEnrollment
-	+tests_enterprise_OnlineDemoModeEnrollment
-	+tests_enterprise_PowerManagement
-	+tests_enterprise_RemoraRequisition
-	+tests_graphics_Chrome
-	+tests_graphics_Stress
-	+tests_graphics_VideoRenderingPower
-	+tests_graphics_VTSwitch
-	+tests_graphics_WebGLAquarium
-	+tests_graphics_WebGLManyPlanetsDeep
-	tests_logging_AsanCrash
-	+tests_logging_CrashServices
-	+tests_logging_FeedbackReport
-	+tests_login_ChromeProfileSanitary
-	+tests_login_CryptohomeDataLeak
-	+tests_login_CryptohomeIncognito
-	+tests_login_GaiaLogin
-	+tests_login_LoginSuccess
-	+tests_login_OobeLocalization
-	+tests_login_SavePassword
-	+tests_login_UnicornLogin
-	+tests_login_UserPolicyKeys
-	+tests_longevity_Tracker
-	+tests_network_CastTDLS
-	+tests_network_ChromeWifiConfigure
-	+tests_platform_ChromeCgroups
-	+tests_platform_InitLoginPerf
-	+tests_platform_InputBrightness
-	+tests_platform_InputBrowserNav
-	+tests_platform_InputNewTab
-	+tests_platform_InputScreenshot
-	+tests_platform_InputVolume
-	+tests_platform_LogoutPerf
-	+tests_platform_LowMemoryTest
-	+tests_platform_MouseScrollTest
-	+tests_platform_PrintJob
-	+tests_platform_SessionManagerBlockDevmodeSetting
-	+tests_platform_ScrollTest
-	+tests_policy_ArcAudioCaptureAllowed
-	+tests_policy_ArcBackupRestoreServiceEnabled
-	+tests_policy_ArcExternalStorageDisabled
-	+tests_policy_ArcVideoCaptureAllowed
-	+tests_policy_ArcDisableScreenshots
-	+tests_policy_AudioOutputAllowed
-	+tests_policy_AutotestCheck
-	+tests_policy_ChromeOsLockOnIdleSuspend
-	+tests_policy_CookiesAllowedForUrls
-	+tests_policy_CookiesBlockedForUrls
-	+tests_policy_CookiesSessionOnlyForUrls
-	+tests_policy_DefaultSearchProvider
-	+tests_policy_DeveloperToolsAvailability
-	+tests_policy_DeviceAllowBluetooth
-	+tests_policy_DeviceAutoUpdateDisabled
-	+tests_policy_DeviceCharging
-	+tests_policy_DeviceDockMacAddressSource
-	+tests_policy_DeviceScheduledCharging
-	+tests_policy_DisableScreenshots
-	+tests_policy_DownloadDirectory
-	+tests_policy_DriveDisabled
-	+tests_policy_DeviceEphemeralUsersEnabled
-	+tests_policy_EnrollmentRetainment
-	+tests_policy_EnterpriseForceInstallCustom
-	+tests_policy_ExtensionPolicy
-	+tests_policy_ExternalStorageDisabled
-	+tests_policy_ExternalStorageReadOnly
-	+tests_policy_ForceYouTubeRestrict
-	+tests_policy_ForceYouTubeSafetyMode
-	+tests_policy_KeyPermissions
-	+tests_policy_KioskModeEnabled
-	+tests_policy_NativePrintersBulkAccessMode
-	+tests_policy_PinnedLauncherApps
-	+tests_policy_PlatformKeys
-	+tests_policy_PolicyRefreshRate
-	+tests_policy_PowerManagementIdleSettings
-	+tests_policy_PrintingEnabled
-	+tests_policy_ProxySettings
-	+tests_policy_ReportUploadFrequency
-	+tests_policy_RestoreOnStartupURLs
-	+tests_policy_SystemTimezone
-	+tests_policy_VirtualMachinesAllowed
-	+tests_policy_WilcoOnNonWilcoDevice
-	+tests_policy_WilcoUSBPowershare
-	+tests_power_AudioDetector
-	+tests_power_BatteryDrain
-	+tests_power_Consumption
-	+tests_power_Display
-	+tests_power_FlashVideoSuspend
-	+tests_power_Idle
-	+tests_power_IdleSuspend
-	+tests_power_LoadTest
-	+tests_power_LowMemorySuspend
-	+tests_power_MeetClient
-	+tests_power_Speedometer2
-	+tests_power_ThermalLoad
-	+tests_power_UiResume
-	+tests_power_VideoCall
-	+tests_power_VideoDetector
-	+tests_power_VideoEncode
-	+tests_power_VideoPlayback
-	+tests_power_VideoSuspend
-	+tests_power_WebGL
-	+tests_power_WifiIdle
-	+tests_security_BundledExtensions
-	+tests_stub_IdleSuspend
-	+tests_telemetry_AFDOGenerateClient
-	+tests_telemetry_Check
-	+tests_telemetry_UnitTests
-	+tests_telemetry_UnitTestsServer
-	+tests_touch_GestureNav
-	+tests_touch_MouseScroll
-	+tests_touch_ScrollDirection
-	+tests_touch_TapSettings
-	+tests_touch_TabSwitch
-	+tests_touch_TouchscreenScroll
-	+tests_touch_TouchscreenTaps
-	+tests_touch_TouchscreenZoom
-	+tests_touch_StylusTaps
-	+tests_video_AVAnalysis
-)
-
-IUSE_TESTS_CELLULAR="
-	cellular? (
-		+tests_cellular_ModemControl
-		+tests_cellular_SuspendResume
-		+tests_network_ChromeCellularEndToEnd
-		+tests_network_ChromeCellularNetworkPresent
-		+tests_network_ChromeCellularNetworkProperties
-		+tests_network_ChromeCellularSmokeTest
-	)
-"
-
-IUSE_TESTS_SHILL="
-	shill? (
-		+tests_network_ChromeWifiEndToEnd
-		+tests_network_FirewallHolePunch
-		+tests_network_RackWiFiConnect
-		+tests_network_RoamSuspendEndToEnd
-		+tests_network_RoamWifiEndToEnd
-		+tests_policy_GlobalNetworkSettings
-		+tests_policy_WiFiAutoconnect
-		+tests_policy_WiFiPrecedence
-		+tests_policy_WiFiTypes
-	)
-"
-
-# This is here instead of in autotest-tests-tpm because it would be far more
-# work and duplication to add telemetry dependencies there.
-IUSE_TESTS_TPM="
-	tpm? ( +tests_platform_Pkcs11InitOnLogin )
-	tpm2? ( +tests_platform_Pkcs11InitOnLogin )
-"
-
-IUSE_TESTS_ARC="
-	+tests_graphics_Idle
-"
-
-IUSE_TESTS_ATOMIC="
-	drm_atomic? ( +tests_graphics_HwOverlays )
-"
-
-IUSE_TESTS="
-	${IUSE_TESTS[*]}
-	${IUSE_TESTS_CELLULAR}
-	${IUSE_TESTS_SHILL}
-	${IUSE_TESTS_TPM}
-	${IUSE_TESTS_ARC}
-	${IUSE_TESTS_ATOMIC}
-"
-
-IUSE="
-	${IUSE}
-	${IUSE_TESTS}
-"
-
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-AUTOTEST_DEPS_LIST=""
-AUTOTEST_CONFIG_LIST=""
-AUTOTEST_PROFILERS_LIST=""
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
-
-src_prepare() {
-	# Telemetry tests require the path to telemetry source to exist in order to
-	# build. Copy the telemetry source to a temporary directory that is writable,
-	# so that file removals in Telemetry source can be performed properly.
-	export TMP_DIR="$(mktemp -d)"
-	rsync -a --exclude=third_party/trace-viewer/test_data/ \
-		"${SYSROOT}"/usr/local/telemetry/src/ "${TMP_DIR}"
-	export PYTHONPATH="${TMP_DIR}/third_party/catapult/telemetry"
-	autotest_src_prepare
-}
diff --git a/chromeos-base/autotest-chrome/autotest-chrome-0.0.1-r7855.ebuild b/chromeos-base/autotest-chrome/autotest-chrome-0.0.1-r7855.ebuild
new file mode 100644
index 0000000..a037827
--- /dev/null
+++ b/chromeos-base/autotest-chrome/autotest-chrome-0.0.1-r7855.ebuild
@@ -0,0 +1,264 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="63dca19127f7980df72e8e75747ddd6541d1200a"
+CROS_WORKON_TREE="fb63673581aec4ac725ff9e16ccee2dd2df87879"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+
+inherit cros-workon autotest
+
+DESCRIPTION="Autotest tests that require chrome_binary_test, or telemetry deps"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+
+# Enable autotest by default.
+IUSE="
+	${IUSE}
+	+autotest
+	+cellular
+	drm_atomic
+	+shill
+	+tpm
+	tpm2
+	vaapi
+"
+
+RDEPEND="
+	!chromeos-base/autotest-telemetry
+	!<chromeos-base/autotest-tests-0.0.4
+	!<chromeos-base/autotest-tests-cellular-0.0.1-r3203
+	chromeos-base/autotest-deps-graphics
+	chromeos-base/autotest-deps-policy
+	chromeos-base/autotest-deps-webgl-mpd
+	chromeos-base/chromeos-chrome
+	dev-python/mkvparse
+	shill? ( chromeos-base/shill-test-scripts )
+	chromeos-base/telemetry
+	sys-apps/ethtool
+	vaapi? ( x11-libs/libva )
+	tests_graphics_WebGLAquarium? ( app-benchmarks/microbenchmarks dev-util/memory-eater-locked )
+	virtual/autotest-private-libs
+"
+
+DEPEND="${RDEPEND}"
+
+IUSE_TESTS=(
+	# Tests that depend on telemetry.
+	+tests_accessibility_Check
+	+tests_accessibility_ChromeVoxSound
+	+tests_audio_ActiveStreamStress
+	+tests_audio_AudioCorruption
+	+tests_audio_CrasCheck
+	+tests_audio_PlaybackPower
+	+tests_audio_SeekAudioFeedback
+	+tests_autoupdate_EOL
+	+tests_autoupdate_LoginStartUpdateLogout
+	+tests_autoupdate_StartOOBEUpdate
+	+tests_autoupdate_UpdateFromUI
+	+tests_autoupdate_UserData
+	+tests_bluetooth_AdapterReboot
+	+tests_bluetooth_AdapterHealth
+	+tests_bluetooth_IDCheck
+	+tests_bluetooth_RegressionClient
+	+tests_bluetooth_TurnOnOffUI
+	+tests_desktopui_AudioFeedback
+	+tests_desktopui_CheckRlzPingSent
+	+tests_desktopui_ChromeCheck
+	tests_desktopui_ConnectivityDiagnostics
+	+tests_desktopui_MediaAudioFeedback
+	+tests_desktopui_ScreenLocker
+	+tests_desktopui_SimpleLogin
+	+tests_desktopui_UrlFetchWithChromeDriver
+	+tests_display_ClientChameleonConnection
+	+tests_display_DisplayContainEdid
+	+tests_enterprise_FakeEnrollment
+	+tests_enterprise_KioskEnrollment
+	+tests_enterprise_OnlineDemoModeEnrollment
+	+tests_enterprise_PowerManagement
+	+tests_enterprise_RemoraRequisition
+	+tests_graphics_Chrome
+	+tests_graphics_Stress
+	+tests_graphics_VideoRenderingPower
+	+tests_graphics_VTSwitch
+	+tests_graphics_WebGLAquarium
+	+tests_graphics_WebGLManyPlanetsDeep
+	tests_logging_AsanCrash
+	+tests_logging_CrashServices
+	+tests_logging_FeedbackReport
+	+tests_login_ChromeProfileSanitary
+	+tests_login_CryptohomeDataLeak
+	+tests_login_CryptohomeIncognito
+	+tests_login_GaiaLogin
+	+tests_login_LoginPin
+	+tests_login_LoginSuccess
+	+tests_login_OobeLocalization
+	+tests_login_SavePassword
+	+tests_login_UnicornLogin
+	+tests_login_UserPolicyKeys
+	+tests_longevity_Tracker
+	+tests_network_CastTDLS
+	+tests_network_ChromeWifiConfigure
+	+tests_platform_ChromeCgroups
+	+tests_platform_InitLoginPerf
+	+tests_platform_InputBrightness
+	+tests_platform_InputBrowserNav
+	+tests_platform_InputNewTab
+	+tests_platform_InputScreenshot
+	+tests_platform_InputVolume
+	+tests_platform_LogoutPerf
+	+tests_platform_LowMemoryTest
+	+tests_platform_MouseScrollTest
+	+tests_platform_PrintJob
+	+tests_platform_SessionManagerBlockDevmodeSetting
+	+tests_platform_ScrollTest
+	+tests_policy_ArcAudioCaptureAllowed
+	+tests_policy_ArcBackupRestoreServiceEnabled
+	+tests_policy_ArcExternalStorageDisabled
+	+tests_policy_ArcVideoCaptureAllowed
+	+tests_policy_ArcDisableScreenshots
+	+tests_policy_AutotestCheck
+	+tests_policy_ChromeOsLockOnIdleSuspend
+	+tests_policy_CookiesSessionOnlyForUrls
+	+tests_policy_DeveloperToolsAvailability
+	+tests_policy_DeviceAllowBluetooth
+	+tests_policy_DeviceAutoUpdateDisabled
+	+tests_policy_DeviceCharging
+	+tests_policy_DeviceDockMacAddressSource
+	+tests_policy_DeviceScheduledCharging
+	+tests_policy_DownloadDirectory
+	+tests_policy_DriveDisabled
+	+tests_policy_DeviceEphemeralUsersEnabled
+	+tests_policy_EnrollmentRetainment
+	+tests_policy_EnterpriseForceInstallCustom
+	+tests_policy_ExtensionPolicy
+	+tests_policy_ExternalStorageDisabled
+	+tests_policy_ExternalStorageReadOnly
+	+tests_policy_ForceYouTubeSafetyMode
+	+tests_policy_KeyPermissions
+	+tests_policy_KioskModeEnabled
+	+tests_policy_PlatformKeys
+	+tests_policy_PowerManagementIdleSettings
+	+tests_policy_ProxySettings
+	+tests_policy_ReportUploadFrequency
+	+tests_policy_RestoreOnStartupURLs
+	+tests_policy_WilcoOnNonWilcoDevice
+	+tests_policy_WilcoUSBPowershare
+	+tests_power_AudioDetector
+	+tests_power_BatteryDrain
+	+tests_power_Consumption
+	+tests_power_Display
+	+tests_power_FlashVideoSuspend
+	+tests_power_Idle
+	+tests_power_IdleSuspend
+	+tests_power_LoadTest
+	+tests_power_LowMemorySuspend
+	+tests_power_MeetClient
+	+tests_power_Speedometer2
+	+tests_power_ThermalLoad
+	+tests_power_UiResume
+	+tests_power_VideoCall
+	+tests_power_VideoDetector
+	+tests_power_VideoEncode
+	+tests_power_VideoPlayback
+	+tests_power_VideoSuspend
+	+tests_power_WebGL
+	+tests_power_WifiIdle
+	+tests_security_BundledExtensions
+	+tests_stub_IdleSuspend
+	+tests_telemetry_AFDOGenerateClient
+	+tests_telemetry_Check
+	+tests_telemetry_UnitTests
+	+tests_telemetry_UnitTestsServer
+	+tests_touch_GestureNav
+	+tests_touch_MouseScroll
+	+tests_touch_ScrollDirection
+	+tests_touch_TapSettings
+	+tests_touch_TabSwitch
+	+tests_touch_TouchscreenScroll
+	+tests_touch_TouchscreenTaps
+	+tests_touch_TouchscreenZoom
+	+tests_touch_StylusTaps
+	+tests_video_AVAnalysis
+)
+
+IUSE_TESTS_CELLULAR="
+	cellular? (
+		+tests_cellular_ModemControl
+		+tests_cellular_SuspendResume
+		+tests_network_ChromeCellularEndToEnd
+		+tests_network_ChromeCellularNetworkPresent
+		+tests_network_ChromeCellularNetworkProperties
+		+tests_network_ChromeCellularSmokeTest
+	)
+"
+
+IUSE_TESTS_SHILL="
+	shill? (
+		+tests_network_ChromeWifiEndToEnd
+		+tests_network_FirewallHolePunch
+		+tests_network_RackWiFiConnect
+		+tests_network_RoamSuspendEndToEnd
+		+tests_network_RoamWifiEndToEnd
+		+tests_policy_GlobalNetworkSettings
+		+tests_policy_WiFiAutoconnect
+		+tests_policy_WiFiPrecedence
+		+tests_policy_WiFiTypes
+	)
+"
+
+# This is here instead of in autotest-tests-tpm because it would be far more
+# work and duplication to add telemetry dependencies there.
+IUSE_TESTS_TPM="
+	tpm? ( +tests_platform_Pkcs11InitOnLogin )
+	tpm2? ( +tests_platform_Pkcs11InitOnLogin )
+"
+
+IUSE_TESTS_ARC="
+	+tests_graphics_Idle
+"
+
+IUSE_TESTS_ATOMIC="
+	drm_atomic? ( +tests_graphics_HwOverlays )
+"
+
+IUSE_TESTS_CHROMIUM="
+	+tests_chromium
+"
+
+IUSE_TESTS="
+	${IUSE_TESTS[*]}
+	${IUSE_TESTS_CELLULAR}
+	${IUSE_TESTS_SHILL}
+	${IUSE_TESTS_TPM}
+	${IUSE_TESTS_ARC}
+	${IUSE_TESTS_ATOMIC}
+	${IUSE_TESTS_CHROMIUM}
+"
+
+IUSE="
+	${IUSE}
+	${IUSE_TESTS}
+"
+
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+AUTOTEST_DEPS_LIST=""
+AUTOTEST_CONFIG_LIST=""
+AUTOTEST_PROFILERS_LIST=""
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+src_prepare() {
+	# Telemetry tests require the path to telemetry source to exist in order to
+	# build. Copy the telemetry source to a temporary directory that is writable,
+	# so that file removals in Telemetry source can be performed properly.
+	export TMP_DIR="$(mktemp -d)"
+	rsync -a --exclude=third_party/trace-viewer/test_data/ \
+		"${SYSROOT}"/usr/local/telemetry/src/ "${TMP_DIR}"
+	export PYTHONPATH="${TMP_DIR}/third_party/catapult/telemetry"
+	autotest_src_prepare
+}
diff --git a/chromeos-base/autotest-chrome/autotest-chrome-9999.ebuild b/chromeos-base/autotest-chrome/autotest-chrome-9999.ebuild
index 1c23ac9..c33c2c2 100644
--- a/chromeos-base/autotest-chrome/autotest-chrome-9999.ebuild
+++ b/chromeos-base/autotest-chrome/autotest-chrome-9999.ebuild
@@ -91,6 +91,7 @@
 	+tests_login_CryptohomeDataLeak
 	+tests_login_CryptohomeIncognito
 	+tests_login_GaiaLogin
+	+tests_login_LoginPin
 	+tests_login_LoginSuccess
 	+tests_login_OobeLocalization
 	+tests_login_SavePassword
@@ -117,20 +118,15 @@
 	+tests_policy_ArcExternalStorageDisabled
 	+tests_policy_ArcVideoCaptureAllowed
 	+tests_policy_ArcDisableScreenshots
-	+tests_policy_AudioOutputAllowed
 	+tests_policy_AutotestCheck
 	+tests_policy_ChromeOsLockOnIdleSuspend
-	+tests_policy_CookiesAllowedForUrls
-	+tests_policy_CookiesBlockedForUrls
 	+tests_policy_CookiesSessionOnlyForUrls
-	+tests_policy_DefaultSearchProvider
 	+tests_policy_DeveloperToolsAvailability
 	+tests_policy_DeviceAllowBluetooth
 	+tests_policy_DeviceAutoUpdateDisabled
 	+tests_policy_DeviceCharging
 	+tests_policy_DeviceDockMacAddressSource
 	+tests_policy_DeviceScheduledCharging
-	+tests_policy_DisableScreenshots
 	+tests_policy_DownloadDirectory
 	+tests_policy_DriveDisabled
 	+tests_policy_DeviceEphemeralUsersEnabled
@@ -139,21 +135,14 @@
 	+tests_policy_ExtensionPolicy
 	+tests_policy_ExternalStorageDisabled
 	+tests_policy_ExternalStorageReadOnly
-	+tests_policy_ForceYouTubeRestrict
 	+tests_policy_ForceYouTubeSafetyMode
 	+tests_policy_KeyPermissions
 	+tests_policy_KioskModeEnabled
-	+tests_policy_NativePrintersBulkAccessMode
-	+tests_policy_PinnedLauncherApps
 	+tests_policy_PlatformKeys
-	+tests_policy_PolicyRefreshRate
 	+tests_policy_PowerManagementIdleSettings
-	+tests_policy_PrintingEnabled
 	+tests_policy_ProxySettings
 	+tests_policy_ReportUploadFrequency
 	+tests_policy_RestoreOnStartupURLs
-	+tests_policy_SystemTimezone
-	+tests_policy_VirtualMachinesAllowed
 	+tests_policy_WilcoOnNonWilcoDevice
 	+tests_policy_WilcoUSBPowershare
 	+tests_power_AudioDetector
@@ -234,6 +223,10 @@
 	drm_atomic? ( +tests_graphics_HwOverlays )
 "
 
+IUSE_TESTS_CHROMIUM="
+	+tests_chromium
+"
+
 IUSE_TESTS="
 	${IUSE_TESTS[*]}
 	${IUSE_TESTS_CELLULAR}
@@ -241,6 +234,7 @@
 	${IUSE_TESTS_TPM}
 	${IUSE_TESTS_ARC}
 	${IUSE_TESTS_ATOMIC}
+	${IUSE_TESTS_CHROMIUM}
 "
 
 IUSE="
diff --git a/chromeos-base/autotest-deps-camera-hal3/autotest-deps-camera-hal3-0.0.1-r6311.ebuild b/chromeos-base/autotest-deps-camera-hal3/autotest-deps-camera-hal3-0.0.1-r6311.ebuild
deleted file mode 100644
index bbe13de..0000000
--- a/chromeos-base/autotest-deps-camera-hal3/autotest-deps-camera-hal3-0.0.1-r6311.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="0e103e3821ffbc575b67d6d9c426cac3ee4402b3"
-CROS_WORKON_TREE="210df4cb14c4f7c420a697e85e6a7bec211d5bed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest-deponly
-
-DESCRIPTION="Dependencies for camera_HAL3 autotest"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-# Autotest enabled by default.
-IUSE="+autotest"
-
-AUTOTEST_DEPS_LIST="camera_hal3"
-
-RDEPEND="
-	media-libs/cros-camera-test
-"
-
-DEPEND="${RDEPEND}"
diff --git a/chromeos-base/autotest-deps-camera-hal3/autotest-deps-camera-hal3-0.0.1-r6763.ebuild b/chromeos-base/autotest-deps-camera-hal3/autotest-deps-camera-hal3-0.0.1-r6763.ebuild
new file mode 100644
index 0000000..85964d5
--- /dev/null
+++ b/chromeos-base/autotest-deps-camera-hal3/autotest-deps-camera-hal3-0.0.1-r6763.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest-deponly
+
+DESCRIPTION="Dependencies for camera_HAL3 autotest"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+# Autotest enabled by default.
+IUSE="+autotest"
+
+AUTOTEST_DEPS_LIST="camera_hal3"
+
+RDEPEND="
+	media-libs/cros-camera-test
+"
+
+DEPEND="${RDEPEND}"
diff --git a/chromeos-base/autotest-deps-cellular/autotest-deps-cellular-0.0.1-r9100.ebuild b/chromeos-base/autotest-deps-cellular/autotest-deps-cellular-0.0.1-r9100.ebuild
deleted file mode 100644
index 0682548..0000000
--- a/chromeos-base/autotest-deps-cellular/autotest-deps-cellular-0.0.1-r9100.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="0e103e3821ffbc575b67d6d9c426cac3ee4402b3"
-CROS_WORKON_TREE="210df4cb14c4f7c420a697e85e6a7bec211d5bed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest-deponly
-
-DESCRIPTION="Autotest cellular deps"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-# Autotest enabled by default.
-IUSE="+autotest"
-
-AUTOTEST_DEPS_LIST="fakegudev fakemodem"
-AUTOTEST_CONFIG_LIST=
-AUTOTEST_PROFILERS_LIST=
-
-# NOTE: For deps, we need to keep *.a
-AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
-
-RDEPEND="!<chromeos-base/autotest-deps-0.0.3"
-
-# deps/fakegudev
-RDEPEND="${RDEPEND}
-	virtual/libgudev
-"
-
-# deps/fakemodem
-RDEPEND="${RDEPEND}
-	chromeos-base/autotest-fakemodem-conf
-	dev-libs/dbus-glib
-"
-DEPEND="${RDEPEND}"
diff --git a/chromeos-base/autotest-deps-cellular/autotest-deps-cellular-0.0.1-r9552.ebuild b/chromeos-base/autotest-deps-cellular/autotest-deps-cellular-0.0.1-r9552.ebuild
new file mode 100644
index 0000000..ac20ecf
--- /dev/null
+++ b/chromeos-base/autotest-deps-cellular/autotest-deps-cellular-0.0.1-r9552.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest-deponly
+
+DESCRIPTION="Autotest cellular deps"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+
+# Autotest enabled by default.
+IUSE="+autotest"
+
+AUTOTEST_DEPS_LIST="fakegudev fakemodem"
+AUTOTEST_CONFIG_LIST=
+AUTOTEST_PROFILERS_LIST=
+
+# NOTE: For deps, we need to keep *.a
+AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+RDEPEND="!<chromeos-base/autotest-deps-0.0.3"
+
+# deps/fakegudev
+RDEPEND="${RDEPEND}
+	virtual/libgudev
+"
+
+# deps/fakemodem
+RDEPEND="${RDEPEND}
+	chromeos-base/autotest-fakemodem-conf
+	dev-libs/dbus-glib
+"
+DEPEND="${RDEPEND}"
diff --git a/chromeos-base/autotest-deps-dbus/autotest-deps-dbus-0.0.1-r4984.ebuild b/chromeos-base/autotest-deps-dbus/autotest-deps-dbus-0.0.1-r4984.ebuild
deleted file mode 100644
index 4a7663a..0000000
--- a/chromeos-base/autotest-deps-dbus/autotest-deps-dbus-0.0.1-r4984.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="0e103e3821ffbc575b67d6d9c426cac3ee4402b3"
-CROS_WORKON_TREE="210df4cb14c4f7c420a697e85e6a7bec211d5bed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest-deponly
-
-DESCRIPTION="Autotest D-Bus deps"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-# Autotest enabled by default.
-IUSE="+autotest"
-
-AUTOTEST_DEPS_LIST="dbus_protos"
-
-# NOTE: For deps, we need to keep *.a
-AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
-
-DEPEND="chromeos-base/system_api
-	dev-libs/protobuf:=
-"
-
-# Calling this here, so tests using this dep don't have to call setup_dep().
-src_prepare() {
-	autotest-deponly_src_prepare
-}
diff --git a/chromeos-base/autotest-deps-dbus/autotest-deps-dbus-0.0.1-r5436.ebuild b/chromeos-base/autotest-deps-dbus/autotest-deps-dbus-0.0.1-r5436.ebuild
new file mode 100644
index 0000000..c9a7140
--- /dev/null
+++ b/chromeos-base/autotest-deps-dbus/autotest-deps-dbus-0.0.1-r5436.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest-deponly
+
+DESCRIPTION="Autotest D-Bus deps"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+# Autotest enabled by default.
+IUSE="+autotest"
+
+AUTOTEST_DEPS_LIST="dbus_protos"
+
+# NOTE: For deps, we need to keep *.a
+AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+DEPEND="chromeos-base/system_api
+	dev-libs/protobuf:=
+"
+
+# Calling this here, so tests using this dep don't have to call setup_dep().
+src_prepare() {
+	autotest-deponly_src_prepare
+}
diff --git a/chromeos-base/autotest-deps-glmark2/autotest-deps-glmark2-0.0.1-r9471.ebuild b/chromeos-base/autotest-deps-glmark2/autotest-deps-glmark2-0.0.1-r9471.ebuild
deleted file mode 100644
index f241a04..0000000
--- a/chromeos-base/autotest-deps-glmark2/autotest-deps-glmark2-0.0.1-r9471.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="0e103e3821ffbc575b67d6d9c426cac3ee4402b3"
-CROS_WORKON_TREE="210df4cb14c4f7c420a697e85e6a7bec211d5bed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-sanitizers cros-workon autotest-deponly
-
-DESCRIPTION="Autotest glmark2 dependency"
-HOMEPAGE="https://launchpad.net/glmark2"
-SRC_URI=""
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="*"
-
-# Autotest enabled by default.
-IUSE="-asan +autotest"
-
-AUTOTEST_DEPS_LIST="glmark2"
-
-# deps/glmark2
-RDEPEND="
-	app-benchmarks/glmark2
-"
-
-DEPEND="${RDEPEND}"
-
-src_configure() {
-	sanitizers-setup-env
-	default
-}
diff --git a/chromeos-base/autotest-deps-glmark2/autotest-deps-glmark2-0.0.1-r9923.ebuild b/chromeos-base/autotest-deps-glmark2/autotest-deps-glmark2-0.0.1-r9923.ebuild
new file mode 100644
index 0000000..1b9cbf2
--- /dev/null
+++ b/chromeos-base/autotest-deps-glmark2/autotest-deps-glmark2-0.0.1-r9923.ebuild
@@ -0,0 +1,35 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-sanitizers cros-workon autotest-deponly
+
+DESCRIPTION="Autotest glmark2 dependency"
+HOMEPAGE="https://launchpad.net/glmark2"
+SRC_URI=""
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="*"
+
+# Autotest enabled by default.
+IUSE="-asan +autotest"
+
+AUTOTEST_DEPS_LIST="glmark2"
+
+# deps/glmark2
+RDEPEND="
+	app-benchmarks/glmark2
+"
+
+DEPEND="${RDEPEND}"
+
+src_configure() {
+	sanitizers-setup-env
+	default
+}
diff --git a/chromeos-base/autotest-deps-graphics/autotest-deps-graphics-0.0.1-r9451.ebuild b/chromeos-base/autotest-deps-graphics/autotest-deps-graphics-0.0.1-r9451.ebuild
deleted file mode 100644
index 931209b..0000000
--- a/chromeos-base/autotest-deps-graphics/autotest-deps-graphics-0.0.1-r9451.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=4
-CROS_WORKON_COMMIT="0e103e3821ffbc575b67d6d9c426cac3ee4402b3"
-CROS_WORKON_TREE="210df4cb14c4f7c420a697e85e6a7bec211d5bed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest-deponly
-
-DESCRIPTION="Dependencies for graphics autotests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-# Autotest enabled by default.
-IUSE="+autotest"
-
-AUTOTEST_DEPS_LIST="graphics"
-
-# NOTE: For deps, we need to keep *.a
-AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
-
-RDEPEND="!<chromeos-base/autotest-deps-0.0.4"
-DEPEND="${RDEPEND}"
diff --git a/chromeos-base/autotest-deps-graphics/autotest-deps-graphics-0.0.1-r9903.ebuild b/chromeos-base/autotest-deps-graphics/autotest-deps-graphics-0.0.1-r9903.ebuild
new file mode 100644
index 0000000..b42266e
--- /dev/null
+++ b/chromeos-base/autotest-deps-graphics/autotest-deps-graphics-0.0.1-r9903.ebuild
@@ -0,0 +1,28 @@
+# Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest-deponly
+
+DESCRIPTION="Dependencies for graphics autotests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+
+# Autotest enabled by default.
+IUSE="+autotest"
+
+AUTOTEST_DEPS_LIST="graphics"
+
+# NOTE: For deps, we need to keep *.a
+AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+RDEPEND="!<chromeos-base/autotest-deps-0.0.4"
+DEPEND="${RDEPEND}"
diff --git a/chromeos-base/autotest-deps-p2p/autotest-deps-p2p-0.0.1-r9063.ebuild b/chromeos-base/autotest-deps-p2p/autotest-deps-p2p-0.0.1-r9063.ebuild
deleted file mode 100644
index 9be103f..0000000
--- a/chromeos-base/autotest-deps-p2p/autotest-deps-p2p-0.0.1-r9063.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-CROS_WORKON_COMMIT="0e103e3821ffbc575b67d6d9c426cac3ee4402b3"
-CROS_WORKON_TREE="210df4cb14c4f7c420a697e85e6a7bec211d5bed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-PYTHON_COMPAT=( python2_7 )
-inherit cros-workon autotest-deponly python-any-r1
-
-DESCRIPTION="Autotest p2p deps"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-# Autotest enabled by default.
-IUSE="+autotest"
-
-AUTOTEST_DEPS_LIST="lansim"
-
-# NOTE: For deps, we need to keep *.a
-AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
-
-RDEPEND="!<chromeos-base/autotest-deps-0.0.4"
-
-# deps/lansim
-RDEPEND="${RDEPEND}
-	dev-python/dpkt
-"
-DEPEND="${RDEPEND}"
diff --git a/chromeos-base/autotest-deps-p2p/autotest-deps-p2p-0.0.1-r9515.ebuild b/chromeos-base/autotest-deps-p2p/autotest-deps-p2p-0.0.1-r9515.ebuild
new file mode 100644
index 0000000..06c3126
--- /dev/null
+++ b/chromeos-base/autotest-deps-p2p/autotest-deps-p2p-0.0.1-r9515.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+PYTHON_COMPAT=( python2_7 )
+inherit cros-workon autotest-deponly python-any-r1
+
+DESCRIPTION="Autotest p2p deps"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+
+# Autotest enabled by default.
+IUSE="+autotest"
+
+AUTOTEST_DEPS_LIST="lansim"
+
+# NOTE: For deps, we need to keep *.a
+AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+RDEPEND="!<chromeos-base/autotest-deps-0.0.4"
+
+# deps/lansim
+RDEPEND="${RDEPEND}
+	dev-python/dpkt
+"
+DEPEND="${RDEPEND}"
diff --git a/chromeos-base/autotest-deps-policy/autotest-deps-policy-0.0.1-r5060.ebuild b/chromeos-base/autotest-deps-policy/autotest-deps-policy-0.0.1-r5060.ebuild
deleted file mode 100644
index e2ec3a1..0000000
--- a/chromeos-base/autotest-deps-policy/autotest-deps-policy-0.0.1-r5060.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="0e103e3821ffbc575b67d6d9c426cac3ee4402b3"
-CROS_WORKON_TREE="210df4cb14c4f7c420a697e85e6a7bec211d5bed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest-deponly
-
-DESCRIPTION="Autotest policy deps"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-# Autotest enabled by default.
-IUSE="+autotest"
-
-AUTOTEST_DEPS_LIST="policy_protos"
-
-# NOTE: For deps, we need to keep *.a
-AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
-
-DEPEND="
-	>=chromeos-base/protofiles-0.0.43:=
-	chromeos-base/system_api
-	dev-libs/protobuf:=
-"
-
-# Calling this here, so tests using this dep don't have to call setup_dep().
-src_prepare() {
-	autotest-deponly_src_prepare
-}
diff --git a/chromeos-base/autotest-deps-policy/autotest-deps-policy-0.0.1-r5512.ebuild b/chromeos-base/autotest-deps-policy/autotest-deps-policy-0.0.1-r5512.ebuild
new file mode 100644
index 0000000..effd734
--- /dev/null
+++ b/chromeos-base/autotest-deps-policy/autotest-deps-policy-0.0.1-r5512.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest-deponly
+
+DESCRIPTION="Autotest policy deps"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+
+# Autotest enabled by default.
+IUSE="+autotest"
+
+AUTOTEST_DEPS_LIST="policy_protos"
+
+# NOTE: For deps, we need to keep *.a
+AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+DEPEND="
+	>=chromeos-base/protofiles-0.0.43:=
+	chromeos-base/system_api
+	dev-libs/protobuf:=
+"
+
+# Calling this here, so tests using this dep don't have to call setup_dep().
+src_prepare() {
+	autotest-deponly_src_prepare
+}
diff --git a/chromeos-base/autotest-deps-touchpad/autotest-deps-touchpad-0.0.1-r10073.ebuild b/chromeos-base/autotest-deps-touchpad/autotest-deps-touchpad-0.0.1-r10073.ebuild
deleted file mode 100644
index faa715b..0000000
--- a/chromeos-base/autotest-deps-touchpad/autotest-deps-touchpad-0.0.1-r10073.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="0e103e3821ffbc575b67d6d9c426cac3ee4402b3"
-CROS_WORKON_TREE="210df4cb14c4f7c420a697e85e6a7bec211d5bed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest-deponly
-
-DESCRIPTION="Autotest touchpad deps"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-# Autotest enabled by default.
-IUSE="+autotest"
-
-AUTOTEST_DEPS_LIST="touchpad-tests"
-AUTOTEST_CONFIG_LIST=
-AUTOTEST_PROFILERS_LIST=
-
-# NOTE: For deps, we need to keep *.a
-AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
-
-# deps/touchpad-tests
-RDEPEND="
-	x11-drivers/touchpad-tests
-	chromeos-base/touch_firmware_test
-	chromeos-base/mttools
-"
-
-DEPEND="${RDEPEND}"
diff --git a/chromeos-base/autotest-deps-touchpad/autotest-deps-touchpad-0.0.1-r10525.ebuild b/chromeos-base/autotest-deps-touchpad/autotest-deps-touchpad-0.0.1-r10525.ebuild
new file mode 100644
index 0000000..6b67251
--- /dev/null
+++ b/chromeos-base/autotest-deps-touchpad/autotest-deps-touchpad-0.0.1-r10525.ebuild
@@ -0,0 +1,35 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest-deponly
+
+DESCRIPTION="Autotest touchpad deps"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+
+# Autotest enabled by default.
+IUSE="+autotest"
+
+AUTOTEST_DEPS_LIST="touchpad-tests"
+AUTOTEST_CONFIG_LIST=
+AUTOTEST_PROFILERS_LIST=
+
+# NOTE: For deps, we need to keep *.a
+AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+# deps/touchpad-tests
+RDEPEND="
+	x11-drivers/touchpad-tests
+	chromeos-base/touch_firmware_test
+	chromeos-base/mttools
+"
+
+DEPEND="${RDEPEND}"
diff --git a/chromeos-base/autotest-deps-webgl-mpd/autotest-deps-webgl-mpd-0.0.1-r10075.ebuild b/chromeos-base/autotest-deps-webgl-mpd/autotest-deps-webgl-mpd-0.0.1-r10075.ebuild
new file mode 100644
index 0000000..1af500d
--- /dev/null
+++ b/chromeos-base/autotest-deps-webgl-mpd/autotest-deps-webgl-mpd-0.0.1-r10075.ebuild
@@ -0,0 +1,25 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest-deponly
+
+DESCRIPTION="Dependencies for WebGL many planets deep test"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+KEYWORDS="*"
+
+# Autotest enabled by default.
+IUSE="+autotest"
+
+AUTOTEST_DEPS_LIST="webgl_mpd"
+
+# NOTE: For deps, we need to keep *.a
+AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-deps-webgl-mpd/autotest-deps-webgl-mpd-0.0.1-r9623.ebuild b/chromeos-base/autotest-deps-webgl-mpd/autotest-deps-webgl-mpd-0.0.1-r9623.ebuild
deleted file mode 100644
index bff4d57..0000000
--- a/chromeos-base/autotest-deps-webgl-mpd/autotest-deps-webgl-mpd-0.0.1-r9623.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="0e103e3821ffbc575b67d6d9c426cac3ee4402b3"
-CROS_WORKON_TREE="210df4cb14c4f7c420a697e85e6a7bec211d5bed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest-deponly
-
-DESCRIPTION="Dependencies for WebGL many planets deep test"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-
-LICENSE="GPL-2"
-KEYWORDS="*"
-
-# Autotest enabled by default.
-IUSE="+autotest"
-
-AUTOTEST_DEPS_LIST="webgl_mpd"
-
-# NOTE: For deps, we need to keep *.a
-AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-deps/autotest-deps-0.0.4-r14291.ebuild b/chromeos-base/autotest-deps/autotest-deps-0.0.4-r14291.ebuild
deleted file mode 100644
index 6d34433..0000000
--- a/chromeos-base/autotest-deps/autotest-deps-0.0.4-r14291.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-CROS_WORKON_COMMIT="0e103e3821ffbc575b67d6d9c426cac3ee4402b3"
-CROS_WORKON_TREE="210df4cb14c4f7c420a697e85e6a7bec211d5bed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest-deponly
-
-DESCRIPTION="Autotest common deps"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-# Autotest enabled by default.
-IUSE="+autotest"
-
-# following deps don't compile: boottool, mysql, pgpool, pgsql, systemtap, # dejagnu, libcap, libnet
-# following deps are not deps: factory
-# following tests are going to be moved: chrome_test
-AUTOTEST_DEPS_LIST="gtest iwcap"
-AUTOTEST_CONFIG_LIST=*
-AUTOTEST_PROFILERS_LIST=*
-
-# NOTE: For deps, we need to keep *.a
-AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
-
-# deps/gtest
-RDEPEND="
-	dev-cpp/gtest:=
-	dev-libs/libnl:0
-	>=dev-python/grpcio-1.19
-	>=dev-python/psutil-5.5.0
-	sys-devel/binutils
-"
-
-DEPEND="${RDEPEND}
-	chromeos-base/cros-config-api
-"
-
-src_prepare() {
-	autotest-deponly_src_prepare
-
-	# To avoid a file collision with autotest.ebuild, remove
-	# one particular __init__.py file from working directory.
-	# See crbug.com/324963 for context.
-	rm "${AUTOTEST_WORKDIR}/client/profilers/__init__.py"
-}
diff --git a/chromeos-base/autotest-deps/autotest-deps-0.0.4-r14743.ebuild b/chromeos-base/autotest-deps/autotest-deps-0.0.4-r14743.ebuild
new file mode 100644
index 0000000..b159104
--- /dev/null
+++ b/chromeos-base/autotest-deps/autotest-deps-0.0.4-r14743.ebuild
@@ -0,0 +1,52 @@
+# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest-deponly
+
+DESCRIPTION="Autotest common deps"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+
+# Autotest enabled by default.
+IUSE="+autotest"
+
+# following deps don't compile: boottool, mysql, pgpool, pgsql, systemtap, # dejagnu, libcap, libnet
+# following deps are not deps: factory
+# following tests are going to be moved: chrome_test
+AUTOTEST_DEPS_LIST="gtest iwcap"
+AUTOTEST_CONFIG_LIST=*
+AUTOTEST_PROFILERS_LIST=*
+
+# NOTE: For deps, we need to keep *.a
+AUTOTEST_FILE_MASK="*.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+# deps/gtest
+RDEPEND="
+	dev-cpp/gtest:=
+	dev-libs/libnl:0
+	>=dev-python/grpcio-1.19
+	>=dev-python/psutil-5.5.0
+	sys-devel/binutils
+"
+
+DEPEND="${RDEPEND}
+	chromeos-base/cros-config-api
+"
+
+src_prepare() {
+	autotest-deponly_src_prepare
+
+	# To avoid a file collision with autotest.ebuild, remove
+	# one particular __init__.py file from working directory.
+	# See crbug.com/324963 for context.
+	rm "${AUTOTEST_WORKDIR}/client/profilers/__init__.py"
+}
diff --git a/chromeos-base/autotest-server-tests-bluetooth/autotest-server-tests-bluetooth-0.0.1-r3429.ebuild b/chromeos-base/autotest-server-tests-bluetooth/autotest-server-tests-bluetooth-0.0.1-r3429.ebuild
deleted file mode 100644
index fa66f6f..0000000
--- a/chromeos-base/autotest-server-tests-bluetooth/autotest-server-tests-bluetooth-0.0.1-r3429.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-CROS_WORKON_COMMIT="5d62145665a2692184d4b36e65ef3cfc6e6edd9a"
-CROS_WORKON_TREE="f3c2c1b6ad950d4f0da89332f1e47d33bdda1857"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest
-
-DESCRIPTION="Autotest server tests for Bluetooth"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-# Enable autotest by default.
-IUSE="+autotest"
-
-RDEPEND="
-	!<chromeos-base/autotest-server-tests-0.0.2-r4126
-"
-
-SERVER_IUSE_TESTS="
-	+tests_bluetooth_AdapterAdvHealth
-	+tests_bluetooth_AdapterAdvMonitor
-	+tests_bluetooth_AdapterAudioLink
-	+tests_bluetooth_AdapterAUHealth
-	+tests_bluetooth_AdapterCLHealth
-	+tests_bluetooth_AdapterEPHealth
-	+tests_bluetooth_AdapterLEAdvertising
-	+tests_bluetooth_AdapterLEBetterTogether
-	+tests_bluetooth_AdapterLEHIDHealth
-	+tests_bluetooth_AdapterLEHealth
-	+tests_bluetooth_AdapterLLTHealth
-	+tests_bluetooth_AdapterMDHealth
-	+tests_bluetooth_AdapterMTBF
-	+tests_bluetooth_AdapterPowerMeasure
-	+tests_bluetooth_AdapterQuickHealth
-	+tests_bluetooth_AdapterSAHealth
-	+tests_bluetooth_AdapterSRHealth
-	+tests_bluetooth_PeerUpdate
-"
-
-IUSE_TESTS="${IUSE_TESTS}
-	${SERVER_IUSE_TESTS}
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-server-tests-bluetooth/autotest-server-tests-bluetooth-0.0.1-r3446.ebuild b/chromeos-base/autotest-server-tests-bluetooth/autotest-server-tests-bluetooth-0.0.1-r3446.ebuild
new file mode 100644
index 0000000..3ee922b
--- /dev/null
+++ b/chromeos-base/autotest-server-tests-bluetooth/autotest-server-tests-bluetooth-0.0.1-r3446.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+CROS_WORKON_COMMIT="2e047d239577285cb4706648ce9029e9c98ccebc"
+CROS_WORKON_TREE="2bd0d5f238e77c48849cd1351e8f2921e005418f"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest
+
+DESCRIPTION="Autotest server tests for Bluetooth"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+
+# Enable autotest by default.
+IUSE="+autotest"
+
+RDEPEND="
+	!<chromeos-base/autotest-server-tests-0.0.2-r4126
+"
+
+SERVER_IUSE_TESTS="
+	+tests_bluetooth_AdapterAdvHealth
+	+tests_bluetooth_AdapterAdvMonitor
+	+tests_bluetooth_AdapterAudioLink
+	+tests_bluetooth_AdapterAUHealth
+	+tests_bluetooth_AdapterCLHealth
+	+tests_bluetooth_AdapterEPHealth
+	+tests_bluetooth_AdapterLEAdvertising
+	+tests_bluetooth_AdapterLEBetterTogether
+	+tests_bluetooth_AdapterLEHIDHealth
+	+tests_bluetooth_AdapterLEHealth
+	+tests_bluetooth_AdapterLLTHealth
+	+tests_bluetooth_AdapterMDHealth
+	+tests_bluetooth_AdapterMTBF
+	+tests_bluetooth_AdapterPowerMeasure
+	+tests_bluetooth_AdapterQuickHealth
+	+tests_bluetooth_AdapterRvR
+	+tests_bluetooth_AdapterSAHealth
+	+tests_bluetooth_AdapterSRHealth
+	+tests_bluetooth_PeerUpdate
+	+tests_bluetooth_PeerVerify
+"
+
+IUSE_TESTS="${IUSE_TESTS}
+	${SERVER_IUSE_TESTS}
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-server-tests-bluetooth/autotest-server-tests-bluetooth-9999.ebuild b/chromeos-base/autotest-server-tests-bluetooth/autotest-server-tests-bluetooth-9999.ebuild
index 8eb25cf..cd782f2 100644
--- a/chromeos-base/autotest-server-tests-bluetooth/autotest-server-tests-bluetooth-9999.ebuild
+++ b/chromeos-base/autotest-server-tests-bluetooth/autotest-server-tests-bluetooth-9999.ebuild
@@ -37,9 +37,11 @@
 	+tests_bluetooth_AdapterMTBF
 	+tests_bluetooth_AdapterPowerMeasure
 	+tests_bluetooth_AdapterQuickHealth
+	+tests_bluetooth_AdapterRvR
 	+tests_bluetooth_AdapterSAHealth
 	+tests_bluetooth_AdapterSRHealth
 	+tests_bluetooth_PeerUpdate
+	+tests_bluetooth_PeerVerify
 "
 
 IUSE_TESTS="${IUSE_TESTS}
diff --git a/chromeos-base/autotest-server-tests-shill/autotest-server-tests-shill-0.0.1-r3402.ebuild b/chromeos-base/autotest-server-tests-shill/autotest-server-tests-shill-0.0.1-r3402.ebuild
deleted file mode 100644
index 98c2958..0000000
--- a/chromeos-base/autotest-server-tests-shill/autotest-server-tests-shill-0.0.1-r3402.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="4"
-CROS_WORKON_COMMIT="776277f05c512cf1ff0033b55e58d4629e277cd5"
-CROS_WORKON_TREE="45230f81767e1e2835752c13a07d5ebd03df8a04"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest
-
-DESCRIPTION="Autotest server tests for shill"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-# Enable autotest by default.
-IUSE="-chromeless_tests +autotest -chromeless_tty"
-
-SERVER_IUSE_TESTS="
-	+tests_network_WiFi_APSupportedRates
-	+tests_network_WiFi_AssocConfigPerformance
-	+tests_network_WiFi_AttenuatedPerf
-	+tests_network_WiFi_BeaconInterval
-	+tests_network_WiFi_BgscanBackoff
-	+tests_network_WiFi_BluetoothScanPerf
-	+tests_network_WiFi_BluetoothStreamPerf
-	+tests_network_WiFi_BSSTMReq
-	+tests_network_WiFi_BT_AntennaCoex
-	+tests_network_WiFi_ChannelHop
-	+tests_network_WiFi_ChannelScanDwellTime
-	+tests_network_WiFi_ChaosConfigFailure
-	+tests_network_WiFi_ChaosConnectDisconnect
-	+tests_network_WiFi_ChaosLongConnect
-	!chromeless_tty (
-		!chromeless_tests (
-			+tests_cellular_ChromeEndToEnd
-			+tests_network_WiFi_ChromeEndToEnd
-			+tests_network_WiFi_RoamEndToEnd
-			+tests_network_WiFi_RoamSuspendEndToEnd
-		)
-	)
-	+tests_network_WiFi_CSA
-	+tests_network_WiFi_DarkResumeActiveScans
-	+tests_network_WiFi_DisableEnable
-	+tests_network_WiFi_DisableRandomMACAddress
-	+tests_network_WiFi_DisconnectReason
-	+tests_network_WiFi_DTIMPeriod
-	+tests_network_WiFi_FastReconnectInDarkResume
-	+tests_network_WiFi_GTK
-	+tests_network_WiFi_HiddenRemains
-	+tests_network_WiFi_HiddenScan
-	+tests_network_WiFi_LinkMonitorFailure
-	+tests_network_WiFi_MalformedProbeResp
-	+tests_network_WiFi_MultiAuth
-	+tests_network_WiFi_OverlappingBSSScan
-	+tests_network_WiFi_Perf
-	+tests_network_WiFi_PMKSACaching
-	+tests_network_WiFi_Prefer5Ghz
-	+tests_network_WiFi_ProfileBasic
-	+tests_network_WiFi_ProfileGUID
-	+tests_network_WiFi_PTK
-	+tests_network_WiFi_RandomMACAddress
-	+tests_network_WiFi_Reassociate
-	+tests_network_WiFi_ReconnectInDarkResume
-	+tests_network_WiFi_Reset
-	+tests_network_WiFi_Roam
-	+tests_network_WiFi_RoamDbus
-	+tests_network_WiFi_RoamFT
-	+tests_network_WiFi_RoamSuspendTimeout
-	+tests_network_WiFi_SecChange
-	+tests_network_WiFi_SetOptionalDhcpProperties
-	+tests_network_WiFi_SimpleConnect
-	+tests_network_WiFi_SSIDSwitchBack
-	+tests_network_WiFi_SuspendStress
-	+tests_network_WiFi_StressTest
-	+tests_network_WiFi_Throttle
-	+tests_network_WiFi_UpdateRouter
-	+tests_network_WiFi_VerifyRouter
-	+tests_network_WiFi_VisibleScan
-	+tests_network_WiFi_WakeOnDisconnect
-	+tests_network_WiFi_WakeOnSSID
-	+tests_network_WiFi_WakeOnWiFiThrottling
-	+tests_network_WiFi_WoWLAN
-	+tests_network_WiFi_WMM
-"
-
-IUSE_TESTS="${IUSE_TESTS}
-	${SERVER_IUSE_TESTS}
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-server-tests-shill/autotest-server-tests-shill-0.0.1-r3421.ebuild b/chromeos-base/autotest-server-tests-shill/autotest-server-tests-shill-0.0.1-r3421.ebuild
new file mode 100644
index 0000000..4177342
--- /dev/null
+++ b/chromeos-base/autotest-server-tests-shill/autotest-server-tests-shill-0.0.1-r3421.ebuild
@@ -0,0 +1,96 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="4"
+CROS_WORKON_COMMIT="639c12b624d19d7548204c3ac237803173ebbb80"
+CROS_WORKON_TREE="4bfc6c7b6e90fd08be968ca4568a956a5b6c3f38"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest
+
+DESCRIPTION="Autotest server tests for shill"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+
+# Enable autotest by default.
+IUSE="-chromeless_tests +autotest -chromeless_tty"
+
+SERVER_IUSE_TESTS="
+	+tests_network_WiFi_APSupportedRates
+	+tests_network_WiFi_AssocConfigPerformance
+	+tests_network_WiFi_AttenuatedPerf
+	+tests_network_WiFi_BeaconInterval
+	+tests_network_WiFi_BgscanBackoff
+	+tests_network_WiFi_BluetoothScanPerf
+	+tests_network_WiFi_BluetoothStreamPerf
+	+tests_network_WiFi_BSSTMReq
+	+tests_network_WiFi_BT_AntennaCoex
+	+tests_network_WiFi_ChannelHop
+	+tests_network_WiFi_ChannelScanDwellTime
+	+tests_network_WiFi_ChaosConfigFailure
+	+tests_network_WiFi_ChaosConnectDisconnect
+	+tests_network_WiFi_ChaosLongConnect
+	!chromeless_tty (
+		!chromeless_tests (
+			+tests_cellular_ChromeEndToEnd
+			+tests_network_WiFi_ChromeEndToEnd
+			+tests_network_WiFi_RoamEndToEnd
+			+tests_network_WiFi_RoamSuspendEndToEnd
+		)
+	)
+	+tests_network_WiFi_CSA
+	+tests_network_WiFi_DarkResumeActiveScans
+	+tests_network_WiFi_DisableEnable
+	+tests_network_WiFi_DisableRandomMACAddress
+	+tests_network_WiFi_DisconnectReason
+	+tests_network_WiFi_DTIMPeriod
+	+tests_network_WiFi_FastReconnectInDarkResume
+	+tests_network_WiFi_GTK
+	+tests_network_WiFi_HiddenRemains
+	+tests_network_WiFi_HiddenScan
+	+tests_network_WiFi_LinkMonitorFailure
+	+tests_network_WiFi_MalformedProbeResp
+	+tests_network_WiFi_MultiAuth
+	+tests_network_WiFi_OverlappingBSSScan
+	+tests_network_WiFi_Perf
+	+tests_network_WiFi_PMKSACaching
+	+tests_network_WiFi_Prefer5Ghz
+	+tests_network_WiFi_ProfileBasic
+	+tests_network_WiFi_ProfileGUID
+	+tests_network_WiFi_PTK
+	+tests_network_WiFi_RandomMACAddress
+	+tests_network_WiFi_Reassociate
+	+tests_network_WiFi_ReconnectInDarkResume
+	+tests_network_WiFi_Reset
+	+tests_network_WiFi_Roam
+	+tests_network_WiFi_RoamDbus
+	+tests_network_WiFi_RoamFT
+	+tests_network_WiFi_RoamSuspendTimeout
+	+tests_network_WiFi_SecChange
+	+tests_network_WiFi_SetOptionalDhcpProperties
+	+tests_network_WiFi_SimpleConnect
+	+tests_network_WiFi_SSIDSwitchBack
+	+tests_network_WiFi_SuspendStress
+	+tests_network_WiFi_StressTest
+	+tests_network_WiFi_Throttle
+	+tests_network_WiFi_UpdateRouter
+	+tests_network_WiFi_VerifyRouter
+	+tests_network_WiFi_VisibleScan
+	+tests_network_WiFi_WakeOnDisconnect
+	+tests_network_WiFi_WakeOnSSID
+	+tests_network_WiFi_WakeOnWiFiThrottling
+	+tests_network_WiFi_WoWLAN
+	+tests_network_WiFi_WMM
+"
+
+IUSE_TESTS="${IUSE_TESTS}
+	${SERVER_IUSE_TESTS}
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-server-tests-tast/autotest-server-tests-tast-0.0.1-r206.ebuild b/chromeos-base/autotest-server-tests-tast/autotest-server-tests-tast-0.0.1-r206.ebuild
deleted file mode 100644
index 2eba9b3..0000000
--- a/chromeos-base/autotest-server-tests-tast/autotest-server-tests-tast-0.0.1-r206.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="db0799fdd3989ae3c6e92f8a8583a7515a496435"
-CROS_WORKON_TREE="92d41e1d76de84e19ce924a08931bf722c8a6b57"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest
-
-DESCRIPTION="Autotest server tests for running Tast-based tests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast/"
-SRC_URI=""
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-IUSE="+autotest"
-
-RDEPEND=""
-DEPEND=""
-
-IUSE_TESTS="
-	+tests_graphics_TraceReplayExtended
-	+tests_tast
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-server-tests-tast/autotest-server-tests-tast-0.0.1-r259.ebuild b/chromeos-base/autotest-server-tests-tast/autotest-server-tests-tast-0.0.1-r259.ebuild
new file mode 100644
index 0000000..25811fb
--- /dev/null
+++ b/chromeos-base/autotest-server-tests-tast/autotest-server-tests-tast-0.0.1-r259.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="8762ad5dadb856469a84c99bfade783fb07ee144"
+CROS_WORKON_TREE="225864c65e752d1bfda0ce6cfe0d51a4547e5565"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest
+
+DESCRIPTION="Autotest server tests for running Tast-based tests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast/"
+SRC_URI=""
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+
+IUSE="+autotest"
+
+RDEPEND=""
+DEPEND=""
+
+IUSE_TESTS="
+	+tests_graphics_TraceReplayExtended
+	+tests_tast
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-server-tests/autotest-server-tests-0.0.2-r5175.ebuild b/chromeos-base/autotest-server-tests/autotest-server-tests-0.0.2-r5175.ebuild
deleted file mode 100644
index 3bf8184..0000000
--- a/chromeos-base/autotest-server-tests/autotest-server-tests-0.0.2-r5175.ebuild
+++ /dev/null
@@ -1,375 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-CROS_WORKON_COMMIT="573ffe2c31769ef60bc4f9dc037eca01d149345c"
-CROS_WORKON_TREE="f322f40e82140ffae58282b019287a4c64e642bc"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest
-
-DESCRIPTION="Autotest server tests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-# Enable autotest by default.
-IUSE="android-container android-container-pi android-vm-rvc +autotest biod +cellular +cheets_user cheets_user_64 cheets_userdebug_64 -chromeless_tests -chromeless_tty cros_p2p debugd dlc_test has-kernelnext is-kernelnext -moblab +power_management +readahead +tpm tpm2"
-REQUIRED_USE="?? ( has-kernelnext is-kernelnext )"
-
-RDEPEND=""
-DEPEND="${RDEPEND}
-	!<chromeos-base/autotest-0.0.2
-"
-
-SERVER_IUSE_TESTS="
-	+tests_android_ACTS
-	+tests_android_EasySetup
-	+tests_audio_AudioAfterReboot
-	+tests_audio_AudioAfterSuspend
-	+tests_audio_AudioArtifacts
-	+tests_audio_AudioBasicAssistant
-	+tests_audio_AudioBasicBluetoothPlayback
-	+tests_audio_AudioBasicBluetoothPlaybackRecord
-	+tests_audio_AudioBasicBluetoothRecord
-	+tests_audio_AudioBasicExternalMicrophone
-	+tests_audio_AudioBasicHDMI
-	+tests_audio_AudioBasicHeadphone
-	+tests_audio_AudioBasicHotwording
-	+tests_audio_AudioBasicInternalMicrophone
-	+tests_audio_AudioBasicInternalSpeaker
-	+tests_audio_AudioBasicUSBPlayback
-	+tests_audio_AudioBasicUSBPlaybackRecord
-	+tests_audio_AudioBasicUSBRecord
-	+tests_audio_AudioBluetoothConnectionStability
-	+tests_audio_AudioNodeSwitch
-	+tests_audio_AudioPinnedStream
-	+tests_audio_AudioQualityAfterSuspend
-	+tests_audio_AudioTestAssumptionCheck
-	+tests_audio_AudioVolume
-	+tests_audio_AudioWebRTCLoopback
-	+tests_audio_InternalCardNodes
-	+tests_audio_LeftRightInternalSpeaker
-	+tests_audio_MediaBasicVerification
-	+tests_audio_PowerConsumption
-	+tests_audiovideo_AVSync
-	+tests_autoupdate_Basic
-	+tests_autoupdate_CatchBadSignatures
-	+tests_autoupdate_Cellular
-	+tests_autoupdate_ConsecutiveUpdatesBeforeReboot
-	+tests_autoupdate_DataPreserved
-	+tests_autoupdate_ForcedOOBEUpdate
-	+tests_autoupdate_FromUI
-	+tests_autoupdate_Interruptions
-	+tests_autoupdate_NonBlockingOOBEUpdate
-	+tests_autoupdate_OmahaResponse
-	+tests_autoupdate_P2P
-	+tests_autoupdate_Periodic
-	+tests_autoupdate_RejectDuplicateUpdate
-	+tests_autoupdate_Rollback
-	dlc_test? ( +tests_autoupdate_WithDLC )
-	has-kernelnext? ( +tests_autoupdate_StatefulCompatibility )
-	is-kernelnext? ( +tests_autoupdate_StatefulCompatibility )
-	cellular? ( +tests_cellular_StaleModemReboot )
-	android-container-pi? (
-		cheets_user? (
-			+tests_cheets_CTS_Instant
-			+tests_cheets_CTS_P
-			+tests_cheets_GTS
-		)
-		cheets_user_64? (
-			+tests_cheets_CTS_Instant
-			+tests_cheets_CTS_P
-			+tests_cheets_GTS
-		)
-	)
-	android-vm-rvc? (
-		cheets_user_64? (
-			+tests_cheets_CTS_R
-			+tests_cheets_GTS_R
-		)
-		cheets_userdebug_64? (
-			+tests_cheets_VTS_R
-		)
-	)
-	+tests_cellular_Callbox_AssertCellularData
-	+tests_cheets_LabDependencies
-	debugd? ( +tests_debugd_DevTools )
-	+tests_crosperf_Wrapper
-	+tests_display_EdidStress
-	+tests_display_HDCPScreen
-	+tests_display_HotPlugAtBoot
-	+tests_display_HotPlugAtSuspend
-	+tests_display_HotPlugNoisy
-	+tests_display_LidCloseOpen
-	+tests_display_NoEdid
-	+tests_display_Resolution
-	+tests_display_ResolutionList
-	+tests_display_ServerChameleonConnection
-	+tests_display_SuspendStress
-	+tests_display_SwitchMode
-	+tests_dummy_PassServer
-	+tests_dummy_FailServer
-	+tests_dummy_FlakyTestServer
-	+tests_stub_SynchronousOffloadServer
-	+tests_enterprise_ClearTPM
-	+tests_enterprise_KioskEnrollmentServer
-	+tests_enterprise_LongevityTrackerServer
-	+tests_enterprise_OnlineDemoMode
-	+tests_factory_Basic
-	+tests_firmware_Bmpblk
-	+tests_firmware_CgptStress
-	+tests_firmware_ClearTPMOwnerAndReset
-	+tests_firmware_ConsecutiveBoot
-	+tests_firmware_ConsecutiveBootPowerButton
-	+tests_firmware_ConsecutiveLidSwitch
-	+tests_firmware_CorruptBothFwBodyAB
-	+tests_firmware_CorruptBothFwSigAB
-	+tests_firmware_CorruptBothKernelAB
-	+tests_firmware_CorruptFwBodyA
-	+tests_firmware_CorruptFwBodyB
-	+tests_firmware_CorruptFwSigA
-	+tests_firmware_CorruptFwSigB
-	+tests_firmware_CorruptKernelA
-	+tests_firmware_CorruptKernelB
-	+tests_firmware_CorruptRecoveryCache
-	+tests_firmware_Cr50BID
-	+tests_firmware_Cr50CCDServoCap
-	+tests_firmware_Cr50CCDUartStress
-	+tests_firmware_Cr50CheckCap
-	+tests_firmware_Cr50ConsoleCommands
-	+tests_firmware_Cr50DeepSleepStress
-	+tests_firmware_Cr50DeferredECReset
-	+tests_firmware_Cr50DeviceState
-	+tests_firmware_Cr50DevMode
-	+tests_firmware_Cr50ECReset
-	+tests_firmware_Cr50FactoryResetVC
-	+tests_firmware_Cr50CCDFirmwareUpdate
-	+tests_firmware_Cr50GetName
-	+tests_firmware_Cr50InvalidateRW
-	+tests_firmware_Cr50Keygen
-	+tests_firmware_Cr50Open
-	+tests_firmware_Cr50OpenWhileAPOff
-	+tests_firmware_Cr50PartialBoardId
-	+tests_firmware_Cr50Password
-	+tests_firmware_Cr50PinWeaverServer
-	+tests_firmware_Cr50RddG3
-	+tests_firmware_Cr50RejectUpdate
-	+tests_firmware_Cr50RMAOpen
-	+tests_firmware_Cr50SetBoardId
-	+tests_firmware_Cr50ShortECC
-	+tests_firmware_Cr50Testlab
-	+tests_firmware_Cr50TpmManufactured
-	+tests_firmware_Cr50TpmMode
-	+tests_firmware_Cr50U2fCommands
-	+tests_firmware_Cr50Unlock
-	+tests_firmware_Cr50Update
-	+tests_firmware_Cr50UpdateScriptStress
-	+tests_firmware_Cr50USB
-	+tests_firmware_Cr50VerifyEK
-	+tests_firmware_Cr50WilcoEcrst
-	+tests_firmware_Cr50WilcoRmaFactoryMode
-	+tests_firmware_Cr50WPG3
-	+tests_firmware_CsmeFwUpdate
-	+tests_firmware_DevBootUSB
-	+tests_firmware_DevDefaultBoot
-	+tests_firmware_DevMode
-	+tests_firmware_DevModeStress
-	+tests_firmware_DevScreenTimeout
-	+tests_firmware_ECBattery
-	+tests_firmware_ECBootTime
-	+tests_firmware_ECCbiEeprom
-	+tests_firmware_ECCharging
-	+tests_firmware_ECChargingState
-	+tests_firmware_ECHash
-	+tests_firmware_ECKeyboard
-	+tests_firmware_ECKeyboardReboot
-	+tests_firmware_ECLidShutdown
-	+tests_firmware_ECLidSwitch
-	+tests_firmware_ECPowerButton
-	+tests_firmware_ECPowerG3
-	+tests_firmware_ECSharedMem
-	+tests_firmware_ECSystemLocked
-	+tests_firmware_ECThermal
-	+tests_firmware_ECUpdateId
-	+tests_firmware_ECUsbPorts
-	+tests_firmware_ECWakeSource
-	+tests_firmware_ECWatchdog
-	+tests_firmware_EmmcWriteLoad
-	+tests_firmware_EventLog
-	+tests_firmware_FAFTPrepare
-	+tests_firmware_FAFTModeTransitions
-	+tests_firmware_FAFTRPC
-	+tests_firmware_FAFTSetup
-	biod? (
-		+tests_firmware_Fingerprint
-		+tests_firmware_FingerprintCrosConfig
-		+tests_firmware_FingerprintSigner
-	)
-	+tests_firmware_FMap
-	+tests_firmware_FWMPDisableCCD
-	+tests_firmware_FwScreenCloseLid
-	+tests_firmware_FwScreenPressPower
-	+tests_firmware_FWupdateWP
-	+tests_firmware_FWtries
-	+tests_firmware_FWupdateThenSleep
-	+tests_firmware_FWupdateWP
-	+tests_firmware_IntegratedU2F
-	+tests_firmware_InvalidUSB
-	+tests_firmware_LegacyRecovery
-	+tests_firmware_MenuModeTransition
-	+tests_firmware_Mosys
-	+tests_firmware_PDConnect
-	+tests_firmware_PDDataSwap
-	+tests_firmware_PDPowerSwap
-	+tests_firmware_PDProtocol
-	+tests_firmware_PDResetHard
-	+tests_firmware_PDResetSoft
-	+tests_firmware_PDTrySrc
-	+tests_firmware_PDVbusRequest
-	+tests_firmware_RecoveryButton
-	+tests_firmware_RecoveryCacheBootKeys
-	+tests_firmware_RollbackFirmware
-	+tests_firmware_RollbackKernel
-	+tests_firmware_SelfSignedBoot
-	+tests_firmware_SetSerialNumber
-	+tests_firmware_SoftwareSync
-	+tests_firmware_StandbyPowerConsumption
-	+tests_firmware_SysfsVPD
-	+tests_firmware_TPMNotCorruptedDevMode
-	tpm? ( +tests_firmware_TPMExtend )
-	tpm? ( +tests_firmware_TPMVersionCheck )
-	tpm? ( +tests_firmware_TPMKernelVersion )
-	tpm2? ( +tests_firmware_TPMExtend )
-	tpm2? ( +tests_firmware_TPMVersionCheck )
-	tpm2? ( +tests_firmware_TPMKernelVersion )
-	+tests_firmware_TryFwB
-	+tests_firmware_TypeCCharging
-	+tests_firmware_TypeCProbeUSB3
-	+tests_firmware_UpdateFirmwareDataKeyVersion
-	+tests_firmware_UpdateFirmwareVersion
-	+tests_firmware_UpdateKernelDataKeyVersion
-	+tests_firmware_UpdateKernelSubkeyVersion
-	+tests_firmware_UpdateKernelVersion
-	+tests_firmware_UpdaterModes
-	+tests_firmware_UserRequestRecovery
-	+tests_firmware_WilcoDiagnosticsMode
-	+tests_firmware_WriteProtect
-	+tests_firmware_WriteProtectFunc
-	+tests_graphics_MultipleDisplays
-	+tests_graphics_PowerConsumption
-	+tests_hardware_DiskFirmwareUpgrade
-	+tests_hardware_MemoryIntegrity
-	+tests_hardware_StorageQual
-	+tests_hardware_StorageQualBase
-	+tests_hardware_StorageQualCheckSetup
-	+tests_hardware_StorageQualSuspendStress
-	+tests_hardware_StorageQualTrimStress
-	+tests_hardware_StorageQualV2
-	+tests_hardware_StorageStress
-	+tests_infra_TLSExecDUTCommand
-	+tests_kernel_EmptyLines
-	+tests_kernel_ExternalUsbPeripheralsDetectionTest
-	+tests_kernel_IdlePerf
-	+tests_kernel_MemoryRamoop
-	moblab? (
-		+tests_moblab_RunSuite
-		+tests_moblab_StorageQual
-	)
-	+tests_moblab_Setup
-	cros_p2p? ( +tests_p2p_EndToEndTest )
-	+tests_network_FirewallHolePunchServer
-	+tests_platform_ActivateDate
-	+tests_platform_BootDevice
-	+tests_platform_BootLockboxServer
-	+tests_platform_BootPerfServer
-	+tests_platform_CompromisedStatefulPartition
-	+tests_platform_CorruptRootfs
-	+tests_platform_CrashStateful
-	+tests_platform_ExternalUsbPeripherals
-	+tests_platform_FetchCloudConfig
-	+tests_platform_FlashErasers
-	+tests_platform_Flashrom
-	+tests_platform_HWwatchdog
-	+tests_platform_InitLoginPerfServer
-	+tests_platform_InstallTestImage
-	+tests_platform_InternalDisplay
-	+tests_platform_KernelErrorPaths
-	+tests_platform_MTBF
-	power_management? (
-		+tests_platform_PowerStatusStress
-		+tests_power_DeferForFlashrom
-		+tests_power_WakeSources
-	)
-	+tests_platform_Powerwash
-	+tests_platform_RotationFps
-	+tests_platform_ServoPowerStateController
-	+tests_platform_StageAndRecover
-	+tests_platform_SuspendResumeTiming
-	+tests_platform_SyncCrash
-	readahead? ( +tests_platform_UReadAheadServer )
-	+tests_platform_Vpd
-	+tests_policy_AUServer
-	+tests_policy_DeviceChargingServer
-	+tests_policy_DeviceServer
-	+tests_policy_ExternalStorageServer
-	+tests_policy_GlobalNetworkSettingsServer
-	+tests_policy_WiFiAutoconnectServer
-	+tests_policy_WiFiPrecedenceServer
-	+tests_policy_WiFiTypesServer
-	+tests_policy_WilcoServerDeviceDockMacAddressSource
-	+tests_policy_WilcoServerOnNonWilcoDevice
-	+tests_policy_WilcoServerUSBPowershare
-	+tests_power_BrightnessResetAfterReboot
-	+tests_power_ChargeControlWrapper
-	+tests_power_MeetCall
-	+tests_power_Monitoring
-	+tests_power_LW
-	+tests_power_PowerlogWrapper
-	+tests_power_RPMTest
-	+tests_power_ServoChargeStress
-	+tests_power_ServodWrapper
-	+tests_provision_CheetsUpdate
-	+tests_provision_Cr50TOT
-	+tests_provision_Cr50Update
-	+tests_provision_FactoryImage
-	+tests_provision_FirmwareUpdate
-	+tests_provision_QuickProvision
-	+tests_rlz_CheckPing
-	+tests_sequences
-	+tests_servo_LabControlVerification
-	+tests_servo_LabstationVerification
-	+tests_servo_USBMuxVerification
-	+tests_servo_LogGrab
-	+tests_servo_Verification
-	+tests_servohost_Reboot
-	+tests_stress_ClientTestReboot
-	+tests_stress_EnrollmentRetainment
-	+tests_stub_ServerToClientPass
-"
-
-IUSE_TESTS="${IUSE_TESTS}
-	${SERVER_IUSE_TESTS}
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
-
-INIT_FILE="__init__.py"
-
-src_install() {
-	# Make sure we install all |SERVER_IUSE_TESTS| first.
-	autotest_src_install
-	# Autotest depends on a few strategically placed INIT_FILEs to allow
-	# importing python code. In particular we want to allow importing
-	# server.site_tests.tast to be able to launch tast local tests.
-	# This INIT_FILE exists in git, but needs to be installed and finally
-	# packaged via chromite/lib/autotest_util.py into
-	# autotest_server_package.tar.bz2 to be served by devservers.
-	insinto "${AUTOTEST_BASE}/${AUTOTEST_SERVER_SITE_TESTS}"
-	doins "${AUTOTEST_SERVER_SITE_TESTS}/${INIT_FILE}"
-}
diff --git a/chromeos-base/autotest-server-tests/autotest-server-tests-0.0.2-r5325.ebuild b/chromeos-base/autotest-server-tests/autotest-server-tests-0.0.2-r5325.ebuild
new file mode 100644
index 0000000..1c360b5c
--- /dev/null
+++ b/chromeos-base/autotest-server-tests/autotest-server-tests-0.0.2-r5325.ebuild
@@ -0,0 +1,375 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest
+
+DESCRIPTION="Autotest server tests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+
+# Enable autotest by default.
+IUSE="android-container android-container-pi android-vm-rvc +autotest biod +cellular +cheets_user cheets_user_64 cheets_userdebug_64 -chromeless_tests -chromeless_tty cros_p2p debugd dlc_test has-kernelnext is-kernelnext -moblab +power_management +readahead +tpm tpm2"
+REQUIRED_USE="?? ( has-kernelnext is-kernelnext )"
+
+RDEPEND=""
+DEPEND="${RDEPEND}
+	!<chromeos-base/autotest-0.0.2
+"
+
+SERVER_IUSE_TESTS="
+	+tests_android_ACTS
+	+tests_android_EasySetup
+	+tests_audio_AudioAfterReboot
+	+tests_audio_AudioAfterSuspend
+	+tests_audio_AudioArtifacts
+	+tests_audio_AudioBasicAssistant
+	+tests_audio_AudioBasicBluetoothPlayback
+	+tests_audio_AudioBasicBluetoothPlaybackRecord
+	+tests_audio_AudioBasicBluetoothRecord
+	+tests_audio_AudioBasicExternalMicrophone
+	+tests_audio_AudioBasicHDMI
+	+tests_audio_AudioBasicHeadphone
+	+tests_audio_AudioBasicHotwording
+	+tests_audio_AudioBasicInternalMicrophone
+	+tests_audio_AudioBasicInternalSpeaker
+	+tests_audio_AudioBasicUSBPlayback
+	+tests_audio_AudioBasicUSBPlaybackRecord
+	+tests_audio_AudioBasicUSBRecord
+	+tests_audio_AudioBluetoothConnectionStability
+	+tests_audio_AudioNodeSwitch
+	+tests_audio_AudioNoiseCancellation
+	+tests_audio_AudioPinnedStream
+	+tests_audio_AudioQualityAfterSuspend
+	+tests_audio_AudioTestAssumptionCheck
+	+tests_audio_AudioVolume
+	+tests_audio_AudioWebRTCLoopback
+	+tests_audio_InternalCardNodes
+	+tests_audio_LeftRightInternalSpeaker
+	+tests_audio_MediaBasicVerification
+	+tests_audio_PowerConsumption
+	+tests_audiovideo_AVSync
+	+tests_autoupdate_Basic
+	+tests_autoupdate_CatchBadSignatures
+	+tests_autoupdate_Cellular
+	+tests_autoupdate_ConsecutiveUpdatesBeforeReboot
+	+tests_autoupdate_DataPreserved
+	+tests_autoupdate_ForcedOOBEUpdate
+	+tests_autoupdate_FromUI
+	+tests_autoupdate_Interruptions
+	+tests_autoupdate_NonBlockingOOBEUpdate
+	+tests_autoupdate_OmahaResponse
+	+tests_autoupdate_P2P
+	+tests_autoupdate_Periodic
+	+tests_autoupdate_RejectDuplicateUpdate
+	+tests_autoupdate_Rollback
+	dlc_test? ( +tests_autoupdate_WithDLC )
+	has-kernelnext? ( +tests_autoupdate_StatefulCompatibility )
+	is-kernelnext? ( +tests_autoupdate_StatefulCompatibility )
+	cellular? ( +tests_cellular_StaleModemReboot )
+	android-container-pi? (
+		cheets_user? (
+			+tests_cheets_CTS_Instant
+			+tests_cheets_CTS_P
+		)
+		cheets_user_64? (
+			+tests_cheets_CTS_Instant
+			+tests_cheets_CTS_P
+		)
+	)
+	android-vm-rvc? (
+		cheets_user_64? (
+			+tests_cheets_CTS_R
+		)
+		cheets_userdebug_64? (
+			+tests_cheets_VTS_R
+		)
+	)
+	+tests_cellular_Callbox_AssertCellularData
+	+tests_cellular_Callbox_AssertSMS
+	+tests_cheets_LabDependencies
+	debugd? ( +tests_debugd_DevTools )
+	+tests_crosperf_Wrapper
+	+tests_display_EdidStress
+	+tests_display_HDCPScreen
+	+tests_display_HotPlugAtBoot
+	+tests_display_HotPlugAtSuspend
+	+tests_display_HotPlugNoisy
+	+tests_display_LidCloseOpen
+	+tests_display_NoEdid
+	+tests_display_Resolution
+	+tests_display_ResolutionList
+	+tests_display_ServerChameleonConnection
+	+tests_display_SuspendStress
+	+tests_display_SwitchMode
+	+tests_enterprise_ClearTPM
+	+tests_enterprise_KioskEnrollmentServer
+	+tests_enterprise_LongevityTrackerServer
+	+tests_enterprise_OnlineDemoMode
+	+tests_factory_Basic
+	+tests_firmware_Bmpblk
+	+tests_firmware_CgptStress
+	+tests_firmware_ClearTPMOwnerAndReset
+	+tests_firmware_ConsecutiveBoot
+	+tests_firmware_ConsecutiveBootPowerButton
+	+tests_firmware_ConsecutiveLidSwitch
+	+tests_firmware_CorruptBothFwBodyAB
+	+tests_firmware_CorruptBothFwSigAB
+	+tests_firmware_CorruptBothKernelAB
+	+tests_firmware_CorruptFwBodyA
+	+tests_firmware_CorruptFwBodyB
+	+tests_firmware_CorruptFwSigA
+	+tests_firmware_CorruptFwSigB
+	+tests_firmware_CorruptKernelA
+	+tests_firmware_CorruptKernelB
+	+tests_firmware_CorruptRecoveryCache
+	+tests_firmware_Cr50BID
+	+tests_firmware_Cr50CCDServoCap
+	+tests_firmware_Cr50CCDUartStress
+	+tests_firmware_Cr50CheckCap
+	+tests_firmware_Cr50ConsoleCommands
+	+tests_firmware_Cr50DeepSleepStress
+	+tests_firmware_Cr50DeferredECReset
+	+tests_firmware_Cr50DeviceState
+	+tests_firmware_Cr50DevMode
+	+tests_firmware_Cr50ECReset
+	+tests_firmware_Cr50FactoryResetVC
+	+tests_firmware_Cr50CCDFirmwareUpdate
+	+tests_firmware_Cr50GetName
+	+tests_firmware_Cr50InvalidateRW
+	+tests_firmware_Cr50Keygen
+	+tests_firmware_Cr50Open
+	+tests_firmware_Cr50OpenWhileAPOff
+	+tests_firmware_Cr50PartialBoardId
+	+tests_firmware_Cr50Password
+	+tests_firmware_Cr50PinWeaverServer
+	+tests_firmware_Cr50RddG3
+	+tests_firmware_Cr50RejectUpdate
+	+tests_firmware_Cr50RMAOpen
+	+tests_firmware_Cr50SetBoardId
+	+tests_firmware_Cr50ShortECC
+	+tests_firmware_Cr50Testlab
+	+tests_firmware_Cr50TpmManufactured
+	+tests_firmware_Cr50TpmMode
+	+tests_firmware_Cr50U2fCommands
+	+tests_firmware_Cr50Unlock
+	+tests_firmware_Cr50Update
+	+tests_firmware_Cr50UpdateScriptStress
+	+tests_firmware_Cr50USB
+	+tests_firmware_Cr50VerifyEK
+	+tests_firmware_Cr50WilcoEcrst
+	+tests_firmware_Cr50WilcoRmaFactoryMode
+	+tests_firmware_Cr50WPG3
+	+tests_firmware_CsmeFwUpdate
+	+tests_firmware_DevBootUSB
+	+tests_firmware_DevDefaultBoot
+	+tests_firmware_DevMode
+	+tests_firmware_DevModeStress
+	+tests_firmware_DevScreenTimeout
+	+tests_firmware_ECBattery
+	+tests_firmware_ECBootTime
+	+tests_firmware_ECCbiEeprom
+	+tests_firmware_ECCharging
+	+tests_firmware_ECChargingState
+	+tests_firmware_ECHash
+	+tests_firmware_ECKeyboard
+	+tests_firmware_ECKeyboardReboot
+	+tests_firmware_ECLidShutdown
+	+tests_firmware_ECLidSwitch
+	+tests_firmware_ECPowerButton
+	+tests_firmware_ECPowerG3
+	+tests_firmware_ECSharedMem
+	+tests_firmware_ECSystemLocked
+	+tests_firmware_ECThermal
+	+tests_firmware_ECUpdateId
+	+tests_firmware_ECUsbPorts
+	+tests_firmware_ECWakeFromULP
+	+tests_firmware_ECWakeSource
+	+tests_firmware_ECWatchdog
+	+tests_firmware_EmmcWriteLoad
+	+tests_firmware_EventLog
+	+tests_firmware_FAFTPrepare
+	+tests_firmware_FAFTModeTransitions
+	+tests_firmware_FAFTRPC
+	+tests_firmware_FAFTSetup
+	biod? (
+		+tests_firmware_Fingerprint
+		+tests_firmware_FingerprintCrosConfig
+		+tests_firmware_FingerprintSigner
+	)
+	+tests_firmware_FMap
+	+tests_firmware_FWMPDisableCCD
+	+tests_firmware_FwScreenCloseLid
+	+tests_firmware_FwScreenPressPower
+	+tests_firmware_FWupdateWP
+	+tests_firmware_FWtries
+	+tests_firmware_FWupdateThenSleep
+	+tests_firmware_FWupdateWP
+	+tests_firmware_IntegratedU2F
+	+tests_firmware_InvalidUSB
+	+tests_firmware_LegacyRecovery
+	+tests_firmware_MenuModeTransition
+	+tests_firmware_MiniDiag
+	+tests_firmware_Mosys
+	+tests_firmware_PDConnect
+	+tests_firmware_PDDataSwap
+	+tests_firmware_PDPowerSwap
+	+tests_firmware_PDProtocol
+	+tests_firmware_PDResetHard
+	+tests_firmware_PDResetSoft
+	+tests_firmware_PDTrySrc
+	+tests_firmware_PDVbusRequest
+	+tests_firmware_RecoveryButton
+	+tests_firmware_RecoveryCacheBootKeys
+	+tests_firmware_RollbackFirmware
+	+tests_firmware_RollbackKernel
+	+tests_firmware_SelfSignedBoot
+	+tests_firmware_SetSerialNumber
+	+tests_firmware_SoftwareSync
+	+tests_firmware_StandbyPowerConsumption
+	+tests_firmware_SysfsVPD
+	+tests_firmware_TPMNotCorruptedDevMode
+	tpm? ( +tests_firmware_TPMExtend )
+	tpm? ( +tests_firmware_TPMVersionCheck )
+	tpm? ( +tests_firmware_TPMKernelVersion )
+	tpm2? ( +tests_firmware_TPMExtend )
+	tpm2? ( +tests_firmware_TPMVersionCheck )
+	tpm2? ( +tests_firmware_TPMKernelVersion )
+	+tests_firmware_TryFwB
+	+tests_firmware_TypeCCharging
+	+tests_firmware_TypeCProbeUSB3
+	+tests_firmware_UpdateFirmwareDataKeyVersion
+	+tests_firmware_UpdateFirmwareVersion
+	+tests_firmware_UpdateKernelDataKeyVersion
+	+tests_firmware_UpdateKernelSubkeyVersion
+	+tests_firmware_UpdateKernelVersion
+	+tests_firmware_UpdaterModes
+	+tests_firmware_UserRequestRecovery
+	+tests_firmware_WilcoDiagnosticsMode
+	+tests_firmware_WriteProtect
+	+tests_firmware_WriteProtectFunc
+	+tests_graphics_MultipleDisplays
+	+tests_graphics_PowerConsumption
+	+tests_hardware_DiskFirmwareUpgrade
+	+tests_hardware_MemoryIntegrity
+	+tests_hardware_StorageQual
+	+tests_hardware_StorageQualBase
+	+tests_hardware_StorageQualCheckSetup
+	+tests_hardware_StorageQualSuspendStress
+	+tests_hardware_StorageQualTrimStress
+	+tests_hardware_StorageQualV2
+	+tests_hardware_StorageStress
+	+tests_infra_ServerPythonVersion
+	+tests_infra_TLSExecDUTCommand
+	+tests_kernel_EmptyLines
+	+tests_kernel_ExternalUsbPeripheralsDetectionTest
+	+tests_kernel_IdlePerf
+	+tests_kernel_MemoryRamoop
+	moblab? (
+		+tests_moblab_RunSuite
+		+tests_moblab_StorageQual
+	)
+	+tests_moblab_Setup
+	cros_p2p? ( +tests_p2p_EndToEndTest )
+	+tests_network_FirewallHolePunchServer
+	+tests_platform_ActivateDate
+	+tests_platform_BootDevice
+	+tests_platform_BootLockboxServer
+	+tests_platform_BootPerfServer
+	+tests_platform_CompromisedStatefulPartition
+	+tests_platform_CorruptRootfs
+	+tests_platform_CrashStateful
+	+tests_platform_ExternalUsbPeripherals
+	+tests_platform_FetchCloudConfig
+	+tests_platform_FlashErasers
+	+tests_platform_Flashrom
+	+tests_platform_HWwatchdog
+	+tests_platform_InitLoginPerfServer
+	+tests_platform_InstallTestImage
+	+tests_platform_InternalDisplay
+	+tests_platform_KernelErrorPaths
+	+tests_platform_MTBF
+	power_management? (
+		+tests_platform_PowerStatusStress
+		+tests_power_DeferForFlashrom
+		+tests_power_WakeSources
+	)
+	+tests_platform_Powerwash
+	+tests_platform_RotationFps
+	+tests_platform_ServoPowerStateController
+	+tests_platform_StageAndRecover
+	+tests_platform_SyncCrash
+	readahead? ( +tests_platform_UReadAheadServer )
+	+tests_platform_Vpd
+	+tests_policy_AUServer
+	+tests_policy_DeviceChargingServer
+	+tests_policy_DeviceServer
+	+tests_policy_ExternalStorageServer
+	+tests_policy_GlobalNetworkSettingsServer
+	+tests_policy_WiFiAutoconnectServer
+	+tests_policy_WiFiPrecedenceServer
+	+tests_policy_WiFiTypesServer
+	+tests_policy_WilcoServerDeviceDockMacAddressSource
+	+tests_policy_WilcoServerOnNonWilcoDevice
+	+tests_policy_WilcoServerUSBPowershare
+	+tests_power_BrightnessResetAfterReboot
+	+tests_power_ChargeControlWrapper
+	+tests_power_MeetCall
+	+tests_power_Monitoring
+	+tests_power_LW
+	+tests_power_PowerlogWrapper
+	+tests_power_RPMTest
+	+tests_power_ServoChargeStress
+	+tests_power_ServodWrapper
+	+tests_provision_CheetsUpdate
+	+tests_provision_Cr50TOT
+	+tests_provision_Cr50Update
+	+tests_provision_FactoryImage
+	+tests_provision_FirmwareUpdate
+	+tests_provision_QuickProvision
+	+tests_rlz_CheckPing
+	+tests_sequences
+	+tests_servo_LabControlVerification
+	+tests_servo_LabstationVerification
+	+tests_servo_USBMuxVerification
+	+tests_servo_LogGrab
+	+tests_servo_Verification
+	+tests_servohost_Reboot
+	+tests_stress_ClientTestReboot
+	+tests_stress_EnrollmentRetainment
+	+tests_stub_FailServer
+	+tests_stub_PassServer
+	+tests_stub_ServerToClientPass
+	+tests_stub_SynchronousOffloadServer
+"
+
+IUSE_TESTS="${IUSE_TESTS}
+	${SERVER_IUSE_TESTS}
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+INIT_FILE="__init__.py"
+
+src_install() {
+	# Make sure we install all |SERVER_IUSE_TESTS| first.
+	autotest_src_install
+	# Autotest depends on a few strategically placed INIT_FILEs to allow
+	# importing python code. In particular we want to allow importing
+	# server.site_tests.tast to be able to launch tast local tests.
+	# This INIT_FILE exists in git, but needs to be installed and finally
+	# packaged via chromite/lib/autotest_util.py into
+	# autotest_server_package.tar.bz2 to be served by devservers.
+	insinto "${AUTOTEST_BASE}/${AUTOTEST_SERVER_SITE_TESTS}"
+	doins "${AUTOTEST_SERVER_SITE_TESTS}/${INIT_FILE}"
+}
diff --git a/chromeos-base/autotest-server-tests/autotest-server-tests-9999.ebuild b/chromeos-base/autotest-server-tests/autotest-server-tests-9999.ebuild
index 27a6ce0..3003a85 100644
--- a/chromeos-base/autotest-server-tests/autotest-server-tests-9999.ebuild
+++ b/chromeos-base/autotest-server-tests/autotest-server-tests-9999.ebuild
@@ -44,6 +44,7 @@
 	+tests_audio_AudioBasicUSBRecord
 	+tests_audio_AudioBluetoothConnectionStability
 	+tests_audio_AudioNodeSwitch
+	+tests_audio_AudioNoiseCancellation
 	+tests_audio_AudioPinnedStream
 	+tests_audio_AudioQualityAfterSuspend
 	+tests_audio_AudioTestAssumptionCheck
@@ -76,24 +77,22 @@
 		cheets_user? (
 			+tests_cheets_CTS_Instant
 			+tests_cheets_CTS_P
-			+tests_cheets_GTS
 		)
 		cheets_user_64? (
 			+tests_cheets_CTS_Instant
 			+tests_cheets_CTS_P
-			+tests_cheets_GTS
 		)
 	)
 	android-vm-rvc? (
 		cheets_user_64? (
 			+tests_cheets_CTS_R
-			+tests_cheets_GTS_R
 		)
 		cheets_userdebug_64? (
 			+tests_cheets_VTS_R
 		)
 	)
 	+tests_cellular_Callbox_AssertCellularData
+	+tests_cellular_Callbox_AssertSMS
 	+tests_cheets_LabDependencies
 	debugd? ( +tests_debugd_DevTools )
 	+tests_crosperf_Wrapper
@@ -109,10 +108,6 @@
 	+tests_display_ServerChameleonConnection
 	+tests_display_SuspendStress
 	+tests_display_SwitchMode
-	+tests_dummy_PassServer
-	+tests_dummy_FailServer
-	+tests_dummy_FlakyTestServer
-	+tests_stub_SynchronousOffloadServer
 	+tests_enterprise_ClearTPM
 	+tests_enterprise_KioskEnrollmentServer
 	+tests_enterprise_LongevityTrackerServer
@@ -194,6 +189,7 @@
 	+tests_firmware_ECThermal
 	+tests_firmware_ECUpdateId
 	+tests_firmware_ECUsbPorts
+	+tests_firmware_ECWakeFromULP
 	+tests_firmware_ECWakeSource
 	+tests_firmware_ECWatchdog
 	+tests_firmware_EmmcWriteLoad
@@ -219,6 +215,7 @@
 	+tests_firmware_InvalidUSB
 	+tests_firmware_LegacyRecovery
 	+tests_firmware_MenuModeTransition
+	+tests_firmware_MiniDiag
 	+tests_firmware_Mosys
 	+tests_firmware_PDConnect
 	+tests_firmware_PDDataSwap
@@ -268,6 +265,7 @@
 	+tests_hardware_StorageQualTrimStress
 	+tests_hardware_StorageQualV2
 	+tests_hardware_StorageStress
+	+tests_infra_ServerPythonVersion
 	+tests_infra_TLSExecDUTCommand
 	+tests_kernel_EmptyLines
 	+tests_kernel_ExternalUsbPeripheralsDetectionTest
@@ -306,7 +304,6 @@
 	+tests_platform_RotationFps
 	+tests_platform_ServoPowerStateController
 	+tests_platform_StageAndRecover
-	+tests_platform_SuspendResumeTiming
 	+tests_platform_SyncCrash
 	readahead? ( +tests_platform_UReadAheadServer )
 	+tests_platform_Vpd
@@ -346,7 +343,10 @@
 	+tests_servohost_Reboot
 	+tests_stress_ClientTestReboot
 	+tests_stress_EnrollmentRetainment
+	+tests_stub_FailServer
+	+tests_stub_PassServer
 	+tests_stub_ServerToClientPass
+	+tests_stub_SynchronousOffloadServer
 "
 
 IUSE_TESTS="${IUSE_TESTS}
diff --git a/chromeos-base/autotest-tests-arc-public/autotest-tests-arc-public-0.0.1-r2008.ebuild b/chromeos-base/autotest-tests-arc-public/autotest-tests-arc-public-0.0.1-r2008.ebuild
deleted file mode 100644
index 2372044..0000000
--- a/chromeos-base/autotest-tests-arc-public/autotest-tests-arc-public-0.0.1-r2008.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-CROS_WORKON_COMMIT="0e103e3821ffbc575b67d6d9c426cac3ee4402b3"
-CROS_WORKON_TREE="210df4cb14c4f7c420a697e85e6a7bec211d5bed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit autotest cros-workon flag-o-matic
-
-DESCRIPTION="Public ARC autotests"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND="
-	dev-python/pyxattr
-	chromeos-base/chromeos-chrome
-	chromeos-base/autotest-chrome
-	chromeos-base/telemetry
-	"
-
-DEPEND="${RDEPEND}"
-
-IUSE="
-	+autotest
-"
-
-src_prepare() {
-	# Telemetry tests require the path to telemetry source to exist in order to
-	# build. Copy the telemetry source to a temporary directory that is writable,
-	# so that file removals in Telemetry source can be performed properly.
-	export TMP_DIR="$(mktemp -d)"
-	cp -r "${SYSROOT}/usr/local/telemetry" "${TMP_DIR}"
-	export PYTHONPATH="${TMP_DIR}/telemetry/src/third_party/catapult/telemetry"
-	autotest_src_prepare
-}
-
diff --git a/chromeos-base/autotest-tests-arc-public/autotest-tests-arc-public-0.0.1-r2460.ebuild b/chromeos-base/autotest-tests-arc-public/autotest-tests-arc-public-0.0.1-r2460.ebuild
new file mode 100644
index 0000000..01224d6
--- /dev/null
+++ b/chromeos-base/autotest-tests-arc-public/autotest-tests-arc-public-0.0.1-r2460.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit autotest cros-workon flag-o-matic
+
+DESCRIPTION="Public ARC autotests"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	dev-python/pyxattr
+	chromeos-base/chromeos-chrome
+	chromeos-base/autotest-chrome
+	chromeos-base/telemetry
+	"
+
+DEPEND="${RDEPEND}"
+
+IUSE="
+	+autotest
+"
+
+src_prepare() {
+	# Telemetry tests require the path to telemetry source to exist in order to
+	# build. Copy the telemetry source to a temporary directory that is writable,
+	# so that file removals in Telemetry source can be performed properly.
+	export TMP_DIR="$(mktemp -d)"
+	cp -r "${SYSROOT}/usr/local/telemetry" "${TMP_DIR}"
+	export PYTHONPATH="${TMP_DIR}/telemetry/src/third_party/catapult/telemetry"
+	autotest_src_prepare
+}
+
diff --git a/chromeos-base/autotest-tests-audio/autotest-tests-audio-0.0.1-r3219.ebuild b/chromeos-base/autotest-tests-audio/autotest-tests-audio-0.0.1-r3219.ebuild
deleted file mode 100644
index cb3cb00..0000000
--- a/chromeos-base/autotest-tests-audio/autotest-tests-audio-0.0.1-r3219.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="1866e839a7c7dc7d1fc1f6d31604edbf1ac1ac6e"
-CROS_WORKON_TREE="cb26b1124d2937d6e84fa895d1cdab8a4d3c5fd0"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest
-
-DESCRIPTION="Audio autotests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-# Enable autotest by default.
-IUSE="+autotest -chromeless_tty"
-
-RDEPEND="
-	!<chromeos-base/autotest-tests-0.0.3
-	chromeos-base/audiotest
-	!chromeless_tty? ( chromeos-base/telemetry )
-"
-DEPEND="${RDEPEND}"
-
-# audio_AudioInputGain and audio_CrasGetNodes depend on telemetry.
-IUSE_TESTS="
-	+tests_audio_Aconnect
-	+tests_audio_Aplay
-	!chromeless_tty? (
-		+tests_audio_AudioInputGain
-		+tests_audio_CrasGetNodes
-	)
-	+tests_audio_CRASFormatConversion
-	+tests_audio_CrasDevSwitchStress
-	+tests_audio_CrasPinnedStream
-	+tests_audio_CrasStress
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
-
-src_prepare() {
-	if ! use chromeless_tty; then
-		# Telemetry tests require the path to telemetry source to exist in order to
-		# build. Copy the telemetry source to a temporary directory that is writable,
-		# so that file removals in Telemetry source can be performed properly.
-		export TMP_DIR="$(mktemp -d)"
-		cp -r "${SYSROOT}/usr/local/telemetry" "${TMP_DIR}"
-		export PYTHONPATH="${TMP_DIR}/telemetry/src/third_party/catapult/telemetry"
-	fi
-	autotest_src_prepare
-}
diff --git a/chromeos-base/autotest-tests-audio/autotest-tests-audio-0.0.1-r3223.ebuild b/chromeos-base/autotest-tests-audio/autotest-tests-audio-0.0.1-r3223.ebuild
new file mode 100644
index 0000000..1befddc
--- /dev/null
+++ b/chromeos-base/autotest-tests-audio/autotest-tests-audio-0.0.1-r3223.ebuild
@@ -0,0 +1,57 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="db3c9910a759fda4da77084cdec402364516db88"
+CROS_WORKON_TREE="9c650cb5ccd492db4b3ca577d389ba67f31c3981"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest
+
+DESCRIPTION="Audio autotests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+# Enable autotest by default.
+IUSE="+autotest -chromeless_tty"
+
+RDEPEND="
+	!<chromeos-base/autotest-tests-0.0.3
+	chromeos-base/audiotest
+	!chromeless_tty? ( chromeos-base/telemetry )
+"
+DEPEND="${RDEPEND}"
+
+# audio_AudioInputGain and audio_CrasGetNodes depend on telemetry.
+IUSE_TESTS="
+	+tests_audio_Aconnect
+	+tests_audio_Aplay
+	!chromeless_tty? (
+		+tests_audio_AudioInputGain
+		+tests_audio_CrasGetNodes
+	)
+	+tests_audio_CRASFormatConversion
+	+tests_audio_CrasDevSwitchStress
+	+tests_audio_CrasPinnedStream
+	+tests_audio_CrasStress
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+src_prepare() {
+	if ! use chromeless_tty; then
+		# Telemetry tests require the path to telemetry source to exist in order to
+		# build. Copy the telemetry source to a temporary directory that is writable,
+		# so that file removals in Telemetry source can be performed properly.
+		export TMP_DIR="$(mktemp -d)"
+		cp -r "${SYSROOT}/usr/local/telemetry" "${TMP_DIR}"
+		export PYTHONPATH="${TMP_DIR}/telemetry/src/third_party/catapult/telemetry"
+	fi
+	autotest_src_prepare
+}
diff --git a/chromeos-base/autotest-tests-cellular/autotest-tests-cellular-0.0.1-r3257.ebuild b/chromeos-base/autotest-tests-cellular/autotest-tests-cellular-0.0.1-r3257.ebuild
deleted file mode 100644
index bd0b50b..0000000
--- a/chromeos-base/autotest-tests-cellular/autotest-tests-cellular-0.0.1-r3257.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="7517e96310872b85043a1b420dcdcbf1141bfc9b"
-CROS_WORKON_TREE="a3840d3e11f296901738b7aa519b87390dae70e7"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-
-inherit cros-workon autotest
-
-DESCRIPTION="Cellular autotests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-# Enable autotest by default.
-IUSE="${IUSE} +autotest"
-
-RDEPEND="
-	!<chromeos-base/autotest-tests-0.0.2
-	chromeos-base/autotest-deps-cellular
-	chromeos-base/shill-test-scripts
-	dev-python/pygobject
-	dev-python/pyusb
-	sys-apps/ethtool
-"
-DEPEND="${RDEPEND}"
-
-IUSE_TESTS="
-	+tests_cellular_ActivateLTE
-	+tests_cellular_ConnectFailure
-	+tests_cellular_DeferredRegistration
-	+tests_cellular_DisableWhileConnecting
-	+tests_cellular_DisconnectFailure
-	+tests_cellular_HermesErrorScenarios
-	+tests_cellular_HermesMM_InstallEnable
-	+tests_cellular_Hermes_MultiProfile
-	+tests_cellular_Hermes_Restart_SlotSwitch
-	+tests_cellular_Hermes_SingleProfile
-	+tests_cellular_Identifiers
-	+tests_cellular_OutOfCreditsSubscriptionState
-	+tests_cellular_SIMLocking
-	+tests_cellular_SafetyDance
-	+tests_cellular_ScanningProperty
-	+tests_cellular_ServiceName
-	+tests_cellular_Smoke
-	+tests_cellular_StressEnable
-	+tests_cellular_ValidateTestEnvironment
-"
-
-IUSE_MBIM_TESTS="
-	+tests_cellular_MbimComplianceControlCommand
-	+tests_cellular_MbimComplianceControlRequest
-	+tests_cellular_MbimComplianceDataTransfer
-	+tests_cellular_MbimComplianceDescriptor
-	+tests_cellular_MbimComplianceError
-"
-
-IUSE_TESTS="${IUSE_TESTS} ${IUSE_MBIM_TESTS}"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-AUTOTEST_DEPS_LIST=""
-AUTOTEST_CONFIG_LIST=""
-AUTOTEST_PROFILERS_LIST=""
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-cellular/autotest-tests-cellular-0.0.1-r3263.ebuild b/chromeos-base/autotest-tests-cellular/autotest-tests-cellular-0.0.1-r3263.ebuild
new file mode 100644
index 0000000..b78c471
--- /dev/null
+++ b/chromeos-base/autotest-tests-cellular/autotest-tests-cellular-0.0.1-r3263.ebuild
@@ -0,0 +1,71 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="8da525a7eb51a852cbe52eebe708c18e9a55ad0f"
+CROS_WORKON_TREE="7b710441cf7c35432389a56895d203a32362f7b4"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+
+inherit cros-workon autotest
+
+DESCRIPTION="Cellular autotests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+# Enable autotest by default.
+IUSE="${IUSE} +autotest"
+
+RDEPEND="
+	!<chromeos-base/autotest-tests-0.0.2
+	chromeos-base/autotest-deps-cellular
+	chromeos-base/shill-test-scripts
+	dev-python/pygobject
+	dev-python/pyusb
+	sys-apps/ethtool
+"
+DEPEND="${RDEPEND}"
+
+IUSE_TESTS="
+	+tests_cellular_ActivateLTE
+	+tests_cellular_ConnectFailure
+	+tests_cellular_DeferredRegistration
+	+tests_cellular_DisableWhileConnecting
+	+tests_cellular_DisconnectFailure
+	+tests_cellular_HermesErrorScenarios
+	+tests_cellular_HermesMM_InstallEnable
+	+tests_cellular_Hermes_MultiProfile
+	+tests_cellular_Hermes_Restart_SlotSwitch
+	+tests_cellular_Hermes_SingleProfile
+	+tests_cellular_Identifiers
+	+tests_cellular_OutOfCreditsSubscriptionState
+	+tests_cellular_SIMLocking
+	+tests_cellular_SafetyDance
+	+tests_cellular_ScanningProperty
+	+tests_cellular_ServiceName
+	+tests_cellular_Smoke
+	+tests_cellular_StressEnable
+	+tests_cellular_ValidateTestEnvironment
+"
+
+IUSE_MBIM_TESTS="
+	+tests_cellular_MbimComplianceControlCommand
+	+tests_cellular_MbimComplianceControlRequest
+	+tests_cellular_MbimComplianceDataTransfer
+	+tests_cellular_MbimComplianceDescriptor
+	+tests_cellular_MbimComplianceError
+"
+
+IUSE_TESTS="${IUSE_TESTS} ${IUSE_MBIM_TESTS}"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+AUTOTEST_DEPS_LIST=""
+AUTOTEST_CONFIG_LIST=""
+AUTOTEST_PROFILERS_LIST=""
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-cryptohome/autotest-tests-cryptohome-0.0.1-r3187.ebuild b/chromeos-base/autotest-tests-cryptohome/autotest-tests-cryptohome-0.0.1-r3187.ebuild
deleted file mode 100644
index a96501a..0000000
--- a/chromeos-base/autotest-tests-cryptohome/autotest-tests-cryptohome-0.0.1-r3187.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="08d3cc9c6917d029c01338f2eee4692e4ce2e152"
-CROS_WORKON_TREE="9d4e01e2ade94f263bd118fa7c26d4a67d8810ed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest
-
-DESCRIPTION="Cryptohome autotests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-# Enable autotest by default.
-IUSE="+autotest"
-
-COMMON_DEPEND="
-	!<chromeos-base/autotest-tests-0.0.3
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/cryptohome-dev-utils
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-"
-
-IUSE_TESTS="
-	+tests_platform_CryptohomeFio
-	+tests_platform_CryptohomeStress
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-cryptohome/autotest-tests-cryptohome-0.0.1-r3188.ebuild b/chromeos-base/autotest-tests-cryptohome/autotest-tests-cryptohome-0.0.1-r3188.ebuild
new file mode 100644
index 0000000..bfdc9a5
--- /dev/null
+++ b/chromeos-base/autotest-tests-cryptohome/autotest-tests-cryptohome-0.0.1-r3188.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="5235bb1a8fd6c8c8b8a5741bbd16e35653db8e16"
+CROS_WORKON_TREE="00f5fa22a82bd227716dc66ee7996ec65d6b19c6"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest
+
+DESCRIPTION="Cryptohome autotests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+# Enable autotest by default.
+IUSE="+autotest"
+
+COMMON_DEPEND="
+	!<chromeos-base/autotest-tests-0.0.3
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/cryptohome-dev-utils
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+"
+
+IUSE_TESTS="
+	+tests_platform_CryptohomeFio
+	+tests_platform_CryptohomeStress
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-graphics/autotest-tests-graphics-0.0.1-r3265.ebuild b/chromeos-base/autotest-tests-graphics/autotest-tests-graphics-0.0.1-r3265.ebuild
deleted file mode 100644
index f39eaac..0000000
--- a/chromeos-base/autotest-tests-graphics/autotest-tests-graphics-0.0.1-r3265.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="f76617cf8f9dfe3ba4b5953e3dc2c8a97cd52c81"
-CROS_WORKON_TREE="c0ffc312566b015e40f68885e0fc926bbce4d139"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-sanitizers cros-workon autotest
-
-DESCRIPTION="Graphics autotests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-# Enable autotest by default.
-IUSE="+autotest"
-
-RDEPEND="
-	!<chromeos-base/autotest-tests-0.0.3
-	chromeos-base/autotest-deps-graphics
-	tests_graphics_Gbm? ( media-libs/minigbm )
-	tests_graphics_GLBench? ( chromeos-base/glbench )
-	tests_graphics_GLMark2? ( chromeos-base/autotest-deps-glmark2 )
-	tests_graphics_SanAngeles? ( media-libs/waffle )
-"
-DEPEND="${RDEPEND}"
-
-IUSE_TESTS="
-	+tests_graphics_dEQP
-	+tests_graphics_Gbm
-	+tests_graphics_GLAPICheck
-	+tests_graphics_GLBench
-	+tests_graphics_GLMark2
-	+tests_graphics_KernelConfig
-	+tests_graphics_KernelMemory
-	+tests_graphics_LibDRM
-	+tests_graphics_PerfControl
-	+tests_graphics_SanAngeles
-	+tests_graphics_SyncControlTest
-	+tests_graphics_parallel_dEQP
-	+tests_graphics_Power
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
-
-src_configure() {
-	sanitizers-setup-env
-	default
-}
diff --git a/chromeos-base/autotest-tests-graphics/autotest-tests-graphics-0.0.1-r3272.ebuild b/chromeos-base/autotest-tests-graphics/autotest-tests-graphics-0.0.1-r3272.ebuild
new file mode 100644
index 0000000..24bfab9
--- /dev/null
+++ b/chromeos-base/autotest-tests-graphics/autotest-tests-graphics-0.0.1-r3272.ebuild
@@ -0,0 +1,54 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="69c5fc2c578659143437ea61b80644b03bb002c4"
+CROS_WORKON_TREE="c6e007efe060f12818eb7db793d447c63de6f954"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-sanitizers cros-workon autotest
+
+DESCRIPTION="Graphics autotests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+# Enable autotest by default.
+IUSE="+autotest"
+
+RDEPEND="
+	!<chromeos-base/autotest-tests-0.0.3
+	chromeos-base/autotest-deps-graphics
+	tests_graphics_Gbm? ( media-libs/minigbm )
+	tests_graphics_GLBench? ( chromeos-base/glbench )
+	tests_graphics_GLMark2? ( chromeos-base/autotest-deps-glmark2 )
+	tests_graphics_SanAngeles? ( media-libs/waffle )
+"
+DEPEND="${RDEPEND}"
+
+IUSE_TESTS="
+	+tests_graphics_Gbm
+	+tests_graphics_GLAPICheck
+	+tests_graphics_GLBench
+	+tests_graphics_GLMark2
+	+tests_graphics_KernelConfig
+	+tests_graphics_KernelMemory
+	+tests_graphics_LibDRM
+	+tests_graphics_PerfControl
+	+tests_graphics_SanAngeles
+	+tests_graphics_SyncControlTest
+	+tests_graphics_parallel_dEQP
+	+tests_graphics_Power
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+src_configure() {
+	sanitizers-setup-env
+	default
+}
diff --git a/chromeos-base/autotest-tests-graphics/autotest-tests-graphics-9999.ebuild b/chromeos-base/autotest-tests-graphics/autotest-tests-graphics-9999.ebuild
index 317356d..0c47cb2 100644
--- a/chromeos-base/autotest-tests-graphics/autotest-tests-graphics-9999.ebuild
+++ b/chromeos-base/autotest-tests-graphics/autotest-tests-graphics-9999.ebuild
@@ -28,7 +28,6 @@
 DEPEND="${RDEPEND}"
 
 IUSE_TESTS="
-	+tests_graphics_dEQP
 	+tests_graphics_Gbm
 	+tests_graphics_GLAPICheck
 	+tests_graphics_GLBench
diff --git a/chromeos-base/autotest-tests-ownershipapi/autotest-tests-ownershipapi-0.0.1-r7892.ebuild b/chromeos-base/autotest-tests-ownershipapi/autotest-tests-ownershipapi-0.0.1-r7892.ebuild
deleted file mode 100644
index 9da4883..0000000
--- a/chromeos-base/autotest-tests-ownershipapi/autotest-tests-ownershipapi-0.0.1-r7892.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="99e5f02e736eab3dd1445834c1f26f46db85e452"
-CROS_WORKON_TREE="54ff09d88d01f0b74b519616c18d7e964daafc53"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-
-inherit cros-workon autotest
-
-DESCRIPTION="login_OwnershipApi autotest"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-IUSE="+xset +tpmtools"
-# Enable autotest by default.
-IUSE="${IUSE} +autotest"
-
-RDEPEND="${RDEPEND}
-	chromeos-base/autotest-deps-dbus
-	chromeos-base/autotest-deps-policy
-	chromeos-base/chromeos-chrome
-	chromeos-base/telemetry
-	dev-python/protobuf-python
-	dev-python/pygobject
-"
-
-DEPEND="${RDEPEND}"
-
-# The telemetry dependency comes from the chrome.py import in some of the tests.
-IUSE_TESTS="
-	+tests_login_CryptohomeOwnerQuery
-	+tests_login_MultipleSessions
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-AUTOTEST_DEPS_LIST=""
-AUTOTEST_CONFIG_LIST=""
-AUTOTEST_PROFILERS_LIST=""
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
-
-src_prepare() {
-	# Telemetry tests require the path to telemetry source to exist in order to
-	# build.  Copy the telemetry source to a temporary directory that is writable,
-	# so that file removals in Telemetry source can be performed properly.
-	export TMP_DIR="$(mktemp -d)"
-	cp -r "${SYSROOT}/usr/local/telemetry" "${TMP_DIR}"
-	export PYTHONPATH="${TMP_DIR}/telemetry/src/third_party/catapult/telemetry"
-	autotest_src_prepare
-}
diff --git a/chromeos-base/autotest-tests-ownershipapi/autotest-tests-ownershipapi-0.0.1-r7896.ebuild b/chromeos-base/autotest-tests-ownershipapi/autotest-tests-ownershipapi-0.0.1-r7896.ebuild
new file mode 100644
index 0000000..70b48f4
--- /dev/null
+++ b/chromeos-base/autotest-tests-ownershipapi/autotest-tests-ownershipapi-0.0.1-r7896.ebuild
@@ -0,0 +1,57 @@
+# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="8da525a7eb51a852cbe52eebe708c18e9a55ad0f"
+CROS_WORKON_TREE="7b710441cf7c35432389a56895d203a32362f7b4"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+
+inherit cros-workon autotest
+
+DESCRIPTION="login_OwnershipApi autotest"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+IUSE="+xset +tpmtools"
+# Enable autotest by default.
+IUSE="${IUSE} +autotest"
+
+RDEPEND="${RDEPEND}
+	chromeos-base/autotest-deps-dbus
+	chromeos-base/autotest-deps-policy
+	chromeos-base/chromeos-chrome
+	chromeos-base/telemetry
+	dev-python/protobuf-python
+	dev-python/pygobject
+"
+
+DEPEND="${RDEPEND}"
+
+# The telemetry dependency comes from the chrome.py import in some of the tests.
+IUSE_TESTS="
+	+tests_login_CryptohomeOwnerQuery
+	+tests_login_MultipleSessions
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+AUTOTEST_DEPS_LIST=""
+AUTOTEST_CONFIG_LIST=""
+AUTOTEST_PROFILERS_LIST=""
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+src_prepare() {
+	# Telemetry tests require the path to telemetry source to exist in order to
+	# build.  Copy the telemetry source to a temporary directory that is writable,
+	# so that file removals in Telemetry source can be performed properly.
+	export TMP_DIR="$(mktemp -d)"
+	cp -r "${SYSROOT}/usr/local/telemetry" "${TMP_DIR}"
+	export PYTHONPATH="${TMP_DIR}/telemetry/src/third_party/catapult/telemetry"
+	autotest_src_prepare
+}
diff --git a/chromeos-base/autotest-tests-power/autotest-tests-power-0.0.1-r3240.ebuild b/chromeos-base/autotest-tests-power/autotest-tests-power-0.0.1-r3240.ebuild
deleted file mode 100644
index e91ebe3..0000000
--- a/chromeos-base/autotest-tests-power/autotest-tests-power-0.0.1-r3240.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=4
-CROS_WORKON_COMMIT="e81b4aa0b4edc96b29fa83a5a62ac5a46d7b07e1"
-CROS_WORKON_TREE="fafed70d3d1eef417289a57d9ace6237a0f33399"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest
-
-DESCRIPTION="power autotests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-# Enable autotest by default.
-IUSE="+autotest +shill"
-
-RDEPEND="
-	shill? ( chromeos-base/shill-test-scripts )
-	!<chromeos-base/autotest-tests-0.0.3
-"
-DEPEND="${RDEPEND}"
-
-# cros/power_suspend depends on shill-test-scripts.
-IUSE_TESTS="
-	+tests_hardware_Backlight
-	+tests_power_ARMSettings
-	+tests_power_Backlight
-	+tests_power_BacklightControl
-	+tests_power_BacklightSuspend
-	+tests_power_BatteryCharge
-	+tests_power_BatteryDesignCapacity
-	+tests_power_CheckAC
-	+tests_power_CheckAfterSuspend
-	+tests_power_CPUFreq
-	+tests_power_CPUIdle
-	+tests_power_Draw
-	+tests_power_Dummy
-	+tests_power_HotCPUSuspend
-	+tests_power_KernelSuspend
-	+tests_power_MemorySuspend
-	+tests_power_NoConsoleSuspend
-	+tests_power_ProbeDriver
-	shill? ( +tests_power_Resume )
-	+tests_power_Standby
-	+tests_power_StatsCPUFreq
-	+tests_power_StatsCPUIdle
-	+tests_power_StatsUSB
-	+tests_power_Status
-	shill? (
-		+tests_power_SuspendStress
-		+tests_power_SuspendToIdle
-	)
-	+tests_power_WaitForCoolDown
-	+tests_power_WakeupRTC
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-power/autotest-tests-power-0.0.1-r3247.ebuild b/chromeos-base/autotest-tests-power/autotest-tests-power-0.0.1-r3247.ebuild
new file mode 100644
index 0000000..ec6912d
--- /dev/null
+++ b/chromeos-base/autotest-tests-power/autotest-tests-power-0.0.1-r3247.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+CROS_WORKON_COMMIT="db3c9910a759fda4da77084cdec402364516db88"
+CROS_WORKON_TREE="9c650cb5ccd492db4b3ca577d389ba67f31c3981"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest
+
+DESCRIPTION="power autotests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+# Enable autotest by default.
+IUSE="+autotest +shill"
+
+RDEPEND="
+	shill? ( chromeos-base/shill-test-scripts )
+	!<chromeos-base/autotest-tests-0.0.3
+"
+DEPEND="${RDEPEND}"
+
+# cros/power_suspend depends on shill-test-scripts.
+IUSE_TESTS="
+	+tests_hardware_Backlight
+	+tests_power_ARMSettings
+	+tests_power_Backlight
+	+tests_power_BacklightControl
+	+tests_power_BacklightSuspend
+	+tests_power_BatteryCharge
+	+tests_power_BatteryDesignCapacity
+	+tests_power_CheckAC
+	+tests_power_CheckAfterSuspend
+	+tests_power_CPUFreq
+	+tests_power_CPUIdle
+	+tests_power_Draw
+	+tests_power_Dummy
+	+tests_power_HotCPUSuspend
+	+tests_power_KernelSuspend
+	+tests_power_MemorySuspend
+	+tests_power_NoConsoleSuspend
+	+tests_power_ProbeDriver
+	shill? ( +tests_power_Resume )
+	+tests_power_Standby
+	+tests_power_StatsCPUFreq
+	+tests_power_StatsCPUIdle
+	+tests_power_StatsUSB
+	+tests_power_Status
+	shill? (
+		+tests_power_SuspendStress
+		+tests_power_SuspendToIdle
+	)
+	+tests_power_WaitForCoolDown
+	+tests_power_WakeupRTC
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-security/autotest-tests-security-0.0.1-r3305.ebuild b/chromeos-base/autotest-tests-security/autotest-tests-security-0.0.1-r3305.ebuild
deleted file mode 100644
index 9d6aae3..0000000
--- a/chromeos-base/autotest-tests-security/autotest-tests-security-0.0.1-r3305.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="99e5f02e736eab3dd1445834c1f26f46db85e452"
-CROS_WORKON_TREE="54ff09d88d01f0b74b519616c18d7e964daafc53"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest libchrome
-
-DESCRIPTION="Security autotests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-# Enable autotest by default.
-IUSE="+autotest -chromeless_tests -chromeless_tty containers +seccomp selinux"
-
-RDEPEND="
-	!<chromeos-base/autotest-tests-0.0.3
-	containers? (
-		tests_security_Libcontainer? (
-			chromeos-base/minijail
-			chromeos-base/libcontainer
-		)
-	)
-"
-DEPEND="${RDEPEND}"
-
-IUSE_TESTS="
-	!chromeless_tty? (
-		!chromeless_tests? (
-			+tests_security_RendererSandbox
-			+tests_security_SessionManagerDbusEndpoints
-		)
-	)
-	seccomp? (
-		+tests_security_SeccompSyscallFilters
-	)
-	containers? ( +tests_security_Libcontainer )
-	+tests_security_NosymfollowMountOption
-	+tests_security_ProcessManagementPolicy
-	+tests_security_RootfsOwners
-	+tests_security_SysVIPC
-	x86? ( +tests_security_x86Registers )
-	amd64? ( +tests_security_x86Registers )
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-security/autotest-tests-security-0.0.1-r3308.ebuild b/chromeos-base/autotest-tests-security/autotest-tests-security-0.0.1-r3308.ebuild
new file mode 100644
index 0000000..4ea40d2
--- /dev/null
+++ b/chromeos-base/autotest-tests-security/autotest-tests-security-0.0.1-r3308.ebuild
@@ -0,0 +1,58 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="074c94329514737b9148a0e9968175d1e9dbfb02"
+CROS_WORKON_TREE="26e63d8fba49946ec073f814aadb6fa05efe4b9b"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest libchrome cros-sanitizers
+
+DESCRIPTION="Security autotests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+# Enable autotest by default.
+IUSE="+autotest -chromeless_tests -chromeless_tty containers +seccomp selinux"
+
+RDEPEND="
+	!<chromeos-base/autotest-tests-0.0.3
+	containers? (
+		tests_security_Libcontainer? (
+			chromeos-base/minijail:=
+			chromeos-base/libcontainer:=
+		)
+	)
+"
+DEPEND="${RDEPEND}"
+
+IUSE_TESTS="
+	!chromeless_tty? (
+		!chromeless_tests? (
+			+tests_security_RendererSandbox
+			+tests_security_SessionManagerDbusEndpoints
+		)
+	)
+	seccomp? (
+		+tests_security_SeccompSyscallFilters
+	)
+	containers? ( +tests_security_Libcontainer )
+	+tests_security_NosymfollowMountOption
+	+tests_security_ProcessManagementPolicy
+	+tests_security_RootfsOwners
+	+tests_security_SysVIPC
+	x86? ( +tests_security_x86Registers )
+	amd64? ( +tests_security_x86Registers )
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+cros_pre_src_configure_use_sanitizers() {
+	sanitizers-setup-env
+}
diff --git a/chromeos-base/autotest-tests-security/autotest-tests-security-9999.ebuild b/chromeos-base/autotest-tests-security/autotest-tests-security-9999.ebuild
index 95f2991..887a75a 100644
--- a/chromeos-base/autotest-tests-security/autotest-tests-security-9999.ebuild
+++ b/chromeos-base/autotest-tests-security/autotest-tests-security-9999.ebuild
@@ -5,7 +5,7 @@
 CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
 CROS_WORKON_LOCALNAME="third_party/autotest/files"
 
-inherit cros-workon autotest libchrome
+inherit cros-workon autotest libchrome cros-sanitizers
 
 DESCRIPTION="Security autotests"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
@@ -21,8 +21,8 @@
 	!<chromeos-base/autotest-tests-0.0.3
 	containers? (
 		tests_security_Libcontainer? (
-			chromeos-base/minijail
-			chromeos-base/libcontainer
+			chromeos-base/minijail:=
+			chromeos-base/libcontainer:=
 		)
 	)
 "
@@ -50,3 +50,7 @@
 IUSE="${IUSE} ${IUSE_TESTS}"
 
 AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
+
+cros_pre_src_configure_use_sanitizers() {
+	sanitizers-setup-env
+}
diff --git a/chromeos-base/autotest-tests-shill/autotest-tests-shill-0.0.1-r3233.ebuild b/chromeos-base/autotest-tests-shill/autotest-tests-shill-0.0.1-r3233.ebuild
deleted file mode 100644
index 9657be2..0000000
--- a/chromeos-base/autotest-tests-shill/autotest-tests-shill-0.0.1-r3233.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="66f00db8190f4927b1cca8203cc30eeefe2cc353"
-CROS_WORKON_TREE="8b8c2ee1306693fc53479eeeb8eab79cd41ba97e"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest
-
-DESCRIPTION="shill autotests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-# Enable autotest by default.
-IUSE="+autotest +tpm tpm2"
-
-RDEPEND="
-	!<chromeos-base/autotest-tests-0.0.3
-	chromeos-base/shill-test-scripts
-"
-DEPEND="${RDEPEND}"
-
-IUSE_TESTS="
-	+tests_network_DhcpClasslessStaticRoute
-	+tests_network_DhcpFailureWithStaticIP
-	+tests_network_DhcpNak
-	+tests_network_DhcpNegotiationSuccess
-	+tests_network_DhcpNegotiationTimeout
-	+tests_network_DhcpNonAsciiParameter
-	+tests_network_DhcpRenew
-	+tests_network_DhcpRenewWithOptionSubset
-	+tests_network_DhcpRequestHostName
-	+tests_network_DhcpStaticIP
-	+tests_network_DhcpVendorEncapsulatedOptions
-	+tests_network_DhcpWpadNegotiation
-	+tests_network_WiFiInvalidParameters
-	+tests_network_WiFiResume
-	+tests_network_WlanPresent
-	+tests_network_WlanRegulatory
-	+tests_network_WlanHasIP
-	tpm? ( +tests_network_VPNConnect )
-	tpm2? ( +tests_network_VPNConnect )
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-shill/autotest-tests-shill-0.0.1-r3239.ebuild b/chromeos-base/autotest-tests-shill/autotest-tests-shill-0.0.1-r3239.ebuild
new file mode 100644
index 0000000..49f4633
--- /dev/null
+++ b/chromeos-base/autotest-tests-shill/autotest-tests-shill-0.0.1-r3239.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="40000856026f21177b06f0738f9160c922151596"
+CROS_WORKON_TREE="25851c4b412d2d8a3523c29b693fb4b314a3af49"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest
+
+DESCRIPTION="shill autotests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+# Enable autotest by default.
+IUSE="+autotest +tpm tpm2"
+
+RDEPEND="
+	!<chromeos-base/autotest-tests-0.0.3
+	chromeos-base/shill-test-scripts
+"
+DEPEND="${RDEPEND}"
+
+IUSE_TESTS="
+	+tests_network_DhcpClasslessStaticRoute
+	+tests_network_DhcpFailureWithStaticIP
+	+tests_network_DhcpNak
+	+tests_network_DhcpNegotiationSuccess
+	+tests_network_DhcpNegotiationTimeout
+	+tests_network_DhcpNonAsciiParameter
+	+tests_network_DhcpRenew
+	+tests_network_DhcpRenewWithOptionSubset
+	+tests_network_DhcpRequestHostName
+	+tests_network_DhcpStaticIP
+	+tests_network_DhcpVendorEncapsulatedOptions
+	+tests_network_DhcpWpadNegotiation
+	+tests_network_WiFiInvalidParameters
+	+tests_network_WiFiResume
+	+tests_network_WlanPresent
+	+tests_network_WlanHasIP
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-shill/autotest-tests-shill-9999.ebuild b/chromeos-base/autotest-tests-shill/autotest-tests-shill-9999.ebuild
index 662d72c..4406513 100644
--- a/chromeos-base/autotest-tests-shill/autotest-tests-shill-9999.ebuild
+++ b/chromeos-base/autotest-tests-shill/autotest-tests-shill-9999.ebuild
@@ -39,10 +39,7 @@
 	+tests_network_WiFiInvalidParameters
 	+tests_network_WiFiResume
 	+tests_network_WlanPresent
-	+tests_network_WlanRegulatory
 	+tests_network_WlanHasIP
-	tpm? ( +tests_network_VPNConnect )
-	tpm2? ( +tests_network_VPNConnect )
 "
 
 IUSE="${IUSE} ${IUSE_TESTS}"
diff --git a/chromeos-base/autotest-tests-touchpad/autotest-tests-touchpad-0.0.1-r4171.ebuild b/chromeos-base/autotest-tests-touchpad/autotest-tests-touchpad-0.0.1-r4171.ebuild
deleted file mode 100644
index aae715d..0000000
--- a/chromeos-base/autotest-tests-touchpad/autotest-tests-touchpad-0.0.1-r4171.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="9fafb3e3e3e50a59ddc8f711558596ee97b251f0"
-CROS_WORKON_TREE="d670df4c98d81daa26bbd8a79b5d3de47091ad21"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-
-inherit cros-workon autotest
-
-DESCRIPTION="touchpad autotest"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-IUSE="${IUSE} +autotest"
-
-RDEPEND="
-	chromeos-base/autotest-deps-touchpad
-"
-
-DEPEND="${RDEPEND}"
-
-IUSE_TESTS="
-	+tests_platform_GesturesRegressionTest
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-AUTOTEST_DEPS_LIST=""
-AUTOTEST_CONFIG_LIST=""
-AUTOTEST_PROFILERS_LIST=""
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-touchpad/autotest-tests-touchpad-0.0.1-r4172.ebuild b/chromeos-base/autotest-tests-touchpad/autotest-tests-touchpad-0.0.1-r4172.ebuild
new file mode 100644
index 0000000..117b34d
--- /dev/null
+++ b/chromeos-base/autotest-tests-touchpad/autotest-tests-touchpad-0.0.1-r4172.ebuild
@@ -0,0 +1,37 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="49dc584488749861c01230582d8835655fb5d0ce"
+CROS_WORKON_TREE="5390e927aad95de5ba709499fac4a4b691888613"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+
+inherit cros-workon autotest
+
+DESCRIPTION="touchpad autotest"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+
+IUSE="${IUSE} +autotest"
+
+RDEPEND="
+	chromeos-base/autotest-deps-touchpad
+"
+
+DEPEND="${RDEPEND}"
+
+IUSE_TESTS="
+	+tests_platform_GesturesRegressionTest
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+AUTOTEST_DEPS_LIST=""
+AUTOTEST_CONFIG_LIST=""
+AUTOTEST_PROFILERS_LIST=""
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-tpm/autotest-tests-tpm-0.0.1-r3189.ebuild b/chromeos-base/autotest-tests-tpm/autotest-tests-tpm-0.0.1-r3189.ebuild
deleted file mode 100644
index 3953fa2..0000000
--- a/chromeos-base/autotest-tests-tpm/autotest-tests-tpm-0.0.1-r3189.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="06e80b36b25d6bb18277869044b6caff43c96bc8"
-CROS_WORKON_TREE="d5fca090b73d08131aee571109b77a337c42fd39"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest
-
-DESCRIPTION="Autotests involving the tpm"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-# Enable autotest by default.
-IUSE="+autotest tpm2"
-
-RDEPEND="
-	!<chromeos-base/autotest-tests-0.0.3
-	tpm2? ( chromeos-base/g2f_tools )
-"
-DEPEND="${RDEPEND}"
-
-IUSE_TESTS="
-	+tests_firmware_Cr50VirtualNVRam
-	+tests_firmware_Cr50VirtualNVRamServer
-	+tests_firmware_Cr50U2fPowerwash
-	+tests_hardware_TPMCheck
-	+tests_kernel_TPMStress
-	+tests_platform_Pkcs11InitUnderErrors
-	+tests_platform_Pkcs11ChangeAuthData
-	+tests_platform_Pkcs11Events
-	+tests_platform_Pkcs11LoadPerf
-	+tests_platform_TPMEvict
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-tpm/autotest-tests-tpm-0.0.1-r3193.ebuild b/chromeos-base/autotest-tests-tpm/autotest-tests-tpm-0.0.1-r3193.ebuild
new file mode 100644
index 0000000..418ab8d
--- /dev/null
+++ b/chromeos-base/autotest-tests-tpm/autotest-tests-tpm-0.0.1-r3193.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="49dc584488749861c01230582d8835655fb5d0ce"
+CROS_WORKON_TREE="5390e927aad95de5ba709499fac4a4b691888613"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest
+
+DESCRIPTION="Autotests involving the tpm"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+# Enable autotest by default.
+IUSE="+autotest tpm2"
+
+RDEPEND="
+	!<chromeos-base/autotest-tests-0.0.3
+	tpm2? ( chromeos-base/g2f_tools )
+"
+DEPEND="${RDEPEND}"
+
+IUSE_TESTS="
+	+tests_firmware_Cr50VirtualNVRam
+	+tests_firmware_Cr50VirtualNVRamServer
+	+tests_firmware_Cr50U2fPowerwash
+	+tests_hardware_TPMCheck
+	+tests_kernel_TPMStress
+	+tests_platform_Pkcs11InitUnderErrors
+	+tests_platform_Pkcs11ChangeAuthData
+	+tests_platform_Pkcs11Events
+	+tests_platform_Pkcs11LoadPerf
+	+tests_platform_TPMEvict
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-vm-host/autotest-tests-vm-host-0.0.1-r2646.ebuild b/chromeos-base/autotest-tests-vm-host/autotest-tests-vm-host-0.0.1-r2646.ebuild
deleted file mode 100644
index bdf5f25..0000000
--- a/chromeos-base/autotest-tests-vm-host/autotest-tests-vm-host-0.0.1-r2646.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="0e103e3821ffbc575b67d6d9c426cac3ee4402b3"
-CROS_WORKON_TREE="210df4cb14c4f7c420a697e85e6a7bec211d5bed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon autotest
-
-DESCRIPTION="kvm host autotests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-IUSE="+autotest"
-
-RDEPEND=""
-DEPEND="${RDEPEND}"
-
-IUSE_TESTS="
-	+tests_vm_CrosVmStart
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests-vm-host/autotest-tests-vm-host-0.0.1-r3098.ebuild b/chromeos-base/autotest-tests-vm-host/autotest-tests-vm-host-0.0.1-r3098.ebuild
new file mode 100644
index 0000000..5c05a44
--- /dev/null
+++ b/chromeos-base/autotest-tests-vm-host/autotest-tests-vm-host-0.0.1-r3098.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon autotest
+
+DESCRIPTION="kvm host autotests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+IUSE="+autotest"
+
+RDEPEND=""
+DEPEND="${RDEPEND}"
+
+IUSE_TESTS="
+	+tests_vm_CrosVmStart
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests/autotest-tests-0.0.4-r8903.ebuild b/chromeos-base/autotest-tests/autotest-tests-0.0.4-r8903.ebuild
index 6a5f25c..3b63e3b 100644
--- a/chromeos-base/autotest-tests/autotest-tests-0.0.4-r8903.ebuild
+++ b/chromeos-base/autotest-tests/autotest-tests-0.0.4-r8903.ebuild
@@ -95,7 +95,7 @@
 		+tests_camera_HAL3Perf
 	)
 	+tests_dummy_Fail
-	+tests_dummy_Pass
+	+tests_stub_Pass
 	+tests_dummy_SynchronousOffload
 	tests_example_UnitTest
 	+tests_firmware_CbfsMcache
diff --git a/chromeos-base/autotest-tests/autotest-tests-0.0.4-r8924.ebuild b/chromeos-base/autotest-tests/autotest-tests-0.0.4-r8924.ebuild
new file mode 100644
index 0000000..80a95b3
--- /dev/null
+++ b/chromeos-base/autotest-tests/autotest-tests-0.0.4-r8924.ebuild
@@ -0,0 +1,226 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+CROS_WORKON_COMMIT="30a58769624d866cf917cfcaac5c23dc6354bb85"
+CROS_WORKON_TREE="0475e9e7135aba9599c8f4d666325771de5235be"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+
+inherit libchrome cros-workon autotest
+
+DESCRIPTION="Autotest tests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+IUSE="arc-camera3 biod -chromeless_tests -chromeless_tty +crash_reporting cups dlc_test +encrypted_stateful +network_time +passive_metrics +profile vaapi"
+# Enable autotest by default.
+IUSE="${IUSE} +autotest"
+
+# pygobject is used in the following tests:
+#   platform_CrosDisks*
+RDEPEND="
+	>=chromeos-base/autotest-deps-0.0.3
+	!<=chromeos-base/autotest-factory-0.0.1-r4445
+	dev-python/numpy
+	dev-python/pillow
+	dev-python/pygobject
+	dev-python/pytest
+	dev-python/python-uinput
+	media-sound/sox
+	sys-apps/ethtool
+	vaapi? ( x11-libs/libva )
+	virtual/autotest-tests
+"
+
+RDEPEND="${RDEPEND}
+	tests_dbench? ( dev-libs/libaio )
+	tests_platform_MetricsUploader? (
+		>=chromeos-base/metrics-0.0.1-r3152
+		dev-python/protobuf-python
+	)
+	tests_platform_SecureEraseFile? ( chromeos-base/secure-erase-file )
+	tests_hardware_MemoryLatency? ( app-benchmarks/lmbench )
+	tests_hardware_MemoryThroughput? ( app-benchmarks/lmbench )
+	tests_hardware_MemoryZRAMThroughput? ( app-benchmarks/microbenchmarks )
+	tests_kernel_Lmbench? ( app-benchmarks/lmbench )
+	arc-camera3? (
+		tests_camera_HAL3? ( chromeos-base/autotest-deps-camera-hal3 )
+		tests_camera_HAL3Perf? ( chromeos-base/autotest-deps-camera-hal3 )
+	)
+	tests_camera_V4L2? ( media-libs/libyuv dev-libs/re2 )
+	tests_xfsFilesystemTestSuite? ( app-benchmarks/xfstests )
+"
+
+DEPEND="${RDEPEND}"
+
+X86_IUSE_TESTS="
+	+tests_xfsFilesystemTestSuite
+	+tests_hardware_UnsafeMemory
+"
+
+CLIENT_IUSE_TESTS="
+	x86? ( ${X86_IUSE_TESTS} )
+	amd64? ( ${X86_IUSE_TESTS} )
+	+tests_profiler_sync
+	+tests_compilebench
+	+tests_crashme
+	+tests_dbench
+	+tests_ddtest
+	+tests_disktest
+	+tests_fsx
+	+tests_hackbench
+	+tests_iperf
+	+tests_bonnie
+	+tests_iozone
+	+tests_netpipe
+	+tests_sleeptest
+	+tests_kernel_sysrq_info
+	+tests_unixbench
+	+tests_autoupdate_Backoff
+	+tests_autoupdate_BadMetadata
+	+tests_autoupdate_CannedOmahaUpdate
+	+tests_autoupdate_DisconnectReconnectNetwork
+	dlc_test? ( +tests_autoupdate_InstallAndUpdateDLC )
+	+tests_autoupdate_PeriodicCheck
+	+tests_autoupdate_UrlSwitch
+	+tests_blktestsSuiteAll
+	+tests_blktestsSuiteLoopOverBlk
+	+tests_blktestsSuiteLoopOverFile
+	+tests_blktestsSuiteRealBlk
+	+tests_camera_V4L2
+	arc-camera3? (
+		+tests_camera_HAL3
+		+tests_camera_HAL3Perf
+	)
+	+tests_dummy_Fail
+	+tests_stub_Pass
+	+tests_dummy_SynchronousOffload
+	tests_example_UnitTest
+	+tests_firmware_CbfsMcache
+	+tests_firmware_LockedME
+	+tests_firmware_CheckEOPState
+	+tests_firmware_RomSize
+	+tests_firmware_SetFWMP
+	+tests_firmware_VbootCrypto
+	+tests_flaky_test
+	+tests_hardware_Badblocks
+	+tests_hardware_DiskSize
+	+tests_hardware_EC
+	+tests_hardware_EepromWriteProtect
+	+tests_hardware_GobiGPS
+	+tests_hardware_GPIOSwitches
+	+tests_hardware_GPS
+	+tests_hardware_I2CProbe
+	+tests_hardware_Interrupt
+	+tests_hardware_Keyboard
+	+tests_hardware_LightSensor
+	+tests_hardware_MemoryLatency
+	+tests_hardware_MemoryThroughput
+	+tests_hardware_MemoryZRAMThroughput
+	+tests_hardware_Memtester
+	+tests_hardware_MultiReader
+	+tests_hardware_ProbeComponents
+	+tests_hardware_RamFio
+	+tests_hardware_RealtekCardReader
+	+tests_hardware_Resolution
+	+tests_hardware_SAT
+	+tests_hardware_Smartctl
+	+tests_hardware_SsdDetection
+	+tests_hardware_StorageFio
+	+tests_hardware_StorageFioOther
+	+tests_hardware_StorageTrim
+	+tests_hardware_StorageWearoutDetect
+	+tests_hardware_TouchScreenPowerCycles
+	tests_hardware_TouchScreenPresent
+	+tests_hardware_TrimIntegrity
+	+tests_infra_FirmwareAutoupdate
+	+tests_kernel_AsyncDriverProbe
+	+tests_kernel_FirmwareRequest
+	+tests_kernel_CrosECSysfsAccel
+	+tests_kernel_Delay
+	+tests_kernel_fs_Punybench
+	+tests_kernel_Ktime
+	+tests_kernel_Lmbench
+	+tests_kernel_Memory_Ramoop
+	+tests_kernel_SchedBandwith
+	crash_reporting? (
+		+tests_logging_KernelCrash
+		+tests_logging_UdevCrash
+		+tests_logging_UserCrash
+	)
+	+tests_network_EthCaps
+	+tests_network_EthernetStressPlug
+	+tests_network_Ipv6SimpleNegotiation
+	+tests_network_NegotiatedLANSpeed
+	+tests_platform_AccurateTime
+	+tests_platform_AesThroughput
+	!chromeless_tty? (
+		+tests_platform_BootPerf
+	)
+	+tests_platform_CheckErrorsInLog
+	+tests_platform_CleanShutdown
+	+tests_platform_Crossystem
+	+tests_platform_Crouton
+	+tests_platform_DaemonsRespawn
+	+tests_platform_DBusMachineIdRotation
+	encrypted_stateful? ( +tests_platform_EncryptedStateful )
+	+tests_platform_ExternalUSBBootStress
+	+tests_platform_ExternalUSBStress
+	+tests_platform_FileNum
+	+tests_platform_FileSize
+	biod? ( +tests_platform_Fingerprint )
+	+tests_platform_Firewall
+	+tests_platform_FullyChargedPowerStatus
+	+tests_platform_HighResTimers
+	+tests_platform_ImageLoader
+	+tests_platform_ImageLoaderServer
+	+tests_platform_KernelVersion
+	+tests_platform_LibCBench
+	+tests_platform_LogDupSuppression
+	+tests_platform_LogNonKernelKmsg
+	+tests_platform_MemCheck
+	+tests_platform_MemoryMonitor
+	chromeless_tty? ( +tests_platform_MetricsUploader )
+	+tests_platform_NetParms
+	+tests_platform_OpenSSLActual
+	profile? (
+		+tests_platform_Perf
+		+tests_platform_Quipper
+	)
+	cups? ( +tests_platform_PrinterPpds )
+	+tests_platform_Rootdev
+	+tests_platform_SecureEraseFile
+	!chromeless_tty? ( +tests_platform_SessionManagerStateKeyGeneration )
+	+tests_platform_TabletMode
+	+tests_platform_TempFS
+	network_time? (
+		+tests_platform_TLSDate
+		+tests_platform_TLSDateActual
+	)
+	+tests_platform_UdevVars
+	+tests_suite_HWConfig
+	+tests_suite_HWQual
+	+tests_system_ColdBoot
+	+tests_touch_HasInput
+	+tests_touch_UpdateErrors
+	+tests_touch_WakeupSource
+	+tests_usbpd_DisplayPortSink
+	+tests_vpd_ReadWrite
+"
+
+IUSE_TESTS="${IUSE_TESTS}
+	${CLIENT_IUSE_TESTS}
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+AUTOTEST_DEPS_LIST=""
+AUTOTEST_CONFIG_LIST=""
+AUTOTEST_PROFILERS_LIST=""
+
+AUTOTEST_FILE_MASK="*.a *.tar.bz2 *.tbz2 *.tgz *.tar.gz"
diff --git a/chromeos-base/autotest-tests/autotest-tests-9999.ebuild b/chromeos-base/autotest-tests/autotest-tests-9999.ebuild
index ea64c08..39c4343 100644
--- a/chromeos-base/autotest-tests/autotest-tests-9999.ebuild
+++ b/chromeos-base/autotest-tests/autotest-tests-9999.ebuild
@@ -23,6 +23,7 @@
 	>=chromeos-base/autotest-deps-0.0.3
 	!<=chromeos-base/autotest-factory-0.0.1-r4445
 	dev-python/numpy
+	dev-python/pillow
 	dev-python/pygobject
 	dev-python/pytest
 	dev-python/python-uinput
@@ -93,7 +94,7 @@
 		+tests_camera_HAL3Perf
 	)
 	+tests_dummy_Fail
-	+tests_dummy_Pass
+	+tests_stub_Pass
 	+tests_dummy_SynchronousOffload
 	tests_example_UnitTest
 	+tests_firmware_CbfsMcache
@@ -144,11 +145,9 @@
 	+tests_kernel_Memory_Ramoop
 	+tests_kernel_SchedBandwith
 	crash_reporting? (
-		+tests_logging_CrashSender
 		+tests_logging_KernelCrash
 		+tests_logging_UdevCrash
 		+tests_logging_UserCrash
-		+tests_platform_AnomalyDetector
 	)
 	+tests_network_EthCaps
 	+tests_network_EthernetStressPlug
diff --git a/chromeos-base/autotest/autotest-0.0.2-r14343.ebuild b/chromeos-base/autotest/autotest-0.0.2-r14343.ebuild
deleted file mode 100644
index ff914eb..0000000
--- a/chromeos-base/autotest/autotest-0.0.2-r14343.ebuild
+++ /dev/null
@@ -1,126 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("0e103e3821ffbc575b67d6d9c426cac3ee4402b3" "22c5b21a61f6477ec943cde45a66526c0f2c11ad")
-CROS_WORKON_TREE=("210df4cb14c4f7c420a697e85e6a7bec211d5bed" "19a599e153588e7beddcc62b22f526879f2985cf")
-CROS_WORKON_PROJECT=(
-	"chromiumos/third_party/autotest"
-	"chromiumos/platform/fw-testing-configs"
-)
-CROS_WORKON_LOCALNAME=(
-	"third_party/autotest/files"
-	"third_party/autotest/files/server/cros/faft/fw-testing-configs"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}"
-	"${S}/server/cros/faft/fw-testing-configs"
-)
-
-inherit cros-workon cros-constants
-
-DESCRIPTION="Autotest scripts and tools"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-SRC_URI=""
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND="
-	!<chromeos-base/autotest-chrome-0.0.1-r1788
-	!<chromeos-base/autotest-tests-0.0.1-r3291
-	!<chromeos-base/autotest-deps-0.0.2
-	virtual/autotest-libs
-	virtual/autotest-assistant-libs
-"
-
-# We don't want Python on the base image, however, there're several base
-# chromeos dependent ebuilds that depend on this ebuild.
-DEPEND="${RDEPEND}"
-
-# Ensure the configures run by autotest pick up the right config.site
-export CONFIG_SITE=/usr/share/config.site
-
-AUTOTEST_WORK="${WORKDIR}/autotest-work"
-
-src_prepare() {
-	mkdir -p "${AUTOTEST_WORK}/client"
-	mkdir -p "${AUTOTEST_WORK}/server"
-	cp -fpu "${S}"/client/* "${AUTOTEST_WORK}/client" &>/dev/null
-	cp -fpru "${S}"/client/{bin,common_lib,tools} "${AUTOTEST_WORK}/client"
-	cp -fpu "${S}"/server/* "${AUTOTEST_WORK}/server" &>/dev/null
-	cp -fpru "${S}"/server/{bin,control_segments,hosts,lib} "${AUTOTEST_WORK}/server"
-	cp -fpru "${S}"/{tko,utils,site_utils,test_suites,frontend} "${AUTOTEST_WORK}"
-
-	# cros directory is not from autotest upstream but cros project specific.
-	cp -fpru "${S}"/client/cros "${AUTOTEST_WORK}/client"
-
-	cp -fpru "${S}"/server/cros "${AUTOTEST_WORK}/server"
-
-	# Pre-create test directories.
-	local test_dirs="
-		client/tests client/site_tests
-		client/config client/deps client/profilers
-		server/tests server/site_tests packages"
-	local dir
-	for dir in ${test_dirs}; do
-		mkdir "${AUTOTEST_WORK}/${dir}"
-		touch "${AUTOTEST_WORK}/${dir}"/.keep
-	done
-	touch "${AUTOTEST_WORK}/client/profilers/__init__.py"
-
-	# Symlinks are needed for new setup_modules
-	# delete the top level symlink beforehand (if it exists).
-	find "${AUTOTEST_WORK}" -name "autotest_lib" -delete \
-		|| echo "Top level symlink did not exist!"
-
-	# Create the top level symlink (want autotest_lib --> .)
-	ln -s . "${AUTOTEST_WORK}/autotest_lib" \
-		|| die "Could not create autotest_lib symlink"
-
-	sed "/^enable_server_prebuild/d" "${S}/global_config.ini" > \
-		"${AUTOTEST_WORK}/global_config.ini"
-	default
-}
-
-src_install() {
-	insinto ${AUTOTEST_BASE}
-	doins -r "${AUTOTEST_WORK}"/*
-	python3 ${S}/utils/generate_metadata.py -autotest_path=${S} -output_file="${D}"${AUTOTEST_BASE}/autotest_metadata
-
-	# base __init__.py
-	touch "${D}"${AUTOTEST_BASE}/__init__.py
-
-	# TODO: This should be more selective
-	chmod -R a+x "${D}"${AUTOTEST_BASE}
-
-	# setup stuff needed for read/write operation
-	chmod a+wx "${D}${AUTOTEST_BASE}/packages"
-
-	dodir "${AUTOTEST_BASE}/client/packages"
-	chmod a+wx "${D}${AUTOTEST_BASE}/client/packages"
-
-	dodir "${AUTOTEST_BASE}/server/tmp"
-	chmod a+wx "${D}${AUTOTEST_BASE}/server/tmp"
-
-	# Set up symlinks so that debug info works for autotests.
-	dodir /usr/lib/debug${AUTOTEST_BASE}/
-	dosym client/site_tests /usr/lib/debug${AUTOTEST_BASE}/tests
-
-	# Punt any nested .git dirs.
-	find "${D}" -name .git -exec rm -rf {} +
-}
-
-src_test() {
-	# Run the autotest unit tests.
-	./utils/unittest_suite.py --debug || die "Autotest unit tests failed."
-}
-
-# Packages client.
-pkg_postinst() {
-	local root_autotest_dir="${ROOT}${AUTOTEST_BASE}"
-	flock "${root_autotest_dir}/packages" \
-			-c "PYTHONDONTWRITEBYTECODE=1 ${root_autotest_dir}/utils/packager.py \
-				-r ${root_autotest_dir}/packages --client -a upload"
-}
diff --git a/chromeos-base/autotest/autotest-0.0.2-r14886.ebuild b/chromeos-base/autotest/autotest-0.0.2-r14886.ebuild
new file mode 100644
index 0000000..f3896a6
--- /dev/null
+++ b/chromeos-base/autotest/autotest-0.0.2-r14886.ebuild
@@ -0,0 +1,139 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("6311d895c7f41411cb43618793202a42555e60d5" "50826c369fecc61e5699beae61298aaaa9f009ce" "72df0f2b89ecca6d2f823038c6422fe5b898a0fb")
+CROS_WORKON_TREE=("90395dc6937293c1f70406b4dd0be6a56e417876" "84d973277d83c07b96298eabb5025c1241aa7dd1" "3f2804fd986e4f3dabfe8baa51297be1f057f7d3")
+CROS_WORKON_PROJECT=(
+	"chromiumos/third_party/autotest"
+	"chromiumos/config"
+	"chromiumos/platform/fw-testing-configs"
+)
+
+CROS_WORKON_LOCALNAME=(
+	"third_party/autotest/files"
+	"config"
+	"third_party/autotest/files/server/cros/faft/fw-testing-configs"
+)
+
+CROS_WORKON_SUBTREE=(
+	""
+	"python"
+	""
+)
+
+CROS_WORKON_DESTDIR=(
+	"${S}"
+	"${S}/config"
+	"${S}/server/cros/faft/fw-testing-configs"
+)
+
+inherit cros-workon cros-constants
+
+DESCRIPTION="Autotest scripts and tools"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+SRC_URI=""
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	!<chromeos-base/autotest-chrome-0.0.1-r1788
+	!<chromeos-base/autotest-tests-0.0.1-r3291
+	!<chromeos-base/autotest-deps-0.0.2
+	virtual/autotest-libs
+	virtual/autotest-assistant-libs
+"
+
+# We don't want Python on the base image, however, there're several base
+# chromeos dependent ebuilds that depend on this ebuild.
+DEPEND="${RDEPEND}"
+
+# Ensure the configures run by autotest pick up the right config.site
+export CONFIG_SITE=/usr/share/config.site
+
+AUTOTEST_WORK="${WORKDIR}/autotest-work"
+
+src_prepare() {
+	mkdir -p "${AUTOTEST_WORK}/client"
+	mkdir -p "${AUTOTEST_WORK}/server"
+	cp -fpu "${S}"/client/* "${AUTOTEST_WORK}/client" &>/dev/null
+	cp -fpru "${S}"/client/{bin,common_lib,tools} "${AUTOTEST_WORK}/client"
+	cp -fpu "${S}"/server/* "${AUTOTEST_WORK}/server" &>/dev/null
+	cp -fpru "${S}"/server/{bin,control_segments,hosts,lib} "${AUTOTEST_WORK}/server"
+	cp -fpru "${S}"/{tko,utils,site_utils,test_suites,frontend} "${AUTOTEST_WORK}"
+
+	# cros directory is not from autotest upstream but cros project specific.
+	cp -fpru "${S}"/client/cros "${AUTOTEST_WORK}/client"
+
+	cp -fpru "${S}"/server/cros "${AUTOTEST_WORK}/server"
+
+	# Pre-create test directories.
+	local test_dirs="
+		client/tests client/site_tests
+		client/config client/deps client/profilers
+		server/tests server/site_tests packages"
+	local dir
+	for dir in ${test_dirs}; do
+		mkdir "${AUTOTEST_WORK}/${dir}"
+		touch "${AUTOTEST_WORK}/${dir}"/.keep
+	done
+	touch "${AUTOTEST_WORK}/client/profilers/__init__.py"
+
+	# Symlinks are needed for new setup_modules
+	# delete the top level symlink beforehand (if it exists).
+	find "${AUTOTEST_WORK}" -name "autotest_lib" -delete \
+		|| echo "Top level symlink did not exist!"
+
+	# Create the top level symlink (want autotest_lib --> .)
+	ln -s . "${AUTOTEST_WORK}/autotest_lib" \
+		|| die "Could not create autotest_lib symlink"
+
+	sed "/^enable_server_prebuild/d" "${S}/global_config.ini" > \
+		"${AUTOTEST_WORK}/global_config.ini"
+	default
+}
+
+src_install() {
+	insinto ${AUTOTEST_BASE}
+	doins -r "${AUTOTEST_WORK}"/*
+	python3 ${S}/utils/generate_metadata.py -autotest_path=${S} -output_file="${D}"${AUTOTEST_BASE}/autotest_metadata.pb
+
+	# base __init__.py
+	touch "${D}"${AUTOTEST_BASE}/__init__.py
+
+	# TODO: This should be more selective
+	chmod -R a+x "${D}"${AUTOTEST_BASE}
+
+	# setup stuff needed for read/write operation
+	chmod a+wx "${D}${AUTOTEST_BASE}/packages"
+
+	dodir "${AUTOTEST_BASE}/client/packages"
+	chmod a+wx "${D}${AUTOTEST_BASE}/client/packages"
+
+	dodir "${AUTOTEST_BASE}/server/tmp"
+	chmod a+wx "${D}${AUTOTEST_BASE}/server/tmp"
+
+	# Set up symlinks so that debug info works for autotests.
+	dodir /usr/lib/debug${AUTOTEST_BASE}/
+	dosym client/site_tests /usr/lib/debug${AUTOTEST_BASE}/tests
+
+	# Punt any nested .git dirs.
+	find "${D}" -name .git -exec rm -rf {} +
+}
+
+src_test() {
+	# Run the autotest unit tests.
+	./utils/unittest_suite.py --debug || die "Autotest unit tests failed."
+	python3 ./utils/unittest_suite.py --debug --py_version=3 || die "Autotest unit tests failed in Python 3."
+
+}
+
+# Packages client.
+pkg_postinst() {
+	local root_autotest_dir="${ROOT}${AUTOTEST_BASE}"
+	flock "${root_autotest_dir}/packages" \
+			-c "PYTHONDONTWRITEBYTECODE=1 ${root_autotest_dir}/utils/packager.py \
+				-r ${root_autotest_dir}/packages --client -a upload"
+}
diff --git a/chromeos-base/autotest/autotest-9999.ebuild b/chromeos-base/autotest/autotest-9999.ebuild
index af06a7f..6b3616f 100644
--- a/chromeos-base/autotest/autotest-9999.ebuild
+++ b/chromeos-base/autotest/autotest-9999.ebuild
@@ -5,14 +5,25 @@
 
 CROS_WORKON_PROJECT=(
 	"chromiumos/third_party/autotest"
+	"chromiumos/config"
 	"chromiumos/platform/fw-testing-configs"
 )
+
 CROS_WORKON_LOCALNAME=(
 	"third_party/autotest/files"
+	"config"
 	"third_party/autotest/files/server/cros/faft/fw-testing-configs"
 )
+
+CROS_WORKON_SUBTREE=(
+	""
+	"python"
+	""
+)
+
 CROS_WORKON_DESTDIR=(
 	"${S}"
+	"${S}/config"
 	"${S}/server/cros/faft/fw-testing-configs"
 )
 
@@ -85,7 +96,7 @@
 src_install() {
 	insinto ${AUTOTEST_BASE}
 	doins -r "${AUTOTEST_WORK}"/*
-	python3 ${S}/utils/generate_metadata.py -autotest_path=${S} -output_file="${D}"${AUTOTEST_BASE}/autotest_metadata
+	python3 ${S}/utils/generate_metadata.py -autotest_path=${S} -output_file="${D}"${AUTOTEST_BASE}/autotest_metadata.pb
 
 	# base __init__.py
 	touch "${D}"${AUTOTEST_BASE}/__init__.py
@@ -113,6 +124,8 @@
 src_test() {
 	# Run the autotest unit tests.
 	./utils/unittest_suite.py --debug || die "Autotest unit tests failed."
+	python3 ./utils/unittest_suite.py --debug --py_version=3 || die "Autotest unit tests failed in Python 3."
+
 }
 
 # Packages client.
diff --git a/chromeos-base/avtest_label_detect/avtest_label_detect-0.0.1-r3070.ebuild b/chromeos-base/avtest_label_detect/avtest_label_detect-0.0.1-r3070.ebuild
deleted file mode 100644
index 17ded4a..0000000
--- a/chromeos-base/avtest_label_detect/avtest_label_detect-0.0.1-r3070.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 2014 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.
-
-EAPI="6"
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "396263bc402f0a6170b30ba28fb6694fd2c0ad06" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_DESTDIR="${S}"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk avtest_label_detect .gn"
-
-inherit cros-sanitizers cros-workon cros-common.mk
-
-DESCRIPTION="Autotest label detector for audio/video/camera"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/avtest_label_detect"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="-asan v4l2_codec vaapi"
-
-RDEPEND="vaapi? ( x11-libs/libva )"
-DEPEND="${RDEPEND}"
-
-src_unpack() {
-	cros-workon_src_unpack
-	S+="/avtest_label_detect"
-}
-
-src_configure() {
-	export USE_VAAPI=$(usex vaapi)
-	export USE_V4L2_CODEC=$(usex v4l2_codec)
-	sanitizers-setup-env
-	cros-common.mk_src_configure
-}
-
-src_install() {
-	# Install built tools
-	pushd "${OUT}" >/dev/null
-	dobin avtest_label_detect
-	popd >/dev/null
-
-	insinto /etc
-	doins "${S}"/avtest_label_detect.conf
-}
diff --git a/chromeos-base/avtest_label_detect/avtest_label_detect-0.0.1-r3096.ebuild b/chromeos-base/avtest_label_detect/avtest_label_detect-0.0.1-r3096.ebuild
new file mode 100644
index 0000000..be64676
--- /dev/null
+++ b/chromeos-base/avtest_label_detect/avtest_label_detect-0.0.1-r3096.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2014 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.
+
+EAPI="6"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "58bcd7637179c74f9fe9d2ba6602d425c5ba584a" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_DESTDIR="${S}"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk avtest_label_detect .gn"
+
+inherit cros-sanitizers cros-workon cros-common.mk
+
+DESCRIPTION="Autotest label detector for audio/video/camera"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/avtest_label_detect"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="-asan v4l2_codec vaapi"
+
+RDEPEND="vaapi? ( x11-libs/libva )"
+DEPEND="${RDEPEND}"
+
+src_unpack() {
+	cros-workon_src_unpack
+	S+="/avtest_label_detect"
+}
+
+src_configure() {
+	export USE_VAAPI=$(usex vaapi)
+	export USE_V4L2_CODEC=$(usex v4l2_codec)
+	sanitizers-setup-env
+	cros-common.mk_src_configure
+}
+
+src_install() {
+	# Install built tools
+	pushd "${OUT}" >/dev/null
+	dobin avtest_label_detect
+	popd >/dev/null
+
+	insinto /etc
+	doins "${S}"/avtest_label_detect.conf
+}
diff --git a/chromeos-base/biod/biod-0.0.1-r2064.ebuild b/chromeos-base/biod/biod-0.0.1-r2064.ebuild
deleted file mode 100644
index 923ee97..0000000
--- a/chromeos-base/biod/biod-0.0.1-r2064.ebuild
+++ /dev/null
@@ -1,121 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "b1f4ad4ab3cbb07f7d6d2756b7c06a950376ea88" "aa0612733aca2d5ffa65470f07408228b473ebdb" "667180eb5db7eb65a292552b106b32aa5881c9eb" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_USE_VCSID="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk biod chromeos-config libec metrics .gn"
-
-PLATFORM_SUBDIR="biod"
-
-inherit cros-fuzzer cros-sanitizers cros-workon platform udev user
-
-DESCRIPTION="Biometrics Daemon for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/README.md"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="
-	fp_on_power_button
-	fpmcu_firmware_bloonchipper
-	fpmcu_firmware_dartmonkey
-	fpmcu_firmware_nami
-	fpmcu_firmware_nocturne
-	fuzzer
-	generated_cros_config
-	unibuild
-"
-
-COMMON_DEPEND="
-	chromeos-base/chromeos-config-tools:=
-	chromeos-base/libec:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	sys-apps/flashmap:=
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
-"
-
-# For biod_client_tool. The biod_proxy library will be built on all boards but
-# biod_client_tool will be built only on boards with biod.
-COMMON_DEPEND+="
-	chromeos-base/biod_proxy:=
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	sys-apps/flashrom
-	virtual/chromeos-firmware-fpmcu
-	"
-
-# Release branch firmware.
-# The USE flags below come from USE_EXPAND variables.
-# See third_party/chromiumos-overlay/profiles/base/make.defaults.
-RDEPEND+="
-	fpmcu_firmware_bloonchipper? ( sys-firmware/chromeos-fpmcu-release-bloonchipper )
-	fpmcu_firmware_dartmonkey? ( sys-firmware/chromeos-fpmcu-release-dartmonkey )
-	fpmcu_firmware_nami? ( sys-firmware/chromeos-fpmcu-release-nami )
-	fpmcu_firmware_nocturne? ( sys-firmware/chromeos-fpmcu-release-nocturne )
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/chromeos-ec-headers:=
-	chromeos-base/power_manager-client:=
-	chromeos-base/system_api:=[fuzzer?]
-	dev-libs/openssl:=
-"
-
-pkg_setup() {
-	enewuser biod
-	enewgroup biod
-}
-
-src_install() {
-	dobin "${OUT}"/biod
-
-	dobin "${OUT}"/bio_crypto_init
-	dobin "${OUT}"/bio_wash
-
-	dosbin "${OUT}"/bio_fw_updater
-
-	into /usr/local
-	dobin "${OUT}"/biod_client_tool
-
-	insinto /usr/share/policy
-	local seccomp_src_dir="init/seccomp"
-
-	newins "${seccomp_src_dir}/biod-seccomp-${ARCH}.policy" \
-		biod-seccomp.policy
-
-	newins "${seccomp_src_dir}/bio-crypto-init-seccomp-${ARCH}.policy" \
-		bio-crypto-init-seccomp.policy
-
-	insinto /etc/init
-	doins init/*.conf
-
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.BiometricsDaemon.conf
-
-	udev_dorules udev/99-biod.rules
-
-	# Set up cryptohome daemon mount store in daemon's mount
-	# namespace.
-	local daemon_store="/etc/daemon-store/biod"
-	dodir "${daemon_store}"
-	fperms 0700 "${daemon_store}"
-	fowners biod:biod "${daemon_store}"
-
-	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/biod_storage_fuzzer
-
-	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/biod_crypto_validation_value_fuzzer
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/biod_test_runner"
-}
diff --git a/chromeos-base/biod/biod-0.0.1-r2150.ebuild b/chromeos-base/biod/biod-0.0.1-r2150.ebuild
new file mode 100644
index 0000000..a21ba2e
--- /dev/null
+++ b/chromeos-base/biod/biod-0.0.1-r2150.ebuild
@@ -0,0 +1,119 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="c9ef1221782f42d1fd625da1678271b3c9920480"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "f109c58de01a51af0998c1f59270c5788c2b061d" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "ad1fd2e4d4c9cb42d85d97fe12f958890ad6ab14" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_USE_VCSID="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk biod chromeos-config libec metrics .gn"
+
+PLATFORM_SUBDIR="biod"
+
+inherit cros-fuzzer cros-sanitizers cros-workon cros-unibuild platform udev user
+
+DESCRIPTION="Biometrics Daemon for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/README.md"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="
+	factory_branch
+	fp_on_power_button
+	fpmcu_firmware_bloonchipper
+	fpmcu_firmware_dartmonkey
+	fpmcu_firmware_nami
+	fpmcu_firmware_nocturne
+	fuzzer
+"
+
+COMMON_DEPEND="
+	chromeos-base/chromeos-config-tools:=
+	chromeos-base/libec:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	sys-apps/flashmap:=
+"
+
+# For biod_client_tool. The biod_proxy library will be built on all boards but
+# biod_client_tool will be built only on boards with biod.
+COMMON_DEPEND+="
+	chromeos-base/biod_proxy:=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	sys-apps/flashrom
+	!factory_branch? ( virtual/chromeos-firmware-fpmcu )
+	"
+
+# Release branch firmware.
+# The USE flags below come from USE_EXPAND variables.
+# See third_party/chromiumos-overlay/profiles/base/make.defaults.
+RDEPEND+="
+	!factory_branch? (
+		fpmcu_firmware_bloonchipper? ( sys-firmware/chromeos-fpmcu-release-bloonchipper )
+		fpmcu_firmware_dartmonkey? ( sys-firmware/chromeos-fpmcu-release-dartmonkey )
+		fpmcu_firmware_nami? ( sys-firmware/chromeos-fpmcu-release-nami )
+		fpmcu_firmware_nocturne? ( sys-firmware/chromeos-fpmcu-release-nocturne )
+	)
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/chromeos-ec-headers:=
+	chromeos-base/power_manager-client:=
+	chromeos-base/system_api:=[fuzzer?]
+	dev-libs/openssl:=
+"
+
+pkg_setup() {
+	enewuser biod
+	enewgroup biod
+}
+
+src_install() {
+	dobin "${OUT}"/biod
+
+	dobin "${OUT}"/bio_crypto_init
+	dobin "${OUT}"/bio_wash
+
+	dosbin "${OUT}"/bio_fw_updater
+
+	into /usr/local
+	dobin "${OUT}"/biod_client_tool
+
+	insinto /usr/share/policy
+	local seccomp_src_dir="init/seccomp"
+
+	newins "${seccomp_src_dir}/biod-seccomp-${ARCH}.policy" \
+		biod-seccomp.policy
+
+	newins "${seccomp_src_dir}/bio-crypto-init-seccomp-${ARCH}.policy" \
+		bio-crypto-init-seccomp.policy
+
+	insinto /etc/init
+	doins init/*.conf
+
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.BiometricsDaemon.conf
+
+	udev_dorules udev/99-biod.rules
+
+	# Set up cryptohome daemon mount store in daemon's mount
+	# namespace.
+	local daemon_store="/etc/daemon-store/biod"
+	dodir "${daemon_store}"
+	fperms 0700 "${daemon_store}"
+	fowners biod:biod "${daemon_store}"
+
+	local fuzzer_component_id="782045"
+	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/biod_storage_fuzzer --comp "${fuzzer_component_id}"
+
+	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/biod_crypto_validation_value_fuzzer --comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/biod_test_runner"
+}
diff --git a/chromeos-base/biod/biod-9999.ebuild b/chromeos-base/biod/biod-9999.ebuild
index a3c421b..9d18cc4 100644
--- a/chromeos-base/biod/biod-9999.ebuild
+++ b/chromeos-base/biod/biod-9999.ebuild
@@ -10,7 +10,7 @@
 
 PLATFORM_SUBDIR="biod"
 
-inherit cros-fuzzer cros-sanitizers cros-workon platform udev user
+inherit cros-fuzzer cros-sanitizers cros-workon cros-unibuild platform udev user
 
 DESCRIPTION="Biometrics Daemon for Chromium OS"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/README.md"
@@ -18,14 +18,13 @@
 LICENSE="BSD-Google"
 KEYWORDS="~*"
 IUSE="
+	factory_branch
 	fp_on_power_button
 	fpmcu_firmware_bloonchipper
 	fpmcu_firmware_dartmonkey
 	fpmcu_firmware_nami
 	fpmcu_firmware_nocturne
 	fuzzer
-	generated_cros_config
-	unibuild
 "
 
 COMMON_DEPEND="
@@ -33,10 +32,6 @@
 	chromeos-base/libec:=
 	>=chromeos-base/metrics-0.0.1-r3152:=
 	sys-apps/flashmap:=
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
 "
 
 # For biod_client_tool. The biod_proxy library will be built on all boards but
@@ -48,17 +43,19 @@
 RDEPEND="
 	${COMMON_DEPEND}
 	sys-apps/flashrom
-	virtual/chromeos-firmware-fpmcu
+	!factory_branch? ( virtual/chromeos-firmware-fpmcu )
 	"
 
 # Release branch firmware.
 # The USE flags below come from USE_EXPAND variables.
 # See third_party/chromiumos-overlay/profiles/base/make.defaults.
 RDEPEND+="
-	fpmcu_firmware_bloonchipper? ( sys-firmware/chromeos-fpmcu-release-bloonchipper )
-	fpmcu_firmware_dartmonkey? ( sys-firmware/chromeos-fpmcu-release-dartmonkey )
-	fpmcu_firmware_nami? ( sys-firmware/chromeos-fpmcu-release-nami )
-	fpmcu_firmware_nocturne? ( sys-firmware/chromeos-fpmcu-release-nocturne )
+	!factory_branch? (
+		fpmcu_firmware_bloonchipper? ( sys-firmware/chromeos-fpmcu-release-bloonchipper )
+		fpmcu_firmware_dartmonkey? ( sys-firmware/chromeos-fpmcu-release-dartmonkey )
+		fpmcu_firmware_nami? ( sys-firmware/chromeos-fpmcu-release-nami )
+		fpmcu_firmware_nocturne? ( sys-firmware/chromeos-fpmcu-release-nocturne )
+	)
 "
 
 DEPEND="
@@ -109,9 +106,10 @@
 	fperms 0700 "${daemon_store}"
 	fowners biod:biod "${daemon_store}"
 
-	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/biod_storage_fuzzer
+	local fuzzer_component_id="782045"
+	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/biod_storage_fuzzer --comp "${fuzzer_component_id}"
 
-	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/biod_crypto_validation_value_fuzzer
+	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/biod_crypto_validation_value_fuzzer --comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/biod_proxy/biod_proxy-0.0.1-r189.ebuild b/chromeos-base/biod_proxy/biod_proxy-0.0.1-r189.ebuild
deleted file mode 100644
index 4f146d0..0000000
--- a/chromeos-base/biod_proxy/biod_proxy-0.0.1-r189.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "b1f4ad4ab3cbb07f7d6d2756b7c06a950376ea88" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_USE_VCSID="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk biod .gn"
-
-PLATFORM_SUBDIR="biod/biod_proxy"
-
-inherit cros-workon platform
-
-DESCRIPTION="DBus Proxy Library for Biometrics Daemon for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/README.md"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND=""
-
-DEPEND="
-	chromeos-base/libbrillo:=
-	chromeos-base/system_api:=
-"
-
-src_install() {
-	dolib.so "${OUT}"/lib/libbiod_proxy.so
-	insinto /usr/include/biod/biod_proxy/
-	doins ./*.h
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/biod_proxy_test_runner"
-}
diff --git a/chromeos-base/biod_proxy/biod_proxy-0.0.1-r237.ebuild b/chromeos-base/biod_proxy/biod_proxy-0.0.1-r237.ebuild
new file mode 100644
index 0000000..bfb661d
--- /dev/null
+++ b/chromeos-base/biod_proxy/biod_proxy-0.0.1-r237.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="c9ef1221782f42d1fd625da1678271b3c9920480"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "f109c58de01a51af0998c1f59270c5788c2b061d" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_USE_VCSID="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk biod .gn"
+
+PLATFORM_SUBDIR="biod/biod_proxy"
+
+inherit cros-workon platform
+
+DESCRIPTION="DBus Proxy Library for Biometrics Daemon for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/README.md"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND=""
+
+DEPEND="
+	chromeos-base/libbrillo:=
+	chromeos-base/system_api:=
+"
+
+src_install() {
+	dolib.so "${OUT}"/lib/libbiod_proxy.so
+	insinto /usr/include/biod/biod_proxy/
+	doins ./*.h
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/biod_proxy_test_runner"
+}
diff --git a/chromeos-base/bootid-logger/bootid-logger-0.0.1-r102.ebuild b/chromeos-base/bootid-logger/bootid-logger-0.0.1-r102.ebuild
new file mode 100644
index 0000000..2aca312
--- /dev/null
+++ b/chromeos-base/bootid-logger/bootid-logger-0.0.1-r102.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2020 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.
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "9a371818ac5e4d70b630fbfaa842b41aaaad41a3" "7f79ba80bc41a40e4abc474296e860f6280f926c" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="common-mk bootid-logger croslog .gn"
+
+PLATFORM_SUBDIR="bootid-logger"
+
+inherit cros-workon platform
+
+DESCRIPTION="Program to record the current boot ID to the log"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/bootid-logger"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND=">=chromeos-base/croslog-0.0.1-r45"
+
+DEPEND="${RDEPEND}"
+
+src_install() {
+	platform_install
+
+	insinto /etc/init
+	doins log-bootid-on-boot.conf
+}
+
+platform_pkg_test() {
+	platform test_all
+}
diff --git a/chromeos-base/bootid-logger/bootid-logger-0.0.1-r72.ebuild b/chromeos-base/bootid-logger/bootid-logger-0.0.1-r72.ebuild
deleted file mode 100644
index 21204bc..0000000
--- a/chromeos-base/bootid-logger/bootid-logger-0.0.1-r72.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 2020 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.
-
-EAPI=7
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "3f9bd291ca1a611db3eaaff6cce78f4ebaa0c7eb" "fa823f91c6f2d1432f2bfaf49b5785eeb4e6e6fb" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="common-mk bootid-logger croslog .gn"
-
-PLATFORM_SUBDIR="bootid-logger"
-
-inherit cros-workon platform
-
-DESCRIPTION="Program to record the current boot ID to the log"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/bootid-logger"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="!<=chromeos-base/croslog-0.0.1-r44"
-
-src_install() {
-	platform_install
-
-	insinto /etc/init
-	doins log-bootid-on-boot.conf
-}
-
-platform_pkg_test() {
-	platform test_all
-}
-
diff --git a/chromeos-base/bootid-logger/bootid-logger-9999.ebuild b/chromeos-base/bootid-logger/bootid-logger-9999.ebuild
index ef9fe6c..14e5677 100644
--- a/chromeos-base/bootid-logger/bootid-logger-9999.ebuild
+++ b/chromeos-base/bootid-logger/bootid-logger-9999.ebuild
@@ -21,7 +21,9 @@
 KEYWORDS="~*"
 IUSE=""
 
-RDEPEND="!<=chromeos-base/croslog-0.0.1-r44"
+RDEPEND=">=chromeos-base/croslog-0.0.1-r45"
+
+DEPEND="${RDEPEND}"
 
 src_install() {
 	platform_install
@@ -33,4 +35,3 @@
 platform_pkg_test() {
 	platform test_all
 }
-
diff --git a/chromeos-base/bootlockbox-client/bootlockbox-client-0.0.1-r1166.ebuild b/chromeos-base/bootlockbox-client/bootlockbox-client-0.0.1-r1166.ebuild
deleted file mode 100644
index 17c3d03..0000000
--- a/chromeos-base/bootlockbox-client/bootlockbox-client-0.0.1-r1166.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a9ed3579a46a08a64f1ac9d96a1faaa6e15720b9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk cryptohome .gn"
-
-PLATFORM_SUBDIR="cryptohome/bootlockbox-client"
-
-inherit cros-workon platform
-
-DESCRIPTION="BootLockbox DBus client library for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros_host"
-
-# D-Bus proxies generated by this client library depend on the code generator
-# itself (chromeos-dbus-bindings) and produce header files that rely on
-# libbrillo library.
-BDEPEND="
-	chromeos-base/chromeos-dbus-bindings
-"
-
-src_install() {
-	# Export neccessary header files:
-	insinto /usr/include/bootlockbox-client/bootlockbox
-	doins ../bootlockbox/boot_lockbox_client.h
-
-	# Export necessary for crytphome header files:
-	insinto /usr/include/cryptohome/bootlockbox
-	doins "${OUT}"/gen/include/cryptohome/bootlockbox/*.h
-
-	dolib.a "${OUT}"/libbootlockbox-proto.a
-	# Install libbootlockbox-client.so:
-	dolib.so "${OUT}"/lib/libbootlockbox-client.so
-
-	# Install DBus client library.
-	platform_install_dbus_client_lib "bootlockbox"
-}
diff --git a/chromeos-base/bootlockbox-client/bootlockbox-client-0.0.1-r1335.ebuild b/chromeos-base/bootlockbox-client/bootlockbox-client-0.0.1-r1335.ebuild
new file mode 100644
index 0000000..7aacfaa
--- /dev/null
+++ b/chromeos-base/bootlockbox-client/bootlockbox-client-0.0.1-r1335.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="4044c5b32117b91cc288ad825f8345d7933ef54b"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "805a463dbaf0f6276d889ff7b347e2dcd599f8f3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk cryptohome .gn"
+
+PLATFORM_SUBDIR="cryptohome/bootlockbox-client"
+
+inherit cros-workon platform
+
+DESCRIPTION="BootLockbox DBus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cros_host"
+
+# D-Bus proxies generated by this client library depend on the code generator
+# itself (chromeos-dbus-bindings) and produce header files that rely on
+# libbrillo library.
+BDEPEND="
+	chromeos-base/chromeos-dbus-bindings
+"
+
+src_install() {
+	# Export neccessary header files:
+	insinto /usr/include/bootlockbox-client/bootlockbox
+	doins ../bootlockbox/boot_lockbox_client.h
+
+	# Export necessary for crytphome header files:
+	insinto /usr/include/cryptohome/bootlockbox
+	doins "${OUT}"/gen/include/cryptohome/bootlockbox/*.h
+
+	dolib.a "${OUT}"/libbootlockbox-proto.a
+	# Install libbootlockbox-client.so:
+	dolib.so "${OUT}"/lib/libbootlockbox-client.so
+
+	# Install DBus client library.
+	platform_install_dbus_client_lib "bootlockbox"
+}
diff --git a/chromeos-base/bootstat/bootstat-0.0.2-r3116.ebuild b/chromeos-base/bootstat/bootstat-0.0.2-r3116.ebuild
deleted file mode 100644
index 235c591..0000000
--- a/chromeos-base/bootstat/bootstat-0.0.2-r3116.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "b871cc16ed8888c27944a61b1162d608b0921572" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk bootstat .gn"
-
-PLATFORM_SUBDIR="bootstat"
-
-inherit cros-workon platform
-
-DESCRIPTION="Chrome OS Boot Time Statistics Utilities"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/bootstat/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-COMMON_DEPEND="
-	sys-apps/rootdev:=
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-"
-
-src_install() {
-	dosbin "${OUT}"/bootstat
-	dosbin bootstat_archive
-	dosbin bootstat_get_last
-	dobin bootstat_summary
-
-	dolib.so "${OUT}"/lib/libbootstat.so
-
-	insinto /usr/include/metrics
-	doins bootstat.h
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/libbootstat_unittests"
-}
diff --git a/chromeos-base/bootstat/bootstat-0.0.2-r3144.ebuild b/chromeos-base/bootstat/bootstat-0.0.2-r3144.ebuild
new file mode 100644
index 0000000..5be4989
--- /dev/null
+++ b/chromeos-base/bootstat/bootstat-0.0.2-r3144.ebuild
@@ -0,0 +1,43 @@
+# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "099ee78ecfdd76a535372e12365bd5372e6e2596" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk bootstat .gn"
+
+PLATFORM_SUBDIR="bootstat"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS Boot Time Statistics Utilities"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/bootstat/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+COMMON_DEPEND="
+	sys-apps/rootdev:=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+"
+
+src_install() {
+	platform_install
+}
+
+platform_pkg_test() {
+	platform test_all
+}
diff --git a/chromeos-base/bootstat/bootstat-9999.ebuild b/chromeos-base/bootstat/bootstat-9999.ebuild
index 5fd844b..414963c 100644
--- a/chromeos-base/bootstat/bootstat-9999.ebuild
+++ b/chromeos-base/bootstat/bootstat-9999.ebuild
@@ -33,17 +33,9 @@
 "
 
 src_install() {
-	dosbin "${OUT}"/bootstat
-	dosbin bootstat_archive
-	dosbin bootstat_get_last
-	dobin bootstat_summary
-
-	dolib.so "${OUT}"/lib/libbootstat.so
-
-	insinto /usr/include/metrics
-	doins bootstat.h
+	platform_install
 }
 
 platform_pkg_test() {
-	platform_test "run" "${OUT}/libbootstat_unittests"
+	platform test_all
 }
diff --git a/chromeos-base/buffet/buffet-0.0.1-r2930.ebuild b/chromeos-base/buffet/buffet-0.0.1-r2930.ebuild
deleted file mode 100644
index 11a1b68..0000000
--- a/chromeos-base/buffet/buffet-0.0.1-r2930.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "47f6ceba57219100723f2671e0d507bd7605f22f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk buffet .gn"
-
-PLATFORM_SUBDIR="buffet"
-
-inherit cros-workon libchrome platform user
-
-DESCRIPTION="Local and cloud communication services for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/buffet/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-COMMON_DEPEND="
-	chromeos-base/libweave:=
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/shill-client:=
-	chromeos-base/system_api:=
-"
-
-pkg_preinst() {
-	# Create user and group for buffet.
-	enewuser "buffet"
-	enewgroup "buffet"
-}
-
-src_install() {
-	insinto "/usr/$(get_libdir)/pkgconfig"
-
-	dobin "${OUT}"/buffet
-	dobin "${OUT}"/buffet_client
-
-	# DBus configuration.
-	insinto /etc/dbus-1/system.d
-	doins etc/dbus-1/org.chromium.Buffet.conf
-
-	# Upstart script.
-	insinto /etc/init
-	doins etc/init/buffet.conf
-	sed -i 's/\(BUFFET_DISABLE_PRIVET=\).*$/\1true/g' \
-		"${ED}"/etc/init/buffet.conf
-}
-
-platform_pkg_test() {
-	local tests=(
-		buffet_testrunner
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/buffet/buffet-0.0.1-r2957.ebuild b/chromeos-base/buffet/buffet-0.0.1-r2957.ebuild
new file mode 100644
index 0000000..7f732ea
--- /dev/null
+++ b/chromeos-base/buffet/buffet-0.0.1-r2957.ebuild
@@ -0,0 +1,70 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "7e1c963c411477282f734722b3e2b5cb9f0e8462" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk buffet .gn"
+
+PLATFORM_SUBDIR="buffet"
+
+inherit cros-workon libchrome platform user
+
+DESCRIPTION="Local and cloud communication services for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/buffet/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+COMMON_DEPEND="
+	chromeos-base/libweave:=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/shill-client:=
+	chromeos-base/system_api:=
+"
+
+pkg_preinst() {
+	# Create user and group for buffet.
+	enewuser "buffet"
+	enewgroup "buffet"
+}
+
+src_install() {
+	insinto "/usr/$(get_libdir)/pkgconfig"
+
+	dobin "${OUT}"/buffet
+	dobin "${OUT}"/buffet_client
+
+	# DBus configuration.
+	insinto /etc/dbus-1/system.d
+	doins etc/dbus-1/org.chromium.Buffet.conf
+
+	# Upstart script.
+	insinto /etc/init
+	doins etc/init/buffet.conf
+	sed -i 's/\(BUFFET_DISABLE_PRIVET=\).*$/\1true/g' \
+		"${ED}"/etc/init/buffet.conf
+}
+
+platform_pkg_test() {
+	local tests=(
+		buffet_testrunner
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/cbor/cbor-0.0.1-r101.ebuild b/chromeos-base/cbor/cbor-0.0.1-r101.ebuild
deleted file mode 100644
index 2647d59..0000000
--- a/chromeos-base/cbor/cbor-0.0.1-r101.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("f34cf3a06f7b17b7829185630d886a5d9d3f0e75" "6d5abcafdfda3c78f64cb242c8d7e8076c5af451")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "f5f3d15e265fd3d3816c4b9533ecd5f3c05cf927")
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform2"
-	"chromiumos/platform/cbor"
-)
-
-CROS_WORKON_LOCALNAME=(
-	"platform2"
-	"platform/cbor"
-)
-
-CROS_WORKON_DESTDIR=(
-	"${S}/platform2"
-	# This needs to be platform2/cbor instead of platform/cbor because we are
-	# using the platform2 build system.
-	"${S}/platform2/cbor"
-)
-
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
-
-PLATFORM_SUBDIR="cbor"
-
-inherit cros-workon platform
-
-DESCRIPTION="Concise Binary Object Representation (CBOR) library for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/cbor"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-src_install() {
-	dolib.so "${OUT}"/lib/libcbor.so
-	insinto /usr/include/chromeos/cbor/
-	doins ./*.h
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "${OUT}"/obj/cbor/cbor.pc
-
-	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/reader_fuzzer
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/cbor_unittests"
-}
diff --git a/chromeos-base/cbor/cbor-0.0.1-r128.ebuild b/chromeos-base/cbor/cbor-0.0.1-r128.ebuild
new file mode 100644
index 0000000..ea5b2a6
--- /dev/null
+++ b/chromeos-base/cbor/cbor-0.0.1-r128.ebuild
@@ -0,0 +1,52 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "67aa7858c5ceada16d1d26f54de99a35ecf00ecd")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "2245d96f551c21c7caf9bfd1c0556897fb8ceb79")
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform2"
+	"chromiumos/platform/cbor"
+)
+
+CROS_WORKON_LOCALNAME=(
+	"platform2"
+	"platform/cbor"
+)
+
+CROS_WORKON_DESTDIR=(
+	"${S}/platform2"
+	# This needs to be platform2/cbor instead of platform/cbor because we are
+	# using the platform2 build system.
+	"${S}/platform2/cbor"
+)
+
+CROS_WORKON_SUBTREE=("common-mk .gn" "")
+
+PLATFORM_SUBDIR="cbor"
+
+inherit cros-workon platform
+
+DESCRIPTION="Concise Binary Object Representation (CBOR) library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/cbor"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+src_install() {
+	dolib.so "${OUT}"/lib/libcbor.so
+	insinto /usr/include/chromeos/cbor/
+	doins ./*.h
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "${OUT}"/obj/cbor/cbor.pc
+
+	local fuzzer_component_id="923964"
+	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/reader_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/cbor_unittests"
+}
diff --git a/chromeos-base/cbor/cbor-9999.ebuild b/chromeos-base/cbor/cbor-9999.ebuild
index b9bb5b7..3494174 100644
--- a/chromeos-base/cbor/cbor-9999.ebuild
+++ b/chromeos-base/cbor/cbor-9999.ebuild
@@ -40,7 +40,9 @@
 	insinto "/usr/$(get_libdir)/pkgconfig"
 	doins "${OUT}"/obj/cbor/cbor.pc
 
-	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/reader_fuzzer
+	local fuzzer_component_id="923964"
+	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/reader_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/cfm-dfu-notification/cfm-dfu-notification-0.0.1-r104.ebuild b/chromeos-base/cfm-dfu-notification/cfm-dfu-notification-0.0.1-r104.ebuild
deleted file mode 100644
index d11eb86..0000000
--- a/chromeos-base/cfm-dfu-notification/cfm-dfu-notification-0.0.1-r104.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "63862a9eebc1145ee434295657abeeefaf884645" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE="common-mk cfm-dfu-notification .gn"
-CROS_WORKON_DESTDIR="${S}/platform2"
-
-PLATFORM_SUBDIR="cfm-dfu-notification"
-
-inherit cros-workon platform
-
-DESCRIPTION="Library to send firmware update notifications to CFM"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-
-RDEPEND=""
-DEPEND="${RDEPEND}"
-
-src_install() {
-	dolib.so "${OUT}"/lib/libcfm_dfu_notification.so
-
-	"${S}"/platform2_preinstall.sh "${PV}" "/usr/include/chromeos" "${OUT}"
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "${OUT}"/cfm-dfu-notification.pc
-
-	insinto "/usr/include/chromeos/cfm-dfu-notification"
-	doins ./*.h
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}"/cfm_dfu_notification_test
-}
diff --git a/chromeos-base/cfm-dfu-notification/cfm-dfu-notification-0.0.1-r129.ebuild b/chromeos-base/cfm-dfu-notification/cfm-dfu-notification-0.0.1-r129.ebuild
new file mode 100644
index 0000000..f0bdc82
--- /dev/null
+++ b/chromeos-base/cfm-dfu-notification/cfm-dfu-notification-0.0.1-r129.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "63862a9eebc1145ee434295657abeeefaf884645" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE="common-mk cfm-dfu-notification .gn"
+CROS_WORKON_DESTDIR="${S}/platform2"
+
+PLATFORM_SUBDIR="cfm-dfu-notification"
+
+inherit cros-workon platform
+
+DESCRIPTION="Library to send firmware update notifications to CFM"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+
+RDEPEND=""
+DEPEND="${RDEPEND}"
+
+src_install() {
+	dolib.so "${OUT}"/lib/libcfm_dfu_notification.so
+
+	"${S}"/platform2_preinstall.sh "${PV}" "/usr/include/chromeos" "${OUT}"
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "${OUT}"/cfm-dfu-notification.pc
+
+	insinto "/usr/include/chromeos/cfm-dfu-notification"
+	doins ./*.h
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}"/cfm_dfu_notification_test
+}
diff --git a/chromeos-base/chameleon/chameleon-0.0.2-r445.ebuild b/chromeos-base/chameleon/chameleon-0.0.2-r445.ebuild
deleted file mode 100644
index 8920f4b..0000000
--- a/chromeos-base/chameleon/chameleon-0.0.2-r445.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=4
-CROS_WORKON_COMMIT="881f0e056f21431428db3b2dc9f1c0307c3dc321"
-CROS_WORKON_TREE="5d4fe40c80ce462da9b210a2d334f988a40123f2"
-CROS_WORKON_PROJECT="chromiumos/platform/chameleon"
-
-inherit cros-workon
-
-DESCRIPTION="Chameleon bundle for Autotest lab deployment"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/chameleon/"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="dev-lang/python"
-DEPEND="${RDEPEND}"
-
-src_install() {
-	local base_dir="/usr/share/chameleon-bundle"
-	insinto "${base_dir}"
-	newins dist/chameleond-*.tar.gz chameleond-${PVR}.tar.gz
-}
diff --git a/chromeos-base/chameleon/chameleon-0.0.2-r454.ebuild b/chromeos-base/chameleon/chameleon-0.0.2-r454.ebuild
new file mode 100644
index 0000000..a34470c
--- /dev/null
+++ b/chromeos-base/chameleon/chameleon-0.0.2-r454.ebuild
@@ -0,0 +1,26 @@
+# Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+CROS_WORKON_COMMIT="4fc0cf40f4b3172f0e1e6309c31b5f37397fef46"
+CROS_WORKON_TREE="ca890184778b53daf731385ea059a30a22cf107e"
+CROS_WORKON_PROJECT="chromiumos/platform/chameleon"
+
+inherit cros-workon
+
+DESCRIPTION="Chameleon bundle for Autotest lab deployment"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/chameleon/"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="dev-lang/python"
+DEPEND="${RDEPEND}"
+
+src_install() {
+	local base_dir="/usr/share/chameleon-bundle"
+	insinto "${base_dir}"
+	newins dist/chameleond-*.tar.gz chameleond-${PVR}.tar.gz
+}
diff --git a/chromeos-base/chaps-client/OWNERS b/chromeos-base/chaps-client/OWNERS
new file mode 100644
index 0000000..db7c5b0
--- /dev/null
+++ b/chromeos-base/chaps-client/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/chaps/OWNERS
diff --git a/chromeos-base/chaps-client/chaps-client-0.0.1-r7.ebuild b/chromeos-base/chaps-client/chaps-client-0.0.1-r7.ebuild
new file mode 100644
index 0000000..f9b6d7a
--- /dev/null
+++ b/chromeos-base/chaps-client/chaps-client-0.0.1-r7.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "113dbae63eb106c56996900e98cd65103bf297dc" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk chaps .gn"
+
+PLATFORM_SUBDIR="chaps/client"
+
+inherit cros-workon platform
+
+DESCRIPTION="chaps D-Bus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chaps/client/"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="cros_host"
+
+# D-Bus proxies generated by this client library depend on the code generator
+# itself (chromeos-dbus-bindings) and produce header files that rely on
+# libbrillo library, hence both dependencies. We require the particular
+# revision because libbrillo-0.0.1-r1 changed location of header files from
+# chromeos/ to brillo/ and chromeos-dbus-bindings-0.0.1-r1058 generates the
+# code using the new location.
+DEPEND="
+	cros_host? ( >=chromeos-base/chromeos-dbus-bindings-0.0.1-r1058 )
+	chromeos-base/libbrillo:=
+"
+
+RDEPEND="
+	chromeos-base/libbrillo:=
+"
+
+src_install() {
+	# Install D-Bus client library.
+	platform_install_dbus_client_lib "chaps"
+}
diff --git a/chromeos-base/chaps-client/chaps-client-9999.ebuild b/chromeos-base/chaps-client/chaps-client-9999.ebuild
new file mode 100644
index 0000000..0e597fa
--- /dev/null
+++ b/chromeos-base/chaps-client/chaps-client-9999.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk chaps .gn"
+
+PLATFORM_SUBDIR="chaps/client"
+
+inherit cros-workon platform
+
+DESCRIPTION="chaps D-Bus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chaps/client/"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="~*"
+IUSE="cros_host"
+
+# D-Bus proxies generated by this client library depend on the code generator
+# itself (chromeos-dbus-bindings) and produce header files that rely on
+# libbrillo library, hence both dependencies. We require the particular
+# revision because libbrillo-0.0.1-r1 changed location of header files from
+# chromeos/ to brillo/ and chromeos-dbus-bindings-0.0.1-r1058 generates the
+# code using the new location.
+DEPEND="
+	cros_host? ( >=chromeos-base/chromeos-dbus-bindings-0.0.1-r1058 )
+	chromeos-base/libbrillo:=
+"
+
+RDEPEND="
+	chromeos-base/libbrillo:=
+"
+
+src_install() {
+	# Install D-Bus client library.
+	platform_install_dbus_client_lib "chaps"
+}
diff --git a/chromeos-base/chaps/chaps-0.0.1-r3376.ebuild b/chromeos-base/chaps/chaps-0.0.1-r3376.ebuild
deleted file mode 100644
index 4465f9b..0000000
--- a/chromeos-base/chaps/chaps-0.0.1-r3376.ebuild
+++ /dev/null
@@ -1,182 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="d27dfb81bc87df4db16849f5da1b96f1cf5cd10b"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "8640df3a4aff4084b644aeefc4d31752a1d97665" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "a06a3f47395fb7b584188c6852764bc773e5497e" "8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_USE_VCSID=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk chaps metrics trunks tpm_manager .gn"
-
-PLATFORM_SUBDIR="chaps"
-
-inherit cros-workon platform systemd user
-
-DESCRIPTION="PKCS #11 layer over TrouSerS"
-HOMEPAGE="http://www.chromium.org/developers/design-documents/chaps-technical-design"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="systemd test tpm tpm2 fuzzer"
-
-REQUIRED_USE="tpm2? ( !tpm )"
-
-RDEPEND="
-	!tpm2? (
-		app-crypt/trousers:=
-	)
-	tpm2? (
-		chromeos-base/trunks:=
-	)
-	chromeos-base/minijail:=
-	chromeos-base/system_api:=[fuzzer?]
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/tpm_manager:=
-	!dev-db/leveldb
-	dev-libs/leveldb:=
-	dev-libs/openssl:=
-	dev-libs/protobuf:=
-"
-
-# Note: We need dev-libs/nss and dev-libs/nspr for the pkcs11 headers.
-DEPEND="${RDEPEND}
-	test? (
-		app-arch/gzip
-		app-arch/tar
-	)
-	chromeos-base/system_api:=[fuzzer?]
-	fuzzer? ( dev-libs/libprotobuf-mutator )
-	tpm2? ( chromeos-base/trunks:=[test?] )
-	dev-libs/nss:=
-	dev-libs/nspr:=
-	"
-
-pkg_setup() {
-	enewgroup "chronos-access"
-	enewuser "chaps"
-	cros-workon_pkg_setup
-}
-
-src_compile() {
-	platform_src_compile
-
-	# After compile, check the output for link dependency on nss.
-	# We should NOT have any link dependency on nss because nss imports chaps.
-	local out=$(scanelf -qRyn "${OUT}" | grep nss)
-	[[ -n "${out}" ]] && die "No link dependency on nss allowed:\n${out}"
-	# No dependency on nspr as well, same as above.
-	out=$(scanelf -qRyn "${OUT}" | grep nspr)
-	[[ -n "${out}" ]] && die "No link dependency on nspr allowed:\n${out}"
-}
-
-src_install() {
-	dosbin "${OUT}"/chapsd
-	dobin "${OUT}"/chaps_client
-	dobin "${OUT}"/p11_replay
-	dolib.so "${OUT}"/lib/libchaps.so
-
-	# Install D-Bus config file.
-	dodir /etc/dbus-1/system.d
-	sed 's,@POLICY_PERMISSIONS@,group="pkcs11",' \
-		"org.chromium.Chaps.conf.in" \
-		> "${D}/etc/dbus-1/system.d/org.chromium.Chaps.conf"
-
-	# Install init scripts.
-	if use systemd; then
-		if use tpm2; then
-			sed 's/tcsd.service/trunksd.service' \
-				init/chapsd.service \
-				> "${T}/chapsd.service"
-			systemd_dounit "${T}/chapsd.service"
-		else
-			systemd_dounit init/chapsd.service
-		fi
-		systemd_enable_service boot-services.target chapsd.service
-		systemd_dotmpfilesd init/chapsd_directories.conf
-	else
-		insinto /etc/init
-		doins init/chapsd.conf
-		if use tpm2; then
-			sed -i 's/started tcsd/started trunksd/' \
-				"${D}/etc/init/chapsd.conf" ||
-				die "Can't replace tcsd with trunksd in chapsd.conf"
-		fi
-	fi
-	exeinto /usr/share/cros/init
-
-	# Install headers for use by clients.
-	insinto /usr/include/chaps
-	doins token_manager_client.h
-	doins token_manager_client_mock.h
-	doins token_manager_interface.h
-	doins isolate.h
-	doins chaps_proxy_mock.h
-	doins chaps_interface.h
-	doins chaps.h
-	doins attributes.h
-
-	# Install live tests
-	if use test; then
-		dosbin "${OUT}"/chapsd_test
-		dosbin "${OUT}"/tpm_utility_test
-	fi
-
-	insinto /usr/include/chaps/pkcs11
-	doins pkcs11/*.h
-
-	# Chaps keeps database inside the user's cryptohome.
-	local daemon_store="/etc/daemon-store/chaps"
-	dodir "${daemon_store}"
-	fperms 0750 "${daemon_store}"
-	fowners chaps:chronos-access "${daemon_store}"
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/chaps_attributes_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/chaps_object_store_fuzzer
-}
-
-platform_pkg_test() {
-	local tests=(
-		chaps_test
-		chaps_service_test
-		dbus_test
-		slot_manager_test
-		session_test
-		object_test
-		object_policy_test
-		object_pool_test
-		object_store_test
-		opencryptoki_importer_test
-		isolate_login_client_test
-	)
-	use tpm2 && tests+=(
-		tpm2_utility_test
-	)
-
-	local gtest_filter_qemu=""
-	gtest_filter_qemu+="-*DeathTest*"
-	gtest_filter_qemu+=":*ImportSample*"
-	gtest_filter_qemu+=":TestSession.RSA*"
-	gtest_filter_qemu+=":TestSession.KeyTypeMismatch"
-	gtest_filter_qemu+=":TestSession.KeyFunctionPermission"
-	gtest_filter_qemu+=":TestSession.BadKeySize"
-	gtest_filter_qemu+=":TestSession.BadSignature.*"
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}" "" "" "${gtest_filter_qemu}"
-	done
-}
-
-pkg_preinst() {
-	local ug
-	for ug in attestation pkcs11 chaps; do
-		enewuser "${ug}"
-		enewgroup "${ug}"
-	done
-}
diff --git a/chromeos-base/chaps/chaps-0.0.1-r3472.ebuild b/chromeos-base/chaps/chaps-0.0.1-r3472.ebuild
new file mode 100644
index 0000000..0b1973a
--- /dev/null
+++ b/chromeos-base/chaps/chaps-0.0.1-r3472.ebuild
@@ -0,0 +1,176 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="7e56fbcc6f3c9e9ba98bf43a52940100e5fbc918"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "113dbae63eb106c56996900e98cd65103bf297dc" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "1e9ca239fab09ba22b58e4a22d63e2ede865b159" "e08a2eb734e33827dffeecf57eca046cd1091373" "d8da1275feb26afab354f35df7316b3840f8330b" "659b97d9c804b358f4bd27925620d4dd1cee8fc7" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_USE_VCSID=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk chaps libhwsec libhwsec-foundation metrics trunks tpm_manager .gn"
+
+PLATFORM_SUBDIR="chaps"
+
+inherit cros-workon platform systemd user
+
+DESCRIPTION="PKCS #11 layer over TrouSerS"
+HOMEPAGE="http://www.chromium.org/developers/design-documents/chaps-technical-design"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="systemd test tpm tpm_dynamic tpm2 fuzzer"
+
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
+
+RDEPEND="
+	tpm? (
+		app-crypt/trousers:=
+	)
+	tpm2? (
+		chromeos-base/trunks:=
+	)
+	chromeos-base/chaps-client:=
+	chromeos-base/minijail:=
+	chromeos-base/system_api:=[fuzzer?]
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/tpm_manager:=
+	!dev-db/leveldb
+	dev-libs/leveldb:=
+	dev-libs/openssl:=
+	dev-libs/protobuf:=
+"
+
+# Note: We need dev-libs/nss and dev-libs/nspr for the pkcs11 headers.
+DEPEND="${RDEPEND}
+	test? (
+		app-arch/gzip
+		app-arch/tar
+	)
+	chromeos-base/system_api:=[fuzzer?]
+	fuzzer? ( dev-libs/libprotobuf-mutator )
+	tpm2? ( chromeos-base/trunks:=[test?] )
+	dev-libs/nss:=
+	dev-libs/nspr:=
+	"
+
+pkg_setup() {
+	enewgroup "chronos-access"
+	enewuser "chaps"
+	cros-workon_pkg_setup
+}
+
+src_compile() {
+	platform_src_compile
+
+	# After compile, check the output for link dependency on nss.
+	# We should NOT have any link dependency on nss because nss imports chaps.
+	local out=$(scanelf -qRyn "${OUT}" | grep nss)
+	[[ -n "${out}" ]] && die "No link dependency on nss allowed:\n${out}"
+	# No dependency on nspr as well, same as above.
+	out=$(scanelf -qRyn "${OUT}" | grep nspr)
+	[[ -n "${out}" ]] && die "No link dependency on nspr allowed:\n${out}"
+}
+
+src_install() {
+	dosbin "${OUT}"/chapsd
+	dobin "${OUT}"/chaps_client
+	dobin "${OUT}"/p11_replay
+	dolib.so "${OUT}"/lib/libchaps.so
+
+	# Install D-Bus config file.
+	dodir /etc/dbus-1/system.d
+	sed 's,@POLICY_PERMISSIONS@,group="pkcs11",' \
+		"org.chromium.Chaps.conf.in" \
+		> "${D}/etc/dbus-1/system.d/org.chromium.Chaps.conf"
+
+	# Install init scripts.
+	if use systemd; then
+		systemd_dounit init/chapsd.service
+		systemd_enable_service boot-services.target chapsd.service
+		systemd_dotmpfilesd init/chapsd_directories.conf
+	else
+		insinto /etc/init
+		doins init/chapsd.conf
+	fi
+	exeinto /usr/share/cros/init
+
+	# Install headers for use by clients.
+	insinto /usr/include/chaps
+	doins token_manager_client.h
+	doins token_manager_client_mock.h
+	doins token_manager_interface.h
+	doins isolate.h
+	doins chaps_proxy_mock.h
+	doins chaps_interface.h
+	doins chaps.h
+	doins attributes.h
+
+	# Install live tests
+	if use test; then
+		dosbin "${OUT}"/chapsd_test
+		dosbin "${OUT}"/tpm_utility_test
+	fi
+
+	insinto /usr/include/chaps/pkcs11
+	doins pkcs11/*.h
+
+	# Chaps keeps database inside the user's cryptohome.
+	local daemon_store="/etc/daemon-store/chaps"
+	dodir "${daemon_store}"
+	fperms 0750 "${daemon_store}"
+	fowners chaps:chronos-access "${daemon_store}"
+
+	local fuzzer_component_id="886041"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/chaps_attributes_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/chaps_object_store_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	local tests=(
+		chaps_test
+		chaps_service_test
+		slot_manager_test
+		session_test
+		object_test
+		object_policy_test
+		object_pool_test
+		object_store_test
+		opencryptoki_importer_test
+		isolate_login_client_test
+	)
+	use tpm2 && tests+=(
+		tpm2_utility_test
+	)
+
+	local gtest_filter_qemu=""
+	gtest_filter_qemu+="-*DeathTest*"
+	gtest_filter_qemu+=":*ImportSample*"
+	gtest_filter_qemu+=":TestSession.RSA*"
+	gtest_filter_qemu+=":TestSession.KeyTypeMismatch"
+	gtest_filter_qemu+=":TestSession.KeyFunctionPermission"
+	gtest_filter_qemu+=":TestSession.BadKeySize"
+	gtest_filter_qemu+=":TestSession.BadSignature.*"
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}" "" "" "${gtest_filter_qemu}"
+	done
+}
+
+pkg_preinst() {
+	local ug
+	for ug in attestation pkcs11 chaps; do
+		enewuser "${ug}"
+		enewgroup "${ug}"
+	done
+}
diff --git a/chromeos-base/chaps/chaps-9999.ebuild b/chromeos-base/chaps/chaps-9999.ebuild
index 639461d..fdc2c8a 100644
--- a/chromeos-base/chaps/chaps-9999.ebuild
+++ b/chromeos-base/chaps/chaps-9999.ebuild
@@ -9,7 +9,7 @@
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_OUTOFTREE_BUILD=1
 # TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk chaps metrics trunks tpm_manager .gn"
+CROS_WORKON_SUBTREE="common-mk chaps libhwsec libhwsec-foundation metrics trunks tpm_manager .gn"
 
 PLATFORM_SUBDIR="chaps"
 
@@ -21,17 +21,21 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="systemd test tpm tpm2 fuzzer"
+IUSE="systemd test tpm tpm_dynamic tpm2 fuzzer"
 
-REQUIRED_USE="tpm2? ( !tpm )"
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
 
 RDEPEND="
-	!tpm2? (
+	tpm? (
 		app-crypt/trousers:=
 	)
 	tpm2? (
 		chromeos-base/trunks:=
 	)
+	chromeos-base/chaps-client:=
 	chromeos-base/minijail:=
 	chromeos-base/system_api:=[fuzzer?]
 	>=chromeos-base/metrics-0.0.1-r3152:=
@@ -87,24 +91,12 @@
 
 	# Install init scripts.
 	if use systemd; then
-		if use tpm2; then
-			sed 's/tcsd.service/trunksd.service' \
-				init/chapsd.service \
-				> "${T}/chapsd.service"
-			systemd_dounit "${T}/chapsd.service"
-		else
-			systemd_dounit init/chapsd.service
-		fi
+		systemd_dounit init/chapsd.service
 		systemd_enable_service boot-services.target chapsd.service
 		systemd_dotmpfilesd init/chapsd_directories.conf
 	else
 		insinto /etc/init
 		doins init/chapsd.conf
-		if use tpm2; then
-			sed -i 's/started tcsd/started trunksd/' \
-				"${D}/etc/init/chapsd.conf" ||
-				die "Can't replace tcsd with trunksd in chapsd.conf"
-		fi
 	fi
 	exeinto /usr/share/cros/init
 
@@ -134,15 +126,17 @@
 	fperms 0750 "${daemon_store}"
 	fowners chaps:chronos-access "${daemon_store}"
 
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/chaps_attributes_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/chaps_object_store_fuzzer
+	local fuzzer_component_id="886041"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/chaps_attributes_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/chaps_object_store_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
 	local tests=(
 		chaps_test
 		chaps_service_test
-		dbus_test
 		slot_manager_test
 		session_test
 		object_test
diff --git a/chromeos-base/chrome-binary-tests/chrome-binary-tests-0.0.1-r18.ebuild b/chromeos-base/chrome-binary-tests/chrome-binary-tests-0.0.1-r19.ebuild
similarity index 100%
rename from chromeos-base/chrome-binary-tests/chrome-binary-tests-0.0.1-r18.ebuild
rename to chromeos-base/chrome-binary-tests/chrome-binary-tests-0.0.1-r19.ebuild
diff --git a/chromeos-base/chrome-binary-tests/chrome-binary-tests-0.0.1.ebuild b/chromeos-base/chrome-binary-tests/chrome-binary-tests-0.0.1.ebuild
index 8694f88..c747c11 100644
--- a/chromeos-base/chrome-binary-tests/chrome-binary-tests-0.0.1.ebuild
+++ b/chromeos-base/chrome-binary-tests/chrome-binary-tests-0.0.1.ebuild
@@ -36,6 +36,7 @@
 	doexe "${BINARY_DIR}/wayland_client_perftests"
 
 	if use vaapi || use v4l2_codec; then
+		doexe "${BINARY_DIR}/image_processor_test"
 		doexe "${BINARY_DIR}/jpeg_encode_accelerator_unittest"
 		doexe "${BINARY_DIR}/video_decode_accelerator_perf_tests"
 		doexe "${BINARY_DIR}/video_decode_accelerator_tests"
diff --git a/chromeos-base/chrome-icu/chrome-icu-93.0.4554.0_rc-r1.ebuild b/chromeos-base/chrome-icu/chrome-icu-97.0.4667.0_rc-r1.ebuild
similarity index 100%
rename from chromeos-base/chrome-icu/chrome-icu-93.0.4554.0_rc-r1.ebuild
rename to chromeos-base/chrome-icu/chrome-icu-97.0.4667.0_rc-r1.ebuild
diff --git a/chromeos-base/chromeos-accelerometer-init/chromeos-accelerometer-init-0.0.1-r27.ebuild b/chromeos-base/chromeos-accelerometer-init/chromeos-accelerometer-init-0.0.1-r28.ebuild
similarity index 100%
rename from chromeos-base/chromeos-accelerometer-init/chromeos-accelerometer-init-0.0.1-r27.ebuild
rename to chromeos-base/chromeos-accelerometer-init/chromeos-accelerometer-init-0.0.1-r28.ebuild
diff --git a/chromeos-base/chromeos-accelerometer-init/chromeos-accelerometer-init-0.0.1.ebuild b/chromeos-base/chromeos-accelerometer-init/chromeos-accelerometer-init-0.0.1.ebuild
index e8159cf..2701b03 100644
--- a/chromeos-base/chromeos-accelerometer-init/chromeos-accelerometer-init-0.0.1.ebuild
+++ b/chromeos-base/chromeos-accelerometer-init/chromeos-accelerometer-init-0.0.1.ebuild
@@ -14,6 +14,7 @@
 KEYWORDS="*"
 
 RDEPEND="
+	!chromeos-base/iioservice
 	chromeos-base/mems_setup
 	virtual/chromeos-ec-driver-init
 	virtual/modutils
diff --git a/chromeos-base/chromeos-ca-certificates/chromeos-ca-certificates-0.0.1-r5.ebuild b/chromeos-base/chromeos-ca-certificates/chromeos-ca-certificates-0.0.1-r5.ebuild
deleted file mode 100644
index a4b4b7a..0000000
--- a/chromeos-base/chromeos-ca-certificates/chromeos-ca-certificates-0.0.1-r5.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=2
-
-DESCRIPTION="Chrome OS restricted set of certificates"
-HOMEPAGE="http://src.chromium.org"
-SRC_URI=""
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="*"
-
-S=${WORKDIR}
-
-src_compile() {
-	"${FILESDIR}/split-root-certs.py"		\
-		--extract-to "${S}"			\
-		--roots-pem "${FILESDIR}/roots.pem"	\
-		|| die "Couldn't extract certs from roots.pem"
-}
-
-src_install() {
-	CA_CERT_DIR=/usr/share/chromeos-ca-certificates
-	insinto "${CA_CERT_DIR}"
-	doins "${S}"/*.pem
-	c_rehash "${D}/${CA_CERT_DIR}"
-}
diff --git a/chromeos-base/chromeos-ca-certificates/chromeos-ca-certificates-1-r6.ebuild b/chromeos-base/chromeos-ca-certificates/chromeos-ca-certificates-1-r6.ebuild
new file mode 120000
index 0000000..3de53fd
--- /dev/null
+++ b/chromeos-base/chromeos-ca-certificates/chromeos-ca-certificates-1-r6.ebuild
@@ -0,0 +1 @@
+chromeos-ca-certificates-1.ebuild
\ No newline at end of file
diff --git a/chromeos-base/chromeos-ca-certificates/chromeos-ca-certificates-1.ebuild b/chromeos-base/chromeos-ca-certificates/chromeos-ca-certificates-1.ebuild
new file mode 100644
index 0000000..aea5543
--- /dev/null
+++ b/chromeos-base/chromeos-ca-certificates/chromeos-ca-certificates-1.ebuild
@@ -0,0 +1,27 @@
+# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+DESCRIPTION="Chrome OS restricted set of certificates"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/docs/+/HEAD/ca_certs.md"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+S=${WORKDIR}
+
+src_compile() {
+	"${FILESDIR}/split-root-certs.py" \
+		--extract-to "${S}" \
+		--roots-pem "${FILESDIR}/roots.pem" \
+		|| die "Couldn't extract certs from roots.pem"
+}
+
+src_install() {
+	CA_CERT_DIR=/usr/share/chromeos-ca-certificates
+	insinto "${CA_CERT_DIR}"
+	doins *.pem
+	c_rehash "${D}/${CA_CERT_DIR}"
+}
diff --git a/chromeos-base/chromeos-chrome/chromeos-chrome-93.0.4554.0_rc-r1.ebuild b/chromeos-base/chromeos-chrome/chromeos-chrome-93.0.4554.0_rc-r1.ebuild
deleted file mode 100644
index c238a6a..0000000
--- a/chromeos-base/chromeos-chrome/chromeos-chrome-93.0.4554.0_rc-r1.ebuild
+++ /dev/null
@@ -1,1391 +0,0 @@
-# Copyright 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# Usage: by default, downloads chromium browser from the build server.
-# If CHROME_ORIGIN is set to one of {SERVER_SOURCE, LOCAL_SOURCE, LOCAL_BINARY},
-# the build comes from the chromimum source repository (gclient sync),
-# build server, locally provided source, or locally provided binary.
-# If you are using SERVER_SOURCE, a gclient template file that is in the files
-# directory which will be copied automatically during the build and used as
-# the .gclient for 'gclient sync'.
-# If building from LOCAL_SOURCE or LOCAL_BINARY specifying BUILDTYPE
-# will allow you to specify "Debug" or another build type; "Release" is
-# the default.
-
-EAPI=7
-
-# TODO(crbug.com/984182): We force Python 2 because depot_tools doesn't support Python 3.
-PYTHON_COMPAT=( python2_7 )
-inherit autotest-deponly binutils-funcs chromium-source cros-credentials cros-constants cros-sanitizers eutils flag-o-matic git-2 multilib toolchain-funcs user python-any-r1 multiprocessing
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://www.chromium.org/"
-SRC_URI=""
-
-LICENSE="BSD-Google chrome_internal? ( Google-TOS )"
-SLOT="0"
-KEYWORDS="*"
-IUSE="
-	+afdo_use
-	afdo_verify
-	+accessibility
-	app_shell
-	asan
-	+authpolicy
-	+build_tests
-	cdm_factory_daemon
-	+chrome_debug
-	+cfi
-	cfm
-	chrome_debug_tests
-	chrome_dcheck
-	chrome_internal
-	chrome_media
-	+chrome_remoting
-	clang_tidy
-	component_build
-	cros-debug
-	debug_fission
-	+dwarf5
-	+fonts
-	goma
-	goma_thinlto
-	+highdpi
-	iioservice
-	internal_gles_conform
-	+libcxx
-	mojo
-	msan
-	+nacl
-	neon
-	oobe_config
-	opengl
-	opengles
-	orderfile_generate
-	+orderfile_use
-	orderfile_verify
-	+runhooks
-	strict_toolchain_checks
-	+thinlto
-	touchview
-	ubsan
-	v4l2_codec
-	v4lplugin
-	vaapi
-	verbose
-	vtable_verify
-	xkbcommon
-	"
-REQUIRED_USE="
-	cfi? ( thinlto )
-	afdo_verify? ( !afdo_use )
-	orderfile_generate? ( !orderfile_use )
-	"
-
-OZONE_PLATFORM_PREFIX=ozone_platform_
-OZONE_PLATFORMS=(gbm cast headless egltest caca)
-IUSE_OZONE_PLATFORMS="${OZONE_PLATFORMS[@]/#/${OZONE_PLATFORM_PREFIX}}"
-IUSE+=" ${IUSE_OZONE_PLATFORMS}"
-OZONE_PLATFORM_DEFAULT_PREFIX=ozone_platform_default_
-IUSE_OZONE_PLATFORM_DEFAULTS="${OZONE_PLATFORMS[@]/#/${OZONE_PLATFORM_DEFAULT_PREFIX}}"
-IUSE+=" ${IUSE_OZONE_PLATFORM_DEFAULTS}"
-REQUIRED_USE+=" ^^ ( ${IUSE_OZONE_PLATFORM_DEFAULTS} )"
-
-# The gclient hooks that run in src_prepare hit the network.
-# https://crbug.com/731905
-RESTRICT="network-sandbox mirror"
-
-# Do not strip the nacl_helper_bootstrap binary because the binutils
-# objcopy/strip mangles the ELF program headers.
-# TODO(mcgrathr,vapier): This should be removed after portage's prepstrip
-# script is changed to use eu-strip instead of objcopy and strip.
-STRIP_MASK+=" */nacl_helper_bootstrap"
-
-# Portage version without optional portage suffix.
-CHROME_VERSION="${PV/_*/}"
-
-# chrome destination directory
-CHROME_DIR=/opt/google/chrome
-D_CHROME_DIR="${D}/${CHROME_DIR}"
-
-# For compilation/local chrome
-BUILDTYPE="${BUILDTYPE:-Release}"
-BOARD="${BOARD:-${SYSROOT##/build/}}"
-BUILD_OUT="${BUILD_OUT:-out_${BOARD}}"
-# WARNING: We are using a symlink now for the build directory to work around
-# command line length limits. This will cause problems if you are doing
-# parallel builds of different boards/variants.
-# Unsetting BUILD_OUT_SYM will revert this behavior
-BUILD_OUT_SYM="c"
-
-UNVETTED_ORDERFILE_LOCATION=${AFDO_GS_DIRECTORY:-"gs://chromeos-toolchain-artifacts/orderfile/unvetted"}
-
-# The following entry will be modified automatically for verifying orderfile or AFDO profile.
-UNVETTED_ORDERFILE=""
-UNVETTED_AFDO_FILE=""
-
-add_orderfiles() {
-	# For verify orderfile, only for a toolchain special build.
-	if [[ -n ${UNVETTED_ORDERFILE} ]]; then
-		SRC_URI+=" orderfile_verify? ( ${UNVETTED_ORDERFILE_LOCATION}/${UNVETTED_ORDERFILE}.xz )"
-	fi
-}
-
-add_orderfiles
-
-RDEPEND="${RDEPEND}
-	app-arch/bzip2
-	app-crypt/mit-krb5
-	app-misc/edid-decode
-	authpolicy? ( chromeos-base/authpolicy )
-	~chromeos-base/chrome-icu-${PV}
-	chromeos-base/gestures
-	chromeos-base/libevdev:=
-	fonts? ( chromeos-base/chromeos-fonts )
-	chrome_internal? ( chromeos-base/quickoffice )
-	dev-libs/nspr
-	>=dev-libs/nss-3.12.2
-	>=media-libs/alsa-lib-1.0.19
-	media-libs/fontconfig
-	media-libs/libsync
-	x11-libs/libdrm
-	ozone_platform_gbm? ( media-libs/minigbm )
-	v4lplugin? ( media-libs/libv4lplugins )
-	>=media-sound/adhd-0.0.1-r310
-	net-print/cups
-	opengl? ( virtual/opengl )
-	opengles? ( virtual/opengles )
-	sys-apps/dbus
-	sys-apps/pciutils
-	virtual/udev
-	sys-libs/libcap
-	chrome_remoting? ( sys-libs/pam )
-	vaapi? ( x11-libs/libva )
-	xkbcommon? (
-		x11-libs/libxkbcommon
-		x11-misc/xkeyboard-config
-	)
-	accessibility? (
-		app-accessibility/brltty
-		app-accessibility/espeak-ng
-		app-accessibility/googletts
-	)
-	libcxx? (
-		sys-libs/libcxxabi
-		sys-libs/libcxx
-	)
-	oobe_config? ( chromeos-base/oobe_config )
-	iioservice? ( chromeos-base/iioservice )
-	"
-
-DEPEND="${DEPEND}
-	${RDEPEND}
-	chromeos-base/protofiles
-	>=dev-util/gperf-3.0.3
-	>=dev-util/pkgconfig-0.23
-	arm? ( x11-libs/libdrm )
-"
-
-PATCHES=()
-
-AUTOTEST_COMMON="src/chrome/test/chromeos/autotest/files"
-AUTOTEST_DEPS="${AUTOTEST_COMMON}/client/deps"
-AUTOTEST_DEPS_LIST="chrome_test telemetry_dep"
-
-IUSE="${IUSE} +autotest"
-
-
-QA_TEXTRELS="*"
-QA_EXECSTACK="*"
-QA_PRESTRIPPED="*"
-
-use_nacl() {
-	# 32bit asan conflicts with nacl: crosbug.com/38980
-	! (use asan && [[ ${ARCH} == "x86" ]]) && \
-	! use component_build && use nacl
-}
-
-# Like the `usex` helper:
-# Usage: echox [int] [echo-if-true] [echo-if-false]
-# If [int] is 0, then echo the 2nd arg (default of yes), else
-# echo the 3rd arg (default of no).
-echox() {
-	# Like the `usex` helper.
-	[[ ${1:-$?} -eq 0 ]] && echo "${2:-yes}" || echo "${3:-no}"
-}
-echotf() { echox ${1:-$?} true false ; }
-usetf()  { usex $1 true false ; }
-
-use_goma() {
-	[[ "${USE_GOMA:-$(usetf goma)}" == "true" ]]
-}
-should_upload_build_logs() {
-	[[ -n "${GOMA_TMP_DIR}" && -n "${GLOG_log_dir}" && \
-		"${GLOG_log_dir}" == "${GOMA_TMP_DIR}"* ]]
-}
-
-set_build_args() {
-	# use goma_thinlto says that if we are using Goma and ThinLTO, use
-	# Goma for distributed code generation. So only set the corresponding
-	# gn arg to true if all three conditions are met.
-	use_goma_thin_lto=$(use goma_thinlto && use_goma && use thinlto; echotf)
-	BUILD_ARGS=(
-		"is_chromeos_device=true"
-		# is_official_build sometimes implies extra optimizations (e.g. it will allow
-		# ThinLTO to optimize more aggressively, if ThinLTO is enabled). Please note
-		# that, despite the name, it should be usable by external users.
-		#
-		# Sanitizers don't like official builds.
-		"is_official_build=$(use_sanitizers false true)"
-
-		"is_debug=false"
-		"${EXTRA_GN_ARGS}"
-		"enable_pseudolocales=$(usetf cros-debug)"
-		"use_chromeos_protected_media=$(usetf cdm_factory_daemon)"
-		"use_iioservice=$(usetf iioservice)"
-		"use_v4l2_codec=$(usetf v4l2_codec)"
-		"use_v4lplugin=$(usetf v4lplugin)"
-		"use_vaapi=$(usetf vaapi)"
-		"use_xkbcommon=$(usetf xkbcommon)"
-		"enable_remoting=$(usetf chrome_remoting)"
-		"enable_nacl=$(use_nacl; echotf)"
-		# use_system_minigbm is set below.
-
-		"is_cfm=$(usetf cfm)"
-
-		# Clang features.
-		"is_asan=$(usetf asan)"
-		"is_msan=$(usetf msan)"
-		"is_ubsan=$(usetf ubsan)"
-		"is_clang=true"
-		"use_thin_lto=$(usetf thinlto)"
-		"use_goma_thin_lto=${use_goma_thin_lto}"
-		"is_cfi=$(usetf cfi)"
-		"use_dwarf5=$(usetf dwarf5)"
-
-		# Assistant integration tests are only run on the Chromium bots,
-		# but they increase the size of libassistant.so by 1.3MB so we
-		# disable them here.
-		"enable_assistant_integration_tests=false"
-	)
-
-	# BUILD_STRING_ARGS needs appropriate quoting. So, we keep them separate and
-	# add them to BUILD_ARGS at the end.
-	BUILD_STRING_ARGS=(
-		"target_sysroot=${SYSROOT}"
-		"system_libdir=$(get_libdir)"
-		"pkg_config=$(tc-getPKG_CONFIG)"
-		"target_os=chromeos"
-		"host_pkg_config=$(tc-getBUILD_PKG_CONFIG)"
-		"clang_diagnostic_dir=/tmp/clang_crash_diagnostics"
-	)
-	use internal_gles_conform && BUILD_ARGS+=( "internal_gles2_conform_tests=true" )
-
-	# Ozone platforms.
-	local platform
-	for platform in ${OZONE_PLATFORMS[@]}; do
-		local flag="${OZONE_PLATFORM_DEFAULT_PREFIX}${platform}"
-		if use "${flag}"; then
-			BUILD_STRING_ARGS+=( "ozone_platform=${platform}" )
-		fi
-	done
-	BUILD_ARGS+=(
-		"ozone_auto_platforms=false"
-	)
-	for platform in ${IUSE_OZONE_PLATFORMS}; do
-		if use "${platform}"; then
-			BUILD_ARGS+=( "${platform}=true" )
-		fi
-	done
-	if use "ozone_platform_gbm"; then
-		BUILD_ARGS+=( "use_system_minigbm=true" )
-		BUILD_ARGS+=( "use_system_libdrm=true" )
-	fi
-	if use "touchview"; then
-		BUILD_ARGS+=( "subpixel_font_rendering_disabled=true" )
-	fi
-
-	# Set proper build args for the arch
-	case "${ARCH}" in
-	x86)
-		BUILD_STRING_ARGS+=( "target_cpu=x86" )
-		;;
-	arm)
-		BUILD_ARGS+=(
-			"arm_use_neon=$(usetf neon)"
-			# To workaround the 4GB debug limit. crbug.com/792999.
-			"blink_symbol_level=1"
-		)
-		BUILD_STRING_ARGS+=(
-			"target_cpu=arm"
-			"arm_float_abi=hard"
-		)
-		local arm_arch=$(get-flag march)
-		if [[ -n "${arm_arch}" ]]; then
-			BUILD_STRING_ARGS+=( "arm_arch=${arm_arch}" )
-		fi
-		;;
-	arm64)
-		BUILD_STRING_ARGS+=(
-			"target_cpu=arm64"
-		)
-		local arm_arch=$(get-flag march)
-		if [[ -n "${arm_arch}" ]]; then
-			BUILD_STRING_ARGS+=( "arm_arch=${arm_arch}" )
-		fi
-		;;
-	amd64)
-		BUILD_STRING_ARGS+=( "target_cpu=x64" )
-		;;
-	mips)
-		local mips_arch target_arch
-
-		mips_arch="$($(tc-getCPP) ${CFLAGS} ${CPPFLAGS} -E -P - <<<_MIPS_ARCH)"
-		# Strip away any enclosing quotes.
-		mips_arch="${mips_arch//\"}"
-		# TODO(benchan): Use tc-endian from toolchain-func to determine endianess
-		# when Chrome later cares about big-endian.
-		case "${mips_arch}" in
-		mips64*)
-			target_arch=mips64el
-			;;
-		*)
-			target_arch=mipsel
-			;;
-		esac
-
-		BUILD_STRING_ARGS+=(
-			"target_cpu=${target_arch}"
-			"mips_arch_variant=${mips_arch}"
-		)
-		;;
-	*)
-		die "Unsupported architecture: ${ARCH}"
-		;;
-	esac
-
-	if use chrome_internal; then
-		# Adding chrome branding specific variables.
-		BUILD_ARGS+=( "is_chrome_branded=true" )
-		# This test can only be build from internal sources.
-		BUILD_ARGS+=( "internal_gles2_conform_tests=true" )
-		export CHROMIUM_BUILD='_google_Chrome'
-		export OFFICIAL_BUILD='1'
-		export CHROME_BUILD_TYPE='_official'
-	elif use chrome_media; then
-		echo "Building Chromium with additional media codecs and containers."
-		BUILD_ARGS+=( "proprietary_codecs=true" )
-		BUILD_STRING_ARGS+=( "ffmpeg_branding=ChromeOS" )
-	fi
-
-	if use component_build; then
-		BUILD_ARGS+=( "is_component_build=true" )
-	fi
-	if use_goma; then
-		BUILD_ARGS+=( "use_goma=true" )
-		BUILD_STRING_ARGS+=( "goma_dir=${GOMA_DIR:-/home/${WHOAMI}/goma}" )
-
-		# Goma compiler proxy runs outside of portage build.
-		# Practically, because TMPDIR is set in portage, it is
-		# different from the directory used when the compiler proxy
-		# started.
-		# If GOMA_TMP_DIR is not set, the compiler proxy uses
-		# TMPDIR/goma_${WHOAMI} for its tmpdir as fallback, which
-		# causes unexpected behavior.
-		# Specifically, named socket used to communicate with compiler
-		# proxy is ${GOMA_TMP_DIR}/goma.ipc by default, so the compiler
-		# proxy cannot be reached.
-		# Thus, here set GOMA_TMP_DIR to /tmp/goma_${WHOAMI} if it is
-		# not yet set.
-		if [[ -z "${GOMA_TMP_DIR}" ]]; then
-			export GOMA_TMP_DIR="/tmp/goma_${WHOAMI}"
-		fi
-	fi
-
-	if use chrome_debug; then
-		# Use debug fission to avoid 4GB limit of ELF32 (see crbug.com/595763).
-		# Using -g1 causes problems with crash server (see crbug.com/601854).
-		# Set use_debug_fission=true to prevent slow link (see crbug.com/703468).
-		# Disable debug_fission for bots which generate Afdo profile. (see crbug.com/704602).
-		BUILD_ARGS+=(
-			"use_debug_fission=$(usetf debug_fission)"
-			"symbol_level=2"
-		)
-		if use debug_fission; then
-			# The breakpad cannot handle the debug files generated by
-			# llvm and debug fission properly. crosbug.com/710605
-			append-flags -fno-split-dwarf-inlining
-		fi
-	fi
-
-	if use chrome_dcheck; then
-		BUILD_ARGS+=("dcheck_always_on=true")
-	fi
-}
-
-unpack_chrome() {
-	# Add depot_tools to PATH, local chroot builds fail otherwise.
-	export PATH=${PATH}:${DEPOT_TOOLS}
-
-	local cmd=( "${CHROMITE_BIN_DIR}"/sync_chrome )
-	use chrome_internal && cmd+=( --internal )
-	if [[ "${CHROME_VERSION}" != "9999" ]]; then
-		cmd+=( "--tag=${CHROME_VERSION}" )
-	fi
-	# --reset tells sync_chrome to blow away local changes and to feel
-	# free to delete any directories that get in the way of syncing. This
-	# is needed for unattended operation.
-	cmd+=( --reset "--gclient=${EGCLIENT}" "${CHROME_DISTDIR}" )
-	elog "${cmd[*]}"
-	# TODO(crbug.com/1103048): Disable the sandbox when syncing the code.
-	# It seems to break gclient execution at random for unknown reasons.
-	# Children stop being tracked, or no git repos actually get cloned.
-	SANDBOX_ON=0 "${cmd[@]}" || die
-}
-
-decide_chrome_origin() {
-	if [[ "${PV}" == "9999" ]]; then
-		# LOCAL_SOURCE is the default for cros_workon.
-		# Warn the user if CHROME_ORIGIN is already set.
-		if [[ -n "${CHROME_ORIGIN}" && "${CHROME_ORIGIN}" != LOCAL_SOURCE ]]; then
-			ewarn "CHROME_ORIGIN is already set to ${CHROME_ORIGIN}."
-			ewarn "This will prevent you from building from your local checkout."
-			ewarn "Please run 'unset CHROME_ORIGIN' to reset Chrome"
-			ewarn "to the default source location."
-		fi
-		: "${CHROME_ORIGIN:=LOCAL_SOURCE}"
-	else
-		# By default, pull from server.
-		: "${CHROME_ORIGIN:=SERVER_SOURCE}"
-	fi
-}
-
-sandboxless_ensure_directory() {
-	local dir
-	for dir in "$@"; do
-		if [[ ! -d "${dir}" ]] ; then
-			# We need root access to create these directories, so we need to
-			# use sudo. This implicitly disables the sandbox.
-			sudo mkdir -p "${dir}" || die
-			sudo chown "${PORTAGE_USERNAME}:portage" "${dir}" || die
-			sudo chmod 0755 "${dir}" || die
-		fi
-	done
-}
-
-src_unpack() {
-	echo
-	ewarn "If you want to develop or hack on the browser itself, you should follow the"
-	ewarn "simple chrome workflow instead of using emerge:"
-	ewarn "https://chromium.googlesource.com/chromiumos/docs/+/master/simple_chrome_workflow.md"
-	echo
-
-	tc-export CC CXX
-	local WHOAMI=$(whoami)
-
-	CHROME_SRC="chrome-src"
-	if use chrome_internal; then
-		CHROME_SRC+="-internal"
-	fi
-
-	# CHROME_CACHE_DIR is used for storing output artifacts, and is always a
-	# regular directory inside the chroot (i.e. it's never mounted in, so it's
-	# always safe to use cp -al for these artifacts).
-	: "${CHROME_CACHE_DIR:="/var/cache/chromeos-chrome/${CHROME_SRC}"}"
-	addwrite "${CHROME_CACHE_DIR}"
-
-	# CHROME_DISTDIR is used for storing the source code, if any source code
-	# needs to be unpacked at build time (e.g. in the SERVER_SOURCE scenario.)
-	# It will be mounted into the chroot, so it is never safe to use cp -al
-	# for these files.
-	: "${CHROME_DISTDIR:="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}/${CHROME_SRC}"}"
-	addwrite "${CHROME_DISTDIR}"
-
-	# Create storage directories.
-	sandboxless_ensure_directory "${CHROME_DISTDIR}" "${CHROME_CACHE_DIR}"
-
-	cros-credentials_setup
-
-	decide_chrome_origin
-
-	case "${CHROME_ORIGIN}" in
-	LOCAL_SOURCE|SERVER_SOURCE|LOCAL_BINARY)
-		elog "CHROME_ORIGIN VALUE is ${CHROME_ORIGIN}"
-		;;
-	*)
-		die "CHROME_ORIGIN not one of LOCAL_SOURCE, SERVER_SOURCE, LOCAL_BINARY"
-		;;
-	esac
-
-	# Prepare and set CHROME_ROOT based on CHROME_ORIGIN.
-	# CHROME_ROOT is the location where the source code is used for compilation.
-	# If we're in SERVER_SOURCE mode, CHROME_ROOT is CHROME_DISTDIR. In LOCAL_SOURCE
-	# mode, this directory may be set manually to any directory. It may be mounted
-	# into the chroot, so it is not safe to use cp -al for these files.
-	# These are set here because $(whoami) returns the proper user here,
-	# but 'root' at the root level of the file
-	case "${CHROME_ORIGIN}" in
-	(SERVER_SOURCE)
-		elog "Using CHROME_VERSION = ${CHROME_VERSION}"
-		if [[ ${WHOAMI} == "chrome-bot" ]]; then
-			# TODO: Should add a sanity check that the version checked out is
-			# what we actually want.  Not sure how to do that though.
-			elog "Skipping syncing as cbuildbot ran SyncChrome for us."
-		else
-			unpack_chrome
-		fi
-
-		elog "set the chrome source root to ${CHROME_DISTDIR}"
-		elog "From this point onwards there is no difference between \
-			SERVER_SOURCE and LOCAL_SOURCE, since the fetch is done"
-		CHROME_ROOT=${CHROME_DISTDIR}
-		;;
-	(LOCAL_SOURCE)
-		: ${CHROME_ROOT:=/home/${WHOAMI}/chrome_root}
-		if [[ ! -d "${CHROME_ROOT}/src" ]]; then
-			die "${CHROME_ROOT} does not contain a valid chromium checkout!"
-		fi
-		addwrite "${CHROME_ROOT}"
-		;;
-	esac
-
-	case "${CHROME_ORIGIN}" in
-	LOCAL_SOURCE|SERVER_SOURCE)
-		set_build_args
-		;;
-	esac
-
-	# FIXME: This is the normal path where ebuild stores its working data.
-	# Chrome builds inside distfiles because of speed, so we at least make
-	# a symlink here to add compatibility with autotest eclass which uses this.
-	ln -sf "${CHROME_ROOT}" "${WORKDIR}/${P}"
-
-	if use internal_gles_conform; then
-		local CHROME_GLES2_CONFORM=${CHROME_ROOT}/src/third_party/gles2_conform
-		local CROS_GLES2_CONFORM=/home/${WHOAMI}/trunk/src/third_party/gles2_conform
-		if [[ ! -d "${CHROME_GLES2_CONFORM}" ]]; then
-			if [[ -d "${CROS_GLES2_CONFORM}" ]]; then
-				ln -s "${CROS_GLES2_CONFORM}" "${CHROME_GLES2_CONFORM}"
-				einfo "Using GLES2 conformance test suite from ${CROS_GLES2_CONFORM}"
-			else
-				die "Trying to build GLES2 conformance test suite without ${CHROME_GLES2_CONFORM} or ${CROS_GLES2_CONFORM}"
-			fi
-		fi
-	fi
-
-	if use afdo_use; then
-		# Use AFDO profile downloaded in Chromium source code
-		# If needed profiles other than "silvermont", please set the variable
-		# ${AFDO_PROFILE_SOURCE} accordingly.
-		local afdo_src="${AFDO_PROFILE_SOURCE:-atom}"
-		BUILD_ARGS+=( "clang_use_default_sample_profile=true" )
-		BUILD_STRING_ARGS+=( "chromeos_afdo_platform=${afdo_src}" )
-	fi
-
-	# Use to verify a local unvetted AFDO file.
-	if use afdo_verify; then
-		if [[ ! -e "${UNVETTED_AFDO_FILE}" ]]; then
-			die "Cannot find ${UNVETTED_AFDO_FILE} to build Chrome."
-		fi
-		BUILD_STRING_ARGS+=( "clang_sample_profile_path=${UNVETTED_AFDO_FILE}" )
-	fi
-
-	# Unpack unvetted orderfile.
-	if use orderfile_verify; then
-		local orderfile_dir="${WORKDIR}/orderfile"
-		mkdir "${orderfile_dir}"
-		local orderfile_file=${UNVETTED_ORDERFILE}
-		(cd "${orderfile_dir}" && unpack "${orderfile_file}.xz") || die
-
-		local orderfile_loc="${orderfile_dir}/${orderfile_file}"
-		einfo "Using ${orderfile_loc} as orderfile for ordering Chrome"
-
-		# Pass the path to orderfile to GN args.
-		BUILD_STRING_ARGS+=( "chrome_orderfile_path=${orderfile_loc}" )
-	fi
-
-	if ! use orderfile_use; then
-		# If not using orderfile, override the default orderfile path to empty.
-		BUILD_STRING_ARGS+=( "chrome_orderfile_path=" )
-	fi
-}
-
-add_api_keys() {
-	# awk script to extract the values out of the file.
-	local EXTRACT="{ gsub(/[',]/, \"\", \$2); print \$2 }"
-	local api_key=$(awk "/google_api_key/ ${EXTRACT}" "$1")
-	local client_id=$(awk "/google_default_client_id/ ${EXTRACT}" "$1")
-	local client_secret=$(awk "/google_default_client_secret/ ${EXTRACT}" "$1")
-
-	BUILD_STRING_ARGS+=(
-		"google_api_key=${api_key}"
-		"google_default_client_id=${client_id}"
-		"google_default_client_secret=${client_secret}"
-	)
-}
-
-src_prepare() {
-	# Must call eapply_user in EAPI 7, but this function is a no-op here.
-	eapply_user
-
-	if [[ "${CHROME_ORIGIN}" != "LOCAL_SOURCE" &&
-			"${CHROME_ORIGIN}" != "SERVER_SOURCE" ]]; then
-		return
-	fi
-
-	elog "${CHROME_ROOT} should be set here properly"
-	cd "${CHROME_ROOT}/src" || die "Cannot chdir to ${CHROME_ROOT}"
-
-	# We do symlink creation here if appropriate.
-	mkdir -p "${CHROME_CACHE_DIR}/src/${BUILD_OUT}"
-	if [[ ! -z "${BUILD_OUT_SYM}" ]]; then
-		rm -rf "${BUILD_OUT_SYM}" || die "Could not remove symlink"
-		ln -sfT "${CHROME_CACHE_DIR}/src/${BUILD_OUT}" "${BUILD_OUT_SYM}" ||
-			die "Could not create symlink for output directory"
-	fi
-
-
-	# Apply patches for non-localsource builds.
-	if [[ "${CHROME_ORIGIN}" == "SERVER_SOURCE" && ${#PATCHES[@]} -gt 0 ]]; then
-		eapply "${PATCHES[@]}"
-	fi
-
-	local WHOAMI=$(whoami)
-	# Get the credentials to fake home directory so that the version of chromium
-	# we build can access Google services. First, check for Chrome credentials.
-	if [[ ! -d google_apis/internal ]]; then
-		# Then look for Chrome OS supplied credentials.
-		local PRIVATE_OVERLAYS_DIR=/home/${WHOAMI}/trunk/src/private-overlays
-		local GAPI_CONFIG_FILE=${PRIVATE_OVERLAYS_DIR}/chromeos-overlay/googleapikeys
-		if [[ ! -f "${GAPI_CONFIG_FILE}" ]]; then
-			# Then developer credentials.
-			GAPI_CONFIG_FILE=/home/${WHOAMI}/.googleapikeys
-		fi
-		if [[ -f "${GAPI_CONFIG_FILE}" ]]; then
-			add_api_keys "${GAPI_CONFIG_FILE}"
-		fi
-	fi
-}
-
-setup_test_lists() {
-	TEST_FILES=(
-		capture_unittests
-		dawn_end2end_tests
-		dawn_unittests
-		gl_tests
-		jpeg_decode_accelerator_unittest
-		ozone_gl_unittests
-		sandbox_linux_unittests
-		wayland_client_perftests
-	)
-
-	TEST_FILES+=( ppapi/examples/video_decode )
-
-	if use vaapi || use v4l2_codec; then
-		TEST_FILES+=(
-			jpeg_encode_accelerator_unittest
-			video_decode_accelerator_perf_tests
-			video_decode_accelerator_tests
-			video_encode_accelerator_perf_tests
-			video_encode_accelerator_tests
-		)
-	fi
-
-	if use vaapi; then
-		TEST_FILES+=(
-			decode_test
-			vaapi_unittest
-		)
-	fi
-
-	# TODO(ihf): Figure out how to keep this in sync with telemetry.
-	TOOLS_TELEMETRY_BIN=(
-		bitmaptools
-		clear_system_cache
-		minidump_stackwalk
-	)
-
-	PPAPI_TEST_FILES=(
-		lib{32,64}
-		mock_nacl_gdb
-		ppapi_nacl_tests_{newlib,glibc}.nmf
-		ppapi_nacl_tests_{newlib,glibc}_{x32,x64,arm,arm64}.nexe
-		test_case.html
-		test_case.html.mock-http-headers
-		test_page.css
-		test_url_loader_data
-	)
-}
-
-# Handle all CFLAGS/CXXFLAGS/etc... munging here.
-setup_compile_flags() {
-	# Chrome controls its own optimization settings, so this would be a nop
-	# if we were to run it. Leave it here anyway as a grep-friendly marker.
-	# cros_optimize_package_for_speed
-
-	# The chrome makefiles specify -O and -g flags already, so remove the
-	# portage flags.
-	filter-flags -g "-O*"
-
-	# Remove unsupported arm64 linker flag on arm32 builds.
-	# https://crbug.com/889079
-	use arm && filter-flags "-Wl,--fix-cortex-a53-843419"
-
-	# There are some flags we want to only use in the ebuild.
-	# The rest will be exported to the simple chrome workflow.
-	EBUILD_CFLAGS=()
-	EBUILD_CXXFLAGS=()
-	EBUILD_LDFLAGS=()
-
-	# LLVM needs this when parsing profiles.
-	# See README on https://github.com/google/autofdo
-	# For ARM, we do not need this flag because we don't get profiles
-	# from ARM machines. And it triggers an llvm assertion when thinlto
-	# and debug fission is used together.
-	# See https://bugs.llvm.org/show_bug.cgi?id=37255
-	use arm || append-flags -fdebug-info-for-profiling
-
-	if use thinlto; then
-		# if using thinlto, we need to pass the equivalent of
-		# -fdebug-types-section to the backend, to prevent out-of-range
-		# relocations (see
-		# https://bugs.chromium.org/p/chromium/issues/detail?id=1032159).
-		append-ldflags -Wl,-mllvm
-		append-ldflags -Wl,-generate-type-units
-	else
-		# Non-ThinLTO builds with symbol_level=2 may have out-of-range
-		# relocations, too: crbug.com/1050819.
-		append-flags -fdebug-types-section
-	fi
-
-	if use orderfile_generate; then
-		local chrome_outdir="${CHROME_CACHE_DIR}/src/${BUILD_OUT}/${BUILDTYPE}"
-		BUILD_STRING_ARGS+=( "dump_call_chain_clustering_order=${chrome_outdir}/chrome.orderfile.txt" )
-		# Enable call graph profile sort (C3) to generate orderfile.
-		BUILD_ARGS+=( "enable_call_graph_profile_sort=true" )
-	fi
-
-	# Enable std::vector []-operator bounds checking.
-	append-cxxflags -D__google_stl_debug_vector=1
-
-	# Chrome and Chrome OS versions of the compiler may not be in
-	# sync. So, don't complain if Chrome uses a diagnostic
-	# option that is not yet implemented in the compiler version used
-	# by Chrome OS.
-	# Turns out this is only really supported by Clang. See crosbug.com/615466
-	# Add "-faddrsig" flag required to efficiently support "--icf=all".
-	append-flags -faddrsig
-	append-flags -Wno-unknown-warning-option
-	export CXXFLAGS_host+=" -Wno-unknown-warning-option"
-	export CFLAGS_host+=" -Wno-unknown-warning-option"
-	export LDFLAGS_host+=" --unwindlib=libgcc"
-	if use libcxx; then
-		append-cxxflags "-stdlib=libc++"
-		append-ldflags "-stdlib=libc++"
-	fi
-
-	# Workaround: Disable fatal linker warnings on arm64/lld.
-	# https://crbug.com/913071
-	use arm64 && append-ldflags "-Wl,--no-fatal-warnings"
-	# Workaround: Disable fatal linker warnings on arm/lld.
-	# https://crbug.com/1190544
-	use arm && append-ldflags "-Wl,--no-fatal-warnings"
-	use vtable_verify && append-ldflags -fvtable-verify=preinit
-
-	local flags
-	einfo "Building with the compiler settings:"
-	for flags in {C,CXX,CPP,LD}FLAGS; do
-		einfo "  ${flags} = ${!flags}"
-	done
-}
-
-src_configure() {
-	tc-export CXX CC AR AS NM RANLIB STRIP
-	export CC_host=$(tc-getBUILD_CC)
-	export CXX_host=$(tc-getBUILD_CXX)
-	export NM_host=$(tc-getBUILD_NM)
-	export READELF="llvm-readelf"
-	export READELF_host="llvm-readelf"
-
-	# Use C++ compiler as the linker driver.
-	export LD="${CXX}"
-	export LD_host=${CXX_host}
-
-	# We need below change when USE="thinlto" is set. We set this globally
-	# so that users can turn on the "use_thin_lto" in the simplechrome
-	# flow more easily.
-	# use nm from llvm, https://crbug.com/917193
-	export NM="llvm-nm"
-	export NM_host="llvm-nm"
-	export AR="llvm-ar"
-	# USE=thinlto affects host build, we need to set host AR to
-	# llvm-ar to make sure host package builds with thinlto.
-	# crbug.com/731335
-	export AR_host="llvm-ar"
-	export RANLIB="llvm-ranlib"
-	# Use llvm's objcopy instead of GNU
-	export OBJCOPY="llvm-objcopy"
-
-	# Set binutils path for goma.
-	CC_host+=" -B$(get_binutils_path "${LD_host}")"
-	CXX_host+=" -B$(get_binutils_path "${LD_host}")"
-
-	setup_compile_flags
-
-	# We might set BOTO_CONFIG in the builder environment in case the
-	# existing file needs modifications (e.g. for working with older
-	# branches). So don't overwrite it if it's already set.
-	# See https://crbug.com/847676 for details.
-	export BOTO_CONFIG="${BOTO_CONFIG:-/home/$(whoami)/.boto}"
-	export PATH=${PATH}:${DEPOT_TOOLS}
-
-	export DEPOT_TOOLS_GSUTIL_BIN_DIR="${CHROME_CACHE_DIR}/gsutil_bin"
-	# The venv logic seems to misbehave when cross-compiling.  Since our SDK
-	# should include all the necessary modules, just disable it (for now).
-	# https://crbug.com/808434
-	export VPYTHON_BYPASS="manually managed python not supported by chrome operations"
-
-	# TODO(rcui): crosbug.com/20435. Investigate removal of runhooks
-	# useflag when chrome build switches to Ninja inside the chroot.
-	if use runhooks; then
-		local cmd=( "${EGCLIENT}" runhooks --force )
-		echo "${cmd[@]}"
-		CFLAGS="${CFLAGS} ${EBUILD_CFLAGS[*]}" \
-		CXXFLAGS="${CXXFLAGS} ${EBUILD_CXXFLAGS[*]}" \
-		LDFLAGS="${LDFLAGS} ${EBUILD_LDFLAGS[*]}" \
-		"${cmd[@]}" || die
-	fi
-
-	BUILD_STRING_ARGS+=(
-		"cros_target_ar=${AR}"
-		"cros_target_cc=${CC}"
-		"cros_target_cxx=${CXX}"
-		"host_toolchain=//build/toolchain/cros:host"
-		"custom_toolchain=//build/toolchain/cros:target"
-		"v8_snapshot_toolchain=//build/toolchain/cros:v8_snapshot"
-		"cros_target_ld=${LD}"
-		"cros_target_nm=${NM}"
-		"cros_target_readelf=${READELF}"
-		"cros_target_extra_cflags=${CFLAGS} ${EBUILD_CFLAGS[*]}"
-		"cros_target_extra_cppflags=${CPPFLAGS}"
-		"cros_target_extra_cxxflags=${CXXFLAGS} ${EBUILD_CXXFLAGS[*]}"
-		"cros_target_extra_ldflags=${LDFLAGS} ${EBUILD_LDFLAGS[*]}"
-		"cros_host_cc=${CC_host}"
-		"cros_host_cxx=${CXX_host}"
-		"cros_host_ar=${AR_host}"
-		"cros_host_ld=${LD_host}"
-		"cros_host_nm=${NM_host}"
-		"cros_host_readelf=${READELF_host}"
-		"cros_host_extra_cflags=${CFLAGS_host}"
-		"cros_host_extra_cxxflags=${CXXFLAGS_host}"
-		"cros_host_extra_cppflags=${CPPFLAGS_host}"
-		"cros_host_extra_ldflags=${LDFLAGS_host}"
-		"cros_v8_snapshot_cc=${CC_host}"
-		"cros_v8_snapshot_cxx=${CXX_host}"
-		"cros_v8_snapshot_ar=${AR_host}"
-		"cros_v8_snapshot_ld=${LD_host}"
-		"cros_v8_snapshot_nm=${NM_host}"
-		"cros_v8_snapshot_readelf=${READELF_host}"
-		"cros_v8_snapshot_extra_cflags=${CFLAGS_host}"
-		"cros_v8_snapshot_extra_cxxflags=${CXXFLAGS_host}"
-		"cros_v8_snapshot_extra_cppflags=${CPPFLAGS_host}"
-		"cros_v8_snapshot_extra_ldflags=${LDFLAGS_host}"
-	)
-
-	local arg
-	for arg in "${BUILD_STRING_ARGS[@]}"; do
-		BUILD_ARGS+=("${arg%%=*}=\"${arg#*=}\"")
-	done
-	export GN_ARGS="${BUILD_ARGS[*]}"
-	einfo "GN_ARGS = ${GN_ARGS}"
-	local gn=(
-		"${CHROME_ROOT}/src/buildtools/linux64/gn" gen
-		"${CHROME_ROOT}/src/${BUILD_OUT_SYM}/${BUILDTYPE}"
-		--args="${GN_ARGS}" --root="${CHROME_ROOT}/src"
-	)
-	echo "${gn[@]}"
-	"${gn[@]}" || die
-
-	setup_test_lists
-
-	if use clang_tidy; then
-		export WITH_TIDY=1
-	fi
-}
-
-chrome_make() {
-	local build_dir="${BUILD_OUT_SYM}/${BUILDTYPE}"
-
-	# If ThinLTO is enabled, we may have a cache from a previous link. Due
-	# to fears about lack of reproducibility, we don't allow cache reuse
-	# across rebuilds. The cache is still useful for artifacts shared
-	# between multiple links done by this build (e.g. tests).
-	use thinlto && rm -rf "${build_dir}/thinlto-cache"
-
-	# If goma is enabled, increase the number of parallel run to
-	# 10 * {number of processors}. Though, if it is too large the
-	# performance gets slow down, so limit by 200 heuristically.
-	if use_goma; then
-		local num_parallel=$(($(nproc) * 10))
-		local j_limit=200
-		set -- -j $((num_parallel < j_limit ? num_parallel : j_limit)) "$@"
-	fi
-	local command=(
-		"${ENINJA}"
-		-j"$(makeopts_jobs)"
-		-C "${build_dir}"
-		$(usex verbose -v "")
-		-d "keeprsp"
-		"$@"
-	)
-	# If goma is used, log the command, cwd and env vars, which will be
-	# uploaded to the logging server.
-	if should_upload_build_logs; then
-		env --null > "${GLOG_log_dir}/ninja_env"
-		pwd > "${GLOG_log_dir}/ninja_cwd"
-		echo "${command[@]}" > "${GLOG_log_dir}/ninja_command"
-	fi
-	PATH=${PATH}:${DEPOT_TOOLS} "${command[@]}"
-	local ret=$?
-	if should_upload_build_logs; then
-		echo "${ret}" > "${GLOG_log_dir}/ninja_exit"
-		cp -p "${BUILD_OUT_SYM}/${BUILDTYPE}/.ninja_log" "${GLOG_log_dir}/ninja_log"
-	fi
-	[[ "${ret}" -eq 0 ]] || die
-
-	# Still use a script to check if the orderfile is used properly, i.e.
-	# Builtin_ functions are placed between the markers, etc.
-	if use strict_toolchain_checks && (use orderfile_use || use orderfile_verify); then
-		"${FILESDIR}/check_orderfile.py" "${build_dir}/chrome" || die
-	fi
-}
-
-src_compile() {
-	if [[ "${CHROME_ORIGIN}" != "LOCAL_SOURCE" &&
-			"${CHROME_ORIGIN}" != "SERVER_SOURCE" ]]; then
-		return
-	fi
-
-	cd "${CHROME_ROOT}"/src || die "Cannot chdir to ${CHROME_ROOT}/src"
-
-	local chrome_targets=( $(usex mojo "mojo_shell" "") )
-	if use app_shell; then
-		chrome_targets+=( app_shell )
-	else
-		chrome_targets+=( chrome )
-	fi
-	if use build_tests; then
-		chrome_targets+=(
-			"${TEST_FILES[@]}"
-			"${TOOLS_TELEMETRY_BIN[@]}"
-			chromedriver
-		)
-		if use chrome_internal; then
-			chrome_targets+=( libassistant_debug.so )
-		fi
-	fi
-	use_nacl && chrome_targets+=( nacl_helper_bootstrap nacl_helper )
-
-	chrome_make "${chrome_targets[@]}"
-
-	if use build_tests; then
-		install_chrome_test_resources "${WORKDIR}/test_src"
-		install_telemetry_dep_resources "${WORKDIR}/telemetry_src"
-
-		# NOTE: Since chrome is built inside distfiles, we have to get
-		# rid of the previous instance first.
-		# We remove only what we will overwrite with the mv below.
-		local deps="${WORKDIR}/${P}/${AUTOTEST_DEPS}"
-
-		rm -rf "${deps}/chrome_test/test_src"
-		mv "${WORKDIR}/test_src" "${deps}/chrome_test/"
-
-		rm -rf "${deps}/telemetry_dep/test_src"
-		mv "${WORKDIR}/telemetry_src" "${deps}/telemetry_dep/test_src"
-
-		# The autotest eclass wants this for some reason.
-		get_paths() { :; }
-
-		# HACK: It would make more sense to call autotest_src_prepare in
-		# src_prepare, but we need to call install_chrome_test_resources first.
-		autotest-deponly_src_prepare
-
-		# Remove .git dirs
-		find "${AUTOTEST_WORKDIR}" -type d -name .git -prune -exec rm -rf {} +
-
-		autotest_src_compile
-	fi
-}
-
-install_test_resources() {
-	# Install test resources from chrome source directory to destination.
-	# We keep a cache of test resources inside the chroot to avoid copying
-	# multiple times.
-	local test_dir="${1}"
-	einfo "install_test_resources to ${test_dir}"
-	shift
-
-	# To speed things up, we write the list of files to a temporary file so
-	# we can use rsync with --files-from.
-	local tmp_list_file="${T}/${test_dir##*/}.files"
-	printf "%s\n" "$@" > "${tmp_list_file}"
-
-	# Copy the specific files to the cache from the source directory.
-	# Note: we need to specify -r when using --files-from and -a to get a
-	# recursive copy.
-	# TODO(ihf): Make failures here fatal.
-	rsync -r -a --delete --exclude=.git --exclude="*.pyc" \
-		--files-from="${tmp_list_file}" "${CHROME_ROOT}/src/" \
-		"${CHROME_CACHE_DIR}/src/"
-
-	# Create hard links in the destination based on the cache.
-	# Note: we need to specify -r when using --files-from and -a to get a
-	# recursive copy.
-	# TODO(ihf): Make failures here fatal.
-	rsync -r -a --link-dest="${CHROME_CACHE_DIR}/src" \
-		--files-from="${tmp_list_file}" "${CHROME_CACHE_DIR}/src/" "${test_dir}/"
-}
-
-test_strip_install() {
-	local from="${1}"
-	local dest="${2}"
-	shift 2
-	mkdir -p "${dest}"
-	local f
-	for f in "$@"; do
-		$(tc-getSTRIP) --strip-debug \
-			"${from}"/${f} -o "${dest}/$(basename ${f})"
-	done
-}
-
-install_chrome_test_resources() {
-	# NOTE: This is a duplicate from src_install, because it's required here.
-	local from="${CHROME_CACHE_DIR}/src/${BUILD_OUT}/${BUILDTYPE}"
-	local test_dir="${1}"
-	local dest="${test_dir}/out/Release"
-
-	echo Copying Chrome tests into "${test_dir}"
-
-	# Even if chrome_debug_tests is enabled, we don't need to include detailed
-	# debug info for tests in the binary package, so save some time by stripping
-	# everything but the symbol names. Developers who need more detailed debug
-	# info on the tests can use the original unstripped tests from the ${from}
-	# directory.
-	TEST_INSTALL_TARGETS=(
-		"${TEST_FILES[@]}"
-		"libppapi_tests.so" )
-
-	einfo "Installing test targets: ${TEST_INSTALL_TARGETS[@]}"
-	test_strip_install "${from}" "${dest}" "${TEST_INSTALL_TARGETS[@]}"
-
-	# Copy Chrome test data.
-	mkdir -p "${dest}"/test_data
-	# WARNING: Only copy subdirectories of |test_data|.
-	# The full |test_data| directory is huge and kills our VMs.
-	# Example:
-	# cp -al "${from}"/test_data/<subdir> "${test_dir}"/out/Release/<subdir>
-
-	for f in "${PPAPI_TEST_FILES[@]}"; do
-		cp -al "${from}/${f}" "${dest}"
-	done
-
-	# Install Chrome test resources.
-	# WARNING: Only install subdirectories of |chrome/test|.
-	# The full |chrome/test| directory is huge and kills our VMs.
-	install_test_resources "${test_dir}" \
-		base/base_paths_posix.cc \
-		chrome/test/data/chromeos \
-		chrome/test/functional \
-		chrome/third_party/mock4js/mock4js.js  \
-		content/common/gpu/testdata \
-		media/test/data \
-		content/test/data \
-		net/data/ssl/certificates \
-		ppapi/tests/test_case.html \
-		ppapi/tests/test_url_loader_data \
-		third_party/bidichecker/bidichecker_packaged.js \
-		third_party/accessibility-developer-tools/gen/axs_testing.js
-
-	# Add the pdf test data if needed.
-	if use chrome_internal; then
-		install_test_resources "${test_dir}" pdf/test
-	fi
-	# Add the gles_conform test data if needed.
-	if use chrome_internal || use internal_gles_conform; then
-		install_test_resources "${test_dir}" gpu/gles2_conform_support/gles2_conform_test_expectations.txt
-	fi
-
-	cp -a "${CHROME_ROOT}"/"${AUTOTEST_DEPS}"/chrome_test/setup_test_links.sh \
-		"${dest}"
-}
-
-install_telemetry_dep_resources() {
-	local test_dir="${1}"
-
-	TELEMETRY=${CHROME_ROOT}/src/third_party/catapult/telemetry
-	if [[ -r "${TELEMETRY}" ]]; then
-		echo "Copying Telemetry Framework into ${test_dir}"
-		mkdir -p "${test_dir}"
-		# We are going to call chromium code but can't trust that it is clean
-		# of precompiled code. See crbug.com/590762.
-		find "${TELEMETRY}" -name "*.pyc" -type f -delete
-		# Get deps from Chrome.
-		FIND_DEPS=${CHROME_ROOT}/src/tools/perf/find_dependencies
-		PERF_DEPS=${CHROME_ROOT}/src/tools/perf/bootstrap_deps
-		CROS_DEPS=${CHROME_ROOT}/src/tools/cros/bootstrap_deps
-		# sed removes the leading path including src/ converting it to relative.
-		# To avoid silent failures assert the success.
-		DEPS_LIST=$(python ${FIND_DEPS} ${PERF_DEPS} ${CROS_DEPS} | \
-			sed -e 's|^'${CHROME_ROOT}/src/'||'; assert)
-		install_test_resources "${test_dir}" "${DEPS_LIST}"
-		# For crosperf, which uses some tests only available on internal builds.
-		if use chrome_internal; then
-			install_test_resources "${test_dir}" \
-				data/page_cycler/morejs \
-				data/page_cycler/moz
-		fi
-	fi
-
-	local from="${CHROME_CACHE_DIR}/src/${BUILD_OUT}/${BUILDTYPE}"
-	local dest="${test_dir}/src/out/${BUILDTYPE}"
-	einfo "Installing telemetry binaries: ${TOOLS_TELEMETRY_BIN[@]}"
-	test_strip_install "${from}" "${dest}" "${TOOLS_TELEMETRY_BIN[@]}"
-
-	# When copying only a portion of the Chrome source that telemetry needs,
-	# some symlinks can end up broken. Thus clean these up before packaging.
-	find -L "${test_dir}" -type l -delete
-}
-
-# Add any new artifacts generated by the Chrome build targets to deploy_chrome.py.
-# We deal with miscellaneous artifacts here in the ebuild.
-src_install() {
-	FROM="${CHROME_CACHE_DIR}/src/${BUILD_OUT}/${BUILDTYPE}"
-
-	# Override default strip flags and lose the '-R .comment'
-	# in order to play nice with the crash server.
-	if [[ -z "${KEEP_CHROME_DEBUG_SYMBOLS}" ]]; then
-		if [[ "${STRIP}" == "llvm-strip" ]]; then
-			export PORTAGE_STRIP_FLAGS="--strip-all-gnu"
-		else
-			export PORTAGE_STRIP_FLAGS=""
-		fi
-	else
-		export PORTAGE_STRIP_FLAGS="--strip-debug"
-	fi
-	einfo "PORTAGE_STRIP_FLAGS=${PORTAGE_STRIP_FLAGS}"
-	LS=$(ls -alhS ${FROM})
-	einfo "CHROME_DIR after build\n${LS}"
-
-	# Copy a D-Bus config file that includes other configs that are installed to
-	# /opt/google/chrome/dbus by deploy_chrome.
-	insinto /etc/dbus-1/system.d
-	doins "${FILESDIR}"/chrome.conf
-
-	# Copy Quickoffice resources for official build.
-	# Quickoffice is not yet available for arm64, https://crbug.com/881489
-	if use chrome_internal && [[ "${ARCH}" != "arm64" ]]; then
-		local qo_install_root="/usr/share/chromeos-assets/quickoffice"
-		insinto "${qo_install_root}"
-		QUICKOFFICE="${CHROME_ROOT}"/src/chrome/browser/resources/chromeos/quickoffice
-		doins -r "${QUICKOFFICE}"/_locales
-		doins -r "${QUICKOFFICE}"/css
-		doins -r "${QUICKOFFICE}"/img
-		doins -r "${QUICKOFFICE}"/plugin
-		doins -r "${QUICKOFFICE}"/scripts
-		doins -r "${QUICKOFFICE}"/views
-
-		local qo_path=""
-		case "${ARCH}" in
-		arm)
-			qo_path="${QUICKOFFICE}"/_platform_specific/arm
-			;;
-		amd64)
-			qo_path="${QUICKOFFICE}"/_platform_specific/x86_64
-			;;
-		*)
-			die "Unsupported architecture: ${ARCH}"
-			;;
-		esac
-
-		# Compress the platform-specific NaCl binaries with squashfs to
-		# save space on the rootfs.
-		# - compress with LZO and 1M blocks to optimize trade-off
-		# between compression ratio and decompression speed.
-		# - use "-keep-as-directory" option so the squash file will
-		# include the folder with the name of the CPU architecture,
-		# which is expected by the scripts on device.
-		# - use "-root-mode 0755" to ensure that the mountpoint has
-		# permissions 0755 instead of the default 0777.
-		# - use "-4k-align" option so individual files inside the squash
-		# file will be aligned to 4K blocks, which improves the
-		# efficiency of the delta updates.
-		mksquashfs "${qo_path}" "${WORKDIR}/quickoffice.squash" \
-			-all-root -noappend -no-recovery -no-exports \
-			-exit-on-error -comp lzo -b 1M -keep-as-directory \
-			-4k-align -root-mode 0755 -no-progress \
-			|| die "Failed to create Quickoffice squashfs"
-
-		# The squashfs will be mounted at boot time by an upstart script
-		# installed by chromeos-base/quickoffice.
-		doins "${WORKDIR}/quickoffice.squash"
-	fi
-
-	# Chrome test resources
-	# Test binaries are only available when building chrome from source
-	if use build_tests && [[ "${CHROME_ORIGIN}" == "LOCAL_SOURCE" ||
-		"${CHROME_ORIGIN}" == "SERVER_SOURCE" ]]; then
-		autotest-deponly_src_install
-		#env -uRESTRICT prepstrip "${D}${AUTOTEST_BASE}"
-	fi
-
-	# Copy input_methods.txt for XkbToKcmConverter & auto-test.
-	if [[ "${CHROME_ORIGIN}" == "LOCAL_SOURCE" ||
-			"${CHROME_ORIGIN}" == "SERVER_SOURCE" ]]; then
-		insinto /usr/share/chromeos-assets/input_methods
-		sed -E -e '/^#/d' -e '/^$/d' -e 's:  +: :g' \
-			"${CHROME_ROOT}"/src/chromeos/ime/input_methods.txt > "${T}/input_methods.txt" || die
-		doins "${T}/input_methods.txt"
-	fi
-
-	# Fix some perms.
-	# TODO(rcui): Remove this - shouldn't be needed, and is just covering up
-	# potential permissions bugs.
-	chmod -R a+r "${D}"
-	find "${D}" -perm /111 -print0 | xargs -0 chmod a+x
-
-	# The following symlinks are needed in order to run chrome.
-	# TODO(rcui): Remove this.  Not needed for running Chrome.
-	dosym libnss3.so /usr/lib/libnss3.so.1d
-	dosym libnssutil3.so.12 /usr/lib/libnssutil3.so.1d
-	dosym libsmime3.so.12 /usr/lib/libsmime3.so.1d
-	dosym libssl3.so.12 /usr/lib/libssl3.so.1d
-	dosym libplds4.so /usr/lib/libplds4.so.0d
-	dosym libplc4.so /usr/lib/libplc4.so.0d
-	dosym libnspr4.so /usr/lib/libnspr4.so.0d
-
-	# Create the main Chrome install directory.
-	dodir "${CHROME_DIR}"
-	insinto "${CHROME_DIR}"
-
-	# Install the orderfile into the chrome directory
-	if use orderfile_generate; then
-		[[ -f "${FROM}/chrome.orderfile.txt" ]] || die "No orderfile generated."
-		doins "${FROM}/chrome.orderfile.txt"
-	fi
-
-	# Install the unvetted orderfile into the chrome directory for upload.
-	if use orderfile_verify; then
-		[[ -f "${DISTDIR}/${UNVETTED_ORDERFILE}.xz" ]] || die "Lost the unvetted orderfile."
-		doins "${DISTDIR}/${UNVETTED_ORDERFILE}.xz"
-	fi
-
-	# Use the deploy_chrome from the *Chrome* checkout.  The benefit of
-	# doing this is if a new buildspec of Chrome requires a non-backwards
-	# compatible change to deploy_chrome, we can commit the fix to
-	# deploy_chrome without breaking existing Chrome OS release builds,
-	# and then roll the DEPS for chromite in the Chrome checkout.
-	#
-	# Another benefit is each version of Chrome will have the right
-	# corresponding version of deploy_chrome.
-	local cmd=( "${CHROME_ROOT}"/src/third_party/chromite/bin/deploy_chrome )
-	# Disable stripping for now, as deploy_chrome doesn't generate splitdebug files.
-	cmd+=(
-		"--board=${BOARD}"
-		"--build-dir=${FROM}"
-		"--gn-args=${GN_ARGS}"
-		# If this is enabled, we need to re-enable `prepstrip` above for autotests.
-		# You'll also have to re-add "strip" to the RESTRICT at the top of the file.
-		--nostrip
-		"--staging-dir=${D_CHROME_DIR}"
-		"--staging-flags=${USE}"
-		--staging-only
-		"--strip-bin=${STRIP}"
-		"--strip-flags=${PORTAGE_STRIP_FLAGS}"
-		--verbose
-	)
-	einfo "${cmd[*]}"
-	"${cmd[@]}" || die
-	LS=$(ls -alhS ${D}/${CHROME_DIR})
-	einfo "CHROME_DIR after deploy_chrome\n${LS}"
-
-	# Keep the .dwp files with debug fission.
-	if use chrome_debug && use debug_fission; then
-		mkdir -p "${D}/usr/lib/debug/${CHROME_DIR}"
-		DWP="${CHOST}"-dwp
-		cd "${D}/${CHROME_DIR}"
-		# Iterate over all ELF files in current directory
-		while read i; do
-			cd "${FROM}"
-			# These files do not build with -gsplit-dwarf,
-			# so we do not need to get a .dwp file from them.
-			if [[ "${i}" == "./libassistant.so"		|| \
-				"${i}" == "./nacl_helper_nonsfi"	|| \
-				"${i}" == "./nacl_helper_bootstrap"	|| \
-				"${i}" == "./nacl_irt_arm.nexe"		|| \
-				"${i}" == "./nacl_irt_x86_64.exe"	|| \
-				"${i}" == "./nacl_irt_x86_64.nexe"	|| \
-				"${i}" == "./libmojo_core_arc64.so"	|| \
-				"${i}" == "./libmojo_core_arc32.so"	|| \
-				"${i}" == "./libwidevinecdm.so" ]] ; then
-				continue
-			fi
-			source="${i}"
-			${DWP} -e "${FROM}/${source}" -o "${D}/usr/lib/debug/${CHROME_DIR}/${i}.dwp" || die
-		done < <(scanelf -ByF '%F' ".")
-	fi
-
-	if use build_tests; then
-		# Install Chrome Driver to test image.
-		local chromedriver_dir='/usr/local/chromedriver'
-		dodir "${chromedriver_dir}"
-		cp -pPR "${FROM}"/chromedriver "${D}/${chromedriver_dir}" || die
-
-		if use chrome_internal; then
-			# Install LibAssistant test library to test image.
-			into /usr/local/
-			dolib.so "${FROM}"/libassistant_debug.so
-		fi
-
-		# Install a testing script to run Lacros from command line.
-		into /usr/local
-		dobin "${CHROME_ROOT}"/src/build/lacros/mojo_connection_lacros_launcher.py
-	fi
-	# The icu data is used by both chromeos-base/chrome-icu and this package.
-	# chromeos-base/chrome-icu is responsible for installing the icu
-	# data, so we remove it from ${D} here.
-	rm "${D_CHROME_DIR}/icudtl.dat" || die
-}
-
-pkg_preinst() {
-	enewuser "wayland"
-	enewgroup "wayland"
-	LS=$(ls -alhS ${ED}/${CHROME_DIR})
-	einfo "CHROME_DIR after installation\n${LS}"
-	CHROME_SIZE=$(stat --printf="%s" ${ED}/${CHROME_DIR}/chrome)
-	einfo "CHROME_SIZE = ${CHROME_SIZE}"
-
-	# Non-internal builds come with >10MB of unwinding info built-in. Size
-	# checks on those are less profitable.
-	if [[ ${CHROME_SIZE} -ge 250000000 && -z "${KEEP_CHROME_DEBUG_SYMBOLS}" ]] && use chrome_internal && ! use chrome_dcheck; then
-		die "Installed chrome binary got suspiciously large (size=${CHROME_SIZE})."
-	fi
-	if use arm; then
-		local files=$(find "${ED}/usr/lib/debug${CHROME_DIR}" -size +$((4 * 1024 * 1024 * 1024 - 1))c)
-		[[ -n ${files} ]] && die "Debug files exceed 4GiB: ${files}"
-	fi
-	# Verify that the elf program headers in splitdebug binary match the chrome
-	# binary, this is needed for correct symbolization in CWP.
-	# b/128861198, https://crbug.com/1007548 .
-	if [[ ${MERGE_TYPE} != binary ]] && use strict_toolchain_checks; then
-		local chrome_headers=$(${READELF} --program-headers --wide \
-			"${ED}/${CHROME_DIR}"/chrome | grep LOAD)
-		local chrome_debug_headers=$(${READELF} --program-headers --wide \
-			"${ED}/usr/lib/debug${CHROME_DIR}"/chrome.debug | grep LOAD)
-		[[ "${chrome_headers}" != "${chrome_debug_headers}" ]] && \
-			die "chrome program headers do not match chrome.debug"
-	fi
-}
-
-pkg_postinst() {
-	autotest_pkg_postinst
-}
diff --git a/chromeos-base/chromeos-chrome/chromeos-chrome-97.0.4667.0_rc-r1.ebuild b/chromeos-base/chromeos-chrome/chromeos-chrome-97.0.4667.0_rc-r1.ebuild
new file mode 100644
index 0000000..d0a52b8
--- /dev/null
+++ b/chromeos-base/chromeos-chrome/chromeos-chrome-97.0.4667.0_rc-r1.ebuild
@@ -0,0 +1,1401 @@
+# Copyright 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+# Usage: by default, downloads chromium browser from the build server.
+# If CHROME_ORIGIN is set to one of {SERVER_SOURCE, LOCAL_SOURCE, LOCAL_BINARY},
+# the build comes from the chromimum source repository (gclient sync),
+# build server, locally provided source, or locally provided binary.
+# If you are using SERVER_SOURCE, a gclient template file that is in the files
+# directory which will be copied automatically during the build and used as
+# the .gclient for 'gclient sync'.
+# If building from LOCAL_SOURCE or LOCAL_BINARY specifying BUILDTYPE
+# will allow you to specify "Debug" or another build type; "Release" is
+# the default.
+
+EAPI=7
+
+# TODO(crbug.com/984182): We force Python 2 because depot_tools doesn't support Python 3.
+PYTHON_COMPAT=( python2_7 )
+inherit autotest-deponly binutils-funcs chromium-source cros-credentials cros-constants cros-sanitizers eutils flag-o-matic git-2 multilib toolchain-funcs user python-any-r1 multiprocessing
+
+DESCRIPTION="Open-source version of Google Chrome web browser"
+HOMEPAGE="http://www.chromium.org/"
+SRC_URI=""
+
+LICENSE="BSD-Google chrome_internal? ( Google-TOS )"
+SLOT="0"
+KEYWORDS="*"
+IUSE="
+	+afdo_use
+	afdo_verify
+	+accessibility
+	app_shell
+	asan
+	+authpolicy
+	+build_tests
+	cdm_factory_daemon
+	+chrome_debug
+	+cfi
+	cfm
+	chrome_debug_tests
+	chrome_dcheck
+	chrome_internal
+	chrome_media
+	+chrome_remoting
+	clang_tidy
+	component_build
+	cros-debug
+	debug_fission
+	+dwarf5
+	+fonts
+	goma
+	goma_thinlto
+	+highdpi
+	iioservice
+	intel_oemcrypto
+	internal_gles_conform
+	+libcxx
+	libinput
+	mojo
+	msan
+	+nacl
+	neon
+	+oobe_config
+	opengl
+	opengles
+	orderfile_generate
+	+orderfile_use
+	orderfile_verify
+	+runhooks
+	strict_toolchain_checks
+	+thinlto
+	touchview
+	ubsan
+	v4l2_codec
+	v4lplugin
+	vaapi
+	verbose
+	vtable_verify
+	xkbcommon
+	"
+REQUIRED_USE="
+	cfi? ( thinlto )
+	afdo_verify? ( !afdo_use )
+	orderfile_generate? ( !orderfile_use )
+	"
+
+OZONE_PLATFORM_PREFIX=ozone_platform_
+OZONE_PLATFORMS=(gbm cast headless egltest caca)
+IUSE_OZONE_PLATFORMS="${OZONE_PLATFORMS[@]/#/${OZONE_PLATFORM_PREFIX}}"
+IUSE+=" ${IUSE_OZONE_PLATFORMS}"
+OZONE_PLATFORM_DEFAULT_PREFIX=ozone_platform_default_
+IUSE_OZONE_PLATFORM_DEFAULTS="${OZONE_PLATFORMS[@]/#/${OZONE_PLATFORM_DEFAULT_PREFIX}}"
+IUSE+=" ${IUSE_OZONE_PLATFORM_DEFAULTS}"
+REQUIRED_USE+=" ^^ ( ${IUSE_OZONE_PLATFORM_DEFAULTS} )"
+
+# The gclient hooks that run in src_prepare hit the network.
+# https://crbug.com/731905
+RESTRICT="network-sandbox mirror"
+
+# Do not strip the nacl_helper_bootstrap binary because the binutils
+# objcopy/strip mangles the ELF program headers.
+# TODO(mcgrathr,vapier): This should be removed after portage's prepstrip
+# script is changed to use eu-strip instead of objcopy and strip.
+STRIP_MASK+=" */nacl_helper_bootstrap"
+
+# Portage version without optional portage suffix.
+CHROME_VERSION="${PV/_*/}"
+
+# chrome destination directory
+CHROME_DIR=/opt/google/chrome
+D_CHROME_DIR="${D}/${CHROME_DIR}"
+
+# For compilation/local chrome
+BUILDTYPE="${BUILDTYPE:-Release}"
+BOARD="${BOARD:-${SYSROOT##/build/}}"
+BUILD_OUT="${BUILD_OUT:-out_${BOARD}}"
+# WARNING: We are using a symlink now for the build directory to work around
+# command line length limits. This will cause problems if you are doing
+# parallel builds of different boards/variants.
+# Unsetting BUILD_OUT_SYM will revert this behavior
+BUILD_OUT_SYM="c"
+
+UNVETTED_ORDERFILE_LOCATION=${AFDO_GS_DIRECTORY:-"gs://chromeos-toolchain-artifacts/orderfile/unvetted"}
+
+# The following entry will be modified automatically for verifying orderfile or AFDO profile.
+UNVETTED_ORDERFILE=""
+UNVETTED_AFDO_FILE=""
+
+add_orderfiles() {
+	# For verify orderfile, only for a toolchain special build.
+	if [[ -n ${UNVETTED_ORDERFILE} ]]; then
+		SRC_URI+=" orderfile_verify? ( ${UNVETTED_ORDERFILE_LOCATION}/${UNVETTED_ORDERFILE}.xz )"
+	fi
+}
+
+add_orderfiles
+
+RDEPEND="${RDEPEND}
+	app-arch/bzip2
+	app-crypt/mit-krb5
+	app-misc/edid-decode
+	authpolicy? ( chromeos-base/authpolicy )
+	~chromeos-base/chrome-icu-${PV}
+	chromeos-base/gestures
+	chromeos-base/libevdev:=
+	fonts? ( chromeos-base/chromeos-fonts )
+	chrome_internal? ( chromeos-base/quickoffice )
+	dev-libs/nspr
+	>=dev-libs/nss-3.12.2
+	libinput? ( dev-libs/libinput:= )
+	>=media-libs/alsa-lib-1.0.19
+	media-libs/fontconfig
+	media-libs/libsync
+	x11-libs/libdrm
+	ozone_platform_gbm? ( media-libs/minigbm )
+	v4lplugin? ( media-libs/libv4lplugins )
+	>=media-sound/adhd-0.0.1-r310
+	net-print/cups
+	opengl? ( virtual/opengl )
+	opengles? ( virtual/opengles )
+	sys-apps/dbus
+	sys-apps/pciutils
+	virtual/udev
+	sys-libs/libcap
+	chrome_remoting? ( sys-libs/pam )
+	vaapi? ( x11-libs/libva )
+	xkbcommon? (
+		x11-libs/libxkbcommon
+		x11-misc/xkeyboard-config
+	)
+	accessibility? (
+		app-accessibility/brltty
+		app-accessibility/espeak-ng
+		app-accessibility/googletts
+	)
+	libcxx? (
+		sys-libs/libcxxabi
+		sys-libs/libcxx
+	)
+	oobe_config? ( chromeos-base/oobe_config )
+	iioservice? ( chromeos-base/iioservice )
+	"
+
+DEPEND="${DEPEND}
+	${RDEPEND}
+	chromeos-base/protofiles
+	>=dev-util/gperf-3.0.3
+	>=dev-util/pkgconfig-0.23
+	arm? ( x11-libs/libdrm )
+"
+
+PATCHES=()
+
+AUTOTEST_COMMON="src/chrome/test/chromeos/autotest/files"
+AUTOTEST_DEPS="${AUTOTEST_COMMON}/client/deps"
+AUTOTEST_DEPS_LIST="chrome_test telemetry_dep"
+
+IUSE="${IUSE} +autotest"
+
+
+QA_TEXTRELS="*"
+QA_EXECSTACK="*"
+QA_PRESTRIPPED="*"
+
+use_nacl() {
+	# 32bit asan conflicts with nacl: crosbug.com/38980
+	! (use asan && [[ ${ARCH} == "x86" ]]) && \
+	! use component_build && use nacl
+}
+
+# Like the `usex` helper:
+# Usage: echox [int] [echo-if-true] [echo-if-false]
+# If [int] is 0, then echo the 2nd arg (default of yes), else
+# echo the 3rd arg (default of no).
+echox() {
+	# Like the `usex` helper.
+	[[ ${1:-$?} -eq 0 ]] && echo "${2:-yes}" || echo "${3:-no}"
+}
+echotf() { echox ${1:-$?} true false ; }
+usetf()  { usex $1 true false ; }
+
+use_goma() {
+	[[ "${USE_GOMA:-$(usetf goma)}" == "true" ]]
+}
+should_upload_build_logs() {
+	[[ -n "${GOMA_TMP_DIR}" && -n "${GLOG_log_dir}" && \
+		"${GLOG_log_dir}" == "${GOMA_TMP_DIR}"* ]]
+}
+
+set_build_args() {
+	# use goma_thinlto says that if we are using Goma and ThinLTO, use
+	# Goma for distributed code generation. So only set the corresponding
+	# gn arg to true if all three conditions are met.
+	use_goma_thin_lto=$(use goma_thinlto && use_goma && use thinlto; echotf)
+	BUILD_ARGS=(
+		"is_chromeos_device=true"
+		# is_official_build sometimes implies extra optimizations (e.g. it will allow
+		# ThinLTO to optimize more aggressively, if ThinLTO is enabled). Please note
+		# that, despite the name, it should be usable by external users.
+		#
+		# Sanitizers don't like official builds.
+		"is_official_build=$(use_sanitizers false true)"
+
+		"is_debug=false"
+		"${EXTRA_GN_ARGS}"
+		"enable_pseudolocales=$(usetf cros-debug)"
+		"use_chromeos_protected_av1=$(usetf intel_oemcrypto)"
+		"use_chromeos_protected_media=$(usetf cdm_factory_daemon)"
+		"use_iioservice=$(usetf iioservice)"
+		"use_v4l2_codec=$(usetf v4l2_codec)"
+		"use_v4lplugin=$(usetf v4lplugin)"
+		"use_vaapi=$(usetf vaapi)"
+		"use_xkbcommon=$(usetf xkbcommon)"
+		"enable_remoting=$(usetf chrome_remoting)"
+		"enable_nacl=$(use_nacl; echotf)"
+		# use_system_minigbm is set below.
+
+		"is_cfm=$(usetf cfm)"
+
+		# Clang features.
+		"is_asan=$(usetf asan)"
+		"is_msan=$(usetf msan)"
+		"is_ubsan=$(usetf ubsan)"
+		"is_clang=true"
+		"use_thin_lto=$(usetf thinlto)"
+		"use_goma_thin_lto=${use_goma_thin_lto}"
+		"is_cfi=$(usetf cfi)"
+		"use_dwarf5=$(usetf dwarf5)"
+
+		# Assistant integration tests are only run on the Chromium bots,
+		# but they increase the size of libassistant.so by 1.3MB so we
+		# disable them here.
+		"enable_assistant_integration_tests=false"
+
+		# Generate debug info necessary for AutoFDO.
+		"clang_emit_debug_info_for_profiling=true"
+
+		# Add libinput to handle touchpad.
+		"use_libinput=$(usetf libinput)"
+	)
+
+	# BUILD_STRING_ARGS needs appropriate quoting. So, we keep them separate and
+	# add them to BUILD_ARGS at the end.
+	BUILD_STRING_ARGS=(
+		"target_sysroot=${SYSROOT}"
+		"system_libdir=$(get_libdir)"
+		"pkg_config=$(tc-getPKG_CONFIG)"
+		"target_os=chromeos"
+		"host_pkg_config=$(tc-getBUILD_PKG_CONFIG)"
+		"clang_diagnostic_dir=/tmp/clang_crash_diagnostics"
+	)
+	use internal_gles_conform && BUILD_ARGS+=( "internal_gles2_conform_tests=true" )
+
+	# Ozone platforms.
+	local platform
+	for platform in ${OZONE_PLATFORMS[@]}; do
+		local flag="${OZONE_PLATFORM_DEFAULT_PREFIX}${platform}"
+		if use "${flag}"; then
+			BUILD_STRING_ARGS+=( "ozone_platform=${platform}" )
+		fi
+	done
+	BUILD_ARGS+=(
+		"ozone_auto_platforms=false"
+	)
+	for platform in ${IUSE_OZONE_PLATFORMS}; do
+		if use "${platform}"; then
+			BUILD_ARGS+=( "${platform}=true" )
+		fi
+	done
+	if use "ozone_platform_gbm"; then
+		BUILD_ARGS+=( "use_system_minigbm=true" )
+		BUILD_ARGS+=( "use_system_libdrm=true" )
+	fi
+	if use "touchview"; then
+		BUILD_ARGS+=( "subpixel_font_rendering_disabled=true" )
+	fi
+
+	# Set proper build args for the arch
+	case "${ARCH}" in
+	x86)
+		BUILD_STRING_ARGS+=( "target_cpu=x86" )
+		;;
+	arm)
+		BUILD_ARGS+=(
+			"arm_use_neon=$(usetf neon)"
+			# To workaround the 4GB debug limit. crbug.com/792999.
+			"blink_symbol_level=1"
+		)
+		BUILD_STRING_ARGS+=(
+			"target_cpu=arm"
+			"arm_float_abi=hard"
+		)
+		local arm_arch=$(get-flag march)
+		if [[ -n "${arm_arch}" ]]; then
+			BUILD_STRING_ARGS+=( "arm_arch=${arm_arch}" )
+		fi
+		;;
+	arm64)
+		BUILD_STRING_ARGS+=(
+			"target_cpu=arm64"
+		)
+		local arm_arch=$(get-flag march)
+		if [[ -n "${arm_arch}" ]]; then
+			BUILD_STRING_ARGS+=( "arm_arch=${arm_arch}" )
+		fi
+		;;
+	amd64)
+		BUILD_STRING_ARGS+=( "target_cpu=x64" )
+		;;
+	mips)
+		local mips_arch target_arch
+
+		mips_arch="$($(tc-getCPP) ${CFLAGS} ${CPPFLAGS} -E -P - <<<_MIPS_ARCH)"
+		# Strip away any enclosing quotes.
+		mips_arch="${mips_arch//\"}"
+		# TODO(benchan): Use tc-endian from toolchain-func to determine endianess
+		# when Chrome later cares about big-endian.
+		case "${mips_arch}" in
+		mips64*)
+			target_arch=mips64el
+			;;
+		*)
+			target_arch=mipsel
+			;;
+		esac
+
+		BUILD_STRING_ARGS+=(
+			"target_cpu=${target_arch}"
+			"mips_arch_variant=${mips_arch}"
+		)
+		;;
+	*)
+		die "Unsupported architecture: ${ARCH}"
+		;;
+	esac
+
+	if use chrome_internal; then
+		# Adding chrome branding specific variables.
+		BUILD_ARGS+=( "is_chrome_branded=true" )
+		# This test can only be build from internal sources.
+		BUILD_ARGS+=( "internal_gles2_conform_tests=true" )
+		export CHROMIUM_BUILD='_google_Chrome'
+		export OFFICIAL_BUILD='1'
+		export CHROME_BUILD_TYPE='_official'
+	elif use chrome_media; then
+		echo "Building Chromium with additional media codecs and containers."
+		BUILD_ARGS+=( "proprietary_codecs=true" )
+		BUILD_STRING_ARGS+=( "ffmpeg_branding=ChromeOS" )
+	fi
+
+	if use component_build; then
+		BUILD_ARGS+=( "is_component_build=true" )
+	fi
+	if use_goma; then
+		BUILD_ARGS+=( "use_goma=true" )
+		BUILD_STRING_ARGS+=( "goma_dir=${GOMA_DIR:-/home/${WHOAMI}/goma}" )
+
+		# Goma compiler proxy runs outside of portage build.
+		# Practically, because TMPDIR is set in portage, it is
+		# different from the directory used when the compiler proxy
+		# started.
+		# If GOMA_TMP_DIR is not set, the compiler proxy uses
+		# TMPDIR/goma_${WHOAMI} for its tmpdir as fallback, which
+		# causes unexpected behavior.
+		# Specifically, named socket used to communicate with compiler
+		# proxy is ${GOMA_TMP_DIR}/goma.ipc by default, so the compiler
+		# proxy cannot be reached.
+		# Thus, here set GOMA_TMP_DIR to /tmp/goma_${WHOAMI} if it is
+		# not yet set.
+		if [[ -z "${GOMA_TMP_DIR}" ]]; then
+			export GOMA_TMP_DIR="/tmp/goma_${WHOAMI}"
+		fi
+	fi
+
+	if use chrome_debug; then
+		# Use debug fission to avoid 4GB limit of ELF32 (see crbug.com/595763).
+		# Using -g1 causes problems with crash server (see crbug.com/601854).
+		# Disable debug_fission for bots which generate AFDO profile. (see crbug.com/704602).
+		local debug_level=2
+		if use arm && ! use debug_fission; then
+			# Limit debug info to -g1 to keep the binary size within 4GB.
+			# Production builds do not use "-debug_fission". But it is used
+			# by the AFDO builders and AFDO tools are fine with debug_level=1.
+			debug_level=1
+		fi
+		BUILD_ARGS+=(
+			"use_debug_fission=$(usetf debug_fission)"
+			"symbol_level=${debug_level}"
+		)
+		if use debug_fission; then
+			# The breakpad cannot handle the debug files generated by
+			# llvm and debug fission properly. crosbug.com/710605
+			append-flags -fno-split-dwarf-inlining
+		fi
+	fi
+
+	# dcheck_always_on may default to true depending on the value of args
+	# above, which we might not want. So let the chrome_dcheck USE flag
+	# determine its value.
+	BUILD_ARGS+=("dcheck_always_on=$(usetf chrome_dcheck)")
+}
+
+unpack_chrome() {
+	# Add depot_tools to PATH, local chroot builds fail otherwise.
+	export PATH=${PATH}:${DEPOT_TOOLS}
+
+	local cmd=( "${CHROMITE_BIN_DIR}"/sync_chrome )
+	use chrome_internal && cmd+=( --internal )
+	if [[ "${CHROME_VERSION}" != "9999" ]]; then
+		cmd+=( "--tag=${CHROME_VERSION}" )
+	fi
+	# --reset tells sync_chrome to blow away local changes and to feel
+	# free to delete any directories that get in the way of syncing. This
+	# is needed for unattended operation.
+	cmd+=( --reset "--gclient=${EGCLIENT}" "${CHROME_DISTDIR}" )
+	elog "${cmd[*]}"
+	# TODO(crbug.com/1103048): Disable the sandbox when syncing the code.
+	# It seems to break gclient execution at random for unknown reasons.
+	# Children stop being tracked, or no git repos actually get cloned.
+	SANDBOX_ON=0 "${cmd[@]}" || die
+}
+
+decide_chrome_origin() {
+	if [[ "${PV}" == "9999" ]]; then
+		# LOCAL_SOURCE is the default for cros_workon.
+		# Warn the user if CHROME_ORIGIN is already set.
+		if [[ -n "${CHROME_ORIGIN}" && "${CHROME_ORIGIN}" != LOCAL_SOURCE ]]; then
+			ewarn "CHROME_ORIGIN is already set to ${CHROME_ORIGIN}."
+			ewarn "This will prevent you from building from your local checkout."
+			ewarn "Please run 'unset CHROME_ORIGIN' to reset Chrome"
+			ewarn "to the default source location."
+		fi
+		: "${CHROME_ORIGIN:=LOCAL_SOURCE}"
+	else
+		# By default, pull from server.
+		: "${CHROME_ORIGIN:=SERVER_SOURCE}"
+	fi
+}
+
+sandboxless_ensure_directory() {
+	local dir
+	for dir in "$@"; do
+		if [[ ! -d "${dir}" ]] ; then
+			# We need root access to create these directories, so we need to
+			# use sudo. This implicitly disables the sandbox.
+			sudo mkdir -p "${dir}" || die
+			sudo chown "${PORTAGE_USERNAME}:portage" "${dir}" || die
+			sudo chmod 0755 "${dir}" || die
+		fi
+	done
+}
+
+src_unpack() {
+	echo
+	ewarn "If you want to develop or hack on the browser itself, you should follow the"
+	ewarn "simple chrome workflow instead of using emerge:"
+	ewarn "https://chromium.googlesource.com/chromiumos/docs/+/master/simple_chrome_workflow.md"
+	echo
+
+	tc-export CC CXX
+	local WHOAMI=$(whoami)
+
+	CHROME_SRC="chrome-src"
+	if use chrome_internal; then
+		CHROME_SRC+="-internal"
+	fi
+
+	# CHROME_CACHE_DIR is used for storing output artifacts, and is always a
+	# regular directory inside the chroot (i.e. it's never mounted in, so it's
+	# always safe to use cp -al for these artifacts).
+	: "${CHROME_CACHE_DIR:="/var/cache/chromeos-chrome/${CHROME_SRC}"}"
+	addwrite "${CHROME_CACHE_DIR}"
+
+	# CHROME_DISTDIR is used for storing the source code, if any source code
+	# needs to be unpacked at build time (e.g. in the SERVER_SOURCE scenario.)
+	# It will be mounted into the chroot, so it is never safe to use cp -al
+	# for these files.
+	: "${CHROME_DISTDIR:="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}/${CHROME_SRC}"}"
+	addwrite "${CHROME_DISTDIR}"
+
+	# Create storage directories.
+	sandboxless_ensure_directory "${CHROME_DISTDIR}" "${CHROME_CACHE_DIR}"
+
+	cros-credentials_setup
+
+	decide_chrome_origin
+
+	case "${CHROME_ORIGIN}" in
+	LOCAL_SOURCE|SERVER_SOURCE|LOCAL_BINARY)
+		elog "CHROME_ORIGIN VALUE is ${CHROME_ORIGIN}"
+		;;
+	*)
+		die "CHROME_ORIGIN not one of LOCAL_SOURCE, SERVER_SOURCE, LOCAL_BINARY"
+		;;
+	esac
+
+	# Prepare and set CHROME_ROOT based on CHROME_ORIGIN.
+	# CHROME_ROOT is the location where the source code is used for compilation.
+	# If we're in SERVER_SOURCE mode, CHROME_ROOT is CHROME_DISTDIR. In LOCAL_SOURCE
+	# mode, this directory may be set manually to any directory. It may be mounted
+	# into the chroot, so it is not safe to use cp -al for these files.
+	# These are set here because $(whoami) returns the proper user here,
+	# but 'root' at the root level of the file
+	case "${CHROME_ORIGIN}" in
+	(SERVER_SOURCE)
+		elog "Using CHROME_VERSION = ${CHROME_VERSION}"
+		if [[ ${WHOAMI} == "chrome-bot" ]]; then
+			# TODO: Should add a sanity check that the version checked out is
+			# what we actually want.  Not sure how to do that though.
+			elog "Skipping syncing as cbuildbot ran SyncChrome for us."
+		else
+			unpack_chrome
+		fi
+
+		elog "set the chrome source root to ${CHROME_DISTDIR}"
+		elog "From this point onwards there is no difference between \
+			SERVER_SOURCE and LOCAL_SOURCE, since the fetch is done"
+		CHROME_ROOT=${CHROME_DISTDIR}
+		;;
+	(LOCAL_SOURCE)
+		: ${CHROME_ROOT:=/home/${WHOAMI}/chrome_root}
+		if [[ ! -d "${CHROME_ROOT}/src" ]]; then
+			die "${CHROME_ROOT} does not contain a valid chromium checkout!"
+		fi
+		addwrite "${CHROME_ROOT}"
+		;;
+	esac
+
+	case "${CHROME_ORIGIN}" in
+	LOCAL_SOURCE|SERVER_SOURCE)
+		set_build_args
+		;;
+	esac
+
+	# FIXME: This is the normal path where ebuild stores its working data.
+	# Chrome builds inside distfiles because of speed, so we at least make
+	# a symlink here to add compatibility with autotest eclass which uses this.
+	ln -sf "${CHROME_ROOT}" "${WORKDIR}/${P}"
+
+	if use internal_gles_conform; then
+		local CHROME_GLES2_CONFORM=${CHROME_ROOT}/src/third_party/gles2_conform
+		local CROS_GLES2_CONFORM=/home/${WHOAMI}/trunk/src/third_party/gles2_conform
+		if [[ ! -d "${CHROME_GLES2_CONFORM}" ]]; then
+			if [[ -d "${CROS_GLES2_CONFORM}" ]]; then
+				ln -s "${CROS_GLES2_CONFORM}" "${CHROME_GLES2_CONFORM}"
+				einfo "Using GLES2 conformance test suite from ${CROS_GLES2_CONFORM}"
+			else
+				die "Trying to build GLES2 conformance test suite without ${CHROME_GLES2_CONFORM} or ${CROS_GLES2_CONFORM}"
+			fi
+		fi
+	fi
+
+	if use afdo_use; then
+		# Use AFDO profile downloaded in Chromium source code
+		# If needed profiles other than "silvermont", please set the variable
+		# ${AFDO_PROFILE_SOURCE} accordingly.
+		local afdo_src="${AFDO_PROFILE_SOURCE:-atom}"
+		BUILD_ARGS+=( "clang_use_default_sample_profile=true" )
+		BUILD_STRING_ARGS+=( "chromeos_afdo_platform=${afdo_src}" )
+	fi
+
+	# Use to verify a local unvetted AFDO file.
+	if use afdo_verify; then
+		if [[ ! -e "${UNVETTED_AFDO_FILE}" ]]; then
+			die "Cannot find ${UNVETTED_AFDO_FILE} to build Chrome."
+		fi
+		BUILD_STRING_ARGS+=( "clang_sample_profile_path=${UNVETTED_AFDO_FILE}" )
+	fi
+
+	# Unpack unvetted orderfile.
+	if use orderfile_verify; then
+		local orderfile_dir="${WORKDIR}/orderfile"
+		mkdir "${orderfile_dir}"
+		local orderfile_file=${UNVETTED_ORDERFILE}
+		(cd "${orderfile_dir}" && unpack "${orderfile_file}.xz") || die
+
+		local orderfile_loc="${orderfile_dir}/${orderfile_file}"
+		einfo "Using ${orderfile_loc} as orderfile for ordering Chrome"
+
+		# Pass the path to orderfile to GN args.
+		BUILD_STRING_ARGS+=( "chrome_orderfile_path=${orderfile_loc}" )
+	fi
+
+	if ! use orderfile_use; then
+		# If not using orderfile, override the default orderfile path to empty.
+		BUILD_STRING_ARGS+=( "chrome_orderfile_path=" )
+	fi
+}
+
+add_api_keys() {
+	# awk script to extract the values out of the file.
+	local EXTRACT="{ gsub(/[',]/, \"\", \$2); print \$2 }"
+	local api_key=$(awk "/google_api_key/ ${EXTRACT}" "$1")
+	local client_id=$(awk "/google_default_client_id/ ${EXTRACT}" "$1")
+	local client_secret=$(awk "/google_default_client_secret/ ${EXTRACT}" "$1")
+
+	BUILD_STRING_ARGS+=(
+		"google_api_key=${api_key}"
+		"google_default_client_id=${client_id}"
+		"google_default_client_secret=${client_secret}"
+	)
+}
+
+src_prepare() {
+	# Must call eapply_user in EAPI 7, but this function is a no-op here.
+	eapply_user
+
+	if [[ "${CHROME_ORIGIN}" != "LOCAL_SOURCE" &&
+			"${CHROME_ORIGIN}" != "SERVER_SOURCE" ]]; then
+		return
+	fi
+
+	elog "${CHROME_ROOT} should be set here properly"
+	cd "${CHROME_ROOT}/src" || die "Cannot chdir to ${CHROME_ROOT}"
+
+	# We do symlink creation here if appropriate.
+	mkdir -p "${CHROME_CACHE_DIR}/src/${BUILD_OUT}"
+	if [[ ! -z "${BUILD_OUT_SYM}" ]]; then
+		rm -rf "${BUILD_OUT_SYM}" || die "Could not remove symlink"
+		ln -sfT "${CHROME_CACHE_DIR}/src/${BUILD_OUT}" "${BUILD_OUT_SYM}" ||
+			die "Could not create symlink for output directory"
+	fi
+
+
+	# Apply patches for non-localsource builds.
+	if [[ "${CHROME_ORIGIN}" == "SERVER_SOURCE" && ${#PATCHES[@]} -gt 0 ]]; then
+		eapply "${PATCHES[@]}"
+	fi
+
+	local WHOAMI=$(whoami)
+	# Get the credentials to fake home directory so that the version of chromium
+	# we build can access Google services. First, check for Chrome credentials.
+	if [[ ! -d google_apis/internal ]]; then
+		# Then look for Chrome OS supplied credentials.
+		local PRIVATE_OVERLAYS_DIR=/home/${WHOAMI}/trunk/src/private-overlays
+		local GAPI_CONFIG_FILE=${PRIVATE_OVERLAYS_DIR}/chromeos-overlay/googleapikeys
+		if [[ ! -f "${GAPI_CONFIG_FILE}" ]]; then
+			# Then developer credentials.
+			GAPI_CONFIG_FILE=/home/${WHOAMI}/.googleapikeys
+		fi
+		if [[ -f "${GAPI_CONFIG_FILE}" ]]; then
+			add_api_keys "${GAPI_CONFIG_FILE}"
+		fi
+	fi
+}
+
+setup_test_lists() {
+	TEST_FILES=(
+		capture_unittests
+		dawn_end2end_tests
+		dawn_unittests
+		gl_tests
+		jpeg_decode_accelerator_unittest
+		ozone_gl_unittests
+		sandbox_linux_unittests
+		wayland_client_perftests
+	)
+
+	TEST_FILES+=( ppapi/examples/video_decode )
+
+	if use vaapi || use v4l2_codec; then
+		TEST_FILES+=(
+			image_processor_test
+			jpeg_encode_accelerator_unittest
+			video_decode_accelerator_perf_tests
+			video_decode_accelerator_tests
+			video_encode_accelerator_perf_tests
+			video_encode_accelerator_tests
+		)
+	fi
+
+	if use vaapi; then
+		TEST_FILES+=(
+			decode_test
+			vaapi_unittest
+		)
+	fi
+
+	# TODO(ihf): Figure out how to keep this in sync with telemetry.
+	TOOLS_TELEMETRY_BIN=(
+		bitmaptools
+		clear_system_cache
+		minidump_stackwalk
+	)
+
+	PPAPI_TEST_FILES=(
+		lib{32,64}
+		mock_nacl_gdb
+		ppapi_nacl_tests_{newlib,glibc}.nmf
+		ppapi_nacl_tests_{newlib,glibc}_{x32,x64,arm,arm64}.nexe
+		test_case.html
+		test_case.html.mock-http-headers
+		test_page.css
+		test_url_loader_data
+	)
+}
+
+# Handle all CFLAGS/CXXFLAGS/etc... munging here.
+setup_compile_flags() {
+	# Chrome controls its own optimization settings, so this would be a nop
+	# if we were to run it. Leave it here anyway as a grep-friendly marker.
+	# cros_optimize_package_for_speed
+
+	# The chrome makefiles specify -O and -g flags already, so remove the
+	# portage flags.
+	filter-flags -g "-O*"
+
+	# Remove unsupported arm64 linker flag on arm32 builds.
+	# https://crbug.com/889079
+	use arm && filter-flags "-Wl,--fix-cortex-a53-843419"
+
+	# There are some flags we want to only use in the ebuild.
+	# The rest will be exported to the simple chrome workflow.
+	EBUILD_CFLAGS=()
+	EBUILD_CXXFLAGS=()
+	EBUILD_LDFLAGS=()
+
+	if use thinlto; then
+		# if using thinlto, we need to pass the equivalent of
+		# -fdebug-types-section to the backend, to prevent out-of-range
+		# relocations (see
+		# https://bugs.chromium.org/p/chromium/issues/detail?id=1032159).
+		append-ldflags -Wl,-mllvm
+		append-ldflags -Wl,-generate-type-units
+	else
+		# Non-ThinLTO builds with symbol_level=2 may have out-of-range
+		# relocations, too: crbug.com/1050819.
+		append-flags -fdebug-types-section
+	fi
+
+	if use orderfile_generate; then
+		local chrome_outdir="${CHROME_CACHE_DIR}/src/${BUILD_OUT}/${BUILDTYPE}"
+		BUILD_STRING_ARGS+=( "dump_call_chain_clustering_order=${chrome_outdir}/chrome.orderfile.txt" )
+		# Enable call graph profile sort (C3) to generate orderfile.
+		BUILD_ARGS+=( "enable_call_graph_profile_sort=true" )
+	fi
+
+	# Enable std::vector []-operator bounds checking.
+	append-cxxflags -D__google_stl_debug_vector=1
+
+	# Chrome and Chrome OS versions of the compiler may not be in
+	# sync. So, don't complain if Chrome uses a diagnostic
+	# option that is not yet implemented in the compiler version used
+	# by Chrome OS.
+	# Turns out this is only really supported by Clang. See crosbug.com/615466
+	# Add "-faddrsig" flag required to efficiently support "--icf=all".
+	append-flags -faddrsig
+	append-flags -Wno-unknown-warning-option
+	export CXXFLAGS_host+=" -Wno-unknown-warning-option"
+	export CFLAGS_host+=" -Wno-unknown-warning-option"
+	export LDFLAGS_host+=" --unwindlib=libgcc"
+	if use libcxx; then
+		append-cxxflags "-stdlib=libc++"
+		append-ldflags "-stdlib=libc++"
+	fi
+
+	# Workaround: Disable fatal linker warnings on arm64/lld.
+	# https://crbug.com/913071
+	use arm64 && append-ldflags "-Wl,--no-fatal-warnings"
+	# Workaround: Disable fatal linker warnings on arm/lld.
+	# https://crbug.com/1190544
+	use arm && append-ldflags "-Wl,--no-fatal-warnings"
+	use vtable_verify && append-ldflags -fvtable-verify=preinit
+
+	local flags
+	einfo "Building with the compiler settings:"
+	for flags in {C,CXX,CPP,LD}FLAGS; do
+		einfo "  ${flags} = ${!flags}"
+	done
+}
+
+src_configure() {
+	tc-export CXX CC AR AS NM RANLIB STRIP
+	export CC_host=$(tc-getBUILD_CC)
+	export CXX_host=$(tc-getBUILD_CXX)
+	export NM_host=$(tc-getBUILD_NM)
+	export READELF="llvm-readelf"
+	export READELF_host="llvm-readelf"
+
+	# Use C++ compiler as the linker driver.
+	export LD="${CXX}"
+	export LD_host=${CXX_host}
+
+	# We need below change when USE="thinlto" is set. We set this globally
+	# so that users can turn on the "use_thin_lto" in the simplechrome
+	# flow more easily.
+	# use nm from llvm, https://crbug.com/917193
+	export NM="llvm-nm"
+	export NM_host="llvm-nm"
+	export AR="llvm-ar"
+	# USE=thinlto affects host build, we need to set host AR to
+	# llvm-ar to make sure host package builds with thinlto.
+	# crbug.com/731335
+	export AR_host="llvm-ar"
+	export RANLIB="llvm-ranlib"
+	# Use llvm's objcopy instead of GNU
+	export OBJCOPY="llvm-objcopy"
+
+	# Set binutils path for goma.
+	CC_host+=" -B$(get_binutils_path "${LD_host}")"
+	CXX_host+=" -B$(get_binutils_path "${LD_host}")"
+
+	setup_compile_flags
+
+	# We might set BOTO_CONFIG in the builder environment in case the
+	# existing file needs modifications (e.g. for working with older
+	# branches). So don't overwrite it if it's already set.
+	# See https://crbug.com/847676 for details.
+	export BOTO_CONFIG="${BOTO_CONFIG:-/home/$(whoami)/.boto}"
+	export PATH=${PATH}:${DEPOT_TOOLS}
+
+	export DEPOT_TOOLS_GSUTIL_BIN_DIR="${CHROME_CACHE_DIR}/gsutil_bin"
+	# The venv logic seems to misbehave when cross-compiling.  Since our SDK
+	# should include all the necessary modules, just disable it (for now).
+	# https://crbug.com/808434
+	export VPYTHON_BYPASS="manually managed python not supported by chrome operations"
+
+	# TODO(rcui): crosbug.com/20435. Investigate removal of runhooks
+	# useflag when chrome build switches to Ninja inside the chroot.
+	if use runhooks; then
+		local cmd=( "${EGCLIENT}" runhooks --force )
+		echo "${cmd[@]}"
+		CFLAGS="${CFLAGS} ${EBUILD_CFLAGS[*]}" \
+		CXXFLAGS="${CXXFLAGS} ${EBUILD_CXXFLAGS[*]}" \
+		LDFLAGS="${LDFLAGS} ${EBUILD_LDFLAGS[*]}" \
+		"${cmd[@]}" || die
+	fi
+
+	BUILD_STRING_ARGS+=(
+		"cros_target_ar=${AR}"
+		"cros_target_cc=${CC}"
+		"cros_target_cxx=${CXX}"
+		"host_toolchain=//build/toolchain/cros:host"
+		"custom_toolchain=//build/toolchain/cros:target"
+		"v8_snapshot_toolchain=//build/toolchain/cros:v8_snapshot"
+		"cros_target_ld=${LD}"
+		"cros_target_nm=${NM}"
+		"cros_target_readelf=${READELF}"
+		"cros_target_extra_cflags=${CFLAGS} ${EBUILD_CFLAGS[*]}"
+		"cros_target_extra_cppflags=${CPPFLAGS}"
+		"cros_target_extra_cxxflags=${CXXFLAGS} ${EBUILD_CXXFLAGS[*]}"
+		"cros_target_extra_ldflags=${LDFLAGS} ${EBUILD_LDFLAGS[*]}"
+		"cros_host_cc=${CC_host}"
+		"cros_host_cxx=${CXX_host}"
+		"cros_host_ar=${AR_host}"
+		"cros_host_ld=${LD_host}"
+		"cros_host_nm=${NM_host}"
+		"cros_host_readelf=${READELF_host}"
+		"cros_host_extra_cflags=${CFLAGS_host}"
+		"cros_host_extra_cxxflags=${CXXFLAGS_host}"
+		"cros_host_extra_cppflags=${CPPFLAGS_host}"
+		"cros_host_extra_ldflags=${LDFLAGS_host}"
+		"cros_v8_snapshot_cc=${CC_host}"
+		"cros_v8_snapshot_cxx=${CXX_host}"
+		"cros_v8_snapshot_ar=${AR_host}"
+		"cros_v8_snapshot_ld=${LD_host}"
+		"cros_v8_snapshot_nm=${NM_host}"
+		"cros_v8_snapshot_readelf=${READELF_host}"
+		"cros_v8_snapshot_extra_cflags=${CFLAGS_host}"
+		"cros_v8_snapshot_extra_cxxflags=${CXXFLAGS_host}"
+		"cros_v8_snapshot_extra_cppflags=${CPPFLAGS_host}"
+		"cros_v8_snapshot_extra_ldflags=${LDFLAGS_host}"
+	)
+
+	local arg
+	for arg in "${BUILD_STRING_ARGS[@]}"; do
+		BUILD_ARGS+=("${arg%%=*}=\"${arg#*=}\"")
+	done
+	export GN_ARGS="${BUILD_ARGS[*]}"
+	einfo "GN_ARGS = ${GN_ARGS}"
+	local gn=(
+		"${CHROME_ROOT}/src/buildtools/linux64/gn" gen
+		"${CHROME_ROOT}/src/${BUILD_OUT_SYM}/${BUILDTYPE}"
+		--args="${GN_ARGS}" --root="${CHROME_ROOT}/src"
+	)
+	echo "${gn[@]}"
+	"${gn[@]}" || die
+
+	setup_test_lists
+
+	if use clang_tidy; then
+		export WITH_TIDY=1
+	fi
+}
+
+chrome_make() {
+	local build_dir="${BUILD_OUT_SYM}/${BUILDTYPE}"
+
+	# If ThinLTO is enabled, we may have a cache from a previous link. Due
+	# to fears about lack of reproducibility, we don't allow cache reuse
+	# across rebuilds. The cache is still useful for artifacts shared
+	# between multiple links done by this build (e.g. tests).
+	use thinlto && rm -rf "${build_dir}/thinlto-cache"
+
+	# If goma is enabled, increase the number of parallel run to
+	# 10 * {number of processors}. Though, if it is too large the
+	# performance gets slow down, so limit by 200 heuristically.
+	if use_goma; then
+		local num_parallel=$(($(nproc) * 10))
+		local j_limit=200
+		set -- -j $((num_parallel < j_limit ? num_parallel : j_limit)) "$@"
+	fi
+	local command=(
+		"${ENINJA}"
+		-j"$(makeopts_jobs)"
+		-C "${build_dir}"
+		$(usex verbose -v "")
+		-d "keeprsp"
+		"$@"
+	)
+	# If goma is used, log the command, cwd and env vars, which will be
+	# uploaded to the logging server.
+	if should_upload_build_logs; then
+		env --null > "${GLOG_log_dir}/ninja_env"
+		pwd > "${GLOG_log_dir}/ninja_cwd"
+		echo "${command[@]}" > "${GLOG_log_dir}/ninja_command"
+	fi
+	PATH=${PATH}:${DEPOT_TOOLS} "${command[@]}"
+	local ret=$?
+	if should_upload_build_logs; then
+		echo "${ret}" > "${GLOG_log_dir}/ninja_exit"
+		cp -p "${BUILD_OUT_SYM}/${BUILDTYPE}/.ninja_log" "${GLOG_log_dir}/ninja_log"
+	fi
+	[[ "${ret}" -eq 0 ]] || die
+
+	# Still use a script to check if the orderfile is used properly, i.e.
+	# Builtin_ functions are placed between the markers, etc.
+	if use strict_toolchain_checks && (use orderfile_use || use orderfile_verify); then
+		"${FILESDIR}/check_orderfile.py" "${build_dir}/chrome" || die
+	fi
+}
+
+src_compile() {
+	if [[ "${CHROME_ORIGIN}" != "LOCAL_SOURCE" &&
+			"${CHROME_ORIGIN}" != "SERVER_SOURCE" ]]; then
+		return
+	fi
+
+	cd "${CHROME_ROOT}"/src || die "Cannot chdir to ${CHROME_ROOT}/src"
+
+	local chrome_targets=( $(usex mojo "mojo_shell" "") )
+	if use app_shell; then
+		chrome_targets+=( app_shell )
+	else
+		chrome_targets+=( chrome )
+	fi
+	if use build_tests; then
+		chrome_targets+=(
+			"${TEST_FILES[@]}"
+			"${TOOLS_TELEMETRY_BIN[@]}"
+			chromedriver
+		)
+		if use chrome_internal; then
+			chrome_targets+=( libassistant_debug.so )
+		fi
+	fi
+	use_nacl && chrome_targets+=( nacl_helper_bootstrap nacl_helper )
+
+	chrome_make "${chrome_targets[@]}"
+
+	if use build_tests; then
+		install_chrome_test_resources "${WORKDIR}/test_src"
+		install_telemetry_dep_resources "${WORKDIR}/telemetry_src"
+
+		# NOTE: Since chrome is built inside distfiles, we have to get
+		# rid of the previous instance first.
+		# We remove only what we will overwrite with the mv below.
+		local deps="${WORKDIR}/${P}/${AUTOTEST_DEPS}"
+
+		rm -rf "${deps}/chrome_test/test_src"
+		mv "${WORKDIR}/test_src" "${deps}/chrome_test/"
+
+		rm -rf "${deps}/telemetry_dep/test_src"
+		mv "${WORKDIR}/telemetry_src" "${deps}/telemetry_dep/test_src"
+
+		# The autotest eclass wants this for some reason.
+		get_paths() { :; }
+
+		# HACK: It would make more sense to call autotest_src_prepare in
+		# src_prepare, but we need to call install_chrome_test_resources first.
+		autotest-deponly_src_prepare
+
+		# Remove .git dirs
+		find "${AUTOTEST_WORKDIR}" -type d -name .git -prune -exec rm -rf {} +
+
+		autotest_src_compile
+	fi
+}
+
+install_test_resources() {
+	# Install test resources from chrome source directory to destination.
+	# We keep a cache of test resources inside the chroot to avoid copying
+	# multiple times.
+	local test_dir="${1}"
+	einfo "install_test_resources to ${test_dir}"
+	shift
+
+	# To speed things up, we write the list of files to a temporary file so
+	# we can use rsync with --files-from.
+	local tmp_list_file="${T}/${test_dir##*/}.files"
+	printf "%s\n" "$@" > "${tmp_list_file}"
+
+	# Copy the specific files to the cache from the source directory.
+	# Note: we need to specify -r when using --files-from and -a to get a
+	# recursive copy.
+	# TODO(ihf): Make failures here fatal.
+	rsync -r -a --delete --exclude=.git --exclude="*.pyc" \
+		--files-from="${tmp_list_file}" "${CHROME_ROOT}/src/" \
+		"${CHROME_CACHE_DIR}/src/"
+
+	# Create hard links in the destination based on the cache.
+	# Note: we need to specify -r when using --files-from and -a to get a
+	# recursive copy.
+	# TODO(ihf): Make failures here fatal.
+	rsync -r -a --link-dest="${CHROME_CACHE_DIR}/src" \
+		--files-from="${tmp_list_file}" "${CHROME_CACHE_DIR}/src/" "${test_dir}/"
+}
+
+test_strip_install() {
+	local from="${1}"
+	local dest="${2}"
+	shift 2
+	mkdir -p "${dest}"
+	local f
+	for f in "$@"; do
+		$(tc-getSTRIP) --strip-debug \
+			"${from}"/${f} -o "${dest}/$(basename ${f})"
+	done
+}
+
+install_chrome_test_resources() {
+	# NOTE: This is a duplicate from src_install, because it's required here.
+	local from="${CHROME_CACHE_DIR}/src/${BUILD_OUT}/${BUILDTYPE}"
+	local test_dir="${1}"
+	local dest="${test_dir}/out/Release"
+
+	echo Copying Chrome tests into "${test_dir}"
+
+	# Even if chrome_debug_tests is enabled, we don't need to include detailed
+	# debug info for tests in the binary package, so save some time by stripping
+	# everything but the symbol names. Developers who need more detailed debug
+	# info on the tests can use the original unstripped tests from the ${from}
+	# directory.
+	TEST_INSTALL_TARGETS=(
+		"${TEST_FILES[@]}"
+		"libppapi_tests.so" )
+
+	einfo "Installing test targets: ${TEST_INSTALL_TARGETS[@]}"
+	test_strip_install "${from}" "${dest}" "${TEST_INSTALL_TARGETS[@]}"
+
+	# Copy Chrome test data.
+	mkdir -p "${dest}"/test_data
+	# WARNING: Only copy subdirectories of |test_data|.
+	# The full |test_data| directory is huge and kills our VMs.
+	# Example:
+	# cp -al "${from}"/test_data/<subdir> "${test_dir}"/out/Release/<subdir>
+
+	for f in "${PPAPI_TEST_FILES[@]}"; do
+		cp -al "${from}/${f}" "${dest}"
+	done
+
+	# Install Chrome test resources.
+	# WARNING: Only install subdirectories of |chrome/test|.
+	# The full |chrome/test| directory is huge and kills our VMs.
+	install_test_resources "${test_dir}" \
+		base/base_paths_posix.cc \
+		chrome/test/data/chromeos \
+		chrome/test/functional \
+		chrome/third_party/mock4js/mock4js.js  \
+		content/common/gpu/testdata \
+		media/test/data \
+		content/test/data \
+		net/data/ssl/certificates \
+		ppapi/tests/test_case.html \
+		ppapi/tests/test_url_loader_data \
+		third_party/bidichecker/bidichecker_packaged.js \
+		third_party/accessibility-developer-tools/gen/axs_testing.js
+
+	# Add the pdf test data if needed.
+	if use chrome_internal; then
+		install_test_resources "${test_dir}" pdf/test
+	fi
+	# Add the gles_conform test data if needed.
+	if use chrome_internal || use internal_gles_conform; then
+		install_test_resources "${test_dir}" gpu/gles2_conform_support/gles2_conform_test_expectations.txt
+	fi
+
+	cp -a "${CHROME_ROOT}"/"${AUTOTEST_DEPS}"/chrome_test/setup_test_links.sh \
+		"${dest}"
+}
+
+install_telemetry_dep_resources() {
+	local test_dir="${1}"
+
+	TELEMETRY=${CHROME_ROOT}/src/third_party/catapult/telemetry
+	if [[ -r "${TELEMETRY}" ]]; then
+		echo "Copying Telemetry Framework into ${test_dir}"
+		mkdir -p "${test_dir}"
+		# We are going to call chromium code but can't trust that it is clean
+		# of precompiled code. See crbug.com/590762.
+		find "${TELEMETRY}" -name "*.pyc" -type f -delete
+		# Get deps from Chrome.
+		FIND_DEPS=${CHROME_ROOT}/src/tools/perf/find_dependencies
+		PERF_DEPS=${CHROME_ROOT}/src/tools/perf/bootstrap_deps
+		CROS_DEPS=${CHROME_ROOT}/src/tools/cros/bootstrap_deps
+		# sed removes the leading path including src/ converting it to relative.
+		# To avoid silent failures assert the success.
+		DEPS_LIST=$(python ${FIND_DEPS} ${PERF_DEPS} ${CROS_DEPS} | \
+			sed -e 's|^'${CHROME_ROOT}/src/'||'; assert)
+		install_test_resources "${test_dir}" "${DEPS_LIST}"
+		# For crosperf, which uses some tests only available on internal builds.
+		if use chrome_internal; then
+			install_test_resources "${test_dir}" \
+				data/page_cycler/morejs \
+				data/page_cycler/moz
+		fi
+	fi
+
+	local from="${CHROME_CACHE_DIR}/src/${BUILD_OUT}/${BUILDTYPE}"
+	local dest="${test_dir}/src/out/${BUILDTYPE}"
+	einfo "Installing telemetry binaries: ${TOOLS_TELEMETRY_BIN[@]}"
+	test_strip_install "${from}" "${dest}" "${TOOLS_TELEMETRY_BIN[@]}"
+
+	# When copying only a portion of the Chrome source that telemetry needs,
+	# some symlinks can end up broken. Thus clean these up before packaging.
+	find -L "${test_dir}" -type l -delete
+}
+
+# Add any new artifacts generated by the Chrome build targets to deploy_chrome.py.
+# We deal with miscellaneous artifacts here in the ebuild.
+src_install() {
+	FROM="${CHROME_CACHE_DIR}/src/${BUILD_OUT}/${BUILDTYPE}"
+
+	# Override default strip flags and lose the '-R .comment'
+	# in order to play nice with the crash server.
+	if [[ -z "${KEEP_CHROME_DEBUG_SYMBOLS}" ]]; then
+		if [[ "${STRIP}" == "llvm-strip" ]]; then
+			export PORTAGE_STRIP_FLAGS="--strip-all-gnu"
+		else
+			export PORTAGE_STRIP_FLAGS=""
+		fi
+	else
+		export PORTAGE_STRIP_FLAGS="--strip-debug"
+	fi
+	einfo "PORTAGE_STRIP_FLAGS=${PORTAGE_STRIP_FLAGS}"
+	LS=$(ls -alhS ${FROM})
+	einfo "CHROME_DIR after build\n${LS}"
+
+	# Copy a D-Bus config file that includes other configs that are installed to
+	# /opt/google/chrome/dbus by deploy_chrome.
+	insinto /etc/dbus-1/system.d
+	doins "${FILESDIR}"/chrome.conf
+
+	# Copy Quickoffice resources for official build.
+	# Quickoffice is not yet available for arm64, https://crbug.com/881489
+	if use chrome_internal && [[ "${ARCH}" != "arm64" ]]; then
+		local qo_install_root="/usr/share/chromeos-assets/quickoffice"
+		insinto "${qo_install_root}"
+		QUICKOFFICE="${CHROME_ROOT}"/src/chrome/browser/resources/chromeos/quickoffice
+		doins -r "${QUICKOFFICE}"/_locales
+		doins -r "${QUICKOFFICE}"/css
+		doins -r "${QUICKOFFICE}"/img
+		doins -r "${QUICKOFFICE}"/plugin
+		doins -r "${QUICKOFFICE}"/scripts
+		doins -r "${QUICKOFFICE}"/views
+
+		local qo_path=""
+		case "${ARCH}" in
+		arm)
+			qo_path="${QUICKOFFICE}"/_platform_specific/arm
+			;;
+		amd64)
+			qo_path="${QUICKOFFICE}"/_platform_specific/x86_64
+			;;
+		*)
+			die "Unsupported architecture: ${ARCH}"
+			;;
+		esac
+
+		# Compress the platform-specific NaCl binaries with squashfs to
+		# save space on the rootfs.
+		# - compress with LZO and 1M blocks to optimize trade-off
+		# between compression ratio and decompression speed.
+		# - use "-keep-as-directory" option so the squash file will
+		# include the folder with the name of the CPU architecture,
+		# which is expected by the scripts on device.
+		# - use "-root-mode 0755" to ensure that the mountpoint has
+		# permissions 0755 instead of the default 0777.
+		# - use "-4k-align" option so individual files inside the squash
+		# file will be aligned to 4K blocks, which improves the
+		# efficiency of the delta updates.
+		mksquashfs "${qo_path}" "${WORKDIR}/quickoffice.squash" \
+			-all-root -noappend -no-recovery -no-exports \
+			-exit-on-error -comp lzo -b 1M -keep-as-directory \
+			-4k-align -root-mode 0755 -no-progress \
+			|| die "Failed to create Quickoffice squashfs"
+
+		# The squashfs will be mounted at boot time by an upstart script
+		# installed by chromeos-base/quickoffice.
+		doins "${WORKDIR}/quickoffice.squash"
+	fi
+
+	# Chrome test resources
+	# Test binaries are only available when building chrome from source
+	if use build_tests && [[ "${CHROME_ORIGIN}" == "LOCAL_SOURCE" ||
+		"${CHROME_ORIGIN}" == "SERVER_SOURCE" ]]; then
+		autotest-deponly_src_install
+		#env -uRESTRICT prepstrip "${D}${AUTOTEST_BASE}"
+	fi
+
+	# Copy input_methods.txt for XkbToKcmConverter & auto-test.
+	if [[ "${CHROME_ORIGIN}" == "LOCAL_SOURCE" ||
+			"${CHROME_ORIGIN}" == "SERVER_SOURCE" ]]; then
+		insinto /usr/share/chromeos-assets/input_methods
+		sed -E -e '/^#/d' -e '/^$/d' -e 's:  +: :g' \
+			"${CHROME_ROOT}"/src/chromeos/ime/input_methods.txt > "${T}/input_methods.txt" || die
+		doins "${T}/input_methods.txt"
+	fi
+
+	# Fix some perms.
+	# TODO(rcui): Remove this - shouldn't be needed, and is just covering up
+	# potential permissions bugs.
+	chmod -R a+r "${D}"
+	find "${D}" -perm /111 -print0 | xargs -0 chmod a+x
+
+	# The following symlinks are needed in order to run chrome.
+	# TODO(rcui): Remove this.  Not needed for running Chrome.
+	dosym libnss3.so /usr/lib/libnss3.so.1d
+	dosym libnssutil3.so.12 /usr/lib/libnssutil3.so.1d
+	dosym libsmime3.so.12 /usr/lib/libsmime3.so.1d
+	dosym libssl3.so.12 /usr/lib/libssl3.so.1d
+	dosym libplds4.so /usr/lib/libplds4.so.0d
+	dosym libplc4.so /usr/lib/libplc4.so.0d
+	dosym libnspr4.so /usr/lib/libnspr4.so.0d
+
+	# Create the main Chrome install directory.
+	dodir "${CHROME_DIR}"
+	insinto "${CHROME_DIR}"
+
+	# Install the orderfile into the chrome directory
+	if use orderfile_generate; then
+		[[ -f "${FROM}/chrome.orderfile.txt" ]] || die "No orderfile generated."
+		doins "${FROM}/chrome.orderfile.txt"
+	fi
+
+	# Install the unvetted orderfile into the chrome directory for upload.
+	if use orderfile_verify; then
+		[[ -f "${DISTDIR}/${UNVETTED_ORDERFILE}.xz" ]] || die "Lost the unvetted orderfile."
+		doins "${DISTDIR}/${UNVETTED_ORDERFILE}.xz"
+	fi
+
+	# Use the deploy_chrome from the *Chrome* checkout.  The benefit of
+	# doing this is if a new buildspec of Chrome requires a non-backwards
+	# compatible change to deploy_chrome, we can commit the fix to
+	# deploy_chrome without breaking existing Chrome OS release builds,
+	# and then roll the DEPS for chromite in the Chrome checkout.
+	#
+	# Another benefit is each version of Chrome will have the right
+	# corresponding version of deploy_chrome.
+	local cmd=( "${CHROME_ROOT}"/src/third_party/chromite/bin/deploy_chrome )
+	# Disable stripping for now, as deploy_chrome doesn't generate splitdebug files.
+	cmd+=(
+		"--board=${BOARD}"
+		"--build-dir=${FROM}"
+		"--gn-args=${GN_ARGS}"
+		# If this is enabled, we need to re-enable `prepstrip` above for autotests.
+		# You'll also have to re-add "strip" to the RESTRICT at the top of the file.
+		--nostrip
+		"--staging-dir=${D_CHROME_DIR}"
+		"--staging-flags=${USE}"
+		--staging-only
+		"--strip-bin=${STRIP}"
+		"--strip-flags=${PORTAGE_STRIP_FLAGS}"
+		--verbose
+	)
+	einfo "${cmd[*]}"
+	"${cmd[@]}" || die
+	LS=$(ls -alhS ${D}/${CHROME_DIR})
+	einfo "CHROME_DIR after deploy_chrome\n${LS}"
+
+	# Keep the .dwp files with debug fission.
+	if use chrome_debug && use debug_fission; then
+		mkdir -p "${D}/usr/lib/debug/${CHROME_DIR}"
+		DWP="${CHOST}"-dwp
+		cd "${D}/${CHROME_DIR}"
+		# Iterate over all ELF files in current directory
+		while read i; do
+			cd "${FROM}"
+			# These files do not build with -gsplit-dwarf,
+			# so we do not need to get a .dwp file from them.
+			if [[ "${i}" == "./libassistant.so"		|| \
+				"${i}" == "./nacl_helper_nonsfi"	|| \
+				"${i}" == "./nacl_helper_bootstrap"	|| \
+				"${i}" == "./nacl_irt_arm.nexe"		|| \
+				"${i}" == "./nacl_irt_x86_64.exe"	|| \
+				"${i}" == "./nacl_irt_x86_64.nexe"	|| \
+				"${i}" == "./libmojo_core_arc64.so"	|| \
+				"${i}" == "./libmojo_core_arc32.so"	|| \
+				"${i}" == "./libwidevinecdm.so" ]] ; then
+				continue
+			fi
+			source="${i}"
+			${DWP} -e "${FROM}/${source}" -o "${D}/usr/lib/debug/${CHROME_DIR}/${i}.dwp" || die
+		done < <(scanelf -ByF '%F' ".")
+	fi
+
+	if use build_tests; then
+		# Install Chrome Driver to test image.
+		local chromedriver_dir='/usr/local/chromedriver'
+		dodir "${chromedriver_dir}"
+		cp -pPR "${FROM}"/chromedriver "${D}/${chromedriver_dir}" || die
+
+		if use chrome_internal; then
+			# Install LibAssistant test library to test image.
+			into /usr/local/
+			dolib.so "${FROM}"/libassistant_debug.so
+		fi
+
+		# Install a testing script to run Lacros from command line.
+		into /usr/local
+		dobin "${CHROME_ROOT}"/src/build/lacros/mojo_connection_lacros_launcher.py
+	fi
+	# The icu data is used by both chromeos-base/chrome-icu and this package.
+	# chromeos-base/chrome-icu is responsible for installing the icu
+	# data, so we remove it from ${D} here.
+	rm "${D_CHROME_DIR}/icudtl.dat" || die
+}
+
+pkg_preinst() {
+	enewuser "wayland"
+	enewgroup "wayland"
+	LS=$(ls -alhS ${ED}/${CHROME_DIR})
+	einfo "CHROME_DIR after installation\n${LS}"
+	CHROME_SIZE=$(stat --printf="%s" ${ED}/${CHROME_DIR}/chrome)
+	einfo "CHROME_SIZE = ${CHROME_SIZE}"
+
+	# Non-internal builds come with >10MB of unwinding info built-in. Size
+	# checks on those are less profitable.
+	if [[ ${CHROME_SIZE} -ge 250000000 && -z "${KEEP_CHROME_DEBUG_SYMBOLS}" ]] && use chrome_internal && ! use chrome_dcheck; then
+		die "Installed chrome binary got suspiciously large (size=${CHROME_SIZE})."
+	fi
+	if use arm; then
+		local files=$(find "${ED}/usr/lib/debug${CHROME_DIR}" -size +$((4 * 1024 * 1024 * 1024 - 1))c)
+		[[ -n ${files} ]] && die "Debug files exceed 4GiB: ${files}"
+	fi
+	# Verify that the elf program headers in splitdebug binary match the chrome
+	# binary, this is needed for correct symbolization in CWP.
+	# b/128861198, https://crbug.com/1007548 .
+	if [[ ${MERGE_TYPE} != binary ]] && use strict_toolchain_checks; then
+		local chrome_headers=$(${READELF} --program-headers --wide \
+			"${ED}/${CHROME_DIR}"/chrome | grep LOAD)
+		local chrome_debug_headers=$(${READELF} --program-headers --wide \
+			"${ED}/usr/lib/debug${CHROME_DIR}"/chrome.debug | grep LOAD)
+		[[ "${chrome_headers}" != "${chrome_debug_headers}" ]] && \
+			die "chrome program headers do not match chrome.debug"
+	fi
+}
+
+pkg_postinst() {
+	autotest_pkg_postinst
+}
diff --git a/chromeos-base/chromeos-chrome/chromeos-chrome-9999.ebuild b/chromeos-base/chromeos-chrome/chromeos-chrome-9999.ebuild
index f016610..b7d3bac 100644
--- a/chromeos-base/chromeos-chrome/chromeos-chrome-9999.ebuild
+++ b/chromeos-base/chromeos-chrome/chromeos-chrome-9999.ebuild
@@ -48,17 +48,20 @@
 	debug_fission
 	+dwarf5
 	+fonts
+	hw_details
 	goma
 	goma_thinlto
 	+highdpi
 	iioservice
+	intel_oemcrypto
 	internal_gles_conform
 	+libcxx
+	libinput
 	mojo
 	msan
 	+nacl
 	neon
-	oobe_config
+	+oobe_config
 	opengl
 	opengles
 	orderfile_generate
@@ -66,6 +69,7 @@
 	orderfile_verify
 	+runhooks
 	strict_toolchain_checks
+	subpixel_rendering
 	+thinlto
 	touchview
 	ubsan
@@ -145,6 +149,7 @@
 	chrome_internal? ( chromeos-base/quickoffice )
 	dev-libs/nspr
 	>=dev-libs/nss-3.12.2
+	libinput? ( dev-libs/libinput:= )
 	>=media-libs/alsa-lib-1.0.19
 	media-libs/fontconfig
 	media-libs/libsync
@@ -241,6 +246,7 @@
 		"is_debug=false"
 		"${EXTRA_GN_ARGS}"
 		"enable_pseudolocales=$(usetf cros-debug)"
+		"use_chromeos_protected_av1=$(usetf intel_oemcrypto)"
 		"use_chromeos_protected_media=$(usetf cdm_factory_daemon)"
 		"use_iioservice=$(usetf iioservice)"
 		"use_v4l2_codec=$(usetf v4l2_codec)"
@@ -267,6 +273,15 @@
 		# but they increase the size of libassistant.so by 1.3MB so we
 		# disable them here.
 		"enable_assistant_integration_tests=false"
+
+		# Generate debug info necessary for AutoFDO.
+		"clang_emit_debug_info_for_profiling=true"
+
+		# Add libinput to handle touchpad.
+		"use_libinput=$(usetf libinput)"
+
+		# Add hardware information to feedback logs and chrome://system.
+		"is_chromeos_hw_details=$(usetf hw_details)"
 	)
 
 	# BUILD_STRING_ARGS needs appropriate quoting. So, we keep them separate and
@@ -301,7 +316,7 @@
 		BUILD_ARGS+=( "use_system_minigbm=true" )
 		BUILD_ARGS+=( "use_system_libdrm=true" )
 	fi
-	if use "touchview"; then
+	if ! use "subpixel_rendering" || use "touchview"; then
 		BUILD_ARGS+=( "subpixel_font_rendering_disabled=true" )
 	fi
 
@@ -405,11 +420,17 @@
 	if use chrome_debug; then
 		# Use debug fission to avoid 4GB limit of ELF32 (see crbug.com/595763).
 		# Using -g1 causes problems with crash server (see crbug.com/601854).
-		# Set use_debug_fission=true to prevent slow link (see crbug.com/703468).
-		# Disable debug_fission for bots which generate Afdo profile. (see crbug.com/704602).
+		# Disable debug_fission for bots which generate AFDO profile. (see crbug.com/704602).
+		local debug_level=2
+		if use arm && ! use debug_fission; then
+			# Limit debug info to -g1 to keep the binary size within 4GB.
+			# Production builds do not use "-debug_fission". But it is used
+			# by the AFDO builders and AFDO tools are fine with debug_level=1.
+			debug_level=1
+		fi
 		BUILD_ARGS+=(
 			"use_debug_fission=$(usetf debug_fission)"
-			"symbol_level=2"
+			"symbol_level=${debug_level}"
 		)
 		if use debug_fission; then
 			# The breakpad cannot handle the debug files generated by
@@ -418,9 +439,10 @@
 		fi
 	fi
 
-	if use chrome_dcheck; then
-		BUILD_ARGS+=("dcheck_always_on=true")
-	fi
+	# dcheck_always_on may default to true depending on the value of args
+	# above, which we might not want. So let the chrome_dcheck USE flag
+	# determine its value.
+	BUILD_ARGS+=("dcheck_always_on=$(usetf chrome_dcheck)")
 }
 
 unpack_chrome() {
@@ -683,6 +705,7 @@
 
 	if use vaapi || use v4l2_codec; then
 		TEST_FILES+=(
+			image_processor_test
 			jpeg_encode_accelerator_unittest
 			video_decode_accelerator_perf_tests
 			video_decode_accelerator_tests
@@ -737,14 +760,6 @@
 	EBUILD_CXXFLAGS=()
 	EBUILD_LDFLAGS=()
 
-	# LLVM needs this when parsing profiles.
-	# See README on https://github.com/google/autofdo
-	# For ARM, we do not need this flag because we don't get profiles
-	# from ARM machines. And it triggers an llvm assertion when thinlto
-	# and debug fission is used together.
-	# See https://bugs.llvm.org/show_bug.cgi?id=37255
-	use arm || append-flags -fdebug-info-for-profiling
-
 	if use thinlto; then
 		# if using thinlto, we need to pass the equivalent of
 		# -fdebug-types-section to the backend, to prevent out-of-range
diff --git a/chromeos-base/chromeos-common-script/chromeos-common-script-0.0.1-r280.ebuild b/chromeos-base/chromeos-common-script/chromeos-common-script-0.0.1-r280.ebuild
deleted file mode 100644
index e6c1a22..0000000
--- a/chromeos-base/chromeos-common-script/chromeos-common-script-0.0.1-r280.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "1e7b7af56eebd756a7256d798a6d7680d470250d" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk chromeos-common-script .gn"
-
-PLATFORM_SUBDIR="chromeos-common-script"
-
-inherit cros-workon platform
-
-DESCRIPTION="Chrome OS storage info tools"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-common-script/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="direncryption fsverity kernel-3_18 kernel-4_4 prjquota"
-
-REQUIRED_USE="prjquota? ( !kernel-4_4 !kernel-3_18 )"
-
-src_install() {
-	insinto /usr/share/misc
-	doins share/chromeos-common.sh
-	doins share/lvm-utils.sh
-	if use direncryption; then
-		sed -i '/local direncryption_enabled=/s/false/true/' \
-			"${D}/usr/share/misc/chromeos-common.sh" ||
-			die "Can not set directory encryption in common library"
-	fi
-	if use fsverity; then
-		sed -i '/local fsverity_enabled=/s/false/true/' \
-			"${D}/usr/share/misc/chromeos-common.sh" ||
-			die "Can not set fs-verity in common library"
-	fi
-	if use prjquota; then
-		sed -i '/local prjquota_enabled=/s/false/true/' \
-			"${D}/usr/share/misc/chromeos-common.sh" ||
-			die "Can not set project quota in common library"
-	fi
-}
diff --git a/chromeos-base/chromeos-common-script/chromeos-common-script-0.0.1-r305.ebuild b/chromeos-base/chromeos-common-script/chromeos-common-script-0.0.1-r305.ebuild
new file mode 100644
index 0000000..f24fd7f
--- /dev/null
+++ b/chromeos-base/chromeos-common-script/chromeos-common-script-0.0.1-r305.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "1e7b7af56eebd756a7256d798a6d7680d470250d" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk chromeos-common-script .gn"
+
+PLATFORM_SUBDIR="chromeos-common-script"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS storage info tools"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-common-script/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="direncryption fsverity kernel-3_18 kernel-4_4 prjquota"
+
+REQUIRED_USE="prjquota? ( !kernel-4_4 !kernel-3_18 )"
+
+src_install() {
+	insinto /usr/share/misc
+	doins share/chromeos-common.sh
+	doins share/lvm-utils.sh
+	if use direncryption; then
+		sed -i '/local direncryption_enabled=/s/false/true/' \
+			"${D}/usr/share/misc/chromeos-common.sh" ||
+			die "Can not set directory encryption in common library"
+	fi
+	if use fsverity; then
+		sed -i '/local fsverity_enabled=/s/false/true/' \
+			"${D}/usr/share/misc/chromeos-common.sh" ||
+			die "Can not set fs-verity in common library"
+	fi
+	if use prjquota; then
+		sed -i '/local prjquota_enabled=/s/false/true/' \
+			"${D}/usr/share/misc/chromeos-common.sh" ||
+			die "Can not set project quota in common library"
+	fi
+}
diff --git a/chromeos-base/chromeos-config-host/chromeos-config-host-0.0.2-r625.ebuild b/chromeos-base/chromeos-config-host/chromeos-config-host-0.0.2-r625.ebuild
deleted file mode 100644
index 61a6d16..0000000
--- a/chromeos-base/chromeos-config-host/chromeos-config-host-0.0.2-r625.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-CROS_WORKON_COMMIT="3117ca92548f3c66aa086af6f98336a50186706f"
-CROS_WORKON_TREE="aa0612733aca2d5ffa65470f07408228b473ebdb"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="chromeos-config"
-
-PYTHON_COMPAT=( python{3_6,3_7} )
-
-inherit cros-workon distutils-r1
-
-DESCRIPTION="Chrome OS configuration host tools"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-config"
-
-LICENSE="BSD-Google"
-SLOT=0
-KEYWORDS="*"
-
-RDEPEND="
-	>=sys-fs/squashfs-tools-4.3
-	dev-python/jinja[${PYTHON_USEDEP}]
-	!<chromeos-base/chromeos-config-tools-0.0.4
-"
-
-DEPEND="
-	${RDEPEND}
-	dev-python/setuptools[${PYTHON_USEDEP}]
-"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-src_unpack() {
-	cros-workon_src_unpack
-	S+="/chromeos-config"
-}
diff --git a/chromeos-base/chromeos-config-host/chromeos-config-host-0.0.2-r645.ebuild b/chromeos-base/chromeos-config-host/chromeos-config-host-0.0.2-r645.ebuild
new file mode 100644
index 0000000..1fd87b1
--- /dev/null
+++ b/chromeos-base/chromeos-config-host/chromeos-config-host-0.0.2-r645.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CROS_WORKON_COMMIT="4429adae74089c2f0e188be6c04a030cb0a9b73a"
+CROS_WORKON_TREE="3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="chromeos-config"
+
+PYTHON_COMPAT=( python{3_6,3_7} )
+
+inherit cros-workon distutils-r1
+
+DESCRIPTION="Chrome OS configuration host tools"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-config"
+
+LICENSE="BSD-Google"
+SLOT=0
+KEYWORDS="*"
+
+RDEPEND="
+	>=sys-fs/squashfs-tools-4.3
+	dev-python/jinja[${PYTHON_USEDEP}]
+	!<chromeos-base/chromeos-config-tools-0.0.4
+"
+
+DEPEND="
+	${RDEPEND}
+	dev-python/setuptools[${PYTHON_USEDEP}]
+"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+src_unpack() {
+	cros-workon_src_unpack
+	S+="/chromeos-config"
+}
diff --git a/chromeos-base/chromeos-config-tools/chromeos-config-tools-0.0.4-r1780.ebuild b/chromeos-base/chromeos-config-tools/chromeos-config-tools-0.0.4-r1780.ebuild
deleted file mode 100644
index 340d585..0000000
--- a/chromeos-base/chromeos-config-tools/chromeos-config-tools-0.0.4-r1780.ebuild
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-CROS_WORKON_COMMIT="bc0dd38e943097b1788d08f7b76ff4167c1d0efd"
-CROS_WORKON_TREE=("4fdfdbe461ccedeaaf176391c0bbb0f74943be45" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "aa0612733aca2d5ffa65470f07408228b473ebdb" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "71cce620cf464ad17334cff4d450f8805cd6c507")
-CROS_WORKON_INCREMENTAL_BUILD=1
-
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform2"
-)
-CROS_WORKON_LOCALNAME=(
-	"platform2"
-)
-CROS_WORKON_SUBTREE=(
-	".clang-format common-mk chromeos-config .gn power_manager"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}/platform2"
-)
-PLATFORM_SUBDIR="chromeos-config"
-
-inherit cros-workon platform
-
-DESCRIPTION="Chrome OS configuration tools"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-config"
-
-LICENSE="BSD-Google"
-SLOT=0
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND=""
-
-DEPEND="${RDEPEND}"
-
-src_install() {
-	dolib.so "${OUT}/lib/libcros_config.so"
-
-	insinto "/usr/include/chromeos/chromeos-config/libcros_config"
-	doins "${S}"/libcros_config/*.h
-
-	"${S}"/platform2_preinstall.sh "${PV}" "/usr/include/chromeos" "${OUT}"
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "${OUT}"/libcros_config.pc
-
-	insinto "/usr/include/cros_config"
-	doins "libcros_config/cros_config_interface.h"
-	doins "libcros_config/cros_config.h"
-	doins "libcros_config/fake_cros_config.h"
-
-	dobin "${OUT}"/cros_config
-	newbin cros_config_mock.sh cros_config_mock
-	dosbin "${OUT}"/cros_configfs
-
-	# Install init scripts.
-	insinto /etc/init
-	doins init/*.conf
-}
-
-platform_pkg_test() {
-	# Run this here since we may not run cros_config_main_test.
-	./chromeos-config-test-setup.sh
-	local tests=(
-		fake_cros_config_test
-		cros_config_test
-		cros_config_main_test
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-	./run_tests.sh || die "cros_config unit tests have errors"
-}
diff --git a/chromeos-base/chromeos-config-tools/chromeos-config-tools-0.0.4-r1854.ebuild b/chromeos-base/chromeos-config-tools/chromeos-config-tools-0.0.4-r1854.ebuild
new file mode 100644
index 0000000..a932958
--- /dev/null
+++ b/chromeos-base/chromeos-config-tools/chromeos-config-tools-0.0.4-r1854.ebuild
@@ -0,0 +1,93 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "dad0772f352db386bc9b524f46ecfc0d22ca9723")
+CROS_WORKON_TREE=("4fdfdbe461ccedeaaf176391c0bbb0f74943be45" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "b45ddf70409958a65c0330dc8f5702e7074f8cc7" "9e4d851d5f49d3ff4dd1b7b8a0f59b2650d3242f")
+CROS_WORKON_INCREMENTAL_BUILD=1
+
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform2"
+	"chromiumos/platform/dev-util"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform2"
+	"platform/dev"
+)
+CROS_WORKON_SUBTREE=(
+	".clang-format common-mk chromeos-config .gn power_manager"
+	"test/gtest"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}/platform2"
+	"${S}/platform/dev"
+)
+PLATFORM_SUBDIR="chromeos-config"
+
+inherit cros-workon platform gtest
+
+DESCRIPTION="Chrome OS configuration tools"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-config"
+
+LICENSE="BSD-Google"
+SLOT=0
+KEYWORDS="*"
+IUSE=""
+
+GTEST_METADATA=(
+	libcros_config/cros_config_functional_test.yaml
+)
+
+GTEST_TEST_INSTALL_DIR="/usr/local/gtest/cros_config"
+
+RDEPEND=""
+
+DEPEND="${RDEPEND}"
+
+src_install() {
+	dolib.so "${OUT}/lib/libcros_config.so"
+
+	insinto "/usr/include/chromeos/chromeos-config/libcros_config"
+	doins "${S}"/libcros_config/*.h
+
+	"${S}"/platform2_preinstall.sh "${PV}" "/usr/include/chromeos" "${OUT}"
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "${OUT}"/libcros_config.pc
+
+	insinto "/usr/include/cros_config"
+	doins "libcros_config/cros_config_interface.h"
+	doins "libcros_config/cros_config.h"
+	doins "libcros_config/fake_cros_config.h"
+
+	dobin "${OUT}"/cros_config
+	newbin cros_config_mock.sh cros_config_mock
+	dosbin "${OUT}"/cros_configfs
+
+	if use test; then
+		exeinto "${GTEST_TEST_INSTALL_DIR}"
+		doexe  "${OUT}/cros_config_functional_test"
+
+		install_gtest_metadata "${GTEST_METADATA[@]}"
+	fi
+
+	# Install init scripts.
+	insinto /etc/init
+	doins init/*.conf
+}
+
+platform_pkg_test() {
+	# Run this here since we may not run cros_config_main_test.
+	./chromeos-config-test-setup.sh
+	local tests=(
+		fake_cros_config_test
+		cros_config_test
+		cros_config_main_test
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+	./run_tests.sh || die "cros_config unit tests have errors"
+}
diff --git a/chromeos-base/chromeos-config-tools/chromeos-config-tools-9999.ebuild b/chromeos-base/chromeos-config-tools/chromeos-config-tools-9999.ebuild
index 3af5b67..86b0b60 100644
--- a/chromeos-base/chromeos-config-tools/chromeos-config-tools-9999.ebuild
+++ b/chromeos-base/chromeos-config-tools/chromeos-config-tools-9999.ebuild
@@ -7,19 +7,23 @@
 
 CROS_WORKON_PROJECT=(
 	"chromiumos/platform2"
+	"chromiumos/platform/dev-util"
 )
 CROS_WORKON_LOCALNAME=(
 	"platform2"
+	"platform/dev"
 )
 CROS_WORKON_SUBTREE=(
 	".clang-format common-mk chromeos-config .gn power_manager"
+	"test/gtest"
 )
 CROS_WORKON_DESTDIR=(
 	"${S}/platform2"
+	"${S}/platform/dev"
 )
 PLATFORM_SUBDIR="chromeos-config"
 
-inherit cros-workon platform
+inherit cros-workon platform gtest
 
 DESCRIPTION="Chrome OS configuration tools"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-config"
@@ -29,6 +33,12 @@
 KEYWORDS="~*"
 IUSE=""
 
+GTEST_METADATA=(
+	libcros_config/cros_config_functional_test.yaml
+)
+
+GTEST_TEST_INSTALL_DIR="/usr/local/gtest/cros_config"
+
 RDEPEND=""
 
 DEPEND="${RDEPEND}"
@@ -52,6 +62,13 @@
 	newbin cros_config_mock.sh cros_config_mock
 	dosbin "${OUT}"/cros_configfs
 
+	if use test; then
+		exeinto "${GTEST_TEST_INSTALL_DIR}"
+		doexe  "${OUT}/cros_config_functional_test"
+
+		install_gtest_metadata "${GTEST_METADATA[@]}"
+	fi
+
 	# Install init scripts.
 	insinto /etc/init
 	doins init/*.conf
diff --git a/chromeos-base/chromeos-config/chromeos-config-0.0.2-r129.ebuild b/chromeos-base/chromeos-config/chromeos-config-0.0.2-r129.ebuild
deleted file mode 100644
index 41b4f65..0000000
--- a/chromeos-base/chromeos-config/chromeos-config-0.0.2-r129.ebuild
+++ /dev/null
@@ -1,121 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
-# the canonical empty project.
-CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
-CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
-CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
-CROS_WORKON_LOCALNAME="platform/empty-project"
-
-inherit cros-unibuild cros-workon
-
-DESCRIPTION="Chromium OS-specific configuration"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/config/"
-SRC_URI=""
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="fuzzer zephyr_ec"
-
-DEPEND="
-	!fuzzer? ( virtual/chromeos-config-bsp:= )
-"
-RDEPEND="${DEPEND}"
-
-# This ebuild creates the Chrome OS master configuration file stored in
-# ${UNIBOARD_JSON_INSTALL_PATH}. See go/cros-unified-builds-design for
-# more information.
-
-# Merges all of the source YAML config files and generates the
-# corresponding build config and platform config files.
-src_compile() {
-	local yaml_files=( "${SYSROOT}${UNIBOARD_YAML_DIR}/"*.yaml )
-	local input_yaml_files=()
-	local schema_flags=()
-	local yaml="${WORKDIR}/config.yaml"
-	local c_file="${WORKDIR}/config.c"
-	local configfs_image="${WORKDIR}/configfs.img"
-	local gen_yaml="${SYSROOT}${UNIBOARD_YAML_DIR}/config.yaml"
-
-	# Protobuf based configs generate JSON directly with no YAML.
-	if [[ -f "${SYSROOT}${UNIBOARD_YAML_DIR}/project-config.json" ]]; then
-		yaml_files=( "${SYSROOT}${UNIBOARD_YAML_DIR}/project-config.json" )
-	fi
-
-	for source_yaml in "${yaml_files[@]}"; do
-		if [[ -f "${source_yaml}" && "${source_yaml}" != "${gen_yaml}" ]]; then
-			einfo "Adding source YAML file ${source_yaml}"
-			# Order matters here.  This will control how YAML files
-			# are merged.  To control the order, change the name
-			# of the input files to be in the order desired.
-			input_yaml_files+=("${source_yaml}")
-		fi
-	done
-
-	if use zephyr_ec; then
-		schema_flags+=( --zephyr-ec-configs-only )
-	fi
-
-	if [[ "${#input_yaml_files[@]}" -ne 0 ]]; then
-		cros_config_schema "${schema_flags[@]}" -o "${yaml}" \
-			-m "${input_yaml_files[@]}" \
-			|| die "cros_config_schema failed for build config."
-
-		cros_config_schema -c "${yaml}" \
-			--configfs-output "${configfs_image}" -g "${WORKDIR}" -f "True" \
-			|| die "cros_config_schema failed for platform config."
-	else
-		einfo "Emitting empty C interface config for mosys."
-		cp "${FILESDIR}/empty_config.c" "${c_file}"
-	fi
-}
-
-src_install() {
-	# Get the directory name only, and use that as the install directory.
-	insinto "${UNIBOARD_JSON_INSTALL_PATH%/*}"
-	if [[ -e "${WORKDIR}/configfs.img" ]]; then
-		doins "${WORKDIR}/configfs.img"
-	fi
-
-	insinto "${UNIBOARD_YAML_DIR}"
-	doins "${WORKDIR}/config.c"
-	if [[ -e "${WORKDIR}/config.yaml" ]]; then
-		doins "${WORKDIR}/config.yaml"
-	fi
-}
-
-# @FUNCTION: _verify_config_dump
-# @USAGE: [source-yaml] [expected-json]
-# @INTERNAL
-# @DESCRIPTION:
-# Dumps the cros_config_host contents and verifies expected file match.
-#   $1: Source YAML config file used to generate JSON dump.
-#   $2: Expected JSON output file that is verified against.
-_verify_config_dump() {
-	local source_yaml="$1"
-	local expected_json="$2"
-
-	local expected_path="${SYSROOT}${CROS_CONFIG_TEST_DIR}/${expected_json}"
-	local source_path="${SYSROOT}${UNIBOARD_YAML_DIR}/${source_yaml}"
-	local actual_path="${WORKDIR}/${expected_json}"
-	local merged_path="${WORKDIR}/${source_yaml}"
-	if [[ -e "${expected_path}" ]]; then
-		if [[ -e "${source_path}" ]]; then
-			cros_config_schema -o "${merged_path}" -m "${source_path}" \
-				|| die "cros_config_schema failed for build config."
-			cros_config_host -c "${merged_path}" dump-config > "${actual_path}"
-			verify_file_match "${expected_path}" "${actual_path}"
-		else
-			eerror "Source YAML ${source_path} doesn't exist for checking" \
-				"against expected JSON dump ${expected_path}"
-			die
-		fi
-	fi
-}
-
-src_test() {
-	_verify_config_dump model.yaml config_dump.json
-	_verify_config_dump private-model.yaml config_dump-private.json
-}
diff --git a/chromeos-base/chromeos-config/chromeos-config-0.0.2-r139.ebuild b/chromeos-base/chromeos-config/chromeos-config-0.0.2-r139.ebuild
new file mode 100644
index 0000000..9db6584
--- /dev/null
+++ b/chromeos-base/chromeos-config/chromeos-config-0.0.2-r139.ebuild
@@ -0,0 +1,144 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="4429adae74089c2f0e188be6c04a030cb0a9b73a"
+CROS_WORKON_TREE="6b4d7dca12d53edad5b608ade6042c9c5d935e05"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="chromeos-config/cros_config_host"
+
+inherit cros-unibuild cros-workon
+
+DESCRIPTION="Chromium OS-specific configuration"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/config/"
+SRC_URI=""
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="zephyr_ec"
+
+# This ebuild creates the Chrome OS master configuration file stored in
+# ${UNIBOARD_JSON_INSTALL_PATH}. See go/cros-unified-builds-design for
+# more information.
+
+# Run a Python utility from the cros_config_host directory.
+#
+# Doing this instead of calling the installed copy has multiple
+# benefits:
+# - Users who are making a schema change do not need to cros workon
+#   chromeos-base/chromeos-config-host, emerge that, and cros workon
+#   chromeos-base/chromeos-config for their board, and finally emerge
+#   that.  Historically, this was a common confusion point for
+#   developers.
+# - Schema permissions don't end up messed up if a user does a repo
+#   sync with a weird umask.
+# - Schema changes force the chromeos-base/chromeos-config package to
+#   get revbumped.
+#
+# Args:
+#    $1: The tool name to run (either cros_config_host or
+#        cros_config_schema).
+#    $@: The remaining arguments are passed directly to the tool.
+run_cros_config_tool() {
+	local tool="${1}"
+	shift
+
+	PYTHONPATH="${S}/chromeos-config/cros_config_host" \
+		python3 -m "${tool}" "$@"
+}
+
+# Merges all of the source YAML config files and generates the
+# corresponding build config and platform config files.
+src_compile() {
+	local yaml_files=( "${SYSROOT}${UNIBOARD_YAML_DIR}/"*.yaml )
+	local input_yaml_files=()
+	local schema_flags=()
+	local yaml="${WORKDIR}/config.yaml"
+	local c_file="${WORKDIR}/config.c"
+	local configfs_image="${WORKDIR}/configfs.img"
+	local gen_yaml="${SYSROOT}${UNIBOARD_YAML_DIR}/config.yaml"
+
+	# Protobuf based configs generate JSON directly with no YAML.
+	if [[ -f "${SYSROOT}${UNIBOARD_YAML_DIR}/project-config.json" ]]; then
+		yaml_files=( "${SYSROOT}${UNIBOARD_YAML_DIR}/project-config.json" )
+	fi
+
+	for source_yaml in "${yaml_files[@]}"; do
+		if [[ -f "${source_yaml}" && "${source_yaml}" != "${gen_yaml}" ]]; then
+			einfo "Adding source YAML file ${source_yaml}"
+			# Order matters here.  This will control how YAML files
+			# are merged.  To control the order, change the name
+			# of the input files to be in the order desired.
+			input_yaml_files+=("${source_yaml}")
+		fi
+	done
+
+	if use zephyr_ec; then
+		schema_flags+=( --zephyr-ec-configs-only )
+	fi
+
+	if [[ "${#input_yaml_files[@]}" -ne 0 ]]; then
+		run_cros_config_tool cros_config_schema "${schema_flags[@]}" \
+			-o "${yaml}" \
+			-m "${input_yaml_files[@]}" \
+			|| die "cros_config_schema failed for build config."
+
+		run_cros_config_tool cros_config_schema -c "${yaml}" \
+			--configfs-output "${configfs_image}" -g "${WORKDIR}" -f "True" \
+			|| die "cros_config_schema failed for platform config."
+	else
+		einfo "Emitting empty C interface config for mosys."
+		cp "${FILESDIR}/empty_config.c" "${c_file}"
+	fi
+}
+
+src_install() {
+	# Get the directory name only, and use that as the install directory.
+	insinto "${UNIBOARD_JSON_INSTALL_PATH%/*}"
+	if [[ -e "${WORKDIR}/configfs.img" ]]; then
+		doins "${WORKDIR}/configfs.img"
+	fi
+
+	insinto "${UNIBOARD_YAML_DIR}"
+	doins "${WORKDIR}/config.c"
+	if [[ -e "${WORKDIR}/config.yaml" ]]; then
+		doins "${WORKDIR}/config.yaml"
+	fi
+}
+
+# @FUNCTION: _verify_config_dump
+# @USAGE: [source-yaml] [expected-json]
+# @INTERNAL
+# @DESCRIPTION:
+# Dumps the cros_config_host contents and verifies expected file match.
+#   $1: Source YAML config file used to generate JSON dump.
+#   $2: Expected JSON output file that is verified against.
+_verify_config_dump() {
+	local source_yaml="$1"
+	local expected_json="$2"
+
+	local expected_path="${SYSROOT}${CROS_CONFIG_TEST_DIR}/${expected_json}"
+	local source_path="${SYSROOT}${UNIBOARD_YAML_DIR}/${source_yaml}"
+	local actual_path="${WORKDIR}/${expected_json}"
+	local merged_path="${WORKDIR}/${source_yaml}"
+	if [[ -e "${expected_path}" ]]; then
+		if [[ -e "${source_path}" ]]; then
+			run_cros_config_tool cros_config_schema -o "${merged_path}" \
+				-m "${source_path}" \
+				|| die "cros_config_schema failed for build config."
+			run_cros_config_tool cros_config_host \
+				-c "${merged_path}" dump-config > "${actual_path}"
+			verify_file_match "${expected_path}" "${actual_path}"
+		else
+			eerror "Source YAML ${source_path} doesn't exist for checking" \
+				"against expected JSON dump ${expected_path}"
+			die
+		fi
+	fi
+}
+
+src_test() {
+	_verify_config_dump model.yaml config_dump.json
+	_verify_config_dump private-model.yaml config_dump-private.json
+}
diff --git a/chromeos-base/chromeos-config/chromeos-config-9999.ebuild b/chromeos-base/chromeos-config/chromeos-config-9999.ebuild
index f86a483..2902c60f 100644
--- a/chromeos-base/chromeos-config/chromeos-config-9999.ebuild
+++ b/chromeos-base/chromeos-config/chromeos-config-9999.ebuild
@@ -3,10 +3,9 @@
 
 EAPI=7
 
-# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
-# the canonical empty project.
-CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
-CROS_WORKON_LOCALNAME="platform/empty-project"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="chromeos-config/cros_config_host"
 
 inherit cros-unibuild cros-workon
 
@@ -15,17 +14,38 @@
 SRC_URI=""
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="fuzzer zephyr_ec"
-
-DEPEND="
-	!fuzzer? ( virtual/chromeos-config-bsp:= )
-"
-RDEPEND="${DEPEND}"
+IUSE="zephyr_ec"
 
 # This ebuild creates the Chrome OS master configuration file stored in
 # ${UNIBOARD_JSON_INSTALL_PATH}. See go/cros-unified-builds-design for
 # more information.
 
+# Run a Python utility from the cros_config_host directory.
+#
+# Doing this instead of calling the installed copy has multiple
+# benefits:
+# - Users who are making a schema change do not need to cros workon
+#   chromeos-base/chromeos-config-host, emerge that, and cros workon
+#   chromeos-base/chromeos-config for their board, and finally emerge
+#   that.  Historically, this was a common confusion point for
+#   developers.
+# - Schema permissions don't end up messed up if a user does a repo
+#   sync with a weird umask.
+# - Schema changes force the chromeos-base/chromeos-config package to
+#   get revbumped.
+#
+# Args:
+#    $1: The tool name to run (either cros_config_host or
+#        cros_config_schema).
+#    $@: The remaining arguments are passed directly to the tool.
+run_cros_config_tool() {
+	local tool="${1}"
+	shift
+
+	PYTHONPATH="${S}/chromeos-config/cros_config_host" \
+		python3 -m "${tool}" "$@"
+}
+
 # Merges all of the source YAML config files and generates the
 # corresponding build config and platform config files.
 src_compile() {
@@ -57,11 +77,12 @@
 	fi
 
 	if [[ "${#input_yaml_files[@]}" -ne 0 ]]; then
-		cros_config_schema "${schema_flags[@]}" -o "${yaml}" \
+		run_cros_config_tool cros_config_schema "${schema_flags[@]}" \
+			-o "${yaml}" \
 			-m "${input_yaml_files[@]}" \
 			|| die "cros_config_schema failed for build config."
 
-		cros_config_schema -c "${yaml}" \
+		run_cros_config_tool cros_config_schema -c "${yaml}" \
 			--configfs-output "${configfs_image}" -g "${WORKDIR}" -f "True" \
 			|| die "cros_config_schema failed for platform config."
 	else
@@ -101,9 +122,11 @@
 	local merged_path="${WORKDIR}/${source_yaml}"
 	if [[ -e "${expected_path}" ]]; then
 		if [[ -e "${source_path}" ]]; then
-			cros_config_schema -o "${merged_path}" -m "${source_path}" \
+			run_cros_config_tool cros_config_schema -o "${merged_path}" \
+				-m "${source_path}" \
 				|| die "cros_config_schema failed for build config."
-			cros_config_host -c "${merged_path}" dump-config > "${actual_path}"
+			run_cros_config_tool cros_config_host \
+				-c "${merged_path}" dump-config > "${actual_path}"
 			verify_file_match "${expected_path}" "${actual_path}"
 		else
 			eerror "Source YAML ${source_path} doesn't exist for checking" \
diff --git a/chromeos-base/chromeos-cr50-dev/chromeos-cr50-dev-0.0.1-r210.ebuild b/chromeos-base/chromeos-cr50-dev/chromeos-cr50-dev-0.0.1-r210.ebuild
deleted file mode 100644
index b212e32..0000000
--- a/chromeos-base/chromeos-cr50-dev/chromeos-cr50-dev-0.0.1-r210.ebuild
+++ /dev/null
@@ -1,211 +0,0 @@
-# Copyright 2019 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.makefile file.
-
-EAPI="7"
-
-CROS_WORKON_COMMIT=("c6095192742c9f59f72a6178ece5a2dd8cea4e43" "37335af9c5488ed349271a8ba9ff209c940a5e2c" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
-CROS_WORKON_TREE=("231827d025fd8a333ffb02249aee9960ae19a701" "679fa8b14bd105ad9959a0f82eaa928d5b18890d" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform/ec"
-	"chromiumos/third_party/tpm2"
-	"chromiumos/third_party/cryptoc"
-)
-CROS_WORKON_LOCALNAME=(
-	"platform/cr50"
-	"third_party/tpm2"
-	"third_party/cryptoc"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}/platform/ec"
-	"${S}/third_party/tpm2"
-	"${S}/third_party/cryptoc"
-)
-CROS_WORKON_EGIT_BRANCH=(
-	"cr50_stab"
-	"main"
-	"main"
-)
-
-inherit coreboot-sdk cros-ec-board cros-workon toolchain-funcs
-
-DESCRIPTION="Google Security Chip firmware code"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/+/refs/heads/cr50_stab"
-MIRROR_PATH="gs://chromeos-localmirror/distfiles/"
-CR50_ROS=(cr50.prod.ro.A.0.0.11 cr50.prod.ro.B.0.0.11)
-SRC_URI="${CR50_ROS[*]/#/${MIRROR_PATH}}"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="asan cros_host fuzzer msan quiet ubsan verbose"
-
-COMMON_DEPEND="
-	dev-libs/openssl:0=
-	virtual/libusb:1=
-	fuzzer? (
-		dev-libs/protobuf:=
-	)
-"
-
-RDEPEND="
-	!<chromeos-base/chromeos-ec-0.0.2
-	!<chromeos-base/ec-utils-0.0.2
-	${COMMON_DEPEND}
-"
-
-# Need to control versions of chromeos-ec and chromeos-config packages to
-# prevent file collision in /firmware/cr50.
-DEPEND="
-	${COMMON_DEPEND}
-	fuzzer? ( dev-libs/libprotobuf-mutator:= )
-"
-
-# We don't want binchecks since we're cross-compiling firmware images using
-# non-standard layout.
-RESTRICT="binchecks"
-
-# Cr50 signer manifest converted into proper json format.
-CR50_JSON='prod.json'
-
-src_unpack() {
-	cros-workon_src_unpack
-	S+="/platform/ec"
-}
-
-set_build_env() {
-	cros_use_gcc
-
-	export CROSS_COMPILE=${COREBOOT_SDK_PREFIX_arm}
-
-	tc-export CC BUILD_CC PKG_CONFIG
-	export HOSTCC=${CC}
-	export BUILDCC=${BUILD_CC}
-
-	get_ec_boards
-
-	EC_OPTS=()
-	use quiet && EC_OPTS+=( -s 'V=0' )
-	use verbose && EC_OPTS+=( 'V=1' )
-}
-
-#
-# Convert internal representation of the signer manifest into conventional
-# json.
-#
-prepare_cr50_signer_aid () {
-	local signer_manifest="util/signer/ec_RW-manifest-prod.json"
-	local codesigner="cr50-codesigner"
-
-	elog "Converting prod manifest into json format"
-
-	if ! type -P "${codesigner}" >/dev/null; then
-		ewarn "${codesigner} not available, not preparing ${CR50_JSON}"
-		return
-	fi
-
-	"${codesigner}" --convert-json -i "${signer_manifest}" \
-			-o "${S}/${CR50_JSON}" || \
-		die "failed to convert signer manifest ${signer_manifest}"
-}
-
-src_compile() {
-	set_build_env
-
-	export BOARD=cr50
-	emake -C extra/usb_updater clean
-	emake -C extra/usb_updater gsctool
-
-	if use fuzzer ; then
-		local sanitizers=()
-		use asan && sanitizers+=( 'TEST_ASAN=y' )
-		use msan && sanitizers+=( 'TEST_MSAN=y' )
-		use ubsan && sanitizers+=( 'TEST_UBSAN=y' )
-		emake buildfuzztests "${sanitizers[@]}"
-	fi
-
-	if [[ "${EC_BOARDS[0]}" != "reef" ]]; then
-		elog "Not building Cr50 binaries"
-		return
-	fi
-
-	emake clean
-	emake "${EC_OPTS[@]}"
-	prepare_cr50_signer_aid
-}
-
-#
-# Install additional files, necessary for Cr50 signer inputs.
-#
-install_cr50_signer_aid () {
-	local blob
-
-	if [[ ! -f ${S}/${CR50_JSON} ]]; then
-		ewarn "Not installing Cr50 support files"
-		return
-	fi
-
-	elog "Installing Cr50 signer support files"
-
-	for blob in "${CR50_ROS[@]}"; do
-		local dest_name
-
-		# Carve out prod.ro.? from the RO blob file name. It is known
-		# to follow the pattern of "*prod.ro.[AB]*".
-		dest_name="${blob/*prod.ro/prod.ro}"
-		newins "${DISTDIR}/${blob}" "${dest_name::9}"
-	done
-
-	doins "${S}/board/cr50/rma_key_blob".*.{prod,test}
-	doins "${S}/${CR50_JSON}"
-	doins "${S}/util/signer/fuses.xml"
-}
-
-src_install() {
-	local build_dir
-	local dest_dir
-
-	dosbin "extra/usb_updater/gsctool"
-	dosbin "util/chargen"
-	dosym "gsctool" "/usr/sbin/usb_updater"
-
-	if use fuzzer ; then
-		local f
-
-		insinto /usr/libexec/fuzzers
-		exeinto /usr/libexec/fuzzers
-		for f in build/host/*_fuzz/*_fuzz.exe; do
-			local fuzzer="$(basename "${f}")"
-			local custom_owners="${S}/fuzz/${fuzzer%exe}owners"
-			fuzzer="ec_${fuzzer%_fuzz.exe}_fuzzer"
-			newexe "${f}" "${fuzzer}"
-			einfo "CUSTOM OWNERS = '${custom_owners}'"
-			if [[ -f "${custom_owners}" ]]; then
-				newins "${custom_owners}" "${fuzzer}.owners"
-			else
-				newins "${S}/OWNERS" "${fuzzer}.owners"
-			fi
-		done
-	fi
-
-	if ! use cros_host; then
-		exeinto /usr/local/bin
-		doexe "util/ap_ro_hash.py"
-	fi
-
-	if [[ "${EC_BOARDS[0]}" != "reef" ]]; then
-		elog "Not installing Cr50 binaries"
-		return
-	fi
-
-	build_dir="build/cr50"
-	dest_dir='/firmware/cr50'
-	einfo "Installing cr50 from ${build_dir} into ${dest_dir}"
-
-	insinto "${dest_dir}"
-	doins "${build_dir}/ec.bin"
-	doins "${build_dir}/RW/ec.RW.elf"
-	doins "${build_dir}/RW/ec.RW_B.elf"
-
-	install_cr50_signer_aid
-}
-
diff --git a/chromeos-base/chromeos-cr50-dev/chromeos-cr50-dev-0.0.1-r312.ebuild b/chromeos-base/chromeos-cr50-dev/chromeos-cr50-dev-0.0.1-r312.ebuild
new file mode 100644
index 0000000..df2db13
--- /dev/null
+++ b/chromeos-base/chromeos-cr50-dev/chromeos-cr50-dev-0.0.1-r312.ebuild
@@ -0,0 +1,211 @@
+# Copyright 2019 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.makefile file.
+
+EAPI="7"
+
+CROS_WORKON_COMMIT=("1ad3e00b6c6e67676d5a1de9689c18bfca31aa1a" "89e0c94916b4874f72074c40521f67e3ca90e42d" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
+CROS_WORKON_TREE=("4b2d98b4fa1452c25ee79c4eed04c730712b5bf8" "2159375e60a21a4f4cd6da052dcc95a4a0dec15d" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform/ec"
+	"chromiumos/third_party/tpm2"
+	"chromiumos/third_party/cryptoc"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform/cr50"
+	"third_party/tpm2"
+	"third_party/cryptoc"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}/platform/ec"
+	"${S}/third_party/tpm2"
+	"${S}/third_party/cryptoc"
+)
+CROS_WORKON_EGIT_BRANCH=(
+	"cr50_stab"
+	"main"
+	"main"
+)
+
+inherit coreboot-sdk cros-ec-board cros-workon toolchain-funcs
+
+DESCRIPTION="Google Security Chip firmware code"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/+/refs/heads/cr50_stab"
+MIRROR_PATH="gs://chromeos-localmirror/distfiles/"
+CR50_ROS=(cr50.prod.ro.A.0.0.11 cr50.prod.ro.B.0.0.11)
+SRC_URI="${CR50_ROS[*]/#/${MIRROR_PATH}}"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="asan cros_host fuzzer msan quiet ubsan verbose"
+
+COMMON_DEPEND="
+	dev-libs/openssl:0=
+	virtual/libusb:1=
+	fuzzer? (
+		dev-libs/protobuf:=
+	)
+"
+
+RDEPEND="
+	!<chromeos-base/chromeos-ec-0.0.2
+	!<chromeos-base/ec-utils-0.0.2
+	${COMMON_DEPEND}
+"
+
+# Need to control versions of chromeos-ec and chromeos-config packages to
+# prevent file collision in /firmware/cr50.
+DEPEND="
+	${COMMON_DEPEND}
+	fuzzer? ( dev-libs/libprotobuf-mutator:= )
+"
+
+# We don't want binchecks since we're cross-compiling firmware images using
+# non-standard layout.
+RESTRICT="binchecks"
+
+# Cr50 signer manifest converted into proper json format.
+CR50_JSON='prod.json'
+
+src_unpack() {
+	cros-workon_src_unpack
+	S+="/platform/ec"
+}
+
+set_build_env() {
+	cros_use_gcc
+
+	export CROSS_COMPILE=${COREBOOT_SDK_PREFIX_arm}
+
+	tc-export CC BUILD_CC PKG_CONFIG
+	export HOSTCC=${CC}
+	export BUILDCC=${BUILD_CC}
+
+	get_ec_boards
+
+	EC_OPTS=()
+	use quiet && EC_OPTS+=( -s 'V=0' )
+	use verbose && EC_OPTS+=( 'V=1' )
+}
+
+#
+# Convert internal representation of the signer manifest into conventional
+# json.
+#
+prepare_cr50_signer_aid () {
+	local signer_manifest="util/signer/ec_RW-manifest-prod.json"
+	local codesigner="cr50-codesigner"
+
+	elog "Converting prod manifest into json format"
+
+	if ! type -P "${codesigner}" >/dev/null; then
+		ewarn "${codesigner} not available, not preparing ${CR50_JSON}"
+		return
+	fi
+
+	"${codesigner}" --convert-json -i "${signer_manifest}" \
+			-o "${S}/${CR50_JSON}" || \
+		die "failed to convert signer manifest ${signer_manifest}"
+}
+
+src_compile() {
+	set_build_env
+
+	export BOARD=cr50
+	emake -C extra/usb_updater clean
+	emake -C extra/usb_updater gsctool
+
+	if use fuzzer ; then
+		local sanitizers=()
+		use asan && sanitizers+=( 'TEST_ASAN=y' )
+		use msan && sanitizers+=( 'TEST_MSAN=y' )
+		use ubsan && sanitizers+=( 'TEST_UBSAN=y' )
+		emake buildfuzztests "${sanitizers[@]}"
+	fi
+
+	if [[ "${EC_BOARDS[0]}" != "reef" ]]; then
+		elog "Not building Cr50 binaries"
+		return
+	fi
+
+	emake clean
+	emake "${EC_OPTS[@]}"
+	prepare_cr50_signer_aid
+}
+
+#
+# Install additional files, necessary for Cr50 signer inputs.
+#
+install_cr50_signer_aid () {
+	local blob
+
+	if [[ ! -f ${S}/${CR50_JSON} ]]; then
+		ewarn "Not installing Cr50 support files"
+		return
+	fi
+
+	elog "Installing Cr50 signer support files"
+
+	for blob in "${CR50_ROS[@]}"; do
+		local dest_name
+
+		# Carve out prod.ro.? from the RO blob file name. It is known
+		# to follow the pattern of "*prod.ro.[AB]*".
+		dest_name="${blob/*prod.ro/prod.ro}"
+		newins "${DISTDIR}/${blob}" "${dest_name::9}"
+	done
+
+	doins "${S}/board/cr50/rma_key_blob".*.{prod,test}
+	doins "${S}/${CR50_JSON}"
+	doins "${S}/util/signer/fuses.xml"
+}
+
+src_install() {
+	local build_dir
+	local dest_dir
+
+	dosbin "extra/usb_updater/gsctool"
+	dosbin "util/chargen"
+	dosym "gsctool" "/usr/sbin/usb_updater"
+
+	if use fuzzer ; then
+		local f
+
+		insinto /usr/libexec/fuzzers
+		exeinto /usr/libexec/fuzzers
+		for f in build/host/*_fuzz/*_fuzz.exe; do
+			local fuzzer="$(basename "${f}")"
+			local custom_owners="${S}/fuzz/${fuzzer%exe}owners"
+			fuzzer="ec_${fuzzer%_fuzz.exe}_fuzzer"
+			newexe "${f}" "${fuzzer}"
+			einfo "CUSTOM OWNERS = '${custom_owners}'"
+			if [[ -f "${custom_owners}" ]]; then
+				newins "${custom_owners}" "${fuzzer}.owners"
+			else
+				newins "${S}/OWNERS" "${fuzzer}.owners"
+			fi
+		done
+	fi
+
+	if ! use cros_host; then
+		exeinto /usr/local/bin
+		doexe "util/ap_ro_hash.py"
+	fi
+
+	if [[ "${EC_BOARDS[0]}" != "reef" ]]; then
+		elog "Not installing Cr50 binaries"
+		return
+	fi
+
+	build_dir="build/cr50"
+	dest_dir='/firmware/cr50'
+	einfo "Installing cr50 from ${build_dir} into ${dest_dir}"
+
+	insinto "${dest_dir}"
+	doins "${build_dir}/ec.bin"
+	doins "${build_dir}/RW/ec.RW.elf"
+	doins "${build_dir}/RW/ec.RW_B.elf"
+
+	install_cr50_signer_aid
+}
+
diff --git a/chromeos-base/chromeos-cr50-scripts/chromeos-cr50-scripts-0.0.1-r74.ebuild b/chromeos-base/chromeos-cr50-scripts/chromeos-cr50-scripts-0.0.1-r77.ebuild
similarity index 100%
rename from chromeos-base/chromeos-cr50-scripts/chromeos-cr50-scripts-0.0.1-r74.ebuild
rename to chromeos-base/chromeos-cr50-scripts/chromeos-cr50-scripts-0.0.1-r77.ebuild
diff --git a/chromeos-base/chromeos-cr50-scripts/chromeos-cr50-scripts-0.0.1.ebuild b/chromeos-base/chromeos-cr50-scripts/chromeos-cr50-scripts-0.0.1.ebuild
index 8022acb..daf8498 100644
--- a/chromeos-base/chromeos-cr50-scripts/chromeos-cr50-scripts-0.0.1.ebuild
+++ b/chromeos-base/chromeos-cr50-scripts/chromeos-cr50-scripts-0.0.1.ebuild
@@ -10,6 +10,7 @@
 LICENSE="BSD-Google"
 SLOT="0"
 KEYWORDS="*"
+IUSE="generic_tpm2"
 
 RDEPEND="
 	chromeos-base/ec-utils
@@ -44,15 +45,25 @@
 	files=(
 		cr50-flash-log.sh
 		cr50-get-name.sh
+		cr50-read-board-id.sh
 		cr50-read-rma-sn-bits.sh
 		cr50-reset.sh
 		cr50-set-board-id.sh
 		cr50-set-sn-bits.sh
 		cr50-update.sh
 		cr50-verify-ro.sh
+		tpm2-lock-space.sh
+		tpm2-nv-utils.sh
+		tpm2-read-space.sh
+		tpm2-write-space.sh
 	)
 	for f in "${files[@]}"; do
 		doexe "${FILESDIR}/${f}"
+	if use generic_tpm2; then
+		sed -i 's/PLATFORM_INDEX=false/PLATFORM_INDEX=true/' \
+			"${D}/usr/share/cros/${f}" ||
+			die "Can't set PLATFORM_INDEX to true for ${f}"
+	fi
 	done
 
 	insinto /opt/google/cr50/ro_db
diff --git a/chromeos-base/chromeos-cr50-scripts/files/cr50-read-board-id.sh b/chromeos-base/chromeos-cr50-scripts/files/cr50-read-board-id.sh
new file mode 100755
index 0000000..fe79d4f
--- /dev/null
+++ b/chromeos-base/chromeos-cr50-scripts/files/cr50-read-board-id.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+# 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.
+#
+# Reads board id space and format it as "XXXXXXXX:XXXXXXXX:XXXXXXXX" in hex.
+# Note that for compatibility with gsctool, the endian of respective 4 bytes are
+# reversed.
+
+TPM_READSPACE="/usr/share/cros/tpm2-read-space.sh"
+
+if ! board_id_data="$("${TPM_READSPACE}" 013fff00 12)"; then
+  >&2 echo "Failed to read board id space"
+  exit 1
+fi
+
+reverse_endian() {
+  local v=$1
+  echo "${v}" | tac -rs .. | tr -d '\n'
+}
+
+# Extract and print RMA and SNbits data.
+board_id_part1="$(echo "${board_id_data}" | cut -b 1-8)"
+board_id_part2="$(echo "${board_id_data}" | cut -b 9-16)"
+flags="$(echo "${board_id_data}" | cut -b 17-24)"
+
+board_id_part1="$(reverse_endian "${board_id_part1}")"
+board_id_part2="$(reverse_endian "${board_id_part2}")"
+flags="$(reverse_endian "${flags}")"
+
+echo "${board_id_part1}:${board_id_part2}:${flags}"
diff --git a/chromeos-base/chromeos-cr50-scripts/files/cr50-read-rma-sn-bits.sh b/chromeos-base/chromeos-cr50-scripts/files/cr50-read-rma-sn-bits.sh
index df336f6..53c14fa 100755
--- a/chromeos-base/chromeos-cr50-scripts/files/cr50-read-rma-sn-bits.sh
+++ b/chromeos-base/chromeos-cr50-scripts/files/cr50-read-rma-sn-bits.sh
@@ -7,46 +7,26 @@
 # The data is printed as vvvvvv:rr:ss..ss, where
 #   vvvvvv is the hex representation of the 3 version bytes,
 #   rr is the hex representation of the RMA status byte,
-#   ss..SS is the hex representation of SN bits (12 bytes).
+#   ss..SS is the hex representation of SN Bits (12 bytes).
 
-# Choose a tool for sending raw TPM commands
-if pidof trunksd > /dev/null; then
-  # trunksd is running
-  send_util="trunks_send --raw"
-else
-  # trunksd is stopped
-  send_util="tpmc raw"
-fi
+PLATFORM_INDEX=false
+TPM_READSPACE="/usr/share/cros/tpm2-read-space.sh"
 
-# Send NV_Read command to read 12 bytes from SNbits vNVRAM:
-# index=0x013fff01, size=0x0010, offset=0, auth=NULL password
-TPM_CMD="80 02 00 00 00 23 00 00 01 4e 01 3f ff 01 01 3f ff 01 \
-         00 00 00 09 40 00 00 09 00 00 00 00 00 00 10 00 00"
-output="$(${send_util} ${TPM_CMD})" || exit 1
-response="$(echo ${output} | sed -e 's/0x//g' | \
-            tr -d ' \n' | tr '[:upper:]' '[:lower:]')"
-
-# The successful response consists of
-#  - Header (16 bytes = 32 hex digits):
-#    -- Standard TPM header (10 bytes): tag, size, response code
-#    -- Param size (4 bytes): should be 0x00000012
-#    -- TPM2B size for read data (2 bytes), should be 0x0010
-#  - Data (16 requested bytes = 32 hex digits):
-#    -- Version (3 bytes = 6 hex digits)
-#    -- RMA status (1 byte = 2 hex digits)
-#    -- S/N bits (12 bytes = 24 hex digits)
-#  - Auth area.
-
-# Check response header.
-hdr="$(echo ${response} | cut -b 1-32)"
-EXPECTED_HDR="80020000002500000000000000120010"
-if [ "${hdr}" != "${EXPECTED_HDR}" ]; then
-  >&2 echo "Unexpected response: ${response}"
+if ! sn_bits="$(${TPM_READSPACE} 013fff01 16)"; then
+  >&2 echo "Failed to read SN Bits space"
   exit 1
 fi
 
-# Extract and print RMA and SNbits data.
-sn_data_version="$(echo ${response} | cut -b 33-38)"
-rma_status="$(echo ${response} | cut -b 39-40)"
-sn_bits="$(echo ${response} | cut -b 41-64)"
-echo "${sn_data_version}:${rma_status}:${sn_bits}"
+standalone_rma_bytes=""
+if [ "${PLATFORM_INDEX}" = true ]; then
+  if ! standalone_rma_bytes="$(${TPM_READSPACE} 013fff04 4)"; then
+    >&2 echo "Failed to read RMA Bytes space"
+    exit 1
+  fi
+fi
+
+sn_data_version="$(echo "${sn_bits}" | cut -b 1-6)"
+rma_status="$(echo "${sn_bits}" | cut -b 7-8)"
+sn_bits="$(echo "${sn_bits}" | cut -b 9-)"
+# For non-platform index case, ${standalone_rma_bytes} is empty; use `xargs` to trim the space at tail.
+echo "${sn_data_version}:${rma_status}:${sn_bits} ${standalone_rma_bytes}" | xargs
diff --git a/chromeos-base/chromeos-cr50-scripts/files/cr50-set-board-id.sh b/chromeos-base/chromeos-cr50-scripts/files/cr50-set-board-id.sh
index beabc88..e4b6ad8 100755
--- a/chromeos-base/chromeos-cr50-scripts/files/cr50-set-board-id.sh
+++ b/chromeos-base/chromeos-cr50-scripts/files/cr50-set-board-id.sh
@@ -6,7 +6,12 @@
 # This script is run in the factory process, which sets the board id and
 # flags properly for cr50.
 
+PLATFORM_INDEX=false
+
 UPDATER="/usr/sbin/gsctool"
+BOARD_ID_NVRAM_READER="/usr/share/cros/cr50-read-board-id.sh"
+TPM_WRITESPACE="/usr/share/cros/tpm2-write-space.sh"
+TPM_LOCKSPACE="/usr/share/cros/tpm2-lock-space.sh"
 
 # The return codes for different failure reasons.
 ERR_GENERAL=1
@@ -37,10 +42,12 @@
   local new_board_id="$(char_to_hex $1)"
   local new_flag="$2"
 
+  # Note that it is supposed to output the same data layout as `gsctool -a -i`.
   local output
-  output="$("${UPDATER}" -a -i)"
-  if [ $? != 0 ]; then
-    die "Failed to execute ${UPDATER} -a -i"
+  output="$("${BOARD_ID_NVRAM_READER}")"
+  local status="$?"
+  if [ "${status}" != 0 ]; then
+    die "Failed to read board id."
   fi
 
   # Parse the output. E.g., 5a5a4146:a5a5beb9:0000ff00
@@ -84,6 +91,34 @@
   fi
 }
 
+reverse_endian() {
+  local v=$1
+  echo "${v}" | tac -rs .. | tr -d '\n'
+}
+
+generic_tpm2_set_board_id() {
+  local flag="$2"
+
+  local p1
+  p1="$(char_to_hex "$1")"
+  # the second 4 bytes are bitwise inverse of the first part.
+  local p2="0x${p1}"
+  p2="$(printf '%X' "$(( ~ p2 & 0xFFFFFFFF ))" )"
+
+  flag="$(printf '%X' "$(( flag ))" )"
+
+  p1="$(reverse_endian "${p1}")"
+  p2="$(reverse_endian "${p2}")"
+  flag="$(reverse_endian "${flag}")"
+  flag="${flag}0000"
+
+  local board_id="${p1}${p2}${flag}"
+
+  "${TPM_WRITESPACE}" 013FFF00 "${board_id}" || die "Failed to write board id space."
+
+  "${TPM_LOCKSPACE}" 013FFF00 || die "Failed to lock board id space."
+}
+
 # Check if a string version has a valid format.
 # Convert string version representation into ordinal number.
 # String version representation is of the form
@@ -283,7 +318,11 @@
 
   cr50_check_board_id_and_flag "${rlz}" "${flag}"
 
-  cr50_set_board_id_and_flag "${rlz}" "${flag}"
+  if [ "${PLATFORM_INDEX}" = false ]; then
+    cr50_set_board_id_and_flag "${rlz}" "${flag}"
+  else
+    generic_tpm2_set_board_id "${rlz}" "${flag}"
+  fi
   echo "Successfully updated board ID to '${rlz}' with phase '${phase}'."
 }
 
diff --git a/chromeos-base/chromeos-cr50-scripts/files/cr50-set-sn-bits.sh b/chromeos-base/chromeos-cr50-scripts/files/cr50-set-sn-bits.sh
index 1af36d8..3cddda0 100755
--- a/chromeos-base/chromeos-cr50-scripts/files/cr50-set-sn-bits.sh
+++ b/chromeos-base/chromeos-cr50-scripts/files/cr50-set-sn-bits.sh
@@ -6,8 +6,13 @@
 # This script is run in the factory process, which sets serial number bits
 # properly for cr50.
 
+PLATFORM_INDEX=false
+
 READ_RMA_SN_BITS="/usr/share/cros/cr50-read-rma-sn-bits.sh"
+READ_BOARD_ID_BITS="/usr/share/cros/cr50-read-board-id.sh"
 GSCTOOL="/usr/sbin/gsctool"
+TPM_WRITESPACE="/usr/share/cros/tpm2-write-space.sh"
+TPM_LOCKSPACE="/usr/share/cros/tpm2-lock-space.sh"
 
 # The return codes for different failure reasons.
 ERR_GENERAL=1
@@ -55,7 +60,24 @@
     sed -e 's/.*=[^0-9a-f]*//I' -e 's/\(.\{24\}\).*/\1/'
 }
 
+is_board_id_set_generic_tpm2() {
+  local output
+  if ! output="$("${READ_BOARD_ID_BITS}")"; then
+    die "Failed to execute ${READ_BOARD_ID_BITS}."
+  fi
+
+  # Parse the output. E.g., 5a5a4146:a5a5beb9:0000ff00
+  output="${output##* }"
+
+  [ "${output%:*}" != "ffffffff:ffffffff" ]
+}
+
 is_board_id_set() {
+  if [ "${PLATFORM_INDEX}" = true ]; then
+    is_board_id_set_generic_tpm2
+    return
+  fi
+
   local output
   if ! output="$("${GSCTOOL}" -a -i)"; then
     die "Failed to execute ${GSCTOOL} -a -i"
@@ -67,6 +89,19 @@
   [ "${output%:*}" != "ffffffff:ffffffff" ]
 }
 
+has_rmaed() {
+  local rma_sn_bits="$1"
+  if [ "${PLATFORM_INDEX}" = false ]; then
+    local device_version_and_rma_bytes="${rma_sn_bits%:*}"
+    local device_rma_flags="${device_version_and_rma_bytes#*:}"
+    [ "${device_rma_flags}" != ff ]
+    return
+  fi
+
+  local standalone_rma_flags="{rma_sn_bits##* }"
+  [ "${standalone_rma_flags}" = 0000000000000000 ]
+}
+
 cr50_check_sn_bits() {
   local sn_bits="$1"
 
@@ -80,11 +115,12 @@
 
   local device_version_and_rma_bytes="${output%:*}"
   local device_rma_flags="${device_version_and_rma_bytes#*:}"
-  if [ "${device_rma_flags}" != ff ]; then
+  if has_rmaed "${device_rma_flags}"; then
     device_has_been_rmaed
   fi
 
   local device_sn_bits="${output##*:}"
+  device_sn_bits="${device_sn_bits%% *}"
   if [ "${device_sn_bits}" = "ffffffffffffffffffffffff" ]; then
     # SN Bits are cleared, it's ok to go ahead and set them.
     return 0
@@ -99,10 +135,28 @@
   die_as_already_set
 }
 
+generic_tpm2_set_sn_bits() {
+  local sn_bits="$1"
+  # `0FFFFE refers to the version for generic TPM2, which has a stand-alone RMA
+  # byte; `80` is a chosen value that GSC never uses.
+  local SN_BITS_HEADER="0FFFFE80"
+
+  "${TPM_WRITESPACE}" 013FFF01 "${SN_BITS_HEADER}${sn_bits}" || \
+    die "Failed to write SN Bits space."
+
+  "${TPM_LOCKSPACE}" 013FFF01 || die "Failed to lock SN Bits space."
+
+  return 0
+}
+
 cr50_set_sn_bits() {
   local sn_bits="$1"
 
-  "${GSCTOOL}" -a -S "${sn_bits}" 2>&1
+  if [ "${PLATFORM_INDEX}" = true ]; then
+    generic_tpm2_set_sn_bits "${sn_bits}"
+  else
+    "${GSCTOOL}" -a -S "${sn_bits}" 2>&1
+  fi
   local status=$?
   if [ "${status}" -ne 0 ]; then
     local warning
@@ -146,4 +200,3 @@
 }
 
 main "$@"
-
diff --git a/chromeos-base/chromeos-cr50-scripts/files/tpm2-lock-space.sh b/chromeos-base/chromeos-cr50-scripts/files/tpm2-lock-space.sh
new file mode 100755
index 0000000..bbad3f1
--- /dev/null
+++ b/chromeos-base/chromeos-cr50-scripts/files/tpm2-lock-space.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+# 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.
+#
+# Write-locks a given nv space index. The index is specified as the first input
+# argument in a hex number, w/o "0x" prefix.
+# Example usage: /usr/share/cros/tpm2-lock-space.sh 013fff00
+
+TPM2_NV_UTILS="/usr/share/cros/tpm2-nv-utils.sh"
+"${TPM2_NV_UTILS}" writelock "$@"
diff --git a/chromeos-base/chromeos-cr50-scripts/files/tpm2-nv-utils.sh b/chromeos-base/chromeos-cr50-scripts/files/tpm2-nv-utils.sh
new file mode 100755
index 0000000..bd03e66
--- /dev/null
+++ b/chromeos-base/chromeos-cr50-scripts/files/tpm2-nv-utils.sh
@@ -0,0 +1,120 @@
+#!/bin/sh
+# 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.
+#
+# Write-locks a given nv space index. The index is specified as the first input
+# argument in a hex number, w/o "0x" prefix.
+# Example usage: /usr/share/cros/tpm2-lock-space.sh 013fff00
+
+TPM2_CC_NV_READ="0000014e"
+TPM2_CC_NV_WRITE="00000137"
+TPM2_CC_NV_WRITELOCK="00000138"
+
+cmd="$1"
+index="$2"
+
+if [ -z "${cmd}" ]; then
+  >&2 echo "No command specified"
+  exit 1
+fi
+
+cmd_param=""
+
+case "${cmd}" in
+  read)
+    tpm_cc="${TPM2_CC_NV_READ}"
+    data_len="$3"
+    if [ -z "${data_len}" ]; then
+      >&2 echo "No length specified"
+      exit 1
+    fi
+    if [ $((data_len)) -gt 4096 ]; then
+      >&2 echo "nv size too large"
+      exit 1
+    fi
+    data_len_hex="$(printf '%04x' "${data_len}")"
+    # size of offset, both in UNIT16
+    cmd_param="${data_len_hex}0000"
+    ;;
+  write)
+    tpm_cc="${TPM2_CC_NV_WRITE}"
+    data="$3"
+    if [ -z "${data}" ]; then
+      >&2 echo "No data to write"
+      exit 1
+    fi
+    # 4096 is an arbitrary upper bound that is supposed to much larger than a nv
+    # index size in practice.
+    if [ ${#data} -gt 4096 ]; then
+      >&2 echo "data to write too long"
+      exit 1
+    fi
+    data_len=$(( ${#data} / 2 ))
+    data_len_hex="$(printf '%04x' "${data_len}")"
+    # TPM2B_MAX_NV_BUFFER, and offset in UINT16.
+    cmd_param="${data_len_hex}${data}0000"
+    ;;
+  writelock)
+    tpm_cc="${TPM2_CC_NV_WRITELOCK}"
+    # No extra parameter.
+    ;;
+  *)
+    >&2 echo "Command not support: ${cmd}"
+    exit 1
+esac
+
+# Choose a tool for sending raw TPM commands
+if pidof trunksd > /dev/null; then
+  # trunksd is running
+  send_util="trunks_send --raw"
+else
+  # trunksd is stopped
+  send_util="tpmc raw"
+fi
+
+# A 8-byte place holder of the command size, which is calculated after the full
+# command is composed so the size is known.
+CMD_SIZE_PLACE_HOLDER="CMD_SIZE"
+
+tpm_cmd="80 02 ${CMD_SIZE_PLACE_HOLDER} ${tpm_cc} ${index} ${index} \
+         00 00 00 09 40 00 00 09 00 00 00 00 00 ${cmd_param}"
+
+# Re-format tpm_cmd into space-splitted hex pairs in order to be
+# tpmc-compatible. Also, substitute the placeholder of command size.
+
+# First, remove space from the tpm_cmd.
+tpm_cmd="$(echo "${tpm_cmd}" | sed -e "s/ //g")"
+# Calculate the size and format it in 8-digit hex.
+tpm_cmd_len=$(( ${#tpm_cmd} / 2 ))
+tpm_cmd_len_hex="$(printf '%08x' "${tpm_cmd_len}")"
+# Replace the command size.
+tpm_cmd="$(echo "${tpm_cmd}" | \
+           sed -e "s/${CMD_SIZE_PLACE_HOLDER}/${tpm_cmd_len_hex}/g")"
+#Format it in space-separated hex pair.
+tpm_cmd="$(echo "${tpm_cmd}" | fold -w2 | paste -sd' ')"
+
+
+output="$(${send_util} "${tpm_cmd}")" || exit 1
+response="$(echo "${output}" | sed -e 's/0x//g' | \
+            tr -d ' \n' | tr '[:upper:]' '[:lower:]')"
+
+# Check response code in header.
+hdr="$(echo "${response}" | cut -b 13-20)"
+TPM_SUCCESS="00000000"
+if [ "${hdr}" != "${TPM_SUCCESS}" ]; then
+  >&2 echo "Unexpected response for ${cmd}: ${response}"
+  exit 1
+fi
+
+# if it's TPM2_NV_Read, print the content.
+if [ "${cmd}" = "read" ]; then
+  output_data="$(echo "${response}" | cut -b 33- | cut -b -$(( data_len * 2 )) )"
+  if [ ${#output_data} != $(( data_len * 2 )) ]; then
+    >&2 echo "Unexpected output size of nv data: ${response}"
+    exit 1
+  fi
+  echo "${output_data}"
+fi
+
+exit 0
diff --git a/chromeos-base/chromeos-cr50-scripts/files/tpm2-read-space.sh b/chromeos-base/chromeos-cr50-scripts/files/tpm2-read-space.sh
new file mode 100644
index 0000000..ef7877a
--- /dev/null
+++ b/chromeos-base/chromeos-cr50-scripts/files/tpm2-read-space.sh
@@ -0,0 +1,12 @@
+#!/bin/sh
+# 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.
+#
+# Reads a given nv space index and a given size. The index is specified as the
+# first input argument in a hex number, w/o "0x" prefix, followed by the read
+# size in decimel as the second argument.
+# Example usage: /usr/share/cros/tpm2-read-space.sh 013fff00 12
+
+TPM2_NV_UTILS="/usr/share/cros/tpm2-nv-utils.sh"
+"${TPM2_NV_UTILS}" read "$@"
diff --git a/chromeos-base/chromeos-cr50-scripts/files/tpm2-write-space.sh b/chromeos-base/chromeos-cr50-scripts/files/tpm2-write-space.sh
new file mode 100644
index 0000000..0c04d74
--- /dev/null
+++ b/chromeos-base/chromeos-cr50-scripts/files/tpm2-write-space.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+# 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.
+#
+# Writes given data in hex format to a given index.
+# Example usage: /usr/share/cros/tpm2-write-space.sh 013fff00 ff0123
+
+TPM2_NV_UTILS="/usr/share/cros/tpm2-nv-utils.sh"
+"${TPM2_NV_UTILS}" write "$@"
diff --git a/chromeos-base/chromeos-cr50/Manifest b/chromeos-base/chromeos-cr50/Manifest
index b77ff50..daf900e 100644
--- a/chromeos-base/chromeos-cr50/Manifest
+++ b/chromeos-base/chromeos-cr50/Manifest
@@ -1,2 +1,2 @@
-DIST cr50.r0.0.11.w0.5.30.tbz2 205669 BLAKE2B 5977c3834a06d18b493ce8650e904dbcc9f827ad7b0bcd5a755fbaeee79bde60cfe1b3f60e64458fb9326e224c8e12f8a14e719b37ce5a43398fa09a63535e37 SHA512 2b2150c74078ca7d6d3471890eb014be4b60262a539f64f01d7dbbfa33ed015d736d6f0f4bc4908b7871d4552a3b009e556c9e916a68ba286c8342f60b64524b
-DIST cr50.r0.0.11.w0.6.30_FFFF_00000000_00000010.tbz2 205687 BLAKE2B 9d67bbf8e08183a4ffc9e6f7cbc9f0661b61367379766558def331cbc0380178735fbb4245c73ac5008e92042f33299e396e92bb03ab0d51a73ba4505b2573a3 SHA512 9d85e12e9da8cbfb5852a6e638870741130fed2b6ab9cf08b31ac693b95d24ba8de918aafa85dcacf38f5482d987362a7ddfff5e76389ebfa226934a9a5f4fc3
+DIST cr50.r0.0.11.w0.5.51.tbz2 206282 BLAKE2B b32e7550d2f47f506a64c0af64ea88575ae29c177bfe2c70cdf1dcfd9d446f3460a4689bb184879e1948cbcd9bae31a5847573fba776b787d98158e08b279e4a SHA512 ee0dcb53cd00ac7fb4bb18e31aefa0bb6678e714c3ba22cc11d5cb8ac918d7407ffefa153aedf9cf4d8369ae7725eab9a845fd37ff4acc324a6f349d0b76a2e1
+DIST cr50.r0.0.11.w0.6.51_FFFF_00000000_00000010.tbz2 206313 BLAKE2B ec77a925ddeedba5086720d54e61b9f9330f70f02a2a97be5e3f1ed35ec551d5cb3a8f506525ecb4f659d7a3e3b8991bc52cc3313730642a5d2782ebda65b7fa SHA512 b00af0f2155838adffa6f6b8762fee78ad2e406b04b33869a1a0fce57194a8a25a00b5ce121902a9f794e7a9c54f8f3df6dd9604a542a9dd8235db9a1823e8e4
diff --git a/chromeos-base/chromeos-cr50/chromeos-cr50-0.0.1-r103.ebuild b/chromeos-base/chromeos-cr50/chromeos-cr50-0.0.1-r107.ebuild
similarity index 100%
rename from chromeos-base/chromeos-cr50/chromeos-cr50-0.0.1-r103.ebuild
rename to chromeos-base/chromeos-cr50/chromeos-cr50-0.0.1-r107.ebuild
diff --git a/chromeos-base/chromeos-cr50/chromeos-cr50-0.0.1.ebuild b/chromeos-base/chromeos-cr50/chromeos-cr50-0.0.1.ebuild
index 2990e05..d112791 100644
--- a/chromeos-base/chromeos-cr50/chromeos-cr50-0.0.1.ebuild
+++ b/chromeos-base/chromeos-cr50/chromeos-cr50-0.0.1.ebuild
@@ -17,8 +17,8 @@
 #
 # Some boards can be using their custom Cr50 images, for those board the image
 # name is overridden in the board's overlay chromeos-cr50 ebuild.
-PROD_IMAGE="cr50.r0.0.11.w0.5.30"
-PRE_PVT_IMAGE="cr50.r0.0.11.w0.6.30_FFFF_00000000_00000010"
+PROD_IMAGE="cr50.r0.0.11.w0.5.51"
+PRE_PVT_IMAGE="cr50.r0.0.11.w0.6.51_FFFF_00000000_00000010"
 
 # Let's make sure that both are pulled in and included in the manifest.
 CR50_BASE_NAMES=( "${PROD_IMAGE}" "${PRE_PVT_IMAGE}" )
diff --git a/chromeos-base/chromeos-dbus-bindings/chromeos-dbus-bindings-0.0.1-r2655.ebuild b/chromeos-base/chromeos-dbus-bindings/chromeos-dbus-bindings-0.0.1-r2655.ebuild
deleted file mode 100644
index 79b4e9a..0000000
--- a/chromeos-base/chromeos-dbus-bindings/chromeos-dbus-bindings-0.0.1-r2655.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e8023258ebab0150d1674664c16f6d197136cc8b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk chromeos-dbus-bindings .gn"
-
-PLATFORM_SUBDIR="${PN}"
-PLATFORM_NATIVE_TEST="yes"
-
-inherit cros-workon platform
-
-DESCRIPTION="Utility for building Chrome D-Bus bindings from an XML description"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-dbus-bindings"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-	dev-libs/expat
-	sys-apps/dbus"
-DEPEND="${RDEPEND}"
-
-src_install() {
-	dobin "${OUT}"/generate-chromeos-dbus-bindings
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/chromeos_dbus_bindings_unittest"
-}
diff --git a/chromeos-base/chromeos-dbus-bindings/chromeos-dbus-bindings-0.0.1-r2685.ebuild b/chromeos-base/chromeos-dbus-bindings/chromeos-dbus-bindings-0.0.1-r2685.ebuild
new file mode 100644
index 0000000..2b2e70c
--- /dev/null
+++ b/chromeos-base/chromeos-dbus-bindings/chromeos-dbus-bindings-0.0.1-r2685.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "8753ae37f2abfcd79989d4a4d795bfa11b50816f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk chromeos-dbus-bindings .gn"
+
+PLATFORM_SUBDIR="${PN}"
+PLATFORM_NATIVE_TEST="yes"
+
+inherit cros-workon platform
+
+DESCRIPTION="Utility for building Chrome D-Bus bindings from an XML description"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-dbus-bindings"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+	dev-libs/expat
+	sys-apps/dbus"
+DEPEND="${RDEPEND}"
+
+src_install() {
+	dobin "${OUT}"/generate-chromeos-dbus-bindings
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/chromeos_dbus_bindings_unittest"
+}
diff --git a/chromeos-base/chromeos-dev-root/chromeos-dev-root-0.0.1-r3.ebuild b/chromeos-base/chromeos-dev-root/chromeos-dev-root-0.0.1-r4.ebuild
similarity index 100%
rename from chromeos-base/chromeos-dev-root/chromeos-dev-root-0.0.1-r3.ebuild
rename to chromeos-base/chromeos-dev-root/chromeos-dev-root-0.0.1-r4.ebuild
diff --git a/chromeos-base/chromeos-dev-root/chromeos-dev-root-0.0.1.ebuild b/chromeos-base/chromeos-dev-root/chromeos-dev-root-0.0.1.ebuild
index fe8b887..97b1f23 100644
--- a/chromeos-base/chromeos-dev-root/chromeos-dev-root-0.0.1.ebuild
+++ b/chromeos-base/chromeos-dev-root/chromeos-dev-root-0.0.1.ebuild
@@ -1,7 +1,7 @@
 # Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="4"
+EAPI="7"
 
 DESCRIPTION="Install packages that must live in the rootfs in dev images."
 HOMEPAGE="http://www.chromium.org/"
@@ -12,5 +12,6 @@
 
 RDEPEND="
 	chromeos-base/openssh-server-init
+	chromeos-base/virtual-usb-printer
 	virtual/chromeos-bsp-dev-root
 "
diff --git a/chromeos-base/chromeos-ec-headers/chromeos-ec-headers-0.0.1-r5531.ebuild b/chromeos-base/chromeos-ec-headers/chromeos-ec-headers-0.0.1-r5531.ebuild
deleted file mode 100644
index 0db47d8..0000000
--- a/chromeos-base/chromeos-ec-headers/chromeos-ec-headers-0.0.1-r5531.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 2018 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("ba5d0fb018cf200320efad9cc91b89e1f4a6d80c" "c6095192742c9f59f72a6178ece5a2dd8cea4e43")
-CROS_WORKON_TREE=("ef831ef09b8fdc0da7cceb25def086f853ae97cd" "231827d025fd8a333ffb02249aee9960ae19a701")
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform/ec"
-	"chromiumos/platform/ec"
-)
-CROS_WORKON_LOCALNAME=(
-	"platform/ec"
-	"platform/cr50"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}/platform/ec"
-	"${S}/platform/cr50"
-)
-CROS_WORKON_EGIT_BRANCH=(
-	"master"
-	"cr50_stab"
-)
-
-CROS_WORKON_INCREMENTAL_BUILD=1
-
-inherit cros-workon
-
-DESCRIPTION="Exported headers from the embedded controller codebase."
-HOMEPAGE="https://www.chromium.org/chromium-os/ec-development"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND=""
-DEPEND=""
-
-# No configuration or compilation necessary. This is a header only package.
-src_configure() { :; }
-src_compile() { :; }
-
-src_install() {
-	dir_ec=${CROS_WORKON_DESTDIR[0]}
-	dir_cr50=${CROS_WORKON_DESTDIR[1]}
-
-	insinto /usr/include/trunks/cr50_headers/
-	doins "${dir_cr50}"/include/pinweaver_types.h
-	doins "${dir_cr50}"/include/u2f.h
-	doins "${dir_cr50}"/board/cr50/tpm2/virtual_nvmem.h
-	insinto /usr/include/chromeos/ec/
-	doins "${dir_ec}"/include/ec_commands.h
-	doins "${dir_ec}"/util/cros_ec_dev.h
-}
diff --git a/chromeos-base/chromeos-ec-headers/chromeos-ec-headers-0.0.1-r6419.ebuild b/chromeos-base/chromeos-ec-headers/chromeos-ec-headers-0.0.1-r6419.ebuild
new file mode 100644
index 0000000..8609bc9
--- /dev/null
+++ b/chromeos-base/chromeos-ec-headers/chromeos-ec-headers-0.0.1-r6419.ebuild
@@ -0,0 +1,56 @@
+# Copyright 2018 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("ebe1007d3dc274b2f7eb34cdae12ab7b1de41553" "1ad3e00b6c6e67676d5a1de9689c18bfca31aa1a")
+CROS_WORKON_TREE=("487f8c8dfadd10d92f8b7667566bda64d9e36726" "4b2d98b4fa1452c25ee79c4eed04c730712b5bf8")
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform/ec"
+	"chromiumos/platform/ec"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform/ec"
+	"platform/cr50"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}/platform/ec"
+	"${S}/platform/cr50"
+)
+CROS_WORKON_EGIT_BRANCH=(
+	"master"
+	"cr50_stab"
+)
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+
+inherit cros-workon
+
+DESCRIPTION="Exported headers from the embedded controller codebase."
+HOMEPAGE="https://www.chromium.org/chromium-os/ec-development"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND=""
+DEPEND=""
+
+# No configuration or compilation necessary. This is a header only package.
+src_configure() { :; }
+src_compile() { :; }
+
+src_install() {
+	dir_ec=${CROS_WORKON_DESTDIR[0]}
+	dir_cr50=${CROS_WORKON_DESTDIR[1]}
+
+	insinto /usr/include/trunks/cr50_headers/
+	doins "${dir_cr50}"/include/pinweaver_types.h
+	doins "${dir_cr50}"/include/u2f.h
+	doins "${dir_cr50}"/board/cr50/tpm2/virtual_nvmem.h
+	insinto /usr/include/chromeos/ec/
+	doins "${dir_ec}"/include/ec_commands.h
+	doins "${dir_ec}"/util/cros_ec_dev.h
+}
diff --git a/chromeos-base/chromeos-ec/chromeos-ec-0.0.2-r10238.ebuild b/chromeos-base/chromeos-ec/chromeos-ec-0.0.2-r10238.ebuild
deleted file mode 100644
index 6031824..0000000
--- a/chromeos-base/chromeos-ec/chromeos-ec-0.0.2-r10238.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright (C) 2012 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.makefile file.
-
-# A note about this ebuild: this ebuild is Unified Build enabled but
-# not in the way in which most other ebuilds with Unified Build
-# knowledge are: the primary use for this ebuild is for engineer-local
-# work or firmware builder work. In both cases, the build might be
-# happening on a branch in which only one of many of the models are
-# available to build. The logic in this ebuild succeeds so long as one
-# of the many models successfully builds.
-
-# Increment the "eclass bug workaround count" below when you change
-# "cros-ec.eclass" to work around http://crbug.com/220902.
-#
-# eclass bug workaround count: 2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("ba5d0fb018cf200320efad9cc91b89e1f4a6d80c" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
-CROS_WORKON_TREE=("ef831ef09b8fdc0da7cceb25def086f853ae97cd" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform/ec"
-	"chromiumos/third_party/cryptoc"
-)
-CROS_WORKON_LOCALNAME=(
-	"platform/ec"
-	"third_party/cryptoc"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}/platform/ec"
-	"${S}/third_party/cryptoc"
-)
-
-inherit cros-ec cros-workon
-
-# Make sure config tools use the latest schema.
-BDEPEND=">=chromeos-base/chromeos-config-host-0.0.2"
-
-MIRROR_PATH="gs://chromeos-localmirror/distfiles/"
-DESCRIPTION="Embedded Controller firmware code"
-KEYWORDS="*"
-
-# Restrict strip because chromeos-ec package installs unstrippable firmware.
-RESTRICT="strip"
diff --git a/chromeos-base/chromeos-ec/chromeos-ec-0.0.2-r11056.ebuild b/chromeos-base/chromeos-ec/chromeos-ec-0.0.2-r11056.ebuild
new file mode 100644
index 0000000..d09e68c
--- /dev/null
+++ b/chromeos-base/chromeos-ec/chromeos-ec-0.0.2-r11056.ebuild
@@ -0,0 +1,45 @@
+# Copyright (C) 2012 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.makefile file.
+
+# A note about this ebuild: this ebuild is Unified Build enabled but
+# not in the way in which most other ebuilds with Unified Build
+# knowledge are: the primary use for this ebuild is for engineer-local
+# work or firmware builder work. In both cases, the build might be
+# happening on a branch in which only one of many of the models are
+# available to build. The logic in this ebuild succeeds so long as one
+# of the many models successfully builds.
+
+# Increment the "eclass bug workaround count" below when you change
+# "cros-ec.eclass" to work around http://crbug.com/220902.
+#
+# eclass bug workaround count: 2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("ebe1007d3dc274b2f7eb34cdae12ab7b1de41553" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
+CROS_WORKON_TREE=("487f8c8dfadd10d92f8b7667566bda64d9e36726" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform/ec"
+	"chromiumos/third_party/cryptoc"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform/ec"
+	"third_party/cryptoc"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}/platform/ec"
+	"${S}/third_party/cryptoc"
+)
+
+inherit cros-ec cros-workon
+
+# Make sure config tools use the latest schema.
+BDEPEND=">=chromeos-base/chromeos-config-host-0.0.2"
+
+MIRROR_PATH="gs://chromeos-localmirror/distfiles/"
+DESCRIPTION="Embedded Controller firmware code"
+KEYWORDS="*"
+
+# Restrict strip because chromeos-ec package installs unstrippable firmware.
+RESTRICT="strip"
diff --git a/chromeos-base/chromeos-firmware-null/chromeos-firmware-null-0.0.3-r162.ebuild b/chromeos-base/chromeos-firmware-null/chromeos-firmware-null-0.0.3-r162.ebuild
deleted file mode 100644
index 47c2c76..0000000
--- a/chromeos-base/chromeos-firmware-null/chromeos-firmware-null-0.0.3-r162.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="07591e49e9dd9b33b49b0e791feecb5cb8d6dee0"
-CROS_WORKON_TREE="6f2eebf22cd242e9c01723dd03405fdd47e15478"
-CROS_WORKON_LOCALNAME="platform/firmware"
-CROS_WORKON_PROJECT="chromiumos/platform/firmware"
-
-inherit cros-workon cros-firmware
-
-DESCRIPTION="Chrome OS Firmware (Template - change to board name)"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/firmware/"
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND=""
-
-### FIRMWARE IMAGES ###
-# Specify the firmware images to update. You can use file path or URLs (in
-# ebuild SRC_URI syntax). Most projects will use Binary Component Server (BCS)
-# links. To do that, archive only the image file as a tbz2 and upload to CPFE
-# web site (http://www.google.com/chromeos/partner/fe/) with relative path
-# chromeos-base/chromeos-firmware-${BOARD}. Then you can refer to the file as
-# "bcs://filename.tbz2".
-#
-# MAIN_IMAGE controls AP RO firmware (also RW if MAIN_RW_IMAGE is empty).
-# MAIN_RW_IMAGE controls AP RW firmware when you need different RO & RW.
-# EC_IMAGE controls EC RO firmware (RW will be synced from MAIN_[RW_]IMAGE).
-# For more details, read
-# https://chromium.googlesource.com/chromiumos/platform/firmware/+/master/README.md
-#
-# When you modify any image files below, please also update manifest file:
-#  (chroot) ebuild chromeos-firmware-${BOARD}-9999.ebuild manifest
-CROS_FIRMWARE_MAIN_IMAGE=""
-CROS_FIRMWARE_MAIN_RW_IMAGE=""
-CROS_FIRMWARE_EC_IMAGE=""
-
-### EXTRA FILES ###
-# ${FILESDIR}/extra will be automatically merged into updater package.
-# ${FILESDIR}/sbin will be automatically installed to /usr/sbin on rootfs.
-# Put board customization (updater_custom.sh) in ${FILESDIR}/extra.
-# If you need more files, define a CROS_FIRMWARE_EXTRA_LIST with the file names
-# and directory names to include, delimited by semicolon.
-
-cros-firmware_setup_source
-
-# Remove/Adapt script below here when using the template.
-src_unpack() {
-	einfo "Dummy implementation to replace cros-firmware.eclass"
-	cros-workon_src_unpack
-}
-
-src_compile() {
-	einfo "Dummy implementation to replace cros-firmware.eclass"
-}
-
-src_install() {
-	einfo "Dummy implementation to replace cros-firmware.eclass"
-}
diff --git a/chromeos-base/chromeos-firmware-null/chromeos-firmware-null-0.0.3-r163.ebuild b/chromeos-base/chromeos-firmware-null/chromeos-firmware-null-0.0.3-r163.ebuild
new file mode 100644
index 0000000..99fc707
--- /dev/null
+++ b/chromeos-base/chromeos-firmware-null/chromeos-firmware-null-0.0.3-r163.ebuild
@@ -0,0 +1,61 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="024be235384d78ef3a2ab7d5e2b3bca604f5c3c7"
+CROS_WORKON_TREE="449aa2699c92e601b0850e8ceb1ce708be542a95"
+CROS_WORKON_LOCALNAME="platform/firmware"
+CROS_WORKON_PROJECT="chromiumos/platform/firmware"
+
+inherit cros-workon cros-firmware
+
+DESCRIPTION="Chrome OS Firmware (Template - change to board name)"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/firmware/"
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND=""
+
+### FIRMWARE IMAGES ###
+# Specify the firmware images to update. You can use file path or URLs (in
+# ebuild SRC_URI syntax). Most projects will use Binary Component Server (BCS)
+# links. To do that, archive only the image file as a tbz2 and upload to CPFE
+# web site (http://www.google.com/chromeos/partner/fe/) with relative path
+# chromeos-base/chromeos-firmware-${BOARD}. Then you can refer to the file as
+# "bcs://filename.tbz2".
+#
+# MAIN_IMAGE controls AP RO firmware (also RW if MAIN_RW_IMAGE is empty).
+# MAIN_RW_IMAGE controls AP RW firmware when you need different RO & RW.
+# EC_IMAGE controls EC RO firmware (RW will be synced from MAIN_[RW_]IMAGE).
+# For more details, read
+# https://chromium.googlesource.com/chromiumos/platform/firmware/+/master/README.md
+#
+# When you modify any image files below, please also update manifest file:
+#  (chroot) ebuild chromeos-firmware-${BOARD}-9999.ebuild manifest
+CROS_FIRMWARE_MAIN_IMAGE=""
+CROS_FIRMWARE_MAIN_RW_IMAGE=""
+CROS_FIRMWARE_EC_IMAGE=""
+
+### EXTRA FILES ###
+# ${FILESDIR}/extra will be automatically merged into updater package.
+# ${FILESDIR}/sbin will be automatically installed to /usr/sbin on rootfs.
+# Put board customization (updater_custom.sh) in ${FILESDIR}/extra.
+# If you need more files, define a CROS_FIRMWARE_EXTRA_LIST with the file names
+# and directory names to include, delimited by semicolon.
+
+cros-firmware_setup_source
+
+# Remove/Adapt script below here when using the template.
+src_unpack() {
+	einfo "Dummy implementation to replace cros-firmware.eclass"
+	cros-workon_src_unpack
+}
+
+src_compile() {
+	einfo "Dummy implementation to replace cros-firmware.eclass"
+}
+
+src_install() {
+	einfo "Dummy implementation to replace cros-firmware.eclass"
+}
diff --git a/chromeos-base/chromeos-fonts/chromeos-fonts-0.0.1-r48.ebuild b/chromeos-base/chromeos-fonts/chromeos-fonts-0.0.1-r49.ebuild
similarity index 100%
rename from chromeos-base/chromeos-fonts/chromeos-fonts-0.0.1-r48.ebuild
rename to chromeos-base/chromeos-fonts/chromeos-fonts-0.0.1-r49.ebuild
diff --git a/chromeos-base/chromeos-fpmcu-unittests/chromeos-fpmcu-unittests-0.0.1-r2095.ebuild b/chromeos-base/chromeos-fpmcu-unittests/chromeos-fpmcu-unittests-0.0.1-r2095.ebuild
deleted file mode 100644
index 044b21e..0000000
--- a/chromeos-base/chromeos-fpmcu-unittests/chromeos-fpmcu-unittests-0.0.1-r2095.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 2020 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.makefile file.
-
-# Increment the "eclass bug workaround count" below when you change
-# "cros-ec.eclass" to work around http://crbug.com/220902.
-#
-# eclass bug workaround count: 1
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("ba5d0fb018cf200320efad9cc91b89e1f4a6d80c" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
-CROS_WORKON_TREE=("ef831ef09b8fdc0da7cceb25def086f853ae97cd" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform/ec"
-	"chromiumos/third_party/cryptoc"
-)
-CROS_WORKON_LOCALNAME=(
-	"platform/ec"
-	"third_party/cryptoc"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}/platform/ec"
-	"${S}/third_party/cryptoc"
-)
-
-inherit coreboot-sdk cros-ec cros-workon
-
-DESCRIPTION="ChromeOS fingerprint MCU unittest binaries"
-KEYWORDS="*"
-
-# Make sure config tools use the latest schema.
-BDEPEND=">=chromeos-base/chromeos-config-host-0.0.2"
-
-get_target_boards() {
-	# TODO(yichengli): Add other FPMCUs once the test lab has them.
-	EC_BOARDS=("bloonchipper")
-}
-
-src_compile() {
-	cros-ec_set_build_env
-	get_target_boards
-
-	# TODO(yichengli): Add other FPMCU boards once the test lab has them.
-	# NOTE: Any changes here must also be reflected in
-	# platform/ec/firmware_builder.py which is used for the ec cq
-	local target
-	einfo "Building FPMCU unittest binary for targets: ${EC_BOARDS[*]}"
-	for target in "${EC_BOARDS[@]}"; do
-		emake CROSS_COMPILE="${COREBOOT_SDK_PREFIX_arm}" BOARD="${target}" \
-			"${EC_OPTS[@]}" clean
-		emake CROSS_COMPILE="${COREBOOT_SDK_PREFIX_arm}" BOARD="${target}" \
-			"${EC_OPTS[@]}" tests
-	done
-}
-
-src_install() {
-	local target
-	for target in "${EC_BOARDS[@]}"; do
-		insinto /firmware/chromeos-fpmcu-unittests/"${target}"
-		doins build/"${target}"/*.bin
-	done
-}
-
-# Do not run cros-ec's tests.
-src_test() {
-	:
-}
diff --git a/chromeos-base/chromeos-fpmcu-unittests/chromeos-fpmcu-unittests-0.0.1-r2913.ebuild b/chromeos-base/chromeos-fpmcu-unittests/chromeos-fpmcu-unittests-0.0.1-r2913.ebuild
new file mode 100644
index 0000000..13decd4
--- /dev/null
+++ b/chromeos-base/chromeos-fpmcu-unittests/chromeos-fpmcu-unittests-0.0.1-r2913.ebuild
@@ -0,0 +1,68 @@
+# Copyright 2020 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.makefile file.
+
+# Increment the "eclass bug workaround count" below when you change
+# "cros-ec.eclass" to work around http://crbug.com/220902.
+#
+# eclass bug workaround count: 1
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("ebe1007d3dc274b2f7eb34cdae12ab7b1de41553" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
+CROS_WORKON_TREE=("487f8c8dfadd10d92f8b7667566bda64d9e36726" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform/ec"
+	"chromiumos/third_party/cryptoc"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform/ec"
+	"third_party/cryptoc"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}/platform/ec"
+	"${S}/third_party/cryptoc"
+)
+
+inherit coreboot-sdk cros-ec cros-workon
+
+DESCRIPTION="ChromeOS fingerprint MCU unittest binaries"
+KEYWORDS="*"
+
+# Make sure config tools use the latest schema.
+BDEPEND=">=chromeos-base/chromeos-config-host-0.0.2"
+
+get_target_boards() {
+	# TODO(yichengli): Add other FPMCUs once the test lab has them.
+	EC_BOARDS=("bloonchipper")
+}
+
+src_compile() {
+	cros-ec_set_build_env
+	get_target_boards
+
+	# TODO(yichengli): Add other FPMCU boards once the test lab has them.
+	# NOTE: Any changes here must also be reflected in
+	# platform/ec/firmware_builder.py which is used for the ec cq
+	local target
+	einfo "Building FPMCU unittest binary for targets: ${EC_BOARDS[*]}"
+	for target in "${EC_BOARDS[@]}"; do
+		emake CROSS_COMPILE="${COREBOOT_SDK_PREFIX_arm}" BOARD="${target}" \
+			"${EC_OPTS[@]}" clean
+		emake CROSS_COMPILE="${COREBOOT_SDK_PREFIX_arm}" BOARD="${target}" \
+			"${EC_OPTS[@]}" tests
+	done
+}
+
+src_install() {
+	local target
+	for target in "${EC_BOARDS[@]}"; do
+		insinto /firmware/chromeos-fpmcu-unittests/"${target}"
+		doins build/"${target}"/*.bin
+	done
+}
+
+# Do not run cros-ec's tests.
+src_test() {
+	:
+}
diff --git a/chromeos-base/chromeos-imageburner/chromeos-imageburner-0.0.1-r3133.ebuild b/chromeos-base/chromeos-imageburner/chromeos-imageburner-0.0.1-r3133.ebuild
deleted file mode 100644
index 0086651..0000000
--- a/chromeos-base/chromeos-imageburner/chromeos-imageburner-0.0.1-r3133.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "78bbddcb5c152ba63cb9408b189179ad60cfd2bc" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk image-burner .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="image-burner"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Image-burning service for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/image-burner/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="user_session_isolation"
-
-RDEPEND="
-	sys-apps/rootdev
-"
-DEPEND="${RDEPEND}
-	chromeos-base/system_api
-"
-
-pkg_preinst() {
-	# Create user and group for image-burner.
-	enewuser "image-burner"
-	enewgroup "image-burner"
-}
-
-src_install() {
-	dosbin "${OUT}"/image_burner
-
-	insinto /etc/dbus-1/system.d
-	doins ImageBurner.conf
-
-	insinto /usr/share/dbus-1/system-services
-	doins org.chromium.ImageBurner.service
-
-	insinto /etc/init
-	doins init/image-burner.conf
-
-	# TODO(crbug/766130): Remove the following sed block when non-root mount
-	# namespace is by default enabled.
-	# Remove the env var value related to mount namespace if USE flag
-	# user_session_isolation is not present.
-	if ! use user_session_isolation; then
-		sed -i -e "/env MNT_NS_ARGS=/s:=.*:=:" \
-			"${D}"/etc/init/image-burner.conf || die
-	fi
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/unittest_runner"
-}
diff --git a/chromeos-base/chromeos-imageburner/chromeos-imageburner-0.0.1-r3158.ebuild b/chromeos-base/chromeos-imageburner/chromeos-imageburner-0.0.1-r3158.ebuild
new file mode 100644
index 0000000..3a6830b
--- /dev/null
+++ b/chromeos-base/chromeos-imageburner/chromeos-imageburner-0.0.1-r3158.ebuild
@@ -0,0 +1,63 @@
+# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "78bbddcb5c152ba63cb9408b189179ad60cfd2bc" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk image-burner .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="image-burner"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Image-burning service for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/image-burner/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="user_session_isolation"
+
+RDEPEND="
+	sys-apps/rootdev
+"
+DEPEND="${RDEPEND}
+	chromeos-base/system_api
+"
+
+pkg_preinst() {
+	# Create user and group for image-burner.
+	enewuser "image-burner"
+	enewgroup "image-burner"
+}
+
+src_install() {
+	dosbin "${OUT}"/image_burner
+
+	insinto /etc/dbus-1/system.d
+	doins ImageBurner.conf
+
+	insinto /usr/share/dbus-1/system-services
+	doins org.chromium.ImageBurner.service
+
+	insinto /etc/init
+	doins init/image-burner.conf
+
+	# TODO(crbug/766130): Remove the following sed block when non-root mount
+	# namespace is by default enabled.
+	# Remove the env var value related to mount namespace if USE flag
+	# user_session_isolation is not present.
+	if ! use user_session_isolation; then
+		sed -i -e "/env MNT_NS_ARGS=/s:=.*:=:" \
+			"${D}"/etc/init/image-burner.conf || die
+	fi
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/unittest_runner"
+}
diff --git a/chromeos-base/chromeos-init/chromeos-init-0.0.25-r4299.ebuild b/chromeos-base/chromeos-init/chromeos-init-0.0.25-r4299.ebuild
deleted file mode 100644
index 97fa94e..0000000
--- a/chromeos-base/chromeos-init/chromeos-init-0.0.25-r4299.ebuild
+++ /dev/null
@@ -1,240 +0,0 @@
-# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="04062a724af44093e07dca4ecc0fddeb952da690"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "895c06f0f8e72deaf75137b0c309d0d15da65e21" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-# TODO(crbug.com/809389): Avoid #include-ing platform2 headers directly.
-CROS_WORKON_SUBTREE="common-mk init metrics .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="init"
-
-inherit tmpfiles cros-workon platform user
-
-DESCRIPTION="Upstart init scripts for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/init/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="
-	arcpp arcvm cros_embedded +debugd +encrypted_stateful +encrypted_reboot_vault
-	frecon lvm_stateful_partition kernel-3_18 +midi -s3halt +syslog systemd
-	+udev vivid vtconsole"
-
-# secure-erase-file, vboot_reference, and rootdev are needed for clobber-state.
-COMMON_DEPEND="
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/secure-erase-file:=
-	chromeos-base/vboot_reference:=
-	sys-apps/rootdev:=
-"
-
-DEPEND="${COMMON_DEPEND}
-	test? (
-		sys-process/psmisc
-		dev-util/shflags
-		dev-util/shunit2
-		sys-apps/diffutils
-	)
-"
-
-RDEPEND="${COMMON_DEPEND}
-	app-arch/tar
-	app-misc/jq
-	chromeos-base/bootstat
-	!chromeos-base/chromeos-disableecho
-	chromeos-base/chromeos-common-script
-	chromeos-base/tty
-	sys-apps/upstart
-	!systemd? ( sys-apps/systemd-tmpfiles )
-	sys-process/lsof
-	virtual/chromeos-bootcomplete
-	!cros_embedded? (
-		chromeos-base/common-assets
-		chromeos-base/chromeos-storage-info
-		chromeos-base/swap-init
-		sys-fs/e2fsprogs
-	)
-	frecon? (
-		sys-apps/frecon
-	)
-"
-
-platform_pkg_test() {
-	local shell_tests=(
-		killers_unittest
-		tests/chromeos-disk-metrics-test.sh
-		tests/send-kernel-errors-test.sh
-	)
-
-	local test_bin
-	for test_bin in "${shell_tests[@]}"; do
-		platform_test "run" "./${test_bin}"
-	done
-
-	local cpp_tests=(
-		clobber_state_test
-		file_attrs_cleaner_test
-		periodic_scheduler_test
-		usermode-helper_test
-	)
-
-	for test_bin in "${cpp_tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
-
-src_install_upstart() {
-	insinto /etc/init
-
-	if use cros_embedded; then
-		doins upstart/startup.conf
-		dotmpfiles tmpfiles.d/chromeos.conf
-		doins upstart/embedded-init/boot-services.conf
-
-		doins upstart/report-boot-complete.conf
-		doins upstart/failsafe-delay.conf upstart/failsafe.conf
-		doins upstart/pre-shutdown.conf upstart/pre-startup.conf
-		doins upstart/pstore.conf upstart/reboot.conf
-		doins upstart/system-services.conf
-		doins upstart/uinput.conf
-		doins upstart/sysrq-init.conf
-
-		if use syslog; then
-			doins upstart/collect-early-logs.conf
-			doins upstart/log-rotate.conf upstart/syslog.conf
-			dotmpfiles tmpfiles.d/syslog.conf
-		fi
-		if use !systemd; then
-			doins upstart/cgroups.conf
-			doins upstart/dbus.conf
-			dotmpfiles tmpfiles.d/dbus.conf
-			if use udev; then
-				doins upstart/udev*.conf
-			fi
-		fi
-		if use frecon; then
-			doins upstart/boot-splash.conf
-		fi
-	else
-		doins upstart/*.conf
-		dotmpfiles tmpfiles.d/*.conf
-
-		if ! use arcpp && use arcvm; then
-			sed -i '/^env IS_ARCVM=/s:=0:=1:' \
-				"${D}/etc/init/rt-limits.conf" || \
-				die "Failed to replace is_arcvm in rt-limits.conf"
-		fi
-
-		dosbin chromeos-disk-metrics
-		dosbin chromeos-send-kernel-errors
-		dosbin display_low_battery_alert
-	fi
-
-	if ! use debugd; then
-		sed -i '/^env PSTORE_GROUP=/s:=.*:=root:' \
-			"${D}/etc/init/pstore.conf" || \
-			die "Failed to replace PSTORE_GROUP in pstore.conf"
-	fi
-
-	if use midi; then
-		if use kernel-3_18; then
-			doins upstart/workaround-init/midi-workaround.conf
-		fi
-	fi
-
-	if use s3halt; then
-		newins upstart/halt/s3halt.conf halt.conf
-	else
-		doins upstart/halt/halt.conf
-	fi
-
-	if use vivid; then
-		doins upstart/vivid/vivid.conf
-	fi
-
-	use vtconsole && doins upstart/vtconsole/*.conf
-}
-
-src_install() {
-	# Install helper to run periodic tasks.
-	dobin "${OUT}"/periodic_scheduler
-
-	if use syslog; then
-		# Install log cleaning script and run it daily.
-		dosbin chromeos-cleanup-logs
-
-		insinto /etc
-		doins rsyslog.chromeos
-	fi
-
-	insinto /usr/share/cros
-	doins *_utils.sh
-
-	exeinto /usr/share/cros/init
-	doexe is_feature_enabled.sh
-
-	into /	# We want /sbin, not /usr/sbin, etc.
-
-	# Install various utility files.
-	dosbin killers
-
-	# Install various helper programs.
-	dosbin "${OUT}"/cros_sysrq_init
-	dosbin "${OUT}"/static_node_tool
-	dosbin "${OUT}"/net_poll_tool
-	dosbin "${OUT}"/file_attrs_cleaner_tool
-	dosbin "${OUT}"/usermode-helper
-
-	# Install startup/shutdown scripts.
-	dosbin chromeos_startup chromeos_shutdown
-
-	# Disable encrypted reboot vault if it is not used.
-	if ! use encrypted_reboot_vault; then
-		sed -i '/USE_ENCRYPTED_REBOOT_VAULT=/s:=1:=0:' \
-			"${D}/sbin/chromeos_startup" ||
-			die "Failed to replace USE_ENCRYPTED_REBOOT_VAULT in chromeos_startup"
-	fi
-
-	# Enable lvm stateful partition.
-	if use lvm_stateful_partition; then
-		sed -i '/USE_LVM_STATEFUL_PARTITION=/s:=0:=1:' \
-			"${D}/sbin/chromeos_startup" ||
-			die "Failed to replace USE_LVM_STATEFUL_PARTITION in chromeos_startup"
-	fi
-
-	dosbin "${OUT}"/clobber-state
-
-	dosbin clobber-log
-	dosbin chromeos-boot-alert
-
-	# Install Upstart scripts.
-	src_install_upstart
-
-	insinto /usr/share/cros
-	doins $(usex encrypted_stateful encrypted_stateful \
-		unencrypted_stateful)/startup_utils.sh
-
-	# Install LVM conf files.
-	insinto /etc/lvm
-	doins lvm.conf
-}
-
-pkg_preinst() {
-	# Add the syslog user
-	enewuser syslog
-	enewgroup syslog
-
-	# Create debugfs-access user and group, which is needed by the
-	# chromeos_startup script to mount /sys/kernel/debug.  This is needed
-	# by bootstat and ureadahead.
-	enewuser "debugfs-access"
-	enewgroup "debugfs-access"
-}
diff --git a/chromeos-base/chromeos-init/chromeos-init-0.0.25-r4368.ebuild b/chromeos-base/chromeos-init/chromeos-init-0.0.25-r4368.ebuild
new file mode 100644
index 0000000..db3ea54
--- /dev/null
+++ b/chromeos-base/chromeos-init/chromeos-init-0.0.25-r4368.ebuild
@@ -0,0 +1,238 @@
+# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "110abcb177aa416db1624787c2423746d7afe9b5" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+# TODO(crbug.com/809389): Avoid #include-ing platform2 headers directly.
+CROS_WORKON_SUBTREE="common-mk init metrics .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="init"
+
+inherit tmpfiles cros-workon platform user
+
+DESCRIPTION="Upstart init scripts for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/init/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="
+	arcpp arcvm cros_embedded +encrypted_stateful +encrypted_reboot_vault
+	frecon lvm_stateful_partition kernel-3_18 +midi +oobe_config -s3halt +syslog
+	systemd +udev vivid vtconsole"
+
+# secure-erase-file, vboot_reference, and rootdev are needed for clobber-state.
+COMMON_DEPEND="
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/secure-erase-file:=
+	chromeos-base/vboot_reference:=
+	sys-apps/rootdev:=
+"
+
+DEPEND="${COMMON_DEPEND}
+	test? (
+		sys-process/psmisc
+		dev-util/shflags
+		dev-util/shunit2
+		sys-apps/diffutils
+	)
+"
+
+RDEPEND="${COMMON_DEPEND}
+	app-arch/tar
+	app-misc/jq
+	chromeos-base/bootstat
+	!chromeos-base/chromeos-disableecho
+	chromeos-base/chromeos-common-script
+	chromeos-base/tty
+	oobe_config? ( chromeos-base/oobe_config )
+	sys-apps/upstart
+	!systemd? ( sys-apps/systemd-tmpfiles )
+	sys-process/lsof
+	virtual/chromeos-bootcomplete
+	!cros_embedded? (
+		chromeos-base/common-assets
+		chromeos-base/chromeos-storage-info
+		chromeos-base/swap-init
+		sys-fs/e2fsprogs
+	)
+	frecon? (
+		sys-apps/frecon
+	)
+"
+
+platform_pkg_test() {
+	local shell_tests=(
+		killers_unittest
+		tests/chromeos-disk-metrics-test.sh
+		tests/send-kernel-errors-test.sh
+	)
+
+	local test_bin
+	for test_bin in "${shell_tests[@]}"; do
+		platform_test "run" "./${test_bin}"
+	done
+
+	local cpp_tests=(
+		clobber_state_test
+		file_attrs_cleaner_test
+		periodic_scheduler_test
+		usermode-helper_test
+	)
+
+	for test_bin in "${cpp_tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
+
+src_install_upstart() {
+	insinto /etc/init
+
+	if use cros_embedded; then
+		doins upstart/startup.conf
+		dotmpfiles tmpfiles.d/chromeos.conf
+		doins upstart/embedded-init/boot-services.conf
+
+		doins upstart/report-boot-complete.conf
+		doins upstart/failsafe-delay.conf upstart/failsafe.conf
+		doins upstart/pre-shutdown.conf upstart/pre-startup.conf
+		doins upstart/pstore.conf upstart/reboot.conf
+		doins upstart/system-services.conf
+		doins upstart/uinput.conf
+		doins upstart/sysrq-init.conf
+
+		if use syslog; then
+			doins upstart/collect-early-logs.conf
+			doins upstart/log-rotate.conf upstart/syslog.conf
+			dotmpfiles tmpfiles.d/syslog.conf
+		fi
+		if use !systemd; then
+			doins upstart/cgroups.conf
+			doins upstart/dbus.conf
+			dotmpfiles tmpfiles.d/dbus.conf
+			if use udev; then
+				doins upstart/udev*.conf
+			fi
+		fi
+		if use frecon; then
+			doins upstart/boot-splash.conf
+		fi
+	else
+		doins upstart/*.conf
+		dotmpfiles tmpfiles.d/*.conf
+
+		if ! use arcpp && use arcvm; then
+			sed -i '/^env IS_ARCVM=/s:=0:=1:' \
+				"${D}/etc/init/rt-limits.conf" || \
+				die "Failed to replace is_arcvm in rt-limits.conf"
+		fi
+
+		dosbin chromeos-disk-metrics
+		dosbin chromeos-send-kernel-errors
+		dosbin display_low_battery_alert
+	fi
+
+	if use midi; then
+		if use kernel-3_18; then
+			doins upstart/workaround-init/midi-workaround.conf
+		fi
+	fi
+
+	if use s3halt; then
+		newins upstart/halt/s3halt.conf halt.conf
+	else
+		doins upstart/halt/halt.conf
+	fi
+
+	if use vivid; then
+		doins upstart/vivid/vivid.conf
+	fi
+
+	use vtconsole && doins upstart/vtconsole/*.conf
+}
+
+src_install() {
+	# Install helper to run periodic tasks.
+	dobin "${OUT}"/periodic_scheduler
+
+	if use syslog; then
+		# Install log cleaning script and run it daily.
+		dosbin chromeos-cleanup-logs
+
+		insinto /etc
+		doins rsyslog.chromeos
+	fi
+
+	insinto /usr/share/cros
+	doins *_utils.sh
+
+	exeinto /usr/share/cros/init
+	doexe is_feature_enabled.sh
+
+	into /	# We want /sbin, not /usr/sbin, etc.
+
+	# Install various utility files.
+	dosbin killers
+
+	# Install various helper programs.
+	dosbin "${OUT}"/cros_sysrq_init
+	dosbin "${OUT}"/static_node_tool
+	dosbin "${OUT}"/net_poll_tool
+	dosbin "${OUT}"/file_attrs_cleaner_tool
+	dosbin "${OUT}"/usermode-helper
+
+	# Install startup/shutdown scripts.
+	dosbin chromeos_startup chromeos_shutdown
+
+	# Disable encrypted reboot vault if it is not used.
+	if ! use encrypted_reboot_vault; then
+		sed -i '/USE_ENCRYPTED_REBOOT_VAULT=/s:=1:=0:' \
+			"${D}/sbin/chromeos_startup" ||
+			die "Failed to replace USE_ENCRYPTED_REBOOT_VAULT in chromeos_startup"
+	fi
+
+	# Enable lvm stateful partition.
+	if use lvm_stateful_partition; then
+		sed -i '/USE_LVM_STATEFUL_PARTITION=/s:=0:=1:' \
+			"${D}/sbin/chromeos_startup" ||
+			die "Failed to replace USE_LVM_STATEFUL_PARTITION in chromeos_startup"
+	fi
+
+	dosbin "${OUT}"/clobber-state
+
+	dosbin clobber-log
+	dosbin chromeos-boot-alert
+
+	# Install Upstart scripts.
+	src_install_upstart
+
+	insinto /usr/share/cros
+	doins $(usex encrypted_stateful encrypted_stateful \
+		unencrypted_stateful)/startup_utils.sh
+
+	# Install LVM conf files.
+	insinto /etc/lvm
+	doins lvm.conf
+}
+
+pkg_preinst() {
+	# Add the syslog user
+	enewuser syslog
+	enewgroup syslog
+
+	# Create debugfs-access user and group, which is needed by the
+	# chromeos_startup script to mount /sys/kernel/debug.  This is needed
+	# by bootstat and ureadahead.
+	enewuser "debugfs-access"
+	enewgroup "debugfs-access"
+
+	# Create pstore-access group.
+	enewgroup pstore-access
+}
diff --git a/chromeos-base/chromeos-init/chromeos-init-9999.ebuild b/chromeos-base/chromeos-init/chromeos-init-9999.ebuild
index f0fc69b..0b5b716 100644
--- a/chromeos-base/chromeos-init/chromeos-init-9999.ebuild
+++ b/chromeos-base/chromeos-init/chromeos-init-9999.ebuild
@@ -22,9 +22,9 @@
 SLOT="0/0"
 KEYWORDS="~*"
 IUSE="
-	arcpp arcvm cros_embedded +debugd +encrypted_stateful +encrypted_reboot_vault
-	frecon lvm_stateful_partition kernel-3_18 +midi -s3halt +syslog systemd
-	+udev vivid vtconsole"
+	arcpp arcvm cros_embedded +encrypted_stateful +encrypted_reboot_vault
+	frecon lvm_stateful_partition kernel-3_18 +midi +oobe_config -s3halt +syslog
+	systemd +udev vivid vtconsole"
 
 # secure-erase-file, vboot_reference, and rootdev are needed for clobber-state.
 COMMON_DEPEND="
@@ -50,6 +50,7 @@
 	!chromeos-base/chromeos-disableecho
 	chromeos-base/chromeos-common-script
 	chromeos-base/tty
+	oobe_config? ( chromeos-base/oobe_config )
 	sys-apps/upstart
 	!systemd? ( sys-apps/systemd-tmpfiles )
 	sys-process/lsof
@@ -136,12 +137,6 @@
 		dosbin display_low_battery_alert
 	fi
 
-	if ! use debugd; then
-		sed -i '/^env PSTORE_GROUP=/s:=.*:=root:' \
-			"${D}/etc/init/pstore.conf" || \
-			die "Failed to replace PSTORE_GROUP in pstore.conf"
-	fi
-
 	if use midi; then
 		if use kernel-3_18; then
 			doins upstart/workaround-init/midi-workaround.conf
@@ -235,4 +230,7 @@
 	# by bootstat and ureadahead.
 	enewuser "debugfs-access"
 	enewgroup "debugfs-access"
+
+	# Create pstore-access group.
+	enewgroup pstore-access
 }
diff --git a/chromeos-base/chromeos-initramfs/chromeos-initramfs-0.0.1-r429.ebuild b/chromeos-base/chromeos-initramfs/chromeos-initramfs-0.0.1-r429.ebuild
deleted file mode 100644
index 6c7839c..0000000
--- a/chromeos-base/chromeos-initramfs/chromeos-initramfs-0.0.1-r429.ebuild
+++ /dev/null
@@ -1,179 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-CROS_WORKON_COMMIT="7fb7b133bb213c69db57aa9fee6d5ab9030d4b2d"
-CROS_WORKON_TREE="d2f3f9e688579f2bd08ba34bb2fbe237ba83bd1c"
-CROS_WORKON_PROJECT="chromiumos/platform/initramfs"
-CROS_WORKON_LOCALNAME="platform/initramfs"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-
-inherit cros-workon cros-board cros-constants
-
-DESCRIPTION="Create Chrome OS initramfs"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/initramfs/"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="+cros_ec_utils detachable device_tree +interactive_recovery"
-IUSE="${IUSE} legacy_firmware_ui -mtd +power_management"
-IUSE="${IUSE} physical_presence_power physical_presence_recovery"
-IUSE="${IUSE} unibuild +oobe_config"
-
-# Build Targets
-TARGETS_IUSE="
-	factory_netboot_ramfs
-	factory_shim_ramfs
-	hypervisor_ramfs
-	recovery_ramfs
-	minios_ramfs
-"
-IUSE+=" ${TARGETS_IUSE}"
-REQUIRED_USE="|| ( ${TARGETS_IUSE} )"
-
-# Packages required for building recovery initramfs.
-RECOVERY_DEPENDS="
-	chromeos-base/chromeos-installer
-	chromeos-base/common-assets
-	chromeos-base/vboot_reference
-	chromeos-base/vpd
-	sys-apps/flashrom
-	sys-apps/pv
-	virtual/assets
-	virtual/chromeos-regions
-	"
-
-MINIOS_DEPENDS="
-	chromeos-base/minios
-	dev-util/strace
-	net-misc/curl
-	net-misc/dhcp
-	net-misc/dhcpcd
-	net-wireless/wpa_supplicant-2_9
-	chromeos-base/minijail
-	chromeos-base/chromeos-installer
-	chromeos-base/factory_installer
-	chromeos-base/common-assets
-	chromeos-base/vboot_reference
-	chromeos-base/vpd
-	sys-apps/flashrom
-	sys-apps/pv
-	virtual/assets
-	virtual/chromeos-regions
-	"
-
-# Packages required for building factory installer shim initramfs.
-FACTORY_SHIM_DEPENDS="
-	chromeos-base/factory_installer
-	chromeos-base/vboot_reference
-	"
-
-# Packages required for building factory netboot installer initramfs.
-FACTORY_NETBOOT_DEPENDS="
-	app-arch/lbzip2
-	app-arch/pigz
-	app-arch/sharutils
-	app-misc/jq
-	app-shells/bash
-	chromeos-base/chromeos-base
-	chromeos-base/chromeos-installer
-	chromeos-base/chromeos-installshim
-	chromeos-base/chromeos-storage-info
-	chromeos-base/ec-utils
-	chromeos-base/factory_installer
-	chromeos-base/vboot_reference
-	chromeos-base/vpd
-	dev-libs/openssl:0=
-	dev-util/shflags
-	dev-util/xxd
-	net-misc/curl
-	net-misc/htpdate
-	net-misc/uftp
-	net-misc/wget
-	sys-apps/coreutils
-	sys-apps/flashrom
-	sys-apps/iproute2
-	sys-apps/mosys
-	sys-apps/util-linux
-	sys-fs/dosfstools
-	sys-fs/e2fsprogs
-	sys-libs/ncurses
-	virtual/udev
-	"
-
-# Packages required for building hypervisor initramfs.
-HYPERVISOR_DEPENDS="
-	chromeos-base/crosvm
-	chromeos-base/sirenia
-	virtual/linux-sources
-	"
-
-DEPEND="
-	factory_netboot_ramfs? ( ${FACTORY_NETBOOT_DEPENDS} )
-	factory_shim_ramfs? ( ${FACTORY_SHIM_DEPENDS} )
-	recovery_ramfs? ( ${RECOVERY_DEPENDS} )
-	hypervisor_ramfs? ( ${HYPERVISOR_DEPENDS} )
-	minios_ramfs? ( ${MINIOS_DEPENDS} )
-	sys-apps/busybox[-make-symlinks]
-	sys-fs/lvm2
-	virtual/chromeos-bsp-initramfs
-	chromeos-base/chromeos-init
-	sys-apps/frecon-lite
-	power_management? ( chromeos-base/power_manager )
-	unibuild? ( chromeos-base/chromeos-config )
-	chromeos-base/chromeos-config-tools"
-
-RDEPEND=""
-
-src_prepare() {
-	export BUILD_LIBRARY_DIR="${CHROOT_SOURCE_ROOT}/src/scripts/build_library"
-	export INTERACTIVE_COMPLETE="$(usex interactive_recovery true false)"
-
-	# Need the lddtree from the chromite dir.
-	export PATH="${CHROMITE_BIN_DIR}:${PATH}"
-
-	eapply_user
-}
-
-src_compile() {
-	local deps=()
-	use mtd && deps+=(/usr/bin/cgpt)
-	if use factory_netboot_ramfs; then
-		use power_management && deps+=(/usr/bin/backlight_tool)
-	fi
-
-	local targets=()
-	for target in ${TARGETS_IUSE}; do
-		use "${target}" && targets+=("${target%_ramfs}")
-	done
-	einfo "Building targets: ${targets[*]}"
-
-	local physical_presence
-	if use physical_presence_power ; then
-		physical_presence="power"
-	elif use physical_presence_recovery ; then
-		physical_presence="recovery"
-	else
-		physical_presence="keyboard"
-	fi
-
-	emake SYSROOT="${SYSROOT}" BOARD="$(get_current_board_with_variant)" \
-		INCLUDE_FIT_PICKER="$(usex device_tree 1 0)" \
-		INCLUDE_ECTOOL="$(usex cros_ec_utils 1 0)" \
-		DETACHABLE="$(usex detachable 1 0)" \
-		LEGACY_UI="$(usex legacy_firmware_ui 1 0)" \
-		UNIBUILD="$(usex unibuild 1 0)" \
-		OOBE_CONFIG="$(usex oobe_config 1 0)" \
-		PHYSICAL_PRESENCE="${physical_presence}" \
-		OUTPUT_DIR="${WORKDIR}" EXTRA_BIN_DEPS="${deps[*]}" \
-		LOCALE_LIST="${RECOVERY_LOCALES}" "${targets[@]}"
-}
-
-src_install() {
-	insinto /var/lib/initramfs
-	for target in ${TARGETS_IUSE}; do
-		use "${target}" &&
-			doins "${WORKDIR}/${target}.cpio.xz"
-	done
-}
diff --git a/chromeos-base/chromeos-initramfs/chromeos-initramfs-0.0.1-r451.ebuild b/chromeos-base/chromeos-initramfs/chromeos-initramfs-0.0.1-r451.ebuild
new file mode 100644
index 0000000..cc2d991
--- /dev/null
+++ b/chromeos-base/chromeos-initramfs/chromeos-initramfs-0.0.1-r451.ebuild
@@ -0,0 +1,182 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+CROS_WORKON_COMMIT="4b9c8d33f5fb2ec688c0f0936467683657d15454"
+CROS_WORKON_TREE="557b85d49be1b206c72a44485e7251262339c00f"
+CROS_WORKON_PROJECT="chromiumos/platform/initramfs"
+CROS_WORKON_LOCALNAME="platform/initramfs"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+
+inherit cros-workon cros-board cros-constants
+
+DESCRIPTION="Create Chrome OS initramfs"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/initramfs/"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="+cros_ec_utils detachable device_tree +interactive_recovery"
+IUSE="${IUSE} legacy_firmware_ui -mtd +power_management"
+IUSE="${IUSE} physical_presence_power physical_presence_recovery"
+IUSE="${IUSE} unibuild +oobe_config"
+
+# Build Targets
+TARGETS_IUSE="
+	factory_netboot_ramfs
+	factory_shim_ramfs
+	hypervisor_ramfs
+	recovery_ramfs
+	minios_ramfs
+"
+IUSE+=" ${TARGETS_IUSE}"
+REQUIRED_USE="|| ( ${TARGETS_IUSE} )"
+
+# Packages required for building recovery initramfs.
+RECOVERY_DEPENDS="
+	chromeos-base/chromeos-installer
+	chromeos-base/common-assets
+	chromeos-base/vboot_reference
+	chromeos-base/vpd
+	sys-apps/flashrom
+	sys-apps/pv
+	virtual/assets
+	virtual/chromeos-regions
+	"
+
+MINIOS_DEPENDS="
+	chromeos-base/minios
+	dev-util/strace
+	net-misc/curl
+	net-misc/dhcp
+	net-misc/dhcpcd
+	net-wireless/wpa_supplicant-cros
+	chromeos-base/minijail
+	chromeos-base/chromeos-installer
+	chromeos-base/factory_installer
+	chromeos-base/common-assets
+	chromeos-base/vboot_reference
+	chromeos-base/vpd
+	sys-apps/flashrom
+	sys-apps/pv
+	virtual/assets
+	virtual/chromeos-regions
+	"
+
+# Packages required for building factory installer shim initramfs.
+FACTORY_SHIM_DEPENDS="
+	chromeos-base/factory_installer
+	chromeos-base/vboot_reference
+	"
+
+# Packages required for building factory netboot installer initramfs.
+FACTORY_NETBOOT_DEPENDS="
+	app-arch/lbzip2
+	app-arch/pigz
+	app-arch/sharutils
+	app-misc/jq
+	app-shells/bash
+	chromeos-base/chromeos-base
+	chromeos-base/chromeos-installer
+	chromeos-base/chromeos-installshim
+	chromeos-base/chromeos-storage-info
+	chromeos-base/ec-utils
+	chromeos-base/factory_installer
+	chromeos-base/vboot_reference
+	chromeos-base/vpd
+	dev-libs/openssl:0=
+	dev-util/shflags
+	dev-util/xxd
+	net-misc/curl
+	net-misc/htpdate
+	net-misc/uftp
+	net-misc/wget
+	sys-apps/coreutils
+	sys-apps/flashrom
+	sys-apps/iproute2
+	sys-apps/mosys
+	sys-apps/util-linux
+	sys-fs/dosfstools
+	sys-fs/e2fsprogs
+	sys-libs/ncurses
+	virtual/udev
+	"
+
+# Packages required for building hypervisor initramfs.
+HYPERVISOR_DEPENDS="
+	chromeos-base/crosvm
+	chromeos-base/sirenia
+	virtual/linux-sources
+	"
+
+DEPEND="
+	factory_netboot_ramfs? ( ${FACTORY_NETBOOT_DEPENDS} )
+	factory_shim_ramfs? ( ${FACTORY_SHIM_DEPENDS} )
+	recovery_ramfs? ( ${RECOVERY_DEPENDS} )
+	hypervisor_ramfs? ( ${HYPERVISOR_DEPENDS} )
+	minios_ramfs? ( ${MINIOS_DEPENDS} )
+	sys-apps/busybox[-make-symlinks]
+	sys-fs/lvm2
+	virtual/chromeos-bsp-initramfs
+	chromeos-base/chromeos-init
+	sys-apps/frecon-lite
+	power_management? ( chromeos-base/power_manager )
+	unibuild? ( chromeos-base/chromeos-config )
+	chromeos-base/chromeos-config-tools"
+
+RDEPEND=""
+
+BDEPEND="
+	hypervisor_ramfs? ( chromeos-base/sirenia-tools )"
+
+src_prepare() {
+	export BUILD_LIBRARY_DIR="${CHROOT_SOURCE_ROOT}/src/scripts/build_library"
+	export INTERACTIVE_COMPLETE="$(usex interactive_recovery true false)"
+
+	# Need the lddtree from the chromite dir.
+	export PATH="${CHROMITE_BIN_DIR}:${PATH}"
+
+	eapply_user
+}
+
+src_compile() {
+	local deps=()
+	use mtd && deps+=(/usr/bin/cgpt)
+	if use factory_netboot_ramfs; then
+		use power_management && deps+=(/usr/bin/backlight_tool)
+	fi
+
+	local targets=()
+	for target in ${TARGETS_IUSE}; do
+		use "${target}" && targets+=("${target%_ramfs}")
+	done
+	einfo "Building targets: ${targets[*]}"
+
+	local physical_presence
+	if use physical_presence_power ; then
+		physical_presence="power"
+	elif use physical_presence_recovery ; then
+		physical_presence="recovery"
+	else
+		physical_presence="keyboard"
+	fi
+
+	emake SYSROOT="${SYSROOT}" BOARD="$(get_current_board_with_variant)" \
+		INCLUDE_FIT_PICKER="$(usex device_tree 1 0)" \
+		INCLUDE_ECTOOL="$(usex cros_ec_utils 1 0)" \
+		DETACHABLE="$(usex detachable 1 0)" \
+		LEGACY_UI="$(usex legacy_firmware_ui 1 0)" \
+		UNIBUILD="$(usex unibuild 1 0)" \
+		OOBE_CONFIG="$(usex oobe_config 1 0)" \
+		PHYSICAL_PRESENCE="${physical_presence}" \
+		OUTPUT_DIR="${WORKDIR}" EXTRA_BIN_DEPS="${deps[*]}" \
+		LOCALE_LIST="${RECOVERY_LOCALES}" "${targets[@]}"
+}
+
+src_install() {
+	insinto /var/lib/initramfs
+	for target in ${TARGETS_IUSE}; do
+		use "${target}" &&
+			doins "${WORKDIR}/${target}.cpio.xz"
+	done
+}
diff --git a/chromeos-base/chromeos-initramfs/chromeos-initramfs-9999.ebuild b/chromeos-base/chromeos-initramfs/chromeos-initramfs-9999.ebuild
index f50e7bc..a546228 100644
--- a/chromeos-base/chromeos-initramfs/chromeos-initramfs-9999.ebuild
+++ b/chromeos-base/chromeos-initramfs/chromeos-initramfs-9999.ebuild
@@ -1,7 +1,7 @@
 # Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 CROS_WORKON_PROJECT="chromiumos/platform/initramfs"
 CROS_WORKON_LOCALNAME="platform/initramfs"
 CROS_WORKON_OUTOFTREE_BUILD="1"
@@ -48,7 +48,7 @@
 	net-misc/curl
 	net-misc/dhcp
 	net-misc/dhcpcd
-	net-wireless/wpa_supplicant-2_9
+	net-wireless/wpa_supplicant-cros
 	chromeos-base/minijail
 	chromeos-base/chromeos-installer
 	chromeos-base/factory_installer
@@ -124,6 +124,9 @@
 
 RDEPEND=""
 
+BDEPEND="
+	hypervisor_ramfs? ( chromeos-base/sirenia-tools )"
+
 src_prepare() {
 	export BUILD_LIBRARY_DIR="${CHROOT_SOURCE_ROOT}/src/scripts/build_library"
 	export INTERACTIVE_COMPLETE="$(usex interactive_recovery true false)"
diff --git a/chromeos-base/chromeos-installer/chromeos-installer-0.0.3-r3492.ebuild b/chromeos-base/chromeos-installer/chromeos-installer-0.0.3-r3492.ebuild
deleted file mode 100644
index c6fd00b..0000000
--- a/chromeos-base/chromeos-installer/chromeos-installer-0.0.3-r3492.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-CROS_WORKON_COMMIT="65240bb3b66b94f15c5c9b5ecde982d5ea9a3f66"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "186518012127f8b531f1bb71d661edbbe08ac304" "33de53739dbe0fd2911d58694b622539ef0a2416" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk installer verity .gn"
-
-PLATFORM_SUBDIR="installer"
-
-inherit cros-workon platform systemd
-
-DESCRIPTION="Chrome OS Installer"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/installer/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="cros_embedded enable_slow_boot_notify -mtd pam systemd +oobe_config lvm_stateful_partition"
-
-COMMON_DEPEND="
-	chromeos-base/libbrillo:=
-	chromeos-base/vboot_reference
-	chromeos-base/verity
-"
-
-DEPEND="${COMMON_DEPEND}
-	dev-libs/openssl:0=
-"
-
-RDEPEND="${COMMON_DEPEND}
-	pam? ( app-admin/sudo )
-	chromeos-base/chromeos-common-script
-	!cros_embedded? ( chromeos-base/chromeos-storage-info )
-	oobe_config? ( chromeos-base/oobe_config )
-	dev-libs/openssl:0=
-	dev-util/shflags
-	sys-apps/rootdev
-	sys-apps/util-linux
-	sys-apps/which
-	sys-fs/e2fsprogs"
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/cros_installer_test"
-}
-
-src_install() {
-	dobin "${OUT}"/{cros_installer,cros_oobe_crypto}
-	if use mtd ; then
-		dobin "${OUT}"/nand_partition
-	fi
-	dosbin chromeos-* encrypted_import "${OUT}"/evwaitkey
-	dosym usr/sbin/chromeos-postinst /postinst
-
-	# Enable lvm stateful partition.
-	if use lvm_stateful_partition; then
-		sed -i '/DEFINE_boolean lvm_stateful "/s:\${FLAGS_FALSE}:\${FLAGS_TRUE}:' \
-			"${D}/usr/sbin/chromeos-install" ||
-			die "Failed to set 'lvm_stateful' in chromeos-install"
-	fi
-
-	# Install init scripts.
-	if use systemd; then
-		systemd_dounit init/install-completed.service
-		systemd_enable_service boot-services.target install-completed.service
-		systemd_dounit init/crx-import.service
-		systemd_enable_service system-services.target crx-import.service
-	else
-		insinto /etc/init
-		doins init/*.conf
-	fi
-	exeinto /usr/share/cros/init
-	doexe init/crx-import.sh
-}
diff --git a/chromeos-base/chromeos-installer/chromeos-installer-0.0.3-r3525.ebuild b/chromeos-base/chromeos-installer/chromeos-installer-0.0.3-r3525.ebuild
new file mode 100644
index 0000000..554799e
--- /dev/null
+++ b/chromeos-base/chromeos-installer/chromeos-installer-0.0.3-r3525.ebuild
@@ -0,0 +1,80 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "1142ef9f2e5e65b8b6ab2efeae2b4dc29d24312e" "76048c384ed9eba7cdd5dc5c3e0b853baac8802d" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk installer verity .gn"
+
+PLATFORM_SUBDIR="installer"
+
+inherit cros-workon platform systemd
+
+DESCRIPTION="Chrome OS Installer"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/installer/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="cros_embedded enable_slow_boot_notify -mtd pam systemd lvm_stateful_partition"
+
+COMMON_DEPEND="
+	chromeos-base/libbrillo:=
+	chromeos-base/vboot_reference
+	chromeos-base/verity
+"
+
+DEPEND="${COMMON_DEPEND}
+	dev-libs/openssl:0=
+"
+
+RDEPEND="${COMMON_DEPEND}
+	pam? ( app-admin/sudo )
+	chromeos-base/chromeos-common-script
+	!cros_embedded? ( chromeos-base/chromeos-storage-info )
+	dev-libs/openssl:0=
+	dev-util/shflags
+	sys-apps/rootdev
+	sys-apps/util-linux
+	sys-apps/which
+	sys-fs/e2fsprogs"
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/cros_installer_test"
+}
+
+src_install() {
+	dobin "${OUT}"/cros_installer
+	if use mtd ; then
+		dobin "${OUT}"/nand_partition
+	fi
+	dosbin chromeos-* encrypted_import "${OUT}"/evwaitkey
+	dosym usr/sbin/chromeos-postinst /postinst
+
+	# Enable lvm stateful partition.
+	if use lvm_stateful_partition; then
+		sed -i '/DEFINE_boolean lvm_stateful "/s:\${FLAGS_FALSE}:\${FLAGS_TRUE}:' \
+			"${D}/usr/sbin/chromeos-install" ||
+			die "Failed to set 'lvm_stateful' in chromeos-install"
+	fi
+
+	# Install init scripts.
+	if use systemd; then
+		systemd_dounit init/install-completed.service
+		systemd_enable_service boot-services.target install-completed.service
+		systemd_dounit init/crx-import.service
+		systemd_enable_service system-services.target crx-import.service
+	else
+		insinto /etc/init
+		doins init/*.conf
+	fi
+	exeinto /usr/share/cros/init
+	doexe init/crx-import.sh
+}
diff --git a/chromeos-base/chromeos-installer/chromeos-installer-9999.ebuild b/chromeos-base/chromeos-installer/chromeos-installer-9999.ebuild
index 73f9d25..4b92dbd 100644
--- a/chromeos-base/chromeos-installer/chromeos-installer-9999.ebuild
+++ b/chromeos-base/chromeos-installer/chromeos-installer-9999.ebuild
@@ -21,7 +21,7 @@
 LICENSE="BSD-Google"
 SLOT="0"
 KEYWORDS="~*"
-IUSE="cros_embedded enable_slow_boot_notify -mtd pam systemd +oobe_config lvm_stateful_partition"
+IUSE="cros_embedded enable_slow_boot_notify -mtd pam systemd lvm_stateful_partition"
 
 COMMON_DEPEND="
 	chromeos-base/libbrillo:=
@@ -37,7 +37,6 @@
 	pam? ( app-admin/sudo )
 	chromeos-base/chromeos-common-script
 	!cros_embedded? ( chromeos-base/chromeos-storage-info )
-	oobe_config? ( chromeos-base/oobe_config )
 	dev-libs/openssl:0=
 	dev-util/shflags
 	sys-apps/rootdev
@@ -50,7 +49,7 @@
 }
 
 src_install() {
-	dobin "${OUT}"/{cros_installer,cros_oobe_crypto}
+	dobin "${OUT}"/cros_installer
 	if use mtd ; then
 		dobin "${OUT}"/nand_partition
 	fi
diff --git a/chromeos-base/chromeos-lacros/Manifest b/chromeos-base/chromeos-lacros/Manifest
index a2885c9..36488d0 100644
--- a/chromeos-base/chromeos-lacros/Manifest
+++ b/chromeos-base/chromeos-lacros/Manifest
@@ -1,2 +1,2 @@
-DIST chromeos-lacros-metadata-92.0.4511.2 77 BLAKE2B c36f257b8f50c631d24de35b287e2a9e03d0bb3960ba50148e5aa88d878289692c9529619793c27ea51001543780de39144218eb10cc649685da7c68361b2955 SHA512 07a3dedcc15b1f3be748f31eaa727af8fe62fd8d37c8f8025bb2b67404c20f0c8bac29eee3c7416948ff8e170d193e0ea0c318e6404d446f49f37a51ed069369
-DIST chromeos-lacros-squash-92.0.4511.2 115482624 BLAKE2B 3e2f21a4dec4bbe68c3907c8992054e9a2ff475c3856a54d153b5aedb1996b6d6f759a134977ec8169668ec483609f9858086d5c29e88e28f8b7ddcb4379a7ae SHA512 7254ed8974c24cb18a0c6b1ed49830dfe948b5b5db25155b88dad6d795d4352d7959e2ba80afb8b512a530e38345874f8ed2a1cdf6da48a324f2a8d0188f9e6a
+DIST chromeos-lacros-metadata-95.0.4637.0 77 BLAKE2B 48236dba894253d93d005b2e7b8347c2fa2d20490684942beb3837e76f2e27c7a5699192773a3a9d42350cf314f31970f2662635f3c0c4c2f01da8b9889fa647 SHA512 6e3e1536d9f1c104b9a1675071e010ad2de2e9a3ed026f1ab8527ab7bdaae0b3544a4be6573e3465184de3c405226e5f16f9921fb3478811edea9ead7a643408
+DIST chromeos-lacros-squash-95.0.4637.0 120315904 BLAKE2B c561c0c7539d753e3890a0083968f51cf83126c21c1c4b7a166a20209174af3aa63a9c47825a35b6930d8a4a8f2704066b6b5dfc738ba2d75bfbf90e70a8f512 SHA512 44c5a90c52cab15552616107002e677a008f7aa4465b46eef1044dc53b3c18352ce12fb62da27bf03ea869a159ed6720eb1ea2d0d92ed66696b84891b65e1353
diff --git a/chromeos-base/chromeos-lacros/chromeos-lacros-92.0.4511.2-r5.ebuild b/chromeos-base/chromeos-lacros/chromeos-lacros-95.0.4637.0-r1.ebuild
similarity index 100%
rename from chromeos-base/chromeos-lacros/chromeos-lacros-92.0.4511.2-r5.ebuild
rename to chromeos-base/chromeos-lacros/chromeos-lacros-95.0.4637.0-r1.ebuild
diff --git a/chromeos-base/chromeos-lacros/files/chromeos-version.sh b/chromeos-base/chromeos-lacros/files/chromeos-version.sh
deleted file mode 100644
index 5c4574a..0000000
--- a/chromeos-base/chromeos-lacros/files/chromeos-version.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/sh
-# 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.
-#
-# This echo statement sets the package base version (without its -r value).
-# If it is necessary to add a new blocker or version dependency on this ebuild
-# at the same time as revving the ebuild to a known version value, editing this
-# version can be useful.
-
-echo 92.0.4511.2
diff --git a/chromeos-base/chromeos-login/chromeos-login-0.0.2-r4693.ebuild b/chromeos-base/chromeos-login/chromeos-login-0.0.2-r4693.ebuild
deleted file mode 100644
index ca0a6b4..0000000
--- a/chromeos-base/chromeos-login/chromeos-login-0.0.2-r4693.ebuild
+++ /dev/null
@@ -1,139 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="c812693846f14fc4b8c3988e5de7dd9310d8f36c"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "aa0612733aca2d5ffa65470f07408228b473ebdb" "a2ab6048637d439be995dd4cdc3ef91d0291fb42" "eae0546f4ee5132d4544af4770755eb05f60cba6" "705938420b278cc4b739150868d71128b855d23e" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk chromeos-config libcontainer libpasswordprovider login_manager metrics .gn"
-
-PLATFORM_SUBDIR="login_manager"
-
-inherit tmpfiles cros-workon platform systemd user
-
-DESCRIPTION="Login manager for Chromium OS."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-login/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="arc_adb_sideloading cheets fuzzer generated_cros_config systemd unibuild user_session_isolation"
-
-COMMON_DEPEND="chromeos-base/bootstat:=
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
-	chromeos-base/chromeos-config-tools:=
-	chromeos-base/minijail:=
-	chromeos-base/cryptohome:=
-	chromeos-base/libchromeos-ui:=
-	chromeos-base/libcontainer:=
-	chromeos-base/libpasswordprovider:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	dev-libs/nss:=
-	dev-libs/protobuf:=
-	fuzzer? ( dev-libs/libprotobuf-mutator:= )
-	sys-apps/util-linux:=
-"
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="${COMMON_DEPEND}
-	>=chromeos-base/protofiles-0.0.43:=
-	chromeos-base/system_api:=[fuzzer?]
-	chromeos-base/vboot_reference:=
-"
-
-pkg_preinst() {
-	enewgroup policy-readers
-}
-
-platform_pkg_test() {
-	local tests=( session_manager_test )
-
-	# Qemu doesn't support signalfd currently, and it's not clear how
-	# feasible it is to implement :(.
-	# So, filter out the tests that rely on signalfd().
-	local gtest_qemu_filter=""
-	if ! use x86 && ! use amd64; then
-		gtest_qemu_filter+="-ChildExitHandlerTest.*"
-		gtest_qemu_filter+=":SessionManagerProcessTest.*"
-	fi
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}" "0" "" "${gtest_qemu_filter}"
-	done
-}
-
-src_install() {
-	into /
-	dosbin "${OUT}/keygen"
-	dosbin "${OUT}/session_manager"
-
-	# Install DBus configuration.
-	insinto /usr/share/dbus-1/interfaces
-	doins dbus_bindings/org.chromium.SessionManagerInterface.xml
-
-	insinto /etc/dbus-1/system.d
-	doins SessionManager.conf
-
-	# Adding init scripts.
-	if use systemd; then
-		systemd_dounit init/systemd/*
-		systemd_enable_service x-started.target
-		systemd_enable_service multi-user.target ui.target
-		systemd_enable_service ui.target ui.service
-		systemd_enable_service ui.service machine-info.service
-		systemd_enable_service login-prompt-visible.target send-uptime-metrics.service
-		systemd_enable_service login-prompt-visible.target ui-init-late.service
-		systemd_enable_service start-user-session.target login.service
-		systemd_enable_service system-services.target ui-collect-machine-info.service
-	else
-		insinto /etc/init
-		doins init/upstart/*.conf
-	fi
-	exeinto /usr/share/cros/init/
-	doexe init/scripts/*
-
-	dotmpfiles tmpfiles.d/chromeos-login.conf
-
-	# For user session processes.
-	dodir /etc/skel/log
-
-	# For user NSS database
-	diropts -m0700
-	# Need to dodir each directory in order to get the opts right.
-	dodir /etc/skel/.pki
-	dodir /etc/skel/.pki/nssdb
-	# Yes, the created (empty) DB does work on ARM, x86 and x86_64.
-	certutil -N -d "sql:${D}/etc/skel/.pki/nssdb" -f <(echo '') || die
-
-	insinto /etc
-	doins chrome_dev.conf
-
-	insinto /usr/share/power_manager
-	doins powerd_prefs/suspend_freezer_deps_*
-
-	# Create daemon store directories.
-	local daemon_store="/etc/daemon-store/session_manager"
-	dodir "${daemon_store}"
-	fperms 0700 "${daemon_store}"
-	fowners root:root "${daemon_store}"
-
-	local fuzzers=(
-		login_manager_validator_utils_fuzzer
-		login_manager_validator_utils_policy_desc_fuzzer
-	)
-
-	local fuzzer
-	for fuzzer in "${fuzzers[@]}"; do
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}/${fuzzer}"
-	done
-}
diff --git a/chromeos-base/chromeos-login/chromeos-login-0.0.2-r4785.ebuild b/chromeos-base/chromeos-login/chromeos-login-0.0.2-r4785.ebuild
new file mode 100644
index 0000000..35a8b4b
--- /dev/null
+++ b/chromeos-base/chromeos-login/chromeos-login-0.0.2-r4785.ebuild
@@ -0,0 +1,136 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "26b91e41e669cca59d25dedeb6fb18c470d60c4b" "56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9" "996150408ecdb3786beec73b5beedde1fd9515ad" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk chromeos-config libcontainer libpasswordprovider login_manager metrics .gn"
+
+PLATFORM_SUBDIR="login_manager"
+
+inherit tmpfiles cros-workon cros-unibuild platform systemd user
+
+DESCRIPTION="Login manager for Chromium OS."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-login/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="arc_adb_sideloading cheets fuzzer systemd user_session_isolation"
+
+COMMON_DEPEND="chromeos-base/bootstat:=
+	chromeos-base/chromeos-config-tools:=
+	chromeos-base/minijail:=
+	chromeos-base/cryptohome:=
+	chromeos-base/libchromeos-ui:=
+	chromeos-base/libcontainer:=
+	chromeos-base/libpasswordprovider:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	dev-libs/nss:=
+	dev-libs/protobuf:=
+	fuzzer? ( dev-libs/libprotobuf-mutator:= )
+	sys-apps/util-linux:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="${COMMON_DEPEND}
+	>=chromeos-base/protofiles-0.0.43:=
+	chromeos-base/system_api:=[fuzzer?]
+	chromeos-base/vboot_reference:=
+"
+
+pkg_preinst() {
+	enewgroup policy-readers
+}
+
+platform_pkg_test() {
+	local tests=( session_manager_test )
+
+	# Qemu doesn't support signalfd currently, and it's not clear how
+	# feasible it is to implement :(.
+	# So, filter out the tests that rely on signalfd().
+	local gtest_qemu_filter=""
+	if ! use x86 && ! use amd64; then
+		gtest_qemu_filter+="-ChildExitHandlerTest.*"
+		gtest_qemu_filter+=":SessionManagerProcessTest.*"
+	fi
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}" "0" "" "${gtest_qemu_filter}"
+	done
+}
+
+src_install() {
+	into /
+	dosbin "${OUT}/keygen"
+	dosbin "${OUT}/session_manager"
+
+	# Install DBus configuration.
+	insinto /usr/share/dbus-1/interfaces
+	doins dbus_bindings/org.chromium.SessionManagerInterface.xml
+
+	insinto /etc/dbus-1/system.d
+	doins SessionManager.conf
+
+	# Adding init scripts.
+	if use systemd; then
+		systemd_dounit init/systemd/*
+		systemd_enable_service x-started.target
+		systemd_enable_service multi-user.target ui.target
+		systemd_enable_service ui.target ui.service
+		systemd_enable_service ui.service machine-info.service
+		systemd_enable_service login-prompt-visible.target send-uptime-metrics.service
+		systemd_enable_service login-prompt-visible.target ui-init-late.service
+		systemd_enable_service start-user-session.target login.service
+		systemd_enable_service system-services.target ui-collect-machine-info.service
+	else
+		insinto /etc/init
+		doins init/upstart/*.conf
+	fi
+	exeinto /usr/share/cros/init/
+	doexe init/scripts/*
+
+	dotmpfiles tmpfiles.d/chromeos-login.conf
+
+	# For user session processes.
+	dodir /etc/skel/log
+
+	# For user NSS database
+	diropts -m0700
+	# Need to dodir each directory in order to get the opts right.
+	dodir /etc/skel/.pki
+	dodir /etc/skel/.pki/nssdb
+	# Yes, the created (empty) DB does work on ARM, x86 and x86_64.
+	certutil -N -d "sql:${D}/etc/skel/.pki/nssdb" -f <(echo '') || die
+
+	insinto /etc
+	doins chrome_dev.conf
+
+	insinto /usr/share/power_manager
+	doins powerd_prefs/suspend_freezer_deps_*
+
+	# Create daemon store directories.
+	local daemon_store="/etc/daemon-store/session_manager"
+	dodir "${daemon_store}"
+	fperms 0700 "${daemon_store}"
+	fowners root:root "${daemon_store}"
+
+	local fuzzers=(
+		login_manager_validator_utils_fuzzer
+		login_manager_validator_utils_policy_desc_fuzzer
+	)
+
+	local fuzzer
+	for fuzzer in "${fuzzers[@]}"; do
+		# fuzzer_component_id is unknown/unlisted
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}/${fuzzer}"
+	done
+}
diff --git a/chromeos-base/chromeos-login/chromeos-login-9999.ebuild b/chromeos-base/chromeos-login/chromeos-login-9999.ebuild
index e362e5d..bbab923 100644
--- a/chromeos-base/chromeos-login/chromeos-login-9999.ebuild
+++ b/chromeos-base/chromeos-login/chromeos-login-9999.ebuild
@@ -12,7 +12,7 @@
 
 PLATFORM_SUBDIR="login_manager"
 
-inherit tmpfiles cros-workon platform systemd user
+inherit tmpfiles cros-workon cros-unibuild platform systemd user
 
 DESCRIPTION="Login manager for Chromium OS."
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-login/"
@@ -20,13 +20,9 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="arc_adb_sideloading cheets fuzzer generated_cros_config systemd unibuild user_session_isolation"
+IUSE="arc_adb_sideloading cheets fuzzer systemd user_session_isolation"
 
 COMMON_DEPEND="chromeos-base/bootstat:=
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
 	chromeos-base/chromeos-config-tools:=
 	chromeos-base/minijail:=
 	chromeos-base/cryptohome:=
@@ -132,6 +128,7 @@
 
 	local fuzzer
 	for fuzzer in "${fuzzers[@]}"; do
+		# fuzzer_component_id is unknown/unlisted
 		platform_fuzzer_install "${S}"/OWNERS "${OUT}/${fuzzer}"
 	done
 }
diff --git a/chromeos-base/chromeos-sshd-init/chromeos-sshd-init-0.0.2-r2.ebuild b/chromeos-base/chromeos-sshd-init/chromeos-sshd-init-0.0.2-r3.ebuild
similarity index 100%
rename from chromeos-base/chromeos-sshd-init/chromeos-sshd-init-0.0.2-r2.ebuild
rename to chromeos-base/chromeos-sshd-init/chromeos-sshd-init-0.0.2-r3.ebuild
diff --git a/chromeos-base/chromeos-sshd-init/files/openssh-server.conf.README b/chromeos-base/chromeos-sshd-init/files/openssh-server.conf.README
index d205b89..4d6114b 100644
--- a/chromeos-base/chromeos-sshd-init/files/openssh-server.conf.README
+++ b/chromeos-base/chromeos-sshd-init/files/openssh-server.conf.README
@@ -56,5 +56,6 @@
 
   # Open firewall and start sshd (must be done on every boot).
   $ iptables -A INPUT -p tcp --dport 22 -j ACCEPT
+  $ ip6tables -A INPUT -p tcp --dport 22 -j ACCEPT
   $ /usr/sbin/sshd \
     -oAuthorizedKeysFile=/usr/share/chromeos-ssh-config/keys/authorized_keys
diff --git a/chromeos-base/chromeos-storage-info/chromeos-storage-info-0.0.1-r268.ebuild b/chromeos-base/chromeos-storage-info/chromeos-storage-info-0.0.1-r268.ebuild
deleted file mode 100644
index df56df3..0000000
--- a/chromeos-base/chromeos-storage-info/chromeos-storage-info-0.0.1-r268.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "8d5d5e575da16bb48f735ef93feedcfae4b1586e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk storage_info .gn"
-
-PLATFORM_SUBDIR="storage_info"
-
-inherit cros-workon platform
-
-DESCRIPTION="Chrome OS storage info tools"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/storage_info/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="+mmc nvme +sata test"
-
-DEPEND=""
-
-RDEPEND="${DEPEND}
-	chromeos-base/chromeos-common-script
-	sata? ( sys-apps/hdparm sys-apps/smartmontools )
-	nvme? ( sys-apps/smartmontools )
-	mmc? ( sys-apps/mmc-utils )"
-
-platform_pkg_test() {
-	platform_test "run" "test/storage_info_unit_test"
-}
-
-src_install() {
-	insinto /usr/share/misc
-	doins share/storage-info-common.sh
-}
diff --git a/chromeos-base/chromeos-storage-info/chromeos-storage-info-0.0.1-r294.ebuild b/chromeos-base/chromeos-storage-info/chromeos-storage-info-0.0.1-r294.ebuild
new file mode 100644
index 0000000..60600b3
--- /dev/null
+++ b/chromeos-base/chromeos-storage-info/chromeos-storage-info-0.0.1-r294.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "8d5d5e575da16bb48f735ef93feedcfae4b1586e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk storage_info .gn"
+
+PLATFORM_SUBDIR="storage_info"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS storage info tools"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/storage_info/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="mmc nvme +sata test"
+
+DEPEND=""
+
+RDEPEND="${DEPEND}
+	chromeos-base/chromeos-common-script
+	sata? ( sys-apps/hdparm sys-apps/smartmontools )
+	nvme? ( sys-apps/smartmontools )
+	mmc? ( sys-apps/mmc-utils )"
+
+platform_pkg_test() {
+	platform_test "run" "test/storage_info_unit_test"
+}
+
+src_install() {
+	insinto /usr/share/misc
+	doins share/storage-info-common.sh
+}
diff --git a/chromeos-base/chromeos-storage-info/chromeos-storage-info-9999.ebuild b/chromeos-base/chromeos-storage-info/chromeos-storage-info-9999.ebuild
index e46578e..dcbc0ac 100644
--- a/chromeos-base/chromeos-storage-info/chromeos-storage-info-9999.ebuild
+++ b/chromeos-base/chromeos-storage-info/chromeos-storage-info-9999.ebuild
@@ -19,7 +19,7 @@
 LICENSE="BSD-Google"
 SLOT="0/0"
 KEYWORDS="~*"
-IUSE="+mmc nvme +sata test"
+IUSE="mmc nvme +sata test"
 
 DEPEND=""
 
diff --git a/chromeos-base/chromeos-test-init/chromeos-test-init-0.0.1-r3163.ebuild b/chromeos-base/chromeos-test-init/chromeos-test-init-0.0.1-r3163.ebuild
deleted file mode 100644
index b9d81b3..0000000
--- a/chromeos-base/chromeos-test-init/chromeos-test-init-0.0.1-r3163.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-CROS_WORKON_COMMIT="e087ae01bda1dd9ce8045f20fd204ea82878b801"
-CROS_WORKON_TREE="b82396efede47db2d3ecbb1e88bcb0b38713b6dd"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_DESTDIR="${S}"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="init/upstart/test-init"
-
-inherit cros-workon
-
-DESCRIPTION="Additional upstart jobs that will be installed on test images"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/init/"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="+encrypted_stateful tpm2"
-
-# File cryptohome-dbus-perf.conf moved from hwsec-test-utils.
-RDEPEND="!<chromeos-base/hwsec-test-utils-0.0.1-r83"
-
-src_unpack() {
-	cros-workon_src_unpack
-	S+="/init"
-}
-
-src_install() {
-	insinto /etc/init
-	doins upstart/test-init/*.conf
-
-	insinto /usr/share/cros
-	doins upstart/test-init/*_utils.sh
-
-	if use encrypted_stateful && use tpm2; then
-		insinto /etc/init
-		doins upstart/test-init/encrypted_stateful/create-system-key.conf
-
-		insinto /usr/share/cros
-		doins upstart/test-init/encrypted_stateful/system_key_utils.sh
-	fi
-}
diff --git a/chromeos-base/chromeos-test-init/chromeos-test-init-0.0.1-r3164.ebuild b/chromeos-base/chromeos-test-init/chromeos-test-init-0.0.1-r3164.ebuild
new file mode 100644
index 0000000..1955507
--- /dev/null
+++ b/chromeos-base/chromeos-test-init/chromeos-test-init-0.0.1-r3164.ebuild
@@ -0,0 +1,45 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+CROS_WORKON_COMMIT="63fa2b65ba2d5e10c8acb360e933fa0e23d26d0e"
+CROS_WORKON_TREE="8003c2b9367e0f055d0e2f89bb2a8de0784d8dde"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_DESTDIR="${S}"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="init/upstart/test-init"
+
+inherit cros-workon
+
+DESCRIPTION="Additional upstart jobs that will be installed on test images"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/init/"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="+encrypted_stateful tpm2"
+
+# File cryptohome-dbus-perf.conf moved from hwsec-test-utils.
+RDEPEND="!<chromeos-base/hwsec-test-utils-0.0.1-r83"
+
+src_unpack() {
+	cros-workon_src_unpack
+	S+="/init"
+}
+
+src_install() {
+	insinto /etc/init
+	doins upstart/test-init/*.conf
+
+	insinto /usr/share/cros
+	doins upstart/test-init/*_utils.sh
+
+	if use encrypted_stateful && use tpm2; then
+		insinto /etc/init
+		doins upstart/test-init/encrypted_stateful/create-system-key.conf
+
+		insinto /usr/share/cros
+		doins upstart/test-init/encrypted_stateful/system_key_utils.sh
+	fi
+}
diff --git a/chromeos-base/chromeos-touch-common/chromeos-touch-common-0.0.1-r12.ebuild b/chromeos-base/chromeos-touch-common/chromeos-touch-common-0.0.1-r12.ebuild
deleted file mode 100644
index 00833f6..0000000
--- a/chromeos-base/chromeos-touch-common/chromeos-touch-common-0.0.1-r12.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright (c) 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the BSD license.
-
-EAPI=7
-CROS_WORKON_COMMIT="935f179960a9c8fe01ddd80a9b88265293a33279"
-CROS_WORKON_TREE="145f674e7339af04f66e124d84cf65762c0a7fc4"
-CROS_WORKON_PROJECT="chromiumos/platform/touch_updater"
-CROS_WORKON_LOCALNAME="touch_updater"
-CROS_WORKON_SUBTREE="common"
-CROS_WORKON_OUTOFTREE_BUILD=1
-
-inherit cros-workon
-
-DESCRIPTION="Common shell libraries for touch firmware updater wrapper scripts"
-HOMEPAGE="https://www.chromium.org/chromium-os"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-
-RDEPEND="
-	sys-apps/mosys
-	!<chromeos-base/touch_updater-0.0.1-r167
-"
-
-src_install() {
-	insinto "/opt/google/touch/scripts"
-	doins common/scripts/*.sh
-}
diff --git a/chromeos-base/chromeos-touch-common/chromeos-touch-common-0.0.1-r13.ebuild b/chromeos-base/chromeos-touch-common/chromeos-touch-common-0.0.1-r13.ebuild
new file mode 100644
index 0000000..b6598cc
--- /dev/null
+++ b/chromeos-base/chromeos-touch-common/chromeos-touch-common-0.0.1-r13.ebuild
@@ -0,0 +1,29 @@
+# Copyright (c) 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the BSD license.
+
+EAPI=7
+CROS_WORKON_COMMIT="c7851332f4755c9bf6f29d60cdb1c1a21500175b"
+CROS_WORKON_TREE="7daad4c6871c83b2f58298b7981a5cd089025b4c"
+CROS_WORKON_PROJECT="chromiumos/platform/touch_updater"
+CROS_WORKON_LOCALNAME="touch_updater"
+CROS_WORKON_SUBTREE="common"
+CROS_WORKON_OUTOFTREE_BUILD=1
+
+inherit cros-workon
+
+DESCRIPTION="Common shell libraries for touch firmware updater wrapper scripts"
+HOMEPAGE="https://www.chromium.org/chromium-os"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+
+RDEPEND="
+	sys-apps/mosys
+	!<chromeos-base/touch_updater-0.0.1-r167
+"
+
+src_install() {
+	insinto "/opt/google/touch/scripts"
+	doins common/scripts/*.sh
+}
diff --git a/chromeos-base/chromeos-touch-etphidiap/chromeos-touch-etphidiap-0.0.1-r13.ebuild b/chromeos-base/chromeos-touch-etphidiap/chromeos-touch-etphidiap-0.0.1-r13.ebuild
deleted file mode 100644
index cc6ab27..0000000
--- a/chromeos-base/chromeos-touch-etphidiap/chromeos-touch-etphidiap-0.0.1-r13.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright (c) 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the BSD license.
-
-EAPI=7
-CROS_WORKON_COMMIT="3bdddd254b3fd5d391fae4990e0ae10205174433"
-CROS_WORKON_TREE="d27b69b780b7531fbca51927de61c58296c2d86d"
-CROS_WORKON_PROJECT="chromiumos/platform/touch_updater"
-CROS_WORKON_LOCALNAME="touch_updater"
-CROS_WORKON_SUBTREE="etphidiap"
-CROS_WORKON_OUTOFTREE_BUILD=1
-
-inherit cros-workon user
-
-DESCRIPTION="Wrapper for etphidiap touch firmware updater."
-HOMEPAGE="https://www.chromium.org/chromium-os"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-
-RDEPEND="
-	chromeos-base/chromeos-touch-common
-	sys-apps/etphidiap
-	!<chromeos-base/touch_updater-0.0.1-r167
-"
-
-pkg_preinst() {
-	enewgroup fwupdate-i2c
-	enewuser fwupdate-i2c
-}
-
-src_install() {
-	exeinto "/opt/google/touch/scripts"
-	doexe etphidiap/scripts/*.sh
-
-	if [ -d "etphidiap/policies/${ARCH}" ]; then
-		insinto "/opt/google/touch/policies"
-		doins etphidiap/policies/"${ARCH}"/*.policy
-	fi
-}
diff --git a/chromeos-base/chromeos-touch-etphidiap/chromeos-touch-etphidiap-0.0.1-r14.ebuild b/chromeos-base/chromeos-touch-etphidiap/chromeos-touch-etphidiap-0.0.1-r14.ebuild
new file mode 100644
index 0000000..9d395e0
--- /dev/null
+++ b/chromeos-base/chromeos-touch-etphidiap/chromeos-touch-etphidiap-0.0.1-r14.ebuild
@@ -0,0 +1,40 @@
+# Copyright (c) 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the BSD license.
+
+EAPI=7
+CROS_WORKON_COMMIT="97e19f6c183413affb7dbef8b4265234b78f6365"
+CROS_WORKON_TREE="5e05b63e4b72537a39603f4a9f5a68eebf845602"
+CROS_WORKON_PROJECT="chromiumos/platform/touch_updater"
+CROS_WORKON_LOCALNAME="touch_updater"
+CROS_WORKON_SUBTREE="etphidiap"
+CROS_WORKON_OUTOFTREE_BUILD=1
+
+inherit cros-workon user
+
+DESCRIPTION="Wrapper for etphidiap touch firmware updater."
+HOMEPAGE="https://www.chromium.org/chromium-os"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+
+RDEPEND="
+	chromeos-base/chromeos-touch-common
+	sys-apps/etphidiap
+	!<chromeos-base/touch_updater-0.0.1-r167
+"
+
+pkg_preinst() {
+	enewgroup fwupdate-i2c
+	enewuser fwupdate-i2c
+}
+
+src_install() {
+	exeinto "/opt/google/touch/scripts"
+	doexe etphidiap/scripts/*.sh
+
+	if [ -d "etphidiap/policies/${ARCH}" ]; then
+		insinto "/opt/google/touch/policies"
+		doins etphidiap/policies/"${ARCH}"/*.policy
+	fi
+}
diff --git a/chromeos-base/chromeos-touch-stupdate/chromeos-touch-stupdate-0.0.1-r10.ebuild b/chromeos-base/chromeos-touch-stupdate/chromeos-touch-stupdate-0.0.1-r10.ebuild
deleted file mode 100644
index 80151df..0000000
--- a/chromeos-base/chromeos-touch-stupdate/chromeos-touch-stupdate-0.0.1-r10.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright (c) 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the BSD license.
-
-EAPI=7
-CROS_WORKON_COMMIT="3bdddd254b3fd5d391fae4990e0ae10205174433"
-CROS_WORKON_TREE="f3cfb0e19c23daa6dedda7e9b060a0979560343c"
-CROS_WORKON_PROJECT="chromiumos/platform/touch_updater"
-CROS_WORKON_LOCALNAME="touch_updater"
-CROS_WORKON_SUBTREE="stupdate"
-CROS_WORKON_OUTOFTREE_BUILD=1
-
-inherit cros-workon user
-
-DESCRIPTION="Wrapper for ST touch firmware updater."
-HOMEPAGE="https://www.chromium.org/chromium-os"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-
-RDEPEND="
-	chromeos-base/chromeos-touch-common
-	sys-apps/st-touch-fw-updater
-	!<chromeos-base/touch_updater-0.0.1-r167
-"
-
-pkg_preinst() {
-	enewgroup fwupdate-i2c
-	enewuser fwupdate-i2c
-}
-
-src_install() {
-	exeinto "/opt/google/touch/scripts"
-	doexe stupdate/scripts/*.sh
-
-	if [ -d "stupdate/policies/${ARCH}" ]; then
-		insinto "/opt/google/touch/policies"
-		doins stupdate/policies/"${ARCH}"/*.policy
-	fi
-}
diff --git a/chromeos-base/chromeos-touch-stupdate/chromeos-touch-stupdate-0.0.1-r12.ebuild b/chromeos-base/chromeos-touch-stupdate/chromeos-touch-stupdate-0.0.1-r12.ebuild
new file mode 100644
index 0000000..0b35d04
--- /dev/null
+++ b/chromeos-base/chromeos-touch-stupdate/chromeos-touch-stupdate-0.0.1-r12.ebuild
@@ -0,0 +1,40 @@
+# Copyright (c) 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the BSD license.
+
+EAPI=7
+CROS_WORKON_COMMIT="97e19f6c183413affb7dbef8b4265234b78f6365"
+CROS_WORKON_TREE="85c862c58d2ad4b07479b1b9ac509b5c1e65c538"
+CROS_WORKON_PROJECT="chromiumos/platform/touch_updater"
+CROS_WORKON_LOCALNAME="touch_updater"
+CROS_WORKON_SUBTREE="stupdate"
+CROS_WORKON_OUTOFTREE_BUILD=1
+
+inherit cros-workon user
+
+DESCRIPTION="Wrapper for ST touch firmware updater."
+HOMEPAGE="https://www.chromium.org/chromium-os"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+
+RDEPEND="
+	chromeos-base/chromeos-touch-common
+	sys-apps/st-touch-fw-updater
+	!<chromeos-base/touch_updater-0.0.1-r167
+"
+
+pkg_preinst() {
+	enewgroup fwupdate-i2c
+	enewuser fwupdate-i2c
+}
+
+src_install() {
+	exeinto "/opt/google/touch/scripts"
+	doexe stupdate/scripts/*.sh
+
+	if [ -d "stupdate/policies/${ARCH}" ]; then
+		insinto "/opt/google/touch/policies"
+		doins stupdate/policies/"${ARCH}"/*.policy
+	fi
+}
diff --git a/chromeos-base/chromeos-trim/chromeos-trim-0.0.1-r1653.ebuild b/chromeos-base/chromeos-trim/chromeos-trim-0.0.1-r1653.ebuild
deleted file mode 100644
index 1606b13..0000000
--- a/chromeos-base/chromeos-trim/chromeos-trim-0.0.1-r1653.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "1e69ede3d074afd135fa6f2136ea5d99c425702b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk trim .gn"
-
-PLATFORM_SUBDIR="trim"
-
-inherit cros-workon platform
-
-DESCRIPTION="Stateful partition periodic trimmer"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/trim/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND=""
-
-RDEPEND="${DEPEND}
-	chromeos-base/chromeos-common-script
-	chromeos-base/chromeos-init
-	sys-apps/util-linux"
-
-platform_pkg_test() {
-	platform_test "run" "tests/chromeos-trim-test"
-	platform_test "run" "tests/chromeos-do_trim-test"
-}
-
-src_install() {
-	insinto "/etc/init"
-	doins "init/trim.conf"
-
-	insinto "/usr/share/cros"
-	doins "share/trim_utils.sh"
-
-	dosbin "scripts/chromeos-trim"
-}
diff --git a/chromeos-base/chromeos-trim/chromeos-trim-0.0.1-r1678.ebuild b/chromeos-base/chromeos-trim/chromeos-trim-0.0.1-r1678.ebuild
new file mode 100644
index 0000000..11c7d2e
--- /dev/null
+++ b/chromeos-base/chromeos-trim/chromeos-trim-0.0.1-r1678.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "1e69ede3d074afd135fa6f2136ea5d99c425702b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk trim .gn"
+
+PLATFORM_SUBDIR="trim"
+
+inherit cros-workon platform
+
+DESCRIPTION="Stateful partition periodic trimmer"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/trim/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND=""
+
+RDEPEND="${DEPEND}
+	chromeos-base/chromeos-common-script
+	chromeos-base/chromeos-init
+	sys-apps/util-linux"
+
+platform_pkg_test() {
+	platform_test "run" "tests/chromeos-trim-test"
+	platform_test "run" "tests/chromeos-do_trim-test"
+}
+
+src_install() {
+	insinto "/etc/init"
+	doins "init/trim.conf"
+
+	insinto "/usr/share/cros"
+	doins "share/trim_utils.sh"
+
+	dosbin "scripts/chromeos-trim"
+}
diff --git a/chromeos-base/chromeos-zephyr/chromeos-zephyr-0.0.1-r1575.ebuild b/chromeos-base/chromeos-zephyr/chromeos-zephyr-0.0.1-r1575.ebuild
new file mode 100644
index 0000000..507235e
--- /dev/null
+++ b/chromeos-base/chromeos-zephyr/chromeos-zephyr-0.0.1-r1575.ebuild
@@ -0,0 +1,123 @@
+# Copyright (C) 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.makefile file.
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("bfdc3dda56217570f94e31820b2b3741848f0ce4" "fba71496973aed801e2965a8cd1be7b0329ef7cd" "32a21483d6586851edfa1d8491beb3df442e90c6" "ebe1007d3dc274b2f7eb34cdae12ab7b1de41553" "d6dc60401c7e408646c07d3094751cb0ce00c044")
+CROS_WORKON_TREE=("0ae11b7eabea480cedbd8344f4974ebe775f63ac" "22779a02b73465f680f11024fa834ba7cb868470" "719a42d9d98358f9123acf2d8916ed9c1821d60b" "487f8c8dfadd10d92f8b7667566bda64d9e36726" "d218554c2693811a352986f225e1f87cb3972913")
+ZEPHYR_VERSIONS=( v2.7 )
+
+CROS_WORKON_USE_VCSID=1
+CROS_WORKON_PROJECT=(
+	"chromiumos/third_party/zephyr/cmsis"
+	"chromiumos/third_party/zephyr/hal_stm32"
+	"chromiumos/third_party/zephyr/nanopb"
+	"chromiumos/platform/ec"
+)
+for v in "${ZEPHYR_VERSIONS[@]}"; do
+	CROS_WORKON_PROJECT+=("chromiumos/third_party/zephyr")
+done
+
+CROS_WORKON_LOCALNAME=(
+	"third_party/zephyr/cmsis"
+	"third_party/zephyr/hal_stm32"
+	"third_party/zephyr/nanopb"
+	"platform/ec"
+)
+for v in "${ZEPHYR_VERSIONS[@]}"; do
+	CROS_WORKON_LOCALNAME+=("third_party/zephyr/main/${v}")
+done
+
+CROS_WORKON_DESTDIR=(
+	"${S}/modules/cmsis"
+	"${S}/modules/hal_stm32"
+	"${S}/modules/nanopb"
+	"${S}/modules/ec"
+)
+for v in "${ZEPHYR_VERSIONS[@]}"; do
+	CROS_WORKON_DESTDIR+=("${S}/zephyr-base/${v}")
+done
+
+inherit cros-workon cros-unibuild coreboot-sdk toolchain-funcs
+
+DESCRIPTION="Zephyr based Embedded Controller firmware"
+KEYWORDS="*"
+LICENSE="Apache-2.0 BSD-Google"
+IUSE="unibuild"
+REQUIRED_USE="unibuild"
+
+# Add instances of vX.Y as 'zephyr_vX_Y' to IUSE
+IUSE="${IUSE} $(for v in "${ZEPHYR_VERSIONS[@]}"; do echo "zephyr_${v//./_}"; done)"
+
+BDEPEND="
+	chromeos-base/zephyr-build-tools
+	dev-python/docopt
+	dev-python/pykwalify
+	dev-util/ninja
+"
+
+DEPEND="
+	chromeos-base/chromeos-config
+"
+RDEPEND="${DEPEND}"
+
+ZEPHYR_EC_BUILD_DIRECTORIES=()
+
+get_zephyr_version() {
+	local v
+	for v in "${ZEPHYR_VERSIONS[@]}"; do
+		if use "zephyr_${v//./_}"; then
+			echo "${v}"
+			return 0
+		fi
+	done
+
+	die "Please specify a zephyr_vX_X USE flag."
+}
+
+# Run zmake from the EC source directory, with default arguments for
+# modules and Zephyr base location for this ebuild.
+run_zmake() {
+	PYTHONPATH="${S}/modules/ec/zephyr/zmake" python3 -m zmake -D \
+		--modules-dir="${S}/modules" \
+		--zephyr-base="${S}/zephyr-base/$(get_zephyr_version)" \
+		"$@"
+}
+
+src_configure() {
+	tc-export CC
+
+	while read -r board && read -r path; do
+		if [[ -z "${path}" ]]; then
+			continue
+		fi
+		if [[ ! -d "${S}/modules/ec/zephyr/${path}" ]]; then
+			die "Specified path for Zephyr project does not exist."
+		fi
+		local build_dir="build-${board}"
+
+		run_zmake configure "modules/ec/zephyr/${path}" -B "${build_dir}" \
+			|| die "Failed to configure ${build_dir}."
+
+		ZEPHYR_EC_BUILD_DIRECTORIES+=("${build_dir}")
+	done < <(cros_config_host "get-firmware-build-combinations" zephyr-ec || die)
+}
+
+src_compile() {
+	tc-export CC
+
+	for build_dir in "${ZEPHYR_EC_BUILD_DIRECTORIES[@]}"; do
+		run_zmake build "${build_dir}" || die "Failed to build ${build_dir}."
+	done
+}
+
+src_install() {
+	for build_dir in "${ZEPHYR_EC_BUILD_DIRECTORIES[@]}"; do
+		board="$(echo "${build_dir}" |cut -d/ -f1)"
+		board="${board#build-}"
+
+		insinto "/firmware/${board}"
+		doins "${build_dir}"/output/*
+	done
+}
diff --git a/chromeos-base/chromeos-zephyr/chromeos-zephyr-0.0.1-r711.ebuild b/chromeos-base/chromeos-zephyr/chromeos-zephyr-0.0.1-r711.ebuild
deleted file mode 100644
index ce6d2e5..0000000
--- a/chromeos-base/chromeos-zephyr/chromeos-zephyr-0.0.1-r711.ebuild
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright (C) 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.makefile file.
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("1343ad59f05dd3fa6551d339aae7b4e7f13bb030" "c3bd2094f92d574377f7af2aec147ae181aa5f8e" "8eb12e4466cc73f2a95292073832878814b8ed31" "ba5d0fb018cf200320efad9cc91b89e1f4a6d80c")
-CROS_WORKON_TREE=("060f5aa8b2726d17e2d12f764587a6a3ab7eeb81" "781df7da13c4275a2328c09e75fd937991d80e29" "049362d45a6362cbdede3ebd10c38ed8d446410a" "ef831ef09b8fdc0da7cceb25def086f853ae97cd")
-CROS_WORKON_USE_VCSID=1
-CROS_WORKON_PROJECT=(
-	"chromiumos/third_party/zephyr"
-	"chromiumos/third_party/zephyr/cmsis"
-	"chromiumos/third_party/zephyr/hal_stm32"
-	"chromiumos/platform/ec"
-)
-CROS_WORKON_LOCALNAME=(
-	"third_party/zephyr/main/v2.5"
-	"third_party/zephyr/cmsis/v2.5"
-	"third_party/zephyr/hal_stm32/v2.5"
-	"platform/ec"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}/zephyr-base"
-	"${S}/modules/cmsis"
-	"${S}/modules/hal_stm32"
-	"${S}/modules/ec"
-)
-
-inherit cros-workon cros-unibuild coreboot-sdk toolchain-funcs
-
-DESCRIPTION="Zephyr based Embedded Controller firmware"
-KEYWORDS="*"
-LICENSE="Apache-2.0 BSD-Google"
-IUSE="unibuild"
-REQUIRED_USE="unibuild"
-
-BDEPEND="
-	chromeos-base/zephyr-build-tools
-	dev-python/docopt
-	dev-python/pykwalify
-	dev-util/ninja
-"
-
-DEPEND="
-	chromeos-base/chromeos-config
-"
-RDEPEND="${DEPEND}"
-
-ZEPHYR_EC_BUILD_DIRECTORIES=()
-
-src_configure() {
-	tc-export CC
-
-	while read -r board && read -r path; do
-		if [[ -z "${path}" ]]; then
-			continue
-		fi
-		if [[ ! -d "${S}/modules/ec/zephyr/${path}" ]]; then
-			die "Specified path for Zephyr project does not exist."
-		fi
-		local build_dir="build-${board}"
-
-		zmake \
-			--modules-dir "${S}/modules" \
-			--zephyr-base "${S}/zephyr-base" \
-			configure \
-			"modules/ec/zephyr/${path}" \
-			-B "${build_dir}"
-
-		ZEPHYR_EC_BUILD_DIRECTORIES+=("${build_dir}")
-	done < <(cros_config_host "get-firmware-build-combinations" zephyr-ec || die)
-}
-
-src_compile() {
-	tc-export CC
-
-	for build_dir in "${ZEPHYR_EC_BUILD_DIRECTORIES[@]}"; do
-		zmake \
-			--modules-dir "${S}/modules" \
-			--zephyr-base "${S}/zephyr-base" \
-			build \
-			"${build_dir}"
-	done
-}
-
-src_install() {
-	for build_dir in "${ZEPHYR_EC_BUILD_DIRECTORIES[@]}"; do
-		board="$(echo "${build_dir}" |cut -d/ -f1)"
-		board="${board#build-}"
-
-		insinto "/firmware/${board}"
-		doins "${build_dir}/output/zephyr.bin"
-	done
-}
diff --git a/chromeos-base/chromeos-zephyr/chromeos-zephyr-9999.ebuild b/chromeos-base/chromeos-zephyr/chromeos-zephyr-9999.ebuild
index 7babdf2..4c86d09 100644
--- a/chromeos-base/chromeos-zephyr/chromeos-zephyr-9999.ebuild
+++ b/chromeos-base/chromeos-zephyr/chromeos-zephyr-9999.ebuild
@@ -4,25 +4,38 @@
 
 EAPI=7
 
+ZEPHYR_VERSIONS=( v2.7 )
+
 CROS_WORKON_USE_VCSID=1
 CROS_WORKON_PROJECT=(
-	"chromiumos/third_party/zephyr"
 	"chromiumos/third_party/zephyr/cmsis"
 	"chromiumos/third_party/zephyr/hal_stm32"
+	"chromiumos/third_party/zephyr/nanopb"
 	"chromiumos/platform/ec"
 )
+for v in "${ZEPHYR_VERSIONS[@]}"; do
+	CROS_WORKON_PROJECT+=("chromiumos/third_party/zephyr")
+done
+
 CROS_WORKON_LOCALNAME=(
-	"third_party/zephyr/main/v2.5"
-	"third_party/zephyr/cmsis/v2.5"
-	"third_party/zephyr/hal_stm32/v2.5"
+	"third_party/zephyr/cmsis"
+	"third_party/zephyr/hal_stm32"
+	"third_party/zephyr/nanopb"
 	"platform/ec"
 )
+for v in "${ZEPHYR_VERSIONS[@]}"; do
+	CROS_WORKON_LOCALNAME+=("third_party/zephyr/main/${v}")
+done
+
 CROS_WORKON_DESTDIR=(
-	"${S}/zephyr-base"
 	"${S}/modules/cmsis"
 	"${S}/modules/hal_stm32"
+	"${S}/modules/nanopb"
 	"${S}/modules/ec"
 )
+for v in "${ZEPHYR_VERSIONS[@]}"; do
+	CROS_WORKON_DESTDIR+=("${S}/zephyr-base/${v}")
+done
 
 inherit cros-workon cros-unibuild coreboot-sdk toolchain-funcs
 
@@ -32,6 +45,9 @@
 IUSE="unibuild"
 REQUIRED_USE="unibuild"
 
+# Add instances of vX.Y as 'zephyr_vX_Y' to IUSE
+IUSE="${IUSE} $(for v in "${ZEPHYR_VERSIONS[@]}"; do echo "zephyr_${v//./_}"; done)"
+
 BDEPEND="
 	chromeos-base/zephyr-build-tools
 	dev-python/docopt
@@ -46,6 +62,27 @@
 
 ZEPHYR_EC_BUILD_DIRECTORIES=()
 
+get_zephyr_version() {
+	local v
+	for v in "${ZEPHYR_VERSIONS[@]}"; do
+		if use "zephyr_${v//./_}"; then
+			echo "${v}"
+			return 0
+		fi
+	done
+
+	die "Please specify a zephyr_vX_X USE flag."
+}
+
+# Run zmake from the EC source directory, with default arguments for
+# modules and Zephyr base location for this ebuild.
+run_zmake() {
+	PYTHONPATH="${S}/modules/ec/zephyr/zmake" python3 -m zmake -D \
+		--modules-dir="${S}/modules" \
+		--zephyr-base="${S}/zephyr-base/$(get_zephyr_version)" \
+		"$@"
+}
+
 src_configure() {
 	tc-export CC
 
@@ -58,12 +95,8 @@
 		fi
 		local build_dir="build-${board}"
 
-		zmake \
-			--modules-dir "${S}/modules" \
-			--zephyr-base "${S}/zephyr-base" \
-			configure \
-			"modules/ec/zephyr/${path}" \
-			-B "${build_dir}"
+		run_zmake configure "modules/ec/zephyr/${path}" -B "${build_dir}" \
+			|| die "Failed to configure ${build_dir}."
 
 		ZEPHYR_EC_BUILD_DIRECTORIES+=("${build_dir}")
 	done < <(cros_config_host "get-firmware-build-combinations" zephyr-ec || die)
@@ -73,11 +106,7 @@
 	tc-export CC
 
 	for build_dir in "${ZEPHYR_EC_BUILD_DIRECTORIES[@]}"; do
-		zmake \
-			--modules-dir "${S}/modules" \
-			--zephyr-base "${S}/zephyr-base" \
-			build \
-			"${build_dir}"
+		run_zmake build "${build_dir}" || die "Failed to build ${build_dir}."
 	done
 }
 
@@ -87,6 +116,6 @@
 		board="${board#build-}"
 
 		insinto "/firmware/${board}"
-		doins "${build_dir}/output/zephyr.bin"
+		doins "${build_dir}"/output/*
 	done
 }
diff --git a/chromeos-base/chromium-source/chromium-source-93.0.4554.0_rc-r1.ebuild b/chromeos-base/chromium-source/chromium-source-97.0.4667.0_rc-r1.ebuild
similarity index 100%
rename from chromeos-base/chromium-source/chromium-source-93.0.4554.0_rc-r1.ebuild
rename to chromeos-base/chromium-source/chromium-source-97.0.4667.0_rc-r1.ebuild
diff --git a/chromeos-base/chunnel/chunnel-0.1.0-r19.ebuild b/chromeos-base/chunnel/chunnel-0.1.0-r19.ebuild
deleted file mode 100644
index 8b13d6b..0000000
--- a/chromeos-base/chunnel/chunnel-0.1.0-r19.ebuild
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="4a82047a4fc487bfd5a74bf9bf540c7952c5230c"
-CROS_WORKON_TREE="bac3b594c76e24ac386a4a97b24374325db5b73c"
-CROS_RUST_SUBDIR="vm_tools/chunnel"
-
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
-
-inherit cros-workon cros-rust user
-
-DESCRIPTION="Tunnel between localhost in different netns"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/chunnel"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="kvm_host"
-
-DEPEND="
-	chromeos-base/system_api:=
-	dev-rust/libchromeos:=
-	dev-rust/sys_util:=
-	=dev-rust/dbus-0.8*:=
-	=dev-rust/getopts-0.2*:=
-	=dev-rust/libc-0.2*:=
-	=dev-rust/log-0.4*:=
-	>=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3
-	>=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3
-	=dev-rust/remain-0.2*:=
-	dev-rust/sys_util:=
-	=dev-rust/tempfile-3*:=
-"
-
-RDEPEND="sys-apps/dbus"
-
-src_compile() {
-	ecargo_build
-	use test && ecargo_test --no-run --workspace
-}
-
-src_test() {
-	cros-rust_src_test --workspace
-}
-
-src_install() {
-	local build_dir="$(cros-rust_get_build_dir)"
-
-	if use kvm_host; then
-		dobin "${build_dir}/chunneld"
-
-		insinto /etc/init
-		doins init/chunneld.conf
-
-		insinto /etc/dbus-1/system.d
-		doins dbus/org.chromium.Chunneld.conf
-
-		insinto /usr/share/policy
-		newins "seccomp/chunneld-seccomp-${ARCH}.policy" chunneld-seccomp.policy
-	else
-		dobin "${build_dir}/chunnel"
-	fi
-}
-
-pkg_preinst() {
-	if use kvm_host; then
-		enewuser chunneld
-		enewgroup chunneld
-	fi
-	cros-rust_pkg_preinst
-}
diff --git a/chromeos-base/chunnel/chunnel-0.1.0-r25.ebuild b/chromeos-base/chunnel/chunnel-0.1.0-r25.ebuild
new file mode 100644
index 0000000..5af5048
--- /dev/null
+++ b/chromeos-base/chunnel/chunnel-0.1.0-r25.ebuild
@@ -0,0 +1,76 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="3709b33cb68acb2c4ae1227eb152e24b56a19f6c"
+CROS_WORKON_TREE="65aaf049ad00c6974476446be0a7abb305b4315b"
+CROS_RUST_SUBDIR="vm_tools/chunnel"
+
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
+
+inherit cros-workon cros-rust user
+
+DESCRIPTION="Tunnel between localhost in different netns"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/chunnel"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="kvm_host"
+
+DEPEND="
+	chromeos-base/system_api:=
+	dev-rust/libchromeos:=
+	dev-rust/sys_util:=
+	=dev-rust/dbus-0.9*:=
+	=dev-rust/dbus-tree-0.9*:=
+	=dev-rust/getopts-0.2*:=
+	=dev-rust/libc-0.2*:=
+	=dev-rust/log-0.4*:=
+	>=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3
+	>=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3
+	=dev-rust/remain-0.2*:=
+	dev-rust/sys_util:=
+	=dev-rust/tempfile-3*:=
+"
+
+RDEPEND="sys-apps/dbus"
+
+src_compile() {
+	ecargo_build
+	use test && ecargo_test --no-run --workspace
+}
+
+src_test() {
+	cros-rust_src_test --workspace
+}
+
+src_install() {
+	local build_dir="$(cros-rust_get_build_dir)"
+
+	if use kvm_host; then
+		dobin "${build_dir}/chunneld"
+
+		insinto /etc/init
+		doins init/chunneld.conf
+
+		insinto /etc/dbus-1/system.d
+		doins dbus/org.chromium.Chunneld.conf
+
+		insinto /usr/share/policy
+		newins "seccomp/chunneld-seccomp-${ARCH}.policy" chunneld-seccomp.policy
+	else
+		dobin "${build_dir}/chunnel"
+	fi
+}
+
+pkg_preinst() {
+	if use kvm_host; then
+		enewuser chunneld
+		enewgroup chunneld
+	fi
+	cros-rust_pkg_preinst
+}
diff --git a/chromeos-base/chunnel/chunnel-9999.ebuild b/chromeos-base/chunnel/chunnel-9999.ebuild
index ec0772e..3582c2b 100644
--- a/chromeos-base/chunnel/chunnel-9999.ebuild
+++ b/chromeos-base/chunnel/chunnel-9999.ebuild
@@ -23,7 +23,8 @@
 	chromeos-base/system_api:=
 	dev-rust/libchromeos:=
 	dev-rust/sys_util:=
-	=dev-rust/dbus-0.8*:=
+	=dev-rust/dbus-0.9*:=
+	=dev-rust/dbus-tree-0.9*:=
 	=dev-rust/getopts-0.2*:=
 	=dev-rust/libc-0.2*:=
 	=dev-rust/log-0.4*:=
diff --git a/chromeos-base/codelab/codelab-0.0.1-r150.ebuild b/chromeos-base/codelab/codelab-0.0.1-r150.ebuild
deleted file mode 100644
index 101571c..0000000
--- a/chromeos-base/codelab/codelab-0.0.1-r150.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "c8339e925dbb6132281f13d2df57ba1cad2d6a62" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk codelab .gn"
-
-PLATFORM_SUBDIR="codelab"
-
-inherit cros-workon platform
-
-DESCRIPTION="Developer codelab for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/codelab/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-src_install() {
-	dobin "${OUT}"/codelab
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/codelab_test"
-}
diff --git a/chromeos-base/codelab/codelab-0.0.1-r176.ebuild b/chromeos-base/codelab/codelab-0.0.1-r176.ebuild
new file mode 100644
index 0000000..bb68ff5
--- /dev/null
+++ b/chromeos-base/codelab/codelab-0.0.1-r176.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "715c28c8d4d5856350bde56cd68a95336513fe09" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk codelab .gn"
+
+PLATFORM_SUBDIR="codelab"
+
+inherit cros-workon platform
+
+DESCRIPTION="Developer codelab for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/codelab/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+src_install() {
+	dobin "${OUT}"/codelab
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/codelab_test"
+}
diff --git a/chromeos-base/common-assets/common-assets-0.0.2-r137.ebuild b/chromeos-base/common-assets/common-assets-0.0.2-r137.ebuild
deleted file mode 100644
index 58924c7..0000000
--- a/chromeos-base/common-assets/common-assets-0.0.2-r137.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-CROS_WORKON_COMMIT="ed1bce40cdd948cb92c7c190354383b5ed17f2a4"
-CROS_WORKON_TREE="bee194c2ea879bf27d08e1ebaf64d33e61d7dbff"
-CROS_WORKON_PROJECT="chromiumos/platform/assets"
-CROS_WORKON_LOCALNAME="platform/assets"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-
-inherit cros-workon
-
-DESCRIPTION="Common Chromium OS assets (images, sounds, etc.)"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/assets"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="
-	+fonts
-"
-
-# display_boot_message calls the pango-view program.
-RDEPEND="
-	fonts? ( chromeos-base/chromeos-fonts )
-	x11-libs/pango"
-
-# Don't strip NaCl executables. These are not linux executables and the
-# linux host's strip command doesn't know how to handle them correctly.
-STRIP_MASK="*.nexe"
-
-src_install() {
-	insinto /usr/share/chromeos-assets/images
-	doins -r images/*
-
-	insinto /usr/share/chromeos-assets/images_100_percent
-	doins -r images_100_percent/*
-
-	insinto /usr/share/chromeos-assets/images_200_percent
-	doins -r images_200_percent/*
-
-	insinto /usr/share/chromeos-assets/text
-	doins -r text/boot_messages
-	dosbin text/display_boot_message
-
-	# These files aren't used at runtime.
-	find "${D}" -name '*.grd' -delete
-}
diff --git a/chromeos-base/common-assets/common-assets-0.0.2-r139.ebuild b/chromeos-base/common-assets/common-assets-0.0.2-r139.ebuild
new file mode 100644
index 0000000..c983c50
--- /dev/null
+++ b/chromeos-base/common-assets/common-assets-0.0.2-r139.ebuild
@@ -0,0 +1,50 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+CROS_WORKON_COMMIT="3f8d39f13d447a12d7766572b8d272d0d4164d68"
+CROS_WORKON_TREE="e82c1f1ed269f153b4b580ebcc5f66d9a7ca14a5"
+CROS_WORKON_PROJECT="chromiumos/platform/assets"
+CROS_WORKON_LOCALNAME="platform/assets"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+
+inherit cros-workon
+
+DESCRIPTION="Common Chromium OS assets (images, sounds, etc.)"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/assets"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="
+	+fonts
+"
+
+# display_boot_message calls the pango-view program.
+RDEPEND="
+	fonts? ( chromeos-base/chromeos-fonts )
+	x11-libs/pango"
+
+# Don't strip NaCl executables. These are not linux executables and the
+# linux host's strip command doesn't know how to handle them correctly.
+STRIP_MASK="*.nexe"
+
+src_install() {
+	insinto /usr/share/chromeos-assets/images
+	doins -r images/*
+
+	insinto /usr/share/chromeos-assets/images_100_percent
+	doins -r images_100_percent/*
+
+	insinto /usr/share/chromeos-assets/images_200_percent
+	doins -r images_200_percent/*
+
+	insinto /usr/share/chromeos-assets/text
+	doins -r text/boot_messages
+	dosbin text/display_boot_message
+
+	# These files aren't used at runtime.
+	find "${D}" -name '*.grd' -delete
+}
diff --git a/chromeos-base/crash-reporter/crash-reporter-0.0.1-r3586.ebuild b/chromeos-base/crash-reporter/crash-reporter-0.0.1-r3586.ebuild
deleted file mode 100644
index 194f5e3..0000000
--- a/chromeos-base/crash-reporter/crash-reporter-0.0.1-r3586.ebuild
+++ /dev/null
@@ -1,172 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="9af083c78a329699153cc604ee62cd02f3a87b2b"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "6801629d7f37434bc503901837418db96ea3fc51" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk crash-reporter metrics .gn"
-
-PLATFORM_SUBDIR="crash-reporter"
-
-inherit cros-arm64 cros-i686 cros-workon platform systemd udev user
-
-DESCRIPTION="Crash reporting service that uploads crash reports with debug information"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/crash-reporter/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="arcpp arcvm chromeless_tty cros_ec cros_embedded -direncryption kvm_guest systemd fuzzer test vm-containers"
-
-COMMON_DEPEND="
-	chromeos-base/minijail:=
-	chromeos-base/google-breakpad:=[cros_i686?,cros_arm64?]
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	dev-libs/protobuf:=
-	dev-libs/re2:=
-	kvm_guest? ( net-libs/grpc:= )
-	net-misc/curl:=
-	sys-libs/zlib:=
-"
-RDEPEND="${COMMON_DEPEND}
-	chromeos-base/chromeos-ca-certificates
-	direncryption? ( sys-apps/keyutils:= )
-	cros_ec? ( chromeos-base/ec-utils )
-"
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/debugd-client:=
-	chromeos-base/session_manager-client:=
-	chromeos-base/shill-client:=
-	chromeos-base/system_api:=[fuzzer?]
-	chromeos-base/vboot_reference:=
-	chromeos-base/vm_protos:=
-	test? (
-		app-arch/gzip
-	)
-"
-
-PATCHES="
-	${FILESDIR}/0001-crash-reporter-Fix-anomaly_detector-build.patch
-"
-
-src_configure() {
-	platform_src_configure
-	use arcpp && use_i686 && platform_src_configure_i686
-	use arcpp && use_arm64 && platform_src_configure_arm64
-}
-
-src_compile() {
-	platform_src_compile
-	use arcpp && use_i686 && platform_src_compile_i686 "core_collector"
-	use arcpp && use_arm64 && platform_src_compile_arm64 "core_collector"
-}
-
-pkg_setup() {
-	# Has to be done in pkg_setup() instead of pkg_preinst() since
-	# src_install() will need the crash user and group.
-	enewuser "crash"
-	enewgroup "crash"
-	# A group to manage file permissions for files that crash reporter
-	# components need to access.
-	enewgroup "crash-access"
-	# A group to grant access to the user's crash directory (in /home)
-	enewgroup "crash-user-access"
-	cros-workon_pkg_setup
-}
-
-src_install() {
-	into /
-	dosbin "${OUT}"/crash_reporter
-	if ! use vm-containers; then
-		dosbin "${OUT}"/crash_sender
-	fi
-
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.AnomalyEventService.conf
-
-	local daemon_store="/etc/daemon-store/crash"
-	dodir "${daemon_store}"
-	fperms 3770 "${daemon_store}"
-	fowners crash:crash-user-access "${daemon_store}"
-
-	into /usr
-	use cros_embedded || dobin "${OUT}"/anomaly_detector
-	dosbin kernel_log_collector.sh
-
-	if use arcpp; then
-		dobin "${OUT}"/core_collector
-		use_i686 && newbin "$(platform_out_i686)"/core_collector "core_collector32"
-		use_arm64 && newbin "$(platform_out_arm64)"/core_collector "core_collector64"
-	fi
-
-	if use systemd; then
-		systemd_dounit init/crash-reporter.service
-		systemd_dounit init/crash-boot-collect.service
-		systemd_enable_service multi-user.target crash-reporter.service
-		systemd_enable_service multi-user.target crash-boot-collect.service
-		if ! use vm-containers; then
-			systemd_dounit init/crash-sender.service
-			systemd_enable_service multi-user.target crash-sender.service
-			systemd_dounit init/crash-sender.timer
-			systemd_enable_service timers.target crash-sender.timer
-		fi
-		if ! use cros_embedded; then
-			systemd_dounit init/anomaly-detector.service
-			systemd_enable_service multi-user.target anomaly-detector.service
-		fi
-	else
-		insinto /etc/init
-		doins init/crash-reporter.conf
-		doins init/crash-reporter-early-init.conf
-		doins init/crash-boot-collect.conf
-		if ! use vm-containers; then
-			doins init/crash-sender.conf
-		fi
-		use cros_embedded || doins init/anomaly-detector.conf
-	fi
-
-	insinto /etc
-	doins crash_reporter_logs.conf
-
-	udev_dorules 99-crash-reporter.rules
-
-	# Install metrics/OWNERS as the owners file for the fuzzers.
-	# The owners files need to have actual email addresses, not
-	# an include-link.
-	platform_fuzzer_install "${S}"/../metrics/OWNERS \
-		"${OUT}"/crash_sender_fuzzer \
-		--dict "${S}"/crash_sender_fuzzer.dict
-
-	platform_fuzzer_install "${S}"/../metrics/OWNERS \
-		"${OUT}"/chrome_collector_fuzzer \
-		--dict "${S}"/chrome_collector_fuzzer.dict
-
-	platform_fuzzer_install "${S}"/../metrics/OWNERS \
-		"${OUT}"/anomaly_detector_fuzzer \
-		--dict "${S}"/anomaly_detector_fuzzer.dict
-
-	# Install crash_serializer into /usr/local/sbin, which is only present
-	# on test images. See:
-	# https://chromium.googlesource.com/chromiumos/platform2/+/refs/heads/master/dev-install/README.md#Environments
-	into /usr/local
-	dosbin "${OUT}"/crash_serializer
-}
-
-platform_pkg_test() {
-	local gtest_filter_user_tests="-*.RunAsRoot*:"
-	local gtest_filter_root_tests="*.RunAsRoot*-"
-
-	platform_test "run" "${OUT}/crash_reporter_test" "0" \
-		"${gtest_filter_user_tests}"
-	platform_test "run" "${OUT}/crash_reporter_test" "1" \
-		"${gtest_filter_root_tests}"
-	platform_test "run" "${OUT}/anomaly_detector_test"
-	platform_test "run" "${OUT}/anomaly_detector_text_file_reader_test"
-	platform_test "run" "${OUT}/anomaly_detector_log_reader_test"
-}
diff --git a/chromeos-base/crash-reporter/crash-reporter-0.0.1-r3651.ebuild b/chromeos-base/crash-reporter/crash-reporter-0.0.1-r3651.ebuild
new file mode 100644
index 0000000..10414aa
--- /dev/null
+++ b/chromeos-base/crash-reporter/crash-reporter-0.0.1-r3651.ebuild
@@ -0,0 +1,176 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "465a8e6252f494e70f702d2555b6cb549bb161b1" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk crash-reporter metrics .gn"
+
+PLATFORM_SUBDIR="crash-reporter"
+
+inherit cros-arm64 cros-i686 cros-workon platform systemd udev user
+
+DESCRIPTION="Crash reporting service that uploads crash reports with debug information"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/crash-reporter/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="arcpp arcvm chromeless_tty cros_ec cros_embedded -direncryption kvm_guest systemd fuzzer test vm-containers"
+
+COMMON_DEPEND="
+	chromeos-base/minijail:=
+	chromeos-base/google-breakpad:=[cros_i686?,cros_arm64?]
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	dev-libs/protobuf:=
+	dev-libs/re2:=
+	kvm_guest? ( net-libs/grpc:= )
+	net-misc/curl:=
+	sys-libs/zlib:=
+"
+RDEPEND="${COMMON_DEPEND}
+	chromeos-base/chromeos-ca-certificates
+	direncryption? ( sys-apps/keyutils:= )
+	cros_ec? ( chromeos-base/ec-utils )
+"
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/debugd-client:=
+	chromeos-base/session_manager-client:=
+	chromeos-base/shill-client:=
+	chromeos-base/system_api:=[fuzzer?]
+	chromeos-base/vboot_reference:=
+	chromeos-base/vm_protos:=
+	test? (
+		app-arch/gzip
+	)
+"
+
+PATCHES="
+	${FILESDIR}/0001-crash-reporter-Fix-anomaly_detector-build.patch
+"
+
+src_configure() {
+	platform_src_configure
+	use arcpp && use_i686 && platform_src_configure_i686
+	use arcpp && use_arm64 && platform_src_configure_arm64
+}
+
+src_compile() {
+	platform_src_compile
+	use arcpp && use_i686 && platform_src_compile_i686 "core_collector"
+	use arcpp && use_arm64 && platform_src_compile_arm64 "core_collector"
+}
+
+pkg_setup() {
+	# Has to be done in pkg_setup() instead of pkg_preinst() since
+	# src_install() will need the crash user and group.
+	enewuser "crash"
+	enewgroup "crash"
+	# A group to manage file permissions for files that crash reporter
+	# components need to access.
+	enewgroup "crash-access"
+	# A group to grant access to the user's crash directory (in /home)
+	enewgroup "crash-user-access"
+	cros-workon_pkg_setup
+}
+
+src_install() {
+	into /
+	dosbin "${OUT}"/crash_reporter
+	if ! use vm-containers; then
+		dosbin "${OUT}"/crash_sender
+	fi
+
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.AnomalyEventService.conf
+
+	local daemon_store="/etc/daemon-store/crash"
+	dodir "${daemon_store}"
+	fperms 3770 "${daemon_store}"
+	fowners crash:crash-user-access "${daemon_store}"
+
+	into /usr
+	use cros_embedded || dobin "${OUT}"/anomaly_detector
+	dosbin kernel_log_collector.sh
+
+	if use arcpp; then
+		dobin "${OUT}"/core_collector
+		use_i686 && newbin "$(platform_out_i686)"/core_collector "core_collector32"
+		use_arm64 && newbin "$(platform_out_arm64)"/core_collector "core_collector64"
+	fi
+
+	if use systemd; then
+		systemd_dounit init/crash-reporter.service
+		systemd_dounit init/crash-boot-collect.service
+		systemd_enable_service multi-user.target crash-reporter.service
+		systemd_enable_service multi-user.target crash-boot-collect.service
+		if ! use vm-containers; then
+			systemd_dounit init/crash-sender.service
+			systemd_enable_service multi-user.target crash-sender.service
+			systemd_dounit init/crash-sender.timer
+			systemd_enable_service timers.target crash-sender.timer
+		fi
+		if ! use cros_embedded; then
+			systemd_dounit init/anomaly-detector.service
+			systemd_enable_service multi-user.target anomaly-detector.service
+		fi
+	else
+		insinto /etc/init
+		doins init/crash-reporter.conf
+		doins init/crash-reporter-early-init.conf
+		doins init/crash-boot-collect.conf
+		if ! use vm-containers; then
+			doins init/crash-sender.conf
+		fi
+		use cros_embedded || doins init/anomaly-detector.conf
+	fi
+
+	insinto /etc
+	doins crash_reporter_logs.conf
+
+	udev_dorules 99-crash-reporter.rules
+
+	# Install metrics/OWNERS as the owners file for the fuzzers.
+	# The owners files need to have actual email addresses, not
+	# an include-link.
+	local fuzzer_component_id="1032705"
+	platform_fuzzer_install "${S}"/../metrics/OWNERS \
+		"${OUT}"/crash_sender_fuzzer \
+		--dict "${S}"/crash_sender_fuzzer.dict \
+		--comp "${fuzzer_component_id}"
+
+	platform_fuzzer_install "${S}"/../metrics/OWNERS \
+		"${OUT}"/chrome_collector_fuzzer \
+		--dict "${S}"/chrome_collector_fuzzer.dict \
+		--comp "${fuzzer_component_id}"
+
+	platform_fuzzer_install "${S}"/../metrics/OWNERS \
+		"${OUT}"/anomaly_detector_fuzzer \
+		--dict "${S}"/anomaly_detector_fuzzer.dict \
+		--comp "${fuzzer_component_id}"
+
+	# Install crash_serializer into /usr/local/sbin, which is only present
+	# on test images. See:
+	# https://chromium.googlesource.com/chromiumos/platform2/+/refs/heads/master/dev-install/README.md#Environments
+	into /usr/local
+	dosbin "${OUT}"/crash_serializer
+}
+
+platform_pkg_test() {
+	local gtest_filter_user_tests="-*.RunAsRoot*:"
+	local gtest_filter_root_tests="*.RunAsRoot*-"
+
+	platform_test "run" "${OUT}/crash_reporter_test" "0" \
+		"${gtest_filter_user_tests}"
+	platform_test "run" "${OUT}/crash_reporter_test" "1" \
+		"${gtest_filter_root_tests}"
+	platform_test "run" "${OUT}/anomaly_detector_test"
+	platform_test "run" "${OUT}/anomaly_detector_text_file_reader_test"
+	platform_test "run" "${OUT}/anomaly_detector_log_reader_test"
+}
diff --git a/chromeos-base/crash-reporter/crash-reporter-9999.ebuild b/chromeos-base/crash-reporter/crash-reporter-9999.ebuild
index 08ad742..14510a8 100644
--- a/chromeos-base/crash-reporter/crash-reporter-9999.ebuild
+++ b/chromeos-base/crash-reporter/crash-reporter-9999.ebuild
@@ -137,17 +137,21 @@
 	# Install metrics/OWNERS as the owners file for the fuzzers.
 	# The owners files need to have actual email addresses, not
 	# an include-link.
+	local fuzzer_component_id="1032705"
 	platform_fuzzer_install "${S}"/../metrics/OWNERS \
 		"${OUT}"/crash_sender_fuzzer \
-		--dict "${S}"/crash_sender_fuzzer.dict
+		--dict "${S}"/crash_sender_fuzzer.dict \
+		--comp "${fuzzer_component_id}"
 
 	platform_fuzzer_install "${S}"/../metrics/OWNERS \
 		"${OUT}"/chrome_collector_fuzzer \
-		--dict "${S}"/chrome_collector_fuzzer.dict
+		--dict "${S}"/chrome_collector_fuzzer.dict \
+		--comp "${fuzzer_component_id}"
 
 	platform_fuzzer_install "${S}"/../metrics/OWNERS \
 		"${OUT}"/anomaly_detector_fuzzer \
-		--dict "${S}"/anomaly_detector_fuzzer.dict
+		--dict "${S}"/anomaly_detector_fuzzer.dict \
+		--comp "${fuzzer_component_id}"
 
 	# Install crash_serializer into /usr/local/sbin, which is only present
 	# on test images. See:
diff --git a/chromeos-base/cronista/cronista-0.24.52-r7.ebuild b/chromeos-base/cronista/cronista-0.24.52-r7.ebuild
deleted file mode 100644
index 5042cd6..0000000
--- a/chromeos-base/cronista/cronista-0.24.52-r7.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="1ee46243dce2991eddf488b7b19ab6bac7d3acdd"
-CROS_WORKON_TREE="88e9197eef6172639e45852afa826fa1c6e0eb20"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE="cronista"
-
-inherit user cros-workon cros-rust
-
-DESCRIPTION="Authenticated storage daemon."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/cronista/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="manatee"
-
-RDEPEND="sys-apps/dbus"
-
-DEPEND="
-	chromeos-base/libsirenia:=
-	=dev-rust/dbus-0.8*:=
-	=dev-rust/getopts-0.2*:=
-	dev-rust/libchromeos:=
-	>=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0
-	>=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3
-	>=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3
-	>=dev-rust/serde-1.0.114:= <dev-rust/serde-2.0.0
-	>=dev-rust/serde_derive-1.0.114:= <dev-rust/serde_derive-2.0.0
-	dev-rust/sys_util:=
-	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
-	dev-rust/system_api:=
-"
-
-pkg_setup() {
-	enewuser cronista
-	enewgroup cronista
-	cros-rust_pkg_setup
-}
-
-src_install() {
-	local build_dir="$(cros-rust_get_build_dir)"
-	dobin "${build_dir}/cronista"
-
-	local daemon_store="/etc/daemon-store/cronista"
-	dodir "${daemon_store}"
-	fperms 0700 "${daemon_store}"
-	fowners cronista:cronista "${daemon_store}"
-
-	if use manatee ;  then
-		insinto /etc/init
-		doins upstart/cronista.conf
-	fi
-}
diff --git a/chromeos-base/cronista/cronista-0.24.52-r9.ebuild b/chromeos-base/cronista/cronista-0.24.52-r9.ebuild
new file mode 100644
index 0000000..bb6a41f
--- /dev/null
+++ b/chromeos-base/cronista/cronista-0.24.52-r9.ebuild
@@ -0,0 +1,57 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="e91233614f3f3261f08095183fa9dcf32e7017d2"
+CROS_WORKON_TREE="503f90eeb4b1444084ef48b0bed398305585d755"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE="cronista"
+
+inherit user cros-workon cros-rust
+
+DESCRIPTION="Authenticated storage daemon."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/cronista/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="manatee"
+
+RDEPEND="sys-apps/dbus"
+
+DEPEND="
+	chromeos-base/libsirenia:=
+	=dev-rust/dbus-0.9*:=
+	=dev-rust/getopts-0.2*:=
+	dev-rust/libchromeos:=
+	>=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0
+	>=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3
+	>=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3
+	>=dev-rust/serde-1.0.114:= <dev-rust/serde-2.0.0
+	>=dev-rust/serde_derive-1.0.114:= <dev-rust/serde_derive-2.0.0
+	dev-rust/sys_util:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+	dev-rust/system_api:=
+"
+
+pkg_setup() {
+	enewuser cronista
+	enewgroup cronista
+	cros-rust_pkg_setup
+}
+
+src_install() {
+	local build_dir="$(cros-rust_get_build_dir)"
+	dobin "${build_dir}/cronista"
+
+	local daemon_store="/etc/daemon-store/cronista"
+	dodir "${daemon_store}"
+	fperms 0700 "${daemon_store}"
+	fowners cronista:cronista "${daemon_store}"
+
+	if use manatee ;  then
+		insinto /etc/init
+		doins upstart/cronista.conf
+	fi
+}
diff --git a/chromeos-base/cronista/cronista-9999.ebuild b/chromeos-base/cronista/cronista-9999.ebuild
index 46eea96..a6e4fea 100644
--- a/chromeos-base/cronista/cronista-9999.ebuild
+++ b/chromeos-base/cronista/cronista-9999.ebuild
@@ -20,7 +20,7 @@
 
 DEPEND="
 	chromeos-base/libsirenia:=
-	=dev-rust/dbus-0.8*:=
+	=dev-rust/dbus-0.9*:=
 	=dev-rust/getopts-0.2*:=
 	dev-rust/libchromeos:=
 	>=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0
diff --git a/chromeos-base/cros-camera-android-deps/cros-camera-android-deps-0.0.1-r31.ebuild b/chromeos-base/cros-camera-android-deps/cros-camera-android-deps-0.0.1-r31.ebuild
deleted file mode 100644
index 5049dcd..0000000
--- a/chromeos-base/cros-camera-android-deps/cros-camera-android-deps-0.0.1-r31.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "9696a94a7fbf4f5e2b41c543f362ed1a22899468" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE=".gn camera/build camera/android common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/android"
-
-inherit cros-workon platform
-
-DESCRIPTION="Android dependencies needed by cros-camera service and vendor HALs"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND="
-	!media-libs/cros-camera-android-headers
-	!media-libs/cros-camera-libcamera_client
-	!media-libs/cros-camera-libcamera_metadata
-"
-
-src_configure() {
-	cros_optimize_package_for_speed
-	platform_src_configure
-}
-
-src_install() {
-	platform_src_install
-
-	local include_dir="/usr/include/android"
-
-	insinto "${include_dir}"
-	doins -r header_files/include/*
-
-	insinto "${include_dir}"/system
-	doins libcamera_metadata/include/system/*.h
-	# Install into the system folder to avoid cros lint complaint of
-	# "include the directory when naming .h files"
-	doins libcamera_metadata/include/camera_metadata_hidden.h
-
-	insinto "${include_dir}"/camera
-	doins libcamera_client/include/camera/*.h
-
-	dolib.so "${OUT}"/lib/libcros_camera_android_deps.so
-
-	insinto /usr/"$(get_libdir)"/pkgconfig
-	doins "${OUT}"/obj/camera/android/libcros_camera_android_deps.pc
-}
diff --git a/chromeos-base/cros-camera-android-deps/cros-camera-android-deps-0.0.1-r57.ebuild b/chromeos-base/cros-camera-android-deps/cros-camera-android-deps-0.0.1-r57.ebuild
new file mode 100644
index 0000000..5120fa3
--- /dev/null
+++ b/chromeos-base/cros-camera-android-deps/cros-camera-android-deps-0.0.1-r57.ebuild
@@ -0,0 +1,56 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "9696a94a7fbf4f5e2b41c543f362ed1a22899468" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/android common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/android"
+
+inherit cros-workon platform
+
+DESCRIPTION="Android dependencies needed by cros-camera service and vendor HALs"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	!media-libs/cros-camera-android-headers
+	!media-libs/cros-camera-libcamera_client
+	!media-libs/cros-camera-libcamera_metadata
+"
+
+src_configure() {
+	cros_optimize_package_for_speed
+	platform_src_configure
+}
+
+src_install() {
+	platform_src_install
+
+	local include_dir="/usr/include/android"
+
+	insinto "${include_dir}"
+	doins -r header_files/include/*
+
+	insinto "${include_dir}"/system
+	doins libcamera_metadata/include/system/*.h
+	# Install into the system folder to avoid cros lint complaint of
+	# "include the directory when naming .h files"
+	doins libcamera_metadata/include/camera_metadata_hidden.h
+
+	insinto "${include_dir}"/camera
+	doins libcamera_client/include/camera/*.h
+
+	dolib.so "${OUT}"/lib/libcros_camera_android_deps.so
+
+	insinto /usr/"$(get_libdir)"/pkgconfig
+	doins "${OUT}"/obj/camera/android/libcros_camera_android_deps.pc
+}
diff --git a/chromeos-base/cros-camera-libs/cros-camera-libs-0.0.1-r115.ebuild b/chromeos-base/cros-camera-libs/cros-camera-libs-0.0.1-r115.ebuild
deleted file mode 100644
index fd0d543..0000000
--- a/chromeos-base/cros-camera-libs/cros-camera-libs-0.0.1-r115.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "c37af7d99913a584dbfb1b64fdb83acb19e91c20" "049eedf136293a1ab81617017200cb31032eb384" "6cdd3e4e16d9890ff8b5fe897e4cf5a94620c315" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "0c32b7c859889403e93cba02daed08c9537ba10f" "903fe92b2526a414ef04db27fd52554a9693158a" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/include camera/mojo common-mk iioservice/libiioservice_ipc iioservice/mojo metrics"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/common"
-
-inherit cros-camera cros-constants cros-workon platform
-
-DESCRIPTION="Chrome OS camera common libraries."
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="camera_feature_portrait_mode ipu6se"
-
-BDEPEND="virtual/pkgconfig"
-
-# TODO: Remove the conflicting packages
-CONFLICTING_PACKAGES="
-	!media-libs/cros-camera-libcab
-	!media-libs/cros-camera-libcam_gpu_algo
-	!media-libs/cros-camera-libcamera_common
-	!media-libs/cros-camera-libcamera_connector
-	!media-libs/cros-camera-libcamera_exif
-	!media-libs/cros-camera-libcamera_ipc
-	!media-libs/cros-camera-libcamera_timezone
-	!media-libs/cros-camera-libcamera_v4l2_device
-	!media-libs/cros-camera-libcbm
-	!media-libs/cros-camera-libjda
-"
-
-RDEPEND="
-	${CONFLICTING_PACKAGES}
-	chromeos-base/cros-camera-android-deps:=
-	camera_feature_portrait_mode? ( media-libs/cros-camera-effect-portrait-mode:= )
-	media-libs/libexif:=
-	media-libs/libsync:=
-	media-libs/minigbm:=
-	media-libs/cros-camera-facessd:=
-	virtual/libudev:=
-	x11-libs/libdrm:=
-"
-
-DEPEND="
-	${RDEPEND}
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	media-libs/cros-camera-libcamera_connector_headers:=
-	media-libs/libyuv:=
-"
-
-src_configure() {
-	cros_optimize_package_for_speed
-	platform_src_configure
-}
-
-src_install() {
-	# Install the sandboxed algorithm service.
-	dobin "${OUT}"/cros_camera_algo
-
-	insinto /etc/init
-	doins init/cros-camera-algo.conf
-
-	insinto /etc/dbus-1/system.d
-	doins dbus/CrosCameraAlgo.conf
-
-	insinto /usr/share/policy
-	newins "seccomp_filter/cros-camera-algo-${ARCH}.policy" cros-camera-algo.policy
-
-	# The sandboxed GPU service is used by Portrait Mode feature and IPU6SE
-	# camera HAL.
-	if use camera_feature_portrait_mode || use ipu6se; then
-		insinto /etc/init
-		doins init/cros-camera-gpu-algo.conf
-
-		insinto /usr/share/policy
-		newins "seccomp_filter/cros-camera-gpu-algo-${ARCH}.policy" cros-camera-gpu-algo.policy
-	fi
-
-	# Install libcros_camera required by the camera HAL implementations.
-	insinto /usr/include/cros-camera/
-	doins -r ../include/cros-camera/*
-	# TODO(crbug.com/1197394): Remove after the issue is resolved.
-	camera_mojo_files=$(find "${OUT}"/gen/include/camera/mojo -name '*.mojom.h')
-	einfo "${camera_mojo_files}"
-	insinto /usr/include/cros-camera/mojo/camera
-	doins -r "${OUT}"/gen/include/camera/mojo
-
-	insinto /usr/include/cros-camera/mojo/iioservice
-	doins -r "${OUT}"/gen/include/iioservice/mojo
-
-	dolib.so "${OUT}"/lib/libcros_camera.so
-	dolib.a "${OUT}"/libcros_camera_mojom.a
-	# Project Pita libraries need libcamera_connector.so to run.
-	dosym libcros_camera.so /usr/"$(get_libdir)"/libcamera_connector.so
-
-	insinto /usr/"$(get_libdir)"/pkgconfig
-	doins "${OUT}"/obj/camera/common/libcros_camera.pc
-
-	platform_src_install
-}
-
-platform_pkg_test() {
-	local cros_camera_tests=(
-		cbm_test
-		embed_file_toc_test
-		future_test
-	)
-	local test_bin
-	for test_bin in "${cros_camera_tests[@]}"; do
-		platform_test run "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/cros-camera-libs/cros-camera-libs-0.0.1-r216.ebuild b/chromeos-base/cros-camera-libs/cros-camera-libs-0.0.1-r216.ebuild
new file mode 100644
index 0000000..e12baa4
--- /dev/null
+++ b/chromeos-base/cros-camera-libs/cros-camera-libs-0.0.1-r216.ebuild
@@ -0,0 +1,126 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="b7ed0ed288d39556e6141108005d048b913afed7"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e08a2eb734e33827dffeecf57eca046cd1091373" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "32ac98629dfba863322d9dc20a553d071bb70df0" "786825f5ecfe94fcf4d839470255111ca27b4d6f" "21f96983b4c04d23267767a4f371212fe68039d9" "542b6a1b940801e08d9d1aa3ff2657d06dc80bfa" "77d69659cf481a4d0917b7c100630f3c969b5720" "5344097beef866bd9f20e32d6264c0d33ea1623a")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE=".gn common-mk metrics camera/build camera/common camera/features camera/gpu camera/include camera/mojo iioservice/libiioservice_ipc iioservice/mojo"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/common"
+
+inherit cros-camera cros-constants cros-workon platform
+
+DESCRIPTION="Chrome OS camera common libraries."
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+# 'camera_feature_hdrnet', 'ipu6' and 'ipu6ep' are passed to and used in BUILD.gn files.
+IUSE="camera_feature_hdrnet camera_feature_portrait_mode ipu6 ipu6ep ipu6se"
+
+BDEPEND="virtual/pkgconfig"
+
+# TODO: Remove the conflicting packages
+CONFLICTING_PACKAGES="
+	!media-libs/cros-camera-libcab
+	!media-libs/cros-camera-libcam_gpu_algo
+	!media-libs/cros-camera-libcamera_common
+	!media-libs/cros-camera-libcamera_connector
+	!media-libs/cros-camera-libcamera_exif
+	!media-libs/cros-camera-libcamera_ipc
+	!media-libs/cros-camera-libcamera_timezone
+	!media-libs/cros-camera-libcamera_v4l2_device
+	!media-libs/cros-camera-libcbm
+	!media-libs/cros-camera-libjda
+"
+
+RDEPEND="
+	${CONFLICTING_PACKAGES}
+	chromeos-base/cros-camera-android-deps:=
+	camera_feature_hdrnet? ( media-libs/cros-camera-libgcam:= )
+	camera_feature_portrait_mode? ( media-libs/cros-camera-effect-portrait-mode:= )
+	media-libs/libexif:=
+	media-libs/libsync:=
+	media-libs/minigbm:=
+	media-libs/cros-camera-facessd:=
+	virtual/libudev:=
+	x11-libs/libdrm:=
+"
+
+DEPEND="
+	${RDEPEND}
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	media-libs/cros-camera-libcamera_connector_headers:=
+	media-libs/libyuv:=
+"
+
+src_configure() {
+	cros_optimize_package_for_speed
+	platform_src_configure
+}
+
+src_install() {
+	# Install the sandboxed algorithm service.
+	dobin "${OUT}"/cros_camera_algo
+
+	insinto /etc/init
+	doins init/cros-camera-algo.conf
+
+	insinto /etc/dbus-1/system.d
+	doins dbus/CrosCameraAlgo.conf
+
+	insinto /usr/share/policy
+	newins "seccomp_filter/cros-camera-algo-${ARCH}.policy" cros-camera-algo.policy
+
+	# The sandboxed GPU service is used by Portrait Mode feature and IPU6SE
+	# camera HAL.
+	if use camera_feature_portrait_mode || use ipu6se; then
+		insinto /etc/init
+		doins init/cros-camera-gpu-algo.conf
+
+		insinto /usr/share/policy
+		newins "seccomp_filter/cros-camera-gpu-algo-${ARCH}.policy" cros-camera-gpu-algo.policy
+	fi
+
+	# Install libcros_camera required by the camera HAL implementations.
+	insinto /usr/include/cros-camera/
+	doins -r ../include/cros-camera/*
+	# TODO(crbug.com/1197394): Remove after the issue is resolved.
+	camera_mojo_files=$(find "${OUT}"/gen/include/camera/mojo -name '*.mojom.h')
+	einfo "${camera_mojo_files}"
+	insinto /usr/include/cros-camera/mojo/camera
+	doins -r "${OUT}"/gen/include/camera/mojo
+
+	insinto /usr/include/cros-camera/mojo/iioservice
+	doins -r "${OUT}"/gen/include/iioservice/mojo
+
+	dolib.so "${OUT}"/lib/libcros_camera.so
+	dolib.a "${OUT}"/libcros_camera_mojom.a
+	# Project Pita libraries need libcamera_connector.so to run.
+	dosym libcros_camera.so /usr/"$(get_libdir)"/libcamera_connector.so
+
+	insinto /usr/"$(get_libdir)"/pkgconfig
+	doins "${OUT}"/obj/camera/common/libcros_camera.pc
+
+	platform_src_install
+}
+
+platform_pkg_test() {
+	local cros_camera_tests=(
+		camera_face_detection_test
+		camera_hal3_helpers_test
+		cbm_test
+		embed_file_toc_test
+		future_test
+		zsl_helper_test
+	)
+	local test_bin
+	for test_bin in "${cros_camera_tests[@]}"; do
+		platform_test run "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/cros-camera-libs/cros-camera-libs-9999.ebuild b/chromeos-base/cros-camera-libs/cros-camera-libs-9999.ebuild
index fcbb228..6d0e682 100644
--- a/chromeos-base/cros-camera-libs/cros-camera-libs-9999.ebuild
+++ b/chromeos-base/cros-camera-libs/cros-camera-libs-9999.ebuild
@@ -5,7 +5,7 @@
 
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/include camera/mojo common-mk iioservice/libiioservice_ipc iioservice/mojo metrics"
+CROS_WORKON_SUBTREE=".gn common-mk metrics camera/build camera/common camera/features camera/gpu camera/include camera/mojo iioservice/libiioservice_ipc iioservice/mojo"
 CROS_WORKON_OUTOFTREE_BUILD="1"
 CROS_WORKON_INCREMENTAL_BUILD="1"
 
@@ -17,7 +17,9 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="camera_feature_portrait_mode ipu6se"
+
+# 'camera_feature_hdrnet', 'ipu6' and 'ipu6ep' are passed to and used in BUILD.gn files.
+IUSE="camera_feature_hdrnet camera_feature_portrait_mode ipu6 ipu6ep ipu6se"
 
 BDEPEND="virtual/pkgconfig"
 
@@ -38,6 +40,7 @@
 RDEPEND="
 	${CONFLICTING_PACKAGES}
 	chromeos-base/cros-camera-android-deps:=
+	camera_feature_hdrnet? ( media-libs/cros-camera-libgcam:= )
 	camera_feature_portrait_mode? ( media-libs/cros-camera-effect-portrait-mode:= )
 	media-libs/libexif:=
 	media-libs/libsync:=
@@ -107,9 +110,12 @@
 
 platform_pkg_test() {
 	local cros_camera_tests=(
+		camera_face_detection_test
+		camera_hal3_helpers_test
 		cbm_test
 		embed_file_toc_test
 		future_test
+		zsl_helper_test
 	)
 	local test_bin
 	for test_bin in "${cros_camera_tests[@]}"; do
diff --git a/chromeos-base/cros-camera-tool/cros-camera-tool-0.0.1-r331.ebuild b/chromeos-base/cros-camera-tool/cros-camera-tool-0.0.1-r331.ebuild
deleted file mode 100644
index 9a6de32..0000000
--- a/chromeos-base/cros-camera-tool/cros-camera-tool-0.0.1-r331.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "d1fd07ac03f1ac6e670181ebd45b30e31efe5a87" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_SUBTREE=".gn camera/build camera/tools common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/tools/cros_camera_tool"
-
-inherit cros-camera cros-workon platform
-
-DESCRIPTION="Chrome OS camera test utility."
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-BDEPEND="virtual/pkgconfig"
-
-src_install() {
-	platform_src_install
-	dobin "${OUT}/cros-camera-tool"
-}
diff --git a/chromeos-base/cros-camera-tool/cros-camera-tool-0.0.1-r360.ebuild b/chromeos-base/cros-camera-tool/cros-camera-tool-0.0.1-r360.ebuild
new file mode 100644
index 0000000..26f6284
--- /dev/null
+++ b/chromeos-base/cros-camera-tool/cros-camera-tool-0.0.1-r360.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "3ab43d75b077ff01eff298ac286116bbcbb27bd8" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/tools common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/tools/cros_camera_tool"
+
+inherit cros-camera cros-workon platform
+
+DESCRIPTION="Chrome OS camera test utility."
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+BDEPEND="virtual/pkgconfig"
+
+src_install() {
+	platform_src_install
+	dobin "${OUT}/cros-camera-tool"
+}
diff --git a/chromeos-base/cros-camera-tool/cros-camera-tool-9999.ebuild b/chromeos-base/cros-camera-tool/cros-camera-tool-9999.ebuild
index 3c29efe..d7d24ce 100644
--- a/chromeos-base/cros-camera-tool/cros-camera-tool-9999.ebuild
+++ b/chromeos-base/cros-camera-tool/cros-camera-tool-9999.ebuild
@@ -4,7 +4,7 @@
 EAPI=7
 
 CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_LOCALNAME="platform2"
 CROS_WORKON_SUBTREE=".gn camera/build camera/tools common-mk"
 CROS_WORKON_OUTOFTREE_BUILD="1"
 CROS_WORKON_INCREMENTAL_BUILD="1"
diff --git a/chromeos-base/cros-camera/cros-camera-0.0.1-r1056.ebuild b/chromeos-base/cros-camera/cros-camera-0.0.1-r1056.ebuild
new file mode 100644
index 0000000..9908de7
--- /dev/null
+++ b/chromeos-base/cros-camera/cros-camera-0.0.1-r1056.ebuild
@@ -0,0 +1,75 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="745cdedb276031fbceedfb76854b10a234cab662"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "386e30e1839ecc98d30dbee95fddcd773a0c8bbf" "4579da3322609bbb1e3603b16869a65c22ed5114" "21f96983b4c04d23267767a4f371212fe68039d9" "542b6a1b940801e08d9d1aa3ff2657d06dc80bfa" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+# TODO(crbug.com/914263): camera/hal is unnecessary for this build but is
+# workaround for unexpected sandbox behavior.
+CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/hal camera/hal_adapter camera/include camera/mojo common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/hal_adapter"
+
+inherit cros-camera cros-constants cros-workon platform tmpfiles user udev
+
+DESCRIPTION="Chrome OS camera service. The service is in charge of accessing
+camera device. It uses unix domain socket to build a synchronous channel."
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="arc-camera1 cheets -libcamera"
+
+BDEPEND="virtual/pkgconfig"
+
+RDEPEND="
+	>=chromeos-base/cros-camera-libs-0.0.1-r34:=
+	chromeos-base/cros-camera-android-deps:=
+	media-libs/cros-camera-hal-usb:=
+	media-libs/libsync:=
+	libcamera? ( media-libs/libcamera )
+	!libcamera? (
+		virtual/cros-camera-hal
+		virtual/cros-camera-hal-configs
+	)"
+
+DEPEND="${RDEPEND}
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	media-libs/minigbm:=
+	x11-libs/libdrm:="
+
+src_configure() {
+	cros_optimize_package_for_speed
+	platform_src_configure
+}
+
+src_install() {
+	platform_src_install
+	dobin "${OUT}/cros_camera_service"
+
+	insinto /etc/init
+	doins init/cros-camera.conf
+	doins init/cros-camera-failsafe.conf
+
+	udev_dorules udev/99-camera.rules
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	newins "seccomp_filter/cros-camera-${ARCH}.policy" cros-camera.policy
+
+	dotmpfiles tmpfiles.d/*.conf
+
+	if use cheets && ! use arc-camera1; then
+		insinto "${ARC_VENDOR_DIR}/etc/init"
+		doins init/init.camera.rc
+	fi
+}
+
+pkg_preinst() {
+	enewuser "arc-camera"
+	enewgroup "arc-camera"
+}
diff --git a/chromeos-base/cros-camera/cros-camera-0.0.1-r963.ebuild b/chromeos-base/cros-camera/cros-camera-0.0.1-r963.ebuild
deleted file mode 100644
index 64edc6c..0000000
--- a/chromeos-base/cros-camera/cros-camera-0.0.1-r963.ebuild
+++ /dev/null
@@ -1,85 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "c37af7d99913a584dbfb1b64fdb83acb19e91c20" "3853c1aaf018392449473e3155a42a6de4c514b5" "9b0d49af4849355f570451641ca09d759740be73" "049eedf136293a1ab81617017200cb31032eb384" "6cdd3e4e16d9890ff8b5fe897e4cf5a94620c315" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-# TODO(crbug.com/914263): camera/hal is unnecessary for this build but is
-# workaround for unexpected sandbox behavior.
-CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/hal camera/hal_adapter camera/include camera/mojo common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/hal_adapter"
-
-inherit cros-camera cros-constants cros-workon platform tmpfiles user udev
-
-DESCRIPTION="Chrome OS camera service. The service is in charge of accessing
-camera device. It uses unix domain socket to build a synchronous channel."
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="arc-camera1 cheets -libcamera"
-
-BDEPEND="virtual/pkgconfig"
-
-RDEPEND="
-	>=chromeos-base/cros-camera-libs-0.0.1-r34:=
-	chromeos-base/cros-camera-android-deps:=
-	media-libs/cros-camera-hal-usb:=
-	media-libs/libsync:=
-	libcamera? ( media-libs/libcamera )
-	!libcamera? (
-		virtual/cros-camera-hal
-		virtual/cros-camera-hal-configs
-	)"
-
-DEPEND="${RDEPEND}
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	media-libs/minigbm:=
-	x11-libs/libdrm:="
-
-src_configure() {
-	cros_optimize_package_for_speed
-	platform_src_configure
-}
-
-src_install() {
-	platform_src_install
-	dobin "${OUT}/cros_camera_service"
-
-	insinto /etc/init
-	doins init/cros-camera.conf
-	doins init/cros-camera-failsafe.conf
-
-	udev_dorules udev/99-camera.rules
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	newins "seccomp_filter/cros-camera-${ARCH}.policy" cros-camera.policy
-
-	dotmpfiles tmpfiles.d/*.conf
-
-	if use cheets && ! use arc-camera1; then
-		insinto "${ARC_VENDOR_DIR}/etc/init"
-		doins init/init.camera.rc
-	fi
-}
-
-pkg_preinst() {
-	enewuser "arc-camera"
-	enewgroup "arc-camera"
-}
-
-platform_pkg_test() {
-	local tests=(
-		zsl_helper_test
-	)
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test run "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/cros-camera/cros-camera-9999.ebuild b/chromeos-base/cros-camera/cros-camera-9999.ebuild
index f648863..95f9318 100644
--- a/chromeos-base/cros-camera/cros-camera-9999.ebuild
+++ b/chromeos-base/cros-camera/cros-camera-9999.ebuild
@@ -71,13 +71,3 @@
 	enewuser "arc-camera"
 	enewgroup "arc-camera"
 }
-
-platform_pkg_test() {
-	local tests=(
-		zsl_helper_test
-	)
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test run "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/cros-config-api/cros-config-api-0.0.1-r236.ebuild b/chromeos-base/cros-config-api/cros-config-api-0.0.1-r236.ebuild
deleted file mode 100644
index 6db63b9..0000000
--- a/chromeos-base/cros-config-api/cros-config-api-0.0.1-r236.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 2020 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="7e9d43858407a2c29d3b3ae474a3127278025046"
-CROS_WORKON_TREE=("b81f24d0e9d14f4915eb0e73889e64eb5167ebc8" "675640ffa98cd9dec94ff67a2fb998e4f1609223")
-CROS_WORKON_PROJECT="chromiumos/config"
-CROS_WORKON_LOCALNAME="config"
-CROS_WORKON_SUBTREE="python go"
-
-PYTHON_COMPAT=( python{3_6,3_7} )
-
-inherit cros-workon distutils-r1
-
-DESCRIPTION="Provides python and go bindings to the config API"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/config/+/master/python/"
-
-LICENSE="BSD-Google"
-SLOT=0
-KEYWORDS="*"
-
-RDEPEND="
-	dev-go/genproto
-"
-
-DEPEND="
-	${RDEPEND}
-	dev-python/setuptools[${PYTHON_USEDEP}]
-"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-src_unpack() {
-	cros-workon_src_unpack
-	# distutils-r1 provides src_configure, src_install and src_test steps for
-	# python bindings, and they require S to be set to the Python source base
-	# directory.
-	S+="/python"
-}
-
-src_install() {
-	distutils-r1_src_install
-
-	# cros-go_src_install requires the directory names (which is also the go
-	# package name) match between the source and destination directories.
-	# However we want to add some prefix to the destination directory name.
-	# source: src/config/go/api...
-	# destination: src/go.chromium.org/chromiumos/config/go/api/...
-	# Therefore insinto/doins are directly called here, instead of using
-	# cros-go_src_install in cros-go.eclass.
-	insinto /usr/lib/gopath/src/go.chromium.org/chromiumos/config
-	# One directory up, because $S is modified in src_unpack in this file.
-	doins -r ../go
-}
diff --git a/chromeos-base/cros-config-api/cros-config-api-0.0.1-r315.ebuild b/chromeos-base/cros-config-api/cros-config-api-0.0.1-r315.ebuild
new file mode 100644
index 0000000..949a629
--- /dev/null
+++ b/chromeos-base/cros-config-api/cros-config-api-0.0.1-r315.ebuild
@@ -0,0 +1,54 @@
+# Copyright 2020 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="50826c369fecc61e5699beae61298aaaa9f009ce"
+CROS_WORKON_TREE=("84d973277d83c07b96298eabb5025c1241aa7dd1" "d287fe6de3463c6975d7f788e08f013d3da55aed" "572b32a98f81453303905d46cb84e736fb8b6232")
+CROS_WORKON_PROJECT="chromiumos/config"
+CROS_WORKON_LOCALNAME="config"
+CROS_WORKON_SUBTREE="python go test"
+
+PYTHON_COMPAT=( python3_{6..9} )
+DISTUTILS_USE_SETUPTOOLS=bdepend
+
+inherit cros-workon distutils-r1
+
+DESCRIPTION="Provides python and go bindings to the config API"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/config/+/master/python/"
+
+LICENSE="BSD-Google"
+SLOT=0
+KEYWORDS="*"
+
+RDEPEND="
+	dev-go/genproto
+"
+
+DEPEND="
+	${RDEPEND}
+"
+
+src_unpack() {
+	cros-workon_src_unpack
+	# distutils-r1 provides src_configure, src_install and src_test steps for
+	# python bindings, and they require S to be set to the Python source base
+	# directory.
+	S+="/python"
+}
+
+src_install() {
+	distutils-r1_src_install
+
+	# cros-go_src_install requires the directory names (which is also the go
+	# package name) match between the source and destination directories.
+	# However we want to add some prefix to the destination directory name.
+	# source: src/config/go/api...
+	# destination: src/go.chromium.org/chromiumos/config/go/api/...
+	# Therefore insinto/doins are directly called here, instead of using
+	# cros-go_src_install in cros-go.eclass.
+	insinto /usr/lib/gopath/src/go.chromium.org/chromiumos/config
+	# One directory up, because $S is modified in src_unpack in this file.
+	doins -r ../go
+}
diff --git a/chromeos-base/cros-config-api/cros-config-api-9999.ebuild b/chromeos-base/cros-config-api/cros-config-api-9999.ebuild
index 6a0bf44..14c977c 100644
--- a/chromeos-base/cros-config-api/cros-config-api-9999.ebuild
+++ b/chromeos-base/cros-config-api/cros-config-api-9999.ebuild
@@ -6,9 +6,10 @@
 
 CROS_WORKON_PROJECT="chromiumos/config"
 CROS_WORKON_LOCALNAME="config"
-CROS_WORKON_SUBTREE="python go"
+CROS_WORKON_SUBTREE="python go test"
 
-PYTHON_COMPAT=( python{3_6,3_7} )
+PYTHON_COMPAT=( python3_{6..9} )
+DISTUTILS_USE_SETUPTOOLS=bdepend
 
 inherit cros-workon distutils-r1
 
@@ -25,11 +26,8 @@
 
 DEPEND="
 	${RDEPEND}
-	dev-python/setuptools[${PYTHON_USEDEP}]
 "
 
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
 src_unpack() {
 	cros-workon_src_unpack
 	# distutils-r1 provides src_configure, src_install and src_test steps for
diff --git a/chromeos-base/cros-devutils/cros-devutils-1-r1252.ebuild b/chromeos-base/cros-devutils/cros-devutils-1-r1252.ebuild
deleted file mode 100644
index 18ca5d6..0000000
--- a/chromeos-base/cros-devutils/cros-devutils-1-r1252.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="11821b983f1227bc86f29b3a67cf3be41d833795"
-CROS_WORKON_TREE="0bcd941cfe6b3a9446ded078cab2e84fbab54ff8"
-CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
-CROS_WORKON_LOCALNAME="dev"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="host"
-
-inherit cros-workon
-
-DESCRIPTION="Development utilities for ChromiumOS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/host/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="app-portage/gentoolkit
-	>=chromeos-base/devserver-0.0.2
-	dev-util/shflags
-	dev-util/toolchain-utils
-	"
-# These are all either bash / python scripts.  No actual builds DEPS.
-DEPEND=""
-
-src_compile() { :; }
-
-src_install() {
-	dobin host/cros_workon_make
-
-	# Repo and git bash completion.
-	dosym /usr/share/bash-completion/completions/repo /etc/bash_completion.d/repo
-	dosym /usr/share/bash-completion/completions/git /etc/bash_completion.d/git
-}
diff --git a/chromeos-base/cros-devutils/cros-devutils-1-r1254.ebuild b/chromeos-base/cros-devutils/cros-devutils-1-r1254.ebuild
new file mode 100644
index 0000000..ab985af
--- /dev/null
+++ b/chromeos-base/cros-devutils/cros-devutils-1-r1254.ebuild
@@ -0,0 +1,39 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="379915f9072a789111d9665136d218f29b5499e7"
+CROS_WORKON_TREE="5ca5eb4490debb22e71111141b8893cd6c6af5a4"
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME="platform/dev"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="host"
+
+inherit cros-workon
+
+DESCRIPTION="Development utilities for ChromiumOS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/host/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="app-portage/gentoolkit
+	>=chromeos-base/devserver-0.0.2
+	dev-util/shflags
+	dev-util/toolchain-utils
+	"
+# These are all either bash / python scripts.  No actual builds DEPS.
+DEPEND=""
+
+src_compile() { :; }
+
+src_install() {
+	dobin host/cros_workon_make
+
+	# Repo and git bash completion.
+	dosym /usr/share/bash-completion/completions/repo /etc/bash_completion.d/repo
+	dosym /usr/share/bash-completion/completions/git /etc/bash_completion.d/git
+}
diff --git a/chromeos-base/cros-devutils/cros-devutils-9999.ebuild b/chromeos-base/cros-devutils/cros-devutils-9999.ebuild
index ebb28fd..64fa249 100644
--- a/chromeos-base/cros-devutils/cros-devutils-9999.ebuild
+++ b/chromeos-base/cros-devutils/cros-devutils-9999.ebuild
@@ -4,7 +4,7 @@
 EAPI="7"
 
 CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
-CROS_WORKON_LOCALNAME="dev"
+CROS_WORKON_LOCALNAME="platform/dev"
 CROS_WORKON_OUTOFTREE_BUILD=1
 CROS_WORKON_INCREMENTAL_BUILD=1
 CROS_WORKON_SUBTREE="host"
diff --git a/chromeos-base/cros-disks/cros-disks-0.0.1-r3209.ebuild b/chromeos-base/cros-disks/cros-disks-0.0.1-r3209.ebuild
deleted file mode 100644
index 4ba044a..0000000
--- a/chromeos-base/cros-disks/cros-disks-0.0.1-r3209.ebuild
+++ /dev/null
@@ -1,137 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a54bf486599e8f5d48317634dce7086ad82932c9" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk cros-disks metrics .gn"
-
-PLATFORM_SUBDIR="cros-disks"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Disk mounting daemon for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cros-disks/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="chromeless_tty fuzzer +seccomp"
-
-COMMON_DEPEND="
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/minijail:=
-	chromeos-base/session_manager-client:=
-	sys-apps/rootdev:=
-	sys-apps/util-linux:=
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	net-fs/sshfs
-	sys-fs/archivemount
-	sys-fs/dosfstools
-	sys-fs/exfat-utils
-	sys-fs/fuse-exfat
-	sys-fs/fuse-zip
-	sys-fs/ntfs3g
-	sys-fs/rar2fs
-	virtual/udev
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/system_api:=[fuzzer?]
-"
-
-pkg_preinst() {
-	enewuser "cros-disks"
-	enewgroup "cros-disks"
-
-	enewuser "ntfs-3g"
-	enewgroup "ntfs-3g"
-
-	enewuser "fuse-archivemount"
-	enewgroup "fuse-archivemount"
-
-	enewuser "fuse-exfat"
-	enewgroup "fuse-exfat"
-
-	enewuser "fuse-rar2fs"
-	enewgroup "fuse-rar2fs"
-
-	enewuser "fuse-zip"
-	enewgroup "fuse-zip"
-
-	enewuser "fuse-sshfs"
-	enewgroup "fuse-sshfs"
-
-	enewuser "fuse-drivefs"
-	enewgroup "fuse-drivefs"
-}
-
-src_install() {
-	dobin "${OUT}"/cros-disks
-
-	# Install USB device IDs file.
-	insinto /usr/share/cros-disks
-	doins usb-device-info
-
-	# Install seccomp policy files.
-	insinto /usr/share/policy
-	use seccomp && newins archivemount-seccomp-${ARCH}.policy archivemount-seccomp.policy
-	use seccomp && newins fuse-zip-seccomp-${ARCH}.policy fuse-zip-seccomp.policy
-	use seccomp && newins rar2fs-seccomp-${ARCH}.policy rar2fs-seccomp.policy
-
-	# Install upstart config file.
-	insinto /etc/init
-	doins cros-disks.conf
-	# Insert the --no-session-manager flag if needed.
-	if use chromeless_tty; then
-		sed -i -E "s/(CROS_DISKS_OPTS=')/\1--no_session_manager /" "${D}"/etc/init/cros-disks.conf || die
-	fi
-
-	# Install D-Bus config file.
-	insinto /etc/dbus-1/system.d
-	doins org.chromium.CrosDisks.conf
-
-	# Install setuid restrictions file.
-	insinto /usr/share/cros/startup/process_management_policies
-	doins setuid_restrictions/cros_disks_whitelist.txt
-
-	# Install powerd prefs for FUSE freeze ordering.
-	insinto /usr/share/power_manager
-	doins powerd_prefs/suspend_freezer_deps_*
-
-	local fuzzers=(
-		filesystem_label_fuzzer
-	)
-
-	local fuzzer
-	for fuzzer in "${fuzzers[@]}"; do
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}/${PN}_${fuzzer}"
-	done
-}
-
-platform_pkg_test() {
-	local gtest_filter_qemu_common=""
-	gtest_filter_qemu_common+="DiskManagerTest.*"
-	gtest_filter_qemu_common+=":ExternalMounterTest.*"
-	gtest_filter_qemu_common+=":UdevDeviceTest.*"
-	gtest_filter_qemu_common+=":MountInfoTest.RetrieveFromCurrentProcess"
-	gtest_filter_qemu_common+=":GlibProcessTest.*"
-
-	local gtest_filter_user_tests="-*RunAsRoot*:"
-	! use x86 && ! use amd64 && gtest_filter_user_tests+="${gtest_filter_qemu_common}"
-
-	local gtest_filter_root_tests="*RunAsRoot*-"
-	! use x86 && ! use amd64 && gtest_filter_root_tests+="${gtest_filter_qemu_common}"
-
-	platform_test "run" "${OUT}/disks_testrunner" "1" \
-		"${gtest_filter_root_tests}"
-	platform_test "run" "${OUT}/disks_testrunner" "0" \
-		"${gtest_filter_user_tests}"
-}
diff --git a/chromeos-base/cros-disks/cros-disks-0.0.1-r3272.ebuild b/chromeos-base/cros-disks/cros-disks-0.0.1-r3272.ebuild
new file mode 100644
index 0000000..bc0fde8
--- /dev/null
+++ b/chromeos-base/cros-disks/cros-disks-0.0.1-r3272.ebuild
@@ -0,0 +1,138 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="c7de58509c6837dc0241aa92c6a32dbf4cc55161"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "93b6e29af47650d07a806f372c435798035a183d" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk cros-disks metrics .gn"
+
+PLATFORM_SUBDIR="cros-disks"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Disk mounting daemon for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cros-disks/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="chromeless_tty fuzzer +seccomp"
+
+COMMON_DEPEND="
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/minijail:=
+	chromeos-base/session_manager-client:=
+	sys-apps/rootdev:=
+	sys-apps/util-linux:=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	net-fs/sshfs
+	sys-fs/dosfstools
+	sys-fs/exfat-utils
+	sys-fs/fuse-archive
+	sys-fs/fuse-exfat
+	sys-fs/fuse-zip
+	sys-fs/ntfs3g
+	sys-fs/rar2fs
+	virtual/udev
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/system_api:=[fuzzer?]
+"
+
+pkg_preinst() {
+	enewuser "cros-disks"
+	enewgroup "cros-disks"
+
+	enewuser "ntfs-3g"
+	enewgroup "ntfs-3g"
+
+	enewuser "fuse-archivemount"
+	enewgroup "fuse-archivemount"
+
+	enewuser "fuse-exfat"
+	enewgroup "fuse-exfat"
+
+	enewuser "fuse-rar2fs"
+	enewgroup "fuse-rar2fs"
+
+	enewuser "fuse-zip"
+	enewgroup "fuse-zip"
+
+	enewuser "fuse-sshfs"
+	enewgroup "fuse-sshfs"
+
+	enewuser "fuse-drivefs"
+	enewgroup "fuse-drivefs"
+}
+
+src_install() {
+	dobin "${OUT}"/cros-disks
+
+	# Install USB device IDs file.
+	insinto /usr/share/cros-disks
+	doins usb-device-info
+
+	# Install seccomp policy files.
+	insinto /usr/share/policy
+	use seccomp && newins archivemount-seccomp-${ARCH}.policy archivemount-seccomp.policy
+	use seccomp && newins fuse-zip-seccomp-${ARCH}.policy fuse-zip-seccomp.policy
+	use seccomp && newins rar2fs-seccomp-${ARCH}.policy rar2fs-seccomp.policy
+
+	# Install upstart config file.
+	insinto /etc/init
+	doins cros-disks.conf
+	# Insert the --no-session-manager flag if needed.
+	if use chromeless_tty; then
+		sed -i -E "s/(CROS_DISKS_OPTS=')/\1--no_session_manager /" "${D}"/etc/init/cros-disks.conf || die
+	fi
+
+	# Install D-Bus config file.
+	insinto /etc/dbus-1/system.d
+	doins org.chromium.CrosDisks.conf
+
+	# Install setuid restrictions file.
+	insinto /usr/share/cros/startup/process_management_policies
+	doins setuid_restrictions/cros_disks_uid_allowlist.txt
+
+	# Install powerd prefs for FUSE freeze ordering.
+	insinto /usr/share/power_manager
+	doins powerd_prefs/suspend_freezer_deps_*
+
+	local fuzzers=(
+		filesystem_label_fuzzer
+	)
+
+	local fuzzer
+	for fuzzer in "${fuzzers[@]}"; do
+		# fuzzer_component_id is unknown/unlisted
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}/${PN}_${fuzzer}"
+	done
+}
+
+platform_pkg_test() {
+	local gtest_filter_qemu_common=""
+	gtest_filter_qemu_common+="DiskManagerTest.*"
+	gtest_filter_qemu_common+=":ExternalMounterTest.*"
+	gtest_filter_qemu_common+=":UdevDeviceTest.*"
+	gtest_filter_qemu_common+=":MountInfoTest.RetrieveFromCurrentProcess"
+	gtest_filter_qemu_common+=":GlibProcessTest.*"
+
+	local gtest_filter_user_tests="-*RunAsRoot*:"
+	! use x86 && ! use amd64 && gtest_filter_user_tests+="${gtest_filter_qemu_common}"
+
+	local gtest_filter_root_tests="*RunAsRoot*-"
+	! use x86 && ! use amd64 && gtest_filter_root_tests+="${gtest_filter_qemu_common}"
+
+	platform_test "run" "${OUT}/disks_testrunner" "1" \
+		"${gtest_filter_root_tests}"
+	platform_test "run" "${OUT}/disks_testrunner" "0" \
+		"${gtest_filter_user_tests}"
+}
diff --git a/chromeos-base/cros-disks/cros-disks-9999.ebuild b/chromeos-base/cros-disks/cros-disks-9999.ebuild
index 66985c6..57afa31 100644
--- a/chromeos-base/cros-disks/cros-disks-9999.ebuild
+++ b/chromeos-base/cros-disks/cros-disks-9999.ebuild
@@ -30,9 +30,9 @@
 RDEPEND="
 	${COMMON_DEPEND}
 	net-fs/sshfs
-	sys-fs/archivemount
 	sys-fs/dosfstools
 	sys-fs/exfat-utils
+	sys-fs/fuse-archive
 	sys-fs/fuse-exfat
 	sys-fs/fuse-zip
 	sys-fs/ntfs3g
@@ -98,7 +98,7 @@
 
 	# Install setuid restrictions file.
 	insinto /usr/share/cros/startup/process_management_policies
-	doins setuid_restrictions/cros_disks_whitelist.txt
+	doins setuid_restrictions/cros_disks_uid_allowlist.txt
 
 	# Install powerd prefs for FUSE freeze ordering.
 	insinto /usr/share/power_manager
@@ -110,6 +110,7 @@
 
 	local fuzzer
 	for fuzzer in "${fuzzers[@]}"; do
+		# fuzzer_component_id is unknown/unlisted
 		platform_fuzzer_install "${S}"/OWNERS "${OUT}/${PN}_${fuzzer}"
 	done
 }
diff --git a/chromeos-base/cros-testutils/cros-testutils-0.0.1-r615.ebuild b/chromeos-base/cros-testutils/cros-testutils-0.0.1-r615.ebuild
deleted file mode 100644
index fc7cb27..0000000
--- a/chromeos-base/cros-testutils/cros-testutils-0.0.1-r615.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="fd9120658cb5253b7feffa8903742a367ed7571c"
-CROS_WORKON_TREE="b2f14f8919270f945f2fe0a397e2de5b19eecac8"
-CROS_WORKON_PROJECT="chromiumos/platform/crostestutils"
-CROS_WORKON_LOCALNAME="platform/crostestutils"
-
-inherit cros-workon
-
-DESCRIPTION="Host test utilities for ChromiumOS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crostestutils/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="app-emulation/qemu
-	app-portage/gentoolkit
-	app-shells/bash
-	chromeos-base/cros-devutils
-	dev-python/django
-	"
-
-# These are all either bash / python scripts.  No actual builds DEPS.
-DEPEND=""
-
-# Use default src_compile and src_install which use Makefile.
diff --git a/chromeos-base/cros-testutils/cros-testutils-0.0.1-r622.ebuild b/chromeos-base/cros-testutils/cros-testutils-0.0.1-r622.ebuild
new file mode 100644
index 0000000..2b1af68
--- /dev/null
+++ b/chromeos-base/cros-testutils/cros-testutils-0.0.1-r622.ebuild
@@ -0,0 +1,28 @@
+# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="0515327957ce2c1a4d816ed0a68bbdcdddb3d026"
+CROS_WORKON_TREE="4e37e73d8386a092c04f41a1258e97f8df30d235"
+CROS_WORKON_PROJECT="chromiumos/platform/crostestutils"
+CROS_WORKON_LOCALNAME="platform/crostestutils"
+
+inherit cros-workon
+
+DESCRIPTION="Host test utilities for ChromiumOS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crostestutils/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="app-emulation/qemu
+	app-portage/gentoolkit
+	app-shells/bash
+	chromeos-base/cros-devutils
+	dev-python/django
+	"
+
+# These are all either bash / python scripts.  No actual builds DEPS.
+DEPEND=""
+
+# Use default src_compile and src_install which use Makefile.
diff --git a/chromeos-base/cros_healthd-client/OWNERS b/chromeos-base/cros_healthd-client/OWNERS
new file mode 100644
index 0000000..f7678b0
--- /dev/null
+++ b/chromeos-base/cros_healthd-client/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/diagnostics/OWNERS
\ No newline at end of file
diff --git a/chromeos-base/cros_healthd-client/cros_healthd-client-0.0.1-r11.ebuild b/chromeos-base/cros_healthd-client/cros_healthd-client-0.0.1-r11.ebuild
new file mode 100644
index 0000000..3382541
--- /dev/null
+++ b/chromeos-base/cros_healthd-client/cros_healthd-client-0.0.1-r11.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="848f8415ddf1841a24faf4deaf6c3d63821b036b"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "b148be42aacbe8dfa2866e84614df1e489fa6b99" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="common-mk diagnostics/mojo .gn"
+
+PLATFORM_SUBDIR="diagnostics/mojo"
+
+WANT_LIBBRILLO="no"
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS Mojo client for cros_healthd"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/diagnostics/mojo"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+src_install() {
+	# Install package config.
+	insinto /usr/"$(get_libdir)"/pkgconfig
+	doins cros_healthd-client.pc
+
+	# Install mojom files.
+	insinto /usr/src/cros_healthd-client/mojom/
+	doins "${S}"/*.mojom
+
+	# Install mojom modules.
+	insinto /usr/src/cros_healthd-client/modules/
+	doins "${OUT}"/gen/include/mojo/*module
+
+	# Install C++ headers.
+	insinto /usr/include/cros_healthd-client/mojo
+	doins "${OUT}"/gen/include/mojo/*.h
+
+	# Install libraries linked by the C++ headers.
+	dolib.a "${OUT}"/*.a
+}
diff --git a/chromeos-base/cros_healthd-client/cros_healthd-client-9999.ebuild b/chromeos-base/cros_healthd-client/cros_healthd-client-9999.ebuild
new file mode 100644
index 0000000..80dea2c
--- /dev/null
+++ b/chromeos-base/cros_healthd-client/cros_healthd-client-9999.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="common-mk diagnostics/mojo .gn"
+
+PLATFORM_SUBDIR="diagnostics/mojo"
+
+WANT_LIBBRILLO="no"
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS Mojo client for cros_healthd"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/diagnostics/mojo"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+
+src_install() {
+	# Install package config.
+	insinto /usr/"$(get_libdir)"/pkgconfig
+	doins cros_healthd-client.pc
+
+	# Install mojom files.
+	insinto /usr/src/cros_healthd-client/mojom/
+	doins "${S}"/*.mojom
+
+	# Install mojom modules.
+	insinto /usr/src/cros_healthd-client/modules/
+	doins "${OUT}"/gen/include/mojo/*module
+
+	# Install C++ headers.
+	insinto /usr/include/cros_healthd-client/mojo
+	doins "${OUT}"/gen/include/mojo/*.h
+
+	# Install libraries linked by the C++ headers.
+	dolib.a "${OUT}"/*.a
+}
diff --git a/chromeos-base/crosdns/crosdns-0.0.1-r295.ebuild b/chromeos-base/crosdns/crosdns-0.0.1-r295.ebuild
deleted file mode 100644
index 1559694..0000000
--- a/chromeos-base/crosdns/crosdns-0.0.1-r295.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "33b74b183dbb5431627e063dee32ca62eb6e8937" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="common-mk crosdns .gn"
-
-PLATFORM_SUBDIR="crosdns"
-
-inherit cros-fuzzer cros-sanitizers cros-workon platform user
-
-DESCRIPTION="Local hostname modifier service for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/crosdns"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="+seccomp asan fuzzer"
-
-COMMON_DEPEND="
-	chromeos-base/libbrillo:=[asan?,fuzzer?]
-	chromeos-base/minijail:="
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/system_api:=[fuzzer?]"
-
-src_install() {
-	# Install our binary.
-	dosbin "${OUT}"/crosdns
-
-	# Install D-Bus configuration.
-	insinto /etc/dbus-1/system.d
-	doins dbus_permissions/org.chromium.CrosDns.conf
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	if use seccomp; then
-		newins "init/crosdns-seccomp-${ARCH}.policy" crosdns-seccomp.policy
-	fi
-
-	# Install the init script.
-	insinto /etc/init
-	doins init/crosdns.conf
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/hosts_modifier_fuzzer
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/run_tests"
-}
-
-pkg_preinst() {
-	enewuser "crosdns"
-	enewgroup "crosdns"
-}
diff --git a/chromeos-base/crosdns/crosdns-0.0.1-r323.ebuild b/chromeos-base/crosdns/crosdns-0.0.1-r323.ebuild
new file mode 100644
index 0000000..01e9551
--- /dev/null
+++ b/chromeos-base/crosdns/crosdns-0.0.1-r323.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "02242f670c3eab41d38043a68db704749644b7f9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="common-mk crosdns .gn"
+
+PLATFORM_SUBDIR="crosdns"
+
+inherit cros-fuzzer cros-sanitizers cros-workon platform user
+
+DESCRIPTION="Local hostname modifier service for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/crosdns"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="+seccomp asan fuzzer"
+
+COMMON_DEPEND="
+	chromeos-base/libbrillo:=[asan?,fuzzer?]
+	chromeos-base/minijail:="
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/system_api:=[fuzzer?]"
+
+src_install() {
+	# Install our binary.
+	dosbin "${OUT}"/crosdns
+
+	# Install D-Bus configuration.
+	insinto /etc/dbus-1/system.d
+	doins dbus_permissions/org.chromium.CrosDns.conf
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	if use seccomp; then
+		newins "init/crosdns-seccomp-${ARCH}.policy" crosdns-seccomp.policy
+	fi
+
+	# Install the init script.
+	insinto /etc/init
+	doins init/crosdns.conf
+
+	# fuzzer_component_id is unknown/unlisted
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/hosts_modifier_fuzzer
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/run_tests"
+}
+
+pkg_preinst() {
+	enewuser "crosdns"
+	enewgroup "crosdns"
+}
diff --git a/chromeos-base/crosdns/crosdns-9999.ebuild b/chromeos-base/crosdns/crosdns-9999.ebuild
index 800b3d7..d9b4973 100644
--- a/chromeos-base/crosdns/crosdns-9999.ebuild
+++ b/chromeos-base/crosdns/crosdns-9999.ebuild
@@ -48,6 +48,7 @@
 	insinto /etc/init
 	doins init/crosdns.conf
 
+	# fuzzer_component_id is unknown/unlisted
 	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/hosts_modifier_fuzzer
 }
 
diff --git a/chromeos-base/crosh-extension/Manifest b/chromeos-base/crosh-extension/Manifest
index 978090f..a465813 100644
--- a/chromeos-base/crosh-extension/Manifest
+++ b/chromeos-base/crosh-extension/Manifest
@@ -1,5 +1,6 @@
+DIST 0.41.tar.xz 12229544 BLAKE2B 60447ed9fbf35f160640aeb0c96b55f77901f95d8ee8f86e0b682ae3df3e3a03d2709cb4ebba2115877af26cd8c4ffb11f5c6e9cd84df0ab7c4b2c07efd0de7c SHA512 2620998d09cfef902e891289ae959bc697b31089a8fb4f8ac70eefbad590d0d9d43e05e7b5b46aabc8e79cef1b97f426d36498b07c08a3d6a343d9ffeb2bb401
+DIST 0.42.tar.xz 14409640 BLAKE2B e67b6964f99d0cf9345da708eeaaac7f920b0a015d220bbd733f76e2274c4b0ecc82931d83600ce4af8865828e1d34e51671524a226f6e2c04d309cb46b5a759 SHA512 8381fbe34eaa495e4bae950101b1dc8aeb1a97fe071bea52aa23258bc546e4b4f37d5826f73e95399d9719216bd05bd85fca213700740440ada86bf6bb705c41
 DIST b2e40ddbac04d05baafbb007f203c6663c9d4ca9 33663330 BLAKE2B 6e5eead2c632ff65a2ef5a565ec7d5317eea9fe3b93f480815111e310563d6aace36611059c4e1d603e008a52275474a5fc248421ba70b2d2f26736b06e83808 SHA512 c56cfefc81e45e0e9dedd893422fcef067efc2e6ddc159010c852f955f1200d85e1ef606e88609d1667355de7c8b05e9063436d8d08e541201b0f806dfde9309
 DIST fonts-d6dc5eaf459abd058cd3aef1e25963fde893f9d87f5f55f340431697ce4b3506.tar.xz 620240 BLAKE2B eef8974714529c570ed44d334b4bda5969443c48b0295f9dd1c6ae878bf36359fbe43de460f477b042574be68be6f3a2f32b89462b7efef70e19d2e7c44590c8 SHA512 c0090b406d6a4113e0de0de062a95b54817754d18ea7775a477f1f7551c99930226ebda203cc79f9cd660a8fb207cc63e1a2617cd620afe6e620aa3e1019d959
 DIST node_modules-16e0b36c0c3d448c7fd00d1db3ba27ff8477007fb4b0eae31ae25960aeae3fbc.tar.xz 17908008 BLAKE2B b5140bbf8bd98f4e7d2c8437282a7660da0dafedd8af3ae71741cb55da690fe8cfaf47f157560eb7f183c919fa5dbd91cd95ffe24c2db3b2f527f963c08941d7 SHA512 3976154cae711505074f0faf656ab5ab48202fe63e206b11838ffd790eb10adbc6b91ae85c1bc86f323439b323c4739ec0715d0ffecc62235a3bef8b1431b0d6
 DIST node_modules-2cd2dd365999ae139b6b0fb62a5a09e2a7fb5ab1c0926cf1968a1dec9b74fea5.tar.xz 10898084 BLAKE2B ab2ed6e70183d59e257d7dc79e77c17b9636d4538705d17fb3483d29d4ea556c65125b948b09bb254eadfb2ca67245bc78fee1b3903f94dca92a111ef0bc7cf6 SHA512 155ce79bacf8723914c5ee5ce5772307d9130723f681e529710559c9e1f604c7b8426330232412836ce36adcddb534915275a81e51245ebc5f5fd0b94f80b0f1
-DIST node_modules-bc482f2b229bd0797c104263dc60cb884a1c90f6e65f07050d0b94b165b3a255.tar.xz 10434548 BLAKE2B 1d015e3262ea98f1e4e3b53269fc220ce2f8f26b4b0a679fdeae0e23818bf82c63d09d5acc96ea03e00bb2623129f28b5f2690770c1b79caa9704cd560492ef8 SHA512 baad4fdecbd4e1c155a1d6e8f158c2c482f11c0b9542ec06643ff80427906116f7c4c6fe395ae7acac0499de8a336ae647692c56475cb7aef02b2950ae5f5d06
diff --git a/chromeos-base/crosh-extension/crosh-extension-0.41-r1094.ebuild b/chromeos-base/crosh-extension/crosh-extension-0.41-r1094.ebuild
deleted file mode 100644
index a5bf241..0000000
--- a/chromeos-base/crosh-extension/crosh-extension-0.41-r1094.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="466aafb63e5bfb21e3719d9477d676aa76291292"
-CROS_WORKON_TREE=("c8e4301d10abb183fbcae5129cdfb4e39976794e" "cf64b2ab94d17914fa8012c04d643fd2b4d70c87" "4cff3943e175c2e8020a0c3d373503026fc448bc" "d0acc31ea3395f8ee93a30762441b4aaa5c1ab0d" "6b8af6a0c88be075c60fe9fa728f4f6f998fd1ac")
-CROS_WORKON_PROJECT="apps/libapps"
-CROS_WORKON_LOCALNAME="third_party/libapps"
-CROS_WORKON_SUBTREE="libdot hterm nassh ssh_client terminal"
-
-inherit cros-workon
-
-DESCRIPTION="The Chromium OS Shell extension (the HTML/JS rendering part)"
-HOMEPAGE="https://chromium.googlesource.com/apps/libapps/+/master/nassh/doc/chromeos-crosh.md"
-# These are kept in sync with libdot.py settings.
-FONTS_HASHES=(
-	# Current one.
-	d6dc5eaf459abd058cd3aef1e25963fde893f9d87f5f55f340431697ce4b3506
-	# Next one.
-	d6dc5eaf459abd058cd3aef1e25963fde893f9d87f5f55f340431697ce4b3506
-)
-NPM_HASHES=(
-	# Current one.
-	2cd2dd365999ae139b6b0fb62a5a09e2a7fb5ab1c0926cf1968a1dec9b74fea5
-	# Next one.
-	16e0b36c0c3d448c7fd00d1db3ba27ff8477007fb4b0eae31ae25960aeae3fbc
-)
-SRC_URI="
-	https://storage.googleapis.com/chromium-nodejs/14.15.4/b2e40ddbac04d05baafbb007f203c6663c9d4ca9
-	$(printf 'https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/fonts-%s.tar.xz ' \
-		"${FONTS_HASHES[@]}")
-	$(printf 'https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/node_modules-%s.tar.xz ' \
-		"${NPM_HASHES[@]}")
-"
-
-# The archives above live on Google maintained sites.
-RESTRICT="nomirror"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="!<chromeos-base/common-assets-0.0.2"
-
-e() {
-	echo "$@"
-	"$@" || die
-}
-
-src_compile() {
-	export VCSID="${CROS_WORKON_COMMIT:-${PF}}"
-	e ./nassh/bin/mkdist --crosh-only
-}
-
-src_install() {
-	local dir="/usr/share/chromeos-assets/crosh_builtin"
-	dodir "${dir}"
-	unzip -d "${D}${dir}" nassh/dist/crosh.zip || die
-}
diff --git a/chromeos-base/crosh-extension/crosh-extension-0.43-r1131.ebuild b/chromeos-base/crosh-extension/crosh-extension-0.43-r1131.ebuild
new file mode 100644
index 0000000..f603211
--- /dev/null
+++ b/chromeos-base/crosh-extension/crosh-extension-0.43-r1131.ebuild
@@ -0,0 +1,69 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="be4c4467041fb56cc417fae1a2f8540d62742abf"
+CROS_WORKON_TREE=("4d1920d85f6b47d591e8bc0e68b25a9242369fce" "224032d2fc72ad0f7a16b5208c69aa4f1f61a002" "5489525fc25e2905dbac40011eabe50f9cf98d3b" "3927ce0ef74808ba93ee3662bacc36873a533a72" "0028cec9ed97a6bd89d38c073822c82c03e60110")
+CROS_WORKON_PROJECT="apps/libapps"
+CROS_WORKON_LOCALNAME="third_party/libapps"
+CROS_WORKON_SUBTREE="libdot hterm nassh ssh_client terminal"
+
+inherit cros-workon
+
+DESCRIPTION="The Chromium OS Shell extension (the HTML/JS rendering part)"
+HOMEPAGE="https://chromium.googlesource.com/apps/libapps/+/master/nassh/doc/chromeos-crosh.md"
+# These are kept in sync with libdot.py settings.
+FONTS_HASHES=(
+	# Current one.
+	d6dc5eaf459abd058cd3aef1e25963fde893f9d87f5f55f340431697ce4b3506
+	# Next one.
+	d6dc5eaf459abd058cd3aef1e25963fde893f9d87f5f55f340431697ce4b3506
+)
+NPM_HASHES=(
+	# Current one.
+	2cd2dd365999ae139b6b0fb62a5a09e2a7fb5ab1c0926cf1968a1dec9b74fea5
+	# Next one.
+	16e0b36c0c3d448c7fd00d1db3ba27ff8477007fb4b0eae31ae25960aeae3fbc
+)
+PLUGIN_VERSIONS=(
+	# Current one.
+	0.41
+	# Next one.
+	0.42
+)
+SRC_URI="
+	https://storage.googleapis.com/chromium-nodejs/14.15.4/b2e40ddbac04d05baafbb007f203c6663c9d4ca9
+	$(printf 'https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/fonts-%s.tar.xz ' \
+		"${FONTS_HASHES[@]}")
+	$(printf 'https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/node_modules-%s.tar.xz ' \
+		"${NPM_HASHES[@]}")
+	$(printf 'https://storage.googleapis.com/chromeos-localmirror/secureshell/releases/%s.tar.xz ' \
+		"${PLUGIN_VERSIONS[@]}")
+"
+
+# The archives above live on Google maintained sites.
+RESTRICT="nomirror"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="!<chromeos-base/common-assets-0.0.2"
+
+e() {
+	echo "$@"
+	"$@" || die
+}
+
+src_compile() {
+	export VCSID="${CROS_WORKON_COMMIT:-${PF}}"
+	e ./nassh/bin/mkdist --crosh-only
+}
+
+src_install() {
+	local dir="/usr/share/chromeos-assets/crosh_builtin"
+	dodir "${dir}"
+	unzip -d "${D}${dir}" nassh/dist/crosh.zip || die
+}
diff --git a/chromeos-base/crosh-extension/crosh-extension-9999.ebuild b/chromeos-base/crosh-extension/crosh-extension-9999.ebuild
index 3291403..c8acb8d 100644
--- a/chromeos-base/crosh-extension/crosh-extension-9999.ebuild
+++ b/chromeos-base/crosh-extension/crosh-extension-9999.ebuild
@@ -24,12 +24,20 @@
 	# Next one.
 	16e0b36c0c3d448c7fd00d1db3ba27ff8477007fb4b0eae31ae25960aeae3fbc
 )
+PLUGIN_VERSIONS=(
+	# Current one.
+	0.41
+	# Next one.
+	0.42
+)
 SRC_URI="
 	https://storage.googleapis.com/chromium-nodejs/14.15.4/b2e40ddbac04d05baafbb007f203c6663c9d4ca9
 	$(printf 'https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/fonts-%s.tar.xz ' \
 		"${FONTS_HASHES[@]}")
 	$(printf 'https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/node_modules-%s.tar.xz ' \
 		"${NPM_HASHES[@]}")
+	$(printf 'https://storage.googleapis.com/chromeos-localmirror/secureshell/releases/%s.tar.xz ' \
+		"${PLUGIN_VERSIONS[@]}")
 "
 
 # The archives above live on Google maintained sites.
diff --git a/chromeos-base/crosh/crosh-0.24.52-r3041.ebuild b/chromeos-base/crosh/crosh-0.24.52-r3041.ebuild
deleted file mode 100644
index 180373e..0000000
--- a/chromeos-base/crosh/crosh-0.24.52-r3041.ebuild
+++ /dev/null
@@ -1,78 +0,0 @@
-# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="48715b2a980b87b3e8e1db871cb1b89c42e7f89d"
-CROS_WORKON_TREE="2fd1803e069e2dd096b39bb1b606f9527e268319"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_DESTDIR="${S}"
-CROS_WORKON_SUBTREE="crosh"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Chrome OS developer command-line shell"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/crosh/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="+rust-crosh"
-
-DEPEND="
-	=dev-rust/chrono-0.4*:=
-	=dev-rust/dbus-0.8*:=
-	=dev-rust/getopts-0.2*:=
-	dev-rust/libchromeos:=
-	=dev-rust/rand-0.7*:=
-	>=dev-rust/regex-1.0.6:= <dev-rust/regex-2.0.0
-	dev-rust/remain:=
-	=dev-rust/rustyline-7*:=
-	dev-rust/shell-words:=
-	dev-rust/sys_util:=
-	dev-rust/system_api:=
-	dev-rust/tempfile:=
-	>dev-rust/tlsdate_dbus-0.24.52-r8:=
-"
-RDEPEND="app-admin/sudo
-	chromeos-base/vboot_reference
-	net-misc/iputils
-	net-misc/openssh
-	net-wireless/iw
-	sys-apps/dbus
-	sys-apps/net-tools
-"
-
-src_compile() {
-	# File order is important here.
-	sed \
-		-e '/^#/d' \
-		-e '/^$/d' \
-		inputrc.safe inputrc.extra \
-		> "${WORKDIR}"/inputrc.crosh || die
-
-	cros-rust_src_compile
-}
-
-src_test() {
-	./run_tests.sh || die
-
-	cros-rust_src_test
-}
-
-src_install() {
-	if use rust-crosh; then
-		dobin "$(cros-rust_get_build_dir)/crosh"
-		newbin crosh crosh.sh
-	else
-		dobin crosh
-	fi
-	dobin network_diag
-	local d="/usr/share/crosh"
-	insinto "${d}/dev.d"
-	doins dev.d/*.sh
-	insinto "${d}/removable.d"
-	doins removable.d/*.sh
-	insinto "${d}"
-	doins "${WORKDIR}"/inputrc.crosh
-}
diff --git a/chromeos-base/crosh/crosh-0.24.52-r3054.ebuild b/chromeos-base/crosh/crosh-0.24.52-r3054.ebuild
new file mode 100644
index 0000000..f62008c
--- /dev/null
+++ b/chromeos-base/crosh/crosh-0.24.52-r3054.ebuild
@@ -0,0 +1,85 @@
+# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="aac663ccc3c6f72af7dad4ddca32a8bdd8c61834"
+CROS_WORKON_TREE="d6d98b2b7b61199188925df45c8ff0915adc8516"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_DESTDIR="${S}"
+CROS_WORKON_SUBTREE="crosh"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Chrome OS developer command-line shell"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/crosh/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="+rust-crosh"
+
+DEPEND="
+	=dev-rust/chrono-0.4*:=
+	=dev-rust/dbus-0.9*:=
+	=dev-rust/getopts-0.2*:=
+	dev-rust/libchromeos:=
+	=dev-rust/rand-0.7*:=
+	>=dev-rust/regex-1.0.6:= <dev-rust/regex-2.0.0
+	dev-rust/remain:=
+	=dev-rust/rustyline-7*:=
+	dev-rust/shell-words:=
+	dev-rust/sys_util:=
+	dev-rust/system_api:=
+	dev-rust/tempfile:=
+	>dev-rust/tlsdate_dbus-0.24.52-r8:=
+"
+RDEPEND="app-admin/sudo
+	chromeos-base/vboot_reference
+	net-misc/iputils
+	net-misc/openssh
+	net-wireless/iw
+	sys-apps/dbus
+	sys-apps/net-tools
+"
+
+src_compile() {
+	# File order is important here.
+	sed \
+		-e '/^#/d' \
+		-e '/^$/d' \
+		inputrc.safe inputrc.extra \
+		> "${WORKDIR}"/inputrc.crosh || die
+
+	cros-rust_src_compile
+}
+
+src_test() {
+	./run_tests.sh || die
+
+	local args=()
+	# (b/197637613) reduce the number of futex calls to reduce the risk of a hang
+	# when running inside qemu.
+	if ! cros_rust_is_direct_exec; then
+		args+=( -- --test-threads=1 )
+	fi
+
+	cros-rust_src_test "${args[@]}"
+}
+
+src_install() {
+	if use rust-crosh; then
+		dobin "$(cros-rust_get_build_dir)/crosh"
+		newbin crosh crosh.sh
+	else
+		dobin crosh
+	fi
+	dobin network_diag
+	local d="/usr/share/crosh"
+	insinto "${d}/dev.d"
+	doins dev.d/*.sh
+	insinto "${d}/removable.d"
+	doins removable.d/*.sh
+	insinto "${d}"
+	doins "${WORKDIR}"/inputrc.crosh
+}
diff --git a/chromeos-base/crosh/crosh-9999.ebuild b/chromeos-base/crosh/crosh-9999.ebuild
index 02950bd..a2d97c2 100644
--- a/chromeos-base/crosh/crosh-9999.ebuild
+++ b/chromeos-base/crosh/crosh-9999.ebuild
@@ -19,7 +19,7 @@
 
 DEPEND="
 	=dev-rust/chrono-0.4*:=
-	=dev-rust/dbus-0.8*:=
+	=dev-rust/dbus-0.9*:=
 	=dev-rust/getopts-0.2*:=
 	dev-rust/libchromeos:=
 	=dev-rust/rand-0.7*:=
@@ -55,7 +55,14 @@
 src_test() {
 	./run_tests.sh || die
 
-	cros-rust_src_test
+	local args=()
+	# (b/197637613) reduce the number of futex calls to reduce the risk of a hang
+	# when running inside qemu.
+	if ! cros_rust_is_direct_exec; then
+		args+=( -- --test-threads=1 )
+	fi
+
+	cros-rust_src_test "${args[@]}"
 }
 
 src_install() {
diff --git a/chromeos-base/croslog/croslog-0.0.1-r157.ebuild b/chromeos-base/croslog/croslog-0.0.1-r157.ebuild
deleted file mode 100644
index ef524c7..0000000
--- a/chromeos-base/croslog/croslog-0.0.1-r157.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2020 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.
-
-EAPI=7
-CROS_WORKON_COMMIT="0553127ef2b660a5c71f12a9417ed4ad35f07120"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "fa823f91c6f2d1432f2bfaf49b5785eeb4e6e6fb" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="common-mk croslog metrics .gn"
-
-PLATFORM_SUBDIR="croslog"
-
-inherit cros-workon platform
-
-DESCRIPTION="Log viewer for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/croslog"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	"
-
-src_install() {
-	platform_install
-}
-
-platform_pkg_test() {
-	platform test_all
-}
-
diff --git a/chromeos-base/croslog/croslog-0.0.1-r198.ebuild b/chromeos-base/croslog/croslog-0.0.1-r198.ebuild
new file mode 100644
index 0000000..ed4d351
--- /dev/null
+++ b/chromeos-base/croslog/croslog-0.0.1-r198.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2020 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.
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "7f79ba80bc41a40e4abc474296e860f6280f926c" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="common-mk croslog metrics .gn"
+
+PLATFORM_SUBDIR="croslog"
+
+inherit cros-workon platform
+
+DESCRIPTION="Log viewer for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/croslog"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND="
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	"
+
+src_install() {
+	platform_install
+}
+
+platform_pkg_test() {
+	platform test_all
+}
+
diff --git a/chromeos-base/crostini_client/crostini_client-0.1.0-r90.ebuild b/chromeos-base/crostini_client/crostini_client-0.1.0-r90.ebuild
deleted file mode 100644
index c371eab..0000000
--- a/chromeos-base/crostini_client/crostini_client-0.1.0-r90.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-CROS_WORKON_COMMIT="06073d9fd7c548b028fa7340631290296c88829b"
-CROS_WORKON_TREE="ae9d28d78fee99f92d94d00406be35dd80bae0ac"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE="vm_tools/crostini_client"
-CROS_WORKON_INCREMENTAL_BUILD=1
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Command-line client for controlling crostini"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools/crostini_client/"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-DEPEND="chromeos-base/system_api
-	=dev-rust/dbus-0.8*:=
-	=dev-rust/getopts-0.2*:=
-	=dev-rust/lazy_static-1*:=
-	>=dev-rust/libc-0.2.44:=
-	!>=dev-rust/libc-0.3
-	>=dev-rust/protobuf-2.16:= <dev-rust/protobuf-3
-	>=dev-rust/protoc-rust-2.16:= <dev-rust/protoc-rust-3
-"
-
-RDEPEND="sys-apps/dbus"
-
-src_unpack() {
-	cros-workon_src_unpack
-	# The compilation happens in the crostini_client subdirectory.
-	S+="/vm_tools/crostini_client"
-	cros-rust_src_unpack
-}
-
-src_compile() {
-	ecargo_build
-	use test && ecargo_test --no-run
-}
-
-src_test() {
-	if ! use x86 && ! use amd64 ; then
-		elog "Skipping unit tests on non-x86 platform"
-	else
-		ecargo_test --all
-	fi
-}
-
-src_install() {
-	local build_dir="$(cros-rust_get_build_dir)"
-	dobin "${build_dir}/crostini_client"
-	dosym "crostini_client" "/usr/bin/vmc"
-}
diff --git a/chromeos-base/crostini_client/crostini_client-0.1.0-r95.ebuild b/chromeos-base/crostini_client/crostini_client-0.1.0-r95.ebuild
new file mode 100644
index 0000000..c78a314
--- /dev/null
+++ b/chromeos-base/crostini_client/crostini_client-0.1.0-r95.ebuild
@@ -0,0 +1,57 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+CROS_WORKON_COMMIT="055ab1081b5c9aafacd17cf8a5da4817a6891d4b"
+CROS_WORKON_TREE="14ae3309a3c7bc56de4cdc101ab47eb6560712c1"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE="vm_tools/crostini_client"
+CROS_WORKON_INCREMENTAL_BUILD=1
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Command-line client for controlling crostini"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools/crostini_client/"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+DEPEND="chromeos-base/system_api
+	=dev-rust/dbus-0.8*:=
+	=dev-rust/getopts-0.2*:=
+	=dev-rust/lazy_static-1*:=
+	>=dev-rust/libc-0.2.44:=
+	!>=dev-rust/libc-0.3
+	>=dev-rust/protobuf-2.16:= <dev-rust/protobuf-3
+	>=dev-rust/protoc-rust-2.16:= <dev-rust/protoc-rust-3
+"
+
+RDEPEND="sys-apps/dbus"
+
+src_unpack() {
+	cros-workon_src_unpack
+	# The compilation happens in the crostini_client subdirectory.
+	S+="/vm_tools/crostini_client"
+	cros-rust_src_unpack
+}
+
+src_compile() {
+	ecargo_build
+	use test && ecargo_test --no-run
+}
+
+src_test() {
+	if ! use x86 && ! use amd64 ; then
+		elog "Skipping unit tests on non-x86 platform"
+	else
+		ecargo_test --all
+	fi
+}
+
+src_install() {
+	local build_dir="$(cros-rust_get_build_dir)"
+	dobin "${build_dir}/crostini_client"
+	dosym "crostini_client" "/usr/bin/vmc"
+}
diff --git a/chromeos-base/crosvm/crosvm-0.1.0-r1401.ebuild b/chromeos-base/crosvm/crosvm-0.1.0-r1401.ebuild
deleted file mode 100644
index c2fe133..0000000
--- a/chromeos-base/crosvm/crosvm-0.1.0-r1401.ebuild
+++ /dev/null
@@ -1,378 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="e2a61d3289c5fb93c5379799603bc85888523480"
-CROS_WORKON_TREE="46859998bfa9cb66ba0df2968d5f3615c5b19e11"
-CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
-CROS_WORKON_LOCALNAME="platform/crosvm"
-CROS_WORKON_INCREMENTAL_BUILD=1
-# We don't use CROS_WORKON_OUTOFTREE_BUILD here since crosvm/Cargo.toml is
-# using "# ignored by ebuild" macro which supported by cros-rust.
-
-inherit cros-fuzzer cros-rust cros-workon user
-
-PREBUILT_VERSION="r0000"
-KERNEL_FILE="crosvm-testing-bzimage-x86_64-${PREBUILT_VERSION}"
-ROOTFS_FILE="crosvm-testing-rootfs-x86_64-${PREBUILT_VERSION}"
-
-PREBUILT_URL="https://storage.googleapis.com/chromeos-localmirror"
-
-DESCRIPTION="Utility for running VMs on Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/"
-SRC_URI="
-	test? (
-		${PREBUILT_URL}/${KERNEL_FILE}
-		${PREBUILT_URL}/${ROOTFS_FILE}
-	)
-"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test cros-debug crosvm-gpu -crosvm-direct -crosvm-plugin +crosvm-power-monitor-powerd +crosvm-video-decoder +crosvm-video-encoder +crosvm-wl-dmabuf fuzzer tpm2 android-vm-master arcvm_gce_l1 vhost-user-devices"
-
-COMMON_DEPEND="
-	sys-apps/dtc:=
-	sys-libs/libcap:=
-	chromeos-base/libvda:=
-	chromeos-base/minijail:=
-	dev-libs/wayland:=
-	crosvm-gpu? (
-		media-libs/virglrenderer:=
-	)
-	crosvm-wl-dmabuf? ( media-libs/minigbm:= )
-	dev-rust/libchromeos:=
-	virtual/libusb:1=
-"
-
-RDEPEND="${COMMON_DEPEND}
-	!chromeos-base/crosvm-bin
-	crosvm-power-monitor-powerd? ( sys-apps/dbus )
-	tpm2? ( sys-apps/dbus )
-"
-
-DEPEND="${COMMON_DEPEND}
-	dev-libs/wayland-protocols:=
-	=dev-rust/android_log-sys-0.2*:=
-	>=dev-rust/anyhow-1.0.32:= <dev-rust/anyhow-2.0
-	=dev-rust/async-task-4*:=
-	=dev-rust/async-trait-0.1*:=
-	=dev-rust/bitflags-1*:=
-	~dev-rust/cc-1.0.25:=
-	dev-rust/cros_fuzz:=
-	>=dev-rust/downcast-rs-1.2.0:= <dev-rust/downcast-rs-2.0
-	=dev-rust/futures-0.3*:=
-	dev-rust/intrusive-collections:=
-	=dev-rust/gdbstub-0.4*:=
-	~dev-rust/getopts-0.2.18:=
-	>=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0
-	dev-rust/libvda:=
-	dev-rust/minijail:=
-	~dev-rust/num_cpus-1.9.0:=
-	>=dev-rust/once_cell-1.7.2:= <dev-rust/once_cell-2
-	dev-rust/p9:=
-	=dev-rust/paste-1*:=
-	=dev-rust/pin-utils-0.1*:=
-	~dev-rust/pkg-config-0.3.11:=
-	=dev-rust/proc-macro2-1*:=
-	>=dev-rust/protobuf-2.8:=
-	!>=dev-rust/protobuf-3
-	>=dev-rust/protoc-rust-2.8:=
-	!>=dev-rust/protoc-rust-3
-	=dev-rust/quote-1*:=
-	=dev-rust/rand-0.6*:=
-	=dev-rust/serde-1*:=
-	=dev-rust/serde_json-1*:=
-	>=dev-rust/smallvec-1.6.1:= <dev-rust/smallvec-2
-	=dev-rust/syn-1*:=
-	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
-	dev-rust/remain:=
-	dev-rust/vmm_vhost:=
-	tpm2? (
-		chromeos-base/tpm2:=
-		chromeos-base/trunks:=
-		=dev-rust/dbus-0.6*:=
-	)
-	media-sound/audio_streams:=
-	media-sound/libcras:=
-	crosvm-power-monitor-powerd? (
-		chromeos-base/system_api
-		=dev-rust/dbus-0.6*:=
-	)
-"
-
-get_seccomp_path() {
-	local seccomp_arch="unknown"
-	case ${ARCH} in
-		amd64) seccomp_arch=x86_64;;
-		arm) seccomp_arch=arm;;
-		arm64) seccomp_arch=aarch64;;
-	esac
-
-	echo "seccomp/${seccomp_arch}"
-}
-
-FUZZERS=(
-	crosvm_block_fuzzer
-	crosvm_fs_server_fuzzer
-	crosvm_qcow_fuzzer
-	crosvm_usb_descriptor_fuzzer
-	crosvm_virtqueue_fuzzer
-	crosvm_zimage_fuzzer
-)
-
-# Array of "<features>/<binary name>"
-VHOST_USER_BINARIES=(
-	"net/vhost-user-net-device"
-	"wl/vhost-user-wl-device"
-)
-
-src_unpack() {
-	# Unpack both the project and dependency source code
-	cros-workon_src_unpack
-	cros-rust_src_unpack
-}
-
-src_prepare() {
-	cros-rust_src_prepare
-
-	if use arcvm_gce_l1; then
-		eapply "${FILESDIR}"/0001-betty-arcvm-Loose-mprotect-mmap-for-software-renderi.patch
-	fi
-
-	default
-}
-
-src_configure() {
-	cros-rust_src_configure
-
-	# Change the path used for the minijail pivot root from /var/empty.
-	# See: https://crbug.com/934513
-	export DEFAULT_PIVOT_ROOT="/mnt/empty"
-}
-
-src_compile() {
-	local features=(
-		$(usex crosvm-gpu virgl_renderer "")
-		$(usex crosvm-gpu virgl_renderer_next "")
-		$(usex crosvm-plugin plugin "")
-		$(usex crosvm-power-monitor-powerd power-monitor-powerd "")
-		$(usex crosvm-video-decoder video-decoder "")
-		$(usex crosvm-video-encoder video-encoder "")
-		$(usex crosvm-wl-dmabuf wl-dmabuf "")
-		$(usex tpm2 tpm "")
-		$(usex cros-debug gdb "")
-		chromeos
-		$(usex android-vm-master composite-disk "")
-	)
-
-	local packages=(
-		qcow_utils
-		crosvm
-	)
-
-	for pkg in "${packages[@]}"; do
-		ecargo_build -v \
-			--features="${features[*]}" \
-			-p "${pkg}" \
-			|| die "cargo build failed"
-	done
-
-	if use crosvm-direct ; then
-		ecargo_build -v \
-			--no-default-features --features="direct" \
-			-p "crosvm" --bin crosvm-direct \
-			|| die "cargo build failed"
-	fi
-
-	if use fuzzer; then
-		cd fuzz || die "failed to move directory"
-		local f
-		for f in "${FUZZERS[@]}"; do
-			ecargo_build_fuzzer --bin "${f}"
-		done
-		cd .. || die "failed to move directory"
-	fi
-
-	if use vhost-user-devices; then
-		cd vhost_user_devices || die "failed to move directory"
-		for tuple in "${VHOST_USER_BINARIES[@]}"; do
-			local vhost_features="${tuple%/*}"
-			local binary="${tuple#*/}"
-			ecargo_build -v \
-				--features "${vhost_features}" \
-				--bin "${binary}" \
-				|| die "cargo build failed"
-		done
-		cd .. || die "failed to move directory"
-	fi
-}
-
-src_test() {
-	# Some of the tests will use /dev/kvm.
-	addwrite /dev/kvm
-	local test_opts=()
-	use tpm2 || test_opts+=( --exclude tpm2 --exclude tpm2-sys )
-
-	# io_jail tests fork the process, which cause memory leak errors when
-	# run under sanitizers.
-	cros-rust_use_sanitizers && test_opts+=( --exclude io_jail )
-
-	# Pass kernel/rootfs prebuilts to integration tests.
-	# See crosvm/integration_tests/README.md for details.
-	local CROSVM_CARGO_TEST_PREBUILT_VERSION="${PREBUILT_VERSION}"
-	local kernel_binary="${DISTDIR}/${KERNEL_FILE}"
-	[[ -e "${kernel_binary}" ]] || die "expected to find kernel binary at ${kernel_binary}"
-	CROS_RUST_PLATFORM_TEST_ARGS+=(
-		"--env" "CROSVM_CARGO_TEST_KERNEL_BINARY=${kernel_binary}"
-	)
-
-	local rootfs_image="${DISTDIR}/${ROOTFS_FILE}"
-	[[ -e "${rootfs_image}" ]] || die "expected to find rootfs image at ${rootfs_image}"
-	CROS_RUST_PLATFORM_TEST_ARGS+=(
-		"--env" "CROSVM_CARGO_TEST_ROOTFS_IMAGE=${rootfs_image}"
-	)
-
-	# crosvm does not work on kernel versions between 5.1 and 5.10 due to
-	# io_uring bugs. Skip the integration tests on these platforms.
-	# See b/189879899
-	local cut_version=$(ver_cut 1-2 "$(uname -r)")
-	if ver_test 5.10 -gt "${cut_version}"; then
-		test_opts+=( --exclude "integration_tests" )
-		test_opts+=( --exclude "io_uring" )
-	fi
-
-	if ! use x86 && ! use amd64; then
-		test_opts+=( --exclude "x86_64" )
-		test_opts+=( --no-run )
-	fi
-
-	if ! use arm64; then
-		test_opts+=( --exclude "aarch64" )
-	fi
-
-	if ! use crosvm-plugin; then
-		test_opts+=( --exclude "crosvm_plugin" )
-	fi
-
-	# Excluding tests that run on a different arch, use /dev/dri,
-	# /dev/net/tun, or wayland access because the bots don't support these.
-	local args=(
-		--workspace -v
-		--exclude net_util
-		--exclude gpu_display
-		--exclude rutabaga_gfx
-		--exclude crosvm-fuzz
-		# Also exclude the following since their tests are run in their ebuilds.
-		--exclude enumn
-		--exclude sys_util
-		"${test_opts[@]}"
-	)
-
-	# Non-x86 platforms set --no-run to disable executing the tests.
-	if ! has "--no-run" "${args[@]}"; then
-		# Run the "boot" test on the host until the syslog is properly passed
-		# into the sandbox.
-		# TODO(crbug.com/1154084) Run these on the host until libtest and libstd
-		# are available on the target.
-		cros-rust_get_host_test_executables "${args[@]}" --lib --tests
-	fi
-
-	ecargo_test "${args[@]}" \
-		-- --test-threads=1 \
-		|| die "cargo test failed"
-
-	# Plugin tests all require /dev/kvm, but we want to make sure they build
-	# at least.
-	if use crosvm-plugin; then
-		ecargo_test --no-run --features plugin \
-			|| die "cargo build with plugin feature failed"
-	fi
-
-	if use vhost-user-devices; then
-		cd vhost_user_devices || die "failed to move directory"
-		ecargo_test --all-targets --all-features \
-			|| die "cargo test vhost-user-devices"
-		cd .. || die "failed to move directory"
-	fi
-}
-
-src_install() {
-	# cargo doesn't know how to install cross-compiled binaries.  It will
-	# always install native binaries for the host system.  Manually install
-	# crosvm instead.
-	local build_dir="$(cros-rust_get_build_dir)"
-	dobin "${build_dir}/crosvm"
-
-	# Install seccomp policy files.
-	local seccomp_path="${S}/$(get_seccomp_path)"
-	if [[ -d "${seccomp_path}" ]] ; then
-		local policy
-		for policy in "${seccomp_path}"/*.policy; do
-			sed -i "s:/usr/share/policy/crosvm:${seccomp_path}:g" "${policy}" \
-				|| die "failed to modify seccomp policy ${policy}"
-		done
-		for policy in "${seccomp_path}"/*.policy; do
-			local policy_output="${policy%.policy}.bpf"
-			compile_seccomp_policy \
-				--arch-json "${SYSROOT}/build/share/constants.json" \
-				--default-action trap "${policy}" "${policy_output}" \
-				|| die "failed to compile seccomp policy ${policy}"
-		done
-		rm "${seccomp_path}"/common_device.bpf
-		insinto /usr/share/policy/crosvm
-		doins "${seccomp_path}"/*.bpf
-	fi
-
-	# Install qcow utils library, header, and pkgconfig files.
-	dolib.so "${build_dir}/deps/libqcow_utils.so"
-
-	local include_dir="/usr/include/crosvm"
-
-	"${S}"/qcow_utils/platform2_preinstall.sh "${PV}" "${include_dir}" \
-		"${WORKDIR}"
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "${WORKDIR}/libqcow_utils.pc"
-
-	insinto "${include_dir}"
-	doins "${S}"/qcow_utils/src/qcow_utils.h
-
-	# Install plugin library, when requested.
-	if use crosvm-plugin ; then
-		insinto "${include_dir}"
-		doins "${S}/crosvm_plugin/crosvm.h"
-		dolib.so "${build_dir}/deps/libcrosvm_plugin.so"
-	fi
-
-	# Install vhost-user device executable.
-	if use vhost-user-devices; then
-		local build_dir="$(cros-rust_get_build_dir)"
-		for tuple in "${VHOST_USER_BINARIES[@]}"; do
-			local binary="${tuple#*/}"
-			dobin "${build_dir}/${binary}"
-		done
-	fi
-
-	# Install crosvm-direct, when requested.
-	if use crosvm-direct ; then
-		into /build/manatee
-		dobin "${build_dir}/crosvm-direct"
-	fi
-
-	if use fuzzer; then
-		cd fuzz || die "failed to move directory"
-		local f
-		for f in "${FUZZERS[@]}"; do
-			fuzzer_install "${S}/fuzz/OWNERS" \
-				"${build_dir}/${f}"
-		done
-		cd .. || die "failed to move directory"
-	fi
-}
-
-pkg_preinst() {
-	enewuser "crosvm"
-	enewgroup "crosvm"
-
-	cros-rust_pkg_preinst
-}
diff --git a/chromeos-base/crosvm/crosvm-0.1.0-r1598.ebuild b/chromeos-base/crosvm/crosvm-0.1.0-r1598.ebuild
new file mode 100644
index 0000000..4ecc7cf
--- /dev/null
+++ b/chromeos-base/crosvm/crosvm-0.1.0-r1598.ebuild
@@ -0,0 +1,360 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5acd4ee978d9fa1da9476c0338190e08c53ea2aa"
+CROS_WORKON_TREE="c5944a955c7994afdaaee1facb2604801bb47e03"
+CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
+CROS_WORKON_LOCALNAME="platform/crosvm"
+CROS_WORKON_INCREMENTAL_BUILD=1
+
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
+# We don't use CROS_WORKON_OUTOFTREE_BUILD here since crosvm/Cargo.toml is
+# using "# ignored by ebuild" macro which supported by cros-rust.
+
+inherit cros-fuzzer cros-rust cros-workon user
+
+PREBUILT_VERSION="r0000"
+KERNEL_FILE="crosvm-testing-bzimage-x86_64-${PREBUILT_VERSION}"
+ROOTFS_FILE="crosvm-testing-rootfs-x86_64-${PREBUILT_VERSION}"
+
+PREBUILT_URL="https://storage.googleapis.com/chromeos-localmirror"
+
+DESCRIPTION="Utility for running VMs on Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/"
+SRC_URI="
+	test? (
+		${PREBUILT_URL}/${KERNEL_FILE}
+		${PREBUILT_URL}/${ROOTFS_FILE}
+	)
+"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test cros-debug crosvm-gpu -crosvm-direct -crosvm-plugin +crosvm-power-monitor-powerd +crosvm-video-decoder +crosvm-video-encoder +crosvm-wl-dmabuf fuzzer tpm2 android-vm-master arcvm_gce_l1"
+
+COMMON_DEPEND="
+	sys-apps/dtc:=
+	sys-libs/libcap:=
+	chromeos-base/libvda:=
+	chromeos-base/minijail:=
+	dev-libs/wayland:=
+	crosvm-gpu? (
+		media-libs/virglrenderer:=
+	)
+	crosvm-wl-dmabuf? ( media-libs/minigbm:= )
+	dev-rust/libchromeos:=
+	virtual/libusb:1=
+"
+
+RDEPEND="${COMMON_DEPEND}
+	!chromeos-base/crosvm-bin
+	crosvm-power-monitor-powerd? ( sys-apps/dbus )
+	tpm2? ( sys-apps/dbus )
+"
+
+DEPEND="${COMMON_DEPEND}
+	dev-libs/wayland-protocols:=
+	=dev-rust/android_log-sys-0.2*:=
+	>=dev-rust/anyhow-1.0.32:= <dev-rust/anyhow-2.0
+	=dev-rust/async-task-4*:=
+	=dev-rust/async-trait-0.1*:=
+	=dev-rust/bitflags-1*:=
+	~dev-rust/cc-1.0.25:=
+	>=dev-rust/crc32fast-1.2.1:= <dev-rust/crc32fast-2
+	dev-rust/cros_fuzz:=
+	=dev-rust/dbus-0.8*:=
+	>=dev-rust/downcast-rs-1.2.0:= <dev-rust/downcast-rs-2.0
+	=dev-rust/futures-0.3*:=
+	dev-rust/intrusive-collections:=
+	=dev-rust/gdbstub-0.5*:=
+	>=dev-rust/gdbstub_arch-0.1.1:= <dev-rust/gdbstub_arch-0.2
+	~dev-rust/getopts-0.2.18:=
+	>=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0
+	dev-rust/minijail:=
+	~dev-rust/num_cpus-1.9.0:=
+	>=dev-rust/once_cell-1.7.2:= <dev-rust/once_cell-2
+	dev-rust/p9:=
+	=dev-rust/paste-1*:=
+	=dev-rust/pin-utils-0.1*:=
+	~dev-rust/pkg-config-0.3.11:=
+	=dev-rust/proc-macro2-1*:=
+	>=dev-rust/protobuf-2.8:=
+	!>=dev-rust/protobuf-3
+	>=dev-rust/protoc-rust-2.8:=
+	!>=dev-rust/protoc-rust-3
+	=dev-rust/quote-1*:=
+	=dev-rust/rand-0.6*:=
+	=dev-rust/serde-1*:=
+	=dev-rust/serde_json-1*:=
+	>=dev-rust/smallvec-1.6.1:= <dev-rust/smallvec-2
+	=dev-rust/syn-1*:=
+	=dev-rust/tempfile-3*:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+	>=dev-rust/uuid-0.8.2:= <dev-rust/uuid-0.9
+	dev-rust/remain:=
+	dev-rust/system_api:=
+	dev-rust/vmm_vhost:=
+	tpm2? (
+		chromeos-base/tpm2:=
+		chromeos-base/trunks:=
+		=dev-rust/dbus-0.6*:=
+	)
+	media-sound/libcras:=
+	crosvm-power-monitor-powerd? (
+		chromeos-base/system_api
+		=dev-rust/dbus-0.6*:=
+	)
+"
+
+# Rust tests are currently run on the host, not inside the target sysroot.
+# Hence we need to provide required runtime dependencies for tests at
+# build-time.
+# TODO(crbug.com/1154084): Remove when tests can run in sysroot.
+BDEPEND="test? ( chromeos-base/libvda:= )"
+
+get_seccomp_path() {
+	local seccomp_arch="unknown"
+	case ${ARCH} in
+		amd64) seccomp_arch=x86_64;;
+		arm) seccomp_arch=arm;;
+		arm64) seccomp_arch=aarch64;;
+	esac
+
+	echo "seccomp/${seccomp_arch}"
+}
+
+FUZZERS=(
+	crosvm_block_fuzzer
+	crosvm_fs_server_fuzzer
+	crosvm_qcow_fuzzer
+	crosvm_usb_descriptor_fuzzer
+	crosvm_virtqueue_fuzzer
+	crosvm_zimage_fuzzer
+)
+
+src_unpack() {
+	# Unpack both the project and dependency source code
+	cros-workon_src_unpack
+	cros-rust_src_unpack
+}
+
+src_prepare() {
+	cros-rust_src_prepare
+
+	if use arcvm_gce_l1; then
+		eapply "${FILESDIR}"/0001-betty-arcvm-Loose-mprotect-mmap-for-software-renderi.patch
+	fi
+
+	default
+}
+
+src_configure() {
+	cros-rust_src_configure
+
+	# Change the path used for the minijail pivot root from /var/empty.
+	# See: https://crbug.com/934513
+	export DEFAULT_PIVOT_ROOT="/mnt/empty"
+}
+
+src_compile() {
+	local features=(
+		$(usex crosvm-gpu virgl_renderer "")
+		$(usex crosvm-gpu virgl_renderer_next "")
+		$(usex crosvm-plugin plugin "")
+		$(usex crosvm-power-monitor-powerd power-monitor-powerd "")
+		$(usex crosvm-video-decoder video-decoder "")
+		$(usex crosvm-video-encoder video-encoder "")
+		$(usex crosvm-wl-dmabuf wl-dmabuf "")
+		$(usex tpm2 tpm "")
+		$(usex cros-debug gdb "")
+		chromeos
+		$(usex android-vm-master composite-disk "")
+	)
+
+	local packages=(
+		qcow_utils
+		crosvm
+	)
+
+	for pkg in "${packages[@]}"; do
+		ecargo_build -v \
+			--features="${features[*]}" \
+			-p "${pkg}" \
+			|| die "cargo build failed"
+	done
+
+	if use crosvm-direct ; then
+		ecargo_build -v \
+			--no-default-features --features="direct" \
+			-p "crosvm" --bin crosvm-direct \
+			|| die "cargo build failed"
+	fi
+
+	if use fuzzer; then
+		cd fuzz || die "failed to move directory"
+		local f
+		for f in "${FUZZERS[@]}"; do
+			ecargo_build_fuzzer --bin "${f}"
+		done
+		cd .. || die "failed to move directory"
+	fi
+}
+
+src_test() {
+	# Some of the tests will use /dev/kvm.
+	addwrite /dev/kvm
+	local test_opts=()
+	use tpm2 || test_opts+=( --exclude tpm2 --exclude tpm2-sys )
+
+	# io_jail tests fork the process, which cause memory leak errors when
+	# run under sanitizers.
+	cros-rust_use_sanitizers && test_opts+=( --exclude io_jail )
+
+	# Pass kernel/rootfs prebuilts to integration tests.
+	# See crosvm/integration_tests/README.md for details.
+	local CROSVM_CARGO_TEST_PREBUILT_VERSION="${PREBUILT_VERSION}"
+	local kernel_binary="${DISTDIR}/${KERNEL_FILE}"
+	[[ -e "${kernel_binary}" ]] || die "expected to find kernel binary at ${kernel_binary}"
+	CROS_RUST_PLATFORM_TEST_ARGS+=(
+		"--env" "CROSVM_CARGO_TEST_KERNEL_BINARY=${kernel_binary}"
+	)
+
+	local rootfs_image="${DISTDIR}/${ROOTFS_FILE}"
+	[[ -e "${rootfs_image}" ]] || die "expected to find rootfs image at ${rootfs_image}"
+	CROS_RUST_PLATFORM_TEST_ARGS+=(
+		"--env" "CROSVM_CARGO_TEST_ROOTFS_IMAGE=${rootfs_image}"
+	)
+
+	# TODO(b/194848000): Reenable when /dev/log starts working inside cros_sdk.
+	test_opts+=( --exclude "integration_tests" )
+
+	# kernel versions between 5.1 and 5.10 have io_uring bugs, skip the io_uring
+	# integration test on these platforms.  See b/189879899
+	local cut_version=$(ver_cut 1-2 "$(uname -r)")
+	if ver_test 5.10 -gt "${cut_version}"; then
+		test_opts+=( --exclude "io_uring" )
+	fi
+
+	if ! use x86 && ! use amd64; then
+		test_opts+=( --exclude "x86_64" )
+		test_opts+=( --no-run )
+	fi
+
+	if ! use arm64; then
+		test_opts+=( --exclude "aarch64" )
+	fi
+
+	if ! use crosvm-plugin; then
+		test_opts+=( --exclude "crosvm_plugin" )
+	fi
+
+	# Excluding tests that run on a different arch, use /dev/dri,
+	# /dev/net/tun, or wayland access because the bots don't support these.
+	local args=(
+		--workspace -v
+		--exclude net_util
+		--exclude gpu_display
+		--exclude rutabaga_gfx
+		--exclude crosvm-fuzz
+		# Also exclude the following since their tests are run in their ebuilds.
+		--exclude enumn
+		--exclude sys_util
+		"${test_opts[@]}"
+	)
+
+	# Non-x86 platforms set --no-run to disable executing the tests.
+	if ! has "--no-run" "${args[@]}"; then
+		# Run the "boot" test on the host until the syslog is properly passed
+		# into the sandbox.
+		# TODO(crbug.com/1154084) Run these on the host until libtest and libstd
+		# are available on the target.
+		cros-rust_get_host_test_executables "${args[@]}" --lib --tests
+	fi
+
+	ecargo_test "${args[@]}" \
+		-- --test-threads=1 \
+		|| die "cargo test failed"
+
+	# Plugin tests all require /dev/kvm, but we want to make sure they build
+	# at least.
+	if use crosvm-plugin; then
+		ecargo_test --no-run --features plugin \
+			|| die "cargo build with plugin feature failed"
+	fi
+}
+
+src_install() {
+	# cargo doesn't know how to install cross-compiled binaries.  It will
+	# always install native binaries for the host system.  Manually install
+	# crosvm instead.
+	local build_dir="$(cros-rust_get_build_dir)"
+	dobin "${build_dir}/crosvm"
+
+	# Install seccomp policy files.
+	local seccomp_path="${S}/$(get_seccomp_path)"
+	if [[ -d "${seccomp_path}" ]] ; then
+		local policy
+		for policy in "${seccomp_path}"/*.policy; do
+			sed -i "s:/usr/share/policy/crosvm:${seccomp_path}:g" "${policy}" \
+				|| die "failed to modify seccomp policy ${policy}"
+		done
+		for policy in "${seccomp_path}"/*.policy; do
+			local policy_output="${policy%.policy}.bpf"
+			compile_seccomp_policy \
+				--arch-json "${SYSROOT}/build/share/constants.json" \
+				--default-action trap "${policy}" "${policy_output}" \
+				|| die "failed to compile seccomp policy ${policy}"
+		done
+		rm "${seccomp_path}"/common_device.bpf
+		insinto /usr/share/policy/crosvm
+		doins "${seccomp_path}"/*.bpf
+	fi
+
+	# Install qcow utils library, header, and pkgconfig files.
+	dolib.so "${build_dir}/deps/libqcow_utils.so"
+
+	local include_dir="/usr/include/crosvm"
+
+	"${S}"/qcow_utils/platform2_preinstall.sh "${PV}" "${include_dir}" \
+		"${WORKDIR}"
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "${WORKDIR}/libqcow_utils.pc"
+
+	insinto "${include_dir}"
+	doins "${S}"/qcow_utils/src/qcow_utils.h
+
+	# Install plugin library, when requested.
+	if use crosvm-plugin ; then
+		insinto "${include_dir}"
+		doins "${S}/crosvm_plugin/crosvm.h"
+		dolib.so "${build_dir}/deps/libcrosvm_plugin.so"
+	fi
+
+	# Install crosvm-direct, when requested.
+	if use crosvm-direct ; then
+		into /build/manatee
+		dobin "${build_dir}/crosvm-direct"
+	fi
+
+	if use fuzzer; then
+		cd fuzz || die "failed to move directory"
+		local f
+		for f in "${FUZZERS[@]}"; do
+			local fuzzer_component_id="982362"
+			fuzzer_install "${S}/fuzz/OWNERS" \
+				"${build_dir}/${f}" \
+				--comp "${fuzzer_component_id}"
+		done
+		cd .. || die "failed to move directory"
+	fi
+}
+
+pkg_preinst() {
+	enewuser "crosvm"
+	enewgroup "crosvm"
+
+	cros-rust_pkg_preinst
+}
diff --git a/chromeos-base/crosvm/crosvm-9999.ebuild b/chromeos-base/crosvm/crosvm-9999.ebuild
index 0854d76..686cce2 100644
--- a/chromeos-base/crosvm/crosvm-9999.ebuild
+++ b/chromeos-base/crosvm/crosvm-9999.ebuild
@@ -5,6 +5,10 @@
 CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
 CROS_WORKON_LOCALNAME="platform/crosvm"
 CROS_WORKON_INCREMENTAL_BUILD=1
+
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
 # We don't use CROS_WORKON_OUTOFTREE_BUILD here since crosvm/Cargo.toml is
 # using "# ignored by ebuild" macro which supported by cros-rust.
 
@@ -27,7 +31,7 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="test cros-debug crosvm-gpu -crosvm-direct -crosvm-plugin +crosvm-power-monitor-powerd +crosvm-video-decoder +crosvm-video-encoder +crosvm-wl-dmabuf fuzzer tpm2 android-vm-master arcvm_gce_l1 vhost-user-devices"
+IUSE="test cros-debug crosvm-gpu -crosvm-direct -crosvm-plugin +crosvm-power-monitor-powerd +crosvm-video-decoder +crosvm-video-encoder +crosvm-wl-dmabuf fuzzer tpm2 android-vm-master arcvm_gce_l1"
 
 COMMON_DEPEND="
 	sys-apps/dtc:=
@@ -57,14 +61,16 @@
 	=dev-rust/async-trait-0.1*:=
 	=dev-rust/bitflags-1*:=
 	~dev-rust/cc-1.0.25:=
+	>=dev-rust/crc32fast-1.2.1:= <dev-rust/crc32fast-2
 	dev-rust/cros_fuzz:=
+	=dev-rust/dbus-0.8*:=
 	>=dev-rust/downcast-rs-1.2.0:= <dev-rust/downcast-rs-2.0
 	=dev-rust/futures-0.3*:=
 	dev-rust/intrusive-collections:=
-	=dev-rust/gdbstub-0.4*:=
+	=dev-rust/gdbstub-0.5*:=
+	>=dev-rust/gdbstub_arch-0.1.1:= <dev-rust/gdbstub_arch-0.2
 	~dev-rust/getopts-0.2.18:=
 	>=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0
-	dev-rust/libvda:=
 	dev-rust/minijail:=
 	~dev-rust/num_cpus-1.9.0:=
 	>=dev-rust/once_cell-1.7.2:= <dev-rust/once_cell-2
@@ -83,15 +89,17 @@
 	=dev-rust/serde_json-1*:=
 	>=dev-rust/smallvec-1.6.1:= <dev-rust/smallvec-2
 	=dev-rust/syn-1*:=
+	=dev-rust/tempfile-3*:=
 	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+	>=dev-rust/uuid-0.8.2:= <dev-rust/uuid-0.9
 	dev-rust/remain:=
+	dev-rust/system_api:=
 	dev-rust/vmm_vhost:=
 	tpm2? (
 		chromeos-base/tpm2:=
 		chromeos-base/trunks:=
 		=dev-rust/dbus-0.6*:=
 	)
-	media-sound/audio_streams:=
 	media-sound/libcras:=
 	crosvm-power-monitor-powerd? (
 		chromeos-base/system_api
@@ -99,6 +107,12 @@
 	)
 "
 
+# Rust tests are currently run on the host, not inside the target sysroot.
+# Hence we need to provide required runtime dependencies for tests at
+# build-time.
+# TODO(crbug.com/1154084): Remove when tests can run in sysroot.
+BDEPEND="test? ( chromeos-base/libvda:= )"
+
 get_seccomp_path() {
 	local seccomp_arch="unknown"
 	case ${ARCH} in
@@ -119,12 +133,6 @@
 	crosvm_zimage_fuzzer
 )
 
-# Array of "<features>/<binary name>"
-VHOST_USER_BINARIES=(
-	"net/vhost-user-net-device"
-	"wl/vhost-user-wl-device"
-)
-
 src_unpack() {
 	# Unpack both the project and dependency source code
 	cros-workon_src_unpack
@@ -191,19 +199,6 @@
 		done
 		cd .. || die "failed to move directory"
 	fi
-
-	if use vhost-user-devices; then
-		cd vhost_user_devices || die "failed to move directory"
-		for tuple in "${VHOST_USER_BINARIES[@]}"; do
-			local vhost_features="${tuple%/*}"
-			local binary="${tuple#*/}"
-			ecargo_build -v \
-				--features "${vhost_features}" \
-				--bin "${binary}" \
-				|| die "cargo build failed"
-		done
-		cd .. || die "failed to move directory"
-	fi
 }
 
 src_test() {
@@ -231,12 +226,13 @@
 		"--env" "CROSVM_CARGO_TEST_ROOTFS_IMAGE=${rootfs_image}"
 	)
 
-	# crosvm does not work on kernel versions between 5.1 and 5.10 due to
-	# io_uring bugs. Skip the integration tests on these platforms.
-	# See b/189879899
+	# TODO(b/194848000): Reenable when /dev/log starts working inside cros_sdk.
+	test_opts+=( --exclude "integration_tests" )
+
+	# kernel versions between 5.1 and 5.10 have io_uring bugs, skip the io_uring
+	# integration test on these platforms.  See b/189879899
 	local cut_version=$(ver_cut 1-2 "$(uname -r)")
 	if ver_test 5.10 -gt "${cut_version}"; then
-		test_opts+=( --exclude "integration_tests" )
 		test_opts+=( --exclude "io_uring" )
 	fi
 
@@ -286,13 +282,6 @@
 		ecargo_test --no-run --features plugin \
 			|| die "cargo build with plugin feature failed"
 	fi
-
-	if use vhost-user-devices; then
-		cd vhost_user_devices || die "failed to move directory"
-		ecargo_test --all-targets --all-features \
-			|| die "cargo test vhost-user-devices"
-		cd .. || die "failed to move directory"
-	fi
 }
 
 src_install() {
@@ -342,15 +331,6 @@
 		dolib.so "${build_dir}/deps/libcrosvm_plugin.so"
 	fi
 
-	# Install vhost-user device executable.
-	if use vhost-user-devices; then
-		local build_dir="$(cros-rust_get_build_dir)"
-		for tuple in "${VHOST_USER_BINARIES[@]}"; do
-			local binary="${tuple#*/}"
-			dobin "${build_dir}/${binary}"
-		done
-	fi
-
 	# Install crosvm-direct, when requested.
 	if use crosvm-direct ; then
 		into /build/manatee
@@ -361,8 +341,10 @@
 		cd fuzz || die "failed to move directory"
 		local f
 		for f in "${FUZZERS[@]}"; do
+			local fuzzer_component_id="982362"
 			fuzzer_install "${S}/fuzz/OWNERS" \
-				"${build_dir}/${f}"
+				"${build_dir}/${f}" \
+				--comp "${fuzzer_component_id}"
 		done
 		cd .. || die "failed to move directory"
 	fi
diff --git a/chromeos-base/cryptohome-client/cryptohome-client-0.0.1-r1348.ebuild b/chromeos-base/cryptohome-client/cryptohome-client-0.0.1-r1348.ebuild
deleted file mode 100644
index 37f0a57..0000000
--- a/chromeos-base/cryptohome-client/cryptohome-client-0.0.1-r1348.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a9ed3579a46a08a64f1ac9d96a1faaa6e15720b9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk cryptohome .gn"
-
-PLATFORM_SUBDIR="cryptohome/client"
-
-inherit cros-workon platform
-
-DESCRIPTION="Cryptohome D-Bus client library for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros_host"
-
-# D-Bus proxies generated by this client library depend on the code generator
-# itself (chromeos-dbus-bindings) and produce header files that rely on
-# libbrillo library, hence both dependencies.
-BDEPEND="
-	chromeos-base/chromeos-dbus-bindings
-"
-
-RDEPEND="
-	!<chromeos-base/cryptohome-0.0.1
-"
-
-src_install() {
-	# Install D-Bus client library.
-	platform_install_dbus_client_lib "cryptohome"
-}
diff --git a/chromeos-base/cryptohome-client/cryptohome-client-0.0.1-r1518.ebuild b/chromeos-base/cryptohome-client/cryptohome-client-0.0.1-r1518.ebuild
new file mode 100644
index 0000000..e8c8ea7
--- /dev/null
+++ b/chromeos-base/cryptohome-client/cryptohome-client-0.0.1-r1518.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="4044c5b32117b91cc288ad825f8345d7933ef54b"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "805a463dbaf0f6276d889ff7b347e2dcd599f8f3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk cryptohome .gn"
+
+PLATFORM_SUBDIR="cryptohome/client"
+
+inherit cros-workon platform
+
+DESCRIPTION="Cryptohome D-Bus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+# D-Bus proxies generated by this client library depend on the code generator
+# itself (chromeos-dbus-bindings) and produce header files that rely on
+# libbrillo library, hence both dependencies.
+BDEPEND="
+	chromeos-base/chromeos-dbus-bindings
+"
+
+# r3700 because we moved the dbus headers for UserDataAuth from cryptohome into
+# cryptohome-client in that version.
+RDEPEND="
+	!<chromeos-base/cryptohome-0.0.1-r3700
+"
+
+src_install() {
+	# Install D-Bus client library.
+	platform_install_dbus_client_lib "cryptohome"
+	platform_install_dbus_client_lib "user_data_auth"
+}
diff --git a/chromeos-base/cryptohome-client/cryptohome-client-9999.ebuild b/chromeos-base/cryptohome-client/cryptohome-client-9999.ebuild
index 9bc60dc..cea4ca2 100644
--- a/chromeos-base/cryptohome-client/cryptohome-client-9999.ebuild
+++ b/chromeos-base/cryptohome-client/cryptohome-client-9999.ebuild
@@ -18,7 +18,6 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="cros_host"
 
 # D-Bus proxies generated by this client library depend on the code generator
 # itself (chromeos-dbus-bindings) and produce header files that rely on
@@ -27,11 +26,14 @@
 	chromeos-base/chromeos-dbus-bindings
 "
 
+# r3700 because we moved the dbus headers for UserDataAuth from cryptohome into
+# cryptohome-client in that version.
 RDEPEND="
-	!<chromeos-base/cryptohome-0.0.1
+	!<chromeos-base/cryptohome-0.0.1-r3700
 "
 
 src_install() {
 	# Install D-Bus client library.
 	platform_install_dbus_client_lib "cryptohome"
+	platform_install_dbus_client_lib "user_data_auth"
 }
diff --git a/chromeos-base/cryptohome-dev-utils/cryptohome-dev-utils-0.0.1-r1185.ebuild b/chromeos-base/cryptohome-dev-utils/cryptohome-dev-utils-0.0.1-r1185.ebuild
deleted file mode 100644
index d3a974e..0000000
--- a/chromeos-base/cryptohome-dev-utils/cryptohome-dev-utils-0.0.1-r1185.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a9ed3579a46a08a64f1ac9d96a1faaa6e15720b9" "1a305e65cfaf27dd42734a37eda080d40b377d6c" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_INCREMENTAL_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk cryptohome secure_erase_file .gn"
-
-PLATFORM_SUBDIR="cryptohome/dev-utils"
-
-inherit cros-workon platform
-
-DESCRIPTION="Cryptohome developer and testing utilities for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="tpm tpm2"
-
-REQUIRED_USE="tpm2? ( !tpm )"
-
-COMMON_DEPEND="
-	tpm? (
-		app-crypt/trousers:=
-	)
-	tpm2? (
-		chromeos-base/trunks:=
-	)
-	chromeos-base/attestation:=
-	chromeos-base/biod_proxy:=
-	chromeos-base/chaps:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/tpm_manager:=
-	chromeos-base/secure-erase-file:=
-	dev-libs/flatbuffers:=
-	dev-libs/glib:=
-	dev-libs/openssl:=
-	dev-libs/protobuf:=
-	sys-apps/keyutils:=
-	sys-fs/e2fsprogs:=
-	sys-fs/ecryptfs-utils:=
-"
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/vboot_reference:=
-"
-
-src_install() {
-	dosbin "${OUT}"/cryptohome-test-tool
-	dosbin "${OUT}"/cryptohome-tpm-live-test
-}
diff --git a/chromeos-base/cryptohome-dev-utils/cryptohome-dev-utils-0.0.1-r1359.ebuild b/chromeos-base/cryptohome-dev-utils/cryptohome-dev-utils-0.0.1-r1359.ebuild
new file mode 100644
index 0000000..53f6d2e
--- /dev/null
+++ b/chromeos-base/cryptohome-dev-utils/cryptohome-dev-utils-0.0.1-r1359.ebuild
@@ -0,0 +1,65 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="4044c5b32117b91cc288ad825f8345d7933ef54b"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "805a463dbaf0f6276d889ff7b347e2dcd599f8f3" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "1a305e65cfaf27dd42734a37eda080d40b377d6c" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_INCREMENTAL_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk cryptohome libhwsec secure_erase_file .gn"
+
+PLATFORM_SUBDIR="cryptohome/dev-utils"
+
+inherit cros-workon platform
+
+DESCRIPTION="Cryptohome developer and testing utilities for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="tpm tpm_dynamic tpm2"
+
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
+
+COMMON_DEPEND="
+	tpm? (
+		app-crypt/trousers:=
+	)
+	tpm2? (
+		chromeos-base/trunks:=
+	)
+	chromeos-base/attestation:=
+	chromeos-base/biod_proxy:=
+	chromeos-base/cbor:=
+	chromeos-base/chaps:=
+	chromeos-base/libhwsec:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/tpm_manager:=
+	chromeos-base/secure-erase-file:=
+	dev-libs/flatbuffers:=
+	dev-libs/glib:=
+	dev-libs/openssl:=
+	dev-libs/protobuf:=
+	sys-apps/keyutils:=
+	sys-fs/e2fsprogs:=
+	sys-fs/ecryptfs-utils:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/vboot_reference:=
+"
+
+src_install() {
+	dosbin "${OUT}"/cryptohome-test-tool
+	dosbin "${OUT}"/cryptohome-tpm-live-test
+}
diff --git a/chromeos-base/cryptohome-dev-utils/cryptohome-dev-utils-9999.ebuild b/chromeos-base/cryptohome-dev-utils/cryptohome-dev-utils-9999.ebuild
index 0538f34..180d56e 100644
--- a/chromeos-base/cryptohome-dev-utils/cryptohome-dev-utils-9999.ebuild
+++ b/chromeos-base/cryptohome-dev-utils/cryptohome-dev-utils-9999.ebuild
@@ -8,7 +8,7 @@
 CROS_WORKON_DESTDIR="${S}/platform2"
 CROS_WORKON_INCREMENTAL_BUILD=1
 # TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk cryptohome secure_erase_file .gn"
+CROS_WORKON_SUBTREE="common-mk cryptohome libhwsec secure_erase_file .gn"
 
 PLATFORM_SUBDIR="cryptohome/dev-utils"
 
@@ -20,9 +20,12 @@
 LICENSE="BSD-Google"
 SLOT="0/0"
 KEYWORDS="~*"
-IUSE="tpm tpm2"
+IUSE="tpm tpm_dynamic tpm2"
 
-REQUIRED_USE="tpm2? ( !tpm )"
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
 
 COMMON_DEPEND="
 	tpm? (
@@ -33,7 +36,9 @@
 	)
 	chromeos-base/attestation:=
 	chromeos-base/biod_proxy:=
+	chromeos-base/cbor:=
 	chromeos-base/chaps:=
+	chromeos-base/libhwsec:=
 	>=chromeos-base/metrics-0.0.1-r3152:=
 	chromeos-base/tpm_manager:=
 	chromeos-base/secure-erase-file:=
diff --git a/chromeos-base/cryptohome/cryptohome-0.0.1-r3707.ebuild b/chromeos-base/cryptohome/cryptohome-0.0.1-r3707.ebuild
deleted file mode 100644
index 6629777..0000000
--- a/chromeos-base/cryptohome/cryptohome-0.0.1-r3707.ebuild
+++ /dev/null
@@ -1,226 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a9ed3579a46a08a64f1ac9d96a1faaa6e15720b9" "81dfbbc1756a3b4224b447e7bf10a916d97c4f66" "1a305e65cfaf27dd42734a37eda080d40b377d6c" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_INCREMENTAL_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk cryptohome libhwsec secure_erase_file .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="cryptohome"
-
-inherit tmpfiles cros-workon platform systemd udev user
-
-DESCRIPTION="Encrypted home directories for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="-cert_provision +device_mapper -direncription_allow_v2 -direncryption
-	double_extend_pcr_issue +downloads_bind_mount fuzzer
-	generated_cros_config generic_tpm2 kernel-5_10 kernel-5_4 kernel-upstream
-	lvm_stateful_partition mount_oop pinweaver selinux slow_mount systemd
-	test tpm tpm2 tpm2_simulator unibuild uprev-4-to-5
-	user_session_isolation +vault_legacy_mount vtpm_proxy"
-
-REQUIRED_USE="
-	device_mapper
-	tpm2? ( !tpm )
-"
-
-COMMON_DEPEND="
-	!chromeos-base/chromeos-cryptohome
-	tpm? (
-		app-crypt/trousers:=
-	)
-	fuzzer? (
-		app-crypt/trousers:=
-	)
-	tpm2? (
-		chromeos-base/trunks:=
-	)
-	selinux? (
-		sys-libs/libselinux:=
-	)
-	chromeos-base/attestation:=
-	chromeos-base/biod_proxy:=
-	chromeos-base/bootlockbox-client:=
-	chromeos-base/cbor:=
-	chromeos-base/chaps:=
-	chromeos-base/chromeos-config-tools:=
-	chromeos-base/libhwsec:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/secure-erase-file:=
-	chromeos-base/tpm_manager:=
-	dev-libs/dbus-glib:=
-	dev-libs/flatbuffers:=
-	dev-libs/glib:=
-	dev-libs/openssl:=
-	dev-libs/protobuf:=
-	sys-apps/flashmap:=
-	sys-apps/keyutils:=
-	sys-apps/rootdev:=
-	sys-fs/e2fsprogs:=
-	sys-fs/ecryptfs-utils:=
-	sys-fs/lvm2:=
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
-"
-
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}
-	tpm2? ( chromeos-base/trunks:=[test?] )
-	chromeos-base/attestation-client:=
-	chromeos-base/cryptohome-client:=
-	chromeos-base/power_manager-client:=
-	chromeos-base/protofiles:=
-	chromeos-base/system_api:=[fuzzer?]
-	chromeos-base/tpm_manager-client:=
-	chromeos-base/vboot_reference:=
-	chromeos-base/libhwsec:=
-"
-
-src_install() {
-	pushd "${OUT}" >/dev/null
-	dosbin cryptohomed cryptohome cryptohome-proxy cryptohome-path homedirs_initializer \
-		lockbox-cache tpm-manager
-	dosbin cryptohome-namespace-mounter
-	dosbin mount-encrypted
-	dosbin encrypted-reboot-vault
-	if use tpm2; then
-		dosbin bootlockboxd bootlockboxtool
-	fi
-	if use cert_provision; then
-		dolib.so lib/libcert_provision.so
-		dosbin cert_provision_client
-	fi
-	popd >/dev/null
-
-	insinto /etc/dbus-1/system.d
-	doins etc/Cryptohome.conf
-	doins etc/org.chromium.UserDataAuth.conf
-	if use tpm2; then
-		doins etc/BootLockbox.conf
-	fi
-
-	if use direncription_allow_v2 && ( (use !kernel-5_4 && use !kernel-5_10 && use !kernel-upstream) || use uprev-4-to-5); then
-		die "direncription_allow_v2 is enabled where it shouldn't be. Do you need to change the board overlay? Note, uprev boards should have it disabled!"
-	fi
-
-	if use !direncription_allow_v2 && (use kernel-5_4 || use kernel-5_10 || use kernel-upstream) && use !uprev-4-to-5; then
-		die "direncription_allow_v2 is not enabled where it should be. Do you need to change the board overlay? Note, uprev boards should have it disabled!"
-	fi
-
-	# Install init scripts
-	if use systemd; then
-		if use tpm2; then
-			sed 's/tcsd.service/attestationd.service/' \
-				init/cryptohomed.service \
-				> "${T}/cryptohomed.service"
-			systemd_dounit "${T}/cryptohomed.service"
-		else
-			systemd_dounit init/cryptohomed.service
-		fi
-		systemd_dounit init/mount-encrypted.service
-		systemd_dounit init/lockbox-cache.service
-		systemd_enable_service boot-services.target cryptohomed.service
-		systemd_enable_service system-services.target mount-encrypted.service
-		systemd_enable_service ui.target lockbox-cache.service
-	else
-		insinto /etc/init
-		doins init/cryptohomed-client.conf
-		doins init/cryptohomed.conf
-		doins init/cryptohome-proxy.conf
-		doins init/init-homedirs.conf
-		doins init/mount-encrypted.conf
-		doins init/send-mount-encrypted-metrics.conf
-		if use tpm2_simulator && ! use vtpm_proxy; then
-			newins init/lockbox-cache.conf.tpm2_simulator lockbox-cache.conf
-		else
-			doins init/lockbox-cache.conf
-		fi
-		if use tpm2; then
-			insinto /usr/share/policy
-			newins bootlockbox/seccomp/bootlockboxd-seccomp-${ARCH}.policy \
-				bootlockboxd-seccomp.policy
-			insinto /etc/init
-			doins bootlockbox/bootlockboxd.conf
-		else
-			sed -i '/env DISTRIBUTED_MODE_FLAG=/s:=.*:="--attestation_mode=dbus":' \
-				"${D}/etc/init/cryptohomed.conf" ||
-				die "Can't activate distributed mode in cryptohomed.conf"
-		fi
-		if use direncryption; then
-			sed -i '/env DIRENCRYPTION_FLAG=/s:=.*:="--direncryption":' \
-				"${D}/etc/init/cryptohomed.conf" ||
-				die "Can't replace direncryption flag in cryptohomed.conf"
-		fi
-		if use !vault_legacy_mount; then
-			sed -i '/env NO_LEGACY_MOUNT_FLAG=/s:=.*:="--nolegacymount":' \
-				"${D}/etc/init/cryptohomed.conf" ||
-				die "Can't replace nolegacymount flag in cryptohomed.conf"
-		fi
-		if use !downloads_bind_mount; then
-			sed -i '/env NO_DOWNLOAD_BINDMOUNT_FLAG=/s:=.*:="--no_downloads_bind_mount":' \
-				"${D}/etc/init/cryptohomed.conf" ||
-				die "Can't replace no_downloads_bind_mount flag in cryptohomed.conf"
-		fi
-		if use direncription_allow_v2; then
-			sed -i '/env FSCRYPT_V2_FLAG=/s:=.*:="--fscrypt_v2":' \
-				"${D}/etc/init/cryptohomed.conf" ||
-				die "Can't replace fscrypt_v2 flag in cryptohomed.conf"
-		fi
-	fi
-	exeinto /usr/share/cros/init
-	if use tpm2_simulator && ! use vtpm_proxy; then
-		newexe init/lockbox-cache.sh.tpm2_simulator lockbox-cache.sh
-	else
-		doexe init/lockbox-cache.sh
-	fi
-	if use cert_provision; then
-		insinto /usr/include/cryptohome
-		doins cert_provision.h
-	fi
-
-	# Install seccomp policy for cryptohome-proxy
-	insinto /usr/share/policy
-	newins "seccomp/cryptohome-proxy-${ARCH}.policy" cryptohome-proxy.policy
-
-	dotmpfiles tmpfiles.d/cryptohome.conf
-
-	platform_fuzzer_install "${S}"/OWNERS \
-		"${OUT}"/cryptohome_cryptolib_rsa_oaep_decrypt_fuzzer \
-		fuzzers/data/*
-
-	platform_fuzzer_install "${S}"/OWNERS \
-		"${OUT}"/cryptohome_cryptolib_blob_to_hex_fuzzer
-
-	platform_fuzzer_install "${S}"/OWNERS \
-		"${OUT}"/cryptohome_tpm1_cmk_migration_parser_fuzzer \
-		fuzzers/data/*
-}
-
-pkg_preinst() {
-	enewuser "bootlockboxd"
-	enewgroup "bootlockboxd"
-	enewuser "cryptohome"
-	enewgroup "cryptohome"
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/cryptohome_testrunner"
-	platform_test "run" "${OUT}/mount_encrypted_unittests"
-	if use tpm2; then
-		platform_test "run" "${OUT}/boot_lockbox_unittests"
-	fi
-}
diff --git a/chromeos-base/cryptohome/cryptohome-0.0.1-r3890.ebuild b/chromeos-base/cryptohome/cryptohome-0.0.1-r3890.ebuild
new file mode 100644
index 0000000..6a969d7
--- /dev/null
+++ b/chromeos-base/cryptohome/cryptohome-0.0.1-r3890.ebuild
@@ -0,0 +1,234 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="4044c5b32117b91cc288ad825f8345d7933ef54b"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "805a463dbaf0f6276d889ff7b347e2dcd599f8f3" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "1e9ca239fab09ba22b58e4a22d63e2ede865b159" "1a305e65cfaf27dd42734a37eda080d40b377d6c" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_INCREMENTAL_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk cryptohome libhwsec libhwsec-foundation secure_erase_file .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="cryptohome"
+
+inherit tmpfiles cros-workon cros-unibuild platform systemd udev user
+
+DESCRIPTION="Encrypted home directories for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="-cert_provision +device_mapper -direncription_allow_v2 -direncryption
+	double_extend_pcr_issue +downloads_bind_mount fuzzer
+	generic_tpm2 kernel-5_10 kernel-5_4 kernel-upstream
+	lvm_stateful_partition mount_oop pinweaver selinux slow_mount systemd
+	test tpm tpm_dynamic tpm2 tpm2_simulator uprev-4-to-5
+	user_session_isolation +vault_legacy_mount vtpm_proxy"
+
+REQUIRED_USE="
+	device_mapper
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
+
+COMMON_DEPEND="
+	!chromeos-base/chromeos-cryptohome
+	tpm? (
+		app-crypt/trousers:=
+	)
+	fuzzer? (
+		app-crypt/trousers:=
+	)
+	tpm2? (
+		chromeos-base/trunks:=
+	)
+	selinux? (
+		sys-libs/libselinux:=
+	)
+	chromeos-base/attestation:=
+	chromeos-base/biod_proxy:=
+	chromeos-base/bootlockbox-client:=
+	chromeos-base/cbor:=
+	chromeos-base/chaps:=
+	chromeos-base/chromeos-config-tools:=
+	chromeos-base/libhwsec:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/secure-erase-file:=
+	chromeos-base/tpm_manager:=
+	dev-libs/flatbuffers:=
+	dev-libs/openssl:=
+	dev-libs/protobuf:=
+	sys-apps/flashmap:=
+	sys-apps/keyutils:=
+	sys-apps/rootdev:=
+	sys-fs/e2fsprogs:=
+	sys-fs/ecryptfs-utils:=
+	sys-fs/lvm2:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}
+	tpm2? ( chromeos-base/trunks:=[test?] )
+	chromeos-base/attestation-client:=
+	chromeos-base/cryptohome-client:=
+	chromeos-base/power_manager-client:=
+	chromeos-base/protofiles:=
+	chromeos-base/system_api:=[fuzzer?]
+	chromeos-base/tpm_manager-client:=
+	chromeos-base/vboot_reference:=
+	chromeos-base/libhwsec:=
+"
+
+src_install() {
+	pushd "${OUT}" >/dev/null
+	dosbin cryptohomed cryptohome cryptohome-proxy cryptohome-path homedirs_initializer \
+		lockbox-cache tpm-manager
+	dosbin cryptohome-namespace-mounter
+	dosbin mount-encrypted
+	dosbin encrypted-reboot-vault
+	if use tpm2; then
+		dosbin bootlockboxd bootlockboxtool
+	fi
+	if use cert_provision; then
+		dolib.so lib/libcert_provision.so
+		dosbin cert_provision_client
+	fi
+	popd >/dev/null
+
+	insinto /etc/dbus-1/system.d
+	doins etc/Cryptohome.conf
+	doins etc/org.chromium.UserDataAuth.conf
+	if use tpm2; then
+		doins etc/BootLockbox.conf
+	fi
+
+	if use direncription_allow_v2 && ( (use !kernel-5_4 && use !kernel-5_10 && use !kernel-upstream) || use uprev-4-to-5); then
+		die "direncription_allow_v2 is enabled where it shouldn't be. Do you need to change the board overlay? Note, uprev boards should have it disabled!"
+	fi
+
+	if use !direncription_allow_v2 && (use kernel-5_4 || use kernel-5_10 || use kernel-upstream) && use !uprev-4-to-5; then
+		die "direncription_allow_v2 is not enabled where it should be. Do you need to change the board overlay? Note, uprev boards should have it disabled!"
+	fi
+
+	# Install init scripts
+	if use systemd; then
+		if use tpm2; then
+			sed 's/tcsd.service/attestationd.service/' \
+				init/cryptohomed.service \
+				> "${T}/cryptohomed.service"
+			systemd_dounit "${T}/cryptohomed.service"
+		else
+			systemd_dounit init/cryptohomed.service
+		fi
+		systemd_dounit init/mount-encrypted.service
+		systemd_dounit init/lockbox-cache.service
+		systemd_enable_service boot-services.target cryptohomed.service
+		systemd_enable_service system-services.target mount-encrypted.service
+		systemd_enable_service ui.target lockbox-cache.service
+	else
+		insinto /etc/init
+		doins init/cryptohomed-client.conf
+		doins init/cryptohomed.conf
+		doins init/cryptohome-proxy.conf
+		doins init/init-homedirs.conf
+		doins init/mount-encrypted.conf
+		doins init/send-mount-encrypted-metrics.conf
+		if use tpm2_simulator && ! use vtpm_proxy; then
+			newins init/lockbox-cache.conf.tpm2_simulator lockbox-cache.conf
+		elif use tpm_dynamic; then
+			newins init/lockbox-cache.conf.tpm_dynamic lockbox-cache.conf
+		else
+			doins init/lockbox-cache.conf
+		fi
+		if use tpm2; then
+			insinto /usr/share/policy
+			newins bootlockbox/seccomp/bootlockboxd-seccomp-${ARCH}.policy \
+				bootlockboxd-seccomp.policy
+			insinto /etc/init
+			doins bootlockbox/bootlockboxd.conf
+		else
+			sed -i '/env DISTRIBUTED_MODE_FLAG=/s:=.*:="--attestation_mode=dbus":' \
+				"${D}/etc/init/cryptohomed.conf" ||
+				die "Can't activate distributed mode in cryptohomed.conf"
+		fi
+		if use direncryption; then
+			sed -i '/env DIRENCRYPTION_FLAG=/s:=.*:="--direncryption":' \
+				"${D}/etc/init/cryptohomed.conf" ||
+				die "Can't replace direncryption flag in cryptohomed.conf"
+		fi
+		if use !vault_legacy_mount; then
+			sed -i '/env NO_LEGACY_MOUNT_FLAG=/s:=.*:="--nolegacymount":' \
+				"${D}/etc/init/cryptohomed.conf" ||
+				die "Can't replace nolegacymount flag in cryptohomed.conf"
+		fi
+		if use !downloads_bind_mount; then
+			sed -i '/env NO_DOWNLOAD_BINDMOUNT_FLAG=/s:=.*:="--no_downloads_bind_mount":' \
+				"${D}/etc/init/cryptohomed.conf" ||
+				die "Can't replace no_downloads_bind_mount flag in cryptohomed.conf"
+		fi
+		if use direncription_allow_v2; then
+			sed -i '/env FSCRYPT_V2_FLAG=/s:=.*:="--fscrypt_v2":' \
+				"${D}/etc/init/cryptohomed.conf" ||
+				die "Can't replace fscrypt_v2 flag in cryptohomed.conf"
+		fi
+	fi
+	exeinto /usr/share/cros/init
+	if use tpm2_simulator && ! use vtpm_proxy; then
+		newexe init/lockbox-cache.sh.tpm2_simulator lockbox-cache.sh
+	elif use tpm_dynamic; then
+		newexe init/lockbox-cache.sh.tpm_dynamic lockbox-cache.sh
+	else
+		doexe init/lockbox-cache.sh
+	fi
+	if use cert_provision; then
+		insinto /usr/include/cryptohome
+		doins cert_provision.h
+	fi
+
+	# Install seccomp policy for cryptohome-proxy
+	insinto /usr/share/policy
+	newins "seccomp/cryptohome-proxy-${ARCH}.policy" cryptohome-proxy.policy
+
+	dotmpfiles tmpfiles.d/cryptohome.conf
+
+	local fuzzer_component_id="886041"
+	platform_fuzzer_install "${S}"/OWNERS \
+		"${OUT}"/cryptohome_cryptolib_rsa_oaep_decrypt_fuzzer \
+		--comp "${fuzzer_component_id}" \
+		fuzzers/data/*
+
+	platform_fuzzer_install "${S}"/OWNERS \
+		"${OUT}"/cryptohome_cryptolib_blob_to_hex_fuzzer \
+		--comp "${fuzzer_component_id}"
+
+	platform_fuzzer_install "${S}"/OWNERS \
+		"${OUT}"/cryptohome_tpm1_cmk_migration_parser_fuzzer \
+		--comp "${fuzzer_component_id}" \
+		fuzzers/data/*
+
+	platform_fuzzer_install "${S}"/OWNERS \
+		"${OUT}"/cryptohome_user_secret_stash_parser_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+pkg_preinst() {
+	enewuser "bootlockboxd"
+	enewgroup "bootlockboxd"
+	enewuser "cryptohome"
+	enewgroup "cryptohome"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/fake_platform_unittest"
+	platform_test "run" "${OUT}/cryptohome_testrunner"
+	platform_test "run" "${OUT}/mount_encrypted_unittests"
+	if use tpm2; then
+		platform_test "run" "${OUT}/boot_lockbox_unittests"
+	fi
+}
diff --git a/chromeos-base/cryptohome/cryptohome-9999.ebuild b/chromeos-base/cryptohome/cryptohome-9999.ebuild
index ab25f10..687ca9e 100644
--- a/chromeos-base/cryptohome/cryptohome-9999.ebuild
+++ b/chromeos-base/cryptohome/cryptohome-9999.ebuild
@@ -8,12 +8,12 @@
 CROS_WORKON_DESTDIR="${S}/platform2"
 CROS_WORKON_INCREMENTAL_BUILD=1
 # TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk cryptohome libhwsec secure_erase_file .gn"
+CROS_WORKON_SUBTREE="common-mk cryptohome libhwsec libhwsec-foundation secure_erase_file .gn"
 
 PLATFORM_NATIVE_TEST="yes"
 PLATFORM_SUBDIR="cryptohome"
 
-inherit tmpfiles cros-workon platform systemd udev user
+inherit tmpfiles cros-workon cros-unibuild platform systemd udev user
 
 DESCRIPTION="Encrypted home directories for Chromium OS"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome/"
@@ -24,14 +24,15 @@
 KEYWORDS="~*"
 IUSE="-cert_provision +device_mapper -direncription_allow_v2 -direncryption
 	double_extend_pcr_issue +downloads_bind_mount fuzzer
-	generated_cros_config generic_tpm2 kernel-5_10 kernel-5_4 kernel-upstream
+	generic_tpm2 kernel-5_10 kernel-5_4 kernel-upstream
 	lvm_stateful_partition mount_oop pinweaver selinux slow_mount systemd
-	test tpm tpm2 tpm2_simulator unibuild uprev-4-to-5
+	test tpm tpm_dynamic tpm2 tpm2_simulator uprev-4-to-5
 	user_session_isolation +vault_legacy_mount vtpm_proxy"
 
 REQUIRED_USE="
 	device_mapper
-	tpm2? ( !tpm )
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
 "
 
 COMMON_DEPEND="
@@ -58,9 +59,7 @@
 	>=chromeos-base/metrics-0.0.1-r3152:=
 	chromeos-base/secure-erase-file:=
 	chromeos-base/tpm_manager:=
-	dev-libs/dbus-glib:=
 	dev-libs/flatbuffers:=
-	dev-libs/glib:=
 	dev-libs/openssl:=
 	dev-libs/protobuf:=
 	sys-apps/flashmap:=
@@ -69,10 +68,6 @@
 	sys-fs/e2fsprogs:=
 	sys-fs/ecryptfs-utils:=
 	sys-fs/lvm2:=
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
 "
 
 RDEPEND="${COMMON_DEPEND}"
@@ -144,6 +139,8 @@
 		doins init/send-mount-encrypted-metrics.conf
 		if use tpm2_simulator && ! use vtpm_proxy; then
 			newins init/lockbox-cache.conf.tpm2_simulator lockbox-cache.conf
+		elif use tpm_dynamic; then
+			newins init/lockbox-cache.conf.tpm_dynamic lockbox-cache.conf
 		else
 			doins init/lockbox-cache.conf
 		fi
@@ -182,6 +179,8 @@
 	exeinto /usr/share/cros/init
 	if use tpm2_simulator && ! use vtpm_proxy; then
 		newexe init/lockbox-cache.sh.tpm2_simulator lockbox-cache.sh
+	elif use tpm_dynamic; then
+		newexe init/lockbox-cache.sh.tpm_dynamic lockbox-cache.sh
 	else
 		doexe init/lockbox-cache.sh
 	fi
@@ -196,16 +195,24 @@
 
 	dotmpfiles tmpfiles.d/cryptohome.conf
 
+	local fuzzer_component_id="886041"
 	platform_fuzzer_install "${S}"/OWNERS \
 		"${OUT}"/cryptohome_cryptolib_rsa_oaep_decrypt_fuzzer \
+		--comp "${fuzzer_component_id}" \
 		fuzzers/data/*
 
 	platform_fuzzer_install "${S}"/OWNERS \
-		"${OUT}"/cryptohome_cryptolib_blob_to_hex_fuzzer
+		"${OUT}"/cryptohome_cryptolib_blob_to_hex_fuzzer \
+		--comp "${fuzzer_component_id}"
 
 	platform_fuzzer_install "${S}"/OWNERS \
 		"${OUT}"/cryptohome_tpm1_cmk_migration_parser_fuzzer \
+		--comp "${fuzzer_component_id}" \
 		fuzzers/data/*
+
+	platform_fuzzer_install "${S}"/OWNERS \
+		"${OUT}"/cryptohome_user_secret_stash_parser_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 pkg_preinst() {
@@ -216,6 +223,7 @@
 }
 
 platform_pkg_test() {
+	platform_test "run" "${OUT}/fake_platform_unittest"
 	platform_test "run" "${OUT}/cryptohome_testrunner"
 	platform_test "run" "${OUT}/mount_encrypted_unittests"
 	if use tpm2; then
diff --git a/chromeos-base/cups-fuzz/cups-fuzz-2.3.3-r18.ebuild b/chromeos-base/cups-fuzz/cups-fuzz-2.3.3-r18.ebuild
deleted file mode 100644
index 8092f40..0000000
--- a/chromeos-base/cups-fuzz/cups-fuzz-2.3.3-r18.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6da01a55ea3c20d17183e8861af58dc1e4f13725"
-CROS_WORKON_TREE="281e66bb2bfff2994b709d4209668c558742dee8"
-CROS_WORKON_LOCALNAME="third_party/cups"
-CROS_WORKON_PROJECT="chromiumos/third_party/cups"
-CROS_WORKON_EGIT_BRANCH="v2.3"
-CROS_WORKON_SUBTREE="fuzzers"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_OUTOFTREE_BUILD=1
-
-inherit cros-fuzzer cros-sanitizers cros-workon flag-o-matic libchrome toolchain-funcs
-
-DESCRIPTION="Fuzzer for PPD and IPP functions in CUPS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/cups/+/HEAD/fuzzers/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="asan fuzzer"
-
-COMMON_DEPEND="net-print/cups:=[fuzzer]"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}"
-
-# We really don't want to be building this otherwise.
-REQUIRED_USE="fuzzer"
-
-src_unpack() {
-	cros-workon_src_unpack
-}
-
-src_configure() {
-	sanitizers-setup-env || die
-	fuzzer-setup-binary || die
-	append-ldflags "$(${CHOST}-cups-config --libs)"
-	append-ldflags "$($(tc-getPKG_CONFIG) --libs libchrome)"
-	append-cppflags "$($(tc-getPKG_CONFIG) --cflags libchrome)"
-}
-
-src_compile() {
-	local build_dir="$(cros-workon_get_build_dir)"
-	VPATH="${S}"/fuzzers emake -C "${build_dir}" cups_ppdopen_fuzzer
-	VPATH="${S}"/fuzzers emake -C "${build_dir}" cups_ippreadio_fuzzer
-	VPATH="${S}"/fuzzers emake -C "${build_dir}" cups_ipp_t_fuzzer
-}
-
-src_install() {
-	local build_dir="$(cros-workon_get_build_dir)"
-	fuzzer_install "${S}"/fuzzers/OWNERS "${build_dir}"/cups_ppdopen_fuzzer
-	fuzzer_install "${S}"/fuzzers/OWNERS "${build_dir}"/cups_ippreadio_fuzzer
-	fuzzer_install "${S}"/fuzzers/OWNERS "${build_dir}"/cups_ipp_t_fuzzer
-}
diff --git a/chromeos-base/cups-fuzz/cups-fuzz-2.3.3-r21.ebuild b/chromeos-base/cups-fuzz/cups-fuzz-2.3.3-r21.ebuild
new file mode 100644
index 0000000..91dbfe8
--- /dev/null
+++ b/chromeos-base/cups-fuzz/cups-fuzz-2.3.3-r21.ebuild
@@ -0,0 +1,61 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="4f9dbfe8f8531d8071e25c4b48b915e30c7d8602"
+CROS_WORKON_TREE="d30efb8220da900068710140a77c1dee40133b7d"
+CROS_WORKON_LOCALNAME="third_party/cups"
+CROS_WORKON_PROJECT="chromiumos/third_party/cups"
+CROS_WORKON_EGIT_BRANCH="chromeos"
+CROS_WORKON_SUBTREE="fuzzers"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_OUTOFTREE_BUILD=1
+
+inherit cros-fuzzer cros-sanitizers cros-workon flag-o-matic libchrome toolchain-funcs
+
+DESCRIPTION="Fuzzer for PPD and IPP functions in CUPS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/cups/+/HEAD/fuzzers/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="asan fuzzer"
+
+COMMON_DEPEND="net-print/cups:=[fuzzer]"
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}"
+
+# We really don't want to be building this otherwise.
+REQUIRED_USE="fuzzer"
+
+src_unpack() {
+	cros-workon_src_unpack
+}
+
+src_configure() {
+	sanitizers-setup-env || die
+	fuzzer-setup-binary || die
+	append-ldflags "$(${CHOST}-cups-config --libs)"
+	append-ldflags "$($(tc-getPKG_CONFIG) --libs libchrome)"
+	append-cppflags "$($(tc-getPKG_CONFIG) --cflags libchrome)"
+}
+
+src_compile() {
+	local build_dir="$(cros-workon_get_build_dir)"
+	VPATH="${S}"/fuzzers emake -C "${build_dir}" cups_ppdopen_fuzzer
+	VPATH="${S}"/fuzzers emake -C "${build_dir}" cups_ippreadio_fuzzer
+	VPATH="${S}"/fuzzers emake -C "${build_dir}" cups_ipp_t_fuzzer
+}
+
+src_install() {
+	local build_dir="$(cros-workon_get_build_dir)"
+	local fuzzer_component_id="167231"
+	fuzzer_install "${S}"/fuzzers/OWNERS "${build_dir}"/cups_ppdopen_fuzzer \
+		--comp "${fuzzer_component_id}"
+	fuzzer_install "${S}"/fuzzers/OWNERS "${build_dir}"/cups_ippreadio_fuzzer \
+		--comp "${fuzzer_component_id}"
+	fuzzer_install "${S}"/fuzzers/OWNERS "${build_dir}"/cups_ipp_t_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
diff --git a/chromeos-base/cups-fuzz/cups-fuzz-9999.ebuild b/chromeos-base/cups-fuzz/cups-fuzz-9999.ebuild
index 76062ef..ea5cb87 100644
--- a/chromeos-base/cups-fuzz/cups-fuzz-9999.ebuild
+++ b/chromeos-base/cups-fuzz/cups-fuzz-9999.ebuild
@@ -5,7 +5,7 @@
 
 CROS_WORKON_LOCALNAME="third_party/cups"
 CROS_WORKON_PROJECT="chromiumos/third_party/cups"
-CROS_WORKON_EGIT_BRANCH="v2.3"
+CROS_WORKON_EGIT_BRANCH="chromeos"
 CROS_WORKON_SUBTREE="fuzzers"
 CROS_WORKON_INCREMENTAL_BUILD=1
 CROS_WORKON_OUTOFTREE_BUILD=1
@@ -49,7 +49,11 @@
 
 src_install() {
 	local build_dir="$(cros-workon_get_build_dir)"
-	fuzzer_install "${S}"/fuzzers/OWNERS "${build_dir}"/cups_ppdopen_fuzzer
-	fuzzer_install "${S}"/fuzzers/OWNERS "${build_dir}"/cups_ippreadio_fuzzer
-	fuzzer_install "${S}"/fuzzers/OWNERS "${build_dir}"/cups_ipp_t_fuzzer
+	local fuzzer_component_id="167231"
+	fuzzer_install "${S}"/fuzzers/OWNERS "${build_dir}"/cups_ppdopen_fuzzer \
+		--comp "${fuzzer_component_id}"
+	fuzzer_install "${S}"/fuzzers/OWNERS "${build_dir}"/cups_ippreadio_fuzzer \
+		--comp "${fuzzer_component_id}"
+	fuzzer_install "${S}"/fuzzers/OWNERS "${build_dir}"/cups_ipp_t_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
diff --git a/chromeos-base/debugd-client/debugd-client-0.0.1-r2045.ebuild b/chromeos-base/debugd-client/debugd-client-0.0.1-r2045.ebuild
deleted file mode 100644
index bb9eea0..0000000
--- a/chromeos-base/debugd-client/debugd-client-0.0.1-r2045.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="fdf9a7706a3e7c362702ffce73bc7e8a7d537c78"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "4ad17d812996a69d326586115483cd71328fae07" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk debugd .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="debugd/client"
-
-inherit cros-workon platform
-
-DESCRIPTION="Chrome OS debugd client library"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/debugd/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros_host"
-
-# D-Bus proxies generated by this client library depend on the code generator
-# itself (chromeos-dbus-bindings) and produce header files that rely on
-# libbrillo library, hence both dependencies. We require the particular
-# revision because libbrillo-0.0.1-r1 changed location of header files from
-# chromeos/ to brillo/ and chromeos-dbus-bindings-0.0.1-r1058 generates the
-# code using the new location.
-BDEPEND="
-	chromeos-base/chromeos-dbus-bindings
-"
-
-src_install() {
-  # Install DBus client library.
-  platform_install_dbus_client_lib "debugd"
-}
diff --git a/chromeos-base/debugd-client/debugd-client-0.0.1-r2097.ebuild b/chromeos-base/debugd-client/debugd-client-0.0.1-r2097.ebuild
new file mode 100644
index 0000000..8be8fe9
--- /dev/null
+++ b/chromeos-base/debugd-client/debugd-client-0.0.1-r2097.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "91266a50bba6dd3b15e12a3125cd46be8bdc2f92" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk debugd .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="debugd/client"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS debugd client library"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/debugd/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cros_host"
+
+# D-Bus proxies generated by this client library depend on the code generator
+# itself (chromeos-dbus-bindings) and produce header files that rely on
+# libbrillo library, hence both dependencies. We require the particular
+# revision because libbrillo-0.0.1-r1 changed location of header files from
+# chromeos/ to brillo/ and chromeos-dbus-bindings-0.0.1-r1058 generates the
+# code using the new location.
+BDEPEND="
+	chromeos-base/chromeos-dbus-bindings
+"
+
+src_install() {
+  # Install DBus client library.
+  platform_install_dbus_client_lib "debugd"
+}
diff --git a/chromeos-base/debugd/debugd-0.0.1-r3060.ebuild b/chromeos-base/debugd/debugd-0.0.1-r3060.ebuild
deleted file mode 100644
index 3fc6031..0000000
--- a/chromeos-base/debugd/debugd-0.0.1-r3060.ebuild
+++ /dev/null
@@ -1,128 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="fdf9a7706a3e7c362702ffce73bc7e8a7d537c78"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "4ad17d812996a69d326586115483cd71328fae07" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk debugd .gn"
-
-PLATFORM_SUBDIR="debugd"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Chrome OS debugging service"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/debugd/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="arcvm cellular iwlwifi_dump nvme sata tpm"
-
-COMMON_DEPEND="
-	chromeos-base/chromeos-login:=
-	chromeos-base/minijail:=
-	chromeos-base/shill-client:=
-	chromeos-base/vboot_reference:=
-	dev-libs/protobuf:=
-	dev-libs/re2:=
-	net-libs/libpcap:=
-	net-wireless/iw:=
-	sys-apps/rootdev:=
-	sys-libs/libcap:=
-	sata? ( sys-apps/smartmontools:= )
-"
-RDEPEND="${COMMON_DEPEND}
-	iwlwifi_dump? ( chromeos-base/intel-wifi-fw-dump )
-	nvme? ( sys-apps/nvme-cli )
-	chromeos-base/chromeos-ssh-testkeys
-	chromeos-base/chromeos-sshd-init
-	!chromeos-base/workarounds
-	sys-apps/iproute2
-	sys-apps/memtester
-"
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/debugd-client:=
-	chromeos-base/system_api:=
-	sys-apps/dbus:="
-
-pkg_setup() {
-	# Has to be done in pkg_setup() instead of pkg_preinst() since
-	# src_install() needs debugd.
-	enewuser "debugd"
-	enewgroup "debugd"
-
-	cros-workon_pkg_setup
-}
-
-pkg_preinst() {
-	enewuser "debugd-logs"
-	enewgroup "debugd-logs"
-
-	enewgroup "daemon-store"
-	enewgroup "logs-access"
-}
-
-src_install() {
-	dobin "${OUT}"/generate_logs
-
-	into /
-	dosbin "${OUT}"/debugd
-
-	exeinto /usr/libexec/debugd/helpers
-	doexe "${OUT}"/capture_packets
-	doexe "${OUT}"/cups_uri_helper
-	doexe "${OUT}"/dev_features_chrome_remote_debugging
-	doexe "${OUT}"/dev_features_password
-	doexe "${OUT}"/dev_features_rootfs_verification
-	doexe "${OUT}"/dev_features_ssh
-	doexe "${OUT}"/dev_features_usb_boot
-	doexe "${OUT}"/icmp
-	doexe "${OUT}"/netif
-	doexe "${OUT}"/network_status
-	doexe "${OUT}"/usb4_devinfo_helper
-	doexe "${OUT}"/bt_usb_disconnect_helper
-
-	doexe src/helpers/{capture_utility,minijail-setuid-hack,systrace}.sh
-
-	local debugd_seccomp_dir="src/helpers/seccomp"
-
-	# Install scheduler configuration helper and seccomp policy.
-	if use amd64 ; then
-		exeinto /usr/libexec/debugd/helpers
-		doexe "${OUT}"/scheduler_configuration_helper
-	fi
-
-	# Install seccomp policies.
-	insinto /usr/share/policy
-	local policy
-	for policy in "${debugd_seccomp_dir}"/*-${ARCH}.policy; do
-		local policy_basename="${policy##*/}"
-		local policy_name="${policy_basename/-${ARCH}}"
-		newins "${policy}" "${policy_name}"
-	done
-
-
-	# Install DBus configuration.
-	insinto /etc/dbus-1/system.d
-	doins share/org.chromium.debugd.conf
-
-	insinto /etc/init
-	doins share/{debugd,trace_marker-test}.conf share/kernel-features.json
-
-	insinto /etc/perf_commands
-	doins -r share/perf_commands/*
-
-	local daemon_store="/etc/daemon-store/debugd"
-	dodir "${daemon_store}"
-	fperms 0660 "${daemon_store}"
-	fowners debugd:debugd "${daemon_store}"
-}
-
-platform_pkg_test() {
-	pushd "${S}/src" >/dev/null
-	platform_test "run" "${OUT}/debugd_testrunner"
-	./helpers/capture_utility_test.sh || die
-	popd >/dev/null
-}
diff --git a/chromeos-base/debugd/debugd-0.0.1-r3113.ebuild b/chromeos-base/debugd/debugd-0.0.1-r3113.ebuild
new file mode 100644
index 0000000..ab965a6
--- /dev/null
+++ b/chromeos-base/debugd/debugd-0.0.1-r3113.ebuild
@@ -0,0 +1,129 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "91266a50bba6dd3b15e12a3125cd46be8bdc2f92" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk debugd .gn"
+
+PLATFORM_SUBDIR="debugd"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Chrome OS debugging service"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/debugd/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="arcvm cellular iwlwifi_dump nvme sata tpm"
+
+COMMON_DEPEND="
+	chromeos-base/chromeos-login:=
+	chromeos-base/cryptohome-client:=
+	chromeos-base/minijail:=
+	chromeos-base/shill-client:=
+	chromeos-base/vboot_reference:=
+	dev-libs/protobuf:=
+	dev-libs/re2:=
+	net-libs/libpcap:=
+	net-wireless/iw:=
+	sys-apps/rootdev:=
+	sys-libs/libcap:=
+	sata? ( sys-apps/smartmontools:= )
+"
+RDEPEND="${COMMON_DEPEND}
+	iwlwifi_dump? ( chromeos-base/intel-wifi-fw-dump )
+	nvme? ( sys-apps/nvme-cli )
+	chromeos-base/chromeos-ssh-testkeys
+	chromeos-base/chromeos-sshd-init
+	!chromeos-base/workarounds
+	sys-apps/iproute2
+	sys-apps/memtester
+"
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/debugd-client:=
+	chromeos-base/system_api:=
+	sys-apps/dbus:="
+
+pkg_setup() {
+	# Has to be done in pkg_setup() instead of pkg_preinst() since
+	# src_install() needs debugd.
+	enewuser "debugd"
+	enewgroup "debugd"
+
+	cros-workon_pkg_setup
+}
+
+pkg_preinst() {
+	enewuser "debugd-logs"
+	enewgroup "debugd-logs"
+
+	enewgroup "daemon-store"
+	enewgroup "logs-access"
+}
+
+src_install() {
+	dobin "${OUT}"/generate_logs
+
+	into /
+	dosbin "${OUT}"/debugd
+
+	exeinto /usr/libexec/debugd/helpers
+	doexe "${OUT}"/capture_packets
+	doexe "${OUT}"/cups_uri_helper
+	doexe "${OUT}"/dev_features_chrome_remote_debugging
+	doexe "${OUT}"/dev_features_password
+	doexe "${OUT}"/dev_features_rootfs_verification
+	doexe "${OUT}"/dev_features_ssh
+	doexe "${OUT}"/dev_features_usb_boot
+	doexe "${OUT}"/icmp
+	doexe "${OUT}"/netif
+	doexe "${OUT}"/network_status
+	doexe "${OUT}"/usb4_devinfo_helper
+	doexe "${OUT}"/bt_usb_disconnect_helper
+
+	doexe src/helpers/{capture_utility,minijail-setuid-hack,systrace}.sh
+
+	local debugd_seccomp_dir="src/helpers/seccomp"
+
+	# Install scheduler configuration helper and seccomp policy.
+	if use amd64 ; then
+		exeinto /usr/libexec/debugd/helpers
+		doexe "${OUT}"/scheduler_configuration_helper
+	fi
+
+	# Install seccomp policies.
+	insinto /usr/share/policy
+	local policy
+	for policy in "${debugd_seccomp_dir}"/*-${ARCH}.policy; do
+		local policy_basename="${policy##*/}"
+		local policy_name="${policy_basename/-${ARCH}}"
+		newins "${policy}" "${policy_name}"
+	done
+
+
+	# Install DBus configuration.
+	insinto /etc/dbus-1/system.d
+	doins share/org.chromium.debugd.conf
+
+	insinto /etc/init
+	doins share/{debugd,trace_marker-test}.conf share/kernel-features.json
+
+	insinto /etc/perf_commands
+	doins -r share/perf_commands/*
+
+	local daemon_store="/etc/daemon-store/debugd"
+	dodir "${daemon_store}"
+	fperms 0660 "${daemon_store}"
+	fowners debugd:debugd "${daemon_store}"
+}
+
+platform_pkg_test() {
+	pushd "${S}/src" >/dev/null
+	platform_test "run" "${OUT}/debugd_testrunner"
+	./helpers/capture_utility_test.sh || die
+	popd >/dev/null
+}
diff --git a/chromeos-base/debugd/debugd-9999.ebuild b/chromeos-base/debugd/debugd-9999.ebuild
index d7c0385..3362ffe 100644
--- a/chromeos-base/debugd/debugd-9999.ebuild
+++ b/chromeos-base/debugd/debugd-9999.ebuild
@@ -20,6 +20,7 @@
 
 COMMON_DEPEND="
 	chromeos-base/chromeos-login:=
+	chromeos-base/cryptohome-client:=
 	chromeos-base/minijail:=
 	chromeos-base/shill-client:=
 	chromeos-base/vboot_reference:=
diff --git a/chromeos-base/dev-install/dev-install-0.0.1-r1226.ebuild b/chromeos-base/dev-install/dev-install-0.0.1-r1226.ebuild
deleted file mode 100644
index 27c65c8..0000000
--- a/chromeos-base/dev-install/dev-install-0.0.1-r1226.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "d23a0367563b6fee09db7bcd5f0b7bcdd246b4b6" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk dev-install .gn"
-
-PLATFORM_SUBDIR="dev-install"
-
-inherit cros-workon platform
-
-DESCRIPTION="Chromium OS Developer Packages installer"
-HOMEPAGE="http://dev.chromium.org/chromium-os/how-tos-and-troubleshooting/install-software-on-base-images"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="chromeos-base/vboot_reference:="
-RDEPEND="${DEPEND}
-	app-arch/bzip2
-	app-arch/tar
-	net-misc/curl"
-
-fixup_make_defaults() {
-	local file=$1
-
-	sed -i \
-		-e "s/@IUSE_IMPLICIT@/${IUSE_IMPLICIT}/g" \
-		-e "s/@ARCH@/${ARCH}/g" \
-		-e "s/@ELIBC@/${ELIBC}/g" \
-		-e "s/@USERLAND@/${USERLAND}/g" \
-		-e "s/@KERNEL@/${KERNEL}/g" \
-		-e "s/@USE_EXPAND_IMPLICIT@/${USE_EXPAND_IMPLICIT}/g" \
-		${file} || die
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/dev_install_test"
-}
-
-src_install() {
-	dobin "${OUT}/dev_install"
-
-	cd "${S}/share" || die
-	insinto /usr/share/${PN}/portage/make.profile
-	doins make.defaults
-
-	fixup_make_defaults "${ED}"/usr/share/${PN}/portage/make.profile/make.defaults
-
-	insinto /etc/bash/bashrc.d/
-	newins bashrc ${PN}.sh
-
-	insinto /etc/env.d
-	doins 99devinstall
-	sed -i "s:@LIBDIR@:$(get_libdir):g" "${ED}"/etc/env.d/99devinstall
-}
-
-pkg_preinst() {
-	if [[ $(cros_target) == "target_image" ]]; then
-		# We don't want to install these files into the normal /build/
-		# dir because we need different settings at build time vs what
-		# we want at runtime in release images.  Thus, install the files
-		# into /usr/share but symlink them into /etc for the images.
-		dosym "/usr/share/${PN}/portage" /etc/portage
-
-		# The parent file content needs to be kept in sync with the
-		# dev_install code.
-		dodir /usr/local/etc/portage/make.profile
-		echo /etc/portage/make.profile \
-			>"${D}"/usr/local/etc/portage/make.profile/parent || die
-	fi
-}
diff --git a/chromeos-base/dev-install/dev-install-0.0.1-r1252.ebuild b/chromeos-base/dev-install/dev-install-0.0.1-r1252.ebuild
new file mode 100644
index 0000000..c54f376
--- /dev/null
+++ b/chromeos-base/dev-install/dev-install-0.0.1-r1252.ebuild
@@ -0,0 +1,80 @@
+# Copyright 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "143c28c51372ef4bc34d96a84426b858cad15b31" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk dev-install .gn"
+
+PLATFORM_SUBDIR="dev-install"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chromium OS Developer Packages installer"
+HOMEPAGE="http://dev.chromium.org/chromium-os/how-tos-and-troubleshooting/install-software-on-base-images"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND="chromeos-base/vboot_reference:="
+RDEPEND="${DEPEND}
+	app-arch/bzip2
+	app-arch/tar
+	net-misc/curl"
+
+fixup_make_defaults() {
+	local file=$1
+
+	sed -i \
+		-e "s/@IUSE_IMPLICIT@/${IUSE_IMPLICIT}/g" \
+		-e "s/@ARCH@/${ARCH}/g" \
+		-e "s/@ELIBC@/${ELIBC}/g" \
+		-e "s/@USERLAND@/${USERLAND}/g" \
+		-e "s/@KERNEL@/${KERNEL}/g" \
+		-e "s/@USE_EXPAND_IMPLICIT@/${USE_EXPAND_IMPLICIT}/g" \
+		${file} || die
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/dev_install_test"
+}
+
+src_install() {
+	dobin "${OUT}/dev_install"
+
+	cd "${S}/share" || die
+	insinto /usr/share/${PN}/portage/make.profile
+	doins make.defaults
+
+	fixup_make_defaults "${ED}"/usr/share/${PN}/portage/make.profile/make.defaults
+
+	insinto /etc/bash/bashrc.d/
+	newins bashrc ${PN}.sh
+
+	insinto /etc/env.d
+	doins 99devinstall
+	sed -i "s:@LIBDIR@:$(get_libdir):g" "${ED}"/etc/env.d/99devinstall
+}
+
+pkg_preinst() {
+	if [[ $(cros_target) == "target_image" ]]; then
+		# We don't want to install these files into the normal /build/
+		# dir because we need different settings at build time vs what
+		# we want at runtime in release images.  Thus, install the files
+		# into /usr/share but symlink them into /etc for the images.
+		dosym "/usr/share/${PN}/portage" /etc/portage
+
+		# The parent file content needs to be kept in sync with the
+		# dev_install code.
+		dodir /usr/local/etc/portage/make.profile
+		echo /etc/portage/make.profile \
+			>"${D}"/usr/local/etc/portage/make.profile/parent || die
+	fi
+}
diff --git a/chromeos-base/devserver/devserver-0.0.3-r1126.ebuild b/chromeos-base/devserver/devserver-0.0.3-r1126.ebuild
new file mode 100644
index 0000000..c0fcbac
--- /dev/null
+++ b/chromeos-base/devserver/devserver-0.0.3-r1126.ebuild
@@ -0,0 +1,37 @@
+# Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="c20010434ed180b67b404420979023fe3eb0047b"
+CROS_WORKON_TREE="933f8b3c8f81581b6e7c3375e0577b15913133d4"
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME="platform/dev"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+
+inherit cros-workon
+
+DESCRIPTION="Server to cache Chromium OS build artifacts from Google Storage."
+HOMEPAGE="http://dev.chromium.org/chromium-os/how-tos-and-troubleshooting/using-the-dev-server"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="
+	dev-lang/python
+	dev-python/protobuf-python
+	dev-python/cherrypy
+	net-misc/gsutil
+	!<chromeos-base/cros-devutils-1
+"
+DEPEND="
+	dev-python/psutil
+"
+
+src_install() {
+	emake install DESTDIR="${D}"
+}
+
+src_test() {
+	# Run the unit tests.
+	./run_unittests || die
+}
diff --git a/chromeos-base/devserver/devserver-0.0.3-r977.ebuild b/chromeos-base/devserver/devserver-0.0.3-r977.ebuild
deleted file mode 100644
index 6ec4f02..0000000
--- a/chromeos-base/devserver/devserver-0.0.3-r977.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="3295e677c8f2e9236d520373c77a9115a0a36fa9"
-CROS_WORKON_TREE="9f106081447f3fb142fa0718f95458437296f96d"
-CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
-CROS_WORKON_LOCALNAME="platform/dev"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-
-inherit cros-workon
-
-DESCRIPTION="Server to cache Chromium OS build artifacts from Google Storage."
-HOMEPAGE="http://dev.chromium.org/chromium-os/how-tos-and-troubleshooting/using-the-dev-server"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="
-	dev-lang/python
-	dev-python/protobuf-python
-	dev-python/cherrypy
-	net-misc/gsutil
-	!<chromeos-base/cros-devutils-1
-"
-DEPEND="
-	dev-python/psutil
-"
-
-src_install() {
-	emake install DESTDIR="${D}"
-}
-
-src_test() {
-	# Run the unit tests.
-	./run_unittests || die
-}
diff --git a/chromeos-base/diagnostics-dpsl-test/diagnostics-dpsl-test-0.0.1-r657.ebuild b/chromeos-base/diagnostics-dpsl-test/diagnostics-dpsl-test-0.0.1-r657.ebuild
deleted file mode 100644
index bbd2a2c..0000000
--- a/chromeos-base/diagnostics-dpsl-test/diagnostics-dpsl-test-0.0.1-r657.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "afcd353b9d8c8408cf7fb45f9b3d934434a16eb5" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="common-mk diagnostics .gn"
-
-PLATFORM_SUBDIR="diagnostics/dpsl"
-
-inherit cros-workon platform
-
-DESCRIPTION="Diagnostics DPSL test designed to be run inside VM"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics/dpsl/"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="
-	chromeos-base/libbrillo:=
-"
-RDEPEND="
-	net-libs/grpc:=
-	dev-libs/protobuf:=
-"
-
-src_install() {
-	dobin "${OUT}/diagnostics_dpsl_test_listener"
-	dobin "${OUT}/diagnostics_dpsl_test_requester"
-}
-
-platform_pkg_test() {
-	local tests=(
-		libdpsl_test
-	)
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/diagnostics-dpsl-test/diagnostics-dpsl-test-0.0.1-r744.ebuild b/chromeos-base/diagnostics-dpsl-test/diagnostics-dpsl-test-0.0.1-r744.ebuild
new file mode 100644
index 0000000..ca19090
--- /dev/null
+++ b/chromeos-base/diagnostics-dpsl-test/diagnostics-dpsl-test-0.0.1-r744.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+CROS_WORKON_COMMIT="848f8415ddf1841a24faf4deaf6c3d63821b036b"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "5053293c8acdb133cff9f0893424aca79679a148" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="common-mk diagnostics .gn"
+
+PLATFORM_SUBDIR="diagnostics/dpsl"
+
+inherit cros-workon platform
+
+DESCRIPTION="Diagnostics DPSL test designed to be run inside VM"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics/dpsl/"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND="
+	chromeos-base/libbrillo:=
+"
+RDEPEND="
+	net-libs/grpc:=
+	dev-libs/protobuf:=
+"
+
+src_install() {
+	dobin "${OUT}/diagnostics_dpsl_test_listener"
+	dobin "${OUT}/diagnostics_dpsl_test_requester"
+}
+
+platform_pkg_test() {
+	local tests=(
+		libdpsl_test
+	)
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/diagnostics/diagnostics-0.0.1-r1106.ebuild b/chromeos-base/diagnostics/diagnostics-0.0.1-r1106.ebuild
new file mode 100644
index 0000000..8eb3877
--- /dev/null
+++ b/chromeos-base/diagnostics/diagnostics-0.0.1-r1106.ebuild
@@ -0,0 +1,152 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="848f8415ddf1841a24faf4deaf6c3d63821b036b"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "5053293c8acdb133cff9f0893424aca79679a148" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_PROJECT="chromiumos/platform2"
+# TODO(crbug.com/1044813): Remove chromeos-config once its public headers are fixed.
+CROS_WORKON_SUBTREE="common-mk chromeos-config diagnostics .gn"
+
+PLATFORM_SUBDIR="diagnostics"
+
+inherit cros-workon cros-unibuild platform udev user
+
+DESCRIPTION="Device telemetry and diagnostics for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="fuzzer wilco mesa_reven"
+
+COMMON_DEPEND="
+	chromeos-base/chromeos-config-tools:=
+	chromeos-base/minijail:=
+	dev-libs/protobuf:=
+	dev-libs/re2:=
+	net-libs/grpc:=
+	virtual/libudev:=
+	sys-apps/pciutils:=
+	virtual/opengles:=
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/attestation-client:=
+	chromeos-base/debugd-client:=
+	chromeos-base/tpm_manager-client:=
+	chromeos-base/system_api:=[fuzzer?]
+	media-sound/adhd:=
+	x11-drivers/opengles-headers:=
+"
+
+# TODO(crbug/1085169): Replace sys-block/fio dependency with an alternative as
+# it is very large. It is currently only a dependency of wilco as it is
+# currently the only client.
+RDEPEND="
+	${COMMON_DEPEND}
+	dev-util/stressapptest
+	wilco? (
+		sys-block/fio
+		chromeos-base/chromeos-dtc-vm
+		chromeos-base/vpd
+	)
+"
+
+pkg_preinst() {
+	enewgroup cros_ec-access
+	enewuser cros_healthd
+	enewgroup cros_healthd
+	enewuser healthd_ec
+	enewgroup healthd_ec
+
+	if use wilco; then
+		enewuser wilco_dtc
+		enewgroup wilco_dtc
+	fi
+}
+
+src_install() {
+	dobin "${OUT}/cros_healthd"
+	dobin "${OUT}/cros-health-tool"
+
+	if use wilco; then
+		dobin "${OUT}/wilco_dtc_supportd"
+
+		# Install seccomp policy files.
+		insinto /usr/share/policy
+		newins "init/wilco_dtc_supportd-seccomp-${ARCH}.policy" \
+			wilco_dtc_supportd-seccomp.policy
+		newins "init/wilco-dtc-e2fsck-seccomp-${ARCH}.policy" \
+			wilco-dtc-e2fsck-seccomp.policy
+		newins "init/wilco-dtc-resize2fs-seccomp-${ARCH}.policy" \
+			wilco-dtc-resize2fs-seccomp.policy
+
+		# Install D-Bus configuration file.
+		insinto /etc/dbus-1/system.d
+		doins dbus/org.chromium.WilcoDtcSupportd.conf
+		doins dbus/WilcoDtcUpstart.conf
+
+		# Install the init scripts.
+		insinto /etc/init
+		doins init/wilco_dtc_dispatcher.conf
+		doins init/wilco_dtc_supportd.conf
+		doins init/wilco_dtc.conf
+
+		# Install udev rules.
+		udev_dorules udev/99-ec_driver_files.rules
+	fi
+
+	# Install seccomp policy files.
+	insinto /usr/share/policy
+	newins "init/cros_healthd-seccomp-${ARCH}.policy" \
+		cros_healthd-seccomp.policy
+	newins "cros_healthd/seccomp/ectool_i2cread-seccomp-${ARCH}.policy" \
+		ectool_i2cread-seccomp.policy
+	newins "cros_healthd/seccomp/ectool_pwmgetfanrpm-seccomp-${ARCH}.policy" \
+		ectool_pwmgetfanrpm-seccomp.policy
+	newins "seccomp/memtester-seccomp-${ARCH}.policy" memtester-seccomp.policy
+
+	# Install D-Bus configuration file.
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.CrosHealthd.conf
+
+	# Install the init scripts.
+	insinto /etc/init
+	doins init/cros_healthd.conf
+
+	# Install the diagnostic routine executables.
+	exeinto /usr/libexec/diagnostics
+	doexe "${OUT}/floating-point-accuracy"
+	doexe "${OUT}/prime-search"
+	doexe "${OUT}/smartctl-check"
+	doexe "${OUT}/urandom"
+
+	# Install udev rules.
+	udev_dorules udev/99-chown_dmi_dir.rules
+
+	# Install fuzzers.
+	local fuzzer_component_id="982097"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/fetch_system_info_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	local tests=(
+		cros_healthd_test
+	)
+	if use wilco; then
+		tests+=(
+			wilco_dtc_supportd_test
+		)
+	fi
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/diagnostics/diagnostics-0.0.1-r991.ebuild b/chromeos-base/diagnostics/diagnostics-0.0.1-r991.ebuild
deleted file mode 100644
index 217535f..0000000
--- a/chromeos-base/diagnostics/diagnostics-0.0.1-r991.ebuild
+++ /dev/null
@@ -1,158 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "aa0612733aca2d5ffa65470f07408228b473ebdb" "afcd353b9d8c8408cf7fb45f9b3d934434a16eb5" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_PROJECT="chromiumos/platform2"
-# TODO(crbug.com/1044813): Remove chromeos-config once its public headers are fixed.
-CROS_WORKON_SUBTREE="common-mk chromeos-config diagnostics .gn"
-
-PLATFORM_SUBDIR="diagnostics"
-
-inherit cros-workon platform udev user
-
-DESCRIPTION="Device telemetry and diagnostics for Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="fuzzer wilco generated_cros_config unibuild"
-
-COMMON_DEPEND="
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config:= )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
-	chromeos-base/chromeos-config-tools:=
-	dev-libs/protobuf:=
-	dev-libs/re2:=
-	net-libs/grpc:=
-	virtual/libudev:=
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/debugd-client:=
-	chromeos-base/system_api:=[fuzzer?]
-	media-sound/adhd:=
-"
-
-# TODO(crbug/1085169): Replace sys-block/fio dependency with an alternative as
-# it is very large. It is currently only a dependency of wilco as it is
-# currently the only client.
-RDEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/minijail
-	dev-util/stressapptest
-	wilco? (
-		sys-block/fio
-		chromeos-base/chromeos-dtc-vm
-		chromeos-base/vpd
-	)
-"
-
-pkg_preinst() {
-	enewgroup cros_ec-access
-	enewuser cros_healthd
-	enewgroup cros_healthd
-	enewuser healthd_ec
-	enewgroup healthd_ec
-
-	if use wilco; then
-		enewuser wilco_dtc
-		enewgroup wilco_dtc
-	fi
-}
-
-src_install() {
-	dobin "${OUT}/cros_healthd"
-	dobin "${OUT}/cros-health-tool"
-
-	if use wilco; then
-		dobin "${OUT}/wilco_dtc_supportd"
-
-		# Install seccomp policy files.
-		insinto /usr/share/policy
-		newins "init/wilco_dtc_supportd-seccomp-${ARCH}.policy" \
-			wilco_dtc_supportd-seccomp.policy
-		newins "init/wilco-dtc-e2fsck-seccomp-${ARCH}.policy" \
-			wilco-dtc-e2fsck-seccomp.policy
-		newins "init/wilco-dtc-resize2fs-seccomp-${ARCH}.policy" \
-			wilco-dtc-resize2fs-seccomp.policy
-
-		# Install D-Bus configuration file.
-		insinto /etc/dbus-1/system.d
-		doins dbus/org.chromium.WilcoDtcSupportd.conf
-		doins dbus/WilcoDtcUpstart.conf
-
-		# Install the init scripts.
-		insinto /etc/init
-		doins init/wilco_dtc_dispatcher.conf
-		doins init/wilco_dtc_supportd.conf
-		doins init/wilco_dtc.conf
-
-		# Install udev rules.
-		udev_dorules udev/99-ec_driver_files.rules
-	fi
-
-	# Install seccomp policy files.
-	insinto /usr/share/policy
-	newins "init/cros_healthd-seccomp-${ARCH}.policy" \
-		cros_healthd-seccomp.policy
-	newins "cros_healthd/seccomp/ectool_i2cread-seccomp-${ARCH}.policy" \
-		ectool_i2cread-seccomp.policy
-	newins "cros_healthd/seccomp/ectool_pwmgetfanrpm-seccomp-${ARCH}.policy" \
-		ectool_pwmgetfanrpm-seccomp.policy
-	newins "seccomp/memtester-seccomp-${ARCH}.policy" memtester-seccomp.policy
-
-	# Install D-Bus configuration file.
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.CrosHealthd.conf
-
-	# Install the init scripts.
-	insinto /etc/init
-	doins init/cros_healthd.conf
-
-	# Install the diagnostic routine executables.
-	exeinto /usr/libexec/diagnostics
-	doexe "${OUT}/floating-point-accuracy"
-	doexe "${OUT}/prime-search"
-	doexe "${OUT}/smartctl-check"
-	doexe "${OUT}/urandom"
-
-	# Install udev rules.
-	udev_dorules udev/99-chown_dmi_dir.rules
-
-	# Install fuzzers.
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/fetch_system_info_fuzzer
-}
-
-platform_pkg_test() {
-	local tests=(
-		cros_healthd_mojo_adapter_test
-		cros_healthd_test
-		libcommon_test
-		libcros_healthd_events_test
-		libcros_healthd_fetchers_test
-		libcros_healthd_utils_test
-		network_test
-		network_diagnostics_test
-		routine_test
-		system_config_test
-	)
-	if use wilco; then
-		tests+=(
-			wilco_dtc_supportd_test
-		)
-	fi
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/diagnostics/diagnostics-9999.ebuild b/chromeos-base/diagnostics/diagnostics-9999.ebuild
index 2d58ac9..1d30a3b 100644
--- a/chromeos-base/diagnostics/diagnostics-9999.ebuild
+++ b/chromeos-base/diagnostics/diagnostics-9999.ebuild
@@ -12,32 +12,34 @@
 
 PLATFORM_SUBDIR="diagnostics"
 
-inherit cros-workon platform udev user
+inherit cros-workon cros-unibuild platform udev user
 
 DESCRIPTION="Device telemetry and diagnostics for Chrome OS"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics"
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="fuzzer wilco generated_cros_config unibuild"
+IUSE="fuzzer wilco mesa_reven"
 
 COMMON_DEPEND="
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config:= )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
 	chromeos-base/chromeos-config-tools:=
+	chromeos-base/minijail:=
 	dev-libs/protobuf:=
 	dev-libs/re2:=
 	net-libs/grpc:=
 	virtual/libudev:=
+	sys-apps/pciutils:=
+	virtual/opengles:=
 "
 
 DEPEND="
 	${COMMON_DEPEND}
+	chromeos-base/attestation-client:=
 	chromeos-base/debugd-client:=
+	chromeos-base/tpm_manager-client:=
 	chromeos-base/system_api:=[fuzzer?]
 	media-sound/adhd:=
+	x11-drivers/opengles-headers:=
 "
 
 # TODO(crbug/1085169): Replace sys-block/fio dependency with an alternative as
@@ -45,7 +47,6 @@
 # currently the only client.
 RDEPEND="
 	${COMMON_DEPEND}
-	chromeos-base/minijail
 	dev-util/stressapptest
 	wilco? (
 		sys-block/fio
@@ -127,21 +128,14 @@
 	udev_dorules udev/99-chown_dmi_dir.rules
 
 	# Install fuzzers.
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/fetch_system_info_fuzzer
+	local fuzzer_component_id="982097"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/fetch_system_info_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
 	local tests=(
-		cros_healthd_mojo_adapter_test
 		cros_healthd_test
-		libcommon_test
-		libcros_healthd_events_test
-		libcros_healthd_fetchers_test
-		libcros_healthd_utils_test
-		network_test
-		network_diagnostics_test
-		routine_test
-		system_config_test
 	)
 	if use wilco; then
 		tests+=(
diff --git a/chromeos-base/disk_updater/disk_updater-0.0.1-r3081.ebuild b/chromeos-base/disk_updater/disk_updater-0.0.1-r3081.ebuild
deleted file mode 100644
index 7b46754..0000000
--- a/chromeos-base/disk_updater/disk_updater-0.0.1-r3081.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a84edaa470edc69e27335f718e4784a8fcc883f9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk disk_updater .gn"
-
-PLATFORM_SUBDIR="disk_updater"
-
-inherit cros-workon platform
-
-DESCRIPTION="Root disk firmware updater"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/disk_updater/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="+sata mmc nvme"
-
-DEPEND=""
-
-RDEPEND="${DEPEND}
-	chromeos-base/chromeos-common-script
-	dev-util/shflags
-	sata? ( sys-apps/hdparm )
-	mmc? ( sys-apps/mmc-utils )
-	nvme? ( sys-apps/nvme-cli )"
-
-platform_pkg_test() {
-	# We can test all, even if mmc or nvme are not installed.
-	local tests=( 'ata' 'mmc' 'nvme')
-
-	local test_type
-	for test_type in "${tests[@]}"; do
-		platform_test "run" "tests/chromeos-disk-firmware-${test_type}-test.sh"
-	done
-}
-
-src_install() {
-	insinto "/etc/init"
-	doins "scripts/chromeos-disk-firmware-update.conf"
-
-	dosbin "scripts/chromeos-disk-firmware-update.sh"
-}
diff --git a/chromeos-base/disk_updater/disk_updater-0.0.1-r3106.ebuild b/chromeos-base/disk_updater/disk_updater-0.0.1-r3106.ebuild
new file mode 100644
index 0000000..0f7f866
--- /dev/null
+++ b/chromeos-base/disk_updater/disk_updater-0.0.1-r3106.ebuild
@@ -0,0 +1,48 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "a84edaa470edc69e27335f718e4784a8fcc883f9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk disk_updater .gn"
+
+PLATFORM_SUBDIR="disk_updater"
+
+inherit cros-workon platform
+
+DESCRIPTION="Root disk firmware updater"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/disk_updater/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="+sata mmc nvme"
+
+DEPEND=""
+
+RDEPEND="${DEPEND}
+	chromeos-base/chromeos-common-script
+	dev-util/shflags
+	sata? ( sys-apps/hdparm )
+	mmc? ( sys-apps/mmc-utils )
+	nvme? ( sys-apps/nvme-cli )"
+
+platform_pkg_test() {
+	# We can test all, even if mmc or nvme are not installed.
+	local tests=( 'ata' 'mmc' 'nvme')
+
+	local test_type
+	for test_type in "${tests[@]}"; do
+		platform_test "run" "tests/chromeos-disk-firmware-${test_type}-test.sh"
+	done
+}
+
+src_install() {
+	insinto "/etc/init"
+	doins "scripts/chromeos-disk-firmware-update.conf"
+
+	dosbin "scripts/chromeos-disk-firmware-update.sh"
+}
diff --git a/chromeos-base/dlcservice-client/dlcservice-client-0.0.1-r450.ebuild b/chromeos-base/dlcservice-client/dlcservice-client-0.0.1-r450.ebuild
deleted file mode 100644
index 581d09a..0000000
--- a/chromeos-base/dlcservice-client/dlcservice-client-0.0.1-r450.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e0da5eb8dbe45cc4e72a44ebaca7260e14bc4d22" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk dlcservice .gn"
-
-PLATFORM_SUBDIR="dlcservice/client"
-
-inherit cros-workon platform
-
-DESCRIPTION="DlcService D-Bus client library for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/dlcservice/client"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-# D-Bus proxies generated by this client library depend on the code generator
-# itself (chromeos-dbus-bindings) and produce header files that rely on
-# libbrillo library.
-DEPEND="
-	chromeos-base/chromeos-dbus-bindings
-"
-
-src_install() {
-	# Install DBus client library.
-	platform_install_dbus_client_lib "dlcservice"
-}
diff --git a/chromeos-base/dlcservice-client/dlcservice-client-0.0.1-r484.ebuild b/chromeos-base/dlcservice-client/dlcservice-client-0.0.1-r484.ebuild
new file mode 100644
index 0000000..dbe5efe
--- /dev/null
+++ b/chromeos-base/dlcservice-client/dlcservice-client-0.0.1-r484.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "c1b01417481b59578eadff383cae947150b79aba" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk dlcservice .gn"
+
+PLATFORM_SUBDIR="dlcservice/client"
+
+inherit cros-workon platform
+
+DESCRIPTION="DlcService D-Bus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/dlcservice/client"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+# D-Bus proxies generated by this client library depend on the code generator
+# itself (chromeos-dbus-bindings) and produce header files that rely on
+# libbrillo library.
+DEPEND="
+	chromeos-base/chromeos-dbus-bindings
+"
+
+src_install() {
+	# Install DBus client library.
+	platform_install_dbus_client_lib "dlcservice"
+}
diff --git a/chromeos-base/dlcservice/dlcservice-0.0.1-r574.ebuild b/chromeos-base/dlcservice/dlcservice-0.0.1-r574.ebuild
deleted file mode 100644
index 4f5ef5e..0000000
--- a/chromeos-base/dlcservice/dlcservice-0.0.1-r574.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e0da5eb8dbe45cc4e72a44ebaca7260e14bc4d22" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid #include-ing platform2 headers directly.
-CROS_WORKON_SUBTREE="common-mk dlcservice metrics .gn"
-
-PLATFORM_SUBDIR="dlcservice"
-
-inherit cros-workon platform user
-
-DESCRIPTION="A D-Bus service for Downloadable Content (DLC)"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/dlcservice/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="fuzzer"
-
-RDEPEND="
-	chromeos-base/imageloader:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	dev-libs/protobuf:="
-
-DEPEND="${RDEPEND}
-	chromeos-base/dlcservice-client:=
-	chromeos-base/imageloader-client:=
-	chromeos-base/system_api:=[fuzzer?]
-	chromeos-base/session_manager-client:=
-	chromeos-base/update_engine-client:="
-
-src_install() {
-	dosbin "${OUT}/dlcservice"
-	# Technically we don't need the dlcservice_util in rootfs, but the QA team
-	# will need this to test with sample-dlc.
-	dobin "${OUT}/dlcservice_util"
-
-	# Seccomp policy files.
-	insinto /usr/share/policy
-	newins seccomp/dlcservice-seccomp-${ARCH}.policy \
-		dlcservice-seccomp.policy
-
-	# Upstart configuration
-	insinto /etc/init
-	doins dlcservice.conf
-
-	# D-Bus configuration
-	insinto /etc/dbus-1/system.d
-	doins org.chromium.DlcService.conf
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/dlcservice_boot_device_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/dlcservice_boot_slot_fuzzer
-
-	into /usr/local
-	dobin "${S}/tools/dlctool"
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/dlcservice_tests"
-	platform_fuzzer_test "${OUT}"/dlcservice_boot_device_fuzzer
-	platform_fuzzer_test "${OUT}"/dlcservice_boot_slot_fuzzer
-}
-
-pkg_preinst() {
-	enewuser "dlcservice"
-	enewgroup "dlcservice"
-}
diff --git a/chromeos-base/dlcservice/dlcservice-0.0.1-r623.ebuild b/chromeos-base/dlcservice/dlcservice-0.0.1-r623.ebuild
new file mode 100644
index 0000000..ddad24e
--- /dev/null
+++ b/chromeos-base/dlcservice/dlcservice-0.0.1-r623.ebuild
@@ -0,0 +1,78 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "c1b01417481b59578eadff383cae947150b79aba" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid #include-ing platform2 headers directly.
+CROS_WORKON_SUBTREE="common-mk dlcservice metrics .gn"
+
+PLATFORM_SUBDIR="dlcservice"
+
+inherit cros-workon platform user
+
+DESCRIPTION="A D-Bus service for Downloadable Content (DLC)"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/dlcservice/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="fuzzer"
+
+RDEPEND="
+	chromeos-base/imageloader:=
+	chromeos-base/minijail:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	dev-libs/protobuf:="
+
+DEPEND="${RDEPEND}
+	chromeos-base/dlcservice-client:=
+	chromeos-base/imageloader-client:=
+	chromeos-base/system_api:=[fuzzer?]
+	chromeos-base/session_manager-client:=
+	chromeos-base/update_engine-client:="
+
+src_install() {
+	dosbin "${OUT}/dlcservice"
+	# Technically we don't need the dlcservice_util in rootfs, but the QA team
+	# will need this to test with sample-dlc.
+	dobin "${OUT}/dlcservice_util"
+
+	# Seccomp policy files.
+	insinto /usr/share/policy
+	newins seccomp/dlcservice-seccomp-${ARCH}.policy \
+		dlcservice-seccomp.policy
+
+	# Upstart configuration
+	insinto /etc/init
+	doins dlcservice.conf
+
+	# D-Bus configuration
+	insinto /etc/dbus-1/system.d
+	doins org.chromium.DlcService.conf
+
+	local fuzzer_component_id="908242"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/dlcservice_boot_device_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/dlcservice_boot_slot_fuzzer \
+		--comp "${fuzzer_component_id}"
+
+	into /usr/local
+	dobin "${S}/tools/dlctool"
+	dobin "${OUT}/dlcverify"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/dlcservice_tests"
+	platform_fuzzer_test "${OUT}"/dlcservice_boot_device_fuzzer
+	platform_fuzzer_test "${OUT}"/dlcservice_boot_slot_fuzzer
+}
+
+pkg_preinst() {
+	enewuser "dlcservice"
+	enewgroup "dlcservice"
+}
diff --git a/chromeos-base/dlcservice/dlcservice-9999.ebuild b/chromeos-base/dlcservice/dlcservice-9999.ebuild
index 19581ba..9845a2c 100644
--- a/chromeos-base/dlcservice/dlcservice-9999.ebuild
+++ b/chromeos-base/dlcservice/dlcservice-9999.ebuild
@@ -23,6 +23,7 @@
 
 RDEPEND="
 	chromeos-base/imageloader:=
+	chromeos-base/minijail:=
 	>=chromeos-base/metrics-0.0.1-r3152:=
 	dev-libs/protobuf:="
 
@@ -52,11 +53,15 @@
 	insinto /etc/dbus-1/system.d
 	doins org.chromium.DlcService.conf
 
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/dlcservice_boot_device_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/dlcservice_boot_slot_fuzzer
+	local fuzzer_component_id="908242"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/dlcservice_boot_device_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/dlcservice_boot_slot_fuzzer \
+		--comp "${fuzzer_component_id}"
 
 	into /usr/local
 	dobin "${S}/tools/dlctool"
+	dobin "${OUT}/dlcverify"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/dlp/dlp-0.0.1-r32.ebuild b/chromeos-base/dlp/dlp-0.0.1-r32.ebuild
deleted file mode 100644
index 28fd402..0000000
--- a/chromeos-base/dlp/dlp-0.0.1-r32.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="1560ad57ea9147d2e7444dc95d453d89be6a74b5"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a85255af9133dcdacc994706bf7f95bf246eb918" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk dlp .gn"
-
-PLATFORM_SUBDIR="dlp"
-
-inherit cros-workon libchrome platform user
-
-DESCRIPTION="A daemon that provides support for Data Leak Prevention restrictions for file accesses."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/dlp/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-COMMON_DEPEND="
-	chromeos-base/minijail:=
-	!dev-db/leveldb
-	dev-libs/leveldb:=
-	dev-libs/protobuf:=
-"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}
-	sys-apps/dbus:=
-"
-
-src_install() {
-	dosbin "${OUT}"/dlp
-
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.Dlp.conf
-
-	insinto /usr/share/dbus-1/system-services
-	doins dbus/org.chromium.Dlp.service
-
-	insinto /etc/init
-	doins init/dlp.conf
-
-	local daemon_store="/etc/daemon-store/dlp"
-	dodir "${daemon_store}"
-	fperms 0700 "${daemon_store}"
-	fowners dlp:dlp "${daemon_store}"
-}
-
-platform_pkg_test() {
-	local gtest_filter_user_tests="-*.RunAsRoot*:"
-	local gtest_filter_root_tests="*.RunAsRoot*-"
-
-	platform_test "run" "${OUT}/dlp_test" "0" "${gtest_filter_user_tests}"
-	platform_test "run" "${OUT}/dlp_test" "1" "${gtest_filter_root_tests}"
-}
-
-pkg_setup() {
-	enewuser "dlp"
-	enewgroup "dlp"
-	cros-workon_pkg_setup
-}
diff --git a/chromeos-base/dlp/dlp-0.0.1-r62.ebuild b/chromeos-base/dlp/dlp-0.0.1-r62.ebuild
new file mode 100644
index 0000000..bdaf356
--- /dev/null
+++ b/chromeos-base/dlp/dlp-0.0.1-r62.ebuild
@@ -0,0 +1,66 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "c619ee25c81c29909032588f713f3aaccb4549e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk dlp .gn"
+
+PLATFORM_SUBDIR="dlp"
+
+inherit cros-workon libchrome platform user
+
+DESCRIPTION="A daemon that provides support for Data Leak Prevention restrictions for file accesses."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/dlp/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+COMMON_DEPEND="
+	chromeos-base/minijail:=
+	!dev-db/leveldb
+	dev-libs/leveldb:=
+	dev-libs/protobuf:=
+"
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/system_api:=
+	sys-apps/dbus:=
+"
+
+src_install() {
+	dosbin "${OUT}"/dlp
+
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.Dlp.conf
+
+	insinto /usr/share/dbus-1/system-services
+	doins dbus/org.chromium.Dlp.service
+
+	insinto /etc/init
+	doins init/dlp.conf
+
+	local daemon_store="/etc/daemon-store/dlp"
+	dodir "${daemon_store}"
+	fperms 0700 "${daemon_store}"
+	fowners dlp:dlp "${daemon_store}"
+}
+
+platform_pkg_test() {
+	local gtest_filter_user_tests="-*.RunAsRoot*:"
+	local gtest_filter_root_tests="*.RunAsRoot*-"
+
+	platform_test "run" "${OUT}/dlp_test" "0" "${gtest_filter_user_tests}"
+	platform_test "run" "${OUT}/dlp_test" "1" "${gtest_filter_root_tests}"
+}
+
+pkg_setup() {
+	enewuser "dlp"
+	enewgroup "dlp"
+	cros-workon_pkg_setup
+}
diff --git a/chromeos-base/dlp/dlp-9999.ebuild b/chromeos-base/dlp/dlp-9999.ebuild
index 73a17e9..3d22d11 100644
--- a/chromeos-base/dlp/dlp-9999.ebuild
+++ b/chromeos-base/dlp/dlp-9999.ebuild
@@ -27,6 +27,7 @@
 "
 RDEPEND="${COMMON_DEPEND}"
 DEPEND="${COMMON_DEPEND}
+	chromeos-base/system_api:=
 	sys-apps/dbus:=
 "
 
diff --git a/chromeos-base/dns-proxy/dns-proxy-0.0.1-r140.ebuild b/chromeos-base/dns-proxy/dns-proxy-0.0.1-r140.ebuild
new file mode 100644
index 0000000..70910d7
--- /dev/null
+++ b/chromeos-base/dns-proxy/dns-proxy-0.0.1-r140.ebuild
@@ -0,0 +1,68 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "bd4a9ee78301d4de376c5cc18b5e4924214e44fd" "e08a2eb734e33827dffeecf57eca046cd1091373" "b8f72a0e660bae92be22cdcd378a09def1f97c89" "0180513536a7819b5f1dd6966f004bcb713392d5" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk dns-proxy metrics shill/dbus/client shill/net .gn"
+
+PLATFORM_SUBDIR="dns-proxy"
+
+inherit cros-workon platform user
+
+DESCRIPTION="A daemon that provides DNS proxying services."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/dns-proxy/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+
+COMMON_DEPEND="
+	chromeos-base/metrics:=
+	chromeos-base/minijail:=
+	chromeos-base/patchpanel:=
+	chromeos-base/patchpanel-client:=
+	chromeos-base/shill-dbus-client:=
+	chromeos-base/shill-net:=
+	dev-libs/protobuf:=
+	dev-libs/dbus-glib:=
+	sys-apps/dbus:=
+	net-misc/curl:=
+"
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/permission_broker-client:=
+"
+
+pkg_preinst() {
+	enewuser "dns-proxy"
+	enewgroup "dns-proxy"
+}
+
+src_install() {
+	dosbin "${OUT}"/dnsproxyd
+
+	insinto /etc/init
+	doins init/dns-proxy.conf
+
+	insinto /usr/share/policy
+	newins seccomp/dns-proxy-seccomp-"${ARCH}".policy dns-proxy-seccomp.policy
+
+	local fuzzer_component_id="156085"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/ares_client_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/doh_curl_client_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/resolver_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/dns-proxy_test"
+}
diff --git a/chromeos-base/dns-proxy/dns-proxy-0.0.1-r71.ebuild b/chromeos-base/dns-proxy/dns-proxy-0.0.1-r71.ebuild
deleted file mode 100644
index c1fa323..0000000
--- a/chromeos-base/dns-proxy/dns-proxy-0.0.1-r71.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "6a93087f6ddb4402b72ae9b5f4f7da5535f33c7e" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "0589da423746e4e20fe7e50f7a19e2ac46e715a8" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk dns-proxy metrics shill/dbus/client .gn"
-
-PLATFORM_SUBDIR="dns-proxy"
-
-inherit cros-workon platform user
-
-DESCRIPTION="A daemon that provides DNS proxying services."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/dns-proxy/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-
-COMMON_DEPEND="
-	chromeos-base/metrics:=
-	chromeos-base/minijail:=
-	chromeos-base/patchpanel:=
-	chromeos-base/patchpanel-client:=
-	chromeos-base/shill-dbus-client:=
-	dev-libs/protobuf:=
-	dev-libs/dbus-glib:=
-	sys-apps/dbus:=
-	net-misc/curl:=
-"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/permission_broker-client:=
-"
-
-pkg_preinst() {
-	enewuser "dns-proxy"
-	enewgroup "dns-proxy"
-}
-
-src_install() {
-	dosbin "${OUT}"/dnsproxyd
-
-	insinto /etc/init
-	doins init/dns-proxy.conf
-
-	insinto /usr/share/policy
-	newins seccomp/dns-proxy-seccomp-"${ARCH}".policy dns-proxy-seccomp.policy
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/ares_client_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/doh_curl_client_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/resolver_fuzzer
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/dns-proxy_test"
-}
diff --git a/chromeos-base/dns-proxy/dns-proxy-9999.ebuild b/chromeos-base/dns-proxy/dns-proxy-9999.ebuild
index 00e059e..7c9628c 100644
--- a/chromeos-base/dns-proxy/dns-proxy-9999.ebuild
+++ b/chromeos-base/dns-proxy/dns-proxy-9999.ebuild
@@ -7,7 +7,7 @@
 CROS_WORKON_LOCALNAME="platform2"
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk dns-proxy metrics shill/dbus/client .gn"
+CROS_WORKON_SUBTREE="common-mk dns-proxy metrics shill/dbus/client shill/net .gn"
 
 PLATFORM_SUBDIR="dns-proxy"
 
@@ -26,6 +26,7 @@
 	chromeos-base/patchpanel:=
 	chromeos-base/patchpanel-client:=
 	chromeos-base/shill-dbus-client:=
+	chromeos-base/shill-net:=
 	dev-libs/protobuf:=
 	dev-libs/dbus-glib:=
 	sys-apps/dbus:=
@@ -51,9 +52,13 @@
 	insinto /usr/share/policy
 	newins seccomp/dns-proxy-seccomp-"${ARCH}".policy dns-proxy-seccomp.policy
 
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/ares_client_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/doh_curl_client_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/resolver_fuzzer
+	local fuzzer_component_id="156085"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/ares_client_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/doh_curl_client_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/resolver_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/drm-tests/drm-tests-0.0.1-r212.ebuild b/chromeos-base/drm-tests/drm-tests-0.0.1-r212.ebuild
deleted file mode 100644
index 4fd5d87..0000000
--- a/chromeos-base/drm-tests/drm-tests-0.0.1-r212.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="9c0f5917f0143bfc7a417833ceac2864f1b2c2ab"
-CROS_WORKON_TREE="9a8e6ab4c6d0c8ba694c15ce3b52b0e45c78e382"
-CROS_WORKON_PROJECT="chromiumos/platform/drm-tests"
-
-inherit cros-sanitizers cros-workon toolchain-funcs
-
-DESCRIPTION="Chrome OS DRM Tests"
-
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/drm-tests/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="vulkan"
-
-RDEPEND="virtual/opengles
-	|| ( media-libs/mesa[gbm] media-libs/minigbm )
-	media-libs/libsync
-	vulkan? (
-		media-libs/vulkan-loader
-		virtual/vulkan-icd
-	)"
-DEPEND="${RDEPEND}
-	x11-drivers/opengles-headers"
-
-src_configure() {
-	sanitizers-setup-env
-	default
-}
-
-src_compile() {
-	tc-export CC
-	emake USE_VULKAN="$(usex vulkan 1 0)"
-}
-
-src_install() {
-	cd build-opt-local || return
-	dobin atomictest \
-		drm_cursor_test \
-		dmabuf_test \
-		gamma_test \
-		linear_bo_test \
-		mapped_access_perf_test \
-		mapped_texture_test \
-		mmap_test \
-		null_platform_test \
-		plane_test \
-		synctest swrast_test \
-		v4l2_stateful_decoder \
-		v4l2_stateful_encoder \
-		udmabuf_create_test
-
-	if use vulkan; then
-		dobin vk_glow
-	fi
-}
diff --git a/chromeos-base/drm-tests/drm-tests-0.0.1-r230.ebuild b/chromeos-base/drm-tests/drm-tests-0.0.1-r230.ebuild
new file mode 100644
index 0000000..2fc7404
--- /dev/null
+++ b/chromeos-base/drm-tests/drm-tests-0.0.1-r230.ebuild
@@ -0,0 +1,70 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+CROS_WORKON_COMMIT="4bcfc030eb40f3796aa8be5cc4bbdc425b8a4fd9"
+CROS_WORKON_TREE="74929a5d8d0e45b63d2e22f0da347a00078000e0"
+CROS_WORKON_PROJECT="chromiumos/platform/drm-tests"
+CROS_WORKON_LOCALNAME="platform/drm-tests"
+
+inherit cros-sanitizers cros-workon toolchain-funcs
+
+DESCRIPTION="Chrome OS DRM Tests"
+
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/drm-tests/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="
+	v4lplugin
+	vulkan
+	"
+
+RDEPEND="virtual/opengles
+	|| ( media-libs/mesa[gbm] media-libs/minigbm )
+	media-libs/libsync
+	v4lplugin? ( media-libs/libv4lplugins )
+	vulkan? (
+		media-libs/vulkan-loader
+		virtual/vulkan-icd
+	)"
+DEPEND="${RDEPEND}
+	x11-drivers/opengles-headers"
+
+src_configure() {
+	sanitizers-setup-env
+	default
+}
+
+src_compile() {
+	tc-export CC
+	if use v4lplugin; then
+		einfo "- Using libv4l2plugin"
+		append-flags "-DUSE_V4LPLUGIN"
+	fi
+	emake USE_VULKAN="$(usex vulkan 1 0)" USE_V4LPLUGIN="$(usex v4lplugin 1 0)"
+}
+
+src_install() {
+	cd build-opt-local || return
+	dobin atomictest \
+		drm_cursor_test \
+		dmabuf_test \
+		gamma_test \
+		linear_bo_test \
+		mapped_access_perf_test \
+		mapped_texture_test \
+		mmap_test \
+		null_platform_test \
+		plane_test \
+		synctest swrast_test \
+		v4l2_stateful_decoder \
+		v4l2_stateful_encoder \
+		udmabuf_create_test
+
+	if use vulkan; then
+		dobin vk_glow
+	fi
+}
diff --git a/chromeos-base/drm-tests/drm-tests-9999.ebuild b/chromeos-base/drm-tests/drm-tests-9999.ebuild
index a0001b4..65817c4 100644
--- a/chromeos-base/drm-tests/drm-tests-9999.ebuild
+++ b/chromeos-base/drm-tests/drm-tests-9999.ebuild
@@ -1,8 +1,9 @@
 # Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=5
+EAPI=6
 CROS_WORKON_PROJECT="chromiumos/platform/drm-tests"
+CROS_WORKON_LOCALNAME="platform/drm-tests"
 
 inherit cros-sanitizers cros-workon toolchain-funcs
 
@@ -14,11 +15,15 @@
 LICENSE="BSD-Google"
 SLOT="0"
 KEYWORDS="~*"
-IUSE="vulkan"
+IUSE="
+	v4lplugin
+	vulkan
+	"
 
 RDEPEND="virtual/opengles
 	|| ( media-libs/mesa[gbm] media-libs/minigbm )
 	media-libs/libsync
+	v4lplugin? ( media-libs/libv4lplugins )
 	vulkan? (
 		media-libs/vulkan-loader
 		virtual/vulkan-icd
@@ -33,7 +38,11 @@
 
 src_compile() {
 	tc-export CC
-	emake USE_VULKAN="$(usex vulkan 1 0)"
+	if use v4lplugin; then
+		einfo "- Using libv4l2plugin"
+		append-flags "-DUSE_V4LPLUGIN"
+	fi
+	emake USE_VULKAN="$(usex vulkan 1 0)" USE_V4LPLUGIN="$(usex v4lplugin 1 0)"
 }
 
 src_install() {
diff --git a/chromeos-base/easy-unlock/easy-unlock-0.0.1-r2982.ebuild b/chromeos-base/easy-unlock/easy-unlock-0.0.1-r2982.ebuild
deleted file mode 100644
index cfc33c1..0000000
--- a/chromeos-base/easy-unlock/easy-unlock-0.0.1-r2982.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "defc5f8c0627d2e120d6d81f092dd68ae4d5e440" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_USE_VCSID=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk easy-unlock .gn"
-
-PLATFORM_SUBDIR="easy-unlock"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Service for supporting Easy Unlock in Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/easy-unlock/"
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-COMMON_DEPEND="
-	chromeos-base/easy-unlock-crypto:=
-"
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/system_api:=
-"
-
-pkg_preinst() {
-	enewuser easy-unlock
-	enewgroup easy-unlock
-}
-
-src_install() {
-	exeinto /opt/google/easy_unlock
-	doexe "${OUT}/easy_unlock"
-
-	insinto /etc/dbus-1/system.d
-	doins org.chromium.EasyUnlock.conf
-
-	insinto /usr/share/dbus-1/system-services
-	doins org.chromium.EasyUnlock.service
-
-	insinto /etc/init
-	doins init/easy-unlock.conf
-
-	insinto /usr/share/dbus-1/interfaces
-	doins dbus_bindings/org.chromium.EasyUnlockInterface.xml
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/easy_unlock_test_runner"
-}
diff --git a/chromeos-base/easy-unlock/easy-unlock-0.0.1-r3007.ebuild b/chromeos-base/easy-unlock/easy-unlock-0.0.1-r3007.ebuild
new file mode 100644
index 0000000..3744914
--- /dev/null
+++ b/chromeos-base/easy-unlock/easy-unlock-0.0.1-r3007.ebuild
@@ -0,0 +1,61 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "defc5f8c0627d2e120d6d81f092dd68ae4d5e440" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_USE_VCSID=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk easy-unlock .gn"
+
+PLATFORM_SUBDIR="easy-unlock"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Service for supporting Easy Unlock in Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/easy-unlock/"
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+COMMON_DEPEND="
+	chromeos-base/easy-unlock-crypto:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/system_api:=
+"
+
+pkg_preinst() {
+	enewuser easy-unlock
+	enewgroup easy-unlock
+}
+
+src_install() {
+	exeinto /opt/google/easy_unlock
+	doexe "${OUT}/easy_unlock"
+
+	insinto /etc/dbus-1/system.d
+	doins org.chromium.EasyUnlock.conf
+
+	insinto /usr/share/dbus-1/system-services
+	doins org.chromium.EasyUnlock.service
+
+	insinto /etc/init
+	doins init/easy-unlock.conf
+
+	insinto /usr/share/dbus-1/interfaces
+	doins dbus_bindings/org.chromium.EasyUnlockInterface.xml
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/easy_unlock_test_runner"
+}
diff --git a/chromeos-base/ec-devutils/ec-devutils-0.0.2-r8243.ebuild b/chromeos-base/ec-devutils/ec-devutils-0.0.2-r8243.ebuild
deleted file mode 100644
index 2e26f2a..0000000
--- a/chromeos-base/ec-devutils/ec-devutils-0.0.2-r8243.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-CROS_WORKON_COMMIT="ba5d0fb018cf200320efad9cc91b89e1f4a6d80c"
-CROS_WORKON_TREE="ef831ef09b8fdc0da7cceb25def086f853ae97cd"
-CROS_WORKON_PROJECT="chromiumos/platform/ec"
-CROS_WORKON_LOCALNAME="platform/ec"
-PYTHON_COMPAT=( python3_6 )
-
-inherit cros-workon distutils-r1
-
-DESCRIPTION="Host development utilities for Chromium OS EC"
-HOMEPAGE="https://www.chromium.org/chromium-os/ec-development"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="hammerd"
-
-DEPEND="virtual/libusb:1=
-	sys-apps/flashmap:=
-	"
-RDEPEND="
-	${DEPEND}
-	app-mobilephone/dfu-util
-	sys-firmware/servo-firmware
-	sys-apps/flashrom
-	!<chromeos-base/ec-utils-0.0.1-r6153
-	chromeos-base/ec-utils
-	>=dev-python/pyusb-1.0.2[${PYTHON_USEDEP}]
-	"
-BDEPEND="
-	dev-python/setuptools[${PYTHON_USEDEP}]
-	virtual/pkgconfig
-	"
-
-set_board() {
-	# No need to be board specific, no tools below build code that is
-	# EC specific. bds works for forst side compilation.
-	export BOARD="bds"
-}
-
-src_configure() {
-	distutils-r1_src_configure
-}
-
-src_compile() {
-	tc-export AR CC PKG_CONFIG RANLIB
-	# In platform/ec Makefile, it uses "CC" to specify target chipset and
-	# "HOSTCC" to compile the utility program because it assumes developers
-	# want to run the utility from same host (build machine).
-	# In this ebuild file, we only build utility
-	# and we may want to build it so it can
-	# be executed on target devices (i.e., arm/x86/amd64), not the build
-	# host (BUILDCC, amd64). So we need to override HOSTCC by target "CC".
-	export HOSTCC="${CC}"
-	set_board
-	emake utils-host
-	# Add usb_updater2 for servo or hammer updates.
-	emake -C extra/usb_updater usb_updater2
-	if use hammerd; then
-		# Add touchpad_updater for TP update on hammer.
-		emake -C extra/touchpad_updater touchpad_updater
-	fi
-	distutils-r1_src_compile
-}
-
-src_install() {
-	set_board
-	dobin "build/${BOARD}/util/stm32mon"
-	dobin "build/${BOARD}/util/ec_parse_panicinfo"
-	dobin "build/${BOARD}/util/uartupdatetool"
-	dobin "build/${BOARD}/util/iteflash"
-
-	# Add usb_updater2 for servo or hammer updates.
-	dosbin "extra/usb_updater/usb_updater2"
-	if use hammerd; then
-		# Add touchpad_updater for TP update on hammer.
-		newsbin "extra/touchpad_updater/touchpad_updater" ec_touchpad_updater
-	fi
-
-	dobin "util/flash_ec"
-	dobin "util/uart_stress_tester.py"
-	insinto /usr/share/ec-devutils
-	doins util/openocd/*
-
-	distutils-r1_src_install
-}
diff --git a/chromeos-base/ec-devutils/ec-devutils-0.0.2-r9061.ebuild b/chromeos-base/ec-devutils/ec-devutils-0.0.2-r9061.ebuild
new file mode 100644
index 0000000..d2de83d
--- /dev/null
+++ b/chromeos-base/ec-devutils/ec-devutils-0.0.2-r9061.ebuild
@@ -0,0 +1,91 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+CROS_WORKON_COMMIT="ebe1007d3dc274b2f7eb34cdae12ab7b1de41553"
+CROS_WORKON_TREE="487f8c8dfadd10d92f8b7667566bda64d9e36726"
+CROS_WORKON_PROJECT="chromiumos/platform/ec"
+CROS_WORKON_LOCALNAME="platform/ec"
+PYTHON_COMPAT=( python3_6 )
+
+inherit cros-workon distutils-r1
+
+DESCRIPTION="Host development utilities for Chromium OS EC"
+HOMEPAGE="https://www.chromium.org/chromium-os/ec-development"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="hammerd"
+
+DEPEND="virtual/libusb:1=
+	sys-apps/flashmap:=
+	"
+RDEPEND="
+	${DEPEND}
+	app-mobilephone/dfu-util
+	sys-firmware/servo-firmware
+	sys-apps/flashrom
+	!<chromeos-base/ec-utils-0.0.1-r6153
+	chromeos-base/ec-utils
+	>=dev-python/pyusb-1.0.2[${PYTHON_USEDEP}]
+	"
+BDEPEND="
+	dev-python/setuptools[${PYTHON_USEDEP}]
+	virtual/pkgconfig
+	"
+
+set_board() {
+	# No need to be board specific, no tools below build code that is
+	# EC specific. However, the EC build system must ensure that all
+	# utilities in this package are built for a given board. We ensure this
+	# for the host board.
+	export BOARD="host"
+}
+
+src_configure() {
+	distutils-r1_src_configure
+}
+
+src_compile() {
+	tc-export AR CC PKG_CONFIG RANLIB
+	# In platform/ec Makefile, it uses "CC" to specify target chipset and
+	# "HOSTCC" to compile the utility program because it assumes developers
+	# want to run the utility from same host (build machine).
+	# In this ebuild file, we only build utility
+	# and we may want to build it so it can
+	# be executed on target devices (i.e., arm/x86/amd64), not the build
+	# host (BUILDCC, amd64). So we need to override HOSTCC by target "CC".
+	export HOSTCC="${CC}"
+	set_board
+	emake utils-host
+	# Add usb_updater2 for servo or hammer updates.
+	emake -C extra/usb_updater usb_updater2
+	if use hammerd; then
+		# Add touchpad_updater for TP update on hammer.
+		emake -C extra/touchpad_updater touchpad_updater
+	fi
+	distutils-r1_src_compile
+}
+
+src_install() {
+	set_board
+	dobin "build/${BOARD}/util/stm32mon"
+	dobin "build/${BOARD}/util/ec_parse_panicinfo"
+	dobin "build/${BOARD}/util/uartupdatetool"
+	dobin "build/${BOARD}/util/iteflash"
+
+	# Add usb_updater2 for servo or hammer updates.
+	dosbin "extra/usb_updater/usb_updater2"
+	if use hammerd; then
+		# Add touchpad_updater for TP update on hammer.
+		newsbin "extra/touchpad_updater/touchpad_updater" ec_touchpad_updater
+	fi
+
+	dobin "util/flash_ec"
+	dobin "util/uart_stress_tester.py"
+	insinto /usr/share/ec-devutils
+	doins util/openocd/*
+
+	distutils-r1_src_install
+}
diff --git a/chromeos-base/ec-devutils/ec-devutils-9999.ebuild b/chromeos-base/ec-devutils/ec-devutils-9999.ebuild
index 08c1021..e54df81 100644
--- a/chromeos-base/ec-devutils/ec-devutils-9999.ebuild
+++ b/chromeos-base/ec-devutils/ec-devutils-9999.ebuild
@@ -35,8 +35,10 @@
 
 set_board() {
 	# No need to be board specific, no tools below build code that is
-	# EC specific. bds works for forst side compilation.
-	export BOARD="bds"
+	# EC specific. However, the EC build system must ensure that all
+	# utilities in this package are built for a given board. We ensure this
+	# for the host board.
+	export BOARD="host"
 }
 
 src_configure() {
diff --git a/chromeos-base/ec-utils-test/ec-utils-test-0.0.1-r7347.ebuild b/chromeos-base/ec-utils-test/ec-utils-test-0.0.1-r7347.ebuild
deleted file mode 100644
index 6c3e84c..0000000
--- a/chromeos-base/ec-utils-test/ec-utils-test-0.0.1-r7347.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="ba5d0fb018cf200320efad9cc91b89e1f4a6d80c"
-CROS_WORKON_TREE="ef831ef09b8fdc0da7cceb25def086f853ae97cd"
-CROS_WORKON_PROJECT="chromiumos/platform/ec"
-CROS_WORKON_LOCALNAME="platform/ec"
-CROS_WORKON_INCREMENTAL_BUILD=1
-
-inherit cros-workon
-
-DESCRIPTION="Chrome OS EC Utility Helper"
-
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="biod -cr50_onboard"
-
-# flash_fp_mcu depends on stm32mon (ec-devutils)
-RDEPEND="
-	chromeos-base/ec-utils
-	biod? (
-		chromeos-base/ec-devutils
-		dev-util/shflags
-	      )
-"
-
-src_compile() {
-	tc-export CC
-
-	if use cr50_onboard; then
-		emake -C extra/rma_reset
-	fi
-}
-
-src_install() {
-	dobin "util/battery_temp"
-	dosbin "util/inject-keys.py"
-
-	if use cr50_onboard; then
-		dobin "extra/rma_reset/rma_reset"
-	fi
-
-	if use biod; then
-		einfo "Installing flash_fp_mcu"
-		dobin "util/flash_fp_mcu"
-	fi
-}
diff --git a/chromeos-base/ec-utils-test/ec-utils-test-0.0.1-r8167.ebuild b/chromeos-base/ec-utils-test/ec-utils-test-0.0.1-r8167.ebuild
new file mode 100644
index 0000000..a5acc7c
--- /dev/null
+++ b/chromeos-base/ec-utils-test/ec-utils-test-0.0.1-r8167.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="ebe1007d3dc274b2f7eb34cdae12ab7b1de41553"
+CROS_WORKON_TREE="487f8c8dfadd10d92f8b7667566bda64d9e36726"
+CROS_WORKON_PROJECT="chromiumos/platform/ec"
+CROS_WORKON_LOCALNAME="platform/ec"
+CROS_WORKON_INCREMENTAL_BUILD=1
+PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
+
+inherit cros-workon python-r1
+
+DESCRIPTION="Chrome OS EC Utility Helper"
+
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="biod -cr50_onboard"
+
+# flash_fp_mcu depends on stm32mon (ec-devutils)
+RDEPEND="
+	${PYTHON_DEPS}
+	chromeos-base/ec-utils
+	biod? (
+		chromeos-base/ec-devutils
+		dev-util/shflags
+	      )
+"
+
+src_compile() {
+	tc-export CC
+
+	if use cr50_onboard; then
+		emake -C extra/rma_reset
+	fi
+}
+
+src_install() {
+	dobin "util/battery_temp"
+	dosbin "util/inject-keys.py"
+
+	if use cr50_onboard; then
+		dobin "extra/rma_reset/rma_reset"
+	fi
+
+	if use biod; then
+		einfo "Installing flash_fp_mcu and fptool"
+		dobin "util/flash_fp_mcu"
+		newbin "util/fptool.py" "fptool"
+	fi
+}
diff --git a/chromeos-base/ec-utils-test/ec-utils-test-9999.ebuild b/chromeos-base/ec-utils-test/ec-utils-test-9999.ebuild
index 1b79c93..6bef6a3 100644
--- a/chromeos-base/ec-utils-test/ec-utils-test-9999.ebuild
+++ b/chromeos-base/ec-utils-test/ec-utils-test-9999.ebuild
@@ -5,8 +5,9 @@
 CROS_WORKON_PROJECT="chromiumos/platform/ec"
 CROS_WORKON_LOCALNAME="platform/ec"
 CROS_WORKON_INCREMENTAL_BUILD=1
+PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
 
-inherit cros-workon
+inherit cros-workon python-r1
 
 DESCRIPTION="Chrome OS EC Utility Helper"
 
@@ -20,6 +21,7 @@
 
 # flash_fp_mcu depends on stm32mon (ec-devutils)
 RDEPEND="
+	${PYTHON_DEPS}
 	chromeos-base/ec-utils
 	biod? (
 		chromeos-base/ec-devutils
@@ -44,7 +46,8 @@
 	fi
 
 	if use biod; then
-		einfo "Installing flash_fp_mcu"
+		einfo "Installing flash_fp_mcu and fptool"
 		dobin "util/flash_fp_mcu"
+		newbin "util/fptool.py" "fptool"
 	fi
 }
diff --git a/chromeos-base/ec-utils/ec-utils-0.0.2-r10177.ebuild b/chromeos-base/ec-utils/ec-utils-0.0.2-r10177.ebuild
deleted file mode 100644
index 673a94f..0000000
--- a/chromeos-base/ec-utils/ec-utils-0.0.2-r10177.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="ba5d0fb018cf200320efad9cc91b89e1f4a6d80c"
-CROS_WORKON_TREE="ef831ef09b8fdc0da7cceb25def086f853ae97cd"
-CROS_WORKON_PROJECT="chromiumos/platform/ec"
-CROS_WORKON_LOCALNAME="platform/ec"
-
-inherit cros-workon user
-
-DESCRIPTION="Chrome OS EC Utility"
-
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="static -updater_utils"
-IUSE="${IUSE} cros_host +cros_ec_utils"
-
-COMMON_DEPEND="dev-embedded/libftdi:=
-	dev-libs/openssl:0=
-	sys-libs/zlib:=
-	virtual/libusb:1="
-DEPEND="${COMMON_DEPEND}"
-RDEPEND="${COMMON_DEPEND}"
-
-pkg_preinst() {
-	enewgroup "dialout"
-}
-
-src_compile_cros_ec_utils() {
-	BOARD=host emake utils-host CC="${CC}"
-}
-
-src_compile() {
-	tc-export AR CC PKG_CONFIG RANLIB
-	# In platform/ec Makefile, it uses "CC" to specify target chipset and
-	# "HOSTCC" to compile the utility program because it assumes developers
-	# want to run the utility from same host (build machine).
-	# In this ebuild file, we only build utility
-	# and we may want to build it so it can
-	# be executed on target devices (i.e., arm/x86/amd64), not the build
-	# host (BUILDCC, amd64). So we need to override HOSTCC by target "CC".
-	export HOSTCC="${CC} $(usex static '-static' '')"
-
-	# Build Chromium EC utilities.
-	use cros_ec_utils && src_compile_cros_ec_utils
-}
-
-src_install_cros_ec_utils() {
-	if use cros_host; then
-		dobin "build/host/util/cbi-util"
-	else
-		dosbin "build/host/util/ectool"
-		dosbin "build/host/util/ec_parse_panicinfo"
-		dosbin "build/host/util/ec_sb_firmware_update"
-	fi
-}
-
-src_install() {
-	# Install Chromium EC utilities.
-	use cros_ec_utils && src_install_cros_ec_utils
-}
-
-pkg_postinst() {
-	if ! $(id -Gn "$(logname)" | grep -qw "dialout") ; then
-		usermod -a -G "dialout" "$(logname)"
-		einfo "A new group, dialout is added." \
-			"Please re-login to apply this change."
-	fi
-}
diff --git a/chromeos-base/ec-utils/ec-utils-0.0.2-r10995.ebuild b/chromeos-base/ec-utils/ec-utils-0.0.2-r10995.ebuild
new file mode 100644
index 0000000..b5b5391
--- /dev/null
+++ b/chromeos-base/ec-utils/ec-utils-0.0.2-r10995.ebuild
@@ -0,0 +1,73 @@
+# Copyright 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="ebe1007d3dc274b2f7eb34cdae12ab7b1de41553"
+CROS_WORKON_TREE="487f8c8dfadd10d92f8b7667566bda64d9e36726"
+CROS_WORKON_PROJECT="chromiumos/platform/ec"
+CROS_WORKON_LOCALNAME="platform/ec"
+
+inherit cros-workon user
+
+DESCRIPTION="Chrome OS EC Utility"
+
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="static -updater_utils"
+IUSE="${IUSE} cros_host +cros_ec_utils"
+
+COMMON_DEPEND="dev-embedded/libftdi:=
+	dev-libs/openssl:0=
+	sys-libs/zlib:=
+	virtual/libusb:1="
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+
+pkg_preinst() {
+	enewgroup "dialout"
+}
+
+src_compile_cros_ec_utils() {
+	BOARD=host emake utils-host CC="${CC}"
+}
+
+src_compile() {
+	tc-export AR CC PKG_CONFIG RANLIB
+	# In platform/ec Makefile, it uses "CC" to specify target chipset and
+	# "HOSTCC" to compile the utility program because it assumes developers
+	# want to run the utility from same host (build machine).
+	# In this ebuild file, we only build utility
+	# and we may want to build it so it can
+	# be executed on target devices (i.e., arm/x86/amd64), not the build
+	# host (BUILDCC, amd64). So we need to override HOSTCC by target "CC".
+	export HOSTCC="${CC} $(usex static '-static' '')"
+
+	# Build Chromium EC utilities.
+	use cros_ec_utils && src_compile_cros_ec_utils
+}
+
+src_install_cros_ec_utils() {
+	if use cros_host; then
+		dobin "build/host/util/cbi-util"
+	else
+		dosbin "build/host/util/ectool"
+		dosbin "build/host/util/ec_parse_panicinfo"
+		dosbin "build/host/util/ec_sb_firmware_update"
+	fi
+}
+
+src_install() {
+	# Install Chromium EC utilities.
+	use cros_ec_utils && src_install_cros_ec_utils
+}
+
+pkg_postinst() {
+	if ! $(id -Gn "$(logname)" | grep -qw "dialout") ; then
+		usermod -a -G "dialout" "$(logname)"
+		einfo "A new group, dialout is added." \
+			"Please re-login to apply this change."
+	fi
+}
diff --git a/chromeos-base/elan_i2chid_tools/Manifest b/chromeos-base/elan_i2chid_tools/Manifest
index 8026965c..a157d31 100644
--- a/chromeos-base/elan_i2chid_tools/Manifest
+++ b/chromeos-base/elan_i2chid_tools/Manifest
@@ -1 +1 @@
-DIST elan_i2chid_tools-1.12.tar.gz 72817 BLAKE2B 34f70de557d831ed985a4fbf239c48d5db4faaffe1a376df2d8d50d7aa75038dd086739ba2ef12835c0f7d4b224add151b8d1cdd1af27d33e6489438ab8019e2 SHA512 58eed96b363d7838388370a84e01613070211fc2fbebf0b3d703618c58479be3fb31f534a330dde5d67b4bede556211127c095ea394af8b87b0c10dfeba935ed
+DIST elan_i2chid_tools-1.14.tar.gz 73770 BLAKE2B c9c4090d9e3c2c58dec9816e03160d8f87815ea8927bfcd6f096328a456cd6d2a3865b1c2f45658a130cdac61a2c39cb14bd4bc0a06eab591ca92528906f634f SHA512 320ae408fd043c32a3d2f070abe6346ad786d5df443f898ce1c48f58f1d14de85a695eb26fb1d65c0dc30154dbe3c53c011e89caf13987cc4310ce0f2822ea4f
diff --git a/chromeos-base/elan_i2chid_tools/elan_i2chid_tools-1.12-r11.ebuild b/chromeos-base/elan_i2chid_tools/elan_i2chid_tools-1.14-r6.ebuild
similarity index 100%
rename from chromeos-base/elan_i2chid_tools/elan_i2chid_tools-1.12-r11.ebuild
rename to chromeos-base/elan_i2chid_tools/elan_i2chid_tools-1.14-r6.ebuild
diff --git a/chromeos-base/elan_i2chid_tools/files/fwid_mapping_table.txt b/chromeos-base/elan_i2chid_tools/files/fwid_mapping_table.txt
index 7c5116b..3f9f72a 100644
--- a/chromeos-base/elan_i2chid_tools/files/fwid_mapping_table.txt
+++ b/chromeos-base/elan_i2chid_tools/files/fwid_mapping_table.txt
@@ -1,14 +1,17 @@
 manufacturer.product,chrome_fwid,windows_fwid,
 04f3.2ca6,33f3,,
 06af.8fa4,3572,,
-06af.3d24,32e0,2e38,
+06af.3d24,,,
 06af.3d31,2fca,2e36,
 06af.3d32,,,
-06af.3d40,1fa5,,
+06af.3d40,,,
 06af.5c61,,,
 06af.8b81,,,
+06af.917e,3616,,
+06af.9b23,360e,,
 09e5.b109,3573,,
 09e5.2d08,1fa6,,
+09e5.2909,3216,,
 09e5.6609,,,
 09e5.7e08,328f,328d,
 09e5.da08,,,
@@ -16,18 +19,22 @@
 09e5.fa08,1eb9,,
 0dae.0214,3558,,
 0dae.0614,,,
-0dae.e814,32e4,2e3e,
+0dae.4a11,3615,,
+0dae.e814,,,
 0dae.e914,30e4,2e3e,
+0dae.d414,35a9,,
 0e6f.0413,1eb9,,
 1805.5405,,,
 26cf.c634,,,
 26cf.c734,,,
 2c05.5405,,,
+2c82.1212,3467,,
 2c82.2406,3463,,
 30e4.4e06,,,
 30e4.6306,,,
 3870.0a00,,,
 3870.4600,,,
 4c83.4e41,1eb9,,
+4d10.4c15,346c,,
 4e81.0001,3464,,
 f004.4005,,,
diff --git a/chromeos-base/epstps2iap/Manifest b/chromeos-base/epstps2iap/Manifest
index e38cd91..826d2e9 100644
--- a/chromeos-base/epstps2iap/Manifest
+++ b/chromeos-base/epstps2iap/Manifest
@@ -1 +1 @@
-DIST epstps2iap-1.3.tar.gz 13502 BLAKE2B 49a9c4cf8fe26d0947cb3eea77910450dce5e081b6da0f30c24bfce2b6419125f0504e7872e2d0054ca4a1ccc380ba5ba41a1c464febfd04088e8195d338e0a3 SHA512 39470eaa5d2fab36a0244e12eccc45124f9aba9e20c6b64d0909205dd0e77a0f3e95774365e6670a35d574ed9f9249c554d02e9b8b63ca242bcacbfc15d02499
+DIST epstps2iap-1.5.tar.gz 14008 BLAKE2B a9f30830a0b114293b7ff42063998688658ac84c81d292026b6ef574ec52fdb7fd40e08ff5b6ee560ea7bfd61ce3cdc50ed40395409d7ebb9566d74bcc8711f2 SHA512 a20d5d86dc62836ccd415ba0d7fce1a059cdabca01aa932e1bbcf29d21a21d6d44bb2fa061440fc1e1348f9c0567c1e6c752faf5676ed370b7b9b44961a7008b
\ No newline at end of file
diff --git a/chromeos-base/epstps2iap/epstps2iap-1.3-r1.ebuild b/chromeos-base/epstps2iap/epstps2iap-1.3-r1.ebuild
deleted file mode 100644
index 7ab9833..0000000
--- a/chromeos-base/epstps2iap/epstps2iap-1.3-r1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit toolchain-funcs
-
-DESCRIPTION="ELAN Standalone Trackpoint Firmware Update"
-GIT_TAG="v${PV}"
-HOMEPAGE="https://github.com/jinglewu/epstps2iap/"
-SRC_URI="https://github.com/jinglewu/epstps2iap/archive/${GIT_TAG}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-src_configure() {
-	tc-export CC
-}
-
-src_install() {
-	dosbin epstps2_updater
-}
diff --git a/chromeos-base/epstps2iap/epstps2iap-1.5-r1.ebuild b/chromeos-base/epstps2iap/epstps2iap-1.5-r1.ebuild
new file mode 100644
index 0000000..9715310
--- /dev/null
+++ b/chromeos-base/epstps2iap/epstps2iap-1.5-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit toolchain-funcs
+
+DESCRIPTION="ELAN Standalone Trackpoint Firmware Update"
+GIT_TAG="v${PV}"
+HOMEPAGE="https://github.com/jinglewu/epstps2iap/"
+SRC_URI="https://github.com/jinglewu/epstps2iap/archive/${GIT_TAG}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+src_configure() {
+	tc-export CC
+}
+
+src_install() {
+	dosbin epstps2_updater
+}
diff --git a/chromeos-base/factory-mini/factory-mini-0.0.1-r2184.ebuild b/chromeos-base/factory-mini/factory-mini-0.0.1-r2184.ebuild
deleted file mode 100644
index 97019de..0000000
--- a/chromeos-base/factory-mini/factory-mini-0.0.1-r2184.ebuild
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 2014 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.
-
-# factory-mini is a subset of the factory software that can
-# be used to run utilities like gooftool, hwid, and regcode, which may
-# be useful in the CrOS test environment.  For instance, this would
-# allow "gooftool probe" to be used to probe hardware components in
-# Moblab.
-#
-# We don't want to install the entire chromeos-factory package in the
-# test image, since it is quite large, so this package comprises a
-# small ".par" file (/usr/local/factory-mini/factory-mini.par)
-# containing the necessary subset of factory Python code, and symlinks
-# from /usr/local/bin to that file.
-
-EAPI=7
-CROS_WORKON_COMMIT="d8752e21dc6b41f37e2ab2d5db97eaf1bfb2514e"
-CROS_WORKON_TREE="0b71b982ad2195029b3bd1de56bc77376f9e8d3c"
-CROS_WORKON_PROJECT="chromiumos/platform/factory"
-CROS_WORKON_LOCALNAME="platform/factory"
-PYTHON_COMPAT=( python3_{4,5,6,7} )
-
-inherit cros-workon python-r1
-
-# TODO(b/155841952): Merge installer and factory-mini.par
-
-# External dependencies (sync with factory.ebuild)
-LOCAL_MIRROR_URL="http://commondatastorage.googleapis.com/chromeos-localmirror/"
-WEBGL_AQUARIUM_URI="${LOCAL_MIRROR_URL}/distfiles/webgl-aquarium-20130524.tar.bz2"
-SRC_URI="${WEBGL_AQUARIUM_URI}"
-
-DESCRIPTION="Subset of factory software to be installed in test images"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="${PYTHON_DEPS}
-	dev-python/jsonrpclib:=
-	dev-python/pyyaml:=
-	dev-python/protobuf-python:=
-	virtual/chromeos-bsp-factory:=
-	virtual/chromeos-regions:=
-"
-
-pkg_setup() {
-	cros-workon_pkg_setup
-	python_setup
-}
-
-src_unpack() {
-	cros-workon_src_unpack
-	default
-}
-
-src_configure() {
-	default
-
-	# Export build settings
-	export PYTHON="${EPYTHON}"
-	export PYTHON_SITEDIR="${ESYSROOT}$(python_get_sitedir)"
-	export SRCROOT="${CROS_WORKON_SRCROOT}"
-	export FROM_EBUILD=1
-
-	# Export factory toolkit build settings
-	export BOARD="${SYSROOT##*/}"
-	export TARGET_DIR=/usr/local/factory
-	export WEBGL_AQUARIUM_DIR="${WORKDIR}/webgl_aquarium_static"
-}
-
-src_compile() {
-	emake par MAKE_PAR_ARGS=--mini PAR_NAME=factory-mini.par
-
-	emake toolkit
-}
-
-src_install() {
-	exeinto /usr/local/factory-mini
-	doexe build/par/factory-mini.par
-
-	# Sanity check: make sure we can run gooftool --help with only
-	# the -mini.par file.
-	build/par/factory-mini.par gooftool --help |
-		grep -q "^usage: gooftool" || die
-
-	# Install only symlinks for binaries usable with factory-mini.par.
-	"${S}/bin/install_symlinks" \
-		--mode mini --target ../factory-mini/factory-mini.par \
-		"${D}"/usr/local/bin || die
-
-	exeinto /usr/local/factory-toolkit
-	doexe build/install_factory_toolkit.run
-}
diff --git a/chromeos-base/factory-mini/factory-mini-0.0.1-r2300.ebuild b/chromeos-base/factory-mini/factory-mini-0.0.1-r2300.ebuild
new file mode 100644
index 0000000..0f6c34a
--- /dev/null
+++ b/chromeos-base/factory-mini/factory-mini-0.0.1-r2300.ebuild
@@ -0,0 +1,94 @@
+# Copyright 2014 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.
+
+# factory-mini is a subset of the factory software that can
+# be used to run utilities like gooftool, hwid, and regcode, which may
+# be useful in the CrOS test environment.  For instance, this would
+# allow "gooftool probe" to be used to probe hardware components in
+# Moblab.
+#
+# We don't want to install the entire chromeos-factory package in the
+# test image, since it is quite large, so this package comprises a
+# small ".par" file (/usr/local/factory-mini/factory-mini.par)
+# containing the necessary subset of factory Python code, and symlinks
+# from /usr/local/bin to that file.
+
+EAPI=7
+CROS_WORKON_COMMIT="24c2d1e193a48d85e1baf6b86cd7192f15c896fa"
+CROS_WORKON_TREE="3adee3ad3b8a9bf5185c26f35ff544e7319a0d3a"
+CROS_WORKON_PROJECT="chromiumos/platform/factory"
+CROS_WORKON_LOCALNAME="platform/factory"
+PYTHON_COMPAT=( python3_{4,5,6,7} )
+
+inherit cros-workon python-r1
+
+# TODO(b/155841952): Merge installer and factory-mini.par
+
+# External dependencies (sync with factory.ebuild)
+LOCAL_MIRROR_URL="http://commondatastorage.googleapis.com/chromeos-localmirror/"
+WEBGL_AQUARIUM_URI="${LOCAL_MIRROR_URL}/distfiles/webgl-aquarium-20130524.tar.bz2"
+SRC_URI="${WEBGL_AQUARIUM_URI}"
+
+DESCRIPTION="Subset of factory software to be installed in test images"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND="${PYTHON_DEPS}
+	dev-python/jsonrpclib:=
+	dev-python/pyyaml:=
+	dev-python/protobuf-python:=
+	virtual/chromeos-bsp-factory:=
+	virtual/chromeos-regions:=
+"
+
+pkg_setup() {
+	cros-workon_pkg_setup
+	python_setup
+}
+
+src_unpack() {
+	cros-workon_src_unpack
+	default
+}
+
+src_configure() {
+	default
+
+	# Export build settings
+	export PYTHON="${EPYTHON}"
+	export PYTHON_SITEDIR="${ESYSROOT}$(python_get_sitedir)"
+	export SRCROOT="${CROS_WORKON_SRCROOT}"
+	export FROM_EBUILD=1
+
+	# Export factory toolkit build settings
+	export BOARD="${SYSROOT##*/}"
+	export TARGET_DIR=/usr/local/factory
+	export WEBGL_AQUARIUM_DIR="${WORKDIR}/webgl_aquarium_static"
+}
+
+src_compile() {
+	emake par MAKE_PAR_ARGS=--mini PAR_NAME=factory-mini.par
+
+	emake toolkit
+}
+
+src_install() {
+	exeinto /usr/local/factory-mini
+	doexe build/par/factory-mini.par
+
+	# Sanity check: make sure we can run gooftool --help with only
+	# the -mini.par file.
+	build/par/factory-mini.par gooftool --help |
+		grep -q "^usage: gooftool" || die
+
+	# Install only symlinks for binaries usable with factory-mini.par.
+	"${S}/bin/install_symlinks" \
+		--mode mini --target ../factory-mini/factory-mini.par \
+		"${D}"/usr/local/bin || die
+
+	exeinto /usr/local/factory-toolkit
+	doexe build/install_factory_toolkit.run
+}
diff --git a/chromeos-base/factory/factory-0.2.0-r2116.ebuild b/chromeos-base/factory/factory-0.2.0-r2116.ebuild
deleted file mode 100644
index 53496b8..0000000
--- a/chromeos-base/factory/factory-0.2.0-r2116.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="d8752e21dc6b41f37e2ab2d5db97eaf1bfb2514e"
-CROS_WORKON_TREE="0b71b982ad2195029b3bd1de56bc77376f9e8d3c"
-CROS_WORKON_PROJECT="chromiumos/platform/factory"
-CROS_WORKON_LOCALNAME="platform/factory"
-CROS_WORKON_OUTOFTREE_BUILD=1
-
-# TODO(crbug.com/999876): Upgrade to Python 3 at some point.
-PYTHON_COMPAT=( python3_{4,5,6,7} )
-
-inherit cros-workon python-r1 cros-constants cros-factory
-
-# External dependencies
-LOCAL_MIRROR_URL=http://commondatastorage.googleapis.com/chromeos-localmirror/
-WEBGL_AQUARIUM_URI=${LOCAL_MIRROR_URL}/distfiles/webgl-aquarium-20130524.tar.bz2
-
-DESCRIPTION="Chrome OS Factory Software Platform"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/factory/"
-SRC_URI="${WEBGL_AQUARIUM_URI}"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-DEPEND="virtual/chromeos-bsp-factory:=
-	virtual/chromeos-regions:=
-	dev-python/jsonrpclib:=
-	dev-python/pyyaml:=
-	dev-python/protobuf-python:=
-"
-
-BUILD_DIR="${WORKDIR}/build"
-
-pkg_setup() {
-	cros-workon_pkg_setup
-	python_setup
-}
-
-src_prepare() {
-	default
-	# Need the lddtree from the chromite dir.
-	export PATH="${CHROMITE_BIN_DIR}:${PATH}"
-}
-
-src_configure() {
-	default
-
-	# Export build settings
-	export BOARD="${SYSROOT##*/}"
-	export OUTOFTREE_BUILD="${CROS_WORKON_OUTOFTREE_BUILD}"
-	export PYTHON="${EPYTHON}"
-	export PYTHON_SITEDIR="${ESYSROOT}$(python_get_sitedir)"
-	export SRCROOT="${CROS_WORKON_SRCROOT}"
-	export TARGET_DIR=/usr/local/factory
-	export WEBGL_AQUARIUM_DIR="${WORKDIR}/webgl_aquarium_static"
-	export FROM_EBUILD=1
-
-	# Support out-of-tree build.
-	export BUILD_DIR="${WORKDIR}/build"
-
-	export BUNDLE_DIR="${WORKDIR}/bundle"
-}
-
-src_unpack() {
-	cros-workon_src_unpack
-	default
-}
-
-src_compile() {
-	emake bundle
-	emake project-toolkits
-}
-
-src_test() {
-	emake ebuild-test
-}
-
-src_install() {
-	# The path of bundle is defined in chromite/cbuildbot/commands.py
-	local bundle_dest
-	bundle_dest="${ED}/usr/local/factory"
-	mkdir -p "${bundle_dest}"
-	mv "${WORKDIR}/bundle" "${bundle_dest}"
-
-	exeinto "${TARGET_DIR}/project_toolkits"
-	local toolkit
-	shopt -s nullglob
-	for toolkit in "${BUILD_DIR}/"*"_install_factory_toolkit.run"; do
-		doexe "${toolkit}"
-	done
-	shopt -u nullglob
-
-	insinto "${CROS_FACTORY_BOARD_RESOURCES_DIR}"
-	doins "${BUILD_DIR}/resource/installer.tar"
-}
diff --git a/chromeos-base/factory/factory-0.2.0-r2233.ebuild b/chromeos-base/factory/factory-0.2.0-r2233.ebuild
new file mode 100644
index 0000000..956c86c
--- /dev/null
+++ b/chromeos-base/factory/factory-0.2.0-r2233.ebuild
@@ -0,0 +1,107 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="24c2d1e193a48d85e1baf6b86cd7192f15c896fa"
+CROS_WORKON_TREE="3adee3ad3b8a9bf5185c26f35ff544e7319a0d3a"
+CROS_WORKON_PROJECT="chromiumos/platform/factory"
+CROS_WORKON_LOCALNAME="platform/factory"
+CROS_WORKON_OUTOFTREE_BUILD=1
+
+# TODO(crbug.com/999876): Upgrade to Python 3 at some point.
+PYTHON_COMPAT=( python3_{4,5,6,7} )
+
+inherit cros-workon python-r1 cros-constants cros-factory
+
+# External dependencies
+LOCAL_MIRROR_URL=http://commondatastorage.googleapis.com/chromeos-localmirror/
+WEBGL_AQUARIUM_URI=${LOCAL_MIRROR_URL}/distfiles/webgl-aquarium-20130524.tar.bz2
+
+DESCRIPTION="Chrome OS Factory Software Platform"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/factory/"
+SRC_URI="${WEBGL_AQUARIUM_URI}"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+DEPEND="virtual/chromeos-bsp-factory:=
+	virtual/chromeos-regions:=
+	dev-python/jsonrpclib:=
+	dev-python/pyyaml:=
+	dev-python/protobuf-python:=
+"
+
+BUILD_DIR="${WORKDIR}/build"
+
+pkg_setup() {
+	cros-workon_pkg_setup
+	python_setup
+}
+
+src_prepare() {
+	default
+	# Need the lddtree from the chromite dir.
+	export PATH="${CHROMITE_BIN_DIR}:${PATH}"
+}
+
+src_configure() {
+	default
+
+	# Export build settings
+	export BOARD="${SYSROOT##*/}"
+	export OUTOFTREE_BUILD="${CROS_WORKON_OUTOFTREE_BUILD}"
+	export PYTHON="${EPYTHON}"
+	export PYTHON_SITEDIR="${ESYSROOT}$(python_get_sitedir)"
+	export SRCROOT="${CROS_WORKON_SRCROOT}"
+	export TARGET_DIR=/usr/local/factory
+	export WEBGL_AQUARIUM_DIR="${WORKDIR}/webgl_aquarium_static"
+	export FROM_EBUILD=1
+
+	# Support out-of-tree build.
+	export BUILD_DIR="${WORKDIR}/build"
+
+	export BUNDLE_DIR="${WORKDIR}/bundle"
+}
+
+src_unpack() {
+	cros-workon_src_unpack
+	default
+}
+
+src_compile() {
+	emake bundle
+	emake project-toolkits
+}
+
+src_test() {
+	emake ebuild-test
+}
+
+src_install() {
+	# The path of bundle is defined in chromite/cbuildbot/commands.py
+	local bundle_dest
+	bundle_dest="${ED}/usr/local/factory"
+	mkdir -p "${bundle_dest}"
+	mv "${WORKDIR}/bundle" "${bundle_dest}"
+
+	shopt -s nullglob
+	local list_of_toolkits=("${BUILD_DIR}/"*"_install_factory_toolkit.run")
+	shopt -u nullglob
+	if [[ "${#list_of_toolkits[@]}" -ne 0 ]]; then
+		local GZ=pigz
+		type pigz >/dev/null 2>&1 || GZ=gzip
+
+		local archive_path="${WORKDIR}/factory_project_toolkits.tar.gz"
+		local list_of_toolkit_names=()
+		local toolkit
+		for toolkit in "${list_of_toolkits[@]}"; do
+			list_of_toolkit_names+=( "$(basename "${toolkit}")" )
+		done
+		tar -I "${GZ}" -cvf "${archive_path}" \
+			-C "${BUILD_DIR}" "${list_of_toolkit_names[@]}" || die
+		exeinto "${TARGET_DIR}/project_toolkits"
+		doexe "${archive_path}"
+	fi
+
+	insinto "${CROS_FACTORY_BOARD_RESOURCES_DIR}"
+	doins "${BUILD_DIR}/resource/installer.tar"
+}
diff --git a/chromeos-base/factory/factory-9999.ebuild b/chromeos-base/factory/factory-9999.ebuild
index ef5deb8..e7a3dbf 100644
--- a/chromeos-base/factory/factory-9999.ebuild
+++ b/chromeos-base/factory/factory-9999.ebuild
@@ -81,13 +81,24 @@
 	mkdir -p "${bundle_dest}"
 	mv "${WORKDIR}/bundle" "${bundle_dest}"
 
-	exeinto "${TARGET_DIR}/project_toolkits"
-	local toolkit
 	shopt -s nullglob
-	for toolkit in "${BUILD_DIR}/"*"_install_factory_toolkit.run"; do
-		doexe "${toolkit}"
-	done
+	local list_of_toolkits=("${BUILD_DIR}/"*"_install_factory_toolkit.run")
 	shopt -u nullglob
+	if [[ "${#list_of_toolkits[@]}" -ne 0 ]]; then
+		local GZ=pigz
+		type pigz >/dev/null 2>&1 || GZ=gzip
+
+		local archive_path="${WORKDIR}/factory_project_toolkits.tar.gz"
+		local list_of_toolkit_names=()
+		local toolkit
+		for toolkit in "${list_of_toolkits[@]}"; do
+			list_of_toolkit_names+=( "$(basename "${toolkit}")" )
+		done
+		tar -I "${GZ}" -cvf "${archive_path}" \
+			-C "${BUILD_DIR}" "${list_of_toolkit_names[@]}" || die
+		exeinto "${TARGET_DIR}/project_toolkits"
+		doexe "${archive_path}"
+	fi
 
 	insinto "${CROS_FACTORY_BOARD_RESOURCES_DIR}"
 	doins "${BUILD_DIR}/resource/installer.tar"
diff --git a/chromeos-base/factory_installer/factory_installer-0.0.1-r153.ebuild b/chromeos-base/factory_installer/factory_installer-0.0.1-r153.ebuild
deleted file mode 100644
index dca3ba9..0000000
--- a/chromeos-base/factory_installer/factory_installer-0.0.1-r153.ebuild
+++ /dev/null
@@ -1,182 +0,0 @@
-# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="a65b6843f07d1050f0add6b7a562137d96626a4b"
-CROS_WORKON_TREE="4642a1742fa6ffde33b68b83d1e684a2e95980bd"
-CROS_WORKON_PROJECT="chromiumos/platform/factory_installer"
-CROS_WORKON_LOCALNAME="platform/factory_installer"
-
-inherit cros-sanitizers cros-workon toolchain-funcs cros-factory
-
-DESCRIPTION="Chrome OS Factory Installer"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/factory_installer/"
-SRC_URI=""
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-USE_PREFIX="tty_console_"
-ALL_PORTS=(
-	ttyAMA{0..5}
-	ttyHSL{0..5}
-	ttyMSM{0..5}
-	ttymxc{0..5}
-	ttyO{0..5}
-	ttyS{0..5}
-	ttySAC{0..5}
-	ttyUSB{0..5}
-	tty{0..5}
-)
-IUSE_PORTS="${ALL_PORTS[@]/#/${USE_PREFIX}}"
-IUSE="${IUSE_PORTS} -asan test"
-
-# Factory install images operate by downloading content from a
-# server.  In some cases, the downloaded content contains programs
-# to be executed.  The downloaded programs may not be complete;
-# they could have dependencies on shared libraries or commands
-# that must be present in the factory install image.
-#
-# PROVIDED_DEPEND captures a minimal set of packages promised to be
-# provided for use by any downloaded program.  The list must contain
-# any package depended on by any downloaded program.
-#
-# Currently, the only downloaded program is the firmware installer;
-# the dependencies below are gleaned from eclass/cros-firmware.eclass.
-# Changes in that eclass must be reflected here.
-PROVIDED_DEPEND="
-	app-arch/gzip
-	app-arch/sharutils
-	app-arch/tar
-	app-misc/figlet
-	chromeos-base/chromeos-config-tools
-	chromeos-base/vboot_reference
-	sys-apps/mosys
-	sys-apps/util-linux"
-
-# Tests are run on the build host and execute the "secure-wipe.sh" from
-# the build directory.  Unfortunately that script, in turn, includes
-# "/usr/share/misc/chromeos-common.sh" via an absolute path which requires
-# the script to be present on the build host itself.  Let's make sure it's
-# there.
-BDEPEND="
-	test? ( chromeos-base/chromeos-common-script )"
-
-# COMMON_DEPEND tracks dependencies common to both DEPEND and
-# RDEPEND.
-#
-# For chromeos-init there's a runtime dependency because the factory
-# jobs depend on upstart jobs in that package.  There's a build-time
-# dependency because pkg_postinst in this ebuild edits specifc jobs
-# in that package.
-COMMON_DEPEND="
-	chromeos-base/chromeos-init:=
-	!chromeos-base/chromeos-factoryinstall
-	!chromeos-base/chromeos-factory"
-
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/factory:=
-	test? ( chromeos-base/secure-wipe:= )
-	x86? ( sys-boot/syslinux:= )"
-
-RDEPEND="${COMMON_DEPEND}
-	${PROVIDED_DEPEND}
-	app-arch/lbzip2
-	app-arch/pigz
-	app-misc/jq
-	chromeos-base/chromeos-installer
-	chromeos-base/chromeos-storage-info
-	chromeos-base/ec-utils
-	chromeos-base/secure-wipe
-	chromeos-base/vpd
-	dev-util/stressapptest
-	net-misc/htpdate
-	net-wireless/iw
-	sys-apps/flashrom
-	sys-apps/net-tools
-	sys-apps/upstart
-	sys-apps/util-linux
-	sys-block/parted
-	sys-fs/e2fsprogs"
-
-
-src_configure() {
-	sanitizers-setup-env
-	default
-}
-
-src_compile() {
-	tc-export AR CC CXX RANLIB
-	emake
-}
-
-src_test() {
-	tests/secure-wipe.sh || die "integration test failed"
-}
-
-src_install() {
-	local service_file="factory_tty.sh"
-	local tmp_service_file="${T}/${service_file}"
-	local scripts=(*.sh)
-	scripts=(${scripts[@]#${service_file}})
-
-	if [[ -n "${TTY_CONSOLE}" ]]; then
-		local item ports=()
-		for item in ${IUSE_PORTS}; do
-			if use ${item}; then
-				ports+=("${item#${USE_PREFIX}}")
-			fi
-		done
-		sed -e "s/^TTY_CONSOLE=.*$/TTY_CONSOLE=\"${ports[*]}\"/" \
-			"${service_file}" >"${tmp_service_file}" || \
-			die "Failed to change TTY_CONSOLE"
-		service_file="${tmp_service_file}"
-		einfo "Changed TTY_CONSOLE to ${ports[*]}."
-	fi
-	dosbin "${scripts[@]}" "${service_file}"
-
-	insinto /usr/share/factory_installer/tpm
-	doins tpm/*.sh
-
-	insinto /usr/share/factory_installer/init
-	doins init/*.conf
-
-	insinto /root
-	newins $FILESDIR/dot.factory_installer .factory_installer
-	# install PMBR code
-	case "$(tc-arch)" in
-		"x86")
-		einfo "using x86 PMBR code from syslinux"
-		PMBR_SOURCE="${ROOT}/usr/share/syslinux/gptmbr.bin"
-		;;
-		*)
-		einfo "using default PMBR code"
-		PMBR_SOURCE=$FILESDIR/dot.pmbr_code
-		;;
-	esac
-	newins $PMBR_SOURCE .pmbr_code
-
-	einfo "Install resources from chromeos-base/factory."
-	factory_unpack_resource installer "${ED}/usr"
-
-	if [[ -f "$(factory_get_resource_archive_path installer-board)" ]]; then
-		einfo "Install resources from chromeos-base/factory-board."
-		factory_unpack_resource installer-board "${ED}"
-	fi
-}
-
-pkg_postinst() {
-	[[ "$(cros_target)" != "target_image" ]] && return 0
-
-	STATEFUL="${ROOT}/usr/local"
-	STATEFUL_LSB="${STATEFUL}/etc/lsb-factory"
-
-	: "${FACTORY_SERVER:=$(hostname -f)}"
-
-	mkdir -p "${STATEFUL}/etc"
-	sudo dd of="${STATEFUL_LSB}" <<EOF
-CHROMEOS_AUSERVER=http://${FACTORY_SERVER}:8080/update
-CHROMEOS_DEVSERVER=http://${FACTORY_SERVER}:8080/update
-FACTORY_INSTALL=1
-HTTP_SERVER_OVERRIDE=true
-EOF
-}
diff --git a/chromeos-base/factory_installer/factory_installer-0.0.1-r163.ebuild b/chromeos-base/factory_installer/factory_installer-0.0.1-r163.ebuild
new file mode 100644
index 0000000..6e1a4ee
--- /dev/null
+++ b/chromeos-base/factory_installer/factory_installer-0.0.1-r163.ebuild
@@ -0,0 +1,182 @@
+# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="c55a3a7c01391baa58fc2c20648a0bc53ee81d1d"
+CROS_WORKON_TREE="fecdfff54111bec9c51f9a5473c304dc3a9b11ea"
+CROS_WORKON_PROJECT="chromiumos/platform/factory_installer"
+CROS_WORKON_LOCALNAME="platform/factory_installer"
+
+inherit cros-sanitizers cros-workon toolchain-funcs cros-factory
+
+DESCRIPTION="Chrome OS Factory Installer"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/factory_installer/"
+SRC_URI=""
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+USE_PREFIX="tty_console_"
+ALL_PORTS=(
+	ttyAMA{0..5}
+	ttyHSL{0..5}
+	ttyMSM{0..5}
+	ttymxc{0..5}
+	ttyO{0..5}
+	ttyS{0..5}
+	ttySAC{0..5}
+	ttyUSB{0..5}
+	tty{0..5}
+)
+IUSE_PORTS="${ALL_PORTS[@]/#/${USE_PREFIX}}"
+IUSE="${IUSE_PORTS} -asan test"
+
+# Factory install images operate by downloading content from a
+# server.  In some cases, the downloaded content contains programs
+# to be executed.  The downloaded programs may not be complete;
+# they could have dependencies on shared libraries or commands
+# that must be present in the factory install image.
+#
+# PROVIDED_DEPEND captures a minimal set of packages promised to be
+# provided for use by any downloaded program.  The list must contain
+# any package depended on by any downloaded program.
+#
+# Currently, the only downloaded program is the firmware installer;
+# the dependencies below are gleaned from eclass/cros-firmware.eclass.
+# Changes in that eclass must be reflected here.
+PROVIDED_DEPEND="
+	app-arch/gzip
+	app-arch/sharutils
+	app-arch/tar
+	app-misc/figlet
+	chromeos-base/chromeos-config-tools
+	chromeos-base/vboot_reference
+	sys-apps/mosys
+	sys-apps/util-linux"
+
+# Tests are run on the build host and execute the "secure-wipe.sh" from
+# the build directory.  Unfortunately that script, in turn, includes
+# "/usr/share/misc/chromeos-common.sh" via an absolute path which requires
+# the script to be present on the build host itself.  Let's make sure it's
+# there.
+BDEPEND="
+	test? ( chromeos-base/chromeos-common-script )"
+
+# COMMON_DEPEND tracks dependencies common to both DEPEND and
+# RDEPEND.
+#
+# For chromeos-init there's a runtime dependency because the factory
+# jobs depend on upstart jobs in that package.  There's a build-time
+# dependency because pkg_postinst in this ebuild edits specifc jobs
+# in that package.
+COMMON_DEPEND="
+	chromeos-base/chromeos-init:=
+	!chromeos-base/chromeos-factoryinstall
+	!chromeos-base/chromeos-factory"
+
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/factory:=
+	test? ( chromeos-base/secure-wipe:= )
+	x86? ( sys-boot/syslinux:= )"
+
+RDEPEND="${COMMON_DEPEND}
+	${PROVIDED_DEPEND}
+	app-arch/lbzip2
+	app-arch/pigz
+	app-misc/jq
+	chromeos-base/chromeos-installer
+	chromeos-base/chromeos-storage-info
+	chromeos-base/ec-utils
+	chromeos-base/secure-wipe
+	chromeos-base/vpd
+	dev-util/stressapptest
+	net-misc/htpdate
+	net-wireless/iw
+	sys-apps/flashrom
+	sys-apps/net-tools
+	sys-apps/upstart
+	sys-apps/util-linux
+	sys-block/parted
+	sys-fs/e2fsprogs"
+
+
+src_configure() {
+	sanitizers-setup-env
+	default
+}
+
+src_compile() {
+	tc-export AR CC CXX RANLIB
+	emake
+}
+
+src_test() {
+	tests/secure-wipe.sh || die "integration test failed"
+}
+
+src_install() {
+	local service_file="factory_tty.sh"
+	local tmp_service_file="${T}/${service_file}"
+	local scripts=(*.sh)
+	scripts=(${scripts[@]#${service_file}})
+
+	if [[ -n "${TTY_CONSOLE}" ]]; then
+		local item ports=()
+		for item in ${IUSE_PORTS}; do
+			if use ${item}; then
+				ports+=("${item#${USE_PREFIX}}")
+			fi
+		done
+		sed -e "s/^TTY_CONSOLE=.*$/TTY_CONSOLE=\"${ports[*]}\"/" \
+			"${service_file}" >"${tmp_service_file}" || \
+			die "Failed to change TTY_CONSOLE"
+		service_file="${tmp_service_file}"
+		einfo "Changed TTY_CONSOLE to ${ports[*]}."
+	fi
+	dosbin "${scripts[@]}" "${service_file}"
+
+	insinto /usr/share/factory_installer/tpm
+	doins tpm/*.sh
+
+	insinto /usr/share/factory_installer/init
+	doins init/*.conf
+
+	insinto /root
+	newins $FILESDIR/dot.factory_installer .factory_installer
+	# install PMBR code
+	case "$(tc-arch)" in
+		"x86")
+		einfo "using x86 PMBR code from syslinux"
+		PMBR_SOURCE="${ROOT}/usr/share/syslinux/gptmbr.bin"
+		;;
+		*)
+		einfo "using default PMBR code"
+		PMBR_SOURCE=$FILESDIR/dot.pmbr_code
+		;;
+	esac
+	newins $PMBR_SOURCE .pmbr_code
+
+	einfo "Install resources from chromeos-base/factory."
+	factory_unpack_resource installer "${ED}/usr"
+
+	if [[ -f "$(factory_get_resource_archive_path installer-board)" ]]; then
+		einfo "Install resources from chromeos-base/factory-board."
+		factory_unpack_resource installer-board "${ED}"
+	fi
+}
+
+pkg_postinst() {
+	[[ "$(cros_target)" != "target_image" ]] && return 0
+
+	STATEFUL="${ROOT}/usr/local"
+	STATEFUL_LSB="${STATEFUL}/etc/lsb-factory"
+
+	: "${FACTORY_SERVER:=$(hostname -f)}"
+
+	mkdir -p "${STATEFUL}/etc"
+	sudo dd of="${STATEFUL_LSB}" <<EOF
+CHROMEOS_AUSERVER=http://${FACTORY_SERVER}:8080/update
+CHROMEOS_DEVSERVER=http://${FACTORY_SERVER}:8080/update
+FACTORY_INSTALL=1
+HTTP_SERVER_OVERRIDE=true
+EOF
+}
diff --git a/chromeos-base/factory_runtime_probe/factory_runtime_probe-0.0.1-r24.ebuild b/chromeos-base/factory_runtime_probe/factory_runtime_probe-0.0.1-r24.ebuild
deleted file mode 100644
index ab73f2f..0000000
--- a/chromeos-base/factory_runtime_probe/factory_runtime_probe-0.0.1-r24.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="67f002ffc6f157b2d2c102d78f76b8ae8cc309d8"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "aa0612733aca2d5ffa65470f07408228b473ebdb" "5bcd4487aea45b91806e5db9af44e6b3d9290c13" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk chromeos-config runtime_probe .gn"
-
-PLATFORM_SUBDIR="runtime_probe"
-
-inherit cros-workon platform
-
-DESCRIPTION="Device component probe tool **for factory environment**."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/runtime_probe/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros-debug generated_cros_config unibuild +factory_runtime_probe"
-
-# TODO(yhong): Extract common parts with runtime_probe-9999.ebuild to a shared
-#     eclass.
-
-COMMON_DEPEND="
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config:= )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
-	chromeos-base/chromeos-config-tools:=
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/ec-utils
-"
-
-# Add vboot_reference as build time dependency to read cros_debug status
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/shill-client:=
-	chromeos-base/system_api:=
-	chromeos-base/vboot_reference:=
-"
-
-pkg_setup() {
-	cros-workon_pkg_setup
-
-	# Assert that the package is not "directly" installed into Chrome OS
-	# images.  We currently only anticipate that files introduced by this
-	# package being used as the source materials for other packages.
-	if [[ "$(cros_target)" != "board_sysroot" ]]; then
-		die "${PN} should never be installed into Chrome OS images directly."
-	fi
-}
-
-src_install() {
-	dobin "${OUT}/factory_runtime_probe"
-	dobin "${OUT}/factory_runtime_probe_installer"
-}
diff --git a/chromeos-base/factory_runtime_probe/factory_runtime_probe-0.0.1-r95.ebuild b/chromeos-base/factory_runtime_probe/factory_runtime_probe-0.0.1-r95.ebuild
new file mode 100644
index 0000000..fc5fec7
--- /dev/null
+++ b/chromeos-base/factory_runtime_probe/factory_runtime_probe-0.0.1-r95.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "c49e61abb0d60510e8ca41e657656cdd950c50e9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk chromeos-config runtime_probe .gn"
+
+PLATFORM_SUBDIR="runtime_probe"
+
+inherit cros-workon cros-unibuild platform
+
+DESCRIPTION="Device component probe tool **for factory environment**."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/runtime_probe/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cros-debug +factory_runtime_probe"
+
+# TODO(yhong): Extract common parts with runtime_probe-9999.ebuild to a shared
+#     eclass.
+
+COMMON_DEPEND="
+	chromeos-base/chromeos-config-tools:=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/ec-utils
+"
+
+# Add vboot_reference as build time dependency to read cros_debug status
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/debugd-client:=
+	chromeos-base/shill-client:=
+	chromeos-base/system_api:=
+	chromeos-base/vboot_reference:=
+"
+
+pkg_setup() {
+	cros-workon_pkg_setup
+
+	# Assert that the package is not "directly" installed into Chrome OS
+	# images.  We currently only anticipate that files introduced by this
+	# package being used as the source materials for other packages.
+	if [[ "$(cros_target)" != "board_sysroot" ]]; then
+		die "${PN} should never be installed into Chrome OS images directly."
+	fi
+}
+
+src_install() {
+	dobin "${OUT}/factory_runtime_probe"
+	dobin "${OUT}/factory_runtime_probe_installer"
+}
diff --git a/chromeos-base/factory_runtime_probe/factory_runtime_probe-9999.ebuild b/chromeos-base/factory_runtime_probe/factory_runtime_probe-9999.ebuild
index 943bd04..6b32d57 100644
--- a/chromeos-base/factory_runtime_probe/factory_runtime_probe-9999.ebuild
+++ b/chromeos-base/factory_runtime_probe/factory_runtime_probe-9999.ebuild
@@ -11,23 +11,19 @@
 
 PLATFORM_SUBDIR="runtime_probe"
 
-inherit cros-workon platform
+inherit cros-workon cros-unibuild platform
 
 DESCRIPTION="Device component probe tool **for factory environment**."
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/runtime_probe/"
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="cros-debug generated_cros_config unibuild +factory_runtime_probe"
+IUSE="cros-debug +factory_runtime_probe"
 
 # TODO(yhong): Extract common parts with runtime_probe-9999.ebuild to a shared
 #     eclass.
 
 COMMON_DEPEND="
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config:= )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
 	chromeos-base/chromeos-config-tools:=
 "
 
@@ -38,6 +34,7 @@
 
 # Add vboot_reference as build time dependency to read cros_debug status
 DEPEND="${COMMON_DEPEND}
+	chromeos-base/debugd-client:=
 	chromeos-base/shill-client:=
 	chromeos-base/system_api:=
 	chromeos-base/vboot_reference:=
diff --git a/chromeos-base/featured/OWNERS b/chromeos-base/featured/OWNERS
new file mode 100644
index 0000000..e43ac81
--- /dev/null
+++ b/chromeos-base/featured/OWNERS
@@ -0,0 +1,2 @@
+mutexlox@chromium.org
+joelaf@google.com
diff --git a/chromeos-base/featured/featured-0.0.1-r11.ebuild b/chromeos-base/featured/featured-0.0.1-r11.ebuild
new file mode 100644
index 0000000..0a65cf5
--- /dev/null
+++ b/chromeos-base/featured/featured-0.0.1-r11.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "d15456cdcdb891b358e4f18984bdbe147c6ba380" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk featured .gn"
+
+PLATFORM_SUBDIR="featured"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Chrome OS feature management service"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/featured/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+DEPEND="
+	chromeos-base/system_api:=
+	sys-apps/dbus:="
+
+src_install() {
+	into /
+	dosbin "${OUT}"/featured
+
+	# Install DBus configuration.
+	insinto /etc/dbus-1/system.d
+	doins share/org.chromium.featured.conf
+
+	insinto /etc/init
+	doins share/featured.conf share/platform-features.json
+}
diff --git a/chromeos-base/featured/featured-9999.ebuild b/chromeos-base/featured/featured-9999.ebuild
new file mode 100644
index 0000000..73abfec
--- /dev/null
+++ b/chromeos-base/featured/featured-9999.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk featured .gn"
+
+PLATFORM_SUBDIR="featured"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Chrome OS feature management service"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/featured/"
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+
+DEPEND="
+	chromeos-base/system_api:=
+	sys-apps/dbus:="
+
+src_install() {
+	into /
+	dosbin "${OUT}"/featured
+
+	# Install DBus configuration.
+	insinto /etc/dbus-1/system.d
+	doins share/org.chromium.featured.conf
+
+	insinto /etc/init
+	doins share/featured.conf share/platform-features.json
+}
diff --git a/chromeos-base/federated-service/federated-service-0.0.1-r45.ebuild b/chromeos-base/federated-service/federated-service-0.0.1-r45.ebuild
new file mode 100644
index 0000000..ed5dba5
--- /dev/null
+++ b/chromeos-base/federated-service/federated-service-0.0.1-r45.ebuild
@@ -0,0 +1,73 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "1bf7db96baae8a5df2f0ac78b63f39f9b3d2ff5e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk federated .gn"
+
+PLATFORM_SUBDIR="federated"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Federated Computation service for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/federated"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+	dev-db/sqlite:=
+	chromeos-base/dlcservice-client:=
+	chromeos-base/session_manager-client:=
+	chromeos-base/system_api:=
+	sys-cluster/fcp:=
+"
+
+DEPEND="
+	${RDEPEND}
+"
+
+pkg_setup() {
+	# Has to be done in pkg_setup() instead of pkg_preinst() since
+	# src_install() needs the federated-service user and group.
+	enewuser "federated-service"
+	enewgroup "federated-service"
+	cros-workon_pkg_setup
+}
+
+src_install() {
+	dobin "${OUT}"/federated_service
+
+	# Install upstart configuration.
+	insinto /etc/init
+	doins init/*.conf
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	newins "seccomp/federated_service-seccomp-${ARCH}.policy" federated_service-seccomp.policy
+
+	# Install D-Bus configuration file.
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.Federated.conf
+
+	# Install D-Bus service activation configuration.
+	insinto /usr/share/dbus-1/system-services
+	doins dbus/org.chromium.Federated.service
+
+	# Storage path for examples, will be mounted as
+	# /run/daemon-store/federated/<user_hash> after user logs in.
+	local daemon_store="/etc/daemon-store/federated"
+	dodir "${daemon_store}"
+	fperms 0700 "${daemon_store}"
+	fowners federated-service:federated-service "${daemon_store}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/federated_service_test"
+}
diff --git a/chromeos-base/federated-service/federated-service-0.0.1-r9.ebuild b/chromeos-base/federated-service/federated-service-0.0.1-r9.ebuild
deleted file mode 100644
index f1964c1..0000000
--- a/chromeos-base/federated-service/federated-service-0.0.1-r9.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "bcf783a53d9171afe89622df54180eececb2b69f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk federated .gn"
-
-PLATFORM_SUBDIR="federated"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Federated Computation service for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/federated"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-#TODO(alanlxl): add federated_library
-RDEPEND="
-	dev-db/sqlite:=
-	chromeos-base/session_manager-client:=
-	chromeos-base/system_api:=
-"
-
-DEPEND="
-	${RDEPEND}
-"
-
-pkg_setup() {
-	# Has to be done in pkg_setup() instead of pkg_preinst() since
-	# src_install() needs the federated-service user and group.
-	enewuser "federated-service"
-	enewgroup "federated-service"
-	cros-workon_pkg_setup
-}
-
-src_install() {
-	dobin "${OUT}"/federated_service
-
-	# Install upstart configuration.
-	insinto /etc/init
-	doins init/*.conf
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	newins "seccomp/federated_service-seccomp-${ARCH}.policy" federated_service-seccomp.policy
-
-	# Install D-Bus configuration file.
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.Federated.conf
-
-	# Install D-Bus service activation configuration.
-	insinto /usr/share/dbus-1/system-services
-	doins dbus/org.chromium.Federated.service
-
-	# Storage path for examples, will be mounted as
-	# /run/daemon-store/federated/<user_hash> after user logs in.
-	local daemon_store="/etc/daemon-store/federated"
-	dodir "${daemon_store}"
-	fperms 0700 "${daemon_store}"
-	fowners federated-service:federated-service "${daemon_store}"
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/federated_service_test"
-}
diff --git a/chromeos-base/federated-service/federated-service-9999.ebuild b/chromeos-base/federated-service/federated-service-9999.ebuild
index 0f6177b..0a85054 100644
--- a/chromeos-base/federated-service/federated-service-9999.ebuild
+++ b/chromeos-base/federated-service/federated-service-9999.ebuild
@@ -19,11 +19,12 @@
 KEYWORDS="~*"
 IUSE=""
 
-#TODO(alanlxl): add federated_library
 RDEPEND="
 	dev-db/sqlite:=
+	chromeos-base/dlcservice-client:=
 	chromeos-base/session_manager-client:=
 	chromeos-base/system_api:=
+	sys-cluster/fcp:=
 "
 
 DEPEND="
diff --git a/chromeos-base/feedback/feedback-0.0.1-r817.ebuild b/chromeos-base/feedback/feedback-0.0.1-r817.ebuild
deleted file mode 100644
index 9619b03..0000000
--- a/chromeos-base/feedback/feedback-0.0.1-r817.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "2a3b0ac1cf74d264898023f64759235fdc90aa74" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk feedback .gn"
-
-PLATFORM_SUBDIR="feedback"
-
-inherit cros-constants cros-workon git-2 platform
-
-DESCRIPTION="Feedback service for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/feedback/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND=""
-DEPEND="chromeos-base/system_api:="
-
-src_install() {
-	dobin "${OUT}"/feedback_client
-	dobin "${OUT}"/feedback_daemon
-
-	insinto /etc/init
-	doins init/feedback_daemon.conf
-
-	insinto /etc/dbus-1/system.d
-	doins org.chromium.feedback.conf
-
-	insinto /usr/include/feedback
-	doins components/feedback/feedback_common.h
-	doins feedback_service_interface.h
-}
-
-platform_pkg_test() {
-	local tests=(
-		feedback_daemon_test
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/feedback/feedback-0.0.1-r844.ebuild b/chromeos-base/feedback/feedback-0.0.1-r844.ebuild
new file mode 100644
index 0000000..0e68205
--- /dev/null
+++ b/chromeos-base/feedback/feedback-0.0.1-r844.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "395ebd509827e9d258f79bb36358bce3c9e69474" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk feedback .gn"
+
+PLATFORM_SUBDIR="feedback"
+
+inherit cros-constants cros-workon git-2 platform
+
+DESCRIPTION="Feedback service for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/feedback/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND=""
+DEPEND="chromeos-base/system_api:="
+
+src_install() {
+	dobin "${OUT}"/feedback_client
+	dobin "${OUT}"/feedback_daemon
+
+	insinto /etc/init
+	doins init/feedback_daemon.conf
+
+	insinto /etc/dbus-1/system.d
+	doins org.chromium.feedback.conf
+
+	insinto /usr/include/feedback
+	doins components/feedback/feedback_common.h
+	doins feedback_service_interface.h
+}
+
+platform_pkg_test() {
+	local tests=(
+		feedback_daemon_test
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/fingerprint_study/fingerprint_study-0.0.1-r27.ebuild b/chromeos-base/fingerprint_study/fingerprint_study-0.0.1-r27.ebuild
deleted file mode 100644
index 0c52707..0000000
--- a/chromeos-base/fingerprint_study/fingerprint_study-0.0.1-r27.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="24b418b1c56d694a576ab04322042142fc255ce2"
-CROS_WORKON_TREE="2436963e97a3c61ae366a6d52c012917afd63236"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="biod/study"
-PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
-
-inherit cros-workon python-r1
-
-DESCRIPTION="Chromium OS Fingerprint user study software"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/study"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-# The fingerprint study can optionally make use of the private package
-# virtual/chromeos-fpmcu-test, which holds the C+python fputils lib.
-# This library is also used for factory tests, thus it was labeled fpmcu-test.
-# The chromeos-base/ec-utils pkg provides ectool.
-# The chromeos-base/ec-utils-test pkg provides flash_fp_mcu for test operator.
-DEPEND=""
-RDEPEND="
-	${PYTHON_DEPS}
-	chromeos-base/ec-utils
-	chromeos-base/ec-utils-test
-	dev-python/cherrypy[${PYTHON_USEDEP}]
-	dev-python/python-gnupg[${PYTHON_USEDEP}]
-	dev-python/ws4py[${PYTHON_USEDEP}]
-	virtual/chromeos-fpmcu-test
-	"
-
-src_unpack() {
-	cros-workon_src_unpack
-	S+="/biod/study"
-}
-
-src_install() {
-	# install the study local server
-	exeinto /opt/google/fingerprint_study
-	newexe study_serve.py study_serve
-
-	# Content to serve
-	insinto /opt/google/fingerprint_study/html
-	doins html/index.html
-	doins html/bootstrap-3.3.7.min.css
-	doins html/fingerprint.svg
-
-	insinto /etc/init
-	doins init/fingerprint_study.conf
-	doins init/syslog_fingerprint_study.conf
-
-	insinto /etc/bash/bashrc.d
-	doins shell-audit.sh
-
-	insinto /etc/rsyslog.d
-	doins rsyslog.fpstudy-audit.conf
-}
diff --git a/chromeos-base/fingerprint_study/fingerprint_study-0.0.1-r38.ebuild b/chromeos-base/fingerprint_study/fingerprint_study-0.0.1-r38.ebuild
new file mode 100644
index 0000000..5442cda
--- /dev/null
+++ b/chromeos-base/fingerprint_study/fingerprint_study-0.0.1-r38.ebuild
@@ -0,0 +1,61 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="4804a1360484a4a56f1d51a38b022624cc34a60b"
+CROS_WORKON_TREE="ea5b9b141ca3d4d54fe56c9527757e5294cd32fe"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="biod/study"
+PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
+
+inherit cros-workon python-r1
+
+DESCRIPTION="Chromium OS Fingerprint user study software"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/study"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+# The fingerprint study can optionally make use of the private package
+# virtual/chromeos-fpmcu-test, which holds the C+python fputils lib.
+# This library is also used for factory tests, thus it was labeled fpmcu-test.
+# The chromeos-base/ec-utils pkg provides ectool.
+# The chromeos-base/ec-utils-test pkg provides flash_fp_mcu for test operator.
+DEPEND=""
+RDEPEND="
+	${PYTHON_DEPS}
+	chromeos-base/ec-utils
+	chromeos-base/ec-utils-test
+	dev-python/cherrypy[${PYTHON_USEDEP}]
+	dev-python/python-gnupg[${PYTHON_USEDEP}]
+	dev-python/ws4py[${PYTHON_USEDEP}]
+	virtual/chromeos-fpmcu-test
+	"
+
+src_unpack() {
+	cros-workon_src_unpack
+	S+="/biod/study"
+}
+
+src_install() {
+	# install the study local server
+	exeinto /opt/google/fingerprint_study
+	newexe study_serve.py study_serve
+
+	# Content to serve
+	insinto /opt/google/fingerprint_study/html
+	doins html/index.html
+	doins html/bootstrap-3.3.7.min.css
+	doins html/fingerprint.svg
+
+	insinto /etc/init
+	doins init/fingerprint_study.conf
+	doins init/syslog_fingerprint_study.conf
+
+	insinto /etc/bash/bashrc.d
+	doins shell-audit.sh
+
+	insinto /etc/rsyslog.d
+	doins rsyslog.fpstudy-audit.conf
+}
diff --git a/chromeos-base/foomatic_shell/foomatic_shell-0.0.1-r59.ebuild b/chromeos-base/foomatic_shell/foomatic_shell-0.0.1-r59.ebuild
deleted file mode 100644
index fa6aa63..0000000
--- a/chromeos-base/foomatic_shell/foomatic_shell-0.0.1-r59.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "92250239305f99e58bf74de7db462c841dfa3c4b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk foomatic_shell .gn"
-
-PLATFORM_SUBDIR="foomatic_shell"
-
-inherit cros-workon platform
-
-DESCRIPTION="Mini shell used by foomatic-rip to execute scripts in PPD files."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/foomatic_shell/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-src_install() {
-	dobin "${OUT}/foomatic_shell"
-
-	# Install fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/foomatic_shell_fuzzer
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/foomatic_shell_test"
-}
diff --git a/chromeos-base/foomatic_shell/foomatic_shell-0.0.1-r88.ebuild b/chromeos-base/foomatic_shell/foomatic_shell-0.0.1-r88.ebuild
new file mode 100644
index 0000000..1d2f193
--- /dev/null
+++ b/chromeos-base/foomatic_shell/foomatic_shell-0.0.1-r88.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "8cfe1bd9ac77b9ec2a67dd5065876d350cc9ac4e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk foomatic_shell .gn"
+
+PLATFORM_SUBDIR="foomatic_shell"
+
+inherit cros-workon platform
+
+DESCRIPTION="Mini shell used by foomatic-rip to execute scripts in PPD files."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/foomatic_shell/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+src_install() {
+	dobin "${OUT}/foomatic_shell"
+
+	# Install fuzzer
+	local fuzzer_component_id="167231"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/foomatic_shell_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/foomatic_shell_test"
+}
diff --git a/chromeos-base/foomatic_shell/foomatic_shell-9999.ebuild b/chromeos-base/foomatic_shell/foomatic_shell-9999.ebuild
index c840c2a..f6198cc 100644
--- a/chromeos-base/foomatic_shell/foomatic_shell-9999.ebuild
+++ b/chromeos-base/foomatic_shell/foomatic_shell-9999.ebuild
@@ -23,7 +23,9 @@
 	dobin "${OUT}/foomatic_shell"
 
 	# Install fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/foomatic_shell_fuzzer
+	local fuzzer_component_id="167231"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/foomatic_shell_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/fusebox/fusebox-0.0.2-r36.ebuild b/chromeos-base/fusebox/fusebox-0.0.2-r36.ebuild
new file mode 100644
index 0000000..63160cf
--- /dev/null
+++ b/chromeos-base/fusebox/fusebox-0.0.2-r36.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "5ac90bfc3e80b94b55eeda07469ee072224a0151" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_SUBTREE="common-mk fusebox .gn"
+
+PLATFORM_SUBDIR="fusebox"
+
+inherit cros-workon platform user
+
+DESCRIPTION="FuseBox service"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/main/fusebox"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+IUSE="test"
+
+COMMON_DEPEND="
+	dev-libs/protobuf:=
+	sys-apps/dbus:=
+	sys-fs/fuse:=
+	sys-libs/libcap:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/system_api
+"
+
+src_install() {
+	dobin "${OUT}"/fusebox
+}
+
+platform_pkg_test() {
+	local tests=(fusebox_test)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/fusebox/fusebox-9999.ebuild b/chromeos-base/fusebox/fusebox-9999.ebuild
new file mode 100644
index 0000000..b198856
--- /dev/null
+++ b/chromeos-base/fusebox/fusebox-9999.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_SUBTREE="common-mk fusebox .gn"
+
+PLATFORM_SUBDIR="fusebox"
+
+inherit cros-workon platform user
+
+DESCRIPTION="FuseBox service"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/main/fusebox"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+
+IUSE="test"
+
+COMMON_DEPEND="
+	dev-libs/protobuf:=
+	sys-apps/dbus:=
+	sys-fs/fuse:=
+	sys-libs/libcap:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/system_api
+"
+
+src_install() {
+	dobin "${OUT}"/fusebox
+}
+
+platform_pkg_test() {
+	local tests=(fusebox_test)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/g2f_tools/g2f_tools-0.0.1-r550.ebuild b/chromeos-base/g2f_tools/g2f_tools-0.0.1-r550.ebuild
deleted file mode 100644
index fd22ee0..0000000
--- a/chromeos-base/g2f_tools/g2f_tools-0.0.1-r550.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="ecd28d2c26fbe86b6822c6d6afb80f118a8f7f03"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "81dfbbc1756a3b4224b447e7bf10a916d97c4f66" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "a06a3f47395fb7b584188c6852764bc773e5497e" "e4bdb36b8b1e5f01a3bbb9b825a32cf55222bfeb" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk libhwsec metrics trunks u2fd .gn"
-
-PLATFORM_SUBDIR="u2fd"
-
-inherit cros-workon platform
-
-DESCRIPTION="G2F gnubby (U2F+GCSE) development and testing tools"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/u2fd"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-
-COMMON_DEPEND="
-	chromeos-base/libhwsec:=
-	dev-libs/hidapi:=
-	"
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/chromeos-ec-headers:=
-	chromeos-base/u2fd:=
-	"
-
-src_install() {
-	dobin "${OUT}"/g2ftool
-	dobin "${OUT}"/webauthntool
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/g2f_client_test"
-}
diff --git a/chromeos-base/g2f_tools/g2f_tools-0.0.1-r639.ebuild b/chromeos-base/g2f_tools/g2f_tools-0.0.1-r639.ebuild
new file mode 100644
index 0000000..961375d
--- /dev/null
+++ b/chromeos-base/g2f_tools/g2f_tools-0.0.1-r639.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="7e56fbcc6f3c9e9ba98bf43a52940100e5fbc918"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "e08a2eb734e33827dffeecf57eca046cd1091373" "d8da1275feb26afab354f35df7316b3840f8330b" "11a1a181f7876719e62e7220c7683ee1253aee9f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk libhwsec metrics trunks u2fd .gn"
+
+PLATFORM_SUBDIR="u2fd"
+
+inherit cros-workon platform
+
+DESCRIPTION="G2F gnubby (U2F+GCSE) development and testing tools"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/u2fd"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+
+COMMON_DEPEND="
+	chromeos-base/libhwsec:=
+	dev-libs/hidapi:=
+	"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/chromeos-ec-headers:=
+	chromeos-base/u2fd:=
+	"
+
+src_install() {
+	dobin "${OUT}"/g2ftool
+	dobin "${OUT}"/webauthntool
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/g2f_client_test"
+}
diff --git a/chromeos-base/gdix_hid_firmware_update/Manifest b/chromeos-base/gdix_hid_firmware_update/Manifest
index 62346ad..ffe5257 100644
--- a/chromeos-base/gdix_hid_firmware_update/Manifest
+++ b/chromeos-base/gdix_hid_firmware_update/Manifest
@@ -1 +1 @@
-DIST gdix_hid_firmware_update-1.7.4.tar.gz 24765 SHA256 38228d0fae1a6f21806da2a9070b3be3a597af46663453b3fd18236053ed6c88 SHA512 6636fc59c84834574fa3cd080cb3bb46d64eb2d02b54c2e3a39d0e682aa7c9824bea5e2484d5b153b16d52f42c6d8a0c4480030a8f140ae7e60278aa62f54e0f WHIRLPOOL 46326ac17d6bca06b2bbeed02b848360138f68eafaca13b4b643209061bf8f2bf7f42362d049733f71ce3fccca1c8dbf782a79665f3069535644be1a6fff84aa
+DIST gdix_hid_firmware_update-1.7.6.tar.gz 35877 BLAKE2B efef3f810126bf5c90743a2fee7753c0741082e4989c2d5c5fdc3ed860d5b9638543ca45512e08b5926cd8a7baf3a5440810785215770aff2c6f3e3d4f1bc4b5 SHA512 ad370c201be33a81fb70c8e4da46230e9ac501fcbece165f755bbc9d04b04e4068e346e7afd938a04082fbff3659de570e00654e3c1709af72cabf09dbf79980
diff --git a/chromeos-base/gdix_hid_firmware_update/gdix_hid_firmware_update-1.7.4-r1.ebuild b/chromeos-base/gdix_hid_firmware_update/gdix_hid_firmware_update-1.7.4-r1.ebuild
deleted file mode 120000
index 6532f13..0000000
--- a/chromeos-base/gdix_hid_firmware_update/gdix_hid_firmware_update-1.7.4-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-gdix_hid_firmware_update-1.7.4.ebuild
\ No newline at end of file
diff --git a/chromeos-base/gdix_hid_firmware_update/gdix_hid_firmware_update-1.7.6-r1.ebuild b/chromeos-base/gdix_hid_firmware_update/gdix_hid_firmware_update-1.7.6-r1.ebuild
new file mode 120000
index 0000000..8ab7431
--- /dev/null
+++ b/chromeos-base/gdix_hid_firmware_update/gdix_hid_firmware_update-1.7.6-r1.ebuild
@@ -0,0 +1 @@
+gdix_hid_firmware_update-1.7.6.ebuild
\ No newline at end of file
diff --git a/chromeos-base/gdix_hid_firmware_update/gdix_hid_firmware_update-1.7.4.ebuild b/chromeos-base/gdix_hid_firmware_update/gdix_hid_firmware_update-1.7.6.ebuild
similarity index 100%
rename from chromeos-base/gdix_hid_firmware_update/gdix_hid_firmware_update-1.7.4.ebuild
rename to chromeos-base/gdix_hid_firmware_update/gdix_hid_firmware_update-1.7.6.ebuild
diff --git a/chromeos-base/gestures-conf/gestures-conf-0.0.1-r138.ebuild b/chromeos-base/gestures-conf/gestures-conf-0.0.1-r138.ebuild
deleted file mode 100644
index 2a7df78..0000000
--- a/chromeos-base/gestures-conf/gestures-conf-0.0.1-r138.ebuild
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="8fe78b5a0e2d97eaeca95da1598643d37120ff4a"
-CROS_WORKON_TREE="b2fb9cd3688231f48d3af4596cc6144c4beff52c"
-CROS_WORKON_LOCALNAME="xorg-conf"
-CROS_WORKON_PROJECT="chromiumos/platform/xorg-conf"
-CROS_WORKON_OUTOFTREE_BUILD=1
-
-inherit cros-board cros-workon user
-
-DESCRIPTION="Board specific gestures library configuration file."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/xorg-conf/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="elan"
-
-RDEPEND="!chromeos-base/touchpad-linearity"
-DEPEND=""
-
-src_install() {
-	local board=$(get_current_board_no_variant)
-	local board_variant=$(get_current_board_with_variant)
-
-	insinto /etc/gesture
-
-	# Some boards have experimental variants, such as -cheets, -arcnext,
-	# -campfire, -kvm, -kernelnext or -arm64, which are running on the same
-	# hardware as their base boards. As opposed to board variants, which use
-	# underscore to separate from board name, they use a dash, so we can just
-	# strip anything matching.
-	board_variant=${board_variant%%-*}
-	board=${board%%-*}
-
-	# Enable exactly one evdev-compatible X input touchpad driver.
-	#
-	# Note: If possible, use the following xorg config names to allow
-	# this ebuild to install them automatically:
-	#    - 50-touchpad-cmt-$BOARD.conf
-	#    - 60-touchpad-cmt-$BOARD_VARIANT.conf
-	# e.g. daisy_skate will include the files:
-	#    - 50-touchpad-cmt-daisy.conf
-	#    - 60-touchpad-cmt-daisy_skate.conf
-	doins 40-touchpad-cmt.conf
-	if use elan; then
-		doins 50-touchpad-cmt-elan.conf
-	elif [[ "${board}" = "daisy" && "${board_variant}" = "${board}" ]]; then
-		doins 50-touchpad-cmt-daisy.conf
-		doins 50-touchpad-cmt-pit.conf # Some Lucas's use Pit Touchpad module
-	elif [ "${board_variant}" = "daisy_spring" ]; then
-		doins 50-touchpad-cmt-spring.conf
-	elif [ "${board_variant}" = "peach_pit" ]; then
-		doins 50-touchpad-cmt-pit.conf
-	elif [ "${board_variant}" = "peach_pi" ]; then
-		doins 50-touchpad-cmt-pi.conf
-	else
-		if [ -f "50-touchpad-cmt-${board}.conf" ]; then
-			doins "50-touchpad-cmt-${board}.conf"
-		fi
-		if [ -f "60-touchpad-cmt-${board_variant}.conf" ]; then
-			doins "60-touchpad-cmt-${board_variant}.conf"
-		fi
-	fi
-	doins 20-mouse.conf
-
-	insinto "/usr/share/gestures"
-	case ${board} in
-	daisy)
-		doins "files/daisy_linearity.dat" ;;
-	esac
-}
-
diff --git a/chromeos-base/gestures-conf/gestures-conf-0.0.1-r143.ebuild b/chromeos-base/gestures-conf/gestures-conf-0.0.1-r143.ebuild
new file mode 100644
index 0000000..e8b0685
--- /dev/null
+++ b/chromeos-base/gestures-conf/gestures-conf-0.0.1-r143.ebuild
@@ -0,0 +1,75 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="6abab868639f35ffb2399c32a80e7f7e8bb88621"
+CROS_WORKON_TREE="6b68efa2d8200a54d7bc083d9100de106e8c22b9"
+CROS_WORKON_LOCALNAME="xorg-conf"
+CROS_WORKON_PROJECT="chromiumos/platform/xorg-conf"
+CROS_WORKON_OUTOFTREE_BUILD=1
+
+inherit cros-board cros-workon user
+
+DESCRIPTION="Board specific gestures library configuration file."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/xorg-conf/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="elan"
+
+RDEPEND="!chromeos-base/touchpad-linearity"
+DEPEND=""
+
+src_install() {
+	local board=$(get_current_board_no_variant)
+	local board_variant=$(get_current_board_with_variant)
+
+	insinto /etc/gesture
+
+	# Some boards have experimental variants, such as -cheets, -arcnext,
+	# -campfire, -kvm, -kernelnext or -arm64, which are running on the same
+	# hardware as their base boards. As opposed to board variants, which use
+	# underscore to separate from board name, they use a dash, so we can just
+	# strip anything matching.
+	board_variant=${board_variant%%-*}
+	board=${board%%-*}
+
+	# Enable exactly one evdev-compatible X input touchpad driver.
+	#
+	# Note: If possible, use the following xorg config names to allow
+	# this ebuild to install them automatically:
+	#    - 50-touchpad-cmt-$BOARD.conf
+	#    - 60-touchpad-cmt-$BOARD_VARIANT.conf
+	# e.g. daisy_skate will include the files:
+	#    - 50-touchpad-cmt-daisy.conf
+	#    - 60-touchpad-cmt-daisy_skate.conf
+	doins 40-touchpad-cmt.conf
+	if use elan; then
+		doins 50-touchpad-cmt-elan.conf
+	elif [[ "${board}" = "daisy" && "${board_variant}" = "${board}" ]]; then
+		doins 50-touchpad-cmt-daisy.conf
+		doins 50-touchpad-cmt-pit.conf # Some Lucas's use Pit Touchpad module
+	elif [ "${board_variant}" = "daisy_spring" ]; then
+		doins 50-touchpad-cmt-spring.conf
+	elif [ "${board_variant}" = "peach_pit" ]; then
+		doins 50-touchpad-cmt-pit.conf
+	elif [ "${board_variant}" = "peach_pi" ]; then
+		doins 50-touchpad-cmt-pi.conf
+	else
+		if [ -f "50-touchpad-cmt-${board}.conf" ]; then
+			doins "50-touchpad-cmt-${board}.conf"
+		fi
+		if [ -f "60-touchpad-cmt-${board_variant}.conf" ]; then
+			doins "60-touchpad-cmt-${board_variant}.conf"
+		fi
+	fi
+	doins 20-mouse.conf
+
+	insinto "/usr/share/gestures"
+	case ${board} in
+	daisy)
+		doins "files/daisy_linearity.dat" ;;
+	esac
+}
+
diff --git a/chromeos-base/gestures/gestures-0.0.1-r608.ebuild b/chromeos-base/gestures/gestures-0.0.1-r608.ebuild
deleted file mode 100644
index 8075d9f..0000000
--- a/chromeos-base/gestures/gestures-0.0.1-r608.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="0f66f2bb008707c79d5f34f700ccddc75a64aad6"
-CROS_WORKON_TREE="f61862266364ee29a7990560bf5e6b7b6e151873"
-CROS_WORKON_PROJECT="chromiumos/platform/gestures"
-CROS_WORKON_LOCALNAME="platform/gestures"
-CROS_WORKON_USE_VCSID=1
-
-inherit toolchain-funcs cros-debug cros-sanitizers cros-workon
-
-DESCRIPTION="Gesture recognizer library"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/gestures/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="-asan +X"
-
-RDEPEND="chromeos-base/gestures-conf:=
-	chromeos-base/libevdev:=
-	dev-libs/jsoncpp:=
-	virtual/udev"
-DEPEND="dev-cpp/gtest:=
-	X? ( x11-libs/libXi:= )
-	${RDEPEND}"
-
-# The last dir must be named "gestures" for include path reasons.
-S="${WORKDIR}/gestures"
-
-src_configure() {
-	cros_optimize_package_for_speed
-	sanitizers-setup-env
-	export USE_X11=$(usex X 1 0)
-	tc-export CXX PKG_CONFIG
-	cros-debug-add-NDEBUG
-	default
-}
-
-src_compile() {
-	emake clean  # TODO(adlr): remove when a better solution exists
-	emake
-}
-
-src_test() {
-	emake test
-
-	if ! use x86 && ! use amd64 ; then
-		einfo "Skipping tests on non-x86 platform..."
-	else
-		# This is an ugly hack that happens to work, but should not be copied.
-		LD_LIBRARY_PATH="${SYSROOT}/usr/$(get_libdir)" \
-		./test || die
-	fi
-}
-
-src_install() {
-	emake DESTDIR="${D}" LIBDIR="/usr/$(get_libdir)" install
-}
diff --git a/chromeos-base/gestures/gestures-0.0.1-r609.ebuild b/chromeos-base/gestures/gestures-0.0.1-r609.ebuild
new file mode 100644
index 0000000..a418e52
--- /dev/null
+++ b/chromeos-base/gestures/gestures-0.0.1-r609.ebuild
@@ -0,0 +1,60 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="bc11e9b5c74d90425e78ab2ed51588761c55ee1d"
+CROS_WORKON_TREE="6158abc8e6c0a97828a6e95e8100c1d84d5bfdec"
+CROS_WORKON_PROJECT="chromiumos/platform/gestures"
+CROS_WORKON_LOCALNAME="platform/gestures"
+CROS_WORKON_USE_VCSID=1
+
+inherit toolchain-funcs cros-debug cros-sanitizers cros-workon
+
+DESCRIPTION="Gesture recognizer library"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/gestures/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="-asan +X"
+
+RDEPEND="chromeos-base/gestures-conf:=
+	chromeos-base/libevdev:=
+	dev-libs/jsoncpp:=
+	virtual/udev"
+DEPEND="dev-cpp/gtest:=
+	X? ( x11-libs/libXi:= )
+	${RDEPEND}"
+
+# The last dir must be named "gestures" for include path reasons.
+S="${WORKDIR}/gestures"
+
+src_configure() {
+	cros_optimize_package_for_speed
+	sanitizers-setup-env
+	export USE_X11=$(usex X 1 0)
+	tc-export CXX PKG_CONFIG
+	cros-debug-add-NDEBUG
+	default
+}
+
+src_compile() {
+	emake clean  # TODO(adlr): remove when a better solution exists
+	emake
+}
+
+src_test() {
+	emake test
+
+	if ! use x86 && ! use amd64 ; then
+		einfo "Skipping tests on non-x86 platform..."
+	else
+		# This is an ugly hack that happens to work, but should not be copied.
+		LD_LIBRARY_PATH="${SYSROOT}/usr/$(get_libdir)" \
+		./test || die
+	fi
+}
+
+src_install() {
+	emake DESTDIR="${D}" LIBDIR="/usr/$(get_libdir)" install
+}
diff --git a/chromeos-base/ghostscript-fuzz/ghostscript-fuzz-0.0.1-r5.ebuild b/chromeos-base/ghostscript-fuzz/ghostscript-fuzz-0.0.1-r6.ebuild
similarity index 100%
rename from chromeos-base/ghostscript-fuzz/ghostscript-fuzz-0.0.1-r5.ebuild
rename to chromeos-base/ghostscript-fuzz/ghostscript-fuzz-0.0.1-r6.ebuild
diff --git a/chromeos-base/ghostscript-fuzz/ghostscript-fuzz-0.0.1.ebuild b/chromeos-base/ghostscript-fuzz/ghostscript-fuzz-0.0.1.ebuild
index 8b13c9c..ac9026f 100644
--- a/chromeos-base/ghostscript-fuzz/ghostscript-fuzz-0.0.1.ebuild
+++ b/chromeos-base/ghostscript-fuzz/ghostscript-fuzz-0.0.1.ebuild
@@ -39,5 +39,7 @@
 }
 
 src_install() {
-	fuzzer_install "${S}"/OWNERS gstoraster_fuzzer
+	local fuzzer_component_id="167231"
+	fuzzer_install "${S}"/OWNERS gstoraster_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
diff --git a/chromeos-base/glbench/glbench-0.0.1-r17.ebuild b/chromeos-base/glbench/glbench-0.0.1-r17.ebuild
deleted file mode 100644
index fa76190..0000000
--- a/chromeos-base/glbench/glbench-0.0.1-r17.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 2019 The Chromium OS Authros. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="e96d7c6a57b16c7f4a265506f86ea827f8e23c6f"
-CROS_WORKON_TREE="809488d2c59844b032584c7972e75eb3fe498bba"
-CROS_WORKON_PROJECT="chromiumos/platform/glbench"
-
-inherit cros-workon
-
-DESCRIPTION="Microbenchmark for opengl/gles"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/glbench/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="opengl opengles"
-
-COMMON_DEPEND="
-	>=dev-cpp/gflags-2.0:=
-	media-libs/libpng:=
-	virtual/opengles:=
-	media-libs/waffle:="
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}
-	x11-drivers/opengles-headers:="
-
-src_compile() {
-	emake -C src
-}
-
-src_install() {
-	local glbench_dir="/usr/local/${PN}"
-
-	# Install the executable.
-	exeinto "${glbench_dir}/bin"
-	doexe glbench windowmanagertest
-
-	# Install the list files.
-	insinto "${glbench_dir}/files"
-	doins glbench_fixedbad_images.txt
-	doins glbench_knownbad_images.txt
-	doins glbench_reference_images.txt
-}
diff --git a/chromeos-base/glbench/glbench-0.0.1-r23.ebuild b/chromeos-base/glbench/glbench-0.0.1-r23.ebuild
new file mode 100644
index 0000000..e284e22
--- /dev/null
+++ b/chromeos-base/glbench/glbench-0.0.1-r23.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2019 The Chromium OS Authros. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="7b11d2e63e1c19b68e9e45dbe4285258dc1fbd3d"
+CROS_WORKON_TREE="1ce01cc16e3259de626e5f9961f0576482a8c2d2"
+CROS_WORKON_PROJECT="chromiumos/platform/glbench"
+CROS_WORKON_LOCALNAME="platform/glbench"
+
+inherit cros-workon
+
+DESCRIPTION="Microbenchmark for opengl/gles"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/glbench/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="opengl opengles"
+
+COMMON_DEPEND="
+	>=dev-cpp/gflags-2.0:=
+	media-libs/libpng:=
+	virtual/opengles:=
+	media-libs/waffle:="
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}
+	x11-drivers/opengles-headers:="
+
+src_compile() {
+	emake -C src
+}
+
+src_install() {
+	local glbench_dir="/usr/local/${PN}"
+
+	# Install the executable.
+	exeinto "${glbench_dir}/bin"
+	doexe glbench windowmanagertest
+	insinto "${glbench_dir}/bin"
+	doins -r runtime
+
+	# Install the list files.
+	insinto "${glbench_dir}/files"
+	doins glbench_fixedbad_images.txt
+	doins glbench_knownbad_images.txt
+	doins glbench_reference_images.txt
+}
diff --git a/chromeos-base/glbench/glbench-9999.ebuild b/chromeos-base/glbench/glbench-9999.ebuild
index f11b60f..61e6693 100644
--- a/chromeos-base/glbench/glbench-9999.ebuild
+++ b/chromeos-base/glbench/glbench-9999.ebuild
@@ -4,6 +4,7 @@
 EAPI=7
 
 CROS_WORKON_PROJECT="chromiumos/platform/glbench"
+CROS_WORKON_LOCALNAME="platform/glbench"
 
 inherit cros-workon
 
@@ -34,6 +35,8 @@
 	# Install the executable.
 	exeinto "${glbench_dir}/bin"
 	doexe glbench windowmanagertest
+	insinto "${glbench_dir}/bin"
+	doins -r runtime
 
 	# Install the list files.
 	insinto "${glbench_dir}/files"
diff --git a/chromeos-base/glib-bridge/glib-bridge-0.0.1-r202.ebuild b/chromeos-base/glib-bridge/glib-bridge-0.0.1-r202.ebuild
deleted file mode 100644
index 7554b1b..0000000
--- a/chromeos-base/glib-bridge/glib-bridge-0.0.1-r202.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a0d78fc5cbcc8bce3d024656c530b5b8a045d633" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk glib-bridge .gn"
-
-PLATFORM_SUBDIR="glib-bridge"
-
-inherit cros-workon platform
-
-DESCRIPTION="libchrome-glib message loop bridge"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/glib-bridge"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-	dev-libs/glib:="
-
-DEPEND="${RDEPEND}"
-
-src_install() {
-	dolib.so "${OUT}"/lib/libglib_bridge.so
-
-	# Install headers.
-	insinto /usr/include/glib-bridge
-	doins *.h
-
-	# Install pc file.
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "${OUT}"/obj/glib-bridge/libglib_bridge.pc
-}
-
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/glib_bridge_test_runner"
-}
diff --git a/chromeos-base/glib-bridge/glib-bridge-0.0.1-r230.ebuild b/chromeos-base/glib-bridge/glib-bridge-0.0.1-r230.ebuild
new file mode 100644
index 0000000..670e065
--- /dev/null
+++ b/chromeos-base/glib-bridge/glib-bridge-0.0.1-r230.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "94dfcd3dbd61f0fad7e73b3d224b528ca8cc6fa4" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk glib-bridge .gn"
+
+PLATFORM_SUBDIR="glib-bridge"
+
+inherit cros-workon platform
+
+DESCRIPTION="libchrome-glib message loop bridge"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/glib-bridge"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+	dev-libs/glib:="
+
+DEPEND="${RDEPEND}"
+
+src_install() {
+	dolib.so "${OUT}"/lib/libglib_bridge.so
+
+	# Install headers.
+	insinto /usr/include/glib-bridge
+	doins *.h
+
+	# Install pc file.
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "${OUT}"/obj/glib-bridge/libglib_bridge.pc
+}
+
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/glib_bridge_test_runner"
+}
diff --git a/chromeos-base/goldfishd/goldfishd-0.0.1-r508.ebuild b/chromeos-base/goldfishd/goldfishd-0.0.1-r508.ebuild
deleted file mode 100644
index 6edfbe9..0000000
--- a/chromeos-base/goldfishd/goldfishd-0.0.1-r508.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "4c8cf5f4cf1d65ee1fbdfee54cce3754acaa9159" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk goldfishd .gn"
-
-PLATFORM_SUBDIR="goldfishd"
-
-inherit cros-workon platform
-
-DESCRIPTION="Android Emulator Daemon for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/goldfishd/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-
-RDEPEND="
-	chromeos-base/autotest-client
-	"
-
-src_install() {
-	dobin "${OUT}"/goldfishd
-
-	insinto /etc/init
-	doins init/*.conf
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/goldfishd_test_runner"
-}
diff --git a/chromeos-base/goldfishd/goldfishd-0.0.1-r534.ebuild b/chromeos-base/goldfishd/goldfishd-0.0.1-r534.ebuild
new file mode 100644
index 0000000..724058b
--- /dev/null
+++ b/chromeos-base/goldfishd/goldfishd-0.0.1-r534.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "13765b1ff67adeffebb9deed2992c18378e5e243" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk goldfishd .gn"
+
+PLATFORM_SUBDIR="goldfishd"
+
+inherit cros-workon platform
+
+DESCRIPTION="Android Emulator Daemon for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/goldfishd/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+
+RDEPEND="
+	chromeos-base/autotest-client
+	"
+
+src_install() {
+	dobin "${OUT}"/goldfishd
+
+	insinto /etc/init
+	doins init/*.conf
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/goldfishd_test_runner"
+}
diff --git a/chromeos-base/google-breakpad/google-breakpad-2021.06.11.172551-r204.ebuild b/chromeos-base/google-breakpad/google-breakpad-2021.06.11.172551-r204.ebuild
deleted file mode 100644
index b821e45..0000000
--- a/chromeos-base/google-breakpad/google-breakpad-2021.06.11.172551-r204.ebuild
+++ /dev/null
@@ -1,156 +0,0 @@
-# Copyright 2011 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("a524a1e24b19dcb3605190e5e9bb1b0f10ca8be8" "e1e7b0ad8ee99a875b272c8e33e308472e897660")
-CROS_WORKON_TREE=("e6ad581adc61b514dfbd11029be8b43a1c0f52a1" "c2034bc1106379848e2c8c7b68f40d13b3c09097")
-CROS_WORKON_PROJECT=(
-	"breakpad/breakpad"
-	"linux-syscall-support"
-)
-CROS_WORKON_LOCALNAME=(
-	"third_party/breakpad"
-	"third_party/breakpad/src/third_party/lss"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}"
-	"${S}/src/third_party/lss"
-)
-
-inherit cros-arm64 cros-i686 cros-workon flag-o-matic multiprocessing
-
-DESCRIPTION="Google crash reporting"
-HOMEPAGE="https://chromium.googlesource.com/breakpad/breakpad"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="-alltests cros_host test"
-
-COMMON_DEPEND="net-misc/curl:="
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}
-	test? (
-		dev-cpp/gtest:=
-	)
-"
-
-src_prepare() {
-	default
-	find "${S}" -type f -exec touch -r "${S}"/configure {} +
-}
-
-src_configure() {
-	append-flags -g
-
-	# Disable flaky tests by default.  Do it here because the CPPFLAGS
-	# are recorded at configure time and not read on the fly.
-	# http://crbug.com/359999
-	use alltests && append-cppflags -DENABLE_FLAKY_TESTS
-
-	multijob_init
-
-	mkdir build
-	pushd build >/dev/null || die
-	ECONF_SOURCE=${S} multijob_child_init econf --enable-system-test-libs \
-		--bindir="$(usex cros_host /usr/bin /usr/local/bin)"
-	popd >/dev/null || die
-
-	if use cros_host || use_i686; then
-		# The mindump code is still wordsize specific.  Needs to be redone
-		# like https://chromium.googlesource.com/breakpad/breakpad/+/4116671cbff9e99fbd834a1b2cdd174226b78c7c
-		einfo "Configuring 32-bit build"
-		mkdir work32
-		pushd work32 >/dev/null
-		use cros_host && append-flags "-m32"
-		use_i686 && push_i686_env
-		ECONF_SOURCE=${S} multijob_child_init econf
-		use_i686 && pop_i686_env
-		use cros_host && filter-flags "-m32"
-		popd >/dev/null
-	fi
-
-	if use_arm64; then
-		# The mindump code is still wordsize specific.  Needs to be redone
-		# like https://chromium.googlesource.com/breakpad/breakpad/+/4116671cbff9e99fbd834a1b2cdd174226b78c7c
-		einfo "Configuring 64-bit build"
-		mkdir work64
-		pushd work64 >/dev/null
-		use_arm64 && push_arm64_env
-		ECONF_SOURCE=${S} multijob_child_init econf
-		use_arm64 && pop_arm64_env
-		popd >/dev/null
-	fi
-
-	multijob_finish
-}
-
-src_compile() {
-	emake -C build
-
-	if use cros_host; then
-		einfo "Building 32-bit tools"
-		emake -C work32 \
-			src/tools/linux/md2core/minidump-2-core
-	fi
-
-	if use_i686; then
-		einfo "Building 32-bit library"
-		push_i686_env
-		emake -C work32 src/client/linux/libbreakpad_client.a
-		pop_i686_env
-	fi
-
-	if use_arm64; then
-		einfo "Building 64-bit library"
-		push_arm64_env
-		emake -C work64 src/client/linux/libbreakpad_client.a
-		pop_arm64_env
-	fi
-}
-
-src_test() {
-	if ! use x86 && ! use amd64 ; then
-		einfo Skipping unit tests on non-x86 platform
-		return
-	fi
-	emake -C build check
-}
-
-src_install() {
-	emake -C build DESTDIR="${D}" install
-
-	# Move core2md to the rootfs. It's not only for tests but also used on
-	# shipped devices.
-	dodir /usr/bin
-	if ! use cros_host; then
-		mv "${D}/usr/local/bin/core2md" "${D}/usr/bin/core2md" || die
-	fi
-
-	insinto /usr/include/google-breakpad/client/linux/handler
-	doins src/client/linux/handler/*.h
-	insinto /usr/include/google-breakpad/client/linux/crash_generation
-	doins src/client/linux/crash_generation/*.h
-	insinto /usr/include/google-breakpad/common/linux
-	doins src/common/linux/*.h
-	insinto /usr/include/google-breakpad/processor
-	doins src/processor/*.h
-
-	if use cros_host; then
-		newbin work32/src/tools/linux/md2core/minidump-2-core \
-		       minidump-2-core.32
-	fi
-
-	if use_i686; then
-		push_i686_env
-		dolib.a work32/src/client/linux/libbreakpad_client.a
-		pop_i686_env
-	fi
-
-	if use_arm64; then
-		push_arm64_env
-		dolib.a work64/src/client/linux/libbreakpad_client.a
-		pop_arm64_env
-	fi
-}
diff --git a/chromeos-base/google-breakpad/google-breakpad-2021.08.09.232412-r206.ebuild b/chromeos-base/google-breakpad/google-breakpad-2021.08.09.232412-r206.ebuild
new file mode 100644
index 0000000..2b70e65
--- /dev/null
+++ b/chromeos-base/google-breakpad/google-breakpad-2021.08.09.232412-r206.ebuild
@@ -0,0 +1,156 @@
+# Copyright 2011 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("bc7ddae23425cee8999e4e8ed61f77a62f058cbf" "e1e7b0ad8ee99a875b272c8e33e308472e897660")
+CROS_WORKON_TREE=("3f31ee606d96ec70db0a8bbe95886810917284eb" "c2034bc1106379848e2c8c7b68f40d13b3c09097")
+CROS_WORKON_PROJECT=(
+	"breakpad/breakpad"
+	"linux-syscall-support"
+)
+CROS_WORKON_LOCALNAME=(
+	"third_party/breakpad"
+	"third_party/breakpad/src/third_party/lss"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}"
+	"${S}/src/third_party/lss"
+)
+
+inherit cros-arm64 cros-i686 cros-workon flag-o-matic multiprocessing
+
+DESCRIPTION="Google crash reporting"
+HOMEPAGE="https://chromium.googlesource.com/breakpad/breakpad"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="-alltests cros_host test"
+
+COMMON_DEPEND="net-misc/curl:="
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}
+	test? (
+		dev-cpp/gtest:=
+	)
+"
+
+src_prepare() {
+	default
+	find "${S}" -type f -exec touch -r "${S}"/configure {} +
+}
+
+src_configure() {
+	append-flags -g
+
+	# Disable flaky tests by default.  Do it here because the CPPFLAGS
+	# are recorded at configure time and not read on the fly.
+	# http://crbug.com/359999
+	use alltests && append-cppflags -DENABLE_FLAKY_TESTS
+
+	multijob_init
+
+	mkdir build
+	pushd build >/dev/null || die
+	ECONF_SOURCE=${S} multijob_child_init econf --enable-system-test-libs \
+		--bindir="$(usex cros_host /usr/bin /usr/local/bin)"
+	popd >/dev/null || die
+
+	if use cros_host || use_i686; then
+		# The mindump code is still wordsize specific.  Needs to be redone
+		# like https://chromium.googlesource.com/breakpad/breakpad/+/4116671cbff9e99fbd834a1b2cdd174226b78c7c
+		einfo "Configuring 32-bit build"
+		mkdir work32
+		pushd work32 >/dev/null
+		use cros_host && append-flags "-m32"
+		use_i686 && push_i686_env
+		ECONF_SOURCE=${S} multijob_child_init econf
+		use_i686 && pop_i686_env
+		use cros_host && filter-flags "-m32"
+		popd >/dev/null
+	fi
+
+	if use_arm64; then
+		# The mindump code is still wordsize specific.  Needs to be redone
+		# like https://chromium.googlesource.com/breakpad/breakpad/+/4116671cbff9e99fbd834a1b2cdd174226b78c7c
+		einfo "Configuring 64-bit build"
+		mkdir work64
+		pushd work64 >/dev/null
+		use_arm64 && push_arm64_env
+		ECONF_SOURCE=${S} multijob_child_init econf
+		use_arm64 && pop_arm64_env
+		popd >/dev/null
+	fi
+
+	multijob_finish
+}
+
+src_compile() {
+	emake -C build
+
+	if use cros_host; then
+		einfo "Building 32-bit tools"
+		emake -C work32 \
+			src/tools/linux/md2core/minidump-2-core
+	fi
+
+	if use_i686; then
+		einfo "Building 32-bit library"
+		push_i686_env
+		emake -C work32 src/client/linux/libbreakpad_client.a
+		pop_i686_env
+	fi
+
+	if use_arm64; then
+		einfo "Building 64-bit library"
+		push_arm64_env
+		emake -C work64 src/client/linux/libbreakpad_client.a
+		pop_arm64_env
+	fi
+}
+
+src_test() {
+	if ! use x86 && ! use amd64 ; then
+		einfo Skipping unit tests on non-x86 platform
+		return
+	fi
+	emake -C build check
+}
+
+src_install() {
+	emake -C build DESTDIR="${D}" install
+
+	# Move core2md to the rootfs. It's not only for tests but also used on
+	# shipped devices.
+	dodir /usr/bin
+	if ! use cros_host; then
+		mv "${D}/usr/local/bin/core2md" "${D}/usr/bin/core2md" || die
+	fi
+
+	insinto /usr/include/google-breakpad/client/linux/handler
+	doins src/client/linux/handler/*.h
+	insinto /usr/include/google-breakpad/client/linux/crash_generation
+	doins src/client/linux/crash_generation/*.h
+	insinto /usr/include/google-breakpad/common/linux
+	doins src/common/linux/*.h
+	insinto /usr/include/google-breakpad/processor
+	doins src/processor/*.h
+
+	if use cros_host; then
+		newbin work32/src/tools/linux/md2core/minidump-2-core \
+		       minidump-2-core.32
+	fi
+
+	if use_i686; then
+		push_i686_env
+		dolib.a work32/src/client/linux/libbreakpad_client.a
+		pop_i686_env
+	fi
+
+	if use_arm64; then
+		push_arm64_env
+		dolib.a work64/src/client/linux/libbreakpad_client.a
+		pop_arm64_env
+	fi
+}
diff --git a/chromeos-base/graphics-utils-go/graphics-utils-go-0.0.1-r100.ebuild b/chromeos-base/graphics-utils-go/graphics-utils-go-0.0.1-r100.ebuild
new file mode 100644
index 0000000..826ac0e
--- /dev/null
+++ b/chromeos-base/graphics-utils-go/graphics-utils-go-0.0.1-r100.ebuild
@@ -0,0 +1,72 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="9ee943a0c540a8ac7241c0aadd09bf28e798173e"
+CROS_WORKON_TREE="a131d99a4a9b07d66eb2f6173702e43a3b4b2a3a"
+CROS_WORKON_PROJECT="chromiumos/platform/graphics"
+CROS_WORKON_LOCALNAME="platform/graphics"
+
+INSTALL_DIR="/usr/local/graphics"
+
+CROS_GO_BINARIES=(
+	# Add more apps here.
+	"platform_decoding/cmd/validate:${INSTALL_DIR}/validate"
+	"sanity/cmd/pass:${INSTALL_DIR}/pass"
+	"trace_profiling/cmd/analyze:${INSTALL_DIR}/analyze"
+	"trace_profiling/cmd/gen_db_result:${INSTALL_DIR}/get_device_info"
+	"trace_profiling/cmd/harvest:${INSTALL_DIR}/harvest"
+	"trace_profiling/cmd/merge:${INSTALL_DIR}/merge"
+	"trace_profiling/cmd/profile:${INSTALL_DIR}/profile"
+	"trace_replay/cmd/trace_replay:${INSTALL_DIR}/trace_replay"
+)
+
+CROS_GO_TEST=(
+	"platform_decoding/cmd/validate"
+	"sanity/cmd/pass"
+	"trace_profiling/cmd/analyze"
+	"trace_profiling/cmd/gen_db_result"
+	"trace_profiling/cmd/merge"
+	"trace_profiling/cmd/profile"
+	"trace_replay/cmd/trace_replay"
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+inherit cros-go cros-workon
+SRC_URI="$(cros-go_src_uri)"
+
+DESCRIPTION="Portable graphics utils written in go"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/graphics/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND="
+	chromeos-base/cros-config-api
+	dev-go/crypto
+	dev-go/fogleman-gg
+	dev-go/go-image
+	dev-go/gofpdf
+	dev-go/golang-freetype
+	dev-go/gonum-plot
+	dev-go/protobuf
+	dev-go/readline
+	dev-go/svgo
+"
+
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+	# Disable cgo and PIE on building Tast binaries. See:
+	# https://crbug.com/976196
+	# https://github.com/golang/go/issues/30986#issuecomment-475626018
+	export CGO_ENABLED=0
+	export GOPIE=0
+
+	default
+}
diff --git a/chromeos-base/graphics-utils-go/graphics-utils-go-0.0.1-r92.ebuild b/chromeos-base/graphics-utils-go/graphics-utils-go-0.0.1-r92.ebuild
deleted file mode 100644
index b8f5649..0000000
--- a/chromeos-base/graphics-utils-go/graphics-utils-go-0.0.1-r92.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="48357ff580552576c8163ad53d1cc9bf75f113dc"
-CROS_WORKON_TREE="ee2a831469eb4e62c271b95b55a9b8eaa7706529"
-CROS_WORKON_PROJECT="chromiumos/platform/graphics"
-CROS_WORKON_LOCALNAME="platform/graphics"
-
-INSTALL_DIR="/usr/local/graphics"
-
-CROS_GO_BINARIES=(
-	# Add more apps here.
-	"platform_decoding/cmd/validate:${INSTALL_DIR}/validate"
-	"sanity/cmd/pass:${INSTALL_DIR}/pass"
-	"trace_profiling/cmd/analyze:${INSTALL_DIR}/analyze"
-	"trace_profiling/cmd/gen_db_result:${INSTALL_DIR}/get_device_info"
-	"trace_profiling/cmd/harvest:${INSTALL_DIR}/harvest"
-	"trace_profiling/cmd/merge:${INSTALL_DIR}/merge"
-	"trace_profiling/cmd/profile:${INSTALL_DIR}/profile"
-	"trace_replay/cmd/trace_replay:${INSTALL_DIR}/trace_replay"
-)
-
-CROS_GO_TEST=(
-	"platform_decoding/cmd/validate"
-	"sanity/cmd/pass"
-	"trace_profiling/cmd/analyze"
-	"trace_profiling/cmd/gen_db_result"
-	"trace_profiling/cmd/merge"
-	"trace_profiling/cmd/profile"
-	"trace_replay/cmd/trace_replay"
-)
-
-CROS_GO_VET=(
-	"${CROS_GO_TEST[@]}"
-)
-
-inherit cros-go cros-workon
-SRC_URI="$(cros-go_src_uri)"
-
-DESCRIPTION="Portable graphics utils written in go"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/graphics/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="
-	chromeos-base/cros-config-api
-	dev-go/crypto
-	dev-go/fogleman-gg
-	dev-go/go-image
-	dev-go/gofpdf
-	dev-go/golang-freetype
-	dev-go/gonum-plot
-	dev-go/protobuf
-	dev-go/readline
-	dev-go/svgo
-"
-
-RDEPEND="${DEPEND}"
-
-src_prepare() {
-	# Disable cgo and PIE on building Tast binaries. See:
-	# https://crbug.com/976196
-	# https://github.com/golang/go/issues/30986#issuecomment-475626018
-	export CGO_ENABLED=0
-	export GOPIE=0
-
-	default
-}
diff --git a/chromeos-base/hammerd-test-utils/hammerd-test-utils-0.0.1-r568.ebuild b/chromeos-base/hammerd-test-utils/hammerd-test-utils-0.0.1-r568.ebuild
deleted file mode 100644
index 15b5c8b..0000000
--- a/chromeos-base/hammerd-test-utils/hammerd-test-utils-0.0.1-r568.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "34e232daea866bc143a645ad413e0abb368929ee" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk hammerd .gn"
-
-PLATFORM_SUBDIR="hammerd"
-
-PYTHON_COMPAT=( python3_{6..8} )
-
-inherit cros-workon platform distutils-r1
-
-DESCRIPTION="Python wrapper of hammerd API and some python utility scripts."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/hammerd/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="+hammerd_api"
-
-BDEPEND="
-	dev-python/setuptools[${PYTHON_USEDEP}]
-"
-RDEPEND="
-	chromeos-base/hammerd:=
-"
-DEPEND="${RDEPEND}"
-
-src_configure() {
-	platform_src_configure
-	distutils-r1_src_configure
-}
-
-src_compile() {
-	platform_src_compile
-	distutils-r1_src_compile
-}
-
-src_install() {
-	# Install exposed API.
-	dolib.so "${OUT}"/lib/libhammerd-api.so
-	insinto /usr/include/hammerd/
-	doins hammerd_api.h
-	distutils-r1_src_install
-
-	# Install hammer base tests on dut
-	dodir /usr/local/bin/hammertests
-	cp -R "${S}/hammertests" "${D}/usr/local/bin"
-}
diff --git a/chromeos-base/hammerd-test-utils/hammerd-test-utils-0.0.1-r600.ebuild b/chromeos-base/hammerd-test-utils/hammerd-test-utils-0.0.1-r600.ebuild
new file mode 100644
index 0000000..a92f7d4
--- /dev/null
+++ b/chromeos-base/hammerd-test-utils/hammerd-test-utils-0.0.1-r600.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "a9429042906cbb8178b224d029a2965e5dca0974" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk hammerd .gn"
+
+PLATFORM_SUBDIR="hammerd"
+
+PYTHON_COMPAT=( python3_{6..8} )
+
+inherit cros-workon platform distutils-r1
+
+DESCRIPTION="Python wrapper of hammerd API and some python utility scripts."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/hammerd/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="+hammerd_api"
+
+BDEPEND="
+	dev-python/setuptools[${PYTHON_USEDEP}]
+"
+RDEPEND="
+	chromeos-base/hammerd:=
+"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+	platform_src_configure
+	distutils-r1_src_configure
+}
+
+src_compile() {
+	platform_src_compile
+	distutils-r1_src_compile
+}
+
+src_install() {
+	# Install exposed API.
+	dolib.so "${OUT}"/lib/libhammerd-api.so
+	insinto /usr/include/hammerd/
+	doins hammerd_api.h
+	distutils-r1_src_install
+
+	# Install hammer base tests on dut
+	dodir /usr/local/bin/hammertests
+	cp -R "${S}/hammertests" "${D}/usr/local/bin"
+}
diff --git a/chromeos-base/hammerd/hammerd-0.0.1-r1030.ebuild b/chromeos-base/hammerd/hammerd-0.0.1-r1030.ebuild
deleted file mode 100644
index 4b06837..0000000
--- a/chromeos-base/hammerd/hammerd-0.0.1-r1030.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "34e232daea866bc143a645ad413e0abb368929ee" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk hammerd .gn"
-
-PLATFORM_SUBDIR="hammerd"
-
-inherit cros-workon platform user
-
-DESCRIPTION="A daemon to update EC firmware of hammer, the base of the detachable."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/hammerd/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="-hammerd_api fuzzer"
-
-RDEPEND="
-	chromeos-base/ec-utils:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/vboot_reference:=
-	dev-libs/openssl:0=
-	sys-apps/flashmap:=
-"
-DEPEND="
-	${RDEPEND}
-	chromeos-base/system_api:=[fuzzer?]
-"
-
-pkg_preinst() {
-	# Create user and group for hammerd
-	enewuser "hammerd"
-	enewgroup "hammerd"
-}
-
-src_install() {
-	dobin "${OUT}/hammerd"
-
-	# Install upstart configs and scripts.
-	insinto /etc/init
-	doins init/*.conf
-	exeinto /usr/share/cros/init
-	doexe init/*.sh
-
-	# Install DBus config.
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.hammerd.conf
-
-	# Install rsyslog config.
-	insinto /etc/rsyslog.d
-	doins rsyslog/rsyslog.hammerd.conf
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/hammerd_load_ec_image_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/hammerd_update_fw_fuzzer
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/unittest_runner"
-}
diff --git a/chromeos-base/hammerd/hammerd-0.0.1-r1063.ebuild b/chromeos-base/hammerd/hammerd-0.0.1-r1063.ebuild
new file mode 100644
index 0000000..f6bc85d
--- /dev/null
+++ b/chromeos-base/hammerd/hammerd-0.0.1-r1063.ebuild
@@ -0,0 +1,69 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "a9429042906cbb8178b224d029a2965e5dca0974" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk hammerd .gn"
+
+PLATFORM_SUBDIR="hammerd"
+
+inherit cros-workon platform user
+
+DESCRIPTION="A daemon to update EC firmware of hammer, the base of the detachable."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/hammerd/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="-hammerd_api fuzzer"
+
+RDEPEND="
+	chromeos-base/ec-utils:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/vboot_reference:=
+	dev-libs/openssl:0=
+	sys-apps/flashmap:=
+"
+DEPEND="
+	${RDEPEND}
+	chromeos-base/system_api:=[fuzzer?]
+"
+
+pkg_preinst() {
+	# Create user and group for hammerd
+	enewuser "hammerd"
+	enewgroup "hammerd"
+}
+
+src_install() {
+	dobin "${OUT}/hammerd"
+
+	# Install upstart configs and scripts.
+	insinto /etc/init
+	doins init/*.conf
+	exeinto /usr/share/cros/init
+	doexe init/*.sh
+
+	# Install DBus config.
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.hammerd.conf
+
+	# Install rsyslog config.
+	insinto /etc/rsyslog.d
+	doins rsyslog/rsyslog.hammerd.conf
+
+	local fuzzer_component_id="167114"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/hammerd_load_ec_image_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/hammerd_update_fw_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/unittest_runner"
+}
diff --git a/chromeos-base/hammerd/hammerd-9999.ebuild b/chromeos-base/hammerd/hammerd-9999.ebuild
index eadc3d4..365000e 100644
--- a/chromeos-base/hammerd/hammerd-9999.ebuild
+++ b/chromeos-base/hammerd/hammerd-9999.ebuild
@@ -55,8 +55,11 @@
 	insinto /etc/rsyslog.d
 	doins rsyslog/rsyslog.hammerd.conf
 
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/hammerd_load_ec_image_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/hammerd_update_fw_fuzzer
+	local fuzzer_component_id="167114"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/hammerd_load_ec_image_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/hammerd_update_fw_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/hardware_verifier/hardware_verifier-0.0.1-r282.ebuild b/chromeos-base/hardware_verifier/hardware_verifier-0.0.1-r282.ebuild
deleted file mode 100644
index 3999d20..0000000
--- a/chromeos-base/hardware_verifier/hardware_verifier-0.0.1-r282.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="0553127ef2b660a5c71f12a9417ed4ad35f07120"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "aa0612733aca2d5ffa65470f07408228b473ebdb" "55818261ee7cf7ee7aaa319bfc67f186c8143b31" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk chromeos-config hardware_verifier metrics .gn"
-
-PLATFORM_SUBDIR="hardware_verifier"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Hardware Verifier Tool/Lib for Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/hardware_verifier/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="generated_cros_config unibuild"
-
-DEPEND="
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config:= )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
-	chromeos-base/chromeos-config-tools:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/system_api:=
-	chromeos-base/vboot_reference:=
-"
-
-pkg_preinst() {
-	# Create user and group for hardware_verifier
-	enewuser "hardware_verifier"
-	enewgroup "hardware_verifier"
-}
-
-src_install() {
-	dobin "${OUT}/hardware_verifier"
-
-	insinto /etc/init
-	doins init/hardware-verifier.conf
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/unittest_runner"
-}
diff --git a/chromeos-base/hardware_verifier/hardware_verifier-0.0.1-r346.ebuild b/chromeos-base/hardware_verifier/hardware_verifier-0.0.1-r346.ebuild
new file mode 100644
index 0000000..c455d11
--- /dev/null
+++ b/chromeos-base/hardware_verifier/hardware_verifier-0.0.1-r346.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "9b262e205d2e0104fbdc10f45d71aaca9a294501" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk chromeos-config hardware_verifier metrics .gn"
+
+PLATFORM_SUBDIR="hardware_verifier"
+
+inherit cros-workon cros-unibuild platform user
+
+DESCRIPTION="Hardware Verifier Tool/Lib for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/hardware_verifier/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+DEPEND="
+	chromeos-base/chromeos-config-tools:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/system_api:=
+	chromeos-base/vboot_reference:=
+"
+
+pkg_preinst() {
+	# Create user and group for hardware_verifier
+	enewuser "hardware_verifier"
+	enewgroup "hardware_verifier"
+}
+
+src_install() {
+	dobin "${OUT}/hardware_verifier"
+
+	insinto /etc/init
+	doins init/hardware-verifier.conf
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/unittest_runner"
+}
diff --git a/chromeos-base/hardware_verifier/hardware_verifier-9999.ebuild b/chromeos-base/hardware_verifier/hardware_verifier-9999.ebuild
index 32a93df..8a93afe 100644
--- a/chromeos-base/hardware_verifier/hardware_verifier-9999.ebuild
+++ b/chromeos-base/hardware_verifier/hardware_verifier-9999.ebuild
@@ -11,20 +11,15 @@
 
 PLATFORM_SUBDIR="hardware_verifier"
 
-inherit cros-workon platform user
+inherit cros-workon cros-unibuild platform user
 
 DESCRIPTION="Hardware Verifier Tool/Lib for Chrome OS"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/hardware_verifier/"
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="generated_cros_config unibuild"
 
 DEPEND="
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config:= )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
 	chromeos-base/chromeos-config-tools:=
 	>=chromeos-base/metrics-0.0.1-r3152:=
 	chromeos-base/system_api:=
diff --git a/chromeos-base/hardware_verifier_proto/hardware_verifier_proto-0.0.1-r182.ebuild b/chromeos-base/hardware_verifier_proto/hardware_verifier_proto-0.0.1-r182.ebuild
deleted file mode 100644
index 5285cc2..0000000
--- a/chromeos-base/hardware_verifier_proto/hardware_verifier_proto-0.0.1-r182.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="0553127ef2b660a5c71f12a9417ed4ad35f07120"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "55818261ee7cf7ee7aaa319bfc67f186c8143b31" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_GO_PACKAGES=(
-	"chromiumos/hardware_verifier/..."
-)
-
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk hardware_verifier metrics .gn"
-
-PLATFORM_SUBDIR="hardware_verifier/proto"
-
-inherit cros-workon cros-go platform
-
-DESCRIPTION="Hardware Verifier go proto for Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/hardware_verifier/proto"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-DEPEND="
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/system_api:=
-	chromeos-base/vboot_reference:=
-	dev-go/protobuf
-"
-
-src_unpack() {
-	platform_src_unpack
-	CROS_GO_WORKSPACE="${OUT}/gen/go"
-}
-
-src_install() {
-	cros-go_src_install
-}
diff --git a/chromeos-base/hardware_verifier_proto/hardware_verifier_proto-0.0.1-r226.ebuild b/chromeos-base/hardware_verifier_proto/hardware_verifier_proto-0.0.1-r226.ebuild
new file mode 100644
index 0000000..277b6b6
--- /dev/null
+++ b/chromeos-base/hardware_verifier_proto/hardware_verifier_proto-0.0.1-r226.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "9b262e205d2e0104fbdc10f45d71aaca9a294501" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_GO_PACKAGES=(
+	"chromiumos/hardware_verifier/..."
+)
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk hardware_verifier metrics .gn"
+
+PLATFORM_SUBDIR="hardware_verifier/proto"
+
+inherit cros-workon cros-go platform
+
+DESCRIPTION="Hardware Verifier go proto for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/hardware_verifier/proto"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+DEPEND="
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/system_api:=
+	chromeos-base/vboot_reference:=
+	dev-go/protobuf
+"
+
+src_unpack() {
+	platform_src_unpack
+	CROS_GO_WORKSPACE="${OUT}/gen/go"
+}
+
+src_install() {
+	cros-go_src_install
+}
diff --git a/chromeos-base/hps-firmware/OWNERS b/chromeos-base/hps-firmware/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/chromeos-base/hps-firmware/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/chromeos-base/hps-firmware/files/chromeos-version.sh b/chromeos-base/hps-firmware/files/chromeos-version.sh
new file mode 100644
index 0000000..9d45417
--- /dev/null
+++ b/chromeos-base/hps-firmware/files/chromeos-version.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+#
+# 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.
+
+# Assumes the first 'version =' line in the Cargo.toml is the version for the
+# crate.
+awk '/^version = / { print $3; exit }' "$1/mcu_rom/stage1/Cargo.toml" | tr -d '"'
diff --git a/chromeos-base/hps-firmware/hps-firmware-0.1.0-r69.ebuild b/chromeos-base/hps-firmware/hps-firmware-0.1.0-r69.ebuild
new file mode 100644
index 0000000..ea52cef
--- /dev/null
+++ b/chromeos-base/hps-firmware/hps-firmware-0.1.0-r69.ebuild
@@ -0,0 +1,120 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="dbc8a7364a79d30e87905542ab0dc7050cd1723f"
+CROS_WORKON_TREE="c008b6612af47a58fbb1c8d447a3d50ecada64b9"
+inherit cros-workon cros-rust
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_PROJECT="chromiumos/platform/hps-firmware"
+CROS_WORKON_LOCALNAME="platform/hps-firmware2"
+
+DESCRIPTION="HPS firmware and tooling"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/hps-firmware"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+# Add these for hps-mon / hps-util:
+	#>=dev-rust/argh-0.1.4:= <dev-rust/argh-0.2.0
+	#=dev-rust/ftd2xx-embedded-hal-0.7*:=
+	#>=dev-rust/serialport-4.0.1:= <dev-rust/serialport-5.0.0
+
+DEPEND="
+	>=dev-rust/anyhow-1.0.38:= <dev-rust/anyhow-2.0.0
+	>=dev-rust/bitflags-1.2.1:= <dev-rust/bitflags-2.0.0
+	=dev-rust/clap-3*:=
+	>=dev-rust/cortex-m-0.7.1:= <dev-rust/cortex-m-0.8.0
+	>=dev-rust/cortex-m-rt-0.6.13:= <dev-rust/cortex-m-rt-0.7.0
+	>=dev-rust/cortex-m-rtic-0.5.5:= <dev-rust/cortex-m-rtic-0.6.0
+	=dev-rust/crc-2*:=
+	>=dev-rust/defmt-0.2.1:= <dev-rust/defmt-0.3.0
+	=dev-rust/defmt-rtt-0.2*:=
+	>=dev-rust/ed25519-compact-0.1.9:= <dev-rust/ed25519-compact-0.2.0
+	>=dev-rust/embedded-hal-0.2.4:= <dev-rust/embedded-hal-0.3.0
+	=dev-rust/embedded-hal-mock-0.8*:=
+	>=dev-rust/git-version-0.3.4:= <dev-rust/git-version-0.4.0
+	>=dev-rust/hmac-sha256-0.1.6:= <dev-rust/hmac-sha256-0.2.0
+	>=dev-rust/num_enum-0.5.1:= <dev-rust/num_enum-0.6.0
+	=dev-rust/panic-halt-0.2*:=
+	=dev-rust/panic-reset-0.1*:=
+	>=dev-rust/spi-memory-0.2.0:= <dev-rust/spi-memory-0.3.0
+	=dev-rust/stm32g0xx-hal-0.1*:=
+	=dev-rust/ufmt-0.1*:=
+	=dev-rust/ufmt-write-0.1*:=
+	>=dev-rust/panic-rtt-target-0.1.2:= <dev-rust/panic-rtt-target-0.2.0
+	>=dev-rust/rtt-target-0.3.1:= <dev-rust/rtt-target-0.4.0
+"
+
+# Integer overflow checks introduce panicking paths into the firmware,
+# which bloats the size of the images with extra strings in .rodata.
+CROS_RUST_OVERFLOW_CHECKS=0
+
+src_unpack() {
+	cros-workon_src_unpack
+	cros-rust_src_unpack
+}
+
+src_prepare() {
+	# Not using cros-rust_src_prepare because it wrongly assumes Cargo.toml is
+	# in the root of ${S} and we don't need its manipulations anyway.
+
+	# We need to hide some crates from cargo because they still have
+	# unsatisfied dependencies, they can be added later.
+	sed -i -e '/hps-util/d' -e '/hps-mon/d' -e '/factory_tester_mcu/d' -e '/mcp2221/d' mcu_rom/Cargo.toml
+
+	default
+}
+
+src_configure() {
+	# CROS_BASE_RUSTFLAGS are for the AP, they are not applicable to
+	# HPS firmware, which is cross-compiled for STM32
+	unset CROS_BASE_RUSTFLAGS
+	cros-rust_configure_cargo
+
+	# Override some unwanted rustflags configured by cros-rust_configure_cargo.
+	# TODO(dcallagh): tidy this up properly in cros-rust.eclass.
+	# CROS_BASE_RUSTFLAGS are the same problem.
+	# asan and ubsan are also the same problem.
+	cat <<- EOF >> "${ECARGO_HOME}/config"
+	[target.'cfg(all(target_arch = "arm", target_os = "none"))']
+	rustflags = [ "-Clto=yes", "-Copt-level=z" ]
+	EOF
+}
+
+src_compile() {
+	# Build userspace tools
+	for tool in sign-rom ; do (
+		cd mcu_rom/${tool} || die
+		einfo "Building ${tool}"
+		ecargo_build
+	) done
+
+	# Build MCU firmware
+	for crate in stage0 stage1_app ; do (
+		einfo "Building MCU firmware ${crate}"
+		cd mcu_rom/${crate} || die
+		ecargo build \
+			--target="thumbv6m-none-eabi" \
+			--release
+		einfo "Flatting MCU firmware image ${crate}"
+		llvm-objcopy -O binary \
+			"${CARGO_TARGET_DIR}/thumbv6m-none-eabi/release/${crate}" \
+			"${CARGO_TARGET_DIR}/thumbv6m-none-eabi/release/${crate}.bin"
+	) done
+}
+
+src_test() {
+	# TODO invoke ecargo_test once we have complete workspace deps satisfied
+	:
+}
+
+src_install() {
+	newbin "$(cros-rust_get_build_dir)/sign-rom" hps-sign-rom
+
+	insinto "/usr/lib/firmware/hps"
+	newins "${CARGO_TARGET_DIR}/thumbv6m-none-eabi/release/stage0.bin" "mcu_stage0.bin"
+	newins "${CARGO_TARGET_DIR}/thumbv6m-none-eabi/release/stage1_app.bin" "mcu_stage1.bin"
+}
diff --git a/chromeos-base/hps-firmware/hps-firmware-9999.ebuild b/chromeos-base/hps-firmware/hps-firmware-9999.ebuild
new file mode 100644
index 0000000..10c4225
--- /dev/null
+++ b/chromeos-base/hps-firmware/hps-firmware-9999.ebuild
@@ -0,0 +1,118 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cros-workon cros-rust
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_PROJECT="chromiumos/platform/hps-firmware"
+CROS_WORKON_LOCALNAME="platform/hps-firmware2"
+
+DESCRIPTION="HPS firmware and tooling"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/hps-firmware"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+
+# Add these for hps-mon / hps-util:
+	#>=dev-rust/argh-0.1.4:= <dev-rust/argh-0.2.0
+	#=dev-rust/ftd2xx-embedded-hal-0.7*:=
+	#>=dev-rust/serialport-4.0.1:= <dev-rust/serialport-5.0.0
+
+DEPEND="
+	>=dev-rust/anyhow-1.0.38:= <dev-rust/anyhow-2.0.0
+	>=dev-rust/bitflags-1.2.1:= <dev-rust/bitflags-2.0.0
+	=dev-rust/clap-3*:=
+	>=dev-rust/cortex-m-0.7.1:= <dev-rust/cortex-m-0.8.0
+	>=dev-rust/cortex-m-rt-0.6.13:= <dev-rust/cortex-m-rt-0.7.0
+	>=dev-rust/cortex-m-rtic-0.5.5:= <dev-rust/cortex-m-rtic-0.6.0
+	=dev-rust/crc-2*:=
+	>=dev-rust/defmt-0.2.1:= <dev-rust/defmt-0.3.0
+	=dev-rust/defmt-rtt-0.2*:=
+	>=dev-rust/ed25519-compact-0.1.9:= <dev-rust/ed25519-compact-0.2.0
+	>=dev-rust/embedded-hal-0.2.4:= <dev-rust/embedded-hal-0.3.0
+	=dev-rust/embedded-hal-mock-0.8*:=
+	>=dev-rust/git-version-0.3.4:= <dev-rust/git-version-0.4.0
+	>=dev-rust/hmac-sha256-0.1.6:= <dev-rust/hmac-sha256-0.2.0
+	>=dev-rust/num_enum-0.5.1:= <dev-rust/num_enum-0.6.0
+	=dev-rust/panic-halt-0.2*:=
+	=dev-rust/panic-reset-0.1*:=
+	>=dev-rust/spi-memory-0.2.0:= <dev-rust/spi-memory-0.3.0
+	=dev-rust/stm32g0xx-hal-0.1*:=
+	=dev-rust/ufmt-0.1*:=
+	=dev-rust/ufmt-write-0.1*:=
+	>=dev-rust/panic-rtt-target-0.1.2:= <dev-rust/panic-rtt-target-0.2.0
+	>=dev-rust/rtt-target-0.3.1:= <dev-rust/rtt-target-0.4.0
+"
+
+# Integer overflow checks introduce panicking paths into the firmware,
+# which bloats the size of the images with extra strings in .rodata.
+CROS_RUST_OVERFLOW_CHECKS=0
+
+src_unpack() {
+	cros-workon_src_unpack
+	cros-rust_src_unpack
+}
+
+src_prepare() {
+	# Not using cros-rust_src_prepare because it wrongly assumes Cargo.toml is
+	# in the root of ${S} and we don't need its manipulations anyway.
+
+	# We need to hide some crates from cargo because they still have
+	# unsatisfied dependencies, they can be added later.
+	sed -i -e '/hps-util/d' -e '/hps-mon/d' -e '/factory_tester_mcu/d' -e '/mcp2221/d' mcu_rom/Cargo.toml
+
+	default
+}
+
+src_configure() {
+	# CROS_BASE_RUSTFLAGS are for the AP, they are not applicable to
+	# HPS firmware, which is cross-compiled for STM32
+	unset CROS_BASE_RUSTFLAGS
+	cros-rust_configure_cargo
+
+	# Override some unwanted rustflags configured by cros-rust_configure_cargo.
+	# TODO(dcallagh): tidy this up properly in cros-rust.eclass.
+	# CROS_BASE_RUSTFLAGS are the same problem.
+	# asan and ubsan are also the same problem.
+	cat <<- EOF >> "${ECARGO_HOME}/config"
+	[target.'cfg(all(target_arch = "arm", target_os = "none"))']
+	rustflags = [ "-Clto=yes", "-Copt-level=z" ]
+	EOF
+}
+
+src_compile() {
+	# Build userspace tools
+	for tool in sign-rom ; do (
+		cd mcu_rom/${tool} || die
+		einfo "Building ${tool}"
+		ecargo_build
+	) done
+
+	# Build MCU firmware
+	for crate in stage0 stage1_app ; do (
+		einfo "Building MCU firmware ${crate}"
+		cd mcu_rom/${crate} || die
+		ecargo build \
+			--target="thumbv6m-none-eabi" \
+			--release
+		einfo "Flatting MCU firmware image ${crate}"
+		llvm-objcopy -O binary \
+			"${CARGO_TARGET_DIR}/thumbv6m-none-eabi/release/${crate}" \
+			"${CARGO_TARGET_DIR}/thumbv6m-none-eabi/release/${crate}.bin"
+	) done
+}
+
+src_test() {
+	# TODO invoke ecargo_test once we have complete workspace deps satisfied
+	:
+}
+
+src_install() {
+	newbin "$(cros-rust_get_build_dir)/sign-rom" hps-sign-rom
+
+	insinto "/usr/lib/firmware/hps"
+	newins "${CARGO_TARGET_DIR}/thumbv6m-none-eabi/release/stage0.bin" "mcu_stage0.bin"
+	newins "${CARGO_TARGET_DIR}/thumbv6m-none-eabi/release/stage1_app.bin" "mcu_stage1.bin"
+}
diff --git a/chromeos-base/hps-firmware/metadata.xml b/chromeos-base/hps-firmware/metadata.xml
new file mode 100644
index 0000000..2d15b541
--- /dev/null
+++ b/chromeos-base/hps-firmware/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type='project'>
+	<email>chromium-os-dev@chromium.org</email>
+	<name>Maintained by The Chromium OS Authors.</name>
+</maintainer>
+<longdescription>
+	The hps-firmware package contains the source to build for the HPS board.
+</longdescription>
+</pkgmetadata>
diff --git a/chromeos-base/hps-tool/hps-tool-0.0.1-r116.ebuild b/chromeos-base/hps-tool/hps-tool-0.0.1-r116.ebuild
new file mode 100644
index 0000000..c195be9
--- /dev/null
+++ b/chromeos-base/hps-tool/hps-tool-0.0.1-r116.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="d5601d708c5df7c6e6e38ebde5c47af57099db69"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "2da34f68aa4bdc33e7ba1b1297e582fb7d427dc6" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "e08a2eb734e33827dffeecf57eca046cd1091373")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="common-mk hps .gn metrics"
+
+PLATFORM_SUBDIR="hps/util"
+
+inherit cros-workon platform
+
+DESCRIPTION="HPS utilities and tool"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/main/hps"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+
+COMMON_DEPEND="
+	dev-libs/libusb:=
+	dev-embedded/libftdi:=
+	chromeos-base/metrics:=
+	"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="
+	${COMMON_DEPEND}
+	"
+
+src_install() {
+	dobin "${OUT}"/hps
+}
diff --git a/chromeos-base/hps-tool/hps-tool-0.0.1-r49.ebuild b/chromeos-base/hps-tool/hps-tool-0.0.1-r49.ebuild
deleted file mode 100644
index 3444ecc..0000000
--- a/chromeos-base/hps-tool/hps-tool-0.0.1-r49.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="1af5e10724a3a74cd6fb7fae4e802f044d458f8d"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "bd22f6fa6d8ddce914d34c02064afe2f9e6abaf3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="common-mk hps .gn"
-
-PLATFORM_SUBDIR="hps/util"
-
-inherit cros-workon platform
-
-DESCRIPTION="HPS utilities and tool"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/main/hps"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-
-COMMON_DEPEND="
-	dev-libs/libusb:=
-	dev-embedded/libftdi:=
-	"
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="
-	${COMMON_DEPEND}
-	"
-
-src_install() {
-	dobin "${OUT}"/hps
-}
diff --git a/chromeos-base/hps-tool/hps-tool-9999.ebuild b/chromeos-base/hps-tool/hps-tool-9999.ebuild
index 845fcd7..f2ebd69 100644
--- a/chromeos-base/hps-tool/hps-tool-9999.ebuild
+++ b/chromeos-base/hps-tool/hps-tool-9999.ebuild
@@ -6,7 +6,7 @@
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_OUTOFTREE_BUILD=1
 CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="common-mk hps .gn"
+CROS_WORKON_SUBTREE="common-mk hps .gn metrics"
 
 PLATFORM_SUBDIR="hps/util"
 
@@ -22,6 +22,7 @@
 COMMON_DEPEND="
 	dev-libs/libusb:=
 	dev-embedded/libftdi:=
+	chromeos-base/metrics:=
 	"
 
 RDEPEND="${COMMON_DEPEND}"
diff --git a/chromeos-base/hpsd/hpsd-0.0.1-r104.ebuild b/chromeos-base/hpsd/hpsd-0.0.1-r104.ebuild
new file mode 100644
index 0000000..71330e4
--- /dev/null
+++ b/chromeos-base/hpsd/hpsd-0.0.1-r104.ebuild
@@ -0,0 +1,68 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="d5601d708c5df7c6e6e38ebde5c47af57099db69"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "2da34f68aa4bdc33e7ba1b1297e582fb7d427dc6" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e08a2eb734e33827dffeecf57eca046cd1091373")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE=".gn hps common-mk metrics"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="hps"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Chrome OS HPS daemon."
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="hpsd-roflash"
+
+RDEPEND="
+	hpsd-roflash? ( dev-embedded/stm32flash:= )
+"
+
+DEPEND="${RDEPEND}
+	chromeos-base/metrics:=
+	chromeos-base/system_api:=
+	dev-embedded/libftdi:=
+"
+
+pkg_preinst() {
+	enewuser "hpsd"
+	enewgroup "hpsd"
+}
+
+src_install() {
+
+	dosbin "${OUT}"/hpsd
+
+	# Install upstart configuration.
+	insinto /etc/init
+	doins daemon/init/hpsd.conf
+
+	if use hpsd-roflash ; then
+		doins daemon/init/hpsd_roflash.conf
+	fi
+
+	insinto /etc/dbus-1/system.d
+	doins daemon/dbus/org.chromium.Hps.conf
+}
+
+platform_pkg_test() {
+	local tests=(
+		dev_test
+		hps_test
+		hps_metrics_test
+		hps_daemon_test
+		hps_filter_test
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test run "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/hpsd/hpsd-0.0.1-r37.ebuild b/chromeos-base/hpsd/hpsd-0.0.1-r37.ebuild
deleted file mode 100644
index 86abc55..0000000
--- a/chromeos-base/hpsd/hpsd-0.0.1-r37.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="1af5e10724a3a74cd6fb7fae4e802f044d458f8d"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "bd22f6fa6d8ddce914d34c02064afe2f9e6abaf3" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE=".gn hps common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="hps"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Chrome OS HPS daemon."
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-"
-
-DEPEND="${RDEPEND}
-	chromeos-base/system_api:=
-	dev-embedded/libftdi:=
-"
-
-pkg_preinst() {
-	enewuser "hpsd"
-	enewgroup "hpsd"
-}
-
-src_install() {
-
-	dosbin "${OUT}"/hpsd
-
-	# Install upstart configuration.
-	insinto /etc/init
-	doins daemon/init/*.conf
-
-	insinto /etc/dbus-1/system.d
-	doins daemon/dbus/org.chromium.Hps.conf
-}
-
-platform_pkg_test() {
-	local tests=(
-		dev_test
-		hps_test
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test run "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/hpsd/hpsd-9999.ebuild b/chromeos-base/hpsd/hpsd-9999.ebuild
index c4b3dd1..ce5b04e 100644
--- a/chromeos-base/hpsd/hpsd-9999.ebuild
+++ b/chromeos-base/hpsd/hpsd-9999.ebuild
@@ -5,7 +5,7 @@
 
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE=".gn hps common-mk"
+CROS_WORKON_SUBTREE=".gn hps common-mk metrics"
 CROS_WORKON_OUTOFTREE_BUILD="1"
 CROS_WORKON_INCREMENTAL_BUILD="1"
 
@@ -17,12 +17,14 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE=""
+IUSE="hpsd-roflash"
 
 RDEPEND="
+	hpsd-roflash? ( dev-embedded/stm32flash:= )
 "
 
 DEPEND="${RDEPEND}
+	chromeos-base/metrics:=
 	chromeos-base/system_api:=
 	dev-embedded/libftdi:=
 "
@@ -38,7 +40,11 @@
 
 	# Install upstart configuration.
 	insinto /etc/init
-	doins daemon/init/*.conf
+	doins daemon/init/hpsd.conf
+
+	if use hpsd-roflash ; then
+		doins daemon/init/hpsd_roflash.conf
+	fi
 
 	insinto /etc/dbus-1/system.d
 	doins daemon/dbus/org.chromium.Hps.conf
@@ -48,6 +54,9 @@
 	local tests=(
 		dev_test
 		hps_test
+		hps_metrics_test
+		hps_daemon_test
+		hps_filter_test
 	)
 
 	local test_bin
diff --git a/chromeos-base/hwid_extractor/hwid_extractor-0.0.1-r275.ebuild b/chromeos-base/hwid_extractor/hwid_extractor-0.0.1-r275.ebuild
deleted file mode 100644
index abc853d..0000000
--- a/chromeos-base/hwid_extractor/hwid_extractor-0.0.1-r275.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT=("d8752e21dc6b41f37e2ab2d5db97eaf1bfb2514e" "affa5945aeb260f229adc432f6bb91855d1f907a")
-CROS_WORKON_TREE=("787e61f61f8f834c455b1f09040b8c883b56e1bc" "023c756f20b8f5566813867e074a4d444a80d343")
-CROS_WORKON_PROJECT=("chromiumos/platform/factory" "chromiumos/chromite")
-CROS_WORKON_LOCALNAME=("platform/factory" "../chromite")
-CROS_WORKON_SUBTREE=("py" "lib")
-CROS_WORKON_DESTDIR=("${S}" "${S}/chromite")
-
-inherit cros-workon
-
-DESCRIPTION="Chrome OS HWID Extractor"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/factory/"
-SRC_URI=""
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros_host"
-
-RDEPEND="chromeos-base/vboot_reference
-	chromeos-base/vpd
-	dev-python/pyserial
-	dev-util/hdctools
-	sys-apps/flashrom
-"
-
-src_install() {
-	local lib="/usr/local"
-	if use cros_host; then
-		lib="/usr/lib"
-	fi
-	emake -C py/hwid_extractor \
-		DESTDIR="${D}" \
-		LIB_DIR="${lib}" \
-		CHROMITE_SRC_PATH="${S}/chromite/lib" \
-		install
-}
diff --git a/chromeos-base/hwid_extractor/hwid_extractor-0.0.1-r487.ebuild b/chromeos-base/hwid_extractor/hwid_extractor-0.0.1-r487.ebuild
new file mode 100644
index 0000000..6940c54
--- /dev/null
+++ b/chromeos-base/hwid_extractor/hwid_extractor-0.0.1-r487.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT=("24c2d1e193a48d85e1baf6b86cd7192f15c896fa" "3834fefc28ae84191c4f3204905347f2937e6b7e")
+CROS_WORKON_TREE=("868631771d0a506c789c4d2fac62435ede8cfe6e" "3ef2d8a1bb49eda7fe240c3a798aa6b0e8cfe261" "55c0c5eeb7ea37270d5b8601e2000e8fe8a79704" "8f6de2a783ab3318fdbf266502f7120ef3357528" "bb7de3b1d4f960d843d3357bf0eff14cfbd3603d")
+CROS_WORKON_PROJECT=("chromiumos/platform/factory" "chromiumos/chromite")
+CROS_WORKON_LOCALNAME=("platform/factory" "../chromite")
+CROS_WORKON_SUBTREE=("py" "lib bin scripts PRESUBMIT.cfg")
+CROS_WORKON_DESTDIR=("${S}" "${S}/chromite")
+
+inherit cros-workon
+
+DESCRIPTION="Chrome OS HWID Extractor"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/factory/"
+SRC_URI=""
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cros_host"
+
+RDEPEND="chromeos-base/vboot_reference
+	chromeos-base/vpd
+	dev-python/pyserial
+	dev-util/hdctools
+	sys-apps/flashrom
+"
+
+src_install() {
+	local lib="/usr/local"
+	if use cros_host; then
+		lib="/usr/lib"
+	fi
+	emake -C py/hwid_extractor \
+		DESTDIR="${D}" \
+		LIB_DIR="${lib}" \
+		CHROMITE_PATH="${S}/chromite" \
+		CHROMITE_SRC_PATH="${S}/chromite/lib" \
+		install
+}
diff --git a/chromeos-base/hwid_extractor/hwid_extractor-9999.ebuild b/chromeos-base/hwid_extractor/hwid_extractor-9999.ebuild
index 8920fa8..8a0bb59 100644
--- a/chromeos-base/hwid_extractor/hwid_extractor-9999.ebuild
+++ b/chromeos-base/hwid_extractor/hwid_extractor-9999.ebuild
@@ -4,7 +4,7 @@
 EAPI=7
 CROS_WORKON_PROJECT=("chromiumos/platform/factory" "chromiumos/chromite")
 CROS_WORKON_LOCALNAME=("platform/factory" "../chromite")
-CROS_WORKON_SUBTREE=("py" "lib")
+CROS_WORKON_SUBTREE=("py" "lib bin scripts PRESUBMIT.cfg")
 CROS_WORKON_DESTDIR=("${S}" "${S}/chromite")
 
 inherit cros-workon
@@ -31,6 +31,7 @@
 	emake -C py/hwid_extractor \
 		DESTDIR="${D}" \
 		LIB_DIR="${lib}" \
+		CHROMITE_PATH="${S}/chromite" \
 		CHROMITE_SRC_PATH="${S}/chromite/lib" \
 		install
 }
diff --git a/chromeos-base/hwsec-test-utils/hwsec-test-utils-0.0.1-r220.ebuild b/chromeos-base/hwsec-test-utils/hwsec-test-utils-0.0.1-r220.ebuild
deleted file mode 100644
index d9a1a34..0000000
--- a/chromeos-base/hwsec-test-utils/hwsec-test-utils-0.0.1-r220.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 2020 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("8a6aa0783afea740fe52cec225aef91187cbcde6" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "13b6cac5121d40667689f2d48faddcb1bb34e1bb" "a06a3f47395fb7b584188c6852764bc773e5497e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="attestation common-mk hwsec-test-utils trunks .gn"
-
-PLATFORM_SUBDIR="hwsec-test-utils"
-
-inherit cros-workon platform
-
-DESCRIPTION="Hwsec-related test-only features. This package resides in test images only."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/hwsec-test-utils/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test tpm tpm2"
-REQUIRED_USE="tpm2? ( !tpm )"
-
-RDEPEND="
-	tpm2? (
-		chromeos-base/trunks:=
-	)
-	!tpm2? (
-		app-crypt/trousers:=
-	)
-"
-
-DEPEND="${RDEPEND}
-	tpm2? (
-		chromeos-base/trunks:=[test?]
-	)
-	chromeos-base/attestation:=
-	chromeos-base/system_api:=
-	dev-libs/openssl:=
-	dev-libs/protobuf:=
-"
-
-src_install() {
-
-	# Installs attestation-injected-keys
-	dobin "${OUT}/attestation-injected-keys"
-
-	# Installs hwsec-test-va
-	dobin "${OUT}/hwsec-test-va"
-
-	# Install fake pca agent
-	dobin "${OUT}"/fake_pca_agentd
-
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/hwsec-test-utils_testrunner"
-}
diff --git a/chromeos-base/hwsec-test-utils/hwsec-test-utils-0.0.1-r296.ebuild b/chromeos-base/hwsec-test-utils/hwsec-test-utils-0.0.1-r296.ebuild
new file mode 100644
index 0000000..498dffb
--- /dev/null
+++ b/chromeos-base/hwsec-test-utils/hwsec-test-utils-0.0.1-r296.ebuild
@@ -0,0 +1,65 @@
+# Copyright 2020 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="7e56fbcc6f3c9e9ba98bf43a52940100e5fbc918"
+CROS_WORKON_TREE=("0eb41e5da113495ed84a62fb776c5190764cc83d" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "f864cc78ddb7b33f44b3ed6a47c0df1c53e2d07a" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "1e9ca239fab09ba22b58e4a22d63e2ede865b159" "d8da1275feb26afab354f35df7316b3840f8330b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="attestation common-mk hwsec-test-utils libhwsec libhwsec-foundation trunks .gn"
+
+PLATFORM_SUBDIR="hwsec-test-utils"
+
+inherit cros-workon platform
+
+DESCRIPTION="Hwsec-related test-only features. This package resides in test images only."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/hwsec-test-utils/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test tpm tpm_dynamic tpm2"
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
+
+RDEPEND="
+	tpm2? (
+		chromeos-base/trunks:=
+	)
+	tpm? (
+		app-crypt/trousers:=
+	)
+"
+
+DEPEND="${RDEPEND}
+	tpm2? (
+		chromeos-base/trunks:=[test?]
+	)
+	chromeos-base/attestation:=
+	chromeos-base/libhwsec-foundation:=
+	chromeos-base/system_api:=
+	dev-libs/openssl:=
+	dev-libs/protobuf:=
+"
+
+src_install() {
+
+	# Installs attestation-injected-keys
+	dobin "${OUT}/attestation-injected-keys"
+
+	# Installs hwsec-test-va
+	dobin "${OUT}/hwsec-test-va"
+
+	# Install fake pca agent
+	dobin "${OUT}"/fake_pca_agentd
+
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/hwsec-test-utils_testrunner"
+}
diff --git a/chromeos-base/hwsec-test-utils/hwsec-test-utils-9999.ebuild b/chromeos-base/hwsec-test-utils/hwsec-test-utils-9999.ebuild
index 87cb055..b294bde 100644
--- a/chromeos-base/hwsec-test-utils/hwsec-test-utils-9999.ebuild
+++ b/chromeos-base/hwsec-test-utils/hwsec-test-utils-9999.ebuild
@@ -8,7 +8,7 @@
 CROS_WORKON_LOCALNAME="platform2"
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="attestation common-mk hwsec-test-utils trunks .gn"
+CROS_WORKON_SUBTREE="attestation common-mk hwsec-test-utils libhwsec libhwsec-foundation trunks .gn"
 
 PLATFORM_SUBDIR="hwsec-test-utils"
 
@@ -19,14 +19,17 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="test tpm tpm2"
-REQUIRED_USE="tpm2? ( !tpm )"
+IUSE="test tpm tpm_dynamic tpm2"
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
 
 RDEPEND="
 	tpm2? (
 		chromeos-base/trunks:=
 	)
-	!tpm2? (
+	tpm? (
 		app-crypt/trousers:=
 	)
 "
@@ -36,6 +39,7 @@
 		chromeos-base/trunks:=[test?]
 	)
 	chromeos-base/attestation:=
+	chromeos-base/libhwsec-foundation:=
 	chromeos-base/system_api:=
 	dev-libs/openssl:=
 	dev-libs/protobuf:=
diff --git a/chromeos-base/iioservice/iioservice-0.0.1-r146.ebuild b/chromeos-base/iioservice/iioservice-0.0.1-r146.ebuild
deleted file mode 100644
index a9303f8..0000000
--- a/chromeos-base/iioservice/iioservice-0.0.1-r146.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="08aee9d7a91dddd5977b31ca2a2833ba54f8d89a"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "da73aae6d89c8e69c3740af612610792ce42b1a8" "359903647899af99fb1bc9ba9d666b0e78fcb3a8" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-# TODO(crbug.com/809389): Remove libmems from this list.
-CROS_WORKON_SUBTREE=".gn iioservice libmems common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="iioservice/daemon"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Chrome OS sensor HAL IPC util."
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="+seccomp"
-
-RDEPEND="
-	chromeos-base/libiioservice_ipc:=
-	chromeos-base/libmems:=
-	chromeos-base/mems_setup
-	virtual/chromeos-ec-driver-init
-"
-
-DEPEND="${RDEPEND}
-	chromeos-base/system_api:=
-"
-
-pkg_preinst() {
-	enewuser "iioservice"
-	enewgroup "iioservice"
-}
-
-src_install() {
-	dosbin "${OUT}"/iioservice
-
-	# Install upstart configuration.
-	insinto /etc/init
-	doins init/*.conf
-
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.Iioservice.conf
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	use seccomp && newins "seccomp/iioservice-${ARCH}.policy" iioservice-seccomp.policy
-}
-
-platform_pkg_test() {
-	local tests=(
-		iioservice_testrunner
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/iioservice/iioservice-0.0.1-r222.ebuild b/chromeos-base/iioservice/iioservice-0.0.1-r222.ebuild
new file mode 100644
index 0000000..aeecd95
--- /dev/null
+++ b/chromeos-base/iioservice/iioservice-0.0.1-r222.ebuild
@@ -0,0 +1,86 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "8300206169b81cf8f6600886bc1f5a86e62ace98")
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "14acd311021ff7b4a6e5a812cf6ef18bab1ede72" "ba93b35f6b12686bf293ce79255da511c89278e1" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e08a2eb734e33827dffeecf57eca046cd1091373" "7b1902bfd171c628068c91fc41e253d0c08df363")
+inherit cros-constants
+
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform2"
+	"aosp/platform/frameworks/native"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform2"
+	"aosp/frameworks/native"
+)
+CROS_WORKON_REPO=(
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_HOST_URL}"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}/platform2"
+	"${S}/platform2/aosp/frameworks/native"
+)
+CROS_WORKON_EGIT_BRANCH=(
+	"main"
+	"master"
+)
+# TODO(crbug.com/809389): Remove libmems from this list.
+CROS_WORKON_SUBTREE=(".gn iioservice libmems common-mk metrics" "")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="iioservice/daemon"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Chrome OS sensor HAL IPC util."
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="+seccomp"
+
+RDEPEND="
+	!chromeos-base/chromeos-accelerometer-init
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/libiioservice_ipc:=
+	chromeos-base/libmems:=
+	chromeos-base/mems_setup
+	virtual/chromeos-ec-driver-init
+"
+
+DEPEND="${RDEPEND}
+	chromeos-base/system_api:=
+"
+
+pkg_preinst() {
+	enewuser "iioservice"
+	enewgroup "iioservice"
+}
+
+src_install() {
+	dosbin "${OUT}"/iioservice
+
+	# Install upstart configuration.
+	insinto /etc/init
+	doins init/*.conf
+
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.Iioservice.conf
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	use seccomp && newins "seccomp/iioservice-${ARCH}.policy" iioservice-seccomp.policy
+}
+
+platform_pkg_test() {
+	local tests=(
+		iioservice_testrunner
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/iioservice/iioservice-9999.ebuild b/chromeos-base/iioservice/iioservice-9999.ebuild
index d143df7..a27e9c2 100644
--- a/chromeos-base/iioservice/iioservice-9999.ebuild
+++ b/chromeos-base/iioservice/iioservice-9999.ebuild
@@ -3,11 +3,30 @@
 
 EAPI=7
 
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
+inherit cros-constants
+
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform2"
+	"aosp/platform/frameworks/native"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform2"
+	"aosp/frameworks/native"
+)
+CROS_WORKON_REPO=(
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_HOST_URL}"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}/platform2"
+	"${S}/platform2/aosp/frameworks/native"
+)
+CROS_WORKON_EGIT_BRANCH=(
+	"main"
+	"master"
+)
 # TODO(crbug.com/809389): Remove libmems from this list.
-CROS_WORKON_SUBTREE=".gn iioservice libmems common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_SUBTREE=(".gn iioservice libmems common-mk metrics" "")
 CROS_WORKON_INCREMENTAL_BUILD="1"
 
 PLATFORM_SUBDIR="iioservice/daemon"
@@ -21,6 +40,8 @@
 IUSE="+seccomp"
 
 RDEPEND="
+	!chromeos-base/chromeos-accelerometer-init
+	>=chromeos-base/metrics-0.0.1-r3152:=
 	chromeos-base/libiioservice_ipc:=
 	chromeos-base/libmems:=
 	chromeos-base/mems_setup
diff --git a/chromeos-base/iioservice_simpleclient/iioservice_simpleclient-0.0.1-r153.ebuild b/chromeos-base/iioservice_simpleclient/iioservice_simpleclient-0.0.1-r153.ebuild
new file mode 100644
index 0000000..dd3577e
--- /dev/null
+++ b/chromeos-base/iioservice_simpleclient/iioservice_simpleclient-0.0.1-r153.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "14acd311021ff7b4a6e5a812cf6ef18bab1ede72" "ba93b35f6b12686bf293ce79255da511c89278e1" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Remove libmems from this list.
+CROS_WORKON_SUBTREE="common-mk iioservice libmems .gn"
+
+PLATFORM_SUBDIR="iioservice/iioservice_simpleclient"
+
+inherit cros-workon platform
+
+DESCRIPTION="A simple client to test iioservice's mojo IPC for Chromium OS."
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+	chromeos-base/libiioservice_ipc:=
+	chromeos-base/libmems:=
+"
+
+DEPEND="${RDEPEND}
+	chromeos-base/system_api:=
+"
+
+src_install() {
+	dosbin "${OUT}"/iioservice_simpleclient
+	dosbin "${OUT}"/iioservice_query
+}
diff --git a/chromeos-base/iioservice_simpleclient/iioservice_simpleclient-0.0.1-r90.ebuild b/chromeos-base/iioservice_simpleclient/iioservice_simpleclient-0.0.1-r90.ebuild
deleted file mode 100644
index d9157c9..0000000
--- a/chromeos-base/iioservice_simpleclient/iioservice_simpleclient-0.0.1-r90.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="08aee9d7a91dddd5977b31ca2a2833ba54f8d89a"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "da73aae6d89c8e69c3740af612610792ce42b1a8" "359903647899af99fb1bc9ba9d666b0e78fcb3a8" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Remove libmems from this list.
-CROS_WORKON_SUBTREE="common-mk iioservice libmems .gn"
-
-PLATFORM_SUBDIR="iioservice/iioservice_simpleclient"
-
-inherit cros-workon platform
-
-DESCRIPTION="A simple client to test iioservice's mojo IPC for Chromium OS."
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-	chromeos-base/libiioservice_ipc:=
-	chromeos-base/libmems:=
-"
-
-DEPEND="${RDEPEND}
-	chromeos-base/system_api:=
-"
-
-src_install() {
-	dosbin "${OUT}"/iioservice_simpleclient
-}
diff --git a/chromeos-base/iioservice_simpleclient/iioservice_simpleclient-9999.ebuild b/chromeos-base/iioservice_simpleclient/iioservice_simpleclient-9999.ebuild
index 7b9e737..d8afa1f 100644
--- a/chromeos-base/iioservice_simpleclient/iioservice_simpleclient-9999.ebuild
+++ b/chromeos-base/iioservice_simpleclient/iioservice_simpleclient-9999.ebuild
@@ -31,4 +31,5 @@
 
 src_install() {
 	dosbin "${OUT}"/iioservice_simpleclient
+	dosbin "${OUT}"/iioservice_query
 }
diff --git a/chromeos-base/imageloader-client/imageloader-client-0.0.1-r646.ebuild b/chromeos-base/imageloader-client/imageloader-client-0.0.1-r646.ebuild
deleted file mode 100644
index a1bb899..0000000
--- a/chromeos-base/imageloader-client/imageloader-client-0.0.1-r646.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "8742508828a5be4d730c2310952b9abe1398d014" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk imageloader .gn"
-
-PLATFORM_SUBDIR="imageloader/client"
-
-inherit cros-workon platform
-
-DESCRIPTION="ImageLoader DBus client library for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/imageloader/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros_host"
-
-# D-Bus proxies generated by this client library depend on the code generator
-# itself (chromeos-dbus-bindings) and produce header files that rely on
-# libbrillo library.
-DEPEND="
-	cros_host? ( chromeos-base/chromeos-dbus-bindings:= )
-"
-
-RDEPEND="chromeos-base/imageloader"
-
-src_install() {
-	# Install DBus client library.
-	platform_install_dbus_client_lib "imageloader"
-}
diff --git a/chromeos-base/imageloader-client/imageloader-client-0.0.1-r681.ebuild b/chromeos-base/imageloader-client/imageloader-client-0.0.1-r681.ebuild
new file mode 100644
index 0000000..1dfca01
--- /dev/null
+++ b/chromeos-base/imageloader-client/imageloader-client-0.0.1-r681.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "79b51dbf384f1e7233f895ca42453f7f864c4abd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk imageloader .gn"
+
+PLATFORM_SUBDIR="imageloader/client"
+
+inherit cros-workon platform
+
+DESCRIPTION="ImageLoader DBus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/imageloader/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cros_host"
+
+# D-Bus proxies generated by this client library depend on the code generator
+# itself (chromeos-dbus-bindings) and produce header files that rely on
+# libbrillo library.
+DEPEND="
+	cros_host? ( chromeos-base/chromeos-dbus-bindings:= )
+"
+
+RDEPEND="chromeos-base/imageloader"
+
+src_install() {
+	# Install DBus client library.
+	platform_install_dbus_client_lib "imageloader"
+}
diff --git a/chromeos-base/imageloader/imageloader-0.0.1-r1604.ebuild b/chromeos-base/imageloader/imageloader-0.0.1-r1604.ebuild
deleted file mode 100644
index 6ee60a5..0000000
--- a/chromeos-base/imageloader/imageloader-0.0.1-r1604.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "8742508828a5be4d730c2310952b9abe1398d014" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk imageloader .gn"
-
-PLATFORM_SUBDIR="imageloader"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Allow mounting verified utility images"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/imageloader/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="fuzzer"
-
-RDEPEND="
-	chromeos-base/vboot_reference:=
-	dev-libs/openssl:=
-	dev-libs/protobuf:=
-	fuzzer? ( dev-libs/libprotobuf-mutator:= )
-	sys-fs/lvm2:="
-
-DEPEND="${RDEPEND}
-	chromeos-base/system_api:=[fuzzer?]"
-
-src_install() {
-	# Install manifest parsing libraries
-	dolib.so "${OUT}/lib/libimageloader-manifest.so"
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins libimageloader-manifest.pc
-
-	insinto "/usr/include/libimageloader"
-	doins manifest.h
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	newins "seccomp/imageloader-seccomp-${ARCH}.policy" imageloader-seccomp.policy
-	newins "seccomp/imageloader-helper-seccomp-${ARCH}.policy" imageloader-helper-seccomp.policy
-	cd "${OUT}"
-	dosbin imageloader
-	cd "${S}"
-	insinto /etc/dbus-1/system.d
-	doins dbus_permissions/org.chromium.ImageLoader.conf
-	insinto /usr/share/dbus-1/system-services
-	doins dbus_service/org.chromium.ImageLoader.service
-	insinto /etc/init
-	doins init/imageloader.conf
-	doins init/imageloader-init.conf
-	doins init/imageloader-shutdown.conf
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/imageloader_helper_process_receiver_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/imageloader_manifest_fuzzer \
-		--dict "${S}"/fuzz/manifest.dict
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/run_tests"
-}
-
-pkg_preinst() {
-	enewuser "imageloaderd"
-	enewgroup "imageloaderd"
-}
diff --git a/chromeos-base/imageloader/imageloader-0.0.1-r1641.ebuild b/chromeos-base/imageloader/imageloader-0.0.1-r1641.ebuild
new file mode 100644
index 0000000..e90238b
--- /dev/null
+++ b/chromeos-base/imageloader/imageloader-0.0.1-r1641.ebuild
@@ -0,0 +1,76 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "79b51dbf384f1e7233f895ca42453f7f864c4abd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk imageloader .gn"
+
+PLATFORM_SUBDIR="imageloader"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Allow mounting verified utility images"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/imageloader/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="fuzzer"
+
+RDEPEND="
+	chromeos-base/vboot_reference:=
+	chromeos-base/minijail:=
+	dev-libs/openssl:=
+	dev-libs/protobuf:=
+	fuzzer? ( dev-libs/libprotobuf-mutator:= )
+	sys-fs/lvm2:="
+
+DEPEND="${RDEPEND}
+	chromeos-base/system_api:=[fuzzer?]"
+
+src_install() {
+	# Install manifest parsing libraries
+	dolib.so "${OUT}/lib/libimageloader-manifest.so"
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins libimageloader-manifest.pc
+
+	insinto "/usr/include/libimageloader"
+	doins manifest.h
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	newins "seccomp/imageloader-seccomp-${ARCH}.policy" imageloader-seccomp.policy
+	newins "seccomp/imageloader-helper-seccomp-${ARCH}.policy" imageloader-helper-seccomp.policy
+	cd "${OUT}"
+	dosbin imageloader
+	cd "${S}"
+	insinto /etc/dbus-1/system.d
+	doins dbus_permissions/org.chromium.ImageLoader.conf
+	insinto /usr/share/dbus-1/system-services
+	doins dbus_service/org.chromium.ImageLoader.service
+	insinto /etc/init
+	doins init/imageloader.conf
+	doins init/imageloader-init.conf
+	doins init/imageloader-shutdown.conf
+
+	local fuzzer_component_id="188251"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/imageloader_helper_process_receiver_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/imageloader_manifest_fuzzer \
+		--dict "${S}"/fuzz/manifest.dict \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/run_tests"
+}
+
+pkg_preinst() {
+	enewuser "imageloaderd"
+	enewgroup "imageloaderd"
+}
diff --git a/chromeos-base/imageloader/imageloader-9999.ebuild b/chromeos-base/imageloader/imageloader-9999.ebuild
index 0564455..3e3fa92 100644
--- a/chromeos-base/imageloader/imageloader-9999.ebuild
+++ b/chromeos-base/imageloader/imageloader-9999.ebuild
@@ -22,6 +22,7 @@
 
 RDEPEND="
 	chromeos-base/vboot_reference:=
+	chromeos-base/minijail:=
 	dev-libs/openssl:=
 	dev-libs/protobuf:=
 	fuzzer? ( dev-libs/libprotobuf-mutator:= )
@@ -55,9 +56,12 @@
 	doins init/imageloader-init.conf
 	doins init/imageloader-shutdown.conf
 
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/imageloader_helper_process_receiver_fuzzer
+	local fuzzer_component_id="188251"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/imageloader_helper_process_receiver_fuzzer \
+		--comp "${fuzzer_component_id}"
 	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/imageloader_manifest_fuzzer \
-		--dict "${S}"/fuzz/manifest.dict
+		--dict "${S}"/fuzz/manifest.dict \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/infineon-firmware-updater/files/tpm-firmware-update-cleanup b/chromeos-base/infineon-firmware-updater/files/tpm-firmware-update-cleanup
new file mode 100644
index 0000000..27c5ff3
--- /dev/null
+++ b/chromeos-base/infineon-firmware-updater/files/tpm-firmware-update-cleanup
@@ -0,0 +1,42 @@
+#!/bin/sh
+#
+# 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.
+
+set -e
+
+# Flag file indicating that a TPM firmware update has been requested.
+TPM_FIRMWARE_UPDATE_REQUEST=/mnt/stateful_partition/unencrypted/preserve/tpm_firmware_update_request
+
+# Verifies that the TPM is in good state after updating. When performing an
+# owner-authorized TPM firmware update, the previous SRK remains. Since that SRK
+# might be weak we can't allow for it to stick around. The updater generally
+# requests the TPM to be cleared after updating, but there are edge cases
+# (interrupted updates, TPM firmware bugs that prevent the update from
+# completing successfully) for which we might reboot in normal mode without the
+# TPM having been cleared. As a safety net to handle these cases we check that
+# the TPM is cleared and if not request another clear here.
+cleanup() {
+  if [ "$(tpmc getownership)" != "Owned: no" ]; then
+    crossystem clear_tpm_owner_request=1
+    reboot
+    sleep infinity
+  fi
+
+  # Looking good, don't trigger the TPM updater again after reboot.
+  rm "${TPM_FIRMWARE_UPDATE_REQUEST}"
+}
+
+main() {
+  if [ ! -e "${TPM_FIRMWARE_UPDATE_REQUEST}" ]; then
+    return 0
+  fi
+
+  local mode="$(cat "${TPM_FIRMWARE_UPDATE_REQUEST}")"
+  if [ "$mode" = "cleanup" ]; then
+    cleanup
+  fi
+}
+
+main "$@"
diff --git a/chromeos-base/infineon-firmware-updater/files/tpm-firmware-update.sh b/chromeos-base/infineon-firmware-updater/files/tpm-firmware-update.sh
index 2baf39b..25adf58 100644
--- a/chromeos-base/infineon-firmware-updater/files/tpm-firmware-update.sh
+++ b/chromeos-base/infineon-firmware-updater/files/tpm-firmware-update.sh
@@ -6,6 +6,8 @@
 
 set -e
 
+. /usr/sbin/tpm-firmware-update-cleanup
+
 # Status codes defined by tpm-firmware-updater.
 EXIT_CODE_SUCCESS=0
 EXIT_CODE_ERROR=1
@@ -19,9 +21,6 @@
 # Minimum battery charge level at which to retry running the updater.
 MIN_BATTERY_CHARGE_PERCENT=10
 
-# Directory containing tpm firmware images and behavior flags.
-TPM_FIRMWARE_DIR=/lib/firmware/tpm
-
 # Flag file indicating that a TPM firmware update has been requested.
 TPM_FIRMWARE_UPDATE_REQUEST=/mnt/stateful_partition/unencrypted/preserve/tpm_firmware_update_request
 
@@ -112,24 +111,6 @@
   exit 1
 }
 
-# Verifies that the TPM is in good state after updating. When performing an
-# owner-authorized TPM firmware update, the previous SRK remains. Since that SRK
-# might be weak we can't allow for it to stick around. The updater generally
-# requests the TPM to be cleared after updating, but there are edge cases
-# (interrupted updates, TPM firmware bugs that prevent the update from
-# completing successfully) for which we might reboot in normal mode without the
-# TPM having been cleared. As a safety net to handle these cases we check that
-# the TPM is cleared and if not request another clear here.
-cleanup() {
-  if [ "$(tpmc getownership)" != "Owned: no" ]; then
-    crossystem clear_tpm_owner_request=1
-    reboot_here "warm"
-  fi
-
-  # Looking good, don't trigger the TPM updater again after reboot.
-  rm "${TPM_FIRMWARE_UPDATE_REQUEST}"
-}
-
 main() {
   # Check whether a firmware update has been requested, bail out if not.
   if [ ! -e "${TPM_FIRMWARE_UPDATE_REQUEST}" ]; then
@@ -148,8 +129,9 @@
       touch "${PRESERVATION_REQUEST}"
       ;;
     cleanup)
-      # Make sure to return the TPM into a good state after completion.
-      cleanup
+      # This branch should not run since cleanup is invoked early during boot
+      # from chromeos_startup via the tpm-firmware-update-cleanup script. Bail
+      # if ending up here erroneously.
       exit 0
       ;;
     first_boot|*)
diff --git a/chromeos-base/infineon-firmware-updater/infineon-firmware-updater-1.1.2459.0-r31.ebuild b/chromeos-base/infineon-firmware-updater/infineon-firmware-updater-1.1.2459.0-r32.ebuild
similarity index 100%
rename from chromeos-base/infineon-firmware-updater/infineon-firmware-updater-1.1.2459.0-r31.ebuild
rename to chromeos-base/infineon-firmware-updater/infineon-firmware-updater-1.1.2459.0-r32.ebuild
diff --git a/chromeos-base/infineon-firmware-updater/infineon-firmware-updater-1.1.2459.0.ebuild b/chromeos-base/infineon-firmware-updater/infineon-firmware-updater-1.1.2459.0.ebuild
index 274c775..4604eb7 100644
--- a/chromeos-base/infineon-firmware-updater/infineon-firmware-updater-1.1.2459.0.ebuild
+++ b/chromeos-base/infineon-firmware-updater/infineon-firmware-updater-1.1.2459.0.ebuild
@@ -52,6 +52,7 @@
 	newsbin TPMFactoryUpd/TPMFactoryUpd infineon-firmware-updater
 	dosbin "${FILESDIR}"/tpm-firmware-updater
 	dosbin "${FILESDIR}"/tpm-firmware-locate-update
+	dosbin "${FILESDIR}"/tpm-firmware-update-cleanup
 
 	insinto /etc/init
 	doins "${FILESDIR}"/tpm-firmware-check.conf
diff --git a/chromeos-base/intel-nnhal/Manifest b/chromeos-base/intel-nnhal/Manifest
index ba8148d..75127f4 100644
--- a/chromeos-base/intel-nnhal/Manifest
+++ b/chromeos-base/intel-nnhal/Manifest
@@ -1,3 +1,3 @@
 DIST intel-nn-hal-1fed40d8.tar.gz 207233 BLAKE2B 487b7224666923d3d2a8b8d655b959bf3f2f71dcc11acf0eff8132c932b900bb234c6e5c526fb9c9352c3d2d758269a2cc857f394984cbea93248b95098c1e95 SHA512 c1480109b724a8f248127db19f6ae25a2433d548112665957235fcfb2efadeb3644a6e721971a90f40349ed60848e0dc7fa80ef21be69e90f991ebb9b2050398
-DIST intel-nn-hal-9607e7e7.tar.gz 203664 BLAKE2B 6591700e53d4a2595967ef8119250f1c7c13a69db9810762c8ca3f3620b0bcc51c5094863218ef83c382a22a1ce85bebec5d358432045ca4be18751e1e053f9d SHA512 91b5540f83a65fa704699b54939ff1673ca3559d714fa1636094b6585fa5db0e277cdb8240c51e6f3f5d77206ac80f78308021cd63fb3caa8398a4bfe732b7cd
+DIST intel-nn-hal-311f5d1c.tar.gz 207337 BLAKE2B 444f1e63b77dfb678e448a3ef434eaefd93b33e3563ae4a00f6d45882d3240f293471ea3818262bab4c929b55371cb4a4f17d1941fb0720bf5c9e607ddc1c3e2 SHA512 47429aaa597c011efeae9c71968c7d75afc65aa5ff22956400fac3d3e85ca9b9e89d2904e2136f47e69632e2b64da7b7e578051ebd54cb770b5f4238f3543551
 DIST intel-openvino-a4a1bff1.tar.xz 15979364 BLAKE2B 3f91aed68a3c68580d3772a7e6222ba70505fa2666f441eb2edf763051e122b8df163a66b77fe58d05eba84e663f221db323f939607d10b85afa7a89807e086d SHA512 5f70c0c4e8e7ef99222943ef0574be73d9dac7d54544ae18172ec5c38941086ab7cded2065e09167d627d698c15697e5a0c7e3fdc6aec371bbfc46186ad94743
diff --git a/chromeos-base/intel-nnhal/intel-nnhal-0.0.1-r57.ebuild b/chromeos-base/intel-nnhal/intel-nnhal-0.0.1-r57.ebuild
deleted file mode 100644
index a68bc10..0000000
--- a/chromeos-base/intel-nnhal/intel-nnhal-0.0.1-r57.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="200ef2c67ab271519f18bac41f065de2cd22d96e"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-inherit base cros-workon platform unpacker
-
-DESCRIPTION="Intel NNAPI HAL"
-HOMEPAGE="https://github.com/intel/nn-hal"
-NNHAL_GIT_HASH="1fed40d8b7cc73f47d19c488d52ba2d9c4ef6925"
-NNHAL_GIT_SHORT_HASH=${NNHAL_GIT_HASH::8}
-OPENVINO_GIT_HASH="a4a1bff1cc5a6b22f806adac8845d2806772dacd"
-OPENVINO_GIT_SHORT_HASH=${OPENVINO_GIT_HASH::8}
-SRC_URI="
-	https://github.com/intel/nn-hal/archive/${NNHAL_GIT_HASH}.tar.gz -> intel-nn-hal-${NNHAL_GIT_SHORT_HASH}.tar.gz
-	https://github.com/openvinotoolkit/openvino/archive/${OPENVINO_GIT_HASH}.tar.xz -> intel-openvino-${OPENVINO_GIT_SHORT_HASH}.tar.xz
-"
-
-
-LICENSE="BSD-Google"
-KEYWORDS="-* amd64"
-IUSE="vendor-nnhal"
-RESTRICT="strip"
-
-CROS_WORKON_PROJECT=("chromiumos/platform2")
-CROS_WORKON_LOCALNAME=("platform2")
-CROS_WORKON_DESTDIR=("${S}/platform2")
-CROS_WORKON_SUBTREE=("common-mk .gn")
-
-PLATFORM_SUBDIR="nn-hal-${NNHAL_GIT_HASH}"
-
-RDEPEND="
-	chromeos-base/aosp-frameworks-ml-nn
-	chromeos-base/intel-openvino
-	chromeos-base/intel-gnalib
-"
-
-DEPEND="
-	${RDEPEND}
-"
-src_unpack() {
-	platform_src_unpack
-
-	# Need to unpack the SRC_URI's into the platform2 dir
-	cd "${WORKDIR}/${PN}-${PV}/platform2"
-	unpacker_src_unpack
-}
-
-src_configure() {
-	if use x86 || use amd64; then
-		append-cppflags "-D_Float16=__fp16"
-		append-cxxflags "-Xclang -fnative-half-type"
-		append-cxxflags "-Xclang -fallow-half-arguments-and-returns"
-	fi
-	platform_src_configure
-}
-
-src_prepare() {
-	cros_enable_cxx_exceptions
-	eapply_user
-}
-
-src_install() {
-	if use vendor-nnhal ; then
-		einfo "Installing Intel GNA vendor hal."
-		dolib.so "${OUT}/lib/libvendor-nn-hal.so"
-		dolib.so "${OUT}/lib/libintel_nnhal.so"
-	fi
-}
diff --git a/chromeos-base/intel-nnhal/intel-nnhal-0.0.1-r83.ebuild b/chromeos-base/intel-nnhal/intel-nnhal-0.0.1-r83.ebuild
new file mode 100644
index 0000000..8176708
--- /dev/null
+++ b/chromeos-base/intel-nnhal/intel-nnhal-0.0.1-r83.ebuild
@@ -0,0 +1,71 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+inherit base cros-workon platform unpacker
+
+DESCRIPTION="Intel NNAPI HAL"
+HOMEPAGE="https://github.com/intel/nn-hal"
+NNHAL_GIT_HASH="311f5d1ce6243751a04eee920e353314875f839e"
+NNHAL_GIT_SHORT_HASH=${NNHAL_GIT_HASH::8}
+OPENVINO_GIT_HASH="a4a1bff1cc5a6b22f806adac8845d2806772dacd"
+OPENVINO_GIT_SHORT_HASH=${OPENVINO_GIT_HASH::8}
+SRC_URI="
+	https://github.com/intel/nn-hal/archive/${NNHAL_GIT_HASH}.tar.gz -> intel-nn-hal-${NNHAL_GIT_SHORT_HASH}.tar.gz
+	https://github.com/openvinotoolkit/openvino/archive/${OPENVINO_GIT_HASH}.tar.xz -> intel-openvino-${OPENVINO_GIT_SHORT_HASH}.tar.xz
+"
+
+
+LICENSE="BSD-Google"
+KEYWORDS="-* amd64"
+IUSE="vendor-nnhal"
+RESTRICT="strip"
+
+CROS_WORKON_PROJECT=("chromiumos/platform2")
+CROS_WORKON_LOCALNAME=("platform2")
+CROS_WORKON_DESTDIR=("${S}/platform2")
+CROS_WORKON_SUBTREE=("common-mk .gn")
+
+PLATFORM_SUBDIR="nn-hal-${NNHAL_GIT_HASH}"
+
+RDEPEND="
+	chromeos-base/aosp-frameworks-ml-nn
+	chromeos-base/intel-openvino
+	chromeos-base/intel-gnalib
+"
+
+DEPEND="
+	${RDEPEND}
+"
+src_unpack() {
+	platform_src_unpack
+
+	# Need to unpack the SRC_URI's into the platform2 dir
+	cd "${WORKDIR}/${PN}-${PV}/platform2"
+	unpacker_src_unpack
+}
+
+src_configure() {
+	if use x86 || use amd64; then
+		append-cppflags "-D_Float16=__fp16"
+		append-cxxflags "-Xclang -fnative-half-type"
+		append-cxxflags "-Xclang -fallow-half-arguments-and-returns"
+	fi
+	platform_src_configure
+}
+
+src_prepare() {
+	cros_enable_cxx_exceptions
+	eapply_user
+}
+
+src_install() {
+	if use vendor-nnhal ; then
+		einfo "Installing Intel GNA vendor hal."
+		dolib.so "${OUT}/lib/libvendor-nn-hal.so"
+		dolib.so "${OUT}/lib/libintel_nnhal.so"
+	fi
+}
diff --git a/chromeos-base/intel-nnhal/intel-nnhal-9999.ebuild b/chromeos-base/intel-nnhal/intel-nnhal-9999.ebuild
index 23a4c08..6a80140 100644
--- a/chromeos-base/intel-nnhal/intel-nnhal-9999.ebuild
+++ b/chromeos-base/intel-nnhal/intel-nnhal-9999.ebuild
@@ -7,7 +7,7 @@
 
 DESCRIPTION="Intel NNAPI HAL"
 HOMEPAGE="https://github.com/intel/nn-hal"
-NNHAL_GIT_HASH="1fed40d8b7cc73f47d19c488d52ba2d9c4ef6925"
+NNHAL_GIT_HASH="311f5d1ce6243751a04eee920e353314875f839e"
 NNHAL_GIT_SHORT_HASH=${NNHAL_GIT_HASH::8}
 OPENVINO_GIT_HASH="a4a1bff1cc5a6b22f806adac8845d2806772dacd"
 OPENVINO_GIT_SHORT_HASH=${OPENVINO_GIT_HASH::8}
diff --git a/chromeos-base/ippusb_bridge/ippusb_bridge-0.0.1-r34.ebuild b/chromeos-base/ippusb_bridge/ippusb_bridge-0.0.1-r34.ebuild
deleted file mode 100644
index f17723d..0000000
--- a/chromeos-base/ippusb_bridge/ippusb_bridge-0.0.1-r34.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="c358c785af6e611f5abacd2c2dfa280f2f5a82bf"
-CROS_WORKON_TREE="197db4a2e529e4b31180ffea01f85f4905be77e7"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="ippusb_bridge"
-
-inherit cros-workon cros-rust udev user
-
-DESCRIPTION="A proxy for HTTP traffic over an IPP-USB printer connection"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/ippusb_bridge/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-COMMON_DEPEND="
-	virtual/libusb:1=
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	!chromeos-base/ippusb_manager
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	>=dev-rust/chunked_transfer-1:= <dev-rust/chunked_transfer-2
-	>=dev-rust/getopts-0.2.18:= <dev-rust/getopts-0.3
-	>=dev-rust/httparse-1.3.4:= <dev-rust/httparse-1.4
-	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3
-	>=dev-rust/rusb-0.6.2:= <dev-rust/rusb-0.7
-	dev-rust/sync:=
-	dev-rust/sys_util:=
-	>=dev-rust/tiny_http-0.8:= <dev-rust/tiny_http-0.9
-"
-
-pkg_preinst() {
-	enewgroup ippusb
-	enewuser ippusb
-
-	cros-rust_pkg_preinst
-}
-
-src_install() {
-	dobin "$(cros-rust_get_build_dir)"/ippusb_bridge
-
-	# Install policy files.
-	insinto /usr/share/policy
-	newins "seccomp/ippusb-bridge-seccomp-${ARCH}.policy" \
-		ippusb-bridge-seccomp.policy
-
-	udev_dorules udev/*.rules
-
-	insinto /etc/init
-	newins "init/ippusb-bridge.conf" "ippusb-bridge.conf"
-
-	exeinto /usr/libexec/ippusb
-	doexe "init/bridge_start"
-	doexe "init/bridge_stop"
-}
diff --git a/chromeos-base/ippusb_bridge/ippusb_bridge-0.0.1-r46.ebuild b/chromeos-base/ippusb_bridge/ippusb_bridge-0.0.1-r46.ebuild
new file mode 100644
index 0000000..ff0bf71
--- /dev/null
+++ b/chromeos-base/ippusb_bridge/ippusb_bridge-0.0.1-r46.ebuild
@@ -0,0 +1,67 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="3709b33cb68acb2c4ae1227eb152e24b56a19f6c"
+CROS_WORKON_TREE="ef7ffd91fabeb69788258445bd7240f10dcd41f5"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="ippusb_bridge"
+
+inherit cros-workon cros-rust udev user
+
+DESCRIPTION="A proxy for HTTP traffic over an IPP-USB printer connection"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/ippusb_bridge/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+COMMON_DEPEND="
+	virtual/libusb:1=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	!chromeos-base/ippusb_manager
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	>=dev-rust/chunked_transfer-1:= <dev-rust/chunked_transfer-2
+	>=dev-rust/getopts-0.2.18:= <dev-rust/getopts-0.3
+	>=dev-rust/httparse-1.3.4:= <dev-rust/httparse-1.4
+	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3
+	>=dev-rust/rusb-0.6.2:= <dev-rust/rusb-0.7
+	dev-rust/sync:=
+	dev-rust/sys_util:=
+	>=dev-rust/tiny_http-0.8:= <dev-rust/tiny_http-0.9
+"
+
+pkg_preinst() {
+	enewgroup ippusb
+	enewuser ippusb
+
+	cros-rust_pkg_preinst
+}
+
+src_install() {
+	dobin "$(cros-rust_get_build_dir)"/ippusb_bridge
+
+	# Install policy files.
+	insinto /usr/share/policy
+	newins "seccomp/ippusb-bridge-seccomp-${ARCH}.policy" \
+		ippusb-bridge-seccomp.policy
+
+	udev_dorules udev/*.rules
+
+	insinto /etc/init
+	newins "init/ippusb-bridge.conf" "ippusb-bridge.conf"
+
+	exeinto /usr/libexec/ippusb
+	doexe "init/bridge_start"
+	doexe "init/bridge_stop"
+}
diff --git a/chromeos-base/kerberos/kerberos-0.0.1-r350.ebuild b/chromeos-base/kerberos/kerberos-0.0.1-r350.ebuild
deleted file mode 100644
index 33fe908..0000000
--- a/chromeos-base/kerberos/kerberos-0.0.1-r350.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="7cc682322dc60e43d949f6055d5b3885536bea07"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "c30e2764e005547102b3c9a8051a886d32d11f70" "eae0546f4ee5132d4544af4770755eb05f60cba6" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk kerberos libpasswordprovider metrics .gn"
-
-PLATFORM_SUBDIR="kerberos"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Requests and manages Kerberos tickets to enable Kerberos SSO"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/kerberos/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="asan fuzzer"
-
-COMMON_DEPEND="
-	app-crypt/mit-krb5:=
-	chromeos-base/libbrillo:=[asan?,fuzzer?]
-	chromeos-base/libpasswordprovider:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/minijail:=
-	dev-libs/protobuf:=
-	sys-apps/dbus:=
-"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/protofiles:=
-	chromeos-base/session_manager-client:=
-	chromeos-base/system_api:=[fuzzer?]
-"
-
-pkg_setup() {
-	# Has to be done in pkg_setup() instead of pkg_preinst() since
-	# src_install() needs kerberosd.
-	enewuser kerberosd
-	enewgroup kerberosd
-	enewuser kerberosd-exec
-	enewgroup kerberosd-exec
-	cros-workon_pkg_setup
-}
-
-src_install() {
-	dosbin "${OUT}"/kerberosd
-
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.Kerberos.conf
-
-	insinto /usr/share/dbus-1/system-services
-	doins dbus/org.chromium.Kerberos.service
-
-	insinto /etc/init
-	doins init/kerberosd.conf
-
-	insinto /usr/share/policy
-	newins seccomp/kerberosd-seccomp-"${ARCH}".policy kerberosd-seccomp.policy
-
-	insinto /usr/share/cros/startup/process_management_policies
-	doins setuid_restrictions/kerberosd_whitelist.txt
-
-	# Create daemon store folder prototype, see
-	# https://chromium.googlesource.com/chromiumos/docs/+/master/sandboxing.md#securely-mounting-cryptohome-daemon-store-folders
-	local daemon_store="/etc/daemon-store/kerberosd"
-	dodir "${daemon_store}"
-	fperms 0770 "${daemon_store}"
-	fowners kerberosd:kerberosd "${daemon_store}"
-
-	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/config_parser_fuzzer \
-		--dict "${S}"/config_parser_fuzzer.dict || die
-}
-
-platform_pkg_test() {
-	local tests=(
-		kerberos_test
-	)
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/kerberos/kerberos-0.0.1-r399.ebuild b/chromeos-base/kerberos/kerberos-0.0.1-r399.ebuild
new file mode 100644
index 0000000..d41c8e8
--- /dev/null
+++ b/chromeos-base/kerberos/kerberos-0.0.1-r399.ebuild
@@ -0,0 +1,91 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="c7de58509c6837dc0241aa92c6a32dbf4cc55161"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "2d1f1e037ee6be625e7d880ed3f688a9586223e4" "56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk kerberos libpasswordprovider metrics .gn"
+
+PLATFORM_SUBDIR="kerberos"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Requests and manages Kerberos tickets to enable Kerberos SSO"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/kerberos/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="asan fuzzer"
+
+COMMON_DEPEND="
+	app-crypt/mit-krb5:=
+	chromeos-base/libbrillo:=[asan?,fuzzer?]
+	chromeos-base/libpasswordprovider:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/minijail:=
+	dev-libs/protobuf:=
+	sys-apps/dbus:=
+"
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/protofiles:=
+	chromeos-base/session_manager-client:=
+	chromeos-base/system_api:=[fuzzer?]
+"
+
+pkg_setup() {
+	# Has to be done in pkg_setup() instead of pkg_preinst() since
+	# src_install() needs kerberosd.
+	enewuser kerberosd
+	enewgroup kerberosd
+	enewuser kerberosd-exec
+	enewgroup kerberosd-exec
+	cros-workon_pkg_setup
+}
+
+src_install() {
+	dosbin "${OUT}"/kerberosd
+
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.Kerberos.conf
+
+	insinto /usr/share/dbus-1/system-services
+	doins dbus/org.chromium.Kerberos.service
+
+	insinto /etc/init
+	doins init/kerberosd.conf
+
+	insinto /usr/share/policy
+	newins seccomp/kerberosd-seccomp-"${ARCH}".policy kerberosd-seccomp.policy
+
+	insinto /usr/share/cros/startup/process_management_policies
+	doins setuid_restrictions/kerberosd_uid_allowlist.txt
+
+	# Create daemon store folder prototype, see
+	# https://chromium.googlesource.com/chromiumos/docs/+/master/sandboxing.md#securely-mounting-cryptohome-daemon-store-folders
+	local daemon_store="/etc/daemon-store/kerberosd"
+	dodir "${daemon_store}"
+	fperms 0770 "${daemon_store}"
+	fowners kerberosd:kerberosd "${daemon_store}"
+
+	# fuzzer_component_id is unknown/unlisted
+	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/config_parser_fuzzer \
+		--dict "${S}"/config_parser_fuzzer.dict || die
+}
+
+platform_pkg_test() {
+	local tests=(
+		kerberos_test
+	)
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/kerberos/kerberos-9999.ebuild b/chromeos-base/kerberos/kerberos-9999.ebuild
index b97bcac..574f745 100644
--- a/chromeos-base/kerberos/kerberos-9999.ebuild
+++ b/chromeos-base/kerberos/kerberos-9999.ebuild
@@ -64,7 +64,7 @@
 	newins seccomp/kerberosd-seccomp-"${ARCH}".policy kerberosd-seccomp.policy
 
 	insinto /usr/share/cros/startup/process_management_policies
-	doins setuid_restrictions/kerberosd_whitelist.txt
+	doins setuid_restrictions/kerberosd_uid_allowlist.txt
 
 	# Create daemon store folder prototype, see
 	# https://chromium.googlesource.com/chromiumos/docs/+/master/sandboxing.md#securely-mounting-cryptohome-daemon-store-folders
@@ -73,6 +73,7 @@
 	fperms 0770 "${daemon_store}"
 	fowners kerberosd:kerberosd "${daemon_store}"
 
+	# fuzzer_component_id is unknown/unlisted
 	platform_fuzzer_install "${S}/OWNERS" "${OUT}"/config_parser_fuzzer \
 		--dict "${S}"/config_parser_fuzzer.dict || die
 }
diff --git a/chromeos-base/languagepack-handwriting-es/Manifest b/chromeos-base/languagepack-handwriting-es/Manifest
new file mode 100644
index 0000000..9a4c51a
--- /dev/null
+++ b/chromeos-base/languagepack-handwriting-es/Manifest
@@ -0,0 +1 @@
+DIST languagepack-handwriting-es-20210730.tar.xz 12854460 BLAKE2B 29ceb50115231f6b1a36f9da0151412fbcec07f3c0c0a81062686536bb98131afeb1e9d598c01c492392adeb919056bdc1f396bac755f4c465e17a329df07e32 SHA512 2c93c81ff63495f4e159a2c360ae8242ca5e98e4f9400d8812f2e1fc058376ad996ef297cf345acbad95913f0d6072fb3ccb0183715830848df9427f3f917801
diff --git a/chromeos-base/languagepack-handwriting-es/OWNERS b/chromeos-base/languagepack-handwriting-es/OWNERS
new file mode 100644
index 0000000..6ef8b07
--- /dev/null
+++ b/chromeos-base/languagepack-handwriting-es/OWNERS
@@ -0,0 +1,5 @@
+# Create owners in platform2/ and include here
+claudiomagni@chromium.org
+curtismcmullan@chromium.org
+dvallet@chromium.org
+mlcui@google.com
\ No newline at end of file
diff --git a/chromeos-base/languagepack-handwriting-es/languagepack-handwriting-es-0.0.1-r1.ebuild b/chromeos-base/languagepack-handwriting-es/languagepack-handwriting-es-0.0.1-r1.ebuild
new file mode 100644
index 0000000..6b5998c
--- /dev/null
+++ b/chromeos-base/languagepack-handwriting-es/languagepack-handwriting-es-0.0.1-r1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
+CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
+inherit dlc cros-workon
+
+DESCRIPTION="Handwriting Spanish Language Pack for Chromium OS"
+
+# "cros_workon info" expects these variables to be set, but we don't have a git
+# repo, so use the standard empty project.
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="platform/empty-project"
+
+# Clients of Language Packs (Handwriting) need to update this path when new
+# versions are available.
+SRC_URI="gs://chromeos-localmirror/distfiles/languagepack-handwriting-es-20210730.tar.xz"
+
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="dlc ondevice_handwriting"
+REQUIRED_USE="dlc ondevice_handwriting"
+
+# DLC variables.
+# Allocate 4KB * 8750 = 35MB
+DLC_PREALLOC_BLOCKS="8750"
+
+S="${WORKDIR}"
+src_unpack() {
+	local archive="${SRC_URI##*/}"
+	unpack ${archive}
+}
+
+src_install() {
+	# This DLC is enabled only if ondevice handwriting is enabled.
+	if ! use ondevice_handwriting; then
+		return
+	fi
+
+	# Setup DLC paths. We don't need any subdirectory inside the DLC path.
+	into "$(dlc_add_path /)"
+	insinto "$(dlc_add_path /)"
+	exeinto "$(dlc_add_path /)"
+
+	# Install handwriting models for Spanish.
+	doins latin_indy.tflite latin_indy_conf.tflite latin_indy_seg.tflite
+	newins es.compact.fst.local compact.fst.local
+	newins qrnn.es.reco_20210729.fst_20210721.recospec.local qrnn.recospec.local
+
+	# This command packages the files into a DLC.
+	dlc_src_install
+}
diff --git a/chromeos-base/languagepack-handwriting-es/languagepack-handwriting-es-9999.ebuild b/chromeos-base/languagepack-handwriting-es/languagepack-handwriting-es-9999.ebuild
new file mode 100644
index 0000000..27563c9
--- /dev/null
+++ b/chromeos-base/languagepack-handwriting-es/languagepack-handwriting-es-9999.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dlc cros-workon
+
+DESCRIPTION="Handwriting Spanish Language Pack for Chromium OS"
+
+# "cros_workon info" expects these variables to be set, but we don't have a git
+# repo, so use the standard empty project.
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="platform/empty-project"
+
+# Clients of Language Packs (Handwriting) need to update this path when new
+# versions are available.
+SRC_URI="gs://chromeos-localmirror/distfiles/languagepack-handwriting-es-20210730.tar.xz"
+
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+IUSE="dlc ondevice_handwriting"
+REQUIRED_USE="dlc ondevice_handwriting"
+
+# DLC variables.
+# Allocate 4KB * 8750 = 35MB
+DLC_PREALLOC_BLOCKS="8750"
+
+S="${WORKDIR}"
+src_unpack() {
+	local archive="${SRC_URI##*/}"
+	unpack ${archive}
+}
+
+src_install() {
+	# This DLC is enabled only if ondevice handwriting is enabled.
+	if ! use ondevice_handwriting; then
+		return
+	fi
+
+	# Setup DLC paths. We don't need any subdirectory inside the DLC path.
+	into "$(dlc_add_path /)"
+	insinto "$(dlc_add_path /)"
+	exeinto "$(dlc_add_path /)"
+
+	# Install handwriting models for Spanish.
+	doins latin_indy.tflite latin_indy_conf.tflite latin_indy_seg.tflite
+	newins es.compact.fst.local compact.fst.local
+	newins qrnn.es.reco_20210729.fst_20210721.recospec.local qrnn.recospec.local
+
+	# This command packages the files into a DLC.
+	dlc_src_install
+}
diff --git a/chromeos-base/lexmark-fax-pnh/lexmark-fax-pnh-0.0.1-r69.ebuild b/chromeos-base/lexmark-fax-pnh/lexmark-fax-pnh-0.0.1-r69.ebuild
deleted file mode 100644
index d8ba3b7..0000000
--- a/chromeos-base/lexmark-fax-pnh/lexmark-fax-pnh-0.0.1-r69.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("f34cf3a06f7b17b7829185630d886a5d9d3f0e75" "f131d8f851366e6a2f8e8fa8f3042285d021d6c6")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "4c04b0ebf35112629d2f6bc7e478514dcb5805cb")
-CROS_WORKON_LOCALNAME=("platform2" "third_party/lexmark-fax-pnh")
-CROS_WORKON_EGIT_BRANCH=("main" "master")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "chromiumos/third_party/lexmark-fax-pnh")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/lexmark-fax-pnh")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
-
-PLATFORM_SUBDIR="lexmark-fax-pnh"
-
-inherit cros-workon platform
-
-DESCRIPTION="ChromeOS implementation of the Lexmark fax-pnh-filter"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/lexmark-fax-pnh/"
-
-LICENSE="MPL-2.0"
-KEYWORDS="*"
-
-IUSE=""
-
-RDEPEND="
-	net-print/cups
-"
-DEPEND="${RDEPEND}"
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/token_replacer_testrunner"
-}
-
-src_install() {
-	exeinto /usr/libexec/cups/filter
-	doexe "${OUT}"/fax-pnh-filter
-}
diff --git a/chromeos-base/lexmark-fax-pnh/lexmark-fax-pnh-0.0.1-r94.ebuild b/chromeos-base/lexmark-fax-pnh/lexmark-fax-pnh-0.0.1-r94.ebuild
new file mode 100644
index 0000000..331a5ec
--- /dev/null
+++ b/chromeos-base/lexmark-fax-pnh/lexmark-fax-pnh-0.0.1-r94.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "f131d8f851366e6a2f8e8fa8f3042285d021d6c6")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "4c04b0ebf35112629d2f6bc7e478514dcb5805cb")
+CROS_WORKON_LOCALNAME=("platform2" "third_party/lexmark-fax-pnh")
+CROS_WORKON_EGIT_BRANCH=("main" "master")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "chromiumos/third_party/lexmark-fax-pnh")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/lexmark-fax-pnh")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE=("common-mk .gn" "")
+
+PLATFORM_SUBDIR="lexmark-fax-pnh"
+
+inherit cros-workon platform
+
+DESCRIPTION="ChromeOS implementation of the Lexmark fax-pnh-filter"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/lexmark-fax-pnh/"
+
+LICENSE="MPL-2.0"
+KEYWORDS="*"
+
+IUSE=""
+
+RDEPEND="
+	net-print/cups
+"
+DEPEND="${RDEPEND}"
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/token_replacer_testrunner"
+}
+
+src_install() {
+	exeinto /usr/libexec/cups/filter
+	doexe "${OUT}"/fax-pnh-filter
+}
diff --git a/chromeos-base/libbrillo/libbrillo-0.0.1-r1811.ebuild b/chromeos-base/libbrillo/libbrillo-0.0.1-r1811.ebuild
deleted file mode 100644
index 491b8ed..0000000
--- a/chromeos-base/libbrillo/libbrillo-0.0.1-r1811.ebuild
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="08aee9d7a91dddd5977b31ca2a2833ba54f8d89a"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "b2715142a8baa452d041e27303d53d2e097d3113" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk libbrillo .gn"
-
-PLATFORM_SUBDIR="libbrillo"
-
-# platform.eclass automatically add dependency to libbrillo by default,
-# but this package should not have the dependency.
-WANT_LIBBRILLO="no"
-
-inherit cros-workon platform
-
-DESCRIPTION="Base library for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libbrillo/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros_host +dbus +device_mapper fuzzer -lvm_stateful_partition +udev"
-
-COMMON_DEPEND="
-	chromeos-base/minijail:=
-	chromeos-base/vboot_reference:=
-	dbus? ( dev-libs/dbus-glib:= )
-	dev-libs/openssl:=
-	dev-libs/protobuf:=
-	net-libs/grpc:=
-	net-misc/curl:=
-	sys-apps/rootdev:=
-	device_mapper? ( sys-fs/lvm2:=[thin] )
-	lvm_stateful_partition? ( sys-fs/lvm2:= )
-	udev? ( virtual/libudev )
-"
-RDEPEND="
-	${COMMON_DEPEND}
-	!cros_host? ( chromeos-base/libchromeos-use-flags )
-	chromeos-base/chromeos-ca-certificates
-	!chromeos-base/libchromeos
-"
-DEPEND="
-	${COMMON_DEPEND}
-	>=chromeos-base/protofiles-0.0.45:=
-	dbus? ( chromeos-base/system_api:=[fuzzer?] )
-	dev-libs/modp_b64:=
-"
-
-src_prepare() {
-	eapply "${FILESDIR}/remove-glib-usage.patch"
-	eapply_user
-}
-
-src_install() {
-	insinto "/usr/$(get_libdir)/pkgconfig"
-
-	dolib.so "${OUT}"/lib/lib{brillo,installattributes,policy}*.so
-	dolib.a "${OUT}"/libbrillo*.a
-	# Install libbrillo with and without version number as a temporary
-	# measure.
-	doins "${OUT}"/obj/libbrillo/libbrillo*.pc
-
-	# Install all the header files from libbrillo/brillo/*.h into
-	# /usr/include/brillo (recursively, with sub-directories).
-	local dir
-	while read -d $'\0' -r dir; do
-		insinto "/usr/include/${dir}"
-		doins "${dir}"/*.h
-	done < <(find brillo -type d -print0)
-
-	insinto /usr/include/policy
-	doins policy/*.h
-	insinto /usr/include/install_attributes
-	doins install_attributes/libinstallattributes.h
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/libbrillo_data_encoding_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS \
-		"${OUT}"/libbrillo_dbus_data_serialization_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/libbrillo_http_form_data_fuzzer
-}
-
-platform_pkg_test() {
-	local gtest_filter_qemu="-*DeathTest*"
-	platform_test "run" "${OUT}/libbrillo_tests" "" "" "${gtest_filter_qemu}"
-	platform_test "run" "${OUT}/libinstallattributes_tests"
-	platform_test "run" "${OUT}/libpolicy_tests"
-	platform_test "run" "${OUT}/libbrillo-grpc_tests"
-}
diff --git a/chromeos-base/libbrillo/libbrillo-0.0.1-r1856.ebuild b/chromeos-base/libbrillo/libbrillo-0.0.1-r1856.ebuild
new file mode 100644
index 0000000..fb8ead7
--- /dev/null
+++ b/chromeos-base/libbrillo/libbrillo-0.0.1-r1856.ebuild
@@ -0,0 +1,90 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="39d904d4191a46190aa367a76d4782099ada640e"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "c4fc3273e0b605bac35fbd917d7a5945aec05902" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk libbrillo .gn"
+
+PLATFORM_SUBDIR="libbrillo"
+
+# platform.eclass automatically add dependency to libbrillo by default,
+# but this package should not have the dependency.
+WANT_LIBBRILLO="no"
+
+inherit cros-workon platform
+
+DESCRIPTION="Base library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libbrillo/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cros_host +dbus +device_mapper fuzzer -lvm_stateful_partition +udev"
+
+COMMON_DEPEND="
+	chromeos-base/minijail:=
+	chromeos-base/vboot_reference:=
+	dbus? ( dev-libs/dbus-glib:= )
+	dev-libs/openssl:=
+	dev-libs/protobuf:=
+	net-libs/grpc:=
+	net-misc/curl:=
+	sys-apps/rootdev:=
+	device_mapper? ( sys-fs/lvm2:=[thin] )
+	lvm_stateful_partition? ( sys-fs/lvm2:= )
+	udev? ( virtual/libudev )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	!cros_host? ( chromeos-base/libchromeos-use-flags )
+	chromeos-base/chromeos-ca-certificates
+	!chromeos-base/libchromeos
+"
+DEPEND="
+	${COMMON_DEPEND}
+	>=chromeos-base/protofiles-0.0.45:=
+	dbus? ( chromeos-base/system_api:=[fuzzer?] )
+	dev-libs/modp_b64:=
+"
+
+src_install() {
+	insinto "/usr/$(get_libdir)/pkgconfig"
+
+	dolib.so "${OUT}"/lib/lib{brillo,installattributes,policy}*.so
+	dolib.a "${OUT}"/libbrillo*.a
+	# Install libbrillo with and without version number as a temporary
+	# measure.
+	doins "${OUT}"/obj/libbrillo/libbrillo*.pc
+
+	# Install all the header files from libbrillo/brillo/*.h into
+	# /usr/include/brillo (recursively, with sub-directories).
+	local dir
+	while read -d $'\0' -r dir; do
+		insinto "/usr/include/${dir}"
+		doins "${dir}"/*.h
+	done < <(find brillo -type d -print0)
+
+	insinto /usr/include/policy
+	doins policy/*.h
+	insinto /usr/include/install_attributes
+	doins install_attributes/libinstallattributes.h
+
+	# fuzzer_component_id is unknown/unlisted
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/libbrillo_data_encoding_fuzzer
+	platform_fuzzer_install "${S}"/OWNERS \
+		"${OUT}"/libbrillo_dbus_data_serialization_fuzzer
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/libbrillo_http_form_data_fuzzer
+}
+
+platform_pkg_test() {
+	local gtest_filter_qemu="-*DeathTest*"
+	platform_test "run" "${OUT}/libbrillo_tests" "" "" "${gtest_filter_qemu}"
+	platform_test "run" "${OUT}/libinstallattributes_tests"
+	platform_test "run" "${OUT}/libpolicy_tests"
+	platform_test "run" "${OUT}/libbrillo-grpc_tests"
+}
diff --git a/chromeos-base/libbrillo/libbrillo-9999.ebuild b/chromeos-base/libbrillo/libbrillo-9999.ebuild
index 941bf1c..21256b4 100644
--- a/chromeos-base/libbrillo/libbrillo-9999.ebuild
+++ b/chromeos-base/libbrillo/libbrillo-9999.ebuild
@@ -50,11 +50,6 @@
 	dev-libs/modp_b64:=
 "
 
-src_prepare() {
-	eapply "${FILESDIR}/remove-glib-usage.patch"
-	eapply_user
-}
-
 src_install() {
 	insinto "/usr/$(get_libdir)/pkgconfig"
 
@@ -77,6 +72,7 @@
 	insinto /usr/include/install_attributes
 	doins install_attributes/libinstallattributes.h
 
+	# fuzzer_component_id is unknown/unlisted
 	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/libbrillo_data_encoding_fuzzer
 	platform_fuzzer_install "${S}"/OWNERS \
 		"${OUT}"/libbrillo_dbus_data_serialization_fuzzer
diff --git a/chromeos-base/libchrome/files/libchrome-Disable-memory-allocator.patch b/chromeos-base/libchrome/files/libchrome-Disable-memory-allocator.patch
deleted file mode 100644
index 2e0f06a..0000000
--- a/chromeos-base/libchrome/files/libchrome-Disable-memory-allocator.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From: Hidehiko Abe <hidehiko@chromium.org>
-Date: Thu, 22 Nov 2018 01:59:18 +0900
-Subject: [PATCH] libchrome: Disable memory allocator in asan builds.
-
-Memory allocator in //base/allocator should not be used
-with address sanitizer. Otherwise, it breaks asan builds since
-many memory allocations will go to the base allocator instead
-of asan.
-
-BUG=chromium:807685
-TEST=Build.
----
- base/allocator/allocator_shim_override_cpp_symbols.h  | 2 ++
- base/allocator/allocator_shim_override_libc_symbols.h | 2 ++
- 2 files changed, 4 insertions(+)
-
-diff --git a/base/allocator/allocator_shim_override_cpp_symbols.h b/base/allocator/allocator_shim_override_cpp_symbols.h
-index 3313687..9f57025 100644
---- a/base/allocator/allocator_shim_override_cpp_symbols.h
-+++ b/base/allocator/allocator_shim_override_cpp_symbols.h
-@@ -15,6 +15,7 @@
- 
- #include "base/allocator/allocator_shim_internals.h"
- 
-+#if 0
- SHIM_ALWAYS_EXPORT void* operator new(size_t size) {
-   return ShimCppNew(size);
- }
-@@ -49,3 +50,4 @@ SHIM_ALWAYS_EXPORT void operator delete[](void* p,
-                                           const std::nothrow_t&) __THROW {
-   ShimCppDelete(p);
- }
-+#endif
-diff --git a/base/allocator/allocator_shim_override_libc_symbols.h b/base/allocator/allocator_shim_override_libc_symbols.h
-index b77cbb1..c501c23 100644
---- a/base/allocator/allocator_shim_override_libc_symbols.h
-+++ b/base/allocator/allocator_shim_override_libc_symbols.h
-@@ -14,6 +14,7 @@
- 
- #include "base/allocator/allocator_shim_internals.h"
- 
-+#if 0
- extern "C" {
- 
- SHIM_ALWAYS_EXPORT void* malloc(size_t size) __THROW {
-@@ -61,3 +62,4 @@ SHIM_ALWAYS_EXPORT int posix_memalign(void** r, size_t a, size_t s) __THROW {
- //   size_t malloc_usable_size(const void*);
- 
- }  // extern "C"
-+#endif
diff --git a/chromeos-base/libchrome/libchrome-0.0.1-r184.ebuild b/chromeos-base/libchrome/libchrome-0.0.1-r184.ebuild
deleted file mode 100644
index 498e809..0000000
--- a/chromeos-base/libchrome/libchrome-0.0.1-r184.ebuild
+++ /dev/null
@@ -1,281 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-CROS_WORKON_COMMIT=("208b1d02d9b9a4065171dea01fc31ec28f277649" "425bbc2b9a1928afe1ff8c2060ef02b57a266503")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "3673ac409de15259cda121e9bfa103473a032b99")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/external/libchrome")
-CROS_WORKON_LOCALNAME=("platform2" "aosp/external/libchrome")
-CROS_WORKON_EGIT_BRANCH=("main" "master")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/libchrome")
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
-
-WANT_LIBCHROME="no"
-IS_LIBCHROME="yes"
-inherit cros-workon libchrome-version platform
-
-DESCRIPTION="Chrome base/ and dbus/ libraries extracted for use on Chrome OS"
-HOMEPAGE="http://dev.chromium.org/chromium-os/packages/libchrome"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros_host +crypto +dbus fuzzer +mojo +timers libchrome_b182295239"
-
-PLATFORM_SUBDIR="libchrome"
-
-# TODO(avakulenko): Put dev-libs/nss behind a USE flag to make sure NSS is
-# pulled only into the configurations that require it.
-# TODO(fqj): remove !chromeos-base/libchrome-${BASE_VER} on next uprev to r680000.
-RDEPEND="
-	>=chromeos-base/perfetto-13.0:=
-	>=dev-cpp/absl-20200923-r4:=
-	dev-libs/double-conversion:=
-	dev-libs/glib:2=
-	dev-libs/libevent:=
-	dev-libs/modp_b64:=
-	crypto? (
-		dev-libs/nss:=
-		dev-libs/openssl:=
-	)
-	dbus? (
-		sys-apps/dbus:=
-		dev-libs/protobuf:=
-	)
-	dev-libs/re2:=
-	!~chromeos-base/libchrome-576279
-	!chromeos-base/libchrome:576279
-	!chromeos-base/libchrome:462023
-	!chromeos-base/libchrome:456626
-	!chromeos-base/libchrome:395517
-"
-DEPEND="${RDEPEND}
-	dev-cpp/gtest:=
-"
-
-# libmojo used to be in a separate package, which now conflicts with libchrome.
-# Add softblocker here, to resolve the conflict, in case building the package
-# on the environment where old libmojo is installed.
-# TODO(hidehiko): Clean up the blocker after certain period.
-RDEPEND="${RDEPEND}
-	!chromeos-base/libmojo"
-
-# libmojo depends on libbase-crypto.
-REQUIRED_USE="mojo? ( crypto )"
-
-src_prepare() {
-	# epatch "${FILESDIR}"/${PN}-Replace-std-unordered_map-with-std-map-for-dbus-Prop.patch
-	# epatch "${FILESDIR}"/${PN}-dbus-Filter-signal-by-the-sender-we-are-interested-i.patch
-	# epatch "${FILESDIR}"/${PN}-dbus-Make-MockObjectManager-useful.patch
-	# epatch "${FILESDIR}"/${PN}-dbus-Don-t-DCHECK-unexpected-message-type-but-ignore.patch
-	# epatch "${FILESDIR}"/${PN}-Mock-more-methods-of-dbus-Bus-in-dbus-MockBus.patch
-
-	# Disable custom memory allocator when asan is used.
-	# https://crbug.com/807685
-	use_sanitizers && epatch "${FILESDIR}"/${PN}-Disable-memory-allocator.patch
-
-	# Disable object lifetime tracking since it cuases memory leaks in
-	# sanitizer builds, https://crbug.com/908138
-	# TODO
-	# epatch "${FILESDIR}"/${PN}-Disable-object-tracking.patch
-
-	# Apply patches
-	while read -r patch; do
-		epatch "${S}/libchrome_tools/patches/${patch}" || die "failed to patch ${patch}"
-	done < <(grep -E '^[^#]' "${S}/libchrome_tools/patches/patches")
-}
-
-src_configure() {
-	cros_optimize_package_for_speed
-	# TODO(b/182295239): Revert when root cause is identified.
-	# For reasons unknown yet at b/182295239, gale didn't boot if getrandom is called.
-	# Currently we suspect some seccomp filters or kernel/glibc version but
-	# there's no deterministic evidence to point to any of them.
-	# Use this workaround to skip to /dev/urandom fallback.
-	if use libchrome_b182295239; then
-		append-cxxflags "-DLIBCHROME_USE_DEV_URANDOM"
-	fi
-	platform_src_configure
-}
-
-src_test() {
-	pushd libchrome_tools || die
-	python3 -m unittest check_libchrome_test || die "failed python3 check-libchrome-test.py"
-	pushd uprev || die
-	python3 ./run_tests.py || die "failed python3 libchrome/uprev/run_tests.py"
-	popd || die
-	popd || die
-}
-
-src_install() {
-	export BASE_VER="$(cat BASE_VER)"
-	dolib.so "${OUT}"/lib/libbase*.so
-	dolib.a "${OUT}"/libbase*.a
-
-	local mojom_dirs=()
-	local header_dirs=(
-		base
-		base/allocator
-		base/containers
-		base/debug
-		base/files
-		base/functional
-		base/hash
-		base/i18n
-		base/json
-		base/memory
-		base/message_loop
-		base/metrics
-		base/numerics
-		base/posix
-		base/process
-		base/ranges
-		base/strings
-		base/synchronization
-		base/system
-		base/task
-		base/task/common
-		base/task/sequence_manager
-		base/task/thread_pool
-		base/third_party/icu
-		base/third_party/nspr
-		base/third_party/valgrind
-		base/threading
-		base/time
-		base/timer
-		base/trace_event
-		base/trace_event/common
-		base/types
-		base/util/type_safety
-		build
-		components/policy
-		components/policy/core/common
-		testing/gmock/include/gmock
-		testing/gtest/include/gtest
-		third_party/abseil-cpp/absl/types
-		third_party/perfetto/include/perfetto/tracing/
-		third_party/perfetto/include/perfetto/protozero/
-		third_party/perfetto/protos/perfetto/trace/track_event/
-	)
-	use dbus && header_dirs+=( dbus )
-	use timers && header_dirs+=( components/timers )
-
-	insinto /usr/include/libchrome/base/test
-	doins \
-		base/test/bind.h \
-		base/test/task_environment.h \
-		base/test/scoped_chromeos_version_info.h \
-		base/test/scoped_running_on_chromeos.h \
-		base/test/scoped_run_loop_timeout.h \
-		base/test/simple_test_clock.h \
-		base/test/simple_test_tick_clock.h \
-		base/test/task_environment.h \
-		base/test/test_mock_time_task_runner.h \
-		base/test/test_pending_task.h \
-		base/test/test_timeouts.h \
-
-	if use crypto; then
-		insinto /usr/include/libchrome/crypto
-		doins \
-			crypto/crypto_export.h \
-			crypto/hmac.h \
-			crypto/libcrypto-compat.h \
-			crypto/nss_key_util.h \
-			crypto/nss_util.h \
-			crypto/nss_util_internal.h \
-			crypto/openssl_util.h \
-			crypto/p224.h \
-			crypto/p224_spake.h \
-			crypto/random.h \
-			crypto/rsa_private_key.h \
-			crypto/scoped_nss_types.h \
-			crypto/scoped_openssl_types.h \
-			crypto/scoped_test_nss_db.h \
-			crypto/secure_hash.h \
-			crypto/secure_util.h \
-			crypto/sha2.h \
-			crypto/signature_creator.h \
-			crypto/signature_verifier.h
-	fi
-
-	insinto /usr/$(get_libdir)/pkgconfig
-	doins "${OUT}"/obj/libchrome/libchrome*.pc
-
-	# Install libmojo.
-	if use mojo; then
-		# Install binary.
-		dolib.so "${OUT}"/lib/libmojo.so
-
-		# Install headers.
-		header_dirs+=(
-			ipc
-			mojo/core/
-			mojo/core/embedder
-			mojo/core/ports
-			mojo/public/c/system
-			mojo/public/cpp/base
-			mojo/public/cpp/bindings
-			mojo/public/cpp/bindings/lib
-			mojo/public/cpp/platform
-			mojo/public/cpp/system
-		)
-		mojom_dirs+=(
-			mojo/public/interfaces/bindings
-			mojo/public/mojom/base
-		)
-
-		# Install libmojo.pc.
-		insinto /usr/$(get_libdir)/pkgconfig
-		doins "${OUT}"/obj/libchrome/libmojo.pc
-
-		# Install generate_mojom_bindings.
-		# TODO(hidehiko): Clean up tools' install directory.
-		insinto /usr/src/libmojo/mojo
-		doins -r mojo/public/tools/bindings/*
-		doins -r mojo/public/tools/mojom/*
-		doins build/gn_helpers.py
-		doins -r build/android/gyp/util
-		doins -r build/android/pylib
-		exeinto /usr/src/libmojo/mojo
-		doexe libchrome_tools/mojom_generate_type_mappings.py
-
-		insinto /usr/src/libmojo/third_party
-		doins -r third_party/jinja2
-		doins -r third_party/markupsafe
-		doins -r third_party/ply
-
-		# Mark scripts executable.
-		fperms +x \
-			/usr/src/libmojo/mojo/generate_type_mappings.py \
-			/usr/src/libmojo/mojo/mojom_bindings_generator.py \
-			/usr/src/libmojo/mojo/mojom_parser.py
-	fi
-
-	# Install header files.
-	local d
-	for d in "${header_dirs[@]}" ; do
-		insinto /usr/include/libchrome/"${d}"
-		doins "${d}"/*.h
-	done
-	for d in "${mojom_dirs[@]}"; do
-		insinto /usr/include/libchrome/"${d}"
-		doins "${OUT}"/gen/include/"${d}"/*.h
-		# Not to install mojom and pickle file to prevent misuse until Chromium IPC
-		# team is ready to have a stable mojo_base. see crbug.com/1055379
-		# insinto /usr/src/libchrome/mojom/"${d}"
-		# doins "${S}"/"${d}"/*.mojom
-		# insinto /usr/share/libchrome/pickle/"${d}"
-		# doins "${OUT}"/gen/include/"${d}"/*.p
-	done
-
-	# TODO(fqj): Revisit later for type mapping (see libchrome/BUILD.gn)
-	# Install libchrome base type mojo mapping
-	# if use mojo; then
-		# insinto /usr/share/libchrome/mojom_type_mappings_typemapping
-		# doins "${OUT}"/gen/libchrome/mojom_type_mappings_typemapping
-	# fi
-
-	insinto /usr/share/libchrome
-	doins BASE_VER
-}
diff --git a/chromeos-base/libchrome/libchrome-0.0.1-r230.ebuild b/chromeos-base/libchrome/libchrome-0.0.1-r230.ebuild
new file mode 100644
index 0000000..4e04506
--- /dev/null
+++ b/chromeos-base/libchrome/libchrome-0.0.1-r230.ebuild
@@ -0,0 +1,275 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+CROS_WORKON_COMMIT=("c6136fa9e765e659306fc9e8f35d3f9ddf6806f6" "b7e087387158ef604b18cc94a90bb632cd0b73ad")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "ab9d79a66f37504daa766993a46c90d926429aea")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/external/libchrome")
+CROS_WORKON_LOCALNAME=("platform2" "aosp/external/libchrome")
+CROS_WORKON_EGIT_BRANCH=("main" "master")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/libchrome")
+CROS_WORKON_SUBTREE=("common-mk .gn" "")
+
+WANT_LIBCHROME="no"
+IS_LIBCHROME="yes"
+inherit cros-workon libchrome-version platform
+
+DESCRIPTION="Chrome base/ and dbus/ libraries extracted for use on Chrome OS"
+HOMEPAGE="http://dev.chromium.org/chromium-os/packages/libchrome"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cros_host +crypto +dbus fuzzer +mojo +timers libchrome_b182295239"
+
+PLATFORM_SUBDIR="libchrome"
+
+# TODO(avakulenko): Put dev-libs/nss behind a USE flag to make sure NSS is
+# pulled only into the configurations that require it.
+# TODO(fqj): remove !chromeos-base/libchrome-${BASE_VER} on next uprev to r680000.
+RDEPEND="
+	>=chromeos-base/perfetto-13.0:=
+	>=dev-cpp/absl-20200923-r4:=
+	dev-libs/double-conversion:=
+	dev-libs/glib:2=
+	dev-libs/libevent:=
+	dev-libs/modp_b64:=
+	crypto? (
+		dev-libs/nss:=
+		dev-libs/openssl:=
+	)
+	dbus? (
+		sys-apps/dbus:=
+		dev-libs/protobuf:=
+	)
+	dev-libs/re2:=
+	!~chromeos-base/libchrome-576279
+	!chromeos-base/libchrome:576279
+	!chromeos-base/libchrome:462023
+	!chromeos-base/libchrome:456626
+	!chromeos-base/libchrome:395517
+"
+DEPEND="${RDEPEND}
+	dev-cpp/gtest:=
+"
+
+# libmojo used to be in a separate package, which now conflicts with libchrome.
+# Add softblocker here, to resolve the conflict, in case building the package
+# on the environment where old libmojo is installed.
+# TODO(hidehiko): Clean up the blocker after certain period.
+RDEPEND="${RDEPEND}
+	!chromeos-base/libmojo"
+
+# libmojo depends on libbase-crypto.
+REQUIRED_USE="mojo? ( crypto )"
+
+src_prepare() {
+	# Apply patches
+	while read -ra patch_config; do
+		local patch="${patch_config[0]}"
+		local use_flag="${patch_config[1]}"
+		if [ -n "${use_flag}" ]; then
+			if ! use "${use_flag}"; then
+				einfo "Skipped ${patch}"
+				continue
+			fi
+		fi
+		epatch "${S}/libchrome_tools/patches/${patch}" || die "failed to patch ${patch}"
+	done < <(grep -E '^[^#]' "${S}/libchrome_tools/patches/patches")
+}
+
+src_configure() {
+	cros_optimize_package_for_speed
+	# TODO(b/182295239): Revert when root cause is identified.
+	# For reasons unknown yet at b/182295239, gale didn't boot if getrandom is called.
+	# Currently we suspect some seccomp filters or kernel/glibc version but
+	# there's no deterministic evidence to point to any of them.
+	# Use this workaround to skip to /dev/urandom fallback.
+	if use libchrome_b182295239; then
+		append-cxxflags "-DLIBCHROME_USE_DEV_URANDOM"
+	fi
+	platform_src_configure
+}
+
+src_test() {
+	pushd libchrome_tools || die
+	python3 -m unittest check_libchrome_test || die "failed python3 check-libchrome-test.py"
+	pushd uprev || die
+	python3 ./run_tests.py || die "failed python3 libchrome/uprev/run_tests.py"
+	popd || die
+	popd || die
+}
+
+src_install() {
+	export BASE_VER="$(cat BASE_VER)"
+	dolib.so "${OUT}"/lib/libbase*.so
+	dolib.a "${OUT}"/libbase*.a
+
+	local mojom_dirs=()
+	local header_dirs=(
+		base
+		base/allocator
+		base/containers
+		base/debug
+		base/files
+		base/functional
+		base/hash
+		base/i18n
+		base/json
+		base/memory
+		base/message_loop
+		base/metrics
+		base/numerics
+		base/posix
+		base/process
+		base/ranges
+		base/strings
+		base/synchronization
+		base/system
+		base/task
+		base/task/common
+		base/task/sequence_manager
+		base/task/thread_pool
+		base/third_party/icu
+		base/third_party/nspr
+		base/third_party/valgrind
+		base/threading
+		base/time
+		base/timer
+		base/trace_event
+		base/trace_event/common
+		base/types
+		base/util/type_safety
+		build
+		components/policy
+		components/policy/core/common
+		testing/gmock/include/gmock
+		testing/gtest/include/gtest
+		third_party/abseil-cpp/absl/types
+		third_party/perfetto/include/perfetto/tracing/
+		third_party/perfetto/include/perfetto/protozero/
+		third_party/perfetto/protos/perfetto/trace/track_event/
+	)
+	use dbus && header_dirs+=( dbus )
+	use timers && header_dirs+=( components/timers )
+
+	insinto /usr/include/libchrome/base/test
+	doins \
+		base/test/bind.h \
+		base/test/task_environment.h \
+		base/test/scoped_chromeos_version_info.h \
+		base/test/scoped_running_on_chromeos.h \
+		base/test/scoped_run_loop_timeout.h \
+		base/test/simple_test_clock.h \
+		base/test/simple_test_tick_clock.h \
+		base/test/task_environment.h \
+		base/test/test_mock_time_task_runner.h \
+		base/test/test_pending_task.h \
+		base/test/test_switches.h \
+		base/test/test_timeouts.h \
+
+	if use crypto; then
+		insinto /usr/include/libchrome/crypto
+		doins \
+			crypto/crypto_export.h \
+			crypto/hmac.h \
+			crypto/libcrypto-compat.h \
+			crypto/nss_key_util.h \
+			crypto/nss_util.h \
+			crypto/nss_util_internal.h \
+			crypto/openssl_util.h \
+			crypto/p224.h \
+			crypto/p224_spake.h \
+			crypto/random.h \
+			crypto/rsa_private_key.h \
+			crypto/scoped_nss_types.h \
+			crypto/scoped_openssl_types.h \
+			crypto/scoped_test_nss_db.h \
+			crypto/secure_hash.h \
+			crypto/secure_util.h \
+			crypto/sha2.h \
+			crypto/signature_creator.h \
+			crypto/signature_verifier.h
+	fi
+
+	insinto /usr/$(get_libdir)/pkgconfig
+	doins "${OUT}"/obj/libchrome/libchrome*.pc
+
+	# Install libmojo.
+	if use mojo; then
+		# Install binary.
+		dolib.so "${OUT}"/lib/libmojo.so
+
+		# Install headers.
+		header_dirs+=(
+			ipc
+			mojo/core/
+			mojo/core/embedder
+			mojo/core/ports
+			mojo/public/c/system
+			mojo/public/cpp/base
+			mojo/public/cpp/bindings
+			mojo/public/cpp/bindings/lib
+			mojo/public/cpp/platform
+			mojo/public/cpp/system
+		)
+		mojom_dirs+=(
+			mojo/public/interfaces/bindings
+			mojo/public/mojom/base
+		)
+
+		# Install libmojo.pc.
+		insinto /usr/$(get_libdir)/pkgconfig
+		doins "${OUT}"/obj/libchrome/libmojo.pc
+
+		# Install generate_mojom_bindings.
+		# TODO(hidehiko): Clean up tools' install directory.
+		insinto /usr/src/libmojo/mojo
+		doins -r mojo/public/tools/bindings/*
+		doins -r mojo/public/tools/mojom/*
+		doins build/gn_helpers.py
+		doins -r build/android/gyp/util
+		doins -r build/android/pylib
+		exeinto /usr/src/libmojo/mojo
+		doexe libchrome_tools/mojom_generate_type_mappings.py
+
+		insinto /usr/src/libmojo/third_party
+		doins -r third_party/jinja2
+		doins -r third_party/markupsafe
+		doins -r third_party/ply
+
+		# Mark scripts executable.
+		fperms +x \
+			/usr/src/libmojo/mojo/generate_type_mappings.py \
+			/usr/src/libmojo/mojo/mojom_bindings_generator.py \
+			/usr/src/libmojo/mojo/mojom_parser.py
+	fi
+
+	# Install header files.
+	local d
+	for d in "${header_dirs[@]}" ; do
+		insinto /usr/include/libchrome/"${d}"
+		doins "${d}"/*.h
+	done
+	for d in "${mojom_dirs[@]}"; do
+		insinto /usr/include/libchrome/"${d}"
+		doins "${OUT}"/gen/include/"${d}"/*.h
+		# Not to install mojom and pickle file to prevent misuse until Chromium IPC
+		# team is ready to have a stable mojo_base. see crbug.com/1055379
+		# insinto /usr/src/libchrome/mojom/"${d}"
+		# doins "${S}"/"${d}"/*.mojom
+		# insinto /usr/share/libchrome/pickle/"${d}"
+		# doins "${OUT}"/gen/include/"${d}"/*.p
+	done
+
+	# TODO(fqj): Revisit later for type mapping (see libchrome/BUILD.gn)
+	# Install libchrome base type mojo mapping
+	# if use mojo; then
+		# insinto /usr/share/libchrome/mojom_type_mappings_typemapping
+		# doins "${OUT}"/gen/libchrome/mojom_type_mappings_typemapping
+	# fi
+
+	insinto /usr/share/libchrome
+	doins BASE_VER
+}
diff --git a/chromeos-base/libchrome/libchrome-9999.ebuild b/chromeos-base/libchrome/libchrome-9999.ebuild
index 76e61fd..09cd86c 100644
--- a/chromeos-base/libchrome/libchrome-9999.ebuild
+++ b/chromeos-base/libchrome/libchrome-9999.ebuild
@@ -63,23 +63,16 @@
 REQUIRED_USE="mojo? ( crypto )"
 
 src_prepare() {
-	# epatch "${FILESDIR}"/${PN}-Replace-std-unordered_map-with-std-map-for-dbus-Prop.patch
-	# epatch "${FILESDIR}"/${PN}-dbus-Filter-signal-by-the-sender-we-are-interested-i.patch
-	# epatch "${FILESDIR}"/${PN}-dbus-Make-MockObjectManager-useful.patch
-	# epatch "${FILESDIR}"/${PN}-dbus-Don-t-DCHECK-unexpected-message-type-but-ignore.patch
-	# epatch "${FILESDIR}"/${PN}-Mock-more-methods-of-dbus-Bus-in-dbus-MockBus.patch
-
-	# Disable custom memory allocator when asan is used.
-	# https://crbug.com/807685
-	use_sanitizers && epatch "${FILESDIR}"/${PN}-Disable-memory-allocator.patch
-
-	# Disable object lifetime tracking since it cuases memory leaks in
-	# sanitizer builds, https://crbug.com/908138
-	# TODO
-	# epatch "${FILESDIR}"/${PN}-Disable-object-tracking.patch
-
 	# Apply patches
-	while read -r patch; do
+	while read -ra patch_config; do
+		local patch="${patch_config[0]}"
+		local use_flag="${patch_config[1]}"
+		if [ -n "${use_flag}" ]; then
+			if ! use "${use_flag}"; then
+				einfo "Skipped ${patch}"
+				continue
+			fi
+		fi
 		epatch "${S}/libchrome_tools/patches/${patch}" || die "failed to patch ${patch}"
 	done < <(grep -E '^[^#]' "${S}/libchrome_tools/patches/patches")
 }
@@ -171,6 +164,7 @@
 		base/test/task_environment.h \
 		base/test/test_mock_time_task_runner.h \
 		base/test/test_pending_task.h \
+		base/test/test_switches.h \
 		base/test/test_timeouts.h \
 
 	if use crypto; then
diff --git a/chromeos-base/libchromeos-ui/libchromeos-ui-0.0.1-r1807.ebuild b/chromeos-base/libchromeos-ui/libchromeos-ui-0.0.1-r1807.ebuild
deleted file mode 100644
index d712a58..0000000
--- a/chromeos-base/libchromeos-ui/libchromeos-ui-0.0.1-r1807.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a9b0fa02babfde71d911b22f3db40b34a99639c9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk libchromeos-ui .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="libchromeos-ui"
-
-inherit cros-workon platform
-
-DESCRIPTION="Library used to start Chromium-based UIs"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libchromeos-ui/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="chromeos-base/bootstat"
-DEPEND=""
-
-src_install() {
-	local v="$(libchrome_ver)"
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	./platform2_preinstall.sh "${OUT}" "${v}"
-	dolib.so "${OUT}"/lib/libchromeos-ui.so
-	doins "${OUT}"/lib/libchromeos-ui.pc
-
-	insinto /usr/include/chromeos/ui
-	doins "${S}"/chromeos/ui/*.h
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/libchromeos-ui-test"
-}
diff --git a/chromeos-base/libchromeos-ui/libchromeos-ui-0.0.1-r1832.ebuild b/chromeos-base/libchromeos-ui/libchromeos-ui-0.0.1-r1832.ebuild
new file mode 100644
index 0000000..4fa389c
--- /dev/null
+++ b/chromeos-base/libchromeos-ui/libchromeos-ui-0.0.1-r1832.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "a9b0fa02babfde71d911b22f3db40b34a99639c9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk libchromeos-ui .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="libchromeos-ui"
+
+inherit cros-workon platform
+
+DESCRIPTION="Library used to start Chromium-based UIs"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libchromeos-ui/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="chromeos-base/bootstat"
+DEPEND=""
+
+src_install() {
+	local v="$(libchrome_ver)"
+
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	./platform2_preinstall.sh "${OUT}" "${v}"
+	dolib.so "${OUT}"/lib/libchromeos-ui.so
+	doins "${OUT}"/lib/libchromeos-ui.pc
+
+	insinto /usr/include/chromeos/ui
+	doins "${S}"/chromeos/ui/*.h
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/libchromeos-ui-test"
+}
diff --git a/chromeos-base/libchromeos-use-flags/libchromeos-use-flags-1-r28.ebuild b/chromeos-base/libchromeos-use-flags/libchromeos-use-flags-1-r28.ebuild
deleted file mode 100644
index 21ac1f2..0000000
--- a/chromeos-base/libchromeos-use-flags/libchromeos-use-flags-1-r28.ebuild
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
-# the canonical empty project.
-CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
-CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
-CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
-CROS_WORKON_LOCALNAME="platform/empty-project"
-
-inherit cros-workon
-
-DESCRIPTION="Text file listing USE flags for chromeos-base/libchromeos"
-
-LICENSE="BSD-Google"
-# Nothing depends on this package for build info.  All the files are used at
-# runtime only by design.
-SLOT="0/0"
-KEYWORDS="*"
-
-# NB: Flags listed here are off by default unless prefixed with a '+'.
-# This list is lengthy since it determines the USE flags that will be written to
-# the /etc/ui_use_flags.txt file that's used to generate Chrome's command line.
-IUSE="
-	allow_consumer_kiosk
-	arc
-	arc_adb_sideloading
-	arc_force_2x_scaling
-	arc_native_bridge_64bit_support_experiment
-	arc_transition_m_to_n
-	arc_uses_cros_video_decoder
-	arcpp
-	arcvm
-	asan
-	background_blur
-	big_little
-	biod
-	borealis_host
-	cfm_enabled_device
-	cheets
-	clear_fast_ink_buffer
-	compupdates
-	diagnostics
-	disable_background_blur
-	disable_cros_video_decoder
-	disable_explicit_dma_fences
-	disable_native_gpu_memory_buffers
-	disable_instant_tethering
-	disable_spectre_variant2_mitigation
-	drm_atomic
-	edge_touch_filtering
-	enable_dsp_hotword
-	enable_heuristic_palm_detection_filter
-	enable_neural_palm_detection_filter
-	force_breakpad
-	gpu_sandbox_allow_sysv_shm
-	gpu_sandbox_failures_not_fatal
-	gpu_sandbox_start_early
-	houdini
-	houdini64
-	kvm_guest
-	kvm_host
-	kvm_transition
-	lacros
-	legacy_keyboard
-	legacy_power_button
-	moblab
-	native_gpu_memory_buffers
-	natural_scroll_default
-	ndk_translation
-	ndk_translation64
-	neon
-	ondevice_document_scanner
-	ondevice_handwriting
-	ondevice_handwriting_dlc
-	ondevice_speech
-	oobe_skip_postlogin
-	oobe_skip_to_login
-	opengles
-	os_install_service
-	passive_event_listeners
-	pita
-	pita-camera
-	pita-microphone
-	rialto
-	scheduler_configuration_performance
-	screenshare_sw_codec
-	set_hw_overlay_strategy_none
-	shelf-hotseat
-	smartdim
-	tablet_form_factor
-	touch_centric_device
-	touchscreen_wakeup
-	touchview
-	video_capture_use_gpu_memory_buffer
-	virtio_gpu
-	webui-tab-strip
-	wilco
-"
-
-src_install() {
-	# Install a file containing a list of currently-set USE flags that
-	# ChromiumCommandBuilder reads at runtime while constructing Chrome's
-	# command line.
-	local path="${WORKDIR}/ui_use_flags.txt"
-	cat <<EOF >"${path}"
-# This file is just for libchromeos's ChromiumCommandBuilder class.
-# Don't use it for anything else. Your code will break.
-EOF
-
-	# If you need to use a new flag, add it to $IUSE at the top of the file.
-	local flags=( ${IUSE} )
-	local flag
-	for flag in "${flags[@]/#[-+]}" ; do
-		usev ${flag}
-	done | sort -u >>"${path}"
-
-	insinto /etc
-	doins "${path}"
-}
diff --git a/chromeos-base/libchromeos-use-flags/libchromeos-use-flags-1-r29.ebuild b/chromeos-base/libchromeos-use-flags/libchromeos-use-flags-1-r29.ebuild
new file mode 100644
index 0000000..afb25f0
--- /dev/null
+++ b/chromeos-base/libchromeos-use-flags/libchromeos-use-flags-1-r29.ebuild
@@ -0,0 +1,123 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
+# the canonical empty project.
+CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
+CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="platform/empty-project"
+
+inherit cros-workon
+
+DESCRIPTION="Text file listing USE flags for chromeos-base/libchromeos"
+
+LICENSE="BSD-Google"
+# Nothing depends on this package for build info.  All the files are used at
+# runtime only by design.
+SLOT="0/0"
+KEYWORDS="*"
+
+# NB: Flags listed here are off by default unless prefixed with a '+'.
+# This list is lengthy since it determines the USE flags that will be written to
+# the /etc/ui_use_flags.txt file that's used to generate Chrome's command line.
+IUSE="
+	allow_consumer_kiosk
+	arc
+	arc_adb_sideloading
+	arc_force_2x_scaling
+	arc_native_bridge_64bit_support_experiment
+	arc_transition_m_to_n
+	arc_uses_cros_video_decoder
+	arcpp
+	arcvm
+	asan
+	background_blur
+	big_little
+	biod
+	borealis_host
+	cfm_enabled_device
+	cheets
+	clear_fast_ink_buffer
+	compupdates
+	diagnostics
+	disable_background_blur
+	disable_cros_video_decoder
+	disable_explicit_dma_fences
+	disable_native_gpu_memory_buffers
+	disable_instant_tethering
+	disable_spectre_variant2_mitigation
+	drm_atomic
+	edge_touch_filtering
+	enable_dsp_hotword
+	enable_heuristic_palm_detection_filter
+	enable_neural_palm_detection_filter
+	force_breakpad
+	gpu_sandbox_allow_sysv_shm
+	gpu_sandbox_failures_not_fatal
+	gpu_sandbox_start_early
+	houdini
+	houdini64
+	houdini_dlc
+	kvm_guest
+	kvm_host
+	kvm_transition
+	lacros
+	legacy_keyboard
+	legacy_power_button
+	moblab
+	native_gpu_memory_buffers
+	natural_scroll_default
+	ndk_translation
+	ndk_translation64
+	neon
+	ondevice_document_scanner
+	ondevice_handwriting
+	ondevice_handwriting_dlc
+	ondevice_speech
+	oobe_skip_postlogin
+	oobe_skip_to_login
+	opengles
+	os_install_service
+	passive_event_listeners
+	pita
+	pita-camera
+	pita-microphone
+	rialto
+	scheduler_configuration_performance
+	screenshare_sw_codec
+	set_hw_overlay_strategy_none
+	shelf-hotseat
+	smartdim
+	tablet_form_factor
+	touch_centric_device
+	touchscreen_wakeup
+	touchview
+	video_capture_use_gpu_memory_buffer
+	virtio_gpu
+	webui-tab-strip
+	wilco
+"
+
+src_install() {
+	# Install a file containing a list of currently-set USE flags that
+	# ChromiumCommandBuilder reads at runtime while constructing Chrome's
+	# command line.
+	local path="${WORKDIR}/ui_use_flags.txt"
+	cat <<EOF >"${path}"
+# This file is just for libchromeos's ChromiumCommandBuilder class.
+# Don't use it for anything else. Your code will break.
+EOF
+
+	# If you need to use a new flag, add it to $IUSE at the top of the file.
+	local flags=( ${IUSE} )
+	local flag
+	for flag in "${flags[@]/#[-+]}" ; do
+		usev ${flag}
+	done | sort -u >>"${path}"
+
+	insinto /etc
+	doins "${path}"
+}
diff --git a/chromeos-base/libchromeos-use-flags/libchromeos-use-flags-9999.ebuild b/chromeos-base/libchromeos-use-flags/libchromeos-use-flags-9999.ebuild
index 096db8d..ce2c0b5 100644
--- a/chromeos-base/libchromeos-use-flags/libchromeos-use-flags-9999.ebuild
+++ b/chromeos-base/libchromeos-use-flags/libchromeos-use-flags-9999.ebuild
@@ -58,6 +58,7 @@
 	gpu_sandbox_start_early
 	houdini
 	houdini64
+	houdini_dlc
 	kvm_guest
 	kvm_host
 	kvm_transition
diff --git a/chromeos-base/libcontainer/libcontainer-0.0.1-r1570.ebuild b/chromeos-base/libcontainer/libcontainer-0.0.1-r1570.ebuild
deleted file mode 100644
index 632e08f..0000000
--- a/chromeos-base/libcontainer/libcontainer-0.0.1-r1570.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a2ab6048637d439be995dd4cdc3ef91d0291fb42" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk libcontainer .gn"
-
-PLATFORM_SUBDIR="libcontainer"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Library to run jailed containers on Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libcontainer/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="+device-mapper"
-
-# Need lvm2 for devmapper.
-RDEPEND="chromeos-base/minijail:=
-	device-mapper? ( sys-fs/lvm2:= )"
-DEPEND="${RDEPEND}"
-
-src_install() {
-	into /
-	dolib.so "${OUT}"/lib/libcontainer.so
-
-	"${S}"/platform2_preinstall.sh "${PV}" "/usr/include/chromeos" "${OUT}"
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "${OUT}"/libcontainer.pc
-
-	insinto "/usr/include/chromeos"
-	doins libcontainer.h
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}"/libcontainer_test
-}
diff --git a/chromeos-base/libcontainer/libcontainer-0.0.1-r1599.ebuild b/chromeos-base/libcontainer/libcontainer-0.0.1-r1599.ebuild
new file mode 100644
index 0000000..3b424ede
--- /dev/null
+++ b/chromeos-base/libcontainer/libcontainer-0.0.1-r1599.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "26b91e41e669cca59d25dedeb6fb18c470d60c4b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk libcontainer .gn"
+
+PLATFORM_SUBDIR="libcontainer"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Library to run jailed containers on Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libcontainer/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="+device-mapper"
+
+# Need lvm2 for devmapper.
+RDEPEND="chromeos-base/minijail:=
+	device-mapper? ( sys-fs/lvm2:= )"
+DEPEND="${RDEPEND}"
+
+src_install() {
+	into /
+	dolib.so "${OUT}"/lib/libcontainer.so
+
+	"${S}"/platform2_preinstall.sh "${PV}" "/usr/include/chromeos" "${OUT}"
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "${OUT}"/libcontainer.pc
+
+	insinto "/usr/include/chromeos"
+	doins libcontainer.h
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}"/libcontainer_test
+}
diff --git a/chromeos-base/libec/libec-0.0.1-r36.ebuild b/chromeos-base/libec/libec-0.0.1-r36.ebuild
deleted file mode 100644
index 9f22464..0000000
--- a/chromeos-base/libec/libec-0.0.1-r36.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("b1f4ad4ab3cbb07f7d6d2756b7c06a950376ea88" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "667180eb5db7eb65a292552b106b32aa5881c9eb" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_USE_VCSID="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="biod common-mk libec .gn"
-
-PLATFORM_SUBDIR="libec"
-
-inherit cros-workon platform
-
-DESCRIPTION="Embedded Controller Library for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/libec"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-COMMON_DEPEND=""
-
-RDEPEND="
-	${COMMON_DEPEND}
-	"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/chromeos-ec-headers:=
-"
-
-src_install() {
-	dolib.so "${OUT}"/lib/libec*.so
-	dolib.a "${OUT}"/libec*.a
-
-	insinto /usr/"$(get_libdir)"/pkgconfig
-	doins "${OUT}"/obj/libec/libec*.pc
-
-	insinto /usr/include/libec
-	doins ./*.h
-
-	insinto /usr/include/libec/fingerprint
-	doins ./fingerprint/*.h
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/libec_tests"
-}
diff --git a/chromeos-base/libec/libec-0.0.1-r87.ebuild b/chromeos-base/libec/libec-0.0.1-r87.ebuild
new file mode 100644
index 0000000..4f1269e
--- /dev/null
+++ b/chromeos-base/libec/libec-0.0.1-r87.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="c9ef1221782f42d1fd625da1678271b3c9920480"
+CROS_WORKON_TREE=("f109c58de01a51af0998c1f59270c5788c2b061d" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "ad1fd2e4d4c9cb42d85d97fe12f958890ad6ab14" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_USE_VCSID="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="biod common-mk libec .gn"
+
+PLATFORM_SUBDIR="libec"
+
+inherit cros-workon platform
+
+DESCRIPTION="Embedded Controller Library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/libec"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+COMMON_DEPEND=""
+
+RDEPEND="
+	${COMMON_DEPEND}
+	"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/chromeos-ec-headers:=
+"
+
+src_install() {
+	dolib.so "${OUT}"/lib/libec*.so
+	dolib.a "${OUT}"/libec*.a
+
+	insinto /usr/"$(get_libdir)"/pkgconfig
+	doins "${OUT}"/obj/libec/libec*.pc
+
+	insinto /usr/include/libec
+	doins ./*.h
+
+	insinto /usr/include/libec/fingerprint
+	doins ./fingerprint/*.h
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/libec_tests"
+}
diff --git a/chromeos-base/libhwsec-foundation/libhwsec-foundation-0.0.1-r113.ebuild b/chromeos-base/libhwsec-foundation/libhwsec-foundation-0.0.1-r113.ebuild
new file mode 100644
index 0000000..cb7ac8b
--- /dev/null
+++ b/chromeos-base/libhwsec-foundation/libhwsec-foundation-0.0.1-r113.ebuild
@@ -0,0 +1,82 @@
+# 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e08a2eb734e33827dffeecf57eca046cd1091373" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "1e9ca239fab09ba22b58e4a22d63e2ede865b159" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug/1184685): "libhwsec" is not necessary; remove it after solving
+# the bug.
+CROS_WORKON_SUBTREE="common-mk metrics libhwsec libhwsec-foundation .gn"
+
+PLATFORM_SUBDIR="libhwsec-foundation"
+
+inherit cros-workon platform
+
+DESCRIPTION="Crypto and utility functions used in TPM related daemons."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libhwsec-foundation/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test tpm tpm_dynamic tpm2"
+
+RDEPEND="
+	>=chromeos-base/metrics-0.0.1-r3152
+	chromeos-base/system_api
+	chromeos-base/tpm_manager-client
+	"
+
+src_install() {
+	insinto /usr/include/libhwsec-foundation
+	doins ./hwsec-foundation_export.h
+	doins ./signature_traits.h
+	doins ./fuzzed_trousers_utils.h
+
+	insinto /usr/include/libhwsec-foundation/syscaller
+	doins ./syscaller/syscaller.h
+	doins ./syscaller/syscaller_impl.h
+	doins ./syscaller/mock_syscaller.h
+
+	insinto /usr/include/libhwsec-foundation/tpm_error
+	doins ./tpm_error/tpm_error_data.h
+	doins ./tpm_error/handle_auth_failure.h
+
+	insinto /usr/include/libhwsec-foundation/utility
+	doins ./utility/conversions.h
+	doins ./utility/crypto.h
+
+	insinto /usr/include/libhwsec-foundation/error
+	doins ./error/error.h
+	doins ./error/caller_info.h
+	doins ./error/error_message.h
+	doins ./error/testing_helper.h
+
+	insinto /usr/include/libhwsec-foundation/tpm
+	doins ./tpm/tpm_version.h
+
+	dolib.so "${OUT}"/lib/libhwsec-foundation.so
+
+	dosbin "${OUT}"/tpm_version_client
+
+	if use tpm_dynamic; then
+		dosbin tool/tpm_version
+
+		insinto /etc/init
+		doins init/no-tpm-checker.conf
+	fi
+}
+
+platform_pkg_test() {
+	local tests=(
+		hwsec-foundation_testrunner
+	)
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/libhwsec-foundation/libhwsec-foundation-0.0.1-r51.ebuild b/chromeos-base/libhwsec-foundation/libhwsec-foundation-0.0.1-r51.ebuild
deleted file mode 100644
index 44b355f..0000000
--- a/chromeos-base/libhwsec-foundation/libhwsec-foundation-0.0.1-r51.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="143f6f59e6002c02e58f4daefbd75cc49830d6ae"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "81dfbbc1756a3b4224b447e7bf10a916d97c4f66" "0b612d0f1e8dbe59a5549b476f1e681e0b7fe94e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug/1184685): "libhwsec" is not necessary; remove it after solving
-# the bug.
-CROS_WORKON_SUBTREE="common-mk metrics libhwsec libhwsec-foundation .gn"
-
-PLATFORM_SUBDIR="libhwsec-foundation"
-
-inherit cros-workon platform
-
-DESCRIPTION="Crypto and utility functions used in TPM related daemons."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libhwsec-foundation/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test tpm2"
-
-RDEPEND="
-	>=chromeos-base/metrics-0.0.1-r3152
-	chromeos-base/system_api
-	chromeos-base/tpm_manager-client
-	"
-
-src_install() {
-	insinto /usr/include/libhwsec-foundation
-	doins ./hwsec-foundation_export.h
-
-	insinto /usr/include/libhwsec-foundation/tpm_error
-	doins ./tpm_error/tpm_error_data.h
-	doins ./tpm_error/handle_auth_failure.h
-
-	insinto /usr/include/libhwsec-foundation/utility
-	doins ./utility/conversions.h
-	doins ./utility/crypto.h
-
-	dolib.so "${OUT}"/lib/libhwsec-foundation.so
-}
-
-platform_pkg_test() {
-	local tests=(
-		hwsec-foundation_testrunner
-	)
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/libhwsec-foundation/libhwsec-foundation-9999.ebuild b/chromeos-base/libhwsec-foundation/libhwsec-foundation-9999.ebuild
index 16d69a2..85e7660 100644
--- a/chromeos-base/libhwsec-foundation/libhwsec-foundation-9999.ebuild
+++ b/chromeos-base/libhwsec-foundation/libhwsec-foundation-9999.ebuild
@@ -21,7 +21,7 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="test tpm2"
+IUSE="test tpm tpm_dynamic tpm2"
 
 RDEPEND="
 	>=chromeos-base/metrics-0.0.1-r3152
@@ -32,6 +32,13 @@
 src_install() {
 	insinto /usr/include/libhwsec-foundation
 	doins ./hwsec-foundation_export.h
+	doins ./signature_traits.h
+	doins ./fuzzed_trousers_utils.h
+
+	insinto /usr/include/libhwsec-foundation/syscaller
+	doins ./syscaller/syscaller.h
+	doins ./syscaller/syscaller_impl.h
+	doins ./syscaller/mock_syscaller.h
 
 	insinto /usr/include/libhwsec-foundation/tpm_error
 	doins ./tpm_error/tpm_error_data.h
@@ -41,7 +48,25 @@
 	doins ./utility/conversions.h
 	doins ./utility/crypto.h
 
+	insinto /usr/include/libhwsec-foundation/error
+	doins ./error/error.h
+	doins ./error/caller_info.h
+	doins ./error/error_message.h
+	doins ./error/testing_helper.h
+
+	insinto /usr/include/libhwsec-foundation/tpm
+	doins ./tpm/tpm_version.h
+
 	dolib.so "${OUT}"/lib/libhwsec-foundation.so
+
+	dosbin "${OUT}"/tpm_version_client
+
+	if use tpm_dynamic; then
+		dosbin tool/tpm_version
+
+		insinto /etc/init
+		doins init/no-tpm-checker.conf
+	fi
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/libhwsec/libhwsec-0.0.1-r179.ebuild b/chromeos-base/libhwsec/libhwsec-0.0.1-r179.ebuild
deleted file mode 100644
index 7e5a15b..0000000
--- a/chromeos-base/libhwsec/libhwsec-0.0.1-r179.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 2019 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="143f6f59e6002c02e58f4daefbd75cc49830d6ae"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "81dfbbc1756a3b4224b447e7bf10a916d97c4f66" "0b612d0f1e8dbe59a5549b476f1e681e0b7fe94e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk libhwsec libhwsec-foundation .gn"
-
-PLATFORM_SUBDIR="libhwsec"
-
-inherit cros-workon platform
-
-DESCRIPTION="Crypto and utility functions used in TPM related daemons."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libhwsec/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test tpm2"
-
-COMMON_DEPEND="
-	chromeos-base/libhwsec-foundation
-	dev-libs/openssl:0=
-	!tpm2? ( app-crypt/trousers:= )
-"
-
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}"
-
-src_install() {
-	insinto /usr/include/chromeos/libhwsec
-	doins ./*.h
-
-	insinto /usr/include/chromeos/libhwsec/overalls
-	doins ./overalls/overalls.h
-	doins ./overalls/overalls_api.h
-
-	if ! use tpm2; then
-		insinto /usr/include/chromeos/libhwsec/test_utils/tpm1
-		doins ./test_utils/tpm1/*.h
-	fi
-
-	dolib.so "${OUT}"/lib/libhwsec.so
-	dolib.a "${OUT}"/libhwsec_test.a
-}
-
-
-platform_pkg_test() {
-	local tests=(
-		hwsec_testrunner
-	)
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/libhwsec/libhwsec-0.0.1-r243.ebuild b/chromeos-base/libhwsec/libhwsec-0.0.1-r243.ebuild
new file mode 100644
index 0000000..5ad3372
--- /dev/null
+++ b/chromeos-base/libhwsec/libhwsec-0.0.1-r243.ebuild
@@ -0,0 +1,75 @@
+# Copyright 2019 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="7e56fbcc6f3c9e9ba98bf43a52940100e5fbc918"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "1e9ca239fab09ba22b58e4a22d63e2ede865b159" "d8da1275feb26afab354f35df7316b3840f8330b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk libhwsec libhwsec-foundation trunks .gn"
+
+PLATFORM_SUBDIR="libhwsec"
+
+inherit cros-workon platform
+
+DESCRIPTION="Crypto and utility functions used in TPM related daemons."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libhwsec/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test fuzzer tpm tpm2 tpm_dynamic"
+
+COMMON_DEPEND="
+	chromeos-base/libhwsec-foundation
+	dev-libs/openssl:0=
+	tpm2? ( chromeos-base/trunks:= )
+	tpm? ( app-crypt/trousers:= )
+	fuzzer? (
+		app-crypt/trousers:=
+		chromeos-base/trunks:=
+	)
+"
+
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}"
+
+src_install() {
+	insinto /usr/include/chromeos/libhwsec
+	doins ./*.h
+
+	insinto /usr/include/chromeos/libhwsec/overalls
+	doins ./overalls/overalls.h
+	doins ./overalls/overalls_api.h
+
+	insinto /usr/include/chromeos/libhwsec/error
+	doins ./error/tpm_error.h
+
+	if use tpm || use fuzzer; then
+		insinto /usr/include/chromeos/libhwsec/test_utils/tpm1
+		doins ./test_utils/tpm1/*.h
+		insinto /usr/include/chromeos/libhwsec/error
+		doins ./error/tpm1_error.h
+	fi
+	if use tpm2 || use fuzzer; then
+		insinto /usr/include/chromeos/libhwsec/error
+		doins ./error/tpm2_error.h
+	fi
+
+	dolib.so "${OUT}"/lib/libhwsec.so
+	dolib.a "${OUT}"/libhwsec_test.a
+}
+
+
+platform_pkg_test() {
+	local tests=(
+		hwsec_testrunner
+	)
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/libhwsec/libhwsec-9999.ebuild b/chromeos-base/libhwsec/libhwsec-9999.ebuild
index 0d7fee7..6376103 100644
--- a/chromeos-base/libhwsec/libhwsec-9999.ebuild
+++ b/chromeos-base/libhwsec/libhwsec-9999.ebuild
@@ -8,7 +8,7 @@
 CROS_WORKON_LOCALNAME="platform2"
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk libhwsec libhwsec-foundation .gn"
+CROS_WORKON_SUBTREE="common-mk libhwsec libhwsec-foundation trunks .gn"
 
 PLATFORM_SUBDIR="libhwsec"
 
@@ -19,12 +19,17 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="test tpm2"
+IUSE="test fuzzer tpm tpm2 tpm_dynamic"
 
 COMMON_DEPEND="
 	chromeos-base/libhwsec-foundation
 	dev-libs/openssl:0=
-	!tpm2? ( app-crypt/trousers:= )
+	tpm2? ( chromeos-base/trunks:= )
+	tpm? ( app-crypt/trousers:= )
+	fuzzer? (
+		app-crypt/trousers:=
+		chromeos-base/trunks:=
+	)
 "
 
 RDEPEND="${COMMON_DEPEND}"
@@ -38,9 +43,18 @@
 	doins ./overalls/overalls.h
 	doins ./overalls/overalls_api.h
 
-	if ! use tpm2; then
+	insinto /usr/include/chromeos/libhwsec/error
+	doins ./error/tpm_error.h
+
+	if use tpm || use fuzzer; then
 		insinto /usr/include/chromeos/libhwsec/test_utils/tpm1
 		doins ./test_utils/tpm1/*.h
+		insinto /usr/include/chromeos/libhwsec/error
+		doins ./error/tpm1_error.h
+	fi
+	if use tpm2 || use fuzzer; then
+		insinto /usr/include/chromeos/libhwsec/error
+		doins ./error/tpm2_error.h
 	fi
 
 	dolib.so "${OUT}"/lib/libhwsec.so
diff --git a/chromeos-base/libiioservice_ipc/libiioservice_ipc-0.0.1-r139.ebuild b/chromeos-base/libiioservice_ipc/libiioservice_ipc-0.0.1-r139.ebuild
deleted file mode 100644
index 58f12dd..0000000
--- a/chromeos-base/libiioservice_ipc/libiioservice_ipc-0.0.1-r139.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="08aee9d7a91dddd5977b31ca2a2833ba54f8d89a"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "da73aae6d89c8e69c3740af612610792ce42b1a8" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE=".gn iioservice common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="iioservice/libiioservice_ipc"
-
-inherit cros-workon platform
-
-DESCRIPTION="Chrome OS sensor HAL IPC util."
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND=""
-
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-"
-
-src_install() {
-	dolib.so "${OUT}/lib/libiioservice_ipc.so"
-	dolib.a "${OUT}/libiioservice_ipc_mojom.a"
-}
diff --git a/chromeos-base/libiioservice_ipc/libiioservice_ipc-0.0.1-r201.ebuild b/chromeos-base/libiioservice_ipc/libiioservice_ipc-0.0.1-r201.ebuild
new file mode 100644
index 0000000..4304394
--- /dev/null
+++ b/chromeos-base/libiioservice_ipc/libiioservice_ipc-0.0.1-r201.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "14acd311021ff7b4a6e5a812cf6ef18bab1ede72" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE=".gn iioservice common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="iioservice/libiioservice_ipc"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS sensor HAL IPC util."
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND=""
+
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+"
+
+src_install() {
+	dolib.so "${OUT}/lib/libiioservice_ipc.so"
+	dolib.a "${OUT}/libiioservice_ipc_mojom.a"
+}
diff --git a/chromeos-base/libipp/libipp-0.0.1-r153.ebuild b/chromeos-base/libipp/libipp-0.0.1-r153.ebuild
deleted file mode 100644
index 98a8f8f..0000000
--- a/chromeos-base/libipp/libipp-0.0.1-r153.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "446ac148c9c5710eb395d8c044f4e44b8bf4361a" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk libipp .gn"
-
-PLATFORM_SUBDIR="libipp"
-
-inherit cros-workon platform
-
-DESCRIPTION="The library for building and parsing IPP (Internet Printing Protocol) frames."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libipp/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-src_install() {
-	dolib.so "${OUT}/lib/libipp.so"
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins libipp.pc
-
-	insinto "/usr/include/chromeos/libipp"
-	doins ipp.h ipp_attribute.h ipp_base.h ipp_collections.h ipp_enums.h \
-			ipp_export.h ipp_operations.h ipp_package.h
-
-	# Install fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/libipp_fuzzer
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/libipp_test"
-}
diff --git a/chromeos-base/libipp/libipp-0.0.1-r181.ebuild b/chromeos-base/libipp/libipp-0.0.1-r181.ebuild
new file mode 100644
index 0000000..95802a7
--- /dev/null
+++ b/chromeos-base/libipp/libipp-0.0.1-r181.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "72c56421c422f1abb651484e3851e5eaee5edb06" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk libipp .gn"
+
+PLATFORM_SUBDIR="libipp"
+
+inherit cros-workon platform
+
+DESCRIPTION="The library for building and parsing IPP (Internet Printing Protocol) frames."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libipp/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+src_install() {
+	dolib.so "${OUT}/lib/libipp.so"
+
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins libipp.pc
+
+	insinto "/usr/include/chromeos/libipp"
+	doins ipp.h ipp_attribute.h ipp_base.h ipp_collections.h ipp_enums.h \
+			ipp_export.h ipp_operations.h ipp_package.h
+
+	# Install fuzzer
+	local fuzzer_component_id="167231"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/libipp_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/libipp_test"
+}
diff --git a/chromeos-base/libipp/libipp-9999.ebuild b/chromeos-base/libipp/libipp-9999.ebuild
index ca58c63..fdea474 100644
--- a/chromeos-base/libipp/libipp-9999.ebuild
+++ b/chromeos-base/libipp/libipp-9999.ebuild
@@ -30,7 +30,9 @@
 			ipp_export.h ipp_operations.h ipp_package.h
 
 	# Install fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/libipp_fuzzer
+	local fuzzer_component_id="167231"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/libipp_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/libmems/libmems-0.0.1-r192.ebuild b/chromeos-base/libmems/libmems-0.0.1-r192.ebuild
deleted file mode 100644
index 68d3bbf..0000000
--- a/chromeos-base/libmems/libmems-0.0.1-r192.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "359903647899af99fb1bc9ba9d666b0e78fcb3a8" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk libmems .gn"
-
-PLATFORM_SUBDIR="libmems"
-
-inherit cros-workon platform
-
-DESCRIPTION="MEMS support library for Chromium OS."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libmems"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-COMMON_DEPEND="
-	net-libs/libiio:="
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/system_api:="
-
-src_install() {
-	dolib.so "${OUT}/lib/libmems.so"
-	dolib.so "${OUT}/lib/libmems_test_support.so"
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins libmems.pc
-	doins libmems_test_support.pc
-
-	insinto "/usr/include/chromeos/libmems"
-	doins *.h
-}
-
-platform_pkg_test() {
-	local tests=(
-		libmems_testrunner
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
-
diff --git a/chromeos-base/libmems/libmems-0.0.1-r220.ebuild b/chromeos-base/libmems/libmems-0.0.1-r220.ebuild
new file mode 100644
index 0000000..fa9e1bf
--- /dev/null
+++ b/chromeos-base/libmems/libmems-0.0.1-r220.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "ba93b35f6b12686bf293ce79255da511c89278e1" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk libmems .gn"
+
+PLATFORM_SUBDIR="libmems"
+
+inherit cros-workon platform
+
+DESCRIPTION="MEMS support library for Chromium OS."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libmems"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+COMMON_DEPEND="
+	net-libs/libiio:="
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/system_api:="
+
+src_install() {
+	dolib.so "${OUT}/lib/libmems.so"
+	dolib.so "${OUT}/lib/libmems_test_support.so"
+
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins libmems.pc
+	doins libmems_test_support.pc
+
+	insinto "/usr/include/chromeos/libmems"
+	doins *.h
+}
+
+platform_pkg_test() {
+	local tests=(
+		libmems_testrunner
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
+
diff --git a/chromeos-base/libpasswordprovider/libpasswordprovider-0.0.1-r443.ebuild b/chromeos-base/libpasswordprovider/libpasswordprovider-0.0.1-r443.ebuild
deleted file mode 100644
index d4225ba4..0000000
--- a/chromeos-base/libpasswordprovider/libpasswordprovider-0.0.1-r443.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "eae0546f4ee5132d4544af4770755eb05f60cba6" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk libpasswordprovider .gn"
-
-PLATFORM_SUBDIR="libpasswordprovider"
-
-inherit cros-workon platform
-
-DESCRIPTION="Library for storing and retrieving user password"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libpasswordprovider"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="
-	sys-apps/keyutils:=
-"
-
-DEPEND="${RDEPEND}"
-
-src_install() {
-	dolib.so "${OUT}/lib/libpasswordprovider.so"
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins libpasswordprovider.pc
-
-	insinto "/usr/include/libpasswordprovider"
-	doins *.h
-}
-
-platform_pkg_test() {
-
-	platform_test "run" "${OUT}/${test_bin}" "0" "${gtest_filter}"
-}
-
-platform_pkg_test() {
-	local gtest_filter=""
-	if ! use x86 && ! use amd64 ; then
-		# PasswordProvider tests fail on qemu due to unsupported system calls to keyrings.
-		# Run only the Password unit tests on qemu since keyrings are not supported yet.
-		# https://crbug.com/792699
-		einfo "Skipping PasswordProvider unit tests on non-x86 platform"
-		gtest_filter+="Password.*"
-	fi
-
-	local tests=(
-		password_provider_test
-	)
-
-	local test_bin
-		for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}" 0 "${gtest_filter}"
-	done
-}
diff --git a/chromeos-base/libpasswordprovider/libpasswordprovider-0.0.1-r470.ebuild b/chromeos-base/libpasswordprovider/libpasswordprovider-0.0.1-r470.ebuild
new file mode 100644
index 0000000..f42bd27
--- /dev/null
+++ b/chromeos-base/libpasswordprovider/libpasswordprovider-0.0.1-r470.ebuild
@@ -0,0 +1,63 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk libpasswordprovider .gn"
+
+PLATFORM_SUBDIR="libpasswordprovider"
+
+inherit cros-workon platform
+
+DESCRIPTION="Library for storing and retrieving user password"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libpasswordprovider"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="
+	sys-apps/keyutils:=
+"
+
+DEPEND="${RDEPEND}"
+
+src_install() {
+	dolib.so "${OUT}/lib/libpasswordprovider.so"
+
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins libpasswordprovider.pc
+
+	insinto "/usr/include/libpasswordprovider"
+	doins *.h
+}
+
+platform_pkg_test() {
+
+	platform_test "run" "${OUT}/${test_bin}" "0" "${gtest_filter}"
+}
+
+platform_pkg_test() {
+	local gtest_filter=""
+	if ! use x86 && ! use amd64 ; then
+		# PasswordProvider tests fail on qemu due to unsupported system calls to keyrings.
+		# Run only the Password unit tests on qemu since keyrings are not supported yet.
+		# https://crbug.com/792699
+		einfo "Skipping PasswordProvider unit tests on non-x86 platform"
+		gtest_filter+="Password.*"
+	fi
+
+	local tests=(
+		password_provider_test
+	)
+
+	local test_bin
+		for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}" 0 "${gtest_filter}"
+	done
+}
diff --git a/chromeos-base/libsirenia/libsirenia-0.1.0-r39.ebuild b/chromeos-base/libsirenia/libsirenia-0.1.0-r39.ebuild
deleted file mode 100644
index ec99978d..0000000
--- a/chromeos-base/libsirenia/libsirenia-0.1.0-r39.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="b15630d225145b9dc8603b8f500e68954c25fd3f"
-CROS_WORKON_TREE="41f3dce4c2ba5bc9fd7972e4ebb6cc36beaa8147"
-CROS_RUST_SUBDIR="sirenia/libsirenia"
-
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="The support library for the ManaTEE runtime environment."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/libsirenia"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="
-	chromeos-base/sirenia-rpc-macros:=
-	=dev-rust/chrono-0.4*:=
-	>=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2
-	=dev-rust/getopts-0.2*:=
-	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3
-	dev-rust/libchromeos:=
-	dev-rust/minijail:=
-	>=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0
-	>=dev-rust/serde-1.0.114:= <dev-rust/serde-2
-	=dev-rust/serde_derive-1*:=
-	dev-rust/sys_util:=
-	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}"
-
-# We skip the vsock test because it requires the vsock kernel modules to be
-# loaded.
-src_test() {
-	cros-rust_src_test -- --skip transport::tests::vsocktransport \
-		--skip sandbox::tests::sandbox_unpriviledged
-
-	# TODO(crbug.com/1171078) Run this with the other tests.
-	(
-		local timeout_millis=5000
-		CROS_RUST_PLATFORM_TEST_ARGS=(
-			"${CROS_RUST_PLATFORM_TEST_ARGS[@]}"
-			--env RUST_TEST_TIME_UNIT="${timeout_millis},${timeout_millis}"
-		)
-		cros-rust_src_test -- --nocapture \
-			-Z unstable-options --ensure-time \
-			sandbox::tests::sandbox_unpriviledged
-	)
-
-	if cros_rust_is_direct_exec; then
-		# Run tests for sirenia-rpc-macros here since the tests depend on libsirenia
-		# and libsirenia depends on sirenia-rpc-macros.
-		(
-			cd sirenia-rpc-macros || die
-			cros-rust_src_test
-		)
-	fi
-}
diff --git a/chromeos-base/libsirenia/libsirenia-0.1.0-r52.ebuild b/chromeos-base/libsirenia/libsirenia-0.1.0-r52.ebuild
new file mode 100644
index 0000000..5b92aab
--- /dev/null
+++ b/chromeos-base/libsirenia/libsirenia-0.1.0-r52.ebuild
@@ -0,0 +1,68 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="8ce35d16ad07dfeebc352815a82b5462f41090f7"
+CROS_WORKON_TREE="8fd5f11a121272b940043536aa8b676406d2f43a"
+CROS_RUST_SUBDIR="sirenia/libsirenia"
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="The support library for the ManaTEE runtime environment."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/libsirenia"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND="
+	chromeos-base/sirenia-rpc-macros:=
+	=dev-rust/chrono-0.4*:=
+	=dev-rust/flexbuffers-2*:=
+	=dev-rust/getopts-0.2*:=
+	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3
+	dev-rust/libchromeos:=
+	>=dev-rust/minijail-0.2.3:=
+	>=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0
+	>=dev-rust/serde-1.0.114:= <dev-rust/serde-2
+	=dev-rust/serde_derive-1*:=
+	dev-rust/sys_util:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}"
+
+# We skip the vsock test because it requires the vsock kernel modules to be
+# loaded.
+src_test() {
+	cros-rust_src_test -- --skip transport::tests::vsocktransport \
+		--skip sandbox::tests::sandbox_unpriviledged
+
+	# TODO(crbug.com/1171078) Run this with the other tests.
+	(
+		local timeout_millis=5000
+		CROS_RUST_PLATFORM_TEST_ARGS=(
+			"${CROS_RUST_PLATFORM_TEST_ARGS[@]}"
+			--env RUST_TEST_TIME_UNIT="${timeout_millis},${timeout_millis}"
+		)
+		cros-rust_src_test -- --nocapture \
+			-Z unstable-options --ensure-time \
+			sandbox::tests::sandbox_unpriviledged
+	)
+
+	if cros_rust_is_direct_exec; then
+		# Run tests for sirenia-rpc-macros here since the tests depend on libsirenia
+		# and libsirenia depends on sirenia-rpc-macros.
+		(
+			cd sirenia-rpc-macros || die
+			cros-rust_src_test
+		)
+	fi
+}
diff --git a/chromeos-base/libsirenia/libsirenia-9999.ebuild b/chromeos-base/libsirenia/libsirenia-9999.ebuild
index 583d936..008aeb6 100644
--- a/chromeos-base/libsirenia/libsirenia-9999.ebuild
+++ b/chromeos-base/libsirenia/libsirenia-9999.ebuild
@@ -22,11 +22,11 @@
 DEPEND="
 	chromeos-base/sirenia-rpc-macros:=
 	=dev-rust/chrono-0.4*:=
-	>=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2
+	=dev-rust/flexbuffers-2*:=
 	=dev-rust/getopts-0.2*:=
 	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3
 	dev-rust/libchromeos:=
-	dev-rust/minijail:=
+	>=dev-rust/minijail-0.2.3:=
 	>=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0
 	>=dev-rust/serde-1.0.114:= <dev-rust/serde-2
 	=dev-rust/serde_derive-1*:=
diff --git a/chromeos-base/libtpmcrypto/libtpmcrypto-0.0.1-r325.ebuild b/chromeos-base/libtpmcrypto/libtpmcrypto-0.0.1-r325.ebuild
deleted file mode 100644
index 12f47dc..0000000
--- a/chromeos-base/libtpmcrypto/libtpmcrypto-0.0.1-r325.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="ecd28d2c26fbe86b6822c6d6afb80f118a8f7f03"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "5d77de997847c22cb783cc11cd0fab4f6fae59f0" "a06a3f47395fb7b584188c6852764bc773e5497e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk libtpmcrypto trunks .gn"
-
-PLATFORM_SUBDIR="libtpmcrypto"
-
-inherit cros-workon platform
-
-DESCRIPTION="Encrypts/Decrypts data to a serialized proto with TPM sealed key."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libtpmcrypto/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="tpm tpm2"
-REQUIRED_USE="tpm2? ( !tpm )"
-
-# This depends on protobuf because it uses protoc and needs to be rebuilt
-# whenever the protobuf library is updated since generated source files may be
-# incompatible across different versions of the protobuf library.
-COMMON_DEPEND="
-	tpm2? (
-		chromeos-base/trunks:=
-	)
-	!tpm2? (
-		app-crypt/trousers:=
-	)
-	dev-libs/protobuf:=
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-"
-
-src_install() {
-	dolib.so "${OUT}/lib/libtpmcrypto.so"
-
-	"${S}"/platform2_preinstall.sh "${PV}" "/usr/include/chromeos" "${OUT}"
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "${OUT}/libtpmcrypto.pc"
-
-	insinto "/usr/include/libtpmcrypto"
-	doins *.h
-}
-
-platform_pkg_test() {
-	local tests=(
-		tpmcrypto_test
-	)
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/libtpmcrypto/libtpmcrypto-0.0.1-r383.ebuild b/chromeos-base/libtpmcrypto/libtpmcrypto-0.0.1-r383.ebuild
new file mode 100644
index 0000000..76e7f0a
--- /dev/null
+++ b/chromeos-base/libtpmcrypto/libtpmcrypto-0.0.1-r383.ebuild
@@ -0,0 +1,71 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="7e56fbcc6f3c9e9ba98bf43a52940100e5fbc918"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "1e9ca239fab09ba22b58e4a22d63e2ede865b159" "26e3713c1f2916a87c54f5aa50da42d121f1a5a3" "d8da1275feb26afab354f35df7316b3840f8330b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk libhwsec libhwsec-foundation libtpmcrypto trunks .gn"
+
+PLATFORM_SUBDIR="libtpmcrypto"
+
+inherit cros-workon platform
+
+DESCRIPTION="Encrypts/Decrypts data to a serialized proto with TPM sealed key."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/libtpmcrypto/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="tpm tpm_dynamic tpm2"
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
+
+# This depends on protobuf because it uses protoc and needs to be rebuilt
+# whenever the protobuf library is updated since generated source files may be
+# incompatible across different versions of the protobuf library.
+COMMON_DEPEND="
+	tpm2? (
+		chromeos-base/trunks:=
+	)
+	tpm? (
+		app-crypt/trousers:=
+	)
+	chromeos-base/libhwsec-foundation:=
+	dev-libs/protobuf:=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+"
+
+src_install() {
+	dolib.so "${OUT}/lib/libtpmcrypto.so"
+
+	"${S}"/platform2_preinstall.sh "${PV}" "/usr/include/chromeos" "${OUT}"
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "${OUT}/libtpmcrypto.pc"
+
+	insinto "/usr/include/libtpmcrypto"
+	doins *.h
+}
+
+platform_pkg_test() {
+	local tests=(
+		tpmcrypto_test
+	)
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/libtpmcrypto/libtpmcrypto-9999.ebuild b/chromeos-base/libtpmcrypto/libtpmcrypto-9999.ebuild
index 9f87232..7368ea8 100644
--- a/chromeos-base/libtpmcrypto/libtpmcrypto-9999.ebuild
+++ b/chromeos-base/libtpmcrypto/libtpmcrypto-9999.ebuild
@@ -8,7 +8,7 @@
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_OUTOFTREE_BUILD=1
 # TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk libtpmcrypto trunks .gn"
+CROS_WORKON_SUBTREE="common-mk libhwsec libhwsec-foundation libtpmcrypto trunks .gn"
 
 PLATFORM_SUBDIR="libtpmcrypto"
 
@@ -19,8 +19,11 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="tpm tpm2"
-REQUIRED_USE="tpm2? ( !tpm )"
+IUSE="tpm tpm_dynamic tpm2"
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
 
 # This depends on protobuf because it uses protoc and needs to be rebuilt
 # whenever the protobuf library is updated since generated source files may be
@@ -29,9 +32,10 @@
 	tpm2? (
 		chromeos-base/trunks:=
 	)
-	!tpm2? (
+	tpm? (
 		app-crypt/trousers:=
 	)
+	chromeos-base/libhwsec-foundation:=
 	dev-libs/protobuf:=
 "
 
diff --git a/chromeos-base/libvda-gpu-tests/libvda-gpu-tests-0.0.1-r227.ebuild b/chromeos-base/libvda-gpu-tests/libvda-gpu-tests-0.0.1-r227.ebuild
deleted file mode 100644
index cd12c85..0000000
--- a/chromeos-base/libvda-gpu-tests/libvda-gpu-tests-0.0.1-r227.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "fbf4dfb51a4aa58831d6179663e19f3d1ef68b16" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/vm/libvda .gn"
-
-PLATFORM_SUBDIR="arc/vm/libvda"
-
-inherit cros-workon platform
-
-DESCRIPTION="libvda Chrome GPU tests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/libvda"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-	chromeos-base/libbrillo:=
-	media-libs/minigbm:=
-"
-
-DEPEND="
-	${RDEPEND}
-	chromeos-base/system_api:=
-"
-
-src_compile() {
-	platform "compile" "libvda_gpu_unittest"
-}
-
-src_install() {
-	exeinto /usr/libexec/libvda-gpu-tests
-	doexe "${OUT}/libvda_gpu_unittest"
-}
diff --git a/chromeos-base/libvda-gpu-tests/libvda-gpu-tests-0.0.1-r258.ebuild b/chromeos-base/libvda-gpu-tests/libvda-gpu-tests-0.0.1-r258.ebuild
new file mode 100644
index 0000000..a2a4d9a
--- /dev/null
+++ b/chromeos-base/libvda-gpu-tests/libvda-gpu-tests-0.0.1-r258.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "2805c43c1df753e3f1137c48d398523ba1e938e0" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/vm/libvda .gn"
+
+PLATFORM_SUBDIR="arc/vm/libvda"
+
+inherit cros-workon platform
+
+DESCRIPTION="libvda Chrome GPU tests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/libvda"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+	chromeos-base/libbrillo:=
+	media-libs/minigbm:=
+"
+
+DEPEND="
+	${RDEPEND}
+	chromeos-base/system_api:=
+"
+
+src_compile() {
+	platform "compile" "libvda_gpu_unittest"
+}
+
+src_install() {
+	exeinto /usr/libexec/libvda-gpu-tests
+	doexe "${OUT}/libvda_gpu_unittest"
+}
diff --git a/chromeos-base/libvda/libvda-0.0.1-r233.ebuild b/chromeos-base/libvda/libvda-0.0.1-r233.ebuild
deleted file mode 100644
index c1c8f9d..0000000
--- a/chromeos-base/libvda/libvda-0.0.1-r233.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "fbf4dfb51a4aa58831d6179663e19f3d1ef68b16" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/vm/libvda .gn"
-
-PLATFORM_SUBDIR="arc/vm/libvda"
-
-inherit cros-workon platform
-
-DESCRIPTION="libvda CrOS video decoding library"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/libvda"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="libvda_test"
-
-COMMON_DEPEND="
-	media-libs/minigbm:=
-"
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/system_api:=
-"
-
-src_install() {
-	dolib.so "${OUT}"/lib/libvda.so
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "${OUT}"/obj/arc/vm/libvda/libvda.pc
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/libvda_fuzzer
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/libvda_fake_unittest"
-
-	platform_fuzzer_test "${OUT}"/libvda_fuzzer
-}
diff --git a/chromeos-base/libvda/libvda-0.0.1-r265.ebuild b/chromeos-base/libvda/libvda-0.0.1-r265.ebuild
new file mode 100644
index 0000000..0673c93
--- /dev/null
+++ b/chromeos-base/libvda/libvda-0.0.1-r265.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "2805c43c1df753e3f1137c48d398523ba1e938e0" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/vm/libvda .gn"
+
+PLATFORM_SUBDIR="arc/vm/libvda"
+
+inherit cros-workon platform
+
+DESCRIPTION="libvda CrOS video decoding library"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/libvda"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="libvda_test"
+
+COMMON_DEPEND="
+	media-libs/minigbm:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/system_api:=
+"
+
+src_install() {
+	dolib.so "${OUT}"/lib/libvda.so
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "${OUT}"/obj/arc/vm/libvda/libvda.pc
+
+	local fuzzer_component_id="632502"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/libvda_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/libvda_fake_unittest"
+
+	platform_fuzzer_test "${OUT}"/libvda_fuzzer
+}
diff --git a/chromeos-base/libvda/libvda-9999.ebuild b/chromeos-base/libvda/libvda-9999.ebuild
index 6a5ec41..05f9001 100644
--- a/chromeos-base/libvda/libvda-9999.ebuild
+++ b/chromeos-base/libvda/libvda-9999.ebuild
@@ -36,7 +36,9 @@
 	insinto "/usr/$(get_libdir)/pkgconfig"
 	doins "${OUT}"/obj/arc/vm/libvda/libvda.pc
 
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/libvda_fuzzer
+	local fuzzer_component_id="632502"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/libvda_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/libweave/libweave-0.0.1-r1296.ebuild b/chromeos-base/libweave/libweave-0.0.1-r1296.ebuild
deleted file mode 100644
index 88d1d1c..0000000
--- a/chromeos-base/libweave/libweave-0.0.1-r1296.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("9af083c78a329699153cc604ee62cd02f3a87b2b" "029236ebe764b6071d4cd22662bef917be82b2af")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "2537616b612f732756d25c0aa7be9b7b202b1361")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME=("platform2" "weave/libweave")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "weave/libweave")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/libweave")
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
-
-PLATFORM_SUBDIR="libweave"
-
-inherit cros-workon libchrome platform
-
-DESCRIPTION="Weave device library"
-HOMEPAGE="http://dev.chromium.org/chromium-os/platform"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-# libweave-test, which depends on gmock, is built unconditionally, so the gmock
-# dependency is always needed.
-DEPEND="dev-cpp/gtest:="
-
-src_install() {
-	insinto "/usr/$(get_libdir)/pkgconfig"
-
-	# Install libraries.
-	local v="$(libchrome_ver)"
-	./preinstall.sh "${OUT}" "${v}"
-	dolib.so "${OUT}"/lib/libweave.so
-	doins "${OUT}"/lib/libweave{,-test}.pc
-	dolib.a "${OUT}"/libweave-test.a
-
-	# Install header files.
-	insinto /usr/include/weave/
-	doins -r include/weave/*
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/libweave_testrunner"
-}
diff --git a/chromeos-base/libweave/libweave-0.0.1-r1326.ebuild b/chromeos-base/libweave/libweave-0.0.1-r1326.ebuild
new file mode 100644
index 0000000..9bd0db8
--- /dev/null
+++ b/chromeos-base/libweave/libweave-0.0.1-r1326.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "91c1b410fa13d88cab5779c0e39a066cf58710db")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "8708ebec57c03103228d3edd46de2bf3dd687dbc")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME=("platform2" "weave/libweave")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "weave/libweave")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/libweave")
+CROS_WORKON_SUBTREE=("common-mk .gn" "")
+
+PLATFORM_SUBDIR="libweave"
+
+inherit cros-workon libchrome platform
+
+DESCRIPTION="Weave device library"
+HOMEPAGE="http://dev.chromium.org/chromium-os/platform"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+# libweave-test, which depends on gmock, is built unconditionally, so the gmock
+# dependency is always needed.
+DEPEND="dev-cpp/gtest:="
+
+src_install() {
+	insinto "/usr/$(get_libdir)/pkgconfig"
+
+	# Install libraries.
+	local v="$(libchrome_ver)"
+	./preinstall.sh "${OUT}" "${v}"
+	dolib.so "${OUT}"/lib/libweave.so
+	doins "${OUT}"/lib/libweave{,-test}.pc
+	dolib.a "${OUT}"/libweave-test.a
+
+	# Install header files.
+	insinto /usr/include/weave/
+	doins -r include/weave/*
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/libweave_testrunner"
+}
diff --git a/chromeos-base/lorgnette-wwcb-tests/OWNERS b/chromeos-base/lorgnette-wwcb-tests/OWNERS
new file mode 100644
index 0000000..13eef24
--- /dev/null
+++ b/chromeos-base/lorgnette-wwcb-tests/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/lorgnette/OWNERS
\ No newline at end of file
diff --git a/chromeos-base/lorgnette-wwcb-tests/lorgnette-wwcb-tests-0.0.1-r10.ebuild b/chromeos-base/lorgnette-wwcb-tests/lorgnette-wwcb-tests-0.0.1-r10.ebuild
new file mode 100644
index 0000000..10711d1
--- /dev/null
+++ b/chromeos-base/lorgnette-wwcb-tests/lorgnette-wwcb-tests-0.0.1-r10.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="d93217be20dbefa6ca72ca1ee80d5fc21d77bfdb"
+CROS_WORKON_TREE="eff0e9f056691d761a11d14164613eb3c1feefc4"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE="lorgnette/hwtests"
+
+CROS_GO_WORKSPACE="${S}/lorgnette/hwtests"
+
+CROS_GO_TEST=(
+	"chromiumos/scanning/hwtests"
+	"chromiumos/scanning/utils"
+)
+
+CROS_GO_BINARIES=(
+	"chromiumos/scanning/scripts/test_scanner_capabilities"
+)
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Works with Chromebook test suite for scanners"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/lorgnette/hwtests"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+SLOT="0/0"
+
+DEPEND="
+	dev-go/cmp
+"
+RDEPEND="
+	chromeos-base/lorgnette_cli
+"
diff --git a/chromeos-base/lorgnette-wwcb-tests/lorgnette-wwcb-tests-9999.ebuild b/chromeos-base/lorgnette-wwcb-tests/lorgnette-wwcb-tests-9999.ebuild
new file mode 100644
index 0000000..c2c2d21
--- /dev/null
+++ b/chromeos-base/lorgnette-wwcb-tests/lorgnette-wwcb-tests-9999.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2.
+
+EAPI=7
+
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE="lorgnette/hwtests"
+
+CROS_GO_WORKSPACE="${S}/lorgnette/hwtests"
+
+CROS_GO_TEST=(
+	"chromiumos/scanning/hwtests"
+	"chromiumos/scanning/utils"
+)
+
+CROS_GO_BINARIES=(
+	"chromiumos/scanning/scripts/test_scanner_capabilities"
+)
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Works with Chromebook test suite for scanners"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/lorgnette/hwtests"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+SLOT="0/0"
+
+DEPEND="
+	dev-go/cmp
+"
+RDEPEND="
+	chromeos-base/lorgnette_cli
+"
diff --git a/chromeos-base/lorgnette/lorgnette-0.0.1-r3066.ebuild b/chromeos-base/lorgnette/lorgnette-0.0.1-r3066.ebuild
deleted file mode 100644
index b215d13..0000000
--- a/chromeos-base/lorgnette/lorgnette-0.0.1-r3066.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="58ceaf1e833d9afc1307bf9349c9a1fda7326167"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "7ab95adad72dd346e5249e117b29330382e9f716" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk lorgnette metrics .gn"
-
-PLATFORM_SUBDIR="lorgnette"
-
-inherit cros-workon platform user udev
-
-DESCRIPTION="Document Scanning service for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/lorgnette/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-COMMON_DEPEND="
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	media-libs/libpng:=
-	media-gfx/sane-airscan:=
-	media-gfx/sane-backends:=
-	virtual/jpeg:0=
-	virtual/libusb:1
-"
-
-RDEPEND="${COMMON_DEPEND}
-	chromeos-base/minijail
-	test? (
-		chromeos-base/sane-backends-test
-		media-gfx/perceptualdiff:=
-	)
-"
-
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/permission_broker-client:=
-	chromeos-base/system_api:=
-"
-
-pkg_preinst() {
-	enewgroup ippusb
-	enewgroup usbprinter
-}
-
-src_install() {
-	platform_src_install
-
-	dobin "${OUT}"/lorgnette
-	insinto /etc/dbus-1/system.d
-	doins dbus_permissions/org.chromium.lorgnette.conf
-	insinto /usr/share/dbus-1/system-services
-	doins dbus_service/org.chromium.lorgnette.service
-	insinto /etc/init
-	doins init/lorgnette.conf
-	udev_dorules udev/*.rules
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/lorgnette_unittest"
-}
diff --git a/chromeos-base/lorgnette/lorgnette-0.0.1-r3133.ebuild b/chromeos-base/lorgnette/lorgnette-0.0.1-r3133.ebuild
new file mode 100644
index 0000000..e1d7061a
--- /dev/null
+++ b/chromeos-base/lorgnette/lorgnette-0.0.1-r3133.ebuild
@@ -0,0 +1,66 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "05c6b23a5f06d70325b4321e4b297284c4ea739a" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk lorgnette metrics .gn"
+
+PLATFORM_SUBDIR="lorgnette"
+
+inherit cros-workon platform user udev
+
+DESCRIPTION="Document Scanning service for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/lorgnette/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test"
+
+COMMON_DEPEND="
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	media-libs/libpng:=
+	media-gfx/sane-airscan:=
+	media-gfx/sane-backends:=
+	virtual/jpeg:0=
+	virtual/libusb:1
+"
+
+RDEPEND="${COMMON_DEPEND}
+	chromeos-base/minijail
+	test? (
+		chromeos-base/sane-backends-test
+		media-gfx/perceptualdiff:=
+	)
+"
+
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/permission_broker-client:=
+	chromeos-base/system_api:=
+"
+
+pkg_preinst() {
+	enewgroup ippusb
+	enewgroup usbprinter
+}
+
+src_install() {
+	platform_src_install
+
+	dobin "${OUT}"/lorgnette
+	insinto /etc/dbus-1/system.d
+	doins dbus_permissions/org.chromium.lorgnette.conf
+	insinto /usr/share/dbus-1/system-services
+	doins dbus_service/org.chromium.lorgnette.service
+	insinto /etc/init
+	doins init/lorgnette.conf
+	udev_dorules udev/*.rules
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/lorgnette_unittest"
+}
diff --git a/chromeos-base/lorgnette_cli/lorgnette_cli-0.0.1-r144.ebuild b/chromeos-base/lorgnette_cli/lorgnette_cli-0.0.1-r144.ebuild
deleted file mode 100644
index 10a30da..0000000
--- a/chromeos-base/lorgnette_cli/lorgnette_cli-0.0.1-r144.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="58ceaf1e833d9afc1307bf9349c9a1fda7326167"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "7ab95adad72dd346e5249e117b29330382e9f716" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk lorgnette .gn"
-
-PLATFORM_SUBDIR="lorgnette"
-
-inherit cros-workon platform
-
-DESCRIPTION="Command line interface to scanning service for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/lorgnette"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-SLOT="0/0"
-
-RDEPEND="
-	chromeos-base/lorgnette
-"
-
-src_install() {
-	dobin "${OUT}"/lorgnette_cli
-}
diff --git a/chromeos-base/lorgnette_cli/lorgnette_cli-0.0.1-r196.ebuild b/chromeos-base/lorgnette_cli/lorgnette_cli-0.0.1-r196.ebuild
new file mode 100644
index 0000000..f625dd9
--- /dev/null
+++ b/chromeos-base/lorgnette_cli/lorgnette_cli-0.0.1-r196.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "05c6b23a5f06d70325b4321e4b297284c4ea739a" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk lorgnette .gn"
+
+PLATFORM_SUBDIR="lorgnette"
+
+inherit cros-workon platform
+
+DESCRIPTION="Command line interface to scanning service for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/lorgnette"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+SLOT="0/0"
+
+RDEPEND="
+	chromeos-base/lorgnette
+"
+
+src_install() {
+	dobin "${OUT}"/lorgnette_cli
+}
diff --git a/chromeos-base/manatee-client/manatee-client-0.0.1-r129.ebuild b/chromeos-base/manatee-client/manatee-client-0.0.1-r129.ebuild
new file mode 100644
index 0000000..6bcdd90
--- /dev/null
+++ b/chromeos-base/manatee-client/manatee-client-0.0.1-r129.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="8ce35d16ad07dfeebc352815a82b5462f41090f7"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "4a9ac56a4abc7348fb8ebfa0d152a1c78ee24749" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk sirenia .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="sirenia/manatee-client"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS ManaTEE D-Bus client library"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+BDEPEND="
+	chromeos-base/chromeos-dbus-bindings
+"
+
+src_install() {
+	# Install D-Bus client library.
+	platform_install_dbus_client_lib "manatee"
+}
diff --git a/chromeos-base/manatee-client/manatee-client-0.0.1-r86.ebuild b/chromeos-base/manatee-client/manatee-client-0.0.1-r86.ebuild
deleted file mode 100644
index 2dd669e..0000000
--- a/chromeos-base/manatee-client/manatee-client-0.0.1-r86.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "727b5a2cdf7d07c050cc575ee636711da70333a2" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk sirenia .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="sirenia/manatee-client"
-
-inherit cros-workon platform
-
-DESCRIPTION="Chrome OS ManaTEE D-Bus client library"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-BDEPEND="
-	chromeos-base/chromeos-dbus-bindings
-"
-
-src_install() {
-	# Install D-Bus client library.
-	platform_install_dbus_client_lib "manatee"
-}
diff --git a/chromeos-base/manatee-runtime/manatee-runtime-0.1.0-r12.ebuild b/chromeos-base/manatee-runtime/manatee-runtime-0.1.0-r12.ebuild
new file mode 100644
index 0000000..903e47b
--- /dev/null
+++ b/chromeos-base/manatee-runtime/manatee-runtime-0.1.0-r12.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="6cf85796b75e95c5a0caf2d07b803663762779f2"
+CROS_WORKON_TREE="0645a85e4f29f3a3cd7483248a2ede1a4cb0a3cd"
+CROS_RUST_SUBDIR="sirenia/manatee-runtime"
+
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Library for TEE apps to interact with sirenia."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/manatee-runtime/"
+
+LICENSE="BSD-Google"
+SLOT="0/${PVR}"
+KEYWORDS="*"
+IUSE="cros_host manatee"
+
+DEPEND="
+	chromeos-base/libsirenia:=
+	dev-rust/libchromeos:=
+	>=dev-rust/serde-1.0.114 <dev-rust/serde-2:=
+	dev-rust/sync:=
+	dev-rust/sys_util:=
+"
+RDEPEND="${DEPEND}"
+
+src_install() {
+	# Install the crate.
+	cros-rust_src_install
+
+	# Install demo_app.
+	local build_dir="$(cros-rust_get_build_dir)"
+
+	# Needed for initramfs, but not for the root-fs.
+	if use cros_host ; then
+		# /build is not allowed when installing to the host.
+		exeinto "/bin"
+	else
+		exeinto "/build/initramfs"
+	fi
+
+	if use manatee ;  then
+		doexe "${build_dir}/demo_app"
+	else
+		dobin "${build_dir}/demo_app"
+	fi
+}
diff --git a/chromeos-base/manatee-runtime/manatee-runtime-0.1.0-r7.ebuild b/chromeos-base/manatee-runtime/manatee-runtime-0.1.0-r7.ebuild
deleted file mode 100644
index 8b5cb61..0000000
--- a/chromeos-base/manatee-runtime/manatee-runtime-0.1.0-r7.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="b15630d225145b9dc8603b8f500e68954c25fd3f"
-CROS_WORKON_TREE="d82e84546e6140f16431633e392a549997ff27f9"
-CROS_RUST_SUBDIR="sirenia/manatee-runtime"
-
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Library for TEE apps to interact with sirenia."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/manatee-runtime/"
-
-LICENSE="BSD-Google"
-SLOT="0/${PVR}"
-KEYWORDS="*"
-IUSE="cros_host manatee"
-
-RDEPEND=""
-
-DEPEND="${RDEPEND}
-	chromeos-base/libsirenia:=
-	dev-rust/libchromeos:=
-	>=dev-rust/serde-1.0.114:= <dev-rust/serde-2
-	dev-rust/sync:=
-	dev-rust/sys_util:=
-"
-
-src_install() {
-	local build_dir="$(cros-rust_get_build_dir)"
-
-	# Needed for initramfs, but not for the root-fs.
-	if use cros_host ; then
-		# /build is not allowed when installing to the host.
-		exeinto "/bin"
-	else
-		exeinto "/build/initramfs"
-	fi
-
-	if use manatee ;  then
-		doexe "${build_dir}/demo_app"
-	else
-		dobin "${build_dir}/demo_app"
-	fi
-}
diff --git a/chromeos-base/manatee-runtime/manatee-runtime-9999.ebuild b/chromeos-base/manatee-runtime/manatee-runtime-9999.ebuild
index 16ed373..4a97290 100644
--- a/chromeos-base/manatee-runtime/manatee-runtime-9999.ebuild
+++ b/chromeos-base/manatee-runtime/manatee-runtime-9999.ebuild
@@ -5,7 +5,7 @@
 
 CROS_RUST_SUBDIR="sirenia/manatee-runtime"
 
-CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_LOCALNAME="platform2"
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
 
@@ -19,17 +19,20 @@
 KEYWORDS="~*"
 IUSE="cros_host manatee"
 
-RDEPEND=""
-
-DEPEND="${RDEPEND}
+DEPEND="
 	chromeos-base/libsirenia:=
 	dev-rust/libchromeos:=
-	>=dev-rust/serde-1.0.114:= <dev-rust/serde-2
+	>=dev-rust/serde-1.0.114 <dev-rust/serde-2:=
 	dev-rust/sync:=
 	dev-rust/sys_util:=
 "
+RDEPEND="${DEPEND}"
 
 src_install() {
+	# Install the crate.
+	cros-rust_src_install
+
+	# Install demo_app.
 	local build_dir="$(cros-rust_get_build_dir)"
 
 	# Needed for initramfs, but not for the root-fs.
diff --git a/chromeos-base/mcastd/mcastd-0.0.1-r233.ebuild b/chromeos-base/mcastd/mcastd-0.0.1-r233.ebuild
deleted file mode 100644
index ae73ee0..0000000
--- a/chromeos-base/mcastd/mcastd-0.0.1-r233.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="c8356149dd3addec8ddef84545cf8a9dc8530f01"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "ae86a7d3ab814f4089a041bdf224a46af7c4b4bf" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk patchpanel .gn"
-
-PLATFORM_SUBDIR="patchpanel/mcastd"
-
-inherit cros-workon libchrome platform
-
-DESCRIPTION="Multicast forwarder daemon"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/network/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-COMMON_DEPEND="
-	dev-libs/protobuf:=
-	chromeos-base/libbrillo:=
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	!chromeos-base/arc-networkd-mcastd
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-"
-
-src_install() {
-	dobin "${OUT}"/mcastd
-}
diff --git a/chromeos-base/mcastd/mcastd-0.0.1-r284.ebuild b/chromeos-base/mcastd/mcastd-0.0.1-r284.ebuild
new file mode 100644
index 0000000..6236c8b
--- /dev/null
+++ b/chromeos-base/mcastd/mcastd-0.0.1-r284.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="ff2cbb8c87e44b3e79beb4a045db08af89ce091f"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "199dfc58f8a75896a8500c6a738774ec7478f797" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk patchpanel .gn"
+
+PLATFORM_SUBDIR="patchpanel/mcastd"
+
+inherit cros-workon libchrome platform
+
+DESCRIPTION="Multicast forwarder daemon"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/network/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+COMMON_DEPEND="
+	dev-libs/protobuf:=
+	chromeos-base/libbrillo:=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	!chromeos-base/arc-networkd-mcastd
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+"
+
+src_install() {
+	dobin "${OUT}"/mcastd
+}
diff --git a/chromeos-base/memd/memd-0.1.0-r128.ebuild b/chromeos-base/memd/memd-0.1.0-r128.ebuild
new file mode 100644
index 0000000..b0f8500
--- /dev/null
+++ b/chromeos-base/memd/memd-0.1.0-r128.ebuild
@@ -0,0 +1,51 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("bfc498b82e9a26766af7a533220e0e9057ac3af4" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_RUST_SUBDIR="metrics/memd"
+
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} common-mk"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_OUTOFTREE_BUILD=1
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Fine-grain memory metrics collector"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/metrics/memd/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="+seccomp"
+
+DEPEND="chromeos-base/system_api:=
+	sys-apps/dbus:=
+	>=dev-rust/chrono-0.4.2:= <dev-rust/chrono-0.5.0
+	>=dev-rust/dbus-0.6.1:= <dev-rust/dbus-0.7.0
+	=dev-rust/env_logger-0.6*:=
+	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0
+	>=dev-rust/log-0.4.5:= <dev-rust/log-0.5.0
+	>=dev-rust/protobuf-2.3:= <dev-rust/protobuf-3.0
+	>=dev-rust/protoc-rust-2.3:= <dev-rust/protoc-rust-3
+	=dev-rust/syslog-4*:=
+	=dev-rust/tempfile-3*:=
+	>=dev-rust/time-0.1.40:= <dev-rust/time-0.2.0
+	"
+RDEPEND="sys-apps/dbus"
+
+src_install() {
+	# cargo doesn't know how to install cross-compiled binaries.  It will
+	# always install native binaries for the host system.  Install manually
+	# instead.
+	local build_dir="$(cros-rust_get_build_dir)"
+	dobin "${build_dir}/memd"
+	insinto /etc/init
+	doins init/memd.conf
+	insinto /usr/share/policy
+	use seccomp && \
+		newins "init/memd-seccomp-${ARCH}.policy" memd-seccomp.policy
+}
diff --git a/chromeos-base/memd/memd-0.1.0-r96.ebuild b/chromeos-base/memd/memd-0.1.0-r96.ebuild
deleted file mode 100644
index 03a52a8..0000000
--- a/chromeos-base/memd/memd-0.1.0-r96.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="576984316ea188ad1a48570288ed56b912804178"
-CROS_WORKON_TREE=("75f65f147da7feb0796cb97c434e13bc61d8ee8f" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_RUST_SUBDIR="metrics/memd"
-
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} common-mk"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_OUTOFTREE_BUILD=1
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Fine-grain memory metrics collector"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/metrics/memd/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="+seccomp"
-
-DEPEND="chromeos-base/system_api:=
-	sys-apps/dbus:=
-	>=dev-rust/chrono-0.4.2:= <dev-rust/chrono-0.5.0
-	>=dev-rust/dbus-0.6.1:= <dev-rust/dbus-0.7.0
-	=dev-rust/env_logger-0.6*:=
-	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0
-	>=dev-rust/log-0.4.5:= <dev-rust/log-0.5.0
-	>=dev-rust/protobuf-2.3:= <dev-rust/protobuf-3.0
-	>=dev-rust/protoc-rust-2.3:= <dev-rust/protoc-rust-3
-	=dev-rust/syslog-4*:=
-	=dev-rust/tempfile-3*:=
-	>=dev-rust/time-0.1.40:= <dev-rust/time-0.2.0
-	"
-RDEPEND="sys-apps/dbus"
-
-src_install() {
-	# cargo doesn't know how to install cross-compiled binaries.  It will
-	# always install native binaries for the host system.  Install manually
-	# instead.
-	local build_dir="$(cros-rust_get_build_dir)"
-	dobin "${build_dir}/memd"
-	insinto /etc/init
-	doins init/memd.conf
-	insinto /usr/share/policy
-	use seccomp && \
-		newins "init/memd-seccomp-${ARCH}.policy" memd-seccomp.policy
-}
diff --git a/chromeos-base/mems_setup/mems_setup-0.0.1-r245.ebuild b/chromeos-base/mems_setup/mems_setup-0.0.1-r245.ebuild
deleted file mode 100644
index 08ee5d4..0000000
--- a/chromeos-base/mems_setup/mems_setup-0.0.1-r245.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="08aee9d7a91dddd5977b31ca2a2833ba54f8d89a"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "da73aae6d89c8e69c3740af612610792ce42b1a8" "956b1c75a21148c69a084aa4528169235fbae153" "359903647899af99fb1bc9ba9d666b0e78fcb3a8" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Remove libmems from this list.
-CROS_WORKON_SUBTREE="common-mk iioservice mems_setup libmems .gn"
-
-PLATFORM_SUBDIR="mems_setup"
-
-inherit cros-workon platform udev
-
-DESCRIPTION="MEMS Setup for Chromium OS."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/mems_setup"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="iioservice"
-
-COMMON_DEPEND="
-	chromeos-base/libmems:=
-	net-libs/libiio:="
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/system_api:="
-
-src_install() {
-	udev_dorules 99-mems_setup.rules
-	dosbin "${OUT}"/mems_setup
-}
-
-platform_pkg_test() {
-	local tests=(
-		mems_setup_testrunner
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/mems_setup/mems_setup-0.0.1-r336.ebuild b/chromeos-base/mems_setup/mems_setup-0.0.1-r336.ebuild
new file mode 100644
index 0000000..14240a8
--- /dev/null
+++ b/chromeos-base/mems_setup/mems_setup-0.0.1-r336.ebuild
@@ -0,0 +1,51 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "14acd311021ff7b4a6e5a812cf6ef18bab1ede72" "8f103f3a0698253eaf39f7b4af6b3bbd05de09bf" "ba93b35f6b12686bf293ce79255da511c89278e1" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Remove libmems from this list.
+CROS_WORKON_SUBTREE="common-mk chromeos-config iioservice mems_setup libmems .gn"
+
+PLATFORM_SUBDIR="mems_setup"
+
+inherit cros-workon cros-unibuild platform udev
+
+DESCRIPTION="MEMS Setup for Chromium OS."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/mems_setup"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="iioservice"
+
+COMMON_DEPEND="
+	chromeos-base/libmems:=
+	net-libs/libiio:=
+	dev-libs/re2:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/system_api:="
+
+src_install() {
+	udev_dorules 99-mems_setup.rules
+	dosbin "${OUT}"/mems_setup
+}
+
+platform_pkg_test() {
+	local tests=(
+		mems_setup_testrunner
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/mems_setup/mems_setup-9999.ebuild b/chromeos-base/mems_setup/mems_setup-9999.ebuild
index 080f55d..ab5c077 100644
--- a/chromeos-base/mems_setup/mems_setup-9999.ebuild
+++ b/chromeos-base/mems_setup/mems_setup-9999.ebuild
@@ -8,11 +8,11 @@
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_OUTOFTREE_BUILD=1
 # TODO(crbug.com/809389): Remove libmems from this list.
-CROS_WORKON_SUBTREE="common-mk iioservice mems_setup libmems .gn"
+CROS_WORKON_SUBTREE="common-mk chromeos-config iioservice mems_setup libmems .gn"
 
 PLATFORM_SUBDIR="mems_setup"
 
-inherit cros-workon platform udev
+inherit cros-workon cros-unibuild platform udev
 
 DESCRIPTION="MEMS Setup for Chromium OS."
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/mems_setup"
@@ -23,7 +23,9 @@
 
 COMMON_DEPEND="
 	chromeos-base/libmems:=
-	net-libs/libiio:="
+	net-libs/libiio:=
+	dev-libs/re2:=
+"
 
 RDEPEND="${COMMON_DEPEND}"
 
diff --git a/chromeos-base/metrics/metrics-0.0.1-r3275.ebuild b/chromeos-base/metrics/metrics-0.0.1-r3275.ebuild
deleted file mode 100644
index 156a046..0000000
--- a/chromeos-base/metrics/metrics-0.0.1-r3275.ebuild
+++ /dev/null
@@ -1,112 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="0553127ef2b660a5c71f12a9417ed4ad35f07120"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk metrics .gn"
-
-PLATFORM_SUBDIR="metrics"
-
-inherit cros-constants cros-workon libchrome-version platform tmpfiles systemd user
-
-DESCRIPTION="Metrics aggregation service for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/metrics/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="fuzzer metrics_uploader +passive_metrics systemd"
-
-COMMON_DEPEND="
-	dev-libs/protobuf:=
-	dev-libs/re2:=
-	sys-apps/rootdev:=
-	"
-
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/session_manager-client:=
-	chromeos-base/system_api:=[fuzzer?]
-	chromeos-base/vboot_reference:=
-	"
-
-src_install() {
-	dobin "${OUT}"/metrics_client
-	dobin "${OUT}"/chromeos-pgmem
-
-	if use passive_metrics; then
-		dobin "${OUT}"/metrics_daemon
-		if use systemd; then
-			systemd_dounit init/metrics-daemon.service
-			systemd_enable_service multi-user.target metrics-daemon.service
-			systemd_dotmpfilesd init/metrics.conf
-		else
-			dotmpfiles tmpfiles.d/metrics_daemon_dirs.conf
-			insinto /etc/init
-			doins init/metrics_library.conf init/metrics_daemon.conf
-		fi
-
-		if use metrics_uploader; then
-			if use systemd; then
-				sed -i '/ExecStart=/s:metrics_daemon:metrics_daemon -uploader:' \
-					"${D}"/usr/lib/systemd/system/metrics-daemon.service || die
-			else
-				sed -i '/DAEMON_FLAGS=/s:=.*:="-uploader":' \
-					"${D}"/etc/init/metrics_daemon.conf || die
-			fi
-		fi
-	fi
-
-	insinto /usr/$(get_libdir)/pkgconfig
-	local v="$(libchrome_ver)"
-	./platform2_preinstall.sh "${OUT}" "${v}"
-	dolib.so "${OUT}/lib/libmetrics.so"
-	doins "${OUT}/lib/libmetrics.pc"
-	dolib.so "${OUT}/lib/libstructuredmetrics.so"
-
-	dotmpfiles tmpfiles.d/structured_metrics.conf
-
-	insinto /usr/include/metrics
-	doins c_metrics_library.h \
-		cumulative_metrics.h \
-		metrics_library{,_mock}.h \
-		persistent_integer.h \
-		structured/c_structured_metrics.h \
-		timer{,_mock}.h \
-		"${OUT}"/gen/include/metrics/structured/structured_events.h
-
-	# Install the protobuf so that autotests can have access to it.
-	insinto /usr/include/metrics/proto
-	doins uploader/proto/*.proto
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/metrics_library_consent_id_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS \
-		"${OUT}"/metrics_serialization_utils_fuzzer
-}
-
-platform_pkg_test() {
-	local tests=(
-		cumulative_metrics_test
-		metrics_library_test
-		$(usex passive_metrics 'metrics_daemon_test' '')
-		persistent_integer_test
-		process_meter_test
-		timer_test
-		upload_service_test
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
-
-pkg_preinst() {
-	enewuser metrics
-	enewgroup metrics
-}
diff --git a/chromeos-base/metrics/metrics-0.0.1-r3316.ebuild b/chromeos-base/metrics/metrics-0.0.1-r3316.ebuild
new file mode 100644
index 0000000..68a0221
--- /dev/null
+++ b/chromeos-base/metrics/metrics-0.0.1-r3316.ebuild
@@ -0,0 +1,115 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk metrics .gn"
+
+PLATFORM_SUBDIR="metrics"
+
+inherit cros-constants cros-workon libchrome-version platform tmpfiles systemd user
+
+DESCRIPTION="Metrics aggregation service for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/metrics/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="fuzzer metrics_uploader +passive_metrics systemd"
+
+COMMON_DEPEND="
+	dev-libs/protobuf:=
+	dev-libs/re2:=
+	sys-apps/rootdev:=
+	"
+
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/session_manager-client:=
+	chromeos-base/system_api:=[fuzzer?]
+	chromeos-base/vboot_reference:=
+	"
+
+src_install() {
+	dobin "${OUT}"/metrics_client
+	dobin "${OUT}"/chromeos-pgmem
+
+	if use passive_metrics; then
+		dobin "${OUT}"/metrics_daemon
+		if use systemd; then
+			systemd_dounit init/metrics-daemon.service
+			systemd_enable_service multi-user.target metrics-daemon.service
+			systemd_dotmpfilesd init/metrics.conf
+		else
+			dotmpfiles tmpfiles.d/metrics_daemon_dirs.conf
+			insinto /etc/init
+			doins init/metrics_library.conf init/metrics_daemon.conf
+		fi
+
+		if use metrics_uploader; then
+			if use systemd; then
+				sed -i '/ExecStart=/s:metrics_daemon:metrics_daemon -uploader:' \
+					"${D}"/usr/lib/systemd/system/metrics-daemon.service || die
+			else
+				sed -i '/DAEMON_FLAGS=/s:=.*:="-uploader":' \
+					"${D}"/etc/init/metrics_daemon.conf || die
+			fi
+		fi
+	fi
+
+	insinto /usr/$(get_libdir)/pkgconfig
+	local v="$(libchrome_ver)"
+	./platform2_preinstall.sh "${OUT}" "${v}"
+	dolib.so "${OUT}/lib/libmetrics.so"
+	doins "${OUT}/lib/libmetrics.pc"
+	dolib.so "${OUT}/lib/libstructuredmetrics.so"
+
+	dotmpfiles tmpfiles.d/structured_metrics.conf
+
+	insinto /usr/include/metrics
+	doins c_metrics_library.h \
+		cumulative_metrics.h \
+		metrics_library{,_mock}.h \
+		persistent_integer.h \
+		structured/c_structured_metrics.h \
+		timer{,_mock}.h \
+		"${OUT}"/gen/include/metrics/structured/structured_events.h
+
+	# Install the protobuf so that autotests can have access to it.
+	insinto /usr/include/metrics/proto
+	doins uploader/proto/*.proto
+
+	local fuzzer_component_id="1087262"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/metrics_library_consent_id_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS \
+		"${OUT}"/metrics_serialization_utils_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	local tests=(
+		cumulative_metrics_test
+		metrics_library_test
+		$(usex passive_metrics 'metrics_daemon_test' '')
+		persistent_integer_test
+		process_meter_test
+		timer_test
+		upload_service_test
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
+
+pkg_preinst() {
+	enewuser metrics
+	enewgroup metrics
+}
diff --git a/chromeos-base/metrics/metrics-9999.ebuild b/chromeos-base/metrics/metrics-9999.ebuild
index 285c832..df54a44 100644
--- a/chromeos-base/metrics/metrics-9999.ebuild
+++ b/chromeos-base/metrics/metrics-9999.ebuild
@@ -82,9 +82,12 @@
 	insinto /usr/include/metrics/proto
 	doins uploader/proto/*.proto
 
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/metrics_library_consent_id_fuzzer
+	local fuzzer_component_id="1087262"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/metrics_library_consent_id_fuzzer \
+		--comp "${fuzzer_component_id}"
 	platform_fuzzer_install "${S}"/OWNERS \
-		"${OUT}"/metrics_serialization_utils_fuzzer
+		"${OUT}"/metrics_serialization_utils_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/midis/midis-0.0.1-r1163.ebuild b/chromeos-base/midis/midis-0.0.1-r1163.ebuild
deleted file mode 100644
index 4bc6310..0000000
--- a/chromeos-base/midis/midis-0.0.1-r1163.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "4201568ef8a1ffe39683b4c0dee8aeefc7eacfc8" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="common-mk midis .gn"
-
-PLATFORM_SUBDIR="midis"
-
-inherit cros-workon git-2 platform user
-
-DESCRIPTION="MIDI Server for Chromium OS"
-HOMEPAGE=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="+seccomp asan fuzzer"
-
-COMMON_DEPEND="
-	media-libs/alsa-lib:=
-	chromeos-base/libbrillo:=[asan?,fuzzer?]
-"
-
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}"
-
-src_unpack() {
-	platform_src_unpack
-
-	EGIT_REPO_URI="${CROS_GIT_HOST_URL}/chromium/src/media/midi.git" \
-	# Since there are a few headers that are included by other headers
-	# in this directory, and these headers are referenced assuming the
-	# "media" directory is stored in the base directory, we install
-	# the Git checkout in platform2.
-	EGIT_SOURCEDIR="${S}/../media/midi" \
-	EGIT_COMMIT="06a8cf268baf9530267c9581801b8f8749ec9312" \
-	git-2_src_unpack
-}
-
-src_install() {
-	dobin "${OUT}"/midis
-
-	insinto /etc/init
-	doins init/*.conf
-
-	# Install midis DBUS configuration file
-	insinto /etc/dbus-1/system.d
-	doins dbus_permissions/org.chromium.Midis.conf
-
-	# Install D-Bus service activation configuration.
-	insinto /usr/share/dbus-1/system-services
-	doins dbus_permissions/org.chromium.Midis.service
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	use seccomp && newins "seccomp/midis-seccomp-${ARCH}.policy" midis-seccomp.policy
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/midis_seq_handler_fuzzer
-}
-
-pkg_preinst() {
-	enewuser midis
-	enewgroup midis
-}
-
-platform_pkg_test() {
-	local tests=(
-		"midis_testrunner"
-	)
-
-	local test
-	for test in "${tests[@]}"; do
-		platform_test "run" "${OUT}"/${test}
-	done
-}
diff --git a/chromeos-base/midis/midis-0.0.1-r1195.ebuild b/chromeos-base/midis/midis-0.0.1-r1195.ebuild
new file mode 100644
index 0000000..186a7bd
--- /dev/null
+++ b/chromeos-base/midis/midis-0.0.1-r1195.ebuild
@@ -0,0 +1,81 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7d961954cc97d91b18ed02eb9cf81712bed25e5" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="common-mk midis .gn"
+
+PLATFORM_SUBDIR="midis"
+
+inherit cros-workon git-2 platform user
+
+DESCRIPTION="MIDI Server for Chromium OS"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="+seccomp asan fuzzer"
+
+COMMON_DEPEND="
+	media-libs/alsa-lib:=
+	chromeos-base/libbrillo:=[asan?,fuzzer?]
+"
+
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}"
+
+src_unpack() {
+	platform_src_unpack
+
+	EGIT_REPO_URI="${CROS_GIT_HOST_URL}/chromium/src/media/midi.git" \
+	# Since there are a few headers that are included by other headers
+	# in this directory, and these headers are referenced assuming the
+	# "media" directory is stored in the base directory, we install
+	# the Git checkout in platform2.
+	EGIT_SOURCEDIR="${S}/../media/midi" \
+	EGIT_COMMIT="06a8cf268baf9530267c9581801b8f8749ec9312" \
+	git-2_src_unpack
+}
+
+src_install() {
+	dobin "${OUT}"/midis
+
+	insinto /etc/init
+	doins init/*.conf
+
+	# Install midis DBUS configuration file
+	insinto /etc/dbus-1/system.d
+	doins dbus_permissions/org.chromium.Midis.conf
+
+	# Install D-Bus service activation configuration.
+	insinto /usr/share/dbus-1/system-services
+	doins dbus_permissions/org.chromium.Midis.service
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	use seccomp && newins "seccomp/midis-seccomp-${ARCH}.policy" midis-seccomp.policy
+
+	# fuzzer_component_id is unknown/unlisted
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/midis_seq_handler_fuzzer
+}
+
+pkg_preinst() {
+	enewuser midis
+	enewgroup midis
+}
+
+platform_pkg_test() {
+	local tests=(
+		"midis_testrunner"
+	)
+
+	local test
+	for test in "${tests[@]}"; do
+		platform_test "run" "${OUT}"/${test}
+	done
+}
diff --git a/chromeos-base/midis/midis-9999.ebuild b/chromeos-base/midis/midis-9999.ebuild
index 6ed8b80..1d94838 100644
--- a/chromeos-base/midis/midis-9999.ebuild
+++ b/chromeos-base/midis/midis-9999.ebuild
@@ -58,6 +58,7 @@
 	insinto /usr/share/policy
 	use seccomp && newins "seccomp/midis-seccomp-${ARCH}.policy" midis-seccomp.policy
 
+	# fuzzer_component_id is unknown/unlisted
 	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/midis_seq_handler_fuzzer
 }
 
diff --git a/chromeos-base/minijail/minijail-14-r17.ebuild b/chromeos-base/minijail/minijail-14-r17.ebuild
deleted file mode 100644
index cf49cc7..0000000
--- a/chromeos-base/minijail/minijail-14-r17.ebuild
+++ /dev/null
@@ -1,119 +0,0 @@
-# Copyright (c) 2009 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit cros-constants
-
-CROS_WORKON_COMMIT="3a6e925548e1ddb500c0dffdd2d2c591519f02e2"
-CROS_WORKON_TREE="8f0401ffc128cc569f1cf571161e18d32574949f"
-CROS_WORKON_MANUAL_UPREV=1
-CROS_WORKON_LOCALNAME="aosp/external/minijail"
-CROS_WORKON_PROJECT="platform/external/minijail"
-CROS_WORKON_EGIT_BRANCH="master"
-CROS_WORKON_REPO="${CROS_GIT_AOSP_URL}"
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-# TODO(crbug.com/689060): Re-enable on ARM.
-CROS_COMMON_MK_NATIVE_TEST="yes"
-
-DISTUTILS_OPTIONAL=1
-DISTUTILS_SINGLE_IMPL=1
-
-inherit cros-debug cros-sanitizers cros-workon cros-common.mk toolchain-funcs multilib distutils-r1
-
-DESCRIPTION="helper binary and library for sandboxing & restricting privs of services"
-HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="asan cros-debug +seccomp test"
-
-COMMON_DEPEND="sys-libs/libcap:=
-	!<chromeos-base/chromeos-minijail-1"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}
-	cros_host? (
-		${PYTHON_DEPS}
-		$(python_gen_cond_dep 'dev-python/setuptools[${PYTHON_USEDEP}]')
-	)
-	test? (
-		dev-cpp/gtest:=
-	)"
-
-src_configure() {
-	sanitizers-setup-env
-	cros-common.mk_src_configure
-	export LIBDIR="/$(get_libdir)"
-	export USE_seccomp=$(usex seccomp)
-	export ALLOW_DEBUG_LOGGING=$(usex cros-debug)
-	export USE_SYSTEM_GTEST=yes
-	export DEFAULT_PIVOT_ROOT=/mnt/empty
-}
-
-# Use qemu-user to run the platform-specific dump_constants binary in order to
-# generate constants.json.
-generate_constants_json() {
-	local cmd
-	case "${ARCH}" in
-	x86)   cmd=( "${OUT}"/dump_constants ) ;;
-	amd64) cmd=( "${WORKDIR}"/sdk/dump_constants ) ;;
-	arm)   cmd=( qemu-arm "${OUT}"/dump_constants ) ;;
-	arm64) cmd=( qemu-aarch64 "${OUT}"/dump_constants ) ;;
-	*) die "Unsupported architecture in generate_constants_json(): ${ARCH}."
-	esac
-	echo "+" "${cmd[@]}" ">${OUT}/constants.json"
-	"${cmd[@]}" >"${OUT}"/constants.json || die
-}
-
-src_compile() {
-	# Avoid confusing people with our docs.
-	sed -i "s:/var/empty:${DEFAULT_PIVOT_ROOT}:g" minijail0.[15] || die
-
-	local minijail_targets=( all )
-
-	# We need to generate & run dump_constants.  Intel/AMD targets often use newer
-	# ISAs than our build systems & QEMU supports.  The constants care about kernel
-	# headers (for the most part), and our build keeps SDK & board headers in sync,
-	# so using the SDK compiler here should be safe for our needs.
-	if ! use cros_host; then
-		if use amd64; then
-			tc-env_build emake OUT="${WORKDIR}/sdk" dump_constants
-		else
-			minijail_targets+=( dump_constants )
-		fi
-	fi
-
-	cros-common.mk_src_compile "${minijail_targets[@]}"
-	if use cros_host ; then
-		BUILD_DIR="${OUT}" distutils-r1_python_compile
-	else
-		generate_constants_json
-	fi
-}
-
-src_install() {
-	into /
-	dosbin "${OUT}"/minijail0
-	dolib.so "${OUT}"/libminijail{,preload}.so
-
-	doman minijail0.[15]
-
-	if use cros_host ; then
-		distutils-r1_python_install
-	else
-		insinto /build/share
-		doins "${OUT}"/constants.json
-	fi
-
-	local include_dir="/usr/include/chromeos"
-
-	"${S}"/platform2_preinstall.sh "${PV}" "${include_dir}"
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins libminijail.pc
-
-	insinto "${include_dir}"
-	doins libminijail.h
-	doins scoped_minijail.h
-}
diff --git a/chromeos-base/minijail/minijail-16-r20.ebuild b/chromeos-base/minijail/minijail-16-r20.ebuild
deleted file mode 100644
index a49fc9a..0000000
--- a/chromeos-base/minijail/minijail-16-r20.ebuild
+++ /dev/null
@@ -1,119 +0,0 @@
-# Copyright (c) 2009 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="2453b1fc097f3a995be8bcc0a2ada1fba616f287"
-CROS_WORKON_TREE="5d7a4ada8dd246f22883e11dd0ad0c42af38dbad"
-inherit cros-constants
-
-CROS_WORKON_MANUAL_UPREV=1
-CROS_WORKON_LOCALNAME="aosp/external/minijail"
-CROS_WORKON_PROJECT="platform/external/minijail"
-CROS_WORKON_EGIT_BRANCH="master"
-CROS_WORKON_REPO="${CROS_GIT_AOSP_URL}"
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-# TODO(crbug.com/689060): Re-enable on ARM.
-CROS_COMMON_MK_NATIVE_TEST="yes"
-
-DISTUTILS_OPTIONAL=1
-DISTUTILS_SINGLE_IMPL=1
-
-inherit cros-debug cros-sanitizers cros-workon cros-common.mk toolchain-funcs distutils-r1
-
-DESCRIPTION="helper binary and library for sandboxing & restricting privs of services"
-HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="asan cros-debug +seccomp test"
-
-COMMON_DEPEND="sys-libs/libcap:=
-	!<chromeos-base/chromeos-minijail-1"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}
-	cros_host? (
-		${PYTHON_DEPS}
-		$(python_gen_cond_dep 'dev-python/setuptools[${PYTHON_USEDEP}]')
-	)
-	test? (
-		dev-cpp/gtest:=
-	)"
-
-src_configure() {
-	sanitizers-setup-env
-	cros-common.mk_src_configure
-	export LIBDIR="/$(get_libdir)"
-	export USE_seccomp=$(usex seccomp)
-	export ALLOW_DEBUG_LOGGING=$(usex cros-debug)
-	export USE_SYSTEM_GTEST=yes
-	export DEFAULT_PIVOT_ROOT=/mnt/empty
-}
-
-# Use qemu-user to run the platform-specific dump_constants binary in order to
-# generate constants.json.
-generate_constants_json() {
-	local cmd
-	case "${ARCH}" in
-	x86)   cmd=( "${OUT}"/dump_constants ) ;;
-	amd64) cmd=( "${WORKDIR}"/sdk/dump_constants ) ;;
-	arm)   cmd=( qemu-arm "${OUT}"/dump_constants ) ;;
-	arm64) cmd=( qemu-aarch64 "${OUT}"/dump_constants ) ;;
-	*) die "Unsupported architecture in generate_constants_json(): ${ARCH}."
-	esac
-	echo "+" "${cmd[@]}" ">${OUT}/constants.json"
-	"${cmd[@]}" >"${OUT}"/constants.json || die
-}
-
-src_compile() {
-	# Avoid confusing people with our docs.
-	sed -i "s:/var/empty:${DEFAULT_PIVOT_ROOT}:g" minijail0.[15] || die
-
-	local minijail_targets=( all )
-
-	# We need to generate & run dump_constants.  Intel/AMD targets often use newer
-	# ISAs than our build systems & QEMU supports.  The constants care about kernel
-	# headers (for the most part), and our build keeps SDK & board headers in sync,
-	# so using the SDK compiler here should be safe for our needs.
-	if ! use cros_host; then
-		if use amd64; then
-			tc-env_build emake OUT="${WORKDIR}/sdk" dump_constants
-		else
-			minijail_targets+=( dump_constants )
-		fi
-	fi
-
-	cros-common.mk_src_compile "${minijail_targets[@]}"
-	if use cros_host ; then
-		BUILD_DIR="${OUT}" distutils-r1_python_compile
-	else
-		generate_constants_json
-	fi
-}
-
-src_install() {
-	into /
-	dosbin "${OUT}"/minijail0
-	dolib.so "${OUT}"/libminijail{,preload}.so
-
-	doman minijail0.[15]
-
-	if use cros_host ; then
-		distutils-r1_python_install
-	else
-		insinto /build/share
-		doins "${OUT}"/constants.json
-	fi
-
-	local include_dir="/usr/include/chromeos"
-
-	"${S}"/platform2_preinstall.sh "${PV}" "${include_dir}"
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins libminijail.pc
-
-	insinto "${include_dir}"
-	doins libminijail.h
-	doins scoped_minijail.h
-}
diff --git a/chromeos-base/minijail/minijail-17-r25.ebuild b/chromeos-base/minijail/minijail-17-r25.ebuild
new file mode 100644
index 0000000..a83fb54
--- /dev/null
+++ b/chromeos-base/minijail/minijail-17-r25.ebuild
@@ -0,0 +1,122 @@
+# Copyright (c) 2009 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="25d0f2ba70ba09959e4e41f6df146aedcaff4e4c"
+CROS_WORKON_TREE="9827997d82db7f7e49902f5a62123aa5ab08c3be"
+inherit cros-constants
+
+CROS_WORKON_MANUAL_UPREV=1
+CROS_WORKON_LOCALNAME="aosp/external/minijail"
+CROS_WORKON_PROJECT="platform/external/minijail"
+CROS_WORKON_EGIT_BRANCH="master"
+CROS_WORKON_REPO="${CROS_GIT_AOSP_URL}"
+
+PYTHON_COMPAT=( python3_{6,7} )
+
+# TODO(crbug.com/689060): Re-enable on ARM.
+CROS_COMMON_MK_NATIVE_TEST="yes"
+
+DISTUTILS_OPTIONAL=1
+DISTUTILS_SINGLE_IMPL=1
+
+inherit cros-debug cros-sanitizers cros-workon cros-common.mk toolchain-funcs distutils-r1
+
+DESCRIPTION="helper binary and library for sandboxing & restricting privs of services"
+HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="asan cros-debug default-ret-log +seccomp test"
+
+REQUIRED_USE="default-ret-log? ( cros-debug )"
+
+COMMON_DEPEND="sys-libs/libcap:=
+	!<chromeos-base/chromeos-minijail-1"
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}
+	cros_host? (
+		${PYTHON_DEPS}
+		$(python_gen_cond_dep 'dev-python/setuptools[${PYTHON_USEDEP}]')
+	)
+	test? (
+		dev-cpp/gtest:=
+	)"
+
+src_configure() {
+	sanitizers-setup-env
+	cros-common.mk_src_configure
+	export LIBDIR="/$(get_libdir)"
+	export USE_seccomp=$(usex seccomp)
+	export ALLOW_DEBUG_LOGGING=$(usex cros-debug)
+	export SECCOMP_DEFAULT_RET_LOG=$(usex default-ret-log)
+	export USE_SYSTEM_GTEST=yes
+	export DEFAULT_PIVOT_ROOT=/mnt/empty
+}
+
+# Use qemu-user to run the platform-specific dump_constants binary in order to
+# generate constants.json.
+generate_constants_json() {
+	local cmd
+	case "${ARCH}" in
+	x86)   cmd=( "${OUT}"/dump_constants ) ;;
+	amd64) cmd=( "${WORKDIR}"/sdk/dump_constants ) ;;
+	arm)   cmd=( qemu-arm "${OUT}"/dump_constants ) ;;
+	arm64) cmd=( qemu-aarch64 "${OUT}"/dump_constants ) ;;
+	*) die "Unsupported architecture in generate_constants_json(): ${ARCH}."
+	esac
+	echo "+" "${cmd[@]}" ">${OUT}/constants.json"
+	"${cmd[@]}" >"${OUT}"/constants.json || die
+}
+
+src_compile() {
+	# Avoid confusing people with our docs.
+	sed -i "s:/var/empty:${DEFAULT_PIVOT_ROOT}:g" minijail0.[15] || die
+
+	local minijail_targets=( all )
+
+	# We need to generate & run dump_constants.  Intel/AMD targets often use newer
+	# ISAs than our build systems & QEMU supports.  The constants care about kernel
+	# headers (for the most part), and our build keeps SDK & board headers in sync,
+	# so using the SDK compiler here should be safe for our needs.
+	if ! use cros_host; then
+		if use amd64; then
+			tc-env_build emake OUT="${WORKDIR}/sdk" dump_constants
+		else
+			minijail_targets+=( dump_constants )
+		fi
+	fi
+
+	cros-common.mk_src_compile "${minijail_targets[@]}"
+	if use cros_host ; then
+		BUILD_DIR="${OUT}" distutils-r1_python_compile
+	else
+		generate_constants_json
+	fi
+}
+
+src_install() {
+	into /
+	dosbin "${OUT}"/minijail0
+	dolib.so "${OUT}"/libminijail{,preload}.so
+
+	doman minijail0.[15]
+
+	if use cros_host ; then
+		distutils-r1_python_install
+	else
+		insinto /build/share
+		doins "${OUT}"/constants.json
+	fi
+
+	local include_dir="/usr/include/chromeos"
+
+	"${S}"/platform2_preinstall.sh "${PV}" "${include_dir}"
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins libminijail.pc
+
+	insinto "${include_dir}"
+	doins libminijail.h
+	doins scoped_minijail.h
+}
diff --git a/chromeos-base/minijail/minijail-9999.ebuild b/chromeos-base/minijail/minijail-9999.ebuild
index d155018..b3d1634 100644
--- a/chromeos-base/minijail/minijail-9999.ebuild
+++ b/chromeos-base/minijail/minijail-9999.ebuild
@@ -26,7 +26,9 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="asan cros-debug +seccomp test"
+IUSE="asan cros-debug default-ret-log +seccomp test"
+
+REQUIRED_USE="default-ret-log? ( cros-debug )"
 
 COMMON_DEPEND="sys-libs/libcap:=
 	!<chromeos-base/chromeos-minijail-1"
@@ -46,6 +48,7 @@
 	export LIBDIR="/$(get_libdir)"
 	export USE_seccomp=$(usex seccomp)
 	export ALLOW_DEBUG_LOGGING=$(usex cros-debug)
+	export SECCOMP_DEFAULT_RET_LOG=$(usex default-ret-log)
 	export USE_SYSTEM_GTEST=yes
 	export DEFAULT_PIVOT_ROOT=/mnt/empty
 }
diff --git a/chromeos-base/minios/minios-0.0.1-r133.ebuild b/chromeos-base/minios/minios-0.0.1-r133.ebuild
new file mode 100644
index 0000000..d6c4de5
--- /dev/null
+++ b/chromeos-base/minios/minios-0.0.1-r133.ebuild
@@ -0,0 +1,51 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="e9a22a7b018bfbef5651fa6289a889ddf9aa8fc9"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "4c41d3ca923afebebc1c20d24111de41aa7fc7ea" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk minios .gn"
+
+PLATFORM_SUBDIR="minios"
+
+inherit cros-workon platform
+
+DESCRIPTION="The miniOS main logic."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/minios/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="minios"
+REQUIRED_USE="minios"
+
+COMMON_DEPEND="
+	chromeos-base/shill-client:=
+	chromeos-base/update_engine-client:=
+	x11-libs/libxkbcommon:=
+	x11-misc/xkeyboard-config:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/system_api:="
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/minios_test"
+}
+
+src_install() {
+	into "/build/initramfs"
+	dobin "${OUT}/minios"
+	dobin scripts/root_partition_for_recovery
+
+	# D-Bus configuration
+	insinto "/build/initramfs/etc/dbus-1/system.d"
+	doins org.chromium.MiniOs.conf
+	insinto "/build/initramfs/etc/init"
+	doins init/*.conf
+}
diff --git a/chromeos-base/minios/minios-0.0.1-r81.ebuild b/chromeos-base/minios/minios-0.0.1-r81.ebuild
deleted file mode 100644
index 8e98356..0000000
--- a/chromeos-base/minios/minios-0.0.1-r81.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="9824d0e0ac17a39f11823cad3e6e56dad532425d"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "fc9a07b01b4aef5e812b651af72adda305cf7fa8" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk minios .gn"
-
-PLATFORM_SUBDIR="minios"
-
-inherit cros-workon platform
-
-DESCRIPTION="The miniOS main logic."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/minios/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="minios"
-REQUIRED_USE="minios"
-
-COMMON_DEPEND="
-	chromeos-base/shill-client:=
-	chromeos-base/update_engine-client:=
-	x11-libs/libxkbcommon:=
-	x11-misc/xkeyboard-config:=
-"
-
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/system_api:="
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/minios_test"
-}
-
-src_install() {
-	dobin "${OUT}/minios"
-	dobin scripts/root_partition_for_recovery
-
-	# D-Bus configuration
-	insinto /etc/dbus-1/system.d
-	doins org.chromium.MiniOs.conf
-	insinto "/build/initramfs"
-	doins init/*.conf
-}
diff --git a/chromeos-base/minios/minios-9999.ebuild b/chromeos-base/minios/minios-9999.ebuild
index 61dea45..3ab0a7d 100644
--- a/chromeos-base/minios/minios-9999.ebuild
+++ b/chromeos-base/minios/minios-9999.ebuild
@@ -37,12 +37,13 @@
 }
 
 src_install() {
+	into "/build/initramfs"
 	dobin "${OUT}/minios"
 	dobin scripts/root_partition_for_recovery
 
 	# D-Bus configuration
-	insinto /etc/dbus-1/system.d
+	insinto "/build/initramfs/etc/dbus-1/system.d"
 	doins org.chromium.MiniOs.conf
-	insinto "/build/initramfs"
+	insinto "/build/initramfs/etc/init"
 	doins init/*.conf
 }
diff --git a/chromeos-base/missive/missive-0.0.1-r100.ebuild b/chromeos-base/missive/missive-0.0.1-r100.ebuild
new file mode 100644
index 0000000..22954c84
--- /dev/null
+++ b/chromeos-base/missive/missive-0.0.1-r100.ebuild
@@ -0,0 +1,71 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "4110b1743a3f308203c6d1dd85bf191e0dbda2ca" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk missive .gn"
+
+PLATFORM_SUBDIR="missive"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Daemon to encrypt, store, and forward reporting events for managed devices."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/missive/"
+
+LICENSE="BSD-Google"
+SLOT=0/0
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+	app-arch/snappy
+	chromeos-base/minijail:=
+	dev-libs/protobuf:=
+"
+
+DEPEND="
+	${RDEPEND}
+	chromeos-base/system_api:=
+"
+
+pkg_preinst() {
+	enewuser missived
+	enewgroup missived
+}
+
+src_install() {
+	# Install binary
+	dobin "${OUT}"/missived
+
+	# Install upstart configurations
+	insinto /etc/init
+	doins init/missived.conf
+
+	# TODO(zatrudo): Generate at end of devleopment before release.
+	# Install seccomp policy file.
+	#insinto /usr/share/policy
+	#newins "seccomp/missived-seccomp-${ARCH}.policy" missived-seccomp.policy
+
+	# Install D-Bus configuration file.
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.Missived.conf
+
+	# Install D-Bus service activation configuration.
+	insinto /usr/share/dbus-1/system-services
+	doins dbus/org.chromium.Missived.service
+
+	# Install rsyslog config.
+	# TODO(zatrudo): Determine if logs from this daemon should be redirected.
+	#insinto /etc/rsyslog.d
+	#doins rsyslog/rsyslog.missived.conf
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/missived_testrunner"
+}
diff --git a/chromeos-base/missive/missive-0.0.1-r48.ebuild b/chromeos-base/missive/missive-0.0.1-r48.ebuild
deleted file mode 100644
index cffcd73..0000000
--- a/chromeos-base/missive/missive-0.0.1-r48.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="d7196224c92571a7f62eacc21ad505f43cd2325a"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "c4aa6b23a008514b6a797f7132ee29236d1b0277" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk missive .gn"
-
-PLATFORM_SUBDIR="missive"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Daemon to encrypt, store, and forward reporting events for managed devices."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/missive/"
-
-LICENSE="BSD-Google"
-SLOT=0/0
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-	chromeos-base/minijail:=
-	dev-libs/protobuf:=
-"
-
-DEPEND="
-	${RDEPEND}
-	chromeos-base/system_api:=
-"
-
-pkg_preinst() {
-	enewuser missived
-	enewgroup missived
-}
-
-src_install() {
-	# Install binary
-	dobin "${OUT}"/missived
-
-	# Install upstart configurations
-	insinto /etc/init
-	doins init/missived.conf
-
-	# TODO(zatrudo): Generate at end of devleopment before release.
-	# Install seccomp policy file.
-	#insinto /usr/share/policy
-	#newins "seccomp/missived-seccomp-${ARCH}.policy" missived-seccomp.policy
-
-	# Install D-Bus configuration file.
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.Missived.conf
-
-	# Install D-Bus service activation configuration.
-	insinto /usr/share/dbus-1/system-services
-	doins dbus/org.chromium.Missived.service
-
-	# Install rsyslog config.
-	# TODO(zatrudo): Determine if logs from this daemon should be redirected.
-	#insinto /etc/rsyslog.d
-	#doins rsyslog/rsyslog.missived.conf
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/missived_testrunner"
-}
diff --git a/chromeos-base/missive/missive-9999.ebuild b/chromeos-base/missive/missive-9999.ebuild
index 9180edd..bfc671f 100644
--- a/chromeos-base/missive/missive-9999.ebuild
+++ b/chromeos-base/missive/missive-9999.ebuild
@@ -22,6 +22,7 @@
 IUSE=""
 
 RDEPEND="
+	app-arch/snappy
 	chromeos-base/minijail:=
 	dev-libs/protobuf:=
 "
diff --git a/chromeos-base/mist/mist-0.0.1-r3110.ebuild b/chromeos-base/mist/mist-0.0.1-r3110.ebuild
deleted file mode 100644
index b6f6bd8..0000000
--- a/chromeos-base/mist/mist-0.0.1-r3110.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-CROS_WORKON_COMMIT="0553127ef2b660a5c71f12a9417ed4ad35f07120"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "460b5c588dbf96a4f62c05b2dd799de43949c37b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk metrics mist .gn"
-
-PLATFORM_SUBDIR="mist"
-
-inherit cros-workon platform udev
-
-DESCRIPTION="Chromium OS Modem Interface Switching Tool"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/mist/"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-	chromeos-base/libbrillo:=[udev]
-	>=chromeos-base/metrics-0.0.1-r3152
-	dev-libs/protobuf:=
-	net-dialup/ppp
-	virtual/libusb:1
-	virtual/udev
-"
-
-DEPEND="${RDEPEND}"
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/mist_testrunner"
-}
-
-src_install() {
-	dobin "${OUT}"/mist
-
-	insinto /usr/share/mist
-	doins default.conf
-
-	udev_dorules 51-mist.rules
-}
diff --git a/chromeos-base/mist/mist-0.0.1-r3152.ebuild b/chromeos-base/mist/mist-0.0.1-r3152.ebuild
new file mode 100644
index 0000000..da1f75e
--- /dev/null
+++ b/chromeos-base/mist/mist-0.0.1-r3152.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e08a2eb734e33827dffeecf57eca046cd1091373" "cfb418a6d821e9123bf6f220350e78f6f287c506" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk metrics mist .gn"
+
+PLATFORM_SUBDIR="mist"
+
+inherit cros-workon platform udev
+
+DESCRIPTION="Chromium OS Modem Interface Switching Tool"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/mist/"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+	chromeos-base/libbrillo:=[udev]
+	>=chromeos-base/metrics-0.0.1-r3152
+	dev-libs/protobuf:=
+	net-dialup/ppp
+	virtual/libusb:1
+	virtual/udev
+"
+
+DEPEND="${RDEPEND}"
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/mist_testrunner"
+}
+
+src_install() {
+	dobin "${OUT}"/mist
+
+	insinto /usr/share/mist
+	doins default.conf
+
+	udev_dorules 51-mist.rules
+}
diff --git a/chromeos-base/ml-benchmark/ml-benchmark-0.0.1-r122.ebuild b/chromeos-base/ml-benchmark/ml-benchmark-0.0.1-r122.ebuild
new file mode 100644
index 0000000..80cf355
--- /dev/null
+++ b/chromeos-base/ml-benchmark/ml-benchmark-0.0.1-r122.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "20d593bc4f76d08b642ac2d57ed2f4f9af04ce50" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk ml_benchmark .gn"
+
+DESCRIPTION="Chrome OS ML Benchmarking Suite"
+
+PLATFORM_SUBDIR="ml_benchmark"
+
+inherit cros-workon platform
+
+# chromeos-base/ml_benchmark blocked due to package rename
+RDEPEND="
+	!chromeos-base/ml_benchmark
+"
+
+DEPEND="${RDEPEND}
+	dev-libs/protobuf:=
+"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+src_install() {
+	dobin "${OUT}"/ml_benchmark
+	dolib.so "${OUT}"/lib/libmlbenchmark_proto.so
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/ml_benchmark_test"
+}
diff --git a/chromeos-base/ml-benchmark/ml-benchmark-0.0.1-r97.ebuild b/chromeos-base/ml-benchmark/ml-benchmark-0.0.1-r97.ebuild
deleted file mode 100644
index efb982a..0000000
--- a/chromeos-base/ml-benchmark/ml-benchmark-0.0.1-r97.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "20d593bc4f76d08b642ac2d57ed2f4f9af04ce50" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk ml_benchmark .gn"
-
-DESCRIPTION="Chrome OS ML Benchmarking Suite"
-
-PLATFORM_SUBDIR="ml_benchmark"
-
-inherit cros-workon platform
-
-# chromeos-base/ml_benchmark blocked due to package rename
-RDEPEND="
-	!chromeos-base/ml_benchmark
-"
-
-DEPEND="${RDEPEND}
-	dev-libs/protobuf:=
-"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-src_install() {
-	dobin "${OUT}"/ml_benchmark
-	dolib.so "${OUT}"/lib/libmlbenchmark_proto.so
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/ml_benchmark_test"
-}
diff --git a/chromeos-base/ml-client/OWNERS b/chromeos-base/ml-client/OWNERS
new file mode 100644
index 0000000..d454c41
--- /dev/null
+++ b/chromeos-base/ml-client/OWNERS
@@ -0,0 +1,3 @@
+include chromiumos/platform2:/ml/OWNERS
+
+thanhdng@chromium.org
diff --git a/chromeos-base/ml-client/ml-client-0.0.1-r49.ebuild b/chromeos-base/ml-client/ml-client-0.0.1-r49.ebuild
new file mode 100644
index 0000000..f72a157
--- /dev/null
+++ b/chromeos-base/ml-client/ml-client-0.0.1-r49.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="b907d316b0276d05c139414c341f58fb9cf3ab77"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "ec353604df509c3940bc5a1fb49d6ab35545ab6b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk ml .gn"
+
+PLATFORM_SUBDIR="ml/ml-client"
+
+inherit cros-workon platform
+
+DESCRIPTION="ML Service D-Bus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/main/ml/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+BDEPEND="
+	chromeos-base/chromeos-dbus-bindings:=
+"
+
+src_install() {
+	# Install D-Bus client library.
+	platform_install_dbus_client_lib "ml"
+}
diff --git a/chromeos-base/ml-client/ml-client-9999.ebuild b/chromeos-base/ml-client/ml-client-9999.ebuild
new file mode 100644
index 0000000..4d377d9
--- /dev/null
+++ b/chromeos-base/ml-client/ml-client-9999.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk ml .gn"
+
+PLATFORM_SUBDIR="ml/ml-client"
+
+inherit cros-workon platform
+
+DESCRIPTION="ML Service D-Bus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/main/ml/"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+
+BDEPEND="
+	chromeos-base/chromeos-dbus-bindings:=
+"
+
+src_install() {
+	# Install D-Bus client library.
+	platform_install_dbus_client_lib "ml"
+}
diff --git a/chromeos-base/ml-cmdline/ml-cmdline-0.0.1-r213.ebuild b/chromeos-base/ml-cmdline/ml-cmdline-0.0.1-r213.ebuild
deleted file mode 100644
index b3d7952..0000000
--- a/chromeos-base/ml-cmdline/ml-cmdline-0.0.1-r213.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "517c3fdaddc3179ddb87307a44118265bb0c00c3" "20d593bc4f76d08b642ac2d57ed2f4f9af04ce50" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk ml ml_benchmark .gn"
-
-PLATFORM_SUBDIR="ml"
-
-inherit cros-workon platform
-
-DESCRIPTION="Command line interface to machine learning service for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/ml"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-SLOT="0/0"
-IUSE="internal"
-
-RDEPEND="
-	chromeos-base/chrome-icu:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/ml:=
-	sci-libs/tensorflow:=
-"
-
-DEPEND="
-	${RDEPEND}
-"
-
-src_install() {
-	dobin "${OUT}"/ml_cmdline
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/ml_cmdline_test"
-}
diff --git a/chromeos-base/ml-cmdline/ml-cmdline-0.0.1-r290.ebuild b/chromeos-base/ml-cmdline/ml-cmdline-0.0.1-r290.ebuild
new file mode 100644
index 0000000..969735b
--- /dev/null
+++ b/chromeos-base/ml-cmdline/ml-cmdline-0.0.1-r290.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="b907d316b0276d05c139414c341f58fb9cf3ab77"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "ec353604df509c3940bc5a1fb49d6ab35545ab6b" "20d593bc4f76d08b642ac2d57ed2f4f9af04ce50" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk ml ml_benchmark .gn"
+
+PLATFORM_SUBDIR="ml"
+
+inherit cros-workon platform
+
+DESCRIPTION="Command line interface to machine learning service for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/main/ml"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+SLOT="0/0"
+IUSE="internal"
+
+RDEPEND="
+	chromeos-base/chrome-icu:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/ml:=
+	sci-libs/tensorflow:=
+"
+
+DEPEND="
+	${RDEPEND}
+"
+
+src_install() {
+	dobin "${OUT}"/ml_cmdline
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/ml_cmdline_test"
+}
diff --git a/chromeos-base/ml-cmdline/ml-cmdline-9999.ebuild b/chromeos-base/ml-cmdline/ml-cmdline-9999.ebuild
index 1963504..162e0fd 100644
--- a/chromeos-base/ml-cmdline/ml-cmdline-9999.ebuild
+++ b/chromeos-base/ml-cmdline/ml-cmdline-9999.ebuild
@@ -12,7 +12,7 @@
 inherit cros-workon platform
 
 DESCRIPTION="Command line interface to machine learning service for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/ml"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/main/ml"
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
diff --git a/chromeos-base/ml-test-assets/ml-test-assets-0.0.1-r2.ebuild b/chromeos-base/ml-test-assets/ml-test-assets-0.0.1-r2.ebuild
new file mode 120000
index 0000000..1fb56fa
--- /dev/null
+++ b/chromeos-base/ml-test-assets/ml-test-assets-0.0.1-r2.ebuild
@@ -0,0 +1 @@
+ml-test-assets-0.0.1.ebuild
\ No newline at end of file
diff --git a/chromeos-base/ml-test-assets/ml-test-assets-0.0.1.ebuild b/chromeos-base/ml-test-assets/ml-test-assets-0.0.1.ebuild
index 3624a88..0925c5c 100644
--- a/chromeos-base/ml-test-assets/ml-test-assets-0.0.1.ebuild
+++ b/chromeos-base/ml-test-assets/ml-test-assets-0.0.1.ebuild
@@ -27,7 +27,7 @@
 
 src_install() {
 	if use label_image || use benchmark_model; then
-		insinto /usr/share/ml-test-assets
+		insinto /usr/local/share/ml-test-assets
 		doins -r ./*
 	fi
 }
diff --git a/chromeos-base/ml/Manifest b/chromeos-base/ml/Manifest
index 46e1cb5..cd1635d 100644
--- a/chromeos-base/ml/Manifest
+++ b/chromeos-base/ml/Manifest
@@ -1,6 +1,7 @@
 DIST mlservice-model-search_ranker-20190923.tflite 4224 BLAKE2B cff618e356bedeba67648f499d549fc4cf9446565e17316e5ec159b2e7a8d1e2009eec6894a236b8445171a5606b3472abb749efcbab60427b232eef200e0d1c SHA512 d3f90d9bc3e560d251eb3124e58822c4e798b1b220899d0f7b045289d98f558cfc4cbf9d0ad6c4b50565f89c34b8aaa5f0b85a5873551c1f909bf904191046e5
 DIST mlservice-model-smart_dim-20181115.tflite 56252 BLAKE2B 6a5271f1f32615c8cb3c3a0a790442250a497caecd81f89c59e7893b4042a91788d34d84a38f5447c8c82426b4b482a27837e118287fbd82f2265d7d90536521 SHA512 f8a55663de6f023bd85a7235957b398558b1beb2be701fe65b86325dc455a77da657d635ca7c11f40d73df044bd51c0fdc2d4301c32935453cf501a1f60698c6
 DIST mlservice-model-smart_dim-20190221.tflite 197532 BLAKE2B 671c3740ec601ba43384f7fa342ec9f3a9c9b3e213fdfb1e2ca229e57c96f262f5ceabc5b89258ecd96fdf36fe51685408e0a6bbe9044e2580d506d9a152b3ec SHA512 44b5eabe32bf7e0ca5c1ecc72db8d292dbe9d6d9e2f8a973bacbd0aee77db484e2c4064be3f3b0a055c4309c340266128b8bf61f85b9f61f421b0fe66fd51f99
+DIST mlservice-model-smart_dim-20190521-preprocessor.pb 21495 BLAKE2B 266e14223e0a15aa708c5f1d7103a3987e98cf297a7acf689a9b1064f81ccfb77537781858b6d7f29973a274062e0ba5338db12df649e72879f2a3c3f7db278c SHA512 3bcd46fbc94ba5b07376963150ee7c03bda9cbd1f4fa12a4eb0038778ae888967b9bdc3ed585def60e6e2f31b1e1c95a350c1e3a8967972b24ef18a277f79f9a
 DIST mlservice-model-smart_dim-20190521-v3.tflite 25048 BLAKE2B ebf56f8238a3d7349127cf2e88c556a562a61a6aa94a1e41b9baaeef76fcfb141d887c9fc8c518bd74cfd76ff033817d7745ae61faa1b4d113632285c0d796d7 SHA512 4b1da4ca45a967b0c700d513cc5b73750140f320ad957f4ed60e2561e6ec7538c5d24d952fcff668dce51a414937753c71b38b239eed8b5280e88dd2ca78773a
 DIST mlservice-model-smart_dim-20200206-downloadable.tflite 23336 BLAKE2B 46253c1186a87e1e793f67c7acdf288c89f6a094907a4013dd6008695be94360c2d7c5be70c017e2283e00aa6656a6380fe98c664b4fba03174db63a1791019a SHA512 3dadce228039787075ba85cf67e7f81fa765032d92fdeda2e91f65775656da22dadf59f1ffb33465405fabd96f27c306136906b04ace4c4c2fa4814e0538f98d
 DIST mlservice-model-smart_dim-20201022-downloadable.tflite 11424 BLAKE2B f764500bacf86896d6403f3656bad27c47a915cab68314c72fb253f6d7561410ead9f5fd3af9eb049947fb490bda8ec26d193a77ee59ef1df842c2b6f460fa73 SHA512 bca7ddbff33e6480458f150920f92945f95dcff4ce538a8d58a0b2ae48aa87233077a19a702583b04df546c176b191d39feac6dde1ad43f2d101330cb53e8908
diff --git a/chromeos-base/ml/ml-0.0.1-r524.ebuild b/chromeos-base/ml/ml-0.0.1-r524.ebuild
deleted file mode 100644
index 743af7a..0000000
--- a/chromeos-base/ml/ml-0.0.1-r524.ebuild
+++ /dev/null
@@ -1,152 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "517c3fdaddc3179ddb87307a44118265bb0c00c3" "20d593bc4f76d08b642ac2d57ed2f4f9af04ce50" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-# TODO(amoylan): Set CROS_WORKON_OUTOFTREE_BUILD=1 after crbug.com/833675.
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk ml ml_benchmark .gn"
-
-PLATFORM_SUBDIR="ml"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Machine learning service for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/ml"
-
-# Clients of the ML service should place the URIs of their model files into
-# MODELS_TO_INSTALL if they are installed into rootfs (built-in models), or
-# DOWNLOADABLE_MODELS if they are downloaded via component updater (downloadable
-# models).
-MODELS_TO_INSTALL=(
-	"gs://chromeos-localmirror/distfiles/mlservice-model-test_add-20180914.tflite"
-	"gs://chromeos-localmirror/distfiles/mlservice-model-search_ranker-20190923.tflite"
-	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20181115.tflite"
-	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190221.tflite"
-	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190521-v3.tflite"
-)
-
-# TODO(alanlxl): Remove the deprecated 20201022 link after crbug.com/1136331.
-DOWNLOADABLE_MODELS=(
-	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20200206-downloadable.tflite"
-	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20201022-downloadable.tflite"
-	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20210201-downloadable.tflite"
-)
-
-SRC_URI="
-	${DOWNLOADABLE_MODELS[*]}
-	${MODELS_TO_INSTALL[*]}
-"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="
-	dlc
-	fuzzer
-	internal
-	ml_benchmark_drivers
-	nnapi
-	ondevice_document_scanner
-	ondevice_grammar
-	ondevice_handwriting
-	ondevice_handwriting_dlc
-	ondevice_speech
-	ondevice_text_suggestions
-"
-
-RDEPEND="
-	chromeos-base/chrome-icu:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	internal? ( ondevice_speech? ( chromeos-soda/libsoda:=[dlc=] ) )
-	nnapi? ( chromeos-base/aosp-frameworks-ml-nn )
-	media-libs/cros-camera-document-scanning:=[ondevice_document_scanner=]
-	>=dev-libs/libgrammar-0.0.4:=[ondevice_grammar=]
-	dev-libs/libhandwriting:=[ondevice_handwriting=,ondevice_handwriting_dlc=]
-	dev-libs/libsuggest:=[ondevice_text_suggestions=]
-	>=dev-libs/libtextclassifier-0.0.1-r79:=
-	sci-libs/tensorflow:=
-"
-
-DEPEND="
-	${RDEPEND}
-	chromeos-base/system_api:=[fuzzer?]
-	dev-cpp/absl:=
-	dev-libs/libutf:=
-	dev-libs/marisa-aosp:=
-	fuzzer? ( dev-libs/libprotobuf-mutator )
-"
-
-# SODA will not be supported on rootfs and only be supported through DLC.
-REQUIRED_USE="ondevice_speech? ( dlc )"
-
-src_install() {
-	dobin "${OUT}"/ml_service
-
-	# Install upstart configuration.
-	insinto /etc/init
-	doins init/*.conf
-
-	# Install seccomp policy files.
-	insinto /usr/share/policy
-	newins "seccomp/ml_service-seccomp-${ARCH}.policy" ml_service-seccomp.policy
-	newins "seccomp/ml_service-WebPlatformHandwritingModel-seccomp-${ARCH}.policy" ml_service-WebPlatformHandwritingModel-seccomp.policy
-	newins "seccomp/ml_service-SodaModel-seccomp-${ARCH}.policy" ml_service-SodaModel-seccomp.policy
-
-	# Install D-Bus configuration file.
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.MachineLearning.conf
-
-	# Install D-Bus service activation configuration.
-	insinto /usr/share/dbus-1/system-services
-	doins dbus/org.chromium.MachineLearning.service
-
-	# Create distfile array of model filepaths.
-	local model_files=( "${MODELS_TO_INSTALL[@]##*/}" )
-	local distfile_array=( "${model_files[@]/#/${DISTDIR}/}" )
-
-	# Install system ML models.
-	insinto /opt/google/chrome/ml_models
-	doins "${distfile_array[@]}"
-
-	# Install system ML models to fuzzer dir.
-	insinto /usr/libexec/fuzzers
-	doins "${distfile_array[@]}"
-
-	# Install fuzzer targets.
-	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}"
-	done
-
-	if use ml_benchmark_drivers; then
-		insinto /usr/local/ml_benchmark/ml_service
-		insopts -m0755
-		doins "${OUT}"/lib/libml_for_benchmark.so
-		insopts -m0644
-	fi
-}
-
-pkg_preinst() {
-	enewuser "ml-service"
-	enewgroup "ml-service"
-	enewuser "ml-service-dbus"
-	enewgroup "ml-service-dbus"
-}
-
-platform_pkg_test() {
-	# Recreate model dir in the temp directory and copy both
-	# MODELS_TO_INSTALL and DOWNLOADABLE_MODELS into it for use in unit
-	# tests.
-	mkdir "${T}/ml_models" || die
-	local all_test_models=( "${DOWNLOADABLE_MODELS[@]}" "${MODELS_TO_INSTALL[@]}" )
-	local distfile_uri
-	for distfile_uri in "${all_test_models[@]}"; do
-		cp "${DISTDIR}/${distfile_uri##*/}" "${T}/ml_models" || die
-	done
-
-	# The third argument equaling 1 means "run as root". This is needed for
-	# multiprocess unit test.
-	platform_test "run" "${OUT}/ml_service_test" 1
-}
diff --git a/chromeos-base/ml/ml-0.0.1-r605.ebuild b/chromeos-base/ml/ml-0.0.1-r605.ebuild
new file mode 100644
index 0000000..4f89e9e
--- /dev/null
+++ b/chromeos-base/ml/ml-0.0.1-r605.ebuild
@@ -0,0 +1,163 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="b907d316b0276d05c139414c341f58fb9cf3ab77"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "ec353604df509c3940bc5a1fb49d6ab35545ab6b" "20d593bc4f76d08b642ac2d57ed2f4f9af04ce50" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+# TODO(amoylan): Set CROS_WORKON_OUTOFTREE_BUILD=1 after crbug.com/833675.
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk ml ml_benchmark .gn"
+
+PLATFORM_SUBDIR="ml"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Machine learning service for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/main/ml"
+
+# Clients of the ML service should place the URIs of their model files into
+# MODELS_TO_INSTALL if they are installed into rootfs (built-in models), or
+# DOWNLOADABLE_MODELS if they are downloaded via component updater (downloadable
+# models).
+MODELS_TO_INSTALL=(
+	"gs://chromeos-localmirror/distfiles/mlservice-model-test_add-20180914.tflite"
+	"gs://chromeos-localmirror/distfiles/mlservice-model-search_ranker-20190923.tflite"
+	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20181115.tflite"
+	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190221.tflite"
+	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190521-v3.tflite"
+)
+
+DOWNLOADABLE_MODELS=(
+	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20200206-downloadable.tflite"
+	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20210201-downloadable.tflite"
+)
+
+# Preprocessor config pb files that are used in unit test should be placed into
+# PREPROCESSOR_PB_FOR_TEST.
+PREPROCESSOR_PB_FOR_TEST=(
+	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190521-preprocessor.pb"
+)
+
+SRC_URI="
+	${DOWNLOADABLE_MODELS[*]}
+	${MODELS_TO_INSTALL[*]}
+	${PREPROCESSOR_PB_FOR_TEST[*]}
+"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="
+	dlc
+	fuzzer
+	internal
+	ml_benchmark_drivers
+	nnapi
+	ondevice_document_scanner
+	ondevice_grammar
+	ondevice_handwriting
+	ondevice_handwriting_dlc
+	ondevice_speech
+	ondevice_text_suggestions
+"
+
+RDEPEND="
+	chromeos-base/chrome-icu:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/minijail:=
+	internal? ( ondevice_speech? ( chromeos-soda/libsoda:=[dlc=] ) )
+	nnapi? ( chromeos-base/aosp-frameworks-ml-nn )
+	media-libs/cros-camera-document-scanning:=[ondevice_document_scanner=]
+	>=dev-libs/libgrammar-0.0.4:=[ondevice_grammar=]
+	dev-libs/libhandwriting:=[ondevice_handwriting=,ondevice_handwriting_dlc=]
+	>=dev-libs/libsuggest-0.0.9:=[ondevice_text_suggestions=]
+	>=dev-libs/libtextclassifier-0.0.1-r79:=
+	sci-libs/tensorflow:=
+"
+
+DEPEND="
+	${RDEPEND}
+	chromeos-base/system_api:=[fuzzer?]
+	dev-cpp/absl:=
+	dev-libs/libutf:=
+	dev-libs/marisa-aosp:=
+	fuzzer? ( dev-libs/libprotobuf-mutator )
+"
+
+# SODA will not be supported on rootfs and only be supported through DLC.
+REQUIRED_USE="ondevice_speech? ( dlc )"
+
+src_install() {
+	dobin "${OUT}"/ml_service
+
+	# Install upstart configuration.
+	insinto /etc/init
+	doins init/*.conf
+
+	# Install seccomp policy files.
+	insinto /usr/share/policy
+	newins "seccomp/ml_service-seccomp-${ARCH}.policy" ml_service-seccomp.policy
+	newins "seccomp/ml_service-BuiltinModel-seccomp-${ARCH}.policy" ml_service-BuiltinModel-seccomp.policy
+	newins "seccomp/ml_service-FlatBufferModel-seccomp-${ARCH}.policy" ml_service-FlatBufferModel-seccomp.policy
+	newins "seccomp/ml_service-HandwritingModel-seccomp-${ARCH}.policy" ml_service-HandwritingModel-seccomp.policy
+	newins "seccomp/ml_service-WebPlatformHandwritingModel-seccomp-${ARCH}.policy" ml_service-WebPlatformHandwritingModel-seccomp.policy
+	newins "seccomp/ml_service-SodaModel-seccomp-${ARCH}.policy" ml_service-SodaModel-seccomp.policy
+
+	# Install D-Bus configuration file.
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.MachineLearning.conf
+
+	# Install D-Bus service activation configuration.
+	insinto /usr/share/dbus-1/system-services
+	doins dbus/org.chromium.MachineLearning.service
+
+	# Create distfile array of model filepaths.
+	local model_files=( "${MODELS_TO_INSTALL[@]##*/}" )
+	local distfile_array=( "${model_files[@]/#/${DISTDIR}/}" )
+
+	# Install system ML models.
+	insinto /opt/google/chrome/ml_models
+	doins "${distfile_array[@]}"
+
+	# Install system ML models to fuzzer dir.
+	insinto /usr/libexec/fuzzers
+	doins "${distfile_array[@]}"
+
+	# Install fuzzer targets.
+	for fuzzer in "${OUT}"/*_fuzzer; do
+		local fuzzer_component_id="187682"
+		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}" \
+			--comp "${fuzzer_component_id}"
+	done
+
+	if use ml_benchmark_drivers; then
+		insinto /usr/local/ml_benchmark/ml_service
+		insopts -m0755
+		doins "${OUT}"/lib/libml_for_benchmark.so
+		insopts -m0644
+	fi
+}
+
+pkg_preinst() {
+	enewuser "ml-service"
+	enewgroup "ml-service"
+	enewuser "ml-service-dbus"
+	enewgroup "ml-service-dbus"
+}
+
+platform_pkg_test() {
+	# Recreate model dir in the temp directory and copy both
+	# MODELS_TO_INSTALL and DOWNLOADABLE_MODELS into it for use in unit
+	# tests.
+	mkdir "${T}/ml_models" || die
+	local all_test_models=( "${DOWNLOADABLE_MODELS[@]}" "${MODELS_TO_INSTALL[@]}" "${PREPROCESSOR_PB_FOR_TEST[@]}" )
+	local distfile_uri
+	for distfile_uri in "${all_test_models[@]}"; do
+		cp "${DISTDIR}/${distfile_uri##*/}" "${T}/ml_models" || die
+	done
+
+	# The third argument equaling 1 means "run as root". This is needed for
+	# multiprocess unit test.
+	platform_test "run" "${OUT}/ml_service_test" 1
+}
diff --git a/chromeos-base/ml/ml-9999.ebuild b/chromeos-base/ml/ml-9999.ebuild
index 4c2d8f40..a282889 100644
--- a/chromeos-base/ml/ml-9999.ebuild
+++ b/chromeos-base/ml/ml-9999.ebuild
@@ -13,7 +13,7 @@
 inherit cros-workon platform user
 
 DESCRIPTION="Machine learning service for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/ml"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/main/ml"
 
 # Clients of the ML service should place the URIs of their model files into
 # MODELS_TO_INSTALL if they are installed into rootfs (built-in models), or
@@ -27,16 +27,21 @@
 	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190521-v3.tflite"
 )
 
-# TODO(alanlxl): Remove the deprecated 20201022 link after crbug.com/1136331.
 DOWNLOADABLE_MODELS=(
 	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20200206-downloadable.tflite"
-	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20201022-downloadable.tflite"
 	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20210201-downloadable.tflite"
 )
 
+# Preprocessor config pb files that are used in unit test should be placed into
+# PREPROCESSOR_PB_FOR_TEST.
+PREPROCESSOR_PB_FOR_TEST=(
+	"gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190521-preprocessor.pb"
+)
+
 SRC_URI="
 	${DOWNLOADABLE_MODELS[*]}
 	${MODELS_TO_INSTALL[*]}
+	${PREPROCESSOR_PB_FOR_TEST[*]}
 "
 
 LICENSE="BSD-Google"
@@ -58,12 +63,13 @@
 RDEPEND="
 	chromeos-base/chrome-icu:=
 	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/minijail:=
 	internal? ( ondevice_speech? ( chromeos-soda/libsoda:=[dlc=] ) )
 	nnapi? ( chromeos-base/aosp-frameworks-ml-nn )
 	media-libs/cros-camera-document-scanning:=[ondevice_document_scanner=]
 	>=dev-libs/libgrammar-0.0.4:=[ondevice_grammar=]
 	dev-libs/libhandwriting:=[ondevice_handwriting=,ondevice_handwriting_dlc=]
-	dev-libs/libsuggest:=[ondevice_text_suggestions=]
+	>=dev-libs/libsuggest-0.0.9:=[ondevice_text_suggestions=]
 	>=dev-libs/libtextclassifier-0.0.1-r79:=
 	sci-libs/tensorflow:=
 "
@@ -90,6 +96,9 @@
 	# Install seccomp policy files.
 	insinto /usr/share/policy
 	newins "seccomp/ml_service-seccomp-${ARCH}.policy" ml_service-seccomp.policy
+	newins "seccomp/ml_service-BuiltinModel-seccomp-${ARCH}.policy" ml_service-BuiltinModel-seccomp.policy
+	newins "seccomp/ml_service-FlatBufferModel-seccomp-${ARCH}.policy" ml_service-FlatBufferModel-seccomp.policy
+	newins "seccomp/ml_service-HandwritingModel-seccomp-${ARCH}.policy" ml_service-HandwritingModel-seccomp.policy
 	newins "seccomp/ml_service-WebPlatformHandwritingModel-seccomp-${ARCH}.policy" ml_service-WebPlatformHandwritingModel-seccomp.policy
 	newins "seccomp/ml_service-SodaModel-seccomp-${ARCH}.policy" ml_service-SodaModel-seccomp.policy
 
@@ -115,7 +124,9 @@
 
 	# Install fuzzer targets.
 	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}"
+		local fuzzer_component_id="187682"
+		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}" \
+			--comp "${fuzzer_component_id}"
 	done
 
 	if use ml_benchmark_drivers; then
@@ -138,7 +149,7 @@
 	# MODELS_TO_INSTALL and DOWNLOADABLE_MODELS into it for use in unit
 	# tests.
 	mkdir "${T}/ml_models" || die
-	local all_test_models=( "${DOWNLOADABLE_MODELS[@]}" "${MODELS_TO_INSTALL[@]}" )
+	local all_test_models=( "${DOWNLOADABLE_MODELS[@]}" "${MODELS_TO_INSTALL[@]}" "${PREPROCESSOR_PB_FOR_TEST[@]}" )
 	local distfile_uri
 	for distfile_uri in "${all_test_models[@]}"; do
 		cp "${DISTDIR}/${distfile_uri##*/}" "${T}/ml_models" || die
diff --git a/chromeos-base/modem-utilities/modem-utilities-0.0.1-r2819.ebuild b/chromeos-base/modem-utilities/modem-utilities-0.0.1-r2819.ebuild
deleted file mode 100644
index be2c109..0000000
--- a/chromeos-base/modem-utilities/modem-utilities-0.0.1-r2819.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "27ef0d6acd54bc79665263fb561d89abb458d867" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_DESTDIR="${S}"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk modem-utilities .gn"
-
-PLATFORM_SUBDIR="modem-utilities"
-
-inherit cros-workon tmpfiles platform
-
-DESCRIPTION="Chromium OS modem utilities"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/modem-utilities/"
-SRC_URI=""
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-COMMON_DEPEND="
-	sys-apps/dbus:=
-"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}"
-
-src_install() {
-	dobin modem
-	dobin connectivity
-	dobin config_net_log
-
-	exeinto /usr/lib
-	doexe modem-common.sh
-	doexe connectivity-common.sh
-
-	dotmpfiles tmpfiles.d/*.conf
-}
diff --git a/chromeos-base/modem-utilities/modem-utilities-0.0.1-r2845.ebuild b/chromeos-base/modem-utilities/modem-utilities-0.0.1-r2845.ebuild
new file mode 100644
index 0000000..2c626f2
--- /dev/null
+++ b/chromeos-base/modem-utilities/modem-utilities-0.0.1-r2845.ebuild
@@ -0,0 +1,39 @@
+# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "60d6ddef66c23db66d1f46f06c47d7027ddecbd9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_DESTDIR="${S}"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk modem-utilities .gn"
+
+PLATFORM_SUBDIR="modem-utilities"
+
+inherit cros-workon tmpfiles platform
+
+DESCRIPTION="Chromium OS modem utilities"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/modem-utilities/"
+SRC_URI=""
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+COMMON_DEPEND="
+	sys-apps/dbus:=
+"
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}"
+
+src_install() {
+	dobin modem
+	dobin connectivity
+	dobin config_net_log
+
+	exeinto /usr/lib
+	doexe modem-common.sh
+	doexe connectivity-common.sh
+
+	dotmpfiles tmpfiles.d/*.conf
+}
diff --git a/chromeos-base/modemfwd-proto/OWNERS b/chromeos-base/modemfwd-proto/OWNERS
new file mode 100644
index 0000000..b9550a9
--- /dev/null
+++ b/chromeos-base/modemfwd-proto/OWNERS
@@ -0,0 +1,4 @@
+andrewlassalle@chromium.org
+ejcaruso@chromium.org
+madhavadas@google.com
+pholla@chromium.org
diff --git a/chromeos-base/modemfwd-proto/modemfwd-proto-0.0.1-r19.ebuild b/chromeos-base/modemfwd-proto/modemfwd-proto-0.0.1-r19.ebuild
new file mode 100644
index 0000000..6a6a610
--- /dev/null
+++ b/chromeos-base/modemfwd-proto/modemfwd-proto-0.0.1-r19.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "49accdeb6fa80222bded09a11dcaded7492d37cc" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_GO_PACKAGES=(
+	"chromiumos/modemfwd/..."
+)
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk modemfwd .gn"
+
+PLATFORM_SUBDIR="modemfwd/proto"
+
+inherit cros-workon cros-go platform
+
+DESCRIPTION="modemfwd go proto for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/main/modemfwd"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="
+	dev-libs/protobuf:=
+"
+
+DEPEND="
+	${RDEPEND}
+	dev-go/protobuf
+"
+
+src_unpack() {
+	platform_src_unpack
+	CROS_GO_WORKSPACE="${OUT}/gen/go"
+}
+
+src_install() {
+	cros-go_src_install
+}
diff --git a/chromeos-base/modemfwd-proto/modemfwd-proto-9999.ebuild b/chromeos-base/modemfwd-proto/modemfwd-proto-9999.ebuild
new file mode 100644
index 0000000..69b1ef7
--- /dev/null
+++ b/chromeos-base/modemfwd-proto/modemfwd-proto-9999.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_GO_PACKAGES=(
+	"chromiumos/modemfwd/..."
+)
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk modemfwd .gn"
+
+PLATFORM_SUBDIR="modemfwd/proto"
+
+inherit cros-workon cros-go platform
+
+DESCRIPTION="modemfwd go proto for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/main/modemfwd"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+
+RDEPEND="
+	dev-libs/protobuf:=
+"
+
+DEPEND="
+	${RDEPEND}
+	dev-go/protobuf
+"
+
+src_unpack() {
+	platform_src_unpack
+	CROS_GO_WORKSPACE="${OUT}/gen/go"
+}
+
+src_install() {
+	cros-go_src_install
+}
diff --git a/chromeos-base/modemfwd/modemfwd-0.0.1-r831.ebuild b/chromeos-base/modemfwd/modemfwd-0.0.1-r831.ebuild
deleted file mode 100644
index 6328373..0000000
--- a/chromeos-base/modemfwd/modemfwd-0.0.1-r831.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="3117ca92548f3c66aa086af6f98336a50186706f"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "aa0612733aca2d5ffa65470f07408228b473ebdb" "2791849b7eefd7dd81590b85ffcc88a96fa05725" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk chromeos-config modemfwd .gn"
-
-PLATFORM_SUBDIR="modemfwd"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Modem firmware updater daemon"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/modemfwd"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="fuzzer"
-
-COMMON_DEPEND="
-	app-arch/xz-utils:=
-	chromeos-base/chromeos-config:=
-	chromeos-base/chromeos-config-tools:=
-	dev-libs/protobuf:=
-	net-misc/modemmanager-next:=
-"
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/shill-client:=
-	chromeos-base/system_api:=[fuzzer?]
-	fuzzer? ( dev-libs/libprotobuf-mutator:= )
-"
-
-src_install() {
-	dobin "${OUT}/modemfwd"
-
-	# Upstart configuration
-	insinto /etc/init
-	doins modemfwd.conf
-
-	# DBus configuration
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.Modemfwd.conf
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/firmware_manifest_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/firmware_manifest_v2_fuzzer
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/modemfw_test"
-}
diff --git a/chromeos-base/modemfwd/modemfwd-0.0.1-r886.ebuild b/chromeos-base/modemfwd/modemfwd-0.0.1-r886.ebuild
new file mode 100644
index 0000000..8559fec
--- /dev/null
+++ b/chromeos-base/modemfwd/modemfwd-0.0.1-r886.ebuild
@@ -0,0 +1,62 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "49accdeb6fa80222bded09a11dcaded7492d37cc" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk chromeos-config modemfwd .gn"
+
+PLATFORM_SUBDIR="modemfwd"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Modem firmware updater daemon"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/modemfwd"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="fuzzer"
+
+COMMON_DEPEND="
+	app-arch/xz-utils:=
+	chromeos-base/chromeos-config:=
+	chromeos-base/chromeos-config-tools:=
+	dev-libs/protobuf:=
+	net-misc/modemmanager-next:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/shill-client:=
+	chromeos-base/system_api:=[fuzzer?]
+	fuzzer? ( dev-libs/libprotobuf-mutator:= )
+"
+
+src_install() {
+	dobin "${OUT}/modemfwd"
+
+	# Upstart configuration
+	insinto /etc/init
+	doins modemfwd.conf
+
+	# DBus configuration
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.Modemfwd.conf
+
+	local fuzzer_component_id="167157"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/firmware_manifest_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/firmware_manifest_v2_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/modemfw_test"
+}
diff --git a/chromeos-base/modemfwd/modemfwd-9999.ebuild b/chromeos-base/modemfwd/modemfwd-9999.ebuild
index 8b22ab2..0a4fc6f 100644
--- a/chromeos-base/modemfwd/modemfwd-9999.ebuild
+++ b/chromeos-base/modemfwd/modemfwd-9999.ebuild
@@ -48,8 +48,11 @@
 	insinto /etc/dbus-1/system.d
 	doins dbus/org.chromium.Modemfwd.conf
 
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/firmware_manifest_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/firmware_manifest_v2_fuzzer
+	local fuzzer_component_id="167157"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/firmware_manifest_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/firmware_manifest_v2_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/mount-passthrough/mount-passthrough-0.0.2-r471.ebuild b/chromeos-base/mount-passthrough/mount-passthrough-0.0.2-r471.ebuild
deleted file mode 100644
index 1adafff..0000000
--- a/chromeos-base/mount-passthrough/mount-passthrough-0.0.2-r471.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "92e3d0aa6c1005f33e6a3ca09fbb2a775cf67d9f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk arc/mount-passthrough .gn"
-
-PLATFORM_SUBDIR="arc/mount-passthrough"
-
-inherit cros-workon platform
-
-DESCRIPTION="Mounts the specified directory with different owner UID and GID"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/mount-passthrough"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-COMMON_DEPEND="sys-fs/fuse:=
-	sys-libs/libcap:="
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}"
-
-src_install() {
-	dobin "${OUT}"/mount-passthrough
-	dobin mount-passthrough-jailed
-	dobin mount-passthrough-jailed-media
-	dobin mount-passthrough-jailed-play
-
-	insinto /usr/share/arc
-	doins mount-passthrough-jailed-utils.sh
-}
diff --git a/chromeos-base/mount-passthrough/mount-passthrough-0.0.2-r500.ebuild b/chromeos-base/mount-passthrough/mount-passthrough-0.0.2-r500.ebuild
new file mode 100644
index 0000000..f4504a1
--- /dev/null
+++ b/chromeos-base/mount-passthrough/mount-passthrough-0.0.2-r500.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="6cf85796b75e95c5a0caf2d07b803663762779f2"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "5cc3c784efa16690f19c0ffb5d86623972b4452b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk arc/mount-passthrough .gn"
+
+PLATFORM_SUBDIR="arc/mount-passthrough"
+
+inherit cros-workon platform
+
+DESCRIPTION="Mounts the specified directory with different owner UID and GID"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/mount-passthrough"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+COMMON_DEPEND="=sys-fs/fuse-2*
+	sys-libs/libcap:="
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}"
+
+src_install() {
+	dobin "${OUT}"/mount-passthrough
+	dobin mount-passthrough-jailed
+	dobin mount-passthrough-jailed-media
+	dobin mount-passthrough-jailed-play
+
+	insinto /usr/share/arc
+	doins mount-passthrough-jailed-utils.sh
+}
diff --git a/chromeos-base/mount-passthrough/mount-passthrough-9999.ebuild b/chromeos-base/mount-passthrough/mount-passthrough-9999.ebuild
index 9f380e8..57bf23d 100644
--- a/chromeos-base/mount-passthrough/mount-passthrough-9999.ebuild
+++ b/chromeos-base/mount-passthrough/mount-passthrough-9999.ebuild
@@ -19,7 +19,7 @@
 LICENSE="BSD-Google"
 KEYWORDS="~*"
 
-COMMON_DEPEND="sys-fs/fuse:=
+COMMON_DEPEND="=sys-fs/fuse-2*
 	sys-libs/libcap:="
 RDEPEND="${COMMON_DEPEND}"
 DEPEND="${COMMON_DEPEND}"
diff --git a/chromeos-base/mri_package/mri_package-0.0.1-r290.ebuild b/chromeos-base/mri_package/mri_package-0.0.1-r290.ebuild
deleted file mode 100644
index b5e1979..0000000
--- a/chromeos-base/mri_package/mri_package-0.0.1-r290.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 2019 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="16f6615fecc1f3ddcef1697bc7fafd1f34b3e080"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "9b0d8acf9fe935775132a5c3231a3dc32cbb08c6" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="common-mk media_perception .gn"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_OUTOFTREE_BUILD=1
-
-PLATFORM_SUBDIR="media_perception"
-
-inherit cros-workon platform udev user
-
-LIB_VERSION=72.0.0
-
-DESCRIPTION="Media perception service"
-SRC_URI="internal? ( gs://chromeos-localmirror-private/distfiles/${PN}-${LIB_VERSION}.tar.gz )"
-RESTRICT="mirror"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="internal"
-
-RDEPEND="
-	media-sound/adhd:=
-	>=sys-apps/dbus-1.0:=
-"
-DEPEND="${RDEPEND}"
-
-src_unpack() {
-	if use internal; then
-		unpack "${A}"
-	fi
-
-	platform_src_unpack
-}
-
-src_compile() {
-	if use internal; then
-		# Copy the library downloaded from chromeos-localmirror-private to the
-		# platform compile directory.
-		cp "${WORKDIR}"/librtanalytics.so "${OUT}" || die
-	fi
-
-	platform_src_compile
-}
-
-pkg_preinst() {
-	enewgroup rtanalytics
-	enewuser rtanalytics
-	enewgroup apex-access
-}
-
-src_install() {
-	insinto /etc/init/
-	doins "${FILESDIR}"/rtanalytics.conf
-
-	insinto /etc/dbus-1/system.d/
-	doins "${FILESDIR}"/org.chromium.MediaPerception.conf
-
-	insinto /usr/share/policy/
-	doins "${FILESDIR}"/rtanalytics.policy
-
-	udev_dorules "${FILESDIR}"/99-apex.rules
-}
diff --git a/chromeos-base/mri_package/mri_package-0.0.1-r320.ebuild b/chromeos-base/mri_package/mri_package-0.0.1-r320.ebuild
new file mode 100644
index 0000000..2e27cdd
--- /dev/null
+++ b/chromeos-base/mri_package/mri_package-0.0.1-r320.ebuild
@@ -0,0 +1,70 @@
+# Copyright 2019 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "07a6ba481226ffad8f526ba964a0979b85165e5b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="common-mk media_perception .gn"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_OUTOFTREE_BUILD=1
+
+PLATFORM_SUBDIR="media_perception"
+
+inherit cros-workon platform udev user
+
+LIB_VERSION=72.0.0
+
+DESCRIPTION="Media perception service"
+SRC_URI="internal? ( gs://chromeos-localmirror-private/distfiles/${PN}-${LIB_VERSION}.tar.gz )"
+RESTRICT="mirror"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="internal"
+
+RDEPEND="
+	media-sound/adhd:=
+	>=sys-apps/dbus-1.0:=
+"
+DEPEND="${RDEPEND}"
+
+src_unpack() {
+	if use internal; then
+		unpack "${A}"
+	fi
+
+	platform_src_unpack
+}
+
+src_compile() {
+	if use internal; then
+		# Copy the library downloaded from chromeos-localmirror-private to the
+		# platform compile directory.
+		cp "${WORKDIR}"/librtanalytics.so "${OUT}" || die
+	fi
+
+	platform_src_compile
+}
+
+pkg_preinst() {
+	enewgroup rtanalytics
+	enewuser rtanalytics
+	enewgroup apex-access
+}
+
+src_install() {
+	insinto /etc/init/
+	doins "${FILESDIR}"/rtanalytics.conf
+
+	insinto /etc/dbus-1/system.d/
+	doins "${FILESDIR}"/org.chromium.MediaPerception.conf
+
+	insinto /usr/share/policy/
+	doins "${FILESDIR}"/rtanalytics.policy
+
+	udev_dorules "${FILESDIR}"/99-apex.rules
+}
diff --git a/chromeos-base/mst_hub_updater/Manifest b/chromeos-base/mst_hub_updater/Manifest
deleted file mode 100644
index 715761e..0000000
--- a/chromeos-base/mst_hub_updater/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST mst_hub_updater-1.0.1.tar.gz 670687 BLAKE2B b2995fe9736a6c8e17180258ea9f35fd0743f4f7427827ab23a96d515c93816aedb806b47f0e9ae8dc55f6aa925d71ea53340a4f851b6f4578b5dea8e2eefef8 SHA512 16dda93d44b49cd99861bc6dbeb9ed4c1c4e9cebb6acec8c660a4f79455b7bd00db1dc29f3b142f59476f78ffe47ff92437653e2d510bbb46c0e61ffa5481eed
diff --git a/chromeos-base/mst_hub_updater/files/001-makefile-clang.patch b/chromeos-base/mst_hub_updater/files/001-makefile-clang.patch
deleted file mode 100644
index d854135..0000000
--- a/chromeos-base/mst_hub_updater/files/001-makefile-clang.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-diff --git a/CPISPPlugIn/Makefile b/CPISPPlugIn/Makefile
-index 12528c7..8658b22 100755
---- a/CPISPPlugIn/Makefile
-+++ b/CPISPPlugIn/Makefile
-@@ -12,7 +12,7 @@ DIR =$(notdir $(SRCS))
- OBJECTS_TAR = $(patsubst %cpp,%o,$(DIR))
- # Compiler flags
- 
--CXX = clang++
-+CXX ?= clang++
- CXXFLAGS += -I../CpComm/Comm_Export/ -I ../LinuxCommon -I../Tool_Common -Wall
- CXXFLAGS += -fPIC
- INSTALL_DIR=../ReleaseTool
-diff --git a/CPISPTool/Makefile b/CPISPTool/Makefile
-index 5131f80..d4946c7 100755
---- a/CPISPTool/Makefile
-+++ b/CPISPTool/Makefile
-@@ -6,7 +6,7 @@ INSTALL_DIR=../ReleaseTool
- SRCS = ISPTool.cpp CpRsString.cpp LinuxCommExport.cpp CpCommExport.cpp  CpIspExport.cpp LinuxIspExport.cpp \
- LinuxRsFuncBase.cpp CpRsFuncBase.cpp UnixParseArgs.cpp CpParseArgsBase.cpp
- 
--CXX=clang++
-+CXX ?= clang++
- CXXFLAGS += -I../CpComm/Comm_Export/ -I ../LinuxCommon -I../Tool_Common -I ./../CPISPPlugIn/CPISPCommon 
- 
- DIR =$(notdir $(SRCS))
-diff --git a/Comm_PlugIn/CommDevI2C/Makefile b/Comm_PlugIn/CommDevI2C/Makefile
-index 03d3353..c06103f 100755
---- a/Comm_PlugIn/CommDevI2C/Makefile
-+++ b/Comm_PlugIn/CommDevI2C/Makefile
-@@ -1,28 +1,28 @@
--TARGET=libDevI2C

--VPATH = CommDevI2C ./../CPDevComCommon

--SRCS = LinuxDevI2C.cpp LinuxDevI2CRw.cpp CpDeviceComBase.cpp CpDeviceCommExtern.cpp

--DIR =$(notdir $(SRCS))

--OBJECTS_TAR := $(patsubst %cpp,%o,$(DIR))

--

--# Compiler flags

--

--CXX = clang++

--CXXFLAGS +=  -I../../Tool_Common/RsCommon/ -I../CPDevComCommon -Wall

--CXXFLAGS += -fPIC

--CXXFLAGS += -D DEVI2C

--LDFLAGS = 

--INSTALL_DIR=../../ReleaseTool/Comm

--

--all : $(TARGET)

--%.o:%.cpp

--	$(CXX) $(CXXFLAGS) -c $<

--$(TARGET): $(OBJECTS_TAR)

--	$(CXX) -shared -fPIC -o $(TARGET).so $(OBJECTS_TAR) $(CXXFLAGS) $(LDFLAGS)

--	$(AR) -rcs $(TARGET).a $(OBJECTS_TAR)

--

--install:

--	install -m 755 $(TARGET).so $(INSTALL_DIR)

--	#install -m 755 $(TARGET).a $(INSTALL_DIR)

--

--clean:

--	rm -rf *.o $(TARGET).so $(TARGET).a

-+TARGET=libDevI2C
-+VPATH = CommDevI2C ./../CPDevComCommon
-+SRCS = LinuxDevI2C.cpp LinuxDevI2CRw.cpp CpDeviceComBase.cpp CpDeviceCommExtern.cpp
-+DIR =$(notdir $(SRCS))
-+OBJECTS_TAR := $(patsubst %cpp,%o,$(DIR))
-+
-+# Compiler flags
-+
-+CXX ?= clang++
-+CXXFLAGS +=  -I../../Tool_Common/RsCommon/ -I../CPDevComCommon -Wall
-+CXXFLAGS += -fPIC
-+CXXFLAGS += -D DEVI2C
-+LDFLAGS = 
-+INSTALL_DIR=../../ReleaseTool/Comm
-+
-+all : $(TARGET)
-+%.o:%.cpp
-+	$(CXX) $(CXXFLAGS) -c $<
-+$(TARGET): $(OBJECTS_TAR)
-+	$(CXX) -shared -fPIC -o $(TARGET).so $(OBJECTS_TAR) $(CXXFLAGS) $(LDFLAGS)
-+	$(AR) -rcs $(TARGET).a $(OBJECTS_TAR)
-+
-+install:
-+	install -m 755 $(TARGET).so $(INSTALL_DIR)
-+	#install -m 755 $(TARGET).a $(INSTALL_DIR)
-+
-+clean:
-+	rm -rf *.o $(TARGET).so $(TARGET).a
-diff --git a/CpComm/Makefile b/CpComm/Makefile
-index 50092e2..b081210 100755
---- a/CpComm/Makefile
-+++ b/CpComm/Makefile
-@@ -7,7 +7,7 @@ DIR =$(notdir $(SRCS))
- OBJECTS_TAR = $(patsubst %cpp,%o,$(DIR))
- # Compiler flags
- 
--CXX = clang++
-+CXX ?= clang++
- CXXFLAGS += -I../Comm_PlugIn/Comm_PlugIn_Export/CPComm_PlugIn_Define -I ../LinuxCommon -I../Tool_Common -Wall
- CXXFLAGS += -fPIC
- INSTALL_DIR=../ReleaseTool
diff --git a/chromeos-base/mst_hub_updater/mst_hub_updater-1.0.1-r3.ebuild b/chromeos-base/mst_hub_updater/mst_hub_updater-1.0.1-r3.ebuild
deleted file mode 120000
index eca3d0a..0000000
--- a/chromeos-base/mst_hub_updater/mst_hub_updater-1.0.1-r3.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-mst_hub_updater-1.0.1.ebuild
\ No newline at end of file
diff --git a/chromeos-base/mst_hub_updater/mst_hub_updater-1.0.1.ebuild b/chromeos-base/mst_hub_updater/mst_hub_updater-1.0.1.ebuild
deleted file mode 100644
index 6dc6415..0000000
--- a/chromeos-base/mst_hub_updater/mst_hub_updater-1.0.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 2019 The Chromium OS Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Firmware Updater for Realtek DP Multimedia Hub"
-SRC_URI="gs://chromeos-localmirror/distfiles/${P}.tar.gz"
-
-LICENSE="BSD-Realtek"
-SLOT="0"
-KEYWORDS="*"
-
-S="${WORKDIR}/RTIspSourceCodeLinux_V${PV}"
-
-MST_TOOL_INSTALL_PATH="/opt/google/display/mst_hub/tools"
-
-PATCHES=( "${FILESDIR}/001-makefile-clang.patch" )
-
-src_configure() {
-	cros_enable_cxx_exceptions
-}
-
-src_install() {
-	emake install
-	insinto "${MST_TOOL_INSTALL_PATH}"
-	doins -r ReleaseTool/*
-	chmod a+x "${D}/${MST_TOOL_INSTALL_PATH}/ISPTool" || die
-}
diff --git a/chromeos-base/mtpd/mtpd-0.0.1-r933.ebuild b/chromeos-base/mtpd/mtpd-0.0.1-r933.ebuild
deleted file mode 100644
index 029ece1..0000000
--- a/chromeos-base/mtpd/mtpd-0.0.1-r933.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "8f376208dea965d63708243a36895e4e7bd272b0" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="common-mk mtpd .gn"
-PLATFORM_SUBDIR="mtpd"
-PLATFORM_NATIVE_TEST="yes"
-
-inherit cros-workon platform systemd user
-
-DESCRIPTION="MTP daemon for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/mtpd"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="-asan +seccomp systemd test"
-
-COMMON_DEPEND="
-	dev-libs/protobuf:=
-	media-libs/libmtp:=
-	virtual/udev
-"
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/system_api:="
-
-src_install() {
-	dosbin "${OUT}"/mtpd
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	use seccomp && newins "mtpd-seccomp-${ARCH}.policy" mtpd-seccomp.policy
-
-	# Install the init scripts.
-	if use systemd; then
-		systemd_dounit mtpd.service
-		systemd_enable_service system-services.target mtpd.service
-	else
-		insinto /etc/init
-		doins mtpd.conf
-	fi
-
-	# Install D-Bus config file.
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.Mtpd.conf
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/mtpd_testrunner"
-}
-
-pkg_preinst() {
-	enewuser "mtp"
-	enewgroup "mtp"
-}
diff --git a/chromeos-base/mtpd/mtpd-0.0.1-r961.ebuild b/chromeos-base/mtpd/mtpd-0.0.1-r961.ebuild
new file mode 100644
index 0000000..d1f48ca
--- /dev/null
+++ b/chromeos-base/mtpd/mtpd-0.0.1-r961.ebuild
@@ -0,0 +1,63 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "ddd6f34f68948ae3544e2fb9195932fc8c44392c" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="common-mk mtpd .gn"
+PLATFORM_SUBDIR="mtpd"
+PLATFORM_NATIVE_TEST="yes"
+
+inherit cros-workon platform systemd user
+
+DESCRIPTION="MTP daemon for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/mtpd"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="-asan +seccomp systemd test"
+
+COMMON_DEPEND="
+	dev-libs/protobuf:=
+	media-libs/libmtp:=
+	virtual/udev
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/system_api:="
+
+src_install() {
+	dosbin "${OUT}"/mtpd
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	use seccomp && newins "mtpd-seccomp-${ARCH}.policy" mtpd-seccomp.policy
+
+	# Install the init scripts.
+	if use systemd; then
+		systemd_dounit mtpd.service
+		systemd_enable_service system-services.target mtpd.service
+	else
+		insinto /etc/init
+		doins mtpd.conf
+	fi
+
+	# Install D-Bus config file.
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.Mtpd.conf
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/mtpd_testrunner"
+}
+
+pkg_preinst() {
+	enewuser "mtp"
+	enewgroup "mtp"
+}
diff --git a/chromeos-base/ndproxyd/ndproxyd-0.0.1-r233.ebuild b/chromeos-base/ndproxyd/ndproxyd-0.0.1-r233.ebuild
deleted file mode 100644
index a907d09..0000000
--- a/chromeos-base/ndproxyd/ndproxyd-0.0.1-r233.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="c8356149dd3addec8ddef84545cf8a9dc8530f01"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "ae86a7d3ab814f4089a041bdf224a46af7c4b4bf" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk patchpanel .gn"
-
-PLATFORM_SUBDIR="patchpanel/ndproxyd"
-
-inherit cros-workon libchrome platform
-
-DESCRIPTION="NDProxy daemon"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/network/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-COMMON_DEPEND="
-	dev-libs/protobuf:=
-	chromeos-base/libbrillo:=
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	!chromeos-base/arc-networkd-ndproxyd
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-"
-
-src_install() {
-	dobin "${OUT}"/ndproxyd
-}
-
diff --git a/chromeos-base/ndproxyd/ndproxyd-0.0.1-r284.ebuild b/chromeos-base/ndproxyd/ndproxyd-0.0.1-r284.ebuild
new file mode 100644
index 0000000..bc99d05
--- /dev/null
+++ b/chromeos-base/ndproxyd/ndproxyd-0.0.1-r284.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="ff2cbb8c87e44b3e79beb4a045db08af89ce091f"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "199dfc58f8a75896a8500c6a738774ec7478f797" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk patchpanel .gn"
+
+PLATFORM_SUBDIR="patchpanel/ndproxyd"
+
+inherit cros-workon libchrome platform
+
+DESCRIPTION="NDProxy daemon"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/network/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+COMMON_DEPEND="
+	dev-libs/protobuf:=
+	chromeos-base/libbrillo:=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	!chromeos-base/arc-networkd-ndproxyd
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+"
+
+src_install() {
+	dobin "${OUT}"/ndproxyd
+}
+
diff --git a/chromeos-base/nnapi/files/00004-libfmq-page-size.patch b/chromeos-base/nnapi/files/00004-libfmq-page-size.patch
index 4d493dd..a72bdf5 100644
--- a/chromeos-base/nnapi/files/00004-libfmq-page-size.patch
+++ b/chromeos-base/nnapi/files/00004-libfmq-page-size.patch
@@ -1,16 +1,16 @@
 diff --git a/platform2/aosp/system/libfmq/include/fmq/MessageQueueBase.h b/platform2/aosp/system/libfmq/include/fmq/MessageQueueBase.h
-index 0cb83a6..0df8104 100644
+index d24dc7c..aab6b3e 100644
 --- a/platform2/aosp/system/libfmq/include/fmq/MessageQueueBase.h
 +++ b/platform2/aosp/system/libfmq/include/fmq/MessageQueueBase.h
-@@ -19,6 +19,7 @@
+@@ -20,6 +20,7 @@
  #include <cutils/ashmem.h>
  #include <fmq/EventFlag.h>
  #include <sys/mman.h>
 +#include <unistd.h>
+ #include <sys/user.h>
  #include <utils/Log.h>
  #include <utils/SystemClock.h>
- #include <atomic>
-@@ -231,6 +232,10 @@ struct MessageQueueBase {
+@@ -244,6 +245,10 @@ struct MessageQueueBase {
      struct MemRegion {
          MemRegion() : MemRegion(nullptr, 0) {}
  
@@ -21,30 +21,27 @@
          MemRegion(T* base, size_t size) : address(base), length(size) {}
  
          MemRegion& operator=(const MemRegion& other) {
-@@ -576,7 +581,9 @@ void MessageQueueBase<MQDescriptorType, T, flavor>::initMemory(bool resetPointer
-     const auto& grantors = mDesc->grantors();
-     for (const auto& grantor : grantors) {
-         if (hardware::details::isAlignedToWordBoundary(grantor.offset) == false) {
-+#ifdef __BIONIC__
-             __assert(__FILE__, __LINE__, "Grantor offsets need to be aligned");
-+#endif
-         }
-     }
- 
-@@ -661,9 +668,10 @@ MessageQueueBase<MQDescriptorType, T, flavor>::MessageQueueBase(size_t numElemen
-      * kQueueSizeBytes needs to be aligned to word boundary so that all offsets
+@@ -674,15 +679,16 @@ MessageQueueBase<MQDescriptorType, T, flavor>::MessageQueueBase(size_t numElemen
       * in the grantorDescriptor will be word aligned.
       */
+     size_t kAshmemSizePageAligned;
 +    size_t page_size = static_cast<size_t>(sysconf(_SC_PAGE_SIZE));
-     size_t kAshmemSizePageAligned = (hardware::details::alignToWordBoundary(kQueueSizeBytes) +
--                                     kMetaDataSize + PAGE_SIZE - 1) &
--                                    ~(PAGE_SIZE - 1);
-+                                     kMetaDataSize + page_size - 1) &
-+                                    ~(page_size - 1);
+     if (bufferFd != -1) {
+         // Allocate read counter and write counter only. User-supplied memory will be used for the
+         // ringbuffer.
+-        kAshmemSizePageAligned = (kMetaDataSize + PAGE_SIZE - 1) & ~(PAGE_SIZE - 1);
++        kAshmemSizePageAligned = (kMetaDataSize + page_size - 1) & ~(page_size - 1);
+     } else {
+         // Allocate ringbuffer, read counter and write counter.
+         kAshmemSizePageAligned = (hardware::details::alignToWordBoundary(kQueueSizeBytes) +
+-                                  kMetaDataSize + PAGE_SIZE - 1) &
+-                                 ~(PAGE_SIZE - 1);
++                                  kMetaDataSize + page_size - 1) &
++                                 ~(page_size - 1);
+     }
  
      /*
-      * Create an ashmem region to map the memory for the ringbuffer,
-@@ -1172,7 +1180,8 @@ void* MessageQueueBase<MQDescriptorType, T, flavor>::mapGrantorDescr(uint32_t gr
+@@ -1236,7 +1242,8 @@ void* MessageQueueBase<MQDescriptorType, T, flavor>::mapGrantorDescr(uint32_t gr
      /*
       * Offset for mmap must be a multiple of PAGE_SIZE.
       */
@@ -54,7 +51,7 @@
      int mapLength = grantors[grantorIdx].offset - mapOffset + grantors[grantorIdx].extent;
  
      void* address = mmap(0, mapLength, PROT_READ | PROT_WRITE, MAP_SHARED, handle->data[fdIndex],
-@@ -1192,7 +1201,8 @@ void MessageQueueBase<MQDescriptorType, T, flavor>::unmapGrantorDescr(void* addr
+@@ -1256,7 +1263,8 @@ void MessageQueueBase<MQDescriptorType, T, flavor>::unmapGrantorDescr(void* addr
          return;
      }
  
diff --git a/chromeos-base/nnapi/files/00009-libutils-timer-cast.patch b/chromeos-base/nnapi/files/00009-libutils-timer-cast.patch
index 488adfa..9ca3664 100644
--- a/chromeos-base/nnapi/files/00009-libutils-timer-cast.patch
+++ b/chromeos-base/nnapi/files/00009-libutils-timer-cast.patch
@@ -1,15 +1,13 @@
-Fix signed / unsigned comparison warning as error.
-
 diff --git a/platform2/aosp/system/core/libutils/Timers.cpp b/platform2/aosp/system/core/libutils/Timers.cpp
-index fd3f4a9..7a98896 100644
---- a/Timers.cpp
-+++ b/Timers.cpp
-@@ -28,7 +28,7 @@
- static constexpr size_t clock_id_max = 5;
-
+index 4cfac57..5b1c0bc 100644
+--- a/platform2/aosp/system/core/libutils/Timers.cpp
++++ b/platform2/aosp/system/core/libutils/Timers.cpp
+@@ -23,7 +23,7 @@
+ #include <android-base/macros.h>
+ #include <utils/Log.h>
+ 
+-static constexpr size_t clock_id_max = 5;
++static constexpr int clock_id_max = 5;
+ 
  static void checkClockId(int clock) {
--    if (clock < 0 || clock >= clock_id_max) abort();
-+    if (clock < 0 || clock >= static_cast<int>(clock_id_max)) abort();
- }
-
- #if defined(__linux__)
\ No newline at end of file
+     LOG_ALWAYS_FATAL_IF(clock < 0 || clock >= clock_id_max, "invalid clock id");
diff --git a/chromeos-base/nnapi/nnapi-0.0.2-r3.ebuild b/chromeos-base/nnapi/nnapi-0.0.2-r3.ebuild
deleted file mode 100644
index 9184333..0000000
--- a/chromeos-base/nnapi/nnapi-0.0.2-r3.ebuild
+++ /dev/null
@@ -1,176 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("a03802ee1856bd49ee34754519314e57c60afed6" "23e2bf511667b4fa5859812a4e7945c8638f6603" "f0d85f116fd745ed927bca0102a1040629e528c9" "c92d0857816b8694a74ba1a47b754563d4452f65" "b7f8cf0f0beab62bc5a391226ebd835c2fe377dc" "8e369832671de86e05cbbd3eeb7ddfe7df95f1ec" "6b79fa280312109216ce8b3a4893f266775cddc2" "e386a40d816e794c12040936608d252ab96077a7")
-CROS_WORKON_TREE=("eaed4f3b0a8201ef3951bf1960728885ff99e772" "64b6839ee0c350c6387157eb82ce359c719646f1" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "d0c498cd8aacda36a50685194a4f11a5538c36ec" "84e5da480e7ca644dd680845aadd3c35eef39972" "60d005eccb2f9431ea99a17d8637375a9e5e387d" "4007f79bbd89b30be582cb0cdb1292ce377f34e1" "077dba53acf2e9a7a56288ee75d515afa7541b94" "bcea173391bb1aa3b0978ecc33a27d447e59eb18" "6a8c1be1913e7a9ccf5141a072ad595a1e9d3add")
-inherit cros-constants
-
-CROS_WORKON_MANUAL_UPREV="1"
-
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform2"
-	"aosp/platform/frameworks/native"
-	"aosp/platform/system/core/libcutils"
-	"aosp/platform/system/core/libutils"
-	"aosp/platform/system/libbase"
-	"aosp/platform/system/libfmq"
-	"aosp/platform/system/libhidl"
-	"aosp/platform/system/logging"
-)
-CROS_WORKON_REPO=(
-	"${CROS_GIT_HOST_URL}"
-	"${CROS_GIT_HOST_URL}"
-	"${CROS_GIT_HOST_URL}"
-	"${CROS_GIT_HOST_URL}"
-	"${CROS_GIT_HOST_URL}"
-	"${CROS_GIT_HOST_URL}"
-	"${CROS_GIT_HOST_URL}"
-	"${CROS_GIT_HOST_URL}"
-)
-CROS_WORKON_LOCALNAME=(
-	"platform2"
-	"aosp/frameworks/native"
-	"aosp/system/core/libcutils"
-	"aosp/system/core/libutils"
-	"aosp/system/libbase"
-	"aosp/system/libfmq"
-	"aosp/system/libhidl"
-	"aosp/system/logging"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}/platform2"
-	"${S}/platform2/aosp/frameworks/native"
-	"${S}/platform2/aosp/system/core/libcutils"
-	"${S}/platform2/aosp/system/core/libutils"
-	"${S}/platform2/aosp/system/libbase"
-	"${S}/platform2/aosp/system/libfmq"
-	"${S}/platform2/aosp/system/libhidl"
-	"${S}/platform2/aosp/system/logging"
-)
-CROS_WORKON_SUBTREE=(
-	"common-mk nnapi .gn"
-	""
-	""
-	""
-	""
-	""
-	""
-	""
-)
-
-PLATFORM_SUBDIR="nnapi"
-
-inherit cros-workon platform
-
-DESCRIPTION="Chrome OS support utils for Android Neural Network API"
-HOMEPAGE="https://developer.android.com/ndk/guides/neuralnetworks"
-
-LICENSE="BSD-Google  Apache-2.0"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-"
-
-DEPEND="
-	${RDEPEND}
-"
-
-PATCHES=(
-	"${FILESDIR}/00001-libbase-fix-stderr-logging.patch"
-	"${FILESDIR}/00002-libhidl-callstack.patch"
-	"${FILESDIR}/00003-libutils-callstack.patch"
-	"${FILESDIR}/00004-libfmq-page-size.patch"
-	"${FILESDIR}/00005-libcutils-ashmemtests.patch"
-	"${FILESDIR}/00006-libhidl-cast-interface.patch"
-	"${FILESDIR}/00007-libbase-get-property-from-envvar.patch"
-	"${FILESDIR}/00008-libutils-memory-leak.patch"
-	"${FILESDIR}/00009-libutils-timer-cast.patch"
-	"${FILESDIR}/00010-libutils-clock-test.patch"
-)
-
-src_prepare() {
-	# The workdir is platform2/nnapi - we need to pop up one level in the stack
-	# to apply our patches.
-	pushd .. || exit
-	eapply -p2 "${FILESDIR}/00001-libbase-fix-stderr-logging.patch"
-	eapply -p2 "${FILESDIR}/00002-libhidl-callstack.patch"
-	eapply -p2 "${FILESDIR}/00003-libutils-callstack.patch"
-	eapply -p2 "${FILESDIR}/00004-libfmq-page-size.patch"
-	eapply -p2 "${FILESDIR}/00005-libcutils-ashmemtests.patch"
-	eapply -p2 "${FILESDIR}/00006-libhidl-cast-interface.patch"
-	eapply -p2 "${FILESDIR}/00007-libbase-get-property-from-envvar.patch"
-	eapply -p2 "${FILESDIR}/00008-libutils-memory-leak.patch"
-	eapply -p2 "${FILESDIR}/00009-libutils-timer-cast.patch"
-	eapply -p2 "${FILESDIR}/00010-libutils-clock-test.patch"
-	popd || exit
-
-	eapply_user
-}
-
-src_install() {
-	einfo "Installing Android headers."
-	insinto /usr/include/aosp
-	doins -r includes/*
-	doins -r ../aosp/frameworks/native/libs/arect/include/*
-	doins -r ../aosp/frameworks/native/libs/nativewindow/include/*
-	doins -r ../aosp/system/core/libcutils/include/*
-	doins -r ../aosp/system/core/libutils/include/*
-	doins -r ../aosp/system/libbase/include/*
-	doins -r ../aosp/system/libfmq/include/*
-	doins -r ../aosp/system/libfmq/base/*
-	doins -r ../aosp/system/libhidl/base/include/*
-	doins -r ../aosp/system/libhidl/libhidlmemory/include/*
-	doins -r ../aosp/system/logging/liblog/include/*
-	# Selectively install one off headers
-	insinto /usr/include/aosp/android
-	doins ../aosp/frameworks/native/include/android/sharedmem.h
-
-	einfo "Installing the shared library."
-	dolib.so "${OUT}/lib/libnnapi-support.so"
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "${OUT}/obj/nnapi/libnnapi-support.pc"
-}
-
-platform_pkg_test() {
-	local tests=(
-		base cutils fmq hidl hwbuf log utils
-	)
-
-	# When running in qemu, these tests freeze the emulator when hitting
-	# EventFlag::wake from libfmq. The error printed is:
-	# Error in event flag wake attempt: Function not implemented
-	# This is a known issue, see:
-	# https://chromium.googlesource.com/chromiumos/docs/+/master/testing/running_unit_tests.md#caveats
-	local qemu_gtest_excl_filter="-"
-	qemu_gtest_excl_filter+="BlockingReadWrites.SmallInputTest1:"
-
-	local gtest_excl_filter="-"
-	if use asan; then
-		# The sharedbuffer tests deliberately allocate too much memory:
-		# AddressSanitizer: requested allocation size 0xfffffffffffffffe
-		# We can't use allocator_may_return_null=1 as it prints a warning that the
-		# toolchain considers an error.
-		gtest_excl_filter+="SharedBufferTest.alloc_null:"
-		gtest_excl_filter+="SharedBufferTest.editResize_null:"
-		gtest_excl_filter+="SharedBufferTest.editResize_death:"
-
-		# ForkSafe leaves some threads running which results in warning printed:
-		# ==26==Running thread 23 was not suspended. False leaks are possible.
-		# Toolchain considers anything in the asan output as an error.
-		gtest_excl_filter+="logging.ForkSafe:"
-
-		# The queue created in this test cannot be deleted without crashing in
-		# the hidl library. lsan_suppressions doesn't work due to the lack of
-		# /usr/bin/llvm-symbolizer, so just exclude the test.
-		gtest_excl_filter+="BadQueueConfig.QueueSizeTooLarge:"
-	fi
-
-	local test_target
-	for test_target in "${tests[@]}"; do
-		platform_test "run" "${OUT}/lib${test_target}_testrunner" "0" "${gtest_excl_filter}" "${qemu_gtest_excl_filter}"
-	done
-}
diff --git a/chromeos-base/nnapi/nnapi-0.0.2-r5.ebuild b/chromeos-base/nnapi/nnapi-0.0.2-r5.ebuild
new file mode 100644
index 0000000..39a9cc1
--- /dev/null
+++ b/chromeos-base/nnapi/nnapi-0.0.2-r5.ebuild
@@ -0,0 +1,183 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("6432a85a94d15c4128e64b040ccad970d3aa5c90" "8300206169b81cf8f6600886bc1f5a86e62ace98" "e50a8af67660544144c9e572d563c0c6ae8a8ddf" "02110e5625e05439f6008a01ba40e812cf1c03df" "2cba90a13babf861385364d191710eadab30a50d" "88e224a8203eea9ed9fa38a0e4c0260ecd9b69e7" "471609b486435ebb3b1136dfe24fca24a48c74ff" "47a22f5a8ab194749f2e4faedff997dab344534f")
+CROS_WORKON_TREE=("a3d79a5641e6cda7da95a9316f5d29998cc84865" "f735b73d41b17c5c309f6dc632a9491131208d47" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "7b1902bfd171c628068c91fc41e253d0c08df363" "050ba80727394b4c61589662e7e89333a0022cd9" "81192a924ab8c0627a67df8adaf8e6f68bd1d19b" "3628c32fe8388012af3c4322912f5b3bfb7c16fa" "cabdebe334f485c590ae0279805a523ec5021a3d" "19196bf22a93d302a71314ea2ee52f398d486b0a" "21bb97d372054e0717410c37ebf2528fc1afb8fa")
+inherit cros-constants
+
+CROS_WORKON_MANUAL_UPREV="1"
+
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform2"
+	"aosp/platform/frameworks/native"
+	"aosp/platform/system/core/libcutils"
+	"aosp/platform/system/core/libutils"
+	"aosp/platform/system/libbase"
+	"aosp/platform/system/libfmq"
+	"aosp/platform/system/libhidl"
+	"aosp/platform/system/logging"
+)
+CROS_WORKON_REPO=(
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_HOST_URL}"
+	"${CROS_GIT_HOST_URL}"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform2"
+	"aosp/frameworks/native"
+	"aosp/system/core/libcutils"
+	"aosp/system/core/libutils"
+	"aosp/system/libbase"
+	"aosp/system/libfmq"
+	"aosp/system/libhidl"
+	"aosp/system/logging"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}/platform2"
+	"${S}/platform2/aosp/frameworks/native"
+	"${S}/platform2/aosp/system/core/libcutils"
+	"${S}/platform2/aosp/system/core/libutils"
+	"${S}/platform2/aosp/system/libbase"
+	"${S}/platform2/aosp/system/libfmq"
+	"${S}/platform2/aosp/system/libhidl"
+	"${S}/platform2/aosp/system/logging"
+)
+CROS_WORKON_SUBTREE=(
+	"common-mk nnapi .gn"
+	""
+	""
+	""
+	""
+	""
+	""
+	""
+)
+
+PLATFORM_SUBDIR="nnapi"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS support utils for Android Neural Network API"
+HOMEPAGE="https://developer.android.com/ndk/guides/neuralnetworks"
+
+LICENSE="BSD-Google  Apache-2.0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+"
+
+DEPEND="
+	${RDEPEND}
+"
+
+PATCHES=(
+	"${FILESDIR}/00001-libbase-fix-stderr-logging.patch"
+	"${FILESDIR}/00002-libhidl-callstack.patch"
+	"${FILESDIR}/00003-libutils-callstack.patch"
+	"${FILESDIR}/00004-libfmq-page-size.patch"
+	"${FILESDIR}/00005-libcutils-ashmemtests.patch"
+	"${FILESDIR}/00006-libhidl-cast-interface.patch"
+	"${FILESDIR}/00007-libbase-get-property-from-envvar.patch"
+	"${FILESDIR}/00008-libutils-memory-leak.patch"
+	"${FILESDIR}/00009-libutils-timer-cast.patch"
+	"${FILESDIR}/00010-libutils-clock-test.patch"
+)
+
+src_prepare() {
+	# The workdir is platform2/nnapi - we need to pop up one level in the stack
+	# to apply our patches.
+	pushd .. || exit
+	eapply -p2 "${FILESDIR}/00001-libbase-fix-stderr-logging.patch"
+	eapply -p2 "${FILESDIR}/00002-libhidl-callstack.patch"
+	eapply -p2 "${FILESDIR}/00003-libutils-callstack.patch"
+	eapply -p2 "${FILESDIR}/00004-libfmq-page-size.patch"
+	eapply -p2 "${FILESDIR}/00005-libcutils-ashmemtests.patch"
+	eapply -p2 "${FILESDIR}/00006-libhidl-cast-interface.patch"
+	eapply -p2 "${FILESDIR}/00007-libbase-get-property-from-envvar.patch"
+	eapply -p2 "${FILESDIR}/00008-libutils-memory-leak.patch"
+	eapply -p2 "${FILESDIR}/00009-libutils-timer-cast.patch"
+	eapply -p2 "${FILESDIR}/00010-libutils-clock-test.patch"
+	popd || exit
+
+	eapply_user
+}
+
+src_install() {
+	einfo "Installing Android headers."
+	insinto /usr/include/aosp
+	doins -r includes/*
+	doins -r ../aosp/frameworks/native/libs/arect/include/*
+	doins -r ../aosp/frameworks/native/libs/nativewindow/include/*
+	doins -r ../aosp/system/core/libcutils/include/*
+	doins -r ../aosp/system/core/libutils/include/*
+	doins -r ../aosp/system/libbase/include/*
+	doins -r ../aosp/system/libfmq/include/*
+	doins -r ../aosp/system/libfmq/base/*
+	doins -r ../aosp/system/libhidl/base/include/*
+	doins -r ../aosp/system/libhidl/libhidlmemory/include/*
+	doins -r ../aosp/system/logging/liblog/include/*
+	# Selectively install one off headers
+	insinto /usr/include/aosp/android
+	doins ../aosp/frameworks/native/include/android/sharedmem.h
+
+	einfo "Installing the shared library."
+	dolib.so "${OUT}/lib/libnnapi-support.so"
+
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "${OUT}/obj/nnapi/libnnapi-support.pc"
+}
+
+platform_pkg_test() {
+	local tests=(
+		base cutils fmq hidl hwbuf log utils
+	)
+
+	# When running in qemu, these tests freeze the emulator when hitting
+	# EventFlag::wake from libfmq. The error printed is:
+	# Error in event flag wake attempt: Function not implemented
+	# This is a known issue, see:
+	# https://chromium.googlesource.com/chromiumos/docs/+/master/testing/running_unit_tests.md#caveats
+	local qemu_gtest_excl_filter="-"
+	qemu_gtest_excl_filter+="BlockingReadWrites.SmallInputTest1:"
+
+	local gtest_excl_filter="-"
+	if use asan; then
+		# The sharedbuffer tests deliberately allocate too much memory:
+		# AddressSanitizer: requested allocation size 0xfffffffffffffffe
+		# We can't use allocator_may_return_null=1 as it prints a warning that the
+		# toolchain considers an error.
+		gtest_excl_filter+="SharedBufferTest.alloc_null:"
+		gtest_excl_filter+="SharedBufferTest.alloc_big:"
+		gtest_excl_filter+="SharedBufferTest.alloc_max:"
+		gtest_excl_filter+="SharedBufferTest.editResize_null:"
+		gtest_excl_filter+="SharedBufferTest.editResize_death:"
+
+		# These tests expects an exit before the memory is cleaned up,
+		# so asan picks this up as a leak, but it's intentional.
+		gtest_excl_filter+="StrongPointer*.AssertStrongRefExists:"
+		gtest_excl_filter+="RefBase.AssertWeakRefExistsDeath:"
+
+		# ForkSafe leaves some threads running which results in warning printed:
+		# ==26==Running thread 23 was not suspended. False leaks are possible.
+		# Toolchain considers anything in the asan output as an error.
+		gtest_excl_filter+="logging.ForkSafe:"
+
+		# The queue created in this test cannot be deleted without crashing in
+		# the hidl library. lsan_suppressions doesn't work due to the lack of
+		# /usr/bin/llvm-symbolizer, so just exclude the test.
+		gtest_excl_filter+="BadQueueConfig.QueueSizeTooLarge:"
+	fi
+
+	local test_target
+	for test_target in "${tests[@]}"; do
+		platform_test "run" "${OUT}/lib${test_target}_testrunner" "0" "${gtest_excl_filter}" "${qemu_gtest_excl_filter}"
+	done
+}
diff --git a/chromeos-base/nnapi/nnapi-9999.ebuild b/chromeos-base/nnapi/nnapi-9999.ebuild
index 19d5132..73c5a2c 100644
--- a/chromeos-base/nnapi/nnapi-9999.ebuild
+++ b/chromeos-base/nnapi/nnapi-9999.ebuild
@@ -57,6 +57,16 @@
 	""
 	""
 )
+CROS_WORKON_EGIT_BRANCH=(
+	"main"
+	"master"
+	"master"
+	"master"
+	"master"
+	"master"
+	"master"
+	"master"
+)
 
 PLATFORM_SUBDIR="nnapi"
 
@@ -153,9 +163,16 @@
 		# We can't use allocator_may_return_null=1 as it prints a warning that the
 		# toolchain considers an error.
 		gtest_excl_filter+="SharedBufferTest.alloc_null:"
+		gtest_excl_filter+="SharedBufferTest.alloc_big:"
+		gtest_excl_filter+="SharedBufferTest.alloc_max:"
 		gtest_excl_filter+="SharedBufferTest.editResize_null:"
 		gtest_excl_filter+="SharedBufferTest.editResize_death:"
 
+		# These tests expects an exit before the memory is cleaned up,
+		# so asan picks this up as a leak, but it's intentional.
+		gtest_excl_filter+="StrongPointer*.AssertStrongRefExists:"
+		gtest_excl_filter+="RefBase.AssertWeakRefExistsDeath:"
+
 		# ForkSafe leaves some threads running which results in warning printed:
 		# ==26==Running thread 23 was not suspended. False leaks are possible.
 		# Toolchain considers anything in the asan output as an error.
diff --git a/chromeos-base/ocr/ocr-0.0.1-r66.ebuild b/chromeos-base/ocr/ocr-0.0.1-r66.ebuild
deleted file mode 100644
index 8600e92..0000000
--- a/chromeos-base/ocr/ocr-0.0.1-r66.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e3d4b675a41bab4b0a7d7f2cc58a3113f54af7fd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="common-mk ocr .gn"
-CROS_WORKON_OUTOFTREE_BUILD=1
-
-PLATFORM_SUBDIR="ocr"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Optical Character Recognition service for Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/ocr/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-COMMON_DEPEND="
-	app-text/tesseract:=
-"
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/system_api:=
-"
-
-pkg_preinst() {
-	enewuser ocr_service
-	enewgroup ocr_service
-}
-
-src_install() {
-	dobin "${OUT}"/ocr_service
-
-	dobin "${OUT}"/ocr_tool
-
-	# Install upstart configuration.
-	insinto /etc/init
-	doins init/ocr_service.conf
-
-	# Install D-Bus configuration file.
-	insinto /etc/dbus-1/system.d
-	doins dbus_permissions/org.chromium.OpticalCharacterRecognition.conf
-
-	# Install D-Bus service activation configuration.
-	insinto /usr/share/dbus-1/system-services
-	doins dbus_permissions/org.chromium.OpticalCharacterRecognition.service
-}
-
-platform_pkg_test() {
-	local tests=(
-		"ocr_service_test"
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/ocr/ocr-0.0.1-r93.ebuild b/chromeos-base/ocr/ocr-0.0.1-r93.ebuild
new file mode 100644
index 0000000..924f21d
--- /dev/null
+++ b/chromeos-base/ocr/ocr-0.0.1-r93.ebuild
@@ -0,0 +1,68 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7a4ade5fca3b0a52f9342ae6884dbdded65e4d9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="common-mk ocr .gn"
+CROS_WORKON_OUTOFTREE_BUILD=1
+
+PLATFORM_SUBDIR="ocr"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Optical Character Recognition service for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/ocr/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+COMMON_DEPEND="
+	app-text/tesseract:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/system_api:=
+"
+
+pkg_preinst() {
+	enewuser ocr_service
+	enewgroup ocr_service
+}
+
+src_install() {
+	dobin "${OUT}"/ocr_service
+
+	dobin "${OUT}"/ocr_tool
+
+	# Install upstart configuration.
+	insinto /etc/init
+	doins init/ocr_service.conf
+
+	# Install D-Bus configuration file.
+	insinto /etc/dbus-1/system.d
+	doins dbus_permissions/org.chromium.OpticalCharacterRecognition.conf
+
+	# Install D-Bus service activation configuration.
+	insinto /usr/share/dbus-1/system-services
+	doins dbus_permissions/org.chromium.OpticalCharacterRecognition.service
+}
+
+platform_pkg_test() {
+	local tests=(
+		"ocr_service_test"
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/oobe_config/oobe_config-0.0.1-r461.ebuild b/chromeos-base/oobe_config/oobe_config-0.0.1-r461.ebuild
deleted file mode 100644
index b51baab..0000000
--- a/chromeos-base/oobe_config/oobe_config-0.0.1-r461.ebuild
+++ /dev/null
@@ -1,86 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "7baa8fedddc9a906490da6057fd2cf6c54eb6207" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk oobe_config metrics .gn"
-
-PLATFORM_SUBDIR="oobe_config"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Provides utilities to save and restore OOBE config."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/oobe_config/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="tpm tpm2"
-REQUIRED_USE="?? ( tpm tpm2 )"
-
-COMMMON_DEPEND="
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	sys-apps/dbus:=
-"
-RDEPEND="${COMMMON_DEPEND}"
-DEPEND="
-	${COMMMON_DEPEND}
-	chromeos-base/power_manager-client:=
-	chromeos-base/system_api:=
-"
-
-pkg_preinst() {
-	enewuser "oobe_config_save"
-	enewuser "oobe_config_restore"
-	enewgroup "oobe_config_save"
-	enewgroup "oobe_config_restore"
-}
-
-src_install() {
-	dosbin "${OUT}"/rollback_prepare_save
-	dosbin "${OUT}"/oobe_config_save
-	dosbin "${OUT}"/oobe_config_restore
-	dosbin "${OUT}"/rollback_finish_restore
-
-	insinto /etc/dbus-1/system.d
-	doins etc/dbus-1/org.chromium.OobeConfigRestore.conf
-
-	insinto /etc/init
-	doins etc/init/oobe_config_restore.conf
-	doins etc/init/oobe_config_save.conf
-	if use tpm2; then
-		sed -i 's/and started tcsd//' \
-			"${D}/etc/init/oobe_config_restore.conf" ||
-			die "Can't remove upstart dependency on tcsd"
-
-		sed -i 's/-b \/run\/tcsd//' \
-			"${D}/etc/init/oobe_config_restore.conf" ||
-			die "Can't remove /run/tcsd bind mount"
-
-		sed -i 's/-b \/run\/tcsd//' \
-			"${D}/etc/init/oobe_config_save.conf" ||
-			die "Can't remove /run/tcsd bind mount"
-	fi
-
-	insinto /usr/share/policy
-	newins seccomp_filters/oobe_config_restore-seccomp-"${ARCH}".policy \
-		oobe_config_restore-seccomp.policy
-	newins seccomp_filters/oobe_config_save-seccomp-"${ARCH}".policy \
-		oobe_config_save-seccomp.policy
-}
-
-platform_pkg_test() {
-	local tests=(
-		oobe_config_test
-	)
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/oobe_config/oobe_config-0.0.1-r515.ebuild b/chromeos-base/oobe_config/oobe_config-0.0.1-r515.ebuild
new file mode 100644
index 0000000..48b3a34
--- /dev/null
+++ b/chromeos-base/oobe_config/oobe_config-0.0.1-r515.ebuild
@@ -0,0 +1,89 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "cb36847706f93a8c9e145e491e53b2e901931aac" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk oobe_config metrics .gn"
+
+PLATFORM_SUBDIR="oobe_config"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Provides utilities to save and restore OOBE config."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/oobe_config/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="tpm tpm_dynamic tpm2"
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
+
+COMMMON_DEPEND="
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	sys-apps/dbus:=
+"
+RDEPEND="${COMMMON_DEPEND}"
+DEPEND="
+	${COMMMON_DEPEND}
+	chromeos-base/power_manager-client:=
+	chromeos-base/system_api:=
+"
+
+pkg_preinst() {
+	enewuser "oobe_config_save"
+	enewuser "oobe_config_restore"
+	enewgroup "oobe_config_save"
+	enewgroup "oobe_config_restore"
+}
+
+src_install() {
+	dosbin "${OUT}"/rollback_prepare_save
+	dosbin "${OUT}"/oobe_config_save
+	dosbin "${OUT}"/oobe_config_restore
+	dosbin "${OUT}"/rollback_finish_restore
+
+	insinto /etc/dbus-1/system.d
+	doins etc/dbus-1/org.chromium.OobeConfigRestore.conf
+
+	insinto /etc/init
+	doins etc/init/oobe_config_restore.conf
+	doins etc/init/oobe_config_save.conf
+	if use tpm2; then
+		sed -i 's/and started tcsd//' \
+			"${D}/etc/init/oobe_config_restore.conf" ||
+			die "Can't remove upstart dependency on tcsd"
+
+		sed -i 's/-b \/run\/tcsd//' \
+			"${D}/etc/init/oobe_config_restore.conf" ||
+			die "Can't remove /run/tcsd bind mount"
+
+		sed -i 's/-b \/run\/tcsd//' \
+			"${D}/etc/init/oobe_config_save.conf" ||
+			die "Can't remove /run/tcsd bind mount"
+	fi
+
+	insinto /usr/share/policy
+	newins seccomp_filters/oobe_config_restore-seccomp-"${ARCH}".policy \
+		oobe_config_restore-seccomp.policy
+	newins seccomp_filters/oobe_config_save-seccomp-"${ARCH}".policy \
+		oobe_config_save-seccomp.policy
+}
+
+platform_pkg_test() {
+	local tests=(
+		oobe_config_test
+	)
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/oobe_config/oobe_config-9999.ebuild b/chromeos-base/oobe_config/oobe_config-9999.ebuild
index f943b28..b3c76f5 100644
--- a/chromeos-base/oobe_config/oobe_config-9999.ebuild
+++ b/chromeos-base/oobe_config/oobe_config-9999.ebuild
@@ -19,8 +19,11 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="tpm tpm2"
-REQUIRED_USE="?? ( tpm tpm2 )"
+IUSE="tpm tpm_dynamic tpm2"
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
 
 COMMMON_DEPEND="
 	>=chromeos-base/metrics-0.0.1-r3152:=
diff --git a/chromeos-base/os_install_service/os_install_service-1.0.0-r12.ebuild b/chromeos-base/os_install_service/os_install_service-1.0.0-r12.ebuild
new file mode 100644
index 0000000..4cf1dbc
--- /dev/null
+++ b/chromeos-base/os_install_service/os_install_service-1.0.0-r12.ebuild
@@ -0,0 +1,56 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="4f4f8680ffb75e1d9135e4b8678a9d9a3a1985b6"
+CROS_WORKON_TREE="a2de5deab76033ac1ea413e4494113ef249fa663"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="os_install_service"
+
+inherit cros-workon cros-rust tmpfiles
+
+LICENSE="BSD-Google"
+SLOT="0/${PVR}"
+KEYWORDS="*"
+IUSE="test"
+
+DEPEND="
+	chromeos-base/system_api:=
+	=dev-rust/anyhow-1.0*:=
+	=dev-rust/chrono-0.4*:=
+	=dev-rust/crossbeam-channel-0.5*:=
+	=dev-rust/dbus-0.8*:=
+	=dev-rust/lazy_static-1.4*:=
+	=dev-rust/log-0.4*:=
+	=dev-rust/nix-0.19*:=
+	=dev-rust/serde-1.0*:=
+	=dev-rust/serde_json-1.0*:=
+	dev-rust/sys_util:=
+	=dev-rust/tempfile-3*:=
+	=dev-rust/thiserror-1.0*:=
+"
+
+RDEPEND="
+	chromeos-base/chromeos-installer
+	sys-apps/util-linux
+	sys-block/parted
+"
+
+src_install() {
+	insinto /etc/dbus-1/system.d
+	doins conf/org.chromium.OsInstallService.conf
+
+	insinto /usr/share/policy
+	newins "conf/os_install_service-seccomp-${ARCH}.policy" os_install_service-seccomp.policy
+
+	insinto /etc/init
+	doins conf/os_install_service.conf
+
+	newtmpfiles conf/tmpfiles.conf os_install_service.conf
+
+	dosbin "$(cros-rust_get_build_dir)/is_running_from_installer"
+	dosbin "$(cros-rust_get_build_dir)/os_install_service"
+}
diff --git a/chromeos-base/os_install_service/os_install_service-1.0.0-r8.ebuild b/chromeos-base/os_install_service/os_install_service-1.0.0-r8.ebuild
deleted file mode 100644
index aa351d4..0000000
--- a/chromeos-base/os_install_service/os_install_service-1.0.0-r8.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f90f5fb301e98483de23e5c59f75ead8c3fe7a46"
-CROS_WORKON_TREE="63583eb163b76ac260df1aed8cdd71950f87b8b3"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="os_install_service"
-
-inherit cros-workon cros-rust tmpfiles
-
-LICENSE="BSD-Google"
-SLOT="0/${PVR}"
-KEYWORDS="*"
-IUSE="test"
-
-DEPEND="
-	chromeos-base/system_api:=
-	=dev-rust/anyhow-1.0*:=
-	=dev-rust/chrono-0.4*:=
-	=dev-rust/crossbeam-channel-0.5*:=
-	=dev-rust/dbus-0.8*:=
-	=dev-rust/lazy_static-1.4*:=
-	=dev-rust/log-0.4*:=
-	=dev-rust/nix-0.19*:=
-	=dev-rust/serde-1.0*:=
-	=dev-rust/serde_json-1.0*:=
-	dev-rust/sys_util:=
-	=dev-rust/tempfile-3*:=
-	=dev-rust/thiserror-1.0*:=
-"
-
-RDEPEND="
-	chromeos-base/chromeos-installer
-	sys-apps/util-linux
-	sys-block/parted
-"
-
-src_install() {
-	insinto /etc/dbus-1/system.d
-	doins conf/org.chromium.OsInstallService.conf
-
-	insinto /usr/share/policy
-	newins "conf/os_install_service-seccomp-${ARCH}.policy" os_install_service-seccomp.policy
-
-	insinto /etc/init
-	doins conf/os_install_service.conf
-
-	newtmpfiles conf/tmpfiles.conf os_install_service.conf
-
-	dosbin "$(cros-rust_get_build_dir)/is_running_from_installer"
-	dosbin "$(cros-rust_get_build_dir)/os_install_service"
-}
diff --git a/chromeos-base/p2p/p2p-0.0.1-r3326.ebuild b/chromeos-base/p2p/p2p-0.0.1-r3326.ebuild
deleted file mode 100644
index 22c39c4..0000000
--- a/chromeos-base/p2p/p2p-0.0.1-r3326.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="0553127ef2b660a5c71f12a9417ed4ad35f07120"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "4a45ea46c086c0a4b6eeff7eb1365097acd44641" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk metrics p2p .gn"
-
-PLATFORM_SUBDIR="p2p"
-
-inherit cros-debug cros-workon platform user
-
-DESCRIPTION="Chromium OS P2P"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/p2p/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-COMMON_DEPEND=">=chromeos-base/metrics-0.0.1-r3152:=
-	dev-libs/glib:=
-	net-dns/avahi-daemon:=
-	net-firewall/iptables:="
-
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}"
-
-platform_pkg_test() {
-	local tests=(
-		p2p-client-unittests
-		p2p-server-unittests
-		p2p-http-server-unittests
-		p2p-common-unittests
-	)
-
-	local test_bin
-	cd "${OUT}"
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "./${test_bin}"
-	done
-}
-
-pkg_preinst() {
-	# Groups are managed in the central account database.
-	enewgroup p2p
-	enewuser p2p
-}
-
-src_install() {
-	dosbin "${OUT}"/p2p-client
-	dosbin "${OUT}"/p2p-server
-	dosbin "${OUT}"/p2p-http-server
-
-	insinto /etc/init
-	doins data/p2p.conf
-
-	# Install fuzzer
-	platform_fuzzer_install "${S}"/OWNERS \
-			"${OUT}"/p2p_http_server_fuzzer
-}
diff --git a/chromeos-base/p2p/p2p-0.0.1-r3369.ebuild b/chromeos-base/p2p/p2p-0.0.1-r3369.ebuild
new file mode 100644
index 0000000..6eaef26
--- /dev/null
+++ b/chromeos-base/p2p/p2p-0.0.1-r3369.ebuild
@@ -0,0 +1,70 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="f50d917b6de0e955da4defed02d48a9a45e85d68"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e08a2eb734e33827dffeecf57eca046cd1091373" "3ade91619d5fdde2f7250019dc6639c359ae99c0" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk metrics p2p .gn"
+
+PLATFORM_SUBDIR="p2p"
+
+inherit cros-debug cros-workon platform user
+
+DESCRIPTION="Chromium OS P2P"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/p2p/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+COMMON_DEPEND=">=chromeos-base/metrics-0.0.1-r3152:=
+	dev-libs/glib:=
+	net-dns/avahi-daemon:=
+	net-firewall/iptables:="
+
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}"
+
+platform_pkg_test() {
+	local tests=(
+		p2p-client-unittests
+		p2p-server-unittests
+		p2p-http-server-unittests
+		p2p-common-unittests
+	)
+
+	local test_bin
+	cd "${OUT}"
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "./${test_bin}"
+	done
+}
+
+pkg_preinst() {
+	# Groups are managed in the central account database.
+	enewgroup p2p
+	enewuser p2p
+}
+
+src_install() {
+	dosbin "${OUT}"/p2p-client
+	dosbin "${OUT}"/p2p-server
+	dosbin "${OUT}"/p2p-http-server
+
+	insinto /etc/init
+	doins data/p2p.conf
+
+	# Install fuzzer
+	local fuzzer_component_id="908319"
+	platform_fuzzer_install "${S}"/OWNERS \
+			"${OUT}"/p2p_http_server_fuzzer \
+			--comp "${fuzzer_component_id}"
+}
diff --git a/chromeos-base/p2p/p2p-9999.ebuild b/chromeos-base/p2p/p2p-9999.ebuild
index 7dc85dc..6545c8c 100644
--- a/chromeos-base/p2p/p2p-9999.ebuild
+++ b/chromeos-base/p2p/p2p-9999.ebuild
@@ -61,6 +61,8 @@
 	doins data/p2p.conf
 
 	# Install fuzzer
+	local fuzzer_component_id="908319"
 	platform_fuzzer_install "${S}"/OWNERS \
-			"${OUT}"/p2p_http_server_fuzzer
+			"${OUT}"/p2p_http_server_fuzzer \
+			--comp "${fuzzer_component_id}"
 }
diff --git a/chromeos-base/patchpanel-client/patchpanel-client-0.0.1-r149.ebuild b/chromeos-base/patchpanel-client/patchpanel-client-0.0.1-r149.ebuild
deleted file mode 100644
index ed7ed4a..0000000
--- a/chromeos-base/patchpanel-client/patchpanel-client-0.0.1-r149.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="c8356149dd3addec8ddef84545cf8a9dc8530f01"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "ae86a7d3ab814f4089a041bdf224a46af7c4b4bf" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk patchpanel .gn"
-
-PLATFORM_SUBDIR="patchpanel/dbus"
-
-inherit cros-workon platform
-
-DESCRIPTION="Patchpanel network connectivity management D-Bus client"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/patchpanel/dbus/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-# These USE flags are used in patchpanel/dbus/BUILD.gn
-IUSE="fuzzer"
-
-COMMON_DEPEND="
-	dev-libs/protobuf:=
-"
-
-# libpatchpanel-client.so and libpatchpanel-client.pc moved from
-# chromeos-base/patchpanel.
-RDEPEND="
-	!<chromeos-base/patchpanel-0.0.2
-	${COMMON_DEPEND}
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/system_api:=[fuzzer?]
-"
-
-patchpanel_client_header() {
-	doins "$1"
-	sed -i '/.pb.h/! s:patchpanel/:chromeos/patchpanel/:g' \
-		"${D}/usr/include/chromeos/patchpanel/dbus/$1" || die
-}
-
-src_install() {
-	# Libraries.
-	dolib.so "${OUT}"/lib/libpatchpanel-client.so
-
-	"${S}"/preinstall.sh "${PV}" "/usr/include/chromeos" "${OUT}" || die
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "${OUT}"/libpatchpanel-client.pc
-
-	insinto /usr/include/chromeos/patchpanel/dbus
-	patchpanel_client_header client.h
-	patchpanel_client_header fake_client.h
-
-	local fuzzer
-	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}"
-	done
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/patchpanel-client_testrunner"
-}
diff --git a/chromeos-base/patchpanel-client/patchpanel-client-0.0.1-r201.ebuild b/chromeos-base/patchpanel-client/patchpanel-client-0.0.1-r201.ebuild
new file mode 100644
index 0000000..ea4e7df
--- /dev/null
+++ b/chromeos-base/patchpanel-client/patchpanel-client-0.0.1-r201.ebuild
@@ -0,0 +1,70 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="ff2cbb8c87e44b3e79beb4a045db08af89ce091f"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "199dfc58f8a75896a8500c6a738774ec7478f797" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk patchpanel .gn"
+
+PLATFORM_SUBDIR="patchpanel/dbus"
+
+inherit cros-workon platform
+
+DESCRIPTION="Patchpanel network connectivity management D-Bus client"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/patchpanel/dbus/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+# These USE flags are used in patchpanel/dbus/BUILD.gn
+IUSE="fuzzer"
+
+COMMON_DEPEND="
+	dev-libs/protobuf:=
+"
+
+# libpatchpanel-client.so and libpatchpanel-client.pc moved from
+# chromeos-base/patchpanel.
+RDEPEND="
+	!<chromeos-base/patchpanel-0.0.2
+	${COMMON_DEPEND}
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/system_api:=[fuzzer?]
+"
+
+patchpanel_client_header() {
+	doins "$1"
+	sed -i '/.pb.h/! s:patchpanel/:chromeos/patchpanel/:g' \
+		"${D}/usr/include/chromeos/patchpanel/dbus/$1" || die
+}
+
+src_install() {
+	# Libraries.
+	dolib.so "${OUT}"/lib/libpatchpanel-client.so
+
+	"${S}"/preinstall.sh "${PV}" "/usr/include/chromeos" "${OUT}" || die
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "${OUT}"/libpatchpanel-client.pc
+
+	insinto /usr/include/chromeos/patchpanel/dbus
+	patchpanel_client_header client.h
+	patchpanel_client_header fake_client.h
+
+	local fuzzer
+	for fuzzer in "${OUT}"/*_fuzzer; do
+		local fuzzer_component_id="156085"
+		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}" \
+			--comp "${fuzzer_component_id}"
+	done
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/patchpanel-client_testrunner"
+}
diff --git a/chromeos-base/patchpanel-client/patchpanel-client-9999.ebuild b/chromeos-base/patchpanel-client/patchpanel-client-9999.ebuild
index 7a90cab..d78edde 100644
--- a/chromeos-base/patchpanel-client/patchpanel-client-9999.ebuild
+++ b/chromeos-base/patchpanel-client/patchpanel-client-9999.ebuild
@@ -57,7 +57,9 @@
 
 	local fuzzer
 	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}"
+		local fuzzer_component_id="156085"
+		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}" \
+			--comp "${fuzzer_component_id}"
 	done
 }
 
diff --git a/chromeos-base/patchpanel/patchpanel-0.0.2-r277.ebuild b/chromeos-base/patchpanel/patchpanel-0.0.2-r277.ebuild
deleted file mode 100644
index 934caea..0000000
--- a/chromeos-base/patchpanel/patchpanel-0.0.2-r277.ebuild
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="c8356149dd3addec8ddef84545cf8a9dc8530f01"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "ae86a7d3ab814f4089a041bdf224a46af7c4b4bf" "1ed695b253a6cd0f70c4ceccdfe60c38e9bed7b8" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk patchpanel shill/net .gn"
-
-PLATFORM_SUBDIR="patchpanel"
-
-inherit cros-workon libchrome platform user
-
-DESCRIPTION="Patchpanel network connectivity management daemon"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/patchpanel/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-# These USE flags are used in patchpanel/BUILD.gn
-IUSE="fuzzer arcvm jetstream_routing"
-
-COMMON_DEPEND="
-	dev-libs/protobuf:=
-	!chromeos-base/arc-networkd
-	chromeos-base/shill-net:=
-	chromeos-base/system_api:=[fuzzer?]
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/shill
-	net-firewall/iptables
-	net-misc/bridge-utils
-	sys-apps/iproute2
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/session_manager-client:=
-	chromeos-base/shill-client:=
-	chromeos-base/system_api:=[fuzzer?]
-"
-
-patchpanel_header() {
-	doins "$1"
-	sed -i '/.pb.h/! s:patchpanel/:chromeos/patchpanel/:g' \
-		"${D}/usr/include/chromeos/patchpanel/$1" || die
-}
-
-src_install() {
-	# Main binary.
-	dobin "${OUT}"/patchpaneld
-
-	# Libraries.
-	dolib.so "${OUT}"/lib/libpatchpanel-util.so
-
-	"${S}"/preinstall.sh "${PV}" "/usr/include/chromeos" "${OUT}"
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "${OUT}"/libpatchpanel-util.pc
-
-	insinto /usr/include/chromeos/patchpanel/
-	patchpanel_header address_manager.h
-	patchpanel_header mac_address_generator.h
-	patchpanel_header net_util.h
-	patchpanel_header socket.h
-	patchpanel_header socket_forwarder.h
-	patchpanel_header subnet.h
-	patchpanel_header subnet_pool.h
-
-	insinto /usr/include/chromeos/patchpanel/dns
-	patchpanel_header dns/dns_protocol.h
-	patchpanel_header dns/dns_query.h
-	patchpanel_header dns/dns_response.h
-	patchpanel_header dns/io_buffer.h
-
-	insinto /etc/init
-	doins "${S}"/init/patchpanel.conf
-
-	insinto /etc/dbus-1/system.d
-	doins dbus/*.conf
-
-	local fuzzer
-	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}"
-	done
-}
-
-pkg_preinst() {
-	# Service account used for privilege separation.
-	enewuser patchpaneld
-	enewgroup patchpaneld
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/patchpanel_testrunner"
-}
diff --git a/chromeos-base/patchpanel/patchpanel-0.0.2-r335.ebuild b/chromeos-base/patchpanel/patchpanel-0.0.2-r335.ebuild
new file mode 100644
index 0000000..9758118
--- /dev/null
+++ b/chromeos-base/patchpanel/patchpanel-0.0.2-r335.ebuild
@@ -0,0 +1,103 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="ff2cbb8c87e44b3e79beb4a045db08af89ce091f"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "199dfc58f8a75896a8500c6a738774ec7478f797" "0180513536a7819b5f1dd6966f004bcb713392d5" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk patchpanel shill/net .gn"
+
+PLATFORM_SUBDIR="patchpanel"
+
+inherit cros-workon libchrome platform user
+
+DESCRIPTION="Patchpanel network connectivity management daemon"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/patchpanel/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+# These USE flags are used in patchpanel/BUILD.gn
+IUSE="fuzzer arcvm jetstream_routing"
+
+COMMON_DEPEND="
+	dev-libs/protobuf:=
+	!chromeos-base/arc-networkd
+	chromeos-base/shill-net:=
+	chromeos-base/system_api:=[fuzzer?]
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/shill
+	net-firewall/iptables
+	net-misc/bridge-utils
+	sys-apps/iproute2
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/session_manager-client:=
+	chromeos-base/shill-client:=
+	chromeos-base/system_api:=[fuzzer?]
+"
+
+patchpanel_header() {
+	doins "$1"
+	sed -i '/.pb.h/! s:patchpanel/:chromeos/patchpanel/:g' \
+		"${D}/usr/include/chromeos/patchpanel/$1" || die
+}
+
+src_install() {
+	# Main binary.
+	dobin "${OUT}"/patchpaneld
+
+	# Libraries.
+	dolib.so "${OUT}"/lib/libpatchpanel-util.so
+
+	"${S}"/preinstall.sh "${PV}" "/usr/include/chromeos" "${OUT}"
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "${OUT}"/libpatchpanel-util.pc
+
+	insinto /usr/include/chromeos/patchpanel/
+	patchpanel_header address_manager.h
+	patchpanel_header guest_type.h
+	patchpanel_header mac_address_generator.h
+	patchpanel_header net_util.h
+	patchpanel_header socket.h
+	patchpanel_header socket_forwarder.h
+	patchpanel_header subnet.h
+	patchpanel_header subnet_pool.h
+
+	insinto /usr/include/chromeos/patchpanel/dns
+	patchpanel_header dns/dns_protocol.h
+	patchpanel_header dns/dns_query.h
+	patchpanel_header dns/dns_response.h
+	patchpanel_header dns/io_buffer.h
+
+	insinto /etc/init
+	doins "${S}"/init/patchpanel.conf
+
+	insinto /etc/dbus-1/system.d
+	doins dbus/*.conf
+
+	local fuzzer
+	for fuzzer in "${OUT}"/*_fuzzer; do
+		local fuzzer_component_id="156085"
+		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}" \
+			--comp "${fuzzer_component_id}"
+	done
+}
+
+pkg_preinst() {
+	# Service account used for privilege separation.
+	enewuser patchpaneld
+	enewgroup patchpaneld
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/patchpanel_testrunner"
+}
diff --git a/chromeos-base/patchpanel/patchpanel-9999.ebuild b/chromeos-base/patchpanel/patchpanel-9999.ebuild
index f2d607c..5e039a8 100644
--- a/chromeos-base/patchpanel/patchpanel-9999.ebuild
+++ b/chromeos-base/patchpanel/patchpanel-9999.ebuild
@@ -62,6 +62,7 @@
 
 	insinto /usr/include/chromeos/patchpanel/
 	patchpanel_header address_manager.h
+	patchpanel_header guest_type.h
 	patchpanel_header mac_address_generator.h
 	patchpanel_header net_util.h
 	patchpanel_header socket.h
@@ -83,7 +84,9 @@
 
 	local fuzzer
 	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}"
+		local fuzzer_component_id="156085"
+		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}" \
+			--comp "${fuzzer_component_id}"
 	done
 }
 
diff --git a/chromeos-base/pciguard/pciguard-0.0.1-r48.ebuild b/chromeos-base/pciguard/pciguard-0.0.1-r48.ebuild
deleted file mode 100644
index 6cad567..0000000
--- a/chromeos-base/pciguard/pciguard-0.0.1-r48.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "8f8f3fd6e34931380cbc9f35bf9f2bb74d9c7c8b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk pciguard .gn"
-
-PLATFORM_SUBDIR="pciguard"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Chrome OS External PCI device security daemon"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/pciguard/"
-
-LICENSE="BSD-Google"
-SLOT=0
-KEYWORDS="*"
-
-DEPEND="
-	chromeos-base/session_manager-client:=
-	chromeos-base/system_api:=
-"
-
-src_install() {
-	# Install the binary
-	dosbin "${OUT}"/pciguard
-
-	# Install the seccomp policy
-	insinto /usr/share/policy
-	newins "${S}/seccomp/pciguard-seccomp-${ARCH}.policy" pciguard-seccomp.policy
-
-	# Install the upstart configuration files
-	insinto /etc/init
-	doins "${S}"/init/*.conf
-
-	# Install the dbus configuration
-	insinto /etc/dbus-1/system.d
-	doins "${S}/dbus/pciguard-dbus.conf"
-}
-
-pkg_preinst() {
-	enewuser pciguard
-	enewgroup pciguard
-	cros-workon_pkg_setup
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/pciguard_testrunner"
-}
diff --git a/chromeos-base/pciguard/pciguard-0.0.1-r78.ebuild b/chromeos-base/pciguard/pciguard-0.0.1-r78.ebuild
new file mode 100644
index 0000000..c07826e
--- /dev/null
+++ b/chromeos-base/pciguard/pciguard-0.0.1-r78.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "3cafdc3ab4b41698c9ae4a290ee3cd85cd5867d5" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk pciguard .gn"
+
+PLATFORM_SUBDIR="pciguard"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Chrome OS External PCI device security daemon"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/pciguard/"
+
+LICENSE="BSD-Google"
+SLOT=0
+KEYWORDS="*"
+
+DEPEND="
+	chromeos-base/session_manager-client:=
+	chromeos-base/system_api:=
+"
+
+src_install() {
+	# Install the binary
+	dosbin "${OUT}"/pciguard
+
+	# Install the seccomp policy
+	insinto /usr/share/policy
+	newins "${S}/seccomp/pciguard-seccomp-${ARCH}.policy" pciguard-seccomp.policy
+
+	# Install the upstart configuration files
+	insinto /etc/init
+	doins "${S}"/init/*.conf
+
+	# Install the dbus configuration
+	insinto /etc/dbus-1/system.d
+	doins "${S}/dbus/pciguard-dbus.conf"
+}
+
+pkg_preinst() {
+	enewuser pciguard
+	enewgroup pciguard
+	cros-workon_pkg_setup
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/pciguard_testrunner"
+}
diff --git a/chromeos-base/perfetto/files/init/traced.conf b/chromeos-base/perfetto/files/init/traced.conf
index 75d4935..5d2a3a4 100644
--- a/chromeos-base/perfetto/files/init/traced.conf
+++ b/chromeos-base/perfetto/files/init/traced.conf
@@ -39,6 +39,7 @@
 # -c 0: Grant no caps.
 # -i: fork immediately and don't block the startup.
 # -l: enter a new IPC namespace.
+# -N: enter a new cgroup namespace.
 # -e: enter a new network namespace.
 # --uts: enter a new UTS namespace.
 # -n: set no new_privs.
@@ -49,7 +50,7 @@
 # -p: enter a new PID namespace.
 # -S /usr/share/policy/traced.policy: set up seccomp policy.
 exec /sbin/minijail0 -u traced -g traced \
-  -G -c 0 -i -l -e --uts -n \
+  -G -c 0 -i -l -N -e --uts -n \
   --profile=minimalistic-mountns -t \
   -k 'tmpfs,/run,tmpfs,MS_NOSUID|MS_NODEV|MS_NOEXEC' \
   -b "${PERFETTO_SOCK_DIR}",,1 \
diff --git a/chromeos-base/perfetto/files/init/traced_probes.conf b/chromeos-base/perfetto/files/init/traced_probes.conf
index e49dbb1..56ddc5b 100644
--- a/chromeos-base/perfetto/files/init/traced_probes.conf
+++ b/chromeos-base/perfetto/files/init/traced_probes.conf
@@ -31,13 +31,31 @@
 
 script
   # Common mount flags for tmpfs.
-  mnt_flags="MS_NOSUID|MS_NODEV|MS_NOEXEC"
-  # Mount tmpfs at /sys/kernel/debug: traced_probes doesn't access debugfs.
-  # TODO(chinglinyu): use /sys/kernel/tracing and remove this tmpfs mount after
-  # kernels < v4.1 are no longer supported.
-  tracefs_mnt_args="-k tmpfs,/sys/kernel/debug,tmpfs,${mnt_flags}"
-  # Bind mount /sys/kernel/debug/tracing.
-  tracefs_mnt_args="${tracefs_mnt_args} -b /sys/kernel/debug/tracing,,1"
+  tmpfs_flags="MS_NOSUID|MS_NODEV|MS_NOEXEC"
+
+  # Build the tmpfs for bind-mounts under /sys:
+  sysfs_mnt_args="-k tmpfs,/sys,tmpfs,${tmpfs_flags}"
+
+  # Bind-mount /sys/devices. traced_probes uses /sys/devices/system/cpu.
+  # Use the whole /sys/devices because there can be symlinks to it like
+  # /sys/class/devfreq/...
+  sysfs_mnt_args="${sysfs_mnt_args} -b /sys/devices"
+
+  # /sys/class/ for bind-mounting /sys/class/devfreq (on ARM).
+  if [ -d /sys/class/devfreq ]; then
+    sysfs_mnt_args="${sysfs_mnt_args} -k tmpfs,/sys/class,tmpfs,${tmpfs_flags}"
+    sysfs_mnt_args="${sysfs_mnt_args} -b /sys/class/devfreq"
+  fi
+
+  # Create tmpfs at /sys/kernel as the basedir of tracefs
+  sysfs_mnt_args="${sysfs_mnt_args} -k tmpfs,/sys/kernel,tmpfs,${tmpfs_flags}"
+  # Bind mount /sys/kernel/debug/tracing to /sys/kernel/tracing. traced_probes
+  # doesn't use debugfs and supports using tracefs from
+  # /sys/kernel/debug/tracing or /sys/kernel/tracing. Bind-mount
+  # /sys/kernel/debug/tracing to /sys/kernel/tracing so this works regardless of
+  # whether the kernel has separate tracefs (v4.1) or ftrace is part of debugfs.
+  sysfs_mnt_args="${sysfs_mnt_args} -b /sys/kernel/debug/tracing,/sys/kernel/tracing,1"
+
   # minijail0 args.
   # -u traced-probes -g traced-probes: run as user: traced-probes,
   #   group: traced-probes.
@@ -45,6 +63,7 @@
   # -c 0: Grant no caps.
   # -i: fork immediately and don't block the startup.
   # -l: enter a new IPC namespace.
+  # -N: enter a new cgroup namespace.
   # -e: enter a new network namespace.
   # --uts: enter a new UTS namespace.
   # traced_probes runs without -p because it needs to see the PID of the traced
@@ -53,12 +72,11 @@
   # -b /sys: bind mount sysfs.
   # ${tracefs_mnt_args}: mount tracefs.
   exec /sbin/minijail0 -u traced-probes -g traced-probes \
-    -G -c 0 -i -l -e --uts -n \
+    -G -c 0 -i -l -N -e --uts -n \
     --profile=minimalistic-mountns -t \
-    -k "tmpfs,/run,tmpfs,${mnt_flags}" \
+    -k "tmpfs,/run,tmpfs,${tmpfs_flags}" \
     -b "${PERFETTO_SOCK_DIR}",,1 \
-    -b /sys \
-    ${tracefs_mnt_args} \
+    ${sysfs_mnt_args} \
     -S /usr/share/policy/traced_probes.policy \
     -- /usr/bin/traced_probes
-end script
\ No newline at end of file
+end script
diff --git a/chromeos-base/perfetto/files/seccomp/traced-amd64.policy b/chromeos-base/perfetto/files/seccomp/traced-amd64.policy
index 2896b64..f92a953 100644
--- a/chromeos-base/perfetto/files/seccomp/traced-amd64.policy
+++ b/chromeos-base/perfetto/files/seccomp/traced-amd64.policy
@@ -63,11 +63,13 @@
 # Allow signal to self.
 kill: arg0 == 0
 
-fcntl: 1
+# Linux-specific fcntl cmd: F_ADD_SEALS (1033), F_GET_SEALS (1034).
+fcntl: arg1 == F_GETFD || arg1 == F_SETFD || arg1 == F_GETFL || arg1 == F_SETFL || arg1 == 1033 || arg1 == 1034
 
 # Check /etc/ld.so.preload
 access: 1
 faccessat: 1
+faccessat2: 1
 # ARCH_SETFS
 arch_prctl: 1
 
diff --git a/chromeos-base/perfetto/files/seccomp/traced-arm.policy b/chromeos-base/perfetto/files/seccomp/traced-arm.policy
index d82ef6a..084d148 100644
--- a/chromeos-base/perfetto/files/seccomp/traced-arm.policy
+++ b/chromeos-base/perfetto/files/seccomp/traced-arm.policy
@@ -29,6 +29,8 @@
 
 stat64: 1
 fstat64: 1
+fstatat64: 1
+statx: 1
 lstat64: 1
 ftruncate: 1
 ftruncate64: 1
@@ -68,11 +70,13 @@
 # Allow signal to self.
 kill: arg0 == 0
 
-fcntl64: 1
+# Linux-specific fcntl cmd: F_ADD_SEALS (1033), F_GET_SEALS (1034).
+fcntl64:  arg1 == F_GETFD || arg1 == F_SETFD || arg1 == F_GETFL || arg1 == F_SETFL || arg1 == 1033 || arg1 == 1034
 
 # Check /etc/ld.so.preload
 access: 1
 faccessat: 1
+faccessat2: 1
 # ARCH_SETFS
 prctl: 1
 
diff --git a/chromeos-base/perfetto/files/seccomp/traced-arm64.policy b/chromeos-base/perfetto/files/seccomp/traced-arm64.policy
index 7031646..a75bd89 100644
--- a/chromeos-base/perfetto/files/seccomp/traced-arm64.policy
+++ b/chromeos-base/perfetto/files/seccomp/traced-arm64.policy
@@ -61,10 +61,11 @@
 # Allow signal to self.
 kill: arg0 == 0
 
-fcntl: 1
-
+# Linux-specific fcntl cmd: F_ADD_SEALS (1033), F_GET_SEALS (1034).
+fcntl: arg1 == F_GETFD || arg1 == F_SETFD || arg1 == F_GETFL || arg1 == F_SETFL || arg1 == 1033 || arg1 == 1034
 # Check /etc/ld.so.preload
 faccessat: 1
+faccessat2: 1
 # ARCH_SETFS
 prctl: 1
 
diff --git a/chromeos-base/perfetto/files/seccomp/traced_probes-amd64.policy b/chromeos-base/perfetto/files/seccomp/traced_probes-amd64.policy
index 9a765a2..8af15f25 100644
--- a/chromeos-base/perfetto/files/seccomp/traced_probes-amd64.policy
+++ b/chromeos-base/perfetto/files/seccomp/traced_probes-amd64.policy
@@ -50,9 +50,11 @@
 # Allow signal to self.
 kill: arg0 == 0
 
-fcntl: 1
+# Linux-specific fcntl cmd: F_ADD_SEALS (1033), F_GET_SEALS (1034).
+fcntl: arg1 == F_GETFD || arg1 == F_SETFD || arg1 == F_GETFL || arg1 == F_SETFL || arg1 == 1033 || arg1 == 1034
 access: 1
 faccessat: 1
+faccessat2: 1
 arch_prctl: 1
 
 clone: 1
diff --git a/chromeos-base/perfetto/files/seccomp/traced_probes-arm.policy b/chromeos-base/perfetto/files/seccomp/traced_probes-arm.policy
index e55bfef..bce2a4d 100644
--- a/chromeos-base/perfetto/files/seccomp/traced_probes-arm.policy
+++ b/chromeos-base/perfetto/files/seccomp/traced_probes-arm.policy
@@ -26,6 +26,8 @@
 
 stat64: 1
 fstat64: 1
+fstatat64: 1
+statx: 1
 lstat64: 1
 
 # Memory management system calls.
@@ -55,9 +57,12 @@
 # Allow signal to self.
 kill: arg0 == 0
 
-fcntl64: 1
+# Linux-specific fcntl cmd: F_ADD_SEALS (1033), F_GET_SEALS (1034).
+
+fcntl64: arg1 == F_GETFD || arg1 == F_SETFD || arg1 == F_GETFL || arg1 == F_SETFL || arg1 == 1033 || arg1 == 1034
 access: 1
 faccessat: 1
+faccessat2: 1
 prctl: 1
 
 clone: 1
diff --git a/chromeos-base/perfetto/files/seccomp/traced_probes-arm64.policy b/chromeos-base/perfetto/files/seccomp/traced_probes-arm64.policy
index 84da12f..e7d635a 100644
--- a/chromeos-base/perfetto/files/seccomp/traced_probes-arm64.policy
+++ b/chromeos-base/perfetto/files/seccomp/traced_probes-arm64.policy
@@ -48,8 +48,10 @@
 # Allow signal to self.
 kill: arg0 == 0
 
-fcntl: 1
+# Linux-specific fcntl cmd: F_ADD_SEALS (1033), F_GET_SEALS (1034).
+fcntl: arg1 == F_GETFD || arg1 == F_SETFD || arg1 == F_GETFL || arg1 == F_SETFL || arg1 == 1033 || arg1 == 1034
 faccessat: 1
+faccessat2: 1
 prctl: 1
 
 clone: 1
diff --git a/chromeos-base/perfetto/perfetto-15.0-r3.ebuild b/chromeos-base/perfetto/perfetto-15.0-r3.ebuild
deleted file mode 100644
index f89390f..0000000
--- a/chromeos-base/perfetto/perfetto-15.0-r3.ebuild
+++ /dev/null
@@ -1,164 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="2f35d6fd1fc0e4c68e1e5188dab0de173de724c8"
-CROS_WORKON_TREE="b247aba769f84322900406f9d373e8d7856cf6e0"
-inherit cros-constants
-
-# This ebuild is upreved via PuPR, so disable the normal uprev process for
-# cros-workon ebuilds.
-CROS_WORKON_MANUAL_UPREV=1
-CROS_WORKON_LOCALNAME="aosp/external/perfetto"
-CROS_WORKON_PROJECT="platform/external/perfetto"
-CROS_WORKON_REPO="${CROS_GIT_AOSP_URL}"
-CROS_WORKON_EGIT_BRANCH="master"
-
-inherit cros-workon ninja-utils tmpfiles toolchain-funcs user
-
-DESCRIPTION="An open-source project for performance instrumentation and tracing."
-HOMEPAGE="https://perfetto.dev/"
-
-KEYWORDS="*"
-IUSE="cros-debug"
-LICENSE="Apache-2.0"
-SLOT="0"
-
-# protobuf dep is for using protoc at build-time to generate perfetto's headers.
-BDEPEND="
-	dev-util/gn
-	dev-util/ninja
-	dev-libs/protobuf
-"
-BUILD_OUTPUT="${WORKDIR}/out_cros/"
-
-src_configure() {
-	tc-export CC CXX AR BUILD_CC BUILD_CXX BUILD_AR
-	local target_cpu="${ARCH}"
-	# Make the "amd64" -> "x64" conversion for the GN arg |target_cpu|.
-	if [[ "${target_cpu}" == "amd64" ]]; then
-		target_cpu="x64"
-	fi
-
-	# Don't turn on is_debug in building the system tracing service daemon.
-	# Running a debug build traced with a release build producer will likely
-	# cause crashes.
-	local is_debug="false"
-
-	local warn_flags=(
-		"-Wno-suggest-destructor-override"
-		"-Wno-suggest-override"
-	)
-	# Specify the linker to be used, this will be invoked by
-	# perfetto build as link argument "-fuse-ld=<>" so it needs to be
-	# the linker name bfd/gold/lld etc. that clang/gcc understand.
-	local linker_name="bfd"
-	tc-ld-is-gold && linker_name="gold"
-	tc-ld-is-lld && linker_name="lld"
-
-	# Cross-compilation args.
-	GN_ARGS="
-is_system_compiler=true
-ar=\"${BUILD_AR}\"
-cc=\"${BUILD_CC}\"
-cxx=\"${BUILD_CXX}\"
-linker=\"${linker_name}\"
-target_ar=\"${AR}\"
-target_cc=\"${CC}\"
-target_cxx=\"${CXX}\"
-target_linker=\"${linker_name}\"
-target_cpu=\"${target_cpu}\"
-target_triplet=\"${CHOST}\"
-extra_target_cflags=\"${CFLAGS} ${warn_flags[*]}\"
-extra_target_cxxflags=\"${CXXFLAGS} ${warn_flags[*]}\"
-extra_target_ldflags=\"${LDFLAGS}\"
-"
-
-	# Extra args to make the targets build.
-	GN_ARGS+="
-is_debug=${is_debug}
-enable_perfetto_stderr_crash_dump=false
-enable_perfetto_trace_processor_json=false
-monolithic_binaries=true
-use_custom_libcxx=false
-is_hermetic_clang=false
-enable_perfetto_zlib=false
-skip_buildtools_check=true
-perfetto_use_system_protobuf=true
-enable_perfetto_version_gen=false
-"
-	einfo "GN_ARGS = ${GN_ARGS}"
-	gn gen "${BUILD_OUTPUT}" --args="${GN_ARGS}" || die
-}
-
-src_compile() {
-	eninja -C  "${BUILD_OUTPUT}" traced traced_probes perfetto
-
-	# Check the existence of the sdk/ directory before building the sdk static
-	# library, as only the release branches contains the sdk sources to be used.
-	if [[ -d "${S}/sdk" ]]; then
-		# If not building with cros-debug, the SDK should be built with NDEBUG as
-		# well.
-		use cros-debug || append-cxxflags -DNDEBUG
-
-		(set -x; $(tc-getCXX) ${CXXFLAGS} -Wall -Werror -c -pthread -fPIC \
-			"${S}/sdk/perfetto.cc" -o sdk/perfetto.o) || die
-		(set -x; ${AR} rvsc sdk/libperfetto_sdk.a sdk/perfetto.o) || die
-	else
-		if [[ ${PV} == 9999 ]]; then
-			ewarn "Skip the sdk library as directory perfetto/sdk doesn't exist."
-		else
-			die "The Perfetto SDK doesn't exist."
-		fi
-	fi
-}
-
-src_install() {
-	dobin "${BUILD_OUTPUT}/traced"
-	dobin "${BUILD_OUTPUT}/traced_probes"
-	dobin "${BUILD_OUTPUT}/perfetto"
-
-	dotmpfiles "${FILESDIR}/tmpfiles.d/traced.conf"
-
-	insinto /etc/init
-	doins "${FILESDIR}/init/traced.conf"
-	doins "${FILESDIR}/init/traced_probes.conf"
-
-	insinto /usr/share/policy
-	newins "${FILESDIR}/seccomp/traced-${ARCH}.policy" traced.policy
-	newins "${FILESDIR}/seccomp/traced_probes-${ARCH}.policy" traced_probes.policy
-
-	if [[ -d "${S}/sdk" ]]; then
-		insinto /usr/include/perfetto
-		# Both source and lib are provided for convenience.
-		doins "${S}/sdk/perfetto.cc"
-		doins "${S}/sdk/perfetto.h"
-		dolib.a "${S}/sdk/libperfetto_sdk.a"
-
-		insinto "/usr/$(get_libdir)/pkgconfig"
-		local v=$("${S}/tools/write_version_header.py" --stdout)
-		sed \
-			-e "s/@version@/${v}/g" \
-			-e "s/@lib@/$(get_libdir)/g" \
-			"${FILESDIR}/pkg-configs/perfetto.pc.in" > "${S}/sdk/perfetto.pc" \
-			|| die
-		doins "${S}/sdk/perfetto.pc"
-	fi
-
-	insinto /usr/include/perfetto
-	doins -r include/perfetto
-	insinto /usr/include/perfetto/protos
-	doins -r "${BUILD_OUTPUT}/gen/protos/perfetto"
-	insinto /usr/include/perfetto/perfetto/base
-	doins "${BUILD_OUTPUT}/gen/build_config/perfetto_build_flags.h"
-}
-
-pkg_preinst() {
-	enewuser "traced"
-	enewgroup "traced"
-	enewuser "traced-probes"
-	enewgroup "traced-probes"
-	enewgroup "traced-producer"
-	enewgroup "traced-consumer"
-}
diff --git a/chromeos-base/perfetto/perfetto-19.0-r1.ebuild b/chromeos-base/perfetto/perfetto-19.0-r1.ebuild
new file mode 100644
index 0000000..1cea4cf
--- /dev/null
+++ b/chromeos-base/perfetto/perfetto-19.0-r1.ebuild
@@ -0,0 +1,167 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="972384084f168e24cbc235ae5ed6473d2fc31d93"
+CROS_WORKON_TREE="7ff025ed4cd4ce06f725e44b5a9b4497efd6f973"
+inherit cros-constants
+
+# This ebuild is upreved via PuPR, so disable the normal uprev process for
+# cros-workon ebuilds.
+CROS_WORKON_MANUAL_UPREV=1
+CROS_WORKON_LOCALNAME="aosp/external/perfetto"
+CROS_WORKON_PROJECT="platform/external/perfetto"
+CROS_WORKON_REPO="${CROS_GIT_AOSP_URL}"
+CROS_WORKON_EGIT_BRANCH="master"
+
+inherit cros-workon ninja-utils tmpfiles toolchain-funcs user
+
+DESCRIPTION="An open-source project for performance instrumentation and tracing."
+HOMEPAGE="https://perfetto.dev/"
+
+KEYWORDS="*"
+IUSE="cros-debug"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+# protobuf dep is for using protoc at build-time to generate perfetto's headers.
+BDEPEND="
+	dev-util/gn
+	dev-util/ninja
+	dev-libs/protobuf
+"
+BUILD_OUTPUT="${WORKDIR}/out_cros/"
+
+src_configure() {
+	tc-export CC CXX AR STRIP BUILD_CC BUILD_CXX BUILD_AR BUILD_STRIP
+	local target_cpu="${ARCH}"
+	# Make the "amd64" -> "x64" conversion for the GN arg |target_cpu|.
+	if [[ "${target_cpu}" == "amd64" ]]; then
+		target_cpu="x64"
+	fi
+
+	# Don't turn on is_debug in building the system tracing service daemon.
+	# Running a debug build traced with a release build producer will likely
+	# cause crashes.
+	local is_debug="false"
+
+	local warn_flags=(
+		"-Wno-suggest-destructor-override"
+		"-Wno-suggest-override"
+		"-Wno-reserved-identifier"
+	)
+	# Specify the linker to be used, this will be invoked by
+	# perfetto build as link argument "-fuse-ld=<>" so it needs to be
+	# the linker name bfd/gold/lld etc. that clang/gcc understand.
+	local linker_name="bfd"
+	tc-ld-is-gold && linker_name="gold"
+	tc-ld-is-lld && linker_name="lld"
+
+	# Cross-compilation args.
+	GN_ARGS="
+is_system_compiler=true
+ar=\"${BUILD_AR}\"
+cc=\"${BUILD_CC}\"
+cxx=\"${BUILD_CXX}\"
+strip=\"${BUILD_STRIP}\"
+linker=\"${linker_name}\"
+target_ar=\"${AR}\"
+target_cc=\"${CC}\"
+target_cxx=\"${CXX}\"
+target_linker=\"${linker_name}\"
+target_strip=\"${STRIP}\"
+target_cpu=\"${target_cpu}\"
+target_triplet=\"${CHOST}\"
+extra_target_cflags=\"${CFLAGS} ${warn_flags[*]}\"
+extra_target_cxxflags=\"${CXXFLAGS} ${warn_flags[*]}\"
+extra_target_ldflags=\"${LDFLAGS}\"
+"
+
+	# Extra args to make the targets build.
+	GN_ARGS+="
+is_debug=${is_debug}
+enable_perfetto_stderr_crash_dump=false
+enable_perfetto_trace_processor_json=false
+monolithic_binaries=true
+use_custom_libcxx=false
+is_hermetic_clang=false
+enable_perfetto_zlib=false
+skip_buildtools_check=true
+perfetto_use_system_protobuf=true
+enable_perfetto_version_gen=false
+"
+	einfo "GN_ARGS = ${GN_ARGS}"
+	gn gen "${BUILD_OUTPUT}" --args="${GN_ARGS}" || die
+}
+
+src_compile() {
+	eninja -C  "${BUILD_OUTPUT}" traced traced_probes perfetto
+
+	# Check the existence of the sdk/ directory before building the sdk static
+	# library, as only the release branches contains the sdk sources to be used.
+	if [[ -d "${S}/sdk" ]]; then
+		# If not building with cros-debug, the SDK should be built with NDEBUG as
+		# well.
+		use cros-debug || append-cxxflags -DNDEBUG
+
+		(set -x; $(tc-getCXX) ${CXXFLAGS} -Wall -Werror -c -pthread -fPIC \
+			"${S}/sdk/perfetto.cc" -o sdk/perfetto.o) || die
+		(set -x; ${AR} rvsc sdk/libperfetto_sdk.a sdk/perfetto.o) || die
+	else
+		if [[ ${PV} == 9999 ]]; then
+			ewarn "Skip the sdk library as directory perfetto/sdk doesn't exist."
+		else
+			die "The Perfetto SDK doesn't exist."
+		fi
+	fi
+}
+
+src_install() {
+	dobin "${BUILD_OUTPUT}/traced"
+	dobin "${BUILD_OUTPUT}/traced_probes"
+	dobin "${BUILD_OUTPUT}/perfetto"
+
+	dotmpfiles "${FILESDIR}/tmpfiles.d/traced.conf"
+
+	insinto /etc/init
+	doins "${FILESDIR}/init/traced.conf"
+	doins "${FILESDIR}/init/traced_probes.conf"
+
+	insinto /usr/share/policy
+	newins "${FILESDIR}/seccomp/traced-${ARCH}.policy" traced.policy
+	newins "${FILESDIR}/seccomp/traced_probes-${ARCH}.policy" traced_probes.policy
+
+	if [[ -d "${S}/sdk" ]]; then
+		insinto /usr/include/perfetto
+		# Both source and lib are provided for convenience.
+		doins "${S}/sdk/perfetto.cc"
+		doins "${S}/sdk/perfetto.h"
+		dolib.a "${S}/sdk/libperfetto_sdk.a"
+
+		insinto "/usr/$(get_libdir)/pkgconfig"
+		local v=$("${S}/tools/write_version_header.py" --stdout)
+		sed \
+			-e "s/@version@/${v}/g" \
+			-e "s/@lib@/$(get_libdir)/g" \
+			"${FILESDIR}/pkg-configs/perfetto.pc.in" > "${S}/sdk/perfetto.pc" \
+			|| die
+		doins "${S}/sdk/perfetto.pc"
+	fi
+
+	insinto /usr/include/perfetto
+	doins -r include/perfetto
+	insinto /usr/include/perfetto/protos
+	doins -r "${BUILD_OUTPUT}/gen/protos/perfetto"
+	insinto /usr/include/perfetto/perfetto/base
+	doins "${BUILD_OUTPUT}/gen/build_config/perfetto_build_flags.h"
+}
+
+pkg_preinst() {
+	enewuser "traced"
+	enewgroup "traced"
+	enewuser "traced-probes"
+	enewgroup "traced-probes"
+	enewgroup "traced-producer"
+	enewgroup "traced-consumer"
+}
diff --git a/chromeos-base/perfetto/perfetto-9999.ebuild b/chromeos-base/perfetto/perfetto-9999.ebuild
index 87e62e2..ac0a823 100644
--- a/chromeos-base/perfetto/perfetto-9999.ebuild
+++ b/chromeos-base/perfetto/perfetto-9999.ebuild
@@ -32,7 +32,7 @@
 BUILD_OUTPUT="${WORKDIR}/out_cros/"
 
 src_configure() {
-	tc-export CC CXX AR BUILD_CC BUILD_CXX BUILD_AR
+	tc-export CC CXX AR STRIP BUILD_CC BUILD_CXX BUILD_AR BUILD_STRIP
 	local target_cpu="${ARCH}"
 	# Make the "amd64" -> "x64" conversion for the GN arg |target_cpu|.
 	if [[ "${target_cpu}" == "amd64" ]]; then
@@ -47,6 +47,7 @@
 	local warn_flags=(
 		"-Wno-suggest-destructor-override"
 		"-Wno-suggest-override"
+		"-Wno-reserved-identifier"
 	)
 	# Specify the linker to be used, this will be invoked by
 	# perfetto build as link argument "-fuse-ld=<>" so it needs to be
@@ -61,11 +62,13 @@
 ar=\"${BUILD_AR}\"
 cc=\"${BUILD_CC}\"
 cxx=\"${BUILD_CXX}\"
+strip=\"${BUILD_STRIP}\"
 linker=\"${linker_name}\"
 target_ar=\"${AR}\"
 target_cc=\"${CC}\"
 target_cxx=\"${CXX}\"
 target_linker=\"${linker_name}\"
+target_strip=\"${STRIP}\"
 target_cpu=\"${target_cpu}\"
 target_triplet=\"${CHOST}\"
 extra_target_cflags=\"${CFLAGS} ${warn_flags[*]}\"
diff --git a/chromeos-base/perfetto_proto/files/BUILD.gn b/chromeos-base/perfetto_proto/files/BUILD.gn
deleted file mode 100644
index 0d40bd2f..0000000
--- a/chromeos-base/perfetto_proto/files/BUILD.gn
+++ /dev/null
@@ -1,15 +0,0 @@
-# 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.
-
-import("//common-mk/proto_library.gni")
-
-group("all") {
-  deps = [ ":trace_processor-goprotos" ]
-}
-
-goproto_library("trace_processor-goprotos") {
-  proto_in_dir = "../aosp/external/perfetto/protos/perfetto/metrics"
-  proto_out_dir = "go/src/chromiumos/perfetto/trace_processor"
-  sources = [ "${proto_in_dir}/perfetto_merged_metrics.proto" ]
-}
diff --git a/chromeos-base/perfetto_proto/perfetto_proto-15.0-r37.ebuild b/chromeos-base/perfetto_proto/perfetto_proto-15.0-r37.ebuild
deleted file mode 100644
index e5013e3..0000000
--- a/chromeos-base/perfetto_proto/perfetto_proto-15.0-r37.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("12d86fcd388d39eac1fb23988a2bc54d67cf09c7" "62a3049e9dbdaccda5cf7bce82bf7991cec9d371")
-CROS_WORKON_TREE=("984c6b95246a821639541839c2029754912f2849" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_GO_PACKAGES=(
-	"chromiumos/perfetto/trace_processor/..."
-)
-
-inherit cros-constants
-
-CROS_WORKON_LOCALNAME=("aosp/external/perfetto" "platform2")
-CROS_WORKON_PROJECT=("platform/external/perfetto" "chromiumos/platform2")
-CROS_WORKON_REPO=("${CROS_GIT_AOSP_URL}" "${CROS_GIT_HOST_URL}")
-CROS_WORKON_DESTDIR=("${S}/aosp/external/perfetto" "${S}/platform2")
-CROS_WORKON_EGIT_BRANCH=("master" "main")
-CROS_WORKON_SUBTREE=("" "common-mk .gn")
-
-PLATFORM_SUBDIR="./"
-
-inherit cros-go cros-workon platform
-
-DESCRIPTION="Perfetto go proto for Chrome OS"
-HOMEPAGE="https://android.googlesource.com/platform/external/perfetto/+/refs/tags/v15.0/protos/perfetto/metrics/android/"
-
-KEYWORDS="*"
-IUSE="cros-debug"
-LICENSE="Apache-2.0"
-SLOT="0"
-
-# protobuf dep is for using protoc at build-time to generate perfetto's headers.
-BDEPEND="
-	dev-go/protobuf
-"
-
-src_unpack() {
-	platform_src_unpack
-	CROS_GO_WORKSPACE="${OUT}/gen/go"
-}
-
-src_prepare() {
-	default
-	cp "${FILESDIR}/BUILD.gn" "${S}"
-}
-
-src_install() {
-	cros-go_src_install
-}
diff --git a/chromeos-base/perfetto_proto/perfetto_proto-9999.ebuild b/chromeos-base/perfetto_proto/perfetto_proto-9999.ebuild
deleted file mode 100644
index 4b32448..0000000
--- a/chromeos-base/perfetto_proto/perfetto_proto-9999.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_GO_PACKAGES=(
-	"chromiumos/perfetto/trace_processor/..."
-)
-
-inherit cros-constants
-
-CROS_WORKON_LOCALNAME=("aosp/external/perfetto" "platform2")
-CROS_WORKON_PROJECT=("platform/external/perfetto" "chromiumos/platform2")
-CROS_WORKON_REPO=("${CROS_GIT_AOSP_URL}" "${CROS_GIT_HOST_URL}")
-CROS_WORKON_DESTDIR=("${S}/aosp/external/perfetto" "${S}/platform2")
-CROS_WORKON_EGIT_BRANCH=("master" "main")
-CROS_WORKON_SUBTREE=("" "common-mk .gn")
-
-PLATFORM_SUBDIR="./"
-
-inherit cros-go cros-workon platform
-
-DESCRIPTION="Perfetto go proto for Chrome OS"
-HOMEPAGE="https://android.googlesource.com/platform/external/perfetto/+/refs/tags/v15.0/protos/perfetto/metrics/android/"
-
-KEYWORDS="~*"
-IUSE="cros-debug"
-LICENSE="Apache-2.0"
-SLOT="0"
-
-# protobuf dep is for using protoc at build-time to generate perfetto's headers.
-BDEPEND="
-	dev-go/protobuf
-"
-
-src_unpack() {
-	platform_src_unpack
-	CROS_GO_WORKSPACE="${OUT}/gen/go"
-}
-
-src_prepare() {
-	default
-	cp "${FILESDIR}/BUILD.gn" "${S}"
-}
-
-src_install() {
-	cros-go_src_install
-}
diff --git a/chromeos-base/perfetto_simple_producer/perfetto_simple_producer-0.0.1-r22.ebuild b/chromeos-base/perfetto_simple_producer/perfetto_simple_producer-0.0.1-r22.ebuild
deleted file mode 100644
index aa83d54..0000000
--- a/chromeos-base/perfetto_simple_producer/perfetto_simple_producer-0.0.1-r22.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="c410642f8f3b60fa0a327cbcf7a9ec3d1a8a6b76"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "651dd9220b7c1753d9be19d970253a5b5efee7de" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk perfetto_simple_producer .gn"
-
-IUSE="cros-debug"
-
-PLATFORM_SUBDIR="perfetto_simple_producer"
-
-inherit cros-workon platform
-
-DESCRIPTION="Simple Producer of Perfetto for Chromium OS."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/perfetto_simple_producer"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-DEPEND="
-	chromeos-base/perfetto:="
-
-src_install() {
-	dobin "${OUT}"/perfetto_simple_producer
-}
diff --git a/chromeos-base/perfetto_simple_producer/perfetto_simple_producer-0.0.1-r47.ebuild b/chromeos-base/perfetto_simple_producer/perfetto_simple_producer-0.0.1-r47.ebuild
new file mode 100644
index 0000000..3ac0d3f
--- /dev/null
+++ b/chromeos-base/perfetto_simple_producer/perfetto_simple_producer-0.0.1-r47.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "651dd9220b7c1753d9be19d970253a5b5efee7de" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk perfetto_simple_producer .gn"
+
+IUSE="cros-debug"
+
+PLATFORM_SUBDIR="perfetto_simple_producer"
+
+inherit cros-workon platform
+
+DESCRIPTION="Simple Producer of Perfetto for Chromium OS."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/perfetto_simple_producer"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+DEPEND="
+	chromeos-base/perfetto:="
+
+src_install() {
+	dobin "${OUT}"/perfetto_simple_producer
+}
diff --git a/chromeos-base/permission_broker-client/permission_broker-client-0.0.1-r1885.ebuild b/chromeos-base/permission_broker-client/permission_broker-client-0.0.1-r1885.ebuild
deleted file mode 100644
index d748cbe..0000000
--- a/chromeos-base/permission_broker-client/permission_broker-client-0.0.1-r1885.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="5e27a24b2ce6909804fce92819b7f9752ad47565"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a43dee1645ab3169cf3c0d94a0d83cf4492ec75b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk permission_broker .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="permission_broker/client"
-
-inherit cros-workon platform
-
-DESCRIPTION="Permission Broker DBus client library for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/permission_broker/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros_host"
-
-# D-Bus proxies generated by this client library depend on the code generator
-# itself (chromeos-dbus-bindings) and produce header files that rely on
-# libbrillo library, hence both dependencies.
-DEPEND="
-	cros_host? ( chromeos-base/chromeos-dbus-bindings:= )
-"
-
-src_install() {
-	# Install DBus client library.
-	platform_install_dbus_client_lib "permission_broker"
-}
diff --git a/chromeos-base/permission_broker-client/permission_broker-client-0.0.1-r1914.ebuild b/chromeos-base/permission_broker-client/permission_broker-client-0.0.1-r1914.ebuild
new file mode 100644
index 0000000..148d910
--- /dev/null
+++ b/chromeos-base/permission_broker-client/permission_broker-client-0.0.1-r1914.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "5597a78a68ec9dc671f7e83a6d1c496e10183e08" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk permission_broker .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="permission_broker/client"
+
+inherit cros-workon platform
+
+DESCRIPTION="Permission Broker DBus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/permission_broker/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cros_host"
+
+# D-Bus proxies generated by this client library depend on the code generator
+# itself (chromeos-dbus-bindings) and produce header files that rely on
+# libbrillo library, hence both dependencies.
+DEPEND="
+	cros_host? ( chromeos-base/chromeos-dbus-bindings:= )
+"
+
+src_install() {
+	# Install DBus client library.
+	platform_install_dbus_client_lib "permission_broker"
+}
diff --git a/chromeos-base/permission_broker/permission_broker-0.0.1-r3137.ebuild b/chromeos-base/permission_broker/permission_broker-0.0.1-r3137.ebuild
deleted file mode 100644
index 9285ff6..0000000
--- a/chromeos-base/permission_broker/permission_broker-0.0.1-r3137.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="5e27a24b2ce6909804fce92819b7f9752ad47565"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a43dee1645ab3169cf3c0d94a0d83cf4492ec75b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk permission_broker .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="${PN}"
-
-inherit cros-workon platform udev user
-
-DESCRIPTION="Permission Broker for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/permission_broker/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cfm_enabled_device fuzzer"
-
-COMMMON_DEPEND="
-	chromeos-base/patchpanel-client:=
-	sys-apps/dbus:=
-	virtual/libusb:1
-	virtual/udev
-"
-
-RDEPEND="${COMMMON_DEPEND}"
-DEPEND="${COMMMON_DEPEND}
-	chromeos-base/system_api:=[fuzzer?]
-	sys-kernel/linux-headers:=
-"
-
-src_install() {
-	dobin "${OUT}"/permission_broker
-
-	# Install upstart configuration
-	insinto /etc/init
-	doins permission_broker.conf
-
-	# DBus configuration
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.PermissionBroker.conf
-
-	# Udev rules for hidraw nodes
-	udev_dorules "${FILESDIR}/99-hidraw.rules"
-
-	# Fuzzer.
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/port_tracker_fuzzer
-}
-
-platform_pkg_test() {
-	local tests=(
-		permission_broker_test
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
-
-pkg_preinst() {
-	enewuser "devbroker"
-	enewgroup "devbroker"
-}
diff --git a/chromeos-base/permission_broker/permission_broker-0.0.1-r3167.ebuild b/chromeos-base/permission_broker/permission_broker-0.0.1-r3167.ebuild
new file mode 100644
index 0000000..b98b13c
--- /dev/null
+++ b/chromeos-base/permission_broker/permission_broker-0.0.1-r3167.ebuild
@@ -0,0 +1,73 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "5597a78a68ec9dc671f7e83a6d1c496e10183e08" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk permission_broker .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="${PN}"
+
+inherit cros-workon platform udev user
+
+DESCRIPTION="Permission Broker for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/permission_broker/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cfm_enabled_device fuzzer"
+
+COMMMON_DEPEND="
+	chromeos-base/patchpanel-client:=
+	sys-apps/dbus:=
+	virtual/libusb:1
+	virtual/udev
+"
+
+RDEPEND="${COMMMON_DEPEND}"
+DEPEND="${COMMMON_DEPEND}
+	chromeos-base/system_api:=[fuzzer?]
+	sys-kernel/linux-headers:=
+"
+
+src_install() {
+	dobin "${OUT}"/permission_broker
+
+	# Install upstart configuration
+	insinto /etc/init
+	doins permission_broker.conf
+
+	# DBus configuration
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.PermissionBroker.conf
+
+	# Udev rules for hidraw nodes
+	udev_dorules "${FILESDIR}/99-hidraw.rules"
+
+	# Fuzzer.
+	local fuzzer_component_id="156085"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/port_tracker_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	local tests=(
+		permission_broker_test
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
+
+pkg_preinst() {
+	enewuser "devbroker"
+	enewgroup "devbroker"
+}
diff --git a/chromeos-base/permission_broker/permission_broker-9999.ebuild b/chromeos-base/permission_broker/permission_broker-9999.ebuild
index dd8a538..1a0ff04 100644
--- a/chromeos-base/permission_broker/permission_broker-9999.ebuild
+++ b/chromeos-base/permission_broker/permission_broker-9999.ebuild
@@ -49,7 +49,9 @@
 	udev_dorules "${FILESDIR}/99-hidraw.rules"
 
 	# Fuzzer.
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/port_tracker_fuzzer
+	local fuzzer_component_id="156085"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/port_tracker_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/policy-go-proto/policy-go-proto-0.0.1-r209.ebuild b/chromeos-base/policy-go-proto/policy-go-proto-0.0.1-r209.ebuild
deleted file mode 100644
index fa3db64..0000000
--- a/chromeos-base/policy-go-proto/policy-go-proto-0.0.1-r209.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "f6e985347a838bbbdd2997e97c4b4940571f2dd2" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_GO_PACKAGES=(
-	"chromiumos/policy/..."
-)
-
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk policy_proto .gn"
-
-PLATFORM_SUBDIR="policy_proto"
-
-inherit cros-go cros-workon platform
-
-DESCRIPTION="Chrome OS policy protocol buffer binding for go"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/policy_proto"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-DEPEND="
-	>=chromeos-base/protofiles-0.0.44:=
-	dev-go/protobuf:=
-	dev-libs/protobuf:=
-"
-
-src_install() {
-	cros-go_src_install
-}
-
-src_unpack() {
-	platform_src_unpack
-	CROS_GO_WORKSPACE="${OUT}/gen/go"
-}
diff --git a/chromeos-base/policy-go-proto/policy-go-proto-0.0.1-r235.ebuild b/chromeos-base/policy-go-proto/policy-go-proto-0.0.1-r235.ebuild
new file mode 100644
index 0000000..b33c432
--- /dev/null
+++ b/chromeos-base/policy-go-proto/policy-go-proto-0.0.1-r235.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "f6e985347a838bbbdd2997e97c4b4940571f2dd2" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_GO_PACKAGES=(
+	"chromiumos/policy/..."
+)
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk policy_proto .gn"
+
+PLATFORM_SUBDIR="policy_proto"
+
+inherit cros-go cros-workon platform
+
+DESCRIPTION="Chrome OS policy protocol buffer binding for go"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/policy_proto"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+DEPEND="
+	>=chromeos-base/protofiles-0.0.48:=
+	dev-go/protobuf:=
+	dev-libs/protobuf:=
+"
+
+src_install() {
+	cros-go_src_install
+}
+
+src_unpack() {
+	platform_src_unpack
+	CROS_GO_WORKSPACE="${OUT}/gen/go"
+}
diff --git a/chromeos-base/policy-go-proto/policy-go-proto-9999.ebuild b/chromeos-base/policy-go-proto/policy-go-proto-9999.ebuild
index d0468bc..2cc22a1 100644
--- a/chromeos-base/policy-go-proto/policy-go-proto-9999.ebuild
+++ b/chromeos-base/policy-go-proto/policy-go-proto-9999.ebuild
@@ -23,7 +23,7 @@
 KEYWORDS="~*"
 
 DEPEND="
-	>=chromeos-base/protofiles-0.0.44:=
+	>=chromeos-base/protofiles-0.0.48:=
 	dev-go/protobuf:=
 	dev-libs/protobuf:=
 "
diff --git a/chromeos-base/policy-testserver/policy-testserver-0.0.1-r9.ebuild b/chromeos-base/policy-testserver/policy-testserver-0.0.1-r10.ebuild
similarity index 100%
rename from chromeos-base/policy-testserver/policy-testserver-0.0.1-r9.ebuild
rename to chromeos-base/policy-testserver/policy-testserver-0.0.1-r10.ebuild
diff --git a/chromeos-base/policy-testserver/policy-testserver-0.0.1.ebuild b/chromeos-base/policy-testserver/policy-testserver-0.0.1.ebuild
index 8e5b2ad..4b50f14d 100644
--- a/chromeos-base/policy-testserver/policy-testserver-0.0.1.ebuild
+++ b/chromeos-base/policy-testserver/policy-testserver-0.0.1.ebuild
@@ -21,7 +21,7 @@
 
 	"components/policy"
 	"${CROS_GIT_HOST_URL}/chromium/src/components/policy.git"
-	"d41300e697b4fe812cb37f4655b059bcc71ad78a"
+	"32d024b3f87c660b931f82dc7c45252cef54d2ee"
 
 	# private_membership and shell_encryption are not used in Chrome OS at
 	# the moment. They are just required to compile the proto files. An
diff --git a/chromeos-base/policy_utils/policy_utils-0.0.1-r212.ebuild b/chromeos-base/policy_utils/policy_utils-0.0.1-r212.ebuild
deleted file mode 100644
index 26407f2..0000000
--- a/chromeos-base/policy_utils/policy_utils-0.0.1-r212.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "bf58ace8c926195d4bb88f6341df4c0acccfd003" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="common-mk policy_utils .gn"
-
-PLATFORM_SUBDIR="policy_utils"
-
-inherit cros-workon platform
-
-DESCRIPTION="Device-policy-management library and tool for Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/policy_utils/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-
-COMMON_DEPEND="
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/system_api
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-"
-
-src_install() {
-	dosbin "${OUT}/policy"
-}
-
-platform_pkg_test() {
-	local tests=(
-		libmgmt_test
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/policy_utils/policy_utils-0.0.1-r238.ebuild b/chromeos-base/policy_utils/policy_utils-0.0.1-r238.ebuild
new file mode 100644
index 0000000..913508e
--- /dev/null
+++ b/chromeos-base/policy_utils/policy_utils-0.0.1-r238.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "1e1e0c6f92d27a5c185ea1ba3cdfc88575ce4182" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="common-mk policy_utils .gn"
+
+PLATFORM_SUBDIR="policy_utils"
+
+inherit cros-workon platform
+
+DESCRIPTION="Device-policy-management library and tool for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/policy_utils/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+
+COMMON_DEPEND="
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/system_api
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+"
+
+src_install() {
+	dosbin "${OUT}/policy"
+}
+
+platform_pkg_test() {
+	local tests=(
+		libmgmt_test
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/power_manager-client/power_manager-client-0.0.1-r2138.ebuild b/chromeos-base/power_manager-client/power_manager-client-0.0.1-r2138.ebuild
deleted file mode 100644
index ce2d469..0000000
--- a/chromeos-base/power_manager-client/power_manager-client-0.0.1-r2138.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="bc0dd38e943097b1788d08f7b76ff4167c1d0efd"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "71cce620cf464ad17334cff4d450f8805cd6c507" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk power_manager .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="power_manager/client"
-
-inherit cros-workon platform
-
-DESCRIPTION="Power manager DBus client library for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/power_manager/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros_host"
-
-DEPEND=""
-RDEPEND=""
-
-BDEPEND="
-	chromeos-base/chromeos-dbus-bindings:=
-"
-
-src_install() {
-	# Install DBus client library.
-	platform_install_dbus_client_lib "power_manager"
-}
diff --git a/chromeos-base/power_manager-client/power_manager-client-0.0.1-r2198.ebuild b/chromeos-base/power_manager-client/power_manager-client-0.0.1-r2198.ebuild
new file mode 100644
index 0000000..c10367a
--- /dev/null
+++ b/chromeos-base/power_manager-client/power_manager-client-0.0.1-r2198.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "b45ddf70409958a65c0330dc8f5702e7074f8cc7" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk power_manager .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="power_manager/client"
+
+inherit cros-workon platform
+
+DESCRIPTION="Power manager DBus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/power_manager/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cros_host"
+
+DEPEND=""
+RDEPEND=""
+
+BDEPEND="
+	chromeos-base/chromeos-dbus-bindings:=
+"
+
+src_install() {
+	# Install DBus client library.
+	platform_install_dbus_client_lib "power_manager"
+}
diff --git a/chromeos-base/power_manager/power_manager-0.0.2-r3790.ebuild b/chromeos-base/power_manager/power_manager-0.0.2-r3790.ebuild
deleted file mode 100644
index 22b8da8..0000000
--- a/chromeos-base/power_manager/power_manager-0.0.2-r3790.ebuild
+++ /dev/null
@@ -1,192 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="bc0dd38e943097b1788d08f7b76ff4167c1d0efd"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "47f6ceba57219100723f2671e0d507bd7605f22f" "aa0612733aca2d5ffa65470f07408228b473ebdb" "da73aae6d89c8e69c3740af612610792ce42b1a8" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "71cce620cf464ad17334cff4d450f8805cd6c507" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_USE_VCSID="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk buffet chromeos-config iioservice metrics power_manager .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="power_manager"
-
-inherit tmpfiles cros-workon platform systemd udev user
-
-DESCRIPTION="Power Manager for Chromium OS"
-HOMEPAGE="http://dev.chromium.org/chromium-os/packages/power_manager"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="-als buffet cellular +cras cros_embedded +display_backlight fuzzer generated_cros_config -has_keyboard_backlight iioservice -keyboard_includes_side_buttons keyboard_convertible_no_side_buttons -legacy_power_button -mosys_eventlog +powerknobs systemd +touchpad_wakeup -touchscreen_wakeup unibuild wilco qrtr"
-REQUIRED_USE="
-	?? ( keyboard_includes_side_buttons keyboard_convertible_no_side_buttons )"
-
-COMMON_DEPEND="
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
-	chromeos-base/chromeos-config-tools:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	dev-libs/libnl:=
-	dev-libs/protobuf:=
-	dev-libs/re2:=
-	cras? ( media-sound/adhd:= )
-	virtual/udev
-	cellular? ( net-misc/modemmanager-next:= )"
-
-RDEPEND="${COMMON_DEPEND}
-	chromeos-base/ec-utils
-	iioservice? ( chromeos-base/libiioservice_ipc:= )
-	mosys_eventlog? ( sys-apps/mosys )
-	qrtr? ( net-libs/libqrtr:= )
-"
-
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/chromeos-ec-headers:=
-	chromeos-base/system_api:=[fuzzer?]
-	qrtr? ( sys-apps/upstart:= )
-"
-
-pkg_setup() {
-	# Create the 'power' user and group here in pkg_setup as src_install needs
-	# them to change the ownership of power manager files.
-	enewuser "power"
-	enewgroup "power"
-	# Ensure that this group exists so that power_manager can access
-	# /dev/cros_ec.
-	enewgroup "cros_ec-access"
-	cros-workon_pkg_setup
-}
-
-src_install() {
-	# Binaries for production
-	dobin "${OUT}"/backlight_tool  # boot-splash, chromeos-boot-alert
-	dobin "${OUT}"/dump_power_status  # crosh's battery_test command
-	dobin "${OUT}"/powerd
-	dobin "${OUT}"/powerd_setuid_helper
-	dobin "${OUT}"/power_supply_info  # feedback
-	dobin "${OUT}"/set_cellular_transmit_power
-	dobin "${OUT}"/set_wifi_transmit_power
-	fowners root:power /usr/bin/powerd_setuid_helper
-	fperms 4750 /usr/bin/powerd_setuid_helper
-
-	# Binaries for testing and debugging
-	dobin "${OUT}"/check_powerd_config
-	use amd64 && dobin "${OUT}"/dump_intel_rapl_consumption
-	dobin "${OUT}"/inject_powerd_input_event
-	dobin "${OUT}"/memory_suspend_test
-	dobin "${OUT}"/powerd_dbus_suspend
-	dobin "${OUT}"/send_debug_power_status
-	dobin "${OUT}"/set_power_policy
-	dobin "${OUT}"/suspend_delay_sample
-
-	# Scripts for production
-	dobin powerd/powerd_suspend
-	dobin tools/cpufreq_config
-	dobin tools/print_sysfs_power_supply_data  # feedback
-	dobin tools/send_metrics_on_resume
-	dobin tools/thermal_zone_config
-
-	# Scripts for testing and debugging
-	dobin tools/activate_short_dark_resume
-	dobin tools/debug_sleep_quickly
-	dobin tools/set_short_powerd_timeouts
-	dobin tools/suspend_stress_test
-
-	# Scripts called from init scripts
-	exeinto /usr/share/cros/init/
-	doexe tools/temp_logger.sh
-
-	# Preferences
-	insinto /usr/share/power_manager
-	doins default_prefs/*
-	use als && doins optional_prefs/has_ambient_light_sensor
-	use cras && doins optional_prefs/use_cras
-	use display_backlight || doins optional_prefs/external_display_only
-	use has_keyboard_backlight && doins optional_prefs/has_keyboard_backlight
-	use legacy_power_button && doins optional_prefs/legacy_power_button
-	use mosys_eventlog && doins optional_prefs/mosys_eventlog
-
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.PowerManager.conf
-
-	# udev scripts and rules.
-	exeinto "$(get_udevdir)"
-	doexe udev/*.sh
-	udev_dorules udev/*.rules
-
-	if use powerknobs; then
-		udev/gen_autosuspend_rules.py > "${T}"/98-autosuspend.rules || die
-		udev_dorules "${T}"/98-autosuspend.rules
-		udev_dorules udev/optional/98-powerknobs.rules
-		dobin udev/optional/set_blkdev_pm
-	fi
-	if use keyboard_includes_side_buttons; then
-		udev_dorules udev/optional/93-powerd-tags-keyboard-side-buttons.rules
-	elif use keyboard_convertible_no_side_buttons; then
-		udev_dorules udev/optional/93-powerd-tags-keyboard-convertible.rules
-	fi
-
-	if ! use touchpad_wakeup; then
-		udev_dorules udev/optional/93-powerd-tags-no-touchpad-wakeup.rules
-	elif use unibuild; then
-		udev_dorules udev/optional/93-powerd-tags-unibuild-touchpad-wakeup.rules
-	fi
-
-	if use touchscreen_wakeup; then
-		udev_dorules udev/optional/93-powerd-tags-touchscreen-wakeup.rules
-	fi
-
-	if use wilco; then
-		udev_dorules udev/optional/93-powerd-wilco-ec-files.rules
-
-		exeinto /usr/share/cros/init/optional
-		doexe init/shared/optional/powerd-pre-start-wilco.sh
-	fi
-
-	# Init scripts
-	if use systemd; then
-		systemd_dounit init/systemd/*.service
-		systemd_enable_service boot-services.target powerd.service
-		systemd_enable_service system-services.target report-power-metrics.service
-		systemd_dotmpfilesd init/systemd/powerd_directories.conf
-	else
-		insinto /etc/init
-		doins init/upstart/*.conf
-	fi
-	exeinto /usr/share/cros/init
-	doexe init/shared/powerd-pre-start.sh
-
-	dotmpfiles tmpfiles.d/*.conf
-
-	if use buffet; then
-		# Buffet command handler definition
-		insinto /etc/buffet/commands
-		doins powerd/buffet/*.json
-	fi
-
-	# Install fuzz targets.
-	local fuzzer
-	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}"
-	done
-}
-
-platform_pkg_test() {
-	local tests=(
-		power_manager_daemon_test
-		power_manager_policy_test
-		power_manager_system_test
-		power_manager_util_test
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/power_manager/power_manager-0.0.2-r3919.ebuild b/chromeos-base/power_manager/power_manager-0.0.2-r3919.ebuild
new file mode 100644
index 0000000..274d631
--- /dev/null
+++ b/chromeos-base/power_manager/power_manager-0.0.2-r3919.ebuild
@@ -0,0 +1,194 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "7e1c963c411477282f734722b3e2b5cb9f0e8462" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "14acd311021ff7b4a6e5a812cf6ef18bab1ede72" "ad1fd2e4d4c9cb42d85d97fe12f958890ad6ab14" "e08a2eb734e33827dffeecf57eca046cd1091373" "b45ddf70409958a65c0330dc8f5702e7074f8cc7" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_USE_VCSID="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk buffet chromeos-config iioservice libec metrics power_manager .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="power_manager"
+
+inherit tmpfiles cros-workon cros-unibuild platform systemd udev user
+
+DESCRIPTION="Power Manager for Chromium OS"
+HOMEPAGE="http://dev.chromium.org/chromium-os/packages/power_manager"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="-als buffet cellular +cras cros_embedded +display_backlight fuzzer -has_keyboard_backlight iioservice -keyboard_includes_side_buttons keyboard_convertible_no_side_buttons -legacy_power_button -mosys_eventlog +powerknobs systemd +touchpad_wakeup -touchscreen_wakeup unibuild wilco qrtr"
+REQUIRED_USE="
+	?? ( keyboard_includes_side_buttons keyboard_convertible_no_side_buttons )"
+
+COMMON_DEPEND="
+	chromeos-base/chromeos-config-tools:=
+	chromeos-base/libec:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/tpm_manager-client:=
+	dev-libs/libnl:=
+	dev-libs/protobuf:=
+	dev-libs/re2:=
+	cras? ( media-sound/adhd:= )
+	virtual/udev
+	cellular? ( net-misc/modemmanager-next:= )"
+
+RDEPEND="${COMMON_DEPEND}
+	chromeos-base/ec-utils
+	iioservice? ( chromeos-base/libiioservice_ipc:= )
+	mosys_eventlog? ( sys-apps/mosys )
+	qrtr? ( net-libs/libqrtr:= )
+"
+
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/chromeos-ec-headers:=
+	chromeos-base/system_api:=[fuzzer?]
+	qrtr? ( sys-apps/upstart:= )
+"
+
+pkg_setup() {
+	# Create the 'power' user and group here in pkg_setup as src_install needs
+	# them to change the ownership of power manager files.
+	enewuser "power"
+	enewgroup "power"
+	# Ensure that this group exists so that power_manager can access
+	# /dev/cros_ec.
+	enewgroup "cros_ec-access"
+	cros-workon_pkg_setup
+}
+
+src_install() {
+	# Binaries for production
+	dobin "${OUT}"/backlight_tool  # boot-splash, chromeos-boot-alert
+	dobin "${OUT}"/cpufreq_config
+	dobin "${OUT}"/dump_power_status  # crosh's battery_test command
+	dobin "${OUT}"/powerd
+	dobin "${OUT}"/powerd_setuid_helper
+	dobin "${OUT}"/power_supply_info  # feedback
+	dobin "${OUT}"/set_cellular_transmit_power
+	dobin "${OUT}"/set_wifi_transmit_power
+	fowners root:power /usr/bin/powerd_setuid_helper
+	fperms 4750 /usr/bin/powerd_setuid_helper
+
+	# Binaries for testing and debugging
+	dobin "${OUT}"/check_powerd_config
+	use amd64 && dobin "${OUT}"/dump_intel_rapl_consumption
+	dobin "${OUT}"/inject_powerd_input_event
+	dobin "${OUT}"/memory_suspend_test
+	dobin "${OUT}"/powerd_dbus_suspend
+	dobin "${OUT}"/send_debug_power_status
+	dobin "${OUT}"/set_power_policy
+	dobin "${OUT}"/suspend_delay_sample
+
+	# Scripts for production
+	dobin powerd/powerd_suspend
+	dobin tools/print_sysfs_power_supply_data  # feedback
+	dobin tools/send_metrics_on_resume
+	dobin tools/thermal_zone_config
+
+	# Scripts for testing and debugging
+	dobin tools/activate_short_dark_resume
+	dobin tools/debug_sleep_quickly
+	dobin tools/set_short_powerd_timeouts
+	dobin tools/suspend_stress_test
+
+	# Scripts called from init scripts
+	exeinto /usr/share/cros/init/
+	doexe tools/temp_logger.sh
+
+	# Preferences
+	insinto /usr/share/power_manager
+	doins default_prefs/*
+	use als && doins optional_prefs/has_ambient_light_sensor
+	use cras && doins optional_prefs/use_cras
+	use display_backlight || doins optional_prefs/external_display_only
+	use has_keyboard_backlight && doins optional_prefs/has_keyboard_backlight
+	use legacy_power_button && doins optional_prefs/legacy_power_button
+	use mosys_eventlog && doins optional_prefs/mosys_eventlog
+
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.PowerManager.conf
+
+	# udev scripts and rules.
+	exeinto "$(get_udevdir)"
+	doexe udev/*.sh
+	udev_dorules udev/*.rules
+
+	if use powerknobs; then
+		udev/gen_autosuspend_rules.py > "${T}"/98-autosuspend.rules || die
+		udev_dorules "${T}"/98-autosuspend.rules
+		udev_dorules udev/optional/98-powerknobs.rules
+		dobin udev/optional/set_blkdev_pm
+	fi
+	if use keyboard_includes_side_buttons; then
+		udev_dorules udev/optional/93-powerd-tags-keyboard-side-buttons.rules
+	elif use keyboard_convertible_no_side_buttons; then
+		udev_dorules udev/optional/93-powerd-tags-keyboard-convertible.rules
+	fi
+
+	if ! use touchpad_wakeup; then
+		udev_dorules udev/optional/93-powerd-tags-no-touchpad-wakeup.rules
+	elif use unibuild; then
+		udev_dorules udev/optional/93-powerd-tags-unibuild-touchpad-wakeup.rules
+	fi
+
+	if use touchscreen_wakeup; then
+		udev_dorules udev/optional/93-powerd-tags-touchscreen-wakeup.rules
+	elif use unibuild; then
+		udev_dorules udev/optional/93-powerd-tags-unibuild-touchscreen-wakeup.rules
+	fi
+
+	if use wilco; then
+		udev_dorules udev/optional/93-powerd-wilco-ec-files.rules
+
+		exeinto /usr/share/cros/init/optional
+		doexe init/shared/optional/powerd-pre-start-wilco.sh
+	fi
+
+	# Init scripts
+	if use systemd; then
+		systemd_dounit init/systemd/*.service
+		systemd_enable_service boot-services.target powerd.service
+		systemd_enable_service system-services.target report-power-metrics.service
+		systemd_dotmpfilesd init/systemd/powerd_directories.conf
+	else
+		insinto /etc/init
+		doins init/upstart/*.conf
+	fi
+	exeinto /usr/share/cros/init
+	doexe init/shared/powerd-pre-start.sh
+
+	dotmpfiles tmpfiles.d/*.conf
+
+	if use buffet; then
+		# Buffet command handler definition
+		insinto /etc/buffet/commands
+		doins powerd/buffet/*.json
+	fi
+
+	# Install fuzz targets.
+	local fuzzer
+	for fuzzer in "${OUT}"/*_fuzzer; do
+		local fuzzer_component_id="167191"
+		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}" \
+			--comp "${fuzzer_component_id}"
+	done
+}
+
+platform_pkg_test() {
+	local tests=(
+		power_manager_daemon_test
+		power_manager_policy_test
+		power_manager_system_test
+		power_manager_util_test
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/power_manager/power_manager-9999.ebuild b/chromeos-base/power_manager/power_manager-9999.ebuild
index 76d9f27..6f9da33 100644
--- a/chromeos-base/power_manager/power_manager-9999.ebuild
+++ b/chromeos-base/power_manager/power_manager-9999.ebuild
@@ -7,29 +7,27 @@
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_OUTOFTREE_BUILD=1
 # TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk buffet chromeos-config iioservice metrics power_manager .gn"
+CROS_WORKON_SUBTREE="common-mk buffet chromeos-config iioservice libec metrics power_manager .gn"
 
 PLATFORM_NATIVE_TEST="yes"
 PLATFORM_SUBDIR="power_manager"
 
-inherit tmpfiles cros-workon platform systemd udev user
+inherit tmpfiles cros-workon cros-unibuild platform systemd udev user
 
 DESCRIPTION="Power Manager for Chromium OS"
 HOMEPAGE="http://dev.chromium.org/chromium-os/packages/power_manager"
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="-als buffet cellular +cras cros_embedded +display_backlight fuzzer generated_cros_config -has_keyboard_backlight iioservice -keyboard_includes_side_buttons keyboard_convertible_no_side_buttons -legacy_power_button -mosys_eventlog +powerknobs systemd +touchpad_wakeup -touchscreen_wakeup unibuild wilco qrtr"
+IUSE="-als buffet cellular +cras cros_embedded +display_backlight fuzzer -has_keyboard_backlight iioservice -keyboard_includes_side_buttons keyboard_convertible_no_side_buttons -legacy_power_button -mosys_eventlog +powerknobs systemd +touchpad_wakeup -touchscreen_wakeup unibuild wilco qrtr"
 REQUIRED_USE="
 	?? ( keyboard_includes_side_buttons keyboard_convertible_no_side_buttons )"
 
 COMMON_DEPEND="
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
 	chromeos-base/chromeos-config-tools:=
+	chromeos-base/libec:=
 	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/tpm_manager-client:=
 	dev-libs/libnl:=
 	dev-libs/protobuf:=
 	dev-libs/re2:=
@@ -64,6 +62,7 @@
 src_install() {
 	# Binaries for production
 	dobin "${OUT}"/backlight_tool  # boot-splash, chromeos-boot-alert
+	dobin "${OUT}"/cpufreq_config
 	dobin "${OUT}"/dump_power_status  # crosh's battery_test command
 	dobin "${OUT}"/powerd
 	dobin "${OUT}"/powerd_setuid_helper
@@ -85,7 +84,6 @@
 
 	# Scripts for production
 	dobin powerd/powerd_suspend
-	dobin tools/cpufreq_config
 	dobin tools/print_sysfs_power_supply_data  # feedback
 	dobin tools/send_metrics_on_resume
 	dobin tools/thermal_zone_config
@@ -138,6 +136,8 @@
 
 	if use touchscreen_wakeup; then
 		udev_dorules udev/optional/93-powerd-tags-touchscreen-wakeup.rules
+	elif use unibuild; then
+		udev_dorules udev/optional/93-powerd-tags-unibuild-touchscreen-wakeup.rules
 	fi
 
 	if use wilco; then
@@ -171,7 +171,9 @@
 	# Install fuzz targets.
 	local fuzzer
 	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}"
+		local fuzzer_component_id="167191"
+		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}" \
+			--comp "${fuzzer_component_id}"
 	done
 }
 
diff --git a/chromeos-base/print_tools/print_tools-0.0.1-r137.ebuild b/chromeos-base/print_tools/print_tools-0.0.1-r137.ebuild
deleted file mode 100644
index 1b1ca84..0000000
--- a/chromeos-base/print_tools/print_tools-0.0.1-r137.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "4b4fcd4dc4944c9bab8f045c666e71f7045ef67a" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk print_tools .gn"
-
-PLATFORM_SUBDIR="print_tools"
-
-inherit cros-workon platform
-
-DESCRIPTION="Various tools for the native printing system."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/print_tools/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-COMMON_DEPEND="
-	chromeos-base/libipp:=
-"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}"
-
-src_install() {
-	dobin "${OUT}"/printer_diag
-}
diff --git a/chromeos-base/print_tools/print_tools-0.0.1-r165.ebuild b/chromeos-base/print_tools/print_tools-0.0.1-r165.ebuild
new file mode 100644
index 0000000..489231e
--- /dev/null
+++ b/chromeos-base/print_tools/print_tools-0.0.1-r165.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "16ed628a2ab08887298d13700ab8efe04c8cd38f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk print_tools .gn"
+
+PLATFORM_SUBDIR="print_tools"
+
+inherit cros-workon platform
+
+DESCRIPTION="Various tools for the native printing system."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/print_tools/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+COMMON_DEPEND="
+	chromeos-base/libipp:=
+"
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}"
+
+src_install() {
+	dobin "${OUT}"/printer_diag
+}
diff --git a/chromeos-base/protofiles/files/VERSION b/chromeos-base/protofiles/files/VERSION
index bc7c7b4..865dfe6 100644
--- a/chromeos-base/protofiles/files/VERSION
+++ b/chromeos-base/protofiles/files/VERSION
@@ -1,4 +1,4 @@
-MAJOR=93
+MAJOR=95
 MINOR=0
 BUILD=4523
 PATCH=0
diff --git a/chromeos-base/protofiles/files/policy_reader b/chromeos-base/protofiles/files/policy_reader
deleted file mode 100755
index c0b1fad..0000000
--- a/chromeos-base/protofiles/files/policy_reader
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/bin/bash
-# Copyright (c) 2011 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.
-
-TMP_DIR="/tmp"
-PROTO_DIR="/usr/local/share/protofiles"
-PROTO_FILE="/var/lib/whitelist/policy"
-
-# Extracts a field from the protobuf and unescapes it. This function takes two
-# parameters: $1 is the field name without a trailing colon and $2 is the file
-# where the input data is. This file must be in $TMP_DIR. The output is the
-# raw unsecaped string.
-function extract_protobuf_field() {
-  protobuf_field=$(grep "$1:" "$TMP_DIR/$2" | \
-    sed "s/^$1: \"\(.*\)\"$/\1/;s/%/%%/g")
-  printf "$protobuf_field"
-}
-
-# Decodes the policy blob and prints it to the screen.
-function decode_policy() {
-  # Decode the wrapper protobuf.
-  protoc --decode=enterprise_management.PolicyFetchResponse \
-    -I "$PROTO_DIR" \
-    "$PROTO_DIR/device_management_backend.proto" > \
-  "$TMP_DIR/decoded_policy_response"
-
-  # Decode the payload protobuf.
-  extract_protobuf_field "policy_data" "decoded_policy_response" | \
-  protoc --decode=enterprise_management.PolicyData \
-    -I "$PROTO_DIR" \
-    "$PROTO_DIR/device_management_backend.proto" > \
-  "$TMP_DIR/policy_response_payload"
-
-  # And the wrapped device policy data interpreted as device policy.
-  extract_protobuf_field "policy_value" "policy_response_payload" | \
-  protoc --decode=enterprise_management.ChromeDeviceSettingsProto \
-    -I "$PROTO_DIR" \
-    "$PROTO_DIR/chrome_device_policy.proto"
-
-  rm "$TMP_DIR/decoded_policy_response" "$TMP_DIR/policy_response_payload"
-}
-
-cat "$PROTO_FILE" | decode_policy
diff --git a/chromeos-base/protofiles/files/protofiles-add-device-target-version-selector-policy.patch b/chromeos-base/protofiles/files/protofiles-add-device-target-version-selector-policy.patch
new file mode 100644
index 0000000..b3e0082
--- /dev/null
+++ b/chromeos-base/protofiles/files/protofiles-add-device-target-version-selector-policy.patch
@@ -0,0 +1,89 @@
+This patch contains the device settings proto changes that were introduced in
+the chromium repo per crrev.com/c/3074788. We unfortunately can't roll
+protofiles right now because of CQ failures (see crbug.com/1254434). This patch
+is a temporary stop gap solution to allow work that depends on the proto changes
+to land. Once protofiles can be properly upreved again, the patch is no longer
+needed and should be dropped.
+
+diff --git a/cloud/policy/proto/chrome_device_policy.proto b/cloud/policy/proto/chrome_device_policy.proto
+index 48281ad3..f88b8ae9 100644
+--- a/cloud/policy/proto/chrome_device_policy.proto
++++ b/cloud/policy/proto/chrome_device_policy.proto
+@@ -348,6 +348,11 @@ message AutoUpdateSettingsProto {
+   // Specifies what should happen if the device channel is downgraded.
+   optional ChannelDowngradeBehavior channel_downgrade_behavior = 16
+       [default = WAIT_FOR_VERSION_CATCH_UP];
++
++  // |target_version_selector| is forwarded as the "targetversionselector"
++  // attribute to Omaha and is used by it if for minor version pinning. The
++  // field is not and shall not be processed by the client.
++  optional string target_version_selector = 17;
+ }
+
+ message OBSOLETE_StartUpUrlsProto {
+diff --git a/cloud/policy/resources/policy_templates.json b/cloud/policy/resources/policy_templates.json
+index fe1c2c4e..cc13cbd8 100644
+--- a/cloud/policy/resources/policy_templates.json
++++ b/cloud/policy/resources/policy_templates.json
+@@ -964,6 +964,7 @@
+         'DeviceAutoUpdateP2PEnabled',
+         'DeviceAutoUpdateTimeRestrictions',
+         'DeviceTargetVersionPrefix',
++        'DeviceTargetVersionSelector',
+         'DeviceUpdateStagingSchedule',
+         'DeviceUpdateScatterFactor',
+         'DeviceUpdateAllowedConnectionTypes',
+@@ -10599,6 +10600,35 @@
+
+       Warning: It is not recommended to configure version restrictions as they may prevent users from receiving software updates and critical security fixes. Restricting updates to a specific version prefix might leave users at risk.''',
+     },
++    {
++      'name': 'DeviceTargetVersionSelector',
++      'owners': ['vsavu@google.com', 'asumaneev@google.com', 'file://components/policy/resources/OWNERS'],
++      'type': 'string',
++      'schema': { 'type': 'string' },
++      'supported_on': ['chrome_os:95-'],
++      'device_only': True,
++      'features': {
++        'dynamic_refresh': True,
++      },
++      'example_value': '0,1626155736-',
++      'id': 862,
++      'caption': '''Allow devices to select a specific version to update to''',
++      'tags': ['system-security'],
++      'desc': '''This setting allows devices to select a specific target version of <ph name="PRODUCT_OS_NAME">$2<ex>Google Chrome OS</ex></ph> they will update to.
++
++      If not set, devices will update according to other settings or to the latest available version.
++
++      If set, devices will update up to a selected version.
++
++      The exact format of this policy value is an impelmentation details of the update service and may change. The policy value is not processed on the device.
++
++      If used together with <ph name="DEVICE_TARGET_VERSION_PREFIX_POLICY_NAME">DeviceTargetVersionPrefix</ph>, this policy will be checked first by update service.
++      Unlike <ph name="DEVICE_TARGET_VERSION_PREFIX_POLICY_NAME">DeviceTargetVersionPrefix</ph> (which may allow minor updates), devices will stay on the selected version until the value of this policy is changed.
++
++      If used together with <ph name="DEVICE_ROLLBACK_TO_TARGET_VERSION_POLICY_NAME">DeviceRollbackToTargetVersion</ph>, device version can be reverted to a specific previous version.
++
++      Warning: It is not recommended to configure version restrictions as they may prevent users from receiving software updates and critical security fixes. Restricting updates to a specific version might leave users at risk.''',
++    },
+     {
+       'name': 'DeviceUpdateScatterFactor',
+       'owners': ['file://components/policy/resources/OWNERS', 'emaxx@chromium.org'],
+@@ -26346,6 +26376,7 @@ The recommended way to configure policy on Windows is via GPO, although provisio
+     'DeviceChannelDowngradeBehavior': 'auto_update_settings.channel_downgrade_behavior',
+     'DeviceAutoUpdateDisabled': 'auto_update_settings.update_disabled',
+     'DeviceTargetVersionPrefix': 'auto_update_settings.target_version_prefix',
++    'DeviceTargetVersionSelector': 'auto_update_settings.target_version_selector',
+     'DeviceRollbackToTargetVersion': 'auto_update_settings.rollback_to_target_version',
+     'DeviceRollbackAllowedMilestones': 'auto_update_settings.rollback_allowed_milestones',
+     'DeviceUpdateScatterFactor': 'auto_update_settings.scatter_factor_in_seconds',
+@@ -26946,6 +26977,6 @@ The recommended way to configure policy on Windows is via GPO, although provisio
+   'placeholders': [],
+   'deleted_policy_ids': [114, 115, 204, 205, 206, 412, 476, 544, 546, 562, 569, 578, 583, 585, 586, 587, 588, 589, 590, 591, 600, 668, 669],
+   'deleted_atomic_policy_group_ids': [19],
+-  'highest_id_currently_used': 861,
++  'highest_id_currently_used': 862,
+   'highest_atomic_group_id_currently_used': 40
+ }
+--
+2.33.0.685.g46640cef36-goog
diff --git a/chromeos-base/protofiles/files/protofiles-pci-peripheral-data-access-enabled-v2.patch b/chromeos-base/protofiles/files/protofiles-pci-peripheral-data-access-enabled-v2.patch
new file mode 100644
index 0000000..1fb0a87
--- /dev/null
+++ b/chromeos-base/protofiles/files/protofiles-pci-peripheral-data-access-enabled-v2.patch
@@ -0,0 +1,36 @@
+This patch contains the device settings proto changes that were introduced in
+the chromium repo per crrev.com/c/2908073. We unfortunately can't roll
+protofiles right now due Authpolicy tests failure after picking up the latest
+proto changes (see crbug.com/1234804). This patch is a temporary stop gap
+solution to allow work that depends on the proto changes to land. Once protofiles
+can be properly upreved again, the patch is no longer needed and should be dropped.
+
+--- a/cloud/policy/proto/chrome_device_policy.proto
++++ b/cloud/policy/proto/chrome_device_policy.proto
+@@ -1759,11 +1759,19 @@
+ }
+ 
+ // Setting that controls whether data access is enabled for Thunderbolt/USB4
+-// peripherals.
++// peripherals. This proto is no longer being used, please use
++// DevicePciPeripheralDataAccessEnabledProtoV2.
+ message DevicePciPeripheralDataAccessEnabledProto {
+   optional bool enabled = 1 [default = false];
+ }
+ 
++// Setting that controls whether data access is enabled for Thunderbolt/USB4
++// peripherals. This replaces DevicePciPeripheralDataAccessEnabledProto. Used
++// only for the associated CrosSetting.
++message DevicePciPeripheralDataAccessEnabledProtoV2 {
++  optional bool enabled = 1;
++}
++
+ // Setting that controls whether Borealis will be allowed on the device.
+ message DeviceBorealisAllowedProto {
+   optional bool allowed = 1 [default = true];
+@@ -1946,4 +1954,6 @@
+   optional DeviceDebugPacketCaptureAllowedProto
+       device_debug_packet_capture_allowed = 121;
++  optional DevicePciPeripheralDataAccessEnabledProtoV2
++      device_pci_peripheral_data_access_enabled_v2 = 123;
+ }
diff --git a/chromeos-base/protofiles/protofiles-0.0.46.ebuild b/chromeos-base/protofiles/protofiles-0.0.46.ebuild
deleted file mode 100644
index 3feb6db..0000000
--- a/chromeos-base/protofiles/protofiles-0.0.46.ebuild
+++ /dev/null
@@ -1,152 +0,0 @@
-# Copyright (c) 2009 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# This project checks out the proto files from the read only repositories
-# linked to the following directories of the Chromium project:
-
-#   - src/components/policy
-
-# This project is not cros-work-able: if changes to the protobufs are needed
-# then they should be done in the Chromium repository, and the commits below
-# should be updated.
-
-EAPI="7"
-
-# We don't need the history at all.
-EGIT_CLONE_TYPE="shallow"
-
-# TODO(crbug.com/984182): We force Python 2 because depot_tools doesn't support Python 3.
-PYTHON_COMPAT=( python2_7 )
-
-inherit cros-constants eutils git-r3 python-any-r1
-
-# Every 3 strings in this array indicates a repository to checkout:
-#   - A unique name (to avoid checkout conflits)
-#   - The repository URL
-#   - The commit to checkout
-EGIT_REPO_URIS=(
-	"cloud/policy"
-	"${CROS_GIT_HOST_URL}/chromium/src/components/policy.git"
-	"a7c6ef05a492d12270d4090c1e7168f18a0adcdb"
-
-	# If you uprev these repos, please also:
-	# - Update files/VERSION to the corresponding revision of
-	#   chromium/src/chrome/VERSION in the Chromium code base.
-	#   Only the MAJOR version matters, really. This is necessary so policy
-	#   code builders have the right set of policies.
-	# - Update authpolicy/policy/device_policy_encoder[_unittest].cc to
-	#   include new device policies. The unit test tells you missing ones:
-	#     cros_run_unit_tests --board=$BOARD --packages authpolicy
-	#   If you see unrelated test failures, make sure to rebuild the
-	#   authpolicy package and its dependencies (in particular, libbrillo
-	#   which provides libpolicy for accessing device policy) against the
-	#   updated protofiles package.
-	#   User policy is generated and doesn't have to be updated manually.
-	# - Bump the package version:
-	#     git mv protofiles-0.0.N.ebuild protofiles-0.0.N+1.ebuild
-	# - Bump the DEPEND version number for protofiles in all ebuilds for
-	#   packages that rely on the new policies. If you added new device
-	#   policy encodings above that will at least be authpolicy.
-
-	# private_membership and shell_encryption are not used in Chrome OS at
-	# the moment. They are just required to compile the proto files. An
-	# uprev will only be necessary if the respective proto files change.
-	"private_membership"
-	"${CROS_GIT_HOST_URL}/chromium/src/third_party/private_membership.git"
-	"fa5d439ccfcb5813ef9d5aa7b66299e6d24a62da"
-
-	"shell_encryption"
-	"${CROS_GIT_HOST_URL}/chromium/src/third_party/shell-encryption.git"
-	"4b66a57bf81ff88fb94113426f2f4ffbbd66cb95"
-)
-
-DESCRIPTION="Protobuf installer for the device policy proto definitions."
-HOMEPAGE="https://chromium.googlesource.com/chromium/src/components/policy"
-
-LICENSE="BSD-Google"
-SLOT="0/${PV}"
-KEYWORDS="*"
-IUSE=""
-
-POLICY_DIR="${S}/cloud/policy"
-
-PRIVATE_MEMBERSHIP_DIR="${S}/private_membership/src"
-SHELL_ENCRYPTION_DIR="${S}/shell_encryption/src"
-
-# A list of the static protobuf files that exist in Chromium.
-POLICY_DIR_PROTO_FILES=(
-	"chrome_device_policy.proto"
-	"chrome_extension_policy.proto"
-	"device_management_backend.proto"
-	"install_attributes.proto"
-	"policy_common_definitions.proto"
-	"policy_signing_key.proto"
-)
-
-RDEPEND="!<chromeos-base/chromeos-chrome-82.0.4056.0_rc-r1"
-
-src_unpack() {
-	set -- "${EGIT_REPO_URIS[@]}"
-	while [[ $# -gt 0 ]]; do
-		EGIT_CHECKOUT_DIR="${S}/$1" \
-		EGIT_REPO_URI=$2 \
-		EGIT_COMMIT=$3 \
-		git-r3_src_unpack
-		shift 3
-	done
-}
-
-src_compile() {
-	# Generate cloud_policy.proto.
-	"${POLICY_DIR}/tools/generate_policy_source.py" \
-		--cloud-policy-protobuf="${WORKDIR}/cloud_policy.proto" \
-		--chrome-version-file="${FILESDIR}/VERSION" \
-		--policy-templates-file="${POLICY_DIR}/resources/policy_templates.json" \
-		--target-platform="chrome_os" \
-		|| die "Failed to generate cloud_policy.proto"
-}
-
-src_install() {
-	insinto /usr/include/proto
-	doins "${POLICY_DIR}"/proto/chrome_device_policy.proto
-	doins "${POLICY_DIR}"/proto/chrome_extension_policy.proto
-	doins "${POLICY_DIR}"/proto/install_attributes.proto
-	doins "${POLICY_DIR}"/proto/policy_signing_key.proto
-	doins "${POLICY_DIR}"/proto/device_management_backend.proto
-	doins "${PRIVATE_MEMBERSHIP_DIR}"/private_membership_rlwe.proto
-	doins "${PRIVATE_MEMBERSHIP_DIR}"/private_membership.proto
-	doins "${SHELL_ENCRYPTION_DIR}"/serialization.proto
-	insinto /usr/share/protofiles
-	doins "${POLICY_DIR}"/proto/chrome_device_policy.proto
-	doins "${POLICY_DIR}"/proto/policy_common_definitions.proto
-	doins "${POLICY_DIR}"/proto/device_management_backend.proto
-	doins "${POLICY_DIR}"/proto/chrome_extension_policy.proto
-	doins "${PRIVATE_MEMBERSHIP_DIR}"/private_membership_rlwe.proto
-	doins "${PRIVATE_MEMBERSHIP_DIR}"/private_membership.proto
-	doins "${SHELL_ENCRYPTION_DIR}"/serialization.proto
-	doins "${WORKDIR}"/cloud_policy.proto
-	dobin "${FILESDIR}"/policy_reader
-	insinto /usr/share/policy_resources
-	doins "${POLICY_DIR}"/resources/policy_templates.json
-	doins "${FILESDIR}"/VERSION
-	exeinto /usr/share/policy_tools
-	doexe "${POLICY_DIR}"/tools/generate_policy_source.py
-	sed -i -E '1{ /^#!/ s:(env )?python$:python2: }' \
-		"${D}/usr/share/policy_tools/generate_policy_source.py" || die
-
-	# Retrieve the proto files which exist in that path, with their full paths.
-	local policy_dir_proto_files=( "${POLICY_DIR}"/proto/*.proto )
-
-	# Convert policy_dir_proto_files into an array, and retrieving the files names, instead of their full path.
-	policy_dir_proto_files=( "${policy_dir_proto_files[@]##*/}" )
-
-	# Check whether all protobuf files that exist in Chromium side has already been installed in protofiles package or
-	# not. And to verify that the list in autotests package, which is using these protobuf files are up-to-date.
-	sorter() {
-		printf '%s\n' "$@" | LC_ALL=C sort
-	}
-	if [[ "$(sorter "${policy_dir_proto_files[@]}")" != "$(sorter "${POLICY_DIR_PROTO_FILES[@]}")" ]]; then
-		die "Add all new protobuf files into the sorted list of chromium protobuf files, which exist in protofiles package.
-			Please update all the imported protobuf files in autotest package in policy_protos.py file."
-	fi
-}
diff --git a/chromeos-base/protofiles/protofiles-0.0.49.ebuild b/chromeos-base/protofiles/protofiles-0.0.49.ebuild
new file mode 100644
index 0000000..7da69cd
--- /dev/null
+++ b/chromeos-base/protofiles/protofiles-0.0.49.ebuild
@@ -0,0 +1,156 @@
+# Copyright (c) 2009 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+# This project checks out the proto files from the read only repositories
+# linked to the following directories of the Chromium project:
+
+#   - src/components/policy
+
+# This project is not cros-work-able: if changes to the protobufs are needed
+# then they should be done in the Chromium repository, and the commits below
+# should be updated.
+
+EAPI="7"
+
+# We don't need the history at all.
+EGIT_CLONE_TYPE="shallow"
+
+# TODO(crbug.com/984182): We force Python 2 because depot_tools doesn't support Python 3.
+PYTHON_COMPAT=( python2_7 )
+
+inherit cros-constants eutils git-r3 python-any-r1
+
+# Every 3 strings in this array indicates a repository to checkout:
+#   - A unique name (to avoid checkout conflits)
+#   - The repository URL
+#   - The commit to checkout
+EGIT_REPO_URIS=(
+	"cloud/policy"
+	"${CROS_GIT_HOST_URL}/chromium/src/components/policy.git"
+	"a7c6ef05a492d12270d4090c1e7168f18a0adcdb"
+
+	# If you uprev these repos, please also:
+	# - Update files/VERSION to the corresponding revision of
+	#   chromium/src/chrome/VERSION in the Chromium code base.
+	#   Only the MAJOR version matters, really. This is necessary so policy
+	#   code builders have the right set of policies.
+	# - Update authpolicy/policy/device_policy_encoder[_unittest].cc to
+	#   include new device policies. The unit test tells you missing ones:
+	#     cros_run_unit_tests --board=$BOARD --packages authpolicy
+	#   If you see unrelated test failures, make sure to rebuild the
+	#   authpolicy package and its dependencies (in particular, libbrillo
+	#   which provides libpolicy for accessing device policy) against the
+	#   updated protofiles package.
+	#   User policy is generated and doesn't have to be updated manually.
+	# - Bump the package version:
+	#     git mv protofiles-0.0.N.ebuild protofiles-0.0.N+1.ebuild
+	# - Bump the DEPEND version number for protofiles in all ebuilds for
+	#   packages that rely on the new policies. If you added new device
+	#   policy encodings above that will at least be authpolicy.
+
+	# private_membership and shell_encryption are not used in Chrome OS at
+	# the moment. They are just required to compile the proto files. An
+	# uprev will only be necessary if the respective proto files change.
+	"private_membership"
+	"${CROS_GIT_HOST_URL}/chromium/src/third_party/private_membership.git"
+	"fa5d439ccfcb5813ef9d5aa7b66299e6d24a62da"
+
+	"shell_encryption"
+	"${CROS_GIT_HOST_URL}/chromium/src/third_party/shell-encryption.git"
+	"4b66a57bf81ff88fb94113426f2f4ffbbd66cb95"
+)
+
+DESCRIPTION="Protobuf installer for the device policy proto definitions."
+HOMEPAGE="https://chromium.googlesource.com/chromium/src/components/policy"
+
+LICENSE="BSD-Google"
+SLOT="0/${PV}"
+KEYWORDS="*"
+IUSE=""
+
+PATCHES=(
+	"${FILESDIR}/${PN}-pci-peripheral-data-access-enabled-v2.patch"
+	"${FILESDIR}/${PN}-add-device-target-version-selector-policy.patch"
+)
+
+POLICY_DIR="${S}/cloud/policy"
+
+PRIVATE_MEMBERSHIP_DIR="${S}/private_membership/src"
+SHELL_ENCRYPTION_DIR="${S}/shell_encryption/src"
+
+# A list of the static protobuf files that exist in Chromium.
+POLICY_DIR_PROTO_FILES=(
+	"chrome_device_policy.proto"
+	"chrome_extension_policy.proto"
+	"device_management_backend.proto"
+	"install_attributes.proto"
+	"policy_common_definitions.proto"
+	"policy_signing_key.proto"
+)
+
+RDEPEND="!<chromeos-base/chromeos-chrome-82.0.4056.0_rc-r1"
+
+src_unpack() {
+	set -- "${EGIT_REPO_URIS[@]}"
+	while [[ $# -gt 0 ]]; do
+		EGIT_CHECKOUT_DIR="${S}/$1" \
+		EGIT_REPO_URI=$2 \
+		EGIT_COMMIT=$3 \
+		git-r3_src_unpack
+		shift 3
+	done
+}
+
+src_compile() {
+	# Generate cloud_policy.proto.
+	"${POLICY_DIR}/tools/generate_policy_source.py" \
+		--cloud-policy-protobuf="${WORKDIR}/cloud_policy.proto" \
+		--chrome-version-file="${FILESDIR}/VERSION" \
+		--policy-templates-file="${POLICY_DIR}/resources/policy_templates.json" \
+		--target-platform="chrome_os" \
+		|| die "Failed to generate cloud_policy.proto"
+}
+
+src_install() {
+	insinto /usr/include/proto
+	doins "${POLICY_DIR}"/proto/chrome_device_policy.proto
+	doins "${POLICY_DIR}"/proto/chrome_extension_policy.proto
+	doins "${POLICY_DIR}"/proto/install_attributes.proto
+	doins "${POLICY_DIR}"/proto/policy_signing_key.proto
+	doins "${POLICY_DIR}"/proto/device_management_backend.proto
+	doins "${PRIVATE_MEMBERSHIP_DIR}"/private_membership_rlwe.proto
+	doins "${PRIVATE_MEMBERSHIP_DIR}"/private_membership.proto
+	doins "${SHELL_ENCRYPTION_DIR}"/serialization.proto
+	insinto /usr/share/protofiles
+	doins "${POLICY_DIR}"/proto/chrome_device_policy.proto
+	doins "${POLICY_DIR}"/proto/policy_common_definitions.proto
+	doins "${POLICY_DIR}"/proto/device_management_backend.proto
+	doins "${POLICY_DIR}"/proto/chrome_extension_policy.proto
+	doins "${PRIVATE_MEMBERSHIP_DIR}"/private_membership_rlwe.proto
+	doins "${PRIVATE_MEMBERSHIP_DIR}"/private_membership.proto
+	doins "${SHELL_ENCRYPTION_DIR}"/serialization.proto
+	doins "${WORKDIR}"/cloud_policy.proto
+	insinto /usr/share/policy_resources
+	doins "${POLICY_DIR}"/resources/policy_templates.json
+	doins "${FILESDIR}"/VERSION
+	exeinto /usr/share/policy_tools
+	doexe "${POLICY_DIR}"/tools/generate_policy_source.py
+	sed -i -E '1{ /^#!/ s:(env )?python$:python2: }' \
+		"${D}/usr/share/policy_tools/generate_policy_source.py" || die
+
+	# Retrieve the proto files which exist in that path, with their full paths.
+	local policy_dir_proto_files=( "${POLICY_DIR}"/proto/*.proto )
+
+	# Convert policy_dir_proto_files into an array, and retrieving the files names, instead of their full path.
+	policy_dir_proto_files=( "${policy_dir_proto_files[@]##*/}" )
+
+	# Check whether all protobuf files that exist in Chromium side has already been installed in protofiles package or
+	# not. And to verify that the list in autotests package, which is using these protobuf files are up-to-date.
+	sorter() {
+		printf '%s\n' "$@" | LC_ALL=C sort
+	}
+	if [[ "$(sorter "${policy_dir_proto_files[@]}")" != "$(sorter "${POLICY_DIR_PROTO_FILES[@]}")" ]]; then
+		die "Add all new protobuf files into the sorted list of chromium protobuf files, which exist in protofiles package.
+			Please update all the imported protobuf files in autotest package in policy_protos.py file."
+	fi
+}
diff --git a/chromeos-base/quipper/quipper-0.0.1-r2670.ebuild b/chromeos-base/quipper/quipper-0.0.1-r2670.ebuild
deleted file mode 100644
index 015f081..0000000
--- a/chromeos-base/quipper/quipper-0.0.1-r2670.ebuild
+++ /dev/null
@@ -1,85 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# Don't use Makefile.external here as it fetches from the network.
-EAPI=7
-
-CROS_WORKON_COMMIT="0598acb73ca7269435e8c2f8d797d209cc04a764"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-# chromiumos-wide-profiling directory is in $SRC_URI, not in platform2.
-CROS_WORKON_SUBTREE="common-mk .gn"
-
-PLATFORM_SUBDIR="chromiumos-wide-profiling"
-
-inherit cros-workon platform
-
-DESCRIPTION="quipper: chromiumos wide profiling"
-HOMEPAGE="http://www.chromium.org/chromium-os/profiling-in-chromeos"
-
-GIT_SHA1="9876dd56d3d337f481812f9f7d0be632a23e3266"
-SRC="quipper-${GIT_SHA1}.tar.gz"
-SRC_URI="gs://chromeos-localmirror/distfiles/${SRC}"
-SRC_DIR="src/${PN}"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-COMMON_DEPEND="
-	>=dev-cpp/gflags-2.0:=
-	>=dev-libs/glib-2.30:=
-	dev-libs/openssl:=
-	dev-libs/protobuf:=
-	dev-libs/re2:=
-	dev-util/perf:=
-"
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/protofiles:=
-	test? ( app-shells/dash )
-"
-
-src_unpack() {
-	platform_src_unpack
-	mkdir "${S}"
-
-	pushd "${S}" >/dev/null
-	unpack ${SRC}
-	mv "${SRC_DIR}"/{.[!.],}* ./ || die
-	eapply "${FILESDIR}"/quipper-disable-flaky-tests.patch
-	eapply "${FILESDIR}"/quipper-arraysize.patch
-	eapply "${FILESDIR}"/quipper-check-header.patch
-	popd >/dev/null
-}
-
-src_compile() {
-	# ARM tests run on qemu which is much slower. Exclude some large test
-	# data files for non-x86 boards.
-	if use x86 || use amd64 ; then
-		append-cppflags -DTEST_LARGE_PERF_DATA
-	fi
-
-	platform_src_compile
-}
-
-src_install() {
-	dobin "${OUT}"/quipper
-}
-
-platform_pkg_test() {
-	local tests=(
-		integration_tests
-		perf_recorder_test
-		unit_tests
-	)
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}" "1"
-	done
-}
diff --git a/chromeos-base/quipper/quipper-0.0.1-r2695.ebuild b/chromeos-base/quipper/quipper-0.0.1-r2695.ebuild
new file mode 100644
index 0000000..87befdb
--- /dev/null
+++ b/chromeos-base/quipper/quipper-0.0.1-r2695.ebuild
@@ -0,0 +1,85 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+# Don't use Makefile.external here as it fetches from the network.
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+# chromiumos-wide-profiling directory is in $SRC_URI, not in platform2.
+CROS_WORKON_SUBTREE="common-mk .gn"
+
+PLATFORM_SUBDIR="chromiumos-wide-profiling"
+
+inherit cros-workon platform
+
+DESCRIPTION="quipper: chromiumos wide profiling"
+HOMEPAGE="http://www.chromium.org/chromium-os/profiling-in-chromeos"
+
+GIT_SHA1="9876dd56d3d337f481812f9f7d0be632a23e3266"
+SRC="quipper-${GIT_SHA1}.tar.gz"
+SRC_URI="gs://chromeos-localmirror/distfiles/${SRC}"
+SRC_DIR="src/${PN}"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+COMMON_DEPEND="
+	>=dev-cpp/gflags-2.0:=
+	>=dev-libs/glib-2.30:=
+	dev-libs/openssl:=
+	dev-libs/protobuf:=
+	dev-libs/re2:=
+	dev-util/perf:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/protofiles:=
+	test? ( app-shells/dash )
+"
+
+src_unpack() {
+	platform_src_unpack
+	mkdir "${S}"
+
+	pushd "${S}" >/dev/null
+	unpack ${SRC}
+	mv "${SRC_DIR}"/{.[!.],}* ./ || die
+	eapply "${FILESDIR}"/quipper-disable-flaky-tests.patch
+	eapply "${FILESDIR}"/quipper-arraysize.patch
+	eapply "${FILESDIR}"/quipper-check-header.patch
+	popd >/dev/null
+}
+
+src_compile() {
+	# ARM tests run on qemu which is much slower. Exclude some large test
+	# data files for non-x86 boards.
+	if use x86 || use amd64 ; then
+		append-cppflags -DTEST_LARGE_PERF_DATA
+	fi
+
+	platform_src_compile
+}
+
+src_install() {
+	dobin "${OUT}"/quipper
+}
+
+platform_pkg_test() {
+	local tests=(
+		integration_tests
+		perf_recorder_test
+		unit_tests
+	)
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}" "1"
+	done
+}
diff --git a/chromeos-base/regions/regions-0.0.1-r2021.ebuild b/chromeos-base/regions/regions-0.0.1-r2021.ebuild
deleted file mode 100644
index 7630dcd3..0000000
--- a/chromeos-base/regions/regions-0.0.1-r2021.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="5e23d6c6c4da55d68ac78000f62824826d8de63d"
-CROS_WORKON_TREE="1dcc0a04496edb24287a6e3bb5411bcffbf8e9f5"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_DESTDIR="${S}"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="regions"
-
-PLATFORM_SUBDIR="regions"
-
-inherit cros-workon
-
-DESCRIPTION="Chromium OS Region Data"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/regions/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-IUSE="cros-debug"
-
-# 'jq' allows command line tools to access the JSON database.
-RDEPEND="app-misc/jq"
-DEPEND=""
-
-src_unpack() {
-	cros-workon_src_unpack
-	S+="/regions"
-}
-
-src_compile() {
-	./regions.py --format=json --output "${WORKDIR}/cros-regions.json" $(usex cros-debug "--include_pseudolocales" "")
-}
-
-src_test() {
-	./regions_unittest.py
-}
-
-src_install() {
-	dobin cros_region_data
-
-	insinto /usr/share/misc
-	doins "${WORKDIR}/cros-regions.json"
-}
diff --git a/chromeos-base/regions/regions-0.0.1-r2023.ebuild b/chromeos-base/regions/regions-0.0.1-r2023.ebuild
new file mode 100644
index 0000000..e0132b1
--- /dev/null
+++ b/chromeos-base/regions/regions-0.0.1-r2023.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="960900955685f00c74adf34e595e48be43d409e9"
+CROS_WORKON_TREE="3410b31d25fb2738577b527b9d193b851e7737e3"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_DESTDIR="${S}"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="regions"
+
+PLATFORM_SUBDIR="regions"
+
+inherit cros-workon
+
+DESCRIPTION="Chromium OS Region Data"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/regions/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+IUSE="cros-debug"
+
+# 'jq' allows command line tools to access the JSON database.
+RDEPEND="app-misc/jq"
+DEPEND=""
+
+src_unpack() {
+	cros-workon_src_unpack
+	S+="/regions"
+}
+
+src_compile() {
+	./regions.py --format=json --output "${WORKDIR}/cros-regions.json" $(usex cros-debug "--include_pseudolocales" "")
+}
+
+src_test() {
+	./regions_unittest.py
+}
+
+src_install() {
+	dobin cros_region_data
+
+	insinto /usr/share/misc
+	doins "${WORKDIR}/cros-regions.json"
+}
diff --git a/chromeos-base/rendernodehost/rendernodehost-0.0.1-r185.ebuild b/chromeos-base/rendernodehost/rendernodehost-0.0.1-r185.ebuild
deleted file mode 100644
index 0d5cd7a..0000000
--- a/chromeos-base/rendernodehost/rendernodehost-0.0.1-r185.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 2019 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk rendernodehost .gn"
-
-PLATFORM_SUBDIR="rendernodehost"
-WANT_LIBCHROME="no"
-
-inherit cros-workon platform
-
-DESCRIPTION="host service for render node forwarding"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/rendernodehost/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-DEPEND="x11-libs/libdrm:="
-
-src_install() {
-	dolib.a "${OUT}"/librendernodehost.a
-}
diff --git a/chromeos-base/rendernodehost/rendernodehost-0.0.1-r210.ebuild b/chromeos-base/rendernodehost/rendernodehost-0.0.1-r210.ebuild
new file mode 100644
index 0000000..0eb7066
--- /dev/null
+++ b/chromeos-base/rendernodehost/rendernodehost-0.0.1-r210.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2019 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk rendernodehost .gn"
+
+PLATFORM_SUBDIR="rendernodehost"
+WANT_LIBCHROME="no"
+
+inherit cros-workon platform
+
+DESCRIPTION="host service for render node forwarding"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/rendernodehost/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+DEPEND="x11-libs/libdrm:="
+
+src_install() {
+	dolib.a "${OUT}"/librendernodehost.a
+}
diff --git a/chromeos-base/resourced/resourced-0.1.0-r28.ebuild b/chromeos-base/resourced/resourced-0.1.0-r28.ebuild
deleted file mode 100644
index 1ad4ec7..0000000
--- a/chromeos-base/resourced/resourced-0.1.0-r28.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="e1ada66a0b8ba445512dca03d35f736464b26309"
-CROS_WORKON_TREE="6a4d75e270c74394b3fc795e7a47070bd0c5b9a8"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-# We don't use CROS_WORKON_OUTOFTREE_BUILD here since project's Cargo.toml is
-# using "provided by ebuild" macro which supported by cros-rust.
-CROS_WORKON_SUBTREE="resourced"
-
-inherit cros-workon cros-rust user
-
-DESCRIPTION="ChromeOS Resource Management Daemon"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/resourced/"
-
-LICENSE="BSD-Google"
-SLOT="0/${PVR}"
-KEYWORDS="*"
-IUSE="+seccomp"
-
-DEPEND="
-	=dev-rust/anyhow-1*:=
-	=dev-rust/dbus-0.8*:=
-	=dev-rust/once_cell-1.7*:=
-	dev-rust/sys_util:=
-"
-
-src_install() {
-	dobin "$(cros-rust_get_build_dir)/resourced"
-
-	# D-Bus configuration.
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.ResourceManager.conf
-
-	# init script.
-	insinto /etc/init
-	doins init/resourced.conf
-
-	# seccomp policy file.
-	insinto /usr/share/policy
-	if use seccomp; then
-		newins "seccomp/resourced-seccomp-${ARCH}.policy" resourced-seccomp.policy
-	fi
-}
-
-pkg_preinst() {
-	enewuser "resourced"
-	enewgroup "resourced"
-
-	cros-rust_pkg_preinst
-}
diff --git a/chromeos-base/resourced/resourced-0.1.0-r42.ebuild b/chromeos-base/resourced/resourced-0.1.0-r42.ebuild
new file mode 100644
index 0000000..5ae80f7
--- /dev/null
+++ b/chromeos-base/resourced/resourced-0.1.0-r42.ebuild
@@ -0,0 +1,58 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="b7ed0ed288d39556e6141108005d048b913afed7"
+CROS_WORKON_TREE="961160ce2e8a12a1638b285a02df45af520acf92"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+# We don't use CROS_WORKON_OUTOFTREE_BUILD here since project's Cargo.toml is
+# using "provided by ebuild" macro which supported by cros-rust.
+CROS_WORKON_SUBTREE="resourced"
+
+inherit cros-workon cros-rust user
+
+DESCRIPTION="ChromeOS Resource Management Daemon"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/resourced/"
+
+LICENSE="BSD-Google"
+SLOT="0/${PVR}"
+KEYWORDS="*"
+IUSE="+seccomp"
+
+DEPEND="
+	=dev-rust/anyhow-1*:=
+	=dev-rust/dbus-0.9*:=
+	=dev-rust/dbus-tree-0.9*:=
+	=dev-rust/glob-0.3*:=
+	=dev-rust/once_cell-1.7*:=
+	=dev-rust/regex-1.5*:=
+	dev-rust/sys_util:=
+"
+
+src_install() {
+	dobin "$(cros-rust_get_build_dir)/resourced"
+
+	# D-Bus configuration.
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.ResourceManager.conf
+
+	# init script.
+	insinto /etc/init
+	doins init/resourced.conf
+
+	# seccomp policy file.
+	insinto /usr/share/policy
+	if use seccomp; then
+		newins "seccomp/resourced-seccomp-${ARCH}.policy" resourced-seccomp.policy
+	fi
+}
+
+pkg_preinst() {
+	enewuser "resourced"
+	enewgroup "resourced"
+
+	cros-rust_pkg_preinst
+}
diff --git a/chromeos-base/resourced/resourced-9999.ebuild b/chromeos-base/resourced/resourced-9999.ebuild
index de9d31f..8aad63b 100644
--- a/chromeos-base/resourced/resourced-9999.ebuild
+++ b/chromeos-base/resourced/resourced-9999.ebuild
@@ -22,8 +22,11 @@
 
 DEPEND="
 	=dev-rust/anyhow-1*:=
-	=dev-rust/dbus-0.8*:=
+	=dev-rust/dbus-0.9*:=
+	=dev-rust/dbus-tree-0.9*:=
+	=dev-rust/glob-0.3*:=
 	=dev-rust/once_cell-1.7*:=
+	=dev-rust/regex-1.5*:=
 	dev-rust/sys_util:=
 "
 
diff --git a/chromeos-base/rmad/rmad-0.0.1-r136.ebuild b/chromeos-base/rmad/rmad-0.0.1-r136.ebuild
new file mode 100644
index 0000000..67c1087
--- /dev/null
+++ b/chromeos-base/rmad/rmad-0.0.1-r136.ebuild
@@ -0,0 +1,81 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="85384bc0b712fcd5a7feb7a8609e740e3647c3a7"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "9b262e205d2e0104fbdc10f45d71aaca9a294501" "ba93b35f6b12686bf293ce79255da511c89278e1" "8d7c4c08fa913a8ad83002bc7a2418c265fd954f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk chromeos-config hardware_verifier libmems rmad .gn"
+
+PLATFORM_SUBDIR="rmad"
+
+inherit cros-workon cros-unibuild platform tmpfiles user
+
+DESCRIPTION="ChromeOS RMA daemon."
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cr50_onboard iioservice ti50_onboard"
+
+COMMON_DEPEND="
+	chromeos-base/chromeos-config-tools:=
+	chromeos-base/minijail:=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	cr50_onboard? ( chromeos-base/chromeos-cr50 )
+	iioservice? ( chromeos-base/iioservice_simpleclient )
+	ti50_onboard? ( chromeos-base/chromeos-ti50 )
+	chromeos-base/croslog
+	chromeos-base/hardware_verifier
+	chromeos-base/libmems
+	chromeos-base/runtime_probe
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/cryptohome-client:=
+	chromeos-base/shill-client:=
+	chromeos-base/system_api:=
+	chromeos-base/tpm_manager-client:=
+	chromeos-base/vboot_reference:=
+"
+
+pkg_preinst() {
+	# Create user and group for RMA.
+	enewuser "rmad"
+	enewgroup "rmad"
+}
+
+src_install() {
+	dosbin "${OUT}/rmad"
+
+	dotmpfiles tmpfiles.d/*.conf
+
+	# Install upstart configs and scripts.
+	insinto /etc/init
+	doins init/*.conf
+
+	# Install D-Bus configuration file.
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.Rmad.conf
+
+	# Install D-Bus service activation configuration.
+	insinto /usr/share/dbus-1/system-services
+	doins dbus/org.chromium.Rmad.service
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	newins "seccomp/rmad-seccomp-${ARCH}.policy" rmad-seccomp.policy
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/rmad_test"
+}
diff --git a/chromeos-base/rmad/rmad-0.0.1-r49.ebuild b/chromeos-base/rmad/rmad-0.0.1-r49.ebuild
deleted file mode 100644
index 3276f9ed..0000000
--- a/chromeos-base/rmad/rmad-0.0.1-r49.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6dd33d823125a9f9e78f10c51ea5756c9f8b64bc"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "31bdaf2fb61472fd3a728d100c15226c71caca7b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk rmad .gn"
-
-PLATFORM_SUBDIR="rmad"
-
-inherit cros-workon platform user
-
-DESCRIPTION="ChromeOS RMA daemon."
-HOMEPAGE=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cr50_onboard ti50_onboard"
-
-COMMON_DEPEND=""
-
-RDEPEND="
-	${COMMON_DEPEND}
-	cr50_onboard? ( chromeos-base/chromeos-cr50 )
-	ti50_onboard? ( chromeos-base/chromeos-ti50 )
-	chromeos-base/runtime_probe
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/system_api
-	chromeos-base/vboot_reference
-"
-
-pkg_preinst() {
-	# Create user and group for RMA.
-	enewuser "rmad"
-	enewgroup "rmad"
-}
-
-src_install() {
-	dosbin "${OUT}/rmad"
-
-	# Install upstart configs and scripts.
-	insinto /etc/init
-	doins init/*.conf
-
-	# Install D-Bus configuration file.
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.Rmad.conf
-
-	# Install D-Bus service activation configuration.
-	insinto /usr/share/dbus-1/system-services
-	doins dbus/org.chromium.Rmad.service
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	newins "seccomp/rmad-seccomp-${ARCH}.policy" rmad-seccomp.policy
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/rmad_test"
-}
diff --git a/chromeos-base/rmad/rmad-9999.ebuild b/chromeos-base/rmad/rmad-9999.ebuild
index 4151b0b..8a64ad2 100644
--- a/chromeos-base/rmad/rmad-9999.ebuild
+++ b/chromeos-base/rmad/rmad-9999.ebuild
@@ -8,32 +8,42 @@
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_OUTOFTREE_BUILD=1
 # TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk rmad .gn"
+CROS_WORKON_SUBTREE="common-mk chromeos-config hardware_verifier libmems rmad .gn"
 
 PLATFORM_SUBDIR="rmad"
 
-inherit cros-workon platform user
+inherit cros-workon cros-unibuild platform tmpfiles user
 
 DESCRIPTION="ChromeOS RMA daemon."
 HOMEPAGE=""
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="cr50_onboard ti50_onboard"
+IUSE="cr50_onboard iioservice ti50_onboard"
 
-COMMON_DEPEND=""
+COMMON_DEPEND="
+	chromeos-base/chromeos-config-tools:=
+	chromeos-base/minijail:=
+"
 
 RDEPEND="
 	${COMMON_DEPEND}
 	cr50_onboard? ( chromeos-base/chromeos-cr50 )
+	iioservice? ( chromeos-base/iioservice_simpleclient )
 	ti50_onboard? ( chromeos-base/chromeos-ti50 )
+	chromeos-base/croslog
+	chromeos-base/hardware_verifier
+	chromeos-base/libmems
 	chromeos-base/runtime_probe
 "
 
 DEPEND="
 	${COMMON_DEPEND}
-	chromeos-base/system_api
-	chromeos-base/vboot_reference
+	chromeos-base/cryptohome-client:=
+	chromeos-base/shill-client:=
+	chromeos-base/system_api:=
+	chromeos-base/tpm_manager-client:=
+	chromeos-base/vboot_reference:=
 "
 
 pkg_preinst() {
@@ -45,6 +55,8 @@
 src_install() {
 	dosbin "${OUT}/rmad"
 
+	dotmpfiles tmpfiles.d/*.conf
+
 	# Install upstart configs and scripts.
 	insinto /etc/init
 	doins init/*.conf
diff --git a/chromeos-base/run_oci/run_oci-0.0.1-r1108.ebuild b/chromeos-base/run_oci/run_oci-0.0.1-r1108.ebuild
deleted file mode 100644
index df27b88..0000000
--- a/chromeos-base/run_oci/run_oci-0.0.1-r1108.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a2ab6048637d439be995dd4cdc3ef91d0291fb42" "6ed3b507fc245405455010e3d50c3a434a5d9548" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk libcontainer run_oci .gn"
-
-PLATFORM_SUBDIR="run_oci"
-
-inherit cros-workon libchrome platform
-
-DESCRIPTION="Utility for running OCI-compatible containers"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-COMMON_DEPEND="
-	chromeos-base/libcontainer:=
-	sys-apps/util-linux:=
-	sys-libs/libcap:=
-"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}"
-
-src_install() {
-	cd "${OUT}"
-	dobin run_oci
-}
-
-platform_pkg_test() {
-	local tests=(
-		container_config_parser_test
-		run_oci_test
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		# platform_test takes care of setting up your test environment
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/run_oci/run_oci-0.0.1-r1140.ebuild b/chromeos-base/run_oci/run_oci-0.0.1-r1140.ebuild
new file mode 100644
index 0000000..fd634b8
--- /dev/null
+++ b/chromeos-base/run_oci/run_oci-0.0.1-r1140.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "26b91e41e669cca59d25dedeb6fb18c470d60c4b" "6f00dc3af5877e8ec4a9732ea54508e2a9a280d2" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk libcontainer run_oci .gn"
+
+PLATFORM_SUBDIR="run_oci"
+
+inherit cros-workon libchrome platform
+
+DESCRIPTION="Utility for running OCI-compatible containers"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+COMMON_DEPEND="
+	chromeos-base/libcontainer:=
+	chromeos-base/minijail:=
+	sys-apps/util-linux:=
+	sys-libs/libcap:=
+"
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}"
+
+src_install() {
+	cd "${OUT}"
+	dobin run_oci
+}
+
+platform_pkg_test() {
+	local tests=(
+		container_config_parser_test
+		run_oci_test
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		# platform_test takes care of setting up your test environment
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/run_oci/run_oci-9999.ebuild b/chromeos-base/run_oci/run_oci-9999.ebuild
index 466a399..133a363 100644
--- a/chromeos-base/run_oci/run_oci-9999.ebuild
+++ b/chromeos-base/run_oci/run_oci-9999.ebuild
@@ -22,6 +22,7 @@
 
 COMMON_DEPEND="
 	chromeos-base/libcontainer:=
+	chromeos-base/minijail:=
 	sys-apps/util-linux:=
 	sys-libs/libcap:=
 "
diff --git a/chromeos-base/runtime_probe/runtime_probe-0.0.1-r569.ebuild b/chromeos-base/runtime_probe/runtime_probe-0.0.1-r569.ebuild
deleted file mode 100644
index 5fc068e..0000000
--- a/chromeos-base/runtime_probe/runtime_probe-0.0.1-r569.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="67f002ffc6f157b2d2c102d78f76b8ae8cc309d8"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "aa0612733aca2d5ffa65470f07408228b473ebdb" "5bcd4487aea45b91806e5db9af44e6b3d9290c13" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk chromeos-config runtime_probe .gn"
-
-PLATFORM_SUBDIR="runtime_probe"
-
-inherit cros-workon platform user udev
-
-DESCRIPTION="Runtime probing on device componenets."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/runtime_probe/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="generated_cros_config unibuild asan fuzzer"
-
-COMMON_DEPEND="
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config:= )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
-	chromeos-base/chromeos-config-tools:=
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/ec-utils
-"
-
-# Add vboot_reference as build time dependency to read cros_debug status
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/shill-client:=
-	chromeos-base/system_api:=[fuzzer?]
-	chromeos-base/vboot_reference:=
-"
-
-pkg_preinst() {
-	# Create user and group for runtime_probe
-	enewuser "runtime_probe"
-	enewgroup "cros_ec-access"
-	enewgroup "runtime_probe"
-}
-
-src_install() {
-	dobin "${OUT}/runtime_probe"
-
-	# Install upstart configs and scripts.
-	insinto /etc/init
-	doins init/*.conf
-
-	# Install D-Bus configuration file.
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.RuntimeProbe.conf
-
-	# Install D-Bus service activation configuration.
-	insinto /usr/share/dbus-1/system-services
-	doins dbus/org.chromium.RuntimeProbe.service
-
-
-	# Install sandbox information.
-	insinto /etc/runtime_probe/sandbox
-	doins sandbox/"${ARCH}"/args.json
-	doins sandbox/"${ARCH}"/*-seccomp.policy
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	newins "seccomp/runtime_probe-seccomp-${ARCH}.policy" \
-	runtime_probe-seccomp.policy
-
-	# Install udev rules.
-	udev_dorules udev/*.rules
-
-	local fuzzer
-	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}"
-	done
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/unittest_runner"
-}
diff --git a/chromeos-base/runtime_probe/runtime_probe-0.0.1-r641.ebuild b/chromeos-base/runtime_probe/runtime_probe-0.0.1-r641.ebuild
new file mode 100644
index 0000000..525600f
--- /dev/null
+++ b/chromeos-base/runtime_probe/runtime_probe-0.0.1-r641.ebuild
@@ -0,0 +1,88 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "c49e61abb0d60510e8ca41e657656cdd950c50e9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk chromeos-config runtime_probe .gn"
+
+PLATFORM_SUBDIR="runtime_probe"
+
+inherit cros-workon cros-unibuild platform user udev
+
+DESCRIPTION="Runtime probing on device componenets."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/runtime_probe/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="asan fuzzer"
+
+COMMON_DEPEND="
+	chromeos-base/chromeos-config-tools:=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/ec-utils
+"
+
+# Add vboot_reference as build time dependency to read cros_debug status
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/debugd-client:=
+	chromeos-base/shill-client:=
+	chromeos-base/system_api:=[fuzzer?]
+	chromeos-base/vboot_reference:=
+"
+
+pkg_preinst() {
+	# Create user and group for runtime_probe
+	enewuser "runtime_probe"
+	enewgroup "cros_ec-access"
+	enewgroup "runtime_probe"
+}
+
+src_install() {
+	dobin "${OUT}/runtime_probe"
+
+	# Install upstart configs and scripts.
+	insinto /etc/init
+	doins init/*.conf
+
+	# Install D-Bus configuration file.
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.RuntimeProbe.conf
+
+	# Install D-Bus service activation configuration.
+	insinto /usr/share/dbus-1/system-services
+	doins dbus/org.chromium.RuntimeProbe.service
+
+
+	# Install sandbox information.
+	insinto /etc/runtime_probe/sandbox
+	doins sandbox/"${ARCH}"/args.json
+	doins sandbox/"${ARCH}"/*-seccomp.policy
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	newins "seccomp/runtime_probe-seccomp-${ARCH}.policy" \
+	runtime_probe-seccomp.policy
+
+	# Install udev rules.
+	udev_dorules udev/*.rules
+
+	local fuzzer
+	for fuzzer in "${OUT}"/*_fuzzer; do
+		local fuzzer_component_id="606088"
+		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}" \
+			--comp "${fuzzer_component_id}"
+	done
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/unittest_runner"
+}
diff --git a/chromeos-base/runtime_probe/runtime_probe-9999.ebuild b/chromeos-base/runtime_probe/runtime_probe-9999.ebuild
index 1af1094..ca42e92 100644
--- a/chromeos-base/runtime_probe/runtime_probe-9999.ebuild
+++ b/chromeos-base/runtime_probe/runtime_probe-9999.ebuild
@@ -11,20 +11,16 @@
 
 PLATFORM_SUBDIR="runtime_probe"
 
-inherit cros-workon platform user udev
+inherit cros-workon cros-unibuild platform user udev
 
 DESCRIPTION="Runtime probing on device componenets."
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/runtime_probe/"
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="generated_cros_config unibuild asan fuzzer"
+IUSE="asan fuzzer"
 
 COMMON_DEPEND="
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config:= )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
 	chromeos-base/chromeos-config-tools:=
 "
 
@@ -35,6 +31,7 @@
 
 # Add vboot_reference as build time dependency to read cros_debug status
 DEPEND="${COMMON_DEPEND}
+	chromeos-base/debugd-client:=
 	chromeos-base/shill-client:=
 	chromeos-base/system_api:=[fuzzer?]
 	chromeos-base/vboot_reference:=
@@ -78,7 +75,9 @@
 
 	local fuzzer
 	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}"
+		local fuzzer_component_id="606088"
+		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}" \
+			--comp "${fuzzer_component_id}"
 	done
 }
 
diff --git a/chromeos-base/sample-dlc/sample-dlc-1.0.0-r3.ebuild b/chromeos-base/sample-dlc/sample-dlc-1.0.0-r5.ebuild
similarity index 100%
rename from chromeos-base/sample-dlc/sample-dlc-1.0.0-r3.ebuild
rename to chromeos-base/sample-dlc/sample-dlc-1.0.0-r5.ebuild
diff --git a/chromeos-base/sample-dlc/sample-dlc-1.0.0.ebuild b/chromeos-base/sample-dlc/sample-dlc-1.0.0.ebuild
index 4a5a8955..aa0e2a7 100644
--- a/chromeos-base/sample-dlc/sample-dlc-1.0.0.ebuild
+++ b/chromeos-base/sample-dlc/sample-dlc-1.0.0.ebuild
@@ -15,16 +15,21 @@
 LICENSE="BSD-Google"
 SLOT="0"
 KEYWORDS="*"
-IUSE="dlc dlc_test"
-REQUIRED_USE="dlc dlc_test"
+IUSE="dlc"
+REQUIRED_USE="dlc"
 
 # Required
 DLC_PREALLOC_BLOCKS="1024"
 
 # Optional, reference design doc for all other optional DLC variables.
 DLC_NAME="Sample DLC"
+
+# Only use this variable if you have integration tests running against the DLC.
 DLC_PRELOAD=true
 
+# DO NOT USE this variable, unless it was discussed with @chromeos-core-services.
+DLC_FACTORY_INSTALL=true
+
 src_unpack() {
 	# Because we are not pulling in any sources, we need to have an empty
 	# source directory to satisfy the build success.
@@ -55,7 +60,7 @@
 	insinto "$(dlc_add_path /opt)"
 	exeinto "$(dlc_add_path /opt)"
 
-	echo ${seed} | newins - seed
+	echo seed | newins - seed
 
 	local n
 	for n in {1..3}; do
diff --git a/chromeos-base/screen-capture-utils/screen-capture-utils-0.0.1-r130.ebuild b/chromeos-base/screen-capture-utils/screen-capture-utils-0.0.1-r130.ebuild
new file mode 100644
index 0000000..d0b0513f
--- /dev/null
+++ b/chromeos-base/screen-capture-utils/screen-capture-utils-0.0.1-r130.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "13b981873aeeddde042e6acfa4cd3a89e878984e" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+# TODO(crbug.com/809389): remove 'metrics' pulled in from header dependency.
+CROS_WORKON_SUBTREE="common-mk screen-capture-utils metrics .gn"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+
+PLATFORM_SUBDIR="screen-capture-utils"
+
+inherit cros-workon platform
+
+DESCRIPTION="Utilities for screen capturing"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/screen-capture-utils/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+# Mark the old screenshot package as blocker so it gets automatically removed in
+# incremental builds.
+RDEPEND="
+	chromeos-base/metrics
+	!chromeos-base/screenshot
+	media-libs/libpng:0=
+	media-libs/minigbm:=
+	net-libs/libvncserver
+	x11-libs/libdrm:=
+	virtual/opengles"
+
+DEPEND="${RDEPEND}
+	x11-drivers/opengles-headers"
+
+src_install() {
+	dosbin "${OUT}/kmsvnc"
+	dosbin "${OUT}/screenshot"
+}
+
+platform_pkg_test() {
+	platform test_all
+}
diff --git a/chromeos-base/screen-capture-utils/screen-capture-utils-0.0.1-r88.ebuild b/chromeos-base/screen-capture-utils/screen-capture-utils-0.0.1-r88.ebuild
deleted file mode 100644
index 203de09..0000000
--- a/chromeos-base/screen-capture-utils/screen-capture-utils-0.0.1-r88.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="0553127ef2b660a5c71f12a9417ed4ad35f07120"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "4abc9fac8153750a03865f00a60126fc46c47d5f" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-# TODO(crbug.com/809389): remove 'metrics' pulled in from header dependency.
-CROS_WORKON_SUBTREE="common-mk screen-capture-utils metrics .gn"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-
-PLATFORM_SUBDIR="screen-capture-utils"
-
-inherit cros-workon platform
-
-DESCRIPTION="Utilities for screen capturing"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/screen-capture-utils/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-# Mark the old screenshot package as blocker so it gets automatically removed in
-# incremental builds.
-RDEPEND="
-	chromeos-base/metrics
-	!chromeos-base/screenshot
-	media-libs/libpng:0=
-	media-libs/minigbm:=
-	net-libs/libvncserver
-	x11-libs/libdrm:=
-	virtual/opengles"
-
-DEPEND="${RDEPEND}
-	x11-drivers/opengles-headers"
-
-src_install() {
-	dosbin "${OUT}/kmsvnc"
-	dosbin "${OUT}/screenshot"
-}
diff --git a/chromeos-base/screen-capture-utils/screen-capture-utils-9999.ebuild b/chromeos-base/screen-capture-utils/screen-capture-utils-9999.ebuild
index 5caaa33..d9361d6 100644
--- a/chromeos-base/screen-capture-utils/screen-capture-utils-9999.ebuild
+++ b/chromeos-base/screen-capture-utils/screen-capture-utils-9999.ebuild
@@ -39,3 +39,7 @@
 	dosbin "${OUT}/kmsvnc"
 	dosbin "${OUT}/screenshot"
 }
+
+platform_pkg_test() {
+	platform test_all
+}
diff --git a/chromeos-base/sealed_storage/sealed_storage-0.0.1-r349.ebuild b/chromeos-base/sealed_storage/sealed_storage-0.0.1-r349.ebuild
deleted file mode 100644
index 79e5b9b..0000000
--- a/chromeos-base/sealed_storage/sealed_storage-0.0.1-r349.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f563528fd35a0e55348afa3545ed57af4b86bdbc"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "8c9a3cf268c90fb53e2168f7124f6fa15c1d9f12" "8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6" "a06a3f47395fb7b584188c6852764bc773e5497e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk sealed_storage tpm_manager trunks .gn"
-
-PLATFORM_SUBDIR="sealed_storage"
-
-inherit cros-workon platform
-
-DESCRIPTION="Library for sealing data to device identity and state"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/sealed_storage"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-IUSE="test tpm2"
-
-REQUIRED_USE="tpm2"
-COMMON_DEPEND="
-	chromeos-base/tpm_manager:=[test?]
-	chromeos-base/trunks:=[test?]
-"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/protofiles:=
-	chromeos-base/system_api:=
-"
-
-src_install() {
-	dosbin "${OUT}"/sealed_storage_tool
-	dolib.a "${OUT}"/libsealed_storage.a
-	dolib.so "${OUT}"/lib/libsealed_storage_wrapper.so
-
-	insinto /usr/include/chromeos/sealed_storage
-	doins sealed_storage.h
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/sealed_storage_testrunner"
-}
diff --git a/chromeos-base/sealed_storage/sealed_storage-0.0.1-r423.ebuild b/chromeos-base/sealed_storage/sealed_storage-0.0.1-r423.ebuild
new file mode 100644
index 0000000..4a3a9b9
--- /dev/null
+++ b/chromeos-base/sealed_storage/sealed_storage-0.0.1-r423.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="7e56fbcc6f3c9e9ba98bf43a52940100e5fbc918"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "7c46cd0c49a546618e79fb5e782095f11dc54f44" "659b97d9c804b358f4bd27925620d4dd1cee8fc7" "d8da1275feb26afab354f35df7316b3840f8330b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk sealed_storage tpm_manager trunks .gn"
+
+PLATFORM_SUBDIR="sealed_storage"
+
+inherit cros-workon platform
+
+DESCRIPTION="Library for sealing data to device identity and state"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/sealed_storage"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+IUSE="test tpm2"
+
+REQUIRED_USE="tpm2"
+COMMON_DEPEND="
+	chromeos-base/tpm_manager:=[test?]
+	chromeos-base/trunks:=[test?]
+"
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/protofiles:=
+	chromeos-base/system_api:=
+"
+
+src_install() {
+	dosbin "${OUT}"/sealed_storage_tool
+	dolib.a "${OUT}"/libsealed_storage.a
+	dolib.so "${OUT}"/lib/libsealed_storage_wrapper.so
+
+	insinto /usr/include/chromeos/sealed_storage
+	doins sealed_storage.h
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/sealed_storage_testrunner"
+}
diff --git a/chromeos-base/secanomalyd/secanomalyd-0.0.1-r46.ebuild b/chromeos-base/secanomalyd/secanomalyd-0.0.1-r46.ebuild
deleted file mode 100644
index 0266b02..0000000
--- a/chromeos-base/secanomalyd/secanomalyd-0.0.1-r46.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="cadd7af14b485bf3b31dabf1088ba2defa7d93bb"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "f5e4a2744562739c141e10842394812115ba314e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk metrics secanomalyd .gn"
-
-PLATFORM_SUBDIR="secanomalyd"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Chrome OS security-anomaly detection daemon"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/secanomalyd/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-COMMON_DEPEND="
-	chromeos-base/metrics:=
-	chromeos-base/vboot_reference:=
-"
-RDEPEND="${COMMON_DEPEND}
-	chromeos-base/minijail:=
-"
-DEPEND="${COMMON_DEPEND}"
-
-pkg_setup() {
-	enewuser "secanomaly"
-	enewgroup "secanomaly"
-
-	cros-workon_pkg_setup
-}
-
-src_install() {
-	dosbin "${OUT}"/secanomalyd
-
-	# Install Upstart configuration.
-	insinto /etc/init
-	doins secanomalyd.conf
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/secanomalyd_testrunner"
-}
diff --git a/chromeos-base/secanomalyd/secanomalyd-0.0.1-r93.ebuild b/chromeos-base/secanomalyd/secanomalyd-0.0.1-r93.ebuild
new file mode 100644
index 0000000..bec858a
--- /dev/null
+++ b/chromeos-base/secanomalyd/secanomalyd-0.0.1-r93.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="4aabd6ca0d8d3c8d946be5497644e8c35d9126b5"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e08a2eb734e33827dffeecf57eca046cd1091373" "6e3e35cb16d7f39ad428c8d64e4eecd4149a2370" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk metrics secanomalyd .gn"
+
+PLATFORM_SUBDIR="secanomalyd"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Chrome OS security-anomaly detection daemon"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/secanomalyd/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+COMMON_DEPEND="
+	chromeos-base/metrics:=
+	chromeos-base/vboot_reference:=
+"
+RDEPEND="${COMMON_DEPEND}
+	chromeos-base/minijail:=
+"
+DEPEND="${COMMON_DEPEND}"
+
+pkg_setup() {
+	enewuser "secanomaly"
+	enewgroup "secanomaly"
+
+	cros-workon_pkg_setup
+}
+
+src_install() {
+	dosbin "${OUT}"/secanomalyd
+
+	# Install Upstart configuration.
+	insinto /etc/init
+	doins secanomalyd.conf
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/secanomalyd_testrunner"
+}
diff --git a/chromeos-base/secure-erase-file/secure-erase-file-0.0.1-r929.ebuild b/chromeos-base/secure-erase-file/secure-erase-file-0.0.1-r929.ebuild
deleted file mode 100644
index 893f625..0000000
--- a/chromeos-base/secure-erase-file/secure-erase-file-0.0.1-r929.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "1a305e65cfaf27dd42734a37eda080d40b377d6c" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk secure_erase_file .gn"
-
-PLATFORM_SUBDIR="secure_erase_file"
-
-inherit cros-workon platform
-
-DESCRIPTION="Secure file erasure for Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/secure_erase_file/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="
-"
-
-RDEPEND="
-"
-
-src_install() {
-	dobin "${OUT}/secure_erase_file"
-	dolib.so "${OUT}/lib/libsecure_erase_file.so"
-
-	insinto /usr/include/chromeos/secure_erase_file
-	doins secure_erase_file.h
-}
diff --git a/chromeos-base/secure-erase-file/secure-erase-file-0.0.1-r954.ebuild b/chromeos-base/secure-erase-file/secure-erase-file-0.0.1-r954.ebuild
new file mode 100644
index 0000000..1516e44
--- /dev/null
+++ b/chromeos-base/secure-erase-file/secure-erase-file-0.0.1-r954.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "1a305e65cfaf27dd42734a37eda080d40b377d6c" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk secure_erase_file .gn"
+
+PLATFORM_SUBDIR="secure_erase_file"
+
+inherit cros-workon platform
+
+DESCRIPTION="Secure file erasure for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/secure_erase_file/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND="
+"
+
+RDEPEND="
+"
+
+src_install() {
+	dobin "${OUT}/secure_erase_file"
+	dolib.so "${OUT}/lib/libsecure_erase_file.so"
+
+	insinto /usr/include/chromeos/secure_erase_file
+	doins secure_erase_file.h
+}
diff --git a/chromeos-base/secure-wipe/secure-wipe-0.0.1-r149.ebuild b/chromeos-base/secure-wipe/secure-wipe-0.0.1-r149.ebuild
deleted file mode 100644
index f3edb4e..0000000
--- a/chromeos-base/secure-wipe/secure-wipe-0.0.1-r149.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 2019 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "898687cfd878621b0aa42a27138c8a6c72210b16" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_SUBTREE="common-mk secure-wipe .gn"
-
-PLATFORM_SUBDIR="secure-wipe"
-
-inherit cros-workon platform
-
-DESCRIPTION="Secure wipe"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/secure-wipe/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="mmc nvme sata test"
-
-DEPEND=""
-
-RDEPEND="
-	app-misc/jq
-	sata? ( sys-apps/hdparm )
-	mmc? ( sys-apps/mmc-utils )
-	nvme? ( sys-apps/nvme-cli )
-	sys-apps/util-linux
-	sys-block/fio"
-
-src_test() {
-	tests/factory_verify_test.sh || die "unittest failed"
-}
-
-src_install() {
-	dosbin secure-wipe.sh
-	dosbin wipe_disk
-}
diff --git a/chromeos-base/secure-wipe/secure-wipe-0.0.1-r174.ebuild b/chromeos-base/secure-wipe/secure-wipe-0.0.1-r174.ebuild
new file mode 100644
index 0000000..b321b8b
--- /dev/null
+++ b/chromeos-base/secure-wipe/secure-wipe-0.0.1-r174.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2019 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "898687cfd878621b0aa42a27138c8a6c72210b16" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_SUBTREE="common-mk secure-wipe .gn"
+
+PLATFORM_SUBDIR="secure-wipe"
+
+inherit cros-workon platform
+
+DESCRIPTION="Secure wipe"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/secure-wipe/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="mmc nvme sata test"
+
+DEPEND=""
+
+RDEPEND="
+	app-misc/jq
+	sata? ( sys-apps/hdparm )
+	mmc? ( sys-apps/mmc-utils )
+	nvme? ( sys-apps/nvme-cli )
+	sys-apps/util-linux
+	sys-block/fio"
+
+src_test() {
+	tests/factory_verify_test.sh || die "unittest failed"
+}
+
+src_install() {
+	dosbin secure-wipe.sh
+	dosbin wipe_disk
+}
diff --git a/chromeos-base/selinux-policy/selinux-policy-0.0.1-r339.ebuild b/chromeos-base/selinux-policy/selinux-policy-0.0.1-r339.ebuild
deleted file mode 100644
index 00b98fb..0000000
--- a/chromeos-base/selinux-policy/selinux-policy-0.0.1-r339.ebuild
+++ /dev/null
@@ -1,395 +0,0 @@
-# Copyright 2018 The Chromium Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="a7d83f416a8915930ffebb61280f935300244c5c"
-CROS_WORKON_TREE="f51d612a47b82796078faca5ec54f1d83ef9a703"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="sepolicy"
-
-inherit cros-workon udev
-
-DESCRIPTION="Chrome OS SELinux Policy Package"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-# Keep this in sync with has_arc().
-IUSE="
-	android-container-pi
-	android-vm-master
-	android-vm-rvc
-	android-vm-sc
-	selinux_audit_all selinux_develop selinux_experimental
-	arc_first_release_n
-	nocheck
-	cheets_user cheets_user_64
-"
-DEPEND="
-	android-container-pi? ( chromeos-base/android-container-pi:0= )
-	android-vm-master? ( chromeos-base/android-vm-master:0= )
-	android-vm-rvc? ( chromeos-base/android-vm-rvc:0= )
-	android-vm-sc? ( chromeos-base/android-vm-sc:0= )
-"
-
-RDEPEND="
-	${DEPEND}
-	sys-apps/restorecon
-	sys-process/audit
-"
-
-SELINUX_VERSION="30"
-SEPOLICY_FILENAME="policy.${SELINUX_VERSION}"
-
-MLS_NUM_SENS=1
-MLS_NUM_CATS=1024
-CHROME_POLICY_FILES_PATTERN=(
-	security_classes
-	initial_sids
-	access_vectors
-	global_macros
-	chromeos_macros
-	neverallow_macros
-	mls_macros
-	mls_decl
-	mls
-	policy_capabilities
-	te_macros
-	attributes
-	ioctl_defines
-	ioctl_macros
-	chromeos_ioctl_defines
-	chromeos_ioctl_macros
-	"*.te"
-	roles_decl
-	roles
-	users
-	initial_sid_contexts
-	fs_use
-	genfs_contexts
-)
-
-# Files under $SEPATH are built by android-container-* in DEPEND.
-SEPATH="${SYSROOT}/etc/selinux/intermediates/"
-
-# -M Build MLS policy.
-# -G expand and remove auto-generated attributes.
-# -N ignore neverallow rules (checked during Android build)
-# -m allow multiple declaration (combination of rules of multiple source)
-SECILC_ARGS=(
-	-M true -G -N -m
-	-c "${SELINUX_VERSION}"
-	-o "${SEPOLICY_FILENAME}"
-	-f /dev/null
-)
-
-SECILC_ARGS_CHECK_NEVERALLOW=(
-	-M true -G -m
-	-c "${SELINUX_VERSION}"
-	-o /dev/null
-	-f /dev/null
-)
-
-# Common flags for m4
-M4_COMMON_FLAGS=(
-)
-
-# Remove all lines existed in $1 from /dev/stdin.
-# and remove all lines begin with "^;" (cil comment)
-# remove cil comment is necessary for clearing unmatched line marker
-# after base policy definitions are removed.
-# Also preserve type definitions since secilc can handle duplicates on
-# definition of types.
-filter_file_line_by_line() {
-	perl -e '
-		my @reflines;
-		open(my $ref, "<", $ARGV[0]);
-		while(<$ref>) { push @reflines, $_; }
-		while(<STDIN>) {
-			if ( m/^\(type / ) { print; next; }
-			if ( m/^;/ ) { next; }
-			if ($_ ~~ @reflines) { next; }
-			print
-		}
-	' "$1"
-}
-
-# Quick hack for conflicting generated base_typeattr_XX with
-# non-versioned Android cil.
-# A better solution could be to use libsepol to parse and process
-# cil to modify it.
-version_cil() {
-	sed -e 's/base_typeattr_\([0-9]*\)/base_typeattr_cros_\1/g'
-}
-
-# Keep this in sync with IUSE/DEPEND.
-has_arc() {
-	use android-container-pi ||
-	use android-vm-rvc ||
-	use android-vm-sc ||
-	use android-vm-master
-}
-
-gen_m4_flags() {
-	M4_COMMON_FLAGS=()
-	local arc_version="none"
-	if use android-container-pi; then
-		arc_version="p"
-	elif use android-vm-rvc; then
-		arc_version="r"
-	elif use android-vm-sc; then
-		arc_version="s"
-	elif use android-vm-master; then
-		arc_version="master"
-	fi
-	M4_COMMON_FLAGS+=(
-		"-Darc_version=${arc_version}"
-		"-Duse_selinux_develop=$(usex selinux_develop y n)"
-		"-Duse_arc_first_release_n=$(usex arc_first_release_n y n)"
-	)
-	einfo "m4 flags: ${M4_COMMON_FLAGS[*]}"
-}
-
-# Build SELinux intermediate language files.
-# Look into SELinux policies in given directories, and
-# pre-compile with m4 macro preprocessor, and merge them into
-# a monothilic SELinux policy, and then compile it into
-# intermediate files using checkpolicy compiler.
-build_cil() {
-	local policy_files=()
-	local ciltype="$1"
-	shift
-	local output="$1"
-	shift
-	local pattern
-	for pattern in "${CHROME_POLICY_FILES_PATTERN[@]}"; do
-		local path
-		for path in "$@"; do
-			local file
-			while read -r -d $'\0' file; do
-				policy_files+=("${file}")
-			done < <(find "${path}" -xtype f -name "${pattern}" -print0)
-		done
-	done
-	m4 "-Dmls_num_sens=${MLS_NUM_SENS}" "-Dmls_num_cats=${MLS_NUM_CATS}" \
-		"${M4_COMMON_FLAGS[@]}" \
-		"-Dciltype=${ciltype}" \
-		-s "${policy_files[@]}" > "${output}.conf" \
-		|| die "failed to generate ${output}.conf"
-	checkpolicy -M -C -c "${SELINUX_VERSION}" "${output}.conf" \
-		-o "${output}" || die "failed to build $output"
-}
-
-build_android_reqd_cil() {
-	build_cil reqd "android_reqd.cil" "sepolicy/policy/base/" "sepolicy/policy/mask_only/"
-}
-
-build_chromeos_policy() {
-	build_android_reqd_cil
-
-	build_cil cros "chromeos.raw.cil" "sepolicy/policy/base/" "sepolicy/policy/chromeos_base" "sepolicy/policy/chromeos/"
-	version_cil < chromeos.raw.cil > chromeos.raw.versioned.cil
-	secilc "${SECILC_ARGS_CHECK_NEVERALLOW[@]}" chromeos.raw.cil ||
-		die "some Chrome OS neverallows are not satisfied"
-	filter_file_line_by_line android_reqd.cil < chromeos.raw.versioned.cil > chromeos.cil ||
-		die "failed to convert raw cil to filtered cil"
-}
-
-build_file_contexts() {
-	einfo "Compiling chromeos_file_contexts"
-	m4 "${M4_COMMON_FLAGS[@]}" "sepolicy/file_contexts/macros" \
-		"sepolicy/file_contexts/chromeos_file_contexts" > chromeos_file_contexts ||
-		die "failed to build chromeos file contexts"
-}
-
-check_filetrans_defined_in_file_contexts() {
-	einfo "Verifying policy and file_contexts for filetrans_pattern"
-	_is_empty() {
-		local err=0
-		while read line; do
-			if [[ "$err" -eq "0" ]]; then
-				ewarn "Expected to find these lines in file_contexts, but were not found:"
-				err=1
-			fi
-			ewarn "$line"
-		done
-		return $err
-	}
-	# filetrans is a kind of typetransition. Typetrasition is described like
-	# the following in a .cil file:
-	# (typetransition source target class new_type) or
-	# (typetransition source target class object_name new_type)
-	# We only want to verify where
-	#  - both source and target are not tmpfs-related.
-	#  - source is not unconfined domain: chromeos
-	#  - type is not process since we only care file typetransition.
-	cat chromeos.cil | awk '
-		/^\(typetransition/	{
-						context=substr($NF,0,length($NF)-1)
-						if ($4=="process"||$2=="chromeos") next;
-						if(context ~/cros_.*tmp_file/) next; # Created an cros_.*_tmp_file
-						if(context ~/(device|rootfs|tmpfs)/) next; # Created a file labeled as device, tmpfs, or rootfs.
-						if($3 ~/^(cros_run(_.*)?|cros_.*tmp_file|tmpfs|arc_dir)$/) next; # Create a file in tmpfs.
-						if(NF==6) { print substr($5,2,length($5)-2) ".*u:object_r:" context ":s0" }
-						else { print "u:object_r:" context ":s0" }
-					}
-	' | sort -u | xargs -d'\n' -n 1 sh -c 'grep $0 file_contexts >/dev/null || echo $0' | _is_empty
-}
-
-# cat cil-file | get_attributed_type(attribute) => types separated by spaces
-get_attributed_type() {
-	local attr="$1"
-	grep "(typeattributeset ${attr} (" | sed -e "s/^(typeattributeset ${attr} (//g" | sed -e 's/ ))$//g'
-}
-
-# check_attribute_include attr subattr1 subattr2 subattr3 ... excluded_type1 excluded_type2 ...
-check_attribute_include() {
-	local poolname="$1"
-	shift 1
-	einfo "Checking type set (attribute ${poolname}) equals to union of type sets of (attribute $@)"
-	local pool="$(cat chromeos.cil | get_attributed_type "${poolname}" | tr ' ' '\n')"
-	local remaining_types="$pool"
-	for attr in $@; do
-		remaining_types="$(echo "$remaining_types" | egrep -v "^$attr$")"
-		for t in `cat chromeos.cil | get_attributed_type "${attr}"`; do
-			if ! grep "$t" <(echo "$pool") >/dev/null; then
-				die "${t} type should have attribute ${poolname} to have attribute ${attr}"
-			fi
-			remaining_types="$(echo "$remaining_types" | egrep -v "^$t$")"
-		done
-	done
-	if ! [[ -z "$remaining_types" ]]; then
-		die "Types with attribute $poolname should have at least one of $@, but these doesn't: \n$(echo "${remaining_types}" | tr '\n' ' ')"
-	fi
-}
-
-check_file_type_and_attribute() {
-	einfo "Checking file types and their attributes"
-	check_attribute_include file_type cros_file_type unlabeled system_data_file media_data_file android_file_type
-	check_attribute_include cros_file_type cros_system_file_type cros_tmpfile_type cros_home_file_type cros_var_file_type cros_run_file_type cros_uncategorized_file_type
-}
-
-src_compile() {
-	gen_m4_flags
-
-	build_chromeos_policy
-	build_file_contexts
-
-	cp -r "${SEPATH}" intermediate_policy
-
-	if use selinux_audit_all; then
-		find intermediate_policy/ -xtype f -name '*.cil' -exec \
-			sed -i 's/^(dontaudit .*//g' {} \;
-		sed -i 's/^(dontaudit .*//g' chromeos.cil
-		sed -i 's/^(dontaudit .*//g' chromeos.raw.cil
-	fi
-
-	local cilpath="$(pwd)/intermediate_policy"
-
-	if has_arc; then
-		einfo "Removing duplicate nnp_nosuid_transition policycap from Android cil"
-		sed -i '/^(policycap nnp_nosuid_transition)$/d' "${cilpath}"/*.cil || die
-
-		einfo "Combining Chrome OS and Android SELinux policy"
-		secilc "${SECILC_ARGS[@]}" "${cilpath}/plat_sepolicy.cil" \
-			"${cilpath}/mapping.cil" \
-			"${cilpath}/plat_pub_versioned.cil" \
-			"${cilpath}/vendor_sepolicy.cil" \
-			chromeos.cil || die "fail to build sepolicy"
-
-		# Add header/footer around ARC++ contexts, so they can be
-		# correctly replaced when pushing new Android builds using
-		# push_to_device.py.
-		(
-			cat "chromeos_file_contexts" &&
-			echo -e "\n# BEGIN_ARC_FILE_CONTEXTS" &&
-			cat "${SYSROOT}/etc/selinux/intermediates/arc_file_contexts" &&
-			echo -e "\n# END_ARC_FILE_CONTEXTS"
-		) > file_contexts || die "failed to combine *_file_contexts files"
-
-	else
-		# Chrome OS without ARC++ only.
-		einfo "Use Chrome OS-only SELinux policy."
-
-		secilc "${SECILC_ARGS[@]}" chromeos.raw.cil || die "fail to build sepolicy"
-		cp "chromeos_file_contexts" file_contexts \
-			|| die "didn't find chromeos_file_contexts for file_contexts"
-	fi
-
-	check_filetrans_defined_in_file_contexts \
-		|| die "failed to check consistency between filetrans_pattern and file_contexts"
-
-	if use nocheck; then
-		ewarn "Some post-compile checks are skipped. Please remove nocheck from your USE flag"
-	else
-		einfo 'Use USE="$USE nocheck" emerge-$BOARD selinux-policy to speed up emerge for development purpose'.
-		check_file_type_and_attribute
-	fi
-}
-
-src_install() {
-	insinto /etc/selinux/arc/contexts/files
-	doins file_contexts
-
-	insinto /etc/selinux
-	if use selinux_experimental; then
-		newins "${FILESDIR}/selinux_config_experimental" config
-	else
-		newins "${FILESDIR}/selinux_config" config
-	fi
-
-	insinto /etc/selinux/arc/policy
-	doins "${SEPOLICY_FILENAME}"
-
-	if use selinux_develop; then
-		insinto /etc/init
-		doins "${FILESDIR}/selinux_debug.conf"
-		dobin "${FILESDIR}/audit_log_since_boot"
-	fi
-
-	if has_arc; then
-		# Install ChromeOS cil so push_to_device.py can compile a new
-		# version of SELinux policy.
-		insinto /etc/selinux/intermediates.raw/
-		doins chromeos.cil
-	fi
-
-	udev_dorules "${FILESDIR}/50-selinux.rules"
-}
-
-# Check policy violation for neverallow rules extracted from CTS SELinuxNeverallowRulesTest.
-src_test() {
-	if ! use android-container-pi; then
-		# Skipping the test for ARCVM.
-		# We only run SELinux CTS against the guest-side policy of ARCVM.
-		return
-	fi
-
-	local neverallowjava="${SYSROOT}/etc/selinux/intermediates/SELinuxNeverallowRulesTest.java"
-	if [ ! -f "${SYSROOT}/etc/selinux/intermediates/SELinuxNeverallowRulesTest.java" ]; then
-		ewarn "No SELinuxNeverallowRulesTest.java found. CTS neverallow pre-test is skipped."
-		return
-	fi
-
-	# Extract 'String neverallowRule = "neverallow ...";' lines from the Java source code and
-	# write the extracted lines to ./neverallows.
-	(
-		grep "boolean compatiblePropertyOnly = false;" -B 2 |
-		grep "boolean fullTrebleOnly = false;" -B 1 |
-		grep neverallowRule |
-		sed -E 's/.*"(neverallow.*)";/\1/g'
-	) < "${neverallowjava}" > neverallows
-
-	local loc="$(wc -l neverallows | awk '{print $1;}')"
-	if [[ "${loc}" -lt "100" ]]; then
-		die "too few test cases. something is wrong."
-	fi
-	local cur=0
-	while read -r rule; do
-		cur=$((cur+1))
-		printf "Checking neverallow rules: %d/%d\r" "$cur" "$loc"
-		sepolicy-analyze "${SEPOLICY_FILENAME}" neverallow -n "$rule" || (echo failed for "$rule"; die)
-	done < neverallows
-}
diff --git a/chromeos-base/selinux-policy/selinux-policy-0.0.1-r362.ebuild b/chromeos-base/selinux-policy/selinux-policy-0.0.1-r362.ebuild
new file mode 100644
index 0000000..ef97f9b
--- /dev/null
+++ b/chromeos-base/selinux-policy/selinux-policy-0.0.1-r362.ebuild
@@ -0,0 +1,395 @@
+# Copyright 2018 The Chromium Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="e263197ab376c000bcbab33555a8fbb038805061"
+CROS_WORKON_TREE="d5c98bd64e1baa01304df8f9708da21afbe195af"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="sepolicy"
+
+inherit cros-workon udev
+
+DESCRIPTION="Chrome OS SELinux Policy Package"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+# Keep this in sync with has_arc().
+IUSE="
+	android-container-pi
+	android-vm-master
+	android-vm-rvc
+	android-vm-sc
+	selinux_audit_all selinux_develop selinux_experimental
+	arc_first_release_n
+	nocheck
+	cheets_user cheets_user_64
+"
+DEPEND="
+	android-container-pi? ( chromeos-base/android-container-pi:0= )
+	android-vm-master? ( chromeos-base/android-vm-master:0= )
+	android-vm-rvc? ( chromeos-base/android-vm-rvc:0= )
+	android-vm-sc? ( chromeos-base/android-vm-sc:0= )
+"
+
+RDEPEND="
+	${DEPEND}
+	sys-apps/restorecon
+	sys-process/audit
+"
+
+SELINUX_VERSION="30"
+SEPOLICY_FILENAME="policy.${SELINUX_VERSION}"
+
+MLS_NUM_SENS=1
+MLS_NUM_CATS=1024
+CHROME_POLICY_FILES_PATTERN=(
+	security_classes
+	initial_sids
+	access_vectors
+	global_macros
+	chromeos_macros
+	neverallow_macros
+	mls_macros
+	mls_decl
+	mls
+	policy_capabilities
+	te_macros
+	attributes
+	ioctl_defines
+	ioctl_macros
+	chromeos_ioctl_defines
+	chromeos_ioctl_macros
+	"*.te"
+	roles_decl
+	roles
+	users
+	initial_sid_contexts
+	fs_use
+	genfs_contexts
+)
+
+# Files under $SEPATH are built by android-container-* in DEPEND.
+SEPATH="${SYSROOT}/etc/selinux/intermediates/"
+
+# -M Build MLS policy.
+# -G expand and remove auto-generated attributes.
+# -N ignore neverallow rules (checked during Android build)
+# -m allow multiple declaration (combination of rules of multiple source)
+SECILC_ARGS=(
+	-M true -G -N -m
+	-c "${SELINUX_VERSION}"
+	-o "${SEPOLICY_FILENAME}"
+	-f /dev/null
+)
+
+SECILC_ARGS_CHECK_NEVERALLOW=(
+	-M true -G -m
+	-c "${SELINUX_VERSION}"
+	-o /dev/null
+	-f /dev/null
+)
+
+# Common flags for m4
+M4_COMMON_FLAGS=(
+)
+
+# Remove all lines existed in $1 from /dev/stdin.
+# and remove all lines begin with "^;" (cil comment)
+# remove cil comment is necessary for clearing unmatched line marker
+# after base policy definitions are removed.
+# Also preserve type definitions since secilc can handle duplicates on
+# definition of types.
+filter_file_line_by_line() {
+	perl -e '
+		my @reflines;
+		open(my $ref, "<", $ARGV[0]);
+		while(<$ref>) { push @reflines, $_; }
+		while(<STDIN>) {
+			if ( m/^\(type / ) { print; next; }
+			if ( m/^;/ ) { next; }
+			if ($_ ~~ @reflines) { next; }
+			print
+		}
+	' "$1"
+}
+
+# Quick hack for conflicting generated base_typeattr_XX with
+# non-versioned Android cil.
+# A better solution could be to use libsepol to parse and process
+# cil to modify it.
+version_cil() {
+	sed -e 's/base_typeattr_\([0-9]*\)/base_typeattr_cros_\1/g'
+}
+
+# Keep this in sync with IUSE/DEPEND.
+has_arc() {
+	use android-container-pi ||
+	use android-vm-rvc ||
+	use android-vm-sc ||
+	use android-vm-master
+}
+
+gen_m4_flags() {
+	M4_COMMON_FLAGS=()
+	local arc_version="none"
+	if use android-container-pi; then
+		arc_version="p"
+	elif use android-vm-rvc; then
+		arc_version="r"
+	elif use android-vm-sc; then
+		arc_version="s"
+	elif use android-vm-master; then
+		arc_version="master"
+	fi
+	M4_COMMON_FLAGS+=(
+		"-Darc_version=${arc_version}"
+		"-Duse_selinux_develop=$(usex selinux_develop y n)"
+		"-Duse_arc_first_release_n=$(usex arc_first_release_n y n)"
+	)
+	einfo "m4 flags: ${M4_COMMON_FLAGS[*]}"
+}
+
+# Build SELinux intermediate language files.
+# Look into SELinux policies in given directories, and
+# pre-compile with m4 macro preprocessor, and merge them into
+# a monothilic SELinux policy, and then compile it into
+# intermediate files using checkpolicy compiler.
+build_cil() {
+	local policy_files=()
+	local ciltype="$1"
+	shift
+	local output="$1"
+	shift
+	local pattern
+	for pattern in "${CHROME_POLICY_FILES_PATTERN[@]}"; do
+		local path
+		for path in "$@"; do
+			local file
+			while read -r -d $'\0' file; do
+				policy_files+=("${file}")
+			done < <(find "${path}" -xtype f -name "${pattern}" -print0)
+		done
+	done
+	m4 "-Dmls_num_sens=${MLS_NUM_SENS}" "-Dmls_num_cats=${MLS_NUM_CATS}" \
+		"${M4_COMMON_FLAGS[@]}" \
+		"-Dciltype=${ciltype}" \
+		-s "${policy_files[@]}" > "${output}.conf" \
+		|| die "failed to generate ${output}.conf"
+	checkpolicy -M -C -c "${SELINUX_VERSION}" "${output}.conf" \
+		-o "${output}" || die "failed to build $output"
+}
+
+build_android_reqd_cil() {
+	build_cil reqd "android_reqd.cil" "sepolicy/policy/base/" "sepolicy/policy/mask_only/"
+}
+
+build_chromeos_policy() {
+	build_android_reqd_cil
+
+	build_cil cros "chromeos.raw.cil" "sepolicy/policy/base/" "sepolicy/policy/chromeos_base" "sepolicy/policy/chromeos/"
+	version_cil < chromeos.raw.cil > chromeos.raw.versioned.cil
+	secilc "${SECILC_ARGS_CHECK_NEVERALLOW[@]}" chromeos.raw.cil ||
+		die "some Chrome OS neverallows are not satisfied"
+	filter_file_line_by_line android_reqd.cil < chromeos.raw.versioned.cil > chromeos.cil ||
+		die "failed to convert raw cil to filtered cil"
+}
+
+build_file_contexts() {
+	einfo "Compiling chromeos_file_contexts"
+	m4 "${M4_COMMON_FLAGS[@]}" "sepolicy/file_contexts/macros" \
+		"sepolicy/file_contexts/chromeos_file_contexts" > chromeos_file_contexts ||
+		die "failed to build chromeos file contexts"
+}
+
+check_filetrans_defined_in_file_contexts() {
+	einfo "Verifying policy and file_contexts for filetrans_pattern"
+	_is_empty() {
+		local err=0
+		while read line; do
+			if [[ "$err" -eq "0" ]]; then
+				ewarn "Expected to find these lines in file_contexts, but were not found:"
+				err=1
+			fi
+			ewarn "$line"
+		done
+		return $err
+	}
+	# filetrans is a kind of typetransition. Typetrasition is described like
+	# the following in a .cil file:
+	# (typetransition source target class new_type) or
+	# (typetransition source target class object_name new_type)
+	# We only want to verify where
+	#  - both source and target are not tmpfs-related.
+	#  - source is not unconfined domain: chromeos
+	#  - type is not process since we only care file typetransition.
+	cat chromeos.cil | awk '
+		/^\(typetransition/	{
+						context=substr($NF,0,length($NF)-1)
+						if ($4=="process"||$2=="chromeos") next;
+						if(context ~/cros_.*tmp_file/) next; # Created an cros_.*_tmp_file
+						if(context ~/(device|rootfs|tmpfs)/) next; # Created a file labeled as device, tmpfs, or rootfs.
+						if($3 ~/^(cros_run(_.*)?|cros_.*tmp_file|tmpfs|arc_dir)$/) next; # Create a file in tmpfs.
+						if(NF==6) { print substr($5,2,length($5)-2) ".*u:object_r:" context ":s0" }
+						else { print "u:object_r:" context ":s0" }
+					}
+	' | sort -u | xargs -d'\n' -n 1 sh -c 'grep $0 file_contexts >/dev/null || echo $0' | _is_empty
+}
+
+# cat cil-file | get_attributed_type(attribute) => types separated by spaces
+get_attributed_type() {
+	local attr="$1"
+	grep "(typeattributeset ${attr} (" | sed -e "s/^(typeattributeset ${attr} (//g" | sed -e 's/ ))$//g'
+}
+
+# check_attribute_include attr subattr1 subattr2 subattr3 ... excluded_type1 excluded_type2 ...
+check_attribute_include() {
+	local poolname="$1"
+	shift 1
+	einfo "Checking type set (attribute ${poolname}) equals to union of type sets of (attribute $@)"
+	local pool="$(cat chromeos.cil | get_attributed_type "${poolname}" | tr ' ' '\n')"
+	local remaining_types="$pool"
+	for attr in $@; do
+		remaining_types="$(echo "$remaining_types" | egrep -v "^$attr$")"
+		for t in `cat chromeos.cil | get_attributed_type "${attr}"`; do
+			if ! grep "$t" <(echo "$pool") >/dev/null; then
+				die "${t} type should have attribute ${poolname} to have attribute ${attr}"
+			fi
+			remaining_types="$(echo "$remaining_types" | egrep -v "^$t$")"
+		done
+	done
+	if ! [[ -z "$remaining_types" ]]; then
+		die "Types with attribute $poolname should have at least one of $@, but these doesn't: \n$(echo "${remaining_types}" | tr '\n' ' ')"
+	fi
+}
+
+check_file_type_and_attribute() {
+	einfo "Checking file types and their attributes"
+	check_attribute_include file_type cros_file_type unlabeled system_data_file media_data_file android_file_type
+	check_attribute_include cros_file_type cros_system_file_type cros_tmpfile_type cros_home_file_type cros_var_file_type cros_run_file_type cros_uncategorized_file_type
+}
+
+src_compile() {
+	gen_m4_flags
+
+	build_chromeos_policy
+	build_file_contexts
+
+	cp -r "${SEPATH}" intermediate_policy
+
+	if use selinux_audit_all; then
+		find intermediate_policy/ -xtype f -name '*.cil' -exec \
+			sed -i 's/^(dontaudit .*//g' {} \;
+		sed -i 's/^(dontaudit .*//g' chromeos.cil
+		sed -i 's/^(dontaudit .*//g' chromeos.raw.cil
+	fi
+
+	local cilpath="$(pwd)/intermediate_policy"
+
+	if has_arc; then
+		einfo "Removing duplicate nnp_nosuid_transition policycap from Android cil"
+		sed -i '/^(policycap nnp_nosuid_transition)$/d' "${cilpath}"/*.cil || die
+
+		einfo "Combining Chrome OS and Android SELinux policy"
+		secilc "${SECILC_ARGS[@]}" "${cilpath}/plat_sepolicy.cil" \
+			"${cilpath}/mapping.cil" \
+			"${cilpath}/plat_pub_versioned.cil" \
+			"${cilpath}/vendor_sepolicy.cil" \
+			chromeos.cil || die "fail to build sepolicy"
+
+		# Add header/footer around ARC++ contexts, so they can be
+		# correctly replaced when pushing new Android builds using
+		# push_to_device.py.
+		(
+			cat "chromeos_file_contexts" &&
+			echo -e "\n# BEGIN_ARC_FILE_CONTEXTS" &&
+			cat "${SYSROOT}/etc/selinux/intermediates/arc_file_contexts" &&
+			echo -e "\n# END_ARC_FILE_CONTEXTS"
+		) > file_contexts || die "failed to combine *_file_contexts files"
+
+	else
+		# Chrome OS without ARC++ only.
+		einfo "Use Chrome OS-only SELinux policy."
+
+		secilc "${SECILC_ARGS[@]}" chromeos.raw.cil || die "fail to build sepolicy"
+		cp "chromeos_file_contexts" file_contexts \
+			|| die "didn't find chromeos_file_contexts for file_contexts"
+	fi
+
+	check_filetrans_defined_in_file_contexts \
+		|| die "failed to check consistency between filetrans_pattern and file_contexts"
+
+	if use nocheck; then
+		ewarn "Some post-compile checks are skipped. Please remove nocheck from your USE flag"
+	else
+		einfo 'Use USE="$USE nocheck" emerge-$BOARD selinux-policy to speed up emerge for development purpose'.
+		check_file_type_and_attribute
+	fi
+}
+
+src_install() {
+	insinto /etc/selinux/arc/contexts/files
+	doins file_contexts
+
+	insinto /etc/selinux
+	if use selinux_experimental; then
+		newins "${FILESDIR}/selinux_config_experimental" config
+	else
+		newins "${FILESDIR}/selinux_config" config
+	fi
+
+	insinto /etc/selinux/arc/policy
+	doins "${SEPOLICY_FILENAME}"
+
+	if use selinux_develop; then
+		insinto /etc/init
+		doins "${FILESDIR}/selinux_debug.conf"
+		dobin "${FILESDIR}/audit_log_since_boot"
+	fi
+
+	if has_arc; then
+		# Install ChromeOS cil so push_to_device.py can compile a new
+		# version of SELinux policy.
+		insinto /etc/selinux/intermediates.raw/
+		doins chromeos.cil
+	fi
+
+	udev_dorules "${FILESDIR}/50-selinux.rules"
+}
+
+# Check policy violation for neverallow rules extracted from CTS SELinuxNeverallowRulesTest.
+src_test() {
+	if ! use android-container-pi; then
+		# Skipping the test for ARCVM.
+		# We only run SELinux CTS against the guest-side policy of ARCVM.
+		return
+	fi
+
+	local neverallowjava="${SYSROOT}/etc/selinux/intermediates/SELinuxNeverallowRulesTest.java"
+	if [ ! -f "${SYSROOT}/etc/selinux/intermediates/SELinuxNeverallowRulesTest.java" ]; then
+		ewarn "No SELinuxNeverallowRulesTest.java found. CTS neverallow pre-test is skipped."
+		return
+	fi
+
+	# Extract 'String neverallowRule = "neverallow ...";' lines from the Java source code and
+	# write the extracted lines to ./neverallows.
+	(
+		grep "boolean compatiblePropertyOnly = false;" -B 2 |
+		grep "boolean fullTrebleOnly = false;" -B 1 |
+		grep neverallowRule |
+		sed -E 's/.*"(neverallow.*)";/\1/g'
+	) < "${neverallowjava}" > neverallows
+
+	local loc="$(wc -l neverallows | awk '{print $1;}')"
+	if [[ "${loc}" -lt "100" ]]; then
+		die "too few test cases. something is wrong."
+	fi
+	local cur=0
+	while read -r rule; do
+		cur=$((cur+1))
+		printf "Checking neverallow rules: %d/%d\r" "$cur" "$loc"
+		sepolicy-analyze "${SEPOLICY_FILENAME}" neverallow -n "$rule" || (echo failed for "$rule"; die)
+	done < neverallows
+}
diff --git a/chromeos-base/session_manager-client/session_manager-client-0.0.1-r2138.ebuild b/chromeos-base/session_manager-client/session_manager-client-0.0.1-r2138.ebuild
deleted file mode 100644
index 4c976cf..0000000
--- a/chromeos-base/session_manager-client/session_manager-client-0.0.1-r2138.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="c812693846f14fc4b8c3988e5de7dd9310d8f36c"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "705938420b278cc4b739150868d71128b855d23e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk login_manager .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="login_manager/session_manager-client"
-
-inherit cros-workon platform
-
-DESCRIPTION="Session manager (chromeos-login) DBus client library for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/login_manager/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros_host"
-
-# D-Bus proxies generated by this client library depend on the code generator
-# itself (chromeos-dbus-bindings) and produce header files that rely on
-# libbrillo library, hence both dependencies.
-DEPEND="
-	cros_host? ( chromeos-base/chromeos-dbus-bindings:= )
-"
-
-RDEPEND="
-	!<chromeos-base/chromeos-login-0.0.2
-"
-
-src_install() {
-	# Install DBus client library.
-	platform_install_dbus_client_lib "session_manager"
-}
diff --git a/chromeos-base/session_manager-client/session_manager-client-0.0.1-r2189.ebuild b/chromeos-base/session_manager-client/session_manager-client-0.0.1-r2189.ebuild
new file mode 100644
index 0000000..748233e
--- /dev/null
+++ b/chromeos-base/session_manager-client/session_manager-client-0.0.1-r2189.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "996150408ecdb3786beec73b5beedde1fd9515ad" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk login_manager .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="login_manager/session_manager-client"
+
+inherit cros-workon platform
+
+DESCRIPTION="Session manager (chromeos-login) DBus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/login_manager/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cros_host"
+
+# D-Bus proxies generated by this client library depend on the code generator
+# itself (chromeos-dbus-bindings) and produce header files that rely on
+# libbrillo library, hence both dependencies.
+DEPEND="
+	cros_host? ( chromeos-base/chromeos-dbus-bindings:= )
+"
+
+RDEPEND="
+	!<chromeos-base/chromeos-login-0.0.2
+"
+
+src_install() {
+	# Install DBus client library.
+	platform_install_dbus_client_lib "session_manager"
+}
diff --git a/chromeos-base/shill-cli/shill-cli-0.0.1-r123.ebuild b/chromeos-base/shill-cli/shill-cli-0.0.1-r123.ebuild
new file mode 100644
index 0000000..a9d9f19
--- /dev/null
+++ b/chromeos-base/shill-cli/shill-cli-0.0.1-r123.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "89de54f8e343342fc28d319632ee165e9bca94f9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="common-mk shill/cli .gn"
+
+PLATFORM_SUBDIR="shill/cli"
+
+inherit cros-workon platform
+
+DESCRIPTION="Shill Command Line Interface"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/shill/cli"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+	>=chromeos-base/shill-0.0.1-r2205
+"
+
+DEPEND="
+	chromeos-base/shill-client:=
+	chromeos-base/system_api:=
+"
+
+src_install() {
+	dobin "${OUT}"/shillcli
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/shillcli_test"
+}
diff --git a/chromeos-base/shill-cli/shill-cli-0.0.1-r97.ebuild b/chromeos-base/shill-cli/shill-cli-0.0.1-r97.ebuild
deleted file mode 100644
index c6334d0..0000000
--- a/chromeos-base/shill-cli/shill-cli-0.0.1-r97.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "5b20850cb32f8fc1646e154b9c6c5b094e5b5961" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="common-mk shill/cli .gn"
-
-PLATFORM_SUBDIR="shill/cli"
-
-inherit cros-workon platform
-
-DESCRIPTION="Shill Command Line Interface"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/shill/cli"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-	>=chromeos-base/shill-0.0.1-r2205
-"
-
-DEPEND="
-	chromeos-base/shill-client:=
-	chromeos-base/system_api:=
-"
-
-src_install() {
-	dobin "${OUT}"/shillcli
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/shillcli_test"
-}
diff --git a/chromeos-base/shill-client/shill-client-0.0.1-r2588.ebuild b/chromeos-base/shill-client/shill-client-0.0.1-r2588.ebuild
deleted file mode 100644
index 59b3a9f..0000000
--- a/chromeos-base/shill-client/shill-client-0.0.1-r2588.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="d27dfb81bc87df4db16849f5da1b96f1cf5cd10b"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "c4ab24982f8916bc61640a3912b5c1d0337b758f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="common-mk shill .gn"
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="shill/client"
-
-inherit cros-workon platform
-
-DESCRIPTION="Shill DBus client library for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/shill/"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="cros_host"
-
-RDEPEND="
-	!<chromeos-base/shill-0.0.2
-"
-
-BDEPEND="
-	chromeos-base/chromeos-dbus-bindings:=
-"
-
-src_install() {
-	# Install DBus client library.
-	platform_install_dbus_client_lib "shill"
-}
diff --git a/chromeos-base/shill-client/shill-client-0.0.1-r2726.ebuild b/chromeos-base/shill-client/shill-client-0.0.1-r2726.ebuild
new file mode 100644
index 0000000..5599567
--- /dev/null
+++ b/chromeos-base/shill-client/shill-client-0.0.1-r2726.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="c7de58509c6837dc0241aa92c6a32dbf4cc55161"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "12321d79aa58211a0800e45f0e5c7204789cfffb" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="common-mk shill .gn"
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="shill/client"
+
+inherit cros-workon platform
+
+DESCRIPTION="Shill DBus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/shill/"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="cros_host"
+
+RDEPEND="
+	!<chromeos-base/shill-0.0.2
+"
+
+BDEPEND="
+	chromeos-base/chromeos-dbus-bindings:=
+"
+
+src_install() {
+	# Install DBus client library.
+	platform_install_dbus_client_lib "shill"
+}
diff --git a/chromeos-base/shill-dbus-client/shill-dbus-client-0.0.1-r359.ebuild b/chromeos-base/shill-dbus-client/shill-dbus-client-0.0.1-r359.ebuild
deleted file mode 100644
index c54a52b..0000000
--- a/chromeos-base/shill-dbus-client/shill-dbus-client-0.0.1-r359.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="d27dfb81bc87df4db16849f5da1b96f1cf5cd10b"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "c4ab24982f8916bc61640a3912b5c1d0337b758f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="common-mk shill .gn"
-
-PLATFORM_SUBDIR="shill/dbus/client"
-
-inherit cros-workon platform
-
-DESCRIPTION="Shill DBus client interface library"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/shill/dbus/client"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="chromeos-base/shill-client:="
-RDEPEND=""
-
-src_install() {
-	# Install libshill-dbus-client library.
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	local v="$(libchrome_ver)"
-	./preinstall.sh "${OUT}" "${v}"
-	dolib.so "${OUT}/lib/libshill-dbus-client.so"
-	doins "${OUT}/lib/libshill-dbus-client.pc"
-
-	# Install header files from libshill-dbus-client.
-	insinto /usr/include/shill/dbus/client
-	doins ./*.h
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/libshill-dbus-client_test"
-}
diff --git a/chromeos-base/shill-dbus-client/shill-dbus-client-0.0.1-r499.ebuild b/chromeos-base/shill-dbus-client/shill-dbus-client-0.0.1-r499.ebuild
new file mode 100644
index 0000000..0c590ab
--- /dev/null
+++ b/chromeos-base/shill-dbus-client/shill-dbus-client-0.0.1-r499.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="c7de58509c6837dc0241aa92c6a32dbf4cc55161"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "12321d79aa58211a0800e45f0e5c7204789cfffb" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="common-mk shill .gn"
+
+PLATFORM_SUBDIR="shill/dbus/client"
+
+inherit cros-workon platform
+
+DESCRIPTION="Shill DBus client interface library"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/shill/dbus/client"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND="
+	chromeos-base/shill-client:=
+	chromeos-base/shill-net
+"
+RDEPEND="${DEPEND}"
+
+src_install() {
+	# Install libshill-dbus-client library.
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	local v="$(libchrome_ver)"
+	./preinstall.sh "${OUT}" "${v}"
+	dolib.so "${OUT}/lib/libshill-dbus-client.so"
+	doins "${OUT}/lib/libshill-dbus-client.pc"
+
+	# Install header files from libshill-dbus-client.
+	insinto /usr/include/shill/dbus/client
+	doins ./*.h
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/libshill-dbus-client_test"
+}
diff --git a/chromeos-base/shill-dbus-client/shill-dbus-client-9999.ebuild b/chromeos-base/shill-dbus-client/shill-dbus-client-9999.ebuild
index 8f5e158..7f99dc8 100644
--- a/chromeos-base/shill-dbus-client/shill-dbus-client-9999.ebuild
+++ b/chromeos-base/shill-dbus-client/shill-dbus-client-9999.ebuild
@@ -21,8 +21,11 @@
 KEYWORDS="~*"
 IUSE=""
 
-DEPEND="chromeos-base/shill-client:="
-RDEPEND=""
+DEPEND="
+	chromeos-base/shill-client:=
+	chromeos-base/shill-net
+"
+RDEPEND="${DEPEND}"
 
 src_install() {
 	# Install libshill-dbus-client library.
diff --git a/chromeos-base/shill-net/shill-net-0.0.1-r435.ebuild b/chromeos-base/shill-net/shill-net-0.0.1-r435.ebuild
deleted file mode 100644
index 1496c85..0000000
--- a/chromeos-base/shill-net/shill-net-0.0.1-r435.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="d27dfb81bc87df4db16849f5da1b96f1cf5cd10b"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "c4ab24982f8916bc61640a3912b5c1d0337b758f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="common-mk shill .gn"
-
-PLATFORM_SUBDIR="shill/net"
-
-inherit cros-workon platform
-
-DESCRIPTION="Shill networking component interface library"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/shill/net"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="fuzzer +wifi"
-
-DEPEND=""
-RDEPEND="
-	!<chromeos-base/shill-0.0.5
-"
-
-src_install() {
-	# Install libshill-net library.
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	local v="$(libchrome_ver)"
-	./preinstall.sh "${OUT}" "${v}"
-	dolib.so "${OUT}/lib/libshill-net.so"
-	doins "${OUT}/lib/libshill-net.pc"
-
-	# Install header files from libshill-net.
-	insinto /usr/include/shill/net
-	doins ./*.h
-
-	local fuzzer
-	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/../OWNERS "${fuzzer}"
-	done
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/shill_net_test"
-}
diff --git a/chromeos-base/shill-net/shill-net-0.0.1-r574.ebuild b/chromeos-base/shill-net/shill-net-0.0.1-r574.ebuild
new file mode 100644
index 0000000..47062a6
--- /dev/null
+++ b/chromeos-base/shill-net/shill-net-0.0.1-r574.ebuild
@@ -0,0 +1,57 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="c7de58509c6837dc0241aa92c6a32dbf4cc55161"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "12321d79aa58211a0800e45f0e5c7204789cfffb" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="common-mk shill .gn"
+
+PLATFORM_SUBDIR="shill/net"
+
+inherit cros-workon platform
+
+DESCRIPTION="Shill networking component interface library"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/shill/net"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="fuzzer +wifi"
+
+DEPEND=""
+RDEPEND="
+	!<chromeos-base/shill-0.0.5
+"
+
+src_install() {
+	# Install libshill-net library.
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	local v="$(libchrome_ver)"
+	./preinstall.sh "${OUT}" "${v}"
+	dolib.so "${OUT}/lib/libshill-net.so"
+	doins "${OUT}/lib/libshill-net.pc"
+
+	# Install header files from libshill-net.
+	insinto /usr/include/shill/net
+	doins ./*.h
+
+	# These each have different listed component ids.
+	local arp_client_fuzzer_component_id="167325"
+	platform_fuzzer_install "${S}"/../OWNERS "${OUT}/arp_client_fuzzer" \
+		--comp "${arp_client_fuzzer_component_id}"
+	local nl80211_message_fuzzer_component_id="893827"
+	platform_fuzzer_install "${S}"/../OWNERS "${OUT}/nl80211_message_fuzzer" \
+		--comp "${nl80211_message_fuzzer_component_id}"
+	local rtnl_handler_fuzzer_component_id="156085"
+	platform_fuzzer_install "${S}"/../OWNERS "${OUT}/rtnl_handler_fuzzer" \
+		--comp "${rtnl_handler_fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/shill_net_test"
+}
diff --git a/chromeos-base/shill-net/shill-net-9999.ebuild b/chromeos-base/shill-net/shill-net-9999.ebuild
index 9071e8b..d5f1a2c 100644
--- a/chromeos-base/shill-net/shill-net-9999.ebuild
+++ b/chromeos-base/shill-net/shill-net-9999.ebuild
@@ -38,10 +38,16 @@
 	insinto /usr/include/shill/net
 	doins ./*.h
 
-	local fuzzer
-	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/../OWNERS "${fuzzer}"
-	done
+	# These each have different listed component ids.
+	local arp_client_fuzzer_component_id="167325"
+	platform_fuzzer_install "${S}"/../OWNERS "${OUT}/arp_client_fuzzer" \
+		--comp "${arp_client_fuzzer_component_id}"
+	local nl80211_message_fuzzer_component_id="893827"
+	platform_fuzzer_install "${S}"/../OWNERS "${OUT}/nl80211_message_fuzzer" \
+		--comp "${nl80211_message_fuzzer_component_id}"
+	local rtnl_handler_fuzzer_component_id="156085"
+	platform_fuzzer_install "${S}"/../OWNERS "${OUT}/rtnl_handler_fuzzer" \
+		--comp "${rtnl_handler_fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/shill/OWNERS b/chromeos-base/shill/OWNERS
new file mode 100644
index 0000000..18ad1e5
--- /dev/null
+++ b/chromeos-base/shill/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/shill/OWNERS
diff --git a/chromeos-base/shill/shill-0.0.5-r2702.ebuild b/chromeos-base/shill/shill-0.0.5-r2702.ebuild
deleted file mode 100644
index aac98f6..0000000
--- a/chromeos-base/shill/shill-0.0.5-r2702.ebuild
+++ /dev/null
@@ -1,207 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="d27dfb81bc87df4db16849f5da1b96f1cf5cd10b"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "eae0546f4ee5132d4544af4770755eb05f60cba6" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "c4ab24982f8916bc61640a3912b5c1d0337b758f" "767a114667a7ed090f12adcaca93e7d4ef6f034f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk libpasswordprovider metrics shill vpn-manager .gn"
-
-PLATFORM_SUBDIR="shill"
-
-inherit cros-workon platform systemd tmpfiles udev user
-
-DESCRIPTION="Shill Connection Manager for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/shill/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cellular dhcpv6 fuzzer pppoe systemd +tpm +vpn +wake_on_wifi +wifi +wired_8021x +wpa3_sae +wireguard"
-
-# Sorted by the package we depend on. (Not by use flag!)
-COMMON_DEPEND="
-	chromeos-base/bootstat:=
-	tpm? ( chromeos-base/chaps:= )
-	chromeos-base/minijail:=
-	chromeos-base/libpasswordprovider:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/nsswitch:=
-	chromeos-base/patchpanel-client:=
-	chromeos-base/shill-net:=
-	dev-libs/re2:=
-	cellular? ( net-dialup/ppp:= )
-	pppoe? ( net-dialup/ppp:= )
-	vpn? ( net-dialup/ppp:= )
-	net-dns/c-ares:=
-	net-libs/libtirpc:=
-	net-firewall/conntrack-tools:=
-	net-firewall/iptables:=
-	wifi? ( virtual/wpa_supplicant )
-	wired_8021x? ( virtual/wpa_supplicant )
-	sys-apps/rootdev:=
-	cellular? ( net-misc/modemmanager-next:= )
-"
-
-RDEPEND="${COMMON_DEPEND}
-	net-misc/dhcpcd
-	dhcpv6? ( net-misc/dhcpcd[ipv6] )
-	vpn? ( net-vpn/openvpn )
-	wireguard? ( net-vpn/wireguard-tools )
-"
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/shill-client:=
-	chromeos-base/power_manager-client:=
-	chromeos-base/system_api:=[fuzzer?]
-	vpn? ( chromeos-base/vpn-manager:= )
-"
-PDEPEND="chromeos-base/patchpanel"
-
-pkg_setup() {
-	enewgroup "shill"
-	enewuser "shill"
-	cros-workon_pkg_setup
-}
-
-pkg_preinst() {
-	enewgroup "shill-crypto"
-	enewuser "shill-crypto"
-	enewgroup "shill-scripts"
-	enewuser "shill-scripts"
-	enewgroup "nfqueue"
-	enewuser "nfqueue"
-	enewgroup "vpn"
-	enewuser "vpn"
-}
-
-get_dependent_services() {
-	local dependent_services=()
-	if use wifi || use wired_8021x; then
-		dependent_services+=(wpasupplicant)
-	fi
-	if use systemd; then
-		echo "network-services.service ${dependent_services[*]/%/.service }"
-	else
-		echo "started network-services " \
-			"${dependent_services[*]/#/and started }"
-	fi
-}
-
-src_configure() {
-	cros_optimize_package_for_speed
-	platform_src_configure
-}
-
-src_install() {
-	platform_src_install
-
-	dobin bin/ff_debug
-
-	if use cellular; then
-		dobin bin/set_apn
-		dobin bin/set_cellular_ppp
-	fi
-
-	dosbin bin/set_wifi_regulatory
-	dobin bin/set_arpgw
-	dobin bin/set_wake_on_lan
-	dobin bin/shill_login_user
-	dobin bin/shill_logout_user
-	if use wifi || use wired_8021x; then
-		dobin bin/wpa_debug
-	fi
-	dobin "${OUT}"/shill
-
-	local shims_dir=/usr/$(get_libdir)/shill/shims
-	exeinto "${shims_dir}"
-
-	use vpn && doexe "${OUT}"/openvpn-script
-	if use cellular || use pppoe || use vpn; then
-		newexe "${OUT}"/lib/libshill-pppd-plugin.so shill-pppd-plugin.so
-	fi
-
-	use cellular && doexe "${OUT}"/set-apn-helper
-
-	if use wifi || use wired_8021x; then
-		sed \
-			"s,@libdir@,/usr/$(get_libdir)", \
-			shims/wpa_supplicant.conf.in \
-			> "${D}/${shims_dir}/wpa_supplicant.conf"
-	fi
-
-	dosym /run/shill/resolv.conf /etc/resolv.conf
-	insinto /etc/dbus-1/system.d
-	doins shims/org.chromium.flimflam.conf
-
-	if use cellular; then
-		insinto /usr/share/shill
-		doins "${OUT}"/serviceproviders.pbf
-		insinto /usr/share/protofiles
-		doins "${S}/mobile_operator_db/mobile_operator_db.proto"
-	fi
-
-	# Install introspection XML
-	insinto /usr/share/dbus-1/interfaces
-	doins dbus_bindings/org.chromium.flimflam.*.dbus-xml
-	doins dbus_bindings/dbus-service-config.json
-
-	# Replace template parameters inside init scripts
-	local shill_name="shill.$(usex systemd service conf)"
-	sed \
-		"s,@expected_started_services@,$(get_dependent_services)," \
-		"init/${shill_name}.in" \
-		> "${T}/${shill_name}"
-
-	# Install init scripts
-	if use systemd; then
-		systemd_dounit init/shill-start-user-session.service
-		systemd_dounit init/shill-stop-user-session.service
-
-		local dependent_services=$(get_dependent_services)
-		systemd_dounit "${T}/shill.service"
-		for dependent_service in ${dependent_services}; do
-			systemd_enable_service "${dependent_service}" shill.service
-		done
-		systemd_enable_service shill.service network.target
-
-		systemd_dounit init/network-services.service
-		systemd_enable_service boot-services.target network-services.service
-	else
-		insinto /etc/init
-
-		doins "${T}"/*.conf
-		doins \
-			init/network-services.conf \
-			init/shill-event.conf \
-			init/shill-start-user-session.conf \
-			init/shill-stop-user-session.conf \
-			init/shill_respawn.conf
-	fi
-	exeinto /usr/share/cros/init
-	doexe init/*.sh
-	dotmpfiles tmpfiles.d/*.conf
-
-	insinto /usr/share/cros/startup/process_management_policies
-	doins setuid_restrictions/shill_allowed.txt
-
-	udev_dorules udev/*.rules
-
-	# Shill keeps profiles inside the user's cryptohome.
-	local daemon_store="/etc/daemon-store/shill"
-	dodir "${daemon_store}"
-	fperms 0700 "${daemon_store}"
-	fowners shill:shill "${daemon_store}"
-
-	local fuzzer
-	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}"
-	done
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/shill_unittest"
-}
diff --git a/chromeos-base/shill/shill-0.0.5-r2859.ebuild b/chromeos-base/shill/shill-0.0.5-r2859.ebuild
new file mode 100644
index 0000000..cecfc69
--- /dev/null
+++ b/chromeos-base/shill/shill-0.0.5-r2859.ebuild
@@ -0,0 +1,225 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="c7de58509c6837dc0241aa92c6a32dbf4cc55161"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "113dbae63eb106c56996900e98cd65103bf297dc" "56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9" "e08a2eb734e33827dffeecf57eca046cd1091373" "12321d79aa58211a0800e45f0e5c7204789cfffb" "39929280520bd57dd9967f54e074e37ce6c8c7bf" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk chaps libpasswordprovider metrics shill vpn-manager .gn"
+
+PLATFORM_SUBDIR="shill"
+
+inherit cros-workon platform systemd tmpfiles udev user
+
+DESCRIPTION="Shill Connection Manager for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/shill/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cellular dhcpv6 fuzzer pppoe sae_h2e supplicant-next systemd +tpm +vpn +wake_on_wifi +wifi +wired_8021x +wpa3_sae +wireguard"
+
+# Sorted by the package we depend on. (Not by use flag!)
+COMMON_DEPEND="
+	chromeos-base/bootstat:=
+	chromeos-base/chaps:=
+	chromeos-base/minijail:=
+	chromeos-base/libpasswordprovider:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/nsswitch:=
+	chromeos-base/patchpanel-client:=
+	chromeos-base/shill-net:=
+	dev-libs/re2:=
+	cellular? ( net-dialup/ppp:= )
+	pppoe? ( net-dialup/ppp:= )
+	vpn? ( net-dialup/ppp:= )
+	net-dns/c-ares:=
+	net-libs/libtirpc:=
+	net-firewall/conntrack-tools:=
+	net-firewall/iptables:=
+	wifi? ( virtual/wpa_supplicant )
+	wired_8021x? ( virtual/wpa_supplicant )
+	sys-apps/rootdev:=
+	cellular? ( net-misc/modemmanager-next:= )
+"
+
+RDEPEND="${COMMON_DEPEND}
+	net-misc/dhcpcd
+	dhcpv6? ( net-misc/dhcpcd[ipv6] )
+	vpn? ( net-vpn/openvpn )
+	wireguard? ( net-vpn/wireguard-tools )
+"
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/shill-client:=
+	chromeos-base/power_manager-client:=
+	chromeos-base/system_api:=[fuzzer?]
+	vpn? ( chromeos-base/vpn-manager:= )
+"
+PDEPEND="chromeos-base/patchpanel"
+
+# TODO(b/193926134): remove the dependency on supplicant-next once all boards
+# have been upgraded to use a recent wpa_supplicant (newer than July 2021) that
+# supports H2E.
+REQUIRED_USE="sae_h2e? ( supplicant-next )"
+
+pkg_setup() {
+	enewgroup "shill"
+	enewuser "shill"
+	cros-workon_pkg_setup
+}
+
+pkg_preinst() {
+	enewgroup "shill-crypto"
+	enewuser "shill-crypto"
+	enewgroup "shill-scripts"
+	enewuser "shill-scripts"
+	enewgroup "nfqueue"
+	enewuser "nfqueue"
+	enewgroup "vpn"
+	enewuser "vpn"
+}
+
+get_dependent_services() {
+	local dependent_services=()
+	if use wifi || use wired_8021x; then
+		dependent_services+=(wpasupplicant)
+	fi
+	if use systemd; then
+		echo "network-services.service ${dependent_services[*]/%/.service }"
+	else
+		echo "started network-services " \
+			"${dependent_services[*]/#/and started }"
+	fi
+}
+
+src_configure() {
+	cros_optimize_package_for_speed
+	platform_src_configure
+}
+
+src_install() {
+	platform_src_install
+
+	dobin bin/ff_debug
+
+	if use cellular; then
+		dobin bin/set_apn
+		dobin bin/set_cellular_ppp
+	fi
+
+	dosbin bin/set_wifi_regulatory
+	dobin bin/set_arpgw
+	dobin bin/set_wake_on_lan
+	dobin bin/shill_login_user
+	dobin bin/shill_logout_user
+	if use wifi || use wired_8021x; then
+		dobin bin/wpa_debug
+	fi
+	dobin "${OUT}"/shill
+
+	local shims_dir=/usr/$(get_libdir)/shill/shims
+	exeinto "${shims_dir}"
+
+	use vpn && doexe "${OUT}"/openvpn-script
+	if use cellular || use pppoe || use vpn; then
+		newexe "${OUT}"/lib/libshill-pppd-plugin.so shill-pppd-plugin.so
+	fi
+
+	use cellular && doexe "${OUT}"/set-apn-helper
+
+	if use wifi || use wired_8021x; then
+		sed \
+			"s,@libdir@,/usr/$(get_libdir)", \
+			shims/wpa_supplicant.conf.in \
+			> "${D}/${shims_dir}/wpa_supplicant.conf"
+	fi
+
+	if use sae_h2e; then
+		# If supplicant's version is recent enough (July 2021 rebase
+		# or newer), change the default value of sae_pwe to support both
+		# hunting-and-pecking and hash-to-element, which is required
+		# for newer standards.
+		echo "sae_pwe=2" >> "${D}/${shims_dir}/wpa_supplicant.conf"
+	fi
+
+	dosym /run/shill/resolv.conf /etc/resolv.conf
+	insinto /etc/dbus-1/system.d
+	doins shims/org.chromium.flimflam.conf
+
+	if use cellular; then
+		insinto /usr/share/shill
+		doins "${OUT}"/serviceproviders.pbf
+		insinto /usr/share/protofiles
+		doins "${S}/mobile_operator_db/mobile_operator_db.proto"
+	fi
+
+	# Install introspection XML
+	insinto /usr/share/dbus-1/interfaces
+	doins dbus_bindings/org.chromium.flimflam.*.dbus-xml
+	doins dbus_bindings/dbus-service-config.json
+
+	# Replace template parameters inside init scripts
+	local shill_name="shill.$(usex systemd service conf)"
+	sed \
+		"s,@expected_started_services@,$(get_dependent_services)," \
+		"init/${shill_name}.in" \
+		> "${T}/${shill_name}"
+
+	# Install init scripts
+	if use systemd; then
+		systemd_dounit init/shill-start-user-session.service
+		systemd_dounit init/shill-stop-user-session.service
+
+		local dependent_services=$(get_dependent_services)
+		systemd_dounit "${T}/shill.service"
+		for dependent_service in ${dependent_services}; do
+			systemd_enable_service "${dependent_service}" shill.service
+		done
+		systemd_enable_service shill.service network.target
+
+		systemd_dounit init/network-services.service
+		systemd_enable_service boot-services.target network-services.service
+	else
+		insinto /etc/init
+
+		doins "${T}"/*.conf
+		doins \
+			init/network-services.conf \
+			init/shill-event.conf \
+			init/shill-start-user-session.conf \
+			init/shill-stop-user-session.conf \
+			init/shill_respawn.conf
+	fi
+	exeinto /usr/share/cros/init
+	doexe init/*.sh
+	dotmpfiles tmpfiles.d/*.conf
+
+	insinto /usr/share/cros/startup/process_management_policies
+	doins setuid_restrictions/shill_uid_allowlist.txt
+
+	udev_dorules udev/*.rules
+
+	# Shill keeps profiles inside the user's cryptohome.
+	local daemon_store="/etc/daemon-store/shill"
+	dodir "${daemon_store}"
+	fperms 0700 "${daemon_store}"
+	fowners shill:shill "${daemon_store}"
+
+	local cellular_fuzzer_component_id="167157"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}/cellular_pco_fuzzer" \
+		--comp "${cellular_fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}/verizon_subscription_state_fuzzer" \
+		--comp "${cellular_fuzzer_component_id}"
+
+	local wifi_ies_fuzzer_component_id="893827"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}/wifi_ies_fuzzer" \
+		--comp "${wifi_ies_fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/shill_unittest"
+}
diff --git a/chromeos-base/shill/shill-9999.ebuild b/chromeos-base/shill/shill-9999.ebuild
index 6a5a60e..f34d57a 100644
--- a/chromeos-base/shill/shill-9999.ebuild
+++ b/chromeos-base/shill/shill-9999.ebuild
@@ -8,7 +8,7 @@
 CROS_WORKON_LOCALNAME="platform2"
 CROS_WORKON_PROJECT="chromiumos/platform2"
 # TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk libpasswordprovider metrics shill vpn-manager .gn"
+CROS_WORKON_SUBTREE="common-mk chaps libpasswordprovider metrics shill vpn-manager .gn"
 
 PLATFORM_SUBDIR="shill"
 
@@ -19,12 +19,12 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="cellular dhcpv6 fuzzer pppoe systemd +tpm +vpn +wake_on_wifi +wifi +wired_8021x +wpa3_sae +wireguard"
+IUSE="cellular dhcpv6 fuzzer pppoe sae_h2e supplicant-next systemd +tpm +vpn +wake_on_wifi +wifi +wired_8021x +wpa3_sae +wireguard"
 
 # Sorted by the package we depend on. (Not by use flag!)
 COMMON_DEPEND="
 	chromeos-base/bootstat:=
-	tpm? ( chromeos-base/chaps:= )
+	chromeos-base/chaps:=
 	chromeos-base/minijail:=
 	chromeos-base/libpasswordprovider:=
 	>=chromeos-base/metrics-0.0.1-r3152:=
@@ -59,6 +59,11 @@
 "
 PDEPEND="chromeos-base/patchpanel"
 
+# TODO(b/193926134): remove the dependency on supplicant-next once all boards
+# have been upgraded to use a recent wpa_supplicant (newer than July 2021) that
+# supports H2E.
+REQUIRED_USE="sae_h2e? ( supplicant-next )"
+
 pkg_setup() {
 	enewgroup "shill"
 	enewuser "shill"
@@ -131,6 +136,14 @@
 			> "${D}/${shims_dir}/wpa_supplicant.conf"
 	fi
 
+	if use sae_h2e; then
+		# If supplicant's version is recent enough (July 2021 rebase
+		# or newer), change the default value of sae_pwe to support both
+		# hunting-and-pecking and hash-to-element, which is required
+		# for newer standards.
+		echo "sae_pwe=2" >> "${D}/${shims_dir}/wpa_supplicant.conf"
+	fi
+
 	dosym /run/shill/resolv.conf /etc/resolv.conf
 	insinto /etc/dbus-1/system.d
 	doins shims/org.chromium.flimflam.conf
@@ -184,7 +197,7 @@
 	dotmpfiles tmpfiles.d/*.conf
 
 	insinto /usr/share/cros/startup/process_management_policies
-	doins setuid_restrictions/shill_allowed.txt
+	doins setuid_restrictions/shill_uid_allowlist.txt
 
 	udev_dorules udev/*.rules
 
@@ -194,10 +207,15 @@
 	fperms 0700 "${daemon_store}"
 	fowners shill:shill "${daemon_store}"
 
-	local fuzzer
-	for fuzzer in "${OUT}"/*_fuzzer; do
-		platform_fuzzer_install "${S}"/OWNERS "${fuzzer}"
-	done
+	local cellular_fuzzer_component_id="167157"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}/cellular_pco_fuzzer" \
+		--comp "${cellular_fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}/verizon_subscription_state_fuzzer" \
+		--comp "${cellular_fuzzer_component_id}"
+
+	local wifi_ies_fuzzer_component_id="893827"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}/wifi_ies_fuzzer" \
+		--comp "${wifi_ies_fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/sirenia-tools/OWNERS b/chromeos-base/sirenia-tools/OWNERS
new file mode 100644
index 0000000..f570a32
--- /dev/null
+++ b/chromeos-base/sirenia-tools/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/sirenia/OWNERS
diff --git a/chromeos-base/sirenia-tools/sirenia-tools-0.0.1-r17.ebuild b/chromeos-base/sirenia-tools/sirenia-tools-0.0.1-r17.ebuild
new file mode 100644
index 0000000..5c3a323
--- /dev/null
+++ b/chromeos-base/sirenia-tools/sirenia-tools-0.0.1-r17.ebuild
@@ -0,0 +1,59 @@
+# 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="8ce35d16ad07dfeebc352815a82b5462f41090f7"
+CROS_WORKON_TREE="4a9ac56a4abc7348fb8ebfa0d152a1c78ee24749"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE="sirenia"
+CROS_RUST_SUBDIR="${CROS_WORKON_SUBTREE}"
+
+inherit cros-workon cros-rust user
+
+DESCRIPTION="Build tools for the ManaTEE runtime environment."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+DEPEND="
+	chromeos-base/libsirenia:=
+	dev-libs/openssl:0=
+	=dev-rust/anyhow-1*:=
+	=dev-rust/base64-0.13*:=
+	dev-rust/chromeos-dbus-bindings:=
+	=dev-rust/dbus-0.8*:=
+	>=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2.0
+	=dev-rust/getopts-0.2*:=
+	dev-rust/libchromeos:=
+	=dev-rust/log-0.4*:=
+	=dev-rust/openssl-0.10*:=
+	>=dev-rust/serde-1.0.114:= <dev-rust/serde-2
+	=dev-rust/serde_derive-1*:=
+	>=dev-rust/serde_json-1.0.64:= <dev-rust/serde_json-2.0.0
+	=dev-rust/stderrlog-0.5*:=
+	dev-rust/sys_util:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}
+	sys-apps/dbus
+"
+
+src_compile() {
+	cros-rust_src_compile --no-default-features --features sdk
+}
+
+src_test() {
+	cros-rust_src_test --no-default-features --features sdk
+}
+
+src_install() {
+	local build_dir="$(cros-rust_get_build_dir)"
+	dobin "${build_dir}/tee_app_info_lint"
+}
diff --git a/chromeos-base/sirenia-tools/sirenia-tools-9999.ebuild b/chromeos-base/sirenia-tools/sirenia-tools-9999.ebuild
new file mode 100644
index 0000000..d5c23f97
--- /dev/null
+++ b/chromeos-base/sirenia-tools/sirenia-tools-9999.ebuild
@@ -0,0 +1,57 @@
+# 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.
+
+EAPI=7
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE="sirenia"
+CROS_RUST_SUBDIR="${CROS_WORKON_SUBTREE}"
+
+inherit cros-workon cros-rust user
+
+DESCRIPTION="Build tools for the ManaTEE runtime environment."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+
+DEPEND="
+	chromeos-base/libsirenia:=
+	dev-libs/openssl:0=
+	=dev-rust/anyhow-1*:=
+	=dev-rust/base64-0.13*:=
+	dev-rust/chromeos-dbus-bindings:=
+	=dev-rust/dbus-0.8*:=
+	>=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2.0
+	=dev-rust/getopts-0.2*:=
+	dev-rust/libchromeos:=
+	=dev-rust/log-0.4*:=
+	=dev-rust/openssl-0.10*:=
+	>=dev-rust/serde-1.0.114:= <dev-rust/serde-2
+	=dev-rust/serde_derive-1*:=
+	>=dev-rust/serde_json-1.0.64:= <dev-rust/serde_json-2.0.0
+	=dev-rust/stderrlog-0.5*:=
+	dev-rust/sys_util:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}
+	sys-apps/dbus
+"
+
+src_compile() {
+	cros-rust_src_compile --no-default-features --features sdk
+}
+
+src_test() {
+	cros-rust_src_test --no-default-features --features sdk
+}
+
+src_install() {
+	local build_dir="$(cros-rust_get_build_dir)"
+	dobin "${build_dir}/tee_app_info_lint"
+}
diff --git a/chromeos-base/sirenia/sirenia-0.24.52-r101.ebuild b/chromeos-base/sirenia/sirenia-0.24.52-r101.ebuild
new file mode 100644
index 0000000..4c90200
--- /dev/null
+++ b/chromeos-base/sirenia/sirenia-0.24.52-r101.ebuild
@@ -0,0 +1,81 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="8ce35d16ad07dfeebc352815a82b5462f41090f7"
+CROS_WORKON_TREE="4a9ac56a4abc7348fb8ebfa0d152a1c78ee24749"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE="sirenia"
+
+inherit cros-workon cros-rust user
+
+DESCRIPTION="The runtime environment and middleware for ManaTEE."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cros_host manatee"
+
+DEPEND="
+	chromeos-base/libsirenia:=
+	dev-libs/openssl:0=
+	=dev-rust/anyhow-1*:=
+	=dev-rust/base64-0.13*:=
+	dev-rust/chromeos-dbus-bindings:=
+	=dev-rust/dbus-0.9*:=
+	=dev-rust/dbus-crossroads-0.4*:=
+	=dev-rust/flexbuffers-2*:=
+	=dev-rust/getopts-0.2*:=
+	>=dev-rust/libc-0.2.94 <dev-rust/libc-0.3.0_alpha:=
+	dev-rust/libchromeos:=
+	=dev-rust/log-0.4*:=
+	=dev-rust/openssl-0.10*:=
+	>=dev-rust/serde-1.0.114 <dev-rust/serde-2:=
+	=dev-rust/serde_derive-1*:=
+	>=dev-rust/serde_json-1.0.64 <dev-rust/serde_json-2.0.0_alpha:=
+	=dev-rust/stderrlog-0.5*:=
+	dev-rust/sys_util:=
+	>=dev-rust/thiserror-1.0.20 <dev-rust/thiserror-2.0.0_alpha:=
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}
+	chromeos-base/cronista
+	chromeos-base/manatee-runtime
+	dev-rust/manatee-client
+	sys-apps/dbus
+"
+BDEPEND="chromeos-base/sirenia-tools"
+
+src_install() {
+	local build_dir="$(cros-rust_get_build_dir)"
+	dobin "${build_dir}/dugong"
+
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.ManaTEE.conf
+
+	# Needed for initramfs, but not for the root-fs.
+	if use cros_host ; then
+		# /build is not allowed when installing to the host.
+		exeinto "/bin"
+	else
+		exeinto "/build/initramfs"
+	fi
+
+	if use manatee ;  then
+		insinto /etc/init
+		doins upstart/dugong.conf
+		doexe "${build_dir}/trichechus"
+	else
+		dobin "${build_dir}/trichechus"
+	fi
+}
+
+pkg_setup() {
+	enewuser dugong
+	enewgroup dugong
+	cros-rust_pkg_setup
+}
diff --git a/chromeos-base/sirenia/sirenia-0.24.52-r82.ebuild b/chromeos-base/sirenia/sirenia-0.24.52-r82.ebuild
deleted file mode 100644
index 892c472..0000000
--- a/chromeos-base/sirenia/sirenia-0.24.52-r82.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f95785c10c5ac0eff2bdecb769b353662a4e0dc3"
-CROS_WORKON_TREE="727b5a2cdf7d07c050cc575ee636711da70333a2"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE="sirenia"
-
-inherit cros-workon cros-rust user
-
-DESCRIPTION="The runtime environment and middleware for ManaTEE."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros_host manatee"
-
-DEPEND="
-	chromeos-base/libsirenia:=
-	dev-libs/openssl:0=
-	=dev-rust/base64-0.13*:=
-	dev-rust/chromeos-dbus-bindings:=
-	=dev-rust/dbus-0.8*:=
-	>=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2.0
-	=dev-rust/getopts-0.2*:=
-	dev-rust/libchromeos:=
-	=dev-rust/openssl-0.10*:=
-	>=dev-rust/serde-1.0.114:= <dev-rust/serde-2
-	=dev-rust/serde_derive-1*:=
-	dev-rust/sys_util:=
-	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}
-	chromeos-base/cronista
-	chromeos-base/manatee-runtime
-	dev-rust/manatee-client
-	sys-apps/dbus
-"
-
-src_install() {
-	local build_dir="$(cros-rust_get_build_dir)"
-	dobin "${build_dir}/dugong"
-
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.ManaTEE.conf
-
-	# Needed for initramfs, but not for the root-fs.
-	if use cros_host ; then
-		# /build is not allowed when installing to the host.
-		exeinto "/bin"
-	else
-		exeinto "/build/initramfs"
-	fi
-
-	if use manatee ;  then
-		insinto /etc/init
-		doins upstart/dugong.conf
-		doexe "${build_dir}/trichechus"
-	else
-		dobin "${build_dir}/trichechus"
-	fi
-}
-
-pkg_setup() {
-	enewuser dugong
-	enewgroup dugong
-	cros-rust_pkg_setup
-}
diff --git a/chromeos-base/sirenia/sirenia-9999.ebuild b/chromeos-base/sirenia/sirenia-9999.ebuild
index 56d9a55..f2f1b8f 100644
--- a/chromeos-base/sirenia/sirenia-9999.ebuild
+++ b/chromeos-base/sirenia/sirenia-9999.ebuild
@@ -20,17 +20,23 @@
 DEPEND="
 	chromeos-base/libsirenia:=
 	dev-libs/openssl:0=
+	=dev-rust/anyhow-1*:=
 	=dev-rust/base64-0.13*:=
 	dev-rust/chromeos-dbus-bindings:=
-	=dev-rust/dbus-0.8*:=
-	>=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2.0
+	=dev-rust/dbus-0.9*:=
+	=dev-rust/dbus-crossroads-0.4*:=
+	=dev-rust/flexbuffers-2*:=
 	=dev-rust/getopts-0.2*:=
+	>=dev-rust/libc-0.2.94 <dev-rust/libc-0.3.0_alpha:=
 	dev-rust/libchromeos:=
+	=dev-rust/log-0.4*:=
 	=dev-rust/openssl-0.10*:=
-	>=dev-rust/serde-1.0.114:= <dev-rust/serde-2
+	>=dev-rust/serde-1.0.114 <dev-rust/serde-2:=
 	=dev-rust/serde_derive-1*:=
+	>=dev-rust/serde_json-1.0.64 <dev-rust/serde_json-2.0.0_alpha:=
+	=dev-rust/stderrlog-0.5*:=
 	dev-rust/sys_util:=
-	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+	>=dev-rust/thiserror-1.0.20 <dev-rust/thiserror-2.0.0_alpha:=
 "
 # (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
 # installing binpkgs since the full source tree is required to use the crate.
@@ -40,6 +46,7 @@
 	dev-rust/manatee-client
 	sys-apps/dbus
 "
+BDEPEND="chromeos-base/sirenia-tools"
 
 src_install() {
 	local build_dir="$(cros-rust_get_build_dir)"
diff --git a/chromeos-base/smbfs/smbfs-0.0.1-r203.ebuild b/chromeos-base/smbfs/smbfs-0.0.1-r203.ebuild
deleted file mode 100644
index 55e4388..0000000
--- a/chromeos-base/smbfs/smbfs-0.0.1-r203.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "eae0546f4ee5132d4544af4770755eb05f60cba6" "75c3e472455b6f19ecd3d99e182d59e07d4e84da" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk libpasswordprovider smbfs .gn"
-
-PLATFORM_SUBDIR="smbfs"
-
-inherit cros-workon platform user
-
-DESCRIPTION="FUSE filesystem to mount SMB shares."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/smbfs/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-
-COMMON_DEPEND="
-	=sys-fs/fuse-2.9*:=
-	net-fs/samba:=
-"
-
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/system_api:=
-	chromeos-base/libpasswordprovider:=
-"
-
-pkg_setup() {
-	# Has to be done in pkg_setup() instead of pkg_preinst() since
-	# src_install() needs <daemon_user> and <daemon_group>.
-	enewuser "fuse-smbfs"
-	enewgroup "fuse-smbfs"
-	cros-workon_pkg_setup
-}
-
-src_install() {
-	dosbin "${OUT}"/smbfs
-
-	insinto /usr/share/policy
-	newins seccomp_filters/smbfs-seccomp-"${ARCH}".policy smbfs-seccomp.policy
-
-	local daemon_store="/etc/daemon-store/smbfs"
-	dodir "${daemon_store}"
-	fperms 0700 "${daemon_store}"
-	fowners fuse-smbfs:fuse-smbfs "${daemon_store}"
-}
-
-platform_pkg_test() {
-	local tests=(
-		smbfs_test
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/smbfs/smbfs-0.0.1-r240.ebuild b/chromeos-base/smbfs/smbfs-0.0.1-r240.ebuild
new file mode 100644
index 0000000..23c2507
--- /dev/null
+++ b/chromeos-base/smbfs/smbfs-0.0.1-r240.ebuild
@@ -0,0 +1,67 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="e6f78db1c12b5336a61e9d92333c206d3e94b07e"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9" "e6b7e35db312b819197ba84e75b13d25acf4f2ff" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk libpasswordprovider smbfs .gn"
+
+PLATFORM_SUBDIR="smbfs"
+
+inherit cros-workon platform user
+
+DESCRIPTION="FUSE filesystem to mount SMB shares."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/smbfs/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+
+COMMON_DEPEND="
+	=sys-fs/fuse-2.9*:=
+	net-fs/samba:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/system_api:=
+	chromeos-base/libpasswordprovider:=
+"
+
+pkg_setup() {
+	# Has to be done in pkg_setup() instead of pkg_preinst() since
+	# src_install() needs <daemon_user> and <daemon_group>.
+	enewuser "fuse-smbfs"
+	enewgroup "fuse-smbfs"
+	cros-workon_pkg_setup
+}
+
+src_install() {
+	dosbin "${OUT}"/smbfs
+
+	insinto /usr/share/policy
+	newins seccomp_filters/smbfs-seccomp-"${ARCH}".policy smbfs-seccomp.policy
+
+	local daemon_store="/etc/daemon-store/smbfs"
+	dodir "${daemon_store}"
+	fperms 0700 "${daemon_store}"
+	fowners fuse-smbfs:fuse-smbfs "${daemon_store}"
+}
+
+platform_pkg_test() {
+	local tests=(
+		smbfs_test
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/smbprovider/smbprovider-0.0.1-r712.ebuild b/chromeos-base/smbprovider/smbprovider-0.0.1-r712.ebuild
deleted file mode 100644
index f4d9264..0000000
--- a/chromeos-base/smbprovider/smbprovider-0.0.1-r712.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "eae0546f4ee5132d4544af4770755eb05f60cba6" "e23b68f653a4b37525fbe6a6f1a490c47c9d99cc" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(allenvic): Remove libpasswordprovider from here once crbug.com/833675 is resolved.
-CROS_WORKON_SUBTREE="common-mk libpasswordprovider smbprovider .gn"
-
-PLATFORM_SUBDIR="smbprovider"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Provides access to Samba file share"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/smbprovider/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="fuzzer"
-
-COMMON_DEPEND="
-	dev-libs/protobuf:=
-	>=net-fs/samba-4.5.3-r6
-	sys-apps/dbus:=
-"
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/protofiles:=
-	chromeos-base/system_api:=[fuzzer?]
-	chromeos-base/libpasswordprovider:=
-"
-
-pkg_setup() {
-	# Has to be done in pkg_setup() instead of pkg_preinst() since
-	# src_install() needs smbproviderd:smbproviderd.
-	enewuser "smbproviderd"
-	enewgroup "smbproviderd"
-	cros-workon_pkg_setup
-}
-
-src_install() {
-	dosbin "${OUT}"/smbproviderd
-
-	insinto /etc/dbus-1/system.d
-	doins etc/dbus-1/org.chromium.SmbProvider.conf
-
-	insinto /usr/share/dbus-1/system-services
-	doins org.chromium.SmbProvider.service
-
-	insinto /etc/init
-	doins etc/init/smbproviderd.conf
-
-	insinto /usr/share/policy
-	newins seccomp_filters/smbprovider-seccomp-"${ARCH}".policy smbprovider-seccomp.policy
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/netbios_packet_fuzzer
-
-	local daemon_store="/etc/daemon-store/smbproviderd"
-	dodir "${daemon_store}"
-	fperms 0700 "${daemon_store}"
-	fowners smbproviderd:smbproviderd "${daemon_store}"
-}
-
-platform_pkg_test() {
-	local tests=(
-		smbprovider_test
-	)
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/smbprovider/smbprovider-0.0.1-r750.ebuild b/chromeos-base/smbprovider/smbprovider-0.0.1-r750.ebuild
new file mode 100644
index 0000000..1f1e49f
--- /dev/null
+++ b/chromeos-base/smbprovider/smbprovider-0.0.1-r750.ebuild
@@ -0,0 +1,82 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="d5601d708c5df7c6e6e38ebde5c47af57099db69"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9" "e4e1877ca22e96d5b8203910b6fc0e214e65b3c6" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(allenvic): Remove libpasswordprovider from here once crbug.com/833675 is resolved.
+CROS_WORKON_SUBTREE="common-mk libpasswordprovider smbprovider .gn"
+
+PLATFORM_SUBDIR="smbprovider"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Provides access to Samba file share"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/smbprovider/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="fuzzer"
+
+COMMON_DEPEND="
+	dev-libs/protobuf:=
+	>=net-fs/samba-4.5.3-r6
+	sys-apps/dbus:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/protofiles:=
+	chromeos-base/system_api:=[fuzzer?]
+	chromeos-base/libpasswordprovider:=
+"
+
+pkg_setup() {
+	# Has to be done in pkg_setup() instead of pkg_preinst() since
+	# src_install() needs smbproviderd:smbproviderd.
+	enewuser "smbproviderd"
+	enewgroup "smbproviderd"
+	cros-workon_pkg_setup
+}
+
+src_install() {
+	dosbin "${OUT}"/smbproviderd
+
+	insinto /etc/dbus-1/system.d
+	doins etc/dbus-1/org.chromium.SmbProvider.conf
+
+	insinto /usr/share/dbus-1/system-services
+	doins org.chromium.SmbProvider.service
+
+	insinto /etc/init
+	doins etc/init/smbproviderd.conf
+
+	insinto /usr/share/policy
+	newins seccomp_filters/smbprovider-seccomp-"${ARCH}".policy smbprovider-seccomp.policy
+
+	# fuzzer_component_id is unknown/unlisted
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/netbios_packet_fuzzer
+
+	local daemon_store="/etc/daemon-store/smbproviderd"
+	dodir "${daemon_store}"
+	fperms 0700 "${daemon_store}"
+	fowners smbproviderd:smbproviderd "${daemon_store}"
+}
+
+platform_pkg_test() {
+	local tests=(
+		smbprovider_test
+	)
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/smbprovider/smbprovider-9999.ebuild b/chromeos-base/smbprovider/smbprovider-9999.ebuild
index 3a7fdd7..20b7ff0 100644
--- a/chromeos-base/smbprovider/smbprovider-9999.ebuild
+++ b/chromeos-base/smbprovider/smbprovider-9999.ebuild
@@ -60,6 +60,7 @@
 	insinto /usr/share/policy
 	newins seccomp_filters/smbprovider-seccomp-"${ARCH}".policy smbprovider-seccomp.policy
 
+	# fuzzer_component_id is unknown/unlisted
 	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/netbios_packet_fuzzer
 
 	local daemon_store="/etc/daemon-store/smbproviderd"
diff --git a/chromeos-base/smogcheck/smogcheck-0.0.1-r3066.ebuild b/chromeos-base/smogcheck/smogcheck-0.0.1-r3066.ebuild
deleted file mode 100644
index bdccc97..0000000
--- a/chromeos-base/smogcheck/smogcheck-0.0.1-r3066.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "25b90cd13b01122d778a1d55d814c5b001b88d22" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_SUBTREE="common-mk smogcheck .gn"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-
-inherit cros-common.mk cros-sanitizers cros-workon cros-debug
-
-DESCRIPTION="TPM SmogCheck library"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/smogcheck/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="-asan"
-
-src_unpack() {
-	cros-workon_src_unpack
-	S+="/smogcheck"
-}
-
-src_configure() {
-	sanitizers-setup-env
-	cros-common.mk_src_configure
-}
-
-src_install() {
-	emake DESTDIR="${D}" LIBDIR="$(get_libdir)" install
-}
diff --git a/chromeos-base/smogcheck/smogcheck-0.0.1-r3091.ebuild b/chromeos-base/smogcheck/smogcheck-0.0.1-r3091.ebuild
new file mode 100644
index 0000000..8caef43
--- /dev/null
+++ b/chromeos-base/smogcheck/smogcheck-0.0.1-r3091.ebuild
@@ -0,0 +1,35 @@
+# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "25b90cd13b01122d778a1d55d814c5b001b88d22" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_SUBTREE="common-mk smogcheck .gn"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+
+inherit cros-common.mk cros-sanitizers cros-workon cros-debug
+
+DESCRIPTION="TPM SmogCheck library"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/smogcheck/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="-asan"
+
+src_unpack() {
+	cros-workon_src_unpack
+	S+="/smogcheck"
+}
+
+src_configure() {
+	sanitizers-setup-env
+	cros-common.mk_src_configure
+}
+
+src_install() {
+	emake DESTDIR="${D}" LIBDIR="$(get_libdir)" install
+}
diff --git a/chromeos-base/sommelier/sommelier-0.0.1-r142.ebuild b/chromeos-base/sommelier/sommelier-0.0.1-r142.ebuild
deleted file mode 100644
index 030a909..0000000
--- a/chromeos-base/sommelier/sommelier-0.0.1-r142.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="ce3c961f927aa35110967506c86aca884a84e426"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "73d11c9c68b8ad83037d9b5820a42f0e51c57d74" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk vm_tools/sommelier .gn"
-
-PLATFORM_SUBDIR="vm_tools/sommelier"
-
-inherit cros-workon platform
-
-DESCRIPTION="A Wayland compositor for use in CrOS VMs"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools/sommelier"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="kvm_guest"
-
-# This ebuild should only be used on VM guest boards.
-REQUIRED_USE="kvm_guest"
-
-COMMON_DEPEND="
-	media-libs/mesa:=[gbm]
-	x11-base/xwayland:=
-	x11-libs/libxkbcommon:=
-	x11-libs/pixman:=
-"
-
-RDEPEND="
-	!<chromeos-base/vm_guest_tools-0.0.2-r722
-	${COMMON_DEPEND}
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	dev-util/meson
-	dev-util/ninja
-"
-
-src_install() {
-	dobin "${OUT}"/sommelier
-}
-
-platform_pkg_test() {
-	local tests=(
-		sommelier_test
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-
-	# Ensure the meson build script continues to work.
-	if ! use x86 && ! use amd64 ; then
-		elog "Skipping meson tests on non-x86 platform"
-	else
-		meson tmp_build_dir || die "Failed to configure meson build"
-		ninja -C tmp_build_dir || die "Failed to build sommelier with meson"
-		[ -f tmp_build_dir/sommelier ] || die "Target 'sommelier' was not built by meson"
-		ninja -C tmp_build_dir test || die "Tests failed"
-	fi
-}
diff --git a/chromeos-base/sommelier/sommelier-0.0.1-r192.ebuild b/chromeos-base/sommelier/sommelier-0.0.1-r192.ebuild
new file mode 100644
index 0000000..62ee835
--- /dev/null
+++ b/chromeos-base/sommelier/sommelier-0.0.1-r192.ebuild
@@ -0,0 +1,83 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "00ffd7cf775709a0e74a50142e0287a0bec5dbc5" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk vm_tools/sommelier .gn"
+
+PLATFORM_SUBDIR="vm_tools/sommelier"
+
+inherit cros-workon platform
+
+DESCRIPTION="A Wayland compositor for use in CrOS VMs"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools/sommelier"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="kvm_guest"
+
+# This ebuild should only be used on VM guest boards.
+REQUIRED_USE="kvm_guest"
+
+COMMON_DEPEND="
+	dev-libs/libevdev:=
+	x11-libs/libxkbcommon:=
+	x11-libs/libxcb:=
+	x11-libs/pixman:=
+	x11-libs/libdrm:=
+	dev-libs/wayland:=
+	|| (
+		media-libs/mesa:=[gbm]
+		media-libs/minigbm:=
+	)
+	!fuzzer? (
+		x11-base/xwayland:=
+	)
+"
+
+RDEPEND="
+	!<chromeos-base/vm_guest_tools-0.0.2-r722
+	${COMMON_DEPEND}
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/perfetto
+	dev-util/meson
+	dev-util/ninja
+"
+
+src_install() {
+	dobin "${OUT}"/sommelier
+
+	# fuzzer_component_id is unknown/unlisted
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/sommelier_wayland_fuzzer
+}
+
+platform_pkg_test() {
+	local tests=(
+		sommelier_test
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+
+	# Ensure the meson build script continues to work.
+	if ! use x86 && ! use amd64 ; then
+		elog "Skipping meson tests on non-x86 platform"
+	else
+		meson tmp_build_dir -Dgamepad=true -Dtracing=true -Dcommit_loop_fix=true \
+				|| die "Failed to configure meson build"
+		ninja -C tmp_build_dir || die "Failed to build sommelier with meson"
+		[ -f tmp_build_dir/sommelier ] || die "Target 'sommelier' was not built by meson"
+		ninja -C tmp_build_dir test || die "Tests failed"
+	fi
+}
diff --git a/chromeos-base/sommelier/sommelier-9999.ebuild b/chromeos-base/sommelier/sommelier-9999.ebuild
index 56f77d5..7d325a7 100644
--- a/chromeos-base/sommelier/sommelier-9999.ebuild
+++ b/chromeos-base/sommelier/sommelier-9999.ebuild
@@ -24,10 +24,19 @@
 REQUIRED_USE="kvm_guest"
 
 COMMON_DEPEND="
-	media-libs/mesa:=[gbm]
-	x11-base/xwayland:=
+	dev-libs/libevdev:=
 	x11-libs/libxkbcommon:=
+	x11-libs/libxcb:=
 	x11-libs/pixman:=
+	x11-libs/libdrm:=
+	dev-libs/wayland:=
+	|| (
+		media-libs/mesa:=[gbm]
+		media-libs/minigbm:=
+	)
+	!fuzzer? (
+		x11-base/xwayland:=
+	)
 "
 
 RDEPEND="
@@ -37,12 +46,16 @@
 
 DEPEND="
 	${COMMON_DEPEND}
+	chromeos-base/perfetto
 	dev-util/meson
 	dev-util/ninja
 "
 
 src_install() {
 	dobin "${OUT}"/sommelier
+
+	# fuzzer_component_id is unknown/unlisted
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/sommelier_wayland_fuzzer
 }
 
 platform_pkg_test() {
@@ -59,7 +72,8 @@
 	if ! use x86 && ! use amd64 ; then
 		elog "Skipping meson tests on non-x86 platform"
 	else
-		meson tmp_build_dir || die "Failed to configure meson build"
+		meson tmp_build_dir -Dgamepad=true -Dtracing=true -Dcommit_loop_fix=true \
+				|| die "Failed to configure meson build"
 		ninja -C tmp_build_dir || die "Failed to build sommelier with meson"
 		[ -f tmp_build_dir/sommelier ] || die "Target 'sommelier' was not built by meson"
 		ninja -C tmp_build_dir test || die "Tests failed"
diff --git a/chromeos-base/spaced/OWNERS b/chromeos-base/spaced/OWNERS
new file mode 100644
index 0000000..9291328
--- /dev/null
+++ b/chromeos-base/spaced/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/spaced/OWNERS
diff --git a/chromeos-base/spaced/spaced-0.0.1-r32.ebuild b/chromeos-base/spaced/spaced-0.0.1-r32.ebuild
new file mode 100644
index 0000000..a7664fb
--- /dev/null
+++ b/chromeos-base/spaced/spaced-0.0.1-r32.ebuild
@@ -0,0 +1,58 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "1df1cd86cc9b1097a63fda6de34de50db54a61ac" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk spaced .gn"
+
+PLATFORM_SUBDIR="spaced"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Disk space information daemon for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/spaced/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="+seccomp"
+
+pkg_preinst() {
+	enewuser "spaced"
+	enewgroup "spaced"
+}
+
+src_install() {
+	# D-Bus configuration.
+	insinto /etc/dbus-1/system.d
+	doins dbus_bindings/org.chromium.Spaced.conf
+
+	dolib.so "${OUT}"/lib/libspaced.so
+	dosbin "${OUT}"/spaced
+	dosbin "${OUT}"/spaced_cli
+
+	insinto /etc/init
+	doins init/spaced.conf
+
+	if use seccomp; then
+		local policy="seccomp/spaced-seccomp-${ARCH}.policy"
+		local policy_out="${ED}/usr/share/policy/spaced-seccomp.policy.bpf"
+		dodir /usr/share/policy
+		compile_seccomp_policy \
+			--arch-json "${SYSROOT}/build/share/constants.json" \
+			--default-action trap "${policy}" "${policy_out}" \
+			|| die "failed to compile seccomp policy ${policy}"
+	fi
+
+	insinto "/usr/include/spaced"
+	doins ./*.h
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}"/libspaced_unittests
+}
diff --git a/chromeos-base/spaced/spaced-9999.ebuild b/chromeos-base/spaced/spaced-9999.ebuild
new file mode 100644
index 0000000..f42f778
--- /dev/null
+++ b/chromeos-base/spaced/spaced-9999.ebuild
@@ -0,0 +1,56 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk spaced .gn"
+
+PLATFORM_SUBDIR="spaced"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Disk space information daemon for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/spaced/"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+IUSE="+seccomp"
+
+pkg_preinst() {
+	enewuser "spaced"
+	enewgroup "spaced"
+}
+
+src_install() {
+	# D-Bus configuration.
+	insinto /etc/dbus-1/system.d
+	doins dbus_bindings/org.chromium.Spaced.conf
+
+	dolib.so "${OUT}"/lib/libspaced.so
+	dosbin "${OUT}"/spaced
+	dosbin "${OUT}"/spaced_cli
+
+	insinto /etc/init
+	doins init/spaced.conf
+
+	if use seccomp; then
+		local policy="seccomp/spaced-seccomp-${ARCH}.policy"
+		local policy_out="${ED}/usr/share/policy/spaced-seccomp.policy.bpf"
+		dodir /usr/share/policy
+		compile_seccomp_policy \
+			--arch-json "${SYSROOT}/build/share/constants.json" \
+			--default-action trap "${policy}" "${policy_out}" \
+			|| die "failed to compile seccomp policy ${policy}"
+	fi
+
+	insinto "/usr/include/spaced"
+	doins ./*.h
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}"/libspaced_unittests
+}
diff --git a/chromeos-base/st_flash/st_flash-0.0.1-r1256.ebuild b/chromeos-base/st_flash/st_flash-0.0.1-r1256.ebuild
deleted file mode 100644
index 6acf022..0000000
--- a/chromeos-base/st_flash/st_flash-0.0.1-r1256.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="6edcd690f665def9c2ecabe6ea77fec07e8a601c"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "791e2808df33f88d5ae99fabe78c4f0dbd2035fa" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_SUBTREE="common-mk st_flash .gn"
-
-PLATFORM_SUBDIR="st_flash"
-
-inherit cros-workon platform
-
-DESCRIPTION="STM32 IAP firmware updater for Chrome OS touchpads"
-HOMEPAGE=""
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-src_install() {
-	dobin "${OUT}"/st_flash
-}
diff --git a/chromeos-base/st_flash/st_flash-0.0.1-r1281.ebuild b/chromeos-base/st_flash/st_flash-0.0.1-r1281.ebuild
new file mode 100644
index 0000000..e8c72a3
--- /dev/null
+++ b/chromeos-base/st_flash/st_flash-0.0.1-r1281.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "791e2808df33f88d5ae99fabe78c4f0dbd2035fa" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_SUBTREE="common-mk st_flash .gn"
+
+PLATFORM_SUBDIR="st_flash"
+
+inherit cros-workon platform
+
+DESCRIPTION="STM32 IAP firmware updater for Chrome OS touchpads"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+src_install() {
+	dobin "${OUT}"/st_flash
+}
diff --git a/chromeos-base/swap-init/files/init/swap.sh b/chromeos-base/swap-init/files/init/swap.sh
index c902a40..74104b3 100755
--- a/chromeos-base/swap-init/files/init/swap.sh
+++ b/chromeos-base/swap-init/files/init/swap.sh
@@ -161,17 +161,6 @@
   echo "${content}" > "${file}"
 }
 
-
-# TODO(semenzato): Remove this after R65
-migrate_old_swap_setting() {
-  OLD_SWAP_ENABLE_FILE=/home/chronos/.swap_enabled
-  if [ -e "${OLD_SWAP_ENABLE_FILE}" ]; then
-    old_content="$(cat "${OLD_SWAP_ENABLE_FILE}")"
-    create_write_file "${SWAP_ENABLE_FILE}" "${old_content}"
-    rm -f "${OLD_SWAP_ENABLE_FILE}"
-  fi
-}
-
 disk_based_swap_supported() {
   # Can be set in the ebuild.
   local disk_based_swap_enabled=false
@@ -213,9 +202,6 @@
   local mem_total param
   mem_total=$(get_mem_total)
 
-  # TODO(semenzato): Remove this after R65
-  migrate_old_swap_setting
-
   for param in margin min_filelist extra_free; do
     initialize_parameter "${param}"
   done
diff --git a/chromeos-base/syslog-cat/syslog-cat-0.0.1-r49.ebuild b/chromeos-base/syslog-cat/syslog-cat-0.0.1-r49.ebuild
deleted file mode 100644
index b0ad81d..0000000
--- a/chromeos-base/syslog-cat/syslog-cat-0.0.1-r49.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2020 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.
-
-EAPI=7
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "5cbb3b50e94cd190817a813ffb446c07cde6990b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="common-mk syslog-cat .gn"
-
-PLATFORM_SUBDIR="syslog-cat"
-
-inherit cros-workon platform
-
-DESCRIPTION="Simple command to forward stdout/err to syslog"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/syslog-cat"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-src_install() {
-	platform_install
-}
-
-platform_pkg_test() {
-	platform test_all
-}
-
diff --git a/chromeos-base/syslog-cat/syslog-cat-0.0.1-r75.ebuild b/chromeos-base/syslog-cat/syslog-cat-0.0.1-r75.ebuild
new file mode 100644
index 0000000..00ae4c2
--- /dev/null
+++ b/chromeos-base/syslog-cat/syslog-cat-0.0.1-r75.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2020 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.
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "08b91a2f1e0d6e18374c6c9f0f6a1e1f30e21bee" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="common-mk syslog-cat .gn"
+
+PLATFORM_SUBDIR="syslog-cat"
+
+inherit cros-workon platform
+
+DESCRIPTION="Simple command to forward stdout/err to syslog"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/syslog-cat"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+src_install() {
+	platform_install
+}
+
+platform_pkg_test() {
+	platform test_all
+}
+
diff --git a/chromeos-base/system-proxy/system-proxy-0.0.1-r214.ebuild b/chromeos-base/system-proxy/system-proxy-0.0.1-r214.ebuild
deleted file mode 100644
index 1550b32..0000000
--- a/chromeos-base/system-proxy/system-proxy-0.0.1-r214.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "eae0546f4ee5132d4544af4770755eb05f60cba6" "4ec0160713133cb6e004285d204db461280e4549" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk libpasswordprovider system-proxy .gn"
-
-PLATFORM_SUBDIR="system-proxy"
-
-inherit cros-workon platform user
-
-DESCRIPTION="A daemon that provides authentication support for system services
-and ARC apps behind an authenticated web proxy."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/system-proxy/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="fuzzer"
-
-COMMON_DEPEND="
-	chromeos-base/libpasswordprovider:=
-	chromeos-base/minijail:=
-	chromeos-base/patchpanel:=
-	chromeos-base/patchpanel-client:=
-	dev-libs/protobuf:=
-	sys-apps/dbus:=
-	net-misc/curl:=
-"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/permission_broker-client:=
-	fuzzer? ( dev-libs/libprotobuf-mutator:= )
-"
-
-pkg_preinst() {
-	enewuser "system-proxy"
-	enewgroup "system-proxy"
-}
-
-src_install() {
-	dosbin "${OUT}"/system_proxy
-	dosbin "${OUT}"/system_proxy_worker
-
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.SystemProxy.conf
-
-	insinto /usr/share/dbus-1/system-services
-	doins dbus/org.chromium.SystemProxy.service
-
-	insinto /etc/init
-	doins init/system-proxy.conf
-
-	insinto /usr/share/policy
-	newins seccomp/system-proxy-seccomp-"${ARCH}".policy system-proxy-seccomp.policy
-	newins seccomp/system-proxy-worker-seccomp-"${ARCH}".policy system-proxy-worker-seccomp.policy
-
-	if use fuzzer; then
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_connect_headers_parser_fuzzer
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_worker_config_fuzzer
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_http_util_fuzzer
-	fi
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/system-proxy_test"
-}
diff --git a/chromeos-base/system-proxy/system-proxy-0.0.1-r250.ebuild b/chromeos-base/system-proxy/system-proxy-0.0.1-r250.ebuild
new file mode 100644
index 0000000..24e206d
--- /dev/null
+++ b/chromeos-base/system-proxy/system-proxy-0.0.1-r250.ebuild
@@ -0,0 +1,78 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="8cfd00a94cf51d0c7ca1a8f3153fdc8be5af8517"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9" "0b49584e8f1dc7c80f40fa18b7ec806a8864bfd3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk libpasswordprovider system-proxy .gn"
+
+PLATFORM_SUBDIR="system-proxy"
+
+inherit cros-workon platform user
+
+DESCRIPTION="A daemon that provides authentication support for system services
+and ARC apps behind an authenticated web proxy."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/system-proxy/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="fuzzer"
+
+COMMON_DEPEND="
+	chromeos-base/libpasswordprovider:=
+	chromeos-base/minijail:=
+	chromeos-base/patchpanel:=
+	chromeos-base/patchpanel-client:=
+	dev-libs/protobuf:=
+	sys-apps/dbus:=
+	net-misc/curl:=
+"
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/permission_broker-client:=
+	fuzzer? ( dev-libs/libprotobuf-mutator:= )
+"
+
+pkg_preinst() {
+	enewuser "system-proxy"
+	enewgroup "system-proxy"
+}
+
+src_install() {
+	dosbin "${OUT}"/system_proxy
+	dosbin "${OUT}"/system_proxy_worker
+
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.SystemProxy.conf
+
+	insinto /usr/share/dbus-1/system-services
+	doins dbus/org.chromium.SystemProxy.service
+
+	insinto /etc/init
+	doins init/system-proxy.conf
+
+	insinto /usr/share/policy
+	newins seccomp/system-proxy-seccomp-"${ARCH}".policy system-proxy-seccomp.policy
+	newins seccomp/system-proxy-worker-seccomp-"${ARCH}".policy system-proxy-worker-seccomp.policy
+
+	if use fuzzer; then
+		local fuzzer_component_id="156085"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_connect_headers_parser_fuzzer \
+			--comp "${fuzzer_component_id}"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_worker_config_fuzzer \
+			--comp "${fuzzer_component_id}"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_http_util_fuzzer \
+			--comp "${fuzzer_component_id}"
+	fi
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/system-proxy_test"
+}
diff --git a/chromeos-base/system-proxy/system-proxy-9999.ebuild b/chromeos-base/system-proxy/system-proxy-9999.ebuild
index 7ec8528..8323a23 100644
--- a/chromeos-base/system-proxy/system-proxy-9999.ebuild
+++ b/chromeos-base/system-proxy/system-proxy-9999.ebuild
@@ -61,9 +61,13 @@
 	newins seccomp/system-proxy-worker-seccomp-"${ARCH}".policy system-proxy-worker-seccomp.policy
 
 	if use fuzzer; then
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_connect_headers_parser_fuzzer
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_worker_config_fuzzer
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_http_util_fuzzer
+		local fuzzer_component_id="156085"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_connect_headers_parser_fuzzer \
+			--comp "${fuzzer_component_id}"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_worker_config_fuzzer \
+			--comp "${fuzzer_component_id}"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_http_util_fuzzer \
+			--comp "${fuzzer_component_id}"
 	fi
 }
 
diff --git a/chromeos-base/system_api/system_api-0.0.1-r4369.ebuild b/chromeos-base/system_api/system_api-0.0.1-r4369.ebuild
deleted file mode 100644
index b1b40ee6..0000000
--- a/chromeos-base/system_api/system_api-0.0.1-r4369.ebuild
+++ /dev/null
@@ -1,111 +0,0 @@
-# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6dd33d823125a9f9e78f10c51ea5756c9f8b64bc"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "17b97c5c2ddeb8fe389f24ed79e581941c90795b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_GO_PACKAGES=(
-	"chromiumos/system_api/..."
-)
-
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk system_api .gn"
-
-PLATFORM_SUBDIR="system_api"
-WANT_LIBBRILLO="no"
-
-inherit cros-fuzzer cros-go cros-workon platform
-
-DESCRIPTION="Chrome OS system API (D-Bus service names, etc.)"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/system_api/"
-LICENSE="BSD-Google"
-# The subslot should be manually bumped any time protobuf is upgraded
-# to a newer version whose libraries are incompatible with the
-# generated sources of the previous version. As a rule of thumb if the
-# minor version of protobuf has changed, the subslot should be incremented.
-SLOT="0/1"
-KEYWORDS="*"
-IUSE="cros_host"
-
-RDEPEND=""
-
-DEPEND="${RDEPEND}
-	dev-go/protobuf:=
-	dev-libs/protobuf:=
-	cros_host? ( net-libs/grpc:= )
-"
-
-src_unpack() {
-	platform_src_unpack
-	CROS_GO_WORKSPACE="${OUT}/gen/go"
-}
-
-src_install() {
-	insinto /usr/"$(get_libdir)"/pkgconfig
-	doins system_api.pc
-
-	insinto /usr/include/chromeos
-	doins -r dbus switches constants
-	find "${D}" -name OWNERS -delete || die
-
-	# Install the dbus-constants.h files in the respective daemons' client library
-	# include directory. Users will need to include the corresponding client
-	# library to access these files.
-	local dir dirs=(
-		arc-data-snapshotd
-		anomaly_detector
-		attestation
-		biod
-		chunneld
-		cros-disks
-		cros_healthd
-		cryptohome
-		debugd
-		dlcservice
-		kerberos
-		login_manager
-		lorgnette
-		oobe_config
-		runtime_probe
-		pciguard
-		permission_broker
-		power_manager
-		rmad
-		shill
-		smbprovider
-		tpm_manager
-		update_engine
-		wilco_dtc_supportd
-	)
-	for dir in "${dirs[@]}"; do
-		insinto /usr/include/"${dir}"-client/"${dir}"
-		doins dbus/"${dir}"/dbus-constants.h
-	done
-
-	# These are files/projects installed in the common dir.
-	dirs=( system_api )
-
-	# These are project-specific files.
-	dirs+=( $(
-		cd "${S}/dbus" || die
-		dirname */*.proto | sort -u
-	) )
-
-	for dir in "${dirs[@]}"; do
-		insinto /usr/include/"${dir}"/proto_bindings
-		doins "${OUT}"/gen/include/"${dir}"/proto_bindings/*.h
-
-		if [[ "${dir}" == "system_api" ]]; then
-			dolib.a "${OUT}/libsystem_api-protos.a"
-		else
-			dolib.a "${OUT}/libsystem_api-${dir}-protos.a"
-		fi
-	done
-
-	dolib.so "${OUT}/lib/libsystem_api.so"
-
-	cros-go_src_install
-}
diff --git a/chromeos-base/system_api/system_api-0.0.1-r4483.ebuild b/chromeos-base/system_api/system_api-0.0.1-r4483.ebuild
new file mode 100644
index 0000000..09b0d76
--- /dev/null
+++ b/chromeos-base/system_api/system_api-0.0.1-r4483.ebuild
@@ -0,0 +1,111 @@
+# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="c6136fa9e765e659306fc9e8f35d3f9ddf6806f6"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "c28e5042658473f3d1d5194279d4ec2cc2633f31" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_GO_PACKAGES=(
+	"chromiumos/system_api/..."
+)
+
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk system_api .gn"
+
+PLATFORM_SUBDIR="system_api"
+WANT_LIBBRILLO="no"
+
+inherit cros-fuzzer cros-go cros-workon platform
+
+DESCRIPTION="Chrome OS system API (D-Bus service names, etc.)"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/system_api/"
+LICENSE="BSD-Google"
+# The subslot should be manually bumped any time protobuf is upgraded
+# to a newer version whose libraries are incompatible with the
+# generated sources of the previous version. As a rule of thumb if the
+# minor version of protobuf has changed, the subslot should be incremented.
+SLOT="0/1"
+KEYWORDS="*"
+IUSE="cros_host"
+
+RDEPEND=""
+
+DEPEND="${RDEPEND}
+	dev-go/protobuf:=
+	dev-libs/protobuf:=
+	cros_host? ( net-libs/grpc:= )
+"
+
+src_unpack() {
+	platform_src_unpack
+	CROS_GO_WORKSPACE="${OUT}/gen/go"
+}
+
+src_install() {
+	insinto /usr/"$(get_libdir)"/pkgconfig
+	doins system_api.pc
+
+	insinto /usr/include/chromeos
+	doins -r dbus switches constants
+	find "${D}" -name OWNERS -delete || die
+
+	# Install the dbus-constants.h files in the respective daemons' client library
+	# include directory. Users will need to include the corresponding client
+	# library to access these files.
+	local dir dirs=(
+		arc-data-snapshotd
+		anomaly_detector
+		attestation
+		biod
+		chunneld
+		cros-disks
+		cros_healthd
+		cryptohome
+		debugd
+		dlcservice
+		kerberos
+		login_manager
+		lorgnette
+		oobe_config
+		runtime_probe
+		pciguard
+		permission_broker
+		power_manager
+		rmad
+		shill
+		smbprovider
+		tpm_manager
+		update_engine
+		wilco_dtc_supportd
+	)
+	for dir in "${dirs[@]}"; do
+		insinto /usr/include/"${dir}"-client/"${dir}"
+		doins dbus/"${dir}"/dbus-constants.h
+	done
+
+	# These are files/projects installed in the common dir.
+	dirs=( system_api )
+
+	# These are project-specific files.
+	dirs+=( $(
+		cd "${S}/dbus" || die
+		dirname */*.proto | sort -u
+	) )
+
+	for dir in "${dirs[@]}"; do
+		insinto /usr/include/"${dir}"/proto_bindings
+		doins "${OUT}"/gen/include/"${dir}"/proto_bindings/*.h
+
+		if [[ "${dir}" == "system_api" ]]; then
+			dolib.a "${OUT}/libsystem_api-protos.a"
+		else
+			dolib.a "${OUT}/libsystem_api-${dir}-protos.a"
+		fi
+	done
+
+	dolib.so "${OUT}/lib/libsystem_api.so"
+
+	cros-go_src_install
+}
diff --git a/chromeos-base/tast-build-deps/tast-build-deps-2-r11.ebuild b/chromeos-base/tast-build-deps/tast-build-deps-2-r11.ebuild
new file mode 100644
index 0000000..99abc2d
--- /dev/null
+++ b/chromeos-base/tast-build-deps/tast-build-deps-2-r11.ebuild
@@ -0,0 +1,66 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
+# the canonical empty project.
+CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
+CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="platform/empty-project"
+
+inherit cros-workon
+
+DESCRIPTION="Build-time dependencies of Tast binaries"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND="
+	chromeos-base/aosp-frameworks-base-proto
+	chromeos-base/cros-config-api
+	chromeos-base/hardware_verifier_proto
+	chromeos-base/modemfwd-proto
+	chromeos-base/policy-go-proto
+	chromeos-base/system_api
+	chromeos-base/vm_protos
+	chromeos-base/wilco-dtc-grpc-protos
+	dev-go/boringssl-acvptool
+	dev-go/cdp
+	dev-go/clock
+	dev-go/cmp
+	dev-go/crypto
+	dev-go/dbus
+	dev-go/docker
+	dev-go/dst
+	dev-go/exif
+	dev-go/fscrypt
+	dev-go/gapi-drive
+	dev-go/genproto
+	dev-go/godebug
+	dev-go/golang-evdev
+	dev-go/golint
+	dev-go/gopacket
+	dev-go/gopsutil
+	dev-go/go-matroska
+	dev-go/go-sys
+	dev-go/grpc
+	dev-go/mdns
+	dev-go/mock
+	dev-go/mp4
+	dev-go/oauth2
+	dev-go/perfetto-protos
+	dev-go/protobuf
+	dev-go/selinux
+	dev-go/subcommands
+	dev-go/sync
+	dev-go/tarm-serial
+	dev-go/uuid
+	dev-go/vsock
+	dev-go/yaml
+"
+
+RDEPEND="${DEPEND}"
diff --git a/chromeos-base/tast-build-deps/tast-build-deps-2-r6.ebuild b/chromeos-base/tast-build-deps/tast-build-deps-2-r6.ebuild
deleted file mode 100644
index 57b1440..0000000
--- a/chromeos-base/tast-build-deps/tast-build-deps-2-r6.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
-# the canonical empty project.
-CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
-CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
-CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
-CROS_WORKON_LOCALNAME="platform/empty-project"
-
-inherit cros-workon
-
-DESCRIPTION="Build-time dependencies of Tast binaries"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="
-	chromeos-base/aosp-frameworks-base-proto
-	chromeos-base/cros-config-api
-	chromeos-base/hardware_verifier_proto
-	chromeos-base/perfetto_proto
-	chromeos-base/policy-go-proto
-	chromeos-base/system_api
-	chromeos-base/vm_protos
-	chromeos-base/wilco-dtc-grpc-protos
-	dev-go/boringssl-acvptool
-	dev-go/cdp
-	dev-go/clock
-	dev-go/cmp
-	dev-go/crypto
-	dev-go/dbus
-	dev-go/dst
-	dev-go/exif
-	dev-go/fscrypt
-	dev-go/gapi-drive
-	dev-go/genproto
-	dev-go/godebug
-	dev-go/golang-evdev
-	dev-go/golint
-	dev-go/gopacket
-	dev-go/gopsutil
-	dev-go/go-matroska
-	dev-go/go-sys
-	dev-go/grpc
-	dev-go/mdns
-	dev-go/mp4
-	dev-go/oauth2
-	dev-go/perfetto-protos
-	dev-go/protobuf
-	dev-go/selinux
-	dev-go/subcommands
-	dev-go/sync
-	dev-go/uuid
-	dev-go/vsock
-	dev-go/yaml
-"
-
-RDEPEND="${DEPEND}"
diff --git a/chromeos-base/tast-build-deps/tast-build-deps-9999.ebuild b/chromeos-base/tast-build-deps/tast-build-deps-9999.ebuild
index cecdfe3..381e6b4 100644
--- a/chromeos-base/tast-build-deps/tast-build-deps-9999.ebuild
+++ b/chromeos-base/tast-build-deps/tast-build-deps-9999.ebuild
@@ -21,7 +21,7 @@
 	chromeos-base/aosp-frameworks-base-proto
 	chromeos-base/cros-config-api
 	chromeos-base/hardware_verifier_proto
-	chromeos-base/perfetto_proto
+	chromeos-base/modemfwd-proto
 	chromeos-base/policy-go-proto
 	chromeos-base/system_api
 	chromeos-base/vm_protos
@@ -32,6 +32,7 @@
 	dev-go/cmp
 	dev-go/crypto
 	dev-go/dbus
+	dev-go/docker
 	dev-go/dst
 	dev-go/exif
 	dev-go/fscrypt
@@ -46,6 +47,7 @@
 	dev-go/go-sys
 	dev-go/grpc
 	dev-go/mdns
+	dev-go/mock
 	dev-go/mp4
 	dev-go/oauth2
 	dev-go/perfetto-protos
@@ -53,6 +55,7 @@
 	dev-go/selinux
 	dev-go/subcommands
 	dev-go/sync
+	dev-go/tarm-serial
 	dev-go/uuid
 	dev-go/vsock
 	dev-go/yaml
diff --git a/chromeos-base/tast-cmd/tast-cmd-0.0.1-r1155.ebuild b/chromeos-base/tast-cmd/tast-cmd-0.0.1-r1155.ebuild
deleted file mode 100644
index e444e57..0000000
--- a/chromeos-base/tast-cmd/tast-cmd-0.0.1-r1155.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="e4d08848f7ee842b8cc7eef4b5ac40371eab0c5a"
-CROS_WORKON_TREE="f962a7d69f70f98e292bc4a8161b165a1d3af867"
-CROS_WORKON_PROJECT="chromiumos/platform/tast"
-CROS_WORKON_LOCALNAME="platform/tast"
-
-CROS_GO_BINARIES=(
-	"chromiumos/tast/cmd/remote_test_runner"
-	"chromiumos/tast/cmd/tast"
-	"chromiumos/tast/cmd/tast_rtd"
-)
-
-CROS_GO_VERSION="${PF}"
-
-CROS_GO_TEST=(
-	"chromiumos/tast/cmd/remote_test_runner/..."
-	"chromiumos/tast/cmd/tast/..."
-	# Also test common code.
-	"chromiumos/tast/..."
-)
-CROS_GO_VET=(
-	"${CROS_GO_TEST[@]}"
-)
-
-inherit cros-go cros-workon
-
-DESCRIPTION="Host executables for running integration tests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-# Build-time dependencies should be added to tast-build-deps, not here.
-DEPEND="chromeos-base/tast-build-deps:="
-
-RDEPEND="
-	app-arch/tar
-	app-arch/xz-utils
-	chromeos-base/google-breakpad
-	chromeos-base/tast-build-deps
-	chromeos-base/tast-vars
-	net-misc/gsutil
-	!chromeos-base/tast-common
-"
-
-src_prepare() {
-	# Disable cgo and PIE on building Tast binaries. See:
-	# https://crbug.com/976196
-	# https://github.com/golang/go/issues/30986#issuecomment-475626018
-	export CGO_ENABLED=0
-	export GOPIE=0
-
-	default
-}
diff --git a/chromeos-base/tast-cmd/tast-cmd-0.0.1-r1274.ebuild b/chromeos-base/tast-cmd/tast-cmd-0.0.1-r1274.ebuild
new file mode 100644
index 0000000..11730d7
--- /dev/null
+++ b/chromeos-base/tast-cmd/tast-cmd-0.0.1-r1274.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="b1fb85673bd75c54dae214fc3d7764672916819d"
+CROS_WORKON_TREE="4ddc1331cc37b407523e4c42a01d9d6cdbe6d9eb"
+CROS_WORKON_PROJECT="chromiumos/platform/tast"
+CROS_WORKON_LOCALNAME="platform/tast"
+
+CROS_GO_BINARIES=(
+	"chromiumos/tast/cmd/remote_test_runner"
+	"chromiumos/tast/cmd/tast"
+	"chromiumos/tast/cmd/tast_rtd"
+)
+
+CROS_GO_VERSION="${PF}"
+
+CROS_GO_TEST=(
+	"chromiumos/tast/cmd/remote_test_runner/..."
+	"chromiumos/tast/cmd/tast/..."
+	# Also test common code.
+	"chromiumos/tast/..."
+)
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Host executables for running integration tests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+# Build-time dependencies should be added to tast-build-deps, not here.
+DEPEND="chromeos-base/tast-build-deps:="
+
+RDEPEND="
+	app-arch/tar
+	app-arch/xz-utils
+	chromeos-base/google-breakpad
+	chromeos-base/tast-build-deps
+	chromeos-base/tast-vars
+	net-misc/gsutil
+	!chromeos-base/tast-common
+"
+
+src_prepare() {
+	# Disable cgo and PIE on building Tast binaries. See:
+	# https://crbug.com/976196
+	# https://github.com/golang/go/issues/30986#issuecomment-475626018
+	export CGO_ENABLED=0
+	export GOPIE=0
+
+	default
+}
diff --git a/chromeos-base/tast-local-apks-cros/tast-local-apks-cros-0.0.1-r108.ebuild b/chromeos-base/tast-local-apks-cros/tast-local-apks-cros-0.0.1-r108.ebuild
deleted file mode 100644
index 31ab315..0000000
--- a/chromeos-base/tast-local-apks-cros/tast-local-apks-cros-0.0.1-r108.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="c8dccfe05135ce2bece39571072f00c6a442438b"
-CROS_WORKON_TREE="891957ec6f33631e7104b99559ddd79608d5911d"
-CROS_WORKON_PROJECT="chromiumos/platform/tast-tests"
-CROS_WORKON_LOCALNAME="platform/tast-tests"
-CROS_WORKON_SUBTREE="android"
-
-inherit cros-workon
-
-DESCRIPTION="Compiled apks used by local Tast tests in the cros bundle"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast-tests/+/master/android"
-
-LICENSE="BSD-Google GPL-3"
-SLOT="0"
-KEYWORDS="*"
-
-BDEPEND="
-	chromeos-base/android-sdk
-	dev-util/gn
-"
-
-DEPEND="${RDEPEND}"
-OUT=$(cros-workon_get_build_dir)
-
-src_compile() {
-	gn gen "${OUT}" --root="${S}"/android || die "gn failed"
-	ninja -C "${OUT}" || die "build failed"
-}
-
-src_install() {
-	if [ ! -d "${OUT}/apks" ]; then
-		ewarn "There is no apk."
-		ewarn "If you want to add a helper APK, add it under tast-tests/android"
-		ewarn "and modify BUILD.gn."
-		return
-	fi
-	insinto /usr/libexec/tast/apks/local/cros
-	doins "${OUT}"/apks/*
-}
-
diff --git a/chromeos-base/tast-local-apks-cros/tast-local-apks-cros-0.0.1-r146.ebuild b/chromeos-base/tast-local-apks-cros/tast-local-apks-cros-0.0.1-r146.ebuild
new file mode 100644
index 0000000..f82e62c
--- /dev/null
+++ b/chromeos-base/tast-local-apks-cros/tast-local-apks-cros-0.0.1-r146.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="39990fdc11936c3ca7fc5dbd6b41014f245aa830"
+CROS_WORKON_TREE="871ed76d67f224ac406ec980c079cc110ba16632"
+CROS_WORKON_PROJECT="chromiumos/platform/tast-tests"
+CROS_WORKON_LOCALNAME="platform/tast-tests"
+CROS_WORKON_SUBTREE="android"
+
+inherit cros-workon
+
+DESCRIPTION="Compiled apks used by local Tast tests in the cros bundle"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast-tests/+/master/android"
+
+LICENSE="BSD-Google GPL-3"
+SLOT="0"
+KEYWORDS="*"
+
+BDEPEND="
+	chromeos-base/android-sdk
+	dev-util/gn
+"
+
+DEPEND="${RDEPEND}"
+OUT=$(cros-workon_get_build_dir)
+
+src_compile() {
+	gn gen "${OUT}" --root="${S}"/android || die "gn failed"
+	ninja -C "${OUT}" || die "build failed"
+}
+
+src_install() {
+	if [ ! -d "${OUT}/apks" ]; then
+		ewarn "There is no apk."
+		ewarn "If you want to add a helper APK, add it under tast-tests/android"
+		ewarn "and modify BUILD.gn."
+		return
+	fi
+	insinto /usr/libexec/tast/apks/local/cros
+	doins "${OUT}"/apks/*
+}
+
diff --git a/chromeos-base/tast-local-helpers-cros/tast-local-helpers-cros-0.0.1-r205.ebuild b/chromeos-base/tast-local-helpers-cros/tast-local-helpers-cros-0.0.1-r205.ebuild
deleted file mode 100644
index 4fb6f6e..0000000
--- a/chromeos-base/tast-local-helpers-cros/tast-local-helpers-cros-0.0.1-r205.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 2019 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("f34cf3a06f7b17b7829185630d886a5d9d3f0e75" "6f68cdae2db46345996be0bac9c59e6fbabb5e4f")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "28cbb351025522a4f769aec6fc01bfb93d49208b")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "chromiumos/platform/tast-tests")
-CROS_WORKON_LOCALNAME=("platform2" "platform/tast-tests")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/tast-tests")
-CROS_WORKON_SUBTREE=("common-mk .gn" "helpers")
-
-PLATFORM_SUBDIR="tast-tests/helpers/local"
-
-inherit cros-workon platform
-
-DESCRIPTION="Compiled executables used by local Tast tests in the cros bundle"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast-tests/+/master/helpers"
-
-LICENSE="BSD-Google GPL-3"
-SLOT="0/0"
-KEYWORDS="*"
-
-COMMON_DEPEND="
-	dev-cpp/gtest:=
-	media-libs/minigbm:=
-	x11-libs/libdrm:=
-"
-RDEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/goldctl
-"
-DEPEND="${RDEPEND}"
-
-src_install() {
-	# Executable files' names take the form <category>.<TestName>.<bin_name>.
-	exeinto /usr/libexec/tast/helpers/local/cros
-	doexe "${OUT}"/*.[A-Z]*.*
-	# Install symbol list file to the location required by minidump_stackwalk.
-	# See https://www.chromium.org/developers/decoding-crash-dumps for details.
-	local crasher_exec="${OUT}/platform.UserCrash.crasher"
-	local id=$(head -n1 "${crasher_exec}.sym" | cut -d' ' -f 4)
-	insinto "/usr/libexec/tast/helpers/local/cros/symbols/${crasher_exec##*/}/${id}"
-	doins "${crasher_exec}.sym"
-}
diff --git a/chromeos-base/tast-local-helpers-cros/tast-local-helpers-cros-0.0.1-r232.ebuild b/chromeos-base/tast-local-helpers-cros/tast-local-helpers-cros-0.0.1-r232.ebuild
new file mode 100644
index 0000000..e848a99
--- /dev/null
+++ b/chromeos-base/tast-local-helpers-cros/tast-local-helpers-cros-0.0.1-r232.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2019 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "ea9219bd565f3f93b0a23e2acd37a6c119682f8b")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "efd9350877a286e1dd8489ecf50980e33eff3a3b")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "chromiumos/platform/tast-tests")
+CROS_WORKON_LOCALNAME=("platform2" "platform/tast-tests")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/tast-tests")
+CROS_WORKON_SUBTREE=("common-mk .gn" "helpers")
+
+PLATFORM_SUBDIR="tast-tests/helpers/local"
+
+inherit cros-workon platform
+
+DESCRIPTION="Compiled executables used by local Tast tests in the cros bundle"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast-tests/+/master/helpers"
+
+LICENSE="BSD-Google GPL-3"
+SLOT="0/0"
+KEYWORDS="*"
+
+COMMON_DEPEND="
+	dev-cpp/gtest:=
+	media-libs/minigbm:=
+	x11-libs/libdrm:=
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/goldctl
+"
+DEPEND="${RDEPEND}"
+
+src_install() {
+	# Executable files' names take the form <category>.<TestName>.<bin_name>.
+	exeinto /usr/libexec/tast/helpers/local/cros
+	doexe "${OUT}"/*.[A-Z]*.*
+	# Install symbol list file to the location required by minidump_stackwalk.
+	# See https://www.chromium.org/developers/decoding-crash-dumps for details.
+	local crasher_exec="${OUT}/platform.UserCrash.crasher"
+	local id=$(head -n1 "${crasher_exec}.sym" | cut -d' ' -f 4)
+	insinto "/usr/libexec/tast/helpers/local/cros/symbols/${crasher_exec##*/}/${id}"
+	doins "${crasher_exec}.sym"
+}
diff --git a/chromeos-base/tast-local-test-runner/tast-local-test-runner-0.0.1-r1106.ebuild b/chromeos-base/tast-local-test-runner/tast-local-test-runner-0.0.1-r1106.ebuild
deleted file mode 100644
index bbf25df..0000000
--- a/chromeos-base/tast-local-test-runner/tast-local-test-runner-0.0.1-r1106.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="e4d08848f7ee842b8cc7eef4b5ac40371eab0c5a"
-CROS_WORKON_TREE="f962a7d69f70f98e292bc4a8161b165a1d3af867"
-CROS_WORKON_PROJECT="chromiumos/platform/tast"
-CROS_WORKON_LOCALNAME="platform/tast"
-
-CROS_GO_BINARIES=(
-	"chromiumos/tast/cmd/local_test_runner"
-)
-
-CROS_GO_TEST=(
-	"chromiumos/tast/cmd/local_test_runner/..."
-)
-CROS_GO_VET=(
-	"${CROS_GO_TEST[@]}"
-)
-
-inherit cros-go cros-workon
-
-DESCRIPTION="Runner for local integration tests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-# Build-time dependencies should be added to tast-build-deps, not here.
-DEPEND="chromeos-base/tast-build-deps:="
-
-RDEPEND="
-	app-arch/tar
-	!chromeos-base/tast-common
-"
-
-src_prepare() {
-	# Disable cgo and PIE on building Tast binaries. See:
-	# https://crbug.com/976196
-	# https://github.com/golang/go/issues/30986#issuecomment-475626018
-	export CGO_ENABLED=0
-	export GOPIE=0
-
-	default
-}
diff --git a/chromeos-base/tast-local-test-runner/tast-local-test-runner-0.0.1-r1225.ebuild b/chromeos-base/tast-local-test-runner/tast-local-test-runner-0.0.1-r1225.ebuild
new file mode 100644
index 0000000..3a705e2
--- /dev/null
+++ b/chromeos-base/tast-local-test-runner/tast-local-test-runner-0.0.1-r1225.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="b1fb85673bd75c54dae214fc3d7764672916819d"
+CROS_WORKON_TREE="4ddc1331cc37b407523e4c42a01d9d6cdbe6d9eb"
+CROS_WORKON_PROJECT="chromiumos/platform/tast"
+CROS_WORKON_LOCALNAME="platform/tast"
+
+CROS_GO_BINARIES=(
+	"chromiumos/tast/cmd/local_test_runner"
+)
+
+CROS_GO_TEST=(
+	"chromiumos/tast/cmd/local_test_runner/..."
+)
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Runner for local integration tests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+# Build-time dependencies should be added to tast-build-deps, not here.
+DEPEND="chromeos-base/tast-build-deps:="
+
+RDEPEND="
+	app-arch/tar
+	!chromeos-base/tast-common
+"
+
+src_prepare() {
+	# Disable cgo and PIE on building Tast binaries. See:
+	# https://crbug.com/976196
+	# https://github.com/golang/go/issues/30986#issuecomment-475626018
+	export CGO_ENABLED=0
+	export GOPIE=0
+
+	default
+}
diff --git a/chromeos-base/tast-local-tests-cros/files/chromeos-version.sh b/chromeos-base/tast-local-tests-cros/files/chromeos-version.sh
new file mode 100644
index 0000000..998f0a5
--- /dev/null
+++ b/chromeos-base/tast-local-tests-cros/files/chromeos-version.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+# 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.
+#
+# This echo statement sets the package base version (without its -r value).
+# If it is necessary to add a new blocker or version dependency on this ebuild
+# at the same time as revving the ebuild to a known version value, editing this
+# version can be useful.
+
+echo 0.0.2
diff --git a/chromeos-base/tast-local-tests-cros/tast-local-tests-cros-0.0.1-r6667.ebuild b/chromeos-base/tast-local-tests-cros/tast-local-tests-cros-0.0.1-r6667.ebuild
deleted file mode 100644
index 61301c9..0000000
--- a/chromeos-base/tast-local-tests-cros/tast-local-tests-cros-0.0.1-r6667.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT=("c21df20297534ad71c6cea3ac0b364abfcfecfbc" "e4d08848f7ee842b8cc7eef4b5ac40371eab0c5a")
-CROS_WORKON_TREE=("b446e1f3297f19f2d5d7dde235706a9d22be6bb0" "f962a7d69f70f98e292bc4a8161b165a1d3af867")
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform/tast-tests"
-	"chromiumos/platform/tast"
-)
-CROS_WORKON_LOCALNAME=(
-	"platform/tast-tests"
-	"platform/tast"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}"
-	"${S}/tast-base"
-)
-
-CROS_GO_WORKSPACE=(
-	"${CROS_WORKON_DESTDIR[@]}"
-)
-
-CROS_GO_TEST=(
-	# Also test support packages that live above local/bundles/.
-	"chromiumos/tast/..."
-)
-CROS_GO_VET=(
-	"${CROS_GO_TEST[@]}"
-)
-
-inherit cros-workon tast-bundle
-
-DESCRIPTION="Bundle of local integration tests for Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast-tests/"
-
-LICENSE="Apache-2.0 BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="arc chromeless_tty chromeless_tests cups"
-
-# Build-time dependencies should be added to tast-build-deps, not here.
-DEPEND="chromeos-base/tast-build-deps:="
-
-RDEPEND="
-	chromeos-base/policy-testserver
-	chromeos-base/tast-local-helpers-cros
-	chromeos-base/virtual-usb-printer
-	chromeos-base/wprgo
-	!chromeless_tty? (
-		!chromeless_tests? (
-			chromeos-base/drm-tests
-		)
-	)
-	dev-libs/openssl:0=
-	arc? (
-		chromeos-base/tast-local-apks-cros
-		dev-util/android-tools
-		dev-util/android-uiautomator-server
-	)
-	net-misc/curl
-	cups? (
-		net-print/ippsample
-	)
-	sys-apps/memtester
-	sys-apps/rootdev
-	virtual/udev
-"
diff --git a/chromeos-base/tast-local-tests-cros/tast-local-tests-cros-0.0.2-r7949.ebuild b/chromeos-base/tast-local-tests-cros/tast-local-tests-cros-0.0.2-r7949.ebuild
new file mode 100644
index 0000000..4fd0297
--- /dev/null
+++ b/chromeos-base/tast-local-tests-cros/tast-local-tests-cros-0.0.2-r7949.ebuild
@@ -0,0 +1,71 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT=("fd2ca8e5fb9fdb7f8b4d473974386a822428dc21" "b1fb85673bd75c54dae214fc3d7764672916819d")
+CROS_WORKON_TREE=("1485ccd4d9a6504dc14d40573dc04488e4c600b1" "4ddc1331cc37b407523e4c42a01d9d6cdbe6d9eb")
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform/tast-tests"
+	"chromiumos/platform/tast"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform/tast-tests"
+	"platform/tast"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}"
+	"${S}/tast-base"
+)
+
+CROS_GO_WORKSPACE=(
+	"${CROS_WORKON_DESTDIR[@]}"
+)
+
+CROS_GO_TEST=(
+	# Also test support packages that live above local/bundles/.
+	"chromiumos/tast/..."
+)
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+TAST_BUNDLE_EXCLUDE_DATA_FILES="1"
+
+inherit cros-workon tast-bundle
+
+DESCRIPTION="Bundle of local integration tests for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast-tests/"
+
+LICENSE="Apache-2.0 BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="arc chromeless_tty chromeless_tests cups"
+
+# Build-time dependencies should be added to tast-build-deps, not here.
+DEPEND="chromeos-base/tast-build-deps:="
+
+RDEPEND="
+	chromeos-base/policy-testserver
+	chromeos-base/tast-local-helpers-cros
+	chromeos-base/tast-tests-local-data
+	chromeos-base/virtual-usb-printer
+	chromeos-base/wprgo
+	!chromeless_tty? (
+		!chromeless_tests? (
+			chromeos-base/drm-tests
+		)
+	)
+	dev-libs/openssl:0=
+	arc? (
+		chromeos-base/tast-local-apks-cros
+		dev-util/android-tools
+		dev-util/android-uiautomator-server
+	)
+	net-misc/curl
+	cups? (
+		net-print/ippsample
+	)
+	sys-apps/memtester
+	sys-apps/rootdev
+	virtual/udev
+"
diff --git a/chromeos-base/tast-local-tests-cros/tast-local-tests-cros-9999.ebuild b/chromeos-base/tast-local-tests-cros/tast-local-tests-cros-9999.ebuild
index 316e658..c4eb253 100644
--- a/chromeos-base/tast-local-tests-cros/tast-local-tests-cros-9999.ebuild
+++ b/chromeos-base/tast-local-tests-cros/tast-local-tests-cros-9999.ebuild
@@ -27,6 +27,8 @@
 	"${CROS_GO_TEST[@]}"
 )
 
+TAST_BUNDLE_EXCLUDE_DATA_FILES="1"
+
 inherit cros-workon tast-bundle
 
 DESCRIPTION="Bundle of local integration tests for Chrome OS"
@@ -43,6 +45,7 @@
 RDEPEND="
 	chromeos-base/policy-testserver
 	chromeos-base/tast-local-helpers-cros
+	chromeos-base/tast-tests-local-data
 	chromeos-base/virtual-usb-printer
 	chromeos-base/wprgo
 	!chromeless_tty? (
diff --git a/chromeos-base/tast-proto/tast-proto-0.0.1-r141.ebuild b/chromeos-base/tast-proto/tast-proto-0.0.1-r141.ebuild
new file mode 100644
index 0000000..78dde30
--- /dev/null
+++ b/chromeos-base/tast-proto/tast-proto-0.0.1-r141.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="b1fb85673bd75c54dae214fc3d7764672916819d"
+CROS_WORKON_TREE="4ddc1331cc37b407523e4c42a01d9d6cdbe6d9eb"
+CROS_WORKON_PROJECT="chromiumos/platform/tast"
+CROS_WORKON_LOCALNAME="platform/tast"
+
+inherit cros-go cros-workon
+
+CROS_GO_VERSION="${PF}"
+
+CROS_GO_PACKAGES=(
+	"chromiumos/tast/framework/protocol/..."
+)
+
+CROS_GO_TEST=(
+	"${CROS_GO_PACKAGES[@]}"
+)
+
+DESCRIPTION="Provides go bindings to proto APIs for tast"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND=""
+
+RDEPEND=""
+
+src_install() {
+	insinto /usr/lib/gopath/src/
+	cros-go_src_install
+}
diff --git a/chromeos-base/tast-proto/tast-proto-0.0.1-r21.ebuild b/chromeos-base/tast-proto/tast-proto-0.0.1-r21.ebuild
deleted file mode 100644
index 9942857..0000000
--- a/chromeos-base/tast-proto/tast-proto-0.0.1-r21.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="e4d08848f7ee842b8cc7eef4b5ac40371eab0c5a"
-CROS_WORKON_TREE="f962a7d69f70f98e292bc4a8161b165a1d3af867"
-CROS_WORKON_PROJECT="chromiumos/platform/tast"
-CROS_WORKON_LOCALNAME="platform/tast"
-
-inherit cros-go cros-workon
-
-CROS_GO_VERSION="${PF}"
-
-CROS_GO_PACKAGES=(
-	"chromiumos/tast/framework/protocol/..."
-)
-
-DESCRIPTION="Provides go bindings to proto APIs for tast"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND=""
-
-RDEPEND=""
-
-src_install() {
-	insinto /usr/lib/gopath/src/
-	cros-go_src_install
-}
diff --git a/chromeos-base/tast-proto/tast-proto-9999.ebuild b/chromeos-base/tast-proto/tast-proto-9999.ebuild
index 57bfbd8..e95ea2b 100644
--- a/chromeos-base/tast-proto/tast-proto-9999.ebuild
+++ b/chromeos-base/tast-proto/tast-proto-9999.ebuild
@@ -13,6 +13,10 @@
 	"chromiumos/tast/framework/protocol/..."
 )
 
+CROS_GO_TEST=(
+	"${CROS_GO_PACKAGES[@]}"
+)
+
 DESCRIPTION="Provides go bindings to proto APIs for tast"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast/"
 
diff --git a/chromeos-base/tast-remote-tests-cros/files/chromeos-version.sh b/chromeos-base/tast-remote-tests-cros/files/chromeos-version.sh
new file mode 100644
index 0000000..998f0a5
--- /dev/null
+++ b/chromeos-base/tast-remote-tests-cros/files/chromeos-version.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+# 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.
+#
+# This echo statement sets the package base version (without its -r value).
+# If it is necessary to add a new blocker or version dependency on this ebuild
+# at the same time as revving the ebuild to a known version value, editing this
+# version can be useful.
+
+echo 0.0.2
diff --git a/chromeos-base/tast-remote-tests-cros/tast-remote-tests-cros-0.0.1-r6717.ebuild b/chromeos-base/tast-remote-tests-cros/tast-remote-tests-cros-0.0.1-r6717.ebuild
deleted file mode 100644
index 6e8fef7..0000000
--- a/chromeos-base/tast-remote-tests-cros/tast-remote-tests-cros-0.0.1-r6717.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT=("c21df20297534ad71c6cea3ac0b364abfcfecfbc" "e4d08848f7ee842b8cc7eef4b5ac40371eab0c5a" "22c5b21a61f6477ec943cde45a66526c0f2c11ad")
-CROS_WORKON_TREE=("b446e1f3297f19f2d5d7dde235706a9d22be6bb0" "f962a7d69f70f98e292bc4a8161b165a1d3af867" "19a599e153588e7beddcc62b22f526879f2985cf")
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform/tast-tests"
-	"chromiumos/platform/tast"
-	"chromiumos/platform/fw-testing-configs"
-)
-CROS_WORKON_LOCALNAME=(
-	"platform/tast-tests"
-	"platform/tast"
-	"platform/tast-tests/src/chromiumos/tast/remote/firmware/data/fw-testing-configs"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}"
-	"${S}/tast-base"
-	"${S}/src/chromiumos/tast/remote/firmware/data/fw-testing-configs"
-)
-
-CROS_GO_WORKSPACE=(
-	"${CROS_WORKON_DESTDIR[@]}"
-)
-
-CROS_GO_TEST=(
-	# Also test support packages that live above remote/bundles/.
-	"chromiumos/tast/..."
-)
-CROS_GO_VET=(
-	"${CROS_GO_TEST[@]}"
-)
-
-inherit cros-workon tast-bundle
-
-DESCRIPTION="Bundle of remote integration tests for Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast-tests/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-# Build-time dependencies should be added to tast-build-deps, not here.
-DEPEND="chromeos-base/tast-build-deps:="
-
-RDEPEND="
-	dev-python/pillow
-	media-libs/opencv
-"
diff --git a/chromeos-base/tast-remote-tests-cros/tast-remote-tests-cros-0.0.2-r8021.ebuild b/chromeos-base/tast-remote-tests-cros/tast-remote-tests-cros-0.0.2-r8021.ebuild
new file mode 100644
index 0000000..7b3ab2d
--- /dev/null
+++ b/chromeos-base/tast-remote-tests-cros/tast-remote-tests-cros-0.0.2-r8021.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT=("fd2ca8e5fb9fdb7f8b4d473974386a822428dc21" "b1fb85673bd75c54dae214fc3d7764672916819d" "72df0f2b89ecca6d2f823038c6422fe5b898a0fb")
+CROS_WORKON_TREE=("1485ccd4d9a6504dc14d40573dc04488e4c600b1" "4ddc1331cc37b407523e4c42a01d9d6cdbe6d9eb" "3f2804fd986e4f3dabfe8baa51297be1f057f7d3")
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform/tast-tests"
+	"chromiumos/platform/tast"
+	"chromiumos/platform/fw-testing-configs"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform/tast-tests"
+	"platform/tast"
+	"platform/tast-tests/src/chromiumos/tast/remote/firmware/data/fw-testing-configs"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}"
+	"${S}/tast-base"
+	"${S}/src/chromiumos/tast/remote/firmware/data/fw-testing-configs"
+)
+
+CROS_GO_WORKSPACE=(
+	"${CROS_WORKON_DESTDIR[@]}"
+)
+
+CROS_GO_TEST=(
+	# Also test support packages that live above remote/bundles/.
+	"chromiumos/tast/..."
+)
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+TAST_BUNDLE_EXCLUDE_DATA_FILES="1"
+
+inherit cros-workon tast-bundle
+
+DESCRIPTION="Bundle of remote integration tests for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast-tests/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+# Build-time dependencies should be added to tast-build-deps, not here.
+DEPEND="chromeos-base/tast-build-deps:="
+
+RDEPEND="
+	chromeos-base/tast-tests-remote-data
+	dev-python/pillow
+	media-libs/opencv
+"
diff --git a/chromeos-base/tast-remote-tests-cros/tast-remote-tests-cros-9999.ebuild b/chromeos-base/tast-remote-tests-cros/tast-remote-tests-cros-9999.ebuild
index d69a323..c05e36d 100644
--- a/chromeos-base/tast-remote-tests-cros/tast-remote-tests-cros-9999.ebuild
+++ b/chromeos-base/tast-remote-tests-cros/tast-remote-tests-cros-9999.ebuild
@@ -30,6 +30,8 @@
 	"${CROS_GO_TEST[@]}"
 )
 
+TAST_BUNDLE_EXCLUDE_DATA_FILES="1"
+
 inherit cros-workon tast-bundle
 
 DESCRIPTION="Bundle of remote integration tests for Chrome OS"
@@ -43,6 +45,7 @@
 DEPEND="chromeos-base/tast-build-deps:="
 
 RDEPEND="
+	chromeos-base/tast-tests-remote-data
 	dev-python/pillow
 	media-libs/opencv
 "
diff --git a/chromeos-base/tast-tests-local-data/OWNERS b/chromeos-base/tast-tests-local-data/OWNERS
new file mode 100644
index 0000000..89781dd
--- /dev/null
+++ b/chromeos-base/tast-tests-local-data/OWNERS
@@ -0,0 +1,2 @@
+# Owned by Tast framework OWNERs.
+include chromiumos/platform/tast:/OWNERS
\ No newline at end of file
diff --git a/chromeos-base/tast-tests-local-data/tast-tests-local-data-0.0.1-r669.ebuild b/chromeos-base/tast-tests-local-data/tast-tests-local-data-0.0.1-r669.ebuild
new file mode 100644
index 0000000..0a37890
--- /dev/null
+++ b/chromeos-base/tast-tests-local-data/tast-tests-local-data-0.0.1-r669.ebuild
@@ -0,0 +1,27 @@
+# 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="fd2ca8e5fb9fdb7f8b4d473974386a822428dc21"
+CROS_WORKON_TREE="8b730298065fabb01b817f85bf1686856f17b7ba"
+CROS_WORKON_PROJECT=("chromiumos/platform/tast-tests")
+CROS_WORKON_LOCALNAME=("platform/tast-tests")
+CROS_WORKON_DESTDIR=("${S}")
+CROS_WORKON_SUBTREE=("src/chromiumos/tast/local")
+
+inherit cros-workon tast-bundle-data
+
+DESCRIPTION="Data files for local Tast tests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast-tests"
+
+LICENSE="BSD-Google GPL-3"
+SLOT="0/0"
+KEYWORDS="*"
+
+DEPEND=""
+
+# data files were pulled from chromeos-base/tast-local-tests-cros in
+# https://crrev.com/c/2975193.
+RDEPEND="!<chromeos-base/tast-local-tests-cros-0.0.2"
diff --git a/chromeos-base/tast-tests-local-data/tast-tests-local-data-9999.ebuild b/chromeos-base/tast-tests-local-data/tast-tests-local-data-9999.ebuild
new file mode 100644
index 0000000..4716dd5
--- /dev/null
+++ b/chromeos-base/tast-tests-local-data/tast-tests-local-data-9999.ebuild
@@ -0,0 +1,25 @@
+# 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.
+
+EAPI=7
+
+CROS_WORKON_PROJECT=("chromiumos/platform/tast-tests")
+CROS_WORKON_LOCALNAME=("platform/tast-tests")
+CROS_WORKON_DESTDIR=("${S}")
+CROS_WORKON_SUBTREE=("src/chromiumos/tast/local")
+
+inherit cros-workon tast-bundle-data
+
+DESCRIPTION="Data files for local Tast tests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast-tests"
+
+LICENSE="BSD-Google GPL-3"
+SLOT="0/0"
+KEYWORDS="~*"
+
+DEPEND=""
+
+# data files were pulled from chromeos-base/tast-local-tests-cros in
+# https://crrev.com/c/2975193.
+RDEPEND="!<chromeos-base/tast-local-tests-cros-0.0.2"
diff --git a/chromeos-base/tast-tests-remote-data/OWNERS b/chromeos-base/tast-tests-remote-data/OWNERS
new file mode 100644
index 0000000..89781dd
--- /dev/null
+++ b/chromeos-base/tast-tests-remote-data/OWNERS
@@ -0,0 +1,2 @@
+# Owned by Tast framework OWNERs.
+include chromiumos/platform/tast:/OWNERS
\ No newline at end of file
diff --git a/chromeos-base/tast-tests-remote-data/tast-tests-remote-data-0.0.1-r747.ebuild b/chromeos-base/tast-tests-remote-data/tast-tests-remote-data-0.0.1-r747.ebuild
new file mode 100644
index 0000000..7a7a4a9
--- /dev/null
+++ b/chromeos-base/tast-tests-remote-data/tast-tests-remote-data-0.0.1-r747.ebuild
@@ -0,0 +1,38 @@
+# 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("fd2ca8e5fb9fdb7f8b4d473974386a822428dc21" "72df0f2b89ecca6d2f823038c6422fe5b898a0fb")
+CROS_WORKON_TREE="1f9d657655879756117a2f2b0f6a84f23e5b3159"
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform/tast-tests"
+	"chromiumos/platform/fw-testing-configs"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform/tast-tests"
+	"platform/tast-tests/src/chromiumos/tast/remote/firmware/data/fw-testing-configs"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}"
+	"${S}/src/chromiumos/tast/remote/firmware/data/fw-testing-configs"
+)
+
+# There are symlinks between remote data to local data, so we can't make the
+# subtree "src/chromiumos/tast/remote".
+# TODO(oka): have a clear separation between local and remote, and make that
+# happen.
+CROS_WORKON_SUBTREE=("src/chromiumos/tast")
+
+inherit cros-workon tast-bundle-data
+
+DESCRIPTION="Data files for remote Tast tests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast-tests"
+
+LICENSE="BSD-Google GPL-3"
+SLOT="0/0"
+KEYWORDS="*"
+
+DEPEND=""
+RDEPEND="!<chromeos-base/tast-remote-tests-cros-0.0.2"
diff --git a/chromeos-base/tast-tests-remote-data/tast-tests-remote-data-9999.ebuild b/chromeos-base/tast-tests-remote-data/tast-tests-remote-data-9999.ebuild
new file mode 100644
index 0000000..257d095
--- /dev/null
+++ b/chromeos-base/tast-tests-remote-data/tast-tests-remote-data-9999.ebuild
@@ -0,0 +1,36 @@
+# 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.
+
+EAPI=7
+
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform/tast-tests"
+	"chromiumos/platform/fw-testing-configs"
+)
+CROS_WORKON_LOCALNAME=(
+	"platform/tast-tests"
+	"platform/tast-tests/src/chromiumos/tast/remote/firmware/data/fw-testing-configs"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}"
+	"${S}/src/chromiumos/tast/remote/firmware/data/fw-testing-configs"
+)
+
+# There are symlinks between remote data to local data, so we can't make the
+# subtree "src/chromiumos/tast/remote".
+# TODO(oka): have a clear separation between local and remote, and make that
+# happen.
+CROS_WORKON_SUBTREE=("src/chromiumos/tast")
+
+inherit cros-workon tast-bundle-data
+
+DESCRIPTION="Data files for remote Tast tests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tast-tests"
+
+LICENSE="BSD-Google GPL-3"
+SLOT="0/0"
+KEYWORDS="~*"
+
+DEPEND=""
+RDEPEND="!<chromeos-base/tast-remote-tests-cros-0.0.2"
diff --git a/chromeos-base/tast-use-flags/tast-use-flags-1-r46.ebuild b/chromeos-base/tast-use-flags/tast-use-flags-1-r46.ebuild
deleted file mode 100644
index 799298e..0000000
--- a/chromeos-base/tast-use-flags/tast-use-flags-1-r46.ebuild
+++ /dev/null
@@ -1,165 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
-# the canonical empty project.
-CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
-CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
-CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
-CROS_WORKON_LOCALNAME="platform/empty-project"
-
-inherit cros-workon
-
-DESCRIPTION="Text file listing USE flags for Tast test dependencies"
-
-LICENSE="BSD-Google"
-# Nothing depends on this package for build info.  All the files are used at
-# runtime only by design.
-SLOT="0/0"
-KEYWORDS="*"
-
-# NB: Flags listed here are off by default unless prefixed with a '+'.
-IUSE="
-	amd64
-	android-container-pi
-	android-vm-pi
-	android-vm-rvc
-	arc
-	arc-camera1
-	arc-camera3
-	arc-launched-32bit-abi
-	arc_uses_cros_video_decoder
-	arcpp
-	arcvm
-	arm
-	arm64
-	asan
-	betty
-	biod
-	borealis_host
-	cdm_factory_daemon
-	cert_provision
-	cheets_user
-	cheets_user_64
-	cheets_userdebug
-	cheets_userdebug_64
-	chrome_internal
-	chrome_media
-	chromeless_tty
-	containers
-	coresched
-	cr50_onboard
-	crosvm-gpu
-	cups
-	diagnostics
-	disable_cros_video_decoder
-	dptf
-	elm-kernelnext
-	direncription_allow_v2
-	dlc
-	dlc_test
-	+drivefs
-	drm_atomic
-	elm
-	fizz
-	force_breakpad
-	fwupd
-	gboard_decoder
-	grunt
-	hammerd
-	hana
-	hana-kernelnext
-	houdini
-	houdini64
-	hps
-	iioservice
-	internal
-	+internal_mic
-	+internal_speaker
-	iwlwifi_rescan
-	kernel-3_18
-	kernel-4_4
-	kernel-4_14
-	kernel-4_19
-	kernel-5_4
-	kernel-5_10
-	kernel-upstream
-	kukui
-	kvm_host
-	kvm_transition
-	lxc
-	manatee
-	mbo
-	memd
-	ml_benchmark_drivers
-	ml_service
-	moblab
-	mocktpm
-	msan
-	+nacl
-	ndk_translation
-	ndk_translation64
-	nnapi
-	nvme
-	nyan_kitty
-	ocr
-	octopus
-	ondevice_handwriting
-	pita
-	racc
-	rialto
-	rk3399
-	sata
-	selinux
-	selinux_experimental
-	sirenia
-	skate
-	smartdim
-	snow
-	spring
-	+storage_wearout_detect
-	tablet_form_factor
-	touchview
-	tpm2
-	transparent_hugepage
-	ubsan
-	unibuild
-	usbguard
-	v4l2_codec
-	vaapi
-	veyron_mickey
-	veyron_rialto
-	vhost-user-devices
-	video_cards_amdgpu
-	video_cards_intel
-	virtio_gpu
-	vulkan
-	watchdog
-	wifi_hostap_test
-	wilco
-	+wired_8021x
-	+wpa3_sae
-	zork
-"
-
-src_install() {
-	# Install a file containing a list of currently-set USE flags.
-	local path="${WORKDIR}/tast_use_flags.txt"
-	cat <<EOF >"${path}"
-# This file is used by the Tast integration testing system to
-# determine which software features are present in the system image.
-# Don't use it for anything else. Your code will break.
-EOF
-
-	# If you need to inspect a new flag, add it to $IUSE at the top of the file.
-	local flags=( ${IUSE} )
-	local flag
-	for flag in "${flags[@]/#[-+]}" ; do
-		usev ${flag}
-	done | sort -u >>"${path}"
-
-	insinto /etc
-	doins "${path}"
-}
diff --git a/chromeos-base/tast-use-flags/tast-use-flags-1-r58.ebuild b/chromeos-base/tast-use-flags/tast-use-flags-1-r58.ebuild
new file mode 100644
index 0000000..d31013b
--- /dev/null
+++ b/chromeos-base/tast-use-flags/tast-use-flags-1-r58.ebuild
@@ -0,0 +1,167 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
+# the canonical empty project.
+CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
+CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="platform/empty-project"
+
+inherit cros-workon
+
+DESCRIPTION="Text file listing USE flags for Tast test dependencies"
+
+LICENSE="BSD-Google"
+# Nothing depends on this package for build info.  All the files are used at
+# runtime only by design.
+SLOT="0/0"
+KEYWORDS="*"
+
+# NB: Flags listed here are off by default unless prefixed with a '+'.
+IUSE="
+	amd64
+	android-container-pi
+	android-vm-pi
+	android-vm-rvc
+	arc
+	arc-camera1
+	arc-camera3
+	arc-launched-32bit-abi
+	arc_uses_cros_video_decoder
+	arcpp
+	arcvm
+	arm
+	arm64
+	asan
+	betty
+	biod
+	borealis_host
+	cdm_factory_daemon
+	cert_provision
+	cheets_user
+	cheets_user_64
+	cheets_userdebug
+	cheets_userdebug_64
+	chrome_internal
+	chrome_media
+	chromeless_tty
+	containers
+	coresched
+	cr50_onboard
+	crosvm-gpu
+	cups
+	diagnostics
+	disable_cros_video_decoder
+	dptf
+	elm-kernelnext
+	direncription_allow_v2
+	dlc
+	dlc_test
+	+drivefs
+	drm_atomic
+	elm
+	fizz
+	force_breakpad
+	fwupd
+	gboard_decoder
+	grunt
+	hammerd
+	hana
+	hana-kernelnext
+	houdini
+	houdini64
+	hps
+	iioservice
+	internal
+	iwlwifi_rescan
+	kernel-3_18
+	kernel-4_4
+	kernel-4_14
+	kernel-4_19
+	kernel-5_4
+	kernel-5_10
+	kernel-upstream
+	kukui
+	kvm_host
+	kvm_transition
+	lxc
+	manatee
+	mbo
+	memd
+	ml_benchmark_drivers
+	ml_service
+	moblab
+	mocktpm
+	modemfwd
+	msan
+	+nacl
+	ndk_translation
+	ndk_translation64
+	nnapi
+	no_factory_flow
+	nvme
+	nyan_kitty
+	ocr
+	octopus
+	ondevice_document_scanner
+	ondevice_handwriting
+	pinweaver_csme
+	pita
+	racc
+	rialto
+	rk3399
+	sata
+	selinux
+	selinux_experimental
+	sirenia
+	skate
+	smartdim
+	snow
+	spring
+	+storage_wearout_detect
+	tablet_form_factor
+	tpm2
+	transparent_hugepage
+	ubsan
+	unibuild
+	usbguard
+	v4l2_codec
+	vaapi
+	veyron_mickey
+	veyron_rialto
+	video_cards_amdgpu
+	video_cards_intel
+	video_cards_mediatek
+	video_cards_msm
+	virtio_gpu
+	vulkan
+	watchdog
+	wifi_hostap_test
+	wilco
+	+wired_8021x
+	+wpa3_sae
+	zork
+"
+
+src_install() {
+	# Install a file containing a list of currently-set USE flags.
+	local path="${WORKDIR}/tast_use_flags.txt"
+	cat <<EOF >"${path}"
+# This file is used by the Tast integration testing system to
+# determine which software features are present in the system image.
+# Don't use it for anything else. Your code will break.
+EOF
+
+	# If you need to inspect a new flag, add it to $IUSE at the top of the file.
+	local flags=( ${IUSE} )
+	local flag
+	for flag in "${flags[@]/#[-+]}" ; do
+		usev ${flag}
+	done | sort -u >>"${path}"
+
+	insinto /etc
+	doins "${path}"
+}
diff --git a/chromeos-base/tast-use-flags/tast-use-flags-9999.ebuild b/chromeos-base/tast-use-flags/tast-use-flags-9999.ebuild
index b7f7ebb..a5fceb4 100644
--- a/chromeos-base/tast-use-flags/tast-use-flags-9999.ebuild
+++ b/chromeos-base/tast-use-flags/tast-use-flags-9999.ebuild
@@ -74,8 +74,6 @@
 	hps
 	iioservice
 	internal
-	+internal_mic
-	+internal_speaker
 	iwlwifi_rescan
 	kernel-3_18
 	kernel-4_4
@@ -95,16 +93,20 @@
 	ml_service
 	moblab
 	mocktpm
+	modemfwd
 	msan
 	+nacl
 	ndk_translation
 	ndk_translation64
 	nnapi
+	no_factory_flow
 	nvme
 	nyan_kitty
 	ocr
 	octopus
+	ondevice_document_scanner
 	ondevice_handwriting
+	pinweaver_csme
 	pita
 	racc
 	rialto
@@ -119,7 +121,6 @@
 	spring
 	+storage_wearout_detect
 	tablet_form_factor
-	touchview
 	tpm2
 	transparent_hugepage
 	ubsan
@@ -129,9 +130,10 @@
 	vaapi
 	veyron_mickey
 	veyron_rialto
-	vhost-user-devices
 	video_cards_amdgpu
 	video_cards_intel
+	video_cards_mediatek
+	video_cards_msm
 	virtio_gpu
 	vulkan
 	watchdog
diff --git a/chromeos-base/termina-dlc/Manifest b/chromeos-base/termina-dlc/Manifest
index 8ef255e..12e7104 100644
--- a/chromeos-base/termina-dlc/Manifest
+++ b/chromeos-base/termina-dlc/Manifest
@@ -1,2 +1,2 @@
-DIST termina_amd64.tbz 125148391 BLAKE2B 93ec1247d740067d3a60c70483be69fa9aac51daa1830204fb378c0a51b76d6122c1318ab1ba1106b1b1ef09475bff7dca703eedfa3d5cd9e57f977921159024 SHA512 adef36e497ba6ddd7a607dd4ae94aea26f21c16852ce545a05cafcc442bc0e89cb903c4e1685e60c65c7f9c5e0a6e2314cadd1deb94c8f5b628ba7232ccabed1
-DIST termina_arm.tbz 116093315 BLAKE2B 656af22f87459d1a9e0aaec31caba050db7abaa578a05ab67dcc488054d27c5919e8ccddd297fa8ba309b647cd1c12d30f365ce0c9859f2206c0bbc8536d0c96 SHA512 1f4f619d1409a7a7a62761ac3b3fbaa4c88f6482947683d20b8639406be4bcb56f45c2ed6bc2e353816675983992e764f74e8107d39fcfdb5280ec0ae5835eb5
+DIST termina_amd64.tbz 128310305 BLAKE2B 4a8e142437649a4aeeed7436cefa8d5c97b3635e2b2a720db8d36f2041399a7881dae52aa052c23e1fb1e6d42a73f5ad08b1c7e641600b215389ca14b57f191c SHA512 05b0264615ee70445b9a50b5263a10928a996b9df80ef10c8a8b4cba989ee608acaea00ba982552b37b085b841bb6317ccd824c9620e341f2810b0e6745bc646
+DIST termina_arm.tbz 118976713 BLAKE2B e5427778ab5cfb6c4e3c429e6617a33744f449534f3225c77f366a5b562f1adc537467043b1ba033aced38e2f0967cdc4d22c73e2ed7ed142bb3b289bd4c50aa SHA512 08a51f14066d02407f996d11cf793af35be8511ee99d41d6e888e786fc589dfede628cca3c635d80bb5b42362dfaad32e801713d4e46fc73dd8ce4f238f8202e
diff --git a/chromeos-base/termina-dlc/VERSION-PIN b/chromeos-base/termina-dlc/VERSION-PIN
index 5b1b67f..3aaa84e 100644
--- a/chromeos-base/termina-dlc/VERSION-PIN
+++ b/chromeos-base/termina-dlc/VERSION-PIN
@@ -1 +1 @@
-93.14054.0.0
\ No newline at end of file
+97.14279.0.0
\ No newline at end of file
diff --git a/chromeos-base/termina-dlc/termina-dlc-93.14054.0.0-r1.ebuild b/chromeos-base/termina-dlc/termina-dlc-97.14279.0.0-r1.ebuild
similarity index 100%
rename from chromeos-base/termina-dlc/termina-dlc-93.14054.0.0-r1.ebuild
rename to chromeos-base/termina-dlc/termina-dlc-97.14279.0.0-r1.ebuild
diff --git a/chromeos-base/test-server/test-server-0.0.1-r40.ebuild b/chromeos-base/test-server/test-server-0.0.1-r40.ebuild
deleted file mode 100644
index e1f55d3..0000000
--- a/chromeos-base/test-server/test-server-0.0.1-r40.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="48236dd245bb804845d8d7d6309f1769c76cc2e8"
-CROS_WORKON_TREE="f3ec367333d2cf60a121dbc47a5780c04ce28dc7"
-CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
-CROS_WORKON_LOCALNAME="platform/dev"
-CROS_WORKON_SUBTREE="src"
-
-inherit cros-workon
-
-# TODO(shapiroc): Rename package to test-services
-DESCRIPTION="Collection of test services installed into the cros_sdk env"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-#TODO(jaquesc): Re-add dev-util/dut-server once the server has all functionality
-DEPEND="
-	dev-util/provision-server
-	dev-util/test-exec-server
-	dev-util/test-plan
-"
-RDEPEND="${DEPEND}"
diff --git a/chromeos-base/test-server/test-server-0.0.1-r95.ebuild b/chromeos-base/test-server/test-server-0.0.1-r95.ebuild
new file mode 100644
index 0000000..680fc65
--- /dev/null
+++ b/chromeos-base/test-server/test-server-0.0.1-r95.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="4c9b0bff59adfa276da2c9daa2b3143ea8b6b09c"
+CROS_WORKON_TREE="3c054d108afe656ffecc42af955b5e553d6f62d0"
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME="platform/dev"
+CROS_WORKON_SUBTREE="src"
+
+inherit cros-workon
+
+# TODO(shapiroc): Delete after SDK migrated test-services package
+DESCRIPTION="Obsolete (to remove)"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND=""
+RDEPEND="${DEPEND}"
diff --git a/chromeos-base/test-server/test-server-9999.ebuild b/chromeos-base/test-server/test-server-9999.ebuild
index 0ac5f2c..d4847c1 100644
--- a/chromeos-base/test-server/test-server-9999.ebuild
+++ b/chromeos-base/test-server/test-server-9999.ebuild
@@ -8,18 +8,13 @@
 
 inherit cros-workon
 
-# TODO(shapiroc): Rename package to test-services
-DESCRIPTION="Collection of test services installed into the cros_sdk env"
+# TODO(shapiroc): Delete after SDK migrated test-services package
+DESCRIPTION="Obsolete (to remove)"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src"
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
 IUSE=""
 
-#TODO(jaquesc): Re-add dev-util/dut-server once the server has all functionality
-DEPEND="
-	dev-util/provision-server
-	dev-util/test-exec-server
-	dev-util/test-plan
-"
+DEPEND=""
 RDEPEND="${DEPEND}"
diff --git a/chromeos-base/thd/thd-0.0.1-r343.ebuild b/chromeos-base/thd/thd-0.0.1-r343.ebuild
deleted file mode 100644
index 7e7585e0..0000000
--- a/chromeos-base/thd/thd-0.0.1-r343.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "ece498561dfd2919d08524f2ad5d5c60982feb4b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk thd .gn"
-
-PLATFORM_SUBDIR="thd"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Thermal Daemon for Chromium OS"
-HOMEPAGE="http://dev.chromium.org/chromium-os/packages/thd"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-pkg_preinst() {
-	enewuser thermal
-	enewgroup thermal
-}
-
-src_install() {
-	dobin "${OUT}"/thd
-
-	dodir /etc/thd/
-
-	insinto /etc/init
-	doins init/*.conf
-}
diff --git a/chromeos-base/thd/thd-0.0.1-r368.ebuild b/chromeos-base/thd/thd-0.0.1-r368.ebuild
new file mode 100644
index 0000000..d559e30
--- /dev/null
+++ b/chromeos-base/thd/thd-0.0.1-r368.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "ece498561dfd2919d08524f2ad5d5c60982feb4b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk thd .gn"
+
+PLATFORM_SUBDIR="thd"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Thermal Daemon for Chromium OS"
+HOMEPAGE="http://dev.chromium.org/chromium-os/packages/thd"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+pkg_preinst() {
+	enewuser thermal
+	enewgroup thermal
+}
+
+src_install() {
+	dobin "${OUT}"/thd
+
+	dodir /etc/thd/
+
+	insinto /etc/init
+	doins init/*.conf
+}
diff --git a/chromeos-base/timberslide/timberslide-0.0.1-r1559.ebuild b/chromeos-base/timberslide/timberslide-0.0.1-r1559.ebuild
deleted file mode 100644
index ca763e4..0000000
--- a/chromeos-base/timberslide/timberslide-0.0.1-r1559.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="0553127ef2b660a5c71f12a9417ed4ad35f07120"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "ed5e8ef1b9fb278f4990bde11814cdf639d8aa20" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(https://crbug.com/809389)
-CROS_WORKON_SUBTREE="common-mk metrics timberslide .gn"
-
-PLATFORM_SUBDIR="timberslide"
-
-inherit cros-workon platform
-
-DESCRIPTION="EC log concatenator for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/timberslide/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	dev-libs/re2:=
-"
-
-DEPEND="${RDEPEND}"
-
-src_install() {
-	dobin "${OUT}/timberslide"
-
-	# Install upstart configs and scripts
-	insinto /etc/init
-	doins init/*.conf
-	exeinto /usr/share/cros/init
-	doexe init/*.sh
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/timberslide_test_runner"
-}
diff --git a/chromeos-base/timberslide/timberslide-0.0.1-r1605.ebuild b/chromeos-base/timberslide/timberslide-0.0.1-r1605.ebuild
new file mode 100644
index 0000000..6a97eb8
--- /dev/null
+++ b/chromeos-base/timberslide/timberslide-0.0.1-r1605.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e08a2eb734e33827dffeecf57eca046cd1091373" "76bdc511684f0f1a83d9af6c3484d7a48f24626b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(https://crbug.com/809389)
+CROS_WORKON_SUBTREE="common-mk metrics timberslide .gn"
+
+PLATFORM_SUBDIR="timberslide"
+
+inherit cros-workon platform
+
+DESCRIPTION="EC log concatenator for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/timberslide/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	dev-libs/re2:=
+"
+
+DEPEND="${RDEPEND}"
+
+src_install() {
+	dobin "${OUT}/timberslide"
+
+	# Install upstart configs and scripts
+	insinto /etc/init
+	doins init/*.conf
+	exeinto /usr/share/cros/init
+	doexe init/*.sh
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/timberslide_test_runner"
+}
diff --git a/chromeos-base/toolchain-tests/toolchain-tests-0.0.1-r5143.ebuild b/chromeos-base/toolchain-tests/toolchain-tests-0.0.1-r5143.ebuild
deleted file mode 100644
index 7e2395b..0000000
--- a/chromeos-base/toolchain-tests/toolchain-tests-0.0.1-r5143.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="0e103e3821ffbc575b67d6d9c426cac3ee4402b3"
-CROS_WORKON_TREE="210df4cb14c4f7c420a697e85e6a7bec211d5bed"
-CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
-CROS_WORKON_LOCALNAME="third_party/autotest/files"
-
-inherit cros-workon
-
-DESCRIPTION="Compilation and runtime tests for toolchain"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-src_unpack() {
-	cros-workon_src_unpack
-	S+="/client/site_tests/platform_ToolchainTests/src"
-}
diff --git a/chromeos-base/toolchain-tests/toolchain-tests-0.0.1-r5595.ebuild b/chromeos-base/toolchain-tests/toolchain-tests-0.0.1-r5595.ebuild
new file mode 100644
index 0000000..fdfbb5b
--- /dev/null
+++ b/chromeos-base/toolchain-tests/toolchain-tests-0.0.1-r5595.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="6311d895c7f41411cb43618793202a42555e60d5"
+CROS_WORKON_TREE="90395dc6937293c1f70406b4dd0be6a56e417876"
+CROS_WORKON_PROJECT="chromiumos/third_party/autotest"
+CROS_WORKON_LOCALNAME="third_party/autotest/files"
+
+inherit cros-workon
+
+DESCRIPTION="Compilation and runtime tests for toolchain"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/autotest/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+src_unpack() {
+	cros-workon_src_unpack
+	S+="/client/site_tests/platform_ToolchainTests/src"
+}
diff --git a/chromeos-base/touch_firmware_calibration/touch_firmware_calibration-0.0.1-r893.ebuild b/chromeos-base/touch_firmware_calibration/touch_firmware_calibration-0.0.1-r893.ebuild
deleted file mode 100644
index f98c51e..0000000
--- a/chromeos-base/touch_firmware_calibration/touch_firmware_calibration-0.0.1-r893.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "92e357708a584d0da1efabfdc10b432c2bfc40c9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk touch_firmware_calibration .gn"
-
-PLATFORM_SUBDIR="touch_firmware_calibration"
-
-inherit cros-workon platform user udev
-
-DESCRIPTION="Touch Firmware Calibration"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/touch_firmware_calibration/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-pkg_preinst() {
-	# Set up touch_firmware_calibration user and group which will be used to
-	# run tools for calibration.
-	enewuser touch_firmware_calibration
-	enewgroup touch_firmware_calibration
-}
-
-src_install() {
-	# Install a tool to override max pressure.
-	exeinto "$(get_udevdir)"
-	doexe "${OUT}/override-max-pressure"
-
-	# Install the correct seccomp policy for this architecture.
-	insinto "/usr/share/policy"
-	newins "seccomp/override-max-pressure-seccomp-${ARCH}.policy" override-max-pressure-seccomp.policy
-}
diff --git a/chromeos-base/touch_firmware_calibration/touch_firmware_calibration-0.0.1-r919.ebuild b/chromeos-base/touch_firmware_calibration/touch_firmware_calibration-0.0.1-r919.ebuild
new file mode 100644
index 0000000..401305c
--- /dev/null
+++ b/chromeos-base/touch_firmware_calibration/touch_firmware_calibration-0.0.1-r919.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "c0f8db1d4e6470300faa1aca4149c872dd57c1ad" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk touch_firmware_calibration .gn"
+
+PLATFORM_SUBDIR="touch_firmware_calibration"
+
+inherit cros-workon platform user udev
+
+DESCRIPTION="Touch Firmware Calibration"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/touch_firmware_calibration/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+pkg_preinst() {
+	# Set up touch_firmware_calibration user and group which will be used to
+	# run tools for calibration.
+	enewuser touch_firmware_calibration
+	enewgroup touch_firmware_calibration
+}
+
+src_install() {
+	# Install a tool to override max pressure.
+	exeinto "$(get_udevdir)"
+	doexe "${OUT}/override-max-pressure"
+
+	# Install the correct seccomp policy for this architecture.
+	insinto "/usr/share/policy"
+	newins "seccomp/override-max-pressure-seccomp-${ARCH}.policy" override-max-pressure-seccomp.policy
+}
diff --git a/chromeos-base/touch_firmware_test/touch_firmware_test-0.0.1-r119.ebuild b/chromeos-base/touch_firmware_test/touch_firmware_test-0.0.1-r119.ebuild
deleted file mode 100644
index 45e4b84..0000000
--- a/chromeos-base/touch_firmware_test/touch_firmware_test-0.0.1-r119.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="ac7cbcdcf6596b06484d39c891d820c65c69736d"
-CROS_WORKON_TREE="b2428627b8f307715145ff07051896df589b2fe4"
-CROS_WORKON_PROJECT="chromiumos/platform/touch_firmware_test"
-CROS_WORKON_LOCALNAME="platform/touch_firmware_test"
-
-PYTHON_COMPAT=( python2_7 python3_{6..8} )
-inherit cros-sanitizers cros-workon cros-constants cros-debug distutils-r1
-
-DESCRIPTION="Chromium OS multitouch utilities"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="-asan"
-
-RDEPEND=""
-
-DEPEND=${RDEPEND}
-
-src_configure() {
-	sanitizers-setup-env
-	cros-debug-add-NDEBUG
-	default
-}
-
-src_install() {
-	# install the remote package
-	distutils-r1_src_install
-
-	# install the webplot script
-	exeinto /usr/local/bin
-	newexe webplot/chromeos_wrapper.sh webplot
-
-	# install the heatmapplot script
-	newexe heatmap/chromeos_heatmapplot_wrapper.sh heatmapplot
-
-	# install to autotest deps directory for dependency
-	DESTDIR="${D}${AUTOTEST_BASE}/client/deps/touchpad-tests/touch_firmware_test"
-	mkdir -p "${DESTDIR}"
-	echo "CMD:" cp -Rp "${S}"/* "${DESTDIR}"
-	cp -Rp "${S}"/* "${DESTDIR}"
-}
diff --git a/chromeos-base/touch_firmware_test/touch_firmware_test-0.0.1-r120.ebuild b/chromeos-base/touch_firmware_test/touch_firmware_test-0.0.1-r120.ebuild
new file mode 100644
index 0000000..923e6d1
--- /dev/null
+++ b/chromeos-base/touch_firmware_test/touch_firmware_test-0.0.1-r120.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="2385881e6a19a904687ced52f27541b716e8168c"
+CROS_WORKON_TREE="09eb58ea97822c5589c961d0bd338c40927ee224"
+CROS_WORKON_PROJECT="chromiumos/platform/touch_firmware_test"
+CROS_WORKON_LOCALNAME="platform/touch_firmware_test"
+
+PYTHON_COMPAT=( python2_7 python3_{6..8} )
+inherit cros-sanitizers cros-workon cros-constants cros-debug distutils-r1
+
+DESCRIPTION="Chromium OS multitouch utilities"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="-asan"
+
+RDEPEND=""
+
+DEPEND=${RDEPEND}
+
+src_configure() {
+	sanitizers-setup-env
+	cros-debug-add-NDEBUG
+	default
+}
+
+src_install() {
+	# install the remote package
+	distutils-r1_src_install
+
+	# install the webplot script
+	exeinto /usr/local/bin
+	newexe webplot/chromeos_wrapper.sh webplot
+
+	# install the heatmapplot script
+	newexe heatmap/chromeos_heatmapplot_wrapper.sh heatmapplot
+
+	# install to autotest deps directory for dependency
+	DESTDIR="${D}${AUTOTEST_BASE}/client/deps/touchpad-tests/touch_firmware_test"
+	mkdir -p "${DESTDIR}"
+	echo "CMD:" cp -Rp "${S}"/* "${DESTDIR}"
+	cp -Rp "${S}"/* "${DESTDIR}"
+}
diff --git a/chromeos-base/touch_keyboard/touch_keyboard-0.0.1-r1172.ebuild b/chromeos-base/touch_keyboard/touch_keyboard-0.0.1-r1172.ebuild
deleted file mode 100644
index 7b19afc..0000000
--- a/chromeos-base/touch_keyboard/touch_keyboard-0.0.1-r1172.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk touch_keyboard .gn"
-
-PLATFORM_SUBDIR="touch_keyboard"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Touch Keyboard"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/touch_keyboard/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-pkg_preinst() {
-	# Set up the touch_keyboard user and group, which will be used to run
-	# touch_keyboard_handler instead of root.
-	enewuser touch_keyboard
-	enewgroup touch_keyboard
-}
-
-src_install() {
-	# Install the actual binary that handles the touch keyboard.
-	dobin "${OUT}/touch_keyboard_handler"
-
-	# Install a tool for testing the haptic feedback in the factory.
-	dobin "${OUT}/touchkb_haptic_test"
-
-	# Install an upstart script to start the handler at boot time.
-	insinto "/etc/init"
-	doins "touch_keyboard.conf"
-
-	# Install the correct seccomp policy for this architecture.
-	insinto "/opt/google/touch/policies"
-	doins seccomp/${ARCH}/*.policy
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}"/eventkey_test
-	platform_test "run" "${OUT}"/slot_test
-	platform_test "run" "${OUT}"/statemachine_test
-	platform_test "run" "${OUT}"/evdevsource_test
-	platform_test "run" "${OUT}"/uinputdevice_test
-}
diff --git a/chromeos-base/touch_keyboard/touch_keyboard-0.0.1-r1197.ebuild b/chromeos-base/touch_keyboard/touch_keyboard-0.0.1-r1197.ebuild
new file mode 100644
index 0000000..26ba3f0
--- /dev/null
+++ b/chromeos-base/touch_keyboard/touch_keyboard-0.0.1-r1197.ebuild
@@ -0,0 +1,54 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk touch_keyboard .gn"
+
+PLATFORM_SUBDIR="touch_keyboard"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Touch Keyboard"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/touch_keyboard/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+pkg_preinst() {
+	# Set up the touch_keyboard user and group, which will be used to run
+	# touch_keyboard_handler instead of root.
+	enewuser touch_keyboard
+	enewgroup touch_keyboard
+}
+
+src_install() {
+	# Install the actual binary that handles the touch keyboard.
+	dobin "${OUT}/touch_keyboard_handler"
+
+	# Install a tool for testing the haptic feedback in the factory.
+	dobin "${OUT}/touchkb_haptic_test"
+
+	# Install an upstart script to start the handler at boot time.
+	insinto "/etc/init"
+	doins "touch_keyboard.conf"
+
+	# Install the correct seccomp policy for this architecture.
+	insinto "/opt/google/touch/policies"
+	doins seccomp/${ARCH}/*.policy
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}"/eventkey_test
+	platform_test "run" "${OUT}"/slot_test
+	platform_test "run" "${OUT}"/statemachine_test
+	platform_test "run" "${OUT}"/evdevsource_test
+	platform_test "run" "${OUT}"/uinputdevice_test
+}
diff --git a/chromeos-base/touch_updater/touch_updater-0.0.1-r224.ebuild b/chromeos-base/touch_updater/touch_updater-0.0.1-r224.ebuild
deleted file mode 100644
index b2b9947..0000000
--- a/chromeos-base/touch_updater/touch_updater-0.0.1-r224.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="9f58e792a01193b4658b142ff5751fe3baa292d7"
-CROS_WORKON_TREE=("4c5be99747ad647497aaf07a79cb4dd0ac28f841" "589fe50e26955bab53030dec80ef99bf9546844b")
-CROS_WORKON_PROJECT="chromiumos/platform/touch_updater"
-CROS_WORKON_SUBTREE="policies scripts"
-CROS_WORKON_OUTOFTREE_BUILD=1
-
-inherit cros-workon user
-
-DESCRIPTION="Touch firmware and config updater"
-HOMEPAGE="https://www.chromium.org/chromium-os"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="
-	input_devices_synaptics
-	input_devices_wacom
-	input_devices_etphidiap
-	input_devices_st
-	input_devices_st_touchscreen
-	input_devices_weida
-	input_devices_goodix
-	input_devices_sis
-	input_devices_pixart
-	input_devices_g2touch
-	input_devices_cirque
-	input_devices_elan_i2chid
-	input_devices_melfas
-	input_devices_emright
-	input_devices_eps2pstiap
-	input_devices_zinitix
-"
-
-# Third party firmware updaters usually belong in sys-apps/.  If you just
-# checked in a new one to chromeos-base/, please move it to sys-apps/ before
-# adding it as a dependency here.
-RDEPEND="
-	chromeos-base/chromeos-touch-common
-	input_devices_synaptics? ( chromeos-base/rmi4utils )
-	input_devices_wacom? ( chromeos-base/wacom_fw_flash )
-	input_devices_etphidiap? ( chromeos-base/chromeos-touch-etphidiap )
-	input_devices_st? ( chromeos-base/st_flash )
-	input_devices_st_touchscreen? ( chromeos-base/chromeos-touch-stupdate )
-	input_devices_weida? ( chromeos-base/weida_wdt_util )
-	input_devices_goodix? ( chromeos-base/gdix_hid_firmware_update )
-	input_devices_sis? ( chromeos-base/sisConsoletool )
-	input_devices_pixart? ( chromeos-base/pixart_tpfwup )
-	input_devices_g2touch? ( chromeos-base/g2update_tool )
-	input_devices_cirque? ( chromeos-base/cirque_fw_update )
-	input_devices_elan_i2chid? ( chromeos-base/elan_i2chid_tools )
-	input_devices_melfas? ( chromeos-base/mfs-console-tool )
-	input_devices_emright? ( chromeos-base/emright_fw_updater )
-	input_devices_eps2pstiap? ( chromeos-base/epstps2iap )
-	input_devices_zinitix? ( chromeos-base/zinitix_fw_updater )
-"
-
-pkg_preinst() {
-	if use input_devices_elan_i2chid || use input_devices_melfas || use input_devices_emright || use input_devices_zinitix; then
-		enewgroup fwupdate-hidraw
-		enewuser fwupdate-hidraw
-	fi
-	if use input_devices_sis; then
-		enewgroup sisfwupdate
-		enewuser sisfwupdate
-	fi
-	if use input_devices_pixart; then
-		enewgroup pixfwupdate
-		enewuser pixfwupdate
-	fi
-	if use input_devices_g2touch; then
-		enewgroup g2touch
-		enewuser g2touch
-	fi
-	if use input_devices_goodix; then
-		enewgroup goodixfwupdate
-		enewuser goodixfwupdate
-	fi
-	if use input_devices_cirque; then
-		enewgroup cirque
-		enewuser cirque
-	fi
-	if use input_devices_eps2pstiap; then
-		enewgroup fwupdate-serio
-		enewuser fwupdate-serio
-	fi
-}
-
-src_install() {
-	exeinto "/opt/google/touch/scripts"
-	doexe scripts/*.sh
-
-	if [ -d "policies/${ARCH}" ]; then
-		insinto "/opt/google/touch/policies"
-		doins policies/${ARCH}/*.policy
-	fi
-}
diff --git a/chromeos-base/touch_updater/touch_updater-0.0.1-r231.ebuild b/chromeos-base/touch_updater/touch_updater-0.0.1-r231.ebuild
new file mode 100644
index 0000000..5741689
--- /dev/null
+++ b/chromeos-base/touch_updater/touch_updater-0.0.1-r231.ebuild
@@ -0,0 +1,101 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="77c3b0d5870b49b18df23d716d0788c3f2fd40c0"
+CROS_WORKON_TREE=("66c625581ef22b91d4c355cddca2a4f4e0b50916" "d0e3ecf351954a979427a19842eaad39abdd0d80")
+CROS_WORKON_PROJECT="chromiumos/platform/touch_updater"
+CROS_WORKON_SUBTREE="policies scripts"
+CROS_WORKON_OUTOFTREE_BUILD=1
+
+inherit cros-workon user
+
+DESCRIPTION="Touch firmware and config updater"
+HOMEPAGE="https://www.chromium.org/chromium-os"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="
+	input_devices_synaptics
+	input_devices_wacom
+	input_devices_etphidiap
+	input_devices_st
+	input_devices_st_touchscreen
+	input_devices_weida
+	input_devices_goodix
+	input_devices_sis
+	input_devices_pixart
+	input_devices_g2touch
+	input_devices_cirque
+	input_devices_elan_i2chid
+	input_devices_melfas
+	input_devices_emright
+	input_devices_eps2pstiap
+	input_devices_zinitix
+"
+
+# Third party firmware updaters usually belong in sys-apps/.  If you just
+# checked in a new one to chromeos-base/, please move it to sys-apps/ before
+# adding it as a dependency here.
+RDEPEND="
+	chromeos-base/chromeos-touch-common
+	input_devices_synaptics? ( chromeos-base/rmi4utils )
+	input_devices_wacom? ( chromeos-base/wacom_fw_flash )
+	input_devices_etphidiap? ( chromeos-base/chromeos-touch-etphidiap )
+	input_devices_st? ( chromeos-base/st_flash )
+	input_devices_st_touchscreen? ( chromeos-base/chromeos-touch-stupdate )
+	input_devices_weida? ( chromeos-base/weida_wdt_util )
+	input_devices_goodix? ( chromeos-base/gdix_hid_firmware_update )
+	input_devices_sis? ( chromeos-base/sisConsoletool )
+	input_devices_pixart? ( chromeos-base/pixart_tpfwup )
+	input_devices_g2touch? ( chromeos-base/g2update_tool )
+	input_devices_cirque? ( chromeos-base/cirque_fw_update )
+	input_devices_elan_i2chid? ( chromeos-base/elan_i2chid_tools )
+	input_devices_melfas? ( chromeos-base/mfs-console-tool )
+	input_devices_emright? ( chromeos-base/emright_fw_updater )
+	input_devices_eps2pstiap? ( chromeos-base/epstps2iap )
+	input_devices_zinitix? ( chromeos-base/zinitix_fw_updater )
+"
+
+pkg_preinst() {
+	if use input_devices_elan_i2chid || use input_devices_melfas || use input_devices_emright || use input_devices_zinitix; then
+		enewgroup fwupdate-hidraw
+		enewuser fwupdate-hidraw
+	fi
+	if use input_devices_sis; then
+		enewgroup sisfwupdate
+		enewuser sisfwupdate
+	fi
+	if use input_devices_pixart; then
+		enewgroup pixfwupdate
+		enewuser pixfwupdate
+	fi
+	if use input_devices_g2touch; then
+		enewgroup g2touch
+		enewuser g2touch
+	fi
+	if use input_devices_goodix; then
+		enewgroup goodixfwupdate
+		enewuser goodixfwupdate
+	fi
+	if use input_devices_cirque; then
+		enewgroup cirque
+		enewuser cirque
+	fi
+	if use input_devices_eps2pstiap; then
+		enewgroup fwupdate-serio
+		enewuser fwupdate-serio
+	fi
+}
+
+src_install() {
+	exeinto "/opt/google/touch/scripts"
+	doexe scripts/*.sh
+
+	if [ -d "policies/${ARCH}" ]; then
+		insinto "/opt/google/touch/policies"
+		doins policies/${ARCH}/*.policy
+	fi
+}
diff --git a/chromeos-base/tpm-check/tpm-check-0.0.1-r1954.ebuild b/chromeos-base/tpm-check/tpm-check-0.0.1-r1954.ebuild
deleted file mode 100644
index c3e4103..0000000
--- a/chromeos-base/tpm-check/tpm-check-0.0.1-r1954.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="5c0fcf0f8725b98043a4b18f36e21489375d133a"
-CROS_WORKON_TREE="3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c"
-CROS_WORKON_PROJECT="chromiumos/platform/vboot_reference"
-
-inherit cros-workon autotest
-
-DESCRIPTION="tpm check test"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/vboot_reference/"
-SRC_URI=""
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-# Enable autotest by default.
-IUSE="${IUSE} +autotest"
-
-IUSE_TESTS="
-	+tests_hardware_TPMCheck
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-CROS_WORKON_LOCALNAME=platform/vboot_reference
-
-# path from root of repo
-AUTOTEST_CLIENT_SITE_TESTS=autotest/client
diff --git a/chromeos-base/tpm-check/tpm-check-0.0.1-r2008.ebuild b/chromeos-base/tpm-check/tpm-check-0.0.1-r2008.ebuild
new file mode 100644
index 0000000..eacb2d6
--- /dev/null
+++ b/chromeos-base/tpm-check/tpm-check-0.0.1-r2008.ebuild
@@ -0,0 +1,29 @@
+# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="1269365169791c65a6bf6f364583209195874138"
+CROS_WORKON_TREE="63abdfe41a1746dfd5452f030b2ff4646a15ff76"
+CROS_WORKON_PROJECT="chromiumos/platform/vboot_reference"
+
+inherit cros-workon autotest
+
+DESCRIPTION="tpm check test"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/vboot_reference/"
+SRC_URI=""
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+# Enable autotest by default.
+IUSE="${IUSE} +autotest"
+
+IUSE_TESTS="
+	+tests_hardware_TPMCheck
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+CROS_WORKON_LOCALNAME=platform/vboot_reference
+
+# path from root of repo
+AUTOTEST_CLIENT_SITE_TESTS=autotest/client
diff --git a/chromeos-base/tpm-firmware-tests/tpm-firmware-tests-0.0.1-r1974.ebuild b/chromeos-base/tpm-firmware-tests/tpm-firmware-tests-0.0.1-r1974.ebuild
deleted file mode 100644
index a018f04..0000000
--- a/chromeos-base/tpm-firmware-tests/tpm-firmware-tests-0.0.1-r1974.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="5c0fcf0f8725b98043a4b18f36e21489375d133a"
-CROS_WORKON_TREE="3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c"
-CROS_WORKON_PROJECT="chromiumos/platform/vboot_reference"
-
-inherit cros-workon autotest
-
-DESCRIPTION="TPM firmware tests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/vboot_reference/"
-SRC_URI=""
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-DEPEND="
-	app-crypt/trousers:=
-	chromeos-base/tpm:=
-"
-
-# Enable autotest by default.
-IUSE="${IUSE} +autotest"
-
-IUSE_TESTS="
-	+tests_hardware_TPMFirmware
-	+tests_hardware_TPMFirmwareServer
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-CROS_WORKON_LOCALNAME=vboot_reference
-
-# path from root of repo
-AUTOTEST_CLIENT_SITE_TESTS=autotest/client
-AUTOTEST_SERVER_SITE_TESTS=autotest/server
-
-function src_compile {
-	# for Makefile
-	export VBOOT_DIR=${WORKDIR}/${P}
-	export MINIMAL=1  # Makefile requires this for cross-compiling
-	autotest_src_compile
-}
-
-
diff --git a/chromeos-base/tpm-firmware-tests/tpm-firmware-tests-0.0.1-r2028.ebuild b/chromeos-base/tpm-firmware-tests/tpm-firmware-tests-0.0.1-r2028.ebuild
new file mode 100644
index 0000000..e1b97d1
--- /dev/null
+++ b/chromeos-base/tpm-firmware-tests/tpm-firmware-tests-0.0.1-r2028.ebuild
@@ -0,0 +1,45 @@
+# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="1269365169791c65a6bf6f364583209195874138"
+CROS_WORKON_TREE="63abdfe41a1746dfd5452f030b2ff4646a15ff76"
+CROS_WORKON_PROJECT="chromiumos/platform/vboot_reference"
+
+inherit cros-workon autotest
+
+DESCRIPTION="TPM firmware tests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/vboot_reference/"
+SRC_URI=""
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+DEPEND="
+	app-crypt/trousers:=
+	chromeos-base/tpm:=
+"
+
+# Enable autotest by default.
+IUSE="${IUSE} +autotest"
+
+IUSE_TESTS="
+	+tests_hardware_TPMFirmware
+	+tests_hardware_TPMFirmwareServer
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+CROS_WORKON_LOCALNAME=vboot_reference
+
+# path from root of repo
+AUTOTEST_CLIENT_SITE_TESTS=autotest/client
+AUTOTEST_SERVER_SITE_TESTS=autotest/server
+
+function src_compile {
+	# for Makefile
+	export VBOOT_DIR=${WORKDIR}/${P}
+	export MINIMAL=1  # Makefile requires this for cross-compiling
+	autotest_src_compile
+}
+
+
diff --git a/chromeos-base/tpm/tpm-0.0.1-r17.ebuild b/chromeos-base/tpm/tpm-0.0.1-r17.ebuild
deleted file mode 100644
index 9602bb5..0000000
--- a/chromeos-base/tpm/tpm-0.0.1-r17.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright (c) 2010 The Chromium OS Authors.  All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-# $Header$
-
-EAPI="7"
-CROS_WORKON_COMMIT="8afebd60c77201ab9eac6e049e4576ed26c6d600"
-CROS_WORKON_TREE="df4813a2daa4de831ad4a401f7cca7a7b0480b00"
-CROS_WORKON_PROJECT="chromiumos/platform/tpm"
-CROS_WORKON_LOCALNAME="../third_party/tpm"
-
-inherit cros-sanitizers cros-workon toolchain-funcs
-
-DESCRIPTION="Various TPM tools"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tpm/"
-
-LICENSE="BSD"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="-asan"
-
-RDEPEND="app-crypt/trousers:="
-DEPEND="${RDEPEND}"
-
-src_configure() {
-	sanitizers-setup-env
-	default
-}
-
-src_compile() {
-	emake -C nvtool CC="$(tc-getCC)"
-}
-
-src_install() {
-	dobin nvtool/tpm-nvtool
-}
diff --git a/chromeos-base/tpm/tpm-0.0.1-r18.ebuild b/chromeos-base/tpm/tpm-0.0.1-r18.ebuild
new file mode 100644
index 0000000..fb96fcb
--- /dev/null
+++ b/chromeos-base/tpm/tpm-0.0.1-r18.ebuild
@@ -0,0 +1,35 @@
+# Copyright (c) 2010 The Chromium OS Authors.  All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+# $Header$
+
+EAPI="7"
+CROS_WORKON_COMMIT="421593a8cea1083288d5d047b0c43f85c92fe069"
+CROS_WORKON_TREE="0d347f2d000b90963fc38d64ae9259ecf19535cf"
+CROS_WORKON_PROJECT="chromiumos/platform/tpm"
+CROS_WORKON_LOCALNAME="../third_party/tpm"
+
+inherit cros-sanitizers cros-workon toolchain-funcs
+
+DESCRIPTION="Various TPM tools"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tpm/"
+
+LICENSE="BSD"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="-asan"
+
+RDEPEND="app-crypt/trousers:="
+DEPEND="${RDEPEND}"
+
+src_configure() {
+	sanitizers-setup-env
+	default
+}
+
+src_compile() {
+	emake -C nvtool CC="$(tc-getCC)"
+}
+
+src_install() {
+	dobin nvtool/tpm-nvtool
+}
diff --git a/chromeos-base/tpm2-simulator/tpm2-simulator-0.0.1-r1818.ebuild b/chromeos-base/tpm2-simulator/tpm2-simulator-0.0.1-r1818.ebuild
deleted file mode 100644
index ba53c93..0000000
--- a/chromeos-base/tpm2-simulator/tpm2-simulator-0.0.1-r1818.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="477b5f160682fa3913c7368bcad356baeb3c0728"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "01f3fdde08f176cc653d3d0c46c04c446cfa9a81" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk tpm2-simulator .gn"
-
-PLATFORM_SUBDIR="tpm2-simulator"
-
-inherit cros-workon platform user
-
-DESCRIPTION="TPM 2.0 Simulator"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm2-simulator/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-
-COMMON_DEPEND="
-	dev-libs/openssl:0=
-	"
-
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="
-	chromeos-base/tpm2:=[tpm2_simulator,tpm2_simulator_manufacturer]
-	chromeos-base/vboot_reference:=[tpm2_simulator]
-	${COMMON_DEPEND}
-	"
-
-src_install() {
-	# Install init scripts
-	insinto /etc/init
-	doins init/tpm2-simulator.conf
-
-	# Install executables
-	dobin "${OUT}"/tpm2-simulator
-	dobin "${OUT}"/tpm2-simulator-init
-	dobin "${OUT}"/tpm2-simulator-stop
-
-	# Install seccomp policy for cryptohome-proxy
-	insinto /usr/share/policy
-	newins "seccomp/tpm2-simulator-${ARCH}.policy" tpm2-simulator.policy
-}
-
-pkg_preinst() {
-	enewuser tpm2-simulator
-	enewgroup tpm2-simulator
-}
diff --git a/chromeos-base/tpm2-simulator/tpm2-simulator-0.0.1-r1849.ebuild b/chromeos-base/tpm2-simulator/tpm2-simulator-0.0.1-r1849.ebuild
new file mode 100644
index 0000000..7b39b48
--- /dev/null
+++ b/chromeos-base/tpm2-simulator/tpm2-simulator-0.0.1-r1849.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "deeecbada686d1b6013974abb12cad0ee364f6d7" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk tpm2-simulator .gn"
+
+PLATFORM_SUBDIR="tpm2-simulator"
+
+inherit cros-workon platform user
+
+DESCRIPTION="TPM 2.0 Simulator"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm2-simulator/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+
+COMMON_DEPEND="
+	chromeos-base/minijail:=
+	dev-libs/openssl:0=
+	"
+
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="
+	chromeos-base/tpm2:=[tpm2_simulator,tpm2_simulator_manufacturer]
+	chromeos-base/vboot_reference:=[tpm2_simulator]
+	${COMMON_DEPEND}
+	"
+
+src_install() {
+	# Install init scripts
+	insinto /etc/init
+	doins init/tpm2-simulator.conf
+
+	# Install executables
+	dobin "${OUT}"/tpm2-simulator
+	dobin "${OUT}"/tpm2-simulator-init
+	dobin "${OUT}"/tpm2-simulator-stop
+
+	# Install seccomp policy for cryptohome-proxy
+	insinto /usr/share/policy
+	newins "seccomp/tpm2-simulator-${ARCH}.policy" tpm2-simulator.policy
+}
+
+pkg_preinst() {
+	enewuser tpm2-simulator
+	enewgroup tpm2-simulator
+}
diff --git a/chromeos-base/tpm2-simulator/tpm2-simulator-9999.ebuild b/chromeos-base/tpm2-simulator/tpm2-simulator-9999.ebuild
index 93dec10..2106373 100644
--- a/chromeos-base/tpm2-simulator/tpm2-simulator-9999.ebuild
+++ b/chromeos-base/tpm2-simulator/tpm2-simulator-9999.ebuild
@@ -21,6 +21,7 @@
 KEYWORDS="~*"
 
 COMMON_DEPEND="
+	chromeos-base/minijail:=
 	dev-libs/openssl:0=
 	"
 
diff --git a/chromeos-base/tpm2/tpm2-0.0.1-r136.ebuild b/chromeos-base/tpm2/tpm2-0.0.1-r136.ebuild
deleted file mode 100644
index de55f61..0000000
--- a/chromeos-base/tpm2/tpm2-0.0.1-r136.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="37335af9c5488ed349271a8ba9ff209c940a5e2c"
-CROS_WORKON_TREE="679fa8b14bd105ad9959a0f82eaa928d5b18890d"
-CROS_WORKON_PROJECT="chromiumos/third_party/tpm2"
-CROS_WORKON_LOCALNAME="third_party/tpm2"
-
-inherit cros-workon toolchain-funcs
-
-DESCRIPTION="TPM2.0 library"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/tpm2/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="generic_tpm2 tpm2_simulator tpm2_simulator_manufacturer"
-
-DEPEND="dev-libs/openssl:0="
-
-src_compile() {
-	if use tpm2_simulator_manufacturer ; then
-		export TPM2_SIMULATOR_MANUFACTURER=1
-	fi
-	if use generic_tpm2 ; then
-		export TCG_EK_CERT_INDICES=1
-	fi
-	tc-export CC AR RANLIB
-	emake
-}
-
-src_install() {
-	dolib.a build/libtpm2.a
-
-	"${S}"/thirdparty_preinstall.sh "${PV}" "$(cros-workon_get_build_dir)"
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "$(cros-workon_get_build_dir)/libtpm2.pc"
-
-	insinto /usr/include/tpm2
-	doins BaseTypes.h
-	doins Capabilities.h
-	doins ExecCommand_fp.h
-	doins GetCommandCodeString_fp.h
-	doins Implementation.h
-	doins Manufacture_fp.h
-	doins Platform.h
-	doins TPMB.h
-	doins TPM_Types.h
-	doins Tpm.h
-	doins TpmBuildSwitches.h
-	doins TpmError.h
-	doins _TPM_Init_fp.h
-	doins bool.h
-	doins swap.h
-	doins tpm_generated.h
-	doins tpm_types.h
-	if use tpm2_simulator; then
-		doins tpm_manufacture.h
-		doins tpm_simulator.hpp
-	fi
-}
diff --git a/chromeos-base/tpm2/tpm2-0.0.1-r138.ebuild b/chromeos-base/tpm2/tpm2-0.0.1-r138.ebuild
new file mode 100644
index 0000000..8076388
--- /dev/null
+++ b/chromeos-base/tpm2/tpm2-0.0.1-r138.ebuild
@@ -0,0 +1,61 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="89e0c94916b4874f72074c40521f67e3ca90e42d"
+CROS_WORKON_TREE="2159375e60a21a4f4cd6da052dcc95a4a0dec15d"
+CROS_WORKON_PROJECT="chromiumos/third_party/tpm2"
+CROS_WORKON_LOCALNAME="third_party/tpm2"
+
+inherit cros-workon toolchain-funcs
+
+DESCRIPTION="TPM2.0 library"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/tpm2/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="generic_tpm2 tpm2_simulator tpm2_simulator_manufacturer"
+
+DEPEND="dev-libs/openssl:0="
+
+src_compile() {
+	if use tpm2_simulator_manufacturer ; then
+		export TPM2_SIMULATOR_MANUFACTURER=1
+	fi
+	if use generic_tpm2 ; then
+		export TCG_EK_CERT_INDICES=1
+	fi
+	tc-export CC AR RANLIB
+	emake
+}
+
+src_install() {
+	dolib.a build/libtpm2.a
+
+	"${S}"/thirdparty_preinstall.sh "${PV}" "$(cros-workon_get_build_dir)"
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "$(cros-workon_get_build_dir)/libtpm2.pc"
+
+	insinto /usr/include/tpm2
+	doins BaseTypes.h
+	doins Capabilities.h
+	doins ExecCommand_fp.h
+	doins GetCommandCodeString_fp.h
+	doins Implementation.h
+	doins Manufacture_fp.h
+	doins Platform.h
+	doins TPMB.h
+	doins TPM_Types.h
+	doins Tpm.h
+	doins TpmBuildSwitches.h
+	doins TpmError.h
+	doins _TPM_Init_fp.h
+	doins bool.h
+	doins swap.h
+	doins tpm_generated.h
+	doins tpm_types.h
+	if use tpm2_simulator; then
+		doins tpm_manufacture.h
+		doins tpm_simulator.hpp
+	fi
+}
diff --git a/chromeos-base/tpm_manager-client/tpm_manager-client-0.0.1-r259.ebuild b/chromeos-base/tpm_manager-client/tpm_manager-client-0.0.1-r259.ebuild
deleted file mode 100644
index 8ae18d5..0000000
--- a/chromeos-base/tpm_manager-client/tpm_manager-client-0.0.1-r259.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-CROS_WORKON_COMMIT="f563528fd35a0e55348afa3545ed57af4b86bdbc"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk tpm_manager .gn"
-
-PLATFORM_SUBDIR="tpm_manager/client"
-
-inherit cros-workon platform
-
-DESCRIPTION="TPM Manager D-Bus client library for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_manager/client/"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="cros_host test tpm tpm2 fuzzer"
-
-# D-Bus proxies generated by this client library depend on the code generator
-# itself (chromeos-dbus-bindings) and produce header files that rely on
-# libbrillo library, hence both dependencies. We require the particular
-# revision because libbrillo-0.0.1-r1 changed location of header files from
-# chromeos/ to brillo/ and chromeos-dbus-bindings-0.0.1-r1058 generates the
-# code using the new location.
-DEPEND="
-	cros_host? ( >=chromeos-base/chromeos-dbus-bindings-0.0.1-r1058 )
-	chromeos-base/libbrillo:=
-"
-
-# Note that for RDEPEND, we conflict with tpm_manager package older than
-# 0.0.1 because this client is incompatible with daemon older than version
-# 0.0.1. We didn't RDEPEND on tpm_manager version 0.0.1 or greater because
-# we don't want to create circular dependency in case the package tpm_manager
-# depends on some package foo that also depend on this package.
-RDEPEND="
-	!<chromeos-base/tpm_manager-0.0.1-r2238
-	chromeos-base/libbrillo:=
-"
-
-src_install() {
-	# Install D-Bus client library.
-	platform_install_dbus_client_lib "tpm_manager"
-
-	dobin "${OUT}"/tpm_manager_client
-
-	dolib.so "${OUT}"/lib/libtpm_manager.so
-
-	# Install header files.
-	insinto /usr/include/tpm_manager/client
-	doins ./*.h
-	insinto /usr/include/tpm_manager/common
-	doins ../common/*.h
-}
-
-platform_pkg_test() {
-	local tests=(
-		tpm_manager-client_testrunner
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/tpm_manager-client/tpm_manager-client-0.0.1-r311.ebuild b/chromeos-base/tpm_manager-client/tpm_manager-client-0.0.1-r311.ebuild
new file mode 100644
index 0000000..686e9ae
--- /dev/null
+++ b/chromeos-base/tpm_manager-client/tpm_manager-client-0.0.1-r311.ebuild
@@ -0,0 +1,71 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "659b97d9c804b358f4bd27925620d4dd1cee8fc7" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk tpm_manager .gn"
+
+PLATFORM_SUBDIR="tpm_manager/client"
+
+inherit cros-workon platform
+
+DESCRIPTION="TPM Manager D-Bus client library for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_manager/client/"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="cros_host test tpm tpm2 fuzzer"
+
+# D-Bus proxies generated by this client library depend on the code generator
+# itself (chromeos-dbus-bindings) and produce header files that rely on
+# libbrillo library, hence both dependencies. We require the particular
+# revision because libbrillo-0.0.1-r1 changed location of header files from
+# chromeos/ to brillo/ and chromeos-dbus-bindings-0.0.1-r1058 generates the
+# code using the new location.
+DEPEND="
+	cros_host? ( >=chromeos-base/chromeos-dbus-bindings-0.0.1-r1058 )
+	chromeos-base/libbrillo:=
+"
+
+# Note that for RDEPEND, we conflict with tpm_manager package older than
+# 0.0.1 because this client is incompatible with daemon older than version
+# 0.0.1. We didn't RDEPEND on tpm_manager version 0.0.1 or greater because
+# we don't want to create circular dependency in case the package tpm_manager
+# depends on some package foo that also depend on this package.
+RDEPEND="
+	!<chromeos-base/tpm_manager-0.0.1-r2238
+	chromeos-base/libbrillo:=
+"
+
+src_install() {
+	# Install D-Bus client library.
+	platform_install_dbus_client_lib "tpm_manager"
+
+	dobin "${OUT}"/tpm_manager_client
+
+	dolib.so "${OUT}"/lib/libtpm_manager.so
+
+	# Install header files.
+	insinto /usr/include/tpm_manager/client
+	doins ./*.h
+	insinto /usr/include/tpm_manager/common
+	doins ../common/*.h
+}
+
+platform_pkg_test() {
+	local tests=(
+		tpm_manager-client_testrunner
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/tpm_manager/tpm_manager-0.0.1-r2255.ebuild b/chromeos-base/tpm_manager/tpm_manager-0.0.1-r2255.ebuild
deleted file mode 100644
index c369cee..0000000
--- a/chromeos-base/tpm_manager/tpm_manager-0.0.1-r2255.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-CROS_WORKON_COMMIT="f563528fd35a0e55348afa3545ed57af4b86bdbc"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "81dfbbc1756a3b4224b447e7bf10a916d97c4f66" "5d77de997847c22cb783cc11cd0fab4f6fae59f0" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6" "a06a3f47395fb7b584188c6852764bc773e5497e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk libhwsec libtpmcrypto metrics tpm_manager trunks .gn"
-
-PLATFORM_SUBDIR="tpm_manager"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Daemon to manage TPM ownership."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_manager/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="*"
-IUSE="pinweaver_csme test tpm tpm2 fuzzer"
-
-REQUIRED_USE="tpm2? ( !tpm )"
-
-RDEPEND="
-	!tpm2? ( app-crypt/trousers )
-	tpm2? (
-		chromeos-base/trunks
-	)
-	>=chromeos-base/metrics-0.0.1-r3152
-	chromeos-base/minijail
-	chromeos-base/libhwsec
-	chromeos-base/libtpmcrypto
-	chromeos-base/system_api:=[fuzzer?]
-	chromeos-base/tpm_manager-client
-	"
-
-DEPEND="${RDEPEND}
-	tpm2? ( chromeos-base/trunks[test?] )
-	"
-
-pkg_preinst() {
-	enewuser tpm_manager
-	enewgroup tpm_manager
-}
-
-src_install() {
-	# Install D-Bus configuration file.
-	insinto /etc/dbus-1/system.d
-	doins server/org.chromium.TpmManager.conf
-
-	# Install upstart config file.
-	insinto /etc/init
-	doins server/tpm_managerd.conf
-	if use tpm2; then
-		dep_job="trunksd"
-		if use pinweaver_csme; then
-			dep_job="tpm_tunneld"
-		fi
-		sed -i "s/started tcsd/started ${dep_job}/" \
-			"${D}/etc/init/tpm_managerd.conf" ||
-			die "Can't replace tcsd with ${dep_job} in tpm_managerd.conf"
-	fi
-
-	# Install the executables provided by TpmManager
-	dosbin "${OUT}"/tpm_managerd
-	dosbin "${OUT}"/local_data_migration
-
-	# Install seccomp policy files.
-	insinto /usr/share/policy
-	newins server/tpm_managerd-seccomp-${ARCH}.policy tpm_managerd-seccomp.policy
-}
-
-platform_pkg_test() {
-	local tests=(
-		tpm_manager_testrunner
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/tpm_manager/tpm_manager-0.0.1-r2355.ebuild b/chromeos-base/tpm_manager/tpm_manager-0.0.1-r2355.ebuild
new file mode 100644
index 0000000..5c6c685f
--- /dev/null
+++ b/chromeos-base/tpm_manager/tpm_manager-0.0.1-r2355.ebuild
@@ -0,0 +1,107 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+CROS_WORKON_COMMIT="7e56fbcc6f3c9e9ba98bf43a52940100e5fbc918"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "1e9ca239fab09ba22b58e4a22d63e2ede865b159" "26e3713c1f2916a87c54f5aa50da42d121f1a5a3" "e08a2eb734e33827dffeecf57eca046cd1091373" "659b97d9c804b358f4bd27925620d4dd1cee8fc7" "d8da1275feb26afab354f35df7316b3840f8330b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk libhwsec libhwsec-foundation libtpmcrypto metrics tpm_manager trunks .gn"
+
+PLATFORM_SUBDIR="tpm_manager"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Daemon to manage TPM ownership."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_manager/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="*"
+IUSE="pinweaver_csme test tpm tpm_dynamic tpm2 fuzzer"
+
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
+
+RDEPEND="
+	tpm? ( app-crypt/trousers )
+	tpm2? (
+		chromeos-base/trunks
+	)
+	>=chromeos-base/metrics-0.0.1-r3152
+	chromeos-base/minijail
+	chromeos-base/libhwsec
+	chromeos-base/libtpmcrypto
+	chromeos-base/system_api:=[fuzzer?]
+	chromeos-base/tpm_manager-client
+	"
+
+DEPEND="${RDEPEND}
+	tpm2? ( chromeos-base/trunks[test?] )
+	fuzzer? ( dev-libs/libprotobuf-mutator )
+	"
+
+pkg_preinst() {
+	enewuser tpm_manager
+	enewgroup tpm_manager
+}
+
+src_install() {
+	# Install D-Bus configuration file.
+	insinto /etc/dbus-1/system.d
+	doins server/org.chromium.TpmManager.conf
+
+	# Install upstart config file.
+	insinto /etc/init
+	doins server/tpm_managerd.conf
+	if use tpm_dynamic; then
+		conds=("started no-tpm-checker")
+		if use tpm; then
+			conds+=("started tcsd")
+		fi
+		if use tpm2; then
+			conds+=("started trunksd")
+		fi
+		cond=$(printf " or %s" "${conds[@]}")
+		cond=${cond:4}
+		sed -i "s/started tcsd/(${cond})/" \
+			"${D}/etc/init/tpm_managerd.conf" ||
+			die "Can't replace 'started tcsd' with '${cond}' in tpm_managerd.conf"
+	elif use tpm2; then
+		dep_job="trunksd"
+		if use pinweaver_csme; then
+			dep_job="tpm_tunneld"
+		fi
+		sed -i "s/started tcsd/started ${dep_job}/" \
+			"${D}/etc/init/tpm_managerd.conf" ||
+			die "Can't replace tcsd with ${dep_job} in tpm_managerd.conf"
+	fi
+
+	# Install the executables provided by TpmManager
+	dosbin "${OUT}"/tpm_managerd
+	dosbin "${OUT}"/local_data_migration
+
+	# Install seccomp policy files.
+	insinto /usr/share/policy
+	newins server/tpm_managerd-seccomp-${ARCH}.policy tpm_managerd-seccomp.policy
+
+	# Install fuzzer.
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/tpm_manager_service_fuzzer
+}
+
+platform_pkg_test() {
+	local tests=(
+		tpm_manager_testrunner
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/tpm_manager/tpm_manager-9999.ebuild b/chromeos-base/tpm_manager/tpm_manager-9999.ebuild
index fe186f4..2afcd08 100644
--- a/chromeos-base/tpm_manager/tpm_manager-9999.ebuild
+++ b/chromeos-base/tpm_manager/tpm_manager-9999.ebuild
@@ -8,7 +8,7 @@
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_OUTOFTREE_BUILD=1
 # TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk libhwsec libtpmcrypto metrics tpm_manager trunks .gn"
+CROS_WORKON_SUBTREE="common-mk libhwsec libhwsec-foundation libtpmcrypto metrics tpm_manager trunks .gn"
 
 PLATFORM_SUBDIR="tpm_manager"
 
@@ -20,12 +20,15 @@
 LICENSE="Apache-2.0"
 SLOT="0"
 KEYWORDS="~*"
-IUSE="pinweaver_csme test tpm tpm2 fuzzer"
+IUSE="pinweaver_csme test tpm tpm_dynamic tpm2 fuzzer"
 
-REQUIRED_USE="tpm2? ( !tpm )"
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
 
 RDEPEND="
-	!tpm2? ( app-crypt/trousers )
+	tpm? ( app-crypt/trousers )
 	tpm2? (
 		chromeos-base/trunks
 	)
@@ -39,6 +42,7 @@
 
 DEPEND="${RDEPEND}
 	tpm2? ( chromeos-base/trunks[test?] )
+	fuzzer? ( dev-libs/libprotobuf-mutator )
 	"
 
 pkg_preinst() {
@@ -54,7 +58,20 @@
 	# Install upstart config file.
 	insinto /etc/init
 	doins server/tpm_managerd.conf
-	if use tpm2; then
+	if use tpm_dynamic; then
+		conds=("started no-tpm-checker")
+		if use tpm; then
+			conds+=("started tcsd")
+		fi
+		if use tpm2; then
+			conds+=("started trunksd")
+		fi
+		cond=$(printf " or %s" "${conds[@]}")
+		cond=${cond:4}
+		sed -i "s/started tcsd/(${cond})/" \
+			"${D}/etc/init/tpm_managerd.conf" ||
+			die "Can't replace 'started tcsd' with '${cond}' in tpm_managerd.conf"
+	elif use tpm2; then
 		dep_job="trunksd"
 		if use pinweaver_csme; then
 			dep_job="tpm_tunneld"
@@ -71,6 +88,9 @@
 	# Install seccomp policy files.
 	insinto /usr/share/policy
 	newins server/tpm_managerd-seccomp-${ARCH}.policy tpm_managerd-seccomp.policy
+
+	# Install fuzzer.
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/tpm_manager_service_fuzzer
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/tpm_softclear_utils/tpm_softclear_utils-0.0.1-r243.ebuild b/chromeos-base/tpm_softclear_utils/tpm_softclear_utils-0.0.1-r243.ebuild
deleted file mode 100644
index 9c3849a..0000000
--- a/chromeos-base/tpm_softclear_utils/tpm_softclear_utils-0.0.1-r243.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 2019 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="ecd28d2c26fbe86b6822c6d6afb80f118a8f7f03"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "7797f13629c40bd876baedd3bf20a36d625d5e4f" "a06a3f47395fb7b584188c6852764bc773e5497e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk tpm_softclear_utils trunks .gn"
-
-PLATFORM_SUBDIR="tpm_softclear_utils"
-
-inherit cros-workon platform
-
-DESCRIPTION="Utilities for soft-clearing TPM. This package resides in test images only."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_softclear_utils/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test tpm tpm2"
-REQUIRED_USE="tpm2? ( !tpm )"
-
-RDEPEND="
-	tpm2? (
-		chromeos-base/trunks:=
-	)
-	!tpm2? (
-		app-crypt/trousers:=
-	)
-"
-
-DEPEND="${RDEPEND}
-	tpm2? (
-		chromeos-base/system_api:=
-		chromeos-base/trunks:=[test?]
-	)
-"
-
-src_install() {
-	# Installs the utilities executable.
-	insinto /usr/local/bin
-	doins "${OUT}/tpm_softclear"
-	chmod u+x "${D}/usr/local/bin/tpm_softclear"
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/tpm_softclear_utils_testrunner"
-}
diff --git a/chromeos-base/tpm_softclear_utils/tpm_softclear_utils-0.0.1-r302.ebuild b/chromeos-base/tpm_softclear_utils/tpm_softclear_utils-0.0.1-r302.ebuild
new file mode 100644
index 0000000..8afaeac
--- /dev/null
+++ b/chromeos-base/tpm_softclear_utils/tpm_softclear_utils-0.0.1-r302.ebuild
@@ -0,0 +1,56 @@
+# Copyright 2019 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="7e56fbcc6f3c9e9ba98bf43a52940100e5fbc918"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "1e9ca239fab09ba22b58e4a22d63e2ede865b159" "1ef556d83a5e2ce0fa6eef66d8e8b2ced65cf09b" "d8da1275feb26afab354f35df7316b3840f8330b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk libhwsec libhwsec-foundation tpm_softclear_utils trunks .gn"
+
+PLATFORM_SUBDIR="tpm_softclear_utils"
+
+inherit cros-workon platform
+
+DESCRIPTION="Utilities for soft-clearing TPM. This package resides in test images only."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_softclear_utils/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test tpm tpm_dynamic tpm2"
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
+
+RDEPEND="
+	tpm2? (
+		chromeos-base/trunks:=
+	)
+	tpm? (
+		app-crypt/trousers:=
+	)
+	chromeos-base/libhwsec-foundation:=
+"
+
+DEPEND="${RDEPEND}
+	tpm2? (
+		chromeos-base/system_api:=
+		chromeos-base/trunks:=[test?]
+	)
+"
+
+src_install() {
+	# Installs the utilities executable.
+	insinto /usr/local/bin
+	doins "${OUT}/tpm_softclear"
+	chmod u+x "${D}/usr/local/bin/tpm_softclear"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/tpm_softclear_utils_testrunner"
+}
diff --git a/chromeos-base/tpm_softclear_utils/tpm_softclear_utils-9999.ebuild b/chromeos-base/tpm_softclear_utils/tpm_softclear_utils-9999.ebuild
index 0a314b1..31e61a1 100644
--- a/chromeos-base/tpm_softclear_utils/tpm_softclear_utils-9999.ebuild
+++ b/chromeos-base/tpm_softclear_utils/tpm_softclear_utils-9999.ebuild
@@ -8,7 +8,7 @@
 CROS_WORKON_LOCALNAME="platform2"
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk tpm_softclear_utils trunks .gn"
+CROS_WORKON_SUBTREE="common-mk libhwsec libhwsec-foundation tpm_softclear_utils trunks .gn"
 
 PLATFORM_SUBDIR="tpm_softclear_utils"
 
@@ -19,16 +19,20 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="test tpm tpm2"
-REQUIRED_USE="tpm2? ( !tpm )"
+IUSE="test tpm tpm_dynamic tpm2"
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
 
 RDEPEND="
 	tpm2? (
 		chromeos-base/trunks:=
 	)
-	!tpm2? (
+	tpm? (
 		app-crypt/trousers:=
 	)
+	chromeos-base/libhwsec-foundation:=
 "
 
 DEPEND="${RDEPEND}
diff --git a/chromeos-base/tremplin/tremplin-0.0.1-r136.ebuild b/chromeos-base/tremplin/tremplin-0.0.1-r136.ebuild
deleted file mode 100644
index fc1ea56..0000000
--- a/chromeos-base/tremplin/tremplin-0.0.1-r136.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="f0cce85b1b1d33464efc406d25f36b41ec50c1ff"
-CROS_WORKON_TREE="d8596cb320788c979bbb9cfb0401124793b180df"
-CROS_WORKON_PROJECT="chromiumos/platform/tremplin"
-CROS_WORKON_LOCALNAME="platform/tremplin"
-CROS_GO_BINARIES="chromiumos/tremplin"
-
-CROS_GO_TEST=(
-	"chromiumos/tremplin/..."
-)
-CROS_GO_VET=(
-	"${CROS_GO_TEST[@]}"
-)
-
-inherit cros-workon cros-go
-
-DESCRIPTION="Tremplin LXD client with gRPC support"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tremplin/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-COMMON_DEPEND="
-	app-emulation/lxd:0
-	app-emulation/lxd:4
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/vm_guest_tools:=
-	chromeos-base/vm_protos:=
-	dev-go/go-libaudit:=
-	dev-go/go-sys:=
-	dev-go/grpc:=
-	dev-go/kobject:=
-	dev-go/netlink:=
-	dev-go/vsock:=
-	dev-go/yaml:=
-"
-
-RDEPEND="${COMMON_DEPEND}"
diff --git a/chromeos-base/tremplin/tremplin-0.0.1-r141.ebuild b/chromeos-base/tremplin/tremplin-0.0.1-r141.ebuild
new file mode 100644
index 0000000..0f9db76
--- /dev/null
+++ b/chromeos-base/tremplin/tremplin-0.0.1-r141.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="84673952cfbf747f4c62ad9287819efc1751e560"
+CROS_WORKON_TREE="14b3f006b2aff2315d4ae5390cce7bae39de714b"
+CROS_WORKON_PROJECT="chromiumos/platform/tremplin"
+CROS_WORKON_LOCALNAME="platform/tremplin"
+CROS_GO_BINARIES="chromiumos/tremplin"
+
+CROS_GO_TEST=(
+	"chromiumos/tremplin/..."
+)
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+inherit cros-workon cros-go
+
+DESCRIPTION="Tremplin LXD client with gRPC support"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/tremplin/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+COMMON_DEPEND="
+	app-emulation/lxd:0
+	app-emulation/lxd:4
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/vm_guest_tools:=
+	chromeos-base/vm_protos:=
+	dev-go/go-libaudit:=
+	dev-go/go-sys:=
+	dev-go/grpc:=
+	dev-go/kobject:=
+	dev-go/netlink:=
+	dev-go/vsock:=
+	dev-go/yaml:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
diff --git a/chromeos-base/trunks/trunks-0.0.1-r2968.ebuild b/chromeos-base/trunks/trunks-0.0.1-r2968.ebuild
deleted file mode 100644
index b56ff5d..0000000
--- a/chromeos-base/trunks/trunks-0.0.1-r2968.ebuild
+++ /dev/null
@@ -1,148 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="ecd28d2c26fbe86b6822c6d6afb80f118a8f7f03"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "81dfbbc1756a3b4224b447e7bf10a916d97c4f66" "0b612d0f1e8dbe59a5549b476f1e681e0b7fe94e" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "a06a3f47395fb7b584188c6852764bc773e5497e" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug/1184685): "libhwsec" is not necessary; remove it after solving
-# the bug.
-CROS_WORKON_SUBTREE="common-mk libhwsec libhwsec-foundation metrics trunks .gn"
-
-PLATFORM_SUBDIR="trunks"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Trunks service for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/trunks/"
-
-LICENSE="Apache-2.0"
-KEYWORDS="*"
-IUSE="
-	cr50_onboard
-	csme_emulator
-	fuzzer
-	ftdi_tpm
-	generic_tpm2
-	pinweaver_csme
-	test
-	ti50_onboard
-	tpm2_simulator
-	vtpm_proxy
-"
-
-# This depends on protobuf because it uses protoc and needs to be rebuilt
-# whenever the protobuf library is updated since generated source files may be
-# incompatible across different versions of the protobuf library.
-COMMON_DEPEND="
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/minijail:=
-	chromeos-base/power_manager-client:=
-	ftdi_tpm? ( dev-embedded/libftdi:= )
-	tpm2_simulator? (
-		chromeos-base/tpm2:=
-		vtpm_proxy? ( chromeos-base/tpm2-simulator:= )
-	)
-	dev-libs/protobuf:=
-	fuzzer? (
-		dev-cpp/gtest:=
-	)
-	"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	cr50_onboard? ( chromeos-base/chromeos-cr50 )
-	ti50_onboard? ( chromeos-base/chromeos-ti50 )
-	!app-crypt/tpm-tools
-	chromeos-base/libhwsec-foundation
-	"
-
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/chromeos-ec-headers:=
-	"
-
-src_install() {
-	insinto /etc/dbus-1/system.d
-	doins org.chromium.Trunks.conf
-
-	insinto /etc/init
-	if use tpm2_simulator && ! use vtpm_proxy; then
-		newins trunksd.conf.tpm2_simulator trunksd.conf
-	elif use cr50_onboard || use ti50_onboard; then
-		newins trunksd.conf.cr50 trunksd.conf
-	else
-		doins trunksd.conf
-	fi
-
-	if use pinweaver_csme && use generic_tpm2; then
-		newins csme/tpm_tunneld.conf tpm_tunneld.conf
-	fi
-
-	dosbin "${OUT}"/pinweaver_client
-	dosbin "${OUT}"/trunks_client
-	dosbin "${OUT}"/trunks_send
-	dosbin tpm_version
-	dosbin "${OUT}"/trunksd
-	dolib.so "${OUT}"/lib/libtrunks.so
-	# trunks_test library implements trunks mocks which
-	# are used by unittest and fuzzer.
-	if use test || use fuzzer; then
-		dolib.a "${OUT}"/libtrunks_test.a
-	fi
-
-	if use pinweaver_csme && use generic_tpm2; then
-		dosbin "${OUT}"/pinweaver_provision
-		dosbin "${OUT}"/tpm_tunneld
-	fi
-
-	insinto /usr/share/policy
-	newins trunksd-seccomp-${ARCH}.policy trunksd-seccomp.policy
-
-	if use pinweaver_csme && use generic_tpm2; then
-		newins csme/tpm_tunneld-seccomp-${ARCH}.policy tpm_tunneld-seccomp.policy
-	fi
-
-	insinto /usr/include/trunks
-	doins *.h
-	doins "${OUT}"/gen/include/trunks/*.h
-
-	insinto /usr/include/proto
-	doins "${S}"/pinweaver.proto
-
-	insinto /usr/include/chromeos/dbus/trunks
-	doins "${S}"/interface.proto
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "${OUT}"/obj/trunks/libtrunks.pc
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_creation_blob_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS \
-		"${OUT}"/trunks_hmac_authorization_delegate_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_key_blob_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS \
-		"${OUT}"/trunks_password_authorization_delegate_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_resource_manager_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_tpm_pinweaver_fuzzer
-}
-
-platform_pkg_test() {
-	"${S}/generator/generator_test.py" || die
-
-	local tests=(
-		trunks_testrunner
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
-
-pkg_preinst() {
-	enewuser trunks
-	enewgroup trunks
-}
diff --git a/chromeos-base/trunks/trunks-0.0.1-r3053.ebuild b/chromeos-base/trunks/trunks-0.0.1-r3053.ebuild
new file mode 100644
index 0000000..888bb20
--- /dev/null
+++ b/chromeos-base/trunks/trunks-0.0.1-r3053.ebuild
@@ -0,0 +1,171 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="7e56fbcc6f3c9e9ba98bf43a52940100e5fbc918"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "1e9ca239fab09ba22b58e4a22d63e2ede865b159" "e08a2eb734e33827dffeecf57eca046cd1091373" "d8da1275feb26afab354f35df7316b3840f8330b" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug/1184685): "libhwsec" is not necessary; remove it after solving
+# the bug.
+CROS_WORKON_SUBTREE="common-mk libhwsec libhwsec-foundation metrics trunks .gn"
+
+PLATFORM_SUBDIR="trunks"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Trunks service for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/trunks/"
+
+LICENSE="Apache-2.0"
+KEYWORDS="*"
+IUSE="
+	cr50_onboard
+	csme_emulator
+	fuzzer
+	ftdi_tpm
+	generic_tpm2
+	pinweaver_csme
+	test
+	ti50_onboard
+	tpm_dynamic
+	tpm2_simulator
+	vtpm_proxy
+"
+
+# This depends on protobuf because it uses protoc and needs to be rebuilt
+# whenever the protobuf library is updated since generated source files may be
+# incompatible across different versions of the protobuf library.
+COMMON_DEPEND="
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/minijail:=
+	chromeos-base/power_manager-client:=
+	ftdi_tpm? ( dev-embedded/libftdi:= )
+	tpm2_simulator? (
+		chromeos-base/tpm2:=
+		vtpm_proxy? ( chromeos-base/tpm2-simulator:= )
+	)
+	dev-libs/protobuf:=
+	fuzzer? (
+		dev-cpp/gtest:=
+	)
+	"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	cr50_onboard? ( chromeos-base/chromeos-cr50 )
+	ti50_onboard? ( chromeos-base/chromeos-ti50 )
+	generic_tpm2? ( chromeos-base/chromeos-cr50-scripts )
+	!tpm_dynamic? ( !app-crypt/tpm-tools )
+	chromeos-base/libhwsec-foundation
+	"
+
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/chromeos-ec-headers:=
+	"
+
+src_install() {
+	insinto /etc/dbus-1/system.d
+	doins org.chromium.Trunks.conf
+
+	insinto /etc/init
+	if use tpm2_simulator && ! use vtpm_proxy; then
+		newins trunksd.conf.tpm2_simulator trunksd.conf
+	elif use cr50_onboard || use ti50_onboard; then
+		newins trunksd.conf.cr50 trunksd.conf
+	else
+		doins trunksd.conf
+	fi
+
+	if use tpm_dynamic; then
+		sed -i '/env TPM_DYNAMIC=/s:=.*:=true:' \
+			"${D}/etc/init/trunksd.conf" ||
+			die "Can't activate tpm_dynamic in trunksd.conf"
+	fi
+
+	if use pinweaver_csme && use generic_tpm2; then
+		newins csme/tpm_tunneld.conf tpm_tunneld.conf
+	fi
+
+	dosbin "${OUT}"/pinweaver_client
+	dosbin "${OUT}"/trunks_client
+	dosbin "${OUT}"/trunks_send
+	if use tpm_dynamic; then
+		newsbin tpm_version tpm2_version
+	else
+		dosbin tpm_version
+	fi
+	dosbin "${OUT}"/trunksd
+	dolib.so "${OUT}"/lib/libtrunks.so
+	# trunks_test library implements trunks mocks which
+	# are used by unittest and fuzzer.
+	if use test || use fuzzer; then
+		dolib.a "${OUT}"/libtrunks_test.a
+	fi
+
+	if use pinweaver_csme && use generic_tpm2; then
+		dosbin "${OUT}"/pinweaver_provision
+		dosbin "${OUT}"/tpm_tunneld
+	fi
+
+	insinto /usr/share/policy
+	newins "trunksd-seccomp-${ARCH}.policy" trunksd-seccomp.policy
+
+	if use pinweaver_csme && use generic_tpm2; then
+		newins "csme/tpm_tunneld-seccomp-${ARCH}.policy" tpm_tunneld-seccomp.policy
+	fi
+
+	insinto /usr/include/trunks
+	doins *.h
+	doins "${OUT}"/gen/include/trunks/*.h
+
+	insinto /usr/include/proto
+	doins "${S}"/pinweaver.proto
+
+	insinto /usr/include/chromeos/dbus/trunks
+	doins "${S}"/trunks_interface.proto
+
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "${OUT}"/obj/trunks/libtrunks.pc
+	local fuzzer_component_id="886041"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_creation_blob_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS \
+		"${OUT}"/trunks_hmac_authorization_delegate_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_key_blob_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS \
+		"${OUT}"/trunks_password_authorization_delegate_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_resource_manager_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_tpm_pinweaver_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	"${S}/generator/generator_test.py" || die
+
+	local tests=(
+		trunks_testrunner
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
+
+pkg_preinst() {
+	enewuser trunks
+	enewgroup trunks
+	if use pinweaver_csme && use generic_tpm2; then
+		enewuser tpm_tunneld
+		enewgroup tpm_tunneld
+	fi
+}
diff --git a/chromeos-base/trunks/trunks-9999.ebuild b/chromeos-base/trunks/trunks-9999.ebuild
index bfc274f..73f53bd 100644
--- a/chromeos-base/trunks/trunks-9999.ebuild
+++ b/chromeos-base/trunks/trunks-9999.ebuild
@@ -29,6 +29,7 @@
 	pinweaver_csme
 	test
 	ti50_onboard
+	tpm_dynamic
 	tpm2_simulator
 	vtpm_proxy
 "
@@ -55,7 +56,8 @@
 	${COMMON_DEPEND}
 	cr50_onboard? ( chromeos-base/chromeos-cr50 )
 	ti50_onboard? ( chromeos-base/chromeos-ti50 )
-	!app-crypt/tpm-tools
+	generic_tpm2? ( chromeos-base/chromeos-cr50-scripts )
+	!tpm_dynamic? ( !app-crypt/tpm-tools )
 	chromeos-base/libhwsec-foundation
 	"
 
@@ -77,6 +79,12 @@
 		doins trunksd.conf
 	fi
 
+	if use tpm_dynamic; then
+		sed -i '/env TPM_DYNAMIC=/s:=.*:=true:' \
+			"${D}/etc/init/trunksd.conf" ||
+			die "Can't activate tpm_dynamic in trunksd.conf"
+	fi
+
 	if use pinweaver_csme && use generic_tpm2; then
 		newins csme/tpm_tunneld.conf tpm_tunneld.conf
 	fi
@@ -84,7 +92,11 @@
 	dosbin "${OUT}"/pinweaver_client
 	dosbin "${OUT}"/trunks_client
 	dosbin "${OUT}"/trunks_send
-	dosbin tpm_version
+	if use tpm_dynamic; then
+		newsbin tpm_version tpm2_version
+	else
+		dosbin tpm_version
+	fi
 	dosbin "${OUT}"/trunksd
 	dolib.so "${OUT}"/lib/libtrunks.so
 	# trunks_test library implements trunks mocks which
@@ -99,10 +111,10 @@
 	fi
 
 	insinto /usr/share/policy
-	newins trunksd-seccomp-${ARCH}.policy trunksd-seccomp.policy
+	newins "trunksd-seccomp-${ARCH}.policy" trunksd-seccomp.policy
 
 	if use pinweaver_csme && use generic_tpm2; then
-		newins csme/tpm_tunneld-seccomp-${ARCH}.policy tpm_tunneld-seccomp.policy
+		newins "csme/tpm_tunneld-seccomp-${ARCH}.policy" tpm_tunneld-seccomp.policy
 	fi
 
 	insinto /usr/include/trunks
@@ -113,18 +125,25 @@
 	doins "${S}"/pinweaver.proto
 
 	insinto /usr/include/chromeos/dbus/trunks
-	doins "${S}"/interface.proto
+	doins "${S}"/trunks_interface.proto
 
 	insinto "/usr/$(get_libdir)/pkgconfig"
 	doins "${OUT}"/obj/trunks/libtrunks.pc
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_creation_blob_fuzzer
+	local fuzzer_component_id="886041"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_creation_blob_fuzzer \
+		--comp "${fuzzer_component_id}"
 	platform_fuzzer_install "${S}"/OWNERS \
-		"${OUT}"/trunks_hmac_authorization_delegate_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_key_blob_fuzzer
+		"${OUT}"/trunks_hmac_authorization_delegate_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_key_blob_fuzzer \
+		--comp "${fuzzer_component_id}"
 	platform_fuzzer_install "${S}"/OWNERS \
-		"${OUT}"/trunks_password_authorization_delegate_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_resource_manager_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_tpm_pinweaver_fuzzer
+		"${OUT}"/trunks_password_authorization_delegate_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_resource_manager_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/trunks_tpm_pinweaver_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
@@ -143,4 +162,8 @@
 pkg_preinst() {
 	enewuser trunks
 	enewgroup trunks
+	if use pinweaver_csme && use generic_tpm2; then
+		enewuser tpm_tunneld
+		enewgroup tpm_tunneld
+	fi
 }
diff --git a/chromeos-base/typecd/typecd-0.0.1-r180.ebuild b/chromeos-base/typecd/typecd-0.0.1-r180.ebuild
deleted file mode 100644
index 1f4faae..0000000
--- a/chromeos-base/typecd/typecd-0.0.1-r180.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "94b56d6d00224f6b44d9f6c77cd490426acc7c17" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk typecd .gn"
-
-PLATFORM_SUBDIR="typecd"
-
-inherit cros-workon platform user
-
-DESCRIPTION="Chrome OS USB Type C daemon"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/typecd/"
-
-LICENSE="BSD-Google"
-SLOT=0
-KEYWORDS="*"
-IUSE="+seccomp"
-
-RDEPEND=">=chromeos-base/metrics-0.0.1-r3152:="
-
-DEPEND="
-	${RDEPEND}
-	chromeos-base/debugd-client:=
-	chromeos-base/session_manager-client:=
-	chromeos-base/system_api:=
-"
-
-src_install() {
-	dobin "${OUT}"/typecd
-
-	insinto /usr/share/dbus-1/system-services
-	doins dbus/org.chromium.typecd.service
-
-	insinto /etc/init
-	doins init/*.conf
-
-	# Install seccomp policy files.
-	insinto /usr/share/policy
-	if use seccomp; then
-		newins "seccomp/typecd-seccomp-${ARCH}.policy" typecd-seccomp.policy
-		newins "seccomp/ectool_typec-seccomp-${ARCH}.policy" ectool_typec-seccomp.policy
-	fi
-
-	# Install rsyslog config.
-	insinto /etc/rsyslog.d
-	doins rsyslog/rsyslog.typecd.conf
-
-	# Install D-Bus permission config.
-	insinto /etc/dbus-1/system.d
-	doins dbus/typecd.conf
-}
-
-pkg_preinst() {
-	enewuser typecd
-	enewgroup typecd
-
-	# This group is required for debugd EC Type C tool to access /dev/cros_ec.
-	enewgroup cros_ec-access
-	# Add user and group for debugd Type C commands.
-	enewuser typecd_ec
-	enewgroup typecd_ec
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/typecd_testrunner"
-}
diff --git a/chromeos-base/typecd/typecd-0.0.1-r214.ebuild b/chromeos-base/typecd/typecd-0.0.1-r214.ebuild
new file mode 100644
index 0000000..a359724
--- /dev/null
+++ b/chromeos-base/typecd/typecd-0.0.1-r214.ebuild
@@ -0,0 +1,73 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "d8a694da951e80d475cb81e4fd694cf6b01aa714" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk typecd .gn"
+
+PLATFORM_SUBDIR="typecd"
+
+inherit cros-workon platform user
+
+DESCRIPTION="Chrome OS USB Type C daemon"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/typecd/"
+
+LICENSE="BSD-Google"
+SLOT=0
+KEYWORDS="*"
+IUSE="+seccomp"
+
+RDEPEND=">=chromeos-base/metrics-0.0.1-r3152:="
+
+DEPEND="
+	${RDEPEND}
+	chromeos-base/debugd-client:=
+	chromeos-base/session_manager-client:=
+	chromeos-base/system_api:=
+"
+
+src_install() {
+	dobin "${OUT}"/typecd
+
+	insinto /usr/share/dbus-1/system-services
+	doins dbus/org.chromium.typecd.service
+
+	insinto /etc/init
+	doins init/*.conf
+
+	# Install seccomp policy files.
+	insinto /usr/share/policy
+	if use seccomp; then
+		newins "seccomp/typecd-seccomp-${ARCH}.policy" typecd-seccomp.policy
+		newins "seccomp/ectool_typec-seccomp-${ARCH}.policy" ectool_typec-seccomp.policy
+	fi
+
+	# Install rsyslog config.
+	insinto /etc/rsyslog.d
+	doins rsyslog/rsyslog.typecd.conf
+
+	# Install D-Bus permission config.
+	insinto /etc/dbus-1/system.d
+	doins dbus/typecd.conf
+}
+
+pkg_preinst() {
+	enewuser typecd
+	enewgroup typecd
+
+	# This group is required for debugd EC Type C tool to access /dev/cros_ec.
+	enewgroup cros_ec-access
+	# Add user and group for debugd Type C commands.
+	enewuser typecd_ec
+	enewgroup typecd_ec
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/typecd_testrunner"
+}
diff --git a/chromeos-base/u2fd/u2fd-0.0.1-r1165.ebuild b/chromeos-base/u2fd/u2fd-0.0.1-r1165.ebuild
deleted file mode 100644
index 35bf1d8..0000000
--- a/chromeos-base/u2fd/u2fd-0.0.1-r1165.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="ecd28d2c26fbe86b6822c6d6afb80f118a8f7f03"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a06a3f47395fb7b584188c6852764bc773e5497e" "81dfbbc1756a3b4224b447e7bf10a916d97c4f66" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e4bdb36b8b1e5f01a3bbb9b825a32cf55222bfeb" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_USE_VCSID="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk trunks libhwsec metrics u2fd .gn"
-
-PLATFORM_SUBDIR="u2fd"
-
-inherit cros-workon platform user
-
-DESCRIPTION="U2FHID Emulation Daemon"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/u2fhid"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="fuzzer"
-
-COMMON_DEPEND="
-	chromeos-base/attestation:=
-	chromeos-base/attestation-client:=
-	chromeos-base/cbor:=
-	chromeos-base/libhwsec:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/power_manager-client:=
-	chromeos-base/trunks:=
-	dev-libs/hidapi:=
-"
-
-RDEPEND="${COMMON_DEPEND}"
-
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/attestation-client:=
-	>=chromeos-base/protofiles-0.0.43:=
-	chromeos-base/system_api:=[fuzzer?]
-"
-
-pkg_setup() {
-	# Has to be done in pkg_setup() instead of pkg_preinst() since
-	# src_install() needs the u2f user and group.
-	enewuser "u2f"
-	enewgroup "u2f"
-	cros-workon_pkg_setup
-}
-
-src_install() {
-	dobin "${OUT}"/u2fd
-
-	insinto /etc/init
-	doins init/*.conf
-
-	insinto /etc/dbus-1/system.d
-	doins org.chromium.U2F.conf
-
-	local daemon_store="/etc/daemon-store/u2f"
-	dodir "${daemon_store}"
-	fperms 0700 "${daemon_store}"
-	fowners u2f:u2f "${daemon_store}"
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/u2f_adpu_fuzzer
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/u2fd_test_runner"
-}
diff --git a/chromeos-base/u2fd/u2fd-0.0.1-r1259.ebuild b/chromeos-base/u2fd/u2fd-0.0.1-r1259.ebuild
new file mode 100644
index 0000000..e916c3c0
--- /dev/null
+++ b/chromeos-base/u2fd/u2fd-0.0.1-r1259.ebuild
@@ -0,0 +1,81 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="7e56fbcc6f3c9e9ba98bf43a52940100e5fbc918"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "d8da1275feb26afab354f35df7316b3840f8330b" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "e08a2eb734e33827dffeecf57eca046cd1091373" "11a1a181f7876719e62e7220c7683ee1253aee9f" "1e9ca239fab09ba22b58e4a22d63e2ede865b159" "2bd42cf4f2f41e68c177dfdba095d8d3412fd76c" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_USE_VCSID="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk trunks libhwsec metrics u2fd libhwsec-foundation libhwsec .gn"
+
+PLATFORM_SUBDIR="u2fd"
+
+inherit cros-workon platform user
+
+DESCRIPTION="U2FHID Emulation Daemon"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/u2fhid"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="fuzzer"
+
+COMMON_DEPEND="
+	chromeos-base/attestation:=
+	chromeos-base/attestation-client:=
+	chromeos-base/cbor:=
+	chromeos-base/cryptohome-client:=
+	chromeos-base/libhwsec:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/power_manager-client:=
+	chromeos-base/trunks:=
+	dev-libs/hidapi:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/attestation-client:=
+	>=chromeos-base/protofiles-0.0.43:=
+	chromeos-base/system_api:=[fuzzer?]
+"
+
+pkg_setup() {
+	# Has to be done in pkg_setup() instead of pkg_preinst() since
+	# src_install() needs the u2f user and group.
+	enewuser "u2f"
+	enewgroup "u2f"
+	cros-workon_pkg_setup
+}
+
+src_install() {
+	dobin "${OUT}"/u2fd
+
+	insinto /etc/init
+	doins init/*.conf
+
+	insinto /etc/dbus-1/system.d
+	doins org.chromium.U2F.conf
+
+	local daemon_store="/etc/daemon-store/u2f"
+	dodir "${daemon_store}"
+	fperms 0700 "${daemon_store}"
+	fowners u2f:u2f "${daemon_store}"
+
+	local fuzzer_component_id="886041"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/u2f_apdu_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/u2fhid_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/u2f_msg_handler_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/u2f_webauthn_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/u2fd_test_runner"
+}
diff --git a/chromeos-base/u2fd/u2fd-9999.ebuild b/chromeos-base/u2fd/u2fd-9999.ebuild
index f56c418..41190ff 100644
--- a/chromeos-base/u2fd/u2fd-9999.ebuild
+++ b/chromeos-base/u2fd/u2fd-9999.ebuild
@@ -8,7 +8,7 @@
 CROS_WORKON_OUTOFTREE_BUILD=1
 CROS_WORKON_INCREMENTAL_BUILD=1
 # TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk trunks libhwsec metrics u2fd .gn"
+CROS_WORKON_SUBTREE="common-mk trunks libhwsec metrics u2fd libhwsec-foundation libhwsec .gn"
 
 PLATFORM_SUBDIR="u2fd"
 
@@ -25,6 +25,7 @@
 	chromeos-base/attestation:=
 	chromeos-base/attestation-client:=
 	chromeos-base/cbor:=
+	chromeos-base/cryptohome-client:=
 	chromeos-base/libhwsec:=
 	>=chromeos-base/metrics-0.0.1-r3152:=
 	chromeos-base/power_manager-client:=
@@ -62,7 +63,15 @@
 	fperms 0700 "${daemon_store}"
 	fowners u2f:u2f "${daemon_store}"
 
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/u2f_adpu_fuzzer
+	local fuzzer_component_id="886041"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/u2f_apdu_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/u2fhid_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/u2f_msg_handler_fuzzer \
+		--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/u2f_webauthn_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/update-utils/update-utils-0.0.1-r53.ebuild b/chromeos-base/update-utils/update-utils-0.0.1-r53.ebuild
deleted file mode 100644
index 0dca9de..0000000
--- a/chromeos-base/update-utils/update-utils-0.0.1-r53.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# This ebuild is for running tast DLC test in the lab and local dev setup.
-# For future DLC autotests, a new installation process needs to be re-designed.
-
-EAPI=6
-
-CROS_WORKON_COMMIT="25c294ed790391292aeaad2c01223f10b21101c7"
-CROS_WORKON_TREE="c5397d8291620771eda0e67f65a17a683c0a5507"
-PYTHON_COMPAT=( python2_7 python3_{6,7} )
-
-CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
-CROS_WORKON_LOCALNAME="platform/dev"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="nebraska"
-
-inherit cros-workon python-r1
-
-DESCRIPTION="A set of utilities for updating Chrome OS."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND="!chromeos-base/gmerge"
-
-# Add an empty src_compile() so we bypass compile stage.
-src_compile() { :; }
-
-src_install() {
-	into /usr/local
-	dobin nebraska/nebraska.py
-
-	insinto /etc/init
-	doins nebraska/nebraska.conf
-}
-
-src_test() {
-	# Run the unit tests.
-	python_test() {
-		"$PYTHON" nebraska/nebraska_unittest.py || die
-	}
-	python_foreach_impl python_test
-}
diff --git a/chromeos-base/update-utils/update-utils-0.0.1-r58.ebuild b/chromeos-base/update-utils/update-utils-0.0.1-r58.ebuild
new file mode 100644
index 0000000..a1dd6b1
--- /dev/null
+++ b/chromeos-base/update-utils/update-utils-0.0.1-r58.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+# This ebuild is for running tast DLC test in the lab and local dev setup.
+# For future DLC autotests, a new installation process needs to be re-designed.
+
+EAPI=6
+
+CROS_WORKON_COMMIT="d04bb7bd38db52b70d199a924301617947efe018"
+CROS_WORKON_TREE="b68ce606576817036151d1802df806eb198f96ec"
+PYTHON_COMPAT=( python2_7 python3_{6,7} )
+
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME="platform/dev"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="nebraska"
+
+inherit cros-workon python-r1
+
+DESCRIPTION="A set of utilities for updating Chrome OS."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="!chromeos-base/gmerge"
+
+# Add an empty src_compile() so we bypass compile stage.
+src_compile() { :; }
+
+src_install() {
+	into /usr/local
+	dobin nebraska/nebraska.py
+
+	insinto /etc/init
+	doins nebraska/nebraska.conf
+}
+
+src_test() {
+	# Run the unit tests.
+	python_test() {
+		"$PYTHON" nebraska/nebraska_unittest.py || die
+	}
+	python_foreach_impl python_test
+}
diff --git a/chromeos-base/update_engine-client/update_engine-client-0.0.1-r1904.ebuild b/chromeos-base/update_engine-client/update_engine-client-0.0.1-r1904.ebuild
deleted file mode 100644
index 8a1f849..0000000
--- a/chromeos-base/update_engine-client/update_engine-client-0.0.1-r1904.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("86174eb4f146aed6d1f5182351f7ed3a25629823" "375fa7a2d8b977c1744f288d0e6b0e4592e2ebbc")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "8147e94e7ebea6c5e875e4722b2e064d0ba861c4")
-CROS_WORKON_LOCALNAME=("platform2" "aosp/system/update_engine")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/system/update_engine")
-CROS_WORKON_EGIT_BRANCH=("main" "master")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/update_engine")
-CROS_WORKON_USE_VCSID=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
-
-PLATFORM_NATIVE_TEST="yes"
-PLATFORM_SUBDIR="update_engine/client-headers"
-
-inherit cros-debug cros-workon platform
-
-DESCRIPTION="Chrome OS Update Engine client library"
-HOMEPAGE="https://chromium.googlesource.com/aosp/platform/system/update_engine/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="cros_host"
-
-RDEPEND="
-	!<chromeos-base/update_engine-0.0.3
-"
-
-BDEPEND="
-	chromeos-base/chromeos-dbus-bindings:=
-"
-
-src_install() {
-	# Install DBus client library.
-	platform_install_dbus_client_lib "update_engine"
-}
diff --git a/chromeos-base/update_engine-client/update_engine-client-0.0.1-r1953.ebuild b/chromeos-base/update_engine-client/update_engine-client-0.0.1-r1953.ebuild
new file mode 100644
index 0000000..f2f4c58
--- /dev/null
+++ b/chromeos-base/update_engine-client/update_engine-client-0.0.1-r1953.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "94ee44fd93035743b6204aefff1f4099b53cbdbd")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "e8f154e1827adae22511d24dad70a3a206d5ba27")
+CROS_WORKON_LOCALNAME=("platform2" "aosp/system/update_engine")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/system/update_engine")
+CROS_WORKON_EGIT_BRANCH=("main" "master")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/update_engine")
+CROS_WORKON_USE_VCSID=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE=("common-mk .gn" "")
+
+PLATFORM_NATIVE_TEST="yes"
+PLATFORM_SUBDIR="update_engine/client-headers"
+
+inherit cros-debug cros-workon platform
+
+DESCRIPTION="Chrome OS Update Engine client library"
+HOMEPAGE="https://chromium.googlesource.com/aosp/platform/system/update_engine/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="cros_host"
+
+RDEPEND="
+	!<chromeos-base/update_engine-0.0.3
+"
+
+BDEPEND="
+	chromeos-base/chromeos-dbus-bindings:=
+"
+
+src_install() {
+	# Install DBus client library.
+	platform_install_dbus_client_lib "update_engine"
+}
diff --git a/chromeos-base/update_engine/update_engine-0.0.3-r3760.ebuild b/chromeos-base/update_engine/update_engine-0.0.3-r3760.ebuild
deleted file mode 100644
index c6bf1de..0000000
--- a/chromeos-base/update_engine/update_engine-0.0.3-r3760.ebuild
+++ /dev/null
@@ -1,142 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("86174eb4f146aed6d1f5182351f7ed3a25629823" "375fa7a2d8b977c1744f288d0e6b0e4592e2ebbc")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "8147e94e7ebea6c5e875e4722b2e064d0ba861c4")
-CROS_WORKON_LOCALNAME=("platform2" "aosp/system/update_engine")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/system/update_engine")
-CROS_WORKON_EGIT_BRANCH=("main" "master")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/update_engine")
-CROS_WORKON_USE_VCSID=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
-
-PLATFORM_SUBDIR="update_engine"
-
-inherit cros-debug cros-workon platform systemd
-
-DESCRIPTION="Chrome OS Update Engine"
-HOMEPAGE="https://chromium.googlesource.com/aosp/platform/system/update_engine/"
-SRC_URI=""
-
-LICENSE="Apache-2.0"
-KEYWORDS="*"
-IUSE="cfm cros_host cros_p2p dlc fuzzer -hwid_override minios +power_management systemd"
-
-COMMON_DEPEND="
-	app-arch/bzip2:=
-	chromeos-base/chromeos-ca-certificates:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/vboot_reference:=
-	cros_p2p? ( chromeos-base/p2p:= )
-	dev-libs/expat:=
-	dev-libs/openssl:=
-	dev-libs/protobuf:=
-	dev-libs/xz-embedded:=
-	dev-util/bsdiff:=
-	dev-util/puffin:=
-	net-misc/curl:=
-	sys-apps/rootdev:="
-
-DEPEND="
-	app-arch/xz-utils:=
-	chromeos-base/debugd-client:=
-	dlc? ( chromeos-base/dlcservice-client:= )
-	chromeos-base/power_manager-client:=
-	chromeos-base/session_manager-client:=
-	chromeos-base/shill-client:=
-	chromeos-base/system_api:=[fuzzer?]
-	chromeos-base/update_engine-client:=
-	test? ( sys-fs/squashfs-tools )
-	${COMMON_DEPEND}"
-
-DELTA_GENERATOR_RDEPEND="
-	app-arch/unzip:=
-	app-arch/xz-utils:=
-	sys-libs/e2fsprogs-libs:=
-	sys-fs/squashfs-tools
-"
-
-RDEPEND="
-	!cros_host? ( chromeos-base/chromeos-installer )
-	${COMMON_DEPEND}
-	cros_host? ( ${DELTA_GENERATOR_RDEPEND} )
-	power_management? ( chromeos-base/power_manager:= )
-	virtual/update-policy:=
-"
-
-platform_pkg_test() {
-	local unittests_binary="${OUT}"/update_engine_unittests
-
-	# The unittests will try to exec `./helpers`, so make sure we're in
-	# the right dir to execute things.
-	cd "${OUT}"
-	# The tests also want keys to be in the current dir.
-	# .pub.pem files are generated on the "gen" directory.
-	cp "${S}"/unittest_key*.pem ./ || die
-	cp gen/include/update_engine/unittest_key*.pub.pem ./ || die
-
-	# The unit tests check to make sure the minor version value in
-	# update_engine.conf match the constants in update engine, so we need to be
-	# able to access this file.
-	cp "${S}/update_engine.conf" ./
-
-	# If GTEST_FILTER isn't provided, we run two subsets of tests
-	# separately: the set of non-privileged  tests (run normally)
-	# followed by the set of privileged tests (run as root).
-	# Otherwise, we pass the GTEST_FILTER environment variable as
-	# an argument and run all the tests as root; while this might
-	# lead to tests running with excess privileges, it is necessary
-	# in order to be able to run every test, including those that
-	# need to be run with root privileges.
-	if [[ -z "${GTEST_FILTER}" ]]; then
-		platform_test "run" "${unittests_binary}" 0 '-*.RunAsRoot*'
-		platform_test "run" "${unittests_binary}" 1 '*.RunAsRoot*'
-	else
-		platform_test "run" "${unittests_binary}" 1 "${GTEST_FILTER}"
-	fi
-
-	for f in "omaha_request_action" "delta_performer"; do
-		platform_fuzzer_test "${OUT}/update_engine_${f}_fuzzer"
-	done
-}
-
-src_install() {
-	dosbin "${OUT}"/update_engine
-	dobin "${OUT}"/update_engine_client
-
-	if use cros_host; then
-		dobin "${OUT}"/delta_generator
-	fi
-
-	insinto /etc
-	newins update_engine.conf.chromeos update_engine.conf
-
-	if use systemd; then
-		systemd_dounit "${FILESDIR}"/update-engine.service
-		systemd_enable_service multi-user.target update-engine.service
-	else
-		# Install upstart script
-		insinto /etc/init
-		doins init/update-engine.conf
-	fi
-
-	# Install DBus configuration
-	insinto /etc/dbus-1/system.d
-	doins UpdateEngine.conf
-
-	# TODO(b/182168271): Remove minios flag and public key from update_engine.
-	# Add the public key only when signing for MiniOs.
-	if use minios; then
-		insinto "/build/initramfs"
-		doins scripts/update_payload/update-payload-key.pub.pem
-	fi
-
-	platform_fuzzer_install "${S}"/OWNERS \
-				"${OUT}"/update_engine_omaha_request_action_fuzzer \
-				--dict "${S}"/fuzz/xml.dict
-	platform_fuzzer_install "${S}"/OWNERS \
-				"${OUT}"/update_engine_delta_performer_fuzzer
-}
diff --git a/chromeos-base/update_engine/update_engine-0.0.3-r3838.ebuild b/chromeos-base/update_engine/update_engine-0.0.3-r3838.ebuild
new file mode 100644
index 0000000..8574447
--- /dev/null
+++ b/chromeos-base/update_engine/update_engine-0.0.3-r3838.ebuild
@@ -0,0 +1,146 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("848f8415ddf1841a24faf4deaf6c3d63821b036b" "94ee44fd93035743b6204aefff1f4099b53cbdbd")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "5053293c8acdb133cff9f0893424aca79679a148" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "e8f154e1827adae22511d24dad70a3a206d5ba27")
+CROS_WORKON_LOCALNAME=("platform2" "aosp/system/update_engine")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/system/update_engine")
+CROS_WORKON_EGIT_BRANCH=("main" "master")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/update_engine")
+CROS_WORKON_USE_VCSID=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE=("common-mk diagnostics .gn" "")
+
+PLATFORM_SUBDIR="update_engine"
+
+inherit cros-debug cros-workon platform systemd
+
+DESCRIPTION="Chrome OS Update Engine"
+HOMEPAGE="https://chromium.googlesource.com/aosp/platform/system/update_engine/"
+SRC_URI=""
+
+LICENSE="Apache-2.0"
+KEYWORDS="*"
+IUSE="cfm cros_host cros_p2p dlc fuzzer hw_details -hwid_override minios +power_management systemd"
+
+COMMON_DEPEND="
+	app-arch/bzip2:=
+	chromeos-base/chromeos-ca-certificates:=
+	hw_details? ( chromeos-base/diagnostics:= )
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/vboot_reference:=
+	cros_p2p? ( chromeos-base/p2p:= )
+	dev-libs/expat:=
+	dev-libs/openssl:=
+	dev-libs/protobuf:=
+	dev-libs/xz-embedded:=
+	dev-util/bsdiff:=
+	dev-util/puffin:=
+	net-misc/curl:=
+	sys-apps/rootdev:="
+
+DEPEND="
+	app-arch/xz-utils:=
+	chromeos-base/debugd-client:=
+	dlc? ( chromeos-base/dlcservice-client:= )
+	chromeos-base/power_manager-client:=
+	chromeos-base/session_manager-client:=
+	chromeos-base/shill-client:=
+	chromeos-base/system_api:=[fuzzer?]
+	chromeos-base/update_engine-client:=
+	test? ( sys-fs/squashfs-tools )
+	${COMMON_DEPEND}"
+
+DELTA_GENERATOR_RDEPEND="
+	app-arch/unzip:=
+	app-arch/xz-utils:=
+	sys-libs/e2fsprogs-libs:=
+	sys-fs/squashfs-tools
+"
+
+RDEPEND="
+	!cros_host? ( chromeos-base/chromeos-installer )
+	${COMMON_DEPEND}
+	cros_host? ( ${DELTA_GENERATOR_RDEPEND} )
+	power_management? ( chromeos-base/power_manager:= )
+	virtual/update-policy:=
+"
+
+platform_pkg_test() {
+	local unittests_binary="${OUT}"/update_engine_unittests
+
+	# The unittests will try to exec `./helpers`, so make sure we're in
+	# the right dir to execute things.
+	cd "${OUT}"
+	# The tests also want keys to be in the current dir.
+	# .pub.pem files are generated on the "gen" directory.
+	cp "${S}"/unittest_key*.pem ./ || die
+	cp gen/include/update_engine/unittest_key*.pub.pem ./ || die
+
+	# The unit tests check to make sure the minor version value in
+	# update_engine.conf match the constants in update engine, so we need to be
+	# able to access this file.
+	cp "${S}/update_engine.conf" ./
+
+	# If GTEST_FILTER isn't provided, we run two subsets of tests
+	# separately: the set of non-privileged  tests (run normally)
+	# followed by the set of privileged tests (run as root).
+	# Otherwise, we pass the GTEST_FILTER environment variable as
+	# an argument and run all the tests as root; while this might
+	# lead to tests running with excess privileges, it is necessary
+	# in order to be able to run every test, including those that
+	# need to be run with root privileges.
+	if [[ -z "${GTEST_FILTER}" ]]; then
+		platform_test "run" "${unittests_binary}" 0 '-*.RunAsRoot*'
+		platform_test "run" "${unittests_binary}" 1 '*.RunAsRoot*'
+	else
+		platform_test "run" "${unittests_binary}" 1 "${GTEST_FILTER}"
+	fi
+
+	for f in "omaha_request_action" "delta_performer"; do
+		platform_fuzzer_test "${OUT}/update_engine_${f}_fuzzer"
+	done
+}
+
+src_install() {
+	dosbin "${OUT}"/update_engine
+	dobin "${OUT}"/update_engine_client
+
+	if use cros_host; then
+		dobin "${OUT}"/delta_generator
+	fi
+
+	insinto /etc
+	newins update_engine.conf.chromeos update_engine.conf
+
+	if use systemd; then
+		systemd_dounit "${FILESDIR}"/update-engine.service
+		systemd_enable_service multi-user.target update-engine.service
+	else
+		# Install upstart script
+		insinto /etc/init
+		doins init/update-engine.conf
+	fi
+
+	# Install DBus configuration
+	insinto /etc/dbus-1/system.d
+	doins UpdateEngine.conf
+
+	# TODO(b/182168271): Remove minios flag and public key from update_engine.
+	# Add the public key only when signing for MiniOs.
+	if use minios; then
+		insinto "/build/initramfs"
+		doins scripts/update_payload/update-payload-key.pub.pem
+	fi
+
+	local fuzzer_component_id="908319"
+	platform_fuzzer_install "${S}"/OWNERS \
+				"${OUT}"/update_engine_omaha_request_action_fuzzer \
+				--dict "${S}"/fuzz/xml.dict \
+				--comp "${fuzzer_component_id}"
+	platform_fuzzer_install "${S}"/OWNERS \
+				"${OUT}"/update_engine_delta_performer_fuzzer \
+				--comp "${fuzzer_component_id}"
+}
diff --git a/chromeos-base/update_engine/update_engine-9999.ebuild b/chromeos-base/update_engine/update_engine-9999.ebuild
index a1fe931..4913958 100644
--- a/chromeos-base/update_engine/update_engine-9999.ebuild
+++ b/chromeos-base/update_engine/update_engine-9999.ebuild
@@ -9,7 +9,7 @@
 CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/update_engine")
 CROS_WORKON_USE_VCSID=1
 CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
+CROS_WORKON_SUBTREE=("common-mk diagnostics .gn" "")
 
 PLATFORM_SUBDIR="update_engine"
 
@@ -21,11 +21,12 @@
 
 LICENSE="Apache-2.0"
 KEYWORDS="~*"
-IUSE="cfm cros_host cros_p2p dlc fuzzer -hwid_override minios +power_management systemd"
+IUSE="cfm cros_host cros_p2p dlc fuzzer hw_details -hwid_override minios +power_management systemd"
 
 COMMON_DEPEND="
 	app-arch/bzip2:=
 	chromeos-base/chromeos-ca-certificates:=
+	hw_details? ( chromeos-base/diagnostics:= )
 	>=chromeos-base/metrics-0.0.1-r3152:=
 	chromeos-base/vboot_reference:=
 	cros_p2p? ( chromeos-base/p2p:= )
@@ -132,9 +133,12 @@
 		doins scripts/update_payload/update-payload-key.pub.pem
 	fi
 
+	local fuzzer_component_id="908319"
 	platform_fuzzer_install "${S}"/OWNERS \
 				"${OUT}"/update_engine_omaha_request_action_fuzzer \
-				--dict "${S}"/fuzz/xml.dict
+				--dict "${S}"/fuzz/xml.dict \
+				--comp "${fuzzer_component_id}"
 	platform_fuzzer_install "${S}"/OWNERS \
-				"${OUT}"/update_engine_delta_performer_fuzzer
+				"${OUT}"/update_engine_delta_performer_fuzzer \
+				--comp "${fuzzer_component_id}"
 }
diff --git a/chromeos-base/update_payload/update_payload-0.0.1-r388.ebuild b/chromeos-base/update_payload/update_payload-0.0.1-r388.ebuild
deleted file mode 100644
index de7e92a..0000000
--- a/chromeos-base/update_payload/update_payload-0.0.1-r388.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="375fa7a2d8b977c1744f288d0e6b0e4592e2ebbc"
-CROS_WORKON_TREE="8147e94e7ebea6c5e875e4722b2e064d0ba861c4"
-PYTHON_COMPAT=( python3_{6,7} )
-
-CROS_WORKON_LOCALNAME="aosp/system/update_engine"
-CROS_WORKON_PROJECT="aosp/platform/system/update_engine"
-CROS_WORKON_EGIT_BRANCH="master"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-
-inherit cros-workon python-r1
-
-DESCRIPTION="Chrome OS Update Engine Update Payload Scripts"
-HOMEPAGE="https://chromium.googlesource.com/aosp/platform/system/update_engine"
-
-LICENSE="Apache-2.0"
-KEYWORDS="*"
-
-RDEPEND="
-	dev-python/protobuf-python[${PYTHON_USEDEP}]
-	!<chromeos-base/devserver-0.0.3
-"
-DEPEND=""
-
-src_install() {
-	# Install update_payload scripts.
-	install_update_payload() {
-		# TODO(crbug.com/771085): Clear the SYSROOT var as python will use
-		# that to define the sitedir which means we end up installing into
-		# a path like /build/$BOARD/build/$BOARD/xxx.  This is a bug in the
-		# core python logic, but this is breaking moblab, so hack it for now.
-		insinto "$(python_get_sitedir | sed "s:^${SYSROOT}::")/update_payload"
-		doins $(printf '%s\n' scripts/update_payload/*.py | grep -v unittest)
-		doins scripts/update_payload/update-payload-key.pub.pem
-	}
-	python_foreach_impl install_update_payload
-
-	# Install paycheck.py script as check_update_payload.
-	newbin scripts/paycheck.py check_update_payload
-}
-
-src_test() {
-	# Run update_payload unittests.
-	cd "${T}" || die
-	unpack "${S}"/sample_images/{sample_payloads.tar.xz,sample_images.tar.bz2}
-	cd "${S}"/scripts || die
-	python_test() {
-		./run_unittests || die
-	}
-	python_foreach_impl python_test
-}
diff --git a/chromeos-base/update_payload/update_payload-0.0.1-r413.ebuild b/chromeos-base/update_payload/update_payload-0.0.1-r413.ebuild
new file mode 100644
index 0000000..075cdb3
--- /dev/null
+++ b/chromeos-base/update_payload/update_payload-0.0.1-r413.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="94ee44fd93035743b6204aefff1f4099b53cbdbd"
+CROS_WORKON_TREE="e8f154e1827adae22511d24dad70a3a206d5ba27"
+PYTHON_COMPAT=( python3_{6,7} )
+
+CROS_WORKON_LOCALNAME="aosp/system/update_engine"
+CROS_WORKON_PROJECT="aosp/platform/system/update_engine"
+CROS_WORKON_EGIT_BRANCH="master"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+
+inherit cros-workon python-r1
+
+DESCRIPTION="Chrome OS Update Engine Update Payload Scripts"
+HOMEPAGE="https://chromium.googlesource.com/aosp/platform/system/update_engine"
+
+LICENSE="Apache-2.0"
+KEYWORDS="*"
+
+RDEPEND="
+	dev-python/protobuf-python[${PYTHON_USEDEP}]
+	!<chromeos-base/devserver-0.0.3
+"
+DEPEND=""
+
+src_install() {
+	# Install update_payload scripts.
+	install_update_payload() {
+		# TODO(crbug.com/771085): Clear the SYSROOT var as python will use
+		# that to define the sitedir which means we end up installing into
+		# a path like /build/$BOARD/build/$BOARD/xxx.  This is a bug in the
+		# core python logic, but this is breaking moblab, so hack it for now.
+		insinto "$(python_get_sitedir | sed "s:^${SYSROOT}::")/update_payload"
+		doins $(printf '%s\n' scripts/update_payload/*.py | grep -v unittest)
+		doins scripts/update_payload/update-payload-key.pub.pem
+	}
+	python_foreach_impl install_update_payload
+
+	# Install paycheck.py script as check_update_payload.
+	newbin scripts/paycheck.py check_update_payload
+}
+
+src_test() {
+	# Run update_payload unittests.
+	cd "${T}" || die
+	unpack "${S}"/sample_images/{sample_payloads.tar.xz,sample_images.tar.bz2}
+	cd "${S}"/scripts || die
+	python_test() {
+		./run_unittests || die
+	}
+	python_foreach_impl python_test
+}
diff --git a/chromeos-base/ureadahead-diff/ureadahead-diff-0.0.1-r123.ebuild b/chromeos-base/ureadahead-diff/ureadahead-diff-0.0.1-r123.ebuild
new file mode 100644
index 0000000..317b3aa
--- /dev/null
+++ b/chromeos-base/ureadahead-diff/ureadahead-diff-0.0.1-r123.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "a3eac5d15a46a63784099b3fe4af44a89d376a6f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk ureadahead-diff .gn"
+
+PLATFORM_SUBDIR="ureadahead-diff"
+
+inherit cros-workon platform
+
+DESCRIPTION="Calculate common part and difference of two ureadahead packs"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/ureadahead-diff"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+
+src_install() {
+	dobin "${OUT}"/ureadahead-diff
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/ureadahead-diff_testrunner"
+}
diff --git a/chromeos-base/ureadahead-diff/ureadahead-diff-0.0.1-r98.ebuild b/chromeos-base/ureadahead-diff/ureadahead-diff-0.0.1-r98.ebuild
deleted file mode 100644
index 527dfad..0000000
--- a/chromeos-base/ureadahead-diff/ureadahead-diff-0.0.1-r98.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a3eac5d15a46a63784099b3fe4af44a89d376a6f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk ureadahead-diff .gn"
-
-PLATFORM_SUBDIR="ureadahead-diff"
-
-inherit cros-workon platform
-
-DESCRIPTION="Calculate common part and difference of two ureadahead packs"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/ureadahead-diff"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-
-src_install() {
-	dobin "${OUT}"/ureadahead-diff
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/ureadahead-diff_testrunner"
-}
diff --git a/chromeos-base/usb_bouncer/usb_bouncer-0.0.1-r362.ebuild b/chromeos-base/usb_bouncer/usb_bouncer-0.0.1-r362.ebuild
deleted file mode 100644
index 065af19..0000000
--- a/chromeos-base/usb_bouncer/usb_bouncer-0.0.1-r362.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="0553127ef2b660a5c71f12a9417ed4ad35f07120"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "21fac63ce5008231f93827abac8fcfc8aa5bfae7" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk metrics usb_bouncer .gn"
-
-PLATFORM_SUBDIR="usb_bouncer"
-
-inherit tmpfiles cros-workon platform user cros-fuzzer cros-sanitizers
-
-DESCRIPTION="Manage the usbguard whitelist"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/usb_bouncer/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="fuzzer"
-
-COMMON_DEPEND="
-	fuzzer? ( dev-libs/libprotobuf-mutator:= )
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/minijail:=
-	dev-libs/openssl:0=
-	sys-apps/usbguard:=
-"
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}
-	chromeos-base/session_manager-client:="
-
-src_install() {
-	insinto /lib/udev/rules.d
-	doins "${S}/40-usb-bouncer.rules"
-
-	dotmpfiles tmpfiles.d/*.conf
-
-	cd "${OUT}" || die
-	dosbin usb_bouncer
-
-	insinto /etc/dbus-1/system.d
-	doins "${S}/UsbBouncer.conf"
-
-	insinto /usr/share/policy
-	newins "${S}/seccomp/usb_bouncer-seccomp-${ARCH}.policy" usb_bouncer-seccomp.policy
-
-	insinto /etc/init
-	doins "${S}"/init/usb_bouncer.conf
-
-	local daemon_store="/etc/daemon-store/usb_bouncer"
-	dodir "${daemon_store}"
-	fperms 0700 "${daemon_store}"
-	fowners usb_bouncer:usb_bouncer "${daemon_store}"
-
-	local f="${OUT}/usb_bouncer_fuzzer"
-	fuzzer_install "${S}/OWNERS" "${f}"
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/run_tests"
-}
-
-pkg_setup() {
-	enewuser usb_bouncer
-	enewgroup usb_bouncer
-	cros-workon_pkg_setup
-}
diff --git a/chromeos-base/usb_bouncer/usb_bouncer-0.0.1-r404.ebuild b/chromeos-base/usb_bouncer/usb_bouncer-0.0.1-r404.ebuild
new file mode 100644
index 0000000..d55c4a2
--- /dev/null
+++ b/chromeos-base/usb_bouncer/usb_bouncer-0.0.1-r404.ebuild
@@ -0,0 +1,75 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e08a2eb734e33827dffeecf57eca046cd1091373" "6ac19e1589763311d82e0bb2419322721903bcb9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk metrics usb_bouncer .gn"
+
+PLATFORM_SUBDIR="usb_bouncer"
+
+inherit tmpfiles cros-workon platform user cros-fuzzer cros-sanitizers
+
+DESCRIPTION="Manage the usbguard whitelist"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/usb_bouncer/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="fuzzer"
+
+COMMON_DEPEND="
+	fuzzer? ( dev-libs/libprotobuf-mutator:= )
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/minijail:=
+	dev-libs/openssl:0=
+	sys-apps/usbguard:=
+"
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}
+	chromeos-base/session_manager-client:="
+
+src_install() {
+	insinto /lib/udev/rules.d
+	doins "${S}/40-usb-bouncer.rules"
+
+	dotmpfiles tmpfiles.d/*.conf
+
+	cd "${OUT}" || die
+	dosbin usb_bouncer
+
+	insinto /etc/dbus-1/system.d
+	doins "${S}/UsbBouncer.conf"
+
+	insinto /usr/share/policy
+	newins "${S}/seccomp/usb_bouncer-seccomp-${ARCH}.policy" usb_bouncer-seccomp.policy
+
+	insinto /etc/init
+	doins "${S}"/init/usb_bouncer.conf
+
+	local daemon_store="/etc/daemon-store/usb_bouncer"
+	dodir "${daemon_store}"
+	fperms 0700 "${daemon_store}"
+	fowners usb_bouncer:usb_bouncer "${daemon_store}"
+
+	local f="${OUT}/usb_bouncer_fuzzer"
+	local fuzzer_component_id="1048474"
+	fuzzer_install "${S}/OWNERS" "${f}" \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/run_tests"
+}
+
+pkg_setup() {
+	enewuser usb_bouncer
+	enewgroup usb_bouncer
+	cros-workon_pkg_setup
+}
diff --git a/chromeos-base/usb_bouncer/usb_bouncer-9999.ebuild b/chromeos-base/usb_bouncer/usb_bouncer-9999.ebuild
index c4017f3..5a86e438 100644
--- a/chromeos-base/usb_bouncer/usb_bouncer-9999.ebuild
+++ b/chromeos-base/usb_bouncer/usb_bouncer-9999.ebuild
@@ -57,7 +57,9 @@
 	fowners usb_bouncer:usb_bouncer "${daemon_store}"
 
 	local f="${OUT}/usb_bouncer_fuzzer"
-	fuzzer_install "${S}/OWNERS" "${f}"
+	local fuzzer_component_id="1048474"
+	fuzzer_install "${S}/OWNERS" "${f}" \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/userspace_touchpad/userspace_touchpad-0.0.1-r1240.ebuild b/chromeos-base/userspace_touchpad/userspace_touchpad-0.0.1-r1240.ebuild
deleted file mode 100644
index 888e8c0..0000000
--- a/chromeos-base/userspace_touchpad/userspace_touchpad-0.0.1-r1240.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_DESTDIR="${S}"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk userspace_touchpad .gn"
-
-PLATFORM_SUBDIR="userspace_touchpad"
-
-inherit cros-workon platform
-
-DESCRIPTION="Userspace Touchpad"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/userspace_touchpad/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-IUSE=""
-KEYWORDS="*"
-
-src_install() {
-	dobin "${OUT}/userspace_touchpad"
-
-	insinto "/etc/init"
-	doins "userspace_touchpad.conf"
-}
diff --git a/chromeos-base/userspace_touchpad/userspace_touchpad-0.0.1-r1265.ebuild b/chromeos-base/userspace_touchpad/userspace_touchpad-0.0.1-r1265.ebuild
new file mode 100644
index 0000000..b86472a
--- /dev/null
+++ b/chromeos-base/userspace_touchpad/userspace_touchpad-0.0.1-r1265.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_DESTDIR="${S}"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk userspace_touchpad .gn"
+
+PLATFORM_SUBDIR="userspace_touchpad"
+
+inherit cros-workon platform
+
+DESCRIPTION="Userspace Touchpad"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/userspace_touchpad/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+IUSE=""
+KEYWORDS="*"
+
+src_install() {
+	dobin "${OUT}/userspace_touchpad"
+
+	insinto "/etc/init"
+	doins "userspace_touchpad.conf"
+}
diff --git a/chromeos-base/vboot_reference-tests/vboot_reference-tests-0.0.1-r1974.ebuild b/chromeos-base/vboot_reference-tests/vboot_reference-tests-0.0.1-r1974.ebuild
deleted file mode 100644
index 967ed7e..0000000
--- a/chromeos-base/vboot_reference-tests/vboot_reference-tests-0.0.1-r1974.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="5c0fcf0f8725b98043a4b18f36e21489375d133a"
-CROS_WORKON_TREE="3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c"
-CROS_WORKON_PROJECT="chromiumos/platform/vboot_reference"
-
-inherit cros-workon autotest
-
-DESCRIPTION="vboot tests"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/vboot_reference/"
-SRC_URI=""
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-# Enable autotest by default.
-IUSE="${IUSE} +autotest"
-
-IUSE_TESTS="
-	+tests_firmware_VbootCrypto
-"
-
-IUSE="${IUSE} ${IUSE_TESTS}"
-
-CROS_WORKON_LOCALNAME=platform/vboot_reference
-
-# path from root of repo
-AUTOTEST_CLIENT_SITE_TESTS=autotest/client
-
-src_compile() {
-	# for Makefile
-	export VBOOT_SRC_DIR=${WORKDIR}/${P}
-	autotest_src_compile
-}
diff --git a/chromeos-base/vboot_reference-tests/vboot_reference-tests-0.0.1-r2028.ebuild b/chromeos-base/vboot_reference-tests/vboot_reference-tests-0.0.1-r2028.ebuild
new file mode 100644
index 0000000..6e69ebe
--- /dev/null
+++ b/chromeos-base/vboot_reference-tests/vboot_reference-tests-0.0.1-r2028.ebuild
@@ -0,0 +1,35 @@
+# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="1269365169791c65a6bf6f364583209195874138"
+CROS_WORKON_TREE="63abdfe41a1746dfd5452f030b2ff4646a15ff76"
+CROS_WORKON_PROJECT="chromiumos/platform/vboot_reference"
+
+inherit cros-workon autotest
+
+DESCRIPTION="vboot tests"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/vboot_reference/"
+SRC_URI=""
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+# Enable autotest by default.
+IUSE="${IUSE} +autotest"
+
+IUSE_TESTS="
+	+tests_firmware_VbootCrypto
+"
+
+IUSE="${IUSE} ${IUSE_TESTS}"
+
+CROS_WORKON_LOCALNAME=platform/vboot_reference
+
+# path from root of repo
+AUTOTEST_CLIENT_SITE_TESTS=autotest/client
+
+src_compile() {
+	# for Makefile
+	export VBOOT_SRC_DIR=${WORKDIR}/${P}
+	autotest_src_compile
+}
diff --git a/chromeos-base/vboot_reference/vboot_reference-1.0-r2113.ebuild b/chromeos-base/vboot_reference/vboot_reference-1.0-r2113.ebuild
deleted file mode 100644
index aa57616..0000000
--- a/chromeos-base/vboot_reference/vboot_reference-1.0-r2113.ebuild
+++ /dev/null
@@ -1,108 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="5c0fcf0f8725b98043a4b18f36e21489375d133a"
-CROS_WORKON_TREE="3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c"
-CROS_WORKON_PROJECT="chromiumos/platform/vboot_reference"
-CROS_WORKON_LOCALNAME="platform/vboot_reference"
-
-inherit cros-debug cros-fuzzer cros-sanitizers cros-workon
-
-DESCRIPTION="Chrome OS verified boot tools"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros_host dev_debug_force fuzzer pd_sync test tpmtests tpm tpm2 tpm2_simulator vtpm_proxy"
-
-REQUIRED_USE="?? ( tpm2 tpm )"
-
-COMMON_DEPEND="dev-libs/libzip:=
-	dev-libs/openssl:=
-	sys-apps/util-linux:="
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}"
-
-get_build_dir() {
-	echo "${S}/build-main"
-}
-
-src_configure() {
-	# Determine sanitizer flags. This is necessary because the Makefile
-	# purposely ignores CFLAGS from the environment. So we collect the
-	# sanitizer flags and pass just them to the Makefile explicitly.
-	SANITIZER_CFLAGS=
-	append-flags() {
-		SANITIZER_CFLAGS+=" $*"
-	}
-	sanitizers-setup-env
-	if use_sanitizers; then
-		# Disable alignment sanitization, https://crbug.com/1015908 .
-		SANITIZER_CFLAGS+=" -fno-sanitize=alignment"
-
-		# Run sanitizers with useful log output.
-		SANITIZER_CFLAGS+=" -DVBOOT_DEBUG"
-
-		# Suppressions for unit tests.
-		if use test; then
-			# Do not check memory leaks or odr violations in address sanitizer.
-			# https://crbug.com/1015908 .
-			export ASAN_OPTIONS+=":detect_leaks=0:detect_odr_violation=0:"
-			# Suppress array bound checks, https://crbug.com/1082636 .
-			SANITIZER_CFLAGS+=" -fno-sanitize=array-bounds"
-		fi
-	fi
-	cros-debug-add-NDEBUG
-	default
-}
-
-vemake() {
-	emake \
-		SRCDIR="${S}" \
-		LIBDIR="$(get_libdir)" \
-		ARCH=$(tc-arch) \
-		SDK_BUILD=$(usev cros_host) \
-		TPM2_MODE=$(usev tpm2) \
-		PD_SYNC=$(usev pd_sync) \
-		DEV_DEBUG_FORCE=$(usev dev_debug_force) \
-		TPM2_SIMULATOR="$(usev tpm2_simulator)" \
-		VTPM_PROXY="$(usev vtpm_proxy)" \
-		FUZZ_FLAGS="${SANITIZER_CFLAGS}" \
-		"$@"
-}
-
-src_compile() {
-	mkdir "$(get_build_dir)"
-	tc-export CC AR CXX PKG_CONFIG
-	# vboot_reference knows the flags to use
-	unset CFLAGS
-	vemake BUILD="$(get_build_dir)" all $(usex fuzzer fuzzers '')
-}
-
-src_test() {
-	! use amd64 && ! use x86 && ewarn "Skipping unittests for non-x86" && return 0
-	vemake BUILD="$(get_build_dir)" runtests
-}
-
-src_install() {
-	einfo "Installing programs"
-	vemake \
-		BUILD="$(get_build_dir)" \
-		DESTDIR="${D}" \
-		install install_dev
-
-	if use tpmtests; then
-		into /usr
-		# copy files starting with tpmtest, but skip .d files.
-		dobin "$(get_build_dir)"/tests/tpm_lite/tpmtest*[^.]?
-		dobin "$(get_build_dir)"/utility/tpm_set_readsrkpub
-	fi
-
-	if use fuzzer; then
-		einfo "Installing fuzzers"
-		fuzzer_install "${S}"/OWNERS "$(get_build_dir)"/tests/cgpt_fuzzer
-		fuzzer_install "${S}"/OWNERS "$(get_build_dir)"/tests/vb2_keyblock_fuzzer
-		fuzzer_install "${S}"/OWNERS "$(get_build_dir)"/tests/vb2_preamble_fuzzer
-	fi
-}
diff --git a/chromeos-base/vboot_reference/vboot_reference-1.0-r2169.ebuild b/chromeos-base/vboot_reference/vboot_reference-1.0-r2169.ebuild
new file mode 100644
index 0000000..7d53594
--- /dev/null
+++ b/chromeos-base/vboot_reference/vboot_reference-1.0-r2169.ebuild
@@ -0,0 +1,115 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="1269365169791c65a6bf6f364583209195874138"
+CROS_WORKON_TREE="63abdfe41a1746dfd5452f030b2ff4646a15ff76"
+CROS_WORKON_PROJECT="chromiumos/platform/vboot_reference"
+CROS_WORKON_LOCALNAME="platform/vboot_reference"
+
+inherit cros-debug cros-fuzzer cros-sanitizers cros-workon
+
+DESCRIPTION="Chrome OS verified boot tools"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cros_host dev_debug_force fuzzer pd_sync test tpmtests tpm tpm_dynamic tpm2 tpm2_simulator vtpm_proxy"
+
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
+
+COMMON_DEPEND="dev-libs/libzip:=
+	dev-libs/openssl:=
+	sys-apps/util-linux:="
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}"
+
+get_build_dir() {
+	echo "${S}/build-main"
+}
+
+src_configure() {
+	# Determine sanitizer flags. This is necessary because the Makefile
+	# purposely ignores CFLAGS from the environment. So we collect the
+	# sanitizer flags and pass just them to the Makefile explicitly.
+	SANITIZER_CFLAGS=
+	append-flags() {
+		SANITIZER_CFLAGS+=" $*"
+	}
+	sanitizers-setup-env
+	if use_sanitizers; then
+		# Disable alignment sanitization, https://crbug.com/1015908 .
+		SANITIZER_CFLAGS+=" -fno-sanitize=alignment"
+
+		# Run sanitizers with useful log output.
+		SANITIZER_CFLAGS+=" -DVBOOT_DEBUG"
+
+		# Suppressions for unit tests.
+		if use test; then
+			# Do not check memory leaks or odr violations in address sanitizer.
+			# https://crbug.com/1015908 .
+			export ASAN_OPTIONS+=":detect_leaks=0:detect_odr_violation=0:"
+			# Suppress array bound checks, https://crbug.com/1082636 .
+			SANITIZER_CFLAGS+=" -fno-sanitize=array-bounds"
+		fi
+	fi
+	cros-debug-add-NDEBUG
+	default
+}
+
+vemake() {
+	emake \
+		SRCDIR="${S}" \
+		LIBDIR="$(get_libdir)" \
+		ARCH=$(tc-arch) \
+		SDK_BUILD=$(usev cros_host) \
+		TPM2_MODE=$(usev tpm2) \
+		PD_SYNC=$(usev pd_sync) \
+		DEV_DEBUG_FORCE=$(usev dev_debug_force) \
+		TPM2_SIMULATOR="$(usev tpm2_simulator)" \
+		VTPM_PROXY="$(usev vtpm_proxy)" \
+		FUZZ_FLAGS="${SANITIZER_CFLAGS}" \
+		"$@"
+}
+
+src_compile() {
+	mkdir "$(get_build_dir)"
+	tc-export CC AR CXX PKG_CONFIG
+	# vboot_reference knows the flags to use
+	unset CFLAGS
+	vemake BUILD="$(get_build_dir)" all $(usex fuzzer fuzzers '')
+}
+
+src_test() {
+	! use amd64 && ! use x86 && ewarn "Skipping unittests for non-x86" && return 0
+	vemake BUILD="$(get_build_dir)" runtests
+}
+
+src_install() {
+	einfo "Installing programs"
+	vemake \
+		BUILD="$(get_build_dir)" \
+		DESTDIR="${D}" \
+		install install_dev
+
+	if use tpmtests; then
+		into /usr
+		# copy files starting with tpmtest, but skip .d files.
+		dobin "$(get_build_dir)"/tests/tpm_lite/tpmtest*[^.]?
+		dobin "$(get_build_dir)"/utility/tpm_set_readsrkpub
+	fi
+
+	if use fuzzer; then
+		einfo "Installing fuzzers"
+		local fuzzer_component_id="167186"
+		fuzzer_install "${S}"/OWNERS "$(get_build_dir)"/tests/cgpt_fuzzer \
+			--comp "${fuzzer_component_id}"
+		fuzzer_install "${S}"/OWNERS "$(get_build_dir)"/tests/vb2_keyblock_fuzzer \
+			--comp "${fuzzer_component_id}"
+		fuzzer_install "${S}"/OWNERS "$(get_build_dir)"/tests/vb2_preamble_fuzzer \
+			--comp "${fuzzer_component_id}"
+	fi
+}
diff --git a/chromeos-base/vboot_reference/vboot_reference-9999.ebuild b/chromeos-base/vboot_reference/vboot_reference-9999.ebuild
index fd1a413..3148cbb 100644
--- a/chromeos-base/vboot_reference/vboot_reference-9999.ebuild
+++ b/chromeos-base/vboot_reference/vboot_reference-9999.ebuild
@@ -12,9 +12,12 @@
 
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="cros_host dev_debug_force fuzzer pd_sync test tpmtests tpm tpm2 tpm2_simulator vtpm_proxy"
+IUSE="cros_host dev_debug_force fuzzer pd_sync test tpmtests tpm tpm_dynamic tpm2 tpm2_simulator vtpm_proxy"
 
-REQUIRED_USE="?? ( tpm2 tpm )"
+REQUIRED_USE="
+	tpm_dynamic? ( tpm tpm2 )
+	!tpm_dynamic? ( ?? ( tpm tpm2 ) )
+"
 
 COMMON_DEPEND="dev-libs/libzip:=
 	dev-libs/openssl:=
@@ -99,8 +102,12 @@
 
 	if use fuzzer; then
 		einfo "Installing fuzzers"
-		fuzzer_install "${S}"/OWNERS "$(get_build_dir)"/tests/cgpt_fuzzer
-		fuzzer_install "${S}"/OWNERS "$(get_build_dir)"/tests/vb2_keyblock_fuzzer
-		fuzzer_install "${S}"/OWNERS "$(get_build_dir)"/tests/vb2_preamble_fuzzer
+		local fuzzer_component_id="167186"
+		fuzzer_install "${S}"/OWNERS "$(get_build_dir)"/tests/cgpt_fuzzer \
+			--comp "${fuzzer_component_id}"
+		fuzzer_install "${S}"/OWNERS "$(get_build_dir)"/tests/vb2_keyblock_fuzzer \
+			--comp "${fuzzer_component_id}"
+		fuzzer_install "${S}"/OWNERS "$(get_build_dir)"/tests/vb2_preamble_fuzzer \
+			--comp "${fuzzer_component_id}"
 	fi
 }
diff --git a/chromeos-base/verity/verity-0.0.1-r186.ebuild b/chromeos-base/verity/verity-0.0.1-r186.ebuild
deleted file mode 100644
index ae64559..0000000
--- a/chromeos-base/verity/verity-0.0.1-r186.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="b773f48488a50bc8361a6f2cf9938e418eccf434"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "33de53739dbe0fd2911d58694b622539ef0a2416" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk verity .gn"
-
-PLATFORM_SUBDIR="verity"
-
-inherit cros-workon platform
-
-DESCRIPTION="File system integrity image generator for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/verity/"
-
-LICENSE="BSD-Google GPL-2"
-KEYWORDS="*"
-
-src_install() {
-	dobin "${OUT}"/verity
-
-	dolib.so "${OUT}"/lib/libdm-bht.so
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins libdm-bht.pc
-
-	insinto /usr/include/verity
-	doins dm-bht.h dm-bht-userspace.h file_hasher.h
-	cd include || die
-	doins -r asm-generic
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/verity_tests"
-}
diff --git a/chromeos-base/verity/verity-0.0.1-r213.ebuild b/chromeos-base/verity/verity-0.0.1-r213.ebuild
new file mode 100644
index 0000000..3a3369c
--- /dev/null
+++ b/chromeos-base/verity/verity-0.0.1-r213.ebuild
@@ -0,0 +1,39 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "76048c384ed9eba7cdd5dc5c3e0b853baac8802d" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk verity .gn"
+
+PLATFORM_SUBDIR="verity"
+
+inherit cros-workon platform
+
+DESCRIPTION="File system integrity image generator for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/verity/"
+
+LICENSE="BSD-Google GPL-2"
+KEYWORDS="*"
+
+src_install() {
+	dobin "${OUT}"/verity
+
+	dolib.so "${OUT}"/lib/libdm-bht.so
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins libdm-bht.pc
+
+	insinto /usr/include/verity
+	doins dm-bht.h dm-bht-userspace.h file_hasher.h
+	cd include || die
+	doins -r asm-generic
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/verity_tests"
+}
diff --git a/chromeos-base/virtual-file-provider/virtual-file-provider-0.0.1-r822.ebuild b/chromeos-base/virtual-file-provider/virtual-file-provider-0.0.1-r822.ebuild
deleted file mode 100644
index 9387baa..0000000
--- a/chromeos-base/virtual-file-provider/virtual-file-provider-0.0.1-r822.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "6012501ec6294d801b43321009548fb1528f3ef9" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk virtual_file_provider .gn"
-
-PLATFORM_SUBDIR="virtual_file_provider"
-
-inherit cros-workon platform user
-
-DESCRIPTION="D-Bus service to provide virtual file"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/virtual_file_provider"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="arcvm"
-
-RDEPEND="
-	sys-fs/fuse:=
-	sys-libs/libcap:=
-"
-
-DEPEND="${RDEPEND}
-	chromeos-base/system_api:="
-
-
-src_install() {
-	dobin "${OUT}"/virtual-file-provider
-	if use arcvm; then
-		newbin virtual-file-provider-jailed-arcvm.sh virtual-file-provider-jailed
-	else
-		newbin virtual-file-provider-jailed.sh virtual-file-provider-jailed
-	fi
-
-	insinto /etc/dbus-1/system.d
-	doins org.chromium.VirtualFileProvider.conf
-
-	insinto /etc/init
-	doins init/virtual-file-provider.conf
-	doins init/virtual-file-provider-cgroup.conf
-
-	insinto /usr/share/power_manager
-	doins powerd_prefs/suspend_freezer_deps_virtual-file-provider
-}
-
-pkg_preinst() {
-	enewuser "virtual-file-provider"
-	enewgroup "virtual-file-provider"
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/virtual-file-provider_testrunner"
-}
diff --git a/chromeos-base/virtual-file-provider/virtual-file-provider-0.0.1-r850.ebuild b/chromeos-base/virtual-file-provider/virtual-file-provider-0.0.1-r850.ebuild
new file mode 100644
index 0000000..04f2166
--- /dev/null
+++ b/chromeos-base/virtual-file-provider/virtual-file-provider-0.0.1-r850.ebuild
@@ -0,0 +1,60 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "0cf089234e3e751d8dbf2040f16434cbfb64919a" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk virtual_file_provider .gn"
+
+PLATFORM_SUBDIR="virtual_file_provider"
+
+inherit cros-workon platform user
+
+DESCRIPTION="D-Bus service to provide virtual file"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/virtual_file_provider"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="arcvm"
+
+RDEPEND="
+	sys-fs/fuse:=
+	sys-libs/libcap:=
+"
+
+DEPEND="${RDEPEND}
+	chromeos-base/system_api:="
+
+
+src_install() {
+	dobin "${OUT}"/virtual-file-provider
+	if use arcvm; then
+		newbin virtual-file-provider-jailed-arcvm.sh virtual-file-provider-jailed
+	else
+		newbin virtual-file-provider-jailed.sh virtual-file-provider-jailed
+	fi
+
+	insinto /etc/dbus-1/system.d
+	doins org.chromium.VirtualFileProvider.conf
+
+	insinto /etc/init
+	doins init/virtual-file-provider.conf
+	doins init/virtual-file-provider-cgroup.conf
+
+	insinto /usr/share/power_manager
+	doins powerd_prefs/suspend_freezer_deps_virtual-file-provider
+}
+
+pkg_preinst() {
+	enewuser "virtual-file-provider"
+	enewgroup "virtual-file-provider"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/virtual-file-provider_testrunner"
+}
diff --git a/chromeos-base/virtual-usb-printer/virtual-usb-printer-0.0.1-r274.ebuild b/chromeos-base/virtual-usb-printer/virtual-usb-printer-0.0.1-r274.ebuild
deleted file mode 100644
index 43990b1..0000000
--- a/chromeos-base/virtual-usb-printer/virtual-usb-printer-0.0.1-r274.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("f34cf3a06f7b17b7829185630d886a5d9d3f0e75" "4c854f427b5eb25e4d2e420a7664191d43c5270d")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a1a60f36b19b903f80c2373a9b3bea197676ecae")
-CROS_WORKON_LOCALNAME=("platform2" "third_party/virtual-usb-printer")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "chromiumos/third_party/virtual-usb-printer")
-CROS_WORKON_EGIT_BRANCH=("main" "master")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/virtual-usb-printer")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
-
-PLATFORM_SUBDIR="virtual-usb-printer"
-
-inherit cros-workon platform
-
-DESCRIPTION="Used with USBIP to provide a virtual USB printer for testing."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/virtual-usb-printer/"
-
-LICENSE="GPL-2"
-KEYWORDS="*"
-
-IUSE=""
-
-RDEPEND="
-	chromeos-base/libipp:=
-	dev-libs/libxml2:=
-	dev-libs/protobuf:=
-	net-misc/usbip:=
-	virtual/jpeg:0=
-"
-
-DEPEND="${RDEPEND}"
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/cardinality-helper-testrunner"
-	platform_test "run" "${OUT}/escl-manager-testrunner"
-	platform_test "run" "${OUT}/http-util-testrunner"
-	platform_test "run" "${OUT}/ipp-manager-testrunner"
-	platform_test "run" "${OUT}/ipp-matching-testrunner"
-	platform_test "run" "${OUT}/ipp-matching-validation-testrunner"
-	platform_test "run" "${OUT}/ipp-util-testrunner"
-	platform_test "run" "${OUT}/jpeg-util-testrunner"
-	platform_test "run" "${OUT}/load-config-testrunner"
-	platform_test "run" "${OUT}/smart-buffer-testrunner"
-}
-
-src_install() {
-	dobin "${OUT}"/virtual-usb-printer
-	insinto /etc/virtual-usb-printer
-	doins config/escl_capabilities.json
-	doins config/ipp_attributes.json
-	doins config/ippusb_printer.json
-	doins config/usb_printer.json
-}
diff --git a/chromeos-base/virtual-usb-printer/virtual-usb-printer-0.0.1-r311.ebuild b/chromeos-base/virtual-usb-printer/virtual-usb-printer-0.0.1-r311.ebuild
new file mode 100644
index 0000000..fd2c7d3
--- /dev/null
+++ b/chromeos-base/virtual-usb-printer/virtual-usb-printer-0.0.1-r311.ebuild
@@ -0,0 +1,72 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("f1bc1b48afb65abb71a0b2cce06654142a63893d" "0488a26972fec1bd04322b0439e79a0b4eae6338")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "7455349af18a9af9bd922e37654b814f9b1c135d")
+CROS_WORKON_LOCALNAME=("platform2" "third_party/virtual-usb-printer")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "chromiumos/third_party/virtual-usb-printer")
+CROS_WORKON_EGIT_BRANCH=("main" "master")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/virtual-usb-printer")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE=("common-mk .gn" "")
+
+PLATFORM_SUBDIR="virtual-usb-printer"
+
+inherit cros-workon platform
+
+DESCRIPTION="Used with USBIP to provide a virtual USB printer for testing."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/virtual-usb-printer/"
+
+LICENSE="GPL-2"
+KEYWORDS="*"
+
+IUSE=""
+
+RDEPEND="
+	chromeos-base/libipp:=
+	dev-libs/libxml2:=
+	dev-libs/protobuf:=
+	net-misc/usbip:=
+	virtual/jpeg:0=
+"
+
+DEPEND="${RDEPEND}"
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/cardinality-helper-testrunner"
+	platform_test "run" "${OUT}/escl-manager-testrunner"
+	platform_test "run" "${OUT}/http-util-testrunner"
+	platform_test "run" "${OUT}/ipp-manager-testrunner"
+	platform_test "run" "${OUT}/ipp-matching-testrunner"
+	platform_test "run" "${OUT}/ipp-matching-validation-testrunner"
+	platform_test "run" "${OUT}/ipp-util-testrunner"
+	platform_test "run" "${OUT}/jpeg-util-testrunner"
+	platform_test "run" "${OUT}/load-config-testrunner"
+	platform_test "run" "${OUT}/proto-to-libipp-testrunner"
+	platform_test "run" "${OUT}/smart-buffer-testrunner"
+	platform_test "run" "${OUT}/wrapped-test-case-step-testrunner"
+}
+
+src_install() {
+	# Install main files into /usr/local even though the ebuild is being
+	# installed on the rootfs.
+	into /usr/local
+	dobin "${OUT}"/virtual-usb-printer
+
+	insinto /usr/local/etc/virtual-usb-printer
+	doins config/escl_capabilities.json
+	doins config/escl_capabilities_large_paper_sizes.json
+	doins config/escl_capabilities_left_justified.json
+	doins config/escl_capabilities_center_justified.json
+	doins config/escl_capabilities_right_justified.json
+	doins config/ipp_attributes.json
+	doins config/ippusb_printer.json
+	doins config/usb_printer.json
+
+	# Install upstart files into rootfs, since upstart won't look in
+	# /usr/local/etc.
+	insinto /etc/init
+	doins init/virtual-usb-printer.conf
+}
diff --git a/chromeos-base/virtual-usb-printer/virtual-usb-printer-9999.ebuild b/chromeos-base/virtual-usb-printer/virtual-usb-printer-9999.ebuild
index c15da0c..9d3eed9 100644
--- a/chromeos-base/virtual-usb-printer/virtual-usb-printer-9999.ebuild
+++ b/chromeos-base/virtual-usb-printer/virtual-usb-printer-9999.ebuild
@@ -42,14 +42,29 @@
 	platform_test "run" "${OUT}/ipp-util-testrunner"
 	platform_test "run" "${OUT}/jpeg-util-testrunner"
 	platform_test "run" "${OUT}/load-config-testrunner"
+	platform_test "run" "${OUT}/proto-to-libipp-testrunner"
 	platform_test "run" "${OUT}/smart-buffer-testrunner"
+	platform_test "run" "${OUT}/wrapped-test-case-step-testrunner"
 }
 
 src_install() {
+	# Install main files into /usr/local even though the ebuild is being
+	# installed on the rootfs.
+	into /usr/local
 	dobin "${OUT}"/virtual-usb-printer
-	insinto /etc/virtual-usb-printer
+
+	insinto /usr/local/etc/virtual-usb-printer
 	doins config/escl_capabilities.json
+	doins config/escl_capabilities_large_paper_sizes.json
+	doins config/escl_capabilities_left_justified.json
+	doins config/escl_capabilities_center_justified.json
+	doins config/escl_capabilities_right_justified.json
 	doins config/ipp_attributes.json
 	doins config/ippusb_printer.json
 	doins config/usb_printer.json
+
+	# Install upstart files into rootfs, since upstart won't look in
+	# /usr/local/etc.
+	insinto /etc/init
+	doins init/virtual-usb-printer.conf
 }
diff --git a/chromeos-base/vkbench/vkbench-0.0.1-r11.ebuild b/chromeos-base/vkbench/vkbench-0.0.1-r11.ebuild
new file mode 100644
index 0000000..34cf29b
--- /dev/null
+++ b/chromeos-base/vkbench/vkbench-0.0.1-r11.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2020 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="96811b97cb9e532d6149f2c0bd5c18987cef3eef"
+CROS_WORKON_TREE="ab77730e73c6c56c3bacf7fa3c48942ed762d970"
+CROS_WORKON_LOCALNAME="platform/vkbench"
+CROS_WORKON_PROJECT="chromiumos/platform/vkbench"
+
+inherit cros-workon cmake-utils
+
+DESCRIPTION="Microbenchmark for vulkan"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/vkbench/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="vulkan"
+
+REQUIRED_USE="vulkan"
+
+BDEPEND="
+	dev-util/glslang
+"
+
+RDEPEND="
+	dev-libs/libfmt:=
+	media-libs/libpng:=
+	media-libs/vulkan-loader:=
+	virtual/vulkan-icd:=
+"
+DEPEND="${RDEPEND}"
diff --git a/chromeos-base/vkbench/vkbench-0.0.1-r8.ebuild b/chromeos-base/vkbench/vkbench-0.0.1-r8.ebuild
deleted file mode 100644
index 5b7abdc..0000000
--- a/chromeos-base/vkbench/vkbench-0.0.1-r8.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2020 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="dc11a7da7b27de39d22b80024ba98588a5146cc3"
-CROS_WORKON_TREE="674da03cb295015def82ec04e960293b338845f6"
-CROS_WORKON_LOCALNAME="platform/vkbench"
-CROS_WORKON_PROJECT="chromiumos/platform/vkbench"
-
-inherit cros-workon cmake-utils
-
-DESCRIPTION="Microbenchmark for vulkan"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/vkbench/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="vulkan"
-
-REQUIRED_USE="vulkan"
-
-BDEPEND="
-	dev-util/glslang
-"
-
-RDEPEND="
-	dev-libs/libfmt:=
-	media-libs/libpng:=
-	media-libs/vulkan-loader:=
-	virtual/vulkan-icd:=
-"
-DEPEND="${RDEPEND}"
diff --git a/chromeos-base/vm_guest_tools/vm_guest_tools-0.0.2-r1146.ebuild b/chromeos-base/vm_guest_tools/vm_guest_tools-0.0.2-r1146.ebuild
deleted file mode 100644
index 65ae548..0000000
--- a/chromeos-base/vm_guest_tools/vm_guest_tools-0.0.2-r1146.ebuild
+++ /dev/null
@@ -1,142 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="78ebb5c48ef5196346103ce448d63d171d0e97f2"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "7ef75a42aba67052842459f221271e681184cc89" "0865c9d3ea1e3df829430fe6bc25ecbc3bc865ca" "c1bde153626532428bf7409bc0597e79452c5eb8" "5159f439e8516f904859190cfd0375b7a4d05db2" "cfed45e1497a68bae4f74947be9922019fe331cf" "97190407ff6df6ae497a54e632369afdf09cd621" "af0b5afed375b2398606e02dfedd5a7d116cfde7" "40934111a9826b46aca5b0b3309b1cceea46f7a4" "73d11c9c68b8ad83037d9b5820a42f0e51c57d74" "dcc85a40b5c9518fac5d6d9b571131998bd62653" "bf33fa9b44cf05a4e8a416a1a3e8ad2d905daa8e" "889e63b35e958b34d6cf15f62b243d442f1bac83" "04812f95a99341b51d5b838c9470f7915b2a5f11" "d0bf87d1a53ee7e33eb547179efa5b2a5e535f84" "a01dc69a1e1fa54805fe9b48ce5c278a7e70de0c")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-
-PLATFORM2_PATHS=(
-	common-mk
-	.gn
-
-	vm_tools/BUILD.gn
-	vm_tools/guest
-	vm_tools/common
-
-	vm_tools/demos
-	vm_tools/garcon
-	vm_tools/guest_service_failure_notifier
-	vm_tools/maitred
-	vm_tools/notificationd
-	vm_tools/sommelier
-	vm_tools/syslog
-	vm_tools/upgrade_container
-	vm_tools/virtwl_guest_proxy
-	vm_tools/vsh
-
-	# Required by the fuzzer
-	vm_tools/OWNERS
-	vm_tools/testdata
-)
-CROS_WORKON_SUBTREE="${PLATFORM2_PATHS[*]}"
-
-PLATFORM_SUBDIR="vm_tools"
-
-inherit cros-go cros-workon platform user
-
-DESCRIPTION="VM guest tools for Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="kvm_guest vm-containers fuzzer vm_borealis"
-
-# This ebuild should only be used on VM guest boards.
-REQUIRED_USE="kvm_guest"
-
-COMMON_DEPEND="
-	!!chromeos-base/vm_tools
-	chromeos-base/minijail:=
-	net-libs/grpc:=
-	dev-libs/protobuf:=
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	vm-containers? (
-		chromeos-base/crash-reporter
-	)
-	!fuzzer? (
-		chromeos-base/sommelier
-	)
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	dev-go/grpc:=
-	dev-go/protobuf:=
-	sys-kernel/linux-headers:=
-	chromeos-base/vm_protos:=
-"
-
-src_install() {
-	platform_src_install
-
-	dobin "${OUT}"/vm_syslog
-	dosbin "${OUT}"/vshd
-
-	if use vm-containers || use vm_borealis; then
-		dobin "${OUT}"/garcon
-	fi
-	if use vm-containers; then
-		dobin "${OUT}"/guest_service_failure_notifier
-		dobin "${OUT}"/notificationd
-		dobin "${OUT}"/upgrade_container
-		dobin "${OUT}"/virtwl_guest_proxy
-		dobin "${OUT}"/wayland_demo
-		dobin "${OUT}"/x11_demo
-	fi
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/garcon_desktop_file_fuzzer \
-		--dict "${S}"/testdata/garcon_desktop_file_fuzzer.dict
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/garcon_icon_index_file_fuzzer \
-		--dict "${S}"/testdata/garcon_icon_index_file_fuzzer.dict
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/garcon_ini_parse_util_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/garcon_mime_types_parser_fuzzer
-
-	into /
-	newsbin "${OUT}"/maitred init
-
-	# Create a folder for process configs to be launched at VM startup.
-	dodir /etc/maitred/
-
-	use fuzzer || dosym /run/resolv.conf /etc/resolv.conf
-
-	CROS_GO_WORKSPACE="${OUT}/gen/go"
-	cros-go_src_install
-}
-
-platform_pkg_test() {
-	local tests=(
-		maitred_service_test
-		maitred_syslog_test
-	)
-
-	local container_tests=(
-		garcon_desktop_file_test
-		garcon_icon_index_file_test
-		garcon_icon_finder_test
-		garcon_mime_types_parser_test
-		notificationd_test
-	)
-
-	if use vm-containers || use vm_borealis; then
-		tests+=( "${container_tests[@]}" )
-	fi
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
-
-pkg_preinst() {
-	# We need the syslog user and group for both host and guest builds.
-	enewuser syslog
-	enewgroup syslog
-}
diff --git a/chromeos-base/vm_guest_tools/vm_guest_tools-0.0.2-r1213.ebuild b/chromeos-base/vm_guest_tools/vm_guest_tools-0.0.2-r1213.ebuild
new file mode 100644
index 0000000..fe9f2d6
--- /dev/null
+++ b/chromeos-base/vm_guest_tools/vm_guest_tools-0.0.2-r1213.ebuild
@@ -0,0 +1,143 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "7ef75a42aba67052842459f221271e681184cc89" "0865c9d3ea1e3df829430fe6bc25ecbc3bc865ca" "c1bde153626532428bf7409bc0597e79452c5eb8" "5159f439e8516f904859190cfd0375b7a4d05db2" "ed81029bc913ecbee54a57691c0a92ef8b15a988" "97190407ff6df6ae497a54e632369afdf09cd621" "94681e09d8a8f9cdd05762163b3eaf7ece9ff5a6" "3e9ff342b67e51202388fd113a406e866fe932e8" "00ffd7cf775709a0e74a50142e0287a0bec5dbc5" "5bd4e7177af169b227e69bb3c61d1125f07acaac" "0f90b39225ab21fc7012cc956d81115f04ae18b5" "889e63b35e958b34d6cf15f62b243d442f1bac83" "373c7816706a5b9b44695b2ee1b2bca6ab4defa3" "bbe1454835752d769b8aa28c25ca8e1a39c9add5" "a01dc69a1e1fa54805fe9b48ce5c278a7e70de0c")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+
+PLATFORM2_PATHS=(
+	common-mk
+	.gn
+
+	vm_tools/BUILD.gn
+	vm_tools/guest
+	vm_tools/common
+
+	vm_tools/demos
+	vm_tools/garcon
+	vm_tools/guest_service_failure_notifier
+	vm_tools/maitred
+	vm_tools/notificationd
+	vm_tools/sommelier
+	vm_tools/syslog
+	vm_tools/upgrade_container
+	vm_tools/virtwl_guest_proxy
+	vm_tools/vsh
+
+	# Required by the fuzzer
+	vm_tools/OWNERS
+	vm_tools/testdata
+)
+CROS_WORKON_SUBTREE="${PLATFORM2_PATHS[*]}"
+
+PLATFORM_SUBDIR="vm_tools"
+
+inherit cros-go cros-workon platform user
+
+DESCRIPTION="VM guest tools for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="kvm_guest vm-containers fuzzer vm_borealis"
+
+# This ebuild should only be used on VM guest boards.
+REQUIRED_USE="kvm_guest"
+
+COMMON_DEPEND="
+	!!chromeos-base/vm_tools
+	chromeos-base/minijail:=
+	net-libs/grpc:=
+	dev-libs/protobuf:=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	vm-containers? (
+		chromeos-base/crash-reporter
+	)
+	!fuzzer? (
+		chromeos-base/sommelier
+	)
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	dev-go/grpc:=
+	dev-go/protobuf:=
+	sys-kernel/linux-headers:=
+	chromeos-base/vm_protos:=
+"
+
+src_install() {
+	platform_src_install
+
+	dobin "${OUT}"/vm_syslog
+	dosbin "${OUT}"/vshd
+
+	if use vm-containers || use vm_borealis; then
+		dobin "${OUT}"/garcon
+	fi
+	if use vm-containers; then
+		dobin "${OUT}"/guest_service_failure_notifier
+		dobin "${OUT}"/notificationd
+		dobin "${OUT}"/upgrade_container
+		dobin "${OUT}"/virtwl_guest_proxy
+		dobin "${OUT}"/wayland_demo
+		dobin "${OUT}"/x11_demo
+	fi
+
+	# fuzzer_component_id is unknown/unlisted
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/garcon_desktop_file_fuzzer \
+		--dict "${S}"/testdata/garcon_desktop_file_fuzzer.dict
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/garcon_icon_index_file_fuzzer \
+		--dict "${S}"/testdata/garcon_icon_index_file_fuzzer.dict
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/garcon_ini_parse_util_fuzzer
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/garcon_mime_types_parser_fuzzer
+
+	into /
+	newsbin "${OUT}"/maitred init
+
+	# Create a folder for process configs to be launched at VM startup.
+	dodir /etc/maitred/
+
+	use fuzzer || dosym /run/resolv.conf /etc/resolv.conf
+
+	CROS_GO_WORKSPACE="${OUT}/gen/go"
+	cros-go_src_install
+}
+
+platform_pkg_test() {
+	local tests=(
+		maitred_service_test
+		maitred_syslog_test
+	)
+
+	local container_tests=(
+		garcon_desktop_file_test
+		garcon_icon_index_file_test
+		garcon_icon_finder_test
+		garcon_mime_types_parser_test
+		notificationd_test
+	)
+
+	if use vm-containers || use vm_borealis; then
+		tests+=( "${container_tests[@]}" )
+	fi
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
+
+pkg_preinst() {
+	# We need the syslog user and group for both host and guest builds.
+	enewuser syslog
+	enewgroup syslog
+}
diff --git a/chromeos-base/vm_guest_tools/vm_guest_tools-9999.ebuild b/chromeos-base/vm_guest_tools/vm_guest_tools-9999.ebuild
index 0551668..bd605ce 100644
--- a/chromeos-base/vm_guest_tools/vm_guest_tools-9999.ebuild
+++ b/chromeos-base/vm_guest_tools/vm_guest_tools-9999.ebuild
@@ -90,6 +90,7 @@
 		dobin "${OUT}"/x11_demo
 	fi
 
+	# fuzzer_component_id is unknown/unlisted
 	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/garcon_desktop_file_fuzzer \
 		--dict "${S}"/testdata/garcon_desktop_file_fuzzer.dict
 	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/garcon_icon_index_file_fuzzer \
diff --git a/chromeos-base/vm_host_tools/vm_host_tools-0.0.2-r1351.ebuild b/chromeos-base/vm_host_tools/vm_host_tools-0.0.2-r1351.ebuild
deleted file mode 100644
index d9b0db9..0000000
--- a/chromeos-base/vm_host_tools/vm_host_tools-0.0.2-r1351.ebuild
+++ /dev/null
@@ -1,216 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="78ebb5c48ef5196346103ce448d63d171d0e97f2"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a9708ef639f0f7929195d0f3921ebd1a12ad96bd" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "7ef75a42aba67052842459f221271e681184cc89" "6ac391aa2da8e29cd4de58f7f7b489a9dc053382" "c1bde153626532428bf7409bc0597e79452c5eb8" "01162da167ac566d9126a032da1b74f8889e9fa2" "7418121e64c49c654817d862e1474490986f4278" "1780a540acb435bb7583751430df696e44eef2e3" "a925c76094f1522fb121dd0f53bbb329fb608d79" "edcdfbcab4b3c4525ccb60500aa145d24cafd7f7" "27d31e84486e3c2a8fcf2deb13b46af8311bbae9" "82e4b5c7e0ce0efa9061a09d81555845183e8d63" "dcc85a40b5c9518fac5d6d9b571131998bd62653" "4b930736bc7da8c301f27c7a82718e7d605de289" "04812f95a99341b51d5b838c9470f7915b2a5f11" "d0bf87d1a53ee7e33eb547179efa5b2a5e535f84")
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-
-PLATFORM2_PATHS=(
-	common-mk
-	metrics
-	.gn
-
-	vm_tools/BUILD.gn
-	vm_tools/host
-	vm_tools/common
-
-	vm_tools/cicerone
-	vm_tools/concierge
-	vm_tools/dbus
-	vm_tools/init
-	vm_tools/maitred/client.cc
-	vm_tools/pstore_dump
-	vm_tools/seneschal
-	vm_tools/syslog
-	vm_tools/udev
-	vm_tools/vsh
-
-	# Required by the fuzzer
-	vm_tools/OWNERS
-)
-CROS_WORKON_SUBTREE="${PLATFORM2_PATHS[*]}"
-
-PLATFORM_SUBDIR="vm_tools"
-
-inherit cros-workon platform udev user arc-build-constants
-
-DESCRIPTION="VM host tools for Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-# The crosvm-wl-dmabuf and crosvm-virtio-video USE flags
-# are used when preprocessing concierge source.
-IUSE="+kvm_host +seccomp +crosvm-wl-dmabuf fuzzer wilco +crosvm-virtio-video vulkan"
-REQUIRED_USE="kvm_host"
-
-COMMON_DEPEND="
-	app-arch/libarchive:=
-	!!chromeos-base/vm_tools
-	chromeos-base/chunnel:=
-	chromeos-base/crosvm:=
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	chromeos-base/minijail:=
-	chromeos-base/patchpanel:=
-	chromeos-base/patchpanel-client:=
-	net-libs/grpc:=
-	dev-libs/protobuf:=
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	dev-rust/s9
-"
-DEPEND="
-	${COMMON_DEPEND}
-	chromeos-base/dlcservice-client:=
-	chromeos-base/shill-client:=
-	chromeos-base/system_api:=[fuzzer?]
-	chromeos-base/vm_protos:=
-	fuzzer? ( dev-libs/libprotobuf-mutator:= )
-"
-
-get_vmlog_forwarder_start_services() {
-	local start_services="starting vm_concierge"
-	if use wilco; then
-		start_services+=" or starting wilco_dtc_dispatcher"
-	fi
-	echo "${start_services}"
-}
-
-get_vmlog_forwarder_stop_services() {
-	local stop_services="stopped vm_concierge"
-	if use wilco; then
-		stop_services+=" and stopped wilco_dtc_dispatcher"
-	fi
-	echo "${stop_services}"
-}
-
-pkg_setup() {
-	# Duplicated from the crosvm ebuild. These are necessary here in order
-	# to create the daemon-store folder for concierge in src_install().
-	enewuser crosvm
-	enewgroup crosvm
-	enewuser pluginvm
-	cros-workon_pkg_setup
-}
-
-src_install() {
-	platform_src_install
-
-	dobin "${OUT}"/cicerone_client
-	dobin "${OUT}"/concierge_client
-	dobin "${OUT}"/maitred_client
-	dobin "${OUT}"/seneschal
-	dobin "${OUT}"/seneschal_client
-	dobin "${OUT}"/vm_cicerone
-	dobin "${OUT}"/vm_concierge
-	dobin "${OUT}"/vmlog_forwarder
-	dobin "${OUT}"/vsh
-
-	# TODO(b/153934386): Add back arm64 when pstore works.
-	if use arcvm && use amd64; then
-		dobin "${OUT}"/vm_pstore_dump
-	fi
-
-	if use arcvm; then
-		arc-build-constants-configure
-		exeinto "${ARC_VM_VENDOR_DIR}/bin"
-		doexe "${OUT}"/vshd
-	fi
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/cicerone_container_listener_fuzzer
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/vsh_client_fuzzer
-
-	# Install header for passing USB devices to plugin VMs.
-	insinto /usr/include/vm_concierge
-	doins concierge/plugin_vm_usb.h
-
-	insinto /etc/init
-	doins init/seneschal.conf
-	doins init/vm_cicerone.conf
-	doins init/vm_concierge.conf
-
-	# Modify vmlog_forwarder starting and stopping conditions based on USE flags.
-	sed \
-		"-e s,@dependent_start_services@,$(get_vmlog_forwarder_start_services),"\
-		"-e s,@dependent_stop_services@,$(get_vmlog_forwarder_stop_services)," \
-		init/vmlog_forwarder.conf.in | newins - vmlog_forwarder.conf
-
-	insinto /etc/dbus-1/system.d
-	doins dbus/*.conf
-
-	insinto /usr/local/vms/etc
-	doins init/arcvm_dev.conf
-
-	# TODO(b/159953121): File and steps below should be removed later.
-	insinto /etc
-	newins init/arcvm_dev.conf_deprecated arcvm_dev.conf
-
-	insinto /usr/share/policy
-	if use seccomp; then
-		newins "init/vm_cicerone-seccomp-${ARCH}.policy" vm_cicerone-seccomp.policy
-	fi
-
-	udev_dorules udev/99-vm.rules
-
-	keepdir /opt/google/vms
-
-	# Create daemon store folder for crosvm and pvm
-	local crosvm_store="/etc/daemon-store/crosvm"
-	dodir "${crosvm_store}"
-	fperms 0700 "${crosvm_store}"
-	fowners crosvm:crosvm "${crosvm_store}"
-
-	local pvm_store="/etc/daemon-store/pvm"
-	dodir "${pvm_store}"
-	fperms 0770 "${pvm_store}"
-	fowners pluginvm:crosvm "${pvm_store}"
-}
-
-platform_pkg_test() {
-	local tests=(
-		cicerone_test
-		concierge_test
-		syslog_forwarder_test
-	)
-	if use arcvm; then
-		tests+=(
-			vm_pstore_dump_test
-		)
-	fi
-
-	# Running a gRPC server under qemu-user causes flake, at least with the
-	# combination of gRPC 1.16.1 and qemu 3.0.0. Disable TerminaVmTest.* while
-	# running under qemu to avoid triggering this flake.
-	# TODO(crbug.com/1066425): Reenable gRPC server tests under qemu-user.
-	local qemu_gtest_filter="-TerminaVmTest.*"
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}" "0" "" "${qemu_gtest_filter}"
-	done
-}
-
-pkg_preinst() {
-	# We need the syslog user and group for both host and guest builds.
-	enewuser syslog
-	enewgroup syslog
-
-	enewuser vm_cicerone
-	enewgroup vm_cicerone
-
-	enewuser seneschal
-	enewgroup seneschal
-	enewuser seneschal-dbus
-	enewgroup seneschal-dbus
-
-	enewuser pluginvm
-	enewgroup pluginvm
-
-	enewgroup virtaccess
-}
diff --git a/chromeos-base/vm_host_tools/vm_host_tools-0.0.2-r1457.ebuild b/chromeos-base/vm_host_tools/vm_host_tools-0.0.2-r1457.ebuild
new file mode 100644
index 0000000..b84bea0
--- /dev/null
+++ b/chromeos-base/vm_host_tools/vm_host_tools-0.0.2-r1457.ebuild
@@ -0,0 +1,217 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="e91233614f3f3261f08095183fa9dcf32e7017d2"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e08a2eb734e33827dffeecf57eca046cd1091373" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "7ef75a42aba67052842459f221271e681184cc89" "d3d64631b9ff3b946b7482bf794aeda97b564813" "c1bde153626532428bf7409bc0597e79452c5eb8" "d898c3ab65ad3e7b7e6487d8e356e953ad207fc3" "afb9a4c533d20708b9a71633f327dae388bdac7f" "1780a540acb435bb7583751430df696e44eef2e3" "44aba539142920cfb63480823be41293e2402fae" "e2598f8160f0e1089268ae21cb458eb6bc46d71e" "3a57293314fa7ffce092cd9ce0b29e1d51e1080b" "8f9d6739f87454b9e1a41de38e49435b51fa2753" "5bd4e7177af169b227e69bb3c61d1125f07acaac" "0d3d3aeea63686781aace849eac35118b45e87b9" "4b930736bc7da8c301f27c7a82718e7d605de289" "373c7816706a5b9b44695b2ee1b2bca6ab4defa3" "bbe1454835752d769b8aa28c25ca8e1a39c9add5")
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+
+PLATFORM2_PATHS=(
+	common-mk
+	metrics
+	.gn
+
+	vm_tools/BUILD.gn
+	vm_tools/host
+	vm_tools/common
+
+	vm_tools/cicerone
+	vm_tools/concierge
+	vm_tools/dbus
+	vm_tools/init
+	vm_tools/maitred/client.cc
+	vm_tools/pstore_dump
+	vm_tools/seneschal
+	vm_tools/syslog
+	vm_tools/tmpfiles.d
+	vm_tools/udev
+	vm_tools/vsh
+
+	# Required by the fuzzer
+	vm_tools/OWNERS
+)
+CROS_WORKON_SUBTREE="${PLATFORM2_PATHS[*]}"
+
+PLATFORM_SUBDIR="vm_tools"
+
+inherit tmpfiles cros-workon platform udev user arc-build-constants
+
+DESCRIPTION="VM host tools for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+# The crosvm-wl-dmabuf and crosvm-virtio-video USE flags
+# are used when preprocessing concierge source.
+IUSE="+kvm_host +seccomp +crosvm-wl-dmabuf fuzzer wilco +crosvm-virtio-video vulkan"
+REQUIRED_USE="kvm_host"
+
+COMMON_DEPEND="
+	app-arch/libarchive:=
+	!!chromeos-base/vm_tools
+	chromeos-base/chunnel:=
+	chromeos-base/crosvm:=
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	chromeos-base/minijail:=
+	chromeos-base/patchpanel:=
+	chromeos-base/patchpanel-client:=
+	net-libs/grpc:=
+	dev-libs/protobuf:=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	dev-rust/s9
+"
+DEPEND="
+	${COMMON_DEPEND}
+	chromeos-base/dlcservice-client:=
+	chromeos-base/shill-client:=
+	chromeos-base/system_api:=[fuzzer?]
+	chromeos-base/vm_protos:=
+	fuzzer? ( dev-libs/libprotobuf-mutator:= )
+"
+
+get_vmlog_forwarder_start_services() {
+	local start_services="starting vm_concierge"
+	if use wilco; then
+		start_services+=" or starting wilco_dtc_dispatcher"
+	fi
+	echo "${start_services}"
+}
+
+get_vmlog_forwarder_stop_services() {
+	local stop_services="stopped vm_concierge"
+	if use wilco; then
+		stop_services+=" and stopped wilco_dtc_dispatcher"
+	fi
+	echo "${stop_services}"
+}
+
+pkg_setup() {
+	# Duplicated from the crosvm ebuild. These are necessary here in order
+	# to create the daemon-store folder for concierge in src_install().
+	enewuser crosvm
+	enewgroup crosvm
+	enewuser pluginvm
+	cros-workon_pkg_setup
+
+	enewuser crosvm-root
+	enewgroup crosvm-root
+}
+
+src_install() {
+	platform_src_install
+
+	dobin "${OUT}"/cicerone_client
+	dobin "${OUT}"/concierge_client
+	dobin "${OUT}"/maitred_client
+	dobin "${OUT}"/seneschal
+	dobin "${OUT}"/seneschal_client
+	dobin "${OUT}"/vm_cicerone
+	dobin "${OUT}"/vm_concierge
+	dobin "${OUT}"/vmlog_forwarder
+	dobin "${OUT}"/vsh
+
+	if use arcvm; then
+		dobin "${OUT}"/vm_pstore_dump
+		dobin "${OUT}"/vshd
+	fi
+
+	# fuzzer_component_id is unknown/unlisted
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/cicerone_container_listener_fuzzer
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/vsh_client_fuzzer
+
+	# Install header for passing USB devices to plugin VMs.
+	insinto /usr/include/vm_concierge
+	doins concierge/plugin_vm_usb.h
+
+	insinto /etc/init
+	doins init/seneschal.conf
+	doins init/vm_cicerone.conf
+	doins init/vm_concierge.conf
+
+	dotmpfiles tmpfiles.d/*.conf
+
+	# Modify vmlog_forwarder starting and stopping conditions based on USE flags.
+	sed \
+		"-e s,@dependent_start_services@,$(get_vmlog_forwarder_start_services),"\
+		"-e s,@dependent_stop_services@,$(get_vmlog_forwarder_stop_services)," \
+		init/vmlog_forwarder.conf.in | newins - vmlog_forwarder.conf
+
+	insinto /etc/dbus-1/system.d
+	doins dbus/*.conf
+
+	insinto /usr/local/vms/etc
+	doins init/arcvm_dev.conf
+
+	# TODO(b/159953121): File and steps below should be removed later.
+	insinto /etc
+	newins init/arcvm_dev.conf_deprecated arcvm_dev.conf
+
+	insinto /usr/share/policy
+	if use seccomp; then
+		newins "init/vm_cicerone-seccomp-${ARCH}.policy" vm_cicerone-seccomp.policy
+	fi
+
+	udev_dorules udev/99-vm.rules
+
+	keepdir /opt/google/vms
+
+	# Create daemon store folder for crosvm and pvm
+	local crosvm_store="/etc/daemon-store/crosvm"
+	dodir "${crosvm_store}"
+	fperms 0700 "${crosvm_store}"
+	fowners crosvm:crosvm "${crosvm_store}"
+
+	local pvm_store="/etc/daemon-store/pvm"
+	dodir "${pvm_store}"
+	fperms 0770 "${pvm_store}"
+	fowners pluginvm:crosvm "${pvm_store}"
+}
+
+platform_pkg_test() {
+	local tests=(
+		cicerone_test
+		concierge_test
+		syslog_forwarder_test
+	)
+	if use arcvm; then
+		tests+=(
+			vm_pstore_dump_test
+		)
+	fi
+
+	# Running a gRPC server under qemu-user causes flake, at least with the
+	# combination of gRPC 1.16.1 and qemu 3.0.0. Disable TerminaVmTest.* while
+	# running under qemu to avoid triggering this flake.
+	# TODO(crbug.com/1066425): Reenable gRPC server tests under qemu-user.
+	local qemu_gtest_filter="-TerminaVmTest.*"
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}" "0" "" "${qemu_gtest_filter}"
+	done
+}
+
+pkg_preinst() {
+	# We need the syslog user and group for both host and guest builds.
+	enewuser syslog
+	enewgroup syslog
+
+	enewuser vm_cicerone
+	enewgroup vm_cicerone
+
+	enewuser seneschal
+	enewgroup seneschal
+	enewuser seneschal-dbus
+	enewgroup seneschal-dbus
+
+	enewuser pluginvm
+	enewgroup pluginvm
+
+	enewgroup virtaccess
+}
diff --git a/chromeos-base/vm_host_tools/vm_host_tools-9999.ebuild b/chromeos-base/vm_host_tools/vm_host_tools-9999.ebuild
index 31b1796..179bfb5 100644
--- a/chromeos-base/vm_host_tools/vm_host_tools-9999.ebuild
+++ b/chromeos-base/vm_host_tools/vm_host_tools-9999.ebuild
@@ -25,6 +25,7 @@
 	vm_tools/pstore_dump
 	vm_tools/seneschal
 	vm_tools/syslog
+	vm_tools/tmpfiles.d
 	vm_tools/udev
 	vm_tools/vsh
 
@@ -35,7 +36,7 @@
 
 PLATFORM_SUBDIR="vm_tools"
 
-inherit cros-workon platform udev user arc-build-constants
+inherit tmpfiles cros-workon platform udev user arc-build-constants
 
 DESCRIPTION="VM host tools for Chrome OS"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools"
@@ -96,6 +97,9 @@
 	enewgroup crosvm
 	enewuser pluginvm
 	cros-workon_pkg_setup
+
+	enewuser crosvm-root
+	enewgroup crosvm-root
 }
 
 src_install() {
@@ -111,17 +115,12 @@
 	dobin "${OUT}"/vmlog_forwarder
 	dobin "${OUT}"/vsh
 
-	# TODO(b/153934386): Add back arm64 when pstore works.
-	if use arcvm && use amd64; then
-		dobin "${OUT}"/vm_pstore_dump
-	fi
-
 	if use arcvm; then
-		arc-build-constants-configure
-		exeinto "${ARC_VM_VENDOR_DIR}/bin"
-		doexe "${OUT}"/vshd
+		dobin "${OUT}"/vm_pstore_dump
+		dobin "${OUT}"/vshd
 	fi
 
+	# fuzzer_component_id is unknown/unlisted
 	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/cicerone_container_listener_fuzzer
 	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/vsh_client_fuzzer
 
@@ -134,6 +133,8 @@
 	doins init/vm_cicerone.conf
 	doins init/vm_concierge.conf
 
+	dotmpfiles tmpfiles.d/*.conf
+
 	# Modify vmlog_forwarder starting and stopping conditions based on USE flags.
 	sed \
 		"-e s,@dependent_start_services@,$(get_vmlog_forwarder_start_services),"\
diff --git a/chromeos-base/vm_protos/vm_protos-0.0.1-r206.ebuild b/chromeos-base/vm_protos/vm_protos-0.0.1-r206.ebuild
deleted file mode 100644
index 012fc94..0000000
--- a/chromeos-base/vm_protos/vm_protos-0.0.1-r206.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="0f309d00c4a64c0cfc5eeb6c1a045ef1153b09a0"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "7a0977e263f3f9969fb2db8cbeafbb4bdc1f8bb4" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_GO_PACKAGES=(
-	"chromiumos/vm_tools/..."
-)
-
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk vm_tools/proto .gn"
-
-PLATFORM_SUBDIR="vm_tools/proto"
-
-inherit cros-go cros-workon platform
-
-DESCRIPTION="Chrome OS VM protobuf API"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools/proto"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="fuzzer"
-
-RDEPEND="
-	dev-libs/protobuf:=
-	net-libs/grpc:=
-	!<chromeos-base/vm_guest_tools-0.0.2
-	!<chromeos-base/vm_host_tools-0.0.2
-"
-DEPEND="
-	${RDEPEND}
-	dev-go/protobuf:=
-	dev-go/grpc:=
-"
-
-src_unpack() {
-	platform_src_unpack
-	CROS_GO_WORKSPACE="${OUT}/gen/go"
-}
-
-src_install() {
-	insinto /usr/"$(get_libdir)"/pkgconfig
-	doins vm_protos.pc
-
-	insinto /usr/include/vm_protos/proto_bindings
-	doins "${OUT}"/gen/include/vm_protos/proto_bindings/*.h
-
-	dolib.a "${OUT}"/*.a
-
-	cros-go_src_install
-}
diff --git a/chromeos-base/vm_protos/vm_protos-0.0.1-r234.ebuild b/chromeos-base/vm_protos/vm_protos-0.0.1-r234.ebuild
new file mode 100644
index 0000000..f7a54c4
--- /dev/null
+++ b/chromeos-base/vm_protos/vm_protos-0.0.1-r234.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "c410ca2884fb087c6eb0bfa9f208fc6df6afd27f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_GO_PACKAGES=(
+	"chromiumos/vm_tools/..."
+)
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk vm_tools/proto .gn"
+
+PLATFORM_SUBDIR="vm_tools/proto"
+
+inherit cros-go cros-workon platform
+
+DESCRIPTION="Chrome OS VM protobuf API"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools/proto"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="fuzzer"
+
+RDEPEND="
+	dev-libs/protobuf:=
+	net-libs/grpc:=
+	!<chromeos-base/vm_guest_tools-0.0.2
+	!<chromeos-base/vm_host_tools-0.0.2
+"
+DEPEND="
+	${RDEPEND}
+	dev-go/protobuf:=
+	dev-go/grpc:=
+"
+
+src_unpack() {
+	platform_src_unpack
+	CROS_GO_WORKSPACE="${OUT}/gen/go"
+}
+
+src_install() {
+	insinto /usr/"$(get_libdir)"/pkgconfig
+	doins vm_protos.pc
+
+	insinto /usr/include/vm_protos/proto_bindings
+	doins "${OUT}"/gen/include/vm_protos/proto_bindings/*.h
+
+	dolib.a "${OUT}"/*.a
+
+	cros-go_src_install
+}
diff --git a/chromeos-base/vpd/vpd-0.0.1-r146.ebuild b/chromeos-base/vpd/vpd-0.0.1-r146.ebuild
deleted file mode 100644
index 803ffc3e..0000000
--- a/chromeos-base/vpd/vpd-0.0.1-r146.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="6860a9045b9163afa6601e51eecc3060967d32e9"
-CROS_WORKON_TREE="911162d238c7c2f42a593aa8419fd53f5307959c"
-CROS_WORKON_PROJECT="chromiumos/platform/vpd"
-CROS_WORKON_LOCALNAME="platform/vpd"
-
-inherit cros-workon systemd
-
-DESCRIPTION="ChromeOS vital product data utilities"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/vpd/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="static systemd"
-
-# util-linux is for libuuid.
-DEPEND="sys-apps/util-linux:="
-# shflags for dump_vpd_log.
-# chromeos-activate-date for ActivateDate upstart and script.
-RDEPEND="
-	sys-apps/flashrom
-	dev-util/shflags
-	virtual/chromeos-activate-date
-	"
-
-src_compile() {
-	tc-export CC
-	use static && append-ldflags -static
-	emake all
-}
-
-src_install() {
-	# This target list should be architecture specific
-	# (no ACPI stuff on ARM for instance)
-	dosbin vpd vpd_s
-	dosbin util/check_rw_vpd util/dump_vpd_log util/update_rw_vpd
-	dosbin util/vpd_get_value util/vpd_icc
-
-	# install the init script
-	if use systemd; then
-		systemd_dounit init/vpd-log.service
-		systemd_enable_service boot-services.target vpd-log.service
-	else
-		insinto /etc/init
-		doins init/check-rw-vpd.conf
-		doins init/vpd-icc.conf
-		doins init/vpd-log.conf
-	fi
-}
-
-src_test() {
-	if ! use x86 && ! use amd64; then
-		ewarn "Skipping unittests for non-x86 arches"
-		return
-	fi
-	emake test
-}
diff --git a/chromeos-base/vpd/vpd-0.0.1-r148.ebuild b/chromeos-base/vpd/vpd-0.0.1-r148.ebuild
new file mode 100644
index 0000000..20f6665
--- /dev/null
+++ b/chromeos-base/vpd/vpd-0.0.1-r148.ebuild
@@ -0,0 +1,61 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="ea4ece04cb84d426c1ddf1b6a06dd5ba22115871"
+CROS_WORKON_TREE="17601aed7b4648a91a61c5a5ef433fc3af341264"
+CROS_WORKON_PROJECT="chromiumos/platform/vpd"
+CROS_WORKON_LOCALNAME="platform/vpd"
+
+inherit cros-workon systemd
+
+DESCRIPTION="ChromeOS vital product data utilities"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/vpd/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="static systemd"
+
+# util-linux is for libuuid.
+DEPEND="sys-apps/util-linux:="
+# shflags for dump_vpd_log.
+# chromeos-activate-date for ActivateDate upstart and script.
+RDEPEND="
+	sys-apps/flashrom
+	dev-util/shflags
+	virtual/chromeos-activate-date
+	"
+
+src_compile() {
+	tc-export CC
+	use static && append-ldflags -static
+	emake all
+}
+
+src_install() {
+	# This target list should be architecture specific
+	# (no ACPI stuff on ARM for instance)
+	dosbin vpd vpd_s
+	dosbin util/check_rw_vpd util/dump_vpd_log util/update_rw_vpd
+	dosbin util/vpd_get_value util/vpd_icc
+
+	# install the init script
+	if use systemd; then
+		systemd_dounit init/vpd-log.service
+		systemd_enable_service boot-services.target vpd-log.service
+	else
+		insinto /etc/init
+		doins init/check-rw-vpd.conf
+		doins init/vpd-icc.conf
+		doins init/vpd-log.conf
+	fi
+}
+
+src_test() {
+	if ! use x86 && ! use amd64; then
+		ewarn "Skipping unittests for non-x86 arches"
+		return
+	fi
+	emake test
+}
diff --git a/chromeos-base/vpn-manager/vpn-manager-0.0.1-r2798.ebuild b/chromeos-base/vpn-manager/vpn-manager-0.0.1-r2798.ebuild
deleted file mode 100644
index 02cc757..0000000
--- a/chromeos-base/vpn-manager/vpn-manager-0.0.1-r2798.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="d27dfb81bc87df4db16849f5da1b96f1cf5cd10b"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "767a114667a7ed090f12adcaca93e7d4ef6f034f" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk vpn-manager .gn"
-
-PLATFORM_SUBDIR="vpn-manager"
-
-inherit cros-workon platform
-
-DESCRIPTION="L2TP/IPsec VPN manager for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/vpn-manager/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-	net-dialup/ppp:=
-	net-dialup/xl2tpd:=
-	net-vpn/strongswan:=
-"
-
-DEPEND="${RDEPEND}"
-
-src_install() {
-	insinto /usr/include/chromeos/vpn-manager
-	doins service_error.h
-	dosbin "${OUT}"/l2tpipsec_vpn
-	exeinto /usr/libexec/l2tpipsec_vpn
-	doexe bin/pluto_updown
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/vpn_manager_service_manager_fuzzer
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}"/vpn_manager_test
-}
diff --git a/chromeos-base/vpn-manager/vpn-manager-0.0.1-r2827.ebuild b/chromeos-base/vpn-manager/vpn-manager-0.0.1-r2827.ebuild
new file mode 100644
index 0000000..e6bb3cc
--- /dev/null
+++ b/chromeos-base/vpn-manager/vpn-manager-0.0.1-r2827.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "39929280520bd57dd9967f54e074e37ce6c8c7bf" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk vpn-manager .gn"
+
+PLATFORM_SUBDIR="vpn-manager"
+
+inherit cros-workon platform
+
+DESCRIPTION="L2TP/IPsec VPN manager for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/vpn-manager/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+	net-dialup/ppp:=
+	net-dialup/xl2tpd:=
+	net-vpn/strongswan:=
+"
+
+DEPEND="${RDEPEND}"
+
+src_install() {
+	insinto /usr/include/chromeos/vpn-manager
+	doins service_error.h
+	dosbin "${OUT}"/l2tpipsec_vpn
+	exeinto /usr/libexec/l2tpipsec_vpn
+	doexe bin/pluto_updown
+
+	local fuzzer_component_id="156085"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/vpn_manager_service_manager_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}"/vpn_manager_test
+}
diff --git a/chromeos-base/vpn-manager/vpn-manager-9999.ebuild b/chromeos-base/vpn-manager/vpn-manager-9999.ebuild
index b865677..e303e94 100644
--- a/chromeos-base/vpn-manager/vpn-manager-9999.ebuild
+++ b/chromeos-base/vpn-manager/vpn-manager-9999.ebuild
@@ -33,7 +33,9 @@
 	exeinto /usr/libexec/l2tpipsec_vpn
 	doexe bin/pluto_updown
 
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/vpn_manager_service_manager_fuzzer
+	local fuzzer_component_id="156085"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/vpn_manager_service_manager_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/chromeos-base/webserver/webserver-0.0.1-r2336.ebuild b/chromeos-base/webserver/webserver-0.0.1-r2336.ebuild
deleted file mode 100644
index 9b298d7..0000000
--- a/chromeos-base/webserver/webserver-0.0.1-r2336.ebuild
+++ /dev/null
@@ -1,78 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="5e27a24b2ce6909804fce92819b7f9752ad47565"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "a43dee1645ab3169cf3c0d94a0d83cf4492ec75b" "06cc9079e44816d4dd5329a76829384766a3ea06" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE="common-mk permission_broker webserver .gn"
-
-PLATFORM_SUBDIR="webserver"
-
-inherit cros-workon platform user
-
-DESCRIPTION="HTTP sever interface library"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/webserver/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="
-	chromeos-base/permission_broker:=
-	net-libs/libmicrohttpd:=
-	!chromeos-base/libwebserv:=
-"
-
-DEPEND="
-	${RDEPEND}
-	chromeos-base/permission_broker-client:=
-"
-
-pkg_preinst() {
-	# Create user and group for webservd.
-	enewuser "webservd"
-	enewgroup "webservd"
-}
-
-src_install() {
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	local v="$(libchrome_ver)"
-	libwebserv/preinstall.sh "${OUT}" "${v}"
-	dolib.so "${OUT}/lib/libwebserv.so"
-	doins "${OUT}/lib/libwebserv.pc"
-
-	# Install header files from libwebserv
-	insinto /usr/include/libwebserv
-	doins libwebserv/*.h
-
-	# Install init scripts for webservd.
-	insinto /etc/init
-	doins webservd/etc/init/webservd.conf
-
-	# Install DBus configuration files.
-	insinto /etc/dbus-1/system.d
-	doins webservd/etc/dbus-1/org.chromium.WebServer.conf
-
-	# Install seccomp filter for webservd.
-	insinto /usr/share/filters
-	doins webservd/usr/share/filters/webservd-seccomp.policy
-
-	# Install web server daemon.
-	dobin "${OUT}"/webservd
-}
-
-platform_pkg_test() {
-	local tests=(
-		libwebserv_testrunner
-		webservd_testrunner
-	)
-
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" "${OUT}/${test_bin}"
-	done
-}
diff --git a/chromeos-base/webserver/webserver-0.0.1-r2369.ebuild b/chromeos-base/webserver/webserver-0.0.1-r2369.ebuild
new file mode 100644
index 0000000..bb9d89c
--- /dev/null
+++ b/chromeos-base/webserver/webserver-0.0.1-r2369.ebuild
@@ -0,0 +1,78 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "5597a78a68ec9dc671f7e83a6d1c496e10183e08" "0fbecdd495ca696219e492ffa78c2027b24dc1f0" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE="common-mk permission_broker webserver .gn"
+
+PLATFORM_SUBDIR="webserver"
+
+inherit cros-workon platform user
+
+DESCRIPTION="HTTP sever interface library"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/webserver/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="
+	chromeos-base/permission_broker:=
+	net-libs/libmicrohttpd:=
+	!chromeos-base/libwebserv:=
+"
+
+DEPEND="
+	${RDEPEND}
+	chromeos-base/permission_broker-client:=
+"
+
+pkg_preinst() {
+	# Create user and group for webservd.
+	enewuser "webservd"
+	enewgroup "webservd"
+}
+
+src_install() {
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	local v="$(libchrome_ver)"
+	libwebserv/preinstall.sh "${OUT}" "${v}"
+	dolib.so "${OUT}/lib/libwebserv.so"
+	doins "${OUT}/lib/libwebserv.pc"
+
+	# Install header files from libwebserv
+	insinto /usr/include/libwebserv
+	doins libwebserv/*.h
+
+	# Install init scripts for webservd.
+	insinto /etc/init
+	doins webservd/etc/init/webservd.conf
+
+	# Install DBus configuration files.
+	insinto /etc/dbus-1/system.d
+	doins webservd/etc/dbus-1/org.chromium.WebServer.conf
+
+	# Install seccomp filter for webservd.
+	insinto /usr/share/filters
+	doins webservd/usr/share/filters/webservd-seccomp.policy
+
+	# Install web server daemon.
+	dobin "${OUT}"/webservd
+}
+
+platform_pkg_test() {
+	local tests=(
+		libwebserv_testrunner
+		webservd_testrunner
+	)
+
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" "${OUT}/${test_bin}"
+	done
+}
diff --git a/chromeos-base/wilco-dtc-grpc-protos/wilco-dtc-grpc-protos-0.0.1-r152.ebuild b/chromeos-base/wilco-dtc-grpc-protos/wilco-dtc-grpc-protos-0.0.1-r152.ebuild
deleted file mode 100644
index 0da3e53..0000000
--- a/chromeos-base/wilco-dtc-grpc-protos/wilco-dtc-grpc-protos-0.0.1-r152.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "32f385c265f6f3f6326d6b0befb16426b78eb150" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_GO_PACKAGES=(
-	"chromiumos/wilco_dtc/..."
-)
-
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk diagnostics/grpc .gn"
-
-PLATFORM_SUBDIR="diagnostics/grpc"
-
-WANT_LIBCHROME="no"
-WANT_LIBBRILLO="no"
-inherit cros-go cros-workon platform
-
-DESCRIPTION="Chrome OS Wilco DTC proto/gRPC API"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics/grpc"
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND="
-	dev-libs/protobuf:=
-	net-libs/grpc:=
-"
-DEPEND="
-	${RDEPEND}
-	dev-go/protobuf
-	dev-go/grpc
-"
-
-src_unpack() {
-	platform_src_unpack
-	CROS_GO_WORKSPACE="${OUT}/gen/go"
-}
-
-src_install() {
-	insinto /usr/"$(get_libdir)"/pkgconfig
-	doins wilco_dtc_grpc_protos.pc
-
-	insinto /usr/include/wilco_dtc/proto_bindings
-	doins "${OUT}"/gen/include/*.h
-
-	dolib.a "${OUT}"/*.a
-
-	cros-go_src_install
-}
diff --git a/chromeos-base/wilco-dtc-grpc-protos/wilco-dtc-grpc-protos-0.0.1-r177.ebuild b/chromeos-base/wilco-dtc-grpc-protos/wilco-dtc-grpc-protos-0.0.1-r177.ebuild
new file mode 100644
index 0000000..2964aba
--- /dev/null
+++ b/chromeos-base/wilco-dtc-grpc-protos/wilco-dtc-grpc-protos-0.0.1-r177.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "32f385c265f6f3f6326d6b0befb16426b78eb150" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_GO_PACKAGES=(
+	"chromiumos/wilco_dtc/..."
+)
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk diagnostics/grpc .gn"
+
+PLATFORM_SUBDIR="diagnostics/grpc"
+
+WANT_LIBCHROME="no"
+WANT_LIBBRILLO="no"
+inherit cros-go cros-workon platform
+
+DESCRIPTION="Chrome OS Wilco DTC proto/gRPC API"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics/grpc"
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	dev-libs/protobuf:=
+	net-libs/grpc:=
+"
+DEPEND="
+	${RDEPEND}
+	dev-go/protobuf
+	dev-go/grpc
+"
+
+src_unpack() {
+	platform_src_unpack
+	CROS_GO_WORKSPACE="${OUT}/gen/go"
+}
+
+src_install() {
+	insinto /usr/"$(get_libdir)"/pkgconfig
+	doins wilco_dtc_grpc_protos.pc
+
+	insinto /usr/include/wilco_dtc/proto_bindings
+	doins "${OUT}"/gen/include/*.h
+
+	dolib.a "${OUT}"/*.a
+
+	cros-go_src_install
+}
diff --git a/chromeos-base/zephyr-build-tools/OWNERS b/chromeos-base/zephyr-build-tools/OWNERS
index 77fb198..a595829 100644
--- a/chromeos-base/zephyr-build-tools/OWNERS
+++ b/chromeos-base/zephyr-build-tools/OWNERS
@@ -1 +1 @@
-include chromiumos/overlays/chromiumos-overlay:/chromeos-base/chromeos-zephyr/OWNERS
+include /chromeos-base/chromeos-zephyr/OWNERS
diff --git a/chromeos-base/zephyr-build-tools/zephyr-build-tools-0.0.1-r133.ebuild b/chromeos-base/zephyr-build-tools/zephyr-build-tools-0.0.1-r133.ebuild
new file mode 100644
index 0000000..06ec56e
--- /dev/null
+++ b/chromeos-base/zephyr-build-tools/zephyr-build-tools-0.0.1-r133.ebuild
@@ -0,0 +1,52 @@
+# Copyright 2020 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="eeb5d0d332c8c762fab1b79afd2f187f88c12621"
+CROS_WORKON_TREE="37e9cd5073e3dc50b45076a08888edacebd9366a"
+CROS_WORKON_PROJECT="chromiumos/platform/ec"
+CROS_WORKON_LOCALNAME="platform/ec"
+CROS_WORKON_SUBTREE="zephyr/zmake"
+
+PYTHON_COMPAT=( python{3_6,3_7,3_8,3_9} )
+
+inherit cros-workon distutils-r1
+
+DESCRIPTION="Tools used for building Zephyr OS"
+HOMEPAGE="http://src.chromium.org"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+BDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
+RDEPEND="
+	dev-embedded/binman
+	dev-python/black[${PYTHON_USEDEP}]
+	dev-python/colorama[${PYTHON_USEDEP}]
+	dev-python/docopt[${PYTHON_USEDEP}]
+	dev-python/flake8[${PYTHON_USEDEP}]
+	dev-python/hypothesis[${PYTHON_USEDEP}]
+	dev-python/isort[${PYTHON_USEDEP}]
+	dev-python/jsonschema[${PYTHON_USEDEP}]
+	dev-python/pykwalify[${PYTHON_USEDEP}]
+	dev-python/pytest[${PYTHON_USEDEP}]
+	dev-python/pyyaml[${PYTHON_USEDEP}]
+	dev-python/testfixtures[${PYTHON_USEDEP}]
+	dev-util/ninja
+	sys-apps/dtc
+"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+src_unpack() {
+	cros-workon_src_unpack
+	S+="/zephyr/zmake"
+}
+
+src_test() {
+	python3 -m pytest tests/*.py -v || die "Tests fail with ${EPYTHON}"
+}
diff --git a/chromeos-base/zephyr-build-tools/zephyr-build-tools-0.0.1-r93.ebuild b/chromeos-base/zephyr-build-tools/zephyr-build-tools-0.0.1-r93.ebuild
deleted file mode 100644
index 771a6e6..0000000
--- a/chromeos-base/zephyr-build-tools/zephyr-build-tools-0.0.1-r93.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 2020 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="46481b71d4d9a7d0f0830794fb84900e8cfd3d7a"
-CROS_WORKON_TREE="f0345f01a3331f280eae5ffaa6570562fd42e79c"
-CROS_WORKON_PROJECT="chromiumos/platform/ec"
-CROS_WORKON_LOCALNAME="platform/ec"
-CROS_WORKON_SUBTREE="zephyr/zmake"
-
-PYTHON_COMPAT=( python{3_6,3_7,3_8,3_9} )
-
-inherit cros-workon distutils-r1
-
-DESCRIPTION="Tools used for building Zephyr OS"
-HOMEPAGE="http://src.chromium.org"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-BDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
-RDEPEND="
-	dev-embedded/binman
-	dev-python/colorama[${PYTHON_USEDEP}]
-	dev-python/docopt[${PYTHON_USEDEP}]
-	dev-python/hypothesis[${PYTHON_USEDEP}]
-	dev-python/jsonschema[${PYTHON_USEDEP}]
-	dev-python/pykwalify[${PYTHON_USEDEP}]
-	dev-python/pytest[${PYTHON_USEDEP}]
-	dev-python/pyyaml[${PYTHON_USEDEP}]
-	dev-python/testfixtures[${PYTHON_USEDEP}]
-	dev-util/ninja
-	sys-apps/dtc
-"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-src_unpack() {
-	cros-workon_src_unpack
-	S+="/zephyr/zmake"
-}
-
-src_test() {
-	python3 -m pytest tests/*.py -v || die "Tests fail with ${EPYTHON}"
-}
diff --git a/chromeos-base/zephyr-build-tools/zephyr-build-tools-9999.ebuild b/chromeos-base/zephyr-build-tools/zephyr-build-tools-9999.ebuild
index 5089f84..01d3e9e 100644
--- a/chromeos-base/zephyr-build-tools/zephyr-build-tools-9999.ebuild
+++ b/chromeos-base/zephyr-build-tools/zephyr-build-tools-9999.ebuild
@@ -23,9 +23,12 @@
 BDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
 RDEPEND="
 	dev-embedded/binman
+	dev-python/black[${PYTHON_USEDEP}]
 	dev-python/colorama[${PYTHON_USEDEP}]
 	dev-python/docopt[${PYTHON_USEDEP}]
+	dev-python/flake8[${PYTHON_USEDEP}]
 	dev-python/hypothesis[${PYTHON_USEDEP}]
+	dev-python/isort[${PYTHON_USEDEP}]
 	dev-python/jsonschema[${PYTHON_USEDEP}]
 	dev-python/pykwalify[${PYTHON_USEDEP}]
 	dev-python/pytest[${PYTHON_USEDEP}]
diff --git a/chromeos/binhost/host/OWNERS b/chromeos/binhost/host/OWNERS
new file mode 100644
index 0000000..6ee4c04
--- /dev/null
+++ b/chromeos/binhost/host/OWNERS
@@ -0,0 +1,4 @@
+# chromiumos-sdk build bot service account, so it
+# can make upgrades automatically without OWNERS approval.
+# See: b/192581987
+per-file sdk_version.conf = 3su6n15k.default@developer.gserviceaccount.com
diff --git a/chromeos/binhost/host/sdk_version.conf b/chromeos/binhost/host/sdk_version.conf
index a72b1ed..8aa1ead 100644
--- a/chromeos/binhost/host/sdk_version.conf
+++ b/chromeos/binhost/host/sdk_version.conf
@@ -1,8 +1,8 @@
 # The last version of the sdk that we built & tested.
-SDK_LATEST_VERSION="2021.06.26.094653"
+SDK_LATEST_VERSION="2021.10.11.223549"
 
 # How to find the standalone toolchains from the above sdk.
-TC_PATH="2021/06/%(target)s-2021.06.26.094653.tar.xz"
+TC_PATH="2021/10/%(target)s-2021.10.11.223549.tar.xz"
 
 # Frozen version of SDK used for bootstrapping.
 # If unset, SDK_LATEST_VERSION will be used for bootstrapping.
diff --git a/chromeos/binhost/target/amd64-generic-POSTSUBMIT_BINHOST.conf b/chromeos/binhost/target/amd64-generic-POSTSUBMIT_BINHOST.conf
index c307d02..93f40f2 100644
--- a/chromeos/binhost/target/amd64-generic-POSTSUBMIT_BINHOST.conf
+++ b/chromeos/binhost/target/amd64-generic-POSTSUBMIT_BINHOST.conf
@@ -1 +1 @@
-POSTSUBMIT_BINHOST="gs://chromeos-prebuilt/board/amd64-generic/postsubmit-R93-14055.0.0-20576-8843238083547831664/packages"
\ No newline at end of file
+POSTSUBMIT_BINHOST="gs://chromeos-prebuilt/board/amd64-generic/postsubmit-R97-14278.0.0-25024-8833599955908856257/packages"
\ No newline at end of file
diff --git a/chromeos/binhost/target/arm-generic-POSTSUBMIT_BINHOST.conf b/chromeos/binhost/target/arm-generic-POSTSUBMIT_BINHOST.conf
index 501f2cb..d46682f 100644
--- a/chromeos/binhost/target/arm-generic-POSTSUBMIT_BINHOST.conf
+++ b/chromeos/binhost/target/arm-generic-POSTSUBMIT_BINHOST.conf
@@ -1 +1 @@
-POSTSUBMIT_BINHOST="gs://chromeos-prebuilt/board/arm-generic/postsubmit-R93-14055.0.0-20576-8843237868994542384/packages"
\ No newline at end of file
+POSTSUBMIT_BINHOST="gs://chromeos-prebuilt/board/arm-generic/postsubmit-R97-14278.0.0-25024-8833599727464616497/packages"
\ No newline at end of file
diff --git a/chromeos/binhost/target/arm64-generic-POSTSUBMIT_BINHOST.conf b/chromeos/binhost/target/arm64-generic-POSTSUBMIT_BINHOST.conf
index bb9ba2d..351001e 100644
--- a/chromeos/binhost/target/arm64-generic-POSTSUBMIT_BINHOST.conf
+++ b/chromeos/binhost/target/arm64-generic-POSTSUBMIT_BINHOST.conf
@@ -1 +1 @@
-POSTSUBMIT_BINHOST="gs://chromeos-prebuilt/board/arm64-generic/postsubmit-R93-14055.0.0-20576-8843237685432791152/packages"
\ No newline at end of file
+POSTSUBMIT_BINHOST="gs://chromeos-prebuilt/board/arm64-generic/postsubmit-R97-14278.0.0-25024-8833599547859907745/packages"
\ No newline at end of file
diff --git a/chromeos/binhost/target/eve-kvm-POSTSUBMIT_BINHOST.conf b/chromeos/binhost/target/eve-kvm-POSTSUBMIT_BINHOST.conf
deleted file mode 100644
index 57cb0cd..0000000
--- a/chromeos/binhost/target/eve-kvm-POSTSUBMIT_BINHOST.conf
+++ /dev/null
@@ -1 +0,0 @@
-POSTSUBMIT_BINHOST="gs://chromeos-prebuilt/board/eve-kvm/postsubmit-R84-13090.0.0-32231-8880593000358490496/packages"
\ No newline at end of file
diff --git a/chromeos/binhost/target/moblab-generic-vm-POSTSUBMIT_BINHOST.conf b/chromeos/binhost/target/moblab-generic-vm-POSTSUBMIT_BINHOST.conf
deleted file mode 100644
index 6434b8e..0000000
--- a/chromeos/binhost/target/moblab-generic-vm-POSTSUBMIT_BINHOST.conf
+++ /dev/null
@@ -1 +0,0 @@
-POSTSUBMIT_BINHOST="gs://chromeos-prebuilt/board/moblab-generic-vm/postsubmit-R81-12764.0.0-25717-8893875694828096784/packages"
\ No newline at end of file
diff --git a/chromeos/binhost/target/tael-POSTSUBMIT_BINHOST.conf b/chromeos/binhost/target/tael-POSTSUBMIT_BINHOST.conf
index c37fc16..4d2dd45 100644
--- a/chromeos/binhost/target/tael-POSTSUBMIT_BINHOST.conf
+++ b/chromeos/binhost/target/tael-POSTSUBMIT_BINHOST.conf
@@ -1 +1 @@
-POSTSUBMIT_BINHOST="gs://chromeos-prebuilt/board/tael/postsubmit-R93-14055.0.0-20576-8843235574117609648/packages"
\ No newline at end of file
+POSTSUBMIT_BINHOST="gs://chromeos-prebuilt/board/tael/postsubmit-R97-14281.0.0-25081-8833474618891529025/packages"
\ No newline at end of file
diff --git a/chromeos/binhost/target/tatl-POSTSUBMIT_BINHOST.conf b/chromeos/binhost/target/tatl-POSTSUBMIT_BINHOST.conf
index 330f1ed..a6a4d23 100644
--- a/chromeos/binhost/target/tatl-POSTSUBMIT_BINHOST.conf
+++ b/chromeos/binhost/target/tatl-POSTSUBMIT_BINHOST.conf
@@ -1 +1 @@
-POSTSUBMIT_BINHOST="gs://chromeos-prebuilt/board/tatl/postsubmit-R93-14055.0.0-20576-8843235557501785328/packages"
\ No newline at end of file
+POSTSUBMIT_BINHOST="gs://chromeos-prebuilt/board/tatl/postsubmit-R97-14281.0.0-25081-8833474602511211585/packages"
\ No newline at end of file
diff --git a/chromeos/config/chromeos_version.sh b/chromeos/config/chromeos_version.sh
index 2b2bee9..797ef9b 100755
--- a/chromeos/config/chromeos_version.sh
+++ b/chromeos/config/chromeos_version.sh
@@ -15,7 +15,7 @@
 if [ -z "${FLAGS_version}" ]; then
   # Release Build number.
   # Increment by 1 for every release build.
-  CHROMEOS_BUILD=14056
+  CHROMEOS_BUILD=14283
 
   # Release Branch number.
   # Increment by 1 for every release build on a branch.
diff --git a/chromeos/config/env/dev-libs/elfutils b/chromeos/config/env/dev-libs/elfutils
index 003e69d..bf29735 100644
--- a/chromeos/config/env/dev-libs/elfutils
+++ b/chromeos/config/env/dev-libs/elfutils
@@ -1,8 +1,8 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# 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.
 
-# elfutils cannot be built from clang. See https://crbug.com/217722
-cros_pre_src_prepare_use_gcc() {
-	cros_use_gcc
+# elfutils cannot be built with sanitizer flags
+cros_pre_src_prepare_filter_sanitizers() {
+	filter_sanitizers
 }
diff --git a/chromeos/config/env/dev-util/glslang b/chromeos/config/env/dev-util/glslang
new file mode 100644
index 0000000..c111e8d
--- /dev/null
+++ b/chromeos/config/env/dev-util/glslang
@@ -0,0 +1,8 @@
+# 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.
+
+# glslang fails to build with sanitizer flags, https://crbug.com/943766.
+cros_pre_src_prepare_filter_sanitizers() {
+	filter_sanitizers
+}
diff --git a/chromeos/config/env/dev-util/spirv-tools b/chromeos/config/env/dev-util/spirv-tools
new file mode 100644
index 0000000..2595a11
--- /dev/null
+++ b/chromeos/config/env/dev-util/spirv-tools
@@ -0,0 +1,8 @@
+# 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.
+
+# spirv-tools fails to build with sanitizer flags, https://crbug.com/943766.
+cros_pre_src_prepare_filter_sanitizers() {
+	filter_sanitizers
+}
diff --git a/chromeos/config/env/sys-apps/attr b/chromeos/config/env/sys-apps/attr
new file mode 100644
index 0000000..9cbb6e5
--- /dev/null
+++ b/chromeos/config/env/sys-apps/attr
@@ -0,0 +1,9 @@
+# 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.
+
+# The lld linker is buggy, so attr forces ld.bfd usage.
+# https://bugs.llvm.org/show_bug.cgi?id=51961
+cros_pre_src_prepare_use_bfd() {
+	LDFLAGS="${LDFLAGS/-Wl,--icf=all}"
+}
diff --git a/chromeos/config/env/sys-devel/binutils b/chromeos/config/env/sys-devel/binutils
deleted file mode 100644
index 2703d8d..0000000
--- a/chromeos/config/env/sys-devel/binutils
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 2015 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.
-
-# binutils cannot be built from clang. See crbug.com/477433
-# binutils is the only package left to fix before we get a successful
-# amd64-generic-llvm build. There is a fix upstream it may take time to
-# bring it here, so force it to build with gcc for now.
-cros_pre_src_prepare_use_gcc() {
-	cros_use_gcc
-}
diff --git a/chromeos/config/make.conf.amd64-host b/chromeos/config/make.conf.amd64-host
index 495ec88..2bd6fc4 100644
--- a/chromeos/config/make.conf.amd64-host
+++ b/chromeos/config/make.conf.amd64-host
@@ -18,7 +18,7 @@
 PORT_LOGDIR="/var/log/portage"
 
 source /usr/local/portage/chromiumos/chromeos/binhost/host/amd64-PREFLIGHT_BINHOST.conf
-FULL_BINHOST="gs://chromeos-prebuilt/host/amd64/amd64-host/chroot-2021.06.26.094653/packages/"
+FULL_BINHOST="gs://chromeos-prebuilt/host/amd64/amd64-host/chroot-2021.10.11.223549/packages/"
 PORTAGE_BINHOST="$PREFLIGHT_BINHOST $FULL_BINHOST"
 
 GENTOO_MIRRORS="https://commondatastorage.googleapis.com/chromeos-localmirror"
diff --git a/chromeos/config/make.conf.generic-target b/chromeos/config/make.conf.generic-target
index 10cbe78..d239d4d 100644
--- a/chromeos/config/make.conf.generic-target
+++ b/chromeos/config/make.conf.generic-target
@@ -69,9 +69,9 @@
 # Allow a board to override or define additional settings.
 source make.conf.board
 
-# NOTE: Flags here apply to all of our toolchains, including GCC, clang, and
-# ARC++'s clang (which notably uses ld.bfd at times). Please tread carefully and
-# test thoroughly before adding flags here.
+# NOTE: Flags here apply to all of our C and C++ toolchains, including GCC,
+# clang, and ARC++'s clang (which notably uses ld.bfd at times). Please tread
+# carefully and test thoroughly before adding flags here.
 COMMON_COMPILER_FLAGS="-Os -pipe ${MARCH_TUNE} ${BOARD_COMPILER_FLAGS} \
 -g ${CXXEXCEPTIONS_FLAGS} -ffunction-sections -fdata-sections"
 CFLAGS="${CFLAGS} ${COMMON_COMPILER_FLAGS}"
@@ -81,5 +81,7 @@
 
 LDFLAGS="${LDFLAGS} -Wl,--gc-sections -Wl,--icf=all"
 
+CROS_BASE_RUSTFLAGS="${BOARD_RUSTFLAGS}"
+
 # Allow the user to override or define additional settings.
 source make.conf.user
diff --git a/dev-cpp/absl/Manifest b/dev-cpp/absl/Manifest
index 2eb458f..91748cb 100644
--- a/dev-cpp/absl/Manifest
+++ b/dev-cpp/absl/Manifest
@@ -1 +1 @@
-DIST absl-20200923.tar.gz 1783122 BLAKE2B cd72bd6df04ddef6e4190c40dcfc34f95f424c30f3a5018e8305e603de58d737e15c1e33239d11bba2e3c669d6b18770a2f9de3075685f6ba38de26fc6e572b8 SHA512 8ad89fb1e0d70fdd1df6ac996c186243af43842eb08d09efbb1b7bcdab617dd394aa4bf93644f0eacc05d2ddf3db78e2ebe3eb496cfa24ece919f197a3a624d6
+DIST absl-20210324.1.tar.gz 1774134 BLAKE2B 8dd42b3d60a38995eeeeb72ba8aaa367c3caff118d88069dba9df24b155318ffd6c4e289c263346899bf7fc0bf6e8332380407a8a93c77f8cade0e8e74743b84 SHA512 fe593ed98eeea5461abca95ebb9dd3f7e8eedaa15e009f776945fdbb6ed489c61966611c1c72558d2ccdd541b952a345e51885d522ff29542cbcc837cf565866
diff --git a/dev-cpp/absl/absl-20200923-r4.ebuild b/dev-cpp/absl/absl-20200923-r4.ebuild
deleted file mode 120000
index c992bc1..0000000
--- a/dev-cpp/absl/absl-20200923-r4.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-absl-20200923.ebuild
\ No newline at end of file
diff --git a/dev-cpp/absl/absl-20200923.ebuild b/dev-cpp/absl/absl-20200923.ebuild
deleted file mode 100644
index 2c47d38..0000000
--- a/dev-cpp/absl/absl-20200923.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit cmake-utils toolchain-funcs
-
-DESCRIPTION="Abseil - C++ Common Libraries"
-HOMEPAGE="https://abseil.io"
-SRC_URI="https://github.com/abseil/abseil-cpp/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND=""
-DEPEND=""
-
-S="${WORKDIR}/abseil-cpp-${PV}"
-ABSLDIR="${WORKDIR}/${P}_build/absl"
-
-src_prepare() {
-	# Workaround to avoid conflict with other packages: see also b/184603259
-	grep -l -R -Z "absl::" . | xargs -0 sed -i 's/absl::/absl::ABSL_OPTION_INLINE_NAMESPACE_NAME::/g'
-	default
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DBUILD_SHARED_LIBS=on
-		-DCMAKE_CXX_STANDARD=17
-	)
-
-	cmake-utils_src_configure
-}
-
-src_compile() {
-	cmake-utils_src_compile
-
-	local libs=( "${ABSLDIR}"/*/libabsl_*.so )
-	[[ ${#libs[@]} -le 1 ]] && die
-	local linklibs="$(echo "${libs[*]}" | sed -E -e 's|[^ ]*/lib([^ ]*)\.so|-l\1|g')"
-	sed -e "s/@LIBS@/${linklibs}/g" "${FILESDIR}/absl.pc.in" > absl.pc || die
-}
-
-src_install() {
-	cmake-utils_src_install
-
-	insinto /usr/$(get_libdir)/pkgconfig
-	doins absl.pc
-}
diff --git a/dev-cpp/absl/absl-20210324.1.ebuild b/dev-cpp/absl/absl-20210324.1.ebuild
new file mode 100644
index 0000000..27f21e6
--- /dev/null
+++ b/dev-cpp/absl/absl-20210324.1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils toolchain-funcs
+
+DESCRIPTION="Abseil - C++ Common Libraries"
+HOMEPAGE="https://abseil.io"
+SRC_URI="https://github.com/abseil/abseil-cpp/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND=""
+DEPEND=""
+
+S="${WORKDIR}/abseil-cpp-${PV}"
+ABSLDIR="${WORKDIR}/${P}_build/absl"
+
+src_prepare() {
+	# Workaround to avoid conflict with other packages: see also b/184603259
+	grep -l -R -Z "absl::" . | xargs -0 sed -i 's/absl::/absl::ABSL_OPTION_INLINE_NAMESPACE_NAME::/g'
+	default
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DBUILD_SHARED_LIBS=on
+		-DCMAKE_CXX_STANDARD=17
+	)
+
+	cmake-utils_src_configure
+}
+
+src_compile() {
+	cmake-utils_src_compile
+
+	local libs=( "${ABSLDIR}"/*/libabsl_*.so )
+	[[ ${#libs[@]} -le 1 ]] && die
+	local linklibs="$(echo "${libs[*]}" | sed -E -e 's|[^ ]*/lib([^ ]*)\.so|-l\1|g')"
+	sed -e "s/@LIBS@/${linklibs}/g" "${FILESDIR}/absl.pc.in" > absl.pc || die
+}
+
+src_install() {
+	cmake-utils_src_install
+
+	insinto /usr/$(get_libdir)/pkgconfig
+	doins absl.pc
+}
diff --git a/dev-db/mariadb-connector-c/files/mariadb-connector-c-3.0.6-cmake.patch b/dev-db/mariadb-connector-c/files/mariadb-connector-c-3.0.6-cmake.patch
new file mode 100644
index 0000000..ba0f927
--- /dev/null
+++ b/dev-db/mariadb-connector-c/files/mariadb-connector-c-3.0.6-cmake.patch
@@ -0,0 +1,23 @@
+From abbfaef5b6f4274fa236b9aa1193ffdb8b3ceab5 Mon Sep 17 00:00:00 2001
+From: Thomas Deutschmann <whissi@gentoo.org>
+Date: Tue, 2 Mar 2021 17:49:59 +0100
+Subject: [PATCH] cmake: Fix flow control statement in libmariadb
+
+Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
+---
+ libmariadb/cmake/ConnectorName.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libmariadb/cmake/ConnectorName.cmake b/libmariadb/cmake/ConnectorName.cmake
+index b7bbbad8c..357b8ac08 100644
+--- a/cmake/ConnectorName.cmake
++++ b/cmake/ConnectorName.cmake
+@@ -22,7 +22,7 @@ IF(CMAKE_SYSTEM_NAME MATCHES "Windows")
+     SET(MACHINE_NAME "x64")
+   ELSE()
+     SET(MACHINE_NAME "32")
+-  END()
++  ENDIF()
+ ENDIF()
+ 
+ SET(product_name "mysql-connector-c-${CPACK_PACKAGE_VERSION}-${PLATFORM_NAME}${CONCAT_SIGN}${MACHINE_NAME}")
diff --git a/dev-db/mariadb-connector-c/mariadb-connector-c-3.0.6-r1.ebuild b/dev-db/mariadb-connector-c/mariadb-connector-c-3.0.6-r1.ebuild
deleted file mode 100644
index ef5c587..0000000
--- a/dev-db/mariadb-connector-c/mariadb-connector-c-3.0.6-r1.ebuild
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-VCS_INHERIT=""
-if [[ "${PV}" == 9999 ]] ; then
-	VCS_INHERIT="git-r3"
-	EGIT_REPO_URI="https://github.com/MariaDB/mariadb-connector-c.git"
-else
-	MY_PN=${PN#mariadb-}
-	MY_PV=${PV/_b/-b}
-	SRC_URI="https://downloads.mariadb.org/f/${MY_PN}-${PV%_beta}/${PN}-${MY_PV}-src.tar.gz?serve -> ${P}-src.tar.gz"
-	S="${WORKDIR%/}/${PN}-${MY_PV}-src"
-	KEYWORDS="*"
-fi
-
-inherit cmake-utils multilib-minimal toolchain-funcs ${VCS_INHERIT}
-
-MULTILIB_CHOST_TOOLS=( ${EPREFIX}/usr/bin/mariadb_config )
-
-MULTILIB_WRAPPED_HEADERS+=(
-	/usr/include/mariadb/mariadb_version.h
-)
-
-DESCRIPTION="C client library for MariaDB/MySQL"
-HOMEPAGE="https://mariadb.org/"
-LICENSE="LGPL-2.1"
-
-SLOT="0/3"
-IUSE="+curl gnutls kerberos libressl mysqlcompat +ssl static-libs test"
-
-DEPEND="sys-libs/zlib:=[${MULTILIB_USEDEP}]
-	virtual/libiconv:=[${MULTILIB_USEDEP}]
-	curl? ( net-misc/curl:0=[${MULTILIB_USEDEP}] )
-	kerberos? ( || ( app-crypt/mit-krb5[${MULTILIB_USEDEP}]
-			app-crypt/heimdal[${MULTILIB_USEDEP}] ) )
-	ssl? (
-		gnutls? ( >=net-libs/gnutls-3.3.24:0=[${MULTILIB_USEDEP}] )
-		!gnutls? (
-			libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
-			!libressl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] )
-		)
-	)
-	"
-RDEPEND="${DEPEND}
-	mysqlcompat? (
-	!dev-db/mysql[client-libs(+)]
-	!dev-db/mysql-cluster[client-libs(+)]
-	!dev-db/mariadb[client-libs(+)]
-	!dev-db/mariadb-galera[client-libs(+)]
-	!dev-db/percona-server[client-libs(+)]
-	!dev-db/mysql-connector-c )
-	!>=dev-db/mariadb-10.2.0[client-libs(+)]
-	"
-PATCHES=(
-	"${FILESDIR}"/gentoo-layout-3.0.patch
-	"${FILESDIR}"/${PN}-3.0.6-provide-pkconfig-file.patch
-)
-
-src_configure() {
-	# bug 508724 mariadb cannot use ld.gold
-	tc-ld-disable-gold
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	local mycmakeargs=(
-		-DWITH_EXTERNAL_ZLIB=ON
-		-DWITH_SSL:STRING=$(usex ssl $(usex gnutls GNUTLS OPENSSL) OFF)
-		-DWITH_CURL=$(usex curl ON OFF)
-		-DCLIENT_PLUGIN_AUTH_GSSAPI_CLIENT:STRING=$(usex kerberos DYNAMIC OFF)
-		-DMARIADB_UNIX_ADDR="${EPREFIX%/}/var/run/mysqld/mysqld.sock"
-		-DINSTALL_LIBDIR=/usr/$(get_libdir)/
-		-DINSTALL_PLUGINDIR="/usr/$(get_libdir)/mariadb/plugin"
-		-DINSTALL_BINDIR=/usr/bin
-		-DWITH_UNIT_TESTS=$(usex test ON OFF)
-		-DINSTALL_INCLUDEDIR=/usr/include/mysql
-		-DCMAKE_INSTALL_PREFIX="${SYSROOT}"
-	)
-	cmake-utils_src_configure
-}
-
-multilib_src_compile() {
-	cmake-utils_src_compile
-}
-
-multilib_src_install() {
-	cmake-utils_src_install
-	if use mysqlcompat ; then
-		dosym libmariadb.so.3 /usr/$(get_libdir)/libmysqlclient.so.19
-		dosym libmariadb.so.3 /usr/$(get_libdir)/libmysqlclient.so
-	fi
-}
-
-multilib_src_install_all() {
-	if ! use static-libs ; then
-		find "${D}" -name "*.a" -delete || die
-	fi
-	if use mysqlcompat ; then
-		dosym mariadb_config /usr/bin/mysql_config
-		# If this is left in you get :
-		# dosym target omits basename: '/usr/include/mysql'
-		#dosym mariadb /usr/include/mysql
-	fi
-}
diff --git a/dev-db/mariadb-connector-c/mariadb-connector-c-3.0.6-r2.ebuild b/dev-db/mariadb-connector-c/mariadb-connector-c-3.0.6-r2.ebuild
new file mode 100644
index 0000000..1d6019c
--- /dev/null
+++ b/dev-db/mariadb-connector-c/mariadb-connector-c-3.0.6-r2.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+VCS_INHERIT=""
+if [[ "${PV}" == 9999 ]] ; then
+	VCS_INHERIT="git-r3"
+	EGIT_REPO_URI="https://github.com/MariaDB/mariadb-connector-c.git"
+else
+	MY_PN=${PN#mariadb-}
+	MY_PV=${PV/_b/-b}
+	SRC_URI="https://downloads.mariadb.org/f/${MY_PN}-${PV%_beta}/${PN}-${MY_PV}-src.tar.gz?serve -> ${P}-src.tar.gz"
+	S="${WORKDIR%/}/${PN}-${MY_PV}-src"
+	KEYWORDS="*"
+fi
+
+inherit cmake-utils multilib-minimal toolchain-funcs ${VCS_INHERIT}
+
+MULTILIB_CHOST_TOOLS=( ${EPREFIX}/usr/bin/mariadb_config )
+
+MULTILIB_WRAPPED_HEADERS+=(
+	/usr/include/mariadb/mariadb_version.h
+)
+
+DESCRIPTION="C client library for MariaDB/MySQL"
+HOMEPAGE="https://mariadb.org/"
+LICENSE="LGPL-2.1"
+
+SLOT="0/3"
+IUSE="+curl gnutls kerberos libressl mysqlcompat +ssl static-libs test"
+
+DEPEND="sys-libs/zlib:=[${MULTILIB_USEDEP}]
+	virtual/libiconv:=[${MULTILIB_USEDEP}]
+	curl? ( net-misc/curl:0=[${MULTILIB_USEDEP}] )
+	kerberos? ( || ( app-crypt/mit-krb5[${MULTILIB_USEDEP}]
+			app-crypt/heimdal[${MULTILIB_USEDEP}] ) )
+	ssl? (
+		gnutls? ( >=net-libs/gnutls-3.3.24:0=[${MULTILIB_USEDEP}] )
+		!gnutls? (
+			libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
+			!libressl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] )
+		)
+	)
+	"
+RDEPEND="${DEPEND}
+	mysqlcompat? (
+	!dev-db/mysql[client-libs(+)]
+	!dev-db/mysql-cluster[client-libs(+)]
+	!dev-db/mariadb[client-libs(+)]
+	!dev-db/mariadb-galera[client-libs(+)]
+	!dev-db/percona-server[client-libs(+)]
+	!dev-db/mysql-connector-c )
+	!>=dev-db/mariadb-10.2.0[client-libs(+)]
+	"
+PATCHES=(
+	"${FILESDIR}"/gentoo-layout-3.0.patch
+	"${FILESDIR}"/${PN}-3.0.6-provide-pkconfig-file.patch
+	"${FILESDIR}"/${PN}-3.0.6-cmake.patch
+)
+
+src_configure() {
+	# bug 508724 mariadb cannot use ld.gold
+	tc-ld-disable-gold
+	multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+	local mycmakeargs=(
+		-DWITH_EXTERNAL_ZLIB=ON
+		-DWITH_SSL:STRING=$(usex ssl $(usex gnutls GNUTLS OPENSSL) OFF)
+		-DWITH_CURL=$(usex curl ON OFF)
+		-DCLIENT_PLUGIN_AUTH_GSSAPI_CLIENT:STRING=$(usex kerberos DYNAMIC OFF)
+		-DMARIADB_UNIX_ADDR="${EPREFIX%/}/var/run/mysqld/mysqld.sock"
+		-DINSTALL_LIBDIR=/usr/$(get_libdir)/
+		-DINSTALL_PLUGINDIR="/usr/$(get_libdir)/mariadb/plugin"
+		-DINSTALL_BINDIR=/usr/bin
+		-DWITH_UNIT_TESTS=$(usex test ON OFF)
+		-DINSTALL_INCLUDEDIR=/usr/include/mysql
+		-DCMAKE_INSTALL_PREFIX="${SYSROOT}"
+	)
+	cmake-utils_src_configure
+}
+
+multilib_src_compile() {
+	cmake-utils_src_compile
+}
+
+multilib_src_install() {
+	cmake-utils_src_install
+	if use mysqlcompat ; then
+		dosym libmariadb.so.3 /usr/$(get_libdir)/libmysqlclient.so.19
+		dosym libmariadb.so.3 /usr/$(get_libdir)/libmysqlclient.so
+	fi
+}
+
+multilib_src_install_all() {
+	if ! use static-libs ; then
+		find "${D}" -name "*.a" -delete || die
+	fi
+	if use mysqlcompat ; then
+		dosym mariadb_config /usr/bin/mysql_config
+		# If this is left in you get :
+		# dosym target omits basename: '/usr/include/mysql'
+		#dosym mariadb /usr/include/mysql
+	fi
+}
diff --git a/dev-embedded/coreboot-sdk/Manifest b/dev-embedded/coreboot-sdk/Manifest
index 4921196..d5b10fd 100644
--- a/dev-embedded/coreboot-sdk/Manifest
+++ b/dev-embedded/coreboot-sdk/Manifest
@@ -1,9 +1,10 @@
-DIST acpica-unix2-20200717.tar.gz 1578966 BLAKE2B 46a3f35990d9d12b9afe2b54f059fad6b0696ec5f34352613d95e5b0cc529095391aa92cb15704573640ad2f1c9fc0f6df690ed57ff29164b071793a7f0958cf SHA512 d477911d9dded34e887f77f396d84b85334b66983d3104ba8ee0ade09186abacfceec9ecec96fa6fce886da5fe0d187c2cdeed62cca467cdae049e2fe011391a
 DIST acpica-unix2-20200925.tar.gz 1582343 BLAKE2B 3b43394b49f6f2ad052f895d2e2d0c740c581d09ac2156aa73b37466ba682112fa739447497831a646acb8e7049e1279261661ef1f7a2f1cf6f318d324bb2824 SHA512 e5009e6f38b145019406b2d237247f3063372bcd006371501991f338f974bf441c3de3162f5b800ff5f6eed4ab267ef4b715b2256cc9a6ae0a787eb0d0a24c68
+DIST acpica-unix2-20210331.tar.gz 1597539 BLAKE2B b65f4557c6934149e19f35095111118d8e05aa29cb1130a83cf88f8f2a4d9fa6f2db4a722350ba5b7cd6b8b5ba3504ddfc30d7fd8e9e6d795e66f6fcb3a9c253 SHA512 acebf149870093c11e5bf87f234a334651f51826d78e82882373aff2a01f8dd6b26da23eecfbb4c6b31e7607aa8e533e8e6386c8b6fc774f53a2ba7ff24fc86a
 DIST binutils-2.35.1.tar.xz 22031720 BLAKE2B d3468da90b75e9b5fa7fbd64d3fdb0a4bc445e4cb7da5ae058f73a1e9d948b3e9438bc9f1b5b351db369b76a25960c9c1f58f828fd2c7646f555de45fa3c052b SHA512 94ff72708403413b70b247f3af4099ebaa882b6659249869f1ed9941a0f1912e313f08357d470f9fd2359e7f5e5b0eb86285e5eaf883fa8187789d6b1bd304eb
-DIST binutils-2.35.tar.xz 22042160 BLAKE2B 72ea79edf3a77aa93dcf38274123abbae5ce8f800a95e6379b4c8807050b05c2dfec314f06c027b1343c5570f369324fa3e195d7e0db5f8a57c0579937c49d3f SHA512 9f222e4ab6720036402d03904fb11b73ab87714b85cd84997f7d357f405c7e10581d70202f9165a1ee0c70538632db27ecc9dfe627dddb1e6bc7edb1537cf786
 DIST gcc-8.3.0.tar.xz 63694700 BLAKE2B 71df2ff5bd6874d57519c2e9af6b22152c8c4d7fab906a5f427b41bc4e8e742127592a8684120d9d3c9ce6241439531850be08ec0a4f29dbfdee95435655fdca SHA512 1811337ae3add9680cec64968a2509d085b6dc5b6783fc1e8c295e3e47416196fd1a3ad8dfe7e10be2276b4f62c357659ce2902f239f60a8648548231b4b5802
 DIST gmp-6.2.0.tar.xz 2012444 BLAKE2B 928141cf7b0b70f78b66e7bc52aecd39a5fc30e8865b6de6effb5b061ade05a5a51b4680ef2f36ea0d682b319d54ceb1c6c8ef93bde6c2eef2e8b826a34602c3 SHA512 a066f0456f0314a1359f553c49fc2587e484ff8ac390ff88537266a146ea373f97a1c0ba24608bf6756f4eab11c9056f103c8deb99e5b57741b4f7f0ec44b90c
+DIST gmp-6.2.1.tar.xz 2027316 BLAKE2B c0d85f175392a50cfa01bc6b0a312b235946ad8b4f6f84f6dabd33d7a6f2cc75c9b0e1e33057be07750bfa0145b7c4cf3b6188a5be6ca9d7271ec2276c84ebcb SHA512 c99be0950a1d05a0297d65641dd35b75b74466f7bf03c9e8a99895a3b2f9a0856cd17887738fa51cf7499781b65c049769271cbcb77d057d2e9f1ec52e07dd84
 DIST gnat-gpl-2017-x86_64-linux-bin.tar.gz 496338280 BLAKE2B b3eee6d311fb9c20bc8fa7217c0731ca1e91ced38700df1d63d91a16c3fa28dfd44c7c8e867c3a857b88e4f0c8b2a7200fb6a8a630b8403538c4784f8914d1a5 SHA512 01a8f3be9b7b7e83cc5bd4a45137b1d35c6448bc22a88bcaf5d312cd63e11081b6b2fe9f09ad2a27d8f0b6471fc5c1a99573bf3bcee1589329054074eaeef04f
 DIST mpc-1.2.0.tar.gz 840711 BLAKE2B 3609d299623a722ca90d4b04ff64becaaa399a5fa40fbc43a1d027692d8fbe6f4ebd24a3c8ea963963977952d130cd3993887da7b0b0c1613a27a24dd37e5831 SHA512 84fa3338f51d369111456a63ad040256a1beb70699e21e2a932c779aa1c3bd08b201412c1659ecbb58403ea0548faacc35996d94f88f0639549269b7563c61b7
+DIST mpc-1.2.1.tar.gz 838731 BLAKE2B 9cd03c6a71839e4cdb3c1f18d718cc4d3097c3f8ec307a5c756bd5df27c68aa013755156b3b156efee1acabfee2269602c6a3a358092ef0d522271c9c56c133d SHA512 3279f813ab37f47fdcc800e4ac5f306417d07f539593ca715876e43e04896e1d5bceccfb288ef2908a3f24b760747d0dbd0392a24b9b341bc3e12082e5c836ee
 DIST mpfr-4.1.0.tar.xz 1525476 BLAKE2B 41d1be0c4b557760f12a4525ad3a84b6e2cd6f0927c935fcfba577ac0490e582d1ae4b581dce58e21e705cf9d7c88373054d7fb7a94bb32c69b339f99a25dc68 SHA512 1bd1c349741a6529dfa53af4f0da8d49254b164ece8a46928cdb13a99460285622d57fe6f68cef19c6727b3f9daa25ddb3d7d65c201c8f387e421c7f7bee6273
diff --git a/dev-embedded/coreboot-sdk/coreboot-sdk-0.0.1-r109.ebuild b/dev-embedded/coreboot-sdk/coreboot-sdk-0.0.1-r109.ebuild
deleted file mode 100644
index 15aaf35..0000000
--- a/dev-embedded/coreboot-sdk/coreboot-sdk-0.0.1-r109.ebuild
+++ /dev/null
@@ -1,110 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="2c22585ae3b677eddc44c3f765335eaf4c52996b"
-CROS_WORKON_TREE="b47f5c0dc4c30f5e0d8dd1c910278946c334ecad"
-CROS_WORKON_PROJECT="chromiumos/third_party/coreboot"
-CROS_WORKON_LOCALNAME="coreboot"
-CROS_WORKON_SUBTREE="util/crossgcc"
-
-inherit cros-workon flag-o-matic multiprocessing
-
-DESCRIPTION="upstream coreboot's compiler suite"
-HOMEPAGE="https://www.coreboot.org"
-LICENSE="GPL-3 LGPL-3"
-KEYWORDS="*"
-
-# URIs taken from buildgcc -u
-# Needs to be synced with changes in the coreboot repo,
-# then pruned to the minimum required set (eg. no gdb, python, expat, llvm)
-CROSSGCC_URIS="
-https://ftpmirror.gnu.org/gmp/gmp-6.2.0.tar.xz
-https://ftpmirror.gnu.org/mpfr/mpfr-4.1.0.tar.xz
-https://ftpmirror.gnu.org/mpc/mpc-1.2.0.tar.gz
-https://ftpmirror.gnu.org/gcc/gcc-8.3.0/gcc-8.3.0.tar.xz
-https://ftpmirror.gnu.org/binutils/binutils-2.35.1.tar.xz
-https://acpica.org/sites/acpica/files/acpica-unix2-20200925.tar.gz
-"
-
-SRC_URI="
-${CROSSGCC_URIS}
-http://mirrors.cdn.adacore.com/art/591c6d80c7a447af2deed1d7 -> gnat-gpl-2017-x86_64-linux-bin.tar.gz
-"
-
-buildgcc_failed() {
-	local arch="$1"
-
-	cat $(ls */.failed | sed "s,\.failed,build.log,")
-	die "building the compiler for ${arch} failed"
-}
-
-src_prepare() {
-	eapply_user
-
-	mkdir util/crossgcc/tarballs
-	ln -s "${DISTDIR}"/* util/crossgcc/tarballs/
-	unpack gnat-gpl-2017-x86_64-linux-bin.tar.gz
-	# buildgcc uses 'cc' to find gnat1 so it needs to find the gnat-gpl
-	# compiler under that name
-	ln -s gcc gnat-gpl-2017-x86_64-linux-bin/bin/cc
-	# Add a gcc patch to make it builds with glibc 2.26.
-	cp "${FILESDIR}/${PN}-gcc-ucontext.patch" "${S}/util/crossgcc/patches/gcc-6.3.0_ucontext.patch"
-}
-
-src_compile() {
-	# We're bootstrapping with an old compiler whose
-	# linker isn't happy about this flag.
-	filter-ldflags "-Wl,--icf=all"
-
-	cd util/crossgcc || die "couldn't enter crossgcc tree"
-
-	./buildgcc -d /opt/coreboot-sdk -D "${S}/out" -P iasl -t -j "$(makeopts_jobs)" \
-	|| buildgcc_failed "ACPI"
-
-	# To bootstrap the Ada build, an Ada compiler needs to be available. To
-	# make sure it interacts well with the C/C++ parts of the compiler,
-	# buildgcc asks gcc for the Ada compiler's path using the compiler's
-	# -print-prog-name option which only deals with programs from the very
-	# same compiler distribution, so make sure we use the right one.
-	export PATH="${S}"/gnat-gpl-2017-x86_64-linux-bin/bin:"${PATH}"
-	export CC=gcc CXX=g++
-
-	local buildgcc_opts=(-j "$(makeopts_jobs)" -l "c,c++,ada" -t)
-
-	# Build bootstrap compiler to get a reliable compiler base no matter how
-	# versions diverged, but keep it separately, since we only need it
-	# during this build and not in the chroot.
-	./buildgcc -B -d "${S}"/bootstrap "${buildgcc_opts[@]}" \
-		|| buildgcc_failed "cros_sdk (bootstrap)"
-
-	export PATH="${S}/bootstrap/bin:${PATH}"
-
-	local architectures=(
-		i386-elf
-		x86_64-elf
-		arm-eabi
-		aarch64-elf
-		nds32le-elf
-		riscv-elf
-	)
-
-	local arch
-	for arch in "${architectures[@]}"; do
-		./buildgcc -d /opt/coreboot-sdk -D "${S}/out" -p "${arch}" \
-			"${buildgcc_opts[@]}" \
-		|| buildgcc_failed "${arch}"
-	done
-
-	rm -f "${S}"/out/opt/coreboot-sdk/lib/lib*.{la,a}
-}
-
-src_install() {
-	local files
-
-	dodir /opt
-	cp -a out/opt/coreboot-sdk "${D}"/opt/coreboot-sdk || die
-
-	readarray -t files < <(find "${D}" -name '*.[ao]' -printf "/%P\n")
-	dostrip -x "${files[@]}"
-}
diff --git a/dev-embedded/coreboot-sdk/coreboot-sdk-0.0.1-r113.ebuild b/dev-embedded/coreboot-sdk/coreboot-sdk-0.0.1-r113.ebuild
new file mode 100644
index 0000000..e36e3ca
--- /dev/null
+++ b/dev-embedded/coreboot-sdk/coreboot-sdk-0.0.1-r113.ebuild
@@ -0,0 +1,110 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="09981e9b4bca2305220f2d58b976648f110b1e75"
+CROS_WORKON_TREE="f2dabf7e811d068d7652ede76a8202e9c57e019f"
+CROS_WORKON_PROJECT="chromiumos/third_party/coreboot"
+CROS_WORKON_LOCALNAME="coreboot"
+CROS_WORKON_SUBTREE="util/crossgcc"
+
+inherit cros-workon flag-o-matic multiprocessing
+
+DESCRIPTION="upstream coreboot's compiler suite"
+HOMEPAGE="https://www.coreboot.org"
+LICENSE="GPL-3 LGPL-3"
+KEYWORDS="*"
+
+# URIs taken from buildgcc -u
+# Needs to be synced with changes in the coreboot repo,
+# then pruned to the minimum required set (eg. no gdb, python, expat, llvm)
+CROSSGCC_URIS="
+https://ftpmirror.gnu.org/gmp/gmp-6.2.1.tar.xz
+https://ftpmirror.gnu.org/mpfr/mpfr-4.1.0.tar.xz
+https://ftpmirror.gnu.org/mpc/mpc-1.2.1.tar.gz
+https://ftpmirror.gnu.org/gcc/gcc-8.3.0/gcc-8.3.0.tar.xz
+https://ftpmirror.gnu.org/binutils/binutils-2.35.1.tar.xz
+https://acpica.org/sites/acpica/files/acpica-unix2-20210331.tar.gz
+"
+
+SRC_URI="
+${CROSSGCC_URIS}
+http://mirrors.cdn.adacore.com/art/591c6d80c7a447af2deed1d7 -> gnat-gpl-2017-x86_64-linux-bin.tar.gz
+"
+
+buildgcc_failed() {
+	local arch="$1"
+
+	cat $(ls */.failed | sed "s,\.failed,build.log,")
+	die "building the compiler for ${arch} failed"
+}
+
+src_prepare() {
+	eapply_user
+
+	mkdir util/crossgcc/tarballs
+	ln -s "${DISTDIR}"/* util/crossgcc/tarballs/
+	unpack gnat-gpl-2017-x86_64-linux-bin.tar.gz
+	# buildgcc uses 'cc' to find gnat1 so it needs to find the gnat-gpl
+	# compiler under that name
+	ln -s gcc gnat-gpl-2017-x86_64-linux-bin/bin/cc
+	# Add a gcc patch to make it builds with glibc 2.26.
+	cp "${FILESDIR}/${PN}-gcc-ucontext.patch" "${S}/util/crossgcc/patches/gcc-6.3.0_ucontext.patch"
+}
+
+src_compile() {
+	# We're bootstrapping with an old compiler whose
+	# linker isn't happy about this flag.
+	filter-ldflags "-Wl,--icf=all"
+
+	cd util/crossgcc || die "couldn't enter crossgcc tree"
+
+	./buildgcc -d /opt/coreboot-sdk -D "${S}/out" -P iasl -t -j "$(makeopts_jobs)" \
+	|| buildgcc_failed "ACPI"
+
+	# To bootstrap the Ada build, an Ada compiler needs to be available. To
+	# make sure it interacts well with the C/C++ parts of the compiler,
+	# buildgcc asks gcc for the Ada compiler's path using the compiler's
+	# -print-prog-name option which only deals with programs from the very
+	# same compiler distribution, so make sure we use the right one.
+	export PATH="${S}"/gnat-gpl-2017-x86_64-linux-bin/bin:"${PATH}"
+	export CC=gcc CXX=g++
+
+	local buildgcc_opts=(-j "$(makeopts_jobs)" -l "c,c++,ada" -t)
+
+	# Build bootstrap compiler to get a reliable compiler base no matter how
+	# versions diverged, but keep it separately, since we only need it
+	# during this build and not in the chroot.
+	./buildgcc -B -d "${S}"/bootstrap "${buildgcc_opts[@]}" \
+		|| buildgcc_failed "cros_sdk (bootstrap)"
+
+	export PATH="${S}/bootstrap/bin:${PATH}"
+
+	local architectures=(
+		i386-elf
+		x86_64-elf
+		arm-eabi
+		aarch64-elf
+		nds32le-elf
+		riscv-elf
+	)
+
+	local arch
+	for arch in "${architectures[@]}"; do
+		./buildgcc -d /opt/coreboot-sdk -D "${S}/out" -p "${arch}" \
+			"${buildgcc_opts[@]}" \
+		|| buildgcc_failed "${arch}"
+	done
+
+	rm -f "${S}"/out/opt/coreboot-sdk/lib/lib*.{la,a}
+}
+
+src_install() {
+	local files
+
+	dodir /opt
+	cp -a out/opt/coreboot-sdk "${D}"/opt/coreboot-sdk || die
+
+	readarray -t files < <(find "${D}" -name '*.[ao]' -printf "/%P\n")
+	dostrip -x "${files[@]}"
+}
diff --git a/dev-embedded/coreboot-sdk/coreboot-sdk-9999.ebuild b/dev-embedded/coreboot-sdk/coreboot-sdk-9999.ebuild
index cf73c88..d924d94 100644
--- a/dev-embedded/coreboot-sdk/coreboot-sdk-9999.ebuild
+++ b/dev-embedded/coreboot-sdk/coreboot-sdk-9999.ebuild
@@ -17,12 +17,12 @@
 # Needs to be synced with changes in the coreboot repo,
 # then pruned to the minimum required set (eg. no gdb, python, expat, llvm)
 CROSSGCC_URIS="
-https://ftpmirror.gnu.org/gmp/gmp-6.2.0.tar.xz
+https://ftpmirror.gnu.org/gmp/gmp-6.2.1.tar.xz
 https://ftpmirror.gnu.org/mpfr/mpfr-4.1.0.tar.xz
-https://ftpmirror.gnu.org/mpc/mpc-1.2.0.tar.gz
+https://ftpmirror.gnu.org/mpc/mpc-1.2.1.tar.gz
 https://ftpmirror.gnu.org/gcc/gcc-8.3.0/gcc-8.3.0.tar.xz
 https://ftpmirror.gnu.org/binutils/binutils-2.35.1.tar.xz
-https://acpica.org/sites/acpica/files/acpica-unix2-20200925.tar.gz
+https://acpica.org/sites/acpica/files/acpica-unix2-20210331.tar.gz
 "
 
 SRC_URI="
diff --git a/dev-embedded/stm32flash/Manifest b/dev-embedded/stm32flash/Manifest
new file mode 100644
index 0000000..b158ddf
--- /dev/null
+++ b/dev-embedded/stm32flash/Manifest
@@ -0,0 +1 @@
+DIST stm32flash-0.6.tar.gz 376186 SHA512 2d92ecf4f82b8a702b596cbf3c4ff594f67083f7dcec82c064555f73b47834b41a918efa1846e47fc8740ae63fa818b16dfb5b38fa242c17f465666a651eee3a
diff --git a/dev-embedded/stm32flash/OWNERS b/dev-embedded/stm32flash/OWNERS
new file mode 100644
index 0000000..0df2e32
--- /dev/null
+++ b/dev-embedded/stm32flash/OWNERS
@@ -0,0 +1,2 @@
+set noparent
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-embedded/stm32flash/files/stm32flash-0.6-fix-i2c-erase-01fbb65.patch b/dev-embedded/stm32flash/files/stm32flash-0.6-fix-i2c-erase-01fbb65.patch
new file mode 100644
index 0000000..c4c7a2a
--- /dev/null
+++ b/dev-embedded/stm32flash/files/stm32flash-0.6-fix-i2c-erase-01fbb65.patch
@@ -0,0 +1,28 @@
+From 01fbb65d4626e1c122e329075526bd6035cb0be6 Mon Sep 17 00:00:00 2001
+From: Tormod Volden <debian.tormod@gmail.com>
+Date: Thu, 2 Sep 2021 16:25:57 +0200
+Subject: [PATCH 06/15] stm32: Fix typo from recent commit
+
+Oops, I got this wrong while amending commit b079cd09.
+
+Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
+---
+ stm32.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/stm32.c b/stm32.c
+index 6e2e402..0edaf01 100644
+--- a/stm32.c
++++ b/stm32.c
+@@ -851,7 +851,7 @@ static stm32_err_t stm32_pages_erase(const stm32_t *stm, uint32_t spage, uint32_
+ 		buf[i++] = pages - 1;
+ 		cs ^= (pages-1);
+ 		/* For I2C send a checksum after the number of pages (AN4221) */
+-		if (port->flags && PORT_NPAG_CSUM) {
++		if (port->flags & PORT_NPAG_CSUM) {
+ 			buf[i++] = cs;
+ 			p_err = port->write(port, buf, i);
+ 			if (p_err != PORT_ERR_OK) {
+-- 
+2.33.0.309.g3052b89438-goog
+
diff --git a/dev-embedded/stm32flash/files/stm32flash-0.6-fix-i2c-erase-17a24f8.patch b/dev-embedded/stm32flash/files/stm32flash-0.6-fix-i2c-erase-17a24f8.patch
new file mode 100644
index 0000000..e0b519c
--- /dev/null
+++ b/dev-embedded/stm32flash/files/stm32flash-0.6-fix-i2c-erase-17a24f8.patch
@@ -0,0 +1,65 @@
+From 17a24f873122b96481adefaadc128bd1abba594f Mon Sep 17 00:00:00 2001
+From: Tormod Volden <debian.tormod@gmail.com>
+Date: Sat, 21 Aug 2021 13:06:34 +0200
+Subject: [PATCH 02/15] stm32: Consistent and unique erase error messages
+
+Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
+---
+ stm32.c | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/stm32.c b/stm32.c
+index 82fa26a..e071905 100644
+--- a/stm32.c
++++ b/stm32.c
+@@ -797,7 +797,7 @@ static stm32_err_t stm32_mass_erase(const stm32_t *stm)
+ 		return STM32_ERR_OK;
+ 	}
+ 
+-	/* extended erase */
++	/* extended erase (0x44 or 0x45) */
+ 	buf[0] = 0xFF;	/* 0xFFFF the magic number for mass erase */
+ 	buf[1] = 0xFF;
+ 	buf[2] = 0x00;  /* checksum */
+@@ -870,11 +870,12 @@ static stm32_err_t stm32_pages_erase(const stm32_t *stm, uint32_t spage, uint32_
+ 		p_err = port->write(port, buf, i);
+ 		free(buf);
+ 		if (p_err != PORT_ERR_OK) {
+-			fprintf(stderr, "Erase failed.\n");
++			fprintf(stderr, "Erase failed sending list of pages.\n");
+ 			return STM32_ERR_UNKNOWN;
+ 		}
+ 		s_err = stm32_get_ack_timeout(stm, pages * STM32_PAGEERASE_TIMEOUT);
+ 		if (s_err != STM32_ERR_OK) {
++			fprintf(stderr, "Erase failed.\n");
+ 			if (port->flags & PORT_STRETCH_W)
+ 				stm32_warn_stretching("erase");
+ 			return STM32_ERR_UNKNOWN;
+@@ -882,7 +883,7 @@ static stm32_err_t stm32_pages_erase(const stm32_t *stm, uint32_t spage, uint32_
+ 		return STM32_ERR_OK;
+ 	}
+ 
+-	/* extended erase */
++	/* extended erase (0x44 or 0x45) */
+ 	buf = malloc(2 + 2 * pages + 1);
+ 	if (!buf)
+ 		return STM32_ERR_UNKNOWN;
+@@ -925,13 +926,13 @@ static stm32_err_t stm32_pages_erase(const stm32_t *stm, uint32_t spage, uint32_
+ 	p_err = port->write(port, buf, i);
+ 	free(buf);
+ 	if (p_err != PORT_ERR_OK) {
+-		fprintf(stderr, "Page-by-page erase error.\n");
++		fprintf(stderr, "Extended erase failed sending list of pages.\n");
+ 		return STM32_ERR_UNKNOWN;
+ 	}
+ 
+ 	s_err = stm32_get_ack_timeout(stm, pages * STM32_PAGEERASE_TIMEOUT);
+ 	if (s_err != STM32_ERR_OK) {
+-		fprintf(stderr, "Page-by-page erase failed. Check the maximum pages your device supports.\n");
++		fprintf(stderr, "Extended erase failed. Check the maximum pages your device supports.\n");
+ 		if ((port->flags & PORT_STRETCH_W)
+ 		    && stm->cmd->er != STM32_CMD_EE_NS)
+ 			stm32_warn_stretching("erase");
+-- 
+2.33.0.309.g3052b89438-goog
+
diff --git a/dev-embedded/stm32flash/files/stm32flash-0.6-fix-i2c-erase-b079cd0.patch b/dev-embedded/stm32flash/files/stm32flash-0.6-fix-i2c-erase-b079cd0.patch
new file mode 100644
index 0000000..dcd7299
--- /dev/null
+++ b/dev-embedded/stm32flash/files/stm32flash-0.6-fix-i2c-erase-b079cd0.patch
@@ -0,0 +1,103 @@
+From b079cd09bc942b4a489cad29524418441a44fc82 Mon Sep 17 00:00:00 2001
+From: Yann Sionneau <ysionneau@kalray.eu>
+Date: Wed, 28 Apr 2021 14:16:01 +0200
+Subject: [PATCH 01/15] Follow bootloader protocol for page-by-page erase over
+ I2C
+
+For I2C the protocol is slighly different than for USART,
+requiring a checksum after the number of pages.
+
+https://sourceforge.net/p/stm32flash/tickets/98/
+
+Signed-off-by: Yann Sionneau <ysionneau@kalray.eu>
+[Tormod: Add port flag, no wait, amend messages]
+Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
+---
+ i2c.c   |  2 +-
+ port.h  |  1 +
+ stm32.c | 37 +++++++++++++++++++++++++++++++++++++
+ 3 files changed, 39 insertions(+), 1 deletion(-)
+
+diff --git a/i2c.c b/i2c.c
+index bb99545..8425b41 100644
+--- a/i2c.c
++++ b/i2c.c
+@@ -204,7 +204,7 @@ static port_err_t i2c_flush(struct port_interface __unused *port)
+ 
+ struct port_interface port_i2c = {
+ 	.name	= "i2c",
+-	.flags	= PORT_STRETCH_W,
++	.flags	= PORT_STRETCH_W | PORT_NPAG_CSUM,
+ 	.open	= i2c_open,
+ 	.close	= i2c_close,
+ 	.flush  = i2c_flush,
+diff --git a/port.h b/port.h
+index 4e728d7..1a28dc6 100644
+--- a/port.h
++++ b/port.h
+@@ -34,6 +34,7 @@ typedef enum {
+ #define PORT_CMD_INIT	(1 << 2)	/* use INIT cmd to autodetect speed */
+ #define PORT_RETRY	(1 << 3)	/* allowed read() retry after timeout */
+ #define PORT_STRETCH_W	(1 << 4)	/* warning for no-stretching commands */
++#define PORT_NPAG_CSUM	(1 << 5)	/* checksum after number of pages to erase */
+ 
+ /* all options and flags used to open and configure an interface */
+ struct port_options {
+diff --git a/stm32.c b/stm32.c
+index 966048b..82fa26a 100644
+--- a/stm32.c
++++ b/stm32.c
+@@ -843,6 +843,25 @@ static stm32_err_t stm32_pages_erase(const stm32_t *stm, uint32_t spage, uint32_
+ 
+ 		buf[i++] = pages - 1;
+ 		cs ^= (pages-1);
++		/* For I2C send a checksum after the number of pages (AN4221) */
++		if (port->flags && PORT_NPAG_CSUM) {
++			buf[i++] = cs;
++			p_err = port->write(port, buf, i);
++			if (p_err != PORT_ERR_OK) {
++				fprintf(stderr, "Erase failed sending number of pages.");
++				free(buf);
++				return STM32_ERR_UNKNOWN;
++			}
++			s_err = stm32_get_ack(stm);
++			if (s_err != STM32_ERR_OK) {
++				fprintf(stderr, "Erase failed, no ack after number of pages.");
++				free(buf);
++				return STM32_ERR_UNKNOWN;
++			}
++			cs = 0;
++			i = 0;
++		}
++
+ 		for (pg_num = spage; pg_num < (pages + spage); pg_num++) {
+ 			buf[i++] = pg_num;
+ 			cs ^= pg_num;
+@@ -876,6 +895,24 @@ static stm32_err_t stm32_pages_erase(const stm32_t *stm, uint32_t spage, uint32_
+ 	buf[i++] = pg_byte;
+ 	cs ^= pg_byte;
+ 
++	if (port->flags & PORT_NPAG_CSUM) {
++		buf[i++] = cs;
++		p_err = port->write(port, buf, i);
++		if (p_err != PORT_ERR_OK) {
++			fprintf(stderr, "Extended erase failed sending number of pages.");
++			free(buf);
++			return STM32_ERR_UNKNOWN;
++		}
++		s_err = stm32_get_ack(stm);
++		if (s_err != STM32_ERR_OK) {
++			fprintf(stderr, "Extended erase failed, no ack after number of pages.");
++			free(buf);
++			return STM32_ERR_UNKNOWN;
++		}
++		cs = 0;
++		i = 0;
++	}
++
+ 	for (pg_num = spage; pg_num < spage + pages; pg_num++) {
+ 		pg_byte = pg_num >> 8;
+ 		cs ^= pg_byte;
+-- 
+2.33.0.309.g3052b89438-goog
+
diff --git a/sys-fs/archivemount/metadata.xml b/dev-embedded/stm32flash/metadata.xml
similarity index 100%
rename from sys-fs/archivemount/metadata.xml
rename to dev-embedded/stm32flash/metadata.xml
diff --git a/dev-embedded/stm32flash/stm32flash-0.6.ebuild b/dev-embedded/stm32flash/stm32flash-0.6.ebuild
new file mode 100644
index 0000000..2c28a88
--- /dev/null
+++ b/dev-embedded/stm32flash/stm32flash-0.6.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit toolchain-funcs
+
+DESCRIPTION="Open source flash program for STM32 using the ST serial bootloader"
+HOMEPAGE="https://sourceforge.net/projects/stm32flash/"
+SRC_URI="mirror://sourceforge/project/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="*"
+
+PATCHES=(
+	"${FILESDIR}/stm32flash-0.6-fix-i2c-erase-b079cd0.patch"
+	"${FILESDIR}/stm32flash-0.6-fix-i2c-erase-17a24f8.patch"
+	"${FILESDIR}/stm32flash-0.6-fix-i2c-erase-01fbb65.patch"
+)
+
+src_prepare() {
+	default
+	tc-export CC
+}
+
+src_install() {
+	dobin ${PN}
+	doman ${PN}.1
+}
diff --git a/dev-embedded/ti50-sdk/Manifest b/dev-embedded/ti50-sdk/Manifest
index f3a4cdd..ad3c6de 100644
--- a/dev-embedded/ti50-sdk/Manifest
+++ b/dev-embedded/ti50-sdk/Manifest
@@ -1,7 +1,7 @@
 DIST llvm-bb852a09ae36-src.tar.xz 79528080 BLAKE2B 245b0f5a802f8bc8c0097d0dc22dec277530f859a596fb19853cbdc2cebb1a429eb845d65c1592a2e06c4036d6f3dfc70796034c8a9027d232b42a2c9cff570e SHA512 54545c6e9c6769735840900216a5a98912a6e9892356fcf3bc12b27e33075d5ca5e28ac513aa3fa57b5b9e918a7f4a56dcd6756f7b0e658c9b73138bfa447faa
 DIST newlib-1debd4d635c2-src.tar.xz 7487188 BLAKE2B a6423aadb17e98ec4aee5140710e5cf80a34a46ca9ce70eb4ea9c91ce4a03114adf124b31ed0f5b0da06c56f6f3ea4f07270a768ef5cffe8a406cafbda31be63 SHA512 9aa5a81582036437f0d2611175339117b28d5e48c0a617e9b2d96e386d135069fda0b04ff800f30df9ec311800df3b22e90dad853b037e6b9f15c4c6b8c0e94e
-DIST rust-0da58007451a-cargo-beta-x86_64-unknown-linux-gnu.tar.xz 5486440 BLAKE2B 2638950ef0f57875ca7e29468a211154d3719041e07bb7576e4721245f84792f777433ead1e85b4281e7427a59b078d7f401dc7225cd4e9c156d0181f4c4c2b1 SHA512 bdc7ee6fe8617ff650d69c6bd37e37a073393db19a0c7ba1677e7c1cfc65880d6799437b8a3be1fe868c3265d9c0f62b78ecb81ebe835c64617fabfb6e5eddfa
-DIST rust-0da58007451a-rust-std-beta-x86_64-unknown-linux-gnu.tar.xz 22212148 BLAKE2B 479cc2db11c1c521096d9f291a3b5dc33aa405140bf525312aee466cc30976b0c0272975a7687f366b2b1b31e37b24f032cc650ea56314b66f9b63da854527de SHA512 40ee6b336a03eb4cd9cfe695b1b32da63811f680baad7bb68f598228765ff9f2f14e65a161b9d85edf2163e7aea6573f180780b17f7689061fc20fd35edb7823
-DIST rust-0da58007451a-rustc-0da58007451a-src.tar.xz 124166452 BLAKE2B dcc7ee19c820ce454850acb3ee7944b17fc9f0a593d143d14e5dbff42520650da362f58cbf054e77406a72499ee4ba285826b33331dc976b5efab0b85e620cd5 SHA512 e354ff4a96b7d4d54d965715f158926cec97ef454e04d530687a55631a0fb7b67cc93a10b4baf98e76ae37341d11de3f89d16ea53284ace0d1d7d8aa172b1247
-DIST rust-0da58007451a-rustc-beta-x86_64-unknown-linux-gnu.tar.xz 55643092 BLAKE2B 02d62b612c8e4cd0fe2e3f309158f2404dcbbbf8d365987939ec021c80ddfc304ca7dcc1c2908744c5653857a0de02d58e66c2a61527bb11724f12cf39201c16 SHA512 c690557535ef32ecbfc8b52070b25f309e0567804ccb9bd38752acbfdf7a367cf1affb919ee096e66968b0f2ffc7ecd7def37b4b5831a224cac4a401f0aa84a4
-DIST rust-0da58007451a-rustfmt-beta-x86_64-unknown-linux-gnu.tar.xz 3712524 BLAKE2B 26e769e4db118dac58426e93dda2f11a51c7de6fc8949ca62728dd7df02e994a06e282f2ba2cc84db7aff5e301ffbcae9214724960da748992bd73b9be27cec2 SHA512 221e20dc9114a5525708112cbd34ae40a689bc0a0b20e4728cafb57cddb8827fa250ecb2724cfd138f79be8666c00594ef394cbf59b9ce3a5d5a3323041f66c0
+DIST rust-9111b8ae9793-cargo-beta-x86_64-unknown-linux-gnu.tar.xz 6275476 BLAKE2B deff3c33d9a4e48e4923cb9981c5dcc5c71f176c1144d43948b8a83b980c1cbc52325bbce3b18971228023798907138996c5a67de2d82c55d3bf84010f729d2e SHA512 dc22627f114be00b2925223aca86ca0b89dad15719190f6d2e26d0ae3df99afdb9433ba74240477eb8cb3e368508be895906035ad5a976eceadb4898fb165f03
+DIST rust-9111b8ae9793-rust-std-beta-x86_64-unknown-linux-gnu.tar.xz 26863712 BLAKE2B 95e50222f2f2eb779efe81ed3d41ecd6648b2494683da5e31e069db402c041d440bdb9c54a9f183fe5c569a15b4083ab8d5bff04c0b72451cb5a993234b69aae SHA512 aca640519c7b8f49b56da2ec54452179de1e9afcb81f7fafd83af28f4dd2985d752054f64315acd044a47679c3f350eb8b14defbfb317a275b6cad44b0bde2b7
+DIST rust-9111b8ae9793-rustc-9111b8ae9793-src.tar.xz 136040856 BLAKE2B 8f2acf07821a702d6689d915b4544ed4c7264d63b8e53f0fe4a7d5d90b9a6dcf0a4a7128acf2208d2dcc66ddf31846e5dc875a539b482fcb8da33cf45ca7e154 SHA512 f4d7d85a9f7a41ef37172009f9b6fa9a7c119d1ed6ea03d67ca8acf446736bf71fe9bf1c6145e9f95d6f8b970d333032222270eea5a17d8d113ab910c168cf9f
+DIST rust-9111b8ae9793-rustc-beta-x86_64-unknown-linux-gnu.tar.xz 51017300 BLAKE2B 278f0488685ff68a8d2683d5815c604a23bf346a6aa1d33d6fb3a14476016204846a1ed6b91f59b3c8f2fed95522d77031318eb071bd8bdf0269a784fcd1237e SHA512 4c6385fbd3f2641f5827e01bbe8ae326f052b83ead843c398077c3b1b849e450b3f44f9731705ce2786e0a692127f795d681f164c96c430b8897c76f6f34ad09
+DIST rust-9111b8ae9793-rustfmt-beta-x86_64-unknown-linux-gnu.tar.xz 3834624 BLAKE2B 0f2bd5418a29548b9fa1e85bee5aceaedcf7718758a7646f80cd3bc879caa43a240ed00d653a5ee531a1bd7745a0b77763257c6eab7f4e1be4c20cb9c8d42286 SHA512 d4822a0fddcae817e5ea0d55bdfee3be86467fe744b24053f2f8adc5fd70b9e92cf678e4b55b6a802e35de00722caafc68d1eb07a6ae11991cb4a158e560e0eb
diff --git a/dev-embedded/ti50-sdk/README.md b/dev-embedded/ti50-sdk/README.md
index 7fa5fa2..73453df 100644
--- a/dev-embedded/ti50-sdk/README.md
+++ b/dev-embedded/ti50-sdk/README.md
@@ -15,9 +15,10 @@
 
 Example per-project invocations of `files/pack_git_tarball.py` are available
 below. It's important to keep in mind that **once you upload a new tarball and
-point the ti50-sdk ebuild at it, you need to run `ebuild $(equery w
-dev-embedded/ti50-sdk) manifest`**. Otherwise, when you try to download these
-files from `gs://chromeos-localmirror`, you'll get file integrity errors.
+point the ti50-sdk ebuild at it, you need to run `FEATURES=-force-mirror ebuild
+$(equery w dev-embedded/ti50-sdk) manifest`**. Otherwise, when you try to
+download these files from `gs://chromeos-localmirror`, you'll get file integrity
+errors.
 
 It's important to note that `chromeos-localmirror` is a large, shared bucket.
 Things uploaded to it aren't "final" (e.g., feel free to update them) until a
@@ -47,6 +48,8 @@
     gs://chromeos-localmirror/distfiles/llvm-${sha}-src.tar.xz
 ```
 
+Update the LLVM_SHA variable in the ebuild file to ${sha}.
+
 After running `ebuild manifest` as described in the section above, you should be
 able to start testing these changes via `sudo emerge dev-embedded/ti50-sdk`.
 
@@ -68,11 +71,22 @@
     gs://chromeos-localmirror/distfiles/newlib-${sha}-src.tar.xz
 ```
 
+Update the NEWLIB_SHA variable in the ebuild file to ${sha}.
+
 After running `ebuild manifest` as described in the section above, you should be
 able to start testing these changes via `sudo emerge dev-embedded/ti50-sdk`.
 
 ## Upgrading rust
 
+First, determine which build of rust you wish to use.  An easy way to ensure
+a buildable version is to visit https://static.rust-lang.org/dist/${build_date}/
+, download rust-${channel}-i686-unknown-linux-gnu.tar.xz, and use its
+git-commit-hash file's content.
+
+${build_date} is in the format yyyy-mm-dd and ${channel} will be one of
+stable|beta|nightly.  They are related to rustup's RUST_TOOLCHAIN_VERSION
+variable via ${channel}-${build_date}.
+
 In order to upgrade rust, you'll need to pull it from [its upstream
 repo](https://github.com/rust-lang/rust). With that at
 `${dir}`, you can create a git tarball. **Note** that Rust makes use of two
@@ -82,9 +96,10 @@
 - Vendored dependencies
 
 A convenient shorthand to ensure all submodules are at the correct revision is
-`${dir}/x.py help`. You have to manually ensure all submodules are up-to-date
-before trying to pack rust's sources. Without this, things may be at
-inconsistent versions, which can lead to build errors.
+`git checkout ${git-commit-hash}; ${dir}/x.py help`. You have to manually
+ensure all submodules are up-to-date before trying to pack rust's sources.
+Without this, things may be at inconsistent versions, which can lead to build
+errors.
 
 Dependency vendoring is handled by passing an extra flag to
 `files/pack_git_tarball.py`. Your invocation should look something like:
@@ -102,12 +117,37 @@
 
 ```
 gsutil cp -n -a public-read /tmp/rustc-${sha}-src.tar.xz \
-    gs://chromeos-localmirror/distfiles/rustc-${sha}-src.tar.xz
+    gs://chromeos-localmirror/distfiles/rust-${sha}-rustc-${sha}-src.tar.xz
 ```
 
+Update RUST_SHA to ${sha}, RUST_STAGE0_DATE to the date in its src/stage0.txt
+in the ebuild file.
+
 After running `ebuild manifest` as described in the section above, you should be
 able to start testing these changes via `sudo emerge dev-embedded/ti50-sdk`.
 
+Once tests are successful, upload the remaining artifacts to gs:
+
+```
+gsutil cp -n -a public-read /var/cache/chromeos-cache/distfiles/rust-${sha}-cargo-beta-x86_64-unknown-linux-gnu.tar.xz \
+    gs://chromeos-localmirror/distfiles/rust-${sha}-cargo-beta-x86_64-unknown-linux-gnu.tar.xz
+
+gsutil cp -n -a public-read /var/cache/chromeos-cache/distfiles/rust-${sha}-rustc-beta-x86_64-unknown-linux-gnu.tar.xz \
+    gs://chromeos-localmirror/distfiles/rust-${sha}-rustc-beta-x86_64-unknown-linux-gnu.tar.xz
+
+gsutil cp -n -a public-read /var/cache/chromeos-cache/distfiles/rust-${sha}-rustfmt-beta-x86_64-unknown-linux-gnu.tar.xz \
+    gs://chromeos-localmirror/distfiles/rust-${sha}-rustfmt-beta-x86_64-unknown-linux-gnu.tar.xz
+
+gsutil cp -n -a public-read /var/cache/chromeos-cache/distfiles/rust-${sha}-rust-std-beta-x86_64-unknown-linux-gnu.tar.xz \
+    gs://chromeos-localmirror/distfiles/rust-${sha}-rust-std-beta-x86_64-unknown-linux-gnu.tar.xz
+```
+
+Test out the emerge again by first clearing the cache:
+```
+rm -f /var/cache/chromeos-cache/distfiles/rust-${sha}-*
+sudo emerge dev-embedded/ti50-sdk
+```
+
 ## Iterative development
 
 Standard ebuild development practices apply here: `sudo emerge
diff --git a/dev-embedded/ti50-sdk/files/build_clang_toolchain.py b/dev-embedded/ti50-sdk/files/build_clang_toolchain.py
index 84559c4..5c99c68 100755
--- a/dev-embedded/ti50-sdk/files/build_clang_toolchain.py
+++ b/dev-embedded/ti50-sdk/files/build_clang_toolchain.py
@@ -4,8 +4,6 @@
 # found in the LICENSE file.
 """Builds the clang toolchain for Ti50."""
 
-# pylint: disable=cros-logging-import
-
 import argparse
 import logging
 import os
diff --git a/dev-embedded/ti50-sdk/files/build_rust_toolchain.py b/dev-embedded/ti50-sdk/files/build_rust_toolchain.py
index 08fd68f..669848b 100755
--- a/dev-embedded/ti50-sdk/files/build_rust_toolchain.py
+++ b/dev-embedded/ti50-sdk/files/build_rust_toolchain.py
@@ -4,8 +4,6 @@
 # found in the LICENSE file.
 """Builds the Rust toolchain used to compile and run TockOS."""
 
-# pylint: disable=cros-logging-import
-
 import argparse
 import logging
 import os
@@ -123,6 +121,7 @@
 vendor = true
 python = "{must_getenv('EPYTHON')}"
 submodules = false
+profiler = true
 {optional_bootstrap_configuration}
 
 [llvm]
diff --git a/dev-embedded/ti50-sdk/files/pack_git_tarball.py b/dev-embedded/ti50-sdk/files/pack_git_tarball.py
index e8255b8..e6c6dd6 100755
--- a/dev-embedded/ti50-sdk/files/pack_git_tarball.py
+++ b/dev-embedded/ti50-sdk/files/pack_git_tarball.py
@@ -4,8 +4,6 @@
 # found in the LICENSE file.
 """Packs a tarball from a git source tree."""
 
-# pylint: disable=cros-logging-import
-
 import argparse
 import errno
 import logging
diff --git a/dev-embedded/ti50-sdk/files/rust-llvm-prf.patch b/dev-embedded/ti50-sdk/files/rust-llvm-prf.patch
new file mode 100644
index 0000000..4ddd081
--- /dev/null
+++ b/dev-embedded/ti50-sdk/files/rust-llvm-prf.patch
@@ -0,0 +1,47 @@
+Fix for handling applications that have no __llvm_prf_data surviving --gc-sections.
+This patch includes:
+https://reviews.llvm.org/D96902
+https://reviews.llvm.org/D96936
+https://reviews.llvm.org/D97648
+
+diff --git a/compiler-rt/lib/profile/InstrProfilingPlatformLinux.c b/compiler-rt/lib/profile/InstrProfilingPlatformLinux.c
+index c9fb481f8e90..07f3578dc43b 100644
+--- a/compiler-rt/lib/profile/InstrProfilingPlatformLinux.c
++++ b/compiler-rt/lib/profile/InstrProfilingPlatformLinux.c
+@@ -26,25 +26,17 @@
+ /* Declare section start and stop symbols for various sections
+  * generated by compiler instrumentation.
+  */
+-extern __llvm_profile_data PROF_DATA_START COMPILER_RT_VISIBILITY;
+-extern __llvm_profile_data PROF_DATA_STOP COMPILER_RT_VISIBILITY;
+-extern uint64_t PROF_CNTS_START COMPILER_RT_VISIBILITY;
+-extern uint64_t PROF_CNTS_STOP COMPILER_RT_VISIBILITY;
+-extern uint32_t PROF_ORDERFILE_START COMPILER_RT_VISIBILITY;
+-extern char PROF_NAME_START COMPILER_RT_VISIBILITY;
+-extern char PROF_NAME_STOP COMPILER_RT_VISIBILITY;
+-extern ValueProfNode PROF_VNODES_START COMPILER_RT_VISIBILITY;
+-extern ValueProfNode PROF_VNODES_STOP COMPILER_RT_VISIBILITY;
+-
+-/* Add dummy data to ensure the section is always created. */
+-__llvm_profile_data
+-    __prof_data_sect_data[0] COMPILER_RT_SECTION(INSTR_PROF_DATA_SECT_NAME);
+-uint64_t
+-    __prof_cnts_sect_data[0] COMPILER_RT_SECTION(INSTR_PROF_CNTS_SECT_NAME);
+-uint32_t
+-    __prof_orderfile_sect_data[0] COMPILER_RT_SECTION(INSTR_PROF_ORDERFILE_SECT_NAME);
+-const char __prof_nms_sect_data[0] COMPILER_RT_SECTION(INSTR_PROF_NAME_SECT_NAME);
+-ValueProfNode __prof_vnodes_sect_data[0] COMPILER_RT_SECTION(INSTR_PROF_VNODES_SECT_NAME);
++extern __llvm_profile_data PROF_DATA_START COMPILER_RT_VISIBILITY
++    COMPILER_RT_WEAK;
++extern __llvm_profile_data PROF_DATA_STOP COMPILER_RT_VISIBILITY
++    COMPILER_RT_WEAK;
++extern uint64_t PROF_CNTS_START COMPILER_RT_VISIBILITY COMPILER_RT_WEAK;
++extern uint64_t PROF_CNTS_STOP COMPILER_RT_VISIBILITY COMPILER_RT_WEAK;
++extern uint32_t PROF_ORDERFILE_START COMPILER_RT_VISIBILITY COMPILER_RT_WEAK;
++extern char PROF_NAME_START COMPILER_RT_VISIBILITY COMPILER_RT_WEAK;
++extern char PROF_NAME_STOP COMPILER_RT_VISIBILITY COMPILER_RT_WEAK;
++extern ValueProfNode PROF_VNODES_START COMPILER_RT_VISIBILITY COMPILER_RT_WEAK;
++extern ValueProfNode PROF_VNODES_STOP COMPILER_RT_VISIBILITY COMPILER_RT_WEAK;
+ 
+ COMPILER_RT_VISIBILITY const __llvm_profile_data *
+ __llvm_profile_begin_data(void) {
diff --git a/dev-embedded/ti50-sdk/ti50-sdk-0.0.1.ebuild b/dev-embedded/ti50-sdk/ti50-sdk-0.0.1.ebuild
deleted file mode 100644
index b1d1c165..0000000
--- a/dev-embedded/ti50-sdk/ti50-sdk-0.0.1.ebuild
+++ /dev/null
@@ -1,143 +0,0 @@
-# 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.
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6..9} )
-
-inherit cros-constants python-any-r1 toolchain-funcs
-
-DESCRIPTION="Ebuild that installs Ti50's SDK"
-LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
-KEYWORDS="*"
-SLOT="0"
-
-# The llvm src tarball was manually packed from a checkout of
-# https://github.com/llvm/llvm-project at ${LLVM_SHA}, using
-# ${FILESDIR}/pack_git_tarball.py.
-LLVM_SHA="bb852a09ae36"
-LLVM_SRC_TARBALL_NAME="llvm-${LLVM_SHA}-src"
-SRC_URI="https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${LLVM_SRC_TARBALL_NAME}.tar.xz"
-
-BOOTSTRAP_HOST_TRIPLE="x86_64-unknown-linux-gnu"
-
-RUST_STAGE0_DATE="2020-08-26"
-RUST_VERSION="0da58007451a"
-
-RUST_PREFIX="rust-${RUST_VERSION}"
-RUST_SRC_TARBALL_NAME="rustc-${RUST_VERSION}-src"
-RUST_CARGO_TARBALL_NAME="cargo-beta-${BOOTSTRAP_HOST_TRIPLE}"
-RUST_STAGE0_TARBALL_NAME="rustc-beta-${BOOTSTRAP_HOST_TRIPLE}"
-RUST_STD_TARBALL_NAME="rust-std-beta-${BOOTSTRAP_HOST_TRIPLE}"
-RUST_RUSTFMT_TARBALL_NAME="rustfmt-beta-${BOOTSTRAP_HOST_TRIPLE}"
-# The rust src tarball was manually packed from a checkout of
-# https://github.com/rust-lang/rust at ${RUST_VERSION}, using
-# ${FILESDIR}/pack_git_tarball.py with |--post-copy-command 'cargo vendor'|.
-#
-# NOTE that this also had
-# rust-lang/rust@e715c7f234ba25c25b98894c822de9e7cf87558c applied; without
-# that, nothing `dist`s except for rust-std.
-SRC_URI+="
-	https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${RUST_PREFIX}-${RUST_SRC_TARBALL_NAME}.tar.xz
-	https://static.rust-lang.org/dist/${RUST_STAGE0_DATE}/${RUST_CARGO_TARBALL_NAME}.tar.xz -> ${RUST_PREFIX}-${RUST_CARGO_TARBALL_NAME}.tar.xz
-	https://static.rust-lang.org/dist/${RUST_STAGE0_DATE}/${RUST_STAGE0_TARBALL_NAME}.tar.xz -> ${RUST_PREFIX}-${RUST_STAGE0_TARBALL_NAME}.tar.xz
-	https://static.rust-lang.org/dist/${RUST_STAGE0_DATE}/${RUST_STD_TARBALL_NAME}.tar.xz -> ${RUST_PREFIX}-${RUST_STD_TARBALL_NAME}.tar.xz
-	https://static.rust-lang.org/dist/${RUST_STAGE0_DATE}/${RUST_RUSTFMT_TARBALL_NAME}.tar.xz -> ${RUST_PREFIX}-${RUST_RUSTFMT_TARBALL_NAME}.tar.xz
-"
-
-# The newlib src tarball was manually packed from a checkout of
-# https://sourceware.org/git/newlib-cygwin.git at ${NEWLIB_SHA}, using
-# ${FILESDIR}/pack_git_tarball.py.
-NEWLIB_SHA="1debd4d635c2"
-NEWLIB_SRC_TARBALL_NAME="newlib-${NEWLIB_SHA}-src"
-SRC_URI+=" https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${NEWLIB_SRC_TARBALL_NAME}.tar.xz"
-
-SRC_ROOT="${WORKDIR}/${P}/src"
-INSTALL_ROOT="${WORKDIR}/${P}/install"
-INSTALL_PREFIX="opt/${PN}"
-
-# N.B., this toolchain is built entirely independently of the host's Rust
-# toolchain, so no dev-lang/rust dependency is needed.
-DEPEND="sys-libs/zlib
-	>=sys-libs/ncurses-5.9-r3
-	sys-devel/binutils"
-BDEPEND="${PYTHON_DEPS}
-	dev-lang/perl
-	sys-devel/gnuconfig
-	$(python_gen_any_dep 'dev-python/sphinx[${PYTHON_USEDEP}]')
-	>=dev-libs/libxml2-2.9.6
-	>=dev-lang/perl-5.0"
-
-pkg_setup() {
-	python-any-r1_pkg_setup
-}
-
-src_unpack() {
-	default
-
-	mkdir -p "${SRC_ROOT}" || die
-
-	mv "${WORKDIR}/${LLVM_SRC_TARBALL_NAME}" "${SRC_ROOT}/llvm" || die
-	mv "${WORKDIR}/${NEWLIB_SRC_TARBALL_NAME}" "${SRC_ROOT}/newlib" || die
-
-	mv "${WORKDIR}/${RUST_SRC_TARBALL_NAME}" "${SRC_ROOT}/rustc" || die
-	cp -r \
-		"${WORKDIR}/${RUST_STD_TARBALL_NAME}/rust-std-${BOOTSTRAP_HOST_TRIPLE}/lib/rustlib/${BOOTSTRAP_HOST_TRIPLE}" \
-		"${WORKDIR}/${RUST_STAGE0_TARBALL_NAME}/rustc/lib/rustlib" \
-		|| die
-}
-
-src_prepare() {
-	cd "${SRC_ROOT}/llvm" || die
-	eapply "${FILESDIR}/llvm11-10122020-soteria.patch"
-
-	cd "${SRC_ROOT}/rustc" || die
-
-	# Copy "unknown" vendor targets to create cros_sdk target triples applied later.
-	local spec_dir="compiler/rustc_target/src/spec"
-	sed -e 's|"unknown"|"pc"|g' "${spec_dir}/x86_64_unknown_linux_gnu.rs" \
-		> "${spec_dir}/x86_64_pc_linux_gnu.rs" \
-		|| die
-
-	eapply "${FILESDIR}/rust-add-cros-targets.patch"
-	sed -i 's|"stdc++"|"c++"|g' "compiler/rustc_llvm/build.rs" || die
-
-	cd "${SRC_ROOT}" || die
-	eapply_user
-}
-
-# src_configure is elided, since this package is actually building a few things
-# at once, and there are dependencies between these things. Ideally, each of
-# these would be their own ebuild, but we're trying to keep this as small and
-# self-contained as possible for the moment.
-
-src_compile() {
-	tc-export PKG_CONFIG
-
-	# In iterative development via `ebuild compile`, our clang toolchain
-	# might already be fully built. Don't rebuild it if that's the case.
-	if [[ ! -e "${INSTALL_ROOT}/bin/clang" ]]; then
-		"${FILESDIR}/build_clang_toolchain.py" \
-			--install-dir="${INSTALL_ROOT}" \
-			--llvm-dir="${SRC_ROOT}/llvm" \
-			--newlib-dir="${SRC_ROOT}/newlib" \
-			--work-dir="${SRC_ROOT}/llvm/build" \
-			|| die
-	fi
-
-	"${FILESDIR}/build_rust_toolchain.py" \
-		--install-dir="${INSTALL_ROOT}" \
-		--install-prefix="${ED}${INSTALL_PREFIX}" \
-		--rust-src="${SRC_ROOT}/rustc" \
-		--rv-clang-bin="${INSTALL_ROOT}/bin" \
-		--cargo="${WORKDIR}/${RUST_CARGO_TARBALL_NAME}/cargo/bin/cargo" \
-		--rustc="${WORKDIR}/${RUST_STAGE0_TARBALL_NAME}/rustc/bin/rustc" \
-		--rustfmt="${WORKDIR}/${RUST_RUSTFMT_TARBALL_NAME}/rustfmt-preview/bin/rustfmt" \
-		|| die
-}
-
-src_install() {
-	dodir "/${INSTALL_PREFIX}"
-	cp -a "${INSTALL_ROOT}"/* "${D}/${INSTALL_PREFIX}" || die
-}
diff --git a/dev-embedded/ti50-sdk/ti50-sdk-0.0.2-r3.ebuild b/dev-embedded/ti50-sdk/ti50-sdk-0.0.2-r3.ebuild
new file mode 120000
index 0000000..519719d
--- /dev/null
+++ b/dev-embedded/ti50-sdk/ti50-sdk-0.0.2-r3.ebuild
@@ -0,0 +1 @@
+ti50-sdk-0.0.2.ebuild
\ No newline at end of file
diff --git a/dev-embedded/ti50-sdk/ti50-sdk-0.0.2.ebuild b/dev-embedded/ti50-sdk/ti50-sdk-0.0.2.ebuild
new file mode 100644
index 0000000..2ea6dd4
--- /dev/null
+++ b/dev-embedded/ti50-sdk/ti50-sdk-0.0.2.ebuild
@@ -0,0 +1,143 @@
+# 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.
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+
+inherit cros-constants python-any-r1 toolchain-funcs
+
+DESCRIPTION="Ebuild that installs Ti50's SDK"
+LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
+KEYWORDS="*"
+SLOT="0"
+
+# The llvm src tarball was manually packed from a checkout of
+# https://github.com/llvm/llvm-project at ${LLVM_SHA}, using
+# ${FILESDIR}/pack_git_tarball.py.
+LLVM_SHA="bb852a09ae36"
+LLVM_SRC_TARBALL_NAME="llvm-${LLVM_SHA}-src"
+SRC_URI="https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${LLVM_SRC_TARBALL_NAME}.tar.xz"
+
+
+# The rust src tarball was manually packed from a checkout of
+# https://github.com/rust-lang/rust at ${RUST_SHA}, using
+# ${FILESDIR}/pack_git_tarball.py with |--post-copy-command 'cargo vendor'|.
+BOOTSTRAP_HOST_TRIPLE="x86_64-unknown-linux-gnu"
+RUST_SHA="9111b8ae9793"
+# See https://github.com/rust-lang/rust/tree/${RUST_SHA}/src/stage0.txt
+RUST_STAGE0_DATE="2021-05-23"
+
+RUST_PREFIX="rust-${RUST_SHA}"
+RUST_SRC_TARBALL_NAME="rustc-${RUST_SHA}-src"
+RUST_CARGO_TARBALL_NAME="cargo-beta-${BOOTSTRAP_HOST_TRIPLE}"
+RUST_STAGE0_TARBALL_NAME="rustc-beta-${BOOTSTRAP_HOST_TRIPLE}"
+RUST_STD_TARBALL_NAME="rust-std-beta-${BOOTSTRAP_HOST_TRIPLE}"
+RUST_RUSTFMT_TARBALL_NAME="rustfmt-beta-${BOOTSTRAP_HOST_TRIPLE}"
+SRC_URI+="
+	https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${RUST_PREFIX}-${RUST_SRC_TARBALL_NAME}.tar.xz
+	https://static.rust-lang.org/dist/${RUST_STAGE0_DATE}/${RUST_CARGO_TARBALL_NAME}.tar.xz -> ${RUST_PREFIX}-${RUST_CARGO_TARBALL_NAME}.tar.xz
+	https://static.rust-lang.org/dist/${RUST_STAGE0_DATE}/${RUST_STAGE0_TARBALL_NAME}.tar.xz -> ${RUST_PREFIX}-${RUST_STAGE0_TARBALL_NAME}.tar.xz
+	https://static.rust-lang.org/dist/${RUST_STAGE0_DATE}/${RUST_STD_TARBALL_NAME}.tar.xz -> ${RUST_PREFIX}-${RUST_STD_TARBALL_NAME}.tar.xz
+	https://static.rust-lang.org/dist/${RUST_STAGE0_DATE}/${RUST_RUSTFMT_TARBALL_NAME}.tar.xz -> ${RUST_PREFIX}-${RUST_RUSTFMT_TARBALL_NAME}.tar.xz
+"
+
+# The newlib src tarball was manually packed from a checkout of
+# https://sourceware.org/git/newlib-cygwin.git at ${NEWLIB_SHA}, using
+# ${FILESDIR}/pack_git_tarball.py.
+NEWLIB_SHA="1debd4d635c2"
+NEWLIB_SRC_TARBALL_NAME="newlib-${NEWLIB_SHA}-src"
+SRC_URI+=" https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/${NEWLIB_SRC_TARBALL_NAME}.tar.xz"
+
+SRC_ROOT="${WORKDIR}/${P}/src"
+INSTALL_ROOT="${WORKDIR}/${P}/install"
+INSTALL_PREFIX="opt/${PN}"
+
+# N.B., this toolchain is built entirely independently of the host's Rust
+# toolchain, so no dev-lang/rust dependency is needed.
+DEPEND="sys-libs/zlib
+	>=sys-libs/ncurses-5.9-r3
+	sys-devel/binutils"
+BDEPEND="${PYTHON_DEPS}
+	dev-lang/perl
+	sys-devel/gnuconfig
+	$(python_gen_any_dep 'dev-python/sphinx[${PYTHON_USEDEP}]')
+	>=dev-libs/libxml2-2.9.6
+	>=dev-lang/perl-5.0"
+
+pkg_setup() {
+	python-any-r1_pkg_setup
+}
+
+src_unpack() {
+	default
+
+	mkdir -p "${SRC_ROOT}" || die
+
+	mv "${WORKDIR}/${LLVM_SRC_TARBALL_NAME}" "${SRC_ROOT}/llvm" || die
+	mv "${WORKDIR}/${NEWLIB_SRC_TARBALL_NAME}" "${SRC_ROOT}/newlib" || die
+
+	mv "${WORKDIR}/${RUST_SRC_TARBALL_NAME}" "${SRC_ROOT}/rustc" || die
+	cp -r \
+		"${WORKDIR}/${RUST_STD_TARBALL_NAME}/rust-std-${BOOTSTRAP_HOST_TRIPLE}/lib/rustlib/${BOOTSTRAP_HOST_TRIPLE}" \
+		"${WORKDIR}/${RUST_STAGE0_TARBALL_NAME}/rustc/lib/rustlib" \
+		|| die
+}
+
+src_prepare() {
+	cd "${SRC_ROOT}/llvm" || die
+	eapply "${FILESDIR}/llvm11-10122020-soteria.patch"
+
+	cd "${SRC_ROOT}/rustc" || die
+
+	# Copy "unknown" vendor targets to create cros_sdk target triples applied later.
+	local spec_dir="compiler/rustc_target/src/spec"
+	sed -e 's|"unknown"|"pc"|g' "${spec_dir}/x86_64_unknown_linux_gnu.rs" \
+		> "${spec_dir}/x86_64_pc_linux_gnu.rs" \
+		|| die
+
+	eapply "${FILESDIR}/rust-add-cros-targets.patch"
+	sed -i 's|"stdc++"|"c++"|g' "compiler/rustc_llvm/build.rs" || die
+
+	cd "${SRC_ROOT}/rustc/src/llvm-project/" || die
+	eapply "${FILESDIR}/rust-llvm-prf.patch"
+
+	cd "${SRC_ROOT}" || die
+	eapply_user
+}
+
+# src_configure is elided, since this package is actually building a few things
+# at once, and there are dependencies between these things. Ideally, each of
+# these would be their own ebuild, but we're trying to keep this as small and
+# self-contained as possible for the moment.
+
+src_compile() {
+	tc-export PKG_CONFIG
+
+	# In iterative development via `ebuild compile`, our clang toolchain
+	# might already be fully built. Don't rebuild it if that's the case.
+	if [[ ! -e "${INSTALL_ROOT}/bin/clang" ]]; then
+		"${FILESDIR}/build_clang_toolchain.py" \
+			--install-dir="${INSTALL_ROOT}" \
+			--llvm-dir="${SRC_ROOT}/llvm" \
+			--newlib-dir="${SRC_ROOT}/newlib" \
+			--work-dir="${SRC_ROOT}/llvm/build" \
+			|| die
+	fi
+
+	"${FILESDIR}/build_rust_toolchain.py" \
+		--install-dir="${INSTALL_ROOT}" \
+		--install-prefix="${ED}${INSTALL_PREFIX}" \
+		--rust-src="${SRC_ROOT}/rustc" \
+		--rv-clang-bin="${INSTALL_ROOT}/bin" \
+		--cargo="${WORKDIR}/${RUST_CARGO_TARBALL_NAME}/cargo/bin/cargo" \
+		--rustc="${WORKDIR}/${RUST_STAGE0_TARBALL_NAME}/rustc/bin/rustc" \
+		--rustfmt="${WORKDIR}/${RUST_RUSTFMT_TARBALL_NAME}/rustfmt-preview/bin/rustfmt" \
+		|| die
+}
+
+src_install() {
+	dodir "/${INSTALL_PREFIX}"
+	cp -a "${INSTALL_ROOT}"/* "${D}/${INSTALL_PREFIX}" || die
+}
diff --git a/dev-go/cdp/Manifest b/dev-go/cdp/Manifest
index 2724da1..808ba80 100644
--- a/dev-go/cdp/Manifest
+++ b/dev-go/cdp/Manifest
@@ -1 +1 @@
-DIST github.com-mafredri-cdp-v0.28.0.tar.gz 367157 BLAKE2B d9073feca782655c8658d8150ebeea2751c2c1ad3822b5434e85bfd92ed1376ba23bf37fb249d0d00a8f4cee0b0b844f576ce57f64be1c6ac2453c0d7ee7a81b SHA512 cb531dc0acb693f17cffa8663a87da83a5d4129606a0ea9ccb4893bfcb622d3f4cb735bfd25da12071a0decbfc481d5ba57c5e772ae7e43055a81b2cc2194642
+DIST github.com-mafredri-cdp-v0.31.0.tar.gz 413035 BLAKE2B 2b5ef3306b193c5467b0d94f660f4b7326446579c48b6420994824278c57c1ff03049bf9b0004838a5262341b743c29d501dbee5104249cbe1d663089a9783e9 SHA512 c8d82851b87881b0e341097797d9f17cff228f21dc0e6e445ec6b53be0192dd88c9e764a0c6030b74fc3694210a684fcdde3eaaca6dfca563fc3a9e612c3daac
diff --git a/dev-go/cdp/cdp-0.28.0-r2.ebuild b/dev-go/cdp/cdp-0.28.0-r2.ebuild
deleted file mode 120000
index 16f5aab..0000000
--- a/dev-go/cdp/cdp-0.28.0-r2.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-cdp-0.28.0.ebuild
\ No newline at end of file
diff --git a/dev-go/cdp/cdp-0.28.0.ebuild b/dev-go/cdp/cdp-0.28.0.ebuild
deleted file mode 100644
index 67ef22e..0000000
--- a/dev-go/cdp/cdp-0.28.0.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2.
-
-EAPI=5
-
-CROS_GO_SOURCE="github.com/mafredri/cdp v0.28.0"
-
-CROS_GO_PACKAGES=(
-	"github.com/mafredri/cdp"
-	"github.com/mafredri/cdp/devtool"
-	"github.com/mafredri/cdp/internal/..."
-	"github.com/mafredri/cdp/protocol/..."
-	"github.com/mafredri/cdp/rpcc"
-	"github.com/mafredri/cdp/session"
-)
-
-CROS_GO_TEST=(
-	# Exclude the main cdp package, as Example_incognito is failing with
-	# "... dial tcp [::1]:9222: connect: connection refused"
-	"github.com/mafredri/cdp/devtool"
-	"github.com/mafredri/cdp/internal/..."
-	"github.com/mafredri/cdp/protocol/..."
-	"github.com/mafredri/cdp/rpcc"
-	"github.com/mafredri/cdp/session"
-)
-
-inherit cros-go
-
-DESCRIPTION="Type-safe bindings for the Chrome Debugging Protocol written in Go"
-HOMEPAGE="https://github.com/mafredri/cdp"
-SRC_URI="$(cros-go_src_uri)"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="*"
-IUSE="test"
-RESTRICT="binchecks strip"
-
-DEPEND="
-	test? (
-		dev-go/cmp
-		dev-go/sync
-	)"
-RDEPEND="dev-go/websocket"
-
-src_prepare() {
-	EPATCH_OPTS="-d src/github.com/mafredri/cdp"
-	epatch "${FILESDIR}"/0001-Check-for-websocket.CloseError-in-session.Manager.wa.patch
-}
diff --git a/dev-go/cdp/cdp-0.31.0.ebuild b/dev-go/cdp/cdp-0.31.0.ebuild
new file mode 100644
index 0000000..e646e2a
--- /dev/null
+++ b/dev-go/cdp/cdp-0.31.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2.
+
+EAPI=5
+
+CROS_GO_SOURCE="github.com/mafredri/cdp v0.31.0"
+
+CROS_GO_PACKAGES=(
+	"github.com/mafredri/cdp"
+	"github.com/mafredri/cdp/devtool"
+	"github.com/mafredri/cdp/internal/..."
+	"github.com/mafredri/cdp/protocol/..."
+	"github.com/mafredri/cdp/rpcc"
+	"github.com/mafredri/cdp/session"
+)
+
+CROS_GO_TEST=(
+	# Exclude the main cdp package, as Example_incognito is failing with
+	# "... dial tcp [::1]:9222: connect: connection refused"
+	"github.com/mafredri/cdp/devtool"
+	"github.com/mafredri/cdp/internal/..."
+	"github.com/mafredri/cdp/protocol/..."
+	"github.com/mafredri/cdp/rpcc"
+	"github.com/mafredri/cdp/session"
+)
+
+inherit cros-go
+
+DESCRIPTION="Type-safe bindings for the Chrome Debugging Protocol written in Go"
+HOMEPAGE="https://github.com/mafredri/cdp"
+SRC_URI="$(cros-go_src_uri)"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="*"
+IUSE="test"
+RESTRICT="binchecks strip"
+
+DEPEND="
+	test? (
+		dev-go/cmp
+		dev-go/sync
+	)"
+RDEPEND="dev-go/websocket"
diff --git a/dev-go/cdp/files/0001-Check-for-websocket.CloseError-in-session.Manager.wa.patch b/dev-go/cdp/files/0001-Check-for-websocket.CloseError-in-session.Manager.wa.patch
deleted file mode 100644
index a0dd75b..0000000
--- a/dev-go/cdp/files/0001-Check-for-websocket.CloseError-in-session.Manager.wa.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 83ad651cd49fd42ad67bf20e9e6fbebb538156f9 Mon Sep 17 00:00:00 2001
-From: Willie Koomson <wvk@google.com>
-Date: Tue, 23 Jun 2020 11:56:50 -0700
-Subject: [PATCH] Check for websocket.CloseError in session.Manager.watch()
-GitHub issue: https://github.com/mafredri/cdp/issues/120
-GitHub PR: https://github.com/mafredri/cdp/pull/121
----
- session/manager.go | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/session/manager.go b/session/manager.go
-index 374f458..48fbed4 100644
---- a/session/manager.go
-+++ b/session/manager.go
-@@ -4,6 +4,7 @@ import (
- 	"context"
- 	"time"
- 
-+	"github.com/gorilla/websocket"
- 	"github.com/mafredri/cdp"
- 	"github.com/mafredri/cdp/internal/errors"
- 	"github.com/mafredri/cdp/protocol/target"
-@@ -79,6 +80,11 @@ func (m *Manager) watch(ev *sessionEvents, created <-chan *session, done, errC c
- 				m.cancel()
- 				return true
- 			}
-+			// Test if this is a websocket.CloseError
-+			if _, ok := e.(*websocket.CloseError); ok {
-+				m.cancel()
-+				return true
-+			}
- 		}
- 		if cdp.ErrorCause(err) == context.Canceled {
- 			// Manager was closed.
--- 
-2.27.0.111.gc72c7da667-goog
-
diff --git a/dev-go/docker/Manifest b/dev-go/docker/Manifest
new file mode 100644
index 0000000..3e7cf50
--- /dev/null
+++ b/dev-go/docker/Manifest
@@ -0,0 +1,9 @@
+DIST github.com-containerd-containerd-v1.5.1.tar.gz 7667135 BLAKE2B 4ddea5adec7b290145ec8da40a8fa07a8f9fd7e4cef611074b97b7be5f3544c45ffe1de1a151c5da17a73584b34f823bcbc552a839c5fb52d9b68679aac7ba1c SHA512 457e3059638af7479aebc88bb8aea148d93b0a42de3b3ea78b7ee81e9af8132bedaeb53a1cc06763a13158d0cacf2a1f788820b49d899d5f0eed7ed3a65dc271
+DIST github.com-docker-distribution-v2.7.1.tar.gz 1996699 BLAKE2B 2e22db69f476be5a4688f5b3d6b41fbbf71460351543ae849f707dd5b3d56624f674815a25214002886b057f0859f75fd197bb275a7b3cc8a7787422f716ad0e SHA512 f6baf0e7aa96ebe828c628f7dfd84ee899331c3c1bdab86662aef595b092702b6d9b2c9be766a6de6d153ff4ca55d85c5fd8785a0968f285f56a32a50092c754
+DIST github.com-docker-go-connections-88e5af338bb1e6c7f51b69cc1864249d1e8f4786.tar.gz 32787 BLAKE2B bceeea90a6b1f3dd81d709d467fbe95fccd7f229e516926bb00d287d79844660a02821cff32ef5f0674c8e97b266fd39c1764d4ff5f63dc67f5182e64556e243 SHA512 adcc7abc285fb2bc3b34e011744cb506c84ee2c51588c096a57c83d4b5f491166fca1ea07435d65f2519a2228ce99a120a5115451db156520b5c55209dc53b6b
+DIST github.com-docker-go-units-519db1ee28dcc9fd2474ae59fca29a810482bfb1.tar.gz 11516 BLAKE2B 6aed7f1d54c15c1b0c9da472fee62a92aa06ccbc7fd5c94ccd18827bf51bef1229878389f78efeae1aef7f272d3fc8525764386dd2ebca4dcebc0b0476674103 SHA512 7f5d3915c4f90fb124a5c37cc6470667005ace2c2211686f90e4a14ba924c9631284ebcccb5b583e99dbd58c2a7bdd4e1115cbb42dfacd87e70476d9ef09d58e
+DIST github.com-gogo-protobuf-226206f39bd7276e88ec684ea0028c18ec2c91ae.tar.gz 2042486 BLAKE2B 7de7ca21218a7aecbd96ec7f2a055ea1b1ca9bd21f681773c9a925f55c093ef9ff917adf09cbf2910c88b2d577809bc586322ddc02098aeb618bd5689818bd3d SHA512 1b08357715c11fe9728b0dfce359066b3451fcbe191064d60e47384e9b2137274f76df2380937ff85a2bcacbdf985511317ecfd947877d6d8baa369a1a6572a0
+DIST github.com-moby-moby-5f0703c549935d2cfec42b468b858d822b58a27e.tar.gz 11832796 BLAKE2B dffceea30eb24da2fe1a25a098ec6d7c13f38b856965e4358799a8d66d91818ee48979bd1dded70543db3c0bd4f75352121645fa43b0c6e956c0252f123d0d3f SHA512 8c3af4c16cf174fb040c7d9def8fe4e615ecebe26accd520e6be9edf65c771df3560bb301074ddd47aa68e3de91a55c71b85373dd9f14be773db5279a4d7e266
+DIST github.com-opencontainers-go-digest-v1.0.0.tar.gz 24456 BLAKE2B a3229398e3a91ef76fbc67131182b30f5de4a6bd2777e75223c9b5c174d1d744523e52d2ba7f2fa8ea8660c03de924c3aef0fa20ea1a71d4894678a8eaf8363d SHA512 ae6a8d1d3f4925eb6570a193b65429a2acde587d09ffb7b5c9d7568423c9931067fce6401f59d0664f0563bb0bb1f76595085dade2bd030f33189fd3310382e6
+DIST github.com-opencontainers-image-spec-v1.0.1.tar.gz 138674 BLAKE2B 4cc13e304c7b328e03b59433b698940094a8d583fc8c7ac1b7245c5dc121c9d6b1b8ed98916b3cb9b2c16ba2c857f613dcfcbb8c3ead2b4bff2fe3d001d289a2 SHA512 762dce11fa262f0417e9bdd20ad4d75b3efa505705b2dd357889e14b4e0120c7655468dc1b998c8dd824ca1ba1f0293671e80d4ab6b21375c80c3ff89cee6d27
+DIST github.com-sirupsen-logrus-v1.8.1.tar.gz 47161 BLAKE2B de318638c429c911b472bcf889a41ef5fb53d1399a495f674ac0893bf4c08c267d45f0053be831c81407d9c13403e494ae6273a1f5e3914695340b54861359be SHA512 025e4cc81d32ea3afdf49643180217989be0e842fd5c92c26e10a2dd5dc55a1e6c4102c6af202f65a86dcd061160bc20e66c58a4381325f36b9590ce04c0be39
diff --git a/dev-go/docker/OWNERS b/dev-go/docker/OWNERS
new file mode 100644
index 0000000..5bdb162
--- /dev/null
+++ b/dev-go/docker/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform/tast:/OWNERS
diff --git a/dev-go/docker/docker-20.10.8.ebuild b/dev-go/docker/docker-20.10.8.ebuild
new file mode 100644
index 0000000..aea064e
--- /dev/null
+++ b/dev-go/docker/docker-20.10.8.ebuild
@@ -0,0 +1,76 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2.
+
+EAPI=5
+CROS_GO_SOURCE=(
+	"github.com/moby/moby:github.com/docker/docker 5f0703c549935d2cfec42b468b858d822b58a27e"
+	"github.com/containerd/containerd v1.5.1"
+	"github.com/docker/distribution v2.7.1"
+	"github.com/docker/go-connections 88e5af338bb1e6c7f51b69cc1864249d1e8f4786"
+	"github.com/docker/go-units 519db1ee28dcc9fd2474ae59fca29a810482bfb1"
+	"github.com/gogo/protobuf 226206f39bd7276e88ec684ea0028c18ec2c91ae"
+	"github.com/opencontainers/go-digest v1.0.0"
+	"github.com/opencontainers/image-spec v1.0.1"
+	"github.com/sirupsen/logrus v1.8.1"
+)
+
+CROS_GO_PACKAGES=(
+	"github.com/containerd/containerd/errdefs"
+	"github.com/docker/distribution/digestset"
+	"github.com/docker/distribution/reference"
+	"github.com/docker/distribution/registry/api/errcode"
+	"github.com/docker/docker/api"
+	"github.com/docker/docker/api/types"
+	"github.com/docker/docker/api/types/blkiodev"
+	"github.com/docker/docker/api/types/container"
+	"github.com/docker/docker/api/types/events"
+	"github.com/docker/docker/api/types/filters"
+	"github.com/docker/docker/api/types/image"
+	"github.com/docker/docker/api/types/mount"
+	"github.com/docker/docker/api/types/network"
+	"github.com/docker/docker/api/types/registry"
+	"github.com/docker/docker/api/types/strslice"
+	"github.com/docker/docker/api/types/swarm"
+	"github.com/docker/docker/api/types/swarm/runtime"
+	"github.com/docker/docker/api/types/time"
+	"github.com/docker/docker/api/types/versions"
+	"github.com/docker/docker/api/types/volume"
+	"github.com/docker/docker/client"
+	"github.com/docker/docker/errdefs"
+	"github.com/docker/go-connections/nat"
+	"github.com/docker/go-connections/sockets"
+	"github.com/docker/go-connections/tlsconfig"
+	"github.com/docker/go-units"
+	"github.com/gogo/protobuf/proto"
+	"github.com/opencontainers/go-digest"
+	"github.com/opencontainers/image-spec/specs-go"
+	"github.com/opencontainers/image-spec/specs-go/v1"
+	"github.com/sirupsen/logrus"
+)
+
+inherit cros-go
+
+CROS_GO_TEST=(
+	"${CROS_GO_PACKAGES[@]}"
+)
+
+DESCRIPTION="Docker SDK in Go"
+HOMEPAGE="mobyproject.org"
+SRC_URI="$(cros-go_src_uri)"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+RESTRICT="binchecks strip"
+
+DEPEND="
+	dev-go/protobuf
+	dev-go/crypto
+	dev-go/grpc
+	dev-go/text
+	dev-go/net
+	dev-go/go-sys
+	dev-go/errors
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-go/errors/Manifest b/dev-go/errors/Manifest
index 24cb95d..4148f5a 100644
--- a/dev-go/errors/Manifest
+++ b/dev-go/errors/Manifest
@@ -1 +1 @@
-DIST github.com-pkg-errors-v0.8.1.tar.gz 11009 SHA256 7a428967c6fc2e80cd84a0d9469ab6bd4dbe6b13493ba6294322a933a5a7e356 SHA512 8f93cdae71789e417da11a45c667954169ec4adc04fb618f938ffc2e513cb021f140bc2b94f3e634fd4f19b73be7c9bc483d541bb7baea54c7c9700becc4d438 WHIRLPOOL b6f280a08e7b6f9317d3183020480db71694d550c71cc9c915573b7ca45af0c06e4f2e038437f4fa5d6966be917a0f4797b4165b69db3d1eb985a0d8cf237e61
+DIST github.com-pkg-errors-v0.9.1.tar.gz 13415 BLAKE2B b52733d93e7f13761d5cbfed050ece29e184828e4f40753d6c3ded8e0aec9b4a5b2ff1f9922d19bae692c187445a950cf95c3cdc88b7fd74b6365e6b4c71ffac SHA512 7de0fd81486c29c850189a6b09177395acd69b52329c3b2d9733c6a77aa13e79e9d29f4cad55997075e619751518bb145bcfcfde9fdc88eed3f2d6bcab8f98ea
diff --git a/dev-go/errors/errors-0.8.1-r1.ebuild b/dev-go/errors/errors-0.8.1-r1.ebuild
deleted file mode 120000
index df137e4..0000000
--- a/dev-go/errors/errors-0.8.1-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-errors-0.8.1.ebuild
\ No newline at end of file
diff --git a/dev-go/errors/errors-0.9.1-r1.ebuild b/dev-go/errors/errors-0.9.1-r1.ebuild
new file mode 120000
index 0000000..bb9153d
--- /dev/null
+++ b/dev-go/errors/errors-0.9.1-r1.ebuild
@@ -0,0 +1 @@
+errors-0.9.1.ebuild
\ No newline at end of file
diff --git a/dev-go/errors/errors-0.8.1.ebuild b/dev-go/errors/errors-0.9.1.ebuild
similarity index 100%
rename from dev-go/errors/errors-0.8.1.ebuild
rename to dev-go/errors/errors-0.9.1.ebuild
diff --git a/dev-go/go-sysconf/Manifest b/dev-go/go-sysconf/Manifest
new file mode 100644
index 0000000..e6644f1
--- /dev/null
+++ b/dev-go/go-sysconf/Manifest
@@ -0,0 +1 @@
+DIST github.com-tklauser-go-sysconf-v0.3.7.tar.gz 27652 BLAKE2B 45a68d4fc7943c0051a3e8df36397d6c309446763c77c1907e90490ec7a7cebee496173353d6d8d45e033211860ab1be467a651a382a01c2fff1c2779b34836c SHA512 cacbd952345c5727eaf51edb68286f8e44809973cbd7a8428c5ac613b529ca48cd95797e3f61557f3136255e6e556f8d8275ab7ccdf60729397333177ed23343
diff --git a/dev-go/go-sysconf/OWNERS b/dev-go/go-sysconf/OWNERS
new file mode 100644
index 0000000..d821869
--- /dev/null
+++ b/dev-go/go-sysconf/OWNERS
@@ -0,0 +1,2 @@
+# Owned by Tast team.
+include chromiumos/platform/tast:/OWNERS
diff --git a/dev-go/go-sysconf/go-sysconf-0.3.7-r1.ebuild b/dev-go/go-sysconf/go-sysconf-0.3.7-r1.ebuild
new file mode 120000
index 0000000..fef45e5
--- /dev/null
+++ b/dev-go/go-sysconf/go-sysconf-0.3.7-r1.ebuild
@@ -0,0 +1 @@
+go-sysconf-0.3.7.ebuild
\ No newline at end of file
diff --git a/dev-go/go-sysconf/go-sysconf-0.3.7.ebuild b/dev-go/go-sysconf/go-sysconf-0.3.7.ebuild
new file mode 100644
index 0000000..6f8871a
--- /dev/null
+++ b/dev-go/go-sysconf/go-sysconf-0.3.7.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2.
+
+EAPI=5
+
+CROS_GO_SOURCE="github.com/tklauser/go-sysconf v${PV}"
+
+CROS_GO_PACKAGES=(
+	"github.com/tklauser/go-sysconf"
+)
+
+CROS_GO_TEST=(
+	"github.com/tklauser/go-sysconf"
+)
+
+inherit cros-go
+
+DESCRIPTION="sysconf for Go, without using cgo or external binaries (e.g. getconf)."
+HOMEPAGE="https://github.com/tklauser/go-sysconf"
+SRC_URI="$(cros-go_src_uri)"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="*"
+IUSE="test"
+RESTRICT="binchecks strip"
+
+DEPEND="
+	dev-go/numcpus
+	dev-go/go-sys
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-go/go-tools/go-tools-0.0.1-r14.ebuild b/dev-go/go-tools/go-tools-0.0.1-r15.ebuild
similarity index 100%
rename from dev-go/go-tools/go-tools-0.0.1-r14.ebuild
rename to dev-go/go-tools/go-tools-0.0.1-r15.ebuild
diff --git a/dev-go/go-tools/go-tools-0.0.1.ebuild b/dev-go/go-tools/go-tools-0.0.1.ebuild
index 09c2e8a..d1f3172 100644
--- a/dev-go/go-tools/go-tools-0.0.1.ebuild
+++ b/dev-go/go-tools/go-tools-0.0.1.ebuild
@@ -25,6 +25,8 @@
 	"golang.org/x/tools/internal/gopathwalk"
 	"golang.org/x/tools/internal/packagesinternal"
 	"golang.org/x/tools/internal/typesinternal"
+	"golang.org/x/tools/imports"
+	"golang.org/x/tools/internal/imports"
 )
 
 CROS_GO_TEST=(
diff --git a/dev-go/gopsutil/Manifest b/dev-go/gopsutil/Manifest
index 920f6dd..50c7c05 100644
--- a/dev-go/gopsutil/Manifest
+++ b/dev-go/gopsutil/Manifest
@@ -1 +1 @@
-DIST github.com-shirou-gopsutil-v2.19.05.tar.gz 126208 BLAKE2B 512f30ebe1010501897127492abaf231937bc2dd1bb2db4f86966f9f8c7f21a78caca63fb1b425e492aab9855a28995ee08cd8f1f5ed61039d67b686321e60b0 SHA512 2a10a7f695244f973e94e49d8240019305bdf994b160c9ba3a371450bd4899a902eaaff34c367ff3b46fcb91cd5d0ddfcfc8b057cd7e90716e8b384841e5931e
+DIST github.com-shirou-gopsutil-v3.21.7.tar.gz 296094 BLAKE2B 85fb33906011b5bd17a274bd2af80c3790ac8394f2ce0f0b361916dec19144f39556ecece2e3c7696e4a17ea0c6844a823f9fc1316f2e1d63f4808d96ffcdbcb SHA512 745b7dca75fc2db8f6a6a6ddfaa09e704bea00c538804d85b725743e3c1308ff6730a318daf8c241537f36e15587c1e1428fc1c47824e0cd0e8e11cdbc02c0d9
diff --git a/dev-go/gopsutil/OWNERS b/dev-go/gopsutil/OWNERS
new file mode 100644
index 0000000..d821869
--- /dev/null
+++ b/dev-go/gopsutil/OWNERS
@@ -0,0 +1,2 @@
+# Owned by Tast team.
+include chromiumos/platform/tast:/OWNERS
diff --git a/dev-go/gopsutil/gopsutil-2.19.05-r1.ebuild b/dev-go/gopsutil/gopsutil-2.19.05-r1.ebuild
deleted file mode 120000
index 0087ec8..0000000
--- a/dev-go/gopsutil/gopsutil-2.19.05-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-gopsutil-2.19.05.ebuild
\ No newline at end of file
diff --git a/dev-go/gopsutil/gopsutil-2.19.05.ebuild b/dev-go/gopsutil/gopsutil-2.19.05.ebuild
deleted file mode 100644
index 0583013..0000000
--- a/dev-go/gopsutil/gopsutil-2.19.05.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2.
-
-EAPI=5
-
-CROS_GO_SOURCE="github.com/shirou/gopsutil v${PV}"
-
-CROS_GO_PACKAGES=(
-	"github.com/shirou/gopsutil/cpu"
-	"github.com/shirou/gopsutil/disk"
-	"github.com/shirou/gopsutil/host"
-	"github.com/shirou/gopsutil/internal/..."
-	"github.com/shirou/gopsutil/load"
-	"github.com/shirou/gopsutil/mem"
-	"github.com/shirou/gopsutil/net"
-	"github.com/shirou/gopsutil/process"
-)
-
-CROS_GO_TEST=(
-	"github.com/shirou/gopsutil/cpu"
-	"github.com/shirou/gopsutil/disk"
-	# host fails due to missing /var/run/utmp in chroot.
-	"github.com/shirou/gopsutil/internal/..."
-	"github.com/shirou/gopsutil/load"
-	# mem, net, and process require github.com/stretchr/testify/assert.
-)
-
-inherit cros-go
-
-DESCRIPTION="Cross-platform lib for process and system monitoring in Go"
-HOMEPAGE="https://github.com/shirou/gopsutil"
-SRC_URI="$(cros-go_src_uri)"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="*"
-IUSE="test"
-RESTRICT="binchecks strip"
-
-DEPEND="test? ( dev-go/go-sys )"
-RDEPEND="dev-go/go-sys"
diff --git a/dev-go/gopsutil/gopsutil-3.21.7-r1.ebuild b/dev-go/gopsutil/gopsutil-3.21.7-r1.ebuild
new file mode 120000
index 0000000..864ecb5
--- /dev/null
+++ b/dev-go/gopsutil/gopsutil-3.21.7-r1.ebuild
@@ -0,0 +1 @@
+gopsutil-3.21.7.ebuild
\ No newline at end of file
diff --git a/dev-go/gopsutil/gopsutil-3.21.7.ebuild b/dev-go/gopsutil/gopsutil-3.21.7.ebuild
new file mode 100644
index 0000000..17864af
--- /dev/null
+++ b/dev-go/gopsutil/gopsutil-3.21.7.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2.
+
+EAPI=5
+
+CROS_GO_SOURCE="github.com/shirou/gopsutil v${PV}"
+
+CROS_GO_PACKAGES=(
+	"github.com/shirou/gopsutil/cpu"
+	"github.com/shirou/gopsutil/disk"
+	"github.com/shirou/gopsutil/host"
+	"github.com/shirou/gopsutil/internal/..."
+	"github.com/shirou/gopsutil/load"
+	"github.com/shirou/gopsutil/mem"
+	"github.com/shirou/gopsutil/net"
+	"github.com/shirou/gopsutil/process"
+)
+
+CROS_GO_TEST=(
+	"github.com/shirou/gopsutil/cpu"
+	"github.com/shirou/gopsutil/disk"
+	# host fails due to missing /var/run/utmp in chroot.
+	"github.com/shirou/gopsutil/internal/..."
+	"github.com/shirou/gopsutil/load"
+	# mem, net, and process require github.com/stretchr/testify/assert.
+)
+
+inherit cros-go
+
+DESCRIPTION="Cross-platform lib for process and system monitoring in Go"
+HOMEPAGE="https://github.com/shirou/gopsutil"
+SRC_URI="$(cros-go_src_uri)"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="*"
+IUSE="test"
+RESTRICT="binchecks strip"
+
+DEPEND="
+	test? ( dev-go/go-sys )
+	dev-go/go-sysconf
+"
+RDEPEND="
+	dev-go/go-sys
+	dev-go/go-sysconf
+"
diff --git a/dev-go/lucicfg/Manifest b/dev-go/lucicfg/Manifest
new file mode 100644
index 0000000..8bb6aec
--- /dev/null
+++ b/dev-go/lucicfg/Manifest
@@ -0,0 +1,4 @@
+DIST lucicfg-1.28.0-amd64.zip 11859929 BLAKE2B 3a20f0e364586f025b1945192eac7c52f98f85dd854eff8bf89e1106f2b187ab7665a95309d66c8847121524aff29d5b4c6b862f51965245ad580a5016359096 SHA512 fb5c29902988310c0e227bb75350cbe09f4bda545ba0034b0df60fdbb72f960a6b75e14549b1ac9f6d4b671205ff2e99d6f251a67175c0501073f57f86930dbf
+DIST lucicfg-1.28.0-arm.zip 11138572 BLAKE2B 247d553065be7aea266e95e68acdaee7fa74dcd30b27293c1a9a89ecbd633f1f435ce67197c4c5ca5ce1c645abdfc4d05ce5eee8f2584edf5c833f228f570b36 SHA512 b48528a28fc49e262fe175b228aa0b78c5cf72ffee390f29ebd66df2ce76b4a71b8cc3cf4dd1689ff67a925f8b52d99648b7a44dc9056b7693c79f21640e1e35
+DIST lucicfg-1.28.0-arm64.zip 11148905 BLAKE2B f7160a188991a986f9dc6dc2c92a254928cf55c0f34496ccae1b41b8e829a2036f8f540a73fd5c0b8af7378d0934e638d0400236c2b52430f742c9fbefc2f24e SHA512 ce9ba3bfead40dd3886c89d33fad6a6c3cbd72b5b9efe18459edeb3c064bfe1b75b690d0233132de5e731c97958838d304e600227bcca3e9c981b65e7768cc85
+DIST lucicfg-1.28.0-x86.zip 11594027 BLAKE2B 07a2adba407059c1db8686bcba9e738fbe99155c5c1a08d73104a8bb4fcb07ab98d591b0ed676de7759e4311235e8a7e1fa6a33266c4df95e27f8f50a1a85dfa SHA512 e2ca137cc6bddf8a2e5b51fdb72496afce6ec625be2467d4fc87c5374cf40be174bd934fedd7fd48af28394a0d184c564c1b46b03f96320de4d5f0534a502cf8
diff --git a/dev-go/lucicfg/OWNERS b/dev-go/lucicfg/OWNERS
new file mode 100644
index 0000000..634b013
--- /dev/null
+++ b/dev-go/lucicfg/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform/dev-util:/src/OWNERS
diff --git a/dev-go/lucicfg/lucicfg-1.28.0-r1.ebuild b/dev-go/lucicfg/lucicfg-1.28.0-r1.ebuild
new file mode 120000
index 0000000..2cff37d
--- /dev/null
+++ b/dev-go/lucicfg/lucicfg-1.28.0-r1.ebuild
@@ -0,0 +1 @@
+lucicfg-1.28.0.ebuild
\ No newline at end of file
diff --git a/dev-go/lucicfg/lucicfg-1.28.0.ebuild b/dev-go/lucicfg/lucicfg-1.28.0.ebuild
new file mode 100644
index 0000000..b49a4d0
--- /dev/null
+++ b/dev-go/lucicfg/lucicfg-1.28.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2.
+
+EAPI=7
+
+# To determine the latest version, run the following for each architecture:
+# $ cipd resolve infra/tools/luci/lucicfg/linux-${ARCH} -version latest
+
+DESCRIPTION="Dialect of the starlark-go CLI for compiling starlark configs"
+HOMEPAGE="https://chromium.googlesource.com/infra/luci/luci-go/+/main/lucicfg/"
+SRC_URI="
+	amd64? ( cipd://infra/tools/luci/lucicfg/linux-amd64:nbdhAt7xHlGWTn7NyfAyWtiSxEMMrCnc7sOYYRDQovwC -> ${P}-amd64.zip )
+	x86?   ( cipd://infra/tools/luci/lucicfg/linux-386:Eov5Nt9D63ImjwNzuvPNoUNmgYC3ClsAZC7yw-gXQy8C -> ${P}-x86.zip )
+	arm64? ( cipd://infra/tools/luci/lucicfg/linux-arm64:5g-Q10_7W8V73fPnEi3JRry2Ntnz14w9x__4SnDUZaAC -> ${P}-arm64.zip )
+	arm?   ( cipd://infra/tools/luci/lucicfg/linux-armv6l:UAPY457UUGKjqe5OPjTtGbzxUGbc_4TXojhsHFnYTsUC -> ${P}-arm.zip )
+"
+RESTRICT="mirror"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 x86 arm arm64"
+IUSE=""
+
+S="${WORKDIR}"
+
+src_install() {
+	dobin lucicfg
+}
diff --git a/dev-go/mock/Manifest b/dev-go/mock/Manifest
index 04b9b64..8eb70a8 100644
--- a/dev-go/mock/Manifest
+++ b/dev-go/mock/Manifest
@@ -1 +1 @@
-DIST github.com-golang-mock-v1.0.0.tar.gz 30320 SHA256 b15cb65e1095e277eefa64d2db6705f9303af87d8f7d3cdc6621675782cc5618 SHA512 d9cba7c77e2d4766c583f56e20f60616e761f7c84b77457d2a22f2f48e712599e6c5bc6262407682c297aebcfe14ae5be336185d4cfb48bf6d0d50cb2e042867 WHIRLPOOL 366841947aa1f5583aa19710acc8283930d65bcd90eabee399838a0b538211b89ee12886909a9a266ae3a2b03cd72b413e9dab542fb6c938f32ea06cbcc3cbd7
+DIST github.com-golang-mock-v1.6.0.tar.gz 69251 BLAKE2B 5de6bde8a25f8464f239f0733e08cfe141c6152904ff1bd98d650602387aa69a806d68d82af024f031f8adec63d7ab77ca71634e4acf5bd955d942d0681a28ae SHA512 a5b1647bf6551a3bb2cb2d38bcdd14ead21d2e7c4a01472e2183320adcd797afcf3dcd430b21e3fe7aba1e22ee2ed8b769c26af686c46bbf5338c68c3abd592c
diff --git a/dev-go/mock/mock-1.0.0-r2.ebuild b/dev-go/mock/mock-1.0.0-r2.ebuild
deleted file mode 120000
index 61a0c42..0000000
--- a/dev-go/mock/mock-1.0.0-r2.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-mock-1.0.0.ebuild
\ No newline at end of file
diff --git a/dev-go/mock/mock-1.0.0.ebuild b/dev-go/mock/mock-1.0.0.ebuild
deleted file mode 100644
index c28e82c..0000000
--- a/dev-go/mock/mock-1.0.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2.
-
-EAPI=5
-
-CROS_GO_SOURCE="github.com/golang/mock v${PV}"
-
-CROS_GO_PACKAGES=(
-	"github.com/golang/mock/gomock"
-	"github.com/golang/mock/mockgen/model"
-)
-
-CROS_GO_BINARIES=(
-	"github.com/golang/mock/mockgen"
-)
-
-inherit cros-go
-
-DESCRIPTION="A mocking framework for the Go programming language"
-HOMEPAGE="https://github.com/golang/mock"
-SRC_URI="$(cros-go_src_uri)"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-RESTRICT="binchecks strip"
-
-DEPEND=""
-RDEPEND=""
diff --git a/dev-go/mock/mock-1.6.0-r1.ebuild b/dev-go/mock/mock-1.6.0-r1.ebuild
new file mode 120000
index 0000000..c2cf956
--- /dev/null
+++ b/dev-go/mock/mock-1.6.0-r1.ebuild
@@ -0,0 +1 @@
+mock-1.6.0.ebuild
\ No newline at end of file
diff --git a/dev-go/mock/mock-1.6.0.ebuild b/dev-go/mock/mock-1.6.0.ebuild
new file mode 100644
index 0000000..8aa1260
--- /dev/null
+++ b/dev-go/mock/mock-1.6.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2.
+
+EAPI=5
+
+CROS_GO_SOURCE="github.com/golang/mock v${PV}"
+
+CROS_GO_PACKAGES=(
+	"github.com/golang/mock/gomock"
+	"github.com/golang/mock/mockgen/model"
+)
+
+CROS_GO_BINARIES=(
+	"github.com/golang/mock/mockgen"
+)
+
+inherit cros-go
+
+DESCRIPTION="A mocking framework for the Go programming language"
+HOMEPAGE="https://github.com/golang/mock"
+SRC_URI="$(cros-go_src_uri)"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+RESTRICT="binchecks strip"
+
+DEPEND="
+	dev-go/mod
+	dev-go/go-tools
+"
+RDEPEND=""
diff --git a/dev-go/mod/mod-0.3.0-r1.ebuild b/dev-go/mod/mod-0.3.0-r2.ebuild
similarity index 100%
rename from dev-go/mod/mod-0.3.0-r1.ebuild
rename to dev-go/mod/mod-0.3.0-r2.ebuild
diff --git a/dev-go/mod/mod-0.3.0.ebuild b/dev-go/mod/mod-0.3.0.ebuild
index 01211ba..89c2604 100644
--- a/dev-go/mod/mod-0.3.0.ebuild
+++ b/dev-go/mod/mod-0.3.0.ebuild
@@ -9,7 +9,9 @@
 
 CROS_GO_PACKAGES=(
 	"golang.org/x/mod/module"
+	"golang.org/x/mod/modfile"
 	"golang.org/x/mod/semver"
+	"golang.org/x/mod/internal/lazyregexp"
 )
 
 CROS_GO_TEST=(
diff --git a/dev-go/net/Manifest b/dev-go/net/Manifest
index 6698a1d..cd5f610 100644
--- a/dev-go/net/Manifest
+++ b/dev-go/net/Manifest
@@ -1 +1 @@
-DIST go.googlesource.com-net-0ed95abb35c445290478a5348a7b38bb154135fd.tar.gz 928290 SHA256 2585bc618844de541cf7a444bb0e1266b0d13964f86f96c8a43c4af5c8d0129c SHA512 d79b7ed63f27dbea25d440c127bfcf7458a383e5640f4bb70463df4958c60e14906afc59456ae7f193d0fe1cebbb8297a0e24b4991a26ea9a23eb739469eafec WHIRLPOOL 2b5cbd66d2366d1c0eaebd7a6edb7610d122388ef5448446fa6ea1e1af8785a6af14f38a678893c452ea56e28e7b81e6de8f47b8bcce629ea82ea886b206fc23
+DIST go.googlesource.com-net-6f5299370f2bb1ac5d41c561fd1e5da511c2a3db.tar.gz 1238559 BLAKE2B ffb5cef93cfc2a22e376d5f7b1f7ae1006baa78afca7e5b706705b398c44761fb22c68d37f4bf1fae4979cb2fa9291b830da7c7d56d822af46cdd0b9e43e2e79 SHA512 6d806b0fce774c4a72126c46fc22549814ed980884059d24285347ba3d362d2ceed2cbc7e76ba37467a8a95bd44b1af6464278b99dc9b7c72dfe2df4b2b976c1
diff --git a/dev-go/net/net-0.0.1-r9.ebuild b/dev-go/net/net-0.0.1-r10.ebuild
similarity index 100%
rename from dev-go/net/net-0.0.1-r9.ebuild
rename to dev-go/net/net-0.0.1-r10.ebuild
diff --git a/dev-go/net/net-0.0.1.ebuild b/dev-go/net/net-0.0.1.ebuild
index d78b8c7..1309760 100644
--- a/dev-go/net/net-0.0.1.ebuild
+++ b/dev-go/net/net-0.0.1.ebuild
@@ -3,24 +3,28 @@
 
 EAPI=5
 
-CROS_GO_SOURCE="go.googlesource.com/net:golang.org/x/net 0ed95abb35c445290478a5348a7b38bb154135fd"
+CROS_GO_SOURCE="go.googlesource.com/net:golang.org/x/net 6f5299370f2bb1ac5d41c561fd1e5da511c2a3db"
 
 CROS_GO_PACKAGES=(
 	"golang.org/x/net/bpf"
 	"golang.org/x/net/context"
 	"golang.org/x/net/context/ctxhttp"
+	"golang.org/x/net/dns/dnsmessage"
 	"golang.org/x/net/html"
 	"golang.org/x/net/html/atom"
+	"golang.org/x/net/http/httpguts"
+	"golang.org/x/net/http/httpproxy"
 	"golang.org/x/net/http2"
 	"golang.org/x/net/http2/hpack"
 	"golang.org/x/net/idna"
 	"golang.org/x/net/internal/iana"
 	"golang.org/x/net/internal/socket"
+	"golang.org/x/net/internal/socks"
 	"golang.org/x/net/internal/timeseries"
 	"golang.org/x/net/ipv4"
 	"golang.org/x/net/ipv6"
-	"golang.org/x/net/lex/httplex"
 	"golang.org/x/net/netutil"
+	"golang.org/x/net/proxy"
 	"golang.org/x/net/publicsuffix"
 	"golang.org/x/net/trace"
 )
diff --git a/dev-go/numcpus/Manifest b/dev-go/numcpus/Manifest
new file mode 100644
index 0000000..280eefa
--- /dev/null
+++ b/dev-go/numcpus/Manifest
@@ -0,0 +1 @@
+DIST github.com-tklauser-numcpus-v0.2.3.tar.gz 8400 BLAKE2B 8f1b4e74525ec13b3648b5d91bc18b4499e11cb476d7e2db7479e5896b5472b938cb024eb52b8d0d7532f7e6ececd765862b67614d1e29cf80cba58a422f34e8 SHA512 8a88b26733ecc4ed15e80dca84f786bb848fd8136a8fad35028b1ac37b12f095c337d39d0cfafdba08629123126f75747475362533e5a7f0cf82d3e728ec8256
diff --git a/dev-go/numcpus/OWNERS b/dev-go/numcpus/OWNERS
new file mode 100644
index 0000000..0dc2a77
--- /dev/null
+++ b/dev-go/numcpus/OWNERS
@@ -0,0 +1,2 @@
+# Owned by tast team.
+include chromiumos/platform/tast:/OWNERS
diff --git a/dev-go/numcpus/numcpus-0.2.3-r1.ebuild b/dev-go/numcpus/numcpus-0.2.3-r1.ebuild
new file mode 120000
index 0000000..2580027
--- /dev/null
+++ b/dev-go/numcpus/numcpus-0.2.3-r1.ebuild
@@ -0,0 +1 @@
+numcpus-0.2.3.ebuild
\ No newline at end of file
diff --git a/dev-go/numcpus/numcpus-0.2.3.ebuild b/dev-go/numcpus/numcpus-0.2.3.ebuild
new file mode 100644
index 0000000..e2c3302
--- /dev/null
+++ b/dev-go/numcpus/numcpus-0.2.3.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2.
+
+EAPI=5
+
+CROS_GO_SOURCE="github.com/tklauser/numcpus v${PV}"
+
+CROS_GO_PACKAGES=(
+	"github.com/tklauser/numcpus"
+)
+
+CROS_GO_TEST=(
+	"github.com/tklauser/numcpus"
+)
+
+inherit cros-go
+
+DESCRIPTION="Provides information about the number of CPU."
+HOMEPAGE="https://github.com/tklauser/numcpus"
+SRC_URI="$(cros-go_src_uri)"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="*"
+IUSE="test"
+RESTRICT="binchecks strip"
+
+DEPEND="
+	dev-go/go-sys
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-go/perfetto-protos/Manifest b/dev-go/perfetto-protos/Manifest
deleted file mode 100644
index 5744497..0000000
--- a/dev-go/perfetto-protos/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST android.googlesource.com-platform-external-perfetto-v4.1.tar.gz 10580076 BLAKE2B d8f1116685c6f7e43c98465edc6ecf881c0006a9300040566178e24512020c70f97c43add80053be194b63d2fbca845237a17b0af51e7a69abc23c2688fcd3d5 SHA512 b741fc25d1fdbe95770dbe4673494dd52efa60d1ecbd4cd30cc19ae591da190ac64bf1d41fa5b67a3fe5db2c91f547f0c6a8729923f6375e56ece3d96392d160
diff --git a/chromeos-base/perfetto_proto/OWNERS b/dev-go/perfetto-protos/OWNERS
similarity index 100%
rename from chromeos-base/perfetto_proto/OWNERS
rename to dev-go/perfetto-protos/OWNERS
diff --git a/dev-go/perfetto-protos/files/BUILD.gn b/dev-go/perfetto-protos/files/BUILD.gn
new file mode 100644
index 0000000..d675af7
--- /dev/null
+++ b/dev-go/perfetto-protos/files/BUILD.gn
@@ -0,0 +1,24 @@
+# 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.
+
+import("//common-mk/proto_library.gni")
+
+group("all") {
+  deps = [
+    ":trace_processor-goprotos",
+    ":trace_config-goprotos",
+  ]
+}
+
+goproto_library("trace_processor-goprotos") {
+  proto_in_dir = "../aosp/external/perfetto/protos/perfetto/metrics"
+  proto_out_dir = "go/src/android.googlesource.com/platform/external/perfetto/protos/perfetto/metrics"
+  sources = [ "${proto_in_dir}/perfetto_merged_metrics.proto" ]
+}
+
+goproto_library("trace_config-goprotos") {
+  proto_in_dir = "../aosp/external/perfetto/protos/perfetto/trace"
+  proto_out_dir = "go/src/android.googlesource.com/platform/external/perfetto/protos/perfetto/trace"
+  sources = [ "${proto_in_dir}/perfetto_trace.proto" ]
+}
diff --git a/dev-go/perfetto-protos/files/chromeos-version.sh b/dev-go/perfetto-protos/files/chromeos-version.sh
new file mode 100644
index 0000000..37ac4f5
--- /dev/null
+++ b/dev-go/perfetto-protos/files/chromeos-version.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+# 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.
+
+# This echo statement sets the package base version (without its -r value).
+# If it is necessary to add a new blocker or version dependency on this ebuild
+# at the same time as revving the ebuild to a known version value, editing this
+# version can be useful.
+echo 17.0
diff --git a/dev-go/perfetto-protos/perfetto-protos-17.0-r265.ebuild b/dev-go/perfetto-protos/perfetto-protos-17.0-r265.ebuild
new file mode 100644
index 0000000..c163a78
--- /dev/null
+++ b/dev-go/perfetto-protos/perfetto-protos-17.0-r265.ebuild
@@ -0,0 +1,56 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("fa68100f5be2459da45a73682ce35c3364c79790" "f50d917b6de0e955da4defed02d48a9a45e85d68")
+CROS_WORKON_TREE=("a0a198b5a9aa1388d58ee6c18bbae218be5b69d1" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_GO_PACKAGES=(
+	"android.googlesource.com/platform/external/perfetto/protos/perfetto/metrics"
+	"android.googlesource.com/platform/external/perfetto/protos/perfetto/trace"
+)
+
+inherit cros-constants
+
+CROS_WORKON_LOCALNAME=("../aosp/external/perfetto" "../platform2")
+CROS_WORKON_PROJECT=("platform/external/perfetto" "chromiumos/platform2")
+CROS_WORKON_REPO=("${CROS_GIT_AOSP_URL}" "${CROS_GIT_HOST_URL}")
+CROS_WORKON_DESTDIR=("${S}/aosp/external/perfetto" "${S}/platform2")
+CROS_WORKON_EGIT_BRANCH=("master" "main")
+CROS_WORKON_SUBTREE=("" "common-mk .gn")
+
+PLATFORM_SUBDIR="./"
+
+inherit cros-go cros-workon platform
+
+DESCRIPTION="Perfetto go proto for Chrome OS"
+HOMEPAGE="https://android.googlesource.com/platform/external/perfetto/+/refs/tags/v15.0/protos/perfetto/metrics/android/"
+
+KEYWORDS="*"
+IUSE="cros-debug"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+# protobuf dep is for using protoc at build-time to generate perfetto's headers.
+BDEPEND="
+	dev-go/protobuf
+"
+
+RDEPEND="
+	!chromeos-base/perfetto_proto
+"
+
+src_unpack() {
+	platform_src_unpack
+	CROS_GO_WORKSPACE="${OUT}/gen/go"
+}
+
+src_prepare() {
+	default
+	cp "${FILESDIR}/BUILD.gn" "${S}"
+	echo 'option go_package = "trace";' >> "${S}/../aosp/external/perfetto/protos/perfetto/trace/perfetto_trace.proto"
+}
+
+src_install() {
+	cros-go_src_install
+}
diff --git a/dev-go/perfetto-protos/perfetto-protos-4.1-r1.ebuild b/dev-go/perfetto-protos/perfetto-protos-4.1-r1.ebuild
deleted file mode 120000
index b39f610..0000000
--- a/dev-go/perfetto-protos/perfetto-protos-4.1-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-perfetto-protos-4.1.ebuild
\ No newline at end of file
diff --git a/dev-go/perfetto-protos/perfetto-protos-4.1.ebuild b/dev-go/perfetto-protos/perfetto-protos-4.1.ebuild
deleted file mode 100644
index 6b73fd4..0000000
--- a/dev-go/perfetto-protos/perfetto-protos-4.1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_GO_SOURCE="android.googlesource.com/platform/external/perfetto v4.1"
-CROS_GO_PACKAGES=(
-	"android.googlesource.com/platform/external/perfetto/protos/perfetto/trace"
-)
-
-inherit cros-go
-
-DESCRIPTION="Go bindings for Perfetto protocol buffers"
-HOMEPAGE="https://android.googlesource.com/platform/external/perfetto"
-SRC_URI="$(cros-go_src_uri)"
-LICENSE="Apache-2.0"
-KEYWORDS="*"
-SLOT="0"
-RDEPEND="
-	dev-libs/protobuf:=
-"
-DEPEND="
-	${RDEPEND}
-	dev-go/protobuf:=
-"
-src_prepare() {
-	default
-	local repo_path="android.googlesource.com/platform/external/perfetto"
-	local go_package_path="${S}/src/${repo_path}"
-	local source_path="${S}/${P}"
-
-	# cros-go-src_unpack() unpacks the entire perfetto source archive at
-	# $go_package_path, since it expects it to be a Go package. Because it
-	# is not, we must move the source out of $go_package_path before
-	# generating Go files to that destination, or unwanted perfetto source
-	# files will end up installed on the target.
-	mv "${go_package_path}" "${source_path}" || die
-	mkdir -p "${go_package_path}" || die
-
-	local proto_file="${source_path}/protos/perfetto/trace/perfetto_trace.proto"
-
-	# Add go_package option to proto
-	echo 'option go_package = "trace";' >> "${proto_file}"
-
-	# Generate Go source
-	protoc --go_out="${go_package_path}" -I"${source_path}" "${proto_file}"  || die
-}
diff --git a/dev-go/perfetto-protos/perfetto-protos-9999.ebuild b/dev-go/perfetto-protos/perfetto-protos-9999.ebuild
new file mode 100644
index 0000000..56b6f17
--- /dev/null
+++ b/dev-go/perfetto-protos/perfetto-protos-9999.ebuild
@@ -0,0 +1,54 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_GO_PACKAGES=(
+	"android.googlesource.com/platform/external/perfetto/protos/perfetto/metrics"
+	"android.googlesource.com/platform/external/perfetto/protos/perfetto/trace"
+)
+
+inherit cros-constants
+
+CROS_WORKON_LOCALNAME=("../aosp/external/perfetto" "../platform2")
+CROS_WORKON_PROJECT=("platform/external/perfetto" "chromiumos/platform2")
+CROS_WORKON_REPO=("${CROS_GIT_AOSP_URL}" "${CROS_GIT_HOST_URL}")
+CROS_WORKON_DESTDIR=("${S}/aosp/external/perfetto" "${S}/platform2")
+CROS_WORKON_EGIT_BRANCH=("master" "main")
+CROS_WORKON_SUBTREE=("" "common-mk .gn")
+
+PLATFORM_SUBDIR="./"
+
+inherit cros-go cros-workon platform
+
+DESCRIPTION="Perfetto go proto for Chrome OS"
+HOMEPAGE="https://android.googlesource.com/platform/external/perfetto/+/refs/tags/v15.0/protos/perfetto/metrics/android/"
+
+KEYWORDS="~*"
+IUSE="cros-debug"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+# protobuf dep is for using protoc at build-time to generate perfetto's headers.
+BDEPEND="
+	dev-go/protobuf
+"
+
+RDEPEND="
+	!chromeos-base/perfetto_proto
+"
+
+src_unpack() {
+	platform_src_unpack
+	CROS_GO_WORKSPACE="${OUT}/gen/go"
+}
+
+src_prepare() {
+	default
+	cp "${FILESDIR}/BUILD.gn" "${S}"
+	echo 'option go_package = "trace";' >> "${S}/../aosp/external/perfetto/protos/perfetto/trace/perfetto_trace.proto"
+}
+
+src_install() {
+	cros-go_src_install
+}
diff --git a/dev-go/seccomp/seccomp-0.0.1-r7.ebuild b/dev-go/seccomp/seccomp-0.0.1-r7.ebuild
deleted file mode 100644
index 1d741fd..0000000
--- a/dev-go/seccomp/seccomp-0.0.1-r7.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="9d14f8b297985ec80f05d14afd6378e3350e2c41"
-CROS_WORKON_TREE="e5e0d0ca30d0ce803ca251a36026c0c2b6a47624"
-CROS_WORKON_PROJECT="chromiumos/platform/go-seccomp"
-CROS_WORKON_LOCALNAME="../platform/go-seccomp"
-
-CROS_GO_PACKAGES=(
-	"chromiumos/seccomp"
-)
-
-inherit cros-workon cros-go
-
-DESCRIPTION="Go support for Chromium OS Seccomp-BPF policy files"
-HOMEPAGE="https://chromium.org/chromium-os/developer-guide/chromium-os-sandboxing"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-RESTRICT="binchecks strip"
-
-DEPEND=""
-RDEPEND=""
diff --git a/dev-go/seccomp/seccomp-9999.ebuild b/dev-go/seccomp/seccomp-9999.ebuild
deleted file mode 100644
index 60f0038..0000000
--- a/dev-go/seccomp/seccomp-9999.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2.
-
-EAPI=7
-
-CROS_WORKON_PROJECT="chromiumos/platform/go-seccomp"
-CROS_WORKON_LOCALNAME="../platform/go-seccomp"
-
-CROS_GO_PACKAGES=(
-	"chromiumos/seccomp"
-)
-
-inherit cros-workon cros-go
-
-DESCRIPTION="Go support for Chromium OS Seccomp-BPF policy files"
-HOMEPAGE="https://chromium.org/chromium-os/developer-guide/chromium-os-sandboxing"
-
-LICENSE="BSD-Google"
-KEYWORDS="~*"
-IUSE=""
-RESTRICT="binchecks strip"
-
-DEPEND=""
-RDEPEND=""
diff --git a/dev-go/starlark-go/Manifest b/dev-go/starlark-go/Manifest
new file mode 100644
index 0000000..0f38252
--- /dev/null
+++ b/dev-go/starlark-go/Manifest
@@ -0,0 +1,4 @@
+DIST github.com-chzyer-logex-v1.1.10.tar.gz 4343 BLAKE2B 46563f9e57c4747eac94371815158fb5e059b03dfc83456feb833aaef80e24b41f759a21a2bf2364c013d69e6ea2d7495eb7f91b3170f68cb6689d8a8e9f46dd SHA512 c3af840ffb2ee1355fb23931924381c7e55b121b8bf98a768135760606352c76ddca688d7f3bbc0bc2a2526b4c358eb6cbb3f25d7f750035b49a6d300b5d52ce
+DIST github.com-chzyer-readline-2972be24d48e78746da79ba8e24e8b488c9880de.tar.gz 36832 BLAKE2B a66fdb5126e9a9f7dfd52360d0a26916764a96df95b1d995ea1a83aac26227e16d3a2c3a419746c8ad03ba5bef4724a6abadf0ee3fdd84f347d595b9db88b6e1 SHA512 fb84020d5519cd0c5c2c06df598122e1bad3a31ed6b545aae66547e43d48d3da04a75799db9ca8957af1bd47ce2c1542440287c6722e0ab2c27b23ea9631e09a
+DIST github.com-chzyer-test-a1ea475d72b168a29f44221e0ad031a842642302.tar.gz 4007 BLAKE2B e8ecfa11bf116bfae44421c2cf2fc3879ef78b6738ac0c7f5177898c98f4b0656cbc32a670c05b11137fec6e93d5481ba604795283e8f5b20a0ec54f6f5aee15 SHA512 e4d7ee906d543e3ce790e0530c6efc3a89aa814ca33f65564f1d0da4b757fda9cd8fefc5a50fcb78cb977c718c3ea0153066ed5aa6b5d5402e067e01a4c70c93
+DIST github.com-google-starlark-go-87f333178d5942de51b193111d6f636c79833ea5.tar.gz 269097 BLAKE2B 07025d6e69e824d2d13c276aea7f8574b2588ff3fda208e931c38fe7275f14696c41091900daeabe03a6fd1910e1e24a057549a563ba990183c14d833ece0049 SHA512 396c52aff3521caa31fffcd556e96f0ca878c14d0e260083e7ab00d59a50c9f92828769c6dda238bb8e773bbee504a3dd586a9348a7b9d05ec21373e96db9250
diff --git a/dev-go/starlark-go/OWNERS b/dev-go/starlark-go/OWNERS
new file mode 100644
index 0000000..634b013
--- /dev/null
+++ b/dev-go/starlark-go/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform/dev-util:/src/OWNERS
diff --git a/dev-go/starlark-go/starlark-go-0.0.1-r1.ebuild b/dev-go/starlark-go/starlark-go-0.0.1-r1.ebuild
new file mode 120000
index 0000000..0da8c6a
--- /dev/null
+++ b/dev-go/starlark-go/starlark-go-0.0.1-r1.ebuild
@@ -0,0 +1 @@
+starlark-go-0.0.1.ebuild
\ No newline at end of file
diff --git a/dev-go/starlark-go/starlark-go-0.0.1.ebuild b/dev-go/starlark-go/starlark-go-0.0.1.ebuild
new file mode 100644
index 0000000..95a2048
--- /dev/null
+++ b/dev-go/starlark-go/starlark-go-0.0.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2021 Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2.
+
+EAPI=7
+
+CROS_GO_SOURCE=(
+	"github.com/google/starlark-go:go.starlark.net 87f333178d5942de51b193111d6f636c79833ea5"
+	"github.com/chzyer/logex v1.1.10"
+	"github.com/chzyer/readline 2972be24d48e78746da79ba8e24e8b488c9880de"
+	"github.com/chzyer/test a1ea475d72b168a29f44221e0ad031a842642302"
+)
+
+CROS_GO_BINARIES=(
+	"go.starlark.net/cmd/starlark/"
+)
+
+inherit cros-go
+
+DESCRIPTION="Go impl of the starlark config language"
+HOMEPAGE="https://github.com/google/starlark-go"
+SRC_URI="$(cros-go_src_uri)"
+RESTRICT="binchecks strip"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+DEPEND="
+	dev-go/cmp
+	dev-go/go-sys
+	dev-go/protobuf
+	dev-go/xerrors
+"
+
+RDEPEND=""
+
+src_install() {
+	dobin starlark
+}
diff --git a/dev-go/syzkaller/files/0004-cros-syzkaller-add-hub-flag.patch b/dev-go/syzkaller/files/0004-cros-syzkaller-add-hub-flag.patch
new file mode 100644
index 0000000..2f100eb4
--- /dev/null
+++ b/dev-go/syzkaller/files/0004-cros-syzkaller-add-hub-flag.patch
@@ -0,0 +1,55 @@
+From 1c679fddaacf86ecd48e546a2d9a6b6a624f17bb Mon Sep 17 00:00:00 2001
+From: Grant Hugh <ghugh@google.com>
+Date: Tue, 10 Aug 2021 00:02:51 +0000
+Subject: [PATCH] syz-manager: add hub flag
+
+Added hub flag to syz-manager that will disable the loading of mgr.seeds
+from syzkaller/sys/{OS}/test and will change the hubSyncLoop sync wait
+time from 10 minutes to 3 minutes.
+---
+ syz-manager/hub.go     | 6 +++++-
+ syz-manager/manager.go | 4 ++++
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/syz-manager/hub.go b/syz-manager/hub.go
+index f42c71206..ad3da86ab 100644
+--- a/syz-manager/hub.go
++++ b/syz-manager/hub.go
+@@ -57,7 +57,11 @@ type HubManagerView interface {
+ 
+ func (hc *HubConnector) loop() {
+ 	var hub *rpctype.RPCClient
+-	for ; ; time.Sleep(10 * time.Minute) {
++	timeout := 10 * time.Minute
++	if *flagHub {
++		timeout = 3 * time.Minute
++	}
++	for ; ; time.Sleep(timeout) {
+ 		corpus, repros := hc.mgr.getMinimizedCorpus()
+ 		hc.newRepros = append(hc.newRepros, repros...)
+ 		if hub == nil {
+diff --git a/syz-manager/manager.go b/syz-manager/manager.go
+index ae20975df..8a49f38d7 100644
+--- a/syz-manager/manager.go
++++ b/syz-manager/manager.go
+@@ -42,6 +42,7 @@ var (
+ 	flagConfig = flag.String("config", "", "configuration file")
+ 	flagDebug  = flag.Bool("debug", false, "dump all VM output to console")
+ 	flagBench  = flag.String("bench", "", "write execution statistics into this file periodically")
++	flagHub    = flag.Bool("hub", false, "run syz-manager suited to interact with syz-hub")
+ )
+ 
+ type Manager struct {
+@@ -447,6 +448,9 @@ func (mgr *Manager) preloadCorpus() {
+ 	}
+ 	mgr.corpusDB = corpusDB
+ 
++	if *flagHub {
++		return
++	}
+ 	if seedDir := filepath.Join(mgr.cfg.Syzkaller, "sys", mgr.cfg.TargetOS, "test"); osutil.IsExist(seedDir) {
+ 		seeds, err := ioutil.ReadDir(seedDir)
+ 		if err != nil {
+-- 
+2.33.0.rc1.237.g0d66db33f3-goog
+
diff --git a/dev-go/syzkaller/syzkaller-0.0.10.ebuild b/dev-go/syzkaller/syzkaller-0.0.10.ebuild
deleted file mode 100644
index 78209fa..0000000
--- a/dev-go/syzkaller/syzkaller-0.0.10.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 2020 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.
-
-EAPI=7
-
-CROS_GO_SOURCE="github.com/google/syzkaller 8ee2dea687224e1e5759783abf5046d298bbe167"
-
-CROS_GO_PACKAGES=(
-	"github.com/google/syzkaller"
-)
-
-inherit cros-go
-
-DESCRIPTION="Syzkaller kernel fuzzer"
-HOMEPAGE="https://github.com/google/syzkaller"
-SRC_URI="$(cros-go_src_uri)"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-SYZKALLER_PATH="src/github.com/google/syzkaller"
-
-src_prepare() {
-	cd "${SYZKALLER_PATH}" || die "unable to cd to extracted syzkaller directory"
-	eapply "${FILESDIR}"/0001-cros-syzkaller-do-not-use-go.sum-and-go.mod.patch
-	eapply "${FILESDIR}"/0002-cros-syzkaller-turn-off-vhci-injection.patch
-	eapply "${FILESDIR}"/0003-cros-syzkaller-use-arm-toolchain-available-within-ch.patch
-	eapply_user
-}
-
-src_compile() {
-	cd "${SYZKALLER_PATH}" || die "unable to cd to extracted syzkaller directory"
-	CFLAGS="" GOPATH="${GOPATH}:${S}" make TARGETOS=linux TARGETARCH="${ARCH}" || die "syzkaller build failed"
-}
-
-src_install() {
-	local bin_path="${SYZKALLER_PATH}/bin"
-	dobin "${bin_path}"/syz-manager || die "failed to install syz-manager"
-	dobin "${bin_path}"/linux_"${ARCH}"/syz-fuzzer || die "failed to install syz-fuzzer"
-	dobin "${bin_path}"/linux_"${ARCH}"/syz-executor || die "failed to install syz-executor"
-	dobin "${bin_path}"/linux_"${ARCH}"/syz-execprog || die "failed to install syz-execprog"
-}
-
-# Overriding postinst for package github.com/google/syzkaller
-# as no Go files are present in the repository root directory
-# and getting list of packages inside cros-go_pkg_postinst() fails.
-pkg_postinst() {
-	:;
-}
diff --git a/dev-go/syzkaller/syzkaller-0.0.11.ebuild b/dev-go/syzkaller/syzkaller-0.0.11.ebuild
new file mode 100644
index 0000000..ac7059c
--- /dev/null
+++ b/dev-go/syzkaller/syzkaller-0.0.11.ebuild
@@ -0,0 +1,52 @@
+# Copyright 2020 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.
+
+EAPI=7
+
+CROS_GO_SOURCE="github.com/google/syzkaller 8ee2dea687224e1e5759783abf5046d298bbe167"
+
+CROS_GO_PACKAGES=(
+	"github.com/google/syzkaller"
+)
+
+inherit cros-go
+
+DESCRIPTION="Syzkaller kernel fuzzer"
+HOMEPAGE="https://github.com/google/syzkaller"
+SRC_URI="$(cros-go_src_uri)"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+SYZKALLER_PATH="src/github.com/google/syzkaller"
+
+src_prepare() {
+	cd "${SYZKALLER_PATH}" || die "unable to cd to extracted syzkaller directory"
+	eapply "${FILESDIR}"/0001-cros-syzkaller-do-not-use-go.sum-and-go.mod.patch
+	eapply "${FILESDIR}"/0002-cros-syzkaller-turn-off-vhci-injection.patch
+	eapply "${FILESDIR}"/0003-cros-syzkaller-use-arm-toolchain-available-within-ch.patch
+	eapply "${FILESDIR}"/0004-cros-syzkaller-add-hub-flag.patch
+	eapply_user
+}
+
+src_compile() {
+	cd "${SYZKALLER_PATH}" || die "unable to cd to extracted syzkaller directory"
+	CFLAGS="" GOPATH="${GOPATH}:${S}" make TARGETOS=linux TARGETARCH="${ARCH}" || die "syzkaller build failed"
+}
+
+src_install() {
+	local bin_path="${SYZKALLER_PATH}/bin"
+	dobin "${bin_path}"/syz-manager || die "failed to install syz-manager"
+	dobin "${bin_path}"/linux_"${ARCH}"/syz-fuzzer || die "failed to install syz-fuzzer"
+	dobin "${bin_path}"/linux_"${ARCH}"/syz-executor || die "failed to install syz-executor"
+	dobin "${bin_path}"/linux_"${ARCH}"/syz-execprog || die "failed to install syz-execprog"
+}
+
+# Overriding postinst for package github.com/google/syzkaller
+# as no Go files are present in the repository root directory
+# and getting list of packages inside cros-go_pkg_postinst() fails.
+pkg_postinst() {
+	:;
+}
diff --git a/dev-go/tarm-serial/Manifest b/dev-go/tarm-serial/Manifest
new file mode 100644
index 0000000..63e4c8c
--- /dev/null
+++ b/dev-go/tarm-serial/Manifest
@@ -0,0 +1 @@
+DIST github.com-tarm-serial-98f6abe2eb07edd42f6dfa2a934aea469acc29b7.tar.gz 8121 BLAKE2B d83c560e26f235644605ff1a1dde5562d9d34fd095a19761d66be2a12b01c521bc1b955c7cfbc835b6f09846fc134e80b0b6ba11aa41817d6dfe6b647eb570f3 SHA512 e9ab1f641cad8e7bd9710719af6da8a756778260efcd15a569c391f1f3ae7e81aa5abab03f636aafaabc653d0bedaa2102a835119435bb7584077a011e2eaa2a
diff --git a/dev-go/tarm-serial/OWNERS b/dev-go/tarm-serial/OWNERS
new file mode 100644
index 0000000..5bdb162
--- /dev/null
+++ b/dev-go/tarm-serial/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform/tast:/OWNERS
diff --git a/dev-go/tarm-serial/tarm-serial-0.0.1-r1.ebuild b/dev-go/tarm-serial/tarm-serial-0.0.1-r1.ebuild
new file mode 120000
index 0000000..c6cd3bc
--- /dev/null
+++ b/dev-go/tarm-serial/tarm-serial-0.0.1-r1.ebuild
@@ -0,0 +1 @@
+tarm-serial-0.0.1.ebuild
\ No newline at end of file
diff --git a/dev-go/tarm-serial/tarm-serial-0.0.1.ebuild b/dev-go/tarm-serial/tarm-serial-0.0.1.ebuild
new file mode 100644
index 0000000..44783ea
--- /dev/null
+++ b/dev-go/tarm-serial/tarm-serial-0.0.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+
+CROS_GO_SOURCE="github.com/tarm/serial 98f6abe2eb07edd42f6dfa2a934aea469acc29b7"
+
+CROS_GO_PACKAGES=(
+	"github.com/tarm/serial"
+)
+
+inherit cros-go
+
+DESCRIPTION="Go package to read and write serial port byte streams"
+HOMEPAGE="https://github.com/tarm/serial"
+SRC_URI="$(cros-go_src_uri)"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+RESTRICT="binchecks strip"
+
+DEPEND="dev-go/go-sys"
+RDEPEND=""
diff --git a/dev-go/vnc2video/Manifest b/dev-go/vnc2video/Manifest
new file mode 100644
index 0000000..5bd46d7
--- /dev/null
+++ b/dev-go/vnc2video/Manifest
@@ -0,0 +1 @@
+DIST github.com-matts1-vnc2video-v1.0.1.tar.gz 1495838 BLAKE2B 35318ec41705ea2aa5492835ca6e41c90a963aba34735e4ac40017e4205cdce3f145767c214c60c0e7c1bcc8a9607852478a662b1d00f4e5d3dc4728ba60cc35 SHA512 ed8e22027d7f80f49a4f3130d16bfa8e9ffce7cb59a1ae77fd9f52ea1702a3ace1ccb92103bac50884179a8aa99581980d7e5f968babd5976d4f5ca2cbde01a5
diff --git a/dev-go/vnc2video/OWNERS b/dev-go/vnc2video/OWNERS
new file mode 100644
index 0000000..d943097
--- /dev/null
+++ b/dev-go/vnc2video/OWNERS
@@ -0,0 +1 @@
+msta@google.com
diff --git a/dev-go/vnc2video/vnc2video-1.0.1.ebuild b/dev-go/vnc2video/vnc2video-1.0.1.ebuild
new file mode 100644
index 0000000..6f723c9
--- /dev/null
+++ b/dev-go/vnc2video/vnc2video-1.0.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2.
+
+EAPI=7
+
+CROS_GO_SOURCE="github.com/matts1/vnc2video v${PV}"
+
+CROS_GO_PACKAGES=(
+	"github.com/matts1/vnc2video"
+	"github.com/matts1/vnc2video/encoders"
+	"github.com/matts1/vnc2video/logger"
+)
+
+inherit cros-go
+
+DESCRIPTION="A fork of vnc2video allowing lazy encoding of video."
+HOMEPAGE="https://github.com/matts1/vnc2video"
+SRC_URI="$(cros-go_src_uri)"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+RESTRICT="binchecks strip"
+
+DEPEND=""
+RDEPEND=""
diff --git a/dev-lang/python/files/python-3.6.5-cross-sysconfig.patch b/dev-lang/python/files/python-3.6.5-cross-sysconfig.patch
index 41cd0f9..7ce1a43 100644
--- a/dev-lang/python/files/python-3.6.5-cross-sysconfig.patch
+++ b/dev-lang/python/files/python-3.6.5-cross-sysconfig.patch
@@ -1,7 +1,5 @@
-This is like python-2.7.10-cross-distutils.patch, but we update the sysconfig
-module instead of the distutils.sysconfig module.  Python ships two different
-modules with strong overlap in functionality.
-
+diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py
+index 941587b..fa0c0f0 100644
 --- a/Lib/sysconfig.py
 +++ b/Lib/sysconfig.py
 @@ -20,10 +20,10 @@ __all__ = [
@@ -34,15 +32,22 @@
          'include': '{userbase}/include/python{py_version_short}',
          'scripts': '{userbase}/bin',
          'data': '{userbase}',
-@@ -414,11 +414,29 @@ def _generate_posix_vars():
+@@ -414,11 +414,36 @@ def _generate_posix_vars():
      with open('pybuilddir.txt', 'w', encoding='ascii') as f:
          f.write(pybuilddir)
  
 +def _get_sysconfigdata_module():
-+    if '_PYTHON_PROJECT_BASE' not in os.environ and os.getenv('SYSROOT'):
++    sysroot = os.getenv('SYSROOT')
++    if '_PYTHON_PROJECT_BASE' not in os.environ and sysroot:
 +        lib_dir = get_path('platstdlib')
 +        import glob
-+        sysconfig_paths = glob.glob(os.path.join(lib_dir, f'_sysconfigdata_{sys.abiflags}_*.py'))
++
++        # If SYSROOT is defined in the environment use the sysconfigdata from
++        # the libdir of that sysroot's Python installation.
++        sysconfig_paths = glob.glob(
++            os.path.join(sysroot, os.path.relpath(lib_dir, '/'),
++                         f'_sysconfigdata_{sys.abiflags}_*.py'))
++
 +        if sysconfig_paths:
 +            import importlib.machinery
 +            import types
@@ -66,10 +71,14 @@
      build_time_vars = _temp.build_time_vars
      vars.update(build_time_vars)
  
-@@ -544,10 +562,14 @@ def get_config_vars(*args):
+@@ -544,10 +569,14 @@ def get_config_vars(*args):
              # sys.abiflags may not be defined on all platforms.
              _CONFIG_VARS['abiflags'] = ''
  
+-        if os.name == 'nt':
+-            _init_non_posix(_CONFIG_VARS)
+-        if os.name == 'posix':
+-            _init_posix(_CONFIG_VARS)
 +        libdir = None
 +        if '_PYTHON_PROJECT_BASE' not in os.environ and os.getenv('SYSROOT'):
 +            abi = os.getenv('ABI')
@@ -78,14 +87,10 @@
 +            libdir = '@@GENTOO_LIBDIR@@'
 +        _CONFIG_VARS['libdirname'] = libdir
 +
--        if os.name == 'nt':
--            _init_non_posix(_CONFIG_VARS)
--        if os.name == 'posix':
--            _init_posix(_CONFIG_VARS)
          # For backward compatibility, see issue19555
          SO = _CONFIG_VARS.get('EXT_SUFFIX')
          if SO is not None:
-@@ -600,6 +622,11 @@ def get_config_vars(*args):
+@@ -574,6 +603,11 @@ def get_config_vars(*args):
                  srcdir = os.path.dirname(get_makefile_filename())
          _CONFIG_VARS['srcdir'] = _safe_realpath(srcdir)
  
diff --git a/dev-lang/python/python-3.6.12-r4.ebuild b/dev-lang/python/python-3.6.12-r5.ebuild
similarity index 100%
rename from dev-lang/python/python-3.6.12-r4.ebuild
rename to dev-lang/python/python-3.6.12-r5.ebuild
diff --git a/dev-lang/rust-bootstrap/Manifest b/dev-lang/rust-bootstrap/Manifest
index c657174..ee825c1 100644
--- a/dev-lang/rust-bootstrap/Manifest
+++ b/dev-lang/rust-bootstrap/Manifest
@@ -1,9 +1,5 @@
 DIST mrustc-0.9.tar.gz 905308 BLAKE2B 4e8829bce1d6a26028a4d8fb8373988e41989aaef4bdd21b3fcca1aee6f72d301b510ae4458502fc1be06c35601362ac5e23aeedfd0c099dd0d5414015f55c2a SHA512 7cefc6c1a4a6757b1b6351332fa2a71ea1eda0060d2d884f9e821fb17856f3ac26bdba7bde13e2c18bba9e243e5a599316e148479c3384d7899bc5223e9d5589
-DIST rust-bootstrap-1.45.2.tbz2 446514184 BLAKE2B 3b2f39e7d7328b32ff05cd21b6c36368abc1fc68d4600fe59585a1a3c2129e97b178345287e85256a01910e3d275d7b86bd8bff8aa7be30cdb42770608c55de7 SHA512 0f523c9b2704ddd1cb161a54ea8bf7436da690013684dd7a0bf164cfbad19c942540b90f936682038d8d96065afe68838279803ce75a76c85e0b26c5fd392cfd
-DIST rust-bootstrap-1.46.0.tbz2 262950544 BLAKE2B 65d408d9cc206b04e0a72518f58be522eda2bf9527ba22a9acb1978c38fc572dacae8454a05df12d966f140874044bd7f30e7803e9a718df0050f67c6e5804f7 SHA512 78b1171e197d23c8ba7710aefc2420a91c79cf1c2b7ae27b5fe111a44829a899e8d8cc2c4ca203ce8340f1cf7f1b010249096390ac203d8253ae9ceff41f5db0
-DIST rust-bootstrap-1.47.0.tbz2 300446602 BLAKE2B 25f792d884ecdc6be89dff6a12d88c84d2b666bedab4f59ef315744be628d6e4ccfc549e4e40cba9dc5398d8cde9ba0ac37f96d5f255de1bdd0151450f904938 SHA512 11092d168c43210f3f86f24ea608974c04cca78c826cfd0ca0977d4fe783cb6955b77bcd370dab9714fe4a35b8ad6edad6eba6f024729a5d95c04c5b611dd505
-DIST rust-bootstrap-1.48.0.tbz2 266136479 BLAKE2B 6c75bf687d4c6d0080b3eae3477e76bc4256b606bd948006846758f364bc4e2aae7c71d5074ce49f0e858b91d1e57d011574bebf79e2886ddc3d8dad29e44052 SHA512 53218efc62cfc73a8e84a24d66fb67c5c8fcfd2f49b0fef28a8145088c567fe2785030899e5d30531b1065ce28dd7368af85608cc6bd0e1f48d1a81f18cf6a7a
-DIST rust-bootstrap-1.49.0.tbz2 269994249 BLAKE2B e4cef89fc83f4547284c5519a8a86d925827b09edb13b4324ae361577df6411e6f230259105560496dab732ddc33314adb6d4ec9b2e997f7fa0b8da327734090 SHA512 71a0de177ca852070e3f652e1ef87e44d2cde272dae3bcd9d8a733a53b4900c6731eb62d9136bd1c010aa06c30eddf2bb61fa4c2c088ba1c61db0c3c227583ed
+DIST rust-bootstrap-1.53.0.tbz2 280035868 BLAKE2B 842e74929069062111807ef156bdc04cbb6a1b2e673407bc15e85abe3e958c1ac95082ed4582665ccca6b531ce378d57c032e621add980b301f9626455a1f953 SHA512 06f730b0a4f21d6ff006ae39cce1735fd9fb316a1dbaf5e9056e66fc5dd0e5ff62b48cd7cb853f23e2a76a457c15a184f1007dc4d4a6d353b48aae7442abc98c
 DIST rustc-1.29.0-src.tar.gz 106092915 BLAKE2B 520bbbc49b130229e24a130cb7626184c9c06dfa07b50366d602e76e0005db2f996e7fc0da23de19e67783286caffaf4cb4ef830179f8e42efda1fed1542b248 SHA512 3c6b79cce5a42553bc4360591c6e6b42b36f035243b8cb688a0d4b08c10793e59d257bf9e781c9345c92f765a63a9e161e3e3346f02ddc733e4b401cb5aeb302
 DIST rustc-1.30.0-src.tar.gz 149490609 BLAKE2B 7b9403e40573b7bef82b850ed63a80fb75fed8839761de6da3a518584d2175ec681fb22b47b9a4bcd6fb7069c75e21821fc8fe1e9458f9e5c25ed7a56a553517 SHA512 a4737727818397a26974449e9e7ddc09ae7430a08102ae05729317b19675fa89ad82a8f5bc5b7c913d894866a30dfe3c539c80e29c2b0ade6ecde06db8216981
 DIST rustc-1.31.1-src.tar.gz 151163848 BLAKE2B 4d5712a4c85b49167577ecf5191792d9f437780c2c5dfecdb2582c5e49cfec8f6e6a92664e96a7fd552003eec9c2d6a9042ca1d17d9ba7dd00c6f5bfd74098a0 SHA512 76ca238c40694abab4982f4b788a0da34bbb3d8a6e4adb50b0b9138876407ac2cb4fc39cde057b8fa32729c543c5977d392167e96b82f76a01af31eaafe463cf
@@ -26,3 +22,7 @@
 DIST rustc-1.48.0-src.tar.gz 154487032 BLAKE2B 64a40068036516c887daabf75c31ca6fbca214c5e5b77cc9eb9b5242337309679906e2c8a3b06e52afb5a6df7b1670bc8c6b9e79f9239564131124cf3fe53596 SHA512 e28e5f0813cfd94fb92399a2d64aa19bdf0933b5fc768ea10da2a5b787c94bac6a5efb98b2c3702da3d1c46c6766b157df3727e5845b4b83a237b44ec45b27ba
 DIST rustc-1.49.0-src.tar.gz 157809463 BLAKE2B 85095e26455b54d6d542d4a460ff0acae0e09007fc7493f58a5abe0d98fab9361f41bfb2fad4bc6d3d4365852ab30d93adb31ed1799257baf57440299f22f455 SHA512 033aa9fb9b9a79055ee075c33c27ae40defe7430972057a6477829070b5f54f8fc5082d36f5c751a2fb4cdfcf0d83db7b879dee15a8c4229b517295d6b7b6896
 DIST rustc-1.50.0-src.tar.gz 159542148 BLAKE2B 76d4fd31643d996931b9b387a258bb47799910f448d099f43590e5c3f87be8ddff4752b4a2323e7ac7bf9c3210cddbc2190482ad5f0ece5a1ad28a941dedcc80 SHA512 30a8a64379427901fe9a23044897456f26e7f7ab146400464feeb663aeff7539c98d78ecbd6a446535a86c8740a6ece9edf19807dc28795b832a988722fe7990
+DIST rustc-1.51.0-src.tar.gz 160954811 BLAKE2B 062ae11bedac9aa0d242546c829e4e6704fb99a9fdf72d1a1890893e180f970443870ab945946d2a804a3677dfcc6a110af2fecba76a8025bcdffd0740f58ee8 SHA512 694189c7d48537b29fdf39e1b4cac58166c72d8e5adef59da788a5a49ac803ef4c1648b3e36bc9834305240a3a394bef052fc3388ea9b7de46d3e5c7342aefe7
+DIST rustc-1.52.0-src.tar.gz 168168177 BLAKE2B a0cf0775ec760c888313ebe4de219a962b00c3c2f43ba3d7362a3a98a341cb55d946a970388ed1393ebda3d4afe43a35e889a1955a0e3ab82f76d4e6467d55b9 SHA512 7b5ed5ee362cae782fd9518f09d58d6d70ec6b80eb04c625047731ac9410b039d0f3fbe8930fec697bd8683bd90a354df2e7b86aa08609bd2c5050ed3beb96ec
+DIST rustc-1.53.0-src.tar.gz 167881972 BLAKE2B 1fab8c3a72bc54655cb3536b78f33b1646a4072c786c5121da83f71cd71fd59d6ea9ed88998336b5115d1314bad8bacd666f62941798d2e03d799313fa6350e4 SHA512 d7c1e30e6235d66187b8044c7ce120686b19c9caccf40f8204ce7b980efb0d0efb9c6775f468d181f51604d4ae7e872a24d1d720524cf243eedcadd459169877
+DIST rustc-1.54.0-src.tar.gz 170480637 BLAKE2B 71a9556b88f7d382c5707055e59df8772b85d0266be705c4963b0926d417fa24bcfb34d1c83f54c1d30dd697163d6ada61f3863d2901a78033b64ae0562d25a1 SHA512 f6a1d925e233ef40351193e5507d74b1aed13ce516679558c246e6b6955a6ef393d7e61e6c51a0c5696a7e40a9dcee026bea938b954f5ea5394854cc3ca67f90
diff --git a/dev-lang/rust-bootstrap/OWNERS b/dev-lang/rust-bootstrap/OWNERS
deleted file mode 120000
index d6925ae..0000000
--- a/dev-lang/rust-bootstrap/OWNERS
+++ /dev/null
@@ -1 +0,0 @@
-../rust/OWNERS
\ No newline at end of file
diff --git a/dev-lang/rust-bootstrap/OWNERS b/dev-lang/rust-bootstrap/OWNERS
new file mode 100644
index 0000000..4f007df
--- /dev/null
+++ b/dev-lang/rust-bootstrap/OWNERS
@@ -0,0 +1 @@
+include /dev-lang/rust/OWNERS
diff --git a/dev-lang/rust-bootstrap/rust-bootstrap-1.46.0.ebuild b/dev-lang/rust-bootstrap/rust-bootstrap-1.46.0.ebuild
deleted file mode 100644
index 5fae2bd..0000000
--- a/dev-lang/rust-bootstrap/rust-bootstrap-1.46.0.ebuild
+++ /dev/null
@@ -1,236 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# Bootstraps rustc (the official Rust compiler) using mrustc (a Rust
-# compiler written in C++).
-#
-# The version of this ebuild reflects the version of rustc that will
-# ultimately be installed.
-#
-# This ebuild can be used in two modes, controlled by the fullbootstrap
-# USE flag:
-#
-# fullbootstrap: Build everything from source. This can take over
-#   10 hours.
-#
-# -fullbootstrap: Start with a prebuilt from an earlier rust-bootstrap
-#   and build only versions after that from source.
-#
-# The default is -fullbootstrap, so that you only get the 10+ hour build
-# time if you explicitly request it.
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="Bootstraps the rustc Rust compiler using mrustc"
-HOMEPAGE="https://github.com/thepowersgang/mrustc"
-MRUSTC_VERSION="0.9"
-MRUSTC_NAME="mrustc-${MRUSTC_VERSION}"
-
-SLOT="0"
-KEYWORDS="*"
-IUSE="-fullbootstrap"
-
-INITIAL_RUSTC_VERSION="1.29.0"
-# Versions of rustc to build after the initial one.
-RUSTC_FULL_BOOTSTRAP_SEQUENCE=(
-	1.30.0
-	1.31.1
-	1.32.0
-	1.33.0
-	1.34.2
-	1.35.0
-	1.36.0
-	1.37.0
-	1.38.0
-	1.39.0
-	1.40.0
-	1.41.1
-	1.42.0
-	1.43.1
-	1.44.1
-	1.45.2
-)
-# When not using fullbootstrap, use this version as a starting point.
-PREBUILT_VERSION="${RUSTC_FULL_BOOTSTRAP_SEQUENCE[-1]}"
-SRC_URI="gs://chromeos-localmirror/distfiles/rustc-${PV}-src.tar.gz
-	!fullbootstrap? ( gs://chromeos-localmirror/distfiles/rust-bootstrap-${PREBUILT_VERSION}.tbz2 )
-	fullbootstrap? ( gs://chromeos-localmirror/distfiles/${MRUSTC_NAME}.tar.gz )
-	fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-${INITIAL_RUSTC_VERSION}-src.tar.gz )"
-for version in "${RUSTC_FULL_BOOTSTRAP_SEQUENCE[@]}"; do
-	SRC_URI+=" fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-${version}-src.tar.gz )"
-done
-
-LICENSE="MIT Apache-2.0 BSD-1 BSD-2 BSD-4 UoI-NCSA"
-
-DEPEND="dev-libs/openssl
-	net-libs/libssh2"
-RDEPEND="${DEPEND}"
-
-# These tasks take a long time to run for not much benefit: Most of the files
-# they check are never installed. Those that are are only there to bootstrap
-# the rust ebuild, which has the same RESTRICT anyway.
-RESTRICT="binchecks strip"
-
-pkg_setup() {
-	if use fullbootstrap; then
-		RUSTC_VERSION_SEQUENCE=( "${RUSTC_FULL_BOOTSTRAP_SEQUENCE[@]}" )
-		PATCHES=(
-			"${FILESDIR}/${PN}-no-curl.patch"
-			"${FILESDIR}/${PN}-compilation-fixes.patch"
-			"${FILESDIR}/${PN}-8ddb05-invalid-output-constraint.patch"
-			"${FILESDIR}/${PN}-libgit2-sys-pkg-config.patch"
-			"${FILESDIR}/${PN}-cc.patch"
-			"${FILESDIR}/${PN}-printf.patch"
-			"${FILESDIR}/${PN}-libc++.patch"
-		)
-		S="${WORKDIR}/${MRUSTC_NAME}"
-	else
-		RUSTC_VERSION_SEQUENCE=( )
-		# We manually apply patches to rustcs in the version sequence,
-		# so that we can pass the necessary -p value. To prevent
-		# default from trying and failing to apply patches, we set
-		# PATCHES to empty.
-		PATCHES=( )
-		S="${WORKDIR}/rustc-${PV}-src"
-	fi
-	RUSTC_VERSION_SEQUENCE+=( ${PV} )
-}
-
-src_unpack() {
-	default
-	if use fullbootstrap; then
-		# Move rustc sources to where mrustc expects them.
-		mv "${WORKDIR}/rustc-${INITIAL_RUSTC_VERSION}-src" "${S}" || die
-	fi
-}
-
-src_prepare() {
-	# Call the default implementation. This applies PATCHES.
-	default
-
-	if use fullbootstrap; then
-
-		# The next few steps mirror what mrustc's Makefile does to configure the
-		# build for a specific rustc version.
-		(cd "rustc-${INITIAL_RUSTC_VERSION}-src" || die; eapply -p0 "${S}/rustc-${INITIAL_RUSTC_VERSION}-src.patch")
-		cd "${S}" || die
-		echo "${INITIAL_RUSTC_VERSION}" > "rust-version" || die
-		cp "rust-version" "rustc-${INITIAL_RUSTC_VERSION}-src/dl-version" || die
-	fi
-
-	# There are some patches that need to be applied to the rustc versions
-	# we build with rustc. Apply them here.
-	local version
-	for version in "${RUSTC_VERSION_SEQUENCE[@]}"; do
-		einfo "Patching rustc-${version}"
-		(cd "${WORKDIR}/rustc-${version}-src" || die; eapply -p2 "${FILESDIR}/${PN}-libc++.patch")
-	done
-}
-
-src_configure() {
-	# Avoid the default implementation, which overwrites vendored
-	# config.guess and config.sub files, which then causes checksum
-	# errors during the build, e.g.
-	# error: the listed checksum of `/var/tmp/portage/dev-lang/rust-bootstrap-1.46.0/work/rustc-1.46.0-src/vendor/backtrace-sys/src/libbacktrace/config.guess` has changed:
-	# expected: 12e217c83267f1ff4bad5d9b2b847032d91e89ec957deb34ec8cb5cef00eba1e
-	# actual:   312ea023101dc1de54aa8c50ed0e82cb9c47276316033475ea403cb86fe88ffe
-	# (The dev-lang/rust ebuilds in Chrome OS and Gentoo also have custom
-	# src_configure implementations.)
-	true
-}
-
-src_compile() {
-	# 1. Build initial rustc using mrustc
-	# -----------------------------------
-	#
-	# All of these specify:
-	#  - CC and CXX so that we build with Clang instead of a GCC version that defaults to pre-C99 C.
-	#  - LLVM_TARGETS, else it will be empty and rustc will not work.
-	#  - RUSTC_VERSION because the Makefiles will otherwise set it to an incorrect value.
-	#  - OPENSSL_DIR so that cargo knows where to look for OpenSSL headers.
-	export CC=$(tc-getBUILD_CC)
-	export CXX=$(tc-getBUILD_CXX)
-	export PKG_CONFIG=$(tc-getBUILD_PKG_CONFIG)
-	export OPENSSL_DIR="${ESYSROOT}/usr"
-	# Only actually build mrustc when using fullbootstrap.
-	if use fullbootstrap; then
-		# Two separate commands, because invoking just the second command leads to race
-		# conditions.
-		emake LLVM_TARGETS=X86 RUSTC_VERSION=${INITIAL_RUSTC_VERSION} output/rustc output/cargo
-		emake LLVM_TARGETS=X86 RUSTC_VERSION=${INITIAL_RUSTC_VERSION} -C run_rustc
-	fi
-
-	# 2. Build successive versions of rustc using previous rustc
-	# ----------------------------------------------------------
-	if use fullbootstrap; then
-		local prev_version=${INITIAL_RUSTC_VERSION}
-		local prev_cargo="${S}/run_rustc/output/prefix/bin/cargo"
-		local prev_rustc="${S}/run_rustc/output/prefix/bin/rustc"
-	else
-		local prev_version=${PREBUILT_VERSION}
-		local prev_cargo="${WORKDIR}/opt/rust-bootstrap-${PREBUILT_VERSION}/bin/cargo"
-		local prev_rustc="${WORKDIR}/opt/rust-bootstrap-${PREBUILT_VERSION}/bin/rustc"
-	fi
-	local next_version rustc_dir
-	for next_version in "${RUSTC_VERSION_SEQUENCE[@]}"; do
-		einfo "Building rustc-${next_version} using rustc-${prev_version}"
-		rustc_dir="${WORKDIR}/rustc-${next_version}-src"
-		cd "${rustc_dir}" || die "Could not chdir to ${rustc_dir}"
-		cat > config.toml <<EOF
-[build]
-cargo = "${prev_cargo}"
-rustc = "${prev_rustc}"
-docs = false
-vendor = true
-# extended means we also build cargo and a few other commands.
-extended = true
-
-[install]
-prefix = "${ED}/opt/rust-bootstrap-${next_version}"
-
-[rust]
-default-linker = "${CC}"
-
-[target.x86_64-unknown-linux-gnu]
-cc = "${CC}"
-cxx = "${CXX}"
-linker = "${CC}"
-EOF
-
-		# --stage 2 causes this to use the previously-built compiler,
-		# instead of the default behavior of downloading one from
-		# upstream.
-		./x.py --stage 2 build || die
-		# For some rustc versions (e.g. 1.31.1), the build script will exit with
-		# a nonzero exit status because miri fails to build when it is not in a git
-		# repository. This does not affect the ability to build the next rustc.
-		# So instead of looking at the exit code, we check if rustc and cargo
-		# were built.
-		prev_version=${next_version}
-		prev_cargo="${rustc_dir}/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/cargo"
-		prev_rustc="${rustc_dir}/build/x86_64-unknown-linux-gnu/stage2/bin/rustc"
-		[[ -x "${prev_rustc}" ]] || die "Failed to build ${prev_rustc}"
-		[[ -x "${prev_cargo}" ]] || die "Failed to build ${prev_cargo}"
-		einfo "Built rustc-${next_version}"
-	done
-
-	# Remove the src/rust symlink which will be dangling after sources are
-	# removed, and the containing src directory.
-	rm "${WORKDIR}/rustc-${PV}-src/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/src/rust" || die
-	rmdir "${WORKDIR}/rustc-${PV}-src/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/src" || die
-}
-
-src_install() {
-	local obj="${WORKDIR}/rustc-${PV}-src/build/x86_64-unknown-linux-gnu/stage2"
-	local tools="${obj}-tools/x86_64-unknown-linux-gnu/release/"
-	exeinto "/opt/${P}/bin"
-	# With rustc-1.45.2 at least, regardless of the value of install.libdir,
-	# the rpath seems to end up as $ORIGIN/../lib. So install the libraries there.
-	insinto "/opt/${P}/lib"
-	doexe "${obj}/bin/rustc"
-	doexe "${tools}/cargo"
-	doins -r "${obj}/lib/"*
-	find "${D}" -name '*.so' -exec chmod +x '{}' ';'
-}
diff --git a/dev-lang/rust-bootstrap/rust-bootstrap-1.50.0.ebuild b/dev-lang/rust-bootstrap/rust-bootstrap-1.50.0.ebuild
deleted file mode 100644
index 18eab22..0000000
--- a/dev-lang/rust-bootstrap/rust-bootstrap-1.50.0.ebuild
+++ /dev/null
@@ -1,254 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# Bootstraps rustc (the official Rust compiler) using mrustc (a Rust
-# compiler written in C++).
-#
-# The version of this ebuild reflects the version of rustc that will
-# ultimately be installed.
-#
-# This ebuild can be used in two modes, controlled by the fullbootstrap
-# USE flag:
-#
-# fullbootstrap: Build everything from source. This can take over
-#   10 hours.
-#
-# -fullbootstrap: Start with a prebuilt from an earlier rust-bootstrap
-#   and build only versions after that from source.
-#
-# The default is -fullbootstrap, so that you only get the 10+ hour build
-# time if you explicitly request it.
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="Bootstraps the rustc Rust compiler using mrustc"
-HOMEPAGE="https://github.com/thepowersgang/mrustc"
-MRUSTC_VERSION="0.9"
-MRUSTC_NAME="mrustc-${MRUSTC_VERSION}"
-
-SLOT="${PV}"
-KEYWORDS="*"
-IUSE="-fullbootstrap"
-
-INITIAL_RUSTC_VERSION="1.29.0"
-# Versions of rustc to build after the initial one.
-RUSTC_RAW_FULL_BOOTSTRAP_SEQUENCE=(
-	1.30.0
-	1.31.1
-	1.32.0
-	1.33.0
-	1.34.2
-	1.35.0
-	1.36.0
-	1.37.0
-	1.38.0
-	1.39.0
-	1.40.0
-	1.41.1
-	1.42.0
-	1.43.1
-	1.44.1
-	1.45.2
-	1.46.0
-	1.47.0
-	1.48.0
-	1.49.0
-)
-
-RUSTC_FULL_BOOTSTRAP_SEQUENCE=()
-
-for version in "${RUSTC_RAW_FULL_BOOTSTRAP_SEQUENCE[@]}"; do
-	if [[ ! "${PV}" > "${version}" ]]; then
-		break
-	fi
-	RUSTC_FULL_BOOTSTRAP_SEQUENCE+=( "${version}" )
-done
-
-# When not using fullbootstrap, use this version as a starting point.
-PREBUILT_VERSION="${RUSTC_FULL_BOOTSTRAP_SEQUENCE[-1]}"
-SRC_URI="gs://chromeos-localmirror/distfiles/rustc-${PV}-src.tar.gz
-	!fullbootstrap? ( gs://chromeos-localmirror/distfiles/rust-bootstrap-${PREBUILT_VERSION}.tbz2 )
-	fullbootstrap? ( gs://chromeos-localmirror/distfiles/${MRUSTC_NAME}.tar.gz )
-	fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-${INITIAL_RUSTC_VERSION}-src.tar.gz )"
-for version in "${RUSTC_FULL_BOOTSTRAP_SEQUENCE[@]}"; do
-	SRC_URI+=" fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-${version}-src.tar.gz )"
-done
-
-LICENSE="MIT Apache-2.0 BSD-1 BSD-2 BSD-4 UoI-NCSA"
-
-DEPEND="dev-libs/openssl
-	net-libs/libssh2"
-RDEPEND="${DEPEND}"
-
-# These tasks take a long time to run for not much benefit: Most of the files
-# they check are never installed. Those that are are only there to bootstrap
-# the rust ebuild, which has the same RESTRICT anyway.
-RESTRICT="binchecks strip"
-
-pkg_setup() {
-	if use fullbootstrap; then
-		RUSTC_VERSION_SEQUENCE=( "${RUSTC_FULL_BOOTSTRAP_SEQUENCE[@]}" )
-		PATCHES=(
-			"${FILESDIR}/${PN}-no-curl.patch"
-			"${FILESDIR}/${PN}-compilation-fixes.patch"
-			"${FILESDIR}/${PN}-8ddb05-invalid-output-constraint.patch"
-			"${FILESDIR}/${PN}-libgit2-sys-pkg-config.patch"
-			"${FILESDIR}/${PN}-cc.patch"
-			"${FILESDIR}/${PN}-printf.patch"
-			"${FILESDIR}/${PN}-1.48.0-libc++.patch"
-		)
-		S="${WORKDIR}/${MRUSTC_NAME}"
-	else
-		RUSTC_VERSION_SEQUENCE=( )
-		# We manually apply patches to rustcs in the version sequence,
-		# so that we can pass the necessary -p value. To prevent
-		# default from trying and failing to apply patches, we set
-		# PATCHES to empty.
-		PATCHES=( )
-		S="${WORKDIR}/rustc-${PV}-src"
-	fi
-	RUSTC_VERSION_SEQUENCE+=( ${PV} )
-}
-
-src_unpack() {
-	default
-	if use fullbootstrap; then
-		# Move rustc sources to where mrustc expects them.
-		mv "${WORKDIR}/rustc-${INITIAL_RUSTC_VERSION}-src" "${S}" || die
-	fi
-}
-
-src_prepare() {
-	# Call the default implementation. This applies PATCHES.
-	default
-
-	if use fullbootstrap; then
-
-		# The next few steps mirror what mrustc's Makefile does to configure the
-		# build for a specific rustc version.
-		(cd "rustc-${INITIAL_RUSTC_VERSION}-src" || die; eapply -p0 "${S}/rustc-${INITIAL_RUSTC_VERSION}-src.patch")
-		cd "${S}" || die
-		echo "${INITIAL_RUSTC_VERSION}" > "rust-version" || die
-		cp "rust-version" "rustc-${INITIAL_RUSTC_VERSION}-src/dl-version" || die
-	fi
-
-	# There are some patches that need to be applied to the rustc versions
-	# we build with rustc. Apply them here.
-	local version
-	for version in "${RUSTC_VERSION_SEQUENCE[@]}"; do
-		einfo "Patching rustc-${version}"
-		local libc_patch="${FILESDIR}/${PN}-1.48.0-libc++.patch"
-		if [[ "${version}" < "1.48.0" ]]; then
-			libc_patch="${FILESDIR}/${PN}-libc++.patch"
-		fi
-		(cd "${WORKDIR}/rustc-${version}-src" || die; eapply -p2 "${libc_patch}")
-	done
-}
-
-src_configure() {
-	# Avoid the default implementation, which overwrites vendored
-	# config.guess and config.sub files, which then causes checksum
-	# errors during the build, e.g.
-	# error: the listed checksum of `/var/tmp/portage/dev-lang/rust-bootstrap-1.46.0/work/rustc-1.46.0-src/vendor/backtrace-sys/src/libbacktrace/config.guess` has changed:
-	# expected: 12e217c83267f1ff4bad5d9b2b847032d91e89ec957deb34ec8cb5cef00eba1e
-	# actual:   312ea023101dc1de54aa8c50ed0e82cb9c47276316033475ea403cb86fe88ffe
-	# (The dev-lang/rust ebuilds in Chrome OS and Gentoo also have custom
-	# src_configure implementations.)
-	true
-}
-
-src_compile() {
-	# 1. Build initial rustc using mrustc
-	# -----------------------------------
-	#
-	# All of these specify:
-	#  - CC and CXX so that we build with Clang instead of a GCC version that defaults to pre-C99 C.
-	#  - LLVM_TARGETS, else it will be empty and rustc will not work.
-	#  - RUSTC_VERSION because the Makefiles will otherwise set it to an incorrect value.
-	#  - OPENSSL_DIR so that cargo knows where to look for OpenSSL headers.
-	export CC=$(tc-getBUILD_CC)
-	export CXX=$(tc-getBUILD_CXX)
-	export PKG_CONFIG=$(tc-getBUILD_PKG_CONFIG)
-	export OPENSSL_DIR="${ESYSROOT}/usr"
-	# Only actually build mrustc when using fullbootstrap.
-	if use fullbootstrap; then
-		# Two separate commands, because invoking just the second command leads to race
-		# conditions.
-		emake LLVM_TARGETS=X86 RUSTC_VERSION=${INITIAL_RUSTC_VERSION} output/rustc output/cargo
-		emake LLVM_TARGETS=X86 RUSTC_VERSION=${INITIAL_RUSTC_VERSION} -C run_rustc
-	fi
-
-	# 2. Build successive versions of rustc using previous rustc
-	# ----------------------------------------------------------
-	if use fullbootstrap; then
-		local prev_version=${INITIAL_RUSTC_VERSION}
-		local prev_cargo="${S}/run_rustc/output/prefix/bin/cargo"
-		local prev_rustc="${S}/run_rustc/output/prefix/bin/rustc"
-	else
-		local prev_version=${PREBUILT_VERSION}
-		local prev_cargo="${WORKDIR}/opt/rust-bootstrap-${PREBUILT_VERSION}/bin/cargo"
-		local prev_rustc="${WORKDIR}/opt/rust-bootstrap-${PREBUILT_VERSION}/bin/rustc"
-	fi
-	local next_version rustc_dir
-	for next_version in "${RUSTC_VERSION_SEQUENCE[@]}"; do
-		einfo "Building rustc-${next_version} using rustc-${prev_version}"
-		rustc_dir="${WORKDIR}/rustc-${next_version}-src"
-		cd "${rustc_dir}" || die "Could not chdir to ${rustc_dir}"
-		cat > config.toml <<EOF
-[build]
-cargo = "${prev_cargo}"
-rustc = "${prev_rustc}"
-docs = false
-vendor = true
-# extended means we also build cargo and a few other commands.
-extended = true
-
-[install]
-prefix = "${ED}/opt/rust-bootstrap-${next_version}"
-
-[rust]
-default-linker = "${CC}"
-
-[target.x86_64-unknown-linux-gnu]
-cc = "${CC}"
-cxx = "${CXX}"
-linker = "${CC}"
-EOF
-
-		# --stage 2 causes this to use the previously-built compiler,
-		# instead of the default behavior of downloading one from
-		# upstream.
-		./x.py --stage 2 build || die
-		# For some rustc versions (e.g. 1.31.1), the build script will exit with
-		# a nonzero exit status because miri fails to build when it is not in a git
-		# repository. This does not affect the ability to build the next rustc.
-		# So instead of looking at the exit code, we check if rustc and cargo
-		# were built.
-		prev_version=${next_version}
-		prev_cargo="${rustc_dir}/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/cargo"
-		prev_rustc="${rustc_dir}/build/x86_64-unknown-linux-gnu/stage2/bin/rustc"
-		[[ -x "${prev_rustc}" ]] || die "Failed to build ${prev_rustc}"
-		[[ -x "${prev_cargo}" ]] || die "Failed to build ${prev_cargo}"
-		einfo "Built rustc-${next_version}"
-	done
-
-	# Remove the src/rust symlink which will be dangling after sources are
-	# removed, and the containing src directory.
-	rm "${WORKDIR}/rustc-${PV}-src/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/src/rust" || die
-	rmdir "${WORKDIR}/rustc-${PV}-src/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/src" || die
-}
-
-src_install() {
-	local obj="${WORKDIR}/rustc-${PV}-src/build/x86_64-unknown-linux-gnu/stage2"
-	local tools="${obj}-tools/x86_64-unknown-linux-gnu/release/"
-	exeinto "/opt/${P}/bin"
-	# With rustc-1.45.2 at least, regardless of the value of install.libdir,
-	# the rpath seems to end up as $ORIGIN/../lib. So install the libraries there.
-	insinto "/opt/${P}/lib"
-	doexe "${obj}/bin/rustc"
-	doexe "${tools}/cargo"
-	doins -r "${obj}/lib/"*
-	find "${D}" -name '*.so' -exec chmod +x '{}' ';'
-}
diff --git a/dev-lang/rust-bootstrap/rust-bootstrap-1.54.0.ebuild b/dev-lang/rust-bootstrap/rust-bootstrap-1.54.0.ebuild
new file mode 100644
index 0000000..a28f316
--- /dev/null
+++ b/dev-lang/rust-bootstrap/rust-bootstrap-1.54.0.ebuild
@@ -0,0 +1,267 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+# Bootstraps rustc (the official Rust compiler) using mrustc (a Rust
+# compiler written in C++).
+#
+# The version of this ebuild reflects the version of rustc that will
+# ultimately be installed.
+#
+# This ebuild can be used in two modes, controlled by the fullbootstrap
+# USE flag:
+#
+# fullbootstrap: Build everything from source. This can take over
+#   10 hours.
+#
+# -fullbootstrap: Start with a prebuilt from an earlier rust-bootstrap
+#   and build only versions after that from source.
+#
+# The default is -fullbootstrap, so that you only get the 10+ hour build
+# time if you explicitly request it.
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="Bootstraps the rustc Rust compiler using mrustc"
+HOMEPAGE="https://github.com/thepowersgang/mrustc"
+MRUSTC_VERSION="0.9"
+MRUSTC_NAME="mrustc-${MRUSTC_VERSION}"
+
+SLOT="${PV}"
+KEYWORDS="*"
+IUSE="-fullbootstrap"
+
+INITIAL_RUSTC_VERSION="1.29.0"
+# Versions of rustc to build after the initial one.
+RUSTC_RAW_FULL_BOOTSTRAP_SEQUENCE=(
+	1.30.0
+	1.31.1
+	1.32.0
+	1.33.0
+	1.34.2
+	1.35.0
+	1.36.0
+	1.37.0
+	1.38.0
+	1.39.0
+	1.40.0
+	1.41.1
+	1.42.0
+	1.43.1
+	1.44.1
+	1.45.2
+	1.46.0
+	1.47.0
+	1.48.0
+	1.49.0
+	1.50.0
+	1.51.0
+	1.52.0
+	1.53.0
+)
+
+RUSTC_FULL_BOOTSTRAP_SEQUENCE=()
+
+for version in "${RUSTC_RAW_FULL_BOOTSTRAP_SEQUENCE[@]}"; do
+	if [[ ! "${PV}" > "${version}" ]]; then
+		break
+	fi
+	RUSTC_FULL_BOOTSTRAP_SEQUENCE+=( "${version}" )
+done
+
+# When not using fullbootstrap, use this version as a starting point.
+PREBUILT_VERSION="${RUSTC_FULL_BOOTSTRAP_SEQUENCE[-1]}"
+SRC_URI="gs://chromeos-localmirror/distfiles/rustc-${PV}-src.tar.gz
+	!fullbootstrap? ( gs://chromeos-localmirror/distfiles/rust-bootstrap-${PREBUILT_VERSION}.tbz2 )
+	fullbootstrap? ( gs://chromeos-localmirror/distfiles/${MRUSTC_NAME}.tar.gz )
+	fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-${INITIAL_RUSTC_VERSION}-src.tar.gz )"
+for version in "${RUSTC_FULL_BOOTSTRAP_SEQUENCE[@]}"; do
+	SRC_URI+=" fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-${version}-src.tar.gz )"
+done
+
+LICENSE="MIT Apache-2.0 BSD-1 BSD-2 BSD-4 UoI-NCSA"
+
+DEPEND="dev-libs/openssl
+	net-libs/libssh2"
+RDEPEND="${DEPEND}"
+
+# These tasks take a long time to run for not much benefit: Most of the files
+# they check are never installed. Those that are are only there to bootstrap
+# the rust ebuild, which has the same RESTRICT anyway.
+RESTRICT="binchecks strip"
+
+pkg_setup() {
+	if use fullbootstrap; then
+		RUSTC_VERSION_SEQUENCE=( "${RUSTC_FULL_BOOTSTRAP_SEQUENCE[@]}" )
+		PATCHES=(
+			"${FILESDIR}/${PN}-no-curl.patch"
+			"${FILESDIR}/${PN}-compilation-fixes.patch"
+			"${FILESDIR}/${PN}-8ddb05-invalid-output-constraint.patch"
+			"${FILESDIR}/${PN}-libgit2-sys-pkg-config.patch"
+			"${FILESDIR}/${PN}-cc.patch"
+			"${FILESDIR}/${PN}-printf.patch"
+			"${FILESDIR}/${PN}-1.48.0-libc++.patch"
+		)
+		S="${WORKDIR}/${MRUSTC_NAME}"
+	else
+		RUSTC_VERSION_SEQUENCE=( )
+		# We manually apply patches to rustcs in the version sequence,
+		# so that we can pass the necessary -p value. To prevent
+		# default from trying and failing to apply patches, we set
+		# PATCHES to empty.
+		PATCHES=( )
+		S="${WORKDIR}/rustc-${PV}-src"
+	fi
+	RUSTC_VERSION_SEQUENCE+=( ${PV} )
+}
+
+src_unpack() {
+	default
+	if use fullbootstrap; then
+		# Move rustc sources to where mrustc expects them.
+		mv "${WORKDIR}/rustc-${INITIAL_RUSTC_VERSION}-src" "${S}" || die
+	fi
+}
+
+src_prepare() {
+	# Call the default implementation. This applies PATCHES.
+	default
+
+	if use fullbootstrap; then
+
+		# The next few steps mirror what mrustc's Makefile does to configure the
+		# build for a specific rustc version.
+		(cd "rustc-${INITIAL_RUSTC_VERSION}-src" || die; eapply -p0 "${S}/rustc-${INITIAL_RUSTC_VERSION}-src.patch")
+		cd "${S}" || die
+		echo "${INITIAL_RUSTC_VERSION}" > "rust-version" || die
+		cp "rust-version" "rustc-${INITIAL_RUSTC_VERSION}-src/dl-version" || die
+	fi
+
+	# There are some patches that need to be applied to the rustc versions
+	# we build with rustc. Apply them here.
+	local version
+	for version in "${RUSTC_VERSION_SEQUENCE[@]}"; do
+		einfo "Patching rustc-${version}"
+		# The location of files we patch changed in 1.48.
+		# We have patches with no version number for versions
+		# before 1.48, and with version number for after.
+		local libc_patch="${FILESDIR}/${PN}-1.48.0-libc++.patch"
+		if [[ "${version}" < "1.48.0" ]]; then
+			libc_patch="${FILESDIR}/${PN}-libc++.patch"
+		fi
+		(cd "${WORKDIR}/rustc-${version}-src" || die; eapply -p2 "${libc_patch}")
+	done
+}
+
+src_configure() {
+	# Avoid the default implementation, which overwrites vendored
+	# config.guess and config.sub files, which then causes checksum
+	# errors during the build, e.g.
+	# error: the listed checksum of `/var/tmp/portage/dev-lang/rust-bootstrap-1.46.0/work/rustc-1.46.0-src/vendor/backtrace-sys/src/libbacktrace/config.guess` has changed:
+	# expected: 12e217c83267f1ff4bad5d9b2b847032d91e89ec957deb34ec8cb5cef00eba1e
+	# actual:   312ea023101dc1de54aa8c50ed0e82cb9c47276316033475ea403cb86fe88ffe
+	# (The dev-lang/rust ebuilds in Chrome OS and Gentoo also have custom
+	# src_configure implementations.)
+	true
+}
+
+src_compile() {
+	# 1. Build initial rustc using mrustc
+	# -----------------------------------
+	#
+	# All of these specify:
+	#  - CC and CXX so that we build with Clang instead of a GCC version that defaults to pre-C99 C.
+	#  - LLVM_TARGETS, else it will be empty and rustc will not work.
+	#  - RUSTC_VERSION because the Makefiles will otherwise set it to an incorrect value.
+	#  - OPENSSL_DIR so that cargo knows where to look for OpenSSL headers.
+	export CC=$(tc-getBUILD_CC)
+	export CXX=$(tc-getBUILD_CXX)
+	export PKG_CONFIG=$(tc-getBUILD_PKG_CONFIG)
+	export OPENSSL_DIR="${ESYSROOT}/usr"
+	# Only actually build mrustc when using fullbootstrap.
+	if use fullbootstrap; then
+		# Two separate commands, because invoking just the second command leads to race
+		# conditions.
+		emake LLVM_TARGETS=X86 RUSTC_VERSION=${INITIAL_RUSTC_VERSION} output/rustc output/cargo
+		emake LLVM_TARGETS=X86 RUSTC_VERSION=${INITIAL_RUSTC_VERSION} -C run_rustc
+	fi
+
+	# 2. Build successive versions of rustc using previous rustc
+	# ----------------------------------------------------------
+	if use fullbootstrap; then
+		local prev_version=${INITIAL_RUSTC_VERSION}
+		local prev_cargo="${S}/run_rustc/output/prefix/bin/cargo"
+		local prev_rustc="${S}/run_rustc/output/prefix/bin/rustc"
+	else
+		local prev_version=${PREBUILT_VERSION}
+		local prev_cargo="${WORKDIR}/opt/rust-bootstrap-${PREBUILT_VERSION}/bin/cargo"
+		local prev_rustc="${WORKDIR}/opt/rust-bootstrap-${PREBUILT_VERSION}/bin/rustc"
+	fi
+	local next_version rustc_dir
+	for next_version in "${RUSTC_VERSION_SEQUENCE[@]}"; do
+		einfo "Building rustc-${next_version} using rustc-${prev_version}"
+		rustc_dir="${WORKDIR}/rustc-${next_version}-src"
+		cd "${rustc_dir}" || die "Could not chdir to ${rustc_dir}"
+		cat > config.toml <<EOF
+[build]
+cargo = "${prev_cargo}"
+rustc = "${prev_rustc}"
+docs = false
+vendor = true
+# extended means we also build cargo and a few other commands.
+extended = true
+# For rust-bootstrap, we need only cargo.
+tools = [ "cargo" ]
+
+[install]
+prefix = "${ED}/opt/rust-bootstrap-${next_version}"
+
+[rust]
+default-linker = "${CC}"
+
+[llvm]
+# For rust-bootstrap, we only need x86_64, which LLVM calls X86.
+targets = "X86"
+
+[target.x86_64-unknown-linux-gnu]
+cc = "${CC}"
+cxx = "${CXX}"
+linker = "${CC}"
+EOF
+
+		# --stage 2 causes this to use the previously-built compiler,
+		# instead of the default behavior of downloading one from
+		# upstream.
+		./x.py --stage 2 build || die
+		# For some rustc versions (e.g. 1.31.1), the build script will exit with
+		# a nonzero exit status because miri fails to build when it is not in a git
+		# repository. This does not affect the ability to build the next rustc.
+		# So instead of looking at the exit code, we check if rustc and cargo
+		# were built.
+		prev_version=${next_version}
+		prev_cargo="${rustc_dir}/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/cargo"
+		prev_rustc="${rustc_dir}/build/x86_64-unknown-linux-gnu/stage2/bin/rustc"
+		[[ -x "${prev_rustc}" ]] || die "Failed to build ${prev_rustc}"
+		[[ -x "${prev_cargo}" ]] || die "Failed to build ${prev_cargo}"
+		einfo "Built rustc-${next_version}"
+	done
+
+	# Remove the src/rust symlink which will be dangling after sources are
+	# removed, and the containing src directory.
+	rm "${WORKDIR}/rustc-${PV}-src/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/src/rust" || die
+	rmdir "${WORKDIR}/rustc-${PV}-src/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/src" || die
+}
+
+src_install() {
+	local obj="${WORKDIR}/rustc-${PV}-src/build/x86_64-unknown-linux-gnu/stage2"
+	local tools="${obj}-tools/x86_64-unknown-linux-gnu/release/"
+	exeinto "/opt/${P}/bin"
+	# With rustc-1.45.2 at least, regardless of the value of install.libdir,
+	# the rpath seems to end up as $ORIGIN/../lib. So install the libraries there.
+	insinto "/opt/${P}/lib"
+	doexe "${obj}/bin/rustc"
+	doexe "${tools}/cargo"
+	doins -r "${obj}/lib/"*
+	find "${D}" -name '*.so' -exec chmod +x '{}' ';'
+}
diff --git a/dev-lang/rust/Manifest b/dev-lang/rust/Manifest
index 68c58cb..159cea6 100644
--- a/dev-lang/rust/Manifest
+++ b/dev-lang/rust/Manifest
@@ -1,2 +1 @@
-DIST rustc-1.47.0-src.tar.gz 151861620 BLAKE2B 8fef2e63ac98b44f4a74ad68c7225851d7f382aca573f9e0cab89131eea38c1f1b38c8cc267856cd2fe401621af8f7cc53fa24281365a535b0d70b32463adcb0 SHA512 a6df9e2d599806eeddbfb35f7dea976781533f63d369a765b8a304221281c9f9e642ff952978f69eaaa0b28740ab5ea566b35ce481097c37fd5117bfec1f43dd
-DIST rustc-1.51.0-src.tar.gz 160954811 BLAKE2B 062ae11bedac9aa0d242546c829e4e6704fb99a9fdf72d1a1890893e180f970443870ab945946d2a804a3677dfcc6a110af2fecba76a8025bcdffd0740f58ee8 SHA512 694189c7d48537b29fdf39e1b4cac58166c72d8e5adef59da788a5a49ac803ef4c1648b3e36bc9834305240a3a394bef052fc3388ea9b7de46d3e5c7342aefe7
+DIST rustc-1.55.0-src.tar.gz 171660847 BLAKE2B 8acadb26f4a105f754044eaff76478222c61e6f2f7e0e9012dc33b58a0e7197a2ef47dfa515b23cc8c960a2a60a729ac0de8d60bdd42d5e64df9623b7910c835 SHA512 c3f072e0504002543d47efd56d40132ea96d81133a92e6cf6ac0b04e46652d6084ee3a514d0198cecd807753ecdf100281cec2d92407f098079ed01ebeb48dc6
diff --git a/dev-lang/rust/files/rust-1.47.0-Handle-sparse-git-repo-without-erroring.patch b/dev-lang/rust/files/rust-1.47.0-Handle-sparse-git-repo-without-erroring.patch
deleted file mode 100644
index fe536c9..0000000
--- a/dev-lang/rust/files/rust-1.47.0-Handle-sparse-git-repo-without-erroring.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-Cherry-pick of https://github.com/rust-lang/cargo/pull/8775, so that
-cargo works with git worktrees.
-
-diff --git a/src/tools/cargo/src/cargo/sources/path.rs b/src/tools/cargo/src/cargo/sources/path.rs
-index 64b0f77ed..f7dcfee7b 100644
---- a/src/tools/cargo/src/cargo/sources/path.rs
-+++ b/src/tools/cargo/src/cargo/sources/path.rs
-@@ -191,12 +191,25 @@ impl<'cfg> PathSource<'cfg> {
-         let index = repo
-             .index()
-             .chain_err(|| format!("failed to open git index at {}", repo.path().display()))?;
--        let repo_root = repo.workdir().ok_or_else(|| {
--            anyhow::format_err!(
-+        let repo_root = if let Some(root) = repo.workdir() {
-+            root
-+        } else if !repo.is_bare() {
-+            // Sparse-checkouts (and possibly other git
-+            // configurations) make libgit2 confused but there's still
-+            // an actual non-bare repo here.
-+            if let Some(r) = repo.path().parent() {
-+                r
-+            } else {
-+                return Err(anyhow::format_err!(
-+                    "repo path missing .git subfolder even when non-bare",
-+                ));
-+            }
-+        } else {
-+            return Err(anyhow::format_err!(
-                 "did not expect repo at {} to be bare",
-                 repo.path().display()
--            )
--        })?;
-+            ));
-+        };
-         let repo_relative_path = match paths::strip_prefix_canonical(root, repo_root) {
-             Ok(p) => p,
-             Err(e) => {
-@@ -225,9 +238,21 @@ impl<'cfg> PathSource<'cfg> {
-     ) -> CargoResult<Vec<PathBuf>> {
-         warn!("list_files_git {}", pkg.package_id());
-         let index = repo.index()?;
--        let root = repo
--            .workdir()
--            .ok_or_else(|| anyhow::format_err!("can't list files on a bare repository"))?;
-+        let root = if let Some(root) = repo.workdir() {
-+            root
-+        } else if !repo.is_bare() {
-+            // Sparse-checkouts (and possibly other git
-+            // configurations) make libgit2 confused but there's still
-+            // an actual non-bare repo here.
-+            if let Some(r) = repo.path().parent() {
-+                r
-+            } else {
-+                return Err(anyhow::format_err!("malformed non-bare repository root",));
-+            }
-+        } else {
-+            return Err(anyhow::format_err!("can't list files on a bare repository",));
-+        };
-+
-         let pkg_path = pkg.root();
-
-         let mut ret = Vec::<PathBuf>::new();
diff --git a/dev-lang/rust/files/rust-1.47.0-aarch64-outline-atomics.patch b/dev-lang/rust/files/rust-1.47.0-aarch64-outline-atomics.patch
deleted file mode 100644
index 3ab8ff4..0000000
--- a/dev-lang/rust/files/rust-1.47.0-aarch64-outline-atomics.patch
+++ /dev/null
@@ -1,599 +0,0 @@
-Adds outline atomics support to Rust's compiler-rt build, since this is required
-with a sufficiently new version of clang. Support for these hasn't reached a
-stable version of LLVM yet, so we need to pick the changes and the corresponding
-build logic in.
-
-diff --git a/src/llvm-project/compiler-rt/lib/builtins/aarch64/lse.S b/src/llvm-project/compiler-rt/lib/builtins/aarch64/lse.S
-new file mode 100644
-index 000000000..5dc0d5320
---- /dev/null
-+++ b/src/llvm-project/compiler-rt/lib/builtins/aarch64/lse.S
-@@ -0,0 +1,236 @@
-+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-+// See https://llvm.org/LICENSE.txt for license information.
-+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-+
-+#include "assembly.h"
-+
-+// Out-of-line LSE atomics helpers. Ported from libgcc library.
-+// N = {1, 2, 4, 8}
-+// M = {1, 2, 4, 8, 16}
-+// ORDER = {'relax', 'acq', 'rel', 'acq_rel'}
-+// Routines implemented:
-+//
-+//  iM __aarch64_casM_ORDER(iM expected, iM desired, iM *ptr)
-+//  iN __aarch64_swpN_ORDER(iN val, iN *ptr)
-+//  iN __aarch64_ldaddN_ORDER(iN val, iN *ptr)
-+//  iN __aarch64_ldclrN_ORDER(iN val, iN *ptr)
-+//  iN __aarch64_ldeorN_ORDER(iN val, iN *ptr)
-+//  iN __aarch64_ldsetN_ORDER(iN val, iN *ptr)
-+//
-+// Routines may modify temporary registers tmp0, tmp1, tmp2,
-+// return value x0 and the flags only.
-+
-+#ifdef __aarch64__
-+
-+#ifdef HAS_ASM_LSE
-+.arch armv8-a+lse
-+#else
-+.arch armv8-a
-+#endif
-+
-+#if !defined(__APPLE__)
-+HIDDEN(__aarch64_have_lse_atomics)
-+#else
-+HIDDEN(___aarch64_have_lse_atomics)
-+#endif
-+
-+// Generate mnemonics for
-+// L_cas:                                 SIZE: 1,2,4,8,16 MODEL: 1,2,3,4
-+// L_swp L_ldadd L_ldclr L_ldeor L_ldset: SIZE: 1,2,4,8    MODEL: 1,2,3,4
-+
-+#if SIZE == 1
-+#define S b
-+#define UXT uxtb
-+#define B 0x00000000
-+#elif SIZE == 2
-+#define S h
-+#define UXT uxth
-+#define B 0x40000000
-+#elif SIZE == 4 || SIZE == 8 || SIZE == 16
-+#define S
-+#define UXT mov
-+#if SIZE == 4
-+#define B 0x80000000
-+#elif SIZE == 8
-+#define B 0xc0000000
-+#endif
-+#else
-+#error
-+#endif // SIZE
-+
-+#if MODEL == 1
-+#define SUFF _relax
-+#define A
-+#define L
-+#define M 0x000000
-+#define N 0x000000
-+#elif MODEL == 2
-+#define SUFF _acq
-+#define A a
-+#define L
-+#define M 0x400000
-+#define N 0x800000
-+#elif MODEL == 3
-+#define SUFF _rel
-+#define A
-+#define L l
-+#define M 0x008000
-+#define N 0x400000
-+#elif MODEL == 4
-+#define SUFF _acq_rel
-+#define A a
-+#define L l
-+#define M 0x408000
-+#define N 0xc00000
-+#else
-+#error
-+#endif // MODEL
-+
-+// Define register size.
-+#define x(N) GLUE2(x, N)
-+#define w(N) GLUE2(w, N)
-+#if SIZE < 8
-+#define s(N) w(N)
-+#else
-+#define s(N) x(N)
-+#endif
-+
-+#define NAME(BASE) GLUE4(__aarch64_, BASE, SIZE, SUFF)
-+#define LDXR GLUE4(ld, A, xr, S)
-+#define STXR GLUE4(st, L, xr, S)
-+
-+// Define temporary registers.
-+#define tmp0 16
-+#define tmp1 17
-+#define tmp2 15
-+
-+// Macro for branch to label if no LSE available
-+.macro JUMP_IF_NOT_LSE label
-+#if !defined(__APPLE__)
-+        adrp    x(tmp0), __aarch64_have_lse_atomics
-+        ldrb    w(tmp0), [x(tmp0), :lo12:__aarch64_have_lse_atomics]
-+#else
-+        adrp    x(tmp0), ___aarch64_have_lse_atomics@page
-+        ldrb    w(tmp0), [x(tmp0), ___aarch64_have_lse_atomics@pageoff]
-+#endif
-+        cbz     w(tmp0), \label
-+.endm
-+
-+#ifdef L_cas
-+DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(NAME(cas))
-+        JUMP_IF_NOT_LSE 8f
-+#if SIZE < 16
-+#ifdef HAS_ASM_LSE
-+#define CAS GLUE4(cas, A, L, S) s(0), s(1), [x2]
-+#else
-+#define CAS .inst 0x08a07c41 + B + M
-+#endif
-+        CAS    // s(0), s(1), [x2]
-+        ret
-+8:
-+        UXT    s(tmp0), s(0)
-+0:
-+        LDXR   s(0), [x2]
-+        cmp    s(0), s(tmp0)
-+        bne    1f
-+        STXR   w(tmp1), s(1), [x2]
-+        cbnz   w(tmp1), 0b
-+1:
-+        ret
-+#else
-+#define LDXP GLUE3(ld, A, xp)
-+#define STXP GLUE3(st, L, xp)
-+#ifdef HAS_ASM_LSE
-+#define CASP GLUE3(casp, A, L)  x0, x1, x2, x3, [x4]
-+#else
-+#define CASP .inst 0x48207c82 + M
-+#endif
-+
-+        CASP   // x0, x1, x2, x3, [x4]
-+        ret
-+8:
-+        mov    x(tmp0), x0
-+        mov    x(tmp1), x1
-+0:
-+        LDXP   x0, x1, [x4]
-+        cmp    x0, x(tmp0)
-+        ccmp   x1, x(tmp1), #0, eq
-+        bne    1f
-+        STXP   w(tmp2), x2, x3, [x4]
-+        cbnz   w(tmp2), 0b
-+1:
-+        ret
-+#endif
-+END_COMPILERRT_OUTLINE_FUNCTION(NAME(cas))
-+#endif // L_cas
-+
-+#ifdef L_swp
-+#ifdef HAS_ASM_LSE
-+#define SWP GLUE4(swp, A, L, S)  s(0), s(0), [x1]
-+#else
-+#define SWP .inst 0x38208020 + B + N
-+#endif
-+DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(NAME(swp))
-+        JUMP_IF_NOT_LSE 8f
-+        SWP    // s(0), s(0), [x1]
-+        ret
-+8:
-+        mov    s(tmp0), s(0)
-+0:
-+        LDXR   s(0), [x1]
-+        STXR   w(tmp1), s(tmp0), [x1]
-+        cbnz   w(tmp1), 0b
-+        ret
-+END_COMPILERRT_OUTLINE_FUNCTION(NAME(swp))
-+#endif // L_swp
-+
-+#if defined(L_ldadd) || defined(L_ldclr) ||                                    \
-+    defined(L_ldeor) || defined(L_ldset)
-+
-+#ifdef L_ldadd
-+#define LDNM ldadd
-+#define OP add
-+#define OPN 0x0000
-+#elif defined(L_ldclr)
-+#define LDNM ldclr
-+#define OP bic
-+#define OPN 0x1000
-+#elif defined(L_ldeor)
-+#define LDNM ldeor
-+#define OP eor
-+#define OPN 0x2000
-+#elif defined(L_ldset)
-+#define LDNM ldset
-+#define OP orr
-+#define OPN 0x3000
-+#else
-+#error
-+#endif
-+
-+#ifdef HAS_ASM_LSE
-+#define LDOP GLUE4(LDNM, A, L, S) s(0), s(0), [x1]
-+#else
-+#define LDOP .inst 0x38200020 + OPN + B + N
-+#endif
-+
-+DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(NAME(LDNM))
-+        JUMP_IF_NOT_LSE 8f
-+        LDOP // s(0), s(0), [x1]
-+        ret
-+8:
-+        mov    s(tmp0), s(0)
-+0:
-+        LDXR   s(0), [x1]
-+        OP     s(tmp1), s(0), s(tmp0)
-+        STXR   w(tmp2), s(tmp1), [x1]
-+        cbnz   w(tmp2), 0b
-+        ret
-+END_COMPILERRT_OUTLINE_FUNCTION(NAME(LDNM))
-+#endif // L_ldadd L_ldclr L_ldeor L_ldset
-+
-+NO_EXEC_STACK_DIRECTIVE
-+
-+// GNU property note for BTI and PAC
-+GNU_PROPERTY_BTI_PAC
-+
-+#endif // __aarch64__
-diff --git a/src/llvm-project/compiler-rt/lib/builtins/assembly.h b/src/llvm-project/compiler-rt/lib/builtins/assembly.h
-index f437cb87f..f6ce6a9fc 100644
---- a/src/llvm-project/compiler-rt/lib/builtins/assembly.h
-+++ b/src/llvm-project/compiler-rt/lib/builtins/assembly.h
-@@ -14,8 +14,8 @@
- #ifndef COMPILERRT_ASSEMBLY_H
- #define COMPILERRT_ASSEMBLY_H
- 
--#if defined(__POWERPC__) || defined(__powerpc__) || defined(__ppc__)
--#define SEPARATOR @
-+#if defined(__APPLE__) && defined(__aarch64__)
-+#define SEPARATOR %%
- #else
- #define SEPARATOR ;
- #endif
-@@ -35,14 +35,14 @@
- #define HIDDEN(name) .hidden name
- #define LOCAL_LABEL(name) .L_##name
- #define FILE_LEVEL_DIRECTIVE
--#if defined(__arm__)
-+#if defined(__arm__) || defined(__aarch64__)
- #define SYMBOL_IS_FUNC(name) .type name,%function
- #else
- #define SYMBOL_IS_FUNC(name) .type name,@function
- #endif
- #define CONST_SECTION .section .rodata
- 
--#if defined(__GNU__) || defined(__FreeBSD__) || defined(__Fuchsia__) || \
-+#if defined(__GNU__) || defined(__FreeBSD__) || defined(__Fuchsia__) ||        \
-     defined(__linux__)
- #define NO_EXEC_STACK_DIRECTIVE .section .note.GNU-stack,"",%progbits
- #else
-@@ -65,6 +65,66 @@
- 
- #endif
- 
-+#if defined(__arm__) || defined(__aarch64__)
-+#define FUNC_ALIGN                                                             \
-+  .text SEPARATOR                                                              \
-+  .balign 16 SEPARATOR
-+#else
-+#define FUNC_ALIGN
-+#endif
-+
-+// BTI and PAC gnu property note
-+#define NT_GNU_PROPERTY_TYPE_0 5
-+#define GNU_PROPERTY_AARCH64_FEATURE_1_AND 0xc0000000
-+#define GNU_PROPERTY_AARCH64_FEATURE_1_BTI 1
-+#define GNU_PROPERTY_AARCH64_FEATURE_1_PAC 2
-+
-+#if defined(__ARM_FEATURE_BTI_DEFAULT)
-+#define BTI_FLAG GNU_PROPERTY_AARCH64_FEATURE_1_BTI
-+#else
-+#define BTI_FLAG 0
-+#endif
-+
-+#if __ARM_FEATURE_PAC_DEFAULT & 3
-+#define PAC_FLAG GNU_PROPERTY_AARCH64_FEATURE_1_PAC
-+#else
-+#define PAC_FLAG 0
-+#endif
-+
-+#define GNU_PROPERTY(type, value)                                              \
-+  .pushsection .note.gnu.property, "a" SEPARATOR                               \
-+  .p2align 3 SEPARATOR                                                         \
-+  .word 4 SEPARATOR                                                            \
-+  .word 16 SEPARATOR                                                           \
-+  .word NT_GNU_PROPERTY_TYPE_0 SEPARATOR                                       \
-+  .asciz "GNU" SEPARATOR                                                       \
-+  .word type SEPARATOR                                                         \
-+  .word 4 SEPARATOR                                                            \
-+  .word value SEPARATOR                                                        \
-+  .word 0 SEPARATOR                                                            \
-+  .popsection
-+
-+#if BTI_FLAG != 0
-+#define BTI_C bti c
-+#else
-+#define BTI_C
-+#endif
-+
-+#if (BTI_FLAG | PAC_FLAG) != 0
-+#define GNU_PROPERTY_BTI_PAC                                                   \
-+  GNU_PROPERTY(GNU_PROPERTY_AARCH64_FEATURE_1_AND, BTI_FLAG | PAC_FLAG)
-+#else
-+#define GNU_PROPERTY_BTI_PAC
-+#endif
-+
-+#if defined(__clang__) || defined(__GCC_HAVE_DWARF2_CFI_ASM)
-+#define CFI_START .cfi_startproc
-+#define CFI_END .cfi_endproc
-+#else
-+#define CFI_START
-+#define CFI_END
-+#endif
-+
- #if defined(__arm__)
- 
- // Determine actual [ARM][THUMB[1][2]] ISA using compiler predefined macros:
-@@ -131,8 +191,14 @@
- #define DEFINE_CODE_STATE
- #endif
- 
--#define GLUE2(a, b) a##b
--#define GLUE(a, b) GLUE2(a, b)
-+#define GLUE2_(a, b) a##b
-+#define GLUE(a, b) GLUE2_(a, b)
-+#define GLUE2(a, b) GLUE2_(a, b)
-+#define GLUE3_(a, b, c) a##b##c
-+#define GLUE3(a, b, c) GLUE3_(a, b, c)
-+#define GLUE4_(a, b, c, d) a##b##c##d
-+#define GLUE4(a, b, c, d) GLUE4_(a, b, c, d)
-+
- #define SYMBOL_NAME(name) GLUE(__USER_LABEL_PREFIX__, name)
- 
- #ifdef VISIBILITY_HIDDEN
-@@ -177,6 +243,16 @@
-   DECLARE_FUNC_ENCODING                                                        \
-   name:
- 
-+#define DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(name)                     \
-+  DEFINE_CODE_STATE                                                            \
-+  FUNC_ALIGN                                                                   \
-+  .globl name SEPARATOR                                                        \
-+  SYMBOL_IS_FUNC(name) SEPARATOR                                               \
-+  DECLARE_SYMBOL_VISIBILITY(name) SEPARATOR                                    \
-+  CFI_START SEPARATOR                                                          \
-+  DECLARE_FUNC_ENCODING                                                        \
-+  name: SEPARATOR BTI_C
-+
- #define DEFINE_COMPILERRT_FUNCTION_ALIAS(name, target)                         \
-   .globl SYMBOL_NAME(name) SEPARATOR                                           \
-   SYMBOL_IS_FUNC(SYMBOL_NAME(name)) SEPARATOR                                  \
-@@ -193,8 +269,13 @@
- #ifdef __ELF__
- #define END_COMPILERRT_FUNCTION(name)                                          \
-   .size SYMBOL_NAME(name), . - SYMBOL_NAME(name)
-+#define END_COMPILERRT_OUTLINE_FUNCTION(name)                                  \
-+  CFI_END SEPARATOR                                                            \
-+  .size SYMBOL_NAME(name), . - SYMBOL_NAME(name)
- #else
- #define END_COMPILERRT_FUNCTION(name)
-+#define END_COMPILERRT_OUTLINE_FUNCTION(name)                                  \
-+  CFI_END
- #endif
- 
- #endif // COMPILERRT_ASSEMBLY_H
-diff --git a/src/llvm-project/compiler-rt/lib/builtins/cpu_model.c b/src/llvm-project/compiler-rt/lib/builtins/cpu_model.c
-index 468bcc84c..1f72d800f 100644
---- a/src/llvm-project/compiler-rt/lib/builtins/cpu_model.c
-+++ b/src/llvm-project/compiler-rt/lib/builtins/cpu_model.c
-@@ -12,6 +12,16 @@
- //
- //===----------------------------------------------------------------------===//
- 
-+#if defined(HAVE_INIT_PRIORITY)
-+#define CONSTRUCTOR_ATTRIBUTE __attribute__((__constructor__ 101))
-+#elif __has_attribute(__constructor__)
-+#define CONSTRUCTOR_ATTRIBUTE __attribute__((__constructor__))
-+#else
-+// FIXME: For MSVC, we should make a function pointer global in .CRT$X?? so that
-+// this runs during initialization.
-+#define CONSTRUCTOR_ATTRIBUTE
-+#endif
-+
- #if (defined(__i386__) || defined(_M_IX86) || defined(__x86_64__) ||           \
-      defined(_M_X64)) &&                                                       \
-     (defined(__GNUC__) || defined(__clang__) || defined(_MSC_VER))
-@@ -656,16 +666,6 @@ static void getAvailableFeatures(unsigned ECX, unsigned EDX, unsigned MaxLeaf,
- #undef setFeature
- }
- 
--#if defined(HAVE_INIT_PRIORITY)
--#define CONSTRUCTOR_ATTRIBUTE __attribute__((__constructor__ 101))
--#elif __has_attribute(__constructor__)
--#define CONSTRUCTOR_ATTRIBUTE __attribute__((__constructor__))
--#else
--// FIXME: For MSVC, we should make a function pointer global in .CRT$X?? so that
--// this runs during initialization.
--#define CONSTRUCTOR_ATTRIBUTE
--#endif
--
- #ifndef _WIN32
- __attribute__((visibility("hidden")))
- #endif
-@@ -741,4 +741,24 @@ int CONSTRUCTOR_ATTRIBUTE __cpu_indicator_init(void) {
-   return 0;
- }
- 
-+#elif defined(__aarch64__)
-+// LSE support detection for out-of-line atomics
-+// using HWCAP and Auxiliary vector
-+_Bool __aarch64_have_lse_atomics
-+    __attribute__((visibility("hidden"), nocommon));
-+#if defined(__has_include)
-+#if __has_include(<sys/auxv.h>)
-+#include <sys/auxv.h>
-+#ifndef AT_HWCAP
-+#define AT_HWCAP 16
-+#endif
-+#ifndef HWCAP_ATOMICS
-+#define HWCAP_ATOMICS (1 << 8)
-+#endif
-+static void CONSTRUCTOR_ATTRIBUTE init_have_lse_atomics(void) {
-+  unsigned long hwcap = getauxval(AT_HWCAP);
-+  __aarch64_have_lse_atomics = (hwcap & HWCAP_ATOMICS) != 0;
-+}
-+#endif // defined(__has_include)
-+#endif // __has_include(<sys/auxv.h>)
- #endif
-diff --git a/vendor/compiler_builtins/.cargo-checksum.json b/vendor/compiler_builtins/.cargo-checksum.json
-index b14e1309a..1f82d1de1 100644
---- a/vendor/compiler_builtins/.cargo-checksum.json
-+++ b/vendor/compiler_builtins/.cargo-checksum.json
-@@ -1 +1 @@
--{"files":{"Cargo.lock":"1dfa9c1f68c8e0f1d1fc90ed0712a3eeb2ea68478064c19d601249f60acde4a1","Cargo.toml":"d12e720542879582d4a8b9d6582a367d2962def71cd58cddfccf4e5d8df8b0cd","README.md":"2dd28b207028773ffee09ed0db563ac71b255b6b67256289d67a13cb19d15f94","build.rs":"bb626c4ce8b3b4c7e61548a1a56684997a58fc9d5f052df690031901321a43e6","examples/intrinsics.rs":"5bc2a8e39a541a6b55567f36ff9de17afad3cb620702a9e7c5b069a237f1197b","libm/src/math/acos.rs":"fb066ba84aba1372d706425ec14f35ff8d971756d15eeebd22ecf42a716493bb","libm/src/math/acosf.rs":"a112b82309bba1d35c4e3d6ad4d6c21ef305343d9ab601ddf4bc61d43bc9f1af","libm/src/math/acosh.rs":"56dac8538e4350cd7cf001327c89f087b68abb2e6aaad58edba8a094b09f6b0f","libm/src/math/acoshf.rs":"df5b0c4d8e37e64cf5ff2d8328b28bc35c78e84060ff769e64523ea9ff9065c1","libm/src/math/asin.rs":"095a1e98996daff45df0b154ca0ec35bbf31db964ee9fdda0207308cb20df441","libm/src/math/asinf.rs":"49cccb4db2881982643a4a7d5453f4f8daf527711bbb67313607a3c178856d61","libm/src/math/asinh.rs":"e8fc94031015fddf35e9c26b94da9f6431ee17c81cd7bd37da8ffc98f7e0b32c","libm/src/math/asinhf.rs":"8a0b8933a98a17617a66fef4c7b89eba645fdf05302000babf4a5a5f45328430","libm/src/math/atan.rs":"d4fe46e1c5739dd09997869dcfbc3c85f03c534af52e700d6c6bcf9c3fedda07","libm/src/math/atan2.rs":"2623bc8ca707d13a7092ce49adf68e9cbf4452ad1bf4a861dc40ca858606a747","libm/src/math/atan2f.rs":"dd01943e0e1f1955912e5c3ffc9467529cf64bd02ac0a6ad5ab31dbe6657f05d","libm/src/math/atanf.rs":"e41b41569474a59c970ede3538e00bda4072cf4d90040017101cc79d7dc28caa","libm/src/math/atanh.rs":"5934dbd6b7395ca4f103ace7598da723a9270e1cf6b47e7f786debe4bb3651ff","libm/src/math/atanhf.rs":"8ba4711dda19ef2dc33622be65c1483902868083543198c6bbd040d4026293de","libm/src/math/cbrt.rs":"f2c45612d2eecd93cfcdd9ebf824c754fc8f8dfd6d16862c0b9c4ccea78c2a0f","libm/src/math/cbrtf.rs":"ad0b483854aa9f17a44d36c049bf0e8ebab34c27e90b787c05f45cc230ec7d19","libm/src/math/ceil.rs":"0e6caff1597818471c28b7c3226dbfe9976fdb38ace5246172ac030754be6b79","libm/src/math/ceilf.rs":"f942bcea617de7da880b68bdfe676837a7984e2a887eaafe181be24c6bc13cc2","libm/src/math/copysign.rs":"d80c880efaf0cdf2ce0a4d4f5a68dd6c36c88d46fa997ec8ac8604bfdb26fa33","libm/src/math/copysignf.rs":"1547116071e68a42b1605eb2fc722db6466a34517dc96b92de1f29a274c3d8e3","libm/src/math/cos.rs":"74babdc13ede78e400c5ca1854c3e22d2e08cbdc5618aefa5bba6f9303ef65b6","libm/src/math/cosf.rs":"09c40f93c445b741e22477ceedf163ca33b6a47f973f7c9876cfba2692edb29c","libm/src/math/cosh.rs":"0d0a7cef18577f321996b8b87561963139f754ad7f2ea0a3b3883811f3f0693a","libm/src/math/coshf.rs":"be8ca8739e4cf1978425b349f941cb4838bba8c10cb559c7940b9fd4fdde21ad","libm/src/math/erf.rs":"9c55fc6756ba816996f0b585e07ccfa4cd87575ad525cd30c4a968b30acffda3","libm/src/math/erff.rs":"cb020e8bada9a54573a11fe3271750d73f14fed3092a881a9ceaf98fe32fd5a6","libm/src/math/exp.rs":"ca7405ad0d1993fffcf9aae96f9256307bed3c4916545aaebd1cf1d2df1807fa","libm/src/math/exp10.rs":"2deb037f88feac87a0e924b69dd496f0dd3b5d35f2a58e09d4c5166b207e517b","libm/src/math/exp10f.rs":"6979464dfe3f4f2da1f9afc909646499c4bfaef15e10a039384750e2f1586fea","libm/src/math/exp2.rs":"94a9304a2ce3bc81f6d2aefd3cde6faa30f13260d46cb13692863cdea1c9a3a1","libm/src/math/exp2f.rs":"785f2630accd35118ec07bf60273e219ed91a215b956b1552eeea5bc2a708cc8","libm/src/math/expf.rs":"ec14c18f891a9e37735ec39e6fc2e9bf674a2c2e083f22e2533b481177359c98","libm/src/math/expm1.rs":"124069f456c8ad331f265c7509d9e223b2a300e461bbfd3d6adfdcdd2ee5b8ac","libm/src/math/expm1f.rs":"18e2116d31ea8410051cc709b9d04b754b0e3ba6758ee1bf0b48749f4999b840","libm/src/math/expo2.rs":"4f4f9fecfccb43f30c2784aa7c0bb656754a52b8ab431f7d1b551c673ab133f1","libm/src/math/fabs.rs":"e6c7db39f98508098cdf64ac0c2f53866c466149a7490afb9fe22b44c4dd81b3","libm/src/math/fabsf.rs":"dc85b66e4ef662721276ae3a301af22795524e4367ee8dd40f0c24c439773c6d","libm/src/math/fdim.rs":"8ec091996005207297c2389ae563e1b18dbc6a9eac951de29a976c5cd7bc32a7","libm/src/math/fdimf.rs":"c7f3f2269834d55be26b6580ddc07c42531577955fa4de35bad1e2a361085614","libm/src/math/fenv.rs":"8730d45aa4c591f91dccdcc1ce533fa23e9c6df0c38defb9c57f749cb25e1cd0","libm/src/math/floor.rs":"be15e687a6798defc6f2c6b43028481f8104fb93d2b3f359d3d5d16b78e79d4f","libm/src/math/floorf.rs":"4ec41aa64cfafd23b8cfc043eacea5e9125cca5dcb3f5e655cc3d3458c6ba2c5","libm/src/math/fma.rs":"6872e79787e9270520189b53608f602b8ad5a099f3cef10ad5b9e0c06ef01fe0","libm/src/math/fmaf.rs":"3e0f5727e56f31218f674b9b8975d7e67b3a24a097f06a2a3eca9723cd786213","libm/src/math/fmax.rs":"f6c8e96a8b1a170648d2fa3513e7b6b459085d708c839869f82e305fe58fac37","libm/src/math/fmaxf.rs":"dff0025433232e8a5ec7bd54d847ccf596d762ea4e35f5c54fbaac9404d732fd","libm/src/math/fmin.rs":"95b6cb66ca0e0e22276f0bf88dbe8fb69796a69a196a7491bd4802efbcf2e298","libm/src/math/fminf.rs":"304bc839b15ea3d84e68d2af9f40524ec120d30a36a667b22fcb98a6c258f4c7","libm/src/math/fmod.rs":"a1c0550fc7df8164733d914e222ff0966a2ab886d6e75a1098f24fe0283ae227","libm/src/math/fmodf.rs":"ee51ed092c0eeb8195f35735ff725cfd46612e0d689a7c483538bd92fbe61828","libm/src/math/frexp.rs":"28af70026922a8ab979744c7ad4d8faba6079c4743b7eeb6d14c983a982fbbcc","libm/src/math/frexpf.rs":"2e2593ae8002ba420809ebfaf737ef001cdc912354be3d978a8c0cb930350d4d","libm/src/math/hypot.rs":"841131c4a0cea75bc8a86e29f3f6d0815a61fc99731c9984651ce83d3050d218","libm/src/math/hypotf.rs":"5f317323edc2eb699580fe54b074b7e570a7734d51a0a149c0b49b54470a836c","libm/src/math/ilogb.rs":"813413bf6266d4fc40db9c5921af3cef4f892ba93e8f6d9efe62a449d1234532","libm/src/math/ilogbf.rs":"dec462780f46682e16cfaa733238bed3b692729e951f53a44726100b6c73a716","libm/src/math/j0.rs":"9572b6396c489927d332d0e717920e61ec0618e5e9c31f7eeeec70f5e4abab06","libm/src/math/j0f.rs":"802c8254bded9b3afb6eea8b9af240038a5a4a5d811396729f69ca509e3e7d87","libm/src/math/j1.rs":"97b1af1611fa3d110c2b349ee8e4176100132ea1391b619086b47ac063b81803","libm/src/math/j1f.rs":"1d504d7750c0481273baad88196d3644f258af9ad10f8b5b16341c0aab8b9125","libm/src/math/jn.rs":"847d122334e5707ad9627146cddccc082a1f2f5bcd3e5ef54399013a7007ce88","libm/src/math/jnf.rs":"4045076f7d1a1b89882ed60d4dd60a4cbbc66b85cfb90491378c8015effcc476","libm/src/math/k_cos.rs":"f34a69e44d6b8901b03b578a75972f438ab20a7b98a0903fc1903d6fde3899be","libm/src/math/k_cosf.rs":"8f7117ff21cebf8e890a5bcfd7ea858a94172f4172b79a66d53824c2cb0888b1","libm/src/math/k_expo2.rs":"eb4ca9e6a525b7ea6da868c3cb136896682cc46f8396ba2a2ebc3ae9e9ba54b0","libm/src/math/k_expo2f.rs":"d51ad5df61cb5d1258bdb90c52bfed4572bb446a9337de9c04411ed9454ae0cb","libm/src/math/k_sin.rs":"14b2aba6ca07150c92768b5a72acaf5cde6a11d6619e14896512a7ba242e289a","libm/src/math/k_sinf.rs":"2775fcc710807164e6f37a4f8da3c8143cd5f16e19ce7c31c5591522151d7a96","libm/src/math/k_tan.rs":"a72beae4ccd9631eeeb61d6365bbeecae81c8411f3120a999c515cca0d5ea5c5","libm/src/math/k_tanf.rs":"6a794be56fa4b2f60452b9bab19af01c388f174560acbf829a351378ea39495d","libm/src/math/ldexp.rs":"b647f0096e80e4d926d8dd18d294c892ee2cb1778effe2c5e1b2664ae5cb1a4e","libm/src/math/ldexpf.rs":"98743fad2cd97a7be496f40ba3157ac1438fce0d0c25d5ab90c3b8c71c3fd0ed","libm/src/math/lgamma.rs":"498552658cc8106d7754f85ae8dbc3306ac2f0a9f7eb5a796be70c5beac92c41","libm/src/math/lgamma_r.rs":"77fb6442aeb5343926d8965e1549dde3e2cc4fd09555de6b56506001d956c344","libm/src/math/lgammaf.rs":"457105f53a4c8717e8f5a117d261dcf94e222e83981337fe23602abe883fe3f7","libm/src/math/lgammaf_r.rs":"44de75babbdd53c4a5879cd6f426e7311db82669def39df5f63914d67d6cc1b1","libm/src/math/log.rs":"b5e0c5f30d9e94351488732801be3107c12b854c3f95ad37e256dd88eeca408f","libm/src/math/log10.rs":"3425ff8be001fd1646ba15e254eb6ef4bdc6ccaf0cbee27ddf1fa84e04178b90","libm/src/math/log10f.rs":"fee4f71879bc4c99259e68c0c641364901629fb29a8ebddfcc0d090102cceddd","libm/src/math/log1p.rs":"9cf400852f165e6be19b97036ae9521fb9ca857d0a9a91c117d9123221622185","libm/src/math/log1pf.rs":"2716e6d2afa271996b7c8f47fd9e4952c88f4c1fd8c07c3e8ce8c62794bf71d8","libm/src/math/log2.rs":"dbbbfbaaa8aa6a4dbefea554ea3983090a9691228b011910c751f6adca912c40","libm/src/math/log2f.rs":"92a90350d8edce21c31c285c3e620fca7c62a2366008921715945c2c73b5b79f","libm/src/math/logf.rs":"845342cffc34d3db1f5ec12d8e5b773cd5a79056e28662fcb9bcd80207596f50","libm/src/math/mod.rs":"ffa73c08f4c0a4dc6c9d1cb9d62fe97f3a5046edede128c9441cc3adc9170dd3","libm/src/math/modf.rs":"d012ed5a708ef52b6d1313c22a46cadaf5764dde1220816e3df2f03a0fcc60ae","libm/src/math/modff.rs":"f8f1e4c27a85d2cdb3c8e74439d59ef64aa543b948f22c23227d02d8388d61c2","libm/src/math/nextafter.rs":"3282e7eef214a32736fb6928d490198ad394b26b402b45495115b104839eebfe","libm/src/math/nextafterf.rs":"0937dc8a8155c19842c12181e741cec1f7df1f7a00cee81fcb2475e2842761b7","libm/src/math/pow.rs":"64fba587143fa88cdfa5c9d30b658ab03e3a19e3ea3759394836add4068983c6","libm/src/math/powf.rs":"2c423a0ea57fdc4e20f3533f744c6e6288c998b4de8f2914fafaa0e78be81b04","libm/src/math/rem_pio2.rs":"9be99c44493b2b7088578c0fa2872630725b2da544c751516df0c6c686112a43","libm/src/math/rem_pio2_large.rs":"21762d08d72dc6f2e313123a7311683000974a09b8fcae50994d9c39239721b1","libm/src/math/rem_pio2f.rs":"377349d1308bda8cd2f776e4856fe090baa78fa3db816b680780ddf31b80d446","libm/src/math/remainder.rs":"63865f4370853c476b45bb27a5c54a4072146aa4a626835ae5263871a4e7e5dc","libm/src/math/remainderf.rs":"dd3fa432dbda8f2135428198be7bd69c57f8d13df3f365b12f52bf6a82352ac4","libm/src/math/remquo.rs":"3cc0bf55069f165c4843f2c358b3a27279c01e8cdd99f9057a3f7f31f45408f2","libm/src/math/remquof.rs":"cc749e18ecb7e766b8b8eeabdbf89ac99087d3d587e71e30f690676a3d2c1f9b","libm/src/math/round.rs":"955649c893fa3151b4a81c8e550fbc03f01bb99b40d60986e5f153ee71043f69","libm/src/math/roundf.rs":"8ae8f1f71eedd158566771cfe80b352d2f13c170a0ce8dc2691a14e8a791cfbb","libm/src/math/scalbn.rs":"b5c9d6d4177fe393cbfe1c634d75ce14b754f6cbce87c5bf979a9661491748a2","libm/src/math/scalbnf.rs":"4f198d06db1896386256fb9a5ac5b805b16b836226c18780a475cf18d7c1449c","libm/src/math/sin.rs":"0e014e6377c9673a73395ab2ffcf5962e512392afddf8a4e731fb694098faf34","libm/src/math/sincos.rs":"59e9f196140681fa817652134b8d1bdd2d6dd47bb8557b0346c77b176389f883","libm/src/math/sincosf.rs":"d37d71c7204c7892fe24c956df0fb95e7a014a808f5cbd5e125aee48c3c449b5","libm/src/math/sinf.rs":"dcddac1d56b084cbb8d0e019433c9c5fe2201d9b257a7dcf2f85c9a8f14b79cf","libm/src/math/sinh.rs":"d8ee4c7af883a526f36c1a6da13bb81fba9181b477e2f2538161a2bee97edc35","libm/src/math/sinhf.rs":"d06eb030ba9dbf7094df127262bfe99f149b4db49fa8ab8c15499660f1e46b26","libm/src/math/sqrt.rs":"824570a631c2542ccee68b65e3eb08fe79c037a29bbaaf54da5367e7b236124a","libm/src/math/sqrtf.rs":"d9e12ac55c5471c18175efdfb15c092ba71a2eb914d2e1ee3b3310a22202042e","libm/src/math/tan.rs":"930ecedaadc60f704c2dfa4e15186f59713c1ba7d948529d215223b424827db5","libm/src/math/tanf.rs":"894156a3b107aee08461eb4e7e412fc049aa237d176ae705c6e3e2d7060d94e3","libm/src/math/tanh.rs":"f1f08eb98ed959a17370a7aaf0177be36e3764543424e78feb033ed3f5e8ec98","libm/src/math/tanhf.rs":"74027b0c672a4e64bdef6d7a3069b90caec50e1e7dbb2c12d2828f310502f41e","libm/src/math/tgamma.rs":"a6aabb8365410af6611f19f58694ccb74e82bb9ba9e1cdec7e1af787cfa44815","libm/src/math/tgammaf.rs":"c95bd69957387533853532164f7e2251d2b04f5e775406b9e647226ae2bdd5ad","libm/src/math/trunc.rs":"642264897cc1505e720c8cf313be81aa9fd53aae866644a2e988d01dbc77fd8a","libm/src/math/truncf.rs":"619b675b6a9bb81eccddb1fa8214cff63e1f62136629b645c87f036672311732","src/arm.rs":"2035935972d728031d31d35067f0ec474f1c3b1ab86e166130d29df266b09b90","src/arm_linux.rs":"80d18ce84bdfa841fa133f5ee9e9fd50167344436d2d398f74347a90f27606c6","src/float/add.rs":"1a230ed4e17148cfffb7c880929c9c0d5d48d85581d75164c5031b8f05a5d567","src/float/cmp.rs":"a86ccbc0e56f07ba439dc6a4fd835184645178c0a6da625bd4ae24ecf9a790f8","src/float/conv.rs":"0af148b6c717d124e870e5d1926eaa562de37e374c605ea81c1f7eea994146f4","src/float/div.rs":"58bdcd73c5ffafde9cca8a0e7986de0660fb8b5b4d4132e7a63dd21f93f4fe0e","src/float/extend.rs":"180b2e791c58e0526de0a798845c580ce3222c8a15c8665e6e6a4bf5cf1a34aa","src/float/mod.rs":"d15b78070d824f5523f12d55fc084879b638241324451dbcd0ac291589c53125","src/float/mul.rs":"9465960b326897a04543789aa44640aefeb4cc63311e58ae8213f664dd4ac21e","src/float/pow.rs":"64f4935f4bed46d3b9cde4d16f59cca76a110d36d02d76f4b909157349edf5e3","src/float/sub.rs":"c2a87f4628f51d5d908d0f25b5d51ce0599dc559d5a72b20e131261f484d5848","src/int/addsub.rs":"9e7a393c76958fe9e8fb7de9bfe1304766c276bfdaa25761913357e0f6172369","src/int/mod.rs":"d15781df9dc054aa11e23f4825152ae9c609aab15bf43599ff07ff683f513643","src/int/mul.rs":"3142da8783cfac3ef704efcae19838bfda4916965fb852294685cf7664976e8a","src/int/sdiv.rs":"ca47f2a41fe0aad1e37f4e56ab1e0959c5b10c32c3593596c8cef2ff17694389","src/int/shift.rs":"0427e05a39cf6a0abab0b6525e8567afcf336f49fbb0ed0977b480e16a878bd8","src/int/udiv.rs":"9a222e79c0bf74ab77728cfa2026508508b33e7f2ac6cafc1fa34040e5538ba0","src/lib.rs":"da4433593615a60f05aff9f5252f15350e537d97dfa96e6536619545dd173851","src/macros.rs":"9f3aa9b66195b258ff29209c6b1e7962d6f82d31579d669dd74c9fdeee134170","src/math.rs":"a2e45a208bcdd742d32639591c91525a44f891db6057ce066052d67c4d4ae809","src/mem.rs":"4ece60ca07aaff3611a716a80f55668a785ad8399b65fc36cc9ab4b481fa639c","src/probestack.rs":"c1ad1e4a9550a3507bcbec00c8917530a954ba971c02506aeec949381443674a","src/riscv32.rs":"b9b433d248fce35e43a7df430697545f39898fad46be7d0197284764e44993b2","src/x86.rs":"068e456417d4740f048800da1d18eb49dd85f85604e5e383446331925e1effc3","src/x86_64.rs":"3ffbefe3bdc75cd4674ba1bbab9029bc4d6d8635f5e0b1fe30329ec6209bfd8a"},"package":"7bc4ac2c824d2bfc612cba57708198547e9a26943af0632aff033e0693074d5c"}
-\ No newline at end of file
-+{"files":{"libm/src/math/atanhf.rs":"8ba4711dda19ef2dc33622be65c1483902868083543198c6bbd040d4026293de","Cargo.toml":"d12e720542879582d4a8b9d6582a367d2962def71cd58cddfccf4e5d8df8b0cd","libm/src/math/tanh.rs":"f1f08eb98ed959a17370a7aaf0177be36e3764543424e78feb033ed3f5e8ec98","libm/src/math/frexpf.rs":"2e2593ae8002ba420809ebfaf737ef001cdc912354be3d978a8c0cb930350d4d","libm/src/math/remainder.rs":"63865f4370853c476b45bb27a5c54a4072146aa4a626835ae5263871a4e7e5dc","libm/src/math/cosh.rs":"0d0a7cef18577f321996b8b87561963139f754ad7f2ea0a3b3883811f3f0693a","libm/src/math/scalbnf.rs":"4f198d06db1896386256fb9a5ac5b805b16b836226c18780a475cf18d7c1449c","src/int/shift.rs":"0427e05a39cf6a0abab0b6525e8567afcf336f49fbb0ed0977b480e16a878bd8","libm/src/math/k_expo2.rs":"eb4ca9e6a525b7ea6da868c3cb136896682cc46f8396ba2a2ebc3ae9e9ba54b0","libm/src/math/lgamma_r.rs":"77fb6442aeb5343926d8965e1549dde3e2cc4fd09555de6b56506001d956c344","libm/src/math/exp10f.rs":"6979464dfe3f4f2da1f9afc909646499c4bfaef15e10a039384750e2f1586fea","libm/src/math/sincosf.rs":"d37d71c7204c7892fe24c956df0fb95e7a014a808f5cbd5e125aee48c3c449b5","libm/src/math/fmod.rs":"a1c0550fc7df8164733d914e222ff0966a2ab886d6e75a1098f24fe0283ae227","libm/src/math/tanf.rs":"894156a3b107aee08461eb4e7e412fc049aa237d176ae705c6e3e2d7060d94e3","libm/src/math/cbrtf.rs":"ad0b483854aa9f17a44d36c049bf0e8ebab34c27e90b787c05f45cc230ec7d19","libm/src/math/acosf.rs":"a112b82309bba1d35c4e3d6ad4d6c21ef305343d9ab601ddf4bc61d43bc9f1af","src/int/mul.rs":"3142da8783cfac3ef704efcae19838bfda4916965fb852294685cf7664976e8a","libm/src/math/round.rs":"955649c893fa3151b4a81c8e550fbc03f01bb99b40d60986e5f153ee71043f69","libm/src/math/rem_pio2f.rs":"377349d1308bda8cd2f776e4856fe090baa78fa3db816b680780ddf31b80d446","libm/src/math/floor.rs":"be15e687a6798defc6f2c6b43028481f8104fb93d2b3f359d3d5d16b78e79d4f","libm/src/math/nextafterf.rs":"0937dc8a8155c19842c12181e741cec1f7df1f7a00cee81fcb2475e2842761b7","libm/src/math/k_cos.rs":"f34a69e44d6b8901b03b578a75972f438ab20a7b98a0903fc1903d6fde3899be","libm/src/math/exp10.rs":"2deb037f88feac87a0e924b69dd496f0dd3b5d35f2a58e09d4c5166b207e517b","examples/intrinsics.rs":"5bc2a8e39a541a6b55567f36ff9de17afad3cb620702a9e7c5b069a237f1197b","src/float/mul.rs":"9465960b326897a04543789aa44640aefeb4cc63311e58ae8213f664dd4ac21e","libm/src/math/j0.rs":"9572b6396c489927d332d0e717920e61ec0618e5e9c31f7eeeec70f5e4abab06","src/arm_linux.rs":"80d18ce84bdfa841fa133f5ee9e9fd50167344436d2d398f74347a90f27606c6","src/math.rs":"a2e45a208bcdd742d32639591c91525a44f891db6057ce066052d67c4d4ae809","libm/src/math/sqrtf.rs":"d9e12ac55c5471c18175efdfb15c092ba71a2eb914d2e1ee3b3310a22202042e","libm/src/math/asinhf.rs":"8a0b8933a98a17617a66fef4c7b89eba645fdf05302000babf4a5a5f45328430","libm/src/math/remquo.rs":"3cc0bf55069f165c4843f2c358b3a27279c01e8cdd99f9057a3f7f31f45408f2","libm/src/math/j1f.rs":"1d504d7750c0481273baad88196d3644f258af9ad10f8b5b16341c0aab8b9125","libm/src/math/atan2f.rs":"dd01943e0e1f1955912e5c3ffc9467529cf64bd02ac0a6ad5ab31dbe6657f05d","libm/src/math/cos.rs":"74babdc13ede78e400c5ca1854c3e22d2e08cbdc5618aefa5bba6f9303ef65b6","libm/src/math/truncf.rs":"619b675b6a9bb81eccddb1fa8214cff63e1f62136629b645c87f036672311732","src/int/udiv.rs":"9a222e79c0bf74ab77728cfa2026508508b33e7f2ac6cafc1fa34040e5538ba0","src/int/sdiv.rs":"ca47f2a41fe0aad1e37f4e56ab1e0959c5b10c32c3593596c8cef2ff17694389","libm/src/math/exp.rs":"ca7405ad0d1993fffcf9aae96f9256307bed3c4916545aaebd1cf1d2df1807fa","libm/src/math/j1.rs":"97b1af1611fa3d110c2b349ee8e4176100132ea1391b619086b47ac063b81803","libm/src/math/sqrt.rs":"824570a631c2542ccee68b65e3eb08fe79c037a29bbaaf54da5367e7b236124a","libm/src/math/ldexpf.rs":"98743fad2cd97a7be496f40ba3157ac1438fce0d0c25d5ab90c3b8c71c3fd0ed","src/float/add.rs":"1a230ed4e17148cfffb7c880929c9c0d5d48d85581d75164c5031b8f05a5d567","libm/src/math/floorf.rs":"4ec41aa64cfafd23b8cfc043eacea5e9125cca5dcb3f5e655cc3d3458c6ba2c5","src/float/sub.rs":"c2a87f4628f51d5d908d0f25b5d51ce0599dc559d5a72b20e131261f484d5848","libm/src/math/remquof.rs":"cc749e18ecb7e766b8b8eeabdbf89ac99087d3d587e71e30f690676a3d2c1f9b","libm/src/math/tgamma.rs":"a6aabb8365410af6611f19f58694ccb74e82bb9ba9e1cdec7e1af787cfa44815","libm/src/math/fenv.rs":"8730d45aa4c591f91dccdcc1ce533fa23e9c6df0c38defb9c57f749cb25e1cd0","libm/src/math/atan2.rs":"2623bc8ca707d13a7092ce49adf68e9cbf4452ad1bf4a861dc40ca858606a747","libm/src/math/ldexp.rs":"b647f0096e80e4d926d8dd18d294c892ee2cb1778effe2c5e1b2664ae5cb1a4e","libm/src/math/fabs.rs":"e6c7db39f98508098cdf64ac0c2f53866c466149a7490afb9fe22b44c4dd81b3","libm/src/math/fabsf.rs":"dc85b66e4ef662721276ae3a301af22795524e4367ee8dd40f0c24c439773c6d","libm/src/math/hypotf.rs":"5f317323edc2eb699580fe54b074b7e570a7734d51a0a149c0b49b54470a836c","libm/src/math/rem_pio2.rs":"9be99c44493b2b7088578c0fa2872630725b2da544c751516df0c6c686112a43","libm/src/math/atanh.rs":"5934dbd6b7395ca4f103ace7598da723a9270e1cf6b47e7f786debe4bb3651ff","libm/src/math/sin.rs":"0e014e6377c9673a73395ab2ffcf5962e512392afddf8a4e731fb694098faf34","libm/src/math/cbrt.rs":"f2c45612d2eecd93cfcdd9ebf824c754fc8f8dfd6d16862c0b9c4ccea78c2a0f","libm/src/math/expm1f.rs":"18e2116d31ea8410051cc709b9d04b754b0e3ba6758ee1bf0b48749f4999b840","libm/src/math/asinf.rs":"49cccb4db2881982643a4a7d5453f4f8daf527711bbb67313607a3c178856d61","libm/src/math/trunc.rs":"642264897cc1505e720c8cf313be81aa9fd53aae866644a2e988d01dbc77fd8a","libm/src/math/expo2.rs":"4f4f9fecfccb43f30c2784aa7c0bb656754a52b8ab431f7d1b551c673ab133f1","libm/src/math/k_sinf.rs":"2775fcc710807164e6f37a4f8da3c8143cd5f16e19ce7c31c5591522151d7a96","libm/src/math/fmodf.rs":"ee51ed092c0eeb8195f35735ff725cfd46612e0d689a7c483538bd92fbe61828","libm/src/math/nextafter.rs":"3282e7eef214a32736fb6928d490198ad394b26b402b45495115b104839eebfe","libm/src/math/k_sin.rs":"14b2aba6ca07150c92768b5a72acaf5cde6a11d6619e14896512a7ba242e289a","libm/src/math/erff.rs":"cb020e8bada9a54573a11fe3271750d73f14fed3092a881a9ceaf98fe32fd5a6","libm/src/math/acos.rs":"fb066ba84aba1372d706425ec14f35ff8d971756d15eeebd22ecf42a716493bb","libm/src/math/asin.rs":"095a1e98996daff45df0b154ca0ec35bbf31db964ee9fdda0207308cb20df441","libm/src/math/atan.rs":"d4fe46e1c5739dd09997869dcfbc3c85f03c534af52e700d6c6bcf9c3fedda07","libm/src/math/tgammaf.rs":"c95bd69957387533853532164f7e2251d2b04f5e775406b9e647226ae2bdd5ad","libm/src/math/log.rs":"b5e0c5f30d9e94351488732801be3107c12b854c3f95ad37e256dd88eeca408f","libm/src/math/hypot.rs":"841131c4a0cea75bc8a86e29f3f6d0815a61fc99731c9984651ce83d3050d218","libm/src/math/fmin.rs":"95b6cb66ca0e0e22276f0bf88dbe8fb69796a69a196a7491bd4802efbcf2e298","libm/src/math/k_tan.rs":"a72beae4ccd9631eeeb61d6365bbeecae81c8411f3120a999c515cca0d5ea5c5","libm/src/math/sinf.rs":"dcddac1d56b084cbb8d0e019433c9c5fe2201d9b257a7dcf2f85c9a8f14b79cf","libm/src/math/lgamma.rs":"498552658cc8106d7754f85ae8dbc3306ac2f0a9f7eb5a796be70c5beac92c41","README.md":"2dd28b207028773ffee09ed0db563ac71b255b6b67256289d67a13cb19d15f94","libm/src/math/k_tanf.rs":"6a794be56fa4b2f60452b9bab19af01c388f174560acbf829a351378ea39495d","libm/src/math/mod.rs":"ffa73c08f4c0a4dc6c9d1cb9d62fe97f3a5046edede128c9441cc3adc9170dd3","libm/src/math/frexp.rs":"28af70026922a8ab979744c7ad4d8faba6079c4743b7eeb6d14c983a982fbbcc","libm/src/math/coshf.rs":"be8ca8739e4cf1978425b349f941cb4838bba8c10cb559c7940b9fd4fdde21ad","libm/src/math/copysignf.rs":"1547116071e68a42b1605eb2fc722db6466a34517dc96b92de1f29a274c3d8e3","src/float/div.rs":"58bdcd73c5ffafde9cca8a0e7986de0660fb8b5b4d4132e7a63dd21f93f4fe0e","libm/src/math/exp2.rs":"94a9304a2ce3bc81f6d2aefd3cde6faa30f13260d46cb13692863cdea1c9a3a1","src/arm.rs":"2035935972d728031d31d35067f0ec474f1c3b1ab86e166130d29df266b09b90","libm/src/math/tanhf.rs":"74027b0c672a4e64bdef6d7a3069b90caec50e1e7dbb2c12d2828f310502f41e","src/x86_64.rs":"3ffbefe3bdc75cd4674ba1bbab9029bc4d6d8635f5e0b1fe30329ec6209bfd8a","libm/src/math/log2.rs":"dbbbfbaaa8aa6a4dbefea554ea3983090a9691228b011910c751f6adca912c40","libm/src/math/roundf.rs":"8ae8f1f71eedd158566771cfe80b352d2f13c170a0ce8dc2691a14e8a791cfbb","libm/src/math/acoshf.rs":"df5b0c4d8e37e64cf5ff2d8328b28bc35c78e84060ff769e64523ea9ff9065c1","src/float/mod.rs":"d15b78070d824f5523f12d55fc084879b638241324451dbcd0ac291589c53125","src/float/conv.rs":"0af148b6c717d124e870e5d1926eaa562de37e374c605ea81c1f7eea994146f4","libm/src/math/k_expo2f.rs":"d51ad5df61cb5d1258bdb90c52bfed4572bb446a9337de9c04411ed9454ae0cb","libm/src/math/atanf.rs":"e41b41569474a59c970ede3538e00bda4072cf4d90040017101cc79d7dc28caa","libm/src/math/logf.rs":"845342cffc34d3db1f5ec12d8e5b773cd5a79056e28662fcb9bcd80207596f50","libm/src/math/remainderf.rs":"dd3fa432dbda8f2135428198be7bd69c57f8d13df3f365b12f52bf6a82352ac4","libm/src/math/sinh.rs":"d8ee4c7af883a526f36c1a6da13bb81fba9181b477e2f2538161a2bee97edc35","libm/src/math/acosh.rs":"56dac8538e4350cd7cf001327c89f087b68abb2e6aaad58edba8a094b09f6b0f","src/float/extend.rs":"180b2e791c58e0526de0a798845c580ce3222c8a15c8665e6e6a4bf5cf1a34aa","libm/src/math/ilogbf.rs":"dec462780f46682e16cfaa733238bed3b692729e951f53a44726100b6c73a716","libm/src/math/expm1.rs":"124069f456c8ad331f265c7509d9e223b2a300e461bbfd3d6adfdcdd2ee5b8ac","libm/src/math/ceilf.rs":"f942bcea617de7da880b68bdfe676837a7984e2a887eaafe181be24c6bc13cc2","libm/src/math/modff.rs":"f8f1e4c27a85d2cdb3c8e74439d59ef64aa543b948f22c23227d02d8388d61c2","libm/src/math/expf.rs":"ec14c18f891a9e37735ec39e6fc2e9bf674a2c2e083f22e2533b481177359c98","src/lib.rs":"da4433593615a60f05aff9f5252f15350e537d97dfa96e6536619545dd173851","libm/src/math/pow.rs":"64fba587143fa88cdfa5c9d30b658ab03e3a19e3ea3759394836add4068983c6","libm/src/math/fma.rs":"6872e79787e9270520189b53608f602b8ad5a099f3cef10ad5b9e0c06ef01fe0","libm/src/math/tan.rs":"930ecedaadc60f704c2dfa4e15186f59713c1ba7d948529d215223b424827db5","src/riscv32.rs":"b9b433d248fce35e43a7df430697545f39898fad46be7d0197284764e44993b2","libm/src/math/k_cosf.rs":"8f7117ff21cebf8e890a5bcfd7ea858a94172f4172b79a66d53824c2cb0888b1","libm/src/math/rem_pio2_large.rs":"21762d08d72dc6f2e313123a7311683000974a09b8fcae50994d9c39239721b1","Cargo.lock":"1dfa9c1f68c8e0f1d1fc90ed0712a3eeb2ea68478064c19d601249f60acde4a1","libm/src/math/sinhf.rs":"d06eb030ba9dbf7094df127262bfe99f149b4db49fa8ab8c15499660f1e46b26","src/x86.rs":"068e456417d4740f048800da1d18eb49dd85f85604e5e383446331925e1effc3","libm/src/math/erf.rs":"9c55fc6756ba816996f0b585e07ccfa4cd87575ad525cd30c4a968b30acffda3","libm/src/math/log1pf.rs":"2716e6d2afa271996b7c8f47fd9e4952c88f4c1fd8c07c3e8ce8c62794bf71d8","libm/src/math/ilogb.rs":"813413bf6266d4fc40db9c5921af3cef4f892ba93e8f6d9efe62a449d1234532","libm/src/math/fminf.rs":"304bc839b15ea3d84e68d2af9f40524ec120d30a36a667b22fcb98a6c258f4c7","src/macros.rs":"9f3aa9b66195b258ff29209c6b1e7962d6f82d31579d669dd74c9fdeee134170","src/probestack.rs":"c1ad1e4a9550a3507bcbec00c8917530a954ba971c02506aeec949381443674a","libm/src/math/j0f.rs":"802c8254bded9b3afb6eea8b9af240038a5a4a5d811396729f69ca509e3e7d87","libm/src/math/log1p.rs":"9cf400852f165e6be19b97036ae9521fb9ca857d0a9a91c117d9123221622185","libm/src/math/scalbn.rs":"b5c9d6d4177fe393cbfe1c634d75ce14b754f6cbce87c5bf979a9661491748a2","libm/src/math/cosf.rs":"09c40f93c445b741e22477ceedf163ca33b6a47f973f7c9876cfba2692edb29c","libm/src/math/lgammaf.rs":"457105f53a4c8717e8f5a117d261dcf94e222e83981337fe23602abe883fe3f7","libm/src/math/sincos.rs":"59e9f196140681fa817652134b8d1bdd2d6dd47bb8557b0346c77b176389f883","libm/src/math/ceil.rs":"0e6caff1597818471c28b7c3226dbfe9976fdb38ace5246172ac030754be6b79","libm/src/math/fmaf.rs":"3e0f5727e56f31218f674b9b8975d7e67b3a24a097f06a2a3eca9723cd786213","src/int/addsub.rs":"9e7a393c76958fe9e8fb7de9bfe1304766c276bfdaa25761913357e0f6172369","src/float/cmp.rs":"a86ccbc0e56f07ba439dc6a4fd835184645178c0a6da625bd4ae24ecf9a790f8","libm/src/math/asinh.rs":"e8fc94031015fddf35e9c26b94da9f6431ee17c81cd7bd37da8ffc98f7e0b32c","libm/src/math/jnf.rs":"4045076f7d1a1b89882ed60d4dd60a4cbbc66b85cfb90491378c8015effcc476","libm/src/math/log10.rs":"3425ff8be001fd1646ba15e254eb6ef4bdc6ccaf0cbee27ddf1fa84e04178b90","libm/src/math/log2f.rs":"92a90350d8edce21c31c285c3e620fca7c62a2366008921715945c2c73b5b79f","libm/src/math/fmax.rs":"f6c8e96a8b1a170648d2fa3513e7b6b459085d708c839869f82e305fe58fac37","libm/src/math/fdim.rs":"8ec091996005207297c2389ae563e1b18dbc6a9eac951de29a976c5cd7bc32a7","libm/src/math/exp2f.rs":"785f2630accd35118ec07bf60273e219ed91a215b956b1552eeea5bc2a708cc8","src/mem.rs":"4ece60ca07aaff3611a716a80f55668a785ad8399b65fc36cc9ab4b481fa639c","libm/src/math/fdimf.rs":"c7f3f2269834d55be26b6580ddc07c42531577955fa4de35bad1e2a361085614","libm/src/math/lgammaf_r.rs":"44de75babbdd53c4a5879cd6f426e7311db82669def39df5f63914d67d6cc1b1","libm/src/math/powf.rs":"2c423a0ea57fdc4e20f3533f744c6e6288c998b4de8f2914fafaa0e78be81b04","src/int/mod.rs":"d15781df9dc054aa11e23f4825152ae9c609aab15bf43599ff07ff683f513643","libm/src/math/copysign.rs":"d80c880efaf0cdf2ce0a4d4f5a68dd6c36c88d46fa997ec8ac8604bfdb26fa33","src/float/pow.rs":"64f4935f4bed46d3b9cde4d16f59cca76a110d36d02d76f4b909157349edf5e3","libm/src/math/modf.rs":"d012ed5a708ef52b6d1313c22a46cadaf5764dde1220816e3df2f03a0fcc60ae","libm/src/math/fmaxf.rs":"dff0025433232e8a5ec7bd54d847ccf596d762ea4e35f5c54fbaac9404d732fd","build.rs":"a47b5ed5c7d2a6f2fbc3e9803a8d4f75839db9ac03aa4fab72932d899ecb590f","libm/src/math/log10f.rs":"fee4f71879bc4c99259e68c0c641364901629fb29a8ebddfcc0d090102cceddd","libm/src/math/jn.rs":"847d122334e5707ad9627146cddccc082a1f2f5bcd3e5ef54399013a7007ce88"},"package":"7bc4ac2c824d2bfc612cba57708198547e9a26943af0632aff033e0693074d5c"}
-\ No newline at end of file
-diff --git a/vendor/compiler_builtins/build.rs b/vendor/compiler_builtins/build.rs
-index abeac9bf1..c57802569 100644
---- a/vendor/compiler_builtins/build.rs
-+++ b/vendor/compiler_builtins/build.rs
-@@ -81,7 +81,7 @@ mod c {
- 
-     use std::collections::BTreeMap;
-     use std::env;
--    use std::path::PathBuf;
-+    use std::path::{Path, PathBuf};
- 
-     struct Sources {
-         // SYMBOL -> PATH TO SOURCE
-@@ -419,6 +419,37 @@ mod c {
-             if target_os != "windows" {
-                 sources.extend(&[("__multc3", "multc3.c")]);
-             }
-+
-+            if target_env == "musl" {
-+                sources.extend(&[
-+                    ("__addtf3", "addtf3.c"),
-+                    ("__multf3", "multf3.c"),
-+                    ("__subtf3", "subtf3.c"),
-+                    ("__divtf3", "divtf3.c"),
-+                    ("__powitf2", "powitf2.c"),
-+                    ("__fe_getround", "fp_mode.c"),
-+                    ("__fe_raise_inexact", "fp_mode.c"),
-+                ]);
-+            }
-+        }
-+
-+        if target_arch == "mips" {
-+            sources.extend(&[("__bswapsi2", "bswapsi2.c")]);
-+        }
-+
-+        if target_arch == "mips64" {
-+            sources.extend(&[
-+                ("__extenddftf2", "extenddftf2.c"),
-+                ("__netf2", "comparetf2.c"),
-+                ("__addtf3", "addtf3.c"),
-+                ("__multf3", "multf3.c"),
-+                ("__subtf3", "subtf3.c"),
-+                ("__fixtfsi", "fixtfsi.c"),
-+                ("__floatsitf", "floatsitf.c"),
-+                ("__fixunstfsi", "fixunstfsi.c"),
-+                ("__floatunsitf", "floatunsitf.c"),
-+                ("__fe_getround", "fp_mode.c"),
-+            ]);
-         }
- 
-         // Remove the assembly implementations that won't compile for the target
-@@ -456,7 +487,20 @@ mod c {
-         // use of that macro in lib/builtins/int_util.h in compiler-rt.
-         cfg.flag_if_supported(&format!("-ffile-prefix-map={}=.", root.display()));
- 
-+        // Include out-of-line atomics for aarch64, which are all generated by supplying different
-+        // sets of flags to the same source file.
-         let src_dir = root.join("lib/builtins");
-+        if target_arch == "aarch64" {
-+            let atomics_libs = build_aarch64_out_of_line_atomics_libraries(&src_dir, cfg);
-+            if !atomics_libs.is_empty() {
-+                for library in  atomics_libs {
-+                    cfg.object(library);
-+                }
-+                // Some run-time CPU feature detection is necessary, as well.
-+                sources.extend(&[("__aarch64_have_lse_atomics", "cpu_model.c")]);
-+            }
-+        }
-+
-         for (sym, src) in sources.map.iter() {
-             let src = src_dir.join(src);
-             cfg.file(&src);
-@@ -466,4 +510,60 @@ mod c {
- 
-         cfg.compile("libcompiler-rt.a");
-     }
-+
-+    fn build_aarch64_out_of_line_atomics_libraries(
-+        builtins_dir: &Path,
-+        cfg: &cc::Build,
-+    ) -> Vec<PathBuf> {
-+        // NOTE: because we're recompiling the same source file in N different ways, building
-+        // serially is necessary. If we want to lift this restriction, we can either:
-+        // - create symlinks to lse.S and build those_(though we'd still need to pass special
-+        //   #define-like flags to each of these), or
-+        // - synthesizing tiny .S files in out/ with the proper #defines, which ultimately #include
-+        //   lse.S.
-+        // That said, it's unclear how useful this added complexity will be, so just do the simple
-+        // thing for now.
-+        let outlined_atomics_file = builtins_dir.join("aarch64/lse.S");
-+
-+        // A stable release hasn't been made with lse.S yet. Until we pick that up, do nothing.
-+        if !outlined_atomics_file.exists() {
-+            return vec![];
-+        }
-+
-+        println!("cargo:rerun-if-changed={}", outlined_atomics_file.display());
-+        let out_dir: PathBuf = env::var("OUT_DIR").unwrap().into();
-+
-+        // Ideally, this would be a Vec of object files, but cc doesn't make it *entirely*
-+        // trivial to build an individual object.
-+        let mut atomics_libraries = Vec::new();
-+        for instruction_type in &["cas", "cwp", "ldadd", "ldclr", "ldeor", "ldset"] {
-+            for size in &[1, 2, 4, 8, 16] {
-+                if *size == 16 && *instruction_type != "cas" {
-+                    continue;
-+                }
-+
-+                for (model_number, model_name) in
-+                    &[(1, "relax"), (2, "acq"), (3, "rel"), (4, "acq_rel")]
-+                {
-+                    let library_name = format!(
-+                        "liboutline_atomic_helper_{}_{}_{}.a",
-+                        instruction_type, size, model_name
-+                    );
-+                    let sym = format!("__aarch64_{}{}_{}", instruction_type, size, model_name);
-+                    let mut cfg = cfg.clone();
-+
-+                    cfg.include(&builtins_dir)
-+                        .define(&format!("L_{}", instruction_type), None)
-+                        .define("SIZE", size.to_string().as_str())
-+                        .define("MODEL", model_number.to_string().as_str())
-+                        .file(&outlined_atomics_file);
-+                    cfg.compile(&library_name);
-+
-+                    atomics_libraries.push(out_dir.join(library_name));
-+                    println!("cargo:rustc-cfg={}=\"optimized-c\"", sym);
-+                }
-+            }
-+        }
-+        atomics_libraries
-+    }
- }
diff --git a/dev-lang/rust/files/rust-1.47.0-add-cros-targets.patch b/dev-lang/rust/files/rust-1.47.0-add-cros-targets.patch
deleted file mode 100644
index 49e67f4..0000000
--- a/dev-lang/rust/files/rust-1.47.0-add-cros-targets.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-Because of crbug.com/711369, armv7 target triple's arch and ABI parts differ
-between chromeos and the rust. Until that bug is fixed, we have to add our own
-triple for armv7.
-
-Additionally, the Rust compiler does not implement a fallback for unknown
-target triple vendors (e.g. "cros" or "pc") to the "unknown" variant, so we
-add copies of the relevant cros targets here as well.
-
-diff --git a/src/librustc_target/spec/mod.rs b/src/librustc_target/spec/mod.rs
-index 67f45d3d230..51e0eef6630 100644
---- a/src/librustc_target/spec/mod.rs
-+++ b/src/librustc_target/spec/mod.rs
-@@ -335,6 +335,8 @@ macro_rules! supported_targets {
- supported_targets! {
-     ("x86_64-unknown-linux-gnu", x86_64_unknown_linux_gnu),
-     ("x86_64-unknown-linux-gnux32", x86_64_unknown_linux_gnux32),
-+    ("x86_64-pc-linux-gnu", x86_64_pc_linux_gnu),
-+    ("x86_64-cros-linux-gnu", x86_64_cros_linux_gnu),
-     ("i686-unknown-linux-gnu", i686_unknown_linux_gnu),
-     ("i586-unknown-linux-gnu", i586_unknown_linux_gnu),
-     ("mips-unknown-linux-gnu", mips_unknown_linux_gnu),
-@@ -364,11 +366,13 @@ supported_targets! {
-     ("armv5te-unknown-linux-musleabi", armv5te_unknown_linux_musleabi),
-     ("armv7-unknown-linux-gnueabi", armv7_unknown_linux_gnueabi),
-     ("armv7-unknown-linux-gnueabihf", armv7_unknown_linux_gnueabihf),
-+    ("armv7a-cros-linux-gnueabihf", armv7a_cros_linux_gnueabihf),
-     ("thumbv7neon-unknown-linux-gnueabihf", thumbv7neon_unknown_linux_gnueabihf),
-     ("thumbv7neon-unknown-linux-musleabihf", thumbv7neon_unknown_linux_musleabihf),
-     ("armv7-unknown-linux-musleabi", armv7_unknown_linux_musleabi),
-     ("armv7-unknown-linux-musleabihf", armv7_unknown_linux_musleabihf),
-     ("aarch64-unknown-linux-gnu", aarch64_unknown_linux_gnu),
-+    ("aarch64-cros-linux-gnu", aarch64_cros_linux_gnu),
-     ("aarch64-unknown-linux-musl", aarch64_unknown_linux_musl),
-     ("x86_64-unknown-linux-musl", x86_64_unknown_linux_musl),
-     ("i686-unknown-linux-musl", i686_unknown_linux_musl),
diff --git a/dev-lang/rust/files/rust-1.47.0-cc.patch b/dev-lang/rust/files/rust-1.47.0-cc.patch
deleted file mode 100644
index b2651c1..0000000
--- a/dev-lang/rust/files/rust-1.47.0-cc.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-If the CC environment variable is set, use its value instead of hardcoding "cc".
-This fixes crbug.com/1090829.
-
-diff --git a/src/librustc_codegen_ssa/back/link.rs b/src/librustc_codegen_ssa/back/link.rs
-index 8725bfa..5984569 100644
---- a/src/librustc_codegen_ssa/back/link.rs
-+++ b/src/librustc_codegen_ssa/back/link.rs
-@@ -752,12 +752,12 @@ fn linker_and_flavor(sess: &Session) -> (PathBuf, LinkerFlavor) {
-             (Some(linker), Some(flavor)) => Some((linker, flavor)),
-             // only the linker flavor is known; use the default linker for the selected flavor
-             (None, Some(flavor)) => Some((
--                PathBuf::from(match flavor {
-+                match flavor {
-                     LinkerFlavor::Em => {
-                         if cfg!(windows) {
--                            "emcc.bat"
-+                            "emcc.bat".into()
-                         } else {
--                            "emcc"
-+                            "emcc".into()
-                         }
-                     }
-                     LinkerFlavor::Gcc => {
-@@ -768,16 +768,19 @@ fn linker_and_flavor(sess: &Session) -> (PathBuf, LinkerFlavor) {
-                             // and many modern illumos distributions today
-                             // ship GCC as "gcc" without also making it
-                             // available as "cc".
--                            "gcc"
-+                            "gcc".into()
-                         } else {
--                            "cc"
-+                            match env::var_os("CC") {
-+                                Some(path) => path.into(),
-+                                None => "cc".into()
-+                            }
-                         }
-                     }
--                    LinkerFlavor::Ld => "ld",
--                    LinkerFlavor::Msvc => "link.exe",
--                    LinkerFlavor::Lld(_) => "lld",
--                    LinkerFlavor::PtxLinker => "rust-ptx-linker",
--                }),
-+                    LinkerFlavor::Ld => "ld".into(),
-+                    LinkerFlavor::Msvc => "link.exe".into(),
-+                    LinkerFlavor::Lld(_) => "lld".into(),
-+                    LinkerFlavor::PtxLinker => "rust-ptx-linker".into(),
-+                },
-                 flavor,
-             )),
-             (Some(linker), None) => {
diff --git a/dev-lang/rust/files/rust-1.47.0-cherry-dee70493-more-precise-spans.patch b/dev-lang/rust/files/rust-1.47.0-cherry-dee70493-more-precise-spans.patch
deleted file mode 100644
index be49db1..0000000
--- a/dev-lang/rust/files/rust-1.47.0-cherry-dee70493-more-precise-spans.patch
+++ /dev/null
@@ -1,187 +0,0 @@
-This is a cherrypick necessary to fix crbug.com/1141457
-
-It includes modifications to vendor/, since that's easier to modify in .patch
-form than uploading another tarball of these sources + manually adding
-`[patch.*]` directives to Cargo.toml files.
-
-rustc_parse: More precise spans for `tuple.0.0`
-https://github.com/rust-lang/rust/commit/dee704930d8a543e1a51cb706fe2216238cdcfef
-
-diff --git a/src/librustc_parse/parser/expr.rs b/src/librustc_parse/parser/expr.rs
-index f022c628fe2..60e2f6dda64 100644
---- a/src/librustc_parse/parser/expr.rs
-+++ b/src/librustc_parse/parser/expr.rs
-@@ -16,6 +16,7 @@ use rustc_ast_pretty::pprust;
- use rustc_errors::{Applicability, DiagnosticBuilder, PResult};
- use rustc_span::source_map::{self, Span, Spanned};
- use rustc_span::symbol::{kw, sym, Ident, Symbol};
-+use rustc_span::{BytePos, Pos};
- use std::mem;
- use tracing::debug;
- 
-@@ -839,9 +840,10 @@ impl<'a> Parser<'a> {
-         }
-         use FloatComponent::*;
- 
-+        let float_str = float.as_str();
-         let mut components = Vec::new();
-         let mut ident_like = String::new();
--        for c in float.as_str().chars() {
-+        for c in float_str.chars() {
-             if c == '_' || c.is_ascii_alphanumeric() {
-                 ident_like.push(c);
-             } else if matches!(c, '.' | '+' | '-') {
-@@ -857,8 +859,13 @@ impl<'a> Parser<'a> {
-             components.push(IdentLike(ident_like));
-         }
- 
--        // FIXME: Make the span more precise.
-+        // With proc macros the span can refer to anything, the source may be too short,
-+        // or too long, or non-ASCII. It only makes sense to break our span into components
-+        // if its underlying text is identical to our float literal.
-         let span = self.token.span;
-+        let can_take_span_apart =
-+            || self.span_to_snippet(span).as_deref() == Ok(float_str).as_deref();
-+
-         match &*components {
-             // 1e2
-             [IdentLike(i)] => {
-@@ -866,21 +873,40 @@ impl<'a> Parser<'a> {
-             }
-             // 1.
-             [IdentLike(i), Punct('.')] => {
-+                let (ident_span, dot_span) = if can_take_span_apart() {
-+                    let (span, ident_len) = (span.data(), BytePos::from_usize(i.len()));
-+                    let ident_span = span.with_hi(span.lo + ident_len);
-+                    let dot_span = span.with_lo(span.lo + ident_len);
-+                    (ident_span, dot_span)
-+                } else {
-+                    (span, span)
-+                };
-                 assert!(suffix.is_none());
-                 let symbol = Symbol::intern(&i);
--                self.token = Token::new(token::Ident(symbol, false), span);
--                let next_token = Token::new(token::Dot, span);
-+                self.token = Token::new(token::Ident(symbol, false), ident_span);
-+                let next_token = Token::new(token::Dot, dot_span);
-                 self.parse_tuple_field_access_expr(lo, base, symbol, None, Some(next_token))
-             }
-             // 1.2 | 1.2e3
-             [IdentLike(i1), Punct('.'), IdentLike(i2)] => {
-+                let (ident1_span, dot_span, ident2_span) = if can_take_span_apart() {
-+                    let (span, ident1_len) = (span.data(), BytePos::from_usize(i1.len()));
-+                    let ident1_span = span.with_hi(span.lo + ident1_len);
-+                    let dot_span = span
-+                        .with_lo(span.lo + ident1_len)
-+                        .with_hi(span.lo + ident1_len + BytePos(1));
-+                    let ident2_span = self.token.span.with_lo(span.lo + ident1_len + BytePos(1));
-+                    (ident1_span, dot_span, ident2_span)
-+                } else {
-+                    (span, span, span)
-+                };
-                 let symbol1 = Symbol::intern(&i1);
--                self.token = Token::new(token::Ident(symbol1, false), span);
--                let next_token1 = Token::new(token::Dot, span);
-+                self.token = Token::new(token::Ident(symbol1, false), ident1_span);
-+                let next_token1 = Token::new(token::Dot, dot_span);
-                 let base1 =
-                     self.parse_tuple_field_access_expr(lo, base, symbol1, None, Some(next_token1));
-                 let symbol2 = Symbol::intern(&i2);
--                let next_token2 = Token::new(token::Ident(symbol2, false), span);
-+                let next_token2 = Token::new(token::Ident(symbol2, false), ident2_span);
-                 self.bump_with(next_token2); // `.`
-                 self.parse_tuple_field_access_expr(lo, base1, symbol2, suffix, None)
-             }
-diff --git a/vendor/rustc-ap-rustc_parse/.cargo-checksum.json b/vendor/rustc-ap-rustc_parse/.cargo-checksum.json
-index 21a28917759..ad503e31574 100644
---- a/vendor/rustc-ap-rustc_parse/.cargo-checksum.json
-+++ b/vendor/rustc-ap-rustc_parse/.cargo-checksum.json
-@@ -1 +1 @@
--{"files":{"Cargo.toml":"fdc354817fe9143d72daf9b26675221e0127d5c8882295e44f127b068988bd88","lexer/mod.rs":"502c7635fa94f95d27965351d0890d3a67f131dd68b308309e122f5ac0f104f5","lexer/tokentrees.rs":"14ae9393b3d86dc5d92e19b35344c58b0fe060affa5cd800ea8561051b85c390","lexer/unescape_error_reporting.rs":"b275aa094d31dbcd6c19f6183e41ced96edd65b2cb6125c6a3053048f8b002a6","lexer/unicode_chars.rs":"8174dd5dfe5c70128c1f946af336c66e46740570d7869e3b1460148ea03045d5","lib.rs":"5182e554747fbdf5c8cbff36880c5a4d24ad31c27a79092538a5bde7b2437b51","parser/attr.rs":"41fe4550a0a5686eb4b19bc0d80121ce9a4e50761753df1dbfbdf883d7f63af2","parser/diagnostics.rs":"b716282b88549758395ee1924b1ab18f805c554ee28dcd24df3f70877ad8d3c4","parser/expr.rs":"f0faa067c926be5b1b0116a866f5a5db029349d09c197453568ac50d3b70bd6a","parser/generics.rs":"730eca3bce6d6f7a71fd31da95b0f5014907921fb992809585daf4887d818be1","parser/item.rs":"fa91561915bd6dd4b53bf0193ed4c64cbe3719402edcf18813e5f07ddbfd5d56","parser/mod.rs":"27cca1a3aafd4cd412159e31a5ad1dbefca2a3c07edfd2f66bfe66c5e3bc64bb","parser/pat.rs":"d22976738170562cad66913ae6ea481d7081c8ac14c392c52f66c23e62d7593b","parser/path.rs":"b3d3c36330be3e7706d672faff8c47bdfb0d268588efc981970a30a8eb36cee0","parser/stmt.rs":"1ed582ba7bffdc867a16ec178e9ddbc20cf3d20b51425cf2bd6d373cad82fef7","parser/ty.rs":"1b2c617c7f132ead48042523fdd86b15957b252c60cd0d2d217e3b8cf8a2f6e4","validate_attr.rs":"f5eaf614199d8ba67abd5f67266bfe2d30f7d886c0986f1079a5fe69474823e8"},"package":"065e632101bdd57a271f38ee7a4d72b5a3d0467ec845104346c284b2c6c69960"}
-\ No newline at end of file
-+{"files":{"Cargo.toml":"fdc354817fe9143d72daf9b26675221e0127d5c8882295e44f127b068988bd88","lexer/mod.rs":"502c7635fa94f95d27965351d0890d3a67f131dd68b308309e122f5ac0f104f5","lexer/tokentrees.rs":"14ae9393b3d86dc5d92e19b35344c58b0fe060affa5cd800ea8561051b85c390","lexer/unescape_error_reporting.rs":"b275aa094d31dbcd6c19f6183e41ced96edd65b2cb6125c6a3053048f8b002a6","lexer/unicode_chars.rs":"8174dd5dfe5c70128c1f946af336c66e46740570d7869e3b1460148ea03045d5","lib.rs":"5182e554747fbdf5c8cbff36880c5a4d24ad31c27a79092538a5bde7b2437b51","parser/attr.rs":"41fe4550a0a5686eb4b19bc0d80121ce9a4e50761753df1dbfbdf883d7f63af2","parser/diagnostics.rs":"b716282b88549758395ee1924b1ab18f805c554ee28dcd24df3f70877ad8d3c4","parser/expr.rs":"411640b7297d52eacc05ee580910dcf820a7a3e32c9c0bc64036c26069a13c98","parser/generics.rs":"730eca3bce6d6f7a71fd31da95b0f5014907921fb992809585daf4887d818be1","parser/item.rs":"fa91561915bd6dd4b53bf0193ed4c64cbe3719402edcf18813e5f07ddbfd5d56","parser/mod.rs":"27cca1a3aafd4cd412159e31a5ad1dbefca2a3c07edfd2f66bfe66c5e3bc64bb","parser/pat.rs":"d22976738170562cad66913ae6ea481d7081c8ac14c392c52f66c23e62d7593b","parser/path.rs":"b3d3c36330be3e7706d672faff8c47bdfb0d268588efc981970a30a8eb36cee0","parser/stmt.rs":"1ed582ba7bffdc867a16ec178e9ddbc20cf3d20b51425cf2bd6d373cad82fef7","parser/ty.rs":"1b2c617c7f132ead48042523fdd86b15957b252c60cd0d2d217e3b8cf8a2f6e4","validate_attr.rs":"f5eaf614199d8ba67abd5f67266bfe2d30f7d886c0986f1079a5fe69474823e8"},"package":"065e632101bdd57a271f38ee7a4d72b5a3d0467ec845104346c284b2c6c69960"}
-diff --git a/vendor/rustc-ap-rustc_parse/parser/expr.rs b/vendor/rustc-ap-rustc_parse/parser/expr.rs
-index d06b172bc14..7ea6b5b0650 100644
---- a/vendor/rustc-ap-rustc_parse/parser/expr.rs
-+++ b/vendor/rustc-ap-rustc_parse/parser/expr.rs
-@@ -17,6 +17,7 @@ use rustc_ast_pretty::pprust;
- use rustc_errors::{Applicability, DiagnosticBuilder, PResult};
- use rustc_span::source_map::{self, Span, Spanned};
- use rustc_span::symbol::{kw, sym, Ident, Symbol};
-+use rustc_span::{BytePos, Pos};
- use std::mem;
- 
- /// Possibly accepts an `token::Interpolated` expression (a pre-parsed expression
-@@ -809,9 +810,10 @@ impl<'a> Parser<'a> {
-         }
-         use FloatComponent::*;
- 
-+        let float_str = float.as_str();
-         let mut components = Vec::new();
-         let mut ident_like = String::new();
--        for c in float.as_str().chars() {
-+        for c in float_str.chars() {
-             if c == '_' || c.is_ascii_alphanumeric() {
-                 ident_like.push(c);
-             } else if matches!(c, '.' | '+' | '-') {
-@@ -827,8 +829,13 @@ impl<'a> Parser<'a> {
-             components.push(IdentLike(ident_like));
-         }
- 
--        // FIXME: Make the span more precise.
-+        // With proc macros the span can refer to anything, the source may be too short,
-+        // or too long, or non-ASCII. It only makes sense to break our span into components
-+        // if its underlying text is identical to our float literal.
-         let span = self.token.span;
-+        let can_take_span_apart =
-+            || self.span_to_snippet(span).as_deref() == Ok(float_str).as_deref();
-+
-         match &*components {
-             // 1e2
-             [IdentLike(i)] => {
-@@ -836,21 +843,40 @@ impl<'a> Parser<'a> {
-             }
-             // 1.
-             [IdentLike(i), Punct('.')] => {
-+                let (ident_span, dot_span) = if can_take_span_apart() {
-+                    let (span, ident_len) = (span.data(), BytePos::from_usize(i.len()));
-+                    let ident_span = span.with_hi(span.lo + ident_len);
-+                    let dot_span = span.with_lo(span.lo + ident_len);
-+                    (ident_span, dot_span)
-+                } else {
-+                    (span, span)
-+                };
-                 assert!(suffix.is_none());
-                 let symbol = Symbol::intern(&i);
--                self.token = Token::new(token::Ident(symbol, false), span);
--                let next_token = Token::new(token::Dot, span);
-+                self.token = Token::new(token::Ident(symbol, false), ident_span);
-+                let next_token = Token::new(token::Dot, dot_span);
-                 self.parse_tuple_field_access_expr(lo, base, symbol, None, Some(next_token))
-             }
-             // 1.2 | 1.2e3
-             [IdentLike(i1), Punct('.'), IdentLike(i2)] => {
-+                let (ident1_span, dot_span, ident2_span) = if can_take_span_apart() {
-+                    let (span, ident1_len) = (span.data(), BytePos::from_usize(i1.len()));
-+                    let ident1_span = span.with_hi(span.lo + ident1_len);
-+                    let dot_span = span
-+                        .with_lo(span.lo + ident1_len)
-+                        .with_hi(span.lo + ident1_len + BytePos(1));
-+                    let ident2_span = self.token.span.with_lo(span.lo + ident1_len + BytePos(1));
-+                    (ident1_span, dot_span, ident2_span)
-+                } else {
-+                    (span, span, span)
-+                };
-                 let symbol1 = Symbol::intern(&i1);
--                self.token = Token::new(token::Ident(symbol1, false), span);
--                let next_token1 = Token::new(token::Dot, span);
-+                self.token = Token::new(token::Ident(symbol1, false), ident1_span);
-+                let next_token1 = Token::new(token::Dot, dot_span);
-                 let base1 =
-                     self.parse_tuple_field_access_expr(lo, base, symbol1, None, Some(next_token1));
-                 let symbol2 = Symbol::intern(&i2);
--                let next_token2 = Token::new(token::Ident(symbol2, false), span);
-+                let next_token2 = Token::new(token::Ident(symbol2, false), ident2_span);
-                 self.bump_with(next_token2); // `.`
-                 self.parse_tuple_field_access_expr(lo, base1, symbol2, suffix, None)
-             }
diff --git a/dev-lang/rust/files/rust-1.47.0-enable-sanitizers.patch b/dev-lang/rust/files/rust-1.47.0-enable-sanitizers.patch
deleted file mode 100644
index 055bcfb..0000000
--- a/dev-lang/rust/files/rust-1.47.0-enable-sanitizers.patch
+++ /dev/null
@@ -1,240 +0,0 @@
-Sanitizer runtimes are currently behind the `-Z` flag, which is only available
-on nightly builds of the compiler.  We would like to enable fuzzing on chrome
-os anyway so move the sanitizer option under `-C` instead since we don't build
-the toolchain in nightly mode.
-
-The changes this patch makes are:
- - changing debugging_opts.sanitizer to cg.sanitizer.
- - add the appropriate options to options.rs.
-
-diff --git a/src/librustc_codegen_llvm/attributes.rs b/src/librustc_codegen_llvm/attributes.rs
-index 227a87ff819..7d9682883a8 100644
---- a/src/librustc_codegen_llvm/attributes.rs
-+++ b/src/librustc_codegen_llvm/attributes.rs
-@@ -46,7 +46,7 @@ fn inline(cx: &CodegenCx<'ll, '_>, val: &'ll Value, inline: InlineAttr) {
- /// Apply LLVM sanitize attributes.
- #[inline]
- pub fn sanitize(cx: &CodegenCx<'ll, '_>, no_sanitize: SanitizerSet, llfn: &'ll Value) {
--    let enabled = cx.tcx.sess.opts.debugging_opts.sanitizer - no_sanitize;
-+    let enabled = cx.tcx.sess.opts.cg.sanitizer - no_sanitize;
-     if enabled.contains(SanitizerSet::ADDRESS) {
-         llvm::Attribute::SanitizeAddress.apply_llfn(Function, llfn);
-     }
-@@ -113,13 +113,7 @@ fn set_probestack(cx: &CodegenCx<'ll, '_>, llfn: &'ll Value) {
-     // Currently stack probes seem somewhat incompatible with the address
-     // sanitizer and thread sanitizer. With asan we're already protected from
-     // stack overflow anyway so we don't really need stack probes regardless.
--    if cx
--        .sess()
--        .opts
--        .debugging_opts
--        .sanitizer
--        .intersects(SanitizerSet::ADDRESS | SanitizerSet::THREAD)
--    {
-+    if cx.sess().opts.cg.sanitizer.intersects(SanitizerSet::ADDRESS | SanitizerSet::THREAD) {
-         return;
-     }
- 
-diff --git a/src/librustc_codegen_ssa/back/link.rs b/src/librustc_codegen_ssa/back/link.rs
-index bfcf979d125..3f279259402 100644
---- a/src/librustc_codegen_ssa/back/link.rs
-+++ b/src/librustc_codegen_ssa/back/link.rs
-@@ -785,7 +785,7 @@ fn link_sanitizers(sess: &Session, crate_type: CrateType, linker: &mut dyn Linke
-         return;
-     }
- 
--    let sanitizer = sess.opts.debugging_opts.sanitizer;
-+    let sanitizer = sess.opts.cg.sanitizer;
-     if sanitizer.contains(SanitizerSet::ADDRESS) {
-         link_sanitizer_runtime(sess, linker, "asan");
-     }
-@@ -821,9 +821,13 @@ fn link_sanitizer_runtime(sess: &Session, linker: &mut dyn Linker, name: &str) {
-         }
-         "aarch64-fuchsia"
-         | "aarch64-unknown-linux-gnu"
-+        | "aarch64-cros-linux-gnu"
-+        | "armv7a-cros-linux-gnueabihf"
-         | "x86_64-fuchsia"
-         | "x86_64-unknown-freebsd"
--        | "x86_64-unknown-linux-gnu" => {
-+        | "x86_64-unknown-linux-gnu"
-+        | "x86_64-cros-linux-gnu"
-+        | "x86_64-pc-linux-gnu" => {
-             let filename = format!("librustc{}_rt.{}.a", channel, name);
-             let path = default_tlib.join(&filename);
-             linker.link_whole_rlib(&path);
-@@ -1596,11 +1600,8 @@ fn linker_with_args<'a, B: ArchiveBuilder<'a>>(
- 
-     // NO-OPT-OUT, OBJECT-FILES-NO, AUDIT-ORDER
-     if sess.target.target.options.is_like_fuchsia && crate_type == CrateType::Executable {
--        let prefix = if sess.opts.debugging_opts.sanitizer.contains(SanitizerSet::ADDRESS) {
--            "asan/"
--        } else {
--            ""
--        };
-+        let prefix =
-+            if sess.opts.cg.sanitizer.contains(SanitizerSet::ADDRESS) { "asan/" } else { "" };
-         cmd.arg(format!("--dynamic-linker={}ld.so.1", prefix));
-     }
- 
-diff --git a/src/librustc_codegen_ssa/back/symbol_export.rs b/src/librustc_codegen_ssa/back/symbol_export.rs
-index 51cc1ada432..e57a885db5c 100644
---- a/src/librustc_codegen_ssa/back/symbol_export.rs
-+++ b/src/librustc_codegen_ssa/back/symbol_export.rs
-@@ -203,7 +203,7 @@ fn exported_symbols_provider_local(
-         }));
-     }
- 
--    if tcx.sess.opts.debugging_opts.sanitizer.contains(SanitizerSet::MEMORY) {
-+    if tcx.sess.opts.cg.sanitizer.contains(SanitizerSet::MEMORY) {
-         // Similar to profiling, preserve weak msan symbol during LTO.
-         const MSAN_WEAK_SYMBOLS: [&str; 2] = ["__msan_track_origins", "__msan_keep_going"];
- 
-diff --git a/src/librustc_codegen_ssa/back/write.rs b/src/librustc_codegen_ssa/back/write.rs
-index 7d69bb983dd..66b5e2f3833 100644
---- a/src/librustc_codegen_ssa/back/write.rs
-+++ b/src/librustc_codegen_ssa/back/write.rs
-@@ -194,7 +194,7 @@ impl ModuleConfig {
-             ),
-             pgo_use: if_regular!(sess.opts.cg.profile_use.clone(), None),
- 
--            sanitizer: if_regular!(sess.opts.debugging_opts.sanitizer, SanitizerSet::empty()),
-+            sanitizer: if_regular!(sess.opts.cg.sanitizer, SanitizerSet::empty()),
-             sanitizer_recover: if_regular!(
-                 sess.opts.debugging_opts.sanitizer_recover,
-                 SanitizerSet::empty()
-diff --git a/src/librustc_mir/transform/inline.rs b/src/librustc_mir/transform/inline.rs
-index 315d4fa9d47..b188a9f3743 100644
---- a/src/librustc_mir/transform/inline.rs
-+++ b/src/librustc_mir/transform/inline.rs
-@@ -238,7 +238,7 @@ impl Inliner<'tcx> {
- 
-         // Avoid inlining functions marked as no_sanitize if sanitizer is enabled,
-         // since instrumentation might be enabled and performed on the caller.
--        if self.tcx.sess.opts.debugging_opts.sanitizer.intersects(codegen_fn_attrs.no_sanitize) {
-+        if self.tcx.sess.opts.cg.sanitizer.intersects(codegen_fn_attrs.no_sanitize) {
-             return false;
-         }
- 
-diff --git a/src/librustc_session/config.rs b/src/librustc_session/config.rs
-index 1808a0ca59b..2a6e7082031 100644
---- a/src/librustc_session/config.rs
-+++ b/src/librustc_session/config.rs
-@@ -752,7 +752,7 @@ pub fn default_configuration(sess: &Session) -> CrateConfig {
-         }
-     }
- 
--    for s in sess.opts.debugging_opts.sanitizer {
-+    for s in sess.opts.cg.sanitizer {
-         let symbol = Symbol::intern(&s.to_string());
-         ret.insert((sym::sanitize, Some(symbol)));
-     }
-diff --git a/src/librustc_session/options.rs b/src/librustc_session/options.rs
-index d05f1a3f34b..3ace7f77a70 100644
---- a/src/librustc_session/options.rs
-+++ b/src/librustc_session/options.rs
-@@ -764,6 +764,8 @@ options! {CodegenOptions, CodegenSetter, basic_codegen_options,
-         "print remarks for these optimization passes (space separated, or \"all\")"),
-     rpath: bool = (false, parse_bool, [UNTRACKED],
-         "set rpath values in libs/exes (default: no)"),
-+    sanitizer: SanitizerSet = (SanitizerSet::empty(), parse_sanitizers, [TRACKED],
-+        "use a sanitizer"),
-     save_temps: bool = (false, parse_bool, [UNTRACKED],
-         "save all temporary output files during compilation (default: no)"),
-     soft_float: bool = (false, parse_bool, [TRACKED],
-@@ -985,8 +987,6 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
-     // soon.
-     run_dsymutil: bool = (true, parse_bool, [TRACKED],
-         "if on Mac, run `dsymutil` and delete intermediate object files (default: yes)"),
--    sanitizer: SanitizerSet = (SanitizerSet::empty(), parse_sanitizers, [TRACKED],
--        "use a sanitizer"),
-     sanitizer_memory_track_origins: usize = (0, parse_sanitizer_memory_track_origins, [TRACKED],
-         "enable origins tracking in MemorySanitizer"),
-     sanitizer_recover: SanitizerSet = (SanitizerSet::empty(), parse_sanitizers, [TRACKED],
-diff --git a/src/librustc_session/session.rs b/src/librustc_session/session.rs
-index c006e593e47..4298eeee9fa 100644
---- a/src/librustc_session/session.rs
-+++ b/src/librustc_session/session.rs
-@@ -656,7 +656,7 @@ impl Session {
-         let more_names = self.opts.output_types.contains_key(&OutputType::LlvmAssembly)
-             || self.opts.output_types.contains_key(&OutputType::Bitcode)
-             // AddressSanitizer and MemorySanitizer use alloca name when reporting an issue.
--            || self.opts.debugging_opts.sanitizer.intersects(SanitizerSet::ADDRESS | SanitizerSet::MEMORY);
-+            || self.opts.cg.sanitizer.intersects(SanitizerSet::ADDRESS | SanitizerSet::MEMORY);
- 
-         self.opts.debugging_opts.fewer_names || !more_names
-     }
-@@ -1018,7 +1018,7 @@ impl Session {
-         self.opts.optimize != config::OptLevel::No
-         // AddressSanitizer uses lifetimes to detect use after scope bugs.
-         // MemorySanitizer uses lifetimes to detect use of uninitialized stack variables.
--        || self.opts.debugging_opts.sanitizer.intersects(SanitizerSet::ADDRESS | SanitizerSet::MEMORY)
-+        || self.opts.cg.sanitizer.intersects(SanitizerSet::ADDRESS | SanitizerSet::MEMORY)
-     }
- 
-     pub fn mark_attr_known(&self, attr: &Attribute) {
-@@ -1445,24 +1445,46 @@ fn validate_commandline_args_with_session_available(sess: &Session) {
-     const ASAN_SUPPORTED_TARGETS: &[&str] = &[
-         "aarch64-fuchsia",
-         "aarch64-unknown-linux-gnu",
-+        "aarch64-cros-linux-gnu",
-+        "armv7a-cros-linux-gnueabihf",
-         "x86_64-apple-darwin",
-         "x86_64-fuchsia",
-         "x86_64-unknown-freebsd",
-         "x86_64-unknown-linux-gnu",
-+        "x86_64-cros-linux-gnu",
-+        "x86_64-pc-linux-gnu",
-+    ];
-+    const LSAN_SUPPORTED_TARGETS: &[&str] = &[
-+        "aarch64-unknown-linux-gnu",
-+        "aarch64-cros-linux-gnu",
-+        "armv7a-cros-linux-gnueabihf",
-+        "x86_64-apple-darwin",
-+        "x86_64-cros-linux-gnu",
-+        "x86_64-pc-linux-gnu",
-+        "x86_64-unknown-linux-gnu",
-+    ];
-+    const MSAN_SUPPORTED_TARGETS: &[&str] = &[
-+        "aarch64-unknown-linux-gnu",
-+        "aarch64-cros-linux-gnu",
-+        "armv7a-cros-linux-gnueabihf",
-+        "x86_64-cros-linux-gnu",
-+        "x86_64-pc-linux-gnu",
-+        "x86_64-unknown-freebsd",
-+        "x86_64-unknown-linux-gnu",
-     ];
--    const LSAN_SUPPORTED_TARGETS: &[&str] =
--        &["aarch64-unknown-linux-gnu", "x86_64-apple-darwin", "x86_64-unknown-linux-gnu"];
--    const MSAN_SUPPORTED_TARGETS: &[&str] =
--        &["aarch64-unknown-linux-gnu", "x86_64-unknown-freebsd", "x86_64-unknown-linux-gnu"];
-     const TSAN_SUPPORTED_TARGETS: &[&str] = &[
-         "aarch64-unknown-linux-gnu",
-+        "aarch64-cros-linux-gnu",
-+        "armv7a-cros-linux-gnueabihf",
-         "x86_64-apple-darwin",
-+        "x86_64-cros-linux-gnu",
-+        "x86_64-pc-linux-gnu",
-         "x86_64-unknown-freebsd",
-         "x86_64-unknown-linux-gnu",
-     ];
- 
-     // Sanitizers can only be used on some tested platforms.
--    for s in sess.opts.debugging_opts.sanitizer {
-+    for s in sess.opts.cg.sanitizer {
-         let supported_targets = match s {
-             SanitizerSet::ADDRESS => ASAN_SUPPORTED_TARGETS,
-             SanitizerSet::LEAK => LSAN_SUPPORTED_TARGETS,
-@@ -1477,10 +1499,10 @@ fn validate_commandline_args_with_session_available(sess: &Session) {
-                 supported_targets.join(", ")
-             ));
-         }
--        let conflicting = sess.opts.debugging_opts.sanitizer - s;
-+        let conflicting = sess.opts.cg.sanitizer - s;
-         if !conflicting.is_empty() {
-             sess.err(&format!(
--                "`-Zsanitizer={}` is incompatible with `-Zsanitizer={}`",
-+                "`-Csanitizer={}` is incompatible with `-Csanitizer={}`",
-                 s, conflicting,
-             ));
-             // Don't report additional errors.
diff --git a/dev-lang/rust/files/rust-1.47.0-ld-argv0.patch b/dev-lang/rust/files/rust-1.47.0-ld-argv0.patch
deleted file mode 100644
index ac9005b..0000000
--- a/dev-lang/rust/files/rust-1.47.0-ld-argv0.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-Our cross-compilers and related tooling are executed via ld.so trickery, which
-makes /proc/self/exe not point to the right place. If we detect that we're in
-that situation in `current_exe()`, we _should_ have `LD_ARGV0_REL` in an env
-var. This is the path to the _original_ binary, relative to ld.so.
-
-diff --git a/library/std/src/sys/unix/os.rs b/library/std/src/sys/unix/os.rs
-index a9cd509..92dd6b9 100644
---- a/library/std/src/sys/unix/os.rs
-+++ b/library/std/src/sys/unix/os.rs
-@@ -327,12 +327,45 @@ pub fn current_exe() -> io::Result<PathBuf> {
- 
- #[cfg(any(target_os = "linux", target_os = "android", target_os = "emscripten"))]
- pub fn current_exe() -> io::Result<PathBuf> {
-+    let is_ld_so = |p: &crate::path::Path| -> Option<bool> {
-+        let parent_dir_name = p.parent()?.file_name()?;
-+        if parent_dir_name != OsStr::new("lib") {
-+            return Some(false);
-+        }
-+        // We assume that the `ld.so` path is always valid unicode, since there's... no reason for
-+        // it not to be. :)
-+        let file_name = p.file_name()?.to_str()?;
-+        Some(
-+            file_name.starts_with("ld-linux-")
-+                && (file_name.ends_with(".so") || file_name.contains(".so.")),
-+        )
-+    };
-+
-     match crate::fs::read_link("/proc/self/exe") {
-         Err(ref e) if e.kind() == io::ErrorKind::NotFound => Err(io::Error::new(
-             io::ErrorKind::Other,
-             "no /proc/self/exe available. Is /proc mounted?",
-         )),
--        other => other,
-+        Err(x) => Err(x),
-+        Ok(p) => {
-+            // Chrome OS-specific: in some configurations, Rust binaries are invoked through
-+            // `ld.so`. In these cases, we want to present the user with the path to the Rust
-+            // binary that was invoked.
-+            //
-+            // Because the ld.so wrappers _generally_ don't want to invoke things with absolute
-+            // paths, this is _generally_ a path relative to dirname(ld.so).
-+            if is_ld_so(&p) == Some(true) {
-+                if let Some(relative_to_ld) = crate::env::var_os("LD_ARGV0_REL") {
-+                    let relative_to_ld = PathBuf::from(relative_to_ld);
-+                    if relative_to_ld.is_absolute() {
-+                        return Ok(relative_to_ld);
-+                    }
-+                    // safety: is_ld_so checks the parent directory of `p`.
-+                    return Ok(p.parent().unwrap().join(relative_to_ld));
-+                }
-+            }
-+            Ok(p)
-+        }
-     }
- }
- 
diff --git a/dev-lang/rust/files/rust-1.47.0-no-test-on-build.patch b/dev-lang/rust/files/rust-1.47.0-no-test-on-build.patch
deleted file mode 100644
index 3dc82da..0000000
--- a/dev-lang/rust/files/rust-1.47.0-no-test-on-build.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-The only kind of bootstrap used here is `build`, which will erroneously try to build the Rust unit
-test framework on all targets. On many targets, this is a harmless mistake, but on the bare metal
-targets, this leads to an error such as:
-
-    warning: dropping unsupported crate type `dylib` for target `thumbv6m-none-eabi`
-
-    error[E0463]: can't find crate for `std`
-
-    error: aborting due to previous error
-
-    For more information about this error, try `rustc --explain E0463`.
-    error: Could not compile `term`.
-
-The missing `std` crate is expected because building the `std` crate is not applicable on bare metal
-targets. A deeper analysis of the bootstrap code follows:
-
-In many instances in the bootstrap code, there appear lines such as:
-
-     builder.ensure(compile::Test { compiler, target });
-
-These "ensure" that a specific target will get a certain component built (`compile::Test` in the
-above line), if not already previously "ensured." Usually, there is a guard clause checking to see
-if `target` is a `no_std` target (i.e. bare metal). However, these guard clauses and "ensure" calls
-are moot because `compile::Test` is part of the initialzed list of ensured bootstrap components for
-`Kind::Build` meaning that even `no_std` targets will get the unit test framework built, which has
-already been established as an impossibility.
-
-Note that there is a ton of code motion as of this commit:
-https://github.com/rust-lang/rust/commit/b47c9690d2974ec0318f1e87bf38f8f7ee6cf202
-
-Seeing as the `Std` build step behaves properly on no_std builds (see the comment in
-'src/bootstrap/compile.rs': "for no-std targets we only compile a few no_std crates"), the merge the
-libtest build step with libstd may actually mean things work properly without this patch in future
-rust releases.
-
-diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
-index 4cd793adaf5..c9cd92b95f5 100644
---- a/src/bootstrap/compile.rs
-+++ b/src/bootstrap/compile.rs
-@@ -390,6 +390,10 @@ impl Step for Test {
-         let target = self.target;
-         let compiler = self.compiler;
- 
-+        if builder.no_std(target) == Some(true) {
-+            return;
-+        }
-+
-         builder.ensure(Std { compiler, target });
- 
-         if builder.config.keep_stage.contains(&compiler.stage) {
diff --git a/dev-lang/rust/files/rust-1.47.0-no-weak-symbols.patch b/dev-lang/rust/files/rust-1.47.0-no-weak-symbols.patch
deleted file mode 100644
index 82b6176..0000000
--- a/dev-lang/rust/files/rust-1.47.0-no-weak-symbols.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-This is a slightly-modified cherrypick from llvm. Without this, we see undefined
-symbols in the CQ for amd64-generic ASAN builds. Specifically, we're missing
-__start_asan_globals and __stop_asan_globals.
-
-commit cf5df40c4cf1a53a02ab1d56a488642e3dda8f6d
-Author: Leonard Chan <leonardchan@google.com>
-Date:   Fri Jul 17 15:29:50 2020 -0700
-
-    Revert "[AddressSanitizer] Don't use weak linkage for __{start,stop}_asan_globals"
-    
-    This reverts commit d76e62fdb7a93d9a33f642b6b528f2562cc3c3f4.
-    
-    Reverting since this can lead to linker errors:
-    
-    ```
-    ld.lld: error: undefined hidden symbol: __start_asan_globals
-    ```
-    
-    when using --gc-sections. The linker can discard __start_asan_globals
-    once there are no more `asan_globals` sections left, which can lead to
-    this error if we have external linkages to them.
-
-diff --git a/src/llvm-project/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp b/src/llvm-project/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
-index ee09a4d9db7..7516a64c6a3 100644
---- a/src/llvm-project/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
-+++ b/src/llvm-project/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
-@@ -2103,23 +2103,10 @@ void ModuleAddressSanitizer::InstrumentGlobalsELF(
-     SetComdatForGlobalMetadata(G, Metadata, UniqueModuleId);
-   }
- 
--  // This should never be called when there are no globals, by the logic that
--  // computes the UniqueModuleId string, which is "" when there are no globals.
--  // It's important that this path is only used when there are actually some
--  // globals, because that means that there will certainly be a live
--  // `asan_globals` input section at link time and thus `__start_asan_globals`
--  // and `__stop_asan_globals` symbols will definitely be defined at link time.
--  // This means there's no need for the references to them to be weak, which
--  // enables better code generation because ExternalWeakLinkage implies
--  // isInterposable() and thus requires GOT indirection for PIC.  Since these
--  // are known-defined hidden/dso_local symbols, direct PIC accesses without
--  // dynamic relocation are always sufficient.
--  assert(!MetadataGlobals.empty());
--  assert(!UniqueModuleId.empty());
--
-   // Update llvm.compiler.used, adding the new metadata globals. This is
-   // needed so that during LTO these variables stay alive.
--  appendToCompilerUsed(M, MetadataGlobals);
-+  if (!MetadataGlobals.empty())
-+    appendToCompilerUsed(M, MetadataGlobals);
- 
-   // RegisteredFlag serves two purposes. First, we can pass it to dladdr()
-   // to look up the loaded image that contains it. Second, we can store in it
-@@ -2132,18 +2119,15 @@ void ModuleAddressSanitizer::InstrumentGlobalsELF(
-       ConstantInt::get(IntptrTy, 0), kAsanGlobalsRegisteredFlagName);
-   RegisteredFlag->setVisibility(GlobalVariable::HiddenVisibility);
- 
--  // Create start and stop symbols.  These are known to be defined by
--  // the linker, see comment above.
--  auto MakeStartStopGV = [&](const char *Prefix) {
--    GlobalVariable *StartStop =
--        new GlobalVariable(M, IntptrTy, false, GlobalVariable::ExternalLinkage,
--                           nullptr, Prefix + getGlobalMetadataSection());
--    StartStop->setVisibility(GlobalVariable::HiddenVisibility);
--    assert(StartStop->isImplicitDSOLocal());
--    return StartStop;
--  };
--  GlobalVariable *StartELFMetadata = MakeStartStopGV("__start_");
--  GlobalVariable *StopELFMetadata = MakeStartStopGV("__stop_");
-+  // Create start and stop symbols.
-+  GlobalVariable *StartELFMetadata = new GlobalVariable(
-+      M, IntptrTy, false, GlobalVariable::ExternalWeakLinkage, nullptr,
-+      "__start_" + getGlobalMetadataSection());
-+  StartELFMetadata->setVisibility(GlobalVariable::HiddenVisibility);
-+  GlobalVariable *StopELFMetadata = new GlobalVariable(
-+      M, IntptrTy, false, GlobalVariable::ExternalWeakLinkage, nullptr,
-+      "__stop_" + getGlobalMetadataSection());
-+  StopELFMetadata->setVisibility(GlobalVariable::HiddenVisibility);
- 
-   // Create a call to register the globals with the runtime.
-   IRB.CreateCall(AsanRegisterElfGlobals,
diff --git a/dev-lang/rust/files/rust-1.47.0-revert-libunwind-build.patch b/dev-lang/rust/files/rust-1.47.0-revert-libunwind-build.patch
deleted file mode 100644
index b338cb9..0000000
--- a/dev-lang/rust/files/rust-1.47.0-revert-libunwind-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-This reverts commit 21abc88.
-
-Fixes https://github.com/rust-lang/rust/issues/76020
-
-Quote the open upstream CL (https://github.com/rust-lang/rust/issues/76026):
-I'm not sure what exact problem #72746 is supposed to fix, but it's probably incomplete as it breaks the build of 1.46.0 with llvm-libunwind enabled
-
-
-diff --git a/library/unwind/build.rs b/library/unwind/build.rs
-index 31d235cf679..d4bcd2ed4e8 100644
---- a/library/unwind/build.rs
-+++ b/library/unwind/build.rs
-@@ -116,8 +116,6 @@ mod llvm_libunwind {
-             cfg.flag("-fstrict-aliasing");
-             cfg.flag("-funwind-tables");
-             cfg.flag("-fvisibility=hidden");
--            cfg.flag_if_supported("-fvisibility-global-new-delete-hidden");
--            cfg.define("_LIBUNWIND_DISABLE_VISIBILITY_ANNOTATIONS", None);
-         }
- 
-         let mut unwind_sources = vec![
diff --git a/dev-lang/rust/files/rust-1.47.0-sanitizer-supported.patch b/dev-lang/rust/files/rust-1.47.0-sanitizer-supported.patch
deleted file mode 100644
index b544821..0000000
--- a/dev-lang/rust/files/rust-1.47.0-sanitizer-supported.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-Ensure that sanitizer runtimes are built for all our supported x86_64
-platforms.
-
-Now that we patch in our own custom -cros and -pc targets instead
-of falling back to -unknown, we need to add builds for those
-targets as well to allow the linker to find the correct versions
-of the librustc_[almt]san static libraries.
-
-diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs
-index 97d9dbdd63f..d81c5e60608 100644
---- a/src/bootstrap/native.rs
-+++ b/src/bootstrap/native.rs
-@@ -790,13 +790,16 @@ fn supported_sanitizers(
- 
-     match &*target.triple {
-         "aarch64-fuchsia" => common_libs("fuchsia", "aarch64", &["asan"]),
--        "aarch64-unknown-linux-gnu" => {
-+        "aarch64-unknown-linux-gnu" | "aarch64-cros-linux-gnu" => {
-             common_libs("linux", "aarch64", &["asan", "lsan", "msan", "tsan"])
-         }
-+        "armv7a-cros-linux-gnueabihf" => {
-+            common_libs("linux", "armhf", &["asan"])
-+        }
-         "x86_64-apple-darwin" => darwin_libs("osx", &["asan", "lsan", "tsan"]),
-         "x86_64-fuchsia" => common_libs("fuchsia", "x86_64", &["asan"]),
-         "x86_64-unknown-freebsd" => common_libs("freebsd", "x86_64", &["asan", "msan", "tsan"]),
--        "x86_64-unknown-linux-gnu" => {
-+        "x86_64-unknown-linux-gnu" | "x86_64-cros-linux-gnu" | "x86_64-pc-linux-gnu" => {
-             common_libs("linux", "x86_64", &["asan", "lsan", "msan", "tsan"])
-         }
-         _ => Vec::new(),
diff --git a/dev-lang/rust/files/rust-1.51.0-Handle-sparse-git-repo-without-erroring.patch b/dev-lang/rust/files/rust-1.51.0-Handle-sparse-git-repo-without-erroring.patch
deleted file mode 100644
index fe536c9..0000000
--- a/dev-lang/rust/files/rust-1.51.0-Handle-sparse-git-repo-without-erroring.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-Cherry-pick of https://github.com/rust-lang/cargo/pull/8775, so that
-cargo works with git worktrees.
-
-diff --git a/src/tools/cargo/src/cargo/sources/path.rs b/src/tools/cargo/src/cargo/sources/path.rs
-index 64b0f77ed..f7dcfee7b 100644
---- a/src/tools/cargo/src/cargo/sources/path.rs
-+++ b/src/tools/cargo/src/cargo/sources/path.rs
-@@ -191,12 +191,25 @@ impl<'cfg> PathSource<'cfg> {
-         let index = repo
-             .index()
-             .chain_err(|| format!("failed to open git index at {}", repo.path().display()))?;
--        let repo_root = repo.workdir().ok_or_else(|| {
--            anyhow::format_err!(
-+        let repo_root = if let Some(root) = repo.workdir() {
-+            root
-+        } else if !repo.is_bare() {
-+            // Sparse-checkouts (and possibly other git
-+            // configurations) make libgit2 confused but there's still
-+            // an actual non-bare repo here.
-+            if let Some(r) = repo.path().parent() {
-+                r
-+            } else {
-+                return Err(anyhow::format_err!(
-+                    "repo path missing .git subfolder even when non-bare",
-+                ));
-+            }
-+        } else {
-+            return Err(anyhow::format_err!(
-                 "did not expect repo at {} to be bare",
-                 repo.path().display()
--            )
--        })?;
-+            ));
-+        };
-         let repo_relative_path = match paths::strip_prefix_canonical(root, repo_root) {
-             Ok(p) => p,
-             Err(e) => {
-@@ -225,9 +238,21 @@ impl<'cfg> PathSource<'cfg> {
-     ) -> CargoResult<Vec<PathBuf>> {
-         warn!("list_files_git {}", pkg.package_id());
-         let index = repo.index()?;
--        let root = repo
--            .workdir()
--            .ok_or_else(|| anyhow::format_err!("can't list files on a bare repository"))?;
-+        let root = if let Some(root) = repo.workdir() {
-+            root
-+        } else if !repo.is_bare() {
-+            // Sparse-checkouts (and possibly other git
-+            // configurations) make libgit2 confused but there's still
-+            // an actual non-bare repo here.
-+            if let Some(r) = repo.path().parent() {
-+                r
-+            } else {
-+                return Err(anyhow::format_err!("malformed non-bare repository root",));
-+            }
-+        } else {
-+            return Err(anyhow::format_err!("can't list files on a bare repository",));
-+        };
-+
-         let pkg_path = pkg.root();
-
-         let mut ret = Vec::<PathBuf>::new();
diff --git a/dev-lang/rust/files/rust-1.51.0-Revert-CMake-Unconditionally-add-.h-and-.td-files-to.patch b/dev-lang/rust/files/rust-1.51.0-Revert-CMake-Unconditionally-add-.h-and-.td-files-to.patch
deleted file mode 100644
index da9e10b..0000000
--- a/dev-lang/rust/files/rust-1.51.0-Revert-CMake-Unconditionally-add-.h-and-.td-files-to.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/llvm/cmake/modules/LLVMProcessSources.cmake b/llvm/cmake/modules/LLVMProcessSources.cmake
-index ba8dca313c8..b99430c0f30 100644
---- a/src/llvm-project/llvm/cmake/modules/LLVMProcessSources.cmake
-+++ b/src/llvm-project/llvm/cmake/modules/LLVMProcessSources.cmake
-@@ -63,11 +63,15 @@ function(llvm_process_sources OUT_VAR)
-     llvm_check_source_file_list(${sources})
-   endif()
- 
--  # This adds .td and .h files to the Visual Studio solution:
--  add_td_sources(sources)
--  find_all_header_files(hdrs "${ARG_ADDITIONAL_HEADER_DIRS}")
--  if (hdrs)
--    set_source_files_properties(${hdrs} PROPERTIES HEADER_FILE_ONLY ON)
-+  if( LLVM_ENABLE_IDE )
-+    # This adds .td and .h files to the Visual Studio solution:
-+    add_td_sources(sources)
-+    find_all_header_files(hdrs "${ARG_ADDITIONAL_HEADER_DIRS}")
-+    if (hdrs)
-+      set_source_files_properties(${hdrs} PROPERTIES HEADER_FILE_ONLY ON)
-+    endif()
-+    set_source_files_properties(${ARG_ADDITIONAL_HEADERS} PROPERTIES HEADER_FILE_ONLY ON)
-+    list(APPEND sources ${ARG_ADDITIONAL_HEADERS} ${hdrs})
-   endif()
-   set_source_files_properties(${ARG_ADDITIONAL_HEADERS} PROPERTIES HEADER_FILE_ONLY ON)
-   list(APPEND sources ${ARG_ADDITIONAL_HEADERS} ${hdrs})
diff --git a/dev-lang/rust/files/rust-1.51.0-aarch64-outline-atomics.patch b/dev-lang/rust/files/rust-1.51.0-aarch64-outline-atomics.patch
deleted file mode 100644
index ba7904c..0000000
--- a/dev-lang/rust/files/rust-1.51.0-aarch64-outline-atomics.patch
+++ /dev/null
@@ -1,561 +0,0 @@
-Adds outline atomics support to Rust's compiler-rt build, since this is required
-with a sufficiently new version of clang. Support for these hasn't reached a
-stable version of LLVM yet, so we need to pick the changes and the corresponding
-build logic in.
-
-diff --git a/src/llvm-project/compiler-rt/lib/builtins/aarch64/lse.S b/src/llvm-project/compiler-rt/lib/builtins/aarch64/lse.S
-new file mode 100644
-index 000000000..5dc0d5320
---- /dev/null
-+++ b/src/llvm-project/compiler-rt/lib/builtins/aarch64/lse.S
-@@ -0,0 +1,236 @@
-+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-+// See https://llvm.org/LICENSE.txt for license information.
-+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-+
-+#include "assembly.h"
-+
-+// Out-of-line LSE atomics helpers. Ported from libgcc library.
-+// N = {1, 2, 4, 8}
-+// M = {1, 2, 4, 8, 16}
-+// ORDER = {'relax', 'acq', 'rel', 'acq_rel'}
-+// Routines implemented:
-+//
-+//  iM __aarch64_casM_ORDER(iM expected, iM desired, iM *ptr)
-+//  iN __aarch64_swpN_ORDER(iN val, iN *ptr)
-+//  iN __aarch64_ldaddN_ORDER(iN val, iN *ptr)
-+//  iN __aarch64_ldclrN_ORDER(iN val, iN *ptr)
-+//  iN __aarch64_ldeorN_ORDER(iN val, iN *ptr)
-+//  iN __aarch64_ldsetN_ORDER(iN val, iN *ptr)
-+//
-+// Routines may modify temporary registers tmp0, tmp1, tmp2,
-+// return value x0 and the flags only.
-+
-+#ifdef __aarch64__
-+
-+#ifdef HAS_ASM_LSE
-+.arch armv8-a+lse
-+#else
-+.arch armv8-a
-+#endif
-+
-+#if !defined(__APPLE__)
-+HIDDEN(__aarch64_have_lse_atomics)
-+#else
-+HIDDEN(___aarch64_have_lse_atomics)
-+#endif
-+
-+// Generate mnemonics for
-+// L_cas:                                 SIZE: 1,2,4,8,16 MODEL: 1,2,3,4
-+// L_swp L_ldadd L_ldclr L_ldeor L_ldset: SIZE: 1,2,4,8    MODEL: 1,2,3,4
-+
-+#if SIZE == 1
-+#define S b
-+#define UXT uxtb
-+#define B 0x00000000
-+#elif SIZE == 2
-+#define S h
-+#define UXT uxth
-+#define B 0x40000000
-+#elif SIZE == 4 || SIZE == 8 || SIZE == 16
-+#define S
-+#define UXT mov
-+#if SIZE == 4
-+#define B 0x80000000
-+#elif SIZE == 8
-+#define B 0xc0000000
-+#endif
-+#else
-+#error
-+#endif // SIZE
-+
-+#if MODEL == 1
-+#define SUFF _relax
-+#define A
-+#define L
-+#define M 0x000000
-+#define N 0x000000
-+#elif MODEL == 2
-+#define SUFF _acq
-+#define A a
-+#define L
-+#define M 0x400000
-+#define N 0x800000
-+#elif MODEL == 3
-+#define SUFF _rel
-+#define A
-+#define L l
-+#define M 0x008000
-+#define N 0x400000
-+#elif MODEL == 4
-+#define SUFF _acq_rel
-+#define A a
-+#define L l
-+#define M 0x408000
-+#define N 0xc00000
-+#else
-+#error
-+#endif // MODEL
-+
-+// Define register size.
-+#define x(N) GLUE2(x, N)
-+#define w(N) GLUE2(w, N)
-+#if SIZE < 8
-+#define s(N) w(N)
-+#else
-+#define s(N) x(N)
-+#endif
-+
-+#define NAME(BASE) GLUE4(__aarch64_, BASE, SIZE, SUFF)
-+#define LDXR GLUE4(ld, A, xr, S)
-+#define STXR GLUE4(st, L, xr, S)
-+
-+// Define temporary registers.
-+#define tmp0 16
-+#define tmp1 17
-+#define tmp2 15
-+
-+// Macro for branch to label if no LSE available
-+.macro JUMP_IF_NOT_LSE label
-+#if !defined(__APPLE__)
-+        adrp    x(tmp0), __aarch64_have_lse_atomics
-+        ldrb    w(tmp0), [x(tmp0), :lo12:__aarch64_have_lse_atomics]
-+#else
-+        adrp    x(tmp0), ___aarch64_have_lse_atomics@page
-+        ldrb    w(tmp0), [x(tmp0), ___aarch64_have_lse_atomics@pageoff]
-+#endif
-+        cbz     w(tmp0), \label
-+.endm
-+
-+#ifdef L_cas
-+DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(NAME(cas))
-+        JUMP_IF_NOT_LSE 8f
-+#if SIZE < 16
-+#ifdef HAS_ASM_LSE
-+#define CAS GLUE4(cas, A, L, S) s(0), s(1), [x2]
-+#else
-+#define CAS .inst 0x08a07c41 + B + M
-+#endif
-+        CAS    // s(0), s(1), [x2]
-+        ret
-+8:
-+        UXT    s(tmp0), s(0)
-+0:
-+        LDXR   s(0), [x2]
-+        cmp    s(0), s(tmp0)
-+        bne    1f
-+        STXR   w(tmp1), s(1), [x2]
-+        cbnz   w(tmp1), 0b
-+1:
-+        ret
-+#else
-+#define LDXP GLUE3(ld, A, xp)
-+#define STXP GLUE3(st, L, xp)
-+#ifdef HAS_ASM_LSE
-+#define CASP GLUE3(casp, A, L)  x0, x1, x2, x3, [x4]
-+#else
-+#define CASP .inst 0x48207c82 + M
-+#endif
-+
-+        CASP   // x0, x1, x2, x3, [x4]
-+        ret
-+8:
-+        mov    x(tmp0), x0
-+        mov    x(tmp1), x1
-+0:
-+        LDXP   x0, x1, [x4]
-+        cmp    x0, x(tmp0)
-+        ccmp   x1, x(tmp1), #0, eq
-+        bne    1f
-+        STXP   w(tmp2), x2, x3, [x4]
-+        cbnz   w(tmp2), 0b
-+1:
-+        ret
-+#endif
-+END_COMPILERRT_OUTLINE_FUNCTION(NAME(cas))
-+#endif // L_cas
-+
-+#ifdef L_swp
-+#ifdef HAS_ASM_LSE
-+#define SWP GLUE4(swp, A, L, S)  s(0), s(0), [x1]
-+#else
-+#define SWP .inst 0x38208020 + B + N
-+#endif
-+DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(NAME(swp))
-+        JUMP_IF_NOT_LSE 8f
-+        SWP    // s(0), s(0), [x1]
-+        ret
-+8:
-+        mov    s(tmp0), s(0)
-+0:
-+        LDXR   s(0), [x1]
-+        STXR   w(tmp1), s(tmp0), [x1]
-+        cbnz   w(tmp1), 0b
-+        ret
-+END_COMPILERRT_OUTLINE_FUNCTION(NAME(swp))
-+#endif // L_swp
-+
-+#if defined(L_ldadd) || defined(L_ldclr) ||                                    \
-+    defined(L_ldeor) || defined(L_ldset)
-+
-+#ifdef L_ldadd
-+#define LDNM ldadd
-+#define OP add
-+#define OPN 0x0000
-+#elif defined(L_ldclr)
-+#define LDNM ldclr
-+#define OP bic
-+#define OPN 0x1000
-+#elif defined(L_ldeor)
-+#define LDNM ldeor
-+#define OP eor
-+#define OPN 0x2000
-+#elif defined(L_ldset)
-+#define LDNM ldset
-+#define OP orr
-+#define OPN 0x3000
-+#else
-+#error
-+#endif
-+
-+#ifdef HAS_ASM_LSE
-+#define LDOP GLUE4(LDNM, A, L, S) s(0), s(0), [x1]
-+#else
-+#define LDOP .inst 0x38200020 + OPN + B + N
-+#endif
-+
-+DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(NAME(LDNM))
-+        JUMP_IF_NOT_LSE 8f
-+        LDOP // s(0), s(0), [x1]
-+        ret
-+8:
-+        mov    s(tmp0), s(0)
-+0:
-+        LDXR   s(0), [x1]
-+        OP     s(tmp1), s(0), s(tmp0)
-+        STXR   w(tmp2), s(tmp1), [x1]
-+        cbnz   w(tmp2), 0b
-+        ret
-+END_COMPILERRT_OUTLINE_FUNCTION(NAME(LDNM))
-+#endif // L_ldadd L_ldclr L_ldeor L_ldset
-+
-+NO_EXEC_STACK_DIRECTIVE
-+
-+// GNU property note for BTI and PAC
-+GNU_PROPERTY_BTI_PAC
-+
-+#endif // __aarch64__
-diff --git a/src/llvm-project/compiler-rt/lib/builtins/assembly.h b/src/llvm-project/compiler-rt/lib/builtins/assembly.h
-index f437cb87f..f6ce6a9fc 100644
---- a/src/llvm-project/compiler-rt/lib/builtins/assembly.h
-+++ b/src/llvm-project/compiler-rt/lib/builtins/assembly.h
-@@ -14,8 +14,8 @@
- #ifndef COMPILERRT_ASSEMBLY_H
- #define COMPILERRT_ASSEMBLY_H
- 
--#if defined(__POWERPC__) || defined(__powerpc__) || defined(__ppc__)
--#define SEPARATOR @
-+#if defined(__APPLE__) && defined(__aarch64__)
-+#define SEPARATOR %%
- #else
- #define SEPARATOR ;
- #endif
-@@ -35,14 +35,14 @@
- #define HIDDEN(name) .hidden name
- #define LOCAL_LABEL(name) .L_##name
- #define FILE_LEVEL_DIRECTIVE
--#if defined(__arm__)
-+#if defined(__arm__) || defined(__aarch64__)
- #define SYMBOL_IS_FUNC(name) .type name,%function
- #else
- #define SYMBOL_IS_FUNC(name) .type name,@function
- #endif
- #define CONST_SECTION .section .rodata
- 
--#if defined(__GNU__) || defined(__FreeBSD__) || defined(__Fuchsia__) || \
-+#if defined(__GNU__) || defined(__FreeBSD__) || defined(__Fuchsia__) ||        \
-     defined(__linux__)
- #define NO_EXEC_STACK_DIRECTIVE .section .note.GNU-stack,"",%progbits
- #else
-@@ -65,6 +65,66 @@
- 
- #endif
- 
-+#if defined(__arm__) || defined(__aarch64__)
-+#define FUNC_ALIGN                                                             \
-+  .text SEPARATOR                                                              \
-+  .balign 16 SEPARATOR
-+#else
-+#define FUNC_ALIGN
-+#endif
-+
-+// BTI and PAC gnu property note
-+#define NT_GNU_PROPERTY_TYPE_0 5
-+#define GNU_PROPERTY_AARCH64_FEATURE_1_AND 0xc0000000
-+#define GNU_PROPERTY_AARCH64_FEATURE_1_BTI 1
-+#define GNU_PROPERTY_AARCH64_FEATURE_1_PAC 2
-+
-+#if defined(__ARM_FEATURE_BTI_DEFAULT)
-+#define BTI_FLAG GNU_PROPERTY_AARCH64_FEATURE_1_BTI
-+#else
-+#define BTI_FLAG 0
-+#endif
-+
-+#if __ARM_FEATURE_PAC_DEFAULT & 3
-+#define PAC_FLAG GNU_PROPERTY_AARCH64_FEATURE_1_PAC
-+#else
-+#define PAC_FLAG 0
-+#endif
-+
-+#define GNU_PROPERTY(type, value)                                              \
-+  .pushsection .note.gnu.property, "a" SEPARATOR                               \
-+  .p2align 3 SEPARATOR                                                         \
-+  .word 4 SEPARATOR                                                            \
-+  .word 16 SEPARATOR                                                           \
-+  .word NT_GNU_PROPERTY_TYPE_0 SEPARATOR                                       \
-+  .asciz "GNU" SEPARATOR                                                       \
-+  .word type SEPARATOR                                                         \
-+  .word 4 SEPARATOR                                                            \
-+  .word value SEPARATOR                                                        \
-+  .word 0 SEPARATOR                                                            \
-+  .popsection
-+
-+#if BTI_FLAG != 0
-+#define BTI_C bti c
-+#else
-+#define BTI_C
-+#endif
-+
-+#if (BTI_FLAG | PAC_FLAG) != 0
-+#define GNU_PROPERTY_BTI_PAC                                                   \
-+  GNU_PROPERTY(GNU_PROPERTY_AARCH64_FEATURE_1_AND, BTI_FLAG | PAC_FLAG)
-+#else
-+#define GNU_PROPERTY_BTI_PAC
-+#endif
-+
-+#if defined(__clang__) || defined(__GCC_HAVE_DWARF2_CFI_ASM)
-+#define CFI_START .cfi_startproc
-+#define CFI_END .cfi_endproc
-+#else
-+#define CFI_START
-+#define CFI_END
-+#endif
-+
- #if defined(__arm__)
- 
- // Determine actual [ARM][THUMB[1][2]] ISA using compiler predefined macros:
-@@ -131,8 +191,14 @@
- #define DEFINE_CODE_STATE
- #endif
- 
--#define GLUE2(a, b) a##b
--#define GLUE(a, b) GLUE2(a, b)
-+#define GLUE2_(a, b) a##b
-+#define GLUE(a, b) GLUE2_(a, b)
-+#define GLUE2(a, b) GLUE2_(a, b)
-+#define GLUE3_(a, b, c) a##b##c
-+#define GLUE3(a, b, c) GLUE3_(a, b, c)
-+#define GLUE4_(a, b, c, d) a##b##c##d
-+#define GLUE4(a, b, c, d) GLUE4_(a, b, c, d)
-+
- #define SYMBOL_NAME(name) GLUE(__USER_LABEL_PREFIX__, name)
- 
- #ifdef VISIBILITY_HIDDEN
-@@ -177,6 +243,16 @@
-   DECLARE_FUNC_ENCODING                                                        \
-   name:
- 
-+#define DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(name)                     \
-+  DEFINE_CODE_STATE                                                            \
-+  FUNC_ALIGN                                                                   \
-+  .globl name SEPARATOR                                                        \
-+  SYMBOL_IS_FUNC(name) SEPARATOR                                               \
-+  DECLARE_SYMBOL_VISIBILITY(name) SEPARATOR                                    \
-+  CFI_START SEPARATOR                                                          \
-+  DECLARE_FUNC_ENCODING                                                        \
-+  name: SEPARATOR BTI_C
-+
- #define DEFINE_COMPILERRT_FUNCTION_ALIAS(name, target)                         \
-   .globl SYMBOL_NAME(name) SEPARATOR                                           \
-   SYMBOL_IS_FUNC(SYMBOL_NAME(name)) SEPARATOR                                  \
-@@ -193,8 +269,13 @@
- #ifdef __ELF__
- #define END_COMPILERRT_FUNCTION(name)                                          \
-   .size SYMBOL_NAME(name), . - SYMBOL_NAME(name)
-+#define END_COMPILERRT_OUTLINE_FUNCTION(name)                                  \
-+  CFI_END SEPARATOR                                                            \
-+  .size SYMBOL_NAME(name), . - SYMBOL_NAME(name)
- #else
- #define END_COMPILERRT_FUNCTION(name)
-+#define END_COMPILERRT_OUTLINE_FUNCTION(name)                                  \
-+  CFI_END
- #endif
- 
- #endif // COMPILERRT_ASSEMBLY_H
-diff --git a/src/llvm-project/compiler-rt/lib/builtins/cpu_model.c b/src/llvm-project/compiler-rt/lib/builtins/cpu_model.c
-index 468bcc84c..1f72d800f 100644
---- a/src/llvm-project/compiler-rt/lib/builtins/cpu_model.c
-+++ b/src/llvm-project/compiler-rt/lib/builtins/cpu_model.c
-@@ -12,6 +12,16 @@
- //
- //===----------------------------------------------------------------------===//
- 
-+#if defined(HAVE_INIT_PRIORITY)
-+#define CONSTRUCTOR_ATTRIBUTE __attribute__((__constructor__ 101))
-+#elif __has_attribute(__constructor__)
-+#define CONSTRUCTOR_ATTRIBUTE __attribute__((__constructor__))
-+#else
-+// FIXME: For MSVC, we should make a function pointer global in .CRT$X?? so that
-+// this runs during initialization.
-+#define CONSTRUCTOR_ATTRIBUTE
-+#endif
-+
- #if (defined(__i386__) || defined(_M_IX86) || defined(__x86_64__) ||           \
-      defined(_M_X64)) &&                                                       \
-     (defined(__GNUC__) || defined(__clang__) || defined(_MSC_VER))
-@@ -656,16 +666,6 @@ static void getAvailableFeatures(unsigned ECX, unsigned EDX, unsigned MaxLeaf,
- #undef setFeature
- }
- 
--#if defined(HAVE_INIT_PRIORITY)
--#define CONSTRUCTOR_ATTRIBUTE __attribute__((__constructor__ 101))
--#elif __has_attribute(__constructor__)
--#define CONSTRUCTOR_ATTRIBUTE __attribute__((__constructor__))
--#else
--// FIXME: For MSVC, we should make a function pointer global in .CRT$X?? so that
--// this runs during initialization.
--#define CONSTRUCTOR_ATTRIBUTE
--#endif
--
- #ifndef _WIN32
- __attribute__((visibility("hidden")))
- #endif
-@@ -741,4 +741,24 @@ int CONSTRUCTOR_ATTRIBUTE __cpu_indicator_init(void) {
-   return 0;
- }
- 
-+#elif defined(__aarch64__)
-+// LSE support detection for out-of-line atomics
-+// using HWCAP and Auxiliary vector
-+_Bool __aarch64_have_lse_atomics
-+    __attribute__((visibility("hidden"), nocommon));
-+#if defined(__has_include)
-+#if __has_include(<sys/auxv.h>)
-+#include <sys/auxv.h>
-+#ifndef AT_HWCAP
-+#define AT_HWCAP 16
-+#endif
-+#ifndef HWCAP_ATOMICS
-+#define HWCAP_ATOMICS (1 << 8)
-+#endif
-+static void CONSTRUCTOR_ATTRIBUTE init_have_lse_atomics(void) {
-+  unsigned long hwcap = getauxval(AT_HWCAP);
-+  __aarch64_have_lse_atomics = (hwcap & HWCAP_ATOMICS) != 0;
-+}
-+#endif // defined(__has_include)
-+#endif // __has_include(<sys/auxv.h>)
- #endif
-diff --git a/vendor/compiler_builtins/.cargo-checksum.json b/vendor/compiler_builtins/.cargo-checksum.json
-index 4322d5560..455b74c98 100644
---- a/vendor/compiler_builtins/.cargo-checksum.json
-+++ b/vendor/compiler_builtins/.cargo-checksum.json
-@@ -1 +1 @@
--{"files":{"Cargo.lock":"fedb77f7dd757df815cfa613ef5a061fb889834523eb26ba3c8ac5b646266384","Cargo.toml":"cc15004b8111fcbff286d52f1a68460d52ab1c0d7ca6168cbd00836441ae934d","README.md":"2dd28b207028773ffee09ed0db563ac71b255b6b67256289d67a13cb19d15f94","build.rs":"8140e3dce70516bbf8d151565f8f50a31bbfab60e749becd649f4c11ee350282","examples/intrinsics.rs":"5bc2a8e39a541a6b55567f36ff9de17afad3cb620702a9e7c5b069a237f1197b","libm/src/math/acos.rs":"fb066ba84aba1372d706425ec14f35ff8d971756d15eeebd22ecf42a716493bb","libm/src/math/acosf.rs":"a112b82309bba1d35c4e3d6ad4d6c21ef305343d9ab601ddf4bc61d43bc9f1af","libm/src/math/acosh.rs":"56dac8538e4350cd7cf001327c89f087b68abb2e6aaad58edba8a094b09f6b0f","libm/src/math/acoshf.rs":"df5b0c4d8e37e64cf5ff2d8328b28bc35c78e84060ff769e64523ea9ff9065c1","libm/src/math/asin.rs":"095a1e98996daff45df0b154ca0ec35bbf31db964ee9fdda0207308cb20df441","libm/src/math/asinf.rs":"49cccb4db2881982643a4a7d5453f4f8daf527711bbb67313607a3c178856d61","libm/src/math/asinh.rs":"e8fc94031015fddf35e9c26b94da9f6431ee17c81cd7bd37da8ffc98f7e0b32c","libm/src/math/asinhf.rs":"8a0b8933a98a17617a66fef4c7b89eba645fdf05302000babf4a5a5f45328430","libm/src/math/atan.rs":"d4fe46e1c5739dd09997869dcfbc3c85f03c534af52e700d6c6bcf9c3fedda07","libm/src/math/atan2.rs":"2623bc8ca707d13a7092ce49adf68e9cbf4452ad1bf4a861dc40ca858606a747","libm/src/math/atan2f.rs":"dd01943e0e1f1955912e5c3ffc9467529cf64bd02ac0a6ad5ab31dbe6657f05d","libm/src/math/atanf.rs":"e41b41569474a59c970ede3538e00bda4072cf4d90040017101cc79d7dc28caa","libm/src/math/atanh.rs":"5934dbd6b7395ca4f103ace7598da723a9270e1cf6b47e7f786debe4bb3651ff","libm/src/math/atanhf.rs":"8ba4711dda19ef2dc33622be65c1483902868083543198c6bbd040d4026293de","libm/src/math/cbrt.rs":"f2c45612d2eecd93cfcdd9ebf824c754fc8f8dfd6d16862c0b9c4ccea78c2a0f","libm/src/math/cbrtf.rs":"ad0b483854aa9f17a44d36c049bf0e8ebab34c27e90b787c05f45cc230ec7d19","libm/src/math/ceil.rs":"0e6caff1597818471c28b7c3226dbfe9976fdb38ace5246172ac030754be6b79","libm/src/math/ceilf.rs":"f942bcea617de7da880b68bdfe676837a7984e2a887eaafe181be24c6bc13cc2","libm/src/math/copysign.rs":"d80c880efaf0cdf2ce0a4d4f5a68dd6c36c88d46fa997ec8ac8604bfdb26fa33","libm/src/math/copysignf.rs":"1547116071e68a42b1605eb2fc722db6466a34517dc96b92de1f29a274c3d8e3","libm/src/math/cos.rs":"74babdc13ede78e400c5ca1854c3e22d2e08cbdc5618aefa5bba6f9303ef65b6","libm/src/math/cosf.rs":"09c40f93c445b741e22477ceedf163ca33b6a47f973f7c9876cfba2692edb29c","libm/src/math/cosh.rs":"0d0a7cef18577f321996b8b87561963139f754ad7f2ea0a3b3883811f3f0693a","libm/src/math/coshf.rs":"be8ca8739e4cf1978425b349f941cb4838bba8c10cb559c7940b9fd4fdde21ad","libm/src/math/erf.rs":"9c55fc6756ba816996f0b585e07ccfa4cd87575ad525cd30c4a968b30acffda3","libm/src/math/erff.rs":"cb020e8bada9a54573a11fe3271750d73f14fed3092a881a9ceaf98fe32fd5a6","libm/src/math/exp.rs":"ca7405ad0d1993fffcf9aae96f9256307bed3c4916545aaebd1cf1d2df1807fa","libm/src/math/exp10.rs":"2deb037f88feac87a0e924b69dd496f0dd3b5d35f2a58e09d4c5166b207e517b","libm/src/math/exp10f.rs":"6979464dfe3f4f2da1f9afc909646499c4bfaef15e10a039384750e2f1586fea","libm/src/math/exp2.rs":"94a9304a2ce3bc81f6d2aefd3cde6faa30f13260d46cb13692863cdea1c9a3a1","libm/src/math/exp2f.rs":"785f2630accd35118ec07bf60273e219ed91a215b956b1552eeea5bc2a708cc8","libm/src/math/expf.rs":"ec14c18f891a9e37735ec39e6fc2e9bf674a2c2e083f22e2533b481177359c98","libm/src/math/expm1.rs":"124069f456c8ad331f265c7509d9e223b2a300e461bbfd3d6adfdcdd2ee5b8ac","libm/src/math/expm1f.rs":"18e2116d31ea8410051cc709b9d04b754b0e3ba6758ee1bf0b48749f4999b840","libm/src/math/expo2.rs":"4f4f9fecfccb43f30c2784aa7c0bb656754a52b8ab431f7d1b551c673ab133f1","libm/src/math/fabs.rs":"e6c7db39f98508098cdf64ac0c2f53866c466149a7490afb9fe22b44c4dd81b3","libm/src/math/fabsf.rs":"dc85b66e4ef662721276ae3a301af22795524e4367ee8dd40f0c24c439773c6d","libm/src/math/fdim.rs":"8ec091996005207297c2389ae563e1b18dbc6a9eac951de29a976c5cd7bc32a7","libm/src/math/fdimf.rs":"c7f3f2269834d55be26b6580ddc07c42531577955fa4de35bad1e2a361085614","libm/src/math/fenv.rs":"8730d45aa4c591f91dccdcc1ce533fa23e9c6df0c38defb9c57f749cb25e1cd0","libm/src/math/floor.rs":"be15e687a6798defc6f2c6b43028481f8104fb93d2b3f359d3d5d16b78e79d4f","libm/src/math/floorf.rs":"4ec41aa64cfafd23b8cfc043eacea5e9125cca5dcb3f5e655cc3d3458c6ba2c5","libm/src/math/fma.rs":"6872e79787e9270520189b53608f602b8ad5a099f3cef10ad5b9e0c06ef01fe0","libm/src/math/fmaf.rs":"3e0f5727e56f31218f674b9b8975d7e67b3a24a097f06a2a3eca9723cd786213","libm/src/math/fmax.rs":"f6c8e96a8b1a170648d2fa3513e7b6b459085d708c839869f82e305fe58fac37","libm/src/math/fmaxf.rs":"dff0025433232e8a5ec7bd54d847ccf596d762ea4e35f5c54fbaac9404d732fd","libm/src/math/fmin.rs":"95b6cb66ca0e0e22276f0bf88dbe8fb69796a69a196a7491bd4802efbcf2e298","libm/src/math/fminf.rs":"304bc839b15ea3d84e68d2af9f40524ec120d30a36a667b22fcb98a6c258f4c7","libm/src/math/fmod.rs":"a1c0550fc7df8164733d914e222ff0966a2ab886d6e75a1098f24fe0283ae227","libm/src/math/fmodf.rs":"ee51ed092c0eeb8195f35735ff725cfd46612e0d689a7c483538bd92fbe61828","libm/src/math/frexp.rs":"28af70026922a8ab979744c7ad4d8faba6079c4743b7eeb6d14c983a982fbbcc","libm/src/math/frexpf.rs":"2e2593ae8002ba420809ebfaf737ef001cdc912354be3d978a8c0cb930350d4d","libm/src/math/hypot.rs":"841131c4a0cea75bc8a86e29f3f6d0815a61fc99731c9984651ce83d3050d218","libm/src/math/hypotf.rs":"5f317323edc2eb699580fe54b074b7e570a7734d51a0a149c0b49b54470a836c","libm/src/math/ilogb.rs":"813413bf6266d4fc40db9c5921af3cef4f892ba93e8f6d9efe62a449d1234532","libm/src/math/ilogbf.rs":"dec462780f46682e16cfaa733238bed3b692729e951f53a44726100b6c73a716","libm/src/math/j0.rs":"9572b6396c489927d332d0e717920e61ec0618e5e9c31f7eeeec70f5e4abab06","libm/src/math/j0f.rs":"802c8254bded9b3afb6eea8b9af240038a5a4a5d811396729f69ca509e3e7d87","libm/src/math/j1.rs":"97b1af1611fa3d110c2b349ee8e4176100132ea1391b619086b47ac063b81803","libm/src/math/j1f.rs":"1d504d7750c0481273baad88196d3644f258af9ad10f8b5b16341c0aab8b9125","libm/src/math/jn.rs":"847d122334e5707ad9627146cddccc082a1f2f5bcd3e5ef54399013a7007ce88","libm/src/math/jnf.rs":"4045076f7d1a1b89882ed60d4dd60a4cbbc66b85cfb90491378c8015effcc476","libm/src/math/k_cos.rs":"f34a69e44d6b8901b03b578a75972f438ab20a7b98a0903fc1903d6fde3899be","libm/src/math/k_cosf.rs":"8f7117ff21cebf8e890a5bcfd7ea858a94172f4172b79a66d53824c2cb0888b1","libm/src/math/k_expo2.rs":"eb4ca9e6a525b7ea6da868c3cb136896682cc46f8396ba2a2ebc3ae9e9ba54b0","libm/src/math/k_expo2f.rs":"d51ad5df61cb5d1258bdb90c52bfed4572bb446a9337de9c04411ed9454ae0cb","libm/src/math/k_sin.rs":"14b2aba6ca07150c92768b5a72acaf5cde6a11d6619e14896512a7ba242e289a","libm/src/math/k_sinf.rs":"2775fcc710807164e6f37a4f8da3c8143cd5f16e19ce7c31c5591522151d7a96","libm/src/math/k_tan.rs":"a72beae4ccd9631eeeb61d6365bbeecae81c8411f3120a999c515cca0d5ea5c5","libm/src/math/k_tanf.rs":"6a794be56fa4b2f60452b9bab19af01c388f174560acbf829a351378ea39495d","libm/src/math/ldexp.rs":"b647f0096e80e4d926d8dd18d294c892ee2cb1778effe2c5e1b2664ae5cb1a4e","libm/src/math/ldexpf.rs":"98743fad2cd97a7be496f40ba3157ac1438fce0d0c25d5ab90c3b8c71c3fd0ed","libm/src/math/lgamma.rs":"498552658cc8106d7754f85ae8dbc3306ac2f0a9f7eb5a796be70c5beac92c41","libm/src/math/lgamma_r.rs":"77fb6442aeb5343926d8965e1549dde3e2cc4fd09555de6b56506001d956c344","libm/src/math/lgammaf.rs":"457105f53a4c8717e8f5a117d261dcf94e222e83981337fe23602abe883fe3f7","libm/src/math/lgammaf_r.rs":"44de75babbdd53c4a5879cd6f426e7311db82669def39df5f63914d67d6cc1b1","libm/src/math/log.rs":"b5e0c5f30d9e94351488732801be3107c12b854c3f95ad37e256dd88eeca408f","libm/src/math/log10.rs":"3425ff8be001fd1646ba15e254eb6ef4bdc6ccaf0cbee27ddf1fa84e04178b90","libm/src/math/log10f.rs":"fee4f71879bc4c99259e68c0c641364901629fb29a8ebddfcc0d090102cceddd","libm/src/math/log1p.rs":"9cf400852f165e6be19b97036ae9521fb9ca857d0a9a91c117d9123221622185","libm/src/math/log1pf.rs":"2716e6d2afa271996b7c8f47fd9e4952c88f4c1fd8c07c3e8ce8c62794bf71d8","libm/src/math/log2.rs":"dbbbfbaaa8aa6a4dbefea554ea3983090a9691228b011910c751f6adca912c40","libm/src/math/log2f.rs":"92a90350d8edce21c31c285c3e620fca7c62a2366008921715945c2c73b5b79f","libm/src/math/logf.rs":"845342cffc34d3db1f5ec12d8e5b773cd5a79056e28662fcb9bcd80207596f50","libm/src/math/mod.rs":"ffa73c08f4c0a4dc6c9d1cb9d62fe97f3a5046edede128c9441cc3adc9170dd3","libm/src/math/modf.rs":"d012ed5a708ef52b6d1313c22a46cadaf5764dde1220816e3df2f03a0fcc60ae","libm/src/math/modff.rs":"f8f1e4c27a85d2cdb3c8e74439d59ef64aa543b948f22c23227d02d8388d61c2","libm/src/math/nextafter.rs":"3282e7eef214a32736fb6928d490198ad394b26b402b45495115b104839eebfe","libm/src/math/nextafterf.rs":"0937dc8a8155c19842c12181e741cec1f7df1f7a00cee81fcb2475e2842761b7","libm/src/math/pow.rs":"64fba587143fa88cdfa5c9d30b658ab03e3a19e3ea3759394836add4068983c6","libm/src/math/powf.rs":"2c423a0ea57fdc4e20f3533f744c6e6288c998b4de8f2914fafaa0e78be81b04","libm/src/math/rem_pio2.rs":"9be99c44493b2b7088578c0fa2872630725b2da544c751516df0c6c686112a43","libm/src/math/rem_pio2_large.rs":"21762d08d72dc6f2e313123a7311683000974a09b8fcae50994d9c39239721b1","libm/src/math/rem_pio2f.rs":"377349d1308bda8cd2f776e4856fe090baa78fa3db816b680780ddf31b80d446","libm/src/math/remainder.rs":"63865f4370853c476b45bb27a5c54a4072146aa4a626835ae5263871a4e7e5dc","libm/src/math/remainderf.rs":"dd3fa432dbda8f2135428198be7bd69c57f8d13df3f365b12f52bf6a82352ac4","libm/src/math/remquo.rs":"3cc0bf55069f165c4843f2c358b3a27279c01e8cdd99f9057a3f7f31f45408f2","libm/src/math/remquof.rs":"cc749e18ecb7e766b8b8eeabdbf89ac99087d3d587e71e30f690676a3d2c1f9b","libm/src/math/round.rs":"955649c893fa3151b4a81c8e550fbc03f01bb99b40d60986e5f153ee71043f69","libm/src/math/roundf.rs":"8ae8f1f71eedd158566771cfe80b352d2f13c170a0ce8dc2691a14e8a791cfbb","libm/src/math/scalbn.rs":"b5c9d6d4177fe393cbfe1c634d75ce14b754f6cbce87c5bf979a9661491748a2","libm/src/math/scalbnf.rs":"4f198d06db1896386256fb9a5ac5b805b16b836226c18780a475cf18d7c1449c","libm/src/math/sin.rs":"0e014e6377c9673a73395ab2ffcf5962e512392afddf8a4e731fb694098faf34","libm/src/math/sincos.rs":"59e9f196140681fa817652134b8d1bdd2d6dd47bb8557b0346c77b176389f883","libm/src/math/sincosf.rs":"d37d71c7204c7892fe24c956df0fb95e7a014a808f5cbd5e125aee48c3c449b5","libm/src/math/sinf.rs":"dcddac1d56b084cbb8d0e019433c9c5fe2201d9b257a7dcf2f85c9a8f14b79cf","libm/src/math/sinh.rs":"d8ee4c7af883a526f36c1a6da13bb81fba9181b477e2f2538161a2bee97edc35","libm/src/math/sinhf.rs":"d06eb030ba9dbf7094df127262bfe99f149b4db49fa8ab8c15499660f1e46b26","libm/src/math/sqrt.rs":"824570a631c2542ccee68b65e3eb08fe79c037a29bbaaf54da5367e7b236124a","libm/src/math/sqrtf.rs":"d9e12ac55c5471c18175efdfb15c092ba71a2eb914d2e1ee3b3310a22202042e","libm/src/math/tan.rs":"930ecedaadc60f704c2dfa4e15186f59713c1ba7d948529d215223b424827db5","libm/src/math/tanf.rs":"894156a3b107aee08461eb4e7e412fc049aa237d176ae705c6e3e2d7060d94e3","libm/src/math/tanh.rs":"f1f08eb98ed959a17370a7aaf0177be36e3764543424e78feb033ed3f5e8ec98","libm/src/math/tanhf.rs":"74027b0c672a4e64bdef6d7a3069b90caec50e1e7dbb2c12d2828f310502f41e","libm/src/math/tgamma.rs":"a6aabb8365410af6611f19f58694ccb74e82bb9ba9e1cdec7e1af787cfa44815","libm/src/math/tgammaf.rs":"c95bd69957387533853532164f7e2251d2b04f5e775406b9e647226ae2bdd5ad","libm/src/math/trunc.rs":"642264897cc1505e720c8cf313be81aa9fd53aae866644a2e988d01dbc77fd8a","libm/src/math/truncf.rs":"619b675b6a9bb81eccddb1fa8214cff63e1f62136629b645c87f036672311732","src/arm.rs":"0f0e1cc79e53bf00192990544f99d85e5b2d5a1686fbeb5a2928481209ed2ef6","src/arm_linux.rs":"80d18ce84bdfa841fa133f5ee9e9fd50167344436d2d398f74347a90f27606c6","src/float/add.rs":"1a230ed4e17148cfffb7c880929c9c0d5d48d85581d75164c5031b8f05a5d567","src/float/cmp.rs":"83c8b62240a7275580dfd54786abee6cfeddf566dbb66803961e1d9115e46ae1","src/float/conv.rs":"4f2066ec5d536407819f19d6d5373b0773e7ab3e6455a7060f7c250bb6135175","src/float/div.rs":"1777fa8e1a18ce8b616b69e2cc732f4ab44781f12276a4089e074f7b4a5288c9","src/float/extend.rs":"180b2e791c58e0526de0a798845c580ce3222c8a15c8665e6e6a4bf5cf1a34aa","src/float/mod.rs":"cdee8f28d7e513fdbab282693cba79d5b06753d8259dd45829c98191ce483017","src/float/mul.rs":"2cafd35cbad5bd4ed6368f11ea13667f1f7f3f7cba05ccc10e38447e3a002075","src/float/pow.rs":"64f4935f4bed46d3b9cde4d16f59cca76a110d36d02d76f4b909157349edf5e3","src/float/sub.rs":"c2a87f4628f51d5d908d0f25b5d51ce0599dc559d5a72b20e131261f484d5848","src/int/addsub.rs":"7ec45ce1ba15b56a5b7129d3e5722c4db764c6545306d3fa9090983bcabd6f17","src/int/leading_zeros.rs":"91a445e5c0edd3c488fa95f9d5cba54a04bdc9e8573ae4fe5b30b51e01cb9476","src/int/mod.rs":"3dc621352089bbc99233fefbe3aecd3f86444d9b9119619245a0be4fc6c0ad17","src/int/mul.rs":"40c5a84c0bff28797eccc9cf8884b5880261818dee21c961f17f727b74d02261","src/int/sdiv.rs":"ec870b6a4b92e6f6c2ce5189bb98ce04f54272d32f8796d9d543b576ba32b76d","src/int/shift.rs":"4af3b9ec0b7e53587eef6257a086d4c194820f92b6fc547a7c96bd05ca60c708","src/int/specialized_div_rem/asymmetric.rs":"126104346b83e5c64c6015a1f891edb3c032e3319f802c265e6a6d010465e0fa","src/int/specialized_div_rem/binary_long.rs":"8be993c8cd2c9db59283e8e98870d276246b95b463446aa0cb13f71d1c92b31e","src/int/specialized_div_rem/delegate.rs":"f32fcf78fad5ad08eed1744bd1a4a3d444bd9fc8a71d72ad03bb3d278dc9208b","src/int/specialized_div_rem/mod.rs":"954fb4a6df7980ad77b5c4e6b5ccdfb56577a244132888b86c7b332770114ac7","src/int/specialized_div_rem/norm_shift.rs":"40ee517ca97d4d39652f4f47cb13751c5100ec05d614cadc7d660a33b217933b","src/int/specialized_div_rem/trifecta.rs":"fe693ec1c4c830215e4da4c91d827308a286d39b6fcf0d2f82587ae2a8f965bc","src/int/udiv.rs":"99b2a6e02a0324a3969a3a30fa3b6da6e1763efc9defa138e990d0ad57738fa1","src/lib.rs":"23999b91dcbf07565348208d517303391fe0dd2b37e398300bed2d5395591425","src/macros.rs":"f8a9c467eba7aa63747e4329041a1898eecaba34556c4e298f2c7452a38704b9","src/math.rs":"c97e2ad283089362721ea48e9355f8a3119559c14e1c249c67044e865827a164","src/mem/impls.rs":"8148e22bb2ac018141ec1062703a49ad154e4bee2f29211a56a4afd3d42247ea","src/mem/mod.rs":"835b1233a99bf3cabbe28ff8bb03867d0aa62793c511b2a40f05d7955dfa023a","src/mem/x86_64.rs":"ee2b6bb0449de5e4b20854bd9d3403f5e4808f8356eadf0dda26866847f6b929","src/probestack.rs":"7406031fdef254fbd052d97685e2f14353d18bd34ba4afe3035ecea7ebccf9ca","src/riscv32.rs":"b9b433d248fce35e43a7df430697545f39898fad46be7d0197284764e44993b2","src/x86.rs":"ef38d807fa13611041361b6d8b6cfc562c5cd25a6d3d79f46eea722094c711cd","src/x86_64.rs":"f8a5ac162709867da62535a233c9eb3f5ed4e77cef2c20e0ca79c497ff428c92"},"package":"3748f82c7d366a0b4950257d19db685d4958d2fa27c6d164a3f069fec42b748b"}
-\ No newline at end of file
-+{"files":{"libm/src/math/cbrtf.rs":"ad0b483854aa9f17a44d36c049bf0e8ebab34c27e90b787c05f45cc230ec7d19","libm/src/math/scalbn.rs":"b5c9d6d4177fe393cbfe1c634d75ce14b754f6cbce87c5bf979a9661491748a2","libm/src/math/scalbnf.rs":"4f198d06db1896386256fb9a5ac5b805b16b836226c18780a475cf18d7c1449c","src/probestack.rs":"7406031fdef254fbd052d97685e2f14353d18bd34ba4afe3035ecea7ebccf9ca","libm/src/math/hypotf.rs":"5f317323edc2eb699580fe54b074b7e570a7734d51a0a149c0b49b54470a836c","libm/src/math/atan2.rs":"2623bc8ca707d13a7092ce49adf68e9cbf4452ad1bf4a861dc40ca858606a747","libm/src/math/atanhf.rs":"8ba4711dda19ef2dc33622be65c1483902868083543198c6bbd040d4026293de","libm/src/math/exp10.rs":"2deb037f88feac87a0e924b69dd496f0dd3b5d35f2a58e09d4c5166b207e517b","README.md":"2dd28b207028773ffee09ed0db563ac71b255b6b67256289d67a13cb19d15f94","libm/src/math/frexp.rs":"28af70026922a8ab979744c7ad4d8faba6079c4743b7eeb6d14c983a982fbbcc","libm/src/math/fmaxf.rs":"dff0025433232e8a5ec7bd54d847ccf596d762ea4e35f5c54fbaac9404d732fd","src/mem/mod.rs":"835b1233a99bf3cabbe28ff8bb03867d0aa62793c511b2a40f05d7955dfa023a","libm/src/math/fmin.rs":"95b6cb66ca0e0e22276f0bf88dbe8fb69796a69a196a7491bd4802efbcf2e298","src/float/cmp.rs":"83c8b62240a7275580dfd54786abee6cfeddf566dbb66803961e1d9115e46ae1","libm/src/math/round.rs":"955649c893fa3151b4a81c8e550fbc03f01bb99b40d60986e5f153ee71043f69","src/int/sdiv.rs":"ec870b6a4b92e6f6c2ce5189bb98ce04f54272d32f8796d9d543b576ba32b76d","src/mem/impls.rs":"8148e22bb2ac018141ec1062703a49ad154e4bee2f29211a56a4afd3d42247ea","libm/src/math/log10f.rs":"fee4f71879bc4c99259e68c0c641364901629fb29a8ebddfcc0d090102cceddd","libm/src/math/j1f.rs":"1d504d7750c0481273baad88196d3644f258af9ad10f8b5b16341c0aab8b9125","libm/src/math/ilogbf.rs":"dec462780f46682e16cfaa733238bed3b692729e951f53a44726100b6c73a716","libm/src/math/ldexpf.rs":"98743fad2cd97a7be496f40ba3157ac1438fce0d0c25d5ab90c3b8c71c3fd0ed","libm/src/math/lgamma_r.rs":"77fb6442aeb5343926d8965e1549dde3e2cc4fd09555de6b56506001d956c344","libm/src/math/tanf.rs":"894156a3b107aee08461eb4e7e412fc049aa237d176ae705c6e3e2d7060d94e3","libm/src/math/frexpf.rs":"2e2593ae8002ba420809ebfaf737ef001cdc912354be3d978a8c0cb930350d4d","libm/src/math/j1.rs":"97b1af1611fa3d110c2b349ee8e4176100132ea1391b619086b47ac063b81803","libm/src/math/powf.rs":"2c423a0ea57fdc4e20f3533f744c6e6288c998b4de8f2914fafaa0e78be81b04","libm/src/math/tgammaf.rs":"c95bd69957387533853532164f7e2251d2b04f5e775406b9e647226ae2bdd5ad","libm/src/math/tgamma.rs":"a6aabb8365410af6611f19f58694ccb74e82bb9ba9e1cdec7e1af787cfa44815","src/lib.rs":"23999b91dcbf07565348208d517303391fe0dd2b37e398300bed2d5395591425","libm/src/math/modff.rs":"f8f1e4c27a85d2cdb3c8e74439d59ef64aa543b948f22c23227d02d8388d61c2","libm/src/math/jnf.rs":"4045076f7d1a1b89882ed60d4dd60a4cbbc66b85cfb90491378c8015effcc476","libm/src/math/lgammaf_r.rs":"44de75babbdd53c4a5879cd6f426e7311db82669def39df5f63914d67d6cc1b1","libm/src/math/fmodf.rs":"ee51ed092c0eeb8195f35735ff725cfd46612e0d689a7c483538bd92fbe61828","libm/src/math/asinhf.rs":"8a0b8933a98a17617a66fef4c7b89eba645fdf05302000babf4a5a5f45328430","Cargo.toml":"cc15004b8111fcbff286d52f1a68460d52ab1c0d7ca6168cbd00836441ae934d","libm/src/math/sinhf.rs":"d06eb030ba9dbf7094df127262bfe99f149b4db49fa8ab8c15499660f1e46b26","src/float/pow.rs":"64f4935f4bed46d3b9cde4d16f59cca76a110d36d02d76f4b909157349edf5e3","libm/src/math/fabsf.rs":"dc85b66e4ef662721276ae3a301af22795524e4367ee8dd40f0c24c439773c6d","libm/src/math/hypot.rs":"841131c4a0cea75bc8a86e29f3f6d0815a61fc99731c9984651ce83d3050d218","src/float/mod.rs":"cdee8f28d7e513fdbab282693cba79d5b06753d8259dd45829c98191ce483017","libm/src/math/cosh.rs":"0d0a7cef18577f321996b8b87561963139f754ad7f2ea0a3b3883811f3f0693a","libm/src/math/fminf.rs":"304bc839b15ea3d84e68d2af9f40524ec120d30a36a667b22fcb98a6c258f4c7","libm/src/math/asinf.rs":"49cccb4db2881982643a4a7d5453f4f8daf527711bbb67313607a3c178856d61","src/int/specialized_div_rem/mod.rs":"954fb4a6df7980ad77b5c4e6b5ccdfb56577a244132888b86c7b332770114ac7","src/arm_linux.rs":"80d18ce84bdfa841fa133f5ee9e9fd50167344436d2d398f74347a90f27606c6","libm/src/math/acos.rs":"fb066ba84aba1372d706425ec14f35ff8d971756d15eeebd22ecf42a716493bb","libm/src/math/coshf.rs":"be8ca8739e4cf1978425b349f941cb4838bba8c10cb559c7940b9fd4fdde21ad","libm/src/math/exp.rs":"ca7405ad0d1993fffcf9aae96f9256307bed3c4916545aaebd1cf1d2df1807fa","libm/src/math/roundf.rs":"8ae8f1f71eedd158566771cfe80b352d2f13c170a0ce8dc2691a14e8a791cfbb","libm/src/math/expf.rs":"ec14c18f891a9e37735ec39e6fc2e9bf674a2c2e083f22e2533b481177359c98","libm/src/math/fdim.rs":"8ec091996005207297c2389ae563e1b18dbc6a9eac951de29a976c5cd7bc32a7","libm/src/math/sqrtf.rs":"d9e12ac55c5471c18175efdfb15c092ba71a2eb914d2e1ee3b3310a22202042e","src/x86.rs":"ef38d807fa13611041361b6d8b6cfc562c5cd25a6d3d79f46eea722094c711cd","libm/src/math/cbrt.rs":"f2c45612d2eecd93cfcdd9ebf824c754fc8f8dfd6d16862c0b9c4ccea78c2a0f","libm/src/math/cosf.rs":"09c40f93c445b741e22477ceedf163ca33b6a47f973f7c9876cfba2692edb29c","libm/src/math/sincos.rs":"59e9f196140681fa817652134b8d1bdd2d6dd47bb8557b0346c77b176389f883","src/int/udiv.rs":"99b2a6e02a0324a3969a3a30fa3b6da6e1763efc9defa138e990d0ad57738fa1","libm/src/math/log2.rs":"dbbbfbaaa8aa6a4dbefea554ea3983090a9691228b011910c751f6adca912c40","libm/src/math/sinf.rs":"dcddac1d56b084cbb8d0e019433c9c5fe2201d9b257a7dcf2f85c9a8f14b79cf","libm/src/math/fmaf.rs":"3e0f5727e56f31218f674b9b8975d7e67b3a24a097f06a2a3eca9723cd786213","libm/src/math/sqrt.rs":"824570a631c2542ccee68b65e3eb08fe79c037a29bbaaf54da5367e7b236124a","libm/src/math/log1p.rs":"9cf400852f165e6be19b97036ae9521fb9ca857d0a9a91c117d9123221622185","libm/src/math/asin.rs":"095a1e98996daff45df0b154ca0ec35bbf31db964ee9fdda0207308cb20df441","libm/src/math/k_cos.rs":"f34a69e44d6b8901b03b578a75972f438ab20a7b98a0903fc1903d6fde3899be","libm/src/math/log10.rs":"3425ff8be001fd1646ba15e254eb6ef4bdc6ccaf0cbee27ddf1fa84e04178b90","libm/src/math/asinh.rs":"e8fc94031015fddf35e9c26b94da9f6431ee17c81cd7bd37da8ffc98f7e0b32c","libm/src/math/log2f.rs":"92a90350d8edce21c31c285c3e620fca7c62a2366008921715945c2c73b5b79f","libm/src/math/k_sinf.rs":"2775fcc710807164e6f37a4f8da3c8143cd5f16e19ce7c31c5591522151d7a96","libm/src/math/fma.rs":"6872e79787e9270520189b53608f602b8ad5a099f3cef10ad5b9e0c06ef01fe0","libm/src/math/erf.rs":"9c55fc6756ba816996f0b585e07ccfa4cd87575ad525cd30c4a968b30acffda3","libm/src/math/fenv.rs":"8730d45aa4c591f91dccdcc1ce533fa23e9c6df0c38defb9c57f749cb25e1cd0","src/x86_64.rs":"f8a5ac162709867da62535a233c9eb3f5ed4e77cef2c20e0ca79c497ff428c92","src/float/div.rs":"1777fa8e1a18ce8b616b69e2cc732f4ab44781f12276a4089e074f7b4a5288c9","libm/src/math/ceilf.rs":"f942bcea617de7da880b68bdfe676837a7984e2a887eaafe181be24c6bc13cc2","libm/src/math/rem_pio2_large.rs":"21762d08d72dc6f2e313123a7311683000974a09b8fcae50994d9c39239721b1","src/float/sub.rs":"c2a87f4628f51d5d908d0f25b5d51ce0599dc559d5a72b20e131261f484d5848","libm/src/math/lgamma.rs":"498552658cc8106d7754f85ae8dbc3306ac2f0a9f7eb5a796be70c5beac92c41","src/macros.rs":"f8a9c467eba7aa63747e4329041a1898eecaba34556c4e298f2c7452a38704b9","libm/src/math/copysignf.rs":"1547116071e68a42b1605eb2fc722db6466a34517dc96b92de1f29a274c3d8e3","libm/src/math/atanf.rs":"e41b41569474a59c970ede3538e00bda4072cf4d90040017101cc79d7dc28caa","libm/src/math/ldexp.rs":"b647f0096e80e4d926d8dd18d294c892ee2cb1778effe2c5e1b2664ae5cb1a4e","libm/src/math/tanh.rs":"f1f08eb98ed959a17370a7aaf0177be36e3764543424e78feb033ed3f5e8ec98","libm/src/math/remainder.rs":"63865f4370853c476b45bb27a5c54a4072146aa4a626835ae5263871a4e7e5dc","libm/src/math/jn.rs":"847d122334e5707ad9627146cddccc082a1f2f5bcd3e5ef54399013a7007ce88","libm/src/math/k_expo2f.rs":"d51ad5df61cb5d1258bdb90c52bfed4572bb446a9337de9c04411ed9454ae0cb","libm/src/math/tan.rs":"930ecedaadc60f704c2dfa4e15186f59713c1ba7d948529d215223b424827db5","src/int/specialized_div_rem/binary_long.rs":"8be993c8cd2c9db59283e8e98870d276246b95b463446aa0cb13f71d1c92b31e","libm/src/math/floorf.rs":"4ec41aa64cfafd23b8cfc043eacea5e9125cca5dcb3f5e655cc3d3458c6ba2c5","libm/src/math/ceil.rs":"0e6caff1597818471c28b7c3226dbfe9976fdb38ace5246172ac030754be6b79","libm/src/math/exp2.rs":"94a9304a2ce3bc81f6d2aefd3cde6faa30f13260d46cb13692863cdea1c9a3a1","libm/src/math/trunc.rs":"642264897cc1505e720c8cf313be81aa9fd53aae866644a2e988d01dbc77fd8a","libm/src/math/remquof.rs":"cc749e18ecb7e766b8b8eeabdbf89ac99087d3d587e71e30f690676a3d2c1f9b","libm/src/math/modf.rs":"d012ed5a708ef52b6d1313c22a46cadaf5764dde1220816e3df2f03a0fcc60ae","src/float/conv.rs":"4f2066ec5d536407819f19d6d5373b0773e7ab3e6455a7060f7c250bb6135175","libm/src/math/fabs.rs":"e6c7db39f98508098cdf64ac0c2f53866c466149a7490afb9fe22b44c4dd81b3","src/float/mul.rs":"2cafd35cbad5bd4ed6368f11ea13667f1f7f3f7cba05ccc10e38447e3a002075","src/int/mod.rs":"3dc621352089bbc99233fefbe3aecd3f86444d9b9119619245a0be4fc6c0ad17","libm/src/math/fmax.rs":"f6c8e96a8b1a170648d2fa3513e7b6b459085d708c839869f82e305fe58fac37","libm/src/math/log.rs":"b5e0c5f30d9e94351488732801be3107c12b854c3f95ad37e256dd88eeca408f","libm/src/math/erff.rs":"cb020e8bada9a54573a11fe3271750d73f14fed3092a881a9ceaf98fe32fd5a6","libm/src/math/atan.rs":"d4fe46e1c5739dd09997869dcfbc3c85f03c534af52e700d6c6bcf9c3fedda07","libm/src/math/k_tanf.rs":"6a794be56fa4b2f60452b9bab19af01c388f174560acbf829a351378ea39495d","src/math.rs":"c97e2ad283089362721ea48e9355f8a3119559c14e1c249c67044e865827a164","libm/src/math/j0.rs":"9572b6396c489927d332d0e717920e61ec0618e5e9c31f7eeeec70f5e4abab06","libm/src/math/sincosf.rs":"d37d71c7204c7892fe24c956df0fb95e7a014a808f5cbd5e125aee48c3c449b5","libm/src/math/remquo.rs":"3cc0bf55069f165c4843f2c358b3a27279c01e8cdd99f9057a3f7f31f45408f2","libm/src/math/j0f.rs":"802c8254bded9b3afb6eea8b9af240038a5a4a5d811396729f69ca509e3e7d87","libm/src/math/lgammaf.rs":"457105f53a4c8717e8f5a117d261dcf94e222e83981337fe23602abe883fe3f7","src/int/specialized_div_rem/norm_shift.rs":"40ee517ca97d4d39652f4f47cb13751c5100ec05d614cadc7d660a33b217933b","libm/src/math/sin.rs":"0e014e6377c9673a73395ab2ffcf5962e512392afddf8a4e731fb694098faf34","src/float/add.rs":"1a230ed4e17148cfffb7c880929c9c0d5d48d85581d75164c5031b8f05a5d567","libm/src/math/log1pf.rs":"2716e6d2afa271996b7c8f47fd9e4952c88f4c1fd8c07c3e8ce8c62794bf71d8","libm/src/math/rem_pio2f.rs":"377349d1308bda8cd2f776e4856fe090baa78fa3db816b680780ddf31b80d446","src/arm.rs":"0f0e1cc79e53bf00192990544f99d85e5b2d5a1686fbeb5a2928481209ed2ef6","libm/src/math/floor.rs":"be15e687a6798defc6f2c6b43028481f8104fb93d2b3f359d3d5d16b78e79d4f","libm/src/math/ilogb.rs":"813413bf6266d4fc40db9c5921af3cef4f892ba93e8f6d9efe62a449d1234532","libm/src/math/k_cosf.rs":"8f7117ff21cebf8e890a5bcfd7ea858a94172f4172b79a66d53824c2cb0888b1","libm/src/math/sinh.rs":"d8ee4c7af883a526f36c1a6da13bb81fba9181b477e2f2538161a2bee97edc35","libm/src/math/fdimf.rs":"c7f3f2269834d55be26b6580ddc07c42531577955fa4de35bad1e2a361085614","libm/src/math/exp10f.rs":"6979464dfe3f4f2da1f9afc909646499c4bfaef15e10a039384750e2f1586fea","libm/src/math/nextafter.rs":"3282e7eef214a32736fb6928d490198ad394b26b402b45495115b104839eebfe","src/int/specialized_div_rem/trifecta.rs":"fe693ec1c4c830215e4da4c91d827308a286d39b6fcf0d2f82587ae2a8f965bc","libm/src/math/atan2f.rs":"dd01943e0e1f1955912e5c3ffc9467529cf64bd02ac0a6ad5ab31dbe6657f05d","libm/src/math/truncf.rs":"619b675b6a9bb81eccddb1fa8214cff63e1f62136629b645c87f036672311732","libm/src/math/acosh.rs":"56dac8538e4350cd7cf001327c89f087b68abb2e6aaad58edba8a094b09f6b0f","libm/src/math/pow.rs":"64fba587143fa88cdfa5c9d30b658ab03e3a19e3ea3759394836add4068983c6","libm/src/math/remainderf.rs":"dd3fa432dbda8f2135428198be7bd69c57f8d13df3f365b12f52bf6a82352ac4","libm/src/math/k_sin.rs":"14b2aba6ca07150c92768b5a72acaf5cde6a11d6619e14896512a7ba242e289a","libm/src/math/k_tan.rs":"a72beae4ccd9631eeeb61d6365bbeecae81c8411f3120a999c515cca0d5ea5c5","libm/src/math/fmod.rs":"a1c0550fc7df8164733d914e222ff0966a2ab886d6e75a1098f24fe0283ae227","libm/src/math/atanh.rs":"5934dbd6b7395ca4f103ace7598da723a9270e1cf6b47e7f786debe4bb3651ff","libm/src/math/acosf.rs":"a112b82309bba1d35c4e3d6ad4d6c21ef305343d9ab601ddf4bc61d43bc9f1af","libm/src/math/exp2f.rs":"785f2630accd35118ec07bf60273e219ed91a215b956b1552eeea5bc2a708cc8","src/int/leading_zeros.rs":"91a445e5c0edd3c488fa95f9d5cba54a04bdc9e8573ae4fe5b30b51e01cb9476","build.rs":"a47b5ed5c7d2a6f2fbc3e9803a8d4f75839db9ac03aa4fab72932d899ecb590f","src/mem/x86_64.rs":"ee2b6bb0449de5e4b20854bd9d3403f5e4808f8356eadf0dda26866847f6b929","Cargo.lock":"fedb77f7dd757df815cfa613ef5a061fb889834523eb26ba3c8ac5b646266384","src/int/shift.rs":"4af3b9ec0b7e53587eef6257a086d4c194820f92b6fc547a7c96bd05ca60c708","libm/src/math/k_expo2.rs":"eb4ca9e6a525b7ea6da868c3cb136896682cc46f8396ba2a2ebc3ae9e9ba54b0","libm/src/math/expm1.rs":"124069f456c8ad331f265c7509d9e223b2a300e461bbfd3d6adfdcdd2ee5b8ac","libm/src/math/mod.rs":"ffa73c08f4c0a4dc6c9d1cb9d62fe97f3a5046edede128c9441cc3adc9170dd3","src/float/extend.rs":"180b2e791c58e0526de0a798845c580ce3222c8a15c8665e6e6a4bf5cf1a34aa","libm/src/math/logf.rs":"845342cffc34d3db1f5ec12d8e5b773cd5a79056e28662fcb9bcd80207596f50","libm/src/math/acoshf.rs":"df5b0c4d8e37e64cf5ff2d8328b28bc35c78e84060ff769e64523ea9ff9065c1","libm/src/math/tanhf.rs":"74027b0c672a4e64bdef6d7a3069b90caec50e1e7dbb2c12d2828f310502f41e","src/int/mul.rs":"40c5a84c0bff28797eccc9cf8884b5880261818dee21c961f17f727b74d02261","libm/src/math/nextafterf.rs":"0937dc8a8155c19842c12181e741cec1f7df1f7a00cee81fcb2475e2842761b7","src/int/specialized_div_rem/asymmetric.rs":"126104346b83e5c64c6015a1f891edb3c032e3319f802c265e6a6d010465e0fa","libm/src/math/expm1f.rs":"18e2116d31ea8410051cc709b9d04b754b0e3ba6758ee1bf0b48749f4999b840","libm/src/math/expo2.rs":"4f4f9fecfccb43f30c2784aa7c0bb656754a52b8ab431f7d1b551c673ab133f1","examples/intrinsics.rs":"5bc2a8e39a541a6b55567f36ff9de17afad3cb620702a9e7c5b069a237f1197b","libm/src/math/cos.rs":"74babdc13ede78e400c5ca1854c3e22d2e08cbdc5618aefa5bba6f9303ef65b6","libm/src/math/copysign.rs":"d80c880efaf0cdf2ce0a4d4f5a68dd6c36c88d46fa997ec8ac8604bfdb26fa33","libm/src/math/rem_pio2.rs":"9be99c44493b2b7088578c0fa2872630725b2da544c751516df0c6c686112a43","src/int/addsub.rs":"7ec45ce1ba15b56a5b7129d3e5722c4db764c6545306d3fa9090983bcabd6f17","src/int/specialized_div_rem/delegate.rs":"f32fcf78fad5ad08eed1744bd1a4a3d444bd9fc8a71d72ad03bb3d278dc9208b","src/riscv32.rs":"b9b433d248fce35e43a7df430697545f39898fad46be7d0197284764e44993b2"},"package":"3748f82c7d366a0b4950257d19db685d4958d2fa27c6d164a3f069fec42b748b"}
-\ No newline at end of file
-diff --git a/vendor/compiler_builtins/build.rs b/vendor/compiler_builtins/build.rs
-index f948edba9..c57802569 100644
---- a/vendor/compiler_builtins/build.rs
-+++ b/vendor/compiler_builtins/build.rs
-@@ -81,7 +81,7 @@ mod c {
- 
-     use std::collections::BTreeMap;
-     use std::env;
--    use std::path::PathBuf;
-+    use std::path::{Path, PathBuf};
- 
-     struct Sources {
-         // SYMBOL -> PATH TO SOURCE
-@@ -487,7 +487,20 @@ mod c {
-         // use of that macro in lib/builtins/int_util.h in compiler-rt.
-         cfg.flag_if_supported(&format!("-ffile-prefix-map={}=.", root.display()));
- 
-+        // Include out-of-line atomics for aarch64, which are all generated by supplying different
-+        // sets of flags to the same source file.
-         let src_dir = root.join("lib/builtins");
-+        if target_arch == "aarch64" {
-+            let atomics_libs = build_aarch64_out_of_line_atomics_libraries(&src_dir, cfg);
-+            if !atomics_libs.is_empty() {
-+                for library in  atomics_libs {
-+                    cfg.object(library);
-+                }
-+                // Some run-time CPU feature detection is necessary, as well.
-+                sources.extend(&[("__aarch64_have_lse_atomics", "cpu_model.c")]);
-+            }
-+        }
-+
-         for (sym, src) in sources.map.iter() {
-             let src = src_dir.join(src);
-             cfg.file(&src);
-@@ -497,4 +510,60 @@ mod c {
- 
-         cfg.compile("libcompiler-rt.a");
-     }
-+
-+    fn build_aarch64_out_of_line_atomics_libraries(
-+        builtins_dir: &Path,
-+        cfg: &cc::Build,
-+    ) -> Vec<PathBuf> {
-+        // NOTE: because we're recompiling the same source file in N different ways, building
-+        // serially is necessary. If we want to lift this restriction, we can either:
-+        // - create symlinks to lse.S and build those_(though we'd still need to pass special
-+        //   #define-like flags to each of these), or
-+        // - synthesizing tiny .S files in out/ with the proper #defines, which ultimately #include
-+        //   lse.S.
-+        // That said, it's unclear how useful this added complexity will be, so just do the simple
-+        // thing for now.
-+        let outlined_atomics_file = builtins_dir.join("aarch64/lse.S");
-+
-+        // A stable release hasn't been made with lse.S yet. Until we pick that up, do nothing.
-+        if !outlined_atomics_file.exists() {
-+            return vec![];
-+        }
-+
-+        println!("cargo:rerun-if-changed={}", outlined_atomics_file.display());
-+        let out_dir: PathBuf = env::var("OUT_DIR").unwrap().into();
-+
-+        // Ideally, this would be a Vec of object files, but cc doesn't make it *entirely*
-+        // trivial to build an individual object.
-+        let mut atomics_libraries = Vec::new();
-+        for instruction_type in &["cas", "cwp", "ldadd", "ldclr", "ldeor", "ldset"] {
-+            for size in &[1, 2, 4, 8, 16] {
-+                if *size == 16 && *instruction_type != "cas" {
-+                    continue;
-+                }
-+
-+                for (model_number, model_name) in
-+                    &[(1, "relax"), (2, "acq"), (3, "rel"), (4, "acq_rel")]
-+                {
-+                    let library_name = format!(
-+                        "liboutline_atomic_helper_{}_{}_{}.a",
-+                        instruction_type, size, model_name
-+                    );
-+                    let sym = format!("__aarch64_{}{}_{}", instruction_type, size, model_name);
-+                    let mut cfg = cfg.clone();
-+
-+                    cfg.include(&builtins_dir)
-+                        .define(&format!("L_{}", instruction_type), None)
-+                        .define("SIZE", size.to_string().as_str())
-+                        .define("MODEL", model_number.to_string().as_str())
-+                        .file(&outlined_atomics_file);
-+                    cfg.compile(&library_name);
-+
-+                    atomics_libraries.push(out_dir.join(library_name));
-+                    println!("cargo:rustc-cfg={}=\"optimized-c\"", sym);
-+                }
-+            }
-+        }
-+        atomics_libraries
-+    }
- }
diff --git a/dev-lang/rust/files/rust-1.51.0-backport-pr81728.patch b/dev-lang/rust/files/rust-1.51.0-backport-pr81728.patch
deleted file mode 100644
index 20373f4..0000000
--- a/dev-lang/rust/files/rust-1.51.0-backport-pr81728.patch
+++ /dev/null
@@ -1,181 +0,0 @@
-From 70f17ca715d3d7e2fd79cc909b95fd3a6357c13e Mon Sep 17 00:00:00 2001
-From: Yechan Bae <yechan@gatech.edu>
-Date: Wed, 3 Feb 2021 16:36:33 -0500
-Subject: [PATCH 1/2] Fixes #80335
-
----
- library/alloc/src/str.rs   | 42 ++++++++++++++++++++++----------------
- library/alloc/tests/str.rs | 30 +++++++++++++++++++++++++++
- 2 files changed, 54 insertions(+), 18 deletions(-)
-
-diff --git a/library/alloc/src/str.rs b/library/alloc/src/str.rs
-index 70e0c7dba5ea..a7584c6b6510 100644
---- a/library/alloc/src/str.rs
-+++ b/library/alloc/src/str.rs
-@@ -90,8 +90,8 @@ fn join(slice: &Self, sep: &str) -> String {
-     }
- }
- 
--macro_rules! spezialize_for_lengths {
--    ($separator:expr, $target:expr, $iter:expr; $($num:expr),*) => {
-+macro_rules! specialize_for_lengths {
-+    ($separator:expr, $target:expr, $iter:expr; $($num:expr),*) => {{
-         let mut target = $target;
-         let iter = $iter;
-         let sep_bytes = $separator;
-@@ -102,7 +102,8 @@ macro_rules! spezialize_for_lengths {
-                 $num => {
-                     for s in iter {
-                         copy_slice_and_advance!(target, sep_bytes);
--                        copy_slice_and_advance!(target, s.borrow().as_ref());
-+                        let content_bytes = s.borrow().as_ref();
-+                        copy_slice_and_advance!(target, content_bytes);
-                     }
-                 },
-             )*
-@@ -110,11 +111,13 @@ macro_rules! spezialize_for_lengths {
-                 // arbitrary non-zero size fallback
-                 for s in iter {
-                     copy_slice_and_advance!(target, sep_bytes);
--                    copy_slice_and_advance!(target, s.borrow().as_ref());
-+                    let content_bytes = s.borrow().as_ref();
-+                    copy_slice_and_advance!(target, content_bytes);
-                 }
-             }
-         }
--    };
-+        target
-+    }}
- }
- 
- macro_rules! copy_slice_and_advance {
-@@ -153,7 +156,7 @@ fn join_generic_copy<B, T, S>(slice: &[S], sep: &[T]) -> Vec<T>
-     // if the `len` calculation overflows, we'll panic
-     // we would have run out of memory anyway and the rest of the function requires
-     // the entire Vec pre-allocated for safety
--    let len = sep_len
-+    let reserved_len = sep_len
-         .checked_mul(iter.len())
-         .and_then(|n| {
-             slice.iter().map(|s| s.borrow().as_ref().len()).try_fold(n, usize::checked_add)
-@@ -161,22 +164,25 @@ fn join_generic_copy<B, T, S>(slice: &[S], sep: &[T]) -> Vec<T>
-         .expect("attempt to join into collection with len > usize::MAX");
- 
-     // crucial for safety
--    let mut result = Vec::with_capacity(len);
--    assert!(result.capacity() >= len);
-+    let mut result = Vec::with_capacity(reserved_len);
-+    debug_assert!(result.capacity() >= reserved_len);
- 
-     result.extend_from_slice(first.borrow().as_ref());
- 
-     unsafe {
--        {
--            let pos = result.len();
--            let target = result.get_unchecked_mut(pos..len);
--
--            // copy separator and slices over without bounds checks
--            // generate loops with hardcoded offsets for small separators
--            // massive improvements possible (~ x2)
--            spezialize_for_lengths!(sep, target, iter; 0, 1, 2, 3, 4);
--        }
--        result.set_len(len);
-+        let pos = result.len();
-+        let target = result.get_unchecked_mut(pos..reserved_len);
-+
-+        // copy separator and slices over without bounds checks
-+        // generate loops with hardcoded offsets for small separators
-+        // massive improvements possible (~ x2)
-+        let remain = specialize_for_lengths!(sep, target, iter; 0, 1, 2, 3, 4);
-+
-+        // issue #80335: A weird borrow implementation can return different
-+        // slices for the length calculation and the actual copy, so
-+        // `remain.len()` might be non-zero.
-+        let result_len = reserved_len - remain.len();
-+        result.set_len(result_len);
-     }
-     result
- }
-diff --git a/library/alloc/tests/str.rs b/library/alloc/tests/str.rs
-index 604835e6cc4a..6df8d8c2f354 100644
---- a/library/alloc/tests/str.rs
-+++ b/library/alloc/tests/str.rs
-@@ -160,6 +160,36 @@ fn test_join_for_different_lengths_with_long_separator() {
-     test_join!("abc", ["", "a", "bc"], "");
- }
- 
-+#[test]
-+fn test_join_isue_80335() {
-+    use core::{borrow::Borrow, cell::Cell};
-+
-+    struct WeirdBorrow {
-+        state: Cell<bool>,
-+    }
-+
-+    impl Default for WeirdBorrow {
-+        fn default() -> Self {
-+            WeirdBorrow { state: Cell::new(false) }
-+        }
-+    }
-+
-+    impl Borrow<str> for WeirdBorrow {
-+        fn borrow(&self) -> &str {
-+            let state = self.state.get();
-+            if state {
-+                "0"
-+            } else {
-+                self.state.set(true);
-+                "123456"
-+            }
-+        }
-+    }
-+
-+    let arr: [WeirdBorrow; 3] = Default::default();
-+    test_join!("0-0-0", arr, "-");
-+}
-+
- #[test]
- #[cfg_attr(miri, ignore)] // Miri is too slow
- fn test_unsafe_slice() {
--- 
-2.31.1
-
-
-From 10020817d2e6756be1ff2ac3c182af97cf7fe904 Mon Sep 17 00:00:00 2001
-From: Yechan Bae <yechan@gatech.edu>
-Date: Sat, 20 Mar 2021 13:42:54 -0400
-Subject: [PATCH 2/2] Update the comment
-
----
- library/alloc/src/str.rs | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/library/alloc/src/str.rs b/library/alloc/src/str.rs
-index a7584c6b6510..4d1e876457b8 100644
---- a/library/alloc/src/str.rs
-+++ b/library/alloc/src/str.rs
-@@ -163,7 +163,7 @@ fn join_generic_copy<B, T, S>(slice: &[S], sep: &[T]) -> Vec<T>
-         })
-         .expect("attempt to join into collection with len > usize::MAX");
- 
--    // crucial for safety
-+    // prepare an uninitialized buffer
-     let mut result = Vec::with_capacity(reserved_len);
-     debug_assert!(result.capacity() >= reserved_len);
- 
-@@ -178,9 +178,9 @@ fn join_generic_copy<B, T, S>(slice: &[S], sep: &[T]) -> Vec<T>
-         // massive improvements possible (~ x2)
-         let remain = specialize_for_lengths!(sep, target, iter; 0, 1, 2, 3, 4);
- 
--        // issue #80335: A weird borrow implementation can return different
--        // slices for the length calculation and the actual copy, so
--        // `remain.len()` might be non-zero.
-+        // A weird borrow implementation may return different
-+        // slices for the length calculation and the actual copy.
-+        // Make sure we don't expose uninitialized bytes to the caller.
-         let result_len = reserved_len - remain.len();
-         result.set_len(result_len);
-     }
--- 
-2.31.1
-
diff --git a/dev-lang/rust/files/rust-1.51.0-backport-pr81741.patch b/dev-lang/rust/files/rust-1.51.0-backport-pr81741.patch
deleted file mode 100644
index 8ef22ee..0000000
--- a/dev-lang/rust/files/rust-1.51.0-backport-pr81741.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 40d3f2d7ef5835317fe9df9ecc01f4c363def4fd Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
-Date: Thu, 4 Feb 2021 10:23:01 +0200
-Subject: [PATCH] Increment `self.index` before calling
- `Iterator::self.a.__iterator_get_unchecked` in `Zip` `TrustedRandomAccess`
- specialization
-
-Otherwise if `Iterator::self.a.__iterator_get_unchecked` panics the
-index would not have been incremented yet and another call to
-`Iterator::next` would read from the same index again, which is not
-allowed according to the API contract of `TrustedRandomAccess` for
-`!Clone`.
-
-Fixes https://github.com/rust-lang/rust/issues/81740
-
-(cherry picked from commit 86a4b27475aab52b998c15f5758540697cc9cff0)
----
- library/core/src/iter/adapters/zip.rs | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/library/core/src/iter/adapters/zip.rs b/library/core/src/iter/adapters/zip.rs
-index 98b8dca96140..9f9835345200 100644
---- a/library/core/src/iter/adapters/zip.rs
-+++ b/library/core/src/iter/adapters/zip.rs
-@@ -198,12 +198,13 @@ fn next(&mut self) -> Option<(A::Item, B::Item)> {
-                 Some((self.a.__iterator_get_unchecked(i), self.b.__iterator_get_unchecked(i)))
-             }
-         } else if A::may_have_side_effect() && self.index < self.a.size() {
-+            let i = self.index;
-+            self.index += 1;
-             // match the base implementation's potential side effects
--            // SAFETY: we just checked that `self.index` < `self.a.len()`
-+            // SAFETY: we just checked that `i` < `self.a.len()`
-             unsafe {
--                self.a.__iterator_get_unchecked(self.index);
-+                self.a.__iterator_get_unchecked(i);
-             }
--            self.index += 1;
-             None
-         } else {
-             None
--- 
-2.31.1
-
diff --git a/dev-lang/rust/files/rust-1.51.0-backport-pr82289.patch b/dev-lang/rust/files/rust-1.51.0-backport-pr82289.patch
deleted file mode 100644
index 5cf5433..0000000
--- a/dev-lang/rust/files/rust-1.51.0-backport-pr82289.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From 5222e2ba2d97cd716a379b4ae6bc62c5f7c2dd36 Mon Sep 17 00:00:00 2001
-From: Giacomo Stevanato <giaco.stevanato@gmail.com>
-Date: Fri, 19 Feb 2021 12:15:37 +0100
-Subject: [PATCH 1/3] Increment self.len in specialized ZipImpl to avoid
- underflow in size_hint
-
-(cherry picked from commit 66a260617a88ed1ad55a46f03c5a90d5ad3004d3)
----
- library/core/src/iter/adapters/zip.rs | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/library/core/src/iter/adapters/zip.rs b/library/core/src/iter/adapters/zip.rs
-index 9f9835345200..f08bfac837fe 100644
---- a/library/core/src/iter/adapters/zip.rs
-+++ b/library/core/src/iter/adapters/zip.rs
-@@ -200,6 +200,7 @@ fn next(&mut self) -> Option<(A::Item, B::Item)> {
-         } else if A::may_have_side_effect() && self.index < self.a.size() {
-             let i = self.index;
-             self.index += 1;
-+            self.len += 1;
-             // match the base implementation's potential side effects
-             // SAFETY: we just checked that `i` < `self.a.len()`
-             unsafe {
--- 
-2.31.1
-
-
-From d39669fc8282830a374d19d204f7b4ee8eb1e381 Mon Sep 17 00:00:00 2001
-From: Giacomo Stevanato <giaco.stevanato@gmail.com>
-Date: Fri, 19 Feb 2021 12:16:12 +0100
-Subject: [PATCH 2/3] Add test for underflow in specialized Zip's size_hint
-
-(cherry picked from commit 8b9ac4d4155c74db5b317046033ab9c05a09e351)
----
- library/core/tests/iter/adapters/zip.rs | 20 ++++++++++++++++++++
- 1 file changed, 20 insertions(+)
-
-diff --git a/library/core/tests/iter/adapters/zip.rs b/library/core/tests/iter/adapters/zip.rs
-index 1fce0951e365..a59771039295 100644
---- a/library/core/tests/iter/adapters/zip.rs
-+++ b/library/core/tests/iter/adapters/zip.rs
-@@ -245,3 +245,23 @@ fn test_double_ended_zip() {
-     assert_eq!(it.next_back(), Some((3, 3)));
-     assert_eq!(it.next(), None);
- }
-+
-+#[test]
-+fn test_issue_82282() {
-+    fn overflowed_zip(arr: &[i32]) -> impl Iterator<Item = (i32, &())> {
-+        static UNIT_EMPTY_ARR: [(); 0] = [];
-+
-+        let mapped = arr.into_iter().map(|i| *i);
-+        let mut zipped = mapped.zip(UNIT_EMPTY_ARR.iter());
-+        zipped.next();
-+        zipped
-+    }
-+
-+    let arr = [1, 2, 3];
-+    let zip = overflowed_zip(&arr).zip(overflowed_zip(&arr));
-+
-+    assert_eq!(zip.size_hint(), (0, Some(0)));
-+    for _ in zip {
-+        panic!();
-+    }
-+}
--- 
-2.31.1
-
-
-From 4b382167dd5ed5a6eac0cf314bfb86e3704b6e76 Mon Sep 17 00:00:00 2001
-From: Giacomo Stevanato <giaco.stevanato@gmail.com>
-Date: Fri, 19 Feb 2021 12:17:48 +0100
-Subject: [PATCH 3/3] Remove useless comparison since now self.index <=
- self.len is an invariant
-
-(cherry picked from commit aeb4ea739efb70e0002a4a9c4c7b8027dd0620b3)
----
- library/core/src/iter/adapters/zip.rs | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/library/core/src/iter/adapters/zip.rs b/library/core/src/iter/adapters/zip.rs
-index f08bfac837fe..dcbcb1ce7200 100644
---- a/library/core/src/iter/adapters/zip.rs
-+++ b/library/core/src/iter/adapters/zip.rs
-@@ -261,7 +261,7 @@ fn next_back(&mut self) -> Option<(A::Item, B::Item)>
-             if sz_a != sz_b {
-                 let sz_a = self.a.size();
-                 if a_side_effect && sz_a > self.len {
--                    for _ in 0..sz_a - cmp::max(self.len, self.index) {
-+                    for _ in 0..sz_a - self.len {
-                         self.a.next_back();
-                     }
-                 }
--- 
-2.31.1
-
diff --git a/dev-lang/rust/files/rust-1.51.0-backport-pr82292.patch b/dev-lang/rust/files/rust-1.51.0-backport-pr82292.patch
deleted file mode 100644
index 4baf72a..0000000
--- a/dev-lang/rust/files/rust-1.51.0-backport-pr82292.patch
+++ /dev/null
@@ -1,120 +0,0 @@
-From 0babb88efc4d36f3defafc3c3c0343793fa05d52 Mon Sep 17 00:00:00 2001
-From: Giacomo Stevanato <giaco.stevanato@gmail.com>
-Date: Wed, 3 Mar 2021 21:09:01 +0100
-Subject: [PATCH 1/2] Prevent Zip specialization from calling
- __iterator_get_unchecked twice with the same index after calling next_back
-
-(cherry picked from commit 2371914a05f8f2763dffe6e2511d0870bcd6b461)
----
- library/core/src/iter/adapters/zip.rs | 13 +++++++++----
- 1 file changed, 9 insertions(+), 4 deletions(-)
-
-diff --git a/library/core/src/iter/adapters/zip.rs b/library/core/src/iter/adapters/zip.rs
-index dcbcb1ce7200..7dac0c63ca2d 100644
---- a/library/core/src/iter/adapters/zip.rs
-+++ b/library/core/src/iter/adapters/zip.rs
-@@ -13,9 +13,10 @@
- pub struct Zip<A, B> {
-     a: A,
-     b: B,
--    // index and len are only used by the specialized version of zip
-+    // index, len and a_len are only used by the specialized version of zip
-     index: usize,
-     len: usize,
-+    a_len: usize,
- }
- impl<A: Iterator, B: Iterator> Zip<A, B> {
-     pub(in crate::iter) fn new(a: A, b: B) -> Zip<A, B> {
-@@ -110,6 +111,7 @@ impl<A, B> ZipImpl<A, B> for Zip<A, B>
-             b,
-             index: 0, // unused
-             len: 0,   // unused
-+            a_len: 0, // unused
-         }
-     }
- 
-@@ -184,8 +186,9 @@ impl<A, B> ZipImpl<A, B> for Zip<A, B>
-     B: TrustedRandomAccess + Iterator,
- {
-     fn new(a: A, b: B) -> Self {
--        let len = cmp::min(a.size(), b.size());
--        Zip { a, b, index: 0, len }
-+        let a_len = a.size();
-+        let len = cmp::min(a_len, b.size());
-+        Zip { a, b, index: 0, len, a_len }
-     }
- 
-     #[inline]
-@@ -197,7 +200,7 @@ fn next(&mut self) -> Option<(A::Item, B::Item)> {
-             unsafe {
-                 Some((self.a.__iterator_get_unchecked(i), self.b.__iterator_get_unchecked(i)))
-             }
--        } else if A::may_have_side_effect() && self.index < self.a.size() {
-+        } else if A::may_have_side_effect() && self.index < self.a_len {
-             let i = self.index;
-             self.index += 1;
-             self.len += 1;
-@@ -264,6 +267,7 @@ fn next_back(&mut self) -> Option<(A::Item, B::Item)>
-                     for _ in 0..sz_a - self.len {
-                         self.a.next_back();
-                     }
-+                    self.a_len = self.len;
-                 }
-                 let sz_b = self.b.size();
-                 if b_side_effect && sz_b > self.len {
-@@ -275,6 +279,7 @@ fn next_back(&mut self) -> Option<(A::Item, B::Item)>
-         }
-         if self.index < self.len {
-             self.len -= 1;
-+            self.a_len -= 1;
-             let i = self.len;
-             // SAFETY: `i` is smaller than the previous value of `self.len`,
-             // which is also smaller than or equal to `self.a.len()` and `self.b.len()`
--- 
-2.31.1
-
-
-From 19af66a6f3e2bbb4780bb9eae7eb53bd13e3dd0f Mon Sep 17 00:00:00 2001
-From: Giacomo Stevanato <giaco.stevanato@gmail.com>
-Date: Fri, 19 Feb 2021 15:25:09 +0100
-Subject: [PATCH 2/2] Add relevant test
-
-(cherry picked from commit c1bfb9a78db6d481be1d03355672712c766e20b0)
----
- library/core/tests/iter/adapters/zip.rs | 23 +++++++++++++++++++++++
- 1 file changed, 23 insertions(+)
-
-diff --git a/library/core/tests/iter/adapters/zip.rs b/library/core/tests/iter/adapters/zip.rs
-index a59771039295..000c15f72c88 100644
---- a/library/core/tests/iter/adapters/zip.rs
-+++ b/library/core/tests/iter/adapters/zip.rs
-@@ -265,3 +265,26 @@ fn overflowed_zip(arr: &[i32]) -> impl Iterator<Item = (i32, &())> {
-         panic!();
-     }
- }
-+
-+#[test]
-+fn test_issue_82291() {
-+    use std::cell::Cell;
-+
-+    let mut v1 = [()];
-+    let v2 = [()];
-+
-+    let called = Cell::new(0);
-+
-+    let mut zip = v1
-+        .iter_mut()
-+        .map(|r| {
-+            called.set(called.get() + 1);
-+            r
-+        })
-+        .zip(&v2);
-+
-+    zip.next_back();
-+    assert_eq!(called.get(), 1);
-+    zip.next();
-+    assert_eq!(called.get(), 1);
-+}
--- 
-2.31.1
-
diff --git a/dev-lang/rust/files/rust-1.51.0-backport-pr83629.patch b/dev-lang/rust/files/rust-1.51.0-backport-pr83629.patch
deleted file mode 100644
index 7f68d95..0000000
--- a/dev-lang/rust/files/rust-1.51.0-backport-pr83629.patch
+++ /dev/null
@@ -1,142 +0,0 @@
-From 3834e7b7393bf1a0d7df02ccd1d2e896c1465769 Mon Sep 17 00:00:00 2001
-From: The8472 <git@infinite-source.de>
-Date: Mon, 29 Mar 2021 04:22:34 +0200
-Subject: [PATCH 1/2] add testcase for double-drop during Vec in-place
- collection
-
----
- library/alloc/tests/vec.rs | 38 +++++++++++++++++++++++++++++++++++++-
- 1 file changed, 37 insertions(+), 1 deletion(-)
-
-diff --git a/library/alloc/tests/vec.rs b/library/alloc/tests/vec.rs
-index 5c7ff67bc621..4cdb7eefcdf1 100644
---- a/library/alloc/tests/vec.rs
-+++ b/library/alloc/tests/vec.rs
-@@ -954,7 +954,7 @@ fn test_from_iter_specialization_head_tail_drop() {
- }
- 
- #[test]
--fn test_from_iter_specialization_panic_drop() {
-+fn test_from_iter_specialization_panic_during_iteration_drops() {
-     let drop_count: Vec<_> = (0..=2).map(|_| Rc::new(())).collect();
-     let src: Vec<_> = drop_count.iter().cloned().collect();
-     let iter = src.into_iter();
-@@ -977,6 +977,42 @@ fn test_from_iter_specialization_panic_drop() {
-     );
- }
- 
-+#[test]
-+fn test_from_iter_specialization_panic_during_drop_leaks() {
-+    static mut DROP_COUNTER: usize = 0;
-+
-+    #[derive(Debug)]
-+    enum Droppable {
-+        DroppedTwice(Box<i32>),
-+        PanicOnDrop,
-+    }
-+
-+    impl Drop for Droppable {
-+        fn drop(&mut self) {
-+            match self {
-+                Droppable::DroppedTwice(_) => {
-+                    unsafe {
-+                        DROP_COUNTER += 1;
-+                    }
-+                    println!("Dropping!")
-+                }
-+                Droppable::PanicOnDrop => {
-+                    if !std::thread::panicking() {
-+                        panic!();
-+                    }
-+                }
-+            }
-+        }
-+    }
-+
-+    let _ = std::panic::catch_unwind(AssertUnwindSafe(|| {
-+        let v = vec![Droppable::DroppedTwice(Box::new(123)), Droppable::PanicOnDrop];
-+        let _ = v.into_iter().take(0).collect::<Vec<_>>();
-+    }));
-+
-+    assert_eq!(unsafe { DROP_COUNTER }, 1);
-+}
-+
- #[test]
- fn test_cow_from() {
-     let borrowed: &[_] = &["borrowed", "(slice)"];
--- 
-2.31.1
-
-
-From 8e2706343e1ce1c5a2d3a2ceaaaa010aaeb21d93 Mon Sep 17 00:00:00 2001
-From: The8472 <git@infinite-source.de>
-Date: Mon, 29 Mar 2021 04:22:48 +0200
-Subject: [PATCH 2/2] fix double-drop in in-place collect specialization
-
----
- library/alloc/src/vec/into_iter.rs          | 27 ++++++++++++++-------
- library/alloc/src/vec/source_iter_marker.rs |  4 +--
- 2 files changed, 20 insertions(+), 11 deletions(-)
-
-diff --git a/library/alloc/src/vec/into_iter.rs b/library/alloc/src/vec/into_iter.rs
-index f131d06bb18f..74adced53f6d 100644
---- a/library/alloc/src/vec/into_iter.rs
-+++ b/library/alloc/src/vec/into_iter.rs
-@@ -85,20 +85,29 @@ fn as_raw_mut_slice(&mut self) -> *mut [T] {
-         ptr::slice_from_raw_parts_mut(self.ptr as *mut T, self.len())
-     }
- 
--    pub(super) fn drop_remaining(&mut self) {
--        unsafe {
--            ptr::drop_in_place(self.as_mut_slice());
--        }
--        self.ptr = self.end;
--    }
-+    /// Drops remaining elements and relinquishes the backing allocation.
-+    ///
-+    /// This is roughly equivalent to the following, but more efficient
-+    ///
-+    /// ```
-+    /// # let mut into_iter = Vec::<u8>::with_capacity(10).into_iter();
-+    /// (&mut into_iter).for_each(core::mem::drop);
-+    /// unsafe { core::ptr::write(&mut into_iter, Vec::new().into_iter()); }
-+    /// ```
-+    pub(super) fn forget_allocation_drop_remaining(&mut self) {
-+        let remaining = self.as_raw_mut_slice();
- 
--    /// Relinquishes the backing allocation, equivalent to
--    /// `ptr::write(&mut self, Vec::new().into_iter())`
--    pub(super) fn forget_allocation(&mut self) {
-+        // overwrite the individual fields instead of creating a new
-+        // struct and then overwriting &mut self.
-+        // this creates less assembly
-         self.cap = 0;
-         self.buf = unsafe { NonNull::new_unchecked(RawVec::NEW.ptr()) };
-         self.ptr = self.buf.as_ptr();
-         self.end = self.buf.as_ptr();
-+
-+        unsafe {
-+            ptr::drop_in_place(remaining);
-+        }
-     }
- }
- 
-diff --git a/library/alloc/src/vec/source_iter_marker.rs b/library/alloc/src/vec/source_iter_marker.rs
-index 8c0e95559fa1..9301f7a5184e 100644
---- a/library/alloc/src/vec/source_iter_marker.rs
-+++ b/library/alloc/src/vec/source_iter_marker.rs
-@@ -78,9 +78,9 @@ impl<T, I> SpecFromIter<T, I> for Vec<T>
-         }
- 
-         // drop any remaining values at the tail of the source
--        src.drop_remaining();
-         // but prevent drop of the allocation itself once IntoIter goes out of scope
--        src.forget_allocation();
-+        // if the drop panics then we also leak any elements collected into dst_buf
-+        src.forget_allocation_drop_remaining();
- 
-         let vec = unsafe {
-             let len = dst.offset_from(dst_buf) as usize;
--- 
-2.31.1
-
diff --git a/dev-lang/rust/files/rust-1.51.0-cc.patch b/dev-lang/rust/files/rust-1.51.0-cc.patch
deleted file mode 100644
index 122bda0..0000000
--- a/dev-lang/rust/files/rust-1.51.0-cc.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-If the CC environment variable is set, use its value instead of hardcoding "cc".
-This fixes crbug.com/1090829.
-
-diff --git a/compiler/rustc_codegen_ssa/src/back/link.rs b/compiler/rustc_codegen_ssa/src/back/link.rs
-index 8725bfa..5984569 100644
---- a/compiler/rustc_codegen_ssa/src/back/link.rs
-+++ b/compiler/rustc_codegen_ssa/src/back/link.rs
-@@ -752,12 +752,12 @@ fn linker_and_flavor(sess: &Session) -> (PathBuf, LinkerFlavor) {
-             (Some(linker), Some(flavor)) => Some((linker, flavor)),
-             // only the linker flavor is known; use the default linker for the selected flavor
-             (None, Some(flavor)) => Some((
--                PathBuf::from(match flavor {
-+                match flavor {
-                     LinkerFlavor::Em => {
-                         if cfg!(windows) {
--                            "emcc.bat"
-+                            "emcc.bat".into()
-                         } else {
--                            "emcc"
-+                            "emcc".into()
-                         }
-                     }
-                     LinkerFlavor::Gcc => {
-@@ -768,16 +768,19 @@ fn linker_and_flavor(sess: &Session) -> (PathBuf, LinkerFlavor) {
-                             // and many modern illumos distributions today
-                             // ship GCC as "gcc" without also making it
-                             // available as "cc".
--                            "gcc"
-+                            "gcc".into()
-                         } else {
--                            "cc"
-+                            match env::var_os("CC") {
-+                                Some(path) => path.into(),
-+                                None => "cc".into()
-+                            }
-                         }
-                     }
--                    LinkerFlavor::Ld => "ld",
--                    LinkerFlavor::Msvc => "link.exe",
--                    LinkerFlavor::Lld(_) => "lld",
--                    LinkerFlavor::PtxLinker => "rust-ptx-linker",
--                }),
-+                    LinkerFlavor::Ld => "ld".into(),
-+                    LinkerFlavor::Msvc => "link.exe".into(),
-+                    LinkerFlavor::Lld(_) => "lld".into(),
-+                    LinkerFlavor::PtxLinker => "rust-ptx-linker".into(),
-+                },
-                 flavor,
-             )),
-             (Some(linker), None) => {
diff --git a/dev-lang/rust/files/rust-1.51.0-enable-sanitizers.patch b/dev-lang/rust/files/rust-1.51.0-enable-sanitizers.patch
deleted file mode 100644
index 7f68461..0000000
--- a/dev-lang/rust/files/rust-1.51.0-enable-sanitizers.patch
+++ /dev/null
@@ -1,222 +0,0 @@
-Sanitizer runtimes are currently behind the `-Z` flag, which is only available
-on nightly builds of the compiler.  We would like to enable fuzzing on chrome
-os anyway so move the sanitizer option under `-C` instead since we don't build
-the toolchain in nightly mode.
-
-The changes this patch makes are:
- - changing debugging_opts.sanitizer to cg.sanitizer.
- - add the appropriate options to options.rs.
-
-diff --git a/compiler/rustc_codegen_llvm/src/attributes.rs b/compiler/rustc_codegen_llvm/src/attributes.rs
-index a78d692aa..f835e371c 100644
---- a/compiler/rustc_codegen_llvm/src/attributes.rs
-+++ b/compiler/rustc_codegen_llvm/src/attributes.rs
-@@ -43,7 +43,7 @@ fn inline(cx: &CodegenCx<'ll, '_>, val: &'ll Value, inline: InlineAttr) {
- /// Apply LLVM sanitize attributes.
- #[inline]
- pub fn sanitize(cx: &CodegenCx<'ll, '_>, no_sanitize: SanitizerSet, llfn: &'ll Value) {
--    let enabled = cx.tcx.sess.opts.debugging_opts.sanitizer - no_sanitize;
-+    let enabled = cx.tcx.sess.opts.cg.sanitizer - no_sanitize;
-     if enabled.contains(SanitizerSet::ADDRESS) {
-         llvm::Attribute::SanitizeAddress.apply_llfn(Function, llfn);
-     }
-@@ -105,7 +105,7 @@ fn set_probestack(cx: &CodegenCx<'ll, '_>, llfn: &'ll Value) {
-     if cx
-         .sess()
-         .opts
--        .debugging_opts
-+        .cg
-         .sanitizer
-         .intersects(SanitizerSet::ADDRESS | SanitizerSet::THREAD)
-     {
-diff --git a/compiler/rustc_codegen_ssa/src/back/link.rs b/compiler/rustc_codegen_ssa/src/back/link.rs
-index c59b6f1eb..031f6ebea 100644
---- a/compiler/rustc_codegen_ssa/src/back/link.rs
-+++ b/compiler/rustc_codegen_ssa/src/back/link.rs
-@@ -880,7 +880,7 @@ fn link_sanitizers(sess: &Session, crate_type: CrateType, linker: &mut dyn Linke
-         return;
-     }
- 
--    let sanitizer = sess.opts.debugging_opts.sanitizer;
-+    let sanitizer = sess.opts.cg.sanitizer;
-     if sanitizer.contains(SanitizerSet::ADDRESS) {
-         link_sanitizer_runtime(sess, linker, "asan");
-     }
-@@ -929,8 +929,12 @@ fn link_sanitizer_runtime(sess: &Session, linker: &mut dyn Linker, name: &str) {
-             linker.link_dylib(Symbol::intern(&filename));
-         }
-         "aarch64-fuchsia"
-+        | "aarch64-cros-linux-gnu"
-         | "aarch64-unknown-linux-gnu"
-+        | "armv7a-cros-linux-gnueabihf"
-+        | "x86_64-cros-linux-gnu"
-         | "x86_64-fuchsia"
-+        | "x86_64-pc-linux-gnu"
-         | "x86_64-unknown-freebsd"
-         | "x86_64-unknown-linux-gnu" => {
-             let filename = format!("librustc{}_rt.{}.a", channel, name);
-@@ -1630,7 +1634,7 @@ fn linker_with_args<'a, B: ArchiveBuilder<'a>>(
- 
-     // NO-OPT-OUT, OBJECT-FILES-NO, AUDIT-ORDER
-     if sess.target.is_like_fuchsia && crate_type == CrateType::Executable {
--        let prefix = if sess.opts.debugging_opts.sanitizer.contains(SanitizerSet::ADDRESS) {
-+        let prefix = if sess.opts.cg.sanitizer.contains(SanitizerSet::ADDRESS) {
-             "asan/"
-         } else {
-             ""
-diff --git a/compiler/rustc_codegen_ssa/src/back/symbol_export.rs b/compiler/rustc_codegen_ssa/src/back/symbol_export.rs
-index 9a6f8cde1..2ffbdb6c0 100644
---- a/compiler/rustc_codegen_ssa/src/back/symbol_export.rs
-+++ b/compiler/rustc_codegen_ssa/src/back/symbol_export.rs
-@@ -203,7 +203,7 @@ fn exported_symbols_provider_local(
-         }));
-     }
- 
--    if tcx.sess.opts.debugging_opts.sanitizer.contains(SanitizerSet::MEMORY) {
-+    if tcx.sess.opts.cg.sanitizer.contains(SanitizerSet::MEMORY) {
-         // Similar to profiling, preserve weak msan symbol during LTO.
-         const MSAN_WEAK_SYMBOLS: [&str; 2] = ["__msan_track_origins", "__msan_keep_going"];
- 
-diff --git a/compiler/rustc_codegen_ssa/src/back/write.rs b/compiler/rustc_codegen_ssa/src/back/write.rs
-index 6aef5cb53..b5c9df195 100644
---- a/compiler/rustc_codegen_ssa/src/back/write.rs
-+++ b/compiler/rustc_codegen_ssa/src/back/write.rs
-@@ -193,7 +193,7 @@ impl ModuleConfig {
-             ),
-             pgo_use: if_regular!(sess.opts.cg.profile_use.clone(), None),
- 
--            sanitizer: if_regular!(sess.opts.debugging_opts.sanitizer, SanitizerSet::empty()),
-+            sanitizer: if_regular!(sess.opts.cg.sanitizer, SanitizerSet::empty()),
-             sanitizer_recover: if_regular!(
-                 sess.opts.debugging_opts.sanitizer_recover,
-                 SanitizerSet::empty()
-diff --git a/compiler/rustc_session/src/config.rs b/compiler/rustc_session/src/config.rs
-index a6d4dcb34..da6648af4 100644
---- a/compiler/rustc_session/src/config.rs
-+++ b/compiler/rustc_session/src/config.rs
-@@ -851,7 +851,7 @@ pub fn default_configuration(sess: &Session) -> CrateConfig {
-     let panic_strategy = sess.panic_strategy();
-     ret.insert((sym::panic, Some(panic_strategy.desc_symbol())));
- 
--    for s in sess.opts.debugging_opts.sanitizer {
-+    for s in sess.opts.cg.sanitizer {
-         let symbol = Symbol::intern(&s.to_string());
-         ret.insert((sym::sanitize, Some(symbol)));
-     }
-diff --git a/compiler/rustc_session/src/options.rs b/compiler/rustc_session/src/options.rs
-index 779e04216..d0be3a6b3 100644
---- a/compiler/rustc_session/src/options.rs
-+++ b/compiler/rustc_session/src/options.rs
-@@ -822,6 +822,8 @@ options! {CodegenOptions, CodegenSetter, basic_codegen_options,
-         "print remarks for these optimization passes (space separated, or \"all\")"),
-     rpath: bool = (false, parse_bool, [UNTRACKED],
-         "set rpath values in libs/exes (default: no)"),
-+    sanitizer: SanitizerSet = (SanitizerSet::empty(), parse_sanitizers, [TRACKED],
-+        "use a sanitizer"),
-     save_temps: bool = (false, parse_bool, [UNTRACKED],
-         "save all temporary output files during compilation (default: no)"),
-     soft_float: bool = (false, parse_bool, [TRACKED],
-@@ -1073,8 +1075,6 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
-         "choose which RELRO level to use"),
-     report_delayed_bugs: bool = (false, parse_bool, [TRACKED],
-         "immediately print bugs registered with `delay_span_bug` (default: no)"),
--    sanitizer: SanitizerSet = (SanitizerSet::empty(), parse_sanitizers, [TRACKED],
--        "use a sanitizer"),
-     sanitizer_memory_track_origins: usize = (0, parse_sanitizer_memory_track_origins, [TRACKED],
-         "enable origins tracking in MemorySanitizer"),
-     sanitizer_recover: SanitizerSet = (SanitizerSet::empty(), parse_sanitizers, [TRACKED],
-diff --git a/compiler/rustc_session/src/session.rs b/compiler/rustc_session/src/session.rs
-index 69aa72d89..cd853746d 100644
---- a/compiler/rustc_session/src/session.rs
-+++ b/compiler/rustc_session/src/session.rs
-@@ -740,7 +740,7 @@ impl Session {
-             let more_names = self.opts.output_types.contains_key(&OutputType::LlvmAssembly)
-                 || self.opts.output_types.contains_key(&OutputType::Bitcode)
-                 // AddressSanitizer and MemorySanitizer use alloca name when reporting an issue.
--                || self.opts.debugging_opts.sanitizer.intersects(SanitizerSet::ADDRESS | SanitizerSet::MEMORY);
-+                || self.opts.cg.sanitizer.intersects(SanitizerSet::ADDRESS | SanitizerSet::MEMORY);
-             !more_names
-         }
-     }
-@@ -1126,7 +1126,7 @@ impl Session {
-         self.opts.optimize != config::OptLevel::No
-         // AddressSanitizer uses lifetimes to detect use after scope bugs.
-         // MemorySanitizer uses lifetimes to detect use of uninitialized stack variables.
--        || self.opts.debugging_opts.sanitizer.intersects(SanitizerSet::ADDRESS | SanitizerSet::MEMORY)
-+        || self.opts.cg.sanitizer.intersects(SanitizerSet::ADDRESS | SanitizerSet::MEMORY)
-     }
- 
-     pub fn link_dead_code(&self) -> bool {
-@@ -1540,31 +1540,50 @@ fn validate_commandline_args_with_session_available(sess: &Session) {
- 
-     const ASAN_SUPPORTED_TARGETS: &[&str] = &[
-         "aarch64-apple-darwin",
-+        "aarch64-cros-linux-gnu",
-         "aarch64-fuchsia",
-         "aarch64-unknown-linux-gnu",
-+        "armv7a-cros-linux-gnueabihf",
-         "x86_64-apple-darwin",
-+        "x86_64-cros-linux-gnu",
-         "x86_64-fuchsia",
-+        "x86_64-pc-linux-gnu",
-         "x86_64-unknown-freebsd",
-         "x86_64-unknown-linux-gnu",
-     ];
-     const LSAN_SUPPORTED_TARGETS: &[&str] = &[
-         "aarch64-apple-darwin",
-+        "aarch64-cros-linux-gnu",
-         "aarch64-unknown-linux-gnu",
-+        "armv7a-cros-linux-gnueabihf",
-         "x86_64-apple-darwin",
-+        "x86_64-cros-linux-gnu",
-+        "x86_64-pc-linux-gnu",
-+        "x86_64-unknown-linux-gnu",
-+    ];
-+    const MSAN_SUPPORTED_TARGETS: &[&str] = &[
-+        "aarch64-cros-linux-gnu",
-+        "aarch64-unknown-linux-gnu",
-+        "armv7a-cros-linux-gnueabihf",
-+        "x86_64-cros-linux-gnu",
-+        "x86_64-pc-linux-gnu",
-+        "x86_64-unknown-freebsd",
-         "x86_64-unknown-linux-gnu",
-     ];
--    const MSAN_SUPPORTED_TARGETS: &[&str] =
--        &["aarch64-unknown-linux-gnu", "x86_64-unknown-freebsd", "x86_64-unknown-linux-gnu"];
-     const TSAN_SUPPORTED_TARGETS: &[&str] = &[
-         "aarch64-apple-darwin",
-+        "aarch64-cros-linux-gnu",
-         "aarch64-unknown-linux-gnu",
-+        "armv7a-cros-linux-gnueabihf",
-         "x86_64-apple-darwin",
-+        "x86_64-cros-linux-gnu",
-+        "x86_64-pc-linux-gnu",
-         "x86_64-unknown-freebsd",
-         "x86_64-unknown-linux-gnu",
-     ];
- 
-     // Sanitizers can only be used on some tested platforms.
--    for s in sess.opts.debugging_opts.sanitizer {
-+    for s in sess.opts.cg.sanitizer {
-         let supported_targets = match s {
-             SanitizerSet::ADDRESS => ASAN_SUPPORTED_TARGETS,
-             SanitizerSet::LEAK => LSAN_SUPPORTED_TARGETS,
-@@ -1574,15 +1593,15 @@ fn validate_commandline_args_with_session_available(sess: &Session) {
-         };
-         if !supported_targets.contains(&&*sess.opts.target_triple.triple()) {
-             sess.err(&format!(
--                "`-Zsanitizer={}` only works with targets: {}",
-+                "`-Csanitizer={}` only works with targets: {}",
-                 s,
-                 supported_targets.join(", ")
-             ));
-         }
--        let conflicting = sess.opts.debugging_opts.sanitizer - s;
-+        let conflicting = sess.opts.cg.sanitizer - s;
-         if !conflicting.is_empty() {
-             sess.err(&format!(
--                "`-Zsanitizer={}` is incompatible with `-Zsanitizer={}`",
-+                "`-Csanitizer={}` is incompatible with `-Csanitizer={}`",
-                 s, conflicting,
-             ));
-             // Don't report additional errors.
diff --git a/dev-lang/rust/files/rust-1.51.0-fix-rpath.patch b/dev-lang/rust/files/rust-1.51.0-fix-rpath.patch
deleted file mode 100644
index 93ecc66..0000000
--- a/dev-lang/rust/files/rust-1.51.0-fix-rpath.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Around the line of code this patches there is a long explanation of the rpath
-but the gist of it was that better handling of the rpath would be done in the
-future. For now, we just add the proper rpath.
-
-diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
-index d0eed3f12d1..63c8c6ea0b0 100644
---- a/src/bootstrap/builder.rs
-+++ b/src/bootstrap/builder.rs
-@@ -943,7 +943,7 @@ impl<'a> Builder<'a> {
-                 rustflags.arg("-Zosx-rpath-install-name");
-                 Some("-Wl,-rpath,@loader_path/../lib")
-             } else if !target.contains("windows") {
--                Some("-Wl,-rpath,$ORIGIN/../lib")
-+                Some("-Wl,-rpath,$ORIGIN/../lib:/usr/lib64/rust/rustlib/x86_64-unknown-linux-gnu/lib")
-             } else {
-                 None
-             };
diff --git a/dev-lang/rust/files/rust-1.51.0-ld-argv0.patch b/dev-lang/rust/files/rust-1.51.0-ld-argv0.patch
deleted file mode 100644
index ac9005b..0000000
--- a/dev-lang/rust/files/rust-1.51.0-ld-argv0.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-Our cross-compilers and related tooling are executed via ld.so trickery, which
-makes /proc/self/exe not point to the right place. If we detect that we're in
-that situation in `current_exe()`, we _should_ have `LD_ARGV0_REL` in an env
-var. This is the path to the _original_ binary, relative to ld.so.
-
-diff --git a/library/std/src/sys/unix/os.rs b/library/std/src/sys/unix/os.rs
-index a9cd509..92dd6b9 100644
---- a/library/std/src/sys/unix/os.rs
-+++ b/library/std/src/sys/unix/os.rs
-@@ -327,12 +327,45 @@ pub fn current_exe() -> io::Result<PathBuf> {
- 
- #[cfg(any(target_os = "linux", target_os = "android", target_os = "emscripten"))]
- pub fn current_exe() -> io::Result<PathBuf> {
-+    let is_ld_so = |p: &crate::path::Path| -> Option<bool> {
-+        let parent_dir_name = p.parent()?.file_name()?;
-+        if parent_dir_name != OsStr::new("lib") {
-+            return Some(false);
-+        }
-+        // We assume that the `ld.so` path is always valid unicode, since there's... no reason for
-+        // it not to be. :)
-+        let file_name = p.file_name()?.to_str()?;
-+        Some(
-+            file_name.starts_with("ld-linux-")
-+                && (file_name.ends_with(".so") || file_name.contains(".so.")),
-+        )
-+    };
-+
-     match crate::fs::read_link("/proc/self/exe") {
-         Err(ref e) if e.kind() == io::ErrorKind::NotFound => Err(io::Error::new(
-             io::ErrorKind::Other,
-             "no /proc/self/exe available. Is /proc mounted?",
-         )),
--        other => other,
-+        Err(x) => Err(x),
-+        Ok(p) => {
-+            // Chrome OS-specific: in some configurations, Rust binaries are invoked through
-+            // `ld.so`. In these cases, we want to present the user with the path to the Rust
-+            // binary that was invoked.
-+            //
-+            // Because the ld.so wrappers _generally_ don't want to invoke things with absolute
-+            // paths, this is _generally_ a path relative to dirname(ld.so).
-+            if is_ld_so(&p) == Some(true) {
-+                if let Some(relative_to_ld) = crate::env::var_os("LD_ARGV0_REL") {
-+                    let relative_to_ld = PathBuf::from(relative_to_ld);
-+                    if relative_to_ld.is_absolute() {
-+                        return Ok(relative_to_ld);
-+                    }
-+                    // safety: is_ld_so checks the parent directory of `p`.
-+                    return Ok(p.parent().unwrap().join(relative_to_ld));
-+                }
-+            }
-+            Ok(p)
-+        }
-     }
- }
- 
diff --git a/dev-lang/rust/files/rust-1.51.0-no-test-on-build.patch b/dev-lang/rust/files/rust-1.51.0-no-test-on-build.patch
deleted file mode 100644
index 3dc82da..0000000
--- a/dev-lang/rust/files/rust-1.51.0-no-test-on-build.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-The only kind of bootstrap used here is `build`, which will erroneously try to build the Rust unit
-test framework on all targets. On many targets, this is a harmless mistake, but on the bare metal
-targets, this leads to an error such as:
-
-    warning: dropping unsupported crate type `dylib` for target `thumbv6m-none-eabi`
-
-    error[E0463]: can't find crate for `std`
-
-    error: aborting due to previous error
-
-    For more information about this error, try `rustc --explain E0463`.
-    error: Could not compile `term`.
-
-The missing `std` crate is expected because building the `std` crate is not applicable on bare metal
-targets. A deeper analysis of the bootstrap code follows:
-
-In many instances in the bootstrap code, there appear lines such as:
-
-     builder.ensure(compile::Test { compiler, target });
-
-These "ensure" that a specific target will get a certain component built (`compile::Test` in the
-above line), if not already previously "ensured." Usually, there is a guard clause checking to see
-if `target` is a `no_std` target (i.e. bare metal). However, these guard clauses and "ensure" calls
-are moot because `compile::Test` is part of the initialzed list of ensured bootstrap components for
-`Kind::Build` meaning that even `no_std` targets will get the unit test framework built, which has
-already been established as an impossibility.
-
-Note that there is a ton of code motion as of this commit:
-https://github.com/rust-lang/rust/commit/b47c9690d2974ec0318f1e87bf38f8f7ee6cf202
-
-Seeing as the `Std` build step behaves properly on no_std builds (see the comment in
-'src/bootstrap/compile.rs': "for no-std targets we only compile a few no_std crates"), the merge the
-libtest build step with libstd may actually mean things work properly without this patch in future
-rust releases.
-
-diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
-index 4cd793adaf5..c9cd92b95f5 100644
---- a/src/bootstrap/compile.rs
-+++ b/src/bootstrap/compile.rs
-@@ -390,6 +390,10 @@ impl Step for Test {
-         let target = self.target;
-         let compiler = self.compiler;
- 
-+        if builder.no_std(target) == Some(true) {
-+            return;
-+        }
-+
-         builder.ensure(Std { compiler, target });
- 
-         if builder.config.keep_stage.contains(&compiler.stage) {
diff --git a/dev-lang/rust/files/rust-1.51.0-no-weak-symbols.patch b/dev-lang/rust/files/rust-1.51.0-no-weak-symbols.patch
deleted file mode 100644
index 82b6176..0000000
--- a/dev-lang/rust/files/rust-1.51.0-no-weak-symbols.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-This is a slightly-modified cherrypick from llvm. Without this, we see undefined
-symbols in the CQ for amd64-generic ASAN builds. Specifically, we're missing
-__start_asan_globals and __stop_asan_globals.
-
-commit cf5df40c4cf1a53a02ab1d56a488642e3dda8f6d
-Author: Leonard Chan <leonardchan@google.com>
-Date:   Fri Jul 17 15:29:50 2020 -0700
-
-    Revert "[AddressSanitizer] Don't use weak linkage for __{start,stop}_asan_globals"
-    
-    This reverts commit d76e62fdb7a93d9a33f642b6b528f2562cc3c3f4.
-    
-    Reverting since this can lead to linker errors:
-    
-    ```
-    ld.lld: error: undefined hidden symbol: __start_asan_globals
-    ```
-    
-    when using --gc-sections. The linker can discard __start_asan_globals
-    once there are no more `asan_globals` sections left, which can lead to
-    this error if we have external linkages to them.
-
-diff --git a/src/llvm-project/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp b/src/llvm-project/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
-index ee09a4d9db7..7516a64c6a3 100644
---- a/src/llvm-project/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
-+++ b/src/llvm-project/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
-@@ -2103,23 +2103,10 @@ void ModuleAddressSanitizer::InstrumentGlobalsELF(
-     SetComdatForGlobalMetadata(G, Metadata, UniqueModuleId);
-   }
- 
--  // This should never be called when there are no globals, by the logic that
--  // computes the UniqueModuleId string, which is "" when there are no globals.
--  // It's important that this path is only used when there are actually some
--  // globals, because that means that there will certainly be a live
--  // `asan_globals` input section at link time and thus `__start_asan_globals`
--  // and `__stop_asan_globals` symbols will definitely be defined at link time.
--  // This means there's no need for the references to them to be weak, which
--  // enables better code generation because ExternalWeakLinkage implies
--  // isInterposable() and thus requires GOT indirection for PIC.  Since these
--  // are known-defined hidden/dso_local symbols, direct PIC accesses without
--  // dynamic relocation are always sufficient.
--  assert(!MetadataGlobals.empty());
--  assert(!UniqueModuleId.empty());
--
-   // Update llvm.compiler.used, adding the new metadata globals. This is
-   // needed so that during LTO these variables stay alive.
--  appendToCompilerUsed(M, MetadataGlobals);
-+  if (!MetadataGlobals.empty())
-+    appendToCompilerUsed(M, MetadataGlobals);
- 
-   // RegisteredFlag serves two purposes. First, we can pass it to dladdr()
-   // to look up the loaded image that contains it. Second, we can store in it
-@@ -2132,18 +2119,15 @@ void ModuleAddressSanitizer::InstrumentGlobalsELF(
-       ConstantInt::get(IntptrTy, 0), kAsanGlobalsRegisteredFlagName);
-   RegisteredFlag->setVisibility(GlobalVariable::HiddenVisibility);
- 
--  // Create start and stop symbols.  These are known to be defined by
--  // the linker, see comment above.
--  auto MakeStartStopGV = [&](const char *Prefix) {
--    GlobalVariable *StartStop =
--        new GlobalVariable(M, IntptrTy, false, GlobalVariable::ExternalLinkage,
--                           nullptr, Prefix + getGlobalMetadataSection());
--    StartStop->setVisibility(GlobalVariable::HiddenVisibility);
--    assert(StartStop->isImplicitDSOLocal());
--    return StartStop;
--  };
--  GlobalVariable *StartELFMetadata = MakeStartStopGV("__start_");
--  GlobalVariable *StopELFMetadata = MakeStartStopGV("__stop_");
-+  // Create start and stop symbols.
-+  GlobalVariable *StartELFMetadata = new GlobalVariable(
-+      M, IntptrTy, false, GlobalVariable::ExternalWeakLinkage, nullptr,
-+      "__start_" + getGlobalMetadataSection());
-+  StartELFMetadata->setVisibility(GlobalVariable::HiddenVisibility);
-+  GlobalVariable *StopELFMetadata = new GlobalVariable(
-+      M, IntptrTy, false, GlobalVariable::ExternalWeakLinkage, nullptr,
-+      "__stop_" + getGlobalMetadataSection());
-+  StopELFMetadata->setVisibility(GlobalVariable::HiddenVisibility);
- 
-   // Create a call to register the globals with the runtime.
-   IRB.CreateCall(AsanRegisterElfGlobals,
diff --git a/dev-lang/rust/files/rust-1.51.0-revert-libunwind-build.patch b/dev-lang/rust/files/rust-1.51.0-revert-libunwind-build.patch
deleted file mode 100644
index b338cb9..0000000
--- a/dev-lang/rust/files/rust-1.51.0-revert-libunwind-build.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-This reverts commit 21abc88.
-
-Fixes https://github.com/rust-lang/rust/issues/76020
-
-Quote the open upstream CL (https://github.com/rust-lang/rust/issues/76026):
-I'm not sure what exact problem #72746 is supposed to fix, but it's probably incomplete as it breaks the build of 1.46.0 with llvm-libunwind enabled
-
-
-diff --git a/library/unwind/build.rs b/library/unwind/build.rs
-index 31d235cf679..d4bcd2ed4e8 100644
---- a/library/unwind/build.rs
-+++ b/library/unwind/build.rs
-@@ -116,8 +116,6 @@ mod llvm_libunwind {
-             cfg.flag("-fstrict-aliasing");
-             cfg.flag("-funwind-tables");
-             cfg.flag("-fvisibility=hidden");
--            cfg.flag_if_supported("-fvisibility-global-new-delete-hidden");
--            cfg.define("_LIBUNWIND_DISABLE_VISIBILITY_ANNOTATIONS", None);
-         }
- 
-         let mut unwind_sources = vec![
diff --git a/dev-lang/rust/files/rust-1.51.0-sanitizer-supported.patch b/dev-lang/rust/files/rust-1.51.0-sanitizer-supported.patch
deleted file mode 100644
index b544821..0000000
--- a/dev-lang/rust/files/rust-1.51.0-sanitizer-supported.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-Ensure that sanitizer runtimes are built for all our supported x86_64
-platforms.
-
-Now that we patch in our own custom -cros and -pc targets instead
-of falling back to -unknown, we need to add builds for those
-targets as well to allow the linker to find the correct versions
-of the librustc_[almt]san static libraries.
-
-diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs
-index 97d9dbdd63f..d81c5e60608 100644
---- a/src/bootstrap/native.rs
-+++ b/src/bootstrap/native.rs
-@@ -790,13 +790,16 @@ fn supported_sanitizers(
- 
-     match &*target.triple {
-         "aarch64-fuchsia" => common_libs("fuchsia", "aarch64", &["asan"]),
--        "aarch64-unknown-linux-gnu" => {
-+        "aarch64-unknown-linux-gnu" | "aarch64-cros-linux-gnu" => {
-             common_libs("linux", "aarch64", &["asan", "lsan", "msan", "tsan"])
-         }
-+        "armv7a-cros-linux-gnueabihf" => {
-+            common_libs("linux", "armhf", &["asan"])
-+        }
-         "x86_64-apple-darwin" => darwin_libs("osx", &["asan", "lsan", "tsan"]),
-         "x86_64-fuchsia" => common_libs("fuchsia", "x86_64", &["asan"]),
-         "x86_64-unknown-freebsd" => common_libs("freebsd", "x86_64", &["asan", "msan", "tsan"]),
--        "x86_64-unknown-linux-gnu" => {
-+        "x86_64-unknown-linux-gnu" | "x86_64-cros-linux-gnu" | "x86_64-pc-linux-gnu" => {
-             common_libs("linux", "x86_64", &["asan", "lsan", "msan", "tsan"])
-         }
-         _ => Vec::new(),
diff --git a/dev-lang/rust/files/rust-1.55.0-Handle-sparse-git-repo-without-erroring.patch b/dev-lang/rust/files/rust-1.55.0-Handle-sparse-git-repo-without-erroring.patch
new file mode 100644
index 0000000..03ed377
--- /dev/null
+++ b/dev-lang/rust/files/rust-1.55.0-Handle-sparse-git-repo-without-erroring.patch
@@ -0,0 +1,71 @@
+From 3a961f7b7f25dfcd54f427fa57ca064433e93829 Mon Sep 17 00:00:00 2001
+From: George Burgess IV <gbiv@google.com>
+Date: Fri, 30 Jul 2021 01:11:15 +0000
+Subject: [PATCH 8/8] sparse-git-repo
+
+---
+ src/tools/cargo/src/cargo/sources/path.rs | 39 +++++++++++++++++++----
+ 1 file changed, 32 insertions(+), 7 deletions(-)
+
+diff --git a/src/tools/cargo/src/cargo/sources/path.rs b/src/tools/cargo/src/cargo/sources/path.rs
+index f8041be55..a3eadb626 100644
+--- a/src/tools/cargo/src/cargo/sources/path.rs
++++ b/src/tools/cargo/src/cargo/sources/path.rs
+@@ -194,12 +194,25 @@ impl<'cfg> PathSource<'cfg> {
+         let index = repo
+             .index()
+             .with_context(|| format!("failed to open git index at {}", repo.path().display()))?;
+-        let repo_root = repo.workdir().ok_or_else(|| {
+-            anyhow::format_err!(
++        let repo_root = if let Some(root) = repo.workdir() {
++            root
++        } else if !repo.is_bare() {
++            // Sparse-checkouts (and possibly other git
++            // configurations) make libgit2 confused but there's still
++            // an actual non-bare repo here.
++            if let Some(r) = repo.path().parent() {
++                r
++            } else {
++                return Err(anyhow::format_err!(
++                    "repo path missing .git subfolder even when non-bare",
++                ));
++            }
++        } else {
++            return Err(anyhow::format_err!(
+                 "did not expect repo at {} to be bare",
+                 repo.path().display()
+-            )
+-        })?;
++            ));
++        };
+         let repo_relative_path = match paths::strip_prefix_canonical(root, repo_root) {
+             Ok(p) => p,
+             Err(e) => {
+@@ -228,9 +241,21 @@ impl<'cfg> PathSource<'cfg> {
+     ) -> CargoResult<Vec<PathBuf>> {
+         warn!("list_files_git {}", pkg.package_id());
+         let index = repo.index()?;
+-        let root = repo
+-            .workdir()
+-            .ok_or_else(|| anyhow::format_err!("can't list files on a bare repository"))?;
++        let root = if let Some(root) = repo.workdir() {
++            root
++        } else if !repo.is_bare() {
++            // Sparse-checkouts (and possibly other git
++            // configurations) make libgit2 confused but there's still
++            // an actual non-bare repo here.
++            if let Some(r) = repo.path().parent() {
++                r
++            } else {
++                return Err(anyhow::format_err!("malformed non-bare repository root",));
++            }
++        } else {
++            return Err(anyhow::format_err!("can't list files on a bare repository",));
++        };
++
+         let pkg_path = pkg.root();
+ 
+         let mut ret = Vec::<PathBuf>::new();
+-- 
+2.32.0.554.ge1b32706d8-goog
+
diff --git a/dev-lang/rust/files/rust-1.47.0-Revert-CMake-Unconditionally-add-.h-and-.td-files-to.patch b/dev-lang/rust/files/rust-1.55.0-Revert-CMake-Unconditionally-add-.h-and-.td-files-to.patch
similarity index 100%
rename from dev-lang/rust/files/rust-1.47.0-Revert-CMake-Unconditionally-add-.h-and-.td-files-to.patch
rename to dev-lang/rust/files/rust-1.55.0-Revert-CMake-Unconditionally-add-.h-and-.td-files-to.patch
diff --git a/dev-lang/rust/files/rust-1.51.0-add-cros-targets.patch b/dev-lang/rust/files/rust-1.55.0-add-cros-targets.patch
similarity index 100%
rename from dev-lang/rust/files/rust-1.51.0-add-cros-targets.patch
rename to dev-lang/rust/files/rust-1.55.0-add-cros-targets.patch
diff --git a/dev-lang/rust/files/rust-1.55.0-cc.patch b/dev-lang/rust/files/rust-1.55.0-cc.patch
new file mode 100644
index 0000000..b7c1b0d
--- /dev/null
+++ b/dev-lang/rust/files/rust-1.55.0-cc.patch
@@ -0,0 +1,61 @@
+From 2b042cce4bd22392acf013f10a7effcfbaf8b513 Mon Sep 17 00:00:00 2001
+From: George Burgess IV <gbiv@google.com>
+Date: Fri, 30 Jul 2021 01:01:54 +0000
+Subject: [PATCH 4/8] cc.patch
+
+---
+ compiler/rustc_codegen_ssa/src/back/link.rs | 25 ++++++++++++---------
+ 1 file changed, 14 insertions(+), 11 deletions(-)
+
+diff --git a/compiler/rustc_codegen_ssa/src/back/link.rs b/compiler/rustc_codegen_ssa/src/back/link.rs
+index 0be107fee..58db0df71 100644
+--- a/compiler/rustc_codegen_ssa/src/back/link.rs
++++ b/compiler/rustc_codegen_ssa/src/back/link.rs
+@@ -1191,12 +1191,12 @@ pub fn linker_and_flavor(sess: &Session) -> (PathBuf, LinkerFlavor) {
+             (Some(linker), Some(flavor)) => Some((linker, flavor)),
+             // only the linker flavor is known; use the default linker for the selected flavor
+             (None, Some(flavor)) => Some((
+-                PathBuf::from(match flavor {
++                match flavor {
+                     LinkerFlavor::Em => {
+                         if cfg!(windows) {
+-                            "emcc.bat"
++                            "emcc.bat".into()
+                         } else {
+-                            "emcc"
++                            "emcc".into()
+                         }
+                     }
+                     LinkerFlavor::Gcc => {
+@@ -1207,17 +1207,20 @@ pub fn linker_and_flavor(sess: &Session) -> (PathBuf, LinkerFlavor) {
+                             // and many modern illumos distributions today
+                             // ship GCC as "gcc" without also making it
+                             // available as "cc".
+-                            "gcc"
++                            "gcc".into()
+                         } else {
+-                            "cc"
++                            match env::var_os("CC") {
++                                Some(path) => path.into(),
++                                None => "cc".into(),
++                            }
+                         }
+                     }
+-                    LinkerFlavor::Ld => "ld",
+-                    LinkerFlavor::Msvc => "link.exe",
+-                    LinkerFlavor::Lld(_) => "lld",
+-                    LinkerFlavor::PtxLinker => "rust-ptx-linker",
+-                    LinkerFlavor::BpfLinker => "bpf-linker",
+-                }),
++                    LinkerFlavor::Ld => "ld".into(),
++                    LinkerFlavor::Msvc => "link.exe".into(),
++                    LinkerFlavor::Lld(_) => "lld".into(),
++                    LinkerFlavor::PtxLinker => "rust-ptx-linker".into(),
++                    LinkerFlavor::BpfLinker => "bpf-linker".into(),
++                },
+                 flavor,
+             )),
+             (Some(linker), None) => {
+-- 
+2.32.0.554.ge1b32706d8-goog
+
diff --git a/dev-lang/rust/files/rust-1.55.0-fix-libunwind-build.patch b/dev-lang/rust/files/rust-1.55.0-fix-libunwind-build.patch
new file mode 100644
index 0000000..c206af2
--- /dev/null
+++ b/dev-lang/rust/files/rust-1.55.0-fix-libunwind-build.patch
@@ -0,0 +1,99 @@
+libunwind's build.rs expects to run in a directory with no stale object files,
+which isn't always the case. This makes it the case.
+
+Submitted for upstream review in https://github.com/rust-lang/rust/pull/87977
+
+--- a/library/unwind/build.rs
++++ b/library/unwind/build.rs
+@@ -26,8 +26,9 @@ fn main() {
+             // Since ndk r23 beta 3 `libgcc` was replaced with `libunwind` thus
+             // check if we have `libunwind` available and if so use it. Otherwise
+             // fall back to `libgcc` to support older ndk versions.
+-            let has_unwind =
+-                build.is_flag_supported("-lunwind").expect("Unable to invoke compiler");
++            let has_unwind = build
++                .is_flag_supported("-lunwind")
++                .expect("Unable to invoke compiler");
+ 
+             if has_unwind {
+                 println!("cargo:rustc-link-lib=unwind");
+@@ -66,7 +67,19 @@ fn main() {
+ 
+ mod llvm_libunwind {
+     use std::env;
+-    use std::path::Path;
++    use std::path::{Path, PathBuf};
++
++    fn enumerate_object_files_in(out_dir: &Path) -> impl Iterator<Item = PathBuf> {
++        std::fs::read_dir(out_dir).unwrap().filter_map(|entry| {
++            let path = entry.unwrap().path();
++            if let Some(ext) = path.extension() {
++                if ext == "o" {
++                    return Some(path.canonicalize().unwrap());
++                }
++            }
++            None
++        })
++    }
+ 
+     /// Compile the libunwind C/C++ source code.
+     pub fn compile() {
+@@ -76,6 +89,16 @@ mod llvm_libunwind {
+         let mut cpp_cfg = cc::Build::new();
+         let root = Path::new("../../src/llvm-project/libunwind");
+ 
++        // We depend on starting with a fresh build directory each time.
++        let out_dir = PathBuf::from(env::var_os("OUT_DIR").unwrap());
++        for object in enumerate_object_files_in(&out_dir) {
++            if let Err(x) = std::fs::remove_file(&object) {
++                if x.kind() != std::io::ErrorKind::NotFound {
++                    panic!("Failed removing {}: {}", object.display(), x);
++                }
++            }
++        }
++
+         cpp_cfg.cpp(true);
+         cpp_cfg.cpp_set_stdlib(None);
+         cpp_cfg.flag("-nostdinc++");
+@@ -137,7 +160,7 @@ mod llvm_libunwind {
+             "UnwindRegistersSave.S",
+         ];
+ 
+-        let cpp_sources = vec!["Unwind-EHABI.cpp", "Unwind-seh.cpp", "libunwind.cpp"];
++        let cpp_sources = &["Unwind-EHABI.cpp", "Unwind-seh.cpp", "libunwind.cpp"];
+         let cpp_len = cpp_sources.len();
+ 
+         if target.contains("x86_64-fortanix-unknown-sgx") {
+@@ -152,22 +175,19 @@ mod llvm_libunwind {
+             cpp_cfg.file(root.join("src").join(src).canonicalize().unwrap());
+         }
+ 
+-        let out_dir = env::var("OUT_DIR").unwrap();
+-        println!("cargo:rustc-link-search=native={}", &out_dir);
++        println!("cargo:rustc-link-search=native={}", out_dir.display());
+ 
+         cpp_cfg.compile("unwind-cpp");
+-
+-        let mut count = 0;
+-        for entry in std::fs::read_dir(&out_dir).unwrap() {
+-            let obj = entry.unwrap().path().canonicalize().unwrap();
+-            if let Some(ext) = obj.extension() {
+-                if ext == "o" {
+-                    cc_cfg.object(&obj);
+-                    count += 1;
+-                }
+-            }
++        let objects: Vec<PathBuf> = enumerate_object_files_in(&out_dir).collect();
++        assert_eq!(
++            cpp_len,
++            objects.len(),
++            "Can't get object files from {}",
++            out_dir.display()
++        );
++        for obj in objects {
++            cc_cfg.object(obj);
+         }
+-        assert_eq!(cpp_len, count, "Can't get object files from {:?}", &out_dir);
+         cc_cfg.compile("unwind");
+     }
+ }
diff --git a/dev-lang/rust/files/rust-1.47.0-fix-rpath.patch b/dev-lang/rust/files/rust-1.55.0-fix-rpath.patch
similarity index 100%
rename from dev-lang/rust/files/rust-1.47.0-fix-rpath.patch
rename to dev-lang/rust/files/rust-1.55.0-fix-rpath.patch
diff --git a/dev-lang/rust/files/rust-1.55.0-ld-argv0.patch b/dev-lang/rust/files/rust-1.55.0-ld-argv0.patch
new file mode 100644
index 0000000..a1dd919
--- /dev/null
+++ b/dev-lang/rust/files/rust-1.55.0-ld-argv0.patch
@@ -0,0 +1,63 @@
+From 7f8a36c0a9d997d625ba887e3ae492bc2fa2888b Mon Sep 17 00:00:00 2001
+From: George Burgess IV <gbiv@google.com>
+Date: Sun, 1 Aug 2021 07:12:17 +0000
+Subject: [PATCH 7/8] ld-argv0.patch
+
+---
+ library/std/src/sys/unix/os.rs | 35 +++++++++++++++++++++++++++++++++-
+ 1 file changed, 34 insertions(+), 1 deletion(-)
+
+diff --git a/library/std/src/sys/unix/os.rs b/library/std/src/sys/unix/os.rs
+index 41ca97623..ffe3b99cd 100644
+--- a/library/std/src/sys/unix/os.rs
++++ b/library/std/src/sys/unix/os.rs
+@@ -339,12 +339,45 @@
+ 
+ #[cfg(any(target_os = "linux", target_os = "android", target_os = "emscripten"))]
+ pub fn current_exe() -> io::Result<PathBuf> {
++    let is_ld_so = |p: &crate::path::Path| -> Option<bool> {
++        let parent_dir_name = p.parent()?.file_name()?;
++        if parent_dir_name != OsStr::new("lib") {
++            return Some(false);
++        }
++        // We assume that the `ld.so` path is always valid unicode, since there's... no reason for
++        // it not to be. :)
++        let file_name = p.file_name()?.to_str()?;
++        Some(
++            file_name.starts_with("ld-linux-")
++                && (file_name.ends_with(".so") || file_name.contains(".so.")),
++        )
++    };
++
+     match crate::fs::read_link("/proc/self/exe") {
+         Err(ref e) if e.kind() == io::ErrorKind::NotFound => Err(io::Error::new_const(
+             io::ErrorKind::Uncategorized,
+             &"no /proc/self/exe available. Is /proc mounted?",
+         )),
+-        other => other,
++        Err(x) => Err(x),
++        Ok(p) => {
++            // Chrome OS-specific: in some configurations, Rust binaries are invoked through
++            // `ld.so`. In these cases, we want to present the user with the path to the Rust
++            // binary that was invoked.
++            //
++            // Because the ld.so wrappers _generally_ don't want to invoke things with absolute
++            // paths, this is _generally_ a path relative to dirname(ld.so).
++            if is_ld_so(&p) == Some(true) {
++                if let Some(relative_to_ld) = crate::env::var_os("LD_ARGV0_REL") {
++                    let relative_to_ld = PathBuf::from(relative_to_ld);
++                    if relative_to_ld.is_absolute() {
++                        return Ok(relative_to_ld);
++                    }
++                    // safety: is_ld_so checks the parent directory of `p`.
++                    return Ok(p.parent().unwrap().join(relative_to_ld));
++                }
++            }
++            Ok(p)
++        }
+     }
+ }
+ 
+-- 
+2.32.0.554.ge1b32706d8-goog
+
diff --git a/dev-lang/rust/files/rust-1.55.0-no-test-on-build.patch b/dev-lang/rust/files/rust-1.55.0-no-test-on-build.patch
new file mode 100644
index 0000000..09b803a
--- /dev/null
+++ b/dev-lang/rust/files/rust-1.55.0-no-test-on-build.patch
@@ -0,0 +1,28 @@
+From 95e73cf7469c133d672fafc2ff16b9715a1819ae Mon Sep 17 00:00:00 2001
+From: George Burgess IV <gbiv@google.com>
+Date: Fri, 30 Jul 2021 00:57:59 +0000
+Subject: [PATCH 2/8] no-test-on-build.patch (modified; 80% confidence of
+ correctness)
+
+---
+ src/bootstrap/compile.rs | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs
+index 112a6ea93..4836529dd 100644
+--- a/src/bootstrap/compile.rs
++++ b/src/bootstrap/compile.rs
+@@ -534,6 +534,10 @@ impl Step for Rustc {
+             return;
+         }
+ 
++        if builder.no_std(target) == Some(true) {
++            return;
++        }
++
+         builder.ensure(Std { compiler, target });
+ 
+         if builder.config.keep_stage.contains(&compiler.stage) {
+-- 
+2.32.0.554.ge1b32706d8-goog
+
diff --git a/dev-lang/rust/files/rust-1.55.0-revert-libunwind-build.patch b/dev-lang/rust/files/rust-1.55.0-revert-libunwind-build.patch
new file mode 100644
index 0000000..8b87439
--- /dev/null
+++ b/dev-lang/rust/files/rust-1.55.0-revert-libunwind-build.patch
@@ -0,0 +1,32 @@
+From ba74214e3bfc43dc22f8161bf08ab7a78d0e08f8 Mon Sep 17 00:00:00 2001
+From: George Burgess IV <gbiv@google.com>
+Date: Sun, 1 Aug 2021 07:08:10 +0000
+Subject: [PATCH 6/8] apply new version of libunwind's patch
+
+---
+ library/unwind/build.rs | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/library/unwind/build.rs b/library/unwind/build.rs
+index a7d52670b..0ccf71030 100644
+--- a/library/unwind/build.rs
++++ b/library/unwind/build.rs
+@@ -104,7 +104,6 @@ mod llvm_libunwind {
+         cpp_cfg.flag("-nostdinc++");
+         cpp_cfg.flag("-fno-exceptions");
+         cpp_cfg.flag("-fno-rtti");
+-        cpp_cfg.flag_if_supported("-fvisibility-global-new-delete-hidden");
+ 
+         // Don't set this for clang
+         // By default, Clang builds C code in GNU C17 mode.
+@@ -129,7 +128,6 @@ mod llvm_libunwind {
+             cfg.flag("-fstrict-aliasing");
+             cfg.flag("-funwind-tables");
+             cfg.flag("-fvisibility=hidden");
+-            cfg.define("_LIBUNWIND_DISABLE_VISIBILITY_ANNOTATIONS", None);
+             cfg.include(root.join("include"));
+             cfg.cargo_metadata(false);
+ 
+-- 
+2.32.0.554.ge1b32706d8-goog
+
diff --git a/dev-lang/rust/files/rust-1.55.0-sanitizer-supported.patch b/dev-lang/rust/files/rust-1.55.0-sanitizer-supported.patch
new file mode 100644
index 0000000..f071b31
--- /dev/null
+++ b/dev-lang/rust/files/rust-1.55.0-sanitizer-supported.patch
@@ -0,0 +1,35 @@
+From df69226da48c7f5b47e95c5652ba445673caf1d1 Mon Sep 17 00:00:00 2001
+From: George Burgess IV <gbiv@google.com>
+Date: Sun, 1 Aug 2021 07:26:34 +0000
+Subject: [PATCH 3/8] sanitizer-supported.patch
+
+---
+ src/bootstrap/native.rs | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/src/bootstrap/native.rs b/src/bootstrap/native.rs
+index 449fdb87b..d50ad87e3 100644
+--- a/src/bootstrap/native.rs
++++ b/src/bootstrap/native.rs
+@@ -805,13 +805,16 @@ fn supported_sanitizers(
+     match &*target.triple {
+         "aarch64-apple-darwin" => darwin_libs("osx", &["asan", "lsan", "tsan"]),
+         "aarch64-fuchsia" => common_libs("fuchsia", "aarch64", &["asan"]),
+-        "aarch64-unknown-linux-gnu" => {
++        "aarch64-unknown-linux-gnu" | "aarch64-cros-linux-gnu"=> {
+             common_libs("linux", "aarch64", &["asan", "lsan", "msan", "tsan", "hwasan"])
+         }
++        "armv7a-cros-linux-gnueabihf" => {
++            common_libs("linux", "armhf", &["asan"])
++        }
+         "x86_64-apple-darwin" => darwin_libs("osx", &["asan", "lsan", "tsan"]),
+         "x86_64-fuchsia" => common_libs("fuchsia", "x86_64", &["asan"]),
+         "x86_64-unknown-freebsd" => common_libs("freebsd", "x86_64", &["asan", "msan", "tsan"]),
+-        "x86_64-unknown-linux-gnu" => {
++        "x86_64-unknown-linux-gnu" | "x86_64-cros-linux-gnu" | "x86_64-pc-linux-gnu" => {
+             common_libs("linux", "x86_64", &["asan", "lsan", "msan", "tsan"])
+         }
+         "x86_64-unknown-linux-musl" => {
+-- 
+2.32.0.554.ge1b32706d8-goog
+
diff --git a/dev-lang/rust/rust-1.47.0-r7.ebuild b/dev-lang/rust/rust-1.47.0-r7.ebuild
deleted file mode 100644
index d7adab9..0000000
--- a/dev-lang/rust/rust-1.47.0-r7.ebuild
+++ /dev/null
@@ -1,200 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 )
-inherit python-any-r1 toolchain-funcs
-
-if [[ ${PV} = *beta* ]]; then
-	betaver=${PV//*beta}
-	BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}"
-	MY_P="rustc-beta"
-	SLOT="beta/${PV}"
-	SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.gz"
-	KEYWORDS=""
-else
-	ABI_VER="$(ver_cut 1-2)"
-	SLOT="stable/${ABI_VER}"
-	MY_P="rustc-${PV}"
-	SRC="${MY_P}-src.tar.gz"
-	KEYWORDS="*"
-fi
-
-
-BOOTSTRAP_VERSION="1.46.0"
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="http://www.rust-lang.org/"
-
-SRC_URI="https://static.rust-lang.org/dist/${SRC} -> rustc-${PV}-src.tar.gz"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
-
-RESTRICT="binchecks strip"
-REQUIRED_USE="amd64"
-
-DEPEND="${PYTHON_DEPS}
-	>=dev-libs/libxml2-2.9.6
-	>=dev-lang/perl-5.0
-"
-
-BDEPEND="=dev-lang/rust-bootstrap-${BOOTSTRAP_VERSION}"
-RDEPEND="!dev-util/cargo"
-
-PATCHES=(
-	"${FILESDIR}/${P}-aarch64-outline-atomics.patch"
-	"${FILESDIR}/${P}-add-cros-targets.patch"
-	"${FILESDIR}/${P}-fix-rpath.patch"
-	"${FILESDIR}/${P}-enable-sanitizers.patch"
-	"${FILESDIR}/${P}-Revert-CMake-Unconditionally-add-.h-and-.td-files-to.patch"
-	"${FILESDIR}/${P}-no-test-on-build.patch"
-	"${FILESDIR}/${P}-sanitizer-supported.patch"
-	"${FILESDIR}/${P}-cc.patch"
-	"${FILESDIR}/${P}-revert-libunwind-build.patch"
-	"${FILESDIR}/${P}-ld-argv0.patch"
-	"${FILESDIR}/${P}-no-weak-symbols.patch"
-	"${FILESDIR}/${P}-cherry-dee70493-more-precise-spans.patch"
-	"${FILESDIR}/${P}-Handle-sparse-git-repo-without-erroring.patch"
-)
-
-S="${WORKDIR}/${MY_P}-src"
-
-# This is the list of target triples as they appear in the cros_sdk. If this list gets changed,
-# ensure that each of these values has a corresponding librustc_target/spec file created below
-# and a line referring to it in 0001-add-cros-targets.patch.
-RUSTC_TARGET_TRIPLES=(
-	x86_64-pc-linux-gnu
-	x86_64-cros-linux-gnu
-	armv7a-cros-linux-gnueabihf
-	aarch64-cros-linux-gnu
-)
-
-# In this context BARE means the OS part of the triple is none and gcc is used for C/C++ and
-# linking.
-RUSTC_BARE_TARGET_TRIPLES=(
-	thumbv6m-none-eabi # Cortex-M0, M0+, M1
-	thumbv7m-none-eabi # Cortex-M3
-	thumbv7em-none-eabihf # Cortex-M4F, M7F, FPU, hardfloat
-)
-
-pkg_setup() {
-	python-any-r1_pkg_setup
-	# Skips the toolchain check if we are installing a binpkg.
-	if [[ "${MERGE_TYPE}" != "binary" ]]; then
-		local tt
-		for tt in "${RUSTC_TARGET_TRIPLES[@]}" ; do
-			which "${tt}-clang" >/dev/null || die "missing toolchain ${tt}"
-		done
-		which "arm-none-eabi-gcc" >/dev/null || die "missing toolchain arm-none-eabi"
-	fi
-}
-
-src_prepare() {
-	# Copy "unknown" vendor targets to create cros_sdk target triple
-	# variants as referred to in 0001-add-cros-targets.patch and RUSTC_TARGET_TRIPLES.
-	# armv7a is treated specially because the cros toolchain differs in
-	# more than just the vendor part of the target triple. The arch is
-	# armv7a in cros versus armv7.
-	pushd src/librustc_target/spec || die
-	sed -e 's:"unknown":"pc":g' x86_64_unknown_linux_gnu.rs >x86_64_pc_linux_gnu.rs || die
-	sed -e 's:"unknown":"cros":g' x86_64_unknown_linux_gnu.rs >x86_64_cros_linux_gnu.rs || die
-	sed -e 's:"unknown":"cros":g' armv7_unknown_linux_gnueabihf.rs >armv7a_cros_linux_gnueabihf.rs || die
-	sed -e 's:"unknown":"cros":g' aarch64_unknown_linux_gnu.rs >aarch64_cros_linux_gnu.rs || die
-	popd || die
-
-	# The miri tool is built because of 'extended = true' in cros-config.toml,
-	# but the build is busted. See the upstream issue: [https://github.com/rust-
-	# lang/rust/issues/56576]. Because miri isn't installed or needed, this sed
-	# script eradicates the command that builds it during the bootstrap script.
-	pushd src/bootstrap || die
-	sed -i 's@tool::Miri,@@g' builder.rs
-	popd || die
-
-	# Tsk. Tsk. The rust makefile for LLVM's compiler-rt uses -ffreestanding
-	# but one of the files includes <stdlib.h> causing occasional problems
-	# with MB_LEN_MAX. See crbug.com/730845 for the thrilling details. This
-	# line patches over the problematic include.
-	sed -e 's:#include <stdlib.h>:void abort(void);:g' \
-		-i "${ECONF_SOURCE:-.}"/src/llvm-project/compiler-rt/lib/builtins/int_util.c || die
-
-	# For the librustc_llvm module, the build will link with -nodefaultlibs and manually choose the
-	# std C++ library. For x86_64 Linux, the build script always chooses libstdc++ which will not
-	# work if LLVM was built with USE="default-libcxx". This snippet changes that choice to libc++
-	# in the case that clang++ defaults to libc++.
-	if "${CXX}" -### -x c++ - < /dev/null 2>&1 | grep -q -e '-lc++'; then
-		sed -i 's:"stdc++":"c++":g' src/librustc_llvm/build.rs || die
-	fi
-
-	default
-}
-
-src_configure() {
-	local targets=""
-	local tt
-	for tt in "${RUSTC_TARGET_TRIPLES[@]}" "${RUSTC_BARE_TARGET_TRIPLES[@]}" ; do
-		targets+="\"${tt}\", "
-	done
-
-	local config=cros-config.toml
-	cat > "${config}" <<EOF
-[build]
-target = [${targets}]
-cargo = "/opt/rust-bootstrap-${BOOTSTRAP_VERSION}/bin/cargo"
-rustc = "/opt/rust-bootstrap-${BOOTSTRAP_VERSION}/bin/rustc"
-docs = false
-submodules = false
-python = "${EPYTHON}"
-vendor = true
-extended = true
-tools = ["cargo", "rustfmt", "clippy", "cargofmt"]
-sanitizers = true
-
-[llvm]
-ninja = true
-
-[install]
-prefix = "${ED}usr"
-libdir = "$(get_libdir)"
-mandir = "share/man"
-
-[rust]
-default-linker = "${CBUILD}-clang"
-channel = "${SLOT%%/*}"
-codegen-units = 0
-llvm-libunwind = true
-codegen-tests = false
-
-EOF
-	for tt in "${RUSTC_TARGET_TRIPLES[@]}" ; do
-		cat >> cros-config.toml <<EOF
-[target."${tt}"]
-cc = "${tt}-clang"
-cxx = "${tt}-clang++"
-linker = "${tt}-clang++"
-
-EOF
-	done
-}
-
-src_compile() {
-	${EPYTHON} x.py build --stage 2 --config cros-config.toml || die
-
-	# Remove the src/rust symlink which will be dangling after sources are
-	# removed, and the containing src directory.
-	rm "${S}/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/src/rust" || die
-	rmdir "${S}/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/src" || die
-}
-
-src_install() {
-	local obj="build/x86_64-unknown-linux-gnu/stage2"
-	local tools="${obj}-tools/x86_64-unknown-linux-gnu/release/"
-	dobin "${obj}/bin/rustc" "${obj}/bin/rustdoc"
-	dobin "${tools}/cargo"
-	dobin "${tools}/rustfmt" "${tools}/cargo-fmt"
-	dobin "${tools}/clippy-driver" "${tools}/cargo-clippy"
-	dobin src/etc/rust-gdb src/etc/rust-lldb
-	insinto "/usr/$(get_libdir)"
-	doins -r "${obj}/lib/"*
-	doins -r "${obj}/lib64/"*
-}
diff --git a/dev-lang/rust/rust-1.51.0.ebuild b/dev-lang/rust/rust-1.51.0.ebuild
deleted file mode 100644
index 093365e..0000000
--- a/dev-lang/rust/rust-1.51.0.ebuild
+++ /dev/null
@@ -1,210 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6..9} )
-inherit python-any-r1 toolchain-funcs
-
-if [[ ${PV} = *beta* ]]; then
-	betaver=${PV//*beta}
-	BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}"
-	MY_P="rustc-beta"
-	SLOT="beta/${PV}"
-	SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.gz"
-	KEYWORDS=""
-else
-	ABI_VER="$(ver_cut 1-2)"
-	SLOT="stable/${ABI_VER}"
-	MY_P="rustc-${PV}"
-	SRC="${MY_P}-src.tar.gz"
-	KEYWORDS="*"
-fi
-
-
-BOOTSTRAP_VERSION="1.50.0"
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="http://www.rust-lang.org/"
-
-SRC_URI="https://static.rust-lang.org/dist/${SRC} -> rustc-${PV}-src.tar.gz"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
-
-RESTRICT="binchecks strip"
-REQUIRED_USE="amd64"
-
-DEPEND="${PYTHON_DEPS}
-	>=dev-libs/libxml2-2.9.6
-	>=dev-lang/perl-5.0
-"
-
-BDEPEND="dev-lang/rust-bootstrap:${BOOTSTRAP_VERSION}"
-RDEPEND="!dev-util/cargo"
-
-PATCHES=(
-	# This bundle is from
-	# https://gitweb.gentoo.org/repo/gentoo.git/commit?id=65b9e4c1a1c3a2de55637c7977584c5827b66366
-	# and
-	# https://gitweb.gentoo.org/repo/gentoo.git/commit?id=c9982cad131a4c026810796850ccb60243ff9406.
-	"${FILESDIR}/${P}-backport-pr81728.patch"
-	"${FILESDIR}/${P}-backport-pr81741.patch"
-	"${FILESDIR}/${P}-backport-pr82289.patch"
-	"${FILESDIR}/${P}-backport-pr82292.patch"
-	"${FILESDIR}/${P}-backport-pr83629.patch"
-
-	"${FILESDIR}/${P}-aarch64-outline-atomics.patch"
-	"${FILESDIR}/${P}-add-cros-targets.patch"
-	"${FILESDIR}/${P}-fix-rpath.patch"
-	"${FILESDIR}/${P}-enable-sanitizers.patch"
-	"${FILESDIR}/${P}-Revert-CMake-Unconditionally-add-.h-and-.td-files-to.patch"
-	"${FILESDIR}/${P}-no-test-on-build.patch"
-	"${FILESDIR}/${P}-sanitizer-supported.patch"
-	"${FILESDIR}/${P}-cc.patch"
-	"${FILESDIR}/${P}-revert-libunwind-build.patch"
-	"${FILESDIR}/${P}-ld-argv0.patch"
-	"${FILESDIR}/${P}-no-weak-symbols.patch"
-	"${FILESDIR}/${P}-Handle-sparse-git-repo-without-erroring.patch"
-)
-
-S="${WORKDIR}/${MY_P}-src"
-
-# This is the list of target triples as they appear in the cros_sdk. If this
-# list gets changed, ensure that each of these values has a corresponding
-# compiler/rustc_target/src/spec file created below and a line referring to it
-# in 0001-add-cros-targets.patch.
-RUSTC_TARGET_TRIPLES=(
-	x86_64-pc-linux-gnu
-	x86_64-cros-linux-gnu
-	armv7a-cros-linux-gnueabihf
-	aarch64-cros-linux-gnu
-)
-
-# In this context BARE means the OS part of the triple is none and gcc is used for C/C++ and
-# linking.
-RUSTC_BARE_TARGET_TRIPLES=(
-	thumbv6m-none-eabi # Cortex-M0, M0+, M1
-	thumbv7m-none-eabi # Cortex-M3
-	thumbv7em-none-eabihf # Cortex-M4F, M7F, FPU, hardfloat
-)
-
-pkg_setup() {
-	python-any-r1_pkg_setup
-	# Skips the toolchain check if we are installing a binpkg.
-	if [[ "${MERGE_TYPE}" != "binary" ]]; then
-		local tt
-		for tt in "${RUSTC_TARGET_TRIPLES[@]}" ; do
-			which "${tt}-clang" >/dev/null || die "missing toolchain ${tt}"
-		done
-		which "arm-none-eabi-gcc" >/dev/null || die "missing toolchain arm-none-eabi"
-	fi
-}
-
-src_prepare() {
-	# Copy "unknown" vendor targets to create cros_sdk target triple
-	# variants as referred to in 0001-add-cros-targets.patch and RUSTC_TARGET_TRIPLES.
-	# armv7a is treated specially because the cros toolchain differs in
-	# more than just the vendor part of the target triple. The arch is
-	# armv7a in cros versus armv7.
-	pushd compiler/rustc_target/src/spec || die
-	sed -e 's:"unknown":"pc":g' x86_64_unknown_linux_gnu.rs >x86_64_pc_linux_gnu.rs || die
-	sed -e 's:"unknown":"cros":g' x86_64_unknown_linux_gnu.rs >x86_64_cros_linux_gnu.rs || die
-	sed -e 's:"unknown":"cros":g' armv7_unknown_linux_gnueabihf.rs >armv7a_cros_linux_gnueabihf.rs || die
-	sed -e 's:"unknown":"cros":g' aarch64_unknown_linux_gnu.rs >aarch64_cros_linux_gnu.rs || die
-	popd || die
-
-	# The miri tool is built because of 'extended = true' in cros-config.toml,
-	# but the build is busted. See the upstream issue: [https://github.com/rust-
-	# lang/rust/issues/56576]. Because miri isn't installed or needed, this sed
-	# script eradicates the command that builds it during the bootstrap script.
-	pushd src/bootstrap || die
-	sed -i 's@tool::Miri,@@g' builder.rs
-	popd || die
-
-	# Tsk. Tsk. The rust makefile for LLVM's compiler-rt uses -ffreestanding
-	# but one of the files includes <stdlib.h> causing occasional problems
-	# with MB_LEN_MAX. See crbug.com/730845 for the thrilling details. This
-	# line patches over the problematic include.
-	sed -e 's:#include <stdlib.h>:void abort(void);:g' \
-		-i "${ECONF_SOURCE:-.}"/src/llvm-project/compiler-rt/lib/builtins/int_util.c || die
-
-	# For the rustc_llvm module, the build will link with -nodefaultlibs and manually choose the
-	# std C++ library. For x86_64 Linux, the build script always chooses libstdc++ which will not
-	# work if LLVM was built with USE="default-libcxx". This snippet changes that choice to libc++
-	# in the case that clang++ defaults to libc++.
-	if "${CXX}" -### -x c++ - < /dev/null 2>&1 | grep -q -e '-lc++'; then
-		sed -i 's:"stdc++":"c++":g' compiler/rustc_llvm/build.rs || die
-	fi
-
-	default
-}
-
-src_configure() {
-	local targets=""
-	local tt
-	for tt in "${RUSTC_TARGET_TRIPLES[@]}" "${RUSTC_BARE_TARGET_TRIPLES[@]}" ; do
-		targets+="\"${tt}\", "
-	done
-
-	local config=cros-config.toml
-	cat > "${config}" <<EOF
-[build]
-target = [${targets}]
-cargo = "/opt/rust-bootstrap-${BOOTSTRAP_VERSION}/bin/cargo"
-rustc = "/opt/rust-bootstrap-${BOOTSTRAP_VERSION}/bin/rustc"
-docs = false
-submodules = false
-python = "${EPYTHON}"
-vendor = true
-extended = true
-tools = ["cargo", "rustfmt", "clippy", "cargofmt"]
-sanitizers = true
-
-[llvm]
-ninja = true
-
-[install]
-prefix = "${ED}usr"
-libdir = "$(get_libdir)"
-mandir = "share/man"
-
-[rust]
-default-linker = "${CBUILD}-clang"
-channel = "${SLOT%%/*}"
-codegen-units = 0
-llvm-libunwind = 'in-tree'
-codegen-tests = false
-
-EOF
-	for tt in "${RUSTC_TARGET_TRIPLES[@]}" ; do
-		cat >> cros-config.toml <<EOF
-[target."${tt}"]
-cc = "${tt}-clang"
-cxx = "${tt}-clang++"
-linker = "${tt}-clang++"
-
-EOF
-	done
-}
-
-src_compile() {
-	${EPYTHON} x.py build --stage 2 --config cros-config.toml || die
-
-	# Remove the src/rust symlink which will be dangling after sources are
-	# removed, and the containing src directory.
-	rm "${S}/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/src/rust" || die
-	rmdir "${S}/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/src" || die
-}
-
-src_install() {
-	local obj="build/x86_64-unknown-linux-gnu/stage2"
-	local tools="${obj}-tools/x86_64-unknown-linux-gnu/release/"
-	dobin "${obj}/bin/rustc" "${obj}/bin/rustdoc"
-	dobin "${tools}/cargo"
-	dobin "${tools}/rustfmt" "${tools}/cargo-fmt"
-	dobin "${tools}/clippy-driver" "${tools}/cargo-clippy"
-	dobin src/etc/rust-gdb src/etc/rust-lldb
-	insinto "/usr/$(get_libdir)"
-	doins -r "${obj}/lib/"*
-	doins -r "${obj}/lib64/"*
-}
diff --git a/dev-lang/rust/rust-1.55.0.ebuild b/dev-lang/rust/rust-1.55.0.ebuild
new file mode 100644
index 0000000..c8f8722
--- /dev/null
+++ b/dev-lang/rust/rust-1.55.0.ebuild
@@ -0,0 +1,214 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+inherit python-any-r1 toolchain-funcs
+
+if [[ ${PV} = *beta* ]]; then
+	betaver=${PV//*beta}
+	BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}"
+	MY_P="rustc-beta"
+	SLOT="beta/${PV}"
+	SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.gz"
+	KEYWORDS=""
+else
+	ABI_VER="$(ver_cut 1-2)"
+	SLOT="stable/${ABI_VER}"
+	MY_P="rustc-${PV}"
+	SRC="${MY_P}-src.tar.gz"
+	KEYWORDS="*"
+fi
+
+
+BOOTSTRAP_VERSION="1.54.0"
+
+DESCRIPTION="Systems programming language from Mozilla"
+HOMEPAGE="http://www.rust-lang.org/"
+
+SRC_URI="https://static.rust-lang.org/dist/${SRC} -> rustc-${PV}-src.tar.gz"
+
+LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
+
+RESTRICT="binchecks strip"
+REQUIRED_USE="amd64"
+
+DEPEND="${PYTHON_DEPS}
+	>=dev-libs/libxml2-2.9.6
+	>=dev-lang/perl-5.0
+"
+
+BDEPEND="dev-lang/rust-bootstrap:${BOOTSTRAP_VERSION}"
+RDEPEND="!dev-util/cargo"
+
+PATCHES=(
+	"${FILESDIR}/${P}-add-cros-targets.patch"
+	"${FILESDIR}/${P}-fix-rpath.patch"
+	"${FILESDIR}/${P}-Revert-CMake-Unconditionally-add-.h-and-.td-files-to.patch"
+	"${FILESDIR}/${P}-no-test-on-build.patch"
+	"${FILESDIR}/${P}-sanitizer-supported.patch"
+	"${FILESDIR}/${P}-cc.patch"
+	"${FILESDIR}/${P}-fix-libunwind-build.patch"
+	"${FILESDIR}/${P}-revert-libunwind-build.patch"
+	"${FILESDIR}/${P}-ld-argv0.patch"
+	"${FILESDIR}/${P}-Handle-sparse-git-repo-without-erroring.patch"
+)
+
+S="${WORKDIR}/${MY_P}-src"
+
+# This is the list of target triples as they appear in the cros_sdk. If this
+# list gets changed, ensure that each of these values has a corresponding
+# compiler/rustc_target/src/spec file created below and a line referring to it
+# in 0001-add-cros-targets.patch.
+RUSTC_TARGET_TRIPLES=(
+	x86_64-pc-linux-gnu
+	x86_64-cros-linux-gnu
+	armv7a-cros-linux-gnueabihf
+	aarch64-cros-linux-gnu
+)
+
+# In this context BARE means the OS part of the triple is none and gcc is used for C/C++ and
+# linking.
+RUSTC_BARE_TARGET_TRIPLES=(
+	thumbv6m-none-eabi # Cortex-M0, M0+, M1
+	thumbv7m-none-eabi # Cortex-M3
+	thumbv7em-none-eabihf # Cortex-M4F, M7F, FPU, hardfloat
+)
+
+pkg_setup() {
+	python-any-r1_pkg_setup
+	# Skips the toolchain check if we are installing a binpkg.
+	if [[ "${MERGE_TYPE}" != "binary" ]]; then
+		local tt
+		for tt in "${RUSTC_TARGET_TRIPLES[@]}" ; do
+			which "${tt}-clang" >/dev/null || die "missing toolchain ${tt}"
+		done
+		which "arm-none-eabi-gcc" >/dev/null || die "missing toolchain arm-none-eabi"
+	fi
+}
+
+src_prepare() {
+	# Copy "unknown" vendor targets to create cros_sdk target triple
+	# variants as referred to in 0001-add-cros-targets.patch and RUSTC_TARGET_TRIPLES.
+	# armv7a is treated specially because the cros toolchain differs in
+	# more than just the vendor part of the target triple. The arch is
+	# armv7a in cros versus armv7.
+	pushd compiler/rustc_target/src/spec || die
+	sed -e 's:"unknown":"pc":g' x86_64_unknown_linux_gnu.rs >x86_64_pc_linux_gnu.rs || die
+	sed -e 's:"unknown":"cros":g' x86_64_unknown_linux_gnu.rs >x86_64_cros_linux_gnu.rs || die
+	sed -e 's:"unknown":"cros":g' armv7_unknown_linux_gnueabihf.rs >armv7a_cros_linux_gnueabihf.rs || die
+	sed -e 's:"unknown":"cros":g' aarch64_unknown_linux_gnu.rs >aarch64_cros_linux_gnu.rs || die
+	popd || die
+
+	# The miri tool is built because of 'extended = true' in cros-config.toml,
+	# but the build is busted. See the upstream issue: [https://github.com/rust-
+	# lang/rust/issues/56576]. Because miri isn't installed or needed, this sed
+	# script eradicates the command that builds it during the bootstrap script.
+	pushd src/bootstrap || die
+	sed -i 's@tool::Miri,@@g' builder.rs
+	popd || die
+
+	# Tsk. Tsk. The rust makefile for LLVM's compiler-rt uses -ffreestanding
+	# but one of the files includes <stdlib.h> causing occasional problems
+	# with MB_LEN_MAX. See crbug.com/730845 for the thrilling details. This
+	# line patches over the problematic include.
+	sed -e 's:#include <stdlib.h>:void abort(void);:g' \
+		-i "${ECONF_SOURCE:-.}"/src/llvm-project/compiler-rt/lib/builtins/int_util.c || die
+
+	# For the rustc_llvm module, the build will link with -nodefaultlibs and manually choose the
+	# std C++ library. For x86_64 Linux, the build script always chooses libstdc++ which will not
+	# work if LLVM was built with USE="default-libcxx". This snippet changes that choice to libc++
+	# in the case that clang++ defaults to libc++.
+	if "${CXX}" -### -x c++ - < /dev/null 2>&1 | grep -q -e '-lc++'; then
+		sed -i 's:"stdc++":"c++":g' compiler/rustc_llvm/build.rs || die
+	fi
+
+	default
+}
+
+src_configure() {
+	local targets=""
+	local tt
+	for tt in "${RUSTC_TARGET_TRIPLES[@]}" "${RUSTC_BARE_TARGET_TRIPLES[@]}" ; do
+		targets+="\"${tt}\", "
+	done
+
+	local config=cros-config.toml
+	cat > "${config}" <<EOF
+[build]
+target = [${targets}]
+cargo = "/opt/rust-bootstrap-${BOOTSTRAP_VERSION}/bin/cargo"
+rustc = "/opt/rust-bootstrap-${BOOTSTRAP_VERSION}/bin/rustc"
+docs = false
+submodules = false
+python = "${EPYTHON}"
+vendor = true
+extended = true
+tools = ["cargo", "rustfmt", "clippy", "cargofmt"]
+sanitizers = true
+profiler = true
+
+[llvm]
+ninja = true
+targets = "AArch64;ARM;X86"
+
+[install]
+prefix = "${ED}usr"
+libdir = "$(get_libdir)"
+mandir = "share/man"
+
+[rust]
+default-linker = "${CBUILD}-clang"
+channel = "nightly"
+codegen-units = 0
+llvm-libunwind = 'in-tree'
+codegen-tests = false
+
+EOF
+	for tt in "${RUSTC_TARGET_TRIPLES[@]}" ; do
+		cat >> cros-config.toml <<EOF
+[target."${tt}"]
+cc = "${tt}-clang"
+cxx = "${tt}-clang++"
+linker = "${tt}-clang++"
+
+EOF
+	done
+}
+
+src_compile() {
+	${EPYTHON} x.py build --stage 2 --config cros-config.toml || die
+
+	# Remove the src/rust symlink which will be dangling after sources are
+	# removed, and the containing src directory.
+	rm "${S}/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/src/rust" || die
+	rmdir "${S}/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/src" || die
+}
+
+src_install() {
+	local obj="build/x86_64-unknown-linux-gnu/stage2"
+	local tools="${obj}-tools/x86_64-unknown-linux-gnu/release/"
+	dobin "${obj}/bin/rustc" "${obj}/bin/rustdoc"
+	dobin "${tools}/cargo"
+	dobin "${tools}/rustfmt" "${tools}/cargo-fmt"
+	dobin "${tools}/clippy-driver" "${tools}/cargo-clippy"
+	dobin src/etc/rust-gdb src/etc/rust-lldb
+	insinto "/usr/$(get_libdir)"
+	doins -r "${obj}/lib/"*
+	doins -r "${obj}/lib64/"*
+
+	# Install miscellaneous LLVM tools.
+	#
+	# These tools are already provided in the SDK, but they're built with
+	# the version of LLVM built by sys-devel/llvm. Rust uses an independent
+	# version of LLVM, so the use of these tools is sometimes necessary to
+	# produce artifacts that work with `rustc` and such.
+	#
+	# Our long-term plan is to have Rust using the same version of LLVM as
+	# sys-devel/llvm. When that happens, all of the below will be removed, with
+	# the expectation that users will migrate to the LLVM tools on `$PATH`.
+	local llvm_tools="build/x86_64-unknown-linux-gnu/llvm/bin"
+	exeinto "/usr/libexec/rust"
+	doexe "${llvm_tools}/llvm-profdata"
+}
diff --git a/dev-libs/gobject-introspection-common/Manifest b/dev-libs/gobject-introspection-common/Manifest
new file mode 100644
index 0000000..bdfba87
--- /dev/null
+++ b/dev-libs/gobject-introspection-common/Manifest
@@ -0,0 +1 @@
+DIST gobject-introspection-1.68.0.tar.xz 1019732 BLAKE2B 2f99cc9cec5ea05f1a5fa4473d1ad424cc1f6b097075f798e89cf740519db180417a3f0de37afc8a0cf0771436a9d9f7d6193b69289dfb47ec077d33a7d27c91 SHA512 d2e64c119aa500b624a57baa2cebe9126ab100003d98b771f4fb51cf92748635de352997f702f40656f7c665f3dfedfbfa19912cc7a2d039d254555243bbc381
diff --git a/dev-libs/gobject-introspection-common/OWNERS b/dev-libs/gobject-introspection-common/OWNERS
new file mode 100644
index 0000000..c463871
--- /dev/null
+++ b/dev-libs/gobject-introspection-common/OWNERS
@@ -0,0 +1 @@
+cjmcdonald@google.com
diff --git a/dev-libs/gobject-introspection-common/gobject-introspection-common-1.68.0.ebuild b/dev-libs/gobject-introspection-common/gobject-introspection-common-1.68.0.ebuild
new file mode 100644
index 0000000..93aa371
--- /dev/null
+++ b/dev-libs/gobject-introspection-common/gobject-introspection-common-1.68.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+GNOME_ORG_MODULE="gobject-introspection"
+
+inherit gnome.org
+
+DESCRIPTION="Build infrastructure for GObject Introspection"
+HOMEPAGE="https://wiki.gnome.org/Projects/GObjectIntrospection"
+
+LICENSE="HPND"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="!<${CATEGORY}/${GNOME_ORG_MODULE}-${PV}"
+# Use !<${PV} because mixing gobject-introspection with different version of -common can cause issues like:
+# https://forums.gentoo.org/viewtopic-p-7421930.html
+
+src_configure() { :; }
+
+src_compile() { :; }
+
+src_install() {
+	insinto /usr/share/aclocal
+	doins m4/introspection.m4
+
+	insinto /usr/share/gobject-introspection-1.0
+	doins Makefile.introspection
+}
diff --git a/dev-libs/gobject-introspection-common/metadata.xml b/dev-libs/gobject-introspection-common/metadata.xml
new file mode 100644
index 0000000..3998080
--- /dev/null
+++ b/dev-libs/gobject-introspection-common/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+	<email>gnome@gentoo.org</email>
+	<name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-libs/gobject-introspection/Manifest b/dev-libs/gobject-introspection/Manifest
new file mode 100644
index 0000000..bdfba87
--- /dev/null
+++ b/dev-libs/gobject-introspection/Manifest
@@ -0,0 +1 @@
+DIST gobject-introspection-1.68.0.tar.xz 1019732 BLAKE2B 2f99cc9cec5ea05f1a5fa4473d1ad424cc1f6b097075f798e89cf740519db180417a3f0de37afc8a0cf0771436a9d9f7d6193b69289dfb47ec077d33a7d27c91 SHA512 d2e64c119aa500b624a57baa2cebe9126ab100003d98b771f4fb51cf92748635de352997f702f40656f7c665f3dfedfbfa19912cc7a2d039d254555243bbc381
diff --git a/dev-libs/gobject-introspection/OWNERS b/dev-libs/gobject-introspection/OWNERS
new file mode 100644
index 0000000..c463871
--- /dev/null
+++ b/dev-libs/gobject-introspection/OWNERS
@@ -0,0 +1 @@
+cjmcdonald@google.com
diff --git a/dev-libs/gobject-introspection/files/exec_wrapper b/dev-libs/gobject-introspection/files/exec_wrapper
new file mode 100755
index 0000000..8bc0267
--- /dev/null
+++ b/dev-libs/gobject-introspection/files/exec_wrapper
@@ -0,0 +1,41 @@
+#!/bin/bash
+# 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.
+
+# Wrapper for execution of cross-compiled introspection binaries.
+#
+# gobject-introspection compiles small binaries for the target and executes them
+# at build time in order to dump introspection metadata for various libraries on
+# the target. Since these binaries are compiled for the target and not the build
+# host they cannot be run normally. This script uses the platform2_test wrapper
+# to find the appropriate QEMU wrapper to emulate the target and to chroot into
+# the sysroot in order to be able to succesfully execute these cross-compiled
+# binaries.
+#
+# We pass the sysroot as an explicit argument to the platform2_test wrapper as
+# well as the following arguments:
+#
+# 1. The platform2_test wrapper filters environment variables by a small
+#    allow-list. We explicitly forward the default value of LD_LIBRARY_PATH
+#    through the wrapper and add an additional value: Some of the introspection
+#    binaries need to link against a shared object built in
+#    gobject-introspection itself, which hasn't yet been installed to the
+#    sysroot since we're still in the compile phase of the package itself. So we
+#    add a subdirectory of the package's WORKDIR to LD_LIBRARY_PATH that we know
+#    contains the build artifacts so that the loader can properly discover them.
+#    We strip any leading instances of $SYSROOT from the WORKDIR path since we
+#    will be chroot-ing into the sysoot as part of the introspection binary
+#    execution.
+#
+# 2. Remove all instances of $SYSROOT from arguments to the introspection
+#    binaries. This also done because we are chroot-ing into sysroot already.
+#    `/build/$board` becomes `/`, so
+#    `--library-path='/build/$board/usr/lib/libfoo'` needs to become
+#    `--library-path='/usr/lib/libfoo'`.
+
+"${CHROOT_SOURCE_ROOT}"/src/platform2/common-mk/platform2_test.py \
+    --sysroot="${SYSROOT}" \
+    --env LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${WORKDIR/${SYSROOT}/}/${P}-build/girepository/" \
+    -- \
+    "${@//${SYSROOT}/}"
diff --git a/dev-libs/gobject-introspection/files/gobject-introspection-1.68.0-CHROMIUM-hardcode-gi_typelib-path.patch b/dev-libs/gobject-introspection/files/gobject-introspection-1.68.0-CHROMIUM-hardcode-gi_typelib-path.patch
new file mode 100644
index 0000000..b6710bd
--- /dev/null
+++ b/dev-libs/gobject-introspection/files/gobject-introspection-1.68.0-CHROMIUM-hardcode-gi_typelib-path.patch
@@ -0,0 +1,29 @@
+Allow overriding the calculated GOBJECT_INTROSPECTION_LIBDIR path so that we
+may specify a default search path for typelib files in situations where it is
+inconvenient or impossible to set GI_TYPELIB_PATH through the environment.
+
+diff --git a/meson.build b/meson.build
+index e5205e3..acbc295 100644
+--- a/meson.build
++++ b/meson.build
+@@ -100,7 +100,7 @@ else
+ endif
+ girdir = join_paths(gir_dir_prefix, 'gir-1.0')
+ config.set_quoted('GIR_DIR', girdir)
+-config.set_quoted('GOBJECT_INTROSPECTION_LIBDIR', join_paths(get_option('prefix'), get_option('libdir')))
++config.set_quoted('GOBJECT_INTROSPECTION_LIBDIR', get_option('gi_libdir'))
+
+ foreach type : ['char', 'short', 'int', 'long']
+   size = cc.sizeof(type)
+diff --git a/meson_options.txt b/meson_options.txt
+index dff9be8..de8fb16 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -45,3 +45,7 @@ option('build_introspection_data', type: 'boolean', value : true,
+ option('gi_cross_pkgconfig_sysroot_path', type: 'string',
+   description: 'Specify a sysroot path to prepend to pkgconfig output (useful when cross-compiling)'
+ )
++
++option('gi_libdir', type: 'string',
++  description: 'Specify a hardcoded value for GOBJECT_INTROSPECTION_LIBDIR.'
++)
diff --git a/dev-libs/gobject-introspection/files/ldd_wrapper b/dev-libs/gobject-introspection/files/ldd_wrapper
new file mode 100755
index 0000000..6d93eb5
--- /dev/null
+++ b/dev-libs/gobject-introspection/files/ldd_wrapper
@@ -0,0 +1,26 @@
+#!/bin/bash
+# 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.
+
+# Wrapper for `ldd` in cross-compilation situations.
+#
+# gobject-introspection uses `ldd` to inspect the dynamically linked
+# dependencies of small binaries it compiles during its build process, but doing
+# so requires executing the dynamic loader for that target. This is typically
+# not possible in a cross-compilation environment so chromite provides a pure
+# Python script that mimics the interface of `ldd` for inspecting dynamically
+# linked dependencies.
+#
+# We explicitly pass $SYSROOT as the "root" argument so that `lddtree` knows to
+# look for all dependencies in the build target's sysroot.
+
+# We also pass the --no-auto-root option so that `lddtree` won't implicitly add
+# the provided root as a prefix to all paths passed as arguments, otherwise
+# paths would end up doubly-prefixed, e.g.
+# '/build/$board/build/$board/usr/lib/foo'.
+
+"${CHROMITE_BIN_DIR}"/lddtree \
+    -R "${SYSROOT}" \
+    --no-auto-root \
+    "${@}"
diff --git a/dev-libs/gobject-introspection/gobject-introspection-1.68.0-r2.ebuild b/dev-libs/gobject-introspection/gobject-introspection-1.68.0-r2.ebuild
new file mode 120000
index 0000000..658da32
--- /dev/null
+++ b/dev-libs/gobject-introspection/gobject-introspection-1.68.0-r2.ebuild
@@ -0,0 +1 @@
+gobject-introspection-1.68.0.ebuild
\ No newline at end of file
diff --git a/dev-libs/gobject-introspection/gobject-introspection-1.68.0.ebuild b/dev-libs/gobject-introspection/gobject-introspection-1.68.0.ebuild
new file mode 100644
index 0000000..4cfb082
--- /dev/null
+++ b/dev-libs/gobject-introspection/gobject-introspection-1.68.0.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+PYTHON_REQ_USE="xml"
+inherit cros-constants gnome.org meson python-single-r1 xdg
+
+DESCRIPTION="Introspection system for GObject-based libraries"
+HOMEPAGE="https://wiki.gnome.org/Projects/GObjectIntrospection"
+
+LICENSE="LGPL-2+ GPL-2+"
+SLOT="0"
+IUSE="cros_host doctool gtk-doc test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+KEYWORDS="*"
+
+# virtual/pkgconfig needed at runtime, bug #505408
+RDEPEND="
+	>=dev-libs/gobject-introspection-common-${PV}
+	>=dev-libs/glib-2.58.0:2
+	dev-libs/libffi:=
+	doctool? (
+		$(python_gen_cond_dep '
+			dev-python/mako[${PYTHON_USEDEP}]
+			dev-python/markdown[${PYTHON_USEDEP}]
+		')
+	)
+	virtual/pkgconfig
+	${PYTHON_DEPS}
+"
+# Wants real bison, not virtual/yacc
+DEPEND="${RDEPEND}
+	gtk-doc? ( >=dev-util/gtk-doc-1.19
+		app-text/docbook-xml-dtd:4.3
+		app-text/docbook-xml-dtd:4.5
+	)
+	sys-devel/bison
+	sys-devel/flex
+	test? (
+		x11-libs/cairo[glib]
+		$(python_gen_cond_dep '
+			dev-python/mako[${PYTHON_USEDEP}]
+			dev-python/markdown[${PYTHON_USEDEP}]
+		')
+	)
+"
+
+BDEPEND="
+	!cros_host? (
+		>=dev-libs/gobject-introspection-${PV}
+		app-emulation/qemu
+	)
+"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-1.68.0-CHROMIUM-hardcode-gi_typelib-path.patch"
+)
+
+pkg_setup() {
+	python-single-r1_pkg_setup
+}
+
+src_configure() {
+	local emesonargs=(
+		$(meson_feature test cairo)
+		$(meson_feature doctool)
+		#-Dglib_src_dir
+		$(meson_use gtk-doc gtk_doc)
+		#-Dcairo_libname
+		-Dpython="${EPYTHON}"
+		#-Dgir_dir_prefix
+	)
+
+	if ! use cros_host ; then
+		emesonargs+=(
+			-Dgi_cross_pkgconfig_sysroot_path="${SYSROOT}"
+			-Dgi_cross_use_prebuilt_gi=true
+			-Dgi_cross_binary_wrapper="${FILESDIR}/exec_wrapper"
+			-Dgi_cross_ldd_wrapper="${FILESDIR}/ldd_wrapper"
+			# Define the built-in search dir with the assumption that this is
+			# installed to the test image. If this package is installed as part
+			# of the base image, then the env.d file defined below will specify
+			# the correct search paths via GI_TYPELIB_PATH in the environment.
+			-Dgi_libdir="${EPREFIX}/usr/local/$(get_libdir)"
+		)
+		# The ldd & binary wrappers rely on these locations being defined via
+		# the values in cros-constants.eclass
+		export CHROMITE_BIN_DIR CHROOT_SOURCE_ROOT
+	else
+		emesonargs+=(
+			-Dgi_libdir="${EPREFIX}/usr/$(get_libdir)"
+		)
+	fi
+
+	tc-export PKG_CONFIG
+	meson_src_configure
+}
+
+src_compile() {
+	tc-export PKG_CONFIG
+	meson_src_compile
+}
+
+src_install() {
+	meson_src_install
+	python_fix_shebang "${ED}"/usr/bin/
+	python_optimize "${ED}"/usr/$(get_libdir)/gobject-introspection/giscanner
+
+	if ! use cros_host ; then
+		echo "GI_TYPELIB_PATH=\"${EPREFIX}/usr/local/$(get_libdir)/girepository-1.0:${EPREFIX}/usr/$(get_libdir)/girepository-1.0\"" \
+			>> "${T}/90${PN}"
+		doenvd "${T}/90${PN}"
+	fi
+
+	# Prevent collision with gobject-introspection-common
+	rm -v "${ED}"/usr/share/aclocal/introspection.m4 \
+		"${ED}"/usr/share/gobject-introspection-1.0/Makefile.introspection || die
+	rmdir "${ED}"/usr/share/aclocal || die
+}
diff --git a/dev-libs/gobject-introspection/metadata.xml b/dev-libs/gobject-introspection/metadata.xml
new file mode 100644
index 0000000..ed75a82
--- /dev/null
+++ b/dev-libs/gobject-introspection/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+	<email>gnome@gentoo.org</email>
+	<name>Gentoo GNOME Desktop</name>
+</maintainer>
+<use>
+	<flag name="doctool">Install g-ir-doc-tool for generating documentation
+		from introspected data</flag>
+</use>
+</pkgmetadata>
diff --git a/dev-libs/libgrammar/Manifest b/dev-libs/libgrammar/Manifest
index 158e679..7074740 100644
--- a/dev-libs/libgrammar/Manifest
+++ b/dev-libs/libgrammar/Manifest
@@ -1 +1 @@
-DIST libgrammar-0.0.4.tar.gz 19370324 BLAKE2B dfe1f9e0f056974cda1f6f946bd5b3d7ccadedf917606ca4f01245a8cb48b65b1ca6a6c7d773eb93dad132b6e4ecdc40924b071815a84150a576a3d40d998df5 SHA512 7f7d5a3aafd4f6d340a3e0dc0de190ba6924cab58b61ee0fc051adaf04e1e97d85f3c59e35714a99146799d321a6668789b9d5427e68f5eb4eb9f04e108be9db
+DIST libgrammar-0.0.5.tar.gz 22164602 BLAKE2B ac617f5de0da472877a5c6ebe3cf4c12efe2fa5304ba304b1ae4fde4a635ac6ca4d729730a4619775eba1ed04939a6579d6e9b5cd9a175b9e5a9f1691ef05793 SHA512 90162311ebd3d3ff8ab9be8fa341a12b952aa953eb06553898caef7d30015c0c56d6d8cccb3dc87a5e16a01d2434a72f2fbef85e9ce8c69ec0969fb03e83e1a9
diff --git a/dev-libs/libgrammar/libgrammar-0.0.4-r1.ebuild b/dev-libs/libgrammar/libgrammar-0.0.4-r1.ebuild
deleted file mode 120000
index 64642bd..0000000
--- a/dev-libs/libgrammar/libgrammar-0.0.4-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-./libgrammar-0.0.4.ebuild
\ No newline at end of file
diff --git a/dev-libs/libgrammar/libgrammar-0.0.5-r1.ebuild b/dev-libs/libgrammar/libgrammar-0.0.5-r1.ebuild
new file mode 120000
index 0000000..17819a8
--- /dev/null
+++ b/dev-libs/libgrammar/libgrammar-0.0.5-r1.ebuild
@@ -0,0 +1 @@
+./libgrammar-0.0.5.ebuild
\ No newline at end of file
diff --git a/dev-libs/libgrammar/libgrammar-0.0.4.ebuild b/dev-libs/libgrammar/libgrammar-0.0.5.ebuild
similarity index 100%
rename from dev-libs/libgrammar/libgrammar-0.0.4.ebuild
rename to dev-libs/libgrammar/libgrammar-0.0.5.ebuild
diff --git a/dev-libs/libsuggest/Manifest b/dev-libs/libsuggest/Manifest
index 0e21588..7bef14e 100644
--- a/dev-libs/libsuggest/Manifest
+++ b/dev-libs/libsuggest/Manifest
@@ -1 +1 @@
-DIST libsuggest-amd64-0.0.9.tar.gz 7688291 BLAKE2B 2f83159de0e990677a62a2b45a7df428273501ff4fc598e46f3db03f74afea04e5baf25b43a172470a73f4a36f7ebca15f0f0b264b02dec75664364bdcb13c87 SHA512 96dff916b644ec8a5d64872ba561e79ac16fc9ccd7b317b2d1606df2425e0d6eae4dc14224f6d887c7f57131de03eaa75861b76034dc21b26fbcaab802d7f574
+DIST libsuggest-0.0.13.tar.gz 13814920 BLAKE2B dcbc5b03a899c11fe500818b6ffbc541e66f1da2b85fab96bcad89281140ca02526cda734990ccff8a6961ed8cb08aa0685c1f21b93aa66e0f0fd40972679593 SHA512 156ab0f5f125df9e8b0d2358433bdda9beb4d2275aacc565f5ce37c91f119b17c5b7c2e07d8085a5f526ea57aaea1e3c2d03dbb09c1158b042186c7389d806e8
diff --git a/dev-libs/libsuggest/libsuggest-0.0.13-r1.ebuild b/dev-libs/libsuggest/libsuggest-0.0.13-r1.ebuild
new file mode 120000
index 0000000..ec07b0d
--- /dev/null
+++ b/dev-libs/libsuggest/libsuggest-0.0.13-r1.ebuild
@@ -0,0 +1 @@
+libsuggest-0.0.13.ebuild
\ No newline at end of file
diff --git a/dev-libs/libsuggest/libsuggest-0.0.13.ebuild b/dev-libs/libsuggest/libsuggest-0.0.13.ebuild
new file mode 100644
index 0000000..3ca9e4a
--- /dev/null
+++ b/dev-libs/libsuggest/libsuggest-0.0.13.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Google text suggestions library for Chrome OS"
+HOMEPAGE="https://www.chromium.org/chromium-os"
+
+LICENSE="BSD-Google"
+SLOT="0"
+
+SRC_URI="gs://chromeos-localmirror/distfiles/libsuggest-${PV}.tar.gz"
+KEYWORDS="*"
+
+IUSE="ondevice_text_suggestions"
+
+S="${WORKDIR}"
+
+src_install() {
+	# Always install the header and proto files.
+	insinto /usr/include/chromeos/libsuggest/
+	doins text_suggester_interface.h
+	insinto /usr/include/chromeos/libsuggest/proto/
+	doins text_suggester_interface.proto
+
+	if use ondevice_text_suggestions; then
+		insinto /opt/google/chrome/ml_models/suggest/
+		# Install shared lib
+		insopts -m0755
+		newins "libsuggest-${ARCH}.so" "libsuggest.so"
+		insopts -m0644
+		# Install the model artifacts.
+		doins nwp.uint8.mmap.tflite
+		doins nwp.csym
+	fi
+}
diff --git a/dev-libs/libsuggest/libsuggest-0.0.9-r1.ebuild b/dev-libs/libsuggest/libsuggest-0.0.9-r1.ebuild
deleted file mode 120000
index 7865375..0000000
--- a/dev-libs/libsuggest/libsuggest-0.0.9-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-libsuggest-0.0.9.ebuild
\ No newline at end of file
diff --git a/dev-libs/libsuggest/libsuggest-0.0.9.ebuild b/dev-libs/libsuggest/libsuggest-0.0.9.ebuild
deleted file mode 100644
index 536549b..0000000
--- a/dev-libs/libsuggest/libsuggest-0.0.9.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Google text suggestions library for Chrome OS"
-HOMEPAGE="https://www.chromium.org/chromium-os"
-
-LICENSE="BSD-Google"
-SLOT="0"
-
-SRC_URI="gs://chromeos-localmirror/distfiles/libsuggest-amd64-${PV}.tar.gz"
-KEYWORDS="*"
-
-IUSE="ondevice_text_suggestions"
-
-S="${WORKDIR}"
-
-src_install() {
-	# Always install the header and proto files.
-	insinto /usr/include/chromeos/libsuggest/
-	doins text_suggester_interface.h
-	insinto /usr/include/chromeos/libsuggest/proto/
-	doins text_suggester_interface.proto
-
-	if use ondevice_text_suggestions; then
-		insinto /opt/google/chrome/ml_models/suggest/
-		# Install shared lib
-		insopts -m0755
-		newins "libsuggest-amd64.so" "libsuggest.so"
-		insopts -m0644
-		# Install the model artifacts.
-		doins nwp.uint8.mmap.tflite
-		doins nwp.csym
-	fi
-}
diff --git a/dev-libs/libtextclassifier/libtextclassifier-0.0.1-r117.ebuild b/dev-libs/libtextclassifier/libtextclassifier-0.0.1-r117.ebuild
deleted file mode 100644
index 41814b9..0000000
--- a/dev-libs/libtextclassifier/libtextclassifier-0.0.1-r117.ebuild
+++ /dev/null
@@ -1,188 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("f34cf3a06f7b17b7829185630d886a5d9d3f0e75" "01652c17e116baa8ebd7083e8cbc3dede513ac9e")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "4fa2be0611424952390eb570106ed5944e294b46")
-CROS_WORKON_LOCALNAME=("../platform2" "libtextclassifier")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "chromiumos/third_party/libtextclassifier")
-CROS_WORKON_EGIT_BRANCH=("main" "master")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/libtextclassifier")
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
-
-PLATFORM_SUBDIR="libtextclassifier"
-
-inherit cros-workon platform
-
-DESCRIPTION="Library for classifying text"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/libtextclassifier/"
-
-MODEL_URI=(
-	"gs://chromeos-localmirror/distfiles/mlservice-model-language_identification-20190924.smfb"
-	"gs://chromeos-localmirror/distfiles/mlservice-model-text_classifier_en-v711_vocab-v1.fb"
-)
-
-SRC_URI="${MODEL_URI[*]}"
-
-LICENSE="Apache-2.0"
-SLOT="0/${PVR}"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-	chromeos-base/chrome-icu:=
-	dev-libs/flatbuffers:=
-	sci-libs/tensorflow:=
-	sys-libs/zlib:=
-"
-
-# Because we are moving model files from ml to here, to avoid collisions we
-# need to block the older version of ml.
-RDEPEND="
-	${RDEPEND}
-	!<chromeos-base/ml-0.0.1-r369
-"
-
-DEPEND="
-	${RDEPEND}
-	dev-libs/libutf:=
-	dev-libs/marisa-aosp:=
-"
-
-src_install() {
-	# Installs the model files.
-	insinto /opt/google/chrome/ml_models
-	local model_files=( "${MODEL_URI[@]##*/}" )
-	local distfile_array=( "${model_files[@]/#/${DISTDIR}/}" )
-	doins "${distfile_array[@]}"
-
-	# Installs the library.
-	dolib.a "${OUT}/libtextclassifier.a"
-
-	# Installs the header files to /usr/include/libtextclassifier/.
-	local header_files=(
-		"annotator/annotator.h"
-		"annotator/cached-features.h"
-		"annotator/contact/contact-engine-dummy.h"
-		"annotator/contact/contact-engine.h"
-		"annotator/datetime/datetime-grounder.h"
-		"annotator/datetime/extractor.h"
-		"annotator/datetime/grammar-parser.h"
-		"annotator/datetime/parser.h"
-		"annotator/datetime/regex-parser.h"
-		"annotator/duration/duration.h"
-		"annotator/entity-data_generated.h"
-		"annotator/experimental/experimental-dummy.h"
-		"annotator/experimental/experimental.h"
-		"annotator/experimental/experimental_generated.h"
-		"annotator/feature-processor.h"
-		"annotator/grammar/grammar-annotator.h"
-		"annotator/installed_app/installed-app-engine-dummy.h"
-		"annotator/installed_app/installed-app-engine.h"
-		"annotator/knowledge/knowledge-engine-dummy.h"
-		"annotator/knowledge/knowledge-engine-types.h"
-		"annotator/knowledge/knowledge-engine.h"
-		"annotator/model-executor.h"
-		"annotator/model_generated.h"
-		"annotator/number/number.h"
-		"annotator/person_name/person-name-engine-dummy.h"
-		"annotator/person_name/person-name-engine.h"
-		"annotator/person_name/person_name_model_generated.h"
-		"annotator/pod_ner/pod-ner.h"
-		"annotator/pod_ner/pod-ner-dummy.h"
-		"annotator/strip-unpaired-brackets.h"
-		"annotator/translate/translate.h"
-		"annotator/types.h"
-		"annotator/vocab/vocab-annotator.h"
-		"annotator/vocab/vocab-annotator-dummy.h"
-		"annotator/vocab/vocab-annotator-impl.h"
-		"annotator/vocab/vocab-level-table.h"
-		"annotator/zlib-utils.h"
-		"lang_id/common/embedding-network-params.h"
-		"lang_id/common/fel/task-context.h"
-		"lang_id/common/lite_base/attributes.h"
-		"lang_id/common/lite_base/casts.h"
-		"lang_id/common/lite_base/compact-logging-levels.h"
-		"lang_id/common/lite_base/compact-logging.h"
-		"lang_id/common/lite_base/float16.h"
-		"lang_id/common/lite_base/integral-types.h"
-		"lang_id/common/lite_base/logging.h"
-		"lang_id/common/lite_base/macros.h"
-		"lang_id/common/lite_strings/stringpiece.h"
-		"lang_id/lang-id-wrapper.h"
-		"lang_id/lang-id.h"
-		"lang_id/model-provider.h"
-		"utils/base/arena.h"
-		"utils/base/config.h"
-		"utils/base/integral_types.h"
-		"utils/base/logging.h"
-		"utils/base/logging_levels.h"
-		"utils/base/macros.h"
-		"utils/base/port.h"
-		"utils/base/status.h"
-		"utils/base/statusor.h"
-		"utils/calendar/calendar-common.h"
-		"utils/calendar/calendar-icu.h"
-		"utils/calendar/calendar.h"
-		"utils/codepoint-range.h"
-		"utils/codepoint-range_generated.h"
-		"utils/container/bit-vector_generated.h"
-		"utils/container/bit-vector.h"
-		"utils/container/sorted-strings-table.h"
-		"utils/container/string-set.h"
-		"utils/flatbuffers/flatbuffers.h"
-		"utils/flatbuffers/flatbuffers_generated.h"
-		"utils/flatbuffers/mutable.h"
-		"utils/flatbuffers/reflection.h"
-		"utils/grammar/analyzer.h"
-		"utils/grammar/evaluated-derivation.h"
-		"utils/grammar/parsing/chart.h"
-		"utils/grammar/parsing/derivation.h"
-		"utils/grammar/parsing/lexer.h"
-		"utils/grammar/parsing/matcher.h"
-		"utils/grammar/parsing/parser.h"
-		"utils/grammar/parsing/parse-tree.h"
-		"utils/grammar/semantics/composer.h"
-		"utils/grammar/semantics/eval-context.h"
-		"utils/grammar/semantics/evaluator.h"
-		"utils/grammar/semantics/expression_generated.h"
-		"utils/grammar/semantics/value.h"
-		"utils/grammar/text-context.h"
-		"utils/grammar/rules-utils.h"
-		"utils/grammar/rules_generated.h"
-		"utils/grammar/types.h"
-		"utils/hash/farmhash.h"
-		"utils/i18n/language-tag_generated.h"
-		"utils/i18n/locale.h"
-		"utils/i18n/locale-list.h"
-		"utils/intents/intent-config_generated.h"
-		"utils/memory/mmap.h"
-		"utils/normalization_generated.h"
-		"utils/optional.h"
-		"utils/resources_generated.h"
-		"utils/strings/split.h"
-		"utils/strings/stringpiece.h"
-		"utils/tensor-view.h"
-		"utils/tflite-model-executor.h"
-		"utils/token-feature-extractor.h"
-		"utils/tokenizer.h"
-		"utils/tokenizer_generated.h"
-		"utils/utf8/unicodetext.h"
-		"utils/utf8/unilib-common.h"
-		"utils/utf8/unilib-icu.h"
-		"utils/utf8/unilib.h"
-		"utils/variant.h"
-		"utils/zlib/buffer_generated.h"
-		"utils/zlib/tclib_zlib.h"
-	)
-	local f
-	for f in "${header_files[@]}"; do
-		insinto "/usr/include/libtextclassifier/${f%/*}"
-		if [[ "${f}" == *_generated.h ]]; then
-			doins "${OUT}/gen/libtextclassifier/${f}"
-		else
-			doins "${S}/${f}"
-		fi
-	done
-}
diff --git a/dev-libs/libtextclassifier/libtextclassifier-0.0.1-r142.ebuild b/dev-libs/libtextclassifier/libtextclassifier-0.0.1-r142.ebuild
new file mode 100644
index 0000000..cdcd0a0
--- /dev/null
+++ b/dev-libs/libtextclassifier/libtextclassifier-0.0.1-r142.ebuild
@@ -0,0 +1,188 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "01652c17e116baa8ebd7083e8cbc3dede513ac9e")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "4fa2be0611424952390eb570106ed5944e294b46")
+CROS_WORKON_LOCALNAME=("../platform2" "libtextclassifier")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "chromiumos/third_party/libtextclassifier")
+CROS_WORKON_EGIT_BRANCH=("main" "master")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/libtextclassifier")
+CROS_WORKON_SUBTREE=("common-mk .gn" "")
+
+PLATFORM_SUBDIR="libtextclassifier"
+
+inherit cros-workon platform
+
+DESCRIPTION="Library for classifying text"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/libtextclassifier/"
+
+MODEL_URI=(
+	"gs://chromeos-localmirror/distfiles/mlservice-model-language_identification-20190924.smfb"
+	"gs://chromeos-localmirror/distfiles/mlservice-model-text_classifier_en-v711_vocab-v1.fb"
+)
+
+SRC_URI="${MODEL_URI[*]}"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PVR}"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+	chromeos-base/chrome-icu:=
+	dev-libs/flatbuffers:=
+	sci-libs/tensorflow:=
+	sys-libs/zlib:=
+"
+
+# Because we are moving model files from ml to here, to avoid collisions we
+# need to block the older version of ml.
+RDEPEND="
+	${RDEPEND}
+	!<chromeos-base/ml-0.0.1-r369
+"
+
+DEPEND="
+	${RDEPEND}
+	dev-libs/libutf:=
+	dev-libs/marisa-aosp:=
+"
+
+src_install() {
+	# Installs the model files.
+	insinto /opt/google/chrome/ml_models
+	local model_files=( "${MODEL_URI[@]##*/}" )
+	local distfile_array=( "${model_files[@]/#/${DISTDIR}/}" )
+	doins "${distfile_array[@]}"
+
+	# Installs the library.
+	dolib.a "${OUT}/libtextclassifier.a"
+
+	# Installs the header files to /usr/include/libtextclassifier/.
+	local header_files=(
+		"annotator/annotator.h"
+		"annotator/cached-features.h"
+		"annotator/contact/contact-engine-dummy.h"
+		"annotator/contact/contact-engine.h"
+		"annotator/datetime/datetime-grounder.h"
+		"annotator/datetime/extractor.h"
+		"annotator/datetime/grammar-parser.h"
+		"annotator/datetime/parser.h"
+		"annotator/datetime/regex-parser.h"
+		"annotator/duration/duration.h"
+		"annotator/entity-data_generated.h"
+		"annotator/experimental/experimental-dummy.h"
+		"annotator/experimental/experimental.h"
+		"annotator/experimental/experimental_generated.h"
+		"annotator/feature-processor.h"
+		"annotator/grammar/grammar-annotator.h"
+		"annotator/installed_app/installed-app-engine-dummy.h"
+		"annotator/installed_app/installed-app-engine.h"
+		"annotator/knowledge/knowledge-engine-dummy.h"
+		"annotator/knowledge/knowledge-engine-types.h"
+		"annotator/knowledge/knowledge-engine.h"
+		"annotator/model-executor.h"
+		"annotator/model_generated.h"
+		"annotator/number/number.h"
+		"annotator/person_name/person-name-engine-dummy.h"
+		"annotator/person_name/person-name-engine.h"
+		"annotator/person_name/person_name_model_generated.h"
+		"annotator/pod_ner/pod-ner.h"
+		"annotator/pod_ner/pod-ner-dummy.h"
+		"annotator/strip-unpaired-brackets.h"
+		"annotator/translate/translate.h"
+		"annotator/types.h"
+		"annotator/vocab/vocab-annotator.h"
+		"annotator/vocab/vocab-annotator-dummy.h"
+		"annotator/vocab/vocab-annotator-impl.h"
+		"annotator/vocab/vocab-level-table.h"
+		"annotator/zlib-utils.h"
+		"lang_id/common/embedding-network-params.h"
+		"lang_id/common/fel/task-context.h"
+		"lang_id/common/lite_base/attributes.h"
+		"lang_id/common/lite_base/casts.h"
+		"lang_id/common/lite_base/compact-logging-levels.h"
+		"lang_id/common/lite_base/compact-logging.h"
+		"lang_id/common/lite_base/float16.h"
+		"lang_id/common/lite_base/integral-types.h"
+		"lang_id/common/lite_base/logging.h"
+		"lang_id/common/lite_base/macros.h"
+		"lang_id/common/lite_strings/stringpiece.h"
+		"lang_id/lang-id-wrapper.h"
+		"lang_id/lang-id.h"
+		"lang_id/model-provider.h"
+		"utils/base/arena.h"
+		"utils/base/config.h"
+		"utils/base/integral_types.h"
+		"utils/base/logging.h"
+		"utils/base/logging_levels.h"
+		"utils/base/macros.h"
+		"utils/base/port.h"
+		"utils/base/status.h"
+		"utils/base/statusor.h"
+		"utils/calendar/calendar-common.h"
+		"utils/calendar/calendar-icu.h"
+		"utils/calendar/calendar.h"
+		"utils/codepoint-range.h"
+		"utils/codepoint-range_generated.h"
+		"utils/container/bit-vector_generated.h"
+		"utils/container/bit-vector.h"
+		"utils/container/sorted-strings-table.h"
+		"utils/container/string-set.h"
+		"utils/flatbuffers/flatbuffers.h"
+		"utils/flatbuffers/flatbuffers_generated.h"
+		"utils/flatbuffers/mutable.h"
+		"utils/flatbuffers/reflection.h"
+		"utils/grammar/analyzer.h"
+		"utils/grammar/evaluated-derivation.h"
+		"utils/grammar/parsing/chart.h"
+		"utils/grammar/parsing/derivation.h"
+		"utils/grammar/parsing/lexer.h"
+		"utils/grammar/parsing/matcher.h"
+		"utils/grammar/parsing/parser.h"
+		"utils/grammar/parsing/parse-tree.h"
+		"utils/grammar/semantics/composer.h"
+		"utils/grammar/semantics/eval-context.h"
+		"utils/grammar/semantics/evaluator.h"
+		"utils/grammar/semantics/expression_generated.h"
+		"utils/grammar/semantics/value.h"
+		"utils/grammar/text-context.h"
+		"utils/grammar/rules-utils.h"
+		"utils/grammar/rules_generated.h"
+		"utils/grammar/types.h"
+		"utils/hash/farmhash.h"
+		"utils/i18n/language-tag_generated.h"
+		"utils/i18n/locale.h"
+		"utils/i18n/locale-list.h"
+		"utils/intents/intent-config_generated.h"
+		"utils/memory/mmap.h"
+		"utils/normalization_generated.h"
+		"utils/optional.h"
+		"utils/resources_generated.h"
+		"utils/strings/split.h"
+		"utils/strings/stringpiece.h"
+		"utils/tensor-view.h"
+		"utils/tflite-model-executor.h"
+		"utils/token-feature-extractor.h"
+		"utils/tokenizer.h"
+		"utils/tokenizer_generated.h"
+		"utils/utf8/unicodetext.h"
+		"utils/utf8/unilib-common.h"
+		"utils/utf8/unilib-icu.h"
+		"utils/utf8/unilib.h"
+		"utils/variant.h"
+		"utils/zlib/buffer_generated.h"
+		"utils/zlib/tclib_zlib.h"
+	)
+	local f
+	for f in "${header_files[@]}"; do
+		insinto "/usr/include/libtextclassifier/${f%/*}"
+		if [[ "${f}" == *_generated.h ]]; then
+			doins "${OUT}/gen/libtextclassifier/${f}"
+		else
+			doins "${S}/${f}"
+		fi
+	done
+}
diff --git a/dev-libs/libutf/libutf-0.0.1-r69.ebuild b/dev-libs/libutf/libutf-0.0.1-r69.ebuild
deleted file mode 100644
index 0c5e36c..0000000
--- a/dev-libs/libutf/libutf-0.0.1-r69.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("f34cf3a06f7b17b7829185630d886a5d9d3f0e75" "c17bb435be940edf1aff81469215bb6a071f3c38")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "fc022abae9d52285526cb0dda697e2bea18696ca")
-CROS_WORKON_LOCALNAME=("../platform2" "../aosp/external/libutf")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/external/libutf")
-CROS_WORKON_EGIT_BRANCH=("main" "master")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/libutf")
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
-
-PLATFORM_SUBDIR="libutf"
-
-inherit cros-workon platform
-
-DESCRIPTION="A UTF-8 library based on the AOSP version of libutf."
-HOMEPAGE="https://chromium.googlesource.com/aosp/platform/external/libutf/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND=""
-DEPEND=""
-
-src_install() {
-	insinto "/usr/include/android/"
-	doins "${S}/utf.h"
-
-	dolib.a "${OUT}/libutf.a"
-}
diff --git a/dev-libs/libutf/libutf-0.0.1-r94.ebuild b/dev-libs/libutf/libutf-0.0.1-r94.ebuild
new file mode 100644
index 0000000..597baaf
--- /dev/null
+++ b/dev-libs/libutf/libutf-0.0.1-r94.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "c17bb435be940edf1aff81469215bb6a071f3c38")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "fc022abae9d52285526cb0dda697e2bea18696ca")
+CROS_WORKON_LOCALNAME=("../platform2" "../aosp/external/libutf")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/external/libutf")
+CROS_WORKON_EGIT_BRANCH=("main" "master")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/libutf")
+CROS_WORKON_SUBTREE=("common-mk .gn" "")
+
+PLATFORM_SUBDIR="libutf"
+
+inherit cros-workon platform
+
+DESCRIPTION="A UTF-8 library based on the AOSP version of libutf."
+HOMEPAGE="https://chromium.googlesource.com/aosp/platform/external/libutf/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND=""
+DEPEND=""
+
+src_install() {
+	insinto "/usr/include/android/"
+	doins "${S}/utf.h"
+
+	dolib.a "${OUT}/libutf.a"
+}
diff --git a/dev-libs/marisa-aosp/marisa-aosp-0.0.1-r47.ebuild b/dev-libs/marisa-aosp/marisa-aosp-0.0.1-r47.ebuild
deleted file mode 100644
index 14ccc56..0000000
--- a/dev-libs/marisa-aosp/marisa-aosp-0.0.1-r47.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-DESCRIPTION="MARISA: Matching Algorithm with Recursively Implemented StorAge (AOSP fork)"
-HOMEPAGE="https://android.googlesource.com/platform/external/marisa-trie/"
-
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_DESTDIR="${S}/platform2"
-CROS_WORKON_SUBTREE="common-mk .gn"
-
-PLATFORM_SUBDIR="marisa-trie"
-
-EGIT_REPO_URI="https://android.googlesource.com/platform/external/marisa-trie/"
-EGIT_CHECKOUT_DIR="${S}/platform2/marisa-trie/"
-
-if [[ ${PV} != *9999* ]]; then
-	EGIT_COMMIT="54417d28a5273a8d759b28882a0c96335e192756"
-fi
-
-inherit cros-workon git-r3 platform
-
-LICENSE="BSD-2 LGPL-2.1 BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-IUSE=""
-REQUIRED_USE=""
-
-# To warn future developers that this is the AOSP fork of marisa.
-POSTFIX="-aosp"
-
-src_unpack() {
-	platform_src_unpack
-	git-r3_src_unpack
-}
-
-src_prepare() {
-	default
-	cp "${FILESDIR}/BUILD.gn" "${S}"
-}
-
-src_install() {
-	mv "${OUT}/libmarisa.a" "${OUT}/libmarisa${POSTFIX}.a"
-	dolib.a "${OUT}/libmarisa${POSTFIX}.a"
-
-	# Install the header files to /usr/include/marisa-trie/.
-	insinto "/usr/include/marisa${POSTFIX}"
-	doins "${S}/include/marisa.h"
-	insinto "/usr/include/marisa${POSTFIX}/marisa"
-	local f
-	for f in \
-		"include/marisa/agent.h" \
-		"include/marisa/base.h" \
-		"include/marisa/exception.h" \
-		"include/marisa/iostream.h" \
-		"include/marisa/key.h" \
-		"include/marisa/keyset.h" \
-		"include/marisa/query.h" \
-		"include/marisa/scoped-array.h" \
-		"include/marisa/scoped-ptr.h" \
-		"include/marisa/stdio.h" \
-		"include/marisa/trie.h"; do
-		doins "${S}/${f}"
-	done
-}
diff --git a/dev-libs/marisa-aosp/marisa-aosp-0.0.1-r72.ebuild b/dev-libs/marisa-aosp/marisa-aosp-0.0.1-r72.ebuild
new file mode 100644
index 0000000..60a9b1c
--- /dev/null
+++ b/dev-libs/marisa-aosp/marisa-aosp-0.0.1-r72.ebuild
@@ -0,0 +1,70 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+DESCRIPTION="MARISA: Matching Algorithm with Recursively Implemented StorAge (AOSP fork)"
+HOMEPAGE="https://android.googlesource.com/platform/external/marisa-trie/"
+
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_DESTDIR="${S}/platform2"
+CROS_WORKON_SUBTREE="common-mk .gn"
+
+PLATFORM_SUBDIR="marisa-trie"
+
+EGIT_REPO_URI="https://android.googlesource.com/platform/external/marisa-trie/"
+EGIT_CHECKOUT_DIR="${S}/platform2/marisa-trie/"
+
+if [[ ${PV} != *9999* ]]; then
+	EGIT_COMMIT="54417d28a5273a8d759b28882a0c96335e192756"
+fi
+
+inherit cros-workon git-r3 platform
+
+LICENSE="BSD-2 LGPL-2.1 BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+IUSE=""
+REQUIRED_USE=""
+
+# To warn future developers that this is the AOSP fork of marisa.
+POSTFIX="-aosp"
+
+src_unpack() {
+	platform_src_unpack
+	git-r3_src_unpack
+}
+
+src_prepare() {
+	default
+	cp "${FILESDIR}/BUILD.gn" "${S}"
+}
+
+src_install() {
+	mv "${OUT}/libmarisa.a" "${OUT}/libmarisa${POSTFIX}.a"
+	dolib.a "${OUT}/libmarisa${POSTFIX}.a"
+
+	# Install the header files to /usr/include/marisa-trie/.
+	insinto "/usr/include/marisa${POSTFIX}"
+	doins "${S}/include/marisa.h"
+	insinto "/usr/include/marisa${POSTFIX}/marisa"
+	local f
+	for f in \
+		"include/marisa/agent.h" \
+		"include/marisa/base.h" \
+		"include/marisa/exception.h" \
+		"include/marisa/iostream.h" \
+		"include/marisa/key.h" \
+		"include/marisa/keyset.h" \
+		"include/marisa/query.h" \
+		"include/marisa/scoped-array.h" \
+		"include/marisa/scoped-ptr.h" \
+		"include/marisa/stdio.h" \
+		"include/marisa/trie.h"; do
+		doins "${S}/${f}"
+	done
+}
diff --git a/dev-libs/modp_b64/modp_b64-0.0.1-r129.ebuild b/dev-libs/modp_b64/modp_b64-0.0.1-r129.ebuild
deleted file mode 100644
index 6028fb18..0000000
--- a/dev-libs/modp_b64/modp_b64-0.0.1-r129.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-CROS_WORKON_COMMIT=("f34cf3a06f7b17b7829185630d886a5d9d3f0e75" "269b6fb8401617b85e2dff7ae8a7b0f97613e2cd")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "9473949bc842cc166ac244567638b94150a97865")
-inherit cros-constants
-
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/modp_b64")
-CROS_WORKON_LOCALNAME=("../platform2" "../third_party/modp_b64")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/external/modp_b64")
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
-
-PLATFORM_SUBDIR="modp_b64"
-
-WANT_LIBCHROME=no
-
-inherit cros-fuzzer cros-sanitizers cros-workon platform
-
-DESCRIPTION="Base64 encoder/decoder library."
-HOMEPAGE="https://github.com/client9/stringencoders"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="*"
-IUSE="fuzzer"
-
-src_install() {
-	dolib.a "${OUT}"/libmodp_b64.a
-
-	insinto /usr/include
-	doins -r modp_b64
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins "${OUT}/obj/modp_b64/libmodp_b64.pc"
-
-	fuzzer_install "${S}/OWNERS.fuzzer" "${OUT}"/modp_b64_decode_fuzzer
-	fuzzer_install "${S}/OWNERS.fuzzer" "${OUT}"/modp_b64_encode_fuzzer
-}
diff --git a/dev-libs/modp_b64/modp_b64-0.0.1-r156.ebuild b/dev-libs/modp_b64/modp_b64-0.0.1-r156.ebuild
new file mode 100644
index 0000000..3b50f5a
--- /dev/null
+++ b/dev-libs/modp_b64/modp_b64-0.0.1-r156.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "269b6fb8401617b85e2dff7ae8a7b0f97613e2cd")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "9473949bc842cc166ac244567638b94150a97865")
+inherit cros-constants
+
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/modp_b64")
+CROS_WORKON_LOCALNAME=("../platform2" "../third_party/modp_b64")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/external/modp_b64")
+CROS_WORKON_SUBTREE=("common-mk .gn" "")
+CROS_WORKON_EGIT_BRANCH="master"
+
+PLATFORM_SUBDIR="modp_b64"
+
+WANT_LIBCHROME=no
+
+inherit cros-fuzzer cros-sanitizers cros-workon platform
+
+DESCRIPTION="Base64 encoder/decoder library."
+HOMEPAGE="https://github.com/client9/stringencoders"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="*"
+IUSE="fuzzer"
+
+src_install() {
+	dolib.a "${OUT}"/libmodp_b64.a
+
+	insinto /usr/include
+	doins -r modp_b64
+
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins "${OUT}/obj/modp_b64/libmodp_b64.pc"
+
+	local fuzzer_component_id="1034879"
+	fuzzer_install "${S}/OWNERS.fuzzer" "${OUT}"/modp_b64_decode_fuzzer \
+		--comp "${fuzzer_component_id}"
+	fuzzer_install "${S}/OWNERS.fuzzer" "${OUT}"/modp_b64_encode_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
diff --git a/dev-libs/modp_b64/modp_b64-9999.ebuild b/dev-libs/modp_b64/modp_b64-9999.ebuild
index 73e17fce..f6ac579 100644
--- a/dev-libs/modp_b64/modp_b64-9999.ebuild
+++ b/dev-libs/modp_b64/modp_b64-9999.ebuild
@@ -9,6 +9,7 @@
 CROS_WORKON_LOCALNAME=("../platform2" "../third_party/modp_b64")
 CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/external/modp_b64")
 CROS_WORKON_SUBTREE=("common-mk .gn" "")
+CROS_WORKON_EGIT_BRANCH="master"
 
 PLATFORM_SUBDIR="modp_b64"
 
@@ -33,6 +34,9 @@
 	insinto "/usr/$(get_libdir)/pkgconfig"
 	doins "${OUT}/obj/modp_b64/libmodp_b64.pc"
 
-	fuzzer_install "${S}/OWNERS.fuzzer" "${OUT}"/modp_b64_decode_fuzzer
-	fuzzer_install "${S}/OWNERS.fuzzer" "${OUT}"/modp_b64_encode_fuzzer
+	local fuzzer_component_id="1034879"
+	fuzzer_install "${S}/OWNERS.fuzzer" "${OUT}"/modp_b64_decode_fuzzer \
+		--comp "${fuzzer_component_id}"
+	fuzzer_install "${S}/OWNERS.fuzzer" "${OUT}"/modp_b64_encode_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
diff --git a/dev-libs/protobuf-c/Manifest b/dev-libs/protobuf-c/Manifest
index 0dd2386..84f6a69 100644
--- a/dev-libs/protobuf-c/Manifest
+++ b/dev-libs/protobuf-c/Manifest
@@ -1 +1 @@
-DIST protobuf-c-1.3.1.tar.gz 498779 BLAKE2B f9ecb2cccd8e01a2ab5bd797883f245db418a76ac73ba3e756e997e944637732d45b3fca2a45d3caf4cd89f35259180fa05e64b8b02b63537005420f2233ba37 SHA512 b32920130b4be5e8a8373c2ca37ffe7eb263accf163d93e25a9eb4b6336ec40b05dda2458fe8f0c3cbcf6e0e08e9541fdff004d696f30a5d135b7a3bdca8b2c3
+DIST protobuf-c-1.3.3.tar.gz 500505 BLAKE2B 6f00eac847f5287cdea5afaea5be05d660eda10b30a14bbab89331ef134f93b8a77d3f6546cab246447494b0283b32218f794c56a7d081906c49668631b14505 SHA512 85308348929487e3a89158c6078dab39cee0b39a0611a4d5ba73d20520e41d96915e42a0d6060ebd3eb7d922c82444f5ca000ea4f8791b37734485cbb7e283b1
diff --git a/dev-libs/protobuf-c/protobuf-c-1.3.1.ebuild b/dev-libs/protobuf-c/protobuf-c-1.3.1.ebuild
deleted file mode 100644
index 8204149..0000000
--- a/dev-libs/protobuf-c/protobuf-c-1.3.1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools multilib-minimal
-
-MY_PV="${PV/_/-}"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="Protocol Buffers implementation in C"
-HOMEPAGE="https://github.com/protobuf-c/protobuf-c"
-SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${MY_PV}/${MY_P}.tar.gz"
-
-LICENSE="BSD-2"
-# Subslot == SONAME version
-SLOT="0/1.0.0"
-KEYWORDS="*"
-IUSE="static-libs test"
-
-RDEPEND=">=dev-libs/protobuf-2.6.0:0=[${MULTILIB_USEDEP}]"
-DEPEND="${RDEPEND}
-	virtual/pkgconfig[${MULTILIB_USEDEP}]"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
-	default
-	if ! use test; then
-		eapply "${FILESDIR}"/${PN}-1.3.0-no-build-tests.patch
-	fi
-
-	eautoreconf
-}
-
-multilib_src_configure() {
-	local myeconfargs=(
-		$(use_enable static-libs static)
-	)
-
-	if tc-is-cross-compiler; then
-		# In ChromeOS cross-compiled dev-libs/protobuf does not have libprotoc.
-		# Disable protoc here too.
-		myeconfargs+=( --disable-protoc )
-	fi
-
-	ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-}
diff --git a/dev-libs/protobuf-c/protobuf-c-1.3.3.ebuild b/dev-libs/protobuf-c/protobuf-c-1.3.3.ebuild
new file mode 100644
index 0000000..39af633
--- /dev/null
+++ b/dev-libs/protobuf-c/protobuf-c-1.3.3.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools multilib-minimal
+
+MY_PV="${PV/_/-}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="Protocol Buffers implementation in C"
+HOMEPAGE="https://github.com/protobuf-c/protobuf-c"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${MY_PV}/${MY_P}.tar.gz"
+
+LICENSE="BSD-2"
+# Subslot == SONAME version
+SLOT="0/1.0.0"
+KEYWORDS="*"
+IUSE="static-libs test"
+
+RDEPEND=">=dev-libs/protobuf-3:0=[${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}
+	virtual/pkgconfig[${MULTILIB_USEDEP}]"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+	default
+	if ! use test; then
+		eapply "${FILESDIR}"/${PN}-1.3.0-no-build-tests.patch
+	fi
+
+	eautoreconf
+}
+
+multilib_src_configure() {
+	local myeconfargs=(
+		$(use_enable static-libs static)
+	)
+
+	if tc-is-cross-compiler; then
+		# In ChromeOS cross-compiled dev-libs/protobuf does not have libprotoc.
+		# Disable protoc here too.
+		myeconfargs+=( --disable-protoc )
+	fi
+
+	ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
diff --git a/dev-python/pygobject/Manifest b/dev-python/pygobject/Manifest
index 8aeb6e3..c36dda5 100644
--- a/dev-python/pygobject/Manifest
+++ b/dev-python/pygobject/Manifest
@@ -1 +1,2 @@
-DIST pygobject-2.18.0.tar.bz2 639205 RMD160 db454107949b0e797c6c151aa426368ef0f59317 SHA1 f800eda7978fe9813600cfdda973da15c3178bb0 SHA256 b11b840ae31e6e644986806ee3400f4528b803d07b6cee26add45e0f2e5e622b
+DIST pygobject-3.34.0.tar.xz 552268 BLAKE2B a9cbeb644e0aa1b23067b591fe5c6299741395656631d39782a8c183a5d3a8e5e7f1a81acdefee186b7cc2bc34dda9271468b1828d5b9613ddc1256e24f1ecb8 SHA512 782195d22e564b88dea8d43469f0111f398b44b51a63df2fe7d07650af94d5cd037f322a5d7e405338823be3419fcdbf0113fe50b220ab1cfd07d4d01dbc4766
+DIST pygobject-3.36.1.tar.xz 556568 BLAKE2B cd38aec8e71ff230926327e77867d07ae0fd5549b71619301bb3be01821ea93e557ecf335ea238292176981a864b269eaa2a86da47e8fb320f187f54caf24dc4 SHA512 5e00dcd03dfe4f92acbf827c13c164b6b9740b2a8cef3b2dce70f96a2156fee2411c84dc669f12b910f4a93daa03ba845282832e2b09d8c887102d43764a345f
diff --git a/dev-python/pygobject/OWNERS b/dev-python/pygobject/OWNERS
new file mode 100644
index 0000000..0224ce5
--- /dev/null
+++ b/dev-python/pygobject/OWNERS
@@ -0,0 +1,2 @@
+cjmcdonald@google.com
+dbeckett@google.com
diff --git a/dev-python/pygobject/files/pygobject-2.15.4-fix-codegen-location.patch b/dev-python/pygobject/files/pygobject-2.15.4-fix-codegen-location.patch
deleted file mode 100644
index 8882cd0..0000000
--- a/dev-python/pygobject/files/pygobject-2.15.4-fix-codegen-location.patch
+++ /dev/null
@@ -1,50 +0,0 @@
----
- Fix FHS compliance of codegen
-
- codegen/Makefile.am          |    2 +-
- codegen/pygtk-codegen-2.0.in |    3 ++-
- pygtk-2.0.pc.in              |    2 +-
- 3 files changed, 4 insertions(+), 3 deletions(-)
-
---- a/codegen/Makefile.am	2007-11-01 12:20:22.000000000 -0400
-+++ b/codegen/Makefile.am	2008-05-28 22:21:04.000000000 -0400
-@@ -2,7 +2,7 @@ PLATFORM_VERSION = 2.0
- 
- bin_SCRIPTS = pygobject-codegen-$(PLATFORM_VERSION)
- 
--codegendir = $(pkgdatadir)/$(PLATFORM_VERSION)/codegen
-+codegendir = $(pyexecdir)/gtk-2.0/codegen
- 
- codegen_PYTHON = \
- 	__init__.py \
---- a/codegen/pygobject-codegen-2.0.in	2007-11-01 12:20:22.000000000 -0400
-+++ b/codegen/pygobject-codegen-2.0.in	2008-05-28 22:24:38.000000000 -0400
-@@ -1,9 +1,10 @@
- #!/bin/sh
- 
- prefix=@prefix@
-+exec_prefix=@exec_prefix@
- datarootdir=@datarootdir@
- datadir=@datadir@
--codegendir=${datadir}/pygobject/2.0/codegen
-+codegendir=@pyexecdir@/gtk-2.0/codegen
- 
- PYTHONPATH=$codegendir
- export PYTHONPATH
---- a/pygobject-2.0.pc.in	2007-11-01 12:20:22.000000000 -0400
-+++ b/pygobject-2.0.pc.in	2008-05-28 22:21:04.000000000 -0400
-@@ -4,6 +4,7 @@
- datarootdir=@datarootdir@
- datadir=@datadir@
- libdir=@libdir@
-+pyexecdir=@pyexecdir@
- 
- # you can use the --variable=pygtkincludedir argument to
- # pkg-config to get this value.  You might want to use this to
-@@ -12,5 +12,5 @@
- defsdir=${datadir}/pygobject/2.0/defs
--codegendir=${datadir}/pygobject/2.0/codegen
-+codegendir=${pyexecdir}/gtk-2.0/codegen
- 
- Name: PyGObject
- Description: Python bindings for GObject
diff --git a/dev-python/pygobject/files/pygobject-2.18.0-automake111.patch b/dev-python/pygobject/files/pygobject-2.18.0-automake111.patch
deleted file mode 100644
index 9e57bb7..0000000
--- a/dev-python/pygobject/files/pygobject-2.18.0-automake111.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-# Fix build failure due to automake 1.11.
-# defsgen.py was installed twice
-# Gentoo: https://bugs.gentoo.org/show_bug.cgi?id=279813
---- a/codegen/Makefile.am
-+++ b/codegen/Makefile.am
-@@ -18,7 +18,6 @@
- 	docextract_to_xml.py \
- 	docgen.py \
- 	h2def.py \
--	defsgen.py \
- 	createdefs.py \
- 	mergedefs.py \
- 	missingdefs.py \
diff --git a/dev-python/pygobject/files/pygobject-2.18.0-cross-generate-constants.patch b/dev-python/pygobject/files/pygobject-2.18.0-cross-generate-constants.patch
deleted file mode 100644
index a84dd95..0000000
--- a/dev-python/pygobject/files/pygobject-2.18.0-cross-generate-constants.patch
+++ /dev/null
@@ -1,36 +0,0 @@
---- a/configure.ac
-+++ b/configure.ac
-@@ -214,6 +214,20 @@
- 
- fi
- 
-+dnl Get the host compiler if cross-compiling
-+dnl
-+AM_CONDITIONAL(CROSS_COMPILING, [ test $cross_compiling = yes ])
-+AC_MSG_CHECKING([for CC_FOR_BUILD])
-+if test "x${CC_FOR_BUILD+set}" != "xset" ; then
-+  if test "x$cross_compiling" = "xyes" ; then
-+    CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
-+  else
-+    CC_FOR_BUILD=${CC}
-+  fi
-+fi
-+AC_MSG_RESULT([$CC_FOR_BUILD])
-+AC_SUBST(CC_FOR_BUILD)
-+
- AC_CONFIG_FILES(
-   Makefile
-   pygobject-2.0.pc
---- a/gobject/Makefile.am
-+++ b/gobject/Makefile.am
-@@ -71,6 +71,13 @@
- if PLATFORM_WIN32
- _gobject_la_CFLAGS += -DPLATFORM_WIN32
- endif
-+
-+# Strip all the noise (system includes/etc...) before the main func
-+generate-constants$(EXEEXT): generate-constants.c
-+	printf '#include <stdio.h>\nint main()' > generate-constants.pre.c
-+	$(CC) $(generate_constants_CFLAGS) -E generate-constants.c | sed -e '1,/^int main/d' >> generate-constants.pre.c
-+	$(CC_FOR_BUILD) -o $@ generate-constants.pre.c
-+	rm -f generate-constants.pre.c
diff --git a/dev-python/pygobject/files/pygobject-2.18.0-make_check.patch b/dev-python/pygobject/files/pygobject-2.18.0-make_check.patch
deleted file mode 100644
index f351092..0000000
--- a/dev-python/pygobject/files/pygobject-2.18.0-make_check.patch
+++ /dev/null
@@ -1,57 +0,0 @@
---- tests/Makefile.am
-+++ tests/Makefile.am
-@@ -11,7 +11,7 @@
- 	test-thread.h \
- 	test-unknown.h
- 
--noinst_LTLIBRARIES = testhelper.la
-+check_LTLIBRARIES = testhelper.la
- linked_LIBS = testhelper.la
- 
- testhelper_la_LDFLAGS = -module -avoid-version
-@@ -47,6 +47,7 @@
- 	   cp $(top_srcdir)/gobject/*.py $(top_builddir)/gobject; \
- 	   cp $(top_srcdir)/gio/*.py $(top_builddir)/gio; \
- 	fi
-+	$(LN_S) .libs/testhelper.so testhelper.so
- 	@$(PYTHON) $(srcdir)/runtests.py $(top_builddir) $(top_srcdir)
- 	@if test "$(top_builddir)" != "$(top_srcdir)"; then \
- 	   rm -f $(top_builddir)/glib/*.py; \
-@@ -58,8 +59,5 @@
- 	@rm -fr $(top_builddir)/gio/*.pyc
- 
- 
--all: $(LTLIBRARIES:.la=.so)
- clean-local:
--	rm -f $(LTLIBRARIES:.la=.so)
--.la.so:
--	$(LN_S) .libs/$@ $@ || true
-+	rm -f .libs/testhelper.so
---- tests/runtests.py
-+++ tests/runtests.py
-@@ -6,6 +6,9 @@
- 
- import common
- 
-+# Some tests fail with translated messages.
-+os.environ["LC_ALL"] = "C"
-+
- program = None
- if len(sys.argv) == 3:
-     buildDir = sys.argv[1]
---- tests/test_gio.py
-+++ tests/test_gio.py
-@@ -386,9 +386,10 @@
- 
-     def testQueryWritableNamespaces(self):
-         infolist = self.file.query_writable_namespaces()
--        for info in infolist:
--            if info.name == "xattr":
--                self.assertEqual(info.type, gio.FILE_ATTRIBUTE_TYPE_STRING)
-+        if infolist:
-+            for info in infolist:
-+                if info.name == "xattr":
-+                    self.assertEqual(info.type, gio.FILE_ATTRIBUTE_TYPE_STRING)
- 
-     def testSetAttribute(self):
-         self._f.write("testing attributes")
diff --git a/dev-python/pygobject/metadata.xml b/dev-python/pygobject/metadata.xml
index 9b1bc26..a958cbe 100644
--- a/dev-python/pygobject/metadata.xml
+++ b/dev-python/pygobject/metadata.xml
@@ -1,6 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-<herd>gnome</herd>
-<herd>python</herd>
+	<maintainer type="project">
+		<email>gnome@gentoo.org</email>
+		<name>Gentoo GNOME Desktop</name>
+	</maintainer>
+	<maintainer type="project">
+		<email>python@gentoo.org</email>
+		<name>Python</name>
+	</maintainer>
+	<longdescription lang="en">
+		GObject is a object system used by GTK+, GStreamer and other libraries.
+		PyGObject provides a convenient wrapper for use in Python programs when
+		accessing GObject libraries. Like the GObject library itself PyGObject
+		is licensed under the GNU LGPL, so is suitable for use in both free
+		software and proprietary applications. It is already in use in many
+		applications ranging from small single purpose scripts up to large full
+		featured applications. PyGObject now dynamically accesses any GObject
+		libraries that uses GObject Introspection. It replaces the need for
+		separate modules such as PyGTK, GIO and python-gnome to build a full
+		GNOME 3.0 application. Once new functionality is added to gobject
+		library it is instantly available as a Python API without the need for
+		intermediate Python glue.
+	</longdescription>
 </pkgmetadata>
diff --git a/dev-python/pygobject/pygobject-2.18.0-r1.ebuild b/dev-python/pygobject/pygobject-2.18.0-r1.ebuild
deleted file mode 100644
index 3c5566f..0000000
--- a/dev-python/pygobject/pygobject-2.18.0-r1.ebuild
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-2.18.0.ebuild,v 1.10 2009/08/19 16:30:10 jer Exp $
-
-EAPI="5"
-GCONF_DEBUG="no"
-GNOME2_LA_PUNT="yes"
-GNOME_TARBALL_SUFFIX="bz2"
-PYTHON_COMPAT=( python2_7 )
-
-inherit autotools gnome2 python-r1 virtualx toolchain-funcs
-
-DESCRIPTION="GLib's GObject library bindings for Python"
-HOMEPAGE="http://www.pygtk.org/"
-
-LICENSE="LGPL-2.1"
-SLOT="2"
-KEYWORDS="*"
-IUSE="cairo doc examples libffi test +threads"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-COMMON_DEPEND=">=dev-libs/glib-2.24.0:2
-	libffi? ( virtual/libffi )
-	${PYTHON_DEPS}"
-DEPEND="${COMMON_DEPEND}
-	doc? (
-		dev-libs/libxslt
-		>=app-text/docbook-xsl-stylesheets-1.70.1 )
-	test? (
-		media-fonts/font-cursor-misc
-		media-fonts/font-misc-misc )
-	>=dev-util/pkgconfig-0.12"
-RDEPEND="${COMMON_DEPEND}
-	!<dev-python/pygtk-2.13"
-
-src_prepare() {
-	gnome2_src_prepare
-
-	# Fix FHS compliance, see upstream bug #535524
-	epatch "${FILESDIR}/${PN}-2.15.4-fix-codegen-location.patch"
-
-	# Do not build tests if unneeded, bug #226345
-	epatch "${FILESDIR}"/${P}-make_check.patch
-
-	# Do not install files twice, bug #279813
-	epatch "${FILESDIR}/${P}-automake111.patch"
-
-	# For cross-compilation we need to compile the constant
-	# generation for the HOST architecture while using the
-	# target headers.
-	if tc-is-cross-compiler ; then
-		epatch "${FILESDIR}/${P}-cross-generate-constants.patch"
-	fi
-
-	# Workaround upstream Gentoo bug #232820
-	find "${S}" -name .elibtoolized -delete
-	eautoreconf
-
-	python_copy_sources
-}
-
-src_configure() {
-	# Use "${CBUILD}-gcc" for host builds, crbug.com/1093668
-	python_foreach_impl run_in_build_dir \
-		gnome2_src_configure \
-			CC_FOR_BUILD="${CBUILD}-gcc" \
-			$(use_enable cairo) \
-			$(use_enable threads thread)
-}
-
-src_compile() {
-	python_foreach_impl run_in_build_dir gnome2_src_compile
-}
-
-src_install() {
-	DOCS="AUTHORS ChangeLog* NEWS README"
-
-	python_foreach_impl run_in_build_dir gnome2_src_install
-
-	sed "s:/usr/bin/python:/usr/bin/python2:" \
-		-i "${ED}"/usr/bin/pygobject-codegen-2.0 \
-		|| die "Fix usage of python interpreter"
-
-	if use examples; then
-		insinto /usr/share/doc/${P}
-		doins -r examples
-	fi
-}
diff --git a/dev-python/pygobject/pygobject-2.18.0-r10.ebuild b/dev-python/pygobject/pygobject-2.18.0-r10.ebuild
deleted file mode 120000
index fdc356b..0000000
--- a/dev-python/pygobject/pygobject-2.18.0-r10.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-pygobject-2.18.0-r1.ebuild
\ No newline at end of file
diff --git a/dev-python/pygobject/pygobject-3.36.1-r1.ebuild b/dev-python/pygobject/pygobject-3.36.1-r1.ebuild
new file mode 120000
index 0000000..aebc0b8
--- /dev/null
+++ b/dev-python/pygobject/pygobject-3.36.1-r1.ebuild
@@ -0,0 +1 @@
+pygobject-3.36.1.ebuild
\ No newline at end of file
diff --git a/dev-python/pygobject/pygobject-3.36.1.ebuild b/dev-python/pygobject/pygobject-3.36.1.ebuild
new file mode 100644
index 0000000..6c872f3
--- /dev/null
+++ b/dev-python/pygobject/pygobject-3.36.1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 python3_{6..9} )
+
+inherit gnome.org meson python-r1 virtualx xdg
+
+DESCRIPTION="Python bindings for GObject Introspection"
+HOMEPAGE="https://pygobject.readthedocs.io/"
+
+LICENSE="LGPL-2.1+"
+SLOT="3"
+KEYWORDS="*"
+IUSE="+cairo examples test"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}
+	>=dev-libs/glib-2.48:2
+	>=dev-libs/gobject-introspection-1.54:=
+	dev-libs/libffi:=
+	cairo? (
+		>=dev-python/pycairo-1.11.1[${PYTHON_USEDEP}]
+		x11-libs/cairo[glib] )
+"
+DEPEND="${RDEPEND}
+	test? (
+		dev-libs/atk[introspection]
+		dev-python/pytest[${PYTHON_USEDEP}]
+		x11-libs/gdk-pixbuf:2[introspection,jpeg]
+		x11-libs/gtk+:3[introspection]
+		x11-libs/pango[introspection] )
+"
+BDEPEND="
+	virtual/pkgconfig
+"
+
+RESTRICT="!test? ( test )"
+
+src_configure() {
+	configuring() {
+		meson_src_configure \
+			$(meson_use cairo pycairo) \
+			$(meson_use test tests) \
+			-Dpython="${EPYTHON}"
+	}
+
+	python_foreach_impl configuring
+}
+
+src_compile() {
+	python_foreach_impl meson_src_compile
+}
+
+src_test() {
+	local -x GIO_USE_VFS="local" # prevents odd issues with deleting ${T}/.gvfs
+	local -x GIO_USE_VOLUME_MONITOR="unix" # prevent udisks-related failures in chroots, bug #449484
+
+	testing() {
+		local -x XDG_CACHE_HOME="${T}/${EPYTHON}"
+		meson_src_test || die "test failed for ${EPYTHON}"
+	}
+	virtx python_foreach_impl testing
+}
+
+src_install() {
+	installing() {
+		meson_src_install
+		python_optimize
+	}
+	python_foreach_impl installing
+	use examples && dodoc -r examples
+}
diff --git a/dev-python/pyvcd/Manifest b/dev-python/pyvcd/Manifest
new file mode 100644
index 0000000..37bc679
--- /dev/null
+++ b/dev-python/pyvcd/Manifest
@@ -0,0 +1 @@
+DIST pyvcd-0.2.4.tar.gz 27537 BLAKE2B 153daa5846cc8968f9d1e49cc487e2715783768ebd6cc82d9e1173cd5913372cd78a93a387c6e3f1c519fb76c8fbbacc8b824dfab9effc2d557f6adf8a89d1d5 SHA512 c5587841b36c6748f3d929d3584455dfbd4387d63d7c6bf414bff0e7123c8c84cae8135c45f673a88f981fe0f06b46bc054c3e00033ae63d308ac2944a47b2dd
diff --git a/dev-python/pyvcd/OWNERS b/dev-python/pyvcd/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-python/pyvcd/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-python/pyvcd/pyvcd-0.2.4.ebuild b/dev-python/pyvcd/pyvcd-0.2.4.ebuild
new file mode 100644
index 0000000..e63857e
--- /dev/null
+++ b/dev-python/pyvcd/pyvcd-0.2.4.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+inherit distutils-r1
+
+DESCRIPTION="Python package for writing Value Change Dump (VCD) files."
+HOMEPAGE="https://github.com/westerndigitalcorporation/pyvcd"
+
+SRC_URI="https://github.com/westerndigitalcorporation/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="*"
+
+BDEPEND="
+	dev-python/setuptools_scm[${PYTHON_USEDEP}]
+"
+
+# Provide the version since `setuptools_scm` breaks emerging snapshot ebuilds.
+export SETUPTOOLS_SCM_PRETEND_VERSION="${PV}"
+
+distutils_enable_tests pytest
diff --git a/dev-rust/adler/adler-1.0.2.ebuild b/dev-rust/adler/adler-1.0.2.ebuild
index 0a97112..a4a58fa 100644
--- a/dev-rust/adler/adler-1.0.2.ebuild
+++ b/dev-rust/adler/adler-1.0.2.ebuild
@@ -14,3 +14,6 @@
 LICENSE="|| ( MIT Apache-2.0 )" # FIXME: or BSD-0
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
+
+# error: no matching package named `compiler_builtins` found
+RESTRICT="test"
diff --git a/dev-rust/ahash/OWNERS b/dev-rust/ahash/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/ahash/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/ahash/ahash-0.4.7.ebuild b/dev-rust/ahash/ahash-0.4.7.ebuild
index b7af889..34c7de6 100644
--- a/dev-rust/ahash/ahash-0.4.7.ebuild
+++ b/dev-rust/ahash/ahash-0.4.7.ebuild
@@ -21,3 +21,6 @@
 RDEPEND="${DEPEND}"
 
 # This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `ahash`
+RESTRICT="test"
diff --git a/dev-rust/ahash/ahash-0.7.0.ebuild b/dev-rust/ahash/ahash-0.7.0.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/ahash/ahash-0.7.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/aligned/Manifest b/dev-rust/aligned/Manifest
new file mode 100644
index 0000000..dae1a97
--- /dev/null
+++ b/dev-rust/aligned/Manifest
@@ -0,0 +1 @@
+DIST aligned-0.3.4.crate 8353 BLAKE2B 91446a1c019dab7413c78d4c274d27eff39f52460c8eba28b94830b22e56ba8dd4a630e14c368ddde970ed779bbfe3b8e0b78e0c4975468be433ae1a32964e23 SHA512 c534c1d8fdfec7e0c712fe2eb1131b8250c0b4d8f798b4ae1b4dab917f9a0c180f97d7f52c67e7cb6c7fae3451bcd54106c3ee2a857f22a227d209ed95ff34f2
diff --git a/dev-rust/aligned/OWNERS b/dev-rust/aligned/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/aligned/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/aligned/aligned-0.3.4.ebuild b/dev-rust/aligned/aligned-0.3.4.ebuild
new file mode 100644
index 0000000..da40235
--- /dev/null
+++ b/dev-rust/aligned/aligned-0.3.4.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A newtype with alignment of at least "A" bytes'
+HOMEPAGE='https://crates.io/crates/aligned'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/as-slice-0.1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/ansi_term/ansi_term-0.11.0-r2.ebuild b/dev-rust/ansi_term/ansi_term-0.11.0-r2.ebuild
new file mode 120000
index 0000000..0ce2565
--- /dev/null
+++ b/dev-rust/ansi_term/ansi_term-0.11.0-r2.ebuild
@@ -0,0 +1 @@
+ansi_term-0.11.0.ebuild
\ No newline at end of file
diff --git a/dev-rust/ansi_term/ansi_term-0.11.0.ebuild b/dev-rust/ansi_term/ansi_term-0.11.0.ebuild
index 5df989a..6665557 100644
--- a/dev-rust/ansi_term/ansi_term-0.11.0.ebuild
+++ b/dev-rust/ansi_term/ansi_term-0.11.0.ebuild
@@ -1,7 +1,7 @@
 # Copyright 2019 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 
 CROS_RUST_REMOVE_DEV_DEPS=1
 
@@ -18,3 +18,9 @@
 DEPEND="
 	>=dev-rust/winapi-0.3.4:= <dev-rust/winapi-0.4.0
 "
+RDEPEND="${DEPEND}"
+
+# thread 'debug::test::long_and_detailed' panicked at 'assertion failed: `(left == right)`
+#  left: `"Style {\n    foreground: Some(\n        Blue\n    ),\n    background: None,\n    blink: false,\n    bold: true,\n    dimmed: false,\n    hidden: false,\n    italic: false,\n    reverse: false,\n    strikethrough: false,\n    underline: false\n}"`,
+#  right: `"Style {\n    foreground: Some(\n        Blue,\n    ),\n    background: None,\n    blink: false,\n    bold: true,\n    dimmed: false,\n    hidden: false,\n    italic: false,\n    reverse: false,\n    strikethrough: false,\n    underline: false,\n}"`', src/debug.rs:120:9
+RESTRICT="test"
diff --git a/dev-rust/anyhow/Manifest b/dev-rust/anyhow/Manifest
index 696c8d8..a723a77 100644
--- a/dev-rust/anyhow/Manifest
+++ b/dev-rust/anyhow/Manifest
@@ -1 +1,2 @@
 DIST anyhow-1.0.35.crate 28928 BLAKE2B 74fec657b5c21455298198bd9feddbc5086c433f2c43de45950e33341ca9527f88f4ccb94eef248437e455394d54ec0dc13af33843deb799a0215abd1b1a874f SHA512 e93baa31f9eb04dcefc9e17fe030778337796490cec3467799f98dbfda77f55522457adde388c08b8893303e8a34292b863793f37956c4adfb7a88ba10fbd154
+DIST anyhow-1.0.41.crate 34561 BLAKE2B 32889ec5ad2750e97f9d5486c7b367edc2fbaf19480bbe8114a2deed3f78e4c3e2cc31304a33fd60bc70c33c17ed8020f6df0c05a958f4016d363803dc5a08b8 SHA512 c6fba5fbb5646d195fdbda65003a8741188d49db02b805a84e695c81a054d9d5265b1c296c23d65cf089af35ce470083de88e1b65aadcc3ce33c8fb22b9cb91f
diff --git a/dev-rust/anyhow/anyhow-1.0.35.ebuild b/dev-rust/anyhow/anyhow-1.0.35.ebuild
index e3606ae..4e6b80f 100644
--- a/dev-rust/anyhow/anyhow-1.0.35.ebuild
+++ b/dev-rust/anyhow/anyhow-1.0.35.ebuild
@@ -14,3 +14,6 @@
 LICENSE="|| ( MIT Apache-2.0 )"
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
+
+# error: could not compile `anyhow`
+RESTRICT="test"
diff --git a/dev-rust/anyhow/anyhow-1.0.41.ebuild b/dev-rust/anyhow/anyhow-1.0.41.ebuild
new file mode 100644
index 0000000..86f9550
--- /dev/null
+++ b/dev-rust/anyhow/anyhow-1.0.41.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Flexible concrete Error type built on std::error::Error'
+HOMEPAGE='https://crates.io/crates/anyhow'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/backtrace-0.3.7:= <dev-rust/backtrace-0.4.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `anyhow`
+RESTRICT="test"
diff --git a/dev-rust/arbitrary/OWNERS b/dev-rust/arbitrary/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/arbitrary/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/arbitrary/arbitrary-1.0.0.ebuild b/dev-rust/arbitrary/arbitrary-1.0.0.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/arbitrary/arbitrary-1.0.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/as-slice/Manifest b/dev-rust/as-slice/Manifest
new file mode 100644
index 0000000..c13d3b6
--- /dev/null
+++ b/dev-rust/as-slice/Manifest
@@ -0,0 +1 @@
+DIST as-slice-0.1.5.crate 7986 BLAKE2B cebed41646fde627d759292bb9b1f5ad5033b526298a61aedb425d99473f37e2d3713b2cb10235986a50737573dcda3250dbf62c931a9f4752a5d0e01fc60462 SHA512 ada4f8ab265d6c6a8da0f98159a379dc4c4f4eb6cc827ccdf18fd525339d391ea4396de6f4322092ad00eb53156fa43f90ee0df09155554a3f6de033e5abc58e
diff --git a/dev-rust/as-slice/OWNERS b/dev-rust/as-slice/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/as-slice/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/as-slice/as-slice-0.1.5-r1.ebuild b/dev-rust/as-slice/as-slice-0.1.5-r1.ebuild
new file mode 120000
index 0000000..16b7d6b
--- /dev/null
+++ b/dev-rust/as-slice/as-slice-0.1.5-r1.ebuild
@@ -0,0 +1 @@
+as-slice-0.1.5.ebuild
\ No newline at end of file
diff --git a/dev-rust/as-slice/as-slice-0.1.5.ebuild b/dev-rust/as-slice/as-slice-0.1.5.ebuild
new file mode 100644
index 0000000..58f2e38
--- /dev/null
+++ b/dev-rust/as-slice/as-slice-0.1.5.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='"AsSlice" and "AsMutSlice" traits'
+HOMEPAGE='https://crates.io/crates/as-slice'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/generic-array-0.13.3:0.13.3=
+	=dev-rust/generic-array-0.14.4:0.14.4=
+	=dev-rust/generic-array-0.12.4:0.12.4=
+	>=dev-rust/stable_deref_trait-1.1.1:= <dev-rust/stable_deref_trait-2.0.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/assert_matches/Manifest b/dev-rust/assert_matches/Manifest
new file mode 100644
index 0000000..eecb50e
--- /dev/null
+++ b/dev-rust/assert_matches/Manifest
@@ -0,0 +1 @@
+DIST assert_matches-1.5.0.crate 7761 BLAKE2B ea977b104fd0d98bf9cb77ee9bfaf2c3fa378618a744b05fafa5175ec45929fefd574ff4730c90a5b485b1abb17861c25be6e2041c790fcf9c2add552d583e97 SHA512 95f6a7c6f1d577464cb488acad76d765436c20f1cc75c6bfbac28c5820890f7ee169120e3e0a60ad72e91409722e23d35d6487752a16cd07372960a41900eefe
diff --git a/dev-rust/assert_matches/OWNERS b/dev-rust/assert_matches/OWNERS
new file mode 100644
index 0000000..9c248e0
--- /dev/null
+++ b/dev-rust/assert_matches/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/libchromeos-rs/OWNERS
diff --git a/dev-rust/assert_matches/assert_matches-1.5.0.ebuild b/dev-rust/assert_matches/assert_matches-1.5.0.ebuild
new file mode 100644
index 0000000..e09d228
--- /dev/null
+++ b/dev-rust/assert_matches/assert_matches-1.5.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Asserts that a value matches a pattern'
+HOMEPAGE='https://github.com/murarth/assert_matches'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/assertions/assertions-0.1.0-r8.ebuild b/dev-rust/assertions/assertions-0.1.0-r8.ebuild
index c865ddd..9766e28 100644
--- a/dev-rust/assertions/assertions-0.1.0-r8.ebuild
+++ b/dev-rust/assertions/assertions-0.1.0-r8.ebuild
@@ -11,6 +11,9 @@
 CROS_WORKON_INCREMENTAL_BUILD=1
 CROS_WORKON_SUBTREE="assertions"
 
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
 inherit cros-workon cros-rust
 
 DESCRIPTION="Crates for compile-time assertion macro."
diff --git a/dev-rust/assertions/assertions-9999.ebuild b/dev-rust/assertions/assertions-9999.ebuild
index cc0286f..1a49f69 100644
--- a/dev-rust/assertions/assertions-9999.ebuild
+++ b/dev-rust/assertions/assertions-9999.ebuild
@@ -9,6 +9,9 @@
 CROS_WORKON_INCREMENTAL_BUILD=1
 CROS_WORKON_SUBTREE="assertions"
 
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
 inherit cros-workon cros-rust
 
 DESCRIPTION="Crates for compile-time assertion macro."
diff --git a/dev-rust/atty/atty-0.2.14.ebuild b/dev-rust/atty/atty-0.2.14.ebuild
index 2040ffd..7785bf3 100644
--- a/dev-rust/atty/atty-0.2.14.ebuild
+++ b/dev-rust/atty/atty-0.2.14.ebuild
@@ -22,3 +22,6 @@
 RDEPEND="${DEPEND}"
 
 # This file was automatically generated by cargo2ebuild.py
+
+# thread 'tests::is_in' panicked at 'assertion failed: is(Stream::Stdin)', src/lib.rs:208:9
+RESTRICT="test"
diff --git a/dev-rust/autocfg/autocfg-0.1.2.ebuild b/dev-rust/autocfg/autocfg-0.1.2.ebuild
index 6ae3787..4a26658 100644
--- a/dev-rust/autocfg/autocfg-0.1.2.ebuild
+++ b/dev-rust/autocfg/autocfg-0.1.2.ebuild
@@ -12,3 +12,6 @@
 LICENSE="|| ( MIT Apache-2.0 )"
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
+
+# thread 'tests::probe_as_ref' panicked at 'called `Result::unwrap()` on an `Err` value: Error { kind: Io(Os { code: 2, kind: NotFound, message: "No such file or directory" }) }', src/tests.rs:35:42
+RESTRICT="test"
diff --git a/dev-rust/autocfg/autocfg-1.0.1.ebuild b/dev-rust/autocfg/autocfg-1.0.1.ebuild
index 386650b..c008551 100644
--- a/dev-rust/autocfg/autocfg-1.0.1.ebuild
+++ b/dev-rust/autocfg/autocfg-1.0.1.ebuild
@@ -12,3 +12,5 @@
 LICENSE="|| ( MIT Apache-2.0 )"
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
+
+RESTRICT="test"
diff --git a/dev-rust/backtrace/backtrace-0.3.7.ebuild b/dev-rust/backtrace/backtrace-0.3.7.ebuild
index 25a70b6..5873477 100644
--- a/dev-rust/backtrace/backtrace-0.3.7.ebuild
+++ b/dev-rust/backtrace/backtrace-0.3.7.ebuild
@@ -28,3 +28,6 @@
 	>=dev-rust/serde_derive-1.0.0:=
 	>=dev-rust/winapi-0.3.3:=
 "
+
+# error: could not compile `backtrace`
+RESTRICT="test"
diff --git a/dev-rust/bare-metal/Manifest b/dev-rust/bare-metal/Manifest
new file mode 100644
index 0000000..1141c7e
--- /dev/null
+++ b/dev-rust/bare-metal/Manifest
@@ -0,0 +1,2 @@
+DIST bare-metal-1.0.0.crate 10650 BLAKE2B cc3185e5aa6cd7856e8ae507eaf87afb45a78668ae9a9da306b2bbe847d5ac8232b1ac77f407a2e92d8576961edb64bdee825181c18806367ab7864e40207e7b SHA512 909b0d45aadb809bea8890d1beaf4df5948eaec83e8fb49c88c7dd43d17cf075b3ceea8a2fade7171651934c6ea4275f6e4231c12181705186e1f1bd45f1f2de
+DIST bare-metal-0.2.5.crate 7923 BLAKE2B 0deff5451744c1d8bc85b36b10e6c85e40e5122779663cd3fb9f19b363b40f6087068a6769473af927c1306c90c6e5adc178553dfcaf2e0aad613ba28259c4f9 SHA512 63556c017a21aa4b37f4789fe3e26bdfdf7d0edf4fdf9a7f4ba131c60308cfa4618f0f92dcc673ac508a0db6adab9f2157352a2162ac169a7a05eb30e9bf8e8d
diff --git a/dev-rust/bare-metal/OWNERS b/dev-rust/bare-metal/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/bare-metal/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/bare-metal/bare-metal-0.2.5.ebuild b/dev-rust/bare-metal/bare-metal-0.2.5.ebuild
new file mode 100644
index 0000000..8f3e290
--- /dev/null
+++ b/dev-rust/bare-metal/bare-metal-0.2.5.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Abstractions common to bare metal systems'
+HOMEPAGE='https://crates.io/crates/bare-metal'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/rustc_version-0.2.3:= <dev-rust/rustc_version-0.3.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/bare-metal/bare-metal-1.0.0.ebuild b/dev-rust/bare-metal/bare-metal-1.0.0.ebuild
new file mode 100644
index 0000000..92b845a
--- /dev/null
+++ b/dev-rust/bare-metal/bare-metal-1.0.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Abstractions common to bare metal systems'
+HOMEPAGE='https://crates.io/crates/bare-metal'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/base64/Manifest b/dev-rust/base64/Manifest
index 71c95c2..16ef3fa 100644
--- a/dev-rust/base64/Manifest
+++ b/dev-rust/base64/Manifest
@@ -1 +1,2 @@
+DIST base64-0.10.1.crate 41988 BLAKE2B 6e28a70cc0d5e426d9a3944825952851928ec2e32fa2543a8e1d1b886ad306f38fd6e673da62e96581e56613f133265feeff5b0d2f1e2e34593e58c0424eee9e SHA512 674a8cbee95a41f755499a4e3bb93ebd3f80140c3e8e2d44a0b73890ee423754e7ba8abcd92132683cd54501ff5d14438d023a202eaf12776aecbe36df9e5535
 DIST base64-0.13.0.crate 62070 BLAKE2B b957f65cdb1e28baeca0cefc92fa98be797409b7dabd15e0e88db6cdfb89779b662cba9f2270fbf3b7b66948fdc46c118b8040a78ab72049c48a928fa802bee0 SHA512 991a72999839daa232f508c5b24e7d3225e8a26db8d1d0e747881b115af9e408b92374e163b31e0b0d324c1c2e57e8e38d66861b61eb0a1dba87bb5871940151
diff --git a/dev-rust/base64/base64-0.10.1.ebuild b/dev-rust/base64/base64-0.10.1.ebuild
new file mode 100644
index 0000000..0e5b222
--- /dev/null
+++ b/dev-rust/base64/base64-0.10.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='encodes and decodes base64 as bytes or utf8'
+HOMEPAGE='https://crates.io/crates/base64'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/byteorder-1.2.6:= <dev-rust/byteorder-2.0.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+# Test phase is disabled due to the "trait objects without an explicit
+# `dyn` are deprecated" error in src/decode.rs:58.
+RESTRICT="test"
diff --git a/dev-rust/bitfield/Manifest b/dev-rust/bitfield/Manifest
new file mode 100644
index 0000000..e4523a8
--- /dev/null
+++ b/dev-rust/bitfield/Manifest
@@ -0,0 +1 @@
+DIST bitfield-0.13.2.crate 16479 BLAKE2B c34f150e135579452d5b6e13bac0fb4a3a897219660289c861646330f7050d19a10d041affe8d250bf314c35eb19ee519b1fa0dd12eed94a93a5e904b95380d9 SHA512 5ed9ad97913828d67b19d5f10a264592f4c03aba8e4ea791f7a20e61da79066daa1d5ce678c822d8f6f1d065a65a3aa6afec23980abd1da38b44dc6cbb96166f
diff --git a/dev-rust/bitfield/OWNERS b/dev-rust/bitfield/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/bitfield/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/bitfield/bitfield-0.13.2.ebuild b/dev-rust/bitfield/bitfield-0.13.2.ebuild
new file mode 100644
index 0000000..39da6c6
--- /dev/null
+++ b/dev-rust/bitfield/bitfield-0.13.2.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='This crate provides macros to generate bitfield-like struct.'
+HOMEPAGE='https://crates.io/crates/bitfield'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/bitflags/bitflags-0.7.0.ebuild b/dev-rust/bitflags/bitflags-0.7.0.ebuild
index 3febd89..970c8e6 100644
--- a/dev-rust/bitflags/bitflags-0.7.0.ebuild
+++ b/dev-rust/bitflags/bitflags-0.7.0.ebuild
@@ -12,3 +12,6 @@
 LICENSE="|| ( MIT Apache-2.0 )"
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
+
+# error: could not compile `bitflags`
+RESTRICT="test"
diff --git a/dev-rust/built/built-0.3.1-r1.ebuild b/dev-rust/built/built-0.3.1-r1.ebuild
new file mode 120000
index 0000000..0249c40
--- /dev/null
+++ b/dev-rust/built/built-0.3.1-r1.ebuild
@@ -0,0 +1 @@
+built-0.3.1.ebuild
\ No newline at end of file
diff --git a/dev-rust/built/built-0.3.1.ebuild b/dev-rust/built/built-0.3.1.ebuild
index 2de7d02..b7076ab 100644
--- a/dev-rust/built/built-0.3.1.ebuild
+++ b/dev-rust/built/built-0.3.1.ebuild
@@ -12,9 +12,12 @@
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
 
-DEPEND=">=dev-rust/toml-0.5:=
+DEPEND="=dev-rust/toml-0.5*:=
 	=dev-rust/chrono-0.4*:=
 	=dev-rust/git2-0.9*:=
-	>=dev-rust/semver-0.9:=
+	=dev-rust/semver-0.9*:=
 	=dev-rust/tempdir-0.3*:=
 "
+
+# thread 'new_testbox' panicked at 'called `Option::unwrap()` on a `None` value', tests/testbox_tests.rs:63:58
+RESTRICT="test"
diff --git a/dev-rust/bumpalo/OWNERS b/dev-rust/bumpalo/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/bumpalo/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/bumpalo/bumpalo-3.5.0.ebuild b/dev-rust/bumpalo/bumpalo-3.5.0.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/bumpalo/bumpalo-3.5.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/byteorder/byteorder-1.4.3.ebuild b/dev-rust/byteorder/byteorder-1.4.3.ebuild
index 9dcdda4..e75d32d 100644
--- a/dev-rust/byteorder/byteorder-1.4.3.ebuild
+++ b/dev-rust/byteorder/byteorder-1.4.3.ebuild
@@ -17,3 +17,6 @@
 
 
 # This file was automatically generated by cargo2ebuild.py
+
+# could not compile
+RESTRICT="test"
diff --git a/dev-rust/bytes/bytes-0.4.12.ebuild b/dev-rust/bytes/bytes-0.4.12.ebuild
index 1aad9a5..37e6b81 100644
--- a/dev-rust/bytes/bytes-0.4.12.ebuild
+++ b/dev-rust/bytes/bytes-0.4.12.ebuild
@@ -24,3 +24,6 @@
 RDEPEND="${DEPEND}"
 
 # This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `bytes`
+RESTRICT="test"
diff --git a/dev-rust/capnp/OWNERS b/dev-rust/capnp/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/capnp/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/capnp/capnp-0.14.2.ebuild b/dev-rust/capnp/capnp-0.14.2.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/capnp/capnp-0.14.2.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/capnpc/OWNERS b/dev-rust/capnpc/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/capnpc/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/capnpc/capnpc-0.14.4.ebuild b/dev-rust/capnpc/capnpc-0.14.4.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/capnpc/capnpc-0.14.4.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/cc/cc-1.0.25.ebuild b/dev-rust/cc/cc-1.0.25.ebuild
index ac066ea..4726eaa 100644
--- a/dev-rust/cc/cc-1.0.25.ebuild
+++ b/dev-rust/cc/cc-1.0.25.ebuild
@@ -17,3 +17,6 @@
 	>=dev-rust/rayon-1.0.2:=
 	>=dev-rust/tempdir-0.3.7:=
 "
+
+# could not compile
+RESTRICT="test"
diff --git a/dev-rust/cexpr/OWNERS b/dev-rust/cexpr/OWNERS
index 08ef481..9331bd8 100644
--- a/dev-rust/cexpr/OWNERS
+++ b/dev-rust/cexpr/OWNERS
@@ -1 +1 @@
-include chromiumos/overlays/chromiumos-overlay:/dev-rust/bindgen/OWNERS
+include /dev-rust/bindgen/OWNERS
diff --git a/dev-rust/cfg-if/cfg-if-0.1.10.ebuild b/dev-rust/cfg-if/cfg-if-0.1.10.ebuild
index a209e01..a1acc0b 100644
--- a/dev-rust/cfg-if/cfg-if-0.1.10.ebuild
+++ b/dev-rust/cfg-if/cfg-if-0.1.10.ebuild
@@ -12,3 +12,6 @@
 LICENSE="|| ( MIT Apache-2.0 )"
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
+
+# error: no matching package named `compiler_builtins` found
+RESTRICT="test"
diff --git a/dev-rust/chashmap/chashmap-2.2.2-r2.ebuild b/dev-rust/chashmap/chashmap-2.2.2-r2.ebuild
new file mode 120000
index 0000000..c4d58ec
--- /dev/null
+++ b/dev-rust/chashmap/chashmap-2.2.2-r2.ebuild
@@ -0,0 +1 @@
+chashmap-2.2.2.ebuild
\ No newline at end of file
diff --git a/dev-rust/chashmap/chashmap-2.2.2.ebuild b/dev-rust/chashmap/chashmap-2.2.2.ebuild
index a32bb65..b8f6381 100644
--- a/dev-rust/chashmap/chashmap-2.2.2.ebuild
+++ b/dev-rust/chashmap/chashmap-2.2.2.ebuild
@@ -1,7 +1,7 @@
 # Copyright 2019 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 
 inherit cros-rust
 
@@ -17,3 +17,4 @@
 	=dev-rust/owning_ref-0.3*:=
 	=dev-rust/parking_lot-0.4*:=
 "
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/chromeos-dbus-bindings/chromeos-dbus-bindings-0.24.52-r5.ebuild b/dev-rust/chromeos-dbus-bindings/chromeos-dbus-bindings-0.24.52-r5.ebuild
deleted file mode 100644
index a1d5f34..0000000
--- a/dev-rust/chromeos-dbus-bindings/chromeos-dbus-bindings-0.24.52-r5.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="3e9639613304065244f0860f6176f23f3245dd27"
-CROS_WORKON_TREE="e8023258ebab0150d1674664c16f6d197136cc8b"
-CROS_RUST_SUBDIR="chromeos-dbus-bindings"
-
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Chrome OS D-Bus bindings generator for Rust."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/chromeos-dbus-bindings/"
-
-LICENSE="BSD-Google"
-SLOT="0/${PVR}"
-KEYWORDS="*"
-
-RDEPEND="!chromeos-base/chromeos-dbus-bindings-rust"
-
-BDEPEND=">=dev-rust/dbus-codegen-0.5.0"
diff --git a/dev-rust/chromeos-dbus-bindings/chromeos-dbus-bindings-0.25.52-r11.ebuild b/dev-rust/chromeos-dbus-bindings/chromeos-dbus-bindings-0.25.52-r11.ebuild
new file mode 100644
index 0000000..cd943d7
--- /dev/null
+++ b/dev-rust/chromeos-dbus-bindings/chromeos-dbus-bindings-0.25.52-r11.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="c33dd23e50377e6f9fa9f7cfed2a85af62fb8526"
+CROS_WORKON_TREE="8753ae37f2abfcd79989d4a4d795bfa11b50816f"
+CROS_RUST_SUBDIR="chromeos-dbus-bindings"
+
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Chrome OS D-Bus bindings generator for Rust."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/chromeos-dbus-bindings/"
+
+LICENSE="BSD-Google"
+SLOT="0/${PVR}"
+KEYWORDS="*"
+
+DEPEND="=dev-rust/which-4*:="
+RDEPEND="!chromeos-base/chromeos-dbus-bindings-rust
+	${DEPEND}"
+
+BDEPEND=">=dev-rust/dbus-codegen-0.9.0"
diff --git a/dev-rust/chromeos-dbus-bindings/chromeos-dbus-bindings-9999.ebuild b/dev-rust/chromeos-dbus-bindings/chromeos-dbus-bindings-9999.ebuild
index bb9e117..b1b0c83 100644
--- a/dev-rust/chromeos-dbus-bindings/chromeos-dbus-bindings-9999.ebuild
+++ b/dev-rust/chromeos-dbus-bindings/chromeos-dbus-bindings-9999.ebuild
@@ -18,6 +18,8 @@
 SLOT="0/${PVR}"
 KEYWORDS="~*"
 
-RDEPEND="!chromeos-base/chromeos-dbus-bindings-rust"
+DEPEND="=dev-rust/which-4*:="
+RDEPEND="!chromeos-base/chromeos-dbus-bindings-rust
+	${DEPEND}"
 
-BDEPEND=">=dev-rust/dbus-codegen-0.5.0"
+BDEPEND=">=dev-rust/dbus-codegen-0.9.0"
diff --git a/dev-rust/chrono/chrono-0.4.19-r2.ebuild b/dev-rust/chrono/chrono-0.4.19-r2.ebuild
new file mode 120000
index 0000000..2909e30
--- /dev/null
+++ b/dev-rust/chrono/chrono-0.4.19-r2.ebuild
@@ -0,0 +1 @@
+chrono-0.4.19.ebuild
\ No newline at end of file
diff --git a/dev-rust/chrono/chrono-0.4.19.ebuild b/dev-rust/chrono/chrono-0.4.19.ebuild
index aa11258..9bcb4ad 100644
--- a/dev-rust/chrono/chrono-0.4.19.ebuild
+++ b/dev-rust/chrono/chrono-0.4.19.ebuild
@@ -13,13 +13,18 @@
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
 
-DEPEND=">=dev-rust/num-integer-0.1.36:=
+DEPEND="
+	=dev-rust/bincode-0.8*:=
+	>=dev-rust/num-integer-0.1.36:= <dev-rust/num-integer-0.2.0
+	>=dev-rust/num-iter-0.1.35:= <dev-rust/num-iter-0.2.0
 	=dev-rust/num-traits-0.2*:=
-	>=dev-rust/num-iter-0.1.35:=
-	>=dev-rust/rustc-serialize-0.3.20:=
+	>=dev-rust/rustc-serialize-0.3.20:= <dev-rust/rustc-serialize-0.4.0
 	=dev-rust/serde-1*:=
 	=dev-rust/serde_derive-1*:=
 	=dev-rust/serde_json-1*:=
 	>=dev-rust/time-0.1.43:= <dev-rust/time-0.2.0
-	=dev-rust/bincode-0.8*:=
 "
+RDEPEND="${DEPEND}"
+
+# error: no matching package named `pure-rust-locales` found
+RESTRICT="test"
diff --git a/dev-rust/clang-sys/OWNERS b/dev-rust/clang-sys/OWNERS
index 08ef481..9331bd8 100644
--- a/dev-rust/clang-sys/OWNERS
+++ b/dev-rust/clang-sys/OWNERS
@@ -1 +1 @@
-include chromiumos/overlays/chromiumos-overlay:/dev-rust/bindgen/OWNERS
+include /dev-rust/bindgen/OWNERS
diff --git a/dev-rust/clap/Manifest b/dev-rust/clap/Manifest
index 5edfee7..34631351 100644
--- a/dev-rust/clap/Manifest
+++ b/dev-rust/clap/Manifest
@@ -1 +1,2 @@
 DIST clap-2.33.3.crate 201925 BLAKE2B bec9c866481c5b3fddeb314f68af9bce38fc421e42816182de3209e8ea3447b72cf033e6251eea27fe974eff8085b7d98cdd2911b5cc0ec6b4bf4c750deb8a25 SHA512 3eb0fd648e2e3f9e5ff69a5e6cf0d867304fe18523accd036f28a86de368e4774088a6936c108ccc045092c539fe7f7494ea96420ebf6b4bec16880cea84bedf
+DIST clap-3.0.0_beta2.crate 141105 BLAKE2B 9668e2cc9b2d2f3f063659e45df5e01a3f7c163b21f7d0cc1e8a1a65fe620ff5c1356b2beae71987aced55d58f36c961515e020a87ffdbd1cd2763196437c2f1 SHA512 bb51ab2dfe06eb11023d3933ca7a657e3c9e6fa064cba81e2436450036dca3dcc2ca5a9b90785a0042dd823e57ad1e7dc765b788928c249fd10906329b33cdb7
diff --git a/dev-rust/clap/OWNERS b/dev-rust/clap/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/clap/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/clap/clap-2.33.3-r1.ebuild b/dev-rust/clap/clap-2.33.3-r1.ebuild
new file mode 120000
index 0000000..9c195b1
--- /dev/null
+++ b/dev-rust/clap/clap-2.33.3-r1.ebuild
@@ -0,0 +1 @@
+clap-2.33.3.ebuild
\ No newline at end of file
diff --git a/dev-rust/clap/clap-2.33.3.ebuild b/dev-rust/clap/clap-2.33.3.ebuild
index a6bc372..38a01c0 100644
--- a/dev-rust/clap/clap-2.33.3.ebuild
+++ b/dev-rust/clap/clap-2.33.3.ebuild
@@ -24,7 +24,7 @@
 	=dev-rust/textwrap-0.11*:=
 	>=dev-rust/unicode-width-0.1.4:= <dev-rust/unicode-width-0.2.0
 	=dev-rust/vec_map-0.8*:=
-	>=dev-rust/yaml-rust-0.3.5:= <dev-rust/yaml-rust-0.4.0
+	=dev-rust/yaml-rust-0.3*:=
 	=dev-rust/ansi_term-0.11*:=
 "
 RDEPEND="${DEPEND}"
diff --git a/dev-rust/clap/clap-3.0.0_beta2.ebuild b/dev-rust/clap/clap-3.0.0_beta2.ebuild
new file mode 100644
index 0000000..29470890
--- /dev/null
+++ b/dev-rust/clap/clap-3.0.0_beta2.ebuild
@@ -0,0 +1,58 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A simple to use, efficient, and full-featured Command Line Argument Parser'
+HOMEPAGE='https://clap.rs/'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/atty-0.2*:=
+	>=dev-rust/bitflags-1.2.0:= <dev-rust/bitflags-2.0.0
+	=dev-rust/clap_derive-3*:=
+	=dev-rust/indexmap-1*:=
+	=dev-rust/lazy_static-1*:=
+	>=dev-rust/os_str_bytes-2.3.0:= <dev-rust/os_str_bytes-3.0.0
+	=dev-rust/regex-1*:=
+	=dev-rust/strsim-0.10*:=
+	>=dev-rust/termcolor-1.1.0:= <dev-rust/termcolor-2.0.0
+	>=dev-rust/terminal_size-0.1.12:= <dev-rust/terminal_size-0.2.0
+	=dev-rust/textwrap-0.12*:=
+	=dev-rust/unicode-width-0.1*:=
+	=dev-rust/vec_map-0.8*:=
+	>=dev-rust/yaml-rust-0.4.1:= <dev-rust/yaml-rust-0.5.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+# ${PV} was changed from the original 3.0.0-beta.2
+
+CROS_RUST_CRATE_VERSION="3.0.0-beta.2"
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${CROS_RUST_CRATE_VERSION}/download -> ${P}.crate"
+S="${WORKDIR}/${PN}-${CROS_RUST_CRATE_VERSION}"
+
+IUSE="test"
+TEST_DEPS="
+	test? (
+		=dev-rust/criterion-0.3.2:=
+		=dev-rust/version-sync-0.8*:=
+	)
+"
+DEPEND+="${TEST_DEPS}"
+RDEPEND+="${TEST_DEPS}"
+
+src_prepare() {
+	if use test; then
+		CROS_RUST_REMOVE_DEV_DEPS=0
+	fi
+	cros-rust_src_prepare
+}
diff --git a/dev-rust/clap_derive/Manifest b/dev-rust/clap_derive/Manifest
new file mode 100644
index 0000000..1259026
--- /dev/null
+++ b/dev-rust/clap_derive/Manifest
@@ -0,0 +1 @@
+DIST clap_derive-3.0.0_beta2.crate 23425 BLAKE2B 9e8fb7d26dd912d356dec9057731bfa857e36d27a9a90869b2167cf57f539e8352ac2cbee8da0a06a7652f918d25840ac4c41f5c408b19f2e4142104e6821833 SHA512 4e2620557daae4f1da925e0ead0f18c76586b59b9e2289d85a949a081f88e097b56bfda2ef07c88704e7b5704dc58de3a468bf73705ba64a85d59103ff60dd5f
diff --git a/dev-rust/clap_derive/OWNERS b/dev-rust/clap_derive/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/clap_derive/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/clap_derive/clap_derive-3.0.0_beta2.ebuild b/dev-rust/clap_derive/clap_derive-3.0.0_beta2.ebuild
new file mode 100644
index 0000000..b2bb3c8
--- /dev/null
+++ b/dev-rust/clap_derive/clap_derive-3.0.0_beta2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Parse command line argument by defining a struct, derive crate.'
+HOMEPAGE='https://clap.rs/'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/heck-0.3*:=
+	=dev-rust/proc-macro-error-1*:=
+	=dev-rust/proc-macro2-1*:=
+	=dev-rust/quote-1*:=
+	=dev-rust/syn-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+# ${PV} was changed from the original 3.0.0-beta.2
+
+CROS_RUST_CRATE_VERSION="3.0.0-beta.2"
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${CROS_RUST_CRATE_VERSION}/download -> ${P}.crate"
+S="${WORKDIR}/${PN}-${CROS_RUST_CRATE_VERSION}"
diff --git a/dev-rust/codespan-reporting/codespan-reporting-0.11.1.ebuild b/dev-rust/codespan-reporting/codespan-reporting-0.11.1.ebuild
index 7e6065e..7181300 100644
--- a/dev-rust/codespan-reporting/codespan-reporting-0.11.1.ebuild
+++ b/dev-rust/codespan-reporting/codespan-reporting-0.11.1.ebuild
@@ -23,3 +23,6 @@
 RDEPEND="${DEPEND}"
 
 # This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `codespan-reporting`
+RESTRICT="test"
diff --git a/dev-rust/cortex-m-rt-macros/Manifest b/dev-rust/cortex-m-rt-macros/Manifest
new file mode 100644
index 0000000..da9ae08
--- /dev/null
+++ b/dev-rust/cortex-m-rt-macros/Manifest
@@ -0,0 +1 @@
+DIST cortex-m-rt-macros-0.1.8.crate 6169 BLAKE2B 24b0de618a569e688ee4aeda3cc53ce663313596c0e4059b45dc01d16f41e19adb99e2ffc9c09e40e39474629162a7ff048c2b37d6a064ae6d7f0b37d5de8276 SHA512 0fdd6a484662491aec7c81eee3cef74e8bd4687b062ab5c4e49397687cf3ac5035b4dffbde96103cfb2c62c617a7c110cc6fff441cd6db3fb8faf08a6f6b9ded
diff --git a/dev-rust/cortex-m-rt-macros/OWNERS b/dev-rust/cortex-m-rt-macros/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/cortex-m-rt-macros/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/cortex-m-rt-macros/cortex-m-rt-macros-0.1.8.ebuild b/dev-rust/cortex-m-rt-macros/cortex-m-rt-macros-0.1.8.ebuild
new file mode 100644
index 0000000..8f59acc
--- /dev/null
+++ b/dev-rust/cortex-m-rt-macros/cortex-m-rt-macros-0.1.8.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Attributes re-exported in "cortex-m-rt"'
+HOMEPAGE='https://crates.io/crates/cortex-m-rt-macros'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/proc-macro2-1*:=
+	=dev-rust/quote-1*:=
+	=dev-rust/syn-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/cortex-m-rt/Manifest b/dev-rust/cortex-m-rt/Manifest
new file mode 100644
index 0000000..119004f
--- /dev/null
+++ b/dev-rust/cortex-m-rt/Manifest
@@ -0,0 +1 @@
+DIST cortex-m-rt-0.6.14.crate 38739 BLAKE2B 974884a715dbab915badc2822739f6c38f4fb92a799cefffbd5da2c8840cc260f7f9e9018ec6c148920aadfb1a2829f1a3dfac9f4a9ac53e2fd7045a73745da1 SHA512 b9716348a8f10ac7fcdb3a4b20f50f7e4158327ad58614c14b60e7dc474a55dd413359a9737f97ecf5a9c4046e501092fbbe2d28ffdaa5994592adbdd76148ef
diff --git a/dev-rust/cortex-m-rt/OWNERS b/dev-rust/cortex-m-rt/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/cortex-m-rt/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/cortex-m-rt/cortex-m-rt-0.6.14-r1.ebuild b/dev-rust/cortex-m-rt/cortex-m-rt-0.6.14-r1.ebuild
new file mode 120000
index 0000000..42f9835
--- /dev/null
+++ b/dev-rust/cortex-m-rt/cortex-m-rt-0.6.14-r1.ebuild
@@ -0,0 +1 @@
+cortex-m-rt-0.6.14.ebuild
\ No newline at end of file
diff --git a/dev-rust/cortex-m-rt/cortex-m-rt-0.6.14.ebuild b/dev-rust/cortex-m-rt/cortex-m-rt-0.6.14.ebuild
new file mode 100644
index 0000000..ac087e8
--- /dev/null
+++ b/dev-rust/cortex-m-rt/cortex-m-rt-0.6.14.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Minimal runtime / startup for Cortex-M microcontrollers'
+HOMEPAGE='https://crates.io/crates/cortex-m-rt'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	~dev-rust/cortex-m-rt-macros-0.1.8:=
+	>=dev-rust/r0-0.2.2:= <dev-rust/r0-0.3.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+src_install() {
+	cros-rust_src_install
+
+	# Do not strip prebuilt .a files in the crate sources
+	# shellcheck disable=SC2154
+	dostrip -x "${CROS_RUST_REGISTRY_BASE}"
+}
+
+RESTRICT="test"
diff --git a/dev-rust/cortex-m-rtic-macros/Manifest b/dev-rust/cortex-m-rtic-macros/Manifest
new file mode 100644
index 0000000..8b7cc2e
--- /dev/null
+++ b/dev-rust/cortex-m-rtic-macros/Manifest
@@ -0,0 +1 @@
+DIST cortex-m-rtic-macros-0.5.3.crate 22855 BLAKE2B c3461be1c62e79be19806aa226788a4b52ad3c108e2ef087641d5072550133c49d9a28545028c0d0a59fbf52ae2686ab38ae8302d44a10510167f480be754cf8 SHA512 65bd9c478f3d89da4c68589245b6f16d83ff54d32c3defa0bc52594f171d3fb6b24ab2dd8cca79a9740272183e109604474a76c48b7274d864e0160fbb68aee2
diff --git a/dev-rust/cortex-m-rtic-macros/OWNERS b/dev-rust/cortex-m-rtic-macros/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/cortex-m-rtic-macros/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/cortex-m-rtic-macros/cortex-m-rtic-macros-0.5.3.ebuild b/dev-rust/cortex-m-rtic-macros/cortex-m-rtic-macros-0.5.3.ebuild
new file mode 100644
index 0000000..a960cdc
--- /dev/null
+++ b/dev-rust/cortex-m-rtic-macros/cortex-m-rtic-macros-0.5.3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Procedural macros of the cortex-m-rtic crate'
+HOMEPAGE='https://crates.io/crates/cortex-m-rtic-macros'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/proc-macro2-1*:=
+	=dev-rust/quote-1*:=
+	=dev-rust/rtic-syntax-0.4*:=
+	=dev-rust/syn-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/cortex-m-rtic/Manifest b/dev-rust/cortex-m-rtic/Manifest
new file mode 100644
index 0000000..fb8c1b7
--- /dev/null
+++ b/dev-rust/cortex-m-rtic/Manifest
@@ -0,0 +1 @@
+DIST cortex-m-rtic-0.5.7.crate 87547 BLAKE2B 87c977f887f6667402742bbe7da6ccba4b6ccbe3d5c9d84429a1f630f655d017a7d939e554bd82065e2b91b3cf0ec77f8ec5e93565e9a842b6cd5a811da8d8f5 SHA512 f53275350bf0b09464383a555da17a6da6dde5b06b9d3f1d3f66ae59a485d199e478ed56782afd3e475f28dc5786d0c7e492bef094bbf4e08edb42aa52d99dc3
diff --git a/dev-rust/cortex-m-rtic/OWNERS b/dev-rust/cortex-m-rtic/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/cortex-m-rtic/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/cortex-m-rtic/cortex-m-rtic-0.5.7.ebuild b/dev-rust/cortex-m-rtic/cortex-m-rtic-0.5.7.ebuild
new file mode 100644
index 0000000..133d257
--- /dev/null
+++ b/dev-rust/cortex-m-rtic/cortex-m-rtic-0.5.7.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Real-Time Interrupt-driven Concurrency (RTIC): a concurrency framework for building real-time systems'
+HOMEPAGE='https://crates.io/crates/cortex-m-rtic'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/cortex-m-0.6.2:= <dev-rust/cortex-m-0.7.0
+	>=dev-rust/cortex-m-rt-0.6.9:= <dev-rust/cortex-m-rt-0.7.0
+	>=dev-rust/cortex-m-rtic-macros-0.5.3:= <dev-rust/cortex-m-rtic-macros-0.6.0
+	>=dev-rust/heapless-0.6.1:= <dev-rust/heapless-0.7.0
+	=dev-rust/microamp-0.1*:=
+	=dev-rust/rtic-core-0.3*:=
+	=dev-rust/version_check-0.9*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+RESTRICT="test"
diff --git a/dev-rust/cortex-m/Manifest b/dev-rust/cortex-m/Manifest
new file mode 100644
index 0000000..ab0faeb
--- /dev/null
+++ b/dev-rust/cortex-m/Manifest
@@ -0,0 +1,2 @@
+DIST cortex-m-0.7.3.crate 142384 BLAKE2B 4209bc53a4dd11448e5e9fdcbd176f8fd9bbfb13adcbc6ad3b663862dc358303b82e381dc2e1fa476687c22047d26c18a5f8381ec7a12a6047b793f6624ffe04 SHA512 380b63c7a51abb41eb6d557b862b728f4480d96e68fe0e8dd05c6d38cbd90ae7a663e1290b6cd4b35108550d870618acf958f34b058d92b2b8da172431bec62f
+DIST cortex-m-0.6.7.crate 37370 BLAKE2B a229680518ebcd8e234628270ccf058d3494c6c01262c062e2dd5eb672102d155ce2ce7c960569bd90857591a8f02e15997fdb563a84263caa0001ca23c610d4 SHA512 6ab3e88a0729a8f15347ba347e263e52c0d193760714205ea84b1010ad3b185e0929675031e5db78926b3957e2294f2eb4deadbd65200d3107614e68fe952bbf
diff --git a/dev-rust/cortex-m/OWNERS b/dev-rust/cortex-m/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/cortex-m/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/cortex-m/cortex-m-0.6.7-r1.ebuild b/dev-rust/cortex-m/cortex-m-0.6.7-r1.ebuild
new file mode 120000
index 0000000..30196f4
--- /dev/null
+++ b/dev-rust/cortex-m/cortex-m-0.6.7-r1.ebuild
@@ -0,0 +1 @@
+cortex-m-0.6.7.ebuild
\ No newline at end of file
diff --git a/dev-rust/cortex-m/cortex-m-0.6.7.ebuild b/dev-rust/cortex-m/cortex-m-0.6.7.ebuild
new file mode 100644
index 0000000..d56424b
--- /dev/null
+++ b/dev-rust/cortex-m/cortex-m-0.6.7.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Low level access to Cortex-M processors'
+HOMEPAGE='https://crates.io/crates/cortex-m'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/aligned-0.3.1:= <dev-rust/aligned-0.4.0
+	=dev-rust/bare-metal-0.2*:=
+	>=dev-rust/bitfield-0.13.2:= <dev-rust/bitfield-0.14.0
+	=dev-rust/cortex-m-0.7*:=
+	=dev-rust/volatile-register-0.2*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+src_install() {
+	cros-rust_src_install
+
+	# Do not strip prebuilt .a files in the crate sources
+	# shellcheck disable=SC2154
+	dostrip -x "${CROS_RUST_REGISTRY_BASE}"
+}
diff --git a/dev-rust/cortex-m/cortex-m-0.7.3-r1.ebuild b/dev-rust/cortex-m/cortex-m-0.7.3-r1.ebuild
new file mode 120000
index 0000000..8c0d104
--- /dev/null
+++ b/dev-rust/cortex-m/cortex-m-0.7.3-r1.ebuild
@@ -0,0 +1 @@
+cortex-m-0.7.3.ebuild
\ No newline at end of file
diff --git a/dev-rust/cortex-m/cortex-m-0.7.3.ebuild b/dev-rust/cortex-m/cortex-m-0.7.3.ebuild
new file mode 100644
index 0000000..df55151
--- /dev/null
+++ b/dev-rust/cortex-m/cortex-m-0.7.3.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Low level access to Cortex-M processors'
+HOMEPAGE='https://crates.io/crates/cortex-m'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/bare-metal-0.2*:=
+	>=dev-rust/bitfield-0.13.2:= <dev-rust/bitfield-0.14.0
+	>=dev-rust/embedded-hal-0.2.4:= <dev-rust/embedded-hal-0.3.0
+	=dev-rust/volatile-register-0.2*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+src_install() {
+	cros-rust_src_install
+
+	# Do not strip prebuilt .a files in the crate sources
+	# shellcheck disable=SC2154
+	dostrip -x "${CROS_RUST_REGISTRY_BASE}"
+}
diff --git a/dev-rust/crc-catalog/Manifest b/dev-rust/crc-catalog/Manifest
new file mode 100644
index 0000000..2a95b43
--- /dev/null
+++ b/dev-rust/crc-catalog/Manifest
@@ -0,0 +1 @@
+DIST crc-catalog-1.1.1.crate 8698 BLAKE2B 7c118c7fa1833b23b86cbb33318d43882106f3a1c49059939cd23431b82c39712db5d2304499d56be9cf98fc445dadb1ae01c2f862a2698d66a03d43e17f4dce SHA512 8785fedc82721901c39ad858a4c92b8d6246ecc496bf0c755386c4d8577ce7e6fe8b2f815bde7d892505e1f8125bc028864951f00c76faca2f58f9129986a7f8
diff --git a/dev-rust/crc-catalog/OWNERS b/dev-rust/crc-catalog/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/crc-catalog/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/crc-catalog/crc-catalog-1.1.1.ebuild b/dev-rust/crc-catalog/crc-catalog-1.1.1.ebuild
new file mode 100644
index 0000000..ee9289b
--- /dev/null
+++ b/dev-rust/crc-catalog/crc-catalog-1.1.1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Catalog of CRC algorithms (generated from http://reveng.sourceforge.net/crc-catalogue) expressed as simple Rust structs.'
+HOMEPAGE='https://crates.io/crates/crc-catalog'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/crc/Manifest b/dev-rust/crc/Manifest
new file mode 100644
index 0000000..e5bc11b
--- /dev/null
+++ b/dev-rust/crc/Manifest
@@ -0,0 +1 @@
+DIST crc-2.0.0.crate 8302 BLAKE2B 20c77419b10d0c1b1f1c90f372d370521b19e32e00acdb818fd533706bc09fbcdd3d1b65b410d42bfecd496adb7b8e164713b4a34e7665b1631a7a53f31768eb SHA512 ce17d148738033743b5b1f91c4f23f13dcefc86c75d352eb07c4c4ab223a15aec33d5f57dd55a41afc22087f2b95d71bf2f4f49e9b483d1a83eb8100701b9126
diff --git a/dev-rust/crc/OWNERS b/dev-rust/crc/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/crc/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/crc/crc-2.0.0.ebuild b/dev-rust/crc/crc-2.0.0.ebuild
new file mode 100644
index 0000000..b8473ca
--- /dev/null
+++ b/dev-rust/crc/crc-2.0.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Rust implementation of CRC(16, 32, 64) with support of various standards'
+HOMEPAGE='https://crates.io/crates/crc'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/crc-catalog-1.1.0 <dev-rust/crc-catalog-2.0.0_alpha:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/crc32fast/crc32fast-1.2.1.ebuild b/dev-rust/crc32fast/crc32fast-1.2.1.ebuild
index 9c370f6..39e71da 100644
--- a/dev-rust/crc32fast/crc32fast-1.2.1.ebuild
+++ b/dev-rust/crc32fast/crc32fast-1.2.1.ebuild
@@ -18,3 +18,6 @@
 DEPEND="
 	>=dev-rust/cfg-if-1:= <dev-rust/cfg-if-2
 "
+
+# could not compile
+RESTRICT="test"
diff --git a/dev-rust/criterion/criterion-0.3.2.ebuild b/dev-rust/criterion/criterion-0.3.2.ebuild
new file mode 100644
index 0000000..620da3d
--- /dev/null
+++ b/dev-rust/criterion/criterion-0.3.2.ebuild
@@ -0,0 +1,15 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty ${PN} crate"
+HOMEPAGE="https://github.com/bheisler/criterion.rs"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
diff --git a/dev-rust/cros_async/cros_async-0.1.0-r24.ebuild b/dev-rust/cros_async/cros_async-0.1.0-r24.ebuild
new file mode 100644
index 0000000..24ad767
--- /dev/null
+++ b/dev-rust/cros_async/cros_async-0.1.0-r24.ebuild
@@ -0,0 +1,62 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5acd4ee978d9fa1da9476c0338190e08c53ea2aa"
+CROS_WORKON_TREE="b334f296112adcbabfe01632be97e1770fd43075"
+CROS_WORKON_LOCALNAME="../platform/crosvm"
+CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="cros_async"
+CROS_WORKON_SUBDIRS_TO_COPY="cros_async"
+
+inherit cros-workon cros-rust
+
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
+DESCRIPTION="Rust async tools for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/cros_async"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/async-task-4*:=
+	>=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2
+	dev-rust/data_model:=
+	=dev-rust/futures-0.3*:=
+	dev-rust/io_uring:=
+	>=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3
+	=dev-rust/paste-1*:=
+	=dev-rust/pin-utils-0.1*:=
+	=dev-rust/remain-0.2*:=
+	=dev-rust/slab-0.4*:=
+	dev-rust/sync:=
+	dev-rust/sys_util:=
+	dev-rust/tempfile:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2
+"
+RDEPEND="${DEPEND}"
+
+src_test() {
+	# The io_uring implementation on kernels older than 5.10 was buggy so skip
+	# them if we're running on one of those kernels.
+	local cut_version="$(ver_cut 1-2 "$(uname -r)")"
+	if ver_test "${cut_version}" -lt 5.10; then
+		einfo "Skipping io_uring tests on kernel version < 5.10"
+	# TODO: Enable tests on ARM once the emulator supports io_uring.
+	elif ! cros_rust_is_direct_exec; then
+		einfo "Skipping uring tests on non-x86 platform"
+		local skip_tests=(
+			ring
+			io_ext
+			timer::tests::one_shot
+		)
+
+		local args=( $(printf -- "--skip %s\n" "${skip_tests[@]}") )
+		cros-rust_src_test -- "${args[@]}"
+	else
+		cros-rust_src_test
+	fi
+}
diff --git a/dev-rust/cros_async/cros_async-0.1.0-r9.ebuild b/dev-rust/cros_async/cros_async-0.1.0-r9.ebuild
deleted file mode 100644
index 5c12ef2..0000000
--- a/dev-rust/cros_async/cros_async-0.1.0-r9.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="c54cf6c8e9cb9f496d8295efde4ed1f27195461d"
-CROS_WORKON_TREE="671a7be7202d6125151e12fb7e4331d0d184cb5f"
-CROS_WORKON_LOCALNAME="../platform/crosvm"
-CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="cros_async"
-CROS_WORKON_SUBDIRS_TO_COPY="cros_async"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Rust async tools for Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/cros_async"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-DEPEND="
-	=dev-rust/async-task-4*:=
-	>=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2
-	dev-rust/data_model:=
-	=dev-rust/futures-0.3*:=
-	dev-rust/io_uring:=
-	>=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3
-	=dev-rust/paste-1*:=
-	=dev-rust/pin-utils-0.1*:=
-	=dev-rust/slab-0.4*:=
-	dev-rust/sync:=
-	dev-rust/sys_util:=
-	dev-rust/tempfile:=
-	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2
-"
-RDEPEND="${DEPEND}"
-
-src_test() {
-	# TODO: Enable tests on ARM once the emulator supports io_uring.
-	if ! cros_rust_is_direct_exec; then
-		einfo "Skipping uring tests on non-x86 platform"
-		local skip_tests=(
-			ring
-			io_ext
-			timer::tests::one_shot
-		)
-
-		local args=( $(printf -- "--skip %s\n" "${skip_tests[@]}") )
-		cros-rust_src_test -- "${args[@]}"
-	else
-		cros-rust_src_test
-	fi
-}
diff --git a/dev-rust/cros_async/cros_async-9999.ebuild b/dev-rust/cros_async/cros_async-9999.ebuild
index 70f9af8..b98715a 100644
--- a/dev-rust/cros_async/cros_async-9999.ebuild
+++ b/dev-rust/cros_async/cros_async-9999.ebuild
@@ -11,6 +11,9 @@
 
 inherit cros-workon cros-rust
 
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
 DESCRIPTION="Rust async tools for Chrome OS"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/cros_async"
 LICENSE="BSD-Google"
@@ -25,6 +28,7 @@
 	>=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3
 	=dev-rust/paste-1*:=
 	=dev-rust/pin-utils-0.1*:=
+	=dev-rust/remain-0.2*:=
 	=dev-rust/slab-0.4*:=
 	dev-rust/sync:=
 	dev-rust/sys_util:=
@@ -34,8 +38,13 @@
 RDEPEND="${DEPEND}"
 
 src_test() {
+	# The io_uring implementation on kernels older than 5.10 was buggy so skip
+	# them if we're running on one of those kernels.
+	local cut_version="$(ver_cut 1-2 "$(uname -r)")"
+	if ver_test "${cut_version}" -lt 5.10; then
+		einfo "Skipping io_uring tests on kernel version < 5.10"
 	# TODO: Enable tests on ARM once the emulator supports io_uring.
-	if ! cros_rust_is_direct_exec; then
+	elif ! cros_rust_is_direct_exec; then
 		einfo "Skipping uring tests on non-x86 platform"
 		local skip_tests=(
 			ring
diff --git a/dev-rust/cros_fuzz/cros_fuzz-0.1.0-r174.ebuild b/dev-rust/cros_fuzz/cros_fuzz-0.1.0-r174.ebuild
new file mode 100644
index 0000000..00d30ae
--- /dev/null
+++ b/dev-rust/cros_fuzz/cros_fuzz-0.1.0-r174.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5acd4ee978d9fa1da9476c0338190e08c53ea2aa"
+CROS_WORKON_TREE="c5944a955c7994afdaaee1facb2604801bb47e03"
+CROS_RUST_SUBDIR="common/cros-fuzz"
+
+CROS_WORKON_LOCALNAME="../platform/crosvm"
+CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE=""  # TODO(b/195126527): limit subtree to common/
+
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Support crate for running rust fuzzers on Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/cros-fuzz"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="fuzzer test"
+
+DEPEND="
+	=dev-rust/rand_core-0.4*:=
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/cros_fuzz/cros_fuzz-0.1.0-r34.ebuild b/dev-rust/cros_fuzz/cros_fuzz-0.1.0-r34.ebuild
deleted file mode 100644
index 3b24943..0000000
--- a/dev-rust/cros_fuzz/cros_fuzz-0.1.0-r34.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("90bf2838f56bffe127636b5ea4988485595819a8" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_RUST_SUBDIR="cros-fuzz"
-
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} common-mk"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Support crate for running rust fuzzers on Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/cros-fuzz"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="fuzzer test"
-
-DEPEND="
-	=dev-rust/rand_core-0.4*:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}"
diff --git a/dev-rust/cros_fuzz/cros_fuzz-9999.ebuild b/dev-rust/cros_fuzz/cros_fuzz-9999.ebuild
index 2ad780b..ea54f37 100644
--- a/dev-rust/cros_fuzz/cros_fuzz-9999.ebuild
+++ b/dev-rust/cros_fuzz/cros_fuzz-9999.ebuild
@@ -3,13 +3,16 @@
 
 EAPI=7
 
-CROS_RUST_SUBDIR="cros-fuzz"
+CROS_RUST_SUBDIR="common/cros-fuzz"
 
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform/crosvm"
+CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
 CROS_WORKON_OUTOFTREE_BUILD=1
 CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} common-mk"
+CROS_WORKON_SUBTREE=""  # TODO(b/195126527): limit subtree to common/
+
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
 
 inherit cros-workon cros-rust
 
diff --git a/dev-rust/cros_fuzz/files/chromeos-version.sh b/dev-rust/cros_fuzz/files/chromeos-version.sh
index e407145..f0852cc 100755
--- a/dev-rust/cros_fuzz/files/chromeos-version.sh
+++ b/dev-rust/cros_fuzz/files/chromeos-version.sh
@@ -6,4 +6,4 @@
 
 # Assumes the first 'version =' line in the Cargo.toml is the version for the
 # crate.
-awk '/^version = / { print $3 }' "$1/cros-fuzz/Cargo.toml" | head -n1 | tr -d '"'
+awk '/^version = / { print $3 }' "$1/common/cros-fuzz/Cargo.toml" | head -n1 | tr -d '"'
diff --git a/dev-rust/crossbeam-channel/crossbeam-channel-0.5.0.ebuild b/dev-rust/crossbeam-channel/crossbeam-channel-0.5.0.ebuild
index b7c09ca..6f08453 100644
--- a/dev-rust/crossbeam-channel/crossbeam-channel-0.5.0.ebuild
+++ b/dev-rust/crossbeam-channel/crossbeam-channel-0.5.0.ebuild
@@ -20,3 +20,6 @@
 	>=dev-rust/crossbeam-utils-0.8.0:= <dev-rust/crossbeam-utils-0.9.0
 	=dev-rust/rand-0.7*:=
 "
+
+# missing dev deps (signal-hook)
+RESTRICT="test"
diff --git a/dev-rust/crossbeam-deque/crossbeam-deque-0.8.0.ebuild b/dev-rust/crossbeam-deque/crossbeam-deque-0.8.0.ebuild
index a54f12e..e329884 100644
--- a/dev-rust/crossbeam-deque/crossbeam-deque-0.8.0.ebuild
+++ b/dev-rust/crossbeam-deque/crossbeam-deque-0.8.0.ebuild
@@ -20,3 +20,6 @@
 	=dev-rust/crossbeam-epoch-0.9*:=
 	=dev-rust/crossbeam-utils-0.8*:=
 "
+
+# error: could not compile `crossbeam-deque`
+RESTRICT="test"
diff --git a/dev-rust/crossbeam-epoch/crossbeam-epoch-0.9.0.ebuild b/dev-rust/crossbeam-epoch/crossbeam-epoch-0.9.0.ebuild
index f73c9e5..3ffa12e 100644
--- a/dev-rust/crossbeam-epoch/crossbeam-epoch-0.9.0.ebuild
+++ b/dev-rust/crossbeam-epoch/crossbeam-epoch-0.9.0.ebuild
@@ -23,3 +23,6 @@
 	>=dev-rust/scopeguard-1.1.0:= <dev-rust/scopeguard-2.0.0
 	=dev-rust/lazy_static-1*:=
 "
+
+# error: could not compile `crossbeam-epoch`
+RESTRICT="test"
diff --git a/dev-rust/crossbeam-utils/crossbeam-utils-0.8.3.ebuild b/dev-rust/crossbeam-utils/crossbeam-utils-0.8.3.ebuild
index df729e92d..3c278b8 100644
--- a/dev-rust/crossbeam-utils/crossbeam-utils-0.8.3.ebuild
+++ b/dev-rust/crossbeam-utils/crossbeam-utils-0.8.3.ebuild
@@ -19,3 +19,6 @@
 	=dev-rust/autocfg-1*:=
 	=dev-rust/cfg-if-1*:=
 	=dev-rust/lazy_static-1*:="
+
+# error: no matching package named `loom` found
+RESTRICT="test"
diff --git a/dev-rust/data_model/data_model-0.1.0-r38.ebuild b/dev-rust/data_model/data_model-0.1.0-r38.ebuild
deleted file mode 100644
index 7b68111..0000000
--- a/dev-rust/data_model/data_model-0.1.0-r38.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="76cc214ce771ab7dd0990b403e2a2c98dd0a4c80"
-CROS_WORKON_TREE="559dded7f8554570e0cbbc3d506d5f34fdc6eb86"
-CROS_WORKON_LOCALNAME="../platform/crosvm"
-CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="data_model"
-CROS_WORKON_SUBDIRS_TO_COPY="data_model"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Crates includes traits and types for safe interaction with raw memory."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/data_model"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-DEPEND="
-	dev-rust/assertions:=
-	dev-rust/libc:=
-	=dev-rust/serde-1*:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}
-	!!<=dev-rust/data_model-0.1.0-r13
-"
diff --git a/dev-rust/data_model/data_model-0.1.0-r40.ebuild b/dev-rust/data_model/data_model-0.1.0-r40.ebuild
new file mode 100644
index 0000000..ade8768
--- /dev/null
+++ b/dev-rust/data_model/data_model-0.1.0-r40.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="a5884b5a6e5e0123b76c43658cb1d7072a651544"
+CROS_WORKON_TREE="bc72a588dae8f80b80d49a4b0350116ac0edfc5b"
+CROS_WORKON_LOCALNAME="../platform/crosvm"
+CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="data_model"
+CROS_WORKON_SUBDIRS_TO_COPY="data_model"
+
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Crates includes traits and types for safe interaction with raw memory."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/data_model"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test"
+
+DEPEND="
+	dev-rust/assertions:=
+	dev-rust/libc:=
+	=dev-rust/remain-0.2*:=
+	=dev-rust/serde-1*:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}
+	!!<=dev-rust/data_model-0.1.0-r13
+"
diff --git a/dev-rust/data_model/data_model-9999.ebuild b/dev-rust/data_model/data_model-9999.ebuild
index 1a0093b..b96947d 100644
--- a/dev-rust/data_model/data_model-9999.ebuild
+++ b/dev-rust/data_model/data_model-9999.ebuild
@@ -9,6 +9,9 @@
 CROS_WORKON_SUBTREE="data_model"
 CROS_WORKON_SUBDIRS_TO_COPY="data_model"
 
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
 inherit cros-workon cros-rust
 
 DESCRIPTION="Crates includes traits and types for safe interaction with raw memory."
@@ -21,7 +24,9 @@
 DEPEND="
 	dev-rust/assertions:=
 	dev-rust/libc:=
+	=dev-rust/remain-0.2*:=
 	=dev-rust/serde-1*:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
 "
 # (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
 # installing binpkgs since the full source tree is required to use the crate.
diff --git a/dev-rust/dbus-codegen/Manifest b/dev-rust/dbus-codegen/Manifest
index ebcfb65..34c9245 100644
--- a/dev-rust/dbus-codegen/Manifest
+++ b/dev-rust/dbus-codegen/Manifest
@@ -1 +1,3 @@
 DIST dbus-codegen-0.5.0.crate 21586 BLAKE2B 5a1f275a836dbc610d2c238e42efc9e318163a47faa41709c396ce8975cdb75a6a5ecc1ce247b2d3600838c5d603a989d5e1d3ec3079bc9687ff64f406b020c8 SHA512 464315853cfdd642eaffe408ea4e0a575f22afff9c1109a04b16f6228d5b1573b2b268dca81905245bf3925d5a91fd4272dea51f870a548bb62666889cad87aa
+DIST dbus-codegen-0.9.1.crate 22497 BLAKE2B abf77f9541a6097fe1f5afc7c1849e9673e6aba8b9bdc0f25e6a577a148dd277d21f24ba9f6176b8e06a4b6ab36de33337e5ec360dd4f77afa4951b21c6aa748 SHA512 10ab618973e15399a653e50dc0dadac9c8a22e21d0156ab97e54b5064d43bfda4795e91610d33878b6307510da4645790be3f58179b0f06c6767e598d75263ef
+DIST dbus-codegen-0.9.1_p20210220.tar.gz 234479 BLAKE2B 2285fbdc3179e910459c4d96c740884633b9fa9a722524eda75ac3220567533f69c82b905cc79379689ffc48281a573dfa2fbd7597ccc71a47ab0cf63c7f834b SHA512 437607023187c1f2fc02fdbcf753ed39ae373b7396f4f13141500c60a9e87536e9e6994742d74a905a2c2222c7c0d649f259fc5c6dcaeb2dc5879524552323f2
diff --git a/dev-rust/dbus-codegen/OWNERS b/dev-rust/dbus-codegen/OWNERS
new file mode 100644
index 0000000..9c248e0
--- /dev/null
+++ b/dev-rust/dbus-codegen/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/libchromeos-rs/OWNERS
diff --git a/dev-rust/dbus-codegen/dbus-codegen-0.5.0-r1.ebuild b/dev-rust/dbus-codegen/dbus-codegen-0.5.0-r1.ebuild
index 6506e69..ebf2eae 100644
--- a/dev-rust/dbus-codegen/dbus-codegen-0.5.0-r1.ebuild
+++ b/dev-rust/dbus-codegen/dbus-codegen-0.5.0-r1.ebuild
@@ -16,7 +16,7 @@
 KEYWORDS="*"
 
 DEPEND="
-	>=dev-rust/clap-2.20.0:= <dev-rust/clap-3.0.0
+	>=dev-rust/clap-2.20.0:= <dev-rust/clap-3
 	>=dev-rust/dbus-0.8.0:= <dev-rust/dbus-0.9.0
 	>=dev-rust/xml-rs-0.3.0:= <dev-rust/xml-rs-0.4.0
 "
diff --git a/dev-rust/dbus-codegen/dbus-codegen-0.9.1.ebuild b/dev-rust/dbus-codegen/dbus-codegen-0.9.1.ebuild
new file mode 100644
index 0000000..ab1cf6e
--- /dev/null
+++ b/dev-rust/dbus-codegen/dbus-codegen-0.9.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Binary crate to generate Rust code from XML introspection data'
+HOMEPAGE='https://crates.io/crates/dbus-codegen'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="0/${PVR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/clap-2.20.0:= <dev-rust/clap-3.0.0_alpha
+	=dev-rust/dbus-0.9*:=
+	=dev-rust/dbus-tree-0.9*:=
+	>=dev-rust/xml-rs-0.8.3:= <dev-rust/xml-rs-0.9.0_alpha
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py, but the slot was
+# changed and the following was added:
+
+src_compile() {
+	ecargo_build
+}
+
+src_install() {
+	dobin "$(cros-rust_get_build_dir)/dbus-codegen-rust"
+}
diff --git a/dev-rust/dbus-codegen/dbus-codegen-0.9.1_p20210220-r1.ebuild b/dev-rust/dbus-codegen/dbus-codegen-0.9.1_p20210220-r1.ebuild
new file mode 120000
index 0000000..c0084a3
--- /dev/null
+++ b/dev-rust/dbus-codegen/dbus-codegen-0.9.1_p20210220-r1.ebuild
@@ -0,0 +1 @@
+dbus-codegen-0.9.1_p20210220.ebuild
\ No newline at end of file
diff --git a/dev-rust/dbus-codegen/dbus-codegen-0.9.1_p20210220.ebuild b/dev-rust/dbus-codegen/dbus-codegen-0.9.1_p20210220.ebuild
new file mode 100644
index 0000000..0a9346c
--- /dev/null
+++ b/dev-rust/dbus-codegen/dbus-codegen-0.9.1_p20210220.ebuild
@@ -0,0 +1,51 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Binary crate to generate Rust code from XML introspection data'
+HOMEPAGE='https://crates.io/crates/dbus-codegen'
+GIT_REV="006994e300f1211120fb707028c04acf76ac4ebe"
+SRC_URI="https://github.com/diwic/dbus-rs/archive/${GIT_REV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="0/${PVR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/clap-2*:=
+	=dev-rust/dbus-0.9*:=
+	=dev-rust/dbus-tree-0.9*:=
+	=dev-rust/dbus-crossroads-0.4*:=
+	>=dev-rust/xml-rs-0.8.3:= <dev-rust/xml-rs-0.9.0_alpha
+"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+	cros-rust_src_unpack
+
+	# For this ebuild we only care about the dbus-codegen subcrate.
+	mv "${WORKDIR}/dbus-rs-${GIT_REV}/dbus-codegen" "${WORKDIR}/${P}"
+}
+
+src_prepare() {
+	# Patch out the path-wise inclusion of dependencies and specify a version for
+	# dbus-crossroads.
+	sed -i \
+		-e 's/path = "\.\.\/dbus-crossroads"/version = "0.4.0"/g' \
+		-e 's/path = "[^"]\+", //g' "${S}/Cargo.toml"
+
+	cros-rust_src_prepare
+}
+
+src_compile() {
+	ecargo_build
+}
+
+src_install() {
+	dobin "$(cros-rust_get_build_dir)/dbus-codegen-rust"
+}
diff --git a/dev-rust/dbus-crossroads/Manifest b/dev-rust/dbus-crossroads/Manifest
new file mode 100644
index 0000000..34eca04f
--- /dev/null
+++ b/dev-rust/dbus-crossroads/Manifest
@@ -0,0 +1 @@
+DIST dbus-crossroads-0.4.0.crate 41625 BLAKE2B 03c0cdbe99357e401e89d3cafcb7ec33d2cb684157248daf8221af7adfb539336a344d2d801390be6497ba8fd15bc19f5d0d1e677f3cf10ddce9b80a51d1adcf SHA512 457b105534ac22bb099f9aca7ded8abbcc960bfde0d4ede38db17baba97608522ab763c471128cf54c8307409fd6937e8a12ec293881bc93c94e71e8267969cb
diff --git a/dev-rust/dbus-crossroads/OWNERS b/dev-rust/dbus-crossroads/OWNERS
new file mode 100644
index 0000000..9c248e0
--- /dev/null
+++ b/dev-rust/dbus-crossroads/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/libchromeos-rs/OWNERS
diff --git a/dev-rust/dbus-crossroads/dbus-crossroads-0.4.0.ebuild b/dev-rust/dbus-crossroads/dbus-crossroads-0.4.0.ebuild
new file mode 100644
index 0000000..42f5022
--- /dev/null
+++ b/dev-rust/dbus-crossroads/dbus-crossroads-0.4.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Framework for writing D-Bus method handlers'
+HOMEPAGE='https://crates.io/crates/dbus-crossroads'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/dbus-0.9.3:= <dev-rust/dbus-0.10.0_alpha
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/dbus-tree/Manifest b/dev-rust/dbus-tree/Manifest
new file mode 100644
index 0000000..55e5f5f
--- /dev/null
+++ b/dev-rust/dbus-tree/Manifest
@@ -0,0 +1 @@
+DIST dbus-tree-0.9.1.crate 23950 BLAKE2B c33d6dd5c3fe44628fe347b0db3ccd52557af63ef95f2b29aa4d9fcfacf92002be15b6d1d489d05f9e520353ca92abe68919fa29e53adc2bff38a5becdc8621d SHA512 1e5d9f4b8c9b4d2089dbc351c77d67b27fab9a0aaabb70089685518e2792802ba4d847c487e8876d4df244f7468d0c20c40b550ae39faa37e6013d973e77b0db
diff --git a/dev-rust/dbus-tree/OWNERS b/dev-rust/dbus-tree/OWNERS
new file mode 100644
index 0000000..9c248e0
--- /dev/null
+++ b/dev-rust/dbus-tree/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/libchromeos-rs/OWNERS
diff --git a/dev-rust/dbus-tree/dbus-tree-0.9.1.ebuild b/dev-rust/dbus-tree/dbus-tree-0.9.1.ebuild
new file mode 100644
index 0000000..bb291a1
--- /dev/null
+++ b/dev-rust/dbus-tree/dbus-tree-0.9.1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Framework for writing D-Bus method handlers (legacy)'
+HOMEPAGE='https://crates.io/crates/dbus-tree'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/dbus-0.9*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/dbus/Manifest b/dev-rust/dbus/Manifest
index e59ca70..22c6b45 100644
--- a/dev-rust/dbus/Manifest
+++ b/dev-rust/dbus/Manifest
@@ -1,2 +1,3 @@
 DIST dbus-0.6.1.crate 76381 BLAKE2B d17ceb16b8390dfee0df6e25adf47a749e141a4669e5a31497a5079ddb2bb15a3c75ec4bb7ecbe3bc3e44ade94493855780fdde59d367a09d26fa6c2aff06254 SHA512 0e7ceeb5578d64e7b0e57ae67667d848d185815110cd80c642a887e6b390db376e3a9b672e4b7a2b7e81d50e2883ab0370cf6d3730dabb38629a124782d601ed
 DIST dbus-0.8.4.crate 114517 BLAKE2B cc26708c7b7a76ee79c314de105ab2428500fbb531ac45b1b2c4fed62e4336c51e28505d3b084e4d8a96cd2cb30e2de9954bf79fd3c31e276cbaa360534489f2 SHA512 1e95fe75d5474ce745917eaa95d015d7706af4b37e010d265be265cc392bd3e0e8eaf03a4b9edefab575051a9af1eeb33d8e96d2c63c6f16c71ad9f6b6f7be8c
+DIST dbus-0.9.3.crate 96416 BLAKE2B 7a8ef583c3f79f8792634f6be376d74d8a79fd6eaa61a378b365ec059ebe25b5a8f17728a9df6623b47eef80aca10930db784971ef71e39c0bb48254ddad4d6e SHA512 3f45b0568065c32250ce076efcf2944a1e6a4d3c55cc53a5031949fd70840aa183e01199e12f96131c0c54861d800a97b140ee10889d83ecff7d4ae1338358f5
diff --git a/dev-rust/dbus/OWNERS b/dev-rust/dbus/OWNERS
new file mode 100644
index 0000000..9c248e0
--- /dev/null
+++ b/dev-rust/dbus/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/libchromeos-rs/OWNERS
diff --git a/dev-rust/dbus/dbus-0.6.1-r2.ebuild b/dev-rust/dbus/dbus-0.6.1-r2.ebuild
new file mode 120000
index 0000000..a291829
--- /dev/null
+++ b/dev-rust/dbus/dbus-0.6.1-r2.ebuild
@@ -0,0 +1 @@
+dbus-0.6.1.ebuild
\ No newline at end of file
diff --git a/dev-rust/dbus/dbus-0.6.1.ebuild b/dev-rust/dbus/dbus-0.6.1.ebuild
index 2e828cb..b05a4fd 100644
--- a/dev-rust/dbus/dbus-0.6.1.ebuild
+++ b/dev-rust/dbus/dbus-0.6.1.ebuild
@@ -1,7 +1,7 @@
 # Copyright 2019 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 
 inherit cros-rust
 
@@ -17,3 +17,4 @@
 	>=dev-rust/libdbus-sys-0.1.2:= <dev-rust/libdbus-sys-0.2
 	>=dev-rust/tempdir-0.3.0:=
 "
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/dbus/dbus-0.8.4.ebuild b/dev-rust/dbus/dbus-0.8.4.ebuild
index e8dc0d1..66af907 100644
--- a/dev-rust/dbus/dbus-0.8.4.ebuild
+++ b/dev-rust/dbus/dbus-0.8.4.ebuild
@@ -20,3 +20,6 @@
 	=dev-rust/futures-0.3*:=
 "
 RDEPEND="${DEPEND}"
+
+# error: could not compile `dbus`
+RESTRICT="test"
diff --git a/dev-rust/dbus/dbus-0.9.3.ebuild b/dev-rust/dbus/dbus-0.9.3.ebuild
new file mode 100644
index 0000000..1eaccb56
--- /dev/null
+++ b/dev-rust/dbus/dbus-0.9.3.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+CROS_RUST_REMOVE_TARGET_CFG=1
+
+inherit cros-rust
+
+DESCRIPTION='Bindings to D-Bus, which is a bus commonly used on Linux for inter-process communication.'
+HOMEPAGE='https://crates.io/crates/dbus'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/futures-channel-0.3*:=
+	=dev-rust/futures-executor-0.3*:=
+	=dev-rust/futures-util-0.3*:=
+	>=dev-rust/libc-0.2.66:= <dev-rust/libc-0.3.0_alpha
+	=dev-rust/libdbus-sys-0.2*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/defmt-macros/Manifest b/dev-rust/defmt-macros/Manifest
new file mode 100644
index 0000000..4a24f51
--- /dev/null
+++ b/dev-rust/defmt-macros/Manifest
@@ -0,0 +1 @@
+DIST defmt-macros-0.2.3.crate 10937 BLAKE2B ce2b762cae90a1f601169dc8f68d17798e802957b948d6343564241b071fd00c9217b1d4a25cde0584bfa0786b77852b607ce4a74294566b802a477f56b38237 SHA512 ad92bff7c8ce22f1c31e41a5f9f15e6a667f0decb1f5923591a3bcd80caa0a891450a17dd49c17bcb3f7fdcac9be809f24588747853bb953c27f951b395a1403
diff --git a/dev-rust/defmt-macros/OWNERS b/dev-rust/defmt-macros/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/defmt-macros/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/defmt-macros/defmt-macros-0.2.3.ebuild b/dev-rust/defmt-macros/defmt-macros-0.2.3.ebuild
new file mode 100644
index 0000000..0049e44
--- /dev/null
+++ b/dev-rust/defmt-macros/defmt-macros-0.2.3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='defmt macros'
+HOMEPAGE='https://crates.io/crates/defmt-macros'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	~dev-rust/defmt-parser-0.2.2:=
+	>=dev-rust/proc-macro2-1.0.27:= <dev-rust/proc-macro2-2.0.0
+	>=dev-rust/quote-1.0.9:= <dev-rust/quote-2.0.0
+	=dev-rust/syn-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/defmt-parser/Manifest b/dev-rust/defmt-parser/Manifest
new file mode 100644
index 0000000..ab47b98
--- /dev/null
+++ b/dev-rust/defmt-parser/Manifest
@@ -0,0 +1 @@
+DIST defmt-parser-0.2.2.crate 7317 BLAKE2B dd7aa74fee22e4ae404c1ec8c202d2d24727e2132034f889e737d868260e38956b8e25250d8fbdf58c4e072c889b5e60d89c3a2d6b96d9e99bf4acc11a60cf9f SHA512 f2b9b6d56c247155c71745f7166c4c223681485ce16da43b7cff6174bd4d72278215e5c45c9a0586b71a1c41420476f3ccbeabd64881eb3a1fafc6498cae6a45
diff --git a/dev-rust/defmt-parser/OWNERS b/dev-rust/defmt-parser/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/defmt-parser/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/defmt-parser/defmt-parser-0.2.2.ebuild b/dev-rust/defmt-parser/defmt-parser-0.2.2.ebuild
new file mode 100644
index 0000000..044aa00
--- /dev/null
+++ b/dev-rust/defmt-parser/defmt-parser-0.2.2.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Parsing library for defmt format strings'
+HOMEPAGE='https://crates.io/crates/defmt-parser'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/defmt-rtt/Manifest b/dev-rust/defmt-rtt/Manifest
new file mode 100644
index 0000000..fefc9ba
--- /dev/null
+++ b/dev-rust/defmt-rtt/Manifest
@@ -0,0 +1 @@
+DIST defmt-rtt-0.2.0.crate 3556 BLAKE2B 62ff97528e7e5dcb0308f6b4bc29d66842b1eab905b2e79ae2ff0ee6870d76e03d4823b572f3d16d2c2fc86f413e9da692eebf30c5f558bd0d0c1cb9a8162f9a SHA512 d1a9fb5633af4e4cb8e5c6af558915c80114c8cb1bd16c04a34ad74f88bfff9b484d0846d9b3273c235e9c3f7974df7cd9d61156ddfa35efe14249b95e71ec87
diff --git a/dev-rust/defmt-rtt/OWNERS b/dev-rust/defmt-rtt/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/defmt-rtt/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/defmt-rtt/defmt-rtt-0.2.0.ebuild b/dev-rust/defmt-rtt/defmt-rtt-0.2.0.ebuild
new file mode 100644
index 0000000..421ffc2
--- /dev/null
+++ b/dev-rust/defmt-rtt/defmt-rtt-0.2.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Transmit defmt log messages over the RTT (Real-Time Transfer) protocol'
+HOMEPAGE='https://crates.io/crates/defmt-rtt'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/cortex-m-0.6.3:= <dev-rust/cortex-m-0.7.0
+	=dev-rust/defmt-0.2*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/defmt/Manifest b/dev-rust/defmt/Manifest
new file mode 100644
index 0000000..adc537f
--- /dev/null
+++ b/dev-rust/defmt/Manifest
@@ -0,0 +1 @@
+DIST defmt-0.2.3.crate 81883 BLAKE2B 0cb5cf191254751b04f0736b4e0ebcd4a1a8635cfc44e51851df8fa03b06da0828dc853ad5d2dee2c116ffc39d929683d753a33e43c48f4c360ab1fcdcdcab9c SHA512 ec83de3226a265d6c8907067b6416145965f467443d1b34f3aff3600b9e1187807a62dc604315d0a14b60f067a06d14d0e9c768f8e7a99d5503d13fb08772228
diff --git a/dev-rust/defmt/OWNERS b/dev-rust/defmt/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/defmt/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/defmt/defmt-0.2.3.ebuild b/dev-rust/defmt/defmt-0.2.3.ebuild
new file mode 100644
index 0000000..510f5ab
--- /dev/null
+++ b/dev-rust/defmt/defmt-0.2.3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A highly efficient logging framework that targets resource-constrained devices, like microcontrollers'
+HOMEPAGE='https://crates.io/crates/defmt'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/defmt-macros-0.2.2:= <dev-rust/defmt-macros-0.3.0
+	=dev-rust/semver-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+RESTRICT="test"
diff --git a/dev-rust/derivative/derivative-2.1.1.ebuild b/dev-rust/derivative/derivative-2.1.1.ebuild
index be550bd..4005ed6 100644
--- a/dev-rust/derivative/derivative-2.1.1.ebuild
+++ b/dev-rust/derivative/derivative-2.1.1.ebuild
@@ -26,3 +26,5 @@
 	# This consists of a recipe "publish_doc" which is unnecessary and requires node js.
 	mv "${S}"/Makefile "${S}"/ignore-docs-Makefile
 }
+
+RESTRICT="test"
diff --git a/dev-rust/digest/OWNERS b/dev-rust/digest/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/digest/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/digest/digest-0.9.0.ebuild b/dev-rust/digest/digest-0.9.0.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/digest/digest-0.9.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/ed25519-compact/Manifest b/dev-rust/ed25519-compact/Manifest
new file mode 100644
index 0000000..e483065
--- /dev/null
+++ b/dev-rust/ed25519-compact/Manifest
@@ -0,0 +1 @@
+DIST ed25519-compact-0.1.9.crate 19732 BLAKE2B 3b33a979cce15382065ffee869a23fdcce58e317e58e6c39209a91ba23c041bfeb8442fdf8bc34f2097d83874b568db1b2e222a31fd195675f095cf46d02c7a6 SHA512 5763633844817f359ac8da2daf0903cc699ebe507ee6fdcf6626853bed9d2f042a5ae59646a31ab8821e52e82b5c6c21439313b6dda4ff7c419d8afb6712f7c4
diff --git a/dev-rust/ed25519-compact/OWNERS b/dev-rust/ed25519-compact/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/ed25519-compact/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/ed25519-compact/ed25519-compact-0.1.9.ebuild b/dev-rust/ed25519-compact/ed25519-compact-0.1.9.ebuild
new file mode 100644
index 0000000..a067939
--- /dev/null
+++ b/dev-rust/ed25519-compact/ed25519-compact-0.1.9.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A small, self-contained, wasm-friendly Ed25519 implementation'
+HOMEPAGE='https://crates.io/crates/ed25519-compact'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="ISC"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/ed25519-1*:=
+	=dev-rust/getrandom-0.2*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/ed25519/OWNERS b/dev-rust/ed25519/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/ed25519/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/ed25519/ed25519-1.0.0.ebuild b/dev-rust/ed25519/ed25519-1.0.0.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/ed25519/ed25519-1.0.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/embedded-hal-mock/Manifest b/dev-rust/embedded-hal-mock/Manifest
new file mode 100644
index 0000000..add2eee
--- /dev/null
+++ b/dev-rust/embedded-hal-mock/Manifest
@@ -0,0 +1 @@
+DIST embedded-hal-mock-0.8.0.crate 18203 BLAKE2B 3b512bd344f4dc261d0d54e6b5dbd908664f9c56274a250a26bf7487af92fefc3ba506c1e1a4ada14ec312dcfabdc965799c7f3a1beb89f999c72ac1e2f9127f SHA512 2582fd54e6fcff2a370b28631dc953d7db392d8d76683caeffd92c8fa4b0d802daa369ff04e0c60f4199bfe2fdccd8dec218da1e501e4bfdb021043b2b8588c4
diff --git a/dev-rust/embedded-hal-mock/OWNERS b/dev-rust/embedded-hal-mock/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/embedded-hal-mock/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/embedded-hal-mock/embedded-hal-mock-0.8.0.ebuild b/dev-rust/embedded-hal-mock/embedded-hal-mock-0.8.0.ebuild
new file mode 100644
index 0000000..d8668d9
--- /dev/null
+++ b/dev-rust/embedded-hal-mock/embedded-hal-mock-0.8.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A Hardware Abstraction Layer (HAL) mock for embedded systems'
+HOMEPAGE='https://crates.io/crates/embedded-hal-mock'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/nb-0.1.3:= <dev-rust/nb-0.2.0
+	>=dev-rust/embedded-hal-0.2.5:= <dev-rust/embedded-hal-0.3.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was crafted by hand.
diff --git a/dev-rust/embedded-hal/Manifest b/dev-rust/embedded-hal/Manifest
new file mode 100644
index 0000000..307bd7e
--- /dev/null
+++ b/dev-rust/embedded-hal/Manifest
@@ -0,0 +1,2 @@
+DIST embedded-hal-0.2.5.crate 27971 BLAKE2B c885276ccf9ef538c3d41bb1c6b023e06d045c781fb1f0dff39781f628d447e3193e26c73772f516b11d189c3839c3f8204456d3238335ad98b689faa38eac03 SHA512 ad18cbf29f4290fd2e89f8c7e9af6dcac3f21d6151526572f98e0c14bac40d4e77979b61255b6057f934e9a4417cf03862199a632b17eb4b1988428e90f204d3
+DIST embedded-hal-0.2.6.crate 30039 BLAKE2B 7935c65e61f8ec50e6c93171a612e37fb5408de12f4e3d1c1a05de4fb080772eab0aa4358d8a7b35c32ecdc1bd51a40acc7305db213882d69771756ca7531bb9 SHA512 c510772bc050d6bbab181410bc36e5e8ef36141d006cad9fa736db6a2aeaf53ec93cb2a113938385d2c2c5330100fcc43715207fef357a1de5833ed100f51f8d
diff --git a/dev-rust/embedded-hal/OWNERS b/dev-rust/embedded-hal/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/embedded-hal/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/embedded-hal/embedded-hal-0.2.5.ebuild b/dev-rust/embedded-hal/embedded-hal-0.2.5.ebuild
new file mode 100644
index 0000000..7d3f250
--- /dev/null
+++ b/dev-rust/embedded-hal/embedded-hal-0.2.5.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A Hardware Abstraction Layer (HAL) for embedded systems'
+HOMEPAGE='https://crates.io/crates/embedded-hal'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/nb-0.1.3:= <dev-rust/nb-0.2.0
+	>=dev-rust/void-1.0.2:= <dev-rust/void-2.0.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+RESTRICT="test"
diff --git a/dev-rust/embedded-hal/embedded-hal-0.2.6.ebuild b/dev-rust/embedded-hal/embedded-hal-0.2.6.ebuild
new file mode 100644
index 0000000..0d3aac2
--- /dev/null
+++ b/dev-rust/embedded-hal/embedded-hal-0.2.6.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A Hardware Abstraction Layer (HAL) for embedded systems'
+HOMEPAGE='https://crates.io/crates/embedded-hal'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/nb-0.1.3:= <dev-rust/nb-0.2.0
+	>=dev-rust/void-1.0.2:= <dev-rust/void-2.0.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/enumn/enumn-0.1.0-r13.ebuild b/dev-rust/enumn/enumn-0.1.0-r13.ebuild
index d36dc98..5d5b5cb 100644
--- a/dev-rust/enumn/enumn-0.1.0-r13.ebuild
+++ b/dev-rust/enumn/enumn-0.1.0-r13.ebuild
@@ -11,6 +11,9 @@
 # using "provided by ebuild" macro which supported by cros-rust.
 CROS_WORKON_SUBTREE="enumn"
 
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
 inherit cros-workon cros-rust
 
 DESCRIPTION="Convert number to enum"
diff --git a/dev-rust/enumn/enumn-9999.ebuild b/dev-rust/enumn/enumn-9999.ebuild
index 2cc84c4..a62b144 100644
--- a/dev-rust/enumn/enumn-9999.ebuild
+++ b/dev-rust/enumn/enumn-9999.ebuild
@@ -9,6 +9,9 @@
 # using "provided by ebuild" macro which supported by cros-rust.
 CROS_WORKON_SUBTREE="enumn"
 
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
 inherit cros-workon cros-rust
 
 DESCRIPTION="Convert number to enum"
diff --git a/dev-rust/env_logger/Manifest b/dev-rust/env_logger/Manifest
index 9ff75b2..ef395ae 100644
--- a/dev-rust/env_logger/Manifest
+++ b/dev-rust/env_logger/Manifest
@@ -1,2 +1,3 @@
+DIST env_logger-0.5.13.crate 25275 BLAKE2B 02d13c40bafa9e403ba1e3582e296d132061ef020183d39a071f9ab4606a8f45cd211708ab8757d6dd9c04bf4b79b429c0db4bc293a8dbce0506b643d1a6aba5 SHA512 46739cbdcfb34e56b65c7839a5d62ec0f285359dd415bcdcbd2de5ad8e8015aee5a31e92c202c94da5d75235dee4f49ad8585fb852be1f8b2852438922ed4a99
 DIST env_logger-0.6.1.crate 28567 BLAKE2B a7302e44a807dcb1b523e1dde683a040837b1de2fbda5e8e7347478f77d4b7a39521aadd1d6d42dffbb6229e0dd6bd1b2b9fc47b860db45281a95612dd78faab SHA512 7e5142fa24e46aeb246515f42f9fc561364f266a693ec9f8c45dbe96d31174bf5663ef6233f41a5f96849dd19b61e2a97ab7ca1a7a55c51f741f4efa5af371c5
 DIST env_logger-0.8.3.crate 32543 BLAKE2B 513790f39c63eb096b0fb62687c74262b42b0edc3e6fc2e2f2fdd44463eb4cfbf67560136ec206e252afa1477fabf66917f4fc0e8192e040670f98f3d7c4bb51 SHA512 7f6c3c79b8f4efb8d1d4e4b879c1c78a427f15669244ce1eca869aea9bcad950ffa5b59f3f8e4513e085c2daf1f5857313b374e238fc78b731bba2646ec895ff
diff --git a/dev-rust/env_logger/OWNERS b/dev-rust/env_logger/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/env_logger/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/env_logger/env_logger-0.5.13-r1.ebuild b/dev-rust/env_logger/env_logger-0.5.13-r1.ebuild
new file mode 120000
index 0000000..bc909f1
--- /dev/null
+++ b/dev-rust/env_logger/env_logger-0.5.13-r1.ebuild
@@ -0,0 +1 @@
+env_logger-0.5.13.ebuild
\ No newline at end of file
diff --git a/dev-rust/env_logger/env_logger-0.5.13.ebuild b/dev-rust/env_logger/env_logger-0.5.13.ebuild
index 032fa9f..3d812c6 100644
--- a/dev-rust/env_logger/env_logger-0.5.13.ebuild
+++ b/dev-rust/env_logger/env_logger-0.5.13.ebuild
@@ -1,15 +1,31 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 
-CROS_RUST_EMPTY_CRATE=1
+CROS_RUST_REMOVE_DEV_DEPS=1
 
 inherit cros-rust
 
-DESCRIPTION="Empty ${PN} crate"
-HOMEPAGE=""
+DESCRIPTION='A logging implementation for "log" which is configured via an environment
+variable.'
+HOMEPAGE='https://crates.io/crates/env_logger'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
 
 LICENSE="|| ( MIT Apache-2.0 )"
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/atty-0.2.5:= <dev-rust/atty-0.3.0
+	>=dev-rust/humantime-1.1.0:= <dev-rust/humantime-2.0.0
+	=dev-rust/log-0.4*:=
+	>=dev-rust/regex-1.0.3:= <dev-rust/regex-2.0.0
+	=dev-rust/termcolor-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+# Tests can't be built due to compilation errors.
+RESTRICT="test"
diff --git a/dev-rust/env_logger/env_logger-0.6.1-r2.ebuild b/dev-rust/env_logger/env_logger-0.6.1-r2.ebuild
new file mode 120000
index 0000000..e9bc7eb
--- /dev/null
+++ b/dev-rust/env_logger/env_logger-0.6.1-r2.ebuild
@@ -0,0 +1 @@
+env_logger-0.6.1.ebuild
\ No newline at end of file
diff --git a/dev-rust/env_logger/env_logger-0.6.1.ebuild b/dev-rust/env_logger/env_logger-0.6.1.ebuild
index 8208ea0..dbc29e7 100644
--- a/dev-rust/env_logger/env_logger-0.6.1.ebuild
+++ b/dev-rust/env_logger/env_logger-0.6.1.ebuild
@@ -1,7 +1,7 @@
 # Copyright 2019 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 
 inherit cros-rust
 
@@ -14,9 +14,10 @@
 KEYWORDS="*"
 
 DEPEND="
-	=dev-rust/log-0.4*:=
-	>=dev-rust/atty-0.2.5:=
+	>=dev-rust/atty-0.2.5:= <dev-rust/atty-0.3.0
 	=dev-rust/humantime-1.1*:=
-	>=dev-rust/regex-1.0.3:=
-	>=dev-rust/termcolor-1.0.2:=
+	=dev-rust/log-0.4*:=
+	>=dev-rust/regex-1.0.3:= <dev-rust/regex-2.0.0
+	>=dev-rust/termcolor-1.0.2:= <dev-rust/termcolor-2.0.0
 "
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/eui48/eui48-0.4.6-r2.ebuild b/dev-rust/eui48/eui48-0.4.6-r2.ebuild
new file mode 120000
index 0000000..53dd810
--- /dev/null
+++ b/dev-rust/eui48/eui48-0.4.6-r2.ebuild
@@ -0,0 +1 @@
+eui48-0.4.6.ebuild
\ No newline at end of file
diff --git a/dev-rust/eui48/eui48-0.4.6.ebuild b/dev-rust/eui48/eui48-0.4.6.ebuild
index 4badc97..67d855a 100644
--- a/dev-rust/eui48/eui48-0.4.6.ebuild
+++ b/dev-rust/eui48/eui48-0.4.6.ebuild
@@ -1,7 +1,7 @@
 # Copyright 2019 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 
 inherit cros-rust
 
@@ -14,7 +14,8 @@
 KEYWORDS="*"
 
 DEPEND="
-	>=dev-rust/rustc-serialize-0.3.24:=
-	>=dev-rust/serde-1.0.80:=
-	>=dev-rust/serde_json-1.0.37:=
+	>=dev-rust/rustc-serialize-0.3.24:= <dev-rust/rustc-serialize-0.4.0
+	>=dev-rust/serde-1.0.80:= <dev-rust/serde-2.0.0
+	>=dev-rust/serde_json-1.0.37:= <dev-rust/serde_json-2.0.0
 "
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/flate2/flate2-1.0.20.ebuild b/dev-rust/flate2/flate2-1.0.20.ebuild
index 73e8b76..fcc36e5 100644
--- a/dev-rust/flate2/flate2-1.0.20.ebuild
+++ b/dev-rust/flate2/flate2-1.0.20.ebuild
@@ -33,3 +33,6 @@
 	# Delete the optional zlib-ng dependency.
 	sed -i '/zlib-ng/d' "${S}/Cargo.toml"
 }
+
+# could not compile
+RESTRICT="test"
diff --git a/dev-rust/flexbuffers/Manifest b/dev-rust/flexbuffers/Manifest
index d60a47fc..f8566dd 100644
--- a/dev-rust/flexbuffers/Manifest
+++ b/dev-rust/flexbuffers/Manifest
@@ -1 +1,2 @@
 DIST flexbuffers-0.1.1.crate 24544 BLAKE2B 7d30e1354ff328d661bb8e766c3a308b58a5dea12742de4ca85ee59dfc68ae445b05f80e0de1c481429431f80dfdd74b3a6d19ee599a71b51314d8e1f3af0c6c SHA512 a92931e680d362089a1e47fd2c38756e41d916aede4790bda75c24fc0ce298fcd95f66dc01da53a5b280995df1f373a26a1fc207b31ae08ad7d643c47ff68f73
+DIST flexbuffers-2.0.0.crate 26355 BLAKE2B 0cb0732b40ed8fd7deb0116a95a6173de4ccd6ff69761d12d7166fd532c2183a67493fc5f4fbfd6a0e090545d8d2670997ac1fe13d8842587ec86aaed44ec8e7 SHA512 4e34548f6cd4ffaba1ba85f902013463abcbcd47cb3d7119076ff31df0c5c09de28c398f58e9a95d461ec742fc9106ac9b11c3850a5f7c809f1725c8e5f925aa
diff --git a/dev-rust/flexbuffers/flexbuffers-0.1.1-r1.ebuild b/dev-rust/flexbuffers/flexbuffers-0.1.1-r1.ebuild
new file mode 120000
index 0000000..9a7031b
--- /dev/null
+++ b/dev-rust/flexbuffers/flexbuffers-0.1.1-r1.ebuild
@@ -0,0 +1 @@
+flexbuffers-0.1.1.ebuild
\ No newline at end of file
diff --git a/dev-rust/flexbuffers/flexbuffers-0.1.1.ebuild b/dev-rust/flexbuffers/flexbuffers-0.1.1.ebuild
index 9f6b37d..4dc24d1 100644
--- a/dev-rust/flexbuffers/flexbuffers-0.1.1.ebuild
+++ b/dev-rust/flexbuffers/flexbuffers-0.1.1.ebuild
@@ -14,9 +14,10 @@
 KEYWORDS="*"
 
 DEPEND="
-	>=dev-rust/bitflags-1.2.1:= <dev-rust/bitflags-2
-	>=dev-rust/byteorder-1.3.2:= <dev-rust/byteorder-2
+	>=dev-rust/bitflags-1.2.1 <dev-rust/bitflags-2:=
+	>=dev-rust/byteorder-1.3.2 <dev-rust/byteorder-2:=
 	=dev-rust/num_enum-0.5*:=
-	>=dev-rust/serde-1.0.114:= <dev-rust/serde-2
+	>=dev-rust/serde-1.0.114 <dev-rust/serde-2:=
 	=dev-rust/serde_derive-1*:=
 "
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/flexbuffers/flexbuffers-2.0.0.ebuild b/dev-rust/flexbuffers/flexbuffers-2.0.0.ebuild
new file mode 100644
index 0000000..a3a2669
--- /dev/null
+++ b/dev-rust/flexbuffers/flexbuffers-2.0.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Official FlexBuffers Rust runtime library.'
+HOMEPAGE='https://google.github.io/flatbuffers/flexbuffers'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="Apache-2.0"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/bitflags-1.2.1 <dev-rust/bitflags-2.0.0_alpha:=
+	>=dev-rust/byteorder-1.4.2 <dev-rust/byteorder-2.0.0_alpha:=
+	>=dev-rust/num_enum-0.5.1 <dev-rust/num_enum-0.6.0_alpha:=
+	>=dev-rust/serde-1.0.119 <dev-rust/serde-2.0.0_alpha:=
+	>=dev-rust/serde_derive-1.0.119 <dev-rust/serde_derive-2.0.0_alpha:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/foreign-types/foreign-types-0.3.2-r1.ebuild b/dev-rust/foreign-types/foreign-types-0.3.2-r1.ebuild
new file mode 120000
index 0000000..67c0a47
--- /dev/null
+++ b/dev-rust/foreign-types/foreign-types-0.3.2-r1.ebuild
@@ -0,0 +1 @@
+foreign-types-0.3.2.ebuild
\ No newline at end of file
diff --git a/dev-rust/foreign-types/foreign-types-0.3.2.ebuild b/dev-rust/foreign-types/foreign-types-0.3.2.ebuild
index 360b9f5..fee72e9 100644
--- a/dev-rust/foreign-types/foreign-types-0.3.2.ebuild
+++ b/dev-rust/foreign-types/foreign-types-0.3.2.ebuild
@@ -16,3 +16,5 @@
 DEPEND="
 	>=dev-rust/foreign-types-shared-0.1:=
 "
+
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/fs2/fs2-0.4.3.ebuild b/dev-rust/fs2/fs2-0.4.3.ebuild
index 804a9b8..2601fda 100644
--- a/dev-rust/fs2/fs2-0.4.3.ebuild
+++ b/dev-rust/fs2/fs2-0.4.3.ebuild
@@ -18,3 +18,6 @@
 DEPEND="
 	>=dev-rust/libc-0.2.30:= <dev-rust/libc-0.3.0
 "
+
+# error: could not compile `fs2`
+RESTRICT="test"
diff --git a/dev-rust/futures-channel/futures-channel-0.3.13.ebuild b/dev-rust/futures-channel/futures-channel-0.3.13.ebuild
index 5f9abaf..faded63 100644
--- a/dev-rust/futures-channel/futures-channel-0.3.13.ebuild
+++ b/dev-rust/futures-channel/futures-channel-0.3.13.ebuild
@@ -22,3 +22,6 @@
 RDEPEND="${DEPEND}
 	!~dev-rust/${PN}-0.3.1
 "
+
+# error: could not compile `futures-channel`
+RESTRICT="test"
diff --git a/dev-rust/futures-executor/futures-executor-0.3.13.ebuild b/dev-rust/futures-executor/futures-executor-0.3.13.ebuild
index dab3fd1..35ba86f 100644
--- a/dev-rust/futures-executor/futures-executor-0.3.13.ebuild
+++ b/dev-rust/futures-executor/futures-executor-0.3.13.ebuild
@@ -24,3 +24,6 @@
 RDEPEND="${DEPEND}
 	!~dev-rust/${PN}-0.3.1
 "
+
+# error: could not compile `futures-executor`
+RESTRICT="test"
diff --git a/dev-rust/futures-util/futures-util-0.3.13.ebuild b/dev-rust/futures-util/futures-util-0.3.13.ebuild
index e96e653..965f9db 100644
--- a/dev-rust/futures-util/futures-util-0.3.13.ebuild
+++ b/dev-rust/futures-util/futures-util-0.3.13.ebuild
@@ -38,3 +38,6 @@
 	${DEPEND}
 	!~dev-rust/${PN}-0.3.1
 "
+
+# error: no matching package named `futures` found
+RESTRICT="test"
diff --git a/dev-rust/futures/futures-0.3.13.ebuild b/dev-rust/futures/futures-0.3.13.ebuild
index 7c57cd6..930c1fd 100644
--- a/dev-rust/futures/futures-0.3.13.ebuild
+++ b/dev-rust/futures/futures-0.3.13.ebuild
@@ -27,3 +27,6 @@
 RDEPEND="${DEPEND}
 	!~dev-rust/${PN}-0.3.1
 "
+
+# error: could not compile `futures`
+RESTRICT="test"
diff --git a/dev-rust/gdbstub/Manifest b/dev-rust/gdbstub/Manifest
index 282a22a..9aeccdf 100644
--- a/dev-rust/gdbstub/Manifest
+++ b/dev-rust/gdbstub/Manifest
@@ -1 +1 @@
-DIST gdbstub-0.4.2.crate 75726 BLAKE2B 39ae34732d8868ec6359b344625b21320f7477f68d343640db60f8d95805048d0eaa3d9ffed07118a6479e6a1f8fe07385fce9eaabc7273ed9a80768554856e3 SHA512 e5667da6dc7bf6fb6dfa9cec6526a68a165abc3a4081ee67d36054b28742d10bffed4024c1b832081c2939ea61b0e53ff16b31edd7da763da1afec708c1cb903
+DIST gdbstub-0.5.0.crate 86423 BLAKE2B 68c20ae6e2e8183a8de827d23ffdb7caa49b5dc12ba7ad03485b57902e45b78bdb47e1862dc8a2b888037dad38a58e4fef72b6c15c7f1209d6bd1df1a3908f89 SHA512 219ade1d8129891bc428f24ed8c2d466f884711dc901fc483cc808d7d06ec750680c5d6a2932d124c362569545ba0db2663f8e13e555dedb0e63b4e7314556c3
diff --git a/dev-rust/gdbstub/OWNERS b/dev-rust/gdbstub/OWNERS
new file mode 100644
index 0000000..0edda31
--- /dev/null
+++ b/dev-rust/gdbstub/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform/crosvm:/OWNERS
diff --git a/dev-rust/gdbstub/gdbstub-0.4.2.ebuild b/dev-rust/gdbstub/gdbstub-0.4.2.ebuild
deleted file mode 100644
index 90c7c8a..0000000
--- a/dev-rust/gdbstub/gdbstub-0.4.2.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_RUST_REMOVE_DEV_DEPS=1
-
-inherit cros-rust
-
-DESCRIPTION="An ergonomic and easy-to-integrate implementation of the GDB Remote Serial Protocol in Rust, with full #![no_std] support."
-HOMEPAGE="https://github.com/daniel5151/gdbstub"
-SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
-
-LICENSE="MIT"
-SLOT="${PV}/${PR}"
-KEYWORDS="*"
-
-DEPEND="
-	=dev-rust/cfg-if-0.1*:=
-	=dev-rust/log-0.4*:=
-	=dev-rust/managed-0.8*:=
-	=dev-rust/num-traits-0.2*:=
-	=dev-rust/paste-1*:=
-"
diff --git a/dev-rust/gdbstub/gdbstub-0.5.0.ebuild b/dev-rust/gdbstub/gdbstub-0.5.0.ebuild
new file mode 100644
index 0000000..ca396c1
--- /dev/null
+++ b/dev-rust/gdbstub/gdbstub-0.5.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION="An ergonomic and easy-to-integrate implementation of the GDB Remote Serial Protocol in Rust, with full #![no_std] support."
+HOMEPAGE="https://github.com/daniel5151/gdbstub"
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/cfg-if-0.1.10:= <dev-rust/cfg-if-0.2
+	=dev-rust/log-0.4*:=
+	=dev-rust/managed-0.8*:=
+	=dev-rust/num-traits-0.2*:=
+	=dev-rust/paste-1*:=
+"
diff --git a/dev-rust/gdbstub_arch/Manifest b/dev-rust/gdbstub_arch/Manifest
new file mode 100644
index 0000000..973cc0c
--- /dev/null
+++ b/dev-rust/gdbstub_arch/Manifest
@@ -0,0 +1 @@
+DIST gdbstub_arch-0.1.1.crate 12824 BLAKE2B 751769bcc0d76cd3630b58cef9e2a48f2c739f868fefcb3b0d91a1683eb79cad123ea7d7c2927acc21773cc80a1d7bda6db1cef4ff51b4491a81b2d7b463ac76 SHA512 0b45526cbc8a818cae17841f4e24582b95c6d327d9bb36e6a5483975df2a20966eb80cb24f49a6857e6583c60ae75ace62bca1e639b4fe8e20c4726461343599
diff --git a/dev-rust/gdbstub_arch/OWNERS b/dev-rust/gdbstub_arch/OWNERS
new file mode 100644
index 0000000..0edda31
--- /dev/null
+++ b/dev-rust/gdbstub_arch/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform/crosvm:/OWNERS
diff --git a/dev-rust/gdbstub_arch/gdbstub_arch-0.1.1.ebuild b/dev-rust/gdbstub_arch/gdbstub_arch-0.1.1.ebuild
new file mode 100644
index 0000000..79eacdc
--- /dev/null
+++ b/dev-rust/gdbstub_arch/gdbstub_arch-0.1.1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION="Implementations of gdbstub::arch::Arch for various architectures."
+HOMEPAGE="https://github.com/daniel5151/gdbstub"
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/gdbstub-0.5*:=
+	=dev-rust/num-traits-0.2*:=
+"
diff --git a/dev-rust/generic-array/Manifest b/dev-rust/generic-array/Manifest
new file mode 100644
index 0000000..f4bf7e50
--- /dev/null
+++ b/dev-rust/generic-array/Manifest
@@ -0,0 +1,3 @@
+DIST generic-array-0.12.4.crate 18212 BLAKE2B 6e7d77c884ea5a2a8a2d34d7d714730709bdf52f0ebbdb232a1ec8403de4b4f431eafedfc3c2d7ea1f8a28a84660fd34b71b09117dee4bb86052912143142734 SHA512 f92002b549aa9db2a80f65c50357c1f0f490a63e104fae7a271e0b16d6c43ec9146cb7f371f00eb1575a1bfc713ded3beb51f9e96ede93f2ce66ebf78ec85cb8
+DIST generic-array-0.13.3.crate 26956 BLAKE2B b8df2cfb4b37543eb1d2803ab7c6d2daf4a1dfe7d652513c259f93e26ab3049aa033072ea486f83744effd188cc53fc785c3e4f3c256677f0fcb221603221ee4 SHA512 d66ea808aaf085c9162fa8c96a5655bc60b42df764c5dc17226e0aa24792d48230d51c9df61db6f551d491cd173da48a5e06d5e4e010901b14c3f044c7f38fcb
+DIST generic-array-0.14.4.crate 28916 BLAKE2B 41adcb738bb316d17967e029a829dcf7377427977309b010c2f2e365f16306b44991eb5f65698782497f614b129b14cad11bfeba2ae19b45efd117114492517e SHA512 34ac71fee2cd50ff786d39b4abacd9e090a8598baf4dc36ba5fecfb7171cd8e4f58e5360cbb0baf02a87eea26b7dca85b35555b82bbefe06635d2fd38f7b8b40
diff --git a/dev-rust/generic-array/OWNERS b/dev-rust/generic-array/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/generic-array/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/generic-array/generic-array-0.12.4.ebuild b/dev-rust/generic-array/generic-array-0.12.4.ebuild
new file mode 100644
index 0000000..db942b1
--- /dev/null
+++ b/dev-rust/generic-array/generic-array-0.12.4.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Generic types implementing functionality of arrays'
+HOMEPAGE='https://crates.io/crates/generic-array'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/serde-1*:=
+	>=dev-rust/typenum-1.10.0:= <dev-rust/typenum-2.0.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+RESTRICT="test"
diff --git a/dev-rust/generic-array/generic-array-0.13.3.ebuild b/dev-rust/generic-array/generic-array-0.13.3.ebuild
new file mode 100644
index 0000000..db942b1
--- /dev/null
+++ b/dev-rust/generic-array/generic-array-0.13.3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Generic types implementing functionality of arrays'
+HOMEPAGE='https://crates.io/crates/generic-array'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/serde-1*:=
+	>=dev-rust/typenum-1.10.0:= <dev-rust/typenum-2.0.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+RESTRICT="test"
diff --git a/dev-rust/generic-array/generic-array-0.14.4.ebuild b/dev-rust/generic-array/generic-array-0.14.4.ebuild
new file mode 100644
index 0000000..77a54d2
--- /dev/null
+++ b/dev-rust/generic-array/generic-array-0.14.4.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Generic types implementing functionality of arrays'
+HOMEPAGE='https://crates.io/crates/generic-array'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/serde-1*:=
+	>=dev-rust/typenum-1.12.0:= <dev-rust/typenum-2.0.0
+	=dev-rust/version_check-0.9*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+RESTRICT="test"
diff --git a/dev-rust/getopts/getopts-0.2.21.ebuild b/dev-rust/getopts/getopts-0.2.21.ebuild
index 41ad465..8c12875 100644
--- a/dev-rust/getopts/getopts-0.2.21.ebuild
+++ b/dev-rust/getopts/getopts-0.2.21.ebuild
@@ -23,3 +23,6 @@
 RDEPEND="${DEPEND}"
 
 # This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `getopts`
+RESTRICT="test"
diff --git a/dev-rust/getrandom/Manifest b/dev-rust/getrandom/Manifest
index 1286b2c..569c31e 100644
--- a/dev-rust/getrandom/Manifest
+++ b/dev-rust/getrandom/Manifest
@@ -1 +1,2 @@
 DIST getrandom-0.1.15.crate 24786 BLAKE2B 868817d62ee44fa5bbf54f9af0bd71a29503f92bc93e190a834f4ebdb8eb73dd29e175c661f9964298987949c0b82a53e99080cbe4090fc9c5453daea4b05595 SHA512 b26d9558554058f8a54b03f56f488db5ebad2d5cc84f737e489f8f532f8464ef9038d104173eb30acca61caa1f99e1ce267bc493c01ba1611b829e0a090cc87f
+DIST getrandom-0.2.0.crate 26029 BLAKE2B fac97b7bff4c1a61f8f868dbfa234974dc904a25b9954cb5500877fd36218bfe36a572028ca0e79e9e8bfe951082b177641fdbeef2265156695352230f5309e2 SHA512 41aa36a39fdd8bc4f8a927627806f3d58a8458041ac7347fd446dc628175ec8dba2c018e82839a680cb587a09a23fee3fd357f99900a42baafb54970062bd9b1
diff --git a/dev-rust/getrandom/getrandom-0.1.15.ebuild b/dev-rust/getrandom/getrandom-0.1.15.ebuild
index 89c21c0..24584ec 100644
--- a/dev-rust/getrandom/getrandom-0.1.15.ebuild
+++ b/dev-rust/getrandom/getrandom-0.1.15.ebuild
@@ -23,3 +23,6 @@
 	>=dev-rust/wasi-0.9.0:= <dev-rust/wasi-0.10.0
 	>=dev-rust/wasm-bindgen-0.2.62:= <dev-rust/wasm-bindgen-0.3.0
 "
+
+# error: no matching package named `log` found
+RESTRICT="test"
diff --git a/dev-rust/getrandom/getrandom-0.2.0-r1.ebuild b/dev-rust/getrandom/getrandom-0.2.0-r1.ebuild
new file mode 120000
index 0000000..0bdb579
--- /dev/null
+++ b/dev-rust/getrandom/getrandom-0.2.0-r1.ebuild
@@ -0,0 +1 @@
+getrandom-0.2.0.ebuild
\ No newline at end of file
diff --git a/dev-rust/getrandom/getrandom-0.2.0.ebuild b/dev-rust/getrandom/getrandom-0.2.0.ebuild
new file mode 100644
index 0000000..55a2c59
--- /dev/null
+++ b/dev-rust/getrandom/getrandom-0.2.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION="A Rust library for retrieving random data from (operating) system source"
+HOMEPAGE="https://github.com/rust-random/getrandom"
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/cfg-if-0.1.2:= <dev-rust/cfg-if-0.2.0
+	>=dev-rust/libc-0.2.64:= <dev-rust/libc-0.3.0
+	>=dev-rust/wasi-0.9.0:= <dev-rust/wasi-0.10.0
+	>=dev-rust/compiler_builtins-0.1.0:= <dev-rust/compiler_builtins-0.2.0
+	=dev-rust/rustc-std-workspace-core-1*:=
+	>=dev-rust/stdweb-0.4.18:= <dev-rust/stdweb-0.5.0
+	>=dev-rust/wasm-bindgen-0.2.62:= <dev-rust/wasm-bindgen-0.3.0
+"
+
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/git-version-macro/Manifest b/dev-rust/git-version-macro/Manifest
new file mode 100644
index 0000000..0da5796
--- /dev/null
+++ b/dev-rust/git-version-macro/Manifest
@@ -0,0 +1 @@
+DIST git-version-macro-0.3.5.crate 4302 BLAKE2B 39173a36199b34cec11a1924faed795334586b21e3042bb91f3d38cee2d8b97ffb5bb4dd45a3c192d8c1b8d2b2a5bf4e0d3b23927b6f4212cfeb7cb9dbb16d4e SHA512 319729646469ab6508e16e6f3b88f588580fe7089479f70522edd6ac7eadb3c4576f0a57863bd3927d1ada693c3fe3706dc6a75e6cd75723db7f23199dc69ae0
diff --git a/dev-rust/git-version-macro/OWNERS b/dev-rust/git-version-macro/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/git-version-macro/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/git-version-macro/git-version-macro-0.3.5.ebuild b/dev-rust/git-version-macro/git-version-macro-0.3.5.ebuild
new file mode 100644
index 0000000..c130bbb
--- /dev/null
+++ b/dev-rust/git-version-macro/git-version-macro-0.3.5.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Internal macro crate for git-version.'
+HOMEPAGE='https://crates.io/crates/git-version-macro'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="BSD-2"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/proc-macro-hack-0.5*:=
+	=dev-rust/proc-macro2-1*:=
+	=dev-rust/quote-1*:=
+	=dev-rust/syn-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+# thread 'utils::test_git_dir' panicked at 'called `Result::unwrap()` on an `Err` value: Custom { kind: Other, error: "git rev-parse --git-dir failed with status 128: fatal: not a git repository (or any of the parent directories): .git" }', src/utils.rs:52:23
+RESTRICT="test"
diff --git a/dev-rust/git-version/Manifest b/dev-rust/git-version/Manifest
new file mode 100644
index 0000000..1398bee
--- /dev/null
+++ b/dev-rust/git-version/Manifest
@@ -0,0 +1 @@
+DIST git-version-0.3.5.crate 3203 BLAKE2B f73d2f076c79c10c7395e584d811b6fffc7f348954c2c142099c48ba4440d257eb1be59ff26c3a61f37a6bc119afd82105a1697c37f8d7b973f3a43108f099f6 SHA512 7017d59ec7eef1d69c333ce8bcdee355dced8e912c4b5eabcb2abb93f6075ef3d1fd9486661d472c29787b75d7866fc49835d1faf5d06e42837c95c856398629
diff --git a/dev-rust/git-version/OWNERS b/dev-rust/git-version/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/git-version/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/git-version/git-version-0.3.5.ebuild b/dev-rust/git-version/git-version-0.3.5.ebuild
new file mode 100644
index 0000000..8eb5068
--- /dev/null
+++ b/dev-rust/git-version/git-version-0.3.5.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Compile the git version (tag name, or hash otherwise) and dirty state into your program.'
+HOMEPAGE='https://crates.io/crates/git-version'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="BSD-2"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	~dev-rust/git-version-macro-0.3.5:=
+	=dev-rust/proc-macro-hack-0.5*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `git-version`
+RESTRICT="test"
diff --git a/dev-rust/git2/git2-0.9.1.ebuild b/dev-rust/git2/git2-0.9.1.ebuild
index da4851e..b1101e7 100644
--- a/dev-rust/git2/git2-0.9.1.ebuild
+++ b/dev-rust/git2/git2-0.9.1.ebuild
@@ -23,3 +23,6 @@
 	>=dev-rust/openssl-probe-0.1.2:=
 	>=dev-rust/openssl-sys-0.9.47:=
 "
+
+# error: could not compile `git2`
+RESTRICT="test"
diff --git a/dev-rust/glob/OWNERS b/dev-rust/glob/OWNERS
index b380a13..f61fba0 100644
--- a/dev-rust/glob/OWNERS
+++ b/dev-rust/glob/OWNERS
@@ -1 +1 @@
-include chromiumos/overlays/chromiumos-overlay:/dev-rust/clang-sys/OWNERS
+include /dev-rust/clang-sys/OWNERS
diff --git a/dev-rust/glob/glob-0.3.0.ebuild b/dev-rust/glob/glob-0.3.0.ebuild
index 84d4379..9f9587e 100644
--- a/dev-rust/glob/glob-0.3.0.ebuild
+++ b/dev-rust/glob/glob-0.3.0.ebuild
@@ -16,3 +16,6 @@
 KEYWORDS="*"
 
 DEPEND="=dev-rust/nom-5*:="
+
+# error: could not compile `glob`
+RESTRICT="test"
diff --git a/dev-rust/hash32/Manifest b/dev-rust/hash32/Manifest
new file mode 100644
index 0000000..feb21d4
--- /dev/null
+++ b/dev-rust/hash32/Manifest
@@ -0,0 +1 @@
+DIST hash32-0.1.1.crate 10967 BLAKE2B a87b945b6c39a98022b32c5b29cbd6cce64e20abeb80b32131f95f7e919c979f3b5b6cf440e2255ec5a9861060d7a95deef3cfb280e26cdc0247f809eb2881d9 SHA512 57ea9009c6365de6a55bf1c4a514eb997a1671fe72877354fb75de858b531c78eb7a3c9e2477491d595a916ac4dfd5e976e1febe3e0ef6bc2299e69c37389215
diff --git a/dev-rust/hash32/OWNERS b/dev-rust/hash32/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/hash32/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/hash32/hash32-0.1.1.ebuild b/dev-rust/hash32/hash32-0.1.1.ebuild
new file mode 100644
index 0000000..74536f4
--- /dev/null
+++ b/dev-rust/hash32/hash32-0.1.1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='32-bit hashing machinery'
+HOMEPAGE='https://crates.io/crates/hash32'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/byteorder-1.2.2:= <dev-rust/byteorder-2.0.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+RESTRICT="test"
diff --git a/dev-rust/hashbrown/Manifest b/dev-rust/hashbrown/Manifest
index 8e135a8..cdf5728 100644
--- a/dev-rust/hashbrown/Manifest
+++ b/dev-rust/hashbrown/Manifest
@@ -1,2 +1,3 @@
 DIST hashbrown-0.1.7.crate 38641 BLAKE2B 942d0d8397299c23fb0bd4b98bcbe2b15be78b9cae3f5d46aa322a0d1fbeafb98a37597d5b04f4597932026354f980fac27bdf4cc36cc0cbe48842477bead81b SHA512 849a33fd4ea32d93f26a20b1334aeeda047465e6534ef9fd9bf5b2c2ae83ecdb5e0caa2d08ced08082318b30ee984b7de8d461bcf8f7a4e8e97bdf685c3b716a
 DIST hashbrown-0.9.1.crate 77734 BLAKE2B d59002253112cf92173c3c1b305fd03fb7318ef187d7e033433baf6a354db046d1f3fe0387b3cf500fbcc0f83d2b2076527ba7cda2695f7627eca0bc3e3487c1 SHA512 dfa4742111f6fe757b7fa97f04c7b4a78ce9708c87e8e09ecf3c28f2566e48af9885fda380ed918cec37b5c696110fbdd30273aba6e7d2221c9e65f72af064fd
+DIST hashbrown-0.11.2.crate 85713 BLAKE2B 402f9f1bdcb92631206f9b72923ee35e28db8623e87469c0f1496664bc7185077013ab3c8aea68268241e5b2504f10cddc613a350abd4291050deda6c112e559 SHA512 c21ca68fd49bbb741901f59fed04cc124b8da99e2a4dfc26e2e5e1140637872b344612a01691bd30cc771575c571be15f756c84dde225441699cd2322af2ad6c
diff --git a/dev-rust/hashbrown/hashbrown-0.11.2.ebuild b/dev-rust/hashbrown/hashbrown-0.11.2.ebuild
new file mode 100644
index 0000000..3f08258
--- /dev/null
+++ b/dev-rust/hashbrown/hashbrown-0.11.2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A Rust port of Google"s SwissTable hash map'
+HOMEPAGE='https://crates.io/crates/hashbrown'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/ahash-0.7*:=
+	=dev-rust/rustc-std-workspace-alloc-1*:=
+	>=dev-rust/bumpalo-3.5.0:= <dev-rust/bumpalo-4.0.0
+	>=dev-rust/compiler_builtins-0.1.2:= <dev-rust/compiler_builtins-0.2.0
+	=dev-rust/rustc-std-workspace-core-1*:=
+	=dev-rust/rayon-1*:=
+	>=dev-rust/serde-1.0.25:= <dev-rust/serde-2.0.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+# the package `hashbrown` depends on `ahash`, with features: `compile-time-rng` but `ahash` does not have these features.
+RESTRICT="test"
diff --git a/dev-rust/hashbrown/hashbrown-0.9.1.ebuild b/dev-rust/hashbrown/hashbrown-0.9.1.ebuild
index d701915..eb3c233 100644
--- a/dev-rust/hashbrown/hashbrown-0.9.1.ebuild
+++ b/dev-rust/hashbrown/hashbrown-0.9.1.ebuild
@@ -26,3 +26,6 @@
 RDEPEND="${DEPEND}"
 
 # This file was automatically generated by cargo2ebuild.py
+
+# could not compile
+RESTRICT="test"
diff --git a/dev-rust/heapless/Manifest b/dev-rust/heapless/Manifest
new file mode 100644
index 0000000..3eadbfb
--- /dev/null
+++ b/dev-rust/heapless/Manifest
@@ -0,0 +1 @@
+DIST heapless-0.6.1.crate 61144 BLAKE2B 0a587c7950bda62c001d7f3c327a0abc2b28a2d78d9d9ad239a0c09014f22461ae8d2939193610339e08a81f049b03d269a21d05cc913e2feef5244544df1613 SHA512 bcc248a9110de8c2b350b24dab46d948b7459608124cbc76846e8a3005952961e0a0f792db90a0b59749e46e8e548a8ae43f50b073c35d4158826c2f05f859a2
diff --git a/dev-rust/heapless/OWNERS b/dev-rust/heapless/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/heapless/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/heapless/heapless-0.6.1.ebuild b/dev-rust/heapless/heapless-0.6.1.ebuild
new file mode 100644
index 0000000..84bbf96
--- /dev/null
+++ b/dev-rust/heapless/heapless-0.6.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='"static" friendly data structures that don"t require dynamic memory allocation'
+HOMEPAGE='https://crates.io/crates/heapless'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/as-slice-0.1.5:= <dev-rust/as-slice-0.2.0
+	>=dev-rust/generic-array-0.14.4:= <dev-rust/generic-array-0.15.0
+	=dev-rust/hash32-0.1*:=
+	=dev-rust/stable_deref_trait-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+RESTRICT="test"
diff --git a/dev-rust/heck/Manifest b/dev-rust/heck/Manifest
index f9e4911..df5a819 100644
--- a/dev-rust/heck/Manifest
+++ b/dev-rust/heck/Manifest
@@ -1 +1,2 @@
 DIST heck-0.3.1.crate 54666 BLAKE2B 99f7ceb44ea6af445749989730ce1e14156018ff046a136be2e6474b285088e1d90d6f8af9352affbbde5bac7e5a32971dd99f249f968105e9793b7de76def07 SHA512 134722192c46fd64b38d2fbec3a2511c560916e906491a72c4ec9d99b9f716dc58942fb99cac99b9a6ef2de5b5ad1d1c1155f292d091401b6873347d80c086d6
+DIST heck-0.3.3.crate 10260 BLAKE2B dc756738081d855583f239908f671e9b5dde72ebfb577f6387b1a169817a03332464cf67071708a4c4f06b1ecb222118e8c719073ccdec1c0f938e5ef378b13f SHA512 b3498e033f44e03206421e565efec5b21d13107b60d35e4476331c44e6effd75c81f7678f2452c822eefd581209a2ffefd2034779cca2d8b4fac4583bbbf777f
diff --git a/dev-rust/heck/heck-0.3.3.ebuild b/dev-rust/heck/heck-0.3.3.ebuild
new file mode 100644
index 0000000..23fd350
--- /dev/null
+++ b/dev-rust/heck/heck-0.3.3.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='heck is a case conversion library.'
+HOMEPAGE='https://crates.io/crates/heck'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/unicode-segmentation-1.2.0:= <dev-rust/unicode-segmentation-2.0.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/hmac-sha256/Manifest b/dev-rust/hmac-sha256/Manifest
new file mode 100644
index 0000000..36b4c29
--- /dev/null
+++ b/dev-rust/hmac-sha256/Manifest
@@ -0,0 +1 @@
+DIST hmac-sha256-0.1.7.crate 4506 BLAKE2B a92b22a0184fb01e01e4e76499a5b5b3b69fd59676982c78a6a02c3a37755a3f3364048aa6b60623e3d8ad097e3ed23b32cd3f0aa8b56d942f13d68cb6d6d9cc SHA512 d0cfb77ed3faf3706bbbdad0eeb357d8a57d3cdf7cb33d7e0d4932746e93d8a34b64eb70fd3bcb7b8fe7003e218932b2a6f2bc4542c40fd13e94a6b0241772a9
diff --git a/dev-rust/hmac-sha256/OWNERS b/dev-rust/hmac-sha256/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/hmac-sha256/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/hmac-sha256/hmac-sha256-0.1.7.ebuild b/dev-rust/hmac-sha256/hmac-sha256-0.1.7.ebuild
new file mode 100644
index 0000000..6537356
--- /dev/null
+++ b/dev-rust/hmac-sha256/hmac-sha256-0.1.7.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A small, self-contained SHA256 and HMAC-SHA256 implementation'
+HOMEPAGE='https://crates.io/crates/hmac-sha256'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="ISC"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/digest-0.9*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/hyper-tls/hyper-tls-0.3.2-r2.ebuild b/dev-rust/hyper-tls/hyper-tls-0.3.2-r2.ebuild
new file mode 120000
index 0000000..e1825b7
--- /dev/null
+++ b/dev-rust/hyper-tls/hyper-tls-0.3.2-r2.ebuild
@@ -0,0 +1 @@
+hyper-tls-0.3.2.ebuild
\ No newline at end of file
diff --git a/dev-rust/hyper-tls/hyper-tls-0.3.2.ebuild b/dev-rust/hyper-tls/hyper-tls-0.3.2.ebuild
index f311b94..a6c4609f 100644
--- a/dev-rust/hyper-tls/hyper-tls-0.3.2.ebuild
+++ b/dev-rust/hyper-tls/hyper-tls-0.3.2.ebuild
@@ -1,7 +1,9 @@
 # Copyright 2019 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
 
 inherit cros-rust
 
@@ -14,10 +16,10 @@
 KEYWORDS="*"
 
 DEPEND="
-	>=dev-rust/bytes-0.4:=
-	>=dev-rust/futures-0.1.21:=
-	>=dev-rust/hyper-0.12:=
-	>=dev-rust/native-tls-0.2:=
-	>=dev-rust/tokio-io-0.1:=
-	>=dev-rust/tokio-0.1.5:=
+	=dev-rust/bytes-0.4*:=
+	>=dev-rust/futures-0.1.21:= <dev-rust/futures-0.2.0
+	=dev-rust/hyper-0.12*:=
+	=dev-rust/native-tls-0.2*:=
+	=dev-rust/tokio-io-0.1*:=
 "
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/hyper/hyper-0.12.35-r2.ebuild b/dev-rust/hyper/hyper-0.12.35-r2.ebuild
new file mode 120000
index 0000000..2cb8e06
--- /dev/null
+++ b/dev-rust/hyper/hyper-0.12.35-r2.ebuild
@@ -0,0 +1 @@
+hyper-0.12.35.ebuild
\ No newline at end of file
diff --git a/dev-rust/hyper/hyper-0.12.35.ebuild b/dev-rust/hyper/hyper-0.12.35.ebuild
index 2c677a0..92ea146 100644
--- a/dev-rust/hyper/hyper-0.12.35.ebuild
+++ b/dev-rust/hyper/hyper-0.12.35.ebuild
@@ -1,7 +1,7 @@
 # Copyright 2019 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 
 CROS_RUST_REMOVE_DEV_DEPS=1
 
@@ -16,26 +16,27 @@
 KEYWORDS="*"
 
 DEPEND="
-	>=dev-rust/bytes-0.4.4:=
-	>=dev-rust/futures-0.1.21:=
-	>=dev-rust/h2-0.1.10:=
-	>=dev-rust/http-0.1.15:=
-	>=dev-rust/httparse-1.0:=
-	>=dev-rust/http-body-0.1:=
-	>=dev-rust/iovec-0.1:=
-	>=dev-rust/itoa-0.4.1:=
-	>=dev-rust/log-0.4:=
-	>=dev-rust/rustc_version-0.2:=
-	>=dev-rust/time-0.1:=
-	>=dev-rust/tokio-buf-0.1:=
-	>=dev-rust/tokio-io-0.1:=
-	>=dev-rust/want-0.2:=
-	>=dev-rust/futures-cpupool-0.1.6:=
-	>=dev-rust/net2-0.2.32:=
-	>=dev-rust/tokio-0.1.14:=
-	>=dev-rust/tokio-executor-0.1:=
-	>=dev-rust/tokio-reactor-0.1:=
-	>=dev-rust/tokio-tcp-0.1:=
-	>=dev-rust/tokio-threadpool-0.1.3:=
-	>=dev-rust/tokio-timer-0.2:=
+	>=dev-rust/bytes-0.4.4:= <dev-rust/bytes-0.5.0
+	>=dev-rust/futures-0.1.21:= <dev-rust/futures-0.2.0
+	>=dev-rust/h2-0.1.10:= <dev-rust/h2-0.2.0
+	>=dev-rust/http-0.1.15:= <dev-rust/http-0.2.0
+	=dev-rust/httparse-1*:=
+	=dev-rust/http-body-0.1*:=
+	=dev-rust/iovec-0.1*:=
+	>=dev-rust/itoa-0.4.1:= <dev-rust/itoa-0.5.0
+	=dev-rust/log-0.4*:=
+	=dev-rust/rustc_version-0.2*:=
+	=dev-rust/time-0.1*:=
+	=dev-rust/tokio-buf-0.1*:=
+	=dev-rust/tokio-io-0.1*:=
+	=dev-rust/want-0.2*:=
+	>=dev-rust/futures-cpupool-0.1.6:= <dev-rust/futures-cpupool-0.2.0
+	>=dev-rust/net2-0.2.32:= <dev-rust/net2-0.3.0
+	>=dev-rust/tokio-0.1.14:= <dev-rust/tokio-0.2.0
+	=dev-rust/tokio-executor-0.1*:=
+	=dev-rust/tokio-reactor-0.1*:=
+	=dev-rust/tokio-tcp-0.1*:=
+	>=dev-rust/tokio-threadpool-0.1.3:= <dev-rust/tokio-threadpool-0.2.0
+	=dev-rust/tokio-timer-0.2*:=
 "
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/hyphenation/OWNERS b/dev-rust/hyphenation/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/hyphenation/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/hyphenation/hyphenation-0.8.0.ebuild b/dev-rust/hyphenation/hyphenation-0.8.0.ebuild
new file mode 100644
index 0000000..97a3a08
--- /dev/null
+++ b/dev-rust/hyphenation/hyphenation-0.8.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+CROS_RUST_EMPTY_CRATE_FEATURES=( "embed_en-us" )
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/idna/idna-0.1.5.ebuild b/dev-rust/idna/idna-0.1.5.ebuild
index 66d4a54..db4ce18 100644
--- a/dev-rust/idna/idna-0.1.5.ebuild
+++ b/dev-rust/idna/idna-0.1.5.ebuild
@@ -20,3 +20,6 @@
 	=dev-rust/rustc-serialize-0.3*:=
 	=dev-rust/rustc-test-0.3*:=
 "
+
+# error: could not compile `idna`
+RESTRICT="test"
diff --git a/dev-rust/include_dir/Manifest b/dev-rust/include_dir/Manifest
new file mode 100644
index 0000000..dd2bba5
--- /dev/null
+++ b/dev-rust/include_dir/Manifest
@@ -0,0 +1 @@
+DIST include_dir-0.6.1.crate 4041 BLAKE2B 437a51b4eac88d9437a35cb11d9e20885bea25c795c5114ea3dc71b678d2a3f2b61466e3a8274fdc706ca15c9bc84f9077c62ded77f5e0932ca4a0a7e10a4f41 SHA512 16d8df1595a52ba5fbebd2ca8e91e6f10de5a6b4161be2561159953b2bda695bedb91949297dc63a593d35c331744a075b848e292f5687691c7de68a7ab26c81
diff --git a/dev-rust/include_dir/OWNERS b/dev-rust/include_dir/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/include_dir/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/include_dir/include_dir-0.6.1.ebuild b/dev-rust/include_dir/include_dir-0.6.1.ebuild
new file mode 100644
index 0000000..d4b23f5
--- /dev/null
+++ b/dev-rust/include_dir/include_dir-0.6.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Embed the contents of a directory in your binary'
+HOMEPAGE='https://crates.io/crates/include_dir'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/glob-0.3*:=
+	~dev-rust/include_dir_impl-0.6.1:=
+	=dev-rust/proc-macro-hack-0.5*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+CROS_RUST_REMOVE_DEV_DEPS=0
+TEST_DEPS="
+	=dev-rust/tempdir-0.3*:=
+"
+DEPEND+="${TEST_DEPS}"
+RDEPEND+="${TEST_DEPS}"
diff --git a/dev-rust/include_dir_impl/Manifest b/dev-rust/include_dir_impl/Manifest
new file mode 100644
index 0000000..8a8df28
--- /dev/null
+++ b/dev-rust/include_dir_impl/Manifest
@@ -0,0 +1 @@
+DIST include_dir_impl-0.6.1.crate 2081 BLAKE2B e8628cc0121915644714e3d5ea08cae9ff59ec9f66b0e597d919291c0248175afcd7abd7bcf960810b7a9ff0f5d17bb1757dcf31172aa4b1398c2f145877a3c5 SHA512 6934876cb63c4f30a2a82375c353e55432f3d7f967477d3f87211cd4ba4a405474abb9fbfeaa64f958b5b178ee21d776d982f2d19b000f70fadb95943c92838c
diff --git a/dev-rust/include_dir_impl/OWNERS b/dev-rust/include_dir_impl/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/include_dir_impl/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/include_dir_impl/include_dir_impl-0.6.1.ebuild b/dev-rust/include_dir_impl/include_dir_impl-0.6.1.ebuild
new file mode 100644
index 0000000..cbe0403
--- /dev/null
+++ b/dev-rust/include_dir_impl/include_dir_impl-0.6.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Implementation crate for include_dir'
+HOMEPAGE='https://crates.io/crates/include_dir_impl'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/anyhow-1*:=
+	=dev-rust/proc-macro-hack-0.5*:=
+	=dev-rust/proc-macro2-1*:=
+	=dev-rust/quote-1*:=
+	=dev-rust/syn-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/indexmap/Manifest b/dev-rust/indexmap/Manifest
index d800daf..9e2e8b9 100644
--- a/dev-rust/indexmap/Manifest
+++ b/dev-rust/indexmap/Manifest
@@ -1,2 +1,3 @@
 DIST indexmap-1.0.2.crate 38255 BLAKE2B 78d99087e4f282fe4e4789c131621bfe5d873be801cc105629aa8932a3e4c8a519180560b0bd83463d808eb3b75194b551e39166260a1b9056e822fac07fed94 SHA512 cfae9d222efcce9ab15c5a8368db2865fbdb6819b4fc317ca0aed55c32ea312b5c5ca13130d4aabf08af1803c34d465a1a1209dabbce37e7a1a911faf5cfcfe8
 DIST indexmap-1.6.2.crate 50225 BLAKE2B 38f40c5aae0c5dc5da515e610007983b2d581994293f2eac747a3fd78c9cefb9faff64555e0c6dda146e9d1332d59f23c353c6758e63f99b6c4676123723ec67 SHA512 1509b6aa6b3b84fa15b98026052f6d5f0f1aedd065b02b24e31b799f8db68d5770e9a8302ef10e1ad16817256dbc03c55593928a48eddb252d25de7e0b7e6406
+DIST indexmap-1.7.0.crate 50363 BLAKE2B b45318ae2a6e1f008494db77a3159eea3fed4f77eb04ae65599be9392d6ef78d4677b65d04fefab8f917f6808fee821a33bcf53a50b88785fae5ef6848e3a08a SHA512 9b882b4a7068a686acaee0a08bd4f3b35b58d36e786358cf14a3436eb61339649e64f1757331cc7833a2fa364c76eb6b75cf0c732afaeb202113de1e66b72ab9
diff --git a/dev-rust/indexmap/indexmap-1.6.2.ebuild b/dev-rust/indexmap/indexmap-1.6.2.ebuild
index 439edb6..9b30c3a 100644
--- a/dev-rust/indexmap/indexmap-1.6.2.ebuild
+++ b/dev-rust/indexmap/indexmap-1.6.2.ebuild
@@ -33,3 +33,6 @@
 RDEPEND="${DEPEND}"
 
 # This file was automatically generated by cargo2ebuild.py
+
+# could not compile
+RESTRICT="test"
diff --git a/dev-rust/indexmap/indexmap-1.7.0.ebuild b/dev-rust/indexmap/indexmap-1.7.0.ebuild
new file mode 100644
index 0000000..13fd3bc
--- /dev/null
+++ b/dev-rust/indexmap/indexmap-1.7.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A hash table with consistent order and fast iteration.
+
+The indexmap is a hash table where the iteration order of the key-value
+pairs is independent of the hash values of the keys. It has the usual
+hash table functionality, it preserves insertion order except after
+removals, and it allows lookup of its elements by either hash table key
+or numerical index. A corresponding hash set type is also provided.
+
+This crate was initially published under the name ordermap, but it was renamed to
+indexmap.'
+HOMEPAGE='https://crates.io/crates/indexmap'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/hashbrown-0.11*:=
+	>=dev-rust/rayon-1.2.0:= <dev-rust/rayon-2.0.0
+	=dev-rust/serde-1*:=
+	=dev-rust/autocfg-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `indexmap`
+RESTRICT="test"
diff --git a/dev-rust/instant/Manifest b/dev-rust/instant/Manifest
new file mode 100644
index 0000000..ad7a67a
--- /dev/null
+++ b/dev-rust/instant/Manifest
@@ -0,0 +1 @@
+DIST instant-0.1.9.crate 5213 BLAKE2B fe208faa09852079c603930e88b7d0392a89a55d3b934ad45ffb0c9e44df5ef7e8189ba2fa12452f1c8a6416d6f7c0655365ba959bedf2b78228613944be8278 SHA512 3915f67c3629ec93296d56c4cda0cf97b29b1a70930a9d546abb9518139d4c2f35062563a5094e84841ddb1f00b0f3df9dc00801d96c01994765221edf03ef7c
diff --git a/dev-rust/instant/OWNERS b/dev-rust/instant/OWNERS
new file mode 100644
index 0000000..a45474a
--- /dev/null
+++ b/dev-rust/instant/OWNERS
@@ -0,0 +1 @@
+ include chromiumos/platform/graphics:/OWNERS
diff --git a/dev-rust/instant/instant-0.1.9.ebuild b/dev-rust/instant/instant-0.1.9.ebuild
new file mode 100644
index 0000000..a52e305
--- /dev/null
+++ b/dev-rust/instant/instant-0.1.9.ebuild
@@ -0,0 +1,68 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+# See below.
+# CROS_RUST_REMOVE_TARGET_CFG=1
+
+inherit cros-rust
+
+DESCRIPTION="A partial replacement for std::time::Instant that works on WASM too."
+HOMEPAGE="https://github.com/sebcrozet/instant"
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/cfg-if-1.0*:=
+"
+
+RDEPEND="${DEPEND}"
+
+drop_asmjs_and_wasm32_targets() {
+	# Adapted from cros-rust_src_prepare() from cros-rust.eclass.
+	# instant's Cargo.toml has a
+	#
+	# [target."cfg(not(any(feature = \"stdweb\", feature = \"wasm-bindgen\")))".dependencies.time]
+	#
+	# section that CROS_RUST_REMOVE_TARGET_CFG nukes.  We can
+	# instead just remove all asmjs and wasm32 target sections.
+
+	awk \
+	'{
+		# Stop skipping for a new section header, but check for another match.
+		if ($0 ~ /^\[/) {
+			skip = 0
+		}
+
+		if ($0 ~ /^\[target[.](asmjs|wasm32)/) {
+			skip = 1
+			next
+		}
+
+		# Additionally, drop wasm-bindgen feature
+		if ($0 ~ /^\wasm-bindgen/) {
+			next
+		}
+
+		if (skip == 0) {
+			print
+		}
+	}' "${S}/Cargo.toml" > "${S}/Cargo.toml.stripped" || die
+
+	# Patch line(s) referencing removed features.
+	sed -i -e 's/target[.]"cfg(not(any(feature = \\"stdweb\\", feature = \\"wasm-bindgen\\")))"[.]//' \
+		"${S}/Cargo.toml.stripped" || die
+
+	mv "${S}/Cargo.toml.stripped" "${S}/Cargo.toml"|| die
+}
+
+src_prepare() {
+	drop_asmjs_and_wasm32_targets
+	cros-rust_src_prepare
+}
diff --git a/dev-rust/intrusive-collections/intrusive-collections-0.9.0.ebuild b/dev-rust/intrusive-collections/intrusive-collections-0.9.0.ebuild
index 0670ab8..7075227 100644
--- a/dev-rust/intrusive-collections/intrusive-collections-0.9.0.ebuild
+++ b/dev-rust/intrusive-collections/intrusive-collections-0.9.0.ebuild
@@ -15,3 +15,6 @@
 KEYWORDS="*"
 
 DEPEND=">=dev-rust/memoffset-0.5.4:= <dev-rust/memoffset-0.6"
+
+# error: could not compile `intrusive-collections`
+RESTRICT="test"
diff --git a/dev-rust/io_uring/io_uring-0.1.0-r10.ebuild b/dev-rust/io_uring/io_uring-0.1.0-r10.ebuild
new file mode 100644
index 0000000..8f722d4
--- /dev/null
+++ b/dev-rust/io_uring/io_uring-0.1.0-r10.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5acd4ee978d9fa1da9476c0338190e08c53ea2aa"
+CROS_WORKON_TREE="d9dfdaafd1e7e761461382ccf7d13b6a3cab49bb"
+CROS_WORKON_LOCALNAME="../platform/crosvm"
+CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="io_uring"
+CROS_WORKON_SUBDIRS_TO_COPY="io_uring"
+
+# TODO: Enable tests on ARM once the emulator supports io_uring.
+CROS_RUST_TEST_DIRECT_EXEC_ONLY="yes"
+
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Safe wrappers around the linux kernel's io_uring interface"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/io_uring"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+DEPEND="
+	dev-rust/data_model:=
+	>=dev-rust/libc-0.2.93:=
+	=dev-rust/remain-0.2*:=
+	dev-rust/sync:=
+	dev-rust/sys_util:=
+	dev-rust/tempfile:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+"
+RDEPEND="${DEPEND}"
+
+src_test() {
+	# The io_uring implementation on kernels older than 5.10 was buggy so skip
+	# them if we're running on one of those kernels.
+	local cut_version="$(ver_cut 1-2 "$(uname -r)")"
+	if ver_test "${cut_version}" -lt 5.10; then
+		einfo "Skipping io_uring tests on kernel version < 5.10"
+	else
+		cros-rust_src_test
+	fi
+}
diff --git a/dev-rust/io_uring/io_uring-0.1.0-r6.ebuild b/dev-rust/io_uring/io_uring-0.1.0-r6.ebuild
deleted file mode 100644
index b076316e..0000000
--- a/dev-rust/io_uring/io_uring-0.1.0-r6.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="113ae363f9783edddc4447749fbb9d99a9866c73"
-CROS_WORKON_TREE="3964a781d4aac3a0649b24bcce48011fda8c459a"
-CROS_WORKON_LOCALNAME="../platform/crosvm"
-CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="io_uring"
-CROS_WORKON_SUBDIRS_TO_COPY="io_uring"
-
-# TODO: Enable tests on ARM once the emulator supports io_uring.
-CROS_RUST_TEST_DIRECT_EXEC_ONLY="yes"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Safe wrappers around the linux kernel's io_uring interface"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/io_uring"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-DEPEND="
-	dev-rust/data_model:=
-	>=dev-rust/libc-0.2.93:=
-	dev-rust/sync:=
-	dev-rust/sys_util:=
-	dev-rust/tempfile:=
-"
-RDEPEND="${DEPEND}"
-
-src_test() {
-	# The io_uring implementation on kernels older than 5.10 was buggy so skip
-	# them if we're running on one of those kernels.
-	local cut_version="$(ver_cut 1-2 "$(uname -r)")"
-	if ver_test "${cut_version}" -lt 5.10; then
-		einfo "Skipping io_uring tests on kernel version < 5.10"
-	else
-		cros-rust_src_test
-	fi
-}
diff --git a/dev-rust/io_uring/io_uring-9999.ebuild b/dev-rust/io_uring/io_uring-9999.ebuild
index ae33066..f51a8a7 100644
--- a/dev-rust/io_uring/io_uring-9999.ebuild
+++ b/dev-rust/io_uring/io_uring-9999.ebuild
@@ -12,6 +12,9 @@
 # TODO: Enable tests on ARM once the emulator supports io_uring.
 CROS_RUST_TEST_DIRECT_EXEC_ONLY="yes"
 
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
 inherit cros-workon cros-rust
 
 DESCRIPTION="Safe wrappers around the linux kernel's io_uring interface"
@@ -22,9 +25,11 @@
 DEPEND="
 	dev-rust/data_model:=
 	>=dev-rust/libc-0.2.93:=
+	=dev-rust/remain-0.2*:=
 	dev-rust/sync:=
 	dev-rust/sys_util:=
 	dev-rust/tempfile:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
 "
 RDEPEND="${DEPEND}"
 
diff --git a/dev-rust/itertools/Manifest b/dev-rust/itertools/Manifest
new file mode 100644
index 0000000..9d3f424
--- /dev/null
+++ b/dev-rust/itertools/Manifest
@@ -0,0 +1 @@
+DIST itertools-0.8.2.crate 89203 BLAKE2B bcf8c00da5033f36cc205708324fd8eff083d46313ee84f567e4f333d8ac1ebe44474d89835a312a5357a48659e2f51d34d2194d548256118943999a3da8ebaf SHA512 325d87a80c0b217469762ae958c46925d284b37ddd987c3ab977c864f426dc6e4515701864f12fafbe49289b45b1910906f0e7d884ba8aea217cac521c3d1ff3
diff --git a/dev-rust/itertools/OWNERS b/dev-rust/itertools/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/itertools/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/itertools/itertools-0.8.2.ebuild b/dev-rust/itertools/itertools-0.8.2.ebuild
new file mode 100644
index 0000000..cb27277
--- /dev/null
+++ b/dev-rust/itertools/itertools-0.8.2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Extra iterator adaptors, iterator methods, free functions, and macros.'
+HOMEPAGE='https://crates.io/crates/itertools'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/either-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+IUSE="test"
+TEST_DEPS="
+	test? (
+		=dev-rust/permutohedron-0.2*:=
+		=dev-rust/quickcheck-0.7*:=
+		=dev-rust/rand-0.6*:=
+	)
+"
+DEPEND+="${TEST_DEPS}"
+RDEPEND+="${TEST_DEPS}"
+
+src_prepare() {
+	if use test; then
+		CROS_RUST_REMOVE_DEV_DEPS=0
+	fi
+	cros-rust_src_prepare
+}
diff --git a/dev-rust/lazy_static/lazy_static-1.4.0-r1.ebuild b/dev-rust/lazy_static/lazy_static-1.4.0-r1.ebuild
deleted file mode 100644
index 701779d..0000000
--- a/dev-rust/lazy_static/lazy_static-1.4.0-r1.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit cros-rust
-
-DESCRIPTION="A macro for declaring lazily evaluated statics in Rust."
-HOMEPAGE="https://github.com/rust-lang-nursery/lazy-static.rs"
-SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
-
-LICENSE="|| ( MIT Apache-2.0 )"
-SLOT="${PV}/${PR}"
-KEYWORDS="*"
-
-CROS_RUST_REMOVE_DEV_DEPS=1
-
-DEPEND="
-	=dev-rust/spin-0.5*:=
-"
-RDEPEND="${DEPEND}"
diff --git a/dev-rust/lazy_static/lazy_static-1.4.0-r2.ebuild b/dev-rust/lazy_static/lazy_static-1.4.0-r2.ebuild
new file mode 120000
index 0000000..035aa9e
--- /dev/null
+++ b/dev-rust/lazy_static/lazy_static-1.4.0-r2.ebuild
@@ -0,0 +1 @@
+lazy_static-1.4.0.ebuild
\ No newline at end of file
diff --git a/dev-rust/lazy_static/lazy_static-1.4.0.ebuild b/dev-rust/lazy_static/lazy_static-1.4.0.ebuild
index ed10a6a..0794099 100644
--- a/dev-rust/lazy_static/lazy_static-1.4.0.ebuild
+++ b/dev-rust/lazy_static/lazy_static-1.4.0.ebuild
@@ -1,7 +1,7 @@
 # Copyright 2019 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 
 inherit cros-rust
 
@@ -18,3 +18,7 @@
 DEPEND="
 	=dev-rust/spin-0.5*:=
 "
+RDEPEND="${DEPEND}"
+
+# error: could not compile `lazy_static`
+RESTRICT="test"
diff --git a/dev-rust/lazycell/OWNERS b/dev-rust/lazycell/OWNERS
index 08ef481..9331bd8 100644
--- a/dev-rust/lazycell/OWNERS
+++ b/dev-rust/lazycell/OWNERS
@@ -1 +1 @@
-include chromiumos/overlays/chromiumos-overlay:/dev-rust/bindgen/OWNERS
+include /dev-rust/bindgen/OWNERS
diff --git a/dev-rust/lexical-core/OWNERS b/dev-rust/lexical-core/OWNERS
index 8e41b60..e8d28ad 100644
--- a/dev-rust/lexical-core/OWNERS
+++ b/dev-rust/lexical-core/OWNERS
@@ -1 +1 @@
-include chromiumos/overlays/chromiumos-overlay:/dev-rust/nom/OWNERS
+include /dev-rust/nom/OWNERS
diff --git a/dev-rust/libc/Manifest b/dev-rust/libc/Manifest
index 4b82bb9..eb8bf40 100644
--- a/dev-rust/libc/Manifest
+++ b/dev-rust/libc/Manifest
@@ -1 +1,2 @@
 DIST libc-0.2.94.crate 511713 BLAKE2B 6ad3fe9aa5ea5fb06a7b2beeb68fa245e5ed7d19aa7e4b21c9e2ab73da11a9249913e604f0f87fbcc82676cceee16f14403cd2f27ae462730e1682c539666283 SHA512 316717d2e46b57c200d67d0ebb4fb162cb1f0b688895b9eb6075924cda3be8ba7fae85319692682178b6fc5cb2764e8b3a9d3e7ce234fd8a21a0a9c453ca174c
+DIST libc-0.2.97.crate 517712 BLAKE2B ad769579a8e89e9e0ea6a08b8fd82b69a3a299721d63b63efcb436b333021c097933565e86f4b66ffcce6a589718bed2aacb36b80a936dd3dda763b9c0c240d7 SHA512 9b94a43d7da1e419900f7a016d5eb958bc42a006e1bb621ab8e2be2167e91f05cee81144c25e81a85c1b1ea2a26ff88980a4cc292fd42db8b09c5c49bf5531ed
diff --git a/dev-rust/libc/libc-0.2.97.ebuild b/dev-rust/libc/libc-0.2.97.ebuild
new file mode 100644
index 0000000..417c088
--- /dev/null
+++ b/dev-rust/libc/libc-0.2.97.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Raw FFI bindings to platform libraries like libc.'
+HOMEPAGE='https://crates.io/crates/libc'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/rustc-std-workspace-core-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/libchromeos/libchromeos-0.1.0-r48.ebuild b/dev-rust/libchromeos/libchromeos-0.1.0-r48.ebuild
deleted file mode 100644
index 0279da4..0000000
--- a/dev-rust/libchromeos/libchromeos-0.1.0-r48.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="9cc4613a8d17f572b879950084c8dbcae5978527"
-CROS_WORKON_TREE="9fc61789a553775b1e6e521274f32ec89920b1d8"
-CROS_RUST_SUBDIR="libchromeos-rs"
-
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="A Rust utility library for Chrome OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/libchromeos-rs/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-COMMON_DEPEND="chromeos-base/vboot_reference:="
-
-DEPEND="${COMMON_DEPEND}
-	dev-rust/data_model:=
-	=dev-rust/futures-0.3*:=
-	=dev-rust/getopts-0.2*:=
-	=dev-rust/intrusive-collections-0.9*:=
-	>=dev-rust/lazy_static-1.4.0:= <dev-rust/lazy_static-2.0.0
-	=dev-rust/libc-0.2*:=
-	=dev-rust/log-0.4*:=
-	>=dev-rust/pkg-config-0.3.11:= <dev-rust/pkg-config-0.4.0:=
-	>=dev-rust/protobuf-2.1:= !>=dev-rust/protobuf-3.0:=
-	dev-rust/sys_util:=
-	dev-rust/system_api:=
-	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0.0
-	>=dev-rust/zeroize-1.2.0:= <dev-rust/zeroize-2.0.0
-"
-
-RDEPEND="${COMMON_DEPEND}
-	!!<=dev-rust/libchromeos-0.1.0-r2"
-
-src_compile() {
-	# Make sure the build works with default features.
-	ecargo_build
-	# Also check that the build works with all features.
-	ecargo_build --all-features
-	use test && cros-rust_src_test --no-run --all-features
-}
-
-src_test() {
-	cros-rust_src_test --all-features -- --test-threads=1
-}
diff --git a/dev-rust/libchromeos/libchromeos-0.1.0-r50.ebuild b/dev-rust/libchromeos/libchromeos-0.1.0-r50.ebuild
new file mode 100644
index 0000000..3a4ce2f
--- /dev/null
+++ b/dev-rust/libchromeos/libchromeos-0.1.0-r50.ebuild
@@ -0,0 +1,56 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="605bfac91ee04e8ea3e512666408923eb613bc7e"
+CROS_WORKON_TREE="c0e24d469df78e327c5cdcc67b5f70f6f797b70d"
+CROS_RUST_SUBDIR="libchromeos-rs"
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="A Rust utility library for Chrome OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/libchromeos-rs/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test"
+
+COMMON_DEPEND="chromeos-base/vboot_reference:="
+
+DEPEND="${COMMON_DEPEND}
+	dev-rust/data_model:=
+	=dev-rust/dbus-0.9*:=
+	=dev-rust/futures-0.3*:=
+	=dev-rust/getopts-0.2*:=
+	=dev-rust/intrusive-collections-0.9*:=
+	>=dev-rust/lazy_static-1.4.0:= <dev-rust/lazy_static-2.0.0
+	=dev-rust/libc-0.2*:=
+	=dev-rust/log-0.4*:=
+	>=dev-rust/pkg-config-0.3.11:= <dev-rust/pkg-config-0.4.0:=
+	>=dev-rust/protobuf-2.1:= !>=dev-rust/protobuf-3.0:=
+	dev-rust/sys_util:=
+	dev-rust/system_api:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0.0
+	>=dev-rust/zeroize-1.2.0:= <dev-rust/zeroize-2.0.0
+"
+
+RDEPEND="${COMMON_DEPEND}
+	!!<=dev-rust/libchromeos-0.1.0-r2"
+
+src_compile() {
+	# Make sure the build works with default features.
+	ecargo_build
+	# Also check that the build works with all features.
+	ecargo_build --all-features
+	use test && cros-rust_src_test --no-run --all-features
+}
+
+src_test() {
+	cros-rust_src_test --all-features -- --test-threads=1
+}
diff --git a/dev-rust/libchromeos/libchromeos-9999.ebuild b/dev-rust/libchromeos/libchromeos-9999.ebuild
index 446295d..0e25aab 100644
--- a/dev-rust/libchromeos/libchromeos-9999.ebuild
+++ b/dev-rust/libchromeos/libchromeos-9999.ebuild
@@ -23,6 +23,7 @@
 
 DEPEND="${COMMON_DEPEND}
 	dev-rust/data_model:=
+	=dev-rust/dbus-0.9*:=
 	=dev-rust/futures-0.3*:=
 	=dev-rust/getopts-0.2*:=
 	=dev-rust/intrusive-collections-0.9*:=
diff --git a/dev-rust/libdbus-sys/libdbus-sys-0.1.3-r2.ebuild b/dev-rust/libdbus-sys/libdbus-sys-0.1.3-r2.ebuild
new file mode 120000
index 0000000..1becc23
--- /dev/null
+++ b/dev-rust/libdbus-sys/libdbus-sys-0.1.3-r2.ebuild
@@ -0,0 +1 @@
+libdbus-sys-0.1.3.ebuild
\ No newline at end of file
diff --git a/dev-rust/libdbus-sys/libdbus-sys-0.1.3.ebuild b/dev-rust/libdbus-sys/libdbus-sys-0.1.3.ebuild
index 6c7de47..42b04da 100644
--- a/dev-rust/libdbus-sys/libdbus-sys-0.1.3.ebuild
+++ b/dev-rust/libdbus-sys/libdbus-sys-0.1.3.ebuild
@@ -1,7 +1,7 @@
 # Copyright 2019 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 
 inherit cros-rust
 
@@ -19,3 +19,4 @@
 DEPEND=">=dev-rust/pkg-config-0.3:=
 	sys-apps/dbus
 "
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/libloading/OWNERS b/dev-rust/libloading/OWNERS
index b380a13..f61fba0 100644
--- a/dev-rust/libloading/OWNERS
+++ b/dev-rust/libloading/OWNERS
@@ -1 +1 @@
-include chromiumos/overlays/chromiumos-overlay:/dev-rust/clang-sys/OWNERS
+include /dev-rust/clang-sys/OWNERS
diff --git a/dev-rust/libvda/files/chromeos-version.sh b/dev-rust/libvda/files/chromeos-version.sh
deleted file mode 100644
index 3d9462e..0000000
--- a/dev-rust/libvda/files/chromeos-version.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/sh
-#
-# Copyright 2019 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.
-
-# Assumes the first 'version =' line in the Cargo.toml is the version for the
-# crate.
-awk '/^version = / { gsub(/"/, "", $0); print $3; exit }' \
-  "$1/arc/vm/libvda/rust/Cargo.toml"
diff --git a/dev-rust/libvda/libvda-0.1.0-r28.ebuild b/dev-rust/libvda/libvda-0.1.0-r28.ebuild
deleted file mode 100644
index 240ea57..0000000
--- a/dev-rust/libvda/libvda-0.1.0-r28.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="3f56d133538060f7ed53b01de8b11a1783fad37b"
-CROS_WORKON_TREE="142c68f4879301817d9f64b7ff516acdda20e554"
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-# We don't use CROS_WORKON_OUTOFTREE_BUILD here since project's Cargo.toml is
-# using "provided by ebuild" macro which supported by cros-rust.
-CROS_WORKON_SUBTREE="arc/vm/libvda/rust"
-
-CROS_RUST_SUBDIR="arc/vm/libvda/rust"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Rust wrapper for chromeos-base/libvda"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/libvda/rust"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-# ebuilds that install executables and depend on dev-rust/libvda need to RDEPEND
-# on chromeos-base/libvda.
-DEPEND="chromeos-base/libvda:=
-	dev-rust/pkg-config:=
-	dev-rust/enumn:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}
-	!!<=dev-rust/libvda-0.0.1-r5
-"
-
-src_test() {
-	local test_args
-	if ! use amd64; then
-		# (b/174605753) Skip x86_64 specific tests.
-		test_args=(
-			"--"
-			"--skip" "bindgen_test_layout_vda_capabilities"
-			"--skip" "bindgen_test_layout_vda_session_info"
-			"--skip" "bindgen_test_layout_vea_capabilities"
-			"--skip" "bindgen_test_layout_vea_session_info"
-		)
-	fi
-	cros-rust_src_test "${test_args[@]}"
-}
diff --git a/dev-rust/libvda/libvda-9999.ebuild b/dev-rust/libvda/libvda-9999.ebuild
deleted file mode 100644
index 9513768..0000000
--- a/dev-rust/libvda/libvda-9999.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-# We don't use CROS_WORKON_OUTOFTREE_BUILD here since project's Cargo.toml is
-# using "provided by ebuild" macro which supported by cros-rust.
-CROS_WORKON_SUBTREE="arc/vm/libvda/rust"
-
-CROS_RUST_SUBDIR="arc/vm/libvda/rust"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Rust wrapper for chromeos-base/libvda"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/libvda/rust"
-
-LICENSE="BSD-Google"
-KEYWORDS="~*"
-IUSE="test"
-
-# ebuilds that install executables and depend on dev-rust/libvda need to RDEPEND
-# on chromeos-base/libvda.
-DEPEND="chromeos-base/libvda:=
-	dev-rust/pkg-config:=
-	dev-rust/enumn:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}
-	!!<=dev-rust/libvda-0.0.1-r5
-"
-
-src_test() {
-	local test_args
-	if ! use amd64; then
-		# (b/174605753) Skip x86_64 specific tests.
-		test_args=(
-			"--"
-			"--skip" "bindgen_test_layout_vda_capabilities"
-			"--skip" "bindgen_test_layout_vda_session_info"
-			"--skip" "bindgen_test_layout_vea_capabilities"
-			"--skip" "bindgen_test_layout_vea_session_info"
-		)
-	fi
-	cros-rust_src_test "${test_args[@]}"
-}
diff --git a/dev-rust/linked-hash-map/Manifest b/dev-rust/linked-hash-map/Manifest
index c3de6fb..68a0915 100644
--- a/dev-rust/linked-hash-map/Manifest
+++ b/dev-rust/linked-hash-map/Manifest
@@ -1 +1 @@
-DIST linked-hash-map-0.5.2.crate 16109 BLAKE2B e65a12161dd8b4c0ca49d25e20d0e5b68c411c349c00c6a1faa01f4db4b3f4c811bf9b64947922b8ab900a6bcc90db30e8a6d58ba9e384201879556408803e5e SHA512 74861f70ed09b119c6db1b0dc7f7c8c3483c2824955bf88ee892b3a3fa1a54e9bfcaf7fae0cbc4792762e330584dd347532532e1a0e8a8bca222b5cdb2c7cf94
+DIST linked-hash-map-0.5.4.crate 16166 BLAKE2B d6bfa091265355ae124885f76212c968f2a87af80f3d306c13223ab7fa1d6a449ffda8d042bdb887501d2ffd8adbc638f18cdfeefc16c39a1eb9f57b7c658bf0 SHA512 2938883357ec0e7d9c9fc5746063ae419c97250ddceeb8de3480c89e97e0a29d175cc9199bdb3ddf81cd5d6a2a1e319ee1644a7309eea96058221074cf87c0b6
diff --git a/dev-rust/linked-hash-map/linked-hash-map-0.5.2-r1.ebuild b/dev-rust/linked-hash-map/linked-hash-map-0.5.2-r1.ebuild
deleted file mode 120000
index 98eb693..0000000
--- a/dev-rust/linked-hash-map/linked-hash-map-0.5.2-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-linked-hash-map-0.5.2.ebuild
\ No newline at end of file
diff --git a/dev-rust/linked-hash-map/linked-hash-map-0.5.2.ebuild b/dev-rust/linked-hash-map/linked-hash-map-0.5.2.ebuild
deleted file mode 100644
index 6e5f5c9..0000000
--- a/dev-rust/linked-hash-map/linked-hash-map-0.5.2.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit cros-rust
-
-DESCRIPTION="A HashMap wrapper that holds key-value pairs in insertion order"
-HOMEPAGE="https://github.com/contain-rs/linked-hash-map"
-SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
-
-LICENSE="|| ( MIT Apache-2.0 )"
-SLOT="${PV}/${PR}"
-KEYWORDS="*"
-
-DEPEND="
-	=dev-rust/clippy-0.0*:=
-	=dev-rust/heapsize-0.4*:=
-	=dev-rust/serde-1*:=
-	=dev-rust/serde_test-1*:=
-"
diff --git a/dev-rust/linked-hash-map/linked-hash-map-0.5.4.ebuild b/dev-rust/linked-hash-map/linked-hash-map-0.5.4.ebuild
new file mode 100644
index 0000000..a94b758
--- /dev/null
+++ b/dev-rust/linked-hash-map/linked-hash-map-0.5.4.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+inherit cros-rust
+
+DESCRIPTION="A HashMap wrapper that holds key-value pairs in insertion order"
+HOMEPAGE="https://github.com/contain-rs/linked-hash-map"
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/clippy-0.0*:=
+	=dev-rust/heapsize-0.4*:=
+	=dev-rust/serde-1*:=
+	=dev-rust/serde_test-1*:=
+"
+
+# thread 'test_consuming_iter_empty' panicked at 'attempted to leave type `std::collections::HashMap<linked_hash_map::KeyRef<&str>, *mut linked_hash_map::Node<&str, i32>>` uninitialized, which is invalid', /var/tmp/portage/dev-lang/rust-1.51.0/work/rustc-1.51.0-src/library/core/src/mem/mod.rs:671:9
+RESTRICT="test"
diff --git a/dev-rust/lock_api/Manifest b/dev-rust/lock_api/Manifest
index 9044c64..e4525c0 100644
--- a/dev-rust/lock_api/Manifest
+++ b/dev-rust/lock_api/Manifest
@@ -1,2 +1,3 @@
 DIST lock_api-0.1.5.crate 16967 BLAKE2B c44ebe24fa6074394d0719b293d447ab67a9a23788821f2ba816b5e5b7a6b09d543c630a946b956811dd199144bf43568b52da5ebdd5e8b674e489f9efd2234d SHA512 e6049a8a840c11f00b6505dc9d01d1f759aa7bee47520f86e36caf6c52ca476236b09609b0a5cab0f4c247a40a4736f8fc04cf26fce0962cbbf2956ad4adbfde
 DIST lock_api-0.3.4.crate 18750 BLAKE2B 1aa7cb716efa665df7b09ee8d95c9fe0ef7ec108d89348e413e78e3af4d6274a49530ac03d5438a503a7c6dcfe20973c1c040d79b6cf228c5a15696a1caa4a8c SHA512 1517ec7cb1f9012da78be866e026be40465cc9befbbfff4a5f644ec19653baab6b171323c3fb8ef218df4a7bc4b305e42a6b9d6849654d0542a1c2dc8fe11fd8
+DIST lock_api-0.4.2.crate 20375 BLAKE2B 0b24bdf98aaee9870f558971f437e728c8e52a853cc886a0de30cb9a84c2733175e6152a2d7ff1f28a83df5443091b16ac5410cb67d05ce464e01db64ba98cb0 SHA512 815de5198ba4a952490fbc7e08e899ce855588d794c22890839ad55caa81642745fa6bf81a2a2fc8f6713575f0d1b801a2f2107ed7c405101011927b6b40be31
diff --git a/dev-rust/lock_api/OWNERS b/dev-rust/lock_api/OWNERS
new file mode 100644
index 0000000..a45474a
--- /dev/null
+++ b/dev-rust/lock_api/OWNERS
@@ -0,0 +1 @@
+ include chromiumos/platform/graphics:/OWNERS
diff --git a/dev-rust/lock_api/lock_api-0.4.2.ebuild b/dev-rust/lock_api/lock_api-0.4.2.ebuild
new file mode 100644
index 0000000..fa33bc7
--- /dev/null
+++ b/dev-rust/lock_api/lock_api-0.4.2.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit cros-rust
+
+DESCRIPTION="Wrappers to create fully-featured Mutex and RwLock types. Compatible with no_std"
+HOMEPAGE="https://github.com/Amanieu/parking_lot"
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/scopeguard-1.1.0:= <dev-rust/scopeguard-2.0.0
+	>=dev-rust/owning_ref-0.4.1:= <dev-rust/owning_ref-0.5.0
+"
+
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/log/log-0.4.14.ebuild b/dev-rust/log/log-0.4.14.ebuild
index 07b2332..16aa6c8 100644
--- a/dev-rust/log/log-0.4.14.ebuild
+++ b/dev-rust/log/log-0.4.14.ebuild
@@ -24,3 +24,6 @@
 RDEPEND="${DEPEND}"
 
 # This file was automatically generated by cargo2ebuild.py
+
+# error: failed to select a version for `value-bag`.
+RESTRICT="test"
diff --git a/dev-rust/manatee-client/manatee-client-0.24.52-r13.ebuild b/dev-rust/manatee-client/manatee-client-0.24.52-r13.ebuild
deleted file mode 100644
index 3bbdeff..0000000
--- a/dev-rust/manatee-client/manatee-client-0.24.52-r13.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="3d4877e667c0e58648bbe6414474cd1d8fed8df1"
-CROS_WORKON_TREE=("a1d60d57f61a5bca613446926cc66c65ac62ce8b" "3508d2f3db0647ef3871071db0b2fbfd7b6af042")
-CROS_RUST_SUBDIR="sirenia/manatee-client"
-
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} sirenia/dbus_bindings"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Rust D-Bus bindings for ManaTEE."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/manatee-client"
-
-LICENSE="BSD-Google"
-SLOT="0/${PVR}"
-KEYWORDS="*"
-
-RDEPEND="sys-apps/dbus"
-DEPEND="${RDEPEND}
-	chromeos-base/libsirenia:=
-	dev-rust/chromeos-dbus-bindings:=
-	=dev-rust/dbus-0.8*:=
-	=dev-rust/getopts-0.2*:=
-	dev-rust/libchromeos:=
-	=dev-rust/log-0.4*:=
-	=dev-rust/stderrlog-0.5*:=
-	dev-rust/sys_util:=
-	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
-	=dev-rust/which-4*:=
-"
-
-src_install() {
-	cros-rust_src_install
-
-	local build_dir="$(cros-rust_get_build_dir)"
-	dobin "${build_dir}/manatee"
-}
diff --git a/dev-rust/manatee-client/manatee-client-0.24.52-r21.ebuild b/dev-rust/manatee-client/manatee-client-0.24.52-r21.ebuild
new file mode 100644
index 0000000..e8e6ab3
--- /dev/null
+++ b/dev-rust/manatee-client/manatee-client-0.24.52-r21.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="b9d564a3ba6b589116047756df92fb9c7022c678"
+CROS_WORKON_TREE=("56dc239d6eef3f0577a66b4f0437a9f2374326a7" "58be5098716e7df76045940d9d1b652ca9b1cfd7")
+CROS_RUST_SUBDIR="sirenia/manatee-client"
+
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} sirenia/dbus_bindings"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Rust D-Bus bindings for ManaTEE."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/manatee-client"
+
+LICENSE="BSD-Google"
+SLOT="0/${PVR}"
+KEYWORDS="*"
+
+RDEPEND="sys-apps/dbus"
+DEPEND="${RDEPEND}
+	chromeos-base/libsirenia:=
+	=dev-rust/anyhow-1*:=
+	dev-rust/chromeos-dbus-bindings:=
+	=dev-rust/dbus-0.9*:=
+	=dev-rust/getopts-0.2*:=
+	dev-rust/libchromeos:=
+	=dev-rust/log-0.4*:=
+	=dev-rust/stderrlog-0.5*:=
+	dev-rust/sys_util:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+	=dev-rust/which-4*:=
+"
+
+src_install() {
+	cros-rust_src_install
+
+	local build_dir="$(cros-rust_get_build_dir)"
+	dobin "${build_dir}/manatee"
+}
diff --git a/dev-rust/manatee-client/manatee-client-9999.ebuild b/dev-rust/manatee-client/manatee-client-9999.ebuild
index 76f6a77..e4920c8 100644
--- a/dev-rust/manatee-client/manatee-client-9999.ebuild
+++ b/dev-rust/manatee-client/manatee-client-9999.ebuild
@@ -22,8 +22,9 @@
 RDEPEND="sys-apps/dbus"
 DEPEND="${RDEPEND}
 	chromeos-base/libsirenia:=
+	=dev-rust/anyhow-1*:=
 	dev-rust/chromeos-dbus-bindings:=
-	=dev-rust/dbus-0.8*:=
+	=dev-rust/dbus-0.9*:=
 	=dev-rust/getopts-0.2*:=
 	dev-rust/libchromeos:=
 	=dev-rust/log-0.4*:=
diff --git a/dev-rust/md5/OWNERS b/dev-rust/md5/OWNERS
new file mode 100644
index 0000000..0edda31
--- /dev/null
+++ b/dev-rust/md5/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform/crosvm:/OWNERS
diff --git a/dev-rust/md5/md5-0.7.0.ebuild b/dev-rust/md5/md5-0.7.0.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/md5/md5-0.7.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/memchr/memchr-2.4.0.ebuild b/dev-rust/memchr/memchr-2.4.0.ebuild
index 918cb62..6c52b3d 100644
--- a/dev-rust/memchr/memchr-2.4.0.ebuild
+++ b/dev-rust/memchr/memchr-2.4.0.ebuild
@@ -21,3 +21,6 @@
 RDEPEND="${DEPEND}"
 
 # This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `memchr`
+RESTRICT="test"
diff --git a/dev-rust/microamp/OWNERS b/dev-rust/microamp/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/microamp/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/microamp/microamp-0.1.0.ebuild b/dev-rust/microamp/microamp-0.1.0.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/microamp/microamp-0.1.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/minijail-sys/minijail-sys-0.0.11-r6.ebuild b/dev-rust/minijail-sys/minijail-sys-0.0.11-r6.ebuild
deleted file mode 100644
index e5cf268..0000000
--- a/dev-rust/minijail-sys/minijail-sys-0.0.11-r6.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# This lives separately from the main minijail ebuild since we don't have Rust
-# available in the SDK builder.
-# TODO: Consider moving back into main ebuild once crbug.com/1046088 is
-# resolved.
-
-EAPI=7
-
-inherit cros-constants
-
-CROS_WORKON_COMMIT="96dd14e0abd27f2aaac1dc5b8ff40f17e79605f0"
-CROS_WORKON_TREE="c12462bccb06babed5abc2a8e153f3ff5b04d259"
-CROS_WORKON_MANUAL_UPREV=1
-CROS_WORKON_LOCALNAME="../aosp/external/minijail"
-CROS_WORKON_PROJECT="platform/external/minijail"
-CROS_WORKON_EGIT_BRANCH="master"
-CROS_WORKON_REPO="${CROS_GIT_AOSP_URL}"
-CROS_WORKON_SUBTREE="rust/minijail-sys"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="rust bindings for minijail"
-HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-# ebuilds that install executables and depend on minijail-sys need to RDEPEND on
-# chromeos-base/minijail and sys-libs/libcap
-DEPEND="
-	chromeos-base/minijail:=
-	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0
-	>=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0
-	sys-libs/libcap:=
-	virtual/bindgen:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}"
-
-src_unpack() {
-	# Unpack both the minijail and Rust dependency source code.
-	cros-workon_src_unpack
-	S+="/rust/minijail-sys"
-
-	cros-rust_src_unpack
-}
-
-src_compile() {
-	use test && ecargo_test --no-run
-}
-
-src_test() {
-	if use x86 || use amd64; then
-		ecargo_test
-	else
-		elog "Skipping rust unit tests on non-x86 platform"
-	fi
-}
diff --git a/dev-rust/minijail-sys/minijail-sys-0.0.12-r8.ebuild b/dev-rust/minijail-sys/minijail-sys-0.0.12-r8.ebuild
deleted file mode 100644
index e99d799..0000000
--- a/dev-rust/minijail-sys/minijail-sys-0.0.12-r8.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# This lives separately from the main minijail ebuild since we don't have Rust
-# available in the SDK builder.
-# TODO: Consider moving back into main ebuild once crbug.com/1046088 is
-# resolved.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="2453b1fc097f3a995be8bcc0a2ada1fba616f287"
-CROS_WORKON_TREE="1121f5e2d4d75def167b19e54a7e03264df8a7f7"
-inherit cros-constants
-
-CROS_RUST_SUBDIR="rust/minijail-sys"
-
-CROS_WORKON_MANUAL_UPREV=1
-CROS_WORKON_LOCALNAME="../aosp/external/minijail"
-CROS_WORKON_PROJECT="platform/external/minijail"
-CROS_WORKON_EGIT_BRANCH="master"
-CROS_WORKON_REPO="${CROS_GIT_AOSP_URL}"
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="rust bindings for minijail"
-HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-# ebuilds that install executables and depend on minijail-sys need to RDEPEND on
-# chromeos-base/minijail and sys-libs/libcap
-DEPEND="
-	chromeos-base/minijail:=
-	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0
-	>=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0
-	sys-libs/libcap:=
-	virtual/bindgen:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}"
diff --git a/dev-rust/minijail-sys/minijail-sys-0.0.13-r11.ebuild b/dev-rust/minijail-sys/minijail-sys-0.0.13-r11.ebuild
new file mode 100644
index 0000000..ed07532
--- /dev/null
+++ b/dev-rust/minijail-sys/minijail-sys-0.0.13-r11.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+# This lives separately from the main minijail ebuild since we don't have Rust
+# available in the SDK builder.
+# TODO: Consider moving back into main ebuild once crbug.com/1046088 is
+# resolved.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="25d0f2ba70ba09959e4e41f6df146aedcaff4e4c"
+CROS_WORKON_TREE="9827997d82db7f7e49902f5a62123aa5ab08c3be"
+inherit cros-constants
+
+CROS_RUST_SUBDIR="rust/minijail-sys"
+
+CROS_WORKON_MANUAL_UPREV=1
+CROS_WORKON_LOCALNAME="../aosp/external/minijail"
+CROS_WORKON_PROJECT="platform/external/minijail"
+CROS_WORKON_EGIT_BRANCH="master"
+CROS_WORKON_REPO="${CROS_GIT_AOSP_URL}"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="rust bindings for minijail"
+HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test"
+
+# ebuilds that install executables and depend on minijail-sys need to RDEPEND on
+# chromeos-base/minijail and sys-libs/libcap
+DEPEND="
+	chromeos-base/minijail:=
+	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0
+	>=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0
+	=dev-rust/which-4*:=
+	sys-libs/libcap:=
+	virtual/bindgen:=
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+	cros-rust_src_prepare
+	# Do not skip regeneration of libminijail.rs.
+	export CROS_RUST=0
+}
diff --git a/dev-rust/minijail-sys/minijail-sys-9999.ebuild b/dev-rust/minijail-sys/minijail-sys-9999.ebuild
index b63654a..c97cc9f 100644
--- a/dev-rust/minijail-sys/minijail-sys-9999.ebuild
+++ b/dev-rust/minijail-sys/minijail-sys-9999.ebuild
@@ -17,7 +17,6 @@
 CROS_WORKON_PROJECT="platform/external/minijail"
 CROS_WORKON_EGIT_BRANCH="master"
 CROS_WORKON_REPO="${CROS_GIT_AOSP_URL}"
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
 
 inherit cros-workon cros-rust
 
@@ -34,9 +33,16 @@
 	chromeos-base/minijail:=
 	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0
 	>=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0
+	=dev-rust/which-4*:=
 	sys-libs/libcap:=
 	virtual/bindgen:=
 "
 # (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
 # installing binpkgs since the full source tree is required to use the crate.
 RDEPEND="${DEPEND}"
+
+src_prepare() {
+	cros-rust_src_prepare
+	# Do not skip regeneration of libminijail.rs.
+	export CROS_RUST=0
+}
diff --git a/dev-rust/minijail/minijail-0.2.1-r6.ebuild b/dev-rust/minijail/minijail-0.2.1-r6.ebuild
deleted file mode 100644
index ce6459e..0000000
--- a/dev-rust/minijail/minijail-0.2.1-r6.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# This lives separately from the main minijail ebuild since we don't have Rust
-# available in the SDK builder.
-# TODO: Consider moving back into main ebuild once crbug.com/1046088 is
-# resolved.
-
-EAPI=7
-
-inherit cros-constants
-
-CROS_WORKON_COMMIT="85d797ecbfd7aefbb9486afeaed3cf5f74858562"
-CROS_WORKON_TREE="2ac2853d10ad0e5f4b451d75ea3590649b9ee241"
-CROS_WORKON_MANUAL_UPREV=1
-CROS_WORKON_LOCALNAME="../aosp/external/minijail"
-CROS_WORKON_PROJECT="platform/external/minijail"
-CROS_WORKON_EGIT_BRANCH="master"
-CROS_WORKON_REPO="${CROS_GIT_AOSP_URL}"
-CROS_WORKON_SUBTREE="rust/minijail"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="rust bindings for minijail"
-HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="asan test"
-
-DEPEND="
-	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0
-	dev-rust/minijail-sys:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}"
-
-src_unpack() {
-	# Unpack both the minijail and Rust dependency source code.
-	cros-workon_src_unpack
-	S+="/rust/minijail"
-
-	cros-rust_src_unpack
-}
-
-src_compile() {
-	if use x86 || use amd64; then
-		use test && ecargo_test --no-run
-	fi
-}
-
-src_test() {
-	if cros-rust_use_sanitizers; then
-		# crbug.com/1097761 The unit tests for this package leak threads.
-		elog "Skipping rust unit tests for ASAN because fork leaks threads."
-	elif use x86 || use amd64; then
-		# TODO(crbug/1115287) Include the wait_* tests once they don't hang.
-		ecargo_test -- --skip tests::wait_
-	else
-		elog "Skipping rust unit tests on non-x86 platform"
-	fi
-}
diff --git a/dev-rust/minijail/minijail-0.2.2-r8.ebuild b/dev-rust/minijail/minijail-0.2.2-r8.ebuild
deleted file mode 100644
index 75a4836..0000000
--- a/dev-rust/minijail/minijail-0.2.2-r8.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# This lives separately from the main minijail ebuild since we don't have Rust
-# available in the SDK builder.
-# TODO: Consider moving back into main ebuild once crbug.com/1046088 is
-# resolved.
-
-EAPI=7
-
-CROS_WORKON_COMMIT="2453b1fc097f3a995be8bcc0a2ada1fba616f287"
-CROS_WORKON_TREE="7dd54d6994a78efa674fac10be69ff0c8866e384"
-inherit cros-constants
-
-CROS_RUST_SUBDIR="rust/minijail"
-
-CROS_WORKON_MANUAL_UPREV=1
-CROS_WORKON_LOCALNAME="../aosp/external/minijail"
-CROS_WORKON_PROJECT="platform/external/minijail"
-CROS_WORKON_EGIT_BRANCH="master"
-CROS_WORKON_REPO="${CROS_GIT_AOSP_URL}"
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="rust bindings for minijail"
-HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="asan test"
-
-DEPEND="
-	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0
-	dev-rust/minijail-sys:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}"
-
-src_test() {
-	local args=( -- --test-threads=1 )
-	if ! use amd64; then
-		# TODO(crbug.com/1201377) enable all tests on ARM when supported.
-		args=( --lib "${args[@]}" --skip 'seccomp_no_new_privs' )
-	fi
-	cros-rust_src_test "${args[@]}"
-}
diff --git a/dev-rust/minijail/minijail-0.2.3-r10.ebuild b/dev-rust/minijail/minijail-0.2.3-r10.ebuild
new file mode 100644
index 0000000..75e350a
--- /dev/null
+++ b/dev-rust/minijail/minijail-0.2.3-r10.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+# This lives separately from the main minijail ebuild since we don't have Rust
+# available in the SDK builder.
+# TODO: Consider moving back into main ebuild once crbug.com/1046088 is
+# resolved.
+
+EAPI=7
+
+CROS_WORKON_COMMIT="74296b3ba8ca5b2e464f741e309d937be0e444e7"
+CROS_WORKON_TREE="9e34181382f35f4cedb5a0dfd86afd39212d42f8"
+inherit cros-constants
+
+CROS_RUST_SUBDIR="rust/minijail"
+
+CROS_WORKON_MANUAL_UPREV=1
+CROS_WORKON_LOCALNAME="../aosp/external/minijail"
+CROS_WORKON_PROJECT="platform/external/minijail"
+CROS_WORKON_EGIT_BRANCH="master"
+CROS_WORKON_REPO="${CROS_GIT_AOSP_URL}"
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="rust bindings for minijail"
+HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="asan test"
+
+DEPEND="
+	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0
+	>=dev-rust/minijail-sys-0.0.13:=
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}"
+
+src_test() {
+	local args=( -- --test-threads=1 )
+	if ! use amd64; then
+		# TODO(crbug.com/1201377) enable all tests on ARM when supported.
+		args=( --lib "${args[@]}" --skip 'seccomp_no_new_privs' )
+	fi
+	cros-rust_src_test "${args[@]}"
+}
diff --git a/dev-rust/minijail/minijail-9999.ebuild b/dev-rust/minijail/minijail-9999.ebuild
index 7527e0e..f5e5c7d 100644
--- a/dev-rust/minijail/minijail-9999.ebuild
+++ b/dev-rust/minijail/minijail-9999.ebuild
@@ -30,7 +30,7 @@
 
 DEPEND="
 	>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0
-	dev-rust/minijail-sys:=
+	>=dev-rust/minijail-sys-0.0.13:=
 "
 # (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
 # installing binpkgs since the full source tree is required to use the crate.
diff --git a/dev-rust/multimap/Manifest b/dev-rust/multimap/Manifest
new file mode 100644
index 0000000..5b3ac90
--- /dev/null
+++ b/dev-rust/multimap/Manifest
@@ -0,0 +1 @@
+DIST multimap-0.8.3.crate 13518 BLAKE2B 7e00324be2944f3ca38bf02bfe37f47313aa501fc166ec417cd05f11059b14aa761b58f7a737792e2f9488ef5e7825fbb13cbb6ba2ce4935f4c39414fe069730 SHA512 8580982dde6624a0d181cfdf6cc2293c368762b548f32d196fb7a29fb698d1cb743bc2572ca284c6ecd107a632ea2a428fc998c05df164437f2cb470d24d23cd
diff --git a/dev-rust/multimap/OWNERS b/dev-rust/multimap/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/multimap/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/multimap/multimap-0.8.3.ebuild b/dev-rust/multimap/multimap-0.8.3.ebuild
new file mode 100644
index 0000000..c593005
--- /dev/null
+++ b/dev-rust/multimap/multimap-0.8.3.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A multimap implementation.'
+HOMEPAGE='https://crates.io/crates/multimap'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/serde-1.0*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+IUSE="test"
+TEST_DEPS="
+	test? ( =dev-rust/serde_test-1.0*:= )
+"
+DEPEND+="${TEST_DEPS}"
+RDEPEND+="${TEST_DEPS}"
+
+src_prepare() {
+	if use test; then
+		CROS_RUST_REMOVE_DEV_DEPS=0
+	fi
+	cros-rust_src_prepare
+}
diff --git a/dev-rust/native-tls/native-tls-0.2.3-r1.ebuild b/dev-rust/native-tls/native-tls-0.2.3-r1.ebuild
new file mode 100644
index 0000000..03d1501
--- /dev/null
+++ b/dev-rust/native-tls/native-tls-0.2.3-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A wrapper over a platform"s native TLS implementation'
+HOMEPAGE='https://crates.io/crates/native-tls'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/lazy_static-1*:=
+	=dev-rust/libc-0.2*:=
+	>=dev-rust/security-framework-0.3.1:= <dev-rust/security-framework-0.4.0_alpha
+	>=dev-rust/security-framework-sys-0.3.1:= <dev-rust/security-framework-sys-0.4.0_alpha
+	=dev-rust/tempfile-3*:=
+	>=dev-rust/log-0.4.5:= <dev-rust/log-0.5.0_alpha
+	>=dev-rust/openssl-0.10.15:= <dev-rust/openssl-0.11.0_alpha
+	=dev-rust/openssl-probe-0.1*:=
+	>=dev-rust/openssl-sys-0.9.30:= <dev-rust/openssl-sys-0.10.0_alpha
+	>=dev-rust/schannel-0.1.13:= <dev-rust/schannel-0.2.0_alpha
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/native-tls/native-tls-0.2.3.ebuild b/dev-rust/native-tls/native-tls-0.2.3.ebuild
deleted file mode 100644
index e97550f..0000000
--- a/dev-rust/native-tls/native-tls-0.2.3.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-CROS_RUST_REMOVE_DEV_DEPS=1
-
-inherit cros-rust
-
-DESCRIPTION="An abstraction over platform-specific TLS implementations."
-HOMEPAGE="https://github.com/sfackler/rust-native-tls"
-SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
-
-LICENSE="|| ( MIT Apache-2.0 )"
-SLOT="${PV}/${PR}"
-KEYWORDS="*"
-
-DEPEND="
-	>=dev-rust/lazy_static-1.0:=
-	>=dev-rust/libc-0.2:=
-	>=dev-rust/log-0.4.5:=
-	>=dev-rust/openssl-0.10.15:=
-	>=dev-rust/openssl-probe-0.1:=
-	>=dev-rust/openssl-sys-0.9.30:=
-	>=dev-rust/schannel-0.1.13:=
-	>=dev-rust/security-framework-0.3.1:=
-	>=dev-rust/security-framework-sys-0.3.1:=
-	>=dev-rust/tempfile-3.0:=
-"
diff --git a/dev-rust/nb/Manifest b/dev-rust/nb/Manifest
new file mode 100644
index 0000000..aad5b01
--- /dev/null
+++ b/dev-rust/nb/Manifest
@@ -0,0 +1,2 @@
+DIST nb-1.0.0.crate 11523 BLAKE2B 8fff18e0c7851bd3057344c3ef62aab7e8bb7abca62d497b089c4a058beafc6d114e99df6e3b20986265338712fb4bd4d56cb205605ca37f21bdd18c4c77c0b8 SHA512 ad8a57c32f28a1ca13ed51ebface15f661a5857cc4470d4140b41c417793730007cb2e1d70dfed8df427d90d1434838b7ca36ff4da8d93555b0f2eca65b084f8
+DIST nb-0.1.3.crate 10112 BLAKE2B a5f1a72751bb2e3bed27f6ca18eb7f4060c15b863f34d8a86069e0359656d77c41e6f93e87a90e2e8e2ab23809ebf41d45a53a360f395a6d01bcc88ed3f76df1 SHA512 5369e46eefae33b397c1dec374214e6053e27f0da3cdd2e604deeb442604f1b5238272c8e49e047b0cb2ef2a4f934dbb101cd98c07db27f4b695f80f4dc71132
diff --git a/dev-rust/nb/OWNERS b/dev-rust/nb/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/nb/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/nb/nb-0.1.3.ebuild b/dev-rust/nb/nb-0.1.3.ebuild
new file mode 100644
index 0000000..e7d287d
--- /dev/null
+++ b/dev-rust/nb/nb-0.1.3.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Minimal non-blocking I/O layer'
+HOMEPAGE='https://crates.io/crates/nb'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/nb-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/nb/nb-1.0.0.ebuild b/dev-rust/nb/nb-1.0.0.ebuild
new file mode 100644
index 0000000..d803323
--- /dev/null
+++ b/dev-rust/nb/nb-1.0.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Minimal non-blocking I/O layer'
+HOMEPAGE='https://crates.io/crates/nb'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/nix/nix-0.19.0.ebuild b/dev-rust/nix/nix-0.19.0.ebuild
index eb9c8d0..9927ea9 100644
--- a/dev-rust/nix/nix-0.19.0.ebuild
+++ b/dev-rust/nix/nix-0.19.0.ebuild
@@ -22,3 +22,6 @@
 	>=dev-rust/libc-0.2.78:= <dev-rust/libc-3.0.0
 "
 RDEPEND="${DEPEND}"
+
+# error: could not compile `nix`
+RESTRICT="test"
diff --git a/dev-rust/no-panic/no-panic-0.1.10.ebuild b/dev-rust/no-panic/no-panic-0.1.10.ebuild
index 8bc10f0..2bbcd37 100644
--- a/dev-rust/no-panic/no-panic-0.1.10.ebuild
+++ b/dev-rust/no-panic/no-panic-0.1.10.ebuild
@@ -19,3 +19,6 @@
 	=dev-rust/syn-0.15*:=
 	=dev-rust/tempfile-3*:=
 "
+
+# could not compile
+RESTRICT="test"
diff --git a/dev-rust/nom/OWNERS b/dev-rust/nom/OWNERS
index 89a2330..8a1b878 100644
--- a/dev-rust/nom/OWNERS
+++ b/dev-rust/nom/OWNERS
@@ -1 +1 @@
-include chromiumos/overlays/chromiumos-overlay:/dev-rust/cexpr/OWNERS
+include /dev-rust/cexpr/OWNERS
diff --git a/dev-rust/nom/nom-5.1.2.ebuild b/dev-rust/nom/nom-5.1.2.ebuild
index cf75f51..d22ebcf 100644
--- a/dev-rust/nom/nom-5.1.2.ebuild
+++ b/dev-rust/nom/nom-5.1.2.ebuild
@@ -22,3 +22,6 @@
 	=dev-rust/regex-1*:=
 	=dev-rust/version_check-0.9*:=
 "
+
+# error: could not compile `nom`
+RESTRICT="test"
diff --git a/dev-rust/num-bigint/Manifest b/dev-rust/num-bigint/Manifest
new file mode 100644
index 0000000..d3d8fef
--- /dev/null
+++ b/dev-rust/num-bigint/Manifest
@@ -0,0 +1 @@
+DIST num-bigint-0.4.0.crate 90002 BLAKE2B f68f92d7796d97aad60e6b08976a08759fee51672f96e1a6c742aa3d4ae2f35b921cd948923bd7aaaafec096e9b0709a060833045d63b5352293567b68cf3d6e SHA512 adbb20a1407934a129daf25278470f76a40b3adc002994927e3d57f7370bf857761cb117f7c726e98a487ce557c4ef6ee668702958b21e90c31df4e269393d00
diff --git a/dev-rust/num-bigint/OWNERS b/dev-rust/num-bigint/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/num-bigint/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/num-bigint/num-bigint-0.4.0.ebuild b/dev-rust/num-bigint/num-bigint-0.4.0.ebuild
new file mode 100644
index 0000000..9ed27b5
--- /dev/null
+++ b/dev-rust/num-bigint/num-bigint-0.4.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Big integer implementation for Rust'
+HOMEPAGE='https://github.com/rust-num/num-bigint'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/arbitrary-1*:=
+	>=dev-rust/num-integer-0.1.42:= <dev-rust/num-integer-0.2.0
+	>=dev-rust/num-traits-0.2.11:= <dev-rust/num-traits-0.3.0
+	=dev-rust/quickcheck-1*:=
+	=dev-rust/rand-0.8*:=
+	=dev-rust/serde-1*:=
+	=dev-rust/autocfg-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/num-integer/Manifest b/dev-rust/num-integer/Manifest
index 63fb08e..05e037f 100644
--- a/dev-rust/num-integer/Manifest
+++ b/dev-rust/num-integer/Manifest
@@ -1 +1,2 @@
 DIST num-integer-0.1.38.crate 12929 BLAKE2B 42e5f58b9f7c447923491152df9ff0921c0a6f73eba205859c2b4b41efcf7d1c3987303f6cb27b74703abd6d31579ea350509e65c83acd7b00ca39c5204d160f SHA512 d49fcf05b1e16e955db92b07a81b3519dd69c156083e70a27850c6d4dd37e034e82fc3e18c99c4316abf5989085181ec09a3454fcd1f74d2437a5a6f8de2f202
+DIST num-integer-0.1.44.crate 22216 BLAKE2B e1c08427e006cde6f2084adadb6086e87e6d6f8bb8dfa757a8228aa671e862a366e4bd8ca5e0500008c18bab128aead9bd5b1e53568a4f40afadcaf3882ee98f SHA512 d07e27ede02a1d007373935fd91e57a26e0e84ae14bbe24be66763baae6850788bd64ad2598d2bde4f4fad6c8a4675c40bfe0927164b16b9b69de5e9a83d9771
diff --git a/dev-rust/num-integer/OWNERS b/dev-rust/num-integer/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/num-integer/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/num-integer/num-integer-0.1.44.ebuild b/dev-rust/num-integer/num-integer-0.1.44.ebuild
new file mode 100644
index 0000000..e1527f5
--- /dev/null
+++ b/dev-rust/num-integer/num-integer-0.1.44.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Integer traits and functions'
+HOMEPAGE='https://github.com/rust-num/num-integer'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/num-traits-0.2.11:= <dev-rust/num-traits-0.3.0
+	=dev-rust/autocfg-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/num-traits/num-traits-0.2.12.ebuild b/dev-rust/num-traits/num-traits-0.2.12.ebuild
index 3f2dcf7..e1fed6d 100644
--- a/dev-rust/num-traits/num-traits-0.2.12.ebuild
+++ b/dev-rust/num-traits/num-traits-0.2.12.ebuild
@@ -12,3 +12,5 @@
 LICENSE="|| ( MIT Apache-2.0 )"
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
+
+RESTRICT="test" # requires libm crate
diff --git a/dev-rust/num_enum/num_enum-0.5.1-r1.ebuild b/dev-rust/num_enum/num_enum-0.5.1-r1.ebuild
index 532d4f0..4827526 100644
--- a/dev-rust/num_enum/num_enum-0.5.1-r1.ebuild
+++ b/dev-rust/num_enum/num_enum-0.5.1-r1.ebuild
@@ -24,3 +24,5 @@
 RDEPEND="${DEPEND}
 	!=dev-rust/num_enum-5*
 "
+
+RESTRICT="test"
diff --git a/dev-rust/os_str_bytes/Manifest b/dev-rust/os_str_bytes/Manifest
new file mode 100644
index 0000000..e9f23fc
--- /dev/null
+++ b/dev-rust/os_str_bytes/Manifest
@@ -0,0 +1 @@
+DIST os_str_bytes-2.4.0.crate 14657 BLAKE2B 57f8fa434237c9ded24ef10f225b0c46825308c526a523cffa4c334d43c54c4f678beb7eea9fcf8bc246ccb1ee7d72f428a40acf271964fc4d26cd9ab6eb1b0f SHA512 4e06a2c7f5470c56bdf5e06afb5fcaa4001a29c2cd79db6ed9ffb762154ba20bf11dab97ed7cb2f50f53b2e12241b0988bb220b60f4210d4f01fb2f0e1d186e6
diff --git a/dev-rust/os_str_bytes/OWNERS b/dev-rust/os_str_bytes/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/os_str_bytes/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/os_str_bytes/os_str_bytes-2.4.0.ebuild b/dev-rust/os_str_bytes/os_str_bytes-2.4.0.ebuild
new file mode 100644
index 0000000..ec1d499
--- /dev/null
+++ b/dev-rust/os_str_bytes/os_str_bytes-2.4.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Traits for converting between byte sequences and platform-native strings'
+HOMEPAGE='https://crates.io/crates/os_str_bytes'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/owning_ref/Manifest b/dev-rust/owning_ref/Manifest
index e9f8223..0215f97 100644
--- a/dev-rust/owning_ref/Manifest
+++ b/dev-rust/owning_ref/Manifest
@@ -1,2 +1,3 @@
 DIST owning_ref-0.3.3.crate 11710 BLAKE2B adf07d01a82c1eadb5f4e74072a69e0a76603bd5f7a4fe2fe86f71c9733360a769eeaae4bbf830fe125da463a909ad0a690e99a30ffcf766165cf63dc3c43202 SHA512 260f3d77f23b092c5ca96dff6746d378caa1bac965745a71ca18eed30a12c6869af62259daafc91c8666baf95e04619ad0d8fe06b47d5e517688b35f0c59005a
 DIST owning_ref-0.4.0.crate 12233 BLAKE2B c50343d2bbc99c4c8035e1251c2ab31609e8209fe5b6bbdca8bdb0cc5fe7749ce29ef2aae77c90798e2f2f201e12ad81e6607c34c2797195890b5587178dd194 SHA512 51bb1cb259452f7395bce0ac4e7d2d6f3733dfe7a8a1a46d50179516ef921924f745a248e4816da5e434b589b5956a20ca554f9a93790b2ed1c55451b9b885ba
+DIST owning_ref-0.4.1.crate 12658 BLAKE2B 42bda4584b2f017e7b48bfc1fab9aaf59d49b8942eceaff6f6d95e5e1fd456d952693ef70ca1a496c48d3bfbf69604dd47adb97af31fdd803a6119f11503920d SHA512 15ecf5c53a675f7c96f850f54bea5fde63f8cfe22ad5c01941f67695154a39950087bd72bbd9a2f9e76825a3fb8dd1d20ba92335f265f4aa273e1086773b918c
diff --git a/dev-rust/owning_ref/owning_ref-0.4.1.ebuild b/dev-rust/owning_ref/owning_ref-0.4.1.ebuild
new file mode 100644
index 0000000..8614a065
--- /dev/null
+++ b/dev-rust/owning_ref/owning_ref-0.4.1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit cros-rust
+
+DESCRIPTION="A library for creating references that carry their owner with them."
+HOMEPAGE="https://github.com/Kimundi/owning-ref-rs"
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/stable_deref_trait-1*:=
+"
+
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/p9/files/chromeos-version.sh b/dev-rust/p9/files/chromeos-version.sh
index fa102e7..7028be3 100755
--- a/dev-rust/p9/files/chromeos-version.sh
+++ b/dev-rust/p9/files/chromeos-version.sh
@@ -6,4 +6,4 @@
 
 # Assumes the first 'version =' line in the Cargo.toml is the version for the
 # crate.
-awk '/^version = / { print $3 }' "$1/vm_tools/p9/Cargo.toml" | head -n1 | tr -d '"'
+awk '/^version = / { print $3 }' "$1/common/p9/Cargo.toml" | head -n1 | tr -d '"'
diff --git a/dev-rust/p9/p9-0.1.0-r167.ebuild b/dev-rust/p9/p9-0.1.0-r167.ebuild
new file mode 100644
index 0000000..c61b789
--- /dev/null
+++ b/dev-rust/p9/p9-0.1.0-r167.ebuild
@@ -0,0 +1,106 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5acd4ee978d9fa1da9476c0338190e08c53ea2aa"
+CROS_WORKON_TREE="c5944a955c7994afdaaee1facb2604801bb47e03"
+CROS_RUST_SUBDIR="common/p9"
+
+CROS_WORKON_LOCALNAME="../platform/crosvm"
+CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE=""  # TODO(b/195126527): limit subtree to common/
+
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
+inherit cros-fuzzer cros-workon cros-rust
+
+DESCRIPTION="Server implementation of the 9P file system protocol"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/p9/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="fuzzer test"
+
+DEPEND="
+	dev-rust/libc:=
+	=dev-rust/proc-macro2-1*:=
+	=dev-rust/quote-1*:=
+	=dev-rust/syn-1*:=
+	dev-rust/sys_util:=
+	fuzzer? ( dev-rust/cros_fuzz:= )
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}
+	!!<=dev-rust/p9-0.1.0-r14
+"
+
+get_crate_version() {
+	local crate="$1"
+	awk '/^version = / { print $3 }' "$1/Cargo.toml" | head -n1 | tr -d '"'
+}
+
+pkg_setup() {
+	cros-rust_pkg_setup wire_format_derive
+	cros-rust_pkg_setup p9
+}
+
+src_compile() {
+	(
+		cd wire_format_derive || die
+		ecargo_build
+		use test && ecargo_test --no-run
+	)
+
+	ecargo_build
+	use test && ecargo_test --no-run
+
+	if use fuzzer; then
+		cd fuzz
+		ecargo_build_fuzzer
+	fi
+}
+
+src_test() {
+	(
+		cd wire_format_derive || die
+		cros-rust_src_test
+	)
+
+	cros-rust_src_test
+}
+
+src_install() {
+	pushd wire_format_derive > /dev/null || die
+	local version="$(get_crate_version .)"
+	cros-rust_publish wire_format_derive "${version}"
+	popd > /dev/null || die
+
+	version="$(get_crate_version .)"
+	cros-rust_publish p9 "${version}"
+
+	if use fuzzer; then
+		local fuzzer_component_id="982362"
+		fuzzer_install "${S}/OWNERS" \
+			"$(cros-rust_get_build_dir)/p9_tframe_decode_fuzzer" \
+			--comp "${fuzzer_component_id}"
+	fi
+}
+
+pkg_preinst() {
+	cros-rust_pkg_preinst wire_format_derive
+	cros-rust_pkg_preinst p9
+}
+
+pkg_postinst() {
+	cros-rust_pkg_postinst wire_format_derive
+	cros-rust_pkg_postinst p9
+}
+
+pkg_prerm() {
+	cros-rust_pkg_prerm wire_format_derive
+	cros-rust_pkg_prerm p9
+}
diff --git a/dev-rust/p9/p9-0.1.0-r34.ebuild b/dev-rust/p9/p9-0.1.0-r34.ebuild
deleted file mode 100644
index ac54382..0000000
--- a/dev-rust/p9/p9-0.1.0-r34.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="f4437d4dafb0bd389d82dac996ca28dba2dab6a4"
-CROS_WORKON_TREE="35c56057196d0db164eba11f0482eef6a7510d23"
-CROS_RUST_SUBDIR="vm_tools/p9"
-
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
-
-inherit cros-fuzzer cros-workon cros-rust
-
-DESCRIPTION="Server implementation of the 9P file system protocol"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/p9/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="fuzzer test"
-
-DEPEND="
-	dev-rust/libc:=
-	=dev-rust/proc-macro2-1*:=
-	=dev-rust/quote-1*:=
-	=dev-rust/syn-1*:=
-	dev-rust/sys_util:=
-	fuzzer? ( dev-rust/cros_fuzz:= )
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}
-	!!<=dev-rust/p9-0.1.0-r14
-"
-
-get_crate_version() {
-	local crate="$1"
-	awk '/^version = / { print $3 }' "$1/Cargo.toml" | head -n1 | tr -d '"'
-}
-
-pkg_setup() {
-	cros-rust_pkg_setup wire_format_derive
-	cros-rust_pkg_setup p9
-}
-
-src_compile() {
-	(
-		cd wire_format_derive || die
-		ecargo_build
-		use test && ecargo_test --no-run
-	)
-
-	ecargo_build
-	use test && ecargo_test --no-run
-
-	if use fuzzer; then
-		cd fuzz
-		ecargo_build_fuzzer
-	fi
-}
-
-src_test() {
-	(
-		cd wire_format_derive || die
-		cros-rust_src_test
-	)
-
-	cros-rust_src_test
-}
-
-src_install() {
-	pushd wire_format_derive > /dev/null || die
-	local version="$(get_crate_version .)"
-	cros-rust_publish wire_format_derive "${version}"
-	popd > /dev/null || die
-
-	version="$(get_crate_version .)"
-	cros-rust_publish p9 "${version}"
-
-	if use fuzzer; then
-		fuzzer_install "${S}/fuzz/OWNERS" \
-			"$(cros-rust_get_build_dir)/p9_tframe_decode_fuzzer"
-	fi
-}
-
-pkg_preinst() {
-	cros-rust_pkg_preinst wire_format_derive
-	cros-rust_pkg_preinst p9
-}
-
-pkg_postinst() {
-	cros-rust_pkg_postinst wire_format_derive
-	cros-rust_pkg_postinst p9
-}
-
-pkg_prerm() {
-	cros-rust_pkg_prerm wire_format_derive
-	cros-rust_pkg_prerm p9
-}
diff --git a/dev-rust/p9/p9-9999.ebuild b/dev-rust/p9/p9-9999.ebuild
index 8dc4fa4..5b57813 100644
--- a/dev-rust/p9/p9-9999.ebuild
+++ b/dev-rust/p9/p9-9999.ebuild
@@ -3,12 +3,15 @@
 
 EAPI=7
 
-CROS_RUST_SUBDIR="vm_tools/p9"
+CROS_RUST_SUBDIR="common/p9"
 
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform/crosvm"
+CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
 CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
+CROS_WORKON_SUBTREE=""  # TODO(b/195126527): limit subtree to common/
+
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
 
 inherit cros-fuzzer cros-workon cros-rust
 
@@ -78,8 +81,10 @@
 	cros-rust_publish p9 "${version}"
 
 	if use fuzzer; then
-		fuzzer_install "${S}/fuzz/OWNERS" \
-			"$(cros-rust_get_build_dir)/p9_tframe_decode_fuzzer"
+		local fuzzer_component_id="982362"
+		fuzzer_install "${S}/OWNERS" \
+			"$(cros-rust_get_build_dir)/p9_tframe_decode_fuzzer" \
+			--comp "${fuzzer_component_id}"
 	fi
 }
 
diff --git a/dev-rust/panic-halt/Manifest b/dev-rust/panic-halt/Manifest
new file mode 100644
index 0000000..07c789b
--- /dev/null
+++ b/dev-rust/panic-halt/Manifest
@@ -0,0 +1 @@
+DIST panic-halt-0.2.0.crate 6723 BLAKE2B 2c291f8d8698d5af6151db031d670f17785e2fbaa31ec3d3e589d609d5b49308737cce8139e8dbef62b45743b88fd64888a2bc0fdc163513509040b17bd543e7 SHA512 4bf1256c306fb5d049ac6e3457c8054262aff009c8330c449e938654778319fd52dbb12a84edd78d57549291b7754ef6dc0cdb8111784ca39eca1eb0eb97cac0
diff --git a/dev-rust/panic-halt/OWNERS b/dev-rust/panic-halt/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/panic-halt/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/panic-halt/panic-halt-0.2.0.ebuild b/dev-rust/panic-halt/panic-halt-0.2.0.ebuild
new file mode 100644
index 0000000..3c00106
--- /dev/null
+++ b/dev-rust/panic-halt/panic-halt-0.2.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Set panicking behavior to halt'
+HOMEPAGE='https://crates.io/crates/panic-halt'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
+
+RESTRICT="test"
diff --git a/dev-rust/panic-reset/Manifest b/dev-rust/panic-reset/Manifest
new file mode 100644
index 0000000..7f37004
--- /dev/null
+++ b/dev-rust/panic-reset/Manifest
@@ -0,0 +1 @@
+DIST panic-reset-0.1.0.crate 6531 BLAKE2B 0a1391de5586bd2f398d1f81ee2763a0c1f188f29a1cd0076f95e843d7904ee79cc5df7edd5eb43cbfe3d40cbbcfaac007c42a43378d5835a8c16e44173d33d0 SHA512 d480e88297ff41cb305e948b6b94d1dc4297124d018ee9215db5364de6194947bfbbf15fbcdc31d867358361f1d1558bb5aec81ce910c75b2de5392c15e35e43
diff --git a/dev-rust/panic-reset/OWNERS b/dev-rust/panic-reset/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/panic-reset/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/panic-reset/panic-reset-0.1.0.ebuild b/dev-rust/panic-reset/panic-reset-0.1.0.ebuild
new file mode 100644
index 0000000..ec9faa5
--- /dev/null
+++ b/dev-rust/panic-reset/panic-reset-0.1.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Set panicking behavior to reset'
+HOMEPAGE='https://crates.io/crates/panic-reset'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/cortex-m-0.6*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `panic-reset`
+RESTRICT="test"
diff --git a/dev-rust/panic-rtt-target/Manifest b/dev-rust/panic-rtt-target/Manifest
new file mode 100644
index 0000000..14389df0
--- /dev/null
+++ b/dev-rust/panic-rtt-target/Manifest
@@ -0,0 +1 @@
+DIST panic-rtt-target-0.1.2.crate 2031 BLAKE2B ff07f2eaa4b0f57db86068d188002dda1855ce4791c89d47e5f00cee91466d87cc4f86e6ec05dc4bdebaeb92de946d49f635d89f8a966dfc8caf37b632fcd15f SHA512 237c3fcc90a0e830c5d97156070ca53a80be501d84ec99a302a2687823108cff5d3c7527159c438d565a7f3a5d0408ad9563fe7522c023d2516d5ef3fe37d146
diff --git a/dev-rust/panic-rtt-target/OWNERS b/dev-rust/panic-rtt-target/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/panic-rtt-target/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/panic-rtt-target/panic-rtt-target-0.1.2.ebuild b/dev-rust/panic-rtt-target/panic-rtt-target-0.1.2.ebuild
new file mode 100644
index 0000000..8da12b3
--- /dev/null
+++ b/dev-rust/panic-rtt-target/panic-rtt-target-0.1.2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Logs panic messages over RTT using rtt-target'
+HOMEPAGE='https://crates.io/crates/panic-rtt-target'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/cortex-m-0.7.1 <dev-rust/cortex-m-0.8.0_alpha:=
+	>=dev-rust/rtt-target-0.3.1 <dev-rust/rtt-target-0.4.0_alpha:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/parking_lot/Manifest b/dev-rust/parking_lot/Manifest
index b9d5211..315b7e4 100644
--- a/dev-rust/parking_lot/Manifest
+++ b/dev-rust/parking_lot/Manifest
@@ -1,3 +1,4 @@
+DIST parking_lot-0.11.1.crate 39854 BLAKE2B 5a097d7016811de4ca7d21e8a811a96b2e857b5224b176cf7a3bc160c0a0678c9100423e3c096c5056e2df3a4dcba17a590cc64eb1d648355c153c5cdf9db228 SHA512 17e394ac8b62656177a12fcfd246d9bb59be468a5ac174e4d6d8b4ffd0411497d3ce943ca5deab184cebf5c1bbca97b4273f79bf210c78d7f4b6f5e9d68026a2
 DIST parking_lot-0.4.8.crate 33640 BLAKE2B 81c0728e9fdaf451521bd0efac9799d7f943e0684a41e09c022c0888fbc147f7592e7c5b337261879c28b94e0a4d2de319ee7ba778d4a60b01195dc4d0f9e83a SHA512 cc7a68ae86022b97861743c49f792450c2e8aa9ead3243804155b4e37dea4d1cc5f826b6ce314bd8beb409dd60e94868c9e2f4954a398e92f541206ff589dda6
 DIST parking_lot-0.7.1.crate 32670 BLAKE2B 46faa97dd3e3e5625fc40de75eb75f17512ba63ff5ef3ee380fc549bc08b3a119a91622cc67014b9c072ae0f5ab05b10f52c24486fc03633d850ce22812dfe4f SHA512 d83d3c457e15ffce500d4fc82d0b9840ea2ed36d43d4eca841b05b0a9ee73ff6fcce07ccc3a6f0d06d950d7beff85db0c3d13dc1461adfef390d6b3d85367bed
 DIST parking_lot-0.9.0.crate 35170 BLAKE2B 3de9050c5dbbc7a0b98a5cad05dd485142bb2a22e65216a20f6e87deb6d124b4502cdb3837dbdc992ff5ea62c67e1545bab269237988832d365fba265149d245 SHA512 148da5edc08da3b27bfcc94a1c0578f228ccfbdf7a7a6f3aa73ac34e290d795f4169553bc7c2b20227e095e8ac75446db51979b595e4d77fa7c76f743138a331
diff --git a/dev-rust/parking_lot/OWNERS b/dev-rust/parking_lot/OWNERS
new file mode 100644
index 0000000..a45474a
--- /dev/null
+++ b/dev-rust/parking_lot/OWNERS
@@ -0,0 +1 @@
+ include chromiumos/platform/graphics:/OWNERS
diff --git a/dev-rust/parking_lot/parking_lot-0.11.1.ebuild b/dev-rust/parking_lot/parking_lot-0.11.1.ebuild
new file mode 100644
index 0000000..6d4eebd
--- /dev/null
+++ b/dev-rust/parking_lot/parking_lot-0.11.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION="This library provides implementations of Mutex, RwLock, Condvar and Once that are smaller, faster and more flexible than those in the Rust standard library"
+HOMEPAGE="https://github.com/Amanieu/parking_lot"
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/instant-0.1.4:= <dev-rust/instant-0.2.0
+	=dev-rust/lock_api-0.4*:=
+	=dev-rust/parking_lot_core-0.8*:=
+"
+
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/parking_lot_core/Manifest b/dev-rust/parking_lot_core/Manifest
index f87301b..675bf05 100644
--- a/dev-rust/parking_lot_core/Manifest
+++ b/dev-rust/parking_lot_core/Manifest
@@ -1,3 +1,4 @@
 DIST parking_lot_core-0.2.14.crate 22140 BLAKE2B 485d81c05b6fd0744424d071b3ead634503b6fcc38749c6e63f1ac39faf8483f4043e37491994fb009e69a3932a203461fea3843d132ef39095b83ee6fe605ab SHA512 21b6994c4990bb7e2d05f791bca8a2eabefd29b829ebc0f22893c0d7a9d2318946ac9e37a215df3555b653fd2b7bc680bd35d3d7c2ec7db90dfd4bd0a9e82a82
 DIST parking_lot_core-0.4.0.crate 26817 BLAKE2B f8a733cd6e14a2ad40adf498a3aa23bf3ad06e788f440bb435c544e5ff9750dab963ce4fc673014e54a851ed541975116f18f102f935e21912fc5b65a6aaef19 SHA512 25c0389e9d3d88725398fb304d3a4c20a3da0bf0d67f12c7cdca38f8068dc6ea7b57341579136cf4792cbb92fd64dd33cd91412463f4df8902e1b8c87ca08d08
 DIST parking_lot_core-0.6.2.crate 30598 BLAKE2B 048e87b1a785da927afc368290c2e1dd762d98239d862a1aad4850d9498b91e8d64c399bfda0586c23f02fd8839723af1d5e2ef3e714cd932ac11a111b978543 SHA512 5de5d9cac290d7d6e6a3e1fbba2784cce8b4ed163481e1cc6ec36498884b5e3cf0225c718551289be164d1a4e192de390201a083560898e4a42a4068661c0689
+DIST parking_lot_core-0.8.3.crate 32147 BLAKE2B 5218cfbff706c4388fef31c885c7a5d53566005775a3c440c6a2890efb189a4edfe8e99f6499cac36038846628a915ac988c15e1ebab1b3a3ffb53a64631dc19 SHA512 1dba5a7e68ee007918fb210ff308f7382ed1c54d2fe6db36a8246453434246b71e6795db107c83ca39c2bddf5e4a27da7978a464b53d41e150e744d81e75b341
diff --git a/dev-rust/parking_lot_core/OWNERS b/dev-rust/parking_lot_core/OWNERS
new file mode 100644
index 0000000..a45474a
--- /dev/null
+++ b/dev-rust/parking_lot_core/OWNERS
@@ -0,0 +1 @@
+ include chromiumos/platform/graphics:/OWNERS
diff --git a/dev-rust/parking_lot_core/parking_lot_core-0.8.3.ebuild b/dev-rust/parking_lot_core/parking_lot_core-0.8.3.ebuild
new file mode 100644
index 0000000..b310a8e
--- /dev/null
+++ b/dev-rust/parking_lot_core/parking_lot_core-0.8.3.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+CROS_RUST_REMOVE_TARGET_CFG=1
+
+inherit cros-rust
+
+DESCRIPTION="An advanced API for creating custom synchronization primitives"
+HOMEPAGE="https://github.com/Amanieu/parking_lot"
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/cfg-if-1*:=
+	>=dev-rust/instant-0.1.4:= <dev-rust/instant-2.0.0
+	>=dev-rust/libc-0.2.71:= <dev-rust/libc-0.3.0
+	>=dev-rust/smallvec-1.6.1 <dev-rust/smallvec-2.0.0
+	>=dev-rust/thread-id-3.3.0:= <dev-rust/thread-id-4.0.0
+"
+
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/peeking_take_while/OWNERS b/dev-rust/peeking_take_while/OWNERS
index 08ef481..9331bd8 100644
--- a/dev-rust/peeking_take_while/OWNERS
+++ b/dev-rust/peeking_take_while/OWNERS
@@ -1 +1 @@
-include chromiumos/overlays/chromiumos-overlay:/dev-rust/bindgen/OWNERS
+include /dev-rust/bindgen/OWNERS
diff --git a/dev-rust/permutohedron/Manifest b/dev-rust/permutohedron/Manifest
new file mode 100644
index 0000000..e7f60d2
--- /dev/null
+++ b/dev-rust/permutohedron/Manifest
@@ -0,0 +1 @@
+DIST permutohedron-0.2.4.crate 11090 BLAKE2B 23d159363a177b6ce4681ca6a2ba69ef9f41444955c6f0ea838ea77e9bd1dd507890f022c9fc8971d5c2a4911e3a2ad25bb019a797c4b98675b77c61449e6fe1 SHA512 40a355843b57c8e455456173b5de6816bd30102bcee857f1df40b8d7b7cb4101926737f10d9986b6beaa41807b2e1465f5600488f717301b9b21c921395ca3b0
diff --git a/dev-rust/permutohedron/OWNERS b/dev-rust/permutohedron/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/permutohedron/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/permutohedron/permutohedron-0.2.4.ebuild b/dev-rust/permutohedron/permutohedron-0.2.4.ebuild
new file mode 100644
index 0000000..d0cfced
--- /dev/null
+++ b/dev-rust/permutohedron/permutohedron-0.2.4.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Generate permutations of sequences. Either lexicographical order permutations, or a minimal swaps permutation sequence implemented using Heap"s algorithm.'
+HOMEPAGE='https://crates.io/crates/permutohedron'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
+
+RESTRICT="test"
diff --git a/dev-rust/pin-project-lite/pin-project-lite-0.2.4.ebuild b/dev-rust/pin-project-lite/pin-project-lite-0.2.4.ebuild
index 1ac8e17..b1f15f1 100644
--- a/dev-rust/pin-project-lite/pin-project-lite-0.2.4.ebuild
+++ b/dev-rust/pin-project-lite/pin-project-lite-0.2.4.ebuild
@@ -14,3 +14,6 @@
 LICENSE="|| ( MIT Apache-2.0 )"
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
+
+# error: could not compile `pin-project-lite`
+RESTRICT="test"
diff --git a/dev-rust/pkg-config/Manifest b/dev-rust/pkg-config/Manifest
index f652633..845331a 100644
--- a/dev-rust/pkg-config/Manifest
+++ b/dev-rust/pkg-config/Manifest
@@ -1 +1,2 @@
 DIST pkg-config-0.3.11.crate 13227 BLAKE2B f22a748d9330848379d9bcc32026c9ba4bcffc043495b864af95dde36ce3fe71344bf5b0534aa61574f677b9a3d1ec0e09f774dea0ee57c1810f1e6bd7edc1e4 SHA512 c5e53a9dd777bce55889fdf7028418443896890ff120beb2fda5e5fcc55624aaefc2ac058c2b4bc88519d48bacc477351b0ab1c4d4a65b4e4bf66a69a419aae6
+DIST pkg-config-0.3.19.crate 15451 BLAKE2B dc23b5ef12719b4b3d2fc5c93c087399ba954a5e127be91b26619466d5d7422e71684d02905304dca65273d69b66338d94c0642e3810a14df845ef507ddc0bfb SHA512 42bc13c4e39c8f71690db527d815884acdfd2ccf5fbfea700c6ed60257e852cdcb1c443e7774409e51da53612b0ff0aa165554b99fd0cba973f94a8df52982d9
diff --git a/dev-rust/pkg-config/pkg-config-0.3.19.ebuild b/dev-rust/pkg-config/pkg-config-0.3.19.ebuild
new file mode 100644
index 0000000..0c10f67
--- /dev/null
+++ b/dev-rust/pkg-config/pkg-config-0.3.19.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A library to run the pkg-config system tool at build time in order to be used in
+Cargo build scripts.'
+HOMEPAGE='https://crates.io/crates/pkg-config'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `pkg-config`
+RESTRICT="test"
diff --git a/dev-rust/proc-macro-error/proc-macro-error-1.0.4.ebuild b/dev-rust/proc-macro-error/proc-macro-error-1.0.4.ebuild
index 6d363a1..6ad6532 100644
--- a/dev-rust/proc-macro-error/proc-macro-error-1.0.4.ebuild
+++ b/dev-rust/proc-macro-error/proc-macro-error-1.0.4.ebuild
@@ -22,3 +22,6 @@
 	=dev-rust/syn-1*:=
 	=dev-rust/version_check-0.9*:=
 "
+
+# compile failed
+RESTRICT="test"
diff --git a/dev-rust/proc-macro-hack/proc-macro-hack-0.5.19.ebuild b/dev-rust/proc-macro-hack/proc-macro-hack-0.5.19.ebuild
index 23a3835..27d9452 100644
--- a/dev-rust/proc-macro-hack/proc-macro-hack-0.5.19.ebuild
+++ b/dev-rust/proc-macro-hack/proc-macro-hack-0.5.19.ebuild
@@ -16,3 +16,6 @@
 KEYWORDS="*"
 
 RDEPEND="!~dev-rust/${PN}-0.5.11"
+
+# error: could not compile `proc-macro-hack`
+RESTRICT="test"
diff --git a/dev-rust/proc-macro2/Manifest b/dev-rust/proc-macro2/Manifest
index ed12e45..d5b8216 100644
--- a/dev-rust/proc-macro2/Manifest
+++ b/dev-rust/proc-macro2/Manifest
@@ -1,3 +1,3 @@
 DIST proc-macro2-0.4.21.crate 30813 BLAKE2B acf36197ae0bbd69e4b85c360831f9056dffa343165f665621c3e3b1aa29edd5d20d2b046a1dc8a401e758402d80096875c96915b15cb218a019169eab439df9 SHA512 9e0603d634d0748047dbc0e4c44dce54cba1026ed76945b09ed72224c015465cc8541d4045185f8b8cf6ff316daec50bc5a3ad7ddf5015aa971135497e5261ed
-DIST proc-macro2-1.0.24.crate 37716 BLAKE2B e2bdbc7cc9ea254529e322f6a2eb44002b4994fc4a00df32012f66740e8e73ae70820dd40b7fcfcf024f3c7784ab9add5cc1db37f4c72d5af5c8f00164ebc145 SHA512 c3d23a5136c55d734084ce1d76d54f237fc1003074af102c2ad96d851ac496ffc7513ddc505a68af4051c9d6de09725a0ecb6e76ebcdd77a1c056f8f9242c9be
-DIST proc-macro2-1.0.26.crate 38233 BLAKE2B e44a5d98fbf75130c0eeb8fad6d025ce66fe41cc5ef882f418bd8c9e5d228d712020e309dad68e2f862e5f9216a1103fd6e69953e17c213166467b335f604802 SHA512 e6d39cc0d5ec644e3fb424347bde0a82a8ce8549745a1a827bf4dc21f6248471935b5499c3b6d1b7a129f0ddc560754254c528ac39fb1fce2ec3bd9520afc3e2
+DIST proc-macro2-1.0.27.crate 38625 BLAKE2B a55e2404e3c7444c6da8aca6c0e7702b865ec56cfd2c20fec319e737fc83b00bbf505c15dadaa8740d5a6d07c089ed4854a173049b1be9872bba132ae7cbc8db SHA512 3227bcaa726e88bfdb1b4d1243a4eb216ad2394a7a3b4b258de342ac76a1ab1a39a07f28f3490e42e2c2034176bf0d84b1c1fcadba2444c0abcc5878b02f93a4
+DIST proc-macro2-1.0.29.crate 38772 BLAKE2B 742c2602afc4beddc96b688d105fd93b1dbdb3cfced724aaf542e97120d374d334e90cfbf02ab62741dd052a272dc583b7d2e1992da3d1b8ff260414c65ac89e SHA512 b3b3b7c6988afeb92209c7e0362f45f9c207611a74bb63bc7746b86fb9ab0d74fea9e7a2d9bc8ac943225ea439540726ffc13711dc5bcb056c1821fc99e8dc63
diff --git a/dev-rust/proc-macro2/proc-macro2-0.4.21.ebuild b/dev-rust/proc-macro2/proc-macro2-0.4.21.ebuild
index f47436b..abb7b29 100644
--- a/dev-rust/proc-macro2/proc-macro2-0.4.21.ebuild
+++ b/dev-rust/proc-macro2/proc-macro2-0.4.21.ebuild
@@ -16,3 +16,9 @@
 DEPEND="
 	>=dev-rust/unicode-xid-0.1:=
 "
+
+# ---- test_debug_tokenstream stdout ----
+# thread 'test_debug_tokenstream' panicked at 'assertion failed: `(left == right)`
+#  left: `"TokenStream [\n    Group {\n        delimiter: Bracket,\n        stream: TokenStream [\n            Ident {\n                sym: a\n            },\n            Punct {\n                op: \'+\',\n                spacing: Alone\n            },\n            Literal {\n                lit: 1\n            }\n        ]\n    }\n]"`,
+# right: `"TokenStream [\n    Group {\n        delimiter: Bracket,\n        stream: TokenStream [\n            Ident {\n                sym: a,\n            },\n            Punct {\n                op: \'+\',\n                spacing: Alone,\n            },\n            Literal {\n                lit: 1,\n            },\n        ],\n    },\n]"`', tests/test.rs:382:5
+RESTRICT="test"
diff --git a/dev-rust/proc-macro2/proc-macro2-1.0.24.ebuild b/dev-rust/proc-macro2/proc-macro2-1.0.24.ebuild
deleted file mode 100644
index 7195f87..0000000
--- a/dev-rust/proc-macro2/proc-macro2-1.0.24.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit cros-rust
-
-DESCRIPTION="Stable implementation of the upcoming 'proc_macro' API"
-HOMEPAGE="https://github.com/alexcrichton/proc-macro2"
-SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
-
-LICENSE="|| ( MIT Apache-2.0 )"
-SLOT="${PV}/${PR}"
-KEYWORDS="*"
-
-DEPEND="
-	=dev-rust/unicode-xid-0.2*:=
-"
diff --git a/dev-rust/proc-macro2/proc-macro2-1.0.26-r1.ebuild b/dev-rust/proc-macro2/proc-macro2-1.0.26-r1.ebuild
deleted file mode 100644
index e93eeec..0000000
--- a/dev-rust/proc-macro2/proc-macro2-1.0.26-r1.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit cros-rust
-
-DESCRIPTION="Stable implementation of the upcoming 'proc_macro' API"
-HOMEPAGE="https://github.com/alexcrichton/proc-macro2"
-SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
-
-LICENSE="|| ( MIT Apache-2.0 )"
-SLOT="${PV}/${PR}"
-KEYWORDS="*"
-
-DEPEND="
-	=dev-rust/unicode-xid-0.2*:=
-"
-RDEPEND="${DEPEND}"
diff --git a/dev-rust/proc-macro2/proc-macro2-1.0.26.ebuild b/dev-rust/proc-macro2/proc-macro2-1.0.26.ebuild
deleted file mode 100644
index 4e66a47..0000000
--- a/dev-rust/proc-macro2/proc-macro2-1.0.26.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit cros-rust
-
-DESCRIPTION="Stable implementation of the upcoming 'proc_macro' API"
-HOMEPAGE="https://github.com/alexcrichton/proc-macro2"
-SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
-
-LICENSE="|| ( MIT Apache-2.0 )"
-SLOT="${PV}/${PR}"
-KEYWORDS="*"
-
-DEPEND="
-	=dev-rust/unicode-xid-0.2*:=
-"
diff --git a/dev-rust/proc-macro2/proc-macro2-1.0.27.ebuild b/dev-rust/proc-macro2/proc-macro2-1.0.27.ebuild
new file mode 100644
index 0000000..2d3e7b7
--- /dev/null
+++ b/dev-rust/proc-macro2/proc-macro2-1.0.27.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A substitute implementation of the compiler"s "proc_macro" API to decouple
+token-based libraries from the procedural macro use case.'
+HOMEPAGE='https://crates.io/crates/proc-macro2'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/unicode-xid-0.2*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/proc-macro2/proc-macro2-1.0.29.ebuild b/dev-rust/proc-macro2/proc-macro2-1.0.29.ebuild
new file mode 100644
index 0000000..2d3e7b7
--- /dev/null
+++ b/dev-rust/proc-macro2/proc-macro2-1.0.29.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A substitute implementation of the compiler"s "proc_macro" API to decouple
+token-based libraries from the procedural macro use case.'
+HOMEPAGE='https://crates.io/crates/proc-macro2'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/unicode-xid-0.2*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/protobuf/protobuf-2.24.1.ebuild b/dev-rust/protobuf/protobuf-2.24.1.ebuild
index c19f100..c6300dc 100644
--- a/dev-rust/protobuf/protobuf-2.24.1.ebuild
+++ b/dev-rust/protobuf/protobuf-2.24.1.ebuild
@@ -20,3 +20,6 @@
 "
 
 RDEPEND="${DEPEND}"
+
+# error: failed to select a version for the requirement `bytes = "^1.0"`
+RESTRICT="test"
diff --git a/dev-rust/pulldown-cmark/Manifest b/dev-rust/pulldown-cmark/Manifest
new file mode 100644
index 0000000..08b1340
--- /dev/null
+++ b/dev-rust/pulldown-cmark/Manifest
@@ -0,0 +1 @@
+DIST pulldown-cmark-0.6.1.crate 100534 BLAKE2B 2455c2b0ea1b8992a9dd9bb1fb83221710aa92989d8e783cc6975e72446c48de0e55f41bf6da3cc4c17b167d0ed4ab321a795c6ca00e281434bd149ee3a90a7e SHA512 bcb619f02dce29e83e14b3b2fc05ed2a3f40a101725bbb3e6ac012b8b4aa0a2a5bd3a8ceb2e2d6e9593c3c243b0f2c0ce287c4feb82b16fc56dcfe3cd43fb75d
diff --git a/dev-rust/pulldown-cmark/OWNERS b/dev-rust/pulldown-cmark/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/pulldown-cmark/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/pulldown-cmark/pulldown-cmark-0.6.1.ebuild b/dev-rust/pulldown-cmark/pulldown-cmark-0.6.1.ebuild
new file mode 100644
index 0000000..a7fb66e
--- /dev/null
+++ b/dev-rust/pulldown-cmark/pulldown-cmark-0.6.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A pull parser for CommonMark'
+HOMEPAGE='https://crates.io/crates/pulldown-cmark'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/bitflags-1.2.0:= <dev-rust/bitflags-2.0.0
+	=dev-rust/getopts-0.2*:=
+	>=dev-rust/memchr-2.2.0:= <dev-rust/memchr-3.0.0
+	>=dev-rust/unicase-2.5.0:= <dev-rust/unicase-3.0.0
+"
+
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+# Testing has a large dependency graph, mostly because of `html5ever` and
+# `markup5ever` it requires. The graph contains a lot of packages not available
+# in ChromiumOS repositories.
+RESTRICT="test"
diff --git a/dev-rust/quickcheck/Manifest b/dev-rust/quickcheck/Manifest
index 82ff498..41e731e 100644
--- a/dev-rust/quickcheck/Manifest
+++ b/dev-rust/quickcheck/Manifest
@@ -1 +1,2 @@
+DIST quickcheck-0.7.2.crate 24294 BLAKE2B 9071fe3740b51448fe2afbbf6c6c6a432ec2cd15d2042b43f1d46409180ebbfe68c47e8a32459157ef4c3aeabb0040ed82cad96179f581259f7e7d053fd2f99f SHA512 95157bc6a3a607a47b9356a9201bf93a44678be624651c06a1546c763055bef05dfec8099241214a5c9036c3807d61611778c798a6ad7a0efe149c098f5c2a69
 DIST quickcheck-0.8.2.crate 24116 BLAKE2B b18186726f8ca3cd6e7c3999cb310b52cffcd6ccd05ac8cd9e2b863f548493d526888d9d84db43d8de0271ea771749d57739e4450c8dc366aa2d56f212b476be SHA512 29bc33d1ae0e0ac285f632807a7bd4118c7f7d787ef23af1236a7085f8ebd0c34e1c39a300c97e83707a3f82cc766c3501bde5b54de6aceb4af10d34ab4dd36d
diff --git a/dev-rust/quickcheck/OWNERS b/dev-rust/quickcheck/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/quickcheck/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/quickcheck/quickcheck-0.7.2.ebuild b/dev-rust/quickcheck/quickcheck-0.7.2.ebuild
new file mode 100644
index 0000000..6e950bb
--- /dev/null
+++ b/dev-rust/quickcheck/quickcheck-0.7.2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Automatic property based testing with shrinking.'
+HOMEPAGE='https://github.com/BurntSushi/quickcheck'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/env_logger-0.5*:=
+	=dev-rust/log-0.4*:=
+	=dev-rust/rand-0.5*:=
+	>=dev-rust/rand_core-0.2.1:= <dev-rust/rand_core-0.3.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/quickcheck/quickcheck-1.0.0.ebuild b/dev-rust/quickcheck/quickcheck-1.0.0.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/quickcheck/quickcheck-1.0.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/quote/quote-1.0.9.ebuild b/dev-rust/quote/quote-1.0.9.ebuild
index e366bda..1fe74bc 100644
--- a/dev-rust/quote/quote-1.0.9.ebuild
+++ b/dev-rust/quote/quote-1.0.9.ebuild
@@ -21,3 +21,5 @@
 RDEPEND="${DEPEND}"
 
 # This file was automatically generated by cargo2ebuild.py
+
+RESTRICT="test"
diff --git a/dev-rust/r0/Manifest b/dev-rust/r0/Manifest
new file mode 100644
index 0000000..3f8abc2
--- /dev/null
+++ b/dev-rust/r0/Manifest
@@ -0,0 +1 @@
+DIST r0-0.2.2.crate 7648 BLAKE2B d4328829280018f50d8ba8a174d7923bfb6afab07fd18d3fcf584c42927ad8253f110f9ab086ac4a2e40d8ed3d828025063dc649cfcb28c9ac26525f569d2cc0 SHA512 2e3cbae82c21b289cdde42c37cfc563a0a42463c976312fdba860f0fb94172ecb12e9059ccd11c135642f3839f74164aad0aac4b65dd72e49b541b77eb0593e9
diff --git a/dev-rust/r0/OWNERS b/dev-rust/r0/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/r0/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/r0/r0-0.2.2.ebuild b/dev-rust/r0/r0-0.2.2.ebuild
new file mode 100644
index 0000000..6774e5d
--- /dev/null
+++ b/dev-rust/r0/r0-0.2.2.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Initialization code ("crt0") written in Rust'
+HOMEPAGE='https://crates.io/crates/r0'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/rand/Manifest b/dev-rust/rand/Manifest
index 7d6e1dc..33dbc60 100644
--- a/dev-rust/rand/Manifest
+++ b/dev-rust/rand/Manifest
@@ -1,3 +1,5 @@
 DIST rand-0.4.2.crate 76170 BLAKE2B 28c9965519db48357f23517b5ac43a641d1f0ffc4396c42933d22181fda3c6df1cfe08dae66a188e60df0708112839781daaa5b5cbf667d6850b10bcc4448f99 SHA512 ac6eaf9f0914fd966c835a04ec644c5a8d62a4a634187d538cecfb711955a977234dc5fe487cd4d351514bc0de4f51cbd0f09a8f6aac56aa0467ae5eb17a4fad
+DIST rand-0.5.6.crate 137236 BLAKE2B 26ce5ac8fa86492fed467b68047a6a47f17af3720099410a3498c95531efe9d8329998df0ce693190c63d371c2efc67f07df9c1bed624ada18b5365f555b6c5c SHA512 0e2a643eadf6cd9f035eb720b540b838a00d6c790b1a99b36cec349c2e24dcaadcae6607f99fe86957e77b244d356dfba436a03c1d4d0756d6f8362c19087b64
 DIST rand-0.6.5.crate 104814 BLAKE2B 8d94c6f135ff4b07a2236cd7b0c2ff2b80f3d391e330590bf0ece15b08a8c8a5175ea32d9d12832eeb485822446515e14408171d5f1476a27e2b9ed97aa7986f SHA512 2eb84bed29708b8ba109f4329bf6f1cac6caed9d91b2aaf185d68dd2eda73d3fb7be2897d0596fb28352e799ccf92c161ee44599d5cb426ba9c3b8c747831904
 DIST rand-0.7.3.crate 112246 BLAKE2B ecc7c1bd70ac874c03bd8b7faa3016bb2d5ee5c19603280a12a45a81598f706e445971ee081e6ca410ab6f0f5f7a06d9315848cd556a2d8522a82024f6ff91e4 SHA512 f9b68ef9446f1ca2c8092c50990f15c1b4cb5529eeeac4df8d69755e0b7253c663c587775e7cb0a7298c31edb444975dda34926759306541f6d43d0d3cf57b7e
+DIST rand-0.8.4.crate 87406 BLAKE2B c09358416d2425a8243b623346fe71bf6f03fddab1a23fc752f4303ba7c241b3606629e4edf0ea720785bda0bca534acd675c2de079b78eac3df24a1ad6ba654 SHA512 77ae0e988e31e12f7d3f2c40814f930eecbc94c4aced827c337be78eeeabf39fde2dc5c4fda059afdc01285ff4afe30393c32694377de004feff16207606558e
diff --git a/dev-rust/rand/OWNERS b/dev-rust/rand/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/rand/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/rand/files/rand-0.5.6_features.patch b/dev-rust/rand/files/rand-0.5.6_features.patch
new file mode 100644
index 0000000..1246c2b
--- /dev/null
+++ b/dev-rust/rand/files/rand-0.5.6_features.patch
@@ -0,0 +1,15 @@
+# The winapi, cloudabi and fuchsia-cprng crates are removed as dependencies
+# after setting CROS_RUST_REMOVE_TARGET_CFG=1 in ebuild. They have to be removed
+# from the `std` feature as well because it's enabled by default.
+
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -45,7 +45,7 @@ default = ["std"]
+ i128_support = []
+ nightly = ["i128_support"]
+ serde1 = ["serde", "serde_derive", "rand_core/serde1"]
+-std = ["rand_core/std", "alloc", "libc", "winapi", "cloudabi", "fuchsia-cprng"]
++std = ["rand_core/std", "alloc", "libc"]
+ [target."cfg(unix)".dependencies.libc]
+ version = "0.2"
+ optional = true
diff --git a/dev-rust/rand/rand-0.5.6-r1.ebuild b/dev-rust/rand/rand-0.5.6-r1.ebuild
new file mode 120000
index 0000000..ec79c77
--- /dev/null
+++ b/dev-rust/rand/rand-0.5.6-r1.ebuild
@@ -0,0 +1 @@
+rand-0.5.6.ebuild
\ No newline at end of file
diff --git a/dev-rust/rand/rand-0.5.6.ebuild b/dev-rust/rand/rand-0.5.6.ebuild
index 032fa9f..7d2ebed 100644
--- a/dev-rust/rand/rand-0.5.6.ebuild
+++ b/dev-rust/rand/rand-0.5.6.ebuild
@@ -1,15 +1,38 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 
-CROS_RUST_EMPTY_CRATE=1
+CROS_RUST_REMOVE_DEV_DEPS=1
+CROS_RUST_REMOVE_TARGET_CFG=1
 
 inherit cros-rust
 
-DESCRIPTION="Empty ${PN} crate"
-HOMEPAGE=""
+DESCRIPTION='Random number generators and other randomness functionality.'
+HOMEPAGE='https://crates.io/crates/rand'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
 
 LICENSE="|| ( MIT Apache-2.0 )"
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/log-0.4*:=
+	=dev-rust/rand_core-0.3*:=
+	=dev-rust/serde-1*:=
+	=dev-rust/serde_derive-1*:=
+	=dev-rust/libc-0.2*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+PATCHES="${FILESDIR}/rand-0.5.6_features.patch"
+
+# Test phase is disabled due to the "failed to resolve: use of undeclared crate
+# or module `seq`" error in src/lib.rs:1036.
+RESTRICT="test"
+
+# The `rand_core-0.3` crate is available in the `rand_core_transitional` ebuild.
+DEPEND="${DEPEND/rand_core-0.3/rand_core_transitional-0.3}"
+RDEPEND="${RDEPEND/rand_core-0.3/rand_core_transitional-0.3}"
diff --git a/dev-rust/rand/rand-0.6.5.ebuild b/dev-rust/rand/rand-0.6.5.ebuild
index d9318d7..8e658c0 100644
--- a/dev-rust/rand/rand-0.6.5.ebuild
+++ b/dev-rust/rand/rand-0.6.5.ebuild
@@ -43,3 +43,6 @@
 	sed -i '/stdweb = /d' "${S}/Cargo.toml"
 	sed -i '/wasm-bindgen = /d' "${S}/Cargo.toml"
 }
+
+# error: could not compile `rand`
+RESTRICT="test"
diff --git a/dev-rust/rand/rand-0.8.0.ebuild b/dev-rust/rand/rand-0.8.0.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/rand/rand-0.8.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/rand/rand-0.8.4.ebuild b/dev-rust/rand/rand-0.8.4.ebuild
new file mode 100644
index 0000000..5c2ca8b
--- /dev/null
+++ b/dev-rust/rand/rand-0.8.4.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Random number generators and other randomness functionality.'
+HOMEPAGE='https://rust-random.github.io/book'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/log-0.4.4:= <dev-rust/log-0.5.0_alpha
+	=dev-rust/rand_core-0.6*:=
+	>=dev-rust/serde-1.0.103:= <dev-rust/serde-2.0.0_alpha
+	=dev-rust/rand_chacha-0.3*:=
+	=dev-rust/rand_hc-0.3*:=
+	>=dev-rust/libc-0.2.22:= <dev-rust/libc-0.3.0_alpha
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+# error: no matching package named `packed_simd_2` found
+RESTRICT="test"
diff --git a/dev-rust/rand_chacha/Manifest b/dev-rust/rand_chacha/Manifest
index 5d155a8..4e9b68b 100644
--- a/dev-rust/rand_chacha/Manifest
+++ b/dev-rust/rand_chacha/Manifest
@@ -1,2 +1,3 @@
 DIST rand_chacha-0.1.1.crate 11703 BLAKE2B 125fbb623b5d829c48e5b492c36585037e7fc6f12eb9090f946d05343fe867ce65db8eac913762dc20b6af2a4856e957ff43916897f3e385cc22eae64911b0a2 SHA512 200d39362ffd6d91cfe80634e951c7323a5df8a382c91e3afcef1ecb143a16dc47a17db7f1a746b18e4ea8bfd36bc31ceaeff6d0116e166f8b34e4a8530b3c1b
 DIST rand_chacha-0.2.2.crate 13267 BLAKE2B 7908867ceac98243ade22e1b38f1903fe0249324484d91c948a5058a1e099e5213f325c5ba3400898c8319158ed69f4ed064164f235470856a8191bd990d5a10 SHA512 1e2117442e4ffdd834dcbf0ea1829e73202c0ff9041d5969d81a59330242145f2753f2a56de2fdbff65f26cf0d227c7d08b2094ab2f946b764aef88106a6ac84
+DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
diff --git a/dev-rust/rand_chacha/rand_chacha-0.3.1.ebuild b/dev-rust/rand_chacha/rand_chacha-0.3.1.ebuild
new file mode 100644
index 0000000..80c789d
--- /dev/null
+++ b/dev-rust/rand_chacha/rand_chacha-0.3.1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='ChaCha random number generator'
+HOMEPAGE='https://rust-random.github.io/book'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/ppv-lite86-0.2.8:= <dev-rust/ppv-lite86-0.3.0_alpha
+	=dev-rust/rand_core-0.6*:=
+	=dev-rust/serde-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/rand_core/Manifest b/dev-rust/rand_core/Manifest
index ddb4e29..b07e413 100644
--- a/dev-rust/rand_core/Manifest
+++ b/dev-rust/rand_core/Manifest
@@ -1,2 +1,4 @@
+DIST rand_core-0.2.2.crate 15450 BLAKE2B 407d86fff0cefa6786f4132a032c52d0c81291e3f1ad7f3de6a4b58f12cb744535d14d1be44244c3a21a4c562b8c48c1de5e096786d0f7da817bf4242b0fa310 SHA512 fc06e20d22751c55cf869707b527a55709c48d04d498b4301b4d629e4fde2e2ad0d9009734ad20f64f188f55b2e4d5f0ed8a81b7e681a8a0890a4900d63a0bde
 DIST rand_core-0.4.0.crate 20326 BLAKE2B ff85118d2b5c793e3da37bd4d75032e2d73a87bbba0b4c0c07057c47c67b7e919e5c4458b4c929e3b55f53cd3ae6579be5d434369d307e962c00fb3272862937 SHA512 f80e76dabd3308a12880a9aa8b7be83db39b02778c95bb63f862488789a2a67e2f08d4f2dd1ad803c61df0a9fc7f6620aa753b3bf394542ce27c89189a911845
 DIST rand_core-0.5.1.crate 21116 BLAKE2B e74791f941a79971f2741172d489d546373c9abcb0dfbffcb7b97b858ec800b2e0c97df4ac636f3aa1b8dd6c14685edf317336d577f31b5c6cb7d89a157e547a SHA512 4f7500b35e165e6c817fdd67a50745d5497d24e554bb554705097e37258751e8755c4d6b8a69fcb5e1977708ba78620bc35d640e4e018fcd4e88d9dbdbebdcbf
+DIST rand_core-0.6.3.crate 21938 BLAKE2B 7c73e2da6d423c68dbbca31f6528bdb3f42fa39b30d0951ca7058e05ce16ef09ef5e047697b33ec17720314f934512c0907aeb892df93d63abd8b63eda2b50a7 SHA512 0fc31f96ca8ebba8c179367de01458e909265e1d627ec0c5620be7c8e83d2f9570471d6ec2cb2bc4bc531505b02fc31f1165708cc1357906791c87123b06ee87
diff --git a/dev-rust/rand_core/OWNERS b/dev-rust/rand_core/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/rand_core/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/rand_core/rand_core-0.2.2.ebuild b/dev-rust/rand_core/rand_core-0.2.2.ebuild
new file mode 100644
index 0000000..6154bdc
--- /dev/null
+++ b/dev-rust/rand_core/rand_core-0.2.2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Core random number generator traits and tools for implementation.'
+HOMEPAGE='https://crates.io/crates/rand_core'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/rand_core_transitional-0.3*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/rand_core/rand_core-0.6.3.ebuild b/dev-rust/rand_core/rand_core-0.6.3.ebuild
new file mode 100644
index 0000000..1fa78b9
--- /dev/null
+++ b/dev-rust/rand_core/rand_core-0.6.3.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Core random number generator traits and tools for implementation.'
+HOMEPAGE='https://rust-random.github.io/book'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/getrandom-0.2*:=
+	=dev-rust/serde-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/rand_hc/Manifest b/dev-rust/rand_hc/Manifest
index cb82b54..6fec60c 100644
--- a/dev-rust/rand_hc/Manifest
+++ b/dev-rust/rand_hc/Manifest
@@ -1,2 +1,3 @@
 DIST rand_hc-0.1.0.crate 11644 BLAKE2B 24e9db27c6673ce657dd18e0bb5ac092c4340b818e79edf4a3ebfbd9a49759d3969c22f4357be5884192b6e6375528831683be54e1283112eb94097ff38d7d88 SHA512 808d8c167daa66a2608884d5d3f1444cdb21f8ca1c61e59fc9bdfb506a634ebb22c0143cfc0574e15313f82559fd2d117a46910eba3b4eb7e0052ec280f5cd2f
 DIST rand_hc-0.2.0.crate 11670 BLAKE2B 55fd048f2524cecd4f0e17927a81111e3070a8cc6a5b0234a46445400ad5527194edf8c91fb5ad6538f4958d53044ab02424f61a38adb2931e2cb7568c458ee8 SHA512 bca185612bed5cee4da76fb68fe854105da276f5bf2da464e596d586b925df798cc692ed881e276ab77c36b4b0551930966c93656be122ad05899d87853533b0
+DIST rand_hc-0.3.1.crate 11891 BLAKE2B b3aa810638390eea4245ebb711de88ccdc2a64350a5c6e14064fea7685d49746b4b77215dbb8374fa7a6cbc2cfd79fb553513d6e551acf64586d8303f7d4f3a0 SHA512 582bb44b81c27e698eb57c6f06444b8a7c9d3f7ee73f4e14be8004c4bfd3bbfd9795c69f7294b5e87107e86b90fa3e91ad080964474af81c92705d356e43fbb5
diff --git a/dev-rust/rand_hc/rand_hc-0.3.1.ebuild b/dev-rust/rand_hc/rand_hc-0.3.1.ebuild
new file mode 100644
index 0000000..9e83e74
--- /dev/null
+++ b/dev-rust/rand_hc/rand_hc-0.3.1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='HC128 random number generator'
+HOMEPAGE='https://rust-random.github.io/book'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/rand_core-0.6*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/rayon-core/rayon-core-1.9.0.ebuild b/dev-rust/rayon-core/rayon-core-1.9.0.ebuild
index 24abf09..e66a635 100644
--- a/dev-rust/rayon-core/rayon-core-1.9.0.ebuild
+++ b/dev-rust/rayon-core/rayon-core-1.9.0.ebuild
@@ -22,3 +22,6 @@
 	=dev-rust/lazy_static-1*:=
 	>=dev-rust/num_cpus-1.2:= <dev-rust/num_cpus-2.0
 "
+
+# could not compile
+RESTRICT="test"
diff --git a/dev-rust/rayon/rayon-1.5.0.ebuild b/dev-rust/rayon/rayon-1.5.0.ebuild
index c980ef2..ac6bddc 100644
--- a/dev-rust/rayon/rayon-1.5.0.ebuild
+++ b/dev-rust/rayon/rayon-1.5.0.ebuild
@@ -21,3 +21,6 @@
 	=dev-rust/either-1*:=
 	>=dev-rust/rayon-core-1.9:= <dev-rust/rayon-core-2.0
 "
+
+# could not compile
+RESTRICT="test"
diff --git a/dev-rust/regex/regex-1.5.3.ebuild b/dev-rust/regex/regex-1.5.3.ebuild
index a04f479..8ad739c 100644
--- a/dev-rust/regex/regex-1.5.3.ebuild
+++ b/dev-rust/regex/regex-1.5.3.ebuild
@@ -24,3 +24,6 @@
 RDEPEND="${DEPEND}"
 
 # This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `regex`
+RESTRICT="test"
diff --git a/dev-rust/remain/remain-0.2.1.ebuild b/dev-rust/remain/remain-0.2.1.ebuild
index 816c39b..b2875f3 100644
--- a/dev-rust/remain/remain-0.2.1.ebuild
+++ b/dev-rust/remain/remain-0.2.1.ebuild
@@ -20,3 +20,6 @@
 	=dev-rust/quote-1*:=
 	=dev-rust/syn-1*:=
 "
+
+# error: could not compile `remain`
+RESTRICT="test"
diff --git a/dev-rust/riscv/OWNERS b/dev-rust/riscv/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/riscv/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/riscv/riscv-0.6.0.ebuild b/dev-rust/riscv/riscv-0.6.0.ebuild
new file mode 100644
index 0000000..8e4bf7c
--- /dev/null
+++ b/dev-rust/riscv/riscv-0.6.0.ebuild
@@ -0,0 +1,15 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty ${PN} crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
diff --git a/dev-rust/ron/Manifest b/dev-rust/ron/Manifest
new file mode 100644
index 0000000..dee1070
--- /dev/null
+++ b/dev-rust/ron/Manifest
@@ -0,0 +1 @@
+DIST ron-0.5.1.crate 31037 BLAKE2B cd3f537ec3a80d9d293bde2f84721248c7c76f1389d62adf79976a0a951900c58a020ec956d24689747b0d09a9ea78b73b6212896a6b41d6cdf62ff57a8ee80a SHA512 63b0ad38121218ee382f2817a66c9d445449deeb263d4541689601aea45e8e4b2728011e8e33bff6792922860f728f99e2a36d6565dd0077a5cbdc29c5941c69
diff --git a/dev-rust/ron/OWNERS b/dev-rust/ron/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/ron/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/ron/ron-0.5.1.ebuild b/dev-rust/ron/ron-0.5.1.ebuild
new file mode 100644
index 0000000..9f95a69
--- /dev/null
+++ b/dev-rust/ron/ron-0.5.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Rusty Object Notation'
+HOMEPAGE='https://github.com/ron-rs/ron'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/base64-0.10*:=
+	=dev-rust/bitflags-1*:=
+	=dev-rust/serde-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+IUSE="test"
+TEST_DEPS="
+	test? (
+		=dev-rust/serde_bytes-0.10*:=
+		=dev-rust/serde_json-1*:=
+	)
+"
+DEPEND+="${TEST_DEPS}"
+RDEPEND+="${TEST_DEPS}"
+
+src_prepare() {
+	if use test; then
+		CROS_RUST_REMOVE_DEV_DEPS=0
+	fi
+	cros-rust_src_prepare
+}
diff --git a/dev-rust/rtic-core/Manifest b/dev-rust/rtic-core/Manifest
new file mode 100644
index 0000000..0dca32c
--- /dev/null
+++ b/dev-rust/rtic-core/Manifest
@@ -0,0 +1 @@
+DIST rtic-core-0.3.1.crate 8268 BLAKE2B 85e7b7f80104fbd0aa88947194742d8b47584a35437c49d9ed6c80aee2a035b7f146be694f7b99e767f2fd4b2a3936066bac452faee8a03674d893f4bba3b043 SHA512 5b585ffe90aecc0f2f9aec402f4577fd34b47d4ce00ffaf8a0ea83d36ca500b8842420c8701624d19f8bd63327d0aa1bf97015420530c3f5489a7f1eb46d5f89
diff --git a/dev-rust/rtic-core/OWNERS b/dev-rust/rtic-core/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/rtic-core/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/rtic-core/rtic-core-0.3.1.ebuild b/dev-rust/rtic-core/rtic-core-0.3.1.ebuild
new file mode 100644
index 0000000..1a161a3
--- /dev/null
+++ b/dev-rust/rtic-core/rtic-core-0.3.1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Core abstractions of the Real-Time Interrupt-driven Concurrency framework'
+HOMEPAGE='https://crates.io/crates/rtic-core'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/rtic-syntax/Manifest b/dev-rust/rtic-syntax/Manifest
new file mode 100644
index 0000000..9803439
--- /dev/null
+++ b/dev-rust/rtic-syntax/Manifest
@@ -0,0 +1 @@
+DIST rtic-syntax-0.4.0.crate 34222 BLAKE2B 03540b523191364e92fc4927ecfdea1981feaec9247eb8bdd7258ee4617f7cab875e526ca2b2cde61a30ad1eba2e41932d557035797c124665e26b28e7201a28 SHA512 893dccc87a37360c7ca09106ccbed430c1a215d58043942d4c440dba66d481ea41ceb048d50b6d2c858a4060dc1d18329f0b4328051a6aa064d8226988c63cf1
diff --git a/dev-rust/rtic-syntax/OWNERS b/dev-rust/rtic-syntax/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/rtic-syntax/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/rtic-syntax/rtic-syntax-0.4.0.ebuild b/dev-rust/rtic-syntax/rtic-syntax-0.4.0.ebuild
new file mode 100644
index 0000000..eeabef7
--- /dev/null
+++ b/dev-rust/rtic-syntax/rtic-syntax-0.4.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='The Real-Time Interrupt-driven Concurrency (RTIC) meta language'
+HOMEPAGE='https://crates.io/crates/rtic-syntax'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/indexmap-1.0.2:= <dev-rust/indexmap-2.0.0
+	=dev-rust/proc-macro2-1*:=
+	=dev-rust/syn-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+RESTRICT="test"
diff --git a/dev-rust/rtt-target/Manifest b/dev-rust/rtt-target/Manifest
new file mode 100644
index 0000000..67b7d65
--- /dev/null
+++ b/dev-rust/rtt-target/Manifest
@@ -0,0 +1 @@
+DIST rtt-target-0.3.1.crate 10679 BLAKE2B c71b37df02b70cef5eea089d0fee4a7f80a2881aec12595333b05d5711263c0b8b77d171a56944fe025768bf5c7d3cd4e96bbc3579bb1f42ed2b6095a54725fd SHA512 4fb561ea3d98d1b933bc5c1d5e12678e3401547fbb3703b36e9d609f4ed09054c1a785cda43572eb6f29e1b0c89e720e82e24fc177dd004e62113c7ba3402408
diff --git a/dev-rust/rtt-target/OWNERS b/dev-rust/rtt-target/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/rtt-target/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/rtt-target/rtt-target-0.3.1.ebuild b/dev-rust/rtt-target/rtt-target-0.3.1.ebuild
new file mode 100644
index 0000000..c15ec01
--- /dev/null
+++ b/dev-rust/rtt-target/rtt-target-0.3.1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Target side implementation of the RTT (Real-Time Transfer) I/O protocol'
+HOMEPAGE='https://crates.io/crates/rtt-target'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/cortex-m-0.7.1 <dev-rust/cortex-m-0.8.0_alpha:=
+	=dev-rust/riscv-0.6*:=
+	=dev-rust/ufmt-write-0.1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/rustc-hash/OWNERS b/dev-rust/rustc-hash/OWNERS
index 08ef481..9331bd8 100644
--- a/dev-rust/rustc-hash/OWNERS
+++ b/dev-rust/rustc-hash/OWNERS
@@ -1 +1 @@
-include chromiumos/overlays/chromiumos-overlay:/dev-rust/bindgen/OWNERS
+include /dev-rust/bindgen/OWNERS
diff --git a/dev-rust/rustc-serialize/rustc-serialize-0.3.24.ebuild b/dev-rust/rustc-serialize/rustc-serialize-0.3.24.ebuild
index 211434f..6f31839 100644
--- a/dev-rust/rustc-serialize/rustc-serialize-0.3.24.ebuild
+++ b/dev-rust/rustc-serialize/rustc-serialize-0.3.24.ebuild
@@ -16,3 +16,6 @@
 DEPEND="
 	=dev-rust/rand-0.3*:=
 "
+
+# error: could not compile `rustc-serialize`
+RESTRICT="test"
diff --git a/dev-rust/rustc_version/rustc_version-0.2.3.ebuild b/dev-rust/rustc_version/rustc_version-0.2.3.ebuild
index e042b46..23c080a 100644
--- a/dev-rust/rustc_version/rustc_version-0.2.3.ebuild
+++ b/dev-rust/rustc_version/rustc_version-0.2.3.ebuild
@@ -16,3 +16,6 @@
 DEPEND="
 	=dev-rust/semver-0.9*:=
 "
+
+# thread 'smoketest' panicked at 'called `Result::unwrap()` on an `Err` value: CouldNotExecuteCommand(Os { code: 2, kind: NotFound, message: "No such file or directory" })', src/lib.rs:202:23
+RESTRICT="test"
diff --git a/dev-rust/rustyline/rustyline-7.0.0-r1.ebuild b/dev-rust/rustyline/rustyline-7.0.0-r1.ebuild
index 1053bbd..2a3114a 100644
--- a/dev-rust/rustyline/rustyline-7.0.0-r1.ebuild
+++ b/dev-rust/rustyline/rustyline-7.0.0-r1.ebuild
@@ -31,3 +31,6 @@
 	=dev-rust/unicode-width-0.1*:=
 	=dev-rust/utf8parse-0.2*:=
 "
+
+# error: could not compile `rustyline`
+RESTRICT="test"
diff --git a/dev-rust/ryu/ryu-1.0.5.ebuild b/dev-rust/ryu/ryu-1.0.5.ebuild
index d7c856b..614f8d7 100644
--- a/dev-rust/ryu/ryu-1.0.5.ebuild
+++ b/dev-rust/ryu/ryu-1.0.5.ebuild
@@ -21,3 +21,6 @@
 RDEPEND="${DEPEND}"
 
 # This file was automatically generated by cargo2ebuild.py
+
+# could not compile
+RESTRICT="test"
diff --git a/dev-rust/s9/s9-0.1.0-r35.ebuild b/dev-rust/s9/s9-0.1.0-r35.ebuild
deleted file mode 100644
index 6c1ebc7..0000000
--- a/dev-rust/s9/s9-0.1.0-r35.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="aff404fa5bb1568d214e34f5e4c700fcd8e78663"
-CROS_WORKON_TREE="a65853288ed3e9a088f071b1946c83222b9a6d3e"
-CROS_RUST_SUBDIR="vm_tools/9s"
-
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
-
-CROS_RUST_CRATE_NAME="p9s"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Server binary for the 9P file system protocol"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/9s/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="test"
-
-RDEPEND="
-	!<chromeos-base/crosvm-0.0.1-r260
-	!dev-rust/9s
-"
-DEPEND="
-	=dev-rust/getopts-0.2*:=
-	=dev-rust/libc-0.2*:=
-	dev-rust/libchromeos:=
-	=dev-rust/log-0.4*:=
-	dev-rust/p9:=
-	dev-rust/sys_util:=
-"
-
-src_install() {
-	newbin "$(cros-rust_get_build_dir)/p9s" 9s
-
-	insinto /usr/share/policy
-	newins "seccomp/9s-seccomp-${ARCH}.policy" 9s-seccomp.policy
-}
diff --git a/dev-rust/s9/s9-0.1.0-r39.ebuild b/dev-rust/s9/s9-0.1.0-r39.ebuild
new file mode 100644
index 0000000..24f027f
--- /dev/null
+++ b/dev-rust/s9/s9-0.1.0-r39.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="269ba720342563c97123ace40e03cce75765e75f"
+CROS_WORKON_TREE="59484d482a35a5fed23cdac96dbeb666876bfa50"
+CROS_RUST_SUBDIR="vm_tools/9s"
+
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
+
+CROS_RUST_CRATE_NAME="p9s"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Server binary for the 9P file system protocol"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/9s/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="test"
+
+RDEPEND="
+	!<chromeos-base/crosvm-0.0.1-r260
+	!dev-rust/9s
+"
+DEPEND="
+	=dev-rust/getopts-0.2*:=
+	=dev-rust/libc-0.2*:=
+	dev-rust/libchromeos:=
+	=dev-rust/log-0.4*:=
+	dev-rust/p9:=
+	dev-rust/sys_util:=
+"
+
+src_install() {
+	newbin "$(cros-rust_get_build_dir)/p9s" 9s
+
+	insinto /usr/share/policy
+	newins "seccomp/9s-seccomp-${ARCH}.policy" 9s-seccomp.policy
+}
diff --git a/dev-rust/scoped-tls/Manifest b/dev-rust/scoped-tls/Manifest
index 7e6f9cb..9d13fe0 100644
--- a/dev-rust/scoped-tls/Manifest
+++ b/dev-rust/scoped-tls/Manifest
@@ -1 +1,2 @@
 DIST scoped-tls-0.1.0.crate 8523 BLAKE2B 887db0c474eba9a6cf6cd58f15c6aee63c5d245aee1a90ac6ef6046a9c233666671e468a312614d66f8405469b268cee21bbef78262482f9cb00c4eef8448569 SHA512 3791153856298ffe3821d6cce5c8dd011c068e859e5f7598d05b85885eadeb4e6edc1befa9fdb27f708d13d5d7c20645ba8f29637026c9d0ff105255e019b9ea
+DIST scoped-tls-1.0.0.crate 9146 BLAKE2B e6cecc543760a293b9ba4e71bf0d12f3360782795bc9d0f0bb054614a1c393f081b6178e98708b896037f5b8edcf371b727e7eb80f62bca24fe09a1903456729 SHA512 f09dd404bb45349ef444e7274a2aabfeaeda7c3c9f964bf5c52c39984c137f63bdf9fb3e33df8e312e52872f7721de25951a7f3b8333a670626c51afd36d314c
diff --git a/dev-rust/scoped-tls/OWNERS b/dev-rust/scoped-tls/OWNERS
new file mode 100644
index 0000000..a45474a
--- /dev/null
+++ b/dev-rust/scoped-tls/OWNERS
@@ -0,0 +1 @@
+ include chromiumos/platform/graphics:/OWNERS
diff --git a/dev-rust/scoped-tls/scoped-tls-1.0.0.ebuild b/dev-rust/scoped-tls/scoped-tls-1.0.0.ebuild
new file mode 100644
index 0000000..d32ea3c
--- /dev/null
+++ b/dev-rust/scoped-tls/scoped-tls-1.0.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit cros-rust
+
+DESCRIPTION="A Rust library providing the old standard library's scoped_thread_local! macro as a library implementation on crates.io."
+HOMEPAGE="https://github.com/alexcrichton/scoped-tls"
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+"
diff --git a/dev-rust/semver/Manifest b/dev-rust/semver/Manifest
index 114daf0..bce07b4 100644
--- a/dev-rust/semver/Manifest
+++ b/dev-rust/semver/Manifest
@@ -1 +1,2 @@
 DIST semver-0.9.0.crate 17344 BLAKE2B ae782bc78f29e45577de8574ee58959c70b54bb0b6f45a5a7b09cc4d358d9a0a80bbefc6e0f2a330e2b55adfbbe5c1f64f4ec9bb94c4adf7bb3e4fc9c142db6c SHA512 03a2ea563456f812c301721c3572370fe4934a22db60079da0dd6ffa33fa789e5e2436ef09e62fc35e0b742b06fabc290992c74eed80419a353c9de9449928dc
+DIST semver-1.0.3.crate 28918 BLAKE2B 81a737f6d13d14f9cbab939829d514dc85c14f8e1efac5a3274d6965ca3b7b07d94a5c2faa1a3913cc9b46c4506d988104aea26341e2f903bf5b4be4d8625e1a SHA512 8af01b90d00873587f113b30d750bc5af89ad0e24ca6c2d71d2afd7244023e321effd6aa25b6cbfffaf173ae646ff8a701148e6bfd3a625f9d14e37baec65c19
diff --git a/dev-rust/semver/semver-0.9.0.ebuild b/dev-rust/semver/semver-0.9.0.ebuild
index 176c3e2..7db4b8d 100644
--- a/dev-rust/semver/semver-0.9.0.ebuild
+++ b/dev-rust/semver/semver-0.9.0.ebuild
@@ -21,3 +21,6 @@
 	=dev-rust/serde_json-1*:=
 	=dev-rust/tempdir-0.3*:=
 "
+
+# error: could not compile `semver`
+RESTRICT="test"
diff --git a/dev-rust/semver/semver-1.0.3.ebuild b/dev-rust/semver/semver-1.0.3.ebuild
new file mode 100644
index 0000000..28e21ab
--- /dev/null
+++ b/dev-rust/semver/semver-1.0.3.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Parser and evaluator for Cargo"s flavor of Semantic Versioning'
+HOMEPAGE='https://crates.io/crates/semver'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/serde-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/serde_test/Manifest b/dev-rust/serde_test/Manifest
new file mode 100644
index 0000000..402eac9
--- /dev/null
+++ b/dev-rust/serde_test/Manifest
@@ -0,0 +1 @@
+DIST serde_test-1.0.127.crate 19234 BLAKE2B 223444dcb3d64002f97b010d7bc075abbdb94ab6b89e0a9fe13ab1e9011b1b3636fc5b6e60baa0ebffa19f74c29fafe112765b70a2023a42e7de8ee2770a3f21 SHA512 faa9e8f3b9f9c2e97bb43ea9478e0cd9d63bedf95dd39db53623a1ab0d37546f1fa798456c311122cdda7552e4c89fab07059228f4aeb1b56a327de12ceb940f
diff --git a/dev-rust/serde_test/OWNERS b/dev-rust/serde_test/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/serde_test/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/serde_test/serde_test-1.0.127.ebuild b/dev-rust/serde_test/serde_test-1.0.127.ebuild
new file mode 100644
index 0000000..427ff46
--- /dev/null
+++ b/dev-rust/serde_test/serde_test-1.0.127.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Token De/Serializer for testing De/Serialize implementations'
+HOMEPAGE='https://serde.rs'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/serde-1.0.60:= <dev-rust/serde-2.0.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/sha1/OWNERS b/dev-rust/sha1/OWNERS
new file mode 100644
index 0000000..0edda31
--- /dev/null
+++ b/dev-rust/sha1/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform/crosvm:/OWNERS
diff --git a/dev-rust/sha1/sha1-0.6.0.ebuild b/dev-rust/sha1/sha1-0.6.0.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/sha1/sha1-0.6.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/shlex/OWNERS b/dev-rust/shlex/OWNERS
index 08ef481..9331bd8 100644
--- a/dev-rust/shlex/OWNERS
+++ b/dev-rust/shlex/OWNERS
@@ -1 +1 @@
-include chromiumos/overlays/chromiumos-overlay:/dev-rust/bindgen/OWNERS
+include /dev-rust/bindgen/OWNERS
diff --git a/dev-rust/slog/OWNERS b/dev-rust/slog/OWNERS
new file mode 100644
index 0000000..0edda31
--- /dev/null
+++ b/dev-rust/slog/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform/crosvm:/OWNERS
diff --git a/dev-rust/slog/slog-2.0.0.ebuild b/dev-rust/slog/slog-2.0.0.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/slog/slog-2.0.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/spi-memory/Manifest b/dev-rust/spi-memory/Manifest
new file mode 100644
index 0000000..f2576a0
--- /dev/null
+++ b/dev-rust/spi-memory/Manifest
@@ -0,0 +1 @@
+DIST spi-memory-0.2.0.crate 2038744 BLAKE2B b6781519d9ff9362b900d6d8fcdb03724fcc9159395898282e8937c2d0f222b24207980d812747760dfe9d0c04fe956f0d381895c601a001d66886f535d79505 SHA512 9358898158fd0b2b8372d0ffac596ca44f74c68fdbe7be1084f2c0c92facf0b2b9579a171651b080178aed56091df9a647f14de75ef8d26a7363bb63cf3c6826
diff --git a/dev-rust/spi-memory/OWNERS b/dev-rust/spi-memory/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/spi-memory/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/spi-memory/spi-memory-0.2.0.ebuild b/dev-rust/spi-memory/spi-memory-0.2.0.ebuild
new file mode 100644
index 0000000..52a9ce6
--- /dev/null
+++ b/dev-rust/spi-memory/spi-memory-0.2.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A generic driver for different SPI Flash and EEPROM chips'
+HOMEPAGE='https://crates.io/crates/spi-memory'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="0BSD"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/bitflags-1.0.4:= <dev-rust/bitflags-2.0.0
+	>=dev-rust/embedded-hal-0.2.3:= <dev-rust/embedded-hal-0.3.0
+	>=dev-rust/log-0.4.6:= <dev-rust/log-0.5.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `spi-memory`
+RESTRICT="test"
diff --git a/dev-rust/spin/Manifest b/dev-rust/spin/Manifest
index 66b6a7d..db9fa3d 100644
--- a/dev-rust/spin/Manifest
+++ b/dev-rust/spin/Manifest
@@ -1,2 +1 @@
-DIST spin-0.4.10.crate 10811 BLAKE2B 0cc47b7a01fbf6175e5690040ffd9ac7d2a720fa931d62430264a2b1238f0338b67eebd7ca4fb14993cb2008db7582341a748b85739de8404a65a7f28b9ac535 SHA512 812da233a9aa048bc2d92ff3664cbd06bfbf1d5fde57d8b65217280242a678702a0289a8d7ab12e5f852e8ab2fcbfcd9d8d3af10e4670ad78b9cc45b5eeee198
 DIST spin-0.5.2.crate 12004 BLAKE2B d67d9156ca6dbcf4022711cce797cd423a4977115abac4cafaa507aa2e1071b637275637a20934d4d0d6d2bf82c98c74a4506720326d1804952aa0fd5fc4895c SHA512 fc57f7906da2b7a298c5f89215e881e8827b4d9f934dbf138338e0ee30122d8459483be566268fa374b41d63d8dbf65d42e0b322535ba35c827d7edb2176f267
diff --git a/dev-rust/spin/spin-0.4.10.ebuild b/dev-rust/spin/spin-0.4.10.ebuild
deleted file mode 100644
index 3594fb4..0000000
--- a/dev-rust/spin/spin-0.4.10.ebuild
+++ /dev/null
@@ -1,14 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit cros-rust
-
-DESCRIPTION="Synchronization primitives based on spinning."
-HOMEPAGE="https://github.com/mvdnes/spin-rs"
-SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
-
-LICENSE="MIT"
-SLOT="${PV}/${PR}"
-KEYWORDS="*"
diff --git a/dev-rust/stable_deref_trait/Manifest b/dev-rust/stable_deref_trait/Manifest
index 4ffa99e..5caad29 100644
--- a/dev-rust/stable_deref_trait/Manifest
+++ b/dev-rust/stable_deref_trait/Manifest
@@ -1 +1,2 @@
 DIST stable_deref_trait-1.1.1.crate 8007 BLAKE2B 35bb1e1b24f36a0958aa3fd3972d0f30b3849f8bcd41f0221e2a893b1d17b0029369e21e8b735b7c29884a67ba6c9b2ff1558f544b500ed7c119d8bcdabe5602 SHA512 ca224226d612e1c4eb178271cee0d18b44fc036959e528d720e33f65c3ecd7a40c20d32f294c029d0d7b74dc6ce57d19aadfe3cf02c5f894e94ddb3bb06898e4
+DIST stable_deref_trait-1.2.0.crate 8054 BLAKE2B 287a65c3e5b47213544a43e57c60a54add60b4c2e3c8d042407d860cc950ba7ca01a2e67ce56aed6744992b61ec1f9aed3321e3d88482e33129548b7d51df205 SHA512 a13cfb22723f1f2cf089b2d07d657846f50c37bc0438d1a76096bea30214cad226b7a422c21f9e191ce87071da8a141d61882aedf9e0203a5fffdfda86a5fb03
diff --git a/dev-rust/stable_deref_trait/stable_deref_trait-1.2.0.ebuild b/dev-rust/stable_deref_trait/stable_deref_trait-1.2.0.ebuild
new file mode 100644
index 0000000..4f7003c
--- /dev/null
+++ b/dev-rust/stable_deref_trait/stable_deref_trait-1.2.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='An unsafe marker trait for types like Box and Rc that dereference to a stable address even when moved, and hence can be used with libraries such as owning_ref and rental.'
+HOMEPAGE='https://crates.io/crates/stable_deref_trait'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/stderrlog/stderrlog-0.5.0-r1.ebuild b/dev-rust/stderrlog/stderrlog-0.5.0-r1.ebuild
new file mode 120000
index 0000000..e447f14
--- /dev/null
+++ b/dev-rust/stderrlog/stderrlog-0.5.0-r1.ebuild
@@ -0,0 +1 @@
+stderrlog-0.5.0.ebuild
\ No newline at end of file
diff --git a/dev-rust/stderrlog/stderrlog-0.5.0.ebuild b/dev-rust/stderrlog/stderrlog-0.5.0.ebuild
index 8d061f3..784c618 100644
--- a/dev-rust/stderrlog/stderrlog-0.5.0.ebuild
+++ b/dev-rust/stderrlog/stderrlog-0.5.0.ebuild
@@ -22,3 +22,5 @@
 	>=dev-rust/termcolor-1.1:= <dev-rust/termcolor-1.2
 	>=dev-rust/thread_local-1.0:= <dev-rust/thread_local-1.1
 "
+
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/stm32g0/Manifest b/dev-rust/stm32g0/Manifest
new file mode 100644
index 0000000..35e310e
--- /dev/null
+++ b/dev-rust/stm32g0/Manifest
@@ -0,0 +1 @@
+DIST stm32g0-0.13.0.crate 1104198 BLAKE2B 144de1d5cb5f0b58aaadca29ee1225a723567a515f74774ed97c464ca00567ee446ba74609922e4ce44f009fd374f57a858bfc7b2ee5f4ab337d9086a92e267b SHA512 18abf63ceb04a9b7f25c217e02ce888cb85788a0bbf38762e9cccea905935b703a827e528fb3d870171eac05c8b9118e41241b0a8461432d80d11c8d6308dd3d
diff --git a/dev-rust/stm32g0/OWNERS b/dev-rust/stm32g0/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/stm32g0/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/stm32g0/stm32g0-0.13.0.ebuild b/dev-rust/stm32g0/stm32g0-0.13.0.ebuild
new file mode 100644
index 0000000..0357d34
--- /dev/null
+++ b/dev-rust/stm32g0/stm32g0-0.13.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Device support crates for STM32G0 devices'
+HOMEPAGE='https://crates.io/crates/stm32g0'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/bare-metal-0.2.4:= <dev-rust/bare-metal-0.3.0
+	>=dev-rust/cortex-m-0.5.8:= <dev-rust/cortex-m-0.8.0
+	>=dev-rust/cortex-m-rt-0.6.10:= <dev-rust/cortex-m-rt-0.7.0
+	=dev-rust/vcell-0.1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/stm32g0xx-hal/Manifest b/dev-rust/stm32g0xx-hal/Manifest
new file mode 100644
index 0000000..5254352
--- /dev/null
+++ b/dev-rust/stm32g0xx-hal/Manifest
@@ -0,0 +1 @@
+DIST stm32g0xx-hal-0.1.0.crate 60793 BLAKE2B 9c00939859354b4d51943ddb6c4f80789af168f3e6acfcb508778b7367dd6130a0974b9965d8123557b463cf529aa4354d0b1db22613033dba01098148fcc159 SHA512 d10bfc16a8db35e7ca1bc40ea3b3cf461c754ade8a21ec07ae050c5563807d40d110e67b165484cbffbcad282d9998e33f92c26a3a69795915090ed1670a65b9
diff --git a/dev-rust/stm32g0xx-hal/OWNERS b/dev-rust/stm32g0xx-hal/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/stm32g0xx-hal/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/stm32g0xx-hal/stm32g0xx-hal-0.1.0.ebuild b/dev-rust/stm32g0xx-hal/stm32g0xx-hal-0.1.0.ebuild
new file mode 100644
index 0000000..3a1ee0f
--- /dev/null
+++ b/dev-rust/stm32g0xx-hal/stm32g0xx-hal-0.1.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Peripheral access API for STM32G0 series microcontrollers'
+HOMEPAGE='https://crates.io/crates/stm32g0xx-hal'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/bare-metal-1*:=
+	>=dev-rust/cortex-m-0.7.1:= <dev-rust/cortex-m-0.8.0
+	>=dev-rust/embedded-hal-0.2.4:= <dev-rust/embedded-hal-0.3.0
+	=dev-rust/nb-1*:=
+	=dev-rust/stm32g0-0.13*:=
+	>=dev-rust/void-1.0.2:= <dev-rust/void-2.0.0
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+# thread 'main' panicked at 'No device features selected', /build/zork/usr/lib/cros_rust_registry/registry/stm32g0-0.13.0/build.rs:20:18
+RESTRICT="test"
diff --git a/dev-rust/strsim/Manifest b/dev-rust/strsim/Manifest
index cc3fe9d..3f311e5 100644
--- a/dev-rust/strsim/Manifest
+++ b/dev-rust/strsim/Manifest
@@ -1 +1,2 @@
+DIST strsim-0.10.0.crate 11355 BLAKE2B bcb25ad0a7284e24e4f17ebe0ccb621bdc4118e499b50b094d98aa7e8fcc0b96716c9953c3516ce7ea78309d41d424892ded595259696a5bbffdcb07802b5c2f SHA512 78b318532addfcf5c1ccc1e14539e258aab9d3cd893cc45d82342549bde838c177d90f13c560671f8f32929af47d0b467db35e6876bd7697d8b3f9e055aeeac1
 DIST strsim-0.8.0.crate 9309 BLAKE2B 40a8be506c43ee1ffe006ddc7dee98c3d418bdd205d57b78f5d1e4c9312feb57e1eaf952e02d92d4e0932db240c6fba45beb06ea8c4fc6de1cf1faa8b6a3a939 SHA512 1d55a8d946cd55f5f37d06aea536549ded95739fa58c0f2da285a0041154c181f663682bdcac643aa198b3e762d694a04f058db985c62ebe22b5c16327ba6d34
diff --git a/dev-rust/strsim/OWNERS b/dev-rust/strsim/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/strsim/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/strsim/strsim-0.10.0.ebuild b/dev-rust/strsim/strsim-0.10.0.ebuild
new file mode 100644
index 0000000..05caa6d
--- /dev/null
+++ b/dev-rust/strsim/strsim-0.10.0.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Implementations of string similarity metrics. Includes Hamming, Levenshtein,
+OSA, Damerau-Levenshtein, Jaro, Jaro-Winkler, and Sørensen-Dice.'
+HOMEPAGE='https://github.com/dguo/strsim-rs'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/structopt/structopt-0.3.20.ebuild b/dev-rust/structopt/structopt-0.3.20.ebuild
index 409d3f2..b6e1b1f 100644
--- a/dev-rust/structopt/structopt-0.3.20.ebuild
+++ b/dev-rust/structopt/structopt-0.3.20.ebuild
@@ -16,8 +16,11 @@
 KEYWORDS="*"
 
 DEPEND="
-	>=dev-rust/clap-2.33.0:= <dev-rust/clap-3.0.0
+	>=dev-rust/clap-2.33.0:= <dev-rust/clap-3
 	>=dev-rust/lazy_static-1.4.0:= <dev-rust/lazy_static-2.0.0
 	=dev-rust/structopt-derive-0.4.13:=
 	=dev-rust/paw-1*:=
 "
+
+# error: could not compile `structopt`
+RESTRICT="test"
diff --git a/dev-rust/syn/syn-1.0.72.ebuild b/dev-rust/syn/syn-1.0.72.ebuild
index 7e4d11b..80fa5ae 100644
--- a/dev-rust/syn/syn-1.0.72.ebuild
+++ b/dev-rust/syn/syn-1.0.72.ebuild
@@ -31,3 +31,6 @@
 	# Delete the test dependency, syn-test-suite.
 	sed -i '/^test = \[/d' "${S}/Cargo.toml"
 }
+
+# error: could not compile `syn`
+RESTRICT="test"
diff --git a/dev-rust/sync/sync-0.1.0-r11.ebuild b/dev-rust/sync/sync-0.1.0-r11.ebuild
deleted file mode 100644
index f74c8dc..0000000
--- a/dev-rust/sync/sync-0.1.0-r11.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="76cc214ce771ab7dd0990b403e2a2c98dd0a4c80"
-CROS_WORKON_TREE="28852483b877a051ca092e4b811f8831872c49b0"
-CROS_WORKON_LOCALNAME="../platform/crosvm"
-CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="sync"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Containing a type sync::Mutex which wraps the standard library Mutex and mirrors the same methods"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/sync"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-RDEPEND="!!<=dev-rust/sync-0.1.0-r6"
diff --git a/dev-rust/sync/sync-0.1.0-r14.ebuild b/dev-rust/sync/sync-0.1.0-r14.ebuild
new file mode 100644
index 0000000..3fade3a
--- /dev/null
+++ b/dev-rust/sync/sync-0.1.0-r14.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="f78b278d0fc93710f7c95b8e5bab12ef101c45bc"
+CROS_WORKON_TREE="af21c512e6b9981138e4df7664dab87bf004b04b"
+CROS_WORKON_LOCALNAME="../platform/crosvm"
+CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="sync"
+
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Containing a type sync::Mutex which wraps the standard library Mutex and mirrors the same methods"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/sync"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test"
+
+RDEPEND="!!<=dev-rust/sync-0.1.0-r6"
diff --git a/dev-rust/sync/sync-9999.ebuild b/dev-rust/sync/sync-9999.ebuild
index 3afc058..c1a2d3f 100644
--- a/dev-rust/sync/sync-9999.ebuild
+++ b/dev-rust/sync/sync-9999.ebuild
@@ -9,6 +9,9 @@
 CROS_WORKON_INCREMENTAL_BUILD=1
 CROS_WORKON_SUBTREE="sync"
 
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
 inherit cros-workon cros-rust
 
 DESCRIPTION="Containing a type sync::Mutex which wraps the standard library Mutex and mirrors the same methods"
diff --git a/dev-rust/sys_util/sys_util-0.1.0-r161.ebuild b/dev-rust/sys_util/sys_util-0.1.0-r161.ebuild
deleted file mode 100644
index f873520..0000000
--- a/dev-rust/sys_util/sys_util-0.1.0-r161.ebuild
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="72a11a010e18ecfafc7f0c1bb7fff5020eba8069"
-CROS_WORKON_TREE="45225500d49ffe6b0cc50397b01585a13c61e9cc"
-CROS_WORKON_LOCALNAME="../platform/crosvm"
-CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="sys_util"
-CROS_WORKON_SUBDIRS_TO_COPY="sys_util"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Small system utility modules for usage by other modules."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/sys_util"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-# ebuilds that install executables, import sys_util, and use the libcap
-# functionality need to RDEPEND on libcap
-DEPEND="
-	=dev-rust/android_log-sys-0.2*:=
-	dev-rust/assertions:=
-	dev-rust/data_model:=
-	>=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0
-	=dev-rust/proc-macro2-1*:=
-	=dev-rust/quote-1*:=
-	=dev-rust/serde-1*:=
-	=dev-rust/serde_json-1*:=
-	=dev-rust/syn-1*:=
-	dev-rust/sync:=
-	dev-rust/tempfile:=
-	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
-	sys-libs/libcap:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}
-	!!<=dev-rust/sys_util-0.1.0-r60
-"
-
-src_test() {
-	local skip_tests=()
-
-	# These tests directly make a clone(2) syscall, which makes sanitizers very
-	# unhappy since they see memory allocated in the child process that is not
-	# freed (because it is owned by some other thread created by the test runner
-	# in the parent process).
-	cros-rust_use_sanitizers && skip_tests+=( --skip "fork::tests" )
-	# The memfd_create() system call first appeared in Linux 3.17.  Skip guest
-	# memory tests for builders with older kernels.
-	local cut_version=$(ver_cut 1-2 "$(uname -r)")
-	if ver_test 3.17 -gt "${cut_version}"; then
-		skip_tests+=( --skip "guest_memory::tests" )
-	fi
-
-	# If syslog isn't available, skip the tests.
-	[[ -S /dev/log ]] || skip_tests+=( --skip "syslog::tests" )
-
-	# TODO(crbug.com/1157570) Remove once syslog module works in sandbox.
-	CROS_RUST_TEST_DIRECT_EXEC_ONLY="yes"
-	cros-rust_get_host_test_executables
-
-	cros-rust_src_test -- --test-threads=1 "${skip_tests[@]}"
-}
-
-src_install() {
-	(
-		cd poll_token_derive || die
-		cros-rust_publish poll_token_derive "$(cros-rust_get_crate_version .)"
-	)
-
-	cros-rust_src_install
-}
-
-pkg_preinst() {
-	cros-rust_pkg_preinst poll_token_derive
-	cros-rust_pkg_preinst
-}
-
-pkg_postinst() {
-	cros-rust_pkg_postinst poll_token_derive
-	cros-rust_pkg_postinst
-}
-
-pkg_prerm() {
-	cros-rust_pkg_prerm poll_token_derive
-	cros-rust_pkg_prerm
-}
diff --git a/dev-rust/sys_util/sys_util-0.1.0-r180.ebuild b/dev-rust/sys_util/sys_util-0.1.0-r180.ebuild
new file mode 100644
index 0000000..ad5d50c
--- /dev/null
+++ b/dev-rust/sys_util/sys_util-0.1.0-r180.ebuild
@@ -0,0 +1,97 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5acd4ee978d9fa1da9476c0338190e08c53ea2aa"
+CROS_WORKON_TREE="feca2663ec02a5abf5259894551ce8fc1b6e5465"
+CROS_WORKON_LOCALNAME="../platform/crosvm"
+CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="sys_util"
+CROS_WORKON_SUBDIRS_TO_COPY="sys_util"
+
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Small system utility modules for usage by other modules."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/sys_util"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test"
+
+# ebuilds that install executables, import sys_util, and use the libcap
+# functionality need to RDEPEND on libcap
+DEPEND="
+	=dev-rust/android_log-sys-0.2*:=
+	dev-rust/assertions:=
+	dev-rust/data_model:=
+	>=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0
+	=dev-rust/proc-macro2-1*:=
+	=dev-rust/quote-1*:=
+	=dev-rust/remain-0.2*:=
+	=dev-rust/serde-1*:=
+	=dev-rust/serde_json-1*:=
+	=dev-rust/syn-1*:=
+	dev-rust/sync:=
+	dev-rust/tempfile:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+	sys-libs/libcap:=
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}
+	!!<=dev-rust/sys_util-0.1.0-r60
+"
+
+src_test() {
+	local skip_tests=()
+
+	# These tests directly make a clone(2) syscall, which makes sanitizers very
+	# unhappy since they see memory allocated in the child process that is not
+	# freed (because it is owned by some other thread created by the test runner
+	# in the parent process).
+	cros-rust_use_sanitizers && skip_tests+=( --skip "fork::tests" )
+	# The memfd_create() system call first appeared in Linux 3.17.  Skip guest
+	# memory tests for builders with older kernels.
+	local cut_version=$(ver_cut 1-2 "$(uname -r)")
+	if ver_test 3.17 -gt "${cut_version}"; then
+		skip_tests+=( --skip "guest_memory::tests" )
+	fi
+
+	# If syslog isn't available, skip the tests.
+	[[ -S /dev/log ]] || skip_tests+=( --skip "syslog::tests" )
+
+	# TODO(crbug.com/1157570) Remove once syslog module works in sandbox.
+	CROS_RUST_TEST_DIRECT_EXEC_ONLY="yes"
+	cros-rust_get_host_test_executables
+
+	cros-rust_src_test -- --test-threads=1 "${skip_tests[@]}"
+}
+
+src_install() {
+	(
+		cd poll_token_derive || die
+		cros-rust_publish poll_token_derive "$(cros-rust_get_crate_version .)"
+	)
+
+	cros-rust_src_install
+}
+
+pkg_preinst() {
+	cros-rust_pkg_preinst poll_token_derive
+	cros-rust_pkg_preinst
+}
+
+pkg_postinst() {
+	cros-rust_pkg_postinst poll_token_derive
+	cros-rust_pkg_postinst
+}
+
+pkg_prerm() {
+	cros-rust_pkg_prerm poll_token_derive
+	cros-rust_pkg_prerm
+}
diff --git a/dev-rust/sys_util/sys_util-9999.ebuild b/dev-rust/sys_util/sys_util-9999.ebuild
index 3bc33bc..0297ab5 100644
--- a/dev-rust/sys_util/sys_util-9999.ebuild
+++ b/dev-rust/sys_util/sys_util-9999.ebuild
@@ -9,6 +9,9 @@
 CROS_WORKON_SUBTREE="sys_util"
 CROS_WORKON_SUBDIRS_TO_COPY="sys_util"
 
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
 inherit cros-workon cros-rust
 
 DESCRIPTION="Small system utility modules for usage by other modules."
@@ -27,6 +30,7 @@
 	>=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0
 	=dev-rust/proc-macro2-1*:=
 	=dev-rust/quote-1*:=
+	=dev-rust/remain-0.2*:=
 	=dev-rust/serde-1*:=
 	=dev-rust/serde_json-1*:=
 	=dev-rust/syn-1*:=
diff --git a/dev-rust/system_api/system_api-0.24.53-r186.ebuild b/dev-rust/system_api/system_api-0.24.53-r186.ebuild
deleted file mode 100644
index 7564799..0000000
--- a/dev-rust/system_api/system_api-0.24.53-r186.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6dd33d823125a9f9e78f10c51ea5756c9f8b64bc"
-CROS_WORKON_TREE=("17b97c5c2ddeb8fe389f24ed79e581941c90795b" "a0d8550678a1ed2a4ab62782049032a024bf40df" "c3e1fc5061dcbd62acb501f21d7a3794f41b2160" "2c7ac844cf2db48eca0465be0c5ada91c108f177" "3b632cb1cbc6da698a355e078bfc220f0461deee")
-CROS_RUST_SUBDIR="system_api"
-
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} authpolicy/dbus_bindings debugd/dbus_bindings login_manager/dbus_bindings shill/dbus_bindings"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Chrome OS system API D-Bus bindings for Rust."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/system_api/"
-
-LICENSE="BSD-Google"
-SLOT="0/${PVR}"
-KEYWORDS="*"
-
-DEPEND="
-	dev-rust/chromeos-dbus-bindings:=
-	=dev-rust/dbus-0.8*:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}
-	!chromeos-base/system_api-rust
-"
diff --git a/dev-rust/system_api/system_api-0.24.53-r279.ebuild b/dev-rust/system_api/system_api-0.24.53-r279.ebuild
new file mode 100644
index 0000000..e78d835
--- /dev/null
+++ b/dev-rust/system_api/system_api-0.24.53-r279.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="c6136fa9e765e659306fc9e8f35d3f9ddf6806f6"
+CROS_WORKON_TREE=("c28e5042658473f3d1d5194279d4ec2cc2633f31" "a0d8550678a1ed2a4ab62782049032a024bf40df" "b00310c222484b624ff9ec2378e041d7cd8f09fb" "28de0d8f31b7c079629b40b81e98707f45158909" "ac372937b4795711f04d5af57461105605663f83" "5c2fc3d693f68ac5e38decc3d1df9c44da6f360f")
+CROS_RUST_SUBDIR="system_api"
+
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} authpolicy/dbus_bindings cryptohome/dbus_bindings debugd/dbus_bindings login_manager/dbus_bindings shill/dbus_bindings"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Chrome OS system API D-Bus bindings for Rust."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/system_api/"
+
+LICENSE="BSD-Google"
+SLOT="0/${PVR}"
+KEYWORDS="*"
+
+DEPEND="
+	dev-rust/chromeos-dbus-bindings:=
+	=dev-rust/dbus-0.9*:=
+	>=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3
+	>=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}
+	!chromeos-base/system_api-rust
+"
diff --git a/dev-rust/system_api/system_api-9999.ebuild b/dev-rust/system_api/system_api-9999.ebuild
index d5850e3..672819c 100644
--- a/dev-rust/system_api/system_api-9999.ebuild
+++ b/dev-rust/system_api/system_api-9999.ebuild
@@ -7,7 +7,7 @@
 
 CROS_WORKON_PROJECT="chromiumos/platform2"
 CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} authpolicy/dbus_bindings debugd/dbus_bindings login_manager/dbus_bindings shill/dbus_bindings"
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} authpolicy/dbus_bindings cryptohome/dbus_bindings debugd/dbus_bindings login_manager/dbus_bindings shill/dbus_bindings"
 
 inherit cros-workon cros-rust
 
@@ -20,7 +20,9 @@
 
 DEPEND="
 	dev-rust/chromeos-dbus-bindings:=
-	=dev-rust/dbus-0.8*:=
+	=dev-rust/dbus-0.9*:=
+	>=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3
+	>=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3
 "
 # (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
 # installing binpkgs since the full source tree is required to use the crate.
diff --git a/dev-rust/tempdir/tempdir-0.3.7-r3.ebuild b/dev-rust/tempdir/tempdir-0.3.7-r3.ebuild
new file mode 120000
index 0000000..088d4da
--- /dev/null
+++ b/dev-rust/tempdir/tempdir-0.3.7-r3.ebuild
@@ -0,0 +1 @@
+tempdir-0.3.7.ebuild
\ No newline at end of file
diff --git a/dev-rust/tempdir/tempdir-0.3.7.ebuild b/dev-rust/tempdir/tempdir-0.3.7.ebuild
index 476e428..f35ba3c 100644
--- a/dev-rust/tempdir/tempdir-0.3.7.ebuild
+++ b/dev-rust/tempdir/tempdir-0.3.7.ebuild
@@ -1,7 +1,7 @@
 # Copyright 2019 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 
 inherit cros-rust
 
@@ -17,3 +17,4 @@
 	=dev-rust/rand-0.4*:=
 	=dev-rust/remove_dir_all-0.5*:=
 "
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/tempfile/Manifest b/dev-rust/tempfile/Manifest
index 9a41439..cfd2f96 100644
--- a/dev-rust/tempfile/Manifest
+++ b/dev-rust/tempfile/Manifest
@@ -1 +1 @@
-DIST tempfile-3.0.7.crate 23922 BLAKE2B ea7207d7a5c893751fedca320dc0b08c01de041eed2baf39c1e63f744b55ba3a823890d60fff504c1018950ff9e564eb17cc086f7c519279293570ef2e470751 SHA512 b6fb6a1f4f0f5483255f9672114fa6adf13edd4bfe8f7fbe6c4225a36ccab5b58fc5f5510c50e70746e2697f2cf503b20682e5b44cef0b65b7ffac4ee39529e8
+DIST tempfile-3.2.0.crate 25892 BLAKE2B ea6870c642c5712c7c96072a5d3dc04d75c19cf1413081e3bf53c1ae6c75e05ab537446071cadb5460b34f7fb7715a03005a1335a64139458db938c3415f7c0d SHA512 56d1c5af7cb6863f9eac990354126979534aae7bf298bc8b1c918c7317ce2ba31f53089aaa1ecf8baa4a39d4111d74f4450be82b509b3c2aa0428880029e663a
diff --git a/dev-rust/tempfile/files/chromeos-version.sh b/dev-rust/tempfile/files/chromeos-version.sh
deleted file mode 100755
index 056e0b9..0000000
--- a/dev-rust/tempfile/files/chromeos-version.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-#
-# Copyright 2019 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.
-
-# Assumes the first 'version =' line in the Cargo.toml is the version for the
-# crate.
-awk '/^version = / { print $3 }' "$1/tempfile/Cargo.toml" | head -n1 | tr -d '"'
diff --git a/dev-rust/tempfile/tempfile-3.0.7-r10.ebuild b/dev-rust/tempfile/tempfile-3.0.7-r10.ebuild
deleted file mode 100644
index dc87fd4..0000000
--- a/dev-rust/tempfile/tempfile-3.0.7-r10.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="76cc214ce771ab7dd0990b403e2a2c98dd0a4c80"
-CROS_WORKON_TREE="4d1019d4ba75c8d6c18310a8bce67bcda0eceab5"
-CROS_WORKON_LOCALNAME="../platform/crosvm"
-CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="tempfile"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="A library for managing temporary files and directories"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/tempfile"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-DEPEND="
-	=dev-rust/cfg-if-0.1*:=
-	>=dev-rust/libc-0.2.27:=
-	=dev-rust/rand-0.6*:=
-	=dev-rust/redox_syscall-0.1*:=
-	=dev-rust/remove_dir_all-0.5*:=
-	=dev-rust/winapi-0.3*:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}
-	!!<=dev-rust/tempfile-3.0.7-r2
-"
diff --git a/dev-rust/tempfile/tempfile-3.2.0.ebuild b/dev-rust/tempfile/tempfile-3.2.0.ebuild
new file mode 100644
index 0000000..e49c3bf
--- /dev/null
+++ b/dev-rust/tempfile/tempfile-3.2.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+CROS_RUST_REMOVE_TARGET_CFG=1
+
+inherit cros-rust
+
+DESCRIPTION='A library for managing temporary files and directories.'
+HOMEPAGE='http://stebalien.com/projects/tempfile-rs'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/cfg-if-1*:=
+	=dev-rust/rand-0.8*:=
+	=dev-rust/remove_dir_all-0.5*:=
+	>=dev-rust/libc-0.2.27:= <dev-rust/libc-0.3.0_alpha
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/tempfile/tempfile-9999.ebuild b/dev-rust/tempfile/tempfile-9999.ebuild
deleted file mode 100644
index 3a7c6d4f..0000000
--- a/dev-rust/tempfile/tempfile-9999.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_LOCALNAME="../platform/crosvm"
-CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="tempfile"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="A library for managing temporary files and directories"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/tempfile"
-
-LICENSE="BSD-Google"
-KEYWORDS="~*"
-IUSE="test"
-
-DEPEND="
-	=dev-rust/cfg-if-0.1*:=
-	>=dev-rust/libc-0.2.27:=
-	=dev-rust/rand-0.6*:=
-	=dev-rust/redox_syscall-0.1*:=
-	=dev-rust/remove_dir_all-0.5*:=
-	=dev-rust/winapi-0.3*:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}
-	!!<=dev-rust/tempfile-3.0.7-r2
-"
diff --git a/dev-rust/terminal_size/OWNERS b/dev-rust/terminal_size/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/terminal_size/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/terminal_size/terminal_size-0.1.12.ebuild b/dev-rust/terminal_size/terminal_size-0.1.12.ebuild
new file mode 100644
index 0000000..e5b72b0
--- /dev/null
+++ b/dev-rust/terminal_size/terminal_size-0.1.12.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty crate"
+HOMEPAGE=""
+
+LICENSE="BSD-Google"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/textwrap/Manifest b/dev-rust/textwrap/Manifest
index 716fd43..a367a64 100644
--- a/dev-rust/textwrap/Manifest
+++ b/dev-rust/textwrap/Manifest
@@ -1 +1,2 @@
 DIST textwrap-0.11.0.crate 17322 BLAKE2B 257428908342774593bbd3528fcdae710712ff54e8a711393a24356d8ba0e16e466a4b20c05f942c48ca76b3b5b5aaa90ec202f782cad892caa8b71ccf124da6 SHA512 f5c0fe4f28ff1a3a0931e8e235b5157a45f67967985bcc752418c5ec3481fca44a8ae4800088889b37e8cd0533f53d3c456d5ffd19b767b3f83a87b49a2e209a
+DIST textwrap-0.12.1.crate 23964 BLAKE2B 4024e84d2e72c7116aa3fc10c64be75da4bd082c8d769f4c0d75db60c988b8f3aba4f9f0ac5010a7fc7747e6ec21acfb280886fb14fc6f57a2a0e880257708c1 SHA512 6076afc86110e978d55cdfde41e05eb847c50da21237d88eec73873547d601ec6cedcc23dad738ccee9ec96e0488dc26ba4d0bf039110698a875541d79db25c2
diff --git a/dev-rust/textwrap/OWNERS b/dev-rust/textwrap/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/textwrap/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/textwrap/textwrap-0.11.0-r1.ebuild b/dev-rust/textwrap/textwrap-0.11.0-r1.ebuild
new file mode 120000
index 0000000..e3d3ed2
--- /dev/null
+++ b/dev-rust/textwrap/textwrap-0.11.0-r1.ebuild
@@ -0,0 +1 @@
+textwrap-0.11.0.ebuild
\ No newline at end of file
diff --git a/dev-rust/textwrap/textwrap-0.11.0.ebuild b/dev-rust/textwrap/textwrap-0.11.0.ebuild
index 0221ae7..026c590 100644
--- a/dev-rust/textwrap/textwrap-0.11.0.ebuild
+++ b/dev-rust/textwrap/textwrap-0.11.0.ebuild
@@ -17,6 +17,9 @@
 
 DEPEND="
 	=dev-rust/unicode-width-0.1*:=
-	dev-rust/hyphenation:=
-	dev-rust/term_size:=
+	=dev-rust/hyphenation-0.7*:=
+	=dev-rust/term_size-0.3*:=
 "
+
+# error: could not compile `textwrap`
+RESTRICT="test"
diff --git a/dev-rust/textwrap/textwrap-0.12.1.ebuild b/dev-rust/textwrap/textwrap-0.12.1.ebuild
new file mode 100644
index 0000000..e91297d
--- /dev/null
+++ b/dev-rust/textwrap/textwrap-0.12.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Textwrap is a library for word wrapping, indenting, and dedenting
+strings.
+
+You can use it to format strings (such as help and error messages) for
+display in commandline applications. It is designed to be efficient
+and handle Unicode characters correctly.'
+HOMEPAGE='https://crates.io/crates/textwrap'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="MIT"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/hyphenation-0.8*:=
+	=dev-rust/terminal_size-0.1*:=
+	=dev-rust/unicode-width-0.1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
+
+# Tests require adding `=version-sync-0.9*` and `=lipsum-0.6*` which in turn
+# require even more new or uprevved crates.
+RESTRICT="test"
diff --git a/dev-rust/thiserror-impl/thiserror-impl-1.0.20-r1.ebuild b/dev-rust/thiserror-impl/thiserror-impl-1.0.20-r1.ebuild
new file mode 120000
index 0000000..8aeb0c5
--- /dev/null
+++ b/dev-rust/thiserror-impl/thiserror-impl-1.0.20-r1.ebuild
@@ -0,0 +1 @@
+thiserror-impl-1.0.20.ebuild
\ No newline at end of file
diff --git a/dev-rust/thiserror-impl/thiserror-impl-1.0.20.ebuild b/dev-rust/thiserror-impl/thiserror-impl-1.0.20.ebuild
index ef2cc70..94df16a 100644
--- a/dev-rust/thiserror-impl/thiserror-impl-1.0.20.ebuild
+++ b/dev-rust/thiserror-impl/thiserror-impl-1.0.20.ebuild
@@ -18,5 +18,6 @@
 DEPEND="
 	=dev-rust/proc-macro2-1*:=
 	=dev-rust/quote-1*:=
-	>=dev-rust/syn-1.0.11:= <dev-rust/syn-2.0
+	>=dev-rust/syn-1.0.11 <dev-rust/syn-2.0:=
 "
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/thiserror/thiserror-1.0.20-r1.ebuild b/dev-rust/thiserror/thiserror-1.0.20-r1.ebuild
new file mode 120000
index 0000000..3290224
--- /dev/null
+++ b/dev-rust/thiserror/thiserror-1.0.20-r1.ebuild
@@ -0,0 +1 @@
+thiserror-1.0.20.ebuild
\ No newline at end of file
diff --git a/dev-rust/thiserror/thiserror-1.0.20.ebuild b/dev-rust/thiserror/thiserror-1.0.20.ebuild
index fbb8bf9..5321caf6 100644
--- a/dev-rust/thiserror/thiserror-1.0.20.ebuild
+++ b/dev-rust/thiserror/thiserror-1.0.20.ebuild
@@ -18,3 +18,7 @@
 DEPEND="
 	~dev-rust/thiserror-impl-${PV}:=
 "
+RDEPEND="${DEPEND}"
+
+# error: could not compile `thiserror`
+RESTRICT="test"
diff --git a/dev-rust/tlsdate_dbus/tlsdate_dbus-0.24.52-r24.ebuild b/dev-rust/tlsdate_dbus/tlsdate_dbus-0.24.52-r24.ebuild
deleted file mode 100644
index 7f38a4e..0000000
--- a/dev-rust/tlsdate_dbus/tlsdate_dbus-0.24.52-r24.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="8b0e7603cb5fd7924c9e99b7d26ad8b716fbada7"
-CROS_WORKON_TREE="ac75e4e94cf1c6c37833513159b83d64b3de9104"
-CROS_WORKON_PROJECT="chromiumos/third_party/tlsdate"
-CROS_WORKON_EGIT_BRANCH="master"
-CROS_WORKON_LOCALNAME="tlsdate"
-
-inherit cros-workon cros-rust
-
-CROS_RUST_SUBDIR=""
-
-DESCRIPTION="Rust D-Bus bindings for tlsdate."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/tlsdate/+/master/"
-
-LICENSE="BSD-Google"
-SLOT="0/${PVR}"
-KEYWORDS="*"
-
-DEPEND="
-	=dev-rust/dbus-0.8*:=
-	dev-rust/chromeos-dbus-bindings:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}"
diff --git a/dev-rust/tlsdate_dbus/tlsdate_dbus-0.24.52-r28.ebuild b/dev-rust/tlsdate_dbus/tlsdate_dbus-0.24.52-r28.ebuild
new file mode 100644
index 0000000..97b1845
--- /dev/null
+++ b/dev-rust/tlsdate_dbus/tlsdate_dbus-0.24.52-r28.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="f6185658498aa903ff47c9eb46e7ccd7f95c74da"
+CROS_WORKON_TREE="aadb9cf0c326d4d0b1e9fd4d12b0192cdba2d8f8"
+CROS_WORKON_PROJECT="chromiumos/third_party/tlsdate"
+CROS_WORKON_EGIT_BRANCH="master"
+CROS_WORKON_LOCALNAME="tlsdate"
+
+inherit cros-workon cros-rust
+
+CROS_RUST_SUBDIR=""
+
+DESCRIPTION="Rust D-Bus bindings for tlsdate."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/tlsdate/+/master/"
+
+LICENSE="BSD-Google"
+SLOT="0/${PVR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/dbus-0.9*:=
+	dev-rust/chromeos-dbus-bindings:=
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}"
diff --git a/dev-rust/tlsdate_dbus/tlsdate_dbus-9999.ebuild b/dev-rust/tlsdate_dbus/tlsdate_dbus-9999.ebuild
index 857600e..b33c6f5 100644
--- a/dev-rust/tlsdate_dbus/tlsdate_dbus-9999.ebuild
+++ b/dev-rust/tlsdate_dbus/tlsdate_dbus-9999.ebuild
@@ -19,7 +19,7 @@
 KEYWORDS="~*"
 
 DEPEND="
-	=dev-rust/dbus-0.8*:=
+	=dev-rust/dbus-0.9*:=
 	dev-rust/chromeos-dbus-bindings:=
 "
 # (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
diff --git a/dev-rust/tokio-io/tokio-io-0.1.13.ebuild b/dev-rust/tokio-io/tokio-io-0.1.13.ebuild
index 87965c8..bb76baf 100644
--- a/dev-rust/tokio-io/tokio-io-0.1.13.ebuild
+++ b/dev-rust/tokio-io/tokio-io-0.1.13.ebuild
@@ -23,3 +23,6 @@
 RDEPEND="${DEPEND}"
 
 # This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `tokio-io`
+RESTRICT="test"
diff --git a/dev-rust/toml/toml-0.5.1.ebuild b/dev-rust/toml/toml-0.5.1.ebuild
index 072c623..3c01f64 100644
--- a/dev-rust/toml/toml-0.5.1.ebuild
+++ b/dev-rust/toml/toml-0.5.1.ebuild
@@ -18,3 +18,6 @@
 DEPEND=">=dev-rust/serde-1.0:=
 	>=dev-rust/linked-hash-map-0.5.2:=
 "
+
+# error: could not compile `toml`
+RESTRICT="test"
diff --git a/dev-rust/trust-dns-proto/trust-dns-proto-0.7.3-r4.ebuild b/dev-rust/trust-dns-proto/trust-dns-proto-0.7.3-r4.ebuild
new file mode 120000
index 0000000..557bfec
--- /dev/null
+++ b/dev-rust/trust-dns-proto/trust-dns-proto-0.7.3-r4.ebuild
@@ -0,0 +1 @@
+trust-dns-proto-0.7.3.ebuild
\ No newline at end of file
diff --git a/dev-rust/trust-dns-proto/trust-dns-proto-0.7.3.ebuild b/dev-rust/trust-dns-proto/trust-dns-proto-0.7.3.ebuild
index d27766b..2a6dfed 100644
--- a/dev-rust/trust-dns-proto/trust-dns-proto-0.7.3.ebuild
+++ b/dev-rust/trust-dns-proto/trust-dns-proto-0.7.3.ebuild
@@ -1,7 +1,7 @@
 # Copyright 2019 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 
 inherit cros-rust
 
@@ -15,12 +15,14 @@
 
 DEPEND="
 	=dev-rust/byteorder-1*:=
+	=dev-rust/data-encoding-2*:=
 	=dev-rust/enum-as-inner-0.2*:=
 	=dev-rust/failure-0.1*:=
 	=dev-rust/futures-0.1*:=
 	=dev-rust/idna-0.1*:=
 	=dev-rust/lazy_static-1*:=
 	=dev-rust/log-0.4*:=
+	=dev-rust/openssl-0.10*:=
 	=dev-rust/rand-0.6*:=
 	=dev-rust/smallvec-0.6*:=
 	=dev-rust/socket2-0.3*:=
@@ -31,14 +33,13 @@
 	=dev-rust/tokio-timer-0.2*:=
 	=dev-rust/tokio-udp-0.1*:=
 	=dev-rust/url-1*:=
-	=dev-rust/data-encoding-2*:=
-	=dev-rust/openssl-0.10*:=
 	=dev-rust/ring-0.14*:=
 	=dev-rust/serde-1*:=
 	=dev-rust/untrusted-0.6*:=
 	=dev-rust/env_logger-0.6*:=
 	=dev-rust/tokio-0.1*:=
 "
+RDEPEND="${DEPEND}"
 
 PATCHES=(
 	"${FILESDIR}/${P}-0001-Remove-optional-features.patch"
diff --git a/dev-rust/typenum/Manifest b/dev-rust/typenum/Manifest
new file mode 100644
index 0000000..cb7f806
--- /dev/null
+++ b/dev-rust/typenum/Manifest
@@ -0,0 +1 @@
+DIST typenum-1.13.0.crate 40238 BLAKE2B 5e5f9c8c60a4406c5a9a487033ddf7e8fd835bc255547e8b3f94c966e0f661f9b8a2f4a844661c00ee3c7e01f9fa109ac79c6bf53a064335c317dc9d9f8b0923 SHA512 0cd0b884509a5b4a252bed10309139350fce24b5d4bb887f4c0757ed18cb2481e331d7dc32fc81f4cabeeb5849e89ea5d92ea9815cb2985e5df4a022ac703de1
diff --git a/dev-rust/typenum/OWNERS b/dev-rust/typenum/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/typenum/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/typenum/typenum-1.13.0.ebuild b/dev-rust/typenum/typenum-1.13.0.ebuild
new file mode 100644
index 0000000..7394154
--- /dev/null
+++ b/dev-rust/typenum/typenum-1.13.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Typenum is a Rust library for type-level numbers evaluated at
+	compile time. It currently supports bits, unsigned integers, and signed
+	integers. It also provides a type-level array of type-level numbers, but its
+	implementation is incomplete.'
+HOMEPAGE='https://crates.io/crates/typenum'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/ufmt-macros/Manifest b/dev-rust/ufmt-macros/Manifest
new file mode 100644
index 0000000..bec2abd
--- /dev/null
+++ b/dev-rust/ufmt-macros/Manifest
@@ -0,0 +1 @@
+DIST ufmt-macros-0.1.1.crate 4323 BLAKE2B ef31de4f875a2e6d1de8c751a4fedf8a0f739730e4a2c9467144ddc0eccf75ea9a5f0916f4a0c1d9a24934224881641adc805ce0e6248543d05dc010b0d462fc SHA512 e8c3408de1f61b1c1e406afe01e5d79c44e6aaf455806b2355cd00cb2a38b1662cc6a237c55e1cab9bba047d9eae8e317c7222db1d373f020949d27bd2b07f88
diff --git a/dev-rust/ufmt-macros/OWNERS b/dev-rust/ufmt-macros/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/ufmt-macros/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/ufmt-macros/ufmt-macros-0.1.1.ebuild b/dev-rust/ufmt-macros/ufmt-macros-0.1.1.ebuild
new file mode 100644
index 0000000..f1a0eb88
--- /dev/null
+++ b/dev-rust/ufmt-macros/ufmt-macros-0.1.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='"μfmt" macros'
+HOMEPAGE='https://crates.io/crates/ufmt-macros'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/proc-macro-hack-0.5.11:= <dev-rust/proc-macro-hack-0.6.0
+	=dev-rust/proc-macro2-1*:=
+	=dev-rust/quote-1*:=
+	=dev-rust/syn-1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/ufmt-write/Manifest b/dev-rust/ufmt-write/Manifest
new file mode 100644
index 0000000..ac8fba3
--- /dev/null
+++ b/dev-rust/ufmt-write/Manifest
@@ -0,0 +1 @@
+DIST ufmt-write-0.1.0.crate 1586 BLAKE2B a25c86b34c028f5458f9204ac8c073e92d04b339bc6275b088556c29690740390e67b126e2bd3a713426d770c25fba8b2f97698c7b69f7c76406ed175d3503e4 SHA512 07ef2ba324997b0371ef33e4687402477ddac231b50d29a0d2264c0da6356d4c808585007161224433583c4c9463041af09f3d2427856fdf1c831d07c2fbba6c
diff --git a/dev-rust/ufmt-write/OWNERS b/dev-rust/ufmt-write/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/ufmt-write/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/ufmt-write/ufmt-write-0.1.0.ebuild b/dev-rust/ufmt-write/ufmt-write-0.1.0.ebuild
new file mode 100644
index 0000000..1e86dc5
--- /dev/null
+++ b/dev-rust/ufmt-write/ufmt-write-0.1.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='"μfmt""s "uWrite" trait'
+HOMEPAGE='https://crates.io/crates/ufmt-write'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/ufmt/Manifest b/dev-rust/ufmt/Manifest
new file mode 100644
index 0000000..82aca23
--- /dev/null
+++ b/dev-rust/ufmt/Manifest
@@ -0,0 +1 @@
+DIST ufmt-0.1.0.crate 145837 BLAKE2B 0016fed27b4b687c92704be0b30302b6d7a465ab3e293c2488bd3eb996c91d2667e45524bad2f744c1d8c89df01912c88bc03ed5a1f0a07145deecebb458f7fb SHA512 e8c65514842152744efa580ac33c6913952b714887ff348e6036759d42387b6a1689e3fdaaf469bc58112810905154b930958d943fdfb80221880484433d2853
diff --git a/dev-rust/ufmt/OWNERS b/dev-rust/ufmt/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/ufmt/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/ufmt/ufmt-0.1.0.ebuild b/dev-rust/ufmt/ufmt-0.1.0.ebuild
new file mode 100644
index 0000000..001cbd1
--- /dev/null
+++ b/dev-rust/ufmt/ufmt-0.1.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A (6-40x) smaller, (2-9x) faster and panic-free alternative to "core::fmt"'
+HOMEPAGE='https://crates.io/crates/ufmt'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/proc-macro-hack-0.5.11:= <dev-rust/proc-macro-hack-0.6.0
+	=dev-rust/ufmt-macros-0.1*:=
+	=dev-rust/ufmt-write-0.1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/unicase/Manifest b/dev-rust/unicase/Manifest
new file mode 100644
index 0000000..d107365
--- /dev/null
+++ b/dev-rust/unicase/Manifest
@@ -0,0 +1 @@
+DIST unicase-2.6.0.crate 23478 BLAKE2B 6e580108ac81b1cbee70e5bd331f43b12f266dae4f4f758bb8f5f073bd1af61943ee0de34cc27769525b19da8c24f8dea4941d0f5454594ab0cc8b78071ff053 SHA512 7e76a5f344e32c56cf87223585d87a56c79627b52bba0b29eb6de82de874b2964accededa8e9b5741f57944b6750fba5c61e679a50d4fd5a5646f431e2f4f188
diff --git a/dev-rust/unicase/OWNERS b/dev-rust/unicase/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/unicase/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/unicase/unicase-2.6.0.ebuild b/dev-rust/unicase/unicase-2.6.0.ebuild
new file mode 100644
index 0000000..1e95429
--- /dev/null
+++ b/dev-rust/unicase/unicase-2.6.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A case-insensitive wrapper around strings.'
+HOMEPAGE='https://crates.io/crates/unicase'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/version_check-0.9*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/unicode-normalization/unicode-normalization-0.1.8.ebuild b/dev-rust/unicode-normalization/unicode-normalization-0.1.8.ebuild
index 879a06b..0a0af8b 100644
--- a/dev-rust/unicode-normalization/unicode-normalization-0.1.8.ebuild
+++ b/dev-rust/unicode-normalization/unicode-normalization-0.1.8.ebuild
@@ -16,3 +16,6 @@
 DEPEND="
 	=dev-rust/smallvec-0.6*:=
 "
+
+# error: could not compile `unicode-normalization`
+RESTRICT="test"
diff --git a/dev-rust/unicode-segmentation/Manifest b/dev-rust/unicode-segmentation/Manifest
index 331fb95..9cacdcc 100644
--- a/dev-rust/unicode-segmentation/Manifest
+++ b/dev-rust/unicode-segmentation/Manifest
@@ -1 +1,2 @@
 DIST unicode-segmentation-1.5.0.crate 90262 BLAKE2B d13421cfca9e7de0d538dbbc3e44be67abcc3147b847db90d473bbccbfb813788b1cb7ada4f8acfd5646cf83c82bbc47832da893aa06313250ce5f483bffa8b0 SHA512 9f9dfaa6692fbf8dc3f2c22815f79a0eb887eb4706dda9469999826a46999942eec44a608a27858221642fad1591ea9cd5162857c0cc673b45bf648d9ea9b7c4
+DIST unicode-segmentation-1.8.0.crate 94011 BLAKE2B 33440cedd5b51bd6075c9c75541bb8dcc16037b1c937ca72962f6c46be71a30850ab8e8a144d8b7548e5a91c78d551e7bbab5f26a713f1df0311d15f11299af9 SHA512 f0779ec42907b665df53f38ea370e661f10e7c72a75917f4cbd055868428c0eac1c7fc194d4bbf048e00f0f3d3e2b3602ae88d7820ad0c73e94a5228b61f6495
diff --git a/dev-rust/unicode-segmentation/unicode-segmentation-1.5.0.ebuild b/dev-rust/unicode-segmentation/unicode-segmentation-1.5.0.ebuild
index f5efa20..497a443 100644
--- a/dev-rust/unicode-segmentation/unicode-segmentation-1.5.0.ebuild
+++ b/dev-rust/unicode-segmentation/unicode-segmentation-1.5.0.ebuild
@@ -15,3 +15,6 @@
 LICENSE="|| ( MIT Apache-2.0 )"
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
+
+# could not compile
+RESTRICT="test"
diff --git a/dev-rust/unicode-segmentation/unicode-segmentation-1.8.0.ebuild b/dev-rust/unicode-segmentation/unicode-segmentation-1.8.0.ebuild
new file mode 100644
index 0000000..6b45333
--- /dev/null
+++ b/dev-rust/unicode-segmentation/unicode-segmentation-1.8.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='This crate provides Grapheme Cluster, Word and Sentence boundaries
+according to Unicode Standard Annex #29 rules.'
+HOMEPAGE='https://crates.io/crates/unicode-segmentation'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
+
+# error: could not compile `unicode-segmentation`
+RESTRICT="test"
diff --git a/dev-rust/url/url-1.7.2.ebuild b/dev-rust/url/url-1.7.2.ebuild
index df822cb..cdc263f 100644
--- a/dev-rust/url/url-1.7.2.ebuild
+++ b/dev-rust/url/url-1.7.2.ebuild
@@ -25,3 +25,6 @@
 	=dev-rust/rustc-test-0.3*:=
 	=dev-rust/serde_json-0.8*:=
 "
+
+# error: could not compile `url`
+RESTRICT="test"
diff --git a/dev-rust/uuid/Manifest b/dev-rust/uuid/Manifest
new file mode 100644
index 0000000..37c7fbc
--- /dev/null
+++ b/dev-rust/uuid/Manifest
@@ -0,0 +1 @@
+DIST uuid-0.8.2.crate 37909 BLAKE2B e6ede5f8ae05572d4c55909eb3fe6946de6f10ad9bf71bd357739bc01201bf93f59ccbb3dabcbfd7b3e54b0c98c3b52d21f1bf1877b7283c6df623e9b2b3f33f SHA512 5a1f5ead9a920b9bbc120c02049c24b62ec215765e486d3a15c5015ef49fa506206efb737e6f6555cf6e2eddddfe55f0ca1d7dcfa9aa8bcf3e0ef570a54fa2d8
diff --git a/dev-rust/uuid/OWNERS b/dev-rust/uuid/OWNERS
new file mode 100644
index 0000000..0edda31
--- /dev/null
+++ b/dev-rust/uuid/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform/crosvm:/OWNERS
diff --git a/dev-rust/uuid/uuid-0.8.2.ebuild b/dev-rust/uuid/uuid-0.8.2.ebuild
new file mode 100644
index 0000000..b466883
--- /dev/null
+++ b/dev-rust/uuid/uuid-0.8.2.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='A library to generate and parse UUIDs.'
+HOMEPAGE='https://github.com/uuid-rs/uuid'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/getrandom-0.2*:=
+	=dev-rust/md5-0.7*:=
+	>=dev-rust/serde-1.0.56:= <dev-rust/serde-2.0.0
+	=dev-rust/sha1-0.6*:=
+	=dev-rust/slog-2*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py.
+# And, we removed `CROS_RUST_REMOVE_TARGET_CFG=1` manually as the dependency
+# "winapi" was declared as the form of
+# `[target.'cfg(windows)'.dependencies.winapi]`.
diff --git a/dev-rust/vcell/Manifest b/dev-rust/vcell/Manifest
new file mode 100644
index 0000000..d7ba7b3
--- /dev/null
+++ b/dev-rust/vcell/Manifest
@@ -0,0 +1 @@
+DIST vcell-0.1.3.crate 6377 BLAKE2B fc37ce9f61e45cd17a9e4b10e5eb45fd335553636fc9e9ef3312aeb4bfe6ec6b6fc8bbc521b2b6ee957c606b503097da7846cbb2387ec4e3694a9b7df8cfc8a8 SHA512 bb195b9c3499e9c5595436eff72d38cea3e42c54ca7f00b775e9c64f19bbe8743118e0972022e03df3d7a5be90754649432a1cfad5aba7c64c461f75825c139d
diff --git a/dev-rust/vcell/OWNERS b/dev-rust/vcell/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/vcell/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/vcell/vcell-0.1.3.ebuild b/dev-rust/vcell/vcell-0.1.3.ebuild
new file mode 100644
index 0000000..a522e19
--- /dev/null
+++ b/dev-rust/vcell/vcell-0.1.3.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='"Cell" with volatile read / write operations'
+HOMEPAGE='https://crates.io/crates/vcell'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/vcpkg/vcpkg-0.2.11.ebuild b/dev-rust/vcpkg/vcpkg-0.2.11.ebuild
index 9b7813a..ea35243 100644
--- a/dev-rust/vcpkg/vcpkg-0.2.11.ebuild
+++ b/dev-rust/vcpkg/vcpkg-0.2.11.ebuild
@@ -16,3 +16,6 @@
 KEYWORDS="*"
 
 RDEPEND="!=dev-rust/vcpkg-0.2*"
+
+# fails to compile
+RESTRICT="test"
diff --git a/dev-rust/version-sync/OWNERS b/dev-rust/version-sync/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/version-sync/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/version-sync/version-sync-0.8.0.ebuild b/dev-rust/version-sync/version-sync-0.8.0.ebuild
new file mode 100644
index 0000000..620da3d
--- /dev/null
+++ b/dev-rust/version-sync/version-sync-0.8.0.ebuild
@@ -0,0 +1,15 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_EMPTY_CRATE=1
+
+inherit cros-rust
+
+DESCRIPTION="Empty ${PN} crate"
+HOMEPAGE="https://github.com/bheisler/criterion.rs"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
diff --git a/dev-rust/version_check/Manifest b/dev-rust/version_check/Manifest
index ec73374..08bbcbb 100644
--- a/dev-rust/version_check/Manifest
+++ b/dev-rust/version_check/Manifest
@@ -1 +1,2 @@
 DIST version_check-0.9.2.crate 11979 BLAKE2B 6568f8d4652fb470162bb2251be2260a6bf83e107a4f957ed91117938d5da48c42bedfb5e6622bcd6c37950805666b78984577bd8dae687dbb39e452078bd97c SHA512 b88a9d545ef103fe6d0eebe7ddcf328fc21fcb02c60828b347cfc35afd957669e652a94d880ef992450c167df3505838bc649e0d83896542fa13a149875acf26
+DIST version_check-0.9.3.crate 12547 BLAKE2B 85761c300a8d755e0b376191ef0604728ae641261fdb10682a3134a828eadc4a33216426d286bcdbd8d0c5fcfe6ca8ba20ed078c4f53066b959739a0e73daec0 SHA512 4b3b428214a0322af536a18e6f050438398766af6589389f20a804121a6721962ba411e2dcfded60aaa74313128fb0e831bea31378e2695c29b29bdc24d7cbfd
diff --git a/dev-rust/version_check/OWNERS b/dev-rust/version_check/OWNERS
index 8e41b60..e8d28ad 100644
--- a/dev-rust/version_check/OWNERS
+++ b/dev-rust/version_check/OWNERS
@@ -1 +1 @@
-include chromiumos/overlays/chromiumos-overlay:/dev-rust/nom/OWNERS
+include /dev-rust/nom/OWNERS
diff --git a/dev-rust/version_check/version_check-0.9.3.ebuild b/dev-rust/version_check/version_check-0.9.3.ebuild
new file mode 100644
index 0000000..3b229a4
--- /dev/null
+++ b/dev-rust/version_check/version_check-0.9.3.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Tiny crate to check the version of the installed/running rustc.'
+HOMEPAGE='https://crates.io/crates/version_check'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/vmm_vhost/vmm_vhost-0.1.0-r2.ebuild b/dev-rust/vmm_vhost/vmm_vhost-0.1.0-r2.ebuild
deleted file mode 100644
index a16002e..0000000
--- a/dev-rust/vmm_vhost/vmm_vhost-0.1.0-r2.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="eaca5d36a2701c99b354ab5bc0954a78dfc9ff4f"
-CROS_WORKON_TREE="57e82370048b45b2bda2712eea78487d9d65a61c"
-CROS_WORKON_LOCALNAME="rust-vmm/vhost"
-CROS_WORKON_PROJECT="chromiumos/third_party/rust-vmm/vhost"
-CROS_WORKON_INCREMENTAL_BUILD=1
-
-inherit cros-workon cros-rust
-
-# Clear CROS_RUST_SUBDIR because the entire repository is a Rust project.
-CROS_RUST_SUBDIR=""
-
-DESCRIPTION="A crate to support vhost backend drivers for virtio devices."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/rust-vmm/vhost/"
-
-LICENSE="Apache-2.0 BSD"
-KEYWORDS="*"
-
-DEPEND="
-	>=dev-rust/bitflags-1.0.1:=
-	>=dev-rust/libc-0.2.39:=
-	dev-rust/sys_util:=
-	dev-rust/tempfile:=
-	=dev-rust/vm-memory-0.2*:=
-"
-
-src_compile() {
-	# Make sure the build works with default features.
-	ecargo_build
-	# Also check that the build works with all features.
-	ecargo_build --all-features
-	use test && cros-rust_src_test --no-run --all-features
-}
-
-src_test() {
-	cros-rust_src_test --all-features
-}
diff --git a/dev-rust/vmm_vhost/vmm_vhost-0.1.0-r7.ebuild b/dev-rust/vmm_vhost/vmm_vhost-0.1.0-r7.ebuild
new file mode 100644
index 0000000..5b236bb
--- /dev/null
+++ b/dev-rust/vmm_vhost/vmm_vhost-0.1.0-r7.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="7c95b4a2c1e378f7328d8bc0510bbb6998f54581"
+CROS_WORKON_TREE="a0c6dc038819e9dd54e27179e55fad201719ec77"
+CROS_WORKON_LOCALNAME="rust-vmm/vhost"
+CROS_WORKON_PROJECT="chromiumos/third_party/rust-vmm/vhost"
+CROS_WORKON_INCREMENTAL_BUILD=1
+
+inherit cros-workon cros-rust
+
+# Clear CROS_RUST_SUBDIR because the entire repository is a Rust project.
+CROS_RUST_SUBDIR=""
+
+DESCRIPTION="A crate to support vhost backend drivers for virtio devices."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/rust-vmm/vhost/"
+
+LICENSE="Apache-2.0 BSD"
+KEYWORDS="*"
+
+DEPEND="
+	>=dev-rust/bitflags-1.0.1:=
+	>=dev-rust/libc-0.2.39:=
+	dev-rust/sys_util:=
+	dev-rust/tempfile:=
+	=dev-rust/vm-memory-0.2*:=
+"
+
+src_compile() {
+	# Make sure the build works with default features.
+	ecargo_build
+	# Also check that the build works with all features.
+	ecargo_build --all-features
+	use test && cros-rust_src_test --no-run --all-features
+}
+
+src_test() {
+	cros-rust_src_test --all-features
+}
diff --git a/dev-rust/void/void-1.0.2.ebuild b/dev-rust/void/void-1.0.2.ebuild
index 8a36b04..f44099f 100644
--- a/dev-rust/void/void-1.0.2.ebuild
+++ b/dev-rust/void/void-1.0.2.ebuild
@@ -14,3 +14,5 @@
 LICENSE="|| ( MIT Apache-2.0 )"
 SLOT="${PV}/${PR}"
 KEYWORDS="*"
+
+RESTRICT="test"
diff --git a/dev-rust/volatile-register/Manifest b/dev-rust/volatile-register/Manifest
new file mode 100644
index 0000000..6d9e957
--- /dev/null
+++ b/dev-rust/volatile-register/Manifest
@@ -0,0 +1 @@
+DIST volatile-register-0.2.0.crate 6991 BLAKE2B 71c51a0c66d294997407919d48b37088643544aa0088e33b08b439c9b3a944fbda137212b817562bb8fd483396ecebc72c109eaa2f7d0e21bb7d1d6ac2ebde37 SHA512 73c7f04796211a8a2b44ac24a30b40f0c6a179daea97f3a32a5dda81016799673437fc5a8de17f169f908a6ed41726aedba5fcb68b868d95ddd45216c166fe50
diff --git a/dev-rust/volatile-register/OWNERS b/dev-rust/volatile-register/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/dev-rust/volatile-register/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/dev-rust/volatile-register/volatile-register-0.2.0.ebuild b/dev-rust/volatile-register/volatile-register-0.2.0.ebuild
new file mode 100644
index 0000000..19f7b92
--- /dev/null
+++ b/dev-rust/volatile-register/volatile-register-0.2.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_RUST_REMOVE_DEV_DEPS=1
+
+inherit cros-rust
+
+DESCRIPTION='Volatile access to memory mapped hardware registers'
+HOMEPAGE='https://crates.io/crates/volatile-register'
+SRC_URI="https://crates.io/api/v1/crates/${PN}/${PV}/download -> ${P}.crate"
+
+LICENSE="|| ( MIT Apache-2.0 )"
+SLOT="${PV}/${PR}"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/vcell-0.1*:=
+"
+RDEPEND="${DEPEND}"
+
+# This file was automatically generated by cargo2ebuild.py
diff --git a/dev-rust/which/OWNERS b/dev-rust/which/OWNERS
index 08ef481..9331bd8 100644
--- a/dev-rust/which/OWNERS
+++ b/dev-rust/which/OWNERS
@@ -1 +1 @@
-include chromiumos/overlays/chromiumos-overlay:/dev-rust/bindgen/OWNERS
+include /dev-rust/bindgen/OWNERS
diff --git a/dev-rust/which/which-4.0.2.ebuild b/dev-rust/which/which-4.0.2.ebuild
index c2ecce8..7892bb5 100644
--- a/dev-rust/which/which-4.0.2.ebuild
+++ b/dev-rust/which/which-4.0.2.ebuild
@@ -20,3 +20,6 @@
 	=dev-rust/thiserror-1*:=
 "
 RDEPEND="${DEPEND}"
+
+# error: could not compile `which`
+RESTRICT="test"
diff --git a/dev-rust/xml-rs/xml-rs-0.3.6-r2.ebuild b/dev-rust/xml-rs/xml-rs-0.3.6-r2.ebuild
new file mode 120000
index 0000000..24ecd51
--- /dev/null
+++ b/dev-rust/xml-rs/xml-rs-0.3.6-r2.ebuild
@@ -0,0 +1 @@
+xml-rs-0.3.6.ebuild
\ No newline at end of file
diff --git a/dev-rust/xml-rs/xml-rs-0.3.6.ebuild b/dev-rust/xml-rs/xml-rs-0.3.6.ebuild
index dd2f1e5..951a85c 100644
--- a/dev-rust/xml-rs/xml-rs-0.3.6.ebuild
+++ b/dev-rust/xml-rs/xml-rs-0.3.6.ebuild
@@ -1,7 +1,7 @@
 # Copyright 2019 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="6"
+EAPI="7"
 
 CROS_RUST_REMOVE_DEV_DEPS=1
 
@@ -18,3 +18,9 @@
 DEPEND="
 	>=dev-rust/bitflags-0.5.0:= <dev-rust/bitflags-0.8.0
 "
+RDEPEND="${DEPEND}"
+
+# Unexpected event at line 32:
+# Expected: Characters("Cascading style sheet: © - ҉")
+# Found:    Characters("Cascading style sheet: © - \u{489}")
+RESTRICT="test"
diff --git a/dev-rust/yaml-rust/yaml-rust-0.4.3.ebuild b/dev-rust/yaml-rust/yaml-rust-0.4.3.ebuild
index 55fe3bb..1076fb1 100644
--- a/dev-rust/yaml-rust/yaml-rust-0.4.3.ebuild
+++ b/dev-rust/yaml-rust/yaml-rust-0.4.3.ebuild
@@ -20,3 +20,6 @@
 	>=dev-rust/linked-hash-map-0.0.9:=
 	<dev-rust/linked-hash-map-0.6
 "
+
+# could not compile
+RESTRICT="test"
diff --git a/dev-util/bsdiff/bsdiff-4.3.1-r32.ebuild b/dev-util/bsdiff/bsdiff-4.3.1-r32.ebuild
deleted file mode 100644
index 8b3a798..0000000
--- a/dev-util/bsdiff/bsdiff-4.3.1-r32.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-util/bsdiff/bsdiff-4.3-r2.ebuild,v 1.1 2010/12/13 00:35:03 flameeyes Exp $
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("baa9821b2f2d74840481e279db5901940c947984" "4500e02a8a33ec8defead90294a1d8fa6d538145")
-CROS_WORKON_TREE=("3a989be8b720701c4023d8b52d50648e01cf9dd2" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a6219da561ac98cfa3cdf9d1fb98cf15b5b28473")
-inherit cros-constants
-
-# cros-workon expects the repo to be in src/third_party, but is in src/aosp.
-CROS_WORKON_LOCALNAME=("../platform2" "../aosp/external/bsdiff")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "platform/external/bsdiff")
-CROS_WORKON_EGIT_BRANCH=("main" "master")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/bsdiff")
-CROS_WORKON_REPO=("${CROS_GIT_HOST_URL}" "${CROS_GIT_AOSP_URL}")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_MANUAL_UPREV=1
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
-
-PLATFORM_SUBDIR="bsdiff"
-
-inherit cros-workon platform
-
-DESCRIPTION="bsdiff: Binary Differencer using a suffix alg"
-HOMEPAGE="http://www.daemonology.net/bsdiff/"
-SRC_URI=""
-
-LICENSE="BSD-2"
-KEYWORDS="*"
-
-RDEPEND="
-	>=app-arch/brotli-1.0.6:=
-	app-arch/bzip2:=
-	dev-libs/libdivsufsort:=
-"
-DEPEND="${RDEPEND}"
-
-src_install() {
-	if use cros_host; then
-		dobin "${OUT}"/bsdiff
-		dobin "${OUT}"/bspatch
-	fi
-	dolib.a "${OUT}"/libbsdiff.a
-	dolib.a "${OUT}"/libbspatch.a
-
-	insinto /usr/include
-	doins -r include/bsdiff
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins libbsdiff.pc libbspatch.pc
-
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/bspatch_fuzzer
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/bsdiff_test"
-
-	# Run fuzzer.
-	platform_fuzzer_test "${OUT}"/bspatch_fuzzer
-}
diff --git a/dev-util/bsdiff/bsdiff-4.3.1-r34.ebuild b/dev-util/bsdiff/bsdiff-4.3.1-r34.ebuild
new file mode 100644
index 0000000..c07d1e7
--- /dev/null
+++ b/dev-util/bsdiff/bsdiff-4.3.1-r34.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-util/bsdiff/bsdiff-4.3-r2.ebuild,v 1.1 2010/12/13 00:35:03 flameeyes Exp $
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("c4f0fe250331fbc1ad16515f86804cb99a0f6ee9" "c1c7b9eaa75d93663424bb245395fe00ca0ad233")
+CROS_WORKON_TREE=("a3d79a5641e6cda7da95a9316f5d29998cc84865" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "7a09dff0a55fec57ae1ba55d023b5deae612d4fb")
+inherit cros-constants
+
+# cros-workon expects the repo to be in src/third_party, but is in src/aosp.
+CROS_WORKON_LOCALNAME=("../platform2" "../aosp/external/bsdiff")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "platform/external/bsdiff")
+CROS_WORKON_EGIT_BRANCH=("main" "master")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/bsdiff")
+CROS_WORKON_REPO=("${CROS_GIT_HOST_URL}" "${CROS_GIT_AOSP_URL}")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_MANUAL_UPREV=1
+CROS_WORKON_SUBTREE=("common-mk .gn" "")
+
+PLATFORM_SUBDIR="bsdiff"
+
+inherit cros-workon platform
+
+DESCRIPTION="bsdiff: Binary Differencer using a suffix alg"
+HOMEPAGE="http://www.daemonology.net/bsdiff/"
+SRC_URI=""
+
+LICENSE="BSD-2"
+KEYWORDS="*"
+
+RDEPEND="
+	>=app-arch/brotli-1.0.6:=
+	app-arch/bzip2:=
+	dev-libs/libdivsufsort:=
+"
+DEPEND="${RDEPEND}"
+
+src_install() {
+	if use cros_host; then
+		dobin "${OUT}"/bsdiff
+		dobin "${OUT}"/bspatch
+	fi
+	dolib.a "${OUT}"/libbsdiff.a
+	dolib.a "${OUT}"/libbspatch.a
+
+	insinto /usr/include
+	doins -r include/bsdiff
+
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins libbsdiff.pc libbspatch.pc
+
+	local fuzzer_component_id="31714"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/bspatch_fuzzer \
+		--comp "${fuzzer_component_id}"
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/bsdiff_test"
+
+	# Run fuzzer.
+	platform_fuzzer_test "${OUT}"/bspatch_fuzzer
+}
diff --git a/dev-util/bsdiff/bsdiff-9999.ebuild b/dev-util/bsdiff/bsdiff-9999.ebuild
index 7a973a4..f260200 100644
--- a/dev-util/bsdiff/bsdiff-9999.ebuild
+++ b/dev-util/bsdiff/bsdiff-9999.ebuild
@@ -48,7 +48,9 @@
 	insinto "/usr/$(get_libdir)/pkgconfig"
 	doins libbsdiff.pc libbspatch.pc
 
-	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/bspatch_fuzzer
+	local fuzzer_component_id="31714"
+	platform_fuzzer_install "${S}"/OWNERS "${OUT}"/bspatch_fuzzer \
+		--comp "${fuzzer_component_id}"
 }
 
 platform_pkg_test() {
diff --git a/dev-util/cros-provision/cros-provision-0.0.1-r4.ebuild b/dev-util/cros-provision/cros-provision-0.0.1-r4.ebuild
new file mode 100644
index 0000000..35bcd9b
--- /dev/null
+++ b/dev-util/cros-provision/cros-provision-0.0.1-r4.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="4c9b0bff59adfa276da2c9daa2b3143ea8b6b09c"
+CROS_WORKON_TREE="acc06f308d576afe81e03e6b467ce127eb1ff249"
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME=("../platform/dev")
+CROS_WORKON_SUBTREE="src/chromiumos/test/provision"
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Provision server implementation for installing CrOS on a test device"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/provision"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+CROS_GO_WORKSPACE=(
+	"${S}"
+)
+
+CROS_GO_BINARIES=(
+	"chromiumos/test/provision/cmd/cros-provision"
+)
+
+CROS_GO_TEST=(
+	"chromiumos/test/provision/cmd/..."
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+DEPEND="
+	dev-util/lro-server
+	dev-util/lroold-server
+	dev-go/genproto-rpc
+	dev-go/luci-go-common
+	dev-go/mock
+	dev-go/protobuf
+	chromeos-base/cros-config-api
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-util/cros-provision/cros-provision-9999.ebuild b/dev-util/cros-provision/cros-provision-9999.ebuild
new file mode 100644
index 0000000..2566f17
--- /dev/null
+++ b/dev-util/cros-provision/cros-provision-9999.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME=("../platform/dev")
+CROS_WORKON_SUBTREE="src/chromiumos/test/provision"
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Provision server implementation for installing CrOS on a test device"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/provision"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+IUSE=""
+
+CROS_GO_WORKSPACE=(
+	"${S}"
+)
+
+CROS_GO_BINARIES=(
+	"chromiumos/test/provision/cmd/cros-provision"
+)
+
+CROS_GO_TEST=(
+	"chromiumos/test/provision/cmd/..."
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+DEPEND="
+	dev-util/lro-server
+	dev-util/lroold-server
+	dev-go/genproto-rpc
+	dev-go/luci-go-common
+	dev-go/mock
+	dev-go/protobuf
+	chromeos-base/cros-config-api
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-util/cros-test-finder/OWNERS b/dev-util/cros-test-finder/OWNERS
new file mode 100644
index 0000000..634b013
--- /dev/null
+++ b/dev-util/cros-test-finder/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform/dev-util:/src/OWNERS
diff --git a/dev-util/cros-test-finder/cros-test-finder-0.0.1-r3.ebuild b/dev-util/cros-test-finder/cros-test-finder-0.0.1-r3.ebuild
new file mode 100644
index 0000000..e36d270d
--- /dev/null
+++ b/dev-util/cros-test-finder/cros-test-finder-0.0.1-r3.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="c86282015c8d66130e4194d52edae7285bf53462"
+CROS_WORKON_TREE=("9bf76baa78c14c43b9ffa2759dca54d2ac3a6134" "a5b7a8cfa5fee66dae2198d608c1767f315ab13d" "d66c5c1160ddd377fe32aad46cc54fbee6081343")
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME=("../platform/dev")
+CROS_WORKON_SUBTREE="src/chromiumos/test/test_finder src/chromiumos/test/util src/chromiumos/test/execution"
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Test finder for find tests that match the specified test suite tags"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/test_finder"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+CROS_GO_VERSION="${PF}"
+
+CROS_GO_BINARIES=(
+	"chromiumos/test/test_finder/cmd/cros-test-finder"
+)
+
+CROS_GO_TEST=(
+	"chromiumos/test/test_finder/cmd/cros-test-finder/..."
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+DEPEND="
+	chromeos-base/tast-cmd:=
+	chromeos-base/tast-proto
+	dev-util/lro-server
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+	# Disable cgo and PIE on building Tast binaries. See:
+	# https://crbug.com/976196
+	# https://github.com/golang/go/issues/30986#issuecomment-475626018
+	export CGO_ENABLED=0
+	export GOPIE=0
+
+	default
+}
diff --git a/dev-util/cros-test-finder/cros-test-finder-9999.ebuild b/dev-util/cros-test-finder/cros-test-finder-9999.ebuild
new file mode 100644
index 0000000..fa2a8c7
--- /dev/null
+++ b/dev-util/cros-test-finder/cros-test-finder-9999.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME=("../platform/dev")
+CROS_WORKON_SUBTREE="src/chromiumos/test/test_finder src/chromiumos/test/util src/chromiumos/test/execution"
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Test finder for find tests that match the specified test suite tags"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/test_finder"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+IUSE=""
+
+CROS_GO_VERSION="${PF}"
+
+CROS_GO_BINARIES=(
+	"chromiumos/test/test_finder/cmd/cros-test-finder"
+)
+
+CROS_GO_TEST=(
+	"chromiumos/test/test_finder/cmd/cros-test-finder/..."
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+DEPEND="
+	chromeos-base/tast-cmd:=
+	chromeos-base/tast-proto
+	dev-util/lro-server
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+	# Disable cgo and PIE on building Tast binaries. See:
+	# https://crbug.com/976196
+	# https://github.com/golang/go/issues/30986#issuecomment-475626018
+	export CGO_ENABLED=0
+	export GOPIE=0
+
+	default
+}
diff --git a/dev-util/cros-test/OWNERS b/dev-util/cros-test/OWNERS
new file mode 100644
index 0000000..634b013
--- /dev/null
+++ b/dev-util/cros-test/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform/dev-util:/src/OWNERS
diff --git a/dev-util/cros-test/cros-test-0.0.1-r2.ebuild b/dev-util/cros-test/cros-test-0.0.1-r2.ebuild
new file mode 100644
index 0000000..0c31ca2
--- /dev/null
+++ b/dev-util/cros-test/cros-test-0.0.1-r2.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="c86282015c8d66130e4194d52edae7285bf53462"
+CROS_WORKON_TREE=("d66c5c1160ddd377fe32aad46cc54fbee6081343" "a5b7a8cfa5fee66dae2198d608c1767f315ab13d")
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME=("../platform/dev")
+CROS_WORKON_SUBTREE="src/chromiumos/test/execution src/chromiumos/test/util"
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Test execution server for running tests and capturing results"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/execution"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+CROS_GO_VERSION="${PF}"
+
+CROS_GO_BINARIES=(
+	"chromiumos/test/execution/cmd/cros-test"
+)
+
+CROS_GO_TEST=(
+	"chromiumos/test/execution/cmd/cros-test/..."
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+DEPEND="
+	chromeos-base/tast-cmd:=
+	chromeos-base/tast-proto
+	dev-util/lro-server
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+	# Disable cgo and PIE on building Tast binaries. See:
+	# https://crbug.com/976196
+	# https://github.com/golang/go/issues/30986#issuecomment-475626018
+	export CGO_ENABLED=0
+	export GOPIE=0
+
+	default
+}
diff --git a/dev-util/cros-test/cros-test-9999.ebuild b/dev-util/cros-test/cros-test-9999.ebuild
new file mode 100644
index 0000000..db7518d
--- /dev/null
+++ b/dev-util/cros-test/cros-test-9999.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME=("../platform/dev")
+CROS_WORKON_SUBTREE="src/chromiumos/test/execution src/chromiumos/test/util"
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Test execution server for running tests and capturing results"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/execution"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+IUSE=""
+
+CROS_GO_VERSION="${PF}"
+
+CROS_GO_BINARIES=(
+	"chromiumos/test/execution/cmd/cros-test"
+)
+
+CROS_GO_TEST=(
+	"chromiumos/test/execution/cmd/cros-test/..."
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+DEPEND="
+	chromeos-base/tast-cmd:=
+	chromeos-base/tast-proto
+	dev-util/lro-server
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+	# Disable cgo and PIE on building Tast binaries. See:
+	# https://crbug.com/976196
+	# https://github.com/golang/go/issues/30986#issuecomment-475626018
+	export CGO_ENABLED=0
+	export GOPIE=0
+
+	default
+}
diff --git a/dev-util/cxxbridge-cmd/cxxbridge-cmd-1.0.42-r2.ebuild b/dev-util/cxxbridge-cmd/cxxbridge-cmd-1.0.42-r2.ebuild
new file mode 120000
index 0000000..f6f67c6
--- /dev/null
+++ b/dev-util/cxxbridge-cmd/cxxbridge-cmd-1.0.42-r2.ebuild
@@ -0,0 +1 @@
+cxxbridge-cmd-1.0.42.ebuild
\ No newline at end of file
diff --git a/dev-util/cxxbridge-cmd/cxxbridge-cmd-1.0.42.ebuild b/dev-util/cxxbridge-cmd/cxxbridge-cmd-1.0.42.ebuild
index cd9113e..88d8a3c 100644
--- a/dev-util/cxxbridge-cmd/cxxbridge-cmd-1.0.42.ebuild
+++ b/dev-util/cxxbridge-cmd/cxxbridge-cmd-1.0.42.ebuild
@@ -16,11 +16,11 @@
 KEYWORDS="*"
 
 DEPEND="
-	>=dev-rust/clap-2.33:= <dev-rust/clap-3
-	>=dev-rust/codespan-reporting-0.11:= <dev-rust/codespan-reporting-0.12
-	>=dev-rust/proc-macro2-1.0.26:= <dev-rust/proc-macro2-2
-	>=dev-rust/quote-1.0:= <dev-rust/quote-2
-	>=dev-rust/syn-1.0.68:= <dev-rust/syn-2
+	>=dev-rust/clap-2.33:= <dev-rust/clap-3.0.0_alpha
+	>=dev-rust/codespan-reporting-0.11:= <dev-rust/codespan-reporting-0.12.0_alpha
+	>=dev-rust/proc-macro2-1.0.26:= <dev-rust/proc-macro2-2.0.0_alpha
+	>=dev-rust/quote-1.0:= <dev-rust/quote-2.0.0_alpha
+	>=dev-rust/syn-1.0.68:= <dev-rust/syn-2.0.0_alpha
 "
 RDEPEND="${DEPEND}"
 
diff --git a/dev-util/dut-server/dut-server-0.0.1-r17.ebuild b/dev-util/dut-server/dut-server-0.0.1-r17.ebuild
new file mode 100644
index 0000000..a1dcbdd
--- /dev/null
+++ b/dev-util/dut-server/dut-server-0.0.1-r17.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="4c9b0bff59adfa276da2c9daa2b3143ea8b6b09c"
+CROS_WORKON_TREE="f618c21fc562b57ffc97a6296301c8c034cf3ddc"
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME=("../platform/dev")
+CROS_WORKON_SUBTREE="src/chromiumos/test/dut"
+
+inherit cros-go cros-workon
+
+DESCRIPTION="DUT Service Server implementation for interfacing with the DUT"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/dut"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+CROS_GO_WORKSPACE=(
+	"${S}"
+)
+
+CROS_GO_BINARIES=(
+	"chromiumos/test/dut/cmd/dutserver"
+)
+
+CROS_GO_TEST=(
+	"chromiumos/test/dut/cmd/dutserver/..."
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+DEPEND="
+	dev-util/lro-server
+	dev-go/crypto
+	dev-go/grpc
+	dev-go/mock
+	dev-go/protobuf
+	chromeos-base/cros-config-api
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-util/dut-server/dut-server-0.0.1-r5.ebuild b/dev-util/dut-server/dut-server-0.0.1-r5.ebuild
deleted file mode 100644
index 77b23e5..0000000
--- a/dev-util/dut-server/dut-server-0.0.1-r5.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="d5f4dc19a6af173932c7db54e1550aef00eb2f55"
-CROS_WORKON_TREE="973d967f3987480fbaf6415e28a902e2956a3acd"
-CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
-CROS_WORKON_LOCALNAME=("../platform/dev")
-CROS_WORKON_SUBTREE="src/chromiumos/test/dut"
-
-inherit cros-go cros-workon
-
-DESCRIPTION="DUT Service Server implementation for interfacing with the DUT"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/dut"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-CROS_GO_WORKSPACE=(
-	"${S}"
-)
-
-CROS_GO_BINARIES=(
-	"chromiumos/test/dut/cmd/dutserver"
-)
-
-CROS_GO_TEST=(
-	"chromiumos/test/dut/cmd/dutserver/..."
-)
-
-CROS_GO_VET=(
-	"${CROS_GO_TEST[@]}"
-)
-
-DEPEND="
-	dev-util/lro-server
-	dev-go/grpc
-	chromeos-base/cros-config-api
-"
-RDEPEND="${DEPEND}"
diff --git a/dev-util/dut-server/dut-server-9999.ebuild b/dev-util/dut-server/dut-server-9999.ebuild
index 857ff43..c0a5781 100644
--- a/dev-util/dut-server/dut-server-9999.ebuild
+++ b/dev-util/dut-server/dut-server-9999.ebuild
@@ -33,7 +33,10 @@
 
 DEPEND="
 	dev-util/lro-server
+	dev-go/crypto
 	dev-go/grpc
+	dev-go/mock
+	dev-go/protobuf
 	chromeos-base/cros-config-api
 "
 RDEPEND="${DEPEND}"
diff --git a/dev-util/hdctools/hdctools-0.0.1-r1400.ebuild b/dev-util/hdctools/hdctools-0.0.1-r1400.ebuild
deleted file mode 100644
index f184758..0000000
--- a/dev-util/hdctools/hdctools-0.0.1-r1400.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="e521fed7a332b7c82232171a18361da239e9be62"
-CROS_WORKON_TREE="10706ea9ac1e3d8b910c300d8a8f637dd9a2aec9"
-CROS_WORKON_PROJECT="chromiumos/third_party/hdctools"
-PYTHON_COMPAT=( python3_{6..9} )
-
-inherit cros-workon distutils-r1 toolchain-funcs udev
-
-DESCRIPTION="Software to communicate with servo/miniservo debug boards"
-HOMEPAGE="https://www.chromium.org/chromium-os/servo"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="cros_host test"
-
-COMMON_DEPEND="
-	>=dev-embedded/libftdi-0.18:=
-	dev-python/numpy[${PYTHON_USEDEP}]
-	>=dev-python/pexpect-3.0[${PYTHON_USEDEP}]
-	dev-python/pyserial[${PYTHON_USEDEP}]
-	>=dev-python/pyusb-1.0.2[${PYTHON_USEDEP}]
-	sys-power/uhubctl
-	virtual/libusb:1=
-	chromeos-base/ec-devutils:=[${PYTHON_USEDEP}]
-"
-
-RDEPEND="${COMMON_DEPEND}
-	virtual/servo-config-dut-usb3:*
-"
-
-DEPEND="${COMMON_DEPEND}
-	app-text/htmltidy
-"
-
-BDEPEND="test? ( dev-python/pytest[${PYTHON_USEDEP}] )"
-
-src_compile() {
-	tc-export CC PKG_CONFIG
-	local makeargs=( $(usex cros_host '' EXTRA_DIRS=chromeos) )
-	emake "${makeargs[@]}"
-	distutils-r1_src_compile
-}
-
-python_test() {
-	py.test -v build/ || die
-}
-
-src_test() {
-	distutils-r1_src_test
-}
-
-src_install() {
-	local makeargs=(
-		$(usex cros_host '' EXTRA_DIRS=chromeos)
-		DESTDIR="${D}"
-		LIBDIR=/usr/$(get_libdir)
-		UDEV_DEST="${D}$(get_udevdir)/rules.d"
-		install
-	)
-	emake "${makeargs[@]}"
-	distutils-r1_src_install
-}
diff --git a/dev-util/hdctools/hdctools-0.0.1-r1463.ebuild b/dev-util/hdctools/hdctools-0.0.1-r1463.ebuild
new file mode 100644
index 0000000..84a5c24
--- /dev/null
+++ b/dev-util/hdctools/hdctools-0.0.1-r1463.ebuild
@@ -0,0 +1,65 @@
+# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="cc32f0209b995c1334b3e5f310cccc47905680af"
+CROS_WORKON_TREE="965e0a38c713b452d7e08c3986f6b708c3589feb"
+CROS_WORKON_PROJECT="chromiumos/third_party/hdctools"
+PYTHON_COMPAT=( python3_{6..9} )
+
+inherit cros-workon distutils-r1 toolchain-funcs udev
+
+DESCRIPTION="Software to communicate with servo/miniservo debug boards"
+HOMEPAGE="https://www.chromium.org/chromium-os/servo"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="cros_host test"
+
+COMMON_DEPEND="
+	>=dev-embedded/libftdi-0.18:=
+	dev-python/numpy[${PYTHON_USEDEP}]
+	>=dev-python/pexpect-3.0[${PYTHON_USEDEP}]
+	dev-python/pyserial[${PYTHON_USEDEP}]
+	>=dev-python/pyusb-1.0.2[${PYTHON_USEDEP}]
+	sys-power/uhubctl
+	virtual/libusb:1=
+	chromeos-base/ec-devutils:=[${PYTHON_USEDEP}]
+"
+
+RDEPEND="${COMMON_DEPEND}
+	virtual/servo-config-dut-usb3:*
+"
+
+DEPEND="${COMMON_DEPEND}
+	app-text/htmltidy
+"
+
+BDEPEND="test? ( dev-python/pytest[${PYTHON_USEDEP}] )"
+
+src_compile() {
+	tc-export CC PKG_CONFIG
+	local makeargs=( $(usex cros_host '' EXTRA_DIRS=chromeos) )
+	emake "${makeargs[@]}"
+	distutils-r1_src_compile
+}
+
+python_test() {
+	py.test -v build/ || die
+}
+
+src_test() {
+	distutils-r1_src_test
+}
+
+src_install() {
+	local makeargs=(
+		$(usex cros_host '' EXTRA_DIRS=chromeos)
+		DESTDIR="${D}"
+		LIBDIR=/usr/$(get_libdir)
+		UDEV_DEST="${D}$(get_udevdir)/rules.d"
+		install
+	)
+	emake "${makeargs[@]}"
+	distutils-r1_src_install
+}
diff --git a/dev-util/lldb-server/OWNERS b/dev-util/lldb-server/OWNERS
new file mode 100644
index 0000000..31243ec
--- /dev/null
+++ b/dev-util/lldb-server/OWNERS
@@ -0,0 +1 @@
+include chromiumos/third_party/toolchain-utils:/OWNERS.toolchain
diff --git a/dev-util/lldb-server/files/PATCHES.json b/dev-util/lldb-server/files/PATCHES.json
new file mode 100644
index 0000000..46cdf17
--- /dev/null
+++ b/dev-util/lldb-server/files/PATCHES.json
@@ -0,0 +1,11 @@
+[
+    {
+        "comment": "Do not create a native build when LLDB_TABLEGEN_EXE is already provided.",
+        "rel_patch_path": "lldb-tablegen.patch"
+    },
+    {
+        "comment": "Update NativeRegisterContextLinux_arm64.{cpp,h} to match changes to LinuxPTraceDefines_arm64sve.h file.",
+        "rel_patch_path": "lldb-server-aarch64.patch",
+        "end_version": 431464
+    }
+]
diff --git a/dev-util/lldb-server/files/lldb-server-aarch64.patch b/dev-util/lldb-server/files/lldb-server-aarch64.patch
new file mode 100644
index 0000000..152502d
--- /dev/null
+++ b/dev-util/lldb-server/files/lldb-server-aarch64.patch
@@ -0,0 +1,133 @@
+Update sve macros in NativeRegisterContextLinux_arm64.{cpp,h}.
+
+Commit 090306fc80dbf changed most of the arm64 sve macros, but apparently
+did not make the changes in the NativeRegisterContextLinux_arm64.* files
+(or those files were pulled over from someplace else after that commit).
+
+This patch replaces the no-longer-defined macros with their new functions
+or definitions from the commit referenced above.
+
+This change has also been committed upstream (see
+https://reviews.llvm.org/D104826), in commit
+05915400b7f9933b95686116f2dc1370e7f96cfb (r431464).
+
+Author: cmtice@google.com
+Date: 2021-06-23
+diff --git a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.h b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.h
+index 47105a5..24dbd39 100644
+--- a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.h
++++ b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.h
+@@ -14,6 +14,7 @@
+ #include "Plugins/Process/Linux/NativeRegisterContextLinux.h"
+ #include "Plugins/Process/Utility/NativeRegisterContextDBReg_arm64.h"
+ #include "Plugins/Process/Utility/RegisterInfoPOSIX_arm64.h"
++#include "Plugins/Process/elf-core/RegisterContextPOSIXCore_arm64.h"
+ 
+ #include <asm/ptrace.h>
+ 
+@@ -84,7 +85,7 @@ private:
+       m_fpr; // floating-point registers including extended register sets.
+ 
+   SVEState m_sve_state;
+-  struct user_sve_header m_sve_header;
++  struct sve::user_sve_header m_sve_header;
+   std::vector<uint8_t> m_sve_ptrace_payload;
+ 
+   bool m_refresh_hwdebug_info;
+diff --git a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp
+index fbaa7e6..7616eeb 100644
+--- a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp
++++ b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp
+@@ -155,15 +155,15 @@ NativeRegisterContextLinux_arm64::ReadRegister(const RegisterInfo *reg_info,
+       if (reg == GetRegisterInfo().GetRegNumFPSR()) {
+         sve_reg_num = reg;
+         if (m_sve_state == SVEState::Full)
+-          offset = SVE_PT_SVE_FPSR_OFFSET(sve_vq_from_vl(m_sve_header.vl));
++          offset = sve::PTraceFPSROffset(sve::vq_from_vl(m_sve_header.vl));
+         else if (m_sve_state == SVEState::FPSIMD)
+-          offset = SVE_PT_FPSIMD_OFFSET + (32 * 16);
++          offset = sve::ptrace_fpsimd_offset + (32 * 16);
+       } else if (reg == GetRegisterInfo().GetRegNumFPCR()) {
+         sve_reg_num = reg;
+         if (m_sve_state == SVEState::Full)
+-          offset = SVE_PT_SVE_FPCR_OFFSET(sve_vq_from_vl(m_sve_header.vl));
++          offset = sve::PTraceFPCROffset(sve::vq_from_vl(m_sve_header.vl));
+         else if (m_sve_state == SVEState::FPSIMD)
+-          offset = SVE_PT_FPSIMD_OFFSET + (32 * 16) + 4;
++          offset = sve::ptrace_fpsimd_offset + (32 * 16) + 4;
+       } else {
+         // Extract SVE Z register value register number for this reg_info
+         if (reg_info->value_regs &&
+@@ -273,15 +273,15 @@ Status NativeRegisterContextLinux_arm64::WriteRegister(
+       if (reg == GetRegisterInfo().GetRegNumFPSR()) {
+         sve_reg_num = reg;
+         if (m_sve_state == SVEState::Full)
+-          offset = SVE_PT_SVE_FPSR_OFFSET(sve_vq_from_vl(m_sve_header.vl));
++          offset = sve::PTraceFPSROffset(sve::vq_from_vl(m_sve_header.vl));
+         else if (m_sve_state == SVEState::FPSIMD)
+-          offset = SVE_PT_FPSIMD_OFFSET + (32 * 16);
++          offset = sve::ptrace_fpsimd_offset + (32 * 16);
+       } else if (reg == GetRegisterInfo().GetRegNumFPCR()) {
+         sve_reg_num = reg;
+         if (m_sve_state == SVEState::Full)
+-          offset = SVE_PT_SVE_FPCR_OFFSET(sve_vq_from_vl(m_sve_header.vl));
++          offset = sve::PTraceFPCROffset(sve::vq_from_vl(m_sve_header.vl));
+         else if (m_sve_state == SVEState::FPSIMD)
+-          offset = SVE_PT_FPSIMD_OFFSET + (32 * 16) + 4;
++          offset = sve::ptrace_fpsimd_offset + (32 * 16) + 4;
+       } else {
+         // Extract SVE Z register value register number for this reg_info
+         if (reg_info->value_regs &&
+@@ -307,7 +307,7 @@ Status NativeRegisterContextLinux_arm64::WriteRegister(
+       if (GetRegisterInfo().IsSVERegVG(reg)) {
+         uint64_t vg_value = reg_value.GetAsUInt64();
+ 
+-        if (sve_vl_valid(vg_value * 8)) {
++        if (sve::vl_valid(vg_value * 8)) {
+           if (m_sve_header_is_valid && vg_value == GetSVERegVG())
+             return error;
+ 
+@@ -684,16 +684,16 @@ void NativeRegisterContextLinux_arm64::ConfigureRegisterContext() {
+       GetRegisterInfo().ConfigureVectorRegisterInfos(
+           RegisterInfoPOSIX_arm64::eVectorQuadwordAArch64);
+     } else {
+-      if ((m_sve_header.flags & SVE_PT_REGS_MASK) == SVE_PT_REGS_FPSIMD)
++      if ((m_sve_header.flags & sve::ptrace_regs_mask) == sve::ptrace_regs_fpsimd)
+         m_sve_state = SVEState::FPSIMD;
+-      else if ((m_sve_header.flags & SVE_PT_REGS_MASK) == SVE_PT_REGS_SVE)
++      else if ((m_sve_header.flags & sve::ptrace_regs_mask) == sve::ptrace_regs_sve)
+         m_sve_state = SVEState::Full;
+ 
+       uint32_t vq = RegisterInfoPOSIX_arm64::eVectorQuadwordAArch64SVE;
+-      if (sve_vl_valid(m_sve_header.vl))
+-        vq = sve_vq_from_vl(m_sve_header.vl);
++      if (sve::vl_valid(m_sve_header.vl))
++        vq = sve::vq_from_vl(m_sve_header.vl);
+       GetRegisterInfo().ConfigureVectorRegisterInfos(vq);
+-      m_sve_ptrace_payload.resize(SVE_PT_SIZE(vq, SVE_PT_REGS_SVE));
++      m_sve_ptrace_payload.resize(sve::PTraceSize(vq, sve::ptrace_regs_sve));
+     }
+   }
+ }
+@@ -710,18 +710,18 @@ uint32_t NativeRegisterContextLinux_arm64::CalculateSVEOffset(
+   if (m_sve_state == SVEState::FPSIMD) {
+     const uint32_t reg = reg_info->kinds[lldb::eRegisterKindLLDB];
+     sve_reg_offset =
+-        SVE_PT_FPSIMD_OFFSET + (reg - GetRegisterInfo().GetRegNumSVEZ0()) * 16;
++        sve::ptrace_fpsimd_offset + (reg - GetRegisterInfo().GetRegNumSVEZ0()) * 16;
+   } else if (m_sve_state == SVEState::Full) {
+     uint32_t sve_z0_offset = GetGPRSize() + 16;
+     sve_reg_offset =
+-        SVE_SIG_REGS_OFFSET + reg_info->byte_offset - sve_z0_offset;
++        sve::SigRegsOffset() + reg_info->byte_offset - sve_z0_offset;
+   }
+   return sve_reg_offset;
+ }
+ 
+ void *NativeRegisterContextLinux_arm64::GetSVEBuffer() {
+   if (m_sve_state == SVEState::FPSIMD)
+-    return m_sve_ptrace_payload.data() + SVE_PT_FPSIMD_OFFSET;
++    return m_sve_ptrace_payload.data() + sve::ptrace_fpsimd_offset;
+ 
+   return m_sve_ptrace_payload.data();
+ }
diff --git a/dev-util/lldb-server/files/lldb-tablegen.patch b/dev-util/lldb-server/files/lldb-tablegen.patch
new file mode 100644
index 0000000..05c6be0
--- /dev/null
+++ b/dev-util/lldb-server/files/lldb-tablegen.patch
@@ -0,0 +1,21 @@
+Building lldb-server for Chrome OS requires several pieces of clang &
+llvm to be cross-compiled.  This is expensive and time-consuming, and
+does not need to be done repeatedly.  This patch updates the
+lldb-server cmakefiles to check to see if the required pieces have
+already been built and to not create a native build when
+LLDB_TABLEGEN_EXE is already provided.
+
+Author: manojgupta@google.com
+diff --git a/lldb/CMakeLists.txt b/lldb/CMakeLists.txt
+index 11329052d0b8..3457b7680d19 100644
+--- a/lldb/CMakeLists.txt
++++ b/lldb/CMakeLists.txt
+@@ -63,7 +63,7 @@ if(LLVM_ENABLE_MODULES)
+   list(APPEND LLVM_COMMON_DEPENDS intrinsics_gen)
+ endif()
+ 
+-if(CMAKE_CROSSCOMPILING AND LLDB_BUILT_STANDALONE)
++if(CMAKE_CROSSCOMPILING AND LLDB_BUILT_STANDALONE AND NOT LLDB_TABLEGEN_EXE)
+   set(LLVM_USE_HOST_TOOLS ON)
+   include(CrossCompile)
+   if (NOT NATIVE_LLVM_DIR OR NOT NATIVE_Clang_DIR)
diff --git a/dev-util/lldb-server/files/patch_manager b/dev-util/lldb-server/files/patch_manager
new file mode 120000
index 0000000..6e6503a
--- /dev/null
+++ b/dev-util/lldb-server/files/patch_manager
@@ -0,0 +1 @@
+../../../sys-devel/llvm/files/patch_manager
\ No newline at end of file
diff --git a/dev-util/lldb-server/lldb-server-12.0_pre416183-r3.ebuild b/dev-util/lldb-server/lldb-server-12.0_pre416183-r3.ebuild
new file mode 120000
index 0000000..1a64d2a6
--- /dev/null
+++ b/dev-util/lldb-server/lldb-server-12.0_pre416183-r3.ebuild
@@ -0,0 +1 @@
+lldb-server-12.0_pre416183.ebuild
\ No newline at end of file
diff --git a/dev-util/lldb-server/lldb-server-12.0_pre416183.ebuild b/dev-util/lldb-server/lldb-server-12.0_pre416183.ebuild
new file mode 100644
index 0000000..c04b2fd
--- /dev/null
+++ b/dev-util/lldb-server/lldb-server-12.0_pre416183.ebuild
@@ -0,0 +1,229 @@
+# Copyright 2021 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cros-constants cmake-multilib git-2 cros-llvm toolchain-funcs
+
+DESCRIPTION="lldb-server, for the LLDB debugger"
+HOMEPAGE="https://github.com/llvm/llvm-project"
+SRC_URI=""
+EGIT_REPO_URI="${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project
+	${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project"
+EGIT_BRANCH=main
+
+LLVM_HASH="cd442157cff4aad209ae532cbf031abbe10bc1df" # r422132
+LLVM_NEXT_HASH="0fe7531b75e54909a7cb7f7080634ab2053964ad" # r433403
+
+LICENSE="|| ( UoI-NCSA MIT )"
+SLOT="0"
+KEYWORDS="*"
+IUSE="cros_host llvm-next llvm-tot"
+RDEPEND=""
+
+DEPEND="${RDEPEND}
+	sys-libs/ncurses"
+
+# CMAKE_BUILD_TYPE and CMAKE_MAKEFILE_GENERATOR are called by
+# cmake-utils_src_configure and cmake-utils_src_make (which is called
+# from cmake-utils_src_compile), respectively (see
+# third_party/portage-stable/eclass/cmake-utils.eclass.
+# shellcheck disable=SC2034
+CMAKE_BUILD_TYPE=Release
+# shellcheck disable=SC2034
+CMAKE_MAKEFILE_GENERATOR=ninja
+
+pkg_setup() {
+	use cros_host && die "lldb is not supported for building on non-device builds"
+
+	# Setup llvm toolchain for cross-compilation
+	setup_cross_toolchain
+	export CMAKE_USE_DIR="${S}/lldb"
+}
+
+src_unpack() {
+	if use llvm-next || use llvm-tot; then
+		export EGIT_COMMIT="${LLVM_NEXT_HASH}"
+	else
+		export EGIT_COMMIT="${LLVM_HASH}"
+	fi
+	git-2_src_unpack
+}
+
+src_prepare() {
+	cmake-utils_src_prepare
+	"${FILESDIR}"/patch_manager/patch_manager.py \
+		--svn_version "$(get_most_recent_revision)" \
+		--patch_metadata_file "${FILESDIR}"/PATCHES.json \
+		--filesdir_path "${FILESDIR}" \
+		--src_path "${S}" || die
+
+	eapply_user
+}
+
+build_llvm_host() {
+	echo "Building host llvm tools"
+	mkdir llvm_build_host
+	pushd llvm_build_host || die
+	local libdir=$(get_libdir)
+	local mycmakeargs=(
+		"${mycmakeargs[@]}"
+		"-DLLVM_ENABLE_PROJECTS=llvm;clang;lldb"
+		"-DLLVM_LIBDIR_SUFFIX=${libdir#lib}"
+		"-DCMAKE_INSTALL_PREFIX=${PREFIX}"
+		"-DLLVM_TARGETS_TO_BUILD=X86"
+		"-DLLVM_BUILD_TOOLS=OFF"
+		"-DLLVM_BUILD_TESTS=OFF"
+		"-DLLVM_INCLUDE_TESTS=OFF"
+		"-DLLVM_INCLUDE_DOCS=OFF"
+		"-DLLVM_INCLUDE_UTILS=OFF"
+		"-DLLVM_BUILD_UTILS=OFF"
+		"-DLLVM_USE_HOST_TOOLS=OFF"
+		"-DLLVM_ENABLE_ZLIB=OFF"
+		"-DLLVM_BUILD_TESTS=OFF"
+		"-DLLVM_INCLUDE_TESTS=OFF"
+		"-DLLVM_INCLUDE_DOCS=OFF"
+		"-DLLVM_INCLUDE_UTILS=OFF"
+		"-DLLVM_BUILD_UTILS=OFF"
+		"-DLLVM_USE_HOST_TOOLS=OFF"
+		"-DLLVM_ENABLE_ZLIB=OFF"
+		"-DCLANG_BUILD_TOOLS=OFF"
+		"-DCLANG_ENABLE_ARCMT=OFF"
+		"-DCLANG_ENABLE_STATIC_ANALYZER=OFF"
+		"-DCLANG_INCLUDE_TESTS=OFF"
+		"-DCLANG_INCLUDE_DOCS=OFF"
+		"-DLLVM_ENABLE_IDE=ON"
+		"-DLLVM_ADD_NATIVE_VISUALIZERS_TO_SOLUTION=OFF"
+		"-DCLANG_LINK_CLANG_DYLIB=OFF"
+		"-DLLVM_BUILD_LLVM_DYLIB=OFF"
+		"-DLLVM_LINK_LLVM_DYLIB=OFF"
+		"-DLLVM_INCLUDE_EXAMPLES=OFF"
+		"-DLLVM_INCLUDE_RUNTIMES=OFF"
+		"-DLLVM_INCLUDE_BENCHMARKS=OFF"
+		"-DLLDB_ENABLE_PYTHON=OFF"
+		"-DLLDB_ENABLE_LIBEDIT=OFF"
+		"-DLLDB_ENABLE_CURSES=OFF"
+	)
+	tc-env_build cmake -GNinja "${mycmakeargs[@]}" "${S}/llvm"
+	ninja llvm-tblgen clang-tblgen lldb-tblgen
+	popd || die
+}
+
+build_llvm() {
+	echo "Cross-compiling llvm and clang libraries"
+	mkdir llvm_build
+	pushd llvm_build || die
+	local libdir=$(get_libdir)
+	local mycmakeargs=(
+		"${mycmakeargs[@]}"
+		"-DLLVM_ENABLE_PROJECTS=llvm;clang"
+		"-DLLVM_LIBDIR_SUFFIX=${libdir#lib}"
+		"-DCMAKE_INSTALL_PREFIX=${PREFIX}"
+		"-DLLVM_BUILD_TOOLS=OFF"
+		"-DLLDB_EXTERNAL_CLANG_RESOURCE_DIR=$(tc-getCC --print-resource-dir)"
+		"-DLLDB_INCLUDE_TESTS=OFF"
+		"-DLLVM_TABLEGEN=../llvm_build_host/bin/llvm-tblgen"
+		"-DCLANG_TABLEGEN=../llvm_build_host/bin/clang-tblgen"
+		"-DLLVM_BUILD_TESTS=OFF"
+		"-DLLVM_INCLUDE_TESTS=OFF"
+		"-DLLVM_INCLUDE_DOCS=OFF"
+		"-DLLVM_INCLUDE_UTILS=OFF"
+		"-DLLVM_BUILD_UTILS=OFF"
+		"-DLLVM_USE_HOST_TOOLS=OFF"
+		"-DLLVM_ENABLE_ZLIB=OFF"
+		"-DCLANG_BUILD_TOOLS=OFF"
+		"-DCLANG_ENABLE_ARCMT=OFF"
+		"-DCLANG_ENABLE_STATIC_ANALYZER=OFF"
+		"-DCLANG_INCLUDE_TESTS=OFF"
+		"-DCLANG_INCLUDE_DOCS=OFF"
+		"-DLLVM_ENABLE_IDE=ON"
+		"-DLLVM_ADD_NATIVE_VISUALIZERS_TO_SOLUTION=OFF"
+		"-DCLANG_LINK_CLANG_DYLIB=OFF"
+		"-DLLVM_BUILD_LLVM_DYLIB=OFF"
+		"-DLLVM_LINK_LLVM_DYLIB=OFF"
+		"-DLLVM_INCLUDE_EXAMPLES=OFF"
+		"-DLLVM_INCLUDE_RUNTIMES=OFF"
+		"-DLLVM_INCLUDE_BENCHMARKS=OFF"
+		"-DLLDB_ENABLE_PYTHON=OFF"
+		"-DLLDB_ENABLE_LIBEDIT=OFF"
+		"-DLLDB_ENABLE_CURSES=OFF"
+	)
+	cmake -GNinja "${mycmakeargs[@]}" "${S}/llvm"
+	# shellcheck disable=SC2034
+	local clangLibs=(
+		libclangAST.a
+		libclangCodeGen.a
+		libclangDriver.a
+		libclangEdit.a
+		libclangFrontend.a
+		libclangLex.a
+		libclangParse.a
+		libclangRewrite.a
+		libclangRewriteFrontend.a
+		libclangSema.a
+		libclangSerialization.a
+	)
+	# shellcheck disable=SC2034
+	local llvmLibs=(
+		libLLVMCore.a
+		libLLVMExecutionEngine.a
+		libLLVMipo.a
+		libLLVMMCJIT.a
+		libLLVMDebugInfoDWARF.a
+		libLLVMDemangle.a
+		libLLVMBinaryFormat.a
+		libLLVMDebugInfoPDB.a
+	)
+	# reduced list of targets but fragile.
+	ninja llvm-config clang-headers llvm-headers llvm-libraries clang-libraries
+	popd || die
+}
+
+src_configure() {
+	build_llvm_host
+	build_llvm
+	local libdir=$(get_libdir)
+	local mycmakeargs=(
+		"${mycmakeargs[@]}"
+		"-DLLVM_LIBDIR_SUFFIX=${libdir#lib}"
+		"-DCMAKE_INSTALL_PREFIX=${PREFIX}"
+		"-DLLDB_EXTERNAL_CLANG_RESOURCE_DIR=$(tc-getCC --print-resource-dir)"
+		"-DLLDB_INCLUDE_TESTS=OFF"
+		"-DCMAKE_CROSSCOMPILING=ON"
+		"-DLLVM_BUILD_TESTS=OFF"
+		"-DLLVM_INCLUDE_TESTS=OFF"
+		"-DLLVM_INCLUDE_DOCS=OFF"
+		"-DLLVM_INCLUDE_UTILS=OFF"
+		"-DLLVM_BUILD_UTILS=OFF"
+		"-DLLVM_USE_HOST_TOOLS=OFF"
+		"-DLLDB_ENABLE_LUA=OFF"
+		"-DLLVM_ENABLE_IDE=ON"
+		"-DLLDB_ENABLE_PYTHON=OFF"
+		"-DLLDB_ENABLE_LIBEDIT=OFF"
+		"-DLLDB_ENABLE_CURSES=OFF"
+		"-DLLDB_TABLEGEN_EXE=${PWD}/llvm_build_host/bin/lldb-tblgen"
+		"-DLLVM_TABLEGEN=${PWD}/llvm_build_host/bin/llvm-tblgen"
+		"-DLLVM_DIR=${PWD}/llvm_build/lib/cmake/llvm"
+		"-DLLVM_BINARY_DIR=${PWD}/llvm_build"
+		"-DLLVM_HOST_TRIPLE=${CHOST}"
+	)
+
+	append-cppflags "-I${S}/llvm/include"
+	append-cppflags "-I${S}/clang/include"
+	append-cppflags "-I${PWD}/llvm_build/include"
+	append-cppflags "-I${PWD}/llvm_build/tools/clang/include"
+	append-ldflags "-L${PWD}/llvm_build/lib"
+	append-ldflags "-L${PWD}/llvm_build/tools/clang/lib"
+
+	echo "configuring lldb"
+	cmake-utils_src_configure
+}
+
+src_compile() {
+	cmake-utils_src_compile lldb-server
+}
+
+src_install() {
+	# shellcheck disable=SC2154
+	dobin "${BUILD_DIR}"/bin/lldb-server
+}
diff --git a/dev-util/lro-server/lro-server-0.0.1-r2.ebuild b/dev-util/lro-server/lro-server-0.0.1-r2.ebuild
deleted file mode 100644
index a3ebd05..0000000
--- a/dev-util/lro-server/lro-server-0.0.1-r2.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="9b1c421f3ddff94b937f745f5e7deabd5fbb2f02"
-CROS_WORKON_TREE="0a82488b21ac7734f64c67f4addb83f5f0eceb3f"
-CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
-CROS_WORKON_LOCALNAME=("../platform/dev")
-CROS_WORKON_SUBTREE="src/chromiumos/lro"
-
-inherit cros-go cros-workon
-
-DESCRIPTION="Common golang library to support google.longrunning.operations server impls"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/lro"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-CROS_GO_WORKSPACE=(
-	"${S}"
-)
-
-CROS_GO_PACKAGES=(
-	"chromiumos/lro/..."
-)
-
-CROS_GO_TEST=(
-	"${CROS_GO_PACKAGES[@]}"
-)
-
-CROS_GO_VET=(
-	"${CROS_GO_TEST[@]}"
-)
-
-DEPEND="chromeos-base/cros-config-api"
-
-RDEPEND="!<chromeos-base/test-server-0.0.1-r10"
diff --git a/dev-util/lro-server/lro-server-0.0.1-r5.ebuild b/dev-util/lro-server/lro-server-0.0.1-r5.ebuild
new file mode 100644
index 0000000..7215f7e
--- /dev/null
+++ b/dev-util/lro-server/lro-server-0.0.1-r5.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="ccb843e0d1c38500f5890dd7aa71bd34fd232dbf"
+CROS_WORKON_TREE="0a82488b21ac7734f64c67f4addb83f5f0eceb3f"
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME=("../platform/dev")
+CROS_WORKON_SUBTREE="src/chromiumos/lro"
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Common golang library to support google.longrunning.operations server impls"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/lro"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+CROS_GO_WORKSPACE=(
+	"${S}"
+)
+
+CROS_GO_PACKAGES=(
+	"chromiumos/lro/..."
+)
+
+CROS_GO_TEST=(
+	"${CROS_GO_PACKAGES[@]}"
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+DEPEND="
+	dev-go/go-tools
+	dev-go/grpc
+	dev-go/mock
+	dev-go/protobuf
+	dev-go/uuid
+	chromeos-base/cros-config-api
+"
+
+RDEPEND="!<chromeos-base/test-server-0.0.1-r49"
diff --git a/dev-util/lro-server/lro-server-9999.ebuild b/dev-util/lro-server/lro-server-9999.ebuild
index 9ba6c4f..948df60 100644
--- a/dev-util/lro-server/lro-server-9999.ebuild
+++ b/dev-util/lro-server/lro-server-9999.ebuild
@@ -31,6 +31,13 @@
 	"${CROS_GO_TEST[@]}"
 )
 
-DEPEND="chromeos-base/cros-config-api"
+DEPEND="
+	dev-go/go-tools
+	dev-go/grpc
+	dev-go/mock
+	dev-go/protobuf
+	dev-go/uuid
+	chromeos-base/cros-config-api
+"
 
-RDEPEND="!<chromeos-base/test-server-0.0.1-r10"
+RDEPEND="!<chromeos-base/test-server-0.0.1-r49"
diff --git a/dev-util/lroold-server/lroold-server-0.0.1-r1.ebuild b/dev-util/lroold-server/lroold-server-0.0.1-r1.ebuild
new file mode 100644
index 0000000..151288f
--- /dev/null
+++ b/dev-util/lroold-server/lroold-server-0.0.1-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="1294ad0d9a27a3c113c6d13bf0c9034ce9319187"
+CROS_WORKON_TREE="6fd739434fd74ac7d4f838c8817c842b3df37cc3"
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME=("../platform/dev")
+CROS_WORKON_SUBTREE="src/chromiumos/lroold"
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Common golang library to support google.longrunning.operations server impls"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/lroold"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+CROS_GO_WORKSPACE=(
+	"${S}"
+)
+
+CROS_GO_PACKAGES=(
+	"chromiumos/lroold/..."
+)
+
+CROS_GO_TEST=(
+	"${CROS_GO_PACKAGES[@]}"
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+DEPEND="
+	dev-go/go-tools
+	dev-go/grpc
+	dev-go/mock
+	dev-go/protobuf
+	chromeos-base/cros-config-api
+"
+
+RDEPEND="!<chromeos-base/test-server-0.0.1-r49"
diff --git a/dev-util/lroold-server/lroold-server-9999.ebuild b/dev-util/lroold-server/lroold-server-9999.ebuild
new file mode 100644
index 0000000..54325ac
--- /dev/null
+++ b/dev-util/lroold-server/lroold-server-9999.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME=("../platform/dev")
+CROS_WORKON_SUBTREE="src/chromiumos/lroold"
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Common golang library to support google.longrunning.operations server impls"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/lroold"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+IUSE=""
+
+CROS_GO_WORKSPACE=(
+	"${S}"
+)
+
+CROS_GO_PACKAGES=(
+	"chromiumos/lroold/..."
+)
+
+CROS_GO_TEST=(
+	"${CROS_GO_PACKAGES[@]}"
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+DEPEND="
+	dev-go/go-tools
+	dev-go/grpc
+	dev-go/mock
+	dev-go/protobuf
+	chromeos-base/cros-config-api
+"
+
+RDEPEND="!<chromeos-base/test-server-0.0.1-r49"
diff --git a/dev-util/perf/files/5.3.7-auxtrace-Add-Z-itrace-option-for-timeless-decod.patch b/dev-util/perf/files/5.3.7-auxtrace-Add-Z-itrace-option-for-timeless-decod.patch
new file mode 100644
index 0000000..23e4852
--- /dev/null
+++ b/dev-util/perf/files/5.3.7-auxtrace-Add-Z-itrace-option-for-timeless-decod.patch
@@ -0,0 +1,69 @@
+From be80ff79760eeee079aa9dc8a2eb9ce00de45dda Mon Sep 17 00:00:00 2001
+From: Adrian Hunter <adrian.hunter@intel.com>
+Date: Fri, 30 Apr 2021 10:02:58 +0300
+Subject: [PATCH] perf auxtrace: Add Z itrace option for timeless decoding
+
+Issues correlating timestamps can be avoided with timeless decoding. Add
+an option for that, so that timeless decoding can be used even when
+timestamps are present.
+
+Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
+Reviewed-by: Andi Kleen <ak@linux.intel.com>
+Cc: Jiri Olsa <jolsa@redhat.com>
+Link: https://lore.kernel.org/r/20210430070309.17624-2-adrian.hunter@intel.com
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+---
+ tools/perf/Documentation/itrace.txt | 1 +
+ tools/perf/util/auxtrace.c          | 3 +++
+ tools/perf/util/auxtrace.h          | 2 ++
+ 3 files changed, 6 insertions(+)
+
+diff --git a/tools/perf/Documentation/itrace.txt b/tools/perf/Documentation/itrace.txt
+index c2182cbabde3..24a345a77c32 100644
+--- a/tools/perf/Documentation/itrace.txt
++++ b/tools/perf/Documentation/itrace.txt
+@@ -10,6 +10,7 @@
+ 		g	synthesize a call chain (use with i or x)
+ 		l	synthesize last branch entries (use with i or x)
+ 		s       skip initial number of events
++		Z	prefer to ignore timestamps (so-called "timeless" decoding)
+ 
+ 	The default is all events i.e. the same as --itrace=ibxwpe,
+ 	except for perf script where it is --itrace=ce
+diff --git a/tools/perf/util/auxtrace.c b/tools/perf/util/auxtrace.c
+index ec0af36697c4..9fb238706809 100644
+--- a/tools/perf/util/auxtrace.c
++++ b/tools/perf/util/auxtrace.c
+@@ -1114,6 +1114,9 @@ int itrace_parse_synth_opts(const struct option *opt, const char *str,
+ 				goto out_err;
+ 			p = endptr;
+ 			break;
++		case 'Z':
++			synth_opts->timeless_decoding = true;
++			break;
+ 		case ' ':
+ 		case ',':
+ 			break;
+diff --git a/tools/perf/util/auxtrace.h b/tools/perf/util/auxtrace.h
+index e9b4c5edf78b..a612ba746318 100644
+--- a/tools/perf/util/auxtrace.h
++++ b/tools/perf/util/auxtrace.h
+@@ -68,6 +68,7 @@ enum itrace_period_type {
+  * @callchain: add callchain to 'instructions' events
+  * @thread_stack: feed branches to the thread_stack
+  * @last_branch: add branch context to 'instruction' events
++ * @timeless_decoding: prefer "timeless" decoding i.e. ignore timestamps
+  * @callchain_sz: maximum callchain size
+  * @last_branch_sz: branch context size
+  * @period: 'instructions' events period
+@@ -94,6 +95,7 @@ struct itrace_synth_opts {
+ 	bool			callchain;
+ 	bool			thread_stack;
+ 	bool			last_branch;
++	bool			timeless_decoding;
+ 	unsigned int		callchain_sz;
+ 	unsigned int		last_branch_sz;
+ 	unsigned long long	period;
+-- 
+2.32.0.605.g8dce9f2422-goog
+
diff --git a/dev-util/perf/files/5.3.7-cs-etm-Delay-decode-of-non-timeless-data-until-cs_etm__flush_events.patch b/dev-util/perf/files/5.3.7-cs-etm-Delay-decode-of-non-timeless-data-until-cs_etm__flush_events.patch
new file mode 100644
index 0000000..772aed6
--- /dev/null
+++ b/dev-util/perf/files/5.3.7-cs-etm-Delay-decode-of-non-timeless-data-until-cs_etm__flush_events.patch
@@ -0,0 +1,139 @@
+From a5199db639b3cce18689b98301d7ae97a2d84b2a Mon Sep 17 00:00:00 2001
+From: James Clark <james.clark@arm.com>
+Date: Wed, 9 Jun 2021 16:04:20 +0300
+Subject: [PATCH 2/2] perf cs-etm: Delay decode of non-timeless data until
+ cs_etm__flush_events()
+
+Currently, timeless mode starts the decode on PERF_RECORD_EXIT, and
+non-timeless mode starts decoding on the fist PERF_RECORD_AUX record.
+
+This can cause the "data has no samples!" error if the first
+PERF_RECORD_AUX record comes before the first (or any relevant)
+PERF_RECORD_MMAP2 record because the mmaps are required by the decoder
+to access the binary data.
+
+This change pushes the start of non-timeless decoding to the very end of
+parsing the file. The PERF_RECORD_EXIT event can't be used because it
+might not exist in system-wide or snapshot modes.
+
+I have not been able to find the exact cause for the events to be
+intermittently in the wrong order in the basic scenario:
+
+	perf record -e cs_etm/@tmc_etr0/u top
+
+But it can be made to happen every time with the --delay option. This is
+because "enable_on_exec" is disabled, which causes tracing to start
+before the process to be launched is exec'd. For example:
+
+	perf record -e cs_etm/@tmc_etr0/u --delay=1 top
+	perf report -D | grep 'AUX\|MAP'
+
+	0 16714475632740 0x520 [0x40]: PERF_RECORD_AUX offset: 0 size: 0x30 flags: 0 []
+	0 16714476494960 0x5d0 [0x40]: PERF_RECORD_AUX offset: 0x30 size: 0x30 flags: 0 []
+	0 16714478208900 0x660 [0x40]: PERF_RECORD_AUX offset: 0x60 size: 0x30 flags: 0 []
+	4294967295 16714478293340 0x700 [0x70]: PERF_RECORD_MMAP2 8712/8712: [0x557a460000(0x54000) @ 0 00:17 5329258 0]: r-xp /usr/bin/top
+	4294967295 16714478353020 0x770 [0x88]: PERF_RECORD_MMAP2 8712/8712: [0x7f86f72000(0x34000) @ 0 00:17 5214354 0]: r-xp /usr/lib/aarch64-linux-gnu/ld-2.31.so
+
+Another scenario in which decoding from the first aux record fails is a
+workload that forks. Although the aux record comes after 'bash', it
+comes before 'top', which is what we are interested in. For example:
+
+	perf record -e cs_etm/@tmc_etr0/u -- bash -c top
+	perf report -D | grep 'AUX\|MAP'
+
+	4294967295 16853946421300 0x510 [0x70]: PERF_RECORD_MMAP2 8723/8723: [0x558f280000(0x142000) @ 0 00:17 5213953 0]: r-xp /usr/bin/bash
+	4294967295 16853946543560 0x580 [0x88]: PERF_RECORD_MMAP2 8723/8723: [0x7fbba6e000(0x34000) @ 0 00:17 5214354 0]: r-xp /usr/lib/aarch64-linux-gnu/ld-2.31.so
+	4294967295 16853946628420 0x608 [0x68]: PERF_RECORD_MMAP2 8723/8723: [0x7fbba9e000(0x1000) @ 0 00:00 0 0]: r-xp [vdso]
+	0 16853947067300 0x690 [0x40]: PERF_RECORD_AUX offset: 0 size: 0x3a60 flags: 0 []
+	...
+	0 16853966602580 0x1758 [0x40]: PERF_RECORD_AUX offset: 0xc2470 size: 0x30 flags: 0 []
+	4294967295 16853967119860 0x1818 [0x70]: PERF_RECORD_MMAP2 8723/8723: [0x5559e70000(0x54000) @ 0 00:17 5329258 0]: r-xp /usr/bin/top
+	4294967295 16853967181620 0x1888 [0x88]: PERF_RECORD_MMAP2 8723/8723: [0x7f9ed06000(0x34000) @ 0 00:17 5214354 0]: r-xp /usr/lib/aarch64-linux-gnu/ld-2.31.so
+	4294967295 16853967237180 0x1910 [0x68]: PERF_RECORD_MMAP2 8723/8723: [0x7f9ed36000(0x1000) @ 0 00:00 0 0]: r-xp [vdso]
+
+A third scenario is when the majority of time is spent in a shared
+library that is not loaded at startup. For example a dynamically loaded
+plugin.
+
+Testing
+=======
+
+Testing was done by checking if any samples that are present in the
+old output are missing from the new output. Timestamps must be
+stripped out with awk because now they are set to the last AUX sample,
+rather than the first:
+
+	./perf script $4 | awk '!($4="")' > new.script
+	./perf-default script $4 | awk '!($4="")' > default.script
+	comm -13 <(sort -u new.script) <(sort -u default.script)
+
+Testing showed that the new output is a superset of the old. When lines
+appear in the comm output, it is not because they are missing but
+because [unknown] is now resolved to sensible locations. For example
+last putp branch here now resolves to libtinfo, so it's not missing
+from the output, but is actually improved:
+
+Old:
+	top 305 [001]  1 branches:uH: 402830 _init+0x30 (/usr/bin/top.procps) => 404a1c [unknown] (/usr/bin/top.procps)
+	top 305 [001]  1 branches:uH: 404a20 [unknown] (/usr/bin/top.procps) => 402970 putp@plt+0x0 (/usr/bin/top.procps)
+	top 305 [001]  1 branches:uH: 40297c putp@plt+0xc (/usr/bin/top.procps) => 0 [unknown] ([unknown])
+New:
+	top 305 [001]  1 branches:uH: 402830 _init+0x30 (/usr/bin/top.procps) => 404a1c [unknown] (/usr/bin/top.procps)
+	top 305 [001]  1 branches:uH: 404a20 [unknown] (/usr/bin/top.procps) => 402970 putp@plt+0x0 (/usr/bin/top.procps)
+	top 305 [001]  1 branches:uH: 40297c putp@plt+0xc (/usr/bin/top.procps) => 7f8ab39208 putp+0x0 (/lib/libtinfo.so.5.9)
+
+In the following two modes, decoding now works and the "data has no
+samples!" error is not displayed any more:
+
+	perf record -e cs_etm/@tmc_etr0/u -- bash -c top
+	perf record -e cs_etm/@tmc_etr0/u --delay=1 top
+
+In snapshot mode, there is also an improvement to decoding. Previously
+samples for the 'kill' process that was used to send SIGUSR2 were
+completely missing, because the process hadn't started yet. But now
+there are additional samples present:
+
+	perf record -e cs_etm/@tmc_etr0/u --snapshot -a
+	perf script
+
+		stress 19380 [003] 161627.938153:    1000000    instructions:uH:      aaaabb612fb4 [unknown] (/usr/bin/stress)
+		  kill 19644 [000] 161627.938153:    1000000    instructions:uH:      ffffae0ef210 [unknown] (/lib/aarch64-linux-gnu/ld-2.27.so)
+		stress 19380 [003] 161627.938153:    1000000    instructions:uH:      ffff9e754d40 random_r+0x20 (/lib/aarch64-linux-gnu/libc-2.27.so)
+
+Also tested was the round trip of 'perf inject' followed by 'perf
+report' which has the same differences and improvements.
+
+Signed-off-by: James Clark <james.clark@arm.com>
+Reviewed-by: Leo Yan <leo.yan@linaro.org>
+Tested-by: Leo Yan <leo.yan@linaro.org>
+---
+ tools/perf/util/cs-etm.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
+index a557f83..c998b12 100644
+--- a/tools/perf/util/cs-etm.c
++++ b/tools/perf/util/cs-etm.c
+@@ -2350,6 +2350,11 @@ static int cs_etm__process_event(struct perf_session *session,
+ 			return err;
+ 	}
+ 
++	/*
++	 * Don't wait for cs_etm__flush_events() in per-thread/timeless mode to start the decode. We
++	 * need the tid of the PERF_RECORD_EXIT event to assign to the synthesised samples because
++	 * ETM_OPT_CTXTID is not enabled.
++	 */
+ 	if (etm->timeless_decoding &&
+ 	    event->header.type == PERF_RECORD_EXIT)
+ 		return cs_etm__process_timeless_queues(etm,
+@@ -2367,7 +2372,6 @@ static int cs_etm__process_event(struct perf_session *session,
+ 		 * onwards.
+ 		 */
+ 		etm->latest_kernel_timestamp = sample_kernel_timestamp;
+-		return cs_etm__process_queues(etm);
+ 	}
+ 
+ 	return 0;
+-- 
+2.31.0
+
diff --git a/dev-util/perf/files/5.3.7-cs-etm-Fix-definition-of-macro-TO_CS_QUEUE_NR.patch b/dev-util/perf/files/5.3.7-cs-etm-Fix-definition-of-macro-TO_CS_QUEUE_NR.patch
new file mode 100644
index 0000000..3d71d4b
--- /dev/null
+++ b/dev-util/perf/files/5.3.7-cs-etm-Fix-definition-of-macro-TO_CS_QUEUE_NR.patch
@@ -0,0 +1,61 @@
+From 4cbc94e292e95e8598bee50d6c69e7b8e8686bb8 Mon Sep 17 00:00:00 2001
+From: Leo Yan <leo.yan@linaro.org>
+Date: Mon, 21 Oct 2019 15:48:08 +0800
+Subject: [PATCH] perf cs-etm: Fix definition of macro TO_CS_QUEUE_NR
+
+Macro TO_CS_QUEUE_NR definition has a typo, which uses 'trace_id_chan'
+as its parameter, this doesn't match with its definition body which uses
+'trace_chan_id'.  So renames the parameter to 'trace_chan_id'.
+
+It's luck to have a local variable 'trace_chan_id' in the function
+cs_etm__setup_queue(), even we wrongly define the macro TO_CS_QUEUE_NR,
+the local variable 'trace_chan_id' is used rather than the macro's
+parameter 'trace_id_chan'; so the compiler doesn't complain for this
+before.
+
+After renaming the parameter, it leads to a compiling error due
+cs_etm__setup_queue() has no variable 'trace_id_chan'.  This patch uses
+the variable 'trace_chan_id' for the macro so that fixes the compiling
+error.
+
+Signed-off-by: Leo Yan <leo.yan@linaro.org>
+Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>
+Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
+Cc: Jiri Olsa <jolsa@redhat.com>
+Cc: Mark Rutland <mark.rutland@arm.com>
+Cc: Namhyung Kim <namhyung@kernel.org>
+Cc: Peter Zijlstra <peterz@infradead.org>
+Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
+Cc: coresight ml <coresight@lists.linaro.org>
+Cc: linux-arm-kernel@lists.infradead.org
+Link: http://lore.kernel.org/lkml/20191021074808.25795-1-leo.yan@linaro.org
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+---
+ tools/perf/util/cs-etm.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
+index ad83a97db6fc..592f30ebede0 100644
+--- a/tools/perf/util/cs-etm.c
++++ b/tools/perf/util/cs-etm.c
+@@ -107,7 +107,7 @@ static int cs_etm__decode_data_block(struct cs_etm_queue *etmq);
+  * encode the etm queue number as the upper 16 bit and the channel as
+  * the lower 16 bit.
+  */
+-#define TO_CS_QUEUE_NR(queue_nr, trace_id_chan)	\
++#define TO_CS_QUEUE_NR(queue_nr, trace_chan_id)	\
+ 		      (queue_nr << 16 | trace_chan_id)
+ #define TO_QUEUE_NR(cs_queue_nr) (cs_queue_nr >> 16)
+ #define TO_TRACE_CHAN_ID(cs_queue_nr) (cs_queue_nr & 0x0000ffff)
+@@ -874,7 +874,7 @@ static int cs_etm__setup_queue(struct cs_etm_auxtrace *etm,
+ 	 * Note that packets decoded above are still in the traceID's packet
+ 	 * queue and will be processed in cs_etm__process_queues().
+ 	 */
+-	cs_queue_nr = TO_CS_QUEUE_NR(queue_nr, trace_id_chan);
++	cs_queue_nr = TO_CS_QUEUE_NR(queue_nr, trace_chan_id);
+ 	ret = auxtrace_heap__add(&etm->heap, cs_queue_nr, timestamp);
+ out:
+ 	return ret;
+-- 
+2.31.0
+
diff --git a/dev-util/perf/files/5.3.7-cs-etm-Move-synth_opts-initialisation.patch b/dev-util/perf/files/5.3.7-cs-etm-Move-synth_opts-initialisation.patch
new file mode 100644
index 0000000..0b8145c
--- /dev/null
+++ b/dev-util/perf/files/5.3.7-cs-etm-Move-synth_opts-initialisation.patch
@@ -0,0 +1,69 @@
+From 2ad7cd8c9d2dec06de2c5f788129d51421d6948a Mon Sep 17 00:00:00 2001
+From: James Clark <james.clark@arm.com>
+Date: Mon, 17 May 2021 16:17:39 +0300
+Subject: [PATCH 1/3] perf cs-etm: Move synth_opts initialisation
+
+Move initialisation of synth_opts earlier in the function
+so that synth_opts can be used at an earlier stage in a
+later commit.
+
+Signed-off-by: James Clark <james.clark@arm.com>
+Reviewed-by: Leo Yan <leo.yan@linaro.org>
+Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
+Cc: Al Grant <al.grant@arm.com>
+Cc: Anshuman Khandual <anshuman.khandual@arm.com>
+Cc: Branislav Rankov <branislav.rankov@arm.com>
+Cc: Denis Nikitin <denik@chromium.org>
+Cc: Jiri Olsa <jolsa@redhat.com>
+Cc: John Garry <john.garry@huawei.com>
+Cc: Mark Rutland <mark.rutland@arm.com>
+Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
+Cc: Mike Leach <mike.leach@linaro.org>
+Cc: Namhyung Kim <namhyung@kernel.org>
+Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
+Cc: Will Deacon <will@kernel.org>
+Cc: coresight@lists.linaro.org
+Cc: linux-arm-kernel@lists.infradead.org
+Link: http://lore.kernel.org/lkml/20210517131741.3027-2-james.clark@arm.com
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+---
+ tools/perf/util/cs-etm.c | 16 ++++++++--------
+ 1 file changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
+index 5095c1c4c6df..2af9ab5ca3fd 100644
+--- a/tools/perf/util/cs-etm.c
++++ b/tools/perf/util/cs-etm.c
+@@ -2764,6 +2764,14 @@ int cs_etm__process_auxtrace_info(union perf_event *event,
+ 	if (err)
+ 		goto err_free_etm;
+ 
++	if (session->itrace_synth_opts->set) {
++		etm->synth_opts = *session->itrace_synth_opts;
++	} else {
++		itrace_synth_opts__set_default(&etm->synth_opts,
++				session->itrace_synth_opts->default_no_sample);
++		etm->synth_opts.callchain = false;
++	}
++
+ 	etm->session = session;
+ 	etm->machine = &session->machines.host;
+ 
+@@ -2807,14 +2815,6 @@ int cs_etm__process_auxtrace_info(union perf_event *event,
+ 		return 0;
+ 	}
+ 
+-	if (session->itrace_synth_opts->set) {
+-		etm->synth_opts = *session->itrace_synth_opts;
+-	} else {
+-		itrace_synth_opts__set_default(&etm->synth_opts,
+-				session->itrace_synth_opts->default_no_sample);
+-		etm->synth_opts.callchain = false;
+-	}
+-
+ 	err = cs_etm__synth_events(etm, session);
+ 	if (err)
+ 		goto err_delete_thread;
+-- 
+2.32.0.605.g8dce9f2422-goog
+
diff --git a/dev-util/perf/files/5.3.7-cs-etm-Prevent-and-warn-on-underflows-during-ti.patch b/dev-util/perf/files/5.3.7-cs-etm-Prevent-and-warn-on-underflows-during-ti.patch
new file mode 100644
index 0000000..c1e274c
--- /dev/null
+++ b/dev-util/perf/files/5.3.7-cs-etm-Prevent-and-warn-on-underflows-during-ti.patch
@@ -0,0 +1,139 @@
+From f52b0b2892b794820c00225909b9dff477de1ad9 Mon Sep 17 00:00:00 2001
+From: James Clark <james.clark@arm.com>
+Date: Mon, 17 May 2021 16:17:41 +0300
+Subject: [PATCH 3/3] perf cs-etm: Prevent and warn on underflows during
+ timestamp calculation.
+
+When a zero timestamp is encountered, warn once. This is to make
+hardware or configuration issues visible. Also suggest that the issue
+can be worked around with the --itrace=Z option.
+
+When an underflow with a non-zero timestamp occurs, warn every time.
+This is an unexpected scenario, and with increasing timestamps, it's
+unlikely that it would occur more than once, therefore it should be
+ok to warn every time.
+
+Only try to calculate the timestamp by subtracting the instruction
+count if neither of the above cases are true. This makes attempting
+to decode files with zero timestamps in non-timeless mode
+more consistent. Currently it can half work if the timestamp wraps
+around and becomes non-zero, although the behavior is undefined and
+unpredictable.
+
+Signed-off-by: James Clark <james.clark@arm.com>
+Reviewed-by: Leo Yan <leo.yan@linaro.org>
+Cc: Al Grant <al.grant@arm.com>
+Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
+Cc: Anshuman Khandual <anshuman.khandual@arm.com>
+Cc: Branislav Rankov <branislav.rankov@arm.com>
+Cc: Denis Nikitin <denik@chromium.org>
+Cc: Jiri Olsa <jolsa@redhat.com>
+Cc: John Garry <john.garry@huawei.com>
+Cc: Mark Rutland <mark.rutland@arm.com>
+Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
+Cc: Mike Leach <mike.leach@linaro.org>
+Cc: Namhyung Kim <namhyung@kernel.org>
+Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
+Cc: Will Deacon <will@kernel.org>
+Cc: coresight@lists.linaro.org
+Cc: linux-arm-kernel@lists.infradead.org
+Link: http://lore.kernel.org/lkml/20210517131741.3027-4-james.clark@arm.com
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+---
+ .../perf/util/cs-etm-decoder/cs-etm-decoder.c | 45 ++++++++++++++-----
+ 1 file changed, 34 insertions(+), 11 deletions(-)
+
+diff --git a/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c b/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c
+index 1237364b742c..7e2c0d549712 100644
+--- a/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c
++++ b/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c
+@@ -6,6 +6,7 @@
+  * Author: Mathieu Poirier <mathieu.poirier@linaro.org>
+  */
+ 
++#include <asm/bug.h>
+ #include <linux/coresight-pmu.h>
+ #include <linux/err.h>
+ #include <linux/list.h>
+@@ -17,6 +18,7 @@
+ 
+ #include "cs-etm.h"
+ #include "cs-etm-decoder.h"
++#include "debug.h"
+ #include "intlist.h"
+ #include "util.h"
+ 
+@@ -295,7 +297,8 @@ cs_etm_decoder__do_soft_timestamp(struct cs_etm_queue *etmq,
+ static ocsd_datapath_resp_t
+ cs_etm_decoder__do_hard_timestamp(struct cs_etm_queue *etmq,
+ 				  const ocsd_generic_trace_elem *elem,
+-				  const uint8_t trace_chan_id)
++				  const uint8_t trace_chan_id,
++				  const ocsd_trc_index_t indx)
+ {
+ 	struct cs_etm_packet_queue *packet_queue;
+ 
+@@ -314,14 +317,33 @@ cs_etm_decoder__do_hard_timestamp(struct cs_etm_queue *etmq,
+ 		return OCSD_RESP_CONT;
+ 	}
+ 
+-	/*
+-	 * This is the first timestamp we've seen since the beginning of traces
+-	 * or a discontinuity.  Since timestamps packets are generated *after*
+-	 * range packets have been generated, we need to estimate the time at
+-	 * which instructions started by substracting the number of instructions
+-	 * executed to the timestamp.
+-	 */
+-	packet_queue->cs_timestamp = elem->timestamp - packet_queue->instr_count;
++
++	if (!elem->timestamp) {
++		/*
++		 * Zero timestamps can be seen due to misconfiguration or hardware bugs.
++		 * Warn once, and don't try to subtract instr_count as it would result in an
++		 * underflow.
++		 */
++		packet_queue->cs_timestamp = 0;
++		WARN_ONCE(true, "Zero Coresight timestamp found at Idx:%" OCSD_TRC_IDX_STR
++				". Decoding may be improved with --itrace=Z...\n", indx);
++	} else if (packet_queue->instr_count > elem->timestamp) {
++		/*
++		 * Sanity check that the elem->timestamp - packet_queue->instr_count would not
++		 * result in an underflow. Warn and clamp at 0 if it would.
++		 */
++		packet_queue->cs_timestamp = 0;
++		pr_err("Timestamp calculation underflow at Idx:%" OCSD_TRC_IDX_STR "\n", indx);
++	} else {
++		/*
++		 * This is the first timestamp we've seen since the beginning of traces
++		 * or a discontinuity.  Since timestamps packets are generated *after*
++		 * range packets have been generated, we need to estimate the time at
++		 * which instructions started by subtracting the number of instructions
++		 * executed to the timestamp.
++		 */
++		packet_queue->cs_timestamp = elem->timestamp - packet_queue->instr_count;
++	}
+ 	packet_queue->next_cs_timestamp = elem->timestamp;
+ 	packet_queue->instr_count = 0;
+ 
+@@ -552,7 +574,7 @@ cs_etm_decoder__set_tid(struct cs_etm_queue *etmq,
+ 
+ static ocsd_datapath_resp_t cs_etm_decoder__gen_trace_elem_printer(
+ 				const void *context,
+-				const ocsd_trc_index_t indx __maybe_unused,
++				const ocsd_trc_index_t indx,
+ 				const u8 trace_chan_id __maybe_unused,
+ 				const ocsd_generic_trace_elem *elem)
+ {
+@@ -589,7 +611,8 @@ static ocsd_datapath_resp_t cs_etm_decoder__gen_trace_elem_printer(
+ 		break;
+ 	case OCSD_GEN_TRC_ELEM_TIMESTAMP:
+ 		resp = cs_etm_decoder__do_hard_timestamp(etmq, elem,
+-							 trace_chan_id);
++							 trace_chan_id,
++							 indx);
+ 		break;
+ 	case OCSD_GEN_TRC_ELEM_PE_CONTEXT:
+ 		resp = cs_etm_decoder__set_tid(etmq, packet_queue,
+-- 
+2.32.0.605.g8dce9f2422-goog
+
diff --git a/dev-util/perf/files/5.3.7-cs-etm-Refactor-timestamp-variable-names.patch b/dev-util/perf/files/5.3.7-cs-etm-Refactor-timestamp-variable-names.patch
new file mode 100644
index 0000000..c714359
--- /dev/null
+++ b/dev-util/perf/files/5.3.7-cs-etm-Refactor-timestamp-variable-names.patch
@@ -0,0 +1,265 @@
+From a182a86b806ea969cd929299e14a93d7c288cf77 Mon Sep 17 00:00:00 2001
+From: James Clark <james.clark@arm.com>
+Date: Mon, 10 May 2021 17:32:47 +0300
+Subject: [PATCH] perf cs-etm: Refactor timestamp variable names
+
+Remove ambiguity in variable names relating to timestamps.
+
+A later commit will save the sample kernel timestamp in one of the etm
+structs, so name all elements appropriately to avoid confusion.
+
+This is also removes some ambiguity arising from the fact that the
+--timestamp argument to perf record refers to sample kernel timestamps,
+and the /timestamp/ event modifier refers to CS timestamps, so the term
+is overloaded.
+
+Signed-off-by: James Clark <james.clark@arm.com>
+Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>
+Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
+Cc: Al Grant <al.grant@arm.com>
+Cc: Anshuman Khandual <anshuman.khandual@arm.com>
+Cc: Branislav Rankov <branislav.rankov@arm.com>
+Cc: Denis Nikitin <denik@chromium.org>
+Cc: Jiri Olsa <jolsa@redhat.com>
+Cc: John Garry <john.garry@huawei.com>
+Cc: Leo Yan <leo.yan@linaro.org>
+Cc: Mark Rutland <mark.rutland@arm.com>
+Cc: Mike Leach <mike.leach@linaro.org>
+Cc: Namhyung Kim <namhyung@kernel.org>
+Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
+Cc: Will Deacon <will@kernel.org>
+Cc: linux-arm-kernel@lists.infradead.org
+Cc: coresight@lists.linaro.org
+Link: https://lore.kernel.org/r/20210510143248.27423-2-james.clark@arm.com
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+---
+ .../perf/util/cs-etm-decoder/cs-etm-decoder.c | 18 ++++----
+ tools/perf/util/cs-etm.c                      | 42 +++++++++----------
+ tools/perf/util/cs-etm.h                      |  4 +-
+ 3 files changed, 31 insertions(+), 33 deletions(-)
+
+diff --git a/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c b/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c
+index be94afff7ce2..1237364b742c 100644
+--- a/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c
++++ b/tools/perf/util/cs-etm-decoder/cs-etm-decoder.c
+@@ -277,13 +277,13 @@ cs_etm_decoder__do_soft_timestamp(struct cs_etm_queue *etmq,
+ 				  const uint8_t trace_chan_id)
+ {
+ 	/* No timestamp packet has been received, nothing to do */
+-	if (!packet_queue->timestamp)
++	if (!packet_queue->cs_timestamp)
+ 		return OCSD_RESP_CONT;
+ 
+-	packet_queue->timestamp = packet_queue->next_timestamp;
++	packet_queue->cs_timestamp = packet_queue->next_cs_timestamp;
+ 
+ 	/* Estimate the timestamp for the next range packet */
+-	packet_queue->next_timestamp += packet_queue->instr_count;
++	packet_queue->next_cs_timestamp += packet_queue->instr_count;
+ 	packet_queue->instr_count = 0;
+ 
+ 	/* Tell the front end which traceid_queue needs attention */
+@@ -309,8 +309,8 @@ cs_etm_decoder__do_hard_timestamp(struct cs_etm_queue *etmq,
+ 	 * Function do_soft_timestamp() will report the value to the front end,
+ 	 * hence asking the decoder to keep decoding rather than stopping.
+ 	 */
+-	if (packet_queue->timestamp) {
+-		packet_queue->next_timestamp = elem->timestamp;
++	if (packet_queue->cs_timestamp) {
++		packet_queue->next_cs_timestamp = elem->timestamp;
+ 		return OCSD_RESP_CONT;
+ 	}
+ 
+@@ -321,8 +321,8 @@ cs_etm_decoder__do_hard_timestamp(struct cs_etm_queue *etmq,
+ 	 * which instructions started by substracting the number of instructions
+ 	 * executed to the timestamp.
+ 	 */
+-	packet_queue->timestamp = elem->timestamp - packet_queue->instr_count;
+-	packet_queue->next_timestamp = elem->timestamp;
++	packet_queue->cs_timestamp = elem->timestamp - packet_queue->instr_count;
++	packet_queue->next_cs_timestamp = elem->timestamp;
+ 	packet_queue->instr_count = 0;
+ 
+ 	/* Tell the front end which traceid_queue needs attention */
+@@ -335,8 +335,8 @@ cs_etm_decoder__do_hard_timestamp(struct cs_etm_queue *etmq,
+ static void
+ cs_etm_decoder__reset_timestamp(struct cs_etm_packet_queue *packet_queue)
+ {
+-	packet_queue->timestamp = 0;
+-	packet_queue->next_timestamp = 0;
++	packet_queue->cs_timestamp = 0;
++	packet_queue->next_cs_timestamp = 0;
+ 	packet_queue->instr_count = 0;
+ }
+ 
+diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
+index 592f30ebede0..c5e6a184d4c7 100644
+--- a/tools/perf/util/cs-etm.c
++++ b/tools/perf/util/cs-etm.c
+@@ -34,8 +34,6 @@
+ #include <tools/libc_compat.h>
+ #include "util.h"
+ 
+-#define MAX_TIMESTAMP (~0ULL)
+-
+ struct cs_etm_auxtrace {
+ 	struct auxtrace auxtrace;
+ 	struct auxtrace_queues queues;
+@@ -82,7 +80,7 @@ struct cs_etm_queue {
+ 	struct cs_etm_decoder *decoder;
+ 	struct auxtrace_buffer *buffer;
+ 	unsigned int queue_nr;
+-	u8 pending_timestamp;
++	u8 pending_timestamp_chan_id;
+ 	u64 offset;
+ 	const unsigned char *buf;
+ 	size_t buf_len, buf_used;
+@@ -201,7 +199,7 @@ void cs_etm__etmq_set_traceid_queue_timestamp(struct cs_etm_queue *etmq,
+ 	 * be more than one channel per cs_etm_queue, we need to specify
+ 	 * what traceID queue needs servicing.
+ 	 */
+-	etmq->pending_timestamp = trace_chan_id;
++	etmq->pending_timestamp_chan_id = trace_chan_id;
+ }
+ 
+ static u64 cs_etm__etmq_get_timestamp(struct cs_etm_queue *etmq,
+@@ -209,22 +207,22 @@ static u64 cs_etm__etmq_get_timestamp(struct cs_etm_queue *etmq,
+ {
+ 	struct cs_etm_packet_queue *packet_queue;
+ 
+-	if (!etmq->pending_timestamp)
++	if (!etmq->pending_timestamp_chan_id)
+ 		return 0;
+ 
+ 	if (trace_chan_id)
+-		*trace_chan_id = etmq->pending_timestamp;
++		*trace_chan_id = etmq->pending_timestamp_chan_id;
+ 
+ 	packet_queue = cs_etm__etmq_get_packet_queue(etmq,
+-						     etmq->pending_timestamp);
++						     etmq->pending_timestamp_chan_id);
+ 	if (!packet_queue)
+ 		return 0;
+ 
+ 	/* Acknowledge pending status */
+-	etmq->pending_timestamp = 0;
++	etmq->pending_timestamp_chan_id = 0;
+ 
+ 	/* See function cs_etm_decoder__do_{hard|soft}_timestamp() */
+-	return packet_queue->timestamp;
++	return packet_queue->cs_timestamp;
+ }
+ 
+ static void cs_etm__clear_packet_queue(struct cs_etm_packet_queue *queue)
+@@ -797,7 +795,7 @@ static int cs_etm__setup_queue(struct cs_etm_auxtrace *etm,
+ 	int ret = 0;
+ 	unsigned int cs_queue_nr;
+ 	u8 trace_chan_id;
+-	u64 timestamp;
++	u64 cs_timestamp;
+ 	struct cs_etm_queue *etmq = queue->priv;
+ 
+ 	if (list_empty(&queue->head) || etmq)
+@@ -837,7 +835,7 @@ static int cs_etm__setup_queue(struct cs_etm_auxtrace *etm,
+ 
+ 		/*
+ 		 * Run decoder on the trace block.  The decoder will stop when
+-		 * encountering a timestamp, a full packet queue or the end of
++		 * encountering a CS timestamp, a full packet queue or the end of
+ 		 * trace for that block.
+ 		 */
+ 		ret = cs_etm__decode_data_block(etmq);
+@@ -848,10 +846,10 @@ static int cs_etm__setup_queue(struct cs_etm_auxtrace *etm,
+ 		 * Function cs_etm_decoder__do_{hard|soft}_timestamp() does all
+ 		 * the timestamp calculation for us.
+ 		 */
+-		timestamp = cs_etm__etmq_get_timestamp(etmq, &trace_chan_id);
++		cs_timestamp = cs_etm__etmq_get_timestamp(etmq, &trace_chan_id);
+ 
+ 		/* We found a timestamp, no need to continue. */
+-		if (timestamp)
++		if (cs_timestamp)
+ 			break;
+ 
+ 		/*
+@@ -875,7 +873,7 @@ static int cs_etm__setup_queue(struct cs_etm_auxtrace *etm,
+ 	 * queue and will be processed in cs_etm__process_queues().
+ 	 */
+ 	cs_queue_nr = TO_CS_QUEUE_NR(queue_nr, trace_chan_id);
+-	ret = auxtrace_heap__add(&etm->heap, cs_queue_nr, timestamp);
++	ret = auxtrace_heap__add(&etm->heap, cs_queue_nr, cs_timestamp);
+ out:
+ 	return ret;
+ }
+@@ -2162,7 +2160,7 @@ static int cs_etm__process_queues(struct cs_etm_auxtrace *etm)
+ 	int ret = 0;
+ 	unsigned int cs_queue_nr, queue_nr;
+ 	u8 trace_chan_id;
+-	u64 timestamp;
++	u64 cs_timestamp;
+ 	struct auxtrace_queue *queue;
+ 	struct cs_etm_queue *etmq;
+ 	struct cs_etm_traceid_queue *tidq;
+@@ -2224,9 +2222,9 @@ refetch:
+ 		if (ret)
+ 			goto out;
+ 
+-		timestamp = cs_etm__etmq_get_timestamp(etmq, &trace_chan_id);
++		cs_timestamp = cs_etm__etmq_get_timestamp(etmq, &trace_chan_id);
+ 
+-		if (!timestamp) {
++		if (!cs_timestamp) {
+ 			/*
+ 			 * Function cs_etm__decode_data_block() returns when
+ 			 * there is no more traces to decode in the current
+@@ -2249,7 +2247,7 @@ refetch:
+ 		 * this queue/traceID.
+ 		 */
+ 		cs_queue_nr = TO_CS_QUEUE_NR(queue_nr, trace_chan_id);
+-		ret = auxtrace_heap__add(&etm->heap, cs_queue_nr, timestamp);
++		ret = auxtrace_heap__add(&etm->heap, cs_queue_nr, cs_timestamp);
+ 	}
+ 
+ out:
+@@ -2321,7 +2319,7 @@ static int cs_etm__process_event(struct perf_session *session,
+ 				 struct perf_tool *tool)
+ {
+ 	int err = 0;
+-	u64 timestamp;
++	u64 sample_kernel_timestamp;
+ 	struct cs_etm_auxtrace *etm = container_of(session->auxtrace,
+ 						   struct cs_etm_auxtrace,
+ 						   auxtrace);
+@@ -2335,11 +2333,11 @@ static int cs_etm__process_event(struct perf_session *session,
+ 	}
+ 
+ 	if (sample->time && (sample->time != (u64) -1))
+-		timestamp = sample->time;
++		sample_kernel_timestamp = sample->time;
+ 	else
+-		timestamp = 0;
++		sample_kernel_timestamp = 0;
+ 
+-	if (timestamp || etm->timeless_decoding) {
++	if (sample_kernel_timestamp || etm->timeless_decoding) {
+ 		err = cs_etm__update_queues(etm);
+ 		if (err)
+ 			return err;
+diff --git a/tools/perf/util/cs-etm.h b/tools/perf/util/cs-etm.h
+index 3613043ffb47..726938cceed2 100644
+--- a/tools/perf/util/cs-etm.h
++++ b/tools/perf/util/cs-etm.h
+@@ -172,8 +172,8 @@ struct cs_etm_packet_queue {
+ 	u32 head;
+ 	u32 tail;
+ 	u32 instr_count;
+-	u64 timestamp;
+-	u64 next_timestamp;
++	u64 cs_timestamp;
++	u64 next_cs_timestamp;
+ 	struct cs_etm_packet packet_buffer[CS_ETM_PACKET_MAX_BUFFER];
+ };
+ 
+-- 
+2.31.0
+
diff --git a/dev-util/perf/files/5.3.7-cs-etm-Set-time-on-synthesised-samples-to-prese.patch b/dev-util/perf/files/5.3.7-cs-etm-Set-time-on-synthesised-samples-to-prese.patch
new file mode 100644
index 0000000..f24c4de
--- /dev/null
+++ b/dev-util/perf/files/5.3.7-cs-etm-Set-time-on-synthesised-samples-to-prese.patch
@@ -0,0 +1,123 @@
+From b3f84fb3650b32adc89b89384887b977a999a9f6 Mon Sep 17 00:00:00 2001
+From: James Clark <james.clark@arm.com>
+Date: Mon, 10 May 2021 17:32:48 +0300
+Subject: [PATCH 1/2] perf cs-etm: Set time on synthesised samples to preserve
+ ordering
+
+The following attribute is set when synthesising samples in
+timed decoding mode:
+
+    attr.sample_type |= PERF_SAMPLE_TIME;
+
+This results in new samples that appear to have timestamps but
+because we don't assign any timestamps to the samples, when the
+resulting inject file is opened again, the synthesised samples
+will be on the wrong side of the MMAP or COMM events.
+
+For example, this results in the samples being associated with
+the perf binary, rather than the target of the record:
+
+    perf record -e cs_etm/@tmc_etr0/u top
+    perf inject -i perf.data -o perf.inject --itrace=i100il
+    perf report -i perf.inject
+
+Where 'Command' == perf should show as 'top':
+
+    # Overhead  Command  Source Shared Object  Source Symbol           Target Symbol           Basic Block Cycles
+    # ........  .......  ....................  ......................  ......................  ..................
+    #
+        31.08%  perf     [unknown]             [.] 0x000000000040c3f8  [.] 0x000000000040c3e8  -
+
+If the perf.data file is opened directly with perf, without the
+inject step, then this already works correctly because the
+events are synthesised after the COMM and MMAP events and
+no second sorting happens. Re-sorting only happens when opening
+the perf.inject file for the second time so timestamps are
+needed.
+
+Using the timestamp from the AUX record mirrors the current
+behaviour when opening directly with perf, because the events
+are generated on the call to cs_etm__process_queues().
+
+The ETM trace could optionally contain time stamps, but there is
+no way to correlate this with the kernel time. So, the best available
+time value is that of the AUX_RECORD header. This patch uses
+the timestamp from the header for all the samples. The ordering of the
+samples are implicit in the trace and thus is fine with respect to
+relative ordering.
+
+Reviewed-by: Leo Yan <leo.yan@linaro.org>
+Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>
+Co-developed-by: Al Grant <al.grant@arm.com>
+Signed-off-by: Al Grant <al.grant@arm.com>
+Signed-off-by: James Clark <james.clark@arm.com>
+Acked-by: Suzuki K Poulos <suzuki.poulose@arm.com>
+Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
+Cc: Anshuman Khandual <anshuman.khandual@arm.com>
+Cc: Branislav Rankov <branislav.rankov@arm.com>
+Cc: Denis Nikitin <denik@chromium.org>
+Cc: Jiri Olsa <jolsa@redhat.com>
+Cc: John Garry <john.garry@huawei.com>
+Cc: Mark Rutland <mark.rutland@arm.com>
+Cc: Mike Leach <mike.leach@linaro.org>
+Cc: Namhyung Kim <namhyung@kernel.org>
+Cc: Will Deacon <will@kernel.org>
+Cc: linux-arm-kernel@lists.infradead.org
+Cc: coresight@lists.linaro.org
+Link: https://lore.kernel.org/r/20210510143248.27423-3-james.clark@arm.com
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+---
+ tools/perf/util/cs-etm.c | 15 +++++++++++++--
+ 1 file changed, 13 insertions(+), 2 deletions(-)
+
+diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
+index ad83a97..a557f83 100644
+--- a/tools/perf/util/cs-etm.c
++++ b/tools/perf/util/cs-etm.c
+@@ -52,6 +52,7 @@ struct cs_etm_auxtrace {
+ 	u8 sample_instructions;
+ 
+ 	int num_cpu;
++	u64 latest_kernel_timestamp;
+ 	u32 auxtrace_type;
+ 	u64 branches_sample_type;
+ 	u64 branches_id;
+@@ -1148,6 +1149,8 @@ static int cs_etm__synth_instruction_sample(struct cs_etm_queue *etmq,
+ 	event->sample.header.misc = cs_etm__cpu_mode(etmq, addr);
+ 	event->sample.header.size = sizeof(struct perf_event_header);
+ 
++	if (!etm->timeless_decoding)
++		sample.time = etm->latest_kernel_timestamp;
+ 	sample.ip = addr;
+ 	sample.pid = tidq->pid;
+ 	sample.tid = tidq->tid;
+@@ -1202,6 +1205,8 @@ static int cs_etm__synth_branch_sample(struct cs_etm_queue *etmq,
+ 	event->sample.header.misc = cs_etm__cpu_mode(etmq, ip);
+ 	event->sample.header.size = sizeof(struct perf_event_header);
+ 
++	if (!etm->timeless_decoding)
++		sample.time = etm->latest_kernel_timestamp;
+ 	sample.ip = ip;
+ 	sample.pid = tidq->pid;
+ 	sample.tid = tidq->tid;
+@@ -2355,9 +2360,15 @@ static int cs_etm__process_event(struct perf_session *session,
+ 	else if (event->header.type == PERF_RECORD_SWITCH_CPU_WIDE)
+ 		return cs_etm__process_switch_cpu_wide(etm, event);
+ 
+-	if (!etm->timeless_decoding &&
+-	    event->header.type == PERF_RECORD_AUX)
++	if (!etm->timeless_decoding && event->header.type == PERF_RECORD_AUX) {
++		/*
++		 * Record the latest kernel timestamp available in the header
++		 * for samples so that synthesised samples occur from this point
++		 * onwards.
++		 */
++		etm->latest_kernel_timestamp = sample_kernel_timestamp;
+ 		return cs_etm__process_queues(etm);
++	}
+ 
+ 	return 0;
+ }
+-- 
+2.31.0
+
diff --git a/dev-util/perf/files/5.3.7-cs-etm-Split-Coresight-decode-by-aux-records.patch b/dev-util/perf/files/5.3.7-cs-etm-Split-Coresight-decode-by-aux-records.patch
new file mode 100644
index 0000000..70ccfbf
--- /dev/null
+++ b/dev-util/perf/files/5.3.7-cs-etm-Split-Coresight-decode-by-aux-records.patch
@@ -0,0 +1,309 @@
+Modifications in the patch resolving conflicts:
+- perf_record_aux renamed to aux_event;
+- perf_record_auxtrace renamed to auxtrace_event;
+- evlist__event2evsel renamed to perf_evlist__event2evsel;
+- evsel__parse_sample renamed to perf_evsel__parse_sample;
+- Replace "PRI_lx64 with l"PRIx64.
+
+From a05337312ae7f16c15b01ce77c85232f6a3dca1d Mon Sep 17 00:00:00 2001
+From: James Clark <james.clark@arm.com>
+Date: Thu, 24 Jun 2021 17:43:02 +0100
+Subject: [PATCH] perf cs-etm: Split Coresight decode by aux records
+
+Populate the auxtrace queues using AUX records rather than whole
+auxtrace buffers so that the decoder is reset between each aux record.
+
+This is similar to the auxtrace_queues__process_index() ->
+auxtrace_queues__add_indexed_event() flow where
+perf_session__peek_event() is used to read AUXTRACE events out of random
+positions in the file based on the auxtrace index.
+
+But now we loop over all PERF_RECORD_AUX events instead of AUXTRACE
+buffers. For each PERF_RECORD_AUX event, we find the corresponding
+AUXTRACE buffer using the index, and add a fragment of that buffer to
+the auxtrace queues.
+
+No other changes to decoding were made, apart from populating the
+auxtrace queues. The result of decoding is identical to before, except
+in cases where decoding failed completely, due to not resetting the
+decoder.
+
+The reason for this change is because AUX records are emitted any time
+tracing is disabled, for example when the process is scheduled out.
+Because ETM was disabled and enabled again, the decoder also needs to be
+reset to force the search for a sync packet. Otherwise there would be
+fatal decoding errors.
+
+Testing
+=======
+
+Testing was done with the following script, to diff the decoding results
+between the patched and un-patched versions of perf:
+
+	#!/bin/bash
+	set -ex
+
+	$1 script -i $3 $4 > split.script
+	$2 script -i $3 $4 > default.script
+
+	diff split.script default.script | head -n 20
+
+And it was run like this, with various itrace options depending on the
+quantity of synthesised events:
+
+	compare.sh ./perf-patched ./perf-default perf-per-cpu-2-threads.data --itrace=i100000ns
+
+No changes in output were observed in the following scenarios:
+
+* Simple per-cpu
+	perf record -e cs_etm/@tmc_etr0/u top
+
+* Per-thread, single thread
+	perf record -e cs_etm/@tmc_etr0/u --per-thread ./threads_C
+
+* Per-thread multiple threads (but only one thread collected data):
+	perf record -e cs_etm/@tmc_etr0/u --per-thread --pid 4596,4597
+
+* Per-thread multiple threads (both threads collected data):
+	perf record -e cs_etm/@tmc_etr0/u --per-thread --pid 4596,4597
+
+* Per-cpu explicit threads:
+	perf record -e cs_etm/@tmc_etr0/u --pid 853,854
+
+* System-wide (per-cpu):
+    perf record -e cs_etm/@tmc_etr0/u -a
+
+* No data collected (no aux buffers)
+	Can happen with any command when run for a short period
+
+* Containing truncated records
+	Can happen with any command
+
+* Containing aux records with 0 size
+	Can happen with any command
+
+* Snapshot mode (various files with and without buffer wrap)
+	perf record -e cs_etm/@tmc_etr0/u -a --snapshot
+
+Some differences were observed in the following scenario:
+
+* Snapshot mode (with duplicate buffers)
+	perf record -e cs_etm/@tmc_etr0/u -a --snapshot
+
+Fewer samples are generated in snapshot mode if duplicate buffers
+were gathered because buffers with the same offset are now only added
+once. This gives different, but more correct results and no duplicate
+data is decoded any more.
+
+Signed-off-by: James Clark <james.clark@arm.com>
+Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>
+Tested-by: Leo Yan <leo.yan@linaro.org>
+Cc: Al Grant <al.grant@arm.com>
+Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
+Cc: Anshuman Khandual <anshuman.khandual@arm.com>
+Cc: Branislav Rankov <branislav.rankov@arm.com>
+Cc: Denis Nikitin <denik@chromium.org>
+Cc: Jiri Olsa <jolsa@redhat.com>
+Cc: John Garry <john.garry@huawei.com>
+Cc: Mark Rutland <mark.rutland@arm.com>
+Cc: Mike Leach <mike.leach@linaro.org>
+Cc: Namhyung Kim <namhyung@kernel.org>
+Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
+Cc: Will Deacon <will@kernel.org>
+Cc: coresight@lists.linaro.org
+Cc: linux-arm-kernel@lists.infradead.org
+Link: http://lore.kernel.org/lkml/20210624164303.28632-2-james.clark@arm.com
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+---
+ tools/perf/util/cs-etm.c | 168 ++++++++++++++++++++++++++++++++++++++-
+ 1 file changed, 167 insertions(+), 1 deletion(-)
+
+diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
+index 5095c1c4c6df..a57fabee6d53 100644
+--- a/tools/perf/util/cs-etm.c
++++ b/tools/perf/util/cs-etm.c
+@@ -2620,6 +2620,172 @@ static u64 *cs_etm__create_meta_blk(u64 *buff_in, int *buff_in_offset,
+ 	return metadata;
+ }
+ 
++/**
++ * Puts a fragment of an auxtrace buffer into the auxtrace queues based
++ * on the bounds of aux_event, if it matches with the buffer that's at
++ * file_offset.
++ *
++ * Normally, whole auxtrace buffers would be added to the queue. But we
++ * want to reset the decoder for every PERF_RECORD_AUX event, and the decoder
++ * is reset across each buffer, so splitting the buffers up in advance has
++ * the same effect.
++ */
++static int cs_etm__queue_aux_fragment(struct perf_session *session, off_t file_offset, size_t sz,
++				      struct aux_event *aux_event, struct perf_sample *sample)
++{
++	int err;
++	char buf[PERF_SAMPLE_MAX_SIZE];
++	union perf_event *auxtrace_event_union;
++	struct auxtrace_event *auxtrace_event;
++	union perf_event auxtrace_fragment;
++	__u64 aux_offset, aux_size;
++
++	struct cs_etm_auxtrace *etm = container_of(session->auxtrace,
++						   struct cs_etm_auxtrace,
++						   auxtrace);
++
++	/*
++	 * There should be a PERF_RECORD_AUXTRACE event at the file_offset that we got
++	 * from looping through the auxtrace index.
++	 */
++	err = perf_session__peek_event(session, file_offset, buf,
++				       PERF_SAMPLE_MAX_SIZE, &auxtrace_event_union, NULL);
++	if (err)
++		return err;
++	auxtrace_event = &auxtrace_event_union->auxtrace;
++	if (auxtrace_event->header.type != PERF_RECORD_AUXTRACE)
++		return -EINVAL;
++
++	if (auxtrace_event->header.size < sizeof(struct auxtrace_event) ||
++		auxtrace_event->header.size != sz) {
++		return -EINVAL;
++	}
++
++	/*
++	 * In per-thread mode, CPU is set to -1, but TID will be set instead. See
++	 * auxtrace_mmap_params__set_idx(). Return 'not found' if neither CPU nor TID match.
++	 */
++	if ((auxtrace_event->cpu == (__u32) -1 && auxtrace_event->tid != sample->tid) ||
++			auxtrace_event->cpu != sample->cpu)
++		return 1;
++
++	if (aux_event->flags & PERF_AUX_FLAG_OVERWRITE) {
++		/*
++		 * Clamp size in snapshot mode. The buffer size is clamped in
++		 * __auxtrace_mmap__read() for snapshots, so the aux record size doesn't reflect
++		 * the buffer size.
++		 */
++		aux_size = min(aux_event->aux_size, auxtrace_event->size);
++
++		/*
++		 * In this mode, the head also points to the end of the buffer so aux_offset
++		 * needs to have the size subtracted so it points to the beginning as in normal mode
++		 */
++		aux_offset = aux_event->aux_offset - aux_size;
++	} else {
++		aux_size = aux_event->aux_size;
++		aux_offset = aux_event->aux_offset;
++	}
++
++	if (aux_offset >= auxtrace_event->offset &&
++	    aux_offset + aux_size <= auxtrace_event->offset + auxtrace_event->size) {
++		/*
++		 * If this AUX event was inside this buffer somewhere, create a new auxtrace event
++		 * based on the sizes of the aux event, and queue that fragment.
++		 */
++		auxtrace_fragment.auxtrace = *auxtrace_event;
++		auxtrace_fragment.auxtrace.size = aux_size;
++		auxtrace_fragment.auxtrace.offset = aux_offset;
++		file_offset += aux_offset - auxtrace_event->offset + auxtrace_event->header.size;
++
++		pr_debug3("CS ETM: Queue buffer size: %#l"PRIx64" offset: %#l"PRIx64
++			  " tid: %d cpu: %d\n", aux_size, aux_offset, sample->tid, sample->cpu);
++		return auxtrace_queues__add_event(&etm->queues, session, &auxtrace_fragment,
++						  file_offset, NULL);
++	}
++
++	/* Wasn't inside this buffer, but there were no parse errors. 1 == 'not found' */
++	return 1;
++}
++
++static int cs_etm__queue_aux_records_cb(struct perf_session *session, union perf_event *event,
++					u64 offset __maybe_unused, void *data __maybe_unused)
++{
++	struct perf_sample sample;
++	int ret;
++	struct auxtrace_index_entry *ent;
++	struct auxtrace_index *auxtrace_index;
++	struct evsel *evsel;
++	size_t i;
++
++	/* Don't care about any other events, we're only queuing buffers for AUX events */
++	if (event->header.type != PERF_RECORD_AUX)
++		return 0;
++
++	if (event->header.size < sizeof(struct aux_event))
++		return -EINVAL;
++
++	/* Truncated Aux records can have 0 size and shouldn't result in anything being queued. */
++	if (!event->aux.aux_size)
++		return 0;
++
++	/*
++	 * Parse the sample, we need the sample_id_all data that comes after the event so that the
++	 * CPU or PID can be matched to an AUXTRACE buffer's CPU or PID.
++	 */
++	evsel = perf_evlist__event2evsel(session->evlist, event);
++	if (!evsel)
++		return -EINVAL;
++	ret = perf_evsel__parse_sample(evsel, event, &sample);
++	if (ret)
++		return ret;
++
++	/*
++	 * Loop through the auxtrace index to find the buffer that matches up with this aux event.
++	 */
++	list_for_each_entry(auxtrace_index, &session->auxtrace_index, list) {
++		for (i = 0; i < auxtrace_index->nr; i++) {
++			ent = &auxtrace_index->entries[i];
++			ret = cs_etm__queue_aux_fragment(session, ent->file_offset,
++							 ent->sz, &event->aux, &sample);
++			/*
++			 * Stop search on error or successful values. Continue search on
++			 * 1 ('not found')
++			 */
++			if (ret != 1)
++				return ret;
++		}
++	}
++
++	/*
++	 * Couldn't find the buffer corresponding to this aux record, something went wrong. Warn but
++	 * don't exit with an error because it will still be possible to decode other aux records.
++	 */
++	pr_err("CS ETM: Couldn't find auxtrace buffer for aux_offset: %#l"PRIx64
++	       " tid: %d cpu: %d\n", event->aux.aux_offset, sample.tid, sample.cpu);
++	return 0;
++}
++
++static int cs_etm__queue_aux_records(struct perf_session *session)
++{
++	struct auxtrace_index *index = list_first_entry_or_null(&session->auxtrace_index,
++								struct auxtrace_index, list);
++	if (index && index->nr > 0)
++		return perf_session__peek_events(session, session->header.data_offset,
++						 session->header.data_size,
++						 cs_etm__queue_aux_records_cb, NULL);
++
++	/*
++	 * We would get here if there are no entries in the index (either no auxtrace
++	 * buffers or no index at all). Fail silently as there is the possibility of
++	 * queueing them in cs_etm__process_auxtrace_event() if etm->data_queued is still
++	 * false.
++	 *
++	 * In that scenario, buffers will not be split by AUX records.
++	 */
++	return 0;
++}
++
+ int cs_etm__process_auxtrace_info(union perf_event *event,
+ 				  struct perf_session *session)
+ {
+@@ -2819,7 +2985,7 @@ int cs_etm__process_auxtrace_info(union perf_event *event,
+ 	if (err)
+ 		goto err_delete_thread;
+ 
+-	err = auxtrace_queues__process_index(&etm->queues, session);
++	err = cs_etm__queue_aux_records(session);
+ 	if (err)
+ 		goto err_delete_thread;
+ 
+-- 
+2.33.0.rc1.237.g0d66db33f3-goog
+
diff --git a/dev-util/perf/files/5.3.7-cs-etm-Start-reading-Z-itrace-option.patch b/dev-util/perf/files/5.3.7-cs-etm-Start-reading-Z-itrace-option.patch
new file mode 100644
index 0000000..084a320
--- /dev/null
+++ b/dev-util/perf/files/5.3.7-cs-etm-Start-reading-Z-itrace-option.patch
@@ -0,0 +1,53 @@
+From 58e2d92eca817ba775028223be417be94b306ac6 Mon Sep 17 00:00:00 2001
+From: James Clark <james.clark@arm.com>
+Date: Mon, 17 May 2021 16:17:40 +0300
+Subject: [PATCH 2/3] perf cs-etm: Start reading 'Z' --itrace option
+
+Recently the 'Z' --itrace option was added to override detection
+of timeless decoding. This is also useful in Coresight to work around
+issues with invalid timestamps on some hardware.
+
+When the 'Z' option is provided, the existing timeless decoding mode
+will be used, even if timestamps were recorded.
+
+Signed-off-by: James Clark <james.clark@arm.com>
+Reviewed-by: Leo Yan <leo.yan@linaro.org>
+Cc: Al Grant <al.grant@arm.com>
+Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
+Cc: Anshuman Khandual <anshuman.khandual@arm.com>
+Cc: Branislav Rankov <branislav.rankov@arm.com>
+Cc: Denis Nikitin <denik@chromium.org>
+Cc: Jiri Olsa <jolsa@redhat.com>
+Cc: John Garry <john.garry@huawei.com>
+Cc: Mark Rutland <mark.rutland@arm.com>
+Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
+Cc: Mike Leach <mike.leach@linaro.org>
+Cc: Namhyung Kim <namhyung@kernel.org>
+Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
+Cc: Will Deacon <will@kernel.org>
+Cc: coresight@lists.linaro.org
+Cc: linux-arm-kernel@lists.infradead.org
+Link: http://lore.kernel.org/lkml/20210517131741.3027-3-james.clark@arm.com
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+---
+ tools/perf/util/cs-etm.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
+index 2af9ab5ca3fd..639aad121bfe 100644
+--- a/tools/perf/util/cs-etm.c
++++ b/tools/perf/util/cs-etm.c
+@@ -2418,6 +2418,10 @@ static bool cs_etm__is_timeless_decoding(struct cs_etm_auxtrace *etm)
+ 	struct perf_evlist *evlist = etm->session->evlist;
+ 	bool timeless_decoding = true;
+ 
++	/* Override timeless mode with user input from --itrace=Z */
++	if (etm->synth_opts.timeless_decoding)
++		return true;
++
+ 	/*
+ 	 * Circle through the list of event and complain if we find one
+ 	 * with the time bit set.
+-- 
+2.32.0.605.g8dce9f2422-goog
+
diff --git a/dev-util/perf/files/5.3.7-session-Add-facility-to-peek-at-all-events.patch b/dev-util/perf/files/5.3.7-session-Add-facility-to-peek-at-all-events.patch
new file mode 100644
index 0000000..dfa8806
--- /dev/null
+++ b/dev-util/perf/files/5.3.7-session-Add-facility-to-peek-at-all-events.patch
@@ -0,0 +1,77 @@
+From 9ed7d21233c3ff18ccb79584b033344f245ed0a3 Mon Sep 17 00:00:00 2001
+From: Adrian Hunter <adrian.hunter@intel.com>
+Date: Fri, 15 Nov 2019 14:42:20 +0200
+Subject: [PATCH 1/2] perf session: Add facility to peek at all events
+
+AUX area samples are not limited in how far back in time the sample
+could start. Consequently samples must be queued in advance to allow for
+time-ordered processing. To achieve that, add
+perf_session__peek_events() that walks and peeks at all the events.
+
+Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
+Cc: Jiri Olsa <jolsa@redhat.com>
+Link: http://lore.kernel.org/lkml/20191115124225.5247-11-adrian.hunter@intel.com
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+---
+ tools/perf/util/session.c | 28 ++++++++++++++++++++++++++++
+ tools/perf/util/session.h |  5 +++++
+ 2 files changed, 33 insertions(+)
+
+diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
+index 37efa1f43d8b..2a845543d055 100644
+--- a/tools/perf/util/session.c
++++ b/tools/perf/util/session.c
+@@ -1628,6 +1628,34 @@ out_parse_sample:
+ 	return 0;
+ }
+ 
++int perf_session__peek_events(struct perf_session *session, u64 offset,
++			      u64 size, peek_events_cb_t cb, void *data)
++{
++	u64 max_offset = offset + size;
++	char buf[PERF_SAMPLE_MAX_SIZE];
++	union perf_event *event;
++	int err;
++
++	do {
++		err = perf_session__peek_event(session, offset, buf,
++					       PERF_SAMPLE_MAX_SIZE, &event,
++					       NULL);
++		if (err)
++			return err;
++
++		err = cb(session, event, offset, data);
++		if (err)
++			return err;
++
++		offset += event->header.size;
++		if (event->header.type == PERF_RECORD_AUXTRACE)
++			offset += event->auxtrace.size;
++
++	} while (offset < max_offset);
++
++	return err;
++}
++
+ static s64 perf_session__process_event(struct perf_session *session,
+ 				       union perf_event *event, u64 file_offset)
+ {
+diff --git a/tools/perf/util/session.h b/tools/perf/util/session.h
+index 863dbad87849..1f3f80d8023c 100644
+--- a/tools/perf/util/session.h
++++ b/tools/perf/util/session.h
+@@ -64,6 +64,11 @@ int perf_session__peek_event(struct perf_session *session, off_t file_offset,
+ 			     void *buf, size_t buf_sz,
+ 			     union perf_event **event_ptr,
+ 			     struct perf_sample *sample);
++typedef int (*peek_events_cb_t)(struct perf_session *session,
++				union perf_event *event, u64 offset,
++				void *data);
++int perf_session__peek_events(struct perf_session *session, u64 offset,
++			      u64 size, peek_events_cb_t cb, void *data);
+ 
+ int perf_session__process_events(struct perf_session *session);
+ 
+-- 
+2.33.0.rc1.237.g0d66db33f3-goog
+
diff --git a/dev-util/perf/perf-5.3.7-r21.ebuild b/dev-util/perf/perf-5.3.7-r25.ebuild
similarity index 100%
rename from dev-util/perf/perf-5.3.7-r21.ebuild
rename to dev-util/perf/perf-5.3.7-r25.ebuild
diff --git a/dev-util/perf/perf-5.3.7.ebuild b/dev-util/perf/perf-5.3.7.ebuild
index c9535b3..ca14970 100644
--- a/dev-util/perf/perf-5.3.7.ebuild
+++ b/dev-util/perf/perf-5.3.7.ebuild
@@ -35,7 +35,7 @@
 LICENSE="GPL-2"
 SLOT="0"
 KEYWORDS="*"
-IUSE="audit clang coresight crypt debug +demangle +doc gtk java lzma numa perl python slang systemtap unwind zlib"
+IUSE="audit clang coresight crypt debug +demangle +doc gtk java lzma numa perl python slang systemtap unwind zlib zstd"
 # TODO babeltrace
 REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
 
@@ -56,6 +56,7 @@
 	systemtap? ( dev-util/systemtap )
 	unwind? ( sys-libs/llvm-libunwind )
 	zlib? ( sys-libs/zlib )
+	zstd? ( app-arch/zstd )
 	dev-libs/elfutils
 	sys-libs/binutils-libs:="
 DEPEND="${RDEPEND}
@@ -91,6 +92,10 @@
 	"${FILESDIR}/5.3.7-cs-etm-Correct-synth-inst-samples.patch"
 	"${FILESDIR}/5.3.7-cs-etm-Optimize-copying-last-branches.patch"
 	"${FILESDIR}/5.3.7-cs-etm-Fix-unsigned-variable.patch"
+	"${FILESDIR}/5.3.7-cs-etm-Fix-definition-of-macro-TO_CS_QUEUE_NR.patch"
+	"${FILESDIR}/5.3.7-cs-etm-Refactor-timestamp-variable-names.patch"
+	"${FILESDIR}/5.3.7-cs-etm-Set-time-on-synthesised-samples-to-prese.patch"
+	"${FILESDIR}/5.3.7-cs-etm-Delay-decode-of-non-timeless-data-until-cs_etm__flush_events.patch"
 	"${FILESDIR}/5.3.7-Consolidate-symbol-fixup-issue.patch"
 	"${FILESDIR}/5.3.7-Correct-event-attribute-sizes.patch"
 	"${FILESDIR}/5.3.7-Fix-file-corruption-due-to-event-deletion.patch"
@@ -101,6 +106,12 @@
 	"${FILESDIR}/5.3.7-EL2-fix-4-Support-PID-tracing-in-config.patch"
 	"${FILESDIR}/5.3.7-EL2-fix-5-Add-cs-etm-helper.patch"
 	"${FILESDIR}/5.3.7-EL2-fix-6-Detect-pid-in-VMID.patch"
+	"${FILESDIR}/5.3.7-cs-etm-Move-synth_opts-initialisation.patch"
+	"${FILESDIR}/5.3.7-auxtrace-Add-Z-itrace-option-for-timeless-decod.patch"
+	"${FILESDIR}/5.3.7-cs-etm-Start-reading-Z-itrace-option.patch"
+	"${FILESDIR}/5.3.7-cs-etm-Prevent-and-warn-on-underflows-during-ti.patch"
+	"${FILESDIR}/5.3.7-session-Add-facility-to-peek-at-all-events.patch"
+	"${FILESDIR}/5.3.7-cs-etm-Split-Coresight-decode-by-aux-records.patch"
 )
 
 pkg_setup() {
@@ -225,6 +236,7 @@
 		NO_SDT=$(puse systemtap) \
 		NO_SLANG=$(puse slang) \
 		NO_LZMA=$(puse lzma) \
+		NO_LIBZSTD=$(puse zstd) \
 		NO_ZLIB= \
 		WERROR=0 \
 		XMLTO="$(usex doc xmlto '')" \
diff --git a/dev-util/provision-server/provision-server-0.0.1-r7.ebuild b/dev-util/provision-server/provision-server-0.0.1-r7.ebuild
deleted file mode 100644
index 8bedf17..0000000
--- a/dev-util/provision-server/provision-server-0.0.1-r7.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="d5f4dc19a6af173932c7db54e1550aef00eb2f55"
-CROS_WORKON_TREE="55dda3b3dc30d53d5401aa7b9aa5019068d99fbb"
-CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
-CROS_WORKON_LOCALNAME=("../platform/dev")
-CROS_WORKON_SUBTREE="src/chromiumos/test/provision"
-
-inherit cros-go cros-workon
-
-DESCRIPTION="Provision server implementation for installing CrOS on a test device"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/provision"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-CROS_GO_WORKSPACE=(
-	"${S}"
-)
-
-CROS_GO_BINARIES=(
-	"chromiumos/test/provision/cmd/provisionserver"
-)
-
-CROS_GO_TEST=(
-	"chromiumos/test/provision/cmd/provisionserver/..."
-)
-
-CROS_GO_VET=(
-	"${CROS_GO_TEST[@]}"
-)
-
-DEPEND="
-	dev-util/lro-server
-"
-RDEPEND="${DEPEND}"
diff --git a/dev-util/provision-server/provision-server-9999.ebuild b/dev-util/provision-server/provision-server-9999.ebuild
deleted file mode 100644
index 870a2fa..0000000
--- a/dev-util/provision-server/provision-server-9999.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
-CROS_WORKON_LOCALNAME=("../platform/dev")
-CROS_WORKON_SUBTREE="src/chromiumos/test/provision"
-
-inherit cros-go cros-workon
-
-DESCRIPTION="Provision server implementation for installing CrOS on a test device"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/provision"
-
-LICENSE="BSD-Google"
-KEYWORDS="~*"
-IUSE=""
-
-CROS_GO_WORKSPACE=(
-	"${S}"
-)
-
-CROS_GO_BINARIES=(
-	"chromiumos/test/provision/cmd/provisionserver"
-)
-
-CROS_GO_TEST=(
-	"chromiumos/test/provision/cmd/provisionserver/..."
-)
-
-CROS_GO_VET=(
-	"${CROS_GO_TEST[@]}"
-)
-
-DEPEND="
-	dev-util/lro-server
-"
-RDEPEND="${DEPEND}"
diff --git a/dev-util/puffin/puffin-1.0.0-r439.ebuild b/dev-util/puffin/puffin-1.0.0-r439.ebuild
deleted file mode 100644
index aadca14..0000000
--- a/dev-util/puffin/puffin-1.0.0-r439.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 2017 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.
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("a7d83f416a8915930ffebb61280f935300244c5c" "dd52f5f53116b5880387bc1a878478e172b768be")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "d5b2e1140bb5d80e845bd170bd364e892b05ebd1")
-inherit cros-constants
-
-CROS_WORKON_INCREMENTAL_BUILD="1"
-CROS_WORKON_LOCALNAME=("../platform2" "../aosp/external/puffin")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "platform/external/puffin")
-CROS_WORKON_EGIT_BRANCH=("main" "master")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/puffin")
-CROS_WORKON_REPO=("${CROS_GIT_HOST_URL}" "${CROS_GIT_AOSP_URL}")
-CROS_WORKON_SUBTREE=("common-mk .gn" "")
-CROS_WORKON_MANUAL_UPREV=1
-
-PLATFORM_SUBDIR="puffin"
-
-inherit cros-workon platform
-
-DESCRIPTION="Puffin: Deterministic patching tool for deflate streams"
-HOMEPAGE="https://android.googlesource.com/platform/external/puffin/"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="asan fuzzer"
-
-COMMON_DEPEND="chromeos-base/libbrillo:=[asan?,fuzzer?]
-	dev-libs/protobuf:=
-	dev-util/bsdiff:=
-"
-
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${COMMON_DEPEND}"
-
-src_install() {
-	if use cros_host; then
-		dobin "${OUT}"/puffin
-	fi
-	dolib.a "${OUT}"/libpuffpatch.a
-	dolib.a "${OUT}"/libpuffdiff.a
-
-	insinto /usr/include
-	doins -r src/include/puffin
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins libpuffdiff.pc libpuffpatch.pc
-
-	for f in "huff" "puff" "puffpatch"; do
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}/puffin_${f}_fuzzer"
-	done
-}
-
-platform_pkg_test() {
-	platform_test "run" "${OUT}/puffin_test"
-
-	# Run fuzzers.
-	for f in "huff" "puff" "puffpatch"; do
-		platform_fuzzer_test "${OUT}/puffin_${f}_fuzzer"
-	done
-}
diff --git a/dev-util/puffin/puffin-1.0.0-r440.ebuild b/dev-util/puffin/puffin-1.0.0-r440.ebuild
new file mode 100644
index 0000000..59799d6
--- /dev/null
+++ b/dev-util/puffin/puffin-1.0.0-r440.ebuild
@@ -0,0 +1,66 @@
+# Copyright 2017 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.
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("a7d83f416a8915930ffebb61280f935300244c5c" "dd52f5f53116b5880387bc1a878478e172b768be")
+CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "d5b2e1140bb5d80e845bd170bd364e892b05ebd1")
+inherit cros-constants
+
+CROS_WORKON_INCREMENTAL_BUILD="1"
+CROS_WORKON_LOCALNAME=("../platform2" "../aosp/external/puffin")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "platform/external/puffin")
+CROS_WORKON_EGIT_BRANCH=("main" "master")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/puffin")
+CROS_WORKON_REPO=("${CROS_GIT_HOST_URL}" "${CROS_GIT_AOSP_URL}")
+CROS_WORKON_SUBTREE=("common-mk .gn" "")
+CROS_WORKON_MANUAL_UPREV=1
+
+PLATFORM_SUBDIR="puffin"
+
+inherit cros-workon platform
+
+DESCRIPTION="Puffin: Deterministic patching tool for deflate streams"
+HOMEPAGE="https://android.googlesource.com/platform/external/puffin/"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="asan fuzzer"
+
+COMMON_DEPEND="chromeos-base/libbrillo:=[asan?,fuzzer?]
+	dev-libs/protobuf:=
+	dev-util/bsdiff:=
+"
+
+RDEPEND="${COMMON_DEPEND}"
+DEPEND="${COMMON_DEPEND}"
+
+src_install() {
+	if use cros_host; then
+		dobin "${OUT}"/puffin
+	fi
+	dolib.a "${OUT}"/libpuffpatch.a
+	dolib.a "${OUT}"/libpuffdiff.a
+
+	insinto /usr/include
+	doins -r src/include/puffin
+
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins libpuffdiff.pc libpuffpatch.pc
+
+	for f in "huff" "puff" "puffpatch"; do
+		local fuzzer_component_id="31714"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}/puffin_${f}_fuzzer" \
+			--comp "${fuzzer_component_id}"
+	done
+}
+
+platform_pkg_test() {
+	platform_test "run" "${OUT}/puffin_test"
+
+	# Run fuzzers.
+	for f in "huff" "puff" "puffpatch"; do
+		platform_fuzzer_test "${OUT}/puffin_${f}_fuzzer"
+	done
+}
diff --git a/dev-util/puffin/puffin-9999.ebuild b/dev-util/puffin/puffin-9999.ebuild
index 38bde1e..417e393 100644
--- a/dev-util/puffin/puffin-9999.ebuild
+++ b/dev-util/puffin/puffin-9999.ebuild
@@ -48,7 +48,9 @@
 	doins libpuffdiff.pc libpuffpatch.pc
 
 	for f in "huff" "puff" "puffpatch"; do
-		platform_fuzzer_install "${S}"/OWNERS "${OUT}/puffin_${f}_fuzzer"
+		local fuzzer_component_id="31714"
+		platform_fuzzer_install "${S}"/OWNERS "${OUT}/puffin_${f}_fuzzer" \
+			--comp "${fuzzer_component_id}"
 	done
 }
 
diff --git a/dev-util/shellcheck/shellcheck-0.7.1-r44.ebuild b/dev-util/shellcheck/shellcheck-0.7.1-r44.ebuild
deleted file mode 100644
index 078fc20..0000000
--- a/dev-util/shellcheck/shellcheck-0.7.1-r44.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-CROS_WORKON_COMMIT="9b0d715ebcf37ceb7a3ac5278a3550366d05e417"
-CROS_WORKON_TREE="a3d8fd0085198723b1f72f5a33e974abd59d352d"
-CROS_WORKON_PROJECT="chromiumos/third_party/shellcheck"
-CROS_WORKON_LOCALNAME="shellcheck"
-CROS_WORKON_EGIT_BRANCH="chromeos-0.7"
-CROS_WORKON_DESTDIR="${S}"
-
-CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
-CABAL_EXTRA_CONFIGURE_FLAGS="--disable-executable-dynamic
-	--disable-shared
-	--ghc-option=-optl-static
-"
-
-inherit cros-workon haskell-cabal
-
-DESCRIPTION="Shell script analysis tool"
-HOMEPAGE="https://www.shellcheck.net/"
-
-LICENSE="GPL-3"
-SLOT="0/${PV}"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="dev-haskell/aeson:=[profile?]
-	>=dev-haskell/diff-0.2.0:=[profile?]
-	>=dev-haskell/mtl-2.2.1:=[profile?]
-	>=dev-haskell/parsec-3.0:=[profile?]
-	>=dev-haskell/quickcheck-2.7.4:2=[template_haskell,profile?]
-	dev-haskell/regex-tdfa:=[profile?]
-	dev-haskell/semigroups:=[profile?]
-	>=dev-lang/ghc-7.8.2:=
-	>=dev-haskell/cabal-1.18.1.3 <dev-haskell/cabal-2.5
-	dev-libs/gmp[static-libs]
-	dev-libs/libffi[static-libs]
-"
-
-src_install() {
-	cabal_src_install
-	# TODO(crbug.com/1000756): Add support for manpage build process (requires pandoc)
-	doman "${FILESDIR}/${PN}.1"
-}
diff --git a/dev-util/shellcheck/shellcheck-0.7.1-r46.ebuild b/dev-util/shellcheck/shellcheck-0.7.1-r46.ebuild
new file mode 100644
index 0000000..e27586e
--- /dev/null
+++ b/dev-util/shellcheck/shellcheck-0.7.1-r46.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+CROS_WORKON_COMMIT="ed8e64b2a311489fe9854e56d2f61fa67b62eee7"
+CROS_WORKON_TREE="276632ca93702dfd95fc5be0ed8beb7dbfe7d001"
+CROS_WORKON_PROJECT="chromiumos/third_party/shellcheck"
+CROS_WORKON_LOCALNAME="shellcheck"
+CROS_WORKON_EGIT_BRANCH="chromeos-0.7"
+CROS_WORKON_DESTDIR="${S}"
+
+CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
+CABAL_EXTRA_CONFIGURE_FLAGS="--disable-executable-dynamic
+	--disable-shared
+	--ghc-option=-optl-static
+"
+
+inherit cros-workon haskell-cabal
+
+DESCRIPTION="Shell script analysis tool"
+HOMEPAGE="https://www.shellcheck.net/"
+
+LICENSE="GPL-3"
+SLOT="0/${PV}"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND="dev-haskell/aeson:=[profile?]
+	>=dev-haskell/diff-0.2.0:=[profile?]
+	>=dev-haskell/mtl-2.2.1:=[profile?]
+	>=dev-haskell/parsec-3.0:=[profile?]
+	>=dev-haskell/quickcheck-2.7.4:2=[template_haskell,profile?]
+	dev-haskell/regex-tdfa:=[profile?]
+	dev-haskell/semigroups:=[profile?]
+	>=dev-lang/ghc-7.8.2:=
+	>=dev-haskell/cabal-1.18.1.3 <dev-haskell/cabal-2.5
+	dev-libs/gmp[static-libs]
+	dev-libs/libffi[static-libs]
+"
+
+src_install() {
+	cabal_src_install
+	# TODO(crbug.com/1000756): Add support for manpage build process (requires pandoc)
+	doman "${FILESDIR}/${PN}.1"
+}
diff --git a/dev-util/tclint/Manifest b/dev-util/tclint/Manifest
deleted file mode 100644
index 1720cd9..0000000
--- a/dev-util/tclint/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tclint-2020.10.29.zip 9636210 BLAKE2B 693fbd6114cfdde665c6cc46a1d8c22db2d21f5565086b6160f3225671bd74275d305f718b2d456f0b007e35d95a87325116c28376de4a3e0dd3ac8df8faebe3 SHA512 b4b9cdb7ccfd266d55f4fc45235ab00a6381c79c00b9ac09f6482e2a525f0f4a3564dc11c2642ce79d886df1dfd0e36608184b3cba6b4104f4561d5a389c0138
diff --git a/dev-util/tclint/tclint-2020.10.29-r1.ebuild b/dev-util/tclint/tclint-2020.10.29-r1.ebuild
deleted file mode 100644
index eaa7a66..0000000
--- a/dev-util/tclint/tclint-2020.10.29-r1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-# When the time comes to roll to a new version:
-# 1. Download the new binary by cipd command manually
-# 2. Replace the version in this script
-# 3. Zip the file
-# 4. Upload the zip as
-# gs://chromeos-localmirror/distfiles/linux-amd64:${version}.zip
-# 5. Set the ACL of the file to public-read
-# 6. Update manifest of the package by ebuild manifest command.
-
-# released-20201029
-TCLINT_VERSION="sjRn9w13x8uDUepDyVXBmIdIjqmF0M2cw6QxTiUIihYC"
-SRC_URI="cipd://chromiumos/infra/tclint/linux-amd64:${TCLINT_VERSION} -> ${P}.zip"
-
-DESCRIPTION="Linter for Chrome OS test configuration data"
-HOMEPAGE="https://chromium.googlesource.com/infra/infra/+/HEAD/go/src/infra/cros/cmd/tclint"
-RESTRICT="mirror"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="-* amd64"
-IUSE=""
-
-S="${WORKDIR}"
-
-src_install() {
-	dobin "${S}/tclint"
-}
diff --git a/dev-util/test-exec-server/test-exec-server-0.0.1-r11.ebuild b/dev-util/test-exec-server/test-exec-server-0.0.1-r11.ebuild
deleted file mode 100644
index 983065c..0000000
--- a/dev-util/test-exec-server/test-exec-server-0.0.1-r11.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="48236dd245bb804845d8d7d6309f1769c76cc2e8"
-CROS_WORKON_TREE="e1ccefbfeef648c4212cf53a99e488290712a30d"
-CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
-CROS_WORKON_LOCALNAME=("../platform/dev")
-CROS_WORKON_SUBTREE="src/chromiumos/test/execution"
-
-inherit cros-go cros-workon
-
-DESCRIPTION="Test execution server for running tests and capturing results"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/execution"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-CROS_GO_WORKSPACE=(
-	"${S}"
-)
-
-CROS_GO_BINARIES=(
-	"chromiumos/test/execution/cmd/testexecserver"
-)
-
-CROS_GO_TEST=(
-	"chromiumos/test/execution/cmd/testexecserver/..."
-)
-
-CROS_GO_VET=(
-	"${CROS_GO_TEST[@]}"
-)
-
-DEPEND="
-	chromeos-base/tast-cmd:=
-	chromeos-base/tast-proto
-	dev-util/lro-server
-"
-RDEPEND="${DEPEND}"
diff --git a/dev-util/test-exec-server/test-exec-server-9999.ebuild b/dev-util/test-exec-server/test-exec-server-9999.ebuild
deleted file mode 100644
index 2841ded..0000000
--- a/dev-util/test-exec-server/test-exec-server-9999.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
-CROS_WORKON_LOCALNAME=("../platform/dev")
-CROS_WORKON_SUBTREE="src/chromiumos/test/execution"
-
-inherit cros-go cros-workon
-
-DESCRIPTION="Test execution server for running tests and capturing results"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/execution"
-
-LICENSE="BSD-Google"
-KEYWORDS="~*"
-IUSE=""
-
-CROS_GO_WORKSPACE=(
-	"${S}"
-)
-
-CROS_GO_BINARIES=(
-	"chromiumos/test/execution/cmd/testexecserver"
-)
-
-CROS_GO_TEST=(
-	"chromiumos/test/execution/cmd/testexecserver/..."
-)
-
-CROS_GO_VET=(
-	"${CROS_GO_TEST[@]}"
-)
-
-DEPEND="
-	chromeos-base/tast-cmd:=
-	chromeos-base/tast-proto
-	dev-util/lro-server
-"
-RDEPEND="${DEPEND}"
diff --git a/dev-util/test-plan/test-plan-0.0.1-r10.ebuild b/dev-util/test-plan/test-plan-0.0.1-r10.ebuild
deleted file mode 100644
index 229d4df..0000000
--- a/dev-util/test-plan/test-plan-0.0.1-r10.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="388f7bf6253dcc8266ab5557aad0159ed3553ffd"
-CROS_WORKON_TREE="55726521578abdb261bd7fc4f14694a1224bdcd5"
-CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
-CROS_WORKON_LOCALNAME=("../platform/dev")
-CROS_WORKON_SUBTREE="src/chromiumos/test/plan"
-
-inherit cros-go cros-workon
-
-DESCRIPTION="A tool to generate ChromeOS CoverageRule protos from SourceTestPlan protos."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/plan"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-CROS_GO_BINARIES=(
-	"chromiumos/test/plan/cmd/testplan.go"
-)
-
-CROS_GO_TEST=(
-	"chromiumos/test/plan/..."
-)
-
-CROS_GO_VET=(
-	"${CROS_GO_TEST[@]}"
-)
-
-CROS_GO_VERSION="${PF}"
-
-DEPEND="
-	chromeos-base/cros-config-api
-	dev-go/glog
-	dev-go/luci-go-common
-	dev-go/maruel-subcommands
-	dev-go/protobuf
-"
-RDEPEND="${DEPEND}"
diff --git a/dev-util/test-plan/test-plan-0.0.1-r21.ebuild b/dev-util/test-plan/test-plan-0.0.1-r21.ebuild
new file mode 100644
index 0000000..d6773c9
--- /dev/null
+++ b/dev-util/test-plan/test-plan-0.0.1-r21.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="0d757d6ba9e8092e67515cae6a8215331c1b41dd"
+CROS_WORKON_TREE="de50d6ec0a347802864cdf378ff2a970ee691ab7"
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME=("../platform/dev")
+CROS_WORKON_SUBTREE="src/chromiumos/test/plan"
+
+inherit cros-go cros-workon
+
+DESCRIPTION="A tool to generate ChromeOS CoverageRule protos from SourceTestPlan protos."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/plan"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+CROS_GO_BINARIES=(
+	"chromiumos/test/plan/cmd/testplan.go"
+)
+
+CROS_GO_TEST=(
+	"chromiumos/test/plan/..."
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+CROS_GO_VERSION="${PF}"
+
+DEPEND="
+	chromeos-base/cros-config-api
+	dev-go/glog
+	dev-go/luci-go-common
+	dev-go/maruel-subcommands
+	dev-go/protobuf
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+	# Disable CGO to produce a static executable that can
+	# be copied into Docker containers.
+	export CGO_ENABLED=0
+
+	default
+}
diff --git a/dev-util/test-plan/test-plan-9999.ebuild b/dev-util/test-plan/test-plan-9999.ebuild
index 7309d8d..dffb983 100644
--- a/dev-util/test-plan/test-plan-9999.ebuild
+++ b/dev-util/test-plan/test-plan-9999.ebuild
@@ -37,3 +37,11 @@
 	dev-go/protobuf
 "
 RDEPEND="${DEPEND}"
+
+src_prepare() {
+	# Disable CGO to produce a static executable that can
+	# be copied into Docker containers.
+	export CGO_ENABLED=0
+
+	default
+}
diff --git a/dev-util/test-services/test-services-0.0.1-r47.ebuild b/dev-util/test-services/test-services-0.0.1-r47.ebuild
new file mode 100644
index 0000000..b2cc507
--- /dev/null
+++ b/dev-util/test-services/test-services-0.0.1-r47.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="4c9b0bff59adfa276da2c9daa2b3143ea8b6b09c"
+CROS_WORKON_TREE="3c054d108afe656ffecc42af955b5e553d6f62d0"
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME="../platform/dev"
+CROS_WORKON_SUBTREE="src"
+
+inherit cros-workon
+
+DESCRIPTION="Collection of test services installed into the cros_sdk env"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+# TODO(b/182898188): Re-add test-plan once proto changes have been integrated.
+DEPEND="
+	dev-util/cros-provision
+	dev-util/testlabenv-local
+	dev-util/cros-test
+	dev-util/dut-server
+"
+RDEPEND="
+	${DEPEND}
+	!<chromeos-base/test-server-0.0.1-r49
+	"
diff --git a/dev-util/test-services/test-services-9999.ebuild b/dev-util/test-services/test-services-9999.ebuild
new file mode 100644
index 0000000..1daac56
--- /dev/null
+++ b/dev-util/test-services/test-services-9999.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME="../platform/dev"
+CROS_WORKON_SUBTREE="src"
+
+inherit cros-workon
+
+DESCRIPTION="Collection of test services installed into the cros_sdk env"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+IUSE=""
+
+# TODO(b/182898188): Re-add test-plan once proto changes have been integrated.
+DEPEND="
+	dev-util/cros-provision
+	dev-util/testlabenv-local
+	dev-util/cros-test
+	dev-util/dut-server
+"
+RDEPEND="
+	${DEPEND}
+	!<chromeos-base/test-server-0.0.1-r49
+	"
diff --git a/dev-util/testlabenv-local/testlabenv-local-0.0.1-r3.ebuild b/dev-util/testlabenv-local/testlabenv-local-0.0.1-r3.ebuild
new file mode 100644
index 0000000..8a644fe
--- /dev/null
+++ b/dev-util/testlabenv-local/testlabenv-local-0.0.1-r3.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="ade4bed969f27b7143ca671f95cb07738e9d49ef"
+CROS_WORKON_TREE="4b946e9c995155a84021703c48444873d8061a9e"
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME=("../platform/dev")
+CROS_WORKON_SUBTREE="src/chromiumos/test/lab/local"
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Local test lab environment support (local DUT setup/wiring support for test execution)"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/lab/local"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE=""
+
+CROS_GO_WORKSPACE=(
+	"${S}"
+)
+
+CROS_GO_BINARIES=(
+	"chromiumos/test/lab/local/cmd/inventoryserver"
+)
+
+CROS_GO_TEST=(
+	"chromiumos/test/lab/local/cmd/inventoryserver/..."
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+DEPEND="
+	dev-go/genproto-rpc
+	dev-go/mock
+	dev-go/protobuf
+	chromeos-base/cros-config-api
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-util/testlabenv-local/testlabenv-local-9999.ebuild b/dev-util/testlabenv-local/testlabenv-local-9999.ebuild
new file mode 100644
index 0000000..680c909
--- /dev/null
+++ b/dev-util/testlabenv-local/testlabenv-local-9999.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_PROJECT="chromiumos/platform/dev-util"
+CROS_WORKON_LOCALNAME=("../platform/dev")
+CROS_WORKON_SUBTREE="src/chromiumos/test/lab/local"
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Local test lab environment support (local DUT setup/wiring support for test execution)"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/lab/local"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+IUSE=""
+
+CROS_GO_WORKSPACE=(
+	"${S}"
+)
+
+CROS_GO_BINARIES=(
+	"chromiumos/test/lab/local/cmd/inventoryserver"
+)
+
+CROS_GO_TEST=(
+	"chromiumos/test/lab/local/cmd/inventoryserver/..."
+)
+
+CROS_GO_VET=(
+	"${CROS_GO_TEST[@]}"
+)
+
+DEPEND="
+	dev-go/genproto-rpc
+	dev-go/mock
+	dev-go/protobuf
+	chromeos-base/cros-config-api
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-util/toolchain-utils/toolchain-utils-0.0.1-r722.ebuild b/dev-util/toolchain-utils/toolchain-utils-0.0.1-r722.ebuild
deleted file mode 100644
index 47f3028..0000000
--- a/dev-util/toolchain-utils/toolchain-utils-0.0.1-r722.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="52f7bb64f1b8dbc617b3c8bd21ce3a10f36b786b"
-CROS_WORKON_TREE="e911bdbba91a2d91d761b62a3d79ac8fd2c009dd"
-CROS_WORKON_PROJECT="chromiumos/third_party/toolchain-utils"
-CROS_WORKON_LOCALNAME="toolchain-utils"
-
-inherit cros-workon
-
-DESCRIPTION="Compilation and runtime tests for toolchain"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/toolchain-utils/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-	app-misc/pax-utils
-	dev-lang/python
-	sys-devel/binutils
-"
-
-src_install() {
-	local tc_dir="/usr/$(get_libdir)/${PN}"
-	local dit_dir="${tc_dir}/debug_info_test"
-
-	insinto ${tc_dir}
-	doins -r debug_info_test
-
-	fperms a+x ${dit_dir}/debug_info_test.py
-
-	dosym ${dit_dir}/debug_info_test.py /usr/bin/debug_info_test
-
-	newbin afdo_redaction/redact_profile.py redact_textual_afdo_profile
-
-	newbin afdo_redaction/remove_indirect_calls.py remove_indirect_calls
-
-	newbin afdo_redaction/remove_cold_functions.py remove_cold_functions
-}
diff --git a/dev-util/toolchain-utils/toolchain-utils-0.0.1-r761.ebuild b/dev-util/toolchain-utils/toolchain-utils-0.0.1-r761.ebuild
new file mode 100644
index 0000000..c5157d7
--- /dev/null
+++ b/dev-util/toolchain-utils/toolchain-utils-0.0.1-r761.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="a7a19342ac9fe044cbf45a3aa618defca9db413f"
+CROS_WORKON_TREE="f6051da037280ebe193e3ef6d55dbebe33054860"
+CROS_WORKON_PROJECT="chromiumos/third_party/toolchain-utils"
+CROS_WORKON_LOCALNAME="toolchain-utils"
+
+inherit cros-workon
+
+DESCRIPTION="Compilation and runtime tests for toolchain"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/toolchain-utils/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+	app-misc/pax-utils
+	dev-lang/python
+	sys-devel/binutils
+"
+
+src_install() {
+	local tc_dir="/usr/$(get_libdir)/${PN}"
+	local dit_dir="${tc_dir}/debug_info_test"
+
+	insinto ${tc_dir}
+	doins -r debug_info_test
+
+	fperms a+x ${dit_dir}/debug_info_test.py
+
+	dosym ${dit_dir}/debug_info_test.py /usr/bin/debug_info_test
+
+	newbin afdo_redaction/redact_profile.py redact_textual_afdo_profile
+
+	newbin afdo_redaction/remove_indirect_calls.py remove_indirect_calls
+
+	newbin afdo_redaction/remove_cold_functions.py remove_cold_functions
+}
diff --git a/dev-util/turbostat/turbostat-5.10.46-r2263.ebuild b/dev-util/turbostat/turbostat-5.10.46-r2263.ebuild
deleted file mode 100644
index 8b838ce..0000000
--- a/dev-util/turbostat/turbostat-5.10.46-r2263.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="6edc6175aeacd80e1b1a432284ca2be14cdf1dd5"
-CROS_WORKON_TREE=("3202862f18c3bfd4f166d01f916bce7bcee6894d" "77108e315e621449fc0ca943e5bdf79aa8744ef8" "82f471a1f381850d569b3edbfa0ba3ec42139f56")
-CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
-CROS_WORKON_LOCALNAME="kernel/v5.10"
-CROS_WORKON_EGIT_BRANCH="chromeos-5.10"
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_OUTOFTREE_BUILD=1
-# Narrow the workon scope to just files referenced by the turbostat
-# Makefile:
-# https://chromium.googlesource.com/chromiumos/third_party/kernel/+/chromeos-4.14/tools/power/x86/turbostat/Makefile#12
-CROS_WORKON_SUBTREE="arch/x86/include/asm tools/include tools/power/x86/turbostat"
-
-inherit cros-sanitizers cros-workon toolchain-funcs
-
-HOMEPAGE="https://www.kernel.org/"
-DESCRIPTION="Intel processor C-state and P-state reporting tool"
-
-LICENSE="GPL-2"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="-asan"
-
-RDEPEND="sys-libs/libcap:="
-
-DEPEND="${RDEPEND}"
-
-domake() {
-	emake -C tools/power/x86/turbostat \
-		BUILD_OUTPUT="$(cros-workon_get_build_dir)" DESTDIR="${D}" \
-		CC="$(tc-getCC)" "$@"
-}
-
-src_configure() {
-	sanitizers-setup-env
-	default
-}
-
-src_compile() {
-	domake
-}
-
-src_install() {
-	domake install
-}
diff --git a/dev-util/turbostat/turbostat-5.10.72-r2291.ebuild b/dev-util/turbostat/turbostat-5.10.72-r2291.ebuild
new file mode 100644
index 0000000..568e635
--- /dev/null
+++ b/dev-util/turbostat/turbostat-5.10.72-r2291.ebuild
@@ -0,0 +1,48 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="ba2eca03f6db482642402bd8914e97873ac66596"
+CROS_WORKON_TREE=("d05a676255f38f7f7d77997a116b0bba4327b45e" "fa703ad766fda3d500b8114d3ad3cd7aa8babab6" "82f471a1f381850d569b3edbfa0ba3ec42139f56")
+CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
+CROS_WORKON_LOCALNAME="kernel/v5.10"
+CROS_WORKON_EGIT_BRANCH="chromeos-5.10"
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_OUTOFTREE_BUILD=1
+# Narrow the workon scope to just files referenced by the turbostat
+# Makefile:
+# https://chromium.googlesource.com/chromiumos/third_party/kernel/+/chromeos-4.14/tools/power/x86/turbostat/Makefile#12
+CROS_WORKON_SUBTREE="arch/x86/include/asm tools/include tools/power/x86/turbostat"
+
+inherit cros-sanitizers cros-workon toolchain-funcs
+
+HOMEPAGE="https://www.kernel.org/"
+DESCRIPTION="Intel processor C-state and P-state reporting tool"
+
+LICENSE="GPL-2"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="-asan"
+
+RDEPEND="sys-libs/libcap:="
+
+DEPEND="${RDEPEND}"
+
+domake() {
+	emake -C tools/power/x86/turbostat \
+		BUILD_OUTPUT="$(cros-workon_get_build_dir)" DESTDIR="${D}" \
+		CC="$(tc-getCC)" "$@"
+}
+
+src_configure() {
+	sanitizers-setup-env
+	default
+}
+
+src_compile() {
+	domake
+}
+
+src_install() {
+	domake install
+}
diff --git a/eclass/arc-build.eclass b/eclass/arc-build.eclass
index 4e74e3e..e8d5502 100644
--- a/eclass/arc-build.eclass
+++ b/eclass/arc-build.eclass
@@ -107,6 +107,8 @@
 		# TODO(b/161353194,b/181375275) If clang is uprevved, please
 		# remove this filter and see if the build succeeds.
 		filter-flags -march=tremont -march=alderlake
+		# Ignore unwindlib flag for ARC++.
+		filter-flags --unwindlib=libunwind
 
 		# multilib.eclass does not use CFLAGS_${DEFAULT_ABI}, but
 		# we need to add some flags valid only for amd64, so we trick
@@ -178,64 +180,28 @@
 	fi
 }
 
-# Copied from the upstream meson.eclass. The upstream cross-file does not
-# set needs_exe_wrapper, and I don't see how to automatically detect that
-# for upstream.
+# This is composed after the cross file generated in meson.eclass, and
+# values here override values there.
 arc-build-create-cross-file() {
 	# Reference: http://mesonbuild.com/Cross-compilation.html
 
-	# system roughly corresponds to uname -s (lowercase)
-	local system=unknown
-	case ${CHOST} in
-		*-aix*)          system=aix ;;
-		*-cygwin*)       system=cygwin ;;
-		*-darwin*)       system=darwin ;;
-		*-freebsd*)      system=freebsd ;;
-		*-linux*)        system=linux ;;
-		mingw*|*-mingw*) system=windows ;;
-		*-solaris*)      system=sunos ;;
-	esac
-
-	local cpu_family=$(tc-arch)
-	case ${cpu_family} in
-		amd64) cpu_family=x86_64 ;;
-		arm64) cpu_family=aarch64 ;;
-	esac
-
-	# This may require adjustment based on CFLAGS
-	local cpu=${CHOST%%-*}
-
 	ARC_CROSS_FILE="${T}/arc-meson.${CHOST}.${ABI}"
+
+	# Explicitly prohibit meson from running cross-built binaries.
+	#
+	# This is done by setting `needs_exe_wrapper` to true and
+	# `exe_wrapper` to the empty string.
+	#
+	# If at some point a wrapper is written that can run ARC
+	# binaries this should be updated.
+
 	cat > "${ARC_CROSS_FILE}" <<-EOF
 	[binaries]
-	ar = $(_meson_env_array "$(tc-getAR)")
-	c = $(_meson_env_array "$(tc-getCC)")
-	cpp = $(_meson_env_array "$(tc-getCXX)")
-	fortran = $(_meson_env_array "$(tc-getFC)")
-	llvm-config = '$(tc-getPROG LLVM_CONFIG llvm-config)'
-	objc = $(_meson_env_array "$(tc-getPROG OBJC cc)")
-	objcpp = $(_meson_env_array "$(tc-getPROG OBJCXX c++)")
-	pkgconfig = '$(tc-getPKG_CONFIG)'
-	strip = $(_meson_env_array "$(tc-getSTRIP)")
+	exe_wrapper = ''
 
 	[properties]
-	c_args = $(_meson_env_array "${CFLAGS} ${CPPFLAGS}")
-	c_link_args = $(_meson_env_array "${CFLAGS} ${LDFLAGS}")
-	cpp_args = $(_meson_env_array "${CXXFLAGS} ${CPPFLAGS}")
-	cpp_link_args = $(_meson_env_array "${CXXFLAGS} ${LDFLAGS}")
-	fortran_args = $(_meson_env_array "${FCFLAGS}")
-	fortran_link_args = $(_meson_env_array "${FCFLAGS} ${LDFLAGS}")
-	objc_args = $(_meson_env_array "${OBJCFLAGS} ${CPPFLAGS}")
-	objc_link_args = $(_meson_env_array "${OBJCFLAGS} ${LDFLAGS}")
-	objcpp_args = $(_meson_env_array "${OBJCXXFLAGS} ${CPPFLAGS}")
-	objcpp_link_args = $(_meson_env_array "${OBJCXXFLAGS} ${LDFLAGS}")
 	needs_exe_wrapper = true
 
-	[host_machine]
-	system = '${system}'
-	cpu_family = '${cpu_family}'
-	cpu = '${cpu}'
-	endian = '$(tc-endian)'
 	EOF
 }
 
diff --git a/eclass/cros-board.eclass b/eclass/cros-board.eclass
index d4655e4..a8d7f01 100644
--- a/eclass/cros-board.eclass
+++ b/eclass/cros-board.eclass
@@ -22,19 +22,46 @@
 *) die "unsupported EAPI (${EAPI}) in eclass (${ECLASS})" ;;
 esac
 
+# This eclass is being deprecated and should not be used in new
+# ebuilds.  Below is a prune-list of ebuilds that need migrated away
+# from this eclass.  Do not add new ebuilds to this list.
+case "${CATEGORY}/${PN}" in
+	chromeos-base/chromeos-assets ) ;;
+	chromeos-base/chromeos-initramfs ) ;;
+	chromeos-base/gestures-conf ) ;;
+	net-misc/chrony ) ;;
+	sys-apps/systemd ) ;;
+
+	# cros-kernel2.eclass uses cros-board.eclass.  Exempt all kernel
+	# packages for now.
+	sys-kernel/* ) ;;
+
+	# Disallow all other packages.
+	* )
+		eerror
+		eerror "cros-board.eclass is deprecated, and will eventually be removed."
+		eerror "It should not be used in any new packages."
+		eerror "Please remove cros-board from the inherit line in your ebuild."
+		eerror "See https://chromium.googlesource.com/chromiumos/docs/+/HEAD/os_config.md#cros_board_eclass for more info."
+		eerror
+
+		die "${CATEGORY}/${PN} is not allowed to use cros-board.eclass."
+		;;
+esac
+
 BOARD_USE_PREFIX="board_use_"
 
 # Obsolete boards' names are commented-out but retained in this list so
 # they won't be accidentally recycled in the future.
 ALL_BOARDS=(
-	acorn
+	#acorn
 	adlrvp
 	ambassador
-	amd64-corei7
+	#amd64-corei7
 	#amd64-drm
 	amd64-generic
 	amd64-generic-cheets
-	amd64-generic-goofy
+	#amd64-generic-goofy
 	amd64-generic_embedded
 	#amd64-generic_freon
 	#amd64-generic_mobbuild
@@ -42,9 +69,8 @@
 	#anglar
 	aplrvp
 	#app-shell-panther
-	aries
-	arion
-	arkham
+	#aries
+	#arkham
 	arm-generic
 	#arm-generic_freon
 	arm64-generic
@@ -52,48 +78,48 @@
 	asuka
 	asurada
 	atlas
-	atlas-blueznext
+	atlas-connectivitynext
 	atlas-kernelnext
-	atlas-kvm
+	#atlas-kvm
 	aurora
 	aurora-borealis
 	auron
 	auron_paine
-	auron_pearlvalley
+	#auron_pearlvalley
 	auron_yuna
 	banjo
 	banon
-	bayleybay
+	#bayleybay
 	beaglebone
 	beaglebone_servo
-	beaglebone_vv1
-	beltino
+	#beaglebone_vv1
+	#beltino
 	betty
 	betty-arc-r
 	betty-arc-s
 	betty-arc64
-	betty-arcmaster
-	betty-arcnext
-	betty-arcvm-master
+	#betty-arcmaster
+	#betty-arcnext
+	#betty-arcvm-master
 	#betty-arcvm-pi
 	betty-pi-arc
 	#betty-qt-arc
 	#bettyvirgl
-	blackwall
+	#blackwall
 	bob
-	bob-arc64
-	bobcat
-	bolt
+	#bobcat
+	#bolt
 	borealis
-	bruteus
+	brask
+	#bruteus
 	brya
 	brya-manatee
 	bubs
 	buddy
 	buddy-cfm
 	#buranku
-	butterfly
-	bwtm2
+	#butterfly
+	#bwtm2
 	#bxt-rvp
 	candy
 	capri
@@ -105,52 +131,51 @@
 	caroline-kernelnext
 	caroline-ndktranslation
 	caroline-userdebug
-	cardhu
+	#cardhu
 	cave
 	celes
-	celes-cheets
+	#celes-cheets
 	chell
-	chell-cheets
+	#chell-cheets
 	cherry
-	cheza
-	cheza-freedreno
-	cheza64
-	cheza64-freedreno
-	chiron
+	#cheza
+	#cheza-freedreno
+	#cheza64
+	#cheza64-freedreno
 	#chronos
-	cid
-	clapper
-	cmlrvp
+	#cid
+	#clapper
+	#cmlrvp
 	#cnlrvp
 	cobblepot
 	coral
-	coral-kernelnext
-	cosmos
-	cranky
+	#coral-kernelnext
+	#cosmos
+	#cranky
 	cyan
 	cyan-cheets
 	cyan-kernelnext
-	cyclone
-	daisy
+	#cyclone
+	#daisy
 	#daisy-drm
-	daisy_embedded
-	daisy_skate
-	daisy_snow
-	daisy_spring
-	daisy_winter
-	dalmore
-	danger
-	danger_embedded
+	#daisy_embedded
+	#daisy_skate
+	#daisy_snow
+	#daisy_spring
+	#daisy_winter
+	#dalmore
+	#danger
+	#danger_embedded
 	dedede
 	deltaur
 	#derwent
 	#dragonegg
 	drallion
-	duck
+	#duck
 	edgar
 	elm
 	elm-arc64
-	elm-cheets
+	#elm-cheets
 	elm-kernelnext
 	#emeraldlake2
 	endeavour
@@ -158,33 +183,33 @@
 	#envoy-jerry
 	eve
 	#eve-arcdual
-	eve-arcnext
+	#eve-arcnext
 	eve-arc-r
-	eve-arcvm
-	eve-arcvm-mesa-virgl-next
+	#eve-arcvm
+	#eve-arcvm-mesa-virgl-next
 	eve-arm64
 	#eve-bertha
-	eve-campfire
+	#eve-campfire
 	eve-kernelnext
 	eve-kvm
 	eve-lacros
-	eve-manatee
+	#eve-manatee
 	eve-swap
 	eve-userdebug
 	excelsior
 	expresso
-	falco
-	falco_gles
-	falco_li
-	fb1
+	#falco
+	#falco_gles
+	#falco_li
+	#fb1
 	fizz
-	fizz-accelerator
+	#fizz-accelerator
 	fizz-cfm
 	fizz-labstation
 	fizz-moblab
 	fizz-satlab
-	flapjack
-	foster
+	#flapjack
+	#foster
 	#fox
 	#fox_baskingridge
 	#fox_wtm1
@@ -192,22 +217,21 @@
 	galaxy
 	gale
 	gandof
-	genesis
+	#genesis
 	#gizmo
 	glados
-	glados-cheets
+	#glados-cheets
 	glimmer
-	glimmer-cheets
+	#glimmer-cheets
 	glkrvp
 	gnawty
 	gonzo
-	gru
+	#gru
 	grunt
-	grunt-arc64
 	grunt-arc-r
 	grunt-kernelnext
 	guado
-	guado-accelerator
+	#guado-accelerator
 	guado-cfm
 	guado-macrophage
 	guado_moblab
@@ -220,21 +244,20 @@
 	hatch
 	hatch-arc-r
 	hatch-arc-r-ack
-	hatch-arc-r-signed
+	#hatch-arc-r-signed
 	hatch-arc-r-userdebug
 	hatch-arc-s
-	hatch-blueznext
+	hatch-connectivitynext
 	hatch-borealis
 	hatch-diskswap
 	hatch-kernelnext
 	hatch-manatee
 	heli
 	herobrine
-	hsb
+	#hsb
 	#iclrvp
-	ironhide
+	#ironhide
 	jacuzzi
-	jacuzzi-arc64
 	jacuzzi-kernelnext
 	#jadeite
 	#jaguar
@@ -242,7 +265,7 @@
 	#kahlee
 	kalista
 	kalista-cfm
-	kayle
+	#kayle
 	kblrvp
 	keeby
 	kefka
@@ -251,69 +274,68 @@
 	kevin
 	kevin64
 	#kevin-arcnext
-	kevin-arc64
 	#kevin-bertha
-	kevin-tpm2
+	kevin-kernelnext
+	#kevin-tpm2
 	kevin-userdebug
-	kidd
+	#kidd
 	#kiev
 	kip
-	klang
+	#klang
 	kukui
 	kukui-arc-r
-	kukui-arc-r-signed
-	kukui-arc64
+	#kukui-arc-r-signed
 	kukui-kernelnext
-	kumo
+	#kumo
 	kunimitsu
 	lakitu
-	lakitu-arm64
-	lakitu-gpu
+	#lakitu-arm64
+	#lakitu-gpu
 	#lakitu_mobbuild
-	lakitu-nc
-	lakitu_next
-	lakitu-slice
-	lakitu-st
+	#lakitu-nc
+	#lakitu_next
+	#lakitu-slice
+	#lakitu-st
 	lars
 	lars-kernelnext
-	laser
+	#laser
 	lasilla-ground
 	#lasilla-sky
-	lassen
+	#lassen
 	#lemmings
 	#lemmings_external
-	leon
-	link
+	#leon
+	#link
 	littlejoe
 	loonix
 	lulu
-	lulu-cheets
-	lumpy
+	#lulu-cheets
+	#lumpy
 	#macchiato-ground
 	majolica
-	mancomb
-	mappy
+	#mancomb
+	#mappy
 	#mappy-envoy
-	mappy_flashstation
-	marble
-	mccloud
+	#mappy_flashstation
+	#marble
+	#mccloud
 	#meowth
 	metis
-	minnowboard
-	mipseb-n32-generic
-	mipseb-n64-generic
-	mipseb-o32-generic
-	mipsel-n32-generic
-	mipsel-n64-generic
-	mipsel-o32-generic
+	#minnowboard
+	#mipseb-n32-generic
+	#mipseb-n64-generic
+	#mipseb-o32-generic
+	#mipsel-n32-generic
+	#mipsel-n64-generic
+	#mipsel-o32-generic
 	mistral
 	moblab-generic-vm
-	monroe
-	moose
+	#monroe
+	#moose
 	mushu
 	nami
 	nami-kernelnext
-	nami-kvm
+	#nami-kvm
 	nautilus
 	#nefario
 	#newbie
@@ -323,48 +345,50 @@
 	novato
 	novato-arc64
 	novato-arcnext
-	nyan
-	nyan_big
-	nyan_blaze
+	#nyan
+	#nyan_big
+	#nyan_blaze
 	#nyan_blaze-freon
 	#nyan_freon
-	nyan_kitty
+	#nyan_kitty
 	oak
-	oak-cheets
+	#oak-cheets
 	octavius
 	octopus
+	octopus-arc-r
+	octopus-kernelnext
 	#optimus
 	orco
 	palkia
-	panda
-	panther
-	panther_embedded
-	panther_goofy
-	panther_moblab
-	parrot
-	parrot32
-	parrot64
-	parrot_ivb
+	#panda
+	#panther
+	#panther_embedded
+	#panther_goofy
+	#panther_moblab
+	#parrot
+	#parrot32
+	#parrot64
+	#parrot_ivb
 	#parry
 	#pbody
-	peach
-	peach_kirby
-	peach_pi
-	peach_pit
+	#peach
+	#peach_kirby
+	#peach_pi
+	#peach_pit
 	#pedra
-	peppy
-	plaso
+	#peppy
+	#plaso
 	poppy
-	ppcbe-32-generic
-	ppcbe-64-generic
-	ppcle-32-generic
-	ppcle-64-generic
+	#ppcbe-32-generic
+	#ppcbe-64-generic
+	#ppcle-32-generic
+	#ppcle-64-generic
 	puff
 	puff-borealis
 	puff-macrophage
 	puff-moblab
-	puppy
-	purin
+	#puppy
+	#purin
 	pyro
 	quawks
 	rainier
@@ -372,7 +396,7 @@
 	rammus
 	rammus-arc-r
 	rammus-arc-r-userdebug
-	raspberrypi
+	#raspberrypi
 	reef
 	relm
 	reks
@@ -381,53 +405,52 @@
 	#ricochet
 	rikku
 	rikku-cfm
-	rizer
+	#rizer
 	romer
-	rotor
-	rowan
-	rush
-	rush_ryu
-	sama5d3
+	#rotor
+	#rowan
+	#rush
+	#rush_ryu
+	#sama5d3
 	samus
-	samus-cheets
+	#samus-cheets
 	#samus-kernelnext
 	sand
 	sarien
-	sarien-arc64
-	sarien-kvm
+	sarien-kernelnext
+	#sarien-kvm
 	scarlet
-	scarlet-arc64
 	#scarlet-arcnext
 	senor
 	sentry
 	setzer
 	shadowkeep
-	shogun
+	#shogun
 	sklrvp
 	#slippy
-	smaug
-	smaug-cheets
-	smaug-kasan
+	#smaug
+	#smaug-cheets
+	#smaug-kasan
 	snappy
 	snappy-kernelnext
-	sonic
+	#sonic
 	soraka
 	soraka-libcamera
 	#space
 	squawks
-	stelvio
-	storm
-	storm_nand
-	stout
+	#stelvio
+	#storm
+	#storm_nand
+	#stout
 	#stout32
-	strago
+	#strago
 	strongbad
-	stumpy
-	stumpy_moblab
-	stumpy_pico
+	#stumpy
+	#stumpy_moblab
+	#stumpy_pico
 	sumo
 	swanky
-	tails
+	#tails
 	tatl
 	tael
 	#tegra2
@@ -439,38 +462,38 @@
 	#tegra2_kaen
 	#tegra2_seaboard
 	#tegra2_wario
-	tegra3-generic
+	#tegra3-generic
 	terra
 	tglrvp
 	tidus
-	tricky
+	#tricky
 	trogdor
 	trogdor-arc-r
 	trogdor-kernelnext
 	trogdor64
 	trogdor64-manatee
 	ultima
-	umaro
+	#umaro
 	#urara
 	veyron
 	veyron_fievel
-	veyron_gus
+	#veyron_gus
 	veyron_jaq
 	veyron_jerry
 	#veyron_jerry-kernelnext
 	veyron_mickey
 	veyron_mighty
 	veyron_minnie
-	veyron_minnie-cheets
+	#veyron_minnie-cheets
 	#veyron_minnie-kernelnext
-	veyron_nicky
-	veyron_pinky
-	veyron_remy
+	#veyron_nicky
+	#veyron_pinky
+	#veyron_remy
 	veyron_rialto
-	veyron_shark
+	#veyron_shark
 	veyron_speedy
-	veyron_speedy-cheets
-	veyron_thea
+	#veyron_speedy-cheets
+	#veyron_thea
 	veyron_tiger
 	viking
 	viking-poc2
@@ -479,38 +502,38 @@
 	volteer-kernelnext
 	volteer-manatee
 	#waluigi
-	whirlwind
-	whlrvp
+	#whirlwind
+	#whlrvp
 	winky
 	wizpig
-	wolf
+	#wolf
 	#wooten
 	wristpin
-	wsb
-	x30evb
+	#wsb
+	#x30evb
 	x32-generic
-	x86-agz
-	x86-alex
-	x86-alex32
-	x86-alex32_he
-	x86-alex_he
-	x86-alex_hubble
-	x86-dogfood
+	#x86-agz
+	#x86-alex
+	#x86-alex32
+	#x86-alex32_he
+	#x86-alex_he
+	#x86-alex_hubble
+	#x86-dogfood
 	#x86-drm
 	#x86-fruitloop
 	x86-generic
 	x86-generic_embedded
 	#x86-generic_freon
-	x86-mario
-	x86-mario64
+	#x86-mario
+	#x86-mario64
 	#x86-pineview
 	#x86-wayland
-	x86-zgb
-	x86-zgb32
-	x86-zgb32_he
-	x86-zgb_he
-	zako
-	zoombini
+	#x86-zgb
+	#x86-zgb32
+	#x86-zgb32_he
+	#x86-zgb_he
+	#zako
+	#zoombini
 	zork
 	zork-arc-r
 	zork-borealis
diff --git a/eclass/cros-config-bsp.eclass b/eclass/cros-config-bsp.eclass
new file mode 100644
index 0000000..2557348
--- /dev/null
+++ b/eclass/cros-config-bsp.eclass
@@ -0,0 +1,78 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+#
+# Standardizes the setup for chromeos-config-bsp ebuilds across
+# all overlays based on config managed in the project specific
+# repos (located under src/project).
+
+# Check for EAPI 7+
+case "${EAPI:-0}" in
+7) ;;
+*) die "unsupported EAPI (${EAPI}) in eclass (${ECLASS})" ;;
+esac
+
+
+# @ECLASS-VARIABLE: PROGRAM
+# @PRE_INHERIT
+# @REQUIRED
+# @DESCRIPTION:
+# Name of the program under src/program
+: "${PROGRAM:=alpha}"
+
+
+# @ECLASS-VARIABLE: PROJECTS
+# @PRE_INHERIT
+# @REQUIRED
+# @DESCRIPTION:
+# Names of the projects under src/project/$PROGRAM/ that will be
+# included in this build.
+: "${PROJECTS:=(one two three)}"
+
+PROJECT_PREFIX="project_"
+PROJECT_ALL="${PROJECT_PREFIX}all"
+IUSE="${PROJECT_ALL} ${PROJECTS[*]/#/${PROJECT_PREFIX}}"
+
+# Watch for any change anywhere in the projects or program
+export CONFIG_ROOT=""
+
+inherit cros-unibuild cros-constants
+
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0/${PF}"
+
+BDEPEND="
+	dev-go/lucicfg
+"
+
+src_compile() {
+	# Re-establish the symlinks as they exist in the source tree
+	ln -s "${S}/config" "${S}/${PROGRAM}/config"
+	(cd "${S}/${PROGRAM}" && \
+		lucicfg generate --config-dir generated config.star \
+		) || die "Failed to generate '${PROGRAM}' from source starlark"
+	for project in "${PROJECTS[@]}"; do
+		ln -s "${S}/config" "${S}/${project}/config"
+		ln -s "${S}/${PROGRAM}" "${S}/${project}/program"
+		output_dir="sw_build_config/platform/chromeos-config/generated"
+		(cd "${S}/${project}" && \
+			lucicfg generate --config-dir generated config.star && \
+			cros_config_proto_converter \
+			--output "${output_dir}/project-config.json" \
+			--program_config "${S}/${PROGRAM}/generated/config.jsonproto" \
+			--project_configs "${S}/${project}/generated/config.jsonproto"
+					) || die "Failed to generate '${project}' config from source starlark"
+	done
+	platform_json_compile
+}
+
+
+src_install() {
+	platform_json_install
+
+	unibuild_install_files arc-files "${WORKDIR}/project-config.json"
+	unibuild_install_files thermal-files "${WORKDIR}/project-config.json"
+	unibuild_install_touch_files "${WORKDIR}/project-config.json"
+	unibuild_install_files intel-wifi-sar-files "${WORKDIR}/project-config.json"
+}
diff --git a/eclass/cros-ec-merge-ro.eclass b/eclass/cros-ec-merge-ro.eclass
index f556322..1c4832d 100644
--- a/eclass/cros-ec-merge-ro.eclass
+++ b/eclass/cros-ec-merge-ro.eclass
@@ -31,7 +31,6 @@
 # We also use cros_config_host below.
 DEPEND="
 	virtual/chromeos-ec-private-files
-	virtual/chromeos-config-bsp
 "
 BDEPEND="
 	chromeos-base/chromeos-config-host
diff --git a/eclass/cros-ec.eclass b/eclass/cros-ec.eclass
index 44198bc..7fb34ebe 100644
--- a/eclass/cros-ec.eclass
+++ b/eclass/cros-ec.eclass
@@ -321,6 +321,8 @@
 			else
 				newins "${S}/OWNERS" "${fuzzer}.owners"
 			fi
+			local fuzzer_component_id="167114"
+			echo "${fuzzer_component_id}" | newins - "${fuzzer}.components"
 		done
 	fi
 }
diff --git a/eclass/cros-firmware.eclass b/eclass/cros-firmware.eclass
index a7db0d0..45e818f7 100644
--- a/eclass/cros-firmware.eclass
+++ b/eclass/cros-firmware.eclass
@@ -51,7 +51,7 @@
 
 # $board-overlay/make.conf may contain these flags to always create "firmware
 # from source".
-IUSE="bootimage cros_ec cros_ish tot_firmware unibuild zephyr zephyr_ec"
+IUSE="bootimage cros_ec cros_ish tot_firmware unibuild zephyr_ec"
 
 # "futility update" is needed when building and running updater package.
 COMMON_DEPEND="
@@ -93,7 +93,7 @@
 DEPEND+="
 	bootimage? ( sys-boot/chromeos-bootimage )
 	cros_ec? ( chromeos-base/chromeos-ec )
-	zephyr? ( chromeos-base/chromeos-zephyr )
+	zephyr_ec? ( chromeos-base/chromeos-zephyr )
 	"
 
 RESTRICT="mirror"
diff --git a/eclass/cros-fuzzer.eclass b/eclass/cros-fuzzer.eclass
index 156196b..cf64565 100644
--- a/eclass/cros-fuzzer.eclass
+++ b/eclass/cros-fuzzer.eclass
@@ -39,10 +39,10 @@
 # @DESCRIPTION:
 # Installs fuzzer targets in one common location for all fuzzing projects.
 # @USAGE: <owners file> <fuzzer binary> [--dict dict_file] \
-#   [--options options_file] [extra files ...]
+#   [--comp componentid] [--options options_file] [extra files ...]
 fuzzer_install() {
-	[[ $# -lt 2 ]] && die "usage: ${FUNCNAME} <OWNERS> <program> [options]" \
-		"[extra files...]"
+	[[ $# -lt 2 ]] && die "usage: ${FUNCNAME} <OWNERS> <program> " \
+		"[--comp componentid] [options] [extra files...]"
 	# Don't do anything without USE="fuzzer"
 	! use fuzzer && return 0
 
@@ -52,9 +52,12 @@
 	shift 2
 
 	# Fuzzer option strings.
+	local opt_component="comp"
 	local opt_dict="dict"
 	local opt_option="options"
 
+	local component_made=false
+
 	(
 		# Install fuzzer program.
 		exeinto "/usr/libexec/fuzzers"
@@ -66,7 +69,7 @@
 		# Install other fuzzer files (dict, options file etc.) if provided.
 		[[ $# -eq 0 ]] && return 0
 		# Parse the arguments.
-		local opts=$(getopt -o '' -l "${opt_dict}:,${opt_option}:" -- "$@")
+		local opts=$(getopt -o '' -l "${opt_dict}:,${opt_option}:,${opt_component}:" -- "$@")
 		[[ $? -ne 0 ]] && die "fuzzer_install: Incorrect options: $*"
 		eval set -- "${opts}"
 
@@ -78,6 +81,10 @@
 			"--${opt_option}")
 				newins "$2" "${name}.options"
 				shift 2 ;;
+			"--${opt_component}")
+				echo "$2" | newins - "${name}.components"
+				component_made=true
+				shift 2 ;;
 			--)
 				shift ;;
 			*)
@@ -85,6 +92,14 @@
 				shift ;;
 			esac
 		done
+
+		# If not specified, we default reporting
+		# to this component:
+		# ChromeOS > Security > Machine-found-bugs
+		local default_fuzzer_component_id="1099326"
+		if ! "${component_made}"; then
+			echo "${default_fuzzer_component_id}" | newins - "${name}.components"
+		fi
 	)
 }
 
diff --git a/eclass/cros-kernel/qualcomm_defconfig b/eclass/cros-kernel/qualcomm_defconfig
index de1be08..9fb358e 100644
--- a/eclass/cros-kernel/qualcomm_defconfig
+++ b/eclass/cros-kernel/qualcomm_defconfig
@@ -55,7 +55,6 @@
 CONFIG_SWP_EMULATION=y
 CONFIG_CP15_BARRIER_EMULATION=y
 CONFIG_SETEND_EMULATION=y
-# CONFIG_ARM64_LSE_ATOMICS is not set
 CONFIG_RANDOMIZE_BASE=y
 # CONFIG_EFI is not set
 CONFIG_PM_WAKELOCKS=y
@@ -89,6 +88,7 @@
 CONFIG_CRYPTO_AES_ARM64_CE_CCM=y
 CONFIG_CRYPTO_AES_ARM64_CE_BLK=y
 CONFIG_CRYPTO_AES_ARM64_NEON_BLK=y
+CONFIG_JUMP_LABEL=y
 CONFIG_ARCH_MMAP_RND_BITS=24
 CONFIG_ARCH_MMAP_RND_COMPAT_BITS=16
 CONFIG_MODULES=y
@@ -361,6 +361,7 @@
 CONFIG_SERIAL_DEV_BUS=y
 CONFIG_HW_RANDOM=y
 CONFIG_TCG_TPM=y
+CONFIG_TCG_TIS_I2C_CR50=y
 CONFIG_TCG_TIS_SPI=y
 CONFIG_TCG_TIS_SPI_CR50=y
 CONFIG_TCG_TIS_I2C_INFINEON=y
@@ -378,6 +379,7 @@
 CONFIG_PINCTRL_MSM=y
 CONFIG_PINCTRL_QCOM_SPMI_PMIC=y
 CONFIG_PINCTRL_SC7180=y
+CONFIG_PINCTRL_SC7280=y
 CONFIG_PINCTRL_SDM845=y
 CONFIG_DEBUG_GPIO=y
 CONFIG_GPIO_SYSFS=y
@@ -441,7 +443,10 @@
 CONFIG_DRM_MSM=y
 # CONFIG_DRM_MSM_HDMI_HDCP is not set
 CONFIG_DRM_PANEL_SIMPLE=y
+CONFIG_DRM_PANEL_EDP=y
+CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20=y
 CONFIG_DRM_PANEL_VISIONOX_RM69299=y
+CONFIG_DRM_PARADE_PS8640=y
 CONFIG_DRM_TI_SN65DSI86=y
 CONFIG_FB=y
 CONFIG_FB_MODE_HELPERS=y
@@ -561,10 +566,13 @@
 CONFIG_QCOM_CLK_RPMH=y
 CONFIG_MSM_GCC_8916=y
 CONFIG_SC_DISPCC_7180=y
+CONFIG_SC_DISPCC_7280=y
 CONFIG_SC_LPASS_CORECC_7180=y
 CONFIG_SC_GPUCC_7180=y
+CONFIG_SC_GPUCC_7280=y
 CONFIG_SC_MSS_7180=y
 CONFIG_SC_VIDEOCC_7180=y
+CONFIG_SC_VIDEOCC_7280=y
 CONFIG_SDM_GPUCC_845=y
 CONFIG_SDM_VIDEOCC_845=y
 CONFIG_SDM_DISPCC_845=y
@@ -576,6 +584,7 @@
 CONFIG_ARM_SMMU=y
 CONFIG_REMOTEPROC=y
 CONFIG_QCOM_Q6V5_MSS=m
+CONFIG_QCOM_SYSMON=y
 CONFIG_RPMSG_CHAR=y
 CONFIG_RPMSG_QCOM_GLINK_SMEM=y
 CONFIG_RPMSG_QCOM_SMD=y
@@ -622,6 +631,7 @@
 CONFIG_RESET_QCOM_PDC=y
 CONFIG_PHY_QCOM_QMP=y
 CONFIG_PHY_QCOM_QUSB2=y
+CONFIG_PHY_QCOM_USB_SNPS_FEMTO_V2=y
 CONFIG_RAS=y
 CONFIG_ANDROID=y
 CONFIG_ANDROID_BINDER_IPC=y
@@ -634,6 +644,7 @@
 CONFIG_INTERCONNECT_QCOM_RPMH=y
 CONFIG_INTERCONNECT_QCOM_BCM_VOTER=y
 CONFIG_INTERCONNECT_QCOM_SC7180=y
+CONFIG_INTERCONNECT_QCOM_SC7280=y
 CONFIG_INTERCONNECT_QCOM_SDM845=y
 CONFIG_PKGLIST=y
 CONFIG_EXT4_FS=y
@@ -727,6 +738,7 @@
 CONFIG_TEST_LKM=m
 CONFIG_TEST_FIRMWARE=m
 CONFIG_TEST_UDELAY=m
+CONFIG_WERROR=y
 CONFIG_ERROR_ON_WARNING=y
 CONFIG_DEBUG_ALIGN_RODATA=y
 CONFIG_LEDS_PWM=y
diff --git a/eclass/cros-kernel/rockchip64_defconfig b/eclass/cros-kernel/rockchip64_defconfig
index a3ebab6..a6ccfab 100644
--- a/eclass/cros-kernel/rockchip64_defconfig
+++ b/eclass/cros-kernel/rockchip64_defconfig
@@ -69,6 +69,9 @@
 CONFIG_CPU_IDLE=y
 CONFIG_CPU_IDLE_GOV_LADDER=y
 CONFIG_ARM_CPUIDLE=y
+CONFIG_CORESIGHT=y
+CONFIG_CORESIGHT_CPU_DEBUG=y
+CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON=y
 CONFIG_CPU_FREQ=y
 CONFIG_CPU_FREQ_STAT=y
 CONFIG_CPU_FREQ_GOV_POWERSAVE=y
@@ -276,6 +279,7 @@
 CONFIG_TCG_TPM=y
 CONFIG_TCG_TIS_SPI=y
 CONFIG_TCG_TIS_I2C_INFINEON=y
+CONFIG_TCG_TIS_SPI_CR50=y
 CONFIG_I2C_CHARDEV=y
 CONFIG_I2C_RK3X=y
 CONFIG_I2C_CROS_EC_TUNNEL=y
@@ -347,16 +351,18 @@
 CONFIG_DRM_VGEM=y
 CONFIG_DRM_UDL=y
 CONFIG_DRM_PANEL_SIMPLE=y
+CONFIG_DRM_PANEL_EDP=y
 CONFIG_DRM_DW_MIPI_DSI=y
 CONFIG_ROCKCHIP_DW_MIPI_DSI=y
 CONFIG_DRM_ANALOGIX_ANX78XX=y
 CONFIG_DRM_MIPI_DSI=y
+CONFIG_DRM_PANEL_INNOLUX_P079ZCA=y
 CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04=y
 CONFIG_DRM_BRIDGE=y
 CONFIG_DRM_PANEL_BRIDGE=y
 CONFIG_DRM_ROCKCHIP=y
 CONFIG_ROCKCHIP_ANALOGIX_DP=y
-CONFIG_DRM_ROCKCHIP_CDN_DP=y
+CONFIG_ROCKCHIP_CDN_DP=y
 CONFIG_FB=y
 CONFIG_FB_MODE_HELPERS=y
 CONFIG_BACKLIGHT_LCD_SUPPORT=y
@@ -489,6 +495,9 @@
 CONFIG_EXT4_ENCRYPTION=y
 CONFIG_FS_ENCRYPTION=y
 # CONFIG_DNOTIFY is not set
+CONFIG_FANOTIFY=y
+CONFIG_QUOTA=y
+CONFIG_QFMT_V2=y
 CONFIG_FUSE_FS=m
 CONFIG_CUSE=m
 CONFIG_ISO9660_FS=m
@@ -567,3 +576,4 @@
 CONFIG_PANIC_ON_OOPS=y
 CONFIG_PANIC_TIMEOUT=-1
 CONFIG_DM_INIT=y
+CONFIG_DEBUG_INFO_DWARF4=y
diff --git a/eclass/cros-kernel/rockchip_defconfig b/eclass/cros-kernel/rockchip_defconfig
index 55e886f..8e38e1b 100644
--- a/eclass/cros-kernel/rockchip_defconfig
+++ b/eclass/cros-kernel/rockchip_defconfig
@@ -334,6 +334,7 @@
 CONFIG_ROCKCHIP_ANALOGIX_DP=y
 CONFIG_ROCKCHIP_DW_HDMI=y
 CONFIG_DRM_PANEL_SIMPLE=y
+CONFIG_DRM_PANEL_EDP=y
 CONFIG_FB_MODE_HELPERS=y
 CONFIG_BACKLIGHT_LCD_SUPPORT=y
 CONFIG_LCD_CLASS_DEVICE=y
diff --git a/eclass/cros-kernel/tegra_defconfig b/eclass/cros-kernel/tegra_defconfig
index 6a341b3..8057384 100644
--- a/eclass/cros-kernel/tegra_defconfig
+++ b/eclass/cros-kernel/tegra_defconfig
@@ -276,6 +276,7 @@
 CONFIG_DRM_TEGRA=y
 CONFIG_DRM_TEGRA_STAGING=y
 CONFIG_DRM_PANEL_SIMPLE=y
+CONFIG_DRM_PANEL_EDP=y
 CONFIG_FB_MODE_HELPERS=y
 # CONFIG_LCD_CLASS_DEVICE is not set
 CONFIG_BACKLIGHT_PWM=y
diff --git a/eclass/cros-kernel/x86_64_defconfig b/eclass/cros-kernel/x86_64_defconfig
index 3f136df..72a82b2 100644
--- a/eclass/cros-kernel/x86_64_defconfig
+++ b/eclass/cros-kernel/x86_64_defconfig
@@ -632,6 +632,7 @@
 CONFIG_TEST_UDELAY=m
 CONFIG_TEST_MODULE=m
 CONFIG_STRICT_DEVMEM=y
+CONFIG_WERROR=y
 CONFIG_ERROR_ON_WARNING=y
 CONFIG_EARLY_PRINTK_DBGP=y
 CONFIG_IO_DELAY_0XED=y
diff --git a/eclass/cros-kernel2.eclass b/eclass/cros-kernel2.eclass
index 610f2a9..0bfb6df 100644
--- a/eclass/cros-kernel2.eclass
+++ b/eclass/cros-kernel2.eclass
@@ -36,6 +36,7 @@
 	builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private )
 	builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private )
 	builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private )
+	builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private )
 	builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 "
 
@@ -86,8 +87,7 @@
 "
 STRIP_MASK="
 	/lib/modules/*/kernel/*
-	/usr/lib/debug/boot/vmlinux
-	/usr/lib/debug/lib/modules/*
+	/usr/lib/debug/*
 	/usr/src/*
 "
 
@@ -195,6 +195,7 @@
 	kvm_nested
 	lockdebug
 	lockstat
+	lpss_uart
 	mbim
 	memory_debug
 	minios_ramfs
@@ -438,6 +439,8 @@
 CONFIG_PARAVIRT=y
 CONFIG_KVM_GUEST=y
 CONFIG_VIRTIO_VSOCKETS=m
+CONFIG_VIRTIO_IOMMU=m
+CONFIG_ACPI_VIOT=y
 "
 
 mellanox_eth_desc="Mellanox Ethernet Drivers"
@@ -499,6 +502,7 @@
 CONFIG_SLUB_DEBUG=y
 CONFIG_SLUB_DEBUG_ON=y
 CONFIG_FRAME_WARN=0
+CONFIG_LOCALVERSION=\"-kasan\"
 "
 
 kcov_desc="Enable kcov"
@@ -576,6 +580,14 @@
 ${lockstat_config}
 "
 
+lpss_uart_desc="Enable Intel LPSS UART serial ports"
+lpss_uart_config="
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_DMA=y
+CONFIG_SERIAL_8250_DW=y
+CONFIG_SERIAL_8250_LPSS=y
+"
+
 nfc_desc="Enable NFC support"
 nfc_config="
 CONFIG_NFC=m
@@ -681,6 +693,7 @@
 CONFIG_VHOST_VSOCK=m
 CONFIG_VIRTUALIZATION=y
 CONFIG_KVM_ARM_HOST=y
+CONFIG_KVM_HETEROGENEOUS_RT=y
 "
 
 kvm_nested_desc="Support running nested VMs"
@@ -1035,6 +1048,7 @@
 nowerror_desc="Don't build with -Werror (warnings aren't fatal)."
 nowerror_config="
 # CONFIG_ERROR_ON_WARNING is not set
+# CONFIG_WERROR is not set
 "
 
 docker_desc="Docker Support (Linux Containers)"
@@ -1160,7 +1174,7 @@
 CONFIG_BUG_ON_DATA_CORRUPTION=y
 CONFIG_DEBUG_PI_LIST=y
 CONFIG_REFCOUNT_FULL=y
-# CONFIG_DEBUG_KOBJECT_RELEASE=y TODO(b/185149799): Enable once MMC patch lands
+CONFIG_DEBUG_KOBJECT_RELEASE=y
 "
 
 # Firmware binaries selected by USE flags.  Selected firmware binaries will
@@ -1198,6 +1212,7 @@
 	builtin_fw_x86_jsl_ucode
 	builtin_fw_x86_kbl_ucode
 	builtin_fw_x86_skl_ucode
+	builtin_fw_x86_tgl_ucode
 	builtin_fw_x86_whl_ucode
 )
 
@@ -1451,6 +1466,12 @@
 	intel-ucode/06-4e-03
 )
 
+builtin_fw_x86_tgl_ucode_desc="Intel ucode for TGL"
+builtin_fw_x86_tgl_ucode_files=(
+	intel-ucode/06-8c-00
+	intel-ucode/06-8c-01
+)
+
 builtin_fw_x86_whl_ucode_desc="Intel ucode for WHL"
 builtin_fw_x86_whl_ucode_files=(
 	intel-ucode/06-8e-0b
@@ -2451,11 +2472,7 @@
 		esac
 	fi
 	if use arm || use arm64 || use mips; then
-		# TODO(vbendeb): remove the below .uimg link creation code
-		# after the build scripts have been modified to use the base
-		# image name.
 		pushd "$(dirname "${kernel_bin}")" > /dev/null
-		ln -sf $(basename "${kernel_bin}") vmlinux.uimg || die
 		case ${kernel_arch} in
 			arm)
 				ln -sf $(basename "${zimage_bin}") zImage || die
@@ -2475,11 +2492,14 @@
 
 	# Install uncompressed kernel for debugging purposes.
 	insinto "${install_prefix}/usr/lib/debug/boot"
-	doins "$(cros-workon_get_build_dir)/vmlinux"
+	newins "$(cros-workon_get_build_dir)/vmlinux" vmlinux.debug
 	if ! has ${EAPI} {4..6}; then
-		dostrip -x "${install_prefix}/usr/lib/debug/boot/vmlinux" \
+		dostrip -x "${install_prefix}/usr/lib/debug/boot/vmlinux.debug" \
 			"${install_prefix}/usr/src/"
 	fi
+	# Be nice to scripts expecting vmlinux.
+	ln -s vmlinux.debug "${install_dir}/usr/lib/debug/boot/vmlinux" || die
+
 	if use kgdb && [[ -d "$(cros-workon_get_build_dir)/scripts/gdb" ]]; then
 		insinto "${install_prefix}/usr/lib/debug/boot/"
 		doins "$(cros-workon_get_build_dir)/vmlinux-gdb.py"
diff --git a/eclass/cros-rust.eclass b/eclass/cros-rust.eclass
index 3f36604..0d60300 100644
--- a/eclass/cros-rust.eclass
+++ b/eclass/cros-rust.eclass
@@ -359,12 +359,12 @@
 	default
 }
 
-# @FUNCTION: cros-rust_src_configure
+# @FUNCTION: cros-rust_configure_cargo
 # @DESCRIPTION:
-# Configures the source and exports any environment variables needed during the
-# build.
-cros-rust_src_configure() {
-	debug-print-function "${FUNCNAME[0]}" "$@"
+# Sets up cargo configuration and exports any environment variables needed
+# during the build.
+cros-rust_configure_cargo() {
+	debug-print-function "${FUNCNAME[0]}"
 	sanitizers-setup-env
 	cros-debug-add-NDEBUG
 
@@ -388,14 +388,37 @@
 	export TARGET="${CHOST}"
 	export TARGET_CC="$(tc-getCC)"
 
+	# Intended use case:
+	# - Crate A generates sources when it is emerged from input files
+	#   that are only accessible when it emerges.
+	# - Crate B depends on crate A, and this is reflected in the
+	#   ebuild for crate B.
+	# (Examples: cros-dbus-bindings or bindgen for *-sys)
+	#
+	# The following scenarios are supported and need to work:
+	# - local `cargo build` for crate A
+	# - local `cargo build` for crate B
+	# - emerge A
+	# - emerge B
+	#
+	# Add CROS_RUST environment variable to support the `emerge B`
+	# case, since crate B can't access pre-generated source
+	# in emerge, the build.rs script for crate A will skip the
+	# source generation if both of the following are true:
+	# - The generated source exists
+	# - `CROS_RUST=1`
+	export CROS_RUST="1"
+
 	# There is a memory leak in libbacktrace:
 	# https://github.com/rust-lang/rust/issues/59125
 	cros-rust_use_sanitizers || export RUST_BACKTRACE=1
 
 	# We want debug info even in release builds.
 	local rustflags=(
+		"${CROS_BASE_RUSTFLAGS}"
 		-Cdebuginfo=2
 		-Copt-level=3
+		-Zallow-features=sanitizer,backtrace
 	)
 
 	if use lto
@@ -422,10 +445,10 @@
 	# Rust compiler is not exporting the __asan_* symbols needed in
 	# asan builds. Force export-dynamic linker flag to export __asan_* symbols
 	# https://crbug.com/1085546
-	use asan && rustflags+=( -Csanitizer=address -Clink-arg="-Wl,-export-dynamic" )
-	use lsan && rustflags+=( -Csanitizer=leak )
-	use msan && rustflags+=( -Csanitizer=memory -Clink-arg="-Wl,--allow-shlib-undefined")
-	use tsan && rustflags+=( -Csanitizer=thread )
+	use asan && rustflags+=( -Zsanitizer=address -Clink-arg="-Wl,-export-dynamic" )
+	use lsan && rustflags+=( -Zsanitizer=leak )
+	use msan && rustflags+=( -Zsanitizer=memory -Clink-arg="-Wl,--allow-shlib-undefined")
+	use tsan && rustflags+=( -Zsanitizer=thread )
 	use ubsan && rustflags+=( -Clink-arg=-fsanitize=undefined )
 
 	if use fuzzer; then
@@ -449,6 +472,38 @@
 		addwrite "$(cros-rust_get_sccache_dir)"
 	fi
 
+	# Add EXTRA_RUSTFLAGS to the current rustflags. This lets us emerge rust
+	# packages with locally exported flags for testing purposes as:
+	# `EXTRA_RUSTFLAGS="<flags>" emerge-$BOARD <package>`
+	rustflags+=( "${EXTRA_RUSTFLAGS:=}" )
+
+	# Ensure RUSTFLAGS is *not* set in the environment.
+	# If it is, it will override the flags we configure below. See:
+	# https://doc.rust-lang.org/cargo/reference/config.html#buildrustflags
+	# Ebuilds should set their custom rustflags in cargo configuration.
+	# Developers can pass EXTRA_RUSTFLAGS for one-off builds as above.
+	unset RUSTFLAGS
+
+	# Add rustflags to the cargo configuration.
+	# This [target] section will apply to *all* targets, CHOST and CBUILD.
+	# TODO(dcallagh): some flags above are not applicable to all targets,
+	# they should be configured into suitable [target] sections.
+	# TODO(dcallagh): escape TOML values correctly instead of assuming
+	# that no rustflags contain spaces or quotes.
+	cat <<- EOF >> "${ECARGO_HOME}/config"
+
+	[target.'cfg(all())']
+	rustflags = "${rustflags[*]}"
+	EOF
+}
+
+# @FUNCTION: cros-rust_update_cargo_lock
+# @DESCRIPTION:
+# Regenerates/removes the Cargo.lock file to ensure cargo uses the dependency
+# versions from our local registry.
+cros-rust_update_cargo_lock() {
+	debug-print-function "${FUNCNAME[0]}"
+
 	if [[ -n "${CROS_WORKON_PROJECT}" ]]; then
 		# Force an update the Cargo.lock file.
 		ecargo generate-lockfile
@@ -467,13 +522,16 @@
 		# Remove 3rd party lockfiles.
 		rm -f Cargo.lock
 	fi
+}
 
-	# Add EXTRA_RUSTFLAGS to the current rustflags. This lets us emerge rust
-	# packages with locally exported flags for testing purposes as:
-	# `EXTRA_RUSTFLAGS="<flags>" emerge-$BOARD <package>`
-	rustflags+=( "${EXTRA_RUSTFLAGS:=}" )
-
-	export RUSTFLAGS="${rustflags[*]}"
+# @FUNCTION: cros-rust_src_configure
+# @DESCRIPTION:
+# Configures the source and exports any environment variables needed during the
+# build.
+cros-rust_src_configure() {
+	debug-print-function "${FUNCNAME[0]}"
+	cros-rust_configure_cargo
+	cros-rust_update_cargo_lock
 	default
 }
 
@@ -520,8 +578,9 @@
 	# FIXME(crbug.com/1195313): rustc sysroot may not contain dependencies
 	local sysroot_old="${SYSROOT}"
 	SYSROOT=$(rustc --print sysroot)
+	echo "{\"package_path\":\"${S}\"}" > "${clippy_output_base}/${PF}.json"
 	ecargo clippy ---message-format json --target="${CHOST}" --release \
-		--manifest-path="${S}/Cargo.toml" > "${clippy_output_base}/${PF}.json"
+		--manifest-path="${S}/Cargo.toml" >> "${clippy_output_base}/${PF}.json"
 	export SYSROOT="${sysroot_old}"
 }
 
@@ -530,28 +589,6 @@
 # @DESCRIPTION:
 # Call `cargo build` with the specified command line options.
 ecargo_build() {
-
-	# Intended use case:
-	# - Crate A generates sources when it is emerged from input files
-	#   that are only accessible when it emerges.
-	# - Crate B depends on crate A, and this is reflected in the
-	#   ebuild for crate B.
-	# (Examples: cros-dbus-bindings or bindgen for *-sys)
-	#
-	# The following scenarios are supported and need to work:
-	# - local `cargo build` for crate A
-	# - local `cargo build` for crate B
-	# - emerge A
-	# - emerge B
-	#
-	# Add CROS_RUST environment variable to support the `emerge B`
-	# case, since crate B can't access pre-generated source
-	# in emerge, the build.rs script for crate A will skip the
-	# source generation if both of the following are true:
-	# - The generated source exists
-	# - `CROS_RUST=1`
-	export CROS_RUST="1"
-
 	ecargo build --target="${CHOST}" --release "$@"
 	# FIXME(b/191687433): refactor ENABLE_RUST_CLIPPY to be easier to enable/disable then remove the platform2 check
 	if [[ -n "${ENABLE_RUST_CLIPPY}" && "${CROS_WORKON_PROJECT}" == "chromiumos/platform2" ]]; then
diff --git a/eclass/cros-sanitizers.eclass b/eclass/cros-sanitizers.eclass
index 58512de..9ae0db1 100644
--- a/eclass/cros-sanitizers.eclass
+++ b/eclass/cros-sanitizers.eclass
@@ -139,10 +139,10 @@
 # Sets up sanitizer flags for rust.
 cros-rust-setup-sanitizers() {
 	local rust_san_flags=()
-	use asan && rust_san_flags+=( -Csanitizer=address )
-	use lsan && rust_san_flags+=( -Csanitizer=leak )
-	use msan && rust_san_flags+=( -Csanitizer=memory )
-	use tsan && rust_san_flags+=( -Csanitizer=thread )
+	use asan && rust_san_flags+=( -Zsanitizer=address )
+	use lsan && rust_san_flags+=( -Zsanitizer=leak )
+	use msan && rust_san_flags+=( -Zsanitizer=memory )
+	use tsan && rust_san_flags+=( -Zsanitizer=thread )
 
 	export RUSTFLAGS="${rust_san_flags[*]}"
 }
diff --git a/eclass/cros-unibuild.eclass b/eclass/cros-unibuild.eclass
index 03c324db..c76cf32 100644
--- a/eclass/cros-unibuild.eclass
+++ b/eclass/cros-unibuild.eclass
@@ -1,12 +1,61 @@
 # Copyright 2017 The Chromium OS Authors. All rights reserved.
 # Distributed under the terms of the GNU General Public License v2
 
-# Check for EAPI 4+
+# Check for EAPI 5+
 case "${EAPI:-0}" in
-4|5|6|7) ;;
+5|6|7) ;;
 *) die "unsupported EAPI (${EAPI}) in eclass (${ECLASS})" ;;
 esac
 
+# In order to rebuild packages when config changes happen, we need a
+# subslot dependency on on the bsp packages that provide the actual
+# configs.  We do this here instead of in the ebuilds so that we don't
+# pollute the tree with this complex dependency syntax.
+case "${CATEGORY}/${PN}" in
+	# Can't depend on ourselves, special case this away.
+	chromeos-base/chromeos-config-bsp* ) ;;
+	* )
+		IUSE="
+			has_chromeos_config_bsp
+			has_chromeos_config_bsp_private
+			has_chromeos_config_bsp_baseboard
+			has_chromeos_config_bsp_baseboard_private
+		"
+		DEPEND="
+			has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= )
+			has_chromeos_config_bsp_private? (
+				chromeos-base/chromeos-config-bsp-private:=
+			)
+			has_chromeos_config_bsp_baseboard? (
+				chromeos-base/chromeos-config-bsp-baseboard:=
+			)
+			has_chromeos_config_bsp_baseboard_private? (
+				chromeos-base/chromeos-config-bsp-baseboard-private:=
+			)
+		"
+		# Again, can't depend on ourselves.
+		if [[ "${CATEGORY}/${PN}" != "chromeos-base/chromeos-config" ]]; then
+			IUSE+=" unibuild "
+			DEPEND+="
+				unibuild? ( chromeos-base/chromeos-config:= )
+			"
+		fi
+		RDEPEND="${DEPEND}"
+
+		# Let's also provide an environment variable that
+		# cros_config_host can use, that way it can validate we got
+		# the proper dependencies to use it.
+		export CROS_UNIBUILD_ECLASS=1
+esac
+
+# Additionally, if we support EAPI=7, let's be proper and add a
+# BDEPEND.
+case "${EAPI}" in
+	7 )
+		BDEPEND="chromeos-base/chromeos-config-host:="
+		;;
+esac
+
 # @ECLASS-VARIABLE: UNIBOARD_CROS_CONFIG_DIR
 # @DESCRIPTION:
 #  This is the installation directory of cros-config data.
@@ -225,7 +274,8 @@
 		# in the source directory, but the installed file should not be
 		# a link especially since the installed folder structure is
 		# different.
-		origfile="$(readlink -f "${config_files_path}/${source}")"
+		origfile="$(readlink -f "${config_files_path}/${source}")" ||
+			die "readlink -f ${config_files_path}/${source} failed"
 		newins "${origfile}" "$(basename "${dest}")"
 	done
 }
diff --git a/eclass/dlc.eclass b/eclass/dlc.eclass
index 0480a0d..a784f4f 100644
--- a/eclass/dlc.eclass
+++ b/eclass/dlc.eclass
@@ -76,6 +76,12 @@
 # passed in.
 : "${DLC_PRELOAD:="false"}"
 
+# @ECLASS-VARIABLE: DLC_FACTORY_INSTALL
+# @DESCRIPTION:
+# Determines whether to factory install the DLC into FSI. A boolean must be
+# passed in. (Please consult @chromeos-core-services team before using this)
+: "${DLC_FACTORY_INSTALL:="false"}"
+
 # @ECLASS-VARIABLE: DLC_ENABLED
 # @DESCRIPTION:
 # Determines whether the package will be a DLC package or regular package.
@@ -143,6 +149,7 @@
 	[[ -z "${DLC_PACKAGE}" ]] && die "DLC_PACKAGE undefined"
 	[[ -z "${DLC_VERSION}" ]] && die "DLC_VERSION undefined"
 	[[ "${DLC_PRELOAD}" =~ ^(true|false)$ ]] || die "Invalid DLC_PRELOAD value"
+	[[ "${DLC_FACTORY_INSTALL}" =~ ^(true|false)$ ]] || die "Invalid DLC_FACTORY_INSTALLvalue"
 	[[ -z "${DLC_USED_BY}" ]] && die "DLC_USED_BY undefined"
 	[[ "${DLC_MOUNT_FILE_REQUIRED}" =~ ^(true|false)$ ]] \
 		|| die "Invalid DLC_MOUNT_FILE_REQUIRED value"
@@ -168,6 +175,10 @@
 		args+=( --preload )
 	fi
 
+	if [[ "${DLC_FACTORY_INSTALL}" == "true" ]]; then
+		args+=( --factory-install )
+	fi
+
 	if [[ -n "${DLC_USED_BY}" ]]; then
 		args+=( --used-by="${DLC_USED_BY}" )
 	fi
diff --git a/eclass/gtest.eclass b/eclass/gtest.eclass
new file mode 100644
index 0000000..966fa2a
--- /dev/null
+++ b/eclass/gtest.eclass
@@ -0,0 +1,33 @@
+# Copyright (c) 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+#
+#
+# Purpose: Eclass for handling gtest functional test packages
+
+inherit cros-constants
+
+# @ECLASS-VARIABLE: GTEST_METADATA_INSTALL_DIR
+# @DESCRIPTION:
+# Location of the appropriate metadata install directory
+: "${GTEST_METADATA_INSTALL_DIR:=/usr/local/build/gtest}"
+
+install_gtest_metadata() {
+	local gtest_dir="${WORKDIR}/${P}/platform/dev/test/gtest"
+	local metadata_files=()
+
+	for f in "$@"
+	do
+ 		local meta_file=$(basename "${f}" .yaml).pb
+ 		python3 "${gtest_dir}"/generate_gtest_metadata.py   --output_file "${meta_file}" \
+															--yaml_schema "${gtest_dir}"/gtest_schema.yaml \
+															"${f}" \
+															|| die "Failed to generate metadata for '${f}'!"
+
+		metadata_files+=("${meta_file}")
+	done
+
+	insinto "${GTEST_METADATA_INSTALL_DIR}"
+	doins "${metadata_files[@]}"
+}
+
+export install_gtest_metadata
diff --git a/eclass/platform.eclass b/eclass/platform.eclass
index 4728b83..bc8cd84 100644
--- a/eclass/platform.eclass
+++ b/eclass/platform.eclass
@@ -273,6 +273,13 @@
 	cros-debug-add-NDEBUG
 	append-lfs-flags
 	sanitizers-setup-env
+	if use test && use amd64 && platform_is_native && tc-is-cross-compiler; then
+		# Do not use target specific flags when building for unit tests.
+		# As the build machine may not support the generated instructions.
+		# This only helps the code being rebuilt during unit tests, e.g.
+		# libraries that are not rebuilt can still cause SIGILLs etc.
+		append-flags '-march=corei7'
+	fi
 	platform_configure "$@"
 }
 
diff --git a/eclass/tast-bundle-data.eclass b/eclass/tast-bundle-data.eclass
new file mode 100644
index 0000000..03270d3
--- /dev/null
+++ b/eclass/tast-bundle-data.eclass
@@ -0,0 +1,60 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: tast-bundle.eclass
+# @MAINTAINER:
+# The Chromium OS Authors <chromium-os-dev@chromium.org>
+# @BUGREPORTS:
+# Please report bugs via https://issuetracker.google.com/ (with component
+# "ChromeOS > Test > Harness > Tast > Framework").
+# @VCSURL: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/HEAD/eclass/@ECLASS@
+# @BLURB: Eclass for installing Tast test bundles data.
+# @DESCRIPTION:
+# Installs Tast test bundles data.
+# See https://chromium.googlesource.com/chromiumos/platform/tast/ for details.
+# The bundle type ("local" or "remote") are derived from the package name, which
+# should end with "-<type>-data".
+
+if ! [[ "${PN}" =~ .*-(local|remote)-data$ ]]; then
+	die "Package \"${PN}\" should end with \"-<type>-data\""
+fi
+
+# @FUNCTION: tast-bundle-data_pkg_setup
+# @DESCRIPTION:
+# Parses package name to extract bundle info and sets binary target.
+tast-bundle-data_pkg_setup() {
+	# Strip off the "*-" prefix and "-data" suffix to get the type
+	# ("local" or "remote").
+	local tmp=${PN%-data}
+	TAST_BUNDLE_DATA_TYPE=${tmp##*-}
+	if ! [[ "${TAST_BUNDLE_DATA_TYPE}" =~ ^(local|remote)$ ]]; then
+		die "BUG: unexpected type \"${TAST_BUNDLE_DATA_TYPE}\""
+	fi
+}
+
+# @FUNCTION: tast-bundle-data_src_install
+# @DESCRIPTION:
+# Installs data files.
+tast-bundle-data_src_install() {
+	# The base directory where test data files are installed.
+	local -r basedatadir="/usr/share/tast/data"
+
+	# Install each test category's data dir.
+	pushd src >/dev/null || die "failed to pushd src"
+	local datadir dest
+
+	find "chromiumos/tast/${TAST_BUNDLE_DATA_TYPE}" -type d,l -name 'data' | while read -r datadir; do
+		[[ -e "${datadir}" ]] || die
+		[[ -d "${datadir}" ]] || continue
+
+		# Dereference symlinks to support shared files: https://crbug.com/927424
+		dest=${ED%/}/${basedatadir#/}/${datadir%/*}
+		mkdir -p "${dest}" || die "Failed to create ${dest}"
+		cp --preserve=mode --dereference -R "${datadir}" "${dest}" || \
+			die "Failed to copy ${datadir} to ${dest}"
+		chmod -R u=rwX,go=rX "${dest}" || die "Failed to chmod ${dest}"
+	done
+	popd >/dev/null || die
+}
+
+EXPORT_FUNCTIONS pkg_setup src_install
diff --git a/eclass/tast-bundle.eclass b/eclass/tast-bundle.eclass
index cd0b13f..4634297 100644
--- a/eclass/tast-bundle.eclass
+++ b/eclass/tast-bundle.eclass
@@ -23,6 +23,13 @@
 # installed to the chroot.
 : ${TAST_BUNDLE_PRIVATE:=0}
 
+# @ECLASS-VARIABLE: TAST_BUNDLE_EXCLUDE_DATA_FILES
+# @DESCRIPTION:
+# If set to "1", test data files are not copied.
+# This must be set to 1 if the ebuild inherits tast-bundle-data.eclass
+# and that eclass copies the data files instead.
+: "${TAST_BUNDLE_EXCLUDE_DATA_FILES:=0}"
+
 inherit cros-go
 
 DEPEND="dev-go/crypto"
@@ -125,23 +132,25 @@
 	insinto "${TAST_BUNDLE_PREFIX}/share/tast/signature/${TAST_BUNDLE_TYPE}"
 	newins "${TAST_BUNDLE_NAME}.sig.json" "${TAST_BUNDLE_NAME}.json"
 
-	# The base directory where test data files are installed.
-	local basedatadir="${TAST_BUNDLE_PREFIX}/share/tast/data"
+	if [[ "${TAST_BUNDLE_EXCLUDE_DATA_FILES}" -ne 1 ]]; then
+		# The base directory where test data files are installed.
+		local basedatadir="${TAST_BUNDLE_PREFIX}/share/tast/data"
 
-	# Install each test category's data dir.
-	pushd src >/dev/null || die "failed to pushd src"
-	local datadir dest
-	for datadir in "${TAST_BUNDLE_PATH}"/*/data; do
-		[[ -e "${datadir}" ]] || break
+		# Install each test category's data dir.
+		pushd src >/dev/null || die "failed to pushd src"
+		local datadir dest
+		for datadir in "${TAST_BUNDLE_PATH}"/*/data; do
+			[[ -e "${datadir}" ]] || break
 
-		# Dereference symlinks to support shared files: https://crbug.com/927424
-		dest=${ED%/}/${basedatadir#/}/${datadir%/*}
-		mkdir -p "${dest}" || die "Failed to create ${dest}"
-		cp --preserve=mode --dereference -R "${datadir}" "${dest}" || \
-			die "Failed to copy ${datadir} to ${dest}"
-		chmod -R u=rwX,go=rX "${dest}" || die "Failed to chmod ${dest}"
-	done
-	popd >/dev/null || die
+			# Dereference symlinks to support shared files: https://crbug.com/927424
+			dest=${ED%/}/${basedatadir#/}/${datadir%/*}
+			mkdir -p "${dest}" || die "Failed to create ${dest}"
+			cp --preserve=mode --dereference -R "${datadir}" "${dest}" || \
+				die "Failed to copy ${datadir} to ${dest}"
+			chmod -R u=rwX,go=rX "${dest}" || die "Failed to chmod ${dest}"
+		done
+		popd >/dev/null || die
+	fi
 
 	insinto ${TAST_BUNDLE_PREFIX}/share/tast/metadata/${TAST_BUNDLE_TYPE}
 	doins "${TAST_BUNDLE_NAME}.pb"
diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 3e71900..747c9e3 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -505,12 +505,21 @@
 # If the gold linker is currently selected, configure the compilation
 # settings so that we use the older bfd linker instead.
 tc-ld-disable-gold() {
-	if ! tc-ld-is-gold "$@" ; then
-		# They aren't using gold, so nothing to do!
+	tc-ld-is-gold "$@" && tc-ld-force-bfd "$@"
+}
+
+# @FUNCTION: tc-ld-force-bfd
+# @USAGE: [toolchain prefix]
+# @DESCRIPTION:
+# If the gold or lld linker is currently selected, configure the compilation
+# settings so that we use the bfd linker instead.
+tc-ld-force-bfd() {
+	if ! tc-ld-is-gold "$@" && ! tc-ld-is-lld "$@" ; then
+		# They aren't using gold or lld, so nothing to do!
 		return
 	fi
 
-	ewarn "Forcing usage of the BFD linker instead of GOLD"
+	ewarn "Forcing usage of the BFD linker"
 
 	# Set up LD to point directly to bfd if it's available.
 	# We need to extract the first word in case there are flags appended
@@ -520,7 +529,7 @@
 	local path_ld=$(which "${bfd_ld}" 2>/dev/null)
 	[[ -e ${path_ld} ]] && export LD=${bfd_ld}
 
-	# Set up LDFLAGS to select gold based on the gcc / clang version.
+	# Set up LDFLAGS to select bfd based on the gcc / clang version.
 	local fallback="true"
 	if tc-is-gcc; then
 		local major=$(gcc-major-version "$@")
@@ -548,7 +557,7 @@
 			ln -sf "${path_ld}" "${d}"/ld
 			export LDFLAGS="${LDFLAGS} -B${d}"
 		else
-			die "unable to locate a BFD linker to bypass gold"
+			die "unable to locate a BFD linker"
 		fi
 	fi
 }
diff --git a/licenses/LICENCE.NXP b/licenses/LICENCE.NXP
new file mode 100644
index 0000000..96215f1
--- /dev/null
+++ b/licenses/LICENCE.NXP
@@ -0,0 +1,22 @@
+Copyright © 2019.  NXP B.V.  All rights reserved.
+
+Redistribution and use in binary form is permitted provided that the following
+conditions are met:
+
+1. Redistributions must reproduce the above copyright notice, this list of
+conditions and the following disclaimer in the documentation and/or other
+materials provided with the distribution.
+
+2. Redistribution and use shall be used only with NXP B.V. silicon products.
+Any other use, reproduction, modification, translation, or compilation of the
+Software is prohibited.
+
+3. No reverse engineering, decompilation, or disassembly is permitted.
+
+TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, THIS SOFTWARE IS PROVIDED
+"AS IS" WITHOUT WARRANTY OF ANY KIND, INCLUDING, WITHOUT LIMITATION, ANY EXPRESS
+OR IMPLIED WARRANTIES OF MERCHANTABILITY, ACCURACY, FITNESS OR SUFFICIENCY FOR A
+PARTICULAR PURPOSE, SATISFACTORY QUALITY, CORRESPONDENCE WITH DESCRIPTION, QUIET
+ENJOYMENT OR NON-INFRINGEMENT OF THIRD PARTY INTELLECTUAL PROPERTY RIGHTS.
+NXP B.V., ITS AFFILIATES AND THEIR SUPPLIERS DISCLAIM ANY WARRANTY THAT THE
+DELIVERABLES WILL OPERATE WITHOUT INTERRUPTION OR BE ERROR-FREE.
diff --git a/licenses/copyright-attribution/dev-rust/hmac-sha256 b/licenses/copyright-attribution/dev-rust/hmac-sha256
new file mode 100644
index 0000000..edb24db
--- /dev/null
+++ b/licenses/copyright-attribution/dev-rust/hmac-sha256
@@ -0,0 +1,15 @@
+ISC License
+
+Copyright (c) 2019-2021, Frank Denis.
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/licenses/copyright-attribution/dev-rust/include_dir b/licenses/copyright-attribution/dev-rust/include_dir
new file mode 100644
index 0000000..be6d221
--- /dev/null
+++ b/licenses/copyright-attribution/dev-rust/include_dir
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2017 Michael Bryan
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/licenses/copyright-attribution/dev-rust/include_dir_impl b/licenses/copyright-attribution/dev-rust/include_dir_impl
new file mode 100644
index 0000000..be6d221
--- /dev/null
+++ b/licenses/copyright-attribution/dev-rust/include_dir_impl
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2017 Michael Bryan
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/licenses/copyright-attribution/dev-rust/panic-rtt-target b/licenses/copyright-attribution/dev-rust/panic-rtt-target
new file mode 100644
index 0000000..fcba9a1
--- /dev/null
+++ b/licenses/copyright-attribution/dev-rust/panic-rtt-target
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2020 Matti Virkkunen
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/licenses/copyright-attribution/dev-rust/rtt-target b/licenses/copyright-attribution/dev-rust/rtt-target
new file mode 100644
index 0000000..fcba9a1
--- /dev/null
+++ b/licenses/copyright-attribution/dev-rust/rtt-target
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2020 Matti Virkkunen
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/licenses/copyright-attribution/sci-electronics/pythondata-cpu-vexriscv b/licenses/copyright-attribution/sci-electronics/pythondata-cpu-vexriscv
new file mode 100644
index 0000000..0675e44
--- /dev/null
+++ b/licenses/copyright-attribution/sci-electronics/pythondata-cpu-vexriscv
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2016 Spinal HDL contributors
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
\ No newline at end of file
diff --git a/media-fonts/notofonts/Manifest b/media-fonts/notofonts/Manifest
index b5b9a46..a9995eb 100644
--- a/media-fonts/notofonts/Manifest
+++ b/media-fonts/notofonts/Manifest
@@ -1 +1 @@
-DIST notofonts-20200917.tar.xz 18476188 BLAKE2B 57fb6f6647346d2c6e2ed151a0e45082febfddb9ead12ca4df966d9e42927a0fe9bd963423fe7c87655fda7d01fa0f3b6f6b13aabb3fa6a10f0439d2eb6d4abf SHA512 324970725df6d6e0b3554bd412b79093760ce4b1d8ffd49721a95563cd4f010a056dc62db4ad61024c3ec2b66d6c6b003d53a094956b0cdfa361692e43d089b5
+DIST notofonts-20210716.tar.xz 17623180 BLAKE2B e857fd8b8ac6ad56e68b4313d9f04e5b803231f293da0ec6ef1894df7de9b4ce7720103c1e29edd99e75b04462c0ba5d6f577afdb16d3bb7d35eaa847ae627a4 SHA512 141dee4592fa8e6b69c68dbdc939602f66540401d9b03e9f63e29b939ef73094e90f38d54d83d5434f6f007bb5d5aaf536e7a8b19d72c92002248bd4b5e6e095
diff --git a/media-fonts/notofonts/notofonts-20200917-r1.ebuild b/media-fonts/notofonts/notofonts-20200917-r1.ebuild
deleted file mode 120000
index 0da224f..0000000
--- a/media-fonts/notofonts/notofonts-20200917-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-notofonts-20200917.ebuild
\ No newline at end of file
diff --git a/media-fonts/notofonts/notofonts-20210716-r1.ebuild b/media-fonts/notofonts/notofonts-20210716-r1.ebuild
new file mode 120000
index 0000000..c6ed74c
--- /dev/null
+++ b/media-fonts/notofonts/notofonts-20210716-r1.ebuild
@@ -0,0 +1 @@
+notofonts-20210716.ebuild
\ No newline at end of file
diff --git a/media-fonts/notofonts/notofonts-20200917.ebuild b/media-fonts/notofonts/notofonts-20210716.ebuild
similarity index 100%
rename from media-fonts/notofonts/notofonts-20200917.ebuild
rename to media-fonts/notofonts/notofonts-20210716.ebuild
diff --git a/media-gfx/deqp-runner/Manifest b/media-gfx/deqp-runner/Manifest
index d275461..ef4dba1 100644
--- a/media-gfx/deqp-runner/Manifest
+++ b/media-gfx/deqp-runner/Manifest
@@ -1 +1 @@
-DIST deqp-runner-0.6.5.crate 44749 BLAKE2B 90fdba47ad5268fb95e1bb69b04edda03f696cc1b33882fc7c4e4a54f683ba2b2b2103ca248e7b099e203a34df15973a1b75bcf48c3ac91c19ccd7fc4c2ee558 SHA512 705478d32e49f27a135a9e46bdd6ec54a2b0f073f283b9567445f240adaecc64532bd5e07242de1b5cf9cc96aeb6adb92ab6545ac1ddd2dce05cfe856e99c977
+DIST deqp-runner-0.8.2.crate 53501 BLAKE2B 3846eb8bc83f7cd00da7b394c1b395c2cde083a4e5ac8023cd8285ffd0049c5cd0921ac3887906fa4b2977d50d5ec409cbead0c026440aa25b78136055664e12 SHA512 4734f2d02a9471c05b208c657b12928f7d7ad21d842f04db7be487483118eff3ef76f611d4daf027f54568aa230869a42667e1a8b2c735b854bb27b67e329712
diff --git a/media-gfx/deqp-runner/OWNERS b/media-gfx/deqp-runner/OWNERS
index c779a2e..34c2b02 100644
--- a/media-gfx/deqp-runner/OWNERS
+++ b/media-gfx/deqp-runner/OWNERS
@@ -1 +1,4 @@
 anholt@chromium.org
+chadversary@chromium.org
+ihf@chromium.org
+msturner@google.com
diff --git a/media-gfx/deqp-runner/deqp-runner-0.6.5.ebuild b/media-gfx/deqp-runner/deqp-runner-0.8.2-r1.ebuild
similarity index 100%
rename from media-gfx/deqp-runner/deqp-runner-0.6.5.ebuild
rename to media-gfx/deqp-runner/deqp-runner-0.8.2-r1.ebuild
diff --git a/media-gfx/deqp/Manifest b/media-gfx/deqp/Manifest
index 8c379f8..a5835e5 100644
--- a/media-gfx/deqp/Manifest
+++ b/media-gfx/deqp/Manifest
@@ -1,5 +1,5 @@
-DIST SPIRV-Headers-104ecc356c1bea4476320faca64440cd1df655a3.tar.gz 395873 BLAKE2B 3f4cb173ae254b6e661cc84937f8b625360e8e7bac4af9744fa70556cd205445635ef0de4af98dcbf0fbf9214cf960200cc890c350691501a50f0d25aaf0a58a SHA512 1e3d7d39c3ecb65308aad8b5cbb681bb2562de1550e3b7b37122a9fffdd8798a192b50c3dbe8228ddede62dec7712e3172e57cf944b001ac3f0342afc4993fb8
-DIST SPIRV-Tools-cd590fa3341284cd6d1ee82366155786cfd44c96.tar.gz 2587002 BLAKE2B 5eb0773138d7de2e66d147d0ad925ded7c3ff35c21d82a1d49ebc1d2971bcc1a4eff5dc0b7b0b6952f09bd74a6f3e53f6043615be0cdf7c3334e39f7d604b28a SHA512 9de9a7675e313e7c46fe5e95c97d62e895057d1a80a2efba29c5345165ae12691a86e6d4c091f28e02f92020f971afb61189ac393e295e2c987127a267ae614b
-DIST amber-4d0115cccfcb3b73d20b6513b1c40748e6403c50.tar.gz 506325 BLAKE2B 5998b99ad98a600916c36a1f834e0674223802695bd0b184c604a56ae014880d3fb37d9a1250bbd91f4a0f448415639e2067d07ca9cce753e71dd01777a246f9 SHA512 fec9dc2b7b44fbc9ac91f09681bac3d3d107dc0e16704cf1642e4d8493fc66848cc70141e3d699b79eb9e3b73fb101ca12c21d7c24b70194f10bf22380f9c14c
-DIST deqp-e58b0b2e5075855482dc7d9991b0db35f9afe0c4.tar.gz 30171529 BLAKE2B e2a026f7484532938d7f2d9068684b4d960e5d59e5c486f2436394adcb6317c269e6496705467afc6d1398809877ece1386c1368090e86818ad3c1f58dbc7ba8 SHA512 7dc8e11663f9332a651583319f83d87003c4f5e87a971da231d78cc3ed89117071664a530869088572a26973f5f1788d7da6aa462a6d5e391f7b4eaf4b3b0f04
-DIST glslang-ffccefddfd9a02ec0c0b6dd04ef5e1042279c97f.tar.gz 3289223 BLAKE2B 875007252c2f2a6df8bfd6140b24458a8e9606109d4595c4c92460f99477a33c422c8e7796c73a4a68ae7ca82b0aa5630d14f1751f2c041a94ffdc69ed0f543b SHA512 772259225073331607c4c371f49851e51831c03c2121e51166319c99f3490f1e3a54f8573e01c40acdec54889d614e9ad762bfa2b999e2917ee58a26c8d0a4bf
+DIST SPIRV-Headers-cf653e4ca4858583802b0d1656bc934edff6bd7f.tar.gz 414356 BLAKE2B ff0b559a3abba507b90564a1a24845cad0f0fb1d27ae53fbd94b5040d66a79c3e735ddd07b8a02466bb24a4c8d7206048a21fb8205192c2422330f28cb98658f SHA512 715c1fe4b04fdae75940e5245ebace1edc9c8adc02fdca662770a885550635991833236d479da8403cc19ad8b7d40805b0e46a5ab9bea34d599577fb177c4c25
+DIST SPIRV-Tools-11cd875ed88484f93943071083b4821b4c3d2193.tar.gz 2654619 BLAKE2B 9ac163ad10b37ca780cbfa14a7ee38e71a4635f9a98a7aa568b8c0e3d0069917a465093606feb1394b5be819b9575af4c097e4a1f2d75e132b0b63b2089dbad0 SHA512 fd3a56e21811ace5b86bfb4b54715eb36054af57d7026d382fe3875bd4879bca499cf6b059e9ade409d0903fa3b5a67731ff296d193263cfaaed79ea103a9f50
+DIST amber-8797ee109e7a6ea4d1f58f387f757545fa35325b.tar.gz 517294 BLAKE2B 72d031b883f4e33232dc9e32960c8c3c84248f5c54187d8d9e00e5af13a9d32ceabb65b98141897c427925c5c5828ff0be31638cc121b2991ba0a8b49b47515b SHA512 29994899e8a93b89411b33860b7f33ad1c0677005e47423968c0bfc11a4dd496427b24288ecf24fab348a1a315f32276700c5aa5eb36d1671c06dbeea11db0f8
+DIST deqp-34639fb3f8b467b261624a1b2863b5e808bb7aef.tar.gz 34227237 BLAKE2B f9a462020fea8042d3dddc8235bfde87433c3c1591737539889e2072cf37296312f7c8a3d2a52391e06a7af56496e6b5b16f594b34a471c62b2fb436281d79e1 SHA512 c568622cfd2fb2561086990ecb3bb2dced6b0d491614aaf13b15c5d4e161d89a2e716715425c10e0d38e878277d98d6eccb732073c5e680d33e52922856f7c44
+DIST glslang-9158061398a96033c990e69156bd28c67114544b.tar.gz 3381429 BLAKE2B 305ebcbcb305db5f870688c4846d0a92d66ad67a1e5b17d0b9052861c9cedbdac1b0f24036818e74ad32ae0a31578a641bf4318595ff823c062896732a5f5159 SHA512 a5db025bb9b2b7db8b3a9cc691430383b95ade470951b93d5f625c05fc1965093e7a6355659917ab79466c566cddc5a5ff5d477f32bf5da7ef0cfaf79d8df3ce
diff --git a/media-gfx/deqp/OWNERS b/media-gfx/deqp/OWNERS
new file mode 100644
index 0000000..cbca39b
--- /dev/null
+++ b/media-gfx/deqp/OWNERS
@@ -0,0 +1,6 @@
+anholt@chromium.org
+chadversary@chromium.org
+gurchetansingh@chromium.org
+hoegsberg@chromium.org
+ihf@chromium.org
+marcheu@chromium.org
diff --git a/media-gfx/deqp/README.md b/media-gfx/deqp/README.md
new file mode 100644
index 0000000..90c5c1f
--- /dev/null
+++ b/media-gfx/deqp/README.md
@@ -0,0 +1,6 @@
+* first obtain local copy of dEQP repo, for instance
+  git clone https://github.com/KhronosGroup/VK-GL-CTS
+* then checkout desired branch/tag/commit in VK-GL-CTS, for instance
+  git checkout origin/vulkan-cts-1.2.7"
+* finally run this script inside the chroot"
+  . update.sh VK-GL-CTS"
diff --git a/media-gfx/deqp/deqp-2021.02.10-r3.ebuild b/media-gfx/deqp/deqp-2021.02.10-r3.ebuild
deleted file mode 100644
index 4294f86..0000000
--- a/media-gfx/deqp/deqp-2021.02.10-r3.ebuild
+++ /dev/null
@@ -1,165 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-CMAKE_MAKEFILE_GENERATOR="ninja"
-
-inherit cmake-utils cros-sanitizers
-
-DESCRIPTION="drawElements Quality Program - an OpenGL ES testsuite"
-HOMEPAGE="https://android.googlesource.com/platform/external/deqp"
-
-# This corresponds to a commit near ToT.
-MY_DEQP_COMMIT='e58b0b2e5075855482dc7d9991b0db35f9afe0c4'
-
-# To uprev deqp, follow these commands:
-# wget https://android.googlesource.com/platform/external/deqp/+archive/${MY_DEQP_COMMIT}.tar.gz
-# gsutil cp -a public-read deqp-${MY_DEQP_COMMIT}.tar.gz gs://chromeos-localmirror/distfiles/
-
-# When building the Vulkan CTS, dEQP requires that certain external
-# dependencies be unpacked into the source tree. See ${S}/external/fetch_sources.py
-# in the dEQP for the required dependencies. Upload these tarballs to the ChromeOS mirror too and
-# update the manifest.
-MY_AMBER_COMMIT='4d0115cccfcb3b73d20b6513b1c40748e6403c50'
-MY_GLSLANG_COMMIT='ffccefddfd9a02ec0c0b6dd04ef5e1042279c97f'
-MY_SPIRV_TOOLS_COMMIT='cd590fa3341284cd6d1ee82366155786cfd44c96'
-MY_SPIRV_HEADERS_COMMIT='104ecc356c1bea4476320faca64440cd1df655a3'
-
-SRC_URI="https://android.googlesource.com/platform/external/deqp/+archive/${MY_DEQP_COMMIT}.tar.gz -> deqp-${MY_DEQP_COMMIT}.tar.gz
-	https://github.com/KhronosGroup/glslang/archive/${MY_GLSLANG_COMMIT}.tar.gz -> glslang-${MY_GLSLANG_COMMIT}.tar.gz
-	https://github.com/KhronosGroup/SPIRV-Tools/archive/${MY_SPIRV_TOOLS_COMMIT}.tar.gz -> SPIRV-Tools-${MY_SPIRV_TOOLS_COMMIT}.tar.gz
-	https://github.com/KhronosGroup/SPIRV-Headers/archive/${MY_SPIRV_HEADERS_COMMIT}.tar.gz -> SPIRV-Headers-${MY_SPIRV_HEADERS_COMMIT}.tar.gz
-	https://github.com/google/amber/archive/${MY_AMBER_COMMIT}.tar.gz -> amber-${MY_AMBER_COMMIT}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="*"
-IUSE="-vulkan"
-
-RDEPEND="
-	virtual/opengles
-	media-libs/minigbm
-	media-libs/libpng
-	vulkan? ( virtual/vulkan-icd )
-"
-
-DEPEND="${RDEPEND}
-	x11-drivers/opengles-headers
-	x11-libs/libX11
-"
-
-S="${WORKDIR}"
-
-src_unpack() {
-	default_src_unpack || die
-
-	mkdir -p external/{amber,glslang,spirv-tools,spirv-headers}
-	mv "amber-${MY_AMBER_COMMIT}" external/amber/src || die
-	mv "glslang-${MY_GLSLANG_COMMIT}" external/glslang/src || die
-	mv "SPIRV-Tools-${MY_SPIRV_TOOLS_COMMIT}" external/spirv-tools/src || die
-	mv "SPIRV-Headers-${MY_SPIRV_HEADERS_COMMIT}" external/spirv-headers/src || die
-}
-
-src_prepare() {
-	default
-}
-
-src_configure() {
-	sanitizers-setup-env
-
-	# See crbug.com/585712.
-	append-lfs-flags
-
-	local de_cpu=
-	case "${ARCH}" in
-		x86)   de_cpu='DE_CPU_X86';;
-		amd64) de_cpu='DE_CPU_X86_64';;
-		arm)   de_cpu='DE_CPU_ARM';;
-		arm64) de_cpu='DE_CPU_ARM_64';;
-		*) die "unknown ARCH '${ARCH}'";;
-	esac
-
-	# Tell cmake to not produce rpaths. crbug.com/585715.
-	local mycmakeargs=(
-		-DCMAKE_SKIP_RPATH=1
-		-DCMAKE_FIND_ROOT_PATH="${ROOT}"
-		-DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER
-		-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY
-		-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY
-		-DDE_CPU="${de_cpu}"
-		-DDEQP_TARGET=surfaceless
-	)
-
-	# Undefine direct link to use runtime loading.
-	append-cxxflags "-UDEQP_EGL_DIRECT_LINK"
-	append-cxxflags "-UDEQP_GLES2_DIRECT_LINK"
-	append-cxxflags "-UEQP_GLES3_DIRECT_LINK"
-	append-cxxflags "-DQP_SUPPORT_PNG=1"
-
-	cmake-utils_src_configure
-}
-
-src_install() {
-	# dEQP requires that the layout of its installed files match the layout
-	# of its build directory. Otherwise the binaries cannot find the data
-	# files.
-	local deqp_dir="/usr/local/${PN}"
-
-	# Install module binaries
-	exeinto "${deqp_dir}/modules/egl"
-	doexe "${BUILD_DIR}/modules/egl/deqp-egl"
-	exeinto "${deqp_dir}/modules/gles2"
-	doexe "${BUILD_DIR}/modules/gles2/deqp-gles2"
-	exeinto "${deqp_dir}/modules/gles3"
-	doexe "${BUILD_DIR}/modules/gles3/deqp-gles3"
-	exeinto "${deqp_dir}/modules/gles31"
-	doexe "${BUILD_DIR}/modules/gles31/deqp-gles31"
-	if use vulkan; then
-		exeinto "${deqp_dir}/external/vulkancts/modules/vulkan"
-		doexe "${BUILD_DIR}/external/vulkancts/modules/vulkan/deqp-vk"
-	fi
-
-	# Install executors
-	exeinto "${deqp_dir}/execserver"
-	doexe "${BUILD_DIR}/execserver/execserver"
-	doexe "${BUILD_DIR}/execserver/execserver-client"
-	doexe "${BUILD_DIR}/execserver/execserver-test"
-	exeinto "${deqp_dir}/executor"
-	doexe "${BUILD_DIR}/executor/executor"
-	doexe "${BUILD_DIR}/executor/testlog-to-xml"
-
-	# Install data files
-	insinto "${deqp_dir}/modules/gles2"
-	doins -r "${BUILD_DIR}/modules/gles2/gles2"
-	insinto "${deqp_dir}/modules/gles3"
-	doins -r "${BUILD_DIR}/modules/gles3/gles3"
-	insinto "${deqp_dir}/modules/gles31"
-	doins -r "${BUILD_DIR}/modules/gles31/gles31"
-	if use vulkan; then
-		insinto "${deqp_dir}/external/vulkancts/modules/vulkan"
-		doins -r "${BUILD_DIR}/external/vulkancts/modules/vulkan/vulkan"
-	fi
-	insinto "${deqp_dir}"
-	doins -r "doc/testlog-stylesheet"
-
-	# Install master control files (deprecated location)
-	insinto "${deqp_dir}/master"
-	doins "android/cts/master/egl-master.txt"
-	doins "android/cts/master/gles2-master.txt"
-	doins "android/cts/master/gles3-master.txt"
-	doins "android/cts/master/gles31-master.txt"
-	if use vulkan; then
-		doins "android/cts/master/vk-master.txt"
-	fi
-
-	# Install caselists
-	insinto "${deqp_dir}/caselists"
-	newins "android/cts/master/egl-master.txt" "egl.txt"
-	newins "android/cts/master/gles2-master.txt" "gles2.txt"
-	newins "android/cts/master/gles3-master.txt" "gles3.txt"
-	newins "android/cts/master/gles31-master.txt" "gles31.txt"
-	if use vulkan; then
-		newins "android/cts/master/vk-master.txt" "vk.txt"
-	fi
-}
diff --git a/media-gfx/deqp/deqp-2021.08.20-r2.ebuild b/media-gfx/deqp/deqp-2021.08.20-r2.ebuild
new file mode 100644
index 0000000..0c1cd3a
--- /dev/null
+++ b/media-gfx/deqp/deqp-2021.08.20-r2.ebuild
@@ -0,0 +1,159 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+CMAKE_MAKEFILE_GENERATOR="ninja"
+
+inherit cmake-utils cros-sanitizers
+
+DESCRIPTION="drawElements Quality Program - an OpenGL ES testsuite"
+HOMEPAGE="https://github.com/KhronosGroup/VK-GL-CTS"
+
+# This corresponds to a commit for the chosen tag/branch.
+MY_DEQP_COMMIT='34639fb3f8b467b261624a1b2863b5e808bb7aef'
+
+# When building the Vulkan CTS, dEQP requires that certain external
+# dependencies be unpacked into the source tree. See ${S}/external/fetch_sources.py
+# in the dEQP for the required dependencies. Upload these tarballs to the ChromeOS mirror too and
+# update the manifest.
+MY_AMBER_COMMIT='8797ee109e7a6ea4d1f58f387f757545fa35325b'
+MY_GLSLANG_COMMIT='9158061398a96033c990e69156bd28c67114544b'
+MY_SPIRV_TOOLS_COMMIT='11cd875ed88484f93943071083b4821b4c3d2193'
+MY_SPIRV_HEADERS_COMMIT='cf653e4ca4858583802b0d1656bc934edff6bd7f'
+
+SRC_URI="https://github.com/KhronosGroup/VK-GL-CTS/archive/${MY_DEQP_COMMIT}.tar.gz -> deqp-${MY_DEQP_COMMIT}.tar.gz
+	https://github.com/KhronosGroup/glslang/archive/${MY_GLSLANG_COMMIT}.tar.gz -> glslang-${MY_GLSLANG_COMMIT}.tar.gz
+	https://github.com/KhronosGroup/SPIRV-Tools/archive/${MY_SPIRV_TOOLS_COMMIT}.tar.gz -> SPIRV-Tools-${MY_SPIRV_TOOLS_COMMIT}.tar.gz
+	https://github.com/KhronosGroup/SPIRV-Headers/archive/${MY_SPIRV_HEADERS_COMMIT}.tar.gz -> SPIRV-Headers-${MY_SPIRV_HEADERS_COMMIT}.tar.gz
+	https://github.com/google/amber/archive/${MY_AMBER_COMMIT}.tar.gz -> amber-${MY_AMBER_COMMIT}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="*"
+IUSE="-vulkan"
+
+RDEPEND="
+	virtual/opengles
+	media-libs/minigbm
+	media-libs/libpng
+	vulkan? ( virtual/vulkan-icd )
+"
+
+DEPEND="${RDEPEND}
+	x11-drivers/opengles-headers
+	x11-libs/libX11
+"
+
+S="${WORKDIR}"
+
+src_unpack() {
+	default_src_unpack || die
+
+	mv "VK-GL-CTS-${MY_DEQP_COMMIT}/"* .
+	# TODO(ihf): remove cat once deqp-runner supports references.
+	cat android/cts/master/vk-master/*.txt | sort > android/cts/master/tmp_cat_vk-master.txt
+	mkdir -p external/{amber,glslang,spirv-tools,spirv-headers}
+	mv "amber-${MY_AMBER_COMMIT}" external/amber/src || die
+	mv "glslang-${MY_GLSLANG_COMMIT}" external/glslang/src || die
+	mv "SPIRV-Tools-${MY_SPIRV_TOOLS_COMMIT}" external/spirv-tools/src || die
+	mv "SPIRV-Headers-${MY_SPIRV_HEADERS_COMMIT}" external/spirv-headers/src || die
+}
+
+src_prepare() {
+	default
+}
+
+src_configure() {
+	sanitizers-setup-env
+
+	# See crbug.com/585712.
+	append-lfs-flags
+
+	local de_cpu=
+	case "${ARCH}" in
+		x86)   de_cpu='DE_CPU_X86';;
+		amd64) de_cpu='DE_CPU_X86_64';;
+		arm)   de_cpu='DE_CPU_ARM';;
+		arm64) de_cpu='DE_CPU_ARM_64';;
+		*) die "unknown ARCH '${ARCH}'";;
+	esac
+
+	# Tell cmake to not produce rpaths. crbug.com/585715.
+	local mycmakeargs=(
+		-DCMAKE_SKIP_RPATH=1
+		-DCMAKE_FIND_ROOT_PATH="${ROOT}"
+		-DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER
+		-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY
+		-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY
+		-DDE_CPU="${de_cpu}"
+		-DDEQP_TARGET=surfaceless
+	)
+
+	# Undefine direct link to use runtime loading.
+	append-cxxflags "-UDEQP_EGL_DIRECT_LINK"
+	append-cxxflags "-UDEQP_GLES2_DIRECT_LINK"
+	append-cxxflags "-UEQP_GLES3_DIRECT_LINK"
+	append-cxxflags "-DQP_SUPPORT_PNG=1"
+
+	cmake-utils_src_configure
+}
+
+src_install() {
+	# dEQP requires that the layout of its installed files match the layout
+	# of its build directory. Otherwise the binaries cannot find the data
+	# files.
+	local deqp_dir="/usr/local/${PN}"
+
+	# Install module binaries
+	exeinto "${deqp_dir}/modules/egl"
+	doexe "${BUILD_DIR}/modules/egl/deqp-egl"
+	exeinto "${deqp_dir}/modules/gles2"
+	doexe "${BUILD_DIR}/modules/gles2/deqp-gles2"
+	exeinto "${deqp_dir}/modules/gles3"
+	doexe "${BUILD_DIR}/modules/gles3/deqp-gles3"
+	exeinto "${deqp_dir}/modules/gles31"
+	doexe "${BUILD_DIR}/modules/gles31/deqp-gles31"
+	if use vulkan; then
+		exeinto "${deqp_dir}/external/vulkancts/modules/vulkan"
+		doexe "${BUILD_DIR}/external/vulkancts/modules/vulkan/deqp-vk"
+	fi
+
+	# Install executors
+	exeinto "${deqp_dir}/execserver"
+	doexe "${BUILD_DIR}/execserver/execserver"
+	doexe "${BUILD_DIR}/execserver/execserver-client"
+	doexe "${BUILD_DIR}/execserver/execserver-test"
+	exeinto "${deqp_dir}/executor"
+	doexe "${BUILD_DIR}/executor/executor"
+	doexe "${BUILD_DIR}/executor/testlog-to-xml"
+
+	# Install data files
+	insinto "${deqp_dir}/modules/gles2"
+	doins -r "${BUILD_DIR}/modules/gles2/gles2"
+	insinto "${deqp_dir}/modules/gles3"
+	doins -r "${BUILD_DIR}/modules/gles3/gles3"
+	insinto "${deqp_dir}/modules/gles31"
+	doins -r "${BUILD_DIR}/modules/gles31/gles31"
+	if use vulkan; then
+		insinto "${deqp_dir}/external/vulkancts/modules/vulkan"
+		doins -r "${BUILD_DIR}/external/vulkancts/modules/vulkan/vulkan"
+	fi
+	insinto "${deqp_dir}"
+	doins -r "doc/testlog-stylesheet"
+
+	# Install caselists
+	insinto "${deqp_dir}/caselists"
+	newins "android/cts/master/egl-master.txt" "egl.txt"
+	newins "android/cts/master/gles2-master.txt" "gles2.txt"
+	newins "android/cts/master/gles3-master.txt" "gles3.txt"
+	newins "android/cts/master/gles31-master.txt" "gles31.txt"
+	if use vulkan; then
+		# TODO(ihf): remove tmp_cat_vk-master.txt when deqp-runner understands
+		# directory structure below again.
+		newins "android/cts/master/tmp_cat_vk-master.txt" "vk.txt"
+		#newins "android/cts/master/vk-master.txt" "vk.txt"
+		#doins -r "android/cts/master/vk-master"
+		#dosym "${deqp_dir}/caselists/vk-master" "${deqp_dir}/external/vulkancts/modules/vulkan/vk-master"
+	fi
+}
diff --git a/media-gfx/deqp/update.sh b/media-gfx/deqp/update.sh
index 066b404..ad311c0 100644
--- a/media-gfx/deqp/update.sh
+++ b/media-gfx/deqp/update.sh
@@ -1,14 +1,24 @@
 #!/bin/sh
 
+# Copyright 2019-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.
+
 deqp_repo=$1
 
-if [ -z "$deqp_repo" ]; then
-    echo usage: $0 DEQP_REPO
+if [ -z "${deqp_repo}" ]; then
+    echo "usage:"
+    echo "* first obtain local copy of dEQP repo, for instance"
+    echo "  git clone https://github.com/KhronosGroup/VK-GL-CTS"
+    echo "* then checkout desired branch/tag/commit in VK-GL-CTS, for instance origin/vulkan-cts-1.2.7"
+    echo "* finally run this script inside the chroot"
+    echo "  . update.sh VK-GL-CTS"
     exit 1
 fi
 
 declare -A revisions
 declare -A git_repos=(
+    [deqp]=https://github.com/KhronosGroup/VK-GL-CTS/archive
     [SPIRV-Headers]=https://github.com/KhronosGroup/SPIRV-Headers/archive
     [SPIRV-Tools]=https://github.com/KhronosGroup/SPIRV-Tools/archive
     [glslang]=https://github.com/KhronosGroup/glslang/archive
@@ -17,8 +27,8 @@
 
 for module in "${!git_repos[@]}"; do
     # Pull the git sha1 out of fetch_sources.py
-    revision=$(PYTHONPATH=$deqp_repo/external python2 -c "import fetch_sources; \
-	print [p for p in fetch_sources.PACKAGES if p.baseDir == '$module'.lower()][0].revision")
+    revision=$(PYTHONPATH=$deqp_repo/external python3 -c "import fetch_sources; \
+	print([p for p in fetch_sources.PACKAGES if p.baseDir == '$module'.lower()][0].revision)")
 
     var=${module/-/_}
     var="MY_${var^^}_COMMIT"
@@ -26,10 +36,8 @@
     revisions[$module]=$revision
 done
 
-# Add the deqp repo and revision manually here, then do the transfers
-# and ebuild update.
-git_repos[deqp]=https://android.googlesource.com/platform/external/deqp/+archive
-revisions[deqp]=$(git -C $deqp_repo show-ref -s --head ^HEAD)
+# Do the transfers and ebuild update.
+revisions[deqp]=$(git -C "${deqp_repo}" show-ref -s --head ^HEAD)
 
 sed_cmd="${sed_cmd}s/MY_DEQP_COMMIT='.*'/MY_DEQP_COMMIT='${revisions[deqp]}'/;"
 
diff --git a/media-gfx/sane-airscan/Manifest b/media-gfx/sane-airscan/Manifest
index bdda6b1..5883a93 100644
--- a/media-gfx/sane-airscan/Manifest
+++ b/media-gfx/sane-airscan/Manifest
@@ -1 +1 @@
-DIST sane-airscan-0.99.26.tar.gz 196488 BLAKE2B 5c4529f34ec5bf6a184cb06936367e3e8766168104422d5a10342e55e41be46ac6a5ef07b789bb5fca57f850566e74bb79ec52f334b89b3f32c393daa79ff956 SHA512 92ea7861e38b389bd7073a0eabee09bdf806250993a85715a819c1fd5fdf0a617c13ecaca9198d3add2aa4e70ef89bcf2f954b9f3e68413f5b19e78962254922
+DIST sane-airscan-a7eb696c6930ab3ab4191ce1cdaffd03ef09fd05.tar.gz 198591 BLAKE2B 2e5a15fec2f72406e8e0ba945c9005b4958543246f8fe81a0de6a12e053fc347f47a262b578b12f690fe014a244a022b0f0276b4ca925b3326b50bc4262a1ae9 SHA512 cd2838952c2ff238b0e66a1b1669fa9697156fac46802bf046ed62760fe84f3bebf3bfb56fda2f717ba3ca83a8ccbe6657fb977454e3d93744244328626c2ba3
diff --git a/media-gfx/sane-airscan/sane-airscan-0.99.26-r2.ebuild b/media-gfx/sane-airscan/sane-airscan-0.99.26-r2.ebuild
deleted file mode 120000
index 859a71b..0000000
--- a/media-gfx/sane-airscan/sane-airscan-0.99.26-r2.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-sane-airscan-0.99.26.ebuild
\ No newline at end of file
diff --git a/media-gfx/sane-airscan/sane-airscan-0.99.26.ebuild b/media-gfx/sane-airscan/sane-airscan-0.99.26.ebuild
deleted file mode 100644
index ab6cc5a..0000000
--- a/media-gfx/sane-airscan/sane-airscan-0.99.26.ebuild
+++ /dev/null
@@ -1,85 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit meson cros-fuzzer cros-sanitizers
-
-DESCRIPTION="eSCL and WSD SANE backend"
-HOMEPAGE="https://github.com/alexpevzner/sane-airscan"
-LICENSE="GPL-2"
-SLOT="0/${PVR}"
-KEYWORDS="*"
-IUSE="asan fuzzer"
-
-COMMON_DEPEND="
-	dev-libs/libxml2:=
-	media-gfx/sane-backends:=
-	media-libs/libjpeg-turbo:=
-	media-libs/libpng:=
-	net-dns/avahi:=
-	net-libs/libsoup:=
-"
-DEPEND="${COMMON_DEPEND}"
-RDEPEND="${COMMON_DEPEND}"
-
-# SHA-1 or tag will both work.
-GIT_REF="${PV}"
-SRC_URI="https://github.com/alexpevzner/sane-airscan/archive/${GIT_REF}.tar.gz -> ${PN}-${GIT_REF}.tar.gz"
-S="${WORKDIR}/${PN}-${GIT_REF}"
-
-FUZZERS=(
-	"fuzzer-query"
-	"fuzzer-uri"
-	"fuzzer-xml"
-)
-
-PATCHES=(
-	"${FILESDIR}/${PN}-0.9.20-noasan.patch"
-	"${FILESDIR}/${PN}-0.9.26-add_justify.patch"
-)
-
-src_configure() {
-	sanitizers-setup-env || die
-	fuzzer-setup-binary || die
-	meson_src_configure
-}
-
-src_compile() {
-	if use fuzzer; then
-		meson_src_compile "${FUZZERS[@]}"
-	else
-		meson_src_compile
-	fi
-}
-
-src_install() {
-	if ! use fuzzer; then
-		dobin "${BUILD_DIR}/airscan-discover"
-
-		exeinto "/usr/$(get_libdir)/sane"
-		doexe "${BUILD_DIR}/libsane-airscan.so.1"
-
-		insinto "/etc/sane.d"
-		newins "${FILESDIR}/airscan.conf" "airscan.conf"
-
-		insinto "/etc/sane.d/dll.d"
-		newins "${S}/dll.conf" "airscan.conf"
-	fi
-
-	# Safe to call even if the fuzzer isn't built because this won't do
-	# anything unless we have USE=fuzzer.
-	for fuzzer in "${FUZZERS[@]}"; do
-		# Rename fuzzers before install because the upstream target
-		# names ended up being different from our naming scheme.
-		local compat_name="airscan_${fuzzer#fuzzer-}_fuzzer"
-		mv "${BUILD_DIR}/${fuzzer}" "${BUILD_DIR}/${compat_name}"
-		fuzzer_install "${FILESDIR}/fuzzers.owners" \
-			"${BUILD_DIR}/${compat_name}"
-	done
-
-	# Include sane-airscan/airscan.h in header
-	mkdir "${BUILD_DIR}/sane-airscan"
-	cp "${S}/airscan.h" "${BUILD_DIR}/sane-airscan"
-	doheader -r "${BUILD_DIR}/sane-airscan"
-}
diff --git a/media-gfx/sane-airscan/sane-airscan-0.99.27_pre20210716-r2.ebuild b/media-gfx/sane-airscan/sane-airscan-0.99.27_pre20210716-r2.ebuild
new file mode 120000
index 0000000..e4396c68
--- /dev/null
+++ b/media-gfx/sane-airscan/sane-airscan-0.99.27_pre20210716-r2.ebuild
@@ -0,0 +1 @@
+sane-airscan-0.99.27_pre20210716.ebuild
\ No newline at end of file
diff --git a/media-gfx/sane-airscan/sane-airscan-0.99.27_pre20210716.ebuild b/media-gfx/sane-airscan/sane-airscan-0.99.27_pre20210716.ebuild
new file mode 100644
index 0000000..46ae390
--- /dev/null
+++ b/media-gfx/sane-airscan/sane-airscan-0.99.27_pre20210716.ebuild
@@ -0,0 +1,85 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit meson cros-fuzzer cros-sanitizers
+
+DESCRIPTION="eSCL and WSD SANE backend"
+HOMEPAGE="https://github.com/alexpevzner/sane-airscan"
+LICENSE="GPL-2"
+SLOT="0/${PVR}"
+KEYWORDS="*"
+IUSE="fuzzer"
+
+COMMON_DEPEND="
+	dev-libs/libxml2:=
+	media-gfx/sane-backends:=
+	media-libs/libjpeg-turbo:=
+	media-libs/libpng:=
+	net-dns/avahi:=
+	net-libs/libsoup:=
+"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+
+# SHA-1 or tag will both work.
+GIT_REF="a7eb696c6930ab3ab4191ce1cdaffd03ef09fd05"
+SRC_URI="https://github.com/alexpevzner/sane-airscan/archive/${GIT_REF}.tar.gz -> ${PN}-${GIT_REF}.tar.gz"
+S="${WORKDIR}/${PN}-${GIT_REF}"
+
+FUZZERS=(
+	"fuzzer-query"
+	"fuzzer-uri"
+	"fuzzer-xml"
+)
+
+PATCHES=(
+	"${FILESDIR}/${PN}-0.9.20-noasan.patch"
+)
+
+src_configure() {
+	sanitizers-setup-env || die
+	meson_src_configure
+}
+
+src_compile() {
+	if use fuzzer; then
+		meson_src_compile "${FUZZERS[@]}"
+	else
+		meson_src_compile
+	fi
+}
+
+src_install() {
+	if ! use fuzzer; then
+		dobin "${BUILD_DIR}/airscan-discover"
+
+		exeinto "/usr/$(get_libdir)/sane"
+		doexe "${BUILD_DIR}/libsane-airscan.so.1"
+
+		insinto "/etc/sane.d"
+		newins "${FILESDIR}/airscan.conf" "airscan.conf"
+
+		insinto "/etc/sane.d/dll.d"
+		newins "${S}/dll.conf" "airscan.conf"
+	fi
+
+	# Safe to call even if the fuzzer isn't built because this won't do
+	# anything unless we have USE=fuzzer.
+	for fuzzer in "${FUZZERS[@]}"; do
+		# Rename fuzzers before install because the upstream target
+		# names ended up being different from our naming scheme.
+		local compat_name="airscan_${fuzzer#fuzzer-}_fuzzer"
+		mv "${BUILD_DIR}/${fuzzer}" "${BUILD_DIR}/${compat_name}"
+		local fuzzer_component_id="860616"
+		fuzzer_install "${FILESDIR}/fuzzers.owners" \
+			"${BUILD_DIR}/${compat_name}" \
+			--comp "${fuzzer_component_id}"
+	done
+
+	# Include sane-airscan/airscan.h in header
+	mkdir "${BUILD_DIR}/sane-airscan"
+	cp "${S}/airscan.h" "${BUILD_DIR}/sane-airscan"
+	doheader -r "${BUILD_DIR}/sane-airscan"
+}
diff --git a/media-gfx/sane-backends/files/sane-backends-1.0.32-epsonds.patch b/media-gfx/sane-backends/files/sane-backends-1.0.32-epsonds.patch
new file mode 100644
index 0000000..2c666bd
--- /dev/null
+++ b/media-gfx/sane-backends/files/sane-backends-1.0.32-epsonds.patch
@@ -0,0 +1,4680 @@
+commit 1e88e1504ef77f09d49da95d393a0af09d20f7fa
+Author: Ralph Little <skelband@gmail.com>
+Date:   Sat Jul 3 15:55:25 2021 -0700
+
+    epsonds: Merge to master
+
+diff --git a/backend/Makefile.am b/backend/Makefile.am
+index 48a1393a5..ca282e4c6 100644
+--- a/backend/Makefile.am
++++ b/backend/Makefile.am
+@@ -511,11 +511,20 @@ libepsonds_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=epsonds
+ nodist_libsane_epsonds_la_SOURCES = epsonds-s.c
+ libsane_epsonds_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=epsonds
+ libsane_epsonds_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
++
++if have_libavahi
++libsane_epsonds_la_LIBADD = $(COMMON_LIBS) libepsonds.la ../sanei/sanei_init_debug.lo ../sanei/sanei_constrain_value.lo \
++				../sanei/sanei_config.lo ../sanei/sanei_config2.lo sane_strstatus.lo \
++				../sanei/sanei_usb.lo ../sanei/sanei_scsi.lo \
++				../sanei/sanei_tcp.lo ../sanei/sanei_udp.lo \
++				$(SANEI_SANEI_JPEG_LO) $(JPEG_LIBS) $(USB_LIBS) $(MATH_LIB) $(RESMGR_LIBS) $(SOCKET_LIBS) $(AVAHI_LIBS)
++else
+ libsane_epsonds_la_LIBADD = $(COMMON_LIBS) libepsonds.la ../sanei/sanei_init_debug.lo ../sanei/sanei_constrain_value.lo \
+ 				../sanei/sanei_config.lo ../sanei/sanei_config2.lo sane_strstatus.lo \
+ 				../sanei/sanei_usb.lo ../sanei/sanei_scsi.lo \
+ 				../sanei/sanei_tcp.lo ../sanei/sanei_udp.lo \
+ 				$(SANEI_SANEI_JPEG_LO) $(JPEG_LIBS) $(USB_LIBS) $(MATH_LIB) $(RESMGR_LIBS) $(SOCKET_LIBS)
++endif
+ EXTRA_DIST += epsonds.conf.in
+ 
+ libfujitsu_la_SOURCES = fujitsu.c fujitsu.h fujitsu-scsi.h
+diff --git a/backend/epsonds-cmd.c b/backend/epsonds-cmd.c
+index 5141e0765..6f0ec6487 100644
+--- a/backend/epsonds-cmd.c
++++ b/backend/epsonds-cmd.c
+@@ -134,6 +134,7 @@ static SANE_Status esci2_cmd(epsonds_scanner* s,
+ 	SANE_Status status;
+ 	unsigned int more;
+ 	char header[13], rbuf[64]; /* add one more byte for header buffer to correct buffer overflow issue,*/
++	char *buf;
+ 
+ 	DBG(8, "%s: %4s len %lu, payload len: %lu\n", __func__, cmd, len, plen);
+ 
+@@ -151,6 +152,21 @@ static SANE_Status esci2_cmd(epsonds_scanner* s,
+ 
+ 	// send RequestBlock, request immediate response if there's no payload
+ 	status = eds_txrx(s, header, len, rbuf, (plen > 0) ? 0 : 64);
++
++	/* pointer to the token's value */
++	buf = rbuf + 12;
++	/* nrd / nrdBUSY */
++	DBG(8, "buf = %s\n",buf);
++	if (strncmp("#nrd", buf, 4) == 0) {
++		buf += 4;
++			DBG(8, "buf = %s\n",buf);
++		if (strncmp("BUSY", buf, 4) == 0) {
++			DBG(8, "device busy\n");
++			DBG(8, "SANE_STATUS:%d\n", SANE_STATUS_DEVICE_BUSY);
++			return SANE_STATUS_DEVICE_BUSY;
++		}
++	}
++
+ 	if (status != SANE_STATUS_GOOD) {
+ 		return status;
+ 	}
+@@ -227,6 +243,21 @@ SANE_Status esci2_fin(epsonds_scanner *s)
+ 	DBG(5, "%s\n", __func__);
+ 
+ 	status = esci2_cmd_simple(s, "FIN x0000000", NULL);
++
++	for(int i = 0; i < 10; i++) {
++
++		if(status == SANE_STATUS_DEVICE_BUSY || status == SANE_STATUS_IO_ERROR) {
++			status = esci2_cmd_simple(s, "FIN x0000000", NULL);
++		}
++		else {
++			DBG(1, "break\n");
++			break;
++		}
++		DBG(1, "sleep(5)\n");
++		sleep(5);
++
++	}
++
+ 	s->locked = 0;
+ 	return status;
+ }
+@@ -264,13 +295,13 @@ static char *decode_binary(char *buf, int len)
+ 
+ 	memcpy(tmp, buf, 4);
+ 	tmp[4] = '\0';
+-	len -= 4;
+ 
+ 	if (buf[0] != 'h')
+ 		return NULL;
+ 
+ 	hl = strtol(tmp + 1, NULL, 16);
+-	if (hl > len) hl = len;
++	if (hl > len)
++		hl = len;
+ 	if (hl) {
+ 
+ 		char *v = malloc(hl + 1);
+@@ -313,9 +344,6 @@ static SANE_Status info_cb(void *userdata, char *token, int len)
+ 	epsonds_scanner *s = (epsonds_scanner *)userdata;
+ 	char *value;
+ 
+-	if (DBG_LEVEL >= 11) {
+-		debug_token(DBG_LEVEL, __func__, token, len);
+-	}
+ 
+ 	/* pointer to the token's value */
+ 	value = token + 3;
+@@ -333,7 +361,6 @@ static SANE_Status info_cb(void *userdata, char *token, int len)
+ 		s->hw->model = decode_string(value, len);
+ 		s->hw->sane.model = s->hw->model;
+ 		DBG(1, " product: %s\n", s->hw->model);
+-		/* we will free the string later */
+ 	}
+ 
+ 	if (strncmp("VER", token, 3) == 0) {
+@@ -421,6 +448,7 @@ static SANE_Status info_cb(void *userdata, char *token, int len)
+ 				int max = decode_value(value + 4 + 8, 8);
+ 
+ 				DBG(1, "     ADF: area %dx%d @ 100dpi\n", min, max);
++				eds_set_adf_area(s->hw,	min, max, 100);
+ 			}
+ 
+ 			if (strncmp("AMIN", value, 4) == 0) {
+@@ -437,11 +465,40 @@ static SANE_Status info_cb(void *userdata, char *token, int len)
+ 				int max = decode_value(value + 4 + 8, 8);
+ 
+ 				DBG(1, "     ADF: max %dx%d @ 100dpi\n", min, max);
++			}
++		}
++
++
++
++
++
++
++		if (len == 16) {
++
++			if (strncmp("AREA", value, 4) == 0) {
++
++				int min = decode_value(value + 4, 4);
++				int max = decode_value(value + 4 + 4, 8);
++
++				DBG(1, "     ADF: area %dx%d @ 100dpi\n", min, max);
+ 
+ 				eds_set_adf_area(s->hw,	min, max, 100);
+ 			}
++
++			if (strncmp("AMAX", value, 4) == 0) {
++
++				// d
++				int min = decode_value(value + 4, 4);
++				// i
++				int max = decode_value(value + 4 + 4, 8);
++
++				DBG(1, "     ADF: max %dx%d @ 100dpi\n", min, max);
++			}
+ 		}
+ 
++
++
++
+ 		if (len == 12) {
+ 
+ 			/* RESOi0000600 */
+@@ -483,6 +540,22 @@ static SANE_Status info_cb(void *userdata, char *token, int len)
+ 			}
+ 		}
+ 
++
++		if (len == 16) {
++
++			/* AREAi0000850i0001400 */
++			if (strncmp("AREA", value, 4) == 0) {
++				//d
++				int min = decode_value(value + 4, 4);
++				//i
++				int max = decode_value(value + 4 + 4, 8);
++
++				DBG(1, "      FB: area %dx%d @ 100dpi\n", min, max);
++
++				eds_set_fbf_area(s->hw,	min, max, 100);
++			}
++		}
++
+ 		if (len == 8) {
+ 
+ 			if (strncmp("ALGNLEFT", value, len) == 0) {
+@@ -602,6 +675,7 @@ static SANE_Status capa_cb(void *userdata, char *token, int len)
+ 
+ 		if (strncmp("ADFCRP ", token, 3 + 4) == 0) {
+ 			DBG(1, "     ADF: image cropping\n");
++			s->hw->adf_has_crp = 1;
+ 		}
+ 
+ 		if (strncmp("ADFFAST", token, 3 + 4) == 0) {
+@@ -636,6 +710,23 @@ static SANE_Status capa_cb(void *userdata, char *token, int len)
+ 		}
+ 	}
+ 
++
++	if (strncmp("COLLIST", token, 3 + 4) == 0)
++	{
++		char *p = token + 3 + 4;
++		int count = (len - 4);
++		int readBytes = 0;
++		s->hw->has_mono = 0;
++		while (readBytes < count) {
++			if (strncmp(p, "M001", 4) == 0)
++			{
++				s->hw->has_mono = 1;
++			}
++			readBytes+=4;
++			p+=4;
++		}
++	}
++
+ 	/* RSMRANGi0000050i0000600 */
+ 
+ 	if (strncmp("RSMRANG", token, 3 + 4) == 0) {
+@@ -659,17 +750,24 @@ static SANE_Status capa_cb(void *userdata, char *token, int len)
+ 
+ 		char *p = token + 3 + 4;
+ 
+-		if (p[0] == 'i') {
+ 
+-			int i;
+-			int count = (len - 4) / 8;
+-
+-			for (i = 0; i < count; i++) {
++			int count = (len - 4);
++			int readBytes = 0;
+ 
++			while (readBytes < count) {
++			      if(*p == 'i')
++		             {
+ 				eds_add_resolution(s->hw, decode_value(p, 8));
+ 				p += 8;
++				readBytes += 8;
++			     }else if(*p == 'd')
++			    {
++				eds_add_resolution(s->hw, decode_value(p, 4));
++				p += 4;
++				readBytes +=4;
++			     }
+ 			}
+-		}
++
+ 	}
+ 
+ 	return SANE_STATUS_GOOD;
+@@ -684,16 +782,26 @@ SANE_Status esci2_capa(epsonds_scanner *s)
+ 
+ static SANE_Status stat_cb(void *userdata, char *token, int len)
+ {
+-/*
+-	epsonds_scanner *s = (epsonds_scanner *)userdata;
+ 	char *value = token + 3;
+-*/
++
+ 	userdata = userdata;
+ 
+ 	if (DBG_LEVEL >= 11) {
+ 		debug_token(DBG_LEVEL, __func__, token, len);
+ 	}
+ 
++	if (strncmp("ERR", token, 3) == 0) {
++		if (strncmp("ADF PE ", value, len) == 0) {
++			DBG(1, "     PE : paper empty\n");
++			return SANE_STATUS_NO_DOCS;
++		}
++
++		if (strncmp("ADF OPN", value, len) == 0) {
++			DBG(1, "     conver open\n");
++			return SANE_STATUS_COVER_OPEN;
++		}
++	}
++
+ 	return SANE_STATUS_GOOD;
+ }
+ 
+@@ -742,10 +850,10 @@ static SANE_Status para_cb(void *userdata, char *token, int len)
+ 	return SANE_STATUS_GOOD;
+ }
+ 
+-SANE_Status esci2_para(epsonds_scanner *s, char *parameters)
++SANE_Status esci2_para(epsonds_scanner *s, char *parameters, int len)
+ {
+ 	DBG(8, "%s: %s\n", __func__, parameters);
+-	return esci2_cmd(s, "PARAx0000000", 12, parameters, strlen(parameters), NULL, &para_cb);
++	return esci2_cmd(s, "PARAx0000000", 12, parameters, len, NULL, &para_cb);
+ }
+ 
+ SANE_Status esci2_mech(epsonds_scanner *s, char *parameters)
+@@ -784,12 +892,105 @@ static SANE_Status img_cb(void *userdata, char *token, int len)
+ 		return SANE_STATUS_GOOD;
+ 	}
+ 
++	if (len == 12 && strncmp("pst", token, 3) == 0) {
++
++		s->dummy = decode_value(token + 3 + 4, 4);
++
++		DBG(10, "%s: pst width: %d, height: %d, dummy: %d\n",
++			__func__,
++			decode_value(token + 3, 4),
++			decode_value(token + 3 + 4 + 4, 4),
++			s->dummy);
++
++		return SANE_STATUS_GOOD;
++	}
++
++	if (len == 16 && strncmp("pst", token, 3) == 0) {
++
++		s->dummy = decode_value(token + 3 + 4, 4);
++
++		DBG(10, "%s: pst width: %d, height: %d, dummy: %d\n",
++			__func__,
++			decode_value(token + 3, 4),
++			decode_value(token + 3 + 4 + 4, 8),
++			s->dummy);
++
++		return SANE_STATUS_GOOD;
++	}
++
++	if (len == 20 && strncmp("pst", token, 3) == 0) {
++
++		s->dummy = decode_value(token + 3 + 8, 4);
++
++		DBG(10, "%s: pst width: %d, height: %d, dummy: %d\n",
++			__func__,
++			decode_value(token + 3, 8),
++			decode_value(token + 3 + 8 + 4, 8),
++			s->dummy);
++
++		return SANE_STATUS_GOOD;
++	}
++
++
++	// i0001696i0002347
+ 	if (len == 16 && strncmp("pen", token, 3) == 0) {
+ 		DBG(10, "%s: page end\n", __func__);
+ 		s->eof = 1;
++		if (s->isflatbedScan)
++		{
++			s->scanning = 0;
++		}
++		DBG(10, "%s: pen width: %d, height: %d, dummy: %d\n",
++			__func__,
++			decode_value(token + 3, 8),
++			decode_value(token + 3 + 8, 8),
++		s->dummy);
++		s->width_temp = decode_value(token + 3, 8);
++		s->height_temp = decode_value(token + 3 + 8, 8);
+ 		return SANE_STATUS_EOF;
+ 	}
+ 
++	// d696i0002347
++	if (len == 12 && strncmp("pen", token, 3) == 0) {
++		DBG(10, "%s: page end\n", __func__);
++		s->eof = 1;
++		if (s->isflatbedScan)
++		{
++			s->scanning = 0;
++		}
++
++		DBG(10, "%s: pen width: %d, height: %d, dummy: %d\n",
++			__func__,
++			decode_value(token + 3, 4),
++			decode_value(token + 3 + 4, 8),
++			s->dummy);
++
++		s->width_temp = decode_value(token + 3, 4);
++		s->height_temp = decode_value(token + 3 + 4, 8);
++		return SANE_STATUS_EOF;
++	}
++
++	// d696d2347
++	if (len == 8 && strncmp("pen", token, 3) == 0) {
++		DBG(10, "%s: page end\n", __func__);
++		s->eof = 1;
++		if (s->isflatbedScan)
++		{
++			s->scanning = 0;
++		}
++		DBG(10, "%s: pen width: %d, height: %d, dummy: %d\n",
++			__func__,
++			decode_value(token + 3, 4),
++			decode_value(token + 3 + 4, 4),
++			s->dummy);
++
++		s->width_temp = decode_value(token + 3, 4);
++		s->height_temp = decode_value(token + 3 + 4, 4);
++
++		return SANE_STATUS_EOF;
++	}
++
++
+ 	/* typIMGA or typIMGB */
+ 	if (len == 4 && strncmp("typ", token, 3) == 0) {
+ 
+@@ -807,6 +1008,7 @@ static SANE_Status img_cb(void *userdata, char *token, int len)
+ 		char *cause = token + 3 + 4;	/* OPN, PJ, PE, ERR, LTF, LOCK, DFED, DTCL, AUT, PERM */
+ 
+ 		s->scanning = 0;
++		s->scanEnd = 1;
+ 
+ 		DBG(1, "%s: error on option %3.3s, cause %4.4s\n",
+ 			__func__, option, cause);
+@@ -831,6 +1033,8 @@ static SANE_Status img_cb(void *userdata, char *token, int len)
+ 	}
+ 
+ 	if (len == 4 && strncmp("lftd000", token, 3 + 4) == 0) {
++		DBG(1, "%s:lft ok\n", __func__);
++		s->scanEnd = 1;
+ 		s->scanning = 0;
+ 	}
+ 
+@@ -846,6 +1050,8 @@ esci2_img(struct epsonds_scanner *s, SANE_Int *length)
+ 	unsigned int more;
+ 	ssize_t read;
+ 
++	DBG(15, "esci2_img start\n");
++
+ 	*length = 0;
+ 
+ 	if (s->canceling)
+@@ -856,6 +1062,7 @@ esci2_img(struct epsonds_scanner *s, SANE_Int *length)
+ 	if (status != SANE_STATUS_GOOD) {
+ 		return status;
+ 	}
++	DBG(15, "request img OK\n");
+ 
+ 	/* receive DataHeaderBlock */
+ 	memset(s->buf, 0x00, 64);
+@@ -863,6 +1070,7 @@ esci2_img(struct epsonds_scanner *s, SANE_Int *length)
+ 	if (status != SANE_STATUS_GOOD) {
+ 		return status;
+ 	}
++	DBG(15, "receive img OK\n");
+ 
+ 	/* check if we need to read any image data */
+ 	more = 0;
+@@ -873,6 +1081,17 @@ esci2_img(struct epsonds_scanner *s, SANE_Int *length)
+ 	/* this handles eof and errors */
+ 	parse_status = esci2_parse_block((char *)s->buf + 12, 64 - 12, s, &img_cb);
+ 
++	if (s->backside)
++	{
++		s->width_back = s->width_temp;
++		s->height_back = s->height_temp;
++	}else{
++		s->width_front = s->width_temp;
++		s->height_front = s->height_temp;
++
++	}
++
++
+ 	/* no more data? return using the status of the esci2_parse_block
+ 	 * call, which might hold other error conditions.
+ 	 */
+@@ -884,7 +1103,6 @@ esci2_img(struct epsonds_scanner *s, SANE_Int *length)
+ 	if (more > s->bsz) {
+ 		return SANE_STATUS_IO_ERROR;
+ 	}
+-
+ 	/* ALWAYS read image data */
+ 	if (s->hw->connection == SANE_EPSONDS_NET) {
+ 		epsonds_net_request_read(s, more);
+diff --git a/backend/epsonds-cmd.h b/backend/epsonds-cmd.h
+index 973609a03..2bd19dbb3 100644
+--- a/backend/epsonds-cmd.h
++++ b/backend/epsonds-cmd.h
+@@ -20,7 +20,7 @@ SANE_Status esci2_can(epsonds_scanner *s);
+ SANE_Status esci2_capa(epsonds_scanner *s);
+ SANE_Status esci2_resa(epsonds_scanner *s);
+ SANE_Status esci2_stat(epsonds_scanner *s);
+-SANE_Status esci2_para(epsonds_scanner *s, char *parameters);
++SANE_Status esci2_para(epsonds_scanner *s, char *parameters, int len);
+ SANE_Status esci2_mech(epsonds_scanner *s, char *parameters);
+ SANE_Status esci2_trdt(epsonds_scanner *s);
+ SANE_Status esci2_img(struct epsonds_scanner *s, SANE_Int *length) ;
+diff --git a/backend/epsonds-jpeg.c b/backend/epsonds-jpeg.c
+index 244f442ec..99ca53af2 100644
+--- a/backend/epsonds-jpeg.c
++++ b/backend/epsonds-jpeg.c
+@@ -20,19 +20,39 @@
+ #include "epsonds.h"
+ #include "epsonds-jpeg.h"
+ #include "epsonds-ops.h"
++#include <setjmp.h>
+ 
+-#define min(A,B) (((A)<(B)) ? (A) : (B))
++struct my_error_mgr {
++  struct jpeg_error_mgr pub;
++  jmp_buf setjmp_buffer;
++};
++
++typedef struct my_error_mgr * my_error_ptr;
++
++
++METHODDEF(void) my_error_exit (j_common_ptr cinfo)
++{
++
++	char buffer[JMSG_LENGTH_MAX];
++	(*cinfo->err->format_message) (cinfo, buffer);
++
++	DBG(10,"Jpeg decode error [%s]", buffer);
++}
++
++LOCAL(struct jpeg_error_mgr *) jpeg_custom_error (struct my_error_mgr * err)
++{
++
++	struct jpeg_error_mgr* pRet  = jpeg_std_error(&(err->pub));
++	err->pub.error_exit = my_error_exit;
++
++	return pRet;
++}
+ 
+ typedef struct
+ {
+ 	struct jpeg_source_mgr pub;
+-
+-	epsonds_scanner *s;
+ 	JOCTET *buffer;
+-
+-	SANE_Byte *linebuffer;
+-	SANE_Int linebuffer_size;
+-	SANE_Int linebuffer_index;
++	int length;
+ }
+ epsonds_src_mgr;
+ 
+@@ -50,22 +70,11 @@ METHODDEF(boolean)
+ jpeg_fill_input_buffer(j_decompress_ptr cinfo)
+ {
+ 	epsonds_src_mgr *src = (epsonds_src_mgr *)cinfo->src;
+-	int avail, size;
+-
+-	/* read from the scanner or the ring buffer */
+-
+-	avail = eds_ring_avail(src->s->current);
+-	if (avail == 0) {
+-		return FALSE;
+-	}
+-
+ 	/* read from scanner if no data? */
+-	size = min(1024, avail);
+-
+-	eds_ring_read(src->s->current, src->buffer, size);
+ 
+ 	src->pub.next_input_byte = src->buffer;
+-	src->pub.bytes_in_buffer = size;
++	src->pub.bytes_in_buffer = src->length;
++	DBG(18, "reading from ring buffer, %d left\n",  src->length);
+ 
+ 	return TRUE;
+ }
+@@ -87,140 +96,140 @@ jpeg_skip_input_data(j_decompress_ptr cinfo, long num_bytes)
+ 	}
+ }
+ 
+-SANE_Status
+-eds_jpeg_start(epsonds_scanner *s)
++
++void eds_decode_jpeg(epsonds_scanner*s, SANE_Byte *data, SANE_Int size, ring_buffer* ringBuffer, SANE_Int isBackSide, SANE_Int needToConvertBW)
+ {
+-	epsonds_src_mgr *src;
++    struct jpeg_decompress_struct jpeg_cinfo;
++   	struct my_error_mgr jpeg_err;
+ 
+-	s->jpeg_cinfo.err = jpeg_std_error(&s->jpeg_err);
++    {
++        epsonds_src_mgr *src;
+ 
+-	jpeg_create_decompress(&s->jpeg_cinfo);
++        jpeg_cinfo.err = jpeg_custom_error(&jpeg_err);
+ 
+-	s->jpeg_cinfo.src = (struct jpeg_source_mgr *)(*s->jpeg_cinfo.mem->alloc_small)((j_common_ptr)&s->jpeg_cinfo,
+-						JPOOL_PERMANENT, sizeof(epsonds_src_mgr));
++        jpeg_create_decompress(&jpeg_cinfo);
+ 
+-	memset(s->jpeg_cinfo.src, 0x00, sizeof(epsonds_src_mgr));
++        jpeg_cinfo.src = (struct jpeg_source_mgr *)(*jpeg_cinfo.mem->alloc_small)((j_common_ptr)&jpeg_cinfo,
++                            JPOOL_PERMANENT, sizeof(epsonds_src_mgr));
+ 
+-	src = (epsonds_src_mgr *)s->jpeg_cinfo.src;
+-	src->s = s;
++        memset(jpeg_cinfo.src, 0x00, sizeof(epsonds_src_mgr));
++;
++    	src = (epsonds_src_mgr *)jpeg_cinfo.src;
++        src->pub.init_source = jpeg_init_source;
++        src->pub.fill_input_buffer = jpeg_fill_input_buffer;
++        src->pub.skip_input_data = jpeg_skip_input_data;
++        src->pub.resync_to_restart = jpeg_resync_to_restart;
++        src->pub.term_source = jpeg_term_source;
++        src->pub.bytes_in_buffer = 0;
++        src->pub.next_input_byte = NULL;
++		src->buffer = (JOCTET*)data;
++		src->length = size;
++    }
++    {
++	    if (jpeg_read_header(&jpeg_cinfo, TRUE)) {
+ 
+-	src->buffer = (JOCTET *)(*s->jpeg_cinfo.mem->alloc_small)((j_common_ptr)&s->jpeg_cinfo,
+-							JPOOL_PERMANENT,
+-							1024 * sizeof(JOCTET));
++		if (jpeg_start_decompress(&jpeg_cinfo)) {
+ 
+-	src->pub.init_source = jpeg_init_source;
+-	src->pub.fill_input_buffer = jpeg_fill_input_buffer;
+-	src->pub.skip_input_data = jpeg_skip_input_data;
+-	src->pub.resync_to_restart = jpeg_resync_to_restart;
+-	src->pub.term_source = jpeg_term_source;
+-	src->pub.bytes_in_buffer = 0;
+-	src->pub.next_input_byte = NULL;
+-
+-	s->jpeg_header_seen = 0;
+-
+-	return SANE_STATUS_GOOD;
+-}
+-
+-SANE_Status
+-eds_jpeg_read_header(epsonds_scanner *s)
+-{
+-	epsonds_src_mgr *src = (epsonds_src_mgr *)s->jpeg_cinfo.src;
+-
+-	if (jpeg_read_header(&s->jpeg_cinfo, TRUE)) {
+-
+-		s->jdst = sanei_jpeg_jinit_write_ppm(&s->jpeg_cinfo);
+-
+-		if (jpeg_start_decompress(&s->jpeg_cinfo)) {
+-
+-			int size;
+-
+-			DBG(3, "%s: w: %d, h: %d, components: %d\n",
++			DBG(10,"%s: w: %d, h: %d, components: %d\n",
+ 				__func__,
+-				s->jpeg_cinfo.output_width, s->jpeg_cinfo.output_height,
+-				s->jpeg_cinfo.output_components);
+-
+-			size = s->jpeg_cinfo.output_width * s->jpeg_cinfo.output_components * 1;
+-
+-			src->linebuffer = (*s->jpeg_cinfo.mem->alloc_large)((j_common_ptr)&s->jpeg_cinfo,
+-				JPOOL_PERMANENT, size);
+-
+-			src->linebuffer_size = 0;
+-			src->linebuffer_index = 0;
+-
+-			s->jpeg_header_seen = 1;
+-
+-			return SANE_STATUS_GOOD;
+-
+-		} else {
+-			DBG(0, "%s: decompression failed\n", __func__);
+-			return SANE_STATUS_IO_ERROR;
++				jpeg_cinfo.output_width, jpeg_cinfo.output_height,
++				jpeg_cinfo.output_components);
+ 		}
+-	} else {
+-		DBG(0, "%s: cannot read JPEG header\n", __func__);
+-		return SANE_STATUS_IO_ERROR;
+-	}
+-}
+-
+-void
+-eds_jpeg_finish(epsonds_scanner *s)
+-{
+-	jpeg_destroy_decompress(&s->jpeg_cinfo);
+-}
+-
+-void
+-eds_jpeg_read(SANE_Handle handle, SANE_Byte *data,
+-	   SANE_Int max_length, SANE_Int *length)
+-{
+-	epsonds_scanner *s = handle;
+-
+-	struct jpeg_decompress_struct cinfo = s->jpeg_cinfo;
+-	epsonds_src_mgr *src = (epsonds_src_mgr *)s->jpeg_cinfo.src;
+-
+-	int l;
+-
+-	*length = 0;
+-
+-	/* copy from line buffer if available */
+-	if (src->linebuffer_size && src->linebuffer_index < src->linebuffer_size) {
+-
+-		*length = src->linebuffer_size - src->linebuffer_index;
+-
+-		if (*length > max_length)
+-			*length = max_length;
+-
+-		memcpy(data, src->linebuffer + src->linebuffer_index, *length);
+-		src->linebuffer_index += *length;
+-
+-		return;
+-	}
+-
+-	if (cinfo.output_scanline >= cinfo.output_height) {
+-		*length = 0;
+-		return;
+-	}
+-
+-	/* scanlines of decompressed data will be in s->jdst->buffer
+-	 * only one line at time is supported
+-	 */
+-
+-	l = jpeg_read_scanlines(&cinfo, s->jdst->buffer, 1);
+-	if (l == 0) {
+-		return;
+-	}
+-
+-	/* from s->jdst->buffer to linebuffer
+-	 * linebuffer holds width * bytesperpixel
+-	 */
+-
+-	(*s->jdst->put_pixel_rows)(&cinfo, s->jdst, 1, (char *)src->linebuffer);
+-
+-	*length = cinfo.output_width * cinfo.output_components * 1;
+-	src->linebuffer_size = *length;
+-	src->linebuffer_index = 0;
+-
+-	if (*length > max_length)
+-		*length = max_length;
+-
+-	memcpy(data, src->linebuffer + src->linebuffer_index, *length);
+-	src->linebuffer_index += *length;
++        }
++    }
++    {
++		int sum = 0;
++        int bufSize = jpeg_cinfo.output_width * jpeg_cinfo.output_components;
++
++		int monoBufSize = (jpeg_cinfo.output_width + 7)/8;
++
++        JSAMPARRAY scanlines = (jpeg_cinfo.mem->alloc_sarray)((j_common_ptr)&jpeg_cinfo, JPOOL_IMAGE, bufSize, 1);
++        while (jpeg_cinfo.output_scanline < jpeg_cinfo.output_height) {
++            int l = jpeg_read_scanlines(&jpeg_cinfo, scanlines, 1);
++            if (l == 0) {
++                break;
++            }
++			sum += l;
++
++			if (needToConvertBW)
++			{
++				SANE_Byte* bytes = scanlines[0];
++
++				SANE_Int imgPos = 0;
++
++				for (int i = 0; i < monoBufSize; i++)
++				{
++					SANE_Byte outByte = 0;
++
++                    for(SANE_Int bitIndex = 0; bitIndex < 8 && imgPos < bufSize; bitIndex++) {
++						//DBG(10,"bytes[imgPos] = %d\n", bytes[imgPos]);
++
++                         if(bytes[imgPos] >= 110) {
++                               SANE_Byte bit = 7 - (bitIndex % 8);
++                               outByte     |= (1<< bit);
++                         }
++						 imgPos += 1;
++                  	 }
++						//DBG(10,"outByte = %d\n", outByte);
++					eds_ring_write(ringBuffer, &outByte, 1);
++				}
++			}
++			else
++			{
++				eds_ring_write(ringBuffer, scanlines[0], bufSize);
++			}
++
++			// decode until valida data
++			if (isBackSide)
++			{
++				if (sum >= s->height_back)
++				{
++					break;
++				}
++			}else
++			{
++				if (sum >= s->height_front)
++				{
++					break;
++				}
++			}
++        }
++		DBG(10,"decodded lines = %d\n", sum);
++
++		// abandon unncessary data
++		if ((JDIMENSION)sum < jpeg_cinfo.output_height)
++		{
++			// unncessary data
++			while(1)
++			{
++				int l = jpeg_read_scanlines(&jpeg_cinfo, scanlines, 1);
++				if (l == 0)
++				{
++					break;
++				}
++			}
++		}
++
++		// if not auto crop mode padding to lines
++		if (s->val[OPT_ADF_CRP].w == 0)
++		{
++			unsigned char* padding = malloc(s->params.bytes_per_line);
++			memset(padding, 255, s->params.bytes_per_line);
++			DBG(10,"padding data lines = %d to %d pa \n", sum,  s->params.lines);
++
++			while(sum < s->params.lines)
++			{
++				eds_ring_write(ringBuffer, padding, bufSize);
++				sum++;
++			}
++
++			free(padding);
++			padding = NULL;
++		}
++    }
++    {
++        jpeg_finish_decompress(&jpeg_cinfo);
++        jpeg_destroy_decompress(&jpeg_cinfo);
++    }
++    return;
+ }
+diff --git a/backend/epsonds-jpeg.h b/backend/epsonds-jpeg.h
+index a804dec9b..42f542d33 100644
+--- a/backend/epsonds-jpeg.h
++++ b/backend/epsonds-jpeg.h
+@@ -10,8 +10,4 @@
+  * modify it under the terms of the GNU General Public License as
+  * published by the Free Software Foundation, version 2.
+  */
+-
+-SANE_Status eds_jpeg_start(epsonds_scanner *s);
+-void eds_jpeg_finish(epsonds_scanner *s);
+-SANE_Status eds_jpeg_read_header(epsonds_scanner *s);
+-void eds_jpeg_read(SANE_Handle handle, SANE_Byte *data, SANE_Int max_length, SANE_Int *length);
++void eds_decode_jpeg(epsonds_scanner*s, SANE_Byte *data, SANE_Int size, ring_buffer* ringBuffer, SANE_Int isBackSide, SANE_Int needToConvertBW);
+diff --git a/backend/epsonds-net.c b/backend/epsonds-net.c
+index 3c8be2931..4f4c1e267 100644
+--- a/backend/epsonds-net.c
++++ b/backend/epsonds-net.c
+@@ -32,10 +32,19 @@
+ 
+ #include "sane/sanei_debug.h"
+ 
++
+ static ssize_t
+ epsonds_net_read_raw(epsonds_scanner *s, unsigned char *buf, ssize_t wanted,
+ 		       SANE_Status *status)
+ {
++	DBG(15, "%s: wanted: %ld\n", __func__, wanted);
++
++	if (wanted == 0)
++	{
++	    *status = SANE_STATUS_GOOD;
++		return 0;
++	}
++
+ 	int ready;
+ 	ssize_t read = -1;
+ 	fd_set readable;
+@@ -284,3 +293,228 @@ epsonds_net_unlock(struct epsonds_scanner *s)
+ /*	epsonds_net_read(s, buf, 1, &status); */
+ 	return status;
+ }
++#if WITH_AVAHI
++
++#include <assert.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++#include <avahi-client/lookup.h>
++#include <avahi-common/error.h>
++#include <avahi-common/simple-watch.h>
++#include <sys/time.h>
++#include <errno.h>
++
++static AvahiSimplePoll *simple_poll = NULL;
++
++static struct timeval borowseEndTime;
++
++static int resolvedCount = 0;
++static int browsedCount = 0;
++static int waitResolver = 0;
++
++typedef struct {
++    AvahiClient* client;
++    Device_Found_CallBack callBack;
++}EDSAvahiUserData;
++
++static int my_avahi_simple_poll_loop(AvahiSimplePoll *s) {
++    struct timeval currentTime;
++
++    for (;;)
++    {
++         int r = avahi_simple_poll_iterate(s, 1);
++		if (r != 0)
++		{
++			if (r >= 0 || errno != EINTR)
++			{
++					DBG(10, "my_avahi_simple_poll_loop end\n");
++					return r;
++			}
++		}
++
++		if (waitResolver) {
++			gettimeofday(&currentTime, NULL);
++
++			if ((currentTime.tv_sec - borowseEndTime.tv_sec) >= 3)
++			{
++				avahi_simple_poll_quit(simple_poll);
++				DBG(10, "resolve timeout\n");
++				return 0;
++			}
++		}
++    }
++}
++
++static void
++epsonds_resolve_callback(AvahiServiceResolver *r, AVAHI_GCC_UNUSED AvahiIfIndex interface,
++                            AVAHI_GCC_UNUSED AvahiProtocol protocol,
++                            AvahiResolverEvent event, const char *name,
++                            const char  *type,
++                            const char  *domain,
++                            const char  *host_name,
++                            const AvahiAddress *address, uint16_t port, AvahiStringList *txt,
++                            AvahiLookupResultFlags  flags,
++                            void  *userdata)
++{
++	// unused parameter
++	(void)r;
++	(void)type;
++	(void)domain;
++	(void)host_name;
++	(void)port;
++	(void)flags;
++    EDSAvahiUserData* data = userdata;
++    char ipAddr[AVAHI_ADDRESS_STR_MAX];
++
++	DBG(10, "epsonds_searchDevices resolve_callback\n");
++
++
++    resolvedCount++;
++
++    switch (event) {
++    case AVAHI_RESOLVER_FAILURE:
++        break;
++    case AVAHI_RESOLVER_FOUND:
++        avahi_address_snprint(ipAddr, sizeof(ipAddr), address);
++	   DBG(10, "epsonds_searchDevices name = %s \n", name);
++        if (strlen(name) > 7)
++        {
++            if (strncmp(name, "EPSON", 5) == 0)
++            {
++				while(txt != NULL)
++				{
++					char* text = (char*)avahi_string_list_get_text(txt);
++					DBG(10, "avahi string = %s\n", text);
++
++					if (strlen(text) > 4 && strncmp(text, "mdl=", 4) == 0)
++					{
++						if (data->callBack)
++                		{
++							data->callBack(&text[4], ipAddr);
++							break;
++                		}
++					}
++					txt = avahi_string_list_get_next(txt);
++				}
++
++            }
++        }
++		break;
++    }
++}
++
++static void
++browse_callback(AvahiServiceBrowser *b, AvahiIfIndex interface,
++                            AvahiProtocol protocol, AvahiBrowserEvent event,
++                            const char *name, const char *type,
++                            const char *domain,
++                            AvahiLookupResultFlags flags,
++                            void* userdata)
++{
++    DBG(10, "browse_callback event = %d\n", event);
++
++	//unused parameter
++	(void)b;
++	(void)flags;
++
++    EDSAvahiUserData *data = userdata;
++    switch (event) {
++    case AVAHI_BROWSER_FAILURE:
++        avahi_simple_poll_quit(simple_poll);
++        return;
++    case AVAHI_BROWSER_NEW:
++	    DBG(10, "browse_callback name = %s\n", name);
++		browsedCount++;
++        if (!(avahi_service_resolver_new(data->client, interface, protocol, name,
++                                                               type, domain,
++                                                               AVAHI_PROTO_UNSPEC, 0,
++                                                               epsonds_resolve_callback, data)))
++		{
++			DBG(10, "avahi_service_resolver_new fails\n");
++		    break;
++		}
++    case AVAHI_BROWSER_REMOVE:
++        break;
++    case AVAHI_BROWSER_ALL_FOR_NOW:
++		DBG(10, "AVAHI_BROWSER_ALL_FOR_NOW\n");
++        gettimeofday(&borowseEndTime, NULL);
++
++        if (browsedCount > resolvedCount)
++        {
++			  DBG(10, "WAIT RESOLVER\n");
++               waitResolver = 1;
++         }else{
++			 DBG(10, "QUIT POLL\n");
++             avahi_simple_poll_quit(simple_poll);
++         }
++		break;
++    case AVAHI_BROWSER_CACHE_EXHAUSTED:
++		 DBG(10, "AVAHI_BROWSER_CACHE_EXHAUSTED\n");
++        break;
++    }
++}
++
++static void
++client_callback(AvahiClient *c, AvahiClientState state,
++                         AVAHI_GCC_UNUSED void *userdata)
++{
++    assert(c);
++    if (state == AVAHI_CLIENT_FAILURE)
++        avahi_simple_poll_quit(simple_poll);
++}
++
++SANE_Status epsonds_searchDevices(Device_Found_CallBack deviceFoundCallBack)
++{
++	int result = SANE_STATUS_GOOD;
++
++    AvahiClient *client = NULL;
++    AvahiServiceBrowser *sb = NULL;
++
++    EDSAvahiUserData data;
++
++    resolvedCount = 0;
++	browsedCount = 0;
++	waitResolver = 0;
++
++
++	int error = 0;
++    DBG(10, "epsonds_searchDevices\n");
++
++    if (!(simple_poll = avahi_simple_poll_new())) {
++        DBG(10, "avahi_simple_poll_new failed\n");
++		result = SANE_STATUS_INVAL;
++        goto fail;
++    }
++    client = avahi_client_new(avahi_simple_poll_get(simple_poll), 0,
++                                               client_callback, NULL, &error);
++    if (!client) {
++        DBG(10, "avahi_client_new failed %s\n", avahi_strerror(error));
++		result = SANE_STATUS_INVAL;
++        goto fail;
++    }
++    data.client = client;
++    data.callBack = deviceFoundCallBack;
++
++    if (!(sb = avahi_service_browser_new(client, AVAHI_IF_UNSPEC,
++                                                                   AVAHI_PROTO_UNSPEC, "_scanner._tcp",
++                                                                   NULL, 0, browse_callback, &data))) {
++        DBG(10, "avahi_service_browser_new failed: %s\n",
++                              avahi_strerror(avahi_client_errno(client)));
++		result = SANE_STATUS_INVAL;
++        goto fail;
++    }
++    my_avahi_simple_poll_loop(simple_poll);
++fail:
++    if (sb)
++        avahi_service_browser_free(sb);
++    if (client)
++        avahi_client_free(client);
++    if (simple_poll)
++        avahi_simple_poll_free(simple_poll);
++
++	DBG(10, "epsonds_searchDevices fin\n");
++
++    return result;
++}
++#endif
+diff --git a/backend/epsonds-net.h b/backend/epsonds-net.h
+index 107301bdc..2431c3594 100644
+--- a/backend/epsonds-net.h
++++ b/backend/epsonds-net.h
+@@ -4,6 +4,8 @@
+ #include <sys/types.h>
+ #include "../include/sane/sane.h"
+ 
++typedef void (*Device_Found_CallBack) (const char* name, const char* ip);
++
+ extern ssize_t epsonds_net_read(struct epsonds_scanner *s, unsigned char *buf, ssize_t buf_size,
+ 				SANE_Status *status);
+ extern size_t epsonds_net_write(struct epsonds_scanner *s, unsigned int cmd, const unsigned char *buf,
+@@ -13,4 +15,8 @@ extern SANE_Status epsonds_net_lock(struct epsonds_scanner *s);
+ extern SANE_Status epsonds_net_unlock(struct epsonds_scanner *s);
+ extern SANE_Status epsonds_net_request_read(epsonds_scanner *s, size_t len);
+ 
++#if WITH_AVAHI
++extern SANE_Status epsonds_searchDevices(Device_Found_CallBack deviceFoundCallBack);
++#endif
++
+ #endif
+diff --git a/backend/epsonds-ops.c b/backend/epsonds-ops.c
+index 8b9d11586..56194c428 100644
+--- a/backend/epsonds-ops.c
++++ b/backend/epsonds-ops.c
+@@ -28,10 +28,9 @@
+ extern struct mode_param mode_params[];
+ 
+ /* Define the different scan sources */
+-
+-#define FBF_STR	SANE_I18N("Flatbed")
+-#define TPU_STR	SANE_I18N("Transparency Unit")
+-#define ADF_STR	SANE_I18N("Automatic Document Feeder")
++#define STRING_FLATBED SANE_I18N("Flatbed")
++#define STRING_ADFFRONT SANE_I18N("ADF Front")
++#define STRING_ADFDUPLEX SANE_I18N("ADF Duplex")
+ 
+ extern SANE_String_Const source_list[];
+ 
+@@ -53,10 +52,13 @@ eds_dev_post_init(struct epsonds_device *dev)
+ 	DBG(10, "%s\n", __func__);
+ 
+ 	if (dev->has_fb)
+-		*source_list_add++ = FBF_STR;
++		*source_list_add++ = STRING_FLATBED;
+ 
+ 	if (dev->has_adf)
+-		*source_list_add++ = ADF_STR;
++		*source_list_add++ = STRING_ADFFRONT;
++
++	if (dev->adf_is_duplex)
++		*source_list_add++ = STRING_ADFDUPLEX;
+ 
+ 	if (source_list[0] == 0
+ 		|| (dev->res_list[0] == 0 && dev->dpi_range.min == 0)
+@@ -209,8 +211,6 @@ eds_init_parameters(epsonds_scanner *s)
+ 
+ 	memset(&s->params, 0, sizeof(SANE_Parameters));
+ 
+-	s->dummy = 0;
+-
+ 	/* setup depth according to our mode table */
+ 	if (mode_params[s->val[OPT_MODE].w].depth == 1)
+ 		s->params.depth = 1;
+@@ -314,6 +314,7 @@ eds_init_parameters(epsonds_scanner *s)
+ 
+ 	return SANE_STATUS_GOOD;
+ }
++#define min(A,B) (((A)<(B)) ? (A) : (B))
+ 
+ void
+ eds_copy_image_from_ring(epsonds_scanner *s, SANE_Byte *data, SANE_Int max_length,
+@@ -322,17 +323,13 @@ eds_copy_image_from_ring(epsonds_scanner *s, SANE_Byte *data, SANE_Int max_lengt
+ 	int lines, available;
+ 	int hw_line_size = (s->params.bytes_per_line + s->dummy);
+ 
+-	/* trim max_length to a multiple of hw_line_size */
+-	max_length -= (max_length % hw_line_size);
+-
+-	/* check available data */
+ 	available = eds_ring_avail(s->current);
+ 	if (max_length > available)
+ 		max_length = available;
+ 
+-	lines = max_length / hw_line_size;
++	lines = min(max_length / s->params.bytes_per_line, available / hw_line_size);
+ 
+-	DBG(18, "copying %d lines (%d, %d)\n", lines, s->params.bytes_per_line, s->dummy);
++	DBG(18, "copying %d lines (%d, %d, %d)\n", lines, s->params.bytes_per_line, s->dummy, s->params.depth);
+ 
+ 	/* need more data? */
+ 	if (lines == 0) {
+@@ -490,3 +487,12 @@ void eds_ring_flush(ring_buffer *ring)
+ {
+ 	eds_ring_skip(ring, ring->fill);
+ }
++
++void eds_ring_destory(ring_buffer *ring)
++{
++	if (ring->ring)
++	{
++		free(ring->ring);
++		ring->ring = NULL;
++	}
++}
+diff --git a/backend/epsonds-ops.h b/backend/epsonds-ops.h
+index fe503d60d..108d5444b 100644
+--- a/backend/epsonds-ops.h
++++ b/backend/epsonds-ops.h
+@@ -38,3 +38,4 @@ extern SANE_Int eds_ring_read(ring_buffer *ring, SANE_Byte *buf, SANE_Int size);
+ extern SANE_Int eds_ring_skip(ring_buffer *ring, SANE_Int size);
+ extern SANE_Int eds_ring_avail(ring_buffer *ring);
+ extern void eds_ring_flush(ring_buffer *ring)    ;
++extern void eds_ring_destory(ring_buffer *ring)    ;
+diff --git a/backend/epsonds-usb.c b/backend/epsonds-usb.c
+index c7e514cb7..dacfd5fa1 100644
+--- a/backend/epsonds-usb.c
++++ b/backend/epsonds-usb.c
+@@ -12,22 +12,3 @@
+  */
+ 
+ #include "epsonds-usb.h"
+-
+-SANE_Word epsonds_usb_product_ids[] = {
+-	0x0145,		/* DS-5500, DS-6500, DS-7500 */
+-	0x0146,		/* DS-50000, DS-60000, DS-70000 */
+-	0x014c,		/* DS-510 */
+-	0x014d,		/* DS-560 */
+-	0x0150,		/* DS-40 */
+-	0x0152,		/* DS-760, DS-860 */
+-	0x0154,		/* DS-520 */
+-	0x08bc,		/* PX-M7050 Series, WF-8510/8590 Series */
+-	0x08cc,		/* PX-M7050FX Series, WF-R8590 Series */
+-	0		/* last entry - this is used for devices that are specified
+-			   in the config file as "usb <vendor> <product>" */
+-};
+-
+-int epsonds_get_number_of_ids(void)
+-{
+-	return sizeof (epsonds_usb_product_ids) / sizeof (SANE_Word);
+-}
+diff --git a/backend/epsonds-usb.h b/backend/epsonds-usb.h
+index 96c77b5b6..9baab701e 100644
+--- a/backend/epsonds-usb.h
++++ b/backend/epsonds-usb.h
+@@ -18,7 +18,4 @@
+ 
+ #define SANE_EPSONDS_VENDOR_ID	(0x4b8)
+ 
+-extern SANE_Word epsonds_usb_product_ids[];
+-extern int epsonds_get_number_of_ids(void);
+-
+ #endif
+diff --git a/backend/epsonds.c b/backend/epsonds.c
+index 1a7f953d0..06721c3d0 100644
+--- a/backend/epsonds.c
++++ b/backend/epsonds.c
+@@ -50,6 +50,7 @@
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <unistd.h>
++#include <math.h>
+ 
+ #include "sane/saneopts.h"
+ #include "sane/sanei_config.h"
+@@ -64,7 +65,8 @@
+ #include "epsonds-jpeg.h"
+ #include "epsonds-net.h"
+ 
+-
++static SANE_Status
++setvalue(SANE_Handle handle, SANE_Int option, void *value, SANE_Int *info);
+ /*
+  * Definition of the mode_param struct, that is used to
+  * specify the valid parameters for the different scan modes.
+@@ -72,6 +74,1231 @@
+  * The depth variable gets updated when the bit depth is modified.
+  */
+ 
++
++static unsigned char LUT[][256] =
++{
++    {// 0
++        0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,
++        0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x0E,0x0F,
++        0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,
++        0x18,0x19,0x1A,0x1B,0x1C,0x1D,0x1E,0x1F,
++        0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,
++        0x28,0x29,0x2A,0x2B,0x2C,0x2D,0x2E,0x2F,
++        0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,
++        0x38,0x39,0x3A,0x3B,0x3C,0x3D,0x3E,0x3F,
++        0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,
++        0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,
++        0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,
++        0x58,0x59,0x5A,0x5B,0x5C,0x5D,0x5E,0x5F,
++        0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,
++        0x68,0x69,0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,
++        0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,
++        0x78,0x79,0x7A,0x7B,0x7C,0x7D,0x7E,0x7F,
++        0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,
++        0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,
++        0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,
++        0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,
++        0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,
++        0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,
++        0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,
++        0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF,
++        0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,
++        0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,
++        0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,
++        0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF,
++        0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,
++        0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF,
++        0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,
++        0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF
++    },
++    {	//  1
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
++        0x02,0x03,0x04,0x06,0x07,0x09,0x0B,0x0D,
++        0x10,0x12,0x14,0x17,0x19,0x1B,0x1E,0x20,
++        0x22,0x24,0x26,0x28,0x2A,0x2C,0x2E,0x30,
++        0x32,0x33,0x35,0x37,0x39,0x3B,0x3C,0x3E,
++        0x40,0x41,0x43,0x45,0x46,0x48,0x4A,0x4B,
++        0x4D,0x4F,0x50,0x52,0x53,0x55,0x57,0x58,
++        0x5A,0x5B,0x5D,0x5E,0x60,0x61,0x63,0x64,
++        0x66,0x67,0x69,0x6A,0x6C,0x6D,0x6F,0x70,
++        0x71,0x73,0x74,0x76,0x77,0x79,0x7A,0x7B,
++        0x7D,0x7E,0x7F,0x81,0x82,0x84,0x85,0x86,
++        0x88,0x89,0x8A,0x8C,0x8D,0x8E,0x90,0x91,
++        0x92,0x94,0x95,0x96,0x98,0x99,0x9A,0x9C,
++        0x9D,0x9E,0xA0,0xA1,0xA2,0xA3,0xA5,0xA6,
++        0xA7,0xA8,0xAA,0xAB,0xAC,0xAE,0xAF,0xB0,
++        0xB1,0xB3,0xB4,0xB5,0xB6,0xB8,0xB9,0xBA,
++        0xBB,0xBC,0xBE,0xBF,0xC0,0xC1,0xC3,0xC4,
++        0xC5,0xC6,0xC7,0xC9,0xCA,0xCB,0xCC,0xCD,
++        0xCF,0xD0,0xD1,0xD2,0xD3,0xD5,0xD6,0xD7,
++        0xD8,0xD9,0xDA,0xDC,0xDD,0xDE,0xDF,0xE0,
++        0xE1,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,
++        0xEB,0xEC,0xED,0xEE,0xEF,0xF0,0xF1,0xF3,
++        0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFB,0xFC,
++        0xFD,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF
++    },
++    {	// 2
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
++		0x02,0x03,0x04,0x05,0x07,0x08,0x0A,0x0C,
++		0x0E,0x10,0x12,0x14,0x16,0x16,0x19,0x1B,
++		0x1D,0x1F,0x21,0x23,0x25,0x27,0x28,0x2A,
++		0x2C,0x2E,0x30,0x32,0x33,0x35,0x37,0x39,
++		0x3A,0x3C,0x3E,0x40,0x41,0x43,0x45,0x46,
++		0x48,0x4A,0x4B,0x4D,0x4F,0x50,0x52,0x53,
++		0x55,0x57,0x58,0x5A,0x5B,0x5D,0x5F,0x60,
++		0x62,0x63,0x65,0x66,0x68,0x69,0x6B,0x6C,
++		0x6E,0x6F,0x71,0x72,0x74,0x75,0x77,0x78,
++		0x7A,0x7B,0x7D,0x7E,0x80,0x81,0x83,0x84,
++		0x86,0x87,0x88,0x8A,0x8B,0x8D,0x8E,0x90,
++		0x91,0x92,0x94,0x95,0x97,0x98,0x99,0x9B,
++		0x9C,0x9E,0x9F,0xA0,0xA2,0xA3,0xA5,0xA7,
++		0xA9,0xAA,0xAB,0xAD,0xAE,0xB0,0xB1,0xB2,
++		0xB4,0xB5,0xB6,0xB8,0xB9,0xBA,0xBC,0xBD,
++		0xBE,0xC0,0xC1,0xC2,0xC4,0xC5,0xC6,0xC8,
++		0xC9,0xCA,0xCC,0xCD,0xCE,0xD0,0xD1,0xD2,
++		0xD4,0xD5,0xD6,0xD7,0xD9,0xDA,0xDB,0xDD,
++		0xDE,0xDF,0xE1,0xE2,0xE3,0xE4,0xE6,0xE7,
++		0xE8,0xE9,0xEB,0xEC,0xED,0xEF,0xF0,0xF1,
++		0xF2,0xF4,0xF5,0xF6,0xF7,0xF9,0xFA,0xFB,
++		0xFC,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {	// 3
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x01,0x02,0x03,0x04,0x05,0x07,
++		0x08,0x0A,0x0C,0x0E,0x10,0x12,0x14,0x16,
++		0x18,0x1A,0x1C,0x1E,0x20,0x22,0x24,0x26,
++		0x28,0x2A,0x2B,0x2D,0x2F,0x31,0x33,0x34,
++		0x36,0x38,0x39,0x3B,0x3D,0x3E,0x40,0x42,
++		0x43,0x45,0x47,0x48,0x4A,0x4B,0x4D,0x4F,
++		0x50,0x52,0x53,0x55,0x56,0x58,0x59,0x5B,
++		0x5D,0x5E,0x60,0x61,0x63,0x64,0x66,0x67,
++		0x69,0x6A,0x6B,0x6D,0x6E,0x70,0x71,0x73,
++		0x74,0x76,0x77,0x79,0x7A,0x7B,0x7D,0x7E,
++		0x80,0x81,0x83,0x84,0x85,0x87,0x88,0x8A,
++		0x8B,0x8C,0x8E,0x8F,0x90,0x92,0x93,0x95,
++		0x96,0x97,0x99,0x9A,0x9B,0x9D,0x9E,0x9F,
++		0xA1,0xA2,0xA3,0xA5,0xA6,0xA7,0xA9,0xAA,
++		0xAB,0xAD,0xAE,0xAF,0xB1,0xB2,0xB3,0xB5,
++		0xB6,0xB7,0xB9,0xBA,0xBB,0xBD,0xBE,0xBF,
++		0xC0,0xC2,0xC3,0xC4,0xC6,0xC7,0xC8,0xC9,
++		0xCB,0xCC,0xCD,0xCF,0xD0,0xD1,0xD2,0xD4,
++		0xD5,0xD6,0xD7,0xD9,0xDA,0xDB,0xDC,0xDF,
++		0xE0,0xE1,0xE3,0xE4,0xE5,0xE6,0xE8,0xE9,
++		0xEA,0xEB,0xED,0xEE,0xEF,0xF0,0xF2,0xF3,
++		0xF4,0xF5,0xF6,0xF8,0xF9,0xFA,0xFB,0xFD,
++		0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++	},
++	{	//4
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x03,
++		0x04,0x05,0x07,0x08,0x0A,0x0C,0x0E,0x10,
++		0x12,0x14,0x16,0x18,0x1A,0x1C,0x1E,0x20,
++		0x22,0x24,0x26,0x28,0x2A,0x2B,0x2D,0x2F,
++		0x31,0x33,0x34,0x36,0x38,0x39,0x3B,0x3D,
++		0x3E,0x40,0x42,0x43,0x45,0x47,0x48,0x4A,
++		0x4B,0x4D,0x4F,0x50,0x52,0x53,0x55,0x56,
++		0x58,0x59,0x5B,0x5D,0x5E,0x60,0x61,0x63,
++		0x64,0x66,0x67,0x69,0x6A,0x6B,0x6D,0x6E,
++		0x70,0x71,0x73,0x74,0x76,0x77,0x79,0x7A,
++		0x7B,0x7D,0x7E,0x80,0x81,0x83,0x84,0x85,
++		0x87,0x88,0x8A,0x8B,0x8C,0x8E,0x8F,0x90,
++		0x92,0x93,0x95,0x96,0x97,0x99,0x9A,0x9B,
++		0x9D,0x9E,0x9F,0xA1,0xA2,0xA3,0xA5,0xA6,
++		0xA7,0xA9,0xAA,0xAB,0xAD,0xAE,0xAF,0xB1,
++		0xB2,0xB3,0xB5,0xB6,0xB7,0xB9,0xBA,0xBB,
++		0xBD,0xBE,0xBF,0xC0,0xC2,0xC3,0xC4,0xC6,
++		0xC7,0xC8,0xC9,0xCB,0xCC,0xCD,0xCF,0xD0,
++		0xD1,0xD2,0xD4,0xD5,0xD6,0xD7,0xD9,0xDA,
++		0xDB,0xDC,0xDE,0xDF,0xE0,0xE1,0xE3,0xE5,
++		0xE6,0xE8,0xE9,0xEA,0xEB,0xED,0xEE,0xEF,
++		0xF0,0xF2,0xF3,0xF4,0xF5,0xF6,0xF8,0xF9,
++		0xFA,0xFB,0xFD,0xFE,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {   // 5
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x01,0x02,0x03,0x04,0x05,0x07,0x08,0x0A,
++        0x0C,0x0E,0x10,0x12,0x14,0x16,0x18,0x1A,
++        0x1C,0x1E,0x20,0x22,0x24,0x26,0x28,0x2A,
++        0x2B,0x2D,0x2F,0x31,0x33,0x34,0x36,0x38,
++        0x39,0x3B,0x3D,0x3E,0x40,0x42,0x43,0x45,
++        0x47,0x48,0x4A,0x4B,0x4D,0x4F,0x50,0x52,
++        0x53,0x55,0x56,0x58,0x59,0x5B,0x5D,0x5E,
++        0x60,0x61,0x63,0x64,0x66,0x67,0x69,0x6A,
++        0x6B,0x6D,0x6E,0x70,0x71,0x73,0x74,0x76,
++        0x77,0x79,0x7A,0x7B,0x7D,0x7E,0x80,0x81,
++        0x83,0x84,0x85,0x87,0x88,0x8A,0x8B,0x8C,
++        0x8E,0x8F,0x90,0x92,0x93,0x95,0x96,0x97,
++        0x99,0x9A,0x9B,0x9D,0x9E,0x9F,0xA1,0xA2,
++        0xA3,0xA5,0xA6,0xA7,0xA9,0xAA,0xAB,0xAD,
++        0xAE,0xAF,0xB1,0xB2,0xB3,0xB5,0xB6,0xB7,
++        0xB9,0xBA,0xBB,0xBD,0xBE,0xBF,0xC0,0xC2,
++        0xC3,0xC4,0xC6,0xC7,0xC8,0xC9,0xCB,0xCC,
++        0xCD,0xCF,0xD0,0xD1,0xD2,0xD4,0xD5,0xD6,
++        0xD7,0xD9,0xDA,0xDB,0xDC,0xDE,0xDF,0xE0,
++        0xE3,0xE4,0xE5,0xE6,0xE8,0xE9,0xEA,0xEB,
++        0xED,0xEE,0xEF,0xF0,0xF2,0xF3,0xF4,0xF5,
++        0xF6,0xF8,0xF9,0xFA,0xFB,0xFD,0xFE,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {	// 6
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,
++        0x03,0x04,0x05,0x07,0x08,0x0A,0x0C,0x0E,
++        0x10,0x12,0x14,0x16,0x18,0x18,0x1A,0x1C,
++        0x1E,0x20,0x22,0x24,0x26,0x27,0x29,0x2B,
++        0x2C,0x2E,0x30,0x31,0x33,0x35,0x36,0x38,
++        0x39,0x3B,0x3C,0x3E,0x40,0x41,0x43,0x44,
++        0x45,0x47,0x48,0x4A,0x4B,0x4D,0x4E,0x50,
++        0x51,0x52,0x54,0x55,0x56,0x58,0x59,0x5B,
++        0x5C,0x5D,0x5F,0x60,0x61,0x63,0x64,0x65,
++        0x67,0x68,0x69,0x6A,0x6C,0x6D,0x6E,0x70,
++        0x71,0x72,0x73,0x75,0x76,0x77,0x78,0x7A,
++        0x7B,0x7C,0x7D,0x7E,0x80,0x81,0x82,0x83,
++        0x85,0x86,0x87,0x88,0x89,0x8A,0x8C,0x8D,
++        0x8E,0x8F,0x90,0x92,0x93,0x94,0x95,0x96,
++        0x97,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,
++        0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,
++        0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,
++        0xB2,0xB3,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,
++        0xBB,0xBC,0xBD,0xBE,0xBF,0xC0,0xC2,0xC4,
++        0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,
++        0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD4,0xD5,
++        0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,
++        0xDE,0xDF,0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,
++        0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,
++        0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,
++        0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,
++        0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {	// 7
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,
++		0x03,0x04,0x05,0x06,0x07,0x09,0x0B,0x0C,
++		0x0E,0x10,0x12,0x14,0x16,0x18,0x1A,0x1C,
++		0x1E,0x20,0x21,0x23,0x25,0x27,0x28,0x2A,
++		0x2C,0x2D,0x2F,0x31,0x32,0x34,0x36,0x37,
++		0x39,0x3B,0x3C,0x3E,0x3F,0x41,0x42,0x44,
++		0x45,0x47,0x48,0x4A,0x4B,0x4D,0x4E,0x50,
++		0x51,0x53,0x54,0x56,0x57,0x59,0x5A,0x5C,
++		0x5D,0x5F,0x60,0x61,0x63,0x64,0x66,0x67,
++		0x68,0x6A,0x6B,0x6D,0x6E,0x6F,0x71,0x72,
++		0x73,0x75,0x76,0x78,0x79,0x7A,0x7C,0x7D,
++		0x7E,0x80,0x81,0x82,0x84,0x85,0x86,0x88,
++		0x89,0x8A,0x8B,0x8D,0x8E,0x8F,0x91,0x92,
++		0x93,0x95,0x96,0x97,0x98,0x9A,0x9B,0x9C,
++		0x9E,0x9F,0xA0,0xA1,0xA3,0xA4,0xA5,0xA6,
++		0xA8,0xA9,0xAA,0xAB,0xAD,0xAE,0xAF,0xB0,
++		0xB2,0xB3,0xB4,0xB5,0xB7,0xB8,0xB9,0xBA,
++		0xBC,0xBD,0xBE,0xBF,0xC0,0xC2,0xC3,0xC4,
++		0xC5,0xC7,0xC8,0xC9,0xCA,0xCB,0xCD,0xCE,
++		0xCF,0xD0,0xD1,0xD3,0xD4,0xD5,0xD6,0xD7,
++		0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xE0,0xE1,
++		0xE2,0xE3,0xE4,0xE6,0xE7,0xE8,0xE9,0xEA,
++		0xEB,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,
++		0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFC,0xFD,
++		0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    }
++};
++
++static unsigned char LUT_R[][256] =
++{
++    {	//  0
++        0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,
++        0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x0E,0x0F,
++        0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,
++        0x18,0x19,0x1A,0x1B,0x1C,0x1D,0x1E,0x1F,
++        0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,
++        0x28,0x29,0x2A,0x2B,0x2C,0x2D,0x2E,0x2F,
++        0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,
++        0x38,0x39,0x3A,0x3B,0x3C,0x3D,0x3E,0x3F,
++        0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,
++        0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,
++        0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,
++        0x58,0x59,0x5A,0x5B,0x5C,0x5D,0x5E,0x5F,
++        0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,
++        0x68,0x69,0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,
++        0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,
++        0x78,0x79,0x7A,0x7B,0x7C,0x7D,0x7E,0x7F,
++        0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,
++        0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,
++        0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,
++        0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,
++        0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,
++        0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,
++        0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,
++        0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF,
++        0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,
++        0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,
++        0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,
++        0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF,
++        0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,
++        0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF,
++        0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,
++        0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF
++    },
++    {	// 1
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
++        0x02,0x03,0x04,0x06,0x07,0x09,0x0B,0x0D,
++        0x10,0x12,0x14,0x17,0x19,0x1B,0x1E,0x20,
++        0x22,0x24,0x26,0x28,0x2A,0x2C,0x2E,0x30,
++        0x32,0x33,0x35,0x37,0x39,0x3B,0x3C,0x3E,
++        0x40,0x41,0x43,0x45,0x46,0x48,0x4A,0x4B,
++        0x4D,0x4F,0x50,0x52,0x53,0x55,0x57,0x58,
++        0x5A,0x5B,0x5D,0x5E,0x60,0x61,0x63,0x64,
++        0x66,0x67,0x69,0x6A,0x6C,0x6D,0x6F,0x70,
++        0x71,0x73,0x74,0x76,0x77,0x79,0x7A,0x7B,
++        0x7D,0x7E,0x7F,0x81,0x82,0x84,0x85,0x86,
++        0x88,0x89,0x8A,0x8C,0x8D,0x8E,0x90,0x91,
++        0x92,0x94,0x95,0x96,0x98,0x99,0x9A,0x9C,
++        0x9D,0x9E,0xA0,0xA1,0xA2,0xA3,0xA5,0xA6,
++        0xA7,0xA8,0xAA,0xAB,0xAC,0xAE,0xAF,0xB0,
++        0xB1,0xB3,0xB4,0xB5,0xB6,0xB8,0xB9,0xBA,
++        0xBB,0xBC,0xBE,0xBF,0xC0,0xC1,0xC3,0xC4,
++        0xC5,0xC6,0xC7,0xC9,0xCA,0xCB,0xCC,0xCD,
++        0xCF,0xD0,0xD1,0xD2,0xD3,0xD5,0xD6,0xD7,
++        0xD8,0xD9,0xDA,0xDC,0xDD,0xDE,0xDF,0xE0,
++        0xE1,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,
++        0xEB,0xEC,0xED,0xEE,0xEF,0xF0,0xF1,0xF3,
++        0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFB,0xFC,
++        0xFD,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF
++    },
++    {	// 2
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,
++		0x03,0x04,0x05,0x07,0x08,0x0A,0x0C,0x0E,
++		0x10,0x12,0x14,0x16,0x19,0x1B,0x1D,0x1F,
++		0x21,0x23,0x25,0x27,0x28,0x2A,0x2C,0x2E,
++		0x30,0x32,0x33,0x35,0x37,0x39,0x3A,0x3C,
++		0x3E,0x40,0x41,0x43,0x45,0x46,0x48,0x4A,
++		0x4B,0x4D,0x4F,0x50,0x52,0x53,0x55,0x57,
++		0x58,0x5A,0x5B,0x5D,0x5F,0x60,0x62,0x63,
++		0x65,0x66,0x68,0x69,0x6B,0x6C,0x6E,0x6F,
++		0x71,0x72,0x74,0x75,0x77,0x78,0x7A,0x7B,
++		0x7D,0x7E,0x80,0x81,0x83,0x84,0x86,0x87,
++		0x88,0x8A,0x8B,0x8D,0x8E,0x90,0x91,0x92,
++		0x94,0x95,0x97,0x98,0x99,0x9B,0x9C,0x9E,
++		0x9F,0xA0,0xA2,0xA3,0xA5,0xA6,0xA7,0xA9,
++		0xAA,0xAB,0xAD,0xAE,0xB0,0xB1,0xB2,0xB4,
++		0xB5,0xB6,0xB8,0xB9,0xBA,0xBC,0xBD,0xBE,
++		0xC0,0xC1,0xC2,0xC4,0xC5,0xC6,0xC8,0xC9,
++		0xCA,0xCC,0xCD,0xCE,0xD0,0xD1,0xD2,0xD4,
++		0xD5,0xD6,0xD7,0xD9,0xDA,0xDB,0xDD,0xDE,
++		0xDF,0xE1,0xE2,0xE3,0xE4,0xE6,0xE7,0xE8,
++		0xE9,0xEB,0xEC,0xED,0xEF,0xF0,0xF1,0xF2,
++		0xF4,0xF5,0xF6,0xF7,0xF9,0xFA,0xFB,0xFC,
++		0xFE,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x01,0x02,0x03,0x04,0x05,0x07,0x08,0x0A,
++		0x0C,0x0E,0x10,0x12,0x14,0x16,0x18,0x1A,
++		0x1C,0x1E,0x20,0x22,0x24,0x26,0x28,0x2A,
++		0x2B,0x2D,0x2F,0x31,0x33,0x34,0x36,0x38,
++		0x39,0x3B,0x3D,0x3E,0x40,0x42,0x43,0x45,
++		0x47,0x48,0x4A,0x4B,0x4D,0x4F,0x50,0x52,
++		0x53,0x55,0x56,0x58,0x59,0x5B,0x5D,0x5E,
++		0x60,0x61,0x63,0x64,0x66,0x67,0x69,0x6A,
++		0x6B,0x6D,0x6E,0x70,0x71,0x73,0x74,0x76,
++		0x77,0x79,0x7A,0x7B,0x7D,0x7E,0x80,0x81,
++		0x83,0x84,0x85,0x87,0x88,0x8A,0x8B,0x8C,
++		0x8E,0x8F,0x90,0x92,0x93,0x95,0x96,0x97,
++		0x99,0x9A,0x9B,0x9D,0x9E,0x9F,0xA1,0xA2,
++		0xA3,0xA5,0xA6,0xA7,0xA9,0xAA,0xAB,0xAD,
++		0xAE,0xAF,0xB1,0xB2,0xB3,0xB5,0xB6,0xB7,
++		0xB9,0xBA,0xBB,0xBD,0xBE,0xBF,0xC0,0xC2,
++		0xC3,0xC4,0xC6,0xC7,0xC8,0xC9,0xCB,0xCC,
++		0xCD,0xCF,0xD0,0xD1,0xD2,0xD4,0xD5,0xD6,
++		0xD7,0xD9,0xDA,0xDB,0xDC,0xDE,0xDF,0xE0,
++		0xE1,0xE3,0xE4,0xE5,0xE5,0xE6,0xE8,0xE9,
++		0xEA,0xEB,0xED,0xEE,0xEF,0xF0,0xF2,0xF3,
++		0xF4,0xF5,0xF6,0xF8,0xF9,0xFA,0xFB,0xFD,
++		0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++	},
++	{
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x01,0x02,0x03,0x04,0x05,
++		0x07,0x08,0x0A,0x0C,0x0E,0x10,0x12,0x14,
++		0x16,0x18,0x1A,0x1C,0x1E,0x20,0x22,0x24,
++		0x26,0x28,0x2A,0x2B,0x2D,0x2F,0x31,0x33,
++		0x34,0x36,0x38,0x39,0x3B,0x3D,0x3E,0x40,
++		0x42,0x43,0x45,0x47,0x48,0x4A,0x4B,0x4D,
++		0x4F,0x50,0x52,0x53,0x55,0x56,0x58,0x59,
++		0x5B,0x5D,0x5E,0x60,0x61,0x63,0x64,0x66,
++		0x67,0x69,0x6A,0x6B,0x6D,0x6E,0x70,0x71,
++		0x73,0x74,0x76,0x77,0x79,0x7A,0x7B,0x7D,
++		0x7E,0x80,0x81,0x83,0x84,0x85,0x87,0x88,
++		0x8A,0x8B,0x8C,0x8E,0x8F,0x90,0x92,0x93,
++		0x95,0x96,0x97,0x99,0x9A,0x9B,0x9D,0x9E,
++		0x9F,0xA1,0xA2,0xA3,0xA5,0xA6,0xA7,0xA9,
++		0xAA,0xAB,0xAD,0xAE,0xAF,0xB1,0xB2,0xB3,
++		0xB5,0xB6,0xB7,0xB9,0xBA,0xBB,0xBD,0xBE,
++		0xBF,0xC0,0xC2,0xC3,0xC4,0xC6,0xC7,0xC8,
++		0xC9,0xCB,0xCC,0xCD,0xCF,0xD0,0xD1,0xD2,
++		0xD4,0xD5,0xD6,0xD7,0xD9,0xDA,0xDB,0xDC,
++		0xDE,0xDF,0xE0,0xE1,0xE3,0xE4,0xE5,0xE6,
++		0xE8,0xE9,0xEA,0xEB,0xEB,0xED,0xEE,0xEF,
++		0xF0,0xF2,0xF3,0xF4,0xF5,0xF6,0xF8,0xF9,
++		0xFA,0xFB,0xFD,0xFE,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,
++        0x03,0x04,0x05,0x07,0x08,0x0A,0x0C,0x0E,
++        0x10,0x12,0x14,0x16,0x18,0x1A,0x1C,0x1E,
++        0x20,0x22,0x24,0x26,0x28,0x2A,0x2B,0x2D,
++        0x2F,0x31,0x33,0x34,0x36,0x38,0x39,0x3B,
++        0x3D,0x3E,0x40,0x42,0x43,0x45,0x47,0x48,
++        0x4A,0x4B,0x4D,0x4F,0x50,0x52,0x53,0x55,
++        0x56,0x58,0x59,0x5B,0x5D,0x5E,0x60,0x61,
++        0x63,0x64,0x66,0x67,0x69,0x6A,0x6B,0x6D,
++        0x6E,0x70,0x71,0x73,0x74,0x76,0x77,0x79,
++        0x7A,0x7B,0x7D,0x7E,0x80,0x81,0x83,0x84,
++        0x85,0x87,0x88,0x8A,0x8B,0x8C,0x8E,0x8F,
++        0x90,0x92,0x93,0x95,0x96,0x97,0x99,0x9A,
++        0x9B,0x9D,0x9E,0x9F,0xA1,0xA2,0xA3,0xA5,
++        0xA6,0xA7,0xA9,0xAA,0xAB,0xAD,0xAE,0xAF,
++        0xB1,0xB2,0xB3,0xB5,0xB6,0xB7,0xB9,0xBA,
++        0xBB,0xBD,0xBE,0xBF,0xC0,0xC2,0xC3,0xC4,
++        0xC6,0xC7,0xC8,0xC9,0xCB,0xCC,0xCD,0xCF,
++        0xD0,0xD1,0xD2,0xD4,0xD5,0xD6,0xD7,0xD9,
++        0xDA,0xDB,0xDC,0xDE,0xDF,0xE0,0xE1,0xE3,
++        0xE4,0xE5,0xE6,0xE8,0xE9,0xEA,0xEB,0xED,
++        0xEE,0xEF,0xF0,0xF2,0xF3,0xF4,0xF5,0xF6,
++        0xF8,0xF9,0xFA,0xFB,0xFD,0xFE,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
++        0x02,0x03,0x04,0x05,0x06,0x08,0x0A,0x0C,
++        0x0E,0x10,0x12,0x14,0x16,0x19,0x1B,0x1D,
++        0x1F,0x20,0x22,0x24,0x26,0x28,0x2A,0x2B,
++        0x2D,0x2F,0x31,0x32,0x34,0x35,0x37,0x39,
++        0x3A,0x3C,0x3D,0x3F,0x41,0x42,0x44,0x45,
++        0x47,0x48,0x4A,0x4B,0x4D,0x4E,0x4F,0x51,
++        0x52,0x54,0x55,0x57,0x58,0x59,0x5B,0x5C,
++        0x5E,0x5F,0x60,0x62,0x63,0x64,0x66,0x67,
++        0x68,0x6A,0x6B,0x6C,0x6E,0x6F,0x70,0x72,
++        0x73,0x74,0x75,0x77,0x78,0x79,0x7B,0x7C,
++        0x7D,0x7E,0x80,0x81,0x82,0x83,0x85,0x86,
++        0x87,0x88,0x89,0x8B,0x8C,0x8D,0x8E,0x90,
++        0x91,0x92,0x93,0x94,0x96,0x97,0x98,0x99,
++        0x9A,0x9B,0x9D,0x9E,0x9F,0xA0,0xA1,0xA2,
++        0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAB,0xAC,
++        0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB4,0xB5,
++        0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBD,0xBE,
++        0xBF,0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,
++        0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,
++        0xD0,0xD1,0xD2,0xD3,0xD4,0xD6,0xD7,0xD8,
++        0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF,0xE0,
++        0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xEA,
++        0xEB,0xEC,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,
++        0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,
++        0xFB,0xFC,0xFD,0xFE,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,
++		0x03,0x04,0x05,0x06,0x07,0x09,0x0B,0x0C,
++		0x0E,0x10,0x12,0x14,0x16,0x18,0x1A,0x1C,
++		0x1E,0x20,0x21,0x23,0x25,0x27,0x28,0x2A,
++		0x2C,0x2D,0x2F,0x31,0x32,0x34,0x36,0x37,
++		0x39,0x3B,0x3C,0x3E,0x3F,0x41,0x42,0x44,
++		0x45,0x47,0x48,0x4A,0x4B,0x4D,0x4E,0x50,
++		0x51,0x53,0x54,0x56,0x57,0x59,0x5A,0x5C,
++		0x5D,0x5F,0x60,0x61,0x63,0x64,0x66,0x67,
++		0x68,0x6A,0x6B,0x6D,0x6E,0x6F,0x71,0x72,
++		0x73,0x75,0x76,0x78,0x79,0x7A,0x7C,0x7D,
++		0x7E,0x80,0x81,0x82,0x84,0x85,0x86,0x88,
++		0x89,0x8A,0x8B,0x8D,0x8E,0x8F,0x91,0x92,
++		0x93,0x95,0x96,0x97,0x98,0x9A,0x9B,0x9C,
++		0x9E,0x9F,0xA0,0xA1,0xA3,0xA4,0xA5,0xA6,
++		0xA8,0xA9,0xAA,0xAB,0xAD,0xAE,0xAF,0xB0,
++		0xB2,0xB3,0xB4,0xB5,0xB7,0xB8,0xB9,0xBA,
++		0xBC,0xBD,0xBE,0xBF,0xC0,0xC2,0xC3,0xC4,
++		0xC5,0xC7,0xC8,0xC9,0xCA,0xCB,0xCD,0xCE,
++		0xCF,0xD0,0xD1,0xD3,0xD4,0xD5,0xD6,0xD7,
++		0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xE0,0xE1,
++		0xE2,0xE3,0xE4,0xE6,0xE7,0xE8,0xE9,0xEA,
++		0xEB,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,
++		0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFC,0xFD,
++		0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF
++    }
++};
++
++static unsigned char LUT_G[][256] =
++{
++    {
++        0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,
++        0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x0E,0x0F,
++        0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,
++        0x18,0x19,0x1A,0x1B,0x1C,0x1D,0x1E,0x1F,
++        0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,
++        0x28,0x29,0x2A,0x2B,0x2C,0x2D,0x2E,0x2F,
++        0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,
++        0x38,0x39,0x3A,0x3B,0x3C,0x3D,0x3E,0x3F,
++        0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,
++        0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,
++        0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,
++        0x58,0x59,0x5A,0x5B,0x5C,0x5D,0x5E,0x5F,
++        0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,
++        0x68,0x69,0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,
++        0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,
++        0x78,0x79,0x7A,0x7B,0x7C,0x7D,0x7E,0x7F,
++        0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,
++        0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,
++        0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,
++        0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,
++        0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,
++        0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,
++        0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,
++        0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF,
++        0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,
++        0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,
++        0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,
++        0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF,
++        0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,
++        0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF,
++        0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,
++        0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF
++    },
++    {
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
++        0x02,0x03,0x04,0x06,0x07,0x09,0x0B,0x0D,
++        0x10,0x12,0x14,0x17,0x19,0x1B,0x1E,0x20,
++        0x22,0x24,0x26,0x28,0x2A,0x2C,0x2E,0x30,
++        0x32,0x33,0x35,0x37,0x39,0x3B,0x3C,0x3E,
++        0x40,0x41,0x43,0x45,0x46,0x48,0x4A,0x4B,
++        0x4D,0x4F,0x50,0x52,0x53,0x55,0x57,0x58,
++        0x5A,0x5B,0x5D,0x5E,0x60,0x61,0x63,0x64,
++        0x66,0x67,0x69,0x6A,0x6C,0x6D,0x6F,0x70,
++        0x71,0x73,0x74,0x76,0x77,0x79,0x7A,0x7B,
++        0x7D,0x7E,0x7F,0x81,0x82,0x84,0x85,0x86,
++        0x88,0x89,0x8A,0x8C,0x8D,0x8E,0x90,0x91,
++        0x92,0x94,0x95,0x96,0x98,0x99,0x9A,0x9C,
++        0x9D,0x9E,0xA0,0xA1,0xA2,0xA3,0xA5,0xA6,
++        0xA7,0xA8,0xAA,0xAB,0xAC,0xAE,0xAF,0xB0,
++        0xB1,0xB3,0xB4,0xB5,0xB6,0xB8,0xB9,0xBA,
++        0xBB,0xBC,0xBE,0xBF,0xC0,0xC1,0xC3,0xC4,
++        0xC5,0xC6,0xC7,0xC9,0xCA,0xCB,0xCC,0xCD,
++        0xCF,0xD0,0xD1,0xD2,0xD3,0xD5,0xD6,0xD7,
++        0xD8,0xD9,0xDA,0xDC,0xDD,0xDE,0xDF,0xE0,
++        0xE1,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,
++        0xEB,0xEC,0xED,0xEE,0xEF,0xF0,0xF1,0xF3,
++        0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFB,0xFC,
++        0xFD,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF
++    },
++    {
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
++		0x02,0x03,0x04,0x05,0x07,0x08,0x0A,0x0C,
++		0x0E,0x10,0x12,0x14,0x16,0x16,0x19,0x1B,
++		0x1D,0x1F,0x21,0x23,0x25,0x27,0x28,0x2A,
++		0x2C,0x2E,0x30,0x32,0x33,0x35,0x37,0x39,
++		0x3A,0x3C,0x3E,0x40,0x41,0x43,0x45,0x46,
++		0x48,0x4A,0x4B,0x4D,0x4F,0x50,0x52,0x53,
++		0x55,0x57,0x58,0x5A,0x5B,0x5D,0x5F,0x60,
++		0x62,0x63,0x65,0x66,0x68,0x69,0x6B,0x6C,
++		0x6E,0x6F,0x71,0x72,0x74,0x75,0x77,0x78,
++		0x7A,0x7B,0x7D,0x7E,0x80,0x81,0x83,0x84,
++		0x86,0x87,0x88,0x8A,0x8B,0x8D,0x8E,0x90,
++		0x91,0x92,0x94,0x95,0x97,0x98,0x99,0x9B,
++		0x9C,0x9E,0x9F,0xA0,0xA2,0xA3,0xA5,0xA7,
++		0xA9,0xAA,0xAB,0xAD,0xAE,0xB0,0xB1,0xB2,
++		0xB4,0xB5,0xB6,0xB8,0xB9,0xBA,0xBC,0xBD,
++		0xBE,0xC0,0xC1,0xC2,0xC4,0xC5,0xC6,0xC8,
++		0xC9,0xCA,0xCC,0xCD,0xCE,0xD0,0xD1,0xD2,
++		0xD4,0xD5,0xD6,0xD7,0xD9,0xDA,0xDB,0xDD,
++		0xDE,0xDF,0xE1,0xE2,0xE3,0xE4,0xE6,0xE7,
++		0xE8,0xE9,0xEB,0xEC,0xED,0xEF,0xF0,0xF1,
++		0xF2,0xF4,0xF5,0xF6,0xF7,0xF9,0xFA,0xFB,
++		0xFC,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x01,0x02,0x03,0x04,0x05,0x07,
++		0x08,0x0A,0x0C,0x0E,0x10,0x12,0x14,0x16,
++		0x18,0x1A,0x1C,0x1E,0x20,0x22,0x24,0x26,
++		0x28,0x2A,0x2B,0x2D,0x2F,0x31,0x33,0x34,
++		0x36,0x38,0x39,0x3B,0x3D,0x3E,0x40,0x42,
++		0x43,0x45,0x47,0x48,0x4A,0x4B,0x4D,0x4F,
++		0x50,0x52,0x53,0x55,0x56,0x58,0x59,0x5B,
++		0x5D,0x5E,0x60,0x61,0x63,0x64,0x66,0x67,
++		0x69,0x6A,0x6B,0x6D,0x6E,0x70,0x71,0x73,
++		0x74,0x76,0x77,0x79,0x7A,0x7B,0x7D,0x7E,
++		0x80,0x81,0x83,0x84,0x85,0x87,0x88,0x8A,
++		0x8B,0x8C,0x8E,0x8F,0x90,0x92,0x93,0x95,
++		0x96,0x97,0x99,0x9A,0x9B,0x9D,0x9E,0x9F,
++		0xA1,0xA2,0xA3,0xA5,0xA6,0xA7,0xA9,0xAA,
++		0xAB,0xAD,0xAE,0xAF,0xB1,0xB2,0xB3,0xB5,
++		0xB6,0xB7,0xB9,0xBA,0xBB,0xBD,0xBE,0xBF,
++		0xC0,0xC2,0xC3,0xC4,0xC6,0xC7,0xC8,0xC9,
++		0xCB,0xCC,0xCD,0xCF,0xD0,0xD1,0xD2,0xD4,
++		0xD5,0xD6,0xD7,0xD9,0xDA,0xDB,0xDC,0xDF,
++		0xE0,0xE1,0xE3,0xE4,0xE5,0xE6,0xE8,0xE9,
++		0xEA,0xEB,0xED,0xEE,0xEF,0xF0,0xF2,0xF3,
++		0xF4,0xF5,0xF6,0xF8,0xF9,0xFA,0xFB,0xFD,
++		0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++	},
++	{
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x03,
++		0x04,0x05,0x07,0x08,0x0A,0x0C,0x0E,0x10,
++		0x12,0x14,0x16,0x18,0x1A,0x1C,0x1E,0x20,
++		0x22,0x24,0x26,0x28,0x2A,0x2B,0x2D,0x2F,
++		0x31,0x33,0x34,0x36,0x38,0x39,0x3B,0x3D,
++		0x3E,0x40,0x42,0x43,0x45,0x47,0x48,0x4A,
++		0x4B,0x4D,0x4F,0x50,0x52,0x53,0x55,0x56,
++		0x58,0x59,0x5B,0x5D,0x5E,0x60,0x61,0x63,
++		0x64,0x66,0x67,0x69,0x6A,0x6B,0x6D,0x6E,
++		0x70,0x71,0x73,0x74,0x76,0x77,0x79,0x7A,
++		0x7B,0x7D,0x7E,0x80,0x81,0x83,0x84,0x85,
++		0x87,0x88,0x8A,0x8B,0x8C,0x8E,0x8F,0x90,
++		0x92,0x93,0x95,0x96,0x97,0x99,0x9A,0x9B,
++		0x9D,0x9E,0x9F,0xA1,0xA2,0xA3,0xA5,0xA6,
++		0xA7,0xA9,0xAA,0xAB,0xAD,0xAE,0xAF,0xB1,
++		0xB2,0xB3,0xB5,0xB6,0xB7,0xB9,0xBA,0xBB,
++		0xBD,0xBE,0xBF,0xC0,0xC2,0xC3,0xC4,0xC6,
++		0xC7,0xC8,0xC9,0xCB,0xCC,0xCD,0xCF,0xD0,
++		0xD1,0xD2,0xD4,0xD5,0xD6,0xD7,0xD9,0xDA,
++		0xDB,0xDC,0xDE,0xDF,0xE0,0xE1,0xE3,0xE5,
++		0xE6,0xE8,0xE9,0xEA,0xEB,0xED,0xEE,0xEF,
++		0xF0,0xF2,0xF3,0xF4,0xF5,0xF6,0xF8,0xF9,
++		0xFA,0xFB,0xFD,0xFE,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x01,0x02,0x03,0x04,0x05,0x07,0x08,0x0A,
++        0x0C,0x0E,0x10,0x12,0x14,0x16,0x18,0x1A,
++        0x1C,0x1E,0x20,0x22,0x24,0x26,0x28,0x2A,
++        0x2B,0x2D,0x2F,0x31,0x33,0x34,0x36,0x38,
++        0x39,0x3B,0x3D,0x3E,0x40,0x42,0x43,0x45,
++        0x47,0x48,0x4A,0x4B,0x4D,0x4F,0x50,0x52,
++        0x53,0x55,0x56,0x58,0x59,0x5B,0x5D,0x5E,
++        0x60,0x61,0x63,0x64,0x66,0x67,0x69,0x6A,
++        0x6B,0x6D,0x6E,0x70,0x71,0x73,0x74,0x76,
++        0x77,0x79,0x7A,0x7B,0x7D,0x7E,0x80,0x81,
++        0x83,0x84,0x85,0x87,0x88,0x8A,0x8B,0x8C,
++        0x8E,0x8F,0x90,0x92,0x93,0x95,0x96,0x97,
++        0x99,0x9A,0x9B,0x9D,0x9E,0x9F,0xA1,0xA2,
++        0xA3,0xA5,0xA6,0xA7,0xA9,0xAA,0xAB,0xAD,
++        0xAE,0xAF,0xB1,0xB2,0xB3,0xB5,0xB6,0xB7,
++        0xB9,0xBA,0xBB,0xBD,0xBE,0xBF,0xC0,0xC2,
++        0xC3,0xC4,0xC6,0xC7,0xC8,0xC9,0xCB,0xCC,
++        0xCD,0xCF,0xD0,0xD1,0xD2,0xD4,0xD5,0xD6,
++        0xD7,0xD9,0xDA,0xDB,0xDC,0xDE,0xDF,0xE0,
++        0xE3,0xE4,0xE5,0xE6,0xE8,0xE9,0xEA,0xEB,
++        0xED,0xEE,0xEF,0xF0,0xF2,0xF3,0xF4,0xF5,
++        0xF6,0xF8,0xF9,0xFA,0xFB,0xFD,0xFE,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,
++        0x03,0x04,0x05,0x07,0x08,0x0A,0x0C,0x0E,
++        0x10,0x12,0x14,0x16,0x18,0x18,0x1A,0x1C,
++        0x1E,0x20,0x22,0x24,0x26,0x27,0x29,0x2B,
++        0x2C,0x2E,0x30,0x31,0x33,0x35,0x36,0x38,
++        0x39,0x3B,0x3C,0x3E,0x40,0x41,0x43,0x44,
++        0x45,0x47,0x48,0x4A,0x4B,0x4D,0x4E,0x50,
++        0x51,0x52,0x54,0x55,0x56,0x58,0x59,0x5B,
++        0x5C,0x5D,0x5F,0x60,0x61,0x63,0x64,0x65,
++        0x67,0x68,0x69,0x6A,0x6C,0x6D,0x6E,0x70,
++        0x71,0x72,0x73,0x75,0x76,0x77,0x78,0x7A,
++        0x7B,0x7C,0x7D,0x7E,0x80,0x81,0x82,0x83,
++        0x85,0x86,0x87,0x88,0x89,0x8A,0x8C,0x8D,
++        0x8E,0x8F,0x90,0x92,0x93,0x94,0x95,0x96,
++        0x97,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,
++        0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,
++        0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,
++        0xB2,0xB3,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,
++        0xBB,0xBC,0xBD,0xBE,0xBF,0xC0,0xC2,0xC4,
++        0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,
++        0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD4,0xD5,
++        0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,
++        0xDE,0xDF,0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,
++        0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,
++        0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,
++        0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,
++        0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {	// 7
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,
++		0x03,0x04,0x05,0x06,0x07,0x09,0x0B,0x0C,
++		0x0E,0x10,0x12,0x14,0x16,0x18,0x1A,0x1C,
++		0x1E,0x20,0x21,0x23,0x25,0x27,0x28,0x2A,
++		0x2C,0x2D,0x2F,0x31,0x32,0x34,0x36,0x37,
++		0x39,0x3B,0x3C,0x3E,0x3F,0x41,0x42,0x44,
++		0x45,0x47,0x48,0x4A,0x4B,0x4D,0x4E,0x50,
++		0x51,0x53,0x54,0x56,0x57,0x59,0x5A,0x5C,
++		0x5D,0x5F,0x60,0x61,0x63,0x64,0x66,0x67,
++		0x68,0x6A,0x6B,0x6D,0x6E,0x6F,0x71,0x72,
++		0x73,0x75,0x76,0x78,0x79,0x7A,0x7C,0x7D,
++		0x7E,0x80,0x81,0x82,0x84,0x85,0x86,0x88,
++		0x89,0x8A,0x8B,0x8D,0x8E,0x8F,0x91,0x92,
++		0x93,0x95,0x96,0x97,0x98,0x9A,0x9B,0x9C,
++		0x9E,0x9F,0xA0,0xA1,0xA3,0xA4,0xA5,0xA6,
++		0xA8,0xA9,0xAA,0xAB,0xAD,0xAE,0xAF,0xB0,
++		0xB2,0xB3,0xB4,0xB5,0xB7,0xB8,0xB9,0xBA,
++		0xBC,0xBD,0xBE,0xBF,0xC0,0xC2,0xC3,0xC4,
++		0xC5,0xC7,0xC8,0xC9,0xCA,0xCB,0xCD,0xCE,
++		0xCF,0xD0,0xD1,0xD3,0xD4,0xD5,0xD6,0xD7,
++		0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xE0,0xE1,
++		0xE2,0xE3,0xE4,0xE6,0xE7,0xE8,0xE9,0xEA,
++		0xEB,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,
++		0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFC,0xFD,
++		0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    }
++};
++
++static unsigned char LUT_B[][256] =
++{
++    {
++        0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,
++        0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x0E,0x0F,
++        0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,
++        0x18,0x19,0x1A,0x1B,0x1C,0x1D,0x1E,0x1F,
++        0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,
++        0x28,0x29,0x2A,0x2B,0x2C,0x2D,0x2E,0x2F,
++        0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,
++        0x38,0x39,0x3A,0x3B,0x3C,0x3D,0x3E,0x3F,
++        0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,
++        0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,
++        0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,
++        0x58,0x59,0x5A,0x5B,0x5C,0x5D,0x5E,0x5F,
++        0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,
++        0x68,0x69,0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,
++        0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,
++        0x78,0x79,0x7A,0x7B,0x7C,0x7D,0x7E,0x7F,
++        0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,
++        0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,
++        0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,
++        0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,
++        0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,
++        0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,
++        0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,
++        0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF,
++        0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,
++        0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,
++        0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,
++        0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF,
++        0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,
++        0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF,
++        0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,
++        0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF
++    },
++    {
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
++        0x02,0x03,0x04,0x06,0x07,0x09,0x0B,0x0D,
++        0x10,0x12,0x14,0x17,0x19,0x1B,0x1E,0x20,
++        0x22,0x24,0x26,0x28,0x2A,0x2C,0x2E,0x30,
++        0x32,0x33,0x35,0x37,0x39,0x3B,0x3C,0x3E,
++        0x40,0x41,0x43,0x45,0x46,0x48,0x4A,0x4B,
++        0x4D,0x4F,0x50,0x52,0x53,0x55,0x57,0x58,
++        0x5A,0x5B,0x5D,0x5E,0x60,0x61,0x63,0x64,
++        0x66,0x67,0x69,0x6A,0x6C,0x6D,0x6F,0x70,
++        0x71,0x73,0x74,0x76,0x77,0x79,0x7A,0x7B,
++        0x7D,0x7E,0x7F,0x81,0x82,0x84,0x85,0x86,
++        0x88,0x89,0x8A,0x8C,0x8D,0x8E,0x90,0x91,
++        0x92,0x94,0x95,0x96,0x98,0x99,0x9A,0x9C,
++        0x9D,0x9E,0xA0,0xA1,0xA2,0xA3,0xA5,0xA6,
++        0xA7,0xA8,0xAA,0xAB,0xAC,0xAE,0xAF,0xB0,
++        0xB1,0xB3,0xB4,0xB5,0xB6,0xB8,0xB9,0xBA,
++        0xBB,0xBC,0xBE,0xBF,0xC0,0xC1,0xC3,0xC4,
++        0xC5,0xC6,0xC7,0xC9,0xCA,0xCB,0xCC,0xCD,
++        0xCF,0xD0,0xD1,0xD2,0xD3,0xD5,0xD6,0xD7,
++        0xD8,0xD9,0xDA,0xDC,0xDD,0xDE,0xDF,0xE0,
++        0xE1,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,
++        0xEB,0xEC,0xED,0xEE,0xEF,0xF0,0xF1,0xF3,
++        0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFB,0xFC,
++        0xFD,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF
++    },
++    {
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
++		0x02,0x03,0x04,0x05,0x07,0x08,0x0A,0x0C,
++		0x0E,0x10,0x12,0x14,0x16,0x16,0x19,0x1B,
++		0x1D,0x1F,0x21,0x23,0x25,0x27,0x28,0x2A,
++		0x2C,0x2E,0x30,0x32,0x33,0x35,0x37,0x39,
++		0x3A,0x3C,0x3E,0x40,0x41,0x43,0x45,0x46,
++		0x48,0x4A,0x4B,0x4D,0x4F,0x50,0x52,0x53,
++		0x55,0x57,0x58,0x5A,0x5B,0x5D,0x5F,0x60,
++		0x62,0x63,0x65,0x66,0x68,0x69,0x6B,0x6C,
++		0x6E,0x6F,0x71,0x72,0x74,0x75,0x77,0x78,
++		0x7A,0x7B,0x7D,0x7E,0x80,0x81,0x83,0x84,
++		0x86,0x87,0x88,0x8A,0x8B,0x8D,0x8E,0x90,
++		0x91,0x92,0x94,0x95,0x97,0x98,0x99,0x9B,
++		0x9C,0x9E,0x9F,0xA0,0xA2,0xA3,0xA5,0xA7,
++		0xA9,0xAA,0xAB,0xAD,0xAE,0xB0,0xB1,0xB2,
++		0xB4,0xB5,0xB6,0xB8,0xB9,0xBA,0xBC,0xBD,
++		0xBE,0xC0,0xC1,0xC2,0xC4,0xC5,0xC6,0xC8,
++		0xC9,0xCA,0xCC,0xCD,0xCE,0xD0,0xD1,0xD2,
++		0xD4,0xD5,0xD6,0xD7,0xD9,0xDA,0xDB,0xDD,
++		0xDE,0xDF,0xE1,0xE2,0xE3,0xE4,0xE6,0xE7,
++		0xE8,0xE9,0xEB,0xEC,0xED,0xEF,0xF0,0xF1,
++		0xF2,0xF4,0xF5,0xF6,0xF7,0xF9,0xFA,0xFB,
++		0xFC,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x01,0x02,0x03,0x04,0x05,0x07,0x08,
++		0x0A,0x0C,0x0E,0x10,0x12,0x14,0x16,0x18,
++		0x1A,0x1C,0x1E,0x20,0x22,0x24,0x26,0x28,
++		0x2A,0x2B,0x2D,0x2F,0x31,0x33,0x34,0x36,
++		0x38,0x39,0x3B,0x3D,0x3E,0x40,0x42,0x43,
++		0x45,0x47,0x48,0x4A,0x4B,0x4D,0x4F,0x50,
++		0x52,0x53,0x55,0x56,0x58,0x59,0x5B,0x5D,
++		0x5E,0x60,0x61,0x63,0x64,0x66,0x67,0x69,
++		0x6A,0x6B,0x6D,0x6E,0x70,0x71,0x73,0x74,
++		0x76,0x77,0x79,0x7A,0x7B,0x7D,0x7E,0x80,
++		0x81,0x83,0x84,0x85,0x87,0x88,0x8A,0x8B,
++		0x8C,0x8E,0x8F,0x90,0x92,0x93,0x95,0x96,
++		0x97,0x99,0x9A,0x9B,0x9D,0x9E,0x9F,0xA1,
++		0xA2,0xA3,0xA5,0xA6,0xA7,0xA9,0xAA,0xAB,
++		0xAD,0xAE,0xAF,0xB1,0xB2,0xB3,0xB5,0xB6,
++		0xB7,0xB9,0xBA,0xBB,0xBD,0xBE,0xBF,0xC0,
++		0xC2,0xC3,0xC4,0xC6,0xC7,0xC8,0xC9,0xCB,
++		0xCC,0xCD,0xCF,0xD0,0xD1,0xD2,0xD4,0xD5,
++		0xD6,0xD7,0xD9,0xDA,0xDB,0xDC,0xDE,0xDF,
++		0xE0,0xE1,0xE3,0xE4,0xE5,0xE6,0xE8,0xE9,
++		0xEA,0xEB,0xED,0xEE,0xEF,0xF0,0xF2,0xF3,
++		0xF4,0xF5,0xF6,0xF8,0xF9,0xFA,0xFB,0xFD,
++		0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++	},
++	{
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++		0x00,0x00,0x00,0x00,0x01,0x02,0x03,0x04,
++		0x05,0x07,0x08,0x0A,0x0C,0x0E,0x10,0x12,
++		0x14,0x16,0x18,0x1A,0x1C,0x1E,0x20,0x22,
++		0x24,0x26,0x28,0x2A,0x2B,0x2D,0x2F,0x31,
++		0x33,0x34,0x36,0x38,0x39,0x3B,0x3D,0x3E,
++		0x40,0x42,0x43,0x45,0x47,0x48,0x4A,0x4B,
++		0x4D,0x4F,0x50,0x52,0x53,0x55,0x56,0x58,
++		0x59,0x5B,0x5D,0x5E,0x60,0x61,0x63,0x64,
++		0x66,0x67,0x69,0x6A,0x6B,0x6D,0x6E,0x70,
++		0x71,0x73,0x74,0x76,0x77,0x79,0x7A,0x7B,
++		0x7D,0x7E,0x80,0x81,0x83,0x84,0x85,0x87,
++		0x88,0x8A,0x8B,0x8C,0x8E,0x8F,0x90,0x92,
++		0x93,0x95,0x96,0x97,0x99,0x9A,0x9B,0x9D,
++		0x9E,0x9F,0xA1,0xA2,0xA3,0xA5,0xA6,0xA7,
++		0xA9,0xAA,0xAB,0xAD,0xAE,0xAF,0xB1,0xB2,
++		0xB3,0xB5,0xB6,0xB7,0xB9,0xBA,0xBB,0xBD,
++		0xBE,0xBF,0xC0,0xC2,0xC3,0xC4,0xC6,0xC7,
++		0xC8,0xC9,0xCB,0xCC,0xCD,0xCF,0xD0,0xD1,
++		0xD2,0xD4,0xD5,0xD6,0xD7,0xD9,0xDA,0xDB,
++		0xDC,0xDE,0xDF,0xE0,0xE1,0xE3,0xE4,0xE5,
++		0xE6,0xE8,0xE9,0xEA,0xEB,0xED,0xEE,0xEF,
++		0xF0,0xF2,0xF3,0xF4,0xF5,0xF6,0xF8,0xF9,
++		0xFA,0xFB,0xFD,0xFE,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++		0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
++        0x02,0x03,0x04,0x05,0x07,0x08,0x0A,0x0C,
++        0x0E,0x10,0x12,0x14,0x16,0x16,0x18,0x1A,
++        0x1C,0x1E,0x20,0x22,0x24,0x26,0x28,0x2A,
++        0x2B,0x2D,0x2F,0x31,0x33,0x34,0x36,0x38,
++        0x39,0x3B,0x3D,0x3E,0x40,0x42,0x43,0x45,
++        0x47,0x48,0x4A,0x4B,0x4D,0x4F,0x50,0x52,
++        0x53,0x55,0x56,0x58,0x59,0x5B,0x5D,0x5E,
++        0x60,0x61,0x63,0x64,0x66,0x67,0x69,0x6A,
++        0x6B,0x6D,0x6E,0x70,0x71,0x73,0x74,0x76,
++        0x77,0x79,0x7A,0x7B,0x7D,0x7E,0x80,0x81,
++        0x83,0x84,0x85,0x87,0x88,0x8A,0x8B,0x8C,
++        0x8E,0x8F,0x90,0x92,0x93,0x95,0x96,0x97,
++        0x99,0x9A,0x9B,0x9D,0x9E,0x9F,0xA1,0xA3,
++        0xA5,0xA6,0xA7,0xA9,0xAA,0xAB,0xAD,0xAE,
++        0xAF,0xB1,0xB2,0xB3,0xB5,0xB6,0xB7,0xB9,
++        0xBA,0xBB,0xBD,0xBE,0xBF,0xC0,0xC2,0xC3,
++        0xC4,0xC6,0xC7,0xC8,0xC9,0xCB,0xCC,0xCD,
++        0xCF,0xD0,0xD1,0xD2,0xD4,0xD5,0xD6,0xD7,
++        0xD9,0xDA,0xDB,0xDC,0xDE,0xDF,0xE0,0xE1,
++        0xE3,0xE4,0xE5,0xE6,0xE8,0xE9,0xEA,0xEB,
++        0xED,0xEE,0xEF,0xF0,0xF2,0xF3,0xF4,0xF5,
++        0xF6,0xF8,0xF9,0xFA,0xFB,0xFD,0xFE,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x03,
++        0x04,0x05,0x07,0x08,0x0A,0x0C,0x0E,0x10,
++        0x12,0x14,0x16,0x18,0x1A,0x1C,0x1E,0x20,
++        0x22,0x24,0x26,0x27,0x29,0x2B,0x2C,0x2E,
++        0x30,0x31,0x33,0x35,0x36,0x38,0x39,0x3B,
++        0x3C,0x3E,0x40,0x41,0x43,0x44,0x45,0x47,
++        0x48,0x4B,0x4D,0x4E,0x50,0x51,0x52,0x54,
++        0x55,0x56,0x58,0x59,0x5B,0x5C,0x5D,0x5F,
++        0x60,0x61,0x63,0x64,0x65,0x67,0x68,0x69,
++        0x6A,0x6C,0x6D,0x6E,0x70,0x71,0x72,0x73,
++        0x75,0x76,0x77,0x78,0x7A,0x7B,0x7C,0x7D,
++        0x7E,0x80,0x81,0x82,0x83,0x85,0x86,0x87,
++        0x88,0x89,0x8A,0x8C,0x8D,0x8E,0x8F,0x90,
++        0x92,0x93,0x94,0x95,0x96,0x96,0x97,0x99,
++        0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,0xA1,0xA2,
++        0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xAA,0xAB,
++        0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,
++        0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,
++        0xBD,0xBE,0xBF,0xC0,0xC2,0xC3,0xC4,0xC5,
++        0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,
++        0xCE,0xCF,0xD0,0xD1,0xD2,0xD4,0xD5,0xD6,
++        0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,
++        0xDF,0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,
++        0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,
++        0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,
++        0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,
++        0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    },
++    {
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
++        0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,
++        0x03,0x04,0x05,0x06,0x07,0x09,0x0B,0x0C,
++        0x0E,0x10,0x12,0x14,0x16,0x18,0x1A,0x1C,
++        0x1E,0x20,0x21,0x23,0x25,0x27,0x28,0x2A,
++        0x2C,0x2D,0x2F,0x31,0x32,0x34,0x36,0x37,
++        0x39,0x3B,0x3C,0x3E,0x3F,0x41,0x42,0x44,
++        0x45,0x47,0x48,0x4A,0x4B,0x4D,0x4E,0x50,
++        0x51,0x53,0x54,0x56,0x57,0x59,0x5A,0x5C,
++        0x5D,0x5F,0x60,0x61,0x63,0x64,0x66,0x67,
++        0x68,0x6A,0x6B,0x6D,0x6E,0x6F,0x71,0x72,
++        0x73,0x75,0x76,0x78,0x79,0x7A,0x7C,0x7D,
++        0x7E,0x80,0x81,0x82,0x84,0x85,0x86,0x88,
++        0x89,0x8A,0x8B,0x8D,0x8E,0x8F,0x91,0x92,
++        0x93,0x95,0x96,0x97,0x98,0x9A,0x9B,0x9C,
++        0x9E,0x9F,0xA0,0xA1,0xA3,0xA4,0xA5,0xA6,
++        0xA8,0xA9,0xAA,0xAB,0xAD,0xAE,0xAF,0xB0,
++        0xB2,0xB3,0xB4,0xB5,0xB7,0xB8,0xB9,0xBA,
++        0xBC,0xBD,0xBE,0xBF,0xC0,0xC2,0xC3,0xC4,
++        0xC5,0xC7,0xC8,0xC9,0xCA,0xCB,0xCD,0xCE,
++        0xCF,0xD0,0xD1,0xD3,0xD4,0xD5,0xD6,0xD7,
++        0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xE0,0xE1,
++        0xE2,0xE3,0xE4,0xE6,0xE7,0xE8,0xE9,0xEA,
++        0xEB,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,
++        0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFC,0xFD,
++        0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++        0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
++    }
++};
++//// profile array ////
++
++typedef struct
++{
++	int  productID; // USB PID
++    char		productName[50]; // ESCI/2 procduct name
++	char 		deviceID[50]; // device ID (same as bonjour mdl name)
++    int  lutID; // look up table no
++}epsonds_profile_map;
++
++const  epsonds_profile_map epsonds_models_predefined[] = {
++  {0x0145, "DS-5500","DS-5500", 7},
++  {0x0145, "DS-6500","DS-6500", 7},
++  {0x0145, "DS-7500","DS-7500", 7},
++  {0x0146, "DS-50000","DS-50000", 7},
++  {0x0146, "DS-60000","DS-60000", 7},
++  {0x0146, "DS-70000","DS-70000", 7},
++  {0x014C, "DS-510","DS-510", 7},
++  {0x0150, "DS-560","DS-560", 7},
++  {0x0152, "DS-40","DS-40", 7},
++  {0x014D, "DS-760","DS-760", 7},
++  {0x014D, "DS-860","DS-860", 7},
++  {0x0154, "DS-520","DS-520", 7},
++  {0x08BC, "PID 08BC","PX-M7050 Series", 7},
++  {0x08BC, "PID 08BC","WF-8510 Series", 7},
++  {0x08BC, "PID 08BC","WF-8590 Series", 7},
++  {0x08CC, "PID 08CC","PX-M7050FX Series", 7},
++  {0x08CC, "PID 08CC","WF-R8590 Series", 7},
++  {0x0165, "DS-410","DS-410", 7},
++  {0x016C, "ES-50","ES-50", 6},
++  {0x0160, "DS-70","DS-70", 6},
++  {0x016D, "ES-55R","ES-55R", 6},
++  {0x018C, "RR-60","RR-60", 6},
++  {0x016E, "ES-60W","ES-60W", 6},
++  {0x0166, "DS-80W","DS-80W", 6},
++  {0x016F, "ES-65WR","ES-65WR", 6},
++  {0x018B, "RR-70W","RR-70W", 6},
++  {0x016E, "ES-60WW","ES-60WW", 6},
++  {0x016E, "ES-60WB","ES-60WB", 6},
++  {0x015C, "DS-1630","DS-1630", 4},
++  {0x015D, "DS-1610","DS-1610", 4},
++  {0x015E, "DS-1660W","DS-1660W", 4},
++  {0x0159, "DS-310","DS-310", 5},
++  {0x0159, "ES-200","ES-200", 5},
++  {0x0162, "DS-320","DS-320", 5},
++  {0x015A, "DS-360W","DS-360W", 5},
++  {0x015A, "ES-300W","ES-300W", 5},
++  {0x0177, "ES-300WR","ES-300WR", 5},
++  {0x0181, "ES-400II","ES-400II", 2},
++  {0x0183, "DS-535II","DS-535II", 2},
++  {0x0184, "DS-531","DS-531", 2},
++  {0x0182, "DS-530II","DS-530II", 2},
++  {0x0185, "ES-500WII","ES-500WII", 2},
++  {0x0188, "DS-571W","DS-571W", 2},
++  {0x0187, "DS-575WII","DS-575WII", 2},
++  {0x0186, "DS-570WII","DS-570WII", 2},
++  {0x017F, "ES-580W","ES-580W", 2},
++  {0x0180, "RR-600W","RR-600W", 2},
++  {0x0167, "DS-535","DS-535", 2},
++  {0x017A, "DS-535H","DS-535H", 2},
++  {0x0156, "ES-400","ES-400", 2},
++  {0x0155, "DS-530","DS-530", 2},
++  {0x016B, "FF-680W","FF-680W", 2},
++  {0x0157, "DS-570W","DS-570W", 2},
++  {0x0157, "ES-500W","ES-500W", 2},
++  {0x0169, "DS-575W","DS-575W", 2},
++  {0x0176, "ES-500WR","ES-500WR", 2},
++  {0x114E, "PID 114E","EW-052A Series", 7},
++  {0x114E, "PID 114E","XP-2100 Series", 7},
++  {0x1135, "PID 1135","ET-2700 Series", 7},
++  {0x1135, "PID 1135","L4150 Series", 7},
++  {0x114A, "PID 114A","ET-M2140 Series", 7},
++  {0x114A, "PID 114A","M2140 Series", 7},
++  {0x114F, "PID 114F","ET-M3140 Series", 7},
++  {0x114F, "PID 114F","M3140 Series", 7},
++  {0x1143, "PID 1143","L3150 Series", 7},
++  {0x1143, "PID 1143","ET-2710 Series", 7},
++  {0x00, "","", 0x00 }
++};
++
++typedef struct
++{
++  epsonds_profile_map *array;
++  int used;
++  int size;
++}epsonds_profile_map_array;
++
++
++static epsonds_profile_map_array stProfileMapArray;
++
++static void insert_profile_map(epsonds_profile_map_array *a, epsonds_profile_map element);
++
++static void init_profile_maps(epsonds_profile_map_array *a, size_t initialSize) {
++  a->array = malloc(initialSize * sizeof(epsonds_profile_map));
++  a->used = 0;
++  a->size = initialSize;
++
++   for (int i = 0; epsonds_models_predefined[i].productID != 0; i++) {
++
++		//DBG(6, "epsonds_models_predefined[i].productID         = %x\n", epsonds_models_predefined[i].productID );
++
++	   insert_profile_map(a, epsonds_models_predefined[i]);
++   }
++}
++
++static void insert_profile_map(epsonds_profile_map_array *a, epsonds_profile_map element) {
++  if (a->used == a->size) {
++    a->size *= 2;
++    a->array = realloc(a->array, a->size * sizeof(epsonds_profile_map));
++  }
++  a->array[a->used++] = element;
++}
++
++static void free_profile_maps(epsonds_profile_map_array *a) {
++  free(a->array);
++  a->array = NULL;
++  a->used = a->size = 0;
++}
++/////////////////////////
++
++
+ struct mode_param mode_params[] = {
+ 	{0, 0x00, 0x30, 1},
+ 	{0, 0x00, 0x30, 8},
+@@ -86,16 +1313,12 @@ static SANE_String_Const mode_list[] = {
+ 	NULL
+ };
+ 
+-static const SANE_String_Const adf_mode_list[] = {
+-	SANE_I18N("Simplex"),
+-	SANE_I18N("Duplex"),
+-	NULL
+-};
+ 
+ /* Define the different scan sources */
+ 
+-#define FBF_STR	SANE_I18N("Flatbed")
+-#define ADF_STR	SANE_I18N("Automatic Document Feeder")
++#define STRING_FLATBED SANE_I18N("Flatbed")
++#define STRING_ADFFRONT SANE_I18N("ADF Front")
++#define STRING_ADFDUPLEX SANE_I18N("ADF Duplex")
+ 
+ /* order will be fixed: fb, adf, tpu */
+ SANE_String_Const source_list[] = {
+@@ -129,6 +1352,9 @@ max_string_size(const SANE_String_Const strings[])
+ 
+ static SANE_Status attach_one_usb(SANE_String_Const devname);
+ static SANE_Status attach_one_net(SANE_String_Const devname);
++static SANE_Status acquire_jpeg_data(epsonds_scanner* s);
++static SANE_Status acquire_and_decode_jpeg_data(epsonds_scanner* s);
++static SANE_Status acquire_raw_data(epsonds_scanner* s);
+ 
+ static void
+ print_params(const SANE_Parameters params)
+@@ -146,6 +1372,11 @@ close_scanner(epsonds_scanner *s)
+ {
+ 	DBG(7, "%s: fd = %d\n", __func__, s->fd);
+ 
++	if (s->scanning)
++	{
++		sane_cancel(s);
++	}
++
+ 	if (s->fd == -1)
+ 		goto free;
+ 
+@@ -171,49 +1402,6 @@ free:
+ 	DBG(7, "%s: ZZZ\n", __func__);
+ }
+ 
+-static void
+-e2_network_discovery(void)
+-{
+-	fd_set rfds;
+-	int fd, len;
+-	SANE_Status status;
+-
+-	char *ip, *query = "EPSONP\x00\xff\x00\x00\x00\x00\x00\x00\x00";
+-	unsigned char buf[76];
+-
+-	struct timeval to;
+-
+-	status = sanei_udp_open_broadcast(&fd);
+-	if (status != SANE_STATUS_GOOD)
+-		return;
+-
+-	sanei_udp_write_broadcast(fd, 3289, (unsigned char *) query, 15);
+-
+-	DBG(5, "%s, sent discovery packet\n", __func__);
+-
+-	to.tv_sec = 1;
+-	to.tv_usec = 0;
+-
+-	FD_ZERO(&rfds);
+-	FD_SET(fd, &rfds);
+-
+-	sanei_udp_set_nonblock(fd, SANE_TRUE);
+-	while (select(fd + 1, &rfds, NULL, NULL, &to) > 0) {
+-		if ((len = sanei_udp_recvfrom(fd, buf, 76, &ip)) == 76) {
+-			DBG(5, " response from %s\n", ip);
+-
+-			/* minimal check, protocol unknown */
+-			if (strncmp((char *) buf, "EPSON", 5) == 0)
+-				attach_one_net(ip);
+-		}
+-	}
+-
+-	DBG(5, "%s, end\n", __func__);
+-
+-	sanei_udp_close(fd);
+-}
+-
+-
+ static SANE_Status
+ open_scanner(epsonds_scanner *s)
+ {
+@@ -230,7 +1418,7 @@ open_scanner(epsonds_scanner *s)
+ 		unsigned char buf[5];
+ 
+ 		/* device name has the form net:ipaddr */
+-		status = sanei_tcp_open(&s->hw->sane.name[4], 1865, &s->fd);
++		status = sanei_tcp_open(&s->hw->name[4], 1865, &s->fd);
+ 		if (status == SANE_STATUS_GOOD) {
+ 
+ 			ssize_t read;
+@@ -272,12 +1460,10 @@ open_scanner(epsonds_scanner *s)
+ 		}
+ 
+ 	} else if (s->hw->connection == SANE_EPSONDS_USB) {
+-
+ 		status = sanei_usb_open(s->hw->sane.name, &s->fd);
+ 
+ 		if (status == SANE_STATUS_GOOD) {
+ 			sanei_usb_set_timeout(USB_TIMEOUT);
+-			sanei_usb_clear_halt(s->fd);
+ 		}
+ 
+ 	} else {
+@@ -307,7 +1493,6 @@ static struct epsonds_scanner *
+ scanner_create(struct epsonds_device *dev, SANE_Status *status)
+ {
+ 	struct epsonds_scanner *s;
+-
+ 	s = malloc(sizeof(struct epsonds_scanner));
+ 	if (s == NULL) {
+ 		*status = SANE_STATUS_NO_MEM;
+@@ -428,7 +1613,32 @@ device_detect(const char *name, int type, SANE_Status *status)
+ 
+ 	DBG(1, "scanner model: %s\n", dev->model);
+ 
+-	/* add this scanner to the device list */
++
++	s->hw->lut_id = 0;
++
++	for (int i = 0; i < stProfileMapArray.used; i++) {
++
++		epsonds_profile_map* map = &stProfileMapArray.array[i];
++
++
++		if (strcmp(map->productName, dev->model) == 0) {
++
++			{//Convert to user friendly model name
++				free(s->hw->model);
++
++				char* deviceName = (char*)malloc(strlen(map->deviceID) + 1);
++				memset(deviceName, 0, strlen(map->deviceID) + 1);
++				strncpy(deviceName,  map->deviceID, strlen(map->deviceID));
++				s->hw->model = deviceName;
++				s->hw->sane.model = s->hw->model;
++			}
++			{// set lutid
++				s->hw->lut_id = map->lutID;
++			}
++			break;
++		}
++	}
++	DBG(1, "scanner lut_id: %d\n", s->hw->lut_id);
+ 
+ 	num_devices++;
+ 	dev->next = first_dev;
+@@ -479,6 +1689,67 @@ attach_one_net(const char *dev)
+ 	return attach(name, SANE_EPSONDS_NET);
+ }
+ 
++static void found_net_device(const char* device_name, const char* ip)
++{
++	DBG(7, "Found %s: ip = %s\n", device_name, ip);
++
++	int foundSupportedDevice = 0;
++
++	// search models
++	for (int i = 0; i < stProfileMapArray.used; i++) {
++		if (strcmp(stProfileMapArray.array[i].deviceID, device_name) == 0) {
++			foundSupportedDevice = 1;
++			break;
++		}
++	}
++
++
++	if (foundSupportedDevice)
++	{
++		char name[39 + 4];
++
++		strcpy(name, "net:");
++		strncat(name, ip, 39);
++
++		int foundCache = 0;
++		// search cache and prents duplicated model
++		for (epsonds_device* dev = first_dev; dev; dev = dev->next) {
++			if (strcmp(dev->sane.name, name) == 0) {
++				foundCache = 1;
++			}
++		}
++		if (foundCache == 0)
++		{
++			attach(name, SANE_EPSONDS_NET);
++		}
++	}
++}
++
++static void
++splitProfileName(const char* input, int* outProductID, char *outProductName, char* outDeviceID, int* outLutID)
++{
++    char target[1024];
++    strncpy(target, input, 1023);
++
++    strtok(target, ":");//profile
++
++    //productID
++    char* pid = strtok(NULL, ",");
++    sscanf(pid, "%x", (unsigned int*)outProductID);
++
++    //productName
++    char* productName = strtok(NULL, ",");
++    strncpy(outProductName, productName,  49);
++
++    //deviceID
++    char* deviceID = strtok(NULL, ",");
++    strncpy(outDeviceID, deviceID,  49);
++
++    //lutID
++    char* lutID = strtok(NULL, ",");
++    sscanf(lutID, "%d", outLutID);
++}
++
+ 
+ static SANE_Status
+ attach_one_config(SANEI_Config __sane_unused__ *config, const char *line,
+@@ -489,8 +1760,17 @@ attach_one_config(SANEI_Config __sane_unused__ *config, const char *line,
+ 	int len = strlen(line);
+ 
+ 	DBG(7, "%s: len = %d, line = %s\n", __func__, len, line);
++	if (strncmp(line, "profile", 7) == 0 ) {
++		DBG(7, " found profile device profile\n");
+ 
+-	if (sscanf(line, "usb %i %i", &vendor, &product) == 2) {
++		epsonds_profile_map profle_map;
++
++		splitProfileName(line, &profle_map.productID, profle_map.productName, profle_map.deviceID, &profle_map.lutID);
++
++		DBG(7, "Found profile : %x %s %s %d\n", profle_map.productID, profle_map.productName, profle_map.deviceID, profle_map.lutID);
++
++		insert_profile_map(&stProfileMapArray, profle_map);
++	}else if (sscanf(line, "usb %i %i", &vendor, &product) == 2) {
+ 
+ 		DBG(7, " user configured device\n");
+ 
+@@ -501,15 +1781,11 @@ attach_one_config(SANEI_Config __sane_unused__ *config, const char *line,
+ 
+ 	} else if (strncmp(line, "usb", 3) == 0 && len == 3) {
+ 
+-		int i, numIds;
+-
+ 		DBG(7, " probing usb devices\n");
+ 
+-		numIds = epsonds_get_number_of_ids();
+-
+-		for (i = 0; i < numIds; i++) {
+-			sanei_usb_find_devices(SANE_EPSONDS_VENDOR_ID,
+-					epsonds_usb_product_ids[i], attach_one_usb);
++		for (int i = 0; i < stProfileMapArray.used; i++) {
++			int usbPid = stProfileMapArray.array[i].productID;
++			sanei_usb_find_devices(SANE_EPSONDS_VENDOR_ID, usbPid, attach_one_usb);
+ 		}
+ 
+ 	} else if (strncmp(line, "net", 3) == 0) {
+@@ -520,11 +1796,17 @@ attach_one_config(SANEI_Config __sane_unused__ *config, const char *line,
+ 				sanei_config_skip_whitespace(line + 3);
+ 
+ 			if (strncmp(name, "autodiscovery", 13) == 0)
+-				e2_network_discovery();
++			{
++				#if WITH_AVAHI
++				epsonds_searchDevices(found_net_device);
++				#else
++				// currently does not support
++				//e2_network_discovery();
++				#endif
++			}
+ 			else
+ 				attach_one_net(name);
+ 		}
+-
+ 	} else {
+ 		DBG(0, "unable to parse config line: %s\n", line);
+ 	}
+@@ -564,6 +1846,9 @@ SANE_Status
+ sane_init(SANE_Int *version_code, SANE_Auth_Callback __sane_unused__ authorize)
+ {
+ 	DBG_INIT();
++
++	init_profile_maps(&stProfileMapArray, 100);
++
+ 	DBG(2, "%s: " PACKAGE " " VERSION "\n", __func__);
+ 
+ 	DBG(1, "epsonds backend, version %i.%i.%i\n",
+@@ -582,6 +1867,7 @@ void
+ sane_exit(void)
+ {
+ 	DBG(5, "** %s\n", __func__);
++	free_profile_maps(&stProfileMapArray);
+ 	free_devices();
+ }
+ 
+@@ -591,7 +1877,8 @@ sane_get_devices(const SANE_Device ***device_list, SANE_Bool local_only)
+ 	int i;
+ 	epsonds_device *dev;
+ 
+-	DBG(5, "** %s\n", __func__);
++	DBG(5, "** %s  local_only = %d \n", __func__, local_only);
++
+ 
+ 	probe_devices(local_only);
+ 
+@@ -612,12 +1899,14 @@ sane_get_devices(const SANE_Device ***device_list, SANE_Bool local_only)
+ 
+ 	*device_list = devlist;
+ 
++
+ 	return SANE_STATUS_GOOD;
+ }
+ 
+ static SANE_Status
+ init_options(epsonds_scanner *s)
+ {
++	DBG(5, "init_options\n");
+ 	int i;
+ 
+ 	for (i = 0; i < NUM_OPTIONS; i++) {
+@@ -632,11 +1921,11 @@ init_options(epsonds_scanner *s)
+ 	s->val[OPT_NUM_OPTS].w = NUM_OPTIONS;
+ 
+ 	/* "Scan Mode" group: */
+-
+-	s->opt[OPT_MODE_GROUP].title = SANE_I18N("Scan Mode");
+-	s->opt[OPT_MODE_GROUP].desc = "";
+-	s->opt[OPT_MODE_GROUP].type = SANE_TYPE_GROUP;
+-	s->opt[OPT_MODE_GROUP].cap = 0;
++	s->opt[OPT_STANDARD_GROUP].name = SANE_NAME_STANDARD;
++	s->opt[OPT_STANDARD_GROUP].title = SANE_TITLE_STANDARD;
++	s->opt[OPT_STANDARD_GROUP].desc = SANE_DESC_STANDARD;
++	s->opt[OPT_STANDARD_GROUP].type = SANE_TYPE_GROUP;
++	s->opt[OPT_STANDARD_GROUP].cap = 0;
+ 
+ 	/* scan mode */
+ 	s->opt[OPT_MODE].name = SANE_NAME_SCAN_MODE;
+@@ -761,18 +2050,6 @@ init_options(epsonds_scanner *s)
+ 	if (!s->hw->adf_has_load)
+ 		s->opt[OPT_LOAD].cap |= SANE_CAP_INACTIVE;
+ 
+-	s->opt[OPT_ADF_MODE].name = "adf-mode";
+-	s->opt[OPT_ADF_MODE].title = SANE_I18N("ADF Mode");
+-	s->opt[OPT_ADF_MODE].desc =
+-		SANE_I18N("Selects the ADF mode (simplex/duplex)");
+-	s->opt[OPT_ADF_MODE].type = SANE_TYPE_STRING;
+-	s->opt[OPT_ADF_MODE].size = max_string_size(adf_mode_list);
+-	s->opt[OPT_ADF_MODE].constraint_type = SANE_CONSTRAINT_STRING_LIST;
+-	s->opt[OPT_ADF_MODE].constraint.string_list = adf_mode_list;
+-	s->val[OPT_ADF_MODE].w = 0; /* simplex */
+-
+-	if (!s->hw->adf_is_duplex)
+-		s->opt[OPT_ADF_MODE].cap |= SANE_CAP_INACTIVE;
+ 
+ 	s->opt[OPT_ADF_SKEW].name = "adf-skew";
+ 	s->opt[OPT_ADF_SKEW].title = SANE_I18N("ADF Skew Correction");
+@@ -781,8 +2058,26 @@ init_options(epsonds_scanner *s)
+ 	s->opt[OPT_ADF_SKEW].type = SANE_TYPE_BOOL;
+ 	s->val[OPT_ADF_SKEW].w = 0;
+ 
++
++	s->opt[OPT_ADF_CRP].name = "adf-crp";
++	s->opt[OPT_ADF_CRP].title = SANE_I18N("ADF CRP Correction");
++	s->opt[OPT_ADF_CRP].desc =
++		SANE_I18N("Enables ADF auto cropping"); //
++	s->opt[OPT_ADF_CRP].type = SANE_TYPE_BOOL;
++	s->val[OPT_ADF_CRP].w = 0;
++
++
+ 	if (!s->hw->adf_has_skew)
++	{
++		s->val[OPT_ADF_SKEW].w = 0;
+ 		s->opt[OPT_ADF_SKEW].cap |= SANE_CAP_INACTIVE;
++	}
++
++	if(!s->hw->adf_has_crp)
++	{
++		s->val[OPT_ADF_CRP].w = 0;
++		s->opt[OPT_ADF_CRP].cap |= SANE_CAP_INACTIVE;
++	}
+ 
+ 	return SANE_STATUS_GOOD;
+ }
+@@ -793,6 +2088,8 @@ sane_open(SANE_String_Const name, SANE_Handle *handle)
+ 	SANE_Status status;
+ 	epsonds_scanner *s = NULL;
+ 
++
++
+ 	DBG(7, "** %s: name = '%s'\n", __func__, name);
+ 
+ 	/* probe if empty device name provided */
+@@ -848,6 +2145,8 @@ sane_open(SANE_String_Const name, SANE_Handle *handle)
+ 		status = eds_lock(s);
+ 	}
+ 
++	setvalue((SANE_Handle)s, OPT_MODE, (void*)SANE_VALUE_SCAN_MODE_COLOR, NULL);
++
+ 	return status;
+ }
+ 
+@@ -881,24 +2180,6 @@ search_string_list(const SANE_String_Const *list, SANE_String value)
+ 	return ((*list == NULL) ? NULL : list);
+ }
+ 
+-static void
+-activateOption(epsonds_scanner *s, SANE_Int option, SANE_Bool *change)
+-{
+-	if (!SANE_OPTION_IS_ACTIVE(s->opt[option].cap)) {
+-		s->opt[option].cap &= ~SANE_CAP_INACTIVE;
+-		*change = SANE_TRUE;
+-	}
+-}
+-
+-static void
+-deactivateOption(epsonds_scanner *s, SANE_Int option, SANE_Bool *change)
+-{
+-	if (SANE_OPTION_IS_ACTIVE(s->opt[option].cap)) {
+-		s->opt[option].cap |= SANE_CAP_INACTIVE;
+-		*change = SANE_TRUE;
+-	}
+-}
+-
+ /*
+  * Handles setting the source (flatbed, transparency adapter (TPU),
+  * or auto document feeder (ADF)).
+@@ -911,7 +2192,6 @@ static void
+ change_source(epsonds_scanner *s, SANE_Int optindex, char *value)
+ {
+ 	int force_max = SANE_FALSE;
+-	SANE_Bool dummy;
+ 
+ 	DBG(1, "%s: optindex = %d, source = '%s'\n", __func__, optindex,
+ 	    value);
+@@ -928,26 +2208,17 @@ change_source(epsonds_scanner *s, SANE_Int optindex, char *value)
+ 		force_max = SANE_TRUE;
+ 	}
+ 
+-	if (strcmp(ADF_STR, value) == 0) {
+-
++	if (strcmp(STRING_ADFFRONT, value) == 0 || strcmp(STRING_ADFDUPLEX, value) == 0) {
+ 		s->hw->x_range = &s->hw->adf_x_range;
+ 		s->hw->y_range = &s->hw->adf_y_range;
+ 		s->hw->alignment = s->hw->adf_alignment;
+ 
+-		if (s->hw->adf_is_duplex) {
+-			activateOption(s, OPT_ADF_MODE, &dummy);
+-		} else {
+-			deactivateOption(s, OPT_ADF_MODE, &dummy);
+-			s->val[OPT_ADF_MODE].w = 0;
+-		}
+ 
+ 	} else if (strcmp(TPU_STR, value) == 0) {
+ 
+ 		s->hw->x_range = &s->hw->tpu_x_range;
+ 		s->hw->y_range = &s->hw->tpu_y_range;
+ 
+-		deactivateOption(s, OPT_ADF_MODE, &dummy);
+-
+ 	} else {
+ 
+ 		/* neither ADF nor TPU active, assume FB */
+@@ -995,7 +2266,6 @@ getvalue(SANE_Handle handle, SANE_Int option, void *value)
+ 		break;
+ 
+ 	case OPT_MODE:
+-	case OPT_ADF_MODE:
+ 	case OPT_SOURCE:
+ 		strcpy((char *) value, sopt->constraint.string_list[sval->w]);
+ 		break;
+@@ -1045,12 +2315,9 @@ setvalue(SANE_Handle handle, SANE_Int option, void *value, SANE_Int *info)
+ 
+ 	switch (option) {
+ 
+-	case OPT_ADF_MODE: /* simple lists */
+-		sval->w = optindex;
+-		break;
+-
+ 	case OPT_ADF_SKEW:
+ 	case OPT_RESOLUTION:
++	case OPT_ADF_CRP:
+ 		sval->w = *((SANE_Word *) value);
+ 		reload = SANE_TRUE;
+ 		break;
+@@ -1064,9 +2331,29 @@ setvalue(SANE_Handle handle, SANE_Int option, void *value, SANE_Int *info)
+ 		// fall through
+ 	case OPT_TL_X:
+ 	case OPT_TL_Y:
++
+ 		sval->w = *((SANE_Word *) value);
+ 		if (NULL != info)
+ 			*info |= SANE_INFO_RELOAD_PARAMS;
++
++		if (option == OPT_BR_X)
++		{
++			DBG(17, "OPT_BR_X = %d\n", sval->w);
++		}
++		if (option == OPT_BR_Y)
++		{
++			DBG(17, "OPT_BR_Y = %d\n", sval->w);
++		}
++		if (option == OPT_TL_X)
++		{
++			DBG(17, "OPT_TL_X = %d\n", sval->w);
++		}
++		if (option == OPT_TL_Y)
++		{
++			DBG(17, "OPT_TL_Y = %d\n", sval->w);
++		}
++		// adf crop set to off
++		s->val[OPT_ADF_CRP].w = 0;
+ 		break;
+ 
+ 	case OPT_SOURCE:
+@@ -1076,6 +2363,8 @@ setvalue(SANE_Handle handle, SANE_Int option, void *value, SANE_Int *info)
+ 
+ 	case OPT_MODE:
+ 	{
++		DBG(17, " OPT_MODE = index %d\n", optindex);
++
+ 		/* use JPEG mode if RAW is not available when bpp > 1 */
+ 		if (optindex > 0 && !s->hw->has_raw) {
+ 			s->mode_jpeg = 1;
+@@ -1152,6 +2441,183 @@ sane_control_option(SANE_Handle handle, SANE_Int option, SANE_Action action,
+ 	return SANE_STATUS_INVAL;
+ }
+ 
++
++static void setBit (SANE_Byte* bytes, SANE_Int bitIndex, SANE_Bool isTrue)
++{
++    SANE_Int octet = bitIndex / 8;
++    SANE_Byte  bit   = 7 - (bitIndex % 8);
++
++    if (isTrue) {
++        bytes[octet] |=  (1 << bit);
++    } else {
++        bytes[octet] &= ~(1 << bit);
++    }
++}
++
++static SANE_Bool getBit (SANE_Byte* bytes, SANE_Int bitIndex)
++{
++    SANE_Int octet = bitIndex / 8;
++    SANE_Byte mask = 1 << (7 - (bitIndex % 8));
++
++    if( bytes[octet] & mask ){
++        return SANE_TRUE;
++    }
++
++    return SANE_FALSE;
++}
++
++static void swapPixel1(SANE_Int  x1,
++                       SANE_Int  y1,
++                       SANE_Int  x2,
++                       SANE_Int  y2,
++                       SANE_Byte*  bytes,
++                       SANE_Byte   bitsPerSample,
++                       SANE_Int  samplesPerPixel,
++                       SANE_Int  bytesPerRow)
++{
++    SANE_Int pixelBits =  bitsPerSample * samplesPerPixel;
++    SANE_Int widthBits =  bytesPerRow * 8;
++
++    SANE_Byte temp = getBit(bytes, widthBits * y1 + x1 * pixelBits);
++    {
++        SANE_Byte right =  getBit(bytes, widthBits * y2 + x2 * pixelBits);
++        setBit(bytes, widthBits * y1 + x1 * pixelBits, right);
++    }
++    setBit(bytes, widthBits * y2 + x2 * pixelBits, temp);
++}
++
++static void swapPixel8(SANE_Int  x1,
++                       SANE_Int  y1,
++                       SANE_Int  x2,
++                       SANE_Int  y2,
++                       SANE_Byte*  bytes,
++                       SANE_Byte   bitsPerSample,
++                       SANE_Int  samplesPerPixel,
++                       SANE_Int  bytesPerRow)
++{
++    SANE_Int pixelBytes =  samplesPerPixel * bitsPerSample / 8;
++
++    for (SANE_Byte i = 0; i < pixelBytes; i++) {
++        SANE_Byte temp = bytes[y1 * bytesPerRow +  (pixelBytes *  x1 + i)];
++        bytes[y1 * bytesPerRow + (pixelBytes * x1 + i)] =  bytes[y2 * bytesPerRow +  (pixelBytes * x2 + i)];
++        bytes[y2 * bytesPerRow + (pixelBytes * x2 + i)] =  temp;
++    }
++}
++
++
++
++static void swapPixel(SANE_Int  x1,
++                      SANE_Int  y1,
++                      SANE_Int  x2,
++                      SANE_Int  y2,
++                      SANE_Byte*  bytes,
++                      SANE_Byte   bitsPerSample,
++                      SANE_Int  samplesPerPixel,
++                      SANE_Int  bytesPerRow)
++{
++    if (bitsPerSample == 1) {
++        swapPixel1(x1, y1, x2, y2, bytes, bitsPerSample, samplesPerPixel, bytesPerRow);
++    }else if(bitsPerSample == 8 || bitsPerSample == 16){
++        swapPixel8(x1, y1, x2, y2, bytes, bitsPerSample, samplesPerPixel, bytesPerRow);
++    }
++}
++
++
++void
++upside_down_backside_image(epsonds_scanner *s)
++{
++	// get all data from ring_buffer
++	if (eds_ring_avail(&s->back)  &&
++	    (strcmp(s->hw->sane.model, (char*)"DS-1630") == 0
++		 || strcmp(s->hw->sane.model, (char*)"DS-1610") == 0
++		 || strcmp(s->hw->sane.model, (char*)"DS-1660W") == 0))
++	{
++		SANE_Int bytesPerLine = s->params.bytes_per_line;
++		SANE_Int imageSize = bytesPerLine * s->height_back;
++
++		SANE_Byte* workBuffer = malloc(imageSize);
++		// if there is not enough memory, do nothing.
++		if (workBuffer)
++		{
++			eds_ring_read(&s->back, workBuffer, imageSize);
++			SANE_Int  samplesPerPxel = 3;
++			if (s->params.format == SANE_FRAME_RGB)
++			{
++				samplesPerPxel = 3;
++			}
++			else if (s->params.format == SANE_FRAME_GRAY)
++			{
++				samplesPerPxel = 1;
++			}
++
++			SANE_Int half = (s->height_back / 2) - 1;
++			if (half < 0) {
++				half = 0;
++			}
++
++			if((s->height_back % 2) == 1) {
++				SANE_Int ymid = ( (s->height_back - 1 ) / 2 );
++				for(SANE_Int x = 0;x < (s->width_back / 2); x++) {
++					swapPixel(x, ymid, s->width_back - x - 1, ymid, workBuffer, s->params.depth, samplesPerPxel, s->params.bytes_per_line);
++				}
++			}
++
++			if (s->height_back != 1) {
++				for(SANE_Int x = 0; x < s->width_back; x++) {
++					for(SANE_Int y = 0;y <= half; y++) {
++						swapPixel(x, y, s->width_back - x - 1, s->height_back - y -1, workBuffer, s->params.depth, samplesPerPxel, s->params.bytes_per_line);
++					}
++				}
++			}
++
++			eds_ring_write(&s->back, workBuffer, imageSize);
++			free(workBuffer);
++			workBuffer = NULL;
++
++		}
++	}
++
++}
++
++
++SANE_Status
++get_next_image(epsonds_scanner *s)
++{
++	SANE_Status status = SANE_STATUS_GOOD;
++
++	if (s->acquirePage == 0 && s->current == &s->front)
++	{
++		DBG(20, "** %s:  get_next_image\n", __func__);
++
++
++		/*page info will be updatted by pen*/
++		s->width_back = 0;
++		s->width_front = 0;
++		s->height_back = 0;
++		s->height_front = 0;
++
++		if (s->mode_jpeg)
++		{
++			status = acquire_and_decode_jpeg_data(s);
++		}else{
++			status = acquire_raw_data(s);
++		}
++		if (status != SANE_STATUS_GOOD)
++		{
++			eds_ring_flush(&s->front);
++			eds_ring_flush(&s->back);
++			eds_ring_destory(&s->front);
++			eds_ring_destory(&s->back);
++		}
++		DBG(20," ringFront = %d ringBack = %d\n", eds_ring_avail(&s->front), eds_ring_avail(&s->back));
++
++		s->acquirePage = 1;
++	}
++
++	return status;
++}
++
++
+ SANE_Status
+ sane_get_parameters(SANE_Handle handle, SANE_Parameters *params)
+ {
+@@ -1173,25 +2639,186 @@ sane_get_parameters(SANE_Handle handle, SANE_Parameters *params)
+ 		eds_init_parameters(s);
+ 	}
+ 
++
++	SANE_Status status = SANE_STATUS_GOOD;
++
++	status = get_next_image(s);
++
++	// if size auto, update page size value
++	if(s->val[OPT_ADF_CRP].w)
++	{
++		// frontside
++		if (s->current == &s->front)
++		{
++			DBG(20, "front side \n");
++			if (s->width_front != 0 && s->height_front != 0)
++			{
++				if (s->params.format == SANE_FRAME_RGB)
++				{
++					s->params.bytes_per_line = s->width_front * 3;
++					s->params.pixels_per_line = s->width_front;
++				}
++
++				if (s->params.format == SANE_FRAME_GRAY && s->params.depth == 8)
++				{
++					s->params.bytes_per_line = s->width_front;
++					s->params.pixels_per_line = s->width_front;
++				}
++
++				if (s->params.format == SANE_FRAME_GRAY && s->params.depth == 1)
++				{
++					s->params.bytes_per_line = (s->width_front + 7)/8;
++					s->params.pixels_per_line = s->width_front;
++				}
++				s->params.lines = s->height_front;
++			}
++		}
++		// backside
++		if (s->current == &s->back)
++		{
++			DBG(20, "back side \n");
++			if (s->width_back != 0 && s->height_back != 0)
++			{
++				if (s->params.format == SANE_FRAME_RGB)
++				{
++					s->params.bytes_per_line = s->width_back * 3;
++					s->params.pixels_per_line = s->width_back;
++				}
++
++				if (s->params.format == SANE_FRAME_GRAY && s->params.depth == 8)
++				{
++					s->params.bytes_per_line = s->width_back;
++					s->params.pixels_per_line = s->width_back;
++				}
++
++				if (s->params.format == SANE_FRAME_GRAY && s->params.depth == 1)
++				{
++					s->params.bytes_per_line = (s->width_back + 7)/8;
++					s->params.pixels_per_line = s->width_back;
++				}
++				s->params.lines = s->height_back;
++			}
++		}
++	}
+ 	if (params != NULL)
+ 		*params = s->params;
+ 
+ 	print_params(s->params);
+ 
+-	return SANE_STATUS_GOOD;
++	DBG(20, "s->params.line  = %d  s->params.bytes_per_line = %d s->params.pixels_per_line = %d \n", s->params.lines, s->params.bytes_per_line , s->params.pixels_per_line );
++	return status;
+ }
+ 
++
++
++typedef float ColorMatrix[3][3];
++
++#define CCT_TABLE_SIZE 9
++static int get_roundup_index(double frac[], int n)
++{
++    int        i, index = -1;
++    double    max_val = 0.0;
++
++    for (i=0; i<n; i++) {
++        if (frac[i]<0) continue;
++        if (max_val<frac[i]) {
++            index = i;
++            max_val = frac[i];
++        }
++    }
++    return index;
++}
++
++static int get_rounddown_index(double frac[], int n)
++{
++    int        i, index = -1;
++    double    min_val  = 1.0;
++
++    for (i=0; i<n; i++) {
++        if (frac[i]>0) continue;
++        if (min_val>frac[i]) {
++            index = i;
++            min_val = frac[i];
++        }
++    }
++    return index;
++}
++
++
++void ESCIRoundColorCorrectionMatrix(int mult, double org_cct[], int rnd_cct[])
++{
++    int        i, j, index;
++    double    mult_cct[CCT_TABLE_SIZE], frac[CCT_TABLE_SIZE];
++    int        sum[3];
++    int        loop;
++
++    for (i=0; i<CCT_TABLE_SIZE; i++) {
++        mult_cct[i] = org_cct[i] * mult;
++    }
++
++    // round value multiplied by 'mult' off to integer.
++    for (i=0; i<CCT_TABLE_SIZE; i++) {
++        rnd_cct[i] = (int)floor(org_cct[i] * mult + 0.5);
++    }
++
++    loop=0;
++    do {
++        // If all element equal to 11, diagonal element is set to 10.
++        for (i=0; i<3; i++) {
++            if (    (rnd_cct[i*3]==11) &&
++                (rnd_cct[i*3]==rnd_cct[i*3+1]) &&
++                (rnd_cct[i*3]==rnd_cct[i*3+2])    ) {
++                rnd_cct[i*3+i] --;
++                mult_cct[i*3+i] = rnd_cct[i*3+i];
++            }
++        }
++        // calc. summation of each line.
++        for (i=0; i<3; i++) {
++            sum[i] = 0;
++            for (j=0; j<3; j++) {
++                sum[i] += rnd_cct[i*3+j];
++            }
++        }
++        // calc. values rounded up or down.
++        for (i=0; i<CCT_TABLE_SIZE; i++) {
++            frac[i] = mult_cct[i] - rnd_cct[i];
++        }
++
++        // if summation does not equal to 'mult', adjust rounded up or down value.
++        for (i=0; i<3; i++) {
++            if (sum[i]<mult) {
++                index = get_roundup_index(&frac[i*3], 3);
++                if (index!=-1) {
++                    rnd_cct[i*3+index] ++;
++                    mult_cct[i*3+index] = rnd_cct[i*3+index];
++                    sum[i]++;
++                }
++            } else if (sum[i]>mult) {
++                index = get_rounddown_index(&frac[i*3], 3);
++                if (index!=-1) {
++                    rnd_cct[i*3+index] --;
++                    mult_cct[i*3+index] = rnd_cct[i*3+index];
++                    sum[i]--;
++                }
++            }
++        }
++
++    } while ((++loop<2)&&((sum[0]!=mult)||(sum[1]!=mult)||(sum[2]!=mult)));
++}
++
++
++
+ /*
+  * This function is part of the SANE API and gets called from the front end to
+  * start the scan process.
+  */
+-
++#define CMD_BUF_SIZE 1000
+ SANE_Status
+ sane_start(SANE_Handle handle)
+ {
+ 	epsonds_scanner *s = (epsonds_scanner *)handle;
+ 	char buf[65]; /* add one more byte to correct buffer overflow issue */
+-	char cmd[100]; /* take care not to overflow */
++	char cmd[CMD_BUF_SIZE]; /* take care not to overflow */
+ 	SANE_Status status = 0;
+ 
+ 	s->pages++;
+@@ -1203,26 +2830,28 @@ sane_start(SANE_Handle handle)
+ 
+ 	s->eof = 0;
+ 	s->canceling = 0;
++	s->acquirePage = 0;
+ 
+ 	if ((s->pages % 2) == 1) {
+ 		s->current = &s->front;
+-		eds_ring_flush(s->current);
+ 	} else if (eds_ring_avail(&s->back)) {
+ 		DBG(5, "back side\n");
+ 		s->current = &s->back;
+ 	}
+ 
+-	/* prepare the JPEG decompressor */
+-	if (s->mode_jpeg) {
+-		status = eds_jpeg_start(s);
+-		if (status != SANE_STATUS_GOOD) {
+-			goto end;
+-	}	}
+-
+ 	/* scan already in progress? (one pass adf) */
+-	if (s->scanning) {
++	if (s->scanning  || eds_ring_avail(&s->back) > 0) {
+ 		DBG(5, " scan in progress, returning early\n");
+-		return SANE_STATUS_GOOD;
++		return get_next_image(s);
++	}
++	if (strcmp(source_list[s->val[OPT_SOURCE].w], STRING_ADFFRONT) == 0 || strcmp(source_list[s->val[OPT_SOURCE].w], STRING_ADFDUPLEX) == 0) {
++		if (s->scanEnd)
++		{
++	  		 s->scanEnd = 0;
++	  		 return SANE_STATUS_NO_DOCS;
++		}
++	}else{
++	   s->scanEnd = 0;
+ 	}
+ 
+ 	/* calc scanning parameters */
+@@ -1239,13 +2868,7 @@ sane_start(SANE_Handle handle)
+ 
+ 	/* transfer buffer size, bsz */
+ 	/* XXX read value from scanner */
+-	s->bsz = (65536 * 4);
+-
+-	/* ring buffer for front page */
+-	status = eds_ring_init(&s->front, s->bsz * 2);
+-	if (status != SANE_STATUS_GOOD) {
+-		return status;
+-	}
++	s->bsz = (1048576 * 4);
+ 
+ 	/* transfer buffer */
+ 	s->buf = realloc(s->buf, s->bsz);
+@@ -1256,29 +2879,34 @@ sane_start(SANE_Handle handle)
+ 
+ 	/* set scanning parameters */
+ 
++	s->isDuplexScan = 0;
+ 	/* document source */
+-	if (strcmp(source_list[s->val[OPT_SOURCE].w], ADF_STR) == 0) {
++	if (strcmp(source_list[s->val[OPT_SOURCE].w], STRING_ADFFRONT) == 0 || strcmp(source_list[s->val[OPT_SOURCE].w], STRING_ADFDUPLEX) == 0) {
+ 
+-		sprintf(buf, "#ADF%s%s",
+-			s->val[OPT_ADF_MODE].w ? "DPLX" : "",
+-			s->val[OPT_ADF_SKEW].w ? "SKEW" : "");
+-
+-		/* it seems that DFL only works in duplex mode, but it's
+-		 * also required to be enabled or duplex will be rejected.
+-		 */
+-
+-		if (s->val[OPT_ADF_MODE].w) {
+-
+-			if (s->hw->adf_has_dfd == 2) {
+-				strcat(buf, "DFL2");
+-			} else if (s->hw->adf_has_dfd == 1) {
+-				strcat(buf, "DFL1");
+-			}
++		SANE_Int status = esci2_stat(s);
++		if (status == SANE_STATUS_NO_DOCS)
++		{
++		   return SANE_STATUS_NO_DOCS;
+ 		}
+ 
+-	} else if (strcmp(source_list[s->val[OPT_SOURCE].w], FBF_STR) == 0) {
++		SANE_Int duplexMode = (strcmp(source_list[s->val[OPT_SOURCE].w], STRING_ADFDUPLEX) == 0);
++
++		sprintf(buf, "#ADF%s%s%s",
++		duplexMode ? "DPLX" : "",
++		s->val[OPT_ADF_SKEW].w ? "SKEW" : "",
++		s->val[OPT_ADF_CRP].w ? "CRP " : ""
++		);
++
++		if (duplexMode)
++		{
++			s->isDuplexScan = 1;
++		}
++		s->isflatbedScan = 0;
++	}
++	else if (strcmp(source_list[s->val[OPT_SOURCE].w], STRING_FLATBED) == 0) {
+ 
+ 		strcpy(buf, "#FB ");
++		s->isflatbedScan = 1;
+ 
+ 	} else {
+ 		/* XXX */
+@@ -1286,8 +2914,18 @@ sane_start(SANE_Handle handle)
+ 
+ 	strcpy(cmd, buf);
+ 
++	s->needToConvertBW = 0;
++
+ 	if (s->params.format == SANE_FRAME_GRAY) {
+-		sprintf(buf, "#COLM%03d", s->params.depth);
++		if (s->params.depth == 1 && s->hw->has_mono == 0)
++		{
++			sprintf(buf, "#COLM008");
++			s->needToConvertBW = 1;
++			s->mode_jpeg = 1;
++		}else
++		{
++			sprintf(buf, "#COLM%03d", s->params.depth);
++		}
+ 	} else if (s->params.format == SANE_FRAME_RGB) {
+ 		sprintf(buf, "#COLC%03d", s->params.depth * 3);
+ 	}
+@@ -1303,9 +2941,29 @@ sane_start(SANE_Handle handle)
+ 		strcat(cmd, "#FMTJPG #JPGd090");
+ 	}
+ 
++	/* set GMM */
++	if (s->params.depth == 1)
++	{
++		sprintf(buf, "#GMMUG10");
++	} else
++	{
++		sprintf(buf, "#GMMUG18");
++	}
++	strcat(cmd, buf);
++
+ 	/* resolution (RSMi not always supported) */
+ 
+-	if (s->val[OPT_RESOLUTION].w > 999) {
++	if (strcmp(source_list[s->val[OPT_SOURCE].w], STRING_ADFFRONT) == 0 && s->val[OPT_RESOLUTION].w > 600) {
++		DBG(0, "Automatic Document Feeder supported resolution of 600dpi or less. \n");
++	} else if (s->val[OPT_RESOLUTION].w > 999) {
++		sprintf(buf, "#RSMi%07d#RSSi%07d", s->val[OPT_RESOLUTION].w, s->val[OPT_RESOLUTION].w);
++	} else {
++		sprintf(buf, "#RSMd%03d#RSSd%03d", s->val[OPT_RESOLUTION].w, s->val[OPT_RESOLUTION].w);
++	}
++
++		if (strcmp(source_list[s->val[OPT_SOURCE].w], STRING_ADFDUPLEX) == 0 && s->val[OPT_RESOLUTION].w > 600) {
++		DBG(0, "Automatic Document Feeder supported resolution of 600dpi or less. \n");
++	} else if (s->val[OPT_RESOLUTION].w > 999) {
+ 		sprintf(buf, "#RSMi%07d#RSSi%07d", s->val[OPT_RESOLUTION].w, s->val[OPT_RESOLUTION].w);
+ 	} else {
+ 		sprintf(buf, "#RSMd%03d#RSSd%03d", s->val[OPT_RESOLUTION].w, s->val[OPT_RESOLUTION].w);
+@@ -1313,13 +2971,321 @@ sane_start(SANE_Handle handle)
+ 
+ 	strcat(cmd, buf);
+ 
++	if (strcmp(s->hw->sane.model, (char*)"DS-70") == 0 || strcmp(s->hw->sane.model, (char*)"ES-65WR") == 0 || strcmp(s->hw->sane.model, (char*)"ES-60W") == 0
++	|| strcmp(s->hw->sane.model, (char*)"DS-80W") == 0 || strcmp(s->hw->sane.model, (char*)"ES-55R") == 0 || strcmp(s->hw->sane.model, (char*)"ES-50") == 0){
++		sprintf(buf, "#BSZi0262144");
++		strcat(cmd, buf);
++	}
++	else {
++		sprintf(buf, "#BSZi1048576");
++		strcat(cmd, buf);
++	}
++
++
+ 	/* scanning area */
++
+ 	sprintf(buf, "#ACQi%07di%07di%07di%07d",
+ 		s->left, s->top, s->params.pixels_per_line, s->params.lines);
+ 
++
++	if (strcmp(source_list[s->val[OPT_SOURCE].w], STRING_ADFFRONT) == 0 || strcmp(source_list[s->val[OPT_SOURCE].w], STRING_ADFDUPLEX) == 0) {
++		status = esci2_stat(s);
++		if (status != SANE_STATUS_GOOD) {
++			goto end;
++		}
++	}
++
+ 	strcat(cmd, buf);
+ 
+-	status = esci2_para(s, cmd);
++
++	int pos = 0;
++
++	{
++		for (int i = 0; i < CMD_BUF_SIZE; i++)
++		{
++			// find end of string
++			if(cmd[i] == 0)
++			{
++				pos = i;
++				break;
++			}
++		}
++
++
++		if (s->params.format == SANE_FRAME_GRAY && s->params.depth == 8) {
++			DBG(10, "SANE_FRAME_GRAY\n");
++			cmd[pos++] = '#';
++			cmd[pos++] = 'G';
++			cmd[pos++] = 'M';
++			cmd[pos++] = 'T';
++			cmd[pos++] = 'M';
++			cmd[pos++] = 'O';
++			cmd[pos++] = 'N';
++			cmd[pos++] = 'O';
++			cmd[pos++] = 'h';
++			cmd[pos++] = '1';
++			cmd[pos++] = '0';
++			cmd[pos++] = '0';
++
++			for(int count = 0; count < 256; count++) {
++				cmd[pos++] =  LUT[s->hw->lut_id][count];
++			}
++		}
++		if (s->params.format == SANE_FRAME_GRAY && s->params.depth == 1) {
++			DBG(10, "SANE_FRAME_GRAY\n");
++			cmd[pos++] = '#';
++			cmd[pos++] = 'G';
++			cmd[pos++] = 'M';
++			cmd[pos++] = 'T';
++			cmd[pos++] = 'M';
++			cmd[pos++] = 'O';
++			cmd[pos++] = 'N';
++			cmd[pos++] = 'O';
++			cmd[pos++] = 'h';
++			cmd[pos++] = '1';
++			cmd[pos++] = '0';
++			cmd[pos++] = '0';
++
++			for(int count = 0; count < 256; count++) {
++				cmd[pos++] =  LUT[0][count];
++			}
++		}
++		else if (s->params.format == SANE_FRAME_RGB) {
++			DBG(10, "SANE_FRAME_RGB\n");
++			cmd[pos++] = '#';
++			cmd[pos++] = 'G';
++			cmd[pos++] = 'M';
++			cmd[pos++] = 'T';
++			cmd[pos++] = 'R';
++			cmd[pos++] = 'E';
++			cmd[pos++] = 'D';
++			cmd[pos++] = ' ';
++			cmd[pos++] = 'h';
++			cmd[pos++] = '1';
++			cmd[pos++] = '0';
++			cmd[pos++] = '0';
++
++			for(int count = 0; count < 256; count++) {
++				cmd[pos++] =  LUT_R[s->hw->lut_id][count];
++			}
++
++			cmd[pos++] = '#';
++			cmd[pos++] = 'G';
++			cmd[pos++] = 'M';
++			cmd[pos++] = 'T';
++			cmd[pos++] = 'G';
++			cmd[pos++] = 'R';
++			cmd[pos++] = 'N';
++			cmd[pos++] = ' ';
++			cmd[pos++] = 'h';
++			cmd[pos++] = '1';
++			cmd[pos++] = '0';
++			cmd[pos++] = '0';
++
++			for(int count = 0; count < 256; count++) {
++				cmd[pos++] =  LUT_G[s->hw->lut_id][count];
++			}
++
++			cmd[pos++] = '#';
++			cmd[pos++] = 'G';
++			cmd[pos++] = 'M';
++			cmd[pos++] = 'T';
++			cmd[pos++] = 'B';
++			cmd[pos++] = 'L';
++			cmd[pos++] = 'U';
++			cmd[pos++] = ' ';
++			cmd[pos++] = 'h';
++			cmd[pos++] = '1';
++			cmd[pos++] = '0';
++			cmd[pos++] = '0';
++
++			for(int count = 0; count < 256; count++) {
++				cmd[pos++] =  LUT_B[s->hw->lut_id][count];
++			}
++		}
++		cmd[pos] = 0;
++
++	}
++	{// Set Color Matrix
++		if (s->params.format == SANE_FRAME_RGB && s->hw->lut_id != 0 )/*Color Matrix Target devide and color Scan*/
++		{
++			ColorMatrix matrix;
++
++			// DS-530
++
++			if (s->hw->lut_id == 2)
++			{
++				// R
++				matrix[0][0] = 1.0229;
++				matrix[0][1] = 0.0009;
++				matrix[0][2] = -0.0238;
++
++				// G
++				matrix[1][0] = 0.0031;
++				matrix[1][1] = 1.0287;
++				matrix[1][2] = -0.0318;
++
++				//B
++				matrix[2][0] = 0.0044;
++				matrix[2][1] = -0.1150;
++				matrix[2][2] = 1.1106;
++			}
++
++			// DS-1660W Flatbed
++
++			if (s->hw->lut_id == 4)
++			{
++				// R
++				matrix[0][0] = 1.0229;
++				matrix[0][1] = 0.0009;
++				matrix[0][2] = -0.0238;
++
++				// G
++				matrix[1][0] = 0.0031;
++				matrix[1][1] = 1.0287;
++				matrix[1][2] = -0.0318;
++
++				//B
++				matrix[2][0] = 0.0044;
++				matrix[2][1] = -0.1150;
++				matrix[2][2] = 1.1106;
++			}
++
++
++			// DS-320
++
++			if (s->hw->lut_id == 5)
++			{
++				// R
++				matrix[0][0] = 1.0250;
++				matrix[0][1] = 0.0004;
++				matrix[0][2] = -0.0254;
++
++				// G
++				matrix[1][0] = 0.0003;
++				matrix[1][1] = 1.0022;
++				matrix[1][2] = -0.0025;
++
++				//B
++				matrix[2][0] = 0.0049;
++				matrix[2][1] = -0.0949;
++				matrix[2][2] = 1.0900;
++			}
++
++
++			// ES-50
++
++			if (s->hw->lut_id == 6)
++			{
++				// R
++				matrix[0][0] = 1.0383;
++				matrix[0][1] = -0.0021;
++				matrix[0][2] = -0.0362;
++
++				// G
++				matrix[1][0] = 0.0046;
++				matrix[1][1] = 1.0576;
++				matrix[1][2] = -0.0622;
++
++				//B
++				matrix[2][0] = 0.0235;
++				matrix[2][1] = -0.2396;
++				matrix[2][2] = 1.2161;
++			}
++
++
++			// R
++			matrix[0][0] = 0.9864;
++			matrix[0][1] = 0.0248;
++			matrix[0][2] = -0.0112;
++
++			// G
++			matrix[1][0] = 0.0021;
++			matrix[1][1] = 1.0100;
++			matrix[1][2] = -0.0112;
++
++			//B
++			matrix[2][0] = 0.0139;
++			matrix[2][1] = -0.1249;
++			matrix[2][2] = 1.1110;
++
++
++			// Set Matrix value
++			{
++				cmd[pos++] = '#';
++				cmd[pos++] = 'C';
++				cmd[pos++] = 'M';
++				cmd[pos++] = 'X';
++				cmd[pos++] = 'U';
++				cmd[pos++] = 'M';
++				cmd[pos++] = '0';
++				cmd[pos++] = '8';
++				cmd[pos++] = 'h';
++				cmd[pos++] = '0';
++				cmd[pos++] = '0';
++				cmd[pos++] = '9';
++			}
++
++
++			// Matrix to be sent to scanner must be following d1-d9 order:
++			//
++			//     G  R  B
++			// G [d1 d4 d7]
++			// R [d2 d5 d8]
++			// B [d3 d6 d9]
++			//
++			// So, we will convert it with index table.
++			char index[9] = {4, 1, 7, 3, 0, 6, 5, 2, 8};
++
++			double flatten[9] = {0};
++			for (int row = 0; row < 3; row++) {
++				for (int col = 0; col < 3; col++) {
++					flatten[row * 3 + col] = matrix[row][col];
++				}
++			}
++
++			int rounded[9] = {0};
++			ESCIRoundColorCorrectionMatrix(32, flatten, rounded);
++
++
++			char ordered[9] = {0};
++			for (int row = 0; row < 3; row++) {
++				for (int col = 0; col < 3; col++) {
++					int val = rounded[row * 3 + col];
++					unsigned char oct = (unsigned char)abs(val);
++					oct |= ((val < 0) ? (1 << 7) : 0);
++					ordered[(signed char)index[row * 3 + col]] = oct;
++				}
++			}
++			{
++				cmd[pos++] = ordered[0];
++				cmd[pos++] = ordered[1];
++				cmd[pos++] = ordered[2];
++				cmd[pos++] = ordered[3];
++				cmd[pos++] = ordered[4];
++				cmd[pos++] = ordered[5];
++				cmd[pos++] = ordered[6];
++				cmd[pos++] = ordered[7];
++				cmd[pos++] = ordered[8];
++				cmd[pos++] = 0; //padding
++ 				cmd[pos++] = 0; //padding
++				cmd[pos++] = 0; //padding
++
++
++				DBG(1, "color matrix\n");
++				for (int i = 0; i < 9; i++)
++				{
++					DBG(1, "%d\n", ordered[i]);
++				}
++
++			}
++			cmd[pos] = 0;
++		}
++
++	}
++
++
++	status = esci2_para(s, cmd, pos);
+ 	if (status != SANE_STATUS_GOOD) {
+ 		goto end;
+ 	}
+@@ -1336,7 +3302,8 @@ sane_start(SANE_Handle handle)
+ 	/* first page is page 1 */
+ 	s->pages = 1;
+ 	s->scanning = 1;
+-
++	s->dummy = 0;
++	s->scanEnd = 0;
+ end:
+ 	if (status != SANE_STATUS_GOOD) {
+ 		DBG(1, "%s: start failed: %s\n", __func__, sane_strstatus(status));
+@@ -1345,140 +3312,305 @@ end:
+ 	return status;
+ }
+ 
+-/* this moves data from our buffers to SANE */
+-
+-SANE_Status
+-sane_read(SANE_Handle handle, SANE_Byte *data, SANE_Int max_length,
+-	  SANE_Int *length)
++static SANE_Status acquire_jpeg_data(epsonds_scanner* s)
+ {
+-	SANE_Int read = 0, tries = 3;
+-	SANE_Int available;
+-	SANE_Status status = 0;
+-	epsonds_scanner *s = (epsonds_scanner *)handle;
+ 
+-	*length = read = 0;
++	SANE_Int read = 0;
+ 
+-	DBG(20, "** %s: backside = %d\n", __func__, s->backside);
+-
+-	/* sane_read called before sane_start? */
+-	if (s->current == NULL) {
+-		DBG(0, "%s: buffer is NULL", __func__);
+-		return SANE_STATUS_INVAL;
++	SANE_Int jpegBufSize = s->params.bytes_per_line * s->params.lines;
++	if (s->needToConvertBW)
++	{
++		jpegBufSize = s->params.pixels_per_line * s->params.lines;
+ 	}
+ 
++
++	s->frontJpegBuf = malloc(jpegBufSize);
++	s->backJpegBuf = malloc(jpegBufSize);
++	s->frontJpegBufLen  = 0;
++	s->backJpegBufLen = 0;
++
++		// load all images, decode and fill buffer
++	SANE_Int status = SANE_STATUS_GOOD;
++
++	int eofFront = 0;
++	int eofBack = 0;
++
++
++	status = eds_ring_init(&s->front, (s->params.bytes_per_line) * s->params.lines);
++	if (status != SANE_STATUS_GOOD) {
++				return status;
++	}
++
++	status = eds_ring_init(&s->back, (s->params.bytes_per_line) * s->params.lines);
++	if (status != SANE_STATUS_GOOD) {
++			return status;
++	}
++
++	while (1)
++	{
++		status = esci2_img(s, &read);
++		DBG(20, "acquire_jpeg_data read: %d, eof: %d, backside: %d, status: %d\n", read, s->eof, s->backside, status);
++		if (read)
++		{
++			if (s->backside)
++			{
++				SANE_Byte* backBuffer = s->backJpegBuf + s->backJpegBufLen;
++				memcpy(backBuffer, s->buf, read);
++				s->backJpegBufLen += read;
++			}else{
++				SANE_Byte* frontBuffer = s->frontJpegBuf +  s->frontJpegBufLen ;
++				memcpy(frontBuffer, s->buf, read);
++				s->frontJpegBufLen  += read;
++			}
++		}
++		if (status == SANE_STATUS_GOOD)
++		{
++
++			DBG(20, "continue acquire image\n");
++			continue;
++		}
++		else if (status == SANE_STATUS_EOF)
++		{
++			if (s->backside)
++			{
++				DBG(20, "eofBack\n");
++				eofBack = 1;
++			}else{
++				DBG(20, "eofFront\n");
++				eofFront = 1;
++			}
++		}else if (status == SANE_STATUS_CANCELLED)
++		{
++				// cancel cleanup
++				esci2_can(s);
++
++				free(s->frontJpegBuf);
++				free(s->backJpegBuf);
++				s->frontJpegBuf = NULL;
++				s->backJpegBuf = NULL;
++				return status;
++		}else{
++				// error occurs cleanup
++				free(s->frontJpegBuf);
++				free(s->backJpegBuf);
++				s->frontJpegBuf = NULL;
++				s->backJpegBuf = NULL;
++				return status;
++		}
++
++
++		if (s->isDuplexScan)
++		{
++			DBG(20, "eofFront  = %d eofBack  = %d\n", eofFront, eofBack);
++				// acquire finish
++			if (eofFront && eofBack)
++			{
++				DBG(20, "eofFront && eofBack end\n");
++				break;
++			}
++		}else{
++			if (eofFront)
++			{
++				DBG(20, "eofFront end\n");
++				break;
++			}
++		 }
++	 }
++
++	return SANE_STATUS_GOOD;
++}
++
++static SANE_Status
++acquire_raw_data(epsonds_scanner* s)
++{
++	SANE_Int read = 0;
++
++		// load all images, decode and fill buffer
++	SANE_Int status = SANE_STATUS_GOOD;
++
++	int eofFront = 0;
++	int eofBack = 0;
++	int firstWrite = 1;
++
++	while (1)
++	{
++		DBG(20, "acquire_raw_data loop start\n");
++		status = esci2_img(s, &read);
++		DBG(20, "acquire_raw_data read: %d, eof: %d, backside: %d, status: %d\n", read, s->eof, s->backside, status);
++
++		if (read)
++		{
++			if (firstWrite)
++			{
++				status = eds_ring_init(&s->front, (s->params.bytes_per_line + s->dummy) * s->params.lines);
++				if (status != SANE_STATUS_GOOD) {
++					return status;
++				}
++
++				status = eds_ring_init(&s->back, (s->params.bytes_per_line + s->dummy) * s->params.lines);
++				if (status != SANE_STATUS_GOOD) {
++					return status;
++				}
++				firstWrite = 0;
++			}
++
++			DBG(20, "eds_ring_write  start\n");
++			status = eds_ring_write(s->backside ? &s->back : &s->front, s->buf, read);
++			DBG(20, "eds_ring_write  end\n");
++		}
++		DBG(20, "acquire_raw_data3\n");
++
++		if (status == SANE_STATUS_GOOD)
++		{
++			DBG(20, "contiune acquire image\n");
++			continue;
++		}
++		else if (status == SANE_STATUS_EOF)
++		{
++			if (s->backside)
++			{
++				eofBack = 1;
++			}else{
++				eofFront = 1;
++			}
++		}
++		else if (status == SANE_STATUS_CANCELLED)
++		{
++			esci2_can(s);
++			return status;
++		}else{
++				// error occurs cleanup
++				return status;
++		}
++
++		if (s->isDuplexScan)
++		{
++			// acquire finish
++			if (eofFront && eofBack)
++			{
++				break;
++			}
++		}else{
++			if (eofFront)
++			{
++				break;
++			}
++		}
++	}
++
++
++	int needBytes =  (s->params.bytes_per_line + s->dummy) * s->params.lines;
++	{
++		int available = eds_ring_avail(&s->front);
++		if (available < needBytes)
++		{
++	 	  int required = needBytes - available;
++          	   unsigned char* padding = (unsigned char*)malloc(required);
++		   memset(padding, 255, required);
++	 	   eds_ring_write(&s->front, padding, required);
++		   free(padding);
++
++		}
++
++	}
++	{
++		int available = eds_ring_avail(&s->back);
++		if (available > 0 && available < needBytes)
++		{
++	 	  int required = needBytes - available;
++          	   unsigned char* padding = (unsigned char*)malloc(required);
++		   memset(padding, 255, required);
++	 	   eds_ring_write(&s->back, padding, required);
++		   free(padding);
++		}
++
++	}
++
++	if (s->isDuplexScan)
++	{
++		upside_down_backside_image(s);
++	}
++
++	DBG(20, "acquire_raw_data  finish");
++	return SANE_STATUS_GOOD;
++
++}
++
++static SANE_Status
++acquire_and_decode_jpeg_data(epsonds_scanner* s)
++{
++		SANE_Int status = acquire_jpeg_data(s);
++		if (status == SANE_STATUS_GOOD)
++		{
++			DBG(20, "** %s:  sane status = %d needToConvertBW = %d \n", __func__, status, s->needToConvertBW);
++
++			// process front page
++			if (s->frontJpegBufLen > 0)
++			{
++				eds_decode_jpeg(s, s->frontJpegBuf, s->frontJpegBufLen,  &s->front,0, s->needToConvertBW);
++				free(s->frontJpegBuf);
++				s->frontJpegBuf = NULL;
++			}
++			// process back page
++			if (s->backJpegBufLen > 0)
++			{
++				eds_decode_jpeg(s, s->backJpegBuf, s->backJpegBufLen,  &s->back, 1,  s->needToConvertBW);
++				free(s->backJpegBuf);
++				s->backJpegBuf = NULL;
++			}
++
++			if (s->isDuplexScan)
++			{
++				upside_down_backside_image(s);
++			}
++		}else{
++			DBG(20, "** %s:  sane finish status = %d\n", __func__, status);
++			return status;
++		}
++		return status;
++}
++
++int sumLength = 0;
++/* this moves data from our buffers to SANE */
++SANE_Status
++sane_read(SANE_Handle handle, SANE_Byte *data, SANE_Int max_length, SANE_Int *length)
++{
++	epsonds_scanner *s = (epsonds_scanner *)handle;
++	SANE_Int read = 0;
++
++	if (s->canceling)
++	{
++		esci2_can(s);
++		*length = 0;
++		return SANE_STATUS_CANCELLED;
++	}
++
++	int available = eds_ring_avail(s->current);
+ 	/* anything in the buffer? pass it to the frontend */
+-	available = eds_ring_avail(s->current);
+-	if (available) {
++	if (available > 0) {
+ 
+ 		DBG(18, "reading from ring buffer, %d left\n", available);
+ 
+-		if (s->mode_jpeg && !s->jpeg_header_seen) {
+-
+-			status = eds_jpeg_read_header(s);
+-			if (status != SANE_STATUS_GOOD && --tries) {
+-				goto read_again;
+-			}
+-		}
+-
+-		if (s->mode_jpeg) {
+-			eds_jpeg_read(handle, data, max_length, &read);
+-		} else {
+-			eds_copy_image_from_ring(s, data, max_length, &read);
+-		}
++		eds_copy_image_from_ring(s, data, max_length, &read);
+ 
++				// data is empty fin
+ 		if (read == 0) {
+-			goto read_again;
++			*length = 0;
++			eds_ring_flush(s->current);
++			eds_ring_destory(s->current);
++			DBG(18, "returns EOF 2\n");
++			return SANE_STATUS_EOF;
+ 		}
+-
+ 		*length = read;
+ 
+ 		return SANE_STATUS_GOOD;
+-
+-
+-	} else if (s->current == &s->back) {
+-
+-		/* finished reading the back page, next
+-		 * command should give us the EOF
+-		 */
+-		DBG(18, "back side ring buffer empty\n");
++	}else{
++		*length = 0;
++		eds_ring_flush(s->current);
++		eds_ring_destory(s->current);
++		DBG(18, "returns EOF 1\n");
++		return SANE_STATUS_EOF;
+ 	}
+-
+-	/* read until data or error */
+-
+-read_again:
+-
+-	status = esci2_img(s, &read);
+-	if (status != SANE_STATUS_GOOD) {
+-		DBG(20, "read: %d, eof: %d, backside: %d, status: %d\n", read, s->eof, s->backside, status);
+-	}
+-
+-	/* just got a back side page, alloc ring buffer if necessary
+-	 * we didn't before because dummy was not known
+-	 */
+-	if (s->backside) {
+-
+-		int required = s->params.lines * (s->params.bytes_per_line + s->dummy);
+-
+-		if (s->back.size < required) {
+-
+-			DBG(20, "allocating buffer for the back side\n");
+-
+-			status = eds_ring_init(&s->back, required);
+-			if (status != SANE_STATUS_GOOD) {
+-				return status;
+-			}
+-		}
+-	}
+-
+-	/* abort scanning when appropriate */
+-	if (status == SANE_STATUS_CANCELLED) {
+-		esci2_can(s);
+-		return status;
+-	}
+-
+-	if (s->eof && s->backside) {
+-		DBG(18, "back side scan finished\n");
+-	}
+-
+-	/* read again if no error and no data */
+-	if (read == 0 && status == SANE_STATUS_GOOD) {
+-		goto read_again;
+-	}
+-
+-	/* got something, write to ring */
+-	if (read) {
+-
+-		DBG(20, " %d bytes read, %d lines, eof: %d, canceling: %d, status: %d, backside: %d\n",
+-			read, read / (s->params.bytes_per_line + s->dummy),
+-			s->canceling, s->eof, status, s->backside);
+-
+-		/* move data to the appropriate ring */
+-		status = eds_ring_write(s->backside ? &s->back : &s->front, s->buf, read);
+-
+-		if (0 && s->mode_jpeg && !s->jpeg_header_seen
+-			&& status == SANE_STATUS_GOOD) {
+-
+-			status = eds_jpeg_read_header(s);
+-			if (status != SANE_STATUS_GOOD && --tries) {
+-				goto read_again;
+-			}
+-		}
+-	}
+-
+-	/* continue reading if appropriate */
+-	if (status == SANE_STATUS_GOOD)
+-		return status;
+-
+-	/* cleanup */
+-	DBG(5, "** %s: cleaning up\n", __func__);
+-
+-	if (s->mode_jpeg) {
+-		eds_jpeg_finish(s);
+-	}
+-
+-	eds_ring_flush(s->current);
+-
+-	return status;
+ }
+ 
+ /*
+diff --git a/backend/epsonds.conf.in b/backend/epsonds.conf.in
+index 1967a00fd..e2880fa21 100644
+--- a/backend/epsonds.conf.in
++++ b/backend/epsonds.conf.in
+@@ -10,7 +10,8 @@ usb
+ # e.g.:
+ # usb 0x4b8 0x14c
+ 
+-# Network (not yet supported!)
++#
++# Network
+ #
+ # net 192.168.1.123
+-#net autodiscovery
++net autodiscovery
+diff --git a/backend/epsonds.h b/backend/epsonds.h
+index 04cb7244d..7f1b6509b 100644
+--- a/backend/epsonds.h
++++ b/backend/epsonds.h
+@@ -66,9 +66,14 @@
+ #define TPU_STR SANE_I18N("Transparency Unit")
+ #define ADF_STR SANE_I18N("Automatic Document Feeder")
+ 
++#define STRING_FLATBED SANE_I18N("Flatbed")
++#define STRING_ADFFRONT SANE_I18N("ADF Front")
++#define STRING_ADFDUPLEX SANE_I18N("ADF Duplex")
++
+ enum {
+ 	OPT_NUM_OPTS = 0,
+-	OPT_MODE_GROUP,
++	OPT_STANDARD_GROUP,
++	OPT_SOURCE,
+ 	OPT_MODE,
+ 	OPT_DEPTH,
+ 	OPT_RESOLUTION,
+@@ -78,11 +83,10 @@ enum {
+ 	OPT_BR_X,
+ 	OPT_BR_Y,
+ 	OPT_EQU_GROUP,
+-	OPT_SOURCE,
+ 	OPT_EJECT,
+ 	OPT_LOAD,
+-	OPT_ADF_MODE,
+ 	OPT_ADF_SKEW,
++	OPT_ADF_CRP,
+ 	NUM_OPTIONS
+ };
+ 
+@@ -119,6 +123,8 @@ struct epsonds_device
+ 
+ 	SANE_Bool has_raw;		/* supports RAW format */
+ 
++	SANE_Bool has_mono;  /*supprt M001*/
++
+ 	SANE_Bool has_fb;		/* flatbed */
+ 	SANE_Range fbf_x_range;	        /* x range */
+ 	SANE_Range fbf_y_range;	        /* y range */
+@@ -136,9 +142,13 @@ struct epsonds_device
+ 	SANE_Byte adf_alignment;	/* left, center, right */
+ 	SANE_Byte adf_has_dfd;		/* supports double feed detection */
+ 
++	SANE_Byte adf_has_crp;		/* supports crp */
++
+ 	SANE_Bool has_tpu;		/* tpu */
+ 	SANE_Range tpu_x_range;	        /* transparency unit x range */
+ 	SANE_Range tpu_y_range;	        /* transparency unit y range */
++
++	SANE_Int lut_id;
+ };
+ 
+ typedef struct epsonds_device epsonds_device;
+@@ -171,6 +181,10 @@ struct epsonds_scanner
+ 
+ 	SANE_Int left, top, pages, dummy;
+ 
++	SANE_Int width_front, height_front;
++	SANE_Int width_back , height_back;
++	SANE_Int width_temp, height_temp;
++
+ 	/* jpeg stuff */
+ 
+ 	djpeg_dest_ptr jdst;
+@@ -181,7 +195,18 @@ struct epsonds_scanner
+ 	/* network buffers */
+ 	unsigned char *netbuf, *netptr;
+ 	size_t netlen;
+-};
++
++	SANE_Byte *frontJpegBuf, *backJpegBuf;
++	SANE_Int   frontJpegBufLen, backJpegBufLen;
++	SANE_Int   acquirePage;
++
++	SANE_Int   isflatbedScan;
++	SANE_Int   isDuplexScan;
++
++	SANE_Int   needToConvertBW;
++
++	SANE_Int   scanEnd;
++ };
+ 
+ typedef struct epsonds_scanner epsonds_scanner;
+ 
+diff --git a/doc/descriptions/epsonds.desc b/doc/descriptions/epsonds.desc
+index 37d0e7635..2e79a118f 100644
+--- a/doc/descriptions/epsonds.desc
++++ b/doc/descriptions/epsonds.desc
+@@ -93,3 +93,253 @@
+ :interface  "USB"
+ :usbid      "0x04b8" "0x08cc"
+ :status     :untested
++
++:model      "DS-410"
++:interface  "USB"
++:usbid      "0x04b8" "0x0165"
++:status     :complete
++
++:model      "ES-50"
++:interface  "USB"
++:usbid      "0x04b8" "0x016c"
++:status     :complete
++
++:model      "DS-70"
++:interface  "USB"
++:usbid      "0x04b8" "0x0160"
++:status     :complete
++
++:model      "ES-55R"
++:interface  "USB"
++:usbid      "0x04b8" "0x016d"
++:status     :complete
++
++:model      "RR-60"
++:interface  "USB"
++:usbid      "0x04b8" "0x018c"
++:status     :complete
++
++:model      "ES-60W"
++:interface  "USB"
++:usbid      "0x04b8" "0x016e"
++:status     :complete
++
++:model      "DS-80W"
++:interface  "USB"
++:usbid      "0x04b8" "0x0166"
++:status     :complete
++
++:model      "ES-65WR"
++:interface  "USB"
++:usbid      "0x04b8" "0x016f"
++:status     :complete
++
++:model      "RR-70W"
++:interface  "USB"
++:usbid      "0x04b8" "0x018b"
++:status     :complete
++
++:model      "ES-60WW"
++:interface  "USB"
++:usbid      "0x04b8" "0x016e"
++:status     :complete
++
++:model      "ES-60WB"
++:interface  "USB"
++:usbid      "0x04b8" "0x016e"
++:status     :complete
++
++:model      "DS-1630"
++:interface  "USB"
++:usbid      "0x04b8" "0x015c"
++:status     :complete
++
++:model      "DS-1610"
++:interface  "USB"
++:usbid      "0x04b8" "0x015d"
++:status     :complete
++
++:model      "DS-1660W"
++:interface  "USB"
++:usbid      "0x04b8" "0x015e"
++:status     :complete
++
++:model      "DS-310"
++:interface  "USB"
++:usbid      "0x04b8" "0x0159"
++:status     :complete
++
++:model      "ES-200"
++:interface  "USB"
++:usbid      "0x04b8" "0x0159"
++:status     :complete
++
++:model      "DS-320"
++:interface  "USB"
++:usbid      "0x04b8" "0x0162"
++:status     :complete
++
++:model      "DS-360W"
++:interface  "USB"
++:usbid      "0x04b8" "0x015a"
++:status     :complete
++
++:model      "ES-300W"
++:interface  "USB"
++:usbid      "0x04b8" "0x015a"
++:status     :complete
++
++:model      "ES-300WR"
++:interface  "USB"
++:usbid      "0x04b8" "0x0177"
++:status     :complete
++
++:model      "ES-400II"
++:interface  "USB"
++:usbid      "0x04b8" "0x0181"
++:status     :complete
++
++:model      "DS-535II"
++:interface  "USB"
++:usbid      "0x04b8" "0x0183"
++:status     :complete
++
++:model      "DS-531"
++:interface  "USB"
++:usbid      "0x04b8" "0x0184"
++:status     :complete
++
++:model      "DS-530II"
++:interface  "USB"
++:usbid      "0x04b8" "0x0182"
++:status     :complete
++
++:model      "ES-500WII"
++:interface  "USB"
++:usbid      "0x04b8" "0x0185"
++:status     :complete
++
++:model      "DS-571W"
++:interface  "USB"
++:usbid      "0x04b8" "0x0188"
++:status     :complete
++
++:model      "DS-575WII"
++:interface  "USB"
++:usbid      "0x04b8" "0x0187"
++:status     :complete
++
++:model      "DS-570WII"
++:interface  "USB"
++:usbid      "0x04b8" "0x0186"
++:status     :complete
++
++:model      "ES-580W"
++:interface  "USB"
++:usbid      "0x04b8" "0x017f"
++:status     :complete
++
++:model      "RR-600W"
++:interface  "USB"
++:usbid      "0x04b8" "0x0180"
++:status     :complete
++
++:model      "DS-535"
++:interface  "USB"
++:usbid      "0x04b8" "0x0167"
++:status     :complete
++
++:model      "DS-535H"
++:interface  "USB"
++:usbid      "0x04b8" "0x017a"
++:status     :complete
++
++:model      "ES-400"
++:interface  "USB"
++:usbid      "0x04b8" "0x0156"
++:status     :complete
++
++:model      "DS-530"
++:interface  "USB"
++:usbid      "0x04b8" "0x0155"
++:status     :complete
++
++:model      "FF-680W"
++:interface  "USB"
++:usbid      "0x04b8" "0x016b"
++:status     :complete
++
++:model      "DS-570W"
++:interface  "USB"
++:usbid      "0x04b8" "0x0157"
++:status     :complete
++
++:model      "ES-500W"
++:interface  "USB"
++:usbid      "0x04b8" "0x0157"
++:status     :complete
++
++:model      "DS-575W"
++:interface  "USB"
++:usbid      "0x04b8" "0x0169"
++:status     :complete
++
++:model      "ES-500WR"
++:interface  "USB"
++:usbid      "0x04b8" "0x0176"
++:status     :complete
++
++:model      "EW-052A Series"
++:interface  "USB"
++:usbid      "0x04b8" "0x114e"
++:status     :complete
++
++:model      "XP-2100 Series"
++:interface  "USB"
++:usbid      "0x04b8" "0x114e"
++:status     :complete
++
++:model      "ET-2700 Series"
++:interface  "USB"
++:usbid      "0x04b8" "0x1135"
++:status     :complete
++
++:model      "L4150 Series"
++:interface  "USB"
++:usbid      "0x04b8" "0x1135"
++:status     :complete
++
++:model      "ET-M2140 Series"
++:interface  "USB"
++:usbid      "0x04b8" "0x114a"
++:status     :complete
++
++:model      "M2140 Series"
++:interface  "USB"
++:usbid      "0x04b8" "0x114a"
++:status     :complete
++
++:model      "ET-M3140 Series"
++:interface  "USB"
++:usbid      "0x04b8" "0x114f"
++:status     :complete
++
++:model      "M3140 Series"
++:interface  "USB"
++:usbid      "0x04b8" "0x114f"
++:status     :complete
++
++:model      "L3150 Series"
++:interface  "USB"
++:usbid      "0x04b8" "0x1143"
++:status     :complete
++
++:model      "ET-2710 Series"
++:interface  "USB"
++:usbid      "0x04b8" "0x1143"
++:status     :complete
++
++:model      ""
++:interface  "USB"
++:usbid      "0x04b8" "0x00"
++:status     :complete
diff --git a/media-gfx/sane-backends/sane-backends-1.0.32-r2.ebuild b/media-gfx/sane-backends/sane-backends-1.0.32-r4.ebuild
similarity index 100%
rename from media-gfx/sane-backends/sane-backends-1.0.32-r2.ebuild
rename to media-gfx/sane-backends/sane-backends-1.0.32-r4.ebuild
diff --git a/media-gfx/sane-backends/sane-backends-1.0.32.ebuild b/media-gfx/sane-backends/sane-backends-1.0.32.ebuild
index ee7d0e1..f4702c9 100644
--- a/media-gfx/sane-backends/sane-backends-1.0.32.ebuild
+++ b/media-gfx/sane-backends/sane-backends-1.0.32.ebuild
@@ -33,6 +33,7 @@
 	epjitsu
 	epson
 	epson2
+	epsonds
 	escl
 	fujitsu
 	genesys
@@ -185,6 +186,7 @@
 
 	# Patches submitted upstream but not yet included.
 	eapply "${FILESDIR}"/${PN}-1.0.31-epson2.patch
+	eapply "${FILESDIR}"/${PN}-1.0.32-epsonds.patch
 
 	# Upstream sometimes forgets to remove the "git describe" check
 	# in the version, which then fails because .git isn't included in the
diff --git a/media-libs/arc-camera-profile/arc-camera-profile-0.0.1-r697.ebuild b/media-libs/arc-camera-profile/arc-camera-profile-0.0.1-r697.ebuild
deleted file mode 100644
index 1065e30..0000000
--- a/media-libs/arc-camera-profile/arc-camera-profile-0.0.1-r697.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "c37af7d99913a584dbfb1b64fdb83acb19e91c20" "309b7116bd1f5aeb3ece4e1d90ce13f61b7e1b4b" "049eedf136293a1ab81617017200cb31032eb384" "d1fd07ac03f1ac6e670181ebd45b30e31efe5a87" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/hal/usb camera/include camera/tools common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/tools/generate_camera_profile"
-
-inherit cros-camera cros-workon platform
-
-DESCRIPTION="Runtime detect the number of cameras on device to generate
-corresponding media_profiles.xml."
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND=""
-
-DEPEND="${RDEPEND}
-	virtual/pkgconfig"
-
-src_install() {
-	dobin "${OUT}/generate_camera_profile"
-}
diff --git a/media-libs/arc-camera-profile/arc-camera-profile-0.0.1-r778.ebuild b/media-libs/arc-camera-profile/arc-camera-profile-0.0.1-r778.ebuild
new file mode 100644
index 0000000..ea809d3
--- /dev/null
+++ b/media-libs/arc-camera-profile/arc-camera-profile-0.0.1-r778.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CROS_WORKON_COMMIT="745cdedb276031fbceedfb76854b10a234cab662"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "b859b43cd8fde226526c57956659101cf8b11b74" "21f96983b4c04d23267767a4f371212fe68039d9" "3ab43d75b077ff01eff298ac286116bbcbb27bd8" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/hal/usb camera/include camera/tools common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/tools/generate_camera_profile"
+
+inherit cros-camera cros-workon platform
+
+DESCRIPTION="Runtime detect the number of cameras on device to generate
+corresponding media_profiles.xml."
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND=""
+
+DEPEND="${RDEPEND}
+	virtual/pkgconfig"
+
+src_install() {
+	dobin "${OUT}/generate_camera_profile"
+}
diff --git a/media-libs/arc-cros-gralloc/arc-cros-gralloc-0.0.1-r432.ebuild b/media-libs/arc-cros-gralloc/arc-cros-gralloc-0.0.1-r432.ebuild
deleted file mode 100644
index ea7b246..0000000
--- a/media-libs/arc-cros-gralloc/arc-cros-gralloc-0.0.1-r432.ebuild
+++ /dev/null
@@ -1,107 +0,0 @@
-# Copyright 2016 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-CROS_WORKON_COMMIT="bb9d4af4529b3019d830b8ef7e39479436b642af"
-CROS_WORKON_TREE="6db1492d66cd8acef88bacfe95f001e289adc55c"
-CROS_WORKON_PROJECT="chromiumos/platform/minigbm"
-CROS_WORKON_LOCALNAME="../platform/minigbm"
-
-inherit multilib-minimal arc-build cros-workon
-
-DESCRIPTION="ChromeOS gralloc implementation"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/minigbm"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-VIDEO_CARDS="amdgpu exynos intel marvell mediatek msm rockchip tegra virgl"
-# shellcheck disable=SC2086
-IUSE="kernel-3_18 $(printf 'video_cards_%s ' ${VIDEO_CARDS})"
-MINI_GBM_PLATFORMS_USE=( mt8183 mt8192 mt8195 )
-IUSE+=" ${MINI_GBM_PLATFORMS_USE[*]/#/minigbm_platform_}"
-
-RDEPEND="
-	!<media-libs/minigbm-0.0.1-r438
-	x11-libs/arc-libdrm[${MULTILIB_USEDEP}]
-"
-DEPEND="
-	${RDEPEND}
-	video_cards_amdgpu? ( virtual/arc-opengles )
-"
-
-src_configure() {
-	# Use arc-build base class to select the right compiler
-	arc-build-select-clang
-
-	# This packages uses -flto with gold, which doesn't support -Os
-	# or -Oz. This produces a 76KB .so, so optimizing for size is
-	# probably not a big deal.
-	cros_optimize_package_for_speed
-
-	BUILD_DIR="$(cros-workon_get_build_dir)"
-
-	append-lfs-flags
-
-	# TODO(gsingh): use pkgconfig
-	if use video_cards_intel; then
-		export DRV_I915=1
-		append-cppflags -DDRV_I915
-		if ! use kernel-3_18; then
-			append-cppflags -DI915_SCANOUT_Y_TILED
-		fi
-	fi
-
-	if use video_cards_rockchip; then
-		export DRV_ROCKCHIP=1
-		append-cppflags -DDRV_ROCKCHIP
-	fi
-
-	if use video_cards_mediatek; then
-		use minigbm_platform_mt8183 && append-cppflags -DMTK_MT8183
-		use minigbm_platform_mt8192 && append-cppflags -DMTK_MT8192
-		use minigbm_platform_mt8195 && append-cppflags -DMTK_MT8195
-		export DRV_MEDIATEK=1
-		append-cppflags -DDRV_MEDIATEK
-	fi
-
-	if use video_cards_msm; then
-		export DRV_MSM=1
-		append-cppflags -DDRV_MSM
-	fi
-
-	if use video_cards_amdgpu; then
-		export DRV_AMDGPU=1
-		append-cppflags -DDRV_AMDGPU -DHAVE_LIBDRM
-	fi
-
-	if use video_cards_virgl; then
-		export DRV_VIRGL=1
-		append-cppflags -DDRV_VIRGL -DVIRTIO_GPU_NEXT
-	fi
-
-	multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
-	filter-flags "-DDRI_DRIVER_DIR=*"
-	append-cppflags -DDRI_DRIVER_DIR="/vendor/$(get_libdir)/dri"
-	export TARGET_DIR="${BUILD_DIR}/"
-	emake -C "${S}/cros_gralloc"
-	emake -C "${S}/cros_gralloc/gralloc0/tests/"
-}
-
-multilib_src_install() {
-	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/hw/"
-	doexe "${BUILD_DIR}"/gralloc.cros.so
-	into "/usr/local/"
-	# shellcheck disable=SC2154
-	newbin "${BUILD_DIR}"/gralloctest "gralloctest_${ABI}"
-}
-
-multilib_src_install_all() {
-	# Install cros_gralloc header files for arc-mali-* packages
-	insinto "/usr/include/cros_gralloc"
-	doins "${S}/cros_gralloc/cros_gralloc_handle.h"
-}
diff --git a/media-libs/arc-cros-gralloc/arc-cros-gralloc-0.0.1-r482.ebuild b/media-libs/arc-cros-gralloc/arc-cros-gralloc-0.0.1-r482.ebuild
new file mode 100644
index 0000000..36c5ae3
--- /dev/null
+++ b/media-libs/arc-cros-gralloc/arc-cros-gralloc-0.0.1-r482.ebuild
@@ -0,0 +1,111 @@
+# Copyright 2016 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+CROS_WORKON_COMMIT="2418bc45d7638ff738aba2bc4b7e1cdc6d04b7a8"
+CROS_WORKON_TREE="81cd37f0714198bfcfc7939e20046acb470d31c4"
+CROS_WORKON_PROJECT="chromiumos/platform/minigbm"
+CROS_WORKON_LOCALNAME="../platform/minigbm"
+
+inherit multilib-minimal arc-build cros-workon
+
+DESCRIPTION="ChromeOS gralloc implementation"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/minigbm"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+VIDEO_CARDS="amdgpu exynos intel marvell mediatek msm rockchip tegra virgl"
+# shellcheck disable=SC2086
+IUSE="kernel-3_18 $(printf 'video_cards_%s ' ${VIDEO_CARDS})"
+MINI_GBM_PLATFORMS_USE=( mt8183 mt8192 mt8195 sc7280 )
+IUSE+=" ${MINI_GBM_PLATFORMS_USE[*]/#/minigbm_platform_}"
+
+RDEPEND="
+	!<media-libs/minigbm-0.0.1-r438
+	x11-libs/arc-libdrm[${MULTILIB_USEDEP}]
+"
+DEPEND="
+	${RDEPEND}
+	video_cards_amdgpu? ( virtual/arc-opengles )
+"
+
+src_configure() {
+	# Use arc-build base class to select the right compiler
+	arc-build-select-clang
+
+	# This packages uses -flto with gold, which doesn't support -Os
+	# or -Oz. This produces a 76KB .so, so optimizing for size is
+	# probably not a big deal.
+	cros_optimize_package_for_speed
+
+	BUILD_DIR="$(cros-workon_get_build_dir)"
+
+	append-lfs-flags
+
+	if [[ -n "${ARC_PLATFORM_SDK_VERSION}" ]]; then
+		append-cppflags -DANDROID_API_LEVEL="${ARC_PLATFORM_SDK_VERSION}"
+	fi
+
+	# TODO(gsingh): use pkgconfig
+	if use video_cards_intel; then
+		export DRV_I915=1
+		append-cppflags -DDRV_I915
+		if ! use kernel-3_18; then
+			append-cppflags -DI915_SCANOUT_Y_TILED
+		fi
+	fi
+
+	if use video_cards_rockchip; then
+		export DRV_ROCKCHIP=1
+		append-cppflags -DDRV_ROCKCHIP
+	fi
+
+	if use video_cards_mediatek; then
+		use minigbm_platform_mt8183 && append-cppflags -DMTK_MT8183
+		use minigbm_platform_mt8192 && append-cppflags -DMTK_MT8192
+		use minigbm_platform_mt8195 && append-cppflags -DMTK_MT8195
+		export DRV_MEDIATEK=1
+		append-cppflags -DDRV_MEDIATEK
+	fi
+
+	if use video_cards_msm; then
+		use minigbm_platform_sc7280 && append-cppflags -DSC_7280
+		export DRV_MSM=1
+		append-cppflags -DDRV_MSM
+	fi
+
+	if use video_cards_amdgpu; then
+		export DRV_AMDGPU=1
+		append-cppflags -DDRV_AMDGPU -DHAVE_LIBDRM
+	fi
+
+	if use video_cards_virgl; then
+		append-cppflags -DVIRTIO_GPU_NEXT
+	fi
+
+	multilib-minimal_src_configure
+}
+
+multilib_src_compile() {
+	filter-flags "-DDRI_DRIVER_DIR=*"
+	append-cppflags -DDRI_DRIVER_DIR="/vendor/$(get_libdir)/dri"
+	export TARGET_DIR="${BUILD_DIR}/"
+	emake -C "${S}/cros_gralloc"
+	emake -C "${S}/cros_gralloc/gralloc0/tests/"
+}
+
+multilib_src_install() {
+	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/hw/"
+	doexe "${BUILD_DIR}"/gralloc.cros.so
+	into "/usr/local/"
+	# shellcheck disable=SC2154
+	newbin "${BUILD_DIR}"/gralloctest "gralloctest_${ABI}"
+}
+
+multilib_src_install_all() {
+	# Install cros_gralloc header files for arc-mali-* packages
+	insinto "/usr/include/cros_gralloc"
+	doins "${S}/cros_gralloc/cros_gralloc_handle.h"
+}
diff --git a/media-libs/arc-cros-gralloc/arc-cros-gralloc-9999.ebuild b/media-libs/arc-cros-gralloc/arc-cros-gralloc-9999.ebuild
index 944208b..5dc8654 100644
--- a/media-libs/arc-cros-gralloc/arc-cros-gralloc-9999.ebuild
+++ b/media-libs/arc-cros-gralloc/arc-cros-gralloc-9999.ebuild
@@ -17,7 +17,7 @@
 VIDEO_CARDS="amdgpu exynos intel marvell mediatek msm rockchip tegra virgl"
 # shellcheck disable=SC2086
 IUSE="kernel-3_18 $(printf 'video_cards_%s ' ${VIDEO_CARDS})"
-MINI_GBM_PLATFORMS_USE=( mt8183 mt8192 mt8195 )
+MINI_GBM_PLATFORMS_USE=( mt8183 mt8192 mt8195 sc7280 )
 IUSE+=" ${MINI_GBM_PLATFORMS_USE[*]/#/minigbm_platform_}"
 
 RDEPEND="
@@ -42,6 +42,10 @@
 
 	append-lfs-flags
 
+	if [[ -n "${ARC_PLATFORM_SDK_VERSION}" ]]; then
+		append-cppflags -DANDROID_API_LEVEL="${ARC_PLATFORM_SDK_VERSION}"
+	fi
+
 	# TODO(gsingh): use pkgconfig
 	if use video_cards_intel; then
 		export DRV_I915=1
@@ -65,6 +69,7 @@
 	fi
 
 	if use video_cards_msm; then
+		use minigbm_platform_sc7280 && append-cppflags -DSC_7280
 		export DRV_MSM=1
 		append-cppflags -DDRV_MSM
 	fi
@@ -75,8 +80,7 @@
 	fi
 
 	if use video_cards_virgl; then
-		export DRV_VIRGL=1
-		append-cppflags -DDRV_VIRGL -DVIRTIO_GPU_NEXT
+		append-cppflags -DVIRTIO_GPU_NEXT
 	fi
 
 	multilib-minimal_src_configure
diff --git a/media-libs/arc-mesa-amd/arc-mesa-amd-21.1.0-r49.ebuild b/media-libs/arc-mesa-amd/arc-mesa-amd-21.1.0-r49.ebuild
deleted file mode 100644
index 24d9e4d..0000000
--- a/media-libs/arc-mesa-amd/arc-mesa-amd-21.1.0-r49.ebuild
+++ /dev/null
@@ -1,218 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
-
-EAPI="6"
-
-CROS_WORKON_COMMIT="ae283c6c143ae77e7dedbf3f9ea7f2f3ad945f87"
-CROS_WORKON_TREE="cbc74a968f7dbca5312df2f7cb8af5ecadf471c5"
-CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
-CROS_WORKON_LOCALNAME="mesa-amd"
-CROS_WORKON_EGIT_BRANCH="chromeos-amd"
-
-inherit base meson multilib-minimal flag-o-matic toolchain-funcs cros-workon arc-build
-
-DESCRIPTION="The Mesa 3D Graphics Library"
-HOMEPAGE="http://mesa3d.org/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="*"
-
-VIDEO_CARDS="intel amdgpu radeon freedreno llvmpipe"
-for card in ${VIDEO_CARDS}; do
-	IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
-	android-container-pi -android_vulkan_compute_0 cheets debug
-	vulkan cheets_user cheets_user_64"
-
-# Only allow one vulkan driver as they all write vulkan.cheets.so.
-REQUIRED_USE="
-	android_vulkan_compute_0? ( vulkan )
-	vulkan? ( || ( video_cards_amdgpu video_cards_intel ) )
-"
-
-DEPEND="
-		>=x11-libs/arc-libdrm-2.4.82[${MULTILIB_USEDEP}]
-		sys-devel/arc-llvm:=[${MULTILIB_USEDEP}]
-		dev-libs/arc-libelf[${MULTILIB_USEDEP}]
-"
-
-RDEPEND="${DEPEND} !media-libs/arc-mesa"
-
-driver_list() {
-	local drivers="$(sort -u <<< "${1// /$'\n'}")"
-	echo "${drivers//$'\n'/,}"
-}
-
-src_configure() {
-	cros_optimize_package_for_speed
-	arc-build-select-clang
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	tc-getPROG PKG_CONFIG pkg-config
-
-	# Intel code
-	dri_driver_enable video_cards_intel i965
-
-	gallium_enable video_cards_llvmpipe swrast
-
-	# ATI code
-	gallium_enable video_cards_radeon r300 r600
-	gallium_enable video_cards_amdgpu radeonsi
-
-	# Freedreno code
-	gallium_enable video_cards_freedreno freedreno
-
-	if use vulkan; then
-		vulkan_enable video_cards_amdgpu amd
-		vulkan_enable video_cards_intel intel
-	fi
-
-	# Use llvm-config coming from ARC++ build.
-	export LLVM_CONFIG="${ARC_SYSROOT:?}/build/bin/llvm-config-host"
-
-	# The AOSP build system defines the Make variable
-	# PLATFORM_SDK_VERSION, and Mesa's Android.mk files use it to
-	# define the macro ANDROID_API_LEVEL. Arc emulates that here.
-	CPPFLAGS+=" -DANDROID_API_LEVEL=${ARC_PLATFORM_SDK_VERSION:?}"
-
-	arc-build-create-cross-file
-
-	emesonargs+=(
-		--prefix="${ARC_PREFIX}/vendor"
-		--sysconfdir="/system/vendor/etc"
-		-Ddri-search-path="/system/$(get_libdir)/dri:/system/vendor/$(get_libdir)/dri"
-		-Dgallium-va=false
-		-Dgallium-vdpau=false
-		-Dgallium-xvmc=false
-		-Dgallium-omx=disabled
-		-Dgallum-xa=false
-		-Dasm=false
-		-Dglx=disabled
-		-Ddri3=false
-		-Dgles-lib-suffix=_mesa
-		-Degl-lib-suffix=_mesa
-		-Dllvm=true
-		-Dplatforms=android
-		-Degl=true
-		-Dgbm=false
-		-Dgles1=true
-		-Dgles2=true
-		-Dshared-glapi=true
-		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
-		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
-		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
-		--buildtype $(usex debug debug release)
-		--cross-file="${ARC_CROSS_FILE}"
-		-Dplatform-sdk-version="${ARC_PLATFORM_SDK_VERSION:?}"
-	)
-
-	meson_src_configure
-}
-
-# The meson eclass exports src_compile but not multilib_src_compile. src_compile
-# gets overridden by multilib-minimal
-multilib_src_compile() {
-	meson_src_compile
-}
-
-multilib_src_install() {
-	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)"
-	newexe "${BUILD_DIR}/src/mapi/shared-glapi/libglapi.so.0" libglapi.so.0
-
-	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/egl"
-	newexe "${BUILD_DIR}/src/egl/libEGL_mesa.so" libEGL_mesa.so
-	newexe "${BUILD_DIR}/src/mapi/es1api/libGLESv1_CM_mesa.so" libGLESv1_CM_mesa.so
-	newexe "${BUILD_DIR}/src/mapi/es2api/libGLESv2_mesa.so" libGLESv2_mesa.so
-
-	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/dri"
-	if use video_cards_intel; then
-		newexe "${BUILD_DIR}/src/mesa/drivers/dri/libmesa_dri_drivers.so" i965_dri.so
-	fi
-	if use video_cards_llvmpipe; then
-		newexe "${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so" kms_swrast_dri.so
-	fi
-	if use video_cards_amdgpu; then
-		newexe "${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so" radeonsi_dri.so
-	fi
-
-	if use vulkan; then
-		exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/hw"
-		if use video_cards_amdgpu; then
-			newexe "${BUILD_DIR}/src/amd/vulkan/libvulkan_radeon.so" vulkan.cheets.so
-		fi
-		if use video_cards_intel; then
-			newexe "${BUILD_DIR}/src/intel/vulkan/libvulkan_intel.so" vulkan.cheets.so
-		fi
-	fi
-}
-
-multilib_src_install_all() {
-	# For documentation on the feature set represented by each XML file
-	# installed into /vendor/etc/permissions, see
-	# <https://developer.android.com/reference/android/content/pm/PackageManager.html>.
-	# For example XML files for each feature, see
-	# <https://android.googlesource.com/platform/frameworks/native/+/master/data/etc>.
-
-	# Install init files to advertise supported API versions.
-	insinto "${ARC_PREFIX}/vendor/etc/init"
-	doins "${FILESDIR}/init.gpu.rc"
-
-	# Install vulkan related files.
-	if use vulkan; then
-		einfo "Using android vulkan."
-		insinto "${ARC_PREFIX}/vendor/etc/init"
-		doins "${FILESDIR}/vulkan.rc"
-
-		insinto "${ARC_PREFIX}/vendor/etc/permissions"
-		doins "${FILESDIR}/android.hardware.vulkan.version-1_0_3.xml"
-		if use video_cards_intel; then
-			doins "${FILESDIR}/android.hardware.vulkan.level-1.xml"
-		else
-			doins "${FILESDIR}/android.hardware.vulkan.level-0.xml"
-		fi
-	fi
-
-	if use android_vulkan_compute_0; then
-		einfo "Using android vulkan_compute_0."
-		insinto "${ARC_PREFIX}/vendor/etc/permissions"
-		doins "${FILESDIR}/android.hardware.vulkan.compute-0.xml"
-	fi
-
-	# Install permission file to declare opengles aep support.
-	einfo "Using android aep."
-	insinto "${ARC_PREFIX}/vendor/etc/permissions"
-	doins "${FILESDIR}/android.hardware.opengles.aep.xml"
-
-	# Install the dri header for arc-cros-gralloc
-	insinto "${ARC_PREFIX}/vendor/include/"
-	doins -r "${S}/include/GL/"
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-dri_driver_enable() {
-	if [[ $1 == -- ]] || use "$1"; then
-		shift
-		DRI_DRIVERS+=("$@")
-	fi
-}
-
-gallium_enable() {
-	if [[ $1 == -- ]] || use "$1"; then
-		shift
-		GALLIUM_DRIVERS+=("$@")
-	fi
-}
-
-vulkan_enable() {
-	if [[ $1 == -- ]] || use "$1"; then
-		shift
-		VULKAN_DRIVERS+=("$@")
-	fi
-}
diff --git a/media-libs/arc-mesa-amd/arc-mesa-amd-21.2.1-r65.ebuild b/media-libs/arc-mesa-amd/arc-mesa-amd-21.2.1-r65.ebuild
new file mode 100644
index 0000000..7107bf8
--- /dev/null
+++ b/media-libs/arc-mesa-amd/arc-mesa-amd-21.2.1-r65.ebuild
@@ -0,0 +1,218 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
+
+EAPI="6"
+
+CROS_WORKON_COMMIT="a59d1c4cce4c7c084f0e1f4870a4f457aafa2ee5"
+CROS_WORKON_TREE="55afc873edb87a9fbc88fea984156a8c1d3de9ca"
+CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
+CROS_WORKON_LOCALNAME="mesa-amd"
+CROS_WORKON_EGIT_BRANCH="chromeos-amd"
+
+inherit base meson multilib-minimal flag-o-matic toolchain-funcs cros-workon arc-build
+
+DESCRIPTION="The Mesa 3D Graphics Library"
+HOMEPAGE="http://mesa3d.org/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="*"
+
+VIDEO_CARDS="intel amdgpu radeon freedreno llvmpipe"
+for card in ${VIDEO_CARDS}; do
+	IUSE_VIDEO_CARDS+=" video_cards_${card}"
+done
+
+IUSE="${IUSE_VIDEO_CARDS}
+	android-container-pi -android_vulkan_compute_0 cheets debug
+	vulkan cheets_user cheets_user_64"
+
+# Only allow one vulkan driver as they all write vulkan.cheets.so.
+REQUIRED_USE="
+	android_vulkan_compute_0? ( vulkan )
+	vulkan? ( || ( video_cards_amdgpu video_cards_intel ) )
+"
+
+DEPEND="
+		>=x11-libs/arc-libdrm-2.4.82[${MULTILIB_USEDEP}]
+		sys-devel/arc-llvm:=[${MULTILIB_USEDEP}]
+		dev-libs/arc-libelf[${MULTILIB_USEDEP}]
+"
+
+RDEPEND="${DEPEND} !media-libs/arc-mesa"
+
+driver_list() {
+	local drivers="$(sort -u <<< "${1// /$'\n'}")"
+	echo "${drivers//$'\n'/,}"
+}
+
+src_configure() {
+	cros_optimize_package_for_speed
+	arc-build-select-clang
+	multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+	tc-getPROG PKG_CONFIG pkg-config
+
+	# Intel code
+	dri_driver_enable video_cards_intel i965
+
+	gallium_enable video_cards_llvmpipe swrast
+
+	# ATI code
+	gallium_enable video_cards_radeon r300 r600
+	gallium_enable video_cards_amdgpu radeonsi
+
+	# Freedreno code
+	gallium_enable video_cards_freedreno freedreno
+
+	if use vulkan; then
+		vulkan_enable video_cards_amdgpu amd
+		vulkan_enable video_cards_intel intel
+	fi
+
+	# Use llvm-config coming from ARC++ build.
+	export LLVM_CONFIG="${ARC_SYSROOT:?}/build/bin/llvm-config-host"
+
+	# The AOSP build system defines the Make variable
+	# PLATFORM_SDK_VERSION, and Mesa's Android.mk files use it to
+	# define the macro ANDROID_API_LEVEL. Arc emulates that here.
+	CPPFLAGS+=" -DANDROID_API_LEVEL=${ARC_PLATFORM_SDK_VERSION:?}"
+
+	arc-build-create-cross-file
+
+	emesonargs+=(
+		--prefix="${ARC_PREFIX}/vendor"
+		--sysconfdir="/system/vendor/etc"
+		-Ddri-search-path="/system/$(get_libdir)/dri:/system/vendor/$(get_libdir)/dri"
+		-Dgallium-va=false
+		-Dgallium-vdpau=false
+		-Dgallium-xvmc=false
+		-Dgallium-omx=disabled
+		-Dgallum-xa=false
+		-Dasm=false
+		-Dglx=disabled
+		-Ddri3=false
+		-Dgles-lib-suffix=_mesa
+		-Degl-lib-suffix=_mesa
+		-Dllvm=true
+		-Dplatforms=android
+		-Degl=true
+		-Dgbm=false
+		-Dgles1=true
+		-Dgles2=true
+		-Dshared-glapi=true
+		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
+		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
+		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
+		--buildtype $(usex debug debug release)
+		--cross-file="${ARC_CROSS_FILE}"
+		-Dplatform-sdk-version="${ARC_PLATFORM_SDK_VERSION:?}"
+	)
+
+	meson_src_configure
+}
+
+# The meson eclass exports src_compile but not multilib_src_compile. src_compile
+# gets overridden by multilib-minimal
+multilib_src_compile() {
+	meson_src_compile
+}
+
+multilib_src_install() {
+	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)"
+	newexe "${BUILD_DIR}/src/mapi/shared-glapi/libglapi.so.0" libglapi.so.0
+
+	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/egl"
+	newexe "${BUILD_DIR}/src/egl/libEGL_mesa.so" libEGL_mesa.so
+	newexe "${BUILD_DIR}/src/mapi/es1api/libGLESv1_CM_mesa.so" libGLESv1_CM_mesa.so
+	newexe "${BUILD_DIR}/src/mapi/es2api/libGLESv2_mesa.so" libGLESv2_mesa.so
+
+	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/dri"
+	if use video_cards_intel; then
+		newexe "${BUILD_DIR}/src/mesa/drivers/dri/libmesa_dri_drivers.so" i965_dri.so
+	fi
+	if use video_cards_llvmpipe; then
+		newexe "${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so" kms_swrast_dri.so
+	fi
+	if use video_cards_amdgpu; then
+		newexe "${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so" radeonsi_dri.so
+	fi
+
+	if use vulkan; then
+		exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/hw"
+		if use video_cards_amdgpu; then
+			newexe "${BUILD_DIR}/src/amd/vulkan/libvulkan_radeon.so" vulkan.cheets.so
+		fi
+		if use video_cards_intel; then
+			newexe "${BUILD_DIR}/src/intel/vulkan/libvulkan_intel.so" vulkan.cheets.so
+		fi
+	fi
+}
+
+multilib_src_install_all() {
+	# For documentation on the feature set represented by each XML file
+	# installed into /vendor/etc/permissions, see
+	# <https://developer.android.com/reference/android/content/pm/PackageManager.html>.
+	# For example XML files for each feature, see
+	# <https://android.googlesource.com/platform/frameworks/native/+/master/data/etc>.
+
+	# Install init files to advertise supported API versions.
+	insinto "${ARC_PREFIX}/vendor/etc/init"
+	doins "${FILESDIR}/init.gpu.rc"
+
+	# Install vulkan related files.
+	if use vulkan; then
+		einfo "Using android vulkan."
+		insinto "${ARC_PREFIX}/vendor/etc/init"
+		doins "${FILESDIR}/vulkan.rc"
+
+		insinto "${ARC_PREFIX}/vendor/etc/permissions"
+		doins "${FILESDIR}/android.hardware.vulkan.version-1_0_3.xml"
+		if use video_cards_intel; then
+			doins "${FILESDIR}/android.hardware.vulkan.level-1.xml"
+		else
+			doins "${FILESDIR}/android.hardware.vulkan.level-0.xml"
+		fi
+	fi
+
+	if use android_vulkan_compute_0; then
+		einfo "Using android vulkan_compute_0."
+		insinto "${ARC_PREFIX}/vendor/etc/permissions"
+		doins "${FILESDIR}/android.hardware.vulkan.compute-0.xml"
+	fi
+
+	# Install permission file to declare opengles aep support.
+	einfo "Using android aep."
+	insinto "${ARC_PREFIX}/vendor/etc/permissions"
+	doins "${FILESDIR}/android.hardware.opengles.aep.xml"
+
+	# Install the dri header for arc-cros-gralloc
+	insinto "${ARC_PREFIX}/vendor/include/"
+	doins -r "${S}/include/GL/"
+}
+
+# $1 - VIDEO_CARDS flag (check skipped for "--")
+# other args - names of DRI drivers to enable
+dri_driver_enable() {
+	if [[ $1 == -- ]] || use "$1"; then
+		shift
+		DRI_DRIVERS+=("$@")
+	fi
+}
+
+gallium_enable() {
+	if [[ $1 == -- ]] || use "$1"; then
+		shift
+		GALLIUM_DRIVERS+=("$@")
+	fi
+}
+
+vulkan_enable() {
+	if [[ $1 == -- ]] || use "$1"; then
+		shift
+		VULKAN_DRIVERS+=("$@")
+	fi
+}
diff --git a/media-libs/arc-mesa-freedreno/arc-mesa-freedreno-21.2.0_pre-r56.ebuild b/media-libs/arc-mesa-freedreno/arc-mesa-freedreno-21.2.0_pre-r56.ebuild
deleted file mode 100644
index f8042eb..0000000
--- a/media-libs/arc-mesa-freedreno/arc-mesa-freedreno-21.2.0_pre-r56.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 2018 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.
-
-EAPI=6
-
-CROS_WORKON_COMMIT="1cd57dc10179783f443e1c148bc144184250968e"
-CROS_WORKON_TREE="5e2d3eccd85d551dcd7d7bfa5dac28a8d680dc88"
-CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
-CROS_WORKON_LOCALNAME="mesa-freedreno"
-CROS_WORKON_EGIT_BRANCH="chromeos-freedreno"
-
-inherit base meson multilib-minimal flag-o-matic toolchain-funcs cros-workon arc-build
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="http://mesa3d.sourceforge.net/"
-
-KEYWORDS="*"
-
-# Most files are MIT/X11.
-# Some files in src/glx are SGI-B-2.0.
-LICENSE="MIT SGI-B-2.0"
-SLOT="0"
-
-IUSE="
-	cheets
-	cheets_user
-	cheets_user_64
-	debug
-	-vulkan
-"
-
-REQUIRED_USE="
-	cheets
-"
-
-DEPEND="
-	>=x11-libs/arc-libdrm-2.4.82[${MULTILIB_USEDEP}]
-	dev-libs/arc-libelf[${MULTILIB_USEDEP}]
-"
-
-RDEPEND="${DEPEND}"
-
-pkg_pretend() {
-	if use vulkan; then
-		die "${PN} does not yet support vulkan"
-	fi
-}
-
-src_configure() {
-	arc-build-select-clang
-
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	tc-getPROG PKG_CONFIG pkg-config
-
-	emesonargs+=(
-		--prefix="${ARC_PREFIX}/vendor"
-		--sysconfdir="/system/vendor/etc"
-		-Ddri-search-path="/system/$(get_libdir)/dri:/system/vendor/$(get_libdir)/dri"
-		-Dllvm=disabled
-		-Ddri3=disabled
-		-Dshader-cache=enabled
-		-Dglx=disabled
-		-Degl=enabled
-		-Dgbm=disabled
-		-Dgles1=enabled
-		-Dgles2=enabled
-		-Dshared-glapi=enabled
-		-Ddri-drivers=
-		-Dgallium-drivers=freedreno
-		-Dgallium-vdpau=disabled
-		-Dgallium-xa=disabled
-		-Dplatforms=android
-		-Dplatform-sdk-version="${ARC_PLATFORM_SDK_VERSION}"
-		-Degl-lib-suffix=_mesa
-		-Dgles-lib-suffix=_mesa
-		--buildtype $(usex debug debug release)
-		-Dvulkan-drivers=$(usex vulkan freedreno '')
-	)
-
-	meson_src_configure
-}
-
-# The meson eclass exports src_compile but not multilib_src_compile. src_compile
-# gets overridden by multilib-minimal
-multilib_src_compile() {
-	meson_src_compile
-}
-
-multilib_src_install() {
-	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)"
-	newexe "${BUILD_DIR}/src/mapi/shared-glapi/libglapi.so.0" libglapi.so.0
-
-	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/egl"
-	newexe "${BUILD_DIR}/src/egl/libEGL_mesa.so" libEGL_mesa.so
-	newexe "${BUILD_DIR}/src/mapi/es1api/libGLESv1_CM_mesa.so" libGLESv1_CM_mesa.so
-	newexe "${BUILD_DIR}/src/mapi/es2api/libGLESv2_mesa.so" libGLESv2_mesa.so
-
-	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/dri"
-	newexe "${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so" msm_dri.so
-}
-
-multilib_src_install_all() {
-	# For documentation on the feature set represented by each XML file
-	# installed into /vendor/etc/permissions, see
-	# <https://developer.android.com/reference/android/content/pm/PackageManager.html>.
-	# For example XML files for each feature, see
-	# <https://android.googlesource.com/platform/frameworks/native/+/master/data/etc>.
-
-	# Install init files to advertise supported API versions.
-	insinto "${ARC_PREFIX}/vendor/etc/init"
-	doins "${FILESDIR}/gles31.rc"
-
-	# Install the dri header for arc-cros-gralloc
-	insinto "${ARC_PREFIX}/vendor/include/GL"
-	doins -r "${S}/include/GL/internal"
-}
diff --git a/media-libs/arc-mesa-freedreno/arc-mesa-freedreno-21.3.0_pre-r68.ebuild b/media-libs/arc-mesa-freedreno/arc-mesa-freedreno-21.3.0_pre-r68.ebuild
new file mode 100644
index 0000000..551a6a5
--- /dev/null
+++ b/media-libs/arc-mesa-freedreno/arc-mesa-freedreno-21.3.0_pre-r68.ebuild
@@ -0,0 +1,145 @@
+# Copyright 2018 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.
+
+EAPI=6
+
+CROS_WORKON_COMMIT="75de09f5e85b83404faed96b4c20083b71f7b6d1"
+CROS_WORKON_TREE="c7b01d2c0cb8997df5e307f810ecc26c4c76c097"
+CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
+CROS_WORKON_LOCALNAME="mesa-freedreno"
+CROS_WORKON_EGIT_BRANCH="chromeos-freedreno"
+
+inherit base meson multilib-minimal flag-o-matic toolchain-funcs cros-workon arc-build
+
+DESCRIPTION="OpenGL-like graphic library for Linux"
+HOMEPAGE="http://mesa3d.sourceforge.net/"
+
+KEYWORDS="*"
+
+# Most files are MIT/X11.
+# Some files in src/glx are SGI-B-2.0.
+LICENSE="MIT SGI-B-2.0"
+SLOT="0"
+
+IUSE="
+	cheets
+	cheets_user
+	cheets_user_64
+	debug
+	vulkan
+	android_vulkan_compute_0
+"
+
+REQUIRED_USE="
+	cheets
+	android_vulkan_compute_0? ( vulkan )
+"
+
+DEPEND="
+	>=x11-libs/arc-libdrm-2.4.82[${MULTILIB_USEDEP}]
+	dev-libs/arc-libelf[${MULTILIB_USEDEP}]
+"
+
+RDEPEND="${DEPEND}"
+
+src_configure() {
+	arc-build-select-clang
+
+	multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+	tc-getPROG PKG_CONFIG pkg-config
+
+	arc-build-create-cross-file
+
+	emesonargs+=(
+		--prefix="${ARC_PREFIX}/vendor"
+		--sysconfdir="/system/vendor/etc"
+		-Ddri-search-path="/system/$(get_libdir)/dri:/system/vendor/$(get_libdir)/dri"
+		-Dllvm=disabled
+		-Ddri3=disabled
+		-Dshader-cache=enabled
+		-Dglx=disabled
+		-Degl=enabled
+		-Dgbm=disabled
+		-Dgles1=enabled
+		-Dgles2=enabled
+		-Dshared-glapi=enabled
+		-Ddri-drivers=
+		-Dgallium-drivers=freedreno
+		-Dgallium-vdpau=disabled
+		-Dgallium-xa=disabled
+		-Dplatforms=android
+		-Dplatform-sdk-version="${ARC_PLATFORM_SDK_VERSION}"
+		-Degl-lib-suffix=_mesa
+		-Dgles-lib-suffix=_mesa
+		--buildtype $(usex debug debug release)
+		-Dvulkan-drivers=$(usex vulkan freedreno '')
+		--cross-file="${ARC_CROSS_FILE}"
+	)
+
+	meson_src_configure
+}
+
+# The meson eclass exports src_compile but not multilib_src_compile. src_compile
+# gets overridden by multilib-minimal
+multilib_src_compile() {
+	meson_src_compile
+}
+
+multilib_src_install() {
+	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)"
+	newexe "${BUILD_DIR}/src/mapi/shared-glapi/libglapi.so.0" libglapi.so.0
+
+	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/egl"
+	newexe "${BUILD_DIR}/src/egl/libEGL_mesa.so" libEGL_mesa.so
+	newexe "${BUILD_DIR}/src/mapi/es1api/libGLESv1_CM_mesa.so" libGLESv1_CM_mesa.so
+	newexe "${BUILD_DIR}/src/mapi/es2api/libGLESv2_mesa.so" libGLESv2_mesa.so
+
+	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/dri"
+	newexe "${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so" msm_dri.so
+
+	if use vulkan; then
+		exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/hw"
+		newexe "${BUILD_DIR}/src/freedreno/vulkan/libvulkan_freedreno.so" vulkan.cheets.so
+	fi
+}
+
+multilib_src_install_all() {
+	# For documentation on the feature set represented by each XML file
+	# installed into /vendor/etc/permissions, see
+	# <https://developer.android.com/reference/android/content/pm/PackageManager.html>.
+	# For example XML files for each feature, see
+	# <https://android.googlesource.com/platform/frameworks/native/+/master/data/etc>.
+
+	# Install init files to advertise supported API versions.
+	insinto "${ARC_PREFIX}/vendor/etc/init"
+	doins "${FILESDIR}/gles32.rc"
+
+	# Install vulkan files
+	if use vulkan; then
+		einfo "Using android vulkan."
+		insinto "${ARC_PREFIX}/vendor/etc/init"
+		doins "${FILESDIR}/vulkan.rc"
+
+		insinto "${ARC_PREFIX}/vendor/etc/permissions"
+		doins "${FILESDIR}/android.hardware.vulkan.level-1.xml"
+		doins "${FILESDIR}/android.hardware.vulkan.version-1_1.xml"
+
+		if use android_vulkan_compute_0; then
+			einfo "Using android vulkan_compute_0."
+			insinto "${ARC_PREFIX}/vendor/etc/permissions"
+			doins "${FILESDIR}/android.hardware.vulkan.compute-0.xml"
+		fi
+	fi
+
+	# Install the dri header for arc-cros-gralloc
+	insinto "${ARC_PREFIX}/vendor/include/GL"
+	doins -r "${S}/include/GL/internal"
+
+	# Install permission file to declare opengles aep support.
+	insinto "${ARC_PREFIX}/vendor/etc/permissions"
+	doins "${FILESDIR}/android.hardware.opengles.aep.xml"
+}
diff --git a/media-libs/arc-mesa-freedreno/arc-mesa-freedreno-9999.ebuild b/media-libs/arc-mesa-freedreno/arc-mesa-freedreno-9999.ebuild
index 4e926ce..22203fc 100644
--- a/media-libs/arc-mesa-freedreno/arc-mesa-freedreno-9999.ebuild
+++ b/media-libs/arc-mesa-freedreno/arc-mesa-freedreno-9999.ebuild
@@ -25,11 +25,13 @@
 	cheets_user
 	cheets_user_64
 	debug
-	-vulkan
+	vulkan
+	android_vulkan_compute_0
 "
 
 REQUIRED_USE="
 	cheets
+	android_vulkan_compute_0? ( vulkan )
 "
 
 DEPEND="
@@ -39,12 +41,6 @@
 
 RDEPEND="${DEPEND}"
 
-pkg_pretend() {
-	if use vulkan; then
-		die "${PN} does not yet support vulkan"
-	fi
-}
-
 src_configure() {
 	arc-build-select-clang
 
@@ -54,6 +50,8 @@
 multilib_src_configure() {
 	tc-getPROG PKG_CONFIG pkg-config
 
+	arc-build-create-cross-file
+
 	emesonargs+=(
 		--prefix="${ARC_PREFIX}/vendor"
 		--sysconfdir="/system/vendor/etc"
@@ -77,6 +75,7 @@
 		-Dgles-lib-suffix=_mesa
 		--buildtype $(usex debug debug release)
 		-Dvulkan-drivers=$(usex vulkan freedreno '')
+		--cross-file="${ARC_CROSS_FILE}"
 	)
 
 	meson_src_configure
@@ -99,6 +98,11 @@
 
 	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/dri"
 	newexe "${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so" msm_dri.so
+
+	if use vulkan; then
+		exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/hw"
+		newexe "${BUILD_DIR}/src/freedreno/vulkan/libvulkan_freedreno.so" vulkan.cheets.so
+	fi
 }
 
 multilib_src_install_all() {
@@ -110,9 +114,30 @@
 
 	# Install init files to advertise supported API versions.
 	insinto "${ARC_PREFIX}/vendor/etc/init"
-	doins "${FILESDIR}/gles31.rc"
+	doins "${FILESDIR}/gles32.rc"
+
+	# Install vulkan files
+	if use vulkan; then
+		einfo "Using android vulkan."
+		insinto "${ARC_PREFIX}/vendor/etc/init"
+		doins "${FILESDIR}/vulkan.rc"
+
+		insinto "${ARC_PREFIX}/vendor/etc/permissions"
+		doins "${FILESDIR}/android.hardware.vulkan.level-1.xml"
+		doins "${FILESDIR}/android.hardware.vulkan.version-1_1.xml"
+
+		if use android_vulkan_compute_0; then
+			einfo "Using android vulkan_compute_0."
+			insinto "${ARC_PREFIX}/vendor/etc/permissions"
+			doins "${FILESDIR}/android.hardware.vulkan.compute-0.xml"
+		fi
+	fi
 
 	# Install the dri header for arc-cros-gralloc
 	insinto "${ARC_PREFIX}/vendor/include/GL"
 	doins -r "${S}/include/GL/internal"
+
+	# Install permission file to declare opengles aep support.
+	insinto "${ARC_PREFIX}/vendor/etc/permissions"
+	doins "${FILESDIR}/android.hardware.opengles.aep.xml"
 }
diff --git a/media-libs/arc-mesa-freedreno/files/android.hardware.opengles.aep.xml b/media-libs/arc-mesa-freedreno/files/android.hardware.opengles.aep.xml
new file mode 100644
index 0000000..055fa7ae
--- /dev/null
+++ b/media-libs/arc-mesa-freedreno/files/android.hardware.opengles.aep.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2014 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<!-- This is the standard feature indicating that the device supports the
+     Android Extension Pack features. -->
+<permissions>
+    <feature name="android.hardware.opengles.aep" />
+</permissions>
+
diff --git a/media-libs/arc-mesa-freedreno/files/android.hardware.vulkan.compute-0.xml b/media-libs/arc-mesa-freedreno/files/android.hardware.vulkan.compute-0.xml
new file mode 100644
index 0000000..bac2fde
--- /dev/null
+++ b/media-libs/arc-mesa-freedreno/files/android.hardware.vulkan.compute-0.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright 2017 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<!-- This is the standard feature indicating that the device supports Vulkan
+     compute level 0. -->
+<permissions>
+    <feature name="android.hardware.vulkan.compute" version="0" />
+</permissions>
diff --git a/media-libs/arc-mesa-freedreno/files/android.hardware.vulkan.level-1.xml b/media-libs/arc-mesa-freedreno/files/android.hardware.vulkan.level-1.xml
new file mode 100644
index 0000000..c3f5513
--- /dev/null
+++ b/media-libs/arc-mesa-freedreno/files/android.hardware.vulkan.level-1.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright 2016 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<!-- This is the standard feature indicating that the device supports Vulkan
+     hardware level 1. -->
+<permissions>
+    <feature name="android.hardware.vulkan.level" version="1" />
+</permissions>
diff --git a/media-libs/arc-mesa-freedreno/files/android.hardware.vulkan.version-1_1.xml b/media-libs/arc-mesa-freedreno/files/android.hardware.vulkan.version-1_1.xml
new file mode 100644
index 0000000..9704e0f
--- /dev/null
+++ b/media-libs/arc-mesa-freedreno/files/android.hardware.vulkan.version-1_1.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright 2018 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<!-- This is the standard feature indicating that the device has a Vulkan
+     driver that supports API version 1.1 (0x00401000) -->
+<permissions>
+    <feature name="android.hardware.vulkan.version" version="4198400" />
+</permissions>
diff --git a/media-libs/arc-mesa-freedreno/files/gles31.rc b/media-libs/arc-mesa-freedreno/files/gles31.rc
deleted file mode 100644
index cb2ad0e..0000000
--- a/media-libs/arc-mesa-freedreno/files/gles31.rc
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright 2017 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.
-
-on early-init
-    # Advertise opengles version 3.1.
-    setprop ro.opengles.version 196609
-    setprop ro.hardware.egl mesa
-    setprop drm.gpu.vendor_name msm
diff --git a/media-libs/arc-mesa-freedreno/files/gles32.rc b/media-libs/arc-mesa-freedreno/files/gles32.rc
new file mode 100644
index 0000000..cd7656d
--- /dev/null
+++ b/media-libs/arc-mesa-freedreno/files/gles32.rc
@@ -0,0 +1,9 @@
+# Copyright 2017 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.
+
+on early-init
+    # Advertise opengles version 3.2.
+    setprop ro.opengles.version 196610
+    setprop ro.hardware.egl mesa
+    setprop drm.gpu.vendor_name msm
diff --git a/media-libs/arc-mesa-freedreno/files/vulkan.rc b/media-libs/arc-mesa-freedreno/files/vulkan.rc
new file mode 100644
index 0000000..deb7128
--- /dev/null
+++ b/media-libs/arc-mesa-freedreno/files/vulkan.rc
@@ -0,0 +1,8 @@
+# Copyright 2017 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.
+
+on early-init
+    setprop ro.hardware.vulkan cheets
+    setprop ro.hardware.vulkan.level 1
+    setprop ro.hardware.vulkan.version 4194307
diff --git a/media-libs/arc-mesa-iris/arc-mesa-iris-21.1.1-r28.ebuild b/media-libs/arc-mesa-iris/arc-mesa-iris-21.1.1-r28.ebuild
deleted file mode 100644
index d626bc9..0000000
--- a/media-libs/arc-mesa-iris/arc-mesa-iris-21.1.1-r28.ebuild
+++ /dev/null
@@ -1,153 +0,0 @@
-# Copyright 2018 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.
-
-EAPI=6
-
-CROS_WORKON_COMMIT="efbaa7b580468b0e4861a70dbd1b56266b393d36"
-CROS_WORKON_TREE="f623425a2c035582400821c0eb4451faaac1b9f2"
-CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
-CROS_WORKON_LOCALNAME="mesa-iris"
-CROS_WORKON_EGIT_BRANCH="chromeos-iris"
-
-inherit base meson multilib-minimal flag-o-matic cros-workon arc-build
-
-DESCRIPTION="The Mesa 3D Graphics Library"
-HOMEPAGE="http://mesa3d.org/"
-
-KEYWORDS="*"
-
-# Most files are MIT/X11.
-# Some files in src/glx are SGI-B-2.0.
-LICENSE="MIT SGI-B-2.0"
-SLOT="0"
-
-IUSE="
-	cheets
-	cheets_user
-	cheets_user_64
-	debug
-	vulkan
-	android_vulkan_compute_0
-	android_aep
-"
-
-REQUIRED_USE="
-	cheets
-	android_vulkan_compute_0? ( vulkan )
-"
-
-DEPEND="
-	>=x11-libs/arc-libdrm-2.4.82[${MULTILIB_USEDEP}]
-	dev-libs/arc-libelf[${MULTILIB_USEDEP}]
-"
-
-RDEPEND="${DEPEND}"
-
-src_configure() {
-	arc-build-select-clang
-
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	# The AOSP build system defines the Make variable PLATFORM_SDK_VERSION,
-	# and Mesa's Android.mk files use it to define the macro
-	# ANDROID_API_LEVEL. Arc emulates that here.
-	if [[ -n "${ARC_PLATFORM_SDK_VERSION}" ]]; then
-		CPPFLAGS+=" -DANDROID_API_LEVEL=${ARC_PLATFORM_SDK_VERSION}"
-	fi
-
-	arc-build-create-cross-file
-
-	emesonargs+=(
-		--prefix="${ARC_PREFIX}/vendor"
-		--sysconfdir="/system/vendor/etc"
-		-Ddri-search-path="/system/$(get_libdir)/dri:/system/vendor/$(get_libdir)/dri"
-		-Dllvm=false
-		-Ddri3=false
-		-Dshader-cache=true
-		-Dglx=disabled
-		-Degl=true
-		-Dgbm=false
-		-Dgles1=true
-		-Dgles2=true
-		-Dshared-glapi=true
-		-Ddri-drivers=
-		-Dgallium-drivers=iris
-		-Dgallium-vdpau=false
-		-Dgallium-xa=false
-		-Dplatforms=android
-		-Degl-lib-suffix=_mesa
-		-Dgles-lib-suffix=_mesa
-		-Dvulkan-drivers=$(usex vulkan intel '')
-		--buildtype $(usex debug debug release)
-		--cross-file="${ARC_CROSS_FILE}"
-		-Dplatform-sdk-version="${ARC_PLATFORM_SDK_VERSION}"
-	)
-
-	meson_src_configure
-}
-
-# The meson eclass exports src_compile but not multilib_src_compile. src_compile
-# gets overridden by multilib-minimal
-multilib_src_compile() {
-	meson_src_compile
-}
-
-multilib_src_install() {
-	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)"
-	newexe "${BUILD_DIR}/src/mapi/shared-glapi/libglapi.so.0" libglapi.so.0
-
-	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/egl"
-	newexe "${BUILD_DIR}/src/egl/libEGL_mesa.so" libEGL_mesa.so
-	newexe "${BUILD_DIR}/src/mapi/es1api/libGLESv1_CM_mesa.so" libGLESv1_CM_mesa.so
-	newexe "${BUILD_DIR}/src/mapi/es2api/libGLESv2_mesa.so" libGLESv2_mesa.so
-
-	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/dri"
-	newexe "${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so" iris_dri.so
-
-	if use vulkan; then
-		exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/hw"
-		newexe "${BUILD_DIR}/src/intel/vulkan/libvulkan_intel.so" vulkan.cheets.so
-	fi
-}
-
-multilib_src_install_all() {
-	# For documentation on the feature set represented by each XML file
-	# installed into /vendor/etc/permissions, see
-	# <https://developer.android.com/reference/android/content/pm/PackageManager.html>.
-	# For example XML files for each feature, see
-	# <https://android.googlesource.com/platform/frameworks/native/+/master/data/etc>.
-
-	# Install init files to advertise supported API versions.
-	insinto "${ARC_PREFIX}/vendor/etc/init"
-	doins "${FILESDIR}/gles32.rc"
-
-	# Install vulkan files
-	if use vulkan; then
-		einfo "Using android vulkan."
-		insinto "${ARC_PREFIX}/vendor/etc/init"
-		doins "${FILESDIR}/vulkan.rc"
-
-		insinto "${ARC_PREFIX}/vendor/etc/permissions"
-		doins "${FILESDIR}/android.hardware.vulkan.level-1.xml"
-		doins "${FILESDIR}/android.hardware.vulkan.version-1_1.xml"
-
-		if use android_vulkan_compute_0; then
-			einfo "Using android vulkan_compute_0."
-			insinto "${ARC_PREFIX}/vendor/etc/permissions"
-			doins "${FILESDIR}/android.hardware.vulkan.compute-0.xml"
-		fi
-	fi
-
-	# Install permission file to declare opengles aep support.
-	if use android_aep; then
-		einfo "Using android aep."
-		insinto "${ARC_PREFIX}/vendor/etc/permissions"
-		doins "${FILESDIR}/android.hardware.opengles.aep.xml"
-	fi
-	# Install the dri header for arc-cros-gralloc
-	insinto "${ARC_PREFIX}/vendor/include/GL"
-	doins -r "${S}/include/GL/internal"
-}
diff --git a/media-libs/arc-mesa-iris/arc-mesa-iris-21.2.3-r30.ebuild b/media-libs/arc-mesa-iris/arc-mesa-iris-21.2.3-r30.ebuild
new file mode 100644
index 0000000..8ede5f4
--- /dev/null
+++ b/media-libs/arc-mesa-iris/arc-mesa-iris-21.2.3-r30.ebuild
@@ -0,0 +1,153 @@
+# Copyright 2018 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.
+
+EAPI=6
+
+CROS_WORKON_COMMIT="4f414e0ae55b9b405717b9ea97f87f4d93044997"
+CROS_WORKON_TREE="dc2e8513f627de823b24480670875277b9f478b2"
+CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
+CROS_WORKON_LOCALNAME="mesa-iris"
+CROS_WORKON_EGIT_BRANCH="chromeos-iris"
+
+inherit base meson multilib-minimal flag-o-matic cros-workon arc-build
+
+DESCRIPTION="The Mesa 3D Graphics Library"
+HOMEPAGE="http://mesa3d.org/"
+
+KEYWORDS="*"
+
+# Most files are MIT/X11.
+# Some files in src/glx are SGI-B-2.0.
+LICENSE="MIT SGI-B-2.0"
+SLOT="0"
+
+IUSE="
+	cheets
+	cheets_user
+	cheets_user_64
+	debug
+	vulkan
+	android_vulkan_compute_0
+	android_aep
+"
+
+REQUIRED_USE="
+	cheets
+	android_vulkan_compute_0? ( vulkan )
+"
+
+DEPEND="
+	>=x11-libs/arc-libdrm-2.4.82[${MULTILIB_USEDEP}]
+	dev-libs/arc-libelf[${MULTILIB_USEDEP}]
+"
+
+RDEPEND="${DEPEND}"
+
+src_configure() {
+	arc-build-select-clang
+
+	multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+	# The AOSP build system defines the Make variable PLATFORM_SDK_VERSION,
+	# and Mesa's Android.mk files use it to define the macro
+	# ANDROID_API_LEVEL. Arc emulates that here.
+	if [[ -n "${ARC_PLATFORM_SDK_VERSION}" ]]; then
+		CPPFLAGS+=" -DANDROID_API_LEVEL=${ARC_PLATFORM_SDK_VERSION}"
+	fi
+
+	arc-build-create-cross-file
+
+	emesonargs+=(
+		--prefix="${ARC_PREFIX}/vendor"
+		--sysconfdir="/system/vendor/etc"
+		-Ddri-search-path="/system/$(get_libdir)/dri:/system/vendor/$(get_libdir)/dri"
+		-Dllvm=false
+		-Ddri3=false
+		-Dshader-cache=true
+		-Dglx=disabled
+		-Degl=true
+		-Dgbm=false
+		-Dgles1=true
+		-Dgles2=true
+		-Dshared-glapi=true
+		-Ddri-drivers=
+		-Dgallium-drivers=iris
+		-Dgallium-vdpau=false
+		-Dgallium-xa=false
+		-Dplatforms=android
+		-Degl-lib-suffix=_mesa
+		-Dgles-lib-suffix=_mesa
+		-Dvulkan-drivers=$(usex vulkan intel '')
+		--buildtype $(usex debug debug release)
+		--cross-file="${ARC_CROSS_FILE}"
+		-Dplatform-sdk-version="${ARC_PLATFORM_SDK_VERSION}"
+	)
+
+	meson_src_configure
+}
+
+# The meson eclass exports src_compile but not multilib_src_compile. src_compile
+# gets overridden by multilib-minimal
+multilib_src_compile() {
+	meson_src_compile
+}
+
+multilib_src_install() {
+	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)"
+	newexe "${BUILD_DIR}/src/mapi/shared-glapi/libglapi.so.0" libglapi.so.0
+
+	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/egl"
+	newexe "${BUILD_DIR}/src/egl/libEGL_mesa.so" libEGL_mesa.so
+	newexe "${BUILD_DIR}/src/mapi/es1api/libGLESv1_CM_mesa.so" libGLESv1_CM_mesa.so
+	newexe "${BUILD_DIR}/src/mapi/es2api/libGLESv2_mesa.so" libGLESv2_mesa.so
+
+	exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/dri"
+	newexe "${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so" iris_dri.so
+
+	if use vulkan; then
+		exeinto "${ARC_PREFIX}/vendor/$(get_libdir)/hw"
+		newexe "${BUILD_DIR}/src/intel/vulkan/libvulkan_intel.so" vulkan.cheets.so
+	fi
+}
+
+multilib_src_install_all() {
+	# For documentation on the feature set represented by each XML file
+	# installed into /vendor/etc/permissions, see
+	# <https://developer.android.com/reference/android/content/pm/PackageManager.html>.
+	# For example XML files for each feature, see
+	# <https://android.googlesource.com/platform/frameworks/native/+/master/data/etc>.
+
+	# Install init files to advertise supported API versions.
+	insinto "${ARC_PREFIX}/vendor/etc/init"
+	doins "${FILESDIR}/gles32.rc"
+
+	# Install vulkan files
+	if use vulkan; then
+		einfo "Using android vulkan."
+		insinto "${ARC_PREFIX}/vendor/etc/init"
+		doins "${FILESDIR}/vulkan.rc"
+
+		insinto "${ARC_PREFIX}/vendor/etc/permissions"
+		doins "${FILESDIR}/android.hardware.vulkan.level-1.xml"
+		doins "${FILESDIR}/android.hardware.vulkan.version-1_1.xml"
+
+		if use android_vulkan_compute_0; then
+			einfo "Using android vulkan_compute_0."
+			insinto "${ARC_PREFIX}/vendor/etc/permissions"
+			doins "${FILESDIR}/android.hardware.vulkan.compute-0.xml"
+		fi
+	fi
+
+	# Install permission file to declare opengles aep support.
+	if use android_aep; then
+		einfo "Using android aep."
+		insinto "${ARC_PREFIX}/vendor/etc/permissions"
+		doins "${FILESDIR}/android.hardware.opengles.aep.xml"
+	fi
+	# Install the dri header for arc-cros-gralloc
+	insinto "${ARC_PREFIX}/vendor/include/GL"
+	doins -r "${S}/include/GL/internal"
+}
diff --git a/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.0.2-r3.ebuild b/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.0.2-r3.ebuild
deleted file mode 120000
index 33615d7..0000000
--- a/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.0.2-r3.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-arc-mesa-virgl-21.ebuild
\ No newline at end of file
diff --git a/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.1-r3.ebuild b/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.1-r3.ebuild
deleted file mode 120000
index 8ff2cdd..0000000
--- a/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.1-r3.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-arc-mesa-virgl-21.1.ebuild
\ No newline at end of file
diff --git a/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.1.ebuild b/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.1.ebuild
deleted file mode 100644
index 15fe57d..0000000
--- a/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.1.ebuild
+++ /dev/null
@@ -1,501 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
-
-EAPI="6"
-
-CROS_WORKON_COMMIT="47eabd0e6b926535a68a7173eba2ceeb4ed9747e"
-CROS_WORKON_TREE="d663408cd6538b6fee669db87ea77f6a38a37177"
-CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
-CROS_WORKON_LOCALNAME="arc-mesa-virgl"
-CROS_WORKON_EGIT_BRANCH="master"
-CROS_WORKON_MANUAL_UPREV="1"
-
-EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
-
-MESON_AUTO_DEPEND=no
-
-inherit base meson multilib-minimal flag-o-matic toolchain-funcs cros-workon arc-build
-
-OPENGL_DIR="xorg-x11"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="http://mesa3d.sourceforge.net/"
-
-# Most of the code is MIT/X11.
-# ralloc is LGPL-3
-# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
-LICENSE="MIT LGPL-3 SGI-B-2.0"
-SLOT="0"
-KEYWORDS="~*"
-
-INTEL_CARDS="intel"
-RADEON_CARDS="amdgpu radeon"
-VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} llvmpipe mach64 mga nouveau powervr r128 savage sis vmware tdfx via freedreno virgl"
-for card in ${VIDEO_CARDS}; do
-	IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-# TODO(b/160748345): Remove hardcoded ARC_PLATFORM_SDK_VERSION when fixed.
-ARC_PLATFORM_SDK_VERSION=28
-
-IUSE="${IUSE_VIDEO_CARDS}
-	android_aep -android_gles2 -android_gles30
-	+android_gles31 -android_gles32	-android_vulkan_compute_0
-	+cheets classic debug dri +egl +gallium
-	-gbm +gles1 +gles2 -llvm +nptl pic selinux +shared-glapi -vulkan -X xlib-glx
-	cheets_user cheets_user_64"
-
-# llvmpipe requires ARC++ _userdebug images, ARC++ _user images can't use it
-# (b/33072485, b/28802929).
-# Only allow one vulkan driver as they all write vulkan.cheets.so.
-REQUIRED_USE="
-	^^ ( android_gles2 android_gles30 android_gles31 android_gles32 )
-	android_aep? ( !android_gles2 !android_gles30 )
-	android_vulkan_compute_0? ( vulkan )
-	cheets? (
-		vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel video_cards_virgl ) )
-		video_cards_amdgpu? ( llvm )
-		video_cards_llvmpipe? ( !cheets_user !cheets_user_64 )
-	)"
-
-DEPEND="cheets? (
-		>=x11-libs/arc-libdrm-2.4.82[${MULTILIB_USEDEP}]
-		llvm? ( sys-devel/arc-llvm:=[${MULTILIB_USEDEP}] )
-		video_cards_amdgpu? (
-			dev-libs/arc-libelf[${MULTILIB_USEDEP}]
-		)
-	)"
-
-RDEPEND="${DEPEND}"
-
-# It is slow without texrels, if someone wants slow
-# mesa without texrels +pic use is worth the shot
-QA_EXECSTACK="usr/lib*/opengl/xorg-x11/lib/libGL.so*"
-QA_WX_LOAD="usr/lib*/opengl/xorg-x11/lib/libGL.so*"
-
-# Think about: ggi, fbcon, no-X configs
-
-driver_list() {
-	local uniq_driver=($(printf "%s\n" "$@" | sort -u))
-	local IFS=,
-	echo "${uniq_driver[*]}"
-}
-
-pkg_setup() {
-	# workaround toc-issue wrt #386545
-	use ppc64 && append-flags -mminimal-toc
-
-	# Remove symlinks created by an earlier version so we don't have
-	# install conflicts.
-	# TODO: Delete this after June 2019, since everybody should have
-	# upgraded by then.
-	local d
-	for d in EGL GL GLES GLES2 GLES3 KHR; do
-		local replaced_link="${ROOT}${ARC_VM_PREFIX}/vendor/include/${d}"
-		if [[ -L "${replaced_link}" ]]; then
-			rm -f "${replaced_link}"
-		fi
-	done
-}
-
-src_prepare() {
-	# workaround for cros-workon not preserving git metadata
-	if [[ ${PV} == 9999* && "${CROS_WORKON_INPLACE}" != "1" ]]; then
-		echo "#define MESA_GIT_SHA1 \"git-deadbeef\"" > src/git_sha1.h
-	fi
-
-	# apply patches
-	if [[ ${PV} != 9999* && -n ${SRC_PATCHES} ]]; then
-		EPATCH_FORCE="yes" \
-		EPATCH_SOURCE="${WORKDIR}/patches" \
-		EPATCH_SUFFIX="patch" \
-		epatch
-	fi
-	# FreeBSD 6.* doesn't have posix_memalign().
-	if [[ ${CHOST} == *-freebsd6.* ]]; then
-		sed -i \
-			-e "s/-DHAVE_POSIX_MEMALIGN//" \
-			configure.ac || die
-	fi
-
-	# Restrict gles version based on USE flag. (See crbug.com/30202361, b/30202371, b/31041422, b:68023287)
-	if use android_gles32; then
-		einfo "Limiting android to gles32."
-		epatch "${FILESDIR}/gles32/0001-limit-gles-version.patch"
-	elif use android_gles31; then
-		einfo "Limiting android to gles31."
-		epatch "${FILESDIR}/gles31/0001-limit-gles-version.patch"
-	elif use android_gles30; then
-		einfo "Limiting android to gles30."
-		epatch "${FILESDIR}/gles30/0001-limit-gles-version.patch"
-	elif use android_gles2; then
-		einfo "Limiting android to gles2."
-		epatch "${FILESDIR}/gles2/0001-limit-gles-version.patch"
-	fi
-
-	epatch "${FILESDIR}"/FROMLIST-glcpp-Hack-to-handle-expressions-in-line-di.patch
-
-	epatch "${FILESDIR}"/FROMLIST-egl-android-Increase-preferred-buffer-count-to-4.patch
-
-	epatch "${FILESDIR}"/CHROMIUM-hack-Override-GL_RENDERER-for-kindle-app.patch
-
-	# This is actually a reland of a reverted patch.
-	# See https://gitlab.freedesktop.org/virgl/virglrenderer/-/issues/216
-	epatch "${FILESDIR}"/UPSTREAM-virgl-fix-BGRA-emulation-artifacts-during-window-res.patch
-
-	epatch "${FILESDIR}"/UPSTREAM-Revert-virgl-Cache-depth-and-stencil-buffers.patch
-
-	default
-}
-
-src_configure() {
-	cros_optimize_package_for_speed
-
-	if use cheets; then
-		#
-		# cheets-specific overrides
-		#
-
-		arc-build-select-clang
-	fi
-
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	tc-getPROG PKG_CONFIG pkg-config
-
-	if use !gallium && use !classic && use !vulkan; then
-		ewarn "You enabled neither classic, gallium, nor vulkan "
-		ewarn "USE flags. No hardware drivers will be built."
-	fi
-
-	if use classic; then
-	# Configurable DRI drivers
-		# Intel code
-		driver_enable video_cards_intel i965
-
-		# Nouveau code
-		driver_enable video_cards_nouveau nouveau
-
-		# ATI code
-		driver_enable video_cards_radeon r100 r200
-	fi
-
-	if use gallium; then
-	# Configurable gallium drivers
-		gallium_enable video_cards_llvmpipe swrast
-
-		# Nouveau code
-		gallium_enable video_cards_nouveau nouveau
-
-		# ATI code
-		gallium_enable video_cards_radeon r300 r600
-		gallium_enable video_cards_amdgpu radeonsi
-
-		# Freedreno code
-		gallium_enable video_cards_freedreno freedreno
-
-		gallium_enable video_cards_virgl virgl
-	fi
-
-	if use vulkan; then
-		vulkan_enable video_cards_amdgpu amd
-		vulkan_enable video_cards_intel intel
-		vulkan_enable video_cards_virgl virtio-experimental
-	fi
-
-	export LLVM_CONFIG=${SYSROOT}/usr/bin/llvm-config-host
-	EGL_PLATFORM="surfaceless"
-
-	if use cheets; then
-		#
-		# cheets-specific overrides
-		#
-
-		MESA_PLATFORM_SDK_VERSION=${ARC_PLATFORM_SDK_VERSION}
-
-		# Use llvm-config coming from ARC++ build.
-		export LLVM_CONFIG="${ARC_SYSROOT}/build/bin/llvm-config-host"
-
-		# FIXME(tfiga): Possibly use flag?
-		EGL_PLATFORM="android"
-
-		# The AOSP build system defines the Make variable
-		# PLATFORM_SDK_VERSION, and Mesa's Android.mk files use it to
-		# define the macro ANDROID_API_LEVEL. Arc emulates that here.
-		if [[ -n "${ARC_PLATFORM_SDK_VERSION}" ]]; then
-			CPPFLAGS+=" -DANDROID_API_LEVEL=${ARC_PLATFORM_SDK_VERSION}"
-		fi
-
-		#
-		# end of arc-mesa specific overrides
-		#
-	fi
-
-	if ! use llvm; then
-		export LLVM_CONFIG="no"
-	fi
-
-	arc-build-create-cross-file
-
-	emesonargs+=(
-		$(use cheets && echo "--prefix=${ARC_VM_PREFIX}/vendor")
-		$(use cheets && echo "--sysconfdir=/system/vendor/etc")
-		$(use cheets && echo "-Ddri-search-path=/system/$(get_libdir)/dri:/system/vendor/$(get_libdir)/dri")
-		-Dgallium-va=false
-		-Dgallium-vdpau=false
-		-Dgallium-xvmc=false
-		-Dgallium-omx=disabled
-		-Dglx=disabled
-		-Ddri3=false
-		-Dgles-lib-suffix=_mesa
-		-Degl-lib-suffix=_mesa
-		$(meson_use llvm)
-		$(use egl && echo "-Dplatforms=${EGL_PLATFORM}")
-		$(meson_use egl)
-		$(meson_use gbm)
-		$(meson_use gles1)
-		$(meson_use gles2)
-		$(meson_use selinux)
-		$(meson_use shared-glapi)
-		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[@]}")
-		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[@]}")
-		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[@]}")
-		--buildtype $(usex debug debug release)
-		$(use cheets && echo "--cross-file=${ARC_CROSS_FILE}")
-		$(use cheets && echo "-Dplatform-sdk-version=${ARC_PLATFORM_SDK_VERSION}")
-	)
-
-	meson_src_configure
-}
-
-# The meson eclass exports src_compile but not multilib_src_compile. src_compile
-# gets overridden by multilib-minimal
-multilib_src_compile() {
-	meson_src_compile
-}
-
-multilib_src_install_cheets() {
-	exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)"
-	newexe ${BUILD_DIR}/src/mapi/shared-glapi/libglapi.so.0 libglapi.so.0
-
-	exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)/egl"
-	newexe ${BUILD_DIR}/src/egl/libEGL_mesa.so libEGL_mesa.so
-	newexe ${BUILD_DIR}/src/mapi/es1api/libGLESv1_CM_mesa.so libGLESv1_CM_mesa.so
-	newexe ${BUILD_DIR}/src/mapi/es2api/libGLESv2_mesa.so libGLESv2_mesa.so
-
-	exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)/dri"
-	if use classic && use video_cards_intel; then
-		newexe ${BUILD_DIR}/src/mesa/drivers/dri/libmesa_dri_drivers.so i965_dri.so
-	fi
-	if use gallium; then
-		if use video_cards_llvmpipe; then
-			newexe ${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so kms_swrast_dri.so
-		fi
-		if use video_cards_amdgpu; then
-			newexe ${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so radeonsi_dri.so
-		fi
-		if use video_cards_virgl; then
-			newexe ${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so virtio_gpu_dri.so
-		fi
-	fi
-
-	if use vulkan; then
-		exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)/hw"
-		if use video_cards_amdgpu; then
-			newexe ${BUILD_DIR}/src/amd/vulkan/libvulkan_radeon.so vulkan.cheets.so
-		fi
-		if use video_cards_intel; then
-			newexe ${BUILD_DIR}/src/intel/vulkan/libvulkan_intel.so vulkan.cheets.so
-		fi
-		if use video_cards_virgl; then
-			newexe "${BUILD_DIR}"/src/virtio/vulkan/libvulkan_virtio.so vulkan.cheets.so
-		fi
-	fi
-}
-
-multilib_src_install() {
-	if use cheets; then
-		multilib_src_install_cheets
-		return
-	fi
-
-	meson_src_install
-
-	# Remove redundant headers
-	# GLU and GLUT
-	rm -f "${D}"/usr/include/GL/glu*.h || die "Removing GLU and GLUT headers failed."
-	# Glew includes
-	rm -f "${D}"/usr/include/GL/{glew,glxew,wglew}.h \
-		|| die "Removing glew includes failed."
-
-	# Move libGL and others from /usr/lib to /usr/lib/opengl/blah/lib
-	# because user can eselect desired GL provider.
-	ebegin "Moving libGL and friends for dynamic switching"
-		dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/{lib,extensions,include}
-		local x
-		for x in "${D}"/usr/$(get_libdir)/libGL.{la,a,so*}; do
-			if [ -f ${x} -o -L ${x} ]; then
-				mv -f "${x}" "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/lib \
-					|| die "Failed to move ${x}"
-			fi
-		done
-		for x in "${D}"/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}; do
-			if [ -f ${x} -o -L ${x} ]; then
-				mv -f "${x}" "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/include \
-					|| die "Failed to move ${x}"
-			fi
-		done
-	eend $?
-
-	dodir /usr/$(get_libdir)/dri
-	insinto "/usr/$(get_libdir)/dri/"
-	insopts -m0755
-	# install the gallium drivers we use
-	local gallium_drivers_files=( i915_dri.so nouveau_dri.so r300_dri.so r600_dri.so msm_dri.so swrast_dri.so )
-	for x in ${gallium_drivers_files[@]}; do
-		if [ -f "${S}/$(get_libdir)/gallium/${x}" ]; then
-			doins "${S}/$(get_libdir)/gallium/${x}"
-		fi
-	done
-
-	# install classic drivers we use
-	local classic_drivers_files=( i810_dri.so i965_dri.so nouveau_vieux_dri.so radeon_dri.so r200_dri.so )
-	for x in ${classic_drivers_files[@]}; do
-		if [ -f "${S}/$(get_libdir)/${x}" ]; then
-			doins "${S}/$(get_libdir)/${x}"
-		fi
-	done
-}
-
-multilib_src_install_all_cheets() {
-	# Set driconf option to enable S3TC hardware decompression
-	insinto "${ARC_VM_PREFIX}/vendor/etc/"
-	doins "${FILESDIR}"/drirc
-
-	# For documentation on the feature set represented by each XML file
-	# installed into /vendor/etc/permissions, see
-	# <https://developer.android.com/reference/android/content/pm/PackageManager.html>.
-	# For example XML files for each feature, see
-	# <https://android.googlesource.com/platform/frameworks/native/+/master/data/etc>.
-
-	# Install init files to advertise supported API versions.
-	insinto "${ARC_VM_PREFIX}/vendor/etc/init"
-
-	if use android_gles32; then
-		doins "${FILESDIR}/gles32/init.gpu.rc"
-	elif use android_gles31; then
-		doins "${FILESDIR}/gles31/init.gpu.rc"
-	elif use android_gles30; then
-		doins "${FILESDIR}/gles30/init.gpu.rc"
-	elif use android_gles2; then
-		doins "${FILESDIR}/gles2/init.gpu.rc"
-	fi
-
-	# Install vulkan related files.
-	# TODO(b/164152220): Enable vulkan for virtio gpu.
-	if use vulkan; then
-		einfo "Using android vulkan."
-		insinto "${ARC_VM_PREFIX}/vendor/etc/init"
-		doins "${FILESDIR}/vulkan.rc"
-
-		insinto "${ARC_VM_PREFIX}/vendor/etc/permissions"
-		if use video_cards_virgl; then
-			doins "${FILESDIR}/android.hardware.vulkan.version-1_1.xml"
-		else
-			doins "${FILESDIR}/android.hardware.vulkan.version-1_0_3.xml"
-		fi
-		if use video_cards_intel || use video_cards_virgl; then
-			doins "${FILESDIR}/android.hardware.vulkan.level-1.xml"
-		else
-			doins "${FILESDIR}/android.hardware.vulkan.level-0.xml"
-		fi
-	fi
-
-	if use android_vulkan_compute_0; then
-		einfo "Using android vulkan_compute_0."
-		insinto "${ARC_VM_PREFIX}/vendor/etc/permissions"
-		doins "${FILESDIR}/android.hardware.vulkan.compute-0.xml"
-	fi
-
-	# Install permission file to declare opengles aep support.
-	if use android_aep; then
-		einfo "Using android aep."
-		insinto "${ARC_VM_PREFIX}/vendor/etc/permissions"
-		doins "${FILESDIR}/android.hardware.opengles.aep.xml"
-	fi
-
-	# Install the dri header for arc-cros-gralloc
-	insinto "${ARC_VM_PREFIX}/vendor/include/GL"
-	doins -r "${S}/include/GL/internal"
-}
-
-multilib_src_install_all() {
-	if use cheets; then
-		multilib_src_install_all_cheets
-		return
-	fi
-
-	# Set driconf option to enable S3TC hardware decompression
-	insinto "/etc/"
-	doins "${FILESDIR}"/drirc
-}
-
-pkg_postinst() {
-	if use cheets; then
-		return
-	fi
-
-	# Switch to the xorg implementation.
-	echo
-	eselect opengl set --use-old ${OPENGL_DIR}
-}
-
-# $1 - VIDEO_CARDS flag
-# other args - names of DRI drivers to enable
-driver_enable() {
-	case $# in
-		# for enabling unconditionally
-		1)
-			DRI_DRIVERS+=("$1")
-			;;
-		*)
-			if use $1; then
-				shift
-				DRI_DRIVERS+=("$@")
-			fi
-			;;
-	esac
-}
-
-gallium_enable() {
-	case $# in
-		# for enabling unconditionally
-		1)
-			GALLIUM_DRIVERS+=("$1")
-			;;
-		*)
-			if use $1; then
-				shift
-				GALLIUM_DRIVERS+=("$@")
-			fi
-			;;
-	esac
-}
-
-vulkan_enable() {
-	case $# in
-		# for enabling unconditionally
-		1)
-			VULKAN_DRIVERS+=("$1")
-			;;
-		*)
-			if use $1; then
-				shift
-				VULKAN_DRIVERS+=("$@")
-			fi
-			;;
-	esac
-}
diff --git a/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.2-r7.ebuild b/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.2-r7.ebuild
new file mode 120000
index 0000000..f85a657
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.2-r7.ebuild
@@ -0,0 +1 @@
+arc-mesa-virgl-21.2.ebuild
\ No newline at end of file
diff --git a/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.2.ebuild b/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.2.ebuild
new file mode 100644
index 0000000..c9c5d74
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.2.ebuild
@@ -0,0 +1,438 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
+
+EAPI="6"
+
+CROS_WORKON_COMMIT="e2889fb2d14e5d440941bdc76b6588359d579323"
+CROS_WORKON_TREE="1972ec61637a2ec1152ac8d8fdb91c8df68f2df2"
+CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
+CROS_WORKON_LOCALNAME="arc-mesa-virgl"
+CROS_WORKON_EGIT_BRANCH="master"
+CROS_WORKON_MANUAL_UPREV="1"
+
+EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
+
+MESON_AUTO_DEPEND=no
+
+inherit base meson multilib-minimal flag-o-matic toolchain-funcs cros-workon arc-build
+
+OPENGL_DIR="xorg-x11"
+
+DESCRIPTION="OpenGL-like graphic library for Linux"
+HOMEPAGE="http://mesa3d.sourceforge.net/"
+
+# Most of the code is MIT/X11.
+# ralloc is LGPL-3
+# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
+LICENSE="MIT LGPL-3 SGI-B-2.0"
+SLOT="0"
+KEYWORDS="*"
+
+INTEL_CARDS="intel"
+RADEON_CARDS="amdgpu radeon"
+VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} llvmpipe mach64 mga nouveau powervr r128 savage sis vmware tdfx via freedreno virgl"
+for card in ${VIDEO_CARDS}; do
+	IUSE_VIDEO_CARDS+=" video_cards_${card}"
+done
+
+# TODO(b/160748345): Remove hardcoded ARC_PLATFORM_SDK_VERSION when fixed.
+ARC_PLATFORM_SDK_VERSION=28
+
+IUSE="${IUSE_VIDEO_CARDS}
+	android_aep -android_gles2 -android_gles30
+	+android_gles31 -android_gles32	-android_vulkan_compute_0
+	+cheets classic debug dri +egl +gallium
+	-gbm +gles1 +gles2 -llvm +nptl pic selinux +shared-glapi -vulkan -X xlib-glx
+	cheets_user cheets_user_64"
+
+# llvmpipe requires ARC++ _userdebug images, ARC++ _user images can't use it
+# (b/33072485, b/28802929).
+# Only allow one vulkan driver as they all write vulkan.cheets.so.
+REQUIRED_USE="
+	^^ ( android_gles2 android_gles30 android_gles31 android_gles32 )
+	android_aep? ( !android_gles2 !android_gles30 )
+	android_vulkan_compute_0? ( vulkan )
+	cheets? (
+		vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel ) )
+	)"
+
+DEPEND="cheets? (
+		>=x11-libs/arc-libdrm-2.4.82[${MULTILIB_USEDEP}]
+		llvm? ( sys-devel/arc-llvm:=[${MULTILIB_USEDEP}] )
+	)"
+
+RDEPEND="${DEPEND}"
+
+# It is slow without texrels, if someone wants slow
+# mesa without texrels +pic use is worth the shot
+QA_EXECSTACK="usr/lib*/opengl/xorg-x11/lib/libGL.so*"
+QA_WX_LOAD="usr/lib*/opengl/xorg-x11/lib/libGL.so*"
+
+# Think about: ggi, fbcon, no-X configs
+
+driver_list() {
+	local uniq_driver=($(printf "%s\n" "$@" | sort -u))
+	local IFS=,
+	echo "${uniq_driver[*]}"
+}
+
+pkg_setup() {
+	# workaround toc-issue wrt #386545
+	use ppc64 && append-flags -mminimal-toc
+
+	# Remove symlinks created by an earlier version so we don't have
+	# install conflicts.
+	# TODO: Delete this after June 2019, since everybody should have
+	# upgraded by then.
+	local d
+	for d in EGL GL GLES GLES2 GLES3 KHR; do
+		local replaced_link="${ROOT}${ARC_VM_PREFIX}/vendor/include/${d}"
+		if [[ -L "${replaced_link}" ]]; then
+			rm -f "${replaced_link}"
+		fi
+	done
+}
+
+src_prepare() {
+	# workaround for cros-workon not preserving git metadata
+	if [[ ${PV} == 9999* && "${CROS_WORKON_INPLACE}" != "1" ]]; then
+		echo "#define MESA_GIT_SHA1 \"git-deadbeef\"" > src/git_sha1.h
+	fi
+
+	# apply patches
+	if [[ ${PV} != 9999* && -n ${SRC_PATCHES} ]]; then
+		EPATCH_FORCE="yes" \
+		EPATCH_SOURCE="${WORKDIR}/patches" \
+		EPATCH_SUFFIX="patch" \
+		epatch
+	fi
+	# FreeBSD 6.* doesn't have posix_memalign().
+	if [[ ${CHOST} == *-freebsd6.* ]]; then
+		sed -i \
+			-e "s/-DHAVE_POSIX_MEMALIGN//" \
+			configure.ac || die
+	fi
+
+	# Restrict gles version based on USE flag. (See crbug.com/30202361, b/30202371, b/31041422, b:68023287)
+	if use android_gles32; then
+		einfo "Limiting android to gles32."
+		epatch "${FILESDIR}/gles32/0001-limit-gles-version.patch"
+	elif use android_gles31; then
+		einfo "Limiting android to gles31."
+		epatch "${FILESDIR}/gles31/0001-limit-gles-version.patch"
+	elif use android_gles30; then
+		einfo "Limiting android to gles30."
+		epatch "${FILESDIR}/gles30/0001-limit-gles-version.patch"
+	elif use android_gles2; then
+		einfo "Limiting android to gles2."
+		epatch "${FILESDIR}/gles2/0001-limit-gles-version.patch"
+	fi
+
+	epatch "${FILESDIR}"/FROMLIST-glcpp-Hack-to-handle-expressions-in-line-di.patch
+
+	epatch "${FILESDIR}"/UPSTREAM-venus-fix-all-missing-vn_object_base_fini.patch
+	epatch "${FILESDIR}"/UPSTREAM-venus-refactor-failure-path-for-sets-allocation.patch
+	epatch "${FILESDIR}"/UPSTREAM-venus-add-vn_descriptor_set_layout_init.patch
+	epatch "${FILESDIR}"/UPSTREAM-venus-descriptor-layout-to-track-more-binding-infos.patch
+	epatch "${FILESDIR}"/UPSTREAM-venus-layout-to-track-variable-descriptor-count-bind.patch
+	epatch "${FILESDIR}"/UPSTREAM-venus-descriptor-pool-to-track-pool-state.patch
+	epatch "${FILESDIR}"/UPSTREAM-venus-descriptor-set-to-track-descriptor-count-of-la.patch
+	epatch "${FILESDIR}"/UPSTREAM-venus-check-descriptor-allocations-against-pool-reso.patch
+	epatch "${FILESDIR}"/UPSTREAM-venus-conditionally-enable-async-descriptor-set-allo.patch
+	epatch "${FILESDIR}"/UPSTREAM-venus-workaround-a-blob_mem-mappable-size-check-issu.patch
+	epatch "${FILESDIR}"/UPSTREAM-venus-renderer-to-check-map-size-only-when-mappable.patch
+	epatch "${FILESDIR}"/UPSTREAM-venus-suggest-the-proper-sampler-ycbcr-model-convers.patch
+	epatch "${FILESDIR}"/BACKPORT-venus-set-maxMipLevels-to-1-for-ahb-images.patch
+	epatch "${FILESDIR}"/UPSTREAM-virgl-Add-an-option-to-disable-coherent.patch
+	default
+}
+
+src_configure() {
+	cros_optimize_package_for_speed
+
+	if use cheets; then
+		#
+		# cheets-specific overrides
+		#
+
+		arc-build-select-clang
+	fi
+
+	multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+	tc-getPROG PKG_CONFIG pkg-config
+
+	if use !gallium && use !classic && use !vulkan; then
+		ewarn "You enabled neither classic, gallium, nor vulkan "
+		ewarn "USE flags. No hardware drivers will be built."
+	fi
+
+	gallium_enable virgl
+
+	if use vulkan; then
+		vulkan_enable virtio-experimental
+	fi
+
+	export LLVM_CONFIG=${SYSROOT}/usr/bin/llvm-config-host
+	EGL_PLATFORM="surfaceless"
+
+	if use cheets; then
+		#
+		# cheets-specific overrides
+		#
+
+		MESA_PLATFORM_SDK_VERSION=${ARC_PLATFORM_SDK_VERSION}
+
+		# Use llvm-config coming from ARC++ build.
+		export LLVM_CONFIG="${ARC_SYSROOT}/build/bin/llvm-config-host"
+
+		# FIXME(tfiga): Possibly use flag?
+		EGL_PLATFORM="android"
+
+		# The AOSP build system defines the Make variable
+		# PLATFORM_SDK_VERSION, and Mesa's Android.mk files use it to
+		# define the macro ANDROID_API_LEVEL. Arc emulates that here.
+		if [[ -n "${ARC_PLATFORM_SDK_VERSION}" ]]; then
+			CPPFLAGS+=" -DANDROID_API_LEVEL=${ARC_PLATFORM_SDK_VERSION}"
+		fi
+
+		#
+		# end of arc-mesa specific overrides
+		#
+	fi
+
+	if ! use llvm; then
+		export LLVM_CONFIG="no"
+	fi
+
+	arc-build-create-cross-file
+
+	emesonargs+=(
+		$(use cheets && echo "--prefix=${ARC_VM_PREFIX}/vendor")
+		$(use cheets && echo "--sysconfdir=/system/vendor/etc")
+		$(use cheets && echo "-Ddri-search-path=/system/$(get_libdir)/dri:/system/vendor/$(get_libdir)/dri")
+		-Dgallium-va=false
+		-Dgallium-vdpau=false
+		-Dgallium-xvmc=false
+		-Dgallium-omx=disabled
+		-Dglx=disabled
+		-Ddri3=false
+		-Dgles-lib-suffix=_mesa
+		-Degl-lib-suffix=_mesa
+		$(meson_use llvm)
+		$(use egl && echo "-Dplatforms=${EGL_PLATFORM}")
+		$(meson_use egl)
+		$(meson_use gbm)
+		$(meson_use gles1)
+		$(meson_use gles2)
+		$(meson_use selinux)
+		$(meson_use shared-glapi)
+		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[@]}")
+		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[@]}")
+		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[@]}")
+		--buildtype $(usex debug debug release)
+		$(use cheets && echo "--cross-file=${ARC_CROSS_FILE}")
+		$(use cheets && echo "-Dplatform-sdk-version=${ARC_PLATFORM_SDK_VERSION}")
+	)
+
+	meson_src_configure
+}
+
+# The meson eclass exports src_compile but not multilib_src_compile. src_compile
+# gets overridden by multilib-minimal
+multilib_src_compile() {
+	meson_src_compile
+}
+
+multilib_src_install_cheets() {
+	exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)"
+	newexe ${BUILD_DIR}/src/mapi/shared-glapi/libglapi.so.0 libglapi.so.0
+
+	exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)/egl"
+	newexe ${BUILD_DIR}/src/egl/libEGL_mesa.so libEGL_mesa.so
+	newexe ${BUILD_DIR}/src/mapi/es1api/libGLESv1_CM_mesa.so libGLESv1_CM_mesa.so
+	newexe ${BUILD_DIR}/src/mapi/es2api/libGLESv2_mesa.so libGLESv2_mesa.so
+
+	exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)/dri"
+	newexe ${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so virtio_gpu_dri.so
+
+	if use vulkan; then
+		exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)/hw"
+		newexe "${BUILD_DIR}"/src/virtio/vulkan/libvulkan_virtio.so vulkan.cheets.so
+	fi
+}
+
+multilib_src_install() {
+	if use cheets; then
+		multilib_src_install_cheets
+		return
+	fi
+
+	meson_src_install
+
+	# Remove redundant headers
+	# GLU and GLUT
+	rm -f "${D}"/usr/include/GL/glu*.h || die "Removing GLU and GLUT headers failed."
+	# Glew includes
+	rm -f "${D}"/usr/include/GL/{glew,glxew,wglew}.h \
+		|| die "Removing glew includes failed."
+
+	# Move libGL and others from /usr/lib to /usr/lib/opengl/blah/lib
+	# because user can eselect desired GL provider.
+	ebegin "Moving libGL and friends for dynamic switching"
+		dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/{lib,extensions,include}
+		local x
+		for x in "${D}"/usr/$(get_libdir)/libGL.{la,a,so*}; do
+			if [ -f ${x} -o -L ${x} ]; then
+				mv -f "${x}" "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/lib \
+					|| die "Failed to move ${x}"
+			fi
+		done
+		for x in "${D}"/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}; do
+			if [ -f ${x} -o -L ${x} ]; then
+				mv -f "${x}" "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/include \
+					|| die "Failed to move ${x}"
+			fi
+		done
+	eend $?
+
+	dodir /usr/$(get_libdir)/dri
+	insinto "/usr/$(get_libdir)/dri/"
+	insopts -m0755
+	# install the gallium drivers we use
+	local gallium_drivers_files=( i915_dri.so nouveau_dri.so r300_dri.so r600_dri.so msm_dri.so swrast_dri.so )
+	for x in ${gallium_drivers_files[@]}; do
+		if [ -f "${S}/$(get_libdir)/gallium/${x}" ]; then
+			doins "${S}/$(get_libdir)/gallium/${x}"
+		fi
+	done
+
+	# install classic drivers we use
+	local classic_drivers_files=( i810_dri.so i965_dri.so nouveau_vieux_dri.so radeon_dri.so r200_dri.so )
+	for x in ${classic_drivers_files[@]}; do
+		if [ -f "${S}/$(get_libdir)/${x}" ]; then
+			doins "${S}/$(get_libdir)/${x}"
+		fi
+	done
+}
+
+multilib_src_install_all_cheets() {
+	# For documentation on the feature set represented by each XML file
+	# installed into /vendor/etc/permissions, see
+	# <https://developer.android.com/reference/android/content/pm/PackageManager.html>.
+	# For example XML files for each feature, see
+	# <https://android.googlesource.com/platform/frameworks/native/+/master/data/etc>.
+
+	# Install init files to advertise supported API versions.
+	insinto "${ARC_VM_PREFIX}/vendor/etc/init"
+
+	if use android_gles32; then
+		doins "${FILESDIR}/gles32/init.gpu.rc"
+	elif use android_gles31; then
+		doins "${FILESDIR}/gles31/init.gpu.rc"
+	elif use android_gles30; then
+		doins "${FILESDIR}/gles30/init.gpu.rc"
+	elif use android_gles2; then
+		doins "${FILESDIR}/gles2/init.gpu.rc"
+	fi
+
+	# Install vulkan related files.
+	# TODO(b/164152220): Enable vulkan for virtio gpu.
+	if use vulkan; then
+		einfo "Using android vulkan."
+		insinto "${ARC_VM_PREFIX}/vendor/etc/init"
+		doins "${FILESDIR}/vulkan.rc"
+
+		insinto "${ARC_VM_PREFIX}/vendor/etc/permissions"
+		doins "${FILESDIR}/android.hardware.vulkan.version-1_1.xml"
+		if use video_cards_intel; then
+			doins "${FILESDIR}/android.hardware.vulkan.level-1.xml"
+		else
+			doins "${FILESDIR}/android.hardware.vulkan.level-0.xml"
+		fi
+	fi
+
+	if use android_vulkan_compute_0; then
+		einfo "Using android vulkan_compute_0."
+		insinto "${ARC_VM_PREFIX}/vendor/etc/permissions"
+		doins "${FILESDIR}/android.hardware.vulkan.compute-0.xml"
+	fi
+
+	# Install permission file to declare opengles aep support.
+	if use android_aep; then
+		einfo "Using android aep."
+		insinto "${ARC_VM_PREFIX}/vendor/etc/permissions"
+		doins "${FILESDIR}/android.hardware.opengles.aep.xml"
+	fi
+
+	# Install the dri header for arc-cros-gralloc
+	insinto "${ARC_VM_PREFIX}/vendor/include/GL"
+	doins -r "${S}/include/GL/internal"
+}
+
+multilib_src_install_all() {
+	if use cheets; then
+		multilib_src_install_all_cheets
+		return
+	fi
+}
+
+pkg_postinst() {
+	if use cheets; then
+		return
+	fi
+
+	# Switch to the xorg implementation.
+	echo
+	eselect opengl set --use-old ${OPENGL_DIR}
+}
+
+# $1 - VIDEO_CARDS flag
+# other args - names of DRI drivers to enable
+driver_enable() {
+	case $# in
+		# for enabling unconditionally
+		1)
+			DRI_DRIVERS+=("$1")
+			;;
+		*)
+			if use $1; then
+				shift
+				DRI_DRIVERS+=("$@")
+			fi
+			;;
+	esac
+}
+
+gallium_enable() {
+	case $# in
+		# for enabling unconditionally
+		1)
+			GALLIUM_DRIVERS+=("$1")
+			;;
+		*)
+			if use $1; then
+				shift
+				GALLIUM_DRIVERS+=("$@")
+			fi
+			;;
+	esac
+}
+
+vulkan_enable() {
+	case $# in
+		# for enabling unconditionally
+		1)
+			VULKAN_DRIVERS+=("$1")
+			;;
+		*)
+			if use $1; then
+				shift
+				VULKAN_DRIVERS+=("$@")
+			fi
+			;;
+	esac
+}
diff --git a/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.ebuild b/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.ebuild
deleted file mode 100644
index 439578d..0000000
--- a/media-libs/arc-mesa-virgl/arc-mesa-virgl-21.ebuild
+++ /dev/null
@@ -1,510 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
-
-EAPI="6"
-
-CROS_WORKON_COMMIT="8ec046344b57f7041952f018f14ef626de94fe5d"
-CROS_WORKON_TREE="88bd3b1a95f9324ca0ef06e7bf3a025ce1de8f80"
-CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
-CROS_WORKON_LOCALNAME="arc-mesa-virgl"
-CROS_WORKON_EGIT_BRANCH="master"
-CROS_WORKON_MANUAL_UPREV="1"
-
-EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
-
-MESON_AUTO_DEPEND=no
-
-inherit base meson multilib-minimal flag-o-matic toolchain-funcs cros-workon arc-build
-
-OPENGL_DIR="xorg-x11"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="http://mesa3d.sourceforge.net/"
-
-# Most of the code is MIT/X11.
-# ralloc is LGPL-3
-# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
-LICENSE="MIT LGPL-3 SGI-B-2.0"
-SLOT="0"
-KEYWORDS="*"
-
-INTEL_CARDS="intel"
-RADEON_CARDS="amdgpu radeon"
-VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} llvmpipe mach64 mga nouveau powervr r128 savage sis vmware tdfx via freedreno virgl"
-for card in ${VIDEO_CARDS}; do
-	IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-# TODO(b/160748345): Remove hardcoded ARC_PLATFORM_SDK_VERSION when fixed.
-ARC_PLATFORM_SDK_VERSION=28
-
-IUSE="${IUSE_VIDEO_CARDS}
-	android_aep -android_gles2 -android_gles30
-	+android_gles31 -android_gles32	-android_vulkan_compute_0
-	+cheets classic debug dri +egl +gallium
-	-gbm +gles1 +gles2 -llvm +nptl pic selinux +shared-glapi -vulkan -X xlib-glx
-	cheets_user cheets_user_64"
-
-# llvmpipe requires ARC++ _userdebug images, ARC++ _user images can't use it
-# (b/33072485, b/28802929).
-# Only allow one vulkan driver as they all write vulkan.cheets.so.
-REQUIRED_USE="
-	^^ ( android_gles2 android_gles30 android_gles31 android_gles32 )
-	android_aep? ( !android_gles2 !android_gles30 )
-	android_vulkan_compute_0? ( vulkan )
-	cheets? (
-		vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel ) )
-		video_cards_amdgpu? ( llvm )
-		video_cards_llvmpipe? ( !cheets_user !cheets_user_64 )
-	)"
-
-DEPEND="cheets? (
-		>=x11-libs/arc-libdrm-2.4.82[${MULTILIB_USEDEP}]
-		llvm? ( sys-devel/arc-llvm:=[${MULTILIB_USEDEP}] )
-		video_cards_amdgpu? (
-			dev-libs/arc-libelf[${MULTILIB_USEDEP}]
-		)
-	)"
-
-RDEPEND="${DEPEND}"
-
-# It is slow without texrels, if someone wants slow
-# mesa without texrels +pic use is worth the shot
-QA_EXECSTACK="usr/lib*/opengl/xorg-x11/lib/libGL.so*"
-QA_WX_LOAD="usr/lib*/opengl/xorg-x11/lib/libGL.so*"
-
-# Think about: ggi, fbcon, no-X configs
-
-driver_list() {
-	local uniq_driver=($(printf "%s\n" "$@" | sort -u))
-	local IFS=,
-	echo "${uniq_driver[*]}"
-}
-
-pkg_setup() {
-	# workaround toc-issue wrt #386545
-	use ppc64 && append-flags -mminimal-toc
-
-	# Remove symlinks created by an earlier version so we don't have
-	# install conflicts.
-	# TODO: Delete this after June 2019, since everybody should have
-	# upgraded by then.
-	local d
-	for d in EGL GL GLES GLES2 GLES3 KHR; do
-		local replaced_link="${ROOT}${ARC_VM_PREFIX}/vendor/include/${d}"
-		if [[ -L "${replaced_link}" ]]; then
-			rm -f "${replaced_link}"
-		fi
-	done
-}
-
-src_prepare() {
-	# workaround for cros-workon not preserving git metadata
-	if [[ ${PV} == 9999* && "${CROS_WORKON_INPLACE}" != "1" ]]; then
-		echo "#define MESA_GIT_SHA1 \"git-deadbeef\"" > src/git_sha1.h
-	fi
-
-	# apply patches
-	if [[ ${PV} != 9999* && -n ${SRC_PATCHES} ]]; then
-		EPATCH_FORCE="yes" \
-		EPATCH_SOURCE="${WORKDIR}/patches" \
-		EPATCH_SUFFIX="patch" \
-		epatch
-	fi
-	# FreeBSD 6.* doesn't have posix_memalign().
-	if [[ ${CHOST} == *-freebsd6.* ]]; then
-		sed -i \
-			-e "s/-DHAVE_POSIX_MEMALIGN//" \
-			configure.ac || die
-	fi
-
-	# Restrict gles version based on USE flag. (See crbug.com/30202361, b/30202371, b/31041422, b:68023287)
-	if use android_gles32; then
-		einfo "Limiting android to gles32."
-		epatch "${FILESDIR}/gles32/0001-limit-gles-version.patch"
-	elif use android_gles31; then
-		einfo "Limiting android to gles31."
-		epatch "${FILESDIR}/gles31/0001-limit-gles-version.patch"
-	elif use android_gles30; then
-		einfo "Limiting android to gles30."
-		epatch "${FILESDIR}/gles30/0001-limit-gles-version.patch"
-	elif use android_gles2; then
-		einfo "Limiting android to gles2."
-		epatch "${FILESDIR}/gles2/0001-limit-gles-version.patch"
-	fi
-
-	epatch "${FILESDIR}"/FROMLIST-glcpp-Hack-to-handle-expressions-in-line-di.patch
-
-	epatch "${FILESDIR}"/FROMLIST-egl-android-Increase-preferred-buffer-count-to-4.patch
-
-	epatch "${FILESDIR}"/CHROMIUM-hack-Override-GL_RENDERER-for-kindle-app.patch
-
-	epatch "${FILESDIR}"/UPSTREAM-virgl-Don-t-destroy-resource-while-it-s-in-use.patch
-
-	epatch "${FILESDIR}"/UPSTREAM-virgl-add-astc-2d-compressed-formats.patch
-
-	# This is actually a reland of a reverted patch.
-	# See https://gitlab.freedesktop.org/virgl/virglrenderer/-/issues/216
-	epatch "${FILESDIR}"/UPSTREAM-virgl-fix-BGRA-emulation-artifacts-during-window-res.patch
-
-	epatch "${FILESDIR}"/UPSTREAM-virgl-do-not-use-winsys-info-for-guest-storage-of-cl.patch
-
-	# https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10685
-	epatch "${FILESDIR}"/BACKPORT-gallium-st-add-a-back-buffer-fallback-for-front-rend.patch
-	epatch "${FILESDIR}"/UPSTREAM-gallium-dri-implement-EGL_KHR_mutable_render_buffer.patch
-	epatch "${FILESDIR}"/UPSTREAM-egl-android-check-front-rendering-support-for-cros-g.patch
-	# https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11008
-	epatch "${FILESDIR}"/UPSTREAM-virgl-Fix-the-leak-of-hw_res-used-as-fence.patch
-
-	default
-}
-
-src_configure() {
-	cros_optimize_package_for_speed
-
-	if use cheets; then
-		#
-		# cheets-specific overrides
-		#
-
-		arc-build-select-clang
-	fi
-
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	tc-getPROG PKG_CONFIG pkg-config
-
-	if use !gallium && use !classic; then
-		ewarn "You enabled neither classic nor gallium USE flags. No hardware"
-		ewarn "drivers will be built."
-	fi
-
-	if use classic; then
-	# Configurable DRI drivers
-		# Intel code
-		driver_enable video_cards_intel i965
-
-		# Nouveau code
-		driver_enable video_cards_nouveau nouveau
-
-		# ATI code
-		driver_enable video_cards_radeon r100 r200
-	fi
-
-	if use gallium; then
-	# Configurable gallium drivers
-		gallium_enable video_cards_llvmpipe swrast
-
-		# Nouveau code
-		gallium_enable video_cards_nouveau nouveau
-
-		# ATI code
-		gallium_enable video_cards_radeon r300 r600
-		gallium_enable video_cards_amdgpu radeonsi
-
-		# Freedreno code
-		gallium_enable video_cards_freedreno freedreno
-
-		gallium_enable video_cards_virgl virgl
-	fi
-
-	if use vulkan; then
-		vulkan_enable video_cards_amdgpu amd
-		vulkan_enable video_cards_intel intel
-	fi
-
-	export LLVM_CONFIG=${SYSROOT}/usr/bin/llvm-config-host
-	EGL_PLATFORM="surfaceless"
-
-	if use cheets; then
-		#
-		# cheets-specific overrides
-		#
-
-		MESA_PLATFORM_SDK_VERSION=${ARC_PLATFORM_SDK_VERSION}
-
-		# Use llvm-config coming from ARC++ build.
-		export LLVM_CONFIG="${ARC_SYSROOT}/build/bin/llvm-config-host"
-
-		# FIXME(tfiga): Possibly use flag?
-		EGL_PLATFORM="android"
-
-		# The AOSP build system defines the Make variable
-		# PLATFORM_SDK_VERSION, and Mesa's Android.mk files use it to
-		# define the macro ANDROID_API_LEVEL. Arc emulates that here.
-		if [[ -n "${ARC_PLATFORM_SDK_VERSION}" ]]; then
-			CPPFLAGS+=" -DANDROID_API_LEVEL=${ARC_PLATFORM_SDK_VERSION}"
-		fi
-
-		#
-		# end of arc-mesa specific overrides
-		#
-	fi
-
-	if ! use llvm; then
-		export LLVM_CONFIG="no"
-	fi
-
-	arc-build-create-cross-file
-
-	emesonargs+=(
-		$(use cheets && echo "--prefix=${ARC_VM_PREFIX}/vendor")
-		$(use cheets && echo "--sysconfdir=/system/vendor/etc")
-		$(use cheets && echo "-Ddri-search-path=/system/$(get_libdir)/dri:/system/vendor/$(get_libdir)/dri")
-		-Dgallium-va=false
-		-Dgallium-vdpau=false
-		-Dgallium-xvmc=false
-		-Dgallium-omx=disabled
-		-Dglx=disabled
-		-Ddri3=false
-		-Dgles-lib-suffix=_mesa
-		-Degl-lib-suffix=_mesa
-		$(meson_use llvm)
-		$(use egl && echo "-Dplatforms=${EGL_PLATFORM}")
-		$(meson_use egl)
-		$(meson_use gbm)
-		$(meson_use gles1)
-		$(meson_use gles2)
-		$(meson_use selinux)
-		$(meson_use shared-glapi)
-		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[@]}")
-		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[@]}")
-		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[@]}")
-		--buildtype $(usex debug debug release)
-		$(use cheets && echo "--cross-file=${ARC_CROSS_FILE}")
-		$(use cheets && echo "-Dplatform-sdk-version=${ARC_PLATFORM_SDK_VERSION}")
-	)
-
-	meson_src_configure
-}
-
-# The meson eclass exports src_compile but not multilib_src_compile. src_compile
-# gets overridden by multilib-minimal
-multilib_src_compile() {
-	meson_src_compile
-}
-
-multilib_src_install_cheets() {
-	exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)"
-	newexe ${BUILD_DIR}/src/mapi/shared-glapi/libglapi.so.0 libglapi.so.0
-
-	exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)/egl"
-	newexe ${BUILD_DIR}/src/egl/libEGL_mesa.so libEGL_mesa.so
-	newexe ${BUILD_DIR}/src/mapi/es1api/libGLESv1_CM_mesa.so libGLESv1_CM_mesa.so
-	newexe ${BUILD_DIR}/src/mapi/es2api/libGLESv2_mesa.so libGLESv2_mesa.so
-
-	exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)/dri"
-	if use classic && use video_cards_intel; then
-		newexe ${BUILD_DIR}/src/mesa/drivers/dri/libmesa_dri_drivers.so i965_dri.so
-	fi
-	if use gallium; then
-		if use video_cards_llvmpipe; then
-			newexe ${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so kms_swrast_dri.so
-		fi
-		if use video_cards_amdgpu; then
-			newexe ${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so radeonsi_dri.so
-		fi
-		if use video_cards_virgl; then
-			newexe ${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so virtio_gpu_dri.so
-		fi
-	fi
-
-	if use vulkan; then
-		exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)/hw"
-		if use video_cards_amdgpu; then
-			newexe ${BUILD_DIR}/src/amd/vulkan/libvulkan_radeon.so vulkan.cheets.so
-		fi
-		if use video_cards_intel; then
-			newexe ${BUILD_DIR}/src/intel/vulkan/libvulkan_intel.so vulkan.cheets.so
-		fi
-	fi
-}
-
-multilib_src_install() {
-	if use cheets; then
-		multilib_src_install_cheets
-		return
-	fi
-
-	meson_src_install
-
-	# Remove redundant headers
-	# GLU and GLUT
-	rm -f "${D}"/usr/include/GL/glu*.h || die "Removing GLU and GLUT headers failed."
-	# Glew includes
-	rm -f "${D}"/usr/include/GL/{glew,glxew,wglew}.h \
-		|| die "Removing glew includes failed."
-
-	# Move libGL and others from /usr/lib to /usr/lib/opengl/blah/lib
-	# because user can eselect desired GL provider.
-	ebegin "Moving libGL and friends for dynamic switching"
-		dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/{lib,extensions,include}
-		local x
-		for x in "${D}"/usr/$(get_libdir)/libGL.{la,a,so*}; do
-			if [ -f ${x} -o -L ${x} ]; then
-				mv -f "${x}" "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/lib \
-					|| die "Failed to move ${x}"
-			fi
-		done
-		for x in "${D}"/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}; do
-			if [ -f ${x} -o -L ${x} ]; then
-				mv -f "${x}" "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/include \
-					|| die "Failed to move ${x}"
-			fi
-		done
-	eend $?
-
-	dodir /usr/$(get_libdir)/dri
-	insinto "/usr/$(get_libdir)/dri/"
-	insopts -m0755
-	# install the gallium drivers we use
-	local gallium_drivers_files=( i915_dri.so nouveau_dri.so r300_dri.so r600_dri.so msm_dri.so swrast_dri.so )
-	for x in ${gallium_drivers_files[@]}; do
-		if [ -f "${S}/$(get_libdir)/gallium/${x}" ]; then
-			doins "${S}/$(get_libdir)/gallium/${x}"
-		fi
-	done
-
-	# install classic drivers we use
-	local classic_drivers_files=( i810_dri.so i965_dri.so nouveau_vieux_dri.so radeon_dri.so r200_dri.so )
-	for x in ${classic_drivers_files[@]}; do
-		if [ -f "${S}/$(get_libdir)/${x}" ]; then
-			doins "${S}/$(get_libdir)/${x}"
-		fi
-	done
-}
-
-multilib_src_install_all_cheets() {
-	# Set driconf option to enable S3TC hardware decompression
-	insinto "${ARC_VM_PREFIX}/vendor/etc/"
-	doins "${FILESDIR}"/drirc
-
-	# For documentation on the feature set represented by each XML file
-	# installed into /vendor/etc/permissions, see
-	# <https://developer.android.com/reference/android/content/pm/PackageManager.html>.
-	# For example XML files for each feature, see
-	# <https://android.googlesource.com/platform/frameworks/native/+/master/data/etc>.
-
-	# Install init files to advertise supported API versions.
-	insinto "${ARC_VM_PREFIX}/vendor/etc/init"
-
-	if use android_gles32; then
-		doins "${FILESDIR}/gles32/init.gpu.rc"
-	elif use android_gles31; then
-		doins "${FILESDIR}/gles31/init.gpu.rc"
-	elif use android_gles30; then
-		doins "${FILESDIR}/gles30/init.gpu.rc"
-	elif use android_gles2; then
-		doins "${FILESDIR}/gles2/init.gpu.rc"
-	fi
-
-	# Install vulkan related files.
-	# TODO(b/164152220): Enable vulkan for virtio gpu.
-	if use vulkan; then
-		einfo "Using android vulkan."
-		insinto "${ARC_VM_PREFIX}/vendor/etc/init"
-		doins "${FILESDIR}/vulkan.rc"
-
-		insinto "${ARC_VM_PREFIX}/vendor/etc/permissions"
-
-		if use video_cards_intel; then
-			doins "${FILESDIR}/android.hardware.vulkan.level-1.xml"
-		else
-			doins "${FILESDIR}/android.hardware.vulkan.level-0.xml"
-		fi
-
-		if use video_cards_intel; then
-			doins "${FILESDIR}/android.hardware.vulkan.version-1_1.xml"
-		else
-			doins "${FILESDIR}/android.hardware.vulkan.version-1_0_3.xml"
-		fi
-	fi
-
-	if use android_vulkan_compute_0; then
-		einfo "Using android vulkan_compute_0."
-		insinto "${ARC_VM_PREFIX}/vendor/etc/permissions"
-		doins "${FILESDIR}/android.hardware.vulkan.compute-0.xml"
-	fi
-
-	# Install permission file to declare opengles aep support.
-	if use android_aep; then
-		einfo "Using android aep."
-		insinto "${ARC_VM_PREFIX}/vendor/etc/permissions"
-		doins "${FILESDIR}/android.hardware.opengles.aep.xml"
-	fi
-
-	# Install the dri header for arc-cros-gralloc
-	insinto "${ARC_VM_PREFIX}/vendor/include/GL"
-	doins -r "${S}/include/GL/internal"
-}
-
-multilib_src_install_all() {
-	if use cheets; then
-		multilib_src_install_all_cheets
-		return
-	fi
-
-	# Set driconf option to enable S3TC hardware decompression
-	insinto "/etc/"
-	doins "${FILESDIR}"/drirc
-}
-
-pkg_postinst() {
-	if use cheets; then
-		return
-	fi
-
-	# Switch to the xorg implementation.
-	echo
-	eselect opengl set --use-old ${OPENGL_DIR}
-}
-
-# $1 - VIDEO_CARDS flag
-# other args - names of DRI drivers to enable
-driver_enable() {
-	case $# in
-		# for enabling unconditionally
-		1)
-			DRI_DRIVERS+=("$1")
-			;;
-		*)
-			if use $1; then
-				shift
-				DRI_DRIVERS+=("$@")
-			fi
-			;;
-	esac
-}
-
-gallium_enable() {
-	case $# in
-		# for enabling unconditionally
-		1)
-			GALLIUM_DRIVERS+=("$1")
-			;;
-		*)
-			if use $1; then
-				shift
-				GALLIUM_DRIVERS+=("$@")
-			fi
-			;;
-	esac
-}
-
-vulkan_enable() {
-	case $# in
-		# for enabling unconditionally
-		1)
-			VULKAN_DRIVERS+=("$1")
-			;;
-		*)
-			if use $1; then
-				shift
-				VULKAN_DRIVERS+=("$@")
-			fi
-			;;
-	esac
-}
diff --git a/media-libs/arc-mesa-virgl/arc-mesa-virgl-9999.ebuild b/media-libs/arc-mesa-virgl/arc-mesa-virgl-9999.ebuild
index 4968f5d..78318c0 100644
--- a/media-libs/arc-mesa-virgl/arc-mesa-virgl-9999.ebuild
+++ b/media-libs/arc-mesa-virgl/arc-mesa-virgl-9999.ebuild
@@ -51,17 +51,12 @@
 	android_aep? ( !android_gles2 !android_gles30 )
 	android_vulkan_compute_0? ( vulkan )
 	cheets? (
-		vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel video_cards_virgl ) )
-		video_cards_amdgpu? ( llvm )
-		video_cards_llvmpipe? ( !cheets_user !cheets_user_64 )
+		vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel ) )
 	)"
 
 DEPEND="cheets? (
 		>=x11-libs/arc-libdrm-2.4.82[${MULTILIB_USEDEP}]
 		llvm? ( sys-devel/arc-llvm:=[${MULTILIB_USEDEP}] )
-		video_cards_amdgpu? (
-			dev-libs/arc-libelf[${MULTILIB_USEDEP}]
-		)
 	)"
 
 RDEPEND="${DEPEND}"
@@ -158,41 +153,10 @@
 		ewarn "USE flags. No hardware drivers will be built."
 	fi
 
-	if use classic; then
-	# Configurable DRI drivers
-		driver_enable swrast
-
-		# Intel code
-		driver_enable video_cards_intel i965
-
-		# Nouveau code
-		driver_enable video_cards_nouveau nouveau
-
-		# ATI code
-		driver_enable video_cards_radeon r100 r200
-	fi
-
-	if use gallium; then
-	# Configurable gallium drivers
-		gallium_enable video_cards_llvmpipe swrast
-
-		# Nouveau code
-		gallium_enable video_cards_nouveau nouveau
-
-		# ATI code
-		gallium_enable video_cards_radeon r300 r600
-		gallium_enable video_cards_amdgpu radeonsi
-
-		# Freedreno code
-		gallium_enable video_cards_freedreno freedreno
-
-		gallium_enable video_cards_virgl virgl
-	fi
+	gallium_enable virgl
 
 	if use vulkan; then
-		vulkan_enable video_cards_amdgpu amd
-		vulkan_enable video_cards_intel intel
-		vulkan_enable video_cards_virgl virtio-experimental
+		vulkan_enable virtio-experimental
 	fi
 
 	export LLVM_CONFIG=${SYSROOT}/usr/bin/llvm-config-host
@@ -276,32 +240,11 @@
 	newexe ${BUILD_DIR}/src/mapi/es2api/libGLESv2_mesa.so libGLESv2_mesa.so
 
 	exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)/dri"
-	if use classic && use video_cards_intel; then
-		newexe ${BUILD_DIR}/src/mesa/drivers/dri/libmesa_dri_drivers.so i965_dri.so
-	fi
-	if use gallium; then
-		if use video_cards_llvmpipe; then
-			newexe ${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so kms_swrast_dri.so
-		fi
-		if use video_cards_amdgpu; then
-			newexe ${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so radeonsi_dri.so
-		fi
-		if use video_cards_virgl; then
-			newexe ${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so virtio_gpu_dri.so
-		fi
-	fi
+	newexe ${BUILD_DIR}/src/gallium/targets/dri/libgallium_dri.so virtio_gpu_dri.so
 
 	if use vulkan; then
 		exeinto "${ARC_VM_PREFIX}/vendor/$(get_libdir)/hw"
-		if use video_cards_amdgpu; then
-			newexe ${BUILD_DIR}/src/amd/vulkan/libvulkan_radeon.so vulkan.cheets.so
-		fi
-		if use video_cards_intel; then
-			newexe ${BUILD_DIR}/src/intel/vulkan/libvulkan_intel.so vulkan.cheets.so
-		fi
-		if use video_cards_virgl; then
-			newexe "${BUILD_DIR}"/src/virtio/vulkan/libvulkan_virtio.so vulkan.cheets.so
-		fi
+		newexe "${BUILD_DIR}"/src/virtio/vulkan/libvulkan_virtio.so vulkan.cheets.so
 	fi
 }
 
@@ -360,10 +303,6 @@
 }
 
 multilib_src_install_all_cheets() {
-	# Set driconf option to enable S3TC hardware decompression
-	insinto "${ARC_VM_PREFIX}/vendor/etc/"
-	doins "${FILESDIR}"/drirc
-
 	# For documentation on the feature set represented by each XML file
 	# installed into /vendor/etc/permissions, see
 	# <https://developer.android.com/reference/android/content/pm/PackageManager.html>.
@@ -389,12 +328,8 @@
 		doins "${FILESDIR}/vulkan.rc"
 
 		insinto "${ARC_VM_PREFIX}/vendor/etc/permissions"
-		if use video_cards_virgl; then
-			doins "${FILESDIR}/android.hardware.vulkan.version-1_1.xml"
-		else
-			doins "${FILESDIR}/android.hardware.vulkan.version-1_0_3.xml"
-		fi
-		if use video_cards_intel || use video_cards_virgl; then
+		doins "${FILESDIR}/android.hardware.vulkan.version-1_1.xml"
+		if use video_cards_intel; then
 			doins "${FILESDIR}/android.hardware.vulkan.level-1.xml"
 		else
 			doins "${FILESDIR}/android.hardware.vulkan.level-0.xml"
@@ -424,10 +359,6 @@
 		multilib_src_install_all_cheets
 		return
 	fi
-
-	# Set driconf option to enable S3TC hardware decompression
-	insinto "/etc/"
-	doins "${FILESDIR}"/drirc
 }
 
 pkg_postinst() {
diff --git a/media-libs/arc-mesa-virgl/files/BACKPORT-egl-android-only-apply-front-rendering-usage-in-shar.patch b/media-libs/arc-mesa-virgl/files/BACKPORT-egl-android-only-apply-front-rendering-usage-in-shar.patch
new file mode 100644
index 0000000..3240f33
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/BACKPORT-egl-android-only-apply-front-rendering-usage-in-shar.patch
@@ -0,0 +1,101 @@
+From 0737549683576d8ccdda7c6e5eef0833e8615eae Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Thu, 8 Jul 2021 19:39:58 +0000
+Subject: [PATCH] egl/android: only apply front rendering usage in shared
+ buffer mode
+
+When EGL_KHR_mutable_render_buffer extension is enabled, advertised
+configs unconditionally include EGL_MUTABLE_RENDER_BUFFER_BIT_KHR bit.
+
+However, f61337b5 starts requesting front rendering usage bit when
+EGL_MUTABLE_RENDER_BUFFER_BIT_KHR is seen on the SurfaceType, which
+essentially forces linear usage on all winsys BOs for gallium dri and
+i965 drivers on Android when cros gralloc is in use.
+
+This patch dynamically appends or strips the front rendering usage bit
+depends on whether EGL_RENDER_BUFFER is EGL_SINGLE_BUFFER or
+EGL_BACK_BUFFER. The next dequeuBuffer call will switch the buffer
+sharing mode while re-allocating winsys BOs given the updated gralloc
+usage bits if necessary.
+
+v2: handle ANativeWindow_setUsage on error
+
+Fixes: f61337b5 ("egl/android: check front rendering support for cros gralloc")
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Rob Clark <robdclark@chromium.org> (v1)
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11787>
+---
+ src/egl/drivers/dri2/egl_dri2.h         |  1 +
+ src/egl/drivers/dri2/platform_android.c | 25 +++++++++++++++++++++----
+ 2 files changed, 22 insertions(+), 4 deletions(-)
+
+diff --git a/src/egl/drivers/dri2/egl_dri2.h b/src/egl/drivers/dri2/egl_dri2.h
+index 7d328040c2c..58bfb79a7e9 100644
+--- a/src/egl/drivers/dri2/egl_dri2.h
++++ b/src/egl/drivers/dri2/egl_dri2.h
+@@ -340,6 +340,7 @@ struct dri2_egl_surface
+       struct ANativeWindowBuffer *buffer;
+       int age;
+    } *color_buffers, *back;
++   uint32_t gralloc_usage;
+ #endif
+ 
+    /* surfaceless and device */
+diff --git a/src/egl/drivers/dri2/platform_android.c b/src/egl/drivers/dri2/platform_android.c
+index 84431e5a1ef..1175fb17a18 100644
+--- a/src/egl/drivers/dri2/platform_android.c
++++ b/src/egl/drivers/dri2/platform_android.c
+@@ -528,6 +528,7 @@ static bool
+ droid_set_shared_buffer_mode(_EGLDisplay *disp, _EGLSurface *surf, bool mode)
+ {
+ #if ANDROID_API_LEVEL >= 24
++   struct dri2_egl_display *dri2_dpy = dri2_egl_display(disp);
+    struct dri2_egl_surface *dri2_surf = dri2_egl_surface(surf);
+    struct ANativeWindow *window = dri2_surf->window;
+ 
+@@ -542,6 +543,18 @@ droid_set_shared_buffer_mode(_EGLDisplay *disp, _EGLSurface *surf, bool mode)
+       return false;
+    }
+ 
++   if (mode)
++      dri2_surf->gralloc_usage |= dri2_dpy->front_rendering_usage;
++   else
++      dri2_surf->gralloc_usage &= ~dri2_dpy->front_rendering_usage;
++
++   if (ANativeWindow_setUsage(window, dri2_surf->gralloc_usage)) {
++      _eglLog(_EGL_WARNING,
++              "failed ANativeWindow_setUsage(window=%p, usage=%u)", window,
++              dri2_surf->gralloc_usage);
++      return false;
++   }
++
+    return true;
+ #else
+    _eglLog(_EGL_FATAL, "%s:%d: internal error: unreachable", __FILE__, __LINE__);
+@@ -630,14 +643,18 @@ droid_create_surface(_EGLDisplay *disp, EGLint type, _EGLConfig *conf,
+       window->query(window, NATIVE_WINDOW_WIDTH, &dri2_surf->base.Width);
+       window->query(window, NATIVE_WINDOW_HEIGHT, &dri2_surf->base.Height);
+ 
+-      uint32_t usage = strcmp(dri2_dpy->driver_name, "kms_swrast") == 0
++      dri2_surf->gralloc_usage =
++         strcmp(dri2_dpy->driver_name, "kms_swrast") == 0
+             ? GRALLOC_USAGE_SW_READ_OFTEN | GRALLOC_USAGE_SW_WRITE_OFTEN
+             : GRALLOC_USAGE_HW_RENDER;
+ 
+-      if (conf->SurfaceType & EGL_MUTABLE_RENDER_BUFFER_BIT_KHR)
+-         usage |= dri2_dpy->front_rendering_usage;
++      if (dri2_surf->base.ActiveRenderBuffer == EGL_SINGLE_BUFFER)
++         dri2_surf->gralloc_usage |= dri2_dpy->front_rendering_usage;
+ 
+-      native_window_set_usage(window, usage);
++      if (native_window_set_usage(window, dri2_surf->gralloc_usage)) {
++         _eglError(EGL_BAD_NATIVE_WINDOW, "droid_create_surface");
++         goto cleanup_surface;
++      }
+    }
+ 
+    config = dri2_get_dri_config(dri2_conf, type,
+-- 
+2.32.0.402.g57bb445576-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/BACKPORT-venus-set-maxMipLevels-to-1-for-ahb-images.patch b/media-libs/arc-mesa-virgl/files/BACKPORT-venus-set-maxMipLevels-to-1-for-ahb-images.patch
new file mode 100644
index 0000000..294fac1
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/BACKPORT-venus-set-maxMipLevels-to-1-for-ahb-images.patch
@@ -0,0 +1,34 @@
+From 63424306dddf923997d2163c1a51525fd7f171f8 Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Tue, 31 Aug 2021 20:04:41 +0000
+Subject: [PATCH] venus: set maxMipLevels to 1 for ahb images
+
+Fixes: dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.*
+
+Cc: 21.2.2 mesa-stable
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Ryan Neph <ryanneph@google.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12639>
+---
+ src/virtio/vulkan/vn_device.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/virtio/vulkan/vn_device.c b/src/virtio/vulkan/vn_device.c
+index c99eaf8e802..83cf08bd2ea 100644
+--- a/src/virtio/vulkan/vn_device.c
++++ b/src/virtio/vulkan/vn_device.c
+@@ -2902,6 +2902,9 @@ vn_GetPhysicalDeviceImageFormatProperties2(
+          ahb_usage->androidHardwareBufferUsage = vn_android_get_ahb_usage(
+             pImageFormatInfo->usage, pImageFormatInfo->flags);
+       }
++
++      /* AHBs with mipmap usage will ignore this property */
++      pImageFormatProperties->imageFormatProperties.maxMipLevels = 1;
+    } else {
+       mem_props->compatibleHandleTypes = supported_handle_types;
+       mem_props->exportFromImportedHandleTypes =
+-- 
+2.33.0.153.gba50c8fa24-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-frontend-dri-Expose-RGB-AX-_SRGB-as-well.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-frontend-dri-Expose-RGB-AX-_SRGB-as-well.patch
new file mode 100644
index 0000000..52ab599
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-frontend-dri-Expose-RGB-AX-_SRGB-as-well.patch
@@ -0,0 +1,59 @@
+From f70c50b643c7edac04d25eb89bb847eb27ed89d5 Mon Sep 17 00:00:00 2001
+From: Rob Clark <robdclark@chromium.org>
+Date: Mon, 11 Jan 2021 16:12:10 -0800
+Subject: [PATCH] frontend/dri: Expose RGB[AX]_SRGB as well
+
+platform_android prefers RGB[AX] over BGR[AX] to avoid buggyness with
+older android versions.  But we need to include the corresponding SRGB
+formats as well.
+
+Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2888
+Signed-off-by: Rob Clark <robdclark@chromium.org>
+Acked-by: Eric Anholt <eric@anholt.net>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8452>
+---
+ src/gallium/frontends/dri/dri_screen.c | 8 ++++++++
+ src/mesa/drivers/dri/common/utils.c    | 1 +
+ 2 files changed, 9 insertions(+)
+
+diff --git a/src/gallium/frontends/dri/dri_screen.c b/src/gallium/frontends/dri/dri_screen.c
+index 20ee86f52b7..87b4f3f8533 100644
+--- a/src/gallium/frontends/dri/dri_screen.c
++++ b/src/gallium/frontends/dri/dri_screen.c
+@@ -163,6 +163,12 @@ dri_fill_in_modes(struct dri_screen *screen)
+ 
+       /* Required by Android, for HAL_PIXEL_FORMAT_RGBX_8888. */
+       MESA_FORMAT_R8G8B8X8_UNORM,
++
++      /* Required by Android, for HAL_PIXEL_FORMAT_RGBA_8888. */
++      MESA_FORMAT_R8G8B8A8_SRGB,
++
++      /* Required by Android, for HAL_PIXEL_FORMAT_RGBX_8888. */
++      MESA_FORMAT_R8G8B8X8_SRGB,
+    };
+    static const enum pipe_format pipe_formats[] = {
+       PIPE_FORMAT_B10G10R10A2_UNORM,
+@@ -178,6 +184,8 @@ dri_fill_in_modes(struct dri_screen *screen)
+       PIPE_FORMAT_R16G16B16X16_FLOAT,
+       PIPE_FORMAT_RGBA8888_UNORM,
+       PIPE_FORMAT_RGBX8888_UNORM,
++      PIPE_FORMAT_RGBA8888_SRGB,
++      PIPE_FORMAT_RGBX8888_SRGB,
+    };
+    mesa_format format;
+    __DRIconfig **configs = NULL;
+diff --git a/src/mesa/drivers/dri/common/utils.c b/src/mesa/drivers/dri/common/utils.c
+index 0fdca2d9d84..58671d6935a 100644
+--- a/src/mesa/drivers/dri/common/utils.c
++++ b/src/mesa/drivers/dri/common/utils.c
+@@ -255,6 +255,7 @@ driCreateConfigs(mesa_format format,
+       shifts = format_table[5].shifts;
+       break;
+    case MESA_FORMAT_R8G8B8X8_UNORM:
++   case MESA_FORMAT_R8G8B8X8_SRGB:
+       masks = format_table[6].masks;
+       shifts = format_table[6].shifts;
+       break;
+-- 
+2.32.0.402.g57bb445576-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-add-vn_descriptor_set_layout_init.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-add-vn_descriptor_set_layout_init.patch
new file mode 100644
index 0000000..56a5a0f
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-add-vn_descriptor_set_layout_init.patch
@@ -0,0 +1,92 @@
+From ad934eb680abc952670dfef1d52f717a1de9e5e7 Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Sat, 21 Aug 2021 00:27:04 +0000
+Subject: [PATCH 2/8] venus: add vn_descriptor_set_layout_init
+
+Just a refactoring without functional changes.
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Ryan Neph <ryanneph@google.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501>
+---
+ src/virtio/vulkan/vn_descriptor_set.c | 53 ++++++++++++++++-----------
+ 1 file changed, 32 insertions(+), 21 deletions(-)
+
+diff --git a/src/virtio/vulkan/vn_descriptor_set.c b/src/virtio/vulkan/vn_descriptor_set.c
+index 93ac44fc01f..86bbd228635 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.c
++++ b/src/virtio/vulkan/vn_descriptor_set.c
+@@ -32,6 +32,36 @@ vn_GetDescriptorSetLayoutSupport(
+                                            pSupport);
+ }
+ 
++static void
++vn_descriptor_set_layout_init(
++   struct vn_device *dev,
++   const VkDescriptorSetLayoutCreateInfo *create_info,
++   struct vn_descriptor_set_layout *layout)
++{
++   VkDevice dev_handle = vn_device_to_handle(dev);
++   VkDescriptorSetLayout layout_handle =
++      vn_descriptor_set_layout_to_handle(layout);
++
++   for (uint32_t i = 0; i < create_info->bindingCount; i++) {
++      const VkDescriptorSetLayoutBinding *binding_info =
++         &create_info->pBindings[i];
++      struct vn_descriptor_set_layout_binding *binding =
++         &layout->bindings[binding_info->binding];
++
++      switch (binding_info->descriptorType) {
++      case VK_DESCRIPTOR_TYPE_SAMPLER:
++      case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER:
++         binding->has_immutable_samplers = binding_info->pImmutableSamplers;
++         break;
++      default:
++         break;
++      }
++   }
++
++   vn_async_vkCreateDescriptorSetLayout(dev->instance, dev_handle,
++                                        create_info, NULL, &layout_handle);
++}
++
+ VkResult
+ vn_CreateDescriptorSetLayout(
+    VkDevice device,
+@@ -92,30 +122,11 @@ vn_CreateDescriptorSetLayout(
+    vn_object_base_init(&layout->base, VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT,
+                        &dev->base);
+ 
+-   for (uint32_t i = 0; i < pCreateInfo->bindingCount; i++) {
+-      const VkDescriptorSetLayoutBinding *binding =
+-         &pCreateInfo->pBindings[i];
+-      struct vn_descriptor_set_layout_binding *dst =
+-         &layout->bindings[binding->binding];
+-
+-      switch (binding->descriptorType) {
+-      case VK_DESCRIPTOR_TYPE_SAMPLER:
+-      case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER:
+-         dst->has_immutable_samplers = binding->pImmutableSamplers;
+-         break;
+-      default:
+-         break;
+-      }
+-   }
+-
+-   VkDescriptorSetLayout layout_handle =
+-      vn_descriptor_set_layout_to_handle(layout);
+-   vn_async_vkCreateDescriptorSetLayout(dev->instance, device, pCreateInfo,
+-                                        NULL, &layout_handle);
++   vn_descriptor_set_layout_init(dev, pCreateInfo, layout);
+ 
+    vk_free(alloc, local_bindings);
+ 
+-   *pSetLayout = layout_handle;
++   *pSetLayout = vn_descriptor_set_layout_to_handle(layout);
+ 
+    return VK_SUCCESS;
+ }
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-check-descriptor-allocations-against-pool-reso.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-check-descriptor-allocations-against-pool-reso.patch
new file mode 100644
index 0000000..a771721
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-check-descriptor-allocations-against-pool-reso.patch
@@ -0,0 +1,146 @@
+From 288ce1b033faf1123b76688d9a02323484f21810 Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Fri, 20 Aug 2021 21:50:14 +0000
+Subject: [PATCH 7/8] venus: check descriptor allocations against pool resource
+
+Only kick in when async_set_allocation is enabled.
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Ryan Neph <ryanneph@google.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501>
+---
+ src/virtio/vulkan/vn_descriptor_set.c | 80 +++++++++++++++++++++++++++
+ src/virtio/vulkan/vn_descriptor_set.h |  1 +
+ 2 files changed, 81 insertions(+)
+
+diff --git a/src/virtio/vulkan/vn_descriptor_set.c b/src/virtio/vulkan/vn_descriptor_set.c
+index dbf9a879996..b6a1da54a01 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.c
++++ b/src/virtio/vulkan/vn_descriptor_set.c
+@@ -277,6 +277,73 @@ vn_DestroyDescriptorPool(VkDevice device,
+    vk_free(alloc, pool);
+ }
+ 
++static bool
++vn_descriptor_pool_alloc_descriptors(
++   struct vn_descriptor_pool *pool,
++   const struct vn_descriptor_set_layout *layout,
++   uint32_t last_binding_descriptor_count)
++{
++   struct vn_descriptor_pool_state recovery;
++
++   if (!pool->async_set_allocation)
++      return true;
++
++   if (pool->used.set_count == pool->max.set_count)
++      return false;
++
++   /* backup current pool state to recovery */
++   recovery = pool->used;
++
++   ++pool->used.set_count;
++
++   for (uint32_t i = 0; i <= layout->last_binding; i++) {
++      const VkDescriptorType type = layout->bindings[i].type;
++      const uint32_t count = i == layout->last_binding
++                                ? last_binding_descriptor_count
++                                : layout->bindings[i].count;
++
++      pool->used.descriptor_counts[type] += count;
++
++      if (pool->used.descriptor_counts[type] >
++          pool->max.descriptor_counts[type]) {
++         /* restore pool state before this allocation */
++         pool->used = recovery;
++         return false;
++      }
++   }
++
++   return true;
++}
++
++static void
++vn_descriptor_pool_free_descriptors(
++   struct vn_descriptor_pool *pool,
++   const struct vn_descriptor_set_layout *layout,
++   uint32_t last_binding_descriptor_count)
++{
++   if (!pool->async_set_allocation)
++      return;
++
++   for (uint32_t i = 0; i <= layout->last_binding; i++) {
++      const uint32_t count = i == layout->last_binding
++                                ? last_binding_descriptor_count
++                                : layout->bindings[i].count;
++
++      pool->used.descriptor_counts[layout->bindings[i].type] -= count;
++   }
++
++   --pool->used.set_count;
++}
++
++static void
++vn_descriptor_pool_reset_descriptors(struct vn_descriptor_pool *pool)
++{
++   if (!pool->async_set_allocation)
++      return;
++
++   memset(&pool->used, 0, sizeof(pool->used));
++}
++
+ VkResult
+ vn_ResetDescriptorPool(VkDevice device,
+                        VkDescriptorPool descriptorPool,
+@@ -298,6 +365,8 @@ vn_ResetDescriptorPool(VkDevice device,
+       vk_free(alloc, set);
+    }
+ 
++   vn_descriptor_pool_reset_descriptors(pool);
++
+    return VK_SUCCESS;
+ }
+ 
+@@ -347,9 +416,18 @@ vn_AllocateDescriptorSets(VkDevice device,
+          last_binding_descriptor_count = variable_info->pDescriptorCounts[i];
+       }
+ 
++      if (!vn_descriptor_pool_alloc_descriptors(
++             pool, layout, last_binding_descriptor_count)) {
++         pDescriptorSets[i] = VK_NULL_HANDLE;
++         result = VK_ERROR_OUT_OF_POOL_MEMORY;
++         goto fail;
++      }
++
+       set = vk_zalloc(alloc, sizeof(*set), VN_DEFAULT_ALIGN,
+                       VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
+       if (!set) {
++         vn_descriptor_pool_free_descriptors(pool, layout,
++                                             last_binding_descriptor_count);
+          pDescriptorSets[i] = VK_NULL_HANDLE;
+          result = VK_ERROR_OUT_OF_HOST_MEMORY;
+          goto fail;
+@@ -380,6 +458,8 @@ fail:
+       if (!set)
+          break;
+ 
++      vn_descriptor_pool_free_descriptors(pool, set->layout,
++                                          set->last_binding_descriptor_count);
+       list_del(&set->head);
+       vn_object_base_fini(&set->base);
+       vk_free(alloc, set);
+diff --git a/src/virtio/vulkan/vn_descriptor_set.h b/src/virtio/vulkan/vn_descriptor_set.h
+index 9eb100755aa..5f6afc44fb3 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.h
++++ b/src/virtio/vulkan/vn_descriptor_set.h
+@@ -50,6 +50,7 @@ struct vn_descriptor_pool {
+    VkAllocationCallbacks allocator;
+    bool async_set_allocation;
+    struct vn_descriptor_pool_state max;
++   struct vn_descriptor_pool_state used;
+ 
+    struct list_head descriptor_sets;
+ };
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-conditionally-enable-async-descriptor-set-allo.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-conditionally-enable-async-descriptor-set-allo.patch
new file mode 100644
index 0000000..19a62ed
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-conditionally-enable-async-descriptor-set-allo.patch
@@ -0,0 +1,54 @@
+From 3538b5af6dedbff09913a3a959d1a869415e310b Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Sun, 22 Aug 2021 22:26:54 +0000
+Subject: [PATCH 8/8] venus: conditionally enable async descriptor set
+ allocation
+
+When VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT is not used to
+create the pool, set allocation is guaranteed to not return
+VK_ERROR_FRAGMENTED_POOL, and we can safely move set allocation to async
+after doing resource tracking in the driver.
+
+Enable after fully tested with assert(false) in the failure case.
+
+Tested with:
+- dEQP-VK.api.descriptor*
+- dEQP-VK.api.object_management.*
+- dEQP-VK.binding_model.descriptor*
+- dEQP-VK.descriptor_indexing.*
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Ryan Neph <ryanneph@google.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501>
+---
+ src/virtio/vulkan/vn_descriptor_set.c | 13 +++++++++----
+ 1 file changed, 9 insertions(+), 4 deletions(-)
+
+diff --git a/src/virtio/vulkan/vn_descriptor_set.c b/src/virtio/vulkan/vn_descriptor_set.c
+index b6a1da54a01..a88e071acf2 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.c
++++ b/src/virtio/vulkan/vn_descriptor_set.c
+@@ -444,10 +444,15 @@ vn_AllocateDescriptorSets(VkDevice device,
+       pDescriptorSets[i] = set_handle;
+    }
+ 
+-   result = vn_call_vkAllocateDescriptorSets(dev->instance, device,
+-                                             pAllocateInfo, pDescriptorSets);
+-   if (result != VK_SUCCESS)
+-      goto fail;
++   if (pool->async_set_allocation) {
++      vn_async_vkAllocateDescriptorSets(dev->instance, device, pAllocateInfo,
++                                        pDescriptorSets);
++   } else {
++      result = vn_call_vkAllocateDescriptorSets(
++         dev->instance, device, pAllocateInfo, pDescriptorSets);
++      if (result != VK_SUCCESS)
++         goto fail;
++   }
+ 
+    return VK_SUCCESS;
+ 
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-descriptor-layout-to-track-more-binding-infos.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-descriptor-layout-to-track-more-binding-infos.patch
new file mode 100644
index 0000000..dd3a862
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-descriptor-layout-to-track-more-binding-infos.patch
@@ -0,0 +1,112 @@
+From d8e89b4e3304d601a516bbecb94af83ff03e70eb Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Fri, 20 Aug 2021 18:57:43 +0000
+Subject: [PATCH 3/8] venus: descriptor layout to track more binding infos
+
+Rename existing max_binding to last_binding to be consistent.
+
+1. layout to track last binding index
+2. binding to track descriptor type
+3. binding to track descriptor count
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Ryan Neph <ryanneph@google.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501>
+---
+ src/virtio/vulkan/vn_descriptor_set.c | 16 +++++++++++-----
+ src/virtio/vulkan/vn_descriptor_set.h |  6 ++++++
+ 2 files changed, 17 insertions(+), 5 deletions(-)
+
+diff --git a/src/virtio/vulkan/vn_descriptor_set.c b/src/virtio/vulkan/vn_descriptor_set.c
+index 86bbd228635..6ca51d3f2ed 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.c
++++ b/src/virtio/vulkan/vn_descriptor_set.c
+@@ -36,18 +36,24 @@ static void
+ vn_descriptor_set_layout_init(
+    struct vn_device *dev,
+    const VkDescriptorSetLayoutCreateInfo *create_info,
++   uint32_t last_binding,
+    struct vn_descriptor_set_layout *layout)
+ {
+    VkDevice dev_handle = vn_device_to_handle(dev);
+    VkDescriptorSetLayout layout_handle =
+       vn_descriptor_set_layout_to_handle(layout);
+ 
++   layout->last_binding = last_binding;
++
+    for (uint32_t i = 0; i < create_info->bindingCount; i++) {
+       const VkDescriptorSetLayoutBinding *binding_info =
+          &create_info->pBindings[i];
+       struct vn_descriptor_set_layout_binding *binding =
+          &layout->bindings[binding_info->binding];
+ 
++      binding->type = binding_info->descriptorType;
++      binding->count = binding_info->descriptorCount;
++
+       switch (binding_info->descriptorType) {
+       case VK_DESCRIPTOR_TYPE_SAMPLER:
+       case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER:
+@@ -73,7 +79,7 @@ vn_CreateDescriptorSetLayout(
+    const VkAllocationCallbacks *alloc =
+       pAllocator ? pAllocator : &dev->base.base.alloc;
+ 
+-   uint32_t max_binding = 0;
++   uint32_t last_binding = 0;
+    VkDescriptorSetLayoutBinding *local_bindings = NULL;
+    VkDescriptorSetLayoutCreateInfo local_create_info;
+    if (pCreateInfo->bindingCount) {
+@@ -91,8 +97,8 @@ vn_CreateDescriptorSetLayout(
+       for (uint32_t i = 0; i < pCreateInfo->bindingCount; i++) {
+          VkDescriptorSetLayoutBinding *binding = &local_bindings[i];
+ 
+-         if (max_binding < binding->binding)
+-            max_binding = binding->binding;
++         if (last_binding < binding->binding)
++            last_binding = binding->binding;
+ 
+          switch (binding->descriptorType) {
+          case VK_DESCRIPTOR_TYPE_SAMPLER:
+@@ -110,7 +116,7 @@ vn_CreateDescriptorSetLayout(
+    }
+ 
+    const size_t layout_size =
+-      offsetof(struct vn_descriptor_set_layout, bindings[max_binding + 1]);
++      offsetof(struct vn_descriptor_set_layout, bindings[last_binding + 1]);
+    struct vn_descriptor_set_layout *layout =
+       vk_zalloc(alloc, layout_size, VN_DEFAULT_ALIGN,
+                 VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
+@@ -122,7 +128,7 @@ vn_CreateDescriptorSetLayout(
+    vn_object_base_init(&layout->base, VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT,
+                        &dev->base);
+ 
+-   vn_descriptor_set_layout_init(dev, pCreateInfo, layout);
++   vn_descriptor_set_layout_init(dev, pCreateInfo, last_binding, layout);
+ 
+    vk_free(alloc, local_bindings);
+ 
+diff --git a/src/virtio/vulkan/vn_descriptor_set.h b/src/virtio/vulkan/vn_descriptor_set.h
+index 923a3cf1a3a..0eb53519e26 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.h
++++ b/src/virtio/vulkan/vn_descriptor_set.h
+@@ -14,11 +14,17 @@
+ #include "vn_common.h"
+ 
+ struct vn_descriptor_set_layout_binding {
++   VkDescriptorType type;
++   uint32_t count;
+    bool has_immutable_samplers;
+ };
+ 
+ struct vn_descriptor_set_layout {
+    struct vn_object_base base;
++
++   uint32_t last_binding;
++
++   /* bindings must be the last field in the layout */
+    struct vn_descriptor_set_layout_binding bindings[];
+ };
+ VK_DEFINE_NONDISP_HANDLE_CASTS(vn_descriptor_set_layout,
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-descriptor-pool-to-track-pool-state.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-descriptor-pool-to-track-pool-state.patch
new file mode 100644
index 0000000..9d45ad0
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-descriptor-pool-to-track-pool-state.patch
@@ -0,0 +1,85 @@
+From a1e91b1163c84b79a0dde87cb7286d5a96ed1866 Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Fri, 20 Aug 2021 18:53:04 +0000
+Subject: [PATCH 5/8] venus: descriptor pool to track pool state
+
+It also tracks whether async set allocation is enabled.
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Ryan Neph <ryanneph@google.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501>
+---
+ src/virtio/vulkan/vn_descriptor_set.c | 19 +++++++++++++++++++
+ src/virtio/vulkan/vn_descriptor_set.h | 14 ++++++++++++++
+ 2 files changed, 33 insertions(+)
+
+diff --git a/src/virtio/vulkan/vn_descriptor_set.c b/src/virtio/vulkan/vn_descriptor_set.c
+index a892665b98f..4b104e1aaf4 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.c
++++ b/src/virtio/vulkan/vn_descriptor_set.c
+@@ -213,6 +213,25 @@ vn_CreateDescriptorPool(VkDevice device,
+                        &dev->base);
+ 
+    pool->allocator = *alloc;
++
++   /* Without VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, the set
++    * allocation must not fail due to a fragmented pool per spec. In this
++    * case, set allocation can be asynchronous with pool resource tracking.
++    */
++   pool->async_set_allocation = !(
++      pCreateInfo->flags & VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT);
++
++   pool->max.set_count = pCreateInfo->maxSets;
++
++   for (uint32_t i = 0; i < pCreateInfo->poolSizeCount; i++) {
++      const VkDescriptorPoolSize *pool_size = &pCreateInfo->pPoolSizes[i];
++
++      assert(pool_size->type < VN_NUM_DESCRIPTOR_TYPES);
++
++      pool->max.descriptor_counts[pool_size->type] +=
++         pool_size->descriptorCount;
++   }
++
+    list_inithead(&pool->descriptor_sets);
+ 
+    VkDescriptorPool pool_handle = vn_descriptor_pool_to_handle(pool);
+diff --git a/src/virtio/vulkan/vn_descriptor_set.h b/src/virtio/vulkan/vn_descriptor_set.h
+index 85e7d2108b3..31611f74116 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.h
++++ b/src/virtio/vulkan/vn_descriptor_set.h
+@@ -13,6 +13,12 @@
+ 
+ #include "vn_common.h"
+ 
++/* TODO accommodate new discrete type enums by:
++ * 1. increase the number of types here
++ * 2. add a helper to map to continuous array index
++ */
++#define VN_NUM_DESCRIPTOR_TYPES (VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT + 1)
++
+ struct vn_descriptor_set_layout_binding {
+    VkDescriptorType type;
+    uint32_t count;
+@@ -33,10 +39,18 @@ VK_DEFINE_NONDISP_HANDLE_CASTS(vn_descriptor_set_layout,
+                                VkDescriptorSetLayout,
+                                VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT)
+ 
++struct vn_descriptor_pool_state {
++   uint32_t set_count;
++   uint32_t descriptor_counts[VN_NUM_DESCRIPTOR_TYPES];
++};
++
+ struct vn_descriptor_pool {
+    struct vn_object_base base;
+ 
+    VkAllocationCallbacks allocator;
++   bool async_set_allocation;
++   struct vn_descriptor_pool_state max;
++
+    struct list_head descriptor_sets;
+ };
+ VK_DEFINE_NONDISP_HANDLE_CASTS(vn_descriptor_pool,
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-descriptor-set-to-track-descriptor-count-of-la.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-descriptor-set-to-track-descriptor-count-of-la.patch
new file mode 100644
index 0000000..c4592db
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-descriptor-set-to-track-descriptor-count-of-la.patch
@@ -0,0 +1,97 @@
+From 70b03e96f9c7b5a8cbe6478917d239b32602147a Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Wed, 25 Aug 2021 01:17:58 +0000
+Subject: [PATCH 6/8] venus: descriptor set to track descriptor count of last
+ binding
+
+Track the descriptor count to be used instead of the variable descriptor
+count to avoid duplicate checks in later accounting.
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Ryan Neph <ryanneph@google.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501>
+---
+ src/virtio/vulkan/vn_descriptor_set.c | 42 +++++++++++++++++++++++----
+ src/virtio/vulkan/vn_descriptor_set.h |  2 ++
+ 2 files changed, 39 insertions(+), 5 deletions(-)
+
+diff --git a/src/virtio/vulkan/vn_descriptor_set.c b/src/virtio/vulkan/vn_descriptor_set.c
+index 4b104e1aaf4..dbf9a879996 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.c
++++ b/src/virtio/vulkan/vn_descriptor_set.c
+@@ -312,12 +312,43 @@ vn_AllocateDescriptorSets(VkDevice device,
+    struct vn_descriptor_pool *pool =
+       vn_descriptor_pool_from_handle(pAllocateInfo->descriptorPool);
+    const VkAllocationCallbacks *alloc = &pool->allocator;
++   const VkDescriptorSetVariableDescriptorCountAllocateInfo *variable_info =
++      NULL;
+    VkResult result;
+ 
++   /* 14.2.3. Allocation of Descriptor Sets
++    *
++    * If descriptorSetCount is zero or this structure is not included in
++    * the pNext chain, then the variable lengths are considered to be zero.
++    */
++   variable_info = vk_find_struct_const(
++      pAllocateInfo->pNext,
++      DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO);
++
++   if (variable_info && !variable_info->descriptorSetCount)
++      variable_info = NULL;
++
+    for (uint32_t i = 0; i < pAllocateInfo->descriptorSetCount; i++) {
+-      struct vn_descriptor_set *set =
+-         vk_zalloc(alloc, sizeof(*set), VN_DEFAULT_ALIGN,
+-                   VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
++      const struct vn_descriptor_set_layout *layout =
++         vn_descriptor_set_layout_from_handle(pAllocateInfo->pSetLayouts[i]);
++      uint32_t last_binding_descriptor_count = 0;
++      struct vn_descriptor_set *set = NULL;
++
++      /* 14.2.3. Allocation of Descriptor Sets
++       *
++       * If VkDescriptorSetAllocateInfo::pSetLayouts[i] does not include a
++       * variable count descriptor binding, then pDescriptorCounts[i] is
++       * ignored.
++       */
++      if (!layout->has_variable_descriptor_count) {
++         last_binding_descriptor_count =
++            layout->bindings[layout->last_binding].count;
++      } else if (variable_info) {
++         last_binding_descriptor_count = variable_info->pDescriptorCounts[i];
++      }
++
++      set = vk_zalloc(alloc, sizeof(*set), VN_DEFAULT_ALIGN,
++                      VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
+       if (!set) {
+          pDescriptorSets[i] = VK_NULL_HANDLE;
+          result = VK_ERROR_OUT_OF_HOST_MEMORY;
+@@ -326,8 +357,9 @@ vn_AllocateDescriptorSets(VkDevice device,
+ 
+       vn_object_base_init(&set->base, VK_OBJECT_TYPE_DESCRIPTOR_SET,
+                           &dev->base);
+-      set->layout =
+-         vn_descriptor_set_layout_from_handle(pAllocateInfo->pSetLayouts[i]);
++
++      set->layout = layout;
++      set->last_binding_descriptor_count = last_binding_descriptor_count;
+       list_addtail(&set->head, &pool->descriptor_sets);
+ 
+       VkDescriptorSet set_handle = vn_descriptor_set_to_handle(set);
+diff --git a/src/virtio/vulkan/vn_descriptor_set.h b/src/virtio/vulkan/vn_descriptor_set.h
+index 31611f74116..9eb100755aa 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.h
++++ b/src/virtio/vulkan/vn_descriptor_set.h
+@@ -70,6 +70,8 @@ struct vn_descriptor_set {
+    struct vn_object_base base;
+ 
+    const struct vn_descriptor_set_layout *layout;
++   uint32_t last_binding_descriptor_count;
++
+    struct list_head head;
+ };
+ VK_DEFINE_NONDISP_HANDLE_CASTS(vn_descriptor_set,
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-fix-all-missing-vn_object_base_fini.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-fix-all-missing-vn_object_base_fini.patch
new file mode 100644
index 0000000..3b95f5f
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-fix-all-missing-vn_object_base_fini.patch
@@ -0,0 +1,133 @@
+From b816167312315f5840fbff38207a97aee75e3ec1 Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Sat, 21 Aug 2021 22:21:17 +0000
+Subject: [PATCH] venus: fix all missing vn_object_base_fini
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Ryan Neph <ryanneph@google.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12498>
+---
+ src/virtio/vulkan/vn_buffer.c         | 1 +
+ src/virtio/vulkan/vn_command_buffer.c | 1 +
+ src/virtio/vulkan/vn_descriptor_set.c | 2 ++
+ src/virtio/vulkan/vn_device_memory.c  | 3 +++
+ src/virtio/vulkan/vn_image.c          | 2 ++
+ src/virtio/vulkan/vn_queue.c          | 2 ++
+ 6 files changed, 11 insertions(+)
+
+diff --git a/src/virtio/vulkan/vn_buffer.c b/src/virtio/vulkan/vn_buffer.c
+index cb65c2d29f1..766fb3ad05a 100644
+--- a/src/virtio/vulkan/vn_buffer.c
++++ b/src/virtio/vulkan/vn_buffer.c
+@@ -42,6 +42,7 @@ vn_buffer_create(struct vn_device *dev,
+    result = vn_call_vkCreateBuffer(dev->instance, device, create_info, NULL,
+                                    &buffer);
+    if (result != VK_SUCCESS) {
++      vn_object_base_fini(&buf->base);
+       vk_free(alloc, buf);
+       return result;
+    }
+diff --git a/src/virtio/vulkan/vn_command_buffer.c b/src/virtio/vulkan/vn_command_buffer.c
+index de6bd7cac05..6ee5237b32a 100644
+--- a/src/virtio/vulkan/vn_command_buffer.c
++++ b/src/virtio/vulkan/vn_command_buffer.c
+@@ -542,6 +542,7 @@ vn_AllocateCommandBuffers(VkDevice device,
+             cmd = vn_command_buffer_from_handle(pCommandBuffers[j]);
+             vn_cs_encoder_fini(&cmd->cs);
+             list_del(&cmd->head);
++            vn_object_base_fini(&cmd->base);
+             vk_free(alloc, cmd);
+          }
+          memset(pCommandBuffers, 0,
+diff --git a/src/virtio/vulkan/vn_descriptor_set.c b/src/virtio/vulkan/vn_descriptor_set.c
+index d50c07056f9..d5d0f484c4d 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.c
++++ b/src/virtio/vulkan/vn_descriptor_set.c
+@@ -252,6 +252,7 @@ vn_AllocateDescriptorSets(VkDevice device,
+          for (uint32_t j = 0; j < i; j++) {
+             set = vn_descriptor_set_from_handle(pDescriptorSets[j]);
+             list_del(&set->head);
++            vn_object_base_fini(&set->base);
+             vk_free(alloc, set);
+          }
+          memset(pDescriptorSets, 0,
+@@ -276,6 +277,7 @@ vn_AllocateDescriptorSets(VkDevice device,
+          struct vn_descriptor_set *set =
+             vn_descriptor_set_from_handle(pDescriptorSets[i]);
+          list_del(&set->head);
++         vn_object_base_fini(&set->base);
+          vk_free(alloc, set);
+       }
+       memset(pDescriptorSets, 0,
+diff --git a/src/virtio/vulkan/vn_device_memory.c b/src/virtio/vulkan/vn_device_memory.c
+index d244f109e39..89226dde332 100644
+--- a/src/virtio/vulkan/vn_device_memory.c
++++ b/src/virtio/vulkan/vn_device_memory.c
+@@ -48,6 +48,7 @@ vn_device_memory_simple_alloc(struct vn_device *dev,
+       },
+       NULL, &mem_handle);
+    if (result != VK_SUCCESS) {
++      vn_object_base_fini(&mem->base);
+       vk_free(alloc, mem);
+       return result;
+    }
+@@ -61,6 +62,7 @@ vn_device_memory_simple_alloc(struct vn_device *dev,
+    if (result != VK_SUCCESS) {
+       vn_async_vkFreeMemory(dev->instance, vn_device_to_handle(dev),
+                             mem_handle, NULL);
++      vn_object_base_fini(&mem->base);
+       vk_free(alloc, mem);
+       return result;
+    }
+@@ -370,6 +372,7 @@ vn_AllocateMemory(VkDevice device,
+                                       mem_type->propertyFlags, 0);
+    }
+    if (result != VK_SUCCESS) {
++      vn_object_base_fini(&mem->base);
+       vk_free(alloc, mem);
+       return vn_error(dev->instance, result);
+    }
+diff --git a/src/virtio/vulkan/vn_image.c b/src/virtio/vulkan/vn_image.c
+index 76fbd3fb05b..88a3c7bce77 100644
+--- a/src/virtio/vulkan/vn_image.c
++++ b/src/virtio/vulkan/vn_image.c
+@@ -191,6 +191,7 @@ vn_image_create(struct vn_device *dev,
+ 
+    result = vn_image_init(dev, create_info, img);
+    if (result != VK_SUCCESS) {
++      vn_object_base_fini(&img->base);
+       vk_free(alloc, img);
+       return result;
+    }
+@@ -227,6 +228,7 @@ vn_image_create_deferred(struct vn_device *dev,
+    result = vn_image_store_deferred_create_info(create_info, alloc,
+                                                 &img->deferred_info);
+    if (result != VK_SUCCESS) {
++      vn_object_base_fini(&img->base);
+       vk_free(alloc, img);
+       return result;
+    }
+diff --git a/src/virtio/vulkan/vn_queue.c b/src/virtio/vulkan/vn_queue.c
+index 2f067f1f581..062aa43d5e8 100644
+--- a/src/virtio/vulkan/vn_queue.c
++++ b/src/virtio/vulkan/vn_queue.c
+@@ -493,6 +493,7 @@ vn_CreateFence(VkDevice device,
+    VkResult result = vn_fence_init_payloads(
+       dev, fence, pCreateInfo->flags & VK_FENCE_CREATE_SIGNALED_BIT, alloc);
+    if (result != VK_SUCCESS) {
++      vn_object_base_fini(&fence->base);
+       vk_free(alloc, fence);
+       return vn_error(dev->instance, result);
+    }
+@@ -816,6 +817,7 @@ vn_CreateSemaphore(VkDevice device,
+ 
+    VkResult result = vn_semaphore_init_payloads(dev, sem, initial_val, alloc);
+    if (result != VK_SUCCESS) {
++      vn_object_base_fini(&sem->base);
+       vk_free(alloc, sem);
+       return vn_error(dev->instance, result);
+    }
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-layout-to-track-variable-descriptor-count-bind.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-layout-to-track-variable-descriptor-count-bind.patch
new file mode 100644
index 0000000..c91fb0b
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-layout-to-track-variable-descriptor-count-bind.patch
@@ -0,0 +1,81 @@
+From d2b1a7c2bb324a8ccf7390da4166488aa1077866 Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Tue, 24 Aug 2021 20:57:23 +0000
+Subject: [PATCH 4/8] venus: layout to track variable descriptor count binding
+ info
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Ryan Neph <ryanneph@google.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501>
+---
+ src/virtio/vulkan/vn_descriptor_set.c | 33 +++++++++++++++++++++++++++
+ src/virtio/vulkan/vn_descriptor_set.h |  1 +
+ 2 files changed, 34 insertions(+)
+
+diff --git a/src/virtio/vulkan/vn_descriptor_set.c b/src/virtio/vulkan/vn_descriptor_set.c
+index 6ca51d3f2ed..a892665b98f 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.c
++++ b/src/virtio/vulkan/vn_descriptor_set.c
+@@ -42,6 +42,18 @@ vn_descriptor_set_layout_init(
+    VkDevice dev_handle = vn_device_to_handle(dev);
+    VkDescriptorSetLayout layout_handle =
+       vn_descriptor_set_layout_to_handle(layout);
++   const VkDescriptorSetLayoutBindingFlagsCreateInfo *binding_flags =
++      vk_find_struct_const(create_info->pNext,
++                           DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO);
++
++   /* 14.2.1. Descriptor Set Layout
++    *
++    * If bindingCount is zero or if this structure is not included in
++    * the pNext chain, the VkDescriptorBindingFlags for each descriptor
++    * set layout binding is considered to be zero.
++    */
++   if (binding_flags && !binding_flags->bindingCount)
++      binding_flags = NULL;
+ 
+    layout->last_binding = last_binding;
+ 
+@@ -51,6 +63,27 @@ vn_descriptor_set_layout_init(
+       struct vn_descriptor_set_layout_binding *binding =
+          &layout->bindings[binding_info->binding];
+ 
++      if (binding_info->binding == last_binding) {
++         /* 14.2.1. Descriptor Set Layout
++          *
++          * VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT must only be
++          * used for the last binding in the descriptor set layout (i.e. the
++          * binding with the largest value of binding).
++          *
++          * 41. Features
++          *
++          * descriptorBindingVariableDescriptorCount indicates whether the
++          * implementation supports descriptor sets with a variable-sized last
++          * binding. If this feature is not enabled,
++          * VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT must not be
++          * used.
++          */
++         layout->has_variable_descriptor_count =
++            binding_flags &&
++            (binding_flags->pBindingFlags[i] &
++             VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT);
++      }
++
+       binding->type = binding_info->descriptorType;
+       binding->count = binding_info->descriptorCount;
+ 
+diff --git a/src/virtio/vulkan/vn_descriptor_set.h b/src/virtio/vulkan/vn_descriptor_set.h
+index 0eb53519e26..85e7d2108b3 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.h
++++ b/src/virtio/vulkan/vn_descriptor_set.h
+@@ -23,6 +23,7 @@ struct vn_descriptor_set_layout {
+    struct vn_object_base base;
+ 
+    uint32_t last_binding;
++   bool has_variable_descriptor_count;
+ 
+    /* bindings must be the last field in the layout */
+    struct vn_descriptor_set_layout_binding bindings[];
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-refactor-failure-path-for-sets-allocation.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-refactor-failure-path-for-sets-allocation.patch
new file mode 100644
index 0000000..08189ae
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-refactor-failure-path-for-sets-allocation.patch
@@ -0,0 +1,90 @@
+From d4878636fe77f3866ee7ca1f2364f83c91c9cd1c Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Fri, 20 Aug 2021 21:06:25 +0000
+Subject: [PATCH 1/8] venus: refactor failure path for sets allocation
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Ryan Neph <ryanneph@google.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12501>
+---
+ src/virtio/vulkan/vn_descriptor_set.c | 48 ++++++++++++++-------------
+ 1 file changed, 25 insertions(+), 23 deletions(-)
+
+diff --git a/src/virtio/vulkan/vn_descriptor_set.c b/src/virtio/vulkan/vn_descriptor_set.c
+index d5d0f484c4d..93ac44fc01f 100644
+--- a/src/virtio/vulkan/vn_descriptor_set.c
++++ b/src/virtio/vulkan/vn_descriptor_set.c
+@@ -243,21 +243,16 @@ vn_AllocateDescriptorSets(VkDevice device,
+    struct vn_descriptor_pool *pool =
+       vn_descriptor_pool_from_handle(pAllocateInfo->descriptorPool);
+    const VkAllocationCallbacks *alloc = &pool->allocator;
++   VkResult result;
+ 
+    for (uint32_t i = 0; i < pAllocateInfo->descriptorSetCount; i++) {
+       struct vn_descriptor_set *set =
+          vk_zalloc(alloc, sizeof(*set), VN_DEFAULT_ALIGN,
+                    VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
+       if (!set) {
+-         for (uint32_t j = 0; j < i; j++) {
+-            set = vn_descriptor_set_from_handle(pDescriptorSets[j]);
+-            list_del(&set->head);
+-            vn_object_base_fini(&set->base);
+-            vk_free(alloc, set);
+-         }
+-         memset(pDescriptorSets, 0,
+-                sizeof(*pDescriptorSets) * pAllocateInfo->descriptorSetCount);
+-         return vn_error(dev->instance, VK_ERROR_OUT_OF_HOST_MEMORY);
++         pDescriptorSets[i] = VK_NULL_HANDLE;
++         result = VK_ERROR_OUT_OF_HOST_MEMORY;
++         goto fail;
+       }
+ 
+       vn_object_base_init(&set->base, VK_OBJECT_TYPE_DESCRIPTOR_SET,
+@@ -270,22 +265,29 @@ vn_AllocateDescriptorSets(VkDevice device,
+       pDescriptorSets[i] = set_handle;
+    }
+ 
+-   VkResult result = vn_call_vkAllocateDescriptorSets(
+-      dev->instance, device, pAllocateInfo, pDescriptorSets);
+-   if (result != VK_SUCCESS) {
+-      for (uint32_t i = 0; i < pAllocateInfo->descriptorSetCount; i++) {
+-         struct vn_descriptor_set *set =
+-            vn_descriptor_set_from_handle(pDescriptorSets[i]);
+-         list_del(&set->head);
+-         vn_object_base_fini(&set->base);
+-         vk_free(alloc, set);
+-      }
+-      memset(pDescriptorSets, 0,
+-             sizeof(*pDescriptorSets) * pAllocateInfo->descriptorSetCount);
+-      return vn_error(dev->instance, result);
+-   }
++   result = vn_call_vkAllocateDescriptorSets(dev->instance, device,
++                                             pAllocateInfo, pDescriptorSets);
++   if (result != VK_SUCCESS)
++      goto fail;
+ 
+    return VK_SUCCESS;
++
++fail:
++   for (uint32_t i = 0; i < pAllocateInfo->descriptorSetCount; i++) {
++      struct vn_descriptor_set *set =
++         vn_descriptor_set_from_handle(pDescriptorSets[i]);
++      if (!set)
++         break;
++
++      list_del(&set->head);
++      vn_object_base_fini(&set->base);
++      vk_free(alloc, set);
++   }
++
++   memset(pDescriptorSets, 0,
++          sizeof(*pDescriptorSets) * pAllocateInfo->descriptorSetCount);
++
++   return vn_error(dev->instance, result);
+ }
+ 
+ VkResult
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-renderer-to-check-map-size-only-when-mappable.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-renderer-to-check-map-size-only-when-mappable.patch
new file mode 100644
index 0000000..c9124af
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-renderer-to-check-map-size-only-when-mappable.patch
@@ -0,0 +1,47 @@
+From cbdec34db3129552a6507d87d4bf0b4866774148 Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Wed, 1 Sep 2021 21:46:38 +0000
+Subject: [PATCH 1/2] venus: renderer to check map size only when mappable
+
+Cc: 21.2.3 mesa-stable
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Ryan Neph <ryanneph@google.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12687>
+---
+ src/virtio/vulkan/vn_renderer_virtgpu.c | 13 +++++++++----
+ 1 file changed, 9 insertions(+), 4 deletions(-)
+
+diff --git a/src/virtio/vulkan/vn_renderer_virtgpu.c b/src/virtio/vulkan/vn_renderer_virtgpu.c
+index 5a29fb6c129..050a35bfec3 100644
+--- a/src/virtio/vulkan/vn_renderer_virtgpu.c
++++ b/src/virtio/vulkan/vn_renderer_virtgpu.c
+@@ -1173,15 +1173,20 @@ virtgpu_bo_create_from_dma_buf(struct vn_renderer *renderer,
+       if (info.blob_mem != VIRTGPU_BLOB_MEM_HOST3D)
+          goto fail;
+ 
+-      if (info.size < size)
+-         goto fail;
+-
+       /* blob_flags is not passed to the kernel and is only for internal use
+        * on imports.  Set it to what works best for us.
+        */
+       blob_flags = virtgpu_bo_blob_flags(flags, 0);
+       blob_flags |= VIRTGPU_BLOB_FLAG_USE_SHAREABLE;
+-      mmap_size = size;
++
++      /* mmap_size is only used when mappable */
++      mmap_size = 0;
++      if (blob_flags & VIRTGPU_BLOB_FLAG_USE_MAPPABLE) {
++         if (info.size < size)
++            goto fail;
++
++         mmap_size = size;
++      }
+    } else {
+       /* must be classic resource here
+        * set blob_flags to 0 to fail virtgpu_bo_map
+-- 
+2.33.0.153.gba50c8fa24-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-suggest-the-proper-sampler-ycbcr-model-convers.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-suggest-the-proper-sampler-ycbcr-model-convers.patch
new file mode 100644
index 0000000..58ee0bf
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-suggest-the-proper-sampler-ycbcr-model-convers.patch
@@ -0,0 +1,73 @@
+From cc62fbed6d83fa10dc2f30f758d8f34bd4f72593 Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Thu, 2 Sep 2021 07:17:37 +0000
+Subject: [PATCH] venus: suggest the proper sampler ycbcr model conversion
+ based on format
+
+Cc: 21.2.3 mesa-stable
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Ryan Neph <ryanneph@google.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12694>
+---
+ src/virtio/vulkan/vn_android.c | 29 ++++++++++++++++++++++++++++-
+ 1 file changed, 28 insertions(+), 1 deletion(-)
+
+diff --git a/src/virtio/vulkan/vn_android.c b/src/virtio/vulkan/vn_android.c
+index 52901e75bd0..72c483833ce 100644
+--- a/src/virtio/vulkan/vn_android.c
++++ b/src/virtio/vulkan/vn_android.c
+@@ -151,6 +151,20 @@ vn_android_drm_format_to_vk_format(uint32_t format)
+    }
+ }
+ 
++static bool
++vn_android_drm_format_is_yuv(uint32_t format)
++{
++   assert(vn_android_drm_format_to_vk_format(format) != VK_FORMAT_UNDEFINED);
++
++   switch (format) {
++   case DRM_FORMAT_YVU420:
++   case DRM_FORMAT_NV12:
++      return true;
++   default:
++      return false;
++   }
++}
++
+ uint64_t
+ vn_android_get_ahb_usage(const VkImageUsageFlags usage,
+                          const VkImageCreateFlags flags)
+@@ -743,6 +757,19 @@ vn_android_get_ahb_format_properties(
+    const VkFormatFeatureFlags format_features =
+       mod_props.drmFormatModifierTilingFeatures |
+       VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT;
++
++   /* 11.2.7. Android Hardware Buffer External Memory
++    *
++    * Implementations may not always be able to determine the color model,
++    * numerical range, or chroma offsets of the image contents, so the values
++    * in VkAndroidHardwareBufferFormatPropertiesANDROID are only suggestions.
++    * Applications should treat these values as sensible defaults to use in the
++    * absence of more reliable information obtained through some other means.
++    */
++   const VkSamplerYcbcrModelConversion model =
++      vn_android_drm_format_is_yuv(buf_props.drm_fourcc)
++         ? VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601
++         : VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY;
+    *out_props = (VkAndroidHardwareBufferFormatPropertiesANDROID) {
+       .sType = out_props->sType,
+       .pNext = out_props->pNext,
+@@ -755,7 +782,7 @@ vn_android_get_ahb_format_properties(
+          .b = VK_COMPONENT_SWIZZLE_IDENTITY,
+          .a = VK_COMPONENT_SWIZZLE_IDENTITY,
+       },
+-      .suggestedYcbcrModel = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601,
++      .suggestedYcbcrModel = model,
+       .suggestedYcbcrRange = VK_SAMPLER_YCBCR_RANGE_ITU_FULL,
+       .suggestedXChromaOffset = VK_CHROMA_LOCATION_MIDPOINT,
+       .suggestedYChromaOffset = VK_CHROMA_LOCATION_MIDPOINT,
+-- 
+2.33.0.153.gba50c8fa24-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-workaround-a-blob_mem-mappable-size-check-issu.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-workaround-a-blob_mem-mappable-size-check-issu.patch
new file mode 100644
index 0000000..3f88550
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-venus-workaround-a-blob_mem-mappable-size-check-issu.patch
@@ -0,0 +1,115 @@
+From 97aa90dec2bdd5b8b1a0c274deb8c330aae7ae44 Mon Sep 17 00:00:00 2001
+From: Yiwei Zhang <zzyiwei@chromium.org>
+Date: Wed, 1 Sep 2021 21:30:36 +0000
+Subject: [PATCH 2/2] venus: workaround a blob_mem mappable size check issue
+
+For blob_mem allocated from virtgpu_virgl backend, the guest mappable
+size queried can be smaller than the size returned from image memory
+requirement query from the host side. Here we temporarily workaround
+until we switch to use cross-domain backend in minigbm.
+
+Cc: 21.2.3 mesa-stable
+
+Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
+Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Ryan Neph <ryanneph@google.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12687>
+---
+ src/virtio/vulkan/vn_android.c       | 11 +++++++++--
+ src/virtio/vulkan/vn_device_memory.c | 15 +++++++++------
+ src/virtio/vulkan/vn_device_memory.h |  1 +
+ 3 files changed, 19 insertions(+), 8 deletions(-)
+
+diff --git a/src/virtio/vulkan/vn_android.c b/src/virtio/vulkan/vn_android.c
+index 121f124853f..52901e75bd0 100644
+--- a/src/virtio/vulkan/vn_android.c
++++ b/src/virtio/vulkan/vn_android.c
+@@ -918,6 +918,7 @@ vn_android_device_import_ahb(struct vn_device *dev,
+    int dup_fd = -1;
+    uint64_t alloc_size = 0;
+    uint32_t mem_type_bits = 0;
++   bool force_unmappable = false;
+    VkResult result = VK_SUCCESS;
+ 
+    handle = AHardwareBuffer_getNativeHandle(ahb);
+@@ -960,6 +961,12 @@ vn_android_device_import_ahb(struct vn_device *dev,
+       }
+ 
+       alloc_size = mem_req.size;
++
++      /* XXX Workaround before we use cross-domain backend in minigbm. The
++       * blob_mem allocated from virgl backend can have a queried guest mappable
++       * size smaller than the size returned from image memory requirement.
++       */
++      force_unmappable = true;
+    }
+ 
+    if (dedicated_info && dedicated_info->buffer != VK_NULL_HANDLE) {
+@@ -999,8 +1006,8 @@ vn_android_device_import_ahb(struct vn_device *dev,
+       .allocationSize = alloc_size,
+       .memoryTypeIndex = alloc_info->memoryTypeIndex,
+    };
+-   result =
+-      vn_device_memory_import_dma_buf(dev, mem, &local_alloc_info, dup_fd);
++   result = vn_device_memory_import_dma_buf(dev, mem, &local_alloc_info,
++                                            force_unmappable, dup_fd);
+    if (result != VK_SUCCESS) {
+       close(dup_fd);
+       return result;
+diff --git a/src/virtio/vulkan/vn_device_memory.c b/src/virtio/vulkan/vn_device_memory.c
+index 89226dde332..5a38cb416f9 100644
+--- a/src/virtio/vulkan/vn_device_memory.c
++++ b/src/virtio/vulkan/vn_device_memory.c
+@@ -224,20 +224,23 @@ VkResult
+ vn_device_memory_import_dma_buf(struct vn_device *dev,
+                                 struct vn_device_memory *mem,
+                                 const VkMemoryAllocateInfo *alloc_info,
++                                bool force_unmappable,
+                                 int fd)
+ {
+    VkDevice device = vn_device_to_handle(dev);
+    VkDeviceMemory memory = vn_device_memory_to_handle(mem);
+    const VkPhysicalDeviceMemoryProperties *mem_props =
+       &dev->physical_device->memory_properties.memoryProperties;
+-   const VkMemoryType *mem_type =
+-      &mem_props->memoryTypes[alloc_info->memoryTypeIndex];
++   VkMemoryPropertyFlags mem_flags =
++      mem_props->memoryTypes[alloc_info->memoryTypeIndex].propertyFlags;
+    struct vn_renderer_bo *bo;
+    VkResult result = VK_SUCCESS;
+ 
+-   result = vn_renderer_bo_create_from_dma_buf(dev->renderer,
+-                                               alloc_info->allocationSize, fd,
+-                                               mem_type->propertyFlags, &bo);
++   if (force_unmappable)
++      mem_flags &= ~VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT;
++
++   result = vn_renderer_bo_create_from_dma_buf(
++      dev->renderer, alloc_info->allocationSize, fd, mem_flags, &bo);
+    if (result != VK_SUCCESS)
+       return result;
+ 
+@@ -355,7 +358,7 @@ vn_AllocateMemory(VkDevice device,
+    } else if (export_ahb) {
+       result = vn_android_device_allocate_ahb(dev, mem, pAllocateInfo, alloc);
+    } else if (import_fd_info) {
+-      result = vn_device_memory_import_dma_buf(dev, mem, pAllocateInfo,
++      result = vn_device_memory_import_dma_buf(dev, mem, pAllocateInfo, false,
+                                                import_fd_info->fd);
+    } else if (export_info) {
+       result = vn_device_memory_alloc(dev, mem, pAllocateInfo, true,
+diff --git a/src/virtio/vulkan/vn_device_memory.h b/src/virtio/vulkan/vn_device_memory.h
+index f480ad811bc..04f23d10541 100644
+--- a/src/virtio/vulkan/vn_device_memory.h
++++ b/src/virtio/vulkan/vn_device_memory.h
+@@ -47,6 +47,7 @@ VkResult
+ vn_device_memory_import_dma_buf(struct vn_device *dev,
+                                 struct vn_device_memory *mem,
+                                 const VkMemoryAllocateInfo *alloc_info,
++                                bool force_unmappable,
+                                 int fd);
+ 
+ VkResult
+-- 
+2.33.0.153.gba50c8fa24-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/UPSTREAM-virgl-Add-an-option-to-disable-coherent.patch b/media-libs/arc-mesa-virgl/files/UPSTREAM-virgl-Add-an-option-to-disable-coherent.patch
new file mode 100644
index 0000000..0188ca3
--- /dev/null
+++ b/media-libs/arc-mesa-virgl/files/UPSTREAM-virgl-Add-an-option-to-disable-coherent.patch
@@ -0,0 +1,68 @@
+From 1a33dca3aeb102860341da93eea5dbf4a3a43ef5 Mon Sep 17 00:00:00 2001
+From: Lepton Wu <lepton@chromium.org>
+Date: Tue, 21 Sep 2021 16:30:34 -0700
+Subject: [PATCH] virgl: Add an option to disable coherent
+
+This breaks almost every android apps when running with crosvm+minigbm.
+Add an option so we can disable it.
+
+Signed-off-by: Lepton Wu <lepton@chromium.org>
+Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12968>
+---
+ src/gallium/drivers/virgl/virgl_screen.c | 4 +++-
+ src/gallium/drivers/virgl/virgl_screen.h | 2 ++
+ 2 files changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/src/gallium/drivers/virgl/virgl_screen.c b/src/gallium/drivers/virgl/virgl_screen.c
+index 56cfdc6e524..767e0ce9374 100644
+--- a/src/gallium/drivers/virgl/virgl_screen.c
++++ b/src/gallium/drivers/virgl/virgl_screen.c
+@@ -49,6 +49,7 @@ static const struct debug_named_value virgl_debug_options[] = {
+    { "nobgraswz", VIRGL_DEBUG_NO_BGRA_DEST_SWIZZLE,"Disable tweak to swizzle emulated BGRA on GLES hosts" },
+    { "sync",      VIRGL_DEBUG_SYNC,                "Sync after every flush" },
+    { "xfer",      VIRGL_DEBUG_XFER,                "Do not optimize for transfers" },
++   { "nocoherent", VIRGL_DEBUG_NO_COHERENT,        "Disable coherent memory"},
+    DEBUG_NAMED_VALUE_END
+ };
+ DEBUG_GET_ONCE_FLAGS_OPTION(virgl_debug, "VIRGL_DEBUG", virgl_debug_options, 0)
+@@ -300,7 +301,7 @@ virgl_get_param(struct pipe_screen *screen, enum pipe_cap param)
+    case PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT:
+       return (vscreen->caps.caps.v2.capability_bits & VIRGL_CAP_ARB_BUFFER_STORAGE) &&
+              (vscreen->caps.caps.v2.host_feature_check_version >= 4) &&
+-              vscreen->vws->supports_coherent;
++              vscreen->vws->supports_coherent && !vscreen->no_coherent;
+    case PIPE_CAP_PCI_GROUP:
+    case PIPE_CAP_PCI_BUS:
+    case PIPE_CAP_PCI_DEVICE:
+@@ -954,6 +955,7 @@ virgl_create_screen(struct virgl_winsys *vws, const struct pipe_screen_config *c
+    }
+    screen->tweak_gles_emulate_bgra &= !(virgl_debug & VIRGL_DEBUG_NO_EMULATE_BGRA);
+    screen->tweak_gles_apply_bgra_dest_swizzle &= !(virgl_debug & VIRGL_DEBUG_NO_BGRA_DEST_SWIZZLE);
++   screen->no_coherent = virgl_debug & VIRGL_DEBUG_NO_COHERENT;
+ 
+    screen->vws = vws;
+    screen->base.get_name = virgl_get_name;
+diff --git a/src/gallium/drivers/virgl/virgl_screen.h b/src/gallium/drivers/virgl/virgl_screen.h
+index 22275cbea1c..a604c6bb431 100644
+--- a/src/gallium/drivers/virgl/virgl_screen.h
++++ b/src/gallium/drivers/virgl/virgl_screen.h
+@@ -35,6 +35,7 @@ enum virgl_debug_flags {
+    VIRGL_DEBUG_NO_BGRA_DEST_SWIZZLE = 1 << 3,
+    VIRGL_DEBUG_SYNC                 = 1 << 4,
+    VIRGL_DEBUG_XFER                 = 1 << 5,
++   VIRGL_DEBUG_NO_COHERENT          = 1 << 6,
+ };
+ 
+ extern int virgl_debug;
+@@ -56,6 +57,7 @@ struct virgl_screen {
+    uint32_t sub_ctx_id;
+    bool tweak_gles_emulate_bgra;
+    bool tweak_gles_apply_bgra_dest_swizzle;
++   bool no_coherent;
+    int32_t tweak_gles_tf3_value;
+ 
+    struct disk_cache *disk_cache;
+-- 
+2.33.0.464.g1972c5931b-goog
+
diff --git a/media-libs/arc-mesa-virgl/files/drirc b/media-libs/arc-mesa-virgl/files/drirc
deleted file mode 100644
index 5306b98..0000000
--- a/media-libs/arc-mesa-virgl/files/drirc
+++ /dev/null
@@ -1,15 +0,0 @@
-<driconf>
-   <device driver="i965">
-      <application name="Default">
-         <!-- Force on S3TC hardware decompression support -->
-         <option name="force_s3tc_enable" value="true"/>
-         <option name="precise_trig" value="true"/>
-      </application>
-   </device>
-   <device driver="i915">
-      <application name="Default">
-         <!-- Force on S3TC hardware decompression support -->
-         <option name="force_s3tc_enable" value="true"/>
-      </application>
-   </device>
-</driconf>
diff --git a/media-libs/arc-mesa-virgl/files/gles31/init.gpu.rc b/media-libs/arc-mesa-virgl/files/gles31/init.gpu.rc
index 80952f5..fb952b2 100644
--- a/media-libs/arc-mesa-virgl/files/gles31/init.gpu.rc
+++ b/media-libs/arc-mesa-virgl/files/gles31/init.gpu.rc
@@ -6,3 +6,4 @@
     # Advertise opengles version 3.1.
     setprop ro.opengles.version 196609
     setprop ro.hardware.egl mesa
+    export VIRGL_DEBUG nocoherent
diff --git a/media-libs/arc-mesa/arc-mesa-19.0-r39.ebuild b/media-libs/arc-mesa/arc-mesa-19.0-r40.ebuild
similarity index 100%
rename from media-libs/arc-mesa/arc-mesa-19.0-r39.ebuild
rename to media-libs/arc-mesa/arc-mesa-19.0-r40.ebuild
diff --git a/media-libs/arc-mesa/arc-mesa-19.0.ebuild b/media-libs/arc-mesa/arc-mesa-19.0.ebuild
index dd9e75c..83dbb80 100644
--- a/media-libs/arc-mesa/arc-mesa-19.0.ebuild
+++ b/media-libs/arc-mesa/arc-mesa-19.0.ebuild
@@ -200,6 +200,8 @@
 	epatch "${FILESDIR}"/UPSTREAM-intel-limit-shader-geometry-on-BDW-GT1.patch
 	epatch "${FILESDIR}"/UPSTREAM-intel-change-urb-max-shader-geometry-for-KBL-GT1.patch
 	epatch "${FILESDIR}"/UPSTREAM-intel-change-urb-max-shader-geometry-for-CML-GT1.patch
+	epatch "${FILESDIR}"/BACKPORT-frontend-dri-Expose-RGB-AX-_SRGB-as-well.patch
+	epatch "${FILESDIR}"/BACKPORT-i965-Enable-RGBX8888_SRGB-format.patch
 	default
 }
 
diff --git a/media-libs/arc-mesa/files/BACKPORT-frontend-dri-Expose-RGB-AX-_SRGB-as-well.patch b/media-libs/arc-mesa/files/BACKPORT-frontend-dri-Expose-RGB-AX-_SRGB-as-well.patch
new file mode 100644
index 0000000..8aee4a4
--- /dev/null
+++ b/media-libs/arc-mesa/files/BACKPORT-frontend-dri-Expose-RGB-AX-_SRGB-as-well.patch
@@ -0,0 +1,59 @@
+From 74fc63f3de42aa3583928b995652398796f8b7bb Mon Sep 17 00:00:00 2001
+From: Rob Clark <robdclark@chromium.org>
+Date: Mon, 11 Jan 2021 16:12:10 -0800
+Subject: [PATCH] frontend/dri: Expose RGB[AX]_SRGB as well
+
+platform_android prefers RGB[AX] over BGR[AX] to avoid buggyness with
+older android versions.  But we need to include the corresponding SRGB
+formats as well.
+
+Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2888
+Signed-off-by: Rob Clark <robdclark@chromium.org>
+Acked-by: Eric Anholt <eric@anholt.net>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8452>
+---
+ src/gallium/state_trackers/dri/dri_screen.c | 8 ++++++++
+ src/mesa/drivers/dri/common/utils.c         | 1 +
+ 2 files changed, 9 insertions(+)
+
+diff --git a/src/gallium/state_trackers/dri/dri_screen.c b/src/gallium/state_trackers/dri/dri_screen.c
+index 82a0988a634..00b715200d2 100644
+--- a/src/gallium/state_trackers/dri/dri_screen.c
++++ b/src/gallium/state_trackers/dri/dri_screen.c
+@@ -142,6 +142,12 @@ dri_fill_in_modes(struct dri_screen *screen)
+ 
+       /* Required by Android, for HAL_PIXEL_FORMAT_RGBX_8888. */
+       MESA_FORMAT_R8G8B8X8_UNORM,
++
++      /* Required by Android, for HAL_PIXEL_FORMAT_RGBA_8888. */
++      MESA_FORMAT_R8G8B8A8_SRGB,
++
++      /* Required by Android, for HAL_PIXEL_FORMAT_RGBX_8888. */
++      MESA_FORMAT_R8G8B8X8_SRGB,
+    };
+    static const enum pipe_format pipe_formats[] = {
+       PIPE_FORMAT_B10G10R10A2_UNORM,
+@@ -155,6 +161,8 @@ dri_fill_in_modes(struct dri_screen *screen)
+       PIPE_FORMAT_B5G6R5_UNORM,
+       PIPE_FORMAT_RGBA8888_UNORM,
+       PIPE_FORMAT_RGBX8888_UNORM,
++      PIPE_FORMAT_RGBA8888_SRGB,
++      PIPE_FORMAT_RGBX8888_SRGB,
+    };
+    mesa_format format;
+    __DRIconfig **configs = NULL;
+diff --git a/src/mesa/drivers/dri/common/utils.c b/src/mesa/drivers/dri/common/utils.c
+index f9a4acefed1..950c94bfd77 100644
+--- a/src/mesa/drivers/dri/common/utils.c
++++ b/src/mesa/drivers/dri/common/utils.c
+@@ -255,6 +255,7 @@ driCreateConfigs(mesa_format format,
+       shifts = format_table[5].shifts;
+       break;
+    case MESA_FORMAT_R8G8B8X8_UNORM:
++   case MESA_FORMAT_R8G8B8X8_SRGB:
+       masks = format_table[6].masks;
+       shifts = format_table[6].shifts;
+       break;
+-- 
+2.31.0
+
diff --git a/media-libs/arc-mesa/files/BACKPORT-i965-Enable-RGBX8888_SRGB-format.patch b/media-libs/arc-mesa/files/BACKPORT-i965-Enable-RGBX8888_SRGB-format.patch
new file mode 100644
index 0000000..8400d27
--- /dev/null
+++ b/media-libs/arc-mesa/files/BACKPORT-i965-Enable-RGBX8888_SRGB-format.patch
@@ -0,0 +1,44 @@
+From ea5bf15c5f071745bd39805e8fd5d2e08780503b Mon Sep 17 00:00:00 2001
+From: Lepton Wu <lepton@chromium.org>
+Date: Sat, 14 Aug 2021 15:52:47 -0700
+Subject: [PATCH] i965: Enable RGBX8888_SRGB format.
+
+This is required by Android. Some Android games like nier reincarnation
+show a black screen without this.
+
+Change-Id: I73befd665ea4606d0ad838b1af460c1c7f4642bc
+---
+ src/mesa/drivers/dri/i965/intel_screen.c | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/src/mesa/drivers/dri/i965/intel_screen.c b/src/mesa/drivers/dri/i965/intel_screen.c
+index 8fa46681aff..3016b9b1362 100644
+--- a/src/mesa/drivers/dri/i965/intel_screen.c
++++ b/src/mesa/drivers/dri/i965/intel_screen.c
+@@ -2133,7 +2133,8 @@ intel_allowed_format(__DRIscreen *dri_screen, mesa_format format)
+    if (!allow_rgba_ordering &&
+        (format == MESA_FORMAT_R8G8B8A8_UNORM ||
+         format == MESA_FORMAT_R8G8B8X8_UNORM ||
+-        format == MESA_FORMAT_R8G8B8A8_SRGB))
++        format == MESA_FORMAT_R8G8B8A8_SRGB ||
++        format == MESA_FORMAT_R8G8B8X8_SRGB))
+       return false;
+ 
+     /* Shall we expose 10 bpc formats? */
+@@ -2190,11 +2191,11 @@ intel_screen_make_configs(__DRIscreen *dri_screen)
+ 
+       /* Required by Android, for HAL_PIXEL_FORMAT_RGBA_8888. */
+       MESA_FORMAT_R8G8B8A8_UNORM,
++      MESA_FORMAT_R8G8B8A8_SRGB,
+ 
+       /* Required by Android, for HAL_PIXEL_FORMAT_RGBX_8888. */
+       MESA_FORMAT_R8G8B8X8_UNORM,
+-
+-      MESA_FORMAT_R8G8B8A8_SRGB,
++      MESA_FORMAT_R8G8B8X8_SRGB,
+    };
+ 
+    /* __DRI_ATTRIB_SWAP_COPY is not supported due to page flipping. */
+-- 
+2.31.0
+
diff --git a/media-libs/cros-camera-connector-client/cros-camera-connector-client-0.0.1-r245.ebuild b/media-libs/cros-camera-connector-client/cros-camera-connector-client-0.0.1-r245.ebuild
deleted file mode 100644
index f9468f4..0000000
--- a/media-libs/cros-camera-connector-client/cros-camera-connector-client-0.0.1-r245.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "318ca9f48604274cd31481e13eb9321be3d94d8f" "c37af7d99913a584dbfb1b64fdb83acb19e91c20" "049eedf136293a1ab81617017200cb31032eb384" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_SUBTREE=".gn camera/build camera/tools/connector_client camera/common camera/include common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/tools/connector_client"
-
-inherit cros-camera cros-workon platform
-
-DESCRIPTION="A simple package that exercises cros-camera-libcamera_connector"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="chromeos-base/cros-camera-libs"
-
-DEPEND="${RDEPEND}
-	x11-libs/libdrm"
-
-BDEPEND="virtual/pkgconfig"
-
-src_install() {
-	platform_src_install
-	dobin "${OUT}/cros_camera_connector_client"
-}
diff --git a/media-libs/cros-camera-connector-client/cros-camera-connector-client-0.0.1-r312.ebuild b/media-libs/cros-camera-connector-client/cros-camera-connector-client-0.0.1-r312.ebuild
new file mode 100644
index 0000000..dcbe989
--- /dev/null
+++ b/media-libs/cros-camera-connector-client/cros-camera-connector-client-0.0.1-r312.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="745cdedb276031fbceedfb76854b10a234cab662"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "318ca9f48604274cd31481e13eb9321be3d94d8f" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "21f96983b4c04d23267767a4f371212fe68039d9" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/tools/connector_client camera/common camera/include common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/tools/connector_client"
+
+inherit cros-camera cros-workon platform
+
+DESCRIPTION="A simple package that exercises cros-camera-libcamera_connector"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="chromeos-base/cros-camera-libs"
+
+DEPEND="${RDEPEND}
+	x11-libs/libdrm"
+
+BDEPEND="virtual/pkgconfig"
+
+src_install() {
+	platform_src_install
+	dobin "${OUT}/cros_camera_connector_client"
+}
diff --git a/media-libs/cros-camera-libhdr/OWNERS b/media-libs/cros-camera-document-scanning-test/OWNERS
similarity index 100%
copy from media-libs/cros-camera-libhdr/OWNERS
copy to media-libs/cros-camera-document-scanning-test/OWNERS
diff --git a/media-libs/cros-camera-document-scanning-test/cros-camera-document-scanning-test-0.0.1-r14.ebuild b/media-libs/cros-camera-document-scanning-test/cros-camera-document-scanning-test-0.0.1-r14.ebuild
new file mode 100644
index 0000000..362f289
--- /dev/null
+++ b/media-libs/cros-camera-document-scanning-test/cros-camera-document-scanning-test-0.0.1-r14.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "af913357e1c51d9a6679dcbc787dfecb62cbc74f" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/features/document_scanning common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/features/document_scanning"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS camera Document Scanning test."
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	chromeos-base/libbrillo:=
+	dev-cpp/gtest:=
+	media-libs/cros-camera-document-scanning:="
+
+DEPEND="${RDEPEND}
+	virtual/pkgconfig"
+
+src_install() {
+	platform_src_install
+	dobin "${OUT}/document_scanner_perf_test"
+}
diff --git a/media-libs/cros-camera-document-scanning-test/cros-camera-document-scanning-test-9999.ebuild b/media-libs/cros-camera-document-scanning-test/cros-camera-document-scanning-test-9999.ebuild
new file mode 100644
index 0000000..6ff17f1
--- /dev/null
+++ b/media-libs/cros-camera-document-scanning-test/cros-camera-document-scanning-test-9999.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/features/document_scanning common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/features/document_scanning"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS camera Document Scanning test."
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="~*"
+
+RDEPEND="
+	chromeos-base/libbrillo:=
+	dev-cpp/gtest:=
+	media-libs/cros-camera-document-scanning:="
+
+DEPEND="${RDEPEND}
+	virtual/pkgconfig"
+
+src_install() {
+	platform_src_install
+	dobin "${OUT}/document_scanner_perf_test"
+}
diff --git a/media-libs/cros-camera-document-scanning/Manifest b/media-libs/cros-camera-document-scanning/Manifest
index 886d32f..51c019f 100644
--- a/media-libs/cros-camera-document-scanning/Manifest
+++ b/media-libs/cros-camera-document-scanning/Manifest
@@ -1 +1 @@
-DIST chromeos-document-scanning-lib-2021.06.22.tar.bz2 18327354 BLAKE2B 33d4fab618cda0f212df7df90f29ad5ba2eeae35939159c81f49d51ae9b9adf92b94e38af2486d3fc0266c7808ff1dfe53ccb5fbe5453588314ad909b8a47cca SHA512 4527906ecf865c7d8f94f09c33a935b4a8c7077a14535a02a10cfa0057aa3ea112a809bd698b4d93a28bc830b88bb17230e2c3993b1009f95920727f9d55dbd4
+DIST chromeos-document-scanning-lib-2021.08.05.tar.bz2 46491001 BLAKE2B ca81c75abd8aa8894009d8fcc464b38e6ce7770011750506d5e5c2c644bcd6414a3719b847ea46b315e0512a5ce3e064d4a4cda8c10c314306c57e109155618d SHA512 50477e7ab15efdca114333e0b25d669eb78c7273ae746eb0c1a6eb06c81379b7facfe9fc0aadf04ed518db817fa9a47f2d82e51936e0e58a1203f35fe82da02e
diff --git a/media-libs/cros-camera-document-scanning/cros-camera-document-scanning-2021.06.22-r1.ebuild b/media-libs/cros-camera-document-scanning/cros-camera-document-scanning-2021.06.22-r1.ebuild
deleted file mode 120000
index 25a3b00..0000000
--- a/media-libs/cros-camera-document-scanning/cros-camera-document-scanning-2021.06.22-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-cros-camera-document-scanning-2021.06.22.ebuild
\ No newline at end of file
diff --git a/media-libs/cros-camera-document-scanning/cros-camera-document-scanning-2021.06.22.ebuild b/media-libs/cros-camera-document-scanning/cros-camera-document-scanning-2021.06.22.ebuild
deleted file mode 100644
index 7412ac1..0000000
--- a/media-libs/cros-camera-document-scanning/cros-camera-document-scanning-2021.06.22.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Google3 document scanning library."
-
-IUSE="march_goldmont march_armv8 ondevice_document_scanner"
-
-SRC_URI="gs://chromeos-localmirror/distfiles/chromeos-document-scanning-lib-${PV}.tar.bz2"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-S="${WORKDIR}"
-
-src_install() {
-	insinto /usr/include/chromeos/libdocumentscanner/
-	doins document_scanner.h
-
-	if ! use ondevice_document_scanner; then
-		return
-	fi
-
-	local document_scanning_lib_path="/opt/google/chrome/ml_models/document_scanning/"
-
-	insinto "${document_scanning_lib_path}"
-	# Specified architecture use flag check should be put before amd64, arm, and
-	# arm64.
-	insopts -m0755
-	if use march_goldmont; then
-		newins "x86_64-goldmont/libdocumentscanner.so" "libdocumentscanner.so"
-	elif use march_armv8; then
-		newins "armv7-armv8-a+crc/libdocumentscanner.so" "libdocumentscanner.so"
-	elif use amd64; then
-		newins "x86_64/libdocumentscanner.so" "libdocumentscanner.so"
-	elif use arm; then
-		newins "armv7/libdocumentscanner.so" "libdocumentscanner.so"
-	elif use arm64; then
-		newins "arm/libdocumentscanner.so" "libdocumentscanner.so"
-	fi
-	insopts -m0644
-}
diff --git a/media-libs/cros-camera-document-scanning/cros-camera-document-scanning-2021.08.05-r2.ebuild b/media-libs/cros-camera-document-scanning/cros-camera-document-scanning-2021.08.05-r2.ebuild
new file mode 120000
index 0000000..6aa59b3
--- /dev/null
+++ b/media-libs/cros-camera-document-scanning/cros-camera-document-scanning-2021.08.05-r2.ebuild
@@ -0,0 +1 @@
+cros-camera-document-scanning-2021.08.05.ebuild
\ No newline at end of file
diff --git a/media-libs/cros-camera-document-scanning/cros-camera-document-scanning-2021.08.05.ebuild b/media-libs/cros-camera-document-scanning/cros-camera-document-scanning-2021.08.05.ebuild
new file mode 100644
index 0000000..6968734
--- /dev/null
+++ b/media-libs/cros-camera-document-scanning/cros-camera-document-scanning-2021.08.05.ebuild
@@ -0,0 +1,72 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Google3 document scanning library."
+
+IUSE="
+	march_alderlake
+	march_armv8
+	march_bdver4
+	march_corei7
+	march_goldmont
+	march_silvermont
+	march_skylake
+	march_tigerlake
+	march_tremont
+	march_znver1
+	ondevice_document_scanner
+"
+
+SRC_URI="gs://chromeos-localmirror/distfiles/chromeos-document-scanning-lib-${PV}.tar.bz2"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+S="${WORKDIR}"
+
+src_install() {
+	insinto /usr/include/chromeos/libdocumentscanner/
+	doins document_scanner.h
+
+	if ! use ondevice_document_scanner; then
+		return
+	fi
+
+	local document_scanning_lib_path="/opt/google/chrome/ml_models/document_scanning/"
+
+	insinto "${document_scanning_lib_path}"
+	# Specified architecture use flag check should be put before amd64, arm, and
+	# arm64.
+	insopts -m0755
+	if use march_alderlake; then
+		newins "x86_64-alderlake/libdocumentscanner.so" "libdocumentscanner.so"
+	elif use march_armv8; then
+		newins "armv7-armv8-a+crc/libdocumentscanner.so" "libdocumentscanner.so"
+	elif use march_bdver4; then
+		newins "x86_64-bdver4/libdocumentscanner.so" "libdocumentscanner.so"
+	elif use march_corei7; then
+		newins "x86_64-corei7/libdocumentscanner.so" "libdocumentscanner.so"
+	elif use march_goldmont; then
+		newins "x86_64-goldmont/libdocumentscanner.so" "libdocumentscanner.so"
+	elif use march_silvermont; then
+		newins "x86_64-silvermont/libdocumentscanner.so" "libdocumentscanner.so"
+	elif use march_skylake; then
+		newins "x86_64-skylake/libdocumentscanner.so" "libdocumentscanner.so"
+	elif use march_tigerlake; then
+		newins "x86_64-tigerlake/libdocumentscanner.so" "libdocumentscanner.so"
+	elif use march_tremont; then
+		newins "x86_64-tremont/libdocumentscanner.so" "libdocumentscanner.so"
+	elif use march_znver1; then
+		newins "x86_64-znver1/libdocumentscanner.so" "libdocumentscanner.so"
+	elif use amd64; then
+		newins "x86_64/libdocumentscanner.so" "libdocumentscanner.so"
+	elif use arm; then
+		newins "armv7/libdocumentscanner.so" "libdocumentscanner.so"
+	elif use arm64; then
+		newins "arm/libdocumentscanner.so" "libdocumentscanner.so"
+	fi
+	insopts -m0644
+}
diff --git a/media-libs/cros-camera-facessd/Manifest b/media-libs/cros-camera-facessd/Manifest
index 8b1572f..4c261c9 100644
--- a/media-libs/cros-camera-facessd/Manifest
+++ b/media-libs/cros-camera-facessd/Manifest
@@ -1 +1 @@
-DIST chromeos-facessd-lib-2021.05.19.tar.bz2 28014622 BLAKE2B 6d019b38988fca8f30efb619132ee179264bd04f3539112ed8d49707158c3bc29aba9ce29fd7ff246d7352daf41a6aabca5901427d584414219afa752e73879a SHA512 538ceb860bc5f08cce67aa85b323f206f8433cbdfbb9897410ae5117e4a9618ad0912095fbcf583b727258b41289b685328e860015e279b29a0f448bfd223128
+DIST chromeos-facessd-lib-2021.07.07.tar.bz2 546210960 BLAKE2B afcdaa901cddde7a8dfb3fb260c4c4d8183b342010909c2f69a0be73aa8ca3ec9639c42116374aed620a4006d998befb3af6b38dfc080195aa90030de9c3eab0 SHA512 1d741cf223ed0417d2da5a9dad4a390c6981e2b4ab5abdb15911ddb3d8d32ff1eaf0f89d921992d45cddf1c77acf1709b26e7750384ffeef8c8a4b553629a380
diff --git a/media-libs/cros-camera-facessd/cros-camera-facessd-2021.05.19-r1.ebuild b/media-libs/cros-camera-facessd/cros-camera-facessd-2021.05.19-r1.ebuild
deleted file mode 120000
index 3d5783e..0000000
--- a/media-libs/cros-camera-facessd/cros-camera-facessd-2021.05.19-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-cros-camera-facessd-2021.05.19.ebuild
\ No newline at end of file
diff --git a/media-libs/cros-camera-facessd/cros-camera-facessd-2021.05.19.ebuild b/media-libs/cros-camera-facessd/cros-camera-facessd-2021.05.19.ebuild
deleted file mode 100644
index e3f2d51..0000000
--- a/media-libs/cros-camera-facessd/cros-camera-facessd-2021.05.19.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Google3 face detection library."
-
-IUSE="march_alderlake march_bdver4 march_corei7 march_goldmont march_silvermont march_skylake march_tremont march_znver1 march_armv8"
-
-SRC_URI="gs://chromeos-localmirror/distfiles/chromeos-facessd-lib-${PV}.tar.bz2"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-S="${WORKDIR}"
-
-src_install() {
-	# Specified architecture use flag check should be put before amd64, arm, and
-	# arm64.
-	if use march_alderlake; then
-		dolib.so ./x86_64-alderlake/libfacessd_cros.so
-	elif use march_bdver4; then
-		dolib.so ./x86_64-bdver4/libfacessd_cros.so
-	elif use march_corei7; then
-		dolib.so ./x86_64-corei7/libfacessd_cros.so
-	elif use march_goldmont; then
-		dolib.so ./x86_64-goldmont/libfacessd_cros.so
-	elif use march_silvermont; then
-		dolib.so ./x86_64-silvermont/libfacessd_cros.so
-	elif use march_skylake; then
-		dolib.so ./x86_64-skylake/libfacessd_cros.so
-	elif use march_tremont; then
-		dolib.so ./x86_64-tremont/libfacessd_cros.so
-	elif use march_znver1; then
-		dolib.so ./x86_64-znver1/libfacessd_cros.so
-	elif use march_armv8; then
-		dolib.so ./armv7-armv8-a+crc/libfacessd_cros.so
-	elif use amd64; then
-		dolib.so ./x86_64/libfacessd_cros.so
-	elif use arm; then
-		dolib.so ./armv7/libfacessd_cros.so
-	elif use arm64; then
-		dolib.so ./arm/libfacessd_cros.so
-	fi
-
-	insinto /usr/include/cros-camera
-	doins ./*.h
-
-	# Install model file and anchor file
-	insinto /opt/google/cros-camera/ml_models
-	doins ./*.pb ./*.tflite
-}
diff --git a/media-libs/cros-camera-facessd/cros-camera-facessd-2021.07.07-r1.ebuild b/media-libs/cros-camera-facessd/cros-camera-facessd-2021.07.07-r1.ebuild
new file mode 120000
index 0000000..707c81f
--- /dev/null
+++ b/media-libs/cros-camera-facessd/cros-camera-facessd-2021.07.07-r1.ebuild
@@ -0,0 +1 @@
+cros-camera-facessd-2021.07.07.ebuild
\ No newline at end of file
diff --git a/media-libs/cros-camera-facessd/cros-camera-facessd-2021.07.07.ebuild b/media-libs/cros-camera-facessd/cros-camera-facessd-2021.07.07.ebuild
new file mode 100644
index 0000000..e747075
--- /dev/null
+++ b/media-libs/cros-camera-facessd/cros-camera-facessd-2021.07.07.ebuild
@@ -0,0 +1,66 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Google3 face detection library."
+
+IUSE="
+	march_alderlake
+	march_armv8
+	march_bdver4
+	march_corei7
+	march_goldmont
+	march_silvermont
+	march_skylake
+	march_tigerlake
+	march_tremont
+	march_znver1
+"
+
+SRC_URI="gs://chromeos-localmirror/distfiles/chromeos-facessd-lib-${PV}.tar.bz2"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+S="${WORKDIR}"
+
+src_install() {
+	# Specified architecture use flag check should be put before amd64, arm, and
+	# arm64.
+	if use march_alderlake; then
+		dolib.so ./x86_64-alderlake/libfacessd_cros.so
+	elif use march_bdver4; then
+		dolib.so ./x86_64-bdver4/libfacessd_cros.so
+	elif use march_corei7; then
+		dolib.so ./x86_64-corei7/libfacessd_cros.so
+	elif use march_goldmont; then
+		dolib.so ./x86_64-goldmont/libfacessd_cros.so
+	elif use march_silvermont; then
+		dolib.so ./x86_64-silvermont/libfacessd_cros.so
+	elif use march_skylake; then
+		dolib.so ./x86_64-skylake/libfacessd_cros.so
+	elif use march_tigerlake; then
+		dolib.so ./x86_64-tigerlake/libfacessd_cros.so
+	elif use march_tremont; then
+		dolib.so ./x86_64-tremont/libfacessd_cros.so
+	elif use march_znver1; then
+		dolib.so ./x86_64-znver1/libfacessd_cros.so
+	elif use march_armv8; then
+		dolib.so ./armv7-armv8-a+crc/libfacessd_cros.so
+	elif use amd64; then
+		dolib.so ./x86_64/libfacessd_cros.so
+	elif use arm; then
+		dolib.so ./armv7/libfacessd_cros.so
+	elif use arm64; then
+		dolib.so ./arm/libfacessd_cros.so
+	fi
+
+	insinto /usr/include/cros-camera
+	doins ./*.h
+
+	# Install model file and anchor file
+	insinto /opt/google/cros-camera/ml_models
+	doins ./*.pb ./*.tflite
+}
diff --git a/media-libs/cros-camera-libhdr/OWNERS b/media-libs/cros-camera-gpu-test/OWNERS
similarity index 100%
copy from media-libs/cros-camera-libhdr/OWNERS
copy to media-libs/cros-camera-gpu-test/OWNERS
diff --git a/media-libs/cros-camera-gpu-test/cros-camera-gpu-test-0.0.1-r59.ebuild b/media-libs/cros-camera-gpu-test/cros-camera-gpu-test-0.0.1-r59.ebuild
new file mode 100644
index 0000000..5a9a6c1
--- /dev/null
+++ b/media-libs/cros-camera-gpu-test/cros-camera-gpu-test-0.0.1-r59.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="745cdedb276031fbceedfb76854b10a234cab662"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "21f96983b4c04d23267767a4f371212fe68039d9" "786825f5ecfe94fcf4d839470255111ca27b4d6f" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/include camera/gpu camera/common common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/gpu/tests"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS camera GPU-related tests"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+BDEPEND="virtual/pkgconfig"
+
+RDEPEND="
+	chromeos-base/cros-camera-android-deps:=
+	chromeos-base/cros-camera-libs:=
+	dev-cpp/gtest:=
+	virtual/opengles:=
+"
+
+DEPEND="${RDEPEND}
+	x11-drivers/opengles-headers:=
+"
+
+src_configure() {
+	cros_optimize_package_for_speed
+	platform_src_configure
+}
+
+src_install() {
+	dobin "${OUT}"/image_processor_test
+	platform_src_install
+}
diff --git a/media-libs/cros-camera-gpu-test/cros-camera-gpu-test-9999.ebuild b/media-libs/cros-camera-gpu-test/cros-camera-gpu-test-9999.ebuild
new file mode 100644
index 0000000..70c12fc
--- /dev/null
+++ b/media-libs/cros-camera-gpu-test/cros-camera-gpu-test-9999.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/include camera/gpu camera/common common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/gpu/tests"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS camera GPU-related tests"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+
+BDEPEND="virtual/pkgconfig"
+
+RDEPEND="
+	chromeos-base/cros-camera-android-deps:=
+	chromeos-base/cros-camera-libs:=
+	dev-cpp/gtest:=
+	virtual/opengles:=
+"
+
+DEPEND="${RDEPEND}
+	x11-drivers/opengles-headers:=
+"
+
+src_configure() {
+	cros_optimize_package_for_speed
+	platform_src_configure
+}
+
+src_install() {
+	dobin "${OUT}"/image_processor_test
+	platform_src_install
+}
diff --git a/media-libs/cros-camera-hal-intel-ipu6/cros-camera-hal-intel-ipu6-0.0.2-r131.ebuild b/media-libs/cros-camera-hal-intel-ipu6/cros-camera-hal-intel-ipu6-0.0.2-r131.ebuild
new file mode 100644
index 0000000..70b3808
--- /dev/null
+++ b/media-libs/cros-camera-hal-intel-ipu6/cros-camera-hal-intel-ipu6-0.0.2-r131.ebuild
@@ -0,0 +1,58 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "3f2fdca6f82b51925070e348a30fc2a437b26937")
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "4b4f10fc5abb864ad187f25722ef3fc8df6bcb36")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "chromiumos/platform/camera")
+CROS_WORKON_LOCALNAME=("../platform2" "../platform/camera")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/camera_hal")
+CROS_WORKON_SUBTREE=(".gn common-mk" "hal/intel/ipu6")
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera_hal/hal/intel/ipu6"
+
+inherit cros-camera cros-workon platform udev
+
+DESCRIPTION="Intel IPU6 (Image Processing Unit) Chrome OS camera HAL"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="*"
+IUSE="ipu6se ipu6ep"
+
+RDEPEND="
+	chromeos-base/chromeos-config-tools
+	chromeos-base/cros-camera-libs
+	chromeos-base/cros-camera-android-deps
+	dev-libs/expat
+	!ipu6se? ( !ipu6ep? ( media-libs/intel-ipu6-camera-bins ) )
+	ipu6se? (
+		media-libs/intel-ipu6se-camera-bins
+		x11-libs/libva-intel-media-driver
+	)
+	ipu6ep? ( media-libs/intel-ipu6ep-camera-bins )
+	!media-libs/cros-camera-hal-intel-ipu6-squash
+	media-libs/libsync
+	media-libs/libyuv
+"
+
+DEPEND="${RDEPEND}
+	sys-kernel/linux-headers
+	virtual/jpeg:0
+	virtual/pkgconfig"
+
+src_install() {
+	platform_src_install
+
+	dolib.so "${OUT}/lib/libcamhal.so"
+	cros-camera_dohal "${OUT}/lib/libcamhal.so" intel-ipu6.so
+	dolib.so "${OUT}/lib/libcam_algo.so"
+
+	if use ipu6se; then
+		dolib.so "${OUT}/lib/libcam_algo_vendor_gpu.so"
+	fi
+
+	udev_dorules "${FILESDIR}/50-ipu-psys0.rules"
+}
diff --git a/media-libs/cros-camera-hal-intel-ipu6/cros-camera-hal-intel-ipu6-0.0.2-r99.ebuild b/media-libs/cros-camera-hal-intel-ipu6/cros-camera-hal-intel-ipu6-0.0.2-r99.ebuild
deleted file mode 100644
index 035cb2d..0000000
--- a/media-libs/cros-camera-hal-intel-ipu6/cros-camera-hal-intel-ipu6-0.0.2-r99.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("8797d18ef997ad834bb916bee9cdb547a4d7d666" "3296cda4e0472a30add5f30bd899becf9219666b")
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "39c3d3a73f6da845a21c6cb5cc49dcca62f80f6a")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "chromiumos/platform/camera")
-CROS_WORKON_LOCALNAME=("../platform2" "../platform/camera")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/camera_hal")
-CROS_WORKON_SUBTREE=(".gn common-mk" "hal/intel/ipu6")
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera_hal/hal/intel/ipu6"
-
-inherit cros-camera cros-workon platform udev
-
-DESCRIPTION="Intel IPU6 (Image Processing Unit) Chrome OS camera HAL"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="*"
-IUSE="ipu6se ipu6ep"
-
-RDEPEND="
-	chromeos-base/chromeos-config-tools
-	chromeos-base/cros-camera-libs
-	chromeos-base/cros-camera-android-deps
-	dev-libs/expat
-	!ipu6se? ( !ipu6ep? ( media-libs/intel-ipu6-camera-bins ) )
-	ipu6se? (
-		media-libs/intel-ipu6se-camera-bins
-		x11-libs/libva-intel-media-driver
-	)
-	ipu6ep? ( media-libs/intel-ipu6ep-camera-bins )
-	!media-libs/cros-camera-hal-intel-ipu6-squash
-	media-libs/libsync
-	media-libs/libyuv
-"
-
-DEPEND="${RDEPEND}
-	sys-kernel/linux-headers
-	virtual/jpeg:0
-	virtual/pkgconfig"
-
-src_install() {
-	platform_src_install
-
-	dolib.so "${OUT}/lib/libcamhal.so"
-	cros-camera_dohal "${OUT}/lib/libcamhal.so" intel-ipu6.so
-	dolib.so "${OUT}/lib/libcam_algo.so"
-
-	if use ipu6se; then
-		dolib.so "${OUT}/lib/libcam_algo_vendor_gpu.so"
-	fi
-
-	udev_dorules "${FILESDIR}/50-ipu-psys0.rules"
-}
diff --git a/media-libs/cros-camera-hal-ip/cros-camera-hal-ip-0.0.1-r483.ebuild b/media-libs/cros-camera-hal-ip/cros-camera-hal-ip-0.0.1-r483.ebuild
deleted file mode 100644
index 812e500..0000000
--- a/media-libs/cros-camera-hal-ip/cros-camera-hal-ip-0.0.1-r483.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "c37af7d99913a584dbfb1b64fdb83acb19e91c20" "08b12a8d5bd9bbe7ab69c8e6cd9f11b700d32b76" "309b7116bd1f5aeb3ece4e1d90ce13f61b7e1b4b" "049eedf136293a1ab81617017200cb31032eb384" "6cdd3e4e16d9890ff8b5fe897e4cf5a94620c315" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/hal/ip camera/hal/usb camera/include camera/mojo common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/hal/ip"
-
-inherit cros-camera cros-workon platform
-
-DESCRIPTION="Chrome OS IP camera HAL v3."
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-RDEPEND="
-	chromeos-base/cros-camera-android-deps
-	chromeos-base/cros-camera-libs
-	media-libs/libsync"
-
-DEPEND="${RDEPEND}
-	virtual/pkgconfig"
-
-src_install() {
-	cros-camera_dohal "${OUT}/lib/libcamera_hal.so" ip.so
-}
-
-platform_pkg_test() {
-	platform_test run "${OUT}"/request_queue_test
-}
diff --git a/media-libs/cros-camera-hal-ip/cros-camera-hal-ip-0.0.1-r565.ebuild b/media-libs/cros-camera-hal-ip/cros-camera-hal-ip-0.0.1-r565.ebuild
new file mode 100644
index 0000000..973643d
--- /dev/null
+++ b/media-libs/cros-camera-hal-ip/cros-camera-hal-ip-0.0.1-r565.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CROS_WORKON_COMMIT="745cdedb276031fbceedfb76854b10a234cab662"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "78f8d2f9f3729b431493013e909fbbbe9167d31f" "b859b43cd8fde226526c57956659101cf8b11b74" "21f96983b4c04d23267767a4f371212fe68039d9" "542b6a1b940801e08d9d1aa3ff2657d06dc80bfa" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/hal/ip camera/hal/usb camera/include camera/mojo common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/hal/ip"
+
+inherit cros-camera cros-workon platform
+
+DESCRIPTION="Chrome OS IP camera HAL v3."
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+RDEPEND="
+	chromeos-base/cros-camera-android-deps
+	chromeos-base/cros-camera-libs
+	media-libs/libsync"
+
+DEPEND="${RDEPEND}
+	virtual/pkgconfig"
+
+src_install() {
+	cros-camera_dohal "${OUT}/lib/libcamera_hal.so" ip.so
+}
+
+platform_pkg_test() {
+	platform_test run "${OUT}"/request_queue_test
+}
diff --git a/media-libs/cros-camera-hal-usb/cros-camera-hal-usb-0.0.1-r1003.ebuild b/media-libs/cros-camera-hal-usb/cros-camera-hal-usb-0.0.1-r1003.ebuild
new file mode 100644
index 0000000..2d819d8
--- /dev/null
+++ b/media-libs/cros-camera-hal-usb/cros-camera-hal-usb-0.0.1-r1003.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CROS_WORKON_COMMIT="745cdedb276031fbceedfb76854b10a234cab662"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "b859b43cd8fde226526c57956659101cf8b11b74" "21f96983b4c04d23267767a4f371212fe68039d9" "542b6a1b940801e08d9d1aa3ff2657d06dc80bfa" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/hal/usb camera/include camera/mojo chromeos-config common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/hal/usb"
+
+inherit cros-camera cros-workon platform
+
+DESCRIPTION="Chrome OS USB camera HAL v3."
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	chromeos-base/cros-camera-android-deps
+	chromeos-base/cros-camera-libs
+	dev-libs/re2
+	media-libs/libsync
+	chromeos-base/chromeos-config-tools"
+
+DEPEND="${RDEPEND}
+	media-libs/libyuv
+	virtual/pkgconfig"
+
+src_install() {
+	platform_src_install
+	cros-camera_dohal "${OUT}/lib/libcamera_hal.so" usb.so
+}
+
+platform_pkg_test() {
+	local tests=(
+		image_processor_test
+	)
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test run "${OUT}/${test_bin}"
+	done
+}
diff --git a/media-libs/cros-camera-hal-usb/cros-camera-hal-usb-0.0.1-r903.ebuild b/media-libs/cros-camera-hal-usb/cros-camera-hal-usb-0.0.1-r903.ebuild
deleted file mode 100644
index d747492..0000000
--- a/media-libs/cros-camera-hal-usb/cros-camera-hal-usb-0.0.1-r903.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "c37af7d99913a584dbfb1b64fdb83acb19e91c20" "309b7116bd1f5aeb3ece4e1d90ce13f61b7e1b4b" "049eedf136293a1ab81617017200cb31032eb384" "6cdd3e4e16d9890ff8b5fe897e4cf5a94620c315" "aa0612733aca2d5ffa65470f07408228b473ebdb" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/hal/usb camera/include camera/mojo chromeos-config common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/hal/usb"
-
-inherit cros-camera cros-workon platform
-
-DESCRIPTION="Chrome OS USB camera HAL v3."
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND="
-	chromeos-base/cros-camera-android-deps
-	chromeos-base/cros-camera-libs
-	dev-libs/re2
-	media-libs/libsync
-	chromeos-base/chromeos-config-tools"
-
-DEPEND="${RDEPEND}
-	media-libs/libyuv
-	virtual/pkgconfig"
-
-src_install() {
-	platform_src_install
-	cros-camera_dohal "${OUT}/lib/libcamera_hal.so" usb.so
-}
-
-platform_pkg_test() {
-	local tests=(
-		image_processor_test
-	)
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test run "${OUT}/${test_bin}"
-	done
-}
diff --git a/media-libs/cros-camera-libhdr/OWNERS b/media-libs/cros-camera-hdrnet-tests/OWNERS
similarity index 100%
copy from media-libs/cros-camera-libhdr/OWNERS
copy to media-libs/cros-camera-hdrnet-tests/OWNERS
diff --git a/media-libs/cros-camera-hdrnet-tests/cros-camera-hdrnet-tests-0.0.1-r71.ebuild b/media-libs/cros-camera-hdrnet-tests/cros-camera-hdrnet-tests-0.0.1-r71.ebuild
new file mode 100644
index 0000000..f936015
--- /dev/null
+++ b/media-libs/cros-camera-hdrnet-tests/cros-camera-hdrnet-tests-0.0.1-r71.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="b7ed0ed288d39556e6141108005d048b913afed7"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "32ac98629dfba863322d9dc20a553d071bb70df0" "21f96983b4c04d23267767a4f371212fe68039d9" "786825f5ecfe94fcf4d839470255111ca27b4d6f" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "77d69659cf481a4d0917b7c100630f3c969b5720")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+# iioservice/ is included just to make sandbox happy when running `gn gen`.
+CROS_WORKON_SUBTREE=".gn camera/build camera/features camera/include camera/gpu camera/common common-mk iioservice/libiioservice_ipc"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/features/hdrnet/tests"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS camera HDRnet integration tests"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+# 'ipu6' and 'ipu6ep' are passed to and used in BUILD.gn files.
+IUSE="ipu6 ipu6ep"
+
+BDEPEND="virtual/pkgconfig"
+
+RDEPEND="
+	chromeos-base/cros-camera-android-deps:=
+	chromeos-base/cros-camera-libs:=
+	dev-cpp/gtest:=
+	media-libs/cros-camera-libhdr:=
+	virtual/opengles:=
+"
+
+DEPEND="${RDEPEND}
+	x11-drivers/opengles-headers:=
+"
+
+src_configure() {
+	cros_optimize_package_for_speed
+	platform_src_configure
+}
+
+src_install() {
+	dobin "${OUT}"/hdrnet_stream_manipulator_test
+	dobin "${OUT}"/hdrnet_processor_impl_test
+	platform_src_install
+}
diff --git a/media-libs/cros-camera-hdrnet-tests/cros-camera-hdrnet-tests-9999.ebuild b/media-libs/cros-camera-hdrnet-tests/cros-camera-hdrnet-tests-9999.ebuild
new file mode 100644
index 0000000..7b942d3
--- /dev/null
+++ b/media-libs/cros-camera-hdrnet-tests/cros-camera-hdrnet-tests-9999.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+# iioservice/ is included just to make sandbox happy when running `gn gen`.
+CROS_WORKON_SUBTREE=".gn camera/build camera/features camera/include camera/gpu camera/common common-mk iioservice/libiioservice_ipc"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/features/hdrnet/tests"
+
+inherit cros-workon platform
+
+DESCRIPTION="Chrome OS camera HDRnet integration tests"
+
+LICENSE="BSD-Google"
+KEYWORDS="~*"
+
+# 'ipu6' and 'ipu6ep' are passed to and used in BUILD.gn files.
+IUSE="ipu6 ipu6ep"
+
+BDEPEND="virtual/pkgconfig"
+
+RDEPEND="
+	chromeos-base/cros-camera-android-deps:=
+	chromeos-base/cros-camera-libs:=
+	dev-cpp/gtest:=
+	media-libs/cros-camera-libhdr:=
+	virtual/opengles:=
+"
+
+DEPEND="${RDEPEND}
+	x11-drivers/opengles-headers:=
+"
+
+src_configure() {
+	cros_optimize_package_for_speed
+	platform_src_configure
+}
+
+src_install() {
+	dobin "${OUT}"/hdrnet_stream_manipulator_test
+	dobin "${OUT}"/hdrnet_processor_impl_test
+	platform_src_install
+}
diff --git a/media-libs/cros-camera-libcab-test/cros-camera-libcab-test-0.0.1-r546.ebuild b/media-libs/cros-camera-libcab-test/cros-camera-libcab-test-0.0.1-r546.ebuild
deleted file mode 100644
index 15bd1da..0000000
--- a/media-libs/cros-camera-libcab-test/cros-camera-libcab-test-0.0.1-r546.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "c37af7d99913a584dbfb1b64fdb83acb19e91c20" "049eedf136293a1ab81617017200cb31032eb384" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/include common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/common/libcab_test"
-
-inherit cros-camera cros-workon platform
-
-DESCRIPTION="Test for camera algorithm bridge library"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND="
-	chromeos-base/cros-camera-libs
-	dev-cpp/gtest:="
-
-DEPEND="${RDEPEND}"
-
-src_install() {
-	dobin "${OUT}/libcab_test"
-	dolib.so "${OUT}/lib/libcam_algo_test.so"
-}
diff --git a/media-libs/cros-camera-libcab-test/cros-camera-libcab-test-0.0.1-r613.ebuild b/media-libs/cros-camera-libcab-test/cros-camera-libcab-test-0.0.1-r613.ebuild
new file mode 100644
index 0000000..36cfa0b
--- /dev/null
+++ b/media-libs/cros-camera-libcab-test/cros-camera-libcab-test-0.0.1-r613.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CROS_WORKON_COMMIT="745cdedb276031fbceedfb76854b10a234cab662"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "21f96983b4c04d23267767a4f371212fe68039d9" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/include common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/common/libcab_test"
+
+inherit cros-camera cros-workon platform
+
+DESCRIPTION="Test for camera algorithm bridge library"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	chromeos-base/cros-camera-libs
+	dev-cpp/gtest:="
+
+DEPEND="${RDEPEND}"
+
+src_install() {
+	dobin "${OUT}/libcab_test"
+	dolib.so "${OUT}/lib/libcam_algo_test.so"
+}
diff --git a/media-libs/cros-camera-libcamera_connector_test/cros-camera-libcamera_connector_test-0.0.1-r229.ebuild b/media-libs/cros-camera-libcamera_connector_test/cros-camera-libcamera_connector_test-0.0.1-r229.ebuild
deleted file mode 100644
index b40cb66..0000000
--- a/media-libs/cros-camera-libcamera_connector_test/cros-camera-libcamera_connector_test-0.0.1-r229.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "c37af7d99913a584dbfb1b64fdb83acb19e91c20" "049eedf136293a1ab81617017200cb31032eb384" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/include common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/common/libcamera_connector_test"
-
-inherit cros-camera cros-workon platform
-
-DESCRIPTION="Chrome OS camera connector test."
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-
-RDEPEND="
-	chromeos-base/cros-camera-libs:=
-	dev-cpp/gtest:=
-	media-libs/libyuv
-	virtual/jpeg:0"
-
-DEPEND="${RDEPEND}"
-
-BDEPEND="virtual/pkgconfig"
-
-src_install() {
-	platform_src_install
-	dobin "${OUT}/cros_camera_connector_test"
-}
diff --git a/media-libs/cros-camera-libcamera_connector_test/cros-camera-libcamera_connector_test-0.0.1-r296.ebuild b/media-libs/cros-camera-libcamera_connector_test/cros-camera-libcamera_connector_test-0.0.1-r296.ebuild
new file mode 100644
index 0000000..cf0b79d
--- /dev/null
+++ b/media-libs/cros-camera-libcamera_connector_test/cros-camera-libcamera_connector_test-0.0.1-r296.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="745cdedb276031fbceedfb76854b10a234cab662"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "21f96983b4c04d23267767a4f371212fe68039d9" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/include common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/common/libcamera_connector_test"
+
+inherit cros-camera cros-workon platform
+
+DESCRIPTION="Chrome OS camera connector test."
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+
+RDEPEND="
+	chromeos-base/cros-camera-libs:=
+	dev-cpp/gtest:=
+	media-libs/libyuv
+	virtual/jpeg:0"
+
+DEPEND="${RDEPEND}"
+
+BDEPEND="virtual/pkgconfig"
+
+src_install() {
+	platform_src_install
+	dobin "${OUT}/cros_camera_connector_test"
+}
diff --git a/media-libs/cros-camera-libgcam/Manifest b/media-libs/cros-camera-libgcam/Manifest
new file mode 100644
index 0000000..08045ac
--- /dev/null
+++ b/media-libs/cros-camera-libgcam/Manifest
@@ -0,0 +1 @@
+DIST chromeos-camera-libgcam-2021.10.12.tar.bz2 77196817 BLAKE2B df9e373bd1222ae736add8ecc8b9c5102d1d5b2a766ffa08c3c86221e8dd2554141c708172ecc22ccab7c8ef0f80d93ebfd3b5a0a9022e70b7711ef9bbea438b SHA512 0c4326212e33ba6915b5de33804eb3089ce38527ddf7e0a28047ab2d23b192e51343633b073bdede1e4966241bf09d33eea4eeb2af5f3e5c3d30b1a5b8c9d794
diff --git a/media-libs/cros-camera-libhdr/OWNERS b/media-libs/cros-camera-libgcam/OWNERS
similarity index 100%
rename from media-libs/cros-camera-libhdr/OWNERS
rename to media-libs/cros-camera-libgcam/OWNERS
diff --git a/media-libs/cros-camera-libgcam/cros-camera-libgcam-2021.10.12-r1.ebuild b/media-libs/cros-camera-libgcam/cros-camera-libgcam-2021.10.12-r1.ebuild
new file mode 120000
index 0000000..640e579
--- /dev/null
+++ b/media-libs/cros-camera-libgcam/cros-camera-libgcam-2021.10.12-r1.ebuild
@@ -0,0 +1 @@
+cros-camera-libgcam-2021.10.12.ebuild
\ No newline at end of file
diff --git a/media-libs/cros-camera-libgcam/cros-camera-libgcam-2021.10.12.ebuild b/media-libs/cros-camera-libgcam/cros-camera-libgcam-2021.10.12.ebuild
new file mode 100644
index 0000000..2753709
--- /dev/null
+++ b/media-libs/cros-camera-libgcam/cros-camera-libgcam-2021.10.12.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Gcam libraries ported from google3 that are specialized for CrOS."
+
+IUSE="march_skylake march_alderlake"
+
+SRC_URI="gs://chromeos-localmirror/distfiles/chromeos-camera-libgcam-${PV}.tar.bz2"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="!media-libs/cros-camera-libhdr"
+
+S="${WORKDIR}"
+
+src_install() {
+	# march USE flag check should be put before amd64, arm, and arm64.
+	local march_path
+	if use march_skylake; then
+		march_path="x86_64-skylake"
+	elif use march_alderlake; then
+		march_path="x86_64-alderlake"
+	elif use amd64; then
+		march_path="x86_64"
+	fi
+	einfo "Installing binaries built with march ${march_path}"
+	dolib.so "./${march_path}/libgcam_cros.so"
+
+	# Install header files.
+	insinto /usr/include/cros-camera
+	doins ./*.h
+}
diff --git a/media-libs/cros-camera-libhdr/Manifest b/media-libs/cros-camera-libhdr/Manifest
deleted file mode 100644
index 5d57832..0000000
--- a/media-libs/cros-camera-libhdr/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST chromeos-camera-libhdr-2021.06.11.tar.bz2 58149976 BLAKE2B 746e3763f3bdeafb8e10dcd1da9538b3022f58a17bb4730619db657ca15f7aea06ee160c6702168779dbce394ef07202054f4799a6805446d9efd633955a6e16 SHA512 31bfea9c53f77b4625eeefa9e7c7ead7497e7d0192b2fd12e814a341bdcd48297cf8108012e6c2b82bbcd3d8ec7c2d10ccf04ae1fd81ff429ec4d5b73b8c5a8a
diff --git a/media-libs/cros-camera-libhdr/cros-camera-libhdr-2021.06.11-r1.ebuild b/media-libs/cros-camera-libhdr/cros-camera-libhdr-2021.06.11-r1.ebuild
deleted file mode 120000
index b8dce42..0000000
--- a/media-libs/cros-camera-libhdr/cros-camera-libhdr-2021.06.11-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-cros-camera-libhdr-2021.06.11.ebuild
\ No newline at end of file
diff --git a/media-libs/cros-camera-libhdr/cros-camera-libhdr-2021.06.11.ebuild b/media-libs/cros-camera-libhdr/cros-camera-libhdr-2021.06.11.ebuild
deleted file mode 100644
index ae069f0..0000000
--- a/media-libs/cros-camera-libhdr/cros-camera-libhdr-2021.06.11.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Chrome OS HDR related libraries ported from google3."
-
-IUSE="march_goldmont"
-
-SRC_URI="gs://chromeos-localmirror/distfiles/chromeos-camera-libhdr-${PV}.tar.bz2"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-S="${WORKDIR}"
-
-src_install() {
-	# march USE flag check should be put before amd64, arm, and arm64.
-	local march_path
-	if use march_goldmont; then
-		march_path="x86_64-goldmont"
-	elif use amd64; then
-		march_path="x86_64"
-	fi
-	einfo "Installing binaries built with march ${march_path}"
-
-	local libraries=(
-		"libhdrnet_cros.so"
-		"libgcam_ae_cros.so"
-	)
-	for library in "${libraries[@]}"; do
-		dolib.so "./${march_path}/${library}"
-	done
-
-	# Install header files.
-	insinto /usr/include/cros-camera
-	doins ./*.h
-}
diff --git a/media-libs/cros-camera-libjda_test/cros-camera-libjda_test-0.0.1-r549.ebuild b/media-libs/cros-camera-libjda_test/cros-camera-libjda_test-0.0.1-r549.ebuild
deleted file mode 100644
index 9491a2a..0000000
--- a/media-libs/cros-camera-libjda_test/cros-camera-libjda_test-0.0.1-r549.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "c37af7d99913a584dbfb1b64fdb83acb19e91c20" "049eedf136293a1ab81617017200cb31032eb384" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/include common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/common/jpeg/libjda_test"
-
-inherit cros-camera cros-workon platform
-
-DESCRIPTION="End to end test for JPEG decode accelerator"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND="dev-cpp/gtest"
-
-DEPEND="${RDEPEND}
-	chromeos-base/cros-camera-libs"
-
-src_install() {
-	platform_src_install
-	dobin "${OUT}/libjda_test"
-}
diff --git a/media-libs/cros-camera-libjda_test/cros-camera-libjda_test-0.0.1-r616.ebuild b/media-libs/cros-camera-libjda_test/cros-camera-libjda_test-0.0.1-r616.ebuild
new file mode 100644
index 0000000..9f24889
--- /dev/null
+++ b/media-libs/cros-camera-libjda_test/cros-camera-libjda_test-0.0.1-r616.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CROS_WORKON_COMMIT="745cdedb276031fbceedfb76854b10a234cab662"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "21f96983b4c04d23267767a4f371212fe68039d9" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/include common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/common/jpeg/libjda_test"
+
+inherit cros-camera cros-workon platform
+
+DESCRIPTION="End to end test for JPEG decode accelerator"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="dev-cpp/gtest"
+
+DEPEND="${RDEPEND}
+	chromeos-base/cros-camera-libs"
+
+src_install() {
+	platform_src_install
+	dobin "${OUT}/libjda_test"
+}
diff --git a/media-libs/cros-camera-libjea_test/cros-camera-libjea_test-0.0.1-r602.ebuild b/media-libs/cros-camera-libjea_test/cros-camera-libjea_test-0.0.1-r602.ebuild
deleted file mode 100644
index 9e6544b..0000000
--- a/media-libs/cros-camera-libjea_test/cros-camera-libjea_test-0.0.1-r602.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "c37af7d99913a584dbfb1b64fdb83acb19e91c20" "049eedf136293a1ab81617017200cb31032eb384" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/include common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/common/jpeg/libjea_test"
-
-inherit cros-camera cros-workon platform
-
-DESCRIPTION="End to end test for JPEG encode accelerator"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND="
-	chromeos-base/cros-camera-android-deps
-	chromeos-base/cros-camera-libs
-	dev-cpp/gtest:=
-	media-libs/libyuv"
-
-DEPEND="${RDEPEND}"
-
-src_install() {
-	platform_src_install
-	dobin "${OUT}/libjea_test"
-}
diff --git a/media-libs/cros-camera-libjea_test/cros-camera-libjea_test-0.0.1-r669.ebuild b/media-libs/cros-camera-libjea_test/cros-camera-libjea_test-0.0.1-r669.ebuild
new file mode 100644
index 0000000..b775359
--- /dev/null
+++ b/media-libs/cros-camera-libjea_test/cros-camera-libjea_test-0.0.1-r669.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CROS_WORKON_COMMIT="745cdedb276031fbceedfb76854b10a234cab662"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "21f96983b4c04d23267767a4f371212fe68039d9" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/include common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/common/jpeg/libjea_test"
+
+inherit cros-camera cros-workon platform
+
+DESCRIPTION="End to end test for JPEG encode accelerator"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	chromeos-base/cros-camera-android-deps
+	chromeos-base/cros-camera-libs
+	dev-cpp/gtest:=
+	media-libs/libyuv"
+
+DEPEND="${RDEPEND}"
+
+src_install() {
+	platform_src_install
+	dobin "${OUT}/libjea_test"
+}
diff --git a/media-libs/cros-camera-test/cros-camera-test-0.0.1-r621.ebuild b/media-libs/cros-camera-test/cros-camera-test-0.0.1-r621.ebuild
deleted file mode 100644
index b1122bf..0000000
--- a/media-libs/cros-camera-test/cros-camera-test-0.0.1-r621.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "686790e236933c99eeef7eed68f3b4c7ca629daf" "c37af7d99913a584dbfb1b64fdb83acb19e91c20" "049eedf136293a1ab81617017200cb31032eb384" "aa0612733aca2d5ffa65470f07408228b473ebdb" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-# TODO(crbug.com/809389): Avoid directly including headers from other packages.
-CROS_WORKON_SUBTREE=".gn camera/build camera/camera3_test camera/common camera/include chromeos-config common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/camera3_test"
-
-inherit cros-camera cros-workon platform
-
-DESCRIPTION="Chrome OS camera HAL native test."
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="-asan"
-
-RDEPEND="
-	>=chromeos-base/cros-camera-libs-0.0.1-r34:=
-	chromeos-base/chromeos-config-tools
-	chromeos-base/cros-camera-android-deps
-	media-libs/libexif
-	media-libs/libsync
-	media-libs/minigbm
-	virtual/jpeg:0"
-
-DEPEND="${RDEPEND}
-	dev-cpp/gtest:=
-	media-libs/libyuv
-	virtual/pkgconfig"
-
-src_install() {
-	platform_src_install
-	dobin "${OUT}/cros_camera_test"
-}
diff --git a/media-libs/cros-camera-test/cros-camera-test-0.0.1-r714.ebuild b/media-libs/cros-camera-test/cros-camera-test-0.0.1-r714.ebuild
new file mode 100644
index 0000000..f95bacf
--- /dev/null
+++ b/media-libs/cros-camera-test/cros-camera-test-0.0.1-r714.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CROS_WORKON_COMMIT="745cdedb276031fbceedfb76854b10a234cab662"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "05537afb624431739d04be7dec89054d85318249" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "21f96983b4c04d23267767a4f371212fe68039d9" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+# TODO(crbug.com/809389): Avoid directly including headers from other packages.
+CROS_WORKON_SUBTREE=".gn camera/build camera/camera3_test camera/common camera/include chromeos-config common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/camera3_test"
+
+inherit cros-camera cros-workon platform
+
+DESCRIPTION="Chrome OS camera HAL native test."
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="-asan"
+
+RDEPEND="
+	>=chromeos-base/cros-camera-libs-0.0.1-r34:=
+	chromeos-base/chromeos-config-tools
+	chromeos-base/cros-camera-android-deps
+	media-libs/libexif
+	media-libs/libsync
+	media-libs/minigbm
+	virtual/jpeg:0"
+
+DEPEND="${RDEPEND}
+	dev-cpp/gtest:=
+	media-libs/libyuv
+	virtual/pkgconfig"
+
+src_install() {
+	platform_src_install
+	dobin "${OUT}/cros_camera_test"
+}
diff --git a/media-libs/cros-camera-v4l2_test/cros-camera-v4l2_test-0.0.1-r471.ebuild b/media-libs/cros-camera-v4l2_test/cros-camera-v4l2_test-0.0.1-r471.ebuild
deleted file mode 100644
index 4da68c7..0000000
--- a/media-libs/cros-camera-v4l2_test/cros-camera-v4l2_test-0.0.1-r471.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "49e3b5c529d012af19cb326eec9cf346538d4459" "c37af7d99913a584dbfb1b64fdb83acb19e91c20" "049eedf136293a1ab81617017200cb31032eb384" "309b7116bd1f5aeb3ece4e1d90ce13f61b7e1b4b" "aa0612733aca2d5ffa65470f07408228b473ebdb" "791c6808b4f4f5f1c484108d66ff958d65f8f1e3")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/include camera/hal/usb chromeos-config common-mk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-PLATFORM_SUBDIR="camera/hal/usb/v4l2_test"
-
-inherit cros-camera cros-workon platform
-
-DESCRIPTION="Chrome OS camera V4L2 test."
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND="
-	chromeos-base/chromeos-config-tools
-	chromeos-base/libbrillo:=
-	dev-cpp/gtest:=
-	dev-libs/re2:=
-	media-libs/libyuv
-	virtual/jpeg:0"
-
-DEPEND="${RDEPEND}
-	virtual/pkgconfig"
-
-src_install() {
-	platform_src_install
-	dobin "${OUT}/camera_characteristics_test"
-	dobin "${OUT}/media_v4l2_is_capture_device"
-	dobin "${OUT}/media_v4l2_test"
-}
diff --git a/media-libs/cros-camera-v4l2_test/cros-camera-v4l2_test-0.0.1-r571.ebuild b/media-libs/cros-camera-v4l2_test/cros-camera-v4l2_test-0.0.1-r571.ebuild
new file mode 100644
index 0000000..5fd6454
--- /dev/null
+++ b/media-libs/cros-camera-v4l2_test/cros-camera-v4l2_test-0.0.1-r571.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+CROS_WORKON_COMMIT="745cdedb276031fbceedfb76854b10a234cab662"
+CROS_WORKON_TREE=("e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "a9db923ed9d7e66024405ab4fdb8bbe178930040" "f4393b535673365e930c04efeab0ab4a23a5a8a0" "21f96983b4c04d23267767a4f371212fe68039d9" "b859b43cd8fde226526c57956659101cf8b11b74" "3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc" "ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_SUBTREE=".gn camera/build camera/common camera/include camera/hal/usb chromeos-config common-mk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+PLATFORM_SUBDIR="camera/hal/usb/v4l2_test"
+
+inherit cros-camera cros-workon platform
+
+DESCRIPTION="Chrome OS camera V4L2 test."
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	chromeos-base/chromeos-config-tools
+	chromeos-base/libbrillo:=
+	dev-cpp/gtest:=
+	dev-libs/re2:=
+	media-libs/libyuv
+	virtual/jpeg:0"
+
+DEPEND="${RDEPEND}
+	virtual/pkgconfig"
+
+src_install() {
+	platform_src_install
+	dobin "${OUT}/camera_characteristics_test"
+	dobin "${OUT}/media_v4l2_is_capture_device"
+	dobin "${OUT}/media_v4l2_test"
+}
diff --git a/media-libs/gmmlib/Manifest b/media-libs/gmmlib/Manifest
index c02317c..0f8738f7 100644
--- a/media-libs/gmmlib/Manifest
+++ b/media-libs/gmmlib/Manifest
@@ -1 +1 @@
-DIST intel-gmmlib-21.1.1.tar.gz 737024 BLAKE2B d8a3b3bf1abe7faf7821ca120ebc40e0407dd8edf074ec8a8c05063c3ea48c0b4b33694210562aa4e6bd32fae30f45fcd23b04bb961535ffb10684ff180a9e2d SHA512 06becc986eb04c5243389686121bcc597ab16620fcb47943de14f901938dd906ad884b132da0e46ff939e7e599899d4262006efe19d14b3ed87b6f799ca40787
+DIST intel-gmmlib-21.2.1.tar.gz 746883 BLAKE2B 9ffd3319bca42558e139f81ab60e5db5328d155b591c08b763c2b02f2728c04c6f96b79547ff3a1e6b8b8cb940cdd01b33ee04f946ac6fa9eefda5439cc49414 SHA512 457d2815204c8e12292fbe6e642a7409df4b3de597972e3c956d5dfae23b5032fc07cf60c0a10bd58aa6dc62a89225a5b704c98689112d23b81f91c1129bcb97
diff --git a/media-libs/gmmlib/files/0001-Fix-ULT-TEST_BPP-Comparison-in-Chrome-OS-63.patch b/media-libs/gmmlib/files/0001-Fix-ULT-TEST_BPP-Comparison-in-Chrome-OS-63.patch
new file mode 100644
index 0000000..fa047b8
--- /dev/null
+++ b/media-libs/gmmlib/files/0001-Fix-ULT-TEST_BPP-Comparison-in-Chrome-OS-63.patch
@@ -0,0 +1,57 @@
+From 50505ec3710059835f538b57a70ade713b3bf848 Mon Sep 17 00:00:00 2001
+From: johnmach <john.machado@intel.com>
+Date: Tue, 24 Aug 2021 15:01:41 +0530
+Subject: [PATCH] Fix ULT TEST_BPP Comparison in Chrome OS (#63)
+
+---
+ Source/GmmLib/ULT/GmmGen12ResourceULT.cpp     | 4 ++--
+ Source/GmmLib/ULT/GmmGen12dGPUResourceULT.cpp | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/Source/GmmLib/ULT/GmmGen12ResourceULT.cpp b/Source/GmmLib/ULT/GmmGen12ResourceULT.cpp
+index 11fe08f..ccc5421 100644
+--- a/Source/GmmLib/ULT/GmmGen12ResourceULT.cpp
++++ b/Source/GmmLib/ULT/GmmGen12ResourceULT.cpp
+@@ -2114,7 +2114,7 @@ TEST_F(CTestGen12Resource, TestLinearCompressedResource)
+         gmmParams.Format                         = SetResourceFormat(bpp);
+         gmmParams.BaseWidth64                    = 0x1;
+         gmmParams.BaseHeight                     = 1;
+-        gmmParams.Flags.Info.AllowVirtualPadding = (bpp != 8); //OCL uses 8bpp buffers. doc doesn't comment if Linear buffer compr allowed or not on bpp!=8.
++        gmmParams.Flags.Info.AllowVirtualPadding = (bpp != TEST_BPP_8); //OCL uses 8bpp buffers. doc doesn't comment if Linear buffer compr allowed or not on bpp!=8.
+ 
+         GMM_RESOURCE_INFO *ResourceInfo;
+         ResourceInfo = pGmmULTClientContext->CreateResInfoObject(&gmmParams);
+@@ -2159,7 +2159,7 @@ TEST_F(CTestGen12Resource, TestLinearCompressedResource)
+         gmmParams.Format                         = SetResourceFormat(bpp);
+         gmmParams.BaseWidth64                    = 0x1001;
+         gmmParams.BaseHeight                     = 1;
+-        gmmParams.Flags.Info.AllowVirtualPadding = (bpp != 8); //OCL uses 8bpp buffers. document doesn't comment if Linear buffer compr allowed or not on bpp!=8.
++        gmmParams.Flags.Info.AllowVirtualPadding = (bpp != TEST_BPP_8); //OCL uses 8bpp buffers. document doesn't comment if Linear buffer compr allowed or not on bpp!=8.
+         gmmParams.Flags.Gpu.UnifiedAuxSurface    = 1;          //Turn off for separate aux creation
+         gmmParams.Flags.Gpu.CCS                  = 1;
+ 
+diff --git a/Source/GmmLib/ULT/GmmGen12dGPUResourceULT.cpp b/Source/GmmLib/ULT/GmmGen12dGPUResourceULT.cpp
+index deefec2..22f055f 100644
+--- a/Source/GmmLib/ULT/GmmGen12dGPUResourceULT.cpp
++++ b/Source/GmmLib/ULT/GmmGen12dGPUResourceULT.cpp
+@@ -2094,7 +2094,7 @@ TEST_F(CTestGen12dGPUResource, DISABLED_TestLinearCompressedResource)
+         gmmParams.Format                         = SetResourceFormat(bpp);
+         gmmParams.BaseWidth64                    = 0x1;
+         gmmParams.BaseHeight                     = 1;
+-        gmmParams.Flags.Info.AllowVirtualPadding = (bpp != 8); //OCL uses 8bpp buffers. Specification doesn't comment if Linear buffer compr allowed or not on bpp!=8.
++        gmmParams.Flags.Info.AllowVirtualPadding = (bpp != TEST_BPP_8); //OCL uses 8bpp buffers. Specification doesn't comment if Linear buffer compr allowed or not on bpp!=8.
+ 
+         GMM_RESOURCE_INFO *ResourceInfo;
+         ResourceInfo = pGmmULTClientContext->CreateResInfoObject(&gmmParams);
+@@ -2139,7 +2139,7 @@ TEST_F(CTestGen12dGPUResource, DISABLED_TestLinearCompressedResource)
+         gmmParams.Format                         = SetResourceFormat(bpp);
+         gmmParams.BaseWidth64                    = 0x1001;
+         gmmParams.BaseHeight                     = 1;
+-        gmmParams.Flags.Info.AllowVirtualPadding = (bpp != 8); //OCL uses 8bpp buffers. Specification doesn't comment if Linear buffer compr allowed or not on bpp!=8.
++        gmmParams.Flags.Info.AllowVirtualPadding = (bpp != TEST_BPP_8); //OCL uses 8bpp buffers. Specification doesn't comment if Linear buffer compr allowed or not on bpp!=8.
+         gmmParams.Flags.Gpu.UnifiedAuxSurface    = 1;          //Turn off for separate aux creation
+         gmmParams.Flags.Gpu.CCS                  = 1;
+ 
+-- 
+2.25.1
+
diff --git a/media-libs/gmmlib/gmmlib-21.1.1-r3.ebuild b/media-libs/gmmlib/gmmlib-21.1.1-r3.ebuild
deleted file mode 120000
index 18fdbd4..0000000
--- a/media-libs/gmmlib/gmmlib-21.1.1-r3.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-gmmlib-21.1.1.ebuild
\ No newline at end of file
diff --git a/media-libs/gmmlib/gmmlib-21.1.1.ebuild b/media-libs/gmmlib/gmmlib-21.1.1.ebuild
deleted file mode 100644
index d710884..0000000
--- a/media-libs/gmmlib/gmmlib-21.1.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CMAKE_ECLASS=cmake
-
-inherit cmake-multilib
-
-DESCRIPTION="Intel Graphics Memory Management Library"
-HOMEPAGE="https://github.com/intel/gmmlib"
-SRC_URI="https://github.com/intel/gmmlib/archive/refs/tags/intel-${P}.tar.gz"
-S="${WORKDIR}/${PN}-intel-${P}"
-KEYWORDS="*"
-LICENSE="MIT"
-SLOT="0"
-IUSE="test"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="${DEPEND}"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-20.2.2_conditional_testing.patch
-	"${FILESDIR}"/${PN}-20.4.1_custom_cflags.patch
-)
-
-multilib_src_configure() {
-	local mycmakeargs=(
-		-DBUILD_TYPE=Release
-		-DBUILD_TESTING=$(usex test)
-	)
-	cmake_src_configure
-}
diff --git a/media-libs/gmmlib/gmmlib-21.2.1-r4.ebuild b/media-libs/gmmlib/gmmlib-21.2.1-r4.ebuild
new file mode 120000
index 0000000..b56582f
--- /dev/null
+++ b/media-libs/gmmlib/gmmlib-21.2.1-r4.ebuild
@@ -0,0 +1 @@
+gmmlib-21.2.1.ebuild
\ No newline at end of file
diff --git a/media-libs/gmmlib/gmmlib-21.2.1.ebuild b/media-libs/gmmlib/gmmlib-21.2.1.ebuild
new file mode 100644
index 0000000..3dd6da6
--- /dev/null
+++ b/media-libs/gmmlib/gmmlib-21.2.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_ECLASS=cmake
+
+inherit cmake-multilib
+
+DESCRIPTION="Intel Graphics Memory Management Library"
+HOMEPAGE="https://github.com/intel/gmmlib"
+SRC_URI="https://github.com/intel/gmmlib/archive/refs/tags/intel-${P}.tar.gz"
+S="${WORKDIR}/${PN}-intel-${P}"
+KEYWORDS="*"
+LICENSE="MIT"
+SLOT="0"
+IUSE="test"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+    "${FILESDIR}"/${PN}-20.2.2_conditional_testing.patch
+	"${FILESDIR}"/${PN}-20.4.1_custom_cflags.patch
+	"${FILESDIR}"/0001-Fix-ULT-TEST_BPP-Comparison-in-Chrome-OS-63.patch
+)
+
+multilib_src_configure() {
+	local mycmakeargs=(
+		-DBUILD_TYPE=Release
+		-DBUILD_TESTING=$(usex test)
+	)
+	cmake_src_configure
+}
diff --git a/media-libs/go2001-rules/files/udev-trigger-codec.conf b/media-libs/go2001-rules/files/udev-trigger-codec.conf
index 7c45823..a2f2755 100644
--- a/media-libs/go2001-rules/files/udev-trigger-codec.conf
+++ b/media-libs/go2001-rules/files/udev-trigger-codec.conf
@@ -15,6 +15,7 @@
 # much boot time.
 start on starting boot-services
 task
+oom score never
 
 script
   udevadm trigger --action=add --subsystem-match=video4linux \
diff --git a/media-libs/go2001-rules/go2001-rules-0.0.1-r1.ebuild b/media-libs/go2001-rules/go2001-rules-0.0.1-r2.ebuild
similarity index 100%
rename from media-libs/go2001-rules/go2001-rules-0.0.1-r1.ebuild
rename to media-libs/go2001-rules/go2001-rules-0.0.1-r2.ebuild
diff --git a/media-libs/intel-hybrid-driver/files/0002-vp9hdec-fix-pCurrFrame-pMdfSurface-NULL-pointer-issu.patch b/media-libs/intel-hybrid-driver/files/0002-vp9hdec-fix-pCurrFrame-pMdfSurface-NULL-pointer-issu.patch
new file mode 100644
index 0000000..3d4a508
--- /dev/null
+++ b/media-libs/intel-hybrid-driver/files/0002-vp9hdec-fix-pCurrFrame-pMdfSurface-NULL-pointer-issu.patch
@@ -0,0 +1,42 @@
+From 7de7270e7f961dab439e3f2ba16f72ddd524f36a Mon Sep 17 00:00:00 2001
+From: Cooper Chiou <cooper.chiou@intel.com>
+Date: Tue, 13 Jul 2021 16:03:03 +0800
+Subject: [PATCH] vp9hdec: fix pCurrFrame->pMdfSurface NULL pointer issue
+
+There is "Segmentation fault" error when run vp9 decode
+test on BSW/BDW Chromebook by following tool command line:
+/usr/local/libexec/chrome-binary-tests/decode_test --md5
+--visible --video=vp9_video.ivf
+
+Add null point detection function in Intel_HybridVp9Decode_HostVldRenderCb
+to aviod this issue.
+
+Signed-off-by: Cooper Chiou <cooper.chiou@intel.com>
+---
+ src/vp9hdec/decode_hybrid_vp9.cpp | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/src/vp9hdec/decode_hybrid_vp9.cpp b/src/vp9hdec/decode_hybrid_vp9.cpp
+index 1baf339177bb..7a086e2c8298 100644
+--- a/src/vp9hdec/decode_hybrid_vp9.cpp
++++ b/src/vp9hdec/decode_hybrid_vp9.cpp
+@@ -3289,9 +3289,16 @@ VAStatus Intel_HybridVp9Decode_HostVldRenderCb (
+ 
+     // Reset padding flag of current frame and update surface dimension
+     surface = SURFACE(pMdfDecodeFrame->ucCurrIndex);
++    if ((surface == NULL) || (surface->private_data == NULL))
++        return VA_STATUS_ERROR_INVALID_PARAMETER;
++
+     pFrameSource = (INTEL_DECODE_HYBRID_VP9_MDF_FRAME_SOURCE *)(surface->private_data);
+     pCurrFrame = &(pFrameSource->Frame);
+     pFrameSource->bHasPadding = false;
++
++    if (pCurrFrame->pMdfSurface == NULL)
++        return VA_STATUS_ERROR_INVALID_PARAMETER;
++
+     pCurrFrame->pMdfSurface->SetSurfaceStateDimensions(
+         pMdfDecodeFrame->dwWidth,
+         pMdfDecodeFrame->dwHeight);
+-- 
+2.17.1
+
diff --git a/media-libs/intel-hybrid-driver/intel-hybrid-driver-1.0.1-r7.ebuild b/media-libs/intel-hybrid-driver/intel-hybrid-driver-1.0.1-r8.ebuild
similarity index 100%
rename from media-libs/intel-hybrid-driver/intel-hybrid-driver-1.0.1-r7.ebuild
rename to media-libs/intel-hybrid-driver/intel-hybrid-driver-1.0.1-r8.ebuild
diff --git a/media-libs/intel-hybrid-driver/intel-hybrid-driver-1.0.1.ebuild b/media-libs/intel-hybrid-driver/intel-hybrid-driver-1.0.1.ebuild
index 8abf7c0..45938eb 100644
--- a/media-libs/intel-hybrid-driver/intel-hybrid-driver-1.0.1.ebuild
+++ b/media-libs/intel-hybrid-driver/intel-hybrid-driver-1.0.1.ebuild
@@ -25,6 +25,7 @@
 PATCHES=(
 	"${FILESDIR}/${P}-respect-wayland-configure-flags.patch"
 	"${FILESDIR}/0001-Remove-blitter-usage.patch"
+	"${FILESDIR}/0002-vp9hdec-fix-pCurrFrame-pMdfSurface-NULL-pointer-issu.patch"
 )
 
 src_prepare() {
diff --git a/media-libs/libcamera/libcamera-0.0.1-r540.ebuild b/media-libs/libcamera/libcamera-0.0.1-r540.ebuild
deleted file mode 100644
index 74b47af..0000000
--- a/media-libs/libcamera/libcamera-0.0.1-r540.ebuild
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="c11cc6f20b4f701afaa24416be2b711e2415d79d"
-CROS_WORKON_TREE="f069be1e4124d2430ef62cb3f389fcf33493beac"
-CROS_WORKON_PROJECT="chromiumos/third_party/libcamera"
-CROS_WORKON_INCREMENTAL_BUILD="1"
-
-inherit cros-workon meson
-
-DESCRIPTION="Camera support library for Linux"
-HOMEPAGE="https://www.libcamera.org"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="*"
-IUSE="debug dev doc ipu3 rkisp1 test udev"
-
-RDEPEND="
-	chromeos-base/cros-camera-libs
-	dev? ( dev-libs/libevent[threads] )
-	dev-libs/libyaml
-	media-libs/libcamera-configs
-	media-libs/libjpeg-turbo
-	media-libs/libexif
-	>=net-libs/gnutls-3.3:=
-	media-libs/libyuv
-	udev? ( virtual/libudev )
-"
-
-DEPEND="
-	${RDEPEND}
-	dev-libs/openssl
-	>=dev-python/pyyaml-3:=
-"
-
-src_configure() {
-	local pipelines=(
-		"uvcvideo"
-		$(usev ipu3)
-		$(usev rkisp1)
-	)
-
-	pipeline_list() {
-		printf '%s,' "$@" | sed 's:,$::'
-	}
-
-	BUILD_DIR="$(cros-workon_get_build_dir)"
-
-	local emesonargs=(
-		$(meson_use test)
-		$(meson_feature dev cam)
-		$(meson_feature doc documentation)
-		-Dandroid="enabled"
-		-Dandroid_platform="cros"
-		-Dpipelines="$(pipeline_list "${pipelines[@]}")"
-		--buildtype "$(usex debug debug plain)"
-		--sysconfdir /etc/camera
-	)
-	meson_src_configure
-}
-
-src_compile() {
-	meson_src_compile
-}
-
-src_install() {
-	meson_src_install
-
-	dosym ../libcamera.so "/usr/$(get_libdir)/camera_hal/libcamera.so"
-
-	dostrip -x "/usr/$(get_libdir)/libcamera/"
-}
diff --git a/media-libs/libcamera/libcamera-0.0.1-r665.ebuild b/media-libs/libcamera/libcamera-0.0.1-r665.ebuild
new file mode 100644
index 0000000..6381dd0
--- /dev/null
+++ b/media-libs/libcamera/libcamera-0.0.1-r665.ebuild
@@ -0,0 +1,75 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="0ce723fc8bf6095074562a871b9215d6dea28ab5"
+CROS_WORKON_TREE="8db027be3b9ecf3e9f3f9cc2638294c62919c830"
+CROS_WORKON_PROJECT="chromiumos/third_party/libcamera"
+CROS_WORKON_INCREMENTAL_BUILD="1"
+
+inherit cros-camera cros-workon meson
+
+DESCRIPTION="Camera support library for Linux"
+HOMEPAGE="https://www.libcamera.org"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="*"
+IUSE="debug dev doc ipu3 rkisp1 test udev"
+
+RDEPEND="
+	chromeos-base/cros-camera-libs
+	dev? ( dev-libs/libevent[threads] )
+	dev-libs/libyaml
+	media-libs/libcamera-configs
+	media-libs/libjpeg-turbo
+	media-libs/libexif
+	>=net-libs/gnutls-3.3:=
+	media-libs/libyuv
+	udev? ( virtual/libudev )
+"
+
+DEPEND="
+	${RDEPEND}
+	dev-libs/openssl
+	>=dev-python/pyyaml-3:=
+"
+
+src_configure() {
+	local pipelines=(
+		"uvcvideo"
+		$(usev ipu3)
+		$(usev rkisp1)
+	)
+
+	pipeline_list() {
+		printf '%s,' "$@" | sed 's:,$::'
+	}
+
+	BUILD_DIR="$(cros-workon_get_build_dir)"
+
+	local emesonargs=(
+		$(meson_use test)
+		$(meson_feature dev cam)
+		$(meson_feature doc documentation)
+		-Dandroid="enabled"
+		-Dandroid_platform="cros"
+		-Dpipelines="$(pipeline_list "${pipelines[@]}")"
+		--buildtype "$(usex debug debug plain)"
+		--sysconfdir /etc/camera
+	)
+	meson_src_configure
+}
+
+src_compile() {
+	meson_src_compile
+}
+
+src_install() {
+	meson_src_install
+
+	cros-camera_dohal "${D}/usr/$(get_libdir)/libcamera-hal.so" libcamera-hal.so
+
+	dostrip -x "/usr/$(get_libdir)/libcamera/"
+}
diff --git a/media-libs/libcamera/libcamera-9999.ebuild b/media-libs/libcamera/libcamera-9999.ebuild
index c6b2ea6..1e28d2e 100644
--- a/media-libs/libcamera/libcamera-9999.ebuild
+++ b/media-libs/libcamera/libcamera-9999.ebuild
@@ -6,7 +6,7 @@
 CROS_WORKON_PROJECT="chromiumos/third_party/libcamera"
 CROS_WORKON_INCREMENTAL_BUILD="1"
 
-inherit cros-workon meson
+inherit cros-camera cros-workon meson
 
 DESCRIPTION="Camera support library for Linux"
 HOMEPAGE="https://www.libcamera.org"
@@ -67,7 +67,7 @@
 src_install() {
 	meson_src_install
 
-	dosym ../libcamera.so "/usr/$(get_libdir)/camera_hal/libcamera.so"
+	cros-camera_dohal "${D}/usr/$(get_libdir)/libcamera-hal.so" libcamera-hal.so
 
 	dostrip -x "/usr/$(get_libdir)/libcamera/"
 }
diff --git a/media-libs/libepoxy/Manifest b/media-libs/libepoxy/Manifest
index b422cf6..3ac92d3 100644
--- a/media-libs/libepoxy/Manifest
+++ b/media-libs/libepoxy/Manifest
@@ -1 +1 @@
-DIST libepoxy-1.5.4.tar.gz 337615 BLAKE2B 2793fde6da59079dfadc653c9f0712b0bd2ca1455a8cda7982bce61c35a3629641a30a76db059af635c1fa0076b4e6c56874b199b41d548afbbad8f6e43384e3 SHA512 c8b03f0a39df320fdd163a34c35f9ffbed51bc0174fd89a7dc4b3ab2439413087e1e1a2fe57418520074abd435051cbf03eb2a7bf8897da1712bbbc69cf27cc5
+DIST libepoxy-1.5.9_pre1.tar.gz 332008 BLAKE2B f6421e816366db094e251c9c9d7fc142675d22ef7513e9681a410de58821b4fb321f3cac3cee2577ea24734ed0f640b2888b4e4a6991bb3a2f36c02aa87722a9 SHA512 1f02aa9cdea549b8fde7b3c698b80586c55e6795ce43029ad4754b1e16a1c4cca7ddb5cbc6db46eebb1d8a20d4510bd0714426a89f4695b3f5cc9e95c30769b5
diff --git a/media-libs/libepoxy/libepoxy-1.5.4-r2.ebuild b/media-libs/libepoxy/libepoxy-1.5.4-r2.ebuild
deleted file mode 120000
index 99a59c2..0000000
--- a/media-libs/libepoxy/libepoxy-1.5.4-r2.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-libepoxy-1.5.4.ebuild
\ No newline at end of file
diff --git a/media-libs/libepoxy/libepoxy-1.5.4.ebuild b/media-libs/libepoxy/libepoxy-1.5.4.ebuild
deleted file mode 100644
index fc34455..0000000
--- a/media-libs/libepoxy/libepoxy-1.5.4.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-AUTOTOOLS_AUTORECONF=yes
-
-EGIT_REPO_URI="git://github.com/anholt/libepoxy.git"
-
-if [[ ${PV} = 9999* ]]; then
-	GIT_ECLASS="git-r3"
-	KEYWORDS="*"
-	SRC_URI=""
-else
-	KEYWORDS="*"
-	SRC_URI="https://github.com/anholt/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-fi
-
-# Uncomment the following line temporarily to update the manifest when updating
-# the pinned version via: ebuild $(equery w libepoxy) manifest
-#RESTRICT=nomirror
-
-PYTHON_COMPAT=( python3_{6,7,8,9} )
-PYTHON_REQ_USE='xml(+)'
-inherit autotools-multilib ${GIT_ECLASS} python-any-r1
-
-DESCRIPTION="Epoxy is a library for handling OpenGL function pointer management for you"
-HOMEPAGE="https://github.com/anholt/libepoxy"
-
-
-LICENSE="MIT"
-SLOT="0"
-IUSE="test"
-
-DEPEND="${PYTHON_DEPS}
-	x11-drivers/opengles-headers
-	x11-misc/util-macros
-	x11-libs/libX11[${MULTILIB_USEDEP}]"
-RDEPEND="virtual/opengles"
-
-src_unpack() {
-	default
-	[[ $PV = 9999* ]] && git-r3_src_unpack
-}
diff --git a/media-libs/libepoxy/libepoxy-1.5.9_pre1.ebuild b/media-libs/libepoxy/libepoxy-1.5.9_pre1.ebuild
new file mode 100644
index 0000000..7658a9f
--- /dev/null
+++ b/media-libs/libepoxy/libepoxy-1.5.9_pre1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=7
+
+EGIT_REPO_URI="git://github.com/anholt/libepoxy.git"
+
+GIT_SHA1="ecfa8e0f083084181d36966fa084aca9a6c97d53"
+
+if [[ ${PV} = 9999* ]]; then
+	GIT_ECLASS="git-r3"
+	KEYWORDS="*"
+	SRC_URI=""
+else
+	KEYWORDS="*"
+	SRC_URI="https://github.com/anholt/${PN}/archive/${GIT_SHA1}.tar.gz -> ${P}.tar.gz"
+fi
+
+# Uncomment the following line temporarily to update the manifest when updating
+# the pinned version via: ebuild $(equery w libepoxy) manifest
+#RESTRICT=nomirror
+
+PYTHON_COMPAT=( python3_{6,7,8,9} )
+PYTHON_REQ_USE='xml(+)'
+inherit meson ${GIT_ECLASS} python-any-r1
+
+DESCRIPTION="Epoxy is a library for handling OpenGL function pointer management for you"
+HOMEPAGE="https://github.com/anholt/libepoxy"
+
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="test"
+
+DEPEND="${PYTHON_DEPS}
+	x11-drivers/opengles-headers
+	x11-misc/util-macros
+	x11-libs/libX11"
+RDEPEND="virtual/opengles"
+
+src_unpack() {
+	default
+	[[ ${PV} = 9999* ]] && git-r3_src_unpack
+}
+
+src_configure() {
+	local emesonargs=(
+		-Dtests=false
+	)
+	meson_src_configure
+}
diff --git a/media-libs/libglvnd/Manifest b/media-libs/libglvnd/Manifest
new file mode 100644
index 0000000..8e3cd1a
--- /dev/null
+++ b/media-libs/libglvnd/Manifest
@@ -0,0 +1 @@
+DIST libglvnd-1.3.3.tar.bz2 715179 BLAKE2B 781550cbda489dca31596115c78edd1d4f1fe66062218c83ccf6cb34707501fce839b649c2b0aee3621c283397acca8fb40ad16c0388551ce7caa7fd79b7dbf5 SHA512 7da9e12c010a8f109cd24ca4c2ffc846dd7d23f82157e1e39b8ae69575fabcc9592c0b639b23d2112fe2026b679f1536f1b705a5c948fefea105418803e1b629
diff --git a/media-libs/libglvnd/OWNERS b/media-libs/libglvnd/OWNERS
new file mode 100644
index 0000000..ee030df
--- /dev/null
+++ b/media-libs/libglvnd/OWNERS
@@ -0,0 +1,3 @@
+hoegsberg@chromium.org
+jbates@chromium.org
+robdclark@chromium.org
diff --git a/media-libs/libglvnd/libglvnd-1.3.3-r2.ebuild b/media-libs/libglvnd/libglvnd-1.3.3-r2.ebuild
new file mode 100644
index 0000000..94f1299
--- /dev/null
+++ b/media-libs/libglvnd/libglvnd-1.3.3-r2.ebuild
@@ -0,0 +1,82 @@
+# Copyright 2018-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+EGIT_REPO_URI="https://gitlab.freedesktop.org/glvnd/libglvnd.git"
+
+if [[ ${PV} = 9999* ]]; then
+	GIT_ECLASS="git-r3"
+fi
+
+PYTHON_COMPAT=( python3_{6..8} )
+VIRTUALX_REQUIRED=manual
+
+inherit ${GIT_ECLASS} meson multilib-minimal python-any-r1 virtualx
+
+DESCRIPTION="The GL Vendor-Neutral Dispatch library"
+HOMEPAGE="https://gitlab.freedesktop.org/glvnd/libglvnd"
+if [[ ${PV} = 9999* ]]; then
+	SRC_URI=""
+else
+	KEYWORDS="*"
+	SRC_URI="https://gitlab.freedesktop.org/glvnd/${PN}/-/archive/v${PV}/${PN}-v${PV}.tar.bz2 -> ${P}.tar.bz2"
+	S=${WORKDIR}/${PN}-v${PV}
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="test X"
+RESTRICT="!test? ( test )"
+
+BDEPEND="${PYTHON_DEPS}
+	test? ( X? ( ${VIRTUALX_DEPEND} ) )"
+RDEPEND="
+	!media-libs/mesa[-libglvnd(-)]
+	!media-libs/mesa-amd[-libglvnd(-)]
+	!media-libs/mesa-freedreno[-libglvnd(-)]
+	!media-libs/mesa-img[-libglvnd(-)]
+	!media-libs/mesa-iris[-libglvnd(-)]
+	!media-libs/mesa-llvmpipe[-libglvnd(-)]
+	!media-libs/mesa-panfrost[-libglvnd(-)]
+	X? (
+		x11-libs/libX11[${MULTILIB_USEDEP}]
+		x11-libs/libXext[${MULTILIB_USEDEP}]
+	)"
+DEPEND="${RDEPEND}
+	X? ( x11-base/xorg-proto )"
+
+src_prepare() {
+	default
+	sed -i -e "/^PLATFORM_SYMBOLS/a '__gentoo_check_ldflags__'," \
+		bin/symbols-check.py || die
+}
+
+multilib_src_configure() {
+	local emesonargs=(
+		$(meson_feature X x11)
+		$(meson_feature X glx)
+		-Dgles1=false
+		-Dheaders=false
+		-Dentrypoint-patching=disabled
+	)
+	use elibc_musl && emesonargs+=( -Dtls=disabled )
+
+	meson_src_configure
+}
+
+multilib_src_compile() {
+	meson_src_compile
+}
+
+multilib_src_test() {
+	if use X; then
+		virtx meson_src_test
+	else
+		meson_src_test
+	fi
+}
+
+multilib_src_install() {
+	meson_src_install
+}
diff --git a/media-libs/libglvnd/metadata.xml b/media-libs/libglvnd/metadata.xml
new file mode 100644
index 0000000..7a349da
--- /dev/null
+++ b/media-libs/libglvnd/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type="project">
+		<email>x11@gentoo.org</email>
+		<name>X11</name>
+	</maintainer>
+	<upstream>
+		<remote-id type="github">NVIDIA/libglvnd</remote-id>
+	</upstream>
+</pkgmetadata>
diff --git a/media-libs/libv4lplugins/libv4lplugins-0.0.1-r43.ebuild b/media-libs/libv4lplugins/libv4lplugins-0.0.1-r43.ebuild
deleted file mode 100644
index 6f383ed..0000000
--- a/media-libs/libv4lplugins/libv4lplugins-0.0.1-r43.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-CROS_WORKON_COMMIT="a27091de7f759ebac3021472b95030b1c7ee9781"
-CROS_WORKON_TREE="9e0363f36d5a77f1c0625ae393afb70cc067bf82"
-CROS_WORKON_PROJECT="chromiumos/third_party/libv4lplugins"
-inherit autotools cros-workon eutils
-
-MY_P=v4l-utils-1.18.1
-
-DESCRIPTION="Separate plugin library from upstream v4l-utils package"
-HOMEPAGE="http://git.linuxtv.org/v4l-utils.git"
-SRC_URI="http://linuxtv.org/downloads/v4l-utils/${MY_P}.tar.bz2"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="*"
-PLUGIN_IUSE="rockchip rockchip_v2"
-IUSE="${PLUGIN_IUSE}"
-REQUIRED_USE="^^ ( ${PLUGIN_IUSE} )"
-
-RDEPEND="media-libs/libv4l"
-DEPEND="${RDEPEND}"
-
-S=${WORKDIR}/${MY_P}
-
-src_unpack() {
-	cros-workon_src_unpack
-	default
-}
-
-src_prepare() {
-	if use rockchip; then
-		PLUGIN_DIR="libv4l-rockchip"
-	elif use rockchip_v2; then
-		PLUGIN_DIR="libv4l-rockchip_v2"
-	fi
-	mv ${PLUGIN_DIR} lib || die
-	# Append "SUBDIRS += ${PLUGIN_DIR}" at the end of lib/Makefile.am
-	sed -i -e "\$aSUBDIRS += ${PLUGIN_DIR}" lib/Makefile.am || die
-	# Add "lib/${PLUGIN_DIR}/Makefile" after lib/libv4l2rds/Makefile
-	sed -i -e "s:libv4l2rds/Makefile:&\n\tlib/${PLUGIN_DIR}/Makefile:" \
-		configure.ac || die
-	rm -rf include
-	eautoreconf
-}
-
-src_configure() {
-	econf \
-		--disable-static \
-		--disable-qv4l2 \
-		--disable-v4l-utils \
-		--without-jpeg
-}
-
-src_compile() {
-	emake -C lib/${PLUGIN_DIR}
-}
-
-src_install() {
-	emake -C lib/${PLUGIN_DIR} DESTDIR="${D}" install
-}
diff --git a/media-libs/libv4lplugins/libv4lplugins-0.0.1-r44.ebuild b/media-libs/libv4lplugins/libv4lplugins-0.0.1-r44.ebuild
new file mode 100644
index 0000000..efda81c
--- /dev/null
+++ b/media-libs/libv4lplugins/libv4lplugins-0.0.1-r44.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+CROS_WORKON_COMMIT="2866baaaeacea6d784b08530bd2b7ec22dd0c7c6"
+CROS_WORKON_TREE="4c456646357a19df1ab6f5b86f5a27edb33f59c6"
+CROS_WORKON_PROJECT="chromiumos/third_party/libv4lplugins"
+inherit autotools cros-workon eutils
+
+MY_P=v4l-utils-1.18.1
+
+DESCRIPTION="Separate plugin library from upstream v4l-utils package"
+HOMEPAGE="http://git.linuxtv.org/v4l-utils.git"
+SRC_URI="http://linuxtv.org/downloads/v4l-utils/${MY_P}.tar.bz2"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="*"
+PLUGIN_IUSE="rockchip rockchip_v2"
+IUSE="${PLUGIN_IUSE}"
+REQUIRED_USE="^^ ( ${PLUGIN_IUSE} )"
+
+RDEPEND="media-libs/libv4l"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+src_unpack() {
+	cros-workon_src_unpack
+	default
+}
+
+src_prepare() {
+	if use rockchip; then
+		PLUGIN_DIR="libv4l-rockchip"
+	elif use rockchip_v2; then
+		PLUGIN_DIR="libv4l-rockchip_v2"
+	fi
+	mv ${PLUGIN_DIR} lib || die
+	# Append "SUBDIRS += ${PLUGIN_DIR}" at the end of lib/Makefile.am
+	sed -i -e "\$aSUBDIRS += ${PLUGIN_DIR}" lib/Makefile.am || die
+	# Add "lib/${PLUGIN_DIR}/Makefile" after lib/libv4l2rds/Makefile
+	sed -i -e "s:libv4l2rds/Makefile:&\n\tlib/${PLUGIN_DIR}/Makefile:" \
+		configure.ac || die
+	rm -rf include
+	eautoreconf
+}
+
+src_configure() {
+	econf \
+		--disable-static \
+		--disable-qv4l2 \
+		--disable-v4l-utils \
+		--without-jpeg
+}
+
+src_compile() {
+	emake -C lib/${PLUGIN_DIR}
+}
+
+src_install() {
+	emake -C lib/${PLUGIN_DIR} DESTDIR="${D}" install
+}
diff --git a/media-libs/mesa-amd/README.md b/media-libs/mesa-amd/README.md
new file mode 100644
index 0000000..204f899
--- /dev/null
+++ b/media-libs/mesa-amd/README.md
@@ -0,0 +1,54 @@
+### mesa-amd dev and uprev process
+
+mesa-amd follows a traditional [cros_workon](https://chromium.googlesource.com/chromiumos/docs/+/master/developer_guide.md#making-changes-to-packages-whose-source-code-is-checked-into-chromium-os-git-repositories) workflow where changes are made directly to src/third_party/mesa-amd. This is different from the [mesa](https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/HEAD/media-libs/mesa/mesa-9999.ebuild) project, which follows the CROS_WORKON_MANUAL_UPREV workflow.
+
+Working in mesa-amd takes an "upstream first" philosophy, and downstream changes represent technical debt and should be avoided. Commit messages for downstream changes in mesa-amd are [prefixed in a similar fashion](https://chromium.googlesource.com/chromiumos/docs/+/HEAD/kernel_development.md#commit-messages-summary-lines-chromium_upstream_fromlist_backport) as changes in the kernel and elsewhere in Chrome OS.
+
+Refer to the [upstream documentation](https://docs.mesa3d.org/releasing.html#release-schedule) for details about upstream mesa's release schedule. To summarize, approximately every three months is a [feature release](https://docs.mesa3d.org/releasing.html#feature-releases), followed by [stable releases](https://docs.mesa3d.org/releasing.html#stable-releases) approximately every two weeks.
+
+mesa-amd generally tracks upstream feature release branches, with possibly a small number of downstream changes applied on top.
+
+Tags and branches from upstream are automatically synced to the chromiumos mesa mirror. Tags and branch names are synced under upstream/... (for example, [upstream/mesa-21.2.1](https://chromium.googlesource.com/chromiumos/third_party/mesa/+/refs/tags/upstream/mesa-21.2.1) and [upstream/21.1](https://chromium.googlesource.com/chromiumos/third_party/mesa/+/refs/heads/upstream/21.2)).
+
+#### Uprev process
+
+When uprevving to a new release branch, follow the below process to reset the tree to its upstream state.
+```
+ # Create a merge commit that resolves all merge conflicts such that all changes are discarded in favor of those in the new upstream branch
+ git merge upstream/mesa-21.2.1 --no-commit
+ git read-tree upstream/mesa-21.2.1
+ # Restore this file to ensure that presubmit checks survive the uprev.
+ git add PRESUBMIT.cfg
+ # Create an appropriate commit message, and add BUG= and TEST= tags appropriately.
+ git commit -m "CHROMIUM: Reset tree to upstream/mesa-21.2.1"
+ # Clean up the index
+ git clean -f
+ git reset --hard HEAD
+ # Confirm that the state of the tree is identical to the upstream state, modulo the PRESUMBIT.cfg that was added.
+ git diff-tree --no-commit-id --name-status upstream/mesa-21.2.1 HEAD
+```
+
+Use `git log --first-parent --pretty='%h %s'` to see the list of changes since the last time the tree was reset, and assess whether downstream patches can be dropped, or if they need to be cherry-picked again. You may need to cherry-pick some long-lived dowstream changes (i.e. CHROMIUM: patches). When you cherry-pick such a patch, edit the commit message to strip old tags such as Change-Id, Reviewed-By, etc., and update the BUG= to reference the bug tracking the uprev effort.
+
+Subsequent stable releases from upstream can be applied by using `git merge` and uploading the merge commit to Gerrit.
+
+
+#### Downstream changes
+The preferred flow to get changes into mesa-amd is to:
+1. Send a change upstream for review
+2. Get it merged upstream
+3. Ensure it is included in the next upstream stable release
+4. `git merge` the next stable release containing the change.
+
+There may be cases where we cannot do this for a particular change, or a change is needed more urgently than this process allows. In such cases, we may upload changes to Gerrit with an appropriate prefix. These prefixes are:
+- UPSTREAM: Indicates that the patch has landed in upstream mesa
+  - This is appropriate when the UPSTREAM change will never land in a subsequent stable release, or we need to land it in Chrome OS more expediently than the upstream stable release process allows for.
+  - Use `git cherry-pick -x` to ensure that the commit message contains the commit hash of the UPSTREAM commit
+- BACKPORT: Same as upstream, but there are conflicts that needed to be addressed
+  - Describe the conflicts and their resolution in the commit message
+- FROMLIST: The patch is under review in an upstream merge request
+  - These should not be merged except for P0/P1 issues. It's strongly preferred to wait for the completion of the review upstream, and then apply the change as UPSTREAM
+  - Owner+Reviewer of this change is responsible to follow up on the upstream review process and ensure that it gets merged in a timely manner.
+  - Include a link to the merge-request in the commit message
+- CHROMIUM: The patch cannot be upstreamed
+  - There must be strong justification for why an upstreamable solution is not viable.
diff --git a/media-libs/mesa-amd/files/drirc b/media-libs/mesa-amd/files/drirc
index 346579b..793a92f 100644
--- a/media-libs/mesa-amd/files/drirc
+++ b/media-libs/mesa-amd/files/drirc
@@ -12,5 +12,11 @@
          <option name="force_s3tc_enable" value="true"/>
       </application>
    </device>
+   <device driver="radeonsi">
+      <application name="Default">
+         <!-- Disabled protected content check for secure playback -->
+         <option name="disable_protected_content_check" value="true"/>
+      </application>
+   </device>
 </driconf>
 
diff --git a/media-libs/mesa-amd/mesa-amd-21.1.0-r48.ebuild b/media-libs/mesa-amd/mesa-amd-21.1.0-r48.ebuild
deleted file mode 100644
index 567ac1e..0000000
--- a/media-libs/mesa-amd/mesa-amd-21.1.0-r48.ebuild
+++ /dev/null
@@ -1,131 +0,0 @@
-# Copyright 1999-2019 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
-
-EAPI=6
-
-CROS_WORKON_COMMIT="ae283c6c143ae77e7dedbf3f9ea7f2f3ad945f87"
-CROS_WORKON_TREE="cbc74a968f7dbca5312df2f7cb8af5ecadf471c5"
-CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
-CROS_WORKON_LOCALNAME="mesa-amd"
-CROS_WORKON_EGIT_BRANCH="chromeos-amd"
-
-inherit base flag-o-matic meson toolchain-funcs cros-workon
-
-DESCRIPTION="The Mesa 3D Graphics Library"
-HOMEPAGE="http://mesa3d.org/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="*"
-
-VIDEO_CARDS="intel amdgpu radeon freedreno llvmpipe"
-for card in ${VIDEO_CARDS}; do
-	IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS} debug vulkan"
-
-# keep correct libdrm and dri2proto dep
-# keep blocks in rdepend for binpkg
-RDEPEND="
-	virtual/libelf
-	dev-libs/expat
-	x11-libs/libdrm
-	!media-libs/mesa
-"
-
-DEPEND="${RDEPEND}
-	sys-devel/bison
-	sys-devel/flex
-	virtual/pkgconfig
-	x11-base/xorg-proto
-	x11-libs/libva
-	sys-devel/llvm
-"
-
-driver_list() {
-	local drivers="$(sort -u <<< "${1// /$'\n'}")"
-	echo "${drivers//$'\n'/,}"
-}
-
-src_configure() {
-	tc-getPROG PKG_CONFIG pkg-config
-
-	cros_optimize_package_for_speed
-
-	# Intel code
-	dri_driver_enable video_cards_intel i965
-
-	gallium_enable video_cards_llvmpipe swrast
-
-	# ATI code
-	gallium_enable video_cards_radeon r300 r600
-	gallium_enable video_cards_amdgpu radeonsi
-
-	# Freedreno code
-	gallium_enable video_cards_freedreno freedreno
-
-	if use vulkan; then
-		vulkan_enable video_cards_intel intel
-		vulkan_enable video_cards_amdgpu amd
-	fi
-
-	export LLVM_CONFIG=${SYSROOT}/usr/lib/llvm/bin/llvm-config-host
-
-	append-flags "-UENABLE_SHADER_CACHE"
-
-	emesonargs+=(
-		-Dglx=disabled
-		-Dllvm=true
-		-Dshared-llvm=false
-		-Dplatforms=
-		-Degl=true
-		-Dgbm=false
-		-Dgl=false
-		-Dgles1=false
-		-Dgles2=true
-		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
-		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
-		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
-		--buildtype $(usex debug debug release)
-		-Dgallium-va=true
-		-Dva-libs-path="/usr/$(get_libdir)/va/drivers"
-	)
-
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	# Remove redundant GLES headers
-	rm -f "${D}"/usr/include/{EGL,GLES2,GLES3,KHR}/*.h || die "Removing GLES headers failed."
-
-	# Set driconf option to enable S3TC hardware decompression
-	insinto "/etc/"
-	doins "${FILESDIR}"/drirc
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-dri_driver_enable() {
-	if [[ $1 == -- ]] || use $1; then
-		shift
-		DRI_DRIVERS+=("$@")
-	fi
-}
-
-gallium_enable() {
-	if [[ $1 == -- ]] || use $1; then
-		shift
-		GALLIUM_DRIVERS+=("$@")
-	fi
-}
-
-vulkan_enable() {
-	if [[ $1 == -- ]] || use $1; then
-		shift
-		VULKAN_DRIVERS+=("$@")
-	fi
-}
diff --git a/media-libs/mesa-amd/mesa-amd-21.2.1-r66.ebuild b/media-libs/mesa-amd/mesa-amd-21.2.1-r66.ebuild
new file mode 100644
index 0000000..179abc2
--- /dev/null
+++ b/media-libs/mesa-amd/mesa-amd-21.2.1-r66.ebuild
@@ -0,0 +1,135 @@
+# Copyright 1999-2019 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
+
+EAPI=6
+
+CROS_WORKON_COMMIT="a59d1c4cce4c7c084f0e1f4870a4f457aafa2ee5"
+CROS_WORKON_TREE="55afc873edb87a9fbc88fea984156a8c1d3de9ca"
+CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
+CROS_WORKON_LOCALNAME="mesa-amd"
+CROS_WORKON_EGIT_BRANCH="chromeos-amd"
+
+inherit base flag-o-matic meson toolchain-funcs cros-workon
+
+DESCRIPTION="The Mesa 3D Graphics Library"
+HOMEPAGE="http://mesa3d.org/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="*"
+
+VIDEO_CARDS="intel amdgpu radeon freedreno llvmpipe"
+for card in ${VIDEO_CARDS}; do
+	IUSE_VIDEO_CARDS+=" video_cards_${card}"
+done
+
+IUSE="${IUSE_VIDEO_CARDS} debug vulkan libglvnd"
+
+# keep correct libdrm and dri2proto dep
+# keep blocks in rdepend for binpkg
+RDEPEND="
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
+	virtual/libelf
+	dev-libs/expat
+	x11-libs/libdrm
+	!media-libs/mesa
+"
+
+DEPEND="${RDEPEND}
+	sys-devel/bison
+	sys-devel/flex
+	virtual/pkgconfig
+	x11-base/xorg-proto
+	x11-libs/libva
+	sys-devel/llvm
+"
+
+driver_list() {
+	local drivers="$(sort -u <<< "${1// /$'\n'}")"
+	echo "${drivers//$'\n'/,}"
+}
+
+src_configure() {
+	tc-getPROG PKG_CONFIG pkg-config
+
+	cros_optimize_package_for_speed
+
+	# Intel code
+	dri_driver_enable video_cards_intel i965
+
+	gallium_enable video_cards_llvmpipe swrast
+
+	# ATI code
+	gallium_enable video_cards_radeon r300 r600
+	gallium_enable video_cards_amdgpu radeonsi
+
+	# Freedreno code
+	gallium_enable video_cards_freedreno freedreno
+
+	if use vulkan; then
+		vulkan_enable video_cards_intel intel
+		vulkan_enable video_cards_amdgpu amd
+	fi
+
+	export LLVM_CONFIG=${SYSROOT}/usr/lib/llvm/bin/llvm-config-host
+
+	append-flags "-UENABLE_SHADER_CACHE"
+
+	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
+		-Dglx=disabled
+		-Dllvm=true
+		-Dshared-llvm=false
+		-Dplatforms=
+		-Degl=true
+		-Dgbm=false
+		-Dgl=false
+		-Dgles1=false
+		-Dgles2=true
+		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
+		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
+		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
+		--buildtype $(usex debug debug release)
+		-Dgallium-va=true
+		-Dva-libs-path="/usr/$(get_libdir)/va/drivers"
+	)
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# Remove redundant GLES headers
+	rm -f "${D}"/usr/include/{EGL,GLES2,GLES3,KHR}/*.h || die "Removing GLES headers failed."
+
+	# Set driconf option to enable S3TC hardware decompression
+	insinto "/etc/"
+	doins "${FILESDIR}"/drirc
+}
+
+# $1 - VIDEO_CARDS flag (check skipped for "--")
+# other args - names of DRI drivers to enable
+dri_driver_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		DRI_DRIVERS+=("$@")
+	fi
+}
+
+gallium_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		GALLIUM_DRIVERS+=("$@")
+	fi
+}
+
+vulkan_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		VULKAN_DRIVERS+=("$@")
+	fi
+}
diff --git a/media-libs/mesa-amd/mesa-amd-9999.ebuild b/media-libs/mesa-amd/mesa-amd-9999.ebuild
index 4645f4a..4b621f6 100644
--- a/media-libs/mesa-amd/mesa-amd-9999.ebuild
+++ b/media-libs/mesa-amd/mesa-amd-9999.ebuild
@@ -22,11 +22,13 @@
 	IUSE_VIDEO_CARDS+=" video_cards_${card}"
 done
 
-IUSE="${IUSE_VIDEO_CARDS} debug vulkan"
+IUSE="${IUSE_VIDEO_CARDS} debug vulkan libglvnd"
 
 # keep correct libdrm and dri2proto dep
 # keep blocks in rdepend for binpkg
 RDEPEND="
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
 	virtual/libelf
 	dev-libs/expat
 	x11-libs/libdrm
@@ -74,6 +76,8 @@
 	append-flags "-UENABLE_SHADER_CACHE"
 
 	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
 		-Dglx=disabled
 		-Dllvm=true
 		-Dshared-llvm=false
diff --git a/media-libs/mesa-freedreno/OWNERS b/media-libs/mesa-freedreno/OWNERS
new file mode 100644
index 0000000..8d6cef3
--- /dev/null
+++ b/media-libs/mesa-freedreno/OWNERS
@@ -0,0 +1,6 @@
+anholt@chromium.org
+chadversary@chromium.org
+ihf@chromium.org
+hoegsberg@chromium.org
+marcheu@chromium.org
+robdclark@chromium.org
diff --git a/media-libs/mesa-freedreno/mesa-freedreno-21.2.0_pre-r49.ebuild b/media-libs/mesa-freedreno/mesa-freedreno-21.2.0_pre-r49.ebuild
deleted file mode 100644
index 9dae572..0000000
--- a/media-libs/mesa-freedreno/mesa-freedreno-21.2.0_pre-r49.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="1cd57dc10179783f443e1c148bc144184250968e"
-CROS_WORKON_TREE="5e2d3eccd85d551dcd7d7bfa5dac28a8d680dc88"
-CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
-CROS_WORKON_LOCALNAME="mesa-freedreno"
-CROS_WORKON_EGIT_BRANCH="chromeos-freedreno"
-
-KEYWORDS="*"
-
-inherit base meson flag-o-matic cros-workon
-
-DESCRIPTION="The Mesa 3D Graphics Library"
-HOMEPAGE="http://mesa3d.org/"
-
-# Most of the code is MIT/X11.
-# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
-LICENSE="MIT SGI-B-2.0"
-
-IUSE="debug vulkan"
-
-COMMON_DEPEND="
-	dev-libs/expat:=
-	>=x11-libs/libdrm-2.4.94:=
-"
-
-RDEPEND="${COMMON_DEPEND}
-"
-
-DEPEND="${COMMON_DEPEND}
-"
-
-BDEPEND="
-	sys-devel/bison
-	sys-devel/flex
-	virtual/pkgconfig
-"
-
-src_configure() {
-	emesonargs+=(
-		-Dllvm=disabled
-		-Ddri3=disabled
-		-Dshader-cache=disabled
-		-Dglx=disabled
-		-Degl=enabled
-		-Dgbm=disabled
-		-Dgles1=disabled
-		-Dgles2=enabled
-		-Dshared-glapi=enabled
-		-Ddri-drivers=
-		-Dgallium-drivers=freedreno
-		-Dgallium-vdpau=disabled
-		-Dgallium-xa=disabled
-		-Dplatforms=
-		-Dtools=freedreno
-		--buildtype $(usex debug debug release)
-		-Dvulkan-drivers=$(usex vulkan freedreno '')
-	)
-
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	find "${ED}" -name '*kgsl*' -exec rm -f {} +
-	rm -v -rf "${ED}/usr/include"
-}
diff --git a/media-libs/mesa-freedreno/mesa-freedreno-21.3.0_pre-r61.ebuild b/media-libs/mesa-freedreno/mesa-freedreno-21.3.0_pre-r61.ebuild
new file mode 100644
index 0000000..a1514ab
--- /dev/null
+++ b/media-libs/mesa-freedreno/mesa-freedreno-21.3.0_pre-r61.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="75de09f5e85b83404faed96b4c20083b71f7b6d1"
+CROS_WORKON_TREE="c7b01d2c0cb8997df5e307f810ecc26c4c76c097"
+CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
+CROS_WORKON_LOCALNAME="mesa-freedreno"
+CROS_WORKON_EGIT_BRANCH="chromeos-freedreno"
+
+KEYWORDS="*"
+
+inherit base meson flag-o-matic cros-workon
+
+DESCRIPTION="The Mesa 3D Graphics Library"
+HOMEPAGE="http://mesa3d.org/"
+
+# Most of the code is MIT/X11.
+# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
+LICENSE="MIT SGI-B-2.0"
+
+IUSE="debug vulkan libglvnd"
+
+COMMON_DEPEND="
+	dev-libs/expat:=
+	>=x11-libs/libdrm-2.4.94:=
+"
+
+RDEPEND="${COMMON_DEPEND}
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
+"
+
+DEPEND="${COMMON_DEPEND}
+"
+
+BDEPEND="
+	sys-devel/bison
+	sys-devel/flex
+	virtual/pkgconfig
+"
+
+src_configure() {
+	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
+		-Dllvm=disabled
+		-Ddri3=disabled
+		-Dshader-cache=disabled
+		-Dglx=disabled
+		-Degl=enabled
+		-Dgbm=disabled
+		-Dgles1=disabled
+		-Dgles2=enabled
+		-Dshared-glapi=enabled
+		-Ddri-drivers=
+		-Dgallium-drivers=freedreno
+		-Dgallium-vdpau=disabled
+		-Dgallium-xa=disabled
+		-Dplatforms=
+		-Dtools=freedreno
+		--buildtype $(usex debug debug release)
+		-Dvulkan-drivers=$(usex vulkan freedreno '')
+	)
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	find "${ED}" -name '*kgsl*' -exec rm -f {} +
+	rm -v -rf "${ED}/usr/include"
+}
diff --git a/media-libs/mesa-freedreno/mesa-freedreno-9999.ebuild b/media-libs/mesa-freedreno/mesa-freedreno-9999.ebuild
index b3ed92c..03e650b 100644
--- a/media-libs/mesa-freedreno/mesa-freedreno-9999.ebuild
+++ b/media-libs/mesa-freedreno/mesa-freedreno-9999.ebuild
@@ -18,7 +18,7 @@
 # GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
 LICENSE="MIT SGI-B-2.0"
 
-IUSE="debug vulkan"
+IUSE="debug vulkan libglvnd"
 
 COMMON_DEPEND="
 	dev-libs/expat:=
@@ -26,6 +26,8 @@
 "
 
 RDEPEND="${COMMON_DEPEND}
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
 "
 
 DEPEND="${COMMON_DEPEND}
@@ -39,6 +41,8 @@
 
 src_configure() {
 	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
 		-Dllvm=disabled
 		-Ddri3=disabled
 		-Dshader-cache=disabled
diff --git a/media-libs/mesa-img/mesa-img-19.0_pre1.ebuild b/media-libs/mesa-img/mesa-img-19.0_pre1.ebuild
index a3563bb..2000007 100644
--- a/media-libs/mesa-img/mesa-img-19.0_pre1.ebuild
+++ b/media-libs/mesa-img/mesa-img-19.0_pre1.ebuild
@@ -51,7 +51,7 @@
 
 IUSE="${IUSE_VIDEO_CARDS}
 	+classic debug dri drm egl -gallium -gbm gles1 gles2 -llvm +nptl pic
-	selinux shared-glapi kernel_FreeBSD vulkan wayland xlib-glx X"
+	selinux shared-glapi kernel_FreeBSD vulkan wayland xlib-glx X libglvnd"
 
 LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.60"
 
@@ -61,6 +61,8 @@
 # keep correct libdrm and dri2proto dep
 # keep blocks in rdepend for binpkg
 RDEPEND="
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
 	!media-libs/mesa
 	X? (
 		!<x11-base/xorg-server-1.7
@@ -187,6 +189,8 @@
 	append-flags "-UENABLE_SHADER_CACHE"
 
 	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
 		-Dglx="${glx}"
 		-Dllvm="${LLVM_ENABLE}"
 		-Dplatforms="${egl_platforms}"
diff --git a/media-libs/mesa-img/mesa-img-9999.ebuild b/media-libs/mesa-img/mesa-img-9999.ebuild
index 782387c..0652d4b 100644
--- a/media-libs/mesa-img/mesa-img-9999.ebuild
+++ b/media-libs/mesa-img/mesa-img-9999.ebuild
@@ -48,7 +48,7 @@
 
 IUSE="${IUSE_VIDEO_CARDS}
 	+classic debug dri drm egl -gallium -gbm gles1 gles2 -llvm +nptl pic
-	selinux shared-glapi kernel_FreeBSD vulkan wayland xlib-glx X"
+	selinux shared-glapi kernel_FreeBSD vulkan wayland xlib-glx X libglvnd"
 
 LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.60"
 
@@ -58,6 +58,8 @@
 # keep correct libdrm and dri2proto dep
 # keep blocks in rdepend for binpkg
 RDEPEND="
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
 	!media-libs/mesa
 	X? (
 		!<x11-base/xorg-server-1.7
@@ -166,6 +168,8 @@
 	append-flags "-UENABLE_SHADER_CACHE"
 
 	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
 		-Dglx="${glx}"
 		-Dllvm="${LLVM_ENABLE}"
 		-Dplatforms="${egl_platforms}"
diff --git a/media-libs/mesa-iris/OWNERS b/media-libs/mesa-iris/OWNERS
new file mode 100644
index 0000000..5480042
--- /dev/null
+++ b/media-libs/mesa-iris/OWNERS
@@ -0,0 +1,5 @@
+anholt@chromium.org
+chadversary@chromium.org
+ihf@chromium.org
+hoegsberg@chromium.org
+marcheu@chromium.org
diff --git a/media-libs/mesa-iris/mesa-iris-21.1.1-r26.ebuild b/media-libs/mesa-iris/mesa-iris-21.1.1-r26.ebuild
deleted file mode 100644
index c1bb33c..0000000
--- a/media-libs/mesa-iris/mesa-iris-21.1.1-r26.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="efbaa7b580468b0e4861a70dbd1b56266b393d36"
-CROS_WORKON_TREE="f623425a2c035582400821c0eb4451faaac1b9f2"
-CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
-CROS_WORKON_LOCALNAME="mesa-iris"
-CROS_WORKON_EGIT_BRANCH="chromeos-iris"
-
-KEYWORDS="*"
-
-inherit base meson flag-o-matic cros-workon
-
-DESCRIPTION="The Mesa 3D Graphics Library"
-HOMEPAGE="http://mesa3d.org/"
-
-# Most of the code is MIT/X11.
-# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
-LICENSE="MIT SGI-B-2.0"
-
-IUSE="debug vulkan tools"
-
-COMMON_DEPEND="
-	dev-libs/expat:=
-	>=x11-libs/libdrm-2.4.94:=
-"
-
-RDEPEND="${COMMON_DEPEND}
-"
-
-DEPEND="${COMMON_DEPEND}
-"
-
-BDEPEND="
-	sys-devel/bison
-	sys-devel/flex
-	virtual/pkgconfig
-"
-
-src_configure() {
-	emesonargs+=(
-		-Dllvm=disabled
-		-Ddri3=disabled
-		-Dshader-cache=disabled
-		-Dglx=disabled
-		-Degl=enabled
-		-Dgbm=disabled
-		-Dgles1=disabled
-		-Dgles2=enabled
-		-Dshared-glapi=enabled
-		-Ddri-drivers=
-		-Dgallium-drivers=iris
-		-Dgallium-vdpau=disabled
-		-Dgallium-xa=disabled
-		# Set platforms empty to avoid the default "auto" setting. If
-		# platforms is empty meson.build will add surfaceless.
-		-Dplatforms=''
-		-Dtools=$(usex tools intel '')
-		--buildtype $(usex debug debug release)
- 		-Dvulkan-drivers=$(usex vulkan intel '')
-	)
-
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	rm -v -rf "${ED}/usr/include"
-}
diff --git a/media-libs/mesa-iris/mesa-iris-21.2.3-r30.ebuild b/media-libs/mesa-iris/mesa-iris-21.2.3-r30.ebuild
new file mode 100644
index 0000000..d5ec9c9
--- /dev/null
+++ b/media-libs/mesa-iris/mesa-iris-21.2.3-r30.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="4f414e0ae55b9b405717b9ea97f87f4d93044997"
+CROS_WORKON_TREE="dc2e8513f627de823b24480670875277b9f478b2"
+CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
+CROS_WORKON_LOCALNAME="mesa-iris"
+CROS_WORKON_EGIT_BRANCH="chromeos-iris"
+
+KEYWORDS="*"
+
+inherit base meson flag-o-matic cros-workon
+
+DESCRIPTION="The Mesa 3D Graphics Library"
+HOMEPAGE="http://mesa3d.org/"
+
+# Most of the code is MIT/X11.
+# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
+LICENSE="MIT SGI-B-2.0"
+
+IUSE="debug vulkan tools libglvnd"
+
+COMMON_DEPEND="
+	dev-libs/expat:=
+	>=x11-libs/libdrm-2.4.94:=
+"
+
+RDEPEND="${COMMON_DEPEND}
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
+"
+
+DEPEND="${COMMON_DEPEND}
+"
+
+BDEPEND="
+	sys-devel/bison
+	sys-devel/flex
+	virtual/pkgconfig
+"
+
+src_configure() {
+	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
+		-Dllvm=disabled
+		-Ddri3=disabled
+		-Dshader-cache=disabled
+		-Dglx=disabled
+		-Degl=enabled
+		-Dgbm=disabled
+		-Dgles1=disabled
+		-Dgles2=enabled
+		-Dshared-glapi=enabled
+		-Ddri-drivers=
+		-Dgallium-drivers=iris
+		-Dgallium-vdpau=disabled
+		-Dgallium-xa=disabled
+		-Dglvnd=$(usex libglvnd true false)
+		# Set platforms empty to avoid the default "auto" setting. If
+		# platforms is empty meson.build will add surfaceless.
+		-Dplatforms=''
+		-Dtools=$(usex tools intel '')
+		--buildtype $(usex debug debug release)
+ 		-Dvulkan-drivers=$(usex vulkan intel '')
+	)
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	rm -v -rf "${ED}/usr/include"
+}
diff --git a/media-libs/mesa-iris/mesa-iris-9999.ebuild b/media-libs/mesa-iris/mesa-iris-9999.ebuild
index c08e446..e988140 100644
--- a/media-libs/mesa-iris/mesa-iris-9999.ebuild
+++ b/media-libs/mesa-iris/mesa-iris-9999.ebuild
@@ -18,7 +18,7 @@
 # GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
 LICENSE="MIT SGI-B-2.0"
 
-IUSE="debug vulkan tools"
+IUSE="debug vulkan tools libglvnd"
 
 COMMON_DEPEND="
 	dev-libs/expat:=
@@ -26,6 +26,8 @@
 "
 
 RDEPEND="${COMMON_DEPEND}
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
 "
 
 DEPEND="${COMMON_DEPEND}
@@ -39,6 +41,8 @@
 
 src_configure() {
 	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
 		-Dllvm=disabled
 		-Ddri3=disabled
 		-Dshader-cache=disabled
@@ -52,6 +56,7 @@
 		-Dgallium-drivers=iris
 		-Dgallium-vdpau=disabled
 		-Dgallium-xa=disabled
+		-Dglvnd=$(usex libglvnd true false)
 		# Set platforms empty to avoid the default "auto" setting. If
 		# platforms is empty meson.build will add surfaceless.
 		-Dplatforms=''
diff --git a/media-libs/mesa-llvmpipe/files/UPSTREAM-egl-Allow-software-rendering-for-vgem-virtio_gpu-in-.patch b/media-libs/mesa-llvmpipe/files/UPSTREAM-egl-Allow-software-rendering-for-vgem-virtio_gpu-in-.patch
deleted file mode 100644
index 764163a..0000000
--- a/media-libs/mesa-llvmpipe/files/UPSTREAM-egl-Allow-software-rendering-for-vgem-virtio_gpu-in-.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 81c0e2ab63d7ee823d9a096019243797f071410b Mon Sep 17 00:00:00 2001
-From: Lepton Wu <lepton@chromium.org>
-Date: Thu, 9 Jul 2020 11:49:33 -0700
-Subject: [PATCH] egl: Allow software rendering for vgem/virtio_gpu in
- platform_device
-
-Then user could explicitly choose the underlying device for software
-rendering when both vgem/virtio_vga are there.
-
-Signed-off-by: Lepton Wu <lepton@chromium.org>
-Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5830>
----
- src/egl/drivers/dri2/platform_device.c | 16 +++++++++++++++-
- 1 file changed, 15 insertions(+), 1 deletion(-)
-
-diff --git a/src/egl/drivers/dri2/platform_device.c b/src/egl/drivers/dri2/platform_device.c
-index 3aac62f2679..7c12b4792c2 100644
---- a/src/egl/drivers/dri2/platform_device.c
-+++ b/src/egl/drivers/dri2/platform_device.c
-@@ -41,6 +41,7 @@
- 
- #include "egl_dri2.h"
- #include "loader.h"
-+#include "util/debug.h"
- 
- static __DRIimage*
- device_alloc_image(struct dri2_egl_display *dri2_dpy,
-@@ -252,8 +253,9 @@ static bool
- device_probe_device(_EGLDisplay *disp)
- {
-    struct dri2_egl_display *dri2_dpy = disp->DriverData;
-+   bool request_software = env_var_as_boolean("LIBGL_ALWAYS_SOFTWARE", false);
- 
--   if (disp->Options.ForceSoftware)
-+   if (request_software)
-       _eglLog(_EGL_WARNING, "Not allowed to force software rendering when "
-                             "API explicitly selects a hardware device.");
-    dri2_dpy->fd = device_get_fd(disp, disp->Device);
-@@ -264,6 +266,18 @@ device_probe_device(_EGLDisplay *disp)
-    if (!dri2_dpy->driver_name)
-       goto err_name;
- 
-+   /* When doing software rendering, some times user still want to explicitly
-+    * choose the render node device since cross node import doesn't work between
-+    * vgem/virtio_gpu yet. It would be nice to have a new EXTENSION for this.
-+    * For now, just fallback to kms_swrast. */
-+   if (disp->Options.ForceSoftware && !request_software &&
-+       (strcmp(dri2_dpy->driver_name, "vgem") == 0 ||
-+        strcmp(dri2_dpy->driver_name, "virtio_gpu") == 0)) {
-+      free(dri2_dpy->driver_name);
-+      _eglLog(_EGL_WARNING, "NEEDS EXTENSION: falling back to kms_swrast");
-+      dri2_dpy->driver_name = strdup("kms_swrast");
-+   }
-+
-    if (!dri2_load_driver_dri3(disp))
-       goto err_load;
- 
--- 
-2.28.0.402.g5ffc5be6b7-goog
-
diff --git a/media-libs/mesa-llvmpipe/files/UPSTREAM-egl-surfaceless-try-kms_swrast-before-swrast.patch b/media-libs/mesa-llvmpipe/files/UPSTREAM-egl-surfaceless-try-kms_swrast-before-swrast.patch
new file mode 100644
index 0000000..8727492
--- /dev/null
+++ b/media-libs/mesa-llvmpipe/files/UPSTREAM-egl-surfaceless-try-kms_swrast-before-swrast.patch
@@ -0,0 +1,59 @@
+From 384181921c23fc7630b4a7d373f5b6755d20c8af Mon Sep 17 00:00:00 2001
+From: Chia-I Wu <olvaffe@gmail.com>
+Date: Tue, 20 Jul 2021 14:31:46 -0700
+Subject: [PATCH 1/2] egl/surfaceless: try kms_swrast before swrast
+
+Before commit f7e0cdcf1a5, we tried these in order
+
+ - if (!ForceSoftware) surfaceless_probe_device(disp, false);
+ - surfaceless_probe_device(disp, true);
+ - surfaceless_probe_device_sw(disp);
+
+The commit changed it to
+
+ - surfaceless_probe_device(disp, ForceSoftware);
+ - surfaceless_probe_device_sw(disp);
+
+and broke 2D virtio-gpu and vgem when ForceSoftware is false.  This
+commit restores the old behavior.
+
+Fixes: f7e0cdcf1a5 ("egl/surfaceless: simplify dri2_initialize_surfaceless()")
+Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Adam Jackson <ajax@redhat.com>
+Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11992>
+---
+ src/egl/drivers/dri2/platform_surfaceless.c | 14 +++++++++-----
+ 1 file changed, 9 insertions(+), 5 deletions(-)
+
+diff --git a/src/egl/drivers/dri2/platform_surfaceless.c b/src/egl/drivers/dri2/platform_surfaceless.c
+index 2cd909c75a2..a420eb09ff6 100644
+--- a/src/egl/drivers/dri2/platform_surfaceless.c
++++ b/src/egl/drivers/dri2/platform_surfaceless.c
+@@ -327,14 +327,18 @@ dri2_initialize_surfaceless(_EGLDisplay *disp)
+    dri2_dpy->fd = -1;
+    disp->DriverData = (void *) dri2_dpy;
+ 
++   /* When ForceSoftware is false, we try the HW driver.  When ForceSoftware
++    * is true, we try kms_swrast and swrast in order.
++    */
+    driver_loaded = surfaceless_probe_device(disp, disp->Options.ForceSoftware);
++   if (!driver_loaded && disp->Options.ForceSoftware) {
++      _eglLog(_EGL_DEBUG, "Falling back to surfaceless swrast without DRM.");
++      driver_loaded = surfaceless_probe_device_sw(disp);
++   }
+ 
+    if (!driver_loaded) {
+-      _eglLog(_EGL_DEBUG, "Falling back to surfaceless swrast without DRM.");
+-      if (!surfaceless_probe_device_sw(disp)) {
+-         err = "DRI2: failed to load driver";
+-         goto cleanup;
+-      }
++      err = "DRI2: failed to load driver";
++      goto cleanup;
+    }
+ 
+    if (!dri2_create_screen(disp)) {
+-- 
+2.32.0.402.g57bb445576-goog
+
diff --git a/media-libs/mesa-llvmpipe/files/UPSTREAM-meson-allow-egl_native_platform-to-be-specified.patch b/media-libs/mesa-llvmpipe/files/UPSTREAM-meson-allow-egl_native_platform-to-be-specified.patch
new file mode 100644
index 0000000..b45cc06
--- /dev/null
+++ b/media-libs/mesa-llvmpipe/files/UPSTREAM-meson-allow-egl_native_platform-to-be-specified.patch
@@ -0,0 +1,87 @@
+From 47946855f19cc7d082fd59e090bb83f5d3930871 Mon Sep 17 00:00:00 2001
+From: Chia-I Wu <olvaffe@gmail.com>
+Date: Tue, 20 Jul 2021 17:52:47 -0700
+Subject: [PATCH 2/2] meson: allow egl_native_platform to be specified
+
+After commit f8dc22bf61c, it was no longer possible to have explicitly
+enabled platforms with surfaceless being the EGL native platform.  This
+fixes that by adding -Degl-native-platform.
+
+Fixes: f8dc22bf61c ("meson: drop deprecated EGL platform build options")
+Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
+Reviewed-by: Adam Jackson <ajax@redhat.com>
+Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11992>
+---
+ meson.build       | 26 ++++++++++++++++++++------
+ meson_options.txt | 10 ++++++++++
+ 2 files changed, 30 insertions(+), 6 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 2c3cbdd9b17..9c968a3bcbb 100644
+--- a/meson.build
++++ b/meson.build
+@@ -358,12 +358,6 @@ with_platform_wayland = _platforms.contains('wayland')
+ with_platform_haiku = _platforms.contains('haiku')
+ with_platform_windows = _platforms.contains('windows')
+ 
+-if _platforms.length() != 0
+-  egl_native_platform = _platforms[0]
+-else
+-  egl_native_platform = 'surfaceless'
+-endif
+-
+ with_glx = get_option('glx')
+ if with_glx == 'auto'
+   if with_platform_android
+@@ -458,6 +452,26 @@ else
+   with_egl = false
+ endif
+ 
++if with_egl
++  _platforms += 'surfaceless'
++  if with_gbm and not with_platform_android
++    _platforms += 'drm'
++  endif
++endif
++
++egl_native_platform = get_option('egl-native-platform')
++if egl_native_platform.contains('auto')
++  if _platforms.length() != 0
++    egl_native_platform = _platforms[0]
++  else
++    egl_native_platform = 'surfaceless'
++  endif
++endif
++
++if with_egl and not _platforms.contains(egl_native_platform)
++  error('-Degl-native-platform does not specify an enabled platform')
++endif
++
+ # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS.
+ use_elf_tls = false
+ if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and
+diff --git a/meson_options.txt b/meson_options.txt
+index 2c11092eeb4..29c402c4844 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -27,6 +27,16 @@ option(
+   ],
+   description : 'window systems to support. If this is set to `auto`, all platforms applicable will be enabled.'
+ )
++option(
++  'egl-native-platform',
++  type : 'combo',
++  value : 'auto',
++  choices : [
++    'auto', 'x11', 'wayland', 'haiku', 'android', 'windows',
++    'surfaceless', 'drm',
++  ],
++  description : 'the window system EGL assumes for EGL_DEFAULT_DISPLAY',
++)
+ option(
+   'android-stub',
+   type : 'boolean',
+-- 
+2.32.0.402.g57bb445576-goog
+
diff --git a/media-libs/mesa-llvmpipe/files/UPSTREAM-st-mesa-set-compressed_data-to-NULL-when-freed.patch b/media-libs/mesa-llvmpipe/files/UPSTREAM-st-mesa-set-compressed_data-to-NULL-when-freed.patch
deleted file mode 100644
index 74e39524..0000000
--- a/media-libs/mesa-llvmpipe/files/UPSTREAM-st-mesa-set-compressed_data-to-NULL-when-freed.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 51bdaf0b601522dfc599bd352806e66ef56876a3 Mon Sep 17 00:00:00 2001
-From: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
-Date: Thu, 9 Jul 2020 16:59:39 +0200
-Subject: [PATCH] st/mesa: set compressed_data to NULL when freed
-
-Reported-by: Karol Herbst <kherbst@redhat.com>
-Fixes: b6db703e0f0 ("st/mesa: make texture views inherit compressed_data storage")
-Reviewed-by: Karol Herbst <kherbst@redhat.com>
-Tested-by: Dave Airlie <airlied@redhat.com>
-Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5821>
----
- src/mesa/state_tracker/st_cb_texture.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c
-index 72274579187..b0ea844c071 100644
---- a/src/mesa/state_tracker/st_cb_texture.c
-+++ b/src/mesa/state_tracker/st_cb_texture.c
-@@ -235,6 +235,7 @@ st_FreeTextureImageBuffer(struct gl_context *ctx,
-        pipe_reference(&stImage->compressed_data->reference, NULL)) {
-       free(stImage->compressed_data->ptr);
-       free(stImage->compressed_data);
-+      stImage->compressed_data = NULL;
-    }
- 
-    /* if the texture image is being deallocated, the structure of the
--- 
-2.28.0.681.g6f77f65b4e-goog
-
diff --git a/media-libs/mesa-llvmpipe/mesa-llvmpipe-20.1.3-r3.ebuild b/media-libs/mesa-llvmpipe/mesa-llvmpipe-20.1.3-r3.ebuild
deleted file mode 120000
index d07af1a..0000000
--- a/media-libs/mesa-llvmpipe/mesa-llvmpipe-20.1.3-r3.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-mesa-llvmpipe-20.1.ebuild
\ No newline at end of file
diff --git a/media-libs/mesa-llvmpipe/mesa-llvmpipe-20.1.ebuild b/media-libs/mesa-llvmpipe/mesa-llvmpipe-20.1.ebuild
deleted file mode 100644
index 039d256..0000000
--- a/media-libs/mesa-llvmpipe/mesa-llvmpipe-20.1.ebuild
+++ /dev/null
@@ -1,272 +0,0 @@
-# Copyright 1999-2019 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
-
-EAPI=6
-
-MESON_AUTO_DEPEND=no
-
-CROS_WORKON_COMMIT="663fa46287dc7c3c03b784ac2162ee5081083e3a"
-CROS_WORKON_TREE="b8d78e509c717d068a0199e10811bffd817f2dd4"
-
-EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
-CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
-CROS_WORKON_MANUAL_UPREV="1"
-CROS_WORKON_LOCALNAME="mesa"
-CROS_WORKON_EGIT_BRANCH="master"
-
-if [[ ${PV} = 9999* ]]; then
-	GIT_ECLASS="git-2"
-	EXPERIMENTAL="true"
-fi
-
-inherit base multilib flag-o-matic meson toolchain-funcs ${GIT_ECLASS} cros-workon
-
-FOLDER="${PV/_rc*/}"
-[[ ${PV/_rc*/} == ${PV} ]] || FOLDER+="/RC"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="http://mesa3d.sourceforge.net/"
-
-#SRC_PATCHES="mirror://gentoo/${P}-gentoo-patches-01.tar.bz2"
-if [[ $PV = 9999* ]] || [[ -n ${CROS_WORKON_COMMIT} ]]; then
-	SRC_URI="${SRC_PATCHES}"
-else
-	SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${P}.tar.bz2
-		${SRC_PATCHES}"
-fi
-
-# Most of the code is MIT/X11.
-# ralloc is LGPL-3
-# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
-LICENSE="MIT LGPL-3 SGI-B-2.0"
-SLOT="0"
-KEYWORDS="*"
-
-INTEL_CARDS="intel"
-RADEON_CARDS="amdgpu radeon"
-VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} freedreno llvmpipe mach64 mga nouveau r128 radeonsi savage sis softpipe tdfx via virgl vmware"
-for card in ${VIDEO_CARDS}; do
-	IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
-	+classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD
-	kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.60"
-
-REQUIRED_USE="video_cards_amdgpu? ( llvm )
-	video_cards_llvmpipe? ( llvm )"
-
-# keep correct libdrm and dri2proto dep
-# keep blocks in rdepend for binpkg
-RDEPEND="
-	X? (
-		!<x11-base/xorg-server-1.7
-		>=x11-libs/libX11-1.3.99.901
-		x11-libs/libXdamage
-		x11-libs/libXext
-		x11-libs/libXrandr
-		x11-libs/libXxf86vm
-	)
-	wayland? (
-		dev-libs/wayland
-		>=dev-libs/wayland-protocols-1.8
-	)
-	!media-libs/mesa
-	llvm? ( virtual/libelf )
-	dev-libs/expat
-	dev-libs/libgcrypt
-	virtual/udev
-	${LIBDRM_DEPSTRING}
-"
-
-DEPEND="${RDEPEND}
-	dev-libs/libxml2
-	sys-devel/bison
-	sys-devel/flex
-	virtual/pkgconfig
-	x11-base/xorg-proto
-	llvm? ( sys-devel/llvm )
-"
-
-driver_list() {
-	local drivers="$(sort -u <<< "${1// /$'\n'}")"
-	echo "${drivers//$'\n'/,}"
-}
-
-src_prepare() {
-	# apply patches
-	if [[ ${PV} != 9999* && -n ${SRC_PATCHES} ]]; then
-		EPATCH_FORCE="yes" \
-		EPATCH_SOURCE="${WORKDIR}/patches" \
-		EPATCH_SUFFIX="patch" \
-		epatch
-	fi
-	# FreeBSD 6.* doesn't have posix_memalign().
-	if [[ ${CHOST} == *-freebsd6.* ]]; then
-		sed -i \
-			-e "s/-DHAVE_POSIX_MEMALIGN//" \
-			configure.ac || die
-	fi
-
-	# Current meson 'auto' method does not work properly with cross
-	# compiling, so revert back to hard-coded 'config-tool' method.
-	# This should be fixed in a future meson release.  See:
-	# https://github.com/mesonbuild/meson/issues/7276
-	epatch "${FILESDIR}"/0001-Revert-meson-update-llvm-dependency-logic-for-meson-.patch
-
-	epatch "${FILESDIR}"/UPSTREAM-egl-Allow-software-rendering-for-vgem-virtio_gpu-in-.patch
-
-	epatch "${FILESDIR}"/UPSTREAM-st-mesa-set-compressed_data-to-NULL-when-freed.patch
-
-	default
-}
-
-src_configure() {
-	tc-getPROG PKG_CONFIG pkg-config
-
-	cros_optimize_package_for_speed
-	# For llvmpipe on ARM we'll get errors about being unable to resolve
-	# "__aeabi_unwind_cpp_pr1" if we don't include this flag; seems wise
-	# to include it for all platforms though.
-	use video_cards_llvmpipe && append-flags "-rtlib=libgcc -shared-libgcc --unwindlib=libgcc"
-
-	if use !gallium && use !classic && use !vulkan; then
-		ewarn "You enabled neither classic, gallium, nor vulkan "
-		ewarn "USE flags. No hardware drivers will be built."
-	fi
-
-	if use classic; then
-	# Configurable DRI drivers
-		# Intel code
-		dri_driver_enable video_cards_intel i965
-	fi
-
-	if use gallium; then
-	# Configurable gallium drivers
-		gallium_enable video_cards_llvmpipe swrast
-		gallium_enable video_cards_softpipe swrast
-
-		# Nouveau code
-		gallium_enable video_cards_nouveau nouveau
-
-		# ATI code
-		gallium_enable video_cards_radeon r300 r600
-		gallium_enable video_cards_amdgpu radeonsi
-
-		# Freedreno code
-		gallium_enable video_cards_freedreno freedreno
-
-		gallium_enable video_cards_virgl virgl
-	fi
-
-	if use vulkan; then
-		vulkan_enable video_cards_intel intel
-		vulkan_enable video_cards_amdgpu amd
-	fi
-
-	LLVM_ENABLE=false
-	if use llvm && use !video_cards_softpipe; then
-		emesonargs+=( -Dshared-llvm=false )
-		export LLVM_CONFIG=${SYSROOT}/usr/lib/llvm/bin/llvm-config-host
-		LLVM_ENABLE=true
-	fi
-
-	local egl_platforms=""
-	if use egl; then
-		egl_platforms="surfaceless"
-
-		if use drm; then
-			egl_platforms="${egl_platforms},drm"
-		fi
-
-		if use wayland; then
-			egl_platforms="${egl_platforms},wayland"
-		fi
-
-		if use X; then
-			egl_platforms="${egl_platforms},x11"
-		fi
-	fi
-
-	if use X; then
-		glx="dri"
-	else
-		glx="disabled"
-	fi
-
-	append-flags "-UENABLE_SHADER_CACHE"
-
-	if use kvm_guest; then
-		emesonargs+=( -Ddri-search-path=/opt/google/cros-containers/lib )
-	fi
-
-	emesonargs+=(
-		-Dglx="${glx}"
-		-Dllvm="${LLVM_ENABLE}"
-		-Dplatforms="${egl_platforms}"
-		$(meson_use egl)
-		$(meson_use gbm)
-		$(meson_use X gl)
-		$(meson_use gles1)
-		$(meson_use gles2)
-		$(meson_use selinux)
-		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
-		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
-		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
-		--buildtype $(usex debug debug release)
-	)
-
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	# Remove redundant GLES headers
-	rm -f "${D}"/usr/include/{EGL,GLES2,GLES3,KHR}/*.h || die "Removing GLES headers failed."
-
-	dodir /usr/$(get_libdir)/dri
-	insinto "/usr/$(get_libdir)/dri/"
-	insopts -m0755
-	# install the gallium drivers we use
-	local gallium_drivers_files=( nouveau_dri.so r300_dri.so r600_dri.so msm_dri.so swrast_dri.so )
-	for x in ${gallium_drivers_files[@]}; do
-		if [ -f "${S}/$(get_libdir)/gallium/${x}" ]; then
-			doins "${S}/$(get_libdir)/gallium/${x}"
-		fi
-	done
-
-	# install classic drivers we use
-	local classic_drivers_files=( i810_dri.so i965_dri.so nouveau_vieux_dri.so radeon_dri.so r200_dri.so )
-	for x in ${classic_drivers_files[@]}; do
-		if [ -f "${S}/$(get_libdir)/${x}" ]; then
-			doins "${S}/$(get_libdir)/${x}"
-		fi
-	done
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-dri_driver_enable() {
-	if [[ $1 == -- ]] || use $1; then
-		shift
-		DRI_DRIVERS+=("$@")
-	fi
-}
-
-gallium_enable() {
-	if [[ $1 == -- ]] || use $1; then
-		shift
-		GALLIUM_DRIVERS+=("$@")
-	fi
-}
-
-vulkan_enable() {
-	if [[ $1 == -- ]] || use $1; then
-		shift
-		VULKAN_DRIVERS+=("$@")
-	fi
-}
diff --git a/media-libs/mesa-llvmpipe/mesa-llvmpipe-21.1.4.ebuild b/media-libs/mesa-llvmpipe/mesa-llvmpipe-21.1.4.ebuild
new file mode 120000
index 0000000..87dad8f
--- /dev/null
+++ b/media-libs/mesa-llvmpipe/mesa-llvmpipe-21.1.4.ebuild
@@ -0,0 +1 @@
+mesa-llvmpipe-21.1.ebuild
\ No newline at end of file
diff --git a/media-libs/mesa-llvmpipe/mesa-llvmpipe-21.1.ebuild b/media-libs/mesa-llvmpipe/mesa-llvmpipe-21.1.ebuild
new file mode 100644
index 0000000..1020862
--- /dev/null
+++ b/media-libs/mesa-llvmpipe/mesa-llvmpipe-21.1.ebuild
@@ -0,0 +1,267 @@
+# Copyright 1999-2019 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
+
+EAPI=6
+
+MESON_AUTO_DEPEND=no
+
+CROS_WORKON_COMMIT="ac105a8e6e9f108902c54c69792d64fecd426240"
+CROS_WORKON_TREE="a3f45c0300977502a0a9a969f3445b5fc09a642d"
+
+EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
+CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
+CROS_WORKON_MANUAL_UPREV="1"
+CROS_WORKON_LOCALNAME="mesa"
+CROS_WORKON_EGIT_BRANCH="master"
+
+if [[ ${PV} = 9999* ]]; then
+	GIT_ECLASS="git-2"
+	EXPERIMENTAL="true"
+fi
+
+inherit base multilib flag-o-matic meson toolchain-funcs ${GIT_ECLASS} cros-workon
+
+FOLDER="${PV/_rc*/}"
+[[ ${PV/_rc*/} == ${PV} ]] || FOLDER+="/RC"
+
+DESCRIPTION="OpenGL-like graphic library for Linux"
+HOMEPAGE="http://mesa3d.sourceforge.net/"
+
+#SRC_PATCHES="mirror://gentoo/${P}-gentoo-patches-01.tar.bz2"
+if [[ $PV = 9999* ]] || [[ -n ${CROS_WORKON_COMMIT} ]]; then
+	SRC_URI="${SRC_PATCHES}"
+else
+	SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${P}.tar.bz2
+		${SRC_PATCHES}"
+fi
+
+# Most of the code is MIT/X11.
+# ralloc is LGPL-3
+# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
+LICENSE="MIT LGPL-3 SGI-B-2.0"
+SLOT="0"
+KEYWORDS="*"
+
+INTEL_CARDS="intel"
+RADEON_CARDS="amdgpu radeon"
+VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} freedreno llvmpipe mach64 mga nouveau r128 radeonsi savage sis softpipe tdfx via virgl vmware"
+for card in ${VIDEO_CARDS}; do
+	IUSE_VIDEO_CARDS+=" video_cards_${card}"
+done
+
+IUSE="${IUSE_VIDEO_CARDS}
+	+classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD
+	kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X
+	libglvnd"
+
+LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.60"
+
+REQUIRED_USE="video_cards_amdgpu? ( llvm )
+	video_cards_llvmpipe? ( llvm )"
+
+# keep correct libdrm and dri2proto dep
+# keep blocks in rdepend for binpkg
+RDEPEND="
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
+	X? (
+		!<x11-base/xorg-server-1.7
+		>=x11-libs/libX11-1.3.99.901
+		x11-libs/libXdamage
+		x11-libs/libXext
+		x11-libs/libXrandr
+		x11-libs/libXxf86vm
+	)
+	wayland? (
+		dev-libs/wayland
+		>=dev-libs/wayland-protocols-1.8
+	)
+	!media-libs/mesa
+	llvm? ( virtual/libelf )
+	dev-libs/expat
+	dev-libs/libgcrypt
+	virtual/udev
+	${LIBDRM_DEPSTRING}
+"
+
+DEPEND="${RDEPEND}
+	dev-libs/libxml2
+	sys-devel/bison
+	sys-devel/flex
+	virtual/pkgconfig
+	x11-base/xorg-proto
+	llvm? ( sys-devel/llvm )
+"
+
+driver_list() {
+	local drivers="$(sort -u <<< "${1// /$'\n'}")"
+	echo "${drivers//$'\n'/,}"
+}
+
+src_prepare() {
+	# apply patches
+	if [[ ${PV} != 9999* && -n ${SRC_PATCHES} ]]; then
+		EPATCH_FORCE="yes" \
+		EPATCH_SOURCE="${WORKDIR}/patches" \
+		EPATCH_SUFFIX="patch" \
+		epatch
+	fi
+	# FreeBSD 6.* doesn't have posix_memalign().
+	if [[ ${CHOST} == *-freebsd6.* ]]; then
+		sed -i \
+			-e "s/-DHAVE_POSIX_MEMALIGN//" \
+			configure.ac || die
+	fi
+
+	eapply "${FILESDIR}"/UPSTREAM-egl-surfaceless-try-kms_swrast-before-swrast.patch
+	eapply "${FILESDIR}"/UPSTREAM-meson-allow-egl_native_platform-to-be-specified.patch
+
+	default
+}
+
+src_configure() {
+	tc-getPROG PKG_CONFIG pkg-config
+
+	cros_optimize_package_for_speed
+	# For llvmpipe on ARM we'll get errors about being unable to resolve
+	# "__aeabi_unwind_cpp_pr1" if we don't include this flag; seems wise
+	# to include it for all platforms though.
+	use video_cards_llvmpipe && append-flags "-rtlib=libgcc -shared-libgcc --unwindlib=libgcc"
+
+	if use !gallium && use !classic && use !vulkan; then
+		ewarn "You enabled neither classic, gallium, nor vulkan "
+		ewarn "USE flags. No hardware drivers will be built."
+	fi
+
+	if use classic; then
+	# Configurable DRI drivers
+		# Intel code
+		dri_driver_enable video_cards_intel i965
+	fi
+
+	if use gallium; then
+	# Configurable gallium drivers
+		gallium_enable video_cards_llvmpipe swrast
+		gallium_enable video_cards_softpipe swrast
+
+		# Nouveau code
+		gallium_enable video_cards_nouveau nouveau
+
+		# ATI code
+		gallium_enable video_cards_radeon r300 r600
+		gallium_enable video_cards_amdgpu radeonsi
+
+		# Freedreno code
+		gallium_enable video_cards_freedreno freedreno
+
+		gallium_enable video_cards_virgl virgl
+	fi
+
+	if use vulkan; then
+		vulkan_enable video_cards_llvmpipe swrast
+		vulkan_enable video_cards_intel intel
+		vulkan_enable video_cards_amdgpu amd
+	fi
+
+	LLVM_ENABLE=false
+	if use llvm && use !video_cards_softpipe; then
+		emesonargs+=( -Dshared-llvm=false )
+		export LLVM_CONFIG=${SYSROOT}/usr/lib/llvm/bin/llvm-config-host
+		LLVM_ENABLE=true
+	fi
+
+	local egl_platforms=""
+	if use egl; then
+		if use wayland; then
+			egl_platforms="${egl_platforms},wayland"
+		fi
+
+		if use X; then
+			egl_platforms="${egl_platforms},x11"
+		fi
+	fi
+	egl_platforms="${egl_platforms##,}"
+
+	if use X; then
+		glx="dri"
+	else
+		glx="disabled"
+	fi
+
+	append-flags "-UENABLE_SHADER_CACHE"
+
+	if use kvm_guest; then
+		emesonargs+=( -Ddri-search-path=/opt/google/cros-containers/lib )
+	fi
+
+	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
+		-Dglx="${glx}"
+		-Dllvm="${LLVM_ENABLE}"
+		-Dplatforms="${egl_platforms}"
+		-Degl-native-platform="surfaceless"
+		$(meson_use egl)
+		$(meson_use gbm)
+		$(meson_use X gl)
+		$(meson_use gles1)
+		$(meson_use gles2)
+		$(meson_use selinux)
+		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
+		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
+		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
+		--buildtype $(usex debug debug release)
+	)
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# Remove redundant GLES headers
+	rm -f "${D}"/usr/include/{EGL,GLES2,GLES3,KHR}/*.h || die "Removing GLES headers failed."
+
+	dodir /usr/$(get_libdir)/dri
+	insinto "/usr/$(get_libdir)/dri/"
+	insopts -m0755
+	# install the gallium drivers we use
+	local gallium_drivers_files=( nouveau_dri.so r300_dri.so r600_dri.so msm_dri.so swrast_dri.so )
+	for x in ${gallium_drivers_files[@]}; do
+		if [ -f "${S}/$(get_libdir)/gallium/${x}" ]; then
+			doins "${S}/$(get_libdir)/gallium/${x}"
+		fi
+	done
+
+	# install classic drivers we use
+	local classic_drivers_files=( i810_dri.so i965_dri.so nouveau_vieux_dri.so radeon_dri.so r200_dri.so )
+	for x in ${classic_drivers_files[@]}; do
+		if [ -f "${S}/$(get_libdir)/${x}" ]; then
+			doins "${S}/$(get_libdir)/${x}"
+		fi
+	done
+}
+
+# $1 - VIDEO_CARDS flag (check skipped for "--")
+# other args - names of DRI drivers to enable
+dri_driver_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		DRI_DRIVERS+=("$@")
+	fi
+}
+
+gallium_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		GALLIUM_DRIVERS+=("$@")
+	fi
+}
+
+vulkan_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		VULKAN_DRIVERS+=("$@")
+	fi
+}
diff --git a/media-libs/mesa-llvmpipe/mesa-llvmpipe-9999.ebuild b/media-libs/mesa-llvmpipe/mesa-llvmpipe-9999.ebuild
index 18297a5..ab0cc76 100644
--- a/media-libs/mesa-llvmpipe/mesa-llvmpipe-9999.ebuild
+++ b/media-libs/mesa-llvmpipe/mesa-llvmpipe-9999.ebuild
@@ -49,7 +49,8 @@
 
 IUSE="${IUSE_VIDEO_CARDS}
 	+classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD
-	kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X"
+	kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X
+	libglvnd"
 
 LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.60"
 
@@ -59,6 +60,8 @@
 # keep correct libdrm and dri2proto dep
 # keep blocks in rdepend for binpkg
 RDEPEND="
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
 	X? (
 		!<x11-base/xorg-server-1.7
 		>=x11-libs/libX11-1.3.99.901
@@ -152,6 +155,7 @@
 	fi
 
 	if use vulkan; then
+		vulkan_enable video_cards_llvmpipe swrast
 		vulkan_enable video_cards_intel intel
 		vulkan_enable video_cards_amdgpu amd
 	fi
@@ -165,12 +169,6 @@
 
 	local egl_platforms=""
 	if use egl; then
-		egl_platforms="surfaceless"
-
-		if use drm; then
-			egl_platforms="${egl_platforms},drm"
-		fi
-
 		if use wayland; then
 			egl_platforms="${egl_platforms},wayland"
 		fi
@@ -179,6 +177,7 @@
 			egl_platforms="${egl_platforms},x11"
 		fi
 	fi
+	egl_platforms="${egl_platforms##,}"
 
 	if use X; then
 		glx="dri"
@@ -193,9 +192,12 @@
 	fi
 
 	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
 		-Dglx="${glx}"
 		-Dllvm="${LLVM_ENABLE}"
 		-Dplatforms="${egl_platforms}"
+		-Degl-native-platform="surfaceless"
 		$(meson_use egl)
 		$(meson_use gbm)
 		$(meson_use X gl)
diff --git a/media-libs/mesa-panfrost/OWNERS b/media-libs/mesa-panfrost/OWNERS
index 2fc8b05..f7dcb72 100644
--- a/media-libs/mesa-panfrost/OWNERS
+++ b/media-libs/mesa-panfrost/OWNERS
@@ -1,3 +1,2 @@
-drinkcat@chromium.org
 hoegsberg@chromium.org
 
diff --git a/media-libs/mesa-panfrost/mesa-panfrost-20.3.2.ebuild b/media-libs/mesa-panfrost/mesa-panfrost-20.3.2.ebuild
deleted file mode 100644
index 44e43f8..0000000
--- a/media-libs/mesa-panfrost/mesa-panfrost-20.3.2.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
-CROS_WORKON_COMMIT="b3877e880ba9d75a993e3fd394b03f4d19c2e17c"
-CROS_WORKON_TREE="02503301daef244eb54dfe159f0d795d31064aa1"
-CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
-CROS_WORKON_LOCALNAME="mesa"
-CROS_WORKON_MANUAL_UPREV="1"
-CROS_WORKON_EGIT_BRANCH="mesa-20.3"
-
-KEYWORDS="*"
-
-inherit base meson flag-o-matic cros-workon
-
-DESCRIPTION="The Mesa 3D Graphics Library"
-HOMEPAGE="http://mesa3d.org/"
-
-# Most of the code is MIT/X11.
-# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
-LICENSE="MIT SGI-B-2.0"
-
-IUSE="debug vulkan"
-
-COMMON_DEPEND="
-	dev-libs/expat:=
-	>=x11-libs/libdrm-2.4.94:=
-"
-
-RDEPEND="${COMMON_DEPEND}
-"
-
-DEPEND="${COMMON_DEPEND}
-"
-
-BDEPEND="
-	sys-devel/bison
-	sys-devel/flex
-	virtual/pkgconfig
-"
-
-src_configure() {
-	emesonargs+=(
-		-Dllvm=disabled
-		-Ddri3=disabled
-		-Dshader-cache=disabled
-		-Dglx=disabled
-		-Degl=enabled
-		-Dgbm=disabled
-		-Dgles1=disabled
-		-Dgles2=enabled
-		-Dshared-glapi=enabled
-		-Ddri-drivers=
-		-Dgallium-drivers=panfrost
-		-Dgallium-vdpau=disabled
-		-Dgallium-xa=disabled
-		-Dplatforms=
-		-Dtools=panfrost
-		--buildtype $(usex debug debug release)
-		-Dvulkan-drivers=$(usex vulkan panfrost '')
-	)
-
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	rm -v -rf "${ED}/usr/include"
-}
diff --git a/media-libs/mesa-panfrost/mesa-panfrost-21.2.1.ebuild b/media-libs/mesa-panfrost/mesa-panfrost-21.2.1.ebuild
new file mode 100644
index 0000000..4567b95
--- /dev/null
+++ b/media-libs/mesa-panfrost/mesa-panfrost-21.2.1.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
+CROS_WORKON_COMMIT="f5d4509d3648ddfa2849c350a9eb580fb1631479"
+CROS_WORKON_TREE="4990bb4b958cda4cee02dac3d6115328e1d3dd45"
+CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
+CROS_WORKON_LOCALNAME="mesa"
+CROS_WORKON_MANUAL_UPREV="1"
+CROS_WORKON_EGIT_BRANCH="mesa-21.2"
+
+KEYWORDS="*"
+
+inherit base meson flag-o-matic cros-workon
+
+DESCRIPTION="The Mesa 3D Graphics Library"
+HOMEPAGE="http://mesa3d.org/"
+
+# Most of the code is MIT/X11.
+# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
+LICENSE="MIT SGI-B-2.0"
+
+IUSE="debug vulkan libglvnd"
+
+COMMON_DEPEND="
+	dev-libs/expat:=
+	>=x11-libs/libdrm-2.4.94:=
+"
+
+RDEPEND="${COMMON_DEPEND}
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
+"
+
+DEPEND="${COMMON_DEPEND}
+"
+
+BDEPEND="
+	sys-devel/bison
+	sys-devel/flex
+	virtual/pkgconfig
+"
+
+src_configure() {
+	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
+		-Dllvm=disabled
+		-Ddri3=disabled
+		-Dshader-cache=disabled
+		-Dglx=disabled
+		-Degl=enabled
+		-Dgbm=disabled
+		-Dgles1=disabled
+		-Dgles2=enabled
+		-Dshared-glapi=enabled
+		-Ddri-drivers=
+		-Dgallium-drivers=panfrost
+		-Dgallium-vdpau=disabled
+		-Dgallium-xa=disabled
+		-Dplatforms=
+		-Dtools=panfrost
+		--buildtype $(usex debug debug release)
+		-Dvulkan-drivers=$(usex vulkan panfrost '')
+	)
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	rm -v -rf "${ED}/usr/include"
+}
diff --git a/media-libs/mesa-panfrost/mesa-panfrost-9999.ebuild b/media-libs/mesa-panfrost/mesa-panfrost-9999.ebuild
index 38a55f9..316bf27 100644
--- a/media-libs/mesa-panfrost/mesa-panfrost-9999.ebuild
+++ b/media-libs/mesa-panfrost/mesa-panfrost-9999.ebuild
@@ -7,7 +7,7 @@
 CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
 CROS_WORKON_LOCALNAME="mesa"
 CROS_WORKON_MANUAL_UPREV="1"
-CROS_WORKON_EGIT_BRANCH="mesa-20.3"
+CROS_WORKON_EGIT_BRANCH="master"
 
 KEYWORDS="~*"
 
@@ -20,7 +20,7 @@
 # GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
 LICENSE="MIT SGI-B-2.0"
 
-IUSE="debug vulkan"
+IUSE="debug vulkan libglvnd"
 
 COMMON_DEPEND="
 	dev-libs/expat:=
@@ -28,6 +28,8 @@
 "
 
 RDEPEND="${COMMON_DEPEND}
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
 "
 
 DEPEND="${COMMON_DEPEND}
@@ -41,6 +43,8 @@
 
 src_configure() {
 	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
 		-Dllvm=disabled
 		-Ddri3=disabled
 		-Dshader-cache=disabled
diff --git a/media-libs/mesa-reven/OWNERS b/media-libs/mesa-reven/OWNERS
new file mode 100644
index 0000000..20f25b9
--- /dev/null
+++ b/media-libs/mesa-reven/OWNERS
@@ -0,0 +1,4 @@
+nardini@google.com
+nicholasbishop@google.com
+jefferymiller@google.com
+pobega@google.com
diff --git a/media-libs/mesa-llvmpipe/files/0001-Revert-meson-update-llvm-dependency-logic-for-meson-.patch b/media-libs/mesa-reven/files/0001-Revert-meson-update-llvm-dependency-logic-for-meson-.patch
similarity index 100%
rename from media-libs/mesa-llvmpipe/files/0001-Revert-meson-update-llvm-dependency-logic-for-meson-.patch
rename to media-libs/mesa-reven/files/0001-Revert-meson-update-llvm-dependency-logic-for-meson-.patch
diff --git a/media-libs/mesa-reven/files/0002-Revert-meson-Use-cmake-to-find-LLVM-when-building-fo.patch b/media-libs/mesa-reven/files/0002-Revert-meson-Use-cmake-to-find-LLVM-when-building-fo.patch
new file mode 100644
index 0000000..05372a7
--- /dev/null
+++ b/media-libs/mesa-reven/files/0002-Revert-meson-Use-cmake-to-find-LLVM-when-building-fo.patch
@@ -0,0 +1,45 @@
+From 4a5b81513561391f691fd4b7c99e54a182bfbd8b Mon Sep 17 00:00:00 2001
+From: Rob Clark <robdclark@google.com>
+Date: Mon, 8 Jun 2020 09:11:57 -0700
+Subject: [PATCH 2/2] Revert "meson: Use cmake to find LLVM when building for
+ windows"
+
+This reverts commit 821cf6942a390f5f64d8a2cff9933b24c84f7dc1.
+---
+ meson.build | 12 ++----------
+ 1 file changed, 2 insertions(+), 10 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index ef7a602cb03..0f07aa83aa6 100644
+--- a/meson.build
++++ b/meson.build
+@@ -1387,16 +1387,8 @@ else
+ endif
+ 
+ _shared_llvm = get_option('shared-llvm')
+-_llvm = get_option('llvm')
+-
+-# The cmake method will never find libllvm.so|dylib; this is fine for windows
+-# because llvm doesn't support libllvm.dll
+-_llvm_method = 'config-tool'
+-if (meson.version().version_compare('>= 0.51.0') and
+-    host_machine.system() == 'windows')
+-  _llvm_method = 'cmake'
+-endif
+ 
++_llvm = get_option('llvm')
+ dep_llvm = null_dep
+ with_llvm = false
+ if _llvm != 'false'
+@@ -1410,7 +1402,7 @@ if _llvm != 'false'
+       with_gallium_opencl or _llvm == 'true'
+     ),
+     static : not _shared_llvm,
+-    method : _llvm_method,
++    method : 'config-tool',
+     fallback : ['llvm', 'dep_llvm'],
+   )
+   with_llvm = dep_llvm.found()
+-- 
+2.26.2
+
diff --git a/media-libs/mesa-reven/files/BACKPORT-disk_cache-build-option-for-disabled-by-def.patch b/media-libs/mesa-reven/files/BACKPORT-disk_cache-build-option-for-disabled-by-def.patch
new file mode 100644
index 0000000..4a701d1
--- /dev/null
+++ b/media-libs/mesa-reven/files/BACKPORT-disk_cache-build-option-for-disabled-by-def.patch
@@ -0,0 +1,157 @@
+From 5b6f9e4821a48a1abedf6082ab7a7cb06e7b7905 Mon Sep 17 00:00:00 2001
+From: John Bates <jbates@chromium.org>
+Date: Tue, 13 Oct 2020 14:17:53 -0700
+Subject: [PATCH] BACKPORT: disk_cache: build option for disabled-by-default
+
+On some systems it is problematic to have the shader cache enabled
+by default. This adds a build option to support the disk cache but
+keep it disabled unless the environment variable
+MESA_GLSL_CACHE_DISABLE=false.
+
+For example, on Chrome OS, Chrome already has it's own shader
+disk cache implementation so it disables the mesa feature. Tests
+do not want the shader disk cache enabled because it can cause
+inconsistent performance results and the default 1GB for the
+disk cache could lead to problems that require more effort to
+work around. The Mesa shader disk cache is useful for VMs though,
+where it is easy to configure the feature with environment
+variables. With the current version of Mesa, Chrome OS would need
+to have a system-wide environment variable to disable the disk
+cache everywhere except where needed. More elegant to just build
+Mesa with the cache feature disabled by default.
+
+Reviewed-by: Rob Clark <robdclark@chromium.org>
+Reviewed-by: Eric Anholt <eric@anholt.net>
+---
+ docs/envvars.rst                     |  4 +++-
+ meson.build                          |  5 ++++-
+ meson_options.txt                    |  4 ++--
+ src/compiler/glsl/tests/cache_test.c | 21 +++++++++++++++++++++
+ src/util/disk_cache.c                |  8 +++++++-
+ 5 files changed, 37 insertions(+), 5 deletions(-)
+
+diff --git a/docs/envvars.rst b/docs/envvars.rst
+index 76397eec041..872463e7ccb 100644
+--- a/docs/envvars.rst
++++ b/docs/envvars.rst
+@@ -141,7 +141,9 @@ Core Mesa environment variables
+    features of the given language version if it's higher than what's
+    normally reported. (for developers only)
+ ``MESA_GLSL_CACHE_DISABLE``
+-   if set to ``true``, disables the GLSL shader cache
++   if set to ``true``, disables the GLSL shader cache. If set to
++   ``false``, enables the GLSL shader cache when it is disabled by
++   default.
+ ``MESA_GLSL_CACHE_MAX_SIZE``
+    if set, determines the maximum size of the on-disk cache of compiled
+    GLSL programs. Should be set to a number optionally followed by
+diff --git a/meson.build b/meson.build
+index e8b641c6b1d..46844e8a1e3 100644
+--- a/meson.build
++++ b/meson.build
+@@ -901,11 +901,14 @@ elif _shader_cache == 'false'
+ endif
+ if _shader_cache != 'disabled'
+   if host_machine.system() == 'windows'
+-    if _shader_cache == 'enabled'
++    if ['enabled', 'default-disabled'].contains(_shader_cache)
+       error('Shader Cache does not currently work on Windows')
+     endif
+   else
+     pre_args += '-DENABLE_SHADER_CACHE'
++    if _shader_cache == 'default-disabled'
++      pre_args += '-DSHADER_CACHE_DISABLE_BY_DEFAULT'
++    endif
+     with_shader_cache = true
+   endif
+ endif
+diff --git a/meson_options.txt b/meson_options.txt
+index 2d39d13b6ad..ed93d545cc0 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -173,8 +173,8 @@ option(
+   'shader-cache',
+   type : 'combo',
+   value : 'auto',
+-  choices : ['auto', 'true', 'false', 'enabled', 'disabled'],
+-  description : 'Build with on-disk shader cache support'
++  choices : ['auto', 'true', 'false', 'enabled', 'disabled', 'default-disabled'],
++  description : 'Build with on-disk shader cache support. If set to default-disabled, the feature is only activated when environment variable MESA_GLSL_CACHE_DISABLE is set to false'
+ )
+ option(
+   'vulkan-icd-dir',
+diff --git a/src/compiler/glsl/tests/cache_test.c b/src/compiler/glsl/tests/cache_test.c
+index a1db67a5845..926b5e458cc 100644
+--- a/src/compiler/glsl/tests/cache_test.c
++++ b/src/compiler/glsl/tests/cache_test.c
+@@ -193,6 +193,19 @@ test_disk_cache_create(void)
+ 
+    unsetenv("MESA_GLSL_CACHE_DISABLE");
+ 
++#ifdef SHADER_CACHE_DISABLE_BY_DEFAULT
++   /* With SHADER_CACHE_DISABLE_BY_DEFAULT, ensure that with
++    * MESA_GLSL_CACHE_DISABLE set to nothing, disk_cache_create returns NULL.
++    */
++   unsetenv("MESA_GLSL_CACHE_DISABLE");
++   cache = disk_cache_create("test", "make_check", 0);
++   expect_null(cache, "disk_cache_create with MESA_GLSL_CACHE_DISABLE unset "
++               " and SHADER_CACHE_DISABLE_BY_DEFAULT build option");
++
++   /* For remaining tests, ensure that the cache is enabled. */
++   setenv("MESA_GLSL_CACHE_DISABLE", "false", 1);
++#endif /* SHADER_CACHE_DISABLE_BY_DEFAULT */
++
+    /* For the first real disk_cache_create() clear these environment
+     * variables to test creation of cache in home directory.
+     */
+@@ -266,6 +279,10 @@ test_put_and_get(void)
+    uint8_t one_KB_key[20], one_MB_key[20];
+    int count;
+ 
++#ifdef SHADER_CACHE_DISABLE_BY_DEFAULT
++   setenv("MESA_GLSL_CACHE_DISABLE", "false", 1);
++#endif /* SHADER_CACHE_DISABLE_BY_DEFAULT */
++
+    cache = disk_cache_create("test", "make_check", 0);
+ 
+    disk_cache_compute_key(cache, blob, sizeof(blob), blob_key);
+@@ -437,6 +454,10 @@ test_put_key_and_get_key(void)
+                         { 0,  1, 42, 43, 44, 45, 46, 47, 48, 49,
+                          50, 55, 52, 53, 54, 55, 56, 57, 58, 59};
+ 
++#ifdef SHADER_CACHE_DISABLE_BY_DEFAULT
++   setenv("MESA_GLSL_CACHE_DISABLE", "false", 1);
++#endif /* SHADER_CACHE_DISABLE_BY_DEFAULT */
++
+    cache = disk_cache_create("test", "make_check", 0);
+ 
+    /* First test that disk_cache_has_key returns false before disk_cache_put_key */
+diff --git a/src/util/disk_cache.c b/src/util/disk_cache.c
+index a92d621927a..90310b85463 100644
+--- a/src/util/disk_cache.c
++++ b/src/util/disk_cache.c
+@@ -210,6 +210,12 @@ disk_cache_create(const char *gpu_name, const char *driver_id,
+    uint8_t cache_version = CACHE_VERSION;
+    size_t cv_size = sizeof(cache_version);
+ 
++#ifdef SHADER_CACHE_DISABLE_BY_DEFAULT
++   bool disable_by_default = true;
++#else
++   bool disable_by_default = false;
++#endif
++
+    /* If running as a users other than the real user disable cache */
+    if (geteuid() != getuid())
+       return NULL;
+@@ -220,7 +226,7 @@ disk_cache_create(const char *gpu_name, const char *driver_id,
+       goto fail;
+ 
+    /* At user request, disable shader cache entirely. */
+-   if (env_var_as_boolean("MESA_GLSL_CACHE_DISABLE", false))
++   if (env_var_as_boolean("MESA_GLSL_CACHE_DISABLE", disable_by_default))
+       goto fail;
+ 
+    cache = rzalloc(NULL, struct disk_cache);
+-- 
+2.28.0.1011.ga647a8990f-goog
+
diff --git a/media-libs/mesa-reven/files/UPSTREAM-anv-Add-DRM_RDWR-flag-in-anv_gem_handle_to_fd.patch b/media-libs/mesa-reven/files/UPSTREAM-anv-Add-DRM_RDWR-flag-in-anv_gem_handle_to_fd.patch
new file mode 100644
index 0000000..5d19348
--- /dev/null
+++ b/media-libs/mesa-reven/files/UPSTREAM-anv-Add-DRM_RDWR-flag-in-anv_gem_handle_to_fd.patch
@@ -0,0 +1,31 @@
+From df76963a5cd56c677f189ad89d75935a76fca090 Mon Sep 17 00:00:00 2001
+From: Robin Ole Heinemann <robin.ole.heinemann@t-online.de>
+Date: Sun, 13 Dec 2020 02:22:57 +0100
+Subject: [PATCH] anv: Add DRM_RDWR flag in anv_gem_handle_to_fd
+
+The DRM_RDWR flag is needed for mmap with PROT_WRITE to work.
+
+Cc: mesa-stable
+Signed-off-by: Robin Ole Heinemann <robin.ole.heinemann@gmail.com>
+Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8075>
+---
+ src/intel/vulkan/anv_gem.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/intel/vulkan/anv_gem.c b/src/intel/vulkan/anv_gem.c
+index 81e22428e18..4c43f5f77b4 100644
+--- a/src/intel/vulkan/anv_gem.c
++++ b/src/intel/vulkan/anv_gem.c
+@@ -437,7 +437,7 @@ anv_gem_handle_to_fd(struct anv_device *device, uint32_t gem_handle)
+ {
+    struct drm_prime_handle args = {
+       .handle = gem_handle,
+-      .flags = DRM_CLOEXEC,
++      .flags = DRM_CLOEXEC | DRM_RDWR,
+    };
+ 
+    int ret = gen_ioctl(device->fd, DRM_IOCTL_PRIME_HANDLE_TO_FD, &args);
+-- 
+2.29.2
+
diff --git a/media-libs/mesa-reven/files/UPSTREAM-intel-change-urb-max-shader-geometry-for-CML-GT1.patch b/media-libs/mesa-reven/files/UPSTREAM-intel-change-urb-max-shader-geometry-for-CML-GT1.patch
new file mode 100644
index 0000000..a408069
--- /dev/null
+++ b/media-libs/mesa-reven/files/UPSTREAM-intel-change-urb-max-shader-geometry-for-CML-GT1.patch
@@ -0,0 +1,39 @@
+From 276e3927b54292b2c0687b1f9bbcc0d69e314de7 Mon Sep 17 00:00:00 2001
+From: Abhishek Kumar <abhishek4.kumar@intel.com>
+Date: Mon, 18 Jan 2021 10:24:23 +0530
+Subject: [PATCH 002/188] intel: change urb max shader geometry for CML GT1
+
+Below deqp cts failure is seen on CML GT1 only , GT2 all test
+passes, changing the max shader geometry to 256 (previous 640)
+fixes all failure tests.Similar issue on BDW GT1
+https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3173
+
+dEQP-GLES31.functional.geometry_shading.layered.
+		render_with_default_layer_cubemap
+		render_with_default_layer_3d
+		render_with_default_layer_2d_array
+
+Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4102
+
+Signed-off-by: Abhishek Kumar <abhishek4.kumar@intel.com>
+Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8550>
+---
+ src/intel/dev/gen_device_info.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/intel/dev/gen_device_info.c b/src/intel/dev/gen_device_info.c
+index 5e26dc10b8c7..242251564658 100644
+--- a/src/intel/dev/gen_device_info.c
++++ b/src/intel/dev/gen_device_info.c
+@@ -764,6 +764,7 @@ static const struct gen_device_info gen_device_info_cfl_gt1 = {
+     * leading to some vertices to go missing if we use too much URB.
+     */
+    .urb.max_entries[MESA_SHADER_VERTEX] = 928,
++   .urb.max_entries[MESA_SHADER_GEOMETRY] = 256,
+    .simulator_id = 24,
+ };
+ static const struct gen_device_info gen_device_info_cfl_gt2 = {
+-- 
+2.7.4
+
diff --git a/media-libs/mesa-reven/files/UPSTREAM-intel-change-urb-max-shader-geometry-for-KBL-GT1.patch b/media-libs/mesa-reven/files/UPSTREAM-intel-change-urb-max-shader-geometry-for-KBL-GT1.patch
new file mode 100644
index 0000000..be6c1da
--- /dev/null
+++ b/media-libs/mesa-reven/files/UPSTREAM-intel-change-urb-max-shader-geometry-for-KBL-GT1.patch
@@ -0,0 +1,38 @@
+From 26c9574bdb16d7f6cbe06cd5ef5d1ce258afc1ba Mon Sep 17 00:00:00 2001
+From: Abhishek Kumar <abhishek4.kumar@intel.com>
+Date: Tue, 26 Jan 2021 23:50:13 +0530
+Subject: [PATCH] intel: change urb max shader geometry for KBL GT1
+
+Below Deqp CTS failure is seen on KBL GT1(tested on 0x5906) only ,
+GT2 all test passes, changing the max shader geometry to 256
+(previous 640) fixes all failure tests.Similar issues on
+CML GT1 (Gen9) is fixed
+https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8550
+
+dEQP-GLES31.functional.geometry_shading.layered.
+	 render_with_default_layer_cubemap
+	 render_with_default_layer_3d
+	 render_with_default_layer_2d_array
+
+Signed-off-by: Abhishek Kumar <abhishek4.kumar@intel.com>
+Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
+Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8731>
+---
+ src/intel/dev/gen_device_info.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/intel/dev/gen_device_info.c b/src/intel/dev/gen_device_info.c
+index 242251564658..b29cc3d51a50 100644
+--- a/src/intel/dev/gen_device_info.c
++++ b/src/intel/dev/gen_device_info.c
+@@ -675,6 +675,7 @@ static const struct gen_device_info gen_device_info_kbl_gt1 = {
+     * leading to some vertices to go missing if we use too much URB.
+     */
+    .urb.max_entries[MESA_SHADER_VERTEX] = 928,
++   .urb.max_entries[MESA_SHADER_GEOMETRY] = 256,
+    .simulator_id = 16,
+ };
+ 
+-- 
+2.17.1
+
diff --git a/media-libs/mesa-reven/files/drirc b/media-libs/mesa-reven/files/drirc
new file mode 100644
index 0000000..346579b
--- /dev/null
+++ b/media-libs/mesa-reven/files/drirc
@@ -0,0 +1,16 @@
+<driconf>
+   <device driver="i965">
+      <application name="Default">
+         <!-- Force on S3TC hardware decompression support -->
+         <option name="force_s3tc_enable" value="true"/>
+         <option name="precise_trig" value="true"/>
+      </application>
+   </device>
+   <device driver="i915">
+      <application name="Default">
+         <!-- Force on S3TC hardware decompression support -->
+         <option name="force_s3tc_enable" value="true"/>
+      </application>
+   </device>
+</driconf>
+
diff --git a/media-libs/mesa-reven/files/eselect-mesa.conf.7.9 b/media-libs/mesa-reven/files/eselect-mesa.conf.7.9
new file mode 100644
index 0000000..70d9a075
--- /dev/null
+++ b/media-libs/mesa-reven/files/eselect-mesa.conf.7.9
@@ -0,0 +1,39 @@
+# mesa classic/gallium implementations in this release
+
+# Syntax description:
+# * MESA_IMPLEMENTATIONS contains a space-delimited list of switchable
+#   classic/gallium implementations.
+# * MESA_DRIVERS is an associative array, for each member "foo" of
+#   MESA_IMPLEMENTATIONS it contains the following elements:
+#   foo,description - Human-readable description of the driver
+#   foo,classicdriver - Filename of the classic driver
+#   foo,galliumdriver - Filename of the gallium driver
+#   foo,default - which of classic or gallium is chosen by default
+
+MESA_IMPLEMENTATIONS="i915 i965 r300 r600 sw"
+declare -A MESA_DRIVERS || die "MESA_DRIVERS already in environment and not associative."
+
+MESA_DRIVERS[i915,description]="i915 (Intel 915, 945)"
+MESA_DRIVERS[i915,classicdriver]="i915_dri.so"
+MESA_DRIVERS[i915,galliumdriver]="i915g_dri.so"
+MESA_DRIVERS[i915,default]="classic"
+
+MESA_DRIVERS[i965,description]="i965 (Intel 965, G/Q3x, G/Q4x)"
+MESA_DRIVERS[i965,classicdriver]="i965_dri.so"
+MESA_DRIVERS[i965,galliumdriver]="i965g_dri.so"
+MESA_DRIVERS[i965,default]="classic"
+
+MESA_DRIVERS[r300,description]="r300 (Radeon R300-R500)"
+MESA_DRIVERS[r300,classicdriver]="r300_dri.so"
+MESA_DRIVERS[r300,galliumdriver]="r300g_dri.so"
+MESA_DRIVERS[r300,default]="gallium"
+
+MESA_DRIVERS[r600,description]="r600 (Radeon R600-R700, Evergreen)"
+MESA_DRIVERS[r600,classicdriver]="r600_dri.so"
+MESA_DRIVERS[r600,galliumdriver]="r600g_dri.so"
+MESA_DRIVERS[r600,default]="classic"
+
+MESA_DRIVERS[sw,description]="sw (Software renderer)"
+MESA_DRIVERS[sw,classicdriver]="swrast_dri.so"
+MESA_DRIVERS[sw,galliumdriver]="swrastg_dri.so"
+MESA_DRIVERS[sw,default]="gallium"
diff --git a/media-libs/mesa-reven/mesa-reven-21.0.2-r1.ebuild b/media-libs/mesa-reven/mesa-reven-21.0.2-r1.ebuild
new file mode 120000
index 0000000..5494bfa
--- /dev/null
+++ b/media-libs/mesa-reven/mesa-reven-21.0.2-r1.ebuild
@@ -0,0 +1 @@
+mesa-reven-21.0.ebuild
\ No newline at end of file
diff --git a/media-libs/mesa-reven/mesa-reven-21.0.ebuild b/media-libs/mesa-reven/mesa-reven-21.0.ebuild
new file mode 100644
index 0000000..208c6f0
--- /dev/null
+++ b/media-libs/mesa-reven/mesa-reven-21.0.ebuild
@@ -0,0 +1,269 @@
+# Copyright 1999-2019 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
+
+EAPI=7
+
+MESON_AUTO_DEPEND=no
+
+CROS_WORKON_COMMIT="8ec046344b57f7041952f018f14ef626de94fe5d"
+CROS_WORKON_TREE="b8d78e509c717d068a0199e10811bffd817f2dd4"
+
+EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
+CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
+CROS_WORKON_MANUAL_UPREV="1"
+CROS_WORKON_EGIT_BRANCH="mesa-21.0"
+CROS_WORKON_LOCALNAME="mesa"
+
+if [[ ${PV} = 9999* ]]; then
+	GIT_ECLASS="git-2"
+	EXPERIMENTAL="true"
+fi
+
+inherit base multilib flag-o-matic meson toolchain-funcs ${GIT_ECLASS} cros-workon
+
+FOLDER="${PV/_rc*/}"
+[[ ${PV/_rc*/} == ${PV} ]] || FOLDER+="/RC"
+
+DESCRIPTION="OpenGL-like graphic library for Linux"
+HOMEPAGE="http://mesa3d.sourceforge.net/"
+
+#SRC_PATCHES="mirror://gentoo/${P}-gentoo-patches-01.tar.bz2"
+if [[ $PV = 9999* ]] || [[ -n ${CROS_WORKON_COMMIT} ]]; then
+	SRC_URI="${SRC_PATCHES}"
+else
+	SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${P}.tar.bz2
+		${SRC_PATCHES}"
+fi
+
+# Most of the code is MIT/X11.
+# ralloc is LGPL-3
+# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
+LICENSE="MIT LGPL-3 SGI-B-2.0"
+SLOT="0"
+KEYWORDS="*"
+
+INTEL_CARDS="intel iris"
+RADEON_CARDS="amdgpu radeon"
+VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} freedreno llvmpipe mach64 mga nouveau r128 radeonsi savage sis softpipe tdfx via virgl vmware"
+for card in ${VIDEO_CARDS}; do
+	IUSE_VIDEO_CARDS+=" video_cards_${card}"
+done
+
+IUSE="${IUSE_VIDEO_CARDS}
+	+classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD
+	kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X zstd"
+
+LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.60"
+
+REQUIRED_USE="video_cards_amdgpu? ( llvm )
+	video_cards_llvmpipe? ( llvm )"
+
+# keep correct libdrm and dri2proto dep
+# keep blocks in rdepend for binpkg
+RDEPEND="
+	X? (
+		!<x11-base/xorg-server-1.7
+		>=x11-libs/libX11-1.3.99.901
+		x11-libs/libXdamage
+		x11-libs/libXext
+		x11-libs/libXrandr
+		x11-libs/libxshmfence
+		x11-libs/libXxf86vm
+	)
+	llvm? ( virtual/libelf )
+	dev-libs/expat
+	dev-libs/libgcrypt
+	virtual/udev
+	zstd? ( app-arch/zstd )
+	${LIBDRM_DEPSTRING}
+"
+
+DEPEND="${RDEPEND}
+	dev-libs/libxml2
+	sys-devel/bison
+	sys-devel/flex
+	virtual/pkgconfig
+	x11-base/xorg-proto
+	wayland? ( >=dev-libs/wayland-protocols-1.8 )
+	llvm? ( sys-devel/llvm )
+"
+
+driver_list() {
+	local drivers="$(sort -u <<< "${1// /$'\n'}")"
+	echo "${drivers//$'\n'/,}"
+}
+
+src_prepare() {
+	# FreeBSD 6.* doesn't have posix_memalign().
+	if [[ ${CHOST} == *-freebsd6.* ]]; then
+		sed -i \
+			-e "s/-DHAVE_POSIX_MEMALIGN//" \
+			configure.ac || die
+	fi
+
+	# Current meson 'auto' method does not work properly with cross
+	# compiling, so revert back to hard-coded 'config-tool' method.
+	# This should be fixed in a future meson release.  See:
+	# https://github.com/mesonbuild/meson/issues/7276
+	eapply "${FILESDIR}"/0001-Revert-meson-update-llvm-dependency-logic-for-meson-.patch
+
+	#Fix for deqp failures on CML/KBL GT1
+	eapply "${FILESDIR}"/UPSTREAM-intel-change-urb-max-shader-geometry-for-CML-GT1.patch
+	eapply "${FILESDIR}"/UPSTREAM-intel-change-urb-max-shader-geometry-for-KBL-GT1.patch
+	default
+}
+
+src_configure() {
+	tc-getPROG PKG_CONFIG pkg-config
+
+	cros_optimize_package_for_speed
+	# For llvmpipe on ARM we'll get errors about being unable to resolve
+	# "__aeabi_unwind_cpp_pr1" if we don't include this flag; seems wise
+	# to include it for all platforms though.
+	use video_cards_llvmpipe && append-flags "-rtlib=libgcc -shared-libgcc --unwindlib=libgcc"
+
+	if use !gallium && use !classic && use !vulkan; then
+		ewarn "You enabled neither classic, gallium, nor vulkan "
+		ewarn "USE flags. No hardware drivers will be built."
+	fi
+
+	if use classic; then
+	# Configurable DRI drivers
+		# Intel code
+		dri_driver_enable video_cards_intel i965
+	fi
+
+	if use gallium; then
+	# Configurable gallium drivers
+		gallium_enable video_cards_llvmpipe swrast
+		gallium_enable video_cards_softpipe swrast
+
+		# Intel code
+		gallium_enable video_cards_iris iris
+
+		# Nouveau code
+		gallium_enable video_cards_nouveau nouveau
+
+		# ATI code
+		gallium_enable video_cards_radeon r300 r600
+		gallium_enable video_cards_amdgpu radeonsi
+
+		# Freedreno code
+		gallium_enable video_cards_freedreno freedreno
+
+		gallium_enable video_cards_virgl virgl
+	fi
+
+	if use vulkan; then
+		vulkan_enable video_cards_intel intel
+		vulkan_enable video_cards_amdgpu amd
+	fi
+
+	LLVM_ENABLE=false
+	if use llvm && use !video_cards_softpipe; then
+		emesonargs+=( -Dshared-llvm=false )
+		export LLVM_CONFIG=${SYSROOT}/usr/lib/llvm/bin/llvm-config-host
+		LLVM_ENABLE=true
+	fi
+
+	local egl_platforms=""
+	if use egl; then
+		if use wayland; then
+			egl_platforms="${egl_platforms},wayland"
+		fi
+
+		if use X; then
+			egl_platforms="${egl_platforms},x11"
+		fi
+	fi
+	egl_platforms="${egl_platforms##,}"
+
+	if use X; then
+		glx="dri"
+	else
+		glx="disabled"
+	fi
+
+	if use kvm_guest; then
+		emesonargs+=( -Ddri-search-path=/opt/google/cros-containers/lib )
+	fi
+
+	if use zstd; then
+		emesonargs+=( -Dzstd=true )
+	else
+		emesonargs+=( -Dzstd=false )
+	fi
+
+	emesonargs+=(
+		-Dglx="${glx}"
+		-Dllvm="${LLVM_ENABLE}"
+		-Dplatforms="${egl_platforms}"
+		-Dprefer-iris=false
+		-Dshader-cache-default=false
+		$(meson_feature egl)
+		$(meson_feature gbm)
+		$(meson_feature gles1)
+		$(meson_feature gles2)
+		$(meson_use selinux)
+		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
+		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
+		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
+		--buildtype $(usex debug debug release)
+	)
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# Remove redundant GLES headers
+	rm -f "${D}"/usr/include/{EGL,GLES2,GLES3,KHR}/*.h || die "Removing GLES headers failed."
+
+	dodir /usr/$(get_libdir)/dri
+	insinto "/usr/$(get_libdir)/dri/"
+	insopts -m0755
+	# install the gallium drivers we use
+	local gallium_drivers_files=( nouveau_dri.so r300_dri.so r600_dri.so msm_dri.so swrast_dri.so )
+	for x in ${gallium_drivers_files[@]}; do
+		if [ -f "${S}/$(get_libdir)/gallium/${x}" ]; then
+			doins "${S}/$(get_libdir)/gallium/${x}"
+		fi
+	done
+
+	# install classic drivers we use
+	local classic_drivers_files=( i810_dri.so i965_dri.so nouveau_vieux_dri.so radeon_dri.so r200_dri.so )
+	for x in ${classic_drivers_files[@]}; do
+		if [ -f "${S}/$(get_libdir)/${x}" ]; then
+			doins "${S}/$(get_libdir)/${x}"
+		fi
+	done
+
+	# Set driconf option to enable S3TC hardware decompression
+	insinto "/etc/"
+	doins "${FILESDIR}"/drirc
+}
+
+# $1 - VIDEO_CARDS flag (check skipped for "--")
+# other args - names of DRI drivers to enable
+dri_driver_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		DRI_DRIVERS+=("$@")
+	fi
+}
+
+gallium_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		GALLIUM_DRIVERS+=("$@")
+	fi
+}
+
+vulkan_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		VULKAN_DRIVERS+=("$@")
+	fi
+}
diff --git a/media-libs/mesa-reven/mesa-reven-9999.ebuild b/media-libs/mesa-reven/mesa-reven-9999.ebuild
new file mode 100644
index 0000000..25617a6
--- /dev/null
+++ b/media-libs/mesa-reven/mesa-reven-9999.ebuild
@@ -0,0 +1,263 @@
+# Copyright 1999-2019 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
+
+EAPI=7
+
+EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
+CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
+CROS_WORKON_MANUAL_UPREV="1"
+CROS_WORKON_LOCALNAME="mesa"
+
+if [[ ${PV} = 9999* ]]; then
+	GIT_ECLASS="git-2"
+	EXPERIMENTAL="true"
+fi
+
+inherit base flag-o-matic meson toolchain-funcs ${GIT_ECLASS} cros-workon
+
+FOLDER="${PV/_rc*/}"
+[[ ${PV/_rc*/} == ${PV} ]] || FOLDER+="/RC"
+
+DESCRIPTION="OpenGL-like graphic library for Linux"
+HOMEPAGE="http://mesa3d.sourceforge.net/"
+
+#SRC_PATCHES="mirror://gentoo/${P}-gentoo-patches-01.tar.bz2"
+if [[ $PV = 9999* ]] || [[ -n ${CROS_WORKON_COMMIT} ]]; then
+	SRC_URI="${SRC_PATCHES}"
+else
+	SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${P}.tar.bz2
+		${SRC_PATCHES}"
+fi
+
+# Most of the code is MIT/X11.
+# ralloc is LGPL-3
+# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
+LICENSE="MIT LGPL-3 SGI-B-2.0"
+KEYWORDS="~*"
+
+INTEL_CARDS="intel iris"
+RADEON_CARDS="amdgpu radeon"
+VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} freedreno llvmpipe mach64 mga nouveau r128 radeonsi savage sis softpipe tdfx via virgl vmware"
+for card in ${VIDEO_CARDS}; do
+	IUSE_VIDEO_CARDS+=" video_cards_${card}"
+done
+
+IUSE="${IUSE_VIDEO_CARDS}
+	+classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD
+	kvm_guest llvm +nptl pic selinux shared-glapi +vulkan wayland xlib-glx X zstd
+	libglvnd"
+
+LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.60:="
+
+REQUIRED_USE="video_cards_amdgpu? ( llvm )
+	video_cards_llvmpipe? ( llvm )"
+
+COMMON_DEPEND="
+	dev-libs/expat:=
+	dev-libs/libgcrypt:=
+	llvm? ( sys-devel/llvm:= )
+	llvm? ( virtual/libelf:= )
+	virtual/udev:=
+	zstd? ( app-arch/zstd )
+	X? (
+		!<x11-base/xorg-server-1.7:=
+		>=x11-libs/libX11-1.3.99.901:=
+		x11-libs/libXdamage:=
+		x11-libs/libXext:=
+		x11-libs/libXrandr:=
+		x11-libs/libxshmfence:=
+		x11-libs/libXxf86vm:=
+	)
+	${LIBDRM_DEPSTRING}
+"
+
+RDEPEND="${COMMON_DEPEND}
+	libglvnd? ( media-libs/libglvnd:= )
+"
+
+DEPEND="${COMMON_DEPEND}
+	dev-libs/libxml2:=
+	x11-base/xorg-proto:=
+	wayland? ( >=dev-libs/wayland-protocols-1.8:= )
+"
+
+BDEPEND="
+	virtual/pkgconfig
+	sys-devel/bison
+	sys-devel/flex
+"
+
+driver_list() {
+	local drivers="$(sort -u <<< "${1// /$'\n'}")"
+	echo "${drivers//$'\n'/,}"
+}
+
+src_prepare() {
+	# FreeBSD 6.* doesn't have posix_memalign().
+	if [[ ${CHOST} == *-freebsd6.* ]]; then
+		sed -i \
+			-e "s/-DHAVE_POSIX_MEMALIGN//" \
+			configure.ac || die
+	fi
+
+	# Produce a dummy git_sha1.h file because .git will not be copied to portage tmp directory
+	echo '#define MESA_GIT_SHA1 "git-0000000"' > src/git_sha1.h
+	default
+}
+
+src_configure() {
+	tc-getPROG PKG_CONFIG pkg-config
+
+	cros_optimize_package_for_speed
+	# For llvmpipe on ARM we'll get errors about being unable to resolve
+	# "__aeabi_unwind_cpp_pr1" if we don't include this flag; seems wise
+	# to include it for all platforms though.
+	use video_cards_llvmpipe && append-flags "-rtlib=libgcc -shared-libgcc"
+
+	if use !gallium && use !classic && use !vulkan; then
+		ewarn "You enabled neither classic, gallium, nor vulkan "
+		ewarn "USE flags. No hardware drivers will be built."
+	fi
+
+	if use classic; then
+	# Configurable DRI drivers
+		# Intel code
+		dri_driver_enable video_cards_intel i965
+	fi
+
+	if use gallium; then
+	# Configurable gallium drivers
+		gallium_enable video_cards_llvmpipe swrast
+		gallium_enable video_cards_softpipe swrast
+
+		# Intel code
+		gallium_enable video_cards_iris iris
+
+		# Nouveau code
+		gallium_enable video_cards_nouveau nouveau
+
+		# ATI code
+		gallium_enable video_cards_radeon r300 r600
+		gallium_enable video_cards_amdgpu radeonsi
+
+		# Freedreno code
+		gallium_enable video_cards_freedreno freedreno
+
+		gallium_enable video_cards_virgl virgl
+	fi
+
+	if use vulkan; then
+		vulkan_enable video_cards_intel intel
+		vulkan_enable video_cards_amdgpu amd
+	fi
+
+	LLVM_ENABLE=false
+	if use llvm && use !video_cards_softpipe; then
+		emesonargs+=( -Dshared-llvm=false )
+		export LLVM_CONFIG=${SYSROOT}/usr/lib/llvm/bin/llvm-config-host
+		LLVM_ENABLE=true
+	fi
+
+	local egl_platforms=""
+	if use egl; then
+		if use wayland; then
+			egl_platforms="${egl_platforms},wayland"
+		fi
+
+		if use X; then
+			egl_platforms="${egl_platforms},x11"
+		fi
+	fi
+	egl_platforms="${egl_platforms##,}"
+
+	if use X; then
+		glx="dri"
+	else
+		glx="disabled"
+	fi
+
+	if use kvm_guest; then
+		emesonargs+=( -Ddri-search-path=/opt/google/cros-containers/lib )
+	fi
+
+	if use zstd; then
+		emesonargs+=( -Dzstd=true )
+	else
+		emesonargs+=( -Dzstd=false )
+	fi
+
+	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
+		-Dglx="${glx}"
+		-Dllvm="${LLVM_ENABLE}"
+		-Dplatforms="${egl_platforms}"
+		-Dprefer-iris=false
+		-Dshader-cache-default=false
+		$(meson_feature egl)
+		$(meson_feature gbm)
+		$(meson_feature gles1)
+		$(meson_feature gles2)
+		$(meson_use selinux)
+		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
+		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
+		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
+		--buildtype $(usex debug debug release)
+	)
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# Remove redundant GLES headers
+	rm -f "${D}"/usr/include/{EGL,GLES2,GLES3,KHR}/*.h || die "Removing GLES headers failed."
+
+	dodir /usr/$(get_libdir)/dri
+	insinto "/usr/$(get_libdir)/dri/"
+	insopts -m0755
+	# install the gallium drivers we use
+	local gallium_drivers_files=( nouveau_dri.so r300_dri.so r600_dri.so msm_dri.so swrast_dri.so )
+	for x in ${gallium_drivers_files[@]}; do
+		if [ -f "${S}/$(get_libdir)/gallium/${x}" ]; then
+			doins "${S}/$(get_libdir)/gallium/${x}"
+		fi
+	done
+
+	# install classic drivers we use
+	local classic_drivers_files=( i810_dri.so i965_dri.so nouveau_vieux_dri.so radeon_dri.so r200_dri.so )
+	for x in ${classic_drivers_files[@]}; do
+		if [ -f "${S}/$(get_libdir)/${x}" ]; then
+			doins "${S}/$(get_libdir)/${x}"
+		fi
+	done
+
+	# Set driconf option to enable S3TC hardware decompression
+	insinto "/etc/"
+	doins "${FILESDIR}"/drirc
+}
+
+# $1 - VIDEO_CARDS flag (check skipped for "--")
+# other args - names of DRI drivers to enable
+dri_driver_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		DRI_DRIVERS+=("$@")
+	fi
+}
+
+gallium_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		GALLIUM_DRIVERS+=("$@")
+	fi
+}
+
+vulkan_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		VULKAN_DRIVERS+=("$@")
+	fi
+}
diff --git a/media-libs/mesa/OWNERS b/media-libs/mesa/OWNERS
index f7005e3..5480042 100644
--- a/media-libs/mesa/OWNERS
+++ b/media-libs/mesa/OWNERS
@@ -1 +1,5 @@
+anholt@chromium.org
+chadversary@chromium.org
 ihf@chromium.org
+hoegsberg@chromium.org
+marcheu@chromium.org
diff --git a/media-libs/mesa/mesa-21.0.2.ebuild b/media-libs/mesa/mesa-21.0.2.ebuild
deleted file mode 120000
index 5b9a11f..0000000
--- a/media-libs/mesa/mesa-21.0.2.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-mesa-21.0.ebuild
\ No newline at end of file
diff --git a/media-libs/mesa/mesa-21.0.ebuild b/media-libs/mesa/mesa-21.0.ebuild
deleted file mode 100644
index 340a3c7..0000000
--- a/media-libs/mesa/mesa-21.0.ebuild
+++ /dev/null
@@ -1,257 +0,0 @@
-# Copyright 1999-2019 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
-
-EAPI=7
-
-MESON_AUTO_DEPEND=no
-
-CROS_WORKON_COMMIT="8ec046344b57f7041952f018f14ef626de94fe5d"
-CROS_WORKON_TREE="b8d78e509c717d068a0199e10811bffd817f2dd4"
-
-EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
-CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
-CROS_WORKON_MANUAL_UPREV="1"
-CROS_WORKON_EGIT_BRANCH="mesa-21.0"
-
-if [[ ${PV} = 9999* ]]; then
-	GIT_ECLASS="git-2"
-	EXPERIMENTAL="true"
-fi
-
-inherit base multilib flag-o-matic meson toolchain-funcs ${GIT_ECLASS} cros-workon
-
-FOLDER="${PV/_rc*/}"
-[[ ${PV/_rc*/} == ${PV} ]] || FOLDER+="/RC"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="http://mesa3d.sourceforge.net/"
-
-#SRC_PATCHES="mirror://gentoo/${P}-gentoo-patches-01.tar.bz2"
-if [[ $PV = 9999* ]] || [[ -n ${CROS_WORKON_COMMIT} ]]; then
-	SRC_URI="${SRC_PATCHES}"
-else
-	SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${P}.tar.bz2
-		${SRC_PATCHES}"
-fi
-
-# Most of the code is MIT/X11.
-# ralloc is LGPL-3
-# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
-LICENSE="MIT LGPL-3 SGI-B-2.0"
-SLOT="0"
-KEYWORDS="*"
-
-INTEL_CARDS="intel"
-RADEON_CARDS="amdgpu radeon"
-VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} freedreno llvmpipe mach64 mga nouveau r128 radeonsi savage sis softpipe tdfx via virgl vmware"
-for card in ${VIDEO_CARDS}; do
-	IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
-	+classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD
-	kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.60"
-
-REQUIRED_USE="video_cards_amdgpu? ( llvm )
-	video_cards_llvmpipe? ( llvm )"
-
-# keep correct libdrm and dri2proto dep
-# keep blocks in rdepend for binpkg
-RDEPEND="
-	X? (
-		!<x11-base/xorg-server-1.7
-		>=x11-libs/libX11-1.3.99.901
-		x11-libs/libXdamage
-		x11-libs/libXext
-		x11-libs/libXrandr
-		x11-libs/libxshmfence
-		x11-libs/libXxf86vm
-	)
-	llvm? ( virtual/libelf )
-	dev-libs/expat
-	dev-libs/libgcrypt
-	virtual/udev
-	${LIBDRM_DEPSTRING}
-"
-
-DEPEND="${RDEPEND}
-	dev-libs/libxml2
-	sys-devel/bison
-	sys-devel/flex
-	virtual/pkgconfig
-	x11-base/xorg-proto
-	wayland? ( >=dev-libs/wayland-protocols-1.8 )
-	llvm? ( sys-devel/llvm )
-"
-
-driver_list() {
-	local drivers="$(sort -u <<< "${1// /$'\n'}")"
-	echo "${drivers//$'\n'/,}"
-}
-
-src_prepare() {
-	# FreeBSD 6.* doesn't have posix_memalign().
-	if [[ ${CHOST} == *-freebsd6.* ]]; then
-		sed -i \
-			-e "s/-DHAVE_POSIX_MEMALIGN//" \
-			configure.ac || die
-	fi
-
-	# Current meson 'auto' method does not work properly with cross
-	# compiling, so revert back to hard-coded 'config-tool' method.
-	# This should be fixed in a future meson release.  See:
-	# https://github.com/mesonbuild/meson/issues/7276
-	eapply "${FILESDIR}"/0001-Revert-meson-update-llvm-dependency-logic-for-meson-.patch
-
-	#Fix for deqp failures on CML/KBL GT1
-	eapply "${FILESDIR}"/UPSTREAM-intel-change-urb-max-shader-geometry-for-CML-GT1.patch
-	eapply "${FILESDIR}"/UPSTREAM-intel-change-urb-max-shader-geometry-for-KBL-GT1.patch
-	default
-}
-
-src_configure() {
-	tc-getPROG PKG_CONFIG pkg-config
-
-	cros_optimize_package_for_speed
-	# For llvmpipe on ARM we'll get errors about being unable to resolve
-	# "__aeabi_unwind_cpp_pr1" if we don't include this flag; seems wise
-	# to include it for all platforms though.
-	use video_cards_llvmpipe && append-flags "-rtlib=libgcc -shared-libgcc --unwindlib=libgcc"
-
-	if use !gallium && use !classic && use !vulkan; then
-		ewarn "You enabled neither classic, gallium, nor vulkan "
-		ewarn "USE flags. No hardware drivers will be built."
-	fi
-
-	if use classic; then
-	# Configurable DRI drivers
-		# Intel code
-		dri_driver_enable video_cards_intel i965
-	fi
-
-	if use gallium; then
-	# Configurable gallium drivers
-		gallium_enable video_cards_llvmpipe swrast
-		gallium_enable video_cards_softpipe swrast
-
-		# Nouveau code
-		gallium_enable video_cards_nouveau nouveau
-
-		# ATI code
-		gallium_enable video_cards_radeon r300 r600
-		gallium_enable video_cards_amdgpu radeonsi
-
-		# Freedreno code
-		gallium_enable video_cards_freedreno freedreno
-
-		gallium_enable video_cards_virgl virgl
-	fi
-
-	if use vulkan; then
-		vulkan_enable video_cards_intel intel
-		vulkan_enable video_cards_amdgpu amd
-	fi
-
-	LLVM_ENABLE=false
-	if use llvm && use !video_cards_softpipe; then
-		emesonargs+=( -Dshared-llvm=false )
-		export LLVM_CONFIG=${SYSROOT}/usr/lib/llvm/bin/llvm-config-host
-		LLVM_ENABLE=true
-	fi
-
-	local egl_platforms=""
-	if use egl; then
-		if use wayland; then
-			egl_platforms="${egl_platforms},wayland"
-		fi
-
-		if use X; then
-			egl_platforms="${egl_platforms},x11"
-		fi
-	fi
-	egl_platforms="${egl_platforms##,}"
-
-	if use X; then
-		glx="dri"
-	else
-		glx="disabled"
-	fi
-
-	if use kvm_guest; then
-		emesonargs+=( -Ddri-search-path=/opt/google/cros-containers/lib )
-	fi
-
-	emesonargs+=(
-		-Dglx="${glx}"
-		-Dllvm="${LLVM_ENABLE}"
-		-Dplatforms="${egl_platforms}"
-		-Dshader-cache-default=false
-		$(meson_feature egl)
-		$(meson_feature gbm)
-		$(meson_feature gles1)
-		$(meson_feature gles2)
-		$(meson_use selinux)
-		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
-		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
-		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
-		--buildtype $(usex debug debug release)
-	)
-
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	# Remove redundant GLES headers
-	rm -f "${D}"/usr/include/{EGL,GLES2,GLES3,KHR}/*.h || die "Removing GLES headers failed."
-
-	dodir /usr/$(get_libdir)/dri
-	insinto "/usr/$(get_libdir)/dri/"
-	insopts -m0755
-	# install the gallium drivers we use
-	local gallium_drivers_files=( nouveau_dri.so r300_dri.so r600_dri.so msm_dri.so swrast_dri.so )
-	for x in ${gallium_drivers_files[@]}; do
-		if [ -f "${S}/$(get_libdir)/gallium/${x}" ]; then
-			doins "${S}/$(get_libdir)/gallium/${x}"
-		fi
-	done
-
-	# install classic drivers we use
-	local classic_drivers_files=( i810_dri.so i965_dri.so nouveau_vieux_dri.so radeon_dri.so r200_dri.so )
-	for x in ${classic_drivers_files[@]}; do
-		if [ -f "${S}/$(get_libdir)/${x}" ]; then
-			doins "${S}/$(get_libdir)/${x}"
-		fi
-	done
-
-	# Set driconf option to enable S3TC hardware decompression
-	insinto "/etc/"
-	doins "${FILESDIR}"/drirc
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-dri_driver_enable() {
-	if [[ $1 == -- ]] || use $1; then
-		shift
-		DRI_DRIVERS+=("$@")
-	fi
-}
-
-gallium_enable() {
-	if [[ $1 == -- ]] || use $1; then
-		shift
-		GALLIUM_DRIVERS+=("$@")
-	fi
-}
-
-vulkan_enable() {
-	if [[ $1 == -- ]] || use $1; then
-		shift
-		VULKAN_DRIVERS+=("$@")
-	fi
-}
diff --git a/media-libs/mesa/mesa-21.1-r1.ebuild b/media-libs/mesa/mesa-21.1-r1.ebuild
deleted file mode 120000
index 4327ac5..0000000
--- a/media-libs/mesa/mesa-21.1-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-mesa-21.1.ebuild
\ No newline at end of file
diff --git a/media-libs/mesa/mesa-21.1.ebuild b/media-libs/mesa/mesa-21.1.ebuild
deleted file mode 100644
index 1c0f2c3..0000000
--- a/media-libs/mesa/mesa-21.1.ebuild
+++ /dev/null
@@ -1,248 +0,0 @@
-# Copyright 1999-2019 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
-
-EAPI=7
-
-MESON_AUTO_DEPEND=no
-
-CROS_WORKON_COMMIT="0c94b3f55bc5f1db5aba3b294317b97241bfd9a0"
-CROS_WORKON_TREE="5d5b7c74a6aae79cfcfb57dcff3bc4574df27c32"
-
-EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
-CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
-CROS_WORKON_MANUAL_UPREV="1"
-CROS_WORKON_EGIT_BRANCH="master"
-
-if [[ ${PV} = 9999* ]]; then
-	GIT_ECLASS="git-2"
-	EXPERIMENTAL="true"
-fi
-
-inherit base multilib flag-o-matic meson toolchain-funcs ${GIT_ECLASS} cros-workon
-
-FOLDER="${PV/_rc*/}"
-[[ ${PV/_rc*/} == ${PV} ]] || FOLDER+="/RC"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="http://mesa3d.sourceforge.net/"
-
-#SRC_PATCHES="mirror://gentoo/${P}-gentoo-patches-01.tar.bz2"
-if [[ $PV = 9999* ]] || [[ -n ${CROS_WORKON_COMMIT} ]]; then
-	SRC_URI="${SRC_PATCHES}"
-else
-	SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${P}.tar.bz2
-		${SRC_PATCHES}"
-fi
-
-# Most of the code is MIT/X11.
-# ralloc is LGPL-3
-# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
-LICENSE="MIT LGPL-3 SGI-B-2.0"
-SLOT="0"
-KEYWORDS="~*"
-
-INTEL_CARDS="intel"
-RADEON_CARDS="amdgpu radeon"
-VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} freedreno llvmpipe mach64 mga nouveau r128 radeonsi savage sis softpipe tdfx via virgl vmware"
-for card in ${VIDEO_CARDS}; do
-	IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
-	+classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD
-	kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.60"
-
-REQUIRED_USE="video_cards_amdgpu? ( llvm )
-	video_cards_llvmpipe? ( llvm )"
-
-# keep correct libdrm and dri2proto dep
-# keep blocks in rdepend for binpkg
-RDEPEND="
-	X? (
-		!<x11-base/xorg-server-1.7
-		>=x11-libs/libX11-1.3.99.901
-		x11-libs/libXdamage
-		x11-libs/libXext
-		x11-libs/libXrandr
-		x11-libs/libxshmfence
-		x11-libs/libXxf86vm
-	)
-	llvm? ( virtual/libelf )
-	dev-libs/expat
-	dev-libs/libgcrypt
-	virtual/udev
-	${LIBDRM_DEPSTRING}
-"
-
-DEPEND="${RDEPEND}
-	dev-libs/libxml2
-	sys-devel/bison
-	sys-devel/flex
-	virtual/pkgconfig
-	x11-base/xorg-proto
-	wayland? ( >=dev-libs/wayland-protocols-1.8 )
-	llvm? ( sys-devel/llvm )
-"
-
-driver_list() {
-	local drivers="$(sort -u <<< "${1// /$'\n'}")"
-	echo "${drivers//$'\n'/,}"
-}
-
-src_prepare() {
-	# FreeBSD 6.* doesn't have posix_memalign().
-	if [[ ${CHOST} == *-freebsd6.* ]]; then
-		sed -i \
-			-e "s/-DHAVE_POSIX_MEMALIGN//" \
-			configure.ac || die
-	fi
-
-	default
-}
-
-src_configure() {
-	tc-getPROG PKG_CONFIG pkg-config
-
-	cros_optimize_package_for_speed
-	# For llvmpipe on ARM we'll get errors about being unable to resolve
-	# "__aeabi_unwind_cpp_pr1" if we don't include this flag; seems wise
-	# to include it for all platforms though.
-	use video_cards_llvmpipe && append-flags "-rtlib=libgcc -shared-libgcc --unwindlib=libgcc"
-
-	if use !gallium && use !classic && use !vulkan; then
-		ewarn "You enabled neither classic, gallium, nor vulkan "
-		ewarn "USE flags. No hardware drivers will be built."
-	fi
-
-	if use classic; then
-	# Configurable DRI drivers
-		# Intel code
-		dri_driver_enable video_cards_intel i965
-	fi
-
-	if use gallium; then
-	# Configurable gallium drivers
-		gallium_enable video_cards_llvmpipe swrast
-		gallium_enable video_cards_softpipe swrast
-
-		# Nouveau code
-		gallium_enable video_cards_nouveau nouveau
-
-		# ATI code
-		gallium_enable video_cards_radeon r300 r600
-		gallium_enable video_cards_amdgpu radeonsi
-
-		# Freedreno code
-		gallium_enable video_cards_freedreno freedreno
-
-		gallium_enable video_cards_virgl virgl
-	fi
-
-	if use vulkan; then
-		vulkan_enable video_cards_intel intel
-		vulkan_enable video_cards_amdgpu amd
-	fi
-
-	LLVM_ENABLE=false
-	if use llvm && use !video_cards_softpipe; then
-		emesonargs+=( -Dshared-llvm=false )
-		export LLVM_CONFIG=${SYSROOT}/usr/lib/llvm/bin/llvm-config-host
-		LLVM_ENABLE=true
-	fi
-
-	local egl_platforms=""
-	if use egl; then
-		if use wayland; then
-			egl_platforms="${egl_platforms},wayland"
-		fi
-
-		if use X; then
-			egl_platforms="${egl_platforms},x11"
-		fi
-	fi
-	egl_platforms="${egl_platforms##,}"
-
-	if use X; then
-		glx="dri"
-	else
-		glx="disabled"
-	fi
-
-	if use kvm_guest; then
-		emesonargs+=( -Ddri-search-path=/opt/google/cros-containers/lib )
-	fi
-
-	emesonargs+=(
-		-Dglx="${glx}"
-		-Dllvm="${LLVM_ENABLE}"
-		-Dplatforms="${egl_platforms}"
-		-Dshader-cache-default=false
-		$(meson_feature egl)
-		$(meson_feature gbm)
-		$(meson_feature gles1)
-		$(meson_feature gles2)
-		$(meson_use selinux)
-		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
-		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
-		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
-		--buildtype $(usex debug debug release)
-	)
-
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	# Remove redundant GLES headers
-	rm -f "${D}"/usr/include/{EGL,GLES2,GLES3,KHR}/*.h || die "Removing GLES headers failed."
-
-	dodir /usr/$(get_libdir)/dri
-	insinto "/usr/$(get_libdir)/dri/"
-	insopts -m0755
-	# install the gallium drivers we use
-	local gallium_drivers_files=( nouveau_dri.so r300_dri.so r600_dri.so msm_dri.so swrast_dri.so )
-	for x in ${gallium_drivers_files[@]}; do
-		if [ -f "${S}/$(get_libdir)/gallium/${x}" ]; then
-			doins "${S}/$(get_libdir)/gallium/${x}"
-		fi
-	done
-
-	# install classic drivers we use
-	local classic_drivers_files=( i810_dri.so i965_dri.so nouveau_vieux_dri.so radeon_dri.so r200_dri.so )
-	for x in ${classic_drivers_files[@]}; do
-		if [ -f "${S}/$(get_libdir)/${x}" ]; then
-			doins "${S}/$(get_libdir)/${x}"
-		fi
-	done
-
-	# Set driconf option to enable S3TC hardware decompression
-	insinto "/etc/"
-	doins "${FILESDIR}"/drirc
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-dri_driver_enable() {
-	if [[ $1 == -- ]] || use $1; then
-		shift
-		DRI_DRIVERS+=("$@")
-	fi
-}
-
-gallium_enable() {
-	if [[ $1 == -- ]] || use $1; then
-		shift
-		GALLIUM_DRIVERS+=("$@")
-	fi
-}
-
-vulkan_enable() {
-	if [[ $1 == -- ]] || use $1; then
-		shift
-		VULKAN_DRIVERS+=("$@")
-	fi
-}
diff --git a/media-libs/mesa/mesa-21.2.3-r1.ebuild b/media-libs/mesa/mesa-21.2.3-r1.ebuild
new file mode 120000
index 0000000..a7d9b24
--- /dev/null
+++ b/media-libs/mesa/mesa-21.2.3-r1.ebuild
@@ -0,0 +1 @@
+mesa-21.2.ebuild
\ No newline at end of file
diff --git a/media-libs/mesa/mesa-21.2.ebuild b/media-libs/mesa/mesa-21.2.ebuild
new file mode 100644
index 0000000..42d9ee0
--- /dev/null
+++ b/media-libs/mesa/mesa-21.2.ebuild
@@ -0,0 +1,253 @@
+# Copyright 1999-2019 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.9.ebuild,v 1.3 2010/12/05 17:19:14 arfrever Exp $
+
+EAPI=7
+
+MESON_AUTO_DEPEND=no
+
+CROS_WORKON_COMMIT="5da276cf339c86a0bd62f45e4dc90682a6b19f25"
+CROS_WORKON_TREE="dc2e8513f627de823b24480670875277b9f478b2"
+
+EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
+CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
+CROS_WORKON_MANUAL_UPREV="1"
+CROS_WORKON_EGIT_BRANCH="upstream/main"
+
+if [[ ${PV} = 9999* ]]; then
+	GIT_ECLASS="git-2"
+	EXPERIMENTAL="true"
+fi
+
+inherit base multilib flag-o-matic meson toolchain-funcs ${GIT_ECLASS} cros-workon
+
+FOLDER="${PV/_rc*/}"
+[[ ${PV/_rc*/} == ${PV} ]] || FOLDER+="/RC"
+
+DESCRIPTION="OpenGL-like graphic library for Linux"
+HOMEPAGE="http://mesa3d.sourceforge.net/"
+
+#SRC_PATCHES="mirror://gentoo/${P}-gentoo-patches-01.tar.bz2"
+if [[ $PV = 9999* ]] || [[ -n ${CROS_WORKON_COMMIT} ]]; then
+	SRC_URI="${SRC_PATCHES}"
+else
+	SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${P}.tar.bz2
+		${SRC_PATCHES}"
+fi
+
+# Most of the code is MIT/X11.
+# ralloc is LGPL-3
+# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
+LICENSE="MIT LGPL-3 SGI-B-2.0"
+SLOT="0"
+KEYWORDS="*"
+
+INTEL_CARDS="intel"
+RADEON_CARDS="amdgpu radeon"
+VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} freedreno llvmpipe mach64 mga nouveau r128 radeonsi savage sis softpipe tdfx via virgl vmware"
+for card in ${VIDEO_CARDS}; do
+	IUSE_VIDEO_CARDS+=" video_cards_${card}"
+done
+
+IUSE="${IUSE_VIDEO_CARDS}
+	+classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD
+	kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X
+	libglvnd"
+
+LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.60"
+
+REQUIRED_USE="video_cards_amdgpu? ( llvm )
+	video_cards_llvmpipe? ( llvm )"
+
+# keep correct libdrm and dri2proto dep
+# keep blocks in rdepend for binpkg
+RDEPEND="
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
+	X? (
+		!<x11-base/xorg-server-1.7
+		>=x11-libs/libX11-1.3.99.901
+		x11-libs/libXdamage
+		x11-libs/libXext
+		x11-libs/libXrandr
+		x11-libs/libxshmfence
+		x11-libs/libXxf86vm
+	)
+	llvm? ( virtual/libelf )
+	dev-libs/expat
+	dev-libs/libgcrypt
+	virtual/udev
+	${LIBDRM_DEPSTRING}
+"
+
+DEPEND="${RDEPEND}
+	dev-libs/libxml2
+	sys-devel/bison
+	sys-devel/flex
+	virtual/pkgconfig
+	x11-base/xorg-proto
+	wayland? ( >=dev-libs/wayland-protocols-1.8 )
+	llvm? ( sys-devel/llvm )
+"
+
+driver_list() {
+	local drivers="$(sort -u <<< "${1// /$'\n'}")"
+	echo "${drivers//$'\n'/,}"
+}
+
+src_prepare() {
+	# FreeBSD 6.* doesn't have posix_memalign().
+	if [[ ${CHOST} == *-freebsd6.* ]]; then
+		sed -i \
+			-e "s/-DHAVE_POSIX_MEMALIGN//" \
+			configure.ac || die
+	fi
+	default
+}
+
+src_configure() {
+	tc-getPROG PKG_CONFIG pkg-config
+
+	cros_optimize_package_for_speed
+	# For llvmpipe on ARM we'll get errors about being unable to resolve
+	# "__aeabi_unwind_cpp_pr1" if we don't include this flag; seems wise
+	# to include it for all platforms though.
+	use video_cards_llvmpipe && append-flags "-rtlib=libgcc -shared-libgcc --unwindlib=libgcc"
+
+	if use !gallium && use !classic && use !vulkan; then
+		ewarn "You enabled neither classic, gallium, nor vulkan "
+		ewarn "USE flags. No hardware drivers will be built."
+	fi
+
+	if use classic; then
+	# Configurable DRI drivers
+		# Intel code
+		dri_driver_enable video_cards_intel i965
+	fi
+
+	if use gallium; then
+	# Configurable gallium drivers
+		gallium_enable video_cards_llvmpipe swrast
+		gallium_enable video_cards_softpipe swrast
+
+		# Nouveau code
+		gallium_enable video_cards_nouveau nouveau
+
+		# ATI code
+		gallium_enable video_cards_radeon r300 r600
+		gallium_enable video_cards_amdgpu radeonsi
+
+		# Freedreno code
+		gallium_enable video_cards_freedreno freedreno
+
+		gallium_enable video_cards_virgl virgl
+	fi
+
+	if use vulkan; then
+		vulkan_enable video_cards_intel intel
+		vulkan_enable video_cards_amdgpu amd
+	fi
+
+	LLVM_ENABLE=false
+	if use llvm && use !video_cards_softpipe; then
+		emesonargs+=( -Dshared-llvm=false )
+		export LLVM_CONFIG=${SYSROOT}/usr/lib/llvm/bin/llvm-config-host
+		LLVM_ENABLE=true
+	fi
+
+	local egl_platforms=""
+	if use egl; then
+		if use wayland; then
+			egl_platforms="${egl_platforms},wayland"
+		fi
+
+		if use X; then
+			egl_platforms="${egl_platforms},x11"
+		fi
+	fi
+	egl_platforms="${egl_platforms##,}"
+
+	if use X; then
+		glx="dri"
+	else
+		glx="disabled"
+	fi
+
+	if use kvm_guest; then
+		emesonargs+=( -Ddri-search-path=/opt/google/cros-containers/lib )
+	fi
+
+	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
+		-Dglx="${glx}"
+		-Dllvm="${LLVM_ENABLE}"
+		-Dplatforms="${egl_platforms}"
+		-Dprefer-iris=false
+		-Dshader-cache-default=false
+		$(meson_feature egl)
+		$(meson_feature gbm)
+		$(meson_feature gles1)
+		$(meson_feature gles2)
+		$(meson_use selinux)
+		-Ddri-drivers=$(driver_list "${DRI_DRIVERS[*]}")
+		-Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
+		-Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
+		--buildtype $(usex debug debug release)
+	)
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# Remove redundant GLES headers
+	rm -f "${D}"/usr/include/{EGL,GLES2,GLES3,KHR}/*.h || die "Removing GLES headers failed."
+
+	dodir /usr/$(get_libdir)/dri
+	insinto "/usr/$(get_libdir)/dri/"
+	insopts -m0755
+	# install the gallium drivers we use
+	local gallium_drivers_files=( nouveau_dri.so r300_dri.so r600_dri.so msm_dri.so swrast_dri.so )
+	for x in ${gallium_drivers_files[@]}; do
+		if [ -f "${S}/$(get_libdir)/gallium/${x}" ]; then
+			doins "${S}/$(get_libdir)/gallium/${x}"
+		fi
+	done
+
+	# install classic drivers we use
+	local classic_drivers_files=( i810_dri.so i965_dri.so nouveau_vieux_dri.so radeon_dri.so r200_dri.so )
+	for x in ${classic_drivers_files[@]}; do
+		if [ -f "${S}/$(get_libdir)/${x}" ]; then
+			doins "${S}/$(get_libdir)/${x}"
+		fi
+	done
+
+	# Set driconf option to enable S3TC hardware decompression
+	insinto "/etc/"
+	doins "${FILESDIR}"/drirc
+}
+
+# $1 - VIDEO_CARDS flag (check skipped for "--")
+# other args - names of DRI drivers to enable
+dri_driver_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		DRI_DRIVERS+=("$@")
+	fi
+}
+
+gallium_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		GALLIUM_DRIVERS+=("$@")
+	fi
+}
+
+vulkan_enable() {
+	if [[ $1 == -- ]] || use $1; then
+		shift
+		VULKAN_DRIVERS+=("$@")
+	fi
+}
diff --git a/media-libs/mesa/mesa-9999.ebuild b/media-libs/mesa/mesa-9999.ebuild
index 0796a97f..8b93e36 100644
--- a/media-libs/mesa/mesa-9999.ebuild
+++ b/media-libs/mesa/mesa-9999.ebuild
@@ -7,6 +7,7 @@
 EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
 CROS_WORKON_PROJECT="chromiumos/third_party/mesa"
 CROS_WORKON_MANUAL_UPREV="1"
+CROS_WORKON_EGIT_BRANCH="upstream/main"
 
 if [[ ${PV} = 9999* ]]; then
 	GIT_ECLASS="git-2"
@@ -44,7 +45,8 @@
 
 IUSE="${IUSE_VIDEO_CARDS}
 	+classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD
-	kvm_guest llvm +nptl pic selinux shared-glapi +vulkan wayland xlib-glx X"
+	kvm_guest llvm +nptl pic selinux shared-glapi +vulkan wayland xlib-glx X
+	libglvnd"
 
 LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.60:="
 
@@ -70,6 +72,8 @@
 "
 
 RDEPEND="${COMMON_DEPEND}
+	libglvnd? ( media-libs/libglvnd )
+	!libglvnd? ( !media-libs/libglvnd )
 "
 
 DEPEND="${COMMON_DEPEND}
@@ -175,9 +179,12 @@
 	fi
 
 	emesonargs+=(
+		-Dexecmem=false
+		-Dglvnd=$(usex libglvnd true false)
 		-Dglx="${glx}"
 		-Dllvm="${LLVM_ENABLE}"
 		-Dplatforms="${egl_platforms}"
+		-Dprefer-iris=false
 		-Dshader-cache-default=false
 		$(meson_feature egl)
 		$(meson_feature gbm)
diff --git a/media-libs/minigbm/minigbm-0.0.1-r485.ebuild b/media-libs/minigbm/minigbm-0.0.1-r485.ebuild
deleted file mode 100644
index 7e99bc4..0000000
--- a/media-libs/minigbm/minigbm-0.0.1-r485.ebuild
+++ /dev/null
@@ -1,85 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-CROS_WORKON_COMMIT="bb9d4af4529b3019d830b8ef7e39479436b642af"
-CROS_WORKON_TREE="6db1492d66cd8acef88bacfe95f001e289adc55c"
-CROS_WORKON_PROJECT="chromiumos/platform/minigbm"
-CROS_WORKON_LOCALNAME="../platform/minigbm"
-CROS_WORKON_OUTOFTREE_BUILD=1
-
-inherit cros-sanitizers cros-workon cros-common.mk multilib
-
-DESCRIPTION="Mini GBM implementation"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/minigbm"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-VIDEO_CARDS="
-	amdgpu exynos intel marvell mediatek msm
-	radeon radeonsi rockchip tegra vc4 virgl
-"
-IUSE="-asan kernel-3_18 linear_align_256"
-for card in ${VIDEO_CARDS}; do
-	IUSE+=" video_cards_${card}"
-done
-
-MINI_GBM_PLATFORMS_USE=( mt8183 mt8192 mt8195 )
-IUSE+=" ${MINI_GBM_PLATFORMS_USE[*]/#/minigbm_platform_}"
-
-RDEPEND="
-	x11-libs/libdrm
-	!media-libs/mesa[gbm]"
-
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	video_cards_amdgpu? (
-		virtual/opengles
-		x11-drivers/opengles-headers
-	)"
-
-src_prepare() {
-	default
-	sanitizers-setup-env
-	cros-common.mk_src_prepare
-}
-
-src_configure() {
-	export LIBDIR="/usr/$(get_libdir)"
-	append-cppflags -DDRI_DRIVER_DIR="/usr/$(get_libdir)/dri"
-	use video_cards_amdgpu && append-cppflags -DDRV_AMDGPU && export DRV_AMDGPU=1
-	use video_cards_exynos && append-cppflags -DDRV_EXYNOS && export DRV_EXYNOS=1
-	use video_cards_intel && append-cppflags -DDRV_I915 && export DRV_I915=1
-	if use video_cards_intel ; then
-		if ! use kernel-3_18; then
-			append-cppflags -DI915_SCANOUT_Y_TILED
-		fi
-	fi
-	use video_cards_marvell && append-cppflags -DDRV_MARVELL && export DRV_MARVELL=1
-	use minigbm_platform_mt8183 && append-cppflags -DMTK_MT8183
-	use minigbm_platform_mt8192 && append-cppflags -DMTK_MT8192
-	use minigbm_platform_mt8195 && append-cppflags -DMTK_MT8195
-	use video_cards_mediatek && append-cppflags -DDRV_MEDIATEK && export DRV_MEDIATEK=1
-	use video_cards_msm && append-cppflags -DDRV_MSM && export DRV_MSM=1
-	use video_cards_radeon && append-cppflags -DDRV_RADEON && export DRV_RADEON=1
-	use video_cards_radeonsi && append-cppflags -DDRV_RADEON && export DRV_RADEON=1
-	use video_cards_rockchip && append-cppflags -DDRV_ROCKCHIP && export DRV_ROCKCHIP=1
-	use video_cards_tegra && append-cppflags -DDRV_TEGRA && export DRV_TEGRA=1
-	use video_cards_vc4 && append-cppflags -DDRV_VC4 && export DRV_VC4=1
-	use video_cards_virgl && append-cppflags -DDRV_VIRGL && export DRV_VIRGL=1
-	use linear_align_256 && append-cppflags -DLINEAR_ALIGN_256
-	cros-common.mk_src_configure
-}
-
-src_compile() {
-	cros-common.mk_src_compile
-}
-
-src_install() {
-	insinto "${EPREFIX}/etc/udev/rules.d"
-	doins "${FILESDIR}/50-vgem.rules"
-
-	default
-}
diff --git a/media-libs/minigbm/minigbm-0.0.1-r533.ebuild b/media-libs/minigbm/minigbm-0.0.1-r533.ebuild
new file mode 100644
index 0000000..79815ad
--- /dev/null
+++ b/media-libs/minigbm/minigbm-0.0.1-r533.ebuild
@@ -0,0 +1,86 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+CROS_WORKON_COMMIT="2418bc45d7638ff738aba2bc4b7e1cdc6d04b7a8"
+CROS_WORKON_TREE="81cd37f0714198bfcfc7939e20046acb470d31c4"
+CROS_WORKON_PROJECT="chromiumos/platform/minigbm"
+CROS_WORKON_LOCALNAME="../platform/minigbm"
+CROS_WORKON_OUTOFTREE_BUILD=1
+
+inherit cros-sanitizers cros-workon cros-common.mk multilib
+
+DESCRIPTION="Mini GBM implementation"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/minigbm"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+VIDEO_CARDS="
+	amdgpu exynos intel marvell mediatek msm
+	radeon radeonsi rockchip tegra vc4 virgl
+"
+IUSE="-asan kernel-3_18 linear_align_256"
+for card in ${VIDEO_CARDS}; do
+	IUSE+=" video_cards_${card}"
+done
+
+MINI_GBM_PLATFORMS_USE=( mt8183 mt8192 mt8195 sc7280)
+IUSE+=" ${MINI_GBM_PLATFORMS_USE[*]/#/minigbm_platform_}"
+
+RDEPEND="
+	x11-libs/libdrm
+	!media-libs/mesa[gbm]"
+
+DEPEND="${RDEPEND}
+	virtual/pkgconfig
+	video_cards_amdgpu? (
+		virtual/opengles
+		x11-drivers/opengles-headers
+	)"
+
+src_prepare() {
+	default
+	sanitizers-setup-env
+	cros-common.mk_src_prepare
+}
+
+src_configure() {
+	export LIBDIR="/usr/$(get_libdir)"
+	append-cppflags -DDRI_DRIVER_DIR="/usr/$(get_libdir)/dri"
+	use video_cards_amdgpu && append-cppflags -DDRV_AMDGPU && export DRV_AMDGPU=1
+	use video_cards_exynos && append-cppflags -DDRV_EXYNOS && export DRV_EXYNOS=1
+	use video_cards_intel && append-cppflags -DDRV_I915 && export DRV_I915=1
+	if use video_cards_intel ; then
+		if ! use kernel-3_18; then
+			append-cppflags -DI915_SCANOUT_Y_TILED
+		fi
+	fi
+	use video_cards_marvell && append-cppflags -DDRV_MARVELL && export DRV_MARVELL=1
+	use minigbm_platform_mt8183 && append-cppflags -DMTK_MT8183
+	use minigbm_platform_mt8192 && append-cppflags -DMTK_MT8192
+	use minigbm_platform_mt8195 && append-cppflags -DMTK_MT8195
+	use minigbm_platform_sc7280 && append-cppflags -DSC_7280
+	use video_cards_mediatek && append-cppflags -DDRV_MEDIATEK && export DRV_MEDIATEK=1
+	use video_cards_msm && append-cppflags -DDRV_MSM && export DRV_MSM=1
+	use video_cards_radeon && append-cppflags -DDRV_RADEON && export DRV_RADEON=1
+	use video_cards_radeonsi && append-cppflags -DDRV_RADEON && export DRV_RADEON=1
+	use video_cards_rockchip && append-cppflags -DDRV_ROCKCHIP && export DRV_ROCKCHIP=1
+	use video_cards_tegra && append-cppflags -DDRV_TEGRA && export DRV_TEGRA=1
+	use video_cards_vc4 && append-cppflags -DDRV_VC4 && export DRV_VC4=1
+	use video_cards_virgl && append-cppflags -DDRV_VIRGL && export DRV_VIRGL=1
+	use linear_align_256 && append-cppflags -DLINEAR_ALIGN_256
+	cros-common.mk_src_configure
+}
+
+src_compile() {
+	cros-common.mk_src_compile
+}
+
+src_install() {
+	insinto "${EPREFIX}/etc/udev/rules.d"
+	doins "${FILESDIR}/50-vgem.rules"
+
+	default
+}
diff --git a/media-libs/minigbm/minigbm-9999.ebuild b/media-libs/minigbm/minigbm-9999.ebuild
index 3db56fd..129d9df 100644
--- a/media-libs/minigbm/minigbm-9999.ebuild
+++ b/media-libs/minigbm/minigbm-9999.ebuild
@@ -24,7 +24,7 @@
 	IUSE+=" video_cards_${card}"
 done
 
-MINI_GBM_PLATFORMS_USE=( mt8183 mt8192 mt8195 )
+MINI_GBM_PLATFORMS_USE=( mt8183 mt8192 mt8195 sc7280)
 IUSE+=" ${MINI_GBM_PLATFORMS_USE[*]/#/minigbm_platform_}"
 
 RDEPEND="
@@ -59,6 +59,7 @@
 	use minigbm_platform_mt8183 && append-cppflags -DMTK_MT8183
 	use minigbm_platform_mt8192 && append-cppflags -DMTK_MT8192
 	use minigbm_platform_mt8195 && append-cppflags -DMTK_MT8195
+	use minigbm_platform_sc7280 && append-cppflags -DSC_7280
 	use video_cards_mediatek && append-cppflags -DDRV_MEDIATEK && export DRV_MEDIATEK=1
 	use video_cards_msm && append-cppflags -DDRV_MSM && export DRV_MSM=1
 	use video_cards_radeon && append-cppflags -DDRV_RADEON && export DRV_RADEON=1
diff --git a/media-libs/virglrenderer/files/0001-vkr-add-support-for-globalFencing.patch b/media-libs/virglrenderer/files/0001-vkr-add-support-for-globalFencing.patch
new file mode 100644
index 0000000..4ca522c
--- /dev/null
+++ b/media-libs/virglrenderer/files/0001-vkr-add-support-for-globalFencing.patch
@@ -0,0 +1,989 @@
+From 813979d63cfb77b6b63a612845fa68ffa25fe1bc Mon Sep 17 00:00:00 2001
+From: Chia-I Wu <olvaffe@gmail.com>
+Date: Wed, 13 Oct 2021 12:36:18 -0700
+Subject: [PATCH] vkr: add support for globalFencing
+
+Squashed commit of the following:
+
+commit 851e67ae91171a447f04ca3096642982573089fb
+Author: Chia-I Wu <olvaffe@gmail.com>
+Date:   Wed Oct 13 11:27:34 2021 -0700
+
+    vkr: fix subsetAllocation
+
+    Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
+    Reviewed-by: Ryan Neph <ryanneph@google.com>
+
+commit e994c11a4c7735ac49ab09cc28aaa2de6b72bcc3
+Author: Ryan Neph <ryanneph@google.com>
+Date:   Mon Oct 4 16:24:35 2021 -0700
+
+    vkr: only report instantiated vkr_physical_devices in device groups
+
+    Since venus lies about how many physical devices are available when
+    global fencing is supported, it must also lie about how physical devices
+    are organized into groups. If not, we get a segfault when trying to replace
+    host VkPhysicalDevice handles with vkr_physical_device object ids for
+    ignored devices and the guest app may try to interact with these
+    devices if they are exposed through the call to
+    vkEnumeratePhysicalDeviceGroups.
+
+    Signed-off-by: Ryan Neph <ryanneph@google.com>
+    Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
+
+commit 8f0d06f2ec3811e289e9beabf549c8a392ea883d
+Author: Chia-I Wu <olvaffe@gmail.com>
+Date:   Tue Jun 8 12:39:00 2021 -0700
+
+    vkr: advertise globalFencing
+
+    Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
+    Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
+
+commit b5698340b6c10873989eeab81659d5a6c0882d5b
+Author: Chia-I Wu <olvaffe@gmail.com>
+Date:   Tue Mar 16 16:22:18 2021 -0700
+
+    virgl: put virgl and venus on the same fence timeline
+
+    In other words, these functions
+
+      virgl_renderer_create_fence
+      virgl_renderer_poll
+      virgl_renderer_export_fence
+      (but not virgl_renderer_get_poll_fd)
+
+    now work with venus.
+
+    v2: clean up virgl_renderer_poll
+    v3: global fencing with VIRGL_RENDERER_ASYNC_FENCE_CB
+    v4: virgl_egl_export_signaled_fence returns a bool not int
+        (reported by Femi Adegunloye)
+    v5: fix another fence export bug
+
+    Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
+    Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
+
+commit 20f18e1a508d65a4569779420084ff050657e17a
+Author: Chia-I Wu <olvaffe@gmail.com>
+Date:   Tue Mar 16 16:50:02 2021 -0700
+
+    vkr: add support for queue_id 0
+
+    Becase we advertise only a single VkQueue per-context, we can treat
+    queue id 0 as the single VkQueue.  When the queue hasn't been created,
+    all fences are treated as cpu fences added to ctx->signaled_syncs.
+
+    Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
+    Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
+
+commit e993f38b930275671a3862a8f4d61f6250ea28dd
+Author: Chia-I Wu <olvaffe@gmail.com>
+Date:   Fri Jun 11 14:33:44 2021 -0700
+
+    vkr: implement virgl_context::export_fence
+
+    This assumes there is only a single VkQueue, which can be relaxed if we
+    choose to.
+
+    Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
+    Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
+
+commit 6d2479445654872484a17b813efed0cf7bb09080
+Author: Chia-I Wu <olvaffe@gmail.com>
+Date:   Fri Jun 11 14:41:52 2021 -0700
+
+    vkr: restrict to a single VkQueue per-context
+
+    This simplifies things when venus joins global fencing.
+
+    v2: allow multiple logical devices in some cases
+    v3: allow more than one logical devices
+
+    Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
+    Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
+
+commit a06e2e888b0ae9ddd5203a5d5235747ab64ce67e
+Author: Chia-I Wu <olvaffe@gmail.com>
+Date:   Tue Mar 16 16:21:35 2021 -0700
+
+    virgl: pass fence flags in fence retire callbacks
+
+    This allows us to set internal flags and check for them in the
+    retire callbacks.
+
+    Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
+    Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
+
+commit 342845fd63e86e56855a81f5a90755f84f919e74
+Author: Chia-I Wu <olvaffe@gmail.com>
+Date:   Fri Jun 4 12:24:02 2021 -0700
+
+    virgl: add virgl_context::export_fence
+
+    This is needed when we get per-context version of
+    virgl_renderer_export_fence.
+
+    Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
+    Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
+---
+ src/venus/vkr_context.c         | 112 ++++++++++++-
+ src/venus/vkr_context.h         |   2 +
+ src/venus/vkr_device.c          |  27 ++++
+ src/venus/vkr_physical_device.c |  34 +++-
+ src/venus/vkr_physical_device.h |   2 +
+ src/venus/vkr_queue.c           |  16 +-
+ src/venus/vkr_transport.c       |   2 +-
+ src/virgl_context.h             |   6 +
+ src/virglrenderer.c             | 272 +++++++++++++++++++++++++++++++-
+ src/vrend_decode.c              |   6 +-
+ src/vrend_renderer.c            |   4 +-
+ src/vrend_renderer.h            |   3 +-
+ 12 files changed, 460 insertions(+), 26 deletions(-)
+
+diff --git a/src/venus/vkr_context.c b/src/venus/vkr_context.c
+index e9433827..3812a992 100644
+--- a/src/venus/vkr_context.c
++++ b/src/venus/vkr_context.c
+@@ -127,7 +127,30 @@ vkr_context_submit_fence_locked(struct virgl_context *base,
+    struct vkr_queue *queue;
+    VkResult result;
+ 
+-   queue = vkr_context_get_object(ctx, queue_id);
++   if (queue_id) {
++      queue = vkr_context_get_object(ctx, queue_id);
++   } else if (ctx->queue_id_0_queue) {
++      queue = ctx->queue_id_0_queue;
++   } else if (vkr_renderer_flags & VKR_RENDERER_ASYNC_FENCE_CB) {
++      ctx->base.fence_retire(&ctx->base, flags, 0, fence_cookie);
++      return 0;
++   } else {
++      struct vkr_queue_sync *sync = malloc(sizeof(*sync));
++      if (!sync)
++         return -ENOMEM;
++
++      sync->fence = VK_NULL_HANDLE;
++      sync->flags = flags;
++      sync->queue_id = 0;
++      sync->fence_cookie = fence_cookie;
++      list_addtail(&sync->head, &ctx->signaled_syncs);
++
++      if (ctx->fence_eventfd >= 0)
++         write_eventfd(ctx->fence_eventfd, 1);
++
++      return 0;
++   }
++
+    if (!queue)
+       return -EINVAL;
+    struct vkr_device *dev = queue->device;
+@@ -173,6 +196,82 @@ vkr_context_submit_fence(struct virgl_context *base,
+    return ret;
+ }
+ 
++static struct vkr_queue_sync *
++find_sync(const struct list_head *syncs, void *fence_cookie)
++{
++   struct vkr_queue_sync *sync;
++   LIST_FOR_EACH_ENTRY (sync, syncs, head) {
++      if (sync->fence_cookie == fence_cookie)
++         return sync;
++   }
++   return NULL;
++}
++
++static int
++vkr_context_export_fence_locked(struct virgl_context *base,
++                                void *fence_cookie,
++                                int *out_fd)
++{
++   struct vkr_context *ctx = (struct vkr_context *)base;
++
++   struct vkr_queue_sync *sync = NULL;
++   bool sync_pending = false;
++   if (ctx->queue_id_0_queue) {
++      struct vkr_queue *queue = ctx->queue_id_0_queue;
++
++      if (vkr_renderer_flags & VKR_RENDERER_THREAD_SYNC) {
++         mtx_lock(&queue->mutex);
++         sync = find_sync(&queue->signaled_syncs, fence_cookie);
++      }
++
++      if (!sync) {
++         sync = find_sync(&queue->pending_syncs, fence_cookie);
++         if (sync)
++            sync_pending = true;
++      }
++
++      if (vkr_renderer_flags & VKR_RENDERER_THREAD_SYNC)
++         mtx_unlock(&queue->mutex);
++   }
++
++   if (!sync)
++      sync = find_sync(&ctx->signaled_syncs, fence_cookie);
++
++   if (!sync)
++      return -EINVAL;
++
++   if (!sync_pending) {
++      *out_fd = -1;
++      return 0;
++   }
++
++   struct vkr_device *dev = ctx->queue_id_0_queue->device;
++   if (!dev->physical_device->KHR_external_fence_fd)
++      return -1;
++
++   const VkFenceGetFdInfoKHR get_fd_info = {
++      .sType = VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR,
++      .fence = sync->fence,
++      .handleType = VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT,
++   };
++   VkResult result =
++      ctx->instance->get_fence_fd(dev->base.handle.device, &get_fd_info, out_fd);
++
++   return result == VK_SUCCESS ? 0 : -1;
++}
++
++static int
++vkr_context_export_fence(struct virgl_context *base, void *fence_cookie, int *out_fd)
++{
++   struct vkr_context *ctx = (struct vkr_context *)base;
++   int ret;
++
++   mtx_lock(&ctx->mutex);
++   ret = vkr_context_export_fence_locked(base, fence_cookie, out_fd);
++   mtx_unlock(&ctx->mutex);
++   return ret;
++}
++
+ static void
+ vkr_context_retire_fences_locked(struct virgl_context *base)
+ {
+@@ -182,10 +281,13 @@ vkr_context_retire_fences_locked(struct virgl_context *base)
+ 
+    assert(!(vkr_renderer_flags & VKR_RENDERER_ASYNC_FENCE_CB));
+ 
+-   /* retire syncs from destroyed devices */
++   /* ctx->signaled_syncs consists of:
++    * 1. sw syncs created before the existance of queue_id_0 queue
++    * 2. not yet retired syncs from destroyed devices
++    */
+    LIST_FOR_EACH_ENTRY_SAFE (sync, sync_tmp, &ctx->signaled_syncs, head) {
+       /* queue_id might have already get reused but is opaque to the clients */
+-      ctx->base.fence_retire(&ctx->base, sync->queue_id, sync->fence_cookie);
++      ctx->base.fence_retire(&ctx->base, sync->flags, sync->queue_id, sync->fence_cookie);
+       free(sync);
+    }
+    list_inithead(&ctx->signaled_syncs);
+@@ -204,7 +306,8 @@ vkr_context_retire_fences_locked(struct virgl_context *base)
+       vkr_queue_get_signaled_syncs(queue, &retired_syncs, &queue_empty);
+ 
+       LIST_FOR_EACH_ENTRY_SAFE (sync, sync_tmp, &retired_syncs, head) {
+-         ctx->base.fence_retire(&ctx->base, sync->queue_id, sync->fence_cookie);
++         ctx->base.fence_retire(&ctx->base, sync->flags, sync->queue_id,
++                                sync->fence_cookie);
+          vkr_device_free_queue_sync(dev, sync);
+       }
+ 
+@@ -583,6 +686,7 @@ vkr_context_init_base(struct vkr_context *ctx)
+    ctx->base.get_fencing_fd = vkr_context_get_fencing_fd;
+    ctx->base.retire_fences = vkr_context_retire_fences;
+    ctx->base.submit_fence = vkr_context_submit_fence;
++   ctx->base.export_fence = vkr_context_export_fence;
+ }
+ 
+ static uint32_t
+diff --git a/src/venus/vkr_context.h b/src/venus/vkr_context.h
+index 2524a0a7..e143108e 100644
+--- a/src/venus/vkr_context.h
++++ b/src/venus/vkr_context.h
+@@ -61,6 +61,8 @@ struct vkr_context {
+    struct list_head busy_queues;
+    struct list_head signaled_syncs;
+ 
++   struct vkr_queue *queue_id_0_queue;
++
+    struct vkr_instance *instance;
+    char *instance_name;
+ };
+diff --git a/src/venus/vkr_device.c b/src/venus/vkr_device.c
+index a15d431a..fd57d6a9 100644
+--- a/src/venus/vkr_device.c
++++ b/src/venus/vkr_device.c
+@@ -152,6 +152,27 @@ vkr_dispatch_vkCreateDevice(struct vn_dispatch_context *dispatch,
+    struct vkr_physical_device *physical_dev =
+       vkr_physical_device_from_handle(args->physicalDevice);
+ 
++   /* when external memory/fence/semaphore is enabled, the guest driver
++    * expects queue id 0 to be the queue of this device
++    */
++   bool use_queue_id_0 = false;
++   for (uint32_t i = 0; i < args->pCreateInfo->enabledExtensionCount; i++) {
++      if (!strcmp(args->pCreateInfo->ppEnabledExtensionNames[i],
++                  VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME) ||
++          !strcmp(args->pCreateInfo->ppEnabledExtensionNames[i],
++                  VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME) ||
++          !strcmp(args->pCreateInfo->ppEnabledExtensionNames[i],
++                  VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME)) {
++         use_queue_id_0 = true;
++         break;
++      }
++   }
++
++   if (use_queue_id_0 && physical_dev->queue_id_0_device) {
++      vkr_log("external fencing might not work since more than one logical device were "
++              "created with external memory/fence/semaphore enabled");
++   }
++
+    /* append extensions for our own use */
+    const char **exts = NULL;
+    uint32_t ext_count = args->pCreateInfo->enabledExtensionCount;
+@@ -218,6 +239,9 @@ vkr_dispatch_vkCreateDevice(struct vn_dispatch_context *dispatch,
+    list_add(&dev->base.track_head, &physical_dev->devices);
+ 
+    vkr_context_add_object(ctx, &dev->base);
++
++   if (use_queue_id_0 && !physical_dev->queue_id_0_device)
++      physical_dev->queue_id_0_device = dev;
+ }
+ 
+ static void
+@@ -354,6 +378,9 @@ vkr_device_destroy(struct vkr_context *ctx, struct vkr_device *dev)
+ 
+    list_del(&dev->base.track_head);
+ 
++   if (dev->physical_device->queue_id_0_device == dev)
++      dev->physical_device->queue_id_0_device = NULL;
++
+    vkr_context_remove_object(ctx, &dev->base);
+ }
+ 
+diff --git a/src/venus/vkr_physical_device.c b/src/venus/vkr_physical_device.c
+index 259f09e9..2c797313 100644
+--- a/src/venus/vkr_physical_device.c
++++ b/src/venus/vkr_physical_device.c
+@@ -37,6 +37,9 @@ vkr_instance_enumerate_physical_devices(struct vkr_instance *instance)
+    if (result != VK_SUCCESS)
+       return result;
+ 
++   /* enumerate at most 1 physical device */
++   count = 1;
++
+    VkPhysicalDevice *handles = calloc(count, sizeof(*handles));
+    struct vkr_physical_device **physical_devs = calloc(count, sizeof(*physical_devs));
+    if (!handles || !physical_devs) {
+@@ -46,6 +49,8 @@ vkr_instance_enumerate_physical_devices(struct vkr_instance *instance)
+    }
+ 
+    result = vkEnumeratePhysicalDevices(instance->base.handle.instance, &count, handles);
++   if (result == VK_INCOMPLETE)
++      result = VK_SUCCESS;
+    if (result != VK_SUCCESS) {
+       free(physical_devs);
+       free(handles);
+@@ -272,20 +277,27 @@ vkr_dispatch_vkEnumeratePhysicalDeviceGroups(
+       return;
+ 
+    /* XXX this assumes vkEnumeratePhysicalDevices is called first */
+-   /* replace VkPhysicalDevice handles by object ids */
++   /* replace VkPhysicalDevice handles by object ids and discard
++    * physical devices without a corresponding vkr_physical_device */
+    for (uint32_t i = 0; i < *args->pPhysicalDeviceGroupCount; i++) {
+       const VkPhysicalDeviceGroupProperties *props =
+          &args->pPhysicalDeviceGroupProperties[i];
+       VkPhysicalDeviceGroupProperties *out = &orig_props[i];
+ 
+-      out->physicalDeviceCount = props->physicalDeviceCount;
+-      out->subsetAllocation = props->subsetAllocation;
++      out->physicalDeviceCount = 0;
+       for (uint32_t j = 0; j < props->physicalDeviceCount; j++) {
+          const struct vkr_physical_device *physical_dev =
+             vkr_instance_lookup_physical_device(instance, props->physicalDevices[j]);
+-         vkr_cs_handle_store_id((void **)&out->physicalDevices[j], physical_dev->base.id,
+-                                VK_OBJECT_TYPE_PHYSICAL_DEVICE);
++
++         if (!physical_dev)
++            continue;
++
++         vkr_cs_handle_store_id(
++            (void **)&out->physicalDevices[out->physicalDeviceCount++],
++            physical_dev->base.id, VK_OBJECT_TYPE_PHYSICAL_DEVICE);
+       }
++      out->subsetAllocation =
++         out->physicalDeviceCount > 1 ? props->subsetAllocation : VK_FALSE;
+    }
+ 
+    free(args->pPhysicalDeviceGroupProperties);
+@@ -354,6 +366,12 @@ vkr_dispatch_vkGetPhysicalDeviceQueueFamilyProperties(
+    vkGetPhysicalDeviceQueueFamilyProperties(args->physicalDevice,
+                                             args->pQueueFamilyPropertyCount,
+                                             args->pQueueFamilyProperties);
++
++   if (*args->pQueueFamilyPropertyCount) {
++      *args->pQueueFamilyPropertyCount = 1;
++      if (args->pQueueFamilyProperties)
++         args->pQueueFamilyProperties->queueCount = 1;
++   }
+ }
+ 
+ static void
+@@ -476,6 +494,12 @@ vkr_dispatch_vkGetPhysicalDeviceQueueFamilyProperties2(
+    vkGetPhysicalDeviceQueueFamilyProperties2(args->physicalDevice,
+                                              args->pQueueFamilyPropertyCount,
+                                              args->pQueueFamilyProperties);
++
++   if (*args->pQueueFamilyPropertyCount) {
++      *args->pQueueFamilyPropertyCount = 1;
++      if (args->pQueueFamilyProperties)
++         args->pQueueFamilyProperties->queueFamilyProperties.queueCount = 1;
++   }
+ }
+ 
+ static void
+diff --git a/src/venus/vkr_physical_device.h b/src/venus/vkr_physical_device.h
+index 0e84b5fe..26f71d91 100644
+--- a/src/venus/vkr_physical_device.h
++++ b/src/venus/vkr_physical_device.h
+@@ -25,6 +25,8 @@ struct vkr_physical_device {
+    VkPhysicalDeviceMemoryProperties memory_properties;
+ 
+    struct list_head devices;
++
++   struct vkr_device *queue_id_0_device;
+ };
+ VKR_DEFINE_OBJECT_CAST(physical_device, VK_OBJECT_TYPE_PHYSICAL_DEVICE, VkPhysicalDevice)
+ 
+diff --git a/src/venus/vkr_queue.c b/src/venus/vkr_queue.c
+index abb8f6ea..4b2b2f23 100644
+--- a/src/venus/vkr_queue.c
++++ b/src/venus/vkr_queue.c
+@@ -124,7 +124,7 @@ vkr_queue_sync_retire(struct vkr_context *ctx,
+                       struct vkr_queue_sync *sync)
+ {
+    if (vkr_renderer_flags & VKR_RENDERER_ASYNC_FENCE_CB) {
+-      ctx->base.fence_retire(&ctx->base, sync->queue_id, sync->fence_cookie);
++      ctx->base.fence_retire(&ctx->base, sync->flags, sync->queue_id, sync->fence_cookie);
+       vkr_device_free_queue_sync(dev, sync);
+    } else {
+       vkDestroyFence(dev->base.handle.device, sync->fence, NULL);
+@@ -170,6 +170,9 @@ vkr_queue_destroy(struct vkr_context *ctx, struct vkr_queue *queue)
+    list_del(&queue->busy_head);
+    list_del(&queue->base.track_head);
+ 
++   if (ctx->queue_id_0_queue == queue)
++      ctx->queue_id_0_queue = NULL;
++
+    if (queue->base.id)
+       vkr_context_remove_object(ctx, &queue->base);
+    else
+@@ -212,7 +215,8 @@ vkr_queue_thread(void *arg)
+       list_del(&sync->head);
+ 
+       if (vkr_renderer_flags & VKR_RENDERER_ASYNC_FENCE_CB) {
+-         ctx->base.fence_retire(&ctx->base, sync->queue_id, sync->fence_cookie);
++         ctx->base.fence_retire(&ctx->base, sync->flags, sync->queue_id,
++                                sync->fence_cookie);
+          vkr_device_free_queue_sync(queue->device, sync);
+       } else {
+          list_addtail(&sync->head, &queue->signaled_syncs);
+@@ -282,6 +286,7 @@ vkr_queue_create(struct vkr_context *ctx,
+ 
+ static void
+ vkr_queue_assign_object_id(struct vkr_context *ctx,
++                           struct vkr_device *dev,
+                            struct vkr_queue *queue,
+                            vkr_object_id id)
+ {
+@@ -295,6 +300,9 @@ vkr_queue_assign_object_id(struct vkr_context *ctx,
+ 
+    queue->base.id = id;
+ 
++   if (dev->physical_device->queue_id_0_device == dev)
++      ctx->queue_id_0_queue = queue;
++
+    vkr_context_add_object(ctx, &queue->base);
+ }
+ 
+@@ -331,7 +339,7 @@ vkr_dispatch_vkGetDeviceQueue(struct vn_dispatch_context *dispatch,
+ 
+    const vkr_object_id id =
+       vkr_cs_handle_load_id((const void **)args->pQueue, VK_OBJECT_TYPE_QUEUE);
+-   vkr_queue_assign_object_id(ctx, queue, id);
++   vkr_queue_assign_object_id(ctx, dev, queue, id);
+ }
+ 
+ static void
+@@ -352,7 +360,7 @@ vkr_dispatch_vkGetDeviceQueue2(struct vn_dispatch_context *dispatch,
+ 
+    const vkr_object_id id =
+       vkr_cs_handle_load_id((const void **)args->pQueue, VK_OBJECT_TYPE_QUEUE);
+-   vkr_queue_assign_object_id(ctx, queue, id);
++   vkr_queue_assign_object_id(ctx, dev, queue, id);
+ }
+ 
+ static void
+diff --git a/src/venus/vkr_transport.c b/src/venus/vkr_transport.c
+index 5bf957a7..3176c46f 100644
+--- a/src/venus/vkr_transport.c
++++ b/src/venus/vkr_transport.c
+@@ -310,7 +310,7 @@ vkr_dispatch_vkGetVenusExperimentalFeatureData100000MESA(
+ {
+    const VkVenusExperimentalFeatures100000MESA features = {
+       .memoryResourceAllocationSize = VK_TRUE,
+-      .globalFencing = VK_FALSE,
++      .globalFencing = VK_TRUE,
+       .largeRing = VK_TRUE,
+    };
+ 
+diff --git a/src/virgl_context.h b/src/virgl_context.h
+index ea86b31e..871a1486 100644
+--- a/src/virgl_context.h
++++ b/src/virgl_context.h
+@@ -51,6 +51,7 @@ struct virgl_context_blob {
+ struct virgl_context;
+ 
+ typedef void (*virgl_context_fence_retire)(struct virgl_context *ctx,
++                                           uint32_t flags,
+                                            uint64_t queue_id,
+                                            void *fence_cookie);
+ 
+@@ -120,6 +121,11 @@ struct virgl_context {
+                        uint32_t flags,
+                        uint64_t queue_id,
+                        void *fence_cookie);
++
++   /* export the fence identified by fence_cookie as a sync fd */
++   int (*export_fence)(struct virgl_context *ctx,
++                       void *fence_cookie,
++                       int *out_fd);
+ };
+ 
+ struct virgl_context_foreach_args {
+diff --git a/src/virglrenderer.c b/src/virglrenderer.c
+index 44982d71..2e88375c 100644
+--- a/src/virglrenderer.c
++++ b/src/virglrenderer.c
+@@ -34,6 +34,7 @@
+ #include <sys/mman.h>
+ 
+ #include "pipe/p_state.h"
++#include "util/u_double_list.h"
+ #include "util/u_format.h"
+ #include "util/u_math.h"
+ #include "vkr_renderer.h"
+@@ -47,6 +48,20 @@
+ #include "virgl_resource.h"
+ #include "virgl_util.h"
+ 
++#include "c11/threads.h"
++
++#define VIRGL_RENDERER_FENCE_FLAG_TIMELINE (1u << 31)
++
++struct timeline_point {
++   uint32_t fence_id;
++
++   bool signaled;
++   /* can be NULL if has signaled or is using ctx0 fencing */
++   struct virgl_context *context;
++
++   struct list_head head;
++};
++
+ struct global_state {
+    bool client_initialized;
+    void *cookie;
+@@ -58,6 +73,16 @@ struct global_state {
+    bool winsys_initialized;
+    bool vrend_initialized;
+    bool vkr_initialized;
++
++   bool timeline_async_cb;
++   mtx_t timeline_mutex;
++   /* when timeline_async_cb is true, these can be accessed by the main thread
++    * and the sync threads simultaneously and are protected by timeline_mutex
++    */
++   struct list_head timeline;
++   uint32_t timeline_retired_fence_id;
++   uint32_t ctx0_retired_fence_id;
++   struct list_head free_points;
+ };
+ 
+ static struct global_state state;
+@@ -176,10 +201,114 @@ void virgl_renderer_fill_caps(uint32_t set, uint32_t version,
+    }
+ }
+ 
++static void timeline_lock(void)
++{
++   /* no check for state.timeline_async_cb because this should be cheap
++    * (cheaper than the if-check?) in the non-contended case
++    */
++   mtx_lock(&state.timeline_mutex);
++}
++
++static void timeline_unlock(void)
++{
++   mtx_unlock(&state.timeline_mutex);
++}
++
++static struct timeline_point *timeline_point_alloc(uint32_t fence_id,
++                                                   struct virgl_context *ctx)
++{
++   struct timeline_point *point;
++
++   timeline_lock();
++   if (LIST_IS_EMPTY(&state.free_points)) {
++      timeline_unlock();
++
++      point = malloc(sizeof(*point));
++      if (!point)
++         return NULL;
++   } else {
++      point = LIST_ENTRY(struct timeline_point, state.free_points.next, head);
++      list_del(&point->head);
++
++      timeline_unlock();
++   }
++
++   point->fence_id = fence_id;
++   point->signaled = false;
++   point->context = ctx;
++
++   return point;
++}
++
++static void timeline_point_add_locked(struct timeline_point *point)
++{
++   list_addtail(&point->head, &state.timeline);
++}
++
++static void timeline_point_free_locked(struct timeline_point *point)
++{
++   list_add(&point->head, &state.free_points);
++}
++
++static bool timeline_point_match_context_locked(const struct timeline_point *point,
++                                                uint32_t ctx_id)
++{
++   return point->context && point->context->ctx_id == ctx_id;
++}
++
++static void timeline_point_set_signaled_locked(struct timeline_point *point)
++{
++   point->signaled = true;
++   point->context = NULL;
++}
++
++static bool timeline_point_is_signaled_locked(const struct timeline_point *point)
++{
++   return point->signaled ||
++          (!point->context && point->fence_id <= state.ctx0_retired_fence_id);
++}
++
++static uint32_t timeline_poll_retired_fences_locked(void)
++{
++   uint32_t write_fence_id = 0;
++   struct timeline_point *point, *tmp;
++   LIST_FOR_EACH_ENTRY_SAFE(point, tmp, &state.timeline, head) {
++      if (!timeline_point_is_signaled_locked(point))
++         break;
++
++      write_fence_id = point->fence_id;
++      list_del(&point->head);
++      timeline_point_free_locked(point);
++   }
++
++   if (write_fence_id)
++      state.timeline_retired_fence_id = write_fence_id;
++
++   return write_fence_id;
++}
++
+ static void per_context_fence_retire(struct virgl_context *ctx,
++                                     uint32_t flags,
+                                      uint64_t queue_id,
+                                      void *fence_cookie)
+ {
++   if (flags & VIRGL_RENDERER_FENCE_FLAG_TIMELINE) {
++      if (state.timeline_async_cb) {
++         uint32_t write_fence_id = 0;
++         timeline_lock();
++         timeline_point_set_signaled_locked(fence_cookie);
++         write_fence_id = timeline_poll_retired_fences_locked();
++         timeline_unlock();
++
++         if (write_fence_id)
++            state.cbs->write_fence(state.cookie, write_fence_id);
++      } else {
++         timeline_point_set_signaled_locked(fence_cookie);
++      }
++
++      return;
++   }
++
+    state.cbs->write_context_fence(state.cookie,
+                                   ctx->ctx_id,
+                                   queue_id,
+@@ -254,6 +383,16 @@ int virgl_renderer_context_create(uint32_t handle, uint32_t nlen, const char *na
+ void virgl_renderer_context_destroy(uint32_t handle)
+ {
+    TRACE_FUNC();
++
++   struct timeline_point *point;
++
++   timeline_lock();
++   LIST_FOR_EACH_ENTRY(point, &state.timeline, head) {
++      if (timeline_point_match_context_locked(point, handle))
++         timeline_point_set_signaled_locked(point);
++   }
++   timeline_unlock();
++
+    virgl_context_remove(handle);
+ }
+ 
+@@ -380,13 +519,46 @@ void virgl_renderer_resource_detach_iov(int res_handle, struct iovec **iov_p, in
+    virgl_resource_detach_iov(res);
+ }
+ 
+-int virgl_renderer_create_fence(int client_fence_id, UNUSED uint32_t ctx_id)
++int virgl_renderer_create_fence(int client_fence_id, uint32_t ctx_id)
+ {
+    TRACE_FUNC();
+    const uint32_t fence_id = (uint32_t)client_fence_id;
+-   if (state.vrend_initialized)
+-      return vrend_renderer_create_ctx0_fence(fence_id);
+-   return EINVAL;
++
++   struct virgl_context *ctx;
++   struct timeline_point *point;
++   int ret;
++
++   /* this only works with crosvm because qemu passes garbage for ctx_id */
++   if (ctx_id) {
++      ctx = virgl_context_lookup(ctx_id);
++      if (!ctx)
++         return -EINVAL;
++      /* use per-context fencing only for venus */
++      if (ctx->capset_id != VIRGL_RENDERER_CAPSET_VENUS)
++         ctx = NULL;
++   } else {
++      ctx = NULL;
++   }
++
++   point = timeline_point_alloc(fence_id, ctx);
++   if (!point)
++      return -ENOMEM;
++
++   if (ctx) {
++      ret = ctx->submit_fence(ctx, VIRGL_RENDERER_FENCE_FLAG_TIMELINE, 0, point);
++   } else {
++      ret = state.vrend_initialized ?
++         vrend_renderer_create_ctx0_fence(fence_id) : EINVAL;
++   }
++
++   timeline_lock();
++   if (ret)
++      timeline_point_free_locked(point);
++   else
++      timeline_point_add_locked(point);
++   timeline_unlock();
++
++   return ret;
+ }
+ 
+ int virgl_renderer_context_create_fence(uint32_t ctx_id,
+@@ -506,11 +678,25 @@ void virgl_renderer_get_rect(int resource_id, struct iovec *iov, unsigned int nu
+ }
+ 
+ 
+-static void ctx0_fence_retire(void *fence_cookie,
++static void ctx0_fence_retire(UNUSED uint32_t flags,
++                              void *fence_cookie,
+                               UNUSED void *retire_data)
+ {
+    const uint32_t fence_id = (uint32_t)(uintptr_t)fence_cookie;
+-   state.cbs->write_fence(state.cookie, fence_id);
++
++   if (state.timeline_async_cb) {
++      uint32_t write_fence_id = 0;
++      timeline_lock();
++      state.ctx0_retired_fence_id = fence_id;
++      write_fence_id = timeline_poll_retired_fences_locked();
++      timeline_unlock();
++
++      if (write_fence_id)
++         state.cbs->write_fence(state.cookie, write_fence_id);
++   } else {
++      /* defer marking timeline_point signaled */
++      state.ctx0_retired_fence_id = fence_id;
++   }
+ }
+ 
+ static virgl_renderer_gl_context create_gl_context(int scanout_idx, struct virgl_gl_ctx_param *param)
+@@ -564,11 +750,33 @@ void *virgl_renderer_get_cursor_data(uint32_t resource_id, uint32_t *width, uint
+                                              height);
+ }
+ 
++static bool timeline_poll(struct virgl_context *ctx, UNUSED void *data)
++{
++   /* we use per-context fencing only for venus */
++   if (ctx->capset_id == VIRGL_RENDERER_CAPSET_VENUS)
++      ctx->retire_fences(ctx);
++   return true;
++}
++
+ void virgl_renderer_poll(void)
+ {
+    TRACE_FUNC();
++
++   if (state.timeline_async_cb)
++      return;
++
+    if (state.vrend_initialized)
+       vrend_renderer_check_fences();
++
++   struct virgl_context_foreach_args args;
++   args.callback = timeline_poll;
++   args.data = NULL;
++   virgl_context_foreach(&args);
++
++   /* no locking needed because state.timeline_async_cb is false */
++   const uint32_t write_fence_id = timeline_poll_retired_fences_locked();
++   if (write_fence_id)
++      state.cbs->write_fence(state.cookie, write_fence_id);
+ }
+ 
+ void virgl_renderer_cleanup(UNUSED void *cookie)
+@@ -692,6 +900,13 @@ int virgl_renderer_init(void *cookie, int flags, struct virgl_renderer_callbacks
+       state.vkr_initialized = true;
+    }
+ 
++#ifdef VIRGL_RENDERER_ASYNC_FENCE_CB
++   state.timeline_async_cb = flags & VIRGL_RENDERER_ASYNC_FENCE_CB;
++#endif
++   mtx_init(&state.timeline_mutex, mtx_plain);
++   list_inithead(&state.timeline);
++   list_inithead(&state.free_points);
++
+    return 0;
+ 
+ fail:
+@@ -998,9 +1213,52 @@ virgl_renderer_resource_export_blob(uint32_t res_id, uint32_t *fd_type, int *fd)
+    return 0;
+ }
+ 
++static int
++export_signaled_fence(int *fd)
++{
++#ifdef HAVE_EPOXY_EGL_H
++   if (virgl_egl_supports_fences(egl))
++      return virgl_egl_export_signaled_fence(egl, fd) ? 0 : -EINVAL;
++#endif
++   return -1;
++}
++
+ int
+ virgl_renderer_export_fence(uint32_t client_fence_id, int *fd)
+ {
+    TRACE_FUNC();
+-   return vrend_renderer_export_ctx0_fence(client_fence_id, fd);
++
++   int ret;
++
++   timeline_lock();
++   if (state.timeline_retired_fence_id >= client_fence_id ||
++       LIST_IS_EMPTY(&state.timeline)) {
++      ret = 0;
++      *fd = -1;
++   } else {
++      struct timeline_point *point;
++
++      ret = -EINVAL;
++      LIST_FOR_EACH_ENTRY(point, &state.timeline, head) {
++         if (point->fence_id != client_fence_id)
++            continue;
++
++         if (timeline_point_is_signaled_locked(point)) {
++            ret = 0;
++            *fd = -1;
++         } else if (point->context) {
++            ret = point->context->export_fence(point->context, point, fd);
++         } else {
++            ret = vrend_renderer_export_ctx0_fence(client_fence_id, fd);
++         }
++         break;
++      }
++   }
++   timeline_unlock();
++
++   /* required by crosvm */
++   if (!ret && *fd == -1)
++      ret = export_signaled_fence(fd);
++
++   return ret;
+ }
+diff --git a/src/vrend_decode.c b/src/vrend_decode.c
+index 934c8b06..df823f53 100644
+--- a/src/vrend_decode.c
++++ b/src/vrend_decode.c
+@@ -1472,11 +1472,12 @@ static int vrend_decode_pipe_resource_set_type(struct vrend_context *ctx, const
+ static void vrend_decode_ctx_init_base(struct vrend_decode_ctx *dctx,
+                                        uint32_t ctx_id);
+ 
+-static void vrend_decode_ctx_fence_retire(void *fence_cookie,
++static void vrend_decode_ctx_fence_retire(uint32_t flags,
++                                          void *fence_cookie,
+                                           void *retire_data)
+ {
+    struct vrend_decode_ctx *dctx = retire_data;
+-   dctx->base.fence_retire(&dctx->base, 0, fence_cookie);
++   dctx->base.fence_retire(&dctx->base, flags, 0, fence_cookie);
+ }
+ 
+ struct virgl_context *vrend_renderer_context_create(uint32_t handle,
+@@ -1752,4 +1753,5 @@ static void vrend_decode_ctx_init_base(struct vrend_decode_ctx *dctx,
+    ctx->get_fencing_fd = vrend_decode_ctx_get_fencing_fd;
+    ctx->retire_fences = vrend_decode_ctx_retire_fences;
+    ctx->submit_fence = vrend_decode_ctx_submit_fence;
++   ctx->export_fence = NULL;
+ }
+diff --git a/src/vrend_renderer.c b/src/vrend_renderer.c
+index 303d3538..6cca134d 100644
+--- a/src/vrend_renderer.c
++++ b/src/vrend_renderer.c
+@@ -6167,7 +6167,7 @@ static void wait_sync(struct vrend_fence *fence)
+    mtx_unlock(&vrend_state.fence_mutex);
+ 
+    if (vrend_state.use_async_fence_cb) {
+-      ctx->fence_retire(fence->fence_cookie, ctx->fence_retire_data);
++      ctx->fence_retire(fence->flags, fence->fence_cookie, ctx->fence_retire_data);
+       free_fence_locked(fence);
+       return;
+    }
+@@ -9616,7 +9616,7 @@ void vrend_renderer_check_fences(void)
+ 
+    LIST_FOR_EACH_ENTRY_SAFE(fence, stor, &retired_fences, fences) {
+       struct vrend_context *ctx = fence->ctx;
+-      ctx->fence_retire(fence->fence_cookie, ctx->fence_retire_data);
++      ctx->fence_retire(fence->flags, fence->fence_cookie, ctx->fence_retire_data);
+ 
+       free_fence_locked(fence);
+    }
+diff --git a/src/vrend_renderer.h b/src/vrend_renderer.h
+index ac4031bc..be2f2255 100644
+--- a/src/vrend_renderer.h
++++ b/src/vrend_renderer.h
+@@ -111,7 +111,8 @@ struct vrend_format_table {
+    uint32_t flags;
+ };
+ 
+-typedef void (*vrend_context_fence_retire)(void *fence_cookie,
++typedef void (*vrend_context_fence_retire)(uint32_t flags,
++                                           void *fence_cookie,
+                                            void *retire_data);
+ 
+ struct vrend_if_cbs {
+-- 
+2.33.0.882.g93a45727a2-goog
+
diff --git a/media-libs/virglrenderer/files/fuzzer-OWNERS b/media-libs/virglrenderer/files/fuzzer-OWNERS
index 905c647..4db72df 100644
--- a/media-libs/virglrenderer/files/fuzzer-OWNERS
+++ b/media-libs/virglrenderer/files/fuzzer-OWNERS
@@ -1,4 +1,7 @@
 davidriley@google.com
-zachr@google.com
 marcheu@google.com
 ddmail@google.com
+olv@google.com
+ryanneph@google.com
+abodenha@google.com
+zzyiwei@chromium.org
diff --git a/media-libs/virglrenderer/files/virgl_venus_fuzzer.options b/media-libs/virglrenderer/files/virgl_venus_fuzzer.options
new file mode 100644
index 0000000..15b34e6
--- /dev/null
+++ b/media-libs/virglrenderer/files/virgl_venus_fuzzer.options
@@ -0,0 +1,3 @@
+[libfuzzer]
+fork=1
+ignore_timeouts=0
diff --git a/media-libs/virglrenderer/virglrenderer-0.8.2-r54.ebuild b/media-libs/virglrenderer/virglrenderer-0.8.2-r54.ebuild
deleted file mode 100644
index 0044ecf..0000000
--- a/media-libs/virglrenderer/virglrenderer-0.8.2-r54.ebuild
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-CROS_WORKON_COMMIT="7b5dd3eb47b82db16d8ab51a03b6cda8625fa8e9"
-CROS_WORKON_TREE="f4b861dfec2f86b6b3c33034d7af41e0a08a86e6"
-CROS_WORKON_PROJECT="chromiumos/third_party/virglrenderer"
-CROS_WORKON_EGIT_BRANCH="master"
-
-# Prevent automatic uprevs of this package since upstream is out of our control.
-CROS_WORKON_MANUAL_UPREV="1"
-
-inherit cros-fuzzer cros-sanitizers eutils flag-o-matic meson cros-workon
-
-DESCRIPTION="library used implement a virtual 3D GPU used by qemu"
-HOMEPAGE="https://virgil3d.github.io/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="*"
-IUSE="debug fuzzer profiling test vulkan"
-
-RDEPEND="
-	>=x11-libs/libdrm-2.4.50
-	media-libs/libepoxy
-	media-libs/minigbm
-	fuzzer? (
-		virtual/opengles
-	)
-	vulkan? ( media-libs/vulkan-loader )
-"
-# We need autoconf-archive for @CODE_COVERAGE_RULES@. #568624
-DEPEND="${RDEPEND}
-	chromeos-base/percetto
-	sys-devel/autoconf-archive
-	fuzzer? ( >=dev-libs/check-0.9.4 )
-	test? ( >=dev-libs/check-0.9.4 )
-	vulkan? ( dev-util/vulkan-headers )
-"
-
-src_prepare() {
-	default
-}
-
-src_configure() {
-	sanitizers-setup-env
-
-	if use profiling; then
-		append-flags -fprofile-instr-generate -fcoverage-mapping
-		append-ldflags -fprofile-instr-generate -fcoverage-mapping
-	fi
-
-	emesonargs+=(
-		-Dtracing=percetto
-		-Dminigbm_allocation="true"
-		-Dplatforms="egl"
-		$(meson_use fuzzer)
-		$(meson_use vulkan venus-experimental)
-		--buildtype $(usex debug debug release)
-	)
-
-	# virgl_fuzzer is only built with tests.
-	if use test || use fuzzer; then
-		emesonargs+=( -Dtests="true" )
-	fi
-
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	fuzzer_install "${FILESDIR}/fuzzer-OWNERS" \
-		"${WORKDIR}/${P}-build"/tests/fuzzer/virgl_fuzzer \
-		--options "${FILESDIR}/virgl_fuzzer.options"
-	fuzzer_install "${FILESDIR}/fuzzer-OWNERS" \
-		"${WORKDIR}/${P}-build"/vtest/vtest_fuzzer \
-		--options "${FILESDIR}/vtest_fuzzer.options"
-
-	find "${ED}"/usr -name 'lib*.la' -delete
-}
diff --git a/media-libs/virglrenderer/virglrenderer-0.8.2-r91.ebuild b/media-libs/virglrenderer/virglrenderer-0.8.2-r91.ebuild
new file mode 100644
index 0000000..9ff649e
--- /dev/null
+++ b/media-libs/virglrenderer/virglrenderer-0.8.2-r91.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+CROS_WORKON_COMMIT="bd4dd6a62280de83eb7cfcfde356c7b5fad5dc2c"
+CROS_WORKON_TREE="8bc8d0987b534deed36a80e9d8a91d94e4dd7dc0"
+CROS_WORKON_PROJECT="chromiumos/third_party/virglrenderer"
+CROS_WORKON_EGIT_BRANCH="master"
+
+# Prevent automatic uprevs of this package since upstream is out of our control.
+CROS_WORKON_MANUAL_UPREV="1"
+
+inherit cros-fuzzer cros-sanitizers eutils flag-o-matic meson cros-workon
+
+DESCRIPTION="library used implement a virtual 3D GPU used by qemu"
+HOMEPAGE="https://virgil3d.github.io/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="*"
+IUSE="debug fuzzer profiling test vulkan"
+
+RDEPEND="
+	>=x11-libs/libdrm-2.4.50
+	media-libs/libepoxy
+	media-libs/minigbm
+	fuzzer? (
+		virtual/opengles
+		vulkan? ( virtual/vulkan-icd )
+	)
+	vulkan? (
+		media-libs/vulkan-loader
+		media-libs/vulkan-layers
+	)
+"
+# We need autoconf-archive for @CODE_COVERAGE_RULES@. #568624
+DEPEND="${RDEPEND}
+	chromeos-base/percetto
+	sys-devel/autoconf-archive
+	fuzzer? ( >=dev-libs/check-0.9.4 )
+	test? ( >=dev-libs/check-0.9.4 )
+	vulkan? ( dev-util/vulkan-headers )
+"
+
+PATCHES=(
+	"${FILESDIR}"/0001-vkr-add-support-for-globalFencing.patch
+)
+
+src_prepare() {
+	default
+}
+
+src_configure() {
+	sanitizers-setup-env
+
+	if use profiling; then
+		append-flags -fprofile-instr-generate -fcoverage-mapping
+		append-ldflags -fprofile-instr-generate -fcoverage-mapping
+	fi
+
+	emesonargs+=(
+		-Dtracing=percetto
+		-Dminigbm_allocation="true"
+		-Dplatforms="egl"
+		$(meson_use fuzzer)
+		$(meson_use vulkan venus-experimental)
+		$(meson_use vulkan venus-validate)
+		--buildtype $(usex debug debug release)
+	)
+
+	# virgl_fuzzer is only built with tests.
+	if use test || use fuzzer; then
+		emesonargs+=( -Dtests="true" )
+	fi
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	local fuzzer_component_id="964076"
+	fuzzer_install "${FILESDIR}/fuzzer-OWNERS" \
+		"${WORKDIR}/${P}-build"/tests/fuzzer/virgl_fuzzer \
+		--options "${FILESDIR}/virgl_fuzzer.options" \
+		--comp "${fuzzer_component_id}"
+	fuzzer_install "${FILESDIR}/fuzzer-OWNERS" \
+		"${WORKDIR}/${P}-build"/vtest/vtest_fuzzer \
+		--options "${FILESDIR}/vtest_fuzzer.options" \
+		--comp "${fuzzer_component_id}"
+
+	if use vulkan; then
+		fuzzer_install "${FILESDIR}/fuzzer-OWNERS" \
+			"${WORKDIR}/${P}-build"/tests/fuzzer/virgl_venus_fuzzer \
+			--options "${FILESDIR}/virgl_venus_fuzzer.options" \
+			--comp "${fuzzer_component_id}"
+	fi
+
+	find "${ED}"/usr -name 'lib*.la' -delete
+}
diff --git a/media-libs/virglrenderer/virglrenderer-9999.ebuild b/media-libs/virglrenderer/virglrenderer-9999.ebuild
index 15143bc..7e828c3 100644
--- a/media-libs/virglrenderer/virglrenderer-9999.ebuild
+++ b/media-libs/virglrenderer/virglrenderer-9999.ebuild
@@ -25,8 +25,12 @@
 	media-libs/minigbm
 	fuzzer? (
 		virtual/opengles
+		vulkan? ( virtual/vulkan-icd )
 	)
-	vulkan? ( media-libs/vulkan-loader )
+	vulkan? (
+		media-libs/vulkan-loader
+		media-libs/vulkan-layers
+	)
 "
 # We need autoconf-archive for @CODE_COVERAGE_RULES@. #568624
 DEPEND="${RDEPEND}
@@ -37,6 +41,10 @@
 	vulkan? ( dev-util/vulkan-headers )
 "
 
+PATCHES=(
+	"${FILESDIR}"/0001-vkr-add-support-for-globalFencing.patch
+)
+
 src_prepare() {
 	default
 }
@@ -55,6 +63,7 @@
 		-Dplatforms="egl"
 		$(meson_use fuzzer)
 		$(meson_use vulkan venus-experimental)
+		$(meson_use vulkan venus-validate)
 		--buildtype $(usex debug debug release)
 	)
 
@@ -69,12 +78,22 @@
 src_install() {
 	meson_src_install
 
+	local fuzzer_component_id="964076"
 	fuzzer_install "${FILESDIR}/fuzzer-OWNERS" \
 		"${WORKDIR}/${P}-build"/tests/fuzzer/virgl_fuzzer \
-		--options "${FILESDIR}/virgl_fuzzer.options"
+		--options "${FILESDIR}/virgl_fuzzer.options" \
+		--comp "${fuzzer_component_id}"
 	fuzzer_install "${FILESDIR}/fuzzer-OWNERS" \
 		"${WORKDIR}/${P}-build"/vtest/vtest_fuzzer \
-		--options "${FILESDIR}/vtest_fuzzer.options"
+		--options "${FILESDIR}/vtest_fuzzer.options" \
+		--comp "${fuzzer_component_id}"
+
+	if use vulkan; then
+		fuzzer_install "${FILESDIR}/fuzzer-OWNERS" \
+			"${WORKDIR}/${P}-build"/tests/fuzzer/virgl_venus_fuzzer \
+			--options "${FILESDIR}/virgl_venus_fuzzer.options" \
+			--comp "${fuzzer_component_id}"
+	fi
 
 	find "${ED}"/usr -name 'lib*.la' -delete
 }
diff --git a/media-libs/vulkan-layers/Manifest b/media-libs/vulkan-layers/Manifest
index c8f48af..aed8083 100644
--- a/media-libs/vulkan-layers/Manifest
+++ b/media-libs/vulkan-layers/Manifest
@@ -1 +1 @@
-DIST vulkan-layers-1.2.162.tar.gz 2398927 BLAKE2B febfcc88584cb7d69ac2f2bd95a73921d2dc92524b05f17e7d2a9f99336416260da60eefc560d93ad788d9a185d4dd865881f5bc8faf0dae388bacca59a21b7a SHA512 85eba0e1d07cafad212ef611fb1aef3113b6609361476cda7176a49110fe62d257b815f7c622d6ba959872785242e2231c7245242e7794ff5e60325d10f3061b
+DIST vulkan-layers-1.2.182.tar.gz 2791196 BLAKE2B e4c2a80708b7805425eb58bc360db8aa8ac9a671ef88a261f09887f59cbacb56e1375a868589864c30a9a812c91a7dc2c7d3ebc0eda5afc7cb99dfb7f70af2de SHA512 2c7541d18926507fb7f36193a5901e2d3f864749e5c9e456c32bc8e64bae58e661d01f8871c596a2b05e2e5bf86a4c80c6207d7cc942a51cafab81f052d91805
diff --git a/media-libs/vulkan-layers/vulkan-layers-1.2.162.ebuild b/media-libs/vulkan-layers/vulkan-layers-1.2.162.ebuild
deleted file mode 100644
index 639d57a..0000000
--- a/media-libs/vulkan-layers/vulkan-layers-1.2.162.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PN=Vulkan-ValidationLayers
-CMAKE_ECLASS="cmake"
-PYTHON_COMPAT=( python3_{6,7,8,9} )
-inherit cmake-multilib python-any-r1
-
-if [[ ${PV} == *9999* ]]; then
-	EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
-	EGIT_SUBMODULES=()
-	inherit git-r3
-else
-	SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-	KEYWORDS="*"
-	S="${WORKDIR}"/${MY_PN}-${PV}
-fi
-
-DESCRIPTION="Vulkan Validation Layers"
-HOMEPAGE="https://github.com/KhronosGroup/Vulkan-ValidationLayers"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE="wayland X"
-
-BDEPEND=">=dev-util/cmake-3.10.2"
-RDEPEND=">=dev-util/spirv-tools-2020.6:=[${MULTILIB_USEDEP}]"
-DEPEND="${RDEPEND} ${PYTHON_DEPS}
-	>=dev-util/glslang-10.11.0.0_pre20201216:=[${MULTILIB_USEDEP}]
-	>=dev-util/vulkan-headers-${PV}
-	wayland? ( dev-libs/wayland:=[${MULTILIB_USEDEP}] )
-	X? (
-		x11-libs/libX11:=[${MULTILIB_USEDEP}]
-		x11-libs/libXrandr:=[${MULTILIB_USEDEP}]
-	)
-"
-
-multilib_src_configure() {
-	local mycmakeargs=(
-		-DCMAKE_SKIP_RPATH=ON
-		-DBUILD_LAYER_SUPPORT_FILES=OFF
-		-DBUILD_WSI_WAYLAND_SUPPORT=$(usex wayland)
-		-DBUILD_WSI_XCB_SUPPORT=$(usex X)
-		-DBUILD_WSI_XLIB_SUPPORT=$(usex X)
-		-DBUILD_TESTS=OFF
-		-DGLSLANG_INSTALL_DIR="${ESYSROOT}/usr"
-		-DCMAKE_INSTALL_INCLUDEDIR="${ESYSROOT}/usr/include/vulkan/"
-		-DSPIRV_HEADERS_INSTALL_DIR="${ESYSROOT}/usr/include/spirv"
-	)
-	cmake_src_configure
-}
diff --git a/media-libs/vulkan-layers/vulkan-layers-1.2.182-r1.ebuild b/media-libs/vulkan-layers/vulkan-layers-1.2.182-r1.ebuild
new file mode 100644
index 0000000..8ed3535
--- /dev/null
+++ b/media-libs/vulkan-layers/vulkan-layers-1.2.182-r1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+MY_PN=Vulkan-ValidationLayers
+CMAKE_ECLASS="cmake-utils"
+CMAKE_MAKEFILE_GENERATOR="emake"
+PYTHON_COMPAT=( python3_{6,7,8,9} )
+inherit cmake-multilib python-any-r1
+
+if [[ ${PV} == *9999* ]]; then
+	EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
+	EGIT_SUBMODULES=()
+	inherit git-r3
+else
+	SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="*"
+	S="${WORKDIR}"/${MY_PN}-${PV}
+fi
+
+DESCRIPTION="Vulkan Validation Layers"
+HOMEPAGE="https://github.com/KhronosGroup/Vulkan-ValidationLayers"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="wayland X"
+
+BDEPEND=">=dev-util/cmake-3.10.2"
+RDEPEND=">=dev-util/spirv-tools-2021.0_pre20210526:=[${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	dev-cpp/robin-hood-hashing
+	>=dev-util/glslang-11.4.0:=[${MULTILIB_USEDEP}]
+	>=dev-util/vulkan-headers-${PV}
+	wayland? ( dev-libs/wayland:=[${MULTILIB_USEDEP}] )
+	X? (
+		x11-libs/libX11:=[${MULTILIB_USEDEP}]
+		x11-libs/libXrandr:=[${MULTILIB_USEDEP}]
+	)
+"
+
+src_prepare() {
+	cmake-utils_src_prepare
+}
+
+multilib_src_configure() {
+	local mycmakeargs=(
+		-DCMAKE_SKIP_RPATH=ON
+		-DBUILD_LAYER_SUPPORT_FILES=OFF
+		-DBUILD_WSI_WAYLAND_SUPPORT=$(usex wayland)
+		-DBUILD_WSI_XCB_SUPPORT=$(usex X)
+		-DBUILD_WSI_XLIB_SUPPORT=$(usex X)
+		-DBUILD_TESTS=OFF
+		-DGLSLANG_INSTALL_DIR="${ESYSROOT}/usr"
+		-DCMAKE_INSTALL_INCLUDEDIR="${ESYSROOT}/usr/include/vulkan/"
+		-DSPIRV_HEADERS_INSTALL_DIR="${ESYSROOT}/usr/include/spirv"
+	)
+	cmake-utils_src_configure
+}
diff --git a/media-libs/vulkan-loader/Manifest b/media-libs/vulkan-loader/Manifest
index bbda310..d143d45 100644
--- a/media-libs/vulkan-loader/Manifest
+++ b/media-libs/vulkan-loader/Manifest
@@ -1 +1 @@
-DIST vulkan-loader-1.2.162.tar.gz 1421710 BLAKE2B 94b739821c5a12a94a52d8f0a9d79c13055ef3b45b907d53b82325b7be13db52b77d01397534e939bed5629d7a405ff8a09f8da374274a066986b4126fae9863 SHA512 89a99f282b73ec59dde30e4c8c09056b40416185a14ff9b7f7bd496754840e5ac764e7624f1f9a0f11792e786b00f19c3c9e55ccbb22a3c501d8ea9e815d84f9
+DIST vulkan-loader-1.2.182.tar.gz 1469024 BLAKE2B d180154bd0878c45327b1ad06a8efcc637b73fd75ad5ca349740d7f8d6944b2974828cb055a32150c4db4eb94f1b420d94852228d91e46bd8340229fa0ad30fd SHA512 06cf308caae1fd1992b279e8130b8f40bdcc7df44294c73e221d537950c689e552afeda4ae9406645b1d773693fa27c7727ab012daecbcff2793c4995c7f0db0
diff --git a/media-libs/vulkan-loader/OWNERS b/media-libs/vulkan-loader/OWNERS
index 882c57e..2aeee07 100644
--- a/media-libs/vulkan-loader/OWNERS
+++ b/media-libs/vulkan-loader/OWNERS
@@ -1 +1,3 @@
+basni@chromium.org
 chadversary@chromium.org
+olv@chromium.org
diff --git a/media-libs/vulkan-loader/files/vulkan-loader-1.2.162-Fix-pkgconfig.patch b/media-libs/vulkan-loader/files/vulkan-loader-1.2.162-Fix-pkgconfig.patch
deleted file mode 100644
index f06f5cf..0000000
--- a/media-libs/vulkan-loader/files/vulkan-loader-1.2.162-Fix-pkgconfig.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From d0cfd15c09f1581278317a5c0ece8f213ba5578f Mon Sep 17 00:00:00 2001
-From: Nick Sarnie <sarnex@gentoo.org>
-Date: Wed, 16 Dec 2020 23:38:00 -0500
-Subject: [PATCH] Revert "pkgconfig: Missing lib suffx on win32"
-
-This reverts commit 10c4ebadb9fc41e0abf5a32daa7263c6d1aff575.
-
-Signed-off-by: Nick Sarnie <sarnex@gentoo.org>
----
- loader/CMakeLists.txt | 3 ---
- loader/vulkan.pc.in   | 2 +-
- 2 files changed, 1 insertion(+), 4 deletions(-)
-
-diff --git a/loader/CMakeLists.txt b/loader/CMakeLists.txt
-index 659511855..f7b9916b2 100644
---- a/loader/CMakeLists.txt
-+++ b/loader/CMakeLists.txt
-@@ -326,9 +326,6 @@ if(PKG_CONFIG_FOUND)
-     foreach(LIB ${CMAKE_CXX_IMPLICIT_LINK_LIBRARIES} ${PLATFORM_LIBS})
-         set(PRIVATE_LIBS "${PRIVATE_LIBS} -l${LIB}")
-     endforeach()
--    if(WIN32)
--        set(LIB_SUFFIX "-1")
--    endif ()
-     configure_file("vulkan.pc.in" "vulkan.pc" @ONLY)
-     install(FILES "${CMAKE_CURRENT_BINARY_DIR}/vulkan.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
- endif()
-diff --git a/loader/vulkan.pc.in b/loader/vulkan.pc.in
-index fc17cb1f3..f1588c412 100644
---- a/loader/vulkan.pc.in
-+++ b/loader/vulkan.pc.in
-@@ -6,7 +6,7 @@ includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
- Name: @CMAKE_PROJECT_NAME@
- Description: Vulkan Loader
- Version: @VK_API_VERSION@
--Libs: -L${libdir} -lvulkan@LIB_SUFFIX@
-+Libs: -L${libdir} -lvulkan
- Libs.private: @PRIVATE_LIBS@
- Cflags: -I${includedir}
- 
--- 
-2.29.2
-
diff --git a/media-libs/vulkan-loader/vulkan-loader-1.2.162-r1.ebuild b/media-libs/vulkan-loader/vulkan-loader-1.2.162-r1.ebuild
deleted file mode 100644
index a929f37..0000000
--- a/media-libs/vulkan-loader/vulkan-loader-1.2.162-r1.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PN=Vulkan-Loader
-CMAKE_ECLASS="cmake"
-PYTHON_COMPAT=( python3_{6,7,8,9} )
-inherit flag-o-matic cmake-multilib python-any-r1 toolchain-funcs
-
-if [[ ${PV} == *9999* ]]; then
-	EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
-	EGIT_SUBMODULES=()
-	inherit git-r3
-else
-	SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-	KEYWORDS="*"
-	S="${WORKDIR}"/${MY_PN}-${PV}
-fi
-
-DESCRIPTION="Vulkan Installable Client Driver (ICD) Loader"
-HOMEPAGE="https://github.com/KhronosGroup/Vulkan-Loader"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE="layers wayland X"
-
-BDEPEND="
-	${PYTHON_DEPS}
-	>=dev-util/cmake-3.10.2
-"
-DEPEND="
-	~dev-util/vulkan-headers-${PV}
-	wayland? ( dev-libs/wayland:=[${MULTILIB_USEDEP}] )
-	X? (
-		x11-libs/libX11:=[${MULTILIB_USEDEP}]
-		x11-libs/libXrandr:=[${MULTILIB_USEDEP}]
-	)
-"
-PDEPEND="layers? ( media-libs/vulkan-layers:=[${MULTILIB_USEDEP}] )"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-${PV}-Fix-pkgconfig.patch"
-	"${FILESDIR}"/CHROMIUM-Fix-cross-compilation.patch
-)
-
-multilib_src_configure() {
-	# Integrated clang assembler doesn't work with x86 - Bug #698164
-	if tc-is-clang && [[ ${ABI} == x86 ]]; then
-		append-cflags -fno-integrated-as
-	fi
-
-	local mycmakeargs=(
-		-DCMAKE_SKIP_RPATH=ON
-		-DBUILD_TESTS=OFF
-		-DBUILD_LOADER=ON
-		-DBUILD_WSI_WAYLAND_SUPPORT=$(usex wayland)
-		-DBUILD_WSI_XCB_SUPPORT=$(usex X)
-		-DBUILD_WSI_XLIB_SUPPORT=$(usex X)
-		-DVULKAN_HEADERS_INSTALL_DIR="${ESYSROOT}/usr"
-	)
-	cmake_src_configure
-}
-
-multilib_src_install() {
-	keepdir /etc/vulkan/icd.d
-
-	cmake_src_install
-}
-
-pkg_postinst() {
-	einfo "USE=demos has been dropped as per upstream packaging"
-	einfo "vulkaninfo is now available in the dev-util/vulkan-tools package"
-}
diff --git a/media-libs/vulkan-loader/vulkan-loader-1.2.182-r1.ebuild b/media-libs/vulkan-loader/vulkan-loader-1.2.182-r1.ebuild
new file mode 100644
index 0000000..614c1a9
--- /dev/null
+++ b/media-libs/vulkan-loader/vulkan-loader-1.2.182-r1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+MY_PN=Vulkan-Loader
+CMAKE_ECLASS="cmake-utils"
+CMAKE_MAKEFILE_GENERATOR="emake"
+inherit flag-o-matic cmake-multilib toolchain-funcs
+
+if [[ ${PV} == *9999* ]]; then
+	EGIT_REPO_URI="https://github.com/KhronosGroup/${MY_PN}.git"
+	EGIT_SUBMODULES=()
+	inherit git-r3
+else
+	SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="*"
+	S="${WORKDIR}"/${MY_PN}-${PV}
+fi
+
+DESCRIPTION="Vulkan Installable Client Driver (ICD) Loader"
+HOMEPAGE="https://github.com/KhronosGroup/Vulkan-Loader"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="layers wayland X"
+
+BDEPEND=">=dev-util/cmake-3.10.2"
+DEPEND="
+	~dev-util/vulkan-headers-${PV}
+	wayland? ( dev-libs/wayland:=[${MULTILIB_USEDEP}] )
+	X? (
+		x11-libs/libX11:=[${MULTILIB_USEDEP}]
+		x11-libs/libXrandr:=[${MULTILIB_USEDEP}]
+	)
+"
+PDEPEND="layers? ( media-libs/vulkan-layers:=[${MULTILIB_USEDEP}] )"
+
+PATCHES=(
+	"${FILESDIR}"/CHROMIUM-Fix-cross-compilation.patch
+)
+
+src_prepare() {
+	cmake-utils_src_prepare
+}
+
+multilib_src_configure() {
+	# Integrated clang assembler doesn't work with x86 - Bug #698164
+	if tc-is-clang && [[ ${ABI} == x86 ]]; then
+		append-cflags -fno-integrated-as
+	fi
+
+	local mycmakeargs=(
+		-DCMAKE_SKIP_RPATH=ON
+		-DBUILD_TESTS=OFF
+		-DBUILD_LOADER=ON
+		-DBUILD_WSI_WAYLAND_SUPPORT=$(usex wayland)
+		-DBUILD_WSI_XCB_SUPPORT=$(usex X)
+		-DBUILD_WSI_XLIB_SUPPORT=$(usex X)
+		-DVULKAN_HEADERS_INSTALL_DIR="${ESYSROOT}/usr"
+	)
+	cmake-utils_src_configure
+}
+
+multilib_src_install() {
+	keepdir /etc/vulkan/icd.d
+
+	cmake-utils_src_install
+}
+
+pkg_postinst() {
+	einfo "USE=demos has been dropped as per upstream packaging"
+	einfo "vulkaninfo is now available in the dev-util/vulkan-tools package"
+}
diff --git a/media-libs/webrtc-apm/webrtc-apm-0.0.1-r25.ebuild b/media-libs/webrtc-apm/webrtc-apm-0.0.1-r25.ebuild
deleted file mode 100644
index 92c7c0f..0000000
--- a/media-libs/webrtc-apm/webrtc-apm-0.0.1-r25.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2018 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.
-
-EAPI=5
-
-CROS_WORKON_COMMIT="b29aa58066487076f7fde3b817a00b8f2eaf05a5"
-CROS_WORKON_TREE="d7913d87dd4ea6cee195ad27b94ce6ad23840b87"
-CROS_WORKON_PROJECT="chromiumos/third_party/webrtc-apm"
-CROS_WORKON_LOCALNAME="webrtc-apm"
-
-inherit cros-workon multilib
-
-DESCRIPTION="Standalone WebRTC APM library"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/webrtc-apm"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE="cpu_flags_x86_sse2 neon"
-
-DEPEND="dev-libs/iniparser:=
-	dev-libs/libevent:=
-	dev-libs/protobuf:=
-	chromeos-base/metrics"
-RDEPEND="${DEPEND}"
-
-src_configure() {
-	export USE_NEON=$(usex neon 1 0)
-	export USE_SSE2=$(usex cpu_flags_x86_sse2 1 0)
-}
-
-src_install() {
-	local INCLUDE_DIR="/usr/include/webrtc-apm"
-	local LIB_DIR="/usr/$(get_libdir)"
-
-	dolib libwebrtc_apm.so
-
-	insinto "${INCLUDE_DIR}"
-	doins webrtc_apm.h
-
-	sed -e "s|@INCLUDE_DIR@|${INCLUDE_DIR}|" -e "s|@LIB_DIR@|${LIB_DIR}|" \
-		libwebrtc_apm.pc.template > libwebrtc_apm.pc
-	insinto "${LIB_DIR}/pkgconfig"
-	doins libwebrtc_apm.pc
-}
diff --git a/media-libs/webrtc-apm/webrtc-apm-0.0.1-r27.ebuild b/media-libs/webrtc-apm/webrtc-apm-0.0.1-r27.ebuild
new file mode 100644
index 0000000..0a5d790
--- /dev/null
+++ b/media-libs/webrtc-apm/webrtc-apm-0.0.1-r27.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2018 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.
+
+EAPI=5
+
+CROS_WORKON_COMMIT="1083475701e93d11997aa3e1bb68ac1a0e88bc1d"
+CROS_WORKON_TREE="1a0b1a1877d86d749c00100ebbef86fc9c873b6b"
+CROS_WORKON_PROJECT="chromiumos/third_party/webrtc-apm"
+CROS_WORKON_LOCALNAME="webrtc-apm"
+
+inherit cros-workon multilib cros-sanitizers
+
+DESCRIPTION="Standalone WebRTC APM library"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/webrtc-apm"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE="cpu_flags_x86_sse2 neon"
+
+DEPEND="dev-libs/iniparser:=
+	dev-libs/libevent:=
+	dev-libs/protobuf:=
+	chromeos-base/metrics"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+	sanitizers-setup-env
+
+	export USE_NEON=$(usex neon 1 0)
+	export USE_SSE2=$(usex cpu_flags_x86_sse2 1 0)
+}
+
+src_install() {
+	local INCLUDE_DIR="/usr/include/webrtc-apm"
+	local LIB_DIR="/usr/$(get_libdir)"
+
+	dolib libwebrtc_apm.so
+
+	insinto "${INCLUDE_DIR}"
+	doins webrtc_apm.h
+
+	sed -e "s|@INCLUDE_DIR@|${INCLUDE_DIR}|" -e "s|@LIB_DIR@|${LIB_DIR}|" \
+		libwebrtc_apm.pc.template > libwebrtc_apm.pc
+	insinto "${LIB_DIR}/pkgconfig"
+	doins libwebrtc_apm.pc
+}
diff --git a/media-libs/webrtc-apm/webrtc-apm-9999.ebuild b/media-libs/webrtc-apm/webrtc-apm-9999.ebuild
index 7636c8e..6c6f8de 100644
--- a/media-libs/webrtc-apm/webrtc-apm-9999.ebuild
+++ b/media-libs/webrtc-apm/webrtc-apm-9999.ebuild
@@ -7,7 +7,7 @@
 CROS_WORKON_PROJECT="chromiumos/third_party/webrtc-apm"
 CROS_WORKON_LOCALNAME="webrtc-apm"
 
-inherit cros-workon multilib
+inherit cros-workon multilib cros-sanitizers
 
 DESCRIPTION="Standalone WebRTC APM library"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/webrtc-apm"
@@ -25,6 +25,8 @@
 RDEPEND="${DEPEND}"
 
 src_configure() {
+	sanitizers-setup-env
+
 	export USE_NEON=$(usex neon 1 0)
 	export USE_SSE2=$(usex cpu_flags_x86_sse2 1 0)
 }
diff --git a/media-plugins/live/Manifest b/media-plugins/live/Manifest
index 2f2582b..91decfc 100644
--- a/media-plugins/live/Manifest
+++ b/media-plugins/live/Manifest
@@ -1 +1 @@
-DIST live.2020.03.06.tar.gz 7231080 BLAKE2B 95a1d3cc394eba473296973a1e44160dd1ca8e2efbc322a2e0bfbdb183244cda28b219ea14a51c8d146807d829b566a9c3782b291d5abfbd306a92e030e108e4 SHA512 7da439fbdeab0da6687dee56d9a27bf7b8f8a9c84b420d72f2e2a7ff7a73d18756d1fdb920f29b36917d93efcecc9230877637322d5041eeba114882b4bf7a06
+DIST live.2021.05.22.tar.gz 682749 BLAKE2B 38663f8c5dbd8cccf4e5cfe685b0eb393559195eba852fcdf6c38c7be936948d2727da91e829aedbde08eab6edb6082533d14061edfcf125d82c925bffdb9f90 SHA512 4021cbdaffb48b9b361e931fa71f89db1e116fe8c4e57df78d54493b111a8c6249431cc418a20352a45a75ef240712609eed3aa7468c6049996dd2451ae2941c
diff --git a/media-plugins/live/files/config.gentoo-so-r3 b/media-plugins/live/files/config.gentoo-so-r3
index e1743e0..58f77976 100644
--- a/media-plugins/live/files/config.gentoo-so-r3
+++ b/media-plugins/live/files/config.gentoo-so-r3
@@ -1,4 +1,4 @@
-COMPILE_OPTS =		$(INCLUDES) -I. -DSOCKLEN_T=socklen_t -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DXLOCALE_NOT_USED -DNO_OPENSSL=1 -DDISABLE_LOOPBACK_IP_ADDRESS_CHECK=1 -DUSE_SYSTEM_RANDOM=1
+COMPILE_OPTS =		$(INCLUDES) -I. -DSOCKLEN_T=socklen_t -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DXLOCALE_NOT_USED -DNO_OPENSSL=1 -DUSE_SYSTEM_RANDOM=1
 C =			c
 C_COMPILER =		$(CC)
 C_FLAGS =		$(COMPILE_OPTS) -fPIC $(CFLAGS)
diff --git a/media-plugins/live/files/live-2020.03.06-Expose-RTP-Timestamp-in-RTPSource.patch b/media-plugins/live/files/live-2020.03.06-Expose-RTP-Timestamp-in-RTPSource.patch
deleted file mode 100644
index 963f380..0000000
--- a/media-plugins/live/files/live-2020.03.06-Expose-RTP-Timestamp-in-RTPSource.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From: Lionel Koenig <lionelk@google.com>
-
-Exposes the RTP Timestamp in the liveMedia RTPSource object.
-
-This is a workaround and won't be upstreamed:
-http://lists.live555.com/pipermail/live-devel/2020-May/021598.html
-
-Detailed explanation:
-The presentation time is adjusted via RTCP Sender Report every now and
-then using the sender media clock through RTP Timestamps and the sender
-system clock. This sender system clock might be adjusted via NTP causing
-some occasional jumps (I've seen system clock being adjusted with NTP
-every few seconds on some devices) leading to "time jumps" in the RTCP
-Sender Report (Will most likely not change the strictly increasing
-nature of the whole clock system).
-
-The presentation time clock the receiver sees then is a combination of
-the media clock and the sender system clock. The adjustment of the
-system clock via NTP (or maybe something else) introduces "noise" if the
-media clock is then re-derived from this presentation time.
-
-Using the RTP Timestamp directly allows a way to circumvent the noise
-introduced by the different system clocks, sender report adjustment and
-so on, and only focus on solving the media clock synchronization issue.
-
-More details in:
-  - https://tools.ietf.org/html/rfc3550#section-5.1
-  - https://tools.ietf.org/html/rfc3551#section-4.3
-
---- a/liveMedia/include/RTPSource.hh
-+++ b/liveMedia/include/RTPSource.hh
-@@ -86,7 +86,6 @@ public:
-   // RTP sequence numbers and timestamps are usually not useful to receivers.
-   // (Our implementation of RTP reception already does all needed handling of RTP sequence numbers and timestamps.)
-   u_int16_t curPacketRTPSeqNum() const { return fCurPacketRTPSeqNum; }
--private: friend class MediaSubsession; // "MediaSubsession" is the only outside class that ever needs to see RTP timestamps!
-   u_int32_t curPacketRTPTimestamp() const { return fCurPacketRTPTimestamp; }
- 
- protected:
--- 
-2.21.0
-
diff --git a/media-plugins/live/files/live-2021.05.22-Expose-RTP-Timestamp-in-RTPSource.patch b/media-plugins/live/files/live-2021.05.22-Expose-RTP-Timestamp-in-RTPSource.patch
new file mode 100644
index 0000000..3ef8c8d
--- /dev/null
+++ b/media-plugins/live/files/live-2021.05.22-Expose-RTP-Timestamp-in-RTPSource.patch
@@ -0,0 +1,42 @@
+From: Lionel Koenig <lionelk@google.com>
+
+Exposes the RTP Timestamp in the liveMedia RTPSource object.
+
+This is a workaround and won't be upstreamed:
+http://lists.live555.com/pipermail/live-devel/2020-May/021598.html
+
+Detailed explanation:
+The presentation time is adjusted via RTCP Sender Report every now and
+then using the sender media clock through RTP Timestamps and the sender
+system clock. This sender system clock might be adjusted via NTP causing
+some occasional jumps (I've seen system clock being adjusted with NTP
+every few seconds on some devices) leading to "time jumps" in the RTCP
+Sender Report (Will most likely not change the strictly increasing
+nature of the whole clock system).
+
+The presentation time clock the receiver sees then is a combination of
+the media clock and the sender system clock. The adjustment of the
+system clock via NTP (or maybe something else) introduces "noise" if the
+media clock is then re-derived from this presentation time.
+
+Using the RTP Timestamp directly allows a way to circumvent the noise
+introduced by the different system clocks, sender report adjustment and
+so on, and only focus on solving the media clock synchronization issue.
+
+More details in:
+  - https://tools.ietf.org/html/rfc3550#section-5.1
+  - https://tools.ietf.org/html/rfc3551#section-4.3
+
+--- a/liveMedia/include/RTPSource.hh
++++ b/liveMedia/include/RTPSource.hh
+@@ -86,7 +86,6 @@ public:
+   // RTP sequence numbers and timestamps are usually not useful to receivers.
+   // (Our implementation of RTP reception already does all needed handling of RTP sequence numbers and timestamps.)
+   u_int16_t curPacketRTPSeqNum() const { return fCurPacketRTPSeqNum; }
+-private: friend class MediaSubsession; // "MediaSubsession" is the only outside class that ever needs to see RTP timestamps!
+   u_int32_t curPacketRTPTimestamp() const { return fCurPacketRTPTimestamp; }
+
+ protected:
+--
+2.21.0
+
diff --git a/media-plugins/live/live-2020.03.06-r3.ebuild b/media-plugins/live/live-2020.03.06-r3.ebuild
deleted file mode 120000
index 1ce3864..0000000
--- a/media-plugins/live/live-2020.03.06-r3.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-live-2020.03.06.ebuild
\ No newline at end of file
diff --git a/media-plugins/live/live-2020.03.06.ebuild b/media-plugins/live/live-2020.03.06.ebuild
deleted file mode 100644
index 918234f..0000000
--- a/media-plugins/live/live-2020.03.06.ebuild
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Libraries for standards-based RTP/RTCP/RTSP multimedia streaming"
-HOMEPAGE="http://www.live555.com/"
-SRC_URI="http://www.live555.com/liveMedia/public/${P/-/.}.tar.gz"
-
-LICENSE="LGPL-2.1"
-KEYWORDS="*"
-IUSE="libressl ssl"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-${PV}-Expose-RTP-Timestamp-in-RTPSource.patch"
-)
-
-DEPEND="
-	ssl? (
-		!libressl? ( dev-libs/openssl:0= )
-		libressl? ( dev-libs/libressl:0= )
-	)
-"
-RDEPEND="${DEPEND}"
-
-DOCS=( "live-shared/README" )
-
-# Alexis Ballier <aballier@gentoo.org>, Sam James <sam@cmpct.info>
-# Be careful, bump this everytime you bump the package and the ABI has changed.
-# If you don't know, ask someone.
-# You may wish to use a site like https://abi-laboratory.pro/index.php?view=timeline&l=live555
-LIVE_ABI_VERSION=8
-SLOT="0/${LIVE_ABI_VERSION}"
-
-S="${WORKDIR}/live"
-
-src_prepare() {
-	default
-	cp "${FILESDIR}/config.gentoo-so-r3" "${S}/config.gentoo-so-r1" || die
-
-	# This is all legacy stuff which needs to be cleaned up
-	case ${CHOST} in
-		*-solaris*)
-			sed -i \
-				-e '/^COMPILE_OPTS /s/$/ -DSOLARIS -DXLOCALE_NOT_USED/' \
-				-e '/^LIBS_FOR_CONSOLE_APPLICATION /s/$/ -lsocket -lnsl/' \
-				live/config.gentoo-so-r1 \
-				|| die
-		;;
-		*-darwin*)
-			sed -i \
-				-e '/^COMPILE_OPTS /s/$/ -DBSD=1 -DHAVE_SOCKADDR_LEN=1/' \
-				-e '/^LINK /s/$/ /' \
-				-e '/^LIBRARY_LINK /s/=.*$/= $(CXX) -o /' \
-				-e '/^LIBRARY_LINK_OPTS /s:-shared.*$:-undefined suppress -flat_namespace -dynamiclib -install_name '"${EPREFIX}/usr/$(get_libdir)/"'$@:' \
-				-e '/^LIB_SUFFIX /s/so/dylib/' \
-				live/config.gentoo-so-r1 \
-				|| die shared
-		;;
-	esac
-}
-
-src_configure() {
-	# This ebuild uses its own build system
-	# We don't want to call ./configure or anything here.
-	# The only thing we can do is honour the user's SSL preference.
-	if use ssl; then
-		sed -i 's/-DNO_OPENSSL=1//' "${S}/config.gentoo-so-r1" || die
-	fi
-
-	# And defer to the scripts that upstream provide.
-	./genMakefiles gentoo-so-r1 || die
-}
-
-src_compile() {
-	export suffix="${LIVE_ABI_VERSION}.so"
-	local link_opts="$(usex ssl '-lssl' '') -L. ${LDFLAGS}"
-	local lib_suffix="${suffix#.}"
-
-	einfo "Beginning shared library build"
-	emake LINK_OPTS="${link_opts}" LIB_SUFFIX="${lib_suffix}"
-
-	for i in liveMedia groupsock UsageEnvironment BasicUsageEnvironment ; do
-		cd "${S}/${i}" || die
-		ln -s "lib${i}.${suffix}" "lib${i}.so" || die
-	done
-
-	einfo "Beginning programs build"
-	for i in proxyServer mediaServer ; do
-		cd "${S}/${i}" || die
-		emake LINK_OPTS="${link_opts}"
-	done
-}
-
-src_install() {
-	for library in UsageEnvironment liveMedia BasicUsageEnvironment groupsock; do
-		dolib.so "${S}/${library}/lib${library}.${suffix}"
-		dosym "lib${library}.${suffix}" "/usr/$(get_libdir)/lib${library}.so"
-
-		insinto /usr/include/"${library}"
-		doins "${S}/${library}"/include/*h
-	done
-
-	dobin "${S}"/mediaServer/live555MediaServer
-	dobin "${S}"/proxyServer/live555ProxyServer
-}
diff --git a/media-plugins/live/live-2021.05.22-r1.ebuild b/media-plugins/live/live-2021.05.22-r1.ebuild
new file mode 120000
index 0000000..85f1fe6
--- /dev/null
+++ b/media-plugins/live/live-2021.05.22-r1.ebuild
@@ -0,0 +1 @@
+live-2021.05.22.ebuild
\ No newline at end of file
diff --git a/media-plugins/live/live-2021.05.22.ebuild b/media-plugins/live/live-2021.05.22.ebuild
new file mode 100644
index 0000000..ea99bea
--- /dev/null
+++ b/media-plugins/live/live-2021.05.22.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="Libraries for standards-based RTP/RTCP/RTSP multimedia streaming"
+HOMEPAGE="http://www.live555.com/"
+SRC_URI="http://www.live555.com/liveMedia/public/${P/-/.}.tar.gz"
+
+LICENSE="LGPL-2.1"
+KEYWORDS="*"
+IUSE="ssl"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-${PV}-Expose-RTP-Timestamp-in-RTPSource.patch"
+)
+
+BDEPEND="virtual/pkgconfig"
+DEPEND="
+	ssl? (
+		dev-libs/openssl:0=
+	)
+"
+RDEPEND="${DEPEND}"
+
+DOCS=( "live-shared/README" )
+
+# Alexis Ballier <aballier@gentoo.org>, Sam James <sam@gentoo.org>
+# Be careful, bump this everytime you bump the package and the ABI has changed.
+# If you don't know, ask someone.
+# You may wish to use a site like https://abi-laboratory.pro/index.php?view=timeline&l=live555
+LIVE_ABI_VERSION=9
+SLOT="0/${LIVE_ABI_VERSION}"
+
+S="${WORKDIR}/live"
+
+src_prepare() {
+	default
+
+	cp "${FILESDIR}/config.gentoo-so-r3" "${S}/config.gentoo-so-r1" || die
+
+	# This is all legacy stuff which needs to be cleaned up
+	case ${CHOST} in
+		*-solaris*)
+			sed -i \
+				-e '/^COMPILE_OPTS /s/$/ -DSOLARIS -DXLOCALE_NOT_USED/' \
+				-e '/^LIBS_FOR_CONSOLE_APPLICATION /s/$/ -lsocket -lnsl/' \
+				live/config.gentoo-so-r1 \
+				|| die
+		;;
+		*-darwin*)
+			sed -i \
+				-e '/^COMPILE_OPTS /s/$/ -DBSD=1 -DHAVE_SOCKADDR_LEN=1/' \
+				-e '/^LINK /s/$/ /' \
+				-e '/^LIBRARY_LINK /s/=.*$/= $(CXX) -o /' \
+				-e '/^LIBRARY_LINK_OPTS /s:-shared.*$:-undefined suppress -flat_namespace -dynamiclib -install_name '"${EPREFIX}/usr/$(get_libdir)/"'$@:' \
+				-e '/^LIB_SUFFIX /s/so/dylib/' \
+				live/config.gentoo-so-r1 \
+				|| die
+		;;
+	esac
+}
+
+src_configure() {
+	# This ebuild uses its own build system
+	# We don't want to call ./configure or anything here.
+	# The only thing we can do is honour the user's SSL preference.
+	if use ssl ; then
+		sed -i 's/-DNO_OPENSSL=1//' "${S}/config.gentoo-so-r1" || die
+	fi
+
+	# Bug 718912
+	tc-export CC CXX
+
+	# And defer to the scripts that upstream provide.
+	./genMakefiles gentoo-so-r1 || die
+}
+
+src_compile() {
+	export suffix="${LIVE_ABI_VERSION}.so"
+	local link_opts="$(usex ssl "$($(tc-getPKG_CONFIG) --libs libssl libcrypto)" '') -L. ${LDFLAGS}"
+	local lib_suffix="${suffix#.}"
+
+	einfo "Beginning shared library build"
+	emake LINK_OPTS="${link_opts}" LIB_SUFFIX="${lib_suffix}"
+
+	for i in liveMedia groupsock UsageEnvironment BasicUsageEnvironment ; do
+		cd "${S}/${i}" || die
+		ln -s "lib${i}.${suffix}" "lib${i}.so" || die
+	done
+
+	einfo "Beginning programs build"
+	for i in proxyServer mediaServer ; do
+		cd "${S}/${i}" || die
+		emake LINK_OPTS="${link_opts}"
+	done
+}
+
+src_install() {
+	for library in UsageEnvironment liveMedia BasicUsageEnvironment groupsock ; do
+		dolib.so "${S}/${library}/lib${library}.${suffix}"
+		dosym "lib${library}.${suffix}" "/usr/$(get_libdir)/lib${library}.so"
+
+		insinto /usr/include/"${library}"
+		doins "${S}/${library}"/include/*h
+	done
+
+	dobin "${S}"/mediaServer/live555MediaServer
+	dobin "${S}"/proxyServer/live555ProxyServer
+}
diff --git a/media-sound/adhd/adhd-0.0.6-r2281.ebuild b/media-sound/adhd/adhd-0.0.6-r2281.ebuild
deleted file mode 100644
index 3289e8c..0000000
--- a/media-sound/adhd/adhd-0.0.6-r2281.ebuild
+++ /dev/null
@@ -1,138 +0,0 @@
-# Copyright (c) 2012 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.
-
-EAPI=7
-CROS_WORKON_COMMIT="f9922af83c912a308a83846662b338ce51a91eec"
-CROS_WORKON_TREE="e62b24ca0c95c5db285704697a8d941cbdbb742c"
-CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
-CROS_WORKON_LOCALNAME="adhd"
-CROS_WORKON_USE_VCSID=1
-
-inherit toolchain-funcs autotools cros-fuzzer cros-sanitizers cros-workon systemd user libchrome-version
-
-DESCRIPTION="Google A/V Daemon"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/"
-SRC_URI=""
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="asan +cras-apm fuzzer generated_cros_config selinux systemd unibuild"
-
-COMMON_DEPEND="
-	>=chromeos-base/metrics-0.0.1-r3152:=
-	dev-libs/iniparser:=
-	cras-apm? ( media-libs/webrtc-apm:= )
-	>=media-libs/alsa-lib-1.1.6-r3:=
-	media-libs/ladspa-sdk:=
-	media-libs/sbc:=
-	media-libs/speex:=
-	>=sys-apps/dbus-1.4.12:=
-	selinux? ( sys-libs/libselinux:= )
-	virtual/udev:=
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	media-sound/alsa-utils
-	media-plugins/alsa-plugins
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp )
-	)
-	chromeos-base/chromeos-config-tools
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	dev-libs/libpthread-stubs:=
-	media-sound/cras_rust:=
-"
-
-src_prepare() {
-	cd cras
-	eautoreconf
-	default
-}
-
-src_configure() {
-	cros_optimize_package_for_speed
-	sanitizers-setup-env
-	if use amd64 ; then
-		export FUZZER_LDFLAGS="-fsanitize=fuzzer"
-	fi
-
-	cd cras
-	# Disable external libraries for fuzzers.
-	if use fuzzer ; then
-		# Disable "gc-sections" for fuzzer builds, https://crbug.com/1026125 .
-		append-ldflags "-Wl,--no-gc-sections"
-		econf $(use_enable cras-apm webrtc-apm) \
-			--with-system-cras-rust \
-			$(use_enable amd64 fuzzer)
-	else
-		econf $(use_enable selinux) \
-			$(use_enable cras-apm webrtc-apm) \
-			--enable-metrics \
-			--with-system-cras-rust \
-			$(use_enable amd64 fuzzer) \
-			BASE_VER="$(libchrome_ver)"
-	fi
-}
-
-src_compile() {
-	emake CC="$(tc-getCC)" || die "Unable to build ADHD"
-}
-
-src_test() {
-	if ! use x86 && ! use amd64 ; then
-		elog "Skipping unit tests on non-x86 platform"
-	else
-		cd cras
-		# This is an ugly hack that happens to work, but should not be copied.
-		LD_LIBRARY_PATH="${SYSROOT}/usr/$(get_libdir)" \
-		emake check
-	fi
-}
-
-src_install() {
-	emake DESTDIR="${D}" SYSTEMD="$(usex systemd)" install
-
-	# install common ucm config files.
-	insinto /usr/share/alsa/ucm
-	doins -r ucm-config/for_all_boards/*
-
-	# install common cras config files.
-	insinto /etc/cras
-	doins -r cras-config/for_all_boards/*
-
-	# install dbus config allowing cras access
-	insinto /etc/dbus-1/system.d
-	doins dbus-config/org.chromium.cras.conf
-
-	# Install D-Bus XML files.
-	insinto /usr/share/dbus-1/interfaces/
-	doins cras/dbus_bindings/*.xml
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	newins "seccomp/cras-seccomp-${ARCH}.policy" cras-seccomp.policy
-
-	# Install asound.conf for CRAS alsa plugin
-	insinto /etc
-	doins "${FILESDIR}"/asound.conf
-
-	if use fuzzer ; then
-		# Install example dsp.ini file for fuzzer
-		insinto /etc/cras
-		doins cras-config/dsp.ini.sample
-		# Install fuzzer binary
-		fuzzer_install "${S}/OWNERS.fuzz" cras/src/cras_rclient_message_fuzzer
-		fuzzer_install "${S}/OWNERS.fuzz" cras/src/cras_hfp_slc_fuzzer \
-			--dict "${S}/cras/src/fuzz/cras_hfp_slc.dict"
-	fi
-}
-
-pkg_preinst() {
-	enewuser "cras"
-	enewgroup "cras"
-}
diff --git a/media-sound/adhd/adhd-0.0.6-r2366.ebuild b/media-sound/adhd/adhd-0.0.6-r2366.ebuild
new file mode 100644
index 0000000..435892d
--- /dev/null
+++ b/media-sound/adhd/adhd-0.0.6-r2366.ebuild
@@ -0,0 +1,138 @@
+# Copyright (c) 2012 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.
+
+EAPI=7
+CROS_WORKON_COMMIT="1a243e06d88e4c819d1681546383316411446409"
+CROS_WORKON_TREE="f415ee0442ea42533f2915076efce40c27901850"
+CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
+CROS_WORKON_LOCALNAME="adhd"
+CROS_WORKON_USE_VCSID=1
+
+inherit toolchain-funcs autotools cros-fuzzer cros-sanitizers cros-workon
+inherit cros-unibuild systemd user libchrome-version
+
+DESCRIPTION="Google A/V Daemon"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/"
+SRC_URI=""
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="asan +cras-apm fuzzer selinux systemd"
+
+COMMON_DEPEND="
+	>=chromeos-base/metrics-0.0.1-r3152:=
+	dev-libs/iniparser:=
+	cras-apm? ( media-libs/webrtc-apm:= )
+	>=media-libs/alsa-lib-1.1.6-r3:=
+	media-libs/ladspa-sdk:=
+	media-libs/sbc:=
+	media-libs/speex:=
+	>=sys-apps/dbus-1.4.12:=
+	selinux? ( sys-libs/libselinux:= )
+	virtual/udev:=
+"
+
+RDEPEND="
+	${COMMON_DEPEND}
+	media-sound/alsa-utils
+	media-plugins/alsa-plugins
+	chromeos-base/chromeos-config-tools
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	dev-libs/libpthread-stubs:=
+	media-sound/cras_rust:=
+"
+
+src_prepare() {
+	cd cras
+	eautoreconf
+	default
+}
+
+src_configure() {
+	cros_optimize_package_for_speed
+	sanitizers-setup-env
+	if use amd64 ; then
+		export FUZZER_LDFLAGS="-fsanitize=fuzzer"
+	fi
+
+	cd cras
+	# Disable external libraries for fuzzers.
+	if use fuzzer ; then
+		# Disable "gc-sections" for fuzzer builds, https://crbug.com/1026125 .
+		append-ldflags "-Wl,--no-gc-sections"
+		econf $(use_enable cras-apm webrtc-apm) \
+			--with-system-cras-rust \
+			$(use_enable amd64 fuzzer)
+	else
+		econf $(use_enable selinux) \
+			$(use_enable cras-apm webrtc-apm) \
+			--enable-metrics \
+			--with-system-cras-rust \
+			$(use_enable amd64 fuzzer) \
+			BASE_VER="$(libchrome_ver)"
+	fi
+}
+
+src_compile() {
+	emake CC="$(tc-getCC)" || die "Unable to build ADHD"
+}
+
+src_test() {
+	if ! use x86 && ! use amd64 ; then
+		elog "Skipping unit tests on non-x86 platform"
+	else
+		cd cras
+		# This is an ugly hack that happens to work, but should not be copied.
+		LD_LIBRARY_PATH="${SYSROOT}/usr/$(get_libdir)" \
+		emake check
+	fi
+}
+
+src_install() {
+	emake DESTDIR="${D}" SYSTEMD="$(usex systemd)" install
+
+	# install common ucm config files.
+	insinto /usr/share/alsa/ucm
+	doins -r ucm-config/for_all_boards/*
+
+	# install common cras config files.
+	insinto /etc/cras
+	doins -r cras-config/for_all_boards/*
+
+	# install dbus config allowing cras access
+	insinto /etc/dbus-1/system.d
+	doins dbus-config/org.chromium.cras.conf
+
+	# Install D-Bus XML files.
+	insinto /usr/share/dbus-1/interfaces/
+	doins cras/dbus_bindings/*.xml
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	newins "seccomp/cras-seccomp-${ARCH}.policy" cras-seccomp.policy
+
+	# Install asound.conf for CRAS alsa plugin
+	insinto /etc
+	doins "${FILESDIR}"/asound.conf
+
+	if use fuzzer ; then
+		# Install example dsp.ini file for fuzzer
+		insinto /etc/cras
+		doins cras-config/dsp.ini.sample
+		# Install fuzzer binary
+		fuzzer_install "${S}/OWNERS.fuzz" cras/src/cras_rclient_message_fuzzer
+		local fuzzer_component_id="777118"
+		fuzzer_install "${S}/OWNERS.fuzz" cras/src/cras_hfp_slc_fuzzer \
+			--dict "${S}/cras/src/fuzz/cras_hfp_slc.dict" \
+			--comp "${fuzzer_component_id}"
+	fi
+}
+
+pkg_preinst() {
+	enewuser "cras"
+	enewgroup "cras"
+	enewgroup "bluetooth-audio"
+}
diff --git a/media-sound/adhd/adhd-9999.ebuild b/media-sound/adhd/adhd-9999.ebuild
index ddfa7a0..71ca3f3 100644
--- a/media-sound/adhd/adhd-9999.ebuild
+++ b/media-sound/adhd/adhd-9999.ebuild
@@ -7,14 +7,15 @@
 CROS_WORKON_LOCALNAME="adhd"
 CROS_WORKON_USE_VCSID=1
 
-inherit toolchain-funcs autotools cros-fuzzer cros-sanitizers cros-workon systemd user libchrome-version
+inherit toolchain-funcs autotools cros-fuzzer cros-sanitizers cros-workon
+inherit cros-unibuild systemd user libchrome-version
 
 DESCRIPTION="Google A/V Daemon"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/"
 SRC_URI=""
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="asan +cras-apm fuzzer generated_cros_config selinux systemd unibuild"
+IUSE="asan +cras-apm fuzzer selinux systemd"
 
 COMMON_DEPEND="
 	>=chromeos-base/metrics-0.0.1-r3152:=
@@ -33,10 +34,6 @@
 	${COMMON_DEPEND}
 	media-sound/alsa-utils
 	media-plugins/alsa-plugins
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp )
-	)
 	chromeos-base/chromeos-config-tools
 "
 
@@ -125,12 +122,15 @@
 		doins cras-config/dsp.ini.sample
 		# Install fuzzer binary
 		fuzzer_install "${S}/OWNERS.fuzz" cras/src/cras_rclient_message_fuzzer
+		local fuzzer_component_id="777118"
 		fuzzer_install "${S}/OWNERS.fuzz" cras/src/cras_hfp_slc_fuzzer \
-			--dict "${S}/cras/src/fuzz/cras_hfp_slc.dict"
+			--dict "${S}/cras/src/fuzz/cras_hfp_slc.dict" \
+			--comp "${fuzzer_component_id}"
 	fi
 }
 
 pkg_preinst() {
 	enewuser "cras"
 	enewgroup "cras"
+	enewgroup "bluetooth-audio"
 }
diff --git a/media-sound/alsa-utils/alsa-utils-1.2.1-r2.ebuild b/media-sound/alsa-utils/alsa-utils-1.2.1-r3.ebuild
similarity index 100%
rename from media-sound/alsa-utils/alsa-utils-1.2.1-r2.ebuild
rename to media-sound/alsa-utils/alsa-utils-1.2.1-r3.ebuild
diff --git a/media-sound/alsa-utils/alsa-utils-1.2.1.ebuild b/media-sound/alsa-utils/alsa-utils-1.2.1.ebuild
index 07da4af..125df91 100644
--- a/media-sound/alsa-utils/alsa-utils-1.2.1.ebuild
+++ b/media-sound/alsa-utils/alsa-utils-1.2.1.ebuild
@@ -26,6 +26,11 @@
 PATCHES=(
 	"${FILESDIR}"/${PN}-1.1.8-missing_header.patch
 	"${FILESDIR}"/${PN}-1.2.1-alsaucm-Fix-ending-with-quotes-commands.patch
+	"${FILESDIR}"/${PN}-1.2.1-aplay-Fix-conversion-of-unsigned-samples.patch
+	"${FILESDIR}"/${PN}-1.2.1-aplay-Handle-16bit-sample-negative-overf.patch
+	"${FILESDIR}"/${PN}-1.2.1-aplay-Don-t-pass-most-negative-integer-t.patch
+	"${FILESDIR}"/${PN}-1.2.1-aplay-Handle-upper-bound-in-peak-calcula.patch
+	"${FILESDIR}"/${PN}-1.2.1-aplay-Fix-out-of-bound-access-in-stereo-.patch
 )
 
 src_configure() {
diff --git a/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Don-t-pass-most-negative-integer-t.patch b/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Don-t-pass-most-negative-integer-t.patch
new file mode 100644
index 0000000..c3b2ffb
--- /dev/null
+++ b/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Don-t-pass-most-negative-integer-t.patch
@@ -0,0 +1,33 @@
+From d9b31338153591944d72e62523bad7850b407c63 Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 24 Aug 2021 09:58:29 +0200
+Subject: [PATCH 2/5] aplay: Don't pass most negative integer to abs() in peak
+ calculations
+
+The return value from abs() for the most negative integer is
+undefined.  Cap it properly for the 32bit sample handling.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+---
+ aplay/aplay.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/aplay/aplay.c b/aplay/aplay.c
+index c884346..2543de5 100644
+--- a/aplay/aplay.c
++++ b/aplay/aplay.c
+@@ -1874,7 +1874,10 @@ static void compute_max_peak(u_char *data, size_t samples)
+ 			else
+ 				val = be32toh(*valp);
+ 			val ^= mask;
+-			val = abs(val);
++			if (val == 0x80000000U)
++				val = 0x7fffffff;
++			else
++				val = abs(val);
+ 			if (max_peak[c] < val)
+ 				max_peak[c] = val;
+ 			valp++;
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Fix-conversion-of-unsigned-samples.patch b/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Fix-conversion-of-unsigned-samples.patch
new file mode 100644
index 0000000..92144f8
--- /dev/null
+++ b/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Fix-conversion-of-unsigned-samples.patch
@@ -0,0 +1,54 @@
+From 0ea7bfea83d97fefd18845948350322017a865c2 Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 24 Aug 2021 09:00:40 +0200
+Subject: [PATCH 1/6] aplay: Fix conversion of unsigned samples in peak
+ calculation
+
+The XOR with the mask has to be applied before calculating abs value.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+---
+ aplay/aplay.c | 9 ++++++---
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/aplay/aplay.c b/aplay/aplay.c
+index cc51dcb..91af244 100644
+--- a/aplay/aplay.c
++++ b/aplay/aplay.c
+@@ -1828,7 +1828,8 @@ static void compute_max_peak(u_char *data, size_t samples)
+ 				sval = le16toh(*valp);
+ 			else
+ 				sval = be16toh(*valp);
+-			sval = abs(sval) ^ mask;
++			sval ^= mask;
++			sval = abs(sval);
+ 			if (max_peak[c] < sval)
+ 				max_peak[c] = sval;
+ 			valp++;
+@@ -1848,11 +1849,12 @@ static void compute_max_peak(u_char *data, size_t samples)
+ 			} else {
+ 				val = (valp[0]<<16) | (valp[1]<<8) | valp[2];
+ 			}
++			val ^= mask;
+ 			/* Correct signed bit in 32-bit value */
+ 			if (val & (1<<(bits_per_sample-1))) {
+ 				val |= 0xff<<24;	/* Negate upper bits too */
+ 			}
+-			val = abs(val) ^ mask;
++			val = abs(val);
+ 			if (max_peak[c] < val)
+ 				max_peak[c] = val;
+ 			valp += 3;
+@@ -1871,7 +1873,8 @@ static void compute_max_peak(u_char *data, size_t samples)
+ 				val = le32toh(*valp);
+ 			else
+ 				val = be32toh(*valp);
+-			val = abs(val) ^ mask;
++			val ^= mask;
++			val = abs(val);
+ 			if (max_peak[c] < val)
+ 				max_peak[c] = val;
+ 			valp++;
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Fix-out-of-bound-access-in-stereo-.patch b/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Fix-out-of-bound-access-in-stereo-.patch
new file mode 100644
index 0000000..8855e0e
--- /dev/null
+++ b/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Fix-out-of-bound-access-in-stereo-.patch
@@ -0,0 +1,37 @@
+From dea51861a8626694c6e80121c17a0a38efc2e33c Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 24 Aug 2021 10:06:05 +0200
+Subject: [PATCH 4/5] aplay: Fix out-of-bound access in stereo VU meter drawing
+
+The left channel drawing of a stereo VU meter has a bug where it may
+access a negative array index.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+---
+ aplay/aplay.c | 10 ++++++----
+ 1 file changed, 6 insertions(+), 4 deletions(-)
+
+diff --git a/aplay/aplay.c b/aplay/aplay.c
+index a51a37b..63a4e34 100644
+--- a/aplay/aplay.c
++++ b/aplay/aplay.c
+@@ -1758,10 +1758,12 @@ static void print_vu_meter_stereo(int *perc, int *maxperc)
+ 		if (c)
+ 			memset(line + bar_length + 6 + 1, '#', p);
+ 		else
+-			memset(line + bar_length - p - 1, '#', p);
+-		p = maxperc[c] * bar_length / 100;
+-		if (p > bar_length)
+-			p = bar_length;
++			memset(line + bar_length - p, '#', p);
++		p = maxperc[c] * bar_length / 100 - 1;
++		if (p < 0)
++			p = 0;
++		else if (p >= bar_length)
++			p = bar_length - 1;
+ 		if (c)
+ 			line[bar_length + 6 + 1 + p] = '+';
+ 		else
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Handle-16bit-sample-negative-overf.patch b/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Handle-16bit-sample-negative-overf.patch
new file mode 100644
index 0000000..2c12b35
--- /dev/null
+++ b/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Handle-16bit-sample-negative-overf.patch
@@ -0,0 +1,38 @@
+From 5c4bf63a94ed0c20aca5bafb94ecd05893a45ec1 Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 24 Aug 2021 09:36:33 +0200
+Subject: [PATCH 1/5] aplay: Handle 16bit sample negative overflow in peak
+ calculations
+
+The handling of 16bit samples in the peak calculations has a bug when
+a sample with 0x8000 is passed.  As abs() treats 32bit int, it returns
+0x8000.  And yet the code stores back into 16bit value again.
+
+To fix that overflow, use 32bit value (i.e. val instead of sval) for
+the further calculations.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+---
+ aplay/aplay.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/aplay/aplay.c b/aplay/aplay.c
+index 91af244..c884346 100644
+--- a/aplay/aplay.c
++++ b/aplay/aplay.c
+@@ -1829,9 +1829,9 @@ static void compute_max_peak(u_char *data, size_t samples)
+ 			else
+ 				sval = be16toh(*valp);
+ 			sval ^= mask;
+-			sval = abs(sval);
+-			if (max_peak[c] < sval)
+-				max_peak[c] = sval;
++			val = abs(sval);
++			if (max_peak[c] < val)
++				max_peak[c] = val;
+ 			valp++;
+ 			if (vumeter == VUMETER_STEREO)
+ 				c = !c;
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Handle-upper-bound-in-peak-calcula.patch b/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Handle-upper-bound-in-peak-calcula.patch
new file mode 100644
index 0000000..ac8206f
--- /dev/null
+++ b/media-sound/alsa-utils/files/alsa-utils-1.2.1-aplay-Handle-upper-bound-in-peak-calcula.patch
@@ -0,0 +1,29 @@
+From 2efe124c31360cf0156dd0e5e7cdd52d1346a5c0 Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 24 Aug 2021 10:00:26 +0200
+Subject: [PATCH 3/5] aplay: Handle upper bound in peak calculations
+
+Make sure that the calculated max_peak[] won't go beyond the sample
+max resolution.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+---
+ aplay/aplay.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/aplay/aplay.c b/aplay/aplay.c
+index 2543de5..a51a37b 100644
+--- a/aplay/aplay.c
++++ b/aplay/aplay.c
+@@ -1898,6 +1898,8 @@ static void compute_max_peak(u_char *data, size_t samples)
+ 		max = 0x7fffffff;
+ 
+ 	for (c = 0; c < ichans; c++) {
++		if (max_peak[c] > max)
++			max_peak[c] = max;
+ 		if (bits_per_sample > 16)
+ 			perc[c] = max_peak[c] / (max / 100);
+ 		else
+-- 
+2.33.0.259.gc128427fd7-goog
+
diff --git a/media-sound/audio_streams/audio_streams-0.1.0-r28.ebuild b/media-sound/audio_streams/audio_streams-0.1.0-r28.ebuild
deleted file mode 100644
index e2137a2..0000000
--- a/media-sound/audio_streams/audio_streams-0.1.0-r28.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="5bb2043d82a16b88a5353e167ca1d628a538744e"
-CROS_WORKON_TREE="e5a0ad587f560a2b9eb5321c3eaff76ed3cf5626"
-CROS_WORKON_LOCALNAME="adhd"
-CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
-# We don't use CROS_WORKON_OUTOFTREE_BUILD here since audio_streams/Cargo.toml
-# is using "provided by ebuild" macro which supported by cros-rust
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="audio_streams"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Crate provides a basic interface for playing audio."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/audio_streams"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-DEPEND="
-	dev-rust/sync:=
-	dev-rust/sys_util:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}
-	!<=media-sound/audio_streams-0.1.0-r7
-"
diff --git a/media-sound/audio_streams/audio_streams-0.1.0-r36.ebuild b/media-sound/audio_streams/audio_streams-0.1.0-r36.ebuild
new file mode 100644
index 0000000..a0b137b
--- /dev/null
+++ b/media-sound/audio_streams/audio_streams-0.1.0-r36.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="be3443cd10cdfb85ddb5df77b377d7f6b34e311a"
+CROS_WORKON_TREE="ba168cd4a4877aafcfca4aa5f9e548d6416ac96e"
+CROS_WORKON_LOCALNAME="../platform/crosvm"
+CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
+# We don't use CROS_WORKON_OUTOFTREE_BUILD here since audio_streams/Cargo.toml
+# is using "provided by ebuild" macro which supported by cros-rust
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="audio_streams"
+
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Crate provides a basic interface for playing audio."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/audio_streams"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test"
+
+DEPEND="
+	>=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2
+	dev-rust/cros_async:=
+	=dev-rust/remain-0.2*:=
+	dev-rust/sync:=
+	dev-rust/sys_util:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}
+	!<=media-sound/audio_streams-0.1.0-r7
+"
diff --git a/media-sound/audio_streams/audio_streams-9999.ebuild b/media-sound/audio_streams/audio_streams-9999.ebuild
index f131925..23eea23 100644
--- a/media-sound/audio_streams/audio_streams-9999.ebuild
+++ b/media-sound/audio_streams/audio_streams-9999.ebuild
@@ -3,13 +3,16 @@
 
 EAPI="7"
 
-CROS_WORKON_LOCALNAME="adhd"
-CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
+CROS_WORKON_LOCALNAME="../platform/crosvm"
+CROS_WORKON_PROJECT="chromiumos/platform/crosvm"
 # We don't use CROS_WORKON_OUTOFTREE_BUILD here since audio_streams/Cargo.toml
 # is using "provided by ebuild" macro which supported by cros-rust
 CROS_WORKON_INCREMENTAL_BUILD=1
 CROS_WORKON_SUBTREE="audio_streams"
 
+# Pupr handles uprevs of crosvm.
+CROS_WORKON_MANUAL_UPREV="1"
+
 inherit cros-workon cros-rust
 
 DESCRIPTION="Crate provides a basic interface for playing audio."
@@ -20,8 +23,12 @@
 IUSE="test"
 
 DEPEND="
+	>=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2
+	dev-rust/cros_async:=
+	=dev-rust/remain-0.2*:=
 	dev-rust/sync:=
 	dev-rust/sys_util:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
 "
 # (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
 # installing binpkgs since the full source tree is required to use the crate.
diff --git a/media-sound/cras-sys/cras-sys-0.1.0-r48.ebuild b/media-sound/cras-sys/cras-sys-0.1.0-r48.ebuild
deleted file mode 100644
index 3e164e7..0000000
--- a/media-sound/cras-sys/cras-sys-0.1.0-r48.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="45f45bc937c6a57b68a4534fb6e64f1859dff617"
-CROS_WORKON_TREE=("6c8939340ea089d520f7153d66be9e8690b5d594" "269d67a227b2d3fedb9eaef0322bd0c6f986b9da")
-CROS_RUST_SUBDIR="cras/client/cras-sys"
-# TODO(b/175640259) Fix tests for ARM.
-CROS_RUST_TEST_DIRECT_EXEC_ONLY="yes"
-
-CROS_WORKON_LOCALNAME="adhd"
-CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
-# We don't use CROS_WORKON_OUTOFTREE_BUILD here since cras-sys/Cargo.toml is
-# using "provided by ebuild" macro which supported by cros-rust.
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} cras/src/common"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Crate for CRAS C-structures generated by bindgen"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/cras-sys"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-DEPEND="
-	dev-rust/data_model:=
-	media-sound/audio_streams:=
-	virtual/bindgen:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}
-	!<=media-sound/cras-sys-0.1.0-r10
-"
diff --git a/media-sound/cras-sys/cras-sys-0.1.0-r57.ebuild b/media-sound/cras-sys/cras-sys-0.1.0-r57.ebuild
new file mode 100644
index 0000000..661ab54
--- /dev/null
+++ b/media-sound/cras-sys/cras-sys-0.1.0-r57.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="8c9d6366d9b3c7c2d6e2c45698a74068cacfe9d2"
+CROS_WORKON_TREE=("b289b15e5b44db36f7f2721430997b8f55122071" "263fbad86e105cd9743a800885889067a4fa8d5c")
+CROS_RUST_SUBDIR="cras/client/cras-sys"
+# TODO(b/175640259) Fix tests for ARM.
+CROS_RUST_TEST_DIRECT_EXEC_ONLY="yes"
+
+CROS_WORKON_LOCALNAME="adhd"
+CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
+# We don't use CROS_WORKON_OUTOFTREE_BUILD here since cras-sys/Cargo.toml is
+# using "provided by ebuild" macro which supported by cros-rust.
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} cras/src/common"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Crate for CRAS C-structures generated by bindgen"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/cras-sys"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test"
+
+DEPEND="
+	dev-rust/data_model:=
+	media-sound/audio_streams:=
+	virtual/bindgen:=
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}
+	!<=media-sound/cras-sys-0.1.0-r10
+"
diff --git a/media-sound/cras_bench/Manifest b/media-sound/cras_bench/Manifest
index eb304e7..edb5367 100644
--- a/media-sound/cras_bench/Manifest
+++ b/media-sound/cras_bench/Manifest
@@ -1,3 +1,4 @@
+DIST bazel-skylib-1.0.3.tar.gz 30711 BLAKE2B 86d6db9be4e627f6695329e16e8f9b6c2d0d683142a15f62c6924941405ab1d12292818ebf16642fc8d2664b0f113a35e002210034e80de14726387fcdafd765 SHA512 e28e62214b6c1e6724d26ebbee7c0b436b13e7b054d598788c15f03a56d248378068f5d29fae722a19d4519e2568983011ff50a13577dbc1bd174464ef4a49cc
 DIST bazelbuild-rules_cc-01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip 171775 BLAKE2B ec0ece4555d779bc8380937baac517a8adf3b0176c4bfb1324943a91366ad9688f528a4bd69e4587bcc4ad427c71a53016a3e2d32a050d9d4ec99caac4967a8e SHA512 5c5e82f276c1c962fbd9c7ddf21df9aa4291f3285f3fa07cd2c2790475ccba670b0627fc3d6faedd1508eca4d80bdae64a31383f001f04f3031112be81c3e697
 DIST bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip 9422 BLAKE2B bbc45c97551ee8126335b611ffca6574dac843d4db9b3221b10d26487f8eecfe38ba0cd67a4039a3ad921c25fea6294c43e4f4e7a57a060a30791acd6c4f9d39 SHA512 ba06242feb711e7fb6e821fd9ac029248b4f3e466fb1acf971d0db8196f3efe4d114ef137acbe4913073f8cbe8ccab4d47d8bafa21b867b2d6a6d57f5a647f0c
 DIST google-benchmark-1.5.5.tar.gz 176710 BLAKE2B 394f8b34873ccd45100e3b1f58dd7819d443733d9224ff003a9410ca30d8bacc6c7736b74dd50623144767e840dbc3cd9ff819a60de6e22a00b1edaf802f0992 SHA512 91a2cdf0245625c657b9bb8d76c7d616a99eaed333e42b34ceff4e996b8fa6027b1c7313a815e7b441d2f6e2e1244c139a0911d585bf0d2e767ac3cea23a67d1
diff --git a/media-sound/cras_bench/cras_bench-0.0.1-r3.ebuild b/media-sound/cras_bench/cras_bench-0.0.1-r3.ebuild
deleted file mode 100644
index 3bc894f..0000000
--- a/media-sound/cras_bench/cras_bench-0.0.1-r3.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="f9922af83c912a308a83846662b338ce51a91eec"
-CROS_WORKON_TREE="e62b24ca0c95c5db285704697a8d941cbdbb742c"
-CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
-CROS_WORKON_LOCALNAME="adhd"
-CROS_WORKON_USE_VCSID=1
-
-inherit toolchain-funcs cros-workon cros-bazel
-
-DESCRIPTION="Performance benchmarks for ChromeOS audio server"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/"
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="
-	media-libs/alsa-lib
-"
-RDEPEND="${DEPEND}"
-
-bazel_external_uris="
-	https://github.com/bazelbuild/rules_cc/archive/01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip -> bazelbuild-rules_cc-01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip
-	https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip
-	https://github.com/google/benchmark/archive/refs/tags/v1.5.5.tar.gz -> google-benchmark-1.5.5.tar.gz
-"
-SRC_URI="${bazel_external_uris}"
-
-src_unpack() {
-	bazel_load_distfiles "${bazel_external_uris}"
-	cros-workon_src_unpack
-}
-
-src_prepare() {
-	cd cras || die
-	bazel_setup_crosstool
-	default
-}
-
-src_configure() {
-	cros_optimize_package_for_speed
-}
-
-src_compile() {
-	cd cras || die
-	ebazel build //src/benchmark:cras_bench
-}
-
-src_install() {
-	dobin cras/bazel-bin/src/benchmark/cras_bench
-}
diff --git a/media-sound/cras_bench/cras_bench-0.0.1-r86.ebuild b/media-sound/cras_bench/cras_bench-0.0.1-r86.ebuild
new file mode 100644
index 0000000..217495fe
--- /dev/null
+++ b/media-sound/cras_bench/cras_bench-0.0.1-r86.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="1a243e06d88e4c819d1681546383316411446409"
+CROS_WORKON_TREE="f415ee0442ea42533f2915076efce40c27901850"
+CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
+CROS_WORKON_LOCALNAME="adhd"
+CROS_WORKON_USE_VCSID=1
+
+inherit toolchain-funcs cros-workon cros-bazel
+
+DESCRIPTION="Performance benchmarks for ChromeOS audio server"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/"
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="+cras-apm"
+
+DEPEND="
+	media-libs/alsa-lib
+	cras-apm? ( media-libs/webrtc-apm:= )
+"
+RDEPEND="${DEPEND}"
+
+bazel_external_uris="
+	https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz -> bazel-skylib-1.0.3.tar.gz
+	https://github.com/bazelbuild/rules_cc/archive/01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip -> bazelbuild-rules_cc-01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip
+	https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip
+	https://github.com/google/benchmark/archive/refs/tags/v1.5.5.tar.gz -> google-benchmark-1.5.5.tar.gz
+"
+SRC_URI="${bazel_external_uris}"
+
+src_unpack() {
+	bazel_load_distfiles "${bazel_external_uris}"
+	cros-workon_src_unpack
+}
+
+src_prepare() {
+	export JAVA_HOME=$(ROOT="${BROOT}" java-config --jdk-home)
+	cd cras || die
+	bazel_setup_crosstool
+	default
+}
+
+src_configure() {
+	cros_optimize_package_for_speed
+}
+
+src_compile() {
+	cd cras || die
+	args=(
+		"$(use cras-apm && echo "--//src/benchmark:apm=true")"
+	)
+	ebazel build //src/benchmark:cras_bench "${args[*]}"
+}
+
+src_install() {
+	dobin cras/bazel-bin/src/benchmark/cras_bench
+}
diff --git a/media-sound/cras_bench/cras_bench-9999.ebuild b/media-sound/cras_bench/cras_bench-9999.ebuild
index 439bcb7..fc939be 100644
--- a/media-sound/cras_bench/cras_bench-9999.ebuild
+++ b/media-sound/cras_bench/cras_bench-9999.ebuild
@@ -12,14 +12,16 @@
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/"
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE=""
+IUSE="+cras-apm"
 
 DEPEND="
 	media-libs/alsa-lib
+	cras-apm? ( media-libs/webrtc-apm:= )
 "
 RDEPEND="${DEPEND}"
 
 bazel_external_uris="
+	https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz -> bazel-skylib-1.0.3.tar.gz
 	https://github.com/bazelbuild/rules_cc/archive/01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip -> bazelbuild-rules_cc-01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip
 	https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip
 	https://github.com/google/benchmark/archive/refs/tags/v1.5.5.tar.gz -> google-benchmark-1.5.5.tar.gz
@@ -32,6 +34,7 @@
 }
 
 src_prepare() {
+	export JAVA_HOME=$(ROOT="${BROOT}" java-config --jdk-home)
 	cd cras || die
 	bazel_setup_crosstool
 	default
@@ -43,7 +46,10 @@
 
 src_compile() {
 	cd cras || die
-	ebazel build //src/benchmark:cras_bench
+	args=(
+		"$(use cras-apm && echo "--//src/benchmark:apm=true")"
+	)
+	ebazel build //src/benchmark:cras_bench "${args[*]}"
 }
 
 src_install() {
diff --git a/media-sound/cras_rust/cras_rust-0.1.0-r6.ebuild b/media-sound/cras_rust/cras_rust-0.1.0-r6.ebuild
deleted file mode 100644
index ff89f89..0000000
--- a/media-sound/cras_rust/cras_rust-0.1.0-r6.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="86e1a560610cb3a8dfbf6cedb7984c85830d6855"
-CROS_WORKON_TREE="56f51edbec0ccbbca4e4cdd4694e849e4ae48f42"
-CROS_RUST_SUBDIR="cras/src/server/rust"
-
-CROS_WORKON_LOCALNAME="adhd"
-CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
-# We don't use CROS_WORKON_OUTOFTREE_BUILD here since cras/src/server/rust is
-# using the `provided by ebuild` macro from the cros-rust eclass
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Rust code which is used within cras"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/src/server/rust"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-DEPEND="
-	dev-rust/libc:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}"
-
-src_install() {
-	dolib.a "$(cros-rust_get_build_dir)/libcras_rust.a"
-	cros-rust_src_install
-}
diff --git a/media-sound/cras_rust/cras_rust-0.1.0-r7.ebuild b/media-sound/cras_rust/cras_rust-0.1.0-r7.ebuild
new file mode 100644
index 0000000..3314a7a
--- /dev/null
+++ b/media-sound/cras_rust/cras_rust-0.1.0-r7.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="df9da8b0081a98601f461848af9ffc94c8990536"
+CROS_WORKON_TREE="59ac7e6fe81d2514470c8a5e255c595a87f707e2"
+CROS_RUST_SUBDIR="cras/src/server/rust"
+
+CROS_WORKON_LOCALNAME="adhd"
+CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
+# We don't use CROS_WORKON_OUTOFTREE_BUILD here since cras/src/server/rust is
+# using the `provided by ebuild` macro from the cros-rust eclass
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Rust code which is used within cras"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/src/server/rust"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test"
+
+DEPEND="
+	dev-rust/libc:=
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}"
+
+src_install() {
+	dolib.a "$(cros-rust_get_build_dir)/libcras_rust.a"
+	cros-rust_src_install
+}
diff --git a/media-sound/cras_tests/cras_tests-0.1.0-r38.ebuild b/media-sound/cras_tests/cras_tests-0.1.0-r38.ebuild
deleted file mode 100644
index 55c4c2a..0000000
--- a/media-sound/cras_tests/cras_tests-0.1.0-r38.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="82ba61f11c1f49704db5fcaf7b14ff1cb96860cc"
-CROS_WORKON_TREE=("494f6b2f84535576baf70eb7303bb7a60f8f94da" "4df4730b8dde3019b84b90e0b6785d53ae1480c8")
-CROS_RUST_SUBDIR="cras/client/cras_tests"
-
-CROS_WORKON_LOCALNAME="adhd"
-CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
-# We don't use CROS_WORKON_OUTOFTREE_BUILD here since cras-sys/Cargo.toml is
-# using "provided by ebuild" macro which supported by cros-rust
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} cras/dbus_bindings"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Rust version cras test client"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/cras_tests"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-DEPEND="
-	dev-rust/chromeos-dbus-bindings:=
-	=dev-rust/dbus-0.8*:=
-	>=dev-rust/getopts-0.2.18:= <dev-rust/getopts-0.3
-	dev-rust/hound:=
-	dev-rust/sys_util:=
-	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
-	media-sound/audio_streams:=
-	media-sound/libcras:=
-"
-# DEPEND isn't needed in RDEPEND because nothing from this ebuild is installed
-# to the cros_rust_registry.
-RDEPEND="
-	!<=media-sound/cras_tests-0.1.0-r12
-"
-
-src_install() {
-	dobin "$(cros-rust_get_build_dir)/cras_tests"
-}
diff --git a/media-sound/cras_tests/cras_tests-0.1.0-r43.ebuild b/media-sound/cras_tests/cras_tests-0.1.0-r43.ebuild
new file mode 100644
index 0000000..8e299f7
--- /dev/null
+++ b/media-sound/cras_tests/cras_tests-0.1.0-r43.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="6be5b24a490474375f6c6e9183dbec88f8383340"
+CROS_WORKON_TREE=("8ef7917c4c480d70df1d6da4e2652a0bfe321d16" "92ccb6beb362add53c23dfbaa25c2ef099d732c7")
+CROS_RUST_SUBDIR="cras/client/cras_tests"
+
+CROS_WORKON_LOCALNAME="adhd"
+CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
+# We don't use CROS_WORKON_OUTOFTREE_BUILD here since cras-sys/Cargo.toml is
+# using "provided by ebuild" macro which supported by cros-rust
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR} cras/dbus_bindings"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Rust version cras test client"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/cras_tests"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test"
+
+DEPEND="
+	dev-rust/chromeos-dbus-bindings:=
+	=dev-rust/dbus-0.9*:=
+	>=dev-rust/getopts-0.2.18:= <dev-rust/getopts-0.3
+	dev-rust/hound:=
+	dev-rust/sys_util:=
+	>=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+	media-sound/audio_streams:=
+	media-sound/libcras:=
+"
+# DEPEND isn't needed in RDEPEND because nothing from this ebuild is installed
+# to the cros_rust_registry.
+RDEPEND="
+	!<=media-sound/cras_tests-0.1.0-r12
+"
+
+src_install() {
+	dobin "$(cros-rust_get_build_dir)/cras_tests"
+}
diff --git a/media-sound/cras_tests/cras_tests-9999.ebuild b/media-sound/cras_tests/cras_tests-9999.ebuild
index e8d4cb6..24b0602 100644
--- a/media-sound/cras_tests/cras_tests-9999.ebuild
+++ b/media-sound/cras_tests/cras_tests-9999.ebuild
@@ -22,7 +22,7 @@
 
 DEPEND="
 	dev-rust/chromeos-dbus-bindings:=
-	=dev-rust/dbus-0.8*:=
+	=dev-rust/dbus-0.9*:=
 	>=dev-rust/getopts-0.2.18:= <dev-rust/getopts-0.3
 	dev-rust/hound:=
 	dev-rust/sys_util:=
diff --git a/media-sound/libcras/libcras-0.1.0-r56.ebuild b/media-sound/libcras/libcras-0.1.0-r56.ebuild
deleted file mode 100644
index 7a116b8..0000000
--- a/media-sound/libcras/libcras-0.1.0-r56.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="d468e33178a76b9c3f0e28f3e1cbf518538d42b4"
-CROS_WORKON_TREE="ec4dd0d4955052d5311671f6724e123d6753116c"
-CROS_RUST_SUBDIR="cras/client/libcras"
-
-CROS_WORKON_LOCALNAME="adhd"
-CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
-# We don't use CROS_WORKON_OUTOFTREE_BUILD here since cras-sys/Cargo.toml is
-# using "provided by ebuild" macro which supported by cros-rust
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Rust version libcras"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/libcras"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-DEPEND="
-	>=dev-rust/libc-0.2.44:=
-	dev-rust/data_model:=
-	dev-rust/sys_util:=
-	media-sound/audio_streams:=
-	media-sound/cras-sys:=
-"
-# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
-# installing binpkgs since the full source tree is required to use the crate.
-RDEPEND="${DEPEND}
-	!<=media-sound/libcras-0.1.0-r21
-"
diff --git a/media-sound/libcras/libcras-0.1.0-r64.ebuild b/media-sound/libcras/libcras-0.1.0-r64.ebuild
new file mode 100644
index 0000000..6ec2be9
--- /dev/null
+++ b/media-sound/libcras/libcras-0.1.0-r64.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="fb3e0dd0ea527119fd29336d343d7b59e7cdd88a"
+CROS_WORKON_TREE="ebc5730c39c1062b2b96871d97e2cee677de683d"
+CROS_RUST_SUBDIR="cras/client/libcras"
+
+CROS_WORKON_LOCALNAME="adhd"
+CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
+# We don't use CROS_WORKON_OUTOFTREE_BUILD here since cras-sys/Cargo.toml is
+# using "provided by ebuild" macro which supported by cros-rust
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Rust version libcras"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/libcras"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test"
+
+DEPEND="
+	>=dev-rust/libc-0.2.44:=
+	>=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2
+	dev-rust/cros_async:=
+	dev-rust/data_model:=
+	dev-rust/sys_util:=
+	media-sound/audio_streams:=
+	media-sound/cras-sys:=
+"
+# (crbug.com/1182669): build-time only deps need to be in RDEPEND so they are pulled in when
+# installing binpkgs since the full source tree is required to use the crate.
+RDEPEND="${DEPEND}
+	!<=media-sound/libcras-0.1.0-r21
+"
diff --git a/media-sound/libcras/libcras-9999.ebuild b/media-sound/libcras/libcras-9999.ebuild
index 6f102ed..9ad27cd 100644
--- a/media-sound/libcras/libcras-9999.ebuild
+++ b/media-sound/libcras/libcras-9999.ebuild
@@ -23,6 +23,8 @@
 
 DEPEND="
 	>=dev-rust/libc-0.2.44:=
+	>=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2
+	dev-rust/cros_async:=
 	dev-rust/data_model:=
 	dev-rust/sys_util:=
 	media-sound/audio_streams:=
diff --git a/media-sound/sound_card_init/sound_card_init-0.1.0-r17.ebuild b/media-sound/sound_card_init/sound_card_init-0.1.0-r17.ebuild
deleted file mode 100644
index e36056a..0000000
--- a/media-sound/sound_card_init/sound_card_init-0.1.0-r17.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="4adb42db9ad5eadf04f5755a294ba8f6538d4074"
-CROS_WORKON_TREE="bbabf117ce1fac3718c2d641b9e289fddde8cbae"
-CROS_WORKON_LOCALNAME="adhd"
-CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
-# We don't use CROS_WORKON_OUTOFTREE_BUILD here since sound_card_init/Cargo.toml
-# is using "provided by ebuild" macro which supported by cros-rust
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE="sound_card_init"
-
-inherit cros-workon cros-rust udev user
-
-DESCRIPTION="Sound Card Initializer"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/sound_card_init"
-
-LICENSE="BSD-Google"
-KEYWORDS="-* amd64"
-
-DEPEND="
-	dev-rust/cc:=
-	dev-rust/getopts:=
-	dev-rust/sys_util:=
-	dev-rust/serde_yaml:=
-	dev-rust/remain:=
-	media-sound/audio_streams:=
-	media-sound/cros_alsa:=
-	media-sound/libcras:=
-	media-sound/sof_sys:=
-"
-
-src_install() {
-	dobin "$(cros-rust_get_build_dir)/sound_card_init"
-
-	# Add upstart job for sound_card_init.
-	insinto /etc/init
-	doins sound_card_init.conf
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	newins "seccomp/sound_card_init-seccomp-${ARCH}.policy" sound_card_init-seccomp.policy
-
-	udev_dorules 99-sound_card_init.rules
-
-}
-
-pkg_preinst() {
-	enewuser "sound_card_init"
-	enewgroup "sound_card_init"
-
-	cros-rust_pkg_preinst
-}
diff --git a/media-sound/sound_card_init/sound_card_init-0.1.0-r28.ebuild b/media-sound/sound_card_init/sound_card_init-0.1.0-r28.ebuild
new file mode 100644
index 0000000..66faf52
--- /dev/null
+++ b/media-sound/sound_card_init/sound_card_init-0.1.0-r28.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="1a243e06d88e4c819d1681546383316411446409"
+CROS_WORKON_TREE="6d28ecc8b67303d3affc323dbd0fa214f6bf2f21"
+CROS_WORKON_LOCALNAME="adhd"
+CROS_WORKON_PROJECT="chromiumos/third_party/adhd"
+# We don't use CROS_WORKON_OUTOFTREE_BUILD here since sound_card_init/Cargo.toml
+# is using "provided by ebuild" macro which supported by cros-rust
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE="sound_card_init"
+
+inherit cros-workon cros-rust udev user
+
+DESCRIPTION="Sound Card Initializer"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/sound_card_init"
+
+LICENSE="BSD-Google"
+KEYWORDS="-* amd64 arm"
+
+DEPEND="
+	dev-rust/cc:=
+	dev-rust/getopts:=
+	dev-rust/sys_util:=
+	dev-rust/serde_yaml:=
+	dev-rust/remain:=
+	media-sound/audio_streams:=
+	media-sound/cros_alsa:=
+	media-sound/libcras:=
+	media-sound/sof_sys:=
+"
+
+src_install() {
+	dobin "$(cros-rust_get_build_dir)/sound_card_init"
+
+	# Add upstart job for sound_card_init.
+	insinto /etc/init
+	doins sound_card_init.conf
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	newins "seccomp/sound_card_init-seccomp-${ARCH}.policy" sound_card_init-seccomp.policy
+
+	udev_dorules 99-sound_card_init.rules
+
+}
+
+pkg_preinst() {
+	enewuser "sound_card_init"
+	enewgroup "sound_card_init"
+
+	cros-rust_pkg_preinst
+}
diff --git a/media-sound/sound_card_init/sound_card_init-9999.ebuild b/media-sound/sound_card_init/sound_card_init-9999.ebuild
index d2d56e9..ddd8c60 100644
--- a/media-sound/sound_card_init/sound_card_init-9999.ebuild
+++ b/media-sound/sound_card_init/sound_card_init-9999.ebuild
@@ -16,7 +16,7 @@
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/sound_card_init"
 
 LICENSE="BSD-Google"
-KEYWORDS="-* ~amd64"
+KEYWORDS="-* ~amd64 ~arm"
 
 DEPEND="
 	dev-rust/cc:=
diff --git a/media-video/libva-utils/Manifest b/media-video/libva-utils/Manifest
index 010d98e..c0a590d 100644
--- a/media-video/libva-utils/Manifest
+++ b/media-video/libva-utils/Manifest
@@ -1 +1 @@
-DIST libva-utils-2.11.1.tar.gz 1205472 BLAKE2B 251a318d10eb5907e0ee54f101a153cfe76a98d61fc1f4fabf890901b52e980439d77acfbb4e1b566d361a7cda5c7ab504e575067eb932b0e121904be34b801f SHA512 d64c4767269a810386e02426fce3bde6aa693ac899ace22900e4ae4918dfe461736fe0a031db36751281d5bd78960354cdfa4ca13c5f7c30cc67d05abdd0bcd2
+DIST libva-utils-2.12.0.tar.gz 1213135 BLAKE2B 259ed063e178adc22aa9d69d92715420dd82f25c8b85ce946e13539d96723ee80d406052e4f7a646721f3d4ee4743ffea816c6916f4a5fd6aeeabf9bce1e6671 SHA512 38ef214fa8cb67b5252915e134333fab46d911cc4c9884576013083023e782bccf045ec01534024e901de1143f1ae85f52cdf6e6fe087cb9f3bf727c206d9746
diff --git a/media-video/libva-utils/libva-utils-2.11.1-r1.ebuild b/media-video/libva-utils/libva-utils-2.11.1-r1.ebuild
deleted file mode 120000
index d53f141..0000000
--- a/media-video/libva-utils/libva-utils-2.11.1-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-libva-utils-2.11.1.ebuild
\ No newline at end of file
diff --git a/media-video/libva-utils/libva-utils-2.12.0-r1.ebuild b/media-video/libva-utils/libva-utils-2.12.0-r1.ebuild
new file mode 120000
index 0000000..64b7fdd
--- /dev/null
+++ b/media-video/libva-utils/libva-utils-2.12.0-r1.ebuild
@@ -0,0 +1 @@
+libva-utils-2.12.0.ebuild
\ No newline at end of file
diff --git a/media-video/libva-utils/libva-utils-2.11.1.ebuild b/media-video/libva-utils/libva-utils-2.12.0.ebuild
similarity index 100%
rename from media-video/libva-utils/libva-utils-2.11.1.ebuild
rename to media-video/libva-utils/libva-utils-2.12.0.ebuild
diff --git a/metadata/md5-cache/app-accessibility/brltty-6.3 b/metadata/md5-cache/app-accessibility/brltty-6.3
index 62dc30e..d704d7a 100644
--- a/metadata/md5-cache/app-accessibility/brltty-6.3
+++ b/metadata/md5-cache/app-accessibility/brltty-6.3
@@ -10,5 +10,5 @@
 REQUIRED_USE=java? ( api ) ocaml? ( api ) python? ( api ) tcl? ( api )
 SLOT=0
 SRC_URI=http://brltty.app/archive/brltty-6.3.tar.xz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	findlib	d2cdd99abbdd240f5ccef654e38a4ea9	flag-o-matic	5d5921a298e95441da2f85be419894c0	java-pkg-opt-2	be255db325e3af8fbf3506cf63998341	java-utils-2	82402a1c36ab4bf38f3313a543f9e827	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	findlib	d2cdd99abbdd240f5ccef654e38a4ea9	flag-o-matic	5d5921a298e95441da2f85be419894c0	java-pkg-opt-2	be255db325e3af8fbf3506cf63998341	java-utils-2	82402a1c36ab4bf38f3313a543f9e827	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
 _md5_=df0e10988861e37df5c2fbfedfc5f8d1
diff --git a/metadata/md5-cache/app-accessibility/brltty-6.3-r3 b/metadata/md5-cache/app-accessibility/brltty-6.3-r3
index 62dc30e..d704d7a 100644
--- a/metadata/md5-cache/app-accessibility/brltty-6.3-r3
+++ b/metadata/md5-cache/app-accessibility/brltty-6.3-r3
@@ -10,5 +10,5 @@
 REQUIRED_USE=java? ( api ) ocaml? ( api ) python? ( api ) tcl? ( api )
 SLOT=0
 SRC_URI=http://brltty.app/archive/brltty-6.3.tar.xz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	findlib	d2cdd99abbdd240f5ccef654e38a4ea9	flag-o-matic	5d5921a298e95441da2f85be419894c0	java-pkg-opt-2	be255db325e3af8fbf3506cf63998341	java-utils-2	82402a1c36ab4bf38f3313a543f9e827	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	findlib	d2cdd99abbdd240f5ccef654e38a4ea9	flag-o-matic	5d5921a298e95441da2f85be419894c0	java-pkg-opt-2	be255db325e3af8fbf3506cf63998341	java-utils-2	82402a1c36ab4bf38f3313a543f9e827	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
 _md5_=df0e10988861e37df5c2fbfedfc5f8d1
diff --git a/metadata/md5-cache/app-accessibility/espeak-ng-1.49.3.12 b/metadata/md5-cache/app-accessibility/espeak-ng-1.49.3.12
deleted file mode 100644
index d4b6e4b..0000000
--- a/metadata/md5-cache/app-accessibility/espeak-ng-1.49.3.12
+++ /dev/null
@@ -1,9 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Text-to-speech engine
-EAPI=6
-HOMEPAGE=https://github.com/espeak-ng/espeak-ng
-KEYWORDS=*
-LICENSE=GPL-3
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/espeak-ng-1.49.3.12.tar.gz
-_md5_=27b4f23baf72e2c3dd794ac7915686fc
diff --git a/metadata/md5-cache/app-accessibility/espeak-ng-1.49.3.13 b/metadata/md5-cache/app-accessibility/espeak-ng-1.49.3.13
new file mode 100644
index 0000000..66adebb
--- /dev/null
+++ b/metadata/md5-cache/app-accessibility/espeak-ng-1.49.3.13
@@ -0,0 +1,9 @@
+DEFINED_PHASES=install
+DESCRIPTION=Text-to-speech engine
+EAPI=6
+HOMEPAGE=https://github.com/espeak-ng/espeak-ng
+KEYWORDS=*
+LICENSE=GPL-3
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/espeak-ng-1.49.3.13.tar.gz
+_md5_=27b4f23baf72e2c3dd794ac7915686fc
diff --git a/metadata/md5-cache/app-accessibility/googletts-26.5 b/metadata/md5-cache/app-accessibility/googletts-26.5
deleted file mode 100644
index b42c3db..0000000
--- a/metadata/md5-cache/app-accessibility/googletts-26.5
+++ /dev/null
@@ -1,9 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Google text-to-speech engine
-EAPI=6
-KEYWORDS=*
-LICENSE=BSD-Google
-RDEPEND=!<chromeos-base/common-assets-0.0.2-r123
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/googletts-26.5.tar.xz
-_md5_=5d2e42951e6bc40d79d0eb72c692e5a6
diff --git a/metadata/md5-cache/app-accessibility/googletts-26.6.1 b/metadata/md5-cache/app-accessibility/googletts-26.6.1
new file mode 100644
index 0000000..4ad9d51
--- /dev/null
+++ b/metadata/md5-cache/app-accessibility/googletts-26.6.1
@@ -0,0 +1,9 @@
+DEFINED_PHASES=install
+DESCRIPTION=Google text-to-speech engine
+EAPI=6
+KEYWORDS=*
+LICENSE=BSD-Google
+RDEPEND=!<chromeos-base/common-assets-0.0.2-r123
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/googletts-26.6.1.tar.xz
+_md5_=5d2e42951e6bc40d79d0eb72c692e5a6
diff --git a/metadata/md5-cache/app-admin/eselect-opengl-1.2.4 b/metadata/md5-cache/app-admin/eselect-opengl-1.2.4
index 3e2bb01..29b5b95 100644
--- a/metadata/md5-cache/app-admin/eselect-opengl-1.2.4
+++ b/metadata/md5-cache/app-admin/eselect-opengl-1.2.4
@@ -8,5 +8,5 @@
 RDEPEND=>=app-admin/eselect-1.2.4
 SLOT=0
 SRC_URI=http://dev.gentooexperimental.org/~scarabeus//glext.h.67.xz http://dev.gentooexperimental.org/~scarabeus//glxext.h.32.xz mirror://gentoo/eselect-opengl-1.2.4.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=238a25db0676869b5d039834eed0ae80
diff --git a/metadata/md5-cache/app-admin/eselect-opengl-1.2.4-r1 b/metadata/md5-cache/app-admin/eselect-opengl-1.2.4-r1
index 3e2bb01..29b5b95 100644
--- a/metadata/md5-cache/app-admin/eselect-opengl-1.2.4-r1
+++ b/metadata/md5-cache/app-admin/eselect-opengl-1.2.4-r1
@@ -8,5 +8,5 @@
 RDEPEND=>=app-admin/eselect-1.2.4
 SLOT=0
 SRC_URI=http://dev.gentooexperimental.org/~scarabeus//glext.h.67.xz http://dev.gentooexperimental.org/~scarabeus//glxext.h.32.xz mirror://gentoo/eselect-opengl-1.2.4.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=238a25db0676869b5d039834eed0ae80
diff --git a/metadata/md5-cache/app-admin/rsyslog-8.2102.0 b/metadata/md5-cache/app-admin/rsyslog-8.2102.0
index e8749b3..596ce24 100644
--- a/metadata/md5-cache/app-admin/rsyslog-8.2102.0
+++ b/metadata/md5-cache/app-admin/rsyslog-8.2102.0
@@ -12,5 +12,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=https://www.rsyslog.com/files/download/rsyslog/rsyslog-8.2102.0.tar.gz doc? ( https://www.rsyslog.com/files/download/rsyslog/rsyslog-doc-8.2102.0.tar.gz )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=07180f9054f9cf7de6c305e225f632d6
diff --git a/metadata/md5-cache/app-admin/rsyslog-8.2102.0-r3 b/metadata/md5-cache/app-admin/rsyslog-8.2102.0-r3
index e8749b3..596ce24 100644
--- a/metadata/md5-cache/app-admin/rsyslog-8.2102.0-r3
+++ b/metadata/md5-cache/app-admin/rsyslog-8.2102.0-r3
@@ -12,5 +12,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=https://www.rsyslog.com/files/download/rsyslog/rsyslog-8.2102.0.tar.gz doc? ( https://www.rsyslog.com/files/download/rsyslog/rsyslog-doc-8.2102.0.tar.gz )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=07180f9054f9cf7de6c305e225f632d6
diff --git a/metadata/md5-cache/app-arch/libarchive-3.5.1 b/metadata/md5-cache/app-arch/libarchive-3.5.1
new file mode 100644
index 0000000..c8c7f68
--- /dev/null
+++ b/metadata/md5-cache/app-arch/libarchive-3.5.1
@@ -0,0 +1,14 @@
+BDEPEND=>=app-portage/elt-patches-20170815
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=acl? ( virtual/acl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) blake2? ( app-crypt/libb2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) bzip2? ( app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) expat? ( dev-libs/expat[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !expat? ( dev-libs/libxml2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) iconv? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kernel_linux? ( xattr? ( sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) dev-libs/openssl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] lz4? ( >=app-arch/lz4-0_p131:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) lzma? ( app-arch/xz-utils[threads=,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) lzo? ( >=dev-libs/lzo-2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) nettle? ( dev-libs/nettle:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) zlib? ( sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) zstd? ( app-arch/zstd[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kernel_linux? ( virtual/os-headers e2fsprogs? ( sys-fs/e2fsprogs ) )
+DESCRIPTION=Multi-format archive and compression library
+EAPI=7
+HOMEPAGE=https://www.libarchive.org/
+IUSE=acl blake2 +bzip2 +e2fsprogs expat +iconv kernel_linux lz4 +lzma lzo nettle static-libs +threads xattr +zlib zstd abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=BSD BSD-2 BSD-4 public-domain
+RDEPEND=acl? ( virtual/acl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) blake2? ( app-crypt/libb2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) bzip2? ( app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) expat? ( dev-libs/expat[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !expat? ( dev-libs/libxml2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) iconv? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kernel_linux? ( xattr? ( sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) dev-libs/openssl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] lz4? ( >=app-arch/lz4-0_p131:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) lzma? ( app-arch/xz-utils[threads=,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) lzo? ( >=dev-libs/lzo-2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) nettle? ( dev-libs/nettle:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) zlib? ( sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) zstd? ( app-arch/zstd[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
+SLOT=0/13
+SRC_URI=https://www.libarchive.org/downloads/libarchive-3.5.1.tar.gz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e84324d0e502b44ab4953dc6d165da2e
diff --git a/metadata/md5-cache/app-arch/libarchive-3.5.1-r2 b/metadata/md5-cache/app-arch/libarchive-3.5.1-r2
new file mode 100644
index 0000000..c8c7f68
--- /dev/null
+++ b/metadata/md5-cache/app-arch/libarchive-3.5.1-r2
@@ -0,0 +1,14 @@
+BDEPEND=>=app-portage/elt-patches-20170815
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=acl? ( virtual/acl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) blake2? ( app-crypt/libb2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) bzip2? ( app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) expat? ( dev-libs/expat[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !expat? ( dev-libs/libxml2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) iconv? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kernel_linux? ( xattr? ( sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) dev-libs/openssl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] lz4? ( >=app-arch/lz4-0_p131:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) lzma? ( app-arch/xz-utils[threads=,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) lzo? ( >=dev-libs/lzo-2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) nettle? ( dev-libs/nettle:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) zlib? ( sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) zstd? ( app-arch/zstd[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kernel_linux? ( virtual/os-headers e2fsprogs? ( sys-fs/e2fsprogs ) )
+DESCRIPTION=Multi-format archive and compression library
+EAPI=7
+HOMEPAGE=https://www.libarchive.org/
+IUSE=acl blake2 +bzip2 +e2fsprogs expat +iconv kernel_linux lz4 +lzma lzo nettle static-libs +threads xattr +zlib zstd abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=BSD BSD-2 BSD-4 public-domain
+RDEPEND=acl? ( virtual/acl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) blake2? ( app-crypt/libb2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) bzip2? ( app-arch/bzip2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) expat? ( dev-libs/expat[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !expat? ( dev-libs/libxml2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) iconv? ( virtual/libiconv[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kernel_linux? ( xattr? ( sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) dev-libs/openssl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] lz4? ( >=app-arch/lz4-0_p131:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) lzma? ( app-arch/xz-utils[threads=,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) lzo? ( >=dev-libs/lzo-2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) nettle? ( dev-libs/nettle:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) zlib? ( sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) zstd? ( app-arch/zstd[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
+SLOT=0/13
+SRC_URI=https://www.libarchive.org/downloads/libarchive-3.5.1.tar.gz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e84324d0e502b44ab4953dc6d165da2e
diff --git a/metadata/md5-cache/app-benchmarks/blktests-20190430 b/metadata/md5-cache/app-benchmarks/blktests-20190430
index 0e234e5..620d714 100644
--- a/metadata/md5-cache/app-benchmarks/blktests-20190430
+++ b/metadata/md5-cache/app-benchmarks/blktests-20190430
@@ -8,5 +8,5 @@
 RDEPEND=sys-fs/e2fsprogs sys-block/blktrace sys-block/fio sys-fs/xfsprogs
 SLOT=0
 SRC_URI=https://github.com/osandov/blktests/archive/0ee7ebae6324a173fc3ac0d994e810bf4817ee70.tar.gz -> blktests-20190430.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=d79a6c2a29d598de7196d060f6527d8f
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=a9bd8d1de9be4c5b6d9ce521bc034bf2
diff --git a/metadata/md5-cache/app-benchmarks/blktests-20190430-r2 b/metadata/md5-cache/app-benchmarks/blktests-20190430-r2
deleted file mode 100644
index 0e234e5..0000000
--- a/metadata/md5-cache/app-benchmarks/blktests-20190430-r2
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=configure
-DESCRIPTION=Block tests suite
-EAPI=6
-HOMEPAGE=https://github.com/osandov/blktests
-IUSE=static
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=sys-fs/e2fsprogs sys-block/blktrace sys-block/fio sys-fs/xfsprogs
-SLOT=0
-SRC_URI=https://github.com/osandov/blktests/archive/0ee7ebae6324a173fc3ac0d994e810bf4817ee70.tar.gz -> blktests-20190430.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=d79a6c2a29d598de7196d060f6527d8f
diff --git a/metadata/md5-cache/app-benchmarks/blktests-20190430-r3 b/metadata/md5-cache/app-benchmarks/blktests-20190430-r3
new file mode 100644
index 0000000..620d714
--- /dev/null
+++ b/metadata/md5-cache/app-benchmarks/blktests-20190430-r3
@@ -0,0 +1,12 @@
+DEFINED_PHASES=configure
+DESCRIPTION=Block tests suite
+EAPI=6
+HOMEPAGE=https://github.com/osandov/blktests
+IUSE=static
+KEYWORDS=*
+LICENSE=GPL-2
+RDEPEND=sys-fs/e2fsprogs sys-block/blktrace sys-block/fio sys-fs/xfsprogs
+SLOT=0
+SRC_URI=https://github.com/osandov/blktests/archive/0ee7ebae6324a173fc3ac0d994e810bf4817ee70.tar.gz -> blktests-20190430.tar.gz
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=a9bd8d1de9be4c5b6d9ce521bc034bf2
diff --git a/metadata/md5-cache/app-benchmarks/blogbench-1.1.20200218 b/metadata/md5-cache/app-benchmarks/blogbench-1.1.20200218
index 1580ab0..1e5efce 100644
--- a/metadata/md5-cache/app-benchmarks/blogbench-1.1.20200218
+++ b/metadata/md5-cache/app-benchmarks/blogbench-1.1.20200218
@@ -8,5 +8,5 @@
 LICENSE=BSD
 SLOT=0
 SRC_URI=https://github.com/jedisct1/Blogbench/archive/d000aaf9390100bb3024e6b4aed9d945256259d5.tar.gz -> blogbench-1.1.20200218.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=82271049425d7ff83d1ea8448a10c7fe
diff --git a/metadata/md5-cache/app-benchmarks/bootchart-0.9.2-r2 b/metadata/md5-cache/app-benchmarks/bootchart-0.9.2-r2
index 9c7aadb..c17a06f 100644
--- a/metadata/md5-cache/app-benchmarks/bootchart-0.9.2-r2
+++ b/metadata/md5-cache/app-benchmarks/bootchart-0.9.2-r2
@@ -5,5 +5,5 @@
 KEYWORDS=*
 LICENSE=GPL-2
 SLOT=0
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=48d68eaf4cfea3efe95ec434e6b64c04
diff --git a/metadata/md5-cache/app-benchmarks/glmark2-285 b/metadata/md5-cache/app-benchmarks/glmark2-285
index 420433d..1944807 100644
--- a/metadata/md5-cache/app-benchmarks/glmark2-285
+++ b/metadata/md5-cache/app-benchmarks/glmark2-285
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( opengl opengles )
 SLOT=0
 SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/glmark2-bzr-285.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	waf-utils	0af0bf9207f47292d40e888b9687763c
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	waf-utils	0af0bf9207f47292d40e888b9687763c
 _md5_=4784991375a530b81f627209b2f2b599
diff --git a/metadata/md5-cache/app-benchmarks/glmark2-285-r16 b/metadata/md5-cache/app-benchmarks/glmark2-285-r16
index 420433d..1944807 100644
--- a/metadata/md5-cache/app-benchmarks/glmark2-285-r16
+++ b/metadata/md5-cache/app-benchmarks/glmark2-285-r16
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( opengl opengles )
 SLOT=0
 SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/glmark2-bzr-285.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	waf-utils	0af0bf9207f47292d40e888b9687763c
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	waf-utils	0af0bf9207f47292d40e888b9687763c
 _md5_=4784991375a530b81f627209b2f2b599
diff --git a/metadata/md5-cache/app-benchmarks/lmbench-3.0_alpha9 b/metadata/md5-cache/app-benchmarks/lmbench-3.0_alpha9
index 1048c1c..23cd168 100644
--- a/metadata/md5-cache/app-benchmarks/lmbench-3.0_alpha9
+++ b/metadata/md5-cache/app-benchmarks/lmbench-3.0_alpha9
@@ -8,5 +8,5 @@
 RDEPEND=net-libs/libtirpc
 SLOT=0
 SRC_URI=mirror://sourceforge/lmbench/development/lmbench-3.0-a9/lmbench-3.0-a9.tgz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=304520f60c752fe5b251e10fcd2d3966
diff --git a/metadata/md5-cache/app-benchmarks/lmbench-3.0_alpha9-r2 b/metadata/md5-cache/app-benchmarks/lmbench-3.0_alpha9-r2
index 1048c1c..23cd168 100644
--- a/metadata/md5-cache/app-benchmarks/lmbench-3.0_alpha9-r2
+++ b/metadata/md5-cache/app-benchmarks/lmbench-3.0_alpha9-r2
@@ -8,5 +8,5 @@
 RDEPEND=net-libs/libtirpc
 SLOT=0
 SRC_URI=mirror://sourceforge/lmbench/development/lmbench-3.0-a9/lmbench-3.0-a9.tgz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=304520f60c752fe5b251e10fcd2d3966
diff --git a/metadata/md5-cache/app-benchmarks/microbenchmarks-0.0.1-r7 b/metadata/md5-cache/app-benchmarks/microbenchmarks-0.0.1-r7
deleted file mode 100644
index 1c7519a..0000000
--- a/metadata/md5-cache/app-benchmarks/microbenchmarks-0.0.1-r7
+++ /dev/null
@@ -1,12 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DESCRIPTION=Home for microbenchmarks designed in-house.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/microbenchmarks
-IUSE=cros_host cros_workon_tree_73cce14d35b05e518d243f94d8466463cdce4ead
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-SLOT=0/0.0.1-r7
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=99cf2f4fbeab674a8075b65ea7c203d0
diff --git a/metadata/md5-cache/app-benchmarks/microbenchmarks-0.0.1-r8 b/metadata/md5-cache/app-benchmarks/microbenchmarks-0.0.1-r8
new file mode 100644
index 0000000..c6584e8
--- /dev/null
+++ b/metadata/md5-cache/app-benchmarks/microbenchmarks-0.0.1-r8
@@ -0,0 +1,12 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DESCRIPTION=Home for microbenchmarks designed in-house.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/microbenchmarks
+IUSE=cros_host cros_workon_tree_d2f7a20eeeca7497d1af6de7e1afcb217fc28aae
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+SLOT=0/0.0.1-r8
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=729e4c18cf3d62b67578cb1db836546c
diff --git a/metadata/md5-cache/app-benchmarks/microbenchmarks-9999 b/metadata/md5-cache/app-benchmarks/microbenchmarks-9999
index cc9e745..807985d 100644
--- a/metadata/md5-cache/app-benchmarks/microbenchmarks-9999
+++ b/metadata/md5-cache/app-benchmarks/microbenchmarks-9999
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/9999
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=83860851ebc4c3b3e5a54834192be6dd
diff --git a/metadata/md5-cache/app-benchmarks/pjdfstest-20190822 b/metadata/md5-cache/app-benchmarks/pjdfstest-20190822
index 570ad27..edd469d 100644
--- a/metadata/md5-cache/app-benchmarks/pjdfstest-20190822
+++ b/metadata/md5-cache/app-benchmarks/pjdfstest-20190822
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/c-tap-harness dev-libs/openssl
 SLOT=0
 SRC_URI=https://github.com/pjd/pjdfstest/archive/ee51841e0d99d25ab18027770f6b6f0596a07574.tar.gz -> pjdfstest-20190822.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8f551a499ab6c7e48997a9501269ac1a
diff --git a/metadata/md5-cache/app-benchmarks/pjdfstest-20190822-r2 b/metadata/md5-cache/app-benchmarks/pjdfstest-20190822-r2
index 570ad27..edd469d 100644
--- a/metadata/md5-cache/app-benchmarks/pjdfstest-20190822-r2
+++ b/metadata/md5-cache/app-benchmarks/pjdfstest-20190822-r2
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/c-tap-harness dev-libs/openssl
 SLOT=0
 SRC_URI=https://github.com/pjd/pjdfstest/archive/ee51841e0d99d25ab18027770f6b6f0596a07574.tar.gz -> pjdfstest-20190822.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8f551a499ab6c7e48997a9501269ac1a
diff --git a/metadata/md5-cache/app-benchmarks/xfstests-0.0.1-r17 b/metadata/md5-cache/app-benchmarks/xfstests-0.0.1-r17
index ac82574..c7df799 100644
--- a/metadata/md5-cache/app-benchmarks/xfstests-0.0.1-r17
+++ b/metadata/md5-cache/app-benchmarks/xfstests-0.0.1-r17
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=sys-fs/e2fsprogs dev-lang/perl sys-apps/attr sys-apps/diffutils sys-apps/gawk sys-apps/util-linux sys-devel/bc sys-fs/xfsprogs
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6ac1f4a84a9b0b78698598bd2826c213
diff --git a/metadata/md5-cache/app-benchmarks/xfstests-9999 b/metadata/md5-cache/app-benchmarks/xfstests-9999
index ef02acea..2f436f5 100644
--- a/metadata/md5-cache/app-benchmarks/xfstests-9999
+++ b/metadata/md5-cache/app-benchmarks/xfstests-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=sys-fs/e2fsprogs dev-lang/perl sys-apps/attr sys-apps/diffutils sys-apps/gawk sys-apps/util-linux sys-devel/bc sys-fs/xfsprogs
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=54337db6e7378461791ce26b2184c132
diff --git a/metadata/md5-cache/app-crypt/nss-3.44-r2 b/metadata/md5-cache/app-crypt/nss-3.44-r2
index 9280bb9..25d687a 100644
--- a/metadata/md5-cache/app-crypt/nss-3.44-r2
+++ b/metadata/md5-cache/app-crypt/nss-3.44-r2
@@ -10,5 +10,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=https://archive.mozilla.org/pub/security/nss/releases/NSS_3_44_RTM/src/nss-3.44.tar.gz cacert? ( https://dev.gentoo.org/~axs/distfiles/nss-cacert-class1-class3.patch ) nss-pem? ( https://dev.gentoo.org/~polynomial-c/nss-pem-20160329.tar.xz )
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=329b75e4131ed86acf5c1a28a498515f
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=27504a56bf6692b89d46d292a3013364
diff --git a/metadata/md5-cache/app-crypt/nss-3.44-r4 b/metadata/md5-cache/app-crypt/nss-3.44-r4
deleted file mode 100644
index 9280bb9..0000000
--- a/metadata/md5-cache/app-crypt/nss-3.44-r4
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install prepare test unpack
-DEPEND=>=virtual/pkgconfig-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-libs/nspr-4.16[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-db/sqlite-3.8.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/zlib-1.2.8-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-libs/nss-3.44[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=Mozilla's Network Security Services library that implements PKI support
-EAPI=6
-HOMEPAGE=http://www.mozilla.org/projects/security/pki/nss/
-IUSE=cacert +nss-pem utils abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=|| ( MPL-2.0 GPL-2 LGPL-2.1 )
-RDEPEND=>=dev-libs/nspr-4.16[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-db/sqlite-3.8.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/zlib-1.2.8-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-libs/nss-3.44[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-RESTRICT=test
-SLOT=0
-SRC_URI=https://archive.mozilla.org/pub/security/nss/releases/NSS_3_44_RTM/src/nss-3.44.tar.gz cacert? ( https://dev.gentoo.org/~axs/distfiles/nss-cacert-class1-class3.patch ) nss-pem? ( https://dev.gentoo.org/~polynomial-c/nss-pem-20160329.tar.xz )
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=329b75e4131ed86acf5c1a28a498515f
diff --git a/metadata/md5-cache/app-crypt/nss-3.44-r5 b/metadata/md5-cache/app-crypt/nss-3.44-r5
new file mode 100644
index 0000000..25d687a
--- /dev/null
+++ b/metadata/md5-cache/app-crypt/nss-3.44-r5
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install prepare test unpack
+DEPEND=>=virtual/pkgconfig-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-libs/nspr-4.16[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-db/sqlite-3.8.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/zlib-1.2.8-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-libs/nss-3.44[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+DESCRIPTION=Mozilla's Network Security Services library that implements PKI support
+EAPI=6
+HOMEPAGE=http://www.mozilla.org/projects/security/pki/nss/
+IUSE=cacert +nss-pem utils abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=|| ( MPL-2.0 GPL-2 LGPL-2.1 )
+RDEPEND=>=dev-libs/nspr-4.16[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-db/sqlite-3.8.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/zlib-1.2.8-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-libs/nss-3.44[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+RESTRICT=test
+SLOT=0
+SRC_URI=https://archive.mozilla.org/pub/security/nss/releases/NSS_3_44_RTM/src/nss-3.44.tar.gz cacert? ( https://dev.gentoo.org/~axs/distfiles/nss-cacert-class1-class3.patch ) nss-pem? ( https://dev.gentoo.org/~polynomial-c/nss-pem-20160329.tar.xz )
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=27504a56bf6692b89d46d292a3013364
diff --git a/metadata/md5-cache/app-crypt/tpm-tools-1.3.9.1-r2 b/metadata/md5-cache/app-crypt/tpm-tools-1.3.9.1-r2
deleted file mode 100644
index 2b97d41..0000000
--- a/metadata/md5-cache/app-crypt/tpm-tools-1.3.9.1-r2
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure install prepare
-DEPEND=!tpm2? ( >=app-crypt/trousers-0.3.0 ) !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) pkcs11? ( dev-libs/opencryptoki ) >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=TrouSerS' support tools for the Trusted Platform Modules
-EAPI=6
-HOMEPAGE=http://trousers.sourceforge.net
-IUSE=libressl nls pkcs11 tpm2 debug asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=CPL-1.0
-RDEPEND=!tpm2? ( >=app-crypt/trousers-0.3.0 ) !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) pkcs11? ( dev-libs/opencryptoki )
-SLOT=0
-SRC_URI=mirror://sourceforge/trousers/tpm-tools/tpm-tools-1.3.9.1.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=35f537c5c42a56ab0ade1d4eceff0b9e
diff --git a/metadata/md5-cache/app-crypt/tpm-tools-1.3.9.1-r3 b/metadata/md5-cache/app-crypt/tpm-tools-1.3.9.1-r3
new file mode 100644
index 0000000..71cfbd3
--- /dev/null
+++ b/metadata/md5-cache/app-crypt/tpm-tools-1.3.9.1-r3
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure install prepare
+DEPEND=tpm? ( >=app-crypt/trousers-0.3.0 ) !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) pkcs11? ( dev-libs/opencryptoki ) >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=TrouSerS' support tools for the Trusted Platform Modules
+EAPI=6
+HOMEPAGE=http://trousers.sourceforge.net
+IUSE=libressl nls pkcs11 tpm tpm_dynamic debug asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=CPL-1.0
+RDEPEND=tpm? ( >=app-crypt/trousers-0.3.0 ) !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) pkcs11? ( dev-libs/opencryptoki )
+SLOT=0
+SRC_URI=mirror://sourceforge/trousers/tpm-tools/tpm-tools-1.3.9.1.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=899b1d5e3e13aa5c3ad89ac99cd234a5
diff --git a/metadata/md5-cache/app-crypt/trousers-0.3.3-r105 b/metadata/md5-cache/app-crypt/trousers-0.3.3-r105
deleted file mode 100644
index 367362e..0000000
--- a/metadata/md5-cache/app-crypt/trousers-0.3.3-r105
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install postinst prepare setup unpack
-DEPEND=chromeos-base/libhwsec-foundation >=chromeos-base/metrics-0.0.1-r3152 >=dev-libs/openssl-0.9.7:0= dev-util/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] virtual/pkgconfig sys-apps/baselayout
-DESCRIPTION=An open-source TCG Software Stack (TSS) v1.1 implementation
-EAPI=5
-HOMEPAGE=http://trousers.sf.net
-IUSE=asan doc mocktpm systemd tss_trace cros-debug asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_60ed0f862fd08a2c848734d206da47d7666a8524 cros-debug
-KEYWORDS=*
-LICENSE=CPL-1.0
-PROPERTIES=live
-RDEPEND=chromeos-base/libhwsec-foundation >=chromeos-base/metrics-0.0.1-r3152 >=dev-libs/openssl-0.9.7:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] virtual/tmpfiles sys-apps/baselayout
-SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=11339e8ca54efef41670666f8ee52b15
diff --git a/metadata/md5-cache/app-crypt/trousers-0.3.3-r115 b/metadata/md5-cache/app-crypt/trousers-0.3.3-r115
new file mode 100644
index 0000000..79797ff
--- /dev/null
+++ b/metadata/md5-cache/app-crypt/trousers-0.3.3-r115
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install postinst prepare setup unpack
+DEPEND=chromeos-base/libhwsec-foundation >=chromeos-base/metrics-0.0.1-r3152 >=dev-libs/openssl-0.9.7:0= dev-util/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] virtual/pkgconfig sys-apps/baselayout
+DESCRIPTION=An open-source TCG Software Stack (TSS) v1.1 implementation
+EAPI=5
+HOMEPAGE=http://trousers.sf.net
+IUSE=asan doc mocktpm systemd tpm_dynamic tss_trace cros-debug asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_338c66b8fa6b3a6459f48133658412755e2ec78e cros-debug
+KEYWORDS=*
+LICENSE=CPL-1.0
+PROPERTIES=live
+RDEPEND=chromeos-base/libhwsec-foundation >=chromeos-base/metrics-0.0.1-r3152 >=dev-libs/openssl-0.9.7:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] virtual/tmpfiles sys-apps/baselayout
+SLOT=0
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=abea2c514187e67205e7cf8fb64372f2
diff --git a/metadata/md5-cache/app-crypt/trousers-9999 b/metadata/md5-cache/app-crypt/trousers-9999
index 5e941fb..afbd661 100644
--- a/metadata/md5-cache/app-crypt/trousers-9999
+++ b/metadata/md5-cache/app-crypt/trousers-9999
@@ -3,11 +3,11 @@
 DESCRIPTION=An open-source TCG Software Stack (TSS) v1.1 implementation
 EAPI=5
 HOMEPAGE=http://trousers.sf.net
-IUSE=asan doc mocktpm systemd tss_trace cros-debug asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug
+IUSE=asan doc mocktpm systemd tpm_dynamic tss_trace cros-debug asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug
 KEYWORDS=~*
 LICENSE=CPL-1.0
 PROPERTIES=live
 RDEPEND=chromeos-base/libhwsec-foundation >=chromeos-base/metrics-0.0.1-r3152 >=dev-libs/openssl-0.9.7:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] virtual/tmpfiles sys-apps/baselayout
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=73ff1699bde8b0717cc8265b6d83b462
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=04d0fab288b553ff62dfc8a141ae07da
diff --git a/metadata/md5-cache/app-crypt/trousers-tests-0.0.1-r90 b/metadata/md5-cache/app-crypt/trousers-tests-0.0.1-r90
deleted file mode 100644
index 6f3494d..0000000
--- a/metadata/md5-cache/app-crypt/trousers-tests-0.0.1-r90
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=app-crypt/trousers !<chromeos-base/autotest-tests-0.0.1-r1521
-DESCRIPTION=Trousers TPM tests
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/trousers/
-IUSE=+autotest +tests_hardware_TPM cros_host cros_workon_tree_60ed0f862fd08a2c848734d206da47d7666a8524 +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=app-crypt/trousers !<chromeos-base/autotest-tests-0.0.1-r1521 autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=c062ca6c9b61f61c1dfafa4552ad1688
diff --git a/metadata/md5-cache/app-crypt/trousers-tests-0.0.1-r99 b/metadata/md5-cache/app-crypt/trousers-tests-0.0.1-r99
new file mode 100644
index 0000000..036e4be
--- /dev/null
+++ b/metadata/md5-cache/app-crypt/trousers-tests-0.0.1-r99
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=app-crypt/trousers !<chromeos-base/autotest-tests-0.0.1-r1521
+DESCRIPTION=Trousers TPM tests
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/trousers/
+IUSE=+autotest +tests_hardware_TPM cros_host cros_workon_tree_338c66b8fa6b3a6459f48133658412755e2ec78e +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=app-crypt/trousers !<chromeos-base/autotest-tests-0.0.1-r1521 autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=32f901d7a1605b81d81bce8a3bf375f8
diff --git a/metadata/md5-cache/app-crypt/trousers-tests-9999 b/metadata/md5-cache/app-crypt/trousers-tests-9999
index d814930..e041ebd 100644
--- a/metadata/md5-cache/app-crypt/trousers-tests-9999
+++ b/metadata/md5-cache/app-crypt/trousers-tests-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=app-crypt/trousers !<chromeos-base/autotest-tests-0.0.1-r1521 autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d7e48f6e3ddfdbe87ccad58fda73a78b
diff --git a/metadata/md5-cache/app-emulation/lxc-3.0.3 b/metadata/md5-cache/app-emulation/lxc-3.0.3
index 4e73d6e..87ab5b09 100644
--- a/metadata/md5-cache/app-emulation/lxc-3.0.3
+++ b/metadata/md5-cache/app-emulation/lxc-3.0.3
@@ -10,5 +10,5 @@
 RDEPEND=net-libs/gnutls sys-libs/libcap pam? ( virtual/pam ) seccomp? ( sys-libs/libseccomp ) selinux? ( sys-libs/libselinux ) sys-apps/util-linux app-misc/pax-utils virtual/awk
 SLOT=0
 SRC_URI=https://linuxcontainers.org/downloads/lxc/lxc-3.0.3.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	pam	3f746974e1cc47cabe3bd488c08cdc8e	preserve-libs	ef207dc62baddfddfd39a164d9797648	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	pam	3f746974e1cc47cabe3bd488c08cdc8e	preserve-libs	ef207dc62baddfddfd39a164d9797648	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=724647d789816730e4b2aa533dfa5974
diff --git a/metadata/md5-cache/app-emulation/lxc-3.0.3-r2 b/metadata/md5-cache/app-emulation/lxc-3.0.3-r2
index 4e73d6e..87ab5b09 100644
--- a/metadata/md5-cache/app-emulation/lxc-3.0.3-r2
+++ b/metadata/md5-cache/app-emulation/lxc-3.0.3-r2
@@ -10,5 +10,5 @@
 RDEPEND=net-libs/gnutls sys-libs/libcap pam? ( virtual/pam ) seccomp? ( sys-libs/libseccomp ) selinux? ( sys-libs/libselinux ) sys-apps/util-linux app-misc/pax-utils virtual/awk
 SLOT=0
 SRC_URI=https://linuxcontainers.org/downloads/lxc/lxc-3.0.3.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	pam	3f746974e1cc47cabe3bd488c08cdc8e	preserve-libs	ef207dc62baddfddfd39a164d9797648	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	pam	3f746974e1cc47cabe3bd488c08cdc8e	preserve-libs	ef207dc62baddfddfd39a164d9797648	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=724647d789816730e4b2aa533dfa5974
diff --git a/metadata/md5-cache/app-emulation/lxc-4.0.10 b/metadata/md5-cache/app-emulation/lxc-4.0.10
new file mode 100644
index 0000000..f5edf8c
--- /dev/null
+++ b/metadata/md5-cache/app-emulation/lxc-4.0.10
@@ -0,0 +1,14 @@
+BDEPEND=doc? ( app-doc/doxygen ) man? ( app-text/docbook-sgml-utils ) verify-sig? ( app-crypt/openpgp-keys-linuxcontainers ) >=app-portage/elt-patches-20170815 virtual/pkgconfig verify-sig? ( app-crypt/gnupg >=app-portage/gemato-16 )
+DEFINED_PHASES=configure install postinst prepare setup unpack
+DEPEND=app-misc/pax-utils sys-apps/util-linux sys-libs/libcap virtual/awk caps? ( sys-libs/libcap ) pam? ( sys-libs/pam ) seccomp? ( sys-libs/libseccomp ) selinux? ( sys-libs/libselinux ) ssl? ( dev-libs/openssl:0= ) >=sys-kernel/linux-headers-4 apparmor? ( sys-apps/apparmor ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=A userspace interface for the Linux kernel containment features
+EAPI=7
+HOMEPAGE=https://linuxcontainers.org/ https://github.com/lxc/lxc
+IUSE=apparmor +caps doc man pam seccomp selinux +ssl +tools verify-sig kernel_linux verify-sig
+KEYWORDS=*
+LICENSE=LGPL-3
+RDEPEND=app-misc/pax-utils sys-apps/util-linux sys-libs/libcap virtual/awk caps? ( sys-libs/libcap ) pam? ( sys-libs/pam ) seccomp? ( sys-libs/libseccomp ) selinux? ( sys-libs/libselinux ) ssl? ( dev-libs/openssl:0= )
+SLOT=4
+SRC_URI=https://linuxcontainers.org/downloads/lxc/lxc-4.0.10.tar.gz verify-sig? ( https://linuxcontainers.org/downloads/lxc/lxc-4.0.10.tar.gz.asc )
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	optfeature	f4941a15f8b66955c45f7b0e7c4ae890	pam	3f746974e1cc47cabe3bd488c08cdc8e	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	verify-sig	40b4f4f782cf67118f594ce604cc4c0a
+_md5_=74fa0dde21d3c403dfb97fab349a6c7c
diff --git a/metadata/md5-cache/app-emulation/lxc-4.0.9 b/metadata/md5-cache/app-emulation/lxc-4.0.9
deleted file mode 100644
index ef654d2..0000000
--- a/metadata/md5-cache/app-emulation/lxc-4.0.9
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=doc? ( app-doc/doxygen ) man? ( app-text/docbook-sgml-utils ) verify-sig? ( app-crypt/openpgp-keys-linuxcontainers ) >=app-portage/elt-patches-20170815 virtual/pkgconfig verify-sig? ( app-crypt/gnupg >=app-portage/gemato-16 )
-DEFINED_PHASES=configure install postinst prepare setup unpack
-DEPEND=app-misc/pax-utils sys-apps/util-linux sys-libs/libcap sys-libs/libseccomp virtual/awk caps? ( sys-libs/libcap ) pam? ( sys-libs/pam ) selinux? ( sys-libs/libselinux ) ssl? ( dev-libs/openssl:0= ) >=sys-kernel/linux-headers-4 apparmor? ( sys-apps/apparmor ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=A userspace interface for the Linux kernel containment features
-EAPI=7
-HOMEPAGE=https://linuxcontainers.org/ https://github.com/lxc/lxc
-IUSE=apparmor +caps doc man pam selinux +ssl +tools verify-sig kernel_linux verify-sig
-KEYWORDS=*
-LICENSE=LGPL-3
-RDEPEND=app-misc/pax-utils sys-apps/util-linux sys-libs/libcap sys-libs/libseccomp virtual/awk caps? ( sys-libs/libcap ) pam? ( sys-libs/pam ) selinux? ( sys-libs/libselinux ) ssl? ( dev-libs/openssl:0= )
-SLOT=4
-SRC_URI=https://linuxcontainers.org/downloads/lxc/lxc-4.0.9.tar.gz verify-sig? ( https://linuxcontainers.org/downloads/lxc/lxc-4.0.9.tar.gz.asc )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	optfeature	f4941a15f8b66955c45f7b0e7c4ae890	pam	3f746974e1cc47cabe3bd488c08cdc8e	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	verify-sig	40b4f4f782cf67118f594ce604cc4c0a
-_md5_=3e2347085f9c714587130e562c87a726
diff --git a/metadata/md5-cache/app-emulation/lxd-3.17 b/metadata/md5-cache/app-emulation/lxd-3.17
index 7d7930f..cb15904 100644
--- a/metadata/md5-cache/app-emulation/lxd-3.17
+++ b/metadata/md5-cache/app-emulation/lxd-3.17
@@ -10,5 +10,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=https://linuxcontainers.org/downloads/lxd/lxd-3.17.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6b01a4d5b347863fbfaefbd24c1d4287
diff --git a/metadata/md5-cache/app-emulation/lxd-3.17-r4 b/metadata/md5-cache/app-emulation/lxd-3.17-r4
index 7d7930f..cb15904 100644
--- a/metadata/md5-cache/app-emulation/lxd-3.17-r4
+++ b/metadata/md5-cache/app-emulation/lxd-3.17-r4
@@ -10,5 +10,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=https://linuxcontainers.org/downloads/lxd/lxd-3.17.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6b01a4d5b347863fbfaefbd24c1d4287
diff --git a/metadata/md5-cache/app-emulation/lxd-4.0.6 b/metadata/md5-cache/app-emulation/lxd-4.0.6
deleted file mode 100644
index 7f42b27..0000000
--- a/metadata/md5-cache/app-emulation/lxd-4.0.6
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-lang/go nls? ( sys-devel/gettext ) verify-sig? ( app-crypt/openpgp-keys-linuxcontainers ) >=app-portage/elt-patches-20170815 virtual/pkgconfig verify-sig? ( app-crypt/gnupg >=app-portage/gemato-16 )
-DEFINED_PHASES=compile configure install postinst setup test unpack
-DEPEND=app-arch/xz-utils >=app-emulation/lxc-3.0.0:4[apparmor?,seccomp(+)] dev-db/sqlite dev-libs/libuv dev-libs/lzo net-dns/dnsmasq[dhcp,ipv6?] virtual/libudev !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 dev-lang/go sys-apps/baselayout
-DESCRIPTION=Fast, dense and secure container management
-EAPI=7
-HOMEPAGE=https://linuxcontainers.org/lxd/introduction/ https://github.com/lxc/lxd
-IUSE=apparmor ipv6 nls verify-sig kernel_linux verify-sig
-KEYWORDS=*
-LICENSE=Apache-2.0 BSD BSD-2 LGPL-3 MIT MPL-2.0
-RDEPEND=app-arch/xz-utils >=app-emulation/lxc-3.0.0:4[apparmor?,seccomp(+)] dev-db/sqlite dev-libs/libuv dev-libs/lzo net-dns/dnsmasq[dhcp,ipv6?] virtual/libudev net-firewall/ebtables net-firewall/iptables[ipv6?] sys-apps/iproute2[ipv6?] sys-fs/fuse:0= sys-fs/lxcfs:4 sys-fs/squashfs-tools[lzma] virtual/acl sys-apps/baselayout
-SLOT=4
-SRC_URI=https://linuxcontainers.org/downloads/lxd/lxd-4.0.6.tar.gz verify-sig? ( https://linuxcontainers.org/downloads/lxd/lxd-4.0.6.tar.gz.asc )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	optfeature	f4941a15f8b66955c45f7b0e7c4ae890	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	verify-sig	40b4f4f782cf67118f594ce604cc4c0a
-_md5_=0b9b1ad5234ab1b1d1e1cb0d17040ddb
diff --git a/metadata/md5-cache/app-emulation/lxd-4.0.7 b/metadata/md5-cache/app-emulation/lxd-4.0.7
new file mode 100644
index 0000000..160fa31
--- /dev/null
+++ b/metadata/md5-cache/app-emulation/lxd-4.0.7
@@ -0,0 +1,14 @@
+BDEPEND=dev-lang/go nls? ( sys-devel/gettext ) verify-sig? ( app-crypt/openpgp-keys-linuxcontainers ) >=app-portage/elt-patches-20170815 virtual/pkgconfig verify-sig? ( app-crypt/gnupg >=app-portage/gemato-16 )
+DEFINED_PHASES=compile configure install postinst setup test unpack
+DEPEND=app-arch/xz-utils >=app-emulation/lxc-3.0.0:4[apparmor?,seccomp(+)] dev-db/sqlite dev-libs/libuv app-arch/lz4 dev-libs/lzo net-dns/dnsmasq[dhcp,ipv6?] virtual/libudev !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 dev-lang/go sys-apps/baselayout
+DESCRIPTION=Fast, dense and secure container management
+EAPI=7
+HOMEPAGE=https://linuxcontainers.org/lxd/introduction/ https://github.com/lxc/lxd
+IUSE=apparmor ipv6 nls verify-sig kernel_linux verify-sig
+KEYWORDS=*
+LICENSE=Apache-2.0 BSD BSD-2 LGPL-3 MIT MPL-2.0
+RDEPEND=app-arch/xz-utils >=app-emulation/lxc-3.0.0:4[apparmor?,seccomp(+)] dev-db/sqlite dev-libs/libuv app-arch/lz4 dev-libs/lzo net-dns/dnsmasq[dhcp,ipv6?] virtual/libudev net-firewall/ebtables net-firewall/iptables[ipv6?] sys-apps/iproute2[ipv6?] sys-fs/fuse:0= sys-fs/lxcfs:4 sys-fs/squashfs-tools[lzma] virtual/acl sys-apps/baselayout
+SLOT=4
+SRC_URI=https://linuxcontainers.org/downloads/lxd/lxd-4.0.7.tar.gz verify-sig? ( https://linuxcontainers.org/downloads/lxd/lxd-4.0.7.tar.gz.asc )
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	optfeature	f4941a15f8b66955c45f7b0e7c4ae890	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	verify-sig	40b4f4f782cf67118f594ce604cc4c0a
+_md5_=45f03d2e8f8aa0c25150dd26c00c11b2
diff --git a/metadata/md5-cache/app-emulation/qemu-9999 b/metadata/md5-cache/app-emulation/qemu-9999
index 200394d..8b91397 100644
--- a/metadata/md5-cache/app-emulation/qemu-9999
+++ b/metadata/md5-cache/app-emulation/qemu-9999
@@ -13,5 +13,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=https://gitlab.freedesktop.org/slirp/libslirp/repository/archive.tar.gz?ref=2faae0f778f818fadc873308f983289df697eb93 -> qemu-20200729-slirp.tar.gz https://github.com/cota/berkeley-testfloat-3/archive/5a59dcec19327396a011a17fd924aed4fec416b3.tar.gz -> qemu-20200729-berkeley-testfloat-3.tar.gz https://github.com/qemu/keycodemapdb/archive/6b3d716e2b6472eb7189d3220552280ef3d832ce.tar.gz -> qemu-20200718-keycodemapdb.tar.gz
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	fcaps	eeefea88d5fef2853d4c1e3770340302	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	l10n	97f2753e3f1f3753d53d856c7c0bbb0b	linux-info	327865b9921771330775d971263dc234	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	pax-utils	3551398d6ede2b572568832730cc2a45	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	fcaps	eeefea88d5fef2853d4c1e3770340302	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	l10n	97f2753e3f1f3753d53d856c7c0bbb0b	linux-info	327865b9921771330775d971263dc234	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	pax-utils	3551398d6ede2b572568832730cc2a45	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=a410705dce9c6be3a4b9c8858e470dbb
diff --git a/metadata/md5-cache/app-emulation/qemu-binfmt-wrapper-1 b/metadata/md5-cache/app-emulation/qemu-binfmt-wrapper-1
index c4176fe..fe8da80 100644
--- a/metadata/md5-cache/app-emulation/qemu-binfmt-wrapper-1
+++ b/metadata/md5-cache/app-emulation/qemu-binfmt-wrapper-1
@@ -5,5 +5,5 @@
 KEYWORDS=*
 LICENSE=BSD-Google
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3229a7096446f53e23da8ced093287d6
diff --git a/metadata/md5-cache/app-i18n/chromeos-cangjie-1.0.0.0-r1 b/metadata/md5-cache/app-i18n/chromeos-cangjie-1.0.0.0-r1
index 75c277c..9ec718c 100644
--- a/metadata/md5-cache/app-i18n/chromeos-cangjie-1.0.0.0-r1
+++ b/metadata/md5-cache/app-i18n/chromeos-cangjie-1.0.0.0-r1
@@ -6,5 +6,5 @@
 LICENSE=Apache-2.0
 SLOT=0
 SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/chromeos-cangjie-1.0.0.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e3024e2ea502d83780e1e28dfa880508
diff --git a/metadata/md5-cache/app-i18n/chromeos-keyboards-1.1.4.0-r6 b/metadata/md5-cache/app-i18n/chromeos-keyboards-1.1.4.0-r6
index d76f65f..7464021 100644
--- a/metadata/md5-cache/app-i18n/chromeos-keyboards-1.1.4.0-r6
+++ b/metadata/md5-cache/app-i18n/chromeos-keyboards-1.1.4.0-r6
@@ -6,5 +6,5 @@
 LICENSE=Apache-2.0
 SLOT=0
 SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/chromeos-keyboards-1.1.4.0-r6.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2663c7a46c12420fe321bd19ffe60665
diff --git a/metadata/md5-cache/app-i18n/chromeos-pinyin-1.0.0.0 b/metadata/md5-cache/app-i18n/chromeos-pinyin-1.0.0.0
index 792166b..744b362 100644
--- a/metadata/md5-cache/app-i18n/chromeos-pinyin-1.0.0.0
+++ b/metadata/md5-cache/app-i18n/chromeos-pinyin-1.0.0.0
@@ -6,5 +6,5 @@
 LICENSE=Apache-2.0
 SLOT=0
 SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/chromeos-pinyin-1.0.0.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=12b3ba1f70a40f197d5a4df00fa07935
diff --git a/metadata/md5-cache/app-i18n/chromeos-xkb-1.0.3.0-r1 b/metadata/md5-cache/app-i18n/chromeos-xkb-1.0.3.0-r1
index 2305871..c0ba2e5 100644
--- a/metadata/md5-cache/app-i18n/chromeos-xkb-1.0.3.0-r1
+++ b/metadata/md5-cache/app-i18n/chromeos-xkb-1.0.3.0-r1
@@ -6,5 +6,5 @@
 LICENSE=Apache-2.0
 SLOT=0
 SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/chromeos-xkb-1.0.3.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a7ecad8a08942e4d457a7be2cd222136
diff --git a/metadata/md5-cache/app-i18n/chromeos-zhuyin-1.0.0.0 b/metadata/md5-cache/app-i18n/chromeos-zhuyin-1.0.0.0
index 62be56a..8a28674 100644
--- a/metadata/md5-cache/app-i18n/chromeos-zhuyin-1.0.0.0
+++ b/metadata/md5-cache/app-i18n/chromeos-zhuyin-1.0.0.0
@@ -6,5 +6,5 @@
 LICENSE=Apache-2.0
 SLOT=0
 SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/chromeos-zhuyin-1.0.0.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0258501cbb019d95de8be75f56a33594
diff --git a/metadata/md5-cache/app-i18n/nacl-mozc-1.14.1639.104-r4 b/metadata/md5-cache/app-i18n/nacl-mozc-1.14.1639.104-r4
index f2ddcba..6b9eab3 100644
--- a/metadata/md5-cache/app-i18n/nacl-mozc-1.14.1639.104-r4
+++ b/metadata/md5-cache/app-i18n/nacl-mozc-1.14.1639.104-r4
@@ -8,5 +8,5 @@
 RESTRICT=mirror
 SLOT=0
 SRC_URI=!internal? ( http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/nacl-mozc-1.14.1639.104.tgz ) internal? ( gs://chromeos-localmirror-private/distfiles/nacl-mozc-1.15.1800.4.tgz )
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fc1d7da6f22d41a51c2ddae517bbf1d8
diff --git a/metadata/md5-cache/app-misc/edid-decode-20190614 b/metadata/md5-cache/app-misc/edid-decode-20190614
deleted file mode 100644
index 6ddc029..0000000
--- a/metadata/md5-cache/app-misc/edid-decode-20190614
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=configure
-DESCRIPTION=Extended Display Identification Data (EDID) decoder
-EAPI=5
-HOMEPAGE=https://git.linuxtv.org/edid-decode.git/about
-KEYWORDS=*
-LICENSE=MIT
-SLOT=0
-SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/edid-decode-20190614.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=6fa597e5f40db501ef4b2c06769ea99d
diff --git a/metadata/md5-cache/app-misc/edid-decode-20210514 b/metadata/md5-cache/app-misc/edid-decode-20210514
new file mode 100644
index 0000000..b1f40f9
--- /dev/null
+++ b/metadata/md5-cache/app-misc/edid-decode-20210514
@@ -0,0 +1,10 @@
+DEFINED_PHASES=configure
+DESCRIPTION=Extended Display Identification Data (EDID) decoder
+EAPI=5
+HOMEPAGE=https://git.linuxtv.org/edid-decode.git/about
+KEYWORDS=*
+LICENSE=MIT
+SLOT=0
+SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/edid-decode-20210514.tar.gz
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=6fa597e5f40db501ef4b2c06769ea99d
diff --git a/metadata/md5-cache/app-misc/eglinfo-8.2.0-r2 b/metadata/md5-cache/app-misc/eglinfo-8.2.0-r2
index 6c54191..46859a9 100644
--- a/metadata/md5-cache/app-misc/eglinfo-8.2.0-r2
+++ b/metadata/md5-cache/app-misc/eglinfo-8.2.0-r2
@@ -8,5 +8,5 @@
 RDEPEND=virtual/opengles
 SLOT=0
 SRC_URI=ftp://ftp.freedesktop.org/pub/mesa/demos/8.2.0/mesa-demos-8.2.0.tar.bz2
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=5bf1a7382425ebb482992fea22d6ae75
diff --git a/metadata/md5-cache/app-misc/evtest-1.34 b/metadata/md5-cache/app-misc/evtest-1.34
index a83a3a8..38efe0d 100644
--- a/metadata/md5-cache/app-misc/evtest-1.34
+++ b/metadata/md5-cache/app-misc/evtest-1.34
@@ -9,5 +9,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=https://gitlab.freedesktop.org/libevdev/evtest/-/archive/evtest-1.34/evtest-evtest-1.34.tar.gz -> evtest-1.34.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=a588ab751231ee0e50c6c658a7f60379
diff --git a/metadata/md5-cache/app-misc/utouch-evemu-1.0.5 b/metadata/md5-cache/app-misc/utouch-evemu-1.0.5
index b3e4f2f..dbbc1ad 100644
--- a/metadata/md5-cache/app-misc/utouch-evemu-1.0.5
+++ b/metadata/md5-cache/app-misc/utouch-evemu-1.0.5
@@ -9,5 +9,5 @@
 RDEPEND=X? ( >=x11-base/xorg-server-1.8 )
 SLOT=0
 SRC_URI=http://launchpad.net/utouch-evemu/trunk/v1.0.5/+download/utouch-evemu-1.0.5.tar.gz
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=91a16e72ed733c71d4b6bcebff6f5a89
diff --git a/metadata/md5-cache/app-misc/utouch-evemu-1.0.5-r10 b/metadata/md5-cache/app-misc/utouch-evemu-1.0.5-r10
index b3e4f2f..dbbc1ad 100644
--- a/metadata/md5-cache/app-misc/utouch-evemu-1.0.5-r10
+++ b/metadata/md5-cache/app-misc/utouch-evemu-1.0.5-r10
@@ -9,5 +9,5 @@
 RDEPEND=X? ( >=x11-base/xorg-server-1.8 )
 SLOT=0
 SRC_URI=http://launchpad.net/utouch-evemu/trunk/v1.0.5/+download/utouch-evemu-1.0.5.tar.gz
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=91a16e72ed733c71d4b6bcebff6f5a89
diff --git a/metadata/md5-cache/app-shells/gentoo-zsh-completions-20141115 b/metadata/md5-cache/app-shells/gentoo-zsh-completions-20141115
index 6b86749..c098202 100644
--- a/metadata/md5-cache/app-shells/gentoo-zsh-completions-20141115
+++ b/metadata/md5-cache/app-shells/gentoo-zsh-completions-20141115
@@ -7,5 +7,5 @@
 RDEPEND=>=app-shells/zsh-4.3.5
 SLOT=0
 SRC_URI=http://dev.gentoo.org/~radhermit/dist/gentoo-zsh-completions-20141115.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9c00403f14b667c02069131775aaf4b7
diff --git a/metadata/md5-cache/app-shells/gentoo-zsh-completions-20141115-r2 b/metadata/md5-cache/app-shells/gentoo-zsh-completions-20141115-r2
index 6b86749..c098202 100644
--- a/metadata/md5-cache/app-shells/gentoo-zsh-completions-20141115-r2
+++ b/metadata/md5-cache/app-shells/gentoo-zsh-completions-20141115-r2
@@ -7,5 +7,5 @@
 RDEPEND=>=app-shells/zsh-4.3.5
 SLOT=0
 SRC_URI=http://dev.gentoo.org/~radhermit/dist/gentoo-zsh-completions-20141115.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9c00403f14b667c02069131775aaf4b7
diff --git a/metadata/md5-cache/app-text/ghostscript-gpl-9.54.0 b/metadata/md5-cache/app-text/ghostscript-gpl-9.54.0
index 516d3f5..847c27b 100644
--- a/metadata/md5-cache/app-text/ghostscript-gpl-9.54.0
+++ b/metadata/md5-cache/app-text/ghostscript-gpl-9.54.0
@@ -9,5 +9,5 @@
 RDEPEND=app-text/libpaper media-libs/fontconfig >=media-libs/freetype-2.4.9:2= >=media-libs/lcms-2.6:2 >=media-libs/libpng-1.6.2:0= >=sys-libs/zlib-1.2.7 virtual/jpeg:0 cups? ( >=net-print/cups-1.3.8 ) dbus? ( sys-apps/dbus ) gtk? ( || ( x11-libs/gtk+:3 x11-libs/gtk+:2 ) ) idn? ( net-dns/libidn ) tiff? ( >=media-libs/tiff-4.0.1:0= ) X? ( x11-libs/libXt x11-libs/libXext ) !!media-libs/jbig2dec !crosfonts? ( >=media-fonts/urw-fonts-2.4.9 ) linguas_ja? ( media-fonts/kochi-substitute ) linguas_ko? ( media-fonts/baekmuk-fonts ) linguas_zh_CN? ( media-fonts/arphicfonts ) linguas_zh_TW? ( media-fonts/arphicfonts )
 SLOT=0
 SRC_URI=https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9540/ghostscript-9.54.0.tar.xz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
 _md5_=b09af1dd404d86b46d1bfd7658f0cd48
diff --git a/metadata/md5-cache/app-text/ghostscript-gpl-9.54.0-r3 b/metadata/md5-cache/app-text/ghostscript-gpl-9.54.0-r3
deleted file mode 100644
index 516d3f5..0000000
--- a/metadata/md5-cache/app-text/ghostscript-gpl-9.54.0-r3
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare
-DEPEND=app-text/libpaper media-libs/fontconfig >=media-libs/freetype-2.4.9:2= >=media-libs/lcms-2.6:2 >=media-libs/libpng-1.6.2:0= >=sys-libs/zlib-1.2.7 virtual/jpeg:0 cups? ( >=net-print/cups-1.3.8 ) dbus? ( sys-apps/dbus ) gtk? ( || ( x11-libs/gtk+:3 x11-libs/gtk+:2 ) ) idn? ( net-dns/libidn ) tiff? ( >=media-libs/tiff-4.0.1:0= ) X? ( x11-libs/libXt x11-libs/libXext ) !!media-libs/jbig2dec virtual/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Interpreter for the PostScript language and PDF
-EAPI=6
-HOMEPAGE=https://ghostscript.com/
-IUSE=asan cups dbus fuzzer gtk idn internal linguas_de crosfonts static-libs tiff unicode X linguas_ja linguas_ko linguas_zh_CN linguas_zh_TW fuzzer asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=internal? ( LICENSE.artifex_commercial ) !internal? ( AGPL-3 CPL-1.0 )
-RDEPEND=app-text/libpaper media-libs/fontconfig >=media-libs/freetype-2.4.9:2= >=media-libs/lcms-2.6:2 >=media-libs/libpng-1.6.2:0= >=sys-libs/zlib-1.2.7 virtual/jpeg:0 cups? ( >=net-print/cups-1.3.8 ) dbus? ( sys-apps/dbus ) gtk? ( || ( x11-libs/gtk+:3 x11-libs/gtk+:2 ) ) idn? ( net-dns/libidn ) tiff? ( >=media-libs/tiff-4.0.1:0= ) X? ( x11-libs/libXt x11-libs/libXext ) !!media-libs/jbig2dec !crosfonts? ( >=media-fonts/urw-fonts-2.4.9 ) linguas_ja? ( media-fonts/kochi-substitute ) linguas_ko? ( media-fonts/baekmuk-fonts ) linguas_zh_CN? ( media-fonts/arphicfonts ) linguas_zh_TW? ( media-fonts/arphicfonts )
-SLOT=0
-SRC_URI=https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9540/ghostscript-9.54.0.tar.xz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
-_md5_=b09af1dd404d86b46d1bfd7658f0cd48
diff --git a/metadata/md5-cache/app-text/ghostscript-gpl-9.54.0-r5 b/metadata/md5-cache/app-text/ghostscript-gpl-9.54.0-r5
new file mode 100644
index 0000000..847c27b
--- /dev/null
+++ b/metadata/md5-cache/app-text/ghostscript-gpl-9.54.0-r5
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install prepare
+DEPEND=app-text/libpaper media-libs/fontconfig >=media-libs/freetype-2.4.9:2= >=media-libs/lcms-2.6:2 >=media-libs/libpng-1.6.2:0= >=sys-libs/zlib-1.2.7 virtual/jpeg:0 cups? ( >=net-print/cups-1.3.8 ) dbus? ( sys-apps/dbus ) gtk? ( || ( x11-libs/gtk+:3 x11-libs/gtk+:2 ) ) idn? ( net-dns/libidn ) tiff? ( >=media-libs/tiff-4.0.1:0= ) X? ( x11-libs/libXt x11-libs/libXext ) !!media-libs/jbig2dec virtual/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=Interpreter for the PostScript language and PDF
+EAPI=6
+HOMEPAGE=https://ghostscript.com/
+IUSE=asan cups dbus fuzzer gtk idn internal linguas_de crosfonts static-libs tiff unicode X linguas_ja linguas_ko linguas_zh_CN linguas_zh_TW fuzzer asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=internal? ( LICENSE.artifex_commercial ) !internal? ( AGPL-3 CPL-1.0 )
+RDEPEND=app-text/libpaper media-libs/fontconfig >=media-libs/freetype-2.4.9:2= >=media-libs/lcms-2.6:2 >=media-libs/libpng-1.6.2:0= >=sys-libs/zlib-1.2.7 virtual/jpeg:0 cups? ( >=net-print/cups-1.3.8 ) dbus? ( sys-apps/dbus ) gtk? ( || ( x11-libs/gtk+:3 x11-libs/gtk+:2 ) ) idn? ( net-dns/libidn ) tiff? ( >=media-libs/tiff-4.0.1:0= ) X? ( x11-libs/libXt x11-libs/libXext ) !!media-libs/jbig2dec !crosfonts? ( >=media-fonts/urw-fonts-2.4.9 ) linguas_ja? ( media-fonts/kochi-substitute ) linguas_ko? ( media-fonts/baekmuk-fonts ) linguas_zh_CN? ( media-fonts/arphicfonts ) linguas_zh_TW? ( media-fonts/arphicfonts )
+SLOT=0
+SRC_URI=https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9540/ghostscript-9.54.0.tar.xz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
+_md5_=b09af1dd404d86b46d1bfd7658f0cd48
diff --git a/metadata/md5-cache/brillo-base/libsparse-0.0.1-r9 b/metadata/md5-cache/brillo-base/libsparse-0.0.1-r9
index 46961be..63e8346 100644
--- a/metadata/md5-cache/brillo-base/libsparse-0.0.1-r9
+++ b/metadata/md5-cache/brillo-base/libsparse-0.0.1-r9
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=sys-libs/zlib:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d1510853ff492df4790fb3ac5a210a8f
diff --git a/metadata/md5-cache/brillo-base/libsparse-9999 b/metadata/md5-cache/brillo-base/libsparse-9999
index 845023c..8a2ab66 100644
--- a/metadata/md5-cache/brillo-base/libsparse-9999
+++ b/metadata/md5-cache/brillo-base/libsparse-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=sys-libs/zlib:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=83bf64f27c97d0013ba090b0a2c657c5
diff --git a/metadata/md5-cache/chromeos-base/android-relocation-packer-20170210 b/metadata/md5-cache/chromeos-base/android-relocation-packer-20170210
index 61be0d6..a0570d3 100644
--- a/metadata/md5-cache/chromeos-base/android-relocation-packer-20170210
+++ b/metadata/md5-cache/chromeos-base/android-relocation-packer-20170210
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/elfutils
 SLOT=0
 SRC_URI=https://android.googlesource.com/platform/bionic/+archive/43801a50b071279c58d8d3b4d06ce26b39e57a4e/tools/relocation_packer.tar.gz -> android-relocation-packer-20170210.tar.gz https://android.googlesource.com/platform/system/core/+archive/f2e615c7b88d5558deadab7b093f9e82cb3c1bba/base/include.tar.gz -> android-system-core-base-20170210.tar.gz
-_eclasses_=cros-debug	d2750757005d6a444f8eb12bb9eb9944	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-debug	d2750757005d6a444f8eb12bb9eb9944	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6629b786c986a02495efa26eaec9a927
diff --git a/metadata/md5-cache/chromeos-base/android-relocation-packer-20170210-r1 b/metadata/md5-cache/chromeos-base/android-relocation-packer-20170210-r1
index 61be0d6..a0570d3 100644
--- a/metadata/md5-cache/chromeos-base/android-relocation-packer-20170210-r1
+++ b/metadata/md5-cache/chromeos-base/android-relocation-packer-20170210-r1
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/elfutils
 SLOT=0
 SRC_URI=https://android.googlesource.com/platform/bionic/+archive/43801a50b071279c58d8d3b4d06ce26b39e57a4e/tools/relocation_packer.tar.gz -> android-relocation-packer-20170210.tar.gz https://android.googlesource.com/platform/system/core/+archive/f2e615c7b88d5558deadab7b093f9e82cb3c1bba/base/include.tar.gz -> android-system-core-base-20170210.tar.gz
-_eclasses_=cros-debug	d2750757005d6a444f8eb12bb9eb9944	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-debug	d2750757005d6a444f8eb12bb9eb9944	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6629b786c986a02495efa26eaec9a927
diff --git a/metadata/md5-cache/chromeos-base/aosp-frameworks-base-proto-20200929 b/metadata/md5-cache/chromeos-base/aosp-frameworks-base-proto-20200929
index 1a399c4..35b9c5b 100644
--- a/metadata/md5-cache/chromeos-base/aosp-frameworks-base-proto-20200929
+++ b/metadata/md5-cache/chromeos-base/aosp-frameworks-base-proto-20200929
@@ -7,5 +7,5 @@
 LICENSE=Apache-2.0
 SLOT=0
 SRC_URI=https://android.googlesource.com/platform/frameworks/base/+archive/c29468777021f4970ab20b38601448fe81ecdcbb/core/proto.tar.gz -> aosp-frameworks-base-core-proto-20200929.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=dfdf244b8a5b2fa0ce7d6b015f9441fb
diff --git a/metadata/md5-cache/chromeos-base/aosp-frameworks-base-proto-20200929-r1 b/metadata/md5-cache/chromeos-base/aosp-frameworks-base-proto-20200929-r1
index 1a399c4..35b9c5b 100644
--- a/metadata/md5-cache/chromeos-base/aosp-frameworks-base-proto-20200929-r1
+++ b/metadata/md5-cache/chromeos-base/aosp-frameworks-base-proto-20200929-r1
@@ -7,5 +7,5 @@
 LICENSE=Apache-2.0
 SLOT=0
 SRC_URI=https://android.googlesource.com/platform/frameworks/base/+archive/c29468777021f4970ab20b38601448fe81ecdcbb/core/proto.tar.gz -> aosp-frameworks-base-core-proto-20200929.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=dfdf244b8a5b2fa0ce7d6b015f9441fb
diff --git a/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-0.0.1-r199 b/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-0.0.1-r199
deleted file mode 100644
index 867bab9..0000000
--- a/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-0.0.1-r199
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/nnapi:= dev-libs/openssl:= sci-libs/tensorflow:= dev-libs/libtextclassifier >=dev-cpp/eigen-3 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS port of the Android Neural Network API
-EAPI=7
-HOMEPAGE=https://developer.android.com/ndk/guides/neuralnetworks
-IUSE=cpu_flags_x86_avx2 vendor-nnhal minimal-driver cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_4c0cc8d00d5d746519a55a17088ff6173845837c_7a08574830b90bb538e281ba8c2240d2826fefb9 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_4c0cc8d00d5d746519a55a17088ff6173845837c_7a08574830b90bb538e281ba8c2240d2826fefb9 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google Apache-2.0
-PROPERTIES=live live
-RDEPEND=chromeos-base/nnapi:= dev-libs/openssl:= sci-libs/tensorflow:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r199
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=75ffd2c8d782e3e303bf0e296f398670
diff --git a/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-0.0.1-r233 b/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-0.0.1-r233
new file mode 100644
index 0000000..8d4d6c0
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-0.0.1-r233
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/nnapi:= dev-libs/openssl:= sci-libs/tensorflow:= dev-libs/libtextclassifier >=dev-cpp/eigen-3 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS port of the Android Neural Network API
+EAPI=7
+HOMEPAGE=https://developer.android.com/ndk/guides/neuralnetworks
+IUSE=cpu_flags_x86_avx2 vendor-nnhal minimal-driver xnnpack-driver cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_57f269579b5f598e16c8f972c88eaa2033539b34_dc25ed68a7d37cb190a28c01c84f8bb2e874bb47 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_57f269579b5f598e16c8f972c88eaa2033539b34_dc25ed68a7d37cb190a28c01c84f8bb2e874bb47 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google Apache-2.0
+PROPERTIES=live live
+RDEPEND=chromeos-base/nnapi:= dev-libs/openssl:= sci-libs/tensorflow:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r233
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3613505ee1a62491cf18f43a914b40d2
diff --git a/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-9999 b/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-9999
index 0b38967..3db4eae 100644
--- a/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-9999
+++ b/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-9999
@@ -4,11 +4,11 @@
 DESCRIPTION=Chrome OS port of the Android Neural Network API
 EAPI=7
 HOMEPAGE=https://developer.android.com/ndk/guides/neuralnetworks
-IUSE=cpu_flags_x86_avx2 vendor-nnhal minimal-driver cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=cpu_flags_x86_avx2 vendor-nnhal minimal-driver xnnpack-driver cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google Apache-2.0
 PROPERTIES=live live
 RDEPEND=chromeos-base/nnapi:= dev-libs/openssl:= sci-libs/tensorflow:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ac42fe572a04080941fab7046fcd2278
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4b8f8130016dd2cb6f393c150b6b27df
diff --git a/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-vts-0.0.1-r27 b/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-vts-0.0.1-r27
deleted file mode 100644
index e58d00a..0000000
--- a/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-vts-0.0.1-r27
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/aosp-frameworks-ml-nn:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=HAL / Driver Vendor and Compatability Test Tools for NNAPI
-EAPI=7
-HOMEPAGE=https://developer.android.com/ndk/guides/neuralnetworks
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_4c0cc8d00d5d746519a55a17088ff6173845837c_7a08574830b90bb538e281ba8c2240d2826fefb9 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_4c0cc8d00d5d746519a55a17088ff6173845837c_7a08574830b90bb538e281ba8c2240d2826fefb9 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google Apache-2.0
-PROPERTIES=live live
-RDEPEND=chromeos-base/aosp-frameworks-ml-nn:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r27
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d1929730bdb08d2b2fa0253271f77bab
diff --git a/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-vts-0.0.1-r59 b/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-vts-0.0.1-r59
new file mode 100644
index 0000000..691e43f
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-vts-0.0.1-r59
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/aosp-frameworks-ml-nn:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=HAL / Driver Vendor and Compatability Test Tools for NNAPI
+EAPI=7
+HOMEPAGE=https://developer.android.com/ndk/guides/neuralnetworks
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_57f269579b5f598e16c8f972c88eaa2033539b34_dc25ed68a7d37cb190a28c01c84f8bb2e874bb47 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_57f269579b5f598e16c8f972c88eaa2033539b34_dc25ed68a7d37cb190a28c01c84f8bb2e874bb47 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google Apache-2.0
+PROPERTIES=live live
+RDEPEND=chromeos-base/aosp-frameworks-ml-nn:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r59
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=32635a44122221ce9f8d1722a8e49a87
diff --git a/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-vts-9999 b/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-vts-9999
index 41b32ed..0313391 100644
--- a/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-vts-9999
+++ b/metadata/md5-cache/chromeos-base/aosp-frameworks-ml-nn-vts-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/aosp-frameworks-ml-nn:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8317836f4efd0994e861740764f3c3a7
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9acc5e6da835872d8c42d79740b5cc39
diff --git a/metadata/md5-cache/chromeos-base/arc-adbd-0.0.1-r368 b/metadata/md5-cache/chromeos-base/arc-adbd-0.0.1-r368
deleted file mode 100644
index b8fbe45..0000000
--- a/metadata/md5-cache/chromeos-base/arc-adbd-0.0.1-r368
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Container to run Android's adbd proxy.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/adbd
-IUSE=+seccomp fuzzer arcvm cros_host cros_workon_tree_d5666e714c30f8f7921e63e91f60431992f31333_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_d5666e714c30f8f7921e63e91f60431992f31333_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/minijail >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r368
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e7af2d706768b6fb1e03e5cc51969028
diff --git a/metadata/md5-cache/chromeos-base/arc-adbd-0.0.1-r399 b/metadata/md5-cache/chromeos-base/arc-adbd-0.0.1-r399
new file mode 100644
index 0000000..caba1885
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-adbd-0.0.1-r399
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Container to run Android's adbd proxy.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/adbd
+IUSE=+seccomp fuzzer arcvm cros_host cros_workon_tree_797d8d57ec73bac74c0846d62c37eb750d3e7177_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_797d8d57ec73bac74c0846d62c37eb750d3e7177_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/minijail >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r399
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=afa2addbf614cf1ba60ba5924a49dac6
diff --git a/metadata/md5-cache/chromeos-base/arc-adbd-9999 b/metadata/md5-cache/chromeos-base/arc-adbd-9999
index 08bae80..9a12f13 100644
--- a/metadata/md5-cache/chromeos-base/arc-adbd-9999
+++ b/metadata/md5-cache/chromeos-base/arc-adbd-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/minijail >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b671d74994a0da2ba4a6da0255225fa2
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5999fac565db672cc657329065903256
diff --git a/metadata/md5-cache/chromeos-base/arc-apk-cache-0.0.1-r374 b/metadata/md5-cache/chromeos-base/arc-apk-cache-0.0.1-r374
deleted file mode 100644
index ff69ff6..0000000
--- a/metadata/md5-cache/chromeos-base/arc-apk-cache-0.0.1-r374
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-db/sqlite:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Maintains APK cache in ARC.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/apk-cache
-IUSE=+seccomp cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4c6e571afb4a8fe4d876184e2d85fe856c411540_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4c6e571afb4a8fe4d876184e2d85fe856c411540_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/minijail dev-db/sqlite:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r374
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a7d4546aa93ac7daa419c893aba36ab4
diff --git a/metadata/md5-cache/chromeos-base/arc-apk-cache-0.0.1-r402 b/metadata/md5-cache/chromeos-base/arc-apk-cache-0.0.1-r402
new file mode 100644
index 0000000..b7af9c9
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-apk-cache-0.0.1-r402
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-db/sqlite:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Maintains APK cache in ARC.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/apk-cache
+IUSE=+seccomp cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_337a3b9cf4ad4e8ccde785f9b20c19e35c9fca87_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_337a3b9cf4ad4e8ccde785f9b20c19e35c9fca87_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/minijail dev-db/sqlite:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r402
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=009a221913b4b3c2f3bc062c2cbddbc9
diff --git a/metadata/md5-cache/chromeos-base/arc-apk-cache-9999 b/metadata/md5-cache/chromeos-base/arc-apk-cache-9999
index b73adce..714b091 100644
--- a/metadata/md5-cache/chromeos-base/arc-apk-cache-9999
+++ b/metadata/md5-cache/chromeos-base/arc-apk-cache-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/minijail dev-db/sqlite:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=016baeac60c03f8ba398f3554b6a9afd
diff --git a/metadata/md5-cache/chromeos-base/arc-appfuse-0.0.1-r307 b/metadata/md5-cache/chromeos-base/arc-appfuse-0.0.1-r307
deleted file mode 100644
index bb91008..0000000
--- a/metadata/md5-cache/chromeos-base/arc-appfuse-0.0.1-r307
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=sys-apps/dbus:= sys-fs/fuse:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=D-Bus service to provide ARC Appfuse
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/appfuse
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_ac2c9f71de71bb13b6d64a1245a8ea072da49f28_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_ac2c9f71de71bb13b6d64a1245a8ea072da49f28_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=sys-apps/dbus:= sys-fs/fuse:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r307
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=aaee75f9a0e049db1c3d44ede7937463
diff --git a/metadata/md5-cache/chromeos-base/arc-appfuse-0.0.1-r337 b/metadata/md5-cache/chromeos-base/arc-appfuse-0.0.1-r337
new file mode 100644
index 0000000..af7b2c8
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-appfuse-0.0.1-r337
@@ -0,0 +1,14 @@
+BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=sys-apps/dbus:= sys-fs/fuse:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=D-Bus service to provide ARC Appfuse
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/appfuse
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1b41cb03ecd456155c5226522578107d4b748436_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1b41cb03ecd456155c5226522578107d4b748436_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=sys-apps/dbus:= sys-fs/fuse:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r337
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=a6c4bad2e5e49ac78660bd150afc4599
diff --git a/metadata/md5-cache/chromeos-base/arc-appfuse-9999 b/metadata/md5-cache/chromeos-base/arc-appfuse-9999
index ba6082b..b3acec7 100644
--- a/metadata/md5-cache/chromeos-base/arc-appfuse-9999
+++ b/metadata/md5-cache/chromeos-base/arc-appfuse-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=sys-apps/dbus:= sys-fs/fuse:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=47d518873fa153e1dec65ac7f7efdb93
diff --git a/metadata/md5-cache/chromeos-base/arc-base-0.0.1-r395 b/metadata/md5-cache/chromeos-base/arc-base-0.0.1-r395
deleted file mode 100644
index b6662ee..0000000
--- a/metadata/md5-cache/chromeos-base/arc-base-0.0.1-r395
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install postinst preinst setup unpack
-DEPEND=!<chromeos-base/chromeos-cheets-scripts-0.0.3 sys-apps/baselayout
-DESCRIPTION=Container to run Android.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/bundle
-IUSE=arcpp arcvm cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_9fc9c94a2d45e1fa0d13e8eab0e41814a9cd8c42_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!<chromeos-base/chromeos-cheets-scripts-0.0.3 sys-apps/baselayout
-REQUIRED_USE=|| ( arcpp arcvm )
-SLOT=0/0.0.1-r395
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=2850f9b4b3f8572c5a414523439d3445
diff --git a/metadata/md5-cache/chromeos-base/arc-base-0.0.1-r420 b/metadata/md5-cache/chromeos-base/arc-base-0.0.1-r420
new file mode 100644
index 0000000..81db8ac
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-base-0.0.1-r420
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install postinst preinst setup unpack
+DEPEND=!<chromeos-base/chromeos-cheets-scripts-0.0.3 sys-apps/baselayout
+DESCRIPTION=Container to run Android.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/bundle
+IUSE=arcpp arcvm cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_9fc9c94a2d45e1fa0d13e8eab0e41814a9cd8c42_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!<chromeos-base/chromeos-cheets-scripts-0.0.3 sys-apps/baselayout
+REQUIRED_USE=|| ( arcpp arcvm )
+SLOT=0/0.0.1-r420
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=59fa1a68991012cce6646b0ba988945d
diff --git a/metadata/md5-cache/chromeos-base/arc-base-9999 b/metadata/md5-cache/chromeos-base/arc-base-9999
index 9db1135..1c44b8e 100644
--- a/metadata/md5-cache/chromeos-base/arc-base-9999
+++ b/metadata/md5-cache/chromeos-base/arc-base-9999
@@ -11,5 +11,5 @@
 RDEPEND=!<chromeos-base/chromeos-cheets-scripts-0.0.3 sys-apps/baselayout
 REQUIRED_USE=|| ( arcpp arcvm )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=fec601e4b68de27a84e56f9c0d6494e2
diff --git a/metadata/md5-cache/chromeos-base/arc-common-scripts-0.0.1-r183 b/metadata/md5-cache/chromeos-base/arc-common-scripts-0.0.1-r183
deleted file mode 100644
index 536a0e4..0000000
--- a/metadata/md5-cache/chromeos-base/arc-common-scripts-0.0.1-r183
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-DESCRIPTION=ARC++ common scripts.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/scripts
-IUSE=arcpp iioservice cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_bb51f9f8da453999f939ccb6a91e5c1a73b89308_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!<=chromeos-base/arc-base-0.0.1-r349 !<chromeos-base/arc-setup-0.0.1-r1084 app-misc/jq
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4d3fb0a926c7b7259fc2af13ef6cc7de
diff --git a/metadata/md5-cache/chromeos-base/arc-common-scripts-0.0.1-r211 b/metadata/md5-cache/chromeos-base/arc-common-scripts-0.0.1-r211
new file mode 100644
index 0000000..bf78ad3
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-common-scripts-0.0.1-r211
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=ARC++ common scripts.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/scripts
+IUSE=arcpp iioservice cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_434170aa6f4b0783eb80a76648f8e27f71b420fd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!<=chromeos-base/arc-base-0.0.1-r349 !<chromeos-base/arc-setup-0.0.1-r1084 app-misc/jq
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ae8480eb610772e9329fd917c4faf046
diff --git a/metadata/md5-cache/chromeos-base/arc-common-scripts-9999 b/metadata/md5-cache/chromeos-base/arc-common-scripts-9999
index e5548a8..96b8033 100644
--- a/metadata/md5-cache/chromeos-base/arc-common-scripts-9999
+++ b/metadata/md5-cache/chromeos-base/arc-common-scripts-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=!<=chromeos-base/arc-base-0.0.1-r349 !<chromeos-base/arc-setup-0.0.1-r1084 app-misc/jq
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=a920258a7e171b7f4f41a930e56f1b30
diff --git a/metadata/md5-cache/chromeos-base/arc-data-snapshotd-0.0.1-r116 b/metadata/md5-cache/chromeos-base/arc-data-snapshotd-0.0.1-r116
new file mode 100644
index 0000000..4c894ac
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-data-snapshotd-0.0.1-r116
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/bootlockbox-client:= chromeos-base/minijail:= chromeos-base/system_api:= dev-libs/protobuf:= selinux? ( sys-libs/libselinux:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=ARC data snapshotd daemon in Chrome OS.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/arc/data-snapshotd
+IUSE=+seccomp selinux cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2990ccc5d96216d454ad2d415b45bde9bbf0f80f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2990ccc5d96216d454ad2d415b45bde9bbf0f80f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/bootlockbox-client:= chromeos-base/minijail:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r116
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=5d8ba93368deb4c869a3af0a04e654ca
diff --git a/metadata/md5-cache/chromeos-base/arc-data-snapshotd-0.0.1-r84 b/metadata/md5-cache/chromeos-base/arc-data-snapshotd-0.0.1-r84
deleted file mode 100644
index 41b59ee..0000000
--- a/metadata/md5-cache/chromeos-base/arc-data-snapshotd-0.0.1-r84
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/bootlockbox-client:= chromeos-base/minijail:= chromeos-base/system_api:= dev-libs/protobuf:= selinux? ( sys-libs/libselinux:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=ARC data snapshotd daemon in Chrome OS.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/arc/data-snapshotd
-IUSE=+seccomp selinux cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_9107f8d50d8863fe8587f75a2d4d7560450cf59d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_9107f8d50d8863fe8587f75a2d4d7560450cf59d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/bootlockbox-client:= chromeos-base/minijail:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r84
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=35d6655de369d5ee2212c8a851dc7c82
diff --git a/metadata/md5-cache/chromeos-base/arc-data-snapshotd-9999 b/metadata/md5-cache/chromeos-base/arc-data-snapshotd-9999
index 43fda9c..45ab407 100644
--- a/metadata/md5-cache/chromeos-base/arc-data-snapshotd-9999
+++ b/metadata/md5-cache/chromeos-base/arc-data-snapshotd-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/bootlockbox-client:= chromeos-base/minijail:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=da054c6f8f15cca6ca05e572e429d7e9
diff --git a/metadata/md5-cache/chromeos-base/arc-host-clock-service-0.0.1-r59 b/metadata/md5-cache/chromeos-base/arc-host-clock-service-0.0.1-r59
deleted file mode 100644
index 414c2c8..0000000
--- a/metadata/md5-cache/chromeos-base/arc-host-clock-service-0.0.1-r59
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/system_api >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=ARC host clock service
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/arc/vm/host_clock
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_d5ebac6b78340ae031e643c6ddb2afdb32017e76_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_d5ebac6b78340ae031e643c6ddb2afdb32017e76_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r59
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=bb5a2154a903f93ee544427b92fe6d4c
diff --git a/metadata/md5-cache/chromeos-base/arc-host-clock-service-0.0.1-r85 b/metadata/md5-cache/chromeos-base/arc-host-clock-service-0.0.1-r85
new file mode 100644
index 0000000..d9ad588
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-host-clock-service-0.0.1-r85
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/system_api >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=ARC host clock service
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/arc/vm/host_clock
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_cca15ee6031a3289ea3e45535963bb5874662caa_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_cca15ee6031a3289ea3e45535963bb5874662caa_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r85
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=50d66050decf1c19886e89c6e87d3657
diff --git a/metadata/md5-cache/chromeos-base/arc-host-clock-service-9999 b/metadata/md5-cache/chromeos-base/arc-host-clock-service-9999
index 73b846c..f149269 100644
--- a/metadata/md5-cache/chromeos-base/arc-host-clock-service-9999
+++ b/metadata/md5-cache/chromeos-base/arc-host-clock-service-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=e0dcfac9ce27526432adffbbebdecbfe
diff --git a/metadata/md5-cache/chromeos-base/arc-keymaster-0.0.1-r246 b/metadata/md5-cache/chromeos-base/arc-keymaster-0.0.1-r246
deleted file mode 100644
index b668386..0000000
--- a/metadata/md5-cache/chromeos-base/arc-keymaster-0.0.1-r246
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-util/ninja >=dev-util/cmake-3.9.6 dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst prepare setup test unpack
-DEPEND=chromeos-base/chaps:= chromeos-base/cryptohome:= chromeos-base/minijail:= dev-libs/protobuf:= chromeos-base/session_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Android keymaster service in Chrome OS.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/keymaster
-IUSE=+seccomp cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_cd360f89c2a9c43343acba09894918cb5ef94620_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_6dbc19849752c206e135ab59349ebb1cc62bb435 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_cd360f89c2a9c43343acba09894918cb5ef94620_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_6dbc19849752c206e135ab59349ebb1cc62bb435 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/chaps:= chromeos-base/cryptohome:= chromeos-base/minijail:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r246
-SRC_URI=https://github.com/google/boringssl/archive/430a7423039682e4bbc7b522e3b57b2c8dca5e3b.tar.gz -> boringssl-430a7423039682e4bbc7b522e3b57b2c8dca5e3b.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=ef0a0e473ba1616cd1ae75f50288a58b
diff --git a/metadata/md5-cache/chromeos-base/arc-keymaster-0.0.1-r283 b/metadata/md5-cache/chromeos-base/arc-keymaster-0.0.1-r283
new file mode 100644
index 0000000..992434a
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-keymaster-0.0.1-r283
@@ -0,0 +1,15 @@
+BDEPEND=dev-util/ninja >=dev-util/cmake-3.9.6 dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst prepare setup test unpack
+DEPEND=chromeos-base/chaps:= chromeos-base/cryptohome:= chromeos-base/cryptohome-client:= chromeos-base/minijail:= dev-libs/protobuf:= chromeos-base/session_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Android keymaster service in Chrome OS.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/keymaster
+IUSE=+seccomp cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_222cd53e50c531fae543745aeb9c0530e50aca32_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_6dbc19849752c206e135ab59349ebb1cc62bb435 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_222cd53e50c531fae543745aeb9c0530e50aca32_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_6dbc19849752c206e135ab59349ebb1cc62bb435 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chaps:= chromeos-base/cryptohome:= chromeos-base/cryptohome-client:= chromeos-base/minijail:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r283
+SRC_URI=https://github.com/google/boringssl/archive/430a7423039682e4bbc7b522e3b57b2c8dca5e3b.tar.gz -> boringssl-430a7423039682e4bbc7b522e3b57b2c8dca5e3b.tar.gz
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=78d84f3069441d2ab27230f2eab07779
diff --git a/metadata/md5-cache/chromeos-base/arc-keymaster-9999 b/metadata/md5-cache/chromeos-base/arc-keymaster-9999
index 79616b2..a7924f4 100644
--- a/metadata/md5-cache/chromeos-base/arc-keymaster-9999
+++ b/metadata/md5-cache/chromeos-base/arc-keymaster-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-util/ninja >=dev-util/cmake-3.9.6 dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install preinst prepare setup test unpack
-DEPEND=chromeos-base/chaps:= chromeos-base/cryptohome:= chromeos-base/minijail:= dev-libs/protobuf:= chromeos-base/session_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/chaps:= chromeos-base/cryptohome:= chromeos-base/cryptohome-client:= chromeos-base/minijail:= dev-libs/protobuf:= chromeos-base/session_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Android keymaster service in Chrome OS.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/keymaster
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/chaps:= chromeos-base/cryptohome:= chromeos-base/minijail:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/chaps:= chromeos-base/cryptohome:= chromeos-base/cryptohome-client:= chromeos-base/minijail:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
 SRC_URI=https://github.com/google/boringssl/archive/430a7423039682e4bbc7b522e3b57b2c8dca5e3b.tar.gz -> boringssl-430a7423039682e4bbc7b522e3b57b2c8dca5e3b.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=cd094eee39846de7b725d05e6828cbfd
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=205163086143f8baab40964f0e3881e6
diff --git a/metadata/md5-cache/chromeos-base/arc-myfiles-0.0.1-r201 b/metadata/md5-cache/chromeos-base/arc-myfiles-0.0.1-r201
deleted file mode 100644
index b0031b3..0000000
--- a/metadata/md5-cache/chromeos-base/arc-myfiles-0.0.1-r201
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-DESCRIPTION=Container to run Android's MyFiles daemon.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/myfiles
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_c8a2550e2697f391dc686b4a72841d4568a5de73_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/mount-passthrough !<chromeos-base/chromeos-cheets-scripts-0.0.2-r470
-SLOT=0/0.0.1-r201
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=66fbee9b133736a272109b4981f36062
diff --git a/metadata/md5-cache/chromeos-base/arc-myfiles-0.0.1-r226 b/metadata/md5-cache/chromeos-base/arc-myfiles-0.0.1-r226
new file mode 100644
index 0000000..b90a42f
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-myfiles-0.0.1-r226
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Container to run Android's MyFiles daemon.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/myfiles
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c8a2550e2697f391dc686b4a72841d4568a5de73_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/mount-passthrough !<chromeos-base/chromeos-cheets-scripts-0.0.2-r470
+SLOT=0/0.0.1-r226
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=54915c6b3f0971dabfe72a4f52461a54
diff --git a/metadata/md5-cache/chromeos-base/arc-myfiles-9999 b/metadata/md5-cache/chromeos-base/arc-myfiles-9999
index 664013e..b461ee9 100644
--- a/metadata/md5-cache/chromeos-base/arc-myfiles-9999
+++ b/metadata/md5-cache/chromeos-base/arc-myfiles-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/mount-passthrough !<chromeos-base/chromeos-cheets-scripts-0.0.2-r470
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=c72484fefc9e714796fe3eca2e5322b7
diff --git a/metadata/md5-cache/chromeos-base/arc-obb-mounter-0.0.2-r451 b/metadata/md5-cache/chromeos-base/arc-obb-mounter-0.0.2-r451
deleted file mode 100644
index cbc6d7a..0000000
--- a/metadata/md5-cache/chromeos-base/arc-obb-mounter-0.0.2-r451
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=D-Bus service to mount OBB files
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/obb-mounter
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e77993554f66d7d254d4cdb7210c63195cd7d453_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e77993554f66d7d254d4cdb7210c63195cd7d453_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.2-r451
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6e1c4668d225081f303baacfb2f83454
diff --git a/metadata/md5-cache/chromeos-base/arc-obb-mounter-0.0.2-r482 b/metadata/md5-cache/chromeos-base/arc-obb-mounter-0.0.2-r482
new file mode 100644
index 0000000..0b49e22
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-obb-mounter-0.0.2-r482
@@ -0,0 +1,14 @@
+BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=D-Bus service to mount OBB files
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/obb-mounter
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_63863adae39809cf6a9db2633d644dd8200dd340_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_63863adae39809cf6a9db2633d644dd8200dd340_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.2-r482
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=94c8e3035e72cb0e94ce70be77c9d379
diff --git a/metadata/md5-cache/chromeos-base/arc-obb-mounter-9999 b/metadata/md5-cache/chromeos-base/arc-obb-mounter-9999
index bdc0051..46ed3ff 100644
--- a/metadata/md5-cache/chromeos-base/arc-obb-mounter-9999
+++ b/metadata/md5-cache/chromeos-base/arc-obb-mounter-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=fcc926e007dcad9c377f001176341b5f
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6b3690101a1ac92fe67798c77dbed2f7
diff --git a/metadata/md5-cache/chromeos-base/arc-removable-media-0.0.1-r293 b/metadata/md5-cache/chromeos-base/arc-removable-media-0.0.1-r293
deleted file mode 100644
index a18191b..0000000
--- a/metadata/md5-cache/chromeos-base/arc-removable-media-0.0.1-r293
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-DESCRIPTION=Container to run Android's removable-media daemon.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/removable-media
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a668f1f1ed688f833488719ca2ccefc7e1e4272b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/mount-passthrough !<chromeos-base/chromeos-cheets-scripts-0.0.2-r470
-SLOT=0/0.0.1-r293
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3db88b03e724a90d6b7d621a3143d535
diff --git a/metadata/md5-cache/chromeos-base/arc-removable-media-0.0.1-r318 b/metadata/md5-cache/chromeos-base/arc-removable-media-0.0.1-r318
new file mode 100644
index 0000000..c822ea3
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-removable-media-0.0.1-r318
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Container to run Android's removable-media daemon.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/removable-media
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_a668f1f1ed688f833488719ca2ccefc7e1e4272b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/mount-passthrough !<chromeos-base/chromeos-cheets-scripts-0.0.2-r470
+SLOT=0/0.0.1-r318
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=796e45e87dad9510570fb8ee85228f85
diff --git a/metadata/md5-cache/chromeos-base/arc-removable-media-9999 b/metadata/md5-cache/chromeos-base/arc-removable-media-9999
index 840ac94..aea49c0 100644
--- a/metadata/md5-cache/chromeos-base/arc-removable-media-9999
+++ b/metadata/md5-cache/chromeos-base/arc-removable-media-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/mount-passthrough !<chromeos-base/chromeos-cheets-scripts-0.0.2-r470
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ea2bff079b6f94dfb4ad0ea84fe9bd83
diff --git a/metadata/md5-cache/chromeos-base/arc-sdcard-0.0.1-r293 b/metadata/md5-cache/chromeos-base/arc-sdcard-0.0.1-r293
deleted file mode 100644
index ce2786b..0000000
--- a/metadata/md5-cache/chromeos-base/arc-sdcard-0.0.1-r293
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Container to run Android's sdcard daemon.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/sdcard
-IUSE=esdfs cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8d42b591edbde62798f5c6399507eb627c83326f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8d42b591edbde62798f5c6399507eb627c83326f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!esdfs? ( chromeos-base/arc-setup ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r293
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3b2c2416efee91e8812e28eb94f4c84a
diff --git a/metadata/md5-cache/chromeos-base/arc-sdcard-0.0.1-r318 b/metadata/md5-cache/chromeos-base/arc-sdcard-0.0.1-r318
new file mode 100644
index 0000000..c6814fc
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-sdcard-0.0.1-r318
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Container to run Android's sdcard daemon.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/container/sdcard
+IUSE=esdfs cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_94ae762a180b92279a7a9f0009240f9eaa7f435e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_94ae762a180b92279a7a9f0009240f9eaa7f435e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!esdfs? ( chromeos-base/arc-setup ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r318
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=07403f3d1d6245884485300f82ece70c
diff --git a/metadata/md5-cache/chromeos-base/arc-sdcard-9999 b/metadata/md5-cache/chromeos-base/arc-sdcard-9999
index 1c9f998..b55259b 100644
--- a/metadata/md5-cache/chromeos-base/arc-sdcard-9999
+++ b/metadata/md5-cache/chromeos-base/arc-sdcard-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=!esdfs? ( chromeos-base/arc-setup ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6dce9b56a4e25d28d1c7301fc5da5430
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a2449615783a3abfa1d2f1d42db2b5b3
diff --git a/metadata/md5-cache/chromeos-base/arc-sensor-service-0.0.1-r106 b/metadata/md5-cache/chromeos-base/arc-sensor-service-0.0.1-r106
new file mode 100644
index 0000000..80c0b5c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-sensor-service-0.0.1-r106
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=ARC sensor service.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/sensor_service
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ec78547a4cf853b7a6279e652b11383b0ba8115e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ec78547a4cf853b7a6279e652b11383b0ba8115e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r106
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=14d04250e114c545b4d2b4810a4a0cb3
diff --git a/metadata/md5-cache/chromeos-base/arc-sensor-service-0.0.1-r79 b/metadata/md5-cache/chromeos-base/arc-sensor-service-0.0.1-r79
deleted file mode 100644
index 45b7d34..0000000
--- a/metadata/md5-cache/chromeos-base/arc-sensor-service-0.0.1-r79
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=ARC sensor service.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/sensor_service
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_37d18ee31b53064c7077aaf9c02849897112588c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_37d18ee31b53064c7077aaf9c02849897112588c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r79
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=62060ae5dfaadf7faba3e7a828e1092c
diff --git a/metadata/md5-cache/chromeos-base/arc-sensor-service-9999 b/metadata/md5-cache/chromeos-base/arc-sensor-service-9999
index 038cfa5..8b9b5f8 100644
--- a/metadata/md5-cache/chromeos-base/arc-sensor-service-9999
+++ b/metadata/md5-cache/chromeos-base/arc-sensor-service-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=0b7af6d03bcc066f8b88eb8b54979f7f
diff --git a/metadata/md5-cache/chromeos-base/arc-setup-0.0.1-r1248 b/metadata/md5-cache/chromeos-base/arc-setup-0.0.1-r1248
deleted file mode 100644
index eb030e4..0000000
--- a/metadata/md5-cache/chromeos-base/arc-setup-0.0.1-r1248
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=arcpp? ( esdfs? ( chromeos-base/arc-sdcard ) ) chromeos-base/bootstat:= chromeos-base/chromeos-config-tools:= chromeos-base/cryptohome-client:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/patchpanel-client:= dev-libs/libxml2:= dev-libs/protobuf:= sys-libs/libselinux:= chromeos-base/minijail:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/system_api:=[fuzzer?] test? ( chromeos-base/arc-base ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Set up environment to run ARC.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/setup
-IUSE=arcpp arcvm esdfs fuzzer generated_cros_config houdini houdini64 iioservice ndk_translation unibuild test cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_f4925a46fc9b9ab39b7c7a11ad97e12a0d0bb39d_aa0612733aca2d5ffa65470f07408228b473ebdb_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_f4925a46fc9b9ab39b7c7a11ad97e12a0d0bb39d_aa0612733aca2d5ffa65470f07408228b473ebdb_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=arcpp? ( esdfs? ( chromeos-base/arc-sdcard ) ) chromeos-base/bootstat:= chromeos-base/chromeos-config-tools:= chromeos-base/cryptohome-client:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/patchpanel-client:= dev-libs/libxml2:= dev-libs/protobuf:= sys-libs/libselinux:= chromeos-base/minijail:= !<chromeos-base/arc-common-scripts-0.0.1-r131 !<chromeos-base/arcvm-common-scripts-0.0.1-r77 chromeos-base/patchpanel arcvm? ( chromeos-base/crosvm ) arcpp? ( chromeos-base/swap-init esdfs? ( sys-apps/restorecon ) ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=|| ( arcpp arcvm )
-SLOT=0/0.0.1-r1248
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=bd249c8d2a40a39a09aa4174c3b04ab4
diff --git a/metadata/md5-cache/chromeos-base/arc-setup-0.0.1-r1324 b/metadata/md5-cache/chromeos-base/arc-setup-0.0.1-r1324
new file mode 100644
index 0000000..ed6d0f4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arc-setup-0.0.1-r1324
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=arcpp? ( esdfs? ( chromeos-base/arc-sdcard ) ) chromeos-base/bootstat:= chromeos-base/chromeos-config-tools:= chromeos-base/cryptohome-client:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/patchpanel-client:= dev-libs/libxml2:= dev-libs/protobuf:= sys-libs/libselinux:= chromeos-base/minijail:= chromeos-base/system_api:=[fuzzer?] test? ( chromeos-base/arc-base ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Set up environment to run ARC.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/setup
+IUSE=arcpp arcvm esdfs fuzzer houdini houdini64 iioservice ndk_translation test cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_079fc106d691c6c107528102d9c248d99e3d9663_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_079fc106d691c6c107528102d9c248d99e3d9663_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=arcpp? ( esdfs? ( chromeos-base/arc-sdcard ) ) chromeos-base/bootstat:= chromeos-base/chromeos-config-tools:= chromeos-base/cryptohome-client:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/patchpanel-client:= dev-libs/libxml2:= dev-libs/protobuf:= sys-libs/libselinux:= chromeos-base/minijail:= !<chromeos-base/arc-common-scripts-0.0.1-r131 !<chromeos-base/arcvm-common-scripts-0.0.1-r77 chromeos-base/patchpanel arcvm? ( chromeos-base/crosvm ) arcpp? ( chromeos-base/swap-init esdfs? ( sys-apps/restorecon ) ) virtual/tmpfiles has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=|| ( arcpp arcvm )
+SLOT=0/0.0.1-r1324
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=85f079dc22510a6481bb6bad8aa43aef
diff --git a/metadata/md5-cache/chromeos-base/arc-setup-9999 b/metadata/md5-cache/chromeos-base/arc-setup-9999
index 2b98832..7bb4514 100644
--- a/metadata/md5-cache/chromeos-base/arc-setup-9999
+++ b/metadata/md5-cache/chromeos-base/arc-setup-9999
@@ -1,15 +1,15 @@
-BDEPEND=dev-vcs/git dev-vcs/git
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=arcpp? ( esdfs? ( chromeos-base/arc-sdcard ) ) chromeos-base/bootstat:= chromeos-base/chromeos-config-tools:= chromeos-base/cryptohome-client:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/patchpanel-client:= dev-libs/libxml2:= dev-libs/protobuf:= sys-libs/libselinux:= chromeos-base/minijail:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/system_api:=[fuzzer?] test? ( chromeos-base/arc-base ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=arcpp? ( esdfs? ( chromeos-base/arc-sdcard ) ) chromeos-base/bootstat:= chromeos-base/chromeos-config-tools:= chromeos-base/cryptohome-client:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/patchpanel-client:= dev-libs/libxml2:= dev-libs/protobuf:= sys-libs/libselinux:= chromeos-base/minijail:= chromeos-base/system_api:=[fuzzer?] test? ( chromeos-base/arc-base ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Set up environment to run ARC.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/setup
-IUSE=arcpp arcvm esdfs fuzzer generated_cros_config houdini houdini64 iioservice ndk_translation unibuild test cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=arcpp arcvm esdfs fuzzer houdini houdini64 iioservice ndk_translation test cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=arcpp? ( esdfs? ( chromeos-base/arc-sdcard ) ) chromeos-base/bootstat:= chromeos-base/chromeos-config-tools:= chromeos-base/cryptohome-client:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/patchpanel-client:= dev-libs/libxml2:= dev-libs/protobuf:= sys-libs/libselinux:= chromeos-base/minijail:= !<chromeos-base/arc-common-scripts-0.0.1-r131 !<chromeos-base/arcvm-common-scripts-0.0.1-r77 chromeos-base/patchpanel arcvm? ( chromeos-base/crosvm ) arcpp? ( chromeos-base/swap-init esdfs? ( sys-apps/restorecon ) ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=arcpp? ( esdfs? ( chromeos-base/arc-sdcard ) ) chromeos-base/bootstat:= chromeos-base/chromeos-config-tools:= chromeos-base/cryptohome-client:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/patchpanel-client:= dev-libs/libxml2:= dev-libs/protobuf:= sys-libs/libselinux:= chromeos-base/minijail:= !<chromeos-base/arc-common-scripts-0.0.1-r131 !<chromeos-base/arcvm-common-scripts-0.0.1-r77 chromeos-base/patchpanel arcvm? ( chromeos-base/crosvm ) arcpp? ( chromeos-base/swap-init esdfs? ( sys-apps/restorecon ) ) virtual/tmpfiles has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 REQUIRED_USE=|| ( arcpp arcvm )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7cd93220f1362dd86af2787490c2374e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5d5b13c10c66e6245850dd4e1ca8e382
diff --git a/metadata/md5-cache/chromeos-base/arc-sslh-init-0.0.1-r19 b/metadata/md5-cache/chromeos-base/arc-sslh-init-0.0.1-r22
similarity index 100%
rename from metadata/md5-cache/chromeos-base/arc-sslh-init-0.0.1-r19
rename to metadata/md5-cache/chromeos-base/arc-sslh-init-0.0.1-r22
diff --git a/metadata/md5-cache/chromeos-base/arcvm-boot-notification-server-0.0.1-r102 b/metadata/md5-cache/chromeos-base/arcvm-boot-notification-server-0.0.1-r102
deleted file mode 100644
index 5e283a8..0000000
--- a/metadata/md5-cache/chromeos-base/arcvm-boot-notification-server-0.0.1-r102
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=ARCVM boot notification server
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/boot_notification_server
-IUSE=+seccomp cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_0c5d891fa800a59e0e40fbece73b10a84f3fde65_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_0c5d891fa800a59e0e40fbece73b10a84f3fde65_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=28665b566f9dd859deeed2ec932f5a2c
diff --git a/metadata/md5-cache/chromeos-base/arcvm-boot-notification-server-0.0.1-r131 b/metadata/md5-cache/chromeos-base/arcvm-boot-notification-server-0.0.1-r131
new file mode 100644
index 0000000..6199e15
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arcvm-boot-notification-server-0.0.1-r131
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=ARCVM boot notification server
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/boot_notification_server
+IUSE=+seccomp cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_cb40b464bebda1c6fe4169ae48078e8388cfacde_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_cb40b464bebda1c6fe4169ae48078e8388cfacde_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=68ffe0865321ea4bab767f22c3578271
diff --git a/metadata/md5-cache/chromeos-base/arcvm-boot-notification-server-9999 b/metadata/md5-cache/chromeos-base/arcvm-boot-notification-server-9999
index 35001a5..2b9a62f0 100644
--- a/metadata/md5-cache/chromeos-base/arcvm-boot-notification-server-9999
+++ b/metadata/md5-cache/chromeos-base/arcvm-boot-notification-server-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=57dae0871a0fad1995e17d6734e131a0
diff --git a/metadata/md5-cache/chromeos-base/arcvm-common-scripts-0.0.1-r140 b/metadata/md5-cache/chromeos-base/arcvm-common-scripts-0.0.1-r140
deleted file mode 100644
index a0cc876..0000000
--- a/metadata/md5-cache/chromeos-base/arcvm-common-scripts-0.0.1-r140
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-DESCRIPTION=ARCVM common scripts.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/scripts
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_68f4c05e6bc458438aeae9eaf6c21df9bbf74427_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!<=chromeos-base/arc-base-0.0.1-r349 !<=chromeos-base/arc-common-scripts-0.0.1-r132 chromeos-base/arcvm-mount-media-dirs
-SLOT=0/0.0.1-r140
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=78ec9f6a3588690cb85ab30a2cee978c
diff --git a/metadata/md5-cache/chromeos-base/arcvm-common-scripts-0.0.1-r170 b/metadata/md5-cache/chromeos-base/arcvm-common-scripts-0.0.1-r170
new file mode 100644
index 0000000..29d53f6
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arcvm-common-scripts-0.0.1-r170
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=ARCVM common scripts.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/scripts
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ed9e63bcf54c862d625a1306658dc5fdeffd637e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!<=chromeos-base/arc-base-0.0.1-r349 !<=chromeos-base/arc-common-scripts-0.0.1-r132 chromeos-base/arcvm-mount-media-dirs
+SLOT=0/0.0.1-r170
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a76a9ddfedd92feba609d48323c1d801
diff --git a/metadata/md5-cache/chromeos-base/arcvm-common-scripts-9999 b/metadata/md5-cache/chromeos-base/arcvm-common-scripts-9999
index c7df440..4bad73e 100644
--- a/metadata/md5-cache/chromeos-base/arcvm-common-scripts-9999
+++ b/metadata/md5-cache/chromeos-base/arcvm-common-scripts-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=!<=chromeos-base/arc-base-0.0.1-r349 !<=chromeos-base/arc-common-scripts-0.0.1-r132 chromeos-base/arcvm-mount-media-dirs
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1bff439b681cf3685400f535f0456d56
diff --git a/metadata/md5-cache/chromeos-base/arcvm-forward-pstore-0.0.1-r175 b/metadata/md5-cache/chromeos-base/arcvm-forward-pstore-0.0.1-r175
deleted file mode 100644
index 0574fee..0000000
--- a/metadata/md5-cache/chromeos-base/arcvm-forward-pstore-0.0.1-r175
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/protobuf:= chromeos-base/system_api:= chromeos-base/vm_protos:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Forwards pstore file for ARCVM after upgrade.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/arc/vm/forward-pstore
-IUSE=+seccomp cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7743fe686ef9bd5ed2f18d1eb6cf820611970167_7ef75a42aba67052842459f221271e681184cc89_c1bde153626532428bf7409bc0597e79452c5eb8 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7743fe686ef9bd5ed2f18d1eb6cf820611970167_7ef75a42aba67052842459f221271e681184cc89_c1bde153626532428bf7409bc0597e79452c5eb8 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8fee15e6e7f676ccac535b13a5845208
diff --git a/metadata/md5-cache/chromeos-base/arcvm-forward-pstore-0.0.1-r204 b/metadata/md5-cache/chromeos-base/arcvm-forward-pstore-0.0.1-r204
new file mode 100644
index 0000000..9ef319b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arcvm-forward-pstore-0.0.1-r204
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/protobuf:= chromeos-base/system_api:= chromeos-base/vm_protos:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Forwards pstore file for ARCVM after upgrade.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/arc/vm/forward-pstore
+IUSE=+seccomp cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_b4fab968c859994b8684a18449d80d4279f6c706_7ef75a42aba67052842459f221271e681184cc89_c1bde153626532428bf7409bc0597e79452c5eb8 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_b4fab968c859994b8684a18449d80d4279f6c706_7ef75a42aba67052842459f221271e681184cc89_c1bde153626532428bf7409bc0597e79452c5eb8 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0bf462bd930b038b3a22ac6fe216fbc6
diff --git a/metadata/md5-cache/chromeos-base/arcvm-forward-pstore-9999 b/metadata/md5-cache/chromeos-base/arcvm-forward-pstore-9999
index cde7707..0bc1535 100644
--- a/metadata/md5-cache/chromeos-base/arcvm-forward-pstore-9999
+++ b/metadata/md5-cache/chromeos-base/arcvm-forward-pstore-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5fe2f9eb5c671a0f0b8ddc515adfbe39
diff --git a/metadata/md5-cache/chromeos-base/arcvm-mojo-proxy-0.0.1-r34 b/metadata/md5-cache/chromeos-base/arcvm-mojo-proxy-0.0.1-r34
deleted file mode 100644
index 862705c..0000000
--- a/metadata/md5-cache/chromeos-base/arcvm-mojo-proxy-0.0.1-r34
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=!chromeos-base/arcvm-vsock-proxy dev-libs/protobuf:= sys-fs/fuse >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=ARCVM mojo proxy.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/mojo_proxy
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e23cacccf4a8be891ad29fabf2c717600327a772_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e23cacccf4a8be891ad29fabf2c717600327a772_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!chromeos-base/arcvm-vsock-proxy dev-libs/protobuf:= sys-fs/fuse >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r34
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=0fcf3d1793f38781b41fb2b65243dff4
diff --git a/metadata/md5-cache/chromeos-base/arcvm-mojo-proxy-0.0.1-r62 b/metadata/md5-cache/chromeos-base/arcvm-mojo-proxy-0.0.1-r62
new file mode 100644
index 0000000..96e23a9
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arcvm-mojo-proxy-0.0.1-r62
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/protobuf:= sys-fs/fuse >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=ARCVM mojo proxy.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/mojo_proxy
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_f1a3e4ff4103d5e0d2dd4c9f705a5c3cc14fd97a_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_f1a3e4ff4103d5e0d2dd4c9f705a5c3cc14fd97a_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= sys-fs/fuse >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r62
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5e439f1dc559441ac2f433d5bc1e4c99
diff --git a/metadata/md5-cache/chromeos-base/arcvm-mojo-proxy-9999 b/metadata/md5-cache/chromeos-base/arcvm-mojo-proxy-9999
index 9429a4b..1645bc5 100644
--- a/metadata/md5-cache/chromeos-base/arcvm-mojo-proxy-9999
+++ b/metadata/md5-cache/chromeos-base/arcvm-mojo-proxy-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=!chromeos-base/arcvm-vsock-proxy dev-libs/protobuf:= sys-fs/fuse >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=dev-libs/protobuf:= sys-fs/fuse >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=ARCVM mojo proxy.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/mojo_proxy
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=!chromeos-base/arcvm-vsock-proxy dev-libs/protobuf:= sys-fs/fuse >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=dev-libs/protobuf:= sys-fs/fuse >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=26dedf56129316241b4a197056cbbf96
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=56dc2b8baa69779e97bc7699a8485c8f
diff --git a/metadata/md5-cache/chromeos-base/arcvm-mount-media-dirs-0.0.1-r70 b/metadata/md5-cache/chromeos-base/arcvm-mount-media-dirs-0.0.1-r70
deleted file mode 100644
index 1c391b2..0000000
--- a/metadata/md5-cache/chromeos-base/arcvm-mount-media-dirs-0.0.1-r70
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-DESCRIPTION=Mount media directories on a mount point shared with ARCVM.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/scripts/init/mount-media-dirs
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_954e934fa76d67253d978d97346b24a1fce9be2c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/mount-passthrough
-SLOT=0/0.0.1-r70
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=bbe3939d51f084b8765badac56776f70
diff --git a/metadata/md5-cache/chromeos-base/arcvm-mount-media-dirs-0.0.1-r95 b/metadata/md5-cache/chromeos-base/arcvm-mount-media-dirs-0.0.1-r95
new file mode 100644
index 0000000..a978853
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/arcvm-mount-media-dirs-0.0.1-r95
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Mount media directories on a mount point shared with ARCVM.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/scripts/init/mount-media-dirs
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_954e934fa76d67253d978d97346b24a1fce9be2c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/mount-passthrough
+SLOT=0/0.0.1-r95
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7253b93485bc75d51c7e7afb4ba43052
diff --git a/metadata/md5-cache/chromeos-base/arcvm-mount-media-dirs-9999 b/metadata/md5-cache/chromeos-base/arcvm-mount-media-dirs-9999
index 16d35ea..7df5b3f 100644
--- a/metadata/md5-cache/chromeos-base/arcvm-mount-media-dirs-9999
+++ b/metadata/md5-cache/chromeos-base/arcvm-mount-media-dirs-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/mount-passthrough
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=c44d451e0153287762781756f3bf287d
diff --git a/metadata/md5-cache/chromeos-base/atrusctl-0.0.1-r973 b/metadata/md5-cache/chromeos-base/atrusctl-0.0.1-r973
deleted file mode 100644
index e236707..0000000
--- a/metadata/md5-cache/chromeos-base/atrusctl-0.0.1-r973
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=virtual/libusb:1 virtual/libudev:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=CrOS daemon for the Atrus speakerphone
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/atrusctl/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_90cfa2a210ebed49a8ce050686db523ef372c62c cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_90cfa2a210ebed49a8ce050686db523ef372c62c cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=virtual/libusb:1 virtual/libudev:0= !sys-apps/atrusctl >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r973
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=f2f667c434c3f9e06451c2c7f7435067
diff --git a/metadata/md5-cache/chromeos-base/atrusctl-0.0.1-r999 b/metadata/md5-cache/chromeos-base/atrusctl-0.0.1-r999
new file mode 100644
index 0000000..4592852
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/atrusctl-0.0.1-r999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=virtual/libusb:1 virtual/libudev:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=CrOS daemon for the Atrus speakerphone
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/atrusctl/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_3217b3c0f1cdbcfb2cbe6d195c04b3753392783f cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_3217b3c0f1cdbcfb2cbe6d195c04b3753392783f cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=virtual/libusb:1 virtual/libudev:0= !sys-apps/atrusctl >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=859b58347abd813043c1af194079fc74
diff --git a/metadata/md5-cache/chromeos-base/atrusctl-9999 b/metadata/md5-cache/chromeos-base/atrusctl-9999
index d72cba5..45123c0 100644
--- a/metadata/md5-cache/chromeos-base/atrusctl-9999
+++ b/metadata/md5-cache/chromeos-base/atrusctl-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=virtual/libusb:1 virtual/libudev:0= !sys-apps/atrusctl >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=f98821055cc3d7477ed44a3a63a2f2d4
diff --git a/metadata/md5-cache/chromeos-base/attestation-0.0.1-r3188 b/metadata/md5-cache/chromeos-base/attestation-0.0.1-r3188
deleted file mode 100644
index f4219d4..0000000
--- a/metadata/md5-cache/chromeos-base/attestation-0.0.1-r3188
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/chaps:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/tpm_manager:= chromeos-base/attestation-client test? ( chromeos-base/libhwsec:= ) chromeos-base/vboot_reference:= tpm2? ( chromeos-base/trunks:=[test?] chromeos-base/chromeos-ec-headers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Attestation service for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/attestation/
-IUSE=generic_tpm2 test tpm tpm2 cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8a6aa0783afea740fe52cec225aef91187cbcde6_8640df3a4aff4084b644aeefc4d31752a1d97665_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8a6aa0783afea740fe52cec225aef91187cbcde6_8640df3a4aff4084b644aeefc4d31752a1d97665_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=Apache-2.0
-PROPERTIES=live live
-RDEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/chaps:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/tpm_manager:= chromeos-base/attestation-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=tpm2? ( !tpm )
-SLOT=0/0.0.1-r3188
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=8b8ee3ee45754a2abb859df14b1526dd
diff --git a/metadata/md5-cache/chromeos-base/attestation-0.0.1-r3306 b/metadata/md5-cache/chromeos-base/attestation-0.0.1-r3306
new file mode 100644
index 0000000..6c1e038
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/attestation-0.0.1-r3306
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/chaps:= chromeos-base/libhwsec-foundation:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/tpm_manager:= chromeos-base/attestation-client test? ( chromeos-base/libhwsec:= ) chromeos-base/vboot_reference:= tpm2? ( chromeos-base/trunks:=[test?] chromeos-base/chromeos-ec-headers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Attestation service for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/attestation/
+IUSE=generic_tpm2 test tpm tpm_dynamic tpm2 cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_0eb41e5da113495ed84a62fb776c5190764cc83d_113dbae63eb106c56996900e98cd65103bf297dc_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_e08a2eb734e33827dffeecf57eca046cd1091373_659b97d9c804b358f4bd27925620d4dd1cee8fc7_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_0eb41e5da113495ed84a62fb776c5190764cc83d_113dbae63eb106c56996900e98cd65103bf297dc_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_e08a2eb734e33827dffeecf57eca046cd1091373_659b97d9c804b358f4bd27925620d4dd1cee8fc7_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=Apache-2.0
+PROPERTIES=live live
+RDEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/chaps:= chromeos-base/libhwsec-foundation:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/tpm_manager:= chromeos-base/attestation-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
+SLOT=0/0.0.1-r3306
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=215145e82cd423edfbe8e538ee7c5f43
diff --git a/metadata/md5-cache/chromeos-base/attestation-9999 b/metadata/md5-cache/chromeos-base/attestation-9999
index eeb8961..f8fc4e3 100644
--- a/metadata/md5-cache/chromeos-base/attestation-9999
+++ b/metadata/md5-cache/chromeos-base/attestation-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/chaps:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/tpm_manager:= chromeos-base/attestation-client test? ( chromeos-base/libhwsec:= ) chromeos-base/vboot_reference:= tpm2? ( chromeos-base/trunks:=[test?] chromeos-base/chromeos-ec-headers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/chaps:= chromeos-base/libhwsec-foundation:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/tpm_manager:= chromeos-base/attestation-client test? ( chromeos-base/libhwsec:= ) chromeos-base/vboot_reference:= tpm2? ( chromeos-base/trunks:=[test?] chromeos-base/chromeos-ec-headers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Attestation service for Chromium OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/attestation/
-IUSE=generic_tpm2 test tpm tpm2 cros_host cros_workon_tree_ cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=generic_tpm2 test tpm tpm_dynamic tpm2 cros_host cros_workon_tree_ cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=Apache-2.0
 PROPERTIES=live live
-RDEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/chaps:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/tpm_manager:= chromeos-base/attestation-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=tpm2? ( !tpm )
+RDEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/chaps:= chromeos-base/libhwsec-foundation:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/tpm_manager:= chromeos-base/attestation-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=f913275287a55ef8f60192b760c7c671
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=ef14a055eb156c17bc120414d3f9a06a
diff --git a/metadata/md5-cache/chromeos-base/attestation-client-0.0.1-r318 b/metadata/md5-cache/chromeos-base/attestation-client-0.0.1-r318
deleted file mode 100644
index e46eb5f..0000000
--- a/metadata/md5-cache/chromeos-base/attestation-client-0.0.1-r318
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=cros_host? ( >=chromeos-base/chromeos-dbus-bindings-0.0.1-r1058 ) chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Attestation D-Bus client library for Chromium OS
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/attestation/client/
-IUSE=cros_host cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8a6aa0783afea740fe52cec225aef91187cbcde6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8a6aa0783afea740fe52cec225aef91187cbcde6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!<chromeos-base/attestation-0.0.1 chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=39dab654f44ae4291f2b15cd6b1180a5
diff --git a/metadata/md5-cache/chromeos-base/attestation-client-0.0.1-r365 b/metadata/md5-cache/chromeos-base/attestation-client-0.0.1-r365
new file mode 100644
index 0000000..ddac7a8
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/attestation-client-0.0.1-r365
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=cros_host? ( >=chromeos-base/chromeos-dbus-bindings-0.0.1-r1058 ) chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Attestation D-Bus client library for Chromium OS
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/attestation/client/
+IUSE=cros_host cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_0eb41e5da113495ed84a62fb776c5190764cc83d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_0eb41e5da113495ed84a62fb776c5190764cc83d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!<chromeos-base/attestation-0.0.1 chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=3351179287040ee4942a07917fdb5550
diff --git a/metadata/md5-cache/chromeos-base/attestation-client-9999 b/metadata/md5-cache/chromeos-base/attestation-client-9999
index 291d912..96e4d6d 100644
--- a/metadata/md5-cache/chromeos-base/attestation-client-9999
+++ b/metadata/md5-cache/chromeos-base/attestation-client-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=!<chromeos-base/attestation-0.0.1 chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=027eb9465b6df47d0395c41add601db0
diff --git a/metadata/md5-cache/chromeos-base/audiotest-0.0.1-r93 b/metadata/md5-cache/chromeos-base/audiotest-0.0.1-r93
deleted file mode 100644
index f5c9714..0000000
--- a/metadata/md5-cache/chromeos-base/audiotest-0.0.1-r93
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=media-libs/alsa-lib media-sound/adhd
-DESCRIPTION=Audio test tools
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/audiotest
-IUSE=-asan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e51a0909385bb2619e4b4e099e8a7e3dcd5e629c
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=media-libs/alsa-lib media-sound/adhd
-SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=5bf8895c63e8e3e4ac25359326ee9d8d
diff --git a/metadata/md5-cache/chromeos-base/audiotest-0.0.1-r96 b/metadata/md5-cache/chromeos-base/audiotest-0.0.1-r96
new file mode 100644
index 0000000..bae7148
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/audiotest-0.0.1-r96
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=media-libs/alsa-lib media-sound/adhd
+DESCRIPTION=Audio test tools
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/audiotest
+IUSE=-asan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_3c34b1c606c64edf394205492d939b0d82fd4db8
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=media-libs/alsa-lib media-sound/adhd
+SLOT=0
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=99ec4b4dbe49fa07bae0b53f1d371594
diff --git a/metadata/md5-cache/chromeos-base/audiotest-9999 b/metadata/md5-cache/chromeos-base/audiotest-9999
index b6d0fdf..e27a19a 100644
--- a/metadata/md5-cache/chromeos-base/audiotest-9999
+++ b/metadata/md5-cache/chromeos-base/audiotest-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=media-libs/alsa-lib media-sound/adhd
 SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d2792c34fcde870b10fe4cf74475ed7a
diff --git a/metadata/md5-cache/chromeos-base/authpolicy-0.0.1-r1646 b/metadata/md5-cache/chromeos-base/authpolicy-0.0.1-r1646
deleted file mode 100644
index b75d5e9..0000000
--- a/metadata/md5-cache/chromeos-base/authpolicy-0.0.1-r1646
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=app-crypt/mit-krb5:= chromeos-base/libbrillo:=[asan?,fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= >=chromeos-base/minijail-0.0.1-r1477:= dev-libs/protobuf:= samba? ( >=net-fs/samba-4.5.3-r6:= ) sys-apps/dbus:= sys-libs/libcap:= >=chromeos-base/protofiles-0.0.45:= chromeos-base/session_manager-client:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Provides authentication to LDAP and fetching device/user policies
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/authpolicy/
-IUSE=+samba asan fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8e29f11c718c4a832c570433a5cf1e5382d6576f_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8e29f11c718c4a832c570433a5cf1e5382d6576f_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=app-crypt/mit-krb5:= chromeos-base/libbrillo:=[asan?,fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= >=chromeos-base/minijail-0.0.1-r1477:= dev-libs/protobuf:= samba? ( >=net-fs/samba-4.5.3-r6:= ) sys-apps/dbus:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=d98a69f039846cbe645fa79b965190cd
diff --git a/metadata/md5-cache/chromeos-base/authpolicy-0.0.1-r1700 b/metadata/md5-cache/chromeos-base/authpolicy-0.0.1-r1700
new file mode 100644
index 0000000..116006e
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/authpolicy-0.0.1-r1700
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=app-crypt/mit-krb5:= chromeos-base/cryptohome-client:= chromeos-base/libbrillo:=[asan?,fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= >=chromeos-base/minijail-0.0.1-r1477:= dev-libs/protobuf:= samba? ( >=net-fs/samba-4.5.3-r6:= ) sys-apps/dbus:= sys-libs/libcap:= >=chromeos-base/protofiles-0.0.48:= chromeos-base/session_manager-client:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Provides authentication to LDAP and fetching device/user policies
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/authpolicy/
+IUSE=+samba asan fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_0bf1226a413aea19f7ebc0f2957a40f2852662a6_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_0bf1226a413aea19f7ebc0f2957a40f2852662a6_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=app-crypt/mit-krb5:= chromeos-base/cryptohome-client:= chromeos-base/libbrillo:=[asan?,fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= >=chromeos-base/minijail-0.0.1-r1477:= dev-libs/protobuf:= samba? ( >=net-fs/samba-4.5.3-r6:= ) sys-apps/dbus:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=9bc4d21a29ef37db497b44726aea960f
diff --git a/metadata/md5-cache/chromeos-base/authpolicy-9999 b/metadata/md5-cache/chromeos-base/authpolicy-9999
index 7c1e4e2..72cc4b3 100644
--- a/metadata/md5-cache/chromeos-base/authpolicy-9999
+++ b/metadata/md5-cache/chromeos-base/authpolicy-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=app-crypt/mit-krb5:= chromeos-base/libbrillo:=[asan?,fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= >=chromeos-base/minijail-0.0.1-r1477:= dev-libs/protobuf:= samba? ( >=net-fs/samba-4.5.3-r6:= ) sys-apps/dbus:= sys-libs/libcap:= >=chromeos-base/protofiles-0.0.45:= chromeos-base/session_manager-client:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=app-crypt/mit-krb5:= chromeos-base/cryptohome-client:= chromeos-base/libbrillo:=[asan?,fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= >=chromeos-base/minijail-0.0.1-r1477:= dev-libs/protobuf:= samba? ( >=net-fs/samba-4.5.3-r6:= ) sys-apps/dbus:= sys-libs/libcap:= >=chromeos-base/protofiles-0.0.48:= chromeos-base/session_manager-client:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Provides authentication to LDAP and fetching device/user policies
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/authpolicy/
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=app-crypt/mit-krb5:= chromeos-base/libbrillo:=[asan?,fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= >=chromeos-base/minijail-0.0.1-r1477:= dev-libs/protobuf:= samba? ( >=net-fs/samba-4.5.3-r6:= ) sys-apps/dbus:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=app-crypt/mit-krb5:= chromeos-base/cryptohome-client:= chromeos-base/libbrillo:=[asan?,fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= >=chromeos-base/minijail-0.0.1-r1477:= dev-libs/protobuf:= samba? ( >=net-fs/samba-4.5.3-r6:= ) sys-apps/dbus:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=a31410ff30e9d69a08745cac60382e67
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=b8877977489fb1b8eee8398a4cff4700
diff --git a/metadata/md5-cache/chromeos-base/autotest-0.0.2-r14343 b/metadata/md5-cache/chromeos-base/autotest-0.0.2-r14343
deleted file mode 100644
index 00e29c7..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-0.0.2-r14343
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install postinst prepare setup test unpack
-DEPEND=!<chromeos-base/autotest-chrome-0.0.1-r1788 !<chromeos-base/autotest-tests-0.0.1-r3291 !<chromeos-base/autotest-deps-0.0.2 virtual/autotest-libs virtual/autotest-assistant-libs
-DESCRIPTION=Autotest scripts and tools
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed_19a599e153588e7beddcc62b22f526879f2985cf
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!<chromeos-base/autotest-chrome-0.0.1-r1788 !<chromeos-base/autotest-tests-0.0.1-r3291 !<chromeos-base/autotest-deps-0.0.2 virtual/autotest-libs virtual/autotest-assistant-libs
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6be609c96a16b9ca3df9cd5a588f7c08
diff --git a/metadata/md5-cache/chromeos-base/autotest-0.0.2-r14885 b/metadata/md5-cache/chromeos-base/autotest-0.0.2-r14885
new file mode 100644
index 0000000..0fdb546
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-0.0.2-r14885
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install postinst prepare setup test unpack
+DEPEND=!<chromeos-base/autotest-chrome-0.0.1-r1788 !<chromeos-base/autotest-tests-0.0.1-r3291 !<chromeos-base/autotest-deps-0.0.2 virtual/autotest-libs virtual/autotest-assistant-libs
+DESCRIPTION=Autotest scripts and tools
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5_84d973277d83c07b96298eabb5025c1241aa7dd1_3f2804fd986e4f3dabfe8baa51297be1f057f7d3
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!<chromeos-base/autotest-chrome-0.0.1-r1788 !<chromeos-base/autotest-tests-0.0.1-r3291 !<chromeos-base/autotest-deps-0.0.2 virtual/autotest-libs virtual/autotest-assistant-libs
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=635483659725b5a5701767a766858ea6
diff --git a/metadata/md5-cache/chromeos-base/autotest-9999 b/metadata/md5-cache/chromeos-base/autotest-9999
index aa698ff..3a9920b 100644
--- a/metadata/md5-cache/chromeos-base/autotest-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-chrome-0.0.1-r1788 !<chromeos-base/autotest-tests-0.0.1-r3291 !<chromeos-base/autotest-deps-0.0.2 virtual/autotest-libs virtual/autotest-assistant-libs
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=665b724077a2f497ea838dd3c2db82c4
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d2692d7464b180be1265aecfd5ec8ef6
diff --git a/metadata/md5-cache/chromeos-base/autotest-all-0.0.1-r53 b/metadata/md5-cache/chromeos-base/autotest-all-0.0.1-r55
similarity index 100%
rename from metadata/md5-cache/chromeos-base/autotest-all-0.0.1-r53
rename to metadata/md5-cache/chromeos-base/autotest-all-0.0.1-r55
diff --git a/metadata/md5-cache/chromeos-base/autotest-chrome-0.0.1-r7821 b/metadata/md5-cache/chromeos-base/autotest-chrome-0.0.1-r7821
deleted file mode 100644
index 212fe5d..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-chrome-0.0.1-r7821
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=!chromeos-base/autotest-telemetry !<chromeos-base/autotest-tests-0.0.4 !<chromeos-base/autotest-tests-cellular-0.0.1-r3203 chromeos-base/autotest-deps-graphics chromeos-base/autotest-deps-policy chromeos-base/autotest-deps-webgl-mpd chromeos-base/chromeos-chrome dev-python/mkvparse shill? ( chromeos-base/shill-test-scripts ) chromeos-base/telemetry sys-apps/ethtool vaapi? ( x11-libs/libva ) tests_graphics_WebGLAquarium? ( app-benchmarks/microbenchmarks dev-util/memory-eater-locked ) virtual/autotest-private-libs
-DESCRIPTION=Autotest tests that require chrome_binary_test, or telemetry deps
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest +cellular drm_atomic +shill +tpm tpm2 vaapi +tests_accessibility_Check +tests_accessibility_ChromeVoxSound +tests_audio_ActiveStreamStress +tests_audio_AudioCorruption +tests_audio_CrasCheck +tests_audio_PlaybackPower +tests_audio_SeekAudioFeedback +tests_autoupdate_EOL +tests_autoupdate_LoginStartUpdateLogout +tests_autoupdate_StartOOBEUpdate +tests_autoupdate_UpdateFromUI +tests_autoupdate_UserData +tests_bluetooth_AdapterReboot +tests_bluetooth_AdapterHealth +tests_bluetooth_IDCheck +tests_bluetooth_RegressionClient +tests_bluetooth_TurnOnOffUI +tests_desktopui_AudioFeedback +tests_desktopui_CheckRlzPingSent +tests_desktopui_ChromeCheck tests_desktopui_ConnectivityDiagnostics +tests_desktopui_MediaAudioFeedback +tests_desktopui_ScreenLocker +tests_desktopui_SimpleLogin +tests_desktopui_UrlFetchWithChromeDriver +tests_display_ClientChameleonConnection +tests_display_DisplayContainEdid +tests_enterprise_FakeEnrollment +tests_enterprise_KioskEnrollment +tests_enterprise_OnlineDemoModeEnrollment +tests_enterprise_PowerManagement +tests_enterprise_RemoraRequisition +tests_graphics_Chrome +tests_graphics_Stress +tests_graphics_VideoRenderingPower +tests_graphics_VTSwitch +tests_graphics_WebGLAquarium +tests_graphics_WebGLManyPlanetsDeep tests_logging_AsanCrash +tests_logging_CrashServices +tests_logging_FeedbackReport +tests_login_ChromeProfileSanitary +tests_login_CryptohomeDataLeak +tests_login_CryptohomeIncognito +tests_login_GaiaLogin +tests_login_LoginSuccess +tests_login_OobeLocalization +tests_login_SavePassword +tests_login_UnicornLogin +tests_login_UserPolicyKeys +tests_longevity_Tracker +tests_network_CastTDLS +tests_network_ChromeWifiConfigure +tests_platform_ChromeCgroups +tests_platform_InitLoginPerf +tests_platform_InputBrightness +tests_platform_InputBrowserNav +tests_platform_InputNewTab +tests_platform_InputScreenshot +tests_platform_InputVolume +tests_platform_LogoutPerf +tests_platform_LowMemoryTest +tests_platform_MouseScrollTest +tests_platform_PrintJob +tests_platform_SessionManagerBlockDevmodeSetting +tests_platform_ScrollTest +tests_policy_ArcAudioCaptureAllowed +tests_policy_ArcBackupRestoreServiceEnabled +tests_policy_ArcExternalStorageDisabled +tests_policy_ArcVideoCaptureAllowed +tests_policy_ArcDisableScreenshots +tests_policy_AudioOutputAllowed +tests_policy_AutotestCheck +tests_policy_ChromeOsLockOnIdleSuspend +tests_policy_CookiesAllowedForUrls +tests_policy_CookiesBlockedForUrls +tests_policy_CookiesSessionOnlyForUrls +tests_policy_DefaultSearchProvider +tests_policy_DeveloperToolsAvailability +tests_policy_DeviceAllowBluetooth +tests_policy_DeviceAutoUpdateDisabled +tests_policy_DeviceCharging +tests_policy_DeviceDockMacAddressSource +tests_policy_DeviceScheduledCharging +tests_policy_DisableScreenshots +tests_policy_DownloadDirectory +tests_policy_DriveDisabled +tests_policy_DeviceEphemeralUsersEnabled +tests_policy_EnrollmentRetainment +tests_policy_EnterpriseForceInstallCustom +tests_policy_ExtensionPolicy +tests_policy_ExternalStorageDisabled +tests_policy_ExternalStorageReadOnly +tests_policy_ForceYouTubeRestrict +tests_policy_ForceYouTubeSafetyMode +tests_policy_KeyPermissions +tests_policy_KioskModeEnabled +tests_policy_NativePrintersBulkAccessMode +tests_policy_PinnedLauncherApps +tests_policy_PlatformKeys +tests_policy_PolicyRefreshRate +tests_policy_PowerManagementIdleSettings +tests_policy_PrintingEnabled +tests_policy_ProxySettings +tests_policy_ReportUploadFrequency +tests_policy_RestoreOnStartupURLs +tests_policy_SystemTimezone +tests_policy_VirtualMachinesAllowed +tests_policy_WilcoOnNonWilcoDevice +tests_policy_WilcoUSBPowershare +tests_power_AudioDetector +tests_power_BatteryDrain +tests_power_Consumption +tests_power_Display +tests_power_FlashVideoSuspend +tests_power_Idle +tests_power_IdleSuspend +tests_power_LoadTest +tests_power_LowMemorySuspend +tests_power_MeetClient +tests_power_Speedometer2 +tests_power_ThermalLoad +tests_power_UiResume +tests_power_VideoCall +tests_power_VideoDetector +tests_power_VideoEncode +tests_power_VideoPlayback +tests_power_VideoSuspend +tests_power_WebGL +tests_power_WifiIdle +tests_security_BundledExtensions +tests_stub_IdleSuspend +tests_telemetry_AFDOGenerateClient +tests_telemetry_Check +tests_telemetry_UnitTests +tests_telemetry_UnitTestsServer +tests_touch_GestureNav +tests_touch_MouseScroll +tests_touch_ScrollDirection +tests_touch_TapSettings +tests_touch_TabSwitch +tests_touch_TouchscreenScroll +tests_touch_TouchscreenTaps +tests_touch_TouchscreenZoom +tests_touch_StylusTaps +tests_video_AVAnalysis cellular? ( +tests_cellular_ModemControl +tests_cellular_SuspendResume +tests_network_ChromeCellularEndToEnd +tests_network_ChromeCellularNetworkPresent +tests_network_ChromeCellularNetworkProperties +tests_network_ChromeCellularSmokeTest ) shill? ( +tests_network_ChromeWifiEndToEnd +tests_network_FirewallHolePunch +tests_network_RackWiFiConnect +tests_network_RoamSuspendEndToEnd +tests_network_RoamWifiEndToEnd +tests_policy_GlobalNetworkSettings +tests_policy_WiFiAutoconnect +tests_policy_WiFiPrecedence +tests_policy_WiFiTypes ) tpm? ( +tests_platform_Pkcs11InitOnLogin ) tpm2? ( +tests_platform_Pkcs11InitOnLogin ) +tests_graphics_Idle drm_atomic? ( +tests_graphics_HwOverlays ) cros_host cros_workon_tree_6973c3a9a86e204afe2b17cab6b9e3e258fd648d +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!chromeos-base/autotest-telemetry !<chromeos-base/autotest-tests-0.0.4 !<chromeos-base/autotest-tests-cellular-0.0.1-r3203 chromeos-base/autotest-deps-graphics chromeos-base/autotest-deps-policy chromeos-base/autotest-deps-webgl-mpd chromeos-base/chromeos-chrome dev-python/mkvparse shill? ( chromeos-base/shill-test-scripts ) chromeos-base/telemetry sys-apps/ethtool vaapi? ( x11-libs/libva ) tests_graphics_WebGLAquarium? ( app-benchmarks/microbenchmarks dev-util/memory-eater-locked ) virtual/autotest-private-libs autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=fdacb798d70141b6b303245428d28758
diff --git a/metadata/md5-cache/chromeos-base/autotest-chrome-0.0.1-r7855 b/metadata/md5-cache/chromeos-base/autotest-chrome-0.0.1-r7855
new file mode 100644
index 0000000..9fc0bd5
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-chrome-0.0.1-r7855
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=!chromeos-base/autotest-telemetry !<chromeos-base/autotest-tests-0.0.4 !<chromeos-base/autotest-tests-cellular-0.0.1-r3203 chromeos-base/autotest-deps-graphics chromeos-base/autotest-deps-policy chromeos-base/autotest-deps-webgl-mpd chromeos-base/chromeos-chrome dev-python/mkvparse shill? ( chromeos-base/shill-test-scripts ) chromeos-base/telemetry sys-apps/ethtool vaapi? ( x11-libs/libva ) tests_graphics_WebGLAquarium? ( app-benchmarks/microbenchmarks dev-util/memory-eater-locked ) virtual/autotest-private-libs
+DESCRIPTION=Autotest tests that require chrome_binary_test, or telemetry deps
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest +cellular drm_atomic +shill +tpm tpm2 vaapi +tests_accessibility_Check +tests_accessibility_ChromeVoxSound +tests_audio_ActiveStreamStress +tests_audio_AudioCorruption +tests_audio_CrasCheck +tests_audio_PlaybackPower +tests_audio_SeekAudioFeedback +tests_autoupdate_EOL +tests_autoupdate_LoginStartUpdateLogout +tests_autoupdate_StartOOBEUpdate +tests_autoupdate_UpdateFromUI +tests_autoupdate_UserData +tests_bluetooth_AdapterReboot +tests_bluetooth_AdapterHealth +tests_bluetooth_IDCheck +tests_bluetooth_RegressionClient +tests_bluetooth_TurnOnOffUI +tests_desktopui_AudioFeedback +tests_desktopui_CheckRlzPingSent +tests_desktopui_ChromeCheck tests_desktopui_ConnectivityDiagnostics +tests_desktopui_MediaAudioFeedback +tests_desktopui_ScreenLocker +tests_desktopui_SimpleLogin +tests_desktopui_UrlFetchWithChromeDriver +tests_display_ClientChameleonConnection +tests_display_DisplayContainEdid +tests_enterprise_FakeEnrollment +tests_enterprise_KioskEnrollment +tests_enterprise_OnlineDemoModeEnrollment +tests_enterprise_PowerManagement +tests_enterprise_RemoraRequisition +tests_graphics_Chrome +tests_graphics_Stress +tests_graphics_VideoRenderingPower +tests_graphics_VTSwitch +tests_graphics_WebGLAquarium +tests_graphics_WebGLManyPlanetsDeep tests_logging_AsanCrash +tests_logging_CrashServices +tests_logging_FeedbackReport +tests_login_ChromeProfileSanitary +tests_login_CryptohomeDataLeak +tests_login_CryptohomeIncognito +tests_login_GaiaLogin +tests_login_LoginPin +tests_login_LoginSuccess +tests_login_OobeLocalization +tests_login_SavePassword +tests_login_UnicornLogin +tests_login_UserPolicyKeys +tests_longevity_Tracker +tests_network_CastTDLS +tests_network_ChromeWifiConfigure +tests_platform_ChromeCgroups +tests_platform_InitLoginPerf +tests_platform_InputBrightness +tests_platform_InputBrowserNav +tests_platform_InputNewTab +tests_platform_InputScreenshot +tests_platform_InputVolume +tests_platform_LogoutPerf +tests_platform_LowMemoryTest +tests_platform_MouseScrollTest +tests_platform_PrintJob +tests_platform_SessionManagerBlockDevmodeSetting +tests_platform_ScrollTest +tests_policy_ArcAudioCaptureAllowed +tests_policy_ArcBackupRestoreServiceEnabled +tests_policy_ArcExternalStorageDisabled +tests_policy_ArcVideoCaptureAllowed +tests_policy_ArcDisableScreenshots +tests_policy_AutotestCheck +tests_policy_ChromeOsLockOnIdleSuspend +tests_policy_CookiesSessionOnlyForUrls +tests_policy_DeveloperToolsAvailability +tests_policy_DeviceAllowBluetooth +tests_policy_DeviceAutoUpdateDisabled +tests_policy_DeviceCharging +tests_policy_DeviceDockMacAddressSource +tests_policy_DeviceScheduledCharging +tests_policy_DownloadDirectory +tests_policy_DriveDisabled +tests_policy_DeviceEphemeralUsersEnabled +tests_policy_EnrollmentRetainment +tests_policy_EnterpriseForceInstallCustom +tests_policy_ExtensionPolicy +tests_policy_ExternalStorageDisabled +tests_policy_ExternalStorageReadOnly +tests_policy_ForceYouTubeSafetyMode +tests_policy_KeyPermissions +tests_policy_KioskModeEnabled +tests_policy_PlatformKeys +tests_policy_PowerManagementIdleSettings +tests_policy_ProxySettings +tests_policy_ReportUploadFrequency +tests_policy_RestoreOnStartupURLs +tests_policy_WilcoOnNonWilcoDevice +tests_policy_WilcoUSBPowershare +tests_power_AudioDetector +tests_power_BatteryDrain +tests_power_Consumption +tests_power_Display +tests_power_FlashVideoSuspend +tests_power_Idle +tests_power_IdleSuspend +tests_power_LoadTest +tests_power_LowMemorySuspend +tests_power_MeetClient +tests_power_Speedometer2 +tests_power_ThermalLoad +tests_power_UiResume +tests_power_VideoCall +tests_power_VideoDetector +tests_power_VideoEncode +tests_power_VideoPlayback +tests_power_VideoSuspend +tests_power_WebGL +tests_power_WifiIdle +tests_security_BundledExtensions +tests_stub_IdleSuspend +tests_telemetry_AFDOGenerateClient +tests_telemetry_Check +tests_telemetry_UnitTests +tests_telemetry_UnitTestsServer +tests_touch_GestureNav +tests_touch_MouseScroll +tests_touch_ScrollDirection +tests_touch_TapSettings +tests_touch_TabSwitch +tests_touch_TouchscreenScroll +tests_touch_TouchscreenTaps +tests_touch_TouchscreenZoom +tests_touch_StylusTaps +tests_video_AVAnalysis cellular? ( +tests_cellular_ModemControl +tests_cellular_SuspendResume +tests_network_ChromeCellularEndToEnd +tests_network_ChromeCellularNetworkPresent +tests_network_ChromeCellularNetworkProperties +tests_network_ChromeCellularSmokeTest ) shill? ( +tests_network_ChromeWifiEndToEnd +tests_network_FirewallHolePunch +tests_network_RackWiFiConnect +tests_network_RoamSuspendEndToEnd +tests_network_RoamWifiEndToEnd +tests_policy_GlobalNetworkSettings +tests_policy_WiFiAutoconnect +tests_policy_WiFiPrecedence +tests_policy_WiFiTypes ) tpm? ( +tests_platform_Pkcs11InitOnLogin ) tpm2? ( +tests_platform_Pkcs11InitOnLogin ) +tests_graphics_Idle drm_atomic? ( +tests_graphics_HwOverlays ) +tests_chromium cros_host cros_workon_tree_fb63673581aec4ac725ff9e16ccee2dd2df87879 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!chromeos-base/autotest-telemetry !<chromeos-base/autotest-tests-0.0.4 !<chromeos-base/autotest-tests-cellular-0.0.1-r3203 chromeos-base/autotest-deps-graphics chromeos-base/autotest-deps-policy chromeos-base/autotest-deps-webgl-mpd chromeos-base/chromeos-chrome dev-python/mkvparse shill? ( chromeos-base/shill-test-scripts ) chromeos-base/telemetry sys-apps/ethtool vaapi? ( x11-libs/libva ) tests_graphics_WebGLAquarium? ( app-benchmarks/microbenchmarks dev-util/memory-eater-locked ) virtual/autotest-private-libs autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=ec0bc5e6bb3e9ced83faf282cc7f0abe
diff --git a/metadata/md5-cache/chromeos-base/autotest-chrome-9999 b/metadata/md5-cache/chromeos-base/autotest-chrome-9999
index 51871b1..be2802b 100644
--- a/metadata/md5-cache/chromeos-base/autotest-chrome-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-chrome-9999
@@ -3,11 +3,11 @@
 DESCRIPTION=Autotest tests that require chrome_binary_test, or telemetry deps
 EAPI=5
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest +cellular drm_atomic +shill +tpm tpm2 vaapi +tests_accessibility_Check +tests_accessibility_ChromeVoxSound +tests_audio_ActiveStreamStress +tests_audio_AudioCorruption +tests_audio_CrasCheck +tests_audio_PlaybackPower +tests_audio_SeekAudioFeedback +tests_autoupdate_EOL +tests_autoupdate_LoginStartUpdateLogout +tests_autoupdate_StartOOBEUpdate +tests_autoupdate_UpdateFromUI +tests_autoupdate_UserData +tests_bluetooth_AdapterReboot +tests_bluetooth_AdapterHealth +tests_bluetooth_IDCheck +tests_bluetooth_RegressionClient +tests_bluetooth_TurnOnOffUI +tests_desktopui_AudioFeedback +tests_desktopui_CheckRlzPingSent +tests_desktopui_ChromeCheck tests_desktopui_ConnectivityDiagnostics +tests_desktopui_MediaAudioFeedback +tests_desktopui_ScreenLocker +tests_desktopui_SimpleLogin +tests_desktopui_UrlFetchWithChromeDriver +tests_display_ClientChameleonConnection +tests_display_DisplayContainEdid +tests_enterprise_FakeEnrollment +tests_enterprise_KioskEnrollment +tests_enterprise_OnlineDemoModeEnrollment +tests_enterprise_PowerManagement +tests_enterprise_RemoraRequisition +tests_graphics_Chrome +tests_graphics_Stress +tests_graphics_VideoRenderingPower +tests_graphics_VTSwitch +tests_graphics_WebGLAquarium +tests_graphics_WebGLManyPlanetsDeep tests_logging_AsanCrash +tests_logging_CrashServices +tests_logging_FeedbackReport +tests_login_ChromeProfileSanitary +tests_login_CryptohomeDataLeak +tests_login_CryptohomeIncognito +tests_login_GaiaLogin +tests_login_LoginSuccess +tests_login_OobeLocalization +tests_login_SavePassword +tests_login_UnicornLogin +tests_login_UserPolicyKeys +tests_longevity_Tracker +tests_network_CastTDLS +tests_network_ChromeWifiConfigure +tests_platform_ChromeCgroups +tests_platform_InitLoginPerf +tests_platform_InputBrightness +tests_platform_InputBrowserNav +tests_platform_InputNewTab +tests_platform_InputScreenshot +tests_platform_InputVolume +tests_platform_LogoutPerf +tests_platform_LowMemoryTest +tests_platform_MouseScrollTest +tests_platform_PrintJob +tests_platform_SessionManagerBlockDevmodeSetting +tests_platform_ScrollTest +tests_policy_ArcAudioCaptureAllowed +tests_policy_ArcBackupRestoreServiceEnabled +tests_policy_ArcExternalStorageDisabled +tests_policy_ArcVideoCaptureAllowed +tests_policy_ArcDisableScreenshots +tests_policy_AudioOutputAllowed +tests_policy_AutotestCheck +tests_policy_ChromeOsLockOnIdleSuspend +tests_policy_CookiesAllowedForUrls +tests_policy_CookiesBlockedForUrls +tests_policy_CookiesSessionOnlyForUrls +tests_policy_DefaultSearchProvider +tests_policy_DeveloperToolsAvailability +tests_policy_DeviceAllowBluetooth +tests_policy_DeviceAutoUpdateDisabled +tests_policy_DeviceCharging +tests_policy_DeviceDockMacAddressSource +tests_policy_DeviceScheduledCharging +tests_policy_DisableScreenshots +tests_policy_DownloadDirectory +tests_policy_DriveDisabled +tests_policy_DeviceEphemeralUsersEnabled +tests_policy_EnrollmentRetainment +tests_policy_EnterpriseForceInstallCustom +tests_policy_ExtensionPolicy +tests_policy_ExternalStorageDisabled +tests_policy_ExternalStorageReadOnly +tests_policy_ForceYouTubeRestrict +tests_policy_ForceYouTubeSafetyMode +tests_policy_KeyPermissions +tests_policy_KioskModeEnabled +tests_policy_NativePrintersBulkAccessMode +tests_policy_PinnedLauncherApps +tests_policy_PlatformKeys +tests_policy_PolicyRefreshRate +tests_policy_PowerManagementIdleSettings +tests_policy_PrintingEnabled +tests_policy_ProxySettings +tests_policy_ReportUploadFrequency +tests_policy_RestoreOnStartupURLs +tests_policy_SystemTimezone +tests_policy_VirtualMachinesAllowed +tests_policy_WilcoOnNonWilcoDevice +tests_policy_WilcoUSBPowershare +tests_power_AudioDetector +tests_power_BatteryDrain +tests_power_Consumption +tests_power_Display +tests_power_FlashVideoSuspend +tests_power_Idle +tests_power_IdleSuspend +tests_power_LoadTest +tests_power_LowMemorySuspend +tests_power_MeetClient +tests_power_Speedometer2 +tests_power_ThermalLoad +tests_power_UiResume +tests_power_VideoCall +tests_power_VideoDetector +tests_power_VideoEncode +tests_power_VideoPlayback +tests_power_VideoSuspend +tests_power_WebGL +tests_power_WifiIdle +tests_security_BundledExtensions +tests_stub_IdleSuspend +tests_telemetry_AFDOGenerateClient +tests_telemetry_Check +tests_telemetry_UnitTests +tests_telemetry_UnitTestsServer +tests_touch_GestureNav +tests_touch_MouseScroll +tests_touch_ScrollDirection +tests_touch_TapSettings +tests_touch_TabSwitch +tests_touch_TouchscreenScroll +tests_touch_TouchscreenTaps +tests_touch_TouchscreenZoom +tests_touch_StylusTaps +tests_video_AVAnalysis cellular? ( +tests_cellular_ModemControl +tests_cellular_SuspendResume +tests_network_ChromeCellularEndToEnd +tests_network_ChromeCellularNetworkPresent +tests_network_ChromeCellularNetworkProperties +tests_network_ChromeCellularSmokeTest ) shill? ( +tests_network_ChromeWifiEndToEnd +tests_network_FirewallHolePunch +tests_network_RackWiFiConnect +tests_network_RoamSuspendEndToEnd +tests_network_RoamWifiEndToEnd +tests_policy_GlobalNetworkSettings +tests_policy_WiFiAutoconnect +tests_policy_WiFiPrecedence +tests_policy_WiFiTypes ) tpm? ( +tests_platform_Pkcs11InitOnLogin ) tpm2? ( +tests_platform_Pkcs11InitOnLogin ) +tests_graphics_Idle drm_atomic? ( +tests_graphics_HwOverlays ) cros_host cros_workon_tree_ +buildcheck autotest opengles
+IUSE=+autotest +cellular drm_atomic +shill +tpm tpm2 vaapi +tests_accessibility_Check +tests_accessibility_ChromeVoxSound +tests_audio_ActiveStreamStress +tests_audio_AudioCorruption +tests_audio_CrasCheck +tests_audio_PlaybackPower +tests_audio_SeekAudioFeedback +tests_autoupdate_EOL +tests_autoupdate_LoginStartUpdateLogout +tests_autoupdate_StartOOBEUpdate +tests_autoupdate_UpdateFromUI +tests_autoupdate_UserData +tests_bluetooth_AdapterReboot +tests_bluetooth_AdapterHealth +tests_bluetooth_IDCheck +tests_bluetooth_RegressionClient +tests_bluetooth_TurnOnOffUI +tests_desktopui_AudioFeedback +tests_desktopui_CheckRlzPingSent +tests_desktopui_ChromeCheck tests_desktopui_ConnectivityDiagnostics +tests_desktopui_MediaAudioFeedback +tests_desktopui_ScreenLocker +tests_desktopui_SimpleLogin +tests_desktopui_UrlFetchWithChromeDriver +tests_display_ClientChameleonConnection +tests_display_DisplayContainEdid +tests_enterprise_FakeEnrollment +tests_enterprise_KioskEnrollment +tests_enterprise_OnlineDemoModeEnrollment +tests_enterprise_PowerManagement +tests_enterprise_RemoraRequisition +tests_graphics_Chrome +tests_graphics_Stress +tests_graphics_VideoRenderingPower +tests_graphics_VTSwitch +tests_graphics_WebGLAquarium +tests_graphics_WebGLManyPlanetsDeep tests_logging_AsanCrash +tests_logging_CrashServices +tests_logging_FeedbackReport +tests_login_ChromeProfileSanitary +tests_login_CryptohomeDataLeak +tests_login_CryptohomeIncognito +tests_login_GaiaLogin +tests_login_LoginPin +tests_login_LoginSuccess +tests_login_OobeLocalization +tests_login_SavePassword +tests_login_UnicornLogin +tests_login_UserPolicyKeys +tests_longevity_Tracker +tests_network_CastTDLS +tests_network_ChromeWifiConfigure +tests_platform_ChromeCgroups +tests_platform_InitLoginPerf +tests_platform_InputBrightness +tests_platform_InputBrowserNav +tests_platform_InputNewTab +tests_platform_InputScreenshot +tests_platform_InputVolume +tests_platform_LogoutPerf +tests_platform_LowMemoryTest +tests_platform_MouseScrollTest +tests_platform_PrintJob +tests_platform_SessionManagerBlockDevmodeSetting +tests_platform_ScrollTest +tests_policy_ArcAudioCaptureAllowed +tests_policy_ArcBackupRestoreServiceEnabled +tests_policy_ArcExternalStorageDisabled +tests_policy_ArcVideoCaptureAllowed +tests_policy_ArcDisableScreenshots +tests_policy_AutotestCheck +tests_policy_ChromeOsLockOnIdleSuspend +tests_policy_CookiesSessionOnlyForUrls +tests_policy_DeveloperToolsAvailability +tests_policy_DeviceAllowBluetooth +tests_policy_DeviceAutoUpdateDisabled +tests_policy_DeviceCharging +tests_policy_DeviceDockMacAddressSource +tests_policy_DeviceScheduledCharging +tests_policy_DownloadDirectory +tests_policy_DriveDisabled +tests_policy_DeviceEphemeralUsersEnabled +tests_policy_EnrollmentRetainment +tests_policy_EnterpriseForceInstallCustom +tests_policy_ExtensionPolicy +tests_policy_ExternalStorageDisabled +tests_policy_ExternalStorageReadOnly +tests_policy_ForceYouTubeSafetyMode +tests_policy_KeyPermissions +tests_policy_KioskModeEnabled +tests_policy_PlatformKeys +tests_policy_PowerManagementIdleSettings +tests_policy_ProxySettings +tests_policy_ReportUploadFrequency +tests_policy_RestoreOnStartupURLs +tests_policy_WilcoOnNonWilcoDevice +tests_policy_WilcoUSBPowershare +tests_power_AudioDetector +tests_power_BatteryDrain +tests_power_Consumption +tests_power_Display +tests_power_FlashVideoSuspend +tests_power_Idle +tests_power_IdleSuspend +tests_power_LoadTest +tests_power_LowMemorySuspend +tests_power_MeetClient +tests_power_Speedometer2 +tests_power_ThermalLoad +tests_power_UiResume +tests_power_VideoCall +tests_power_VideoDetector +tests_power_VideoEncode +tests_power_VideoPlayback +tests_power_VideoSuspend +tests_power_WebGL +tests_power_WifiIdle +tests_security_BundledExtensions +tests_stub_IdleSuspend +tests_telemetry_AFDOGenerateClient +tests_telemetry_Check +tests_telemetry_UnitTests +tests_telemetry_UnitTestsServer +tests_touch_GestureNav +tests_touch_MouseScroll +tests_touch_ScrollDirection +tests_touch_TapSettings +tests_touch_TabSwitch +tests_touch_TouchscreenScroll +tests_touch_TouchscreenTaps +tests_touch_TouchscreenZoom +tests_touch_StylusTaps +tests_video_AVAnalysis cellular? ( +tests_cellular_ModemControl +tests_cellular_SuspendResume +tests_network_ChromeCellularEndToEnd +tests_network_ChromeCellularNetworkPresent +tests_network_ChromeCellularNetworkProperties +tests_network_ChromeCellularSmokeTest ) shill? ( +tests_network_ChromeWifiEndToEnd +tests_network_FirewallHolePunch +tests_network_RackWiFiConnect +tests_network_RoamSuspendEndToEnd +tests_network_RoamWifiEndToEnd +tests_policy_GlobalNetworkSettings +tests_policy_WiFiAutoconnect +tests_policy_WiFiPrecedence +tests_policy_WiFiTypes ) tpm? ( +tests_platform_Pkcs11InitOnLogin ) tpm2? ( +tests_platform_Pkcs11InitOnLogin ) +tests_graphics_Idle drm_atomic? ( +tests_graphics_HwOverlays ) +tests_chromium cros_host cros_workon_tree_ +buildcheck autotest opengles
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 RDEPEND=!chromeos-base/autotest-telemetry !<chromeos-base/autotest-tests-0.0.4 !<chromeos-base/autotest-tests-cellular-0.0.1-r3203 chromeos-base/autotest-deps-graphics chromeos-base/autotest-deps-policy chromeos-base/autotest-deps-webgl-mpd chromeos-base/chromeos-chrome dev-python/mkvparse shill? ( chromeos-base/shill-test-scripts ) chromeos-base/telemetry sys-apps/ethtool vaapi? ( x11-libs/libva ) tests_graphics_WebGLAquarium? ( app-benchmarks/microbenchmarks dev-util/memory-eater-locked ) virtual/autotest-private-libs autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=c66dc74f363aeacc0ddf78854919bf9f
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=f1322e817d66a700642b9c0ffd453bc7
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-0.0.4-r14291 b/metadata/md5-cache/chromeos-base/autotest-deps-0.0.4-r14291
deleted file mode 100644
index ecb25c7..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-deps-0.0.4-r14291
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=dev-cpp/gtest:= dev-libs/libnl:0 >=dev-python/grpcio-1.19 >=dev-python/psutil-5.5.0 sys-devel/binutils chromeos-base/cros-config-api
-DESCRIPTION=Autotest common deps
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=dev-cpp/gtest:= dev-libs/libnl:0 >=dev-python/grpcio-1.19 >=dev-python/psutil-5.5.0 sys-devel/binutils autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=7f65df6a31af18136d9ae84327da18f7
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-0.0.4-r14742 b/metadata/md5-cache/chromeos-base/autotest-deps-0.0.4-r14742
new file mode 100644
index 0000000..3228c4d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-0.0.4-r14742
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=dev-cpp/gtest:= dev-libs/libnl:0 >=dev-python/grpcio-1.19 >=dev-python/psutil-5.5.0 sys-devel/binutils chromeos-base/cros-config-api
+DESCRIPTION=Autotest common deps
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=dev-cpp/gtest:= dev-libs/libnl:0 >=dev-python/grpcio-1.19 >=dev-python/psutil-5.5.0 sys-devel/binutils autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=e8ed22f056bf1812ada395debf1a1b82
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-9999 b/metadata/md5-cache/chromeos-base/autotest-deps-9999
index d0befe7..f371102 100644
--- a/metadata/md5-cache/chromeos-base/autotest-deps-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=dev-cpp/gtest:= dev-libs/libnl:0 >=dev-python/grpcio-1.19 >=dev-python/psutil-5.5.0 sys-devel/binutils autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=1f97760339d0ad970a03ed8e493c178a
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-camera-hal3-0.0.1-r6311 b/metadata/md5-cache/chromeos-base/autotest-deps-camera-hal3-0.0.1-r6311
deleted file mode 100644
index 7bb20ff..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-deps-camera-hal3-0.0.1-r6311
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=media-libs/cros-camera-test
-DESCRIPTION=Dependencies for camera_HAL3 autotest
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=media-libs/cros-camera-test autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=855b0f80c48861b64e892b22c1d11ca3
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-camera-hal3-0.0.1-r6762 b/metadata/md5-cache/chromeos-base/autotest-deps-camera-hal3-0.0.1-r6762
new file mode 100644
index 0000000..92db854
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-camera-hal3-0.0.1-r6762
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=media-libs/cros-camera-test
+DESCRIPTION=Dependencies for camera_HAL3 autotest
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=media-libs/cros-camera-test autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=04f48a5978db456503ba45d51490b74a
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-camera-hal3-9999 b/metadata/md5-cache/chromeos-base/autotest-deps-camera-hal3-9999
index 7957f56..0a6289c 100644
--- a/metadata/md5-cache/chromeos-base/autotest-deps-camera-hal3-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-camera-hal3-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=media-libs/cros-camera-test autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c0ce99eda3080dbb61e8b861296db421
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-cellular-0.0.1-r9100 b/metadata/md5-cache/chromeos-base/autotest-deps-cellular-0.0.1-r9100
deleted file mode 100644
index ec14833..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-deps-cellular-0.0.1-r9100
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=!<chromeos-base/autotest-deps-0.0.3 virtual/libgudev chromeos-base/autotest-fakemodem-conf dev-libs/dbus-glib
-DESCRIPTION=Autotest cellular deps
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!<chromeos-base/autotest-deps-0.0.3 virtual/libgudev chromeos-base/autotest-fakemodem-conf dev-libs/dbus-glib autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4c096a0ca3896c038b892c7c9d7b9df6
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-cellular-0.0.1-r9551 b/metadata/md5-cache/chromeos-base/autotest-deps-cellular-0.0.1-r9551
new file mode 100644
index 0000000..6335180
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-cellular-0.0.1-r9551
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=!<chromeos-base/autotest-deps-0.0.3 virtual/libgudev chromeos-base/autotest-fakemodem-conf dev-libs/dbus-glib
+DESCRIPTION=Autotest cellular deps
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!<chromeos-base/autotest-deps-0.0.3 virtual/libgudev chromeos-base/autotest-fakemodem-conf dev-libs/dbus-glib autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f2b25cf9c9b6f1ad9a4323034df1301c
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-cellular-9999 b/metadata/md5-cache/chromeos-base/autotest-deps-cellular-9999
index 1f01c45..3f76a12 100644
--- a/metadata/md5-cache/chromeos-base/autotest-deps-cellular-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-cellular-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-deps-0.0.3 virtual/libgudev chromeos-base/autotest-fakemodem-conf dev-libs/dbus-glib autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=986106e8edf172edd0aaa5dd28adbf99
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-dbus-0.0.1-r4984 b/metadata/md5-cache/chromeos-base/autotest-deps-dbus-0.0.1-r4984
deleted file mode 100644
index 89418d7..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-deps-dbus-0.0.1-r4984
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=chromeos-base/system_api dev-libs/protobuf:=
-DESCRIPTION=Autotest D-Bus deps
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=947c8584f68a16b7dcd55b1e1223834d
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-dbus-0.0.1-r5435 b/metadata/md5-cache/chromeos-base/autotest-deps-dbus-0.0.1-r5435
new file mode 100644
index 0000000..117b682
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-dbus-0.0.1-r5435
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=chromeos-base/system_api dev-libs/protobuf:=
+DESCRIPTION=Autotest D-Bus deps
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=983f0b46294f3c0573d71049b1bf5298
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-dbus-9999 b/metadata/md5-cache/chromeos-base/autotest-deps-dbus-9999
index 5aa2576..0349a2b 100644
--- a/metadata/md5-cache/chromeos-base/autotest-deps-dbus-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-dbus-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2eee34ef0be6245d6af2a9170e07b3db
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-glmark2-0.0.1-r9471 b/metadata/md5-cache/chromeos-base/autotest-deps-glmark2-0.0.1-r9471
deleted file mode 100644
index 2c11ffc..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-deps-glmark2-0.0.1-r9471
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst prepare setup unpack
-DEPEND=app-benchmarks/glmark2
-DESCRIPTION=Autotest glmark2 dependency
-EAPI=7
-HOMEPAGE=https://launchpad.net/glmark2
-IUSE=-asan +autotest asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-3
-PROPERTIES=live
-RDEPEND=app-benchmarks/glmark2 autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=591d457c8beaab9509f0e183a981191d
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-glmark2-0.0.1-r9922 b/metadata/md5-cache/chromeos-base/autotest-deps-glmark2-0.0.1-r9922
new file mode 100644
index 0000000..76450c2
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-glmark2-0.0.1-r9922
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst prepare setup unpack
+DEPEND=app-benchmarks/glmark2
+DESCRIPTION=Autotest glmark2 dependency
+EAPI=7
+HOMEPAGE=https://launchpad.net/glmark2
+IUSE=-asan +autotest asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-3
+PROPERTIES=live
+RDEPEND=app-benchmarks/glmark2 autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=bfa812fbd0879abe86a7bbcd27acd0d3
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-glmark2-9999 b/metadata/md5-cache/chromeos-base/autotest-deps-glmark2-9999
index 49c4505..045e44f 100644
--- a/metadata/md5-cache/chromeos-base/autotest-deps-glmark2-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-glmark2-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=app-benchmarks/glmark2 autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f136c14950040415964dab3b823bfc94
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-graphics-0.0.1-r9451 b/metadata/md5-cache/chromeos-base/autotest-deps-graphics-0.0.1-r9451
deleted file mode 100644
index ad8c391..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-deps-graphics-0.0.1-r9451
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=!<chromeos-base/autotest-deps-0.0.4
-DESCRIPTION=Dependencies for graphics autotests
-EAPI=4
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!<chromeos-base/autotest-deps-0.0.4 autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=3e44963cc3a294699246733343141e09
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-graphics-0.0.1-r9902 b/metadata/md5-cache/chromeos-base/autotest-deps-graphics-0.0.1-r9902
new file mode 100644
index 0000000..75b1452
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-graphics-0.0.1-r9902
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=!<chromeos-base/autotest-deps-0.0.4
+DESCRIPTION=Dependencies for graphics autotests
+EAPI=4
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!<chromeos-base/autotest-deps-0.0.4 autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=3a97966a168d8acbb521b1efc20304fd
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-graphics-9999 b/metadata/md5-cache/chromeos-base/autotest-deps-graphics-9999
index 4c60ca8..6e922b3 100644
--- a/metadata/md5-cache/chromeos-base/autotest-deps-graphics-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-graphics-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-deps-0.0.4 autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c8b3de1f5d19d829d7736317b66d0573
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-p2p-0.0.1-r9063 b/metadata/md5-cache/chromeos-base/autotest-deps-p2p-0.0.1-r9063
deleted file mode 100644
index 7be831b..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-deps-p2p-0.0.1-r9063
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=!<chromeos-base/autotest-deps-0.0.4 dev-python/dpkt
-DESCRIPTION=Autotest p2p deps
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!<chromeos-base/autotest-deps-0.0.4 dev-python/dpkt autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=c487ec092cdf9ef6ee97cffa2928e95f
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-p2p-0.0.1-r9514 b/metadata/md5-cache/chromeos-base/autotest-deps-p2p-0.0.1-r9514
new file mode 100644
index 0000000..c94fc03
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-p2p-0.0.1-r9514
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=!<chromeos-base/autotest-deps-0.0.4 dev-python/dpkt
+DESCRIPTION=Autotest p2p deps
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!<chromeos-base/autotest-deps-0.0.4 dev-python/dpkt autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=89b7d017d306578a9a893b31cec52af3
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-p2p-9999 b/metadata/md5-cache/chromeos-base/autotest-deps-p2p-9999
index d0eaa10..2d20194 100644
--- a/metadata/md5-cache/chromeos-base/autotest-deps-p2p-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-p2p-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-deps-0.0.4 dev-python/dpkt autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=615bf3cb9774363f9d043c5ef73d6e09
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-policy-0.0.1-r5060 b/metadata/md5-cache/chromeos-base/autotest-deps-policy-0.0.1-r5060
deleted file mode 100644
index 3be7f12..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-deps-policy-0.0.1-r5060
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=>=chromeos-base/protofiles-0.0.43:= chromeos-base/system_api dev-libs/protobuf:=
-DESCRIPTION=Autotest policy deps
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=021f0bebd76f9b8e46c5853171c7e563
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-policy-0.0.1-r5511 b/metadata/md5-cache/chromeos-base/autotest-deps-policy-0.0.1-r5511
new file mode 100644
index 0000000..0726567
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-policy-0.0.1-r5511
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=>=chromeos-base/protofiles-0.0.43:= chromeos-base/system_api dev-libs/protobuf:=
+DESCRIPTION=Autotest policy deps
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=a7392d49a42136e8b732d9f48d66fc8f
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-policy-9999 b/metadata/md5-cache/chromeos-base/autotest-deps-policy-9999
index efa7ed8..c3109b7 100644
--- a/metadata/md5-cache/chromeos-base/autotest-deps-policy-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-policy-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7fd38b840d7d4461f58e5da3419c760e
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-touchpad-0.0.1-r10073 b/metadata/md5-cache/chromeos-base/autotest-deps-touchpad-0.0.1-r10073
deleted file mode 100644
index dec852f..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-deps-touchpad-0.0.1-r10073
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=x11-drivers/touchpad-tests chromeos-base/touch_firmware_test chromeos-base/mttools
-DESCRIPTION=Autotest touchpad deps
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=x11-drivers/touchpad-tests chromeos-base/touch_firmware_test chromeos-base/mttools autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f973fb421cffff20ec7e20fa088efdbc
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-touchpad-0.0.1-r10524 b/metadata/md5-cache/chromeos-base/autotest-deps-touchpad-0.0.1-r10524
new file mode 100644
index 0000000..34b4567
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-touchpad-0.0.1-r10524
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=x11-drivers/touchpad-tests chromeos-base/touch_firmware_test chromeos-base/mttools
+DESCRIPTION=Autotest touchpad deps
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=x11-drivers/touchpad-tests chromeos-base/touch_firmware_test chromeos-base/mttools autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2a6f46073369e3193463472ad74634c3
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-touchpad-9999 b/metadata/md5-cache/chromeos-base/autotest-deps-touchpad-9999
index 8486497..1d1be33 100644
--- a/metadata/md5-cache/chromeos-base/autotest-deps-touchpad-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-touchpad-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=x11-drivers/touchpad-tests chromeos-base/touch_firmware_test chromeos-base/mttools autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7fda568cba3006fad358c53d7b74c7ca
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-uiautomator-0.0.3 b/metadata/md5-cache/chromeos-base/autotest-deps-uiautomator-0.0.3
index 8c2f19d..0460046 100644
--- a/metadata/md5-cache/chromeos-base/autotest-deps-uiautomator-0.0.3
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-uiautomator-0.0.3
@@ -8,5 +8,5 @@
 RDEPEND=autotest? ( chromeos-base/autotest )
 SLOT=0
 SRC_URI=https://github.com/xiaocong/uiautomator/archive/57ba9333186cc2c748fce8596dd31593a28019a9.tar.gz -> autotest-deps-uiautomator-0.0.3.tar.gz
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	autotest-external-dep	f1a21cd720cbb70b488bedaaf1b64777	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	autotest-external-dep	f1a21cd720cbb70b488bedaaf1b64777	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=13fd55131d0f9a19f417b1e485ec73a3
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-uiautomator-0.0.3-r1 b/metadata/md5-cache/chromeos-base/autotest-deps-uiautomator-0.0.3-r1
index 8c2f19d..0460046 100644
--- a/metadata/md5-cache/chromeos-base/autotest-deps-uiautomator-0.0.3-r1
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-uiautomator-0.0.3-r1
@@ -8,5 +8,5 @@
 RDEPEND=autotest? ( chromeos-base/autotest )
 SLOT=0
 SRC_URI=https://github.com/xiaocong/uiautomator/archive/57ba9333186cc2c748fce8596dd31593a28019a9.tar.gz -> autotest-deps-uiautomator-0.0.3.tar.gz
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	autotest-external-dep	f1a21cd720cbb70b488bedaaf1b64777	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	autotest-external-dep	f1a21cd720cbb70b488bedaaf1b64777	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=13fd55131d0f9a19f417b1e485ec73a3
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-webgl-mpd-0.0.1-r10074 b/metadata/md5-cache/chromeos-base/autotest-deps-webgl-mpd-0.0.1-r10074
new file mode 100644
index 0000000..82d9a09
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-webgl-mpd-0.0.1-r10074
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DESCRIPTION=Dependencies for WebGL many planets deep test
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=autotest? ( chromeos-base/autotest )
+SLOT=0/0.0.1-r10074
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=bcb01421449a3b6e1125511bb288f676
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-webgl-mpd-0.0.1-r9623 b/metadata/md5-cache/chromeos-base/autotest-deps-webgl-mpd-0.0.1-r9623
deleted file mode 100644
index bbd4b78..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-deps-webgl-mpd-0.0.1-r9623
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DESCRIPTION=Dependencies for WebGL many planets deep test
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=autotest? ( chromeos-base/autotest )
-SLOT=0/0.0.1-r9623
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9b512af1e5aea0a282c6a9050dc5e591
diff --git a/metadata/md5-cache/chromeos-base/autotest-deps-webgl-mpd-9999 b/metadata/md5-cache/chromeos-base/autotest-deps-webgl-mpd-9999
index 80675e7..7b1b0cc 100644
--- a/metadata/md5-cache/chromeos-base/autotest-deps-webgl-mpd-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-deps-webgl-mpd-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=autotest? ( chromeos-base/autotest )
 SLOT=0/9999
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=10490e31cb9601468333ec4e9504a386
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-0.0.2-r5175 b/metadata/md5-cache/chromeos-base/autotest-server-tests-0.0.2-r5175
deleted file mode 100644
index 359a5f8..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-server-tests-0.0.2-r5175
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=!<chromeos-base/autotest-0.0.2
-DESCRIPTION=Autotest server tests
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=android-container android-container-pi android-vm-rvc +autotest biod +cellular +cheets_user cheets_user_64 cheets_userdebug_64 -chromeless_tests -chromeless_tty cros_p2p debugd dlc_test has-kernelnext is-kernelnext -moblab +power_management +readahead +tpm tpm2 +tests_android_ACTS +tests_android_EasySetup +tests_audio_AudioAfterReboot +tests_audio_AudioAfterSuspend +tests_audio_AudioArtifacts +tests_audio_AudioBasicAssistant +tests_audio_AudioBasicBluetoothPlayback +tests_audio_AudioBasicBluetoothPlaybackRecord +tests_audio_AudioBasicBluetoothRecord +tests_audio_AudioBasicExternalMicrophone +tests_audio_AudioBasicHDMI +tests_audio_AudioBasicHeadphone +tests_audio_AudioBasicHotwording +tests_audio_AudioBasicInternalMicrophone +tests_audio_AudioBasicInternalSpeaker +tests_audio_AudioBasicUSBPlayback +tests_audio_AudioBasicUSBPlaybackRecord +tests_audio_AudioBasicUSBRecord +tests_audio_AudioBluetoothConnectionStability +tests_audio_AudioNodeSwitch +tests_audio_AudioPinnedStream +tests_audio_AudioQualityAfterSuspend +tests_audio_AudioTestAssumptionCheck +tests_audio_AudioVolume +tests_audio_AudioWebRTCLoopback +tests_audio_InternalCardNodes +tests_audio_LeftRightInternalSpeaker +tests_audio_MediaBasicVerification +tests_audio_PowerConsumption +tests_audiovideo_AVSync +tests_autoupdate_Basic +tests_autoupdate_CatchBadSignatures +tests_autoupdate_Cellular +tests_autoupdate_ConsecutiveUpdatesBeforeReboot +tests_autoupdate_DataPreserved +tests_autoupdate_ForcedOOBEUpdate +tests_autoupdate_FromUI +tests_autoupdate_Interruptions +tests_autoupdate_NonBlockingOOBEUpdate +tests_autoupdate_OmahaResponse +tests_autoupdate_P2P +tests_autoupdate_Periodic +tests_autoupdate_RejectDuplicateUpdate +tests_autoupdate_Rollback dlc_test? ( +tests_autoupdate_WithDLC ) has-kernelnext? ( +tests_autoupdate_StatefulCompatibility ) is-kernelnext? ( +tests_autoupdate_StatefulCompatibility ) cellular? ( +tests_cellular_StaleModemReboot ) android-container-pi? ( cheets_user? ( +tests_cheets_CTS_Instant +tests_cheets_CTS_P +tests_cheets_GTS ) cheets_user_64? ( +tests_cheets_CTS_Instant +tests_cheets_CTS_P +tests_cheets_GTS ) ) android-vm-rvc? ( cheets_user_64? ( +tests_cheets_CTS_R +tests_cheets_GTS_R ) cheets_userdebug_64? ( +tests_cheets_VTS_R ) ) +tests_cellular_Callbox_AssertCellularData +tests_cheets_LabDependencies debugd? ( +tests_debugd_DevTools ) +tests_crosperf_Wrapper +tests_display_EdidStress +tests_display_HDCPScreen +tests_display_HotPlugAtBoot +tests_display_HotPlugAtSuspend +tests_display_HotPlugNoisy +tests_display_LidCloseOpen +tests_display_NoEdid +tests_display_Resolution +tests_display_ResolutionList +tests_display_ServerChameleonConnection +tests_display_SuspendStress +tests_display_SwitchMode +tests_dummy_PassServer +tests_dummy_FailServer +tests_dummy_FlakyTestServer +tests_stub_SynchronousOffloadServer +tests_enterprise_ClearTPM +tests_enterprise_KioskEnrollmentServer +tests_enterprise_LongevityTrackerServer +tests_enterprise_OnlineDemoMode +tests_factory_Basic +tests_firmware_Bmpblk +tests_firmware_CgptStress +tests_firmware_ClearTPMOwnerAndReset +tests_firmware_ConsecutiveBoot +tests_firmware_ConsecutiveBootPowerButton +tests_firmware_ConsecutiveLidSwitch +tests_firmware_CorruptBothFwBodyAB +tests_firmware_CorruptBothFwSigAB +tests_firmware_CorruptBothKernelAB +tests_firmware_CorruptFwBodyA +tests_firmware_CorruptFwBodyB +tests_firmware_CorruptFwSigA +tests_firmware_CorruptFwSigB +tests_firmware_CorruptKernelA +tests_firmware_CorruptKernelB +tests_firmware_CorruptRecoveryCache +tests_firmware_Cr50BID +tests_firmware_Cr50CCDServoCap +tests_firmware_Cr50CCDUartStress +tests_firmware_Cr50CheckCap +tests_firmware_Cr50ConsoleCommands +tests_firmware_Cr50DeepSleepStress +tests_firmware_Cr50DeferredECReset +tests_firmware_Cr50DeviceState +tests_firmware_Cr50DevMode +tests_firmware_Cr50ECReset +tests_firmware_Cr50FactoryResetVC +tests_firmware_Cr50CCDFirmwareUpdate +tests_firmware_Cr50GetName +tests_firmware_Cr50InvalidateRW +tests_firmware_Cr50Keygen +tests_firmware_Cr50Open +tests_firmware_Cr50OpenWhileAPOff +tests_firmware_Cr50PartialBoardId +tests_firmware_Cr50Password +tests_firmware_Cr50PinWeaverServer +tests_firmware_Cr50RddG3 +tests_firmware_Cr50RejectUpdate +tests_firmware_Cr50RMAOpen +tests_firmware_Cr50SetBoardId +tests_firmware_Cr50ShortECC +tests_firmware_Cr50Testlab +tests_firmware_Cr50TpmManufactured +tests_firmware_Cr50TpmMode +tests_firmware_Cr50U2fCommands +tests_firmware_Cr50Unlock +tests_firmware_Cr50Update +tests_firmware_Cr50UpdateScriptStress +tests_firmware_Cr50USB +tests_firmware_Cr50VerifyEK +tests_firmware_Cr50WilcoEcrst +tests_firmware_Cr50WilcoRmaFactoryMode +tests_firmware_Cr50WPG3 +tests_firmware_CsmeFwUpdate +tests_firmware_DevBootUSB +tests_firmware_DevDefaultBoot +tests_firmware_DevMode +tests_firmware_DevModeStress +tests_firmware_DevScreenTimeout +tests_firmware_ECBattery +tests_firmware_ECBootTime +tests_firmware_ECCbiEeprom +tests_firmware_ECCharging +tests_firmware_ECChargingState +tests_firmware_ECHash +tests_firmware_ECKeyboard +tests_firmware_ECKeyboardReboot +tests_firmware_ECLidShutdown +tests_firmware_ECLidSwitch +tests_firmware_ECPowerButton +tests_firmware_ECPowerG3 +tests_firmware_ECSharedMem +tests_firmware_ECSystemLocked +tests_firmware_ECThermal +tests_firmware_ECUpdateId +tests_firmware_ECUsbPorts +tests_firmware_ECWakeSource +tests_firmware_ECWatchdog +tests_firmware_EmmcWriteLoad +tests_firmware_EventLog +tests_firmware_FAFTPrepare +tests_firmware_FAFTModeTransitions +tests_firmware_FAFTRPC +tests_firmware_FAFTSetup biod? ( +tests_firmware_Fingerprint +tests_firmware_FingerprintCrosConfig +tests_firmware_FingerprintSigner ) +tests_firmware_FMap +tests_firmware_FWMPDisableCCD +tests_firmware_FwScreenCloseLid +tests_firmware_FwScreenPressPower +tests_firmware_FWupdateWP +tests_firmware_FWtries +tests_firmware_FWupdateThenSleep +tests_firmware_FWupdateWP +tests_firmware_IntegratedU2F +tests_firmware_InvalidUSB +tests_firmware_LegacyRecovery +tests_firmware_MenuModeTransition +tests_firmware_Mosys +tests_firmware_PDConnect +tests_firmware_PDDataSwap +tests_firmware_PDPowerSwap +tests_firmware_PDProtocol +tests_firmware_PDResetHard +tests_firmware_PDResetSoft +tests_firmware_PDTrySrc +tests_firmware_PDVbusRequest +tests_firmware_RecoveryButton +tests_firmware_RecoveryCacheBootKeys +tests_firmware_RollbackFirmware +tests_firmware_RollbackKernel +tests_firmware_SelfSignedBoot +tests_firmware_SetSerialNumber +tests_firmware_SoftwareSync +tests_firmware_StandbyPowerConsumption +tests_firmware_SysfsVPD +tests_firmware_TPMNotCorruptedDevMode tpm? ( +tests_firmware_TPMExtend ) tpm? ( +tests_firmware_TPMVersionCheck ) tpm? ( +tests_firmware_TPMKernelVersion ) tpm2? ( +tests_firmware_TPMExtend ) tpm2? ( +tests_firmware_TPMVersionCheck ) tpm2? ( +tests_firmware_TPMKernelVersion ) +tests_firmware_TryFwB +tests_firmware_TypeCCharging +tests_firmware_TypeCProbeUSB3 +tests_firmware_UpdateFirmwareDataKeyVersion +tests_firmware_UpdateFirmwareVersion +tests_firmware_UpdateKernelDataKeyVersion +tests_firmware_UpdateKernelSubkeyVersion +tests_firmware_UpdateKernelVersion +tests_firmware_UpdaterModes +tests_firmware_UserRequestRecovery +tests_firmware_WilcoDiagnosticsMode +tests_firmware_WriteProtect +tests_firmware_WriteProtectFunc +tests_graphics_MultipleDisplays +tests_graphics_PowerConsumption +tests_hardware_DiskFirmwareUpgrade +tests_hardware_MemoryIntegrity +tests_hardware_StorageQual +tests_hardware_StorageQualBase +tests_hardware_StorageQualCheckSetup +tests_hardware_StorageQualSuspendStress +tests_hardware_StorageQualTrimStress +tests_hardware_StorageQualV2 +tests_hardware_StorageStress +tests_infra_TLSExecDUTCommand +tests_kernel_EmptyLines +tests_kernel_ExternalUsbPeripheralsDetectionTest +tests_kernel_IdlePerf +tests_kernel_MemoryRamoop moblab? ( +tests_moblab_RunSuite +tests_moblab_StorageQual ) +tests_moblab_Setup cros_p2p? ( +tests_p2p_EndToEndTest ) +tests_network_FirewallHolePunchServer +tests_platform_ActivateDate +tests_platform_BootDevice +tests_platform_BootLockboxServer +tests_platform_BootPerfServer +tests_platform_CompromisedStatefulPartition +tests_platform_CorruptRootfs +tests_platform_CrashStateful +tests_platform_ExternalUsbPeripherals +tests_platform_FetchCloudConfig +tests_platform_FlashErasers +tests_platform_Flashrom +tests_platform_HWwatchdog +tests_platform_InitLoginPerfServer +tests_platform_InstallTestImage +tests_platform_InternalDisplay +tests_platform_KernelErrorPaths +tests_platform_MTBF power_management? ( +tests_platform_PowerStatusStress +tests_power_DeferForFlashrom +tests_power_WakeSources ) +tests_platform_Powerwash +tests_platform_RotationFps +tests_platform_ServoPowerStateController +tests_platform_StageAndRecover +tests_platform_SuspendResumeTiming +tests_platform_SyncCrash readahead? ( +tests_platform_UReadAheadServer ) +tests_platform_Vpd +tests_policy_AUServer +tests_policy_DeviceChargingServer +tests_policy_DeviceServer +tests_policy_ExternalStorageServer +tests_policy_GlobalNetworkSettingsServer +tests_policy_WiFiAutoconnectServer +tests_policy_WiFiPrecedenceServer +tests_policy_WiFiTypesServer +tests_policy_WilcoServerDeviceDockMacAddressSource +tests_policy_WilcoServerOnNonWilcoDevice +tests_policy_WilcoServerUSBPowershare +tests_power_BrightnessResetAfterReboot +tests_power_ChargeControlWrapper +tests_power_MeetCall +tests_power_Monitoring +tests_power_LW +tests_power_PowerlogWrapper +tests_power_RPMTest +tests_power_ServoChargeStress +tests_power_ServodWrapper +tests_provision_CheetsUpdate +tests_provision_Cr50TOT +tests_provision_Cr50Update +tests_provision_FactoryImage +tests_provision_FirmwareUpdate +tests_provision_QuickProvision +tests_rlz_CheckPing +tests_sequences +tests_servo_LabControlVerification +tests_servo_LabstationVerification +tests_servo_USBMuxVerification +tests_servo_LogGrab +tests_servo_Verification +tests_servohost_Reboot +tests_stress_ClientTestReboot +tests_stress_EnrollmentRetainment +tests_stub_ServerToClientPass cros_host cros_workon_tree_f322f40e82140ffae58282b019287a4c64e642bc +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=autotest? ( chromeos-base/autotest )
-REQUIRED_USE=?? ( has-kernelnext is-kernelnext )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=c3dbe61fd13d84d1980f963fd562d82e
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-0.0.2-r5324 b/metadata/md5-cache/chromeos-base/autotest-server-tests-0.0.2-r5324
new file mode 100644
index 0000000..fa0e8e4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-server-tests-0.0.2-r5324
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=!<chromeos-base/autotest-0.0.2
+DESCRIPTION=Autotest server tests
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=android-container android-container-pi android-vm-rvc +autotest biod +cellular +cheets_user cheets_user_64 cheets_userdebug_64 -chromeless_tests -chromeless_tty cros_p2p debugd dlc_test has-kernelnext is-kernelnext -moblab +power_management +readahead +tpm tpm2 +tests_android_ACTS +tests_android_EasySetup +tests_audio_AudioAfterReboot +tests_audio_AudioAfterSuspend +tests_audio_AudioArtifacts +tests_audio_AudioBasicAssistant +tests_audio_AudioBasicBluetoothPlayback +tests_audio_AudioBasicBluetoothPlaybackRecord +tests_audio_AudioBasicBluetoothRecord +tests_audio_AudioBasicExternalMicrophone +tests_audio_AudioBasicHDMI +tests_audio_AudioBasicHeadphone +tests_audio_AudioBasicHotwording +tests_audio_AudioBasicInternalMicrophone +tests_audio_AudioBasicInternalSpeaker +tests_audio_AudioBasicUSBPlayback +tests_audio_AudioBasicUSBPlaybackRecord +tests_audio_AudioBasicUSBRecord +tests_audio_AudioBluetoothConnectionStability +tests_audio_AudioNodeSwitch +tests_audio_AudioNoiseCancellation +tests_audio_AudioPinnedStream +tests_audio_AudioQualityAfterSuspend +tests_audio_AudioTestAssumptionCheck +tests_audio_AudioVolume +tests_audio_AudioWebRTCLoopback +tests_audio_InternalCardNodes +tests_audio_LeftRightInternalSpeaker +tests_audio_MediaBasicVerification +tests_audio_PowerConsumption +tests_audiovideo_AVSync +tests_autoupdate_Basic +tests_autoupdate_CatchBadSignatures +tests_autoupdate_Cellular +tests_autoupdate_ConsecutiveUpdatesBeforeReboot +tests_autoupdate_DataPreserved +tests_autoupdate_ForcedOOBEUpdate +tests_autoupdate_FromUI +tests_autoupdate_Interruptions +tests_autoupdate_NonBlockingOOBEUpdate +tests_autoupdate_OmahaResponse +tests_autoupdate_P2P +tests_autoupdate_Periodic +tests_autoupdate_RejectDuplicateUpdate +tests_autoupdate_Rollback dlc_test? ( +tests_autoupdate_WithDLC ) has-kernelnext? ( +tests_autoupdate_StatefulCompatibility ) is-kernelnext? ( +tests_autoupdate_StatefulCompatibility ) cellular? ( +tests_cellular_StaleModemReboot ) android-container-pi? ( cheets_user? ( +tests_cheets_CTS_Instant +tests_cheets_CTS_P ) cheets_user_64? ( +tests_cheets_CTS_Instant +tests_cheets_CTS_P ) ) android-vm-rvc? ( cheets_user_64? ( +tests_cheets_CTS_R ) cheets_userdebug_64? ( +tests_cheets_VTS_R ) ) +tests_cellular_Callbox_AssertCellularData +tests_cellular_Callbox_AssertSMS +tests_cheets_LabDependencies debugd? ( +tests_debugd_DevTools ) +tests_crosperf_Wrapper +tests_display_EdidStress +tests_display_HDCPScreen +tests_display_HotPlugAtBoot +tests_display_HotPlugAtSuspend +tests_display_HotPlugNoisy +tests_display_LidCloseOpen +tests_display_NoEdid +tests_display_Resolution +tests_display_ResolutionList +tests_display_ServerChameleonConnection +tests_display_SuspendStress +tests_display_SwitchMode +tests_enterprise_ClearTPM +tests_enterprise_KioskEnrollmentServer +tests_enterprise_LongevityTrackerServer +tests_enterprise_OnlineDemoMode +tests_factory_Basic +tests_firmware_Bmpblk +tests_firmware_CgptStress +tests_firmware_ClearTPMOwnerAndReset +tests_firmware_ConsecutiveBoot +tests_firmware_ConsecutiveBootPowerButton +tests_firmware_ConsecutiveLidSwitch +tests_firmware_CorruptBothFwBodyAB +tests_firmware_CorruptBothFwSigAB +tests_firmware_CorruptBothKernelAB +tests_firmware_CorruptFwBodyA +tests_firmware_CorruptFwBodyB +tests_firmware_CorruptFwSigA +tests_firmware_CorruptFwSigB +tests_firmware_CorruptKernelA +tests_firmware_CorruptKernelB +tests_firmware_CorruptRecoveryCache +tests_firmware_Cr50BID +tests_firmware_Cr50CCDServoCap +tests_firmware_Cr50CCDUartStress +tests_firmware_Cr50CheckCap +tests_firmware_Cr50ConsoleCommands +tests_firmware_Cr50DeepSleepStress +tests_firmware_Cr50DeferredECReset +tests_firmware_Cr50DeviceState +tests_firmware_Cr50DevMode +tests_firmware_Cr50ECReset +tests_firmware_Cr50FactoryResetVC +tests_firmware_Cr50CCDFirmwareUpdate +tests_firmware_Cr50GetName +tests_firmware_Cr50InvalidateRW +tests_firmware_Cr50Keygen +tests_firmware_Cr50Open +tests_firmware_Cr50OpenWhileAPOff +tests_firmware_Cr50PartialBoardId +tests_firmware_Cr50Password +tests_firmware_Cr50PinWeaverServer +tests_firmware_Cr50RddG3 +tests_firmware_Cr50RejectUpdate +tests_firmware_Cr50RMAOpen +tests_firmware_Cr50SetBoardId +tests_firmware_Cr50ShortECC +tests_firmware_Cr50Testlab +tests_firmware_Cr50TpmManufactured +tests_firmware_Cr50TpmMode +tests_firmware_Cr50U2fCommands +tests_firmware_Cr50Unlock +tests_firmware_Cr50Update +tests_firmware_Cr50UpdateScriptStress +tests_firmware_Cr50USB +tests_firmware_Cr50VerifyEK +tests_firmware_Cr50WilcoEcrst +tests_firmware_Cr50WilcoRmaFactoryMode +tests_firmware_Cr50WPG3 +tests_firmware_CsmeFwUpdate +tests_firmware_DevBootUSB +tests_firmware_DevDefaultBoot +tests_firmware_DevMode +tests_firmware_DevModeStress +tests_firmware_DevScreenTimeout +tests_firmware_ECBattery +tests_firmware_ECBootTime +tests_firmware_ECCbiEeprom +tests_firmware_ECCharging +tests_firmware_ECChargingState +tests_firmware_ECHash +tests_firmware_ECKeyboard +tests_firmware_ECKeyboardReboot +tests_firmware_ECLidShutdown +tests_firmware_ECLidSwitch +tests_firmware_ECPowerButton +tests_firmware_ECPowerG3 +tests_firmware_ECSharedMem +tests_firmware_ECSystemLocked +tests_firmware_ECThermal +tests_firmware_ECUpdateId +tests_firmware_ECUsbPorts +tests_firmware_ECWakeFromULP +tests_firmware_ECWakeSource +tests_firmware_ECWatchdog +tests_firmware_EmmcWriteLoad +tests_firmware_EventLog +tests_firmware_FAFTPrepare +tests_firmware_FAFTModeTransitions +tests_firmware_FAFTRPC +tests_firmware_FAFTSetup biod? ( +tests_firmware_Fingerprint +tests_firmware_FingerprintCrosConfig +tests_firmware_FingerprintSigner ) +tests_firmware_FMap +tests_firmware_FWMPDisableCCD +tests_firmware_FwScreenCloseLid +tests_firmware_FwScreenPressPower +tests_firmware_FWupdateWP +tests_firmware_FWtries +tests_firmware_FWupdateThenSleep +tests_firmware_FWupdateWP +tests_firmware_IntegratedU2F +tests_firmware_InvalidUSB +tests_firmware_LegacyRecovery +tests_firmware_MenuModeTransition +tests_firmware_MiniDiag +tests_firmware_Mosys +tests_firmware_PDConnect +tests_firmware_PDDataSwap +tests_firmware_PDPowerSwap +tests_firmware_PDProtocol +tests_firmware_PDResetHard +tests_firmware_PDResetSoft +tests_firmware_PDTrySrc +tests_firmware_PDVbusRequest +tests_firmware_RecoveryButton +tests_firmware_RecoveryCacheBootKeys +tests_firmware_RollbackFirmware +tests_firmware_RollbackKernel +tests_firmware_SelfSignedBoot +tests_firmware_SetSerialNumber +tests_firmware_SoftwareSync +tests_firmware_StandbyPowerConsumption +tests_firmware_SysfsVPD +tests_firmware_TPMNotCorruptedDevMode tpm? ( +tests_firmware_TPMExtend ) tpm? ( +tests_firmware_TPMVersionCheck ) tpm? ( +tests_firmware_TPMKernelVersion ) tpm2? ( +tests_firmware_TPMExtend ) tpm2? ( +tests_firmware_TPMVersionCheck ) tpm2? ( +tests_firmware_TPMKernelVersion ) +tests_firmware_TryFwB +tests_firmware_TypeCCharging +tests_firmware_TypeCProbeUSB3 +tests_firmware_UpdateFirmwareDataKeyVersion +tests_firmware_UpdateFirmwareVersion +tests_firmware_UpdateKernelDataKeyVersion +tests_firmware_UpdateKernelSubkeyVersion +tests_firmware_UpdateKernelVersion +tests_firmware_UpdaterModes +tests_firmware_UserRequestRecovery +tests_firmware_WilcoDiagnosticsMode +tests_firmware_WriteProtect +tests_firmware_WriteProtectFunc +tests_graphics_MultipleDisplays +tests_graphics_PowerConsumption +tests_hardware_DiskFirmwareUpgrade +tests_hardware_MemoryIntegrity +tests_hardware_StorageQual +tests_hardware_StorageQualBase +tests_hardware_StorageQualCheckSetup +tests_hardware_StorageQualSuspendStress +tests_hardware_StorageQualTrimStress +tests_hardware_StorageQualV2 +tests_hardware_StorageStress +tests_infra_ServerPythonVersion +tests_infra_TLSExecDUTCommand +tests_kernel_EmptyLines +tests_kernel_ExternalUsbPeripheralsDetectionTest +tests_kernel_IdlePerf +tests_kernel_MemoryRamoop moblab? ( +tests_moblab_RunSuite +tests_moblab_StorageQual ) +tests_moblab_Setup cros_p2p? ( +tests_p2p_EndToEndTest ) +tests_network_FirewallHolePunchServer +tests_platform_ActivateDate +tests_platform_BootDevice +tests_platform_BootLockboxServer +tests_platform_BootPerfServer +tests_platform_CompromisedStatefulPartition +tests_platform_CorruptRootfs +tests_platform_CrashStateful +tests_platform_ExternalUsbPeripherals +tests_platform_FetchCloudConfig +tests_platform_FlashErasers +tests_platform_Flashrom +tests_platform_HWwatchdog +tests_platform_InitLoginPerfServer +tests_platform_InstallTestImage +tests_platform_InternalDisplay +tests_platform_KernelErrorPaths +tests_platform_MTBF power_management? ( +tests_platform_PowerStatusStress +tests_power_DeferForFlashrom +tests_power_WakeSources ) +tests_platform_Powerwash +tests_platform_RotationFps +tests_platform_ServoPowerStateController +tests_platform_StageAndRecover +tests_platform_SyncCrash readahead? ( +tests_platform_UReadAheadServer ) +tests_platform_Vpd +tests_policy_AUServer +tests_policy_DeviceChargingServer +tests_policy_DeviceServer +tests_policy_ExternalStorageServer +tests_policy_GlobalNetworkSettingsServer +tests_policy_WiFiAutoconnectServer +tests_policy_WiFiPrecedenceServer +tests_policy_WiFiTypesServer +tests_policy_WilcoServerDeviceDockMacAddressSource +tests_policy_WilcoServerOnNonWilcoDevice +tests_policy_WilcoServerUSBPowershare +tests_power_BrightnessResetAfterReboot +tests_power_ChargeControlWrapper +tests_power_MeetCall +tests_power_Monitoring +tests_power_LW +tests_power_PowerlogWrapper +tests_power_RPMTest +tests_power_ServoChargeStress +tests_power_ServodWrapper +tests_provision_CheetsUpdate +tests_provision_Cr50TOT +tests_provision_Cr50Update +tests_provision_FactoryImage +tests_provision_FirmwareUpdate +tests_provision_QuickProvision +tests_rlz_CheckPing +tests_sequences +tests_servo_LabControlVerification +tests_servo_LabstationVerification +tests_servo_USBMuxVerification +tests_servo_LogGrab +tests_servo_Verification +tests_servohost_Reboot +tests_stress_ClientTestReboot +tests_stress_EnrollmentRetainment +tests_stub_FailServer +tests_stub_PassServer +tests_stub_ServerToClientPass +tests_stub_SynchronousOffloadServer cros_host cros_workon_tree_d1b6d98e183582730cac301bca392261cd4ad9a3 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=autotest? ( chromeos-base/autotest )
+REQUIRED_USE=?? ( has-kernelnext is-kernelnext )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=209e598f3ee9138bd0f5880b8664cd65
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-9999 b/metadata/md5-cache/chromeos-base/autotest-server-tests-9999
index 3c5c1a7..37a27aa 100644
--- a/metadata/md5-cache/chromeos-base/autotest-server-tests-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-server-tests-9999
@@ -3,12 +3,12 @@
 DESCRIPTION=Autotest server tests
 EAPI=5
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=android-container android-container-pi android-vm-rvc +autotest biod +cellular +cheets_user cheets_user_64 cheets_userdebug_64 -chromeless_tests -chromeless_tty cros_p2p debugd dlc_test has-kernelnext is-kernelnext -moblab +power_management +readahead +tpm tpm2 +tests_android_ACTS +tests_android_EasySetup +tests_audio_AudioAfterReboot +tests_audio_AudioAfterSuspend +tests_audio_AudioArtifacts +tests_audio_AudioBasicAssistant +tests_audio_AudioBasicBluetoothPlayback +tests_audio_AudioBasicBluetoothPlaybackRecord +tests_audio_AudioBasicBluetoothRecord +tests_audio_AudioBasicExternalMicrophone +tests_audio_AudioBasicHDMI +tests_audio_AudioBasicHeadphone +tests_audio_AudioBasicHotwording +tests_audio_AudioBasicInternalMicrophone +tests_audio_AudioBasicInternalSpeaker +tests_audio_AudioBasicUSBPlayback +tests_audio_AudioBasicUSBPlaybackRecord +tests_audio_AudioBasicUSBRecord +tests_audio_AudioBluetoothConnectionStability +tests_audio_AudioNodeSwitch +tests_audio_AudioPinnedStream +tests_audio_AudioQualityAfterSuspend +tests_audio_AudioTestAssumptionCheck +tests_audio_AudioVolume +tests_audio_AudioWebRTCLoopback +tests_audio_InternalCardNodes +tests_audio_LeftRightInternalSpeaker +tests_audio_MediaBasicVerification +tests_audio_PowerConsumption +tests_audiovideo_AVSync +tests_autoupdate_Basic +tests_autoupdate_CatchBadSignatures +tests_autoupdate_Cellular +tests_autoupdate_ConsecutiveUpdatesBeforeReboot +tests_autoupdate_DataPreserved +tests_autoupdate_ForcedOOBEUpdate +tests_autoupdate_FromUI +tests_autoupdate_Interruptions +tests_autoupdate_NonBlockingOOBEUpdate +tests_autoupdate_OmahaResponse +tests_autoupdate_P2P +tests_autoupdate_Periodic +tests_autoupdate_RejectDuplicateUpdate +tests_autoupdate_Rollback dlc_test? ( +tests_autoupdate_WithDLC ) has-kernelnext? ( +tests_autoupdate_StatefulCompatibility ) is-kernelnext? ( +tests_autoupdate_StatefulCompatibility ) cellular? ( +tests_cellular_StaleModemReboot ) android-container-pi? ( cheets_user? ( +tests_cheets_CTS_Instant +tests_cheets_CTS_P +tests_cheets_GTS ) cheets_user_64? ( +tests_cheets_CTS_Instant +tests_cheets_CTS_P +tests_cheets_GTS ) ) android-vm-rvc? ( cheets_user_64? ( +tests_cheets_CTS_R +tests_cheets_GTS_R ) cheets_userdebug_64? ( +tests_cheets_VTS_R ) ) +tests_cellular_Callbox_AssertCellularData +tests_cheets_LabDependencies debugd? ( +tests_debugd_DevTools ) +tests_crosperf_Wrapper +tests_display_EdidStress +tests_display_HDCPScreen +tests_display_HotPlugAtBoot +tests_display_HotPlugAtSuspend +tests_display_HotPlugNoisy +tests_display_LidCloseOpen +tests_display_NoEdid +tests_display_Resolution +tests_display_ResolutionList +tests_display_ServerChameleonConnection +tests_display_SuspendStress +tests_display_SwitchMode +tests_dummy_PassServer +tests_dummy_FailServer +tests_dummy_FlakyTestServer +tests_stub_SynchronousOffloadServer +tests_enterprise_ClearTPM +tests_enterprise_KioskEnrollmentServer +tests_enterprise_LongevityTrackerServer +tests_enterprise_OnlineDemoMode +tests_factory_Basic +tests_firmware_Bmpblk +tests_firmware_CgptStress +tests_firmware_ClearTPMOwnerAndReset +tests_firmware_ConsecutiveBoot +tests_firmware_ConsecutiveBootPowerButton +tests_firmware_ConsecutiveLidSwitch +tests_firmware_CorruptBothFwBodyAB +tests_firmware_CorruptBothFwSigAB +tests_firmware_CorruptBothKernelAB +tests_firmware_CorruptFwBodyA +tests_firmware_CorruptFwBodyB +tests_firmware_CorruptFwSigA +tests_firmware_CorruptFwSigB +tests_firmware_CorruptKernelA +tests_firmware_CorruptKernelB +tests_firmware_CorruptRecoveryCache +tests_firmware_Cr50BID +tests_firmware_Cr50CCDServoCap +tests_firmware_Cr50CCDUartStress +tests_firmware_Cr50CheckCap +tests_firmware_Cr50ConsoleCommands +tests_firmware_Cr50DeepSleepStress +tests_firmware_Cr50DeferredECReset +tests_firmware_Cr50DeviceState +tests_firmware_Cr50DevMode +tests_firmware_Cr50ECReset +tests_firmware_Cr50FactoryResetVC +tests_firmware_Cr50CCDFirmwareUpdate +tests_firmware_Cr50GetName +tests_firmware_Cr50InvalidateRW +tests_firmware_Cr50Keygen +tests_firmware_Cr50Open +tests_firmware_Cr50OpenWhileAPOff +tests_firmware_Cr50PartialBoardId +tests_firmware_Cr50Password +tests_firmware_Cr50PinWeaverServer +tests_firmware_Cr50RddG3 +tests_firmware_Cr50RejectUpdate +tests_firmware_Cr50RMAOpen +tests_firmware_Cr50SetBoardId +tests_firmware_Cr50ShortECC +tests_firmware_Cr50Testlab +tests_firmware_Cr50TpmManufactured +tests_firmware_Cr50TpmMode +tests_firmware_Cr50U2fCommands +tests_firmware_Cr50Unlock +tests_firmware_Cr50Update +tests_firmware_Cr50UpdateScriptStress +tests_firmware_Cr50USB +tests_firmware_Cr50VerifyEK +tests_firmware_Cr50WilcoEcrst +tests_firmware_Cr50WilcoRmaFactoryMode +tests_firmware_Cr50WPG3 +tests_firmware_CsmeFwUpdate +tests_firmware_DevBootUSB +tests_firmware_DevDefaultBoot +tests_firmware_DevMode +tests_firmware_DevModeStress +tests_firmware_DevScreenTimeout +tests_firmware_ECBattery +tests_firmware_ECBootTime +tests_firmware_ECCbiEeprom +tests_firmware_ECCharging +tests_firmware_ECChargingState +tests_firmware_ECHash +tests_firmware_ECKeyboard +tests_firmware_ECKeyboardReboot +tests_firmware_ECLidShutdown +tests_firmware_ECLidSwitch +tests_firmware_ECPowerButton +tests_firmware_ECPowerG3 +tests_firmware_ECSharedMem +tests_firmware_ECSystemLocked +tests_firmware_ECThermal +tests_firmware_ECUpdateId +tests_firmware_ECUsbPorts +tests_firmware_ECWakeSource +tests_firmware_ECWatchdog +tests_firmware_EmmcWriteLoad +tests_firmware_EventLog +tests_firmware_FAFTPrepare +tests_firmware_FAFTModeTransitions +tests_firmware_FAFTRPC +tests_firmware_FAFTSetup biod? ( +tests_firmware_Fingerprint +tests_firmware_FingerprintCrosConfig +tests_firmware_FingerprintSigner ) +tests_firmware_FMap +tests_firmware_FWMPDisableCCD +tests_firmware_FwScreenCloseLid +tests_firmware_FwScreenPressPower +tests_firmware_FWupdateWP +tests_firmware_FWtries +tests_firmware_FWupdateThenSleep +tests_firmware_FWupdateWP +tests_firmware_IntegratedU2F +tests_firmware_InvalidUSB +tests_firmware_LegacyRecovery +tests_firmware_MenuModeTransition +tests_firmware_Mosys +tests_firmware_PDConnect +tests_firmware_PDDataSwap +tests_firmware_PDPowerSwap +tests_firmware_PDProtocol +tests_firmware_PDResetHard +tests_firmware_PDResetSoft +tests_firmware_PDTrySrc +tests_firmware_PDVbusRequest +tests_firmware_RecoveryButton +tests_firmware_RecoveryCacheBootKeys +tests_firmware_RollbackFirmware +tests_firmware_RollbackKernel +tests_firmware_SelfSignedBoot +tests_firmware_SetSerialNumber +tests_firmware_SoftwareSync +tests_firmware_StandbyPowerConsumption +tests_firmware_SysfsVPD +tests_firmware_TPMNotCorruptedDevMode tpm? ( +tests_firmware_TPMExtend ) tpm? ( +tests_firmware_TPMVersionCheck ) tpm? ( +tests_firmware_TPMKernelVersion ) tpm2? ( +tests_firmware_TPMExtend ) tpm2? ( +tests_firmware_TPMVersionCheck ) tpm2? ( +tests_firmware_TPMKernelVersion ) +tests_firmware_TryFwB +tests_firmware_TypeCCharging +tests_firmware_TypeCProbeUSB3 +tests_firmware_UpdateFirmwareDataKeyVersion +tests_firmware_UpdateFirmwareVersion +tests_firmware_UpdateKernelDataKeyVersion +tests_firmware_UpdateKernelSubkeyVersion +tests_firmware_UpdateKernelVersion +tests_firmware_UpdaterModes +tests_firmware_UserRequestRecovery +tests_firmware_WilcoDiagnosticsMode +tests_firmware_WriteProtect +tests_firmware_WriteProtectFunc +tests_graphics_MultipleDisplays +tests_graphics_PowerConsumption +tests_hardware_DiskFirmwareUpgrade +tests_hardware_MemoryIntegrity +tests_hardware_StorageQual +tests_hardware_StorageQualBase +tests_hardware_StorageQualCheckSetup +tests_hardware_StorageQualSuspendStress +tests_hardware_StorageQualTrimStress +tests_hardware_StorageQualV2 +tests_hardware_StorageStress +tests_infra_TLSExecDUTCommand +tests_kernel_EmptyLines +tests_kernel_ExternalUsbPeripheralsDetectionTest +tests_kernel_IdlePerf +tests_kernel_MemoryRamoop moblab? ( +tests_moblab_RunSuite +tests_moblab_StorageQual ) +tests_moblab_Setup cros_p2p? ( +tests_p2p_EndToEndTest ) +tests_network_FirewallHolePunchServer +tests_platform_ActivateDate +tests_platform_BootDevice +tests_platform_BootLockboxServer +tests_platform_BootPerfServer +tests_platform_CompromisedStatefulPartition +tests_platform_CorruptRootfs +tests_platform_CrashStateful +tests_platform_ExternalUsbPeripherals +tests_platform_FetchCloudConfig +tests_platform_FlashErasers +tests_platform_Flashrom +tests_platform_HWwatchdog +tests_platform_InitLoginPerfServer +tests_platform_InstallTestImage +tests_platform_InternalDisplay +tests_platform_KernelErrorPaths +tests_platform_MTBF power_management? ( +tests_platform_PowerStatusStress +tests_power_DeferForFlashrom +tests_power_WakeSources ) +tests_platform_Powerwash +tests_platform_RotationFps +tests_platform_ServoPowerStateController +tests_platform_StageAndRecover +tests_platform_SuspendResumeTiming +tests_platform_SyncCrash readahead? ( +tests_platform_UReadAheadServer ) +tests_platform_Vpd +tests_policy_AUServer +tests_policy_DeviceChargingServer +tests_policy_DeviceServer +tests_policy_ExternalStorageServer +tests_policy_GlobalNetworkSettingsServer +tests_policy_WiFiAutoconnectServer +tests_policy_WiFiPrecedenceServer +tests_policy_WiFiTypesServer +tests_policy_WilcoServerDeviceDockMacAddressSource +tests_policy_WilcoServerOnNonWilcoDevice +tests_policy_WilcoServerUSBPowershare +tests_power_BrightnessResetAfterReboot +tests_power_ChargeControlWrapper +tests_power_MeetCall +tests_power_Monitoring +tests_power_LW +tests_power_PowerlogWrapper +tests_power_RPMTest +tests_power_ServoChargeStress +tests_power_ServodWrapper +tests_provision_CheetsUpdate +tests_provision_Cr50TOT +tests_provision_Cr50Update +tests_provision_FactoryImage +tests_provision_FirmwareUpdate +tests_provision_QuickProvision +tests_rlz_CheckPing +tests_sequences +tests_servo_LabControlVerification +tests_servo_LabstationVerification +tests_servo_USBMuxVerification +tests_servo_LogGrab +tests_servo_Verification +tests_servohost_Reboot +tests_stress_ClientTestReboot +tests_stress_EnrollmentRetainment +tests_stub_ServerToClientPass cros_host cros_workon_tree_ +buildcheck autotest opengles
+IUSE=android-container android-container-pi android-vm-rvc +autotest biod +cellular +cheets_user cheets_user_64 cheets_userdebug_64 -chromeless_tests -chromeless_tty cros_p2p debugd dlc_test has-kernelnext is-kernelnext -moblab +power_management +readahead +tpm tpm2 +tests_android_ACTS +tests_android_EasySetup +tests_audio_AudioAfterReboot +tests_audio_AudioAfterSuspend +tests_audio_AudioArtifacts +tests_audio_AudioBasicAssistant +tests_audio_AudioBasicBluetoothPlayback +tests_audio_AudioBasicBluetoothPlaybackRecord +tests_audio_AudioBasicBluetoothRecord +tests_audio_AudioBasicExternalMicrophone +tests_audio_AudioBasicHDMI +tests_audio_AudioBasicHeadphone +tests_audio_AudioBasicHotwording +tests_audio_AudioBasicInternalMicrophone +tests_audio_AudioBasicInternalSpeaker +tests_audio_AudioBasicUSBPlayback +tests_audio_AudioBasicUSBPlaybackRecord +tests_audio_AudioBasicUSBRecord +tests_audio_AudioBluetoothConnectionStability +tests_audio_AudioNodeSwitch +tests_audio_AudioNoiseCancellation +tests_audio_AudioPinnedStream +tests_audio_AudioQualityAfterSuspend +tests_audio_AudioTestAssumptionCheck +tests_audio_AudioVolume +tests_audio_AudioWebRTCLoopback +tests_audio_InternalCardNodes +tests_audio_LeftRightInternalSpeaker +tests_audio_MediaBasicVerification +tests_audio_PowerConsumption +tests_audiovideo_AVSync +tests_autoupdate_Basic +tests_autoupdate_CatchBadSignatures +tests_autoupdate_Cellular +tests_autoupdate_ConsecutiveUpdatesBeforeReboot +tests_autoupdate_DataPreserved +tests_autoupdate_ForcedOOBEUpdate +tests_autoupdate_FromUI +tests_autoupdate_Interruptions +tests_autoupdate_NonBlockingOOBEUpdate +tests_autoupdate_OmahaResponse +tests_autoupdate_P2P +tests_autoupdate_Periodic +tests_autoupdate_RejectDuplicateUpdate +tests_autoupdate_Rollback dlc_test? ( +tests_autoupdate_WithDLC ) has-kernelnext? ( +tests_autoupdate_StatefulCompatibility ) is-kernelnext? ( +tests_autoupdate_StatefulCompatibility ) cellular? ( +tests_cellular_StaleModemReboot ) android-container-pi? ( cheets_user? ( +tests_cheets_CTS_Instant +tests_cheets_CTS_P ) cheets_user_64? ( +tests_cheets_CTS_Instant +tests_cheets_CTS_P ) ) android-vm-rvc? ( cheets_user_64? ( +tests_cheets_CTS_R ) cheets_userdebug_64? ( +tests_cheets_VTS_R ) ) +tests_cellular_Callbox_AssertCellularData +tests_cellular_Callbox_AssertSMS +tests_cheets_LabDependencies debugd? ( +tests_debugd_DevTools ) +tests_crosperf_Wrapper +tests_display_EdidStress +tests_display_HDCPScreen +tests_display_HotPlugAtBoot +tests_display_HotPlugAtSuspend +tests_display_HotPlugNoisy +tests_display_LidCloseOpen +tests_display_NoEdid +tests_display_Resolution +tests_display_ResolutionList +tests_display_ServerChameleonConnection +tests_display_SuspendStress +tests_display_SwitchMode +tests_enterprise_ClearTPM +tests_enterprise_KioskEnrollmentServer +tests_enterprise_LongevityTrackerServer +tests_enterprise_OnlineDemoMode +tests_factory_Basic +tests_firmware_Bmpblk +tests_firmware_CgptStress +tests_firmware_ClearTPMOwnerAndReset +tests_firmware_ConsecutiveBoot +tests_firmware_ConsecutiveBootPowerButton +tests_firmware_ConsecutiveLidSwitch +tests_firmware_CorruptBothFwBodyAB +tests_firmware_CorruptBothFwSigAB +tests_firmware_CorruptBothKernelAB +tests_firmware_CorruptFwBodyA +tests_firmware_CorruptFwBodyB +tests_firmware_CorruptFwSigA +tests_firmware_CorruptFwSigB +tests_firmware_CorruptKernelA +tests_firmware_CorruptKernelB +tests_firmware_CorruptRecoveryCache +tests_firmware_Cr50BID +tests_firmware_Cr50CCDServoCap +tests_firmware_Cr50CCDUartStress +tests_firmware_Cr50CheckCap +tests_firmware_Cr50ConsoleCommands +tests_firmware_Cr50DeepSleepStress +tests_firmware_Cr50DeferredECReset +tests_firmware_Cr50DeviceState +tests_firmware_Cr50DevMode +tests_firmware_Cr50ECReset +tests_firmware_Cr50FactoryResetVC +tests_firmware_Cr50CCDFirmwareUpdate +tests_firmware_Cr50GetName +tests_firmware_Cr50InvalidateRW +tests_firmware_Cr50Keygen +tests_firmware_Cr50Open +tests_firmware_Cr50OpenWhileAPOff +tests_firmware_Cr50PartialBoardId +tests_firmware_Cr50Password +tests_firmware_Cr50PinWeaverServer +tests_firmware_Cr50RddG3 +tests_firmware_Cr50RejectUpdate +tests_firmware_Cr50RMAOpen +tests_firmware_Cr50SetBoardId +tests_firmware_Cr50ShortECC +tests_firmware_Cr50Testlab +tests_firmware_Cr50TpmManufactured +tests_firmware_Cr50TpmMode +tests_firmware_Cr50U2fCommands +tests_firmware_Cr50Unlock +tests_firmware_Cr50Update +tests_firmware_Cr50UpdateScriptStress +tests_firmware_Cr50USB +tests_firmware_Cr50VerifyEK +tests_firmware_Cr50WilcoEcrst +tests_firmware_Cr50WilcoRmaFactoryMode +tests_firmware_Cr50WPG3 +tests_firmware_CsmeFwUpdate +tests_firmware_DevBootUSB +tests_firmware_DevDefaultBoot +tests_firmware_DevMode +tests_firmware_DevModeStress +tests_firmware_DevScreenTimeout +tests_firmware_ECBattery +tests_firmware_ECBootTime +tests_firmware_ECCbiEeprom +tests_firmware_ECCharging +tests_firmware_ECChargingState +tests_firmware_ECHash +tests_firmware_ECKeyboard +tests_firmware_ECKeyboardReboot +tests_firmware_ECLidShutdown +tests_firmware_ECLidSwitch +tests_firmware_ECPowerButton +tests_firmware_ECPowerG3 +tests_firmware_ECSharedMem +tests_firmware_ECSystemLocked +tests_firmware_ECThermal +tests_firmware_ECUpdateId +tests_firmware_ECUsbPorts +tests_firmware_ECWakeFromULP +tests_firmware_ECWakeSource +tests_firmware_ECWatchdog +tests_firmware_EmmcWriteLoad +tests_firmware_EventLog +tests_firmware_FAFTPrepare +tests_firmware_FAFTModeTransitions +tests_firmware_FAFTRPC +tests_firmware_FAFTSetup biod? ( +tests_firmware_Fingerprint +tests_firmware_FingerprintCrosConfig +tests_firmware_FingerprintSigner ) +tests_firmware_FMap +tests_firmware_FWMPDisableCCD +tests_firmware_FwScreenCloseLid +tests_firmware_FwScreenPressPower +tests_firmware_FWupdateWP +tests_firmware_FWtries +tests_firmware_FWupdateThenSleep +tests_firmware_FWupdateWP +tests_firmware_IntegratedU2F +tests_firmware_InvalidUSB +tests_firmware_LegacyRecovery +tests_firmware_MenuModeTransition +tests_firmware_MiniDiag +tests_firmware_Mosys +tests_firmware_PDConnect +tests_firmware_PDDataSwap +tests_firmware_PDPowerSwap +tests_firmware_PDProtocol +tests_firmware_PDResetHard +tests_firmware_PDResetSoft +tests_firmware_PDTrySrc +tests_firmware_PDVbusRequest +tests_firmware_RecoveryButton +tests_firmware_RecoveryCacheBootKeys +tests_firmware_RollbackFirmware +tests_firmware_RollbackKernel +tests_firmware_SelfSignedBoot +tests_firmware_SetSerialNumber +tests_firmware_SoftwareSync +tests_firmware_StandbyPowerConsumption +tests_firmware_SysfsVPD +tests_firmware_TPMNotCorruptedDevMode tpm? ( +tests_firmware_TPMExtend ) tpm? ( +tests_firmware_TPMVersionCheck ) tpm? ( +tests_firmware_TPMKernelVersion ) tpm2? ( +tests_firmware_TPMExtend ) tpm2? ( +tests_firmware_TPMVersionCheck ) tpm2? ( +tests_firmware_TPMKernelVersion ) +tests_firmware_TryFwB +tests_firmware_TypeCCharging +tests_firmware_TypeCProbeUSB3 +tests_firmware_UpdateFirmwareDataKeyVersion +tests_firmware_UpdateFirmwareVersion +tests_firmware_UpdateKernelDataKeyVersion +tests_firmware_UpdateKernelSubkeyVersion +tests_firmware_UpdateKernelVersion +tests_firmware_UpdaterModes +tests_firmware_UserRequestRecovery +tests_firmware_WilcoDiagnosticsMode +tests_firmware_WriteProtect +tests_firmware_WriteProtectFunc +tests_graphics_MultipleDisplays +tests_graphics_PowerConsumption +tests_hardware_DiskFirmwareUpgrade +tests_hardware_MemoryIntegrity +tests_hardware_StorageQual +tests_hardware_StorageQualBase +tests_hardware_StorageQualCheckSetup +tests_hardware_StorageQualSuspendStress +tests_hardware_StorageQualTrimStress +tests_hardware_StorageQualV2 +tests_hardware_StorageStress +tests_infra_ServerPythonVersion +tests_infra_TLSExecDUTCommand +tests_kernel_EmptyLines +tests_kernel_ExternalUsbPeripheralsDetectionTest +tests_kernel_IdlePerf +tests_kernel_MemoryRamoop moblab? ( +tests_moblab_RunSuite +tests_moblab_StorageQual ) +tests_moblab_Setup cros_p2p? ( +tests_p2p_EndToEndTest ) +tests_network_FirewallHolePunchServer +tests_platform_ActivateDate +tests_platform_BootDevice +tests_platform_BootLockboxServer +tests_platform_BootPerfServer +tests_platform_CompromisedStatefulPartition +tests_platform_CorruptRootfs +tests_platform_CrashStateful +tests_platform_ExternalUsbPeripherals +tests_platform_FetchCloudConfig +tests_platform_FlashErasers +tests_platform_Flashrom +tests_platform_HWwatchdog +tests_platform_InitLoginPerfServer +tests_platform_InstallTestImage +tests_platform_InternalDisplay +tests_platform_KernelErrorPaths +tests_platform_MTBF power_management? ( +tests_platform_PowerStatusStress +tests_power_DeferForFlashrom +tests_power_WakeSources ) +tests_platform_Powerwash +tests_platform_RotationFps +tests_platform_ServoPowerStateController +tests_platform_StageAndRecover +tests_platform_SyncCrash readahead? ( +tests_platform_UReadAheadServer ) +tests_platform_Vpd +tests_policy_AUServer +tests_policy_DeviceChargingServer +tests_policy_DeviceServer +tests_policy_ExternalStorageServer +tests_policy_GlobalNetworkSettingsServer +tests_policy_WiFiAutoconnectServer +tests_policy_WiFiPrecedenceServer +tests_policy_WiFiTypesServer +tests_policy_WilcoServerDeviceDockMacAddressSource +tests_policy_WilcoServerOnNonWilcoDevice +tests_policy_WilcoServerUSBPowershare +tests_power_BrightnessResetAfterReboot +tests_power_ChargeControlWrapper +tests_power_MeetCall +tests_power_Monitoring +tests_power_LW +tests_power_PowerlogWrapper +tests_power_RPMTest +tests_power_ServoChargeStress +tests_power_ServodWrapper +tests_provision_CheetsUpdate +tests_provision_Cr50TOT +tests_provision_Cr50Update +tests_provision_FactoryImage +tests_provision_FirmwareUpdate +tests_provision_QuickProvision +tests_rlz_CheckPing +tests_sequences +tests_servo_LabControlVerification +tests_servo_LabstationVerification +tests_servo_USBMuxVerification +tests_servo_LogGrab +tests_servo_Verification +tests_servohost_Reboot +tests_stress_ClientTestReboot +tests_stress_EnrollmentRetainment +tests_stub_FailServer +tests_stub_PassServer +tests_stub_ServerToClientPass +tests_stub_SynchronousOffloadServer cros_host cros_workon_tree_ +buildcheck autotest opengles
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 RDEPEND=autotest? ( chromeos-base/autotest )
 REQUIRED_USE=?? ( has-kernelnext is-kernelnext )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=0f6ce3cd2a513ec80e2c2143d244fb57
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=e0d723ab118149860941fb7eb7e17669
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-bluetooth-0.0.1-r3429 b/metadata/md5-cache/chromeos-base/autotest-server-tests-bluetooth-0.0.1-r3429
deleted file mode 100644
index f09071a..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-server-tests-bluetooth-0.0.1-r3429
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DESCRIPTION=Autotest server tests for Bluetooth
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest +tests_bluetooth_AdapterAdvHealth +tests_bluetooth_AdapterAdvMonitor +tests_bluetooth_AdapterAudioLink +tests_bluetooth_AdapterAUHealth +tests_bluetooth_AdapterCLHealth +tests_bluetooth_AdapterEPHealth +tests_bluetooth_AdapterLEAdvertising +tests_bluetooth_AdapterLEBetterTogether +tests_bluetooth_AdapterLEHIDHealth +tests_bluetooth_AdapterLEHealth +tests_bluetooth_AdapterLLTHealth +tests_bluetooth_AdapterMDHealth +tests_bluetooth_AdapterMTBF +tests_bluetooth_AdapterPowerMeasure +tests_bluetooth_AdapterQuickHealth +tests_bluetooth_AdapterSAHealth +tests_bluetooth_AdapterSRHealth +tests_bluetooth_PeerUpdate cros_host cros_workon_tree_f3c2c1b6ad950d4f0da89332f1e47d33bdda1857 +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!<chromeos-base/autotest-server-tests-0.0.2-r4126 autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=bf4c2d2ee0243404b412feca746f3fa4
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-bluetooth-0.0.1-r3446 b/metadata/md5-cache/chromeos-base/autotest-server-tests-bluetooth-0.0.1-r3446
new file mode 100644
index 0000000..58f12e7
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-server-tests-bluetooth-0.0.1-r3446
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DESCRIPTION=Autotest server tests for Bluetooth
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest +tests_bluetooth_AdapterAdvHealth +tests_bluetooth_AdapterAdvMonitor +tests_bluetooth_AdapterAudioLink +tests_bluetooth_AdapterAUHealth +tests_bluetooth_AdapterCLHealth +tests_bluetooth_AdapterEPHealth +tests_bluetooth_AdapterLEAdvertising +tests_bluetooth_AdapterLEBetterTogether +tests_bluetooth_AdapterLEHIDHealth +tests_bluetooth_AdapterLEHealth +tests_bluetooth_AdapterLLTHealth +tests_bluetooth_AdapterMDHealth +tests_bluetooth_AdapterMTBF +tests_bluetooth_AdapterPowerMeasure +tests_bluetooth_AdapterQuickHealth +tests_bluetooth_AdapterRvR +tests_bluetooth_AdapterSAHealth +tests_bluetooth_AdapterSRHealth +tests_bluetooth_PeerUpdate +tests_bluetooth_PeerVerify cros_host cros_workon_tree_2bd0d5f238e77c48849cd1351e8f2921e005418f +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!<chromeos-base/autotest-server-tests-0.0.2-r4126 autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=87670ecd0737b1f62235cc2b6c5b2858
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-bluetooth-9999 b/metadata/md5-cache/chromeos-base/autotest-server-tests-bluetooth-9999
index 39ed26c..1364045 100644
--- a/metadata/md5-cache/chromeos-base/autotest-server-tests-bluetooth-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-server-tests-bluetooth-9999
@@ -2,11 +2,11 @@
 DESCRIPTION=Autotest server tests for Bluetooth
 EAPI=5
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest +tests_bluetooth_AdapterAdvHealth +tests_bluetooth_AdapterAdvMonitor +tests_bluetooth_AdapterAudioLink +tests_bluetooth_AdapterAUHealth +tests_bluetooth_AdapterCLHealth +tests_bluetooth_AdapterEPHealth +tests_bluetooth_AdapterLEAdvertising +tests_bluetooth_AdapterLEBetterTogether +tests_bluetooth_AdapterLEHIDHealth +tests_bluetooth_AdapterLEHealth +tests_bluetooth_AdapterLLTHealth +tests_bluetooth_AdapterMDHealth +tests_bluetooth_AdapterMTBF +tests_bluetooth_AdapterPowerMeasure +tests_bluetooth_AdapterQuickHealth +tests_bluetooth_AdapterSAHealth +tests_bluetooth_AdapterSRHealth +tests_bluetooth_PeerUpdate cros_host cros_workon_tree_ +buildcheck autotest opengles
+IUSE=+autotest +tests_bluetooth_AdapterAdvHealth +tests_bluetooth_AdapterAdvMonitor +tests_bluetooth_AdapterAudioLink +tests_bluetooth_AdapterAUHealth +tests_bluetooth_AdapterCLHealth +tests_bluetooth_AdapterEPHealth +tests_bluetooth_AdapterLEAdvertising +tests_bluetooth_AdapterLEBetterTogether +tests_bluetooth_AdapterLEHIDHealth +tests_bluetooth_AdapterLEHealth +tests_bluetooth_AdapterLLTHealth +tests_bluetooth_AdapterMDHealth +tests_bluetooth_AdapterMTBF +tests_bluetooth_AdapterPowerMeasure +tests_bluetooth_AdapterQuickHealth +tests_bluetooth_AdapterRvR +tests_bluetooth_AdapterSAHealth +tests_bluetooth_AdapterSRHealth +tests_bluetooth_PeerUpdate +tests_bluetooth_PeerVerify cros_host cros_workon_tree_ +buildcheck autotest opengles
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-server-tests-0.0.2-r4126 autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=28307866022d2c775f0e45d0b6e71c61
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=71f0d9b348bde582c9b77878ca9f6d51
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-shill-0.0.1-r3402 b/metadata/md5-cache/chromeos-base/autotest-server-tests-shill-0.0.1-r3402
deleted file mode 100644
index 743b624..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-server-tests-shill-0.0.1-r3402
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DESCRIPTION=Autotest server tests for shill
-EAPI=4
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=-chromeless_tests +autotest -chromeless_tty +tests_network_WiFi_APSupportedRates +tests_network_WiFi_AssocConfigPerformance +tests_network_WiFi_AttenuatedPerf +tests_network_WiFi_BeaconInterval +tests_network_WiFi_BgscanBackoff +tests_network_WiFi_BluetoothScanPerf +tests_network_WiFi_BluetoothStreamPerf +tests_network_WiFi_BSSTMReq +tests_network_WiFi_BT_AntennaCoex +tests_network_WiFi_ChannelHop +tests_network_WiFi_ChannelScanDwellTime +tests_network_WiFi_ChaosConfigFailure +tests_network_WiFi_ChaosConnectDisconnect +tests_network_WiFi_ChaosLongConnect !chromeless_tty ( !chromeless_tests ( +tests_cellular_ChromeEndToEnd +tests_network_WiFi_ChromeEndToEnd +tests_network_WiFi_RoamEndToEnd +tests_network_WiFi_RoamSuspendEndToEnd ) ) +tests_network_WiFi_CSA +tests_network_WiFi_DarkResumeActiveScans +tests_network_WiFi_DisableEnable +tests_network_WiFi_DisableRandomMACAddress +tests_network_WiFi_DisconnectReason +tests_network_WiFi_DTIMPeriod +tests_network_WiFi_FastReconnectInDarkResume +tests_network_WiFi_GTK +tests_network_WiFi_HiddenRemains +tests_network_WiFi_HiddenScan +tests_network_WiFi_LinkMonitorFailure +tests_network_WiFi_MalformedProbeResp +tests_network_WiFi_MultiAuth +tests_network_WiFi_OverlappingBSSScan +tests_network_WiFi_Perf +tests_network_WiFi_PMKSACaching +tests_network_WiFi_Prefer5Ghz +tests_network_WiFi_ProfileBasic +tests_network_WiFi_ProfileGUID +tests_network_WiFi_PTK +tests_network_WiFi_RandomMACAddress +tests_network_WiFi_Reassociate +tests_network_WiFi_ReconnectInDarkResume +tests_network_WiFi_Reset +tests_network_WiFi_Roam +tests_network_WiFi_RoamDbus +tests_network_WiFi_RoamFT +tests_network_WiFi_RoamSuspendTimeout +tests_network_WiFi_SecChange +tests_network_WiFi_SetOptionalDhcpProperties +tests_network_WiFi_SimpleConnect +tests_network_WiFi_SSIDSwitchBack +tests_network_WiFi_SuspendStress +tests_network_WiFi_StressTest +tests_network_WiFi_Throttle +tests_network_WiFi_UpdateRouter +tests_network_WiFi_VerifyRouter +tests_network_WiFi_VisibleScan +tests_network_WiFi_WakeOnDisconnect +tests_network_WiFi_WakeOnSSID +tests_network_WiFi_WakeOnWiFiThrottling +tests_network_WiFi_WoWLAN +tests_network_WiFi_WMM cros_host cros_workon_tree_45230f81767e1e2835752c13a07d5ebd03df8a04 +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=dd938a823dd3b09e8508410cc9608b73
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-shill-0.0.1-r3421 b/metadata/md5-cache/chromeos-base/autotest-server-tests-shill-0.0.1-r3421
new file mode 100644
index 0000000..78dee64
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-server-tests-shill-0.0.1-r3421
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DESCRIPTION=Autotest server tests for shill
+EAPI=4
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=-chromeless_tests +autotest -chromeless_tty +tests_network_WiFi_APSupportedRates +tests_network_WiFi_AssocConfigPerformance +tests_network_WiFi_AttenuatedPerf +tests_network_WiFi_BeaconInterval +tests_network_WiFi_BgscanBackoff +tests_network_WiFi_BluetoothScanPerf +tests_network_WiFi_BluetoothStreamPerf +tests_network_WiFi_BSSTMReq +tests_network_WiFi_BT_AntennaCoex +tests_network_WiFi_ChannelHop +tests_network_WiFi_ChannelScanDwellTime +tests_network_WiFi_ChaosConfigFailure +tests_network_WiFi_ChaosConnectDisconnect +tests_network_WiFi_ChaosLongConnect !chromeless_tty ( !chromeless_tests ( +tests_cellular_ChromeEndToEnd +tests_network_WiFi_ChromeEndToEnd +tests_network_WiFi_RoamEndToEnd +tests_network_WiFi_RoamSuspendEndToEnd ) ) +tests_network_WiFi_CSA +tests_network_WiFi_DarkResumeActiveScans +tests_network_WiFi_DisableEnable +tests_network_WiFi_DisableRandomMACAddress +tests_network_WiFi_DisconnectReason +tests_network_WiFi_DTIMPeriod +tests_network_WiFi_FastReconnectInDarkResume +tests_network_WiFi_GTK +tests_network_WiFi_HiddenRemains +tests_network_WiFi_HiddenScan +tests_network_WiFi_LinkMonitorFailure +tests_network_WiFi_MalformedProbeResp +tests_network_WiFi_MultiAuth +tests_network_WiFi_OverlappingBSSScan +tests_network_WiFi_Perf +tests_network_WiFi_PMKSACaching +tests_network_WiFi_Prefer5Ghz +tests_network_WiFi_ProfileBasic +tests_network_WiFi_ProfileGUID +tests_network_WiFi_PTK +tests_network_WiFi_RandomMACAddress +tests_network_WiFi_Reassociate +tests_network_WiFi_ReconnectInDarkResume +tests_network_WiFi_Reset +tests_network_WiFi_Roam +tests_network_WiFi_RoamDbus +tests_network_WiFi_RoamFT +tests_network_WiFi_RoamSuspendTimeout +tests_network_WiFi_SecChange +tests_network_WiFi_SetOptionalDhcpProperties +tests_network_WiFi_SimpleConnect +tests_network_WiFi_SSIDSwitchBack +tests_network_WiFi_SuspendStress +tests_network_WiFi_StressTest +tests_network_WiFi_Throttle +tests_network_WiFi_UpdateRouter +tests_network_WiFi_VerifyRouter +tests_network_WiFi_VisibleScan +tests_network_WiFi_WakeOnDisconnect +tests_network_WiFi_WakeOnSSID +tests_network_WiFi_WakeOnWiFiThrottling +tests_network_WiFi_WoWLAN +tests_network_WiFi_WMM cros_host cros_workon_tree_4bfc6c7b6e90fd08be968ca4568a956a5b6c3f38 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=d81459086c17119ef40a98572afc8916
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-shill-9999 b/metadata/md5-cache/chromeos-base/autotest-server-tests-shill-9999
index bd41b79..e5ff022 100644
--- a/metadata/md5-cache/chromeos-base/autotest-server-tests-shill-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-server-tests-shill-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0a31ae92188b6fd3d953d367cf96bfd5
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-tast-0.0.1-r206 b/metadata/md5-cache/chromeos-base/autotest-server-tests-tast-0.0.1-r206
deleted file mode 100644
index a4b5149..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-server-tests-tast-0.0.1-r206
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DESCRIPTION=Autotest server tests for running Tast-based tests
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast/
-IUSE=+autotest +tests_graphics_TraceReplayExtended +tests_tast cros_host cros_workon_tree_92d41e1d76de84e19ce924a08931bf722c8a6b57 +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=012ea6806bac9f8199d7f0c0203d2870
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-tast-0.0.1-r259 b/metadata/md5-cache/chromeos-base/autotest-server-tests-tast-0.0.1-r259
new file mode 100644
index 0000000..3037cce8
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-server-tests-tast-0.0.1-r259
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DESCRIPTION=Autotest server tests for running Tast-based tests
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast/
+IUSE=+autotest +tests_graphics_TraceReplayExtended +tests_tast cros_host cros_workon_tree_225864c65e752d1bfda0ce6cfe0d51a4547e5565 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=2473af1444e6c4c0f812f75dc96fbc16
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-tast-9999 b/metadata/md5-cache/chromeos-base/autotest-server-tests-tast-9999
index 655266f..f2767e9 100644
--- a/metadata/md5-cache/chromeos-base/autotest-server-tests-tast-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-server-tests-tast-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=04f84008863ec711f9bfd816fd13fa00
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-telemetry-0.0.1-r3244 b/metadata/md5-cache/chromeos-base/autotest-server-tests-telemetry-0.0.1-r3244
index bad52f0..3c77386 100644
--- a/metadata/md5-cache/chromeos-base/autotest-server-tests-telemetry-0.0.1-r3244
+++ b/metadata/md5-cache/chromeos-base/autotest-server-tests-telemetry-0.0.1-r3244
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f158e953f0bfb597e8413a9e0eb1c443
diff --git a/metadata/md5-cache/chromeos-base/autotest-server-tests-telemetry-9999 b/metadata/md5-cache/chromeos-base/autotest-server-tests-telemetry-9999
index 8d6005f..c730741 100644
--- a/metadata/md5-cache/chromeos-base/autotest-server-tests-telemetry-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-server-tests-telemetry-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ea9276697dcedaecdfa639af453c8a00
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-0.0.4-r8903 b/metadata/md5-cache/chromeos-base/autotest-tests-0.0.4-r8903
index 1cc8516..f24ca83 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-0.0.4-r8903
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-0.0.4-r8903
@@ -3,11 +3,11 @@
 DESCRIPTION=Autotest tests
 EAPI=5
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=arc-camera3 biod -chromeless_tests -chromeless_tty +crash_reporting cups dlc_test +encrypted_stateful +network_time +passive_metrics +profile vaapi +autotest x86? ( +tests_xfsFilesystemTestSuite +tests_hardware_UnsafeMemory ) amd64? ( +tests_xfsFilesystemTestSuite +tests_hardware_UnsafeMemory ) +tests_profiler_sync +tests_compilebench +tests_crashme +tests_dbench +tests_ddtest +tests_disktest +tests_fsx +tests_hackbench +tests_iperf +tests_bonnie +tests_iozone +tests_netpipe +tests_sleeptest +tests_kernel_sysrq_info +tests_unixbench +tests_autoupdate_Backoff +tests_autoupdate_BadMetadata +tests_autoupdate_CannedOmahaUpdate +tests_autoupdate_DisconnectReconnectNetwork dlc_test? ( +tests_autoupdate_InstallAndUpdateDLC ) +tests_autoupdate_PeriodicCheck +tests_autoupdate_UrlSwitch +tests_blktestsSuiteAll +tests_blktestsSuiteLoopOverBlk +tests_blktestsSuiteLoopOverFile +tests_blktestsSuiteRealBlk +tests_camera_V4L2 arc-camera3? ( +tests_camera_HAL3 +tests_camera_HAL3Perf ) +tests_dummy_Fail +tests_dummy_Pass +tests_dummy_SynchronousOffload tests_example_UnitTest +tests_firmware_CbfsMcache +tests_firmware_LockedME +tests_firmware_CheckEOPState +tests_firmware_RomSize +tests_firmware_SetFWMP +tests_firmware_VbootCrypto +tests_flaky_test +tests_hardware_Badblocks +tests_hardware_DiskSize +tests_hardware_EC +tests_hardware_EepromWriteProtect +tests_hardware_GobiGPS +tests_hardware_GPIOSwitches +tests_hardware_GPS +tests_hardware_I2CProbe +tests_hardware_Interrupt +tests_hardware_Keyboard +tests_hardware_LightSensor +tests_hardware_MemoryLatency +tests_hardware_MemoryThroughput +tests_hardware_MemoryZRAMThroughput +tests_hardware_Memtester +tests_hardware_MultiReader +tests_hardware_ProbeComponents +tests_hardware_RamFio +tests_hardware_RealtekCardReader +tests_hardware_Resolution +tests_hardware_SAT +tests_hardware_Smartctl +tests_hardware_SsdDetection +tests_hardware_StorageFio +tests_hardware_StorageFioOther +tests_hardware_StorageTrim +tests_hardware_StorageWearoutDetect +tests_hardware_TouchScreenPowerCycles tests_hardware_TouchScreenPresent +tests_hardware_TrimIntegrity +tests_infra_FirmwareAutoupdate +tests_kernel_AsyncDriverProbe +tests_kernel_FirmwareRequest +tests_kernel_CrosECSysfsAccel +tests_kernel_Delay +tests_kernel_fs_Punybench +tests_kernel_Ktime +tests_kernel_Lmbench +tests_kernel_Memory_Ramoop +tests_kernel_SchedBandwith crash_reporting? ( +tests_logging_CrashSender +tests_logging_KernelCrash +tests_logging_UdevCrash +tests_logging_UserCrash +tests_platform_AnomalyDetector ) +tests_network_EthCaps +tests_network_EthernetStressPlug +tests_network_Ipv6SimpleNegotiation +tests_network_NegotiatedLANSpeed +tests_platform_AccurateTime +tests_platform_AesThroughput !chromeless_tty? ( +tests_platform_BootPerf ) +tests_platform_CheckErrorsInLog +tests_platform_CleanShutdown +tests_platform_Crossystem +tests_platform_Crouton +tests_platform_DaemonsRespawn +tests_platform_DBusMachineIdRotation encrypted_stateful? ( +tests_platform_EncryptedStateful ) +tests_platform_ExternalUSBBootStress +tests_platform_ExternalUSBStress +tests_platform_FileNum +tests_platform_FileSize biod? ( +tests_platform_Fingerprint ) +tests_platform_Firewall +tests_platform_FullyChargedPowerStatus +tests_platform_HighResTimers +tests_platform_ImageLoader +tests_platform_ImageLoaderServer +tests_platform_KernelVersion +tests_platform_LibCBench +tests_platform_LogDupSuppression +tests_platform_LogNonKernelKmsg +tests_platform_MemCheck +tests_platform_MemoryMonitor chromeless_tty? ( +tests_platform_MetricsUploader ) +tests_platform_NetParms +tests_platform_OpenSSLActual profile? ( +tests_platform_Perf +tests_platform_Quipper ) cups? ( +tests_platform_PrinterPpds ) +tests_platform_Rootdev +tests_platform_SecureEraseFile !chromeless_tty? ( +tests_platform_SessionManagerStateKeyGeneration ) +tests_platform_TabletMode +tests_platform_TempFS network_time? ( +tests_platform_TLSDate +tests_platform_TLSDateActual ) +tests_platform_UdevVars +tests_suite_HWConfig +tests_suite_HWQual +tests_system_ColdBoot +tests_touch_HasInput +tests_touch_UpdateErrors +tests_touch_WakeupSource +tests_usbpd_DisplayPortSink +tests_vpd_ReadWrite cros-debug cros_host cros_workon_tree_45230f81767e1e2835752c13a07d5ebd03df8a04 +buildcheck autotest opengles
+IUSE=arc-camera3 biod -chromeless_tests -chromeless_tty +crash_reporting cups dlc_test +encrypted_stateful +network_time +passive_metrics +profile vaapi +autotest x86? ( +tests_xfsFilesystemTestSuite +tests_hardware_UnsafeMemory ) amd64? ( +tests_xfsFilesystemTestSuite +tests_hardware_UnsafeMemory ) +tests_profiler_sync +tests_compilebench +tests_crashme +tests_dbench +tests_ddtest +tests_disktest +tests_fsx +tests_hackbench +tests_iperf +tests_bonnie +tests_iozone +tests_netpipe +tests_sleeptest +tests_kernel_sysrq_info +tests_unixbench +tests_autoupdate_Backoff +tests_autoupdate_BadMetadata +tests_autoupdate_CannedOmahaUpdate +tests_autoupdate_DisconnectReconnectNetwork dlc_test? ( +tests_autoupdate_InstallAndUpdateDLC ) +tests_autoupdate_PeriodicCheck +tests_autoupdate_UrlSwitch +tests_blktestsSuiteAll +tests_blktestsSuiteLoopOverBlk +tests_blktestsSuiteLoopOverFile +tests_blktestsSuiteRealBlk +tests_camera_V4L2 arc-camera3? ( +tests_camera_HAL3 +tests_camera_HAL3Perf ) +tests_dummy_Fail +tests_stub_Pass +tests_dummy_SynchronousOffload tests_example_UnitTest +tests_firmware_CbfsMcache +tests_firmware_LockedME +tests_firmware_CheckEOPState +tests_firmware_RomSize +tests_firmware_SetFWMP +tests_firmware_VbootCrypto +tests_flaky_test +tests_hardware_Badblocks +tests_hardware_DiskSize +tests_hardware_EC +tests_hardware_EepromWriteProtect +tests_hardware_GobiGPS +tests_hardware_GPIOSwitches +tests_hardware_GPS +tests_hardware_I2CProbe +tests_hardware_Interrupt +tests_hardware_Keyboard +tests_hardware_LightSensor +tests_hardware_MemoryLatency +tests_hardware_MemoryThroughput +tests_hardware_MemoryZRAMThroughput +tests_hardware_Memtester +tests_hardware_MultiReader +tests_hardware_ProbeComponents +tests_hardware_RamFio +tests_hardware_RealtekCardReader +tests_hardware_Resolution +tests_hardware_SAT +tests_hardware_Smartctl +tests_hardware_SsdDetection +tests_hardware_StorageFio +tests_hardware_StorageFioOther +tests_hardware_StorageTrim +tests_hardware_StorageWearoutDetect +tests_hardware_TouchScreenPowerCycles tests_hardware_TouchScreenPresent +tests_hardware_TrimIntegrity +tests_infra_FirmwareAutoupdate +tests_kernel_AsyncDriverProbe +tests_kernel_FirmwareRequest +tests_kernel_CrosECSysfsAccel +tests_kernel_Delay +tests_kernel_fs_Punybench +tests_kernel_Ktime +tests_kernel_Lmbench +tests_kernel_Memory_Ramoop +tests_kernel_SchedBandwith crash_reporting? ( +tests_logging_CrashSender +tests_logging_KernelCrash +tests_logging_UdevCrash +tests_logging_UserCrash +tests_platform_AnomalyDetector ) +tests_network_EthCaps +tests_network_EthernetStressPlug +tests_network_Ipv6SimpleNegotiation +tests_network_NegotiatedLANSpeed +tests_platform_AccurateTime +tests_platform_AesThroughput !chromeless_tty? ( +tests_platform_BootPerf ) +tests_platform_CheckErrorsInLog +tests_platform_CleanShutdown +tests_platform_Crossystem +tests_platform_Crouton +tests_platform_DaemonsRespawn +tests_platform_DBusMachineIdRotation encrypted_stateful? ( +tests_platform_EncryptedStateful ) +tests_platform_ExternalUSBBootStress +tests_platform_ExternalUSBStress +tests_platform_FileNum +tests_platform_FileSize biod? ( +tests_platform_Fingerprint ) +tests_platform_Firewall +tests_platform_FullyChargedPowerStatus +tests_platform_HighResTimers +tests_platform_ImageLoader +tests_platform_ImageLoaderServer +tests_platform_KernelVersion +tests_platform_LibCBench +tests_platform_LogDupSuppression +tests_platform_LogNonKernelKmsg +tests_platform_MemCheck +tests_platform_MemoryMonitor chromeless_tty? ( +tests_platform_MetricsUploader ) +tests_platform_NetParms +tests_platform_OpenSSLActual profile? ( +tests_platform_Perf +tests_platform_Quipper ) cups? ( +tests_platform_PrinterPpds ) +tests_platform_Rootdev +tests_platform_SecureEraseFile !chromeless_tty? ( +tests_platform_SessionManagerStateKeyGeneration ) +tests_platform_TabletMode +tests_platform_TempFS network_time? ( +tests_platform_TLSDate +tests_platform_TLSDateActual ) +tests_platform_UdevVars +tests_suite_HWConfig +tests_suite_HWQual +tests_system_ColdBoot +tests_touch_HasInput +tests_touch_UpdateErrors +tests_touch_WakeupSource +tests_usbpd_DisplayPortSink +tests_vpd_ReadWrite cros-debug cros_host cros_workon_tree_45230f81767e1e2835752c13a07d5ebd03df8a04 +buildcheck autotest opengles
 KEYWORDS=*
 LICENSE=GPL-2
 PROPERTIES=live
 RDEPEND=>=chromeos-base/autotest-deps-0.0.3 !<=chromeos-base/autotest-factory-0.0.1-r4445 dev-python/numpy dev-python/pygobject dev-python/pytest dev-python/python-uinput media-sound/sox sys-apps/ethtool vaapi? ( x11-libs/libva ) virtual/autotest-tests tests_dbench? ( dev-libs/libaio ) tests_platform_MetricsUploader? ( >=chromeos-base/metrics-0.0.1-r3152 dev-python/protobuf-python ) tests_platform_SecureEraseFile? ( chromeos-base/secure-erase-file ) tests_hardware_MemoryLatency? ( app-benchmarks/lmbench ) tests_hardware_MemoryThroughput? ( app-benchmarks/lmbench ) tests_hardware_MemoryZRAMThroughput? ( app-benchmarks/microbenchmarks ) tests_kernel_Lmbench? ( app-benchmarks/lmbench ) arc-camera3? ( tests_camera_HAL3? ( chromeos-base/autotest-deps-camera-hal3 ) tests_camera_HAL3Perf? ( chromeos-base/autotest-deps-camera-hal3 ) ) tests_camera_V4L2? ( media-libs/libyuv dev-libs/re2 ) tests_xfsFilesystemTestSuite? ( app-benchmarks/xfstests ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=58e8fd21bdc2c00f756292c4071b60cf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=40d18022772218af17cc7901d17c5676
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-0.0.4-r8924 b/metadata/md5-cache/chromeos-base/autotest-tests-0.0.4-r8924
new file mode 100644
index 0000000..906f428
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-0.0.4-r8924
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=>=chromeos-base/autotest-deps-0.0.3 !<=chromeos-base/autotest-factory-0.0.1-r4445 dev-python/numpy dev-python/pillow dev-python/pygobject dev-python/pytest dev-python/python-uinput media-sound/sox sys-apps/ethtool vaapi? ( x11-libs/libva ) virtual/autotest-tests tests_dbench? ( dev-libs/libaio ) tests_platform_MetricsUploader? ( >=chromeos-base/metrics-0.0.1-r3152 dev-python/protobuf-python ) tests_platform_SecureEraseFile? ( chromeos-base/secure-erase-file ) tests_hardware_MemoryLatency? ( app-benchmarks/lmbench ) tests_hardware_MemoryThroughput? ( app-benchmarks/lmbench ) tests_hardware_MemoryZRAMThroughput? ( app-benchmarks/microbenchmarks ) tests_kernel_Lmbench? ( app-benchmarks/lmbench ) arc-camera3? ( tests_camera_HAL3? ( chromeos-base/autotest-deps-camera-hal3 ) tests_camera_HAL3Perf? ( chromeos-base/autotest-deps-camera-hal3 ) ) tests_camera_V4L2? ( media-libs/libyuv dev-libs/re2 ) tests_xfsFilesystemTestSuite? ( app-benchmarks/xfstests ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
+DESCRIPTION=Autotest tests
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=arc-camera3 biod -chromeless_tests -chromeless_tty +crash_reporting cups dlc_test +encrypted_stateful +network_time +passive_metrics +profile vaapi +autotest x86? ( +tests_xfsFilesystemTestSuite +tests_hardware_UnsafeMemory ) amd64? ( +tests_xfsFilesystemTestSuite +tests_hardware_UnsafeMemory ) +tests_profiler_sync +tests_compilebench +tests_crashme +tests_dbench +tests_ddtest +tests_disktest +tests_fsx +tests_hackbench +tests_iperf +tests_bonnie +tests_iozone +tests_netpipe +tests_sleeptest +tests_kernel_sysrq_info +tests_unixbench +tests_autoupdate_Backoff +tests_autoupdate_BadMetadata +tests_autoupdate_CannedOmahaUpdate +tests_autoupdate_DisconnectReconnectNetwork dlc_test? ( +tests_autoupdate_InstallAndUpdateDLC ) +tests_autoupdate_PeriodicCheck +tests_autoupdate_UrlSwitch +tests_blktestsSuiteAll +tests_blktestsSuiteLoopOverBlk +tests_blktestsSuiteLoopOverFile +tests_blktestsSuiteRealBlk +tests_camera_V4L2 arc-camera3? ( +tests_camera_HAL3 +tests_camera_HAL3Perf ) +tests_dummy_Fail +tests_stub_Pass +tests_dummy_SynchronousOffload tests_example_UnitTest +tests_firmware_CbfsMcache +tests_firmware_LockedME +tests_firmware_CheckEOPState +tests_firmware_RomSize +tests_firmware_SetFWMP +tests_firmware_VbootCrypto +tests_flaky_test +tests_hardware_Badblocks +tests_hardware_DiskSize +tests_hardware_EC +tests_hardware_EepromWriteProtect +tests_hardware_GobiGPS +tests_hardware_GPIOSwitches +tests_hardware_GPS +tests_hardware_I2CProbe +tests_hardware_Interrupt +tests_hardware_Keyboard +tests_hardware_LightSensor +tests_hardware_MemoryLatency +tests_hardware_MemoryThroughput +tests_hardware_MemoryZRAMThroughput +tests_hardware_Memtester +tests_hardware_MultiReader +tests_hardware_ProbeComponents +tests_hardware_RamFio +tests_hardware_RealtekCardReader +tests_hardware_Resolution +tests_hardware_SAT +tests_hardware_Smartctl +tests_hardware_SsdDetection +tests_hardware_StorageFio +tests_hardware_StorageFioOther +tests_hardware_StorageTrim +tests_hardware_StorageWearoutDetect +tests_hardware_TouchScreenPowerCycles tests_hardware_TouchScreenPresent +tests_hardware_TrimIntegrity +tests_infra_FirmwareAutoupdate +tests_kernel_AsyncDriverProbe +tests_kernel_FirmwareRequest +tests_kernel_CrosECSysfsAccel +tests_kernel_Delay +tests_kernel_fs_Punybench +tests_kernel_Ktime +tests_kernel_Lmbench +tests_kernel_Memory_Ramoop +tests_kernel_SchedBandwith crash_reporting? ( +tests_logging_KernelCrash +tests_logging_UdevCrash +tests_logging_UserCrash ) +tests_network_EthCaps +tests_network_EthernetStressPlug +tests_network_Ipv6SimpleNegotiation +tests_network_NegotiatedLANSpeed +tests_platform_AccurateTime +tests_platform_AesThroughput !chromeless_tty? ( +tests_platform_BootPerf ) +tests_platform_CheckErrorsInLog +tests_platform_CleanShutdown +tests_platform_Crossystem +tests_platform_Crouton +tests_platform_DaemonsRespawn +tests_platform_DBusMachineIdRotation encrypted_stateful? ( +tests_platform_EncryptedStateful ) +tests_platform_ExternalUSBBootStress +tests_platform_ExternalUSBStress +tests_platform_FileNum +tests_platform_FileSize biod? ( +tests_platform_Fingerprint ) +tests_platform_Firewall +tests_platform_FullyChargedPowerStatus +tests_platform_HighResTimers +tests_platform_ImageLoader +tests_platform_ImageLoaderServer +tests_platform_KernelVersion +tests_platform_LibCBench +tests_platform_LogDupSuppression +tests_platform_LogNonKernelKmsg +tests_platform_MemCheck +tests_platform_MemoryMonitor chromeless_tty? ( +tests_platform_MetricsUploader ) +tests_platform_NetParms +tests_platform_OpenSSLActual profile? ( +tests_platform_Perf +tests_platform_Quipper ) cups? ( +tests_platform_PrinterPpds ) +tests_platform_Rootdev +tests_platform_SecureEraseFile !chromeless_tty? ( +tests_platform_SessionManagerStateKeyGeneration ) +tests_platform_TabletMode +tests_platform_TempFS network_time? ( +tests_platform_TLSDate +tests_platform_TLSDateActual ) +tests_platform_UdevVars +tests_suite_HWConfig +tests_suite_HWQual +tests_system_ColdBoot +tests_touch_HasInput +tests_touch_UpdateErrors +tests_touch_WakeupSource +tests_usbpd_DisplayPortSink +tests_vpd_ReadWrite cros-debug cros_host cros_workon_tree_0475e9e7135aba9599c8f4d666325771de5235be +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=>=chromeos-base/autotest-deps-0.0.3 !<=chromeos-base/autotest-factory-0.0.1-r4445 dev-python/numpy dev-python/pillow dev-python/pygobject dev-python/pytest dev-python/python-uinput media-sound/sox sys-apps/ethtool vaapi? ( x11-libs/libva ) virtual/autotest-tests tests_dbench? ( dev-libs/libaio ) tests_platform_MetricsUploader? ( >=chromeos-base/metrics-0.0.1-r3152 dev-python/protobuf-python ) tests_platform_SecureEraseFile? ( chromeos-base/secure-erase-file ) tests_hardware_MemoryLatency? ( app-benchmarks/lmbench ) tests_hardware_MemoryThroughput? ( app-benchmarks/lmbench ) tests_hardware_MemoryZRAMThroughput? ( app-benchmarks/microbenchmarks ) tests_kernel_Lmbench? ( app-benchmarks/lmbench ) arc-camera3? ( tests_camera_HAL3? ( chromeos-base/autotest-deps-camera-hal3 ) tests_camera_HAL3Perf? ( chromeos-base/autotest-deps-camera-hal3 ) ) tests_camera_V4L2? ( media-libs/libyuv dev-libs/re2 ) tests_xfsFilesystemTestSuite? ( app-benchmarks/xfstests ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=048c4baf493f57d1556894e49556c3b4
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-9999
index bfd33c3..145cca0 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-9999
@@ -1,13 +1,13 @@
 DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=>=chromeos-base/autotest-deps-0.0.3 !<=chromeos-base/autotest-factory-0.0.1-r4445 dev-python/numpy dev-python/pygobject dev-python/pytest dev-python/python-uinput media-sound/sox sys-apps/ethtool vaapi? ( x11-libs/libva ) virtual/autotest-tests tests_dbench? ( dev-libs/libaio ) tests_platform_MetricsUploader? ( >=chromeos-base/metrics-0.0.1-r3152 dev-python/protobuf-python ) tests_platform_SecureEraseFile? ( chromeos-base/secure-erase-file ) tests_hardware_MemoryLatency? ( app-benchmarks/lmbench ) tests_hardware_MemoryThroughput? ( app-benchmarks/lmbench ) tests_hardware_MemoryZRAMThroughput? ( app-benchmarks/microbenchmarks ) tests_kernel_Lmbench? ( app-benchmarks/lmbench ) arc-camera3? ( tests_camera_HAL3? ( chromeos-base/autotest-deps-camera-hal3 ) tests_camera_HAL3Perf? ( chromeos-base/autotest-deps-camera-hal3 ) ) tests_camera_V4L2? ( media-libs/libyuv dev-libs/re2 ) tests_xfsFilesystemTestSuite? ( app-benchmarks/xfstests ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
+DEPEND=>=chromeos-base/autotest-deps-0.0.3 !<=chromeos-base/autotest-factory-0.0.1-r4445 dev-python/numpy dev-python/pillow dev-python/pygobject dev-python/pytest dev-python/python-uinput media-sound/sox sys-apps/ethtool vaapi? ( x11-libs/libva ) virtual/autotest-tests tests_dbench? ( dev-libs/libaio ) tests_platform_MetricsUploader? ( >=chromeos-base/metrics-0.0.1-r3152 dev-python/protobuf-python ) tests_platform_SecureEraseFile? ( chromeos-base/secure-erase-file ) tests_hardware_MemoryLatency? ( app-benchmarks/lmbench ) tests_hardware_MemoryThroughput? ( app-benchmarks/lmbench ) tests_hardware_MemoryZRAMThroughput? ( app-benchmarks/microbenchmarks ) tests_kernel_Lmbench? ( app-benchmarks/lmbench ) arc-camera3? ( tests_camera_HAL3? ( chromeos-base/autotest-deps-camera-hal3 ) tests_camera_HAL3Perf? ( chromeos-base/autotest-deps-camera-hal3 ) ) tests_camera_V4L2? ( media-libs/libyuv dev-libs/re2 ) tests_xfsFilesystemTestSuite? ( app-benchmarks/xfstests ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
 DESCRIPTION=Autotest tests
 EAPI=5
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=arc-camera3 biod -chromeless_tests -chromeless_tty +crash_reporting cups dlc_test +encrypted_stateful +network_time +passive_metrics +profile vaapi +autotest x86? ( +tests_xfsFilesystemTestSuite +tests_hardware_UnsafeMemory ) amd64? ( +tests_xfsFilesystemTestSuite +tests_hardware_UnsafeMemory ) +tests_profiler_sync +tests_compilebench +tests_crashme +tests_dbench +tests_ddtest +tests_disktest +tests_fsx +tests_hackbench +tests_iperf +tests_bonnie +tests_iozone +tests_netpipe +tests_sleeptest +tests_kernel_sysrq_info +tests_unixbench +tests_autoupdate_Backoff +tests_autoupdate_BadMetadata +tests_autoupdate_CannedOmahaUpdate +tests_autoupdate_DisconnectReconnectNetwork dlc_test? ( +tests_autoupdate_InstallAndUpdateDLC ) +tests_autoupdate_PeriodicCheck +tests_autoupdate_UrlSwitch +tests_blktestsSuiteAll +tests_blktestsSuiteLoopOverBlk +tests_blktestsSuiteLoopOverFile +tests_blktestsSuiteRealBlk +tests_camera_V4L2 arc-camera3? ( +tests_camera_HAL3 +tests_camera_HAL3Perf ) +tests_dummy_Fail +tests_dummy_Pass +tests_dummy_SynchronousOffload tests_example_UnitTest +tests_firmware_CbfsMcache +tests_firmware_LockedME +tests_firmware_CheckEOPState +tests_firmware_RomSize +tests_firmware_SetFWMP +tests_firmware_VbootCrypto +tests_flaky_test +tests_hardware_Badblocks +tests_hardware_DiskSize +tests_hardware_EC +tests_hardware_EepromWriteProtect +tests_hardware_GobiGPS +tests_hardware_GPIOSwitches +tests_hardware_GPS +tests_hardware_I2CProbe +tests_hardware_Interrupt +tests_hardware_Keyboard +tests_hardware_LightSensor +tests_hardware_MemoryLatency +tests_hardware_MemoryThroughput +tests_hardware_MemoryZRAMThroughput +tests_hardware_Memtester +tests_hardware_MultiReader +tests_hardware_ProbeComponents +tests_hardware_RamFio +tests_hardware_RealtekCardReader +tests_hardware_Resolution +tests_hardware_SAT +tests_hardware_Smartctl +tests_hardware_SsdDetection +tests_hardware_StorageFio +tests_hardware_StorageFioOther +tests_hardware_StorageTrim +tests_hardware_StorageWearoutDetect +tests_hardware_TouchScreenPowerCycles tests_hardware_TouchScreenPresent +tests_hardware_TrimIntegrity +tests_infra_FirmwareAutoupdate +tests_kernel_AsyncDriverProbe +tests_kernel_FirmwareRequest +tests_kernel_CrosECSysfsAccel +tests_kernel_Delay +tests_kernel_fs_Punybench +tests_kernel_Ktime +tests_kernel_Lmbench +tests_kernel_Memory_Ramoop +tests_kernel_SchedBandwith crash_reporting? ( +tests_logging_CrashSender +tests_logging_KernelCrash +tests_logging_UdevCrash +tests_logging_UserCrash +tests_platform_AnomalyDetector ) +tests_network_EthCaps +tests_network_EthernetStressPlug +tests_network_Ipv6SimpleNegotiation +tests_network_NegotiatedLANSpeed +tests_platform_AccurateTime +tests_platform_AesThroughput !chromeless_tty? ( +tests_platform_BootPerf ) +tests_platform_CheckErrorsInLog +tests_platform_CleanShutdown +tests_platform_Crossystem +tests_platform_Crouton +tests_platform_DaemonsRespawn +tests_platform_DBusMachineIdRotation encrypted_stateful? ( +tests_platform_EncryptedStateful ) +tests_platform_ExternalUSBBootStress +tests_platform_ExternalUSBStress +tests_platform_FileNum +tests_platform_FileSize biod? ( +tests_platform_Fingerprint ) +tests_platform_Firewall +tests_platform_FullyChargedPowerStatus +tests_platform_HighResTimers +tests_platform_ImageLoader +tests_platform_ImageLoaderServer +tests_platform_KernelVersion +tests_platform_LibCBench +tests_platform_LogDupSuppression +tests_platform_LogNonKernelKmsg +tests_platform_MemCheck +tests_platform_MemoryMonitor chromeless_tty? ( +tests_platform_MetricsUploader ) +tests_platform_NetParms +tests_platform_OpenSSLActual profile? ( +tests_platform_Perf +tests_platform_Quipper ) cups? ( +tests_platform_PrinterPpds ) +tests_platform_Rootdev +tests_platform_SecureEraseFile !chromeless_tty? ( +tests_platform_SessionManagerStateKeyGeneration ) +tests_platform_TabletMode +tests_platform_TempFS network_time? ( +tests_platform_TLSDate +tests_platform_TLSDateActual ) +tests_platform_UdevVars +tests_suite_HWConfig +tests_suite_HWQual +tests_system_ColdBoot +tests_touch_HasInput +tests_touch_UpdateErrors +tests_touch_WakeupSource +tests_usbpd_DisplayPortSink +tests_vpd_ReadWrite cros-debug cros_host cros_workon_tree_ +buildcheck autotest opengles
+IUSE=arc-camera3 biod -chromeless_tests -chromeless_tty +crash_reporting cups dlc_test +encrypted_stateful +network_time +passive_metrics +profile vaapi +autotest x86? ( +tests_xfsFilesystemTestSuite +tests_hardware_UnsafeMemory ) amd64? ( +tests_xfsFilesystemTestSuite +tests_hardware_UnsafeMemory ) +tests_profiler_sync +tests_compilebench +tests_crashme +tests_dbench +tests_ddtest +tests_disktest +tests_fsx +tests_hackbench +tests_iperf +tests_bonnie +tests_iozone +tests_netpipe +tests_sleeptest +tests_kernel_sysrq_info +tests_unixbench +tests_autoupdate_Backoff +tests_autoupdate_BadMetadata +tests_autoupdate_CannedOmahaUpdate +tests_autoupdate_DisconnectReconnectNetwork dlc_test? ( +tests_autoupdate_InstallAndUpdateDLC ) +tests_autoupdate_PeriodicCheck +tests_autoupdate_UrlSwitch +tests_blktestsSuiteAll +tests_blktestsSuiteLoopOverBlk +tests_blktestsSuiteLoopOverFile +tests_blktestsSuiteRealBlk +tests_camera_V4L2 arc-camera3? ( +tests_camera_HAL3 +tests_camera_HAL3Perf ) +tests_dummy_Fail +tests_stub_Pass +tests_dummy_SynchronousOffload tests_example_UnitTest +tests_firmware_CbfsMcache +tests_firmware_LockedME +tests_firmware_CheckEOPState +tests_firmware_RomSize +tests_firmware_SetFWMP +tests_firmware_VbootCrypto +tests_flaky_test +tests_hardware_Badblocks +tests_hardware_DiskSize +tests_hardware_EC +tests_hardware_EepromWriteProtect +tests_hardware_GobiGPS +tests_hardware_GPIOSwitches +tests_hardware_GPS +tests_hardware_I2CProbe +tests_hardware_Interrupt +tests_hardware_Keyboard +tests_hardware_LightSensor +tests_hardware_MemoryLatency +tests_hardware_MemoryThroughput +tests_hardware_MemoryZRAMThroughput +tests_hardware_Memtester +tests_hardware_MultiReader +tests_hardware_ProbeComponents +tests_hardware_RamFio +tests_hardware_RealtekCardReader +tests_hardware_Resolution +tests_hardware_SAT +tests_hardware_Smartctl +tests_hardware_SsdDetection +tests_hardware_StorageFio +tests_hardware_StorageFioOther +tests_hardware_StorageTrim +tests_hardware_StorageWearoutDetect +tests_hardware_TouchScreenPowerCycles tests_hardware_TouchScreenPresent +tests_hardware_TrimIntegrity +tests_infra_FirmwareAutoupdate +tests_kernel_AsyncDriverProbe +tests_kernel_FirmwareRequest +tests_kernel_CrosECSysfsAccel +tests_kernel_Delay +tests_kernel_fs_Punybench +tests_kernel_Ktime +tests_kernel_Lmbench +tests_kernel_Memory_Ramoop +tests_kernel_SchedBandwith crash_reporting? ( +tests_logging_KernelCrash +tests_logging_UdevCrash +tests_logging_UserCrash ) +tests_network_EthCaps +tests_network_EthernetStressPlug +tests_network_Ipv6SimpleNegotiation +tests_network_NegotiatedLANSpeed +tests_platform_AccurateTime +tests_platform_AesThroughput !chromeless_tty? ( +tests_platform_BootPerf ) +tests_platform_CheckErrorsInLog +tests_platform_CleanShutdown +tests_platform_Crossystem +tests_platform_Crouton +tests_platform_DaemonsRespawn +tests_platform_DBusMachineIdRotation encrypted_stateful? ( +tests_platform_EncryptedStateful ) +tests_platform_ExternalUSBBootStress +tests_platform_ExternalUSBStress +tests_platform_FileNum +tests_platform_FileSize biod? ( +tests_platform_Fingerprint ) +tests_platform_Firewall +tests_platform_FullyChargedPowerStatus +tests_platform_HighResTimers +tests_platform_ImageLoader +tests_platform_ImageLoaderServer +tests_platform_KernelVersion +tests_platform_LibCBench +tests_platform_LogDupSuppression +tests_platform_LogNonKernelKmsg +tests_platform_MemCheck +tests_platform_MemoryMonitor chromeless_tty? ( +tests_platform_MetricsUploader ) +tests_platform_NetParms +tests_platform_OpenSSLActual profile? ( +tests_platform_Perf +tests_platform_Quipper ) cups? ( +tests_platform_PrinterPpds ) +tests_platform_Rootdev +tests_platform_SecureEraseFile !chromeless_tty? ( +tests_platform_SessionManagerStateKeyGeneration ) +tests_platform_TabletMode +tests_platform_TempFS network_time? ( +tests_platform_TLSDate +tests_platform_TLSDateActual ) +tests_platform_UdevVars +tests_suite_HWConfig +tests_suite_HWQual +tests_system_ColdBoot +tests_touch_HasInput +tests_touch_UpdateErrors +tests_touch_WakeupSource +tests_usbpd_DisplayPortSink +tests_vpd_ReadWrite cros-debug cros_host cros_workon_tree_ +buildcheck autotest opengles
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
-RDEPEND=>=chromeos-base/autotest-deps-0.0.3 !<=chromeos-base/autotest-factory-0.0.1-r4445 dev-python/numpy dev-python/pygobject dev-python/pytest dev-python/python-uinput media-sound/sox sys-apps/ethtool vaapi? ( x11-libs/libva ) virtual/autotest-tests tests_dbench? ( dev-libs/libaio ) tests_platform_MetricsUploader? ( >=chromeos-base/metrics-0.0.1-r3152 dev-python/protobuf-python ) tests_platform_SecureEraseFile? ( chromeos-base/secure-erase-file ) tests_hardware_MemoryLatency? ( app-benchmarks/lmbench ) tests_hardware_MemoryThroughput? ( app-benchmarks/lmbench ) tests_hardware_MemoryZRAMThroughput? ( app-benchmarks/microbenchmarks ) tests_kernel_Lmbench? ( app-benchmarks/lmbench ) arc-camera3? ( tests_camera_HAL3? ( chromeos-base/autotest-deps-camera-hal3 ) tests_camera_HAL3Perf? ( chromeos-base/autotest-deps-camera-hal3 ) ) tests_camera_V4L2? ( media-libs/libyuv dev-libs/re2 ) tests_xfsFilesystemTestSuite? ( app-benchmarks/xfstests ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] autotest? ( chromeos-base/autotest )
+RDEPEND=>=chromeos-base/autotest-deps-0.0.3 !<=chromeos-base/autotest-factory-0.0.1-r4445 dev-python/numpy dev-python/pillow dev-python/pygobject dev-python/pytest dev-python/python-uinput media-sound/sox sys-apps/ethtool vaapi? ( x11-libs/libva ) virtual/autotest-tests tests_dbench? ( dev-libs/libaio ) tests_platform_MetricsUploader? ( >=chromeos-base/metrics-0.0.1-r3152 dev-python/protobuf-python ) tests_platform_SecureEraseFile? ( chromeos-base/secure-erase-file ) tests_hardware_MemoryLatency? ( app-benchmarks/lmbench ) tests_hardware_MemoryThroughput? ( app-benchmarks/lmbench ) tests_hardware_MemoryZRAMThroughput? ( app-benchmarks/microbenchmarks ) tests_kernel_Lmbench? ( app-benchmarks/lmbench ) arc-camera3? ( tests_camera_HAL3? ( chromeos-base/autotest-deps-camera-hal3 ) tests_camera_HAL3Perf? ( chromeos-base/autotest-deps-camera-hal3 ) ) tests_camera_V4L2? ( media-libs/libyuv dev-libs/re2 ) tests_xfsFilesystemTestSuite? ( app-benchmarks/xfstests ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=05954964884befffcc67a382f30856cd
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=3c0517c030834b79d1e45d198eccc2a8
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-arc-public-0.0.1-r2008 b/metadata/md5-cache/chromeos-base/autotest-tests-arc-public-0.0.1-r2008
deleted file mode 100644
index 07b1d25..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-tests-arc-public-0.0.1-r2008
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=dev-python/pyxattr chromeos-base/chromeos-chrome chromeos-base/autotest-chrome chromeos-base/telemetry
-DESCRIPTION=Public ARC autotests
-EAPI=5
-IUSE=+autotest +buildcheck autotest opengles cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-python/pyxattr chromeos-base/chromeos-chrome chromeos-base/autotest-chrome chromeos-base/telemetry autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=d97415d26b6684af69b7c70780a7bf77
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-arc-public-0.0.1-r2459 b/metadata/md5-cache/chromeos-base/autotest-tests-arc-public-0.0.1-r2459
new file mode 100644
index 0000000..9ad9c7c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-arc-public-0.0.1-r2459
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=dev-python/pyxattr chromeos-base/chromeos-chrome chromeos-base/autotest-chrome chromeos-base/telemetry
+DESCRIPTION=Public ARC autotests
+EAPI=5
+IUSE=+autotest +buildcheck autotest opengles cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-python/pyxattr chromeos-base/chromeos-chrome chromeos-base/autotest-chrome chromeos-base/telemetry autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=2b7a81401ca8d2bc0f2aa073069b2a1a
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-arc-public-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-arc-public-9999
index 5f582a0..f14fbf0 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-arc-public-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-arc-public-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=dev-python/pyxattr chromeos-base/chromeos-chrome chromeos-base/autotest-chrome chromeos-base/telemetry autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a9d8ac170c97be1fc8124cafe565467e
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-audio-0.0.1-r3219 b/metadata/md5-cache/chromeos-base/autotest-tests-audio-0.0.1-r3219
deleted file mode 100644
index 633a078..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-tests-audio-0.0.1-r3219
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/audiotest !chromeless_tty? ( chromeos-base/telemetry )
-DESCRIPTION=Audio autotests
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest -chromeless_tty +tests_audio_Aconnect +tests_audio_Aplay !chromeless_tty? ( +tests_audio_AudioInputGain +tests_audio_CrasGetNodes ) +tests_audio_CRASFormatConversion +tests_audio_CrasDevSwitchStress +tests_audio_CrasPinnedStream +tests_audio_CrasStress cros_host cros_workon_tree_cb26b1124d2937d6e84fa895d1cdab8a4d3c5fd0 +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/audiotest !chromeless_tty? ( chromeos-base/telemetry ) autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ebe1384184a2cf748d3196e24b1dfab7
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-audio-0.0.1-r3223 b/metadata/md5-cache/chromeos-base/autotest-tests-audio-0.0.1-r3223
new file mode 100644
index 0000000..06f7caf
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-audio-0.0.1-r3223
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/audiotest !chromeless_tty? ( chromeos-base/telemetry )
+DESCRIPTION=Audio autotests
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest -chromeless_tty +tests_audio_Aconnect +tests_audio_Aplay !chromeless_tty? ( +tests_audio_AudioInputGain +tests_audio_CrasGetNodes ) +tests_audio_CRASFormatConversion +tests_audio_CrasDevSwitchStress +tests_audio_CrasPinnedStream +tests_audio_CrasStress cros_host cros_workon_tree_9c650cb5ccd492db4b3ca577d389ba67f31c3981 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/audiotest !chromeless_tty? ( chromeos-base/telemetry ) autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8023d6fc27452b494370b66f869680b8
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-audio-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-audio-9999
index 39905de..18906e7 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-audio-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-audio-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/audiotest !chromeless_tty? ( chromeos-base/telemetry ) autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=05874d4109d6dc81df032b30626081bf
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-cellular-0.0.1-r3257 b/metadata/md5-cache/chromeos-base/autotest-tests-cellular-0.0.1-r3257
deleted file mode 100644
index 7c461ca..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-tests-cellular-0.0.1-r3257
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=!<chromeos-base/autotest-tests-0.0.2 chromeos-base/autotest-deps-cellular chromeos-base/shill-test-scripts dev-python/pygobject dev-python/pyusb sys-apps/ethtool
-DESCRIPTION=Cellular autotests
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest +tests_cellular_ActivateLTE +tests_cellular_ConnectFailure +tests_cellular_DeferredRegistration +tests_cellular_DisableWhileConnecting +tests_cellular_DisconnectFailure +tests_cellular_HermesErrorScenarios +tests_cellular_HermesMM_InstallEnable +tests_cellular_Hermes_MultiProfile +tests_cellular_Hermes_Restart_SlotSwitch +tests_cellular_Hermes_SingleProfile +tests_cellular_Identifiers +tests_cellular_OutOfCreditsSubscriptionState +tests_cellular_SIMLocking +tests_cellular_SafetyDance +tests_cellular_ScanningProperty +tests_cellular_ServiceName +tests_cellular_Smoke +tests_cellular_StressEnable +tests_cellular_ValidateTestEnvironment +tests_cellular_MbimComplianceControlCommand +tests_cellular_MbimComplianceControlRequest +tests_cellular_MbimComplianceDataTransfer +tests_cellular_MbimComplianceDescriptor +tests_cellular_MbimComplianceError cros_host cros_workon_tree_a3840d3e11f296901738b7aa519b87390dae70e7 +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!<chromeos-base/autotest-tests-0.0.2 chromeos-base/autotest-deps-cellular chromeos-base/shill-test-scripts dev-python/pygobject dev-python/pyusb sys-apps/ethtool autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=940497685ba070fbcad56647008d708f
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-cellular-0.0.1-r3263 b/metadata/md5-cache/chromeos-base/autotest-tests-cellular-0.0.1-r3263
new file mode 100644
index 0000000..4b0c043
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-cellular-0.0.1-r3263
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=!<chromeos-base/autotest-tests-0.0.2 chromeos-base/autotest-deps-cellular chromeos-base/shill-test-scripts dev-python/pygobject dev-python/pyusb sys-apps/ethtool
+DESCRIPTION=Cellular autotests
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest +tests_cellular_ActivateLTE +tests_cellular_ConnectFailure +tests_cellular_DeferredRegistration +tests_cellular_DisableWhileConnecting +tests_cellular_DisconnectFailure +tests_cellular_HermesErrorScenarios +tests_cellular_HermesMM_InstallEnable +tests_cellular_Hermes_MultiProfile +tests_cellular_Hermes_Restart_SlotSwitch +tests_cellular_Hermes_SingleProfile +tests_cellular_Identifiers +tests_cellular_OutOfCreditsSubscriptionState +tests_cellular_SIMLocking +tests_cellular_SafetyDance +tests_cellular_ScanningProperty +tests_cellular_ServiceName +tests_cellular_Smoke +tests_cellular_StressEnable +tests_cellular_ValidateTestEnvironment +tests_cellular_MbimComplianceControlCommand +tests_cellular_MbimComplianceControlRequest +tests_cellular_MbimComplianceDataTransfer +tests_cellular_MbimComplianceDescriptor +tests_cellular_MbimComplianceError cros_host cros_workon_tree_7b710441cf7c35432389a56895d203a32362f7b4 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!<chromeos-base/autotest-tests-0.0.2 chromeos-base/autotest-deps-cellular chromeos-base/shill-test-scripts dev-python/pygobject dev-python/pyusb sys-apps/ethtool autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9f34fba633a956adbe2127b8d96aa281
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-cellular-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-cellular-9999
index a3b0a59..69d48d5 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-cellular-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-cellular-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-tests-0.0.2 chromeos-base/autotest-deps-cellular chromeos-base/shill-test-scripts dev-python/pygobject dev-python/pyusb sys-apps/ethtool autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=52546c13ab30163a6c848e72523413f2
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-cryptohome-0.0.1-r3187 b/metadata/md5-cache/chromeos-base/autotest-tests-cryptohome-0.0.1-r3187
deleted file mode 100644
index eb8ef46..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-tests-cryptohome-0.0.1-r3187
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=!<chromeos-base/autotest-tests-0.0.3
-DESCRIPTION=Cryptohome autotests
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest +tests_platform_CryptohomeFio +tests_platform_CryptohomeStress cros_host cros_workon_tree_9d4e01e2ade94f263bd118fa7c26d4a67d8810ed +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/cryptohome-dev-utils autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=2f2aaf8034acae313b21240a8567a874
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-cryptohome-0.0.1-r3188 b/metadata/md5-cache/chromeos-base/autotest-tests-cryptohome-0.0.1-r3188
new file mode 100644
index 0000000..8ed6085
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-cryptohome-0.0.1-r3188
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=!<chromeos-base/autotest-tests-0.0.3
+DESCRIPTION=Cryptohome autotests
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest +tests_platform_CryptohomeFio +tests_platform_CryptohomeStress cros_host cros_workon_tree_00f5fa22a82bd227716dc66ee7996ec65d6b19c6 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/cryptohome-dev-utils autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=60566fdcde78cdc64cd2641a7bfceb29
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-cryptohome-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-cryptohome-9999
index b722703..a3f83d7 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-cryptohome-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-cryptohome-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/cryptohome-dev-utils autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0248b8405351362d2be7ae3e8acfd940
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-debugd-0.0.1-r3178 b/metadata/md5-cache/chromeos-base/autotest-tests-debugd-0.0.1-r3178
index 27d9cd7..f6bb4a9 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-debugd-0.0.1-r3178
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-debugd-0.0.1-r3178
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-tests-0.0.3 autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8432fb7d5ce1f105e46ed69faa262051
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-debugd-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-debugd-9999
index e7305ba..41e1cec 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-debugd-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-debugd-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-tests-0.0.3 autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2ae8be6d5185e85d7aedd1af934f52eb
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-graphics-0.0.1-r3265 b/metadata/md5-cache/chromeos-base/autotest-tests-graphics-0.0.1-r3265
deleted file mode 100644
index 0176d8c..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-tests-graphics-0.0.1-r3265
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install postinst prepare setup unpack
-DEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/autotest-deps-graphics tests_graphics_Gbm? ( media-libs/minigbm ) tests_graphics_GLBench? ( chromeos-base/glbench ) tests_graphics_GLMark2? ( chromeos-base/autotest-deps-glmark2 ) tests_graphics_SanAngeles? ( media-libs/waffle )
-DESCRIPTION=Graphics autotests
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest +tests_graphics_dEQP +tests_graphics_Gbm +tests_graphics_GLAPICheck +tests_graphics_GLBench +tests_graphics_GLMark2 +tests_graphics_KernelConfig +tests_graphics_KernelMemory +tests_graphics_LibDRM +tests_graphics_PerfControl +tests_graphics_SanAngeles +tests_graphics_SyncControlTest +tests_graphics_parallel_dEQP +tests_graphics_Power asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_c0ffc312566b015e40f68885e0fc926bbce4d139 +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/autotest-deps-graphics tests_graphics_Gbm? ( media-libs/minigbm ) tests_graphics_GLBench? ( chromeos-base/glbench ) tests_graphics_GLMark2? ( chromeos-base/autotest-deps-glmark2 ) tests_graphics_SanAngeles? ( media-libs/waffle ) autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=908076fef40272e495a9fc9745aab979
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-graphics-0.0.1-r3272 b/metadata/md5-cache/chromeos-base/autotest-tests-graphics-0.0.1-r3272
new file mode 100644
index 0000000..45989ec
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-graphics-0.0.1-r3272
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install postinst prepare setup unpack
+DEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/autotest-deps-graphics tests_graphics_Gbm? ( media-libs/minigbm ) tests_graphics_GLBench? ( chromeos-base/glbench ) tests_graphics_GLMark2? ( chromeos-base/autotest-deps-glmark2 ) tests_graphics_SanAngeles? ( media-libs/waffle )
+DESCRIPTION=Graphics autotests
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest +tests_graphics_Gbm +tests_graphics_GLAPICheck +tests_graphics_GLBench +tests_graphics_GLMark2 +tests_graphics_KernelConfig +tests_graphics_KernelMemory +tests_graphics_LibDRM +tests_graphics_PerfControl +tests_graphics_SanAngeles +tests_graphics_SyncControlTest +tests_graphics_parallel_dEQP +tests_graphics_Power asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_c6e007efe060f12818eb7db793d447c63de6f954 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/autotest-deps-graphics tests_graphics_Gbm? ( media-libs/minigbm ) tests_graphics_GLBench? ( chromeos-base/glbench ) tests_graphics_GLMark2? ( chromeos-base/autotest-deps-glmark2 ) tests_graphics_SanAngeles? ( media-libs/waffle ) autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=482d9e2defbf8297f6f53e19f03e7406
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-graphics-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-graphics-9999
index d258c81..2e1abf7 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-graphics-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-graphics-9999
@@ -3,11 +3,11 @@
 DESCRIPTION=Graphics autotests
 EAPI=5
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest +tests_graphics_dEQP +tests_graphics_Gbm +tests_graphics_GLAPICheck +tests_graphics_GLBench +tests_graphics_GLMark2 +tests_graphics_KernelConfig +tests_graphics_KernelMemory +tests_graphics_LibDRM +tests_graphics_PerfControl +tests_graphics_SanAngeles +tests_graphics_SyncControlTest +tests_graphics_parallel_dEQP +tests_graphics_Power asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ +buildcheck autotest opengles
+IUSE=+autotest +tests_graphics_Gbm +tests_graphics_GLAPICheck +tests_graphics_GLBench +tests_graphics_GLMark2 +tests_graphics_KernelConfig +tests_graphics_KernelMemory +tests_graphics_LibDRM +tests_graphics_PerfControl +tests_graphics_SanAngeles +tests_graphics_SyncControlTest +tests_graphics_parallel_dEQP +tests_graphics_Power asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ +buildcheck autotest opengles
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/autotest-deps-graphics tests_graphics_Gbm? ( media-libs/minigbm ) tests_graphics_GLBench? ( chromeos-base/glbench ) tests_graphics_GLMark2? ( chromeos-base/autotest-deps-glmark2 ) tests_graphics_SanAngeles? ( media-libs/waffle ) autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=bd9b1a3e0390891a4a59d10fb5730823
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=f9b480ff02c333ffe2eea06b9da41707
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-ownershipapi-0.0.1-r7892 b/metadata/md5-cache/chromeos-base/autotest-tests-ownershipapi-0.0.1-r7892
deleted file mode 100644
index 48eb020..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-tests-ownershipapi-0.0.1-r7892
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=chromeos-base/autotest-deps-dbus chromeos-base/autotest-deps-policy chromeos-base/chromeos-chrome chromeos-base/telemetry dev-python/protobuf-python dev-python/pygobject
-DESCRIPTION=login_OwnershipApi autotest
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+xset +tpmtools +autotest +tests_login_CryptohomeOwnerQuery +tests_login_MultipleSessions cros_host cros_workon_tree_54ff09d88d01f0b74b519616c18d7e964daafc53 +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=chromeos-base/autotest-deps-dbus chromeos-base/autotest-deps-policy chromeos-base/chromeos-chrome chromeos-base/telemetry dev-python/protobuf-python dev-python/pygobject autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=b6d99f6a4b598e5170862420a74beb07
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-ownershipapi-0.0.1-r7896 b/metadata/md5-cache/chromeos-base/autotest-tests-ownershipapi-0.0.1-r7896
new file mode 100644
index 0000000..8740397
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-ownershipapi-0.0.1-r7896
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=chromeos-base/autotest-deps-dbus chromeos-base/autotest-deps-policy chromeos-base/chromeos-chrome chromeos-base/telemetry dev-python/protobuf-python dev-python/pygobject
+DESCRIPTION=login_OwnershipApi autotest
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+xset +tpmtools +autotest +tests_login_CryptohomeOwnerQuery +tests_login_MultipleSessions cros_host cros_workon_tree_7b710441cf7c35432389a56895d203a32362f7b4 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=chromeos-base/autotest-deps-dbus chromeos-base/autotest-deps-policy chromeos-base/chromeos-chrome chromeos-base/telemetry dev-python/protobuf-python dev-python/pygobject autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=9c89f8aa091616d8c21f1770663e375c
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-ownershipapi-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-ownershipapi-9999
index e7bf19b..1a2c6e4 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-ownershipapi-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-ownershipapi-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/autotest-deps-dbus chromeos-base/autotest-deps-policy chromeos-base/chromeos-chrome chromeos-base/telemetry dev-python/protobuf-python dev-python/pygobject autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d0e3f5ccc2a0eb23cdeda63e0535271e
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-p2p-0.0.1-r3163 b/metadata/md5-cache/chromeos-base/autotest-tests-p2p-0.0.1-r3163
index 4cd65a8..f239ddc 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-p2p-0.0.1-r3163
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-p2p-0.0.1-r3163
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/autotest-deps-p2p autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f41edd02427a192aef1c7365da436e2d
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-p2p-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-p2p-9999
index f3d731a..15e4ecb 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-p2p-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-p2p-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/autotest-deps-p2p autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=31fa0b52716282fb32256a3f4d37122e
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-power-0.0.1-r3240 b/metadata/md5-cache/chromeos-base/autotest-tests-power-0.0.1-r3240
deleted file mode 100644
index 5803007..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-tests-power-0.0.1-r3240
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=shill? ( chromeos-base/shill-test-scripts ) !<chromeos-base/autotest-tests-0.0.3
-DESCRIPTION=power autotests
-EAPI=4
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest +shill +tests_hardware_Backlight +tests_power_ARMSettings +tests_power_Backlight +tests_power_BacklightControl +tests_power_BacklightSuspend +tests_power_BatteryCharge +tests_power_BatteryDesignCapacity +tests_power_CheckAC +tests_power_CheckAfterSuspend +tests_power_CPUFreq +tests_power_CPUIdle +tests_power_Draw +tests_power_Dummy +tests_power_HotCPUSuspend +tests_power_KernelSuspend +tests_power_MemorySuspend +tests_power_NoConsoleSuspend +tests_power_ProbeDriver shill? ( +tests_power_Resume ) +tests_power_Standby +tests_power_StatsCPUFreq +tests_power_StatsCPUIdle +tests_power_StatsUSB +tests_power_Status shill? ( +tests_power_SuspendStress +tests_power_SuspendToIdle ) +tests_power_WaitForCoolDown +tests_power_WakeupRTC cros_host cros_workon_tree_fafed70d3d1eef417289a57d9ace6237a0f33399 +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=shill? ( chromeos-base/shill-test-scripts ) !<chromeos-base/autotest-tests-0.0.3 autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=40e14ca900868f3670b8a53fe713cf77
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-power-0.0.1-r3247 b/metadata/md5-cache/chromeos-base/autotest-tests-power-0.0.1-r3247
new file mode 100644
index 0000000..39d6b5d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-power-0.0.1-r3247
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=shill? ( chromeos-base/shill-test-scripts ) !<chromeos-base/autotest-tests-0.0.3
+DESCRIPTION=power autotests
+EAPI=4
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest +shill +tests_hardware_Backlight +tests_power_ARMSettings +tests_power_Backlight +tests_power_BacklightControl +tests_power_BacklightSuspend +tests_power_BatteryCharge +tests_power_BatteryDesignCapacity +tests_power_CheckAC +tests_power_CheckAfterSuspend +tests_power_CPUFreq +tests_power_CPUIdle +tests_power_Draw +tests_power_Dummy +tests_power_HotCPUSuspend +tests_power_KernelSuspend +tests_power_MemorySuspend +tests_power_NoConsoleSuspend +tests_power_ProbeDriver shill? ( +tests_power_Resume ) +tests_power_Standby +tests_power_StatsCPUFreq +tests_power_StatsCPUIdle +tests_power_StatsUSB +tests_power_Status shill? ( +tests_power_SuspendStress +tests_power_SuspendToIdle ) +tests_power_WaitForCoolDown +tests_power_WakeupRTC cros_host cros_workon_tree_9c650cb5ccd492db4b3ca577d389ba67f31c3981 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=shill? ( chromeos-base/shill-test-scripts ) !<chromeos-base/autotest-tests-0.0.3 autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=0a74df4b83bf8a345e46ae79c74bb160
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-power-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-power-9999
index 4b7fd64..0c26096 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-power-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-power-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=shill? ( chromeos-base/shill-test-scripts ) !<chromeos-base/autotest-tests-0.0.3 autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7db4e243c248677f4e035aa5c7c4f199
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-security-0.0.1-r3305 b/metadata/md5-cache/chromeos-base/autotest-tests-security-0.0.1-r3305
deleted file mode 100644
index 5df4335..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-tests-security-0.0.1-r3305
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=!<chromeos-base/autotest-tests-0.0.3 containers? ( tests_security_Libcontainer? ( chromeos-base/minijail chromeos-base/libcontainer ) ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
-DESCRIPTION=Security autotests
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest -chromeless_tests -chromeless_tty containers +seccomp selinux !chromeless_tty? ( !chromeless_tests? ( +tests_security_RendererSandbox +tests_security_SessionManagerDbusEndpoints ) ) seccomp? ( +tests_security_SeccompSyscallFilters ) containers? ( +tests_security_Libcontainer ) +tests_security_NosymfollowMountOption +tests_security_ProcessManagementPolicy +tests_security_RootfsOwners +tests_security_SysVIPC x86? ( +tests_security_x86Registers ) amd64? ( +tests_security_x86Registers ) cros_host cros_workon_tree_54ff09d88d01f0b74b519616c18d7e964daafc53 +buildcheck autotest opengles cros-debug
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!<chromeos-base/autotest-tests-0.0.3 containers? ( tests_security_Libcontainer? ( chromeos-base/minijail chromeos-base/libcontainer ) ) autotest? ( chromeos-base/autotest ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=06780260f9623ef590181d1e66b011ed
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-security-0.0.1-r3308 b/metadata/md5-cache/chromeos-base/autotest-tests-security-0.0.1-r3308
new file mode 100644
index 0000000..ee3a10b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-security-0.0.1-r3308
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=!<chromeos-base/autotest-tests-0.0.3 containers? ( tests_security_Libcontainer? ( chromeos-base/minijail:= chromeos-base/libcontainer:= ) ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
+DESCRIPTION=Security autotests
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest -chromeless_tests -chromeless_tty containers +seccomp selinux !chromeless_tty? ( !chromeless_tests? ( +tests_security_RendererSandbox +tests_security_SessionManagerDbusEndpoints ) ) seccomp? ( +tests_security_SeccompSyscallFilters ) containers? ( +tests_security_Libcontainer ) +tests_security_NosymfollowMountOption +tests_security_ProcessManagementPolicy +tests_security_RootfsOwners +tests_security_SysVIPC x86? ( +tests_security_x86Registers ) amd64? ( +tests_security_x86Registers ) cros_host cros_workon_tree_26e63d8fba49946ec073f814aadb6fa05efe4b9b +buildcheck autotest opengles cros-debug asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!<chromeos-base/autotest-tests-0.0.3 containers? ( tests_security_Libcontainer? ( chromeos-base/minijail:= chromeos-base/libcontainer:= ) ) autotest? ( chromeos-base/autotest ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=5c654d4900f2d691269da757b09db31c
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-security-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-security-9999
index 904004f..49605eb 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-security-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-security-9999
@@ -1,13 +1,13 @@
 DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=!<chromeos-base/autotest-tests-0.0.3 containers? ( tests_security_Libcontainer? ( chromeos-base/minijail chromeos-base/libcontainer ) ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
+DEPEND=!<chromeos-base/autotest-tests-0.0.3 containers? ( tests_security_Libcontainer? ( chromeos-base/minijail:= chromeos-base/libcontainer:= ) ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
 DESCRIPTION=Security autotests
 EAPI=5
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest -chromeless_tests -chromeless_tty containers +seccomp selinux !chromeless_tty? ( !chromeless_tests? ( +tests_security_RendererSandbox +tests_security_SessionManagerDbusEndpoints ) ) seccomp? ( +tests_security_SeccompSyscallFilters ) containers? ( +tests_security_Libcontainer ) +tests_security_NosymfollowMountOption +tests_security_ProcessManagementPolicy +tests_security_RootfsOwners +tests_security_SysVIPC x86? ( +tests_security_x86Registers ) amd64? ( +tests_security_x86Registers ) cros_host cros_workon_tree_ +buildcheck autotest opengles cros-debug
+IUSE=+autotest -chromeless_tests -chromeless_tty containers +seccomp selinux !chromeless_tty? ( !chromeless_tests? ( +tests_security_RendererSandbox +tests_security_SessionManagerDbusEndpoints ) ) seccomp? ( +tests_security_SeccompSyscallFilters ) containers? ( +tests_security_Libcontainer ) +tests_security_NosymfollowMountOption +tests_security_ProcessManagementPolicy +tests_security_RootfsOwners +tests_security_SysVIPC x86? ( +tests_security_x86Registers ) amd64? ( +tests_security_x86Registers ) cros_host cros_workon_tree_ +buildcheck autotest opengles cros-debug asan coverage fuzzer msan tsan ubsan
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
-RDEPEND=!<chromeos-base/autotest-tests-0.0.3 containers? ( tests_security_Libcontainer? ( chromeos-base/minijail chromeos-base/libcontainer ) ) autotest? ( chromeos-base/autotest ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
+RDEPEND=!<chromeos-base/autotest-tests-0.0.3 containers? ( tests_security_Libcontainer? ( chromeos-base/minijail:= chromeos-base/libcontainer:= ) ) autotest? ( chromeos-base/autotest ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=a9ec7441af874a191bf07e377f922585
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=77ed51c374fbb8b66cb15484963dc5b6
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-shill-0.0.1-r3233 b/metadata/md5-cache/chromeos-base/autotest-tests-shill-0.0.1-r3233
deleted file mode 100644
index 9b4202b..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-tests-shill-0.0.1-r3233
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/shill-test-scripts
-DESCRIPTION=shill autotests
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest +tpm tpm2 +tests_network_DhcpClasslessStaticRoute +tests_network_DhcpFailureWithStaticIP +tests_network_DhcpNak +tests_network_DhcpNegotiationSuccess +tests_network_DhcpNegotiationTimeout +tests_network_DhcpNonAsciiParameter +tests_network_DhcpRenew +tests_network_DhcpRenewWithOptionSubset +tests_network_DhcpRequestHostName +tests_network_DhcpStaticIP +tests_network_DhcpVendorEncapsulatedOptions +tests_network_DhcpWpadNegotiation +tests_network_WiFiInvalidParameters +tests_network_WiFiResume +tests_network_WlanPresent +tests_network_WlanRegulatory +tests_network_WlanHasIP tpm? ( +tests_network_VPNConnect ) tpm2? ( +tests_network_VPNConnect ) cros_host cros_workon_tree_8b8c2ee1306693fc53479eeeb8eab79cd41ba97e +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/shill-test-scripts autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=1189375fa4b6033cf496812eb5e4d83f
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-shill-0.0.1-r3239 b/metadata/md5-cache/chromeos-base/autotest-tests-shill-0.0.1-r3239
new file mode 100644
index 0000000..de05f24
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-shill-0.0.1-r3239
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/shill-test-scripts
+DESCRIPTION=shill autotests
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest +tpm tpm2 +tests_network_DhcpClasslessStaticRoute +tests_network_DhcpFailureWithStaticIP +tests_network_DhcpNak +tests_network_DhcpNegotiationSuccess +tests_network_DhcpNegotiationTimeout +tests_network_DhcpNonAsciiParameter +tests_network_DhcpRenew +tests_network_DhcpRenewWithOptionSubset +tests_network_DhcpRequestHostName +tests_network_DhcpStaticIP +tests_network_DhcpVendorEncapsulatedOptions +tests_network_DhcpWpadNegotiation +tests_network_WiFiInvalidParameters +tests_network_WiFiResume +tests_network_WlanPresent +tests_network_WlanHasIP cros_host cros_workon_tree_25851c4b412d2d8a3523c29b693fb4b314a3af49 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/shill-test-scripts autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=e17c1fe13cdca4ac844fcfe38737674b
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-shill-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-shill-9999
index e434961..a8ac5af 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-shill-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-shill-9999
@@ -3,11 +3,11 @@
 DESCRIPTION=shill autotests
 EAPI=5
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest +tpm tpm2 +tests_network_DhcpClasslessStaticRoute +tests_network_DhcpFailureWithStaticIP +tests_network_DhcpNak +tests_network_DhcpNegotiationSuccess +tests_network_DhcpNegotiationTimeout +tests_network_DhcpNonAsciiParameter +tests_network_DhcpRenew +tests_network_DhcpRenewWithOptionSubset +tests_network_DhcpRequestHostName +tests_network_DhcpStaticIP +tests_network_DhcpVendorEncapsulatedOptions +tests_network_DhcpWpadNegotiation +tests_network_WiFiInvalidParameters +tests_network_WiFiResume +tests_network_WlanPresent +tests_network_WlanRegulatory +tests_network_WlanHasIP tpm? ( +tests_network_VPNConnect ) tpm2? ( +tests_network_VPNConnect ) cros_host cros_workon_tree_ +buildcheck autotest opengles
+IUSE=+autotest +tpm tpm2 +tests_network_DhcpClasslessStaticRoute +tests_network_DhcpFailureWithStaticIP +tests_network_DhcpNak +tests_network_DhcpNegotiationSuccess +tests_network_DhcpNegotiationTimeout +tests_network_DhcpNonAsciiParameter +tests_network_DhcpRenew +tests_network_DhcpRenewWithOptionSubset +tests_network_DhcpRequestHostName +tests_network_DhcpStaticIP +tests_network_DhcpVendorEncapsulatedOptions +tests_network_DhcpWpadNegotiation +tests_network_WiFiInvalidParameters +tests_network_WiFiResume +tests_network_WlanPresent +tests_network_WlanHasIP cros_host cros_workon_tree_ +buildcheck autotest opengles
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/shill-test-scripts autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=3919778a6a9a4a04f45fc657e5c0102c
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=43e7080c80500803f7ea0da2e415774c
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-smbprovider-0.0.1-r9 b/metadata/md5-cache/chromeos-base/autotest-tests-smbprovider-0.0.1-r9
index 36fb03d..4c21ed7 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-smbprovider-0.0.1-r9
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-smbprovider-0.0.1-r9
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/chromeos-chrome chromeos-base/autotest-chrome autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=1cd2a575c9ef5d3350eb806e01658d0a
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-smbprovider-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-smbprovider-9999
index d7e0713..bd85df3 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-smbprovider-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-smbprovider-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/chromeos-chrome chromeos-base/autotest-chrome autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0a46a6f0ed87aa540c0d3aa933100622
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-toolchain-0.0.1-r12 b/metadata/md5-cache/chromeos-base/autotest-tests-toolchain-0.0.1-r12
index d265e11..8d8e738 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-toolchain-0.0.1-r12
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-toolchain-0.0.1-r12
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/toolchain-tests autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=13eb7bd9f283566a50eb753f32a76de9
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-toolchain-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-toolchain-9999
index 0fd98a1..e8840d09 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-toolchain-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-toolchain-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-tests-0.0.3 chromeos-base/toolchain-tests autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=efb1f6664bea2d10b7b5c2122370d8bb
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-touchpad-0.0.1-r4171 b/metadata/md5-cache/chromeos-base/autotest-tests-touchpad-0.0.1-r4171
deleted file mode 100644
index fcaa7a4..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-tests-touchpad-0.0.1-r4171
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=chromeos-base/autotest-deps-touchpad
-DESCRIPTION=touchpad autotest
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest +tests_platform_GesturesRegressionTest cros_host cros_workon_tree_d670df4c98d81daa26bbd8a79b5d3de47091ad21 +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=chromeos-base/autotest-deps-touchpad autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7eba7f22db65cebaf2779fcbc71001b9
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-touchpad-0.0.1-r4172 b/metadata/md5-cache/chromeos-base/autotest-tests-touchpad-0.0.1-r4172
new file mode 100644
index 0000000..b48b723
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-touchpad-0.0.1-r4172
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=chromeos-base/autotest-deps-touchpad
+DESCRIPTION=touchpad autotest
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest +tests_platform_GesturesRegressionTest cros_host cros_workon_tree_5390e927aad95de5ba709499fac4a4b691888613 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=chromeos-base/autotest-deps-touchpad autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a789c4e4e14d0fd4b734123702197649
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-touchpad-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-touchpad-9999
index 52554f9..52d4ee5 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-touchpad-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-touchpad-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/autotest-deps-touchpad autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f38e34bccfeb2ff163756031b1ebb98c
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-tpm-0.0.1-r3189 b/metadata/md5-cache/chromeos-base/autotest-tests-tpm-0.0.1-r3189
deleted file mode 100644
index 6d56e8e..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-tests-tpm-0.0.1-r3189
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=!<chromeos-base/autotest-tests-0.0.3 tpm2? ( chromeos-base/g2f_tools )
-DESCRIPTION=Autotests involving the tpm
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest tpm2 +tests_firmware_Cr50VirtualNVRam +tests_firmware_Cr50VirtualNVRamServer +tests_firmware_Cr50U2fPowerwash +tests_hardware_TPMCheck +tests_kernel_TPMStress +tests_platform_Pkcs11InitUnderErrors +tests_platform_Pkcs11ChangeAuthData +tests_platform_Pkcs11Events +tests_platform_Pkcs11LoadPerf +tests_platform_TPMEvict cros_host cros_workon_tree_d5fca090b73d08131aee571109b77a337c42fd39 +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!<chromeos-base/autotest-tests-0.0.3 tpm2? ( chromeos-base/g2f_tools ) autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=fcc0188dccbbd2db748406e052fdf156
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-tpm-0.0.1-r3193 b/metadata/md5-cache/chromeos-base/autotest-tests-tpm-0.0.1-r3193
new file mode 100644
index 0000000..928e295
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-tpm-0.0.1-r3193
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=!<chromeos-base/autotest-tests-0.0.3 tpm2? ( chromeos-base/g2f_tools )
+DESCRIPTION=Autotests involving the tpm
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest tpm2 +tests_firmware_Cr50VirtualNVRam +tests_firmware_Cr50VirtualNVRamServer +tests_firmware_Cr50U2fPowerwash +tests_hardware_TPMCheck +tests_kernel_TPMStress +tests_platform_Pkcs11InitUnderErrors +tests_platform_Pkcs11ChangeAuthData +tests_platform_Pkcs11Events +tests_platform_Pkcs11LoadPerf +tests_platform_TPMEvict cros_host cros_workon_tree_5390e927aad95de5ba709499fac4a4b691888613 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!<chromeos-base/autotest-tests-0.0.3 tpm2? ( chromeos-base/g2f_tools ) autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=7b015c0b4841b186e6b67c642b43e643
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-tpm-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-tpm-9999
index 0708310..6f6ff6d 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-tpm-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-tpm-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/autotest-tests-0.0.3 tpm2? ( chromeos-base/g2f_tools ) autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c29804d9583787c9a453a2994d292312
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-vm-host-0.0.1-r2646 b/metadata/md5-cache/chromeos-base/autotest-tests-vm-host-0.0.1-r2646
deleted file mode 100644
index 7c6d599..0000000
--- a/metadata/md5-cache/chromeos-base/autotest-tests-vm-host-0.0.1-r2646
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DESCRIPTION=kvm host autotests
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=+autotest +tests_vm_CrosVmStart cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=autotest? ( chromeos-base/autotest )
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=3f08c1603f8c5215bc6de3c359aea57f
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-vm-host-0.0.1-r3097 b/metadata/md5-cache/chromeos-base/autotest-tests-vm-host-0.0.1-r3097
new file mode 100644
index 0000000..8f53ca1
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-vm-host-0.0.1-r3097
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DESCRIPTION=kvm host autotests
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=+autotest +tests_vm_CrosVmStart cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=autotest? ( chromeos-base/autotest )
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=e6970083b804765848731dd0f8b2ccdc
diff --git a/metadata/md5-cache/chromeos-base/autotest-tests-vm-host-9999 b/metadata/md5-cache/chromeos-base/autotest-tests-vm-host-9999
index d0c756c..d67b0f0 100644
--- a/metadata/md5-cache/chromeos-base/autotest-tests-vm-host-9999
+++ b/metadata/md5-cache/chromeos-base/autotest-tests-vm-host-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=autotest? ( chromeos-base/autotest )
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e7265fb27c3e103602cd72bdfe5ac772
diff --git a/metadata/md5-cache/chromeos-base/avtest_label_detect-0.0.1-r3070 b/metadata/md5-cache/chromeos-base/avtest_label_detect-0.0.1-r3070
deleted file mode 100644
index 5ba7477..0000000
--- a/metadata/md5-cache/chromeos-base/avtest_label_detect-0.0.1-r3070
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=vaapi? ( x11-libs/libva )
-DESCRIPTION=Autotest label detector for audio/video/camera
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/avtest_label_detect
-IUSE=-asan v4l2_codec vaapi asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_396263bc402f0a6170b30ba28fb6694fd2c0ad06_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=vaapi? ( x11-libs/libva )
-SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=acd79cd728cd4d45473bb21a24148386
diff --git a/metadata/md5-cache/chromeos-base/avtest_label_detect-0.0.1-r3096 b/metadata/md5-cache/chromeos-base/avtest_label_detect-0.0.1-r3096
new file mode 100644
index 0000000..1db5a0f
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/avtest_label_detect-0.0.1-r3096
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=vaapi? ( x11-libs/libva )
+DESCRIPTION=Autotest label detector for audio/video/camera
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/avtest_label_detect
+IUSE=-asan v4l2_codec vaapi asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_58bcd7637179c74f9fe9d2ba6602d425c5ba584a_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=vaapi? ( x11-libs/libva )
+SLOT=0
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=1efadbc7d58caad2f9ddfa570b148834
diff --git a/metadata/md5-cache/chromeos-base/avtest_label_detect-9999 b/metadata/md5-cache/chromeos-base/avtest_label_detect-9999
index 9ba7c39..3b3714f 100644
--- a/metadata/md5-cache/chromeos-base/avtest_label_detect-9999
+++ b/metadata/md5-cache/chromeos-base/avtest_label_detect-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=vaapi? ( x11-libs/libva )
 SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=17551db4d9d7ba2a09d09b923b8785e5
diff --git a/metadata/md5-cache/chromeos-base/biod-0.0.1-r2064 b/metadata/md5-cache/chromeos-base/biod-0.0.1-r2064
deleted file mode 100644
index c38831d..0000000
--- a/metadata/md5-cache/chromeos-base/biod-0.0.1-r2064
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/libec:= >=chromeos-base/metrics-0.0.1-r3152:= sys-apps/flashmap:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/biod_proxy:= chromeos-base/chromeos-ec-headers:= chromeos-base/power_manager-client:= chromeos-base/system_api:=[fuzzer?] dev-libs/openssl:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Biometrics Daemon for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/README.md
-IUSE=fp_on_power_button fpmcu_firmware_bloonchipper fpmcu_firmware_dartmonkey fpmcu_firmware_nami fpmcu_firmware_nocturne fuzzer generated_cros_config unibuild fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_b1f4ad4ab3cbb07f7d6d2756b7c06a950376ea88_aa0612733aca2d5ffa65470f07408228b473ebdb_667180eb5db7eb65a292552b106b32aa5881c9eb_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_b1f4ad4ab3cbb07f7d6d2756b7c06a950376ea88_aa0612733aca2d5ffa65470f07408228b473ebdb_667180eb5db7eb65a292552b106b32aa5881c9eb_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/libec:= >=chromeos-base/metrics-0.0.1-r3152:= sys-apps/flashmap:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/biod_proxy:= sys-apps/flashrom virtual/chromeos-firmware-fpmcu fpmcu_firmware_bloonchipper? ( sys-firmware/chromeos-fpmcu-release-bloonchipper ) fpmcu_firmware_dartmonkey? ( sys-firmware/chromeos-fpmcu-release-dartmonkey ) fpmcu_firmware_nami? ( sys-firmware/chromeos-fpmcu-release-nami ) fpmcu_firmware_nocturne? ( sys-firmware/chromeos-fpmcu-release-nocturne ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r2064
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=bcd9e42d91b5e3176b55c64e05373d76
diff --git a/metadata/md5-cache/chromeos-base/biod-0.0.1-r2150 b/metadata/md5-cache/chromeos-base/biod-0.0.1-r2150
new file mode 100644
index 0000000..9771b51
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/biod-0.0.1-r2150
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/libec:= >=chromeos-base/metrics-0.0.1-r3152:= sys-apps/flashmap:= chromeos-base/biod_proxy:= chromeos-base/chromeos-ec-headers:= chromeos-base/power_manager-client:= chromeos-base/system_api:=[fuzzer?] dev-libs/openssl:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Biometrics Daemon for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/README.md
+IUSE=factory_branch fp_on_power_button fpmcu_firmware_bloonchipper fpmcu_firmware_dartmonkey fpmcu_firmware_nami fpmcu_firmware_nocturne fuzzer fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_f109c58de01a51af0998c1f59270c5788c2b061d_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_ad1fd2e4d4c9cb42d85d97fe12f958890ad6ab14_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_f109c58de01a51af0998c1f59270c5788c2b061d_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_ad1fd2e4d4c9cb42d85d97fe12f958890ad6ab14_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/libec:= >=chromeos-base/metrics-0.0.1-r3152:= sys-apps/flashmap:= chromeos-base/biod_proxy:= sys-apps/flashrom !factory_branch? ( virtual/chromeos-firmware-fpmcu ) !factory_branch? ( fpmcu_firmware_bloonchipper? ( sys-firmware/chromeos-fpmcu-release-bloonchipper ) fpmcu_firmware_dartmonkey? ( sys-firmware/chromeos-fpmcu-release-dartmonkey ) fpmcu_firmware_nami? ( sys-firmware/chromeos-fpmcu-release-nami ) fpmcu_firmware_nocturne? ( sys-firmware/chromeos-fpmcu-release-nocturne ) ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r2150
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=9af9a71539fc0c10bedbf7cd394b1204
diff --git a/metadata/md5-cache/chromeos-base/biod-9999 b/metadata/md5-cache/chromeos-base/biod-9999
index d47fce1..471abca 100644
--- a/metadata/md5-cache/chromeos-base/biod-9999
+++ b/metadata/md5-cache/chromeos-base/biod-9999
@@ -1,14 +1,14 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/libec:= >=chromeos-base/metrics-0.0.1-r3152:= sys-apps/flashmap:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/biod_proxy:= chromeos-base/chromeos-ec-headers:= chromeos-base/power_manager-client:= chromeos-base/system_api:=[fuzzer?] dev-libs/openssl:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/libec:= >=chromeos-base/metrics-0.0.1-r3152:= sys-apps/flashmap:= chromeos-base/biod_proxy:= chromeos-base/chromeos-ec-headers:= chromeos-base/power_manager-client:= chromeos-base/system_api:=[fuzzer?] dev-libs/openssl:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Biometrics Daemon for Chromium OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/README.md
-IUSE=fp_on_power_button fpmcu_firmware_bloonchipper fpmcu_firmware_dartmonkey fpmcu_firmware_nami fpmcu_firmware_nocturne fuzzer generated_cros_config unibuild fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=factory_branch fp_on_power_button fpmcu_firmware_bloonchipper fpmcu_firmware_dartmonkey fpmcu_firmware_nami fpmcu_firmware_nocturne fuzzer fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/libec:= >=chromeos-base/metrics-0.0.1-r3152:= sys-apps/flashmap:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/biod_proxy:= sys-apps/flashrom virtual/chromeos-firmware-fpmcu fpmcu_firmware_bloonchipper? ( sys-firmware/chromeos-fpmcu-release-bloonchipper ) fpmcu_firmware_dartmonkey? ( sys-firmware/chromeos-fpmcu-release-dartmonkey ) fpmcu_firmware_nami? ( sys-firmware/chromeos-fpmcu-release-nami ) fpmcu_firmware_nocturne? ( sys-firmware/chromeos-fpmcu-release-nocturne ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/libec:= >=chromeos-base/metrics-0.0.1-r3152:= sys-apps/flashmap:= chromeos-base/biod_proxy:= sys-apps/flashrom !factory_branch? ( virtual/chromeos-firmware-fpmcu ) !factory_branch? ( fpmcu_firmware_bloonchipper? ( sys-firmware/chromeos-fpmcu-release-bloonchipper ) fpmcu_firmware_dartmonkey? ( sys-firmware/chromeos-fpmcu-release-dartmonkey ) fpmcu_firmware_nami? ( sys-firmware/chromeos-fpmcu-release-nami ) fpmcu_firmware_nocturne? ( sys-firmware/chromeos-fpmcu-release-nocturne ) ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=5a620de0c0558598fa83c269372108bc
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=09809bc4a8459563f23764e984f93137
diff --git a/metadata/md5-cache/chromeos-base/biod_proxy-0.0.1-r189 b/metadata/md5-cache/chromeos-base/biod_proxy-0.0.1-r189
deleted file mode 100644
index b614254..0000000
--- a/metadata/md5-cache/chromeos-base/biod_proxy-0.0.1-r189
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libbrillo:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=DBus Proxy Library for Biometrics Daemon for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/README.md
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_b1f4ad4ab3cbb07f7d6d2756b7c06a950376ea88_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_b1f4ad4ab3cbb07f7d6d2756b7c06a950376ea88_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r189
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=142338e320f98bcbede975fe29d379ae
diff --git a/metadata/md5-cache/chromeos-base/biod_proxy-0.0.1-r237 b/metadata/md5-cache/chromeos-base/biod_proxy-0.0.1-r237
new file mode 100644
index 0000000..345bdec
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/biod_proxy-0.0.1-r237
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libbrillo:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=DBus Proxy Library for Biometrics Daemon for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/README.md
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_f109c58de01a51af0998c1f59270c5788c2b061d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_f109c58de01a51af0998c1f59270c5788c2b061d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r237
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=22f39e9cb220fbad1d6b1386352d2efd
diff --git a/metadata/md5-cache/chromeos-base/biod_proxy-9999 b/metadata/md5-cache/chromeos-base/biod_proxy-9999
index b3b46fb..2fb61bb 100644
--- a/metadata/md5-cache/chromeos-base/biod_proxy-9999
+++ b/metadata/md5-cache/chromeos-base/biod_proxy-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d9321d4ca71097984bd7b3db12bdc712
diff --git a/metadata/md5-cache/chromeos-base/bootid-logger-0.0.1-r102 b/metadata/md5-cache/chromeos-base/bootid-logger-0.0.1-r102
new file mode 100644
index 0000000..f9882b5
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/bootid-logger-0.0.1-r102
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/croslog-0.0.1-r45 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Program to record the current boot ID to the log
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/bootid-logger
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_9a371818ac5e4d70b630fbfaa842b41aaaad41a3_7f79ba80bc41a40e4abc474296e860f6280f926c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_9a371818ac5e4d70b630fbfaa842b41aaaad41a3_7f79ba80bc41a40e4abc474296e860f6280f926c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/croslog-0.0.1-r45 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c79b09062417aac2847d3730f0af6297
diff --git a/metadata/md5-cache/chromeos-base/bootid-logger-0.0.1-r72 b/metadata/md5-cache/chromeos-base/bootid-logger-0.0.1-r72
deleted file mode 100644
index 425cceb..0000000
--- a/metadata/md5-cache/chromeos-base/bootid-logger-0.0.1-r72
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Program to record the current boot ID to the log
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/bootid-logger
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_3f9bd291ca1a611db3eaaff6cce78f4ebaa0c7eb_fa823f91c6f2d1432f2bfaf49b5785eeb4e6e6fb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_3f9bd291ca1a611db3eaaff6cce78f4ebaa0c7eb_fa823f91c6f2d1432f2bfaf49b5785eeb4e6e6fb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!<=chromeos-base/croslog-0.0.1-r44 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e7bcf9b62a2d92032677b439ef653987
diff --git a/metadata/md5-cache/chromeos-base/bootid-logger-9999 b/metadata/md5-cache/chromeos-base/bootid-logger-9999
index ec90984..bc58366 100644
--- a/metadata/md5-cache/chromeos-base/bootid-logger-9999
+++ b/metadata/md5-cache/chromeos-base/bootid-logger-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=>=chromeos-base/croslog-0.0.1-r45 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Program to record the current boot ID to the log
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/bootid-logger
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=!<=chromeos-base/croslog-0.0.1-r44 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=>=chromeos-base/croslog-0.0.1-r45 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2359f9d18cf30e4d7cd77f12801c8a80
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b7cbbb82c2341eed35249e469fc1ab9b
diff --git a/metadata/md5-cache/chromeos-base/bootlockbox-client-0.0.1-r1166 b/metadata/md5-cache/chromeos-base/bootlockbox-client-0.0.1-r1166
deleted file mode 100644
index 447a379..0000000
--- a/metadata/md5-cache/chromeos-base/bootlockbox-client-0.0.1-r1166
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=chromeos-base/chromeos-dbus-bindings dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=BootLockbox DBus client library for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome/
-IUSE=cros_host cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9ed3579a46a08a64f1ac9d96a1faaa6e15720b9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9ed3579a46a08a64f1ac9d96a1faaa6e15720b9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r1166
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=79a49a25d68dcaeb1ad7531864f2fbcc
diff --git a/metadata/md5-cache/chromeos-base/bootlockbox-client-0.0.1-r1335 b/metadata/md5-cache/chromeos-base/bootlockbox-client-0.0.1-r1335
new file mode 100644
index 0000000..4849b0b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/bootlockbox-client-0.0.1-r1335
@@ -0,0 +1,14 @@
+BDEPEND=chromeos-base/chromeos-dbus-bindings dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=BootLockbox DBus client library for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome/
+IUSE=cros_host cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_805a463dbaf0f6276d889ff7b347e2dcd599f8f3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_805a463dbaf0f6276d889ff7b347e2dcd599f8f3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r1335
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e83036cc7ad71da6db8e200cc81bc430
diff --git a/metadata/md5-cache/chromeos-base/bootlockbox-client-9999 b/metadata/md5-cache/chromeos-base/bootlockbox-client-9999
index a9a0e80..cc7607f 100644
--- a/metadata/md5-cache/chromeos-base/bootlockbox-client-9999
+++ b/metadata/md5-cache/chromeos-base/bootlockbox-client-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=cd4719e8b1aa2c3c5e1f3649d57a7915
diff --git a/metadata/md5-cache/chromeos-base/bootstat-0.0.2-r3116 b/metadata/md5-cache/chromeos-base/bootstat-0.0.2-r3116
deleted file mode 100644
index 9492e45..0000000
--- a/metadata/md5-cache/chromeos-base/bootstat-0.0.2-r3116
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=sys-apps/rootdev:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS Boot Time Statistics Utilities
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/bootstat/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_b871cc16ed8888c27944a61b1162d608b0921572_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_b871cc16ed8888c27944a61b1162d608b0921572_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=sys-apps/rootdev:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.2-r3116
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=40cd7d7f4f00d2dfd2cdb8e0788bb161
diff --git a/metadata/md5-cache/chromeos-base/bootstat-0.0.2-r3144 b/metadata/md5-cache/chromeos-base/bootstat-0.0.2-r3144
new file mode 100644
index 0000000..4bb49beb
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/bootstat-0.0.2-r3144
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=sys-apps/rootdev:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS Boot Time Statistics Utilities
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/bootstat/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_099ee78ecfdd76a535372e12365bd5372e6e2596_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_099ee78ecfdd76a535372e12365bd5372e6e2596_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=sys-apps/rootdev:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.2-r3144
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=823e0dafbb691b2395ce2be3f060faa2
diff --git a/metadata/md5-cache/chromeos-base/bootstat-9999 b/metadata/md5-cache/chromeos-base/bootstat-9999
index 467a4c6..64b9278 100644
--- a/metadata/md5-cache/chromeos-base/bootstat-9999
+++ b/metadata/md5-cache/chromeos-base/bootstat-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=sys-apps/rootdev:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=de863e65e972c5f3660c5cd8cf92e72e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=99bfbdd3e57483ea135bd495214aac05
diff --git a/metadata/md5-cache/chromeos-base/buffet-0.0.1-r2930 b/metadata/md5-cache/chromeos-base/buffet-0.0.1-r2930
deleted file mode 100644
index c8a9126..0000000
--- a/metadata/md5-cache/chromeos-base/buffet-0.0.1-r2930
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/libweave:= chromeos-base/shill-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Local and cloud communication services for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/buffet/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_47f6ceba57219100723f2671e0d507bd7605f22f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_47f6ceba57219100723f2671e0d507bd7605f22f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libweave:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r2930
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=1d3070d6ab63a756675905de404e238a
diff --git a/metadata/md5-cache/chromeos-base/buffet-0.0.1-r2957 b/metadata/md5-cache/chromeos-base/buffet-0.0.1-r2957
new file mode 100644
index 0000000..70607ce
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/buffet-0.0.1-r2957
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/libweave:= chromeos-base/shill-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Local and cloud communication services for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/buffet/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_7e1c963c411477282f734722b3e2b5cb9f0e8462_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_7e1c963c411477282f734722b3e2b5cb9f0e8462_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libweave:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r2957
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=79af0197c0f8efef800a109d42eedca0
diff --git a/metadata/md5-cache/chromeos-base/buffet-9999 b/metadata/md5-cache/chromeos-base/buffet-9999
index de3cac7..7358347 100644
--- a/metadata/md5-cache/chromeos-base/buffet-9999
+++ b/metadata/md5-cache/chromeos-base/buffet-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/libweave:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=eaf5419aaf409e2d8565363e0e538483
diff --git a/metadata/md5-cache/chromeos-base/cbor-0.0.1-r101 b/metadata/md5-cache/chromeos-base/cbor-0.0.1-r101
deleted file mode 100644
index 55f7922..0000000
--- a/metadata/md5-cache/chromeos-base/cbor-0.0.1-r101
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Concise Binary Object Representation (CBOR) library for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/cbor
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_f5f3d15e265fd3d3816c4b9533ecd5f3c05cf927 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_f5f3d15e265fd3d3816c4b9533ecd5f3c05cf927 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=cfdb9341c62a680da384eb4228b0b46a
diff --git a/metadata/md5-cache/chromeos-base/cbor-0.0.1-r128 b/metadata/md5-cache/chromeos-base/cbor-0.0.1-r128
new file mode 100644
index 0000000..727d1ee
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cbor-0.0.1-r128
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Concise Binary Object Representation (CBOR) library for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/cbor
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_2245d96f551c21c7caf9bfd1c0556897fb8ceb79 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_2245d96f551c21c7caf9bfd1c0556897fb8ceb79 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e645fda5dc4baeae2ee6885458c2a280
diff --git a/metadata/md5-cache/chromeos-base/cbor-9999 b/metadata/md5-cache/chromeos-base/cbor-9999
index 66cc18f..6a5e435 100644
--- a/metadata/md5-cache/chromeos-base/cbor-9999
+++ b/metadata/md5-cache/chromeos-base/cbor-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=36072f1884acce1db03fdfbd68fd599c
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d1ad9ce010f4eed3f60f4b2e30a235c4
diff --git a/metadata/md5-cache/chromeos-base/cfm-dfu-notification-0.0.1-r104 b/metadata/md5-cache/chromeos-base/cfm-dfu-notification-0.0.1-r104
deleted file mode 100644
index dbaadbb..0000000
--- a/metadata/md5-cache/chromeos-base/cfm-dfu-notification-0.0.1-r104
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Library to send firmware update notifications to CFM
-EAPI=7
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_63862a9eebc1145ee434295657abeeefaf884645_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_63862a9eebc1145ee434295657abeeefaf884645_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f5b7baeec291f77e49ea8d29a55b8d4d
diff --git a/metadata/md5-cache/chromeos-base/cfm-dfu-notification-0.0.1-r129 b/metadata/md5-cache/chromeos-base/cfm-dfu-notification-0.0.1-r129
new file mode 100644
index 0000000..10e757d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cfm-dfu-notification-0.0.1-r129
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Library to send firmware update notifications to CFM
+EAPI=7
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_63862a9eebc1145ee434295657abeeefaf884645_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_63862a9eebc1145ee434295657abeeefaf884645_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=56fcd904522dd1ec3dc7db1932be9e55
diff --git a/metadata/md5-cache/chromeos-base/cfm-dfu-notification-9999 b/metadata/md5-cache/chromeos-base/cfm-dfu-notification-9999
index 851d004..71e19b1 100644
--- a/metadata/md5-cache/chromeos-base/cfm-dfu-notification-9999
+++ b/metadata/md5-cache/chromeos-base/cfm-dfu-notification-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=37dff4729471bed9857be8bb6767f695
diff --git a/metadata/md5-cache/chromeos-base/chameleon-0.0.2-r445 b/metadata/md5-cache/chromeos-base/chameleon-0.0.2-r445
deleted file mode 100644
index c8e4b7a..0000000
--- a/metadata/md5-cache/chromeos-base/chameleon-0.0.2-r445
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=info install setup unpack
-DEPEND=dev-lang/python
-DESCRIPTION=Chameleon bundle for Autotest lab deployment
-EAPI=4
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/chameleon/
-IUSE=cros_host cros_workon_tree_5d4fe40c80ce462da9b210a2d334f988a40123f2
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-lang/python
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=8c939c0c717761d619cd8069522fe8d9
diff --git a/metadata/md5-cache/chromeos-base/chameleon-0.0.2-r454 b/metadata/md5-cache/chromeos-base/chameleon-0.0.2-r454
new file mode 100644
index 0000000..17c22ab
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chameleon-0.0.2-r454
@@ -0,0 +1,13 @@
+DEFINED_PHASES=info install setup unpack
+DEPEND=dev-lang/python
+DESCRIPTION=Chameleon bundle for Autotest lab deployment
+EAPI=4
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/chameleon/
+IUSE=cros_host cros_workon_tree_ca890184778b53daf731385ea059a30a22cf107e
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-lang/python
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=73687bc14b98db10cbff81f0718547cc
diff --git a/metadata/md5-cache/chromeos-base/chameleon-9999 b/metadata/md5-cache/chromeos-base/chameleon-9999
index 694061c..2b589bc 100644
--- a/metadata/md5-cache/chromeos-base/chameleon-9999
+++ b/metadata/md5-cache/chromeos-base/chameleon-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=dev-lang/python
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=56b6292b5c9d08d6dc539b688844c639
diff --git a/metadata/md5-cache/chromeos-base/chaps-0.0.1-r3376 b/metadata/md5-cache/chromeos-base/chaps-0.0.1-r3376
deleted file mode 100644
index 71907bb..0000000
--- a/metadata/md5-cache/chromeos-base/chaps-0.0.1-r3376
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=!tpm2? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/minijail:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/openssl:= dev-libs/protobuf:= test? ( app-arch/gzip app-arch/tar ) chromeos-base/system_api:=[fuzzer?] fuzzer? ( dev-libs/libprotobuf-mutator ) tpm2? ( chromeos-base/trunks:=[test?] ) dev-libs/nss:= dev-libs/nspr:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=PKCS #11 layer over TrouSerS
-EAPI=7
-HOMEPAGE=http://www.chromium.org/developers/design-documents/chaps-technical-design
-IUSE=systemd test tpm tpm2 fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8640df3a4aff4084b644aeefc4d31752a1d97665_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_a06a3f47395fb7b584188c6852764bc773e5497e_8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8640df3a4aff4084b644aeefc4d31752a1d97665_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_a06a3f47395fb7b584188c6852764bc773e5497e_8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!tpm2? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/minijail:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/openssl:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=tpm2? ( !tpm )
-SLOT=0/0.0.1-r3376
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=f895b38eadf1c85fb2d47298e6c8c60a
diff --git a/metadata/md5-cache/chromeos-base/chaps-0.0.1-r3472 b/metadata/md5-cache/chromeos-base/chaps-0.0.1-r3472
new file mode 100644
index 0000000..e8717d2
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chaps-0.0.1-r3472
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/chaps-client:= chromeos-base/minijail:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/openssl:= dev-libs/protobuf:= test? ( app-arch/gzip app-arch/tar ) chromeos-base/system_api:=[fuzzer?] fuzzer? ( dev-libs/libprotobuf-mutator ) tpm2? ( chromeos-base/trunks:=[test?] ) dev-libs/nss:= dev-libs/nspr:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=PKCS #11 layer over TrouSerS
+EAPI=7
+HOMEPAGE=http://www.chromium.org/developers/design-documents/chaps-technical-design
+IUSE=systemd test tpm tpm_dynamic tpm2 fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_113dbae63eb106c56996900e98cd65103bf297dc_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_e08a2eb734e33827dffeecf57eca046cd1091373_d8da1275feb26afab354f35df7316b3840f8330b_659b97d9c804b358f4bd27925620d4dd1cee8fc7_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_113dbae63eb106c56996900e98cd65103bf297dc_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_e08a2eb734e33827dffeecf57eca046cd1091373_d8da1275feb26afab354f35df7316b3840f8330b_659b97d9c804b358f4bd27925620d4dd1cee8fc7_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/chaps-client:= chromeos-base/minijail:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/openssl:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
+SLOT=0/0.0.1-r3472
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=4b2346b0a6f349836b254026bce6b900
diff --git a/metadata/md5-cache/chromeos-base/chaps-9999 b/metadata/md5-cache/chromeos-base/chaps-9999
index 28ea85c..a6b7b30 100644
--- a/metadata/md5-cache/chromeos-base/chaps-9999
+++ b/metadata/md5-cache/chromeos-base/chaps-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=!tpm2? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/minijail:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/openssl:= dev-libs/protobuf:= test? ( app-arch/gzip app-arch/tar ) chromeos-base/system_api:=[fuzzer?] fuzzer? ( dev-libs/libprotobuf-mutator ) tpm2? ( chromeos-base/trunks:=[test?] ) dev-libs/nss:= dev-libs/nspr:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/chaps-client:= chromeos-base/minijail:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/openssl:= dev-libs/protobuf:= test? ( app-arch/gzip app-arch/tar ) chromeos-base/system_api:=[fuzzer?] fuzzer? ( dev-libs/libprotobuf-mutator ) tpm2? ( chromeos-base/trunks:=[test?] ) dev-libs/nss:= dev-libs/nspr:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=PKCS #11 layer over TrouSerS
 EAPI=7
 HOMEPAGE=http://www.chromium.org/developers/design-documents/chaps-technical-design
-IUSE=systemd test tpm tpm2 fuzzer cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=systemd test tpm tpm_dynamic tpm2 fuzzer cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=!tpm2? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/minijail:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/openssl:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=tpm2? ( !tpm )
+RDEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/chaps-client:= chromeos-base/minijail:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/openssl:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=36ddcfb676f682e567573efe7a8bd9ad
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=2c9290ce3838b425f23731058c7250b8
diff --git a/metadata/md5-cache/chromeos-base/chaps-client-0.0.1-r7 b/metadata/md5-cache/chromeos-base/chaps-client-0.0.1-r7
new file mode 100644
index 0000000..98516f7
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chaps-client-0.0.1-r7
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=cros_host? ( >=chromeos-base/chromeos-dbus-bindings-0.0.1-r1058 ) chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=chaps D-Bus client library for Chromium OS
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/chaps/client/
+IUSE=cros_host cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_113dbae63eb106c56996900e98cd65103bf297dc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_113dbae63eb106c56996900e98cd65103bf297dc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=f6a5b4fd22604a3bf2e8d01466137401
diff --git a/metadata/md5-cache/chromeos-base/chaps-client-9999 b/metadata/md5-cache/chromeos-base/chaps-client-9999
new file mode 100644
index 0000000..6968d4e
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chaps-client-9999
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=cros_host? ( >=chromeos-base/chromeos-dbus-bindings-0.0.1-r1058 ) chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=chaps D-Bus client library for Chromium OS
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/chaps/client/
+IUSE=cros_host cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=83d4c91b1e758f129de0f4eca31dcaf5
diff --git a/metadata/md5-cache/chromeos-base/chrome-binary-tests-0.0.1 b/metadata/md5-cache/chromeos-base/chrome-binary-tests-0.0.1
index 2b25738..4706744 100644
--- a/metadata/md5-cache/chromeos-base/chrome-binary-tests-0.0.1
+++ b/metadata/md5-cache/chromeos-base/chrome-binary-tests-0.0.1
@@ -7,4 +7,4 @@
 KEYWORDS=*
 LICENSE=BSD-Google
 SLOT=0
-_md5_=675ee00119b84fc1ff3c79c5afe344c3
+_md5_=a96b9242432894dba02ef49c1e228b4f
diff --git a/metadata/md5-cache/chromeos-base/chrome-binary-tests-0.0.1-r18 b/metadata/md5-cache/chromeos-base/chrome-binary-tests-0.0.1-r18
deleted file mode 100644
index 2b25738..0000000
--- a/metadata/md5-cache/chromeos-base/chrome-binary-tests-0.0.1-r18
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=install
-DEPEND=chromeos-base/chromeos-chrome
-DESCRIPTION=Install Chromium binary tests to test image
-EAPI=6
-HOMEPAGE=http://www.chromium.org
-IUSE=vaapi v4l2_codec
-KEYWORDS=*
-LICENSE=BSD-Google
-SLOT=0
-_md5_=675ee00119b84fc1ff3c79c5afe344c3
diff --git a/metadata/md5-cache/chromeos-base/chrome-binary-tests-0.0.1-r19 b/metadata/md5-cache/chromeos-base/chrome-binary-tests-0.0.1-r19
new file mode 100644
index 0000000..4706744
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chrome-binary-tests-0.0.1-r19
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DEPEND=chromeos-base/chromeos-chrome
+DESCRIPTION=Install Chromium binary tests to test image
+EAPI=6
+HOMEPAGE=http://www.chromium.org
+IUSE=vaapi v4l2_codec
+KEYWORDS=*
+LICENSE=BSD-Google
+SLOT=0
+_md5_=a96b9242432894dba02ef49c1e228b4f
diff --git a/metadata/md5-cache/chromeos-base/chrome-icu-93.0.4554.0_rc-r1 b/metadata/md5-cache/chromeos-base/chrome-icu-93.0.4554.0_rc-r1
deleted file mode 100644
index 6cad220..0000000
--- a/metadata/md5-cache/chromeos-base/chrome-icu-93.0.4554.0_rc-r1
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup unpack
-DEPEND=net-print/cups x11-libs/libdrm
-DESCRIPTION=The ICU library copied from chrome/third_party
-EAPI=5
-HOMEPAGE=https://cs.chromium.org/chromium/src/third_party/icu/
-IUSE=asan chrome_internal component_build cups +libcxx msan neon +runhooks thinlto ubsan verbose xkbcommon chrome_internal asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=icu-58
-RDEPEND=!dev-libs/icu !<chromeos-base/chromeos-chrome-83.0.4098.4 xkbcommon? ( x11-libs/libxkbcommon x11-misc/xkeyboard-config )
-RESTRICT=network-sandbox mirror
-SLOT=0/93.0.4554.0_rc-r1
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	chromium-source	02ac5d86b66541750756714fe10f8f49	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=70ced7981ea1e4c14928c9e8ce634b60
diff --git a/metadata/md5-cache/chromeos-base/chrome-icu-97.0.4667.0_rc-r1 b/metadata/md5-cache/chromeos-base/chrome-icu-97.0.4667.0_rc-r1
new file mode 100644
index 0000000..984be22
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chrome-icu-97.0.4667.0_rc-r1
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install prepare setup unpack
+DEPEND=net-print/cups x11-libs/libdrm
+DESCRIPTION=The ICU library copied from chrome/third_party
+EAPI=5
+HOMEPAGE=https://cs.chromium.org/chromium/src/third_party/icu/
+IUSE=asan chrome_internal component_build cups +libcxx msan neon +runhooks thinlto ubsan verbose xkbcommon chrome_internal asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=icu-58
+RDEPEND=!dev-libs/icu !<chromeos-base/chromeos-chrome-83.0.4098.4 xkbcommon? ( x11-libs/libxkbcommon x11-misc/xkeyboard-config )
+RESTRICT=network-sandbox mirror
+SLOT=0/97.0.4667.0_rc-r1
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	chromium-source	02ac5d86b66541750756714fe10f8f49	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=70ced7981ea1e4c14928c9e8ce634b60
diff --git a/metadata/md5-cache/chromeos-base/chrome-icu-9999 b/metadata/md5-cache/chromeos-base/chrome-icu-9999
index a67601c..49393f0 100644
--- a/metadata/md5-cache/chromeos-base/chrome-icu-9999
+++ b/metadata/md5-cache/chromeos-base/chrome-icu-9999
@@ -9,5 +9,5 @@
 RDEPEND=!dev-libs/icu !<chromeos-base/chromeos-chrome-83.0.4098.4 xkbcommon? ( x11-libs/libxkbcommon x11-misc/xkeyboard-config )
 RESTRICT=network-sandbox mirror
 SLOT=0/9999
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	chromium-source	02ac5d86b66541750756714fe10f8f49	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	chromium-source	02ac5d86b66541750756714fe10f8f49	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=24d9f44582b0b5caf49636a7ca319c8d
diff --git a/metadata/md5-cache/chromeos-base/chromeos-accelerometer-init-0.0.1 b/metadata/md5-cache/chromeos-base/chromeos-accelerometer-init-0.0.1
index f25c1df..c6e64d9 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-accelerometer-init-0.0.1
+++ b/metadata/md5-cache/chromeos-base/chromeos-accelerometer-init-0.0.1
@@ -5,7 +5,7 @@
 HOMEPAGE=http://src.chromium.org
 KEYWORDS=*
 LICENSE=BSD-Google
-RDEPEND=chromeos-base/mems_setup virtual/chromeos-ec-driver-init virtual/modutils virtual/udev
+RDEPEND=!chromeos-base/iioservice chromeos-base/mems_setup virtual/chromeos-ec-driver-init virtual/modutils virtual/udev
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=6b38b43a4121b21879dd77240135af2f
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=3f13a9d1f5df063dbe0465f0ac7bb895
diff --git a/metadata/md5-cache/chromeos-base/chromeos-accelerometer-init-0.0.1-r27 b/metadata/md5-cache/chromeos-base/chromeos-accelerometer-init-0.0.1-r27
deleted file mode 100644
index f25c1df..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-accelerometer-init-0.0.1-r27
+++ /dev/null
@@ -1,11 +0,0 @@
-DEFINED_PHASES=install test
-DEPEND=virtual/pkgconfig
-DESCRIPTION=Chrome OS trigger allowing chrome to access cros-ec-accel device
-EAPI=5
-HOMEPAGE=http://src.chromium.org
-KEYWORDS=*
-LICENSE=BSD-Google
-RDEPEND=chromeos-base/mems_setup virtual/chromeos-ec-driver-init virtual/modutils virtual/udev
-SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=6b38b43a4121b21879dd77240135af2f
diff --git a/metadata/md5-cache/chromeos-base/chromeos-accelerometer-init-0.0.1-r28 b/metadata/md5-cache/chromeos-base/chromeos-accelerometer-init-0.0.1-r28
new file mode 100644
index 0000000..c6e64d9
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-accelerometer-init-0.0.1-r28
@@ -0,0 +1,11 @@
+DEFINED_PHASES=install test
+DEPEND=virtual/pkgconfig
+DESCRIPTION=Chrome OS trigger allowing chrome to access cros-ec-accel device
+EAPI=5
+HOMEPAGE=http://src.chromium.org
+KEYWORDS=*
+LICENSE=BSD-Google
+RDEPEND=!chromeos-base/iioservice chromeos-base/mems_setup virtual/chromeos-ec-driver-init virtual/modutils virtual/udev
+SLOT=0
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=3f13a9d1f5df063dbe0465f0ac7bb895
diff --git a/metadata/md5-cache/chromeos-base/chromeos-activate-date-0.0.1 b/metadata/md5-cache/chromeos-base/chromeos-activate-date-0.0.1
index 803628b..205a185 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-activate-date-0.0.1
+++ b/metadata/md5-cache/chromeos-base/chromeos-activate-date-0.0.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 RDEPEND=!<chromeos-base/chromeos-bsp-spring-private-0.0.1-r15 !<chromeos-base/chromeos-bsp-pit-private-0.0.1-r11 !<chromeos-base/chromeos-bsp-daisy-private-0.0.1-r26 !<chromeos-base/chromeos-bsp-alex-0.0.1-r11 !<chromeos-base/chromeos-bsp-lumpy-private-0.0.5-r22 !<chromeos-base/chromeos-bsp-lumpy-0.0.5-r14 !<chromeos-base/chromeos-bsp-stumpy-0.0.3-r8
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=285b1a2a0225d7cb2b01ae4d4c8be47d
diff --git a/metadata/md5-cache/chromeos-base/chromeos-activate-date-0.0.1-r9 b/metadata/md5-cache/chromeos-base/chromeos-activate-date-0.0.1-r9
index 803628b..205a185 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-activate-date-0.0.1-r9
+++ b/metadata/md5-cache/chromeos-base/chromeos-activate-date-0.0.1-r9
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 RDEPEND=!<chromeos-base/chromeos-bsp-spring-private-0.0.1-r15 !<chromeos-base/chromeos-bsp-pit-private-0.0.1-r11 !<chromeos-base/chromeos-bsp-daisy-private-0.0.1-r26 !<chromeos-base/chromeos-bsp-alex-0.0.1-r11 !<chromeos-base/chromeos-bsp-lumpy-private-0.0.5-r22 !<chromeos-base/chromeos-bsp-lumpy-0.0.5-r14 !<chromeos-base/chromeos-bsp-stumpy-0.0.3-r8
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=285b1a2a0225d7cb2b01ae4d4c8be47d
diff --git a/metadata/md5-cache/chromeos-base/chromeos-auth-config-0.0.1 b/metadata/md5-cache/chromeos-base/chromeos-auth-config-0.0.1
index edca1aa..f5e5493 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-auth-config-0.0.1
+++ b/metadata/md5-cache/chromeos-base/chromeos-auth-config-0.0.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 RDEPEND=sys-auth/pambase chromeos-base/vboot_reference
 SLOT=0
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	pam	3f746974e1cc47cabe3bd488c08cdc8e	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	pam	3f746974e1cc47cabe3bd488c08cdc8e	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=940b6a57a8289bd062a0f891bb40b852
diff --git a/metadata/md5-cache/chromeos-base/chromeos-auth-config-0.0.1-r10 b/metadata/md5-cache/chromeos-base/chromeos-auth-config-0.0.1-r10
index edca1aa..f5e5493 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-auth-config-0.0.1-r10
+++ b/metadata/md5-cache/chromeos-base/chromeos-auth-config-0.0.1-r10
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 RDEPEND=sys-auth/pambase chromeos-base/vboot_reference
 SLOT=0
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	pam	3f746974e1cc47cabe3bd488c08cdc8e	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	pam	3f746974e1cc47cabe3bd488c08cdc8e	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=940b6a57a8289bd062a0f891bb40b852
diff --git a/metadata/md5-cache/chromeos-base/chromeos-base-1-r6 b/metadata/md5-cache/chromeos-base/chromeos-base-1-r6
index af02a94..8f6ea34 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-base-1-r6
+++ b/metadata/md5-cache/chromeos-base/chromeos-base-1-r6
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=>=sys-apps/baselayout-2 !<sys-apps/baselayout-2.0.1-r227 !<sys-libs/timezone-data-2011d !<=app-admin/sudo-1.8.2 !<sys-apps/mawk-1.3.4 !<app-shells/bash-4.1 !<app-shells/dash-0.5.5 !<net-misc/openssh-5.2_p1-r8 app-shells/bash !cros_host? ( !pam? ( !app-admin/sudo ) !app-misc/editor-wrapper cros_embedded? ( app-shells/dash ) sys-libs/timezone-data ) sys-apps/baselayout
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=e33bbabf13c40c16e6af677b0472e46c
diff --git a/metadata/md5-cache/chromeos-base/chromeos-base-9999 b/metadata/md5-cache/chromeos-base/chromeos-base-9999
index e95d5af..c622336 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-base-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-base-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=>=sys-apps/baselayout-2 !<sys-apps/baselayout-2.0.1-r227 !<sys-libs/timezone-data-2011d !<=app-admin/sudo-1.8.2 !<sys-apps/mawk-1.3.4 !<app-shells/bash-4.1 !<app-shells/dash-0.5.5 !<net-misc/openssh-5.2_p1-r8 app-shells/bash !cros_host? ( !pam? ( !app-admin/sudo ) !app-misc/editor-wrapper cros_embedded? ( app-shells/dash ) sys-libs/timezone-data ) sys-apps/baselayout
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=c8854fe8b5972cf9b0483d6ac4823290
diff --git a/metadata/md5-cache/chromeos-base/chromeos-ca-certificates-0.0.1-r5 b/metadata/md5-cache/chromeos-base/chromeos-ca-certificates-0.0.1-r5
deleted file mode 100644
index c0d7809..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-ca-certificates-0.0.1-r5
+++ /dev/null
@@ -1,8 +0,0 @@
-DEFINED_PHASES=compile install
-DESCRIPTION=Chrome OS restricted set of certificates
-EAPI=2
-HOMEPAGE=http://src.chromium.org
-KEYWORDS=*
-LICENSE=BSD
-SLOT=0
-_md5_=b36e7ac8fa224f086e84172f9160256b
diff --git a/metadata/md5-cache/chromeos-base/chromeos-ca-certificates-1 b/metadata/md5-cache/chromeos-base/chromeos-ca-certificates-1
new file mode 100644
index 0000000..90baba4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-ca-certificates-1
@@ -0,0 +1,8 @@
+DEFINED_PHASES=compile install
+DESCRIPTION=Chrome OS restricted set of certificates
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/docs/+/HEAD/ca_certs.md
+KEYWORDS=*
+LICENSE=BSD-Google
+SLOT=0
+_md5_=41aeff82b33a462f998190ca90c4ea27
diff --git a/metadata/md5-cache/chromeos-base/chromeos-ca-certificates-1-r6 b/metadata/md5-cache/chromeos-base/chromeos-ca-certificates-1-r6
new file mode 100644
index 0000000..90baba4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-ca-certificates-1-r6
@@ -0,0 +1,8 @@
+DEFINED_PHASES=compile install
+DESCRIPTION=Chrome OS restricted set of certificates
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/docs/+/HEAD/ca_certs.md
+KEYWORDS=*
+LICENSE=BSD-Google
+SLOT=0
+_md5_=41aeff82b33a462f998190ca90c4ea27
diff --git a/metadata/md5-cache/chromeos-base/chromeos-chrome-93.0.4554.0_rc-r1 b/metadata/md5-cache/chromeos-base/chromeos-chrome-93.0.4554.0_rc-r1
deleted file mode 100644
index 68ec9cc..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-chrome-93.0.4554.0_rc-r1
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure install postinst preinst prepare setup unpack
-DEPEND=app-arch/bzip2 app-crypt/mit-krb5 app-misc/edid-decode authpolicy? ( chromeos-base/authpolicy ) ~chromeos-base/chrome-icu-93.0.4554.0_rc chromeos-base/gestures chromeos-base/libevdev:= fonts? ( chromeos-base/chromeos-fonts ) chrome_internal? ( chromeos-base/quickoffice ) dev-libs/nspr >=dev-libs/nss-3.12.2 >=media-libs/alsa-lib-1.0.19 media-libs/fontconfig media-libs/libsync x11-libs/libdrm ozone_platform_gbm? ( media-libs/minigbm ) v4lplugin? ( media-libs/libv4lplugins ) >=media-sound/adhd-0.0.1-r310 net-print/cups opengl? ( virtual/opengl ) opengles? ( virtual/opengles ) sys-apps/dbus sys-apps/pciutils virtual/udev sys-libs/libcap chrome_remoting? ( sys-libs/pam ) vaapi? ( x11-libs/libva ) xkbcommon? ( x11-libs/libxkbcommon x11-misc/xkeyboard-config ) accessibility? ( app-accessibility/brltty app-accessibility/espeak-ng app-accessibility/googletts ) libcxx? ( sys-libs/libcxxabi sys-libs/libcxx ) oobe_config? ( chromeos-base/oobe_config ) iioservice? ( chromeos-base/iioservice ) chromeos-base/protofiles >=dev-util/gperf-3.0.3 >=dev-util/pkgconfig-0.23 arm? ( x11-libs/libdrm ) sys-apps/baselayout
-DESCRIPTION=Open-source version of Google Chrome web browser
-EAPI=7
-HOMEPAGE=http://www.chromium.org/
-IUSE=+afdo_use afdo_verify +accessibility app_shell asan +authpolicy +build_tests cdm_factory_daemon +chrome_debug +cfi cfm chrome_debug_tests chrome_dcheck chrome_internal chrome_media +chrome_remoting clang_tidy component_build cros-debug debug_fission +dwarf5 +fonts goma goma_thinlto +highdpi iioservice internal_gles_conform +libcxx mojo msan +nacl neon oobe_config opengl opengles orderfile_generate +orderfile_use orderfile_verify +runhooks strict_toolchain_checks +thinlto touchview ubsan v4l2_codec v4lplugin vaapi verbose vtable_verify xkbcommon ozone_platform_gbm ozone_platform_cast ozone_platform_headless ozone_platform_egltest ozone_platform_caca ozone_platform_default_gbm ozone_platform_default_cast ozone_platform_default_headless ozone_platform_default_egltest ozone_platform_default_caca +autotest +buildcheck autotest opengles chrome_internal asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=BSD-Google chrome_internal? ( Google-TOS )
-PROPERTIES=live
-RDEPEND=app-arch/bzip2 app-crypt/mit-krb5 app-misc/edid-decode authpolicy? ( chromeos-base/authpolicy ) ~chromeos-base/chrome-icu-93.0.4554.0_rc chromeos-base/gestures chromeos-base/libevdev:= fonts? ( chromeos-base/chromeos-fonts ) chrome_internal? ( chromeos-base/quickoffice ) dev-libs/nspr >=dev-libs/nss-3.12.2 >=media-libs/alsa-lib-1.0.19 media-libs/fontconfig media-libs/libsync x11-libs/libdrm ozone_platform_gbm? ( media-libs/minigbm ) v4lplugin? ( media-libs/libv4lplugins ) >=media-sound/adhd-0.0.1-r310 net-print/cups opengl? ( virtual/opengl ) opengles? ( virtual/opengles ) sys-apps/dbus sys-apps/pciutils virtual/udev sys-libs/libcap chrome_remoting? ( sys-libs/pam ) vaapi? ( x11-libs/libva ) xkbcommon? ( x11-libs/libxkbcommon x11-misc/xkeyboard-config ) accessibility? ( app-accessibility/brltty app-accessibility/espeak-ng app-accessibility/googletts ) libcxx? ( sys-libs/libcxxabi sys-libs/libcxx ) oobe_config? ( chromeos-base/oobe_config ) iioservice? ( chromeos-base/iioservice ) autotest? ( chromeos-base/autotest ) sys-apps/baselayout
-REQUIRED_USE=cfi? ( thinlto ) afdo_verify? ( !afdo_use ) orderfile_generate? ( !orderfile_use ) ^^ ( ozone_platform_default_gbm ozone_platform_default_cast ozone_platform_default_headless ozone_platform_default_egltest ozone_platform_default_caca )
-RESTRICT=network-sandbox mirror
-SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	binutils-funcs	6207477a739f6f25d13da27b9cc00160	chromium-source	02ac5d86b66541750756714fe10f8f49	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=fff3c8ff9fe564063ca40e8f188aa43f
diff --git a/metadata/md5-cache/chromeos-base/chromeos-chrome-97.0.4667.0_rc-r1 b/metadata/md5-cache/chromeos-base/chromeos-chrome-97.0.4667.0_rc-r1
new file mode 100644
index 0000000..ad2e59c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-chrome-97.0.4667.0_rc-r1
@@ -0,0 +1,16 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure install postinst preinst prepare setup unpack
+DEPEND=app-arch/bzip2 app-crypt/mit-krb5 app-misc/edid-decode authpolicy? ( chromeos-base/authpolicy ) ~chromeos-base/chrome-icu-97.0.4667.0_rc chromeos-base/gestures chromeos-base/libevdev:= fonts? ( chromeos-base/chromeos-fonts ) chrome_internal? ( chromeos-base/quickoffice ) dev-libs/nspr >=dev-libs/nss-3.12.2 libinput? ( dev-libs/libinput:= ) >=media-libs/alsa-lib-1.0.19 media-libs/fontconfig media-libs/libsync x11-libs/libdrm ozone_platform_gbm? ( media-libs/minigbm ) v4lplugin? ( media-libs/libv4lplugins ) >=media-sound/adhd-0.0.1-r310 net-print/cups opengl? ( virtual/opengl ) opengles? ( virtual/opengles ) sys-apps/dbus sys-apps/pciutils virtual/udev sys-libs/libcap chrome_remoting? ( sys-libs/pam ) vaapi? ( x11-libs/libva ) xkbcommon? ( x11-libs/libxkbcommon x11-misc/xkeyboard-config ) accessibility? ( app-accessibility/brltty app-accessibility/espeak-ng app-accessibility/googletts ) libcxx? ( sys-libs/libcxxabi sys-libs/libcxx ) oobe_config? ( chromeos-base/oobe_config ) iioservice? ( chromeos-base/iioservice ) chromeos-base/protofiles >=dev-util/gperf-3.0.3 >=dev-util/pkgconfig-0.23 arm? ( x11-libs/libdrm ) sys-apps/baselayout
+DESCRIPTION=Open-source version of Google Chrome web browser
+EAPI=7
+HOMEPAGE=http://www.chromium.org/
+IUSE=+afdo_use afdo_verify +accessibility app_shell asan +authpolicy +build_tests cdm_factory_daemon +chrome_debug +cfi cfm chrome_debug_tests chrome_dcheck chrome_internal chrome_media +chrome_remoting clang_tidy component_build cros-debug debug_fission +dwarf5 +fonts goma goma_thinlto +highdpi iioservice intel_oemcrypto internal_gles_conform +libcxx libinput mojo msan +nacl neon +oobe_config opengl opengles orderfile_generate +orderfile_use orderfile_verify +runhooks strict_toolchain_checks +thinlto touchview ubsan v4l2_codec v4lplugin vaapi verbose vtable_verify xkbcommon ozone_platform_gbm ozone_platform_cast ozone_platform_headless ozone_platform_egltest ozone_platform_caca ozone_platform_default_gbm ozone_platform_default_cast ozone_platform_default_headless ozone_platform_default_egltest ozone_platform_default_caca +autotest +buildcheck autotest opengles chrome_internal asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=BSD-Google chrome_internal? ( Google-TOS )
+PROPERTIES=live
+RDEPEND=app-arch/bzip2 app-crypt/mit-krb5 app-misc/edid-decode authpolicy? ( chromeos-base/authpolicy ) ~chromeos-base/chrome-icu-97.0.4667.0_rc chromeos-base/gestures chromeos-base/libevdev:= fonts? ( chromeos-base/chromeos-fonts ) chrome_internal? ( chromeos-base/quickoffice ) dev-libs/nspr >=dev-libs/nss-3.12.2 libinput? ( dev-libs/libinput:= ) >=media-libs/alsa-lib-1.0.19 media-libs/fontconfig media-libs/libsync x11-libs/libdrm ozone_platform_gbm? ( media-libs/minigbm ) v4lplugin? ( media-libs/libv4lplugins ) >=media-sound/adhd-0.0.1-r310 net-print/cups opengl? ( virtual/opengl ) opengles? ( virtual/opengles ) sys-apps/dbus sys-apps/pciutils virtual/udev sys-libs/libcap chrome_remoting? ( sys-libs/pam ) vaapi? ( x11-libs/libva ) xkbcommon? ( x11-libs/libxkbcommon x11-misc/xkeyboard-config ) accessibility? ( app-accessibility/brltty app-accessibility/espeak-ng app-accessibility/googletts ) libcxx? ( sys-libs/libcxxabi sys-libs/libcxx ) oobe_config? ( chromeos-base/oobe_config ) iioservice? ( chromeos-base/iioservice ) autotest? ( chromeos-base/autotest ) sys-apps/baselayout
+REQUIRED_USE=cfi? ( thinlto ) afdo_verify? ( !afdo_use ) orderfile_generate? ( !orderfile_use ) ^^ ( ozone_platform_default_gbm ozone_platform_default_cast ozone_platform_default_headless ozone_platform_default_egltest ozone_platform_default_caca )
+RESTRICT=network-sandbox mirror
+SLOT=0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	binutils-funcs	6207477a739f6f25d13da27b9cc00160	chromium-source	02ac5d86b66541750756714fe10f8f49	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=0c5e2ae49b29300f86579fc6f0aff794
diff --git a/metadata/md5-cache/chromeos-base/chromeos-chrome-9999 b/metadata/md5-cache/chromeos-base/chromeos-chrome-9999
index ba7d482..ad9fc12 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-chrome-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-chrome-9999
@@ -1,16 +1,16 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure install postinst preinst prepare setup unpack
-DEPEND=app-arch/bzip2 app-crypt/mit-krb5 app-misc/edid-decode authpolicy? ( chromeos-base/authpolicy ) ~chromeos-base/chrome-icu-9999 chromeos-base/gestures chromeos-base/libevdev:= fonts? ( chromeos-base/chromeos-fonts ) chrome_internal? ( chromeos-base/quickoffice ) dev-libs/nspr >=dev-libs/nss-3.12.2 >=media-libs/alsa-lib-1.0.19 media-libs/fontconfig media-libs/libsync x11-libs/libdrm ozone_platform_gbm? ( media-libs/minigbm ) v4lplugin? ( media-libs/libv4lplugins ) >=media-sound/adhd-0.0.1-r310 net-print/cups opengl? ( virtual/opengl ) opengles? ( virtual/opengles ) sys-apps/dbus sys-apps/pciutils virtual/udev sys-libs/libcap chrome_remoting? ( sys-libs/pam ) vaapi? ( x11-libs/libva ) xkbcommon? ( x11-libs/libxkbcommon x11-misc/xkeyboard-config ) accessibility? ( app-accessibility/brltty app-accessibility/espeak-ng app-accessibility/googletts ) libcxx? ( sys-libs/libcxxabi sys-libs/libcxx ) oobe_config? ( chromeos-base/oobe_config ) iioservice? ( chromeos-base/iioservice ) chromeos-base/protofiles >=dev-util/gperf-3.0.3 >=dev-util/pkgconfig-0.23 arm? ( x11-libs/libdrm ) sys-apps/baselayout
+DEPEND=app-arch/bzip2 app-crypt/mit-krb5 app-misc/edid-decode authpolicy? ( chromeos-base/authpolicy ) ~chromeos-base/chrome-icu-9999 chromeos-base/gestures chromeos-base/libevdev:= fonts? ( chromeos-base/chromeos-fonts ) chrome_internal? ( chromeos-base/quickoffice ) dev-libs/nspr >=dev-libs/nss-3.12.2 libinput? ( dev-libs/libinput:= ) >=media-libs/alsa-lib-1.0.19 media-libs/fontconfig media-libs/libsync x11-libs/libdrm ozone_platform_gbm? ( media-libs/minigbm ) v4lplugin? ( media-libs/libv4lplugins ) >=media-sound/adhd-0.0.1-r310 net-print/cups opengl? ( virtual/opengl ) opengles? ( virtual/opengles ) sys-apps/dbus sys-apps/pciutils virtual/udev sys-libs/libcap chrome_remoting? ( sys-libs/pam ) vaapi? ( x11-libs/libva ) xkbcommon? ( x11-libs/libxkbcommon x11-misc/xkeyboard-config ) accessibility? ( app-accessibility/brltty app-accessibility/espeak-ng app-accessibility/googletts ) libcxx? ( sys-libs/libcxxabi sys-libs/libcxx ) oobe_config? ( chromeos-base/oobe_config ) iioservice? ( chromeos-base/iioservice ) chromeos-base/protofiles >=dev-util/gperf-3.0.3 >=dev-util/pkgconfig-0.23 arm? ( x11-libs/libdrm ) sys-apps/baselayout
 DESCRIPTION=Open-source version of Google Chrome web browser
 EAPI=7
 HOMEPAGE=http://www.chromium.org/
-IUSE=+afdo_use afdo_verify +accessibility app_shell asan +authpolicy +build_tests cdm_factory_daemon +chrome_debug +cfi cfm chrome_debug_tests chrome_dcheck chrome_internal chrome_media +chrome_remoting clang_tidy component_build cros-debug debug_fission +dwarf5 +fonts goma goma_thinlto +highdpi iioservice internal_gles_conform +libcxx mojo msan +nacl neon oobe_config opengl opengles orderfile_generate +orderfile_use orderfile_verify +runhooks strict_toolchain_checks +thinlto touchview ubsan v4l2_codec v4lplugin vaapi verbose vtable_verify xkbcommon ozone_platform_gbm ozone_platform_cast ozone_platform_headless ozone_platform_egltest ozone_platform_caca ozone_platform_default_gbm ozone_platform_default_cast ozone_platform_default_headless ozone_platform_default_egltest ozone_platform_default_caca +autotest +buildcheck autotest opengles chrome_internal asan coverage fuzzer msan tsan ubsan
+IUSE=+afdo_use afdo_verify +accessibility app_shell asan +authpolicy +build_tests cdm_factory_daemon +chrome_debug +cfi cfm chrome_debug_tests chrome_dcheck chrome_internal chrome_media +chrome_remoting clang_tidy component_build cros-debug debug_fission +dwarf5 +fonts hw_details goma goma_thinlto +highdpi iioservice intel_oemcrypto internal_gles_conform +libcxx libinput mojo msan +nacl neon +oobe_config opengl opengles orderfile_generate +orderfile_use orderfile_verify +runhooks strict_toolchain_checks subpixel_rendering +thinlto touchview ubsan v4l2_codec v4lplugin vaapi verbose vtable_verify xkbcommon ozone_platform_gbm ozone_platform_cast ozone_platform_headless ozone_platform_egltest ozone_platform_caca ozone_platform_default_gbm ozone_platform_default_cast ozone_platform_default_headless ozone_platform_default_egltest ozone_platform_default_caca +autotest +buildcheck autotest opengles chrome_internal asan coverage fuzzer msan tsan ubsan
 KEYWORDS=~*
 LICENSE=BSD-Google chrome_internal? ( Google-TOS )
 PROPERTIES=live
-RDEPEND=app-arch/bzip2 app-crypt/mit-krb5 app-misc/edid-decode authpolicy? ( chromeos-base/authpolicy ) ~chromeos-base/chrome-icu-9999 chromeos-base/gestures chromeos-base/libevdev:= fonts? ( chromeos-base/chromeos-fonts ) chrome_internal? ( chromeos-base/quickoffice ) dev-libs/nspr >=dev-libs/nss-3.12.2 >=media-libs/alsa-lib-1.0.19 media-libs/fontconfig media-libs/libsync x11-libs/libdrm ozone_platform_gbm? ( media-libs/minigbm ) v4lplugin? ( media-libs/libv4lplugins ) >=media-sound/adhd-0.0.1-r310 net-print/cups opengl? ( virtual/opengl ) opengles? ( virtual/opengles ) sys-apps/dbus sys-apps/pciutils virtual/udev sys-libs/libcap chrome_remoting? ( sys-libs/pam ) vaapi? ( x11-libs/libva ) xkbcommon? ( x11-libs/libxkbcommon x11-misc/xkeyboard-config ) accessibility? ( app-accessibility/brltty app-accessibility/espeak-ng app-accessibility/googletts ) libcxx? ( sys-libs/libcxxabi sys-libs/libcxx ) oobe_config? ( chromeos-base/oobe_config ) iioservice? ( chromeos-base/iioservice ) autotest? ( chromeos-base/autotest ) sys-apps/baselayout
+RDEPEND=app-arch/bzip2 app-crypt/mit-krb5 app-misc/edid-decode authpolicy? ( chromeos-base/authpolicy ) ~chromeos-base/chrome-icu-9999 chromeos-base/gestures chromeos-base/libevdev:= fonts? ( chromeos-base/chromeos-fonts ) chrome_internal? ( chromeos-base/quickoffice ) dev-libs/nspr >=dev-libs/nss-3.12.2 libinput? ( dev-libs/libinput:= ) >=media-libs/alsa-lib-1.0.19 media-libs/fontconfig media-libs/libsync x11-libs/libdrm ozone_platform_gbm? ( media-libs/minigbm ) v4lplugin? ( media-libs/libv4lplugins ) >=media-sound/adhd-0.0.1-r310 net-print/cups opengl? ( virtual/opengl ) opengles? ( virtual/opengles ) sys-apps/dbus sys-apps/pciutils virtual/udev sys-libs/libcap chrome_remoting? ( sys-libs/pam ) vaapi? ( x11-libs/libva ) xkbcommon? ( x11-libs/libxkbcommon x11-misc/xkeyboard-config ) accessibility? ( app-accessibility/brltty app-accessibility/espeak-ng app-accessibility/googletts ) libcxx? ( sys-libs/libcxxabi sys-libs/libcxx ) oobe_config? ( chromeos-base/oobe_config ) iioservice? ( chromeos-base/iioservice ) autotest? ( chromeos-base/autotest ) sys-apps/baselayout
 REQUIRED_USE=cfi? ( thinlto ) afdo_verify? ( !afdo_use ) orderfile_generate? ( !orderfile_use ) ^^ ( ozone_platform_default_gbm ozone_platform_default_cast ozone_platform_default_headless ozone_platform_default_egltest ozone_platform_default_caca )
 RESTRICT=network-sandbox mirror
 SLOT=0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	binutils-funcs	6207477a739f6f25d13da27b9cc00160	chromium-source	02ac5d86b66541750756714fe10f8f49	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=faf678f079e260d27258f4a3a3e93f57
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	autotest-deponly	9b1e5d19c437abea0e7c0fa90c192abd	binutils-funcs	6207477a739f6f25d13da27b9cc00160	chromium-source	02ac5d86b66541750756714fe10f8f49	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=2953ff287650ce07af4abf8fb3bbfbe0
diff --git a/metadata/md5-cache/chromeos-base/chromeos-common-script-0.0.1-r280 b/metadata/md5-cache/chromeos-base/chromeos-common-script-0.0.1-r280
deleted file mode 100644
index 870ddd7..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-common-script-0.0.1-r280
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS storage info tools
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-common-script/
-IUSE=direncryption fsverity kernel-3_18 kernel-4_4 prjquota cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_1e7b7af56eebd756a7256d798a6d7680d470250d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_1e7b7af56eebd756a7256d798a6d7680d470250d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=prjquota? ( !kernel-4_4 !kernel-3_18 )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=dc76f6155d413db576d5d4c80a6f05b1
diff --git a/metadata/md5-cache/chromeos-base/chromeos-common-script-0.0.1-r305 b/metadata/md5-cache/chromeos-base/chromeos-common-script-0.0.1-r305
new file mode 100644
index 0000000..878da01
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-common-script-0.0.1-r305
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS storage info tools
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-common-script/
+IUSE=direncryption fsverity kernel-3_18 kernel-4_4 prjquota cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1e7b7af56eebd756a7256d798a6d7680d470250d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1e7b7af56eebd756a7256d798a6d7680d470250d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=prjquota? ( !kernel-4_4 !kernel-3_18 )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=c11fe48492a334edeef7a2233fb889b6
diff --git a/metadata/md5-cache/chromeos-base/chromeos-common-script-9999 b/metadata/md5-cache/chromeos-base/chromeos-common-script-9999
index 96cc706..2f05bdc 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-common-script-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-common-script-9999
@@ -10,5 +10,5 @@
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 REQUIRED_USE=prjquota? ( !kernel-4_4 !kernel-3_18 )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a7a1ef13995eda1a764c1ff1bf7811eb
diff --git a/metadata/md5-cache/chromeos-base/chromeos-config-0.0.2-r129 b/metadata/md5-cache/chromeos-base/chromeos-config-0.0.2-r129
deleted file mode 100644
index 5eea087..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-config-0.0.2-r129
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install setup test unpack
-DEPEND=!fuzzer? ( virtual/chromeos-config-bsp:= )
-DESCRIPTION=Chromium OS-specific configuration
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/config/
-IUSE=fuzzer zephyr_ec cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!fuzzer? ( virtual/chromeos-config-bsp:= )
-SLOT=0/0.0.2-r129
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=bcc6154f2fd6360801633ad512c80db0
diff --git a/metadata/md5-cache/chromeos-base/chromeos-config-0.0.2-r139 b/metadata/md5-cache/chromeos-base/chromeos-config-0.0.2-r139
new file mode 100644
index 0000000..40ea428
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-config-0.0.2-r139
@@ -0,0 +1,14 @@
+BDEPEND=chromeos-base/chromeos-config-host:= dev-vcs/git
+DEFINED_PHASES=compile info install setup test unpack
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= )
+DESCRIPTION=Chromium OS-specific configuration
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/config/
+IUSE=zephyr_ec has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private cros_host cros_workon_tree_6b4d7dca12d53edad5b608ade6042c9c5d935e05
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= )
+SLOT=0/0.0.2-r139
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=548b7dc6c2f373ce562ecdfd2784dd75
diff --git a/metadata/md5-cache/chromeos-base/chromeos-config-9999 b/metadata/md5-cache/chromeos-base/chromeos-config-9999
index 39f6013..1d1dc79 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-config-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-config-9999
@@ -1,14 +1,14 @@
-BDEPEND=dev-vcs/git
+BDEPEND=chromeos-base/chromeos-config-host:= dev-vcs/git
 DEFINED_PHASES=compile info install setup test unpack
-DEPEND=!fuzzer? ( virtual/chromeos-config-bsp:= )
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= )
 DESCRIPTION=Chromium OS-specific configuration
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/config/
-IUSE=fuzzer zephyr_ec cros_host cros_workon_tree_
+IUSE=zephyr_ec has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=!fuzzer? ( virtual/chromeos-config-bsp:= )
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=eae3b4d5a231da06f254509ac8835a6b
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8e48bec0a69c63f9f908a6d2ba75bce7
diff --git a/metadata/md5-cache/chromeos-base/chromeos-config-host-0.0.2-r625 b/metadata/md5-cache/chromeos-base/chromeos-config-host-0.0.2-r625
deleted file mode 100644
index 8768f52..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-config-host-0.0.2-r625
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=>=sys-fs/squashfs-tools-4.3 dev-python/jinja[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] !<chromeos-base/chromeos-config-tools-0.0.4 dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
-DESCRIPTION=Chrome OS configuration host tools
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-config
-IUSE=cros_host cros_workon_tree_aa0612733aca2d5ffa65470f07408228b473ebdb python_targets_python3_6 python_targets_python3_7
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=>=sys-fs/squashfs-tools-4.3 dev-python/jinja[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] !<chromeos-base/chromeos-config-tools-0.0.4 python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
-REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 ) || ( python_targets_python3_6 python_targets_python3_7 )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=bca6412af38b9ddb6278bc5e164ae1e7
diff --git a/metadata/md5-cache/chromeos-base/chromeos-config-host-0.0.2-r645 b/metadata/md5-cache/chromeos-base/chromeos-config-host-0.0.2-r645
new file mode 100644
index 0000000..574783c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-config-host-0.0.2-r645
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=>=sys-fs/squashfs-tools-4.3 dev-python/jinja[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] !<chromeos-base/chromeos-config-tools-0.0.4 dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
+DESCRIPTION=Chrome OS configuration host tools
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-config
+IUSE=cros_host cros_workon_tree_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc python_targets_python3_6 python_targets_python3_7
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=>=sys-fs/squashfs-tools-4.3 dev-python/jinja[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] !<chromeos-base/chromeos-config-tools-0.0.4 python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 ) || ( python_targets_python3_6 python_targets_python3_7 )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=867a620aa5987031fbe4ce56fe7aff4c
diff --git a/metadata/md5-cache/chromeos-base/chromeos-config-host-9999 b/metadata/md5-cache/chromeos-base/chromeos-config-host-9999
index f98706b..8b7669f 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-config-host-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-config-host-9999
@@ -10,5 +10,5 @@
 RDEPEND=>=sys-fs/squashfs-tools-4.3 dev-python/jinja[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] !<chromeos-base/chromeos-config-tools-0.0.4 python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 ) || ( python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=4bf29a8a2f9eeb4256e385f8723142ae
diff --git a/metadata/md5-cache/chromeos-base/chromeos-config-tools-0.0.4-r1780 b/metadata/md5-cache/chromeos-base/chromeos-config-tools-0.0.4-r1780
deleted file mode 100644
index 87fbeb3..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-config-tools-0.0.4-r1780
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS configuration tools
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-config
-IUSE=cros_host cros_workon_tree_4fdfdbe461ccedeaaf176391c0bbb0f74943be45_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_71cce620cf464ad17334cff4d450f8805cd6c507 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_4fdfdbe461ccedeaaf176391c0bbb0f74943be45_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_71cce620cf464ad17334cff4d450f8805cd6c507 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=0cb8cf069570e5a9626d818940e706b4
diff --git a/metadata/md5-cache/chromeos-base/chromeos-config-tools-0.0.4-r1854 b/metadata/md5-cache/chromeos-base/chromeos-config-tools-0.0.4-r1854
new file mode 100644
index 0000000..6a3608d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-config-tools-0.0.4-r1854
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS configuration tools
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-config
+IUSE=cros_host cros_workon_tree_4fdfdbe461ccedeaaf176391c0bbb0f74943be45_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_b45ddf70409958a65c0330dc8f5702e7074f8cc7_9e4d851d5f49d3ff4dd1b7b8a0f59b2650d3242f cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_4fdfdbe461ccedeaaf176391c0bbb0f74943be45_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_b45ddf70409958a65c0330dc8f5702e7074f8cc7_9e4d851d5f49d3ff4dd1b7b8a0f59b2650d3242f cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	gtest	46c8cf72585cc28ac06991a07d69648e	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=01a8317b37479a7afc835ef4c9c0182d
diff --git a/metadata/md5-cache/chromeos-base/chromeos-config-tools-9999 b/metadata/md5-cache/chromeos-base/chromeos-config-tools-9999
index 97be3be..f5bb156 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-config-tools-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-config-tools-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=8d790d7e2adf4f02178bec3ac47bb864
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	gtest	46c8cf72585cc28ac06991a07d69648e	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=99a8757f2f2caf0e1119f2161b3cb1ee
diff --git a/metadata/md5-cache/chromeos-base/chromeos-cr50-0.0.1 b/metadata/md5-cache/chromeos-base/chromeos-cr50-0.0.1
index f9b0ba5..90e2631 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-cr50-0.0.1
+++ b/metadata/md5-cache/chromeos-base/chromeos-cr50-0.0.1
@@ -5,5 +5,5 @@
 LICENSE=BSD-Google
 RDEPEND=chromeos-base/chromeos-cr50-dev chromeos-base/chromeos-cr50-scripts
 SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles//cr50.r0.0.11.w0.5.30.tbz2 gs://chromeos-localmirror/distfiles//cr50.r0.0.11.w0.6.30_FFFF_00000000_00000010.tbz2
-_md5_=dec6e5bb9b3cfa98dbe5e44e1c2058fb
+SRC_URI=gs://chromeos-localmirror/distfiles//cr50.r0.0.11.w0.5.51.tbz2 gs://chromeos-localmirror/distfiles//cr50.r0.0.11.w0.6.51_FFFF_00000000_00000010.tbz2
+_md5_=11de2dd9f56145011866e61335edac2b
diff --git a/metadata/md5-cache/chromeos-base/chromeos-cr50-0.0.1-r103 b/metadata/md5-cache/chromeos-base/chromeos-cr50-0.0.1-r103
deleted file mode 100644
index f9b0ba5..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-cr50-0.0.1-r103
+++ /dev/null
@@ -1,9 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Ebuild to support the Chrome OS CR50 device.
-EAPI=7
-KEYWORDS=*
-LICENSE=BSD-Google
-RDEPEND=chromeos-base/chromeos-cr50-dev chromeos-base/chromeos-cr50-scripts
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles//cr50.r0.0.11.w0.5.30.tbz2 gs://chromeos-localmirror/distfiles//cr50.r0.0.11.w0.6.30_FFFF_00000000_00000010.tbz2
-_md5_=dec6e5bb9b3cfa98dbe5e44e1c2058fb
diff --git a/metadata/md5-cache/chromeos-base/chromeos-cr50-0.0.1-r107 b/metadata/md5-cache/chromeos-base/chromeos-cr50-0.0.1-r107
new file mode 100644
index 0000000..90e2631
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-cr50-0.0.1-r107
@@ -0,0 +1,9 @@
+DEFINED_PHASES=install
+DESCRIPTION=Ebuild to support the Chrome OS CR50 device.
+EAPI=7
+KEYWORDS=*
+LICENSE=BSD-Google
+RDEPEND=chromeos-base/chromeos-cr50-dev chromeos-base/chromeos-cr50-scripts
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles//cr50.r0.0.11.w0.5.51.tbz2 gs://chromeos-localmirror/distfiles//cr50.r0.0.11.w0.6.51_FFFF_00000000_00000010.tbz2
+_md5_=11de2dd9f56145011866e61335edac2b
diff --git a/metadata/md5-cache/chromeos-base/chromeos-cr50-dev-0.0.1-r210 b/metadata/md5-cache/chromeos-base/chromeos-cr50-dev-0.0.1-r210
deleted file mode 100644
index 83707a2..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-cr50-dev-0.0.1-r210
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install setup unpack
-DEPEND=dev-libs/openssl:0= virtual/libusb:1= fuzzer? ( dev-libs/protobuf:= ) fuzzer? ( dev-libs/libprotobuf-mutator:= ) unibuild? ( chromeos-base/chromeos-config:= )
-DESCRIPTION=Google Security Chip firmware code
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/refs/heads/cr50_stab
-IUSE=asan cros_host fuzzer msan quiet ubsan verbose ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_231827d025fd8a333ffb02249aee9960ae19a701_679fa8b14bd105ad9959a0f82eaa928d5b18890d_f3d026c790bd3d7121bb96ed2a4932360d698a73
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!<chromeos-base/chromeos-ec-0.0.2 !<chromeos-base/ec-utils-0.0.2 dev-libs/openssl:0= virtual/libusb:1= fuzzer? ( dev-libs/protobuf:= )
-RESTRICT=binchecks
-SLOT=0/0.0.1-r210
-SRC_URI=gs://chromeos-localmirror/distfiles/cr50.prod.ro.A.0.0.11 gs://chromeos-localmirror/distfiles/cr50.prod.ro.B.0.0.11
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f6218d82c2c098572ac8d680b490496d
diff --git a/metadata/md5-cache/chromeos-base/chromeos-cr50-dev-0.0.1-r312 b/metadata/md5-cache/chromeos-base/chromeos-cr50-dev-0.0.1-r312
new file mode 100644
index 0000000..63364ba
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-cr50-dev-0.0.1-r312
@@ -0,0 +1,16 @@
+BDEPEND=chromeos-base/chromeos-config-host:= dev-vcs/git
+DEFINED_PHASES=compile info install setup unpack
+DEPEND=dev-libs/openssl:0= virtual/libusb:1= fuzzer? ( dev-libs/protobuf:= ) fuzzer? ( dev-libs/libprotobuf-mutator:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= )
+DESCRIPTION=Google Security Chip firmware code
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/refs/heads/cr50_stab
+IUSE=asan cros_host fuzzer msan quiet ubsan verbose has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_4b2d98b4fa1452c25ee79c4eed04c730712b5bf8_2159375e60a21a4f4cd6da052dcc95a4a0dec15d_f3d026c790bd3d7121bb96ed2a4932360d698a73
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!<chromeos-base/chromeos-ec-0.0.2 !<chromeos-base/ec-utils-0.0.2 dev-libs/openssl:0= virtual/libusb:1= fuzzer? ( dev-libs/protobuf:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+RESTRICT=binchecks
+SLOT=0/0.0.1-r312
+SRC_URI=gs://chromeos-localmirror/distfiles/cr50.prod.ro.A.0.0.11 gs://chromeos-localmirror/distfiles/cr50.prod.ro.B.0.0.11
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8e884d956c2704725287177848699d7c
diff --git a/metadata/md5-cache/chromeos-base/chromeos-cr50-dev-9999 b/metadata/md5-cache/chromeos-base/chromeos-cr50-dev-9999
index b3cfe228..6c7ff3af 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-cr50-dev-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-cr50-dev-9999
@@ -1,16 +1,16 @@
-BDEPEND=dev-vcs/git
+BDEPEND=chromeos-base/chromeos-config-host:= dev-vcs/git
 DEFINED_PHASES=compile info install setup unpack
-DEPEND=dev-libs/openssl:0= virtual/libusb:1= fuzzer? ( dev-libs/protobuf:= ) fuzzer? ( dev-libs/libprotobuf-mutator:= ) unibuild? ( chromeos-base/chromeos-config:= )
+DEPEND=dev-libs/openssl:0= virtual/libusb:1= fuzzer? ( dev-libs/protobuf:= ) fuzzer? ( dev-libs/libprotobuf-mutator:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= )
 DESCRIPTION=Google Security Chip firmware code
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/refs/heads/cr50_stab
-IUSE=asan cros_host fuzzer msan quiet ubsan verbose ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_
+IUSE=asan cros_host fuzzer msan quiet ubsan verbose has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=!<chromeos-base/chromeos-ec-0.0.2 !<chromeos-base/ec-utils-0.0.2 dev-libs/openssl:0= virtual/libusb:1= fuzzer? ( dev-libs/protobuf:= )
+RDEPEND=!<chromeos-base/chromeos-ec-0.0.2 !<chromeos-base/ec-utils-0.0.2 dev-libs/openssl:0= virtual/libusb:1= fuzzer? ( dev-libs/protobuf:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
 RESTRICT=binchecks
 SLOT=0/9999
 SRC_URI=gs://chromeos-localmirror/distfiles/cr50.prod.ro.A.0.0.11 gs://chromeos-localmirror/distfiles/cr50.prod.ro.B.0.0.11
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9dde749be52201c10fd56dae70066c90
diff --git a/metadata/md5-cache/chromeos-base/chromeos-cr50-scripts-0.0.1 b/metadata/md5-cache/chromeos-base/chromeos-cr50-scripts-0.0.1
index 520954e..4a7269b 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-cr50-scripts-0.0.1
+++ b/metadata/md5-cache/chromeos-base/chromeos-cr50-scripts-0.0.1
@@ -2,9 +2,10 @@
 DEPEND=virtual/pkgconfig sys-apps/baselayout
 DESCRIPTION=Ebuild to support the Chrome OS Cr50 device.
 EAPI=5
+IUSE=generic_tpm2
 KEYWORDS=*
 LICENSE=BSD-Google
 RDEPEND=chromeos-base/ec-utils !<chromeos-base/chromeos-cr50-0.0.1-r38 sys-apps/baselayout
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=7c113d8f0e5b76f9b6253a971045b24b
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=c77de63ea51182a04a22f940cb60f8c5
diff --git a/metadata/md5-cache/chromeos-base/chromeos-cr50-scripts-0.0.1-r74 b/metadata/md5-cache/chromeos-base/chromeos-cr50-scripts-0.0.1-r74
deleted file mode 100644
index 520954e..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-cr50-scripts-0.0.1-r74
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=install preinst
-DEPEND=virtual/pkgconfig sys-apps/baselayout
-DESCRIPTION=Ebuild to support the Chrome OS Cr50 device.
-EAPI=5
-KEYWORDS=*
-LICENSE=BSD-Google
-RDEPEND=chromeos-base/ec-utils !<chromeos-base/chromeos-cr50-0.0.1-r38 sys-apps/baselayout
-SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=7c113d8f0e5b76f9b6253a971045b24b
diff --git a/metadata/md5-cache/chromeos-base/chromeos-cr50-scripts-0.0.1-r77 b/metadata/md5-cache/chromeos-base/chromeos-cr50-scripts-0.0.1-r77
new file mode 100644
index 0000000..4a7269b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-cr50-scripts-0.0.1-r77
@@ -0,0 +1,11 @@
+DEFINED_PHASES=install preinst
+DEPEND=virtual/pkgconfig sys-apps/baselayout
+DESCRIPTION=Ebuild to support the Chrome OS Cr50 device.
+EAPI=5
+IUSE=generic_tpm2
+KEYWORDS=*
+LICENSE=BSD-Google
+RDEPEND=chromeos-base/ec-utils !<chromeos-base/chromeos-cr50-0.0.1-r38 sys-apps/baselayout
+SLOT=0
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=c77de63ea51182a04a22f940cb60f8c5
diff --git a/metadata/md5-cache/chromeos-base/chromeos-dbus-bindings-0.0.1-r2655 b/metadata/md5-cache/chromeos-base/chromeos-dbus-bindings-0.0.1-r2655
deleted file mode 100644
index 1636e39..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-dbus-bindings-0.0.1-r2655
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/expat sys-apps/dbus >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Utility for building Chrome D-Bus bindings from an XML description
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-dbus-bindings
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e8023258ebab0150d1674664c16f6d197136cc8b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e8023258ebab0150d1674664c16f6d197136cc8b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-libs/expat sys-apps/dbus >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=5781a91295bae57dd912bf90dfc8a5dd
diff --git a/metadata/md5-cache/chromeos-base/chromeos-dbus-bindings-0.0.1-r2685 b/metadata/md5-cache/chromeos-base/chromeos-dbus-bindings-0.0.1-r2685
new file mode 100644
index 0000000..1b0f2e0
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-dbus-bindings-0.0.1-r2685
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/expat sys-apps/dbus >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Utility for building Chrome D-Bus bindings from an XML description
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-dbus-bindings
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_8753ae37f2abfcd79989d4a4d795bfa11b50816f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_8753ae37f2abfcd79989d4a4d795bfa11b50816f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/expat sys-apps/dbus >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=0facefdea618f89cf184e98d949fa786
diff --git a/metadata/md5-cache/chromeos-base/chromeos-dbus-bindings-9999 b/metadata/md5-cache/chromeos-base/chromeos-dbus-bindings-9999
index fdbee6a..2c3e237 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-dbus-bindings-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-dbus-bindings-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=dev-libs/expat sys-apps/dbus >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=5cfd58620a6a3489d6ca905e98192525
diff --git a/metadata/md5-cache/chromeos-base/chromeos-dev-root-0.0.1 b/metadata/md5-cache/chromeos-base/chromeos-dev-root-0.0.1
index 7a5b923..3e9add0 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-dev-root-0.0.1
+++ b/metadata/md5-cache/chromeos-base/chromeos-dev-root-0.0.1
@@ -1,9 +1,9 @@
 DEFINED_PHASES=-
 DESCRIPTION=Install packages that must live in the rootfs in dev images.
-EAPI=4
+EAPI=7
 HOMEPAGE=http://www.chromium.org/
 KEYWORDS=*
 LICENSE=BSD-Google
-RDEPEND=chromeos-base/openssh-server-init virtual/chromeos-bsp-dev-root
+RDEPEND=chromeos-base/openssh-server-init chromeos-base/virtual-usb-printer virtual/chromeos-bsp-dev-root
 SLOT=0
-_md5_=f4774a1d68777d4a7dbb6fc3f7511485
+_md5_=3e90243f4b2738c9fb729517a60f6edf
diff --git a/metadata/md5-cache/chromeos-base/chromeos-dev-root-0.0.1-r3 b/metadata/md5-cache/chromeos-base/chromeos-dev-root-0.0.1-r3
deleted file mode 100644
index 7a5b923..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-dev-root-0.0.1-r3
+++ /dev/null
@@ -1,9 +0,0 @@
-DEFINED_PHASES=-
-DESCRIPTION=Install packages that must live in the rootfs in dev images.
-EAPI=4
-HOMEPAGE=http://www.chromium.org/
-KEYWORDS=*
-LICENSE=BSD-Google
-RDEPEND=chromeos-base/openssh-server-init virtual/chromeos-bsp-dev-root
-SLOT=0
-_md5_=f4774a1d68777d4a7dbb6fc3f7511485
diff --git a/metadata/md5-cache/chromeos-base/chromeos-dev-root-0.0.1-r4 b/metadata/md5-cache/chromeos-base/chromeos-dev-root-0.0.1-r4
new file mode 100644
index 0000000..3e9add0
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-dev-root-0.0.1-r4
@@ -0,0 +1,9 @@
+DEFINED_PHASES=-
+DESCRIPTION=Install packages that must live in the rootfs in dev images.
+EAPI=7
+HOMEPAGE=http://www.chromium.org/
+KEYWORDS=*
+LICENSE=BSD-Google
+RDEPEND=chromeos-base/openssh-server-init chromeos-base/virtual-usb-printer virtual/chromeos-bsp-dev-root
+SLOT=0
+_md5_=3e90243f4b2738c9fb729517a60f6edf
diff --git a/metadata/md5-cache/chromeos-base/chromeos-ec-0.0.2-r10238 b/metadata/md5-cache/chromeos-base/chromeos-ec-0.0.2-r10238
deleted file mode 100644
index a98ef9b..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-ec-0.0.2-r10238
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=>=chromeos-base/chromeos-config-host-0.0.2 dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile info install prepare setup test unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot )
-DESCRIPTION=Embedded Controller firmware code
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
-IUSE=ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ef831ef09b8fdc0da7cceb25def086f853ae97cd_f3d026c790bd3d7121bb96ed2a4932360d698a73 quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test cros_host cros_workon_tree_ef831ef09b8fdc0da7cceb25def086f853ae97cd_f3d026c790bd3d7121bb96ed2a4932360d698a73
-KEYWORDS=*
-LICENSE=CrOS-EC
-PROPERTIES=live live
-RDEPEND=fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
-RESTRICT=strip
-SLOT=0/0.0.2-r10238
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	12499835cbfa67cb99a77b6a1e57e313	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5c906ec9366e5740bc2f9e411bb7efb6
diff --git a/metadata/md5-cache/chromeos-base/chromeos-ec-0.0.2-r11055 b/metadata/md5-cache/chromeos-base/chromeos-ec-0.0.2-r11055
new file mode 100644
index 0000000..5f59bf0
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-ec-0.0.2-r11055
@@ -0,0 +1,15 @@
+BDEPEND=>=chromeos-base/chromeos-config-host-0.0.2 chromeos-base/chromeos-config-host:= dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git
+DEFINED_PHASES=compile info install prepare setup test unpack
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot )
+DESCRIPTION=Embedded Controller firmware code
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
+IUSE=has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_4211779d15bde871d051b94a1d7e6dd6ed1aa8f1_f3d026c790bd3d7121bb96ed2a4932360d698a73 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test cros_host cros_workon_tree_4211779d15bde871d051b94a1d7e6dd6ed1aa8f1_f3d026c790bd3d7121bb96ed2a4932360d698a73
+KEYWORDS=*
+LICENSE=CrOS-EC
+PROPERTIES=live live
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
+RESTRICT=strip
+SLOT=0/0.0.2-r11055
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	ca58ac724e837012f5f60d5ece713fb4	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=884693d204d6b49b2f96dd879e62a2fd
diff --git a/metadata/md5-cache/chromeos-base/chromeos-ec-9999 b/metadata/md5-cache/chromeos-base/chromeos-ec-9999
index cc106a8..94501f4 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-ec-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-ec-9999
@@ -1,15 +1,15 @@
-BDEPEND=>=chromeos-base/chromeos-config-host-0.0.2 dev-vcs/git dev-vcs/git
+BDEPEND=>=chromeos-base/chromeos-config-host-0.0.2 chromeos-base/chromeos-config-host:= dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git
 DEFINED_PHASES=compile info install prepare setup test unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot )
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot )
 DESCRIPTION=Embedded Controller firmware code
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
-IUSE=ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test cros_host cros_workon_tree_
+IUSE=has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=CrOS-EC
 PROPERTIES=live live
-RDEPEND=fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
 RESTRICT=strip
 SLOT=0/9999
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	12499835cbfa67cb99a77b6a1e57e313	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	ca58ac724e837012f5f60d5ece713fb4	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5a47c786017c4178806a7da1f21ac8c1
diff --git a/metadata/md5-cache/chromeos-base/chromeos-ec-headers-0.0.1-r5531 b/metadata/md5-cache/chromeos-base/chromeos-ec-headers-0.0.1-r5531
deleted file mode 100644
index 2a32952..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-ec-headers-0.0.1-r5531
+++ /dev/null
@@ -1,12 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install setup unpack
-DESCRIPTION=Exported headers from the embedded controller codebase.
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os/ec-development
-IUSE=cros_host cros_workon_tree_ef831ef09b8fdc0da7cceb25def086f853ae97cd_231827d025fd8a333ffb02249aee9960ae19a701
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-SLOT=0/0.0.1-r5531
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=dbd77a3534859c0a04e1e0b54468fa8d
diff --git a/metadata/md5-cache/chromeos-base/chromeos-ec-headers-0.0.1-r6418 b/metadata/md5-cache/chromeos-base/chromeos-ec-headers-0.0.1-r6418
new file mode 100644
index 0000000..8e3e276
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-ec-headers-0.0.1-r6418
@@ -0,0 +1,12 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install setup unpack
+DESCRIPTION=Exported headers from the embedded controller codebase.
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os/ec-development
+IUSE=cros_host cros_workon_tree_4211779d15bde871d051b94a1d7e6dd6ed1aa8f1_4b2d98b4fa1452c25ee79c4eed04c730712b5bf8
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+SLOT=0/0.0.1-r6418
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ec469b251204327223671925d67ec80e
diff --git a/metadata/md5-cache/chromeos-base/chromeos-ec-headers-9999 b/metadata/md5-cache/chromeos-base/chromeos-ec-headers-9999
index 6653125..9b696d2 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-ec-headers-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-ec-headers-9999
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1791094695d150f595c21f2092e13971
diff --git a/metadata/md5-cache/chromeos-base/chromeos-firmware-null-0.0.3-r162 b/metadata/md5-cache/chromeos-base/chromeos-firmware-null-0.0.3-r162
deleted file mode 100644
index 57093a6..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-firmware-null-0.0.3-r162
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile info install setup test unpack
-DEPEND=chromeos-base/vboot_reference unibuild? ( chromeos-base/chromeos-config ) app-arch/gzip app-arch/sharutils app-arch/tar sys-apps/util-linux bootimage? ( sys-boot/chromeos-bootimage ) cros_ec? ( chromeos-base/chromeos-ec ) zephyr? ( chromeos-base/chromeos-zephyr )
-DESCRIPTION=Chrome OS Firmware (Template - change to board name)
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/firmware/
-IUSE=cros_host cros_workon_tree_6f2eebf22cd242e9c01723dd03405fdd47e15478 cros_host cros_workon_tree_6f2eebf22cd242e9c01723dd03405fdd47e15478 bootimage cros_ec cros_ish tot_firmware unibuild zephyr zephyr_ec
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/vboot_reference unibuild? ( chromeos-base/chromeos-config ) app-arch/gzip app-arch/sharutils app-arch/tar sys-apps/util-linux chromeos-base/vpd sys-apps/flashrom sys-apps/mosys cros_ish? ( chromeos-base/chromeos-ish )
-RESTRICT=mirror
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-firmware	761bba6ac3bce60f271dc3194699687c	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=5c92f6225ec02a7b3494266a9982e45c
diff --git a/metadata/md5-cache/chromeos-base/chromeos-firmware-null-0.0.3-r163 b/metadata/md5-cache/chromeos-base/chromeos-firmware-null-0.0.3-r163
new file mode 100644
index 0000000..2261b19
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-firmware-null-0.0.3-r163
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile info install setup test unpack
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) chromeos-base/vboot_reference unibuild? ( chromeos-base/chromeos-config ) app-arch/gzip app-arch/sharutils app-arch/tar sys-apps/util-linux bootimage? ( sys-boot/chromeos-bootimage ) cros_ec? ( chromeos-base/chromeos-ec ) zephyr_ec? ( chromeos-base/chromeos-zephyr )
+DESCRIPTION=Chrome OS Firmware (Template - change to board name)
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/firmware/
+IUSE=cros_host cros_workon_tree_449aa2699c92e601b0850e8ceb1ce708be542a95 cros_host cros_workon_tree_449aa2699c92e601b0850e8ceb1ce708be542a95 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild bootimage cros_ec cros_ish tot_firmware unibuild zephyr_ec
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) chromeos-base/vboot_reference unibuild? ( chromeos-base/chromeos-config ) app-arch/gzip app-arch/sharutils app-arch/tar sys-apps/util-linux chromeos-base/vpd sys-apps/flashrom sys-apps/mosys cros_ish? ( chromeos-base/chromeos-ish )
+RESTRICT=mirror
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-firmware	af8b6205e77f2a6312e83fa6e4f8b83e	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=09f9956fd230010aeb5584fd43b3e447
diff --git a/metadata/md5-cache/chromeos-base/chromeos-firmware-null-9999 b/metadata/md5-cache/chromeos-base/chromeos-firmware-null-9999
index 5dc409e..3e69c1d 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-firmware-null-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-firmware-null-9999
@@ -1,14 +1,14 @@
 DEFINED_PHASES=compile info install setup test unpack
-DEPEND=chromeos-base/vboot_reference unibuild? ( chromeos-base/chromeos-config ) app-arch/gzip app-arch/sharutils app-arch/tar sys-apps/util-linux bootimage? ( sys-boot/chromeos-bootimage ) cros_ec? ( chromeos-base/chromeos-ec ) zephyr? ( chromeos-base/chromeos-zephyr )
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) chromeos-base/vboot_reference unibuild? ( chromeos-base/chromeos-config ) app-arch/gzip app-arch/sharutils app-arch/tar sys-apps/util-linux bootimage? ( sys-boot/chromeos-bootimage ) cros_ec? ( chromeos-base/chromeos-ec ) zephyr_ec? ( chromeos-base/chromeos-zephyr )
 DESCRIPTION=Chrome OS Firmware (Template - change to board name)
 EAPI=5
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/firmware/
-IUSE=cros_host cros_workon_tree_ cros_host cros_workon_tree_ bootimage cros_ec cros_ish tot_firmware unibuild zephyr zephyr_ec
+IUSE=cros_host cros_workon_tree_ cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild bootimage cros_ec cros_ish tot_firmware unibuild zephyr_ec
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/vboot_reference unibuild? ( chromeos-base/chromeos-config ) app-arch/gzip app-arch/sharutils app-arch/tar sys-apps/util-linux chromeos-base/vpd sys-apps/flashrom sys-apps/mosys cros_ish? ( chromeos-base/chromeos-ish )
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) chromeos-base/vboot_reference unibuild? ( chromeos-base/chromeos-config ) app-arch/gzip app-arch/sharutils app-arch/tar sys-apps/util-linux chromeos-base/vpd sys-apps/flashrom sys-apps/mosys cros_ish? ( chromeos-base/chromeos-ish )
 RESTRICT=mirror
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-firmware	761bba6ac3bce60f271dc3194699687c	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-firmware	af8b6205e77f2a6312e83fa6e4f8b83e	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=de6ecd6d5e24caf9d8a8cf4f989341c6
diff --git a/metadata/md5-cache/chromeos-base/chromeos-fonts-0.0.1-r48 b/metadata/md5-cache/chromeos-base/chromeos-fonts-0.0.1-r49
similarity index 100%
rename from metadata/md5-cache/chromeos-base/chromeos-fonts-0.0.1-r48
rename to metadata/md5-cache/chromeos-base/chromeos-fonts-0.0.1-r49
diff --git a/metadata/md5-cache/chromeos-base/chromeos-fpmcu-unittests-0.0.1-r2095 b/metadata/md5-cache/chromeos-base/chromeos-fpmcu-unittests-0.0.1-r2095
deleted file mode 100644
index db51089..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-fpmcu-unittests-0.0.1-r2095
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=>=chromeos-base/chromeos-config-host-0.0.2 dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile info install prepare setup test unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot )
-DESCRIPTION=ChromeOS fingerprint MCU unittest binaries
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
-IUSE=ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ef831ef09b8fdc0da7cceb25def086f853ae97cd_f3d026c790bd3d7121bb96ed2a4932360d698a73 quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test cros_host cros_workon_tree_ef831ef09b8fdc0da7cceb25def086f853ae97cd_f3d026c790bd3d7121bb96ed2a4932360d698a73
-KEYWORDS=*
-LICENSE=CrOS-EC
-PROPERTIES=live live
-RDEPEND=fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
-RESTRICT=binchecks
-SLOT=0/0.0.1-r2095
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	12499835cbfa67cb99a77b6a1e57e313	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b4f1958ff22e182c5197a12e6bbe8e8d
diff --git a/metadata/md5-cache/chromeos-base/chromeos-fpmcu-unittests-0.0.1-r2912 b/metadata/md5-cache/chromeos-base/chromeos-fpmcu-unittests-0.0.1-r2912
new file mode 100644
index 0000000..ceb7be4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-fpmcu-unittests-0.0.1-r2912
@@ -0,0 +1,15 @@
+BDEPEND=>=chromeos-base/chromeos-config-host-0.0.2 chromeos-base/chromeos-config-host:= dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git
+DEFINED_PHASES=compile info install prepare setup test unpack
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot )
+DESCRIPTION=ChromeOS fingerprint MCU unittest binaries
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
+IUSE=has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_4211779d15bde871d051b94a1d7e6dd6ed1aa8f1_f3d026c790bd3d7121bb96ed2a4932360d698a73 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test cros_host cros_workon_tree_4211779d15bde871d051b94a1d7e6dd6ed1aa8f1_f3d026c790bd3d7121bb96ed2a4932360d698a73
+KEYWORDS=*
+LICENSE=CrOS-EC
+PROPERTIES=live live
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
+RESTRICT=binchecks
+SLOT=0/0.0.1-r2912
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	ca58ac724e837012f5f60d5ece713fb4	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=46546462703871b9a6920b85eeb4838b
diff --git a/metadata/md5-cache/chromeos-base/chromeos-fpmcu-unittests-9999 b/metadata/md5-cache/chromeos-base/chromeos-fpmcu-unittests-9999
index ab9a0d3..7e75639 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-fpmcu-unittests-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-fpmcu-unittests-9999
@@ -1,15 +1,15 @@
-BDEPEND=>=chromeos-base/chromeos-config-host-0.0.2 dev-vcs/git dev-vcs/git
+BDEPEND=>=chromeos-base/chromeos-config-host-0.0.2 chromeos-base/chromeos-config-host:= dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git
 DEFINED_PHASES=compile info install prepare setup test unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot )
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot )
 DESCRIPTION=ChromeOS fingerprint MCU unittest binaries
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
-IUSE=ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test cros_host cros_workon_tree_
+IUSE=has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=CrOS-EC
 PROPERTIES=live live
-RDEPEND=fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
 RESTRICT=binchecks
 SLOT=0/9999
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	12499835cbfa67cb99a77b6a1e57e313	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	ca58ac724e837012f5f60d5ece713fb4	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6ae431bb3209635d2dfb2ad1c59595be
diff --git a/metadata/md5-cache/chromeos-base/chromeos-imageburner-0.0.1-r3133 b/metadata/md5-cache/chromeos-base/chromeos-imageburner-0.0.1-r3133
deleted file mode 100644
index df6a81c..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-imageburner-0.0.1-r3133
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=sys-apps/rootdev chromeos-base/system_api >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Image-burning service for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/image-burner/
-IUSE=user_session_isolation cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_78bbddcb5c152ba63cb9408b189179ad60cfd2bc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_78bbddcb5c152ba63cb9408b189179ad60cfd2bc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=sys-apps/rootdev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=949071627044a4e9f4c81bc2f9b0d1cc
diff --git a/metadata/md5-cache/chromeos-base/chromeos-imageburner-0.0.1-r3158 b/metadata/md5-cache/chromeos-base/chromeos-imageburner-0.0.1-r3158
new file mode 100644
index 0000000..3ee8fa8
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-imageburner-0.0.1-r3158
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=sys-apps/rootdev chromeos-base/system_api >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Image-burning service for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/image-burner/
+IUSE=user_session_isolation cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_78bbddcb5c152ba63cb9408b189179ad60cfd2bc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_78bbddcb5c152ba63cb9408b189179ad60cfd2bc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=sys-apps/rootdev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=fc2a9f2512b4fbd56bb1234ef7a88b0b
diff --git a/metadata/md5-cache/chromeos-base/chromeos-imageburner-9999 b/metadata/md5-cache/chromeos-base/chromeos-imageburner-9999
index 9f76559..46e4fb8 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-imageburner-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-imageburner-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=sys-apps/rootdev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=6f5b057fae5d1ab142faa02352baf4bf
diff --git a/metadata/md5-cache/chromeos-base/chromeos-init-0.0.25-r4299 b/metadata/md5-cache/chromeos-base/chromeos-init-0.0.25-r4299
deleted file mode 100644
index 6a52fe0..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-init-0.0.25-r4299
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/vboot_reference:= sys-apps/rootdev:= test? ( sys-process/psmisc dev-util/shflags dev-util/shunit2 sys-apps/diffutils ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Upstart init scripts for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/init/
-IUSE=arcpp arcvm cros_embedded +debugd +encrypted_stateful +encrypted_reboot_vault frecon lvm_stateful_partition kernel-3_18 +midi -s3halt +syslog systemd +udev vivid vtconsole cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_895c06f0f8e72deaf75137b0c309d0d15da65e21_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_895c06f0f8e72deaf75137b0c309d0d15da65e21_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/vboot_reference:= sys-apps/rootdev:= app-arch/tar app-misc/jq chromeos-base/bootstat !chromeos-base/chromeos-disableecho chromeos-base/chromeos-common-script chromeos-base/tty sys-apps/upstart !systemd? ( sys-apps/systemd-tmpfiles ) sys-process/lsof virtual/chromeos-bootcomplete !cros_embedded? ( chromeos-base/common-assets chromeos-base/chromeos-storage-info chromeos-base/swap-init sys-fs/e2fsprogs ) frecon? ( sys-apps/frecon ) virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=e89c9bb54cadf6eb4c07cc2030d307ee
diff --git a/metadata/md5-cache/chromeos-base/chromeos-init-0.0.25-r4368 b/metadata/md5-cache/chromeos-base/chromeos-init-0.0.25-r4368
new file mode 100644
index 0000000..6b9f49f
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-init-0.0.25-r4368
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/vboot_reference:= sys-apps/rootdev:= test? ( sys-process/psmisc dev-util/shflags dev-util/shunit2 sys-apps/diffutils ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Upstart init scripts for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/init/
+IUSE=arcpp arcvm cros_embedded +encrypted_stateful +encrypted_reboot_vault frecon lvm_stateful_partition kernel-3_18 +midi +oobe_config -s3halt +syslog systemd +udev vivid vtconsole cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_110abcb177aa416db1624787c2423746d7afe9b5_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_110abcb177aa416db1624787c2423746d7afe9b5_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/vboot_reference:= sys-apps/rootdev:= app-arch/tar app-misc/jq chromeos-base/bootstat !chromeos-base/chromeos-disableecho chromeos-base/chromeos-common-script chromeos-base/tty oobe_config? ( chromeos-base/oobe_config ) sys-apps/upstart !systemd? ( sys-apps/systemd-tmpfiles ) sys-process/lsof virtual/chromeos-bootcomplete !cros_embedded? ( chromeos-base/common-assets chromeos-base/chromeos-storage-info chromeos-base/swap-init sys-fs/e2fsprogs ) frecon? ( sys-apps/frecon ) virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=f1b5f9c8a7c698d3ac8ef54288fb46dc
diff --git a/metadata/md5-cache/chromeos-base/chromeos-init-9999 b/metadata/md5-cache/chromeos-base/chromeos-init-9999
index d9b807b..ceb5863 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-init-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-init-9999
@@ -4,11 +4,11 @@
 DESCRIPTION=Upstart init scripts for Chromium OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/init/
-IUSE=arcpp arcvm cros_embedded +debugd +encrypted_stateful +encrypted_reboot_vault frecon lvm_stateful_partition kernel-3_18 +midi -s3halt +syslog systemd +udev vivid vtconsole cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=arcpp arcvm cros_embedded +encrypted_stateful +encrypted_reboot_vault frecon lvm_stateful_partition kernel-3_18 +midi +oobe_config -s3halt +syslog systemd +udev vivid vtconsole cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/vboot_reference:= sys-apps/rootdev:= app-arch/tar app-misc/jq chromeos-base/bootstat !chromeos-base/chromeos-disableecho chromeos-base/chromeos-common-script chromeos-base/tty sys-apps/upstart !systemd? ( sys-apps/systemd-tmpfiles ) sys-process/lsof virtual/chromeos-bootcomplete !cros_embedded? ( chromeos-base/common-assets chromeos-base/chromeos-storage-info chromeos-base/swap-init sys-fs/e2fsprogs ) frecon? ( sys-apps/frecon ) virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/vboot_reference:= sys-apps/rootdev:= app-arch/tar app-misc/jq chromeos-base/bootstat !chromeos-base/chromeos-disableecho chromeos-base/chromeos-common-script chromeos-base/tty oobe_config? ( chromeos-base/oobe_config ) sys-apps/upstart !systemd? ( sys-apps/systemd-tmpfiles ) sys-process/lsof virtual/chromeos-bootcomplete !cros_embedded? ( chromeos-base/common-assets chromeos-base/chromeos-storage-info chromeos-base/swap-init sys-fs/e2fsprogs ) frecon? ( sys-apps/frecon ) virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=6417e6e7fe728da10a45f4195cf09ff8
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=06b3904c044991e0bae240b0e924de86
diff --git a/metadata/md5-cache/chromeos-base/chromeos-initramfs-0.0.1-r429 b/metadata/md5-cache/chromeos-base/chromeos-initramfs-0.0.1-r429
deleted file mode 100644
index 307ede9..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-initramfs-0.0.1-r429
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile info install prepare setup unpack
-DEPEND=factory_netboot_ramfs? ( app-arch/lbzip2 app-arch/pigz app-arch/sharutils app-misc/jq app-shells/bash chromeos-base/chromeos-base chromeos-base/chromeos-installer chromeos-base/chromeos-installshim chromeos-base/chromeos-storage-info chromeos-base/ec-utils chromeos-base/factory_installer chromeos-base/vboot_reference chromeos-base/vpd dev-libs/openssl:0= dev-util/shflags dev-util/xxd net-misc/curl net-misc/htpdate net-misc/uftp net-misc/wget sys-apps/coreutils sys-apps/flashrom sys-apps/iproute2 sys-apps/mosys sys-apps/util-linux sys-fs/dosfstools sys-fs/e2fsprogs sys-libs/ncurses virtual/udev ) factory_shim_ramfs? ( chromeos-base/factory_installer chromeos-base/vboot_reference ) recovery_ramfs? ( chromeos-base/chromeos-installer chromeos-base/common-assets chromeos-base/vboot_reference chromeos-base/vpd sys-apps/flashrom sys-apps/pv virtual/assets virtual/chromeos-regions ) hypervisor_ramfs? ( chromeos-base/crosvm chromeos-base/sirenia virtual/linux-sources ) minios_ramfs? ( chromeos-base/minios dev-util/strace net-misc/curl net-misc/dhcp net-misc/dhcpcd net-wireless/wpa_supplicant-2_9 chromeos-base/minijail chromeos-base/chromeos-installer chromeos-base/factory_installer chromeos-base/common-assets chromeos-base/vboot_reference chromeos-base/vpd sys-apps/flashrom sys-apps/pv virtual/assets virtual/chromeos-regions ) sys-apps/busybox[-make-symlinks] sys-fs/lvm2 virtual/chromeos-bsp-initramfs chromeos-base/chromeos-init sys-apps/frecon-lite power_management? ( chromeos-base/power_manager ) unibuild? ( chromeos-base/chromeos-config ) chromeos-base/chromeos-config-tools
-DESCRIPTION=Create Chrome OS initramfs
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/initramfs/
-IUSE=+cros_ec_utils detachable device_tree +interactive_recovery legacy_firmware_ui -mtd +power_management physical_presence_power physical_presence_recovery unibuild +oobe_config factory_netboot_ramfs factory_shim_ramfs hypervisor_ramfs recovery_ramfs minios_ramfs cros_host cros_workon_tree_d2f3f9e688579f2bd08ba34bb2fbe237ba83bd1c board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-REQUIRED_USE=|| ( factory_netboot_ramfs factory_shim_ramfs hypervisor_ramfs recovery_ramfs minios_ramfs )
-SLOT=0
-_eclasses_=cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=0bdce7569f58a480b3bf3faa70d5193f
diff --git a/metadata/md5-cache/chromeos-base/chromeos-initramfs-0.0.1-r451 b/metadata/md5-cache/chromeos-base/chromeos-initramfs-0.0.1-r451
new file mode 100644
index 0000000..356e4a0
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-initramfs-0.0.1-r451
@@ -0,0 +1,14 @@
+BDEPEND=hypervisor_ramfs? ( chromeos-base/sirenia-tools ) dev-vcs/git
+DEFINED_PHASES=compile info install prepare setup unpack
+DEPEND=factory_netboot_ramfs? ( app-arch/lbzip2 app-arch/pigz app-arch/sharutils app-misc/jq app-shells/bash chromeos-base/chromeos-base chromeos-base/chromeos-installer chromeos-base/chromeos-installshim chromeos-base/chromeos-storage-info chromeos-base/ec-utils chromeos-base/factory_installer chromeos-base/vboot_reference chromeos-base/vpd dev-libs/openssl:0= dev-util/shflags dev-util/xxd net-misc/curl net-misc/htpdate net-misc/uftp net-misc/wget sys-apps/coreutils sys-apps/flashrom sys-apps/iproute2 sys-apps/mosys sys-apps/util-linux sys-fs/dosfstools sys-fs/e2fsprogs sys-libs/ncurses virtual/udev ) factory_shim_ramfs? ( chromeos-base/factory_installer chromeos-base/vboot_reference ) recovery_ramfs? ( chromeos-base/chromeos-installer chromeos-base/common-assets chromeos-base/vboot_reference chromeos-base/vpd sys-apps/flashrom sys-apps/pv virtual/assets virtual/chromeos-regions ) hypervisor_ramfs? ( chromeos-base/crosvm chromeos-base/sirenia virtual/linux-sources ) minios_ramfs? ( chromeos-base/minios dev-util/strace net-misc/curl net-misc/dhcp net-misc/dhcpcd net-wireless/wpa_supplicant-cros chromeos-base/minijail chromeos-base/chromeos-installer chromeos-base/factory_installer chromeos-base/common-assets chromeos-base/vboot_reference chromeos-base/vpd sys-apps/flashrom sys-apps/pv virtual/assets virtual/chromeos-regions ) sys-apps/busybox[-make-symlinks] sys-fs/lvm2 virtual/chromeos-bsp-initramfs chromeos-base/chromeos-init sys-apps/frecon-lite power_management? ( chromeos-base/power_manager ) unibuild? ( chromeos-base/chromeos-config ) chromeos-base/chromeos-config-tools
+DESCRIPTION=Create Chrome OS initramfs
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/initramfs/
+IUSE=+cros_ec_utils detachable device_tree +interactive_recovery legacy_firmware_ui -mtd +power_management physical_presence_power physical_presence_recovery unibuild +oobe_config factory_netboot_ramfs factory_shim_ramfs hypervisor_ramfs recovery_ramfs minios_ramfs cros_host cros_workon_tree_557b85d49be1b206c72a44485e7251262339c00f board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+REQUIRED_USE=|| ( factory_netboot_ramfs factory_shim_ramfs hypervisor_ramfs recovery_ramfs minios_ramfs )
+SLOT=0
+_eclasses_=cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7856c3e27280d5e86f0e1e9abe2296f2
diff --git a/metadata/md5-cache/chromeos-base/chromeos-initramfs-9999 b/metadata/md5-cache/chromeos-base/chromeos-initramfs-9999
index 852d5c1..c834062 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-initramfs-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-initramfs-9999
@@ -1,13 +1,14 @@
+BDEPEND=hypervisor_ramfs? ( chromeos-base/sirenia-tools ) dev-vcs/git
 DEFINED_PHASES=compile info install prepare setup unpack
-DEPEND=factory_netboot_ramfs? ( app-arch/lbzip2 app-arch/pigz app-arch/sharutils app-misc/jq app-shells/bash chromeos-base/chromeos-base chromeos-base/chromeos-installer chromeos-base/chromeos-installshim chromeos-base/chromeos-storage-info chromeos-base/ec-utils chromeos-base/factory_installer chromeos-base/vboot_reference chromeos-base/vpd dev-libs/openssl:0= dev-util/shflags dev-util/xxd net-misc/curl net-misc/htpdate net-misc/uftp net-misc/wget sys-apps/coreutils sys-apps/flashrom sys-apps/iproute2 sys-apps/mosys sys-apps/util-linux sys-fs/dosfstools sys-fs/e2fsprogs sys-libs/ncurses virtual/udev ) factory_shim_ramfs? ( chromeos-base/factory_installer chromeos-base/vboot_reference ) recovery_ramfs? ( chromeos-base/chromeos-installer chromeos-base/common-assets chromeos-base/vboot_reference chromeos-base/vpd sys-apps/flashrom sys-apps/pv virtual/assets virtual/chromeos-regions ) hypervisor_ramfs? ( chromeos-base/crosvm chromeos-base/sirenia virtual/linux-sources ) minios_ramfs? ( chromeos-base/minios dev-util/strace net-misc/curl net-misc/dhcp net-misc/dhcpcd net-wireless/wpa_supplicant-2_9 chromeos-base/minijail chromeos-base/chromeos-installer chromeos-base/factory_installer chromeos-base/common-assets chromeos-base/vboot_reference chromeos-base/vpd sys-apps/flashrom sys-apps/pv virtual/assets virtual/chromeos-regions ) sys-apps/busybox[-make-symlinks] sys-fs/lvm2 virtual/chromeos-bsp-initramfs chromeos-base/chromeos-init sys-apps/frecon-lite power_management? ( chromeos-base/power_manager ) unibuild? ( chromeos-base/chromeos-config ) chromeos-base/chromeos-config-tools
+DEPEND=factory_netboot_ramfs? ( app-arch/lbzip2 app-arch/pigz app-arch/sharutils app-misc/jq app-shells/bash chromeos-base/chromeos-base chromeos-base/chromeos-installer chromeos-base/chromeos-installshim chromeos-base/chromeos-storage-info chromeos-base/ec-utils chromeos-base/factory_installer chromeos-base/vboot_reference chromeos-base/vpd dev-libs/openssl:0= dev-util/shflags dev-util/xxd net-misc/curl net-misc/htpdate net-misc/uftp net-misc/wget sys-apps/coreutils sys-apps/flashrom sys-apps/iproute2 sys-apps/mosys sys-apps/util-linux sys-fs/dosfstools sys-fs/e2fsprogs sys-libs/ncurses virtual/udev ) factory_shim_ramfs? ( chromeos-base/factory_installer chromeos-base/vboot_reference ) recovery_ramfs? ( chromeos-base/chromeos-installer chromeos-base/common-assets chromeos-base/vboot_reference chromeos-base/vpd sys-apps/flashrom sys-apps/pv virtual/assets virtual/chromeos-regions ) hypervisor_ramfs? ( chromeos-base/crosvm chromeos-base/sirenia virtual/linux-sources ) minios_ramfs? ( chromeos-base/minios dev-util/strace net-misc/curl net-misc/dhcp net-misc/dhcpcd net-wireless/wpa_supplicant-cros chromeos-base/minijail chromeos-base/chromeos-installer chromeos-base/factory_installer chromeos-base/common-assets chromeos-base/vboot_reference chromeos-base/vpd sys-apps/flashrom sys-apps/pv virtual/assets virtual/chromeos-regions ) sys-apps/busybox[-make-symlinks] sys-fs/lvm2 virtual/chromeos-bsp-initramfs chromeos-base/chromeos-init sys-apps/frecon-lite power_management? ( chromeos-base/power_manager ) unibuild? ( chromeos-base/chromeos-config ) chromeos-base/chromeos-config-tools
 DESCRIPTION=Create Chrome OS initramfs
-EAPI=6
+EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/initramfs/
-IUSE=+cros_ec_utils detachable device_tree +interactive_recovery legacy_firmware_ui -mtd +power_management physical_presence_power physical_presence_recovery unibuild +oobe_config factory_netboot_ramfs factory_shim_ramfs hypervisor_ramfs recovery_ramfs minios_ramfs cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild
+IUSE=+cros_ec_utils detachable device_tree +interactive_recovery legacy_firmware_ui -mtd +power_management physical_presence_power physical_presence_recovery unibuild +oobe_config factory_netboot_ramfs factory_shim_ramfs hypervisor_ramfs recovery_ramfs minios_ramfs cros_host cros_workon_tree_ board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
 REQUIRED_USE=|| ( factory_netboot_ramfs factory_shim_ramfs hypervisor_ramfs recovery_ramfs minios_ramfs )
 SLOT=0
-_eclasses_=cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=766cce8f7ec149bb9bb1865b8adb7143
+_eclasses_=cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=25a6ed1838c057f61a8e2ec0470aff59
diff --git a/metadata/md5-cache/chromeos-base/chromeos-installer-0.0.3-r3492 b/metadata/md5-cache/chromeos-base/chromeos-installer-0.0.3-r3492
deleted file mode 100644
index ba5aba5..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-installer-0.0.3-r3492
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libbrillo:= chromeos-base/vboot_reference chromeos-base/verity dev-libs/openssl:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= virtual/pkgconfig
-DESCRIPTION=Chrome OS Installer
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/installer/
-IUSE=cros_embedded enable_slow_boot_notify -mtd pam systemd +oobe_config lvm_stateful_partition cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_186518012127f8b531f1bb71d661edbbe08ac304_33de53739dbe0fd2911d58694b622539ef0a2416_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_186518012127f8b531f1bb71d661edbbe08ac304_33de53739dbe0fd2911d58694b622539ef0a2416_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libbrillo:= chromeos-base/vboot_reference chromeos-base/verity pam? ( app-admin/sudo ) chromeos-base/chromeos-common-script !cros_embedded? ( chromeos-base/chromeos-storage-info ) oobe_config? ( chromeos-base/oobe_config ) dev-libs/openssl:0= dev-util/shflags sys-apps/rootdev sys-apps/util-linux sys-apps/which sys-fs/e2fsprogs >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=2a1145ca7788bf4166a654eb3017219d
diff --git a/metadata/md5-cache/chromeos-base/chromeos-installer-0.0.3-r3525 b/metadata/md5-cache/chromeos-base/chromeos-installer-0.0.3-r3525
new file mode 100644
index 0000000..48687b0
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-installer-0.0.3-r3525
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libbrillo:= chromeos-base/vboot_reference chromeos-base/verity dev-libs/openssl:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= virtual/pkgconfig
+DESCRIPTION=Chrome OS Installer
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/installer/
+IUSE=cros_embedded enable_slow_boot_notify -mtd pam systemd lvm_stateful_partition cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1142ef9f2e5e65b8b6ab2efeae2b4dc29d24312e_76048c384ed9eba7cdd5dc5c3e0b853baac8802d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1142ef9f2e5e65b8b6ab2efeae2b4dc29d24312e_76048c384ed9eba7cdd5dc5c3e0b853baac8802d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libbrillo:= chromeos-base/vboot_reference chromeos-base/verity pam? ( app-admin/sudo ) chromeos-base/chromeos-common-script !cros_embedded? ( chromeos-base/chromeos-storage-info ) dev-libs/openssl:0= dev-util/shflags sys-apps/rootdev sys-apps/util-linux sys-apps/which sys-fs/e2fsprogs >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=4ff1812714dc29c8b12063edad32f741
diff --git a/metadata/md5-cache/chromeos-base/chromeos-installer-9999 b/metadata/md5-cache/chromeos-base/chromeos-installer-9999
index a55009f..71bd053 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-installer-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-installer-9999
@@ -3,11 +3,11 @@
 DESCRIPTION=Chrome OS Installer
 EAPI=5
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/installer/
-IUSE=cros_embedded enable_slow_boot_notify -mtd pam systemd +oobe_config lvm_stateful_partition cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=cros_embedded enable_slow_boot_notify -mtd pam systemd lvm_stateful_partition cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/libbrillo:= chromeos-base/vboot_reference chromeos-base/verity pam? ( app-admin/sudo ) chromeos-base/chromeos-common-script !cros_embedded? ( chromeos-base/chromeos-storage-info ) oobe_config? ( chromeos-base/oobe_config ) dev-libs/openssl:0= dev-util/shflags sys-apps/rootdev sys-apps/util-linux sys-apps/which sys-fs/e2fsprogs >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=chromeos-base/libbrillo:= chromeos-base/vboot_reference chromeos-base/verity pam? ( app-admin/sudo ) chromeos-base/chromeos-common-script !cros_embedded? ( chromeos-base/chromeos-storage-info ) dev-libs/openssl:0= dev-util/shflags sys-apps/rootdev sys-apps/util-linux sys-apps/which sys-fs/e2fsprogs >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=5c1a96829ecc12222a6c9cf402f215d1
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=ea87cb3d6e8542aff60b66aa74538939
diff --git a/metadata/md5-cache/chromeos-base/chromeos-lacros-92.0.4511.2-r5 b/metadata/md5-cache/chromeos-base/chromeos-lacros-92.0.4511.2-r5
deleted file mode 100644
index 7a2bed9..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-lacros-92.0.4511.2-r5
+++ /dev/null
@@ -1,12 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-EAPI=7
-IUSE=cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/chromeos-chrome
-SLOT=0
-SRC_URI=gs://chrome-unsigned/desktop-5c0tCh/chromeos-lacros-squash-92.0.4511.2 gs://chrome-unsigned/desktop-5c0tCh/chromeos-lacros-metadata-92.0.4511.2
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=819140708da90f8c2a82332bf960ed53
diff --git a/metadata/md5-cache/chromeos-base/chromeos-lacros-95.0.4637.0-r1 b/metadata/md5-cache/chromeos-base/chromeos-lacros-95.0.4637.0-r1
new file mode 100644
index 0000000..07b6561
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-lacros-95.0.4637.0-r1
@@ -0,0 +1,12 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+EAPI=7
+IUSE=cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/chromeos-chrome
+SLOT=0
+SRC_URI=gs://chrome-unsigned/desktop-5c0tCh/chromeos-lacros-squash-95.0.4637.0 gs://chrome-unsigned/desktop-5c0tCh/chromeos-lacros-metadata-95.0.4637.0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=819140708da90f8c2a82332bf960ed53
diff --git a/metadata/md5-cache/chromeos-base/chromeos-lacros-9999 b/metadata/md5-cache/chromeos-base/chromeos-lacros-9999
index 3d43dfd..a49a41c 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-lacros-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-lacros-9999
@@ -7,5 +7,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/chromeos-chrome
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2dfd09e93eb681c94080828ae2120f87
diff --git a/metadata/md5-cache/chromeos-base/chromeos-login-0.0.2-r4693 b/metadata/md5-cache/chromeos-base/chromeos-login-0.0.2-r4693
deleted file mode 100644
index 6586599..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-login-0.0.2-r4693
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/bootstat:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= chromeos-base/cryptohome:= chromeos-base/libchromeos-ui:= chromeos-base/libcontainer:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/nss:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-apps/util-linux:= >=chromeos-base/protofiles-0.0.43:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Login manager for Chromium OS.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-login/
-IUSE=arc_adb_sideloading cheets fuzzer generated_cros_config systemd unibuild user_session_isolation cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_a2ab6048637d439be995dd4cdc3ef91d0291fb42_eae0546f4ee5132d4544af4770755eb05f60cba6_705938420b278cc4b739150868d71128b855d23e_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_a2ab6048637d439be995dd4cdc3ef91d0291fb42_eae0546f4ee5132d4544af4770755eb05f60cba6_705938420b278cc4b739150868d71128b855d23e_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/bootstat:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= chromeos-base/cryptohome:= chromeos-base/libchromeos-ui:= chromeos-base/libcontainer:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/nss:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-apps/util-linux:= virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.2-r4693
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=03f6a1d3981db356e926a76912a8ecd4
diff --git a/metadata/md5-cache/chromeos-base/chromeos-login-0.0.2-r4785 b/metadata/md5-cache/chromeos-base/chromeos-login-0.0.2-r4785
new file mode 100644
index 0000000..d443b28
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-login-0.0.2-r4785
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/bootstat:= chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= chromeos-base/cryptohome:= chromeos-base/libchromeos-ui:= chromeos-base/libcontainer:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/nss:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-apps/util-linux:= >=chromeos-base/protofiles-0.0.43:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vboot_reference:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Login manager for Chromium OS.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-login/
+IUSE=arc_adb_sideloading cheets fuzzer systemd user_session_isolation cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_26b91e41e669cca59d25dedeb6fb18c470d60c4b_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_996150408ecdb3786beec73b5beedde1fd9515ad_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_26b91e41e669cca59d25dedeb6fb18c470d60c4b_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_996150408ecdb3786beec73b5beedde1fd9515ad_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/bootstat:= chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= chromeos-base/cryptohome:= chromeos-base/libchromeos-ui:= chromeos-base/libcontainer:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/nss:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-apps/util-linux:= virtual/tmpfiles has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.2-r4785
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=3abea762e2f0ce23407f64e2aad85c8e
diff --git a/metadata/md5-cache/chromeos-base/chromeos-login-9999 b/metadata/md5-cache/chromeos-base/chromeos-login-9999
index 5386c22..f860718 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-login-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-login-9999
@@ -1,14 +1,14 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/bootstat:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= chromeos-base/cryptohome:= chromeos-base/libchromeos-ui:= chromeos-base/libcontainer:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/nss:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-apps/util-linux:= >=chromeos-base/protofiles-0.0.43:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/bootstat:= chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= chromeos-base/cryptohome:= chromeos-base/libchromeos-ui:= chromeos-base/libcontainer:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/nss:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-apps/util-linux:= >=chromeos-base/protofiles-0.0.43:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vboot_reference:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Login manager for Chromium OS.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/chromeos-login/
-IUSE=arc_adb_sideloading cheets fuzzer generated_cros_config systemd unibuild user_session_isolation cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=arc_adb_sideloading cheets fuzzer systemd user_session_isolation cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/bootstat:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= chromeos-base/cryptohome:= chromeos-base/libchromeos-ui:= chromeos-base/libcontainer:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/nss:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-apps/util-linux:= virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/bootstat:= chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= chromeos-base/cryptohome:= chromeos-base/libchromeos-ui:= chromeos-base/libcontainer:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/nss:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-apps/util-linux:= virtual/tmpfiles has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=be251ae9f6ae53087fff5202e99316c0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=26ae34a82d800100cf47067fa72732ec
diff --git a/metadata/md5-cache/chromeos-base/chromeos-machine-id-regen-0.0.1 b/metadata/md5-cache/chromeos-base/chromeos-machine-id-regen-0.0.1
index 9d909c9..9885863 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-machine-id-regen-0.0.1
+++ b/metadata/md5-cache/chromeos-base/chromeos-machine-id-regen-0.0.1
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 RDEPEND=>=sys-apps/dbus-1.6.8-r9
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b04520958046be9bac1556702401f196
diff --git a/metadata/md5-cache/chromeos-base/chromeos-machine-id-regen-0.0.1-r6 b/metadata/md5-cache/chromeos-base/chromeos-machine-id-regen-0.0.1-r6
index 9d909c9..9885863 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-machine-id-regen-0.0.1-r6
+++ b/metadata/md5-cache/chromeos-base/chromeos-machine-id-regen-0.0.1-r6
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 RDEPEND=>=sys-apps/dbus-1.6.8-r9
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b04520958046be9bac1556702401f196
diff --git a/metadata/md5-cache/chromeos-base/chromeos-nvt-tcon-updater-0.0.1-r5 b/metadata/md5-cache/chromeos-base/chromeos-nvt-tcon-updater-0.0.1-r5
index bd4647a..dc8e2e3c 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-nvt-tcon-updater-0.0.1-r5
+++ b/metadata/md5-cache/chromeos-base/chromeos-nvt-tcon-updater-0.0.1-r5
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/chromeos-init chromeos-base/common-assets chromeos-base/minijail sys-apps/novatek-tcon-fw-update-tool sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=9bc40a31b6e58b7f1b46d94f97f6a62c
diff --git a/metadata/md5-cache/chromeos-base/chromeos-nvt-tcon-updater-9999 b/metadata/md5-cache/chromeos-base/chromeos-nvt-tcon-updater-9999
index a42c2a1..0119ffb 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-nvt-tcon-updater-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-nvt-tcon-updater-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/chromeos-init chromeos-base/common-assets chromeos-base/minijail sys-apps/novatek-tcon-fw-update-tool sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=4d23048ea58e8f447b9de1e64d2a5afa
diff --git a/metadata/md5-cache/chromeos-base/chromeos-sshd-init-0.0.2-r2 b/metadata/md5-cache/chromeos-base/chromeos-sshd-init-0.0.2-r3
similarity index 100%
rename from metadata/md5-cache/chromeos-base/chromeos-sshd-init-0.0.2-r2
rename to metadata/md5-cache/chromeos-base/chromeos-sshd-init-0.0.2-r3
diff --git a/metadata/md5-cache/chromeos-base/chromeos-storage-info-0.0.1-r268 b/metadata/md5-cache/chromeos-base/chromeos-storage-info-0.0.1-r268
deleted file mode 100644
index d729a6e..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-storage-info-0.0.1-r268
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS storage info tools
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/storage_info/
-IUSE=+mmc nvme +sata test cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8d5d5e575da16bb48f735ef93feedcfae4b1586e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8d5d5e575da16bb48f735ef93feedcfae4b1586e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/chromeos-common-script sata? ( sys-apps/hdparm sys-apps/smartmontools ) nvme? ( sys-apps/smartmontools ) mmc? ( sys-apps/mmc-utils ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=1a9b111601638b09383ec751cd0f60dc
diff --git a/metadata/md5-cache/chromeos-base/chromeos-storage-info-0.0.1-r294 b/metadata/md5-cache/chromeos-base/chromeos-storage-info-0.0.1-r294
new file mode 100644
index 0000000..fc2c55f
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-storage-info-0.0.1-r294
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS storage info tools
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/storage_info/
+IUSE=mmc nvme +sata test cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_8d5d5e575da16bb48f735ef93feedcfae4b1586e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_8d5d5e575da16bb48f735ef93feedcfae4b1586e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chromeos-common-script sata? ( sys-apps/hdparm sys-apps/smartmontools ) nvme? ( sys-apps/smartmontools ) mmc? ( sys-apps/mmc-utils ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=bc7fad97647558fff06e91e0007ebbe0
diff --git a/metadata/md5-cache/chromeos-base/chromeos-storage-info-9999 b/metadata/md5-cache/chromeos-base/chromeos-storage-info-9999
index 0149dbd..ff32f99 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-storage-info-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-storage-info-9999
@@ -4,11 +4,11 @@
 DESCRIPTION=Chrome OS storage info tools
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/storage_info/
-IUSE=+mmc nvme +sata test cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=mmc nvme +sata test cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
 RDEPEND=chromeos-base/chromeos-common-script sata? ( sys-apps/hdparm sys-apps/smartmontools ) nvme? ( sys-apps/smartmontools ) mmc? ( sys-apps/mmc-utils ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=125d3625ea89468f58d1aa4368fbc08c
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9eaf1c1f13a5586d283a84a82b19236d
diff --git a/metadata/md5-cache/chromeos-base/chromeos-test-init-0.0.1-r3163 b/metadata/md5-cache/chromeos-base/chromeos-test-init-0.0.1-r3163
deleted file mode 100644
index a93d8e3..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-test-init-0.0.1-r3163
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=info install setup unpack
-DESCRIPTION=Additional upstart jobs that will be installed on test images
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/init/
-IUSE=+encrypted_stateful tpm2 cros_host cros_workon_tree_b82396efede47db2d3ecbb1e88bcb0b38713b6dd
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!<chromeos-base/hwsec-test-utils-0.0.1-r83
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=166ca44c13bac67b2488bde693957e7c
diff --git a/metadata/md5-cache/chromeos-base/chromeos-test-init-0.0.1-r3164 b/metadata/md5-cache/chromeos-base/chromeos-test-init-0.0.1-r3164
new file mode 100644
index 0000000..16fddea
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-test-init-0.0.1-r3164
@@ -0,0 +1,12 @@
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Additional upstart jobs that will be installed on test images
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/init/
+IUSE=+encrypted_stateful tpm2 cros_host cros_workon_tree_8003c2b9367e0f055d0e2f89bb2a8de0784d8dde
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!<chromeos-base/hwsec-test-utils-0.0.1-r83
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=7394a92283f6989aea9bf725ce1b968f
diff --git a/metadata/md5-cache/chromeos-base/chromeos-test-init-9999 b/metadata/md5-cache/chromeos-base/chromeos-test-init-9999
index 2431205..5e178cd 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-test-init-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-test-init-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=!<chromeos-base/hwsec-test-utils-0.0.1-r83
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=85bdc92712b9001b9afa14966a25e655
diff --git a/metadata/md5-cache/chromeos-base/chromeos-touch-common-0.0.1-r12 b/metadata/md5-cache/chromeos-base/chromeos-touch-common-0.0.1-r12
deleted file mode 100644
index ecd2938..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-touch-common-0.0.1-r12
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-DESCRIPTION=Common shell libraries for touch firmware updater wrapper scripts
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os
-IUSE=cros_host cros_workon_tree_145f674e7339af04f66e124d84cf65762c0a7fc4
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=sys-apps/mosys !<chromeos-base/touch_updater-0.0.1-r167
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3ec3258e1e042f74cc2d6c111c12edff
diff --git a/metadata/md5-cache/chromeos-base/chromeos-touch-common-0.0.1-r13 b/metadata/md5-cache/chromeos-base/chromeos-touch-common-0.0.1-r13
new file mode 100644
index 0000000..8add7ba
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-touch-common-0.0.1-r13
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Common shell libraries for touch firmware updater wrapper scripts
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os
+IUSE=cros_host cros_workon_tree_7daad4c6871c83b2f58298b7981a5cd089025b4c
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=sys-apps/mosys !<chromeos-base/touch_updater-0.0.1-r167
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=60e24c8c18f64e42af9c9c16aee15fe6
diff --git a/metadata/md5-cache/chromeos-base/chromeos-touch-common-9999 b/metadata/md5-cache/chromeos-base/chromeos-touch-common-9999
index 9d09567..1883466 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-touch-common-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-touch-common-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=sys-apps/mosys !<chromeos-base/touch_updater-0.0.1-r167
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=4486e42cf03b8f39e988d8813bf4c852
diff --git a/metadata/md5-cache/chromeos-base/chromeos-touch-etphidiap-0.0.1-r13 b/metadata/md5-cache/chromeos-base/chromeos-touch-etphidiap-0.0.1-r13
deleted file mode 100644
index 76a6c73..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-touch-etphidiap-0.0.1-r13
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install preinst setup unpack
-DEPEND=sys-apps/baselayout
-DESCRIPTION=Wrapper for etphidiap touch firmware updater.
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os
-IUSE=cros_host cros_workon_tree_d27b69b780b7531fbca51927de61c58296c2d86d
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/chromeos-touch-common sys-apps/etphidiap !<chromeos-base/touch_updater-0.0.1-r167 sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=f36fb0cb6c2dc58de1f1623ad9bf75f1
diff --git a/metadata/md5-cache/chromeos-base/chromeos-touch-etphidiap-0.0.1-r14 b/metadata/md5-cache/chromeos-base/chromeos-touch-etphidiap-0.0.1-r14
new file mode 100644
index 0000000..d3a26ef
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-touch-etphidiap-0.0.1-r14
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install preinst setup unpack
+DEPEND=sys-apps/baselayout
+DESCRIPTION=Wrapper for etphidiap touch firmware updater.
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os
+IUSE=cros_host cros_workon_tree_5e05b63e4b72537a39603f4a9f5a68eebf845602
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/chromeos-touch-common sys-apps/etphidiap !<chromeos-base/touch_updater-0.0.1-r167 sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=d233472f105bad0f90cc93fd2d4ce43e
diff --git a/metadata/md5-cache/chromeos-base/chromeos-touch-etphidiap-9999 b/metadata/md5-cache/chromeos-base/chromeos-touch-etphidiap-9999
index a328d70..829a830 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-touch-etphidiap-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-touch-etphidiap-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/chromeos-touch-common sys-apps/etphidiap !<chromeos-base/touch_updater-0.0.1-r167 sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=497aba3022c1ae69c021f51f809ba272
diff --git a/metadata/md5-cache/chromeos-base/chromeos-touch-stupdate-0.0.1-r10 b/metadata/md5-cache/chromeos-base/chromeos-touch-stupdate-0.0.1-r10
deleted file mode 100644
index 62bd6a1..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-touch-stupdate-0.0.1-r10
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install preinst setup unpack
-DEPEND=sys-apps/baselayout
-DESCRIPTION=Wrapper for ST touch firmware updater.
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os
-IUSE=cros_host cros_workon_tree_f3cfb0e19c23daa6dedda7e9b060a0979560343c
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/chromeos-touch-common sys-apps/st-touch-fw-updater !<chromeos-base/touch_updater-0.0.1-r167 sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=c4543be2c007476ca3949fabd19461b5
diff --git a/metadata/md5-cache/chromeos-base/chromeos-touch-stupdate-0.0.1-r12 b/metadata/md5-cache/chromeos-base/chromeos-touch-stupdate-0.0.1-r12
new file mode 100644
index 0000000..643bfa0
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-touch-stupdate-0.0.1-r12
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install preinst setup unpack
+DEPEND=sys-apps/baselayout
+DESCRIPTION=Wrapper for ST touch firmware updater.
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os
+IUSE=cros_host cros_workon_tree_85c862c58d2ad4b07479b1b9ac509b5c1e65c538
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/chromeos-touch-common sys-apps/st-touch-fw-updater !<chromeos-base/touch_updater-0.0.1-r167 sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=0b110f575d8cc84499bbc593071cf4e8
diff --git a/metadata/md5-cache/chromeos-base/chromeos-touch-stupdate-9999 b/metadata/md5-cache/chromeos-base/chromeos-touch-stupdate-9999
index f01527e2..34390e7 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-touch-stupdate-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-touch-stupdate-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/chromeos-touch-common sys-apps/st-touch-fw-updater !<chromeos-base/touch_updater-0.0.1-r167 sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=e55b82602fc10e628bb936b009197a72
diff --git a/metadata/md5-cache/chromeos-base/chromeos-trim-0.0.1-r1653 b/metadata/md5-cache/chromeos-base/chromeos-trim-0.0.1-r1653
deleted file mode 100644
index b39cb0f..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-trim-0.0.1-r1653
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Stateful partition periodic trimmer
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/trim/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_1e69ede3d074afd135fa6f2136ea5d99c425702b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_1e69ede3d074afd135fa6f2136ea5d99c425702b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/chromeos-common-script chromeos-base/chromeos-init sys-apps/util-linux >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4a93e1c6c590fa6c0b8c90962bbd101c
diff --git a/metadata/md5-cache/chromeos-base/chromeos-trim-0.0.1-r1678 b/metadata/md5-cache/chromeos-base/chromeos-trim-0.0.1-r1678
new file mode 100644
index 0000000..78a0a90
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-trim-0.0.1-r1678
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Stateful partition periodic trimmer
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/trim/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1e69ede3d074afd135fa6f2136ea5d99c425702b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1e69ede3d074afd135fa6f2136ea5d99c425702b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chromeos-common-script chromeos-base/chromeos-init sys-apps/util-linux >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ea784c510a7c4e9b8551ead123d3f2d0
diff --git a/metadata/md5-cache/chromeos-base/chromeos-trim-9999 b/metadata/md5-cache/chromeos-base/chromeos-trim-9999
index 64fd438..edb3a3d 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-trim-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-trim-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/chromeos-common-script chromeos-base/chromeos-init sys-apps/util-linux >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=971be24137bdb2c4064a54770eaa8545
diff --git a/metadata/md5-cache/chromeos-base/chromeos-zephyr-0.0.1-r1574 b/metadata/md5-cache/chromeos-base/chromeos-zephyr-0.0.1-r1574
new file mode 100644
index 0000000..e1500f5
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chromeos-zephyr-0.0.1-r1574
@@ -0,0 +1,14 @@
+BDEPEND=chromeos-base/zephyr-build-tools dev-python/docopt dev-python/pykwalify dev-util/ninja dev-vcs/git chromeos-base/chromeos-config-host:=
+DEFINED_PHASES=compile configure info install setup unpack
+DEPEND=chromeos-base/chromeos-config has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+DESCRIPTION=Zephyr based Embedded Controller firmware
+EAPI=7
+IUSE=unibuild zephyr_v2_7 cros_host cros_workon_tree_0ae11b7eabea480cedbd8344f4974ebe775f63ac_22779a02b73465f680f11024fa834ba7cb868470_719a42d9d98358f9123acf2d8916ed9c1821d60b_4211779d15bde871d051b94a1d7e6dd6ed1aa8f1_d218554c2693811a352986f225e1f87cb3972913 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild
+KEYWORDS=*
+LICENSE=Apache-2.0 BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/chromeos-config has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+REQUIRED_USE=unibuild
+SLOT=0/0.0.1-r1574
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=675da84ea83ddd43b8969c521254ee35
diff --git a/metadata/md5-cache/chromeos-base/chromeos-zephyr-0.0.1-r711 b/metadata/md5-cache/chromeos-base/chromeos-zephyr-0.0.1-r711
deleted file mode 100644
index 99246907..0000000
--- a/metadata/md5-cache/chromeos-base/chromeos-zephyr-0.0.1-r711
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=chromeos-base/zephyr-build-tools dev-python/docopt dev-python/pykwalify dev-util/ninja dev-vcs/git
-DEFINED_PHASES=compile configure info install setup unpack
-DEPEND=chromeos-base/chromeos-config
-DESCRIPTION=Zephyr based Embedded Controller firmware
-EAPI=7
-IUSE=unibuild cros_host cros_workon_tree_060f5aa8b2726d17e2d12f764587a6a3ab7eeb81_781df7da13c4275a2328c09e75fd937991d80e29_049362d45a6362cbdede3ebd10c38ed8d446410a_ef831ef09b8fdc0da7cceb25def086f853ae97cd
-KEYWORDS=*
-LICENSE=Apache-2.0 BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/chromeos-config
-REQUIRED_USE=unibuild
-SLOT=0/0.0.1-r711
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6a21309d721f41bd93fc8d4e717f9f9e
diff --git a/metadata/md5-cache/chromeos-base/chromeos-zephyr-9999 b/metadata/md5-cache/chromeos-base/chromeos-zephyr-9999
index 2744d41..97f4da6 100644
--- a/metadata/md5-cache/chromeos-base/chromeos-zephyr-9999
+++ b/metadata/md5-cache/chromeos-base/chromeos-zephyr-9999
@@ -1,14 +1,14 @@
-BDEPEND=chromeos-base/zephyr-build-tools dev-python/docopt dev-python/pykwalify dev-util/ninja dev-vcs/git
+BDEPEND=chromeos-base/zephyr-build-tools dev-python/docopt dev-python/pykwalify dev-util/ninja dev-vcs/git chromeos-base/chromeos-config-host:=
 DEFINED_PHASES=compile configure info install setup unpack
-DEPEND=chromeos-base/chromeos-config
+DEPEND=chromeos-base/chromeos-config has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
 DESCRIPTION=Zephyr based Embedded Controller firmware
 EAPI=7
-IUSE=unibuild cros_host cros_workon_tree_
+IUSE=unibuild zephyr_v2_7 cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild
 KEYWORDS=~*
 LICENSE=Apache-2.0 BSD-Google
 PROPERTIES=live
-RDEPEND=chromeos-base/chromeos-config
+RDEPEND=chromeos-base/chromeos-config has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
 REQUIRED_USE=unibuild
 SLOT=0/9999
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=47ac1a0cda351480ee4fb4a183ab87ef
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=155743e02796d05b430d4f7e32b120d5
diff --git a/metadata/md5-cache/chromeos-base/chromite-sdk-1 b/metadata/md5-cache/chromeos-base/chromite-sdk-1
index 23a8246..c596625 100644
--- a/metadata/md5-cache/chromeos-base/chromite-sdk-1
+++ b/metadata/md5-cache/chromeos-base/chromite-sdk-1
@@ -6,5 +6,5 @@
 KEYWORDS=*
 LICENSE=BSD-Google
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=b010345687dd154c23c45f7dbd8313c7
diff --git a/metadata/md5-cache/chromeos-base/chromite-sdk-1-r2 b/metadata/md5-cache/chromeos-base/chromite-sdk-1-r2
index 23a8246..c596625 100644
--- a/metadata/md5-cache/chromeos-base/chromite-sdk-1-r2
+++ b/metadata/md5-cache/chromeos-base/chromite-sdk-1-r2
@@ -6,5 +6,5 @@
 KEYWORDS=*
 LICENSE=BSD-Google
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=b010345687dd154c23c45f7dbd8313c7
diff --git a/metadata/md5-cache/chromeos-base/chromium-source-93.0.4554.0_rc-r1 b/metadata/md5-cache/chromeos-base/chromium-source-97.0.4667.0_rc-r1
similarity index 100%
rename from metadata/md5-cache/chromeos-base/chromium-source-93.0.4554.0_rc-r1
rename to metadata/md5-cache/chromeos-base/chromium-source-97.0.4667.0_rc-r1
diff --git a/metadata/md5-cache/chromeos-base/chromiumos-assets-0.0.1-r14 b/metadata/md5-cache/chromeos-base/chromiumos-assets-0.0.1-r14
index bc3b946..a2adfcf 100644
--- a/metadata/md5-cache/chromeos-base/chromiumos-assets-0.0.1-r14
+++ b/metadata/md5-cache/chromeos-base/chromiumos-assets-0.0.1-r14
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8c52da7abf115c148bc5ee839bcbcf14
diff --git a/metadata/md5-cache/chromeos-base/chromiumos-assets-9999 b/metadata/md5-cache/chromeos-base/chromiumos-assets-9999
index 26d5e17..1a906e4 100644
--- a/metadata/md5-cache/chromeos-base/chromiumos-assets-9999
+++ b/metadata/md5-cache/chromeos-base/chromiumos-assets-9999
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ac9c044d071d877406155729812ce5d2
diff --git a/metadata/md5-cache/chromeos-base/chunnel-0.1.0-r19 b/metadata/md5-cache/chromeos-base/chunnel-0.1.0-r19
deleted file mode 100644
index 2e252e2..0000000
--- a/metadata/md5-cache/chromeos-base/chunnel-0.1.0-r19
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/system_api:= dev-rust/libchromeos:= dev-rust/sys_util:= =dev-rust/dbus-0.8*:= =dev-rust/getopts-0.2*:= =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= >=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3 =dev-rust/remain-0.2*:= dev-rust/sys_util:= =dev-rust/tempfile-3*:= >=virtual/rust-1.39.0:= sys-apps/baselayout
-DESCRIPTION=Tunnel between localhost in different netns
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/chunnel
-IUSE=kvm_host cros_host cros_workon_tree_bac3b594c76e24ac386a4a97b24374325db5b73c cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=sys-apps/dbus sys-apps/baselayout
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=20516fca156336f9173825ec3f6edcf8
diff --git a/metadata/md5-cache/chromeos-base/chunnel-0.1.0-r25 b/metadata/md5-cache/chromeos-base/chunnel-0.1.0-r25
new file mode 100644
index 0000000..523ac74
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/chunnel-0.1.0-r25
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=chromeos-base/system_api:= dev-rust/libchromeos:= dev-rust/sys_util:= =dev-rust/dbus-0.9*:= =dev-rust/dbus-tree-0.9*:= =dev-rust/getopts-0.2*:= =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= >=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3 =dev-rust/remain-0.2*:= dev-rust/sys_util:= =dev-rust/tempfile-3*:= >=virtual/rust-1.39.0:= sys-apps/baselayout
+DESCRIPTION=Tunnel between localhost in different netns
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/chunnel
+IUSE=kvm_host cros_host cros_workon_tree_65aaf049ad00c6974476446be0a7abb305b4315b cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=sys-apps/dbus sys-apps/baselayout
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=6787dfc730cbc6246f180f86968d3f57
diff --git a/metadata/md5-cache/chromeos-base/chunnel-9999 b/metadata/md5-cache/chromeos-base/chunnel-9999
index 81bf34d..44398e9 100644
--- a/metadata/md5-cache/chromeos-base/chunnel-9999
+++ b/metadata/md5-cache/chromeos-base/chunnel-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/system_api:= dev-rust/libchromeos:= dev-rust/sys_util:= =dev-rust/dbus-0.8*:= =dev-rust/getopts-0.2*:= =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= >=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3 =dev-rust/remain-0.2*:= dev-rust/sys_util:= =dev-rust/tempfile-3*:= >=virtual/rust-1.39.0:= sys-apps/baselayout
+DEPEND=chromeos-base/system_api:= dev-rust/libchromeos:= dev-rust/sys_util:= =dev-rust/dbus-0.9*:= =dev-rust/dbus-tree-0.9*:= =dev-rust/getopts-0.2*:= =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= >=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3 =dev-rust/remain-0.2*:= dev-rust/sys_util:= =dev-rust/tempfile-3*:= >=virtual/rust-1.39.0:= sys-apps/baselayout
 DESCRIPTION=Tunnel between localhost in different netns
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/chunnel
@@ -11,5 +11,5 @@
 RDEPEND=sys-apps/dbus sys-apps/baselayout
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=88bf7d9488bc054cc1f9d21dfac8eb96
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=76003af1dd0a6a4f20c8699acb6fc33c
diff --git a/metadata/md5-cache/chromeos-base/cirque_fw_update-1.0.5 b/metadata/md5-cache/chromeos-base/cirque_fw_update-1.0.5
index e64f119..9b69f43 100644
--- a/metadata/md5-cache/chromeos-base/cirque_fw_update-1.0.5
+++ b/metadata/md5-cache/chromeos-base/cirque_fw_update-1.0.5
@@ -6,5 +6,5 @@
 LICENSE=Apache-2.0
 SLOT=0
 SRC_URI=https://github.com/cirque-corp/chromeos_cirque_fw_update/archive/1.0.5.tar.gz -> cirque_fw_update-1.0.5.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=51a282eb50dd25dbe34f9468413dfa5c
diff --git a/metadata/md5-cache/chromeos-base/codelab-0.0.1-r150 b/metadata/md5-cache/chromeos-base/codelab-0.0.1-r150
deleted file mode 100644
index 8c1d903..0000000
--- a/metadata/md5-cache/chromeos-base/codelab-0.0.1-r150
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Developer codelab for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/codelab/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_c8339e925dbb6132281f13d2df57ba1cad2d6a62_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_c8339e925dbb6132281f13d2df57ba1cad2d6a62_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r150
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9369f7f8d1d0329614358bb953cc195a
diff --git a/metadata/md5-cache/chromeos-base/codelab-0.0.1-r176 b/metadata/md5-cache/chromeos-base/codelab-0.0.1-r176
new file mode 100644
index 0000000..b068720
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/codelab-0.0.1-r176
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Developer codelab for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/codelab/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_715c28c8d4d5856350bde56cd68a95336513fe09_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_715c28c8d4d5856350bde56cd68a95336513fe09_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r176
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a835e74ee3207bf260e2b4e92a7366bf
diff --git a/metadata/md5-cache/chromeos-base/codelab-9999 b/metadata/md5-cache/chromeos-base/codelab-9999
index 19aad2c..0ea5dbf 100644
--- a/metadata/md5-cache/chromeos-base/codelab-9999
+++ b/metadata/md5-cache/chromeos-base/codelab-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=a1292a0bad33a5c2279e2432e2e3a017
diff --git a/metadata/md5-cache/chromeos-base/common-assets-0.0.2-r137 b/metadata/md5-cache/chromeos-base/common-assets-0.0.2-r137
deleted file mode 100644
index e456d6c..0000000
--- a/metadata/md5-cache/chromeos-base/common-assets-0.0.2-r137
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=info install setup unpack
-DESCRIPTION=Common Chromium OS assets (images, sounds, etc.)
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/assets
-IUSE=+fonts cros_host cros_workon_tree_bee194c2ea879bf27d08e1ebaf64d33e61d7dbff
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=fonts? ( chromeos-base/chromeos-fonts ) x11-libs/pango
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=04e6d96af10035a95e495b818cdb826f
diff --git a/metadata/md5-cache/chromeos-base/common-assets-0.0.2-r139 b/metadata/md5-cache/chromeos-base/common-assets-0.0.2-r139
new file mode 100644
index 0000000..a44bb5c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/common-assets-0.0.2-r139
@@ -0,0 +1,12 @@
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Common Chromium OS assets (images, sounds, etc.)
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/assets
+IUSE=+fonts cros_host cros_workon_tree_e82c1f1ed269f153b4b580ebcc5f66d9a7ca14a5
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=fonts? ( chromeos-base/chromeos-fonts ) x11-libs/pango
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=5b0b1bc47d34d3b8479ff004bddfeebd
diff --git a/metadata/md5-cache/chromeos-base/common-assets-9999 b/metadata/md5-cache/chromeos-base/common-assets-9999
index 15ddadf..c475784 100644
--- a/metadata/md5-cache/chromeos-base/common-assets-9999
+++ b/metadata/md5-cache/chromeos-base/common-assets-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=fonts? ( chromeos-base/chromeos-fonts ) x11-libs/pango
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=5df65fb56fa12678c5a3bc9846b7c6cb
diff --git a/metadata/md5-cache/chromeos-base/crash-reporter-0.0.1-r3586 b/metadata/md5-cache/chromeos-base/crash-reporter-0.0.1-r3586
deleted file mode 100644
index e2efd8f..0000000
--- a/metadata/md5-cache/chromeos-base/crash-reporter-0.0.1-r3586
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git dev-vcs/git dev-vcs/git virtual/pkgconfig virtual/pkgconfig
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/minijail:= chromeos-base/google-breakpad:=[cros_i686?,cros_arm64?] >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/protobuf:= dev-libs/re2:= kvm_guest? ( net-libs/grpc:= ) net-misc/curl:= sys-libs/zlib:= chromeos-base/debugd-client:= chromeos-base/session_manager-client:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vboot_reference:= chromeos-base/vm_protos:= test? ( app-arch/gzip ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Crash reporting service that uploads crash reports with debug information
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/crash-reporter/
-IUSE=arcpp arcvm chromeless_tty cros_ec cros_embedded -direncryption kvm_guest systemd fuzzer test vm-containers cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_6801629d7f37434bc503901837418db96ea3fc51_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros_arm64 cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_6801629d7f37434bc503901837418db96ea3fc51_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros_i686 cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_6801629d7f37434bc503901837418db96ea3fc51_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_6801629d7f37434bc503901837418db96ea3fc51_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live live live
-RDEPEND=chromeos-base/minijail:= chromeos-base/google-breakpad:=[cros_i686?,cros_arm64?] >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/protobuf:= dev-libs/re2:= kvm_guest? ( net-libs/grpc:= ) net-misc/curl:= sys-libs/zlib:= chromeos-base/chromeos-ca-certificates direncryption? ( sys-apps/keyutils:= ) cros_ec? ( chromeos-base/ec-utils ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r3586
-_eclasses_=cros-arm64	99e3147108567dd0bb2989d51049e8c0	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-i686	bc478c2bc9a572852d5b6d779f140dda	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=93704fe032c11229be9945fb1cc3987a
diff --git a/metadata/md5-cache/chromeos-base/crash-reporter-0.0.1-r3651 b/metadata/md5-cache/chromeos-base/crash-reporter-0.0.1-r3651
new file mode 100644
index 0000000..2dce70a
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/crash-reporter-0.0.1-r3651
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git dev-vcs/git dev-vcs/git virtual/pkgconfig virtual/pkgconfig
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/minijail:= chromeos-base/google-breakpad:=[cros_i686?,cros_arm64?] >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/protobuf:= dev-libs/re2:= kvm_guest? ( net-libs/grpc:= ) net-misc/curl:= sys-libs/zlib:= chromeos-base/debugd-client:= chromeos-base/session_manager-client:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vboot_reference:= chromeos-base/vm_protos:= test? ( app-arch/gzip ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Crash reporting service that uploads crash reports with debug information
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/crash-reporter/
+IUSE=arcpp arcvm chromeless_tty cros_ec cros_embedded -direncryption kvm_guest systemd fuzzer test vm-containers cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_465a8e6252f494e70f702d2555b6cb549bb161b1_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros_arm64 cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_465a8e6252f494e70f702d2555b6cb549bb161b1_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros_i686 cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_465a8e6252f494e70f702d2555b6cb549bb161b1_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_465a8e6252f494e70f702d2555b6cb549bb161b1_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live live live
+RDEPEND=chromeos-base/minijail:= chromeos-base/google-breakpad:=[cros_i686?,cros_arm64?] >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/protobuf:= dev-libs/re2:= kvm_guest? ( net-libs/grpc:= ) net-misc/curl:= sys-libs/zlib:= chromeos-base/chromeos-ca-certificates direncryption? ( sys-apps/keyutils:= ) cros_ec? ( chromeos-base/ec-utils ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r3651
+_eclasses_=cros-arm64	99e3147108567dd0bb2989d51049e8c0	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-i686	bc478c2bc9a572852d5b6d779f140dda	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=c098034d0ab186911a1b9e75ab9b3782
diff --git a/metadata/md5-cache/chromeos-base/crash-reporter-9999 b/metadata/md5-cache/chromeos-base/crash-reporter-9999
index 2eec282..60701b5 100644
--- a/metadata/md5-cache/chromeos-base/crash-reporter-9999
+++ b/metadata/md5-cache/chromeos-base/crash-reporter-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live live live
 RDEPEND=chromeos-base/minijail:= chromeos-base/google-breakpad:=[cros_i686?,cros_arm64?] >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/protobuf:= dev-libs/re2:= kvm_guest? ( net-libs/grpc:= ) net-misc/curl:= sys-libs/zlib:= chromeos-base/chromeos-ca-certificates direncryption? ( sys-apps/keyutils:= ) cros_ec? ( chromeos-base/ec-utils ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-arm64	99e3147108567dd0bb2989d51049e8c0	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-i686	bc478c2bc9a572852d5b6d779f140dda	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=4130b0e9a6566498982a7b96c14faa88
+_eclasses_=cros-arm64	99e3147108567dd0bb2989d51049e8c0	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-i686	bc478c2bc9a572852d5b6d779f140dda	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=1620ea56e3064f17be5e2da26330f3aa
diff --git a/metadata/md5-cache/chromeos-base/cronista-0.24.52-r7 b/metadata/md5-cache/chromeos-base/cronista-0.24.52-r7
deleted file mode 100644
index 5eac814..0000000
--- a/metadata/md5-cache/chromeos-base/cronista-0.24.52-r7
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/libsirenia:= =dev-rust/dbus-0.8*:= =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= >=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0 >=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3 >=dev-rust/serde-1.0.114:= <dev-rust/serde-2.0.0 >=dev-rust/serde_derive-1.0.114:= <dev-rust/serde_derive-2.0.0 dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 dev-rust/system_api:= sys-apps/baselayout >=virtual/rust-1.39.0:=
-DESCRIPTION=Authenticated storage daemon.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/cronista/
-IUSE=manatee cros_host cros_workon_tree_88e9197eef6172639e45852afa826fa1c6e0eb20 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=sys-apps/dbus sys-apps/baselayout
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.24.52-r7
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=5e5b29f64e23ee17b3ef6d844c7b9009
diff --git a/metadata/md5-cache/chromeos-base/cronista-0.24.52-r8 b/metadata/md5-cache/chromeos-base/cronista-0.24.52-r8
new file mode 100644
index 0000000..e001ecc
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cronista-0.24.52-r8
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=chromeos-base/libsirenia:= =dev-rust/dbus-0.9*:= =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= >=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0 >=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3 >=dev-rust/serde-1.0.114:= <dev-rust/serde-2.0.0 >=dev-rust/serde_derive-1.0.114:= <dev-rust/serde_derive-2.0.0 dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 dev-rust/system_api:= sys-apps/baselayout >=virtual/rust-1.39.0:=
+DESCRIPTION=Authenticated storage daemon.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/cronista/
+IUSE=manatee cros_host cros_workon_tree_b2ab9efc9133ece277e03d929d15591083b58003 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=sys-apps/dbus sys-apps/baselayout
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.24.52-r8
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=32a72c75fa58f2cef9564247b260e1d9
diff --git a/metadata/md5-cache/chromeos-base/cronista-9999 b/metadata/md5-cache/chromeos-base/cronista-9999
index 991286c..480b017 100644
--- a/metadata/md5-cache/chromeos-base/cronista-9999
+++ b/metadata/md5-cache/chromeos-base/cronista-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/libsirenia:= =dev-rust/dbus-0.8*:= =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= >=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0 >=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3 >=dev-rust/serde-1.0.114:= <dev-rust/serde-2.0.0 >=dev-rust/serde_derive-1.0.114:= <dev-rust/serde_derive-2.0.0 dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 dev-rust/system_api:= sys-apps/baselayout >=virtual/rust-1.39.0:=
+DEPEND=chromeos-base/libsirenia:= =dev-rust/dbus-0.9*:= =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= >=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0 >=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3 >=dev-rust/serde-1.0.114:= <dev-rust/serde-2.0.0 >=dev-rust/serde_derive-1.0.114:= <dev-rust/serde_derive-2.0.0 dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 dev-rust/system_api:= sys-apps/baselayout >=virtual/rust-1.39.0:=
 DESCRIPTION=Authenticated storage daemon.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/cronista/
@@ -11,5 +11,5 @@
 RDEPEND=sys-apps/dbus sys-apps/baselayout
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=5dab22bc93ec4cdda07eb31b14f0b2ea
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=d8d3e2bd72ab4fbd066658f5708cb55c
diff --git a/metadata/md5-cache/chromeos-base/cros-camera-0.0.1-r1056 b/metadata/md5-cache/chromeos-base/cros-camera-0.0.1-r1056
new file mode 100644
index 0000000..38c2c03
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cros-camera-0.0.1-r1056
@@ -0,0 +1,13 @@
+BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/cros-camera-libs-0.0.1-r34:= chromeos-base/cros-camera-android-deps:= media-libs/cros-camera-hal-usb:= media-libs/libsync:= libcamera? ( media-libs/libcamera ) !libcamera? ( virtual/cros-camera-hal virtual/cros-camera-hal-configs ) >=chromeos-base/metrics-0.0.1-r3152:= media-libs/minigbm:= x11-libs/libdrm:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Chrome OS camera service. The service is in charge of accessing camera device. It uses unix domain socket to build a synchronous channel.
+EAPI=7
+IUSE=arc-camera1 cheets -libcamera cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_386e30e1839ecc98d30dbee95fddcd773a0c8bbf_4579da3322609bbb1e3603b16869a65c22ed5114_21f96983b4c04d23267767a4f371212fe68039d9_542b6a1b940801e08d9d1aa3ff2657d06dc80bfa_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_386e30e1839ecc98d30dbee95fddcd773a0c8bbf_4579da3322609bbb1e3603b16869a65c22ed5114_21f96983b4c04d23267767a4f371212fe68039d9_542b6a1b940801e08d9d1aa3ff2657d06dc80bfa_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/cros-camera-libs-0.0.1-r34:= chromeos-base/cros-camera-android-deps:= media-libs/cros-camera-hal-usb:= media-libs/libsync:= libcamera? ( media-libs/libcamera ) !libcamera? ( virtual/cros-camera-hal virtual/cros-camera-hal-configs ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles sys-apps/baselayout
+SLOT=0/0.0.1-r1056
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=eacb3c8c4d84497806b4bf375bc1f0fa
diff --git a/metadata/md5-cache/chromeos-base/cros-camera-0.0.1-r963 b/metadata/md5-cache/chromeos-base/cros-camera-0.0.1-r963
deleted file mode 100644
index 32b0e27..0000000
--- a/metadata/md5-cache/chromeos-base/cros-camera-0.0.1-r963
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=>=chromeos-base/cros-camera-libs-0.0.1-r34:= chromeos-base/cros-camera-android-deps:= media-libs/cros-camera-hal-usb:= media-libs/libsync:= libcamera? ( media-libs/libcamera ) !libcamera? ( virtual/cros-camera-hal virtual/cros-camera-hal-configs ) >=chromeos-base/metrics-0.0.1-r3152:= media-libs/minigbm:= x11-libs/libdrm:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Chrome OS camera service. The service is in charge of accessing camera device. It uses unix domain socket to build a synchronous channel.
-EAPI=7
-IUSE=arc-camera1 cheets -libcamera cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_3853c1aaf018392449473e3155a42a6de4c514b5_9b0d49af4849355f570451641ca09d759740be73_049eedf136293a1ab81617017200cb31032eb384_6cdd3e4e16d9890ff8b5fe897e4cf5a94620c315_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_3853c1aaf018392449473e3155a42a6de4c514b5_9b0d49af4849355f570451641ca09d759740be73_049eedf136293a1ab81617017200cb31032eb384_6cdd3e4e16d9890ff8b5fe897e4cf5a94620c315_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/cros-camera-libs-0.0.1-r34:= chromeos-base/cros-camera-android-deps:= media-libs/cros-camera-hal-usb:= media-libs/libsync:= libcamera? ( media-libs/libcamera ) !libcamera? ( virtual/cros-camera-hal virtual/cros-camera-hal-configs ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles sys-apps/baselayout
-SLOT=0/0.0.1-r963
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=228d21cbc8f2b05752573e45aeb208a1
diff --git a/metadata/md5-cache/chromeos-base/cros-camera-9999 b/metadata/md5-cache/chromeos-base/cros-camera-9999
index fdf3a2d..a893ee0 100644
--- a/metadata/md5-cache/chromeos-base/cros-camera-9999
+++ b/metadata/md5-cache/chromeos-base/cros-camera-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/cros-camera-libs-0.0.1-r34:= chromeos-base/cros-camera-android-deps:= media-libs/cros-camera-hal-usb:= media-libs/libsync:= libcamera? ( media-libs/libcamera ) !libcamera? ( virtual/cros-camera-hal virtual/cros-camera-hal-configs ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=68ae839a5e9beae45e864f46cc7c9313
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=c583b43ab2a80162a0ad2fbc47258470
diff --git a/metadata/md5-cache/chromeos-base/cros-camera-android-deps-0.0.1-r31 b/metadata/md5-cache/chromeos-base/cros-camera-android-deps-0.0.1-r31
deleted file mode 100644
index fbde321..0000000
--- a/metadata/md5-cache/chromeos-base/cros-camera-android-deps-0.0.1-r31
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Android dependencies needed by cros-camera service and vendor HALs
-EAPI=7
-IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_9696a94a7fbf4f5e2b41c543f362ed1a22899468_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_9696a94a7fbf4f5e2b41c543f362ed1a22899468_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!media-libs/cros-camera-android-headers !media-libs/cros-camera-libcamera_client !media-libs/cros-camera-libcamera_metadata >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7da1a93a173e7b1a57927e13f8eee34e
diff --git a/metadata/md5-cache/chromeos-base/cros-camera-android-deps-0.0.1-r57 b/metadata/md5-cache/chromeos-base/cros-camera-android-deps-0.0.1-r57
new file mode 100644
index 0000000..c61eb25
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cros-camera-android-deps-0.0.1-r57
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Android dependencies needed by cros-camera service and vendor HALs
+EAPI=7
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_9696a94a7fbf4f5e2b41c543f362ed1a22899468_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_9696a94a7fbf4f5e2b41c543f362ed1a22899468_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!media-libs/cros-camera-android-headers !media-libs/cros-camera-libcamera_client !media-libs/cros-camera-libcamera_metadata >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=959c22a98613117f77b9f294aa852b8e
diff --git a/metadata/md5-cache/chromeos-base/cros-camera-android-deps-9999 b/metadata/md5-cache/chromeos-base/cros-camera-android-deps-9999
index c4a49f8..ed92d00 100644
--- a/metadata/md5-cache/chromeos-base/cros-camera-android-deps-9999
+++ b/metadata/md5-cache/chromeos-base/cros-camera-android-deps-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=!media-libs/cros-camera-android-headers !media-libs/cros-camera-libcamera_client !media-libs/cros-camera-libcamera_metadata >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f715507d35489f632dd3578dad2b3b0d
diff --git a/metadata/md5-cache/chromeos-base/cros-camera-libs-0.0.1-r115 b/metadata/md5-cache/chromeos-base/cros-camera-libs-0.0.1-r115
deleted file mode 100644
index 225b78d..0000000
--- a/metadata/md5-cache/chromeos-base/cros-camera-libs-0.0.1-r115
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=!media-libs/cros-camera-libcab !media-libs/cros-camera-libcam_gpu_algo !media-libs/cros-camera-libcamera_common !media-libs/cros-camera-libcamera_connector !media-libs/cros-camera-libcamera_exif !media-libs/cros-camera-libcamera_ipc !media-libs/cros-camera-libcamera_timezone !media-libs/cros-camera-libcamera_v4l2_device !media-libs/cros-camera-libcbm !media-libs/cros-camera-libjda chromeos-base/cros-camera-android-deps:= camera_feature_portrait_mode? ( media-libs/cros-camera-effect-portrait-mode:= ) media-libs/libexif:= media-libs/libsync:= media-libs/minigbm:= media-libs/cros-camera-facessd:= virtual/libudev:= x11-libs/libdrm:= >=chromeos-base/metrics-0.0.1-r3152:= media-libs/cros-camera-libcamera_connector_headers:= media-libs/libyuv:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS camera common libraries.
-EAPI=7
-IUSE=camera_feature_portrait_mode ipu6se cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_6cdd3e4e16d9890ff8b5fe897e4cf5a94620c315_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_0c32b7c859889403e93cba02daed08c9537ba10f_903fe92b2526a414ef04db27fd52554a9693158a_a9708ef639f0f7929195d0f3921ebd1a12ad96bd cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_6cdd3e4e16d9890ff8b5fe897e4cf5a94620c315_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_0c32b7c859889403e93cba02daed08c9537ba10f_903fe92b2526a414ef04db27fd52554a9693158a_a9708ef639f0f7929195d0f3921ebd1a12ad96bd cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!media-libs/cros-camera-libcab !media-libs/cros-camera-libcam_gpu_algo !media-libs/cros-camera-libcamera_common !media-libs/cros-camera-libcamera_connector !media-libs/cros-camera-libcamera_exif !media-libs/cros-camera-libcamera_ipc !media-libs/cros-camera-libcamera_timezone !media-libs/cros-camera-libcamera_v4l2_device !media-libs/cros-camera-libcbm !media-libs/cros-camera-libjda chromeos-base/cros-camera-android-deps:= camera_feature_portrait_mode? ( media-libs/cros-camera-effect-portrait-mode:= ) media-libs/libexif:= media-libs/libsync:= media-libs/minigbm:= media-libs/cros-camera-facessd:= virtual/libudev:= x11-libs/libdrm:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r115
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=535c4fb0e2d93a27cc904e1d81f311cd
diff --git a/metadata/md5-cache/chromeos-base/cros-camera-libs-0.0.1-r216 b/metadata/md5-cache/chromeos-base/cros-camera-libs-0.0.1-r216
new file mode 100644
index 0000000..8bdce0d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cros-camera-libs-0.0.1-r216
@@ -0,0 +1,13 @@
+BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=!media-libs/cros-camera-libcab !media-libs/cros-camera-libcam_gpu_algo !media-libs/cros-camera-libcamera_common !media-libs/cros-camera-libcamera_connector !media-libs/cros-camera-libcamera_exif !media-libs/cros-camera-libcamera_ipc !media-libs/cros-camera-libcamera_timezone !media-libs/cros-camera-libcamera_v4l2_device !media-libs/cros-camera-libcbm !media-libs/cros-camera-libjda chromeos-base/cros-camera-android-deps:= camera_feature_hdrnet? ( media-libs/cros-camera-libgcam:= ) camera_feature_portrait_mode? ( media-libs/cros-camera-effect-portrait-mode:= ) media-libs/libexif:= media-libs/libsync:= media-libs/minigbm:= media-libs/cros-camera-facessd:= virtual/libudev:= x11-libs/libdrm:= >=chromeos-base/metrics-0.0.1-r3152:= media-libs/cros-camera-libcamera_connector_headers:= media-libs/libyuv:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS camera common libraries.
+EAPI=7
+IUSE=camera_feature_hdrnet camera_feature_portrait_mode ipu6 ipu6ep ipu6se cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_32ac98629dfba863322d9dc20a553d071bb70df0_786825f5ecfe94fcf4d839470255111ca27b4d6f_21f96983b4c04d23267767a4f371212fe68039d9_542b6a1b940801e08d9d1aa3ff2657d06dc80bfa_77d69659cf481a4d0917b7c100630f3c969b5720_5344097beef866bd9f20e32d6264c0d33ea1623a cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_32ac98629dfba863322d9dc20a553d071bb70df0_786825f5ecfe94fcf4d839470255111ca27b4d6f_21f96983b4c04d23267767a4f371212fe68039d9_542b6a1b940801e08d9d1aa3ff2657d06dc80bfa_77d69659cf481a4d0917b7c100630f3c969b5720_5344097beef866bd9f20e32d6264c0d33ea1623a cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!media-libs/cros-camera-libcab !media-libs/cros-camera-libcam_gpu_algo !media-libs/cros-camera-libcamera_common !media-libs/cros-camera-libcamera_connector !media-libs/cros-camera-libcamera_exif !media-libs/cros-camera-libcamera_ipc !media-libs/cros-camera-libcamera_timezone !media-libs/cros-camera-libcamera_v4l2_device !media-libs/cros-camera-libcbm !media-libs/cros-camera-libjda chromeos-base/cros-camera-android-deps:= camera_feature_hdrnet? ( media-libs/cros-camera-libgcam:= ) camera_feature_portrait_mode? ( media-libs/cros-camera-effect-portrait-mode:= ) media-libs/libexif:= media-libs/libsync:= media-libs/minigbm:= media-libs/cros-camera-facessd:= virtual/libudev:= x11-libs/libdrm:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r216
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=803034e9aa510a75c975a240e2fd6fc8
diff --git a/metadata/md5-cache/chromeos-base/cros-camera-libs-9999 b/metadata/md5-cache/chromeos-base/cros-camera-libs-9999
index 8379b21..eddf626 100644
--- a/metadata/md5-cache/chromeos-base/cros-camera-libs-9999
+++ b/metadata/md5-cache/chromeos-base/cros-camera-libs-9999
@@ -1,13 +1,13 @@
 BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=!media-libs/cros-camera-libcab !media-libs/cros-camera-libcam_gpu_algo !media-libs/cros-camera-libcamera_common !media-libs/cros-camera-libcamera_connector !media-libs/cros-camera-libcamera_exif !media-libs/cros-camera-libcamera_ipc !media-libs/cros-camera-libcamera_timezone !media-libs/cros-camera-libcamera_v4l2_device !media-libs/cros-camera-libcbm !media-libs/cros-camera-libjda chromeos-base/cros-camera-android-deps:= camera_feature_portrait_mode? ( media-libs/cros-camera-effect-portrait-mode:= ) media-libs/libexif:= media-libs/libsync:= media-libs/minigbm:= media-libs/cros-camera-facessd:= virtual/libudev:= x11-libs/libdrm:= >=chromeos-base/metrics-0.0.1-r3152:= media-libs/cros-camera-libcamera_connector_headers:= media-libs/libyuv:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=!media-libs/cros-camera-libcab !media-libs/cros-camera-libcam_gpu_algo !media-libs/cros-camera-libcamera_common !media-libs/cros-camera-libcamera_connector !media-libs/cros-camera-libcamera_exif !media-libs/cros-camera-libcamera_ipc !media-libs/cros-camera-libcamera_timezone !media-libs/cros-camera-libcamera_v4l2_device !media-libs/cros-camera-libcbm !media-libs/cros-camera-libjda chromeos-base/cros-camera-android-deps:= camera_feature_hdrnet? ( media-libs/cros-camera-libgcam:= ) camera_feature_portrait_mode? ( media-libs/cros-camera-effect-portrait-mode:= ) media-libs/libexif:= media-libs/libsync:= media-libs/minigbm:= media-libs/cros-camera-facessd:= virtual/libudev:= x11-libs/libdrm:= >=chromeos-base/metrics-0.0.1-r3152:= media-libs/cros-camera-libcamera_connector_headers:= media-libs/libyuv:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Chrome OS camera common libraries.
 EAPI=7
-IUSE=camera_feature_portrait_mode ipu6se cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=camera_feature_hdrnet camera_feature_portrait_mode ipu6 ipu6ep ipu6se cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=!media-libs/cros-camera-libcab !media-libs/cros-camera-libcam_gpu_algo !media-libs/cros-camera-libcamera_common !media-libs/cros-camera-libcamera_connector !media-libs/cros-camera-libcamera_exif !media-libs/cros-camera-libcamera_ipc !media-libs/cros-camera-libcamera_timezone !media-libs/cros-camera-libcamera_v4l2_device !media-libs/cros-camera-libcbm !media-libs/cros-camera-libjda chromeos-base/cros-camera-android-deps:= camera_feature_portrait_mode? ( media-libs/cros-camera-effect-portrait-mode:= ) media-libs/libexif:= media-libs/libsync:= media-libs/minigbm:= media-libs/cros-camera-facessd:= virtual/libudev:= x11-libs/libdrm:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=!media-libs/cros-camera-libcab !media-libs/cros-camera-libcam_gpu_algo !media-libs/cros-camera-libcamera_common !media-libs/cros-camera-libcamera_connector !media-libs/cros-camera-libcamera_exif !media-libs/cros-camera-libcamera_ipc !media-libs/cros-camera-libcamera_timezone !media-libs/cros-camera-libcamera_v4l2_device !media-libs/cros-camera-libcbm !media-libs/cros-camera-libjda chromeos-base/cros-camera-android-deps:= camera_feature_hdrnet? ( media-libs/cros-camera-libgcam:= ) camera_feature_portrait_mode? ( media-libs/cros-camera-effect-portrait-mode:= ) media-libs/libexif:= media-libs/libsync:= media-libs/minigbm:= media-libs/cros-camera-facessd:= virtual/libudev:= x11-libs/libdrm:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e0ae2788b9410a010e040800e47a06f2
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d4ff36ca9bfd31897e7b2731b26bbb51
diff --git a/metadata/md5-cache/chromeos-base/cros-camera-tool-0.0.1-r331 b/metadata/md5-cache/chromeos-base/cros-camera-tool-0.0.1-r331
deleted file mode 100644
index 2b933d6..0000000
--- a/metadata/md5-cache/chromeos-base/cros-camera-tool-0.0.1-r331
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS camera test utility.
-EAPI=7
-IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_d1fd07ac03f1ac6e670181ebd45b30e31efe5a87_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_d1fd07ac03f1ac6e670181ebd45b30e31efe5a87_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r331
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f12fb2f9ac28cb20912a60e45116141e
diff --git a/metadata/md5-cache/chromeos-base/cros-camera-tool-0.0.1-r360 b/metadata/md5-cache/chromeos-base/cros-camera-tool-0.0.1-r360
new file mode 100644
index 0000000..cf27551
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cros-camera-tool-0.0.1-r360
@@ -0,0 +1,13 @@
+BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS camera test utility.
+EAPI=7
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_3ab43d75b077ff01eff298ac286116bbcbb27bd8_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_3ab43d75b077ff01eff298ac286116bbcbb27bd8_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r360
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e4b912af3e758bff6bb2b8f933b88434
diff --git a/metadata/md5-cache/chromeos-base/cros-camera-tool-9999 b/metadata/md5-cache/chromeos-base/cros-camera-tool-9999
index 3fe68c5..ef0e665 100644
--- a/metadata/md5-cache/chromeos-base/cros-camera-tool-9999
+++ b/metadata/md5-cache/chromeos-base/cros-camera-tool-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=56d816b4c5248142bbe0a5243f2f3aef
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=65cf078f2dfb562a650f015731503dd8
diff --git a/metadata/md5-cache/chromeos-base/cros-config-api-0.0.1-r236 b/metadata/md5-cache/chromeos-base/cros-config-api-0.0.1-r236
deleted file mode 100644
index fb0ff2c..0000000
--- a/metadata/md5-cache/chromeos-base/cros-config-api-0.0.1-r236
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=dev-go/genproto dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
-DESCRIPTION=Provides python and go bindings to the config API
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/config/+/master/python/
-IUSE=cros_host cros_workon_tree_b81f24d0e9d14f4915eb0e73889e64eb5167ebc8_675640ffa98cd9dec94ff67a2fb998e4f1609223 python_targets_python3_6 python_targets_python3_7
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-go/genproto python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
-REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 ) || ( python_targets_python3_6 python_targets_python3_7 )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=218b5b61884604900886003adf5f1abe
diff --git a/metadata/md5-cache/chromeos-base/cros-config-api-0.0.1-r315 b/metadata/md5-cache/chromeos-base/cros-config-api-0.0.1-r315
new file mode 100644
index 0000000..a0ac1d8
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cros-config-api-0.0.1-r315
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=dev-go/genproto
+DESCRIPTION=Provides python and go bindings to the config API
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/config/+/master/python/
+IUSE=cros_host cros_workon_tree_84d973277d83c07b96298eabb5025c1241aa7dd1_d287fe6de3463c6975d7f788e08f013d3da55aed_572b32a98f81453303905d46cb84e736fb8b6232 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-go/genproto python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d3b117e4173602f80bac60949dad42ff
diff --git a/metadata/md5-cache/chromeos-base/cros-config-api-9999 b/metadata/md5-cache/chromeos-base/cros-config-api-9999
index 157f267..0e68d10 100644
--- a/metadata/md5-cache/chromeos-base/cros-config-api-9999
+++ b/metadata/md5-cache/chromeos-base/cros-config-api-9999
@@ -1,15 +1,15 @@
-BDEPEND=dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
+BDEPEND=dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
 DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=dev-go/genproto dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
+DEPEND=dev-go/genproto
 DESCRIPTION=Provides python and go bindings to the config API
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/config/+/master/python/
-IUSE=cros_host cros_workon_tree_ python_targets_python3_6 python_targets_python3_7
+IUSE=cros_host cros_workon_tree_ python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=dev-go/genproto python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
-REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 ) || ( python_targets_python3_6 python_targets_python3_7 )
+RDEPEND=dev-go/genproto python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=fa31fdc17da95f13fbfad2e597c602cd
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bd5382682c463e9ecaeacacf2666a02
diff --git a/metadata/md5-cache/chromeos-base/cros-config-test-0.0.1 b/metadata/md5-cache/chromeos-base/cros-config-test-0.0.1
index bce25a3..e7f9b50 100644
--- a/metadata/md5-cache/chromeos-base/cros-config-test-0.0.1
+++ b/metadata/md5-cache/chromeos-base/cros-config-test-0.0.1
@@ -1,11 +1,12 @@
 DEFINED_PHASES=install
-DEPEND=virtual/chromeos-bsp-test chromeos-base/tast-local-tests-cros
+DEPEND=virtual/chromeos-bsp-test chromeos-base/tast-local-tests-cros has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
 DESCRIPTION=Package for Chrome OS cros config tast test configuration.
 EAPI=5
 HOMEPAGE=https://www.chromium.org
+IUSE=has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild
 KEYWORDS=*
 LICENSE=BSD-Google
-RDEPEND=virtual/chromeos-bsp-test chromeos-base/tast-local-tests-cros
+RDEPEND=virtual/chromeos-bsp-test chromeos-base/tast-local-tests-cros has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
 SLOT=0
-_eclasses_=cros-config-test	f471acbbac2b4c021aba0d64bf01e79e	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c
+_eclasses_=cros-config-test	f471acbbac2b4c021aba0d64bf01e79e	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600
 _md5_=4b06206dd507b88386911de8b948ddd3
diff --git a/metadata/md5-cache/chromeos-base/cros-config-test-0.0.1-r4 b/metadata/md5-cache/chromeos-base/cros-config-test-0.0.1-r4
index bce25a3..e7f9b50 100644
--- a/metadata/md5-cache/chromeos-base/cros-config-test-0.0.1-r4
+++ b/metadata/md5-cache/chromeos-base/cros-config-test-0.0.1-r4
@@ -1,11 +1,12 @@
 DEFINED_PHASES=install
-DEPEND=virtual/chromeos-bsp-test chromeos-base/tast-local-tests-cros
+DEPEND=virtual/chromeos-bsp-test chromeos-base/tast-local-tests-cros has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
 DESCRIPTION=Package for Chrome OS cros config tast test configuration.
 EAPI=5
 HOMEPAGE=https://www.chromium.org
+IUSE=has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild
 KEYWORDS=*
 LICENSE=BSD-Google
-RDEPEND=virtual/chromeos-bsp-test chromeos-base/tast-local-tests-cros
+RDEPEND=virtual/chromeos-bsp-test chromeos-base/tast-local-tests-cros has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
 SLOT=0
-_eclasses_=cros-config-test	f471acbbac2b4c021aba0d64bf01e79e	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c
+_eclasses_=cros-config-test	f471acbbac2b4c021aba0d64bf01e79e	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600
 _md5_=4b06206dd507b88386911de8b948ddd3
diff --git a/metadata/md5-cache/chromeos-base/cros-devutils-1-r1252 b/metadata/md5-cache/chromeos-base/cros-devutils-1-r1252
deleted file mode 100644
index e51d899..0000000
--- a/metadata/md5-cache/chromeos-base/cros-devutils-1-r1252
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install setup unpack
-DESCRIPTION=Development utilities for ChromiumOS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/host/
-IUSE=cros_host cros_workon_tree_0bcd941cfe6b3a9446ded078cab2e84fbab54ff8
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=app-portage/gentoolkit >=chromeos-base/devserver-0.0.2 dev-util/shflags dev-util/toolchain-utils
-SLOT=0/1-r1252
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ff9fcd22a357da0dca55eae2aef5c670
diff --git a/metadata/md5-cache/chromeos-base/cros-devutils-1-r1254 b/metadata/md5-cache/chromeos-base/cros-devutils-1-r1254
new file mode 100644
index 0000000..103e8ac
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cros-devutils-1-r1254
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install setup unpack
+DESCRIPTION=Development utilities for ChromiumOS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/host/
+IUSE=cros_host cros_workon_tree_5ca5eb4490debb22e71111141b8893cd6c6af5a4
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=app-portage/gentoolkit >=chromeos-base/devserver-0.0.2 dev-util/shflags dev-util/toolchain-utils
+SLOT=0/1-r1254
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ccd02bfe0da8daa79b286f3d4489bb16
diff --git a/metadata/md5-cache/chromeos-base/cros-devutils-9999 b/metadata/md5-cache/chromeos-base/cros-devutils-9999
index 0da3970..945fb3e 100644
--- a/metadata/md5-cache/chromeos-base/cros-devutils-9999
+++ b/metadata/md5-cache/chromeos-base/cros-devutils-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=app-portage/gentoolkit >=chromeos-base/devserver-0.0.2 dev-util/shflags dev-util/toolchain-utils
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a7a2259336cb946cd3868eeae85e4607
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=49e4a9ac89ef5cac267a127541a97169
diff --git a/metadata/md5-cache/chromeos-base/cros-disks-0.0.1-r3209 b/metadata/md5-cache/chromeos-base/cros-disks-0.0.1-r3209
deleted file mode 100644
index 1519ad3..0000000
--- a/metadata/md5-cache/chromeos-base/cros-disks-0.0.1-r3209
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/session_manager-client:= sys-apps/rootdev:= sys-apps/util-linux:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Disk mounting daemon for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cros-disks/
-IUSE=chromeless_tty fuzzer +seccomp cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a54bf486599e8f5d48317634dce7086ad82932c9_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a54bf486599e8f5d48317634dce7086ad82932c9_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/session_manager-client:= sys-apps/rootdev:= sys-apps/util-linux:= net-fs/sshfs sys-fs/archivemount sys-fs/dosfstools sys-fs/exfat-utils sys-fs/fuse-exfat sys-fs/fuse-zip sys-fs/ntfs3g sys-fs/rar2fs virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r3209
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=d826095df0cdaa0a207660c5e88a33e8
diff --git a/metadata/md5-cache/chromeos-base/cros-disks-0.0.1-r3272 b/metadata/md5-cache/chromeos-base/cros-disks-0.0.1-r3272
new file mode 100644
index 0000000..d181252
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cros-disks-0.0.1-r3272
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/session_manager-client:= sys-apps/rootdev:= sys-apps/util-linux:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Disk mounting daemon for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cros-disks/
+IUSE=chromeless_tty fuzzer +seccomp cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_93b6e29af47650d07a806f372c435798035a183d_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_93b6e29af47650d07a806f372c435798035a183d_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/session_manager-client:= sys-apps/rootdev:= sys-apps/util-linux:= net-fs/sshfs sys-fs/dosfstools sys-fs/exfat-utils sys-fs/fuse-archive sys-fs/fuse-exfat sys-fs/fuse-zip sys-fs/ntfs3g sys-fs/rar2fs virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r3272
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=4365923d442b901edbd3fd2d078cb6cb
diff --git a/metadata/md5-cache/chromeos-base/cros-disks-9999 b/metadata/md5-cache/chromeos-base/cros-disks-9999
index 02073b6..ef47b57 100644
--- a/metadata/md5-cache/chromeos-base/cros-disks-9999
+++ b/metadata/md5-cache/chromeos-base/cros-disks-9999
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/session_manager-client:= sys-apps/rootdev:= sys-apps/util-linux:= net-fs/sshfs sys-fs/archivemount sys-fs/dosfstools sys-fs/exfat-utils sys-fs/fuse-exfat sys-fs/fuse-zip sys-fs/ntfs3g sys-fs/rar2fs virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/session_manager-client:= sys-apps/rootdev:= sys-apps/util-linux:= net-fs/sshfs sys-fs/dosfstools sys-fs/exfat-utils sys-fs/fuse-archive sys-fs/fuse-exfat sys-fs/fuse-zip sys-fs/ntfs3g sys-fs/rar2fs virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=7317841ba6fe08eff2dba19d1642e95a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=1a2423b3e8cb71253784d258948fc060
diff --git a/metadata/md5-cache/chromeos-base/cros-testutils-0.0.1-r615 b/metadata/md5-cache/chromeos-base/cros-testutils-0.0.1-r615
deleted file mode 100644
index 62eecdd..0000000
--- a/metadata/md5-cache/chromeos-base/cros-testutils-0.0.1-r615
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info setup unpack
-DESCRIPTION=Host test utilities for ChromiumOS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crostestutils/
-IUSE=cros_host cros_workon_tree_b2f14f8919270f945f2fe0a397e2de5b19eecac8
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=app-emulation/qemu app-portage/gentoolkit app-shells/bash chromeos-base/cros-devutils dev-python/django
-SLOT=0/0.0.1-r615
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7e322bb616e07f0de69af69579f93862
diff --git a/metadata/md5-cache/chromeos-base/cros-testutils-0.0.1-r622 b/metadata/md5-cache/chromeos-base/cros-testutils-0.0.1-r622
new file mode 100644
index 0000000..32e3ecb
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cros-testutils-0.0.1-r622
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info setup unpack
+DESCRIPTION=Host test utilities for ChromiumOS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crostestutils/
+IUSE=cros_host cros_workon_tree_4e37e73d8386a092c04f41a1258e97f8df30d235
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=app-emulation/qemu app-portage/gentoolkit app-shells/bash chromeos-base/cros-devutils dev-python/django
+SLOT=0/0.0.1-r622
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=894843fecc802d1d4a54a3fd7fce5038
diff --git a/metadata/md5-cache/chromeos-base/cros-testutils-9999 b/metadata/md5-cache/chromeos-base/cros-testutils-9999
index 8e83545..5bbe168 100644
--- a/metadata/md5-cache/chromeos-base/cros-testutils-9999
+++ b/metadata/md5-cache/chromeos-base/cros-testutils-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=app-emulation/qemu app-portage/gentoolkit app-shells/bash chromeos-base/cros-devutils dev-python/django
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=dca0f1ac5f6f843b4e99526f86a26c33
diff --git a/metadata/md5-cache/chromeos-base/cros_healthd-client-0.0.1-r11 b/metadata/md5-cache/chromeos-base/cros_healthd-client-0.0.1-r11
new file mode 100644
index 0000000..5d8d07d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cros_healthd-client-0.0.1-r11
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS Mojo client for cros_healthd
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/diagnostics/mojo
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_b148be42aacbe8dfa2866e84614df1e489fa6b99_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_b148be42aacbe8dfa2866e84614df1e489fa6b99_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
+SLOT=0/0.0.1-r11
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=58e4319259744d52f4b8525603bab761
diff --git a/metadata/md5-cache/chromeos-base/cros_healthd-client-9999 b/metadata/md5-cache/chromeos-base/cros_healthd-client-9999
new file mode 100644
index 0000000..ec4d286
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cros_healthd-client-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS Mojo client for cros_healthd
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/diagnostics/mojo
+IUSE=cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=91d27528c8facb3974aa890e9a38c174
diff --git a/metadata/md5-cache/chromeos-base/crosdns-0.0.1-r295 b/metadata/md5-cache/chromeos-base/crosdns-0.0.1-r295
deleted file mode 100644
index bf01aa3..0000000
--- a/metadata/md5-cache/chromeos-base/crosdns-0.0.1-r295
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/libbrillo:=[asan?,fuzzer?] chromeos-base/minijail:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Local hostname modifier service for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/crosdns
-IUSE=+seccomp asan fuzzer fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_33b74b183dbb5431627e063dee32ca62eb6e8937_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_33b74b183dbb5431627e063dee32ca62eb6e8937_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libbrillo:=[asan?,fuzzer?] chromeos-base/minijail:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=f9642b5fbbd769c05ba99b2690234f58
diff --git a/metadata/md5-cache/chromeos-base/crosdns-0.0.1-r323 b/metadata/md5-cache/chromeos-base/crosdns-0.0.1-r323
new file mode 100644
index 0000000..dbec6fe
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/crosdns-0.0.1-r323
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/libbrillo:=[asan?,fuzzer?] chromeos-base/minijail:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Local hostname modifier service for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/crosdns
+IUSE=+seccomp asan fuzzer fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_02242f670c3eab41d38043a68db704749644b7f9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_02242f670c3eab41d38043a68db704749644b7f9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libbrillo:=[asan?,fuzzer?] chromeos-base/minijail:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=5feeaaceab89c7c3812303ecd8309572
diff --git a/metadata/md5-cache/chromeos-base/crosdns-9999 b/metadata/md5-cache/chromeos-base/crosdns-9999
index 7b85d78..bd35edd 100644
--- a/metadata/md5-cache/chromeos-base/crosdns-9999
+++ b/metadata/md5-cache/chromeos-base/crosdns-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/libbrillo:=[asan?,fuzzer?] chromeos-base/minijail:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=c455306c83022bbd408e9715f01557a7
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=493d3a7bf8e0dbc18105500a5d4269f7
diff --git a/metadata/md5-cache/chromeos-base/crosh-0.24.52-r3041 b/metadata/md5-cache/chromeos-base/crosh-0.24.52-r3041
deleted file mode 100644
index 3b63eeb..0000000
--- a/metadata/md5-cache/chromeos-base/crosh-0.24.52-r3041
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/chrono-0.4*:= =dev-rust/dbus-0.8*:= =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/rand-0.7*:= >=dev-rust/regex-1.0.6:= <dev-rust/regex-2.0.0 dev-rust/remain:= =dev-rust/rustyline-7*:= dev-rust/shell-words:= dev-rust/sys_util:= dev-rust/system_api:= dev-rust/tempfile:= >dev-rust/tlsdate_dbus-0.24.52-r8:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Chrome OS developer command-line shell
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/crosh/
-IUSE=+rust-crosh cros_host cros_workon_tree_2fd1803e069e2dd096b39bb1b606f9527e268319 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=app-admin/sudo chromeos-base/vboot_reference net-misc/iputils net-misc/openssh net-wireless/iw sys-apps/dbus sys-apps/net-tools
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=917c133f5ee6ed7960e43f800f7733ae
diff --git a/metadata/md5-cache/chromeos-base/crosh-0.24.52-r3054 b/metadata/md5-cache/chromeos-base/crosh-0.24.52-r3054
new file mode 100644
index 0000000..fee934d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/crosh-0.24.52-r3054
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/chrono-0.4*:= =dev-rust/dbus-0.9*:= =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/rand-0.7*:= >=dev-rust/regex-1.0.6:= <dev-rust/regex-2.0.0 dev-rust/remain:= =dev-rust/rustyline-7*:= dev-rust/shell-words:= dev-rust/sys_util:= dev-rust/system_api:= dev-rust/tempfile:= >dev-rust/tlsdate_dbus-0.24.52-r8:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Chrome OS developer command-line shell
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/crosh/
+IUSE=+rust-crosh cros_host cros_workon_tree_d6d98b2b7b61199188925df45c8ff0915adc8516 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=app-admin/sudo chromeos-base/vboot_reference net-misc/iputils net-misc/openssh net-wireless/iw sys-apps/dbus sys-apps/net-tools
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=33eb3db85b2b5297ff3e8a470aef4704
diff --git a/metadata/md5-cache/chromeos-base/crosh-9999 b/metadata/md5-cache/chromeos-base/crosh-9999
index 348b852..86b2b83 100644
--- a/metadata/md5-cache/chromeos-base/crosh-9999
+++ b/metadata/md5-cache/chromeos-base/crosh-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/chrono-0.4*:= =dev-rust/dbus-0.8*:= =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/rand-0.7*:= >=dev-rust/regex-1.0.6:= <dev-rust/regex-2.0.0 dev-rust/remain:= =dev-rust/rustyline-7*:= dev-rust/shell-words:= dev-rust/sys_util:= dev-rust/system_api:= dev-rust/tempfile:= >dev-rust/tlsdate_dbus-0.24.52-r8:= >=virtual/rust-1.39.0:=
+DEPEND==dev-rust/chrono-0.4*:= =dev-rust/dbus-0.9*:= =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/rand-0.7*:= >=dev-rust/regex-1.0.6:= <dev-rust/regex-2.0.0 dev-rust/remain:= =dev-rust/rustyline-7*:= dev-rust/shell-words:= dev-rust/sys_util:= dev-rust/system_api:= dev-rust/tempfile:= >dev-rust/tlsdate_dbus-0.24.52-r8:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Chrome OS developer command-line shell
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/crosh/
@@ -11,5 +11,5 @@
 RDEPEND=app-admin/sudo chromeos-base/vboot_reference net-misc/iputils net-misc/openssh net-wireless/iw sys-apps/dbus sys-apps/net-tools
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=694ca545c3340ead80ab0a52d72a023b
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3d3a2244ffcd0ae5074adff6020e0525
diff --git a/metadata/md5-cache/chromeos-base/crosh-extension-0.41-r1094 b/metadata/md5-cache/chromeos-base/crosh-extension-0.41-r1094
deleted file mode 100644
index 7143af6..0000000
--- a/metadata/md5-cache/chromeos-base/crosh-extension-0.41-r1094
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install setup unpack
-DESCRIPTION=The Chromium OS Shell extension (the HTML/JS rendering part)
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/apps/libapps/+/master/nassh/doc/chromeos-crosh.md
-IUSE=cros_host cros_workon_tree_c8e4301d10abb183fbcae5129cdfb4e39976794e_cf64b2ab94d17914fa8012c04d643fd2b4d70c87_4cff3943e175c2e8020a0c3d373503026fc448bc_d0acc31ea3395f8ee93a30762441b4aaa5c1ab0d_6b8af6a0c88be075c60fe9fa728f4f6f998fd1ac
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!<chromeos-base/common-assets-0.0.2
-RESTRICT=nomirror
-SLOT=0/0
-SRC_URI=https://storage.googleapis.com/chromium-nodejs/14.15.4/b2e40ddbac04d05baafbb007f203c6663c9d4ca9 https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/fonts-d6dc5eaf459abd058cd3aef1e25963fde893f9d87f5f55f340431697ce4b3506.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/fonts-d6dc5eaf459abd058cd3aef1e25963fde893f9d87f5f55f340431697ce4b3506.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/node_modules-2cd2dd365999ae139b6b0fb62a5a09e2a7fb5ab1c0926cf1968a1dec9b74fea5.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/node_modules-16e0b36c0c3d448c7fd00d1db3ba27ff8477007fb4b0eae31ae25960aeae3fbc.tar.xz
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=79339708e992be4c6ac8c57e4b2048bd
diff --git a/metadata/md5-cache/chromeos-base/crosh-extension-0.43-r1131 b/metadata/md5-cache/chromeos-base/crosh-extension-0.43-r1131
new file mode 100644
index 0000000..0b02aa4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/crosh-extension-0.43-r1131
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install setup unpack
+DESCRIPTION=The Chromium OS Shell extension (the HTML/JS rendering part)
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/apps/libapps/+/master/nassh/doc/chromeos-crosh.md
+IUSE=cros_host cros_workon_tree_4d1920d85f6b47d591e8bc0e68b25a9242369fce_224032d2fc72ad0f7a16b5208c69aa4f1f61a002_5489525fc25e2905dbac40011eabe50f9cf98d3b_3927ce0ef74808ba93ee3662bacc36873a533a72_0028cec9ed97a6bd89d38c073822c82c03e60110
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!<chromeos-base/common-assets-0.0.2
+RESTRICT=nomirror
+SLOT=0/0
+SRC_URI=https://storage.googleapis.com/chromium-nodejs/14.15.4/b2e40ddbac04d05baafbb007f203c6663c9d4ca9 https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/fonts-d6dc5eaf459abd058cd3aef1e25963fde893f9d87f5f55f340431697ce4b3506.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/fonts-d6dc5eaf459abd058cd3aef1e25963fde893f9d87f5f55f340431697ce4b3506.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/node_modules-2cd2dd365999ae139b6b0fb62a5a09e2a7fb5ab1c0926cf1968a1dec9b74fea5.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/node_modules-16e0b36c0c3d448c7fd00d1db3ba27ff8477007fb4b0eae31ae25960aeae3fbc.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/releases/0.41.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/releases/0.42.tar.xz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a8e66c28833791e455fd00b162199550
diff --git a/metadata/md5-cache/chromeos-base/crosh-extension-9999 b/metadata/md5-cache/chromeos-base/crosh-extension-9999
index fc2bf39..71a5bf4 100644
--- a/metadata/md5-cache/chromeos-base/crosh-extension-9999
+++ b/metadata/md5-cache/chromeos-base/crosh-extension-9999
@@ -10,6 +10,6 @@
 RDEPEND=!<chromeos-base/common-assets-0.0.2
 RESTRICT=nomirror
 SLOT=0/0
-SRC_URI=https://storage.googleapis.com/chromium-nodejs/14.15.4/b2e40ddbac04d05baafbb007f203c6663c9d4ca9 https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/fonts-d6dc5eaf459abd058cd3aef1e25963fde893f9d87f5f55f340431697ce4b3506.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/fonts-d6dc5eaf459abd058cd3aef1e25963fde893f9d87f5f55f340431697ce4b3506.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/node_modules-2cd2dd365999ae139b6b0fb62a5a09e2a7fb5ab1c0926cf1968a1dec9b74fea5.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/node_modules-16e0b36c0c3d448c7fd00d1db3ba27ff8477007fb4b0eae31ae25960aeae3fbc.tar.xz
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4a016cb93899b3993daab6bb1b61e94a
+SRC_URI=https://storage.googleapis.com/chromium-nodejs/14.15.4/b2e40ddbac04d05baafbb007f203c6663c9d4ca9 https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/fonts-d6dc5eaf459abd058cd3aef1e25963fde893f9d87f5f55f340431697ce4b3506.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/fonts-d6dc5eaf459abd058cd3aef1e25963fde893f9d87f5f55f340431697ce4b3506.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/node_modules-2cd2dd365999ae139b6b0fb62a5a09e2a7fb5ab1c0926cf1968a1dec9b74fea5.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/distfiles/node_modules-16e0b36c0c3d448c7fd00d1db3ba27ff8477007fb4b0eae31ae25960aeae3fbc.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/releases/0.41.tar.xz https://storage.googleapis.com/chromeos-localmirror/secureshell/releases/0.42.tar.xz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=084b2fc2c2e46506992d9cbb41cb9bd7
diff --git a/metadata/md5-cache/chromeos-base/croslog-0.0.1-r157 b/metadata/md5-cache/chromeos-base/croslog-0.0.1-r157
deleted file mode 100644
index c75a2ee..0000000
--- a/metadata/md5-cache/chromeos-base/croslog-0.0.1-r157
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Log viewer for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/croslog
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_fa823f91c6f2d1432f2bfaf49b5785eeb4e6e6fb_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_fa823f91c6f2d1432f2bfaf49b5785eeb4e6e6fb_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4d45cd01f4ee996a9b49a7847c0c36ab
diff --git a/metadata/md5-cache/chromeos-base/croslog-0.0.1-r198 b/metadata/md5-cache/chromeos-base/croslog-0.0.1-r198
new file mode 100644
index 0000000..d3e03bf
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/croslog-0.0.1-r198
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Log viewer for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/croslog
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_7f79ba80bc41a40e4abc474296e860f6280f926c_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_7f79ba80bc41a40e4abc474296e860f6280f926c_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=55538ff63a293bd3ac66023306c0a472
diff --git a/metadata/md5-cache/chromeos-base/croslog-9999 b/metadata/md5-cache/chromeos-base/croslog-9999
index 1d45279..1348b31 100644
--- a/metadata/md5-cache/chromeos-base/croslog-9999
+++ b/metadata/md5-cache/chromeos-base/croslog-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f5de1a14579328781f9946f60485a572
diff --git a/metadata/md5-cache/chromeos-base/crostini_client-0.1.0-r90 b/metadata/md5-cache/chromeos-base/crostini_client-0.1.0-r90
deleted file mode 100644
index cf180fc..0000000
--- a/metadata/md5-cache/chromeos-base/crostini_client-0.1.0-r90
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/system_api =dev-rust/dbus-0.8*:= =dev-rust/getopts-0.2*:= =dev-rust/lazy_static-1*:= >=dev-rust/libc-0.2.44:= !>=dev-rust/libc-0.3 >=dev-rust/protobuf-2.16:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16:= <dev-rust/protoc-rust-3 >=virtual/rust-1.39.0:=
-DESCRIPTION=Command-line client for controlling crostini
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools/crostini_client/
-IUSE=cros_host cros_workon_tree_ae9d28d78fee99f92d94d00406be35dd80bae0ac cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=sys-apps/dbus
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=9992666dd7a16074f70a77b496a71953
diff --git a/metadata/md5-cache/chromeos-base/crostini_client-0.1.0-r95 b/metadata/md5-cache/chromeos-base/crostini_client-0.1.0-r95
new file mode 100644
index 0000000..c1d568c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/crostini_client-0.1.0-r95
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=chromeos-base/system_api =dev-rust/dbus-0.8*:= =dev-rust/getopts-0.2*:= =dev-rust/lazy_static-1*:= >=dev-rust/libc-0.2.44:= !>=dev-rust/libc-0.3 >=dev-rust/protobuf-2.16:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16:= <dev-rust/protoc-rust-3 >=virtual/rust-1.39.0:=
+DESCRIPTION=Command-line client for controlling crostini
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools/crostini_client/
+IUSE=cros_host cros_workon_tree_14ae3309a3c7bc56de4cdc101ab47eb6560712c1 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=sys-apps/dbus
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=181391ff834d472ca769113b9b36c7f5
diff --git a/metadata/md5-cache/chromeos-base/crostini_client-9999 b/metadata/md5-cache/chromeos-base/crostini_client-9999
index deac712..4719432 100644
--- a/metadata/md5-cache/chromeos-base/crostini_client-9999
+++ b/metadata/md5-cache/chromeos-base/crostini_client-9999
@@ -10,5 +10,5 @@
 RDEPEND=sys-apps/dbus
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=30d7875391ee91e5741d0ab0c050b5ee
diff --git a/metadata/md5-cache/chromeos-base/crosvm-0.1.0-r1401 b/metadata/md5-cache/chromeos-base/crosvm-0.1.0-r1401
deleted file mode 100644
index 67296d2..0000000
--- a/metadata/md5-cache/chromeos-base/crosvm-0.1.0-r1401
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=sys-apps/dtc:= sys-libs/libcap:= chromeos-base/libvda:= chromeos-base/minijail:= dev-libs/wayland:= crosvm-gpu? ( media-libs/virglrenderer:= ) crosvm-wl-dmabuf? ( media-libs/minigbm:= ) dev-rust/libchromeos:= virtual/libusb:1= dev-libs/wayland-protocols:= =dev-rust/android_log-sys-0.2*:= >=dev-rust/anyhow-1.0.32:= <dev-rust/anyhow-2.0 =dev-rust/async-task-4*:= =dev-rust/async-trait-0.1*:= =dev-rust/bitflags-1*:= ~dev-rust/cc-1.0.25:= dev-rust/cros_fuzz:= >=dev-rust/downcast-rs-1.2.0:= <dev-rust/downcast-rs-2.0 =dev-rust/futures-0.3*:= dev-rust/intrusive-collections:= =dev-rust/gdbstub-0.4*:= ~dev-rust/getopts-0.2.18:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0 dev-rust/libvda:= dev-rust/minijail:= ~dev-rust/num_cpus-1.9.0:= >=dev-rust/once_cell-1.7.2:= <dev-rust/once_cell-2 dev-rust/p9:= =dev-rust/paste-1*:= =dev-rust/pin-utils-0.1*:= ~dev-rust/pkg-config-0.3.11:= =dev-rust/proc-macro2-1*:= >=dev-rust/protobuf-2.8:= !>=dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.8:= !>=dev-rust/protoc-rust-3 =dev-rust/quote-1*:= =dev-rust/rand-0.6*:= =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= >=dev-rust/smallvec-1.6.1:= <dev-rust/smallvec-2 =dev-rust/syn-1*:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 dev-rust/remain:= dev-rust/vmm_vhost:= tpm2? ( chromeos-base/tpm2:= chromeos-base/trunks:= =dev-rust/dbus-0.6*:= ) media-sound/audio_streams:= media-sound/libcras:= crosvm-power-monitor-powerd? ( chromeos-base/system_api =dev-rust/dbus-0.6*:= ) >=virtual/rust-1.39.0:= sys-apps/baselayout
-DESCRIPTION=Utility for running VMs on Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/
-IUSE=test cros-debug crosvm-gpu -crosvm-direct -crosvm-plugin +crosvm-power-monitor-powerd +crosvm-video-decoder +crosvm-video-encoder +crosvm-wl-dmabuf fuzzer tpm2 android-vm-master arcvm_gce_l1 vhost-user-devices fuzzer cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86 cros_host cros_workon_tree_46859998bfa9cb66ba0df2968d5f3615c5b19e11
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=sys-apps/dtc:= sys-libs/libcap:= chromeos-base/libvda:= chromeos-base/minijail:= dev-libs/wayland:= crosvm-gpu? ( media-libs/virglrenderer:= ) crosvm-wl-dmabuf? ( media-libs/minigbm:= ) dev-rust/libchromeos:= virtual/libusb:1= !chromeos-base/crosvm-bin crosvm-power-monitor-powerd? ( sys-apps/dbus ) tpm2? ( sys-apps/dbus ) sys-apps/baselayout
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r1401
-SRC_URI=test? ( https://storage.googleapis.com/chromeos-localmirror/crosvm-testing-bzimage-x86_64-r0000 https://storage.googleapis.com/chromeos-localmirror/crosvm-testing-rootfs-x86_64-r0000 )
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=e2b619668f11f3f75126801389fa13cc
diff --git a/metadata/md5-cache/chromeos-base/crosvm-0.1.0-r1598 b/metadata/md5-cache/chromeos-base/crosvm-0.1.0-r1598
new file mode 100644
index 0000000..c845a2a
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/crosvm-0.1.0-r1598
@@ -0,0 +1,16 @@
+BDEPEND=test? ( chromeos-base/libvda:= ) dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=sys-apps/dtc:= sys-libs/libcap:= chromeos-base/libvda:= chromeos-base/minijail:= dev-libs/wayland:= crosvm-gpu? ( media-libs/virglrenderer:= ) crosvm-wl-dmabuf? ( media-libs/minigbm:= ) dev-rust/libchromeos:= virtual/libusb:1= dev-libs/wayland-protocols:= =dev-rust/android_log-sys-0.2*:= >=dev-rust/anyhow-1.0.32:= <dev-rust/anyhow-2.0 =dev-rust/async-task-4*:= =dev-rust/async-trait-0.1*:= =dev-rust/bitflags-1*:= ~dev-rust/cc-1.0.25:= >=dev-rust/crc32fast-1.2.1:= <dev-rust/crc32fast-2 dev-rust/cros_fuzz:= =dev-rust/dbus-0.8*:= >=dev-rust/downcast-rs-1.2.0:= <dev-rust/downcast-rs-2.0 =dev-rust/futures-0.3*:= dev-rust/intrusive-collections:= =dev-rust/gdbstub-0.5*:= >=dev-rust/gdbstub_arch-0.1.1:= <dev-rust/gdbstub_arch-0.2 ~dev-rust/getopts-0.2.18:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0 dev-rust/minijail:= ~dev-rust/num_cpus-1.9.0:= >=dev-rust/once_cell-1.7.2:= <dev-rust/once_cell-2 dev-rust/p9:= =dev-rust/paste-1*:= =dev-rust/pin-utils-0.1*:= ~dev-rust/pkg-config-0.3.11:= =dev-rust/proc-macro2-1*:= >=dev-rust/protobuf-2.8:= !>=dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.8:= !>=dev-rust/protoc-rust-3 =dev-rust/quote-1*:= =dev-rust/rand-0.6*:= =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= >=dev-rust/smallvec-1.6.1:= <dev-rust/smallvec-2 =dev-rust/syn-1*:= =dev-rust/tempfile-3*:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=dev-rust/uuid-0.8.2:= <dev-rust/uuid-0.9 dev-rust/remain:= dev-rust/system_api:= dev-rust/vmm_vhost:= tpm2? ( chromeos-base/tpm2:= chromeos-base/trunks:= =dev-rust/dbus-0.6*:= ) media-sound/libcras:= crosvm-power-monitor-powerd? ( chromeos-base/system_api =dev-rust/dbus-0.6*:= ) >=virtual/rust-1.39.0:= sys-apps/baselayout
+DESCRIPTION=Utility for running VMs on Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/
+IUSE=test cros-debug crosvm-gpu -crosvm-direct -crosvm-plugin +crosvm-power-monitor-powerd +crosvm-video-decoder +crosvm-video-encoder +crosvm-wl-dmabuf fuzzer tpm2 android-vm-master arcvm_gce_l1 fuzzer cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86 cros_host cros_workon_tree_c5944a955c7994afdaaee1facb2604801bb47e03
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=sys-apps/dtc:= sys-libs/libcap:= chromeos-base/libvda:= chromeos-base/minijail:= dev-libs/wayland:= crosvm-gpu? ( media-libs/virglrenderer:= ) crosvm-wl-dmabuf? ( media-libs/minigbm:= ) dev-rust/libchromeos:= virtual/libusb:1= !chromeos-base/crosvm-bin crosvm-power-monitor-powerd? ( sys-apps/dbus ) tpm2? ( sys-apps/dbus ) sys-apps/baselayout
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r1598
+SRC_URI=test? ( https://storage.googleapis.com/chromeos-localmirror/crosvm-testing-bzimage-x86_64-r0000 https://storage.googleapis.com/chromeos-localmirror/crosvm-testing-rootfs-x86_64-r0000 )
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=b1c1d1e2514f99d75547b87edf5104f8
diff --git a/metadata/md5-cache/chromeos-base/crosvm-9999 b/metadata/md5-cache/chromeos-base/crosvm-9999
index 887e5f6..4cae4ba 100644
--- a/metadata/md5-cache/chromeos-base/crosvm-9999
+++ b/metadata/md5-cache/chromeos-base/crosvm-9999
@@ -1,10 +1,10 @@
-BDEPEND=dev-vcs/git
+BDEPEND=test? ( chromeos-base/libvda:= ) dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=sys-apps/dtc:= sys-libs/libcap:= chromeos-base/libvda:= chromeos-base/minijail:= dev-libs/wayland:= crosvm-gpu? ( media-libs/virglrenderer:= ) crosvm-wl-dmabuf? ( media-libs/minigbm:= ) dev-rust/libchromeos:= virtual/libusb:1= dev-libs/wayland-protocols:= =dev-rust/android_log-sys-0.2*:= >=dev-rust/anyhow-1.0.32:= <dev-rust/anyhow-2.0 =dev-rust/async-task-4*:= =dev-rust/async-trait-0.1*:= =dev-rust/bitflags-1*:= ~dev-rust/cc-1.0.25:= dev-rust/cros_fuzz:= >=dev-rust/downcast-rs-1.2.0:= <dev-rust/downcast-rs-2.0 =dev-rust/futures-0.3*:= dev-rust/intrusive-collections:= =dev-rust/gdbstub-0.4*:= ~dev-rust/getopts-0.2.18:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0 dev-rust/libvda:= dev-rust/minijail:= ~dev-rust/num_cpus-1.9.0:= >=dev-rust/once_cell-1.7.2:= <dev-rust/once_cell-2 dev-rust/p9:= =dev-rust/paste-1*:= =dev-rust/pin-utils-0.1*:= ~dev-rust/pkg-config-0.3.11:= =dev-rust/proc-macro2-1*:= >=dev-rust/protobuf-2.8:= !>=dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.8:= !>=dev-rust/protoc-rust-3 =dev-rust/quote-1*:= =dev-rust/rand-0.6*:= =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= >=dev-rust/smallvec-1.6.1:= <dev-rust/smallvec-2 =dev-rust/syn-1*:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 dev-rust/remain:= dev-rust/vmm_vhost:= tpm2? ( chromeos-base/tpm2:= chromeos-base/trunks:= =dev-rust/dbus-0.6*:= ) media-sound/audio_streams:= media-sound/libcras:= crosvm-power-monitor-powerd? ( chromeos-base/system_api =dev-rust/dbus-0.6*:= ) >=virtual/rust-1.39.0:= sys-apps/baselayout
+DEPEND=sys-apps/dtc:= sys-libs/libcap:= chromeos-base/libvda:= chromeos-base/minijail:= dev-libs/wayland:= crosvm-gpu? ( media-libs/virglrenderer:= ) crosvm-wl-dmabuf? ( media-libs/minigbm:= ) dev-rust/libchromeos:= virtual/libusb:1= dev-libs/wayland-protocols:= =dev-rust/android_log-sys-0.2*:= >=dev-rust/anyhow-1.0.32:= <dev-rust/anyhow-2.0 =dev-rust/async-task-4*:= =dev-rust/async-trait-0.1*:= =dev-rust/bitflags-1*:= ~dev-rust/cc-1.0.25:= >=dev-rust/crc32fast-1.2.1:= <dev-rust/crc32fast-2 dev-rust/cros_fuzz:= =dev-rust/dbus-0.8*:= >=dev-rust/downcast-rs-1.2.0:= <dev-rust/downcast-rs-2.0 =dev-rust/futures-0.3*:= dev-rust/intrusive-collections:= =dev-rust/gdbstub-0.5*:= >=dev-rust/gdbstub_arch-0.1.1:= <dev-rust/gdbstub_arch-0.2 ~dev-rust/getopts-0.2.18:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0 dev-rust/minijail:= ~dev-rust/num_cpus-1.9.0:= >=dev-rust/once_cell-1.7.2:= <dev-rust/once_cell-2 dev-rust/p9:= =dev-rust/paste-1*:= =dev-rust/pin-utils-0.1*:= ~dev-rust/pkg-config-0.3.11:= =dev-rust/proc-macro2-1*:= >=dev-rust/protobuf-2.8:= !>=dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.8:= !>=dev-rust/protoc-rust-3 =dev-rust/quote-1*:= =dev-rust/rand-0.6*:= =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= >=dev-rust/smallvec-1.6.1:= <dev-rust/smallvec-2 =dev-rust/syn-1*:= =dev-rust/tempfile-3*:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=dev-rust/uuid-0.8.2:= <dev-rust/uuid-0.9 dev-rust/remain:= dev-rust/system_api:= dev-rust/vmm_vhost:= tpm2? ( chromeos-base/tpm2:= chromeos-base/trunks:= =dev-rust/dbus-0.6*:= ) media-sound/libcras:= crosvm-power-monitor-powerd? ( chromeos-base/system_api =dev-rust/dbus-0.6*:= ) >=virtual/rust-1.39.0:= sys-apps/baselayout
 DESCRIPTION=Utility for running VMs on Chrome OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/
-IUSE=test cros-debug crosvm-gpu -crosvm-direct -crosvm-plugin +crosvm-power-monitor-powerd +crosvm-video-decoder +crosvm-video-encoder +crosvm-wl-dmabuf fuzzer tpm2 android-vm-master arcvm_gce_l1 vhost-user-devices fuzzer cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86 cros_host cros_workon_tree_
+IUSE=test cros-debug crosvm-gpu -crosvm-direct -crosvm-plugin +crosvm-power-monitor-powerd +crosvm-video-decoder +crosvm-video-encoder +crosvm-wl-dmabuf fuzzer tpm2 android-vm-master arcvm_gce_l1 fuzzer cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86 cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
@@ -12,5 +12,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
 SRC_URI=test? ( https://storage.googleapis.com/chromeos-localmirror/crosvm-testing-bzimage-x86_64-r0000 https://storage.googleapis.com/chromeos-localmirror/crosvm-testing-rootfs-x86_64-r0000 )
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=3e60799824c5dd96fd56496681bead46
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=60318d93fedc467b97236f03630189ad
diff --git a/metadata/md5-cache/chromeos-base/cryptohome-0.0.1-r3707 b/metadata/md5-cache/chromeos-base/cryptohome-0.0.1-r3707
deleted file mode 100644
index 7df251c..0000000
--- a/metadata/md5-cache/chromeos-base/cryptohome-0.0.1-r3707
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=!chromeos-base/chromeos-cryptohome tpm? ( app-crypt/trousers:= ) fuzzer? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) selinux? ( sys-libs/libselinux:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/bootlockbox-client:= chromeos-base/cbor:= chromeos-base/chaps:= chromeos-base/chromeos-config-tools:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/tpm_manager:= dev-libs/dbus-glib:= dev-libs/flatbuffers:= dev-libs/glib:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/flashmap:= sys-apps/keyutils:= sys-apps/rootdev:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= sys-fs/lvm2:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) tpm2? ( chromeos-base/trunks:=[test?] ) chromeos-base/attestation-client:= chromeos-base/cryptohome-client:= chromeos-base/power_manager-client:= chromeos-base/protofiles:= chromeos-base/system_api:=[fuzzer?] chromeos-base/tpm_manager-client:= chromeos-base/vboot_reference:= chromeos-base/libhwsec:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Encrypted home directories for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome/
-IUSE=-cert_provision +device_mapper -direncription_allow_v2 -direncryption double_extend_pcr_issue +downloads_bind_mount fuzzer generated_cros_config generic_tpm2 kernel-5_10 kernel-5_4 kernel-upstream lvm_stateful_partition mount_oop pinweaver selinux slow_mount systemd test tpm tpm2 tpm2_simulator unibuild uprev-4-to-5 user_session_isolation +vault_legacy_mount vtpm_proxy cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9ed3579a46a08a64f1ac9d96a1faaa6e15720b9_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_1a305e65cfaf27dd42734a37eda080d40b377d6c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9ed3579a46a08a64f1ac9d96a1faaa6e15720b9_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_1a305e65cfaf27dd42734a37eda080d40b377d6c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!chromeos-base/chromeos-cryptohome tpm? ( app-crypt/trousers:= ) fuzzer? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) selinux? ( sys-libs/libselinux:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/bootlockbox-client:= chromeos-base/cbor:= chromeos-base/chaps:= chromeos-base/chromeos-config-tools:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/tpm_manager:= dev-libs/dbus-glib:= dev-libs/flatbuffers:= dev-libs/glib:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/flashmap:= sys-apps/keyutils:= sys-apps/rootdev:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= sys-fs/lvm2:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=device_mapper tpm2? ( !tpm )
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=e16eaed8fc4300f191b9f335a71f74b1
diff --git a/metadata/md5-cache/chromeos-base/cryptohome-0.0.1-r3890 b/metadata/md5-cache/chromeos-base/cryptohome-0.0.1-r3890
new file mode 100644
index 0000000..001543a
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cryptohome-0.0.1-r3890
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=!chromeos-base/chromeos-cryptohome tpm? ( app-crypt/trousers:= ) fuzzer? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) selinux? ( sys-libs/libselinux:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/bootlockbox-client:= chromeos-base/cbor:= chromeos-base/chaps:= chromeos-base/chromeos-config-tools:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/tpm_manager:= dev-libs/flatbuffers:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/flashmap:= sys-apps/keyutils:= sys-apps/rootdev:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= sys-fs/lvm2:= tpm2? ( chromeos-base/trunks:=[test?] ) chromeos-base/attestation-client:= chromeos-base/cryptohome-client:= chromeos-base/power_manager-client:= chromeos-base/protofiles:= chromeos-base/system_api:=[fuzzer?] chromeos-base/tpm_manager-client:= chromeos-base/vboot_reference:= chromeos-base/libhwsec:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Encrypted home directories for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome/
+IUSE=-cert_provision +device_mapper -direncription_allow_v2 -direncryption double_extend_pcr_issue +downloads_bind_mount fuzzer generic_tpm2 kernel-5_10 kernel-5_4 kernel-upstream lvm_stateful_partition mount_oop pinweaver selinux slow_mount systemd test tpm tpm_dynamic tpm2 tpm2_simulator uprev-4-to-5 user_session_isolation +vault_legacy_mount vtpm_proxy cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_805a463dbaf0f6276d889ff7b347e2dcd599f8f3_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_1a305e65cfaf27dd42734a37eda080d40b377d6c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_805a463dbaf0f6276d889ff7b347e2dcd599f8f3_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_1a305e65cfaf27dd42734a37eda080d40b377d6c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!chromeos-base/chromeos-cryptohome tpm? ( app-crypt/trousers:= ) fuzzer? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) selinux? ( sys-libs/libselinux:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/bootlockbox-client:= chromeos-base/cbor:= chromeos-base/chaps:= chromeos-base/chromeos-config-tools:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/tpm_manager:= dev-libs/flatbuffers:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/flashmap:= sys-apps/keyutils:= sys-apps/rootdev:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= sys-fs/lvm2:= virtual/tmpfiles has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+REQUIRED_USE=device_mapper tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=6c7962fc93fe2644ed0eb0420008b8b8
diff --git a/metadata/md5-cache/chromeos-base/cryptohome-9999 b/metadata/md5-cache/chromeos-base/cryptohome-9999
index e994bcb..de61bad 100644
--- a/metadata/md5-cache/chromeos-base/cryptohome-9999
+++ b/metadata/md5-cache/chromeos-base/cryptohome-9999
@@ -1,15 +1,15 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig virtual/pkgconfig
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig virtual/pkgconfig
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=!chromeos-base/chromeos-cryptohome tpm? ( app-crypt/trousers:= ) fuzzer? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) selinux? ( sys-libs/libselinux:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/bootlockbox-client:= chromeos-base/cbor:= chromeos-base/chaps:= chromeos-base/chromeos-config-tools:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/tpm_manager:= dev-libs/dbus-glib:= dev-libs/flatbuffers:= dev-libs/glib:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/flashmap:= sys-apps/keyutils:= sys-apps/rootdev:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= sys-fs/lvm2:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) tpm2? ( chromeos-base/trunks:=[test?] ) chromeos-base/attestation-client:= chromeos-base/cryptohome-client:= chromeos-base/power_manager-client:= chromeos-base/protofiles:= chromeos-base/system_api:=[fuzzer?] chromeos-base/tpm_manager-client:= chromeos-base/vboot_reference:= chromeos-base/libhwsec:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=!chromeos-base/chromeos-cryptohome tpm? ( app-crypt/trousers:= ) fuzzer? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) selinux? ( sys-libs/libselinux:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/bootlockbox-client:= chromeos-base/cbor:= chromeos-base/chaps:= chromeos-base/chromeos-config-tools:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/tpm_manager:= dev-libs/flatbuffers:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/flashmap:= sys-apps/keyutils:= sys-apps/rootdev:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= sys-fs/lvm2:= tpm2? ( chromeos-base/trunks:=[test?] ) chromeos-base/attestation-client:= chromeos-base/cryptohome-client:= chromeos-base/power_manager-client:= chromeos-base/protofiles:= chromeos-base/system_api:=[fuzzer?] chromeos-base/tpm_manager-client:= chromeos-base/vboot_reference:= chromeos-base/libhwsec:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Encrypted home directories for Chromium OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome/
-IUSE=-cert_provision +device_mapper -direncription_allow_v2 -direncryption double_extend_pcr_issue +downloads_bind_mount fuzzer generated_cros_config generic_tpm2 kernel-5_10 kernel-5_4 kernel-upstream lvm_stateful_partition mount_oop pinweaver selinux slow_mount systemd test tpm tpm2 tpm2_simulator unibuild uprev-4-to-5 user_session_isolation +vault_legacy_mount vtpm_proxy cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=-cert_provision +device_mapper -direncription_allow_v2 -direncryption double_extend_pcr_issue +downloads_bind_mount fuzzer generic_tpm2 kernel-5_10 kernel-5_4 kernel-upstream lvm_stateful_partition mount_oop pinweaver selinux slow_mount systemd test tpm tpm_dynamic tpm2 tpm2_simulator uprev-4-to-5 user_session_isolation +vault_legacy_mount vtpm_proxy cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=!chromeos-base/chromeos-cryptohome tpm? ( app-crypt/trousers:= ) fuzzer? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) selinux? ( sys-libs/libselinux:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/bootlockbox-client:= chromeos-base/cbor:= chromeos-base/chaps:= chromeos-base/chromeos-config-tools:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/tpm_manager:= dev-libs/dbus-glib:= dev-libs/flatbuffers:= dev-libs/glib:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/flashmap:= sys-apps/keyutils:= sys-apps/rootdev:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= sys-fs/lvm2:= unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=device_mapper tpm2? ( !tpm )
+RDEPEND=!chromeos-base/chromeos-cryptohome tpm? ( app-crypt/trousers:= ) fuzzer? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) selinux? ( sys-libs/libselinux:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/bootlockbox-client:= chromeos-base/cbor:= chromeos-base/chaps:= chromeos-base/chromeos-config-tools:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/secure-erase-file:= chromeos-base/tpm_manager:= dev-libs/flatbuffers:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/flashmap:= sys-apps/keyutils:= sys-apps/rootdev:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= sys-fs/lvm2:= virtual/tmpfiles has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+REQUIRED_USE=device_mapper tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=107b974fd37e154124277c89288a0a4c
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=331d7c78ceefcdb5016eb28a21c740c7
diff --git a/metadata/md5-cache/chromeos-base/cryptohome-client-0.0.1-r1348 b/metadata/md5-cache/chromeos-base/cryptohome-client-0.0.1-r1348
deleted file mode 100644
index 431d325..0000000
--- a/metadata/md5-cache/chromeos-base/cryptohome-client-0.0.1-r1348
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=chromeos-base/chromeos-dbus-bindings dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Cryptohome D-Bus client library for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome
-IUSE=cros_host cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9ed3579a46a08a64f1ac9d96a1faaa6e15720b9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9ed3579a46a08a64f1ac9d96a1faaa6e15720b9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!<chromeos-base/cryptohome-0.0.1 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r1348
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=91bcc74293c0f33f84cb7e18c9ab0938
diff --git a/metadata/md5-cache/chromeos-base/cryptohome-client-0.0.1-r1518 b/metadata/md5-cache/chromeos-base/cryptohome-client-0.0.1-r1518
new file mode 100644
index 0000000..e4071a3
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cryptohome-client-0.0.1-r1518
@@ -0,0 +1,14 @@
+BDEPEND=chromeos-base/chromeos-dbus-bindings dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Cryptohome D-Bus client library for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_805a463dbaf0f6276d889ff7b347e2dcd599f8f3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_805a463dbaf0f6276d889ff7b347e2dcd599f8f3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!<chromeos-base/cryptohome-0.0.1-r3700 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r1518
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2db7d7a1b88032668022acb222b2b71e
diff --git a/metadata/md5-cache/chromeos-base/cryptohome-client-9999 b/metadata/md5-cache/chromeos-base/cryptohome-client-9999
index 2a941b9..cae9925 100644
--- a/metadata/md5-cache/chromeos-base/cryptohome-client-9999
+++ b/metadata/md5-cache/chromeos-base/cryptohome-client-9999
@@ -4,11 +4,11 @@
 DESCRIPTION=Cryptohome D-Bus client library for Chromium OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome
-IUSE=cros_host cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=!<chromeos-base/cryptohome-0.0.1 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=!<chromeos-base/cryptohome-0.0.1-r3700 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=20dc936dd92afe6c085c94c499348da2
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ebdb6ed82f4b43a1c9a89e35a4879b6c
diff --git a/metadata/md5-cache/chromeos-base/cryptohome-dev-utils-0.0.1-r1185 b/metadata/md5-cache/chromeos-base/cryptohome-dev-utils-0.0.1-r1185
deleted file mode 100644
index 8691579..0000000
--- a/metadata/md5-cache/chromeos-base/cryptohome-dev-utils-0.0.1-r1185
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/chaps:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= chromeos-base/secure-erase-file:= dev-libs/flatbuffers:= dev-libs/glib:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/keyutils:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Cryptohome developer and testing utilities for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome
-IUSE=tpm tpm2 cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9ed3579a46a08a64f1ac9d96a1faaa6e15720b9_1a305e65cfaf27dd42734a37eda080d40b377d6c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9ed3579a46a08a64f1ac9d96a1faaa6e15720b9_1a305e65cfaf27dd42734a37eda080d40b377d6c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/chaps:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= chromeos-base/secure-erase-file:= dev-libs/flatbuffers:= dev-libs/glib:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/keyutils:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=tpm2? ( !tpm )
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=52163038a229709b280e0e858b529ec0
diff --git a/metadata/md5-cache/chromeos-base/cryptohome-dev-utils-0.0.1-r1359 b/metadata/md5-cache/chromeos-base/cryptohome-dev-utils-0.0.1-r1359
new file mode 100644
index 0000000..fcc1509
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cryptohome-dev-utils-0.0.1-r1359
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/cbor:= chromeos-base/chaps:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= chromeos-base/secure-erase-file:= dev-libs/flatbuffers:= dev-libs/glib:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/keyutils:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Cryptohome developer and testing utilities for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome
+IUSE=tpm tpm_dynamic tpm2 cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_805a463dbaf0f6276d889ff7b347e2dcd599f8f3_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1a305e65cfaf27dd42734a37eda080d40b377d6c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_805a463dbaf0f6276d889ff7b347e2dcd599f8f3_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1a305e65cfaf27dd42734a37eda080d40b377d6c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/cbor:= chromeos-base/chaps:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= chromeos-base/secure-erase-file:= dev-libs/flatbuffers:= dev-libs/glib:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/keyutils:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e2a788d3da5863a70b2eca021f2cc73c
diff --git a/metadata/md5-cache/chromeos-base/cryptohome-dev-utils-9999 b/metadata/md5-cache/chromeos-base/cryptohome-dev-utils-9999
index 5063dff..f537cbf 100644
--- a/metadata/md5-cache/chromeos-base/cryptohome-dev-utils-9999
+++ b/metadata/md5-cache/chromeos-base/cryptohome-dev-utils-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/chaps:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= chromeos-base/secure-erase-file:= dev-libs/flatbuffers:= dev-libs/glib:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/keyutils:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/cbor:= chromeos-base/chaps:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= chromeos-base/secure-erase-file:= dev-libs/flatbuffers:= dev-libs/glib:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/keyutils:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Cryptohome developer and testing utilities for Chromium OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cryptohome
-IUSE=tpm tpm2 cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=tpm tpm_dynamic tpm2 cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/chaps:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= chromeos-base/secure-erase-file:= dev-libs/flatbuffers:= dev-libs/glib:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/keyutils:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=tpm2? ( !tpm )
+RDEPEND=tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:= ) chromeos-base/attestation:= chromeos-base/biod_proxy:= chromeos-base/cbor:= chromeos-base/chaps:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager:= chromeos-base/secure-erase-file:= dev-libs/flatbuffers:= dev-libs/glib:= dev-libs/openssl:= dev-libs/protobuf:= sys-apps/keyutils:= sys-fs/e2fsprogs:= sys-fs/ecryptfs-utils:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b10c5abc7f5a673e5b4b312640002dbc
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b8561ef480643cf32d0a36d39d999df8
diff --git a/metadata/md5-cache/chromeos-base/cups-fuzz-2.3.3-r18 b/metadata/md5-cache/chromeos-base/cups-fuzz-2.3.3-r18
deleted file mode 100644
index 80551e4..0000000
--- a/metadata/md5-cache/chromeos-base/cups-fuzz-2.3.3-r18
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install setup unpack
-DEPEND=net-print/cups:=[fuzzer] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
-DESCRIPTION=Fuzzer for PPD and IPP functions in CUPS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/cups/+/HEAD/fuzzers/
-IUSE=asan fuzzer fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_281e66bb2bfff2994b709d4209668c558742dee8 cros-debug
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=net-print/cups:=[fuzzer] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
-REQUIRED_USE=fuzzer
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=009419682adc422201e1fe58bdc8a034
diff --git a/metadata/md5-cache/chromeos-base/cups-fuzz-2.3.3-r21 b/metadata/md5-cache/chromeos-base/cups-fuzz-2.3.3-r21
new file mode 100644
index 0000000..210373d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/cups-fuzz-2.3.3-r21
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install setup unpack
+DEPEND=net-print/cups:=[fuzzer] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
+DESCRIPTION=Fuzzer for PPD and IPP functions in CUPS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/cups/+/HEAD/fuzzers/
+IUSE=asan fuzzer fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_d30efb8220da900068710140a77c1dee40133b7d cros-debug
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=net-print/cups:=[fuzzer] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
+REQUIRED_USE=fuzzer
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=20e2e2e8fba20477143f0eb99c3fe4c3
diff --git a/metadata/md5-cache/chromeos-base/cups-fuzz-9999 b/metadata/md5-cache/chromeos-base/cups-fuzz-9999
index 2954640..6be8c22 100644
--- a/metadata/md5-cache/chromeos-base/cups-fuzz-9999
+++ b/metadata/md5-cache/chromeos-base/cups-fuzz-9999
@@ -11,5 +11,5 @@
 RDEPEND=net-print/cups:=[fuzzer] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
 REQUIRED_USE=fuzzer
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=c4a0cb0331dc7b129cc22981dff97d1d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fc8d892ed7e74a5b4d2446853bdfc65e
diff --git a/metadata/md5-cache/chromeos-base/debugd-0.0.1-r3060 b/metadata/md5-cache/chromeos-base/debugd-0.0.1-r3060
deleted file mode 100644
index e678c2d..0000000
--- a/metadata/md5-cache/chromeos-base/debugd-0.0.1-r3060
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/chromeos-login:= chromeos-base/minijail:= chromeos-base/shill-client:= chromeos-base/vboot_reference:= dev-libs/protobuf:= dev-libs/re2:= net-libs/libpcap:= net-wireless/iw:= sys-apps/rootdev:= sys-libs/libcap:= sata? ( sys-apps/smartmontools:= ) chromeos-base/debugd-client:= chromeos-base/system_api:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Chrome OS debugging service
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/debugd/
-IUSE=arcvm cellular iwlwifi_dump nvme sata tpm cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4ad17d812996a69d326586115483cd71328fae07_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4ad17d812996a69d326586115483cd71328fae07_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/chromeos-login:= chromeos-base/minijail:= chromeos-base/shill-client:= chromeos-base/vboot_reference:= dev-libs/protobuf:= dev-libs/re2:= net-libs/libpcap:= net-wireless/iw:= sys-apps/rootdev:= sys-libs/libcap:= sata? ( sys-apps/smartmontools:= ) iwlwifi_dump? ( chromeos-base/intel-wifi-fw-dump ) nvme? ( sys-apps/nvme-cli ) chromeos-base/chromeos-ssh-testkeys chromeos-base/chromeos-sshd-init !chromeos-base/workarounds sys-apps/iproute2 sys-apps/memtester >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r3060
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=3eaf5731049cf2b38216a70076a0eddf
diff --git a/metadata/md5-cache/chromeos-base/debugd-0.0.1-r3113 b/metadata/md5-cache/chromeos-base/debugd-0.0.1-r3113
new file mode 100644
index 0000000..96b4d20
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/debugd-0.0.1-r3113
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/chromeos-login:= chromeos-base/cryptohome-client:= chromeos-base/minijail:= chromeos-base/shill-client:= chromeos-base/vboot_reference:= dev-libs/protobuf:= dev-libs/re2:= net-libs/libpcap:= net-wireless/iw:= sys-apps/rootdev:= sys-libs/libcap:= sata? ( sys-apps/smartmontools:= ) chromeos-base/debugd-client:= chromeos-base/system_api:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Chrome OS debugging service
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/debugd/
+IUSE=arcvm cellular iwlwifi_dump nvme sata tpm cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_91266a50bba6dd3b15e12a3125cd46be8bdc2f92_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_91266a50bba6dd3b15e12a3125cd46be8bdc2f92_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chromeos-login:= chromeos-base/cryptohome-client:= chromeos-base/minijail:= chromeos-base/shill-client:= chromeos-base/vboot_reference:= dev-libs/protobuf:= dev-libs/re2:= net-libs/libpcap:= net-wireless/iw:= sys-apps/rootdev:= sys-libs/libcap:= sata? ( sys-apps/smartmontools:= ) iwlwifi_dump? ( chromeos-base/intel-wifi-fw-dump ) nvme? ( sys-apps/nvme-cli ) chromeos-base/chromeos-ssh-testkeys chromeos-base/chromeos-sshd-init !chromeos-base/workarounds sys-apps/iproute2 sys-apps/memtester >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r3113
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=fd85ca9c41c58a161e6908b354c33d59
diff --git a/metadata/md5-cache/chromeos-base/debugd-9999 b/metadata/md5-cache/chromeos-base/debugd-9999
index ad2aad5..d01979d 100644
--- a/metadata/md5-cache/chromeos-base/debugd-9999
+++ b/metadata/md5-cache/chromeos-base/debugd-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/chromeos-login:= chromeos-base/minijail:= chromeos-base/shill-client:= chromeos-base/vboot_reference:= dev-libs/protobuf:= dev-libs/re2:= net-libs/libpcap:= net-wireless/iw:= sys-apps/rootdev:= sys-libs/libcap:= sata? ( sys-apps/smartmontools:= ) chromeos-base/debugd-client:= chromeos-base/system_api:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/chromeos-login:= chromeos-base/cryptohome-client:= chromeos-base/minijail:= chromeos-base/shill-client:= chromeos-base/vboot_reference:= dev-libs/protobuf:= dev-libs/re2:= net-libs/libpcap:= net-wireless/iw:= sys-apps/rootdev:= sys-libs/libcap:= sata? ( sys-apps/smartmontools:= ) chromeos-base/debugd-client:= chromeos-base/system_api:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Chrome OS debugging service
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/debugd/
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/chromeos-login:= chromeos-base/minijail:= chromeos-base/shill-client:= chromeos-base/vboot_reference:= dev-libs/protobuf:= dev-libs/re2:= net-libs/libpcap:= net-wireless/iw:= sys-apps/rootdev:= sys-libs/libcap:= sata? ( sys-apps/smartmontools:= ) iwlwifi_dump? ( chromeos-base/intel-wifi-fw-dump ) nvme? ( sys-apps/nvme-cli ) chromeos-base/chromeos-ssh-testkeys chromeos-base/chromeos-sshd-init !chromeos-base/workarounds sys-apps/iproute2 sys-apps/memtester >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/chromeos-login:= chromeos-base/cryptohome-client:= chromeos-base/minijail:= chromeos-base/shill-client:= chromeos-base/vboot_reference:= dev-libs/protobuf:= dev-libs/re2:= net-libs/libpcap:= net-wireless/iw:= sys-apps/rootdev:= sys-libs/libcap:= sata? ( sys-apps/smartmontools:= ) iwlwifi_dump? ( chromeos-base/intel-wifi-fw-dump ) nvme? ( sys-apps/nvme-cli ) chromeos-base/chromeos-ssh-testkeys chromeos-base/chromeos-sshd-init !chromeos-base/workarounds sys-apps/iproute2 sys-apps/memtester >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=53942c0f979428086b9c5801f5f07a3e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=5cdc6ad1849047e0017f948e60edae59
diff --git a/metadata/md5-cache/chromeos-base/debugd-client-0.0.1-r2045 b/metadata/md5-cache/chromeos-base/debugd-client-0.0.1-r2045
deleted file mode 100644
index 8f6b2b1..0000000
--- a/metadata/md5-cache/chromeos-base/debugd-client-0.0.1-r2045
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=chromeos-base/chromeos-dbus-bindings dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS debugd client library
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/debugd/
-IUSE=cros_host cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4ad17d812996a69d326586115483cd71328fae07_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4ad17d812996a69d326586115483cd71328fae07_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r2045
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=c0f98c6fb928e07daab5f66fbdc5ca93
diff --git a/metadata/md5-cache/chromeos-base/debugd-client-0.0.1-r2097 b/metadata/md5-cache/chromeos-base/debugd-client-0.0.1-r2097
new file mode 100644
index 0000000..04ddad5
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/debugd-client-0.0.1-r2097
@@ -0,0 +1,14 @@
+BDEPEND=chromeos-base/chromeos-dbus-bindings dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS debugd client library
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/debugd/
+IUSE=cros_host cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_91266a50bba6dd3b15e12a3125cd46be8bdc2f92_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_91266a50bba6dd3b15e12a3125cd46be8bdc2f92_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r2097
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1be33727932223be5645c2a2eeb93e78
diff --git a/metadata/md5-cache/chromeos-base/debugd-client-9999 b/metadata/md5-cache/chromeos-base/debugd-client-9999
index fcc33f4..4ce1d24 100644
--- a/metadata/md5-cache/chromeos-base/debugd-client-9999
+++ b/metadata/md5-cache/chromeos-base/debugd-client-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=308edde34df2bf06eae84cfc7264e6cd
diff --git a/metadata/md5-cache/chromeos-base/dev-install-0.0.1-r1226 b/metadata/md5-cache/chromeos-base/dev-install-0.0.1-r1226
deleted file mode 100644
index 5efd5b1..0000000
--- a/metadata/md5-cache/chromeos-base/dev-install-0.0.1-r1226
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chromium OS Developer Packages installer
-EAPI=7
-HOMEPAGE=http://dev.chromium.org/chromium-os/how-tos-and-troubleshooting/install-software-on-base-images
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_d23a0367563b6fee09db7bcd5f0b7bcdd246b4b6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_d23a0367563b6fee09db7bcd5f0b7bcdd246b4b6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/vboot_reference:= app-arch/bzip2 app-arch/tar net-misc/curl >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=54d616ee0bc99a637387f1effe9821b4
diff --git a/metadata/md5-cache/chromeos-base/dev-install-0.0.1-r1252 b/metadata/md5-cache/chromeos-base/dev-install-0.0.1-r1252
new file mode 100644
index 0000000..8c71709
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/dev-install-0.0.1-r1252
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chromium OS Developer Packages installer
+EAPI=7
+HOMEPAGE=http://dev.chromium.org/chromium-os/how-tos-and-troubleshooting/install-software-on-base-images
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_143c28c51372ef4bc34d96a84426b858cad15b31_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_143c28c51372ef4bc34d96a84426b858cad15b31_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/vboot_reference:= app-arch/bzip2 app-arch/tar net-misc/curl >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=bd4c0ec0b580b7e374f62232c5e497e7
diff --git a/metadata/md5-cache/chromeos-base/dev-install-9999 b/metadata/md5-cache/chromeos-base/dev-install-9999
index d5668a4..f55220d 100644
--- a/metadata/md5-cache/chromeos-base/dev-install-9999
+++ b/metadata/md5-cache/chromeos-base/dev-install-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/vboot_reference:= app-arch/bzip2 app-arch/tar net-misc/curl >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=a259f68359639bd6e6c4b9aed6559666
diff --git a/metadata/md5-cache/chromeos-base/devserver-0.0.3-r1126 b/metadata/md5-cache/chromeos-base/devserver-0.0.3-r1126
new file mode 100644
index 0000000..f84f8b5
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/devserver-0.0.3-r1126
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup test unpack
+DEPEND=dev-python/psutil
+DESCRIPTION=Server to cache Chromium OS build artifacts from Google Storage.
+EAPI=7
+HOMEPAGE=http://dev.chromium.org/chromium-os/how-tos-and-troubleshooting/using-the-dev-server
+IUSE=cros_host cros_workon_tree_933f8b3c8f81581b6e7c3375e0577b15913133d4
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-lang/python dev-python/protobuf-python dev-python/cherrypy net-misc/gsutil !<chromeos-base/cros-devutils-1
+SLOT=0/0.0.3-r1126
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ee978d4f74df72cf0f454cbe63246f17
diff --git a/metadata/md5-cache/chromeos-base/devserver-0.0.3-r977 b/metadata/md5-cache/chromeos-base/devserver-0.0.3-r977
deleted file mode 100644
index d675c4b..0000000
--- a/metadata/md5-cache/chromeos-base/devserver-0.0.3-r977
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup test unpack
-DEPEND=dev-python/psutil
-DESCRIPTION=Server to cache Chromium OS build artifacts from Google Storage.
-EAPI=7
-HOMEPAGE=http://dev.chromium.org/chromium-os/how-tos-and-troubleshooting/using-the-dev-server
-IUSE=cros_host cros_workon_tree_9f106081447f3fb142fa0718f95458437296f96d
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-lang/python dev-python/protobuf-python dev-python/cherrypy net-misc/gsutil !<chromeos-base/cros-devutils-1
-SLOT=0/0.0.3-r977
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=276d04a74a63aec3bdf4ca26c0b2a914
diff --git a/metadata/md5-cache/chromeos-base/devserver-9999 b/metadata/md5-cache/chromeos-base/devserver-9999
index 7577cc7..d0eaf2b 100644
--- a/metadata/md5-cache/chromeos-base/devserver-9999
+++ b/metadata/md5-cache/chromeos-base/devserver-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=dev-lang/python dev-python/protobuf-python dev-python/cherrypy net-misc/gsutil !<chromeos-base/cros-devutils-1
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f6220d4509abee52b71f323e1ae254e8
diff --git a/metadata/md5-cache/chromeos-base/diagnostics-0.0.1-r1106 b/metadata/md5-cache/chromeos-base/diagnostics-0.0.1-r1106
new file mode 100644
index 0000000..85d0446
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/diagnostics-0.0.1-r1106
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= dev-libs/protobuf:= dev-libs/re2:= net-libs/grpc:= virtual/libudev:= sys-apps/pciutils:= virtual/opengles:= chromeos-base/attestation-client:= chromeos-base/debugd-client:= chromeos-base/tpm_manager-client:= chromeos-base/system_api:=[fuzzer?] media-sound/adhd:= x11-drivers/opengles-headers:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Device telemetry and diagnostics for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics
+IUSE=fuzzer wilco mesa_reven cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_5053293c8acdb133cff9f0893424aca79679a148_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_5053293c8acdb133cff9f0893424aca79679a148_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= dev-libs/protobuf:= dev-libs/re2:= net-libs/grpc:= virtual/libudev:= sys-apps/pciutils:= virtual/opengles:= dev-util/stressapptest wilco? ( sys-block/fio chromeos-base/chromeos-dtc-vm chromeos-base/vpd ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r1106
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=5b8ee99c31d73110822938c2ba5f7536
diff --git a/metadata/md5-cache/chromeos-base/diagnostics-0.0.1-r991 b/metadata/md5-cache/chromeos-base/diagnostics-0.0.1-r991
deleted file mode 100644
index d7575d4..0000000
--- a/metadata/md5-cache/chromeos-base/diagnostics-0.0.1-r991
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= dev-libs/protobuf:= dev-libs/re2:= net-libs/grpc:= virtual/libudev:= chromeos-base/debugd-client:= chromeos-base/system_api:=[fuzzer?] media-sound/adhd:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Device telemetry and diagnostics for Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics
-IUSE=fuzzer wilco generated_cros_config unibuild cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_afcd353b9d8c8408cf7fb45f9b3d934434a16eb5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_afcd353b9d8c8408cf7fb45f9b3d934434a16eb5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= dev-libs/protobuf:= dev-libs/re2:= net-libs/grpc:= virtual/libudev:= chromeos-base/minijail dev-util/stressapptest wilco? ( sys-block/fio chromeos-base/chromeos-dtc-vm chromeos-base/vpd ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r991
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=8f4866aaad54648f82e593c00f6426c1
diff --git a/metadata/md5-cache/chromeos-base/diagnostics-9999 b/metadata/md5-cache/chromeos-base/diagnostics-9999
index 23a410f..6bddd99 100644
--- a/metadata/md5-cache/chromeos-base/diagnostics-9999
+++ b/metadata/md5-cache/chromeos-base/diagnostics-9999
@@ -1,14 +1,14 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= dev-libs/protobuf:= dev-libs/re2:= net-libs/grpc:= virtual/libudev:= chromeos-base/debugd-client:= chromeos-base/system_api:=[fuzzer?] media-sound/adhd:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= dev-libs/protobuf:= dev-libs/re2:= net-libs/grpc:= virtual/libudev:= sys-apps/pciutils:= virtual/opengles:= chromeos-base/attestation-client:= chromeos-base/debugd-client:= chromeos-base/tpm_manager-client:= chromeos-base/system_api:=[fuzzer?] media-sound/adhd:= x11-drivers/opengles-headers:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Device telemetry and diagnostics for Chrome OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics
-IUSE=fuzzer wilco generated_cros_config unibuild cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=fuzzer wilco mesa_reven cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= dev-libs/protobuf:= dev-libs/re2:= net-libs/grpc:= virtual/libudev:= chromeos-base/minijail dev-util/stressapptest wilco? ( sys-block/fio chromeos-base/chromeos-dtc-vm chromeos-base/vpd ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= dev-libs/protobuf:= dev-libs/re2:= net-libs/grpc:= virtual/libudev:= sys-apps/pciutils:= virtual/opengles:= dev-util/stressapptest wilco? ( sys-block/fio chromeos-base/chromeos-dtc-vm chromeos-base/vpd ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=56e01cf626ae39b8997db5edea3b16a8
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=d143dc9637fb44348a97ee6677d53d8f
diff --git a/metadata/md5-cache/chromeos-base/diagnostics-dpsl-test-0.0.1-r657 b/metadata/md5-cache/chromeos-base/diagnostics-dpsl-test-0.0.1-r657
deleted file mode 100644
index 7d9eed4..0000000
--- a/metadata/md5-cache/chromeos-base/diagnostics-dpsl-test-0.0.1-r657
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Diagnostics DPSL test designed to be run inside VM
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics/dpsl/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_afcd353b9d8c8408cf7fb45f9b3d934434a16eb5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_afcd353b9d8c8408cf7fb45f9b3d934434a16eb5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=net-libs/grpc:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ebd083ba792d96564c79e2450de0b65e
diff --git a/metadata/md5-cache/chromeos-base/diagnostics-dpsl-test-0.0.1-r744 b/metadata/md5-cache/chromeos-base/diagnostics-dpsl-test-0.0.1-r744
new file mode 100644
index 0000000..fc8922a
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/diagnostics-dpsl-test-0.0.1-r744
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Diagnostics DPSL test designed to be run inside VM
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics/dpsl/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5053293c8acdb133cff9f0893424aca79679a148_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5053293c8acdb133cff9f0893424aca79679a148_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=net-libs/grpc:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=b09b99443ba5792c2783f74cca80e984
diff --git a/metadata/md5-cache/chromeos-base/diagnostics-dpsl-test-9999 b/metadata/md5-cache/chromeos-base/diagnostics-dpsl-test-9999
index ba76151..21580b4 100644
--- a/metadata/md5-cache/chromeos-base/diagnostics-dpsl-test-9999
+++ b/metadata/md5-cache/chromeos-base/diagnostics-dpsl-test-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=net-libs/grpc:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=beda9c0689041584b822037f4d582c24
diff --git a/metadata/md5-cache/chromeos-base/disk_updater-0.0.1-r3081 b/metadata/md5-cache/chromeos-base/disk_updater-0.0.1-r3081
deleted file mode 100644
index c432704..0000000
--- a/metadata/md5-cache/chromeos-base/disk_updater-0.0.1-r3081
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Root disk firmware updater
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/disk_updater/
-IUSE=+sata mmc nvme cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a84edaa470edc69e27335f718e4784a8fcc883f9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a84edaa470edc69e27335f718e4784a8fcc883f9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/chromeos-common-script dev-util/shflags sata? ( sys-apps/hdparm ) mmc? ( sys-apps/mmc-utils ) nvme? ( sys-apps/nvme-cli ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r3081
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=52a24d753cb9df0d75e971c88f077a13
diff --git a/metadata/md5-cache/chromeos-base/disk_updater-0.0.1-r3106 b/metadata/md5-cache/chromeos-base/disk_updater-0.0.1-r3106
new file mode 100644
index 0000000..91c2d48
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/disk_updater-0.0.1-r3106
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Root disk firmware updater
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/disk_updater/
+IUSE=+sata mmc nvme cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_a84edaa470edc69e27335f718e4784a8fcc883f9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_a84edaa470edc69e27335f718e4784a8fcc883f9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chromeos-common-script dev-util/shflags sata? ( sys-apps/hdparm ) mmc? ( sys-apps/mmc-utils ) nvme? ( sys-apps/nvme-cli ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r3106
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ea1a0ab89dc4b028f2f17f3ebd1b7cb9
diff --git a/metadata/md5-cache/chromeos-base/disk_updater-9999 b/metadata/md5-cache/chromeos-base/disk_updater-9999
index a6e9925..5152a94 100644
--- a/metadata/md5-cache/chromeos-base/disk_updater-9999
+++ b/metadata/md5-cache/chromeos-base/disk_updater-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/chromeos-common-script dev-util/shflags sata? ( sys-apps/hdparm ) mmc? ( sys-apps/mmc-utils ) nvme? ( sys-apps/nvme-cli ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8b11f1ee0d444ccf7d876f07de2f999b
diff --git a/metadata/md5-cache/chromeos-base/dlcservice-0.0.1-r574 b/metadata/md5-cache/chromeos-base/dlcservice-0.0.1-r574
deleted file mode 100644
index cf3d2d5..0000000
--- a/metadata/md5-cache/chromeos-base/dlcservice-0.0.1-r574
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/imageloader:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/protobuf:= chromeos-base/dlcservice-client:= chromeos-base/imageloader-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/session_manager-client:= chromeos-base/update_engine-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=A D-Bus service for Downloadable Content (DLC)
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/dlcservice/
-IUSE=fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e0da5eb8dbe45cc4e72a44ebaca7260e14bc4d22_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e0da5eb8dbe45cc4e72a44ebaca7260e14bc4d22_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/imageloader:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r574
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=abfd180bbe194e21ce7bee41e6c7c5cc
diff --git a/metadata/md5-cache/chromeos-base/dlcservice-0.0.1-r623 b/metadata/md5-cache/chromeos-base/dlcservice-0.0.1-r623
new file mode 100644
index 0000000..fb01a53
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/dlcservice-0.0.1-r623
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/imageloader:= chromeos-base/minijail:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/protobuf:= chromeos-base/dlcservice-client:= chromeos-base/imageloader-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/session_manager-client:= chromeos-base/update_engine-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=A D-Bus service for Downloadable Content (DLC)
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/dlcservice/
+IUSE=fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c1b01417481b59578eadff383cae947150b79aba_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c1b01417481b59578eadff383cae947150b79aba_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/imageloader:= chromeos-base/minijail:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r623
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=ef5844501961a9d94ac228d3582bbeca
diff --git a/metadata/md5-cache/chromeos-base/dlcservice-9999 b/metadata/md5-cache/chromeos-base/dlcservice-9999
index 440222a..fb41755 100644
--- a/metadata/md5-cache/chromeos-base/dlcservice-9999
+++ b/metadata/md5-cache/chromeos-base/dlcservice-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/imageloader:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/protobuf:= chromeos-base/dlcservice-client:= chromeos-base/imageloader-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/session_manager-client:= chromeos-base/update_engine-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/imageloader:= chromeos-base/minijail:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/protobuf:= chromeos-base/dlcservice-client:= chromeos-base/imageloader-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/session_manager-client:= chromeos-base/update_engine-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=A D-Bus service for Downloadable Content (DLC)
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/dlcservice/
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/imageloader:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/imageloader:= chromeos-base/minijail:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=09c8220b9af6f05bb5b1dfcc8ad81bee
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=dd4e7e49b95265c5b42cdeefff6d3613
diff --git a/metadata/md5-cache/chromeos-base/dlcservice-client-0.0.1-r450 b/metadata/md5-cache/chromeos-base/dlcservice-client-0.0.1-r450
deleted file mode 100644
index 566c69b..0000000
--- a/metadata/md5-cache/chromeos-base/dlcservice-client-0.0.1-r450
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/chromeos-dbus-bindings >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=DlcService D-Bus client library for Chromium OS
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/dlcservice/client
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e0da5eb8dbe45cc4e72a44ebaca7260e14bc4d22_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e0da5eb8dbe45cc4e72a44ebaca7260e14bc4d22_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=2194a8f7053e2f8428fa42bea98735a7
diff --git a/metadata/md5-cache/chromeos-base/dlcservice-client-0.0.1-r484 b/metadata/md5-cache/chromeos-base/dlcservice-client-0.0.1-r484
new file mode 100644
index 0000000..3c8f25e
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/dlcservice-client-0.0.1-r484
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/chromeos-dbus-bindings >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=DlcService D-Bus client library for Chromium OS
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/dlcservice/client
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c1b01417481b59578eadff383cae947150b79aba_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c1b01417481b59578eadff383cae947150b79aba_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=41e1ffeff276f0bea2fde872b77d7c37
diff --git a/metadata/md5-cache/chromeos-base/dlcservice-client-9999 b/metadata/md5-cache/chromeos-base/dlcservice-client-9999
index 6470e46..93771e0 100644
--- a/metadata/md5-cache/chromeos-base/dlcservice-client-9999
+++ b/metadata/md5-cache/chromeos-base/dlcservice-client-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f8a3b22301bb21b0a176af5b510129aa
diff --git a/metadata/md5-cache/chromeos-base/dlp-0.0.1-r32 b/metadata/md5-cache/chromeos-base/dlp-0.0.1-r32
deleted file mode 100644
index 6f9abeb..0000000
--- a/metadata/md5-cache/chromeos-base/dlp-0.0.1-r32
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/minijail:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/protobuf:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=A daemon that provides support for Data Leak Prevention restrictions for file accesses.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/dlp/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a85255af9133dcdacc994706bf7f95bf246eb918_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a85255af9133dcdacc994706bf7f95bf246eb918_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/minijail:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r32
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=fab5e7a46e03ad11e0cee7dac38deb5e
diff --git a/metadata/md5-cache/chromeos-base/dlp-0.0.1-r62 b/metadata/md5-cache/chromeos-base/dlp-0.0.1-r62
new file mode 100644
index 0000000..38d9519
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/dlp-0.0.1-r62
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/minijail:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/protobuf:= chromeos-base/system_api:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=A daemon that provides support for Data Leak Prevention restrictions for file accesses.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/dlp/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c619ee25c81c29909032588f713f3aaccb4549e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c619ee25c81c29909032588f713f3aaccb4549e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/minijail:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r62
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=88a744aed8a724d84528bf349e2763f2
diff --git a/metadata/md5-cache/chromeos-base/dlp-9999 b/metadata/md5-cache/chromeos-base/dlp-9999
index be86d28..85425d4 100644
--- a/metadata/md5-cache/chromeos-base/dlp-9999
+++ b/metadata/md5-cache/chromeos-base/dlp-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/minijail:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/protobuf:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/minijail:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/protobuf:= chromeos-base/system_api:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=A daemon that provides support for Data Leak Prevention restrictions for file accesses.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/dlp/
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/minijail:= !dev-db/leveldb dev-libs/leveldb:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=b5bac6abb84d39dedf3b249b93ec2be3
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=3d6c1da8619938ba9fd3dbe6d3d6f6a3
diff --git a/metadata/md5-cache/chromeos-base/dns-proxy-0.0.1-r140 b/metadata/md5-cache/chromeos-base/dns-proxy-0.0.1-r140
new file mode 100644
index 0000000..811d0ef
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/dns-proxy-0.0.1-r140
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/metrics:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= chromeos-base/shill-dbus-client:= chromeos-base/shill-net:= dev-libs/protobuf:= dev-libs/dbus-glib:= sys-apps/dbus:= net-misc/curl:= chromeos-base/permission_broker-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=A daemon that provides DNS proxying services.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/dns-proxy/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_bd4a9ee78301d4de376c5cc18b5e4924214e44fd_e08a2eb734e33827dffeecf57eca046cd1091373_b8f72a0e660bae92be22cdcd378a09def1f97c89_0180513536a7819b5f1dd6966f004bcb713392d5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_bd4a9ee78301d4de376c5cc18b5e4924214e44fd_e08a2eb734e33827dffeecf57eca046cd1091373_b8f72a0e660bae92be22cdcd378a09def1f97c89_0180513536a7819b5f1dd6966f004bcb713392d5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/metrics:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= chromeos-base/shill-dbus-client:= chromeos-base/shill-net:= dev-libs/protobuf:= dev-libs/dbus-glib:= sys-apps/dbus:= net-misc/curl:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=dcfb66bf34d8c1ad3b40af8f404578d7
diff --git a/metadata/md5-cache/chromeos-base/dns-proxy-0.0.1-r71 b/metadata/md5-cache/chromeos-base/dns-proxy-0.0.1-r71
deleted file mode 100644
index d3518db..0000000
--- a/metadata/md5-cache/chromeos-base/dns-proxy-0.0.1-r71
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/metrics:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= chromeos-base/shill-dbus-client:= dev-libs/protobuf:= dev-libs/dbus-glib:= sys-apps/dbus:= net-misc/curl:= chromeos-base/permission_broker-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=A daemon that provides DNS proxying services.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/dns-proxy/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_6a93087f6ddb4402b72ae9b5f4f7da5535f33c7e_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_0589da423746e4e20fe7e50f7a19e2ac46e715a8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_6a93087f6ddb4402b72ae9b5f4f7da5535f33c7e_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_0589da423746e4e20fe7e50f7a19e2ac46e715a8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/metrics:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= chromeos-base/shill-dbus-client:= dev-libs/protobuf:= dev-libs/dbus-glib:= sys-apps/dbus:= net-misc/curl:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=4e6f8e169e5170bfb6f559cf0f862da6
diff --git a/metadata/md5-cache/chromeos-base/dns-proxy-9999 b/metadata/md5-cache/chromeos-base/dns-proxy-9999
index 48a27d6..24b2e0a 100644
--- a/metadata/md5-cache/chromeos-base/dns-proxy-9999
+++ b/metadata/md5-cache/chromeos-base/dns-proxy-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/metrics:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= chromeos-base/shill-dbus-client:= dev-libs/protobuf:= dev-libs/dbus-glib:= sys-apps/dbus:= net-misc/curl:= chromeos-base/permission_broker-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/metrics:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= chromeos-base/shill-dbus-client:= chromeos-base/shill-net:= dev-libs/protobuf:= dev-libs/dbus-glib:= sys-apps/dbus:= net-misc/curl:= chromeos-base/permission_broker-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=A daemon that provides DNS proxying services.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/dns-proxy/
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/metrics:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= chromeos-base/shill-dbus-client:= dev-libs/protobuf:= dev-libs/dbus-glib:= sys-apps/dbus:= net-misc/curl:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/metrics:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= chromeos-base/shill-dbus-client:= chromeos-base/shill-net:= dev-libs/protobuf:= dev-libs/dbus-glib:= sys-apps/dbus:= net-misc/curl:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=bf98d63c6d5d446314d1093c59622808
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=c19cd87ad6923251871d485aeccc7c26
diff --git a/metadata/md5-cache/chromeos-base/drm-tests-0.0.1-r212 b/metadata/md5-cache/chromeos-base/drm-tests-0.0.1-r212
deleted file mode 100644
index 1b1ad17..0000000
--- a/metadata/md5-cache/chromeos-base/drm-tests-0.0.1-r212
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install setup unpack
-DEPEND=virtual/opengles || ( media-libs/mesa[gbm] media-libs/minigbm ) media-libs/libsync vulkan? ( media-libs/vulkan-loader virtual/vulkan-icd ) x11-drivers/opengles-headers
-DESCRIPTION=Chrome OS DRM Tests
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/drm-tests/
-IUSE=vulkan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_9a8e6ab4c6d0c8ba694c15ce3b52b0e45c78e382
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=virtual/opengles || ( media-libs/mesa[gbm] media-libs/minigbm ) media-libs/libsync vulkan? ( media-libs/vulkan-loader virtual/vulkan-icd )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=f1ca589422f077db8ebcb96e601cfcbe
diff --git a/metadata/md5-cache/chromeos-base/drm-tests-0.0.1-r230 b/metadata/md5-cache/chromeos-base/drm-tests-0.0.1-r230
new file mode 100644
index 0000000..8843ac5
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/drm-tests-0.0.1-r230
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup unpack
+DEPEND=virtual/opengles || ( media-libs/mesa[gbm] media-libs/minigbm ) media-libs/libsync v4lplugin? ( media-libs/libv4lplugins ) vulkan? ( media-libs/vulkan-loader virtual/vulkan-icd ) x11-drivers/opengles-headers
+DESCRIPTION=Chrome OS DRM Tests
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/drm-tests/
+IUSE=v4lplugin vulkan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_74929a5d8d0e45b63d2e22f0da347a00078000e0
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=virtual/opengles || ( media-libs/mesa[gbm] media-libs/minigbm ) media-libs/libsync v4lplugin? ( media-libs/libv4lplugins ) vulkan? ( media-libs/vulkan-loader virtual/vulkan-icd )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=44924b0a4708a357834cf46e7a28c1e4
diff --git a/metadata/md5-cache/chromeos-base/drm-tests-9999 b/metadata/md5-cache/chromeos-base/drm-tests-9999
index 4ed93d8..b809562 100644
--- a/metadata/md5-cache/chromeos-base/drm-tests-9999
+++ b/metadata/md5-cache/chromeos-base/drm-tests-9999
@@ -1,13 +1,13 @@
 DEFINED_PHASES=compile configure info install setup unpack
-DEPEND=virtual/opengles || ( media-libs/mesa[gbm] media-libs/minigbm ) media-libs/libsync vulkan? ( media-libs/vulkan-loader virtual/vulkan-icd ) x11-drivers/opengles-headers
+DEPEND=virtual/opengles || ( media-libs/mesa[gbm] media-libs/minigbm ) media-libs/libsync v4lplugin? ( media-libs/libv4lplugins ) vulkan? ( media-libs/vulkan-loader virtual/vulkan-icd ) x11-drivers/opengles-headers
 DESCRIPTION=Chrome OS DRM Tests
-EAPI=5
+EAPI=6
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/drm-tests/
-IUSE=vulkan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_
+IUSE=v4lplugin vulkan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=virtual/opengles || ( media-libs/mesa[gbm] media-libs/minigbm ) media-libs/libsync vulkan? ( media-libs/vulkan-loader virtual/vulkan-icd )
+RDEPEND=virtual/opengles || ( media-libs/mesa[gbm] media-libs/minigbm ) media-libs/libsync v4lplugin? ( media-libs/libv4lplugins ) vulkan? ( media-libs/vulkan-loader virtual/vulkan-icd )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=df7694360989ff381b993c130f2be269
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=39827fa353f31892513a7ee2e5220b06
diff --git a/metadata/md5-cache/chromeos-base/easy-unlock-0.0.1-r2982 b/metadata/md5-cache/chromeos-base/easy-unlock-0.0.1-r2982
deleted file mode 100644
index 2d68cba..0000000
--- a/metadata/md5-cache/chromeos-base/easy-unlock-0.0.1-r2982
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/easy-unlock-crypto:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Service for supporting Easy Unlock in Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/easy-unlock/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_defc5f8c0627d2e120d6d81f092dd68ae4d5e440_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_defc5f8c0627d2e120d6d81f092dd68ae4d5e440_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/easy-unlock-crypto:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=7cb09eaa6dac0a6e878b23094f319c52
diff --git a/metadata/md5-cache/chromeos-base/easy-unlock-0.0.1-r3007 b/metadata/md5-cache/chromeos-base/easy-unlock-0.0.1-r3007
new file mode 100644
index 0000000..3eae583
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/easy-unlock-0.0.1-r3007
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/easy-unlock-crypto:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Service for supporting Easy Unlock in Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/easy-unlock/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_defc5f8c0627d2e120d6d81f092dd68ae4d5e440_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_defc5f8c0627d2e120d6d81f092dd68ae4d5e440_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/easy-unlock-crypto:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=f096391339d1acd8c6fc8f3d61ab23fc
diff --git a/metadata/md5-cache/chromeos-base/easy-unlock-9999 b/metadata/md5-cache/chromeos-base/easy-unlock-9999
index 15560c0..fbd644e 100644
--- a/metadata/md5-cache/chromeos-base/easy-unlock-9999
+++ b/metadata/md5-cache/chromeos-base/easy-unlock-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/easy-unlock-crypto:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=2b57d35d78844b211b335ca97a08ec72
diff --git a/metadata/md5-cache/chromeos-base/ec-devutils-0.0.2-r8243 b/metadata/md5-cache/chromeos-base/ec-devutils-0.0.2-r8243
deleted file mode 100644
index b8999ed..0000000
--- a/metadata/md5-cache/chromeos-base/ec-devutils-0.0.2-r8243
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-python/setuptools[python_targets_python3_6(-)?,-python_single_target_python3_6(-)] virtual/pkgconfig dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,-python_single_target_python3_6(-)] dev-python/setuptools[python_targets_python3_6(-)?,-python_single_target_python3_6(-)]
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=virtual/libusb:1= sys-apps/flashmap:=
-DESCRIPTION=Host development utilities for Chromium OS EC
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os/ec-development
-IUSE=hammerd cros_host cros_workon_tree_ef831ef09b8fdc0da7cceb25def086f853ae97cd python_targets_python3_6
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=virtual/libusb:1= sys-apps/flashmap:= app-mobilephone/dfu-util sys-firmware/servo-firmware sys-apps/flashrom !<chromeos-base/ec-utils-0.0.1-r6153 chromeos-base/ec-utils >=dev-python/pyusb-1.0.2[python_targets_python3_6(-)?,-python_single_target_python3_6(-)] python_targets_python3_6? ( dev-lang/python:3.6 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,-python_single_target_python3_6(-)]
-REQUIRED_USE=|| ( python_targets_python3_6 )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a9f06812de5123b7b4607691e6afb373
diff --git a/metadata/md5-cache/chromeos-base/ec-devutils-0.0.2-r9060 b/metadata/md5-cache/chromeos-base/ec-devutils-0.0.2-r9060
new file mode 100644
index 0000000..4224ae6
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ec-devutils-0.0.2-r9060
@@ -0,0 +1,15 @@
+BDEPEND=dev-python/setuptools[python_targets_python3_6(-)?,-python_single_target_python3_6(-)] virtual/pkgconfig dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,-python_single_target_python3_6(-)] dev-python/setuptools[python_targets_python3_6(-)?,-python_single_target_python3_6(-)]
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=virtual/libusb:1= sys-apps/flashmap:=
+DESCRIPTION=Host development utilities for Chromium OS EC
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os/ec-development
+IUSE=hammerd cros_host cros_workon_tree_4211779d15bde871d051b94a1d7e6dd6ed1aa8f1 python_targets_python3_6
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=virtual/libusb:1= sys-apps/flashmap:= app-mobilephone/dfu-util sys-firmware/servo-firmware sys-apps/flashrom !<chromeos-base/ec-utils-0.0.1-r6153 chromeos-base/ec-utils >=dev-python/pyusb-1.0.2[python_targets_python3_6(-)?,-python_single_target_python3_6(-)] python_targets_python3_6? ( dev-lang/python:3.6 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,-python_single_target_python3_6(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=273653f8cc16a7f3f59fff1c66ad5bbf
diff --git a/metadata/md5-cache/chromeos-base/ec-devutils-9999 b/metadata/md5-cache/chromeos-base/ec-devutils-9999
index 32f951d..0193b1c 100644
--- a/metadata/md5-cache/chromeos-base/ec-devutils-9999
+++ b/metadata/md5-cache/chromeos-base/ec-devutils-9999
@@ -11,5 +11,5 @@
 RDEPEND=virtual/libusb:1= sys-apps/flashmap:= app-mobilephone/dfu-util sys-firmware/servo-firmware sys-apps/flashrom !<chromeos-base/ec-utils-0.0.1-r6153 chromeos-base/ec-utils >=dev-python/pyusb-1.0.2[python_targets_python3_6(-)?,-python_single_target_python3_6(-)] python_targets_python3_6? ( dev-lang/python:3.6 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,-python_single_target_python3_6(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d15a1e2c4641e3c1ac4a2214ff29bd01
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f19cdd231d57cfc1896855f392304cf8
diff --git a/metadata/md5-cache/chromeos-base/ec-utils-0.0.2-r10177 b/metadata/md5-cache/chromeos-base/ec-utils-0.0.2-r10177
deleted file mode 100644
index 010ca96..0000000
--- a/metadata/md5-cache/chromeos-base/ec-utils-0.0.2-r10177
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst preinst setup unpack
-DEPEND=dev-embedded/libftdi:= dev-libs/openssl:0= sys-libs/zlib:= virtual/libusb:1= sys-apps/baselayout
-DESCRIPTION=Chrome OS EC Utility
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/
-IUSE=static -updater_utils cros_host +cros_ec_utils cros_host cros_workon_tree_ef831ef09b8fdc0da7cceb25def086f853ae97cd
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-embedded/libftdi:= dev-libs/openssl:0= sys-libs/zlib:= virtual/libusb:1= sys-apps/baselayout
-SLOT=0/0.0.2-r10177
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=9990910f885b933681e6d627ad5d7487
diff --git a/metadata/md5-cache/chromeos-base/ec-utils-0.0.2-r10994 b/metadata/md5-cache/chromeos-base/ec-utils-0.0.2-r10994
new file mode 100644
index 0000000..d4594c7
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ec-utils-0.0.2-r10994
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst preinst setup unpack
+DEPEND=dev-embedded/libftdi:= dev-libs/openssl:0= sys-libs/zlib:= virtual/libusb:1= sys-apps/baselayout
+DESCRIPTION=Chrome OS EC Utility
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/
+IUSE=static -updater_utils cros_host +cros_ec_utils cros_host cros_workon_tree_4211779d15bde871d051b94a1d7e6dd6ed1aa8f1
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-embedded/libftdi:= dev-libs/openssl:0= sys-libs/zlib:= virtual/libusb:1= sys-apps/baselayout
+SLOT=0/0.0.2-r10994
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=6e17f2f1b4360d9c6281e3626a08a0f8
diff --git a/metadata/md5-cache/chromeos-base/ec-utils-9999 b/metadata/md5-cache/chromeos-base/ec-utils-9999
index 8875275..180b785 100644
--- a/metadata/md5-cache/chromeos-base/ec-utils-9999
+++ b/metadata/md5-cache/chromeos-base/ec-utils-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=dev-embedded/libftdi:= dev-libs/openssl:0= sys-libs/zlib:= virtual/libusb:1= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=2e0fcb19a00f2e94df3bc6bfa2f0e292
diff --git a/metadata/md5-cache/chromeos-base/ec-utils-test-0.0.1-r7347 b/metadata/md5-cache/chromeos-base/ec-utils-test-0.0.1-r7347
deleted file mode 100644
index 6fc5837..0000000
--- a/metadata/md5-cache/chromeos-base/ec-utils-test-0.0.1-r7347
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install setup unpack
-DESCRIPTION=Chrome OS EC Utility Helper
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/
-IUSE=biod -cr50_onboard cros_host cros_workon_tree_ef831ef09b8fdc0da7cceb25def086f853ae97cd
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/ec-utils biod? ( chromeos-base/ec-devutils dev-util/shflags )
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9aa3354786dec1d91e472eb7f5ac5971
diff --git a/metadata/md5-cache/chromeos-base/ec-utils-test-0.0.1-r8166 b/metadata/md5-cache/chromeos-base/ec-utils-test-0.0.1-r8166
new file mode 100644
index 0000000..35a07f8
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ec-utils-test-0.0.1-r8166
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install setup unpack
+DESCRIPTION=Chrome OS EC Utility Helper
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/
+IUSE=biod -cr50_onboard cros_host cros_workon_tree_4211779d15bde871d051b94a1d7e6dd6ed1aa8f1 python_targets_pypy3 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=python_targets_pypy3? ( >=dev-python/pypy3-7.3.0:0= ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] chromeos-base/ec-utils biod? ( chromeos-base/ec-devutils dev-util/shflags )
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=aa77332bb8c2717a8f105b4fba99d394
diff --git a/metadata/md5-cache/chromeos-base/ec-utils-test-9999 b/metadata/md5-cache/chromeos-base/ec-utils-test-9999
index 5d9b4e5..db3d640 100644
--- a/metadata/md5-cache/chromeos-base/ec-utils-test-9999
+++ b/metadata/md5-cache/chromeos-base/ec-utils-test-9999
@@ -3,11 +3,11 @@
 DESCRIPTION=Chrome OS EC Utility Helper
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/
-IUSE=biod -cr50_onboard cros_host cros_workon_tree_
+IUSE=biod -cr50_onboard cros_host cros_workon_tree_ python_targets_pypy3 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=chromeos-base/ec-utils biod? ( chromeos-base/ec-devutils dev-util/shflags )
+RDEPEND=python_targets_pypy3? ( >=dev-python/pypy3-7.3.0:0= ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] chromeos-base/ec-utils biod? ( chromeos-base/ec-devutils dev-util/shflags )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=95ad63986feb9d7b0c655ff68f37a22c
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=441560df9bf3321904e7f16dfd15c0c8
diff --git a/metadata/md5-cache/chromeos-base/elan_i2chid_tools-1.12-r11 b/metadata/md5-cache/chromeos-base/elan_i2chid_tools-1.12-r11
deleted file mode 100644
index 5ee87b8..0000000
--- a/metadata/md5-cache/chromeos-base/elan_i2chid_tools-1.12-r11
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=configure install
-DESCRIPTION=Elan Touchscreen I2C-HID Tools for Firmware Update
-EAPI=6
-HOMEPAGE=https://github.com/PaulLiang01043/elan_i2chid_tools
-KEYWORDS=*
-LICENSE=Apache-2.0
-SLOT=0
-SRC_URI=http://storage.googleapis.com/chromeos-localmirror/distfiles/elan_i2chid_tools-1.12.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=f10f7c477a74f285e0f5fa120a511c60
diff --git a/metadata/md5-cache/chromeos-base/elan_i2chid_tools-1.14-r6 b/metadata/md5-cache/chromeos-base/elan_i2chid_tools-1.14-r6
new file mode 100644
index 0000000..cc0ca74
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/elan_i2chid_tools-1.14-r6
@@ -0,0 +1,10 @@
+DEFINED_PHASES=configure install
+DESCRIPTION=Elan Touchscreen I2C-HID Tools for Firmware Update
+EAPI=6
+HOMEPAGE=https://github.com/PaulLiang01043/elan_i2chid_tools
+KEYWORDS=*
+LICENSE=Apache-2.0
+SLOT=0
+SRC_URI=http://storage.googleapis.com/chromeos-localmirror/distfiles/elan_i2chid_tools-1.14.tar.gz
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=f10f7c477a74f285e0f5fa120a511c60
diff --git a/metadata/md5-cache/chromeos-base/emright_fw_updater-1.0.0.0005 b/metadata/md5-cache/chromeos-base/emright_fw_updater-1.0.0.0005
index 0c02d4c..7da207d 100644
--- a/metadata/md5-cache/chromeos-base/emright_fw_updater-1.0.0.0005
+++ b/metadata/md5-cache/chromeos-base/emright_fw_updater-1.0.0.0005
@@ -6,5 +6,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=https://github.com/emright123/emright_fw_updater/archive/v1.0.0.0005.tar.gz -> emright_fw_updater-1.0.0.0005.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a0657879e5328c4dd8baa1ddd5cfefc1
diff --git a/metadata/md5-cache/chromeos-base/epstps2iap-1.3-r1 b/metadata/md5-cache/chromeos-base/epstps2iap-1.3-r1
deleted file mode 100644
index f9dc259..0000000
--- a/metadata/md5-cache/chromeos-base/epstps2iap-1.3-r1
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=configure install
-DESCRIPTION=ELAN Standalone Trackpoint Firmware Update
-EAPI=7
-HOMEPAGE=https://github.com/jinglewu/epstps2iap/
-KEYWORDS=*
-LICENSE=Apache-2.0
-SLOT=0
-SRC_URI=https://github.com/jinglewu/epstps2iap/archive/v1.3.tar.gz -> epstps2iap-1.3.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e59476303d9f8aae7a594376f3c35013
diff --git a/metadata/md5-cache/chromeos-base/epstps2iap-1.5-r1 b/metadata/md5-cache/chromeos-base/epstps2iap-1.5-r1
new file mode 100644
index 0000000..33e4337
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/epstps2iap-1.5-r1
@@ -0,0 +1,10 @@
+DEFINED_PHASES=configure install
+DESCRIPTION=ELAN Standalone Trackpoint Firmware Update
+EAPI=7
+HOMEPAGE=https://github.com/jinglewu/epstps2iap/
+KEYWORDS=*
+LICENSE=Apache-2.0
+SLOT=0
+SRC_URI=https://github.com/jinglewu/epstps2iap/archive/v1.5.tar.gz -> epstps2iap-1.5.tar.gz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=839c896fbccba1cd64487b96ed8b8509
diff --git a/metadata/md5-cache/chromeos-base/factory-0.2.0-r2116 b/metadata/md5-cache/chromeos-base/factory-0.2.0-r2116
deleted file mode 100644
index 49778f4..0000000
--- a/metadata/md5-cache/chromeos-base/factory-0.2.0-r2116
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=virtual/chromeos-bsp-factory:= virtual/chromeos-regions:= dev-python/jsonrpclib:= dev-python/pyyaml:= dev-python/protobuf-python:=
-DESCRIPTION=Chrome OS Factory Software Platform
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/factory/
-IUSE=cros_host cros_workon_tree_0b71b982ad2195029b3bd1de56bc77376f9e8d3c python_targets_python3_6 python_targets_python3_7
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-SLOT=0/0.2.0-r2116
-SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror//distfiles/webgl-aquarium-20130524.tar.bz2
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-factory	a2ce0261e426513fe3f7540d9a228910	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d9a50f04dc08a56b275a6dac285c4842
diff --git a/metadata/md5-cache/chromeos-base/factory-0.2.0-r2233 b/metadata/md5-cache/chromeos-base/factory-0.2.0-r2233
new file mode 100644
index 0000000..a111169
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/factory-0.2.0-r2233
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=virtual/chromeos-bsp-factory:= virtual/chromeos-regions:= dev-python/jsonrpclib:= dev-python/pyyaml:= dev-python/protobuf-python:=
+DESCRIPTION=Chrome OS Factory Software Platform
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/factory/
+IUSE=cros_host cros_workon_tree_3adee3ad3b8a9bf5185c26f35ff544e7319a0d3a python_targets_python3_6 python_targets_python3_7
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+SLOT=0/0.2.0-r2233
+SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror//distfiles/webgl-aquarium-20130524.tar.bz2
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-factory	a2ce0261e426513fe3f7540d9a228910	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e35e61f9e889b000e67136662a745c18
diff --git a/metadata/md5-cache/chromeos-base/factory-9999 b/metadata/md5-cache/chromeos-base/factory-9999
index 7436179..b6d088b 100644
--- a/metadata/md5-cache/chromeos-base/factory-9999
+++ b/metadata/md5-cache/chromeos-base/factory-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 SLOT=0/9999
 SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror//distfiles/webgl-aquarium-20130524.tar.bz2
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-factory	a2ce0261e426513fe3f7540d9a228910	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8fd514e91b1b360f88ddc8420b64ef0d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-factory	a2ce0261e426513fe3f7540d9a228910	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a876578849b5ac64c8df0d652afd488b
diff --git a/metadata/md5-cache/chromeos-base/factory-mini-0.0.1-r2184 b/metadata/md5-cache/chromeos-base/factory-mini-0.0.1-r2184
deleted file mode 100644
index a58b90c..0000000
--- a/metadata/md5-cache/chromeos-base/factory-mini-0.0.1-r2184
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install setup unpack
-DEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/jsonrpclib:= dev-python/pyyaml:= dev-python/protobuf-python:= virtual/chromeos-bsp-factory:= virtual/chromeos-regions:=
-DESCRIPTION=Subset of factory software to be installed in test images
-EAPI=7
-IUSE=cros_host cros_workon_tree_0b71b982ad2195029b3bd1de56bc77376f9e8d3c python_targets_python3_6 python_targets_python3_7
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-SLOT=0/0.0.1-r2184
-SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror//distfiles/webgl-aquarium-20130524.tar.bz2
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=51363baf5043ea94f885d5089a035cd3
diff --git a/metadata/md5-cache/chromeos-base/factory-mini-0.0.1-r2300 b/metadata/md5-cache/chromeos-base/factory-mini-0.0.1-r2300
new file mode 100644
index 0000000..ec2d514
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/factory-mini-0.0.1-r2300
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install setup unpack
+DEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/jsonrpclib:= dev-python/pyyaml:= dev-python/protobuf-python:= virtual/chromeos-bsp-factory:= virtual/chromeos-regions:=
+DESCRIPTION=Subset of factory software to be installed in test images
+EAPI=7
+IUSE=cros_host cros_workon_tree_3adee3ad3b8a9bf5185c26f35ff544e7319a0d3a python_targets_python3_6 python_targets_python3_7
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+SLOT=0/0.0.1-r2300
+SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror//distfiles/webgl-aquarium-20130524.tar.bz2
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=eb2b4dd9ed40ff63972ca8bab51a3924
diff --git a/metadata/md5-cache/chromeos-base/factory-mini-9999 b/metadata/md5-cache/chromeos-base/factory-mini-9999
index a339dca..3e59f90 100644
--- a/metadata/md5-cache/chromeos-base/factory-mini-9999
+++ b/metadata/md5-cache/chromeos-base/factory-mini-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 SLOT=0/9999
 SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror//distfiles/webgl-aquarium-20130524.tar.bz2
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5a32c811a6a07504e363251feb4fc5c5
diff --git a/metadata/md5-cache/chromeos-base/factory_installer-0.0.1-r153 b/metadata/md5-cache/chromeos-base/factory_installer-0.0.1-r153
deleted file mode 100644
index 2654845..0000000
--- a/metadata/md5-cache/chromeos-base/factory_installer-0.0.1-r153
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=test? ( chromeos-base/chromeos-common-script ) dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst setup test unpack
-DEPEND=chromeos-base/chromeos-init:= !chromeos-base/chromeos-factoryinstall !chromeos-base/chromeos-factory chromeos-base/factory:= test? ( chromeos-base/secure-wipe:= ) x86? ( sys-boot/syslinux:= )
-DESCRIPTION=Chrome OS Factory Installer
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/factory_installer/
-IUSE=tty_console_ttyAMA0 tty_console_ttyAMA1 tty_console_ttyAMA2 tty_console_ttyAMA3 tty_console_ttyAMA4 tty_console_ttyAMA5 tty_console_ttyHSL0 tty_console_ttyHSL1 tty_console_ttyHSL2 tty_console_ttyHSL3 tty_console_ttyHSL4 tty_console_ttyHSL5 tty_console_ttyMSM0 tty_console_ttyMSM1 tty_console_ttyMSM2 tty_console_ttyMSM3 tty_console_ttyMSM4 tty_console_ttyMSM5 tty_console_ttymxc0 tty_console_ttymxc1 tty_console_ttymxc2 tty_console_ttymxc3 tty_console_ttymxc4 tty_console_ttymxc5 tty_console_ttyO0 tty_console_ttyO1 tty_console_ttyO2 tty_console_ttyO3 tty_console_ttyO4 tty_console_ttyO5 tty_console_ttyS0 tty_console_ttyS1 tty_console_ttyS2 tty_console_ttyS3 tty_console_ttyS4 tty_console_ttyS5 tty_console_ttySAC0 tty_console_ttySAC1 tty_console_ttySAC2 tty_console_ttySAC3 tty_console_ttySAC4 tty_console_ttySAC5 tty_console_ttyUSB0 tty_console_ttyUSB1 tty_console_ttyUSB2 tty_console_ttyUSB3 tty_console_ttyUSB4 tty_console_ttyUSB5 tty_console_tty0 tty_console_tty1 tty_console_tty2 tty_console_tty3 tty_console_tty4 tty_console_tty5 -asan test asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_4642a1742fa6ffde33b68b83d1e684a2e95980bd
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/chromeos-init:= !chromeos-base/chromeos-factoryinstall !chromeos-base/chromeos-factory app-arch/gzip app-arch/sharutils app-arch/tar app-misc/figlet chromeos-base/chromeos-config-tools chromeos-base/vboot_reference sys-apps/mosys sys-apps/util-linux app-arch/lbzip2 app-arch/pigz app-misc/jq chromeos-base/chromeos-installer chromeos-base/chromeos-storage-info chromeos-base/ec-utils chromeos-base/secure-wipe chromeos-base/vpd dev-util/stressapptest net-misc/htpdate net-wireless/iw sys-apps/flashrom sys-apps/net-tools sys-apps/upstart sys-apps/util-linux sys-block/parted sys-fs/e2fsprogs
-SLOT=0/0.0.1-r153
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-factory	a2ce0261e426513fe3f7540d9a228910	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5ca51f2c4b5e524f2fe4def423bef83c
diff --git a/metadata/md5-cache/chromeos-base/factory_installer-0.0.1-r163 b/metadata/md5-cache/chromeos-base/factory_installer-0.0.1-r163
new file mode 100644
index 0000000..72f29c0
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/factory_installer-0.0.1-r163
@@ -0,0 +1,14 @@
+BDEPEND=test? ( chromeos-base/chromeos-common-script ) dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst setup test unpack
+DEPEND=chromeos-base/chromeos-init:= !chromeos-base/chromeos-factoryinstall !chromeos-base/chromeos-factory chromeos-base/factory:= test? ( chromeos-base/secure-wipe:= ) x86? ( sys-boot/syslinux:= )
+DESCRIPTION=Chrome OS Factory Installer
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/factory_installer/
+IUSE=tty_console_ttyAMA0 tty_console_ttyAMA1 tty_console_ttyAMA2 tty_console_ttyAMA3 tty_console_ttyAMA4 tty_console_ttyAMA5 tty_console_ttyHSL0 tty_console_ttyHSL1 tty_console_ttyHSL2 tty_console_ttyHSL3 tty_console_ttyHSL4 tty_console_ttyHSL5 tty_console_ttyMSM0 tty_console_ttyMSM1 tty_console_ttyMSM2 tty_console_ttyMSM3 tty_console_ttyMSM4 tty_console_ttyMSM5 tty_console_ttymxc0 tty_console_ttymxc1 tty_console_ttymxc2 tty_console_ttymxc3 tty_console_ttymxc4 tty_console_ttymxc5 tty_console_ttyO0 tty_console_ttyO1 tty_console_ttyO2 tty_console_ttyO3 tty_console_ttyO4 tty_console_ttyO5 tty_console_ttyS0 tty_console_ttyS1 tty_console_ttyS2 tty_console_ttyS3 tty_console_ttyS4 tty_console_ttyS5 tty_console_ttySAC0 tty_console_ttySAC1 tty_console_ttySAC2 tty_console_ttySAC3 tty_console_ttySAC4 tty_console_ttySAC5 tty_console_ttyUSB0 tty_console_ttyUSB1 tty_console_ttyUSB2 tty_console_ttyUSB3 tty_console_ttyUSB4 tty_console_ttyUSB5 tty_console_tty0 tty_console_tty1 tty_console_tty2 tty_console_tty3 tty_console_tty4 tty_console_tty5 -asan test asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_fecdfff54111bec9c51f9a5473c304dc3a9b11ea
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/chromeos-init:= !chromeos-base/chromeos-factoryinstall !chromeos-base/chromeos-factory app-arch/gzip app-arch/sharutils app-arch/tar app-misc/figlet chromeos-base/chromeos-config-tools chromeos-base/vboot_reference sys-apps/mosys sys-apps/util-linux app-arch/lbzip2 app-arch/pigz app-misc/jq chromeos-base/chromeos-installer chromeos-base/chromeos-storage-info chromeos-base/ec-utils chromeos-base/secure-wipe chromeos-base/vpd dev-util/stressapptest net-misc/htpdate net-wireless/iw sys-apps/flashrom sys-apps/net-tools sys-apps/upstart sys-apps/util-linux sys-block/parted sys-fs/e2fsprogs
+SLOT=0/0.0.1-r163
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-factory	a2ce0261e426513fe3f7540d9a228910	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5e1e90c24a12c3daa963d092a8bf9aa9
diff --git a/metadata/md5-cache/chromeos-base/factory_installer-9999 b/metadata/md5-cache/chromeos-base/factory_installer-9999
index be925e66..2e44772 100644
--- a/metadata/md5-cache/chromeos-base/factory_installer-9999
+++ b/metadata/md5-cache/chromeos-base/factory_installer-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/chromeos-init:= !chromeos-base/chromeos-factoryinstall !chromeos-base/chromeos-factory app-arch/gzip app-arch/sharutils app-arch/tar app-misc/figlet chromeos-base/chromeos-config-tools chromeos-base/vboot_reference sys-apps/mosys sys-apps/util-linux app-arch/lbzip2 app-arch/pigz app-misc/jq chromeos-base/chromeos-installer chromeos-base/chromeos-storage-info chromeos-base/ec-utils chromeos-base/secure-wipe chromeos-base/vpd dev-util/stressapptest net-misc/htpdate net-wireless/iw sys-apps/flashrom sys-apps/net-tools sys-apps/upstart sys-apps/util-linux sys-block/parted sys-fs/e2fsprogs
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-factory	a2ce0261e426513fe3f7540d9a228910	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-factory	a2ce0261e426513fe3f7540d9a228910	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ec9ee236b91904b8e7ce8dd6b9f62a1e
diff --git a/metadata/md5-cache/chromeos-base/factory_runtime_probe-0.0.1-r24 b/metadata/md5-cache/chromeos-base/factory_runtime_probe-0.0.1-r24
deleted file mode 100644
index eedf133..0000000
--- a/metadata/md5-cache/chromeos-base/factory_runtime_probe-0.0.1-r24
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= chromeos-base/shill-client:= chromeos-base/system_api:= chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Device component probe tool **for factory environment**.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/runtime_probe/
-IUSE=cros-debug generated_cros_config unibuild +factory_runtime_probe cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_5bcd4487aea45b91806e5db9af44e6b3d9290c13_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_5bcd4487aea45b91806e5db9af44e6b3d9290c13_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= chromeos-base/ec-utils >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r24
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=079ad0725581478d13c5d08bfe9d96a0
diff --git a/metadata/md5-cache/chromeos-base/factory_runtime_probe-0.0.1-r95 b/metadata/md5-cache/chromeos-base/factory_runtime_probe-0.0.1-r95
new file mode 100644
index 0000000..1bf89ec
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/factory_runtime_probe-0.0.1-r95
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/debugd-client:= chromeos-base/shill-client:= chromeos-base/system_api:= chromeos-base/vboot_reference:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Device component probe tool **for factory environment**.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/runtime_probe/
+IUSE=cros-debug +factory_runtime_probe cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_c49e61abb0d60510e8ca41e657656cdd950c50e9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_c49e61abb0d60510e8ca41e657656cdd950c50e9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/ec-utils has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r95
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5b6fe4ec6bde5f18b6fb4310ba4c73ef
diff --git a/metadata/md5-cache/chromeos-base/factory_runtime_probe-9999 b/metadata/md5-cache/chromeos-base/factory_runtime_probe-9999
index 1d49aecd..048f1b5 100644
--- a/metadata/md5-cache/chromeos-base/factory_runtime_probe-9999
+++ b/metadata/md5-cache/chromeos-base/factory_runtime_probe-9999
@@ -1,14 +1,14 @@
-BDEPEND=dev-vcs/git dev-vcs/git
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= chromeos-base/shill-client:= chromeos-base/system_api:= chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/debugd-client:= chromeos-base/shill-client:= chromeos-base/system_api:= chromeos-base/vboot_reference:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Device component probe tool **for factory environment**.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/runtime_probe/
-IUSE=cros-debug generated_cros_config unibuild +factory_runtime_probe cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=cros-debug +factory_runtime_probe cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= chromeos-base/ec-utils >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/ec-utils has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b398e69ed46ee4ac89b7548085b8557b
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1687d620bedc33087432a57845e617a2
diff --git a/metadata/md5-cache/chromeos-base/featured-0.0.1-r11 b/metadata/md5-cache/chromeos-base/featured-0.0.1-r11
new file mode 100644
index 0000000..0f52b20
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/featured-0.0.1-r11
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/system_api:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Chrome OS feature management service
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/featured/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_d15456cdcdb891b358e4f18984bdbe147c6ba380_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_d15456cdcdb891b358e4f18984bdbe147c6ba380_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r11
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=43fa3eea80f30859436938be1b020e40
diff --git a/metadata/md5-cache/chromeos-base/featured-9999 b/metadata/md5-cache/chromeos-base/featured-9999
new file mode 100644
index 0000000..0b42e7a
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/featured-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/system_api:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Chrome OS feature management service
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/featured/
+IUSE=cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=891212c834e7a64f3e61b2243cad4b74
diff --git a/metadata/md5-cache/chromeos-base/federated-service-0.0.1-r45 b/metadata/md5-cache/chromeos-base/federated-service-0.0.1-r45
new file mode 100644
index 0000000..8e05d79
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/federated-service-0.0.1-r45
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-db/sqlite:= chromeos-base/dlcservice-client:= chromeos-base/session_manager-client:= chromeos-base/system_api:= sys-cluster/fcp:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Federated Computation service for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/federated
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1bf7db96baae8a5df2f0ac78b63f39f9b3d2ff5e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1bf7db96baae8a5df2f0ac78b63f39f9b3d2ff5e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-db/sqlite:= chromeos-base/dlcservice-client:= chromeos-base/session_manager-client:= chromeos-base/system_api:= sys-cluster/fcp:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=d62fb8a4f4c94b4984036f5ab2549552
diff --git a/metadata/md5-cache/chromeos-base/federated-service-0.0.1-r9 b/metadata/md5-cache/chromeos-base/federated-service-0.0.1-r9
deleted file mode 100644
index aca843d..0000000
--- a/metadata/md5-cache/chromeos-base/federated-service-0.0.1-r9
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-db/sqlite:= chromeos-base/session_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Federated Computation service for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/federated
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_bcf783a53d9171afe89622df54180eececb2b69f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_bcf783a53d9171afe89622df54180eececb2b69f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-db/sqlite:= chromeos-base/session_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=85d471d608fbb2c8076becdcc45d2f03
diff --git a/metadata/md5-cache/chromeos-base/federated-service-9999 b/metadata/md5-cache/chromeos-base/federated-service-9999
index 292dad9..590d153 100644
--- a/metadata/md5-cache/chromeos-base/federated-service-9999
+++ b/metadata/md5-cache/chromeos-base/federated-service-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-db/sqlite:= chromeos-base/session_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=dev-db/sqlite:= chromeos-base/dlcservice-client:= chromeos-base/session_manager-client:= chromeos-base/system_api:= sys-cluster/fcp:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Federated Computation service for Chromium OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/federated
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=dev-db/sqlite:= chromeos-base/session_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=dev-db/sqlite:= chromeos-base/dlcservice-client:= chromeos-base/session_manager-client:= chromeos-base/system_api:= sys-cluster/fcp:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=c3f1ac7081254a8142e3c42b283c754f
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=29366a769cf5f64fcd9b9563db83a939
diff --git a/metadata/md5-cache/chromeos-base/feedback-0.0.1-r817 b/metadata/md5-cache/chromeos-base/feedback-0.0.1-r817
deleted file mode 100644
index 3e25387..0000000
--- a/metadata/md5-cache/chromeos-base/feedback-0.0.1-r817
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Feedback service for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/feedback/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_2a3b0ac1cf74d264898023f64759235fdc90aa74_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_2a3b0ac1cf74d264898023f64759235fdc90aa74_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r817
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ce5908c36c654852c639eab83ca38c0e
diff --git a/metadata/md5-cache/chromeos-base/feedback-0.0.1-r844 b/metadata/md5-cache/chromeos-base/feedback-0.0.1-r844
new file mode 100644
index 0000000..dfdc2e5
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/feedback-0.0.1-r844
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Feedback service for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/feedback/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_395ebd509827e9d258f79bb36358bce3c9e69474_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_395ebd509827e9d258f79bb36358bce3c9e69474_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r844
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c7c2a96156722bee825c82b859cd857c
diff --git a/metadata/md5-cache/chromeos-base/feedback-9999 b/metadata/md5-cache/chromeos-base/feedback-9999
index f7a42d6..53a8389 100644
--- a/metadata/md5-cache/chromeos-base/feedback-9999
+++ b/metadata/md5-cache/chromeos-base/feedback-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9d7ac849a7d350fd2133789eebdaddc5
diff --git a/metadata/md5-cache/chromeos-base/fingerprint_study-0.0.1-r27 b/metadata/md5-cache/chromeos-base/fingerprint_study-0.0.1-r27
deleted file mode 100644
index 38df021..0000000
--- a/metadata/md5-cache/chromeos-base/fingerprint_study-0.0.1-r27
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-DESCRIPTION=Chromium OS Fingerprint user study software
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/study
-IUSE=cros_host cros_workon_tree_2436963e97a3c61ae366a6d52c012917afd63236 python_targets_pypy3 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=python_targets_pypy3? ( >=dev-python/pypy3-7.3.0:0= ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] chromeos-base/ec-utils chromeos-base/ec-utils-test dev-python/cherrypy[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/python-gnupg[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/ws4py[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] virtual/chromeos-fpmcu-test
-SLOT=0/0.0.1-r27
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ea6063c07e2129c431d52f07c61f17d9
diff --git a/metadata/md5-cache/chromeos-base/fingerprint_study-0.0.1-r38 b/metadata/md5-cache/chromeos-base/fingerprint_study-0.0.1-r38
new file mode 100644
index 0000000..618653b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/fingerprint_study-0.0.1-r38
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Chromium OS Fingerprint user study software
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/biod/study
+IUSE=cros_host cros_workon_tree_ea5b9b141ca3d4d54fe56c9527757e5294cd32fe python_targets_pypy3 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=python_targets_pypy3? ( >=dev-python/pypy3-7.3.0:0= ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] chromeos-base/ec-utils chromeos-base/ec-utils-test dev-python/cherrypy[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/python-gnupg[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/ws4py[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] virtual/chromeos-fpmcu-test
+SLOT=0/0.0.1-r38
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1c9cb5da572174e3e7daa7aa9609a96d
diff --git a/metadata/md5-cache/chromeos-base/fingerprint_study-9999 b/metadata/md5-cache/chromeos-base/fingerprint_study-9999
index fb5b672..96fb8b0 100644
--- a/metadata/md5-cache/chromeos-base/fingerprint_study-9999
+++ b/metadata/md5-cache/chromeos-base/fingerprint_study-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=python_targets_pypy3? ( >=dev-python/pypy3-7.3.0:0= ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] chromeos-base/ec-utils chromeos-base/ec-utils-test dev-python/cherrypy[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/python-gnupg[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/ws4py[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] virtual/chromeos-fpmcu-test
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=fde826240a82fbed0cfb18ec035e0d8d
diff --git a/metadata/md5-cache/chromeos-base/foomatic_shell-0.0.1-r59 b/metadata/md5-cache/chromeos-base/foomatic_shell-0.0.1-r59
deleted file mode 100644
index c3c0138..0000000
--- a/metadata/md5-cache/chromeos-base/foomatic_shell-0.0.1-r59
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Mini shell used by foomatic-rip to execute scripts in PPD files.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/foomatic_shell/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_92250239305f99e58bf74de7db462c841dfa3c4b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_92250239305f99e58bf74de7db462c841dfa3c4b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r59
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d70fd63a9a1d32fb3d7d30358e92d521
diff --git a/metadata/md5-cache/chromeos-base/foomatic_shell-0.0.1-r88 b/metadata/md5-cache/chromeos-base/foomatic_shell-0.0.1-r88
new file mode 100644
index 0000000..d7b792c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/foomatic_shell-0.0.1-r88
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Mini shell used by foomatic-rip to execute scripts in PPD files.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/foomatic_shell/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_8cfe1bd9ac77b9ec2a67dd5065876d350cc9ac4e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_8cfe1bd9ac77b9ec2a67dd5065876d350cc9ac4e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r88
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5a681a89f2e1d2318e88b75e60cfcee3
diff --git a/metadata/md5-cache/chromeos-base/foomatic_shell-9999 b/metadata/md5-cache/chromeos-base/foomatic_shell-9999
index 38da631..089968e 100644
--- a/metadata/md5-cache/chromeos-base/foomatic_shell-9999
+++ b/metadata/md5-cache/chromeos-base/foomatic_shell-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=01eba69fee9df858e15e963d3ff2ae9b
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e15d47ffea2701851d0a2d0355e067a5
diff --git a/metadata/md5-cache/chromeos-base/fusebox-0.0.2-r36 b/metadata/md5-cache/chromeos-base/fusebox-0.0.2-r36
new file mode 100644
index 0000000..31fd4c3
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/fusebox-0.0.2-r36
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/protobuf:= sys-apps/dbus:= sys-fs/fuse:= sys-libs/libcap:= chromeos-base/system_api >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=FuseBox service
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/main/fusebox
+IUSE=test cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5ac90bfc3e80b94b55eeda07469ee072224a0151_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5ac90bfc3e80b94b55eeda07469ee072224a0151_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= sys-apps/dbus:= sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.2-r36
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=6bac7d7dde4f26c3ec934b0040dd866d
diff --git a/metadata/md5-cache/chromeos-base/fusebox-9999 b/metadata/md5-cache/chromeos-base/fusebox-9999
new file mode 100644
index 0000000..919aeb1
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/fusebox-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/protobuf:= sys-apps/dbus:= sys-fs/fuse:= sys-libs/libcap:= chromeos-base/system_api >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=FuseBox service
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/main/fusebox
+IUSE=test cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= sys-apps/dbus:= sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=fb70485b18fa7542d1bbe7d1ac992cb0
diff --git a/metadata/md5-cache/chromeos-base/g2f_tools-0.0.1-r550 b/metadata/md5-cache/chromeos-base/g2f_tools-0.0.1-r550
deleted file mode 100644
index dd5cb39..0000000
--- a/metadata/md5-cache/chromeos-base/g2f_tools-0.0.1-r550
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libhwsec:= dev-libs/hidapi:= chromeos-base/chromeos-ec-headers:= chromeos-base/u2fd:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=G2F gnubby (U2F+GCSE) development and testing tools
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/u2fd
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_a06a3f47395fb7b584188c6852764bc773e5497e_e4bdb36b8b1e5f01a3bbb9b825a32cf55222bfeb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_a06a3f47395fb7b584188c6852764bc773e5497e_e4bdb36b8b1e5f01a3bbb9b825a32cf55222bfeb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libhwsec:= dev-libs/hidapi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b7a592a75989bd6602214a6725b45892
diff --git a/metadata/md5-cache/chromeos-base/g2f_tools-0.0.1-r639 b/metadata/md5-cache/chromeos-base/g2f_tools-0.0.1-r639
new file mode 100644
index 0000000..65537d0
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/g2f_tools-0.0.1-r639
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libhwsec:= dev-libs/hidapi:= chromeos-base/chromeos-ec-headers:= chromeos-base/u2fd:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=G2F gnubby (U2F+GCSE) development and testing tools
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/u2fd
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_e08a2eb734e33827dffeecf57eca046cd1091373_d8da1275feb26afab354f35df7316b3840f8330b_11a1a181f7876719e62e7220c7683ee1253aee9f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_e08a2eb734e33827dffeecf57eca046cd1091373_d8da1275feb26afab354f35df7316b3840f8330b_11a1a181f7876719e62e7220c7683ee1253aee9f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libhwsec:= dev-libs/hidapi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=cb1970c1664b5184d574b1f5ec963c58
diff --git a/metadata/md5-cache/chromeos-base/g2f_tools-9999 b/metadata/md5-cache/chromeos-base/g2f_tools-9999
index a2aef56..3021e0e 100644
--- a/metadata/md5-cache/chromeos-base/g2f_tools-9999
+++ b/metadata/md5-cache/chromeos-base/g2f_tools-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/libhwsec:= dev-libs/hidapi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=46d88d23fd0228c0a666520e434b233b
diff --git a/metadata/md5-cache/chromeos-base/g2update_tool-1.2.3096 b/metadata/md5-cache/chromeos-base/g2update_tool-1.2.3096
index f5291a3..9ad389f 100644
--- a/metadata/md5-cache/chromeos-base/g2update_tool-1.2.3096
+++ b/metadata/md5-cache/chromeos-base/g2update_tool-1.2.3096
@@ -6,5 +6,5 @@
 LICENSE=Apache-2.0
 SLOT=0
 SRC_URI=https://github.com/g2touch/g2update_tool/archive/v1.2.3096.tar.gz -> g2update_tool-1.2.3096.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8fec1119d0d110cb78f09a63a2019ee3
diff --git a/metadata/md5-cache/chromeos-base/gdix_hid_firmware_update-1.7.4 b/metadata/md5-cache/chromeos-base/gdix_hid_firmware_update-1.7.4
deleted file mode 100644
index 33840a1..0000000
--- a/metadata/md5-cache/chromeos-base/gdix_hid_firmware_update-1.7.4
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=configure install
-DESCRIPTION=Goodix HIDRAW Firmware Update Tool
-EAPI=5
-HOMEPAGE=https://github.com/goodix/gdix_hid_firmware_update
-KEYWORDS=*
-LICENSE=Apache-2.0
-SLOT=0
-SRC_URI=https://github.com/goodix/gdix_hid_firmware_update/archive/v1.7.4.tar.gz -> gdix_hid_firmware_update-1.7.4.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=a7192d1161a0f3b17bd26740a5ca3110
diff --git a/metadata/md5-cache/chromeos-base/gdix_hid_firmware_update-1.7.4-r1 b/metadata/md5-cache/chromeos-base/gdix_hid_firmware_update-1.7.4-r1
deleted file mode 100644
index 33840a1..0000000
--- a/metadata/md5-cache/chromeos-base/gdix_hid_firmware_update-1.7.4-r1
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=configure install
-DESCRIPTION=Goodix HIDRAW Firmware Update Tool
-EAPI=5
-HOMEPAGE=https://github.com/goodix/gdix_hid_firmware_update
-KEYWORDS=*
-LICENSE=Apache-2.0
-SLOT=0
-SRC_URI=https://github.com/goodix/gdix_hid_firmware_update/archive/v1.7.4.tar.gz -> gdix_hid_firmware_update-1.7.4.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=a7192d1161a0f3b17bd26740a5ca3110
diff --git a/metadata/md5-cache/chromeos-base/gdix_hid_firmware_update-1.7.6 b/metadata/md5-cache/chromeos-base/gdix_hid_firmware_update-1.7.6
new file mode 100644
index 0000000..dacd628
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/gdix_hid_firmware_update-1.7.6
@@ -0,0 +1,10 @@
+DEFINED_PHASES=configure install
+DESCRIPTION=Goodix HIDRAW Firmware Update Tool
+EAPI=5
+HOMEPAGE=https://github.com/goodix/gdix_hid_firmware_update
+KEYWORDS=*
+LICENSE=Apache-2.0
+SLOT=0
+SRC_URI=https://github.com/goodix/gdix_hid_firmware_update/archive/v1.7.6.tar.gz -> gdix_hid_firmware_update-1.7.6.tar.gz
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=a7192d1161a0f3b17bd26740a5ca3110
diff --git a/metadata/md5-cache/chromeos-base/gdix_hid_firmware_update-1.7.6-r1 b/metadata/md5-cache/chromeos-base/gdix_hid_firmware_update-1.7.6-r1
new file mode 100644
index 0000000..dacd628
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/gdix_hid_firmware_update-1.7.6-r1
@@ -0,0 +1,10 @@
+DEFINED_PHASES=configure install
+DESCRIPTION=Goodix HIDRAW Firmware Update Tool
+EAPI=5
+HOMEPAGE=https://github.com/goodix/gdix_hid_firmware_update
+KEYWORDS=*
+LICENSE=Apache-2.0
+SLOT=0
+SRC_URI=https://github.com/goodix/gdix_hid_firmware_update/archive/v1.7.6.tar.gz -> gdix_hid_firmware_update-1.7.6.tar.gz
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=a7192d1161a0f3b17bd26740a5ca3110
diff --git a/metadata/md5-cache/chromeos-base/gestures-0.0.1-r608 b/metadata/md5-cache/chromeos-base/gestures-0.0.1-r608
deleted file mode 100644
index 9dfbd63..0000000
--- a/metadata/md5-cache/chromeos-base/gestures-0.0.1-r608
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-cpp/gtest:= X? ( x11-libs/libXi:= ) chromeos-base/gestures-conf:= chromeos-base/libevdev:= dev-libs/jsoncpp:= virtual/udev
-DESCRIPTION=Gesture recognizer library
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/gestures/
-IUSE=-asan +X cros-debug asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_f61862266364ee29a7990560bf5e6b7b6e151873
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/gestures-conf:= chromeos-base/libevdev:= dev-libs/jsoncpp:= virtual/udev
-SLOT=0/0.0.1-r608
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=95a6df193d3e25801abef2897972c044
diff --git a/metadata/md5-cache/chromeos-base/gestures-0.0.1-r609 b/metadata/md5-cache/chromeos-base/gestures-0.0.1-r609
new file mode 100644
index 0000000..bb1ed0a
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/gestures-0.0.1-r609
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-cpp/gtest:= X? ( x11-libs/libXi:= ) chromeos-base/gestures-conf:= chromeos-base/libevdev:= dev-libs/jsoncpp:= virtual/udev
+DESCRIPTION=Gesture recognizer library
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/gestures/
+IUSE=-asan +X cros-debug asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_6158abc8e6c0a97828a6e95e8100c1d84d5bfdec
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/gestures-conf:= chromeos-base/libevdev:= dev-libs/jsoncpp:= virtual/udev
+SLOT=0/0.0.1-r609
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=585f14b77aaa2a9e5ee42583d85bd475
diff --git a/metadata/md5-cache/chromeos-base/gestures-9999 b/metadata/md5-cache/chromeos-base/gestures-9999
index 5f90f01..42a7421 100644
--- a/metadata/md5-cache/chromeos-base/gestures-9999
+++ b/metadata/md5-cache/chromeos-base/gestures-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/gestures-conf:= chromeos-base/libevdev:= dev-libs/jsoncpp:= virtual/udev
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=999ae599c6fb3f5a15586aab0be5f0d1
diff --git a/metadata/md5-cache/chromeos-base/gestures-conf-0.0.1-r138 b/metadata/md5-cache/chromeos-base/gestures-conf-0.0.1-r138
deleted file mode 100644
index 76bc885..0000000
--- a/metadata/md5-cache/chromeos-base/gestures-conf-0.0.1-r138
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-DEPEND=sys-apps/baselayout
-DESCRIPTION=Board specific gestures library configuration file.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/xorg-conf/
-IUSE=elan board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild cros_host cros_workon_tree_b2fb9cd3688231f48d3af4596cc6144c4beff52c
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!chromeos-base/touchpad-linearity sys-apps/baselayout
-SLOT=0/0.0.1-r138
-_eclasses_=cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=e9ededbde494869f4a98d07c45ca6d7a
diff --git a/metadata/md5-cache/chromeos-base/gestures-conf-0.0.1-r143 b/metadata/md5-cache/chromeos-base/gestures-conf-0.0.1-r143
new file mode 100644
index 0000000..6d3281b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/gestures-conf-0.0.1-r143
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DEPEND=sys-apps/baselayout
+DESCRIPTION=Board specific gestures library configuration file.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/xorg-conf/
+IUSE=elan board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild cros_host cros_workon_tree_6b68efa2d8200a54d7bc083d9100de106e8c22b9
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!chromeos-base/touchpad-linearity sys-apps/baselayout
+SLOT=0/0.0.1-r143
+_eclasses_=cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=4083e8d81ecc035283c7031353330645
diff --git a/metadata/md5-cache/chromeos-base/gestures-conf-9999 b/metadata/md5-cache/chromeos-base/gestures-conf-9999
index 5fa2f45..8a1e4cc 100644
--- a/metadata/md5-cache/chromeos-base/gestures-conf-9999
+++ b/metadata/md5-cache/chromeos-base/gestures-conf-9999
@@ -4,11 +4,11 @@
 DESCRIPTION=Board specific gestures library configuration file.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/xorg-conf/
-IUSE=elan board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild cros_host cros_workon_tree_
+IUSE=elan board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
 RDEPEND=!chromeos-base/touchpad-linearity sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=04fe6792d4cc75446327890ead31ee24
diff --git a/metadata/md5-cache/chromeos-base/ghostscript-fuzz-0.0.1 b/metadata/md5-cache/chromeos-base/ghostscript-fuzz-0.0.1
index 7398b54..f63895c 100644
--- a/metadata/md5-cache/chromeos-base/ghostscript-fuzz-0.0.1
+++ b/metadata/md5-cache/chromeos-base/ghostscript-fuzz-0.0.1
@@ -9,5 +9,5 @@
 RDEPEND=app-text/ghostscript-gpl:=[fuzzer]
 REQUIRED_USE=fuzzer
 SLOT=0
-_eclasses_=cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=521568f4773100ca59d2bf6c1d1e2af7
+_eclasses_=cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=375c9ed307edd871bad0df847d77ad9d
diff --git a/metadata/md5-cache/chromeos-base/ghostscript-fuzz-0.0.1-r5 b/metadata/md5-cache/chromeos-base/ghostscript-fuzz-0.0.1-r5
deleted file mode 100644
index 7398b54..0000000
--- a/metadata/md5-cache/chromeos-base/ghostscript-fuzz-0.0.1-r5
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare
-DEPEND=app-text/ghostscript-gpl:=[fuzzer]
-DESCRIPTION=Fuzzer for Ghostscript
-EAPI=7
-HOMEPAGE=http://www.chromium.org/
-IUSE=asan fuzzer fuzzer asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=BSD-Google
-RDEPEND=app-text/ghostscript-gpl:=[fuzzer]
-REQUIRED_USE=fuzzer
-SLOT=0
-_eclasses_=cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=521568f4773100ca59d2bf6c1d1e2af7
diff --git a/metadata/md5-cache/chromeos-base/ghostscript-fuzz-0.0.1-r6 b/metadata/md5-cache/chromeos-base/ghostscript-fuzz-0.0.1-r6
new file mode 100644
index 0000000..f63895c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ghostscript-fuzz-0.0.1-r6
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install prepare
+DEPEND=app-text/ghostscript-gpl:=[fuzzer]
+DESCRIPTION=Fuzzer for Ghostscript
+EAPI=7
+HOMEPAGE=http://www.chromium.org/
+IUSE=asan fuzzer fuzzer asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=BSD-Google
+RDEPEND=app-text/ghostscript-gpl:=[fuzzer]
+REQUIRED_USE=fuzzer
+SLOT=0
+_eclasses_=cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=375c9ed307edd871bad0df847d77ad9d
diff --git a/metadata/md5-cache/chromeos-base/glbench-0.0.1-r17 b/metadata/md5-cache/chromeos-base/glbench-0.0.1-r17
deleted file mode 100644
index 12e965b..0000000
--- a/metadata/md5-cache/chromeos-base/glbench-0.0.1-r17
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install setup unpack
-DEPEND=>=dev-cpp/gflags-2.0:= media-libs/libpng:= virtual/opengles:= media-libs/waffle:= x11-drivers/opengles-headers:=
-DESCRIPTION=Microbenchmark for opengl/gles
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/glbench/
-IUSE=opengl opengles cros_host cros_workon_tree_809488d2c59844b032584c7972e75eb3fe498bba
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=>=dev-cpp/gflags-2.0:= media-libs/libpng:= virtual/opengles:= media-libs/waffle:=
-SLOT=0/0.0.1-r17
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e03d976c62a06fa1ce4acf327224923e
diff --git a/metadata/md5-cache/chromeos-base/glbench-0.0.1-r23 b/metadata/md5-cache/chromeos-base/glbench-0.0.1-r23
new file mode 100644
index 0000000..9f7d00b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/glbench-0.0.1-r23
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install setup unpack
+DEPEND=>=dev-cpp/gflags-2.0:= media-libs/libpng:= virtual/opengles:= media-libs/waffle:= x11-drivers/opengles-headers:=
+DESCRIPTION=Microbenchmark for opengl/gles
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/glbench/
+IUSE=opengl opengles cros_host cros_workon_tree_1ce01cc16e3259de626e5f9961f0576482a8c2d2
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=>=dev-cpp/gflags-2.0:= media-libs/libpng:= virtual/opengles:= media-libs/waffle:=
+SLOT=0/0.0.1-r23
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f031d0e7a5719c9915ddda5c47ac7011
diff --git a/metadata/md5-cache/chromeos-base/glbench-9999 b/metadata/md5-cache/chromeos-base/glbench-9999
index 0da9698..f29b126 100644
--- a/metadata/md5-cache/chromeos-base/glbench-9999
+++ b/metadata/md5-cache/chromeos-base/glbench-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=>=dev-cpp/gflags-2.0:= media-libs/libpng:= virtual/opengles:= media-libs/waffle:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4e570216b2125e081c9024eedcc49fb1
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=20c9a8c970d32e7ffc776a80989f9d72
diff --git a/metadata/md5-cache/chromeos-base/glib-bridge-0.0.1-r202 b/metadata/md5-cache/chromeos-base/glib-bridge-0.0.1-r202
deleted file mode 100644
index d583387..0000000
--- a/metadata/md5-cache/chromeos-base/glib-bridge-0.0.1-r202
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/glib:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=libchrome-glib message loop bridge
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/glib-bridge
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a0d78fc5cbcc8bce3d024656c530b5b8a045d633_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a0d78fc5cbcc8bce3d024656c530b5b8a045d633_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-libs/glib:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=10dd686f4a2f77a31aa897a324e51b55
diff --git a/metadata/md5-cache/chromeos-base/glib-bridge-0.0.1-r230 b/metadata/md5-cache/chromeos-base/glib-bridge-0.0.1-r230
new file mode 100644
index 0000000..76e9dd0
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/glib-bridge-0.0.1-r230
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/glib:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=libchrome-glib message loop bridge
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/glib-bridge
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_94dfcd3dbd61f0fad7e73b3d224b528ca8cc6fa4_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_94dfcd3dbd61f0fad7e73b3d224b528ca8cc6fa4_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/glib:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=bf75efb69c546ae2621a706dbf937a75
diff --git a/metadata/md5-cache/chromeos-base/glib-bridge-9999 b/metadata/md5-cache/chromeos-base/glib-bridge-9999
index 9bfbfb9..fc98902 100644
--- a/metadata/md5-cache/chromeos-base/glib-bridge-9999
+++ b/metadata/md5-cache/chromeos-base/glib-bridge-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=dev-libs/glib:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7b7a01bcc4f86ab8cf6285e44f35a781
diff --git a/metadata/md5-cache/chromeos-base/goldfishd-0.0.1-r508 b/metadata/md5-cache/chromeos-base/goldfishd-0.0.1-r508
deleted file mode 100644
index 1c55e45..0000000
--- a/metadata/md5-cache/chromeos-base/goldfishd-0.0.1-r508
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Android Emulator Daemon for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/goldfishd/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4c8cf5f4cf1d65ee1fbdfee54cce3754acaa9159_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4c8cf5f4cf1d65ee1fbdfee54cce3754acaa9159_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/autotest-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=29734fb1636d9079af4f0bb18a43df5b
diff --git a/metadata/md5-cache/chromeos-base/goldfishd-0.0.1-r534 b/metadata/md5-cache/chromeos-base/goldfishd-0.0.1-r534
new file mode 100644
index 0000000..a287131
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/goldfishd-0.0.1-r534
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Android Emulator Daemon for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/goldfishd/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_13765b1ff67adeffebb9deed2992c18378e5e243_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_13765b1ff67adeffebb9deed2992c18378e5e243_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/autotest-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=52026f3a9bc69ca66ffb278fa3950eb2
diff --git a/metadata/md5-cache/chromeos-base/goldfishd-9999 b/metadata/md5-cache/chromeos-base/goldfishd-9999
index c975464..86e2d57 100644
--- a/metadata/md5-cache/chromeos-base/goldfishd-9999
+++ b/metadata/md5-cache/chromeos-base/goldfishd-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/autotest-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=222b61c95175c552cbf5e8e067e5f668
diff --git a/metadata/md5-cache/chromeos-base/google-breakpad-2021.06.11.172551-r204 b/metadata/md5-cache/chromeos-base/google-breakpad-2021.06.11.172551-r204
deleted file mode 100644
index a4d94a1..0000000
--- a/metadata/md5-cache/chromeos-base/google-breakpad-2021.06.11.172551-r204
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=net-misc/curl:= test? ( dev-cpp/gtest:= )
-DESCRIPTION=Google crash reporting
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/breakpad/breakpad
-IUSE=-alltests cros_host test cros_host cros_workon_tree_e6ad581adc61b514dfbd11029be8b43a1c0f52a1_c2034bc1106379848e2c8c7b68f40d13b3c09097 cros_arm64 cros_host cros_workon_tree_e6ad581adc61b514dfbd11029be8b43a1c0f52a1_c2034bc1106379848e2c8c7b68f40d13b3c09097 cros_i686 cros_host cros_workon_tree_e6ad581adc61b514dfbd11029be8b43a1c0f52a1_c2034bc1106379848e2c8c7b68f40d13b3c09097
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live live
-RDEPEND=net-misc/curl:=
-SLOT=0/2021.06.11.172551-r204
-_eclasses_=cros-arm64	99e3147108567dd0bb2989d51049e8c0	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-i686	bc478c2bc9a572852d5b6d779f140dda	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e5a55f0ba3b3a7a18b90985b350dddb5
diff --git a/metadata/md5-cache/chromeos-base/google-breakpad-2021.08.09.232412-r206 b/metadata/md5-cache/chromeos-base/google-breakpad-2021.08.09.232412-r206
new file mode 100644
index 0000000..ba7b3f2
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/google-breakpad-2021.08.09.232412-r206
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=net-misc/curl:= test? ( dev-cpp/gtest:= )
+DESCRIPTION=Google crash reporting
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/breakpad/breakpad
+IUSE=-alltests cros_host test cros_host cros_workon_tree_3f31ee606d96ec70db0a8bbe95886810917284eb_c2034bc1106379848e2c8c7b68f40d13b3c09097 cros_arm64 cros_host cros_workon_tree_3f31ee606d96ec70db0a8bbe95886810917284eb_c2034bc1106379848e2c8c7b68f40d13b3c09097 cros_i686 cros_host cros_workon_tree_3f31ee606d96ec70db0a8bbe95886810917284eb_c2034bc1106379848e2c8c7b68f40d13b3c09097
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live live
+RDEPEND=net-misc/curl:=
+SLOT=0/2021.08.09.232412-r206
+_eclasses_=cros-arm64	99e3147108567dd0bb2989d51049e8c0	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-i686	bc478c2bc9a572852d5b6d779f140dda	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2be0adc443e5d47ee830fa8390320647
diff --git a/metadata/md5-cache/chromeos-base/google-breakpad-9999 b/metadata/md5-cache/chromeos-base/google-breakpad-9999
index 69badc5..c8d1813 100644
--- a/metadata/md5-cache/chromeos-base/google-breakpad-9999
+++ b/metadata/md5-cache/chromeos-base/google-breakpad-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live live
 RDEPEND=net-misc/curl:=
 SLOT=0/9999
-_eclasses_=cros-arm64	99e3147108567dd0bb2989d51049e8c0	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-i686	bc478c2bc9a572852d5b6d779f140dda	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-arm64	99e3147108567dd0bb2989d51049e8c0	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-i686	bc478c2bc9a572852d5b6d779f140dda	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=4b6f8a0ae715dcd8892c3b618b41404c
diff --git a/metadata/md5-cache/chromeos-base/graphics-utils-go-0.0.1-r100 b/metadata/md5-cache/chromeos-base/graphics-utils-go-0.0.1-r100
new file mode 100644
index 0000000..2b93f70
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/graphics-utils-go-0.0.1-r100
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup test unpack
+DEPEND=chromeos-base/cros-config-api dev-go/crypto dev-go/fogleman-gg dev-go/go-image dev-go/gofpdf dev-go/golang-freetype dev-go/gonum-plot dev-go/protobuf dev-go/readline dev-go/svgo dev-lang/go
+DESCRIPTION=Portable graphics utils written in go
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/graphics/
+IUSE=cros_host cros_workon_tree_a131d99a4a9b07d66eb2f6173702e43a3b4b2a3a
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/cros-config-api dev-go/crypto dev-go/fogleman-gg dev-go/go-image dev-go/gofpdf dev-go/golang-freetype dev-go/gonum-plot dev-go/protobuf dev-go/readline dev-go/svgo
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1178bd9718f6ded4f2dabc3c230b154b
diff --git a/metadata/md5-cache/chromeos-base/graphics-utils-go-0.0.1-r92 b/metadata/md5-cache/chromeos-base/graphics-utils-go-0.0.1-r92
deleted file mode 100644
index 3826d91..0000000
--- a/metadata/md5-cache/chromeos-base/graphics-utils-go-0.0.1-r92
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup test unpack
-DEPEND=chromeos-base/cros-config-api dev-go/crypto dev-go/fogleman-gg dev-go/go-image dev-go/gofpdf dev-go/golang-freetype dev-go/gonum-plot dev-go/protobuf dev-go/readline dev-go/svgo dev-lang/go
-DESCRIPTION=Portable graphics utils written in go
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/graphics/
-IUSE=cros_host cros_workon_tree_ee2a831469eb4e62c271b95b55a9b8eaa7706529
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/cros-config-api dev-go/crypto dev-go/fogleman-gg dev-go/go-image dev-go/gofpdf dev-go/golang-freetype dev-go/gonum-plot dev-go/protobuf dev-go/readline dev-go/svgo
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ab4bb17a1f4ebe1444c42469e8e95aec
diff --git a/metadata/md5-cache/chromeos-base/graphics-utils-go-9999 b/metadata/md5-cache/chromeos-base/graphics-utils-go-9999
index 054734b..92e7bd5 100644
--- a/metadata/md5-cache/chromeos-base/graphics-utils-go-9999
+++ b/metadata/md5-cache/chromeos-base/graphics-utils-go-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/cros-config-api dev-go/crypto dev-go/fogleman-gg dev-go/go-image dev-go/gofpdf dev-go/golang-freetype dev-go/gonum-plot dev-go/protobuf dev-go/readline dev-go/svgo
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=0d690007a19103eb8d1d83491575ffb8
diff --git a/metadata/md5-cache/chromeos-base/graphics-utils-python-0.0.1-r5 b/metadata/md5-cache/chromeos-base/graphics-utils-python-0.0.1-r5
index 9bec7d8..dc7bf11 100644
--- a/metadata/md5-cache/chromeos-base/graphics-utils-python-0.0.1-r5
+++ b/metadata/md5-cache/chromeos-base/graphics-utils-python-0.0.1-r5
@@ -11,5 +11,5 @@
 RDEPEND=chromeos-base/cros-config-api python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=923564c88c8ca72c6e4f9966aa036deb
diff --git a/metadata/md5-cache/chromeos-base/graphics-utils-python-9999 b/metadata/md5-cache/chromeos-base/graphics-utils-python-9999
index 25c9d7e..9444f7e 100644
--- a/metadata/md5-cache/chromeos-base/graphics-utils-python-9999
+++ b/metadata/md5-cache/chromeos-base/graphics-utils-python-9999
@@ -11,5 +11,5 @@
 RDEPEND=chromeos-base/cros-config-api python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=947b715d84c540614e15bf79c6b09923
diff --git a/metadata/md5-cache/chromeos-base/graphyte-0.0.1-r39 b/metadata/md5-cache/chromeos-base/graphyte-0.0.1-r39
index c6af3ab1..8641e48 100644
--- a/metadata/md5-cache/chromeos-base/graphyte-0.0.1-r39
+++ b/metadata/md5-cache/chromeos-base/graphyte-0.0.1-r39
@@ -10,5 +10,5 @@
 RDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 )
 SLOT=0/0.0.1-r39
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=786a12b751cd39368137a4e6db9735be
diff --git a/metadata/md5-cache/chromeos-base/graphyte-9999 b/metadata/md5-cache/chromeos-base/graphyte-9999
index 232905d..9d18d05 100644
--- a/metadata/md5-cache/chromeos-base/graphyte-9999
+++ b/metadata/md5-cache/chromeos-base/graphyte-9999
@@ -10,5 +10,5 @@
 RDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=53d99aad1ff2bf1dc8b3946b93fb8755
diff --git a/metadata/md5-cache/chromeos-base/hammerd-0.0.1-r1030 b/metadata/md5-cache/chromeos-base/hammerd-0.0.1-r1030
deleted file mode 100644
index bb8b349..0000000
--- a/metadata/md5-cache/chromeos-base/hammerd-0.0.1-r1030
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/ec-utils:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/vboot_reference:= dev-libs/openssl:0= sys-apps/flashmap:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=A daemon to update EC firmware of hammer, the base of the detachable.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/hammerd/
-IUSE=-hammerd_api fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_34e232daea866bc143a645ad413e0abb368929ee_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_34e232daea866bc143a645ad413e0abb368929ee_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/ec-utils:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/vboot_reference:= dev-libs/openssl:0= sys-apps/flashmap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r1030
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=970629107418fb62337f92d4ee726dc1
diff --git a/metadata/md5-cache/chromeos-base/hammerd-0.0.1-r1063 b/metadata/md5-cache/chromeos-base/hammerd-0.0.1-r1063
new file mode 100644
index 0000000..7c2accf
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/hammerd-0.0.1-r1063
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/ec-utils:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/vboot_reference:= dev-libs/openssl:0= sys-apps/flashmap:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=A daemon to update EC firmware of hammer, the base of the detachable.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/hammerd/
+IUSE=-hammerd_api fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_a9429042906cbb8178b224d029a2965e5dca0974_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_a9429042906cbb8178b224d029a2965e5dca0974_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/ec-utils:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/vboot_reference:= dev-libs/openssl:0= sys-apps/flashmap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r1063
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=74fe9b0b3fe65cc9b208d44c8cb202b5
diff --git a/metadata/md5-cache/chromeos-base/hammerd-9999 b/metadata/md5-cache/chromeos-base/hammerd-9999
index c7bbf77..30150f5 100644
--- a/metadata/md5-cache/chromeos-base/hammerd-9999
+++ b/metadata/md5-cache/chromeos-base/hammerd-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/ec-utils:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/vboot_reference:= dev-libs/openssl:0= sys-apps/flashmap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=189bffff796998c9b10258b3d5cffc07
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=99d38f70c767c93e7f7dfee28bfa7806
diff --git a/metadata/md5-cache/chromeos-base/hammerd-test-utils-0.0.1-r568 b/metadata/md5-cache/chromeos-base/hammerd-test-utils-0.0.1-r568
deleted file mode 100644
index 5179022..0000000
--- a/metadata/md5-cache/chromeos-base/hammerd-test-utils-0.0.1-r568
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-vcs/git dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=chromeos-base/hammerd:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Python wrapper of hammerd API and some python utility scripts.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/hammerd/
-IUSE=+hammerd_api cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_34e232daea866bc143a645ad413e0abb368929ee_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_34e232daea866bc143a645ad413e0abb368929ee_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test python_targets_python3_6 python_targets_python3_7 python_targets_python3_8
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/hammerd:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
-REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
-SLOT=0/0.0.1-r568
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f5c8f7bc7a38bd9d4c20cbbbdad51820
diff --git a/metadata/md5-cache/chromeos-base/hammerd-test-utils-0.0.1-r600 b/metadata/md5-cache/chromeos-base/hammerd-test-utils-0.0.1-r600
new file mode 100644
index 0000000..774da22
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/hammerd-test-utils-0.0.1-r600
@@ -0,0 +1,15 @@
+BDEPEND=dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-vcs/git dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=chromeos-base/hammerd:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Python wrapper of hammerd API and some python utility scripts.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/hammerd/
+IUSE=+hammerd_api cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_a9429042906cbb8178b224d029a2965e5dca0974_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_a9429042906cbb8178b224d029a2965e5dca0974_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test python_targets_python3_6 python_targets_python3_7 python_targets_python3_8
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/hammerd:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
+SLOT=0/0.0.1-r600
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=01f2745362c53ddcc2bc5add8658ad92
diff --git a/metadata/md5-cache/chromeos-base/hammerd-test-utils-9999 b/metadata/md5-cache/chromeos-base/hammerd-test-utils-9999
index 1d1004e..7cfa20e 100644
--- a/metadata/md5-cache/chromeos-base/hammerd-test-utils-9999
+++ b/metadata/md5-cache/chromeos-base/hammerd-test-utils-9999
@@ -11,5 +11,5 @@
 RDEPEND=chromeos-base/hammerd:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8b1cac82fbdb4e1f7489e8294aa1f8c8
diff --git a/metadata/md5-cache/chromeos-base/hardware_verifier-0.0.1-r282 b/metadata/md5-cache/chromeos-base/hardware_verifier-0.0.1-r282
deleted file mode 100644
index 99842fe..0000000
--- a/metadata/md5-cache/chromeos-base/hardware_verifier-0.0.1-r282
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/system_api:= chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Hardware Verifier Tool/Lib for Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/hardware_verifier/
-IUSE=generated_cros_config unibuild cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_55818261ee7cf7ee7aaa319bfc67f186c8143b31_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_55818261ee7cf7ee7aaa319bfc67f186c8143b31_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r282
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=247764ac663eea3c28e83a8346fe06ac
diff --git a/metadata/md5-cache/chromeos-base/hardware_verifier-0.0.1-r346 b/metadata/md5-cache/chromeos-base/hardware_verifier-0.0.1-r346
new file mode 100644
index 0000000..717aa3b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/hardware_verifier-0.0.1-r346
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/chromeos-config-tools:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/system_api:= chromeos-base/vboot_reference:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Hardware Verifier Tool/Lib for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/hardware_verifier/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_9b262e205d2e0104fbdc10f45d71aaca9a294501_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_9b262e205d2e0104fbdc10f45d71aaca9a294501_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r346
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=ce71b51c20994d5deb64fd24e7f86ee6
diff --git a/metadata/md5-cache/chromeos-base/hardware_verifier-9999 b/metadata/md5-cache/chromeos-base/hardware_verifier-9999
index cae4e01..d98eb3e 100644
--- a/metadata/md5-cache/chromeos-base/hardware_verifier-9999
+++ b/metadata/md5-cache/chromeos-base/hardware_verifier-9999
@@ -1,14 +1,14 @@
-BDEPEND=dev-vcs/git dev-vcs/git
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/system_api:= chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/chromeos-config-tools:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/system_api:= chromeos-base/vboot_reference:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Hardware Verifier Tool/Lib for Chrome OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/hardware_verifier/
-IUSE=generated_cros_config unibuild cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=fc0efc9671622b8be9937af0b761e51d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=7a729cc78fbfe7866a1054565a7e63ec
diff --git a/metadata/md5-cache/chromeos-base/hardware_verifier_proto-0.0.1-r182 b/metadata/md5-cache/chromeos-base/hardware_verifier_proto-0.0.1-r182
deleted file mode 100644
index 76ed2fa..0000000
--- a/metadata/md5-cache/chromeos-base/hardware_verifier_proto-0.0.1-r182
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst setup test unpack
-DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/system_api:= chromeos-base/vboot_reference:= dev-go/protobuf dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Hardware Verifier go proto for Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/hardware_verifier/proto
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_55818261ee7cf7ee7aaa319bfc67f186c8143b31_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_55818261ee7cf7ee7aaa319bfc67f186c8143b31_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r182
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3491753d5a00ab3ec30e92daeab7223d
diff --git a/metadata/md5-cache/chromeos-base/hardware_verifier_proto-0.0.1-r226 b/metadata/md5-cache/chromeos-base/hardware_verifier_proto-0.0.1-r226
new file mode 100644
index 0000000..4b673be
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/hardware_verifier_proto-0.0.1-r226
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst setup test unpack
+DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/system_api:= chromeos-base/vboot_reference:= dev-go/protobuf dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Hardware Verifier go proto for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/hardware_verifier/proto
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_9b262e205d2e0104fbdc10f45d71aaca9a294501_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_9b262e205d2e0104fbdc10f45d71aaca9a294501_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r226
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=33fa963eb561cad3cd3df25d7fe6b583
diff --git a/metadata/md5-cache/chromeos-base/hardware_verifier_proto-9999 b/metadata/md5-cache/chromeos-base/hardware_verifier_proto-9999
index 37764d1..0f91d01 100644
--- a/metadata/md5-cache/chromeos-base/hardware_verifier_proto-9999
+++ b/metadata/md5-cache/chromeos-base/hardware_verifier_proto-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=58b23fea9b583dd4814e9b7eef7c9508
diff --git a/metadata/md5-cache/chromeos-base/hps-firmware-0.1.0-r69 b/metadata/md5-cache/chromeos-base/hps-firmware-0.1.0-r69
new file mode 100644
index 0000000..fd21dca
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/hps-firmware-0.1.0-r69
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/anyhow-1.0.38:= <dev-rust/anyhow-2.0.0 >=dev-rust/bitflags-1.2.1:= <dev-rust/bitflags-2.0.0 =dev-rust/clap-3*:= >=dev-rust/cortex-m-0.7.1:= <dev-rust/cortex-m-0.8.0 >=dev-rust/cortex-m-rt-0.6.13:= <dev-rust/cortex-m-rt-0.7.0 >=dev-rust/cortex-m-rtic-0.5.5:= <dev-rust/cortex-m-rtic-0.6.0 =dev-rust/crc-2*:= >=dev-rust/defmt-0.2.1:= <dev-rust/defmt-0.3.0 =dev-rust/defmt-rtt-0.2*:= >=dev-rust/ed25519-compact-0.1.9:= <dev-rust/ed25519-compact-0.2.0 >=dev-rust/embedded-hal-0.2.4:= <dev-rust/embedded-hal-0.3.0 =dev-rust/embedded-hal-mock-0.8*:= >=dev-rust/git-version-0.3.4:= <dev-rust/git-version-0.4.0 >=dev-rust/hmac-sha256-0.1.6:= <dev-rust/hmac-sha256-0.2.0 >=dev-rust/num_enum-0.5.1:= <dev-rust/num_enum-0.6.0 =dev-rust/panic-halt-0.2*:= =dev-rust/panic-reset-0.1*:= >=dev-rust/spi-memory-0.2.0:= <dev-rust/spi-memory-0.3.0 =dev-rust/stm32g0xx-hal-0.1*:= =dev-rust/ufmt-0.1*:= =dev-rust/ufmt-write-0.1*:= >=dev-rust/panic-rtt-target-0.1.2:= <dev-rust/panic-rtt-target-0.2.0 >=dev-rust/rtt-target-0.3.1:= <dev-rust/rtt-target-0.4.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=HPS firmware and tooling
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/hps-firmware
+IUSE=cros_host cros_workon_tree_c008b6612af47a58fbb1c8d447a3d50ecada64b9 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r69
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=66a179ed2db980721fb5b2ba09c6d778
diff --git a/metadata/md5-cache/chromeos-base/hps-firmware-9999 b/metadata/md5-cache/chromeos-base/hps-firmware-9999
new file mode 100644
index 0000000..b248c9d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/hps-firmware-9999
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/anyhow-1.0.38:= <dev-rust/anyhow-2.0.0 >=dev-rust/bitflags-1.2.1:= <dev-rust/bitflags-2.0.0 =dev-rust/clap-3*:= >=dev-rust/cortex-m-0.7.1:= <dev-rust/cortex-m-0.8.0 >=dev-rust/cortex-m-rt-0.6.13:= <dev-rust/cortex-m-rt-0.7.0 >=dev-rust/cortex-m-rtic-0.5.5:= <dev-rust/cortex-m-rtic-0.6.0 =dev-rust/crc-2*:= >=dev-rust/defmt-0.2.1:= <dev-rust/defmt-0.3.0 =dev-rust/defmt-rtt-0.2*:= >=dev-rust/ed25519-compact-0.1.9:= <dev-rust/ed25519-compact-0.2.0 >=dev-rust/embedded-hal-0.2.4:= <dev-rust/embedded-hal-0.3.0 =dev-rust/embedded-hal-mock-0.8*:= >=dev-rust/git-version-0.3.4:= <dev-rust/git-version-0.4.0 >=dev-rust/hmac-sha256-0.1.6:= <dev-rust/hmac-sha256-0.2.0 >=dev-rust/num_enum-0.5.1:= <dev-rust/num_enum-0.6.0 =dev-rust/panic-halt-0.2*:= =dev-rust/panic-reset-0.1*:= >=dev-rust/spi-memory-0.2.0:= <dev-rust/spi-memory-0.3.0 =dev-rust/stm32g0xx-hal-0.1*:= =dev-rust/ufmt-0.1*:= =dev-rust/ufmt-write-0.1*:= >=dev-rust/panic-rtt-target-0.1.2:= <dev-rust/panic-rtt-target-0.2.0 >=dev-rust/rtt-target-0.3.1:= <dev-rust/rtt-target-0.4.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=HPS firmware and tooling
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/hps-firmware
+IUSE=cros_host cros_workon_tree_ cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=~*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=07991f497587dba07f0201016d62e359
diff --git a/metadata/md5-cache/chromeos-base/hps-tool-0.0.1-r116 b/metadata/md5-cache/chromeos-base/hps-tool-0.0.1-r116
new file mode 100644
index 0000000..13670fc
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/hps-tool-0.0.1-r116
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/libusb:= dev-embedded/libftdi:= chromeos-base/metrics:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=HPS utilities and tool
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/main/hps
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2da34f68aa4bdc33e7ba1b1297e582fb7d427dc6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_e08a2eb734e33827dffeecf57eca046cd1091373 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2da34f68aa4bdc33e7ba1b1297e582fb7d427dc6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_e08a2eb734e33827dffeecf57eca046cd1091373 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/libusb:= dev-embedded/libftdi:= chromeos-base/metrics:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3ac24f30841b4912b70560a3962d48cb
diff --git a/metadata/md5-cache/chromeos-base/hps-tool-0.0.1-r49 b/metadata/md5-cache/chromeos-base/hps-tool-0.0.1-r49
deleted file mode 100644
index cff0cfd..0000000
--- a/metadata/md5-cache/chromeos-base/hps-tool-0.0.1-r49
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/libusb:= dev-embedded/libftdi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=HPS utilities and tool
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/main/hps
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_bd22f6fa6d8ddce914d34c02064afe2f9e6abaf3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_bd22f6fa6d8ddce914d34c02064afe2f9e6abaf3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-libs/libusb:= dev-embedded/libftdi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b8d18ae43ec18ecd9d091ef034c10d52
diff --git a/metadata/md5-cache/chromeos-base/hps-tool-9999 b/metadata/md5-cache/chromeos-base/hps-tool-9999
index e5fc091..275b89a 100644
--- a/metadata/md5-cache/chromeos-base/hps-tool-9999
+++ b/metadata/md5-cache/chromeos-base/hps-tool-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/libusb:= dev-embedded/libftdi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=dev-libs/libusb:= dev-embedded/libftdi:= chromeos-base/metrics:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=HPS utilities and tool
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/main/hps
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=dev-libs/libusb:= dev-embedded/libftdi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=dev-libs/libusb:= dev-embedded/libftdi:= chromeos-base/metrics:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=961c98d2b4edc5bfeea23c76f5b9e2b2
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d533321f32909dcd3e84aaa72a36f4df
diff --git a/metadata/md5-cache/chromeos-base/hpsd-0.0.1-r104 b/metadata/md5-cache/chromeos-base/hpsd-0.0.1-r104
new file mode 100644
index 0000000..6c99d8f
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/hpsd-0.0.1-r104
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=hpsd-roflash? ( dev-embedded/stm32flash:= ) chromeos-base/metrics:= chromeos-base/system_api:= dev-embedded/libftdi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Chrome OS HPS daemon.
+EAPI=7
+IUSE=hpsd-roflash cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_2da34f68aa4bdc33e7ba1b1297e582fb7d427dc6_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_2da34f68aa4bdc33e7ba1b1297e582fb7d427dc6_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=hpsd-roflash? ( dev-embedded/stm32flash:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r104
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=1e33d66544b4f1305cc4331a21d024aa
diff --git a/metadata/md5-cache/chromeos-base/hpsd-0.0.1-r37 b/metadata/md5-cache/chromeos-base/hpsd-0.0.1-r37
deleted file mode 100644
index ca3087f..0000000
--- a/metadata/md5-cache/chromeos-base/hpsd-0.0.1-r37
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/system_api:= dev-embedded/libftdi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Chrome OS HPS daemon.
-EAPI=7
-IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_bd22f6fa6d8ddce914d34c02064afe2f9e6abaf3_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_bd22f6fa6d8ddce914d34c02064afe2f9e6abaf3_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r37
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=0e3dcaa482616c7f6e0c2e74b91b18b0
diff --git a/metadata/md5-cache/chromeos-base/hpsd-9999 b/metadata/md5-cache/chromeos-base/hpsd-9999
index bca8189..823a098 100644
--- a/metadata/md5-cache/chromeos-base/hpsd-9999
+++ b/metadata/md5-cache/chromeos-base/hpsd-9999
@@ -1,13 +1,13 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/system_api:= dev-embedded/libftdi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=hpsd-roflash? ( dev-embedded/stm32flash:= ) chromeos-base/metrics:= chromeos-base/system_api:= dev-embedded/libftdi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Chrome OS HPS daemon.
 EAPI=7
-IUSE=cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=hpsd-roflash cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=hpsd-roflash? ( dev-embedded/stm32flash:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=c094231c934a70f3112537a469063235
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=afbfdb538bc6dc19b0f111718cf82299
diff --git a/metadata/md5-cache/chromeos-base/hwid_extractor-0.0.1-r275 b/metadata/md5-cache/chromeos-base/hwid_extractor-0.0.1-r275
deleted file mode 100644
index 8509e09..0000000
--- a/metadata/md5-cache/chromeos-base/hwid_extractor-0.0.1-r275
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-DESCRIPTION=Chrome OS HWID Extractor
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/factory/
-IUSE=cros_host cros_host cros_workon_tree_787e61f61f8f834c455b1f09040b8c883b56e1bc_023c756f20b8f5566813867e074a4d444a80d343
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/vboot_reference chromeos-base/vpd dev-python/pyserial dev-util/hdctools sys-apps/flashrom
-SLOT=0/0.0.1-r275
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9fa65192b5df001887f1c053bb68a109
diff --git a/metadata/md5-cache/chromeos-base/hwid_extractor-0.0.1-r487 b/metadata/md5-cache/chromeos-base/hwid_extractor-0.0.1-r487
new file mode 100644
index 0000000..aa84f64
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/hwid_extractor-0.0.1-r487
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Chrome OS HWID Extractor
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/factory/
+IUSE=cros_host cros_host cros_workon_tree_868631771d0a506c789c4d2fac62435ede8cfe6e_3ef2d8a1bb49eda7fe240c3a798aa6b0e8cfe261_55c0c5eeb7ea37270d5b8601e2000e8fe8a79704_8f6de2a783ab3318fdbf266502f7120ef3357528_bb7de3b1d4f960d843d3357bf0eff14cfbd3603d
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/vboot_reference chromeos-base/vpd dev-python/pyserial dev-util/hdctools sys-apps/flashrom
+SLOT=0/0.0.1-r487
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3e406b7d30050d7c1f5546e8caf06373
diff --git a/metadata/md5-cache/chromeos-base/hwid_extractor-9999 b/metadata/md5-cache/chromeos-base/hwid_extractor-9999
index 525159e..dad484d 100644
--- a/metadata/md5-cache/chromeos-base/hwid_extractor-9999
+++ b/metadata/md5-cache/chromeos-base/hwid_extractor-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/vboot_reference chromeos-base/vpd dev-python/pyserial dev-util/hdctools sys-apps/flashrom
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ac39db6c488173d9cb07bf254e685bae
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b2f3021d1e778ce58ab6668ad451ae61
diff --git a/metadata/md5-cache/chromeos-base/hwsec-test-utils-0.0.1-r220 b/metadata/md5-cache/chromeos-base/hwsec-test-utils-0.0.1-r220
deleted file mode 100644
index c29f6c9..0000000
--- a/metadata/md5-cache/chromeos-base/hwsec-test-utils-0.0.1-r220
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=tpm2? ( chromeos-base/trunks:= ) !tpm2? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:=[test?] ) chromeos-base/attestation:= chromeos-base/system_api:= dev-libs/openssl:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Hwsec-related test-only features. This package resides in test images only.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/hwsec-test-utils/
-IUSE=test tpm tpm2 cros_host cros_workon_tree_8a6aa0783afea740fe52cec225aef91187cbcde6_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_13b6cac5121d40667689f2d48faddcb1bb34e1bb_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_8a6aa0783afea740fe52cec225aef91187cbcde6_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_13b6cac5121d40667689f2d48faddcb1bb34e1bb_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=tpm2? ( chromeos-base/trunks:= ) !tpm2? ( app-crypt/trousers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=tpm2? ( !tpm )
-SLOT=0/0.0.1-r220
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=338805c2ef97f7984163a378d8de0815
diff --git a/metadata/md5-cache/chromeos-base/hwsec-test-utils-0.0.1-r296 b/metadata/md5-cache/chromeos-base/hwsec-test-utils-0.0.1-r296
new file mode 100644
index 0000000..fab5424
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/hwsec-test-utils-0.0.1-r296
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:=[test?] ) chromeos-base/attestation:= chromeos-base/libhwsec-foundation:= chromeos-base/system_api:= dev-libs/openssl:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Hwsec-related test-only features. This package resides in test images only.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/hwsec-test-utils/
+IUSE=test tpm tpm_dynamic tpm2 cros_host cros_workon_tree_0eb41e5da113495ed84a62fb776c5190764cc83d_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_f864cc78ddb7b33f44b3ed6a47c0df1c53e2d07a_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_0eb41e5da113495ed84a62fb776c5190764cc83d_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_f864cc78ddb7b33f44b3ed6a47c0df1c53e2d07a_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
+SLOT=0/0.0.1-r296
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fa0706c1e709b13069017d88308efd74
diff --git a/metadata/md5-cache/chromeos-base/hwsec-test-utils-9999 b/metadata/md5-cache/chromeos-base/hwsec-test-utils-9999
index 0f3d731..20567a5 100644
--- a/metadata/md5-cache/chromeos-base/hwsec-test-utils-9999
+++ b/metadata/md5-cache/chromeos-base/hwsec-test-utils-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=tpm2? ( chromeos-base/trunks:= ) !tpm2? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:=[test?] ) chromeos-base/attestation:= chromeos-base/system_api:= dev-libs/openssl:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/trunks:=[test?] ) chromeos-base/attestation:= chromeos-base/libhwsec-foundation:= chromeos-base/system_api:= dev-libs/openssl:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Hwsec-related test-only features. This package resides in test images only.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/hwsec-test-utils/
-IUSE=test tpm tpm2 cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=test tpm tpm_dynamic tpm2 cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=tpm2? ( chromeos-base/trunks:= ) !tpm2? ( app-crypt/trousers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=tpm2? ( !tpm )
+RDEPEND=tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3ae215664ca37ce49b8976526c8cd8c5
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9e1ae2e5724236e0d489b1764925275f
diff --git a/metadata/md5-cache/chromeos-base/iioservice-0.0.1-r146 b/metadata/md5-cache/chromeos-base/iioservice-0.0.1-r146
deleted file mode 100644
index 14ba7c2..0000000
--- a/metadata/md5-cache/chromeos-base/iioservice-0.0.1-r146
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/libiioservice_ipc:= chromeos-base/libmems:= chromeos-base/mems_setup virtual/chromeos-ec-driver-init chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Chrome OS sensor HAL IPC util.
-EAPI=7
-IUSE=+seccomp cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_da73aae6d89c8e69c3740af612610792ce42b1a8_359903647899af99fb1bc9ba9d666b0e78fcb3a8_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_da73aae6d89c8e69c3740af612610792ce42b1a8_359903647899af99fb1bc9ba9d666b0e78fcb3a8_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libiioservice_ipc:= chromeos-base/libmems:= chromeos-base/mems_setup virtual/chromeos-ec-driver-init >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r146
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=0cac371775f5abe7321c2948229760f8
diff --git a/metadata/md5-cache/chromeos-base/iioservice-0.0.1-r222 b/metadata/md5-cache/chromeos-base/iioservice-0.0.1-r222
new file mode 100644
index 0000000..a6e1369
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/iioservice-0.0.1-r222
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=!chromeos-base/chromeos-accelerometer-init >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/libiioservice_ipc:= chromeos-base/libmems:= chromeos-base/mems_setup virtual/chromeos-ec-driver-init chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Chrome OS sensor HAL IPC util.
+EAPI=7
+IUSE=+seccomp cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_14acd311021ff7b4a6e5a812cf6ef18bab1ede72_ba93b35f6b12686bf293ce79255da511c89278e1_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_7b1902bfd171c628068c91fc41e253d0c08df363 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_14acd311021ff7b4a6e5a812cf6ef18bab1ede72_ba93b35f6b12686bf293ce79255da511c89278e1_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_7b1902bfd171c628068c91fc41e253d0c08df363 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!chromeos-base/chromeos-accelerometer-init >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/libiioservice_ipc:= chromeos-base/libmems:= chromeos-base/mems_setup virtual/chromeos-ec-driver-init >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r222
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=bc47483ce2ca12b4714690f4f797c309
diff --git a/metadata/md5-cache/chromeos-base/iioservice-9999 b/metadata/md5-cache/chromeos-base/iioservice-9999
index 90d8995..3fe0676 100644
--- a/metadata/md5-cache/chromeos-base/iioservice-9999
+++ b/metadata/md5-cache/chromeos-base/iioservice-9999
@@ -1,13 +1,13 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/libiioservice_ipc:= chromeos-base/libmems:= chromeos-base/mems_setup virtual/chromeos-ec-driver-init chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=!chromeos-base/chromeos-accelerometer-init >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/libiioservice_ipc:= chromeos-base/libmems:= chromeos-base/mems_setup virtual/chromeos-ec-driver-init chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Chrome OS sensor HAL IPC util.
 EAPI=7
 IUSE=+seccomp cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/libiioservice_ipc:= chromeos-base/libmems:= chromeos-base/mems_setup virtual/chromeos-ec-driver-init >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=!chromeos-base/chromeos-accelerometer-init >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/libiioservice_ipc:= chromeos-base/libmems:= chromeos-base/mems_setup virtual/chromeos-ec-driver-init >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=ac4a30c5f37814d415d12f29dfb956d8
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=3d46162526e35e700defe317ad0551e0
diff --git a/metadata/md5-cache/chromeos-base/iioservice_simpleclient-0.0.1-r153 b/metadata/md5-cache/chromeos-base/iioservice_simpleclient-0.0.1-r153
new file mode 100644
index 0000000..e3236d4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/iioservice_simpleclient-0.0.1-r153
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libiioservice_ipc:= chromeos-base/libmems:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=A simple client to test iioservice's mojo IPC for Chromium OS.
+EAPI=7
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_14acd311021ff7b4a6e5a812cf6ef18bab1ede72_ba93b35f6b12686bf293ce79255da511c89278e1_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_14acd311021ff7b4a6e5a812cf6ef18bab1ede72_ba93b35f6b12686bf293ce79255da511c89278e1_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libiioservice_ipc:= chromeos-base/libmems:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r153
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=78b905f41d07359c110c70c59cb84664
diff --git a/metadata/md5-cache/chromeos-base/iioservice_simpleclient-0.0.1-r90 b/metadata/md5-cache/chromeos-base/iioservice_simpleclient-0.0.1-r90
deleted file mode 100644
index 19bc49f..0000000
--- a/metadata/md5-cache/chromeos-base/iioservice_simpleclient-0.0.1-r90
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libiioservice_ipc:= chromeos-base/libmems:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=A simple client to test iioservice's mojo IPC for Chromium OS.
-EAPI=7
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_da73aae6d89c8e69c3740af612610792ce42b1a8_359903647899af99fb1bc9ba9d666b0e78fcb3a8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_da73aae6d89c8e69c3740af612610792ce42b1a8_359903647899af99fb1bc9ba9d666b0e78fcb3a8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libiioservice_ipc:= chromeos-base/libmems:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r90
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ad2e7c77cb86c417940c8e5307748fec
diff --git a/metadata/md5-cache/chromeos-base/iioservice_simpleclient-9999 b/metadata/md5-cache/chromeos-base/iioservice_simpleclient-9999
index 1f77aa9..d8c50ba 100644
--- a/metadata/md5-cache/chromeos-base/iioservice_simpleclient-9999
+++ b/metadata/md5-cache/chromeos-base/iioservice_simpleclient-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/libiioservice_ipc:= chromeos-base/libmems:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7c8f404d4aba5b1e41d98f571c682299
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=60176e3e3a49785575faeb82853b6a5a
diff --git a/metadata/md5-cache/chromeos-base/imageloader-0.0.1-r1604 b/metadata/md5-cache/chromeos-base/imageloader-0.0.1-r1604
deleted file mode 100644
index 8b6cbce..0000000
--- a/metadata/md5-cache/chromeos-base/imageloader-0.0.1-r1604
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/vboot_reference:= dev-libs/openssl:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-fs/lvm2:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Allow mounting verified utility images
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/imageloader/
-IUSE=fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8742508828a5be4d730c2310952b9abe1398d014_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8742508828a5be4d730c2310952b9abe1398d014_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/vboot_reference:= dev-libs/openssl:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-fs/lvm2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r1604
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=6807d2a124bba9d77f658b355941209c
diff --git a/metadata/md5-cache/chromeos-base/imageloader-0.0.1-r1641 b/metadata/md5-cache/chromeos-base/imageloader-0.0.1-r1641
new file mode 100644
index 0000000..f3640a1
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/imageloader-0.0.1-r1641
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/vboot_reference:= chromeos-base/minijail:= dev-libs/openssl:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-fs/lvm2:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Allow mounting verified utility images
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/imageloader/
+IUSE=fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_79b51dbf384f1e7233f895ca42453f7f864c4abd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_79b51dbf384f1e7233f895ca42453f7f864c4abd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/vboot_reference:= chromeos-base/minijail:= dev-libs/openssl:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-fs/lvm2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r1641
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=0e64ca4574e8612c5e3ce1a3ce840ad5
diff --git a/metadata/md5-cache/chromeos-base/imageloader-9999 b/metadata/md5-cache/chromeos-base/imageloader-9999
index a91b055..f2b8fa5 100644
--- a/metadata/md5-cache/chromeos-base/imageloader-9999
+++ b/metadata/md5-cache/chromeos-base/imageloader-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/vboot_reference:= dev-libs/openssl:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-fs/lvm2:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/vboot_reference:= chromeos-base/minijail:= dev-libs/openssl:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-fs/lvm2:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Allow mounting verified utility images
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/imageloader/
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/vboot_reference:= dev-libs/openssl:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-fs/lvm2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/vboot_reference:= chromeos-base/minijail:= dev-libs/openssl:= dev-libs/protobuf:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) sys-fs/lvm2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=fd48aac8a5a94eb0105cb9bd78318b85
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=f6f7d394cbc6b996c7a0de5b91dd2a99
diff --git a/metadata/md5-cache/chromeos-base/imageloader-client-0.0.1-r646 b/metadata/md5-cache/chromeos-base/imageloader-client-0.0.1-r646
deleted file mode 100644
index aa3ab4d..0000000
--- a/metadata/md5-cache/chromeos-base/imageloader-client-0.0.1-r646
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=cros_host? ( chromeos-base/chromeos-dbus-bindings:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=ImageLoader DBus client library for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/imageloader/
-IUSE=cros_host cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8742508828a5be4d730c2310952b9abe1398d014_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8742508828a5be4d730c2310952b9abe1398d014_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/imageloader >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r646
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d74a03bed4d7ade8f801eee06d9e5e12
diff --git a/metadata/md5-cache/chromeos-base/imageloader-client-0.0.1-r681 b/metadata/md5-cache/chromeos-base/imageloader-client-0.0.1-r681
new file mode 100644
index 0000000..4866c65
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/imageloader-client-0.0.1-r681
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=cros_host? ( chromeos-base/chromeos-dbus-bindings:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=ImageLoader DBus client library for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/imageloader/
+IUSE=cros_host cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_79b51dbf384f1e7233f895ca42453f7f864c4abd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_79b51dbf384f1e7233f895ca42453f7f864c4abd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/imageloader >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r681
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8275da28304d03198d9ea0ecf70a120e
diff --git a/metadata/md5-cache/chromeos-base/imageloader-client-9999 b/metadata/md5-cache/chromeos-base/imageloader-client-9999
index 38d5ba7..1f60875 100644
--- a/metadata/md5-cache/chromeos-base/imageloader-client-9999
+++ b/metadata/md5-cache/chromeos-base/imageloader-client-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/imageloader >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5079728e20c3b68891c8366a8d884816
diff --git a/metadata/md5-cache/chromeos-base/infineon-firmware-updater-1.1.2459.0 b/metadata/md5-cache/chromeos-base/infineon-firmware-updater-1.1.2459.0
index d0a3f69..4585ed8 100644
--- a/metadata/md5-cache/chromeos-base/infineon-firmware-updater-1.1.2459.0
+++ b/metadata/md5-cache/chromeos-base/infineon-firmware-updater-1.1.2459.0
@@ -8,5 +8,5 @@
 RDEPEND=dev-libs/openssl:0= tpm_slb9655_v4_31? ( chromeos-base/ec-utils )
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/infineon-firmware-updater-1.1.2459.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=e8c5175622172d491bb3aee256e46406
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=7bf1af2fb304e7fd4f5b9df326f62e40
diff --git a/metadata/md5-cache/chromeos-base/infineon-firmware-updater-1.1.2459.0-r31 b/metadata/md5-cache/chromeos-base/infineon-firmware-updater-1.1.2459.0-r31
deleted file mode 100644
index d0a3f69..0000000
--- a/metadata/md5-cache/chromeos-base/infineon-firmware-updater-1.1.2459.0-r31
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure install prepare test
-DEPEND=dev-libs/openssl:0= tpm_slb9655_v4_31? ( chromeos-base/ec-utils )
-DESCRIPTION=Infineon TPM firmware updater
-EAPI=5
-IUSE=tpm_slb9655_v4_31
-KEYWORDS=*
-LICENSE=BSD-Infineon LICENSE.infineon-firmware-updater-TCG
-RDEPEND=dev-libs/openssl:0= tpm_slb9655_v4_31? ( chromeos-base/ec-utils )
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/infineon-firmware-updater-1.1.2459.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=e8c5175622172d491bb3aee256e46406
diff --git a/metadata/md5-cache/chromeos-base/infineon-firmware-updater-1.1.2459.0-r32 b/metadata/md5-cache/chromeos-base/infineon-firmware-updater-1.1.2459.0-r32
new file mode 100644
index 0000000..4585ed8
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/infineon-firmware-updater-1.1.2459.0-r32
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=dev-libs/openssl:0= tpm_slb9655_v4_31? ( chromeos-base/ec-utils )
+DESCRIPTION=Infineon TPM firmware updater
+EAPI=5
+IUSE=tpm_slb9655_v4_31
+KEYWORDS=*
+LICENSE=BSD-Infineon LICENSE.infineon-firmware-updater-TCG
+RDEPEND=dev-libs/openssl:0= tpm_slb9655_v4_31? ( chromeos-base/ec-utils )
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/infineon-firmware-updater-1.1.2459.0.tar.gz
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=7bf1af2fb304e7fd4f5b9df326f62e40
diff --git a/metadata/md5-cache/chromeos-base/inputcontrol-0.0.1-r115 b/metadata/md5-cache/chromeos-base/inputcontrol-0.0.1-r115
index da0f5e4..6b8b48b 100644
--- a/metadata/md5-cache/chromeos-base/inputcontrol-0.0.1-r115
+++ b/metadata/md5-cache/chromeos-base/inputcontrol-0.0.1-r115
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=app-arch/gzip
 SLOT=0/0.0.1-r115
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=4caed6c4cc2c8992a9051f4e0fadac80
diff --git a/metadata/md5-cache/chromeos-base/inputcontrol-9999 b/metadata/md5-cache/chromeos-base/inputcontrol-9999
index a67f540..99c770a 100644
--- a/metadata/md5-cache/chromeos-base/inputcontrol-9999
+++ b/metadata/md5-cache/chromeos-base/inputcontrol-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=app-arch/gzip
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f865bc34cdc2565e1ab0b85741cebf9e
diff --git a/metadata/md5-cache/chromeos-base/intel-gnalib-0.0.2 b/metadata/md5-cache/chromeos-base/intel-gnalib-0.0.2
index e5c913b..68cf5a7 100644
--- a/metadata/md5-cache/chromeos-base/intel-gnalib-0.0.2
+++ b/metadata/md5-cache/chromeos-base/intel-gnalib-0.0.2
@@ -8,5 +8,5 @@
 LICENSE=LGPL-2.1
 SLOT=0
 SRC_URI=https://github.com/intel/gna/archive/6e42dc7a53fff9d7e644ea48dac70c841c72a14b.tar.gz -> intel-gna-6e42dc7a.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	unpacker	04385b0f181c42fa9c18ec0e31729d1f	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	unpacker	04385b0f181c42fa9c18ec0e31729d1f	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=133506db9f0fdd532f139acecf08b8b3
diff --git a/metadata/md5-cache/chromeos-base/intel-gnalib-0.0.2-r2 b/metadata/md5-cache/chromeos-base/intel-gnalib-0.0.2-r2
index e5c913b..68cf5a7 100644
--- a/metadata/md5-cache/chromeos-base/intel-gnalib-0.0.2-r2
+++ b/metadata/md5-cache/chromeos-base/intel-gnalib-0.0.2-r2
@@ -8,5 +8,5 @@
 LICENSE=LGPL-2.1
 SLOT=0
 SRC_URI=https://github.com/intel/gna/archive/6e42dc7a53fff9d7e644ea48dac70c841c72a14b.tar.gz -> intel-gna-6e42dc7a.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	unpacker	04385b0f181c42fa9c18ec0e31729d1f	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	unpacker	04385b0f181c42fa9c18ec0e31729d1f	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=133506db9f0fdd532f139acecf08b8b3
diff --git a/metadata/md5-cache/chromeos-base/intel-nnhal-0.0.1-r57 b/metadata/md5-cache/chromeos-base/intel-nnhal-0.0.1-r57
deleted file mode 100644
index 36711ab..0000000
--- a/metadata/md5-cache/chromeos-base/intel-nnhal-0.0.1-r57
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=chromeos-base/aosp-frameworks-ml-nn chromeos-base/intel-openvino chromeos-base/intel-gnalib >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Intel NNAPI HAL
-EAPI=7
-HOMEPAGE=https://github.com/intel/nn-hal
-IUSE=vendor-nnhal cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=-* amd64
-LICENSE=BSD-Google
-RDEPEND=chromeos-base/aosp-frameworks-ml-nn chromeos-base/intel-openvino chromeos-base/intel-gnalib >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-RESTRICT=strip
-SLOT=0/0.0.1-r57
-SRC_URI=https://github.com/intel/nn-hal/archive/1fed40d8b7cc73f47d19c488d52ba2d9c4ef6925.tar.gz -> intel-nn-hal-1fed40d8.tar.gz https://github.com/openvinotoolkit/openvino/archive/a4a1bff1cc5a6b22f806adac8845d2806772dacd.tar.xz -> intel-openvino-a4a1bff1.tar.xz
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	unpacker	04385b0f181c42fa9c18ec0e31729d1f
-_md5_=c9f50d77481092c27c5d387589bad23d
diff --git a/metadata/md5-cache/chromeos-base/intel-nnhal-0.0.1-r83 b/metadata/md5-cache/chromeos-base/intel-nnhal-0.0.1-r83
new file mode 100644
index 0000000..9d770c1
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/intel-nnhal-0.0.1-r83
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=chromeos-base/aosp-frameworks-ml-nn chromeos-base/intel-openvino chromeos-base/intel-gnalib >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Intel NNAPI HAL
+EAPI=7
+HOMEPAGE=https://github.com/intel/nn-hal
+IUSE=vendor-nnhal cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=-* amd64
+LICENSE=BSD-Google
+RDEPEND=chromeos-base/aosp-frameworks-ml-nn chromeos-base/intel-openvino chromeos-base/intel-gnalib >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RESTRICT=strip
+SLOT=0/0.0.1-r83
+SRC_URI=https://github.com/intel/nn-hal/archive/311f5d1ce6243751a04eee920e353314875f839e.tar.gz -> intel-nn-hal-311f5d1c.tar.gz https://github.com/openvinotoolkit/openvino/archive/a4a1bff1cc5a6b22f806adac8845d2806772dacd.tar.xz -> intel-openvino-a4a1bff1.tar.xz
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	unpacker	04385b0f181c42fa9c18ec0e31729d1f
+_md5_=125a8f7b387bd901e2948abb8bde4a94
diff --git a/metadata/md5-cache/chromeos-base/intel-nnhal-9999 b/metadata/md5-cache/chromeos-base/intel-nnhal-9999
index de0c83d..29b70e2 100644
--- a/metadata/md5-cache/chromeos-base/intel-nnhal-9999
+++ b/metadata/md5-cache/chromeos-base/intel-nnhal-9999
@@ -9,6 +9,6 @@
 RDEPEND=chromeos-base/aosp-frameworks-ml-nn chromeos-base/intel-openvino chromeos-base/intel-gnalib >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 RESTRICT=strip
 SLOT=0/9999
-SRC_URI=https://github.com/intel/nn-hal/archive/1fed40d8b7cc73f47d19c488d52ba2d9c4ef6925.tar.gz -> intel-nn-hal-1fed40d8.tar.gz https://github.com/openvinotoolkit/openvino/archive/a4a1bff1cc5a6b22f806adac8845d2806772dacd.tar.xz -> intel-openvino-a4a1bff1.tar.xz
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	unpacker	04385b0f181c42fa9c18ec0e31729d1f
-_md5_=f67c9658c510db0c2937bdb0cc658f71
+SRC_URI=https://github.com/intel/nn-hal/archive/311f5d1ce6243751a04eee920e353314875f839e.tar.gz -> intel-nn-hal-311f5d1c.tar.gz https://github.com/openvinotoolkit/openvino/archive/a4a1bff1cc5a6b22f806adac8845d2806772dacd.tar.xz -> intel-openvino-a4a1bff1.tar.xz
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	unpacker	04385b0f181c42fa9c18ec0e31729d1f
+_md5_=ec09de5307a24e7b43194f6b0a01e4ce
diff --git a/metadata/md5-cache/chromeos-base/intel-openvino-0.0.1 b/metadata/md5-cache/chromeos-base/intel-openvino-0.0.1
index 86e11bd..4770040 100644
--- a/metadata/md5-cache/chromeos-base/intel-openvino-0.0.1
+++ b/metadata/md5-cache/chromeos-base/intel-openvino-0.0.1
@@ -10,5 +10,5 @@
 RDEPEND=chromeos-base/intel-gnalib
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/intel-openvino-a4a1bff1.tar.xz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	unpacker	04385b0f181c42fa9c18ec0e31729d1f	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	unpacker	04385b0f181c42fa9c18ec0e31729d1f	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=27eed9f3965b06dff4f5bb58a978d2b4
diff --git a/metadata/md5-cache/chromeos-base/intel-openvino-0.0.1-r6 b/metadata/md5-cache/chromeos-base/intel-openvino-0.0.1-r6
index 86e11bd..4770040 100644
--- a/metadata/md5-cache/chromeos-base/intel-openvino-0.0.1-r6
+++ b/metadata/md5-cache/chromeos-base/intel-openvino-0.0.1-r6
@@ -10,5 +10,5 @@
 RDEPEND=chromeos-base/intel-gnalib
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/intel-openvino-a4a1bff1.tar.xz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	unpacker	04385b0f181c42fa9c18ec0e31729d1f	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	unpacker	04385b0f181c42fa9c18ec0e31729d1f	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=27eed9f3965b06dff4f5bb58a978d2b4
diff --git a/metadata/md5-cache/chromeos-base/ippusb_bridge-0.0.1-r34 b/metadata/md5-cache/chromeos-base/ippusb_bridge-0.0.1-r34
deleted file mode 100644
index 4a2ec75..0000000
--- a/metadata/md5-cache/chromeos-base/ippusb_bridge-0.0.1-r34
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=virtual/libusb:1= >=dev-rust/chunked_transfer-1:= <dev-rust/chunked_transfer-2 >=dev-rust/getopts-0.2.18:= <dev-rust/getopts-0.3 >=dev-rust/httparse-1.3.4:= <dev-rust/httparse-1.4 >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3 >=dev-rust/rusb-0.6.2:= <dev-rust/rusb-0.7 dev-rust/sync:= dev-rust/sys_util:= >=dev-rust/tiny_http-0.8:= <dev-rust/tiny_http-0.9 >=virtual/rust-1.39.0:= sys-apps/baselayout
-DESCRIPTION=A proxy for HTTP traffic over an IPP-USB printer connection
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/ippusb_bridge/
-IUSE=cros_host cros_workon_tree_197db4a2e529e4b31180ffea01f85f4905be77e7 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=virtual/libusb:1= !chromeos-base/ippusb_manager sys-apps/baselayout
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=eaafbd7d4ed068ff26f4d0dc302fbe34
diff --git a/metadata/md5-cache/chromeos-base/ippusb_bridge-0.0.1-r46 b/metadata/md5-cache/chromeos-base/ippusb_bridge-0.0.1-r46
new file mode 100644
index 0000000..65faed4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ippusb_bridge-0.0.1-r46
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=virtual/libusb:1= >=dev-rust/chunked_transfer-1:= <dev-rust/chunked_transfer-2 >=dev-rust/getopts-0.2.18:= <dev-rust/getopts-0.3 >=dev-rust/httparse-1.3.4:= <dev-rust/httparse-1.4 >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3 >=dev-rust/rusb-0.6.2:= <dev-rust/rusb-0.7 dev-rust/sync:= dev-rust/sys_util:= >=dev-rust/tiny_http-0.8:= <dev-rust/tiny_http-0.9 >=virtual/rust-1.39.0:= sys-apps/baselayout
+DESCRIPTION=A proxy for HTTP traffic over an IPP-USB printer connection
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/ippusb_bridge/
+IUSE=cros_host cros_workon_tree_ef7ffd91fabeb69788258445bd7240f10dcd41f5 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=virtual/libusb:1= !chromeos-base/ippusb_manager sys-apps/baselayout
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=45c5d13d95ee1f4f1ab46617f7e5d160
diff --git a/metadata/md5-cache/chromeos-base/ippusb_bridge-9999 b/metadata/md5-cache/chromeos-base/ippusb_bridge-9999
index f3e68e0..559c1a4a 100644
--- a/metadata/md5-cache/chromeos-base/ippusb_bridge-9999
+++ b/metadata/md5-cache/chromeos-base/ippusb_bridge-9999
@@ -11,5 +11,5 @@
 RDEPEND=virtual/libusb:1= !chromeos-base/ippusb_manager sys-apps/baselayout
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=377eeef21f6e2a21847e61aedfb2549e
diff --git a/metadata/md5-cache/chromeos-base/jabra-vold-0.0.1-r16 b/metadata/md5-cache/chromeos-base/jabra-vold-0.0.1-r16
index 51afeea..3530c84 100644
--- a/metadata/md5-cache/chromeos-base/jabra-vold-0.0.1-r16
+++ b/metadata/md5-cache/chromeos-base/jabra-vold-0.0.1-r16
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=>=media-libs/alsa-lib-1.0:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=854b4c30aa5818cf3f08751c239229da
diff --git a/metadata/md5-cache/chromeos-base/jabra-vold-9999 b/metadata/md5-cache/chromeos-base/jabra-vold-9999
index 1b56c64..fae5eaf 100644
--- a/metadata/md5-cache/chromeos-base/jabra-vold-9999
+++ b/metadata/md5-cache/chromeos-base/jabra-vold-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=>=media-libs/alsa-lib-1.0:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=f76df8f69888df756f57f1be3f92acb5
diff --git a/metadata/md5-cache/chromeos-base/kerberos-0.0.1-r350 b/metadata/md5-cache/chromeos-base/kerberos-0.0.1-r350
deleted file mode 100644
index 626a044..0000000
--- a/metadata/md5-cache/chromeos-base/kerberos-0.0.1-r350
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=app-crypt/mit-krb5:= chromeos-base/libbrillo:=[asan?,fuzzer?] chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= dev-libs/protobuf:= sys-apps/dbus:= chromeos-base/protofiles:= chromeos-base/session_manager-client:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Requests and manages Kerberos tickets to enable Kerberos SSO
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/kerberos/
-IUSE=asan fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_c30e2764e005547102b3c9a8051a886d32d11f70_eae0546f4ee5132d4544af4770755eb05f60cba6_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_c30e2764e005547102b3c9a8051a886d32d11f70_eae0546f4ee5132d4544af4770755eb05f60cba6_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=app-crypt/mit-krb5:= chromeos-base/libbrillo:=[asan?,fuzzer?] chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= dev-libs/protobuf:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r350
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=c12e3d13100ad3b87aef4706fb3c5641
diff --git a/metadata/md5-cache/chromeos-base/kerberos-0.0.1-r399 b/metadata/md5-cache/chromeos-base/kerberos-0.0.1-r399
new file mode 100644
index 0000000..8541db7
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/kerberos-0.0.1-r399
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=app-crypt/mit-krb5:= chromeos-base/libbrillo:=[asan?,fuzzer?] chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= dev-libs/protobuf:= sys-apps/dbus:= chromeos-base/protofiles:= chromeos-base/session_manager-client:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Requests and manages Kerberos tickets to enable Kerberos SSO
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/kerberos/
+IUSE=asan fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2d1f1e037ee6be625e7d880ed3f688a9586223e4_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2d1f1e037ee6be625e7d880ed3f688a9586223e4_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=app-crypt/mit-krb5:= chromeos-base/libbrillo:=[asan?,fuzzer?] chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= dev-libs/protobuf:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r399
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=f4094fc2008f3155e0b8e8b39a5df55b
diff --git a/metadata/md5-cache/chromeos-base/kerberos-9999 b/metadata/md5-cache/chromeos-base/kerberos-9999
index d300b82..ed224f7 100644
--- a/metadata/md5-cache/chromeos-base/kerberos-9999
+++ b/metadata/md5-cache/chromeos-base/kerberos-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=app-crypt/mit-krb5:= chromeos-base/libbrillo:=[asan?,fuzzer?] chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= dev-libs/protobuf:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=e77522838316fbe63be996b37ef31ba6
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=408e90bc13831b04eb77eff815efc8a4
diff --git a/metadata/md5-cache/chromeos-base/languagepack-handwriting-es-0.0.1-r1 b/metadata/md5-cache/chromeos-base/languagepack-handwriting-es-0.0.1-r1
new file mode 100644
index 0000000..c43720b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/languagepack-handwriting-es-0.0.1-r1
@@ -0,0 +1,11 @@
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Handwriting Spanish Language Pack for Chromium OS
+EAPI=7
+IUSE=dlc ondevice_handwriting cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=dlc ondevice_handwriting
+SLOT=0/0.0.1-r1
+SRC_URI=gs://chromeos-localmirror/distfiles/languagepack-handwriting-es-20210730.tar.xz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	dlc	4b31053498fd5ebfac3e3b4a1ccc8bb9	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=25b20ffce55493dd34c57379b903609e
diff --git a/metadata/md5-cache/chromeos-base/languagepack-handwriting-es-9999 b/metadata/md5-cache/chromeos-base/languagepack-handwriting-es-9999
new file mode 100644
index 0000000..c523655
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/languagepack-handwriting-es-9999
@@ -0,0 +1,11 @@
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Handwriting Spanish Language Pack for Chromium OS
+EAPI=7
+IUSE=dlc ondevice_handwriting cros_host cros_workon_tree_
+KEYWORDS=~*
+LICENSE=BSD-Google
+REQUIRED_USE=dlc ondevice_handwriting
+SLOT=0/9999
+SRC_URI=gs://chromeos-localmirror/distfiles/languagepack-handwriting-es-20210730.tar.xz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	dlc	4b31053498fd5ebfac3e3b4a1ccc8bb9	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e8541497c0bef2d1ef80c1e670201a24
diff --git a/metadata/md5-cache/chromeos-base/lexmark-fax-pnh-0.0.1-r69 b/metadata/md5-cache/chromeos-base/lexmark-fax-pnh-0.0.1-r69
deleted file mode 100644
index 6528f19..0000000
--- a/metadata/md5-cache/chromeos-base/lexmark-fax-pnh-0.0.1-r69
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=net-print/cups >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=ChromeOS implementation of the Lexmark fax-pnh-filter
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/lexmark-fax-pnh/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_4c04b0ebf35112629d2f6bc7e478514dcb5805cb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_4c04b0ebf35112629d2f6bc7e478514dcb5805cb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=MPL-2.0
-PROPERTIES=live live
-RDEPEND=net-print/cups >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r69
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d85ca3cb8216a23170f191ade82ea7e9
diff --git a/metadata/md5-cache/chromeos-base/lexmark-fax-pnh-0.0.1-r94 b/metadata/md5-cache/chromeos-base/lexmark-fax-pnh-0.0.1-r94
new file mode 100644
index 0000000..3485ad7
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/lexmark-fax-pnh-0.0.1-r94
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=net-print/cups >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=ChromeOS implementation of the Lexmark fax-pnh-filter
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/lexmark-fax-pnh/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_4c04b0ebf35112629d2f6bc7e478514dcb5805cb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_4c04b0ebf35112629d2f6bc7e478514dcb5805cb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=MPL-2.0
+PROPERTIES=live live
+RDEPEND=net-print/cups >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r94
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d891a280ce33b9483523071ab7fa241f
diff --git a/metadata/md5-cache/chromeos-base/lexmark-fax-pnh-9999 b/metadata/md5-cache/chromeos-base/lexmark-fax-pnh-9999
index ffefc3d..4951533 100644
--- a/metadata/md5-cache/chromeos-base/lexmark-fax-pnh-9999
+++ b/metadata/md5-cache/chromeos-base/lexmark-fax-pnh-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=net-print/cups >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3a4953e818a838073997dc0685f073cd
diff --git a/metadata/md5-cache/chromeos-base/libbrillo-0.0.1-r1810 b/metadata/md5-cache/chromeos-base/libbrillo-0.0.1-r1810
deleted file mode 100644
index c91f624..0000000
--- a/metadata/md5-cache/chromeos-base/libbrillo-0.0.1-r1810
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/minijail:= chromeos-base/vboot_reference:= dbus? ( dev-libs/dbus-glib:= ) dev-libs/openssl:= dev-libs/protobuf:= net-libs/grpc:= net-misc/curl:= sys-apps/rootdev:= device_mapper? ( sys-fs/lvm2:=[thin] ) lvm_stateful_partition? ( sys-fs/lvm2:= ) udev? ( virtual/libudev ) >=chromeos-base/protofiles-0.0.45:= dbus? ( chromeos-base/system_api:=[fuzzer?] ) dev-libs/modp_b64:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Base library for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libbrillo/
-IUSE=cros_host +dbus +device_mapper fuzzer -lvm_stateful_partition +udev cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_b2715142a8baa452d041e27303d53d2e097d3113_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_b2715142a8baa452d041e27303d53d2e097d3113_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/minijail:= chromeos-base/vboot_reference:= dbus? ( dev-libs/dbus-glib:= ) dev-libs/openssl:= dev-libs/protobuf:= net-libs/grpc:= net-misc/curl:= sys-apps/rootdev:= device_mapper? ( sys-fs/lvm2:=[thin] ) lvm_stateful_partition? ( sys-fs/lvm2:= ) udev? ( virtual/libudev ) !cros_host? ( chromeos-base/libchromeos-use-flags ) chromeos-base/chromeos-ca-certificates !chromeos-base/libchromeos >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
-SLOT=0/0.0.1-r1810
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=1b64f51faf7c927ed8eff6d52a286f76
diff --git a/metadata/md5-cache/chromeos-base/libbrillo-0.0.1-r1856 b/metadata/md5-cache/chromeos-base/libbrillo-0.0.1-r1856
new file mode 100644
index 0000000..f6f8bf4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libbrillo-0.0.1-r1856
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/minijail:= chromeos-base/vboot_reference:= dbus? ( dev-libs/dbus-glib:= ) dev-libs/openssl:= dev-libs/protobuf:= net-libs/grpc:= net-misc/curl:= sys-apps/rootdev:= device_mapper? ( sys-fs/lvm2:=[thin] ) lvm_stateful_partition? ( sys-fs/lvm2:= ) udev? ( virtual/libudev ) >=chromeos-base/protofiles-0.0.45:= dbus? ( chromeos-base/system_api:=[fuzzer?] ) dev-libs/modp_b64:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Base library for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libbrillo/
+IUSE=cros_host +dbus +device_mapper fuzzer -lvm_stateful_partition +udev cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c4fc3273e0b605bac35fbd917d7a5945aec05902_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c4fc3273e0b605bac35fbd917d7a5945aec05902_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/minijail:= chromeos-base/vboot_reference:= dbus? ( dev-libs/dbus-glib:= ) dev-libs/openssl:= dev-libs/protobuf:= net-libs/grpc:= net-misc/curl:= sys-apps/rootdev:= device_mapper? ( sys-fs/lvm2:=[thin] ) lvm_stateful_partition? ( sys-fs/lvm2:= ) udev? ( virtual/libudev ) !cros_host? ( chromeos-base/libchromeos-use-flags ) chromeos-base/chromeos-ca-certificates !chromeos-base/libchromeos >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
+SLOT=0/0.0.1-r1856
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=70b706bc807577a662b6bf81445481e6
diff --git a/metadata/md5-cache/chromeos-base/libbrillo-9999 b/metadata/md5-cache/chromeos-base/libbrillo-9999
index 1429ca4..54b4a96 100644
--- a/metadata/md5-cache/chromeos-base/libbrillo-9999
+++ b/metadata/md5-cache/chromeos-base/libbrillo-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/minijail:= chromeos-base/vboot_reference:= dbus? ( dev-libs/dbus-glib:= ) dev-libs/openssl:= dev-libs/protobuf:= net-libs/grpc:= net-misc/curl:= sys-apps/rootdev:= device_mapper? ( sys-fs/lvm2:=[thin] ) lvm_stateful_partition? ( sys-fs/lvm2:= ) udev? ( virtual/libudev ) !cros_host? ( chromeos-base/libchromeos-use-flags ) chromeos-base/chromeos-ca-certificates !chromeos-base/libchromeos >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d19ef3c12a730c6556b725aac5a86ba5
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=eb8cb060d886e35fb30cb15b513ed9e9
diff --git a/metadata/md5-cache/chromeos-base/libchrome-0.0.1-r184 b/metadata/md5-cache/chromeos-base/libchrome-0.0.1-r184
deleted file mode 100644
index aa65bdc..0000000
--- a/metadata/md5-cache/chromeos-base/libchrome-0.0.1-r184
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=>=chromeos-base/perfetto-13.0:= >=dev-cpp/absl-20200923-r4:= dev-libs/double-conversion:= dev-libs/glib:2= dev-libs/libevent:= dev-libs/modp_b64:= crypto? ( dev-libs/nss:= dev-libs/openssl:= ) dbus? ( sys-apps/dbus:= dev-libs/protobuf:= ) dev-libs/re2:= !~chromeos-base/libchrome-576279 !chromeos-base/libchrome:576279 !chromeos-base/libchrome:462023 !chromeos-base/libchrome:456626 !chromeos-base/libchrome:395517 dev-cpp/gtest:= cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome base/ and dbus/ libraries extracted for use on Chrome OS
-EAPI=5
-HOMEPAGE=http://dev.chromium.org/chromium-os/packages/libchrome
-IUSE=cros_host +crypto +dbus fuzzer +mojo +timers libchrome_b182295239 cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_3673ac409de15259cda121e9bfa103473a032b99 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_3673ac409de15259cda121e9bfa103473a032b99 compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/perfetto-13.0:= >=dev-cpp/absl-20200923-r4:= dev-libs/double-conversion:= dev-libs/glib:2= dev-libs/libevent:= dev-libs/modp_b64:= crypto? ( dev-libs/nss:= dev-libs/openssl:= ) dbus? ( sys-apps/dbus:= dev-libs/protobuf:= ) dev-libs/re2:= !~chromeos-base/libchrome-576279 !chromeos-base/libchrome:576279 !chromeos-base/libchrome:462023 !chromeos-base/libchrome:456626 !chromeos-base/libchrome:395517 !chromeos-base/libmojo
-REQUIRED_USE=mojo? ( crypto )
-SLOT=0/0.0.1-r184
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=4ceb3e6db36c7c1844ca1e2ada7a13c3
diff --git a/metadata/md5-cache/chromeos-base/libchrome-0.0.1-r230 b/metadata/md5-cache/chromeos-base/libchrome-0.0.1-r230
new file mode 100644
index 0000000..cea087c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libchrome-0.0.1-r230
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=>=chromeos-base/perfetto-13.0:= >=dev-cpp/absl-20200923-r4:= dev-libs/double-conversion:= dev-libs/glib:2= dev-libs/libevent:= dev-libs/modp_b64:= crypto? ( dev-libs/nss:= dev-libs/openssl:= ) dbus? ( sys-apps/dbus:= dev-libs/protobuf:= ) dev-libs/re2:= !~chromeos-base/libchrome-576279 !chromeos-base/libchrome:576279 !chromeos-base/libchrome:462023 !chromeos-base/libchrome:456626 !chromeos-base/libchrome:395517 dev-cpp/gtest:= cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome base/ and dbus/ libraries extracted for use on Chrome OS
+EAPI=5
+HOMEPAGE=http://dev.chromium.org/chromium-os/packages/libchrome
+IUSE=cros_host +crypto +dbus fuzzer +mojo +timers libchrome_b182295239 cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_ab9d79a66f37504daa766993a46c90d926429aea cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_ab9d79a66f37504daa766993a46c90d926429aea compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/perfetto-13.0:= >=dev-cpp/absl-20200923-r4:= dev-libs/double-conversion:= dev-libs/glib:2= dev-libs/libevent:= dev-libs/modp_b64:= crypto? ( dev-libs/nss:= dev-libs/openssl:= ) dbus? ( sys-apps/dbus:= dev-libs/protobuf:= ) dev-libs/re2:= !~chromeos-base/libchrome-576279 !chromeos-base/libchrome:576279 !chromeos-base/libchrome:462023 !chromeos-base/libchrome:456626 !chromeos-base/libchrome:395517 !chromeos-base/libmojo
+REQUIRED_USE=mojo? ( crypto )
+SLOT=0/0.0.1-r230
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=8d5c3d21fc0fb595f73c32510cd63722
diff --git a/metadata/md5-cache/chromeos-base/libchrome-9999 b/metadata/md5-cache/chromeos-base/libchrome-9999
index 901b11d..f77b138 100644
--- a/metadata/md5-cache/chromeos-base/libchrome-9999
+++ b/metadata/md5-cache/chromeos-base/libchrome-9999
@@ -10,5 +10,5 @@
 RDEPEND=>=chromeos-base/perfetto-13.0:= >=dev-cpp/absl-20200923-r4:= dev-libs/double-conversion:= dev-libs/glib:2= dev-libs/libevent:= dev-libs/modp_b64:= crypto? ( dev-libs/nss:= dev-libs/openssl:= ) dbus? ( sys-apps/dbus:= dev-libs/protobuf:= ) dev-libs/re2:= !~chromeos-base/libchrome-576279 !chromeos-base/libchrome:576279 !chromeos-base/libchrome:462023 !chromeos-base/libchrome:456626 !chromeos-base/libchrome:395517 !chromeos-base/libmojo
 REQUIRED_USE=mojo? ( crypto )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=fa9c901b22f1bd8d9a3e341f938f7cad
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=0898e495cc84b3f27353522185f38276
diff --git a/metadata/md5-cache/chromeos-base/libchromeos-ui-0.0.1-r1807 b/metadata/md5-cache/chromeos-base/libchromeos-ui-0.0.1-r1807
deleted file mode 100644
index 2f30f161..0000000
--- a/metadata/md5-cache/chromeos-base/libchromeos-ui-0.0.1-r1807
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Library used to start Chromium-based UIs
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libchromeos-ui/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9b0fa02babfde71d911b22f3db40b34a99639c9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9b0fa02babfde71d911b22f3db40b34a99639c9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/bootstat >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r1807
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b4995d909e9cd93e811a41faaf0d68c5
diff --git a/metadata/md5-cache/chromeos-base/libchromeos-ui-0.0.1-r1832 b/metadata/md5-cache/chromeos-base/libchromeos-ui-0.0.1-r1832
new file mode 100644
index 0000000..59e9136
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libchromeos-ui-0.0.1-r1832
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Library used to start Chromium-based UIs
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libchromeos-ui/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_a9b0fa02babfde71d911b22f3db40b34a99639c9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_a9b0fa02babfde71d911b22f3db40b34a99639c9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/bootstat >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r1832
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a77763b97689854bc115a015d7c9f0f5
diff --git a/metadata/md5-cache/chromeos-base/libchromeos-ui-9999 b/metadata/md5-cache/chromeos-base/libchromeos-ui-9999
index 0457d11..b54dcc7 100644
--- a/metadata/md5-cache/chromeos-base/libchromeos-ui-9999
+++ b/metadata/md5-cache/chromeos-base/libchromeos-ui-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/bootstat >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=a0d4d73bf8bfc237f9af4fea2a095ccb
diff --git a/metadata/md5-cache/chromeos-base/libchromeos-use-flags-1-r28 b/metadata/md5-cache/chromeos-base/libchromeos-use-flags-1-r28
deleted file mode 100644
index 263440a..0000000
--- a/metadata/md5-cache/chromeos-base/libchromeos-use-flags-1-r28
+++ /dev/null
@@ -1,11 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-DESCRIPTION=Text file listing USE flags for chromeos-base/libchromeos
-EAPI=7
-IUSE=allow_consumer_kiosk arc arc_adb_sideloading arc_force_2x_scaling arc_native_bridge_64bit_support_experiment arc_transition_m_to_n arc_uses_cros_video_decoder arcpp arcvm asan background_blur big_little biod borealis_host cfm_enabled_device cheets clear_fast_ink_buffer compupdates diagnostics disable_background_blur disable_cros_video_decoder disable_explicit_dma_fences disable_native_gpu_memory_buffers disable_instant_tethering disable_spectre_variant2_mitigation drm_atomic edge_touch_filtering enable_dsp_hotword enable_heuristic_palm_detection_filter enable_neural_palm_detection_filter force_breakpad gpu_sandbox_allow_sysv_shm gpu_sandbox_failures_not_fatal gpu_sandbox_start_early houdini houdini64 kvm_guest kvm_host kvm_transition lacros legacy_keyboard legacy_power_button moblab native_gpu_memory_buffers natural_scroll_default ndk_translation ndk_translation64 neon ondevice_document_scanner ondevice_handwriting ondevice_handwriting_dlc ondevice_speech oobe_skip_postlogin oobe_skip_to_login opengles os_install_service passive_event_listeners pita pita-camera pita-microphone rialto scheduler_configuration_performance screenshare_sw_codec set_hw_overlay_strategy_none shelf-hotseat smartdim tablet_form_factor touch_centric_device touchscreen_wakeup touchview video_capture_use_gpu_memory_buffer virtio_gpu webui-tab-strip wilco cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=53c2e21463e933a16391815e33dbfdac
diff --git a/metadata/md5-cache/chromeos-base/libchromeos-use-flags-1-r29 b/metadata/md5-cache/chromeos-base/libchromeos-use-flags-1-r29
new file mode 100644
index 0000000..31f579a
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libchromeos-use-flags-1-r29
@@ -0,0 +1,11 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Text file listing USE flags for chromeos-base/libchromeos
+EAPI=7
+IUSE=allow_consumer_kiosk arc arc_adb_sideloading arc_force_2x_scaling arc_native_bridge_64bit_support_experiment arc_transition_m_to_n arc_uses_cros_video_decoder arcpp arcvm asan background_blur big_little biod borealis_host cfm_enabled_device cheets clear_fast_ink_buffer compupdates diagnostics disable_background_blur disable_cros_video_decoder disable_explicit_dma_fences disable_native_gpu_memory_buffers disable_instant_tethering disable_spectre_variant2_mitigation drm_atomic edge_touch_filtering enable_dsp_hotword enable_heuristic_palm_detection_filter enable_neural_palm_detection_filter force_breakpad gpu_sandbox_allow_sysv_shm gpu_sandbox_failures_not_fatal gpu_sandbox_start_early houdini houdini64 houdini_dlc kvm_guest kvm_host kvm_transition lacros legacy_keyboard legacy_power_button moblab native_gpu_memory_buffers natural_scroll_default ndk_translation ndk_translation64 neon ondevice_document_scanner ondevice_handwriting ondevice_handwriting_dlc ondevice_speech oobe_skip_postlogin oobe_skip_to_login opengles os_install_service passive_event_listeners pita pita-camera pita-microphone rialto scheduler_configuration_performance screenshare_sw_codec set_hw_overlay_strategy_none shelf-hotseat smartdim tablet_form_factor touch_centric_device touchscreen_wakeup touchview video_capture_use_gpu_memory_buffer virtio_gpu webui-tab-strip wilco cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=50e0bec3cf80793706822238cd60e49e
diff --git a/metadata/md5-cache/chromeos-base/libchromeos-use-flags-9999 b/metadata/md5-cache/chromeos-base/libchromeos-use-flags-9999
index be96927..a8ec411 100644
--- a/metadata/md5-cache/chromeos-base/libchromeos-use-flags-9999
+++ b/metadata/md5-cache/chromeos-base/libchromeos-use-flags-9999
@@ -2,10 +2,10 @@
 DEFINED_PHASES=info install setup unpack
 DESCRIPTION=Text file listing USE flags for chromeos-base/libchromeos
 EAPI=7
-IUSE=allow_consumer_kiosk arc arc_adb_sideloading arc_force_2x_scaling arc_native_bridge_64bit_support_experiment arc_transition_m_to_n arc_uses_cros_video_decoder arcpp arcvm asan background_blur big_little biod borealis_host cfm_enabled_device cheets clear_fast_ink_buffer compupdates diagnostics disable_background_blur disable_cros_video_decoder disable_explicit_dma_fences disable_native_gpu_memory_buffers disable_instant_tethering disable_spectre_variant2_mitigation drm_atomic edge_touch_filtering enable_dsp_hotword enable_heuristic_palm_detection_filter enable_neural_palm_detection_filter force_breakpad gpu_sandbox_allow_sysv_shm gpu_sandbox_failures_not_fatal gpu_sandbox_start_early houdini houdini64 kvm_guest kvm_host kvm_transition lacros legacy_keyboard legacy_power_button moblab native_gpu_memory_buffers natural_scroll_default ndk_translation ndk_translation64 neon ondevice_document_scanner ondevice_handwriting ondevice_handwriting_dlc ondevice_speech oobe_skip_postlogin oobe_skip_to_login opengles os_install_service passive_event_listeners pita pita-camera pita-microphone rialto scheduler_configuration_performance screenshare_sw_codec set_hw_overlay_strategy_none shelf-hotseat smartdim tablet_form_factor touch_centric_device touchscreen_wakeup touchview video_capture_use_gpu_memory_buffer virtio_gpu webui-tab-strip wilco cros_host cros_workon_tree_
+IUSE=allow_consumer_kiosk arc arc_adb_sideloading arc_force_2x_scaling arc_native_bridge_64bit_support_experiment arc_transition_m_to_n arc_uses_cros_video_decoder arcpp arcvm asan background_blur big_little biod borealis_host cfm_enabled_device cheets clear_fast_ink_buffer compupdates diagnostics disable_background_blur disable_cros_video_decoder disable_explicit_dma_fences disable_native_gpu_memory_buffers disable_instant_tethering disable_spectre_variant2_mitigation drm_atomic edge_touch_filtering enable_dsp_hotword enable_heuristic_palm_detection_filter enable_neural_palm_detection_filter force_breakpad gpu_sandbox_allow_sysv_shm gpu_sandbox_failures_not_fatal gpu_sandbox_start_early houdini houdini64 houdini_dlc kvm_guest kvm_host kvm_transition lacros legacy_keyboard legacy_power_button moblab native_gpu_memory_buffers natural_scroll_default ndk_translation ndk_translation64 neon ondevice_document_scanner ondevice_handwriting ondevice_handwriting_dlc ondevice_speech oobe_skip_postlogin oobe_skip_to_login opengles os_install_service passive_event_listeners pita pita-camera pita-microphone rialto scheduler_configuration_performance screenshare_sw_codec set_hw_overlay_strategy_none shelf-hotseat smartdim tablet_form_factor touch_centric_device touchscreen_wakeup touchview video_capture_use_gpu_memory_buffer virtio_gpu webui-tab-strip wilco cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4d0f357d014a27d6e6365adce9883dae
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=543398090b501459d1ae4b38111c2c20
diff --git a/metadata/md5-cache/chromeos-base/libcontainer-0.0.1-r1570 b/metadata/md5-cache/chromeos-base/libcontainer-0.0.1-r1570
deleted file mode 100644
index d325c51..0000000
--- a/metadata/md5-cache/chromeos-base/libcontainer-0.0.1-r1570
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/minijail:= device-mapper? ( sys-fs/lvm2:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Library to run jailed containers on Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libcontainer/
-IUSE=+device-mapper cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a2ab6048637d439be995dd4cdc3ef91d0291fb42_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a2ab6048637d439be995dd4cdc3ef91d0291fb42_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/minijail:= device-mapper? ( sys-fs/lvm2:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r1570
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=f0e5a15fc370279ce716b44b15e53418
diff --git a/metadata/md5-cache/chromeos-base/libcontainer-0.0.1-r1599 b/metadata/md5-cache/chromeos-base/libcontainer-0.0.1-r1599
new file mode 100644
index 0000000..f542726
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libcontainer-0.0.1-r1599
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/minijail:= device-mapper? ( sys-fs/lvm2:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Library to run jailed containers on Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libcontainer/
+IUSE=+device-mapper cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_26b91e41e669cca59d25dedeb6fb18c470d60c4b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_26b91e41e669cca59d25dedeb6fb18c470d60c4b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/minijail:= device-mapper? ( sys-fs/lvm2:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r1599
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=37a5935f4d88aca01b509d3868da25c5
diff --git a/metadata/md5-cache/chromeos-base/libcontainer-9999 b/metadata/md5-cache/chromeos-base/libcontainer-9999
index 61d1edb..8fcb57b 100644
--- a/metadata/md5-cache/chromeos-base/libcontainer-9999
+++ b/metadata/md5-cache/chromeos-base/libcontainer-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/minijail:= device-mapper? ( sys-fs/lvm2:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=9cb1ac9242c8a0449c98b0b5becb711d
diff --git a/metadata/md5-cache/chromeos-base/libec-0.0.1-r36 b/metadata/md5-cache/chromeos-base/libec-0.0.1-r36
deleted file mode 100644
index 0f11289..0000000
--- a/metadata/md5-cache/chromeos-base/libec-0.0.1-r36
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/chromeos-ec-headers:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Embedded Controller Library for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/libec
-IUSE=cros_host cros_workon_tree_b1f4ad4ab3cbb07f7d6d2756b7c06a950376ea88_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_667180eb5db7eb65a292552b106b32aa5881c9eb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_b1f4ad4ab3cbb07f7d6d2756b7c06a950376ea88_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_667180eb5db7eb65a292552b106b32aa5881c9eb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r36
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=89a8c178f7895ae05397d4d2885f2956
diff --git a/metadata/md5-cache/chromeos-base/libec-0.0.1-r87 b/metadata/md5-cache/chromeos-base/libec-0.0.1-r87
new file mode 100644
index 0000000..9f6dc95
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libec-0.0.1-r87
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/chromeos-ec-headers:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Embedded Controller Library for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/libec
+IUSE=cros_host cros_workon_tree_f109c58de01a51af0998c1f59270c5788c2b061d_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ad1fd2e4d4c9cb42d85d97fe12f958890ad6ab14_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_f109c58de01a51af0998c1f59270c5788c2b061d_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ad1fd2e4d4c9cb42d85d97fe12f958890ad6ab14_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r87
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6db779f6a535e292ddd22970b6b3b68a
diff --git a/metadata/md5-cache/chromeos-base/libec-9999 b/metadata/md5-cache/chromeos-base/libec-9999
index 0ac412b..3cfdb26 100644
--- a/metadata/md5-cache/chromeos-base/libec-9999
+++ b/metadata/md5-cache/chromeos-base/libec-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=a83a7bdf1058e5de5ae530d3a1d3bc93
diff --git a/metadata/md5-cache/chromeos-base/libevdev-0.0.1-r83 b/metadata/md5-cache/chromeos-base/libevdev-0.0.1-r83
index 3194a27..95c15a7 100644
--- a/metadata/md5-cache/chromeos-base/libevdev-0.0.1-r83
+++ b/metadata/md5-cache/chromeos-base/libevdev-0.0.1-r83
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/1
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=60c66c19c5c1abc7a6196ced4c74c36f
diff --git a/metadata/md5-cache/chromeos-base/libevdev-9999 b/metadata/md5-cache/chromeos-base/libevdev-9999
index 84e4b67..a392329 100644
--- a/metadata/md5-cache/chromeos-base/libevdev-9999
+++ b/metadata/md5-cache/chromeos-base/libevdev-9999
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/1
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=34f96617dbd4a335e7ede20103661343
diff --git a/metadata/md5-cache/chromeos-base/libhwsec-0.0.1-r179 b/metadata/md5-cache/chromeos-base/libhwsec-0.0.1-r179
deleted file mode 100644
index 792753f..0000000
--- a/metadata/md5-cache/chromeos-base/libhwsec-0.0.1-r179
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libhwsec-foundation dev-libs/openssl:0= !tpm2? ( app-crypt/trousers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Crypto and utility functions used in TPM related daemons.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libhwsec/
-IUSE=test tpm2 cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_0b612d0f1e8dbe59a5549b476f1e681e0b7fe94e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_0b612d0f1e8dbe59a5549b476f1e681e0b7fe94e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libhwsec-foundation dev-libs/openssl:0= !tpm2? ( app-crypt/trousers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r179
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b9479fdeb80ce14285f007e7cdab387a
diff --git a/metadata/md5-cache/chromeos-base/libhwsec-0.0.1-r243 b/metadata/md5-cache/chromeos-base/libhwsec-0.0.1-r243
new file mode 100644
index 0000000..febb0bc
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libhwsec-0.0.1-r243
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libhwsec-foundation dev-libs/openssl:0= tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) fuzzer? ( app-crypt/trousers:= chromeos-base/trunks:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Crypto and utility functions used in TPM related daemons.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libhwsec/
+IUSE=test fuzzer tpm tpm2 tpm_dynamic cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libhwsec-foundation dev-libs/openssl:0= tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) fuzzer? ( app-crypt/trousers:= chromeos-base/trunks:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r243
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9cb4b76f69bf1310b1038bea2466f1a8
diff --git a/metadata/md5-cache/chromeos-base/libhwsec-9999 b/metadata/md5-cache/chromeos-base/libhwsec-9999
index 2a07814..4bdcc82 100644
--- a/metadata/md5-cache/chromeos-base/libhwsec-9999
+++ b/metadata/md5-cache/chromeos-base/libhwsec-9999
@@ -1,14 +1,14 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libhwsec-foundation dev-libs/openssl:0= !tpm2? ( app-crypt/trousers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=chromeos-base/libhwsec-foundation dev-libs/openssl:0= tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) fuzzer? ( app-crypt/trousers:= chromeos-base/trunks:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Crypto and utility functions used in TPM related daemons.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libhwsec/
-IUSE=test tpm2 cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=test fuzzer tpm tpm2 tpm_dynamic cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/libhwsec-foundation dev-libs/openssl:0= !tpm2? ( app-crypt/trousers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=chromeos-base/libhwsec-foundation dev-libs/openssl:0= tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) fuzzer? ( app-crypt/trousers:= chromeos-base/trunks:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=0d8b745f71a5fd1804d17d1c121a20c8
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d2817887c9f8d43b146fd67d49b33021
diff --git a/metadata/md5-cache/chromeos-base/libhwsec-foundation-0.0.1-r113 b/metadata/md5-cache/chromeos-base/libhwsec-foundation-0.0.1-r113
new file mode 100644
index 0000000..b417c76
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libhwsec-foundation-0.0.1-r113
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Crypto and utility functions used in TPM related daemons.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libhwsec-foundation/
+IUSE=test tpm tpm_dynamic tpm2 cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152 chromeos-base/system_api chromeos-base/tpm_manager-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r113
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3c81dd4a7cbaced31418efb4cf3ae018
diff --git a/metadata/md5-cache/chromeos-base/libhwsec-foundation-0.0.1-r51 b/metadata/md5-cache/chromeos-base/libhwsec-foundation-0.0.1-r51
deleted file mode 100644
index a3e8650..0000000
--- a/metadata/md5-cache/chromeos-base/libhwsec-foundation-0.0.1-r51
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Crypto and utility functions used in TPM related daemons.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libhwsec-foundation/
-IUSE=test tpm2 cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_0b612d0f1e8dbe59a5549b476f1e681e0b7fe94e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_0b612d0f1e8dbe59a5549b476f1e681e0b7fe94e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152 chromeos-base/system_api chromeos-base/tpm_manager-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r51
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=161d0b50707d66f33cf5041f45a95d6b
diff --git a/metadata/md5-cache/chromeos-base/libhwsec-foundation-9999 b/metadata/md5-cache/chromeos-base/libhwsec-foundation-9999
index ad4c629..712ee19 100644
--- a/metadata/md5-cache/chromeos-base/libhwsec-foundation-9999
+++ b/metadata/md5-cache/chromeos-base/libhwsec-foundation-9999
@@ -4,11 +4,11 @@
 DESCRIPTION=Crypto and utility functions used in TPM related daemons.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libhwsec-foundation/
-IUSE=test tpm2 cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=test tpm tpm_dynamic tpm2 cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/metrics-0.0.1-r3152 chromeos-base/system_api chromeos-base/tpm_manager-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=cde2e824923e4678cef7a85ef5a8a3d6
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4970d5a5037c7b4af546f32a7fa10e7a
diff --git a/metadata/md5-cache/chromeos-base/libiioservice_ipc-0.0.1-r139 b/metadata/md5-cache/chromeos-base/libiioservice_ipc-0.0.1-r139
deleted file mode 100644
index be19f3c..0000000
--- a/metadata/md5-cache/chromeos-base/libiioservice_ipc-0.0.1-r139
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS sensor HAL IPC util.
-EAPI=7
-IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_da73aae6d89c8e69c3740af612610792ce42b1a8_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_da73aae6d89c8e69c3740af612610792ce42b1a8_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r139
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=59516cc8afb5fda0b30c2c2700e028b1
diff --git a/metadata/md5-cache/chromeos-base/libiioservice_ipc-0.0.1-r201 b/metadata/md5-cache/chromeos-base/libiioservice_ipc-0.0.1-r201
new file mode 100644
index 0000000..629eb81
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libiioservice_ipc-0.0.1-r201
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS sensor HAL IPC util.
+EAPI=7
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_14acd311021ff7b4a6e5a812cf6ef18bab1ede72_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_14acd311021ff7b4a6e5a812cf6ef18bab1ede72_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r201
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=167c54d46cd74054ae2e209063287f7a
diff --git a/metadata/md5-cache/chromeos-base/libiioservice_ipc-9999 b/metadata/md5-cache/chromeos-base/libiioservice_ipc-9999
index 529c414..19bb17a 100644
--- a/metadata/md5-cache/chromeos-base/libiioservice_ipc-9999
+++ b/metadata/md5-cache/chromeos-base/libiioservice_ipc-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=07d8a59e15159a40f26b20ee43c42f1c
diff --git a/metadata/md5-cache/chromeos-base/libipp-0.0.1-r153 b/metadata/md5-cache/chromeos-base/libipp-0.0.1-r153
deleted file mode 100644
index b3c1725..0000000
--- a/metadata/md5-cache/chromeos-base/libipp-0.0.1-r153
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=The library for building and parsing IPP (Internet Printing Protocol) frames.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libipp/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_446ac148c9c5710eb395d8c044f4e44b8bf4361a_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_446ac148c9c5710eb395d8c044f4e44b8bf4361a_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r153
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=efbec616adc27b79ef4aacb9a4dc7825
diff --git a/metadata/md5-cache/chromeos-base/libipp-0.0.1-r181 b/metadata/md5-cache/chromeos-base/libipp-0.0.1-r181
new file mode 100644
index 0000000..24e6e96
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libipp-0.0.1-r181
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=The library for building and parsing IPP (Internet Printing Protocol) frames.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libipp/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_72c56421c422f1abb651484e3851e5eaee5edb06_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_72c56421c422f1abb651484e3851e5eaee5edb06_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r181
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d2735854e21ad987d072bf551c099244
diff --git a/metadata/md5-cache/chromeos-base/libipp-9999 b/metadata/md5-cache/chromeos-base/libipp-9999
index da8e8e7..4aa69e3 100644
--- a/metadata/md5-cache/chromeos-base/libipp-9999
+++ b/metadata/md5-cache/chromeos-base/libipp-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ed10ee522e9d803f424361a92ca2fd49
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4c98c8fcc299b640fb48311546a83d90
diff --git a/metadata/md5-cache/chromeos-base/libmems-0.0.1-r192 b/metadata/md5-cache/chromeos-base/libmems-0.0.1-r192
deleted file mode 100644
index 754b15b..0000000
--- a/metadata/md5-cache/chromeos-base/libmems-0.0.1-r192
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=net-libs/libiio:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=MEMS support library for Chromium OS.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libmems
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_359903647899af99fb1bc9ba9d666b0e78fcb3a8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_359903647899af99fb1bc9ba9d666b0e78fcb3a8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=net-libs/libiio:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r192
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=69a0ce4c715e6a2ab64c00048d570020
diff --git a/metadata/md5-cache/chromeos-base/libmems-0.0.1-r220 b/metadata/md5-cache/chromeos-base/libmems-0.0.1-r220
new file mode 100644
index 0000000..c0ccf8e
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libmems-0.0.1-r220
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=net-libs/libiio:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=MEMS support library for Chromium OS.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libmems
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ba93b35f6b12686bf293ce79255da511c89278e1_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ba93b35f6b12686bf293ce79255da511c89278e1_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=net-libs/libiio:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r220
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a68b834c6bb11e6863aded40c6ab52f8
diff --git a/metadata/md5-cache/chromeos-base/libmems-9999 b/metadata/md5-cache/chromeos-base/libmems-9999
index d519fef..2c74f43 100644
--- a/metadata/md5-cache/chromeos-base/libmems-9999
+++ b/metadata/md5-cache/chromeos-base/libmems-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=net-libs/libiio:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ca04e59bee91b9859d9a0ff5208802e5
diff --git a/metadata/md5-cache/chromeos-base/libpasswordprovider-0.0.1-r443 b/metadata/md5-cache/chromeos-base/libpasswordprovider-0.0.1-r443
deleted file mode 100644
index 0b555c5..0000000
--- a/metadata/md5-cache/chromeos-base/libpasswordprovider-0.0.1-r443
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=sys-apps/keyutils:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Library for storing and retrieving user password
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libpasswordprovider
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_eae0546f4ee5132d4544af4770755eb05f60cba6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_eae0546f4ee5132d4544af4770755eb05f60cba6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=sys-apps/keyutils:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r443
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d93a7f62f4a42df599672aebd99d4a5a
diff --git a/metadata/md5-cache/chromeos-base/libpasswordprovider-0.0.1-r470 b/metadata/md5-cache/chromeos-base/libpasswordprovider-0.0.1-r470
new file mode 100644
index 0000000..22fb2a8
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libpasswordprovider-0.0.1-r470
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=sys-apps/keyutils:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Library for storing and retrieving user password
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libpasswordprovider
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=sys-apps/keyutils:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r470
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7c1d76cb78ac03424e5d629d5030b419
diff --git a/metadata/md5-cache/chromeos-base/libpasswordprovider-9999 b/metadata/md5-cache/chromeos-base/libpasswordprovider-9999
index 793beff..565830e 100644
--- a/metadata/md5-cache/chromeos-base/libpasswordprovider-9999
+++ b/metadata/md5-cache/chromeos-base/libpasswordprovider-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=sys-apps/keyutils:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f82fb4c8f5dcc6b6270c3d41483b0478
diff --git a/metadata/md5-cache/chromeos-base/libsirenia-0.1.0-r39 b/metadata/md5-cache/chromeos-base/libsirenia-0.1.0-r39
deleted file mode 100644
index 05ab115..0000000
--- a/metadata/md5-cache/chromeos-base/libsirenia-0.1.0-r39
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/sirenia-rpc-macros:= =dev-rust/chrono-0.4*:= >=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2 =dev-rust/getopts-0.2*:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3 dev-rust/libchromeos:= dev-rust/minijail:= >=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0 >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:=
-DESCRIPTION=The support library for the ManaTEE runtime environment.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/libsirenia
-IUSE=cros_host cros_workon_tree_41f3dce4c2ba5bc9fd7972e4ebb6cc36beaa8147 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/sirenia-rpc-macros:= =dev-rust/chrono-0.4*:= >=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2 =dev-rust/getopts-0.2*:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3 dev-rust/libchromeos:= dev-rust/minijail:= >=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0 >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r39
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=0f53ed0fd74004848050ead8f38999d9
diff --git a/metadata/md5-cache/chromeos-base/libsirenia-0.1.0-r52 b/metadata/md5-cache/chromeos-base/libsirenia-0.1.0-r52
new file mode 100644
index 0000000..2b6480c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libsirenia-0.1.0-r52
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=chromeos-base/sirenia-rpc-macros:= =dev-rust/chrono-0.4*:= =dev-rust/flexbuffers-2*:= =dev-rust/getopts-0.2*:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3 dev-rust/libchromeos:= >=dev-rust/minijail-0.2.3:= >=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0 >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=The support library for the ManaTEE runtime environment.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/libsirenia
+IUSE=cros_host cros_workon_tree_8fd5f11a121272b940043536aa8b676406d2f43a cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/sirenia-rpc-macros:= =dev-rust/chrono-0.4*:= =dev-rust/flexbuffers-2*:= =dev-rust/getopts-0.2*:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3 dev-rust/libchromeos:= >=dev-rust/minijail-0.2.3:= >=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0 >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r52
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=cff40cab1e4bc834039bf531d91aef63
diff --git a/metadata/md5-cache/chromeos-base/libsirenia-9999 b/metadata/md5-cache/chromeos-base/libsirenia-9999
index f70f77c..cf425fe 100644
--- a/metadata/md5-cache/chromeos-base/libsirenia-9999
+++ b/metadata/md5-cache/chromeos-base/libsirenia-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/sirenia-rpc-macros:= =dev-rust/chrono-0.4*:= >=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2 =dev-rust/getopts-0.2*:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3 dev-rust/libchromeos:= dev-rust/minijail:= >=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0 >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:=
+DEPEND=chromeos-base/sirenia-rpc-macros:= =dev-rust/chrono-0.4*:= =dev-rust/flexbuffers-2*:= =dev-rust/getopts-0.2*:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3 dev-rust/libchromeos:= >=dev-rust/minijail-0.2.3:= >=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0 >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:=
 DESCRIPTION=The support library for the ManaTEE runtime environment.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/libsirenia
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=chromeos-base/sirenia-rpc-macros:= =dev-rust/chrono-0.4*:= >=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2 =dev-rust/getopts-0.2*:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3 dev-rust/libchromeos:= dev-rust/minijail:= >=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0 >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+RDEPEND=chromeos-base/sirenia-rpc-macros:= =dev-rust/chrono-0.4*:= =dev-rust/flexbuffers-2*:= =dev-rust/getopts-0.2*:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3 dev-rust/libchromeos:= >=dev-rust/minijail-0.2.3:= >=dev-rust/openssl-0.10.25:= <dev-rust/openssl-0.11.0 >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5bf55caae321f4f08c22898ac4a79245
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7508350bb445e876b181f28a501117eb
diff --git a/metadata/md5-cache/chromeos-base/libtpmcrypto-0.0.1-r325 b/metadata/md5-cache/chromeos-base/libtpmcrypto-0.0.1-r325
deleted file mode 100644
index 7bb791e..0000000
--- a/metadata/md5-cache/chromeos-base/libtpmcrypto-0.0.1-r325
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=tpm2? ( chromeos-base/trunks:= ) !tpm2? ( app-crypt/trousers:= ) dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Encrypts/Decrypts data to a serialized proto with TPM sealed key.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libtpmcrypto/
-IUSE=tpm tpm2 cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_5d77de997847c22cb783cc11cd0fab4f6fae59f0_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_5d77de997847c22cb783cc11cd0fab4f6fae59f0_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=tpm2? ( chromeos-base/trunks:= ) !tpm2? ( app-crypt/trousers:= ) dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=tpm2? ( !tpm )
-SLOT=0/0.0.1-r325
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=aa8fdc10de62778f4841a00b3b16ea1c
diff --git a/metadata/md5-cache/chromeos-base/libtpmcrypto-0.0.1-r383 b/metadata/md5-cache/chromeos-base/libtpmcrypto-0.0.1-r383
new file mode 100644
index 0000000..197b6ff
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libtpmcrypto-0.0.1-r383
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) chromeos-base/libhwsec-foundation:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Encrypts/Decrypts data to a serialized proto with TPM sealed key.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libtpmcrypto/
+IUSE=tpm tpm_dynamic tpm2 cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_26e3713c1f2916a87c54f5aa50da42d121f1a5a3_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_26e3713c1f2916a87c54f5aa50da42d121f1a5a3_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) chromeos-base/libhwsec-foundation:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
+SLOT=0/0.0.1-r383
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2d77da2ba74f008a603e1002b8db520b
diff --git a/metadata/md5-cache/chromeos-base/libtpmcrypto-9999 b/metadata/md5-cache/chromeos-base/libtpmcrypto-9999
index caca645..b6888ae 100644
--- a/metadata/md5-cache/chromeos-base/libtpmcrypto-9999
+++ b/metadata/md5-cache/chromeos-base/libtpmcrypto-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=tpm2? ( chromeos-base/trunks:= ) !tpm2? ( app-crypt/trousers:= ) dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) chromeos-base/libhwsec-foundation:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Encrypts/Decrypts data to a serialized proto with TPM sealed key.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/libtpmcrypto/
-IUSE=tpm tpm2 cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=tpm tpm_dynamic tpm2 cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=tpm2? ( chromeos-base/trunks:= ) !tpm2? ( app-crypt/trousers:= ) dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=tpm2? ( !tpm )
+RDEPEND=tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) chromeos-base/libhwsec-foundation:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3340d7be0a182b0b70559a228501b705
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e7bf9d885e626542b0289a98d23d333d
diff --git a/metadata/md5-cache/chromeos-base/libva-fake-driver-0.0.1-r1 b/metadata/md5-cache/chromeos-base/libva-fake-driver-0.0.1-r1
index f8e89a2..bb68774 100644
--- a/metadata/md5-cache/chromeos-base/libva-fake-driver-0.0.1-r1
+++ b/metadata/md5-cache/chromeos-base/libva-fake-driver-0.0.1-r1
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=>=x11-libs/libva-2.6.0:=
 SLOT=0/0.0.1-r1
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1e4aaee393e3bdf9546f67c2ebe156a4
diff --git a/metadata/md5-cache/chromeos-base/libva-fake-driver-9999 b/metadata/md5-cache/chromeos-base/libva-fake-driver-9999
index a7a4204..a0e11ef 100644
--- a/metadata/md5-cache/chromeos-base/libva-fake-driver-9999
+++ b/metadata/md5-cache/chromeos-base/libva-fake-driver-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=>=x11-libs/libva-2.6.0:=
 SLOT=0/9999
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6f0f1c9f9a6e6717f317fb135242788f
diff --git a/metadata/md5-cache/chromeos-base/libvda-0.0.1-r233 b/metadata/md5-cache/chromeos-base/libvda-0.0.1-r233
deleted file mode 100644
index 01b29bc..0000000
--- a/metadata/md5-cache/chromeos-base/libvda-0.0.1-r233
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=media-libs/minigbm:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=libvda CrOS video decoding library
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/libvda
-IUSE=libvda_test cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_fbf4dfb51a4aa58831d6179663e19f3d1ef68b16_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_fbf4dfb51a4aa58831d6179663e19f3d1ef68b16_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=media-libs/minigbm:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r233
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=08e623dc94df5ffab4b7b27da7ce7373
diff --git a/metadata/md5-cache/chromeos-base/libvda-0.0.1-r265 b/metadata/md5-cache/chromeos-base/libvda-0.0.1-r265
new file mode 100644
index 0000000..3071674
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libvda-0.0.1-r265
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=media-libs/minigbm:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=libvda CrOS video decoding library
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/libvda
+IUSE=libvda_test cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2805c43c1df753e3f1137c48d398523ba1e938e0_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2805c43c1df753e3f1137c48d398523ba1e938e0_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=media-libs/minigbm:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r265
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=89ce365053f3545269c34b572512e802
diff --git a/metadata/md5-cache/chromeos-base/libvda-9999 b/metadata/md5-cache/chromeos-base/libvda-9999
index d928728..4093931 100644
--- a/metadata/md5-cache/chromeos-base/libvda-9999
+++ b/metadata/md5-cache/chromeos-base/libvda-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=media-libs/minigbm:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=695cc5b942434723f506fa14351e2e31
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=102b9cddde7655391f11359d95719093
diff --git a/metadata/md5-cache/chromeos-base/libvda-gpu-tests-0.0.1-r227 b/metadata/md5-cache/chromeos-base/libvda-gpu-tests-0.0.1-r227
deleted file mode 100644
index 0f779a0..0000000
--- a/metadata/md5-cache/chromeos-base/libvda-gpu-tests-0.0.1-r227
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libbrillo:= media-libs/minigbm:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=libvda Chrome GPU tests
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/libvda
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_fbf4dfb51a4aa58831d6179663e19f3d1ef68b16_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_fbf4dfb51a4aa58831d6179663e19f3d1ef68b16_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libbrillo:= media-libs/minigbm:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=893d0a40a659156598fe98f8e8f0d691
diff --git a/metadata/md5-cache/chromeos-base/libvda-gpu-tests-0.0.1-r258 b/metadata/md5-cache/chromeos-base/libvda-gpu-tests-0.0.1-r258
new file mode 100644
index 0000000..25ecb6b6
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libvda-gpu-tests-0.0.1-r258
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libbrillo:= media-libs/minigbm:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=libvda Chrome GPU tests
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/libvda
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2805c43c1df753e3f1137c48d398523ba1e938e0_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2805c43c1df753e3f1137c48d398523ba1e938e0_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libbrillo:= media-libs/minigbm:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=83c1ad65a1a7529c2604f8232851d73f
diff --git a/metadata/md5-cache/chromeos-base/libvda-gpu-tests-9999 b/metadata/md5-cache/chromeos-base/libvda-gpu-tests-9999
index 42d597f..c2cf11b 100644
--- a/metadata/md5-cache/chromeos-base/libvda-gpu-tests-9999
+++ b/metadata/md5-cache/chromeos-base/libvda-gpu-tests-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/libbrillo:= media-libs/minigbm:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7966c4b2769263fbe54c35ae8e95a351
diff --git a/metadata/md5-cache/chromeos-base/libweave-0.0.1-r1296 b/metadata/md5-cache/chromeos-base/libweave-0.0.1-r1296
deleted file mode 100644
index 6aa769c..0000000
--- a/metadata/md5-cache/chromeos-base/libweave-0.0.1-r1296
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-cpp/gtest:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Weave device library
-EAPI=7
-HOMEPAGE=http://dev.chromium.org/chromium-os/platform
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_2537616b612f732756d25c0aa7be9b7b202b1361 cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_2537616b612f732756d25c0aa7be9b7b202b1361 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r1296
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ce979434282275a98c8ab847e2d84020
diff --git a/metadata/md5-cache/chromeos-base/libweave-0.0.1-r1326 b/metadata/md5-cache/chromeos-base/libweave-0.0.1-r1326
new file mode 100644
index 0000000..a9b51af
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/libweave-0.0.1-r1326
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-cpp/gtest:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Weave device library
+EAPI=7
+HOMEPAGE=http://dev.chromium.org/chromium-os/platform
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_8708ebec57c03103228d3edd46de2bf3dd687dbc cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_8708ebec57c03103228d3edd46de2bf3dd687dbc cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r1326
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c777f7e06e5adb60d1f0677c988b5093
diff --git a/metadata/md5-cache/chromeos-base/libweave-9999 b/metadata/md5-cache/chromeos-base/libweave-9999
index c36452d..e0060a7 100644
--- a/metadata/md5-cache/chromeos-base/libweave-9999
+++ b/metadata/md5-cache/chromeos-base/libweave-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d31305ab5cae10c3901d836ffabd2693
diff --git a/metadata/md5-cache/chromeos-base/lorgnette-0.0.1-r3066 b/metadata/md5-cache/chromeos-base/lorgnette-0.0.1-r3066
deleted file mode 100644
index 37262af..0000000
--- a/metadata/md5-cache/chromeos-base/lorgnette-0.0.1-r3066
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= media-libs/libpng:= media-gfx/sane-airscan:= media-gfx/sane-backends:= virtual/jpeg:0= virtual/libusb:1 chromeos-base/permission_broker-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Document Scanning service for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/lorgnette/
-IUSE=test cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_7ab95adad72dd346e5249e117b29330382e9f716_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_7ab95adad72dd346e5249e117b29330382e9f716_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= media-libs/libpng:= media-gfx/sane-airscan:= media-gfx/sane-backends:= virtual/jpeg:0= virtual/libusb:1 chromeos-base/minijail test? ( chromeos-base/sane-backends-test media-gfx/perceptualdiff:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r3066
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=2595fa7f8f1dd2557029db4344eb35a6
diff --git a/metadata/md5-cache/chromeos-base/lorgnette-0.0.1-r3133 b/metadata/md5-cache/chromeos-base/lorgnette-0.0.1-r3133
new file mode 100644
index 0000000..410511b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/lorgnette-0.0.1-r3133
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= media-libs/libpng:= media-gfx/sane-airscan:= media-gfx/sane-backends:= virtual/jpeg:0= virtual/libusb:1 chromeos-base/permission_broker-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Document Scanning service for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/lorgnette/
+IUSE=test cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_05c6b23a5f06d70325b4321e4b297284c4ea739a_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_05c6b23a5f06d70325b4321e4b297284c4ea739a_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= media-libs/libpng:= media-gfx/sane-airscan:= media-gfx/sane-backends:= virtual/jpeg:0= virtual/libusb:1 chromeos-base/minijail test? ( chromeos-base/sane-backends-test media-gfx/perceptualdiff:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r3133
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=b972f044de2a668d4ac8c9c3e6c7c8d4
diff --git a/metadata/md5-cache/chromeos-base/lorgnette-9999 b/metadata/md5-cache/chromeos-base/lorgnette-9999
index fcb5c7d..237bf01 100644
--- a/metadata/md5-cache/chromeos-base/lorgnette-9999
+++ b/metadata/md5-cache/chromeos-base/lorgnette-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= media-libs/libpng:= media-gfx/sane-airscan:= media-gfx/sane-backends:= virtual/jpeg:0= virtual/libusb:1 chromeos-base/minijail test? ( chromeos-base/sane-backends-test media-gfx/perceptualdiff:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=49036f45d94f051e06dd1f77f89f617e
diff --git a/metadata/md5-cache/chromeos-base/lorgnette-wwcb-tests-0.0.1-r10 b/metadata/md5-cache/chromeos-base/lorgnette-wwcb-tests-0.0.1-r10
new file mode 100644
index 0000000..bce010a
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/lorgnette-wwcb-tests-0.0.1-r10
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst setup test unpack
+DEPEND=dev-go/cmp dev-lang/go
+DESCRIPTION=Works with Chromebook test suite for scanners
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/lorgnette/hwtests
+IUSE=cros_host cros_workon_tree_eff0e9f056691d761a11d14164613eb3c1feefc4
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/lorgnette_cli
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2b7c5c89bfc8d2b3ab292948f5c4bc82
diff --git a/metadata/md5-cache/chromeos-base/lorgnette-wwcb-tests-9999 b/metadata/md5-cache/chromeos-base/lorgnette-wwcb-tests-9999
new file mode 100644
index 0000000..12795f7
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/lorgnette-wwcb-tests-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst setup test unpack
+DEPEND=dev-go/cmp dev-lang/go
+DESCRIPTION=Works with Chromebook test suite for scanners
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/lorgnette/hwtests
+IUSE=cros_host cros_workon_tree_
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/lorgnette_cli
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=db8f5c5c282152840e813bd9807fae2b
diff --git a/metadata/md5-cache/chromeos-base/lorgnette_cli-0.0.1-r144 b/metadata/md5-cache/chromeos-base/lorgnette_cli-0.0.1-r144
deleted file mode 100644
index 0047dbd..0000000
--- a/metadata/md5-cache/chromeos-base/lorgnette_cli-0.0.1-r144
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Command line interface to scanning service for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/lorgnette
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_7ab95adad72dd346e5249e117b29330382e9f716_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_7ab95adad72dd346e5249e117b29330382e9f716_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/lorgnette >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=dab580ea640e76590f833ac517181c18
diff --git a/metadata/md5-cache/chromeos-base/lorgnette_cli-0.0.1-r196 b/metadata/md5-cache/chromeos-base/lorgnette_cli-0.0.1-r196
new file mode 100644
index 0000000..fe6b275
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/lorgnette_cli-0.0.1-r196
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Command line interface to scanning service for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/lorgnette
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_05c6b23a5f06d70325b4321e4b297284c4ea739a_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_05c6b23a5f06d70325b4321e4b297284c4ea739a_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/lorgnette >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7350c5a44aae088c896a7502f7b06c71
diff --git a/metadata/md5-cache/chromeos-base/lorgnette_cli-9999 b/metadata/md5-cache/chromeos-base/lorgnette_cli-9999
index 0826ab7..ebae34f 100644
--- a/metadata/md5-cache/chromeos-base/lorgnette_cli-9999
+++ b/metadata/md5-cache/chromeos-base/lorgnette_cli-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/lorgnette >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5c86acfc6c3e7b65c94cd7aac9a56fee
diff --git a/metadata/md5-cache/chromeos-base/manatee-client-0.0.1-r129 b/metadata/md5-cache/chromeos-base/manatee-client-0.0.1-r129
new file mode 100644
index 0000000..56618a6
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/manatee-client-0.0.1-r129
@@ -0,0 +1,14 @@
+BDEPEND=chromeos-base/chromeos-dbus-bindings dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS ManaTEE D-Bus client library
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_4a9ac56a4abc7348fb8ebfa0d152a1c78ee24749_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_4a9ac56a4abc7348fb8ebfa0d152a1c78ee24749_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r129
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=011b7141dd5334590c91212f675d37fb
diff --git a/metadata/md5-cache/chromeos-base/manatee-client-0.0.1-r86 b/metadata/md5-cache/chromeos-base/manatee-client-0.0.1-r86
deleted file mode 100644
index ecaa521..0000000
--- a/metadata/md5-cache/chromeos-base/manatee-client-0.0.1-r86
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=chromeos-base/chromeos-dbus-bindings dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS ManaTEE D-Bus client library
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_727b5a2cdf7d07c050cc575ee636711da70333a2_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_727b5a2cdf7d07c050cc575ee636711da70333a2_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r86
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=c5ef3098ce59beae65239301881148ef
diff --git a/metadata/md5-cache/chromeos-base/manatee-client-9999 b/metadata/md5-cache/chromeos-base/manatee-client-9999
index c2db055..af6ff32f 100644
--- a/metadata/md5-cache/chromeos-base/manatee-client-9999
+++ b/metadata/md5-cache/chromeos-base/manatee-client-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=c73b5f2d8dc45ed6874cf710fa2b84f2
diff --git a/metadata/md5-cache/chromeos-base/manatee-runtime-0.1.0-r12 b/metadata/md5-cache/chromeos-base/manatee-runtime-0.1.0-r12
new file mode 100644
index 0000000..feb8345
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/manatee-runtime-0.1.0-r12
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=chromeos-base/libsirenia:= dev-rust/libchromeos:= >=dev-rust/serde-1.0.114 <dev-rust/serde-2:= dev-rust/sync:= dev-rust/sys_util:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Library for TEE apps to interact with sirenia.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/manatee-runtime/
+IUSE=cros_host manatee cros_host cros_workon_tree_0645a85e4f29f3a3cd7483248a2ede1a4cb0a3cd cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/libsirenia:= dev-rust/libchromeos:= >=dev-rust/serde-1.0.114 <dev-rust/serde-2:= dev-rust/sync:= dev-rust/sys_util:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r12
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=49135b80dfb47d6cee35cacbc8124936
diff --git a/metadata/md5-cache/chromeos-base/manatee-runtime-0.1.0-r7 b/metadata/md5-cache/chromeos-base/manatee-runtime-0.1.0-r7
deleted file mode 100644
index afe93f8..0000000
--- a/metadata/md5-cache/chromeos-base/manatee-runtime-0.1.0-r7
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/libsirenia:= dev-rust/libchromeos:= >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 dev-rust/sync:= dev-rust/sys_util:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Library for TEE apps to interact with sirenia.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/manatee-runtime/
-IUSE=cros_host manatee cros_host cros_workon_tree_d82e84546e6140f16431633e392a549997ff27f9 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r7
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5de9a116b4a949b45a45cc7a54bc63be
diff --git a/metadata/md5-cache/chromeos-base/manatee-runtime-9999 b/metadata/md5-cache/chromeos-base/manatee-runtime-9999
index d6cf9b2..4eae31c 100644
--- a/metadata/md5-cache/chromeos-base/manatee-runtime-9999
+++ b/metadata/md5-cache/chromeos-base/manatee-runtime-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/libsirenia:= dev-rust/libchromeos:= >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 dev-rust/sync:= dev-rust/sys_util:= >=virtual/rust-1.39.0:=
+DEPEND=chromeos-base/libsirenia:= dev-rust/libchromeos:= >=dev-rust/serde-1.0.114 <dev-rust/serde-2:= dev-rust/sync:= dev-rust/sys_util:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Library for TEE apps to interact with sirenia.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/manatee-runtime/
@@ -8,7 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
+RDEPEND=chromeos-base/libsirenia:= dev-rust/libchromeos:= >=dev-rust/serde-1.0.114 <dev-rust/serde-2:= dev-rust/sync:= dev-rust/sys_util:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4c5dca1d12e75ffb627faf26712eaf1d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6b9b8f3edf998130eb6ea3d46d391740
diff --git a/metadata/md5-cache/chromeos-base/mcastd-0.0.1-r233 b/metadata/md5-cache/chromeos-base/mcastd-0.0.1-r233
deleted file mode 100644
index 8297104..0000000
--- a/metadata/md5-cache/chromeos-base/mcastd-0.0.1-r233
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/protobuf:= chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Multicast forwarder daemon
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/network/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_ae86a7d3ab814f4089a041bdf224a46af7c4b4bf_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_ae86a7d3ab814f4089a041bdf224a46af7c4b4bf_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-libs/protobuf:= chromeos-base/libbrillo:= !chromeos-base/arc-networkd-mcastd >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r233
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=46c94fc4cbeb0d811dcd42401d2f0a13
diff --git a/metadata/md5-cache/chromeos-base/mcastd-0.0.1-r284 b/metadata/md5-cache/chromeos-base/mcastd-0.0.1-r284
new file mode 100644
index 0000000..9927451da
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/mcastd-0.0.1-r284
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/protobuf:= chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Multicast forwarder daemon
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/network/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_199dfc58f8a75896a8500c6a738774ec7478f797_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_199dfc58f8a75896a8500c6a738774ec7478f797_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= chromeos-base/libbrillo:= !chromeos-base/arc-networkd-mcastd >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r284
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4ace80d0e27342483147c5a2bfa12b93
diff --git a/metadata/md5-cache/chromeos-base/mcastd-9999 b/metadata/md5-cache/chromeos-base/mcastd-9999
index 5710495..ac095fe 100644
--- a/metadata/md5-cache/chromeos-base/mcastd-9999
+++ b/metadata/md5-cache/chromeos-base/mcastd-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=dev-libs/protobuf:= chromeos-base/libbrillo:= !chromeos-base/arc-networkd-mcastd >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6fc64c064f96516dc11103e981b53f46
diff --git a/metadata/md5-cache/chromeos-base/memd-0.1.0-r128 b/metadata/md5-cache/chromeos-base/memd-0.1.0-r128
new file mode 100644
index 0000000..01ad2b4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/memd-0.1.0-r128
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=chromeos-base/system_api:= sys-apps/dbus:= >=dev-rust/chrono-0.4.2:= <dev-rust/chrono-0.5.0 >=dev-rust/dbus-0.6.1:= <dev-rust/dbus-0.7.0 =dev-rust/env_logger-0.6*:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/log-0.4.5:= <dev-rust/log-0.5.0 >=dev-rust/protobuf-2.3:= <dev-rust/protobuf-3.0 >=dev-rust/protoc-rust-2.3:= <dev-rust/protoc-rust-3 =dev-rust/syslog-4*:= =dev-rust/tempfile-3*:= >=dev-rust/time-0.1.40:= <dev-rust/time-0.2.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Fine-grain memory metrics collector
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/metrics/memd/
+IUSE=+seccomp cros_host cros_workon_tree_bfc498b82e9a26766af7a533220e0e9057ac3af4_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=sys-apps/dbus
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r128
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e66933e2b317351d5341dbe8f26d7758
diff --git a/metadata/md5-cache/chromeos-base/memd-0.1.0-r96 b/metadata/md5-cache/chromeos-base/memd-0.1.0-r96
deleted file mode 100644
index 4b1c0f8..0000000
--- a/metadata/md5-cache/chromeos-base/memd-0.1.0-r96
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/system_api:= sys-apps/dbus:= >=dev-rust/chrono-0.4.2:= <dev-rust/chrono-0.5.0 >=dev-rust/dbus-0.6.1:= <dev-rust/dbus-0.7.0 =dev-rust/env_logger-0.6*:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/log-0.4.5:= <dev-rust/log-0.5.0 >=dev-rust/protobuf-2.3:= <dev-rust/protobuf-3.0 >=dev-rust/protoc-rust-2.3:= <dev-rust/protoc-rust-3 =dev-rust/syslog-4*:= =dev-rust/tempfile-3*:= >=dev-rust/time-0.1.40:= <dev-rust/time-0.2.0 >=virtual/rust-1.39.0:=
-DESCRIPTION=Fine-grain memory metrics collector
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/metrics/memd/
-IUSE=+seccomp cros_host cros_workon_tree_75f65f147da7feb0796cb97c434e13bc61d8ee8f_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=sys-apps/dbus
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r96
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9f5cfe63486649f2968ce6735606c2c4
diff --git a/metadata/md5-cache/chromeos-base/memd-9999 b/metadata/md5-cache/chromeos-base/memd-9999
index 27cf1c0..e094ef0 100644
--- a/metadata/md5-cache/chromeos-base/memd-9999
+++ b/metadata/md5-cache/chromeos-base/memd-9999
@@ -11,5 +11,5 @@
 RDEPEND=sys-apps/dbus
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=c48d637d578f7d6916d993d179c17bbe
diff --git a/metadata/md5-cache/chromeos-base/mems_setup-0.0.1-r245 b/metadata/md5-cache/chromeos-base/mems_setup-0.0.1-r245
deleted file mode 100644
index c75185a..0000000
--- a/metadata/md5-cache/chromeos-base/mems_setup-0.0.1-r245
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libmems:= net-libs/libiio:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=MEMS Setup for Chromium OS.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/mems_setup
-IUSE=iioservice cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_da73aae6d89c8e69c3740af612610792ce42b1a8_956b1c75a21148c69a084aa4528169235fbae153_359903647899af99fb1bc9ba9d666b0e78fcb3a8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_da73aae6d89c8e69c3740af612610792ce42b1a8_956b1c75a21148c69a084aa4528169235fbae153_359903647899af99fb1bc9ba9d666b0e78fcb3a8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libmems:= net-libs/libiio:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r245
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6
-_md5_=0ce8fc5f8a315a4660f2e2c30c41682f
diff --git a/metadata/md5-cache/chromeos-base/mems_setup-0.0.1-r336 b/metadata/md5-cache/chromeos-base/mems_setup-0.0.1-r336
new file mode 100644
index 0000000..464e906
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/mems_setup-0.0.1-r336
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libmems:= net-libs/libiio:= dev-libs/re2:= chromeos-base/system_api:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=MEMS Setup for Chromium OS.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/mems_setup
+IUSE=iioservice cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_14acd311021ff7b4a6e5a812cf6ef18bab1ede72_8f103f3a0698253eaf39f7b4af6b3bbd05de09bf_ba93b35f6b12686bf293ce79255da511c89278e1_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_14acd311021ff7b4a6e5a812cf6ef18bab1ede72_8f103f3a0698253eaf39f7b4af6b3bbd05de09bf_ba93b35f6b12686bf293ce79255da511c89278e1_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libmems:= net-libs/libiio:= dev-libs/re2:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r336
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
+_md5_=0f9bdcc378c0f6068b18e669f6292eb6
diff --git a/metadata/md5-cache/chromeos-base/mems_setup-9999 b/metadata/md5-cache/chromeos-base/mems_setup-9999
index ecd176f..8e3b5c7 100644
--- a/metadata/md5-cache/chromeos-base/mems_setup-9999
+++ b/metadata/md5-cache/chromeos-base/mems_setup-9999
@@ -1,14 +1,14 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libmems:= net-libs/libiio:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=chromeos-base/libmems:= net-libs/libiio:= dev-libs/re2:= chromeos-base/system_api:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=MEMS Setup for Chromium OS.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/mems_setup
-IUSE=iioservice cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=iioservice cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/libmems:= net-libs/libiio:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=chromeos-base/libmems:= net-libs/libiio:= dev-libs/re2:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6
-_md5_=e29c1dfcca499090851d4dd018db99de
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
+_md5_=2a1b755e769880ee0b91e4c6d2f941a8
diff --git a/metadata/md5-cache/chromeos-base/metrics-0.0.1-r3275 b/metadata/md5-cache/chromeos-base/metrics-0.0.1-r3275
deleted file mode 100644
index c6cf1c6..0000000
--- a/metadata/md5-cache/chromeos-base/metrics-0.0.1-r3275
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=dev-libs/protobuf:= dev-libs/re2:= sys-apps/rootdev:= chromeos-base/session_manager-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Metrics aggregation service for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/metrics/
-IUSE=fuzzer metrics_uploader +passive_metrics systemd cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-libs/protobuf:= dev-libs/re2:= sys-apps/rootdev:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles sys-apps/baselayout
-SLOT=0/0.0.1-r3275
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=8e6f3e652202f5027b7d7e0eaef78060
diff --git a/metadata/md5-cache/chromeos-base/metrics-0.0.1-r3316 b/metadata/md5-cache/chromeos-base/metrics-0.0.1-r3316
new file mode 100644
index 0000000..80b2a36
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/metrics-0.0.1-r3316
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=dev-libs/protobuf:= dev-libs/re2:= sys-apps/rootdev:= chromeos-base/session_manager-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Metrics aggregation service for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/metrics/
+IUSE=fuzzer metrics_uploader +passive_metrics systemd cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= dev-libs/re2:= sys-apps/rootdev:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles sys-apps/baselayout
+SLOT=0/0.0.1-r3316
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=67de9f8c221edf567e38f709a3d3f7b6
diff --git a/metadata/md5-cache/chromeos-base/metrics-9999 b/metadata/md5-cache/chromeos-base/metrics-9999
index 9abc440..580645e 100644
--- a/metadata/md5-cache/chromeos-base/metrics-9999
+++ b/metadata/md5-cache/chromeos-base/metrics-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=dev-libs/protobuf:= dev-libs/re2:= sys-apps/rootdev:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=e87b9319e68c71c38c23dd15faaf31b4
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=de87faa0d2829d2a20a4c29a2b185457
diff --git a/metadata/md5-cache/chromeos-base/mfs-console-tool-1.1.2 b/metadata/md5-cache/chromeos-base/mfs-console-tool-1.1.2
index e6ebfd4..436b204 100644
--- a/metadata/md5-cache/chromeos-base/mfs-console-tool-1.1.2
+++ b/metadata/md5-cache/chromeos-base/mfs-console-tool-1.1.2
@@ -8,5 +8,5 @@
 RDEPEND=virtual/libusb:1= virtual/libudev:=
 SLOT=0
 SRC_URI=https://github.com/melfas/mfs-console-tool/archive/v1.1.2.tar.gz -> mfs-console-tool-1.1.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8783be9bbd676a6d768508f1f6e3ba9d
diff --git a/metadata/md5-cache/chromeos-base/midis-0.0.1-r1163 b/metadata/md5-cache/chromeos-base/midis-0.0.1-r1163
deleted file mode 100644
index fac8253..0000000
--- a/metadata/md5-cache/chromeos-base/midis-0.0.1-r1163
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=media-libs/alsa-lib:= chromeos-base/libbrillo:=[asan?,fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=MIDI Server for Chromium OS
-EAPI=7
-IUSE=+seccomp asan fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4201568ef8a1ffe39683b4c0dee8aeefc7eacfc8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4201568ef8a1ffe39683b4c0dee8aeefc7eacfc8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live live
-RDEPEND=media-libs/alsa-lib:= chromeos-base/libbrillo:=[asan?,fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r1163
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=61d46feb83f427b075697f251017975b
diff --git a/metadata/md5-cache/chromeos-base/midis-0.0.1-r1195 b/metadata/md5-cache/chromeos-base/midis-0.0.1-r1195
new file mode 100644
index 0000000..114f32d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/midis-0.0.1-r1195
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=media-libs/alsa-lib:= chromeos-base/libbrillo:=[asan?,fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=MIDI Server for Chromium OS
+EAPI=7
+IUSE=+seccomp asan fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7d961954cc97d91b18ed02eb9cf81712bed25e5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7d961954cc97d91b18ed02eb9cf81712bed25e5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live live
+RDEPEND=media-libs/alsa-lib:= chromeos-base/libbrillo:=[asan?,fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r1195
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=8f9d3c58d3a554e321a0cfb7aa327c13
diff --git a/metadata/md5-cache/chromeos-base/midis-9999 b/metadata/md5-cache/chromeos-base/midis-9999
index 505ba82..5f9ac63 100644
--- a/metadata/md5-cache/chromeos-base/midis-9999
+++ b/metadata/md5-cache/chromeos-base/midis-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live live
 RDEPEND=media-libs/alsa-lib:= chromeos-base/libbrillo:=[asan?,fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=422d695d24bdb7dc17f1c14cffb3504a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=5b0baabe23706ab15664765c8c6b6fe2
diff --git a/metadata/md5-cache/chromeos-base/minijail-14-r17 b/metadata/md5-cache/chromeos-base/minijail-14-r17
deleted file mode 100644
index 9b8923e..0000000
--- a/metadata/md5-cache/chromeos-base/minijail-14-r17
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=sys-libs/libcap:= !<chromeos-base/chromeos-minijail-1 cros_host? ( python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_6? ( dev-python/setuptools[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/setuptools[python_targets_python3_7(-)] ) ) test? ( dev-cpp/gtest:= )
-DESCRIPTION=helper binary and library for sandboxing & restricting privs of services
-EAPI=7
-HOMEPAGE=https://android.googlesource.com/platform/external/minijail
-IUSE=asan cros-debug +seccomp test cros-debug asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_8f0401ffc128cc569f1cf571161e18d32574949f python_single_target_python3_6 python_single_target_python3_7
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=sys-libs/libcap:= !<chromeos-base/chromeos-minijail-1
-SLOT=0/14-r17
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=1fa81fd3191824fbdfe9163ba5c72f6e
diff --git a/metadata/md5-cache/chromeos-base/minijail-16-r20 b/metadata/md5-cache/chromeos-base/minijail-16-r20
deleted file mode 100644
index 60a2e46..0000000
--- a/metadata/md5-cache/chromeos-base/minijail-16-r20
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=sys-libs/libcap:= !<chromeos-base/chromeos-minijail-1 cros_host? ( python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_6? ( dev-python/setuptools[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/setuptools[python_targets_python3_7(-)] ) ) test? ( dev-cpp/gtest:= )
-DESCRIPTION=helper binary and library for sandboxing & restricting privs of services
-EAPI=7
-HOMEPAGE=https://android.googlesource.com/platform/external/minijail
-IUSE=asan cros-debug +seccomp test cros-debug asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_5d7a4ada8dd246f22883e11dd0ad0c42af38dbad python_single_target_python3_6 python_single_target_python3_7
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=sys-libs/libcap:= !<chromeos-base/chromeos-minijail-1
-SLOT=0/16-r20
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=308ffab599ecc992672c331be2b38343
diff --git a/metadata/md5-cache/chromeos-base/minijail-17-r25 b/metadata/md5-cache/chromeos-base/minijail-17-r25
new file mode 100644
index 0000000..a9e3e56
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/minijail-17-r25
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=sys-libs/libcap:= !<chromeos-base/chromeos-minijail-1 cros_host? ( python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_6? ( dev-python/setuptools[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/setuptools[python_targets_python3_7(-)] ) ) test? ( dev-cpp/gtest:= )
+DESCRIPTION=helper binary and library for sandboxing & restricting privs of services
+EAPI=7
+HOMEPAGE=https://android.googlesource.com/platform/external/minijail
+IUSE=asan cros-debug default-ret-log +seccomp test cros-debug asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_9827997d82db7f7e49902f5a62123aa5ab08c3be python_single_target_python3_6 python_single_target_python3_7
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=sys-libs/libcap:= !<chromeos-base/chromeos-minijail-1
+REQUIRED_USE=default-ret-log? ( cros-debug )
+SLOT=0/17-r25
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=62cab9bd7b767b21ae8d7174360867a6
diff --git a/metadata/md5-cache/chromeos-base/minijail-9999 b/metadata/md5-cache/chromeos-base/minijail-9999
index 3a22e10..49b6149 100644
--- a/metadata/md5-cache/chromeos-base/minijail-9999
+++ b/metadata/md5-cache/chromeos-base/minijail-9999
@@ -4,11 +4,12 @@
 DESCRIPTION=helper binary and library for sandboxing & restricting privs of services
 EAPI=7
 HOMEPAGE=https://android.googlesource.com/platform/external/minijail
-IUSE=asan cros-debug +seccomp test cros-debug asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ python_single_target_python3_6 python_single_target_python3_7
+IUSE=asan cros-debug default-ret-log +seccomp test cros-debug asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ python_single_target_python3_6 python_single_target_python3_7
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
 RDEPEND=sys-libs/libcap:= !<chromeos-base/chromeos-minijail-1
+REQUIRED_USE=default-ret-log? ( cros-debug )
 SLOT=0/9999
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3a3dea48855bef024c8abc0e9296c9df
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b2a53b145b55c90f8d827d51366e72bc
diff --git a/metadata/md5-cache/chromeos-base/minios-0.0.1-r133 b/metadata/md5-cache/chromeos-base/minios-0.0.1-r133
new file mode 100644
index 0000000..8319f32
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/minios-0.0.1-r133
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/shill-client:= chromeos-base/update_engine-client:= x11-libs/libxkbcommon:= x11-misc/xkeyboard-config:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=The miniOS main logic.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/minios/
+IUSE=minios cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_4c41d3ca923afebebc1c20d24111de41aa7fc7ea_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_4c41d3ca923afebebc1c20d24111de41aa7fc7ea_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/shill-client:= chromeos-base/update_engine-client:= x11-libs/libxkbcommon:= x11-misc/xkeyboard-config:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=minios
+SLOT=0/0.0.1-r133
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8cf320d80d28551f0e70b8cdc9aa858c
diff --git a/metadata/md5-cache/chromeos-base/minios-0.0.1-r81 b/metadata/md5-cache/chromeos-base/minios-0.0.1-r81
deleted file mode 100644
index bb5ace8..0000000
--- a/metadata/md5-cache/chromeos-base/minios-0.0.1-r81
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/shill-client:= chromeos-base/update_engine-client:= x11-libs/libxkbcommon:= x11-misc/xkeyboard-config:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=The miniOS main logic.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/minios/
-IUSE=minios cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_fc9a07b01b4aef5e812b651af72adda305cf7fa8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_fc9a07b01b4aef5e812b651af72adda305cf7fa8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/shill-client:= chromeos-base/update_engine-client:= x11-libs/libxkbcommon:= x11-misc/xkeyboard-config:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=minios
-SLOT=0/0.0.1-r81
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=84c5a90f13de4daad719af3e122de1e9
diff --git a/metadata/md5-cache/chromeos-base/minios-9999 b/metadata/md5-cache/chromeos-base/minios-9999
index a81bde6..cdfbc37 100644
--- a/metadata/md5-cache/chromeos-base/minios-9999
+++ b/metadata/md5-cache/chromeos-base/minios-9999
@@ -11,5 +11,5 @@
 RDEPEND=chromeos-base/shill-client:= chromeos-base/update_engine-client:= x11-libs/libxkbcommon:= x11-misc/xkeyboard-config:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 REQUIRED_USE=minios
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8eab6ae6e6cbf8b324afead5de102dee
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4b911b33543f384bffb885aaeec891a5
diff --git a/metadata/md5-cache/chromeos-base/missive-0.0.1-r100 b/metadata/md5-cache/chromeos-base/missive-0.0.1-r100
new file mode 100644
index 0000000..f67dad6
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/missive-0.0.1-r100
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=app-arch/snappy chromeos-base/minijail:= dev-libs/protobuf:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Daemon to encrypt, store, and forward reporting events for managed devices.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/missive/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_4110b1743a3f308203c6d1dd85bf191e0dbda2ca_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_4110b1743a3f308203c6d1dd85bf191e0dbda2ca_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=app-arch/snappy chromeos-base/minijail:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=4a9393880bea95d41d315cacc18157f1
diff --git a/metadata/md5-cache/chromeos-base/missive-0.0.1-r48 b/metadata/md5-cache/chromeos-base/missive-0.0.1-r48
deleted file mode 100644
index 54ffbe1..0000000
--- a/metadata/md5-cache/chromeos-base/missive-0.0.1-r48
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/minijail:= dev-libs/protobuf:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Daemon to encrypt, store, and forward reporting events for managed devices.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/missive/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_c4aa6b23a008514b6a797f7132ee29236d1b0277_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_c4aa6b23a008514b6a797f7132ee29236d1b0277_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/minijail:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=4383b48932fca744039caacd12839b55
diff --git a/metadata/md5-cache/chromeos-base/missive-9999 b/metadata/md5-cache/chromeos-base/missive-9999
index ddf6077..24e84ec 100644
--- a/metadata/md5-cache/chromeos-base/missive-9999
+++ b/metadata/md5-cache/chromeos-base/missive-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/minijail:= dev-libs/protobuf:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=app-arch/snappy chromeos-base/minijail:= dev-libs/protobuf:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Daemon to encrypt, store, and forward reporting events for managed devices.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/missive/
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/minijail:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=app-arch/snappy chromeos-base/minijail:= dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=fcac3b0ad22efc1ee2ce4b75a9ae0fa0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=a8ddbe029665e851882298782740d4be
diff --git a/metadata/md5-cache/chromeos-base/mist-0.0.1-r3110 b/metadata/md5-cache/chromeos-base/mist-0.0.1-r3110
deleted file mode 100644
index 8563aa6..0000000
--- a/metadata/md5-cache/chromeos-base/mist-0.0.1-r3110
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libbrillo:=[udev] >=chromeos-base/metrics-0.0.1-r3152 dev-libs/protobuf:= net-dialup/ppp virtual/libusb:1 virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= virtual/pkgconfig
-DESCRIPTION=Chromium OS Modem Interface Switching Tool
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/mist/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_460b5c588dbf96a4f62c05b2dd799de43949c37b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_460b5c588dbf96a4f62c05b2dd799de43949c37b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libbrillo:=[udev] >=chromeos-base/metrics-0.0.1-r3152 dev-libs/protobuf:= net-dialup/ppp virtual/libusb:1 virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=cc5fc27245a01a5e4788fbf51c9b63a4
diff --git a/metadata/md5-cache/chromeos-base/mist-0.0.1-r3152 b/metadata/md5-cache/chromeos-base/mist-0.0.1-r3152
new file mode 100644
index 0000000..f176a7d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/mist-0.0.1-r3152
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libbrillo:=[udev] >=chromeos-base/metrics-0.0.1-r3152 dev-libs/protobuf:= net-dialup/ppp virtual/libusb:1 virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= virtual/pkgconfig
+DESCRIPTION=Chromium OS Modem Interface Switching Tool
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/mist/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_cfb418a6d821e9123bf6f220350e78f6f287c506_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_cfb418a6d821e9123bf6f220350e78f6f287c506_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libbrillo:=[udev] >=chromeos-base/metrics-0.0.1-r3152 dev-libs/protobuf:= net-dialup/ppp virtual/libusb:1 virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=707e4ef9114c1ac3bf18bd4944bad0ae
diff --git a/metadata/md5-cache/chromeos-base/mist-9999 b/metadata/md5-cache/chromeos-base/mist-9999
index eb6aee97..5aa6d9b 100644
--- a/metadata/md5-cache/chromeos-base/mist-9999
+++ b/metadata/md5-cache/chromeos-base/mist-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/libbrillo:=[udev] >=chromeos-base/metrics-0.0.1-r3152 dev-libs/protobuf:= net-dialup/ppp virtual/libusb:1 virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a65d88a76373a62dbeb08ddbed469ca0
diff --git a/metadata/md5-cache/chromeos-base/ml-0.0.1-r524 b/metadata/md5-cache/chromeos-base/ml-0.0.1-r524
deleted file mode 100644
index d76f970..0000000
--- a/metadata/md5-cache/chromeos-base/ml-0.0.1-r524
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= internal? ( ondevice_speech? ( chromeos-soda/libsoda:=[dlc=] ) ) nnapi? ( chromeos-base/aosp-frameworks-ml-nn ) media-libs/cros-camera-document-scanning:=[ondevice_document_scanner=] >=dev-libs/libgrammar-0.0.4:=[ondevice_grammar=] dev-libs/libhandwriting:=[ondevice_handwriting=,ondevice_handwriting_dlc=] dev-libs/libsuggest:=[ondevice_text_suggestions=] >=dev-libs/libtextclassifier-0.0.1-r79:= sci-libs/tensorflow:= chromeos-base/system_api:=[fuzzer?] dev-cpp/absl:= dev-libs/libutf:= dev-libs/marisa-aosp:= fuzzer? ( dev-libs/libprotobuf-mutator ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Machine learning service for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/ml
-IUSE=dlc fuzzer internal ml_benchmark_drivers nnapi ondevice_document_scanner ondevice_grammar ondevice_handwriting ondevice_handwriting_dlc ondevice_speech ondevice_text_suggestions cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_517c3fdaddc3179ddb87307a44118265bb0c00c3_20d593bc4f76d08b642ac2d57ed2f4f9af04ce50_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_517c3fdaddc3179ddb87307a44118265bb0c00c3_20d593bc4f76d08b642ac2d57ed2f4f9af04ce50_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= internal? ( ondevice_speech? ( chromeos-soda/libsoda:=[dlc=] ) ) nnapi? ( chromeos-base/aosp-frameworks-ml-nn ) media-libs/cros-camera-document-scanning:=[ondevice_document_scanner=] >=dev-libs/libgrammar-0.0.4:=[ondevice_grammar=] dev-libs/libhandwriting:=[ondevice_handwriting=,ondevice_handwriting_dlc=] dev-libs/libsuggest:=[ondevice_text_suggestions=] >=dev-libs/libtextclassifier-0.0.1-r79:= sci-libs/tensorflow:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=ondevice_speech? ( dlc )
-SLOT=0/0.0.1-r524
-SRC_URI=gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20200206-downloadable.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20201022-downloadable.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20210201-downloadable.tflite gs://chromeos-localmirror/distfiles/mlservice-model-test_add-20180914.tflite gs://chromeos-localmirror/distfiles/mlservice-model-search_ranker-20190923.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20181115.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190221.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190521-v3.tflite
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=77455ed6c8ebded36cdf715f3b5265ab
diff --git a/metadata/md5-cache/chromeos-base/ml-0.0.1-r605 b/metadata/md5-cache/chromeos-base/ml-0.0.1-r605
new file mode 100644
index 0000000..1f5f3af
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ml-0.0.1-r605
@@ -0,0 +1,16 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= internal? ( ondevice_speech? ( chromeos-soda/libsoda:=[dlc=] ) ) nnapi? ( chromeos-base/aosp-frameworks-ml-nn ) media-libs/cros-camera-document-scanning:=[ondevice_document_scanner=] >=dev-libs/libgrammar-0.0.4:=[ondevice_grammar=] dev-libs/libhandwriting:=[ondevice_handwriting=,ondevice_handwriting_dlc=] >=dev-libs/libsuggest-0.0.9:=[ondevice_text_suggestions=] >=dev-libs/libtextclassifier-0.0.1-r79:= sci-libs/tensorflow:= chromeos-base/system_api:=[fuzzer?] dev-cpp/absl:= dev-libs/libutf:= dev-libs/marisa-aosp:= fuzzer? ( dev-libs/libprotobuf-mutator ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Machine learning service for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/main/ml
+IUSE=dlc fuzzer internal ml_benchmark_drivers nnapi ondevice_document_scanner ondevice_grammar ondevice_handwriting ondevice_handwriting_dlc ondevice_speech ondevice_text_suggestions cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ec353604df509c3940bc5a1fb49d6ab35545ab6b_20d593bc4f76d08b642ac2d57ed2f4f9af04ce50_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ec353604df509c3940bc5a1fb49d6ab35545ab6b_20d593bc4f76d08b642ac2d57ed2f4f9af04ce50_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= internal? ( ondevice_speech? ( chromeos-soda/libsoda:=[dlc=] ) ) nnapi? ( chromeos-base/aosp-frameworks-ml-nn ) media-libs/cros-camera-document-scanning:=[ondevice_document_scanner=] >=dev-libs/libgrammar-0.0.4:=[ondevice_grammar=] dev-libs/libhandwriting:=[ondevice_handwriting=,ondevice_handwriting_dlc=] >=dev-libs/libsuggest-0.0.9:=[ondevice_text_suggestions=] >=dev-libs/libtextclassifier-0.0.1-r79:= sci-libs/tensorflow:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+REQUIRED_USE=ondevice_speech? ( dlc )
+SLOT=0/0.0.1-r605
+SRC_URI=gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20200206-downloadable.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20210201-downloadable.tflite gs://chromeos-localmirror/distfiles/mlservice-model-test_add-20180914.tflite gs://chromeos-localmirror/distfiles/mlservice-model-search_ranker-20190923.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20181115.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190221.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190521-v3.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190521-preprocessor.pb
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=8d489cdaacf19b83083776f3f019fa65
diff --git a/metadata/md5-cache/chromeos-base/ml-9999 b/metadata/md5-cache/chromeos-base/ml-9999
index aed933c..8e69be2 100644
--- a/metadata/md5-cache/chromeos-base/ml-9999
+++ b/metadata/md5-cache/chromeos-base/ml-9999
@@ -1,16 +1,16 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= internal? ( ondevice_speech? ( chromeos-soda/libsoda:=[dlc=] ) ) nnapi? ( chromeos-base/aosp-frameworks-ml-nn ) media-libs/cros-camera-document-scanning:=[ondevice_document_scanner=] >=dev-libs/libgrammar-0.0.4:=[ondevice_grammar=] dev-libs/libhandwriting:=[ondevice_handwriting=,ondevice_handwriting_dlc=] dev-libs/libsuggest:=[ondevice_text_suggestions=] >=dev-libs/libtextclassifier-0.0.1-r79:= sci-libs/tensorflow:= chromeos-base/system_api:=[fuzzer?] dev-cpp/absl:= dev-libs/libutf:= dev-libs/marisa-aosp:= fuzzer? ( dev-libs/libprotobuf-mutator ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= internal? ( ondevice_speech? ( chromeos-soda/libsoda:=[dlc=] ) ) nnapi? ( chromeos-base/aosp-frameworks-ml-nn ) media-libs/cros-camera-document-scanning:=[ondevice_document_scanner=] >=dev-libs/libgrammar-0.0.4:=[ondevice_grammar=] dev-libs/libhandwriting:=[ondevice_handwriting=,ondevice_handwriting_dlc=] >=dev-libs/libsuggest-0.0.9:=[ondevice_text_suggestions=] >=dev-libs/libtextclassifier-0.0.1-r79:= sci-libs/tensorflow:= chromeos-base/system_api:=[fuzzer?] dev-cpp/absl:= dev-libs/libutf:= dev-libs/marisa-aosp:= fuzzer? ( dev-libs/libprotobuf-mutator ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Machine learning service for Chromium OS
 EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/ml
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/main/ml
 IUSE=dlc fuzzer internal ml_benchmark_drivers nnapi ondevice_document_scanner ondevice_grammar ondevice_handwriting ondevice_handwriting_dlc ondevice_speech ondevice_text_suggestions cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= internal? ( ondevice_speech? ( chromeos-soda/libsoda:=[dlc=] ) ) nnapi? ( chromeos-base/aosp-frameworks-ml-nn ) media-libs/cros-camera-document-scanning:=[ondevice_document_scanner=] >=dev-libs/libgrammar-0.0.4:=[ondevice_grammar=] dev-libs/libhandwriting:=[ondevice_handwriting=,ondevice_handwriting_dlc=] dev-libs/libsuggest:=[ondevice_text_suggestions=] >=dev-libs/libtextclassifier-0.0.1-r79:= sci-libs/tensorflow:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= internal? ( ondevice_speech? ( chromeos-soda/libsoda:=[dlc=] ) ) nnapi? ( chromeos-base/aosp-frameworks-ml-nn ) media-libs/cros-camera-document-scanning:=[ondevice_document_scanner=] >=dev-libs/libgrammar-0.0.4:=[ondevice_grammar=] dev-libs/libhandwriting:=[ondevice_handwriting=,ondevice_handwriting_dlc=] >=dev-libs/libsuggest-0.0.9:=[ondevice_text_suggestions=] >=dev-libs/libtextclassifier-0.0.1-r79:= sci-libs/tensorflow:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 REQUIRED_USE=ondevice_speech? ( dlc )
 SLOT=0/9999
-SRC_URI=gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20200206-downloadable.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20201022-downloadable.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20210201-downloadable.tflite gs://chromeos-localmirror/distfiles/mlservice-model-test_add-20180914.tflite gs://chromeos-localmirror/distfiles/mlservice-model-search_ranker-20190923.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20181115.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190221.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190521-v3.tflite
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=31441942c3144e08f86645a7dc177346
+SRC_URI=gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20200206-downloadable.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20210201-downloadable.tflite gs://chromeos-localmirror/distfiles/mlservice-model-test_add-20180914.tflite gs://chromeos-localmirror/distfiles/mlservice-model-search_ranker-20190923.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20181115.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190221.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190521-v3.tflite gs://chromeos-localmirror/distfiles/mlservice-model-smart_dim-20190521-preprocessor.pb
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=7e8bdc268376de8fd305e8d4c7966665
diff --git a/metadata/md5-cache/chromeos-base/ml-benchmark-0.0.1-r122 b/metadata/md5-cache/chromeos-base/ml-benchmark-0.0.1-r122
new file mode 100644
index 0000000..1511403
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ml-benchmark-0.0.1-r122
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=!chromeos-base/ml_benchmark dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS ML Benchmarking Suite
+EAPI=7
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_20d593bc4f76d08b642ac2d57ed2f4f9af04ce50_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_20d593bc4f76d08b642ac2d57ed2f4f9af04ce50_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!chromeos-base/ml_benchmark >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r122
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2e1daa2f9042cdb655663eaeec110457
diff --git a/metadata/md5-cache/chromeos-base/ml-benchmark-0.0.1-r97 b/metadata/md5-cache/chromeos-base/ml-benchmark-0.0.1-r97
deleted file mode 100644
index 3db6d8d..0000000
--- a/metadata/md5-cache/chromeos-base/ml-benchmark-0.0.1-r97
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=!chromeos-base/ml_benchmark dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS ML Benchmarking Suite
-EAPI=7
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_20d593bc4f76d08b642ac2d57ed2f4f9af04ce50_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_20d593bc4f76d08b642ac2d57ed2f4f9af04ce50_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!chromeos-base/ml_benchmark >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r97
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ede7aa823cb4d397bbe09b03bbc60bd5
diff --git a/metadata/md5-cache/chromeos-base/ml-benchmark-9999 b/metadata/md5-cache/chromeos-base/ml-benchmark-9999
index fc7aee0..bc814b9 100644
--- a/metadata/md5-cache/chromeos-base/ml-benchmark-9999
+++ b/metadata/md5-cache/chromeos-base/ml-benchmark-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=!chromeos-base/ml_benchmark >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=42669848026ae90e1e7dd25fa3c06e4e
diff --git a/metadata/md5-cache/chromeos-base/ml-client-0.0.1-r49 b/metadata/md5-cache/chromeos-base/ml-client-0.0.1-r49
new file mode 100644
index 0000000..1eae94c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ml-client-0.0.1-r49
@@ -0,0 +1,14 @@
+BDEPEND=chromeos-base/chromeos-dbus-bindings:= dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=ML Service D-Bus client library for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/main/ml/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ec353604df509c3940bc5a1fb49d6ab35545ab6b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ec353604df509c3940bc5a1fb49d6ab35545ab6b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r49
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ba9e8a78e53dee431c92518c4a8df2d9
diff --git a/metadata/md5-cache/chromeos-base/ml-client-9999 b/metadata/md5-cache/chromeos-base/ml-client-9999
new file mode 100644
index 0000000..6722727
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ml-client-9999
@@ -0,0 +1,14 @@
+BDEPEND=chromeos-base/chromeos-dbus-bindings:= dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=ML Service D-Bus client library for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/main/ml/
+IUSE=cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8e4ed354712ee4dd8eae3b5be2280b4f
diff --git a/metadata/md5-cache/chromeos-base/ml-cmdline-0.0.1-r213 b/metadata/md5-cache/chromeos-base/ml-cmdline-0.0.1-r213
deleted file mode 100644
index 34e2d24..0000000
--- a/metadata/md5-cache/chromeos-base/ml-cmdline-0.0.1-r213
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/ml:= sci-libs/tensorflow:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Command line interface to machine learning service for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/ml
-IUSE=internal cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_517c3fdaddc3179ddb87307a44118265bb0c00c3_20d593bc4f76d08b642ac2d57ed2f4f9af04ce50_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_517c3fdaddc3179ddb87307a44118265bb0c00c3_20d593bc4f76d08b642ac2d57ed2f4f9af04ce50_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/ml:= sci-libs/tensorflow:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2f21469dc0e171e6286a355d220a6e97
diff --git a/metadata/md5-cache/chromeos-base/ml-cmdline-0.0.1-r290 b/metadata/md5-cache/chromeos-base/ml-cmdline-0.0.1-r290
new file mode 100644
index 0000000..25ccdb3
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ml-cmdline-0.0.1-r290
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/ml:= sci-libs/tensorflow:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Command line interface to machine learning service for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/main/ml
+IUSE=internal cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ec353604df509c3940bc5a1fb49d6ab35545ab6b_20d593bc4f76d08b642ac2d57ed2f4f9af04ce50_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ec353604df509c3940bc5a1fb49d6ab35545ab6b_20d593bc4f76d08b642ac2d57ed2f4f9af04ce50_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/ml:= sci-libs/tensorflow:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d7eeba3cd3eb9c9cf5734860bc3309d9
diff --git a/metadata/md5-cache/chromeos-base/ml-cmdline-9999 b/metadata/md5-cache/chromeos-base/ml-cmdline-9999
index 73211a8..677a2d8 100644
--- a/metadata/md5-cache/chromeos-base/ml-cmdline-9999
+++ b/metadata/md5-cache/chromeos-base/ml-cmdline-9999
@@ -3,12 +3,12 @@
 DEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/ml:= sci-libs/tensorflow:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Command line interface to machine learning service for Chromium OS
 EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/ml
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/main/ml
 IUSE=internal cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
 RDEPEND=chromeos-base/chrome-icu:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/ml:= sci-libs/tensorflow:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=76bd38f53774a952a93546b9b84af40b
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4e444684b202b64a626a562d6ae1e8b8
diff --git a/metadata/md5-cache/chromeos-base/ml-test-assets-0.0.1 b/metadata/md5-cache/chromeos-base/ml-test-assets-0.0.1
index 8c40a2c..1e5c4af 100644
--- a/metadata/md5-cache/chromeos-base/ml-test-assets-0.0.1
+++ b/metadata/md5-cache/chromeos-base/ml-test-assets-0.0.1
@@ -7,4 +7,4 @@
 LICENSE=Apache-2.0
 SLOT=0
 SRC_URI=label_image? ( gs://chromeos-localmirror/distfiles/ml-test-assets-label-image-assets_20200721.tar.xz ) benchmark_model? ( gs://chromeos-localmirror/distfiles/aosp-mlts-models-7331369.tar.xz )
-_md5_=b5d1e2f4c7cae2db26f501d05826aaf6
+_md5_=157adb2b9881a2c8ebe15007ecd9e7a9
diff --git a/metadata/md5-cache/chromeos-base/ml-test-assets-0.0.1-r2 b/metadata/md5-cache/chromeos-base/ml-test-assets-0.0.1-r2
new file mode 100644
index 0000000..1e5c4af
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ml-test-assets-0.0.1-r2
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DESCRIPTION=TFLite models and supporting assets used for testing ML & NNAPI.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/aosp/platform/test/mlts/models/
+IUSE=label_image benchmark_model
+KEYWORDS=*
+LICENSE=Apache-2.0
+SLOT=0
+SRC_URI=label_image? ( gs://chromeos-localmirror/distfiles/ml-test-assets-label-image-assets_20200721.tar.xz ) benchmark_model? ( gs://chromeos-localmirror/distfiles/aosp-mlts-models-7331369.tar.xz )
+_md5_=157adb2b9881a2c8ebe15007ecd9e7a9
diff --git a/metadata/md5-cache/chromeos-base/modem-utilities-0.0.1-r2819 b/metadata/md5-cache/chromeos-base/modem-utilities-0.0.1-r2819
deleted file mode 100644
index 5fd906e..0000000
--- a/metadata/md5-cache/chromeos-base/modem-utilities-0.0.1-r2819
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chromium OS modem utilities
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/modem-utilities/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_27ef0d6acd54bc79665263fb561d89abb458d867_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_27ef0d6acd54bc79665263fb561d89abb458d867_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=sys-apps/dbus:= virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r2819
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a41cde372bc15204d9b8297a8d1d45de
diff --git a/metadata/md5-cache/chromeos-base/modem-utilities-0.0.1-r2845 b/metadata/md5-cache/chromeos-base/modem-utilities-0.0.1-r2845
new file mode 100644
index 0000000..7e3840d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/modem-utilities-0.0.1-r2845
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chromium OS modem utilities
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/modem-utilities/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_60d6ddef66c23db66d1f46f06c47d7027ddecbd9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_60d6ddef66c23db66d1f46f06c47d7027ddecbd9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=sys-apps/dbus:= virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r2845
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4606588dc4f1e6706240775fdc5f657b
diff --git a/metadata/md5-cache/chromeos-base/modem-utilities-9999 b/metadata/md5-cache/chromeos-base/modem-utilities-9999
index 37e6708..f091f88 100644
--- a/metadata/md5-cache/chromeos-base/modem-utilities-9999
+++ b/metadata/md5-cache/chromeos-base/modem-utilities-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=sys-apps/dbus:= virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1ae29fa980658293c9ce6c74dea2cc5a
diff --git a/metadata/md5-cache/chromeos-base/modemfwd-0.0.1-r831 b/metadata/md5-cache/chromeos-base/modemfwd-0.0.1-r831
deleted file mode 100644
index 5b1bfe0..0000000
--- a/metadata/md5-cache/chromeos-base/modemfwd-0.0.1-r831
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=app-arch/xz-utils:= chromeos-base/chromeos-config:= chromeos-base/chromeos-config-tools:= dev-libs/protobuf:= net-misc/modemmanager-next:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] fuzzer? ( dev-libs/libprotobuf-mutator:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Modem firmware updater daemon
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/modemfwd
-IUSE=fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_2791849b7eefd7dd81590b85ffcc88a96fa05725_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_2791849b7eefd7dd81590b85ffcc88a96fa05725_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=app-arch/xz-utils:= chromeos-base/chromeos-config:= chromeos-base/chromeos-config-tools:= dev-libs/protobuf:= net-misc/modemmanager-next:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=a0b38c57b974e185318e3405c79d5cdd
diff --git a/metadata/md5-cache/chromeos-base/modemfwd-0.0.1-r886 b/metadata/md5-cache/chromeos-base/modemfwd-0.0.1-r886
new file mode 100644
index 0000000..edc9417
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/modemfwd-0.0.1-r886
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=app-arch/xz-utils:= chromeos-base/chromeos-config:= chromeos-base/chromeos-config-tools:= dev-libs/protobuf:= net-misc/modemmanager-next:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] fuzzer? ( dev-libs/libprotobuf-mutator:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Modem firmware updater daemon
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/modemfwd
+IUSE=fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_49accdeb6fa80222bded09a11dcaded7492d37cc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_49accdeb6fa80222bded09a11dcaded7492d37cc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=app-arch/xz-utils:= chromeos-base/chromeos-config:= chromeos-base/chromeos-config-tools:= dev-libs/protobuf:= net-misc/modemmanager-next:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=5954127cea6906bcb3b5f205bb01147b
diff --git a/metadata/md5-cache/chromeos-base/modemfwd-9999 b/metadata/md5-cache/chromeos-base/modemfwd-9999
index cf3332e..8adae97 100644
--- a/metadata/md5-cache/chromeos-base/modemfwd-9999
+++ b/metadata/md5-cache/chromeos-base/modemfwd-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=app-arch/xz-utils:= chromeos-base/chromeos-config:= chromeos-base/chromeos-config-tools:= dev-libs/protobuf:= net-misc/modemmanager-next:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=8c95180662d4998bccf0777d7be77153
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=d4dad3c0329ccc1c31daf87582eb0a39
diff --git a/metadata/md5-cache/chromeos-base/modemfwd-proto-0.0.1-r19 b/metadata/md5-cache/chromeos-base/modemfwd-proto-0.0.1-r19
new file mode 100644
index 0000000..e1ed852
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/modemfwd-proto-0.0.1-r19
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst setup test unpack
+DEPEND=dev-libs/protobuf:= dev-go/protobuf dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=modemfwd go proto for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/main/modemfwd
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_49accdeb6fa80222bded09a11dcaded7492d37cc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_49accdeb6fa80222bded09a11dcaded7492d37cc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r19
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=17684f96350a65c17ea5707dd8e7d350
diff --git a/metadata/md5-cache/chromeos-base/modemfwd-proto-9999 b/metadata/md5-cache/chromeos-base/modemfwd-proto-9999
new file mode 100644
index 0000000..99533ce
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/modemfwd-proto-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst setup test unpack
+DEPEND=dev-libs/protobuf:= dev-go/protobuf dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=modemfwd go proto for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/main/modemfwd
+IUSE=cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a46c116ff837a3a479739d09f516e373
diff --git a/metadata/md5-cache/chromeos-base/mount-passthrough-0.0.2-r471 b/metadata/md5-cache/chromeos-base/mount-passthrough-0.0.2-r471
deleted file mode 100644
index 199143b..0000000
--- a/metadata/md5-cache/chromeos-base/mount-passthrough-0.0.2-r471
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Mounts the specified directory with different owner UID and GID
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/mount-passthrough
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_92e3d0aa6c1005f33e6a3ca09fbb2a775cf67d9f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_92e3d0aa6c1005f33e6a3ca09fbb2a775cf67d9f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.2-r471
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=88943c21437a941e4bf3607d1fab2cfc
diff --git a/metadata/md5-cache/chromeos-base/mount-passthrough-0.0.2-r500 b/metadata/md5-cache/chromeos-base/mount-passthrough-0.0.2-r500
new file mode 100644
index 0000000..c9d2972
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/mount-passthrough-0.0.2-r500
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND==sys-fs/fuse-2* sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Mounts the specified directory with different owner UID and GID
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/mount-passthrough
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5cc3c784efa16690f19c0ffb5d86623972b4452b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5cc3c784efa16690f19c0ffb5d86623972b4452b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND==sys-fs/fuse-2* sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.2-r500
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=59763c05f93538a89f7e91a163ca8ed9
diff --git a/metadata/md5-cache/chromeos-base/mount-passthrough-9999 b/metadata/md5-cache/chromeos-base/mount-passthrough-9999
index 8ece9cd..e42f4e8 100644
--- a/metadata/md5-cache/chromeos-base/mount-passthrough-9999
+++ b/metadata/md5-cache/chromeos-base/mount-passthrough-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND==sys-fs/fuse-2* sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Mounts the specified directory with different owner UID and GID
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/mount-passthrough
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND==sys-fs/fuse-2* sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=80f062d4aa6b21581751ebfde09c2850
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=94fa92c373ef2e852f7bfa02a16a62f4
diff --git a/metadata/md5-cache/chromeos-base/mri_package-0.0.1-r290 b/metadata/md5-cache/chromeos-base/mri_package-0.0.1-r290
deleted file mode 100644
index 40e8aac..0000000
--- a/metadata/md5-cache/chromeos-base/mri_package-0.0.1-r290
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=media-sound/adhd:= >=sys-apps/dbus-1.0:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Media perception service
-EAPI=7
-IUSE=internal cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_9b0d8acf9fe935775132a5c3231a3dc32cbb08c6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_9b0d8acf9fe935775132a5c3231a3dc32cbb08c6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=media-sound/adhd:= >=sys-apps/dbus-1.0:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-RESTRICT=mirror
-SLOT=0/0.0.1-r290
-SRC_URI=internal? ( gs://chromeos-localmirror-private/distfiles/mri_package-72.0.0.tar.gz )
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=29e1e2e28a00376af8fb9c032dcae445
diff --git a/metadata/md5-cache/chromeos-base/mri_package-0.0.1-r320 b/metadata/md5-cache/chromeos-base/mri_package-0.0.1-r320
new file mode 100644
index 0000000..a87a75a
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/mri_package-0.0.1-r320
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=media-sound/adhd:= >=sys-apps/dbus-1.0:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Media perception service
+EAPI=7
+IUSE=internal cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_07a6ba481226ffad8f526ba964a0979b85165e5b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_07a6ba481226ffad8f526ba964a0979b85165e5b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=media-sound/adhd:= >=sys-apps/dbus-1.0:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RESTRICT=mirror
+SLOT=0/0.0.1-r320
+SRC_URI=internal? ( gs://chromeos-localmirror-private/distfiles/mri_package-72.0.0.tar.gz )
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=f37de205940c2336b15536e79be36b49
diff --git a/metadata/md5-cache/chromeos-base/mri_package-9999 b/metadata/md5-cache/chromeos-base/mri_package-9999
index 1781f9f..d9a9339 100644
--- a/metadata/md5-cache/chromeos-base/mri_package-9999
+++ b/metadata/md5-cache/chromeos-base/mri_package-9999
@@ -11,5 +11,5 @@
 RESTRICT=mirror
 SLOT=0/9999
 SRC_URI=internal? ( gs://chromeos-localmirror-private/distfiles/mri_package-72.0.0.tar.gz )
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=f1a28582b98f084b87e2e475b0200b1b
diff --git a/metadata/md5-cache/chromeos-base/mst_hub_updater-1.0.1 b/metadata/md5-cache/chromeos-base/mst_hub_updater-1.0.1
deleted file mode 100644
index 84fd022..0000000
--- a/metadata/md5-cache/chromeos-base/mst_hub_updater-1.0.1
+++ /dev/null
@@ -1,8 +0,0 @@
-DEFINED_PHASES=configure install
-DESCRIPTION=Firmware Updater for Realtek DP Multimedia Hub
-EAPI=7
-KEYWORDS=*
-LICENSE=BSD-Realtek
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/mst_hub_updater-1.0.1.tar.gz
-_md5_=7757f8f03f1f5c9781b83376ed5a9d9f
diff --git a/metadata/md5-cache/chromeos-base/mst_hub_updater-1.0.1-r3 b/metadata/md5-cache/chromeos-base/mst_hub_updater-1.0.1-r3
deleted file mode 100644
index 84fd022..0000000
--- a/metadata/md5-cache/chromeos-base/mst_hub_updater-1.0.1-r3
+++ /dev/null
@@ -1,8 +0,0 @@
-DEFINED_PHASES=configure install
-DESCRIPTION=Firmware Updater for Realtek DP Multimedia Hub
-EAPI=7
-KEYWORDS=*
-LICENSE=BSD-Realtek
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/mst_hub_updater-1.0.1.tar.gz
-_md5_=7757f8f03f1f5c9781b83376ed5a9d9f
diff --git a/metadata/md5-cache/chromeos-base/mtpd-0.0.1-r933 b/metadata/md5-cache/chromeos-base/mtpd-0.0.1-r933
deleted file mode 100644
index 483f811..0000000
--- a/metadata/md5-cache/chromeos-base/mtpd-0.0.1-r933
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=dev-libs/protobuf:= media-libs/libmtp:= virtual/udev chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=MTP daemon for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/mtpd
-IUSE=-asan +seccomp systemd test cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8f376208dea965d63708243a36895e4e7bd272b0_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8f376208dea965d63708243a36895e4e7bd272b0_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-libs/protobuf:= media-libs/libmtp:= virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r933
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=2acec4cf7e2b0f77fe2ec98a138c39d2
diff --git a/metadata/md5-cache/chromeos-base/mtpd-0.0.1-r961 b/metadata/md5-cache/chromeos-base/mtpd-0.0.1-r961
new file mode 100644
index 0000000..62637724
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/mtpd-0.0.1-r961
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=dev-libs/protobuf:= media-libs/libmtp:= virtual/udev chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=MTP daemon for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/mtpd
+IUSE=-asan +seccomp systemd test cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ddd6f34f68948ae3544e2fb9195932fc8c44392c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ddd6f34f68948ae3544e2fb9195932fc8c44392c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= media-libs/libmtp:= virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r961
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=9fab533491da54037b04e3d89ade5417
diff --git a/metadata/md5-cache/chromeos-base/mtpd-9999 b/metadata/md5-cache/chromeos-base/mtpd-9999
index 8b7d7dc..c667760 100644
--- a/metadata/md5-cache/chromeos-base/mtpd-9999
+++ b/metadata/md5-cache/chromeos-base/mtpd-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=dev-libs/protobuf:= media-libs/libmtp:= virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=2d753eb52cf53db09d6cbd9c1a11d960
diff --git a/metadata/md5-cache/chromeos-base/mttools-0.0.1-r163 b/metadata/md5-cache/chromeos-base/mttools-0.0.1-r163
index 7e2469b..3c40e2b 100644
--- a/metadata/md5-cache/chromeos-base/mttools-0.0.1-r163
+++ b/metadata/md5-cache/chromeos-base/mttools-0.0.1-r163
@@ -10,5 +10,5 @@
 RDEPEND=chromeos-base/gestures app-misc/utouch-evemu chromeos-base/libevdev:= chromeos-base/touch_firmware_test
 RESTRICT=test
 SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4298127ba6ff71aec9f3c2530d3db6d0
diff --git a/metadata/md5-cache/chromeos-base/mttools-9999 b/metadata/md5-cache/chromeos-base/mttools-9999
index b90751b..be8a47c 100644
--- a/metadata/md5-cache/chromeos-base/mttools-9999
+++ b/metadata/md5-cache/chromeos-base/mttools-9999
@@ -10,5 +10,5 @@
 RDEPEND=chromeos-base/gestures app-misc/utouch-evemu chromeos-base/libevdev:= chromeos-base/touch_firmware_test
 RESTRICT=test
 SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c0142f589c656eee35c0576a29738ccc
diff --git a/metadata/md5-cache/chromeos-base/ndproxyd-0.0.1-r233 b/metadata/md5-cache/chromeos-base/ndproxyd-0.0.1-r233
deleted file mode 100644
index 53c2148..0000000
--- a/metadata/md5-cache/chromeos-base/ndproxyd-0.0.1-r233
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/protobuf:= chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=NDProxy daemon
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/network/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_ae86a7d3ab814f4089a041bdf224a46af7c4b4bf_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_ae86a7d3ab814f4089a041bdf224a46af7c4b4bf_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-libs/protobuf:= chromeos-base/libbrillo:= !chromeos-base/arc-networkd-ndproxyd >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r233
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6ead97bbdea1ce9eab2abd8269d4c876
diff --git a/metadata/md5-cache/chromeos-base/ndproxyd-0.0.1-r284 b/metadata/md5-cache/chromeos-base/ndproxyd-0.0.1-r284
new file mode 100644
index 0000000..cda4390
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ndproxyd-0.0.1-r284
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/protobuf:= chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=NDProxy daemon
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/network/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_199dfc58f8a75896a8500c6a738774ec7478f797_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_199dfc58f8a75896a8500c6a738774ec7478f797_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= chromeos-base/libbrillo:= !chromeos-base/arc-networkd-ndproxyd >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r284
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3e7f16108c7a4bcb0e9ec9677988c622
diff --git a/metadata/md5-cache/chromeos-base/ndproxyd-9999 b/metadata/md5-cache/chromeos-base/ndproxyd-9999
index 7c111d1..4daf9ba 100644
--- a/metadata/md5-cache/chromeos-base/ndproxyd-9999
+++ b/metadata/md5-cache/chromeos-base/ndproxyd-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=dev-libs/protobuf:= chromeos-base/libbrillo:= !chromeos-base/arc-networkd-ndproxyd >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5f5e7c3966855911a14fbe5ca08f5ca9
diff --git a/metadata/md5-cache/chromeos-base/nnapi-0.0.2-r3 b/metadata/md5-cache/chromeos-base/nnapi-0.0.2-r3
deleted file mode 100644
index 4c79cad..0000000
--- a/metadata/md5-cache/chromeos-base/nnapi-0.0.2-r3
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS support utils for Android Neural Network API
-EAPI=7
-HOMEPAGE=https://developer.android.com/ndk/guides/neuralnetworks
-IUSE=cros_host cros_workon_tree_eaed4f3b0a8201ef3951bf1960728885ff99e772_64b6839ee0c350c6387157eb82ce359c719646f1_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_d0c498cd8aacda36a50685194a4f11a5538c36ec_84e5da480e7ca644dd680845aadd3c35eef39972_60d005eccb2f9431ea99a17d8637375a9e5e387d_4007f79bbd89b30be582cb0cdb1292ce377f34e1_077dba53acf2e9a7a56288ee75d515afa7541b94_bcea173391bb1aa3b0978ecc33a27d447e59eb18_6a8c1be1913e7a9ccf5141a072ad595a1e9d3add cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_eaed4f3b0a8201ef3951bf1960728885ff99e772_64b6839ee0c350c6387157eb82ce359c719646f1_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_d0c498cd8aacda36a50685194a4f11a5538c36ec_84e5da480e7ca644dd680845aadd3c35eef39972_60d005eccb2f9431ea99a17d8637375a9e5e387d_4007f79bbd89b30be582cb0cdb1292ce377f34e1_077dba53acf2e9a7a56288ee75d515afa7541b94_bcea173391bb1aa3b0978ecc33a27d447e59eb18_6a8c1be1913e7a9ccf5141a072ad595a1e9d3add cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google Apache-2.0
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.2-r3
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9a5f372a5290cc4353e0b0ca71888951
diff --git a/metadata/md5-cache/chromeos-base/nnapi-0.0.2-r5 b/metadata/md5-cache/chromeos-base/nnapi-0.0.2-r5
new file mode 100644
index 0000000..4ee7d83
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/nnapi-0.0.2-r5
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS support utils for Android Neural Network API
+EAPI=7
+HOMEPAGE=https://developer.android.com/ndk/guides/neuralnetworks
+IUSE=cros_host cros_workon_tree_a3d79a5641e6cda7da95a9316f5d29998cc84865_f735b73d41b17c5c309f6dc632a9491131208d47_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7b1902bfd171c628068c91fc41e253d0c08df363_050ba80727394b4c61589662e7e89333a0022cd9_81192a924ab8c0627a67df8adaf8e6f68bd1d19b_3628c32fe8388012af3c4322912f5b3bfb7c16fa_cabdebe334f485c590ae0279805a523ec5021a3d_19196bf22a93d302a71314ea2ee52f398d486b0a_21bb97d372054e0717410c37ebf2528fc1afb8fa cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_a3d79a5641e6cda7da95a9316f5d29998cc84865_f735b73d41b17c5c309f6dc632a9491131208d47_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7b1902bfd171c628068c91fc41e253d0c08df363_050ba80727394b4c61589662e7e89333a0022cd9_81192a924ab8c0627a67df8adaf8e6f68bd1d19b_3628c32fe8388012af3c4322912f5b3bfb7c16fa_cabdebe334f485c590ae0279805a523ec5021a3d_19196bf22a93d302a71314ea2ee52f398d486b0a_21bb97d372054e0717410c37ebf2528fc1afb8fa cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google Apache-2.0
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.2-r5
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=54d4d9f2d18a76f48b71bc3f7d3904df
diff --git a/metadata/md5-cache/chromeos-base/nnapi-9999 b/metadata/md5-cache/chromeos-base/nnapi-9999
index c92483a..689f2f3 100644
--- a/metadata/md5-cache/chromeos-base/nnapi-9999
+++ b/metadata/md5-cache/chromeos-base/nnapi-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=732e62eecaa289c18a881c2c5e29ebc0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=00cfb18dc66f575048e3a886d1c2b6f8
diff --git a/metadata/md5-cache/chromeos-base/ocr-0.0.1-r66 b/metadata/md5-cache/chromeos-base/ocr-0.0.1-r66
deleted file mode 100644
index 28500d9..0000000
--- a/metadata/md5-cache/chromeos-base/ocr-0.0.1-r66
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=app-text/tesseract:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Optical Character Recognition service for Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/ocr/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e3d4b675a41bab4b0a7d7f2cc58a3113f54af7fd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e3d4b675a41bab4b0a7d7f2cc58a3113f54af7fd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=app-text/tesseract:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=c9cfbdb08ab7f0cb246b8a9fcc4daf60
diff --git a/metadata/md5-cache/chromeos-base/ocr-0.0.1-r93 b/metadata/md5-cache/chromeos-base/ocr-0.0.1-r93
new file mode 100644
index 0000000..d4a3f3c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ocr-0.0.1-r93
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=app-text/tesseract:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Optical Character Recognition service for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/ocr/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7a4ade5fca3b0a52f9342ae6884dbdded65e4d9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7a4ade5fca3b0a52f9342ae6884dbdded65e4d9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=app-text/tesseract:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=5d47315df09a276dfb7b2c788789ad0c
diff --git a/metadata/md5-cache/chromeos-base/ocr-9999 b/metadata/md5-cache/chromeos-base/ocr-9999
index 6c55e8e..4371f01 100644
--- a/metadata/md5-cache/chromeos-base/ocr-9999
+++ b/metadata/md5-cache/chromeos-base/ocr-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=app-text/tesseract:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=ff0977bafd016d8c9d5b52dfbec77af7
diff --git a/metadata/md5-cache/chromeos-base/oobe_config-0.0.1-r461 b/metadata/md5-cache/chromeos-base/oobe_config-0.0.1-r461
deleted file mode 100644
index 1cdc191..0000000
--- a/metadata/md5-cache/chromeos-base/oobe_config-0.0.1-r461
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= sys-apps/dbus:= chromeos-base/power_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Provides utilities to save and restore OOBE config.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/oobe_config/
-IUSE=tpm tpm2 cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_7baa8fedddc9a906490da6057fd2cf6c54eb6207_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_7baa8fedddc9a906490da6057fd2cf6c54eb6207_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=?? ( tpm tpm2 )
-SLOT=0/0.0.1-r461
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=0b222be8724ffe7fec6fc4539ffdca2b
diff --git a/metadata/md5-cache/chromeos-base/oobe_config-0.0.1-r515 b/metadata/md5-cache/chromeos-base/oobe_config-0.0.1-r515
new file mode 100644
index 0000000..2547466
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/oobe_config-0.0.1-r515
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= sys-apps/dbus:= chromeos-base/power_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Provides utilities to save and restore OOBE config.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/oobe_config/
+IUSE=tpm tpm_dynamic tpm2 cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_cb36847706f93a8c9e145e491e53b2e901931aac_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_cb36847706f93a8c9e145e491e53b2e901931aac_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
+SLOT=0/0.0.1-r515
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=acc53e6df2e6af69b2dd8e0bf6012a11
diff --git a/metadata/md5-cache/chromeos-base/oobe_config-9999 b/metadata/md5-cache/chromeos-base/oobe_config-9999
index 93b10dc..57f3fd3 100644
--- a/metadata/md5-cache/chromeos-base/oobe_config-9999
+++ b/metadata/md5-cache/chromeos-base/oobe_config-9999
@@ -4,12 +4,12 @@
 DESCRIPTION=Provides utilities to save and restore OOBE config.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/oobe_config/
-IUSE=tpm tpm2 cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=tpm tpm_dynamic tpm2 cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=?? ( tpm tpm2 )
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=bf8ff5939d44e9f31cf89d9f2e442495
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=6ff46b26b4d90a831381f4a3f674c2df
diff --git a/metadata/md5-cache/chromeos-base/openssh-server-init-0.0.1 b/metadata/md5-cache/chromeos-base/openssh-server-init-0.0.1
index 399d3ed..7b94339 100644
--- a/metadata/md5-cache/chromeos-base/openssh-server-init-0.0.1
+++ b/metadata/md5-cache/chromeos-base/openssh-server-init-0.0.1
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 RDEPEND=chromeos-base/chromeos-sshd-init net-misc/openssh virtual/chromeos-firewall
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=36546c4da3d5e0823f01df16f5e187ec
diff --git a/metadata/md5-cache/chromeos-base/openssh-server-init-0.0.1-r25 b/metadata/md5-cache/chromeos-base/openssh-server-init-0.0.1-r25
index 399d3ed..7b94339 100644
--- a/metadata/md5-cache/chromeos-base/openssh-server-init-0.0.1-r25
+++ b/metadata/md5-cache/chromeos-base/openssh-server-init-0.0.1-r25
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 RDEPEND=chromeos-base/chromeos-sshd-init net-misc/openssh virtual/chromeos-firewall
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=36546c4da3d5e0823f01df16f5e187ec
diff --git a/metadata/md5-cache/chromeos-base/os_install_service-1.0.0-r12 b/metadata/md5-cache/chromeos-base/os_install_service-1.0.0-r12
new file mode 100644
index 0000000..7b77b1e
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/os_install_service-1.0.0-r12
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=chromeos-base/system_api:= =dev-rust/anyhow-1.0*:= =dev-rust/chrono-0.4*:= =dev-rust/crossbeam-channel-0.5*:= =dev-rust/dbus-0.8*:= =dev-rust/lazy_static-1.4*:= =dev-rust/log-0.4*:= =dev-rust/nix-0.19*:= =dev-rust/serde-1.0*:= =dev-rust/serde_json-1.0*:= dev-rust/sys_util:= =dev-rust/tempfile-3*:= =dev-rust/thiserror-1.0*:= >=virtual/rust-1.39.0:=
+EAPI=7
+IUSE=test cros_host cros_workon_tree_a2de5deab76033ac1ea413e4494113ef249fa663 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/chromeos-installer sys-apps/util-linux sys-block/parted virtual/tmpfiles
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/1.0.0-r12
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1fd9c785eb6c0d4f177edd81a1dd1569
diff --git a/metadata/md5-cache/chromeos-base/os_install_service-1.0.0-r8 b/metadata/md5-cache/chromeos-base/os_install_service-1.0.0-r8
deleted file mode 100644
index 82c3f95..0000000
--- a/metadata/md5-cache/chromeos-base/os_install_service-1.0.0-r8
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/system_api:= =dev-rust/anyhow-1.0*:= =dev-rust/chrono-0.4*:= =dev-rust/crossbeam-channel-0.5*:= =dev-rust/dbus-0.8*:= =dev-rust/lazy_static-1.4*:= =dev-rust/log-0.4*:= =dev-rust/nix-0.19*:= =dev-rust/serde-1.0*:= =dev-rust/serde_json-1.0*:= dev-rust/sys_util:= =dev-rust/tempfile-3*:= =dev-rust/thiserror-1.0*:= >=virtual/rust-1.39.0:=
-EAPI=7
-IUSE=test cros_host cros_workon_tree_63583eb163b76ac260df1aed8cdd71950f87b8b3 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/chromeos-installer sys-apps/util-linux sys-block/parted virtual/tmpfiles
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/1.0.0-r8
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2151b58b8b7c0e3669c5930401f87044
diff --git a/metadata/md5-cache/chromeos-base/os_install_service-9999 b/metadata/md5-cache/chromeos-base/os_install_service-9999
index 59f9f0e..7cfc26f 100644
--- a/metadata/md5-cache/chromeos-base/os_install_service-9999
+++ b/metadata/md5-cache/chromeos-base/os_install_service-9999
@@ -9,5 +9,5 @@
 RDEPEND=chromeos-base/chromeos-installer sys-apps/util-linux sys-block/parted virtual/tmpfiles
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2e4734716584f7697ddf7e755480eb00
diff --git a/metadata/md5-cache/chromeos-base/p2p-0.0.1-r3326 b/metadata/md5-cache/chromeos-base/p2p-0.0.1-r3326
deleted file mode 100644
index 5a89943..0000000
--- a/metadata/md5-cache/chromeos-base/p2p-0.0.1-r3326
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/glib:= net-dns/avahi-daemon:= net-firewall/iptables:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Chromium OS P2P
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/p2p/
-IUSE=cros-debug cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_4a45ea46c086c0a4b6eeff7eb1365097acd44641_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_4a45ea46c086c0a4b6eeff7eb1365097acd44641_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/glib:= net-dns/avahi-daemon:= net-firewall/iptables:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=7715b09d00bd41b07409b0ead1a0302d
diff --git a/metadata/md5-cache/chromeos-base/p2p-0.0.1-r3369 b/metadata/md5-cache/chromeos-base/p2p-0.0.1-r3369
new file mode 100644
index 0000000..5ed44b4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/p2p-0.0.1-r3369
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/glib:= net-dns/avahi-daemon:= net-firewall/iptables:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Chromium OS P2P
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/p2p/
+IUSE=cros-debug cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_3ade91619d5fdde2f7250019dc6639c359ae99c0_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_3ade91619d5fdde2f7250019dc6639c359ae99c0_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/glib:= net-dns/avahi-daemon:= net-firewall/iptables:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=35ec7dc633b856a1cb3419ba60da8f25
diff --git a/metadata/md5-cache/chromeos-base/p2p-9999 b/metadata/md5-cache/chromeos-base/p2p-9999
index 9fa828b..8833e5f 100644
--- a/metadata/md5-cache/chromeos-base/p2p-9999
+++ b/metadata/md5-cache/chromeos-base/p2p-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/glib:= net-dns/avahi-daemon:= net-firewall/iptables:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=6ca1aa2faac464e989ad11c15375f012
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=a775b696fbaeeeb9936734c25d0c3910
diff --git a/metadata/md5-cache/chromeos-base/patchpanel-0.0.2-r277 b/metadata/md5-cache/chromeos-base/patchpanel-0.0.2-r277
deleted file mode 100644
index 0e31bb5..0000000
--- a/metadata/md5-cache/chromeos-base/patchpanel-0.0.2-r277
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=dev-libs/protobuf:= !chromeos-base/arc-networkd chromeos-base/shill-net:= chromeos-base/system_api:=[fuzzer?] chromeos-base/session_manager-client:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Patchpanel network connectivity management daemon
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/patchpanel/
-IUSE=fuzzer arcvm jetstream_routing cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_ae86a7d3ab814f4089a041bdf224a46af7c4b4bf_1ed695b253a6cd0f70c4ceccdfe60c38e9bed7b8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_ae86a7d3ab814f4089a041bdf224a46af7c4b4bf_1ed695b253a6cd0f70c4ceccdfe60c38e9bed7b8_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-libs/protobuf:= !chromeos-base/arc-networkd chromeos-base/shill-net:= chromeos-base/system_api:=[fuzzer?] chromeos-base/shill net-firewall/iptables net-misc/bridge-utils sys-apps/iproute2 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.2-r277
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=839e27b9bfe311f721c057c60a7018e5
diff --git a/metadata/md5-cache/chromeos-base/patchpanel-0.0.2-r335 b/metadata/md5-cache/chromeos-base/patchpanel-0.0.2-r335
new file mode 100644
index 0000000..01d5a04
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/patchpanel-0.0.2-r335
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=dev-libs/protobuf:= !chromeos-base/arc-networkd chromeos-base/shill-net:= chromeos-base/system_api:=[fuzzer?] chromeos-base/session_manager-client:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Patchpanel network connectivity management daemon
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/patchpanel/
+IUSE=fuzzer arcvm jetstream_routing cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_199dfc58f8a75896a8500c6a738774ec7478f797_0180513536a7819b5f1dd6966f004bcb713392d5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_199dfc58f8a75896a8500c6a738774ec7478f797_0180513536a7819b5f1dd6966f004bcb713392d5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= !chromeos-base/arc-networkd chromeos-base/shill-net:= chromeos-base/system_api:=[fuzzer?] chromeos-base/shill net-firewall/iptables net-misc/bridge-utils sys-apps/iproute2 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.2-r335
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=db12611a3cb01e9bfbe3ec5b3c593a75
diff --git a/metadata/md5-cache/chromeos-base/patchpanel-9999 b/metadata/md5-cache/chromeos-base/patchpanel-9999
index 26758db..0ac09cf 100644
--- a/metadata/md5-cache/chromeos-base/patchpanel-9999
+++ b/metadata/md5-cache/chromeos-base/patchpanel-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=dev-libs/protobuf:= !chromeos-base/arc-networkd chromeos-base/shill-net:= chromeos-base/system_api:=[fuzzer?] chromeos-base/shill net-firewall/iptables net-misc/bridge-utils sys-apps/iproute2 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=88f3e5848761aeeaff19a7524d594a06
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=c00d01cae812ebbfdeab875f4eb4ea16
diff --git a/metadata/md5-cache/chromeos-base/patchpanel-client-0.0.1-r149 b/metadata/md5-cache/chromeos-base/patchpanel-client-0.0.1-r149
deleted file mode 100644
index 8b4cfdc9..0000000
--- a/metadata/md5-cache/chromeos-base/patchpanel-client-0.0.1-r149
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/protobuf:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Patchpanel network connectivity management D-Bus client
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/patchpanel/dbus/
-IUSE=fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_ae86a7d3ab814f4089a041bdf224a46af7c4b4bf_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_ae86a7d3ab814f4089a041bdf224a46af7c4b4bf_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!<chromeos-base/patchpanel-0.0.2 dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r149
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=929c84aac3af025dc332194c31325e91
diff --git a/metadata/md5-cache/chromeos-base/patchpanel-client-0.0.1-r201 b/metadata/md5-cache/chromeos-base/patchpanel-client-0.0.1-r201
new file mode 100644
index 0000000..e713e76
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/patchpanel-client-0.0.1-r201
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/protobuf:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Patchpanel network connectivity management D-Bus client
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/patchpanel/dbus/
+IUSE=fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_199dfc58f8a75896a8500c6a738774ec7478f797_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_199dfc58f8a75896a8500c6a738774ec7478f797_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!<chromeos-base/patchpanel-0.0.2 dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r201
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=40ac8752b01696c0fd5014e30ed81ee6
diff --git a/metadata/md5-cache/chromeos-base/patchpanel-client-9999 b/metadata/md5-cache/chromeos-base/patchpanel-client-9999
index d5b693c..779e05a 100644
--- a/metadata/md5-cache/chromeos-base/patchpanel-client-9999
+++ b/metadata/md5-cache/chromeos-base/patchpanel-client-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=!<chromeos-base/patchpanel-0.0.2 dev-libs/protobuf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e6ff2ba99369cfc45edc27c8ab474dba
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7e25d31e85b17340e4aeba3ac7b5d8a2
diff --git a/metadata/md5-cache/chromeos-base/pciguard-0.0.1-r48 b/metadata/md5-cache/chromeos-base/pciguard-0.0.1-r48
deleted file mode 100644
index 5febf9e..0000000
--- a/metadata/md5-cache/chromeos-base/pciguard-0.0.1-r48
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/session_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Chrome OS External PCI device security daemon
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/pciguard/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8f8f3fd6e34931380cbc9f35bf9f2bb74d9c7c8b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8f8f3fd6e34931380cbc9f35bf9f2bb74d9c7c8b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=3ef1cb32801bcb48010d2e626cb4b844
diff --git a/metadata/md5-cache/chromeos-base/pciguard-0.0.1-r78 b/metadata/md5-cache/chromeos-base/pciguard-0.0.1-r78
new file mode 100644
index 0000000..deb9c7c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/pciguard-0.0.1-r78
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/session_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Chrome OS External PCI device security daemon
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/pciguard/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3cafdc3ab4b41698c9ae4a290ee3cd85cd5867d5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3cafdc3ab4b41698c9ae4a290ee3cd85cd5867d5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=9a7cf864cd55c13060d12ec78317d07d
diff --git a/metadata/md5-cache/chromeos-base/pciguard-9999 b/metadata/md5-cache/chromeos-base/pciguard-9999
index 778899d..4d18f42 100644
--- a/metadata/md5-cache/chromeos-base/pciguard-9999
+++ b/metadata/md5-cache/chromeos-base/pciguard-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=9c13828b9a52f1c715274e8db418a5f7
diff --git a/metadata/md5-cache/chromeos-base/percetto-0.1.5 b/metadata/md5-cache/chromeos-base/percetto-0.1.5
index f375b97..260d7cf 100644
--- a/metadata/md5-cache/chromeos-base/percetto-0.1.5
+++ b/metadata/md5-cache/chromeos-base/percetto-0.1.5
@@ -10,5 +10,5 @@
 RDEPEND=chromeos-base/perfetto:=
 SLOT=0
 SRC_URI=https://github.com/olvaffe/percetto/archive/v0.1.5.tar.gz -> percetto-0.1.5.tar.gz
-_eclasses_=cros-debug	d2750757005d6a444f8eb12bb9eb9944	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-debug	d2750757005d6a444f8eb12bb9eb9944	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6b47f446513b10369e48a50bb7a58014
diff --git a/metadata/md5-cache/chromeos-base/perfetto-15.0-r3 b/metadata/md5-cache/chromeos-base/perfetto-15.0-r3
deleted file mode 100644
index 67fb11d..0000000
--- a/metadata/md5-cache/chromeos-base/perfetto-15.0-r3
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-util/gn dev-util/ninja dev-libs/protobuf dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup unpack
-DEPEND=sys-apps/baselayout
-DESCRIPTION=An open-source project for performance instrumentation and tracing.
-EAPI=7
-HOMEPAGE=https://perfetto.dev/
-IUSE=cros-debug cros_host cros_workon_tree_b247aba769f84322900406f9d373e8d7856cf6e0
-KEYWORDS=*
-LICENSE=Apache-2.0
-PROPERTIES=live
-RDEPEND=virtual/tmpfiles sys-apps/baselayout
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=324862747608f8adc18efa7eb6c02b16
diff --git a/metadata/md5-cache/chromeos-base/perfetto-19.0-r1 b/metadata/md5-cache/chromeos-base/perfetto-19.0-r1
new file mode 100644
index 0000000..db9e306
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/perfetto-19.0-r1
@@ -0,0 +1,14 @@
+BDEPEND=dev-util/gn dev-util/ninja dev-libs/protobuf dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup unpack
+DEPEND=sys-apps/baselayout
+DESCRIPTION=An open-source project for performance instrumentation and tracing.
+EAPI=7
+HOMEPAGE=https://perfetto.dev/
+IUSE=cros-debug cros_host cros_workon_tree_7ff025ed4cd4ce06f725e44b5a9b4497efd6f973
+KEYWORDS=*
+LICENSE=Apache-2.0
+PROPERTIES=live
+RDEPEND=virtual/tmpfiles sys-apps/baselayout
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=b3e7cc10c883618812e607ac5e4834be
diff --git a/metadata/md5-cache/chromeos-base/perfetto-9999 b/metadata/md5-cache/chromeos-base/perfetto-9999
index 932dd20..75e65c6 100644
--- a/metadata/md5-cache/chromeos-base/perfetto-9999
+++ b/metadata/md5-cache/chromeos-base/perfetto-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=virtual/tmpfiles sys-apps/baselayout
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=4eb85bd6012a16ae4c4e913ce5d58010
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=d858757b4d9f43e661bdb4a6d083f49a
diff --git a/metadata/md5-cache/chromeos-base/perfetto_proto-15.0-r37 b/metadata/md5-cache/chromeos-base/perfetto_proto-15.0-r37
deleted file mode 100644
index ccf127b..0000000
--- a/metadata/md5-cache/chromeos-base/perfetto_proto-15.0-r37
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-go/protobuf dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
-DEPEND=dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Perfetto go proto for Chrome OS
-EAPI=7
-HOMEPAGE=https://android.googlesource.com/platform/external/perfetto/+/refs/tags/v15.0/protos/perfetto/metrics/android/
-IUSE=cros-debug cros_host cros_workon_tree_984c6b95246a821639541839c2029754912f2849_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_984c6b95246a821639541839c2029754912f2849_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=Apache-2.0
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=30ecd4a2aa4442286f6822ff4ccc227f
diff --git a/metadata/md5-cache/chromeos-base/perfetto_proto-9999 b/metadata/md5-cache/chromeos-base/perfetto_proto-9999
deleted file mode 100644
index 86d140a..0000000
--- a/metadata/md5-cache/chromeos-base/perfetto_proto-9999
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-go/protobuf dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
-DEPEND=dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Perfetto go proto for Chrome OS
-EAPI=7
-HOMEPAGE=https://android.googlesource.com/platform/external/perfetto/+/refs/tags/v15.0/protos/perfetto/metrics/android/
-IUSE=cros-debug cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
-KEYWORDS=~*
-LICENSE=Apache-2.0
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ac17e1621e88c21167d54d4fb4dbaf10
diff --git a/metadata/md5-cache/chromeos-base/perfetto_simple_producer-0.0.1-r22 b/metadata/md5-cache/chromeos-base/perfetto_simple_producer-0.0.1-r22
deleted file mode 100644
index 51097c6..0000000
--- a/metadata/md5-cache/chromeos-base/perfetto_simple_producer-0.0.1-r22
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/perfetto:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Simple Producer of Perfetto for Chromium OS.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/perfetto_simple_producer
-IUSE=cros-debug cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_651dd9220b7c1753d9be19d970253a5b5efee7de_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_651dd9220b7c1753d9be19d970253a5b5efee7de_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r22
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=08e60df71bcbf713f02bf10b35075674
diff --git a/metadata/md5-cache/chromeos-base/perfetto_simple_producer-0.0.1-r47 b/metadata/md5-cache/chromeos-base/perfetto_simple_producer-0.0.1-r47
new file mode 100644
index 0000000..9dcf4b0
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/perfetto_simple_producer-0.0.1-r47
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/perfetto:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Simple Producer of Perfetto for Chromium OS.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/perfetto_simple_producer
+IUSE=cros-debug cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_651dd9220b7c1753d9be19d970253a5b5efee7de_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_651dd9220b7c1753d9be19d970253a5b5efee7de_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r47
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=eee5069deed0c00f8dea7fb8b4a42e24
diff --git a/metadata/md5-cache/chromeos-base/perfetto_simple_producer-9999 b/metadata/md5-cache/chromeos-base/perfetto_simple_producer-9999
index 9c7d37f..2011365 100644
--- a/metadata/md5-cache/chromeos-base/perfetto_simple_producer-9999
+++ b/metadata/md5-cache/chromeos-base/perfetto_simple_producer-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ccf299ddcc43c7a483fb44912e85381d
diff --git a/metadata/md5-cache/chromeos-base/permission_broker-0.0.1-r3137 b/metadata/md5-cache/chromeos-base/permission_broker-0.0.1-r3137
deleted file mode 100644
index c19091e..0000000
--- a/metadata/md5-cache/chromeos-base/permission_broker-0.0.1-r3137
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/patchpanel-client:= sys-apps/dbus:= virtual/libusb:1 virtual/udev chromeos-base/system_api:=[fuzzer?] sys-kernel/linux-headers:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Permission Broker for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/permission_broker/
-IUSE=cfm_enabled_device fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a43dee1645ab3169cf3c0d94a0d83cf4492ec75b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a43dee1645ab3169cf3c0d94a0d83cf4492ec75b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/patchpanel-client:= sys-apps/dbus:= virtual/libusb:1 virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r3137
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=66b55102cbcfa1f22ee07c657a61ac7a
diff --git a/metadata/md5-cache/chromeos-base/permission_broker-0.0.1-r3167 b/metadata/md5-cache/chromeos-base/permission_broker-0.0.1-r3167
new file mode 100644
index 0000000..e7a2ff3
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/permission_broker-0.0.1-r3167
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/patchpanel-client:= sys-apps/dbus:= virtual/libusb:1 virtual/udev chromeos-base/system_api:=[fuzzer?] sys-kernel/linux-headers:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Permission Broker for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/permission_broker/
+IUSE=cfm_enabled_device fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5597a78a68ec9dc671f7e83a6d1c496e10183e08_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5597a78a68ec9dc671f7e83a6d1c496e10183e08_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/patchpanel-client:= sys-apps/dbus:= virtual/libusb:1 virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r3167
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=74f076dc07aba851907e1cd45f4c6f66
diff --git a/metadata/md5-cache/chromeos-base/permission_broker-9999 b/metadata/md5-cache/chromeos-base/permission_broker-9999
index fac9eea..4c0f5b8 100644
--- a/metadata/md5-cache/chromeos-base/permission_broker-9999
+++ b/metadata/md5-cache/chromeos-base/permission_broker-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/patchpanel-client:= sys-apps/dbus:= virtual/libusb:1 virtual/udev >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=9a619de5bdf337ee4118e4afe9e5c080
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=220814e474c6545a80e25c1a93a9c138
diff --git a/metadata/md5-cache/chromeos-base/permission_broker-client-0.0.1-r1885 b/metadata/md5-cache/chromeos-base/permission_broker-client-0.0.1-r1885
deleted file mode 100644
index ab4c6ec..0000000
--- a/metadata/md5-cache/chromeos-base/permission_broker-client-0.0.1-r1885
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=cros_host? ( chromeos-base/chromeos-dbus-bindings:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Permission Broker DBus client library for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/permission_broker/
-IUSE=cros_host cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a43dee1645ab3169cf3c0d94a0d83cf4492ec75b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a43dee1645ab3169cf3c0d94a0d83cf4492ec75b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r1885
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4d6361fc0ac89e77dfde7776a92e4910
diff --git a/metadata/md5-cache/chromeos-base/permission_broker-client-0.0.1-r1914 b/metadata/md5-cache/chromeos-base/permission_broker-client-0.0.1-r1914
new file mode 100644
index 0000000..701f24b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/permission_broker-client-0.0.1-r1914
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=cros_host? ( chromeos-base/chromeos-dbus-bindings:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Permission Broker DBus client library for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/permission_broker/
+IUSE=cros_host cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5597a78a68ec9dc671f7e83a6d1c496e10183e08_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5597a78a68ec9dc671f7e83a6d1c496e10183e08_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r1914
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=170df71704f898b56f446eb550dae8c9
diff --git a/metadata/md5-cache/chromeos-base/permission_broker-client-9999 b/metadata/md5-cache/chromeos-base/permission_broker-client-9999
index 9153729..220907d 100644
--- a/metadata/md5-cache/chromeos-base/permission_broker-client-9999
+++ b/metadata/md5-cache/chromeos-base/permission_broker-client-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=47c7b468d0dab08c7d9214e59215ed9b
diff --git a/metadata/md5-cache/chromeos-base/policy-go-proto-0.0.1-r209 b/metadata/md5-cache/chromeos-base/policy-go-proto-0.0.1-r209
deleted file mode 100644
index d5847f2..0000000
--- a/metadata/md5-cache/chromeos-base/policy-go-proto-0.0.1-r209
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst setup test unpack
-DEPEND=>=chromeos-base/protofiles-0.0.44:= dev-go/protobuf:= dev-libs/protobuf:= dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS policy protocol buffer binding for go
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/policy_proto
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_f6e985347a838bbbdd2997e97c4b4940571f2dd2_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_f6e985347a838bbbdd2997e97c4b4940571f2dd2_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r209
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b880ad6094370d857cdeafad8f9aacc3
diff --git a/metadata/md5-cache/chromeos-base/policy-go-proto-0.0.1-r235 b/metadata/md5-cache/chromeos-base/policy-go-proto-0.0.1-r235
new file mode 100644
index 0000000..9fb5a6e
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/policy-go-proto-0.0.1-r235
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst setup test unpack
+DEPEND=>=chromeos-base/protofiles-0.0.48:= dev-go/protobuf:= dev-libs/protobuf:= dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS policy protocol buffer binding for go
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/policy_proto
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_f6e985347a838bbbdd2997e97c4b4940571f2dd2_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_f6e985347a838bbbdd2997e97c4b4940571f2dd2_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r235
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a645746a6a4d8d8dc42ff306971d8fac
diff --git a/metadata/md5-cache/chromeos-base/policy-go-proto-9999 b/metadata/md5-cache/chromeos-base/policy-go-proto-9999
index e53cbd4..ab22c58 100644
--- a/metadata/md5-cache/chromeos-base/policy-go-proto-9999
+++ b/metadata/md5-cache/chromeos-base/policy-go-proto-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst setup test unpack
-DEPEND=>=chromeos-base/protofiles-0.0.44:= dev-go/protobuf:= dev-libs/protobuf:= dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=>=chromeos-base/protofiles-0.0.48:= dev-go/protobuf:= dev-libs/protobuf:= dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Chrome OS policy protocol buffer binding for go
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/policy_proto
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=88c2962402b880f92b44c8941d189b04
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4f32b9a3bd052c628fed6beb64e67592
diff --git a/metadata/md5-cache/chromeos-base/policy-testserver-0.0.1 b/metadata/md5-cache/chromeos-base/policy-testserver-0.0.1
index 14ec628..220870d 100644
--- a/metadata/md5-cache/chromeos-base/policy-testserver-0.0.1
+++ b/metadata/md5-cache/chromeos-base/policy-testserver-0.0.1
@@ -7,5 +7,5 @@
 PROPERTIES=live
 RDEPEND=dev-python/protobuf-python
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=1b70b4c3582c4137f24d8bdbaa7bec78
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=bf25a743b308181504d7bb23eb738cc3
diff --git a/metadata/md5-cache/chromeos-base/policy-testserver-0.0.1-r10 b/metadata/md5-cache/chromeos-base/policy-testserver-0.0.1-r10
new file mode 100644
index 0000000..220870d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/policy-testserver-0.0.1-r10
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile install setup unpack
+DEPEND=dev-libs/protobuf
+DESCRIPTION=Dependencies needed by the policy_testserver
+EAPI=6
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-python/protobuf-python
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=bf25a743b308181504d7bb23eb738cc3
diff --git a/metadata/md5-cache/chromeos-base/policy-testserver-0.0.1-r9 b/metadata/md5-cache/chromeos-base/policy-testserver-0.0.1-r9
deleted file mode 100644
index 14ec628..0000000
--- a/metadata/md5-cache/chromeos-base/policy-testserver-0.0.1-r9
+++ /dev/null
@@ -1,11 +0,0 @@
-DEFINED_PHASES=compile install setup unpack
-DEPEND=dev-libs/protobuf
-DESCRIPTION=Dependencies needed by the policy_testserver
-EAPI=6
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-python/protobuf-python
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=1b70b4c3582c4137f24d8bdbaa7bec78
diff --git a/metadata/md5-cache/chromeos-base/policy_utils-0.0.1-r212 b/metadata/md5-cache/chromeos-base/policy_utils-0.0.1-r212
deleted file mode 100644
index dd69b857..0000000
--- a/metadata/md5-cache/chromeos-base/policy_utils-0.0.1-r212
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/system_api >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Device-policy-management library and tool for Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/policy_utils/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_bf58ace8c926195d4bb88f6341df4c0acccfd003_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_bf58ace8c926195d4bb88f6341df4c0acccfd003_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=088d99af2c5fec85f3a1e8e68233e6ee
diff --git a/metadata/md5-cache/chromeos-base/policy_utils-0.0.1-r238 b/metadata/md5-cache/chromeos-base/policy_utils-0.0.1-r238
new file mode 100644
index 0000000..e0f6fb3
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/policy_utils-0.0.1-r238
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/system_api >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Device-policy-management library and tool for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/policy_utils/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1e1e0c6f92d27a5c185ea1ba3cdfc88575ce4182_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1e1e0c6f92d27a5c185ea1ba3cdfc88575ce4182_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=17c3ebb51711662ecf832a57e274039d
diff --git a/metadata/md5-cache/chromeos-base/policy_utils-9999 b/metadata/md5-cache/chromeos-base/policy_utils-9999
index 1a7e201..8f152e9 100644
--- a/metadata/md5-cache/chromeos-base/policy_utils-9999
+++ b/metadata/md5-cache/chromeos-base/policy_utils-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=66de907fb8c0c3ab0fc366d16a6de9b5
diff --git a/metadata/md5-cache/chromeos-base/power_manager-0.0.2-r3790 b/metadata/md5-cache/chromeos-base/power_manager-0.0.2-r3790
deleted file mode 100644
index a9bb2f1..0000000
--- a/metadata/md5-cache/chromeos-base/power_manager-0.0.2-r3790
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig virtual/pkgconfig
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/libnl:= dev-libs/protobuf:= dev-libs/re2:= cras? ( media-sound/adhd:= ) virtual/udev cellular? ( net-misc/modemmanager-next:= ) chromeos-base/chromeos-ec-headers:= chromeos-base/system_api:=[fuzzer?] qrtr? ( sys-apps/upstart:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Power Manager for Chromium OS
-EAPI=7
-HOMEPAGE=http://dev.chromium.org/chromium-os/packages/power_manager
-IUSE=-als buffet cellular +cras cros_embedded +display_backlight fuzzer generated_cros_config -has_keyboard_backlight iioservice -keyboard_includes_side_buttons keyboard_convertible_no_side_buttons -legacy_power_button -mosys_eventlog +powerknobs systemd +touchpad_wakeup -touchscreen_wakeup unibuild wilco qrtr cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_47f6ceba57219100723f2671e0d507bd7605f22f_aa0612733aca2d5ffa65470f07408228b473ebdb_da73aae6d89c8e69c3740af612610792ce42b1a8_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_71cce620cf464ad17334cff4d450f8805cd6c507_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_47f6ceba57219100723f2671e0d507bd7605f22f_aa0612733aca2d5ffa65470f07408228b473ebdb_da73aae6d89c8e69c3740af612610792ce42b1a8_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_71cce620cf464ad17334cff4d450f8805cd6c507_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/libnl:= dev-libs/protobuf:= dev-libs/re2:= cras? ( media-sound/adhd:= ) virtual/udev cellular? ( net-misc/modemmanager-next:= ) chromeos-base/ec-utils iioservice? ( chromeos-base/libiioservice_ipc:= ) mosys_eventlog? ( sys-apps/mosys ) qrtr? ( net-libs/libqrtr:= ) virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=?? ( keyboard_includes_side_buttons keyboard_convertible_no_side_buttons )
-SLOT=0/0.0.2-r3790
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=46830bd9f8d71aac104a20139b68137d
diff --git a/metadata/md5-cache/chromeos-base/power_manager-0.0.2-r3919 b/metadata/md5-cache/chromeos-base/power_manager-0.0.2-r3919
new file mode 100644
index 0000000..9be64d4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/power_manager-0.0.2-r3919
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig virtual/pkgconfig
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/libec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager-client:= dev-libs/libnl:= dev-libs/protobuf:= dev-libs/re2:= cras? ( media-sound/adhd:= ) virtual/udev cellular? ( net-misc/modemmanager-next:= ) chromeos-base/chromeos-ec-headers:= chromeos-base/system_api:=[fuzzer?] qrtr? ( sys-apps/upstart:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Power Manager for Chromium OS
+EAPI=7
+HOMEPAGE=http://dev.chromium.org/chromium-os/packages/power_manager
+IUSE=-als buffet cellular +cras cros_embedded +display_backlight fuzzer -has_keyboard_backlight iioservice -keyboard_includes_side_buttons keyboard_convertible_no_side_buttons -legacy_power_button -mosys_eventlog +powerknobs systemd +touchpad_wakeup -touchscreen_wakeup unibuild wilco qrtr cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_7e1c963c411477282f734722b3e2b5cb9f0e8462_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_14acd311021ff7b4a6e5a812cf6ef18bab1ede72_ad1fd2e4d4c9cb42d85d97fe12f958890ad6ab14_e08a2eb734e33827dffeecf57eca046cd1091373_b45ddf70409958a65c0330dc8f5702e7074f8cc7_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_7e1c963c411477282f734722b3e2b5cb9f0e8462_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_14acd311021ff7b4a6e5a812cf6ef18bab1ede72_ad1fd2e4d4c9cb42d85d97fe12f958890ad6ab14_e08a2eb734e33827dffeecf57eca046cd1091373_b45ddf70409958a65c0330dc8f5702e7074f8cc7_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/libec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager-client:= dev-libs/libnl:= dev-libs/protobuf:= dev-libs/re2:= cras? ( media-sound/adhd:= ) virtual/udev cellular? ( net-misc/modemmanager-next:= ) chromeos-base/ec-utils iioservice? ( chromeos-base/libiioservice_ipc:= ) mosys_eventlog? ( sys-apps/mosys ) qrtr? ( net-libs/libqrtr:= ) virtual/tmpfiles has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+REQUIRED_USE=?? ( keyboard_includes_side_buttons keyboard_convertible_no_side_buttons )
+SLOT=0/0.0.2-r3919
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=c648fcc6e49b9e1bff63ca3b1aa67131
diff --git a/metadata/md5-cache/chromeos-base/power_manager-9999 b/metadata/md5-cache/chromeos-base/power_manager-9999
index 8d77a15..2a1b214 100644
--- a/metadata/md5-cache/chromeos-base/power_manager-9999
+++ b/metadata/md5-cache/chromeos-base/power_manager-9999
@@ -1,15 +1,15 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig virtual/pkgconfig
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig virtual/pkgconfig
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/libnl:= dev-libs/protobuf:= dev-libs/re2:= cras? ( media-sound/adhd:= ) virtual/udev cellular? ( net-misc/modemmanager-next:= ) chromeos-base/chromeos-ec-headers:= chromeos-base/system_api:=[fuzzer?] qrtr? ( sys-apps/upstart:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/libec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager-client:= dev-libs/libnl:= dev-libs/protobuf:= dev-libs/re2:= cras? ( media-sound/adhd:= ) virtual/udev cellular? ( net-misc/modemmanager-next:= ) chromeos-base/chromeos-ec-headers:= chromeos-base/system_api:=[fuzzer?] qrtr? ( sys-apps/upstart:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Power Manager for Chromium OS
 EAPI=7
 HOMEPAGE=http://dev.chromium.org/chromium-os/packages/power_manager
-IUSE=-als buffet cellular +cras cros_embedded +display_backlight fuzzer generated_cros_config -has_keyboard_backlight iioservice -keyboard_includes_side_buttons keyboard_convertible_no_side_buttons -legacy_power_button -mosys_eventlog +powerknobs systemd +touchpad_wakeup -touchscreen_wakeup unibuild wilco qrtr cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=-als buffet cellular +cras cros_embedded +display_backlight fuzzer -has_keyboard_backlight iioservice -keyboard_includes_side_buttons keyboard_convertible_no_side_buttons -legacy_power_button -mosys_eventlog +powerknobs systemd +touchpad_wakeup -touchscreen_wakeup unibuild wilco qrtr cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= >=chromeos-base/metrics-0.0.1-r3152:= dev-libs/libnl:= dev-libs/protobuf:= dev-libs/re2:= cras? ( media-sound/adhd:= ) virtual/udev cellular? ( net-misc/modemmanager-next:= ) chromeos-base/ec-utils iioservice? ( chromeos-base/libiioservice_ipc:= ) mosys_eventlog? ( sys-apps/mosys ) qrtr? ( net-libs/libqrtr:= ) virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/libec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/tpm_manager-client:= dev-libs/libnl:= dev-libs/protobuf:= dev-libs/re2:= cras? ( media-sound/adhd:= ) virtual/udev cellular? ( net-misc/modemmanager-next:= ) chromeos-base/ec-utils iioservice? ( chromeos-base/libiioservice_ipc:= ) mosys_eventlog? ( sys-apps/mosys ) qrtr? ( net-libs/libqrtr:= ) virtual/tmpfiles has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 REQUIRED_USE=?? ( keyboard_includes_side_buttons keyboard_convertible_no_side_buttons )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=175fdc8f32f6301bfc369c06c19afd3f
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=60c2b404683d7ef9b296cfad655cd9d0
diff --git a/metadata/md5-cache/chromeos-base/power_manager-client-0.0.1-r2138 b/metadata/md5-cache/chromeos-base/power_manager-client-0.0.1-r2138
deleted file mode 100644
index c1f673b..0000000
--- a/metadata/md5-cache/chromeos-base/power_manager-client-0.0.1-r2138
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=chromeos-base/chromeos-dbus-bindings:= dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Power manager DBus client library for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/power_manager/
-IUSE=cros_host cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_71cce620cf464ad17334cff4d450f8805cd6c507_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_71cce620cf464ad17334cff4d450f8805cd6c507_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r2138
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7810d7f85d9a9a74eb5fb0cc1b061c89
diff --git a/metadata/md5-cache/chromeos-base/power_manager-client-0.0.1-r2198 b/metadata/md5-cache/chromeos-base/power_manager-client-0.0.1-r2198
new file mode 100644
index 0000000..26515ba
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/power_manager-client-0.0.1-r2198
@@ -0,0 +1,14 @@
+BDEPEND=chromeos-base/chromeos-dbus-bindings:= dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Power manager DBus client library for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/power_manager/
+IUSE=cros_host cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_b45ddf70409958a65c0330dc8f5702e7074f8cc7_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_b45ddf70409958a65c0330dc8f5702e7074f8cc7_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r2198
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8733b23e0942db8717abed48e40c3df3
diff --git a/metadata/md5-cache/chromeos-base/power_manager-client-9999 b/metadata/md5-cache/chromeos-base/power_manager-client-9999
index da9bdd6..25e9141 100644
--- a/metadata/md5-cache/chromeos-base/power_manager-client-9999
+++ b/metadata/md5-cache/chromeos-base/power_manager-client-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d328bdefe390a7490c448043ed07b52f
diff --git a/metadata/md5-cache/chromeos-base/print_tools-0.0.1-r137 b/metadata/md5-cache/chromeos-base/print_tools-0.0.1-r137
deleted file mode 100644
index 61c6073..0000000
--- a/metadata/md5-cache/chromeos-base/print_tools-0.0.1-r137
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libipp:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Various tools for the native printing system.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/print_tools/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4b4fcd4dc4944c9bab8f045c666e71f7045ef67a_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4b4fcd4dc4944c9bab8f045c666e71f7045ef67a_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libipp:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r137
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2c6277d9d6d58148e7fb78d731a08f3b
diff --git a/metadata/md5-cache/chromeos-base/print_tools-0.0.1-r165 b/metadata/md5-cache/chromeos-base/print_tools-0.0.1-r165
new file mode 100644
index 0000000..37ce677
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/print_tools-0.0.1-r165
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libipp:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Various tools for the native printing system.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/print_tools/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_16ed628a2ab08887298d13700ab8efe04c8cd38f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_16ed628a2ab08887298d13700ab8efe04c8cd38f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libipp:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r165
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=37af1468454b135eec1afa4458dc45e7
diff --git a/metadata/md5-cache/chromeos-base/print_tools-9999 b/metadata/md5-cache/chromeos-base/print_tools-9999
index a46fb36..bb0f032 100644
--- a/metadata/md5-cache/chromeos-base/print_tools-9999
+++ b/metadata/md5-cache/chromeos-base/print_tools-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/libipp:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=af270c8a1070ed8ac42eabf89e6d74a3
diff --git a/metadata/md5-cache/chromeos-base/protofiles-0.0.46 b/metadata/md5-cache/chromeos-base/protofiles-0.0.46
deleted file mode 100644
index baae478..0000000
--- a/metadata/md5-cache/chromeos-base/protofiles-0.0.46
+++ /dev/null
@@ -1,12 +0,0 @@
-BDEPEND=>=dev-vcs/git-1.8.2.1[curl]
-DEFINED_PHASES=compile install setup unpack
-DESCRIPTION=Protobuf installer for the device policy proto definitions.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromium/src/components/policy
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!<chromeos-base/chromeos-chrome-82.0.4056.0_rc-r1
-SLOT=0/0.0.46
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=79ad7739f21d5296f9f02132688f8a76
diff --git a/metadata/md5-cache/chromeos-base/protofiles-0.0.49 b/metadata/md5-cache/chromeos-base/protofiles-0.0.49
new file mode 100644
index 0000000..f420298
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/protofiles-0.0.49
@@ -0,0 +1,12 @@
+BDEPEND=>=dev-vcs/git-1.8.2.1[curl]
+DEFINED_PHASES=compile install setup unpack
+DESCRIPTION=Protobuf installer for the device policy proto definitions.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromium/src/components/policy
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!<chromeos-base/chromeos-chrome-82.0.4056.0_rc-r1
+SLOT=0/0.0.49
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=51ae080534e106919d02125c9e795118
diff --git a/metadata/md5-cache/chromeos-base/pywalt-0.1.8 b/metadata/md5-cache/chromeos-base/pywalt-0.1.8
index ed1e762..30c5aba 100644
--- a/metadata/md5-cache/chromeos-base/pywalt-0.1.8
+++ b/metadata/md5-cache/chromeos-base/pywalt-0.1.8
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0
 SRC_URI=https://github.com/google/walt/archive/v0.1.8.tar.gz -> pywalt-0.1.8.tar.gz
-_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=530a9c7a46581fbf21fb25376c8ad85f
diff --git a/metadata/md5-cache/chromeos-base/pywalt-0.1.8-r2 b/metadata/md5-cache/chromeos-base/pywalt-0.1.8-r2
index ed1e762..30c5aba 100644
--- a/metadata/md5-cache/chromeos-base/pywalt-0.1.8-r2
+++ b/metadata/md5-cache/chromeos-base/pywalt-0.1.8-r2
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0
 SRC_URI=https://github.com/google/walt/archive/v0.1.8.tar.gz -> pywalt-0.1.8.tar.gz
-_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=530a9c7a46581fbf21fb25376c8ad85f
diff --git a/metadata/md5-cache/chromeos-base/quipper-0.0.1-r2670 b/metadata/md5-cache/chromeos-base/quipper-0.0.1-r2670
deleted file mode 100644
index 0dd00ef..0000000
--- a/metadata/md5-cache/chromeos-base/quipper-0.0.1-r2670
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=dev-cpp/gflags-2.0:= >=dev-libs/glib-2.30:= dev-libs/openssl:= dev-libs/protobuf:= dev-libs/re2:= dev-util/perf:= chromeos-base/protofiles:= test? ( app-shells/dash ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=quipper: chromiumos wide profiling
-EAPI=7
-HOMEPAGE=http://www.chromium.org/chromium-os/profiling-in-chromeos
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=dev-cpp/gflags-2.0:= >=dev-libs/glib-2.30:= dev-libs/openssl:= dev-libs/protobuf:= dev-libs/re2:= dev-util/perf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r2670
-SRC_URI=gs://chromeos-localmirror/distfiles/quipper-9876dd56d3d337f481812f9f7d0be632a23e3266.tar.gz
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=c7aab12874e54d54fad1e978d65fe38d
diff --git a/metadata/md5-cache/chromeos-base/quipper-0.0.1-r2695 b/metadata/md5-cache/chromeos-base/quipper-0.0.1-r2695
new file mode 100644
index 0000000..ca9ef31
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/quipper-0.0.1-r2695
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=dev-cpp/gflags-2.0:= >=dev-libs/glib-2.30:= dev-libs/openssl:= dev-libs/protobuf:= dev-libs/re2:= dev-util/perf:= chromeos-base/protofiles:= test? ( app-shells/dash ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=quipper: chromiumos wide profiling
+EAPI=7
+HOMEPAGE=http://www.chromium.org/chromium-os/profiling-in-chromeos
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=dev-cpp/gflags-2.0:= >=dev-libs/glib-2.30:= dev-libs/openssl:= dev-libs/protobuf:= dev-libs/re2:= dev-util/perf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r2695
+SRC_URI=gs://chromeos-localmirror/distfiles/quipper-9876dd56d3d337f481812f9f7d0be632a23e3266.tar.gz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6bdf6870d14cf83b8e7f735195ec63ab
diff --git a/metadata/md5-cache/chromeos-base/quipper-9999 b/metadata/md5-cache/chromeos-base/quipper-9999
index 10ff1a4..2a6ca09 100644
--- a/metadata/md5-cache/chromeos-base/quipper-9999
+++ b/metadata/md5-cache/chromeos-base/quipper-9999
@@ -11,5 +11,5 @@
 RDEPEND=>=dev-cpp/gflags-2.0:= >=dev-libs/glib-2.30:= dev-libs/openssl:= dev-libs/protobuf:= dev-libs/re2:= dev-util/perf:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
 SRC_URI=gs://chromeos-localmirror/distfiles/quipper-9876dd56d3d337f481812f9f7d0be632a23e3266.tar.gz
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8d275222cd4f15a246364a9a3f338ebc
diff --git a/metadata/md5-cache/chromeos-base/recover-duts-0.0.1-r422 b/metadata/md5-cache/chromeos-base/recover-duts-0.0.1-r422
index 61a83bb..39aeed7 100644
--- a/metadata/md5-cache/chromeos-base/recover-duts-0.0.1-r422
+++ b/metadata/md5-cache/chromeos-base/recover-duts-0.0.1-r422
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/chromeos-init
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8e17a1f8c3f9fd99457685148393fc1f
diff --git a/metadata/md5-cache/chromeos-base/recover-duts-9999 b/metadata/md5-cache/chromeos-base/recover-duts-9999
index b35b2ae..4a17742 100644
--- a/metadata/md5-cache/chromeos-base/recover-duts-9999
+++ b/metadata/md5-cache/chromeos-base/recover-duts-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/chromeos-init
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=46038a9cd8cbde2a0446bd53714fe066
diff --git a/metadata/md5-cache/chromeos-base/regions-0.0.1-r2021 b/metadata/md5-cache/chromeos-base/regions-0.0.1-r2021
deleted file mode 100644
index b1e8fc6..0000000
--- a/metadata/md5-cache/chromeos-base/regions-0.0.1-r2021
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install setup test unpack
-DESCRIPTION=Chromium OS Region Data
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/regions/
-IUSE=cros-debug cros_host cros_workon_tree_1dcc0a04496edb24287a6e3bb5411bcffbf8e9f5
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=app-misc/jq
-SLOT=0/0.0.1-r2021
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8efc1019131ee2dac11ba4e448694be6
diff --git a/metadata/md5-cache/chromeos-base/regions-0.0.1-r2023 b/metadata/md5-cache/chromeos-base/regions-0.0.1-r2023
new file mode 100644
index 0000000..5b09f92
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/regions-0.0.1-r2023
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install setup test unpack
+DESCRIPTION=Chromium OS Region Data
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/regions/
+IUSE=cros-debug cros_host cros_workon_tree_3410b31d25fb2738577b527b9d193b851e7737e3
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=app-misc/jq
+SLOT=0/0.0.1-r2023
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=22a291fde07bfed92abf6f780fdf46d4
diff --git a/metadata/md5-cache/chromeos-base/regions-9999 b/metadata/md5-cache/chromeos-base/regions-9999
index 8b49b9d..2d37679 100644
--- a/metadata/md5-cache/chromeos-base/regions-9999
+++ b/metadata/md5-cache/chromeos-base/regions-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=app-misc/jq
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=b88699ca7103ee80dc73b5344456b105
diff --git a/metadata/md5-cache/chromeos-base/rendernodehost-0.0.1-r185 b/metadata/md5-cache/chromeos-base/rendernodehost-0.0.1-r185
deleted file mode 100644
index aeb2c0a..0000000
--- a/metadata/md5-cache/chromeos-base/rendernodehost-0.0.1-r185
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=x11-libs/libdrm:= cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=host service for render node forwarding
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/rendernodehost/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-SLOT=0/0.0.1-r185
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3be77773aac89e10fac89eb8afb370ce
diff --git a/metadata/md5-cache/chromeos-base/rendernodehost-0.0.1-r210 b/metadata/md5-cache/chromeos-base/rendernodehost-0.0.1-r210
new file mode 100644
index 0000000..4ca1607
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/rendernodehost-0.0.1-r210
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=x11-libs/libdrm:= cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=host service for render node forwarding
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/rendernodehost/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+SLOT=0/0.0.1-r210
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=45bf0e6e9f2d56cdf6686e1a702da688
diff --git a/metadata/md5-cache/chromeos-base/rendernodehost-9999 b/metadata/md5-cache/chromeos-base/rendernodehost-9999
index 7d35333..7a779c6 100644
--- a/metadata/md5-cache/chromeos-base/rendernodehost-9999
+++ b/metadata/md5-cache/chromeos-base/rendernodehost-9999
@@ -9,5 +9,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live live
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=00ba41671c260b9c3c2f7b373e056891
diff --git a/metadata/md5-cache/chromeos-base/resourced-0.1.0-r28 b/metadata/md5-cache/chromeos-base/resourced-0.1.0-r28
deleted file mode 100644
index c4d0c0b..0000000
--- a/metadata/md5-cache/chromeos-base/resourced-0.1.0-r28
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/anyhow-1*:= =dev-rust/dbus-0.8*:= =dev-rust/once_cell-1.7*:= dev-rust/sys_util:= >=virtual/rust-1.39.0:= sys-apps/baselayout
-DESCRIPTION=ChromeOS Resource Management Daemon
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/resourced/
-IUSE=+seccomp cros_host cros_workon_tree_6a4d75e270c74394b3fc795e7a47070bd0c5b9a8 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=sys-apps/baselayout
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r28
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=1966037d4931465f99e0f919eef5a766
diff --git a/metadata/md5-cache/chromeos-base/resourced-0.1.0-r42 b/metadata/md5-cache/chromeos-base/resourced-0.1.0-r42
new file mode 100644
index 0000000..9b78983
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/resourced-0.1.0-r42
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/anyhow-1*:= =dev-rust/dbus-0.9*:= =dev-rust/dbus-tree-0.9*:= =dev-rust/glob-0.3*:= =dev-rust/once_cell-1.7*:= =dev-rust/regex-1.5*:= dev-rust/sys_util:= >=virtual/rust-1.39.0:= sys-apps/baselayout
+DESCRIPTION=ChromeOS Resource Management Daemon
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/resourced/
+IUSE=+seccomp cros_host cros_workon_tree_961160ce2e8a12a1638b285a02df45af520acf92 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=sys-apps/baselayout
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r42
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=ab3afc51d1ebd69d57351a13dc2f43fe
diff --git a/metadata/md5-cache/chromeos-base/resourced-9999 b/metadata/md5-cache/chromeos-base/resourced-9999
index 2068171..9557f76 100644
--- a/metadata/md5-cache/chromeos-base/resourced-9999
+++ b/metadata/md5-cache/chromeos-base/resourced-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/anyhow-1*:= =dev-rust/dbus-0.8*:= =dev-rust/once_cell-1.7*:= dev-rust/sys_util:= >=virtual/rust-1.39.0:= sys-apps/baselayout
+DEPEND==dev-rust/anyhow-1*:= =dev-rust/dbus-0.9*:= =dev-rust/dbus-tree-0.9*:= =dev-rust/glob-0.3*:= =dev-rust/once_cell-1.7*:= =dev-rust/regex-1.5*:= dev-rust/sys_util:= >=virtual/rust-1.39.0:= sys-apps/baselayout
 DESCRIPTION=ChromeOS Resource Management Daemon
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/resourced/
@@ -11,5 +11,5 @@
 RDEPEND=sys-apps/baselayout
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=231ace93095a85ed416e055a41de90a1
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=c3ab68fb4e819f5f2c70510491e0fa23
diff --git a/metadata/md5-cache/chromeos-base/rmad-0.0.1-r136 b/metadata/md5-cache/chromeos-base/rmad-0.0.1-r136
new file mode 100644
index 0000000..f973c0e
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/rmad-0.0.1-r136
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= chromeos-base/cryptohome-client:= chromeos-base/shill-client:= chromeos-base/system_api:= chromeos-base/tpm_manager-client:= chromeos-base/vboot_reference:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=ChromeOS RMA daemon.
+EAPI=7
+IUSE=cr50_onboard iioservice ti50_onboard cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_9b262e205d2e0104fbdc10f45d71aaca9a294501_ba93b35f6b12686bf293ce79255da511c89278e1_8d7c4c08fa913a8ad83002bc7a2418c265fd954f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_9b262e205d2e0104fbdc10f45d71aaca9a294501_ba93b35f6b12686bf293ce79255da511c89278e1_8d7c4c08fa913a8ad83002bc7a2418c265fd954f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= cr50_onboard? ( chromeos-base/chromeos-cr50 ) iioservice? ( chromeos-base/iioservice_simpleclient ) ti50_onboard? ( chromeos-base/chromeos-ti50 ) chromeos-base/croslog chromeos-base/hardware_verifier chromeos-base/libmems chromeos-base/runtime_probe has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles sys-apps/baselayout
+SLOT=0/0.0.1-r136
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=37ff9784a609e8988fbfbaf0fc002815
diff --git a/metadata/md5-cache/chromeos-base/rmad-0.0.1-r49 b/metadata/md5-cache/chromeos-base/rmad-0.0.1-r49
deleted file mode 100644
index 1b30336f..0000000
--- a/metadata/md5-cache/chromeos-base/rmad-0.0.1-r49
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/system_api chromeos-base/vboot_reference >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=ChromeOS RMA daemon.
-EAPI=7
-IUSE=cr50_onboard ti50_onboard cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_31bdaf2fb61472fd3a728d100c15226c71caca7b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_31bdaf2fb61472fd3a728d100c15226c71caca7b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=cr50_onboard? ( chromeos-base/chromeos-cr50 ) ti50_onboard? ( chromeos-base/chromeos-ti50 ) chromeos-base/runtime_probe >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r49
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=1654874264d3cb81483a083e95e18445
diff --git a/metadata/md5-cache/chromeos-base/rmad-9999 b/metadata/md5-cache/chromeos-base/rmad-9999
index 6d6ea57..5bac039 100644
--- a/metadata/md5-cache/chromeos-base/rmad-9999
+++ b/metadata/md5-cache/chromeos-base/rmad-9999
@@ -1,13 +1,13 @@
-BDEPEND=dev-vcs/git dev-vcs/git
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/system_api chromeos-base/vboot_reference >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= chromeos-base/cryptohome-client:= chromeos-base/shill-client:= chromeos-base/system_api:= chromeos-base/tpm_manager-client:= chromeos-base/vboot_reference:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=ChromeOS RMA daemon.
 EAPI=7
-IUSE=cr50_onboard ti50_onboard cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=cr50_onboard iioservice ti50_onboard cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=cr50_onboard? ( chromeos-base/chromeos-cr50 ) ti50_onboard? ( chromeos-base/chromeos-ti50 ) chromeos-base/runtime_probe >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/minijail:= cr50_onboard? ( chromeos-base/chromeos-cr50 ) iioservice? ( chromeos-base/iioservice_simpleclient ) ti50_onboard? ( chromeos-base/chromeos-ti50 ) chromeos-base/croslog chromeos-base/hardware_verifier chromeos-base/libmems chromeos-base/runtime_probe has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=1ada6fce03e5b379b9be12a355c958df
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=c0b120ec89f0800e8beb6720c996b485
diff --git a/metadata/md5-cache/chromeos-base/rmi4utils-1.3.6-r1 b/metadata/md5-cache/chromeos-base/rmi4utils-1.3.6-r1
index 56a5353..0da3cd8 100644
--- a/metadata/md5-cache/chromeos-base/rmi4utils-1.3.6-r1
+++ b/metadata/md5-cache/chromeos-base/rmi4utils-1.3.6-r1
@@ -6,5 +6,5 @@
 LICENSE=Apache-2.0
 SLOT=0
 SRC_URI=https://github.com/aduggan/rmi4utils/archive/v1.3.6.tar.gz -> rmi4utils-1.3.6.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5c0ac445492a2c9aa98a2c66b04311c7
diff --git a/metadata/md5-cache/chromeos-base/run_oci-0.0.1-r1108 b/metadata/md5-cache/chromeos-base/run_oci-0.0.1-r1108
deleted file mode 100644
index e00e969..0000000
--- a/metadata/md5-cache/chromeos-base/run_oci-0.0.1-r1108
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libcontainer:= sys-apps/util-linux:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Utility for running OCI-compatible containers
-EAPI=7
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a2ab6048637d439be995dd4cdc3ef91d0291fb42_6ed3b507fc245405455010e3d50c3a434a5d9548_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a2ab6048637d439be995dd4cdc3ef91d0291fb42_6ed3b507fc245405455010e3d50c3a434a5d9548_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libcontainer:= sys-apps/util-linux:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=309d4148c9f07c49c8279b62878c76c7
diff --git a/metadata/md5-cache/chromeos-base/run_oci-0.0.1-r1140 b/metadata/md5-cache/chromeos-base/run_oci-0.0.1-r1140
new file mode 100644
index 0000000..a372683
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/run_oci-0.0.1-r1140
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libcontainer:= chromeos-base/minijail:= sys-apps/util-linux:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Utility for running OCI-compatible containers
+EAPI=7
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_26b91e41e669cca59d25dedeb6fb18c470d60c4b_6f00dc3af5877e8ec4a9732ea54508e2a9a280d2_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_26b91e41e669cca59d25dedeb6fb18c470d60c4b_6f00dc3af5877e8ec4a9732ea54508e2a9a280d2_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libcontainer:= chromeos-base/minijail:= sys-apps/util-linux:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=cfdcbeaf0af3bd7c186252a67b0d2c7c
diff --git a/metadata/md5-cache/chromeos-base/run_oci-9999 b/metadata/md5-cache/chromeos-base/run_oci-9999
index 4e80ab9..1409d3a 100644
--- a/metadata/md5-cache/chromeos-base/run_oci-9999
+++ b/metadata/md5-cache/chromeos-base/run_oci-9999
@@ -1,13 +1,13 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libcontainer:= sys-apps/util-linux:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=chromeos-base/libcontainer:= chromeos-base/minijail:= sys-apps/util-linux:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Utility for running OCI-compatible containers
 EAPI=7
 IUSE=cros_host cros_workon_tree_ cros-debug cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/libcontainer:= sys-apps/util-linux:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=chromeos-base/libcontainer:= chromeos-base/minijail:= sys-apps/util-linux:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8bec23d4278001d7155199046121047d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=26ec94f6dafe4bdf7c0a5090627c13ef
diff --git a/metadata/md5-cache/chromeos-base/runtime_probe-0.0.1-r569 b/metadata/md5-cache/chromeos-base/runtime_probe-0.0.1-r569
deleted file mode 100644
index 4dac723..0000000
--- a/metadata/md5-cache/chromeos-base/runtime_probe-0.0.1-r569
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Runtime probing on device componenets.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/runtime_probe/
-IUSE=generated_cros_config unibuild asan fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_5bcd4487aea45b91806e5db9af44e6b3d9290c13_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_aa0612733aca2d5ffa65470f07408228b473ebdb_5bcd4487aea45b91806e5db9af44e6b3d9290c13_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= chromeos-base/ec-utils >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r569
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=27c384b5ddd7cdd7c5ae4d2852224095
diff --git a/metadata/md5-cache/chromeos-base/runtime_probe-0.0.1-r641 b/metadata/md5-cache/chromeos-base/runtime_probe-0.0.1-r641
new file mode 100644
index 0000000..5f1cbc6
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/runtime_probe-0.0.1-r641
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/debugd-client:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vboot_reference:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Runtime probing on device componenets.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/runtime_probe/
+IUSE=asan fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_c49e61abb0d60510e8ca41e657656cdd950c50e9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_c49e61abb0d60510e8ca41e657656cdd950c50e9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/ec-utils has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r641
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=c0baee4d4b5423c1c1223e6bbd943aa6
diff --git a/metadata/md5-cache/chromeos-base/runtime_probe-9999 b/metadata/md5-cache/chromeos-base/runtime_probe-9999
index 3f716a3..0776e61 100644
--- a/metadata/md5-cache/chromeos-base/runtime_probe-9999
+++ b/metadata/md5-cache/chromeos-base/runtime_probe-9999
@@ -1,14 +1,14 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git virtual/pkgconfig
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/debugd-client:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vboot_reference:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Runtime probing on device componenets.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/runtime_probe/
-IUSE=generated_cros_config unibuild asan fuzzer cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=asan fuzzer cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config:= ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools:= chromeos-base/ec-utils >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/chromeos-config-tools:= chromeos-base/ec-utils has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=0fc686d2bfb544576a29b36e1ce9aec0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=fbf7adb56a48f2d095defdaf4777470f
diff --git a/metadata/md5-cache/chromeos-base/sample-dlc-1.0.0 b/metadata/md5-cache/chromeos-base/sample-dlc-1.0.0
index 2cacaac..9cd2256 100644
--- a/metadata/md5-cache/chromeos-base/sample-dlc-1.0.0
+++ b/metadata/md5-cache/chromeos-base/sample-dlc-1.0.0
@@ -2,10 +2,10 @@
 DESCRIPTION=A sample DLC
 EAPI=6
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/dlcservice
-IUSE=dlc dlc_test
+IUSE=dlc
 KEYWORDS=*
 LICENSE=BSD-Google
-REQUIRED_USE=dlc dlc_test
+REQUIRED_USE=dlc
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	dlc	7fff3565c77657ab37a6955949c208a7
-_md5_=b4d090714372ee2e10aa8fc08768b217
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	dlc	4b31053498fd5ebfac3e3b4a1ccc8bb9
+_md5_=4838893931913f5770cd4f08d2c5f676
diff --git a/metadata/md5-cache/chromeos-base/sample-dlc-1.0.0-r3 b/metadata/md5-cache/chromeos-base/sample-dlc-1.0.0-r3
deleted file mode 100644
index 2cacaac..0000000
--- a/metadata/md5-cache/chromeos-base/sample-dlc-1.0.0-r3
+++ /dev/null
@@ -1,11 +0,0 @@
-DEFINED_PHASES=install unpack
-DESCRIPTION=A sample DLC
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/dlcservice
-IUSE=dlc dlc_test
-KEYWORDS=*
-LICENSE=BSD-Google
-REQUIRED_USE=dlc dlc_test
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	dlc	7fff3565c77657ab37a6955949c208a7
-_md5_=b4d090714372ee2e10aa8fc08768b217
diff --git a/metadata/md5-cache/chromeos-base/sample-dlc-1.0.0-r5 b/metadata/md5-cache/chromeos-base/sample-dlc-1.0.0-r5
new file mode 100644
index 0000000..9cd2256
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/sample-dlc-1.0.0-r5
@@ -0,0 +1,11 @@
+DEFINED_PHASES=install unpack
+DESCRIPTION=A sample DLC
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/dlcservice
+IUSE=dlc
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=dlc
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	dlc	4b31053498fd5ebfac3e3b4a1ccc8bb9
+_md5_=4838893931913f5770cd4f08d2c5f676
diff --git a/metadata/md5-cache/chromeos-base/screen-capture-utils-0.0.1-r130 b/metadata/md5-cache/chromeos-base/screen-capture-utils-0.0.1-r130
new file mode 100644
index 0000000..338ded6
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/screen-capture-utils-0.0.1-r130
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/metrics !chromeos-base/screenshot media-libs/libpng:0= media-libs/minigbm:= net-libs/libvncserver x11-libs/libdrm:= virtual/opengles x11-drivers/opengles-headers >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Utilities for screen capturing
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/screen-capture-utils/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_13b981873aeeddde042e6acfa4cd3a89e878984e_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_13b981873aeeddde042e6acfa4cd3a89e878984e_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/metrics !chromeos-base/screenshot media-libs/libpng:0= media-libs/minigbm:= net-libs/libvncserver x11-libs/libdrm:= virtual/opengles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r130
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=551710d5ab4c30c20f56a134261fb0b9
diff --git a/metadata/md5-cache/chromeos-base/screen-capture-utils-0.0.1-r88 b/metadata/md5-cache/chromeos-base/screen-capture-utils-0.0.1-r88
deleted file mode 100644
index 536faba..0000000
--- a/metadata/md5-cache/chromeos-base/screen-capture-utils-0.0.1-r88
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/metrics !chromeos-base/screenshot media-libs/libpng:0= media-libs/minigbm:= net-libs/libvncserver x11-libs/libdrm:= virtual/opengles x11-drivers/opengles-headers >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Utilities for screen capturing
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/screen-capture-utils/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4abc9fac8153750a03865f00a60126fc46c47d5f_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4abc9fac8153750a03865f00a60126fc46c47d5f_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/metrics !chromeos-base/screenshot media-libs/libpng:0= media-libs/minigbm:= net-libs/libvncserver x11-libs/libdrm:= virtual/opengles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r88
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b0754a0193208f1d9814983c09a5cd9c
diff --git a/metadata/md5-cache/chromeos-base/screen-capture-utils-9999 b/metadata/md5-cache/chromeos-base/screen-capture-utils-9999
index 943a3e4..2792a4d 100644
--- a/metadata/md5-cache/chromeos-base/screen-capture-utils-9999
+++ b/metadata/md5-cache/chromeos-base/screen-capture-utils-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/metrics !chromeos-base/screenshot media-libs/libpng:0= media-libs/minigbm:= net-libs/libvncserver x11-libs/libdrm:= virtual/opengles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=1453c047744795339594137b7d1cb88d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=184ef971c0fbfd6635bd68aba3544115
diff --git a/metadata/md5-cache/chromeos-base/sealed_storage-0.0.1-r349 b/metadata/md5-cache/chromeos-base/sealed_storage-0.0.1-r349
deleted file mode 100644
index eefd52e..0000000
--- a/metadata/md5-cache/chromeos-base/sealed_storage-0.0.1-r349
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/tpm_manager:=[test?] chromeos-base/trunks:=[test?] chromeos-base/protofiles:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Library for sealing data to device identity and state
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/sealed_storage
-IUSE=test tpm2 cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8c9a3cf268c90fb53e2168f7124f6fa15c1d9f12_8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8c9a3cf268c90fb53e2168f7124f6fa15c1d9f12_8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/tpm_manager:=[test?] chromeos-base/trunks:=[test?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=tpm2
-SLOT=0/0.0.1-r349
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=1fd23fdb278fbc26c7395c695712d951
diff --git a/metadata/md5-cache/chromeos-base/sealed_storage-0.0.1-r423 b/metadata/md5-cache/chromeos-base/sealed_storage-0.0.1-r423
new file mode 100644
index 0000000..c077033
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/sealed_storage-0.0.1-r423
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/tpm_manager:=[test?] chromeos-base/trunks:=[test?] chromeos-base/protofiles:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Library for sealing data to device identity and state
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/sealed_storage
+IUSE=test tpm2 cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_7c46cd0c49a546618e79fb5e782095f11dc54f44_659b97d9c804b358f4bd27925620d4dd1cee8fc7_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_7c46cd0c49a546618e79fb5e782095f11dc54f44_659b97d9c804b358f4bd27925620d4dd1cee8fc7_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/tpm_manager:=[test?] chromeos-base/trunks:=[test?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=tpm2
+SLOT=0/0.0.1-r423
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7b0c9d48546cece059fe235d1424b30e
diff --git a/metadata/md5-cache/chromeos-base/sealed_storage-9999 b/metadata/md5-cache/chromeos-base/sealed_storage-9999
index e5b4391..01f769a 100644
--- a/metadata/md5-cache/chromeos-base/sealed_storage-9999
+++ b/metadata/md5-cache/chromeos-base/sealed_storage-9999
@@ -11,5 +11,5 @@
 RDEPEND=chromeos-base/tpm_manager:=[test?] chromeos-base/trunks:=[test?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 REQUIRED_USE=tpm2
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=babd9b538942850f16e63ca22fcd930a
diff --git a/metadata/md5-cache/chromeos-base/secanomalyd-0.0.1-r46 b/metadata/md5-cache/chromeos-base/secanomalyd-0.0.1-r46
deleted file mode 100644
index a47fb89..0000000
--- a/metadata/md5-cache/chromeos-base/secanomalyd-0.0.1-r46
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/metrics:= chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Chrome OS security-anomaly detection daemon
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/secanomalyd/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_f5e4a2744562739c141e10842394812115ba314e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_f5e4a2744562739c141e10842394812115ba314e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/metrics:= chromeos-base/vboot_reference:= chromeos-base/minijail:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r46
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=5f4ca52c1dd5a5d72846f45d6c5eb4b0
diff --git a/metadata/md5-cache/chromeos-base/secanomalyd-0.0.1-r93 b/metadata/md5-cache/chromeos-base/secanomalyd-0.0.1-r93
new file mode 100644
index 0000000..1f29688
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/secanomalyd-0.0.1-r93
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/metrics:= chromeos-base/vboot_reference:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Chrome OS security-anomaly detection daemon
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/secanomalyd/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_6e3e35cb16d7f39ad428c8d64e4eecd4149a2370_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_6e3e35cb16d7f39ad428c8d64e4eecd4149a2370_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/metrics:= chromeos-base/vboot_reference:= chromeos-base/minijail:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r93
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=567413e462b0e2e42fdc536056b4c2ab
diff --git a/metadata/md5-cache/chromeos-base/secanomalyd-9999 b/metadata/md5-cache/chromeos-base/secanomalyd-9999
index 72327941..8eb9603 100644
--- a/metadata/md5-cache/chromeos-base/secanomalyd-9999
+++ b/metadata/md5-cache/chromeos-base/secanomalyd-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/metrics:= chromeos-base/vboot_reference:= chromeos-base/minijail:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=f0d2b08e58bf965ec5c1b3c3f60b4fff
diff --git a/metadata/md5-cache/chromeos-base/secure-erase-file-0.0.1-r929 b/metadata/md5-cache/chromeos-base/secure-erase-file-0.0.1-r929
deleted file mode 100644
index 933dc2c..0000000
--- a/metadata/md5-cache/chromeos-base/secure-erase-file-0.0.1-r929
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Secure file erasure for Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/secure_erase_file/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_1a305e65cfaf27dd42734a37eda080d40b377d6c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_1a305e65cfaf27dd42734a37eda080d40b377d6c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r929
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=533569d90882dca4622e9a9c79154d6c
diff --git a/metadata/md5-cache/chromeos-base/secure-erase-file-0.0.1-r954 b/metadata/md5-cache/chromeos-base/secure-erase-file-0.0.1-r954
new file mode 100644
index 0000000..b92ac93
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/secure-erase-file-0.0.1-r954
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Secure file erasure for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/secure_erase_file/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1a305e65cfaf27dd42734a37eda080d40b377d6c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1a305e65cfaf27dd42734a37eda080d40b377d6c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r954
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7c806134948cd8371031c1c6a5ce854b
diff --git a/metadata/md5-cache/chromeos-base/secure-erase-file-9999 b/metadata/md5-cache/chromeos-base/secure-erase-file-9999
index 16e0b01..d9c3c8e 100644
--- a/metadata/md5-cache/chromeos-base/secure-erase-file-9999
+++ b/metadata/md5-cache/chromeos-base/secure-erase-file-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e28f882626d38ec416ead8ef7efde298
diff --git a/metadata/md5-cache/chromeos-base/secure-wipe-0.0.1-r149 b/metadata/md5-cache/chromeos-base/secure-wipe-0.0.1-r149
deleted file mode 100644
index 484e773..0000000
--- a/metadata/md5-cache/chromeos-base/secure-wipe-0.0.1-r149
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Secure wipe
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/secure-wipe/
-IUSE=mmc nvme sata test cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_898687cfd878621b0aa42a27138c8a6c72210b16_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_898687cfd878621b0aa42a27138c8a6c72210b16_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=app-misc/jq sata? ( sys-apps/hdparm ) mmc? ( sys-apps/mmc-utils ) nvme? ( sys-apps/nvme-cli ) sys-apps/util-linux sys-block/fio >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r149
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=200bec7f14a10e7f7919d782ae988fb8
diff --git a/metadata/md5-cache/chromeos-base/secure-wipe-0.0.1-r174 b/metadata/md5-cache/chromeos-base/secure-wipe-0.0.1-r174
new file mode 100644
index 0000000..11a24bb
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/secure-wipe-0.0.1-r174
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Secure wipe
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/secure-wipe/
+IUSE=mmc nvme sata test cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_898687cfd878621b0aa42a27138c8a6c72210b16_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_898687cfd878621b0aa42a27138c8a6c72210b16_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=app-misc/jq sata? ( sys-apps/hdparm ) mmc? ( sys-apps/mmc-utils ) nvme? ( sys-apps/nvme-cli ) sys-apps/util-linux sys-block/fio >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r174
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5dca99c40486fc77fb18b9a18329d825
diff --git a/metadata/md5-cache/chromeos-base/secure-wipe-9999 b/metadata/md5-cache/chromeos-base/secure-wipe-9999
index 624c579..fce18ab 100644
--- a/metadata/md5-cache/chromeos-base/secure-wipe-9999
+++ b/metadata/md5-cache/chromeos-base/secure-wipe-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=app-misc/jq sata? ( sys-apps/hdparm ) mmc? ( sys-apps/mmc-utils ) nvme? ( sys-apps/nvme-cli ) sys-apps/util-linux sys-block/fio >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d1d2224392377c7015315d0a18f38f78
diff --git a/metadata/md5-cache/chromeos-base/selinux-policy-0.0.1-r339 b/metadata/md5-cache/chromeos-base/selinux-policy-0.0.1-r339
deleted file mode 100644
index 44a6dd3..0000000
--- a/metadata/md5-cache/chromeos-base/selinux-policy-0.0.1-r339
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile info install setup test unpack
-DEPEND=android-container-pi? ( chromeos-base/android-container-pi:0= ) android-vm-master? ( chromeos-base/android-vm-master:0= ) android-vm-rvc? ( chromeos-base/android-vm-rvc:0= ) android-vm-sc? ( chromeos-base/android-vm-sc:0= )
-DESCRIPTION=Chrome OS SELinux Policy Package
-EAPI=7
-IUSE=android-container-pi android-vm-master android-vm-rvc android-vm-sc selinux_audit_all selinux_develop selinux_experimental arc_first_release_n nocheck cheets_user cheets_user_64 cros_host cros_workon_tree_f51d612a47b82796078faca5ec54f1d83ef9a703
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=android-container-pi? ( chromeos-base/android-container-pi:0= ) android-vm-master? ( chromeos-base/android-vm-master:0= ) android-vm-rvc? ( chromeos-base/android-vm-rvc:0= ) android-vm-sc? ( chromeos-base/android-vm-sc:0= ) sys-apps/restorecon sys-process/audit
-SLOT=0/0.0.1-r339
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6
-_md5_=485add9177e9ae2dc00593341a3a635f
diff --git a/metadata/md5-cache/chromeos-base/selinux-policy-0.0.1-r362 b/metadata/md5-cache/chromeos-base/selinux-policy-0.0.1-r362
new file mode 100644
index 0000000..fb90b4f
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/selinux-policy-0.0.1-r362
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile info install setup test unpack
+DEPEND=android-container-pi? ( chromeos-base/android-container-pi:0= ) android-vm-master? ( chromeos-base/android-vm-master:0= ) android-vm-rvc? ( chromeos-base/android-vm-rvc:0= ) android-vm-sc? ( chromeos-base/android-vm-sc:0= )
+DESCRIPTION=Chrome OS SELinux Policy Package
+EAPI=7
+IUSE=android-container-pi android-vm-master android-vm-rvc android-vm-sc selinux_audit_all selinux_develop selinux_experimental arc_first_release_n nocheck cheets_user cheets_user_64 cros_host cros_workon_tree_d5c98bd64e1baa01304df8f9708da21afbe195af
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=android-container-pi? ( chromeos-base/android-container-pi:0= ) android-vm-master? ( chromeos-base/android-vm-master:0= ) android-vm-rvc? ( chromeos-base/android-vm-rvc:0= ) android-vm-sc? ( chromeos-base/android-vm-sc:0= ) sys-apps/restorecon sys-process/audit
+SLOT=0/0.0.1-r362
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
+_md5_=411efe4d5a9b2c9803cdc64f9f5a8018
diff --git a/metadata/md5-cache/chromeos-base/selinux-policy-9999 b/metadata/md5-cache/chromeos-base/selinux-policy-9999
index fc004c7..3a03ab8 100644
--- a/metadata/md5-cache/chromeos-base/selinux-policy-9999
+++ b/metadata/md5-cache/chromeos-base/selinux-policy-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=android-container-pi? ( chromeos-base/android-container-pi:0= ) android-vm-master? ( chromeos-base/android-vm-master:0= ) android-vm-rvc? ( chromeos-base/android-vm-rvc:0= ) android-vm-sc? ( chromeos-base/android-vm-sc:0= ) sys-apps/restorecon sys-process/audit
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
 _md5_=603abaac79191629d687d0f3ffea6749
diff --git a/metadata/md5-cache/chromeos-base/sepolicy-analyze-0.1-r1 b/metadata/md5-cache/chromeos-base/sepolicy-analyze-0.1-r1
index 80ef886..d0d7d41 100644
--- a/metadata/md5-cache/chromeos-base/sepolicy-analyze-0.1-r1
+++ b/metadata/md5-cache/chromeos-base/sepolicy-analyze-0.1-r1
@@ -7,5 +7,5 @@
 LICENSE=Apache-2.0
 SLOT=0
 SRC_URI=https://android.googlesource.com/platform/system/sepolicy/+archive/refs/tags/android-cts-9.0_r7/tools/sepolicy-analyze.tar.gz -> sepolicy-analyze-0.1.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f4fbf09808bc64c5303a32c4105f7929
diff --git a/metadata/md5-cache/chromeos-base/session_manager-client-0.0.1-r2138 b/metadata/md5-cache/chromeos-base/session_manager-client-0.0.1-r2138
deleted file mode 100644
index 428e2aa..0000000
--- a/metadata/md5-cache/chromeos-base/session_manager-client-0.0.1-r2138
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=cros_host? ( chromeos-base/chromeos-dbus-bindings:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Session manager (chromeos-login) DBus client library for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/login_manager/
-IUSE=cros_host cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_705938420b278cc4b739150868d71128b855d23e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_705938420b278cc4b739150868d71128b855d23e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!<chromeos-base/chromeos-login-0.0.2 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r2138
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=53fd797726a1f1c0cc29c4250345c9a9
diff --git a/metadata/md5-cache/chromeos-base/session_manager-client-0.0.1-r2189 b/metadata/md5-cache/chromeos-base/session_manager-client-0.0.1-r2189
new file mode 100644
index 0000000..2ffb597
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/session_manager-client-0.0.1-r2189
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=cros_host? ( chromeos-base/chromeos-dbus-bindings:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Session manager (chromeos-login) DBus client library for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/login_manager/
+IUSE=cros_host cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_996150408ecdb3786beec73b5beedde1fd9515ad_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_996150408ecdb3786beec73b5beedde1fd9515ad_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!<chromeos-base/chromeos-login-0.0.2 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r2189
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0a34b50f24c84b7b40e0d457a8c63ba1
diff --git a/metadata/md5-cache/chromeos-base/session_manager-client-9999 b/metadata/md5-cache/chromeos-base/session_manager-client-9999
index 4652309..f2b75db 100644
--- a/metadata/md5-cache/chromeos-base/session_manager-client-9999
+++ b/metadata/md5-cache/chromeos-base/session_manager-client-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=!<chromeos-base/chromeos-login-0.0.2 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=06ed55cdb097c7bd3842e43d48640167
diff --git a/metadata/md5-cache/chromeos-base/shill-0.0.5-r2702 b/metadata/md5-cache/chromeos-base/shill-0.0.5-r2702
deleted file mode 100644
index 6904cec..0000000
--- a/metadata/md5-cache/chromeos-base/shill-0.0.5-r2702
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/bootstat:= tpm? ( chromeos-base/chaps:= ) chromeos-base/minijail:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/nsswitch:= chromeos-base/patchpanel-client:= chromeos-base/shill-net:= dev-libs/re2:= cellular? ( net-dialup/ppp:= ) pppoe? ( net-dialup/ppp:= ) vpn? ( net-dialup/ppp:= ) net-dns/c-ares:= net-libs/libtirpc:= net-firewall/conntrack-tools:= net-firewall/iptables:= wifi? ( virtual/wpa_supplicant ) wired_8021x? ( virtual/wpa_supplicant ) sys-apps/rootdev:= cellular? ( net-misc/modemmanager-next:= ) chromeos-base/shill-client:= chromeos-base/power_manager-client:= chromeos-base/system_api:=[fuzzer?] vpn? ( chromeos-base/vpn-manager:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Shill Connection Manager for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/shill/
-IUSE=cellular dhcpv6 fuzzer pppoe systemd +tpm +vpn +wake_on_wifi +wifi +wired_8021x +wpa3_sae +wireguard cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_eae0546f4ee5132d4544af4770755eb05f60cba6_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_c4ab24982f8916bc61640a3912b5c1d0337b758f_767a114667a7ed090f12adcaca93e7d4ef6f034f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_eae0546f4ee5132d4544af4770755eb05f60cba6_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_c4ab24982f8916bc61640a3912b5c1d0337b758f_767a114667a7ed090f12adcaca93e7d4ef6f034f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PDEPEND=chromeos-base/patchpanel
-PROPERTIES=live live
-RDEPEND=chromeos-base/bootstat:= tpm? ( chromeos-base/chaps:= ) chromeos-base/minijail:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/nsswitch:= chromeos-base/patchpanel-client:= chromeos-base/shill-net:= dev-libs/re2:= cellular? ( net-dialup/ppp:= ) pppoe? ( net-dialup/ppp:= ) vpn? ( net-dialup/ppp:= ) net-dns/c-ares:= net-libs/libtirpc:= net-firewall/conntrack-tools:= net-firewall/iptables:= wifi? ( virtual/wpa_supplicant ) wired_8021x? ( virtual/wpa_supplicant ) sys-apps/rootdev:= cellular? ( net-misc/modemmanager-next:= ) net-misc/dhcpcd dhcpv6? ( net-misc/dhcpcd[ipv6] ) vpn? ( net-vpn/openvpn ) wireguard? ( net-vpn/wireguard-tools ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles sys-apps/baselayout
-SLOT=0/0.0.5-r2702
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=e755a769cd45903b17e1c67c2f080263
diff --git a/metadata/md5-cache/chromeos-base/shill-0.0.5-r2859 b/metadata/md5-cache/chromeos-base/shill-0.0.5-r2859
new file mode 100644
index 0000000..e332917
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/shill-0.0.5-r2859
@@ -0,0 +1,16 @@
+BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/bootstat:= chromeos-base/chaps:= chromeos-base/minijail:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/nsswitch:= chromeos-base/patchpanel-client:= chromeos-base/shill-net:= dev-libs/re2:= cellular? ( net-dialup/ppp:= ) pppoe? ( net-dialup/ppp:= ) vpn? ( net-dialup/ppp:= ) net-dns/c-ares:= net-libs/libtirpc:= net-firewall/conntrack-tools:= net-firewall/iptables:= wifi? ( virtual/wpa_supplicant ) wired_8021x? ( virtual/wpa_supplicant ) sys-apps/rootdev:= cellular? ( net-misc/modemmanager-next:= ) chromeos-base/shill-client:= chromeos-base/power_manager-client:= chromeos-base/system_api:=[fuzzer?] vpn? ( chromeos-base/vpn-manager:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Shill Connection Manager for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/shill/
+IUSE=cellular dhcpv6 fuzzer pppoe sae_h2e supplicant-next systemd +tpm +vpn +wake_on_wifi +wifi +wired_8021x +wpa3_sae +wireguard cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_113dbae63eb106c56996900e98cd65103bf297dc_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_e08a2eb734e33827dffeecf57eca046cd1091373_12321d79aa58211a0800e45f0e5c7204789cfffb_39929280520bd57dd9967f54e074e37ce6c8c7bf_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_113dbae63eb106c56996900e98cd65103bf297dc_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_e08a2eb734e33827dffeecf57eca046cd1091373_12321d79aa58211a0800e45f0e5c7204789cfffb_39929280520bd57dd9967f54e074e37ce6c8c7bf_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PDEPEND=chromeos-base/patchpanel
+PROPERTIES=live live
+RDEPEND=chromeos-base/bootstat:= chromeos-base/chaps:= chromeos-base/minijail:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/nsswitch:= chromeos-base/patchpanel-client:= chromeos-base/shill-net:= dev-libs/re2:= cellular? ( net-dialup/ppp:= ) pppoe? ( net-dialup/ppp:= ) vpn? ( net-dialup/ppp:= ) net-dns/c-ares:= net-libs/libtirpc:= net-firewall/conntrack-tools:= net-firewall/iptables:= wifi? ( virtual/wpa_supplicant ) wired_8021x? ( virtual/wpa_supplicant ) sys-apps/rootdev:= cellular? ( net-misc/modemmanager-next:= ) net-misc/dhcpcd dhcpv6? ( net-misc/dhcpcd[ipv6] ) vpn? ( net-vpn/openvpn ) wireguard? ( net-vpn/wireguard-tools ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles sys-apps/baselayout
+REQUIRED_USE=sae_h2e? ( supplicant-next )
+SLOT=0/0.0.5-r2859
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=1069c04a7a7164f881fc20c1f1699333
diff --git a/metadata/md5-cache/chromeos-base/shill-9999 b/metadata/md5-cache/chromeos-base/shill-9999
index 8af531b..c85a43e 100644
--- a/metadata/md5-cache/chromeos-base/shill-9999
+++ b/metadata/md5-cache/chromeos-base/shill-9999
@@ -1,15 +1,16 @@
 BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig virtual/pkgconfig
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/bootstat:= tpm? ( chromeos-base/chaps:= ) chromeos-base/minijail:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/nsswitch:= chromeos-base/patchpanel-client:= chromeos-base/shill-net:= dev-libs/re2:= cellular? ( net-dialup/ppp:= ) pppoe? ( net-dialup/ppp:= ) vpn? ( net-dialup/ppp:= ) net-dns/c-ares:= net-libs/libtirpc:= net-firewall/conntrack-tools:= net-firewall/iptables:= wifi? ( virtual/wpa_supplicant ) wired_8021x? ( virtual/wpa_supplicant ) sys-apps/rootdev:= cellular? ( net-misc/modemmanager-next:= ) chromeos-base/shill-client:= chromeos-base/power_manager-client:= chromeos-base/system_api:=[fuzzer?] vpn? ( chromeos-base/vpn-manager:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/bootstat:= chromeos-base/chaps:= chromeos-base/minijail:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/nsswitch:= chromeos-base/patchpanel-client:= chromeos-base/shill-net:= dev-libs/re2:= cellular? ( net-dialup/ppp:= ) pppoe? ( net-dialup/ppp:= ) vpn? ( net-dialup/ppp:= ) net-dns/c-ares:= net-libs/libtirpc:= net-firewall/conntrack-tools:= net-firewall/iptables:= wifi? ( virtual/wpa_supplicant ) wired_8021x? ( virtual/wpa_supplicant ) sys-apps/rootdev:= cellular? ( net-misc/modemmanager-next:= ) chromeos-base/shill-client:= chromeos-base/power_manager-client:= chromeos-base/system_api:=[fuzzer?] vpn? ( chromeos-base/vpn-manager:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Shill Connection Manager for Chromium OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/shill/
-IUSE=cellular dhcpv6 fuzzer pppoe systemd +tpm +vpn +wake_on_wifi +wifi +wired_8021x +wpa3_sae +wireguard cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=cellular dhcpv6 fuzzer pppoe sae_h2e supplicant-next systemd +tpm +vpn +wake_on_wifi +wifi +wired_8021x +wpa3_sae +wireguard cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PDEPEND=chromeos-base/patchpanel
 PROPERTIES=live live
-RDEPEND=chromeos-base/bootstat:= tpm? ( chromeos-base/chaps:= ) chromeos-base/minijail:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/nsswitch:= chromeos-base/patchpanel-client:= chromeos-base/shill-net:= dev-libs/re2:= cellular? ( net-dialup/ppp:= ) pppoe? ( net-dialup/ppp:= ) vpn? ( net-dialup/ppp:= ) net-dns/c-ares:= net-libs/libtirpc:= net-firewall/conntrack-tools:= net-firewall/iptables:= wifi? ( virtual/wpa_supplicant ) wired_8021x? ( virtual/wpa_supplicant ) sys-apps/rootdev:= cellular? ( net-misc/modemmanager-next:= ) net-misc/dhcpcd dhcpv6? ( net-misc/dhcpcd[ipv6] ) vpn? ( net-vpn/openvpn ) wireguard? ( net-vpn/wireguard-tools ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles sys-apps/baselayout
+RDEPEND=chromeos-base/bootstat:= chromeos-base/chaps:= chromeos-base/minijail:= chromeos-base/libpasswordprovider:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/nsswitch:= chromeos-base/patchpanel-client:= chromeos-base/shill-net:= dev-libs/re2:= cellular? ( net-dialup/ppp:= ) pppoe? ( net-dialup/ppp:= ) vpn? ( net-dialup/ppp:= ) net-dns/c-ares:= net-libs/libtirpc:= net-firewall/conntrack-tools:= net-firewall/iptables:= wifi? ( virtual/wpa_supplicant ) wired_8021x? ( virtual/wpa_supplicant ) sys-apps/rootdev:= cellular? ( net-misc/modemmanager-next:= ) net-misc/dhcpcd dhcpv6? ( net-misc/dhcpcd[ipv6] ) vpn? ( net-vpn/openvpn ) wireguard? ( net-vpn/wireguard-tools ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles sys-apps/baselayout
+REQUIRED_USE=sae_h2e? ( supplicant-next )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=3e1432c2b60b59ccc292e0f1af539daf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=572750f65b84481aa3ccc80d55f998e7
diff --git a/metadata/md5-cache/chromeos-base/shill-cli-0.0.1-r123 b/metadata/md5-cache/chromeos-base/shill-cli-0.0.1-r123
new file mode 100644
index 0000000..3472aa9
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/shill-cli-0.0.1-r123
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/shill-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Shill Command Line Interface
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/shill/cli
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_89de54f8e343342fc28d319632ee165e9bca94f9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_89de54f8e343342fc28d319632ee165e9bca94f9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/shill-0.0.1-r2205 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=324b406261a259f36ebcf97c83ba248c
diff --git a/metadata/md5-cache/chromeos-base/shill-cli-0.0.1-r97 b/metadata/md5-cache/chromeos-base/shill-cli-0.0.1-r97
deleted file mode 100644
index 0101faa..0000000
--- a/metadata/md5-cache/chromeos-base/shill-cli-0.0.1-r97
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/shill-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Shill Command Line Interface
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/shill/cli
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_5b20850cb32f8fc1646e154b9c6c5b094e5b5961_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_5b20850cb32f8fc1646e154b9c6c5b094e5b5961_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/shill-0.0.1-r2205 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8f8728f4fcc7d570b671af96a1ce8a7d
diff --git a/metadata/md5-cache/chromeos-base/shill-cli-9999 b/metadata/md5-cache/chromeos-base/shill-cli-9999
index 969fbb1..0505724 100644
--- a/metadata/md5-cache/chromeos-base/shill-cli-9999
+++ b/metadata/md5-cache/chromeos-base/shill-cli-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/shill-0.0.1-r2205 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=daf4cf606417fb5af117078548ac4255
diff --git a/metadata/md5-cache/chromeos-base/shill-client-0.0.1-r2588 b/metadata/md5-cache/chromeos-base/shill-client-0.0.1-r2588
deleted file mode 100644
index d551655..0000000
--- a/metadata/md5-cache/chromeos-base/shill-client-0.0.1-r2588
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=chromeos-base/chromeos-dbus-bindings:= dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Shill DBus client library for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/shill/
-IUSE=cros_host cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_c4ab24982f8916bc61640a3912b5c1d0337b758f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_c4ab24982f8916bc61640a3912b5c1d0337b758f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!<chromeos-base/shill-0.0.2 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b334b314026a411b9a0017f82db1445b
diff --git a/metadata/md5-cache/chromeos-base/shill-client-0.0.1-r2726 b/metadata/md5-cache/chromeos-base/shill-client-0.0.1-r2726
new file mode 100644
index 0000000..eeed440
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/shill-client-0.0.1-r2726
@@ -0,0 +1,14 @@
+BDEPEND=chromeos-base/chromeos-dbus-bindings:= dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Shill DBus client library for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/shill/
+IUSE=cros_host cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_12321d79aa58211a0800e45f0e5c7204789cfffb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_12321d79aa58211a0800e45f0e5c7204789cfffb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!<chromeos-base/shill-0.0.2 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f1272bad5335cd14c635093fb0c7e524
diff --git a/metadata/md5-cache/chromeos-base/shill-client-9999 b/metadata/md5-cache/chromeos-base/shill-client-9999
index 6025e2b..cdb3595 100644
--- a/metadata/md5-cache/chromeos-base/shill-client-9999
+++ b/metadata/md5-cache/chromeos-base/shill-client-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=!<chromeos-base/shill-0.0.2 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=dc51cbd89b54f272886b514d9f64e0f8
diff --git a/metadata/md5-cache/chromeos-base/shill-dbus-client-0.0.1-r359 b/metadata/md5-cache/chromeos-base/shill-dbus-client-0.0.1-r359
deleted file mode 100644
index 7de3f40..0000000
--- a/metadata/md5-cache/chromeos-base/shill-dbus-client-0.0.1-r359
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/shill-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Shill DBus client interface library
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/shill/dbus/client
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_c4ab24982f8916bc61640a3912b5c1d0337b758f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_c4ab24982f8916bc61640a3912b5c1d0337b758f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=662a1756aadb8c72feaba802977c7d0a
diff --git a/metadata/md5-cache/chromeos-base/shill-dbus-client-0.0.1-r499 b/metadata/md5-cache/chromeos-base/shill-dbus-client-0.0.1-r499
new file mode 100644
index 0000000..5b9585d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/shill-dbus-client-0.0.1-r499
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/shill-client:= chromeos-base/shill-net >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Shill DBus client interface library
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/shill/dbus/client
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_12321d79aa58211a0800e45f0e5c7204789cfffb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_12321d79aa58211a0800e45f0e5c7204789cfffb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/shill-client:= chromeos-base/shill-net >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=50319e526b580cf2c2782a35399e8564
diff --git a/metadata/md5-cache/chromeos-base/shill-dbus-client-9999 b/metadata/md5-cache/chromeos-base/shill-dbus-client-9999
index 59a35ee..d54debf 100644
--- a/metadata/md5-cache/chromeos-base/shill-dbus-client-9999
+++ b/metadata/md5-cache/chromeos-base/shill-dbus-client-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/shill-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=chromeos-base/shill-client:= chromeos-base/shill-net >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Shill DBus client interface library
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/shill/dbus/client
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=chromeos-base/shill-client:= chromeos-base/shill-net >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4a4294301991bc29c96799ddfd5f2557
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b7180ff0ff6a803ab6cd1292486aee7e
diff --git a/metadata/md5-cache/chromeos-base/shill-net-0.0.1-r435 b/metadata/md5-cache/chromeos-base/shill-net-0.0.1-r435
deleted file mode 100644
index 3ffa2c3..0000000
--- a/metadata/md5-cache/chromeos-base/shill-net-0.0.1-r435
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Shill networking component interface library
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/shill/net
-IUSE=fuzzer +wifi cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_c4ab24982f8916bc61640a3912b5c1d0337b758f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_c4ab24982f8916bc61640a3912b5c1d0337b758f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!<chromeos-base/shill-0.0.5 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=0fcac092447baa06e4712c4b6bc51b8d
diff --git a/metadata/md5-cache/chromeos-base/shill-net-0.0.1-r574 b/metadata/md5-cache/chromeos-base/shill-net-0.0.1-r574
new file mode 100644
index 0000000..02b0e64
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/shill-net-0.0.1-r574
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Shill networking component interface library
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/shill/net
+IUSE=fuzzer +wifi cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_12321d79aa58211a0800e45f0e5c7204789cfffb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_12321d79aa58211a0800e45f0e5c7204789cfffb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!<chromeos-base/shill-0.0.5 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=930e78484f5f353526de661c9a7060b6
diff --git a/metadata/md5-cache/chromeos-base/shill-net-9999 b/metadata/md5-cache/chromeos-base/shill-net-9999
index 1d6a5c7..84c7e1c 100644
--- a/metadata/md5-cache/chromeos-base/shill-net-9999
+++ b/metadata/md5-cache/chromeos-base/shill-net-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=!<chromeos-base/shill-0.0.5 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=66c4880f2c9f1be1ef6ed7338d088273
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e376c2f47227b4b26596238d7e739705
diff --git a/metadata/md5-cache/chromeos-base/shill-test-scripts-0.0.1-r3160 b/metadata/md5-cache/chromeos-base/shill-test-scripts-0.0.1-r3160
index 26d2763..48d7cb3 100644
--- a/metadata/md5-cache/chromeos-base/shill-test-scripts-0.0.1-r3160
+++ b/metadata/md5-cache/chromeos-base/shill-test-scripts-0.0.1-r3160
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] ) python_single_target_python3_6? ( dev-python/dbus-python[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/dbus-python[python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-python/dbus-python[python_targets_python3_8(-)] ) python_single_target_python3_9? ( dev-python/dbus-python[python_targets_python3_9(-)] ) >=chromeos-base/shill-0.0.1-r2205 net-dns/dnsmasq sys-apps/iproute2
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0464742a113e93592267dfef401621e8
diff --git a/metadata/md5-cache/chromeos-base/shill-test-scripts-9999 b/metadata/md5-cache/chromeos-base/shill-test-scripts-9999
index 96f013f..0db7599 100644
--- a/metadata/md5-cache/chromeos-base/shill-test-scripts-9999
+++ b/metadata/md5-cache/chromeos-base/shill-test-scripts-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] ) python_single_target_python3_6? ( dev-python/dbus-python[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/dbus-python[python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-python/dbus-python[python_targets_python3_8(-)] ) python_single_target_python3_9? ( dev-python/dbus-python[python_targets_python3_9(-)] ) >=chromeos-base/shill-0.0.1-r2205 net-dns/dnsmasq sys-apps/iproute2
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b2b2b4280ca75590ab67e0289b3f611c
diff --git a/metadata/md5-cache/chromeos-base/sirenia-0.24.52-r101 b/metadata/md5-cache/chromeos-base/sirenia-0.24.52-r101
new file mode 100644
index 0000000..87b8bed
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/sirenia-0.24.52-r101
@@ -0,0 +1,15 @@
+BDEPEND=chromeos-base/sirenia-tools dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=chromeos-base/libsirenia:= dev-libs/openssl:0= =dev-rust/anyhow-1*:= =dev-rust/base64-0.13*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.9*:= =dev-rust/dbus-crossroads-0.4*:= =dev-rust/flexbuffers-2*:= =dev-rust/getopts-0.2*:= >=dev-rust/libc-0.2.94 <dev-rust/libc-0.3.0_alpha:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= >=dev-rust/serde-1.0.114 <dev-rust/serde-2:= =dev-rust/serde_derive-1*:= >=dev-rust/serde_json-1.0.64 <dev-rust/serde_json-2.0.0_alpha:= =dev-rust/stderrlog-0.5*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20 <dev-rust/thiserror-2.0.0_alpha:= >=virtual/rust-1.39.0:= sys-apps/baselayout
+DESCRIPTION=The runtime environment and middleware for ManaTEE.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/
+IUSE=cros_host manatee cros_host cros_workon_tree_4a9ac56a4abc7348fb8ebfa0d152a1c78ee24749 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/libsirenia:= dev-libs/openssl:0= =dev-rust/anyhow-1*:= =dev-rust/base64-0.13*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.9*:= =dev-rust/dbus-crossroads-0.4*:= =dev-rust/flexbuffers-2*:= =dev-rust/getopts-0.2*:= >=dev-rust/libc-0.2.94 <dev-rust/libc-0.3.0_alpha:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= >=dev-rust/serde-1.0.114 <dev-rust/serde-2:= =dev-rust/serde_derive-1*:= >=dev-rust/serde_json-1.0.64 <dev-rust/serde_json-2.0.0_alpha:= =dev-rust/stderrlog-0.5*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20 <dev-rust/thiserror-2.0.0_alpha:= chromeos-base/cronista chromeos-base/manatee-runtime dev-rust/manatee-client sys-apps/dbus sys-apps/baselayout
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.24.52-r101
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=f55540608a39a1ac04585d959d359d99
diff --git a/metadata/md5-cache/chromeos-base/sirenia-0.24.52-r82 b/metadata/md5-cache/chromeos-base/sirenia-0.24.52-r82
deleted file mode 100644
index 37079ed..0000000
--- a/metadata/md5-cache/chromeos-base/sirenia-0.24.52-r82
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/libsirenia:= dev-libs/openssl:0= =dev-rust/base64-0.13*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= >=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2.0 =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/openssl-0.10*:= >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:= sys-apps/baselayout
-DESCRIPTION=The runtime environment and middleware for ManaTEE.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/
-IUSE=cros_host manatee cros_host cros_workon_tree_727b5a2cdf7d07c050cc575ee636711da70333a2 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/libsirenia:= dev-libs/openssl:0= =dev-rust/base64-0.13*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= >=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2.0 =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/openssl-0.10*:= >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 chromeos-base/cronista chromeos-base/manatee-runtime dev-rust/manatee-client sys-apps/dbus sys-apps/baselayout
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.24.52-r82
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=162f6d955c5f798207df6b0a31ab8f7e
diff --git a/metadata/md5-cache/chromeos-base/sirenia-9999 b/metadata/md5-cache/chromeos-base/sirenia-9999
index 438a6e1..03b602d 100644
--- a/metadata/md5-cache/chromeos-base/sirenia-9999
+++ b/metadata/md5-cache/chromeos-base/sirenia-9999
@@ -1,6 +1,6 @@
-BDEPEND=dev-vcs/git
+BDEPEND=chromeos-base/sirenia-tools dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/libsirenia:= dev-libs/openssl:0= =dev-rust/base64-0.13*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= >=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2.0 =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/openssl-0.10*:= >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:= sys-apps/baselayout
+DEPEND=chromeos-base/libsirenia:= dev-libs/openssl:0= =dev-rust/anyhow-1*:= =dev-rust/base64-0.13*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.9*:= =dev-rust/dbus-crossroads-0.4*:= =dev-rust/flexbuffers-2*:= =dev-rust/getopts-0.2*:= >=dev-rust/libc-0.2.94 <dev-rust/libc-0.3.0_alpha:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= >=dev-rust/serde-1.0.114 <dev-rust/serde-2:= =dev-rust/serde_derive-1*:= >=dev-rust/serde_json-1.0.64 <dev-rust/serde_json-2.0.0_alpha:= =dev-rust/stderrlog-0.5*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20 <dev-rust/thiserror-2.0.0_alpha:= >=virtual/rust-1.39.0:= sys-apps/baselayout
 DESCRIPTION=The runtime environment and middleware for ManaTEE.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=chromeos-base/libsirenia:= dev-libs/openssl:0= =dev-rust/base64-0.13*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= >=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2.0 =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/openssl-0.10*:= >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 chromeos-base/cronista chromeos-base/manatee-runtime dev-rust/manatee-client sys-apps/dbus sys-apps/baselayout
+RDEPEND=chromeos-base/libsirenia:= dev-libs/openssl:0= =dev-rust/anyhow-1*:= =dev-rust/base64-0.13*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.9*:= =dev-rust/dbus-crossroads-0.4*:= =dev-rust/flexbuffers-2*:= =dev-rust/getopts-0.2*:= >=dev-rust/libc-0.2.94 <dev-rust/libc-0.3.0_alpha:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= >=dev-rust/serde-1.0.114 <dev-rust/serde-2:= =dev-rust/serde_derive-1*:= >=dev-rust/serde_json-1.0.64 <dev-rust/serde_json-2.0.0_alpha:= =dev-rust/stderrlog-0.5*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20 <dev-rust/thiserror-2.0.0_alpha:= chromeos-base/cronista chromeos-base/manatee-runtime dev-rust/manatee-client sys-apps/dbus sys-apps/baselayout
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=607336e186cc57dd6f2a0726924d8b6c
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=1e3ba8c544207e9eb6fa22600cbb2d43
diff --git a/metadata/md5-cache/chromeos-base/sirenia-rpc-macros-0.1.0-r2 b/metadata/md5-cache/chromeos-base/sirenia-rpc-macros-0.1.0-r2
index af268c6..180b840 100644
--- a/metadata/md5-cache/chromeos-base/sirenia-rpc-macros-0.1.0-r2
+++ b/metadata/md5-cache/chromeos-base/sirenia-rpc-macros-0.1.0-r2
@@ -11,5 +11,5 @@
 RDEPEND==dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/0.1.0-r2
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=66db40c74a97079323e0441801a0b16a
diff --git a/metadata/md5-cache/chromeos-base/sirenia-rpc-macros-9999 b/metadata/md5-cache/chromeos-base/sirenia-rpc-macros-9999
index 57b14fc..5088c73 100644
--- a/metadata/md5-cache/chromeos-base/sirenia-rpc-macros-9999
+++ b/metadata/md5-cache/chromeos-base/sirenia-rpc-macros-9999
@@ -11,5 +11,5 @@
 RDEPEND==dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=290a52d2a0a581fb72c3fb449b1b6b80
diff --git a/metadata/md5-cache/chromeos-base/sirenia-tools-0.0.1-r17 b/metadata/md5-cache/chromeos-base/sirenia-tools-0.0.1-r17
new file mode 100644
index 0000000..e675e07
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/sirenia-tools-0.0.1-r17
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=chromeos-base/libsirenia:= dev-libs/openssl:0= =dev-rust/anyhow-1*:= =dev-rust/base64-0.13*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= >=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2.0 =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= >=dev-rust/serde_json-1.0.64:= <dev-rust/serde_json-2.0.0 =dev-rust/stderrlog-0.5*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:= sys-apps/baselayout
+DESCRIPTION=Build tools for the ManaTEE runtime environment.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/
+IUSE=cros_host cros_workon_tree_4a9ac56a4abc7348fb8ebfa0d152a1c78ee24749 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/libsirenia:= dev-libs/openssl:0= =dev-rust/anyhow-1*:= =dev-rust/base64-0.13*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= >=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2.0 =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= >=dev-rust/serde_json-1.0.64:= <dev-rust/serde_json-2.0.0 =dev-rust/stderrlog-0.5*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 sys-apps/dbus sys-apps/baselayout
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.0.1-r17
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=5b17d206d81652d1b8912913e08902a5
diff --git a/metadata/md5-cache/chromeos-base/sirenia-tools-9999 b/metadata/md5-cache/chromeos-base/sirenia-tools-9999
new file mode 100644
index 0000000..7c67eaa
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/sirenia-tools-9999
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=chromeos-base/libsirenia:= dev-libs/openssl:0= =dev-rust/anyhow-1*:= =dev-rust/base64-0.13*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= >=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2.0 =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= >=dev-rust/serde_json-1.0.64:= <dev-rust/serde_json-2.0.0 =dev-rust/stderrlog-0.5*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:= sys-apps/baselayout
+DESCRIPTION=Build tools for the ManaTEE runtime environment.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/
+IUSE=cros_host cros_workon_tree_ cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/libsirenia:= dev-libs/openssl:0= =dev-rust/anyhow-1*:= =dev-rust/base64-0.13*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= >=dev-rust/flexbuffers-0.1.1:= <dev-rust/flexbuffers-0.2.0 =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= >=dev-rust/serde_json-1.0.64:= <dev-rust/serde_json-2.0.0 =dev-rust/stderrlog-0.5*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 sys-apps/dbus sys-apps/baselayout
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=cfe19c114518fa62a292b6bc5db534c1
diff --git a/metadata/md5-cache/chromeos-base/smbfs-0.0.1-r203 b/metadata/md5-cache/chromeos-base/smbfs-0.0.1-r203
deleted file mode 100644
index 4d1201fc..0000000
--- a/metadata/md5-cache/chromeos-base/smbfs-0.0.1-r203
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND==sys-fs/fuse-2.9*:= net-fs/samba:= chromeos-base/system_api:= chromeos-base/libpasswordprovider:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=FUSE filesystem to mount SMB shares.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/smbfs/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_eae0546f4ee5132d4544af4770755eb05f60cba6_75c3e472455b6f19ecd3d99e182d59e07d4e84da_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_eae0546f4ee5132d4544af4770755eb05f60cba6_75c3e472455b6f19ecd3d99e182d59e07d4e84da_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND==sys-fs/fuse-2.9*:= net-fs/samba:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=261c805906490bbb26c6cd069dbbf3e1
diff --git a/metadata/md5-cache/chromeos-base/smbfs-0.0.1-r240 b/metadata/md5-cache/chromeos-base/smbfs-0.0.1-r240
new file mode 100644
index 0000000..3cb581d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/smbfs-0.0.1-r240
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND==sys-fs/fuse-2.9*:= net-fs/samba:= chromeos-base/system_api:= chromeos-base/libpasswordprovider:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=FUSE filesystem to mount SMB shares.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/smbfs/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_e6b7e35db312b819197ba84e75b13d25acf4f2ff_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_e6b7e35db312b819197ba84e75b13d25acf4f2ff_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND==sys-fs/fuse-2.9*:= net-fs/samba:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=45cb3997c93dd439af34d8c9c8b41af7
diff --git a/metadata/md5-cache/chromeos-base/smbfs-9999 b/metadata/md5-cache/chromeos-base/smbfs-9999
index 2494047..22cefbd 100644
--- a/metadata/md5-cache/chromeos-base/smbfs-9999
+++ b/metadata/md5-cache/chromeos-base/smbfs-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND==sys-fs/fuse-2.9*:= net-fs/samba:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=06b262d751d679e700db605e9424fc2e
diff --git a/metadata/md5-cache/chromeos-base/smbprovider-0.0.1-r712 b/metadata/md5-cache/chromeos-base/smbprovider-0.0.1-r712
deleted file mode 100644
index 4df11c3..0000000
--- a/metadata/md5-cache/chromeos-base/smbprovider-0.0.1-r712
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/protobuf:= >=net-fs/samba-4.5.3-r6 sys-apps/dbus:= chromeos-base/protofiles:= chromeos-base/system_api:=[fuzzer?] chromeos-base/libpasswordprovider:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Provides access to Samba file share
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/smbprovider/
-IUSE=fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_eae0546f4ee5132d4544af4770755eb05f60cba6_e23b68f653a4b37525fbe6a6f1a490c47c9d99cc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_eae0546f4ee5132d4544af4770755eb05f60cba6_e23b68f653a4b37525fbe6a6f1a490c47c9d99cc_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-libs/protobuf:= >=net-fs/samba-4.5.3-r6 sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=81b3689596426eee3ac09fea3f5e2248
diff --git a/metadata/md5-cache/chromeos-base/smbprovider-0.0.1-r750 b/metadata/md5-cache/chromeos-base/smbprovider-0.0.1-r750
new file mode 100644
index 0000000..c6d71e7
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/smbprovider-0.0.1-r750
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/protobuf:= >=net-fs/samba-4.5.3-r6 sys-apps/dbus:= chromeos-base/protofiles:= chromeos-base/system_api:=[fuzzer?] chromeos-base/libpasswordprovider:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Provides access to Samba file share
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/smbprovider/
+IUSE=fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_e4e1877ca22e96d5b8203910b6fc0e214e65b3c6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_e4e1877ca22e96d5b8203910b6fc0e214e65b3c6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= >=net-fs/samba-4.5.3-r6 sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=bbedd8e6ae5bfeee56fd296af3a938b0
diff --git a/metadata/md5-cache/chromeos-base/smbprovider-9999 b/metadata/md5-cache/chromeos-base/smbprovider-9999
index a2e6dbc..4635248 100644
--- a/metadata/md5-cache/chromeos-base/smbprovider-9999
+++ b/metadata/md5-cache/chromeos-base/smbprovider-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=dev-libs/protobuf:= >=net-fs/samba-4.5.3-r6 sys-apps/dbus:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=f0ce4b150ad6a496aaaddbf7e1064602
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=238988b48f8365f3b6524026710dd1e1
diff --git a/metadata/md5-cache/chromeos-base/smogcheck-0.0.1-r3066 b/metadata/md5-cache/chromeos-base/smogcheck-0.0.1-r3066
deleted file mode 100644
index d8c7a5b..0000000
--- a/metadata/md5-cache/chromeos-base/smogcheck-0.0.1-r3066
+++ /dev/null
@@ -1,12 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DESCRIPTION=TPM SmogCheck library
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/smogcheck/
-IUSE=-asan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_25b90cd13b01122d778a1d55d814c5b001b88d22_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-SLOT=0/0.0.1-r3066
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=1fa5d0debfe9a3e3e4088afe98adac0e
diff --git a/metadata/md5-cache/chromeos-base/smogcheck-0.0.1-r3091 b/metadata/md5-cache/chromeos-base/smogcheck-0.0.1-r3091
new file mode 100644
index 0000000..f4c9e86e
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/smogcheck-0.0.1-r3091
@@ -0,0 +1,12 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DESCRIPTION=TPM SmogCheck library
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/smogcheck/
+IUSE=-asan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_25b90cd13b01122d778a1d55d814c5b001b88d22_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+SLOT=0/0.0.1-r3091
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a5bfce66db1ac0384513bcb5ea2869b0
diff --git a/metadata/md5-cache/chromeos-base/smogcheck-9999 b/metadata/md5-cache/chromeos-base/smogcheck-9999
index 23a0e76..af74910 100644
--- a/metadata/md5-cache/chromeos-base/smogcheck-9999
+++ b/metadata/md5-cache/chromeos-base/smogcheck-9999
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/9999
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=71b4bf3cda2160382ebb334b8c34be08
diff --git a/metadata/md5-cache/chromeos-base/sommelier-0.0.1-r142 b/metadata/md5-cache/chromeos-base/sommelier-0.0.1-r142
deleted file mode 100644
index f090d60..0000000
--- a/metadata/md5-cache/chromeos-base/sommelier-0.0.1-r142
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=media-libs/mesa:=[gbm] x11-base/xwayland:= x11-libs/libxkbcommon:= x11-libs/pixman:= dev-util/meson dev-util/ninja >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=A Wayland compositor for use in CrOS VMs
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools/sommelier
-IUSE=kvm_guest cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_73d11c9c68b8ad83037d9b5820a42f0e51c57d74_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_73d11c9c68b8ad83037d9b5820a42f0e51c57d74_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!<chromeos-base/vm_guest_tools-0.0.2-r722 media-libs/mesa:=[gbm] x11-base/xwayland:= x11-libs/libxkbcommon:= x11-libs/pixman:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=kvm_guest
-SLOT=0/0.0.1-r142
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=688ee5ca2e1764184afd206da72491f6
diff --git a/metadata/md5-cache/chromeos-base/sommelier-0.0.1-r192 b/metadata/md5-cache/chromeos-base/sommelier-0.0.1-r192
new file mode 100644
index 0000000..bd8f303
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/sommelier-0.0.1-r192
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/libevdev:= x11-libs/libxkbcommon:= x11-libs/libxcb:= x11-libs/pixman:= x11-libs/libdrm:= dev-libs/wayland:= || ( media-libs/mesa:=[gbm] media-libs/minigbm:= ) !fuzzer? ( x11-base/xwayland:= ) chromeos-base/perfetto dev-util/meson dev-util/ninja >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=A Wayland compositor for use in CrOS VMs
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools/sommelier
+IUSE=kvm_guest cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_00ffd7cf775709a0e74a50142e0287a0bec5dbc5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_00ffd7cf775709a0e74a50142e0287a0bec5dbc5_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!<chromeos-base/vm_guest_tools-0.0.2-r722 dev-libs/libevdev:= x11-libs/libxkbcommon:= x11-libs/libxcb:= x11-libs/pixman:= x11-libs/libdrm:= dev-libs/wayland:= || ( media-libs/mesa:=[gbm] media-libs/minigbm:= ) !fuzzer? ( x11-base/xwayland:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=kvm_guest
+SLOT=0/0.0.1-r192
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a4a74741cf0e4567fa4fbe4c5ff84928
diff --git a/metadata/md5-cache/chromeos-base/sommelier-9999 b/metadata/md5-cache/chromeos-base/sommelier-9999
index 4bf1d2a..662ceda 100644
--- a/metadata/md5-cache/chromeos-base/sommelier-9999
+++ b/metadata/md5-cache/chromeos-base/sommelier-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=media-libs/mesa:=[gbm] x11-base/xwayland:= x11-libs/libxkbcommon:= x11-libs/pixman:= dev-util/meson dev-util/ninja >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=dev-libs/libevdev:= x11-libs/libxkbcommon:= x11-libs/libxcb:= x11-libs/pixman:= x11-libs/libdrm:= dev-libs/wayland:= || ( media-libs/mesa:=[gbm] media-libs/minigbm:= ) !fuzzer? ( x11-base/xwayland:= ) chromeos-base/perfetto dev-util/meson dev-util/ninja >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=A Wayland compositor for use in CrOS VMs
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools/sommelier
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=!<chromeos-base/vm_guest_tools-0.0.2-r722 media-libs/mesa:=[gbm] x11-base/xwayland:= x11-libs/libxkbcommon:= x11-libs/pixman:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=!<chromeos-base/vm_guest_tools-0.0.2-r722 dev-libs/libevdev:= x11-libs/libxkbcommon:= x11-libs/libxcb:= x11-libs/pixman:= x11-libs/libdrm:= dev-libs/wayland:= || ( media-libs/mesa:=[gbm] media-libs/minigbm:= ) !fuzzer? ( x11-base/xwayland:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 REQUIRED_USE=kvm_guest
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4f4099e7c3905bcf723197d0ec9b6e48
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b8701473df452d58ba99a5d9fa6240df
diff --git a/metadata/md5-cache/chromeos-base/spaced-0.0.1-r32 b/metadata/md5-cache/chromeos-base/spaced-0.0.1-r32
new file mode 100644
index 0000000..3100be5
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/spaced-0.0.1-r32
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Disk space information daemon for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/spaced/
+IUSE=+seccomp cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1df1cd86cc9b1097a63fda6de34de50db54a61ac_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_1df1cd86cc9b1097a63fda6de34de50db54a61ac_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r32
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=0ab9548cf1c4031a58e6034e35ce0d33
diff --git a/metadata/md5-cache/chromeos-base/spaced-9999 b/metadata/md5-cache/chromeos-base/spaced-9999
new file mode 100644
index 0000000..32eafef
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/spaced-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Disk space information daemon for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/spaced/
+IUSE=+seccomp cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=e687678b3b05510dc6da5e7b973e7933
diff --git a/metadata/md5-cache/chromeos-base/st_flash-0.0.1-r1256 b/metadata/md5-cache/chromeos-base/st_flash-0.0.1-r1256
deleted file mode 100644
index 117fa7e..0000000
--- a/metadata/md5-cache/chromeos-base/st_flash-0.0.1-r1256
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=STM32 IAP firmware updater for Chrome OS touchpads
-EAPI=5
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_791e2808df33f88d5ae99fabe78c4f0dbd2035fa_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_791e2808df33f88d5ae99fabe78c4f0dbd2035fa_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=15e0bc040f2ba62ca24426c84f2f2141
diff --git a/metadata/md5-cache/chromeos-base/st_flash-0.0.1-r1281 b/metadata/md5-cache/chromeos-base/st_flash-0.0.1-r1281
new file mode 100644
index 0000000..029d4b2
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/st_flash-0.0.1-r1281
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=STM32 IAP firmware updater for Chrome OS touchpads
+EAPI=5
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_791e2808df33f88d5ae99fabe78c4f0dbd2035fa_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_791e2808df33f88d5ae99fabe78c4f0dbd2035fa_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=1f7d3b2f73297ceb4ca6f44f0bc91331
diff --git a/metadata/md5-cache/chromeos-base/st_flash-9999 b/metadata/md5-cache/chromeos-base/st_flash-9999
index f3a9f2f..8d8043f 100644
--- a/metadata/md5-cache/chromeos-base/st_flash-9999
+++ b/metadata/md5-cache/chromeos-base/st_flash-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=21c3d50f3d60451e233dfab1981dddfd
diff --git a/metadata/md5-cache/chromeos-base/swap-init-0.0.1 b/metadata/md5-cache/chromeos-base/swap-init-0.0.1
index 604c7ef..669eed1 100644
--- a/metadata/md5-cache/chromeos-base/swap-init-0.0.1
+++ b/metadata/md5-cache/chromeos-base/swap-init-0.0.1
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 RDEPEND=sys-apps/util-linux diskswap? ( sys-fs/cryptsetup )
 SLOT=0
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9d957bc3d3fd75153eca18888e5c0018
diff --git a/metadata/md5-cache/chromeos-base/swap-init-0.0.1-r42 b/metadata/md5-cache/chromeos-base/swap-init-0.0.1-r42
index 604c7ef..669eed1 100644
--- a/metadata/md5-cache/chromeos-base/swap-init-0.0.1-r42
+++ b/metadata/md5-cache/chromeos-base/swap-init-0.0.1-r42
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 RDEPEND=sys-apps/util-linux diskswap? ( sys-fs/cryptsetup )
 SLOT=0
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9d957bc3d3fd75153eca18888e5c0018
diff --git a/metadata/md5-cache/chromeos-base/syslog-cat-0.0.1-r49 b/metadata/md5-cache/chromeos-base/syslog-cat-0.0.1-r49
deleted file mode 100644
index 5e01ad0..0000000
--- a/metadata/md5-cache/chromeos-base/syslog-cat-0.0.1-r49
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Simple command to forward stdout/err to syslog
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/syslog-cat
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_5cbb3b50e94cd190817a813ffb446c07cde6990b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_5cbb3b50e94cd190817a813ffb446c07cde6990b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=fc59b0a60f7e96e03931a653a95ceff4
diff --git a/metadata/md5-cache/chromeos-base/syslog-cat-0.0.1-r75 b/metadata/md5-cache/chromeos-base/syslog-cat-0.0.1-r75
new file mode 100644
index 0000000..c0f23e4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/syslog-cat-0.0.1-r75
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Simple command to forward stdout/err to syslog
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/syslog-cat
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_08b91a2f1e0d6e18374c6c9f0f6a1e1f30e21bee_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_08b91a2f1e0d6e18374c6c9f0f6a1e1f30e21bee_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=85be103e1f8a454cc7032c2721abfdf6
diff --git a/metadata/md5-cache/chromeos-base/syslog-cat-9999 b/metadata/md5-cache/chromeos-base/syslog-cat-9999
index de68ae6..35c9e7d 100644
--- a/metadata/md5-cache/chromeos-base/syslog-cat-9999
+++ b/metadata/md5-cache/chromeos-base/syslog-cat-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=17a9979571deae77cc5b34e2802dee4d
diff --git a/metadata/md5-cache/chromeos-base/system-locales-2.32-r1 b/metadata/md5-cache/chromeos-base/system-locales-2.32-r1
index 7763b91..6af33a2 100644
--- a/metadata/md5-cache/chromeos-base/system-locales-2.32-r1
+++ b/metadata/md5-cache/chromeos-base/system-locales-2.32-r1
@@ -7,5 +7,5 @@
 LICENSE=public-domain
 RDEPEND=~sys-libs/glibc-2.32
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=1ad325a2e253719416cbfc2618862bcc
diff --git a/metadata/md5-cache/chromeos-base/system-proxy-0.0.1-r214 b/metadata/md5-cache/chromeos-base/system-proxy-0.0.1-r214
deleted file mode 100644
index e9b3581..0000000
--- a/metadata/md5-cache/chromeos-base/system-proxy-0.0.1-r214
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/libpasswordprovider:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= dev-libs/protobuf:= sys-apps/dbus:= net-misc/curl:= chromeos-base/permission_broker-client:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=A daemon that provides authentication support for system services and ARC apps behind an authenticated web proxy.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/system-proxy/
-IUSE=fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_eae0546f4ee5132d4544af4770755eb05f60cba6_4ec0160713133cb6e004285d204db461280e4549_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_eae0546f4ee5132d4544af4770755eb05f60cba6_4ec0160713133cb6e004285d204db461280e4549_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libpasswordprovider:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= dev-libs/protobuf:= sys-apps/dbus:= net-misc/curl:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=99fb53c5a57de79d81d4596fe0f525fe
diff --git a/metadata/md5-cache/chromeos-base/system-proxy-0.0.1-r250 b/metadata/md5-cache/chromeos-base/system-proxy-0.0.1-r250
new file mode 100644
index 0000000..1458da5
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/system-proxy-0.0.1-r250
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/libpasswordprovider:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= dev-libs/protobuf:= sys-apps/dbus:= net-misc/curl:= chromeos-base/permission_broker-client:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=A daemon that provides authentication support for system services and ARC apps behind an authenticated web proxy.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/system-proxy/
+IUSE=fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_0b49584e8f1dc7c80f40fa18b7ec806a8864bfd3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_56dc9b3a788bc68f829c1e7a1d3b6cf067c7aaf9_0b49584e8f1dc7c80f40fa18b7ec806a8864bfd3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libpasswordprovider:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= dev-libs/protobuf:= sys-apps/dbus:= net-misc/curl:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=2df192424a5258205f3aa6d0f19ec464
diff --git a/metadata/md5-cache/chromeos-base/system-proxy-9999 b/metadata/md5-cache/chromeos-base/system-proxy-9999
index f752d3e..1a6ba12 100644
--- a/metadata/md5-cache/chromeos-base/system-proxy-9999
+++ b/metadata/md5-cache/chromeos-base/system-proxy-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/libpasswordprovider:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= dev-libs/protobuf:= sys-apps/dbus:= net-misc/curl:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=4a336ed930157a91435e347400b9e8a3
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=43f7b79362c107c3fb327dff0165c900
diff --git a/metadata/md5-cache/chromeos-base/system_api-0.0.1-r4369 b/metadata/md5-cache/chromeos-base/system_api-0.0.1-r4369
deleted file mode 100644
index 478180b..0000000
--- a/metadata/md5-cache/chromeos-base/system_api-0.0.1-r4369
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst setup test unpack
-DEPEND=dev-go/protobuf:= dev-libs/protobuf:= cros_host? ( net-libs/grpc:= ) dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS system API (D-Bus service names, etc.)
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/system_api/
-IUSE=cros_host fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_17b97c5c2ddeb8fe389f24ed79e581941c90795b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_17b97c5c2ddeb8fe389f24ed79e581941c90795b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
-SLOT=0/1
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=473a8c9686cf755995a0189d29652a71
diff --git a/metadata/md5-cache/chromeos-base/system_api-0.0.1-r4483 b/metadata/md5-cache/chromeos-base/system_api-0.0.1-r4483
new file mode 100644
index 0000000..1465063
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/system_api-0.0.1-r4483
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst setup test unpack
+DEPEND=dev-go/protobuf:= dev-libs/protobuf:= cros_host? ( net-libs/grpc:= ) dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS system API (D-Bus service names, etc.)
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/system_api/
+IUSE=cros_host fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c28e5042658473f3d1d5194279d4ec2cc2633f31_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c28e5042658473f3d1d5194279d4ec2cc2633f31_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
+SLOT=0/1
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=dfa47c464b4554fc2bb91d4a17802254
diff --git a/metadata/md5-cache/chromeos-base/system_api-9999 b/metadata/md5-cache/chromeos-base/system_api-9999
index 8170c3c..ad0731e 100644
--- a/metadata/md5-cache/chromeos-base/system_api-9999
+++ b/metadata/md5-cache/chromeos-base/system_api-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
 SLOT=0/1
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=14718f05608cd370de55f0127143668f
diff --git a/metadata/md5-cache/chromeos-base/tast-build-deps-2-r11 b/metadata/md5-cache/chromeos-base/tast-build-deps-2-r11
new file mode 100644
index 0000000..d79dca4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tast-build-deps-2-r11
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info setup unpack
+DEPEND=chromeos-base/aosp-frameworks-base-proto chromeos-base/cros-config-api chromeos-base/hardware_verifier_proto chromeos-base/modemfwd-proto chromeos-base/policy-go-proto chromeos-base/system_api chromeos-base/vm_protos chromeos-base/wilco-dtc-grpc-protos dev-go/boringssl-acvptool dev-go/cdp dev-go/clock dev-go/cmp dev-go/crypto dev-go/dbus dev-go/docker dev-go/dst dev-go/exif dev-go/fscrypt dev-go/gapi-drive dev-go/genproto dev-go/godebug dev-go/golang-evdev dev-go/golint dev-go/gopacket dev-go/gopsutil dev-go/go-matroska dev-go/go-sys dev-go/grpc dev-go/mdns dev-go/mock dev-go/mp4 dev-go/oauth2 dev-go/perfetto-protos dev-go/protobuf dev-go/selinux dev-go/subcommands dev-go/sync dev-go/tarm-serial dev-go/uuid dev-go/vsock dev-go/yaml
+DESCRIPTION=Build-time dependencies of Tast binaries
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast/
+IUSE=cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/aosp-frameworks-base-proto chromeos-base/cros-config-api chromeos-base/hardware_verifier_proto chromeos-base/modemfwd-proto chromeos-base/policy-go-proto chromeos-base/system_api chromeos-base/vm_protos chromeos-base/wilco-dtc-grpc-protos dev-go/boringssl-acvptool dev-go/cdp dev-go/clock dev-go/cmp dev-go/crypto dev-go/dbus dev-go/docker dev-go/dst dev-go/exif dev-go/fscrypt dev-go/gapi-drive dev-go/genproto dev-go/godebug dev-go/golang-evdev dev-go/golint dev-go/gopacket dev-go/gopsutil dev-go/go-matroska dev-go/go-sys dev-go/grpc dev-go/mdns dev-go/mock dev-go/mp4 dev-go/oauth2 dev-go/perfetto-protos dev-go/protobuf dev-go/selinux dev-go/subcommands dev-go/sync dev-go/tarm-serial dev-go/uuid dev-go/vsock dev-go/yaml
+SLOT=0/2-r11
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=691be6ab36fee99dc2cbe5ca08bcec5f
diff --git a/metadata/md5-cache/chromeos-base/tast-build-deps-2-r6 b/metadata/md5-cache/chromeos-base/tast-build-deps-2-r6
deleted file mode 100644
index 72ef0e8..0000000
--- a/metadata/md5-cache/chromeos-base/tast-build-deps-2-r6
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info setup unpack
-DEPEND=chromeos-base/aosp-frameworks-base-proto chromeos-base/cros-config-api chromeos-base/hardware_verifier_proto chromeos-base/perfetto_proto chromeos-base/policy-go-proto chromeos-base/system_api chromeos-base/vm_protos chromeos-base/wilco-dtc-grpc-protos dev-go/boringssl-acvptool dev-go/cdp dev-go/clock dev-go/cmp dev-go/crypto dev-go/dbus dev-go/dst dev-go/exif dev-go/fscrypt dev-go/gapi-drive dev-go/genproto dev-go/godebug dev-go/golang-evdev dev-go/golint dev-go/gopacket dev-go/gopsutil dev-go/go-matroska dev-go/go-sys dev-go/grpc dev-go/mdns dev-go/mp4 dev-go/oauth2 dev-go/perfetto-protos dev-go/protobuf dev-go/selinux dev-go/subcommands dev-go/sync dev-go/uuid dev-go/vsock dev-go/yaml
-DESCRIPTION=Build-time dependencies of Tast binaries
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast/
-IUSE=cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/aosp-frameworks-base-proto chromeos-base/cros-config-api chromeos-base/hardware_verifier_proto chromeos-base/perfetto_proto chromeos-base/policy-go-proto chromeos-base/system_api chromeos-base/vm_protos chromeos-base/wilco-dtc-grpc-protos dev-go/boringssl-acvptool dev-go/cdp dev-go/clock dev-go/cmp dev-go/crypto dev-go/dbus dev-go/dst dev-go/exif dev-go/fscrypt dev-go/gapi-drive dev-go/genproto dev-go/godebug dev-go/golang-evdev dev-go/golint dev-go/gopacket dev-go/gopsutil dev-go/go-matroska dev-go/go-sys dev-go/grpc dev-go/mdns dev-go/mp4 dev-go/oauth2 dev-go/perfetto-protos dev-go/protobuf dev-go/selinux dev-go/subcommands dev-go/sync dev-go/uuid dev-go/vsock dev-go/yaml
-SLOT=0/2-r6
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=c0283d5f34e008948111cdadcab2d8f3
diff --git a/metadata/md5-cache/chromeos-base/tast-build-deps-9999 b/metadata/md5-cache/chromeos-base/tast-build-deps-9999
index cfe5430..8ce8b1f 100644
--- a/metadata/md5-cache/chromeos-base/tast-build-deps-9999
+++ b/metadata/md5-cache/chromeos-base/tast-build-deps-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=info setup unpack
-DEPEND=chromeos-base/aosp-frameworks-base-proto chromeos-base/cros-config-api chromeos-base/hardware_verifier_proto chromeos-base/perfetto_proto chromeos-base/policy-go-proto chromeos-base/system_api chromeos-base/vm_protos chromeos-base/wilco-dtc-grpc-protos dev-go/boringssl-acvptool dev-go/cdp dev-go/clock dev-go/cmp dev-go/crypto dev-go/dbus dev-go/dst dev-go/exif dev-go/fscrypt dev-go/gapi-drive dev-go/genproto dev-go/godebug dev-go/golang-evdev dev-go/golint dev-go/gopacket dev-go/gopsutil dev-go/go-matroska dev-go/go-sys dev-go/grpc dev-go/mdns dev-go/mp4 dev-go/oauth2 dev-go/perfetto-protos dev-go/protobuf dev-go/selinux dev-go/subcommands dev-go/sync dev-go/uuid dev-go/vsock dev-go/yaml
+DEPEND=chromeos-base/aosp-frameworks-base-proto chromeos-base/cros-config-api chromeos-base/hardware_verifier_proto chromeos-base/modemfwd-proto chromeos-base/policy-go-proto chromeos-base/system_api chromeos-base/vm_protos chromeos-base/wilco-dtc-grpc-protos dev-go/boringssl-acvptool dev-go/cdp dev-go/clock dev-go/cmp dev-go/crypto dev-go/dbus dev-go/docker dev-go/dst dev-go/exif dev-go/fscrypt dev-go/gapi-drive dev-go/genproto dev-go/godebug dev-go/golang-evdev dev-go/golint dev-go/gopacket dev-go/gopsutil dev-go/go-matroska dev-go/go-sys dev-go/grpc dev-go/mdns dev-go/mock dev-go/mp4 dev-go/oauth2 dev-go/perfetto-protos dev-go/protobuf dev-go/selinux dev-go/subcommands dev-go/sync dev-go/tarm-serial dev-go/uuid dev-go/vsock dev-go/yaml
 DESCRIPTION=Build-time dependencies of Tast binaries
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast/
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=chromeos-base/aosp-frameworks-base-proto chromeos-base/cros-config-api chromeos-base/hardware_verifier_proto chromeos-base/perfetto_proto chromeos-base/policy-go-proto chromeos-base/system_api chromeos-base/vm_protos chromeos-base/wilco-dtc-grpc-protos dev-go/boringssl-acvptool dev-go/cdp dev-go/clock dev-go/cmp dev-go/crypto dev-go/dbus dev-go/dst dev-go/exif dev-go/fscrypt dev-go/gapi-drive dev-go/genproto dev-go/godebug dev-go/golang-evdev dev-go/golint dev-go/gopacket dev-go/gopsutil dev-go/go-matroska dev-go/go-sys dev-go/grpc dev-go/mdns dev-go/mp4 dev-go/oauth2 dev-go/perfetto-protos dev-go/protobuf dev-go/selinux dev-go/subcommands dev-go/sync dev-go/uuid dev-go/vsock dev-go/yaml
+RDEPEND=chromeos-base/aosp-frameworks-base-proto chromeos-base/cros-config-api chromeos-base/hardware_verifier_proto chromeos-base/modemfwd-proto chromeos-base/policy-go-proto chromeos-base/system_api chromeos-base/vm_protos chromeos-base/wilco-dtc-grpc-protos dev-go/boringssl-acvptool dev-go/cdp dev-go/clock dev-go/cmp dev-go/crypto dev-go/dbus dev-go/docker dev-go/dst dev-go/exif dev-go/fscrypt dev-go/gapi-drive dev-go/genproto dev-go/godebug dev-go/golang-evdev dev-go/golint dev-go/gopacket dev-go/gopsutil dev-go/go-matroska dev-go/go-sys dev-go/grpc dev-go/mdns dev-go/mock dev-go/mp4 dev-go/oauth2 dev-go/perfetto-protos dev-go/protobuf dev-go/selinux dev-go/subcommands dev-go/sync dev-go/tarm-serial dev-go/uuid dev-go/vsock dev-go/yaml
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e01686abc3a3763fabaa94c6b863c075
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=75ca296608882afb877d9f3ad56d40c0
diff --git a/metadata/md5-cache/chromeos-base/tast-cmd-0.0.1-r1155 b/metadata/md5-cache/chromeos-base/tast-cmd-0.0.1-r1155
deleted file mode 100644
index 753c630..0000000
--- a/metadata/md5-cache/chromeos-base/tast-cmd-0.0.1-r1155
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup test unpack
-DEPEND=chromeos-base/tast-build-deps:= dev-lang/go
-DESCRIPTION=Host executables for running integration tests
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast/
-IUSE=cros_host cros_workon_tree_f962a7d69f70f98e292bc4a8161b165a1d3af867
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=app-arch/tar app-arch/xz-utils chromeos-base/google-breakpad chromeos-base/tast-build-deps chromeos-base/tast-vars net-misc/gsutil !chromeos-base/tast-common
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a81516626ce2b5b145aac3a0f2ca4fab
diff --git a/metadata/md5-cache/chromeos-base/tast-cmd-0.0.1-r1274 b/metadata/md5-cache/chromeos-base/tast-cmd-0.0.1-r1274
new file mode 100644
index 0000000..ea1e9cb
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tast-cmd-0.0.1-r1274
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup test unpack
+DEPEND=chromeos-base/tast-build-deps:= dev-lang/go
+DESCRIPTION=Host executables for running integration tests
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast/
+IUSE=cros_host cros_workon_tree_4ddc1331cc37b407523e4c42a01d9d6cdbe6d9eb
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=app-arch/tar app-arch/xz-utils chromeos-base/google-breakpad chromeos-base/tast-build-deps chromeos-base/tast-vars net-misc/gsutil !chromeos-base/tast-common
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=bb0c3189f244554bcc55a5f412179f5b
diff --git a/metadata/md5-cache/chromeos-base/tast-cmd-9999 b/metadata/md5-cache/chromeos-base/tast-cmd-9999
index 0396030..4b6e3d5 100644
--- a/metadata/md5-cache/chromeos-base/tast-cmd-9999
+++ b/metadata/md5-cache/chromeos-base/tast-cmd-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=app-arch/tar app-arch/xz-utils chromeos-base/google-breakpad chromeos-base/tast-build-deps chromeos-base/tast-vars net-misc/gsutil !chromeos-base/tast-common
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=08d9ea75e31233a043a6540cfd739da9
diff --git a/metadata/md5-cache/chromeos-base/tast-local-apks-cros-0.0.1-r108 b/metadata/md5-cache/chromeos-base/tast-local-apks-cros-0.0.1-r108
deleted file mode 100644
index 7beef41..0000000
--- a/metadata/md5-cache/chromeos-base/tast-local-apks-cros-0.0.1-r108
+++ /dev/null
@@ -1,12 +0,0 @@
-BDEPEND=chromeos-base/android-sdk dev-util/gn dev-vcs/git
-DEFINED_PHASES=compile info install setup unpack
-DESCRIPTION=Compiled apks used by local Tast tests in the cros bundle
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast-tests/+/master/android
-IUSE=cros_host cros_workon_tree_891957ec6f33631e7104b99559ddd79608d5911d
-KEYWORDS=*
-LICENSE=BSD-Google GPL-3
-PROPERTIES=live
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=730038f571080ecb00f3c47a9631e8d6
diff --git a/metadata/md5-cache/chromeos-base/tast-local-apks-cros-0.0.1-r146 b/metadata/md5-cache/chromeos-base/tast-local-apks-cros-0.0.1-r146
new file mode 100644
index 0000000..a7c0b65
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tast-local-apks-cros-0.0.1-r146
@@ -0,0 +1,12 @@
+BDEPEND=chromeos-base/android-sdk dev-util/gn dev-vcs/git
+DEFINED_PHASES=compile info install setup unpack
+DESCRIPTION=Compiled apks used by local Tast tests in the cros bundle
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast-tests/+/master/android
+IUSE=cros_host cros_workon_tree_871ed76d67f224ac406ec980c079cc110ba16632
+KEYWORDS=*
+LICENSE=BSD-Google GPL-3
+PROPERTIES=live
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=cecb0f1d5a7b72fe95b77da6955f51ff
diff --git a/metadata/md5-cache/chromeos-base/tast-local-apks-cros-9999 b/metadata/md5-cache/chromeos-base/tast-local-apks-cros-9999
index a2cabe3..b2e35d4 100644
--- a/metadata/md5-cache/chromeos-base/tast-local-apks-cros-9999
+++ b/metadata/md5-cache/chromeos-base/tast-local-apks-cros-9999
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google GPL-3
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f45715c471fb3e052e7e96e145901b9d
diff --git a/metadata/md5-cache/chromeos-base/tast-local-helpers-cros-0.0.1-r205 b/metadata/md5-cache/chromeos-base/tast-local-helpers-cros-0.0.1-r205
deleted file mode 100644
index 7d737df..0000000
--- a/metadata/md5-cache/chromeos-base/tast-local-helpers-cros-0.0.1-r205
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-cpp/gtest:= media-libs/minigbm:= x11-libs/libdrm:= chromeos-base/goldctl >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Compiled executables used by local Tast tests in the cros bundle
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast-tests/+/master/helpers
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_28cbb351025522a4f769aec6fc01bfb93d49208b cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_28cbb351025522a4f769aec6fc01bfb93d49208b cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google GPL-3
-PROPERTIES=live live
-RDEPEND=dev-cpp/gtest:= media-libs/minigbm:= x11-libs/libdrm:= chromeos-base/goldctl >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b5396be84c965a3d9340b7b1fa004140
diff --git a/metadata/md5-cache/chromeos-base/tast-local-helpers-cros-0.0.1-r232 b/metadata/md5-cache/chromeos-base/tast-local-helpers-cros-0.0.1-r232
new file mode 100644
index 0000000..fed451d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tast-local-helpers-cros-0.0.1-r232
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-cpp/gtest:= media-libs/minigbm:= x11-libs/libdrm:= chromeos-base/goldctl >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Compiled executables used by local Tast tests in the cros bundle
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast-tests/+/master/helpers
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_efd9350877a286e1dd8489ecf50980e33eff3a3b cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_efd9350877a286e1dd8489ecf50980e33eff3a3b cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google GPL-3
+PROPERTIES=live live
+RDEPEND=dev-cpp/gtest:= media-libs/minigbm:= x11-libs/libdrm:= chromeos-base/goldctl >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5654a80dad762b383c8016f3ac61cbce
diff --git a/metadata/md5-cache/chromeos-base/tast-local-helpers-cros-9999 b/metadata/md5-cache/chromeos-base/tast-local-helpers-cros-9999
index 98d37f3..3d431a2 100644
--- a/metadata/md5-cache/chromeos-base/tast-local-helpers-cros-9999
+++ b/metadata/md5-cache/chromeos-base/tast-local-helpers-cros-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=dev-cpp/gtest:= media-libs/minigbm:= x11-libs/libdrm:= chromeos-base/goldctl >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=546ff51c2a987ec239f8928671800cb1
diff --git a/metadata/md5-cache/chromeos-base/tast-local-test-runner-0.0.1-r1106 b/metadata/md5-cache/chromeos-base/tast-local-test-runner-0.0.1-r1106
deleted file mode 100644
index 24ab4e5..0000000
--- a/metadata/md5-cache/chromeos-base/tast-local-test-runner-0.0.1-r1106
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup test unpack
-DEPEND=chromeos-base/tast-build-deps:= dev-lang/go
-DESCRIPTION=Runner for local integration tests
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast/
-IUSE=cros_host cros_workon_tree_f962a7d69f70f98e292bc4a8161b165a1d3af867
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=app-arch/tar !chromeos-base/tast-common
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=327a863e2cca444c1bcb943ce22797c6
diff --git a/metadata/md5-cache/chromeos-base/tast-local-test-runner-0.0.1-r1225 b/metadata/md5-cache/chromeos-base/tast-local-test-runner-0.0.1-r1225
new file mode 100644
index 0000000..de11594
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tast-local-test-runner-0.0.1-r1225
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup test unpack
+DEPEND=chromeos-base/tast-build-deps:= dev-lang/go
+DESCRIPTION=Runner for local integration tests
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast/
+IUSE=cros_host cros_workon_tree_4ddc1331cc37b407523e4c42a01d9d6cdbe6d9eb
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=app-arch/tar !chromeos-base/tast-common
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=372f9feb5b1c1cbee25822cf56a899f4
diff --git a/metadata/md5-cache/chromeos-base/tast-local-test-runner-9999 b/metadata/md5-cache/chromeos-base/tast-local-test-runner-9999
index fc95a52..a305f5f 100644
--- a/metadata/md5-cache/chromeos-base/tast-local-test-runner-9999
+++ b/metadata/md5-cache/chromeos-base/tast-local-test-runner-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=app-arch/tar !chromeos-base/tast-common
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=912d6f3eb89e31da8608476aa69b8c89
diff --git a/metadata/md5-cache/chromeos-base/tast-local-tests-cros-0.0.1-r6666 b/metadata/md5-cache/chromeos-base/tast-local-tests-cros-0.0.1-r6666
deleted file mode 100644
index b7b872a..0000000
--- a/metadata/md5-cache/chromeos-base/tast-local-tests-cros-0.0.1-r6666
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup test unpack
-DEPEND=chromeos-base/tast-build-deps:= dev-lang/go dev-go/crypto
-DESCRIPTION=Bundle of local integration tests for Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast-tests/
-IUSE=arc chromeless_tty chromeless_tests cups cros_host cros_workon_tree_e3005392b15b79f2265369f719b360f97892b320_f962a7d69f70f98e292bc4a8161b165a1d3af867
-KEYWORDS=*
-LICENSE=Apache-2.0 BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/policy-testserver chromeos-base/tast-local-helpers-cros chromeos-base/virtual-usb-printer chromeos-base/wprgo !chromeless_tty? ( !chromeless_tests? ( chromeos-base/drm-tests ) ) dev-libs/openssl:0= arc? ( chromeos-base/tast-local-apks-cros dev-util/android-tools dev-util/android-uiautomator-server ) net-misc/curl cups? ( net-print/ippsample ) sys-apps/memtester sys-apps/rootdev virtual/udev app-arch/tar
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	tast-bundle	1b6d710312664806231ed19202cd8ddc	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7ac421a113b72192f8e48b5385e9f333
diff --git a/metadata/md5-cache/chromeos-base/tast-local-tests-cros-0.0.2-r7949 b/metadata/md5-cache/chromeos-base/tast-local-tests-cros-0.0.2-r7949
new file mode 100644
index 0000000..9f1515b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tast-local-tests-cros-0.0.2-r7949
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup test unpack
+DEPEND=chromeos-base/tast-build-deps:= dev-lang/go dev-go/crypto
+DESCRIPTION=Bundle of local integration tests for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast-tests/
+IUSE=arc chromeless_tty chromeless_tests cups cros_host cros_workon_tree_1485ccd4d9a6504dc14d40573dc04488e4c600b1_4ddc1331cc37b407523e4c42a01d9d6cdbe6d9eb
+KEYWORDS=*
+LICENSE=Apache-2.0 BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/policy-testserver chromeos-base/tast-local-helpers-cros chromeos-base/tast-tests-local-data chromeos-base/virtual-usb-printer chromeos-base/wprgo !chromeless_tty? ( !chromeless_tests? ( chromeos-base/drm-tests ) ) dev-libs/openssl:0= arc? ( chromeos-base/tast-local-apks-cros dev-util/android-tools dev-util/android-uiautomator-server ) net-misc/curl cups? ( net-print/ippsample ) sys-apps/memtester sys-apps/rootdev virtual/udev app-arch/tar
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	tast-bundle	3fc345d40b65f74f9b3dd66e1d280645	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=768fc496e020e29be5142f416006c814
diff --git a/metadata/md5-cache/chromeos-base/tast-local-tests-cros-9999 b/metadata/md5-cache/chromeos-base/tast-local-tests-cros-9999
index 2fac4b1..6aa376d 100644
--- a/metadata/md5-cache/chromeos-base/tast-local-tests-cros-9999
+++ b/metadata/md5-cache/chromeos-base/tast-local-tests-cros-9999
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=Apache-2.0 BSD-Google
 PROPERTIES=live
-RDEPEND=chromeos-base/policy-testserver chromeos-base/tast-local-helpers-cros chromeos-base/virtual-usb-printer chromeos-base/wprgo !chromeless_tty? ( !chromeless_tests? ( chromeos-base/drm-tests ) ) dev-libs/openssl:0= arc? ( chromeos-base/tast-local-apks-cros dev-util/android-tools dev-util/android-uiautomator-server ) net-misc/curl cups? ( net-print/ippsample ) sys-apps/memtester sys-apps/rootdev virtual/udev app-arch/tar
+RDEPEND=chromeos-base/policy-testserver chromeos-base/tast-local-helpers-cros chromeos-base/tast-tests-local-data chromeos-base/virtual-usb-printer chromeos-base/wprgo !chromeless_tty? ( !chromeless_tests? ( chromeos-base/drm-tests ) ) dev-libs/openssl:0= arc? ( chromeos-base/tast-local-apks-cros dev-util/android-tools dev-util/android-uiautomator-server ) net-misc/curl cups? ( net-print/ippsample ) sys-apps/memtester sys-apps/rootdev virtual/udev app-arch/tar
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	tast-bundle	1b6d710312664806231ed19202cd8ddc	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=160ac78f5303e5971b88d25b89177a75
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	tast-bundle	3fc345d40b65f74f9b3dd66e1d280645	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=098edbcd3592f8e0742fb438f1655272
diff --git a/metadata/md5-cache/chromeos-base/tast-proto-0.0.1-r141 b/metadata/md5-cache/chromeos-base/tast-proto-0.0.1-r141
new file mode 100644
index 0000000..4f1582f
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tast-proto-0.0.1-r141
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst setup test unpack
+DEPEND=dev-lang/go
+DESCRIPTION=Provides go bindings to proto APIs for tast
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast/
+IUSE=cros_host cros_workon_tree_4ddc1331cc37b407523e4c42a01d9d6cdbe6d9eb
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=445763a6ff720f225884b18853541cfa
diff --git a/metadata/md5-cache/chromeos-base/tast-proto-0.0.1-r21 b/metadata/md5-cache/chromeos-base/tast-proto-0.0.1-r21
deleted file mode 100644
index 51f2bd1..0000000
--- a/metadata/md5-cache/chromeos-base/tast-proto-0.0.1-r21
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=dev-lang/go
-DESCRIPTION=Provides go bindings to proto APIs for tast
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast/
-IUSE=cros_host cros_workon_tree_f962a7d69f70f98e292bc4a8161b165a1d3af867
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3a62c6209d8dd3fab68d2fcfc87e0186
diff --git a/metadata/md5-cache/chromeos-base/tast-proto-9999 b/metadata/md5-cache/chromeos-base/tast-proto-9999
index e729fef..15ac707 100644
--- a/metadata/md5-cache/chromeos-base/tast-proto-9999
+++ b/metadata/md5-cache/chromeos-base/tast-proto-9999
@@ -9,5 +9,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a666e178209fd4f5a175db75474c8c9e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4dc9ce6298f3a9563c21660f9f444f97
diff --git a/metadata/md5-cache/chromeos-base/tast-remote-tests-cros-0.0.1-r6716 b/metadata/md5-cache/chromeos-base/tast-remote-tests-cros-0.0.1-r6716
deleted file mode 100644
index e4cb9f0..0000000
--- a/metadata/md5-cache/chromeos-base/tast-remote-tests-cros-0.0.1-r6716
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup test unpack
-DEPEND=chromeos-base/tast-build-deps:= dev-lang/go dev-go/crypto
-DESCRIPTION=Bundle of remote integration tests for Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast-tests/
-IUSE=cros_host cros_workon_tree_e3005392b15b79f2265369f719b360f97892b320_f962a7d69f70f98e292bc4a8161b165a1d3af867_19a599e153588e7beddcc62b22f526879f2985cf
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-python/pillow media-libs/opencv app-arch/tar
-SLOT=0/0.0.1-r6716
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	tast-bundle	1b6d710312664806231ed19202cd8ddc	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d73c3378fd1fcc764d21b577904fe1c9
diff --git a/metadata/md5-cache/chromeos-base/tast-remote-tests-cros-0.0.2-r8021 b/metadata/md5-cache/chromeos-base/tast-remote-tests-cros-0.0.2-r8021
new file mode 100644
index 0000000..1f9513b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tast-remote-tests-cros-0.0.2-r8021
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup test unpack
+DEPEND=chromeos-base/tast-build-deps:= dev-lang/go dev-go/crypto
+DESCRIPTION=Bundle of remote integration tests for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast-tests/
+IUSE=cros_host cros_workon_tree_1485ccd4d9a6504dc14d40573dc04488e4c600b1_4ddc1331cc37b407523e4c42a01d9d6cdbe6d9eb_3f2804fd986e4f3dabfe8baa51297be1f057f7d3
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/tast-tests-remote-data dev-python/pillow media-libs/opencv app-arch/tar
+SLOT=0/0.0.2-r8021
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	tast-bundle	3fc345d40b65f74f9b3dd66e1d280645	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5a2d48d2d8ab03b58a75bdcc9dc3c6f6
diff --git a/metadata/md5-cache/chromeos-base/tast-remote-tests-cros-9999 b/metadata/md5-cache/chromeos-base/tast-remote-tests-cros-9999
index e74bc93..30d0cc8 100644
--- a/metadata/md5-cache/chromeos-base/tast-remote-tests-cros-9999
+++ b/metadata/md5-cache/chromeos-base/tast-remote-tests-cros-9999
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=dev-python/pillow media-libs/opencv app-arch/tar
+RDEPEND=chromeos-base/tast-tests-remote-data dev-python/pillow media-libs/opencv app-arch/tar
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	tast-bundle	1b6d710312664806231ed19202cd8ddc	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3b05127a08c6e34713bc6d19b99c44f4
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	tast-bundle	3fc345d40b65f74f9b3dd66e1d280645	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7fb38036027bed719eb60450f54e5a4e
diff --git a/metadata/md5-cache/chromeos-base/tast-tests-local-data-0.0.1-r669 b/metadata/md5-cache/chromeos-base/tast-tests-local-data-0.0.1-r669
new file mode 100644
index 0000000..246a7f1
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tast-tests-local-data-0.0.1-r669
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Data files for local Tast tests
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast-tests
+IUSE=cros_host cros_workon_tree_8b730298065fabb01b817f85bf1686856f17b7ba
+KEYWORDS=*
+LICENSE=BSD-Google GPL-3
+PROPERTIES=live
+RDEPEND=!<chromeos-base/tast-local-tests-cros-0.0.2
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	tast-bundle-data	8a38f8cda493ae24c6e77f86a49a92cc	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=27487456e79793e70c6585b9a78172ca
diff --git a/metadata/md5-cache/chromeos-base/tast-tests-local-data-9999 b/metadata/md5-cache/chromeos-base/tast-tests-local-data-9999
new file mode 100644
index 0000000..bf2ef1b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tast-tests-local-data-9999
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Data files for local Tast tests
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast-tests
+IUSE=cros_host cros_workon_tree_
+KEYWORDS=~*
+LICENSE=BSD-Google GPL-3
+PROPERTIES=live
+RDEPEND=!<chromeos-base/tast-local-tests-cros-0.0.2
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	tast-bundle-data	8a38f8cda493ae24c6e77f86a49a92cc	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d3f062e5029f897e90013ec39293f29b
diff --git a/metadata/md5-cache/chromeos-base/tast-tests-remote-data-0.0.1-r747 b/metadata/md5-cache/chromeos-base/tast-tests-remote-data-0.0.1-r747
new file mode 100644
index 0000000..5bc3ca5
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tast-tests-remote-data-0.0.1-r747
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Data files for remote Tast tests
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast-tests
+IUSE=cros_host cros_workon_tree_1f9d657655879756117a2f2b0f6a84f23e5b3159
+KEYWORDS=*
+LICENSE=BSD-Google GPL-3
+PROPERTIES=live
+RDEPEND=!<chromeos-base/tast-remote-tests-cros-0.0.2
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	tast-bundle-data	8a38f8cda493ae24c6e77f86a49a92cc	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ee2a06d75bff30b3ce476045b19262cf
diff --git a/metadata/md5-cache/chromeos-base/tast-tests-remote-data-9999 b/metadata/md5-cache/chromeos-base/tast-tests-remote-data-9999
new file mode 100644
index 0000000..84a5144
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tast-tests-remote-data-9999
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Data files for remote Tast tests
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tast-tests
+IUSE=cros_host cros_workon_tree_
+KEYWORDS=~*
+LICENSE=BSD-Google GPL-3
+PROPERTIES=live
+RDEPEND=!<chromeos-base/tast-remote-tests-cros-0.0.2
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	tast-bundle-data	8a38f8cda493ae24c6e77f86a49a92cc	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6d7e479579525481f63bbca025f830b1
diff --git a/metadata/md5-cache/chromeos-base/tast-use-flags-1-r46 b/metadata/md5-cache/chromeos-base/tast-use-flags-1-r46
deleted file mode 100644
index 5e2da4a..0000000
--- a/metadata/md5-cache/chromeos-base/tast-use-flags-1-r46
+++ /dev/null
@@ -1,11 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-DESCRIPTION=Text file listing USE flags for Tast test dependencies
-EAPI=7
-IUSE=amd64 android-container-pi android-vm-pi android-vm-rvc arc arc-camera1 arc-camera3 arc-launched-32bit-abi arc_uses_cros_video_decoder arcpp arcvm arm arm64 asan betty biod borealis_host cdm_factory_daemon cert_provision cheets_user cheets_user_64 cheets_userdebug cheets_userdebug_64 chrome_internal chrome_media chromeless_tty containers coresched cr50_onboard crosvm-gpu cups diagnostics disable_cros_video_decoder dptf elm-kernelnext direncription_allow_v2 dlc dlc_test +drivefs drm_atomic elm fizz force_breakpad fwupd gboard_decoder grunt hammerd hana hana-kernelnext houdini houdini64 hps iioservice internal +internal_mic +internal_speaker iwlwifi_rescan kernel-3_18 kernel-4_4 kernel-4_14 kernel-4_19 kernel-5_4 kernel-5_10 kernel-upstream kukui kvm_host kvm_transition lxc manatee mbo memd ml_benchmark_drivers ml_service moblab mocktpm msan +nacl ndk_translation ndk_translation64 nnapi nvme nyan_kitty ocr octopus ondevice_handwriting pita racc rialto rk3399 sata selinux selinux_experimental sirenia skate smartdim snow spring +storage_wearout_detect tablet_form_factor touchview tpm2 transparent_hugepage ubsan unibuild usbguard v4l2_codec vaapi veyron_mickey veyron_rialto vhost-user-devices video_cards_amdgpu video_cards_intel virtio_gpu vulkan watchdog wifi_hostap_test wilco +wired_8021x +wpa3_sae zork cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b11a7fb122137665c598661c6b08df03
diff --git a/metadata/md5-cache/chromeos-base/tast-use-flags-1-r58 b/metadata/md5-cache/chromeos-base/tast-use-flags-1-r58
new file mode 100644
index 0000000..448727b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tast-use-flags-1-r58
@@ -0,0 +1,11 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Text file listing USE flags for Tast test dependencies
+EAPI=7
+IUSE=amd64 android-container-pi android-vm-pi android-vm-rvc arc arc-camera1 arc-camera3 arc-launched-32bit-abi arc_uses_cros_video_decoder arcpp arcvm arm arm64 asan betty biod borealis_host cdm_factory_daemon cert_provision cheets_user cheets_user_64 cheets_userdebug cheets_userdebug_64 chrome_internal chrome_media chromeless_tty containers coresched cr50_onboard crosvm-gpu cups diagnostics disable_cros_video_decoder dptf elm-kernelnext direncription_allow_v2 dlc dlc_test +drivefs drm_atomic elm fizz force_breakpad fwupd gboard_decoder grunt hammerd hana hana-kernelnext houdini houdini64 hps iioservice internal iwlwifi_rescan kernel-3_18 kernel-4_4 kernel-4_14 kernel-4_19 kernel-5_4 kernel-5_10 kernel-upstream kukui kvm_host kvm_transition lxc manatee mbo memd ml_benchmark_drivers ml_service moblab mocktpm modemfwd msan +nacl ndk_translation ndk_translation64 nnapi no_factory_flow nvme nyan_kitty ocr octopus ondevice_document_scanner ondevice_handwriting pinweaver_csme pita racc rialto rk3399 sata selinux selinux_experimental sirenia skate smartdim snow spring +storage_wearout_detect tablet_form_factor tpm2 transparent_hugepage ubsan unibuild usbguard v4l2_codec vaapi veyron_mickey veyron_rialto video_cards_amdgpu video_cards_intel video_cards_mediatek video_cards_msm virtio_gpu vulkan watchdog wifi_hostap_test wilco +wired_8021x +wpa3_sae zork cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f9d3b6b147964b9c1d4ab46d8aa225a9
diff --git a/metadata/md5-cache/chromeos-base/tast-use-flags-9999 b/metadata/md5-cache/chromeos-base/tast-use-flags-9999
index 6024b44..4532aa8 100644
--- a/metadata/md5-cache/chromeos-base/tast-use-flags-9999
+++ b/metadata/md5-cache/chromeos-base/tast-use-flags-9999
@@ -2,10 +2,10 @@
 DEFINED_PHASES=info install setup unpack
 DESCRIPTION=Text file listing USE flags for Tast test dependencies
 EAPI=7
-IUSE=amd64 android-container-pi android-vm-pi android-vm-rvc arc arc-camera1 arc-camera3 arc-launched-32bit-abi arc_uses_cros_video_decoder arcpp arcvm arm arm64 asan betty biod borealis_host cdm_factory_daemon cert_provision cheets_user cheets_user_64 cheets_userdebug cheets_userdebug_64 chrome_internal chrome_media chromeless_tty containers coresched cr50_onboard crosvm-gpu cups diagnostics disable_cros_video_decoder dptf elm-kernelnext direncription_allow_v2 dlc dlc_test +drivefs drm_atomic elm fizz force_breakpad fwupd gboard_decoder grunt hammerd hana hana-kernelnext houdini houdini64 hps iioservice internal +internal_mic +internal_speaker iwlwifi_rescan kernel-3_18 kernel-4_4 kernel-4_14 kernel-4_19 kernel-5_4 kernel-5_10 kernel-upstream kukui kvm_host kvm_transition lxc manatee mbo memd ml_benchmark_drivers ml_service moblab mocktpm msan +nacl ndk_translation ndk_translation64 nnapi nvme nyan_kitty ocr octopus ondevice_handwriting pita racc rialto rk3399 sata selinux selinux_experimental sirenia skate smartdim snow spring +storage_wearout_detect tablet_form_factor touchview tpm2 transparent_hugepage ubsan unibuild usbguard v4l2_codec vaapi veyron_mickey veyron_rialto vhost-user-devices video_cards_amdgpu video_cards_intel virtio_gpu vulkan watchdog wifi_hostap_test wilco +wired_8021x +wpa3_sae zork cros_host cros_workon_tree_
+IUSE=amd64 android-container-pi android-vm-pi android-vm-rvc arc arc-camera1 arc-camera3 arc-launched-32bit-abi arc_uses_cros_video_decoder arcpp arcvm arm arm64 asan betty biod borealis_host cdm_factory_daemon cert_provision cheets_user cheets_user_64 cheets_userdebug cheets_userdebug_64 chrome_internal chrome_media chromeless_tty containers coresched cr50_onboard crosvm-gpu cups diagnostics disable_cros_video_decoder dptf elm-kernelnext direncription_allow_v2 dlc dlc_test +drivefs drm_atomic elm fizz force_breakpad fwupd gboard_decoder grunt hammerd hana hana-kernelnext houdini houdini64 hps iioservice internal iwlwifi_rescan kernel-3_18 kernel-4_4 kernel-4_14 kernel-4_19 kernel-5_4 kernel-5_10 kernel-upstream kukui kvm_host kvm_transition lxc manatee mbo memd ml_benchmark_drivers ml_service moblab mocktpm modemfwd msan +nacl ndk_translation ndk_translation64 nnapi no_factory_flow nvme nyan_kitty ocr octopus ondevice_document_scanner ondevice_handwriting pinweaver_csme pita racc rialto rk3399 sata selinux selinux_experimental sirenia skate smartdim snow spring +storage_wearout_detect tablet_form_factor tpm2 transparent_hugepage ubsan unibuild usbguard v4l2_codec vaapi veyron_mickey veyron_rialto video_cards_amdgpu video_cards_intel video_cards_mediatek video_cards_msm virtio_gpu vulkan watchdog wifi_hostap_test wilco +wired_8021x +wpa3_sae zork cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e4d0813f355ded075b2c49cfd59ab6a7
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=302d523c80319171ac1f13a03c13c670
diff --git a/metadata/md5-cache/chromeos-base/tast-vars-0.0.1-r1 b/metadata/md5-cache/chromeos-base/tast-vars-0.0.1-r1
index 9d53db0..c84cb39 100644
--- a/metadata/md5-cache/chromeos-base/tast-vars-0.0.1-r1
+++ b/metadata/md5-cache/chromeos-base/tast-vars-0.0.1-r1
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=virtual/tast-vars
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d5b97aca55555b1f63821bf4701e6371
diff --git a/metadata/md5-cache/chromeos-base/tast-vars-9999 b/metadata/md5-cache/chromeos-base/tast-vars-9999
index 4004f2b..dcf314e 100644
--- a/metadata/md5-cache/chromeos-base/tast-vars-9999
+++ b/metadata/md5-cache/chromeos-base/tast-vars-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=virtual/tast-vars
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1ba04dc57cf392b99a5b4668bbe04b68
diff --git a/metadata/md5-cache/chromeos-base/telemetry-0.0.1 b/metadata/md5-cache/chromeos-base/telemetry-0.0.1
index afe7cb9..8d68403 100644
--- a/metadata/md5-cache/chromeos-base/telemetry-0.0.1
+++ b/metadata/md5-cache/chromeos-base/telemetry-0.0.1
@@ -8,5 +8,5 @@
 LICENSE=GPL-2
 RDEPEND=dev-python/psutil[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=504dc26c1ae48f5d750bfe3ddd1d7975
diff --git a/metadata/md5-cache/chromeos-base/telemetry-0.0.1-r7 b/metadata/md5-cache/chromeos-base/telemetry-0.0.1-r7
index afe7cb9..8d68403 100644
--- a/metadata/md5-cache/chromeos-base/telemetry-0.0.1-r7
+++ b/metadata/md5-cache/chromeos-base/telemetry-0.0.1-r7
@@ -8,5 +8,5 @@
 LICENSE=GPL-2
 RDEPEND=dev-python/psutil[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=504dc26c1ae48f5d750bfe3ddd1d7975
diff --git a/metadata/md5-cache/chromeos-base/termina-dlc-93.14054.0.0-r1 b/metadata/md5-cache/chromeos-base/termina-dlc-93.14054.0.0-r1
deleted file mode 100644
index 0cb852e..0000000
--- a/metadata/md5-cache/chromeos-base/termina-dlc-93.14054.0.0-r1
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile info install setup unpack
-DESCRIPTION=DLC package for termina.
-EAPI=7
-IUSE=kvm_host dlc amd64 arm cros_host cros_workon_tree_
-KEYWORDS=*
-LICENSE=BSD-Google
-REQUIRED_USE=dlc kvm_host ^^ ( amd64 arm arm64 )
-RESTRICT=nomirror
-SLOT=0
-SRC_URI=amd64? ( gs://termina-component-testing/uprev-test/amd64/93.14054.0.0/guest-vm-base.tbz -> termina_amd64.tbz ) arm? ( gs://termina-component-testing/uprev-test/arm/93.14054.0.0/guest-vm-base.tbz -> termina_arm.tbz ) arm64? ( gs://termina-component-testing/uprev-test/arm/93.14054.0.0/guest-vm-base.tbz -> termina_arm.tbz )
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	dlc	7fff3565c77657ab37a6955949c208a7	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8a12dfe11ddb070ad1a2e1808e7c4b64
diff --git a/metadata/md5-cache/chromeos-base/termina-dlc-97.14279.0.0-r1 b/metadata/md5-cache/chromeos-base/termina-dlc-97.14279.0.0-r1
new file mode 100644
index 0000000..c29792e
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/termina-dlc-97.14279.0.0-r1
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile info install setup unpack
+DESCRIPTION=DLC package for termina.
+EAPI=7
+IUSE=kvm_host dlc amd64 arm cros_host cros_workon_tree_
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=dlc kvm_host ^^ ( amd64 arm arm64 )
+RESTRICT=nomirror
+SLOT=0
+SRC_URI=amd64? ( gs://termina-component-testing/uprev-test/amd64/97.14279.0.0/guest-vm-base.tbz -> termina_amd64.tbz ) arm? ( gs://termina-component-testing/uprev-test/arm/97.14279.0.0/guest-vm-base.tbz -> termina_arm.tbz ) arm64? ( gs://termina-component-testing/uprev-test/arm/97.14279.0.0/guest-vm-base.tbz -> termina_arm.tbz )
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	dlc	4b31053498fd5ebfac3e3b4a1ccc8bb9	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8a12dfe11ddb070ad1a2e1808e7c4b64
diff --git a/metadata/md5-cache/chromeos-base/termina-dlc-9999 b/metadata/md5-cache/chromeos-base/termina-dlc-9999
index 48c984e..eb7ad3b 100644
--- a/metadata/md5-cache/chromeos-base/termina-dlc-9999
+++ b/metadata/md5-cache/chromeos-base/termina-dlc-9999
@@ -7,5 +7,5 @@
 REQUIRED_USE=dlc kvm_host ^^ ( amd64 arm arm64 )
 RESTRICT=nomirror
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	dlc	7fff3565c77657ab37a6955949c208a7	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	dlc	4b31053498fd5ebfac3e3b4a1ccc8bb9	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=843c6a394c8cf67c23eae95b72185eed
diff --git a/metadata/md5-cache/chromeos-base/termina_container_tools-0.0.1 b/metadata/md5-cache/chromeos-base/termina_container_tools-0.0.1
index 0e5d53b..b1e27d6 100644
--- a/metadata/md5-cache/chromeos-base/termina_container_tools-0.0.1
+++ b/metadata/md5-cache/chromeos-base/termina_container_tools-0.0.1
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 RDEPEND=x11-themes/cros-adapta >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=125630f460c69fd378430b9b94b71d5c
diff --git a/metadata/md5-cache/chromeos-base/termina_container_tools-0.0.1-r30 b/metadata/md5-cache/chromeos-base/termina_container_tools-0.0.1-r30
index 0e5d53b..b1e27d6 100644
--- a/metadata/md5-cache/chromeos-base/termina_container_tools-0.0.1-r30
+++ b/metadata/md5-cache/chromeos-base/termina_container_tools-0.0.1-r30
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 RDEPEND=x11-themes/cros-adapta >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=125630f460c69fd378430b9b94b71d5c
diff --git a/metadata/md5-cache/chromeos-base/test-server-0.0.1-r40 b/metadata/md5-cache/chromeos-base/test-server-0.0.1-r40
deleted file mode 100644
index 97855c9..0000000
--- a/metadata/md5-cache/chromeos-base/test-server-0.0.1-r40
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info setup unpack
-DEPEND=dev-util/provision-server dev-util/test-exec-server dev-util/test-plan
-DESCRIPTION=Collection of test services installed into the cros_sdk env
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src
-IUSE=cros_host cros_workon_tree_f3ec367333d2cf60a121dbc47a5780c04ce28dc7
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-util/provision-server dev-util/test-exec-server dev-util/test-plan
-SLOT=0/0.0.1-r40
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6c9a87d5f73db9138b975da2cefa8f19
diff --git a/metadata/md5-cache/chromeos-base/test-server-0.0.1-r95 b/metadata/md5-cache/chromeos-base/test-server-0.0.1-r95
new file mode 100644
index 0000000..345b6ec
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/test-server-0.0.1-r95
@@ -0,0 +1,12 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info setup unpack
+DESCRIPTION=Obsolete (to remove)
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src
+IUSE=cros_host cros_workon_tree_3c054d108afe656ffecc42af955b5e553d6f62d0
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+SLOT=0/0.0.1-r95
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2e4fe07c61e5cc33fb070a7a6ce68a8d
diff --git a/metadata/md5-cache/chromeos-base/test-server-9999 b/metadata/md5-cache/chromeos-base/test-server-9999
index ecaea73..a028ab1 100644
--- a/metadata/md5-cache/chromeos-base/test-server-9999
+++ b/metadata/md5-cache/chromeos-base/test-server-9999
@@ -1,14 +1,12 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=info setup unpack
-DEPEND=dev-util/provision-server dev-util/test-exec-server dev-util/test-plan
-DESCRIPTION=Collection of test services installed into the cros_sdk env
+DESCRIPTION=Obsolete (to remove)
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src
 IUSE=cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=dev-util/provision-server dev-util/test-exec-server dev-util/test-plan
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d74c773a0d19b827b9478fcc009441d5
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=db47a2d64bf9d0c59b2a0f0b540df32f
diff --git a/metadata/md5-cache/chromeos-base/thd-0.0.1-r343 b/metadata/md5-cache/chromeos-base/thd-0.0.1-r343
deleted file mode 100644
index 5f9fc09..0000000
--- a/metadata/md5-cache/chromeos-base/thd-0.0.1-r343
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Thermal Daemon for Chromium OS
-EAPI=5
-HOMEPAGE=http://dev.chromium.org/chromium-os/packages/thd
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_ece498561dfd2919d08524f2ad5d5c60982feb4b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_ece498561dfd2919d08524f2ad5d5c60982feb4b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ba4dd0fd63d2bebc9cfbce29190ab1be
diff --git a/metadata/md5-cache/chromeos-base/thd-0.0.1-r368 b/metadata/md5-cache/chromeos-base/thd-0.0.1-r368
new file mode 100644
index 0000000..060e9d9
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/thd-0.0.1-r368
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Thermal Daemon for Chromium OS
+EAPI=5
+HOMEPAGE=http://dev.chromium.org/chromium-os/packages/thd
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ece498561dfd2919d08524f2ad5d5c60982feb4b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_ece498561dfd2919d08524f2ad5d5c60982feb4b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=72ddb4c55c3275b4defed4edbafee96d
diff --git a/metadata/md5-cache/chromeos-base/thd-9999 b/metadata/md5-cache/chromeos-base/thd-9999
index ae43107..5dfe3c8 100644
--- a/metadata/md5-cache/chromeos-base/thd-9999
+++ b/metadata/md5-cache/chromeos-base/thd-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=75c46430d9519c5ded02a48f6bc33466
diff --git a/metadata/md5-cache/chromeos-base/timberslide-0.0.1-r1559 b/metadata/md5-cache/chromeos-base/timberslide-0.0.1-r1559
deleted file mode 100644
index d464f33..0000000
--- a/metadata/md5-cache/chromeos-base/timberslide-0.0.1-r1559
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/re2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=EC log concatenator for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/timberslide/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_ed5e8ef1b9fb278f4990bde11814cdf639d8aa20_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_ed5e8ef1b9fb278f4990bde11814cdf639d8aa20_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/re2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r1559
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5b0dfa39b6756145f99b27f94d643552
diff --git a/metadata/md5-cache/chromeos-base/timberslide-0.0.1-r1605 b/metadata/md5-cache/chromeos-base/timberslide-0.0.1-r1605
new file mode 100644
index 0000000..9a7010a
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/timberslide-0.0.1-r1605
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/re2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=EC log concatenator for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/timberslide/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_76bdc511684f0f1a83d9af6c3484d7a48f24626b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_76bdc511684f0f1a83d9af6c3484d7a48f24626b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/re2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r1605
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e838b0b84ee1a02751838bd5f0302ccc
diff --git a/metadata/md5-cache/chromeos-base/timberslide-9999 b/metadata/md5-cache/chromeos-base/timberslide-9999
index 25b3355..5bf155f 100644
--- a/metadata/md5-cache/chromeos-base/timberslide-9999
+++ b/metadata/md5-cache/chromeos-base/timberslide-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/re2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2c8ac5d5e1c911ea2f5bba37f8c3b4a1
diff --git a/metadata/md5-cache/chromeos-base/tnull-0.0.1-r28 b/metadata/md5-cache/chromeos-base/tnull-0.0.1-r28
index 1c1f4c3..e6c5a9a 100644
--- a/metadata/md5-cache/chromeos-base/tnull-0.0.1-r28
+++ b/metadata/md5-cache/chromeos-base/tnull-0.0.1-r28
@@ -9,5 +9,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9d92d24175faf9e6b67a95d15174e036
diff --git a/metadata/md5-cache/chromeos-base/tnull-9999 b/metadata/md5-cache/chromeos-base/tnull-9999
index 8bcf72d..2743fc7 100644
--- a/metadata/md5-cache/chromeos-base/tnull-9999
+++ b/metadata/md5-cache/chromeos-base/tnull-9999
@@ -9,5 +9,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=fe8b11d6ee02231a8e40a7f365230c5a
diff --git a/metadata/md5-cache/chromeos-base/toolchain-tests-0.0.1-r5143 b/metadata/md5-cache/chromeos-base/toolchain-tests-0.0.1-r5143
deleted file mode 100644
index feeef52..0000000
--- a/metadata/md5-cache/chromeos-base/toolchain-tests-0.0.1-r5143
+++ /dev/null
@@ -1,12 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info setup unpack
-DESCRIPTION=Compilation and runtime tests for toolchain
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
-IUSE=cros_host cros_workon_tree_210df4cb14c4f7c420a697e85e6a7bec211d5bed
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-SLOT=0/0.0.1-r5143
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9d144bf90ad6e79e76cb227cf21121d4
diff --git a/metadata/md5-cache/chromeos-base/toolchain-tests-0.0.1-r5594 b/metadata/md5-cache/chromeos-base/toolchain-tests-0.0.1-r5594
new file mode 100644
index 0000000..9ac30fd
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/toolchain-tests-0.0.1-r5594
@@ -0,0 +1,12 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info setup unpack
+DESCRIPTION=Compilation and runtime tests for toolchain
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/autotest/
+IUSE=cros_host cros_workon_tree_673c2aba9ae1ce95a46c49852fff7f59511841e5
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+SLOT=0/0.0.1-r5594
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1e67732c16de9377c9f6eb4e622d18ba
diff --git a/metadata/md5-cache/chromeos-base/toolchain-tests-9999 b/metadata/md5-cache/chromeos-base/toolchain-tests-9999
index 38f1df1..bebd781 100644
--- a/metadata/md5-cache/chromeos-base/toolchain-tests-9999
+++ b/metadata/md5-cache/chromeos-base/toolchain-tests-9999
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ae2e5d50ffd97772f75b8f2264154265
diff --git a/metadata/md5-cache/chromeos-base/touch_firmware_calibration-0.0.1-r893 b/metadata/md5-cache/chromeos-base/touch_firmware_calibration-0.0.1-r893
deleted file mode 100644
index 645a6dc..0000000
--- a/metadata/md5-cache/chromeos-base/touch_firmware_calibration-0.0.1-r893
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout virtual/pkgconfig
-DESCRIPTION=Touch Firmware Calibration
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/touch_firmware_calibration/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_92e357708a584d0da1efabfdc10b432c2bfc40c9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_92e357708a584d0da1efabfdc10b432c2bfc40c9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=b836c9231fb719d84a59f984c719c156
diff --git a/metadata/md5-cache/chromeos-base/touch_firmware_calibration-0.0.1-r919 b/metadata/md5-cache/chromeos-base/touch_firmware_calibration-0.0.1-r919
new file mode 100644
index 0000000..55dca8b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/touch_firmware_calibration-0.0.1-r919
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout virtual/pkgconfig
+DESCRIPTION=Touch Firmware Calibration
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/touch_firmware_calibration/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c0f8db1d4e6470300faa1aca4149c872dd57c1ad_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c0f8db1d4e6470300faa1aca4149c872dd57c1ad_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=1d196cde5a8691f117e533e55939b751
diff --git a/metadata/md5-cache/chromeos-base/touch_firmware_calibration-9999 b/metadata/md5-cache/chromeos-base/touch_firmware_calibration-9999
index 8348327..c81835e 100644
--- a/metadata/md5-cache/chromeos-base/touch_firmware_calibration-9999
+++ b/metadata/md5-cache/chromeos-base/touch_firmware_calibration-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3f2d0d30f67da119cfdb592d8f5d1df9
diff --git a/metadata/md5-cache/chromeos-base/touch_firmware_test-0.0.1-r119 b/metadata/md5-cache/chromeos-base/touch_firmware_test-0.0.1-r119
deleted file mode 100644
index 564c72b..0000000
--- a/metadata/md5-cache/chromeos-base/touch_firmware_test-0.0.1-r119
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/setuptools[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DESCRIPTION=Chromium OS multitouch utilities
-EAPI=7
-IUSE=-asan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_b2428627b8f307715145ff07051896df589b2fe4 cros-debug python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
-REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3989e2874f40e2b0b4e5215aa29e9210
diff --git a/metadata/md5-cache/chromeos-base/touch_firmware_test-0.0.1-r120 b/metadata/md5-cache/chromeos-base/touch_firmware_test-0.0.1-r120
new file mode 100644
index 0000000..a70254c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/touch_firmware_test-0.0.1-r120
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/setuptools[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DESCRIPTION=Chromium OS multitouch utilities
+EAPI=7
+IUSE=-asan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_09eb58ea97822c5589c961d0bd338c40927ee224 cros-debug python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
+REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=74a5ce380c1907275838135bdcce8e7b
diff --git a/metadata/md5-cache/chromeos-base/touch_firmware_test-9999 b/metadata/md5-cache/chromeos-base/touch_firmware_test-9999
index c5e5c2c..7935cc8 100644
--- a/metadata/md5-cache/chromeos-base/touch_firmware_test-9999
+++ b/metadata/md5-cache/chromeos-base/touch_firmware_test-9999
@@ -9,5 +9,5 @@
 RDEPEND=python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3ec2b337730ff30d554e3207edab5217
diff --git a/metadata/md5-cache/chromeos-base/touch_keyboard-0.0.1-r1172 b/metadata/md5-cache/chromeos-base/touch_keyboard-0.0.1-r1172
deleted file mode 100644
index 5b084fd..0000000
--- a/metadata/md5-cache/chromeos-base/touch_keyboard-0.0.1-r1172
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Touch Keyboard
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/touch_keyboard/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=100af735c3c7414fe394ae6a5729847b
diff --git a/metadata/md5-cache/chromeos-base/touch_keyboard-0.0.1-r1197 b/metadata/md5-cache/chromeos-base/touch_keyboard-0.0.1-r1197
new file mode 100644
index 0000000..fc98bf5
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/touch_keyboard-0.0.1-r1197
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Touch Keyboard
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/touch_keyboard/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=cf057800ae3a96afa7b689eaf6e63380
diff --git a/metadata/md5-cache/chromeos-base/touch_keyboard-9999 b/metadata/md5-cache/chromeos-base/touch_keyboard-9999
index f45374c..152a0fe 100644
--- a/metadata/md5-cache/chromeos-base/touch_keyboard-9999
+++ b/metadata/md5-cache/chromeos-base/touch_keyboard-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=684dd5cf4aaffc4207bf0df6531e7b6c
diff --git a/metadata/md5-cache/chromeos-base/touch_updater-0.0.1-r224 b/metadata/md5-cache/chromeos-base/touch_updater-0.0.1-r224
deleted file mode 100644
index 378b446..0000000
--- a/metadata/md5-cache/chromeos-base/touch_updater-0.0.1-r224
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install preinst setup unpack
-DEPEND=sys-apps/baselayout
-DESCRIPTION=Touch firmware and config updater
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os
-IUSE=input_devices_synaptics input_devices_wacom input_devices_etphidiap input_devices_st input_devices_st_touchscreen input_devices_weida input_devices_goodix input_devices_sis input_devices_pixart input_devices_g2touch input_devices_cirque input_devices_elan_i2chid input_devices_melfas input_devices_emright input_devices_eps2pstiap input_devices_zinitix cros_host cros_workon_tree_4c5be99747ad647497aaf07a79cb4dd0ac28f841_589fe50e26955bab53030dec80ef99bf9546844b
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/chromeos-touch-common input_devices_synaptics? ( chromeos-base/rmi4utils ) input_devices_wacom? ( chromeos-base/wacom_fw_flash ) input_devices_etphidiap? ( chromeos-base/chromeos-touch-etphidiap ) input_devices_st? ( chromeos-base/st_flash ) input_devices_st_touchscreen? ( chromeos-base/chromeos-touch-stupdate ) input_devices_weida? ( chromeos-base/weida_wdt_util ) input_devices_goodix? ( chromeos-base/gdix_hid_firmware_update ) input_devices_sis? ( chromeos-base/sisConsoletool ) input_devices_pixart? ( chromeos-base/pixart_tpfwup ) input_devices_g2touch? ( chromeos-base/g2update_tool ) input_devices_cirque? ( chromeos-base/cirque_fw_update ) input_devices_elan_i2chid? ( chromeos-base/elan_i2chid_tools ) input_devices_melfas? ( chromeos-base/mfs-console-tool ) input_devices_emright? ( chromeos-base/emright_fw_updater ) input_devices_eps2pstiap? ( chromeos-base/epstps2iap ) input_devices_zinitix? ( chromeos-base/zinitix_fw_updater ) sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=bf69ae00895bd21195d98513549f12a8
diff --git a/metadata/md5-cache/chromeos-base/touch_updater-0.0.1-r231 b/metadata/md5-cache/chromeos-base/touch_updater-0.0.1-r231
new file mode 100644
index 0000000..6a78e4b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/touch_updater-0.0.1-r231
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install preinst setup unpack
+DEPEND=sys-apps/baselayout
+DESCRIPTION=Touch firmware and config updater
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os
+IUSE=input_devices_synaptics input_devices_wacom input_devices_etphidiap input_devices_st input_devices_st_touchscreen input_devices_weida input_devices_goodix input_devices_sis input_devices_pixart input_devices_g2touch input_devices_cirque input_devices_elan_i2chid input_devices_melfas input_devices_emright input_devices_eps2pstiap input_devices_zinitix cros_host cros_workon_tree_66c625581ef22b91d4c355cddca2a4f4e0b50916_d0e3ecf351954a979427a19842eaad39abdd0d80
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/chromeos-touch-common input_devices_synaptics? ( chromeos-base/rmi4utils ) input_devices_wacom? ( chromeos-base/wacom_fw_flash ) input_devices_etphidiap? ( chromeos-base/chromeos-touch-etphidiap ) input_devices_st? ( chromeos-base/st_flash ) input_devices_st_touchscreen? ( chromeos-base/chromeos-touch-stupdate ) input_devices_weida? ( chromeos-base/weida_wdt_util ) input_devices_goodix? ( chromeos-base/gdix_hid_firmware_update ) input_devices_sis? ( chromeos-base/sisConsoletool ) input_devices_pixart? ( chromeos-base/pixart_tpfwup ) input_devices_g2touch? ( chromeos-base/g2update_tool ) input_devices_cirque? ( chromeos-base/cirque_fw_update ) input_devices_elan_i2chid? ( chromeos-base/elan_i2chid_tools ) input_devices_melfas? ( chromeos-base/mfs-console-tool ) input_devices_emright? ( chromeos-base/emright_fw_updater ) input_devices_eps2pstiap? ( chromeos-base/epstps2iap ) input_devices_zinitix? ( chromeos-base/zinitix_fw_updater ) sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=d65a4daa17ad0543d86415b2d8913fd7
diff --git a/metadata/md5-cache/chromeos-base/touch_updater-9999 b/metadata/md5-cache/chromeos-base/touch_updater-9999
index 89318c5..e9823c7 100644
--- a/metadata/md5-cache/chromeos-base/touch_updater-9999
+++ b/metadata/md5-cache/chromeos-base/touch_updater-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/chromeos-touch-common input_devices_synaptics? ( chromeos-base/rmi4utils ) input_devices_wacom? ( chromeos-base/wacom_fw_flash ) input_devices_etphidiap? ( chromeos-base/chromeos-touch-etphidiap ) input_devices_st? ( chromeos-base/st_flash ) input_devices_st_touchscreen? ( chromeos-base/chromeos-touch-stupdate ) input_devices_weida? ( chromeos-base/weida_wdt_util ) input_devices_goodix? ( chromeos-base/gdix_hid_firmware_update ) input_devices_sis? ( chromeos-base/sisConsoletool ) input_devices_pixart? ( chromeos-base/pixart_tpfwup ) input_devices_g2touch? ( chromeos-base/g2update_tool ) input_devices_cirque? ( chromeos-base/cirque_fw_update ) input_devices_elan_i2chid? ( chromeos-base/elan_i2chid_tools ) input_devices_melfas? ( chromeos-base/mfs-console-tool ) input_devices_emright? ( chromeos-base/emright_fw_updater ) input_devices_eps2pstiap? ( chromeos-base/epstps2iap ) input_devices_zinitix? ( chromeos-base/zinitix_fw_updater ) sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=be9cbab8ccc05d493db35e968f2764d4
diff --git a/metadata/md5-cache/chromeos-base/tpm-0.0.1-r17 b/metadata/md5-cache/chromeos-base/tpm-0.0.1-r17
deleted file mode 100644
index 2445e58..0000000
--- a/metadata/md5-cache/chromeos-base/tpm-0.0.1-r17
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install setup unpack
-DEPEND=app-crypt/trousers:=
-DESCRIPTION=Various TPM tools
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tpm/
-IUSE=-asan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_df4813a2daa4de831ad4a401f7cca7a7b0480b00
-KEYWORDS=*
-LICENSE=BSD
-PROPERTIES=live
-RDEPEND=app-crypt/trousers:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d34f3a150e311f2eb2394f497013928a
diff --git a/metadata/md5-cache/chromeos-base/tpm-0.0.1-r18 b/metadata/md5-cache/chromeos-base/tpm-0.0.1-r18
new file mode 100644
index 0000000..3231ca0
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tpm-0.0.1-r18
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install setup unpack
+DEPEND=app-crypt/trousers:=
+DESCRIPTION=Various TPM tools
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tpm/
+IUSE=-asan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_0d347f2d000b90963fc38d64ae9259ecf19535cf
+KEYWORDS=*
+LICENSE=BSD
+PROPERTIES=live
+RDEPEND=app-crypt/trousers:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f96dbe507d44f244b66db61fda3792da
diff --git a/metadata/md5-cache/chromeos-base/tpm-9999 b/metadata/md5-cache/chromeos-base/tpm-9999
index f95480b..a55a190 100644
--- a/metadata/md5-cache/chromeos-base/tpm-9999
+++ b/metadata/md5-cache/chromeos-base/tpm-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=app-crypt/trousers:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f4d306e226a82704f5c61b62a26f4d70
diff --git a/metadata/md5-cache/chromeos-base/tpm-check-0.0.1-r1954 b/metadata/md5-cache/chromeos-base/tpm-check-0.0.1-r1954
deleted file mode 100644
index 1e31fbb..0000000
--- a/metadata/md5-cache/chromeos-base/tpm-check-0.0.1-r1954
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DESCRIPTION=tpm check test
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/vboot_reference/
-IUSE=+autotest +tests_hardware_TPMCheck cros_host cros_workon_tree_3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=autotest? ( chromeos-base/autotest )
-SLOT=0/0.0.1-r1954
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8cf050d4abf4a114c22ab334a16b778c
diff --git a/metadata/md5-cache/chromeos-base/tpm-check-0.0.1-r2008 b/metadata/md5-cache/chromeos-base/tpm-check-0.0.1-r2008
new file mode 100644
index 0000000..371aa71
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tpm-check-0.0.1-r2008
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DESCRIPTION=tpm check test
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/vboot_reference/
+IUSE=+autotest +tests_hardware_TPMCheck cros_host cros_workon_tree_63abdfe41a1746dfd5452f030b2ff4646a15ff76 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=autotest? ( chromeos-base/autotest )
+SLOT=0/0.0.1-r2008
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=62e6f9f69cd83b4d2ce6c9d0867f4b8f
diff --git a/metadata/md5-cache/chromeos-base/tpm-check-9999 b/metadata/md5-cache/chromeos-base/tpm-check-9999
index d3df85e..c202a93 100644
--- a/metadata/md5-cache/chromeos-base/tpm-check-9999
+++ b/metadata/md5-cache/chromeos-base/tpm-check-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=autotest? ( chromeos-base/autotest )
 SLOT=0/9999
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6f9612d32297b8c376d94aa08b0b40b1
diff --git a/metadata/md5-cache/chromeos-base/tpm-firmware-tests-0.0.1-r1974 b/metadata/md5-cache/chromeos-base/tpm-firmware-tests-0.0.1-r1974
deleted file mode 100644
index b083d0d..0000000
--- a/metadata/md5-cache/chromeos-base/tpm-firmware-tests-0.0.1-r1974
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DEPEND=app-crypt/trousers:= chromeos-base/tpm:=
-DESCRIPTION=TPM firmware tests
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/vboot_reference/
-IUSE=+autotest +tests_hardware_TPMFirmware +tests_hardware_TPMFirmwareServer cros_host cros_workon_tree_3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=autotest? ( chromeos-base/autotest )
-SLOT=0/0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3af97147a23927d1db39ab4f61d27982
diff --git a/metadata/md5-cache/chromeos-base/tpm-firmware-tests-0.0.1-r2028 b/metadata/md5-cache/chromeos-base/tpm-firmware-tests-0.0.1-r2028
new file mode 100644
index 0000000..6b3d301
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tpm-firmware-tests-0.0.1-r2028
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DEPEND=app-crypt/trousers:= chromeos-base/tpm:=
+DESCRIPTION=TPM firmware tests
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/vboot_reference/
+IUSE=+autotest +tests_hardware_TPMFirmware +tests_hardware_TPMFirmwareServer cros_host cros_workon_tree_63abdfe41a1746dfd5452f030b2ff4646a15ff76 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=autotest? ( chromeos-base/autotest )
+SLOT=0/0
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6e280abbe2b5968d3f96c0b253bc89f2
diff --git a/metadata/md5-cache/chromeos-base/tpm-firmware-tests-9999 b/metadata/md5-cache/chromeos-base/tpm-firmware-tests-9999
index 8979c42..64a36b0 100644
--- a/metadata/md5-cache/chromeos-base/tpm-firmware-tests-9999
+++ b/metadata/md5-cache/chromeos-base/tpm-firmware-tests-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=autotest? ( chromeos-base/autotest )
 SLOT=0/0
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=69e670cc784c4b3a24afc05332fa1bc2
diff --git a/metadata/md5-cache/chromeos-base/tpm2-0.0.1-r136 b/metadata/md5-cache/chromeos-base/tpm2-0.0.1-r136
deleted file mode 100644
index 2188f62..0000000
--- a/metadata/md5-cache/chromeos-base/tpm2-0.0.1-r136
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install setup unpack
-DEPEND=dev-libs/openssl:0=
-DESCRIPTION=TPM2.0 library
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/tpm2/
-IUSE=generic_tpm2 tpm2_simulator tpm2_simulator_manufacturer cros_host cros_workon_tree_679fa8b14bd105ad9959a0f82eaa928d5b18890d
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-SLOT=0/0.0.1-r136
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=88305707e8c2d216eb96489c37b74a72
diff --git a/metadata/md5-cache/chromeos-base/tpm2-0.0.1-r138 b/metadata/md5-cache/chromeos-base/tpm2-0.0.1-r138
new file mode 100644
index 0000000..aedcfc4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tpm2-0.0.1-r138
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install setup unpack
+DEPEND=dev-libs/openssl:0=
+DESCRIPTION=TPM2.0 library
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/tpm2/
+IUSE=generic_tpm2 tpm2_simulator tpm2_simulator_manufacturer cros_host cros_workon_tree_2159375e60a21a4f4cd6da052dcc95a4a0dec15d
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+SLOT=0/0.0.1-r138
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fd6d3da4068513430057ec800a77deb8
diff --git a/metadata/md5-cache/chromeos-base/tpm2-9999 b/metadata/md5-cache/chromeos-base/tpm2-9999
index 7200d8e..6cd974b 100644
--- a/metadata/md5-cache/chromeos-base/tpm2-9999
+++ b/metadata/md5-cache/chromeos-base/tpm2-9999
@@ -9,5 +9,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8f3b0e37f015d0ba84758fe9c95c8163
diff --git a/metadata/md5-cache/chromeos-base/tpm2-simulator-0.0.1-r1818 b/metadata/md5-cache/chromeos-base/tpm2-simulator-0.0.1-r1818
deleted file mode 100644
index 7449fe7..0000000
--- a/metadata/md5-cache/chromeos-base/tpm2-simulator-0.0.1-r1818
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/tpm2:=[tpm2_simulator,tpm2_simulator_manufacturer] chromeos-base/vboot_reference:=[tpm2_simulator] dev-libs/openssl:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=TPM 2.0 Simulator
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm2-simulator/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_01f3fdde08f176cc653d3d0c46c04c446cfa9a81_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_01f3fdde08f176cc653d3d0c46c04c446cfa9a81_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-libs/openssl:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=56fae03942bb2e4713350c05abfa4958
diff --git a/metadata/md5-cache/chromeos-base/tpm2-simulator-0.0.1-r1849 b/metadata/md5-cache/chromeos-base/tpm2-simulator-0.0.1-r1849
new file mode 100644
index 0000000..e374590
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tpm2-simulator-0.0.1-r1849
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/tpm2:=[tpm2_simulator,tpm2_simulator_manufacturer] chromeos-base/vboot_reference:=[tpm2_simulator] chromeos-base/minijail:= dev-libs/openssl:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=TPM 2.0 Simulator
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm2-simulator/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_deeecbada686d1b6013974abb12cad0ee364f6d7_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_deeecbada686d1b6013974abb12cad0ee364f6d7_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/minijail:= dev-libs/openssl:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=68acdc4758a80ff8ebf258417e4a7b7a
diff --git a/metadata/md5-cache/chromeos-base/tpm2-simulator-9999 b/metadata/md5-cache/chromeos-base/tpm2-simulator-9999
index 422757f..0a66f27 100644
--- a/metadata/md5-cache/chromeos-base/tpm2-simulator-9999
+++ b/metadata/md5-cache/chromeos-base/tpm2-simulator-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/tpm2:=[tpm2_simulator,tpm2_simulator_manufacturer] chromeos-base/vboot_reference:=[tpm2_simulator] dev-libs/openssl:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/tpm2:=[tpm2_simulator,tpm2_simulator_manufacturer] chromeos-base/vboot_reference:=[tpm2_simulator] chromeos-base/minijail:= dev-libs/openssl:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=TPM 2.0 Simulator
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm2-simulator/
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=dev-libs/openssl:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/minijail:= dev-libs/openssl:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=1e49f07fbfc20797b440700cd308eba0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=41ad392ea12c859005e05d3d4d3bf270
diff --git a/metadata/md5-cache/chromeos-base/tpm_lite-0.0.1-r16 b/metadata/md5-cache/chromeos-base/tpm_lite-0.0.1-r16
index d2c074b3..33c72ab 100644
--- a/metadata/md5-cache/chromeos-base/tpm_lite-0.0.1-r16
+++ b/metadata/md5-cache/chromeos-base/tpm_lite-0.0.1-r16
@@ -9,5 +9,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=dd72d8a77505999e183e54ac232a0bef
diff --git a/metadata/md5-cache/chromeos-base/tpm_lite-9999 b/metadata/md5-cache/chromeos-base/tpm_lite-9999
index 72c4245..d051826 100644
--- a/metadata/md5-cache/chromeos-base/tpm_lite-9999
+++ b/metadata/md5-cache/chromeos-base/tpm_lite-9999
@@ -9,5 +9,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=99b461cb781faa53987b05ac0a189d2c
diff --git a/metadata/md5-cache/chromeos-base/tpm_manager-0.0.1-r2255 b/metadata/md5-cache/chromeos-base/tpm_manager-0.0.1-r2255
deleted file mode 100644
index 283d0c1..0000000
--- a/metadata/md5-cache/chromeos-base/tpm_manager-0.0.1-r2255
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=!tpm2? ( app-crypt/trousers ) tpm2? ( chromeos-base/trunks ) >=chromeos-base/metrics-0.0.1-r3152 chromeos-base/minijail chromeos-base/libhwsec chromeos-base/libtpmcrypto chromeos-base/system_api:=[fuzzer?] chromeos-base/tpm_manager-client tpm2? ( chromeos-base/trunks[test?] ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Daemon to manage TPM ownership.
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_manager/
-IUSE=pinweaver_csme test tpm tpm2 fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_5d77de997847c22cb783cc11cd0fab4f6fae59f0_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_5d77de997847c22cb783cc11cd0fab4f6fae59f0_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=Apache-2.0
-PROPERTIES=live live
-RDEPEND=!tpm2? ( app-crypt/trousers ) tpm2? ( chromeos-base/trunks ) >=chromeos-base/metrics-0.0.1-r3152 chromeos-base/minijail chromeos-base/libhwsec chromeos-base/libtpmcrypto chromeos-base/system_api:=[fuzzer?] chromeos-base/tpm_manager-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=tpm2? ( !tpm )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=c88c45d5ccb38be4158a3c25c5637f77
diff --git a/metadata/md5-cache/chromeos-base/tpm_manager-0.0.1-r2355 b/metadata/md5-cache/chromeos-base/tpm_manager-0.0.1-r2355
new file mode 100644
index 0000000..6189ca1
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tpm_manager-0.0.1-r2355
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=tpm? ( app-crypt/trousers ) tpm2? ( chromeos-base/trunks ) >=chromeos-base/metrics-0.0.1-r3152 chromeos-base/minijail chromeos-base/libhwsec chromeos-base/libtpmcrypto chromeos-base/system_api:=[fuzzer?] chromeos-base/tpm_manager-client tpm2? ( chromeos-base/trunks[test?] ) fuzzer? ( dev-libs/libprotobuf-mutator ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Daemon to manage TPM ownership.
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_manager/
+IUSE=pinweaver_csme test tpm tpm_dynamic tpm2 fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_26e3713c1f2916a87c54f5aa50da42d121f1a5a3_e08a2eb734e33827dffeecf57eca046cd1091373_659b97d9c804b358f4bd27925620d4dd1cee8fc7_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_26e3713c1f2916a87c54f5aa50da42d121f1a5a3_e08a2eb734e33827dffeecf57eca046cd1091373_659b97d9c804b358f4bd27925620d4dd1cee8fc7_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=Apache-2.0
+PROPERTIES=live live
+RDEPEND=tpm? ( app-crypt/trousers ) tpm2? ( chromeos-base/trunks ) >=chromeos-base/metrics-0.0.1-r3152 chromeos-base/minijail chromeos-base/libhwsec chromeos-base/libtpmcrypto chromeos-base/system_api:=[fuzzer?] chromeos-base/tpm_manager-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=e801794e6f5250fee52c88e8cbca752c
diff --git a/metadata/md5-cache/chromeos-base/tpm_manager-9999 b/metadata/md5-cache/chromeos-base/tpm_manager-9999
index ebf2546..4e24845 100644
--- a/metadata/md5-cache/chromeos-base/tpm_manager-9999
+++ b/metadata/md5-cache/chromeos-base/tpm_manager-9999
@@ -1,14 +1,14 @@
 DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=!tpm2? ( app-crypt/trousers ) tpm2? ( chromeos-base/trunks ) >=chromeos-base/metrics-0.0.1-r3152 chromeos-base/minijail chromeos-base/libhwsec chromeos-base/libtpmcrypto chromeos-base/system_api:=[fuzzer?] chromeos-base/tpm_manager-client tpm2? ( chromeos-base/trunks[test?] ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=tpm? ( app-crypt/trousers ) tpm2? ( chromeos-base/trunks ) >=chromeos-base/metrics-0.0.1-r3152 chromeos-base/minijail chromeos-base/libhwsec chromeos-base/libtpmcrypto chromeos-base/system_api:=[fuzzer?] chromeos-base/tpm_manager-client tpm2? ( chromeos-base/trunks[test?] ) fuzzer? ( dev-libs/libprotobuf-mutator ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=Daemon to manage TPM ownership.
 EAPI=5
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_manager/
-IUSE=pinweaver_csme test tpm tpm2 fuzzer cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=pinweaver_csme test tpm tpm_dynamic tpm2 fuzzer cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=Apache-2.0
 PROPERTIES=live live
-RDEPEND=!tpm2? ( app-crypt/trousers ) tpm2? ( chromeos-base/trunks ) >=chromeos-base/metrics-0.0.1-r3152 chromeos-base/minijail chromeos-base/libhwsec chromeos-base/libtpmcrypto chromeos-base/system_api:=[fuzzer?] chromeos-base/tpm_manager-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=tpm2? ( !tpm )
+RDEPEND=tpm? ( app-crypt/trousers ) tpm2? ( chromeos-base/trunks ) >=chromeos-base/metrics-0.0.1-r3152 chromeos-base/minijail chromeos-base/libhwsec chromeos-base/libtpmcrypto chromeos-base/system_api:=[fuzzer?] chromeos-base/tpm_manager-client >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=859e5ff206780a4ca44b5a2f3fd21633
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=6aa5a38b201d34f1690e3e3ffa4f19d2
diff --git a/metadata/md5-cache/chromeos-base/tpm_manager-client-0.0.1-r259 b/metadata/md5-cache/chromeos-base/tpm_manager-client-0.0.1-r259
deleted file mode 100644
index 6305643..0000000
--- a/metadata/md5-cache/chromeos-base/tpm_manager-client-0.0.1-r259
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=cros_host? ( >=chromeos-base/chromeos-dbus-bindings-0.0.1-r1058 ) chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=TPM Manager D-Bus client library for Chromium OS
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_manager/client/
-IUSE=cros_host test tpm tpm2 fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_8cc20aa2c0f7a2d6b073576b3e41ac39c9be2df6_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!<chromeos-base/tpm_manager-0.0.1-r2238 chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=6c0a1f981dbc21afc37ea2b21094accb
diff --git a/metadata/md5-cache/chromeos-base/tpm_manager-client-0.0.1-r311 b/metadata/md5-cache/chromeos-base/tpm_manager-client-0.0.1-r311
new file mode 100644
index 0000000..9ce87d2
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tpm_manager-client-0.0.1-r311
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=cros_host? ( >=chromeos-base/chromeos-dbus-bindings-0.0.1-r1058 ) chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=TPM Manager D-Bus client library for Chromium OS
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_manager/client/
+IUSE=cros_host test tpm tpm2 fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_659b97d9c804b358f4bd27925620d4dd1cee8fc7_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_659b97d9c804b358f4bd27925620d4dd1cee8fc7_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!<chromeos-base/tpm_manager-0.0.1-r2238 chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=a5bca171de11ecf03aae21d3c7e6719f
diff --git a/metadata/md5-cache/chromeos-base/tpm_manager-client-9999 b/metadata/md5-cache/chromeos-base/tpm_manager-client-9999
index 9d12dbd..27fa913 100644
--- a/metadata/md5-cache/chromeos-base/tpm_manager-client-9999
+++ b/metadata/md5-cache/chromeos-base/tpm_manager-client-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=!<chromeos-base/tpm_manager-0.0.1-r2238 chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=462efd000b57ae3a6d6771b68b463197
diff --git a/metadata/md5-cache/chromeos-base/tpm_softclear_utils-0.0.1-r243 b/metadata/md5-cache/chromeos-base/tpm_softclear_utils-0.0.1-r243
deleted file mode 100644
index 09fffec..0000000
--- a/metadata/md5-cache/chromeos-base/tpm_softclear_utils-0.0.1-r243
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=tpm2? ( chromeos-base/trunks:= ) !tpm2? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/system_api:= chromeos-base/trunks:=[test?] ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Utilities for soft-clearing TPM. This package resides in test images only.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_softclear_utils/
-IUSE=test tpm tpm2 cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_7797f13629c40bd876baedd3bf20a36d625d5e4f_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_7797f13629c40bd876baedd3bf20a36d625d5e4f_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=tpm2? ( chromeos-base/trunks:= ) !tpm2? ( app-crypt/trousers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=tpm2? ( !tpm )
-SLOT=0/0.0.1-r243
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=eca3499365233e82d96a9af9e26c2ec4
diff --git a/metadata/md5-cache/chromeos-base/tpm_softclear_utils-0.0.1-r302 b/metadata/md5-cache/chromeos-base/tpm_softclear_utils-0.0.1-r302
new file mode 100644
index 0000000..e2730a9
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tpm_softclear_utils-0.0.1-r302
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) chromeos-base/libhwsec-foundation:= tpm2? ( chromeos-base/system_api:= chromeos-base/trunks:=[test?] ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Utilities for soft-clearing TPM. This package resides in test images only.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_softclear_utils/
+IUSE=test tpm tpm_dynamic tpm2 cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_1ef556d83a5e2ce0fa6eef66d8e8b2ced65cf09b_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_1ef556d83a5e2ce0fa6eef66d8e8b2ced65cf09b_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) chromeos-base/libhwsec-foundation:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
+SLOT=0/0.0.1-r302
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=29a4e18694df857f4610a554b1dd64dd
diff --git a/metadata/md5-cache/chromeos-base/tpm_softclear_utils-9999 b/metadata/md5-cache/chromeos-base/tpm_softclear_utils-9999
index 5316c3b..8e67195 100644
--- a/metadata/md5-cache/chromeos-base/tpm_softclear_utils-9999
+++ b/metadata/md5-cache/chromeos-base/tpm_softclear_utils-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=tpm2? ( chromeos-base/trunks:= ) !tpm2? ( app-crypt/trousers:= ) tpm2? ( chromeos-base/system_api:= chromeos-base/trunks:=[test?] ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) chromeos-base/libhwsec-foundation:= tpm2? ( chromeos-base/system_api:= chromeos-base/trunks:=[test?] ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Utilities for soft-clearing TPM. This package resides in test images only.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/tpm_softclear_utils/
-IUSE=test tpm tpm2 cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=test tpm tpm_dynamic tpm2 cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=tpm2? ( chromeos-base/trunks:= ) !tpm2? ( app-crypt/trousers:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=tpm2? ( !tpm )
+RDEPEND=tpm2? ( chromeos-base/trunks:= ) tpm? ( app-crypt/trousers:= ) chromeos-base/libhwsec-foundation:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b31be778702e835ae57e6ae194941051
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e2269d18f8409ce33bbb01b22df47257
diff --git a/metadata/md5-cache/chromeos-base/tremplin-0.0.1-r136 b/metadata/md5-cache/chromeos-base/tremplin-0.0.1-r136
deleted file mode 100644
index 16b58a2..0000000
--- a/metadata/md5-cache/chromeos-base/tremplin-0.0.1-r136
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=app-emulation/lxd:0 app-emulation/lxd:4 chromeos-base/vm_guest_tools:= chromeos-base/vm_protos:= dev-go/go-libaudit:= dev-go/go-sys:= dev-go/grpc:= dev-go/kobject:= dev-go/netlink:= dev-go/vsock:= dev-go/yaml:= dev-lang/go
-DESCRIPTION=Tremplin LXD client with gRPC support
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tremplin/
-IUSE=cros_host cros_workon_tree_d8596cb320788c979bbb9cfb0401124793b180df
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=app-emulation/lxd:0 app-emulation/lxd:4
-SLOT=0/0.0.1-r136
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=fe3bcbbbf8726401637e3bb458f94117
diff --git a/metadata/md5-cache/chromeos-base/tremplin-0.0.1-r141 b/metadata/md5-cache/chromeos-base/tremplin-0.0.1-r141
new file mode 100644
index 0000000..9952cdf
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/tremplin-0.0.1-r141
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst setup test unpack
+DEPEND=app-emulation/lxd:0 app-emulation/lxd:4 chromeos-base/vm_guest_tools:= chromeos-base/vm_protos:= dev-go/go-libaudit:= dev-go/go-sys:= dev-go/grpc:= dev-go/kobject:= dev-go/netlink:= dev-go/vsock:= dev-go/yaml:= dev-lang/go
+DESCRIPTION=Tremplin LXD client with gRPC support
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/tremplin/
+IUSE=cros_host cros_workon_tree_14b3f006b2aff2315d4ae5390cce7bae39de714b
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=app-emulation/lxd:0 app-emulation/lxd:4
+SLOT=0/0.0.1-r141
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=32b7e9c131533e6b0280dfb4d24c9f5d
diff --git a/metadata/md5-cache/chromeos-base/tremplin-9999 b/metadata/md5-cache/chromeos-base/tremplin-9999
index 82be8b2..e10a9a4 100644
--- a/metadata/md5-cache/chromeos-base/tremplin-9999
+++ b/metadata/md5-cache/chromeos-base/tremplin-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=app-emulation/lxd:0 app-emulation/lxd:4
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=fa359a5edd300f179e4ddbe9f3321605
diff --git a/metadata/md5-cache/chromeos-base/trunks-0.0.1-r2968 b/metadata/md5-cache/chromeos-base/trunks-0.0.1-r2968
deleted file mode 100644
index 968b9e8..0000000
--- a/metadata/md5-cache/chromeos-base/trunks-0.0.1-r2968
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/power_manager-client:= ftdi_tpm? ( dev-embedded/libftdi:= ) tpm2_simulator? ( chromeos-base/tpm2:= vtpm_proxy? ( chromeos-base/tpm2-simulator:= ) ) dev-libs/protobuf:= fuzzer? ( dev-cpp/gtest:= ) chromeos-base/chromeos-ec-headers:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Trunks service for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/trunks/
-IUSE=cr50_onboard csme_emulator fuzzer ftdi_tpm generic_tpm2 pinweaver_csme test ti50_onboard tpm2_simulator vtpm_proxy cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_0b612d0f1e8dbe59a5549b476f1e681e0b7fe94e_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_0b612d0f1e8dbe59a5549b476f1e681e0b7fe94e_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_a06a3f47395fb7b584188c6852764bc773e5497e_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=Apache-2.0
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/power_manager-client:= ftdi_tpm? ( dev-embedded/libftdi:= ) tpm2_simulator? ( chromeos-base/tpm2:= vtpm_proxy? ( chromeos-base/tpm2-simulator:= ) ) dev-libs/protobuf:= fuzzer? ( dev-cpp/gtest:= ) cr50_onboard? ( chromeos-base/chromeos-cr50 ) ti50_onboard? ( chromeos-base/chromeos-ti50 ) !app-crypt/tpm-tools chromeos-base/libhwsec-foundation >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r2968
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=aed10492c8852588c3ec5caf79b179d2
diff --git a/metadata/md5-cache/chromeos-base/trunks-0.0.1-r3053 b/metadata/md5-cache/chromeos-base/trunks-0.0.1-r3053
new file mode 100644
index 0000000..e43c06d
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/trunks-0.0.1-r3053
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/power_manager-client:= ftdi_tpm? ( dev-embedded/libftdi:= ) tpm2_simulator? ( chromeos-base/tpm2:= vtpm_proxy? ( chromeos-base/tpm2-simulator:= ) ) dev-libs/protobuf:= fuzzer? ( dev-cpp/gtest:= ) chromeos-base/chromeos-ec-headers:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Trunks service for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/trunks/
+IUSE=cr50_onboard csme_emulator fuzzer ftdi_tpm generic_tpm2 pinweaver_csme test ti50_onboard tpm_dynamic tpm2_simulator vtpm_proxy cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_e08a2eb734e33827dffeecf57eca046cd1091373_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_1e9ca239fab09ba22b58e4a22d63e2ede865b159_e08a2eb734e33827dffeecf57eca046cd1091373_d8da1275feb26afab354f35df7316b3840f8330b_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=Apache-2.0
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/power_manager-client:= ftdi_tpm? ( dev-embedded/libftdi:= ) tpm2_simulator? ( chromeos-base/tpm2:= vtpm_proxy? ( chromeos-base/tpm2-simulator:= ) ) dev-libs/protobuf:= fuzzer? ( dev-cpp/gtest:= ) cr50_onboard? ( chromeos-base/chromeos-cr50 ) ti50_onboard? ( chromeos-base/chromeos-ti50 ) generic_tpm2? ( chromeos-base/chromeos-cr50-scripts ) !tpm_dynamic? ( !app-crypt/tpm-tools ) chromeos-base/libhwsec-foundation >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r3053
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=9ce740833b97f010e5998d2c3c517ba8
diff --git a/metadata/md5-cache/chromeos-base/trunks-9999 b/metadata/md5-cache/chromeos-base/trunks-9999
index 420d970..48b93f8 100644
--- a/metadata/md5-cache/chromeos-base/trunks-9999
+++ b/metadata/md5-cache/chromeos-base/trunks-9999
@@ -4,11 +4,11 @@
 DESCRIPTION=Trunks service for Chromium OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/trunks/
-IUSE=cr50_onboard csme_emulator fuzzer ftdi_tpm generic_tpm2 pinweaver_csme test ti50_onboard tpm2_simulator vtpm_proxy cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=cr50_onboard csme_emulator fuzzer ftdi_tpm generic_tpm2 pinweaver_csme test ti50_onboard tpm_dynamic tpm2_simulator vtpm_proxy cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=Apache-2.0
 PROPERTIES=live live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/power_manager-client:= ftdi_tpm? ( dev-embedded/libftdi:= ) tpm2_simulator? ( chromeos-base/tpm2:= vtpm_proxy? ( chromeos-base/tpm2-simulator:= ) ) dev-libs/protobuf:= fuzzer? ( dev-cpp/gtest:= ) cr50_onboard? ( chromeos-base/chromeos-cr50 ) ti50_onboard? ( chromeos-base/chromeos-ti50 ) !app-crypt/tpm-tools chromeos-base/libhwsec-foundation >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/power_manager-client:= ftdi_tpm? ( dev-embedded/libftdi:= ) tpm2_simulator? ( chromeos-base/tpm2:= vtpm_proxy? ( chromeos-base/tpm2-simulator:= ) ) dev-libs/protobuf:= fuzzer? ( dev-cpp/gtest:= ) cr50_onboard? ( chromeos-base/chromeos-cr50 ) ti50_onboard? ( chromeos-base/chromeos-ti50 ) generic_tpm2? ( chromeos-base/chromeos-cr50-scripts ) !tpm_dynamic? ( !app-crypt/tpm-tools ) chromeos-base/libhwsec-foundation >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=6a79e3855ff223fdcdb6b11b1e355fa1
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=a9a1e8be618d61e0d586cb7a42ba4fd8
diff --git a/metadata/md5-cache/chromeos-base/tty-0.0.1 b/metadata/md5-cache/chromeos-base/tty-0.0.1
index efceced..61410a5 100644
--- a/metadata/md5-cache/chromeos-base/tty-0.0.1
+++ b/metadata/md5-cache/chromeos-base/tty-0.0.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 RDEPEND=systemd? ( sys-apps/systemd ) !systemd? ( sys-apps/upstart ) !chromeos-base/tty1 !chromeos-base/serial-tty
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=dfff79a6c1bf85299f29a7970ae46da6
diff --git a/metadata/md5-cache/chromeos-base/tty-0.0.1-r13 b/metadata/md5-cache/chromeos-base/tty-0.0.1-r13
index efceced..61410a5 100644
--- a/metadata/md5-cache/chromeos-base/tty-0.0.1-r13
+++ b/metadata/md5-cache/chromeos-base/tty-0.0.1-r13
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 RDEPEND=systemd? ( sys-apps/systemd ) !systemd? ( sys-apps/upstart ) !chromeos-base/tty1 !chromeos-base/serial-tty
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=dfff79a6c1bf85299f29a7970ae46da6
diff --git a/metadata/md5-cache/chromeos-base/typecd-0.0.1-r180 b/metadata/md5-cache/chromeos-base/typecd-0.0.1-r180
deleted file mode 100644
index fc7223b..0000000
--- a/metadata/md5-cache/chromeos-base/typecd-0.0.1-r180
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/debugd-client:= chromeos-base/session_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Chrome OS USB Type C daemon
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/typecd/
-IUSE=+seccomp cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_94b56d6d00224f6b44d9f6c77cd490426acc7c17_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_94b56d6d00224f6b44d9f6c77cd490426acc7c17_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=33eeaa39970303434b7d23b45affe6e5
diff --git a/metadata/md5-cache/chromeos-base/typecd-0.0.1-r214 b/metadata/md5-cache/chromeos-base/typecd-0.0.1-r214
new file mode 100644
index 0000000..b081300
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/typecd-0.0.1-r214
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/debugd-client:= chromeos-base/session_manager-client:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Chrome OS USB Type C daemon
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/typecd/
+IUSE=+seccomp cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_d8a694da951e80d475cb81e4fd694cf6b01aa714_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_d8a694da951e80d475cb81e4fd694cf6b01aa714_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=12fea04e0b76a0e60c83f5b96cb77ba4
diff --git a/metadata/md5-cache/chromeos-base/typecd-9999 b/metadata/md5-cache/chromeos-base/typecd-9999
index a527eab..ec05a8d 100644
--- a/metadata/md5-cache/chromeos-base/typecd-9999
+++ b/metadata/md5-cache/chromeos-base/typecd-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=e8d51cf9c57ad32834b8e8695cea6658
diff --git a/metadata/md5-cache/chromeos-base/u2fd-0.0.1-r1165 b/metadata/md5-cache/chromeos-base/u2fd-0.0.1-r1165
deleted file mode 100644
index 4a67a43..0000000
--- a/metadata/md5-cache/chromeos-base/u2fd-0.0.1-r1165
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/attestation:= chromeos-base/attestation-client:= chromeos-base/cbor:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/power_manager-client:= chromeos-base/trunks:= dev-libs/hidapi:= chromeos-base/attestation-client:= >=chromeos-base/protofiles-0.0.43:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=U2FHID Emulation Daemon
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/u2fhid
-IUSE=fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a06a3f47395fb7b584188c6852764bc773e5497e_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e4bdb36b8b1e5f01a3bbb9b825a32cf55222bfeb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a06a3f47395fb7b584188c6852764bc773e5497e_81dfbbc1756a3b4224b447e7bf10a916d97c4f66_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e4bdb36b8b1e5f01a3bbb9b825a32cf55222bfeb_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/attestation:= chromeos-base/attestation-client:= chromeos-base/cbor:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/power_manager-client:= chromeos-base/trunks:= dev-libs/hidapi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r1165
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=88d11b1ed3f7434ba01dfd1dd30768a9
diff --git a/metadata/md5-cache/chromeos-base/u2fd-0.0.1-r1259 b/metadata/md5-cache/chromeos-base/u2fd-0.0.1-r1259
new file mode 100644
index 0000000..ca1da93
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/u2fd-0.0.1-r1259
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/attestation:= chromeos-base/attestation-client:= chromeos-base/cbor:= chromeos-base/cryptohome-client:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/power_manager-client:= chromeos-base/trunks:= dev-libs/hidapi:= chromeos-base/attestation-client:= >=chromeos-base/protofiles-0.0.43:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=U2FHID Emulation Daemon
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/u2fhid
+IUSE=fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_d8da1275feb26afab354f35df7316b3840f8330b_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_e08a2eb734e33827dffeecf57eca046cd1091373_11a1a181f7876719e62e7220c7683ee1253aee9f_1e9ca239fab09ba22b58e4a22d63e2ede865b159_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_d8da1275feb26afab354f35df7316b3840f8330b_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_e08a2eb734e33827dffeecf57eca046cd1091373_11a1a181f7876719e62e7220c7683ee1253aee9f_1e9ca239fab09ba22b58e4a22d63e2ede865b159_2bd42cf4f2f41e68c177dfdba095d8d3412fd76c_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/attestation:= chromeos-base/attestation-client:= chromeos-base/cbor:= chromeos-base/cryptohome-client:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/power_manager-client:= chromeos-base/trunks:= dev-libs/hidapi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r1259
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=60e6e538192d69a27389a8d8bb44816f
diff --git a/metadata/md5-cache/chromeos-base/u2fd-9999 b/metadata/md5-cache/chromeos-base/u2fd-9999
index 58b4fb3..9d9fac9 100644
--- a/metadata/md5-cache/chromeos-base/u2fd-9999
+++ b/metadata/md5-cache/chromeos-base/u2fd-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/attestation:= chromeos-base/attestation-client:= chromeos-base/cbor:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/power_manager-client:= chromeos-base/trunks:= dev-libs/hidapi:= chromeos-base/attestation-client:= >=chromeos-base/protofiles-0.0.43:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DEPEND=chromeos-base/attestation:= chromeos-base/attestation-client:= chromeos-base/cbor:= chromeos-base/cryptohome-client:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/power_manager-client:= chromeos-base/trunks:= dev-libs/hidapi:= chromeos-base/attestation-client:= >=chromeos-base/protofiles-0.0.43:= chromeos-base/system_api:=[fuzzer?] >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
 DESCRIPTION=U2FHID Emulation Daemon
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/u2fhid
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/attestation:= chromeos-base/attestation-client:= chromeos-base/cbor:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/power_manager-client:= chromeos-base/trunks:= dev-libs/hidapi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/attestation:= chromeos-base/attestation-client:= chromeos-base/cbor:= chromeos-base/cryptohome-client:= chromeos-base/libhwsec:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/power_manager-client:= chromeos-base/trunks:= dev-libs/hidapi:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=63ef2c2440f35ca62b8de0404eedd949
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=6776cc6523354c4536f6e1ffc241fed5
diff --git a/metadata/md5-cache/chromeos-base/update-utils-0.0.1-r53 b/metadata/md5-cache/chromeos-base/update-utils-0.0.1-r53
deleted file mode 100644
index de03161..0000000
--- a/metadata/md5-cache/chromeos-base/update-utils-0.0.1-r53
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile info install setup test unpack
-DESCRIPTION=A set of utilities for updating Chrome OS.
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/
-IUSE=cros_host cros_workon_tree_c5397d8291620771eda0e67f65a17a683c0a5507 python_targets_python2_7 python_targets_python3_6 python_targets_python3_7
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!chromeos-base/gmerge
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=2054ee144d042aed1884bc8b98c2bc68
diff --git a/metadata/md5-cache/chromeos-base/update-utils-0.0.1-r58 b/metadata/md5-cache/chromeos-base/update-utils-0.0.1-r58
new file mode 100644
index 0000000..5cdc83c
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/update-utils-0.0.1-r58
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile info install setup test unpack
+DESCRIPTION=A set of utilities for updating Chrome OS.
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/
+IUSE=cros_host cros_workon_tree_b68ce606576817036151d1802df806eb198f96ec python_targets_python2_7 python_targets_python3_6 python_targets_python3_7
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!chromeos-base/gmerge
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=e78b5a83976ccfbabda980e4eea3c28d
diff --git a/metadata/md5-cache/chromeos-base/update-utils-9999 b/metadata/md5-cache/chromeos-base/update-utils-9999
index 247a801..45fed25 100644
--- a/metadata/md5-cache/chromeos-base/update-utils-9999
+++ b/metadata/md5-cache/chromeos-base/update-utils-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=!chromeos-base/gmerge
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9c42ca27e889419ca275dc4a358cfd8a
diff --git a/metadata/md5-cache/chromeos-base/update_engine-0.0.3-r3760 b/metadata/md5-cache/chromeos-base/update_engine-0.0.3-r3760
deleted file mode 100644
index 201eba6..0000000
--- a/metadata/md5-cache/chromeos-base/update_engine-0.0.3-r3760
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=app-arch/xz-utils:= chromeos-base/debugd-client:= dlc? ( chromeos-base/dlcservice-client:= ) chromeos-base/power_manager-client:= chromeos-base/session_manager-client:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/update_engine-client:= test? ( sys-fs/squashfs-tools ) app-arch/bzip2:= chromeos-base/chromeos-ca-certificates:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/vboot_reference:= cros_p2p? ( chromeos-base/p2p:= ) dev-libs/expat:= dev-libs/openssl:= dev-libs/protobuf:= dev-libs/xz-embedded:= dev-util/bsdiff:= dev-util/puffin:= net-misc/curl:= sys-apps/rootdev:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS Update Engine
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/aosp/platform/system/update_engine/
-IUSE=cfm cros_host cros_p2p dlc fuzzer -hwid_override minios +power_management systemd cros-debug cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_8147e94e7ebea6c5e875e4722b2e064d0ba861c4 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_8147e94e7ebea6c5e875e4722b2e064d0ba861c4 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=Apache-2.0
-PROPERTIES=live live
-RDEPEND=!cros_host? ( chromeos-base/chromeos-installer ) app-arch/bzip2:= chromeos-base/chromeos-ca-certificates:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/vboot_reference:= cros_p2p? ( chromeos-base/p2p:= ) dev-libs/expat:= dev-libs/openssl:= dev-libs/protobuf:= dev-libs/xz-embedded:= dev-util/bsdiff:= dev-util/puffin:= net-misc/curl:= sys-apps/rootdev:= cros_host? ( app-arch/unzip:= app-arch/xz-utils:= sys-libs/e2fsprogs-libs:= sys-fs/squashfs-tools ) power_management? ( chromeos-base/power_manager:= ) virtual/update-policy:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.3-r3760
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=1090fa9607df8cd7ed1aa060a9794954
diff --git a/metadata/md5-cache/chromeos-base/update_engine-0.0.3-r3838 b/metadata/md5-cache/chromeos-base/update_engine-0.0.3-r3838
new file mode 100644
index 0000000..b3702ee
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/update_engine-0.0.3-r3838
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=app-arch/xz-utils:= chromeos-base/debugd-client:= dlc? ( chromeos-base/dlcservice-client:= ) chromeos-base/power_manager-client:= chromeos-base/session_manager-client:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/update_engine-client:= test? ( sys-fs/squashfs-tools ) app-arch/bzip2:= chromeos-base/chromeos-ca-certificates:= hw_details? ( chromeos-base/diagnostics:= ) >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/vboot_reference:= cros_p2p? ( chromeos-base/p2p:= ) dev-libs/expat:= dev-libs/openssl:= dev-libs/protobuf:= dev-libs/xz-embedded:= dev-util/bsdiff:= dev-util/puffin:= net-misc/curl:= sys-apps/rootdev:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS Update Engine
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/aosp/platform/system/update_engine/
+IUSE=cfm cros_host cros_p2p dlc fuzzer hw_details -hwid_override minios +power_management systemd cros-debug cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5053293c8acdb133cff9f0893424aca79679a148_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_e8f154e1827adae22511d24dad70a3a206d5ba27 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5053293c8acdb133cff9f0893424aca79679a148_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_e8f154e1827adae22511d24dad70a3a206d5ba27 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=Apache-2.0
+PROPERTIES=live live
+RDEPEND=!cros_host? ( chromeos-base/chromeos-installer ) app-arch/bzip2:= chromeos-base/chromeos-ca-certificates:= hw_details? ( chromeos-base/diagnostics:= ) >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/vboot_reference:= cros_p2p? ( chromeos-base/p2p:= ) dev-libs/expat:= dev-libs/openssl:= dev-libs/protobuf:= dev-libs/xz-embedded:= dev-util/bsdiff:= dev-util/puffin:= net-misc/curl:= sys-apps/rootdev:= cros_host? ( app-arch/unzip:= app-arch/xz-utils:= sys-libs/e2fsprogs-libs:= sys-fs/squashfs-tools ) power_management? ( chromeos-base/power_manager:= ) virtual/update-policy:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.3-r3838
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b507d95a873c4ed339e8ddfce8d01328
diff --git a/metadata/md5-cache/chromeos-base/update_engine-9999 b/metadata/md5-cache/chromeos-base/update_engine-9999
index 4f7e73a..28b56e0 100644
--- a/metadata/md5-cache/chromeos-base/update_engine-9999
+++ b/metadata/md5-cache/chromeos-base/update_engine-9999
@@ -1,14 +1,14 @@
 BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=app-arch/xz-utils:= chromeos-base/debugd-client:= dlc? ( chromeos-base/dlcservice-client:= ) chromeos-base/power_manager-client:= chromeos-base/session_manager-client:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/update_engine-client:= test? ( sys-fs/squashfs-tools ) app-arch/bzip2:= chromeos-base/chromeos-ca-certificates:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/vboot_reference:= cros_p2p? ( chromeos-base/p2p:= ) dev-libs/expat:= dev-libs/openssl:= dev-libs/protobuf:= dev-libs/xz-embedded:= dev-util/bsdiff:= dev-util/puffin:= net-misc/curl:= sys-apps/rootdev:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=app-arch/xz-utils:= chromeos-base/debugd-client:= dlc? ( chromeos-base/dlcservice-client:= ) chromeos-base/power_manager-client:= chromeos-base/session_manager-client:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/update_engine-client:= test? ( sys-fs/squashfs-tools ) app-arch/bzip2:= chromeos-base/chromeos-ca-certificates:= hw_details? ( chromeos-base/diagnostics:= ) >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/vboot_reference:= cros_p2p? ( chromeos-base/p2p:= ) dev-libs/expat:= dev-libs/openssl:= dev-libs/protobuf:= dev-libs/xz-embedded:= dev-util/bsdiff:= dev-util/puffin:= net-misc/curl:= sys-apps/rootdev:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Chrome OS Update Engine
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/aosp/platform/system/update_engine/
-IUSE=cfm cros_host cros_p2p dlc fuzzer -hwid_override minios +power_management systemd cros-debug cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+IUSE=cfm cros_host cros_p2p dlc fuzzer hw_details -hwid_override minios +power_management systemd cros-debug cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=Apache-2.0
 PROPERTIES=live live
-RDEPEND=!cros_host? ( chromeos-base/chromeos-installer ) app-arch/bzip2:= chromeos-base/chromeos-ca-certificates:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/vboot_reference:= cros_p2p? ( chromeos-base/p2p:= ) dev-libs/expat:= dev-libs/openssl:= dev-libs/protobuf:= dev-libs/xz-embedded:= dev-util/bsdiff:= dev-util/puffin:= net-misc/curl:= sys-apps/rootdev:= cros_host? ( app-arch/unzip:= app-arch/xz-utils:= sys-libs/e2fsprogs-libs:= sys-fs/squashfs-tools ) power_management? ( chromeos-base/power_manager:= ) virtual/update-policy:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+RDEPEND=!cros_host? ( chromeos-base/chromeos-installer ) app-arch/bzip2:= chromeos-base/chromeos-ca-certificates:= hw_details? ( chromeos-base/diagnostics:= ) >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/vboot_reference:= cros_p2p? ( chromeos-base/p2p:= ) dev-libs/expat:= dev-libs/openssl:= dev-libs/protobuf:= dev-libs/xz-embedded:= dev-util/bsdiff:= dev-util/puffin:= net-misc/curl:= sys-apps/rootdev:= cros_host? ( app-arch/unzip:= app-arch/xz-utils:= sys-libs/e2fsprogs-libs:= sys-fs/squashfs-tools ) power_management? ( chromeos-base/power_manager:= ) virtual/update-policy:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=47bf9c6cfc56496ef0d3c8cd6b750063
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=142671ba0c6552402f1d0e060625f8be
diff --git a/metadata/md5-cache/chromeos-base/update_engine-client-0.0.1-r1904 b/metadata/md5-cache/chromeos-base/update_engine-client-0.0.1-r1904
deleted file mode 100644
index c42e5c1..0000000
--- a/metadata/md5-cache/chromeos-base/update_engine-client-0.0.1-r1904
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=chromeos-base/chromeos-dbus-bindings:= dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS Update Engine client library
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/aosp/platform/system/update_engine/
-IUSE=cros_host cros-debug cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_8147e94e7ebea6c5e875e4722b2e064d0ba861c4 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_8147e94e7ebea6c5e875e4722b2e064d0ba861c4 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!<chromeos-base/update_engine-0.0.3 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e429964645ace7fb5dcfc58643535acd
diff --git a/metadata/md5-cache/chromeos-base/update_engine-client-0.0.1-r1953 b/metadata/md5-cache/chromeos-base/update_engine-client-0.0.1-r1953
new file mode 100644
index 0000000..81c8892
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/update_engine-client-0.0.1-r1953
@@ -0,0 +1,14 @@
+BDEPEND=chromeos-base/chromeos-dbus-bindings:= dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS Update Engine client library
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/aosp/platform/system/update_engine/
+IUSE=cros_host cros-debug cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_e8f154e1827adae22511d24dad70a3a206d5ba27 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_e8f154e1827adae22511d24dad70a3a206d5ba27 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!<chromeos-base/update_engine-0.0.3 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=72e648fddec44fa5b7912e3e60628d35
diff --git a/metadata/md5-cache/chromeos-base/update_engine-client-9999 b/metadata/md5-cache/chromeos-base/update_engine-client-9999
index f84c6f9..9ff7e44 100644
--- a/metadata/md5-cache/chromeos-base/update_engine-client-9999
+++ b/metadata/md5-cache/chromeos-base/update_engine-client-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=!<chromeos-base/update_engine-0.0.3 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=85bfc33a074c5c6c8c02a3f459fad0a4
diff --git a/metadata/md5-cache/chromeos-base/update_payload-0.0.1-r388 b/metadata/md5-cache/chromeos-base/update_payload-0.0.1-r388
deleted file mode 100644
index 903fe2d..0000000
--- a/metadata/md5-cache/chromeos-base/update_payload-0.0.1-r388
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup test unpack
-DESCRIPTION=Chrome OS Update Engine Update Payload Scripts
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/aosp/platform/system/update_engine
-IUSE=cros_host cros_workon_tree_8147e94e7ebea6c5e875e4722b2e064d0ba861c4 python_targets_python3_6 python_targets_python3_7
-KEYWORDS=*
-LICENSE=Apache-2.0
-PROPERTIES=live
-RDEPEND=dev-python/protobuf-python[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] !<chromeos-base/devserver-0.0.3
-SLOT=0/0.0.1-r388
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=37aac11b9418361a314436f2bb6f5f15
diff --git a/metadata/md5-cache/chromeos-base/update_payload-0.0.1-r413 b/metadata/md5-cache/chromeos-base/update_payload-0.0.1-r413
new file mode 100644
index 0000000..045fd15
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/update_payload-0.0.1-r413
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup test unpack
+DESCRIPTION=Chrome OS Update Engine Update Payload Scripts
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/aosp/platform/system/update_engine
+IUSE=cros_host cros_workon_tree_e8f154e1827adae22511d24dad70a3a206d5ba27 python_targets_python3_6 python_targets_python3_7
+KEYWORDS=*
+LICENSE=Apache-2.0
+PROPERTIES=live
+RDEPEND=dev-python/protobuf-python[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] !<chromeos-base/devserver-0.0.3
+SLOT=0/0.0.1-r413
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a61d5212e46b28da3970d84af9277e86
diff --git a/metadata/md5-cache/chromeos-base/update_payload-9999 b/metadata/md5-cache/chromeos-base/update_payload-9999
index cd675d5..cfe94fc 100644
--- a/metadata/md5-cache/chromeos-base/update_payload-9999
+++ b/metadata/md5-cache/chromeos-base/update_payload-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=dev-python/protobuf-python[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] !<chromeos-base/devserver-0.0.3
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3ff8c92a7c213e035c0c444de7080795
diff --git a/metadata/md5-cache/chromeos-base/ureadahead-diff-0.0.1-r123 b/metadata/md5-cache/chromeos-base/ureadahead-diff-0.0.1-r123
new file mode 100644
index 0000000..236ccda
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/ureadahead-diff-0.0.1-r123
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Calculate common part and difference of two ureadahead packs
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/ureadahead-diff
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_a3eac5d15a46a63784099b3fe4af44a89d376a6f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_a3eac5d15a46a63784099b3fe4af44a89d376a6f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5667025b8601798867932ae95f80c9a4
diff --git a/metadata/md5-cache/chromeos-base/ureadahead-diff-0.0.1-r98 b/metadata/md5-cache/chromeos-base/ureadahead-diff-0.0.1-r98
deleted file mode 100644
index 04ab32d..0000000
--- a/metadata/md5-cache/chromeos-base/ureadahead-diff-0.0.1-r98
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Calculate common part and difference of two ureadahead packs
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/ureadahead-diff
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a3eac5d15a46a63784099b3fe4af44a89d376a6f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a3eac5d15a46a63784099b3fe4af44a89d376a6f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=c7400908473cb20abb40b97808d9310a
diff --git a/metadata/md5-cache/chromeos-base/ureadahead-diff-9999 b/metadata/md5-cache/chromeos-base/ureadahead-diff-9999
index 2496adc6..aaa28f2 100644
--- a/metadata/md5-cache/chromeos-base/ureadahead-diff-9999
+++ b/metadata/md5-cache/chromeos-base/ureadahead-diff-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5dae247b1575c379190acac83cc6c378
diff --git a/metadata/md5-cache/chromeos-base/usb_bouncer-0.0.1-r362 b/metadata/md5-cache/chromeos-base/usb_bouncer-0.0.1-r362
deleted file mode 100644
index 8eb32c5..0000000
--- a/metadata/md5-cache/chromeos-base/usb_bouncer-0.0.1-r362
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=fuzzer? ( dev-libs/libprotobuf-mutator:= ) >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= dev-libs/openssl:0= sys-apps/usbguard:= chromeos-base/session_manager-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=Manage the usbguard whitelist
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/usb_bouncer/
-IUSE=fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_21fac63ce5008231f93827abac8fcfc8aa5bfae7_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_21fac63ce5008231f93827abac8fcfc8aa5bfae7_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=fuzzer? ( dev-libs/libprotobuf-mutator:= ) >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= dev-libs/openssl:0= sys-apps/usbguard:= virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=04adafd97f0f93dc3ea1434a3b6c6d67
diff --git a/metadata/md5-cache/chromeos-base/usb_bouncer-0.0.1-r404 b/metadata/md5-cache/chromeos-base/usb_bouncer-0.0.1-r404
new file mode 100644
index 0000000..a4e98f5
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/usb_bouncer-0.0.1-r404
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=fuzzer? ( dev-libs/libprotobuf-mutator:= ) >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= dev-libs/openssl:0= sys-apps/usbguard:= chromeos-base/session_manager-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=Manage the usbguard whitelist
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/usb_bouncer/
+IUSE=fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_6ac19e1589763311d82e0bb2419322721903bcb9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_6ac19e1589763311d82e0bb2419322721903bcb9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=fuzzer? ( dev-libs/libprotobuf-mutator:= ) >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= dev-libs/openssl:0= sys-apps/usbguard:= virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=74e38bae7233f1c96ed62347e7767cb2
diff --git a/metadata/md5-cache/chromeos-base/usb_bouncer-9999 b/metadata/md5-cache/chromeos-base/usb_bouncer-9999
index 46b87bc..c7739b5 100644
--- a/metadata/md5-cache/chromeos-base/usb_bouncer-9999
+++ b/metadata/md5-cache/chromeos-base/usb_bouncer-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=fuzzer? ( dev-libs/libprotobuf-mutator:= ) >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= dev-libs/openssl:0= sys-apps/usbguard:= virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=2a6d0fc1ebeac1e3437cead9b1ad20ab
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=324e5636f6ba0d1c39bda20e7c9bd50e
diff --git a/metadata/md5-cache/chromeos-base/userfeedback-0.0.1-r2901 b/metadata/md5-cache/chromeos-base/userfeedback-0.0.1-r2901
index 17fa460..8ffb6f8 100644
--- a/metadata/md5-cache/chromeos-base/userfeedback-0.0.1-r2901
+++ b/metadata/md5-cache/chromeos-base/userfeedback-0.0.1-r2901
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/chromeos-init chromeos-base/crash-reporter chromeos-base/modem-utilities chromeos-base/vboot_reference media-libs/fontconfig media-sound/alsa-utils sys-apps/coreboot-utils sys-apps/mosys sys-apps/net-tools sys-apps/pciutils sys-apps/usbutils X? ( x11-apps/setxkbmap )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=cd4a8312ac61ba1e80cf8476a6110803
diff --git a/metadata/md5-cache/chromeos-base/userfeedback-9999 b/metadata/md5-cache/chromeos-base/userfeedback-9999
index d080711..1a3d6e3 100644
--- a/metadata/md5-cache/chromeos-base/userfeedback-9999
+++ b/metadata/md5-cache/chromeos-base/userfeedback-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/chromeos-init chromeos-base/crash-reporter chromeos-base/modem-utilities chromeos-base/vboot_reference media-libs/fontconfig media-sound/alsa-utils sys-apps/coreboot-utils sys-apps/mosys sys-apps/net-tools sys-apps/pciutils sys-apps/usbutils X? ( x11-apps/setxkbmap )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=880c641a0d6896ecbdedc9bdd3142457
diff --git a/metadata/md5-cache/chromeos-base/userspace_touchpad-0.0.1-r1240 b/metadata/md5-cache/chromeos-base/userspace_touchpad-0.0.1-r1240
deleted file mode 100644
index de529ef..0000000
--- a/metadata/md5-cache/chromeos-base/userspace_touchpad-0.0.1-r1240
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Userspace Touchpad
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/userspace_touchpad/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6dec9e72a7a7acf465653837e06ad241
diff --git a/metadata/md5-cache/chromeos-base/userspace_touchpad-0.0.1-r1265 b/metadata/md5-cache/chromeos-base/userspace_touchpad-0.0.1-r1265
new file mode 100644
index 0000000..93e9ded
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/userspace_touchpad-0.0.1-r1265
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Userspace Touchpad
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/userspace_touchpad/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3b22f139bc628611553402a39fb368a6
diff --git a/metadata/md5-cache/chromeos-base/userspace_touchpad-9999 b/metadata/md5-cache/chromeos-base/userspace_touchpad-9999
index ffc4e17..349e337 100644
--- a/metadata/md5-cache/chromeos-base/userspace_touchpad-9999
+++ b/metadata/md5-cache/chromeos-base/userspace_touchpad-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ff364745af7fbf88bf3f3bb411f6d6c9
diff --git a/metadata/md5-cache/chromeos-base/usi-test-0.0.1-r2 b/metadata/md5-cache/chromeos-base/usi-test-0.0.1-r2
index b96bddc..c922964 100644
--- a/metadata/md5-cache/chromeos-base/usi-test-0.0.1-r2
+++ b/metadata/md5-cache/chromeos-base/usi-test-0.0.1-r2
@@ -11,5 +11,5 @@
 RDEPEND=~dev-python/hid-tools-0.2[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0/0.0.1-r2
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=142168440a101f34c60555a30daa66e4
diff --git a/metadata/md5-cache/chromeos-base/usi-test-9999 b/metadata/md5-cache/chromeos-base/usi-test-9999
index 0e5445a..56fa5bf 100644
--- a/metadata/md5-cache/chromeos-base/usi-test-9999
+++ b/metadata/md5-cache/chromeos-base/usi-test-9999
@@ -11,5 +11,5 @@
 RDEPEND=~dev-python/hid-tools-0.2[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=163f418aae2aac6cf1bfa8180fb7b464
diff --git a/metadata/md5-cache/chromeos-base/vboot_reference-1.0-r2113 b/metadata/md5-cache/chromeos-base/vboot_reference-1.0-r2113
deleted file mode 100644
index ddbbd4d..0000000
--- a/metadata/md5-cache/chromeos-base/vboot_reference-1.0-r2113
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/libzip:= dev-libs/openssl:= sys-apps/util-linux:=
-DESCRIPTION=Chrome OS verified boot tools
-EAPI=7
-IUSE=cros_host dev_debug_force fuzzer pd_sync test tpmtests tpm tpm2 tpm2_simulator vtpm_proxy cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-libs/libzip:= dev-libs/openssl:= sys-apps/util-linux:=
-REQUIRED_USE=?? ( tpm2 tpm )
-SLOT=0/1.0-r2113
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=23c9f13a3a6fd2b305e5905e8016d31d
diff --git a/metadata/md5-cache/chromeos-base/vboot_reference-1.0-r2169 b/metadata/md5-cache/chromeos-base/vboot_reference-1.0-r2169
new file mode 100644
index 0000000..f53583f
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/vboot_reference-1.0-r2169
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/libzip:= dev-libs/openssl:= sys-apps/util-linux:=
+DESCRIPTION=Chrome OS verified boot tools
+EAPI=7
+IUSE=cros_host dev_debug_force fuzzer pd_sync test tpmtests tpm tpm_dynamic tpm2 tpm2_simulator vtpm_proxy cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_63abdfe41a1746dfd5452f030b2ff4646a15ff76
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-libs/libzip:= dev-libs/openssl:= sys-apps/util-linux:=
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
+SLOT=0/1.0-r2169
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=17d3de8cb4d2a613ae908840b45bfd59
diff --git a/metadata/md5-cache/chromeos-base/vboot_reference-9999 b/metadata/md5-cache/chromeos-base/vboot_reference-9999
index 8b6102c..7bedf7f 100644
--- a/metadata/md5-cache/chromeos-base/vboot_reference-9999
+++ b/metadata/md5-cache/chromeos-base/vboot_reference-9999
@@ -3,12 +3,12 @@
 DEPEND=dev-libs/libzip:= dev-libs/openssl:= sys-apps/util-linux:=
 DESCRIPTION=Chrome OS verified boot tools
 EAPI=7
-IUSE=cros_host dev_debug_force fuzzer pd_sync test tpmtests tpm tpm2 tpm2_simulator vtpm_proxy cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_
+IUSE=cros_host dev_debug_force fuzzer pd_sync test tpmtests tpm tpm_dynamic tpm2 tpm2_simulator vtpm_proxy cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
 RDEPEND=dev-libs/libzip:= dev-libs/openssl:= sys-apps/util-linux:=
-REQUIRED_USE=?? ( tpm2 tpm )
+REQUIRED_USE=tpm_dynamic? ( tpm tpm2 ) !tpm_dynamic? ( ?? ( tpm tpm2 ) )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d92abdf4945e0e642524c6d58313e7a0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=db42a82c938df78dbb37ec169af43684
diff --git a/metadata/md5-cache/chromeos-base/vboot_reference-tests-0.0.1-r1974 b/metadata/md5-cache/chromeos-base/vboot_reference-tests-0.0.1-r1974
deleted file mode 100644
index 3413493..0000000
--- a/metadata/md5-cache/chromeos-base/vboot_reference-tests-0.0.1-r1974
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst prepare setup unpack
-DESCRIPTION=vboot tests
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/vboot_reference/
-IUSE=+autotest +tests_firmware_VbootCrypto cros_host cros_workon_tree_3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c +buildcheck autotest opengles
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=autotest? ( chromeos-base/autotest )
-SLOT=0/0.0.1-r1974
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=c0325c2f7eb2cf7ecad20df9e12ee90b
diff --git a/metadata/md5-cache/chromeos-base/vboot_reference-tests-0.0.1-r2028 b/metadata/md5-cache/chromeos-base/vboot_reference-tests-0.0.1-r2028
new file mode 100644
index 0000000..8ab387b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/vboot_reference-tests-0.0.1-r2028
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup unpack
+DESCRIPTION=vboot tests
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/vboot_reference/
+IUSE=+autotest +tests_firmware_VbootCrypto cros_host cros_workon_tree_63abdfe41a1746dfd5452f030b2ff4646a15ff76 +buildcheck autotest opengles
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=autotest? ( chromeos-base/autotest )
+SLOT=0/0.0.1-r2028
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=52f0ec2fe80579ea75ce5d911a08f628
diff --git a/metadata/md5-cache/chromeos-base/vboot_reference-tests-9999 b/metadata/md5-cache/chromeos-base/vboot_reference-tests-9999
index facc123..90f8f26 100644
--- a/metadata/md5-cache/chromeos-base/vboot_reference-tests-9999
+++ b/metadata/md5-cache/chromeos-base/vboot_reference-tests-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=autotest? ( chromeos-base/autotest )
 SLOT=0/9999
-_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotest	eadb1cf950e538b3f253d33164e48304	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=da3f3894077f5a535851d73d99beff3a
diff --git a/metadata/md5-cache/chromeos-base/verity-0.0.1-r186 b/metadata/md5-cache/chromeos-base/verity-0.0.1-r186
deleted file mode 100644
index 27511dc..0000000
--- a/metadata/md5-cache/chromeos-base/verity-0.0.1-r186
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=File system integrity image generator for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/verity/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_33de53739dbe0fd2911d58694b622539ef0a2416_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_33de53739dbe0fd2911d58694b622539ef0a2416_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google GPL-2
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r186
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=fd1809b3279dc5fa55acb989ba7aae82
diff --git a/metadata/md5-cache/chromeos-base/verity-0.0.1-r213 b/metadata/md5-cache/chromeos-base/verity-0.0.1-r213
new file mode 100644
index 0000000..b3cb3b3
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/verity-0.0.1-r213
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=File system integrity image generator for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/verity/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_76048c384ed9eba7cdd5dc5c3e0b853baac8802d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_76048c384ed9eba7cdd5dc5c3e0b853baac8802d_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google GPL-2
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r213
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=edfe51db2bd82c9b72affcf200e78e24
diff --git a/metadata/md5-cache/chromeos-base/verity-9999 b/metadata/md5-cache/chromeos-base/verity-9999
index 8dd2cb9..501dda8 100644
--- a/metadata/md5-cache/chromeos-base/verity-9999
+++ b/metadata/md5-cache/chromeos-base/verity-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=861f48d0f563d9b01116e29ea2dc60ea
diff --git a/metadata/md5-cache/chromeos-base/virtual-file-provider-0.0.1-r822 b/metadata/md5-cache/chromeos-base/virtual-file-provider-0.0.1-r822
deleted file mode 100644
index c7d6572..0000000
--- a/metadata/md5-cache/chromeos-base/virtual-file-provider-0.0.1-r822
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=sys-fs/fuse:= sys-libs/libcap:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=D-Bus service to provide virtual file
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/virtual_file_provider
-IUSE=arcvm cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_6012501ec6294d801b43321009548fb1528f3ef9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_6012501ec6294d801b43321009548fb1528f3ef9_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r822
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=351d32420acb35270b47576607e50d6b
diff --git a/metadata/md5-cache/chromeos-base/virtual-file-provider-0.0.1-r850 b/metadata/md5-cache/chromeos-base/virtual-file-provider-0.0.1-r850
new file mode 100644
index 0000000..bd1a370
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/virtual-file-provider-0.0.1-r850
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=sys-fs/fuse:= sys-libs/libcap:= chromeos-base/system_api:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=D-Bus service to provide virtual file
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/virtual_file_provider
+IUSE=arcvm cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_0cf089234e3e751d8dbf2040f16434cbfb64919a_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_0cf089234e3e751d8dbf2040f16434cbfb64919a_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r850
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=2841a3f075ece4c2a25b5cab56e27d99
diff --git a/metadata/md5-cache/chromeos-base/virtual-file-provider-9999 b/metadata/md5-cache/chromeos-base/virtual-file-provider-9999
index ec74bd2..fa0abbd 100644
--- a/metadata/md5-cache/chromeos-base/virtual-file-provider-9999
+++ b/metadata/md5-cache/chromeos-base/virtual-file-provider-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=sys-fs/fuse:= sys-libs/libcap:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=d67eb84a0b9dcf6c6687e56166939a9a
diff --git a/metadata/md5-cache/chromeos-base/virtual-usb-printer-0.0.1-r274 b/metadata/md5-cache/chromeos-base/virtual-usb-printer-0.0.1-r274
deleted file mode 100644
index 5846323..0000000
--- a/metadata/md5-cache/chromeos-base/virtual-usb-printer-0.0.1-r274
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libipp:= dev-libs/libxml2:= dev-libs/protobuf:= net-misc/usbip:= virtual/jpeg:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Used with USBIP to provide a virtual USB printer for testing.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/virtual-usb-printer/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a1a60f36b19b903f80c2373a9b3bea197676ecae cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a1a60f36b19b903f80c2373a9b3bea197676ecae cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live live
-RDEPEND=chromeos-base/libipp:= dev-libs/libxml2:= dev-libs/protobuf:= net-misc/usbip:= virtual/jpeg:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r274
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=eef0a1bb4547a998a84985f9fea9fdb8
diff --git a/metadata/md5-cache/chromeos-base/virtual-usb-printer-0.0.1-r311 b/metadata/md5-cache/chromeos-base/virtual-usb-printer-0.0.1-r311
new file mode 100644
index 0000000..c97049b
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/virtual-usb-printer-0.0.1-r311
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libipp:= dev-libs/libxml2:= dev-libs/protobuf:= net-misc/usbip:= virtual/jpeg:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Used with USBIP to provide a virtual USB printer for testing.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/virtual-usb-printer/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7455349af18a9af9bd922e37654b814f9b1c135d cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7455349af18a9af9bd922e37654b814f9b1c135d cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live live
+RDEPEND=chromeos-base/libipp:= dev-libs/libxml2:= dev-libs/protobuf:= net-misc/usbip:= virtual/jpeg:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r311
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4575a4e9f2bdf07c4b2137917ec6a48f
diff --git a/metadata/md5-cache/chromeos-base/virtual-usb-printer-9999 b/metadata/md5-cache/chromeos-base/virtual-usb-printer-9999
index 99b2d65..a6de5c3 100644
--- a/metadata/md5-cache/chromeos-base/virtual-usb-printer-9999
+++ b/metadata/md5-cache/chromeos-base/virtual-usb-printer-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/libipp:= dev-libs/libxml2:= dev-libs/protobuf:= net-misc/usbip:= virtual/jpeg:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3a33102465d17e8c663dbb11caa4c780
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d8ebf131ff881534c6071e55a9ef6756
diff --git a/metadata/md5-cache/chromeos-base/vkbench-0.0.1-r11 b/metadata/md5-cache/chromeos-base/vkbench-0.0.1-r11
new file mode 100644
index 0000000..12f71dd
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/vkbench-0.0.1-r11
@@ -0,0 +1,15 @@
+BDEPEND=dev-util/glslang dev-vcs/git dev-util/ninja >=dev-util/cmake-3.9.6
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=dev-libs/libfmt:= media-libs/libpng:= media-libs/vulkan-loader:= virtual/vulkan-icd:=
+DESCRIPTION=Microbenchmark for vulkan
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/vkbench/
+IUSE=vulkan cros_host cros_workon_tree_ab77730e73c6c56c3bacf7fa3c48942ed762d970
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-libs/libfmt:= media-libs/libpng:= media-libs/vulkan-loader:= virtual/vulkan-icd:=
+REQUIRED_USE=vulkan
+SLOT=0/0.0.1-r11
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=a222b9e6aafeb04a087061225953ed69
diff --git a/metadata/md5-cache/chromeos-base/vkbench-0.0.1-r8 b/metadata/md5-cache/chromeos-base/vkbench-0.0.1-r8
deleted file mode 100644
index 61fb291..0000000
--- a/metadata/md5-cache/chromeos-base/vkbench-0.0.1-r8
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-util/glslang dev-vcs/git dev-util/ninja >=dev-util/cmake-3.9.6
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=dev-libs/libfmt:= media-libs/libpng:= media-libs/vulkan-loader:= virtual/vulkan-icd:=
-DESCRIPTION=Microbenchmark for vulkan
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/vkbench/
-IUSE=vulkan cros_host cros_workon_tree_674da03cb295015def82ec04e960293b338845f6
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-libs/libfmt:= media-libs/libpng:= media-libs/vulkan-loader:= virtual/vulkan-icd:=
-REQUIRED_USE=vulkan
-SLOT=0/0.0.1-r8
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=08b66958f3bb0daf59f937b076af4315
diff --git a/metadata/md5-cache/chromeos-base/vkbench-9999 b/metadata/md5-cache/chromeos-base/vkbench-9999
index 6f28b47..5fa8bd1 100644
--- a/metadata/md5-cache/chromeos-base/vkbench-9999
+++ b/metadata/md5-cache/chromeos-base/vkbench-9999
@@ -11,5 +11,5 @@
 RDEPEND=dev-libs/libfmt:= media-libs/libpng:= media-libs/vulkan-loader:= virtual/vulkan-icd:=
 REQUIRED_USE=vulkan
 SLOT=0/9999
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=d4cb91e9064a17507e62526cbaddfbd8
diff --git a/metadata/md5-cache/chromeos-base/vm_guest_tools-0.0.2-r1146 b/metadata/md5-cache/chromeos-base/vm_guest_tools-0.0.2-r1146
deleted file mode 100644
index 9238309..0000000
--- a/metadata/md5-cache/chromeos-base/vm_guest_tools-0.0.2-r1146
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst setup test unpack
-DEPEND=!!chromeos-base/vm_tools chromeos-base/minijail:= net-libs/grpc:= dev-libs/protobuf:= dev-go/grpc:= dev-go/protobuf:= sys-kernel/linux-headers:= chromeos-base/vm_protos:= dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=VM guest tools for Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools
-IUSE=kvm_guest vm-containers fuzzer vm_borealis cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7ef75a42aba67052842459f221271e681184cc89_0865c9d3ea1e3df829430fe6bc25ecbc3bc865ca_c1bde153626532428bf7409bc0597e79452c5eb8_5159f439e8516f904859190cfd0375b7a4d05db2_cfed45e1497a68bae4f74947be9922019fe331cf_97190407ff6df6ae497a54e632369afdf09cd621_af0b5afed375b2398606e02dfedd5a7d116cfde7_40934111a9826b46aca5b0b3309b1cceea46f7a4_73d11c9c68b8ad83037d9b5820a42f0e51c57d74_dcc85a40b5c9518fac5d6d9b571131998bd62653_bf33fa9b44cf05a4e8a416a1a3e8ad2d905daa8e_889e63b35e958b34d6cf15f62b243d442f1bac83_04812f95a99341b51d5b838c9470f7915b2a5f11_d0bf87d1a53ee7e33eb547179efa5b2a5e535f84_a01dc69a1e1fa54805fe9b48ce5c278a7e70de0c cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7ef75a42aba67052842459f221271e681184cc89_0865c9d3ea1e3df829430fe6bc25ecbc3bc865ca_c1bde153626532428bf7409bc0597e79452c5eb8_5159f439e8516f904859190cfd0375b7a4d05db2_cfed45e1497a68bae4f74947be9922019fe331cf_97190407ff6df6ae497a54e632369afdf09cd621_af0b5afed375b2398606e02dfedd5a7d116cfde7_40934111a9826b46aca5b0b3309b1cceea46f7a4_73d11c9c68b8ad83037d9b5820a42f0e51c57d74_dcc85a40b5c9518fac5d6d9b571131998bd62653_bf33fa9b44cf05a4e8a416a1a3e8ad2d905daa8e_889e63b35e958b34d6cf15f62b243d442f1bac83_04812f95a99341b51d5b838c9470f7915b2a5f11_d0bf87d1a53ee7e33eb547179efa5b2a5e535f84_a01dc69a1e1fa54805fe9b48ce5c278a7e70de0c cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=!!chromeos-base/vm_tools chromeos-base/minijail:= net-libs/grpc:= dev-libs/protobuf:= vm-containers? ( chromeos-base/crash-reporter ) !fuzzer? ( chromeos-base/sommelier ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=kvm_guest
-SLOT=0/0.0.2-r1146
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=9330fdd0aa09d208a60ee18f1e74f23e
diff --git a/metadata/md5-cache/chromeos-base/vm_guest_tools-0.0.2-r1213 b/metadata/md5-cache/chromeos-base/vm_guest_tools-0.0.2-r1213
new file mode 100644
index 0000000..29009c4
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/vm_guest_tools-0.0.2-r1213
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst setup test unpack
+DEPEND=!!chromeos-base/vm_tools chromeos-base/minijail:= net-libs/grpc:= dev-libs/protobuf:= dev-go/grpc:= dev-go/protobuf:= sys-kernel/linux-headers:= chromeos-base/vm_protos:= dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=VM guest tools for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools
+IUSE=kvm_guest vm-containers fuzzer vm_borealis cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7ef75a42aba67052842459f221271e681184cc89_0865c9d3ea1e3df829430fe6bc25ecbc3bc865ca_c1bde153626532428bf7409bc0597e79452c5eb8_5159f439e8516f904859190cfd0375b7a4d05db2_ed81029bc913ecbee54a57691c0a92ef8b15a988_97190407ff6df6ae497a54e632369afdf09cd621_94681e09d8a8f9cdd05762163b3eaf7ece9ff5a6_3e9ff342b67e51202388fd113a406e866fe932e8_00ffd7cf775709a0e74a50142e0287a0bec5dbc5_5bd4e7177af169b227e69bb3c61d1125f07acaac_0f90b39225ab21fc7012cc956d81115f04ae18b5_889e63b35e958b34d6cf15f62b243d442f1bac83_373c7816706a5b9b44695b2ee1b2bca6ab4defa3_bbe1454835752d769b8aa28c25ca8e1a39c9add5_a01dc69a1e1fa54805fe9b48ce5c278a7e70de0c cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7ef75a42aba67052842459f221271e681184cc89_0865c9d3ea1e3df829430fe6bc25ecbc3bc865ca_c1bde153626532428bf7409bc0597e79452c5eb8_5159f439e8516f904859190cfd0375b7a4d05db2_ed81029bc913ecbee54a57691c0a92ef8b15a988_97190407ff6df6ae497a54e632369afdf09cd621_94681e09d8a8f9cdd05762163b3eaf7ece9ff5a6_3e9ff342b67e51202388fd113a406e866fe932e8_00ffd7cf775709a0e74a50142e0287a0bec5dbc5_5bd4e7177af169b227e69bb3c61d1125f07acaac_0f90b39225ab21fc7012cc956d81115f04ae18b5_889e63b35e958b34d6cf15f62b243d442f1bac83_373c7816706a5b9b44695b2ee1b2bca6ab4defa3_bbe1454835752d769b8aa28c25ca8e1a39c9add5_a01dc69a1e1fa54805fe9b48ce5c278a7e70de0c cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=!!chromeos-base/vm_tools chromeos-base/minijail:= net-libs/grpc:= dev-libs/protobuf:= vm-containers? ( chromeos-base/crash-reporter ) !fuzzer? ( chromeos-base/sommelier ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+REQUIRED_USE=kvm_guest
+SLOT=0/0.0.2-r1213
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=db278489eb6af46406d79f57f4a39a63
diff --git a/metadata/md5-cache/chromeos-base/vm_guest_tools-9999 b/metadata/md5-cache/chromeos-base/vm_guest_tools-9999
index de374ad..031ccca 100644
--- a/metadata/md5-cache/chromeos-base/vm_guest_tools-9999
+++ b/metadata/md5-cache/chromeos-base/vm_guest_tools-9999
@@ -11,5 +11,5 @@
 RDEPEND=!!chromeos-base/vm_tools chromeos-base/minijail:= net-libs/grpc:= dev-libs/protobuf:= vm-containers? ( chromeos-base/crash-reporter ) !fuzzer? ( chromeos-base/sommelier ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 REQUIRED_USE=kvm_guest
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=0666c2a45bdf4f4ce529fcd9e796509c
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=f87d110ed24beb797e8ff448a6872957
diff --git a/metadata/md5-cache/chromeos-base/vm_host_tools-0.0.2-r1351 b/metadata/md5-cache/chromeos-base/vm_host_tools-0.0.2-r1351
deleted file mode 100644
index a747cbd..0000000
--- a/metadata/md5-cache/chromeos-base/vm_host_tools-0.0.2-r1351
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=app-arch/libarchive:= !!chromeos-base/vm_tools chromeos-base/chunnel:= chromeos-base/crosvm:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= net-libs/grpc:= dev-libs/protobuf:= chromeos-base/dlcservice-client:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vm_protos:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=VM host tools for Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools
-IUSE=+kvm_host +seccomp +crosvm-wl-dmabuf fuzzer wilco +crosvm-virtio-video vulkan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7ef75a42aba67052842459f221271e681184cc89_6ac391aa2da8e29cd4de58f7f7b489a9dc053382_c1bde153626532428bf7409bc0597e79452c5eb8_01162da167ac566d9126a032da1b74f8889e9fa2_7418121e64c49c654817d862e1474490986f4278_1780a540acb435bb7583751430df696e44eef2e3_a925c76094f1522fb121dd0f53bbb329fb608d79_edcdfbcab4b3c4525ccb60500aa145d24cafd7f7_27d31e84486e3c2a8fcf2deb13b46af8311bbae9_82e4b5c7e0ce0efa9061a09d81555845183e8d63_dcc85a40b5c9518fac5d6d9b571131998bd62653_4b930736bc7da8c301f27c7a82718e7d605de289_04812f95a99341b51d5b838c9470f7915b2a5f11_d0bf87d1a53ee7e33eb547179efa5b2a5e535f84 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a9708ef639f0f7929195d0f3921ebd1a12ad96bd_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7ef75a42aba67052842459f221271e681184cc89_6ac391aa2da8e29cd4de58f7f7b489a9dc053382_c1bde153626532428bf7409bc0597e79452c5eb8_01162da167ac566d9126a032da1b74f8889e9fa2_7418121e64c49c654817d862e1474490986f4278_1780a540acb435bb7583751430df696e44eef2e3_a925c76094f1522fb121dd0f53bbb329fb608d79_edcdfbcab4b3c4525ccb60500aa145d24cafd7f7_27d31e84486e3c2a8fcf2deb13b46af8311bbae9_82e4b5c7e0ce0efa9061a09d81555845183e8d63_dcc85a40b5c9518fac5d6d9b571131998bd62653_4b930736bc7da8c301f27c7a82718e7d605de289_04812f95a99341b51d5b838c9470f7915b2a5f11_d0bf87d1a53ee7e33eb547179efa5b2a5e535f84 cros-debug compilation_database cros_host test arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=app-arch/libarchive:= !!chromeos-base/vm_tools chromeos-base/chunnel:= chromeos-base/crosvm:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= net-libs/grpc:= dev-libs/protobuf:= dev-rust/s9 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-REQUIRED_USE=kvm_host cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
-SLOT=0/0.0.2-r1351
-_eclasses_=arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=6cd4870e8afce963ac5c3596f06dac11
diff --git a/metadata/md5-cache/chromeos-base/vm_host_tools-0.0.2-r1456 b/metadata/md5-cache/chromeos-base/vm_host_tools-0.0.2-r1456
new file mode 100644
index 0000000..c5f6cd5
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/vm_host_tools-0.0.2-r1456
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=app-arch/libarchive:= !!chromeos-base/vm_tools chromeos-base/chunnel:= chromeos-base/crosvm:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= net-libs/grpc:= dev-libs/protobuf:= chromeos-base/dlcservice-client:= chromeos-base/shill-client:= chromeos-base/system_api:=[fuzzer?] chromeos-base/vm_protos:= fuzzer? ( dev-libs/libprotobuf-mutator:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=VM host tools for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools
+IUSE=+kvm_host +seccomp +crosvm-wl-dmabuf fuzzer wilco +crosvm-virtio-video vulkan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7ef75a42aba67052842459f221271e681184cc89_d3d64631b9ff3b946b7482bf794aeda97b564813_c1bde153626532428bf7409bc0597e79452c5eb8_d898c3ab65ad3e7b7e6487d8e356e953ad207fc3_afb9a4c533d20708b9a71633f327dae388bdac7f_1780a540acb435bb7583751430df696e44eef2e3_44aba539142920cfb63480823be41293e2402fae_e2598f8160f0e1089268ae21cb458eb6bc46d71e_3a57293314fa7ffce092cd9ce0b29e1d51e1080b_8f9d6739f87454b9e1a41de38e49435b51fa2753_5bd4e7177af169b227e69bb3c61d1125f07acaac_0d3d3aeea63686781aace849eac35118b45e87b9_4b930736bc7da8c301f27c7a82718e7d605de289_373c7816706a5b9b44695b2ee1b2bca6ab4defa3_bbe1454835752d769b8aa28c25ca8e1a39c9add5 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e08a2eb734e33827dffeecf57eca046cd1091373_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7ef75a42aba67052842459f221271e681184cc89_d3d64631b9ff3b946b7482bf794aeda97b564813_c1bde153626532428bf7409bc0597e79452c5eb8_d898c3ab65ad3e7b7e6487d8e356e953ad207fc3_afb9a4c533d20708b9a71633f327dae388bdac7f_1780a540acb435bb7583751430df696e44eef2e3_44aba539142920cfb63480823be41293e2402fae_e2598f8160f0e1089268ae21cb458eb6bc46d71e_3a57293314fa7ffce092cd9ce0b29e1d51e1080b_8f9d6739f87454b9e1a41de38e49435b51fa2753_5bd4e7177af169b227e69bb3c61d1125f07acaac_0d3d3aeea63686781aace849eac35118b45e87b9_4b930736bc7da8c301f27c7a82718e7d605de289_373c7816706a5b9b44695b2ee1b2bca6ab4defa3_bbe1454835752d769b8aa28c25ca8e1a39c9add5 cros-debug compilation_database cros_host test arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=app-arch/libarchive:= !!chromeos-base/vm_tools chromeos-base/chunnel:= chromeos-base/crosvm:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= net-libs/grpc:= dev-libs/protobuf:= dev-rust/s9 virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+REQUIRED_USE=kvm_host cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
+SLOT=0/0.0.2-r1456
+_eclasses_=arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=f4f6a586fa113e995d02817bcf45dad4
diff --git a/metadata/md5-cache/chromeos-base/vm_host_tools-9999 b/metadata/md5-cache/chromeos-base/vm_host_tools-9999
index 7345551..8b9fb1e 100644
--- a/metadata/md5-cache/chromeos-base/vm_host_tools-9999
+++ b/metadata/md5-cache/chromeos-base/vm_host_tools-9999
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=app-arch/libarchive:= !!chromeos-base/vm_tools chromeos-base/chunnel:= chromeos-base/crosvm:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= net-libs/grpc:= dev-libs/protobuf:= dev-rust/s9 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=app-arch/libarchive:= !!chromeos-base/vm_tools chromeos-base/chunnel:= chromeos-base/crosvm:= >=chromeos-base/metrics-0.0.1-r3152:= chromeos-base/minijail:= chromeos-base/patchpanel:= chromeos-base/patchpanel-client:= net-libs/grpc:= dev-libs/protobuf:= dev-rust/s9 virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 REQUIRED_USE=kvm_host cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0/9999
-_eclasses_=arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=25358c7c338e0ceecc4c28514be84ecb
+_eclasses_=arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=c56d1c41145c5d316203f992146fa768
diff --git a/metadata/md5-cache/chromeos-base/vm_protos-0.0.1-r206 b/metadata/md5-cache/chromeos-base/vm_protos-0.0.1-r206
deleted file mode 100644
index d55b91f..0000000
--- a/metadata/md5-cache/chromeos-base/vm_protos-0.0.1-r206
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst setup test unpack
-DEPEND=dev-libs/protobuf:= net-libs/grpc:= !<chromeos-base/vm_guest_tools-0.0.2 !<chromeos-base/vm_host_tools-0.0.2 dev-go/protobuf:= dev-go/grpc:= dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS VM protobuf API
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools/proto
-IUSE=fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_7a0977e263f3f9969fb2db8cbeafbb4bdc1f8bb4_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_7a0977e263f3f9969fb2db8cbeafbb4bdc1f8bb4_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-libs/protobuf:= net-libs/grpc:= !<chromeos-base/vm_guest_tools-0.0.2 !<chromeos-base/vm_host_tools-0.0.2 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r206
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7dccdfec3072130020d71bc44eff3e19
diff --git a/metadata/md5-cache/chromeos-base/vm_protos-0.0.1-r234 b/metadata/md5-cache/chromeos-base/vm_protos-0.0.1-r234
new file mode 100644
index 0000000..b5ba636
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/vm_protos-0.0.1-r234
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst setup test unpack
+DEPEND=dev-libs/protobuf:= net-libs/grpc:= !<chromeos-base/vm_guest_tools-0.0.2 !<chromeos-base/vm_host_tools-0.0.2 dev-go/protobuf:= dev-go/grpc:= dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS VM protobuf API
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/vm_tools/proto
+IUSE=fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c410ca2884fb087c6eb0bfa9f208fc6df6afd27f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_c410ca2884fb087c6eb0bfa9f208fc6df6afd27f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= net-libs/grpc:= !<chromeos-base/vm_guest_tools-0.0.2 !<chromeos-base/vm_host_tools-0.0.2 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r234
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e07cbba63b7752e46b782b2d48ff6a58
diff --git a/metadata/md5-cache/chromeos-base/vm_protos-9999 b/metadata/md5-cache/chromeos-base/vm_protos-9999
index 290874c..b82626c 100644
--- a/metadata/md5-cache/chromeos-base/vm_protos-9999
+++ b/metadata/md5-cache/chromeos-base/vm_protos-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=dev-libs/protobuf:= net-libs/grpc:= !<chromeos-base/vm_guest_tools-0.0.2 !<chromeos-base/vm_host_tools-0.0.2 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=0c23c096220fc279375d3956316d039b
diff --git a/metadata/md5-cache/chromeos-base/vpd-0.0.1-r146 b/metadata/md5-cache/chromeos-base/vpd-0.0.1-r146
deleted file mode 100644
index ded03853..0000000
--- a/metadata/md5-cache/chromeos-base/vpd-0.0.1-r146
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile info install setup test unpack
-DEPEND=sys-apps/util-linux:=
-DESCRIPTION=ChromeOS vital product data utilities
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/vpd/
-IUSE=static systemd cros_host cros_workon_tree_911162d238c7c2f42a593aa8419fd53f5307959c
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=sys-apps/flashrom dev-util/shflags virtual/chromeos-activate-date
-SLOT=0/0.0.1-r146
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=c81a47b0416f9a142b9d378040fa2e1d
diff --git a/metadata/md5-cache/chromeos-base/vpd-0.0.1-r148 b/metadata/md5-cache/chromeos-base/vpd-0.0.1-r148
new file mode 100644
index 0000000..41a1d69
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/vpd-0.0.1-r148
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile info install setup test unpack
+DEPEND=sys-apps/util-linux:=
+DESCRIPTION=ChromeOS vital product data utilities
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/vpd/
+IUSE=static systemd cros_host cros_workon_tree_17601aed7b4648a91a61c5a5ef433fc3af341264
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=sys-apps/flashrom dev-util/shflags virtual/chromeos-activate-date
+SLOT=0/0.0.1-r148
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d00bf0850603d4b0c5a4ffbc5fcbc031
diff --git a/metadata/md5-cache/chromeos-base/vpd-9999 b/metadata/md5-cache/chromeos-base/vpd-9999
index 8f3976a..61a356d 100644
--- a/metadata/md5-cache/chromeos-base/vpd-9999
+++ b/metadata/md5-cache/chromeos-base/vpd-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=sys-apps/flashrom dev-util/shflags virtual/chromeos-activate-date
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=cf45179804a1c9a94779153db20bd14a
diff --git a/metadata/md5-cache/chromeos-base/vpn-manager-0.0.1-r2798 b/metadata/md5-cache/chromeos-base/vpn-manager-0.0.1-r2798
deleted file mode 100644
index 6cda380..0000000
--- a/metadata/md5-cache/chromeos-base/vpn-manager-0.0.1-r2798
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=net-dialup/ppp:= net-dialup/xl2tpd:= net-vpn/strongswan:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=L2TP/IPsec VPN manager for Chromium OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/vpn-manager/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_767a114667a7ed090f12adcaca93e7d4ef6f034f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_767a114667a7ed090f12adcaca93e7d4ef6f034f_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=net-dialup/ppp:= net-dialup/xl2tpd:= net-vpn/strongswan:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r2798
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3091d01aa1079c7a0be6944be10fb899
diff --git a/metadata/md5-cache/chromeos-base/vpn-manager-0.0.1-r2827 b/metadata/md5-cache/chromeos-base/vpn-manager-0.0.1-r2827
new file mode 100644
index 0000000..f7a07f0
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/vpn-manager-0.0.1-r2827
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=net-dialup/ppp:= net-dialup/xl2tpd:= net-vpn/strongswan:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=L2TP/IPsec VPN manager for Chromium OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/vpn-manager/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_39929280520bd57dd9967f54e074e37ce6c8c7bf_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_39929280520bd57dd9967f54e074e37ce6c8c7bf_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=net-dialup/ppp:= net-dialup/xl2tpd:= net-vpn/strongswan:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r2827
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e8a24ef9a583cea0c1342dc5c0b6c051
diff --git a/metadata/md5-cache/chromeos-base/vpn-manager-9999 b/metadata/md5-cache/chromeos-base/vpn-manager-9999
index 0be8f09..7053cbd 100644
--- a/metadata/md5-cache/chromeos-base/vpn-manager-9999
+++ b/metadata/md5-cache/chromeos-base/vpn-manager-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=net-dialup/ppp:= net-dialup/xl2tpd:= net-vpn/strongswan:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=413c8a88c67978306fbaa78133cb8c4b
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=be950f4e58eb3ec4e18696e49c6d9b82
diff --git a/metadata/md5-cache/chromeos-base/wacom_fw_flash-1.3.0 b/metadata/md5-cache/chromeos-base/wacom_fw_flash-1.3.0
index cd7577e..396f0f3 100644
--- a/metadata/md5-cache/chromeos-base/wacom_fw_flash-1.3.0
+++ b/metadata/md5-cache/chromeos-base/wacom_fw_flash-1.3.0
@@ -6,5 +6,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=https://github.com/31-mcMartin/wacom_source/archive/v1.3.0.tar.gz -> wacom_fw_flash-1.3.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6d6fa5094ab8f374d55257d3d1c503a7
diff --git a/metadata/md5-cache/chromeos-base/webserver-0.0.1-r2336 b/metadata/md5-cache/chromeos-base/webserver-0.0.1-r2336
deleted file mode 100644
index 185310b..0000000
--- a/metadata/md5-cache/chromeos-base/webserver-0.0.1-r2336
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/permission_broker:= net-libs/libmicrohttpd:= !chromeos-base/libwebserv:= chromeos-base/permission_broker-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=HTTP sever interface library
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/webserver/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a43dee1645ab3169cf3c0d94a0d83cf4492ec75b_06cc9079e44816d4dd5329a76829384766a3ea06_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_a43dee1645ab3169cf3c0d94a0d83cf4492ec75b_06cc9079e44816d4dd5329a76829384766a3ea06_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/permission_broker:= net-libs/libmicrohttpd:= !chromeos-base/libwebserv:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0/0.0.1-r2336
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=b729e9759605798c8f969f444089057d
diff --git a/metadata/md5-cache/chromeos-base/webserver-0.0.1-r2369 b/metadata/md5-cache/chromeos-base/webserver-0.0.1-r2369
new file mode 100644
index 0000000..9a6b844
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/webserver-0.0.1-r2369
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/permission_broker:= net-libs/libmicrohttpd:= !chromeos-base/libwebserv:= chromeos-base/permission_broker-client:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=HTTP sever interface library
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/webserver/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5597a78a68ec9dc671f7e83a6d1c496e10183e08_0fbecdd495ca696219e492ffa78c2027b24dc1f0_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_5597a78a68ec9dc671f7e83a6d1c496e10183e08_0fbecdd495ca696219e492ffa78c2027b24dc1f0_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/permission_broker:= net-libs/libmicrohttpd:= !chromeos-base/libwebserv:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0/0.0.1-r2369
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=2275ca614c0786b79dfba834c293c390
diff --git a/metadata/md5-cache/chromeos-base/webserver-9999 b/metadata/md5-cache/chromeos-base/webserver-9999
index 65d2cf6..11a0e2b 100644
--- a/metadata/md5-cache/chromeos-base/webserver-9999
+++ b/metadata/md5-cache/chromeos-base/webserver-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/permission_broker:= net-libs/libmicrohttpd:= !chromeos-base/libwebserv:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=056a89d9bd6bbc2b30d0c91c61b55ec9
diff --git a/metadata/md5-cache/chromeos-base/weida_wdt_util-0.9.9 b/metadata/md5-cache/chromeos-base/weida_wdt_util-0.9.9
index 68b2063..ae2dc23 100644
--- a/metadata/md5-cache/chromeos-base/weida_wdt_util-0.9.9
+++ b/metadata/md5-cache/chromeos-base/weida_wdt_util-0.9.9
@@ -6,5 +6,5 @@
 LICENSE=Apache-2.0
 SLOT=0
 SRC_URI=https://github.com/chenhn123/wdt_util_src/archive/wdt_util_v0.9.9.tar.gz -> weida_wdt_util-0.9.9.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ce936b0e3ed7d6d8f748dbd31184d7dc
diff --git a/metadata/md5-cache/chromeos-base/wilco-dtc-grpc-protos-0.0.1-r152 b/metadata/md5-cache/chromeos-base/wilco-dtc-grpc-protos-0.0.1-r152
deleted file mode 100644
index f3992e6..0000000
--- a/metadata/md5-cache/chromeos-base/wilco-dtc-grpc-protos-0.0.1-r152
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install postinst setup test unpack
-DEPEND=dev-libs/protobuf:= net-libs/grpc:= dev-go/protobuf dev-go/grpc dev-lang/go cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS Wilco DTC proto/gRPC API
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics/grpc
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_32f385c265f6f3f6326d6b0befb16426b78eb150_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_32f385c265f6f3f6326d6b0befb16426b78eb150_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-libs/protobuf:= net-libs/grpc:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=be3dd724f84efff51fe784d7bdb5fdad
diff --git a/metadata/md5-cache/chromeos-base/wilco-dtc-grpc-protos-0.0.1-r177 b/metadata/md5-cache/chromeos-base/wilco-dtc-grpc-protos-0.0.1-r177
new file mode 100644
index 0000000..2797e75
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/wilco-dtc-grpc-protos-0.0.1-r177
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install postinst setup test unpack
+DEPEND=dev-libs/protobuf:= net-libs/grpc:= dev-go/protobuf dev-go/grpc dev-lang/go cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS Wilco DTC proto/gRPC API
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/diagnostics/grpc
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_32f385c265f6f3f6326d6b0befb16426b78eb150_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_32f385c265f6f3f6326d6b0befb16426b78eb150_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-libs/protobuf:= net-libs/grpc:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=b9de192982d160d88417a1aceda9263c
diff --git a/metadata/md5-cache/chromeos-base/wilco-dtc-grpc-protos-9999 b/metadata/md5-cache/chromeos-base/wilco-dtc-grpc-protos-9999
index 2479104..5ce8cbe 100644
--- a/metadata/md5-cache/chromeos-base/wilco-dtc-grpc-protos-9999
+++ b/metadata/md5-cache/chromeos-base/wilco-dtc-grpc-protos-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=dev-libs/protobuf:= net-libs/grpc:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=35820e3f06eb1f3c8231511a0198b9dd
diff --git a/metadata/md5-cache/chromeos-base/wprgo-0.0.1 b/metadata/md5-cache/chromeos-base/wprgo-0.0.1
index b52acd6..22fff4e 100644
--- a/metadata/md5-cache/chromeos-base/wprgo-0.0.1
+++ b/metadata/md5-cache/chromeos-base/wprgo-0.0.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 SLOT=0
 SRC_URI=https://github.com/catapult-project/catapult/archive/35457f076227dce062ece5b51f3655223af1788f.tar.gz -> github.com-catapult-project-catapult-35457f076227dce062ece5b51f3655223af1788f.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d076a4d2fb52f8bab72634f0fc4c48e7
diff --git a/metadata/md5-cache/chromeos-base/wprgo-0.0.1-r2 b/metadata/md5-cache/chromeos-base/wprgo-0.0.1-r2
index b52acd6..22fff4e 100644
--- a/metadata/md5-cache/chromeos-base/wprgo-0.0.1-r2
+++ b/metadata/md5-cache/chromeos-base/wprgo-0.0.1-r2
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 SLOT=0
 SRC_URI=https://github.com/catapult-project/catapult/archive/35457f076227dce062ece5b51f3655223af1788f.tar.gz -> github.com-catapult-project-catapult-35457f076227dce062ece5b51f3655223af1788f.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d076a4d2fb52f8bab72634f0fc4c48e7
diff --git a/metadata/md5-cache/chromeos-base/zephyr-build-tools-0.0.1-r133 b/metadata/md5-cache/chromeos-base/zephyr-build-tools-0.0.1-r133
new file mode 100644
index 0000000..2573826
--- /dev/null
+++ b/metadata/md5-cache/chromeos-base/zephyr-build-tools-0.0.1-r133
@@ -0,0 +1,14 @@
+BDEPEND=dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DESCRIPTION=Tools used for building Zephyr OS
+EAPI=7
+HOMEPAGE=http://src.chromium.org
+IUSE=cros_host cros_workon_tree_37e9cd5073e3dc50b45076a08888edacebd9366a python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-embedded/binman dev-python/black[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/colorama[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/docopt[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/flake8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/hypothesis[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/isort[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/jsonschema[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pykwalify[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pytest[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pyyaml[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/testfixtures[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-util/ninja sys-apps/dtc python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 ) || ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7396e66dc8aa9b96f02e98ff52841e00
diff --git a/metadata/md5-cache/chromeos-base/zephyr-build-tools-0.0.1-r93 b/metadata/md5-cache/chromeos-base/zephyr-build-tools-0.0.1-r93
deleted file mode 100644
index 47ebc0f..0000000
--- a/metadata/md5-cache/chromeos-base/zephyr-build-tools-0.0.1-r93
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DESCRIPTION=Tools used for building Zephyr OS
-EAPI=7
-HOMEPAGE=http://src.chromium.org
-IUSE=cros_host cros_workon_tree_f0345f01a3331f280eae5ffaa6570562fd42e79c python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-embedded/binman dev-python/colorama[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/docopt[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/hypothesis[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/jsonschema[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pykwalify[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pytest[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pyyaml[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/testfixtures[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-util/ninja sys-apps/dtc python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
-REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 ) || ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8e0cad7b28b5e87477ffcb053801c481
diff --git a/metadata/md5-cache/chromeos-base/zephyr-build-tools-9999 b/metadata/md5-cache/chromeos-base/zephyr-build-tools-9999
index 7c79eb70..ea939ba 100644
--- a/metadata/md5-cache/chromeos-base/zephyr-build-tools-9999
+++ b/metadata/md5-cache/chromeos-base/zephyr-build-tools-9999
@@ -7,8 +7,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=dev-embedded/binman dev-python/colorama[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/docopt[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/hypothesis[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/jsonschema[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pykwalify[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pytest[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pyyaml[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/testfixtures[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-util/ninja sys-apps/dtc python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+RDEPEND=dev-embedded/binman dev-python/black[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/colorama[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/docopt[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/flake8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/hypothesis[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/isort[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/jsonschema[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pykwalify[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pytest[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pyyaml[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/testfixtures[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-util/ninja sys-apps/dtc python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 ) || ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=28905d22d3b330b1846a41e2e69cfbba
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=24f41242f1e44a4a026b61eb4717e120
diff --git a/metadata/md5-cache/chromeos-base/zinitix_fw_updater-1.0.9 b/metadata/md5-cache/chromeos-base/zinitix_fw_updater-1.0.9
index 58610de..8c2dead 100644
--- a/metadata/md5-cache/chromeos-base/zinitix_fw_updater-1.0.9
+++ b/metadata/md5-cache/chromeos-base/zinitix_fw_updater-1.0.9
@@ -6,5 +6,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=https://github.com/zinitix-solution/zinitix_fw_updater/archive/v1.0.9.tar.gz -> zinitix_fw_updater-1.0.9.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=fbb400d96f902f8885ab454b5cae82d2
diff --git a/metadata/md5-cache/dev-cpp/absl-20200923 b/metadata/md5-cache/dev-cpp/absl-20200923
deleted file mode 100644
index 94c4691..0000000
--- a/metadata/md5-cache/dev-cpp/absl-20200923
+++ /dev/null
@@ -1,11 +0,0 @@
-DEFINED_PHASES=compile configure install prepare test
-DEPEND=sys-devel/make >=dev-util/cmake-3.9.6
-DESCRIPTION=Abseil - C++ Common Libraries
-EAPI=6
-HOMEPAGE=https://abseil.io
-KEYWORDS=*
-LICENSE=Apache-2.0
-SLOT=0
-SRC_URI=https://github.com/abseil/abseil-cpp/archive/20200923.tar.gz -> absl-20200923.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=a83e305e59d9293a1d14aebbe7c81810
diff --git a/metadata/md5-cache/dev-cpp/absl-20200923-r4 b/metadata/md5-cache/dev-cpp/absl-20200923-r4
deleted file mode 100644
index 94c4691..0000000
--- a/metadata/md5-cache/dev-cpp/absl-20200923-r4
+++ /dev/null
@@ -1,11 +0,0 @@
-DEFINED_PHASES=compile configure install prepare test
-DEPEND=sys-devel/make >=dev-util/cmake-3.9.6
-DESCRIPTION=Abseil - C++ Common Libraries
-EAPI=6
-HOMEPAGE=https://abseil.io
-KEYWORDS=*
-LICENSE=Apache-2.0
-SLOT=0
-SRC_URI=https://github.com/abseil/abseil-cpp/archive/20200923.tar.gz -> absl-20200923.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=a83e305e59d9293a1d14aebbe7c81810
diff --git a/metadata/md5-cache/dev-cpp/absl-20210324.1 b/metadata/md5-cache/dev-cpp/absl-20210324.1
new file mode 100644
index 0000000..baf2ea5
--- /dev/null
+++ b/metadata/md5-cache/dev-cpp/absl-20210324.1
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=sys-devel/make >=dev-util/cmake-3.9.6
+DESCRIPTION=Abseil - C++ Common Libraries
+EAPI=6
+HOMEPAGE=https://abseil.io
+KEYWORDS=*
+LICENSE=Apache-2.0
+SLOT=0
+SRC_URI=https://github.com/abseil/abseil-cpp/archive/refs/tags/20210324.1.tar.gz -> absl-20210324.1.tar.gz
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=a45a8ede42b882d5eeafd45087a5a3ef
diff --git a/metadata/md5-cache/dev-cpp/gtest-1.10.0 b/metadata/md5-cache/dev-cpp/gtest-1.10.0
index d57965a..af53b01 100644
--- a/metadata/md5-cache/dev-cpp/gtest-1.10.0
+++ b/metadata/md5-cache/dev-cpp/gtest-1.10.0
@@ -9,5 +9,5 @@
 RDEPEND=!dev-cpp/gmock
 SLOT=0
 SRC_URI=https://github.com/google/googletest/archive/v1.10.0.tar.gz -> gtest-1.10.0.tar.gz
-_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=8b11f1f372f2829718b4bc02d4356ee1
diff --git a/metadata/md5-cache/dev-db/mariadb-connector-c-3.0.6-r1 b/metadata/md5-cache/dev-db/mariadb-connector-c-3.0.6-r1
deleted file mode 100644
index 79af625..0000000
--- a/metadata/md5-cache/dev-db/mariadb-connector-c-3.0.6-r1
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare test
-DEPEND=sys-libs/zlib:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/libiconv:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] curl? ( net-misc/curl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kerberos? ( || ( app-crypt/mit-krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] app-crypt/heimdal[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) ssl? ( gnutls? ( >=net-libs/gnutls-3.3.24:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !gnutls? ( libressl? ( dev-libs/libressl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !libressl? ( dev-libs/openssl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) ) sys-devel/make >=dev-util/cmake-3.9.6
-DESCRIPTION=C client library for MariaDB/MySQL
-EAPI=6
-HOMEPAGE=https://mariadb.org/
-IUSE=+curl gnutls kerberos libressl mysqlcompat +ssl static-libs test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=LGPL-2.1
-RDEPEND=sys-libs/zlib:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/libiconv:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] curl? ( net-misc/curl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kerberos? ( || ( app-crypt/mit-krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] app-crypt/heimdal[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) ssl? ( gnutls? ( >=net-libs/gnutls-3.3.24:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !gnutls? ( libressl? ( dev-libs/libressl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !libressl? ( dev-libs/openssl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) ) mysqlcompat? ( !dev-db/mysql[client-libs(+)] !dev-db/mysql-cluster[client-libs(+)] !dev-db/mariadb[client-libs(+)] !dev-db/mariadb-galera[client-libs(+)] !dev-db/percona-server[client-libs(+)] !dev-db/mysql-connector-c ) !>=dev-db/mariadb-10.2.0[client-libs(+)]
-SLOT=0/3
-SRC_URI=https://downloads.mariadb.org/f/connector-c-3.0.6/mariadb-connector-c-3.0.6-src.tar.gz?serve -> mariadb-connector-c-3.0.6-src.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=b909e78eb3d1c644616e799132dfff7e
diff --git a/metadata/md5-cache/dev-db/mariadb-connector-c-3.0.6-r2 b/metadata/md5-cache/dev-db/mariadb-connector-c-3.0.6-r2
new file mode 100644
index 0000000..fe625ca
--- /dev/null
+++ b/metadata/md5-cache/dev-db/mariadb-connector-c-3.0.6-r2
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=sys-libs/zlib:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/libiconv:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] curl? ( net-misc/curl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kerberos? ( || ( app-crypt/mit-krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] app-crypt/heimdal[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) ssl? ( gnutls? ( >=net-libs/gnutls-3.3.24:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !gnutls? ( libressl? ( dev-libs/libressl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !libressl? ( dev-libs/openssl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) ) sys-devel/make >=dev-util/cmake-3.9.6
+DESCRIPTION=C client library for MariaDB/MySQL
+EAPI=6
+HOMEPAGE=https://mariadb.org/
+IUSE=+curl gnutls kerberos libressl mysqlcompat +ssl static-libs test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=LGPL-2.1
+RDEPEND=sys-libs/zlib:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/libiconv:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] curl? ( net-misc/curl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kerberos? ( || ( app-crypt/mit-krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] app-crypt/heimdal[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) ssl? ( gnutls? ( >=net-libs/gnutls-3.3.24:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !gnutls? ( libressl? ( dev-libs/libressl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !libressl? ( dev-libs/openssl:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) ) mysqlcompat? ( !dev-db/mysql[client-libs(+)] !dev-db/mysql-cluster[client-libs(+)] !dev-db/mariadb[client-libs(+)] !dev-db/mariadb-galera[client-libs(+)] !dev-db/percona-server[client-libs(+)] !dev-db/mysql-connector-c ) !>=dev-db/mariadb-10.2.0[client-libs(+)]
+SLOT=0/3
+SRC_URI=https://downloads.mariadb.org/f/connector-c-3.0.6/mariadb-connector-c-3.0.6-src.tar.gz?serve -> mariadb-connector-c-3.0.6-src.tar.gz
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=2e754bba6c6771c20af698a49ac592bb
diff --git a/metadata/md5-cache/dev-embedded/binman-0.0.1-r6 b/metadata/md5-cache/dev-embedded/binman-0.0.1-r6
index 55151eb..5cdf31c 100644
--- a/metadata/md5-cache/dev-embedded/binman-0.0.1-r6
+++ b/metadata/md5-cache/dev-embedded/binman-0.0.1-r6
@@ -10,5 +10,5 @@
 RDEPEND=dev-embedded/dtoc dev-vcs/patman python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1d86ecaf30b21fbd831f95a193f9776b
diff --git a/metadata/md5-cache/dev-embedded/binman-9999 b/metadata/md5-cache/dev-embedded/binman-9999
index 43d9075..d2c28839 100644
--- a/metadata/md5-cache/dev-embedded/binman-9999
+++ b/metadata/md5-cache/dev-embedded/binman-9999
@@ -10,5 +10,5 @@
 RDEPEND=dev-embedded/dtoc dev-vcs/patman python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=37b9b238a6f2a014a7483186b965281f
diff --git a/metadata/md5-cache/dev-embedded/cbootimage-1.6 b/metadata/md5-cache/dev-embedded/cbootimage-1.6
index 608da41..177a15b 100644
--- a/metadata/md5-cache/dev-embedded/cbootimage-1.6
+++ b/metadata/md5-cache/dev-embedded/cbootimage-1.6
@@ -7,5 +7,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=http://github.com/NVIDIA/cbootimage/archive/v1.6.tar.gz -> cbootimage-1.6.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=50246ab29ddbcef785af086dfc8ea29c
diff --git a/metadata/md5-cache/dev-embedded/coreboot-sdk-0.0.1-r109 b/metadata/md5-cache/dev-embedded/coreboot-sdk-0.0.1-r109
deleted file mode 100644
index 8162301..0000000
--- a/metadata/md5-cache/dev-embedded/coreboot-sdk-0.0.1-r109
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install prepare setup unpack
-DESCRIPTION=upstream coreboot's compiler suite
-EAPI=7
-HOMEPAGE=https://www.coreboot.org
-IUSE=cros_host cros_workon_tree_b47f5c0dc4c30f5e0d8dd1c910278946c334ecad
-KEYWORDS=*
-LICENSE=GPL-3 LGPL-3
-PROPERTIES=live
-SLOT=0/0.0.1-r109
-SRC_URI=https://ftpmirror.gnu.org/gmp/gmp-6.2.0.tar.xz https://ftpmirror.gnu.org/mpfr/mpfr-4.1.0.tar.xz https://ftpmirror.gnu.org/mpc/mpc-1.2.0.tar.gz https://ftpmirror.gnu.org/gcc/gcc-8.3.0/gcc-8.3.0.tar.xz https://ftpmirror.gnu.org/binutils/binutils-2.35.1.tar.xz https://acpica.org/sites/acpica/files/acpica-unix2-20200925.tar.gz http://mirrors.cdn.adacore.com/art/591c6d80c7a447af2deed1d7 -> gnat-gpl-2017-x86_64-linux-bin.tar.gz
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2a989561d03bde4eccd3fb620d6af67b
diff --git a/metadata/md5-cache/dev-embedded/coreboot-sdk-0.0.1-r113 b/metadata/md5-cache/dev-embedded/coreboot-sdk-0.0.1-r113
new file mode 100644
index 0000000..9f1c2c4
--- /dev/null
+++ b/metadata/md5-cache/dev-embedded/coreboot-sdk-0.0.1-r113
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install prepare setup unpack
+DESCRIPTION=upstream coreboot's compiler suite
+EAPI=7
+HOMEPAGE=https://www.coreboot.org
+IUSE=cros_host cros_workon_tree_f2dabf7e811d068d7652ede76a8202e9c57e019f
+KEYWORDS=*
+LICENSE=GPL-3 LGPL-3
+PROPERTIES=live
+SLOT=0/0.0.1-r113
+SRC_URI=https://ftpmirror.gnu.org/gmp/gmp-6.2.1.tar.xz https://ftpmirror.gnu.org/mpfr/mpfr-4.1.0.tar.xz https://ftpmirror.gnu.org/mpc/mpc-1.2.1.tar.gz https://ftpmirror.gnu.org/gcc/gcc-8.3.0/gcc-8.3.0.tar.xz https://ftpmirror.gnu.org/binutils/binutils-2.35.1.tar.xz https://acpica.org/sites/acpica/files/acpica-unix2-20210331.tar.gz http://mirrors.cdn.adacore.com/art/591c6d80c7a447af2deed1d7 -> gnat-gpl-2017-x86_64-linux-bin.tar.gz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=57dc7088703dd6a6cd14b3694e3ede48
diff --git a/metadata/md5-cache/dev-embedded/coreboot-sdk-9999 b/metadata/md5-cache/dev-embedded/coreboot-sdk-9999
index 1ce9327..04d8a0b 100644
--- a/metadata/md5-cache/dev-embedded/coreboot-sdk-9999
+++ b/metadata/md5-cache/dev-embedded/coreboot-sdk-9999
@@ -8,6 +8,6 @@
 LICENSE=GPL-3 LGPL-3
 PROPERTIES=live
 SLOT=0/9999
-SRC_URI=https://ftpmirror.gnu.org/gmp/gmp-6.2.0.tar.xz https://ftpmirror.gnu.org/mpfr/mpfr-4.1.0.tar.xz https://ftpmirror.gnu.org/mpc/mpc-1.2.0.tar.gz https://ftpmirror.gnu.org/gcc/gcc-8.3.0/gcc-8.3.0.tar.xz https://ftpmirror.gnu.org/binutils/binutils-2.35.1.tar.xz https://acpica.org/sites/acpica/files/acpica-unix2-20200925.tar.gz http://mirrors.cdn.adacore.com/art/591c6d80c7a447af2deed1d7 -> gnat-gpl-2017-x86_64-linux-bin.tar.gz
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6e716bda8b0550ca416b1aa8aacf5ddf
+SRC_URI=https://ftpmirror.gnu.org/gmp/gmp-6.2.1.tar.xz https://ftpmirror.gnu.org/mpfr/mpfr-4.1.0.tar.xz https://ftpmirror.gnu.org/mpc/mpc-1.2.1.tar.gz https://ftpmirror.gnu.org/gcc/gcc-8.3.0/gcc-8.3.0.tar.xz https://ftpmirror.gnu.org/binutils/binutils-2.35.1.tar.xz https://acpica.org/sites/acpica/files/acpica-unix2-20210331.tar.gz http://mirrors.cdn.adacore.com/art/591c6d80c7a447af2deed1d7 -> gnat-gpl-2017-x86_64-linux-bin.tar.gz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e955b169d8d40c03ad94642edb87b62f
diff --git a/metadata/md5-cache/dev-embedded/datool-1.0 b/metadata/md5-cache/dev-embedded/datool-1.0
index d084128..2adeb84 100644
--- a/metadata/md5-cache/dev-embedded/datool-1.0
+++ b/metadata/md5-cache/dev-embedded/datool-1.0
@@ -6,5 +6,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=https://github.com/mtk09422/chromiumos-third_party-mediatek-datool/archive/v1.0.tar.gz -> datool-1.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d9803f68e0b3f7f12deaa7ae0efceb28
diff --git a/metadata/md5-cache/dev-embedded/dtoc-0.0.1-r3 b/metadata/md5-cache/dev-embedded/dtoc-0.0.1-r3
index 38ba41e..bb3daa2 100644
--- a/metadata/md5-cache/dev-embedded/dtoc-0.0.1-r3
+++ b/metadata/md5-cache/dev-embedded/dtoc-0.0.1-r3
@@ -10,5 +10,5 @@
 RDEPEND=dev-vcs/patman python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=b1a6683c97025523e0cb7b8931e34a92
diff --git a/metadata/md5-cache/dev-embedded/dtoc-9999 b/metadata/md5-cache/dev-embedded/dtoc-9999
index 88361b4..0627543 100644
--- a/metadata/md5-cache/dev-embedded/dtoc-9999
+++ b/metadata/md5-cache/dev-embedded/dtoc-9999
@@ -10,5 +10,5 @@
 RDEPEND=dev-vcs/patman python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=65921555a0915bebf83807f26e9d13c2
diff --git a/metadata/md5-cache/dev-embedded/ftx-prog-20160531 b/metadata/md5-cache/dev-embedded/ftx-prog-20160531
index 5215a6f..5af7d1c 100644
--- a/metadata/md5-cache/dev-embedded/ftx-prog-20160531
+++ b/metadata/md5-cache/dev-embedded/ftx-prog-20160531
@@ -8,5 +8,5 @@
 RDEPEND=>=dev-embedded/libftdi-1.0
 SLOT=0
 SRC_URI=https://github.com/richardeoin/ftx-prog/archive/1341d561973b87238676950140ea91bd1b456bd8.tar.gz -> ftx-prog-20160531.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a761386e3562b7047ca1533c7e275b57
diff --git a/metadata/md5-cache/dev-embedded/libftdi-1.2 b/metadata/md5-cache/dev-embedded/libftdi-1.2
index f1a8678..94fdeec 100644
--- a/metadata/md5-cache/dev-embedded/libftdi-1.2
+++ b/metadata/md5-cache/dev-embedded/libftdi-1.2
@@ -10,5 +10,5 @@
 REQUIRED_USE=python? ( ^^ ( python_single_target_python2_7 python_single_target_python3_6 ) )
 SLOT=1
 SRC_URI=http://www.intra2net.com/en/developer/libftdi/download/libftdi1-1.2.tar.bz2
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=dc0d5898a2f4637895ebb5fa795ccefc
diff --git a/metadata/md5-cache/dev-embedded/libftdi-1.2-r3 b/metadata/md5-cache/dev-embedded/libftdi-1.2-r3
index f1a8678..94fdeec 100644
--- a/metadata/md5-cache/dev-embedded/libftdi-1.2-r3
+++ b/metadata/md5-cache/dev-embedded/libftdi-1.2-r3
@@ -10,5 +10,5 @@
 REQUIRED_USE=python? ( ^^ ( python_single_target_python2_7 python_single_target_python3_6 ) )
 SLOT=1
 SRC_URI=http://www.intra2net.com/en/developer/libftdi/download/libftdi1-1.2.tar.bz2
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=dc0d5898a2f4637895ebb5fa795ccefc
diff --git a/metadata/md5-cache/dev-embedded/openocd-0.10.0 b/metadata/md5-cache/dev-embedded/openocd-0.10.0
index 74282a7..cad9e4b 100644
--- a/metadata/md5-cache/dev-embedded/openocd-0.10.0
+++ b/metadata/md5-cache/dev-embedded/openocd-0.10.0
@@ -10,5 +10,5 @@
 RESTRICT=strip
 SLOT=0
 SRC_URI=mirror://sourceforge/project/openocd/openocd/0.10.0/openocd-0.10.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ca85b350bcad932a42b57ee43cec2680
diff --git a/metadata/md5-cache/dev-embedded/openocd-0.10.0-r3 b/metadata/md5-cache/dev-embedded/openocd-0.10.0-r3
index 74282a7..cad9e4b 100644
--- a/metadata/md5-cache/dev-embedded/openocd-0.10.0-r3
+++ b/metadata/md5-cache/dev-embedded/openocd-0.10.0-r3
@@ -10,5 +10,5 @@
 RESTRICT=strip
 SLOT=0
 SRC_URI=mirror://sourceforge/project/openocd/openocd/0.10.0/openocd-0.10.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ca85b350bcad932a42b57ee43cec2680
diff --git a/metadata/md5-cache/dev-embedded/stm32flash-0.6 b/metadata/md5-cache/dev-embedded/stm32flash-0.6
new file mode 100644
index 0000000..c3a8537
--- /dev/null
+++ b/metadata/md5-cache/dev-embedded/stm32flash-0.6
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install prepare
+DESCRIPTION=Open source flash program for STM32 using the ST serial bootloader
+EAPI=7
+HOMEPAGE=https://sourceforge.net/projects/stm32flash/
+KEYWORDS=*
+LICENSE=GPL-2+
+SLOT=0
+SRC_URI=mirror://sourceforge/project/stm32flash/stm32flash-0.6.tar.gz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8e9806c6c00d0f3ac8a58ee10a8f5dde
diff --git a/metadata/md5-cache/dev-embedded/tegrarcm-1.6 b/metadata/md5-cache/dev-embedded/tegrarcm-1.6
index 892ebde..7f60e9b 100644
--- a/metadata/md5-cache/dev-embedded/tegrarcm-1.6
+++ b/metadata/md5-cache/dev-embedded/tegrarcm-1.6
@@ -8,5 +8,5 @@
 RDEPEND=>=dev-libs/crypto++-5.6 virtual/libusb:1
 SLOT=0
 SRC_URI=https://github.com/NVIDIA/tegrarcm/archive/v1.6.tar.gz -> tegrarcm-1.6.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7c3883f8e70560b13a14bae438e2e29e
diff --git a/metadata/md5-cache/dev-embedded/ti50-sdk-0.0.1 b/metadata/md5-cache/dev-embedded/ti50-sdk-0.0.1
deleted file mode 100644
index 74f0bb98..0000000
--- a/metadata/md5-cache/dev-embedded/ti50-sdk-0.0.1
+++ /dev/null
@@ -1,11 +0,0 @@
-BDEPEND=|| ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) dev-lang/perl sys-devel/gnuconfig || ( ( dev-lang/python:3.9 dev-python/sphinx[python_targets_python3_9(-),python_single_target_python3_9(+)] ) ( dev-lang/python:3.8 dev-python/sphinx[python_targets_python3_8(-),python_single_target_python3_8(+)] ) ( dev-lang/python:3.7 dev-python/sphinx[python_targets_python3_7(-),python_single_target_python3_7(+)] ) ( dev-lang/python:3.6 dev-python/sphinx[python_targets_python3_6(-),python_single_target_python3_6(+)] ) ) >=dev-libs/libxml2-2.9.6 >=dev-lang/perl-5.0
-DEFINED_PHASES=compile install prepare setup unpack
-DEPEND=sys-libs/zlib >=sys-libs/ncurses-5.9-r3 sys-devel/binutils
-DESCRIPTION=Ebuild that installs Ti50's SDK
-EAPI=7
-KEYWORDS=*
-LICENSE=|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA
-SLOT=0
-SRC_URI=https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/llvm-bb852a09ae36-src.tar.xz https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/rust-0da58007451a-rustc-0da58007451a-src.tar.xz https://static.rust-lang.org/dist/2020-08-26/cargo-beta-x86_64-unknown-linux-gnu.tar.xz -> rust-0da58007451a-cargo-beta-x86_64-unknown-linux-gnu.tar.xz https://static.rust-lang.org/dist/2020-08-26/rustc-beta-x86_64-unknown-linux-gnu.tar.xz -> rust-0da58007451a-rustc-beta-x86_64-unknown-linux-gnu.tar.xz https://static.rust-lang.org/dist/2020-08-26/rust-std-beta-x86_64-unknown-linux-gnu.tar.xz -> rust-0da58007451a-rust-std-beta-x86_64-unknown-linux-gnu.tar.xz https://static.rust-lang.org/dist/2020-08-26/rustfmt-beta-x86_64-unknown-linux-gnu.tar.xz -> rust-0da58007451a-rustfmt-beta-x86_64-unknown-linux-gnu.tar.xz https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/newlib-1debd4d635c2-src.tar.xz
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=59b522794d718a2bf9cc4d9ae26c9089
diff --git a/metadata/md5-cache/dev-embedded/ti50-sdk-0.0.2 b/metadata/md5-cache/dev-embedded/ti50-sdk-0.0.2
new file mode 100644
index 0000000..5ad5f60
--- /dev/null
+++ b/metadata/md5-cache/dev-embedded/ti50-sdk-0.0.2
@@ -0,0 +1,11 @@
+BDEPEND=|| ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) dev-lang/perl sys-devel/gnuconfig || ( ( dev-lang/python:3.9 dev-python/sphinx[python_targets_python3_9(-),python_single_target_python3_9(+)] ) ( dev-lang/python:3.8 dev-python/sphinx[python_targets_python3_8(-),python_single_target_python3_8(+)] ) ( dev-lang/python:3.7 dev-python/sphinx[python_targets_python3_7(-),python_single_target_python3_7(+)] ) ( dev-lang/python:3.6 dev-python/sphinx[python_targets_python3_6(-),python_single_target_python3_6(+)] ) ) >=dev-libs/libxml2-2.9.6 >=dev-lang/perl-5.0
+DEFINED_PHASES=compile install prepare setup unpack
+DEPEND=sys-libs/zlib >=sys-libs/ncurses-5.9-r3 sys-devel/binutils
+DESCRIPTION=Ebuild that installs Ti50's SDK
+EAPI=7
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA
+SLOT=0
+SRC_URI=https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/llvm-bb852a09ae36-src.tar.xz https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/rust-9111b8ae9793-rustc-9111b8ae9793-src.tar.xz https://static.rust-lang.org/dist/2021-05-23/cargo-beta-x86_64-unknown-linux-gnu.tar.xz -> rust-9111b8ae9793-cargo-beta-x86_64-unknown-linux-gnu.tar.xz https://static.rust-lang.org/dist/2021-05-23/rustc-beta-x86_64-unknown-linux-gnu.tar.xz -> rust-9111b8ae9793-rustc-beta-x86_64-unknown-linux-gnu.tar.xz https://static.rust-lang.org/dist/2021-05-23/rust-std-beta-x86_64-unknown-linux-gnu.tar.xz -> rust-9111b8ae9793-rust-std-beta-x86_64-unknown-linux-gnu.tar.xz https://static.rust-lang.org/dist/2021-05-23/rustfmt-beta-x86_64-unknown-linux-gnu.tar.xz -> rust-9111b8ae9793-rustfmt-beta-x86_64-unknown-linux-gnu.tar.xz https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/newlib-1debd4d635c2-src.tar.xz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=983844ddb191fc88cfe03e69d89ccb3f
diff --git a/metadata/md5-cache/dev-embedded/ti50-sdk-0.0.2-r3 b/metadata/md5-cache/dev-embedded/ti50-sdk-0.0.2-r3
new file mode 100644
index 0000000..5ad5f60
--- /dev/null
+++ b/metadata/md5-cache/dev-embedded/ti50-sdk-0.0.2-r3
@@ -0,0 +1,11 @@
+BDEPEND=|| ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) dev-lang/perl sys-devel/gnuconfig || ( ( dev-lang/python:3.9 dev-python/sphinx[python_targets_python3_9(-),python_single_target_python3_9(+)] ) ( dev-lang/python:3.8 dev-python/sphinx[python_targets_python3_8(-),python_single_target_python3_8(+)] ) ( dev-lang/python:3.7 dev-python/sphinx[python_targets_python3_7(-),python_single_target_python3_7(+)] ) ( dev-lang/python:3.6 dev-python/sphinx[python_targets_python3_6(-),python_single_target_python3_6(+)] ) ) >=dev-libs/libxml2-2.9.6 >=dev-lang/perl-5.0
+DEFINED_PHASES=compile install prepare setup unpack
+DEPEND=sys-libs/zlib >=sys-libs/ncurses-5.9-r3 sys-devel/binutils
+DESCRIPTION=Ebuild that installs Ti50's SDK
+EAPI=7
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA
+SLOT=0
+SRC_URI=https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/llvm-bb852a09ae36-src.tar.xz https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/rust-9111b8ae9793-rustc-9111b8ae9793-src.tar.xz https://static.rust-lang.org/dist/2021-05-23/cargo-beta-x86_64-unknown-linux-gnu.tar.xz -> rust-9111b8ae9793-cargo-beta-x86_64-unknown-linux-gnu.tar.xz https://static.rust-lang.org/dist/2021-05-23/rustc-beta-x86_64-unknown-linux-gnu.tar.xz -> rust-9111b8ae9793-rustc-beta-x86_64-unknown-linux-gnu.tar.xz https://static.rust-lang.org/dist/2021-05-23/rust-std-beta-x86_64-unknown-linux-gnu.tar.xz -> rust-9111b8ae9793-rust-std-beta-x86_64-unknown-linux-gnu.tar.xz https://static.rust-lang.org/dist/2021-05-23/rustfmt-beta-x86_64-unknown-linux-gnu.tar.xz -> rust-9111b8ae9793-rustfmt-beta-x86_64-unknown-linux-gnu.tar.xz https://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/newlib-1debd4d635c2-src.tar.xz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=983844ddb191fc88cfe03e69d89ccb3f
diff --git a/metadata/md5-cache/dev-go/boringssl-acvptool-20191211 b/metadata/md5-cache/dev-go/boringssl-acvptool-20191211
index 73592ae..86284bd 100644
--- a/metadata/md5-cache/dev-go/boringssl-acvptool-20191211
+++ b/metadata/md5-cache/dev-go/boringssl-acvptool-20191211
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://boringssl.googlesource.com/boringssl/+archive/6ba98ff60144f60aba589b4d6121689528fbae76.tar.gz -> boringssl.googlesource.com-boringssl-6ba98ff60144f60aba589b4d6121689528fbae76.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f1b8db49fd935c315797ba75fdeb1ee6
diff --git a/metadata/md5-cache/dev-go/boringssl-acvptool-20191211-r1 b/metadata/md5-cache/dev-go/boringssl-acvptool-20191211-r1
index 73592ae..86284bd 100644
--- a/metadata/md5-cache/dev-go/boringssl-acvptool-20191211-r1
+++ b/metadata/md5-cache/dev-go/boringssl-acvptool-20191211-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://boringssl.googlesource.com/boringssl/+archive/6ba98ff60144f60aba589b4d6121689528fbae76.tar.gz -> boringssl.googlesource.com-boringssl-6ba98ff60144f60aba589b4d6121689528fbae76.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f1b8db49fd935c315797ba75fdeb1ee6
diff --git a/metadata/md5-cache/dev-go/cdp-0.28.0 b/metadata/md5-cache/dev-go/cdp-0.28.0
deleted file mode 100644
index c8d5dc2..0000000
--- a/metadata/md5-cache/dev-go/cdp-0.28.0
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst prepare test unpack
-DEPEND=test? ( dev-go/cmp dev-go/sync ) dev-lang/go
-DESCRIPTION=Type-safe bindings for the Chrome Debugging Protocol written in Go
-EAPI=5
-HOMEPAGE=https://github.com/mafredri/cdp
-IUSE=test
-KEYWORDS=*
-LICENSE=MIT
-RDEPEND=dev-go/websocket
-RESTRICT=binchecks strip
-SLOT=0
-SRC_URI=https://github.com/mafredri/cdp/archive/v0.28.0.tar.gz -> github.com-mafredri-cdp-v0.28.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=8ab79cd331b51a75553a65e935c4fd99
diff --git a/metadata/md5-cache/dev-go/cdp-0.28.0-r2 b/metadata/md5-cache/dev-go/cdp-0.28.0-r2
deleted file mode 100644
index c8d5dc2..0000000
--- a/metadata/md5-cache/dev-go/cdp-0.28.0-r2
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst prepare test unpack
-DEPEND=test? ( dev-go/cmp dev-go/sync ) dev-lang/go
-DESCRIPTION=Type-safe bindings for the Chrome Debugging Protocol written in Go
-EAPI=5
-HOMEPAGE=https://github.com/mafredri/cdp
-IUSE=test
-KEYWORDS=*
-LICENSE=MIT
-RDEPEND=dev-go/websocket
-RESTRICT=binchecks strip
-SLOT=0
-SRC_URI=https://github.com/mafredri/cdp/archive/v0.28.0.tar.gz -> github.com-mafredri-cdp-v0.28.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=8ab79cd331b51a75553a65e935c4fd99
diff --git a/metadata/md5-cache/dev-go/cdp-0.31.0 b/metadata/md5-cache/dev-go/cdp-0.31.0
new file mode 100644
index 0000000..5c697d8
--- /dev/null
+++ b/metadata/md5-cache/dev-go/cdp-0.31.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=test? ( dev-go/cmp dev-go/sync ) dev-lang/go
+DESCRIPTION=Type-safe bindings for the Chrome Debugging Protocol written in Go
+EAPI=5
+HOMEPAGE=https://github.com/mafredri/cdp
+IUSE=test
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=dev-go/websocket
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/mafredri/cdp/archive/v0.31.0.tar.gz -> github.com-mafredri-cdp-v0.31.0.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=0b6f14f149d5e8c6aec1c25db03d8a81
diff --git a/metadata/md5-cache/dev-go/check-0.0.1 b/metadata/md5-cache/dev-go/check-0.0.1
index a018c3a..75be29d 100644
--- a/metadata/md5-cache/dev-go/check-0.0.1
+++ b/metadata/md5-cache/dev-go/check-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/go-check/check/archive/20d25e2804050c1cd24a7eea1e7a6447dd0e74ec.tar.gz -> github.com-go-check-check-20d25e2804050c1cd24a7eea1e7a6447dd0e74ec.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9c98be92181e582cb3b33a7c56a20e4a
diff --git a/metadata/md5-cache/dev-go/cli-1.20.0 b/metadata/md5-cache/dev-go/cli-1.20.0
index e564fff..2d6d49f 100644
--- a/metadata/md5-cache/dev-go/cli-1.20.0
+++ b/metadata/md5-cache/dev-go/cli-1.20.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 SLOT=0
 SRC_URI=https://github.com/urfave/cli/archive/v1.20.0.tar.gz -> github.com-urfave-cli-v1.20.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=26e742aa4a7a6338af1838c16b826249
diff --git a/metadata/md5-cache/dev-go/clock-1.0.0 b/metadata/md5-cache/dev-go/clock-1.0.0
index a680d98..a5dc99f 100644
--- a/metadata/md5-cache/dev-go/clock-1.0.0
+++ b/metadata/md5-cache/dev-go/clock-1.0.0
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip test
 SLOT=0
 SRC_URI=https://github.com/cloudfoundry/clock/archive/v1.0.0.tar.gz -> github.com-cloudfoundry-clock-v1.0.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d30d6205823b58197f50671ec20dc882
diff --git a/metadata/md5-cache/dev-go/cmp-0.2.0 b/metadata/md5-cache/dev-go/cmp-0.2.0
index b68c272..d32eea6 100644
--- a/metadata/md5-cache/dev-go/cmp-0.2.0
+++ b/metadata/md5-cache/dev-go/cmp-0.2.0
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/go-cmp/archive/v0.2.0.tar.gz -> github.com-google-go-cmp-v0.2.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b2dbab3ec63f91282ba490f15aeda3e9
diff --git a/metadata/md5-cache/dev-go/cmp-0.2.0-r1 b/metadata/md5-cache/dev-go/cmp-0.2.0-r1
index b68c272..d32eea6 100644
--- a/metadata/md5-cache/dev-go/cmp-0.2.0-r1
+++ b/metadata/md5-cache/dev-go/cmp-0.2.0-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/go-cmp/archive/v0.2.0.tar.gz -> github.com-google-go-cmp-v0.2.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b2dbab3ec63f91282ba490f15aeda3e9
diff --git a/metadata/md5-cache/dev-go/crypto-0.0.1 b/metadata/md5-cache/dev-go/crypto-0.0.1
index 7fbd4e8..b605835 100644
--- a/metadata/md5-cache/dev-go/crypto-0.0.1
+++ b/metadata/md5-cache/dev-go/crypto-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/crypto/+archive/505ab145d0a99da450461ae2c1a9f6cd10d1f447.tar.gz -> go.googlesource.com-crypto-505ab145d0a99da450461ae2c1a9f6cd10d1f447.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7b0522611de0a1899960b05dbd5f1386
diff --git a/metadata/md5-cache/dev-go/crypto-0.0.1-r5 b/metadata/md5-cache/dev-go/crypto-0.0.1-r5
index 7fbd4e8..b605835 100644
--- a/metadata/md5-cache/dev-go/crypto-0.0.1-r5
+++ b/metadata/md5-cache/dev-go/crypto-0.0.1-r5
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/crypto/+archive/505ab145d0a99da450461ae2c1a9f6cd10d1f447.tar.gz -> go.googlesource.com-crypto-505ab145d0a99da450461ae2c1a9f6cd10d1f447.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7b0522611de0a1899960b05dbd5f1386
diff --git a/metadata/md5-cache/dev-go/dbus-5.0.3_p20200215 b/metadata/md5-cache/dev-go/dbus-5.0.3_p20200215
index ff3f8105..96f5cb6 100644
--- a/metadata/md5-cache/dev-go/dbus-5.0.3_p20200215
+++ b/metadata/md5-cache/dev-go/dbus-5.0.3_p20200215
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip test
 SLOT=0
 SRC_URI=https://github.com/godbus/dbus/archive/06fc4b473149e499166adbb9e31c7365a8ea146f.tar.gz -> github.com-godbus-dbus-06fc4b473149e499166adbb9e31c7365a8ea146f.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=1f099a7a3a66e8075e10d4c788ace919
diff --git a/metadata/md5-cache/dev-go/dbus-5.0.3_p20200215-r1 b/metadata/md5-cache/dev-go/dbus-5.0.3_p20200215-r1
index ff3f8105..96f5cb6 100644
--- a/metadata/md5-cache/dev-go/dbus-5.0.3_p20200215-r1
+++ b/metadata/md5-cache/dev-go/dbus-5.0.3_p20200215-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip test
 SLOT=0
 SRC_URI=https://github.com/godbus/dbus/archive/06fc4b473149e499166adbb9e31c7365a8ea146f.tar.gz -> github.com-godbus-dbus-06fc4b473149e499166adbb9e31c7365a8ea146f.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=1f099a7a3a66e8075e10d4c788ace919
diff --git a/metadata/md5-cache/dev-go/dns-1.1.1 b/metadata/md5-cache/dev-go/dns-1.1.1
index 0f87d06..67129f4 100644
--- a/metadata/md5-cache/dev-go/dns-1.1.1
+++ b/metadata/md5-cache/dev-go/dns-1.1.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/miekg/dns/archive/v1.1.1.tar.gz -> github.com-miekg-dns-v1.1.1.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9d0a880021a76bbc593f3fbdc5e3b1fc
diff --git a/metadata/md5-cache/dev-go/docker-20.10.8 b/metadata/md5-cache/dev-go/docker-20.10.8
new file mode 100644
index 0000000..eebc6a3
--- /dev/null
+++ b/metadata/md5-cache/dev-go/docker-20.10.8
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-go/protobuf dev-go/crypto dev-go/grpc dev-go/text dev-go/net dev-go/go-sys dev-go/errors dev-lang/go
+DESCRIPTION=Docker SDK in Go
+EAPI=5
+HOMEPAGE=mobyproject.org
+KEYWORDS=*
+LICENSE=Apache-2.0
+RDEPEND=dev-go/protobuf dev-go/crypto dev-go/grpc dev-go/text dev-go/net dev-go/go-sys dev-go/errors
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/moby/moby/archive/5f0703c549935d2cfec42b468b858d822b58a27e.tar.gz -> github.com-moby-moby-5f0703c549935d2cfec42b468b858d822b58a27e.tar.gz https://github.com/containerd/containerd/archive/v1.5.1.tar.gz -> github.com-containerd-containerd-v1.5.1.tar.gz https://github.com/docker/distribution/archive/v2.7.1.tar.gz -> github.com-docker-distribution-v2.7.1.tar.gz https://github.com/docker/go-connections/archive/88e5af338bb1e6c7f51b69cc1864249d1e8f4786.tar.gz -> github.com-docker-go-connections-88e5af338bb1e6c7f51b69cc1864249d1e8f4786.tar.gz https://github.com/docker/go-units/archive/519db1ee28dcc9fd2474ae59fca29a810482bfb1.tar.gz -> github.com-docker-go-units-519db1ee28dcc9fd2474ae59fca29a810482bfb1.tar.gz https://github.com/gogo/protobuf/archive/226206f39bd7276e88ec684ea0028c18ec2c91ae.tar.gz -> github.com-gogo-protobuf-226206f39bd7276e88ec684ea0028c18ec2c91ae.tar.gz https://github.com/opencontainers/go-digest/archive/v1.0.0.tar.gz -> github.com-opencontainers-go-digest-v1.0.0.tar.gz https://github.com/opencontainers/image-spec/archive/v1.0.1.tar.gz -> github.com-opencontainers-image-spec-v1.0.1.tar.gz https://github.com/sirupsen/logrus/archive/v1.8.1.tar.gz -> github.com-sirupsen-logrus-v1.8.1.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=adcac44ce2d564bf8273e1fb0b8fc03e
diff --git a/metadata/md5-cache/dev-go/dst-0.23.1 b/metadata/md5-cache/dev-go/dst-0.23.1
index 45b9a10..6ad1f6b 100644
--- a/metadata/md5-cache/dev-go/dst-0.23.1
+++ b/metadata/md5-cache/dev-go/dst-0.23.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/dave/dst/archive/v0.23.1.tar.gz -> github.com-dave-dst-v0.23.1.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=a58b6e447c5e1f3c6e6fd1d32ede201d
diff --git a/metadata/md5-cache/dev-go/errors-0.8.1 b/metadata/md5-cache/dev-go/errors-0.8.1
deleted file mode 100644
index 2016eb0..0000000
--- a/metadata/md5-cache/dev-go/errors-0.8.1
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst test unpack
-DEPEND=dev-lang/go
-DESCRIPTION=Error handling primitives for Go.
-EAPI=5
-HOMEPAGE=https://github.com/pkg/errors
-KEYWORDS=*
-LICENSE=BSD
-RESTRICT=binchecks strip
-SLOT=0
-SRC_URI=https://github.com/pkg/errors/archive/v0.8.1.tar.gz -> github.com-pkg-errors-v0.8.1.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=71ed1bdf63adc6fe9c005b151abc5186
diff --git a/metadata/md5-cache/dev-go/errors-0.8.1-r1 b/metadata/md5-cache/dev-go/errors-0.8.1-r1
deleted file mode 100644
index 2016eb0..0000000
--- a/metadata/md5-cache/dev-go/errors-0.8.1-r1
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst test unpack
-DEPEND=dev-lang/go
-DESCRIPTION=Error handling primitives for Go.
-EAPI=5
-HOMEPAGE=https://github.com/pkg/errors
-KEYWORDS=*
-LICENSE=BSD
-RESTRICT=binchecks strip
-SLOT=0
-SRC_URI=https://github.com/pkg/errors/archive/v0.8.1.tar.gz -> github.com-pkg-errors-v0.8.1.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=71ed1bdf63adc6fe9c005b151abc5186
diff --git a/metadata/md5-cache/dev-go/errors-0.9.1 b/metadata/md5-cache/dev-go/errors-0.9.1
new file mode 100644
index 0000000..540d4b0
--- /dev/null
+++ b/metadata/md5-cache/dev-go/errors-0.9.1
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-lang/go
+DESCRIPTION=Error handling primitives for Go.
+EAPI=5
+HOMEPAGE=https://github.com/pkg/errors
+KEYWORDS=*
+LICENSE=BSD
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/pkg/errors/archive/v0.9.1.tar.gz -> github.com-pkg-errors-v0.9.1.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=71ed1bdf63adc6fe9c005b151abc5186
diff --git a/metadata/md5-cache/dev-go/errors-0.9.1-r1 b/metadata/md5-cache/dev-go/errors-0.9.1-r1
new file mode 100644
index 0000000..540d4b0
--- /dev/null
+++ b/metadata/md5-cache/dev-go/errors-0.9.1-r1
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-lang/go
+DESCRIPTION=Error handling primitives for Go.
+EAPI=5
+HOMEPAGE=https://github.com/pkg/errors
+KEYWORDS=*
+LICENSE=BSD
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/pkg/errors/archive/v0.9.1.tar.gz -> github.com-pkg-errors-v0.9.1.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=71ed1bdf63adc6fe9c005b151abc5186
diff --git a/metadata/md5-cache/dev-go/exif-0.0.1 b/metadata/md5-cache/dev-go/exif-0.0.1
index 3472a0a..91f23b8 100644
--- a/metadata/md5-cache/dev-go/exif-0.0.1
+++ b/metadata/md5-cache/dev-go/exif-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/rwcarlsen/goexif/archive/9e8deecbddbd4989a3e8d003684b783412b41e7a.tar.gz -> github.com-rwcarlsen-goexif-9e8deecbddbd4989a3e8d003684b783412b41e7a.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7f6abe039fa83ee5c2edf4c0ed30846c
diff --git a/metadata/md5-cache/dev-go/exif-0.0.1-r1 b/metadata/md5-cache/dev-go/exif-0.0.1-r1
index 3472a0a..91f23b8 100644
--- a/metadata/md5-cache/dev-go/exif-0.0.1-r1
+++ b/metadata/md5-cache/dev-go/exif-0.0.1-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/rwcarlsen/goexif/archive/9e8deecbddbd4989a3e8d003684b783412b41e7a.tar.gz -> github.com-rwcarlsen-goexif-9e8deecbddbd4989a3e8d003684b783412b41e7a.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7f6abe039fa83ee5c2edf4c0ed30846c
diff --git a/metadata/md5-cache/dev-go/fogleman-gg-0.0.1 b/metadata/md5-cache/dev-go/fogleman-gg-0.0.1
index 349bdbb..c4d2245d 100644
--- a/metadata/md5-cache/dev-go/fogleman-gg-0.0.1
+++ b/metadata/md5-cache/dev-go/fogleman-gg-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/fogleman/gg/archive/v1.3.0.tar.gz -> github.com-fogleman-gg-v1.3.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c0ef30cfe43ec8352961a348b0a73a77
diff --git a/metadata/md5-cache/dev-go/fscrypt-0.2.9 b/metadata/md5-cache/dev-go/fscrypt-0.2.9
index 28b2baf..00f47fc 100644
--- a/metadata/md5-cache/dev-go/fscrypt-0.2.9
+++ b/metadata/md5-cache/dev-go/fscrypt-0.2.9
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/fscrypt/archive/v0.2.9.tar.gz -> github.com-google-fscrypt-v0.2.9.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e398cf4cbd444f59958bb1b5c097f8b4
diff --git a/metadata/md5-cache/dev-go/fscrypt-0.2.9-r1 b/metadata/md5-cache/dev-go/fscrypt-0.2.9-r1
index 28b2baf..00f47fc 100644
--- a/metadata/md5-cache/dev-go/fscrypt-0.2.9-r1
+++ b/metadata/md5-cache/dev-go/fscrypt-0.2.9-r1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/fscrypt/archive/v0.2.9.tar.gz -> github.com-google-fscrypt-v0.2.9.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e398cf4cbd444f59958bb1b5c097f8b4
diff --git a/metadata/md5-cache/dev-go/fsnotify-1.4.2 b/metadata/md5-cache/dev-go/fsnotify-1.4.2
index f1b17ae..836a7f0 100644
--- a/metadata/md5-cache/dev-go/fsnotify-1.4.2
+++ b/metadata/md5-cache/dev-go/fsnotify-1.4.2
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/fsnotify/fsnotify/archive/v1.4.2.tar.gz -> github.com-fsnotify-fsnotify-v1.4.2.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8833e0c734a6d48d2d8139c9f0abf644
diff --git a/metadata/md5-cache/dev-go/fsnotify-1.4.2-r1 b/metadata/md5-cache/dev-go/fsnotify-1.4.2-r1
index f1b17ae..836a7f0 100644
--- a/metadata/md5-cache/dev-go/fsnotify-1.4.2-r1
+++ b/metadata/md5-cache/dev-go/fsnotify-1.4.2-r1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/fsnotify/fsnotify/archive/v1.4.2.tar.gz -> github.com-fsnotify-fsnotify-v1.4.2.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8833e0c734a6d48d2d8139c9f0abf644
diff --git a/metadata/md5-cache/dev-go/gapi-bigquery-0.0.1 b/metadata/md5-cache/dev-go/gapi-bigquery-0.0.1
index b4ccf38..4a25a67 100644
--- a/metadata/md5-cache/dev-go/gapi-bigquery-0.0.1
+++ b/metadata/md5-cache/dev-go/gapi-bigquery-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=10abffa9f643e1960f9e28b49d9ff1e9
diff --git a/metadata/md5-cache/dev-go/gapi-bigquery-0.0.1-r2 b/metadata/md5-cache/dev-go/gapi-bigquery-0.0.1-r2
index b4ccf38..4a25a67 100644
--- a/metadata/md5-cache/dev-go/gapi-bigquery-0.0.1-r2
+++ b/metadata/md5-cache/dev-go/gapi-bigquery-0.0.1-r2
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=10abffa9f643e1960f9e28b49d9ff1e9
diff --git a/metadata/md5-cache/dev-go/gapi-bundler-0.0.1 b/metadata/md5-cache/dev-go/gapi-bundler-0.0.1
index ea99e98..cdf78af 100644
--- a/metadata/md5-cache/dev-go/gapi-bundler-0.0.1
+++ b/metadata/md5-cache/dev-go/gapi-bundler-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7b4f56b899e0d12bd863c9fa5a6f53fd
diff --git a/metadata/md5-cache/dev-go/gapi-bundler-0.0.1-r2 b/metadata/md5-cache/dev-go/gapi-bundler-0.0.1-r2
index ea99e98..cdf78af 100644
--- a/metadata/md5-cache/dev-go/gapi-bundler-0.0.1-r2
+++ b/metadata/md5-cache/dev-go/gapi-bundler-0.0.1-r2
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7b4f56b899e0d12bd863c9fa5a6f53fd
diff --git a/metadata/md5-cache/dev-go/gapi-discovery-0.0.1 b/metadata/md5-cache/dev-go/gapi-discovery-0.0.1
index d8ecf97..adc95c9b 100644
--- a/metadata/md5-cache/dev-go/gapi-discovery-0.0.1
+++ b/metadata/md5-cache/dev-go/gapi-discovery-0.0.1
@@ -8,5 +8,5 @@
 RDEPEND=dev-go/gapi-gensupport:= dev-go/gapi-transport:=
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/v0.9.0.tar.gz -> github.com-google-google-api-go-client-v0.9.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=20bedd08d9f35e739095d4f79b172613
diff --git a/metadata/md5-cache/dev-go/gapi-drive-0.0.1 b/metadata/md5-cache/dev-go/gapi-drive-0.0.1
index 0d92992..32b0087 100644
--- a/metadata/md5-cache/dev-go/gapi-drive-0.0.1
+++ b/metadata/md5-cache/dev-go/gapi-drive-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c098885890f73988c560cac5f3561f26
diff --git a/metadata/md5-cache/dev-go/gapi-drive-0.0.1-r1 b/metadata/md5-cache/dev-go/gapi-drive-0.0.1-r1
index 0d92992..32b0087 100644
--- a/metadata/md5-cache/dev-go/gapi-drive-0.0.1-r1
+++ b/metadata/md5-cache/dev-go/gapi-drive-0.0.1-r1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c098885890f73988c560cac5f3561f26
diff --git a/metadata/md5-cache/dev-go/gapi-gensupport-0.0.1 b/metadata/md5-cache/dev-go/gapi-gensupport-0.0.1
index bf28560..8d9ff9e 100644
--- a/metadata/md5-cache/dev-go/gapi-gensupport-0.0.1
+++ b/metadata/md5-cache/dev-go/gapi-gensupport-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=51c4602f24fbd2eb7729a59cc428c3fa
diff --git a/metadata/md5-cache/dev-go/gapi-gensupport-0.0.1-r2 b/metadata/md5-cache/dev-go/gapi-gensupport-0.0.1-r2
index bf28560..8d9ff9e 100644
--- a/metadata/md5-cache/dev-go/gapi-gensupport-0.0.1-r2
+++ b/metadata/md5-cache/dev-go/gapi-gensupport-0.0.1-r2
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=51c4602f24fbd2eb7729a59cc428c3fa
diff --git a/metadata/md5-cache/dev-go/gapi-googleapi-0.0.1 b/metadata/md5-cache/dev-go/gapi-googleapi-0.0.1
index 277f966..dc297e4 100644
--- a/metadata/md5-cache/dev-go/gapi-googleapi-0.0.1
+++ b/metadata/md5-cache/dev-go/gapi-googleapi-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a3433891bdb7adff0fd848a45d690d04
diff --git a/metadata/md5-cache/dev-go/gapi-googleapi-0.0.1-r2 b/metadata/md5-cache/dev-go/gapi-googleapi-0.0.1-r2
index 277f966..dc297e4 100644
--- a/metadata/md5-cache/dev-go/gapi-googleapi-0.0.1-r2
+++ b/metadata/md5-cache/dev-go/gapi-googleapi-0.0.1-r2
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a3433891bdb7adff0fd848a45d690d04
diff --git a/metadata/md5-cache/dev-go/gapi-internal-0.0.1 b/metadata/md5-cache/dev-go/gapi-internal-0.0.1
index eac321b..b259596 100644
--- a/metadata/md5-cache/dev-go/gapi-internal-0.0.1
+++ b/metadata/md5-cache/dev-go/gapi-internal-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d1ae802818f650424db526263c20c171
diff --git a/metadata/md5-cache/dev-go/gapi-internal-0.0.1-r3 b/metadata/md5-cache/dev-go/gapi-internal-0.0.1-r3
index eac321b..b259596 100644
--- a/metadata/md5-cache/dev-go/gapi-internal-0.0.1-r3
+++ b/metadata/md5-cache/dev-go/gapi-internal-0.0.1-r3
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d1ae802818f650424db526263c20c171
diff --git a/metadata/md5-cache/dev-go/gapi-iterator-0.0.1 b/metadata/md5-cache/dev-go/gapi-iterator-0.0.1
index 13d4bec..4ae4cc9 100644
--- a/metadata/md5-cache/dev-go/gapi-iterator-0.0.1
+++ b/metadata/md5-cache/dev-go/gapi-iterator-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=086c50112588477e673c2534cc674f7b
diff --git a/metadata/md5-cache/dev-go/gapi-iterator-0.0.1-r4 b/metadata/md5-cache/dev-go/gapi-iterator-0.0.1-r4
index 13d4bec..4ae4cc9 100644
--- a/metadata/md5-cache/dev-go/gapi-iterator-0.0.1-r4
+++ b/metadata/md5-cache/dev-go/gapi-iterator-0.0.1-r4
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=086c50112588477e673c2534cc674f7b
diff --git a/metadata/md5-cache/dev-go/gapi-option-0.0.1 b/metadata/md5-cache/dev-go/gapi-option-0.0.1
index f4ee566..e23ec12d 100644
--- a/metadata/md5-cache/dev-go/gapi-option-0.0.1
+++ b/metadata/md5-cache/dev-go/gapi-option-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=cec5414a20c1804056c3af29ce011ec1
diff --git a/metadata/md5-cache/dev-go/gapi-option-0.0.1-r2 b/metadata/md5-cache/dev-go/gapi-option-0.0.1-r2
index f4ee566..e23ec12d 100644
--- a/metadata/md5-cache/dev-go/gapi-option-0.0.1-r2
+++ b/metadata/md5-cache/dev-go/gapi-option-0.0.1-r2
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=cec5414a20c1804056c3af29ce011ec1
diff --git a/metadata/md5-cache/dev-go/gapi-storage-0.0.1 b/metadata/md5-cache/dev-go/gapi-storage-0.0.1
index 3d40756..97497f0 100644
--- a/metadata/md5-cache/dev-go/gapi-storage-0.0.1
+++ b/metadata/md5-cache/dev-go/gapi-storage-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=abd36a2f44c738954eb220dd193732a9
diff --git a/metadata/md5-cache/dev-go/gapi-storage-0.0.1-r2 b/metadata/md5-cache/dev-go/gapi-storage-0.0.1-r2
index 3d40756..97497f0 100644
--- a/metadata/md5-cache/dev-go/gapi-storage-0.0.1-r2
+++ b/metadata/md5-cache/dev-go/gapi-storage-0.0.1-r2
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=abd36a2f44c738954eb220dd193732a9
diff --git a/metadata/md5-cache/dev-go/gapi-transport-0.0.1 b/metadata/md5-cache/dev-go/gapi-transport-0.0.1
index 2c764b0..05f24bb 100644
--- a/metadata/md5-cache/dev-go/gapi-transport-0.0.1
+++ b/metadata/md5-cache/dev-go/gapi-transport-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d238dcf56ffa9d4b70e7ae21040459a6
diff --git a/metadata/md5-cache/dev-go/gapi-transport-0.0.1-r2 b/metadata/md5-cache/dev-go/gapi-transport-0.0.1-r2
index 2c764b0..05f24bb 100644
--- a/metadata/md5-cache/dev-go/gapi-transport-0.0.1-r2
+++ b/metadata/md5-cache/dev-go/gapi-transport-0.0.1-r2
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/google-api-go-client/archive/068431dcab1a5817548dd244d9795788a98329f4.tar.gz -> github.com-google-google-api-go-client-068431dcab1a5817548dd244d9795788a98329f4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d238dcf56ffa9d4b70e7ae21040459a6
diff --git a/metadata/md5-cache/dev-go/gax-2.0.0 b/metadata/md5-cache/dev-go/gax-2.0.0
index 9a65bb6..ac0dd67 100644
--- a/metadata/md5-cache/dev-go/gax-2.0.0
+++ b/metadata/md5-cache/dev-go/gax-2.0.0
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/googleapis/gax-go/archive/v2.0.0.tar.gz -> github.com-googleapis-gax-go-v2.0.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=58799e5df00010f01d683e34af218978
diff --git a/metadata/md5-cache/dev-go/gax-2.0.0-r2 b/metadata/md5-cache/dev-go/gax-2.0.0-r2
index 9a65bb6..ac0dd67 100644
--- a/metadata/md5-cache/dev-go/gax-2.0.0-r2
+++ b/metadata/md5-cache/dev-go/gax-2.0.0-r2
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/googleapis/gax-go/archive/v2.0.0.tar.gz -> github.com-googleapis-gax-go-v2.0.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=58799e5df00010f01d683e34af218978
diff --git a/metadata/md5-cache/dev-go/gcp-bigquery-0.18.0 b/metadata/md5-cache/dev-go/gcp-bigquery-0.18.0
index 91443f6..5953a47 100644
--- a/metadata/md5-cache/dev-go/gcp-bigquery-0.18.0
+++ b/metadata/md5-cache/dev-go/gcp-bigquery-0.18.0
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=64cba64d871fbfa4e7704cafd423a156
diff --git a/metadata/md5-cache/dev-go/gcp-bigquery-0.18.0-r4 b/metadata/md5-cache/dev-go/gcp-bigquery-0.18.0-r4
index 91443f6..5953a47 100644
--- a/metadata/md5-cache/dev-go/gcp-bigquery-0.18.0-r4
+++ b/metadata/md5-cache/dev-go/gcp-bigquery-0.18.0-r4
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=64cba64d871fbfa4e7704cafd423a156
diff --git a/metadata/md5-cache/dev-go/gcp-civil-0.18.0 b/metadata/md5-cache/dev-go/gcp-civil-0.18.0
index 2a7f131..d6f6de6 100644
--- a/metadata/md5-cache/dev-go/gcp-civil-0.18.0
+++ b/metadata/md5-cache/dev-go/gcp-civil-0.18.0
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=14e92a801602cf0e8264812e42f8f97f
diff --git a/metadata/md5-cache/dev-go/gcp-civil-0.18.0-r3 b/metadata/md5-cache/dev-go/gcp-civil-0.18.0-r3
index 2a7f131..d6f6de6 100644
--- a/metadata/md5-cache/dev-go/gcp-civil-0.18.0-r3
+++ b/metadata/md5-cache/dev-go/gcp-civil-0.18.0-r3
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=14e92a801602cf0e8264812e42f8f97f
diff --git a/metadata/md5-cache/dev-go/gcp-compute-0.18.0 b/metadata/md5-cache/dev-go/gcp-compute-0.18.0
index 5eb532b..a862740 100644
--- a/metadata/md5-cache/dev-go/gcp-compute-0.18.0
+++ b/metadata/md5-cache/dev-go/gcp-compute-0.18.0
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6cea665232db3a60ff232ad0871863db
diff --git a/metadata/md5-cache/dev-go/gcp-compute-0.18.0-r2 b/metadata/md5-cache/dev-go/gcp-compute-0.18.0-r2
index 5eb532b..a862740 100644
--- a/metadata/md5-cache/dev-go/gcp-compute-0.18.0-r2
+++ b/metadata/md5-cache/dev-go/gcp-compute-0.18.0-r2
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6cea665232db3a60ff232ad0871863db
diff --git a/metadata/md5-cache/dev-go/gcp-iam-0.18.0 b/metadata/md5-cache/dev-go/gcp-iam-0.18.0
index eee1538..19cda6e 100644
--- a/metadata/md5-cache/dev-go/gcp-iam-0.18.0
+++ b/metadata/md5-cache/dev-go/gcp-iam-0.18.0
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=25d4bc548de1340d252dd6d5e8c3c63d
diff --git a/metadata/md5-cache/dev-go/gcp-iam-0.18.0-r1 b/metadata/md5-cache/dev-go/gcp-iam-0.18.0-r1
index eee1538..19cda6e 100644
--- a/metadata/md5-cache/dev-go/gcp-iam-0.18.0-r1
+++ b/metadata/md5-cache/dev-go/gcp-iam-0.18.0-r1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=25d4bc548de1340d252dd6d5e8c3c63d
diff --git a/metadata/md5-cache/dev-go/gcp-internal-0.18.0 b/metadata/md5-cache/dev-go/gcp-internal-0.18.0
index 1397552..86da160 100644
--- a/metadata/md5-cache/dev-go/gcp-internal-0.18.0
+++ b/metadata/md5-cache/dev-go/gcp-internal-0.18.0
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a0a7bb0e584873899c994ce38530c2da
diff --git a/metadata/md5-cache/dev-go/gcp-internal-0.18.0-r3 b/metadata/md5-cache/dev-go/gcp-internal-0.18.0-r3
index 1397552..86da160 100644
--- a/metadata/md5-cache/dev-go/gcp-internal-0.18.0-r3
+++ b/metadata/md5-cache/dev-go/gcp-internal-0.18.0-r3
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a0a7bb0e584873899c994ce38530c2da
diff --git a/metadata/md5-cache/dev-go/gcp-monitoring-0.18.0 b/metadata/md5-cache/dev-go/gcp-monitoring-0.18.0
index 35fa974..b5c4e0b 100644
--- a/metadata/md5-cache/dev-go/gcp-monitoring-0.18.0
+++ b/metadata/md5-cache/dev-go/gcp-monitoring-0.18.0
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e3422da22efd2abe9aa8498cb6130406
diff --git a/metadata/md5-cache/dev-go/gcp-monitoring-0.18.0-r5 b/metadata/md5-cache/dev-go/gcp-monitoring-0.18.0-r5
index 35fa974..b5c4e0b 100644
--- a/metadata/md5-cache/dev-go/gcp-monitoring-0.18.0-r5
+++ b/metadata/md5-cache/dev-go/gcp-monitoring-0.18.0-r5
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e3422da22efd2abe9aa8498cb6130406
diff --git a/metadata/md5-cache/dev-go/gcp-pubsub-0.18.0 b/metadata/md5-cache/dev-go/gcp-pubsub-0.18.0
index 7130479..07eed4b 100644
--- a/metadata/md5-cache/dev-go/gcp-pubsub-0.18.0
+++ b/metadata/md5-cache/dev-go/gcp-pubsub-0.18.0
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f2c030bce92c3acf9fce2b8a6dfa5477
diff --git a/metadata/md5-cache/dev-go/gcp-pubsub-0.18.0-r1 b/metadata/md5-cache/dev-go/gcp-pubsub-0.18.0-r1
index 7130479..07eed4b 100644
--- a/metadata/md5-cache/dev-go/gcp-pubsub-0.18.0-r1
+++ b/metadata/md5-cache/dev-go/gcp-pubsub-0.18.0-r1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f2c030bce92c3acf9fce2b8a6dfa5477
diff --git a/metadata/md5-cache/dev-go/gcp-trace-0.18.0 b/metadata/md5-cache/dev-go/gcp-trace-0.18.0
index 5926de5..30182de 100644
--- a/metadata/md5-cache/dev-go/gcp-trace-0.18.0
+++ b/metadata/md5-cache/dev-go/gcp-trace-0.18.0
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0f7a7e6288f17f4bdf29ebcb2f0c62a9
diff --git a/metadata/md5-cache/dev-go/gcp-trace-0.18.0-r5 b/metadata/md5-cache/dev-go/gcp-trace-0.18.0-r5
index 5926de5..30182de 100644
--- a/metadata/md5-cache/dev-go/gcp-trace-0.18.0-r5
+++ b/metadata/md5-cache/dev-go/gcp-trace-0.18.0-r5
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/GoogleCloudPlatform/google-cloud-go/archive/v0.18.0.tar.gz -> github.com-GoogleCloudPlatform-google-cloud-go-v0.18.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0f7a7e6288f17f4bdf29ebcb2f0c62a9
diff --git a/metadata/md5-cache/dev-go/genproto-0.0.1 b/metadata/md5-cache/dev-go/genproto-0.0.1
index 356ea7d..56ab3c0 100644
--- a/metadata/md5-cache/dev-go/genproto-0.0.1
+++ b/metadata/md5-cache/dev-go/genproto-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/go-genproto/archive/2b5a72b8730b0b16380010cfe5286c42108d88e7.tar.gz -> github.com-google-go-genproto-2b5a72b8730b0b16380010cfe5286c42108d88e7.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4329d7a5cc1f6d09fa396d6c89a862d5
diff --git a/metadata/md5-cache/dev-go/genproto-0.0.1-r6 b/metadata/md5-cache/dev-go/genproto-0.0.1-r6
index 356ea7d..56ab3c0 100644
--- a/metadata/md5-cache/dev-go/genproto-0.0.1-r6
+++ b/metadata/md5-cache/dev-go/genproto-0.0.1-r6
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/go-genproto/archive/2b5a72b8730b0b16380010cfe5286c42108d88e7.tar.gz -> github.com-google-go-genproto-2b5a72b8730b0b16380010cfe5286c42108d88e7.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4329d7a5cc1f6d09fa396d6c89a862d5
diff --git a/metadata/md5-cache/dev-go/genproto-rpc-0.0.1 b/metadata/md5-cache/dev-go/genproto-rpc-0.0.1
index 7d49d01..8ba8f49 100644
--- a/metadata/md5-cache/dev-go/genproto-rpc-0.0.1
+++ b/metadata/md5-cache/dev-go/genproto-rpc-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/go-genproto/archive/2b5a72b8730b0b16380010cfe5286c42108d88e7.tar.gz -> github.com-google-go-genproto-2b5a72b8730b0b16380010cfe5286c42108d88e7.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2ecd64d01fe25c8faae041c8d57156cb
diff --git a/metadata/md5-cache/dev-go/genproto-rpc-0.0.1-r1 b/metadata/md5-cache/dev-go/genproto-rpc-0.0.1-r1
index 7d49d01..8ba8f49 100644
--- a/metadata/md5-cache/dev-go/genproto-rpc-0.0.1-r1
+++ b/metadata/md5-cache/dev-go/genproto-rpc-0.0.1-r1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/go-genproto/archive/2b5a72b8730b0b16380010cfe5286c42108d88e7.tar.gz -> github.com-google-go-genproto-2b5a72b8730b0b16380010cfe5286c42108d88e7.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2ecd64d01fe25c8faae041c8d57156cb
diff --git a/metadata/md5-cache/dev-go/glog-0.0.1 b/metadata/md5-cache/dev-go/glog-0.0.1
index 2d61dec..5294ab2 100644
--- a/metadata/md5-cache/dev-go/glog-0.0.1
+++ b/metadata/md5-cache/dev-go/glog-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/golang/glog/archive/44145f04b68cf362d9c4df2182967c2275eaefed.tar.gz -> github.com-golang-glog-44145f04b68cf362d9c4df2182967c2275eaefed.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=871f256f2627110b280f180aeaaa4a6a
diff --git a/metadata/md5-cache/dev-go/glog-0.0.1-r4 b/metadata/md5-cache/dev-go/glog-0.0.1-r4
index 2d61dec..5294ab2 100644
--- a/metadata/md5-cache/dev-go/glog-0.0.1-r4
+++ b/metadata/md5-cache/dev-go/glog-0.0.1-r4
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/golang/glog/archive/44145f04b68cf362d9c4df2182967c2275eaefed.tar.gz -> github.com-golang-glog-44145f04b68cf362d9c4df2182967c2275eaefed.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=871f256f2627110b280f180aeaaa4a6a
diff --git a/metadata/md5-cache/dev-go/go-image-0.0.1 b/metadata/md5-cache/dev-go/go-image-0.0.1
index 94498f7..94cc83f 100644
--- a/metadata/md5-cache/dev-go/go-image-0.0.1
+++ b/metadata/md5-cache/dev-go/go-image-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/image/+archive/9130b4cfad522142c86367afe5e34ce811a85a4b.tar.gz -> go.googlesource.com-image-9130b4cfad522142c86367afe5e34ce811a85a4b.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=55bf8e8c3ab87bc15a50449d9b6c7b65
diff --git a/metadata/md5-cache/dev-go/go-libaudit-0.4.0 b/metadata/md5-cache/dev-go/go-libaudit-0.4.0
index 0ec1419..e58a227 100644
--- a/metadata/md5-cache/dev-go/go-libaudit-0.4.0
+++ b/metadata/md5-cache/dev-go/go-libaudit-0.4.0
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/elastic/go-libaudit/archive/v0.4.0.tar.gz -> github.com-elastic-go-libaudit-v0.4.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=1c3f761087f43590fb3472ef930dbb57
diff --git a/metadata/md5-cache/dev-go/go-libaudit-0.4.0-r1 b/metadata/md5-cache/dev-go/go-libaudit-0.4.0-r1
index 0ec1419..e58a227 100644
--- a/metadata/md5-cache/dev-go/go-libaudit-0.4.0-r1
+++ b/metadata/md5-cache/dev-go/go-libaudit-0.4.0-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/elastic/go-libaudit/archive/v0.4.0.tar.gz -> github.com-elastic-go-libaudit-v0.4.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=1c3f761087f43590fb3472ef930dbb57
diff --git a/metadata/md5-cache/dev-go/go-matroska-0.0.1 b/metadata/md5-cache/dev-go/go-matroska-0.0.1
index 4c60a8f..31d1b9e 100644
--- a/metadata/md5-cache/dev-go/go-matroska-0.0.1
+++ b/metadata/md5-cache/dev-go/go-matroska-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/pixelbender/go-matroska/archive/4ea028a99fa677aba6359303ce619ad7d6d9ee57.tar.gz -> github.com-pixelbender-go-matroska-4ea028a99fa677aba6359303ce619ad7d6d9ee57.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=46ae4e715bc95c22d41a8ab9373a497c
diff --git a/metadata/md5-cache/dev-go/go-matroska-0.0.1-r1 b/metadata/md5-cache/dev-go/go-matroska-0.0.1-r1
index 4c60a8f..31d1b9e 100644
--- a/metadata/md5-cache/dev-go/go-matroska-0.0.1-r1
+++ b/metadata/md5-cache/dev-go/go-matroska-0.0.1-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/pixelbender/go-matroska/archive/4ea028a99fa677aba6359303ce619ad7d6d9ee57.tar.gz -> github.com-pixelbender-go-matroska-4ea028a99fa677aba6359303ce619ad7d6d9ee57.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=46ae4e715bc95c22d41a8ab9373a497c
diff --git a/metadata/md5-cache/dev-go/go-sys-0.0.1 b/metadata/md5-cache/dev-go/go-sys-0.0.1
index b0c5521..7746458 100644
--- a/metadata/md5-cache/dev-go/go-sys-0.0.1
+++ b/metadata/md5-cache/dev-go/go-sys-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/sys/+archive/cb9d2d5c56667600bda8ad719c756f125ad55083.tar.gz -> go.googlesource.com-sys-cb9d2d5c56667600bda8ad719c756f125ad55083.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=58397c45c95bed657fa49b6aeda7aa42
diff --git a/metadata/md5-cache/dev-go/go-sys-0.0.1-r5 b/metadata/md5-cache/dev-go/go-sys-0.0.1-r5
index b0c5521..7746458 100644
--- a/metadata/md5-cache/dev-go/go-sys-0.0.1-r5
+++ b/metadata/md5-cache/dev-go/go-sys-0.0.1-r5
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/sys/+archive/cb9d2d5c56667600bda8ad719c756f125ad55083.tar.gz -> go.googlesource.com-sys-cb9d2d5c56667600bda8ad719c756f125ad55083.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=58397c45c95bed657fa49b6aeda7aa42
diff --git a/metadata/md5-cache/dev-go/go-sysconf-0.3.7 b/metadata/md5-cache/dev-go/go-sysconf-0.3.7
new file mode 100644
index 0000000..3d13406
--- /dev/null
+++ b/metadata/md5-cache/dev-go/go-sysconf-0.3.7
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-go/numcpus dev-go/go-sys dev-lang/go
+DESCRIPTION=sysconf for Go, without using cgo or external binaries (e.g. getconf).
+EAPI=5
+HOMEPAGE=https://github.com/tklauser/go-sysconf
+IUSE=test
+KEYWORDS=*
+LICENSE=BSD
+RDEPEND=dev-go/numcpus dev-go/go-sys
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/tklauser/go-sysconf/archive/v0.3.7.tar.gz -> github.com-tklauser-go-sysconf-v0.3.7.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=0a8a8cc43ff60d30cf61ca2aa695b38b
diff --git a/metadata/md5-cache/dev-go/go-sysconf-0.3.7-r1 b/metadata/md5-cache/dev-go/go-sysconf-0.3.7-r1
new file mode 100644
index 0000000..3d13406
--- /dev/null
+++ b/metadata/md5-cache/dev-go/go-sysconf-0.3.7-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-go/numcpus dev-go/go-sys dev-lang/go
+DESCRIPTION=sysconf for Go, without using cgo or external binaries (e.g. getconf).
+EAPI=5
+HOMEPAGE=https://github.com/tklauser/go-sysconf
+IUSE=test
+KEYWORDS=*
+LICENSE=BSD
+RDEPEND=dev-go/numcpus dev-go/go-sys
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/tklauser/go-sysconf/archive/v0.3.7.tar.gz -> github.com-tklauser-go-sysconf-v0.3.7.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=0a8a8cc43ff60d30cf61ca2aa695b38b
diff --git a/metadata/md5-cache/dev-go/go-tools-0.0.1 b/metadata/md5-cache/dev-go/go-tools-0.0.1
index fab2dd5..fc0d557 100644
--- a/metadata/md5-cache/dev-go/go-tools-0.0.1
+++ b/metadata/md5-cache/dev-go/go-tools-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/tools/+archive/c1934b75d054975b79a8179cb6f0a9b8b3fa33cd.tar.gz -> go.googlesource.com-tools-c1934b75d054975b79a8179cb6f0a9b8b3fa33cd.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=6c9bc5cd64e912baf0465c90483c7726
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=4311e227cfaa2a64aeaaab48ea7eab38
diff --git a/metadata/md5-cache/dev-go/go-tools-0.0.1-r14 b/metadata/md5-cache/dev-go/go-tools-0.0.1-r14
deleted file mode 100644
index fab2dd5..0000000
--- a/metadata/md5-cache/dev-go/go-tools-0.0.1-r14
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst test unpack
-DEPEND=dev-go/mod dev-go/net dev-go/xerrors dev-lang/go
-DESCRIPTION=Packages and tools that support the Go programming language
-EAPI=5
-HOMEPAGE=https://golang.org/x/tools
-KEYWORDS=*
-LICENSE=BSD-Google
-RDEPEND=dev-go/mod dev-go/net dev-go/xerrors
-RESTRICT=binchecks strip
-SLOT=0
-SRC_URI=https://go.googlesource.com/tools/+archive/c1934b75d054975b79a8179cb6f0a9b8b3fa33cd.tar.gz -> go.googlesource.com-tools-c1934b75d054975b79a8179cb6f0a9b8b3fa33cd.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=6c9bc5cd64e912baf0465c90483c7726
diff --git a/metadata/md5-cache/dev-go/go-tools-0.0.1-r15 b/metadata/md5-cache/dev-go/go-tools-0.0.1-r15
new file mode 100644
index 0000000..fc0d557
--- /dev/null
+++ b/metadata/md5-cache/dev-go/go-tools-0.0.1-r15
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-go/mod dev-go/net dev-go/xerrors dev-lang/go
+DESCRIPTION=Packages and tools that support the Go programming language
+EAPI=5
+HOMEPAGE=https://golang.org/x/tools
+KEYWORDS=*
+LICENSE=BSD-Google
+RDEPEND=dev-go/mod dev-go/net dev-go/xerrors
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://go.googlesource.com/tools/+archive/c1934b75d054975b79a8179cb6f0a9b8b3fa33cd.tar.gz -> go.googlesource.com-tools-c1934b75d054975b79a8179cb6f0a9b8b3fa33cd.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=4311e227cfaa2a64aeaaab48ea7eab38
diff --git a/metadata/md5-cache/dev-go/godebug-1.1.0 b/metadata/md5-cache/dev-go/godebug-1.1.0
index ec4c670..d9fb44b 100644
--- a/metadata/md5-cache/dev-go/godebug-1.1.0
+++ b/metadata/md5-cache/dev-go/godebug-1.1.0
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/kylelemons/godebug/archive/v1.1.0.tar.gz -> github.com-kylelemons-godebug-v1.1.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=155b42012eb93326058948f726f220a1
diff --git a/metadata/md5-cache/dev-go/godebug-1.1.0-r1 b/metadata/md5-cache/dev-go/godebug-1.1.0-r1
index ec4c670..d9fb44b 100644
--- a/metadata/md5-cache/dev-go/godebug-1.1.0-r1
+++ b/metadata/md5-cache/dev-go/godebug-1.1.0-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/kylelemons/godebug/archive/v1.1.0.tar.gz -> github.com-kylelemons-godebug-v1.1.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=155b42012eb93326058948f726f220a1
diff --git a/metadata/md5-cache/dev-go/gofountain-0.0.1 b/metadata/md5-cache/dev-go/gofountain-0.0.1
index 94c348b..d9b76cb 100644
--- a/metadata/md5-cache/dev-go/gofountain-0.0.1
+++ b/metadata/md5-cache/dev-go/gofountain-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/gofountain/archive/4928733085e9593b7dcdb0fe268b20e1e1184b6d.tar.gz -> github.com-google-gofountain-4928733085e9593b7dcdb0fe268b20e1e1184b6d.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=dbae35dc471d7cc19897d6cc575a6a8c
diff --git a/metadata/md5-cache/dev-go/gofountain-0.0.1-r1 b/metadata/md5-cache/dev-go/gofountain-0.0.1-r1
index 94c348b..d9b76cb 100644
--- a/metadata/md5-cache/dev-go/gofountain-0.0.1-r1
+++ b/metadata/md5-cache/dev-go/gofountain-0.0.1-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/gofountain/archive/4928733085e9593b7dcdb0fe268b20e1e1184b6d.tar.gz -> github.com-google-gofountain-4928733085e9593b7dcdb0fe268b20e1e1184b6d.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=dbae35dc471d7cc19897d6cc575a6a8c
diff --git a/metadata/md5-cache/dev-go/gofpdf-0.0.1 b/metadata/md5-cache/dev-go/gofpdf-0.0.1
index 0e7ba55..6483e93 100644
--- a/metadata/md5-cache/dev-go/gofpdf-0.0.1
+++ b/metadata/md5-cache/dev-go/gofpdf-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/jung-kurt/gofpdf/archive/v2.17.2.tar.gz -> github.com-jung-kurt-gofpdf-v2.17.2.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a84dad22f7c3d8d36526978aac463f65
diff --git a/metadata/md5-cache/dev-go/golang-evdev-0.0.1 b/metadata/md5-cache/dev-go/golang-evdev-0.0.1
index 6cde18e..8821033 100644
--- a/metadata/md5-cache/dev-go/golang-evdev-0.0.1
+++ b/metadata/md5-cache/dev-go/golang-evdev-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/gvalkov/golang-evdev/archive/287e62b94bcb850ab42e711bd74b2875da83af2c.tar.gz -> github.com-gvalkov-golang-evdev-287e62b94bcb850ab42e711bd74b2875da83af2c.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=90a7347fd5de7bc309a90806eeeb4217
diff --git a/metadata/md5-cache/dev-go/golang-freetype-0.0.1 b/metadata/md5-cache/dev-go/golang-freetype-0.0.1
index 2410359..140119b 100644
--- a/metadata/md5-cache/dev-go/golang-freetype-0.0.1
+++ b/metadata/md5-cache/dev-go/golang-freetype-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/golang/freetype/archive/bcfeb16b74e8aea9e2fe043406f2ef74b1cb0759.tar.gz -> github.com-golang-freetype-bcfeb16b74e8aea9e2fe043406f2ef74b1cb0759.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a53e34c1434645b2fa3c05b82d54d3d4
diff --git a/metadata/md5-cache/dev-go/golint-0.0.1 b/metadata/md5-cache/dev-go/golint-0.0.1
index cfc40a9..b2968e8 100644
--- a/metadata/md5-cache/dev-go/golint-0.0.1
+++ b/metadata/md5-cache/dev-go/golint-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/lint/+archive/5906bd5c48cd840279ace88b165057fbbd7fb35a.tar.gz -> go.googlesource.com-lint-5906bd5c48cd840279ace88b165057fbbd7fb35a.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c95e898f5cee388ab7ab9f401be88976
diff --git a/metadata/md5-cache/dev-go/golint-0.0.1-r6 b/metadata/md5-cache/dev-go/golint-0.0.1-r6
index cfc40a9..b2968e8 100644
--- a/metadata/md5-cache/dev-go/golint-0.0.1-r6
+++ b/metadata/md5-cache/dev-go/golint-0.0.1-r6
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/lint/+archive/5906bd5c48cd840279ace88b165057fbbd7fb35a.tar.gz -> go.googlesource.com-lint-5906bd5c48cd840279ace88b165057fbbd7fb35a.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c95e898f5cee388ab7ab9f401be88976
diff --git a/metadata/md5-cache/dev-go/gonum-plot-0.0.1 b/metadata/md5-cache/dev-go/gonum-plot-0.0.1
index 59f1ecc..a64cf9c 100644
--- a/metadata/md5-cache/dev-go/gonum-plot-0.0.1
+++ b/metadata/md5-cache/dev-go/gonum-plot-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/gonum/plot/archive/4abb28f724d5129237103b5844685e7d60f93cfd.tar.gz -> github.com-gonum-plot-4abb28f724d5129237103b5844685e7d60f93cfd.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e5f58b3aa9982295fc168055dcba211e
diff --git a/metadata/md5-cache/dev-go/gopacket-1.1.17 b/metadata/md5-cache/dev-go/gopacket-1.1.17
index f9a254b..9c90d55 100644
--- a/metadata/md5-cache/dev-go/gopacket-1.1.17
+++ b/metadata/md5-cache/dev-go/gopacket-1.1.17
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/gopacket/archive/v1.1.17.tar.gz -> github.com-google-gopacket-v1.1.17.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=196f8971a67b6855a5a67685494eb6db
diff --git a/metadata/md5-cache/dev-go/gopacket-1.1.17-r1 b/metadata/md5-cache/dev-go/gopacket-1.1.17-r1
index f9a254b..9c90d55 100644
--- a/metadata/md5-cache/dev-go/gopacket-1.1.17-r1
+++ b/metadata/md5-cache/dev-go/gopacket-1.1.17-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/gopacket/archive/v1.1.17.tar.gz -> github.com-google-gopacket-v1.1.17.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=196f8971a67b6855a5a67685494eb6db
diff --git a/metadata/md5-cache/dev-go/gopsutil-2.19.05 b/metadata/md5-cache/dev-go/gopsutil-2.19.05
deleted file mode 100644
index 7f7bb36..0000000
--- a/metadata/md5-cache/dev-go/gopsutil-2.19.05
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst test unpack
-DEPEND=test? ( dev-go/go-sys ) dev-lang/go
-DESCRIPTION=Cross-platform lib for process and system monitoring in Go
-EAPI=5
-HOMEPAGE=https://github.com/shirou/gopsutil
-IUSE=test
-KEYWORDS=*
-LICENSE=BSD
-RDEPEND=dev-go/go-sys
-RESTRICT=binchecks strip
-SLOT=0
-SRC_URI=https://github.com/shirou/gopsutil/archive/v2.19.05.tar.gz -> github.com-shirou-gopsutil-v2.19.05.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=464cc3e9435e1c664157a77dcce6cc81
diff --git a/metadata/md5-cache/dev-go/gopsutil-2.19.05-r1 b/metadata/md5-cache/dev-go/gopsutil-2.19.05-r1
deleted file mode 100644
index 7f7bb36..0000000
--- a/metadata/md5-cache/dev-go/gopsutil-2.19.05-r1
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst test unpack
-DEPEND=test? ( dev-go/go-sys ) dev-lang/go
-DESCRIPTION=Cross-platform lib for process and system monitoring in Go
-EAPI=5
-HOMEPAGE=https://github.com/shirou/gopsutil
-IUSE=test
-KEYWORDS=*
-LICENSE=BSD
-RDEPEND=dev-go/go-sys
-RESTRICT=binchecks strip
-SLOT=0
-SRC_URI=https://github.com/shirou/gopsutil/archive/v2.19.05.tar.gz -> github.com-shirou-gopsutil-v2.19.05.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=464cc3e9435e1c664157a77dcce6cc81
diff --git a/metadata/md5-cache/dev-go/gopsutil-3.21.7 b/metadata/md5-cache/dev-go/gopsutil-3.21.7
new file mode 100644
index 0000000..9b242a4
--- /dev/null
+++ b/metadata/md5-cache/dev-go/gopsutil-3.21.7
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=test? ( dev-go/go-sys ) dev-go/go-sysconf dev-lang/go
+DESCRIPTION=Cross-platform lib for process and system monitoring in Go
+EAPI=5
+HOMEPAGE=https://github.com/shirou/gopsutil
+IUSE=test
+KEYWORDS=*
+LICENSE=BSD
+RDEPEND=dev-go/go-sys dev-go/go-sysconf
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/shirou/gopsutil/archive/v3.21.7.tar.gz -> github.com-shirou-gopsutil-v3.21.7.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=9ef459cb90acb3fd208ce638e3ae0c01
diff --git a/metadata/md5-cache/dev-go/gopsutil-3.21.7-r1 b/metadata/md5-cache/dev-go/gopsutil-3.21.7-r1
new file mode 100644
index 0000000..9b242a4
--- /dev/null
+++ b/metadata/md5-cache/dev-go/gopsutil-3.21.7-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=test? ( dev-go/go-sys ) dev-go/go-sysconf dev-lang/go
+DESCRIPTION=Cross-platform lib for process and system monitoring in Go
+EAPI=5
+HOMEPAGE=https://github.com/shirou/gopsutil
+IUSE=test
+KEYWORDS=*
+LICENSE=BSD
+RDEPEND=dev-go/go-sys dev-go/go-sysconf
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/shirou/gopsutil/archive/v3.21.7.tar.gz -> github.com-shirou-gopsutil-v3.21.7.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=9ef459cb90acb3fd208ce638e3ae0c01
diff --git a/metadata/md5-cache/dev-go/grpc-1.25.1 b/metadata/md5-cache/dev-go/grpc-1.25.1
index f4f6a29..4068b0b 100644
--- a/metadata/md5-cache/dev-go/grpc-1.25.1
+++ b/metadata/md5-cache/dev-go/grpc-1.25.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/grpc/grpc-go/archive/v1.25.1.tar.gz -> github.com-grpc-grpc-go-v1.25.1.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=44fee7588dae5a3bbdb71d070dc9dd94
diff --git a/metadata/md5-cache/dev-go/grpc-1.25.1-r1 b/metadata/md5-cache/dev-go/grpc-1.25.1-r1
index f4f6a29..4068b0b 100644
--- a/metadata/md5-cache/dev-go/grpc-1.25.1-r1
+++ b/metadata/md5-cache/dev-go/grpc-1.25.1-r1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/grpc/grpc-go/archive/v1.25.1.tar.gz -> github.com-grpc-grpc-go-v1.25.1.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=44fee7588dae5a3bbdb71d070dc9dd94
diff --git a/metadata/md5-cache/dev-go/grpc-credentials-oauth-1.6.0 b/metadata/md5-cache/dev-go/grpc-credentials-oauth-1.6.0
index c1abeeb..a7ccabe 100644
--- a/metadata/md5-cache/dev-go/grpc-credentials-oauth-1.6.0
+++ b/metadata/md5-cache/dev-go/grpc-credentials-oauth-1.6.0
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/grpc/grpc-go/archive/v1.6.0.tar.gz -> github.com-grpc-grpc-go-v1.6.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e3776475cff85f0d3c8c5715eb9d2336
diff --git a/metadata/md5-cache/dev-go/grpc-credentials-oauth-1.6.0-r2 b/metadata/md5-cache/dev-go/grpc-credentials-oauth-1.6.0-r2
index c1abeeb..a7ccabe 100644
--- a/metadata/md5-cache/dev-go/grpc-credentials-oauth-1.6.0-r2
+++ b/metadata/md5-cache/dev-go/grpc-credentials-oauth-1.6.0-r2
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/grpc/grpc-go/archive/v1.6.0.tar.gz -> github.com-grpc-grpc-go-v1.6.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e3776475cff85f0d3c8c5715eb9d2336
diff --git a/metadata/md5-cache/dev-go/homedir-0.0.1 b/metadata/md5-cache/dev-go/homedir-0.0.1
index 8e81e76..a80969e 100644
--- a/metadata/md5-cache/dev-go/homedir-0.0.1
+++ b/metadata/md5-cache/dev-go/homedir-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks test strip
 SLOT=0
 SRC_URI=https://github.com/mitchellh/go-homedir/archive/b8bc1bf767474819792c23f32d8286a45736f1c6.tar.gz -> github.com-mitchellh-go-homedir-b8bc1bf767474819792c23f32d8286a45736f1c6.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=de07f0e5bdfa9f0610edc79f7111a879
diff --git a/metadata/md5-cache/dev-go/homedir-0.0.1-r3 b/metadata/md5-cache/dev-go/homedir-0.0.1-r3
index 8e81e76..a80969e 100644
--- a/metadata/md5-cache/dev-go/homedir-0.0.1-r3
+++ b/metadata/md5-cache/dev-go/homedir-0.0.1-r3
@@ -8,5 +8,5 @@
 RESTRICT=binchecks test strip
 SLOT=0
 SRC_URI=https://github.com/mitchellh/go-homedir/archive/b8bc1bf767474819792c23f32d8286a45736f1c6.tar.gz -> github.com-mitchellh-go-homedir-b8bc1bf767474819792c23f32d8286a45736f1c6.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=de07f0e5bdfa9f0610edc79f7111a879
diff --git a/metadata/md5-cache/dev-go/httprouter-0.0.1 b/metadata/md5-cache/dev-go/httprouter-0.0.1
index 7ecafea..a1e391d 100644
--- a/metadata/md5-cache/dev-go/httprouter-0.0.1
+++ b/metadata/md5-cache/dev-go/httprouter-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/julienschmidt/httprouter/archive/348b672cd90d8190f8240323e372ecd1e66b59dc.tar.gz -> github.com-julienschmidt-httprouter-348b672cd90d8190f8240323e372ecd1e66b59dc.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=81a8ea96727f194dba3e9672926c393f
diff --git a/metadata/md5-cache/dev-go/httprouter-0.0.1-r1 b/metadata/md5-cache/dev-go/httprouter-0.0.1-r1
index 7ecafea..a1e391d 100644
--- a/metadata/md5-cache/dev-go/httprouter-0.0.1-r1
+++ b/metadata/md5-cache/dev-go/httprouter-0.0.1-r1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/julienschmidt/httprouter/archive/348b672cd90d8190f8240323e372ecd1e66b59dc.tar.gz -> github.com-julienschmidt-httprouter-348b672cd90d8190f8240323e372ecd1e66b59dc.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=81a8ea96727f194dba3e9672926c393f
diff --git a/metadata/md5-cache/dev-go/jennifer-1.2.0 b/metadata/md5-cache/dev-go/jennifer-1.2.0
index 2b8ec17..2badca3 100644
--- a/metadata/md5-cache/dev-go/jennifer-1.2.0
+++ b/metadata/md5-cache/dev-go/jennifer-1.2.0
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/dave/jennifer/archive/v1.2.0.tar.gz -> github.com-dave-jennifer-v1.2.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2b343097d4fcbf115be9dc2c50291544
diff --git a/metadata/md5-cache/dev-go/kobject-0.0.1 b/metadata/md5-cache/dev-go/kobject-0.0.1
index 9c92240..976a4ff 100644
--- a/metadata/md5-cache/dev-go/kobject-0.0.1
+++ b/metadata/md5-cache/dev-go/kobject-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/mdlayher/kobject/archive/b96c97ecd94cb099c51321f651acb576067c960c.tar.gz -> github.com-mdlayher-kobject-b96c97ecd94cb099c51321f651acb576067c960c.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=470e87d3e0dd0de1fb75dff73c1a3666
diff --git a/metadata/md5-cache/dev-go/levenshtein-0.0.1 b/metadata/md5-cache/dev-go/levenshtein-0.0.1
index 44c26b2..e354f4c 100644
--- a/metadata/md5-cache/dev-go/levenshtein-0.0.1
+++ b/metadata/md5-cache/dev-go/levenshtein-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/texttheater/golang-levenshtein/archive/eb6844b05fc6f7e10932b0621c7f5f7e8890541d.tar.gz -> github.com-texttheater-golang-levenshtein-eb6844b05fc6f7e10932b0621c7f5f7e8890541d.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=06dbcd51db605ee2cb1c874f61f2341c
diff --git a/metadata/md5-cache/dev-go/luci-go-common-0.0.1 b/metadata/md5-cache/dev-go/luci-go-common-0.0.1
index 4678b4e..6d88e60 100644
--- a/metadata/md5-cache/dev-go/luci-go-common-0.0.1
+++ b/metadata/md5-cache/dev-go/luci-go-common-0.0.1
@@ -8,5 +8,5 @@
 RDEPEND=dev-go/gapi-googleapi dev-go/grpc dev-go/protobuf
 SLOT=0
 SRC_URI=https://chromium.googlesource.com/infra/luci/luci-go/+archive/fbf085364d0e2db2aa35e78f526ca0d7468201a8.tar.gz -> chromium.googlesource.com-infra-luci-luci-go-fbf085364d0e2db2aa35e78f526ca0d7468201a8.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8dcff8711928736bbe8110f445184a17
diff --git a/metadata/md5-cache/dev-go/luci-go-common-0.0.1-r1 b/metadata/md5-cache/dev-go/luci-go-common-0.0.1-r1
index 4678b4e..6d88e60 100644
--- a/metadata/md5-cache/dev-go/luci-go-common-0.0.1-r1
+++ b/metadata/md5-cache/dev-go/luci-go-common-0.0.1-r1
@@ -8,5 +8,5 @@
 RDEPEND=dev-go/gapi-googleapi dev-go/grpc dev-go/protobuf
 SLOT=0
 SRC_URI=https://chromium.googlesource.com/infra/luci/luci-go/+archive/fbf085364d0e2db2aa35e78f526ca0d7468201a8.tar.gz -> chromium.googlesource.com-infra-luci-luci-go-fbf085364d0e2db2aa35e78f526ca0d7468201a8.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8dcff8711928736bbe8110f445184a17
diff --git a/metadata/md5-cache/dev-go/lucicfg-1.28.0 b/metadata/md5-cache/dev-go/lucicfg-1.28.0
new file mode 100644
index 0000000..38d3f8e
--- /dev/null
+++ b/metadata/md5-cache/dev-go/lucicfg-1.28.0
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DESCRIPTION=Dialect of the starlark-go CLI for compiling starlark configs
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/infra/luci/luci-go/+/main/lucicfg/
+KEYWORDS=amd64 x86 arm arm64
+LICENSE=Apache-2.0
+RESTRICT=mirror
+SLOT=0
+SRC_URI=amd64? ( cipd://infra/tools/luci/lucicfg/linux-amd64:nbdhAt7xHlGWTn7NyfAyWtiSxEMMrCnc7sOYYRDQovwC -> lucicfg-1.28.0-amd64.zip ) x86? ( cipd://infra/tools/luci/lucicfg/linux-386:Eov5Nt9D63ImjwNzuvPNoUNmgYC3ClsAZC7yw-gXQy8C -> lucicfg-1.28.0-x86.zip ) arm64? ( cipd://infra/tools/luci/lucicfg/linux-arm64:5g-Q10_7W8V73fPnEi3JRry2Ntnz14w9x__4SnDUZaAC -> lucicfg-1.28.0-arm64.zip ) arm? ( cipd://infra/tools/luci/lucicfg/linux-armv6l:UAPY457UUGKjqe5OPjTtGbzxUGbc_4TXojhsHFnYTsUC -> lucicfg-1.28.0-arm.zip )
+_md5_=47f9204209e2e0f3de65fac0b7f61f31
diff --git a/metadata/md5-cache/dev-go/lucicfg-1.28.0-r1 b/metadata/md5-cache/dev-go/lucicfg-1.28.0-r1
new file mode 100644
index 0000000..38d3f8e
--- /dev/null
+++ b/metadata/md5-cache/dev-go/lucicfg-1.28.0-r1
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DESCRIPTION=Dialect of the starlark-go CLI for compiling starlark configs
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/infra/luci/luci-go/+/main/lucicfg/
+KEYWORDS=amd64 x86 arm arm64
+LICENSE=Apache-2.0
+RESTRICT=mirror
+SLOT=0
+SRC_URI=amd64? ( cipd://infra/tools/luci/lucicfg/linux-amd64:nbdhAt7xHlGWTn7NyfAyWtiSxEMMrCnc7sOYYRDQovwC -> lucicfg-1.28.0-amd64.zip ) x86? ( cipd://infra/tools/luci/lucicfg/linux-386:Eov5Nt9D63ImjwNzuvPNoUNmgYC3ClsAZC7yw-gXQy8C -> lucicfg-1.28.0-x86.zip ) arm64? ( cipd://infra/tools/luci/lucicfg/linux-arm64:5g-Q10_7W8V73fPnEi3JRry2Ntnz14w9x__4SnDUZaAC -> lucicfg-1.28.0-arm64.zip ) arm? ( cipd://infra/tools/luci/lucicfg/linux-armv6l:UAPY457UUGKjqe5OPjTtGbzxUGbc_4TXojhsHFnYTsUC -> lucicfg-1.28.0-arm.zip )
+_md5_=47f9204209e2e0f3de65fac0b7f61f31
diff --git a/metadata/md5-cache/dev-go/maruel-subcommands-0.0.1 b/metadata/md5-cache/dev-go/maruel-subcommands-0.0.1
index 5c18a3e..2159d27 100644
--- a/metadata/md5-cache/dev-go/maruel-subcommands-0.0.1
+++ b/metadata/md5-cache/dev-go/maruel-subcommands-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/maruel/subcommands/archive/de1d40e70d4b89b9c560a4d308e0bc9f5c9e18d7.tar.gz -> github.com-maruel-subcommands-de1d40e70d4b89b9c560a4d308e0bc9f5c9e18d7.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=0898ea6779a2cb20b00edb7e51377bcd
diff --git a/metadata/md5-cache/dev-go/maruel-subcommands-0.0.1-r1 b/metadata/md5-cache/dev-go/maruel-subcommands-0.0.1-r1
index 5c18a3e..2159d27 100644
--- a/metadata/md5-cache/dev-go/maruel-subcommands-0.0.1-r1
+++ b/metadata/md5-cache/dev-go/maruel-subcommands-0.0.1-r1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/maruel/subcommands/archive/de1d40e70d4b89b9c560a4d308e0bc9f5c9e18d7.tar.gz -> github.com-maruel-subcommands-de1d40e70d4b89b9c560a4d308e0bc9f5c9e18d7.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=0898ea6779a2cb20b00edb7e51377bcd
diff --git a/metadata/md5-cache/dev-go/mdns-0.0.1 b/metadata/md5-cache/dev-go/mdns-0.0.1
index 966d1f5..dde41a4 100644
--- a/metadata/md5-cache/dev-go/mdns-0.0.1
+++ b/metadata/md5-cache/dev-go/mdns-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/hashicorp/go.net/archive/104dcad90073cd8d1e6828b2af19185b60cf3e29.tar.gz -> github.com-hashicorp-go.net-104dcad90073cd8d1e6828b2af19185b60cf3e29.tar.gz https://github.com/hashicorp/mdns/archive/4e527d9d808175f132f949523e640c699e4253bb.tar.gz -> github.com-hashicorp-mdns-4e527d9d808175f132f949523e640c699e4253bb.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b9543304beb14d79e9e198524557ba0c
diff --git a/metadata/md5-cache/dev-go/mdns-0.0.1-r1 b/metadata/md5-cache/dev-go/mdns-0.0.1-r1
index 966d1f5..dde41a4 100644
--- a/metadata/md5-cache/dev-go/mdns-0.0.1-r1
+++ b/metadata/md5-cache/dev-go/mdns-0.0.1-r1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/hashicorp/go.net/archive/104dcad90073cd8d1e6828b2af19185b60cf3e29.tar.gz -> github.com-hashicorp-go.net-104dcad90073cd8d1e6828b2af19185b60cf3e29.tar.gz https://github.com/hashicorp/mdns/archive/4e527d9d808175f132f949523e640c699e4253bb.tar.gz -> github.com-hashicorp-mdns-4e527d9d808175f132f949523e640c699e4253bb.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b9543304beb14d79e9e198524557ba0c
diff --git a/metadata/md5-cache/dev-go/mock-1.0.0 b/metadata/md5-cache/dev-go/mock-1.0.0
deleted file mode 100644
index 23a6c35..0000000
--- a/metadata/md5-cache/dev-go/mock-1.0.0
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst test unpack
-DEPEND=dev-lang/go
-DESCRIPTION=A mocking framework for the Go programming language
-EAPI=5
-HOMEPAGE=https://github.com/golang/mock
-KEYWORDS=*
-LICENSE=Apache-2.0
-RESTRICT=binchecks strip
-SLOT=0
-SRC_URI=https://github.com/golang/mock/archive/v1.0.0.tar.gz -> github.com-golang-mock-v1.0.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=83feae468207ed20a09be25f6b82de11
diff --git a/metadata/md5-cache/dev-go/mock-1.0.0-r2 b/metadata/md5-cache/dev-go/mock-1.0.0-r2
deleted file mode 100644
index 23a6c35..0000000
--- a/metadata/md5-cache/dev-go/mock-1.0.0-r2
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst test unpack
-DEPEND=dev-lang/go
-DESCRIPTION=A mocking framework for the Go programming language
-EAPI=5
-HOMEPAGE=https://github.com/golang/mock
-KEYWORDS=*
-LICENSE=Apache-2.0
-RESTRICT=binchecks strip
-SLOT=0
-SRC_URI=https://github.com/golang/mock/archive/v1.0.0.tar.gz -> github.com-golang-mock-v1.0.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=83feae468207ed20a09be25f6b82de11
diff --git a/metadata/md5-cache/dev-go/mock-1.6.0 b/metadata/md5-cache/dev-go/mock-1.6.0
new file mode 100644
index 0000000..0d45dd2
--- /dev/null
+++ b/metadata/md5-cache/dev-go/mock-1.6.0
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-go/mod dev-go/go-tools dev-lang/go
+DESCRIPTION=A mocking framework for the Go programming language
+EAPI=5
+HOMEPAGE=https://github.com/golang/mock
+KEYWORDS=*
+LICENSE=Apache-2.0
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/golang/mock/archive/v1.6.0.tar.gz -> github.com-golang-mock-v1.6.0.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=ef195b5ea38c8bd2c3b9a0aa21484441
diff --git a/metadata/md5-cache/dev-go/mock-1.6.0-r1 b/metadata/md5-cache/dev-go/mock-1.6.0-r1
new file mode 100644
index 0000000..0d45dd2
--- /dev/null
+++ b/metadata/md5-cache/dev-go/mock-1.6.0-r1
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-go/mod dev-go/go-tools dev-lang/go
+DESCRIPTION=A mocking framework for the Go programming language
+EAPI=5
+HOMEPAGE=https://github.com/golang/mock
+KEYWORDS=*
+LICENSE=Apache-2.0
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/golang/mock/archive/v1.6.0.tar.gz -> github.com-golang-mock-v1.6.0.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=ef195b5ea38c8bd2c3b9a0aa21484441
diff --git a/metadata/md5-cache/dev-go/mod-0.3.0 b/metadata/md5-cache/dev-go/mod-0.3.0
index 27c3729..6f5c35c 100644
--- a/metadata/md5-cache/dev-go/mod-0.3.0
+++ b/metadata/md5-cache/dev-go/mod-0.3.0
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/mod/+archive/v0.3.0.tar.gz -> go.googlesource.com-mod-v0.3.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=31e899ac97f92a78bc7ea734296368e6
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3cc095cccc8d956d96ada10e080183df
diff --git a/metadata/md5-cache/dev-go/mod-0.3.0-r1 b/metadata/md5-cache/dev-go/mod-0.3.0-r1
deleted file mode 100644
index 27c3729..0000000
--- a/metadata/md5-cache/dev-go/mod-0.3.0-r1
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst test unpack
-DEPEND=dev-go/xerrors dev-lang/go
-DESCRIPTION=packages for writing tools that work directly with Go module mechanics
-EAPI=7
-HOMEPAGE=https://golang.org/x/mod
-KEYWORDS=*
-LICENSE=BSD-Google
-RDEPEND=dev-go/xerrors
-RESTRICT=binchecks strip
-SLOT=0
-SRC_URI=https://go.googlesource.com/mod/+archive/v0.3.0.tar.gz -> go.googlesource.com-mod-v0.3.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=31e899ac97f92a78bc7ea734296368e6
diff --git a/metadata/md5-cache/dev-go/mod-0.3.0-r2 b/metadata/md5-cache/dev-go/mod-0.3.0-r2
new file mode 100644
index 0000000..6f5c35c
--- /dev/null
+++ b/metadata/md5-cache/dev-go/mod-0.3.0-r2
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-go/xerrors dev-lang/go
+DESCRIPTION=packages for writing tools that work directly with Go module mechanics
+EAPI=7
+HOMEPAGE=https://golang.org/x/mod
+KEYWORDS=*
+LICENSE=BSD-Google
+RDEPEND=dev-go/xerrors
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://go.googlesource.com/mod/+archive/v0.3.0.tar.gz -> go.googlesource.com-mod-v0.3.0.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3cc095cccc8d956d96ada10e080183df
diff --git a/metadata/md5-cache/dev-go/mp4-0.0.1 b/metadata/md5-cache/dev-go/mp4-0.0.1
index 644b15c..a73bd45 100644
--- a/metadata/md5-cache/dev-go/mp4-0.0.1
+++ b/metadata/md5-cache/dev-go/mp4-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/abema/go-mp4/archive/9f0321600240dd93cb681da2d8d5adbfd87913a6.tar.gz -> github.com-abema-go-mp4-9f0321600240dd93cb681da2d8d5adbfd87913a6.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=fb923985c1a51d04ef37bf2320ff0a3d
diff --git a/metadata/md5-cache/dev-go/mp4-0.0.1-r2 b/metadata/md5-cache/dev-go/mp4-0.0.1-r2
index 644b15c..a73bd45 100644
--- a/metadata/md5-cache/dev-go/mp4-0.0.1-r2
+++ b/metadata/md5-cache/dev-go/mp4-0.0.1-r2
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/abema/go-mp4/archive/9f0321600240dd93cb681da2d8d5adbfd87913a6.tar.gz -> github.com-abema-go-mp4-9f0321600240dd93cb681da2d8d5adbfd87913a6.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=fb923985c1a51d04ef37bf2320ff0a3d
diff --git a/metadata/md5-cache/dev-go/net-0.0.1 b/metadata/md5-cache/dev-go/net-0.0.1
index dc6644b3..270793b 100644
--- a/metadata/md5-cache/dev-go/net-0.0.1
+++ b/metadata/md5-cache/dev-go/net-0.0.1
@@ -8,6 +8,6 @@
 RDEPEND=dev-go/text
 RESTRICT=binchecks strip
 SLOT=0
-SRC_URI=https://go.googlesource.com/net/+archive/0ed95abb35c445290478a5348a7b38bb154135fd.tar.gz -> go.googlesource.com-net-0ed95abb35c445290478a5348a7b38bb154135fd.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=3f79d58e7bba51c49406a7425a8915f1
+SRC_URI=https://go.googlesource.com/net/+archive/6f5299370f2bb1ac5d41c561fd1e5da511c2a3db.tar.gz -> go.googlesource.com-net-6f5299370f2bb1ac5d41c561fd1e5da511c2a3db.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=9dccc54ddfe207d448438be9ddee5ac2
diff --git a/metadata/md5-cache/dev-go/net-0.0.1-r10 b/metadata/md5-cache/dev-go/net-0.0.1-r10
new file mode 100644
index 0000000..270793b
--- /dev/null
+++ b/metadata/md5-cache/dev-go/net-0.0.1-r10
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-lang/go
+DESCRIPTION=Go supplementary network libraries
+EAPI=5
+HOMEPAGE=https://golang.org/x/net
+KEYWORDS=*
+LICENSE=BSD-Google
+RDEPEND=dev-go/text
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://go.googlesource.com/net/+archive/6f5299370f2bb1ac5d41c561fd1e5da511c2a3db.tar.gz -> go.googlesource.com-net-6f5299370f2bb1ac5d41c561fd1e5da511c2a3db.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=9dccc54ddfe207d448438be9ddee5ac2
diff --git a/metadata/md5-cache/dev-go/net-0.0.1-r9 b/metadata/md5-cache/dev-go/net-0.0.1-r9
deleted file mode 100644
index dc6644b3..0000000
--- a/metadata/md5-cache/dev-go/net-0.0.1-r9
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst test unpack
-DEPEND=dev-lang/go
-DESCRIPTION=Go supplementary network libraries
-EAPI=5
-HOMEPAGE=https://golang.org/x/net
-KEYWORDS=*
-LICENSE=BSD-Google
-RDEPEND=dev-go/text
-RESTRICT=binchecks strip
-SLOT=0
-SRC_URI=https://go.googlesource.com/net/+archive/0ed95abb35c445290478a5348a7b38bb154135fd.tar.gz -> go.googlesource.com-net-0ed95abb35c445290478a5348a7b38bb154135fd.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=3f79d58e7bba51c49406a7425a8915f1
diff --git a/metadata/md5-cache/dev-go/netlink-0.0.1 b/metadata/md5-cache/dev-go/netlink-0.0.1
index 48809eb..bf0da43 100644
--- a/metadata/md5-cache/dev-go/netlink-0.0.1
+++ b/metadata/md5-cache/dev-go/netlink-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/mdlayher/netlink/archive/336c8d74f4a037ab2e19a7b95dc2189673095121.tar.gz -> github.com-mdlayher-netlink-336c8d74f4a037ab2e19a7b95dc2189673095121.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3d02867cc3e72c9668e4163c2ee9e909
diff --git a/metadata/md5-cache/dev-go/netlink-0.0.1-r2 b/metadata/md5-cache/dev-go/netlink-0.0.1-r2
index 48809eb..bf0da43 100644
--- a/metadata/md5-cache/dev-go/netlink-0.0.1-r2
+++ b/metadata/md5-cache/dev-go/netlink-0.0.1-r2
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/mdlayher/netlink/archive/336c8d74f4a037ab2e19a7b95dc2189673095121.tar.gz -> github.com-mdlayher-netlink-336c8d74f4a037ab2e19a7b95dc2189673095121.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3d02867cc3e72c9668e4163c2ee9e909
diff --git a/metadata/md5-cache/dev-go/numcpus-0.2.3 b/metadata/md5-cache/dev-go/numcpus-0.2.3
new file mode 100644
index 0000000..85188ef
--- /dev/null
+++ b/metadata/md5-cache/dev-go/numcpus-0.2.3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-go/go-sys dev-lang/go
+DESCRIPTION=Provides information about the number of CPU.
+EAPI=5
+HOMEPAGE=https://github.com/tklauser/numcpus
+IUSE=test
+KEYWORDS=*
+LICENSE=Apache-2.0
+RDEPEND=dev-go/go-sys
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/tklauser/numcpus/archive/v0.2.3.tar.gz -> github.com-tklauser-numcpus-v0.2.3.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=745a1edf40d7adc23d459805de9696b8
diff --git a/metadata/md5-cache/dev-go/numcpus-0.2.3-r1 b/metadata/md5-cache/dev-go/numcpus-0.2.3-r1
new file mode 100644
index 0000000..85188ef
--- /dev/null
+++ b/metadata/md5-cache/dev-go/numcpus-0.2.3-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-go/go-sys dev-lang/go
+DESCRIPTION=Provides information about the number of CPU.
+EAPI=5
+HOMEPAGE=https://github.com/tklauser/numcpus
+IUSE=test
+KEYWORDS=*
+LICENSE=Apache-2.0
+RDEPEND=dev-go/go-sys
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/tklauser/numcpus/archive/v0.2.3.tar.gz -> github.com-tklauser-numcpus-v0.2.3.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=745a1edf40d7adc23d459805de9696b8
diff --git a/metadata/md5-cache/dev-go/oauth2-0.0.1 b/metadata/md5-cache/dev-go/oauth2-0.0.1
index 5be9397..cd7e16c 100644
--- a/metadata/md5-cache/dev-go/oauth2-0.0.1
+++ b/metadata/md5-cache/dev-go/oauth2-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/oauth2/+archive/fdc9e635145ae97e6c2cb777c48305600cf515cb.tar.gz -> go.googlesource.com-oauth2-fdc9e635145ae97e6c2cb777c48305600cf515cb.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7c3db10fba69117029c6857cec8d7270
diff --git a/metadata/md5-cache/dev-go/oauth2-0.0.1-r5 b/metadata/md5-cache/dev-go/oauth2-0.0.1-r5
index 5be9397..cd7e16c 100644
--- a/metadata/md5-cache/dev-go/oauth2-0.0.1-r5
+++ b/metadata/md5-cache/dev-go/oauth2-0.0.1-r5
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/oauth2/+archive/fdc9e635145ae97e6c2cb777c48305600cf515cb.tar.gz -> go.googlesource.com-oauth2-fdc9e635145ae97e6c2cb777c48305600cf515cb.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7c3db10fba69117029c6857cec8d7270
diff --git a/metadata/md5-cache/dev-go/op-logging-0.0.1 b/metadata/md5-cache/dev-go/op-logging-0.0.1
index 7c3b96d..f5e5a50 100644
--- a/metadata/md5-cache/dev-go/op-logging-0.0.1
+++ b/metadata/md5-cache/dev-go/op-logging-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/op/go-logging/archive/970db520ece77730c7e4724c61121037378659d9.tar.gz -> github.com-op-go-logging-970db520ece77730c7e4724c61121037378659d9.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ce9f393d35e0ef6811f9905032d1e48e
diff --git a/metadata/md5-cache/dev-go/op-logging-0.0.1-r1 b/metadata/md5-cache/dev-go/op-logging-0.0.1-r1
index 7c3b96d..f5e5a50 100644
--- a/metadata/md5-cache/dev-go/op-logging-0.0.1-r1
+++ b/metadata/md5-cache/dev-go/op-logging-0.0.1-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/op/go-logging/archive/970db520ece77730c7e4724c61121037378659d9.tar.gz -> github.com-op-go-logging-970db520ece77730c7e4724c61121037378659d9.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ce9f393d35e0ef6811f9905032d1e48e
diff --git a/metadata/md5-cache/dev-go/opencensus-0.3.0 b/metadata/md5-cache/dev-go/opencensus-0.3.0
index 8da9b79..009e3de 100644
--- a/metadata/md5-cache/dev-go/opencensus-0.3.0
+++ b/metadata/md5-cache/dev-go/opencensus-0.3.0
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/census-instrumentation/opencensus-go/archive/v0.3.0.tar.gz -> github.com-census-instrumentation-opencensus-go-v0.3.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=1fa681baf715a7650195774f961656ba
diff --git a/metadata/md5-cache/dev-go/opencensus-0.3.0-r3 b/metadata/md5-cache/dev-go/opencensus-0.3.0-r3
index 8da9b79..009e3de 100644
--- a/metadata/md5-cache/dev-go/opencensus-0.3.0-r3
+++ b/metadata/md5-cache/dev-go/opencensus-0.3.0-r3
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/census-instrumentation/opencensus-go/archive/v0.3.0.tar.gz -> github.com-census-instrumentation-opencensus-go-v0.3.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=1fa681baf715a7650195774f961656ba
diff --git a/metadata/md5-cache/dev-go/perfetto-protos-17.0-r265 b/metadata/md5-cache/dev-go/perfetto-protos-17.0-r265
new file mode 100644
index 0000000..4da203d
--- /dev/null
+++ b/metadata/md5-cache/dev-go/perfetto-protos-17.0-r265
@@ -0,0 +1,14 @@
+BDEPEND=dev-go/protobuf dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
+DEPEND=dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Perfetto go proto for Chrome OS
+EAPI=7
+HOMEPAGE=https://android.googlesource.com/platform/external/perfetto/+/refs/tags/v15.0/protos/perfetto/metrics/android/
+IUSE=cros-debug cros_host cros_workon_tree_a0a198b5a9aa1388d58ee6c18bbae218be5b69d1_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_a0a198b5a9aa1388d58ee6c18bbae218be5b69d1_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=Apache-2.0
+PROPERTIES=live live
+RDEPEND=!chromeos-base/perfetto_proto >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=eba922f4c489a9ddb273f39bccde9703
diff --git a/metadata/md5-cache/dev-go/perfetto-protos-4.1 b/metadata/md5-cache/dev-go/perfetto-protos-4.1
deleted file mode 100644
index 7e4e172..0000000
--- a/metadata/md5-cache/dev-go/perfetto-protos-4.1
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst prepare test unpack
-DEPEND=dev-libs/protobuf:= dev-go/protobuf:= dev-lang/go
-DESCRIPTION=Go bindings for Perfetto protocol buffers
-EAPI=7
-HOMEPAGE=https://android.googlesource.com/platform/external/perfetto
-KEYWORDS=*
-LICENSE=Apache-2.0
-RDEPEND=dev-libs/protobuf:=
-SLOT=0
-SRC_URI=https://android.googlesource.com/platform/external/perfetto/+archive/v4.1.tar.gz -> android.googlesource.com-platform-external-perfetto-v4.1.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b75cadfc84338661bffdd9db1f8ab009
diff --git a/metadata/md5-cache/dev-go/perfetto-protos-4.1-r1 b/metadata/md5-cache/dev-go/perfetto-protos-4.1-r1
deleted file mode 100644
index 7e4e172..0000000
--- a/metadata/md5-cache/dev-go/perfetto-protos-4.1-r1
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst prepare test unpack
-DEPEND=dev-libs/protobuf:= dev-go/protobuf:= dev-lang/go
-DESCRIPTION=Go bindings for Perfetto protocol buffers
-EAPI=7
-HOMEPAGE=https://android.googlesource.com/platform/external/perfetto
-KEYWORDS=*
-LICENSE=Apache-2.0
-RDEPEND=dev-libs/protobuf:=
-SLOT=0
-SRC_URI=https://android.googlesource.com/platform/external/perfetto/+archive/v4.1.tar.gz -> android.googlesource.com-platform-external-perfetto-v4.1.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b75cadfc84338661bffdd9db1f8ab009
diff --git a/metadata/md5-cache/dev-go/perfetto-protos-9999 b/metadata/md5-cache/dev-go/perfetto-protos-9999
new file mode 100644
index 0000000..8227727
--- /dev/null
+++ b/metadata/md5-cache/dev-go/perfetto-protos-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-go/protobuf dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
+DEPEND=dev-lang/go >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Perfetto go proto for Chrome OS
+EAPI=7
+HOMEPAGE=https://android.googlesource.com/platform/external/perfetto/+/refs/tags/v15.0/protos/perfetto/metrics/android/
+IUSE=cros-debug cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+KEYWORDS=~*
+LICENSE=Apache-2.0
+PROPERTIES=live live
+RDEPEND=!chromeos-base/perfetto_proto >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=dba0e0caf118f3ac072164d65f7f3422
diff --git a/metadata/md5-cache/dev-go/protobuf-1.25.0 b/metadata/md5-cache/dev-go/protobuf-1.25.0
index 738220b..1f9017c 100644
--- a/metadata/md5-cache/dev-go/protobuf-1.25.0
+++ b/metadata/md5-cache/dev-go/protobuf-1.25.0
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/golang/protobuf/archive/v1.3.2.tar.gz -> github.com-golang-protobuf-v1.3.2.tar.gz https://github.com/protocolbuffers/protobuf-go/archive/v1.25.0.tar.gz -> github.com-protocolbuffers-protobuf-go-v1.25.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a0242efe46560ba7426993bc661db234
diff --git a/metadata/md5-cache/dev-go/protobuf-1.25.0-r1 b/metadata/md5-cache/dev-go/protobuf-1.25.0-r1
index 738220b..1f9017c 100644
--- a/metadata/md5-cache/dev-go/protobuf-1.25.0-r1
+++ b/metadata/md5-cache/dev-go/protobuf-1.25.0-r1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/golang/protobuf/archive/v1.3.2.tar.gz -> github.com-golang-protobuf-v1.3.2.tar.gz https://github.com/protocolbuffers/protobuf-go/archive/v1.25.0.tar.gz -> github.com-protocolbuffers-protobuf-go-v1.25.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a0242efe46560ba7426993bc661db234
diff --git a/metadata/md5-cache/dev-go/readline-0.0.1 b/metadata/md5-cache/dev-go/readline-0.0.1
index 2b638db..4488d26 100644
--- a/metadata/md5-cache/dev-go/readline-0.0.1
+++ b/metadata/md5-cache/dev-go/readline-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/chzyer/readline/archive/v1.4.tar.gz -> github.com-chzyer-readline-v1.4.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a96168721b2505462af8f6ed767ab5e5
diff --git a/metadata/md5-cache/dev-go/rsc-io-pdf-0.0.1 b/metadata/md5-cache/dev-go/rsc-io-pdf-0.0.1
index ce231b7..0eea6a6 100644
--- a/metadata/md5-cache/dev-go/rsc-io-pdf-0.0.1
+++ b/metadata/md5-cache/dev-go/rsc-io-pdf-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/rsc/pdf/archive/v0.1.1.tar.gz -> github.com-rsc-pdf-v0.1.1.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=87f922ebbd17fcd41276bf55795d1344
diff --git a/metadata/md5-cache/dev-go/seccomp-0.0.1-r7 b/metadata/md5-cache/dev-go/seccomp-0.0.1-r7
deleted file mode 100644
index 893681d..0000000
--- a/metadata/md5-cache/dev-go/seccomp-0.0.1-r7
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=dev-lang/go
-DESCRIPTION=Go support for Chromium OS Seccomp-BPF policy files
-EAPI=7
-HOMEPAGE=https://chromium.org/chromium-os/developer-guide/chromium-os-sandboxing
-IUSE=cros_host cros_workon_tree_e5e0d0ca30d0ce803ca251a36026c0c2b6a47624
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RESTRICT=binchecks strip
-SLOT=0/0.0.1-r7
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6c1b242064f580e74298e68c4c572cdc
diff --git a/metadata/md5-cache/dev-go/seccomp-9999 b/metadata/md5-cache/dev-go/seccomp-9999
deleted file mode 100644
index e55ef9e..0000000
--- a/metadata/md5-cache/dev-go/seccomp-9999
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=dev-lang/go
-DESCRIPTION=Go support for Chromium OS Seccomp-BPF policy files
-EAPI=7
-HOMEPAGE=https://chromium.org/chromium-os/developer-guide/chromium-os-sandboxing
-IUSE=cros_host cros_workon_tree_
-KEYWORDS=~*
-LICENSE=BSD-Google
-PROPERTIES=live
-RESTRICT=binchecks strip
-SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8ce6257e185b9c034b08a5200fef0467
diff --git a/metadata/md5-cache/dev-go/selinux-0.0.1 b/metadata/md5-cache/dev-go/selinux-0.0.1
index ad2bc0b..55ef765 100644
--- a/metadata/md5-cache/dev-go/selinux-0.0.1
+++ b/metadata/md5-cache/dev-go/selinux-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/opencontainers/selinux/archive/f5322ec9f783adb26f125d2086908dc546508b6d.tar.gz -> github.com-opencontainers-selinux-f5322ec9f783adb26f125d2086908dc546508b6d.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6ba92456874e75f9e9c85969e4a87a34
diff --git a/metadata/md5-cache/dev-go/selinux-0.0.1-r2 b/metadata/md5-cache/dev-go/selinux-0.0.1-r2
index ad2bc0b..55ef765 100644
--- a/metadata/md5-cache/dev-go/selinux-0.0.1-r2
+++ b/metadata/md5-cache/dev-go/selinux-0.0.1-r2
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/opencontainers/selinux/archive/f5322ec9f783adb26f125d2086908dc546508b6d.tar.gz -> github.com-opencontainers-selinux-f5322ec9f783adb26f125d2086908dc546508b6d.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6ba92456874e75f9e9c85969e4a87a34
diff --git a/metadata/md5-cache/dev-go/starlark-go-0.0.1 b/metadata/md5-cache/dev-go/starlark-go-0.0.1
new file mode 100644
index 0000000..75a409f
--- /dev/null
+++ b/metadata/md5-cache/dev-go/starlark-go-0.0.1
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-go/cmp dev-go/go-sys dev-go/protobuf dev-go/xerrors dev-lang/go
+DESCRIPTION=Go impl of the starlark config language
+EAPI=7
+HOMEPAGE=https://github.com/google/starlark-go
+KEYWORDS=*
+LICENSE=BSD-Google
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/google/starlark-go/archive/87f333178d5942de51b193111d6f636c79833ea5.tar.gz -> github.com-google-starlark-go-87f333178d5942de51b193111d6f636c79833ea5.tar.gz https://github.com/chzyer/logex/archive/v1.1.10.tar.gz -> github.com-chzyer-logex-v1.1.10.tar.gz https://github.com/chzyer/readline/archive/2972be24d48e78746da79ba8e24e8b488c9880de.tar.gz -> github.com-chzyer-readline-2972be24d48e78746da79ba8e24e8b488c9880de.tar.gz https://github.com/chzyer/test/archive/a1ea475d72b168a29f44221e0ad031a842642302.tar.gz -> github.com-chzyer-test-a1ea475d72b168a29f44221e0ad031a842642302.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=74dda0aff864924a7b919d2b9eaa2f3b
diff --git a/metadata/md5-cache/dev-go/starlark-go-0.0.1-r1 b/metadata/md5-cache/dev-go/starlark-go-0.0.1-r1
new file mode 100644
index 0000000..75a409f
--- /dev/null
+++ b/metadata/md5-cache/dev-go/starlark-go-0.0.1-r1
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-go/cmp dev-go/go-sys dev-go/protobuf dev-go/xerrors dev-lang/go
+DESCRIPTION=Go impl of the starlark config language
+EAPI=7
+HOMEPAGE=https://github.com/google/starlark-go
+KEYWORDS=*
+LICENSE=BSD-Google
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/google/starlark-go/archive/87f333178d5942de51b193111d6f636c79833ea5.tar.gz -> github.com-google-starlark-go-87f333178d5942de51b193111d6f636c79833ea5.tar.gz https://github.com/chzyer/logex/archive/v1.1.10.tar.gz -> github.com-chzyer-logex-v1.1.10.tar.gz https://github.com/chzyer/readline/archive/2972be24d48e78746da79ba8e24e8b488c9880de.tar.gz -> github.com-chzyer-readline-2972be24d48e78746da79ba8e24e8b488c9880de.tar.gz https://github.com/chzyer/test/archive/a1ea475d72b168a29f44221e0ad031a842642302.tar.gz -> github.com-chzyer-test-a1ea475d72b168a29f44221e0ad031a842642302.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=74dda0aff864924a7b919d2b9eaa2f3b
diff --git a/metadata/md5-cache/dev-go/subcommands-0.0.1 b/metadata/md5-cache/dev-go/subcommands-0.0.1
index b2f95c6..fafcaff 100644
--- a/metadata/md5-cache/dev-go/subcommands-0.0.1
+++ b/metadata/md5-cache/dev-go/subcommands-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/subcommands/archive/ce3d4cfc062faac7115d44e5befec8b5a08c3faa.tar.gz -> github.com-google-subcommands-ce3d4cfc062faac7115d44e5befec8b5a08c3faa.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=cff3013fe4d3390b1faab1efcc434092
diff --git a/metadata/md5-cache/dev-go/subcommands-0.0.1-r1 b/metadata/md5-cache/dev-go/subcommands-0.0.1-r1
index b2f95c6..fafcaff 100644
--- a/metadata/md5-cache/dev-go/subcommands-0.0.1-r1
+++ b/metadata/md5-cache/dev-go/subcommands-0.0.1-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/subcommands/archive/ce3d4cfc062faac7115d44e5befec8b5a08c3faa.tar.gz -> github.com-google-subcommands-ce3d4cfc062faac7115d44e5befec8b5a08c3faa.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=cff3013fe4d3390b1faab1efcc434092
diff --git a/metadata/md5-cache/dev-go/svgo-0.0.1 b/metadata/md5-cache/dev-go/svgo-0.0.1
index 56e1fdd..b18aad7 100644
--- a/metadata/md5-cache/dev-go/svgo-0.0.1
+++ b/metadata/md5-cache/dev-go/svgo-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/ajstarks/svgo/archive/go.weekly.2012-01-27.tar.gz -> github.com-ajstarks-svgo-go.weekly.2012-01-27.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=91ce826b694599a403f0d16fe52fb92d
diff --git a/metadata/md5-cache/dev-go/sync-0.0.1 b/metadata/md5-cache/dev-go/sync-0.0.1
index b5bcd89..991d6f8 100644
--- a/metadata/md5-cache/dev-go/sync-0.0.1
+++ b/metadata/md5-cache/dev-go/sync-0.0.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/sync/+archive/f52d1811a62927559de87708c8913c1650ce4f26.tar.gz -> go.googlesource.com-sync-f52d1811a62927559de87708c8913c1650ce4f26.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d936a92a0c4b4deb312252021fe6e3e5
diff --git a/metadata/md5-cache/dev-go/sync-0.0.1-r3 b/metadata/md5-cache/dev-go/sync-0.0.1-r3
index b5bcd89..991d6f8 100644
--- a/metadata/md5-cache/dev-go/sync-0.0.1-r3
+++ b/metadata/md5-cache/dev-go/sync-0.0.1-r3
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/sync/+archive/f52d1811a62927559de87708c8913c1650ce4f26.tar.gz -> go.googlesource.com-sync-f52d1811a62927559de87708c8913c1650ce4f26.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d936a92a0c4b4deb312252021fe6e3e5
diff --git a/metadata/md5-cache/dev-go/syzkaller-0.0.10 b/metadata/md5-cache/dev-go/syzkaller-0.0.10
deleted file mode 100644
index ba3e0e9..0000000
--- a/metadata/md5-cache/dev-go/syzkaller-0.0.10
+++ /dev/null
@@ -1,11 +0,0 @@
-DEFINED_PHASES=compile install nofetch postinst prepare test unpack
-DEPEND=dev-lang/go
-DESCRIPTION=Syzkaller kernel fuzzer
-EAPI=7
-HOMEPAGE=https://github.com/google/syzkaller
-KEYWORDS=*
-LICENSE=Apache-2.0
-SLOT=0
-SRC_URI=https://github.com/google/syzkaller/archive/8ee2dea687224e1e5759783abf5046d298bbe167.tar.gz -> github.com-google-syzkaller-8ee2dea687224e1e5759783abf5046d298bbe167.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e6c1eb2ecece174e22f2e255884610c3
diff --git a/metadata/md5-cache/dev-go/syzkaller-0.0.11 b/metadata/md5-cache/dev-go/syzkaller-0.0.11
new file mode 100644
index 0000000..21792fb
--- /dev/null
+++ b/metadata/md5-cache/dev-go/syzkaller-0.0.11
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile install nofetch postinst prepare test unpack
+DEPEND=dev-lang/go
+DESCRIPTION=Syzkaller kernel fuzzer
+EAPI=7
+HOMEPAGE=https://github.com/google/syzkaller
+KEYWORDS=*
+LICENSE=Apache-2.0
+SLOT=0
+SRC_URI=https://github.com/google/syzkaller/archive/8ee2dea687224e1e5759783abf5046d298bbe167.tar.gz -> github.com-google-syzkaller-8ee2dea687224e1e5759783abf5046d298bbe167.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1712c149ef724082f6479e7284e51dc5
diff --git a/metadata/md5-cache/dev-go/tarm-serial-0.0.1 b/metadata/md5-cache/dev-go/tarm-serial-0.0.1
new file mode 100644
index 0000000..18daa59
--- /dev/null
+++ b/metadata/md5-cache/dev-go/tarm-serial-0.0.1
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-go/go-sys dev-lang/go
+DESCRIPTION=Go package to read and write serial port byte streams
+EAPI=7
+HOMEPAGE=https://github.com/tarm/serial
+KEYWORDS=*
+LICENSE=BSD
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/tarm/serial/archive/98f6abe2eb07edd42f6dfa2a934aea469acc29b7.tar.gz -> github.com-tarm-serial-98f6abe2eb07edd42f6dfa2a934aea469acc29b7.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9c3da24d1379643379580a775ddd06f3
diff --git a/metadata/md5-cache/dev-go/tarm-serial-0.0.1-r1 b/metadata/md5-cache/dev-go/tarm-serial-0.0.1-r1
new file mode 100644
index 0000000..18daa59
--- /dev/null
+++ b/metadata/md5-cache/dev-go/tarm-serial-0.0.1-r1
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-go/go-sys dev-lang/go
+DESCRIPTION=Go package to read and write serial port byte streams
+EAPI=7
+HOMEPAGE=https://github.com/tarm/serial
+KEYWORDS=*
+LICENSE=BSD
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/tarm/serial/archive/98f6abe2eb07edd42f6dfa2a934aea469acc29b7.tar.gz -> github.com-tarm-serial-98f6abe2eb07edd42f6dfa2a934aea469acc29b7.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9c3da24d1379643379580a775ddd06f3
diff --git a/metadata/md5-cache/dev-go/text-0.0.1 b/metadata/md5-cache/dev-go/text-0.0.1
index 15a4dd0..b054659 100644
--- a/metadata/md5-cache/dev-go/text-0.0.1
+++ b/metadata/md5-cache/dev-go/text-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/text/+archive/1cbadb444a806fd9430d14ad08967ed91da4fa0a.tar.gz -> go.googlesource.com-text-1cbadb444a806fd9430d14ad08967ed91da4fa0a.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9943631139b1d7be0e33eed86ebbe4d1
diff --git a/metadata/md5-cache/dev-go/text-0.0.1-r2 b/metadata/md5-cache/dev-go/text-0.0.1-r2
index 15a4dd0..b054659 100644
--- a/metadata/md5-cache/dev-go/text-0.0.1-r2
+++ b/metadata/md5-cache/dev-go/text-0.0.1-r2
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://go.googlesource.com/text/+archive/1cbadb444a806fd9430d14ad08967ed91da4fa0a.tar.gz -> go.googlesource.com-text-1cbadb444a806fd9430d14ad08967ed91da4fa0a.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9943631139b1d7be0e33eed86ebbe4d1
diff --git a/metadata/md5-cache/dev-go/uuid-1.1.1 b/metadata/md5-cache/dev-go/uuid-1.1.1
index e307581..c0db98a 100644
--- a/metadata/md5-cache/dev-go/uuid-1.1.1
+++ b/metadata/md5-cache/dev-go/uuid-1.1.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/uuid/archive/v1.1.1.tar.gz -> github.com-google-uuid-v1.1.1.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2e0471de93a3b523dc19caa31fa84758
diff --git a/metadata/md5-cache/dev-go/uuid-1.1.1-r1 b/metadata/md5-cache/dev-go/uuid-1.1.1-r1
index e307581..c0db98a 100644
--- a/metadata/md5-cache/dev-go/uuid-1.1.1-r1
+++ b/metadata/md5-cache/dev-go/uuid-1.1.1-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/google/uuid/archive/v1.1.1.tar.gz -> github.com-google-uuid-v1.1.1.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2e0471de93a3b523dc19caa31fa84758
diff --git a/metadata/md5-cache/dev-go/vnc2video-1.0.1 b/metadata/md5-cache/dev-go/vnc2video-1.0.1
new file mode 100644
index 0000000..8e65d2b
--- /dev/null
+++ b/metadata/md5-cache/dev-go/vnc2video-1.0.1
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile install nofetch postinst test unpack
+DEPEND=dev-lang/go
+DESCRIPTION=A fork of vnc2video allowing lazy encoding of video.
+EAPI=7
+HOMEPAGE=https://github.com/matts1/vnc2video
+KEYWORDS=*
+LICENSE=MIT
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=https://github.com/matts1/vnc2video/archive/v1.0.1.tar.gz -> github.com-matts1-vnc2video-v1.0.1.tar.gz
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=de04c8135206324c39caa9bb54468c7b
diff --git a/metadata/md5-cache/dev-go/vsock-0.0.2 b/metadata/md5-cache/dev-go/vsock-0.0.2
index 19f7c6d..9cc3ffc 100644
--- a/metadata/md5-cache/dev-go/vsock-0.0.2
+++ b/metadata/md5-cache/dev-go/vsock-0.0.2
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/mdlayher/vsock/archive/9de589a8c10bfadb0e94fe67caa79a05a1a45a52.tar.gz -> github.com-mdlayher-vsock-9de589a8c10bfadb0e94fe67caa79a05a1a45a52.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=87d1f32fb481911d3e95ca5ac63a5cb4
diff --git a/metadata/md5-cache/dev-go/vsock-0.0.2-r1 b/metadata/md5-cache/dev-go/vsock-0.0.2-r1
index 19f7c6d..9cc3ffc 100644
--- a/metadata/md5-cache/dev-go/vsock-0.0.2-r1
+++ b/metadata/md5-cache/dev-go/vsock-0.0.2-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/mdlayher/vsock/archive/9de589a8c10bfadb0e94fe67caa79a05a1a45a52.tar.gz -> github.com-mdlayher-vsock-9de589a8c10bfadb0e94fe67caa79a05a1a45a52.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=87d1f32fb481911d3e95ca5ac63a5cb4
diff --git a/metadata/md5-cache/dev-go/websocket-1.2.0 b/metadata/md5-cache/dev-go/websocket-1.2.0
index a419662..d097b0e 100644
--- a/metadata/md5-cache/dev-go/websocket-1.2.0
+++ b/metadata/md5-cache/dev-go/websocket-1.2.0
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/gorilla/websocket/archive/v1.2.0.tar.gz -> github.com-gorilla-websocket-v1.2.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7a79044832c762fbe09a88d1725fb3b9
diff --git a/metadata/md5-cache/dev-go/websocket-1.2.0-r1 b/metadata/md5-cache/dev-go/websocket-1.2.0-r1
index a419662..d097b0e 100644
--- a/metadata/md5-cache/dev-go/websocket-1.2.0-r1
+++ b/metadata/md5-cache/dev-go/websocket-1.2.0-r1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/gorilla/websocket/archive/v1.2.0.tar.gz -> github.com-gorilla-websocket-v1.2.0.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7a79044832c762fbe09a88d1725fb3b9
diff --git a/metadata/md5-cache/dev-go/xerrors-0.0.1 b/metadata/md5-cache/dev-go/xerrors-0.0.1
index 4ca4878..be01ab2 100644
--- a/metadata/md5-cache/dev-go/xerrors-0.0.1
+++ b/metadata/md5-cache/dev-go/xerrors-0.0.1
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/golang/xerrors/archive/1a77d5e9f316d6917d88a497ab4db07399cbc923.tar.gz -> github.com-golang-xerrors-1a77d5e9f316d6917d88a497ab4db07399cbc923.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6fcbf90b76154fbe391ad76bd969854b
diff --git a/metadata/md5-cache/dev-go/xerrors-0.0.1-r2 b/metadata/md5-cache/dev-go/xerrors-0.0.1-r2
index 4ca4878..be01ab2 100644
--- a/metadata/md5-cache/dev-go/xerrors-0.0.1-r2
+++ b/metadata/md5-cache/dev-go/xerrors-0.0.1-r2
@@ -8,5 +8,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/golang/xerrors/archive/1a77d5e9f316d6917d88a497ab4db07399cbc923.tar.gz -> github.com-golang-xerrors-1a77d5e9f316d6917d88a497ab4db07399cbc923.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6fcbf90b76154fbe391ad76bd969854b
diff --git a/metadata/md5-cache/dev-go/yaml-2.2.1 b/metadata/md5-cache/dev-go/yaml-2.2.1
index 9780a2f..1aa738e 100644
--- a/metadata/md5-cache/dev-go/yaml-2.2.1
+++ b/metadata/md5-cache/dev-go/yaml-2.2.1
@@ -9,5 +9,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://github.com/go-yaml/yaml/archive/v2.2.1.tar.gz -> github.com-go-yaml-yaml-v2.2.1.tar.gz
-_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-go	157c7bac0e032e424ec1c3316c127db8	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6a8fd2b7dcd0257e04256be0c0176f7b
diff --git a/metadata/md5-cache/dev-haskell/aeson-1.4.6.0 b/metadata/md5-cache/dev-haskell/aeson-1.4.6.0
index 36a860b..15af75e 100644
--- a/metadata/md5-cache/dev-haskell/aeson-1.4.6.0
+++ b/metadata/md5-cache/dev-haskell/aeson-1.4.6.0
@@ -10,5 +10,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/1.4.6.0
 SRC_URI=mirror://hackage/packages/archive/aeson/1.4.6.0/aeson-1.4.6.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=47b18574e1752fcb561c56cf331770fb
diff --git a/metadata/md5-cache/dev-haskell/attoparsec-0.13.2.3 b/metadata/md5-cache/dev-haskell/attoparsec-0.13.2.3
index 8f32c5f..7f1222b 100644
--- a/metadata/md5-cache/dev-haskell/attoparsec-0.13.2.3
+++ b/metadata/md5-cache/dev-haskell/attoparsec-0.13.2.3
@@ -10,5 +10,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/0.13.2.3
 SRC_URI=mirror://hackage/packages/archive/attoparsec/0.13.2.3/attoparsec-0.13.2.3.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=31f1958dce62433c54652e0fd26e80df
diff --git a/metadata/md5-cache/dev-haskell/base-orphans-0.8.1 b/metadata/md5-cache/dev-haskell/base-orphans-0.8.1
index 1dbbb78..1ae9312 100644
--- a/metadata/md5-cache/dev-haskell/base-orphans-0.8.1
+++ b/metadata/md5-cache/dev-haskell/base-orphans-0.8.1
@@ -10,5 +10,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/0.8.1
 SRC_URI=mirror://hackage/packages/archive/base-orphans/0.8.1/base-orphans-0.8.1.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2b25dfbca8e43a2e635360eff43d0d0b
diff --git a/metadata/md5-cache/dev-haskell/cabal-1.24.2.0 b/metadata/md5-cache/dev-haskell/cabal-1.24.2.0
index a39bd4f..24ed88b 100644
--- a/metadata/md5-cache/dev-haskell/cabal-1.24.2.0
+++ b/metadata/md5-cache/dev-haskell/cabal-1.24.2.0
@@ -10,5 +10,5 @@
 RESTRICT=test
 SLOT=0/1.24.2.0
 SRC_URI=mirror://hackage/packages/archive/Cabal/1.24.2.0/Cabal-1.24.2.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b6acc3768eb3ef6b8ea1f572006d5470
diff --git a/metadata/md5-cache/dev-haskell/cabal-2.0.0.2 b/metadata/md5-cache/dev-haskell/cabal-2.0.0.2
index ae6d431..e744a83 100644
--- a/metadata/md5-cache/dev-haskell/cabal-2.0.0.2
+++ b/metadata/md5-cache/dev-haskell/cabal-2.0.0.2
@@ -10,5 +10,5 @@
 RESTRICT=test
 SLOT=0/2.0.0.2
 SRC_URI=https://hackage.haskell.org/package/Cabal-2.0.0.2/Cabal-2.0.0.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f84293787a1fe3abc58f3df2d1f5260f
diff --git a/metadata/md5-cache/dev-haskell/cabal-2.2.0.1 b/metadata/md5-cache/dev-haskell/cabal-2.2.0.1
index 19f0794..b02d13f 100644
--- a/metadata/md5-cache/dev-haskell/cabal-2.2.0.1
+++ b/metadata/md5-cache/dev-haskell/cabal-2.2.0.1
@@ -10,5 +10,5 @@
 RESTRICT=test
 SLOT=0/2.2.0.1
 SRC_URI=mirror://hackage/packages/archive/Cabal/2.2.0.1/Cabal-2.2.0.1.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d97a9ee8bd61374f0e25d4142b9e4494
diff --git a/metadata/md5-cache/dev-haskell/cabal-2.4.0.1 b/metadata/md5-cache/dev-haskell/cabal-2.4.0.1
index 8c75066..87e67cf 100644
--- a/metadata/md5-cache/dev-haskell/cabal-2.4.0.1
+++ b/metadata/md5-cache/dev-haskell/cabal-2.4.0.1
@@ -10,5 +10,5 @@
 RESTRICT=test
 SLOT=0/2.4.0.1
 SRC_URI=https://hackage.haskell.org/package/Cabal-2.4.0.1/Cabal-2.4.0.1.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=978ff80b4f399050e39816c61a87d3df
diff --git a/metadata/md5-cache/dev-haskell/contravariant-1.5.2 b/metadata/md5-cache/dev-haskell/contravariant-1.5.2
index da835e9..62c71ec 100644
--- a/metadata/md5-cache/dev-haskell/contravariant-1.5.2
+++ b/metadata/md5-cache/dev-haskell/contravariant-1.5.2
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-haskell/transformers-0.2:=[profile?] <dev-haskell/transformers-0.6:=[profile?] >=dev-haskell/transformers-compat-0.3:=[profile?] <dev-haskell/transformers-compat-1:=[profile?] >=dev-haskell/void-0.6:=[profile?] <dev-haskell/void-1:=[profile?] >=dev-lang/ghc-7.4.1:= semigroups? ( >=dev-haskell/semigroups-0.15.2:=[profile?] <dev-haskell/semigroups-1:=[profile?] ) statevar? ( >=dev-haskell/statevar-1.1:=[profile?] <dev-haskell/statevar-1.3:=[profile?] ) tagged? ( >=dev-haskell/tagged-0.4.4:=[profile?] <dev-haskell/tagged-1:=[profile?] )
 SLOT=0/1.5.2
 SRC_URI=mirror://hackage/packages/archive/contravariant/1.5.2/contravariant-1.5.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e225e95220bc4cc9abd9d162e4165c6f
diff --git a/metadata/md5-cache/dev-haskell/dlist-0.8.0.7 b/metadata/md5-cache/dev-haskell/dlist-0.8.0.7
index f903f71..a23f4c3 100644
--- a/metadata/md5-cache/dev-haskell/dlist-0.8.0.7
+++ b/metadata/md5-cache/dev-haskell/dlist-0.8.0.7
@@ -10,5 +10,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/0.8.0.7
 SRC_URI=mirror://hackage/packages/archive/dlist/0.8.0.7/dlist-0.8.0.7.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a0c7c078fb0ea6cebaa8aef5206a5671
diff --git a/metadata/md5-cache/dev-haskell/hashable-1.3.0.0 b/metadata/md5-cache/dev-haskell/hashable-1.3.0.0
index 26174ca..fc3238f 100644
--- a/metadata/md5-cache/dev-haskell/hashable-1.3.0.0
+++ b/metadata/md5-cache/dev-haskell/hashable-1.3.0.0
@@ -10,5 +10,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/1.3.0.0
 SRC_URI=mirror://hackage/packages/archive/hashable/1.3.0.0/hashable-1.3.0.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=083af3cbd4745f030d1841d2179ec55c
diff --git a/metadata/md5-cache/dev-haskell/hashable-time-0.2.0.2 b/metadata/md5-cache/dev-haskell/hashable-time-0.2.0.2
index 683f2d6..b338f0d 100644
--- a/metadata/md5-cache/dev-haskell/hashable-time-0.2.0.2
+++ b/metadata/md5-cache/dev-haskell/hashable-time-0.2.0.2
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-haskell/hashable-1.2.3.3:=[profile?] >=dev-haskell/old-locale-1.0:=[profile?] <dev-haskell/old-locale-1.1:=[profile?] >=dev-lang/ghc-7.8.2:=
 SLOT=0/0.2.0.2
 SRC_URI=mirror://hackage/packages/archive/hashable-time/0.2.0.2/hashable-time-0.2.0.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fcb18b8e6ebd476e6736f730a204bbda
diff --git a/metadata/md5-cache/dev-haskell/integer-logarithms-1.0.3 b/metadata/md5-cache/dev-haskell/integer-logarithms-1.0.3
index 298bcf3..e09c875 100644
--- a/metadata/md5-cache/dev-haskell/integer-logarithms-1.0.3
+++ b/metadata/md5-cache/dev-haskell/integer-logarithms-1.0.3
@@ -10,5 +10,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/1.0.3
 SRC_URI=mirror://hackage/packages/archive/integer-logarithms/1.0.3/integer-logarithms-1.0.3.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6da650c07905ba3b16b9097e0cfc9a59
diff --git a/metadata/md5-cache/dev-haskell/nats-1.1.2 b/metadata/md5-cache/dev-haskell/nats-1.1.2
index b9292d4..f1e4e0b 100644
--- a/metadata/md5-cache/dev-haskell/nats-1.1.2
+++ b/metadata/md5-cache/dev-haskell/nats-1.1.2
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-lang/ghc-7.4.1:= hashable? ( >=dev-haskell/hashable-1.1:=[profile?] <dev-haskell/hashable-1.4:=[profile?] )
 SLOT=0/1.1.2
 SRC_URI=mirror://hackage/packages/archive/nats/1.1.2/nats-1.1.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2516612db1d3584b2344d0e455b06867
diff --git a/metadata/md5-cache/dev-haskell/old-time-1.1.0.3-r1 b/metadata/md5-cache/dev-haskell/old-time-1.1.0.3-r1
index 76df34f..07f11d8 100644
--- a/metadata/md5-cache/dev-haskell/old-time-1.1.0.3-r1
+++ b/metadata/md5-cache/dev-haskell/old-time-1.1.0.3-r1
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-haskell/old-locale-1.0:=[profile?] <dev-haskell/old-locale-1.1:=[profile?] >=dev-lang/ghc-7.4.1:=
 SLOT=0/1.1.0.3
 SRC_URI=https://hackage.haskell.org/package/old-time-1.1.0.3/old-time-1.1.0.3.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=49907f84a24c9a8cee0398bd375b9e8f
diff --git a/metadata/md5-cache/dev-haskell/parsec-3.1.14.0 b/metadata/md5-cache/dev-haskell/parsec-3.1.14.0
index 36f3730..db2205e 100644
--- a/metadata/md5-cache/dev-haskell/parsec-3.1.14.0
+++ b/metadata/md5-cache/dev-haskell/parsec-3.1.14.0
@@ -10,5 +10,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/3.1.14.0
 SRC_URI=mirror://hackage/packages/archive/parsec/3.1.14.0/parsec-3.1.14.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=60503bf344eca2d71c48fd2ca460c5a8
diff --git a/metadata/md5-cache/dev-haskell/primitive-0.7.0.0 b/metadata/md5-cache/dev-haskell/primitive-0.7.0.0
index 3d2a9c2..2d8d2fe 100644
--- a/metadata/md5-cache/dev-haskell/primitive-0.7.0.0
+++ b/metadata/md5-cache/dev-haskell/primitive-0.7.0.0
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-lang/ghc-6.10.4:=
 SLOT=0/0.7.0.0
 SRC_URI=mirror://hackage/packages/archive/primitive/0.7.0.0/primitive-0.7.0.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c252e9c0668509b3efa2755003849867
diff --git a/metadata/md5-cache/dev-haskell/regex-tdfa-1.3.0 b/metadata/md5-cache/dev-haskell/regex-tdfa-1.3.0
index 8002fd7..84519e9 100644
--- a/metadata/md5-cache/dev-haskell/regex-tdfa-1.3.0
+++ b/metadata/md5-cache/dev-haskell/regex-tdfa-1.3.0
@@ -9,5 +9,5 @@
 RDEPEND=dev-haskell/mtl:=[profile?] dev-haskell/parsec:=[profile?] >=dev-haskell/regex-base-0.93.1:=[profile?] >=dev-lang/ghc-7.4.1:=
 SLOT=0/1.3.0
 SRC_URI=mirror://hackage/packages/archive/regex-tdfa/1.3.0/regex-tdfa-1.3.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e529eae28c2216a70486d77982ca6d03
diff --git a/metadata/md5-cache/dev-haskell/scientific-0.3.6.2 b/metadata/md5-cache/dev-haskell/scientific-0.3.6.2
index 984de21..fa6d1c0 100644
--- a/metadata/md5-cache/dev-haskell/scientific-0.3.6.2
+++ b/metadata/md5-cache/dev-haskell/scientific-0.3.6.2
@@ -10,5 +10,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/0.3.6.2
 SRC_URI=mirror://hackage/packages/archive/scientific/0.3.6.2/scientific-0.3.6.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=34e702ae4f2c80e4018ad2370584d088
diff --git a/metadata/md5-cache/dev-haskell/semigroups-0.19.1 b/metadata/md5-cache/dev-haskell/semigroups-0.19.1
index cb89748..3f26e83 100644
--- a/metadata/md5-cache/dev-haskell/semigroups-0.19.1
+++ b/metadata/md5-cache/dev-haskell/semigroups-0.19.1
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-haskell/bytestring-builder-0.10.4:=[profile?] <dev-haskell/bytestring-builder-1:=[profile?] >=dev-haskell/hashable-1.1:=[profile?] <dev-haskell/hashable-1.4:=[profile?] >=dev-haskell/nats-0.1:=[profile?] <dev-haskell/nats-2:=[profile?] >=dev-haskell/tagged-0.4.4:=[profile?] <dev-haskell/tagged-1:=[profile?] >=dev-haskell/text-0.10:=[profile?] <dev-haskell/text-2:=[profile?] >=dev-haskell/unordered-containers-0.2:=[profile?] <dev-haskell/unordered-containers-0.3:=[profile?] >=dev-lang/ghc-7.4.1:= binary? ( dev-haskell/binary:=[profile?] ) transformers? ( >=dev-haskell/transformers-0.2:=[profile?] <dev-haskell/transformers-0.6:=[profile?] )
 SLOT=0/0.19.1
 SRC_URI=mirror://hackage/packages/archive/semigroups/0.19.1/semigroups-0.19.1.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b3bc8a79678d122a39ef817e254f21ed
diff --git a/metadata/md5-cache/dev-haskell/statevar-1.2 b/metadata/md5-cache/dev-haskell/statevar-1.2
index ffbebb2..8ca2036 100644
--- a/metadata/md5-cache/dev-haskell/statevar-1.2
+++ b/metadata/md5-cache/dev-haskell/statevar-1.2
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-haskell/stm-2.0:=[profile?] <dev-haskell/stm-2.6:=[profile?] >=dev-haskell/transformers-0.2:=[profile?] <dev-haskell/transformers-0.6:=[profile?] >=dev-lang/ghc-7.4.1:=
 SLOT=0/1.2
 SRC_URI=mirror://hackage/packages/archive/StateVar/1.2/StateVar-1.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=316ee608d530e758ca56d4ee47a2ee2f
diff --git a/metadata/md5-cache/dev-haskell/stm-2.5.0.0 b/metadata/md5-cache/dev-haskell/stm-2.5.0.0
index 0d0fd42..75ed1e8 100644
--- a/metadata/md5-cache/dev-haskell/stm-2.5.0.0
+++ b/metadata/md5-cache/dev-haskell/stm-2.5.0.0
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-lang/ghc-7.4.1:=
 SLOT=0/2.5.0.0
 SRC_URI=mirror://hackage/packages/archive/stm/2.5.0.0/stm-2.5.0.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4ef4f1b3ab4555b02b7d2fcc446de5ff
diff --git a/metadata/md5-cache/dev-haskell/tagged-0.8.6 b/metadata/md5-cache/dev-haskell/tagged-0.8.6
index d189d64..2da3b22 100644
--- a/metadata/md5-cache/dev-haskell/tagged-0.8.6
+++ b/metadata/md5-cache/dev-haskell/tagged-0.8.6
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-lang/ghc-7.4.1:=
 SLOT=0/0.8.6
 SRC_URI=mirror://hackage/packages/archive/tagged/0.8.6/tagged-0.8.6.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0cf27210fd49981396913d428f74c190
diff --git a/metadata/md5-cache/dev-haskell/text-1.2.4.0 b/metadata/md5-cache/dev-haskell/text-1.2.4.0
index 64a961b..70ed577 100644
--- a/metadata/md5-cache/dev-haskell/text-1.2.4.0
+++ b/metadata/md5-cache/dev-haskell/text-1.2.4.0
@@ -10,5 +10,5 @@
 RESTRICT=test
 SLOT=0/1.2.4.0
 SRC_URI=mirror://hackage/packages/archive/text/1.2.4.0/text-1.2.4.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7157dad65ee185b7c9b031c624ab045f
diff --git a/metadata/md5-cache/dev-haskell/tf-random-0.5 b/metadata/md5-cache/dev-haskell/tf-random-0.5
index 8fbad89..1c00355 100644
--- a/metadata/md5-cache/dev-haskell/tf-random-0.5
+++ b/metadata/md5-cache/dev-haskell/tf-random-0.5
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-haskell/primitive-0.3:=[profile?] dev-haskell/random:=[profile?] >=dev-lang/ghc-7.4.1:=
 SLOT=0/0.5
 SRC_URI=mirror://hackage/packages/archive/tf-random/0.5/tf-random-0.5.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b1342b25d8248853e5f17e1b1a76e935
diff --git a/metadata/md5-cache/dev-haskell/th-abstraction-0.3.1.0 b/metadata/md5-cache/dev-haskell/th-abstraction-0.3.1.0
index 893476c..caff46f 100644
--- a/metadata/md5-cache/dev-haskell/th-abstraction-0.3.1.0
+++ b/metadata/md5-cache/dev-haskell/th-abstraction-0.3.1.0
@@ -10,5 +10,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/0.3.1.0
 SRC_URI=mirror://hackage/packages/archive/th-abstraction/0.3.1.0/th-abstraction-0.3.1.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=422b6841d4e6476584db48b0b5cd194e
diff --git a/metadata/md5-cache/dev-haskell/time-compat-1.9.2.2 b/metadata/md5-cache/dev-haskell/time-compat-1.9.2.2
index 3b410a3..140db7b 100644
--- a/metadata/md5-cache/dev-haskell/time-compat-1.9.2.2
+++ b/metadata/md5-cache/dev-haskell/time-compat-1.9.2.2
@@ -9,5 +9,5 @@
 RDEPEND=dev-haskell/old-time:=[profile?] >=dev-haskell/base-orphans-0.8.1:=[profile?] <dev-haskell/base-orphans-0.9:=[profile?] >=dev-lang/ghc-7.4.1:=
 SLOT=0/1.9.2.2
 SRC_URI=mirror://hackage/packages/archive/time-compat/1.9.2.2/time-compat-1.9.2.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4a91d0d7d1ec1ac55662cb18b0b9eb33
diff --git a/metadata/md5-cache/dev-haskell/transformers-0.5.6.2 b/metadata/md5-cache/dev-haskell/transformers-0.5.6.2
index 5586ab6..ba110b2 100644
--- a/metadata/md5-cache/dev-haskell/transformers-0.5.6.2
+++ b/metadata/md5-cache/dev-haskell/transformers-0.5.6.2
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-lang/ghc-7.4.1:=
 SLOT=0/0.5.6.2
 SRC_URI=mirror://hackage/packages/archive/transformers/0.5.6.2/transformers-0.5.6.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=246af7e55ccd8c115a277283a3b7a02c
diff --git a/metadata/md5-cache/dev-haskell/unordered-containers-0.2.10.0 b/metadata/md5-cache/dev-haskell/unordered-containers-0.2.10.0
index 8bc4081..7b81524 100644
--- a/metadata/md5-cache/dev-haskell/unordered-containers-0.2.10.0
+++ b/metadata/md5-cache/dev-haskell/unordered-containers-0.2.10.0
@@ -10,5 +10,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/0.2.10.0
 SRC_URI=mirror://hackage/packages/archive/unordered-containers/0.2.10.0/unordered-containers-0.2.10.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f88ad21b25bbd7cc5859dd9c9d372605
diff --git a/metadata/md5-cache/dev-haskell/uuid-types-1.0.3 b/metadata/md5-cache/dev-haskell/uuid-types-1.0.3
index 7029420..729de9c 100644
--- a/metadata/md5-cache/dev-haskell/uuid-types-1.0.3
+++ b/metadata/md5-cache/dev-haskell/uuid-types-1.0.3
@@ -10,5 +10,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/1.0.3
 SRC_URI=https://hackage.haskell.org/package/uuid-types-1.0.3/uuid-types-1.0.3.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=67ea7396b58cbdb6eabd95cebeb0cc86
diff --git a/metadata/md5-cache/dev-haskell/vector-0.12.0.3 b/metadata/md5-cache/dev-haskell/vector-0.12.0.3
index 11c0938..c4702d1 100644
--- a/metadata/md5-cache/dev-haskell/vector-0.12.0.3
+++ b/metadata/md5-cache/dev-haskell/vector-0.12.0.3
@@ -10,5 +10,5 @@
 RESTRICT=test
 SLOT=0/0.12.0.3
 SRC_URI=mirror://hackage/packages/archive/vector/0.12.0.3/vector-0.12.0.3.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e0692e6c2277c6f24ba4d13c26ab7f9b
diff --git a/metadata/md5-cache/dev-haskell/void-0.7.3 b/metadata/md5-cache/dev-haskell/void-0.7.3
index 7c40796..948bb96 100644
--- a/metadata/md5-cache/dev-haskell/void-0.7.3
+++ b/metadata/md5-cache/dev-haskell/void-0.7.3
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-haskell/hashable-1.1:=[profile?] >=dev-haskell/semigroups-0.8.2:=[profile?] >=dev-lang/ghc-7.4.1:=
 SLOT=0/0.7.3
 SRC_URI=mirror://hackage/packages/archive/void/0.7.3/void-0.7.3.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f768ebddf2f0de30f1bb6c8a6295a1ef
diff --git a/metadata/md5-cache/dev-lang/ghc-8.6.5 b/metadata/md5-cache/dev-lang/ghc-8.6.5
index 3a61ce1..f963ed3 100644
--- a/metadata/md5-cache/dev-lang/ghc-8.6.5
+++ b/metadata/md5-cache/dev-lang/ghc-8.6.5
@@ -12,5 +12,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/8.6.5
 SRC_URI=!binary? ( https://downloads.haskell.org/~ghc/8.6.5/ghc-8.6.5-src.tar.xz test? ( https://downloads.haskell.org/~ghc/8.6.5/ghc-8.6.5-testsuite.tar.xz ) ) !ghcbootstrap? ( amd64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-8.4.3-x86_64-pc-linux-gnu.tbz2 ) ppc64? ( !big-endian? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-8.6.5-powerpc64le-unknown-linux-gnu.tbz2 ) ) x86? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-8.6.5-i686-pc-linux-gnu.tbz2 ) )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	check-reqs	74c98e9a7b34b32be3548357852e9ec3	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	prefix	e51c7882b7b721e54e684f7eb143cbfe	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	check-reqs	74c98e9a7b34b32be3548357852e9ec3	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	prefix	e51c7882b7b721e54e684f7eb143cbfe	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
 _md5_=1ed9e4c2847d1ad30eae245994e215e2
diff --git a/metadata/md5-cache/dev-lang/ghc-8.6.5-r1 b/metadata/md5-cache/dev-lang/ghc-8.6.5-r1
index 3a61ce1..f963ed3 100644
--- a/metadata/md5-cache/dev-lang/ghc-8.6.5-r1
+++ b/metadata/md5-cache/dev-lang/ghc-8.6.5-r1
@@ -12,5 +12,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/8.6.5
 SRC_URI=!binary? ( https://downloads.haskell.org/~ghc/8.6.5/ghc-8.6.5-src.tar.xz test? ( https://downloads.haskell.org/~ghc/8.6.5/ghc-8.6.5-testsuite.tar.xz ) ) !ghcbootstrap? ( amd64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-8.4.3-x86_64-pc-linux-gnu.tbz2 ) ppc64? ( !big-endian? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-8.6.5-powerpc64le-unknown-linux-gnu.tbz2 ) ) x86? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-8.6.5-i686-pc-linux-gnu.tbz2 ) )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	check-reqs	74c98e9a7b34b32be3548357852e9ec3	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	prefix	e51c7882b7b721e54e684f7eb143cbfe	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	check-reqs	74c98e9a7b34b32be3548357852e9ec3	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	prefix	e51c7882b7b721e54e684f7eb143cbfe	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
 _md5_=1ed9e4c2847d1ad30eae245994e215e2
diff --git a/metadata/md5-cache/dev-lang/go-1.15.7 b/metadata/md5-cache/dev-lang/go-1.15.7
index f876e58..6e7d7aa 100644
--- a/metadata/md5-cache/dev-lang/go-1.15.7
+++ b/metadata/md5-cache/dev-lang/go-1.15.7
@@ -7,5 +7,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://storage.googleapis.com/golang/go1.15.7.src.tar.gz https://storage.googleapis.com/golang/go1.4-bootstrap-20170531.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9a48b7b8dcf89ee0139f5a759ee7f900
diff --git a/metadata/md5-cache/dev-lang/go-1.15.7-r2 b/metadata/md5-cache/dev-lang/go-1.15.7-r2
index f876e58..6e7d7aa 100644
--- a/metadata/md5-cache/dev-lang/go-1.15.7-r2
+++ b/metadata/md5-cache/dev-lang/go-1.15.7-r2
@@ -7,5 +7,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=https://storage.googleapis.com/golang/go1.15.7.src.tar.gz https://storage.googleapis.com/golang/go1.4-bootstrap-20170531.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9a48b7b8dcf89ee0139f5a759ee7f900
diff --git a/metadata/md5-cache/dev-lang/python-2.7.15 b/metadata/md5-cache/dev-lang/python-2.7.15
index da74b24..2eb9721 100644
--- a/metadata/md5-cache/dev-lang/python-2.7.15
+++ b/metadata/md5-cache/dev-lang/python-2.7.15
@@ -11,5 +11,5 @@
 REQUIRED_USE=pgo_generate? ( !pgo_use )
 SLOT=2.7
 SRC_URI=https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz https://dev.gentoo.org/~floppym/python/python-gentoo-patches-2.7.15.tar.xz pgo_use? ( gs://chromeos-localmirror/distfiles/python-2.7.15-pgo-prof.profdata.tar.xz )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=cc87f9697da95097009880325303f2a3
diff --git a/metadata/md5-cache/dev-lang/python-2.7.15-r9 b/metadata/md5-cache/dev-lang/python-2.7.15-r9
index da74b24..2eb9721 100644
--- a/metadata/md5-cache/dev-lang/python-2.7.15-r9
+++ b/metadata/md5-cache/dev-lang/python-2.7.15-r9
@@ -11,5 +11,5 @@
 REQUIRED_USE=pgo_generate? ( !pgo_use )
 SLOT=2.7
 SRC_URI=https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz https://dev.gentoo.org/~floppym/python/python-gentoo-patches-2.7.15.tar.xz pgo_use? ( gs://chromeos-localmirror/distfiles/python-2.7.15-pgo-prof.profdata.tar.xz )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=cc87f9697da95097009880325303f2a3
diff --git a/metadata/md5-cache/dev-lang/python-3.6.12 b/metadata/md5-cache/dev-lang/python-3.6.12
index 4836ff7..b3fd04b 100644
--- a/metadata/md5-cache/dev-lang/python-3.6.12
+++ b/metadata/md5-cache/dev-lang/python-3.6.12
@@ -13,5 +13,5 @@
 RESTRICT=!test? ( test )
 SLOT=3.6/3.6m
 SRC_URI=https://www.python.org/ftp/python/3.6.12/Python-3.6.12.tar.xz https://dev.gentoo.org/~mgorny/dist/python/python-gentoo-patches-3.6.12-r1.tar.xz pgo_use? ( gs://chromeos-localmirror/distfiles/python-3.6-profile.tar.xz )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=325530db3a1f7714dc036e50c1b72baf
diff --git a/metadata/md5-cache/dev-lang/python-3.6.12-r4 b/metadata/md5-cache/dev-lang/python-3.6.12-r4
deleted file mode 100644
index 4836ff7..0000000
--- a/metadata/md5-cache/dev-lang/python-3.6.12-r4
+++ /dev/null
@@ -1,17 +0,0 @@
-BDEPEND=>=app-portage/elt-patches-20170815
-DEFINED_PHASES=compile configure install postinst postrm preinst prepare test
-DEPEND=app-arch/bzip2:= app-arch/xz-utils:= dev-libs/libffi:= >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= virtual/libintl gdbm? ( sys-libs/gdbm:=[berkdb] ) ncurses? ( >=sys-libs/ncurses-5.2:= ) readline? ( >=sys-libs/readline-4.1:= ) sqlite? ( >=dev-db/sqlite-3.3.8:3= ) ssl? ( !libressl? ( dev-libs/openssl:= ) libressl? ( dev-libs/libressl:= ) ) tk? ( >=dev-lang/tcl-8.0:= >=dev-lang/tk-8.0:= dev-tcltk/blt:= dev-tcltk/tix ) xml? ( >=dev-libs/expat-2.1:= ) bluetooth? ( net-wireless/bluez ) test? ( app-arch/xz-utils[extra-filters(+)] ) virtual/pkgconfig !sys-devel/gcc[libffi(-)] !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69
-DESCRIPTION=An interpreted, interactive, object-oriented programming language
-EAPI=7
-HOMEPAGE=https://www.python.org/
-IUSE=bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test +threads tk wininst +xml pgo_generate +pgo_use
-KEYWORDS=*
-LICENSE=PSF-2
-PDEPEND=>=app-eselect/eselect-python-20140125-r1
-RDEPEND=app-arch/bzip2:= app-arch/xz-utils:= dev-libs/libffi:= >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= virtual/libintl gdbm? ( sys-libs/gdbm:=[berkdb] ) ncurses? ( >=sys-libs/ncurses-5.2:= ) readline? ( >=sys-libs/readline-4.1:= ) sqlite? ( >=dev-db/sqlite-3.3.8:3= ) ssl? ( !libressl? ( dev-libs/openssl:= ) libressl? ( dev-libs/libressl:= ) ) tk? ( >=dev-lang/tcl-8.0:= >=dev-lang/tk-8.0:= dev-tcltk/blt:= dev-tcltk/tix ) xml? ( >=dev-libs/expat-2.1:= ) !build? ( app-misc/mime-types )
-REQUIRED_USE=pgo_generate? ( !pgo_use )
-RESTRICT=!test? ( test )
-SLOT=3.6/3.6m
-SRC_URI=https://www.python.org/ftp/python/3.6.12/Python-3.6.12.tar.xz https://dev.gentoo.org/~mgorny/dist/python/python-gentoo-patches-3.6.12-r1.tar.xz pgo_use? ( gs://chromeos-localmirror/distfiles/python-3.6-profile.tar.xz )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=325530db3a1f7714dc036e50c1b72baf
diff --git a/metadata/md5-cache/dev-lang/python-3.6.12-r5 b/metadata/md5-cache/dev-lang/python-3.6.12-r5
new file mode 100644
index 0000000..b3fd04b
--- /dev/null
+++ b/metadata/md5-cache/dev-lang/python-3.6.12-r5
@@ -0,0 +1,17 @@
+BDEPEND=>=app-portage/elt-patches-20170815
+DEFINED_PHASES=compile configure install postinst postrm preinst prepare test
+DEPEND=app-arch/bzip2:= app-arch/xz-utils:= dev-libs/libffi:= >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= virtual/libintl gdbm? ( sys-libs/gdbm:=[berkdb] ) ncurses? ( >=sys-libs/ncurses-5.2:= ) readline? ( >=sys-libs/readline-4.1:= ) sqlite? ( >=dev-db/sqlite-3.3.8:3= ) ssl? ( !libressl? ( dev-libs/openssl:= ) libressl? ( dev-libs/libressl:= ) ) tk? ( >=dev-lang/tcl-8.0:= >=dev-lang/tk-8.0:= dev-tcltk/blt:= dev-tcltk/tix ) xml? ( >=dev-libs/expat-2.1:= ) bluetooth? ( net-wireless/bluez ) test? ( app-arch/xz-utils[extra-filters(+)] ) virtual/pkgconfig !sys-devel/gcc[libffi(-)] !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69
+DESCRIPTION=An interpreted, interactive, object-oriented programming language
+EAPI=7
+HOMEPAGE=https://www.python.org/
+IUSE=bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test +threads tk wininst +xml pgo_generate +pgo_use
+KEYWORDS=*
+LICENSE=PSF-2
+PDEPEND=>=app-eselect/eselect-python-20140125-r1
+RDEPEND=app-arch/bzip2:= app-arch/xz-utils:= dev-libs/libffi:= >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= virtual/libintl gdbm? ( sys-libs/gdbm:=[berkdb] ) ncurses? ( >=sys-libs/ncurses-5.2:= ) readline? ( >=sys-libs/readline-4.1:= ) sqlite? ( >=dev-db/sqlite-3.3.8:3= ) ssl? ( !libressl? ( dev-libs/openssl:= ) libressl? ( dev-libs/libressl:= ) ) tk? ( >=dev-lang/tcl-8.0:= >=dev-lang/tk-8.0:= dev-tcltk/blt:= dev-tcltk/tix ) xml? ( >=dev-libs/expat-2.1:= ) !build? ( app-misc/mime-types )
+REQUIRED_USE=pgo_generate? ( !pgo_use )
+RESTRICT=!test? ( test )
+SLOT=3.6/3.6m
+SRC_URI=https://www.python.org/ftp/python/3.6.12/Python-3.6.12.tar.xz https://dev.gentoo.org/~mgorny/dist/python/python-gentoo-patches-3.6.12-r1.tar.xz pgo_use? ( gs://chromeos-localmirror/distfiles/python-3.6-profile.tar.xz )
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=325530db3a1f7714dc036e50c1b72baf
diff --git a/metadata/md5-cache/dev-lang/rust-1.47.0-r7 b/metadata/md5-cache/dev-lang/rust-1.47.0-r7
deleted file mode 100644
index dfe08e3..0000000
--- a/metadata/md5-cache/dev-lang/rust-1.47.0-r7
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND==dev-lang/rust-bootstrap-1.46.0
-DEFINED_PHASES=compile configure install prepare setup
-DEPEND=|| ( >=dev-lang/python-2.7.5-r2:2.7 ) >=dev-libs/libxml2-2.9.6 >=dev-lang/perl-5.0
-DESCRIPTION=Systems programming language from Mozilla
-EAPI=7
-HOMEPAGE=http://www.rust-lang.org/
-KEYWORDS=*
-LICENSE=|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA
-RDEPEND=!dev-util/cargo
-REQUIRED_USE=amd64
-RESTRICT=binchecks strip
-SLOT=stable/1.47
-SRC_URI=https://static.rust-lang.org/dist/rustc-1.47.0-src.tar.gz -> rustc-1.47.0-src.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=64ea42ccc6ce20cb9338e7b922fadc5f
diff --git a/metadata/md5-cache/dev-lang/rust-1.51.0 b/metadata/md5-cache/dev-lang/rust-1.51.0
deleted file mode 100644
index 7db6c40..0000000
--- a/metadata/md5-cache/dev-lang/rust-1.51.0
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-lang/rust-bootstrap:1.50.0
-DEFINED_PHASES=compile configure install prepare setup
-DEPEND=|| ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) >=dev-libs/libxml2-2.9.6 >=dev-lang/perl-5.0
-DESCRIPTION=Systems programming language from Mozilla
-EAPI=7
-HOMEPAGE=http://www.rust-lang.org/
-KEYWORDS=*
-LICENSE=|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA
-RDEPEND=!dev-util/cargo
-REQUIRED_USE=amd64
-RESTRICT=binchecks strip
-SLOT=stable/1.51
-SRC_URI=https://static.rust-lang.org/dist/rustc-1.51.0-src.tar.gz -> rustc-1.51.0-src.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=c38d176a5b743e5ae07929c2e6b4a4d4
diff --git a/metadata/md5-cache/dev-lang/rust-1.55.0 b/metadata/md5-cache/dev-lang/rust-1.55.0
new file mode 100644
index 0000000..3461757
--- /dev/null
+++ b/metadata/md5-cache/dev-lang/rust-1.55.0
@@ -0,0 +1,15 @@
+BDEPEND=dev-lang/rust-bootstrap:1.54.0
+DEFINED_PHASES=compile configure install prepare setup
+DEPEND=|| ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) >=dev-libs/libxml2-2.9.6 >=dev-lang/perl-5.0
+DESCRIPTION=Systems programming language from Mozilla
+EAPI=7
+HOMEPAGE=http://www.rust-lang.org/
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA
+RDEPEND=!dev-util/cargo
+REQUIRED_USE=amd64
+RESTRICT=binchecks strip
+SLOT=stable/1.55
+SRC_URI=https://static.rust-lang.org/dist/rustc-1.55.0-src.tar.gz -> rustc-1.55.0-src.tar.gz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7cb1b718d7974cafa332850d46046471
diff --git a/metadata/md5-cache/dev-lang/rust-bootstrap-1.46.0 b/metadata/md5-cache/dev-lang/rust-bootstrap-1.46.0
deleted file mode 100644
index 1170eb3..0000000
--- a/metadata/md5-cache/dev-lang/rust-bootstrap-1.46.0
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup unpack
-DEPEND=dev-libs/openssl net-libs/libssh2
-DESCRIPTION=Bootstraps the rustc Rust compiler using mrustc
-EAPI=7
-HOMEPAGE=https://github.com/thepowersgang/mrustc
-IUSE=-fullbootstrap
-KEYWORDS=*
-LICENSE=MIT Apache-2.0 BSD-1 BSD-2 BSD-4 UoI-NCSA
-RDEPEND=dev-libs/openssl net-libs/libssh2
-RESTRICT=binchecks strip
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/rustc-1.46.0-src.tar.gz !fullbootstrap? ( gs://chromeos-localmirror/distfiles/rust-bootstrap-1.45.2.tbz2 ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/mrustc-0.9.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.29.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.30.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.31.1-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.32.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.33.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.34.2-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.35.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.36.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.37.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.38.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.39.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.40.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.41.1-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.42.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.43.1-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.44.1-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.45.2-src.tar.gz )
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b30be5c0d049dcf76170186883ddb481
diff --git a/metadata/md5-cache/dev-lang/rust-bootstrap-1.50.0 b/metadata/md5-cache/dev-lang/rust-bootstrap-1.50.0
deleted file mode 100644
index 59050d8..0000000
--- a/metadata/md5-cache/dev-lang/rust-bootstrap-1.50.0
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup unpack
-DEPEND=dev-libs/openssl net-libs/libssh2
-DESCRIPTION=Bootstraps the rustc Rust compiler using mrustc
-EAPI=7
-HOMEPAGE=https://github.com/thepowersgang/mrustc
-IUSE=-fullbootstrap
-KEYWORDS=*
-LICENSE=MIT Apache-2.0 BSD-1 BSD-2 BSD-4 UoI-NCSA
-RDEPEND=dev-libs/openssl net-libs/libssh2
-RESTRICT=binchecks strip
-SLOT=1.50.0
-SRC_URI=gs://chromeos-localmirror/distfiles/rustc-1.50.0-src.tar.gz !fullbootstrap? ( gs://chromeos-localmirror/distfiles/rust-bootstrap-1.49.0.tbz2 ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/mrustc-0.9.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.29.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.30.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.31.1-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.32.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.33.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.34.2-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.35.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.36.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.37.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.38.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.39.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.40.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.41.1-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.42.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.43.1-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.44.1-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.45.2-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.46.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.47.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.48.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.49.0-src.tar.gz )
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=da489fe557c5fa1b65c5231d871f506d
diff --git a/metadata/md5-cache/dev-lang/rust-bootstrap-1.54.0 b/metadata/md5-cache/dev-lang/rust-bootstrap-1.54.0
new file mode 100644
index 0000000..3b88019
--- /dev/null
+++ b/metadata/md5-cache/dev-lang/rust-bootstrap-1.54.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install prepare setup unpack
+DEPEND=dev-libs/openssl net-libs/libssh2
+DESCRIPTION=Bootstraps the rustc Rust compiler using mrustc
+EAPI=7
+HOMEPAGE=https://github.com/thepowersgang/mrustc
+IUSE=-fullbootstrap
+KEYWORDS=*
+LICENSE=MIT Apache-2.0 BSD-1 BSD-2 BSD-4 UoI-NCSA
+RDEPEND=dev-libs/openssl net-libs/libssh2
+RESTRICT=binchecks strip
+SLOT=1.54.0
+SRC_URI=gs://chromeos-localmirror/distfiles/rustc-1.54.0-src.tar.gz !fullbootstrap? ( gs://chromeos-localmirror/distfiles/rust-bootstrap-1.53.0.tbz2 ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/mrustc-0.9.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.29.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.30.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.31.1-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.32.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.33.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.34.2-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.35.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.36.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.37.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.38.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.39.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.40.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.41.1-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.42.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.43.1-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.44.1-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.45.2-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.46.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.47.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.48.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.49.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.50.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.51.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.52.0-src.tar.gz ) fullbootstrap? ( gs://chromeos-localmirror/distfiles/rustc-1.53.0-src.tar.gz )
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9060bbe267168c8384f9f91b9812238d
diff --git a/metadata/md5-cache/dev-libs/arc-libelf-0.8.13-r2 b/metadata/md5-cache/dev-libs/arc-libelf-0.8.13-r2
index 5aa004a..585138a 100644
--- a/metadata/md5-cache/dev-libs/arc-libelf-0.8.13-r2
+++ b/metadata/md5-cache/dev-libs/arc-libelf-0.8.13-r2
@@ -10,5 +10,5 @@
 REQUIRED_USE=cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0
 SRC_URI=http://www.mr511.de/software/libelf-0.8.13.tar.gz
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3616d6e4d1c2e432b2361deb7e55e369
diff --git a/metadata/md5-cache/dev-libs/c-tap-harness-4.5 b/metadata/md5-cache/dev-libs/c-tap-harness-4.5
index 967de29..56df581 100644
--- a/metadata/md5-cache/dev-libs/c-tap-harness-4.5
+++ b/metadata/md5-cache/dev-libs/c-tap-harness-4.5
@@ -6,5 +6,5 @@
 LICENSE=MIT
 SLOT=0
 SRC_URI=https://archives.eyrie.org/software/devel/c-tap-harness-4.5.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=acc9b3bc2b4cd356c9aba42e8d58e1f5
diff --git a/metadata/md5-cache/dev-libs/closure_linter-2.3.13 b/metadata/md5-cache/dev-libs/closure_linter-2.3.13
index 2c640e4..545f6f1 100644
--- a/metadata/md5-cache/dev-libs/closure_linter-2.3.13
+++ b/metadata/md5-cache/dev-libs/closure_linter-2.3.13
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
 SRC_URI=http://closure-linter.googlecode.com/files/closure_linter-2.3.13.tar.gz -> closure_linter-2.3.13.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=69d94aeb0e4bcbfcd63298379734bd45
diff --git a/metadata/md5-cache/dev-libs/closure_linter-2.3.13-r2 b/metadata/md5-cache/dev-libs/closure_linter-2.3.13-r2
index 2c640e4..545f6f1 100644
--- a/metadata/md5-cache/dev-libs/closure_linter-2.3.13-r2
+++ b/metadata/md5-cache/dev-libs/closure_linter-2.3.13-r2
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
 SRC_URI=http://closure-linter.googlecode.com/files/closure_linter-2.3.13.tar.gz -> closure_linter-2.3.13.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=69d94aeb0e4bcbfcd63298379734bd45
diff --git a/metadata/md5-cache/dev-libs/double-conversion-3.1.5 b/metadata/md5-cache/dev-libs/double-conversion-3.1.5
index 4b64b92..97c53ca 100644
--- a/metadata/md5-cache/dev-libs/double-conversion-3.1.5
+++ b/metadata/md5-cache/dev-libs/double-conversion-3.1.5
@@ -7,5 +7,5 @@
 LICENSE=BSD
 SLOT=0/3
 SRC_URI=https://github.com/google/double-conversion/archive/v3.1.5.tar.gz -> double-conversion-3.1.5.tar.gz
-_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=38011d3d4272a02832e457230c24dc50
diff --git a/metadata/md5-cache/dev-libs/double-conversion-3.1.5-r1 b/metadata/md5-cache/dev-libs/double-conversion-3.1.5-r1
index 4b64b92..97c53ca 100644
--- a/metadata/md5-cache/dev-libs/double-conversion-3.1.5-r1
+++ b/metadata/md5-cache/dev-libs/double-conversion-3.1.5-r1
@@ -7,5 +7,5 @@
 LICENSE=BSD
 SLOT=0/3
 SRC_URI=https://github.com/google/double-conversion/archive/v3.1.5.tar.gz -> double-conversion-3.1.5.tar.gz
-_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=38011d3d4272a02832e457230c24dc50
diff --git a/metadata/md5-cache/dev-libs/glib-2.66.7-r2 b/metadata/md5-cache/dev-libs/glib-2.66.7-r2
deleted file mode 100644
index a457499..0000000
--- a/metadata/md5-cache/dev-libs/glib-2.66.7-r2
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=doc? ( app-text/docbook-xsl-stylesheets dev-libs/libxslt ) >=sys-devel/gettext-0.19.8 gtk-doc? ( >=dev-util/gtk-doc-1.33 app-text/docbook-xml-dtd:4.2 app-text/docbook-xml-dtd:4.5 ) systemtap? ( >=dev-util/systemtap-1.3 ) || ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) test? ( >=sys-apps/dbus-1.2.14 ) virtual/pkgconfig app-arch/xz-utils >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
-DEFINED_PHASES=compile configure install postinst postrm preinst prepare setup test
-DEPEND=!<dev-util/gdbus-codegen-2.66.7 >=virtual/libiconv-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-libs/libpcre-8.31:3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?,static-libs?] >=virtual/libffi-3.0.13-r1:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/zlib-1.2.8-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=virtual/libintl-0-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] kernel_linux? ( >=sys-apps/util-linux-2.23[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) selinux? ( >=sys-libs/libselinux-2.2.2-r5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xattr? ( !elibc_glibc? ( >=sys-apps/attr-2.4.47-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) cros_host? ( virtual/libelf:0= ) fam? ( >=virtual/fam-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sysprof? ( >=dev-util/sysprof-capture-3.38:4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
-DESCRIPTION=The GLib library of C routines
-EAPI=7
-HOMEPAGE=https://www.gtk.org/
-IUSE=cros_host dbus debug doc elibc_glibc fam gtk-doc kernel_linux +mime selinux static-libs sysprof systemtap test utils xattr kernel_linux abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=LGPL-2.1+
-PDEPEND=dbus? ( gnome-base/dconf ) mime? ( x11-misc/shared-mime-info )
-RDEPEND=!<dev-util/gdbus-codegen-2.66.7 >=virtual/libiconv-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-libs/libpcre-8.31:3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?,static-libs?] >=virtual/libffi-3.0.13-r1:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/zlib-1.2.8-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=virtual/libintl-0-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] kernel_linux? ( >=sys-apps/util-linux-2.23[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) selinux? ( >=sys-libs/libselinux-2.2.2-r5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xattr? ( !elibc_glibc? ( >=sys-apps/attr-2.4.47-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) cros_host? ( virtual/libelf:0= ) fam? ( >=virtual/fam-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sysprof? ( >=dev-util/sysprof-capture-3.38:4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
-RESTRICT=!test? ( test )
-SLOT=2
-SRC_URI=mirror://gnome/sources/glib/2.66/glib-2.66.7.tar.xz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	gnome2-utils	893e828f0f25f070f0b38d20c83c7670	linux-info	327865b9921771330775d971263dc234	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=3a6c86255b1a3249a01072eb270ed2b7
diff --git a/metadata/md5-cache/dev-libs/glib-2.68.3-r2 b/metadata/md5-cache/dev-libs/glib-2.68.3-r2
new file mode 100644
index 0000000..da6e2cb
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/glib-2.68.3-r2
@@ -0,0 +1,17 @@
+BDEPEND=doc? ( app-text/docbook-xsl-stylesheets dev-libs/libxslt ) >=sys-devel/gettext-0.19.8 gtk-doc? ( >=dev-util/gtk-doc-1.33 app-text/docbook-xml-dtd:4.2 app-text/docbook-xml-dtd:4.5 ) systemtap? ( >=dev-util/systemtap-1.3 ) || ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) test? ( >=sys-apps/dbus-1.2.14 ) virtual/pkgconfig app-arch/xz-utils >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEFINED_PHASES=compile configure install postinst postrm preinst prepare setup test
+DEPEND=!<dev-util/gdbus-codegen-2.68.3 >=virtual/libiconv-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-libs/libpcre-8.31:3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?,static-libs?] >=dev-libs/libffi-3.0.13-r1:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/zlib-1.2.8-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=virtual/libintl-0-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] kernel_linux? ( >=sys-apps/util-linux-2.23[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) selinux? ( >=sys-libs/libselinux-2.2.2-r5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xattr? ( !elibc_glibc? ( >=sys-apps/attr-2.4.47-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) cros_host? ( virtual/libelf:0= ) fam? ( >=virtual/fam-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sysprof? ( >=dev-util/sysprof-capture-3.40.1:4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
+DESCRIPTION=The GLib library of C routines
+EAPI=7
+HOMEPAGE=https://www.gtk.org/
+IUSE=cros_host dbus debug doc elibc_glibc fam gtk-doc kernel_linux +mime selinux static-libs sysprof systemtap test utils xattr kernel_linux abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=LGPL-2.1+
+PDEPEND=dbus? ( gnome-base/dconf ) mime? ( x11-misc/shared-mime-info )
+RDEPEND=!<dev-util/gdbus-codegen-2.68.3 >=virtual/libiconv-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-libs/libpcre-8.31:3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?,static-libs?] >=dev-libs/libffi-3.0.13-r1:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/zlib-1.2.8-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=virtual/libintl-0-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] kernel_linux? ( >=sys-apps/util-linux-2.23[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) selinux? ( >=sys-libs/libselinux-2.2.2-r5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xattr? ( !elibc_glibc? ( >=sys-apps/attr-2.4.47-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) cros_host? ( virtual/libelf:0= ) fam? ( >=virtual/fam-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sysprof? ( >=dev-util/sysprof-capture-3.40.1:4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
+REQUIRED_USE=gtk-doc? ( test )
+RESTRICT=!test? ( test )
+SLOT=2
+SRC_URI=mirror://gnome/sources/glib/2.68/glib-2.68.3.tar.xz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	gnome2-utils	893e828f0f25f070f0b38d20c83c7670	linux-info	327865b9921771330775d971263dc234	meson	5ec14fdbc5446b8767e87e186e3b1a52	meson-multilib	485215fef459a86936e377c0eaa513a0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=00fa89e60858fd462b19bf9c8f4e3ed5
diff --git a/metadata/md5-cache/dev-libs/gobject-introspection-1.68.0 b/metadata/md5-cache/dev-libs/gobject-introspection-1.68.0
new file mode 100644
index 0000000..6ad8657
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/gobject-introspection-1.68.0
@@ -0,0 +1,16 @@
+BDEPEND=!cros_host? ( >=dev-libs/gobject-introspection-1.68.0 app-emulation/qemu ) app-arch/xz-utils >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEFINED_PHASES=compile configure install postinst postrm preinst prepare setup test
+DEPEND=>=dev-libs/gobject-introspection-common-1.68.0 >=dev-libs/glib-2.58.0:2 dev-libs/libffi:= doctool? ( python_single_target_python3_6? ( dev-python/mako[python_targets_python3_6(-)] dev-python/markdown[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/mako[python_targets_python3_7(-)] dev-python/markdown[python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-python/mako[python_targets_python3_8(-)] dev-python/markdown[python_targets_python3_8(-)] ) python_single_target_python3_9? ( dev-python/mako[python_targets_python3_9(-)] dev-python/markdown[python_targets_python3_9(-)] ) ) virtual/pkgconfig python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] ) gtk-doc? ( >=dev-util/gtk-doc-1.19 app-text/docbook-xml-dtd:4.3 app-text/docbook-xml-dtd:4.5 ) sys-devel/bison sys-devel/flex test? ( x11-libs/cairo[glib] python_single_target_python3_6? ( dev-python/mako[python_targets_python3_6(-)] dev-python/markdown[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/mako[python_targets_python3_7(-)] dev-python/markdown[python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-python/mako[python_targets_python3_8(-)] dev-python/markdown[python_targets_python3_8(-)] ) python_single_target_python3_9? ( dev-python/mako[python_targets_python3_9(-)] dev-python/markdown[python_targets_python3_9(-)] ) ) dev-util/desktop-file-utils x11-misc/shared-mime-info
+DESCRIPTION=Introspection system for GObject-based libraries
+EAPI=7
+HOMEPAGE=https://wiki.gnome.org/Projects/GObjectIntrospection
+IUSE=cros_host doctool gtk-doc test python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
+KEYWORDS=*
+LICENSE=LGPL-2+ GPL-2+
+RDEPEND=>=dev-libs/gobject-introspection-common-1.68.0 >=dev-libs/glib-2.58.0:2 dev-libs/libffi:= doctool? ( python_single_target_python3_6? ( dev-python/mako[python_targets_python3_6(-)] dev-python/markdown[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/mako[python_targets_python3_7(-)] dev-python/markdown[python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-python/mako[python_targets_python3_8(-)] dev-python/markdown[python_targets_python3_8(-)] ) python_single_target_python3_9? ( dev-python/mako[python_targets_python3_9(-)] dev-python/markdown[python_targets_python3_9(-)] ) ) virtual/pkgconfig python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] )
+REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=mirror://gnome/sources/gobject-introspection/1.68/gobject-introspection-1.68.0.tar.xz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=b5ddc2829386ed33d15e5cf9e2c880f3
diff --git a/metadata/md5-cache/dev-libs/gobject-introspection-1.68.0-r2 b/metadata/md5-cache/dev-libs/gobject-introspection-1.68.0-r2
new file mode 100644
index 0000000..6ad8657
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/gobject-introspection-1.68.0-r2
@@ -0,0 +1,16 @@
+BDEPEND=!cros_host? ( >=dev-libs/gobject-introspection-1.68.0 app-emulation/qemu ) app-arch/xz-utils >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEFINED_PHASES=compile configure install postinst postrm preinst prepare setup test
+DEPEND=>=dev-libs/gobject-introspection-common-1.68.0 >=dev-libs/glib-2.58.0:2 dev-libs/libffi:= doctool? ( python_single_target_python3_6? ( dev-python/mako[python_targets_python3_6(-)] dev-python/markdown[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/mako[python_targets_python3_7(-)] dev-python/markdown[python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-python/mako[python_targets_python3_8(-)] dev-python/markdown[python_targets_python3_8(-)] ) python_single_target_python3_9? ( dev-python/mako[python_targets_python3_9(-)] dev-python/markdown[python_targets_python3_9(-)] ) ) virtual/pkgconfig python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] ) gtk-doc? ( >=dev-util/gtk-doc-1.19 app-text/docbook-xml-dtd:4.3 app-text/docbook-xml-dtd:4.5 ) sys-devel/bison sys-devel/flex test? ( x11-libs/cairo[glib] python_single_target_python3_6? ( dev-python/mako[python_targets_python3_6(-)] dev-python/markdown[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/mako[python_targets_python3_7(-)] dev-python/markdown[python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-python/mako[python_targets_python3_8(-)] dev-python/markdown[python_targets_python3_8(-)] ) python_single_target_python3_9? ( dev-python/mako[python_targets_python3_9(-)] dev-python/markdown[python_targets_python3_9(-)] ) ) dev-util/desktop-file-utils x11-misc/shared-mime-info
+DESCRIPTION=Introspection system for GObject-based libraries
+EAPI=7
+HOMEPAGE=https://wiki.gnome.org/Projects/GObjectIntrospection
+IUSE=cros_host doctool gtk-doc test python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
+KEYWORDS=*
+LICENSE=LGPL-2+ GPL-2+
+RDEPEND=>=dev-libs/gobject-introspection-common-1.68.0 >=dev-libs/glib-2.58.0:2 dev-libs/libffi:= doctool? ( python_single_target_python3_6? ( dev-python/mako[python_targets_python3_6(-)] dev-python/markdown[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/mako[python_targets_python3_7(-)] dev-python/markdown[python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-python/mako[python_targets_python3_8(-)] dev-python/markdown[python_targets_python3_8(-)] ) python_single_target_python3_9? ( dev-python/mako[python_targets_python3_9(-)] dev-python/markdown[python_targets_python3_9(-)] ) ) virtual/pkgconfig python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] )
+REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=mirror://gnome/sources/gobject-introspection/1.68/gobject-introspection-1.68.0.tar.xz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=b5ddc2829386ed33d15e5cf9e2c880f3
diff --git a/metadata/md5-cache/dev-libs/gobject-introspection-common-1.68.0 b/metadata/md5-cache/dev-libs/gobject-introspection-common-1.68.0
new file mode 100644
index 0000000..fc22d9741
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/gobject-introspection-common-1.68.0
@@ -0,0 +1,12 @@
+BDEPEND=app-arch/xz-utils
+DEFINED_PHASES=compile configure install
+DESCRIPTION=Build infrastructure for GObject Introspection
+EAPI=7
+HOMEPAGE=https://wiki.gnome.org/Projects/GObjectIntrospection
+KEYWORDS=*
+LICENSE=HPND
+RDEPEND=!<dev-libs/gobject-introspection-1.68.0
+SLOT=0
+SRC_URI=mirror://gnome/sources/gobject-introspection/1.68/gobject-introspection-1.68.0.tar.xz
+_eclasses_=gnome.org	532d56d07b9eace4831aaa817d2b756a
+_md5_=bf98c7e1b016eee334b95d6349e9de4a
diff --git a/metadata/md5-cache/dev-libs/libdivsufsort-2.0.1 b/metadata/md5-cache/dev-libs/libdivsufsort-2.0.1
index 9cb05aa5..9edd8ee 100644
--- a/metadata/md5-cache/dev-libs/libdivsufsort-2.0.1
+++ b/metadata/md5-cache/dev-libs/libdivsufsort-2.0.1
@@ -7,5 +7,5 @@
 LICENSE=MIT
 SLOT=0
 SRC_URI=https://github.com/y-256/libdivsufsort/archive/2.0.1.tar.gz -> libdivsufsort-2.0.1.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=afff22a36a688d32a32136de7b94ba54
diff --git a/metadata/md5-cache/dev-libs/libdivsufsort-2.0.1-r2 b/metadata/md5-cache/dev-libs/libdivsufsort-2.0.1-r2
index 9cb05aa5..9edd8ee 100644
--- a/metadata/md5-cache/dev-libs/libdivsufsort-2.0.1-r2
+++ b/metadata/md5-cache/dev-libs/libdivsufsort-2.0.1-r2
@@ -7,5 +7,5 @@
 LICENSE=MIT
 SLOT=0
 SRC_URI=https://github.com/y-256/libdivsufsort/archive/2.0.1.tar.gz -> libdivsufsort-2.0.1.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=afff22a36a688d32a32136de7b94ba54
diff --git a/metadata/md5-cache/dev-libs/libevent-2.1.8 b/metadata/md5-cache/dev-libs/libevent-2.1.8
index 56dcaf1..d94ebd2 100644
--- a/metadata/md5-cache/dev-libs/libevent-2.1.8
+++ b/metadata/md5-cache/dev-libs/libevent-2.1.8
@@ -9,5 +9,5 @@
 RDEPEND=ssl? ( !libressl? ( >=dev-libs/openssl-1.0.1h-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libressl? ( dev-libs/libressl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) !<=dev-libs/9libs-1.0
 SLOT=0/2.1-6
 SRC_URI=https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz -> libevent-2.1.8.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4c6cc22ff59d0c61a0021ea23c699782
diff --git a/metadata/md5-cache/dev-libs/libevent-2.1.8-r2 b/metadata/md5-cache/dev-libs/libevent-2.1.8-r2
index 56dcaf1..d94ebd2 100644
--- a/metadata/md5-cache/dev-libs/libevent-2.1.8-r2
+++ b/metadata/md5-cache/dev-libs/libevent-2.1.8-r2
@@ -9,5 +9,5 @@
 RDEPEND=ssl? ( !libressl? ( >=dev-libs/openssl-1.0.1h-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libressl? ( dev-libs/libressl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) !<=dev-libs/9libs-1.0
 SLOT=0/2.1-6
 SRC_URI=https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz -> libevent-2.1.8.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4c6cc22ff59d0c61a0021ea23c699782
diff --git a/metadata/md5-cache/dev-libs/libffi-3.1-r8 b/metadata/md5-cache/dev-libs/libffi-3.1-r8
index af0682e..90e58f6 100644
--- a/metadata/md5-cache/dev-libs/libffi-3.1-r8
+++ b/metadata/md5-cache/dev-libs/libffi-3.1-r8
@@ -9,5 +9,5 @@
 RDEPEND=abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r1 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )
 SLOT=0
 SRC_URI=ftp://sourceware.org/pub/libffi/libffi-3.1.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=85f8470e865ae421c3a52453afdeadc6
diff --git a/metadata/md5-cache/dev-libs/libgit2-1.0.2_pre20200908-r1 b/metadata/md5-cache/dev-libs/libgit2-1.0.2_pre20200908-r1
index 51d4882..0c57408 100644
--- a/metadata/md5-cache/dev-libs/libgit2-1.0.2_pre20200908-r1
+++ b/metadata/md5-cache/dev-libs/libgit2-1.0.2_pre20200908-r1
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/1.0.2_pre20200908-r1
 SRC_URI=https://github.com/libgit2/libgit2/archive/1e987525b3bd86fc29e7ff67d973861efd22faf7.tar.gz -> libgit2-1.0.2_pre20200908.tar.gz
-_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=2dcf6650ce28083276746bcf7df84231
diff --git a/metadata/md5-cache/dev-libs/libgrammar-0.0.4 b/metadata/md5-cache/dev-libs/libgrammar-0.0.4
deleted file mode 100644
index 5189003..0000000
--- a/metadata/md5-cache/dev-libs/libgrammar-0.0.4
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Google grammar check library for Chrome OS
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os
-IUSE=ondevice_grammar
-KEYWORDS=*
-LICENSE=BSD-Google
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/libgrammar-0.0.4.tar.gz
-_md5_=d2a225a0a3f1b5c405c8be6c6e1f95d0
diff --git a/metadata/md5-cache/dev-libs/libgrammar-0.0.4-r1 b/metadata/md5-cache/dev-libs/libgrammar-0.0.4-r1
deleted file mode 100644
index 5189003..0000000
--- a/metadata/md5-cache/dev-libs/libgrammar-0.0.4-r1
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Google grammar check library for Chrome OS
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os
-IUSE=ondevice_grammar
-KEYWORDS=*
-LICENSE=BSD-Google
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/libgrammar-0.0.4.tar.gz
-_md5_=d2a225a0a3f1b5c405c8be6c6e1f95d0
diff --git a/metadata/md5-cache/dev-libs/libgrammar-0.0.5 b/metadata/md5-cache/dev-libs/libgrammar-0.0.5
new file mode 100644
index 0000000..8c08ab6
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/libgrammar-0.0.5
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DESCRIPTION=Google grammar check library for Chrome OS
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os
+IUSE=ondevice_grammar
+KEYWORDS=*
+LICENSE=BSD-Google
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/libgrammar-0.0.5.tar.gz
+_md5_=d2a225a0a3f1b5c405c8be6c6e1f95d0
diff --git a/metadata/md5-cache/dev-libs/libgrammar-0.0.5-r1 b/metadata/md5-cache/dev-libs/libgrammar-0.0.5-r1
new file mode 100644
index 0000000..8c08ab6
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/libgrammar-0.0.5-r1
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DESCRIPTION=Google grammar check library for Chrome OS
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os
+IUSE=ondevice_grammar
+KEYWORDS=*
+LICENSE=BSD-Google
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/libgrammar-0.0.5.tar.gz
+_md5_=d2a225a0a3f1b5c405c8be6c6e1f95d0
diff --git a/metadata/md5-cache/dev-libs/libhandwriting-0.0.15 b/metadata/md5-cache/dev-libs/libhandwriting-0.0.15
index 7af5cd9..3f3c26d 100644
--- a/metadata/md5-cache/dev-libs/libhandwriting-0.0.15
+++ b/metadata/md5-cache/dev-libs/libhandwriting-0.0.15
@@ -8,5 +8,5 @@
 REQUIRED_USE=ondevice_handwriting_dlc? ( dlc ) ?? ( ondevice_handwriting ondevice_handwriting_dlc )
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/libhandwriting-0.0.15.tar.gz
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	dlc	7fff3565c77657ab37a6955949c208a7
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	dlc	4b31053498fd5ebfac3e3b4a1ccc8bb9
 _md5_=d93ccd4bd60844fbc79c93f4dba1360b
diff --git a/metadata/md5-cache/dev-libs/libhandwriting-0.0.15-r1 b/metadata/md5-cache/dev-libs/libhandwriting-0.0.15-r1
index 7af5cd9..3f3c26d 100644
--- a/metadata/md5-cache/dev-libs/libhandwriting-0.0.15-r1
+++ b/metadata/md5-cache/dev-libs/libhandwriting-0.0.15-r1
@@ -8,5 +8,5 @@
 REQUIRED_USE=ondevice_handwriting_dlc? ( dlc ) ?? ( ondevice_handwriting ondevice_handwriting_dlc )
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/libhandwriting-0.0.15.tar.gz
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	dlc	7fff3565c77657ab37a6955949c208a7
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	dlc	4b31053498fd5ebfac3e3b4a1ccc8bb9
 _md5_=d93ccd4bd60844fbc79c93f4dba1360b
diff --git a/metadata/md5-cache/dev-libs/libjcat-0.1.8 b/metadata/md5-cache/dev-libs/libjcat-0.1.8
index c8447fa..958b2bf 100644
--- a/metadata/md5-cache/dev-libs/libjcat-0.1.8
+++ b/metadata/md5-cache/dev-libs/libjcat-0.1.8
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=https://github.com/hughsie/libjcat/archive/0.1.8.tar.gz -> libjcat-0.1.8.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vala	2f3804278870542119da624a5eded505	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vala	2f3804278870542119da624a5eded505	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=83028dedb16c5c9b8286bbf81d2850ff
diff --git a/metadata/md5-cache/dev-libs/libjcat-0.1.8-r1 b/metadata/md5-cache/dev-libs/libjcat-0.1.8-r1
index c8447fa..958b2bf 100644
--- a/metadata/md5-cache/dev-libs/libjcat-0.1.8-r1
+++ b/metadata/md5-cache/dev-libs/libjcat-0.1.8-r1
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=https://github.com/hughsie/libjcat/archive/0.1.8.tar.gz -> libjcat-0.1.8.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vala	2f3804278870542119da624a5eded505	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vala	2f3804278870542119da624a5eded505	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=83028dedb16c5c9b8286bbf81d2850ff
diff --git a/metadata/md5-cache/dev-libs/libp11-0.2.8-r5 b/metadata/md5-cache/dev-libs/libp11-0.2.8-r5
index 4b71686..81c94c1 100644
--- a/metadata/md5-cache/dev-libs/libp11-0.2.8-r5
+++ b/metadata/md5-cache/dev-libs/libp11-0.2.8-r5
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/openssl
 SLOT=0
 SRC_URI=http://www.opensc-project.org/files/libp11/libp11-0.2.8.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=839c12f10f20768cb33d3898ef148a08
diff --git a/metadata/md5-cache/dev-libs/libprotobuf-mutator-20200125 b/metadata/md5-cache/dev-libs/libprotobuf-mutator-20200125
index ba5a108..87352bc 100644
--- a/metadata/md5-cache/dev-libs/libprotobuf-mutator-20200125
+++ b/metadata/md5-cache/dev-libs/libprotobuf-mutator-20200125
@@ -11,5 +11,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=https://github.com/google/libprotobuf-mutator/archive/1c91e7253084730a3f6f85fca7ac39be4b91b09c.tar.gz -> libprotobuf-mutator-20200125.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=bba297437bafcdb266312b241c663519
diff --git a/metadata/md5-cache/dev-libs/libprotobuf-mutator-20200125-r1 b/metadata/md5-cache/dev-libs/libprotobuf-mutator-20200125-r1
index ba5a108..87352bc 100644
--- a/metadata/md5-cache/dev-libs/libprotobuf-mutator-20200125-r1
+++ b/metadata/md5-cache/dev-libs/libprotobuf-mutator-20200125-r1
@@ -11,5 +11,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=https://github.com/google/libprotobuf-mutator/archive/1c91e7253084730a3f6f85fca7ac39be4b91b09c.tar.gz -> libprotobuf-mutator-20200125.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=bba297437bafcdb266312b241c663519
diff --git a/metadata/md5-cache/dev-libs/libsuggest-0.0.13 b/metadata/md5-cache/dev-libs/libsuggest-0.0.13
new file mode 100644
index 0000000..0e9b2f4
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/libsuggest-0.0.13
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DESCRIPTION=Google text suggestions library for Chrome OS
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os
+IUSE=ondevice_text_suggestions
+KEYWORDS=*
+LICENSE=BSD-Google
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/libsuggest-0.0.13.tar.gz
+_md5_=ac1bc6903dedfb3f38eba2abae9011fe
diff --git a/metadata/md5-cache/dev-libs/libsuggest-0.0.13-r1 b/metadata/md5-cache/dev-libs/libsuggest-0.0.13-r1
new file mode 100644
index 0000000..0e9b2f4
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/libsuggest-0.0.13-r1
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DESCRIPTION=Google text suggestions library for Chrome OS
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os
+IUSE=ondevice_text_suggestions
+KEYWORDS=*
+LICENSE=BSD-Google
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/libsuggest-0.0.13.tar.gz
+_md5_=ac1bc6903dedfb3f38eba2abae9011fe
diff --git a/metadata/md5-cache/dev-libs/libsuggest-0.0.9 b/metadata/md5-cache/dev-libs/libsuggest-0.0.9
deleted file mode 100644
index b72cd5b..0000000
--- a/metadata/md5-cache/dev-libs/libsuggest-0.0.9
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Google text suggestions library for Chrome OS
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os
-IUSE=ondevice_text_suggestions
-KEYWORDS=*
-LICENSE=BSD-Google
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/libsuggest-amd64-0.0.9.tar.gz
-_md5_=edef476659755ad5c1abb05af2c8af9f
diff --git a/metadata/md5-cache/dev-libs/libsuggest-0.0.9-r1 b/metadata/md5-cache/dev-libs/libsuggest-0.0.9-r1
deleted file mode 100644
index b72cd5b..0000000
--- a/metadata/md5-cache/dev-libs/libsuggest-0.0.9-r1
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Google text suggestions library for Chrome OS
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os
-IUSE=ondevice_text_suggestions
-KEYWORDS=*
-LICENSE=BSD-Google
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/libsuggest-amd64-0.0.9.tar.gz
-_md5_=edef476659755ad5c1abb05af2c8af9f
diff --git a/metadata/md5-cache/dev-libs/libtextclassifier-0.0.1-r117 b/metadata/md5-cache/dev-libs/libtextclassifier-0.0.1-r117
deleted file mode 100644
index b6c84b0..0000000
--- a/metadata/md5-cache/dev-libs/libtextclassifier-0.0.1-r117
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/chrome-icu:= dev-libs/flatbuffers:= sci-libs/tensorflow:= sys-libs/zlib:= !<chromeos-base/ml-0.0.1-r369 dev-libs/libutf:= dev-libs/marisa-aosp:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Library for classifying text
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/libtextclassifier/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_4fa2be0611424952390eb570106ed5944e294b46 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_4fa2be0611424952390eb570106ed5944e294b46 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=Apache-2.0
-PROPERTIES=live live
-RDEPEND=chromeos-base/chrome-icu:= dev-libs/flatbuffers:= sci-libs/tensorflow:= sys-libs/zlib:= !<chromeos-base/ml-0.0.1-r369 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r117
-SRC_URI=gs://chromeos-localmirror/distfiles/mlservice-model-language_identification-20190924.smfb gs://chromeos-localmirror/distfiles/mlservice-model-text_classifier_en-v711_vocab-v1.fb
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=76a819c153f70562ea14e42e1c0166a3
diff --git a/metadata/md5-cache/dev-libs/libtextclassifier-0.0.1-r142 b/metadata/md5-cache/dev-libs/libtextclassifier-0.0.1-r142
new file mode 100644
index 0000000..81d17d4
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/libtextclassifier-0.0.1-r142
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/chrome-icu:= dev-libs/flatbuffers:= sci-libs/tensorflow:= sys-libs/zlib:= !<chromeos-base/ml-0.0.1-r369 dev-libs/libutf:= dev-libs/marisa-aosp:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Library for classifying text
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/libtextclassifier/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_4fa2be0611424952390eb570106ed5944e294b46 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_4fa2be0611424952390eb570106ed5944e294b46 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=Apache-2.0
+PROPERTIES=live live
+RDEPEND=chromeos-base/chrome-icu:= dev-libs/flatbuffers:= sci-libs/tensorflow:= sys-libs/zlib:= !<chromeos-base/ml-0.0.1-r369 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r142
+SRC_URI=gs://chromeos-localmirror/distfiles/mlservice-model-language_identification-20190924.smfb gs://chromeos-localmirror/distfiles/mlservice-model-text_classifier_en-v711_vocab-v1.fb
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7bcdb433139e37465fea293d2d1bb8a7
diff --git a/metadata/md5-cache/dev-libs/libtextclassifier-9999 b/metadata/md5-cache/dev-libs/libtextclassifier-9999
index 8ca3fe2..9870416c 100644
--- a/metadata/md5-cache/dev-libs/libtextclassifier-9999
+++ b/metadata/md5-cache/dev-libs/libtextclassifier-9999
@@ -11,5 +11,5 @@
 RDEPEND=chromeos-base/chrome-icu:= dev-libs/flatbuffers:= sci-libs/tensorflow:= sys-libs/zlib:= !<chromeos-base/ml-0.0.1-r369 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
 SRC_URI=gs://chromeos-localmirror/distfiles/mlservice-model-language_identification-20190924.smfb gs://chromeos-localmirror/distfiles/mlservice-model-text_classifier_en-v711_vocab-v1.fb
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=63c58468c481fdea1d8401395184f1c2
diff --git a/metadata/md5-cache/dev-libs/libusb-1.0.22 b/metadata/md5-cache/dev-libs/libusb-1.0.22
index 864c812..cff83a8 100644
--- a/metadata/md5-cache/dev-libs/libusb-1.0.22
+++ b/metadata/md5-cache/dev-libs/libusb-1.0.22
@@ -9,5 +9,5 @@
 RDEPEND=udev? ( >=virtual/libudev-208:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?,static-libs?] )
 SLOT=1
 SRC_URI=https://github.com/libusb/libusb/releases/download/v1.0.22/libusb-1.0.22.tar.bz2
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=1180ce596da8f923629270c2cc600f75
diff --git a/metadata/md5-cache/dev-libs/libusb-1.0.22-r3 b/metadata/md5-cache/dev-libs/libusb-1.0.22-r3
index 864c812..cff83a8 100644
--- a/metadata/md5-cache/dev-libs/libusb-1.0.22-r3
+++ b/metadata/md5-cache/dev-libs/libusb-1.0.22-r3
@@ -9,5 +9,5 @@
 RDEPEND=udev? ( >=virtual/libudev-208:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?,static-libs?] )
 SLOT=1
 SRC_URI=https://github.com/libusb/libusb/releases/download/v1.0.22/libusb-1.0.22.tar.bz2
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=1180ce596da8f923629270c2cc600f75
diff --git a/metadata/md5-cache/dev-libs/libusbhp-1.0.2 b/metadata/md5-cache/dev-libs/libusbhp-1.0.2
index 374da50..a7eb676 100644
--- a/metadata/md5-cache/dev-libs/libusbhp-1.0.2
+++ b/metadata/md5-cache/dev-libs/libusbhp-1.0.2
@@ -9,5 +9,5 @@
 RDEPEND=virtual/udev
 SLOT=0
 SRC_URI=http://www.aasimon.org/libusbhp/libusbhp-1.0.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=1b182be080d3c5113860e66bc23e44df
diff --git a/metadata/md5-cache/dev-libs/libutf-0.0.1-r69 b/metadata/md5-cache/dev-libs/libutf-0.0.1-r69
deleted file mode 100644
index 6321646..0000000
--- a/metadata/md5-cache/dev-libs/libutf-0.0.1-r69
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=A UTF-8 library based on the AOSP version of libutf.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/aosp/platform/external/libutf/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_fc022abae9d52285526cb0dda697e2bea18696ca cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_fc022abae9d52285526cb0dda697e2bea18696ca cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=MIT
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=58b4d8b5aa7891e08c822471023298eb
diff --git a/metadata/md5-cache/dev-libs/libutf-0.0.1-r94 b/metadata/md5-cache/dev-libs/libutf-0.0.1-r94
new file mode 100644
index 0000000..33ea7a5
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/libutf-0.0.1-r94
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=A UTF-8 library based on the AOSP version of libutf.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/aosp/platform/external/libutf/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_fc022abae9d52285526cb0dda697e2bea18696ca cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_fc022abae9d52285526cb0dda697e2bea18696ca cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=MIT
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fe98e91a8434b90f3671447ee8c6586d
diff --git a/metadata/md5-cache/dev-libs/libutf-9999 b/metadata/md5-cache/dev-libs/libutf-9999
index 97f5174..45d546b 100644
--- a/metadata/md5-cache/dev-libs/libutf-9999
+++ b/metadata/md5-cache/dev-libs/libutf-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2fbdb434ee69b4096490988f63d67f4c
diff --git a/metadata/md5-cache/dev-libs/libxmlb-0.3.2 b/metadata/md5-cache/dev-libs/libxmlb-0.3.2
index 4754c67..fa97e710 100644
--- a/metadata/md5-cache/dev-libs/libxmlb-0.3.2
+++ b/metadata/md5-cache/dev-libs/libxmlb-0.3.2
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/2
 SRC_URI=https://github.com/hughsie/libxmlb/archive/0.3.2.tar.gz -> libxmlb-0.3.2.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7d372143959aa1c691947c160f241a4f
diff --git a/metadata/md5-cache/dev-libs/libxmlb-0.3.2-r1 b/metadata/md5-cache/dev-libs/libxmlb-0.3.2-r1
index 4754c67..fa97e710 100644
--- a/metadata/md5-cache/dev-libs/libxmlb-0.3.2-r1
+++ b/metadata/md5-cache/dev-libs/libxmlb-0.3.2-r1
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/2
 SRC_URI=https://github.com/hughsie/libxmlb/archive/0.3.2.tar.gz -> libxmlb-0.3.2.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7d372143959aa1c691947c160f241a4f
diff --git a/metadata/md5-cache/dev-libs/marisa-aosp-0.0.1-r47 b/metadata/md5-cache/dev-libs/marisa-aosp-0.0.1-r47
deleted file mode 100644
index a5e702e..0000000
--- a/metadata/md5-cache/dev-libs/marisa-aosp-0.0.1-r47
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git >=dev-vcs/git-1.8.2.1[curl] dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=MARISA: Matching Algorithm with Recursively Implemented StorAge (AOSP fork)
-EAPI=7
-HOMEPAGE=https://android.googlesource.com/platform/external/marisa-trie/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-2 LGPL-2.1 BSD-Google
-PROPERTIES=live live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9cfa2f97c4250fedb1c30d30f9f456a0
diff --git a/metadata/md5-cache/dev-libs/marisa-aosp-0.0.1-r72 b/metadata/md5-cache/dev-libs/marisa-aosp-0.0.1-r72
new file mode 100644
index 0000000..af8e147
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/marisa-aosp-0.0.1-r72
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git >=dev-vcs/git-1.8.2.1[curl] dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=MARISA: Matching Algorithm with Recursively Implemented StorAge (AOSP fork)
+EAPI=7
+HOMEPAGE=https://android.googlesource.com/platform/external/marisa-trie/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-2 LGPL-2.1 BSD-Google
+PROPERTIES=live live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c3cc241240e5efacb9e43fd3935f04a9
diff --git a/metadata/md5-cache/dev-libs/marisa-aosp-9999 b/metadata/md5-cache/dev-libs/marisa-aosp-9999
index 37bdc90..1b1ece4 100644
--- a/metadata/md5-cache/dev-libs/marisa-aosp-9999
+++ b/metadata/md5-cache/dev-libs/marisa-aosp-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=73c2a01a78f13bc646bdc44d06732bed
diff --git a/metadata/md5-cache/dev-libs/modp_b64-0.0.1-r129 b/metadata/md5-cache/dev-libs/modp_b64-0.0.1-r129
deleted file mode 100644
index 054b4fe..0000000
--- a/metadata/md5-cache/dev-libs/modp_b64-0.0.1-r129
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Base64 encoder/decoder library.
-EAPI=6
-HOMEPAGE=https://github.com/client9/stringencoders
-IUSE=fuzzer fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_9473949bc842cc166ac244567638b94150a97865 cros-debug cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_9473949bc842cc166ac244567638b94150a97865 compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD
-PROPERTIES=live live
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=6e0db4fd6f163eebb153abb5a3dfcbc4
diff --git a/metadata/md5-cache/dev-libs/modp_b64-0.0.1-r156 b/metadata/md5-cache/dev-libs/modp_b64-0.0.1-r156
new file mode 100644
index 0000000..318db02
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/modp_b64-0.0.1-r156
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Base64 encoder/decoder library.
+EAPI=6
+HOMEPAGE=https://github.com/client9/stringencoders
+IUSE=fuzzer fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_9473949bc842cc166ac244567638b94150a97865 cros-debug cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_9473949bc842cc166ac244567638b94150a97865 compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD
+PROPERTIES=live live
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=e1fa97bbe429b68546bb95fd23f9d871
diff --git a/metadata/md5-cache/dev-libs/modp_b64-9999 b/metadata/md5-cache/dev-libs/modp_b64-9999
index 92fa96b..1502fad 100644
--- a/metadata/md5-cache/dev-libs/modp_b64-9999
+++ b/metadata/md5-cache/dev-libs/modp_b64-9999
@@ -8,5 +8,5 @@
 LICENSE=BSD
 PROPERTIES=live live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=edd5c3bafbe7d57199262f07b7a18dcc
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=dd60faffa8dd07eb16ffdfeb116137d4
diff --git a/metadata/md5-cache/dev-libs/nss-3.44-r2 b/metadata/md5-cache/dev-libs/nss-3.44-r2
index e4601ad..8e07a66 100644
--- a/metadata/md5-cache/dev-libs/nss-3.44-r2
+++ b/metadata/md5-cache/dev-libs/nss-3.44-r2
@@ -10,5 +10,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=https://archive.mozilla.org/pub/security/nss/releases/NSS_3_44_RTM/src/nss-3.44.tar.gz cacert? ( https://dev.gentoo.org/~axs/distfiles/nss-cacert-class1-class3.patch ) nss-pem? ( https://dev.gentoo.org/~polynomial-c/nss-pem-20160329.tar.xz )
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ff41b5688b0b55100a4345f0a8396913
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=14e6b94dad0f38804667de914eb4d147
diff --git a/metadata/md5-cache/dev-libs/nss-3.44-r7 b/metadata/md5-cache/dev-libs/nss-3.44-r7
deleted file mode 100644
index e4601ad..0000000
--- a/metadata/md5-cache/dev-libs/nss-3.44-r7
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install postinst postrm prepare test unpack
-DEPEND=>=virtual/pkgconfig-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-libs/nspr-4.16[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-db/sqlite-3.8.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/zlib-1.2.8-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=Mozilla's Network Security Services library that implements PKI support
-EAPI=6
-HOMEPAGE=http://www.mozilla.org/projects/security/pki/nss/
-IUSE=cacert cros_host +nss-pem utils abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=|| ( MPL-2.0 GPL-2 LGPL-2.1 )
-RDEPEND=>=dev-libs/nspr-4.16[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-db/sqlite-3.8.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/zlib-1.2.8-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] !<app-crypt/nss-3.44[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-RESTRICT=test
-SLOT=0
-SRC_URI=https://archive.mozilla.org/pub/security/nss/releases/NSS_3_44_RTM/src/nss-3.44.tar.gz cacert? ( https://dev.gentoo.org/~axs/distfiles/nss-cacert-class1-class3.patch ) nss-pem? ( https://dev.gentoo.org/~polynomial-c/nss-pem-20160329.tar.xz )
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ff41b5688b0b55100a4345f0a8396913
diff --git a/metadata/md5-cache/dev-libs/nss-3.44-r8 b/metadata/md5-cache/dev-libs/nss-3.44-r8
new file mode 100644
index 0000000..8e07a66
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/nss-3.44-r8
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst postrm prepare test unpack
+DEPEND=>=virtual/pkgconfig-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-libs/nspr-4.16[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-db/sqlite-3.8.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/zlib-1.2.8-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+DESCRIPTION=Mozilla's Network Security Services library that implements PKI support
+EAPI=6
+HOMEPAGE=http://www.mozilla.org/projects/security/pki/nss/
+IUSE=cacert cros_host +nss-pem utils abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=|| ( MPL-2.0 GPL-2 LGPL-2.1 )
+RDEPEND=>=dev-libs/nspr-4.16[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-db/sqlite-3.8.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/zlib-1.2.8-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] !<app-crypt/nss-3.44[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+RESTRICT=test
+SLOT=0
+SRC_URI=https://archive.mozilla.org/pub/security/nss/releases/NSS_3_44_RTM/src/nss-3.44.tar.gz cacert? ( https://dev.gentoo.org/~axs/distfiles/nss-cacert-class1-class3.patch ) nss-pem? ( https://dev.gentoo.org/~polynomial-c/nss-pem-20160329.tar.xz )
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=14e6b94dad0f38804667de914eb4d147
diff --git a/metadata/md5-cache/dev-libs/opencsd-1.0.0-r2 b/metadata/md5-cache/dev-libs/opencsd-1.0.0-r2
index 360ee4b..2fb77ed 100644
--- a/metadata/md5-cache/dev-libs/opencsd-1.0.0-r2
+++ b/metadata/md5-cache/dev-libs/opencsd-1.0.0-r2
@@ -7,5 +7,5 @@
 LICENSE=BSD
 SLOT=0
 SRC_URI=https://github.com/linaro/opencsd/archive/opencsd-1.0.0.tar.xz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9db619bf50faa90b069ab8ad4e928318
diff --git a/metadata/md5-cache/dev-libs/openssl-1.1.1k b/metadata/md5-cache/dev-libs/openssl-1.1.1k
deleted file mode 100644
index 27ab330..0000000
--- a/metadata/md5-cache/dev-libs/openssl-1.1.1k
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=>=dev-lang/perl-5 sctp? ( >=net-misc/lksctp-tools-1.0.12 ) test? ( sys-apps/diffutils sys-devel/bc sys-process/procps )
-DEFINED_PHASES=compile configure install postinst prepare setup test
-DEPEND=>=app-misc/c_rehash-1.7-r1 zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
-DESCRIPTION=full-strength general purpose cryptography library (including SSL and TLS)
-EAPI=7
-HOMEPAGE=https://www.openssl.org/
-IUSE=+asm bindist elibc_musl rfc3779 sctp cpu_flags_x86_sse2 sslv3 static-libs test tls-heartbeat vanilla zlib abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=openssl
-PDEPEND=app-misc/ca-certificates
-RDEPEND=>=app-misc/c_rehash-1.7-r1 zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !<net-misc/openssh-8.0_p1-r3
-RESTRICT=!bindist? ( bindist ) !test? ( test )
-SLOT=0/1.1
-SRC_URI=mirror://openssl/source/openssl-1.1.1k.tar.gz bindist? ( mirror://gentoo/openssl-1.1.1i-bindist-1.0.tar.xz https://dev.gentoo.org/~whissi/dist/openssl/openssl-1.1.1i-bindist-1.0.tar.xz )
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f3d93001db211b35da50b1af3a9629ba
diff --git a/metadata/md5-cache/dev-libs/openssl-1.1.1k-r1 b/metadata/md5-cache/dev-libs/openssl-1.1.1k-r1
deleted file mode 100644
index 27ab330..0000000
--- a/metadata/md5-cache/dev-libs/openssl-1.1.1k-r1
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=>=dev-lang/perl-5 sctp? ( >=net-misc/lksctp-tools-1.0.12 ) test? ( sys-apps/diffutils sys-devel/bc sys-process/procps )
-DEFINED_PHASES=compile configure install postinst prepare setup test
-DEPEND=>=app-misc/c_rehash-1.7-r1 zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
-DESCRIPTION=full-strength general purpose cryptography library (including SSL and TLS)
-EAPI=7
-HOMEPAGE=https://www.openssl.org/
-IUSE=+asm bindist elibc_musl rfc3779 sctp cpu_flags_x86_sse2 sslv3 static-libs test tls-heartbeat vanilla zlib abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=openssl
-PDEPEND=app-misc/ca-certificates
-RDEPEND=>=app-misc/c_rehash-1.7-r1 zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !<net-misc/openssh-8.0_p1-r3
-RESTRICT=!bindist? ( bindist ) !test? ( test )
-SLOT=0/1.1
-SRC_URI=mirror://openssl/source/openssl-1.1.1k.tar.gz bindist? ( mirror://gentoo/openssl-1.1.1i-bindist-1.0.tar.xz https://dev.gentoo.org/~whissi/dist/openssl/openssl-1.1.1i-bindist-1.0.tar.xz )
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f3d93001db211b35da50b1af3a9629ba
diff --git a/metadata/md5-cache/dev-libs/openssl-1.1.1l b/metadata/md5-cache/dev-libs/openssl-1.1.1l
new file mode 100644
index 0000000..bd6d077
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/openssl-1.1.1l
@@ -0,0 +1,16 @@
+BDEPEND=>=dev-lang/perl-5 sctp? ( >=net-misc/lksctp-tools-1.0.12 ) test? ( sys-apps/diffutils sys-devel/bc sys-process/procps )
+DEFINED_PHASES=compile configure install postinst prepare setup test
+DEPEND=>=app-misc/c_rehash-1.7-r1 zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
+DESCRIPTION=full-strength general purpose cryptography library (including SSL and TLS)
+EAPI=7
+HOMEPAGE=https://www.openssl.org/
+IUSE=+asm bindist elibc_musl rfc3779 sctp cpu_flags_x86_sse2 sslv3 static-libs test tls-heartbeat vanilla zlib abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=openssl
+PDEPEND=app-misc/ca-certificates
+RDEPEND=>=app-misc/c_rehash-1.7-r1 zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !<net-misc/openssh-8.0_p1-r3
+RESTRICT=!bindist? ( bindist ) !test? ( test )
+SLOT=0/1.1
+SRC_URI=mirror://openssl/source/openssl-1.1.1l.tar.gz bindist? ( mirror://gentoo/openssl-1.1.1i-bindist-1.0.tar.xz https://dev.gentoo.org/~whissi/dist/openssl/openssl-1.1.1i-bindist-1.0.tar.xz )
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f3d93001db211b35da50b1af3a9629ba
diff --git a/metadata/md5-cache/dev-libs/openssl-1.1.1l-r1 b/metadata/md5-cache/dev-libs/openssl-1.1.1l-r1
new file mode 100644
index 0000000..bd6d077
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/openssl-1.1.1l-r1
@@ -0,0 +1,16 @@
+BDEPEND=>=dev-lang/perl-5 sctp? ( >=net-misc/lksctp-tools-1.0.12 ) test? ( sys-apps/diffutils sys-devel/bc sys-process/procps )
+DEFINED_PHASES=compile configure install postinst prepare setup test
+DEPEND=>=app-misc/c_rehash-1.7-r1 zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
+DESCRIPTION=full-strength general purpose cryptography library (including SSL and TLS)
+EAPI=7
+HOMEPAGE=https://www.openssl.org/
+IUSE=+asm bindist elibc_musl rfc3779 sctp cpu_flags_x86_sse2 sslv3 static-libs test tls-heartbeat vanilla zlib abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=openssl
+PDEPEND=app-misc/ca-certificates
+RDEPEND=>=app-misc/c_rehash-1.7-r1 zlib? ( >=sys-libs/zlib-1.2.8-r1[static-libs(+)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !<net-misc/openssh-8.0_p1-r3
+RESTRICT=!bindist? ( bindist ) !test? ( test )
+SLOT=0/1.1
+SRC_URI=mirror://openssl/source/openssl-1.1.1l.tar.gz bindist? ( mirror://gentoo/openssl-1.1.1i-bindist-1.0.tar.xz https://dev.gentoo.org/~whissi/dist/openssl/openssl-1.1.1i-bindist-1.0.tar.xz )
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f3d93001db211b35da50b1af3a9629ba
diff --git a/metadata/md5-cache/dev-libs/protobuf-c-1.3.1 b/metadata/md5-cache/dev-libs/protobuf-c-1.3.1
deleted file mode 100644
index 71bc7d7..0000000
--- a/metadata/md5-cache/dev-libs/protobuf-c-1.3.1
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare test
-DEPEND=>=dev-libs/protobuf-2.6.0:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/pkgconfig[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Protocol Buffers implementation in C
-EAPI=6
-HOMEPAGE=https://github.com/protobuf-c/protobuf-c
-IUSE=static-libs test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=BSD-2
-RDEPEND=>=dev-libs/protobuf-2.6.0:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-SLOT=0/1.0.0
-SRC_URI=https://github.com/protobuf-c/protobuf-c/releases/download/v1.3.1/protobuf-c-1.3.1.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=92af4148cb5a153d811b0619c7f3dc08
diff --git a/metadata/md5-cache/dev-libs/protobuf-c-1.3.3 b/metadata/md5-cache/dev-libs/protobuf-c-1.3.3
new file mode 100644
index 0000000..e05070d
--- /dev/null
+++ b/metadata/md5-cache/dev-libs/protobuf-c-1.3.3
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=>=dev-libs/protobuf-3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/pkgconfig[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=Protocol Buffers implementation in C
+EAPI=6
+HOMEPAGE=https://github.com/protobuf-c/protobuf-c
+IUSE=static-libs test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=BSD-2
+RDEPEND=>=dev-libs/protobuf-3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+SLOT=0/1.0.0
+SRC_URI=https://github.com/protobuf-c/protobuf-c/releases/download/v1.3.3/protobuf-c-1.3.3.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=047c0c9a86798b15ab87c9cbf7ac386c
diff --git a/metadata/md5-cache/dev-libs/xz-embedded-20130513 b/metadata/md5-cache/dev-libs/xz-embedded-20130513
index 9728945..a5ed9d6 100644
--- a/metadata/md5-cache/dev-libs/xz-embedded-20130513
+++ b/metadata/md5-cache/dev-libs/xz-embedded-20130513
@@ -6,5 +6,5 @@
 LICENSE=public-domain
 SLOT=0
 SRC_URI=http://tukaani.org/xz/xz-embedded-20130513.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e51f5154e45db41b2e07308c9b9c8d6b
diff --git a/metadata/md5-cache/dev-libs/xz-embedded-20130513-r1 b/metadata/md5-cache/dev-libs/xz-embedded-20130513-r1
index 9728945..a5ed9d6 100644
--- a/metadata/md5-cache/dev-libs/xz-embedded-20130513-r1
+++ b/metadata/md5-cache/dev-libs/xz-embedded-20130513-r1
@@ -6,5 +6,5 @@
 LICENSE=public-domain
 SLOT=0
 SRC_URI=http://tukaani.org/xz/xz-embedded-20130513.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e51f5154e45db41b2e07308c9b9c8d6b
diff --git a/metadata/md5-cache/dev-python/btsocket-1.0-r21 b/metadata/md5-cache/dev-python/btsocket-1.0-r21
index 835d7a9..9628299 100644
--- a/metadata/md5-cache/dev-python/btsocket-1.0-r21
+++ b/metadata/md5-cache/dev-python/btsocket-1.0-r21
@@ -10,5 +10,5 @@
 RDEPEND=python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=40147231a3f9a09c560203a6b2ae4cc8
diff --git a/metadata/md5-cache/dev-python/btsocket-9999 b/metadata/md5-cache/dev-python/btsocket-9999
index 178c847..2239d4d 100644
--- a/metadata/md5-cache/dev-python/btsocket-9999
+++ b/metadata/md5-cache/dev-python/btsocket-9999
@@ -10,5 +10,5 @@
 RDEPEND=python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=af53dab45f03e29e2a08fc545530ee7c
diff --git a/metadata/md5-cache/dev-python/cherrypy-17.4.1-r3 b/metadata/md5-cache/dev-python/cherrypy-17.4.1-r3
index accbf98..4234e41 100644
--- a/metadata/md5-cache/dev-python/cherrypy-17.4.1-r3
+++ b/metadata/md5-cache/dev-python/cherrypy-17.4.1-r3
@@ -12,5 +12,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=mirror://pypi/C/CherryPy/CherryPy-17.4.1.tar.gz
-_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d5d66f159bbc7ee8c5f203d7e33d7062
diff --git a/metadata/md5-cache/dev-python/clang-python-7.0.0-r2 b/metadata/md5-cache/dev-python/clang-python-7.0.0-r2
index 9411c3c7..fa0b1da 100644
--- a/metadata/md5-cache/dev-python/clang-python-7.0.0-r2
+++ b/metadata/md5-cache/dev-python/clang-python-7.0.0-r2
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=https://releases.llvm.org/7.0.0/cfe-7.0.0.src.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=90310da8b6b003dadff4fcc86181c5e2
diff --git a/metadata/md5-cache/dev-python/dpkt-1.9.2 b/metadata/md5-cache/dev-python/dpkt-1.9.2
index 87ff601..c0251f7 100644
--- a/metadata/md5-cache/dev-python/dpkt-1.9.2
+++ b/metadata/md5-cache/dev-python/dpkt-1.9.2
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 )
 SLOT=0
 SRC_URI=mirror://pypi/d/dpkt/dpkt-1.9.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=d6756cb354431007e8ead76ce0bed00b
diff --git a/metadata/md5-cache/dev-python/google-api-core-1.19.0 b/metadata/md5-cache/dev-python/google-api-core-1.19.0
index 3a1bba9..1607a3af 100644
--- a/metadata/md5-cache/dev-python/google-api-core-1.19.0
+++ b/metadata/md5-cache/dev-python/google-api-core-1.19.0
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 )
 SLOT=0
 SRC_URI=mirror://pypi/g/google-api-core/google-api-core-1.19.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=26fa2f6c14e35909c305ccd2b8e5431d
diff --git a/metadata/md5-cache/dev-python/google-cloud-core-1.4.1 b/metadata/md5-cache/dev-python/google-cloud-core-1.4.1
index 369d72e..1b4c9ea 100644
--- a/metadata/md5-cache/dev-python/google-cloud-core-1.4.1
+++ b/metadata/md5-cache/dev-python/google-cloud-core-1.4.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=|| ( python_targets_pypy3 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
 SLOT=0
 SRC_URI=mirror://pypi/g/google-cloud-core/google-cloud-core-1.4.1.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=39c4e9cbac84e35b9f6bdb8d3c4ca0a8
diff --git a/metadata/md5-cache/dev-python/google-cloud-logging-1.15.1 b/metadata/md5-cache/dev-python/google-cloud-logging-1.15.1
index 2573915..151515c 100644
--- a/metadata/md5-cache/dev-python/google-cloud-logging-1.15.1
+++ b/metadata/md5-cache/dev-python/google-cloud-logging-1.15.1
@@ -11,5 +11,5 @@
 REQUIRED_USE=|| ( python_targets_pypy3 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0
 SRC_URI=mirror://pypi/g/google-cloud-logging/google-cloud-logging-1.15.1.tar.gz
-_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ff4ee1eb10190e0d0721fedabc109c7c
diff --git a/metadata/md5-cache/dev-python/google-cloud-pubsub-1.0.2 b/metadata/md5-cache/dev-python/google-cloud-pubsub-1.0.2
index bd1e829..24f2d20 100644
--- a/metadata/md5-cache/dev-python/google-cloud-pubsub-1.0.2
+++ b/metadata/md5-cache/dev-python/google-cloud-pubsub-1.0.2
@@ -11,5 +11,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 )
 SLOT=0
 SRC_URI=mirror://pypi/g/google-cloud-pubsub/google-cloud-pubsub-1.0.2.tar.gz
-_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=4c448de6787bc8c04c41c52758b0caca
diff --git a/metadata/md5-cache/dev-python/google-cloud-storage-1.19.0 b/metadata/md5-cache/dev-python/google-cloud-storage-1.19.0
index 4722655..e0ad971 100644
--- a/metadata/md5-cache/dev-python/google-cloud-storage-1.19.0
+++ b/metadata/md5-cache/dev-python/google-cloud-storage-1.19.0
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 )
 SLOT=0
 SRC_URI=mirror://pypi/g/google-cloud-storage/google-cloud-storage-1.19.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=f3b72fb8052a863d380e91380a9561b2
diff --git a/metadata/md5-cache/dev-python/google-resumable-media-0.3.3 b/metadata/md5-cache/dev-python/google-resumable-media-0.3.3
index 79dc1f1..307e322 100644
--- a/metadata/md5-cache/dev-python/google-resumable-media-0.3.3
+++ b/metadata/md5-cache/dev-python/google-resumable-media-0.3.3
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 )
 SLOT=0
 SRC_URI=mirror://pypi/g/google-resumable-media/google-resumable-media-0.3.3.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=88bc75806a0c6c91ac07ea5e381da01d
diff --git a/metadata/md5-cache/dev-python/googleapis-common-protos-1.6.0 b/metadata/md5-cache/dev-python/googleapis-common-protos-1.6.0
index cc6f270..dfb0d22 100644
--- a/metadata/md5-cache/dev-python/googleapis-common-protos-1.6.0
+++ b/metadata/md5-cache/dev-python/googleapis-common-protos-1.6.0
@@ -11,5 +11,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 )
 SLOT=0
 SRC_URI=mirror://pypi/g/googleapis-common-protos/googleapis-common-protos-1.6.0.tar.gz
-_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=b2316ff1cc1d3d3720c2f363c526a636
diff --git a/metadata/md5-cache/dev-python/grpc-google-iam-v1-0.12.3 b/metadata/md5-cache/dev-python/grpc-google-iam-v1-0.12.3
index 57cbacc..505d3d9 100644
--- a/metadata/md5-cache/dev-python/grpc-google-iam-v1-0.12.3
+++ b/metadata/md5-cache/dev-python/grpc-google-iam-v1-0.12.3
@@ -11,5 +11,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 )
 SLOT=0
 SRC_URI=mirror://pypi/g/grpc-google-iam-v1/grpc-google-iam-v1-0.12.3.tar.gz
-_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=0e823b92a2ac6f12324a57e0a553bad5
diff --git a/metadata/md5-cache/dev-python/grpcio-1.23.0 b/metadata/md5-cache/dev-python/grpcio-1.23.0
index 33d5057..7e4b8c2 100644
--- a/metadata/md5-cache/dev-python/grpcio-1.23.0
+++ b/metadata/md5-cache/dev-python/grpcio-1.23.0
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
 SRC_URI=mirror://pypi/g/grpcio/grpcio-1.23.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=70c69c74e8f59f4c4c07a107bebabc8a
diff --git a/metadata/md5-cache/dev-python/grpcio-1.23.0-r2 b/metadata/md5-cache/dev-python/grpcio-1.23.0-r2
index 33d5057..7e4b8c2 100644
--- a/metadata/md5-cache/dev-python/grpcio-1.23.0-r2
+++ b/metadata/md5-cache/dev-python/grpcio-1.23.0-r2
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
 SRC_URI=mirror://pypi/g/grpcio/grpcio-1.23.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=70c69c74e8f59f4c4c07a107bebabc8a
diff --git a/metadata/md5-cache/dev-python/hid-tools-0.2-r1 b/metadata/md5-cache/dev-python/hid-tools-0.2-r1
index 9d62664..b2eda8a 100644
--- a/metadata/md5-cache/dev-python/hid-tools-0.2-r1
+++ b/metadata/md5-cache/dev-python/hid-tools-0.2-r1
@@ -11,5 +11,5 @@
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0
 SRC_URI=https://gitlab.freedesktop.org/libevdev/hid-tools/-/archive/0.2/hid-tools-0.2.tar.gz
-_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ec8eede038689e100bd2777c942d383d
diff --git a/metadata/md5-cache/dev-python/mkvparse-1.1.0 b/metadata/md5-cache/dev-python/mkvparse-1.1.0
index c30c6f8..d84f742 100644
--- a/metadata/md5-cache/dev-python/mkvparse-1.1.0
+++ b/metadata/md5-cache/dev-python/mkvparse-1.1.0
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 )
 SLOT=0
 SRC_URI=https://github.com/vi/mkvparse/archive/v1.1.0.tar.gz -> mkvparse-1.1.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=7a8d6083793e412a953bec8c63e3618c
diff --git a/metadata/md5-cache/dev-python/mkvparse-1.1.0-r3 b/metadata/md5-cache/dev-python/mkvparse-1.1.0-r3
index c30c6f8..d84f742 100644
--- a/metadata/md5-cache/dev-python/mkvparse-1.1.0-r3
+++ b/metadata/md5-cache/dev-python/mkvparse-1.1.0-r3
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 )
 SLOT=0
 SRC_URI=https://github.com/vi/mkvparse/archive/v1.1.0.tar.gz -> mkvparse-1.1.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=7a8d6083793e412a953bec8c63e3618c
diff --git a/metadata/md5-cache/dev-python/mysqlclient-1.4.2-r2 b/metadata/md5-cache/dev-python/mysqlclient-1.4.2-r2
index afe99f4..3fea2e3 100644
--- a/metadata/md5-cache/dev-python/mysqlclient-1.4.2-r2
+++ b/metadata/md5-cache/dev-python/mysqlclient-1.4.2-r2
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
 SRC_URI=mirror://pypi/m/mysqlclient/mysqlclient-1.4.2.post1.tar.gz -> mysqlclient-1.4.2-r2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=d3daaaf48c43c690df8d9eaac1b5ebcd
diff --git a/metadata/md5-cache/dev-python/parse-1.16.0-r1 b/metadata/md5-cache/dev-python/parse-1.16.0-r1
index 35113e0..24dc61e 100644
--- a/metadata/md5-cache/dev-python/parse-1.16.0-r1
+++ b/metadata/md5-cache/dev-python/parse-1.16.0-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 )
 SLOT=0
 SRC_URI=https://github.com/r1chardj0n3s/parse/archive/27db6b3498aeee80aa87c083dda76f2df2d87fa4.zip -> parse-1.16.0.zip
-_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3603acd08669affb3ae0209a44e1cd58
diff --git a/metadata/md5-cache/dev-python/pyahocorasick-1.4.0-r1 b/metadata/md5-cache/dev-python/pyahocorasick-1.4.0-r1
index 9cb5fac..d666d55 100644
--- a/metadata/md5-cache/dev-python/pyahocorasick-1.4.0-r1
+++ b/metadata/md5-cache/dev-python/pyahocorasick-1.4.0-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
 SRC_URI=mirror://pypi/p/pyahocorasick/pyahocorasick-1.4.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=d438d8752ffe5d16568fe84c63135ce5
diff --git a/metadata/md5-cache/dev-python/pygobject-2.18.0-r1 b/metadata/md5-cache/dev-python/pygobject-2.18.0-r1
deleted file mode 100644
index 98eb818..0000000
--- a/metadata/md5-cache/dev-python/pygobject-2.18.0-r1
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install postinst postrm preinst prepare unpack
-DEPEND=>=dev-libs/glib-2.24.0:2 libffi? ( virtual/libffi ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] doc? ( dev-libs/libxslt >=app-text/docbook-xsl-stylesheets-1.70.1 ) test? ( media-fonts/font-cursor-misc media-fonts/font-misc-misc ) >=dev-util/pkgconfig-0.12 >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 dev-util/desktop-file-utils x11-misc/shared-mime-info test? ( !prefix? ( x11-base/xorg-server ) x11-apps/xhost )
-DESCRIPTION=GLib's GObject library bindings for Python
-EAPI=5
-HOMEPAGE=http://www.pygtk.org/
-IUSE=cairo doc examples libffi test +threads python_targets_python2_7 test
-KEYWORDS=*
-LICENSE=LGPL-2.1
-RDEPEND=>=dev-libs/glib-2.24.0:2 libffi? ( virtual/libffi ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] !<dev-python/pygtk-2.13
-REQUIRED_USE=|| ( python_targets_python2_7 )
-SLOT=2
-SRC_URI=mirror://gnome/sources/pygobject/2.18/pygobject-2.18.0.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	gnome2	acac536f2c3bbcd312ac3faaa3e55e40	gnome2-utils	893e828f0f25f070f0b38d20c83c7670	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72	virtualx	e9162f65645513120b4e12863a5fa972	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=56f62a7fd9f759c1b7b1016b89fdc041
diff --git a/metadata/md5-cache/dev-python/pygobject-2.18.0-r10 b/metadata/md5-cache/dev-python/pygobject-2.18.0-r10
deleted file mode 100644
index 98eb818..0000000
--- a/metadata/md5-cache/dev-python/pygobject-2.18.0-r10
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install postinst postrm preinst prepare unpack
-DEPEND=>=dev-libs/glib-2.24.0:2 libffi? ( virtual/libffi ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] doc? ( dev-libs/libxslt >=app-text/docbook-xsl-stylesheets-1.70.1 ) test? ( media-fonts/font-cursor-misc media-fonts/font-misc-misc ) >=dev-util/pkgconfig-0.12 >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 dev-util/desktop-file-utils x11-misc/shared-mime-info test? ( !prefix? ( x11-base/xorg-server ) x11-apps/xhost )
-DESCRIPTION=GLib's GObject library bindings for Python
-EAPI=5
-HOMEPAGE=http://www.pygtk.org/
-IUSE=cairo doc examples libffi test +threads python_targets_python2_7 test
-KEYWORDS=*
-LICENSE=LGPL-2.1
-RDEPEND=>=dev-libs/glib-2.24.0:2 libffi? ( virtual/libffi ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] !<dev-python/pygtk-2.13
-REQUIRED_USE=|| ( python_targets_python2_7 )
-SLOT=2
-SRC_URI=mirror://gnome/sources/pygobject/2.18/pygobject-2.18.0.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	gnome2	acac536f2c3bbcd312ac3faaa3e55e40	gnome2-utils	893e828f0f25f070f0b38d20c83c7670	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72	virtualx	e9162f65645513120b4e12863a5fa972	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=56f62a7fd9f759c1b7b1016b89fdc041
diff --git a/metadata/md5-cache/dev-python/pygobject-3.36.1 b/metadata/md5-cache/dev-python/pygobject-3.36.1
new file mode 100644
index 0000000..b5a8e35
--- /dev/null
+++ b/metadata/md5-cache/dev-python/pygobject-3.36.1
@@ -0,0 +1,16 @@
+BDEPEND=virtual/pkgconfig app-arch/xz-utils >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEFINED_PHASES=compile configure install postinst postrm preinst prepare test
+DEPEND=python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-libs/glib-2.48:2 >=dev-libs/gobject-introspection-1.54:= dev-libs/libffi:= cairo? ( >=dev-python/pycairo-1.11.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] x11-libs/cairo[glib] ) test? ( dev-libs/atk[introspection] dev-python/pytest[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] x11-libs/gdk-pixbuf:2[introspection,jpeg] x11-libs/gtk+:3[introspection] x11-libs/pango[introspection] ) test? ( !prefix? ( x11-base/xorg-server ) x11-apps/xhost ) dev-util/desktop-file-utils x11-misc/shared-mime-info
+DESCRIPTION=Python bindings for GObject Introspection
+EAPI=7
+HOMEPAGE=https://pygobject.readthedocs.io/
+IUSE=+cairo examples test python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 test
+KEYWORDS=*
+LICENSE=LGPL-2.1+
+RDEPEND=python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-libs/glib-2.48:2 >=dev-libs/gobject-introspection-1.54:= dev-libs/libffi:= cairo? ( >=dev-python/pycairo-1.11.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] x11-libs/cairo[glib] )
+REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+RESTRICT=!test? ( test )
+SLOT=3
+SRC_URI=mirror://gnome/sources/pygobject/3.36/pygobject-3.36.1.tar.xz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	virtualx	e9162f65645513120b4e12863a5fa972	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=a4ceef42f22f130a95c35db51396b4b2
diff --git a/metadata/md5-cache/dev-python/pygobject-3.36.1-r1 b/metadata/md5-cache/dev-python/pygobject-3.36.1-r1
new file mode 100644
index 0000000..b5a8e35
--- /dev/null
+++ b/metadata/md5-cache/dev-python/pygobject-3.36.1-r1
@@ -0,0 +1,16 @@
+BDEPEND=virtual/pkgconfig app-arch/xz-utils >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEFINED_PHASES=compile configure install postinst postrm preinst prepare test
+DEPEND=python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-libs/glib-2.48:2 >=dev-libs/gobject-introspection-1.54:= dev-libs/libffi:= cairo? ( >=dev-python/pycairo-1.11.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] x11-libs/cairo[glib] ) test? ( dev-libs/atk[introspection] dev-python/pytest[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] x11-libs/gdk-pixbuf:2[introspection,jpeg] x11-libs/gtk+:3[introspection] x11-libs/pango[introspection] ) test? ( !prefix? ( x11-base/xorg-server ) x11-apps/xhost ) dev-util/desktop-file-utils x11-misc/shared-mime-info
+DESCRIPTION=Python bindings for GObject Introspection
+EAPI=7
+HOMEPAGE=https://pygobject.readthedocs.io/
+IUSE=+cairo examples test python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 test
+KEYWORDS=*
+LICENSE=LGPL-2.1+
+RDEPEND=python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-libs/glib-2.48:2 >=dev-libs/gobject-introspection-1.54:= dev-libs/libffi:= cairo? ( >=dev-python/pycairo-1.11.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] x11-libs/cairo[glib] )
+REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+RESTRICT=!test? ( test )
+SLOT=3
+SRC_URI=mirror://gnome/sources/pygobject/3.36/pygobject-3.36.1.tar.xz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	virtualx	e9162f65645513120b4e12863a5fa972	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=a4ceef42f22f130a95c35db51396b4b2
diff --git a/metadata/md5-cache/dev-python/pyrad-2.1 b/metadata/md5-cache/dev-python/pyrad-2.1
index 5af90fb..e96c149 100644
--- a/metadata/md5-cache/dev-python/pyrad-2.1
+++ b/metadata/md5-cache/dev-python/pyrad-2.1
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
 SRC_URI=mirror://pypi/p/pyrad/pyrad-2.1.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=5406e1ab0bbcf8ef96538e539cbcfd22
diff --git a/metadata/md5-cache/dev-python/python-uinput-0.11.2 b/metadata/md5-cache/dev-python/python-uinput-0.11.2
index f192ac1..92ac5fd 100644
--- a/metadata/md5-cache/dev-python/python-uinput-0.11.2
+++ b/metadata/md5-cache/dev-python/python-uinput-0.11.2
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 )
 SLOT=0
 SRC_URI=mirror://pypi/p/python-uinput/python-uinput-0.11.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=dede1210bd2bb78c267833e3d792863d
diff --git a/metadata/md5-cache/dev-python/python-uinput-0.11.2-r4 b/metadata/md5-cache/dev-python/python-uinput-0.11.2-r4
index f192ac1..92ac5fd 100644
--- a/metadata/md5-cache/dev-python/python-uinput-0.11.2-r4
+++ b/metadata/md5-cache/dev-python/python-uinput-0.11.2-r4
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 )
 SLOT=0
 SRC_URI=mirror://pypi/p/python-uinput/python-uinput-0.11.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=dede1210bd2bb78c267833e3d792863d
diff --git a/metadata/md5-cache/dev-python/pyvcd-0.2.4 b/metadata/md5-cache/dev-python/pyvcd-0.2.4
new file mode 100644
index 0000000..2b1be03
--- /dev/null
+++ b/metadata/md5-cache/dev-python/pyvcd-0.2.4
@@ -0,0 +1,15 @@
+BDEPEND=dev-python/setuptools_scm[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] test? ( dev-python/pytest[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=Python package for writing Value Change Dump (VCD) files.
+EAPI=7
+HOMEPAGE=https://github.com/westerndigitalcorporation/pyvcd
+IUSE=test python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/westerndigitalcorporation/pyvcd/archive/0.2.4.tar.gz -> pyvcd-0.2.4.tar.gz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=96d565e0beec82c37e00729ca8ff337a
diff --git a/metadata/md5-cache/dev-python/ws4py-0.5.1 b/metadata/md5-cache/dev-python/ws4py-0.5.1
index 0224e4b..8f3e33b 100644
--- a/metadata/md5-cache/dev-python/ws4py-0.5.1
+++ b/metadata/md5-cache/dev-python/ws4py-0.5.1
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=https://github.com/Lawouach/WebSocket-for-Python/archive/0.5.1.tar.gz -> ws4py-0.5.1.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	vcs-snapshot	3be1ab44131e8c0bbdaa75823008444b	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	vcs-snapshot	3be1ab44131e8c0bbdaa75823008444b	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=eec26d787b5ca77900387b83133c2d28
diff --git a/metadata/md5-cache/dev-rust/addr2line-0.6.0 b/metadata/md5-cache/dev-rust/addr2line-0.6.0
index 023e82d..a59812f 100644
--- a/metadata/md5-cache/dev-rust/addr2line-0.6.0
+++ b/metadata/md5-cache/dev-rust/addr2line-0.6.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/adler-1.0.2 b/metadata/md5-cache/dev-rust/adler-1.0.2
index f00227e..9f02749 100644
--- a/metadata/md5-cache/dev-rust/adler-1.0.2
+++ b/metadata/md5-cache/dev-rust/adler-1.0.2
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.0.2/r0
 SRC_URI=https://crates.io/api/v1/crates/adler/1.0.2/download -> adler-1.0.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f694c59bf666233f278a3882a3966b1a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=839f6e2a4c729fe20d7376e34a850f06
diff --git a/metadata/md5-cache/dev-rust/ahash-0.4.7 b/metadata/md5-cache/dev-rust/ahash-0.4.7
index 1b64b2e..60f4be9 100644
--- a/metadata/md5-cache/dev-rust/ahash-0.4.7
+++ b/metadata/md5-cache/dev-rust/ahash-0.4.7
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=>=dev-rust/const-random-0.1.6:= <dev-rust/const-random-0.2.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.4.7/r0
 SRC_URI=https://crates.io/api/v1/crates/ahash/0.4.7/download -> ahash-0.4.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=41eb732364a572fb594692f295469b25
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=448dafaa28de9128de27b1fb471c053b
diff --git a/metadata/md5-cache/dev-rust/ahash-0.7.0 b/metadata/md5-cache/dev-rust/ahash-0.7.0
new file mode 100644
index 0000000..51a8eda
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/ahash-0.7.0
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.7.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/aho-corasick-0.6.10 b/metadata/md5-cache/dev-rust/aho-corasick-0.6.10
index 40fe157..b99520e 100644
--- a/metadata/md5-cache/dev-rust/aho-corasick-0.6.10
+++ b/metadata/md5-cache/dev-rust/aho-corasick-0.6.10
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.10/r0
 SRC_URI=https://crates.io/api/v1/crates/aho-corasick/0.6.10/download -> aho-corasick-0.6.10.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=5c0a0dd5a3f52108e3c1cef9d1ed40f3
diff --git a/metadata/md5-cache/dev-rust/aho-corasick-0.7.18 b/metadata/md5-cache/dev-rust/aho-corasick-0.7.18
index 6be0f74..dd79e07 100644
--- a/metadata/md5-cache/dev-rust/aho-corasick-0.7.18
+++ b/metadata/md5-cache/dev-rust/aho-corasick-0.7.18
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.18/r0
 SRC_URI=https://crates.io/api/v1/crates/aho-corasick/0.7.18/download -> aho-corasick-0.7.18.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9947696dcf25f8e14246eafb9cefe83d
diff --git a/metadata/md5-cache/dev-rust/aligned-0.3.4 b/metadata/md5-cache/dev-rust/aligned-0.3.4
new file mode 100644
index 0000000..55d8945
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/aligned-0.3.4
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/as-slice-0.1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A newtype with alignment of at least "A" bytes
+EAPI=7
+HOMEPAGE=https://crates.io/crates/aligned
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/as-slice-0.1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.3.4/r0
+SRC_URI=https://crates.io/api/v1/crates/aligned/0.3.4/download -> aligned-0.3.4.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=61451eb1313fe58ad47c56b7a0b247ad
diff --git a/metadata/md5-cache/dev-rust/alsa-sys-0.2.0 b/metadata/md5-cache/dev-rust/alsa-sys-0.2.0
index cc4a7de..929bb90 100644
--- a/metadata/md5-cache/dev-rust/alsa-sys-0.2.0
+++ b/metadata/md5-cache/dev-rust/alsa-sys-0.2.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.0/r0
 SRC_URI=https://crates.io/api/v1/crates/alsa-sys/0.2.0/download -> alsa-sys-0.2.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6ee2ffc215c61611cea439a928807a20
diff --git a/metadata/md5-cache/dev-rust/android_log-sys-0.2.0 b/metadata/md5-cache/dev-rust/android_log-sys-0.2.0
index 16c8486..1e8b704 100644
--- a/metadata/md5-cache/dev-rust/android_log-sys-0.2.0
+++ b/metadata/md5-cache/dev-rust/android_log-sys-0.2.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/ansi_term-0.11.0 b/metadata/md5-cache/dev-rust/ansi_term-0.11.0
index cec950a..318ae8e 100644
--- a/metadata/md5-cache/dev-rust/ansi_term-0.11.0
+++ b/metadata/md5-cache/dev-rust/ansi_term-0.11.0
@@ -1,13 +1,15 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
 DEPEND=>=dev-rust/winapi-0.3.4:= <dev-rust/winapi-0.4.0 >=virtual/rust-1.39.0:=
 DESCRIPTION=Library for ANSI terminal colours and styles (bold, underline).
-EAPI=6
+EAPI=7
 HOMEPAGE=https://github.com/ogham/rust-ansi-term
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=MIT
+RDEPEND=>=dev-rust/winapi-0.3.4:= <dev-rust/winapi-0.4.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.11.0/r0
 SRC_URI=https://crates.io/api/v1/crates/ansi_term/0.11.0/download -> ansi_term-0.11.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=4ffb9be5a3ecd0fac6d7c4ec948577f2
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fb3e7c0fa852851627e40bc1013058a5
diff --git a/metadata/md5-cache/dev-rust/ansi_term-0.11.0-r1 b/metadata/md5-cache/dev-rust/ansi_term-0.11.0-r1
index 9796a9f..39683ba 100644
--- a/metadata/md5-cache/dev-rust/ansi_term-0.11.0-r1
+++ b/metadata/md5-cache/dev-rust/ansi_term-0.11.0-r1
@@ -1,13 +1,15 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
 DEPEND=>=dev-rust/winapi-0.3.4:= <dev-rust/winapi-0.4.0 >=virtual/rust-1.39.0:=
 DESCRIPTION=Library for ANSI terminal colours and styles (bold, underline).
-EAPI=6
+EAPI=7
 HOMEPAGE=https://github.com/ogham/rust-ansi-term
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=MIT
+RDEPEND=>=dev-rust/winapi-0.3.4:= <dev-rust/winapi-0.4.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.11.0/r1
 SRC_URI=https://crates.io/api/v1/crates/ansi_term/0.11.0/download -> ansi_term-0.11.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=4ffb9be5a3ecd0fac6d7c4ec948577f2
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fb3e7c0fa852851627e40bc1013058a5
diff --git a/metadata/md5-cache/dev-rust/ansi_term-0.11.0-r2 b/metadata/md5-cache/dev-rust/ansi_term-0.11.0-r2
new file mode 100644
index 0000000..cc284ad
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/ansi_term-0.11.0-r2
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/winapi-0.3.4:= <dev-rust/winapi-0.4.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Library for ANSI terminal colours and styles (bold, underline).
+EAPI=7
+HOMEPAGE=https://github.com/ogham/rust-ansi-term
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=>=dev-rust/winapi-0.3.4:= <dev-rust/winapi-0.4.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.11.0/r2
+SRC_URI=https://crates.io/api/v1/crates/ansi_term/0.11.0/download -> ansi_term-0.11.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fb3e7c0fa852851627e40bc1013058a5
diff --git a/metadata/md5-cache/dev-rust/anyhow-1.0.35 b/metadata/md5-cache/dev-rust/anyhow-1.0.35
index 64cb6f1..81bac9f 100644
--- a/metadata/md5-cache/dev-rust/anyhow-1.0.35
+++ b/metadata/md5-cache/dev-rust/anyhow-1.0.35
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.0.35/r0
 SRC_URI=https://crates.io/api/v1/crates/anyhow/1.0.35/download -> anyhow-1.0.35.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3da61c848bf45dba7ac32cba2480afe3
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=825e37dbc6c943448da41f534fab5d80
diff --git a/metadata/md5-cache/dev-rust/anyhow-1.0.41 b/metadata/md5-cache/dev-rust/anyhow-1.0.41
new file mode 100644
index 0000000..0f6534b
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/anyhow-1.0.41
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/backtrace-0.3.7:= <dev-rust/backtrace-0.4.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Flexible concrete Error type built on std::error::Error
+EAPI=7
+HOMEPAGE=https://crates.io/crates/anyhow
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/backtrace-0.3.7:= <dev-rust/backtrace-0.4.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=1.0.41/r0
+SRC_URI=https://crates.io/api/v1/crates/anyhow/1.0.41/download -> anyhow-1.0.41.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a3a2e3546b36159a176e71d8d8f871c6
diff --git a/metadata/md5-cache/dev-rust/arbitrary-1.0.0 b/metadata/md5-cache/dev-rust/arbitrary-1.0.0
new file mode 100644
index 0000000..ecea522e
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/arbitrary-1.0.0
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.0.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/arc-swap-0.4.5 b/metadata/md5-cache/dev-rust/arc-swap-0.4.5
index 9a22347..80007f2 100644
--- a/metadata/md5-cache/dev-rust/arc-swap-0.4.5
+++ b/metadata/md5-cache/dev-rust/arc-swap-0.4.5
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.5/r0
 SRC_URI=https://crates.io/api/v1/crates/arc-swap/0.4.5/download -> arc-swap-0.4.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=0ced88617b45098066e88590f8d47c98
diff --git a/metadata/md5-cache/dev-rust/arrayvec-0.4.10 b/metadata/md5-cache/dev-rust/arrayvec-0.4.10
index 1fa9c08..764b47e 100644
--- a/metadata/md5-cache/dev-rust/arrayvec-0.4.10
+++ b/metadata/md5-cache/dev-rust/arrayvec-0.4.10
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.10/r0
 SRC_URI=https://crates.io/api/v1/crates/arrayvec/0.4.10/download -> arrayvec-0.4.10.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f68f6d45109c58bdcff0e3f139087c6b
diff --git a/metadata/md5-cache/dev-rust/as-slice-0.1.5 b/metadata/md5-cache/dev-rust/as-slice-0.1.5
new file mode 100644
index 0000000..2ae360c3
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/as-slice-0.1.5
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/generic-array-0.13.3:0.13.3= =dev-rust/generic-array-0.14.4:0.14.4= =dev-rust/generic-array-0.12.4:0.12.4= >=dev-rust/stable_deref_trait-1.1.1:= <dev-rust/stable_deref_trait-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION="AsSlice" and "AsMutSlice" traits
+EAPI=7
+HOMEPAGE=https://crates.io/crates/as-slice
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/generic-array-0.13.3:0.13.3= =dev-rust/generic-array-0.14.4:0.14.4= =dev-rust/generic-array-0.12.4:0.12.4= >=dev-rust/stable_deref_trait-1.1.1:= <dev-rust/stable_deref_trait-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.5/r0
+SRC_URI=https://crates.io/api/v1/crates/as-slice/0.1.5/download -> as-slice-0.1.5.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=731a4ff5ac44b5951ad9c7a1e7aeb600
diff --git a/metadata/md5-cache/dev-rust/as-slice-0.1.5-r1 b/metadata/md5-cache/dev-rust/as-slice-0.1.5-r1
new file mode 100644
index 0000000..4cd5d05
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/as-slice-0.1.5-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/generic-array-0.13.3:0.13.3= =dev-rust/generic-array-0.14.4:0.14.4= =dev-rust/generic-array-0.12.4:0.12.4= >=dev-rust/stable_deref_trait-1.1.1:= <dev-rust/stable_deref_trait-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION="AsSlice" and "AsMutSlice" traits
+EAPI=7
+HOMEPAGE=https://crates.io/crates/as-slice
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/generic-array-0.13.3:0.13.3= =dev-rust/generic-array-0.14.4:0.14.4= =dev-rust/generic-array-0.12.4:0.12.4= >=dev-rust/stable_deref_trait-1.1.1:= <dev-rust/stable_deref_trait-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.5/r1
+SRC_URI=https://crates.io/api/v1/crates/as-slice/0.1.5/download -> as-slice-0.1.5.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=731a4ff5ac44b5951ad9c7a1e7aeb600
diff --git a/metadata/md5-cache/dev-rust/ascii-1.0.0 b/metadata/md5-cache/dev-rust/ascii-1.0.0
index 8c89963..b6c3231 100644
--- a/metadata/md5-cache/dev-rust/ascii-1.0.0
+++ b/metadata/md5-cache/dev-rust/ascii-1.0.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.0/r0
 SRC_URI=https://crates.io/api/v1/crates/ascii/1.0.0/download -> ascii-1.0.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e08e7df2ca251a739a0e4bef2c4e8747
diff --git a/metadata/md5-cache/dev-rust/assert_matches-1.5.0 b/metadata/md5-cache/dev-rust/assert_matches-1.5.0
new file mode 100644
index 0000000..41b5247
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/assert_matches-1.5.0
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Asserts that a value matches a pattern
+EAPI=7
+HOMEPAGE=https://github.com/murarth/assert_matches
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.5.0/r0
+SRC_URI=https://crates.io/api/v1/crates/assert_matches/1.5.0/download -> assert_matches-1.5.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ddd6088e4e9994f35a48e5a0c5d4b4f4
diff --git a/metadata/md5-cache/dev-rust/assertions-0.1.0-r8 b/metadata/md5-cache/dev-rust/assertions-0.1.0-r8
index 5250da4..a1fe905 100644
--- a/metadata/md5-cache/dev-rust/assertions-0.1.0-r8
+++ b/metadata/md5-cache/dev-rust/assertions-0.1.0-r8
@@ -11,5 +11,5 @@
 RDEPEND=!!<=dev-rust/assertions-0.1.0-r3
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/0.1.0-r8
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=413de1215c1856c24609f29c5e90edad
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b20585217a762266b2c98f5c0e27389c
diff --git a/metadata/md5-cache/dev-rust/assertions-9999 b/metadata/md5-cache/dev-rust/assertions-9999
index b27a92c..83b69a0 100644
--- a/metadata/md5-cache/dev-rust/assertions-9999
+++ b/metadata/md5-cache/dev-rust/assertions-9999
@@ -11,5 +11,5 @@
 RDEPEND=!!<=dev-rust/assertions-0.1.0-r3
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=1056132a0a9a16dd33a20f20f247112e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f84df80958bd31a06ccdf405dce276c0
diff --git a/metadata/md5-cache/dev-rust/async-task-4.0.3 b/metadata/md5-cache/dev-rust/async-task-4.0.3
index bfebd31..531c8af 100644
--- a/metadata/md5-cache/dev-rust/async-task-4.0.3
+++ b/metadata/md5-cache/dev-rust/async-task-4.0.3
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=4.0.3/r0
 SRC_URI=https://crates.io/api/v1/crates/async-task/4.0.3/download -> async-task-4.0.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e0f7e37e17e8159fd1c82f885c9c2675
diff --git a/metadata/md5-cache/dev-rust/async-trait-0.1.36 b/metadata/md5-cache/dev-rust/async-trait-0.1.36
index 3d3011a..cdc2e77 100644
--- a/metadata/md5-cache/dev-rust/async-trait-0.1.36
+++ b/metadata/md5-cache/dev-rust/async-trait-0.1.36
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.36/r0
 SRC_URI=https://crates.io/api/v1/crates/async-trait/0.1.36/download -> async-trait-0.1.36.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d0fef127d24456c9594aa350577c8211
diff --git a/metadata/md5-cache/dev-rust/atty-0.2.14 b/metadata/md5-cache/dev-rust/atty-0.2.14
index a9ffbe6..148822e 100644
--- a/metadata/md5-cache/dev-rust/atty-0.2.14
+++ b/metadata/md5-cache/dev-rust/atty-0.2.14
@@ -8,7 +8,8 @@
 LICENSE=MIT
 RDEPEND==dev-rust/libc-0.2*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.2.14/r0
 SRC_URI=https://crates.io/api/v1/crates/atty/0.2.14/download -> atty-0.2.14.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4ed41431251e3947f1bbc62c94fdb3c5
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ea51243e9b5fea398bd31786d004156b
diff --git a/metadata/md5-cache/dev-rust/autocfg-0.1.2 b/metadata/md5-cache/dev-rust/autocfg-0.1.2
index 0a3137c..1c8cdb1 100644
--- a/metadata/md5-cache/dev-rust/autocfg-0.1.2
+++ b/metadata/md5-cache/dev-rust/autocfg-0.1.2
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.1.2/r0
 SRC_URI=https://crates.io/api/v1/crates/autocfg/0.1.2/download -> autocfg-0.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=fda9579d780a9d1e29c9ea95abe4cbef
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=39effb5aaa0e0ac5264191eefd62b6db
diff --git a/metadata/md5-cache/dev-rust/autocfg-1.0.1 b/metadata/md5-cache/dev-rust/autocfg-1.0.1
index 8618dca..aea562c 100644
--- a/metadata/md5-cache/dev-rust/autocfg-1.0.1
+++ b/metadata/md5-cache/dev-rust/autocfg-1.0.1
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.0.1/r0
 SRC_URI=https://crates.io/api/v1/crates/autocfg/1.0.1/download -> autocfg-1.0.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6de1f03da89ff62be88bedaa5800e08e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ec98c9b4423487655f2288a432dd7f6f
diff --git a/metadata/md5-cache/dev-rust/automod-0.1.1 b/metadata/md5-cache/dev-rust/automod-0.1.1
index ca979a9..9e70fba 100644
--- a/metadata/md5-cache/dev-rust/automod-0.1.1
+++ b/metadata/md5-cache/dev-rust/automod-0.1.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/average-0.9.3 b/metadata/md5-cache/dev-rust/average-0.9.3
index ea2dd97..21531d3 100644
--- a/metadata/md5-cache/dev-rust/average-0.9.3
+++ b/metadata/md5-cache/dev-rust/average-0.9.3
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.9.3/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/backtrace-0.3.7 b/metadata/md5-cache/dev-rust/backtrace-0.3.7
index 52fdc11..330d060 100644
--- a/metadata/md5-cache/dev-rust/backtrace-0.3.7
+++ b/metadata/md5-cache/dev-rust/backtrace-0.3.7
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.3.7/r0
 SRC_URI=https://crates.io/api/v1/crates/backtrace/0.3.7/download -> backtrace-0.3.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=e4cd0864d529941f7ec234bc26f4511a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=6702143a445858f165df5ad03c3a4574
diff --git a/metadata/md5-cache/dev-rust/backtrace-sys-0.1.16 b/metadata/md5-cache/dev-rust/backtrace-sys-0.1.16
index 9b89dbd..5462a35 100644
--- a/metadata/md5-cache/dev-rust/backtrace-sys-0.1.16
+++ b/metadata/md5-cache/dev-rust/backtrace-sys-0.1.16
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.16/r0
 SRC_URI=https://crates.io/api/v1/crates/backtrace-sys/0.1.16/download -> backtrace-sys-0.1.16.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3ff642e41e05fc661b866cba653b8728
diff --git a/metadata/md5-cache/dev-rust/bare-metal-0.2.5 b/metadata/md5-cache/dev-rust/bare-metal-0.2.5
new file mode 100644
index 0000000..a566d41
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/bare-metal-0.2.5
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/rustc_version-0.2.3:= <dev-rust/rustc_version-0.3.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Abstractions common to bare metal systems
+EAPI=7
+HOMEPAGE=https://crates.io/crates/bare-metal
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/rustc_version-0.2.3:= <dev-rust/rustc_version-0.3.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.2.5/r0
+SRC_URI=https://crates.io/api/v1/crates/bare-metal/0.2.5/download -> bare-metal-0.2.5.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f3258da79c7ddc13a4910d31bcbfb7a6
diff --git a/metadata/md5-cache/dev-rust/bare-metal-1.0.0 b/metadata/md5-cache/dev-rust/bare-metal-1.0.0
new file mode 100644
index 0000000..1781dd4
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/bare-metal-1.0.0
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Abstractions common to bare metal systems
+EAPI=7
+HOMEPAGE=https://crates.io/crates/bare-metal
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.0.0/r0
+SRC_URI=https://crates.io/api/v1/crates/bare-metal/1.0.0/download -> bare-metal-1.0.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e775b03e4d71c603520971a01f568575
diff --git a/metadata/md5-cache/dev-rust/base64-0.10.1 b/metadata/md5-cache/dev-rust/base64-0.10.1
new file mode 100644
index 0000000..1f3ca0d
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/base64-0.10.1
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/byteorder-1.2.6:= <dev-rust/byteorder-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=encodes and decodes base64 as bytes or utf8
+EAPI=7
+HOMEPAGE=https://crates.io/crates/base64
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/byteorder-1.2.6:= <dev-rust/byteorder-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.10.1/r0
+SRC_URI=https://crates.io/api/v1/crates/base64/0.10.1/download -> base64-0.10.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=dff0489c32c462364893c8a3c94a3a61
diff --git a/metadata/md5-cache/dev-rust/base64-0.13.0 b/metadata/md5-cache/dev-rust/base64-0.13.0
index 53556b7d..e42f8fb 100644
--- a/metadata/md5-cache/dev-rust/base64-0.13.0
+++ b/metadata/md5-cache/dev-rust/base64-0.13.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.13.0/r0
 SRC_URI=https://crates.io/api/v1/crates/base64/0.13.0/download -> base64-0.13.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=4de61c817ce63fe88aa27587443baa00
diff --git a/metadata/md5-cache/dev-rust/bencher-0.1.5 b/metadata/md5-cache/dev-rust/bencher-0.1.5
index 7d45428..0749ef0 100644
--- a/metadata/md5-cache/dev-rust/bencher-0.1.5
+++ b/metadata/md5-cache/dev-rust/bencher-0.1.5
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.5/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/bincode-0.8.0 b/metadata/md5-cache/dev-rust/bincode-0.8.0
index 2074ef9..caf5ed8 100644
--- a/metadata/md5-cache/dev-rust/bincode-0.8.0
+++ b/metadata/md5-cache/dev-rust/bincode-0.8.0
@@ -7,5 +7,5 @@
 LICENSE=MIT
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8e4a6d1ef01671ebbfa11bd51c59761b
diff --git a/metadata/md5-cache/dev-rust/bincode-1.0.1 b/metadata/md5-cache/dev-rust/bincode-1.0.1
index 58723ff..b2c8514 100644
--- a/metadata/md5-cache/dev-rust/bincode-1.0.1
+++ b/metadata/md5-cache/dev-rust/bincode-1.0.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.1/r0
 SRC_URI=https://crates.io/api/v1/crates/bincode/1.0.1/download -> bincode-1.0.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2eb47e8f951ce499a687790650e1510e
diff --git a/metadata/md5-cache/dev-rust/bincode-1.0.1-r1 b/metadata/md5-cache/dev-rust/bincode-1.0.1-r1
index a188ffa..031f561 100644
--- a/metadata/md5-cache/dev-rust/bincode-1.0.1-r1
+++ b/metadata/md5-cache/dev-rust/bincode-1.0.1-r1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.1/r1
 SRC_URI=https://crates.io/api/v1/crates/bincode/1.0.1/download -> bincode-1.0.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2eb47e8f951ce499a687790650e1510e
diff --git a/metadata/md5-cache/dev-rust/bincode-1.1.2 b/metadata/md5-cache/dev-rust/bincode-1.1.2
index 94e46c3..eba2517 100644
--- a/metadata/md5-cache/dev-rust/bincode-1.1.2
+++ b/metadata/md5-cache/dev-rust/bincode-1.1.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.1.2/r0
 SRC_URI=https://crates.io/api/v1/crates/bincode/1.1.2/download -> bincode-1.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=48c863915e3111592539e0c3a8a4fcbb
diff --git a/metadata/md5-cache/dev-rust/bindgen-0.49.0 b/metadata/md5-cache/dev-rust/bindgen-0.49.0
index 3f4527a..10dc633 100644
--- a/metadata/md5-cache/dev-rust/bindgen-0.49.0
+++ b/metadata/md5-cache/dev-rust/bindgen-0.49.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.49.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/bindgen-0.51.0 b/metadata/md5-cache/dev-rust/bindgen-0.51.0
index 5150b16..e463f9a 100644
--- a/metadata/md5-cache/dev-rust/bindgen-0.51.0
+++ b/metadata/md5-cache/dev-rust/bindgen-0.51.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.51.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/bindgen-0.56.0 b/metadata/md5-cache/dev-rust/bindgen-0.56.0
index 2410f60..fcbdc08 100644
--- a/metadata/md5-cache/dev-rust/bindgen-0.56.0
+++ b/metadata/md5-cache/dev-rust/bindgen-0.56.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/0.56.0
 SRC_URI=https://crates.io/api/v1/crates/bindgen/0.56.0/download -> bindgen-0.56.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=87fe380988c06d8af839ab618d5df5e1
diff --git a/metadata/md5-cache/dev-rust/bindgen-0.56.0-r1 b/metadata/md5-cache/dev-rust/bindgen-0.56.0-r1
index d902c7f..19a4497 100644
--- a/metadata/md5-cache/dev-rust/bindgen-0.56.0-r1
+++ b/metadata/md5-cache/dev-rust/bindgen-0.56.0-r1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/0.56.0-r1
 SRC_URI=https://crates.io/api/v1/crates/bindgen/0.56.0/download -> bindgen-0.56.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=87fe380988c06d8af839ab618d5df5e1
diff --git a/metadata/md5-cache/dev-rust/bindgen-0.56.0-r2 b/metadata/md5-cache/dev-rust/bindgen-0.56.0-r2
index b648dc8..9f54ae9 100644
--- a/metadata/md5-cache/dev-rust/bindgen-0.56.0-r2
+++ b/metadata/md5-cache/dev-rust/bindgen-0.56.0-r2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/0.56.0-r2
 SRC_URI=https://crates.io/api/v1/crates/bindgen/0.56.0/download -> bindgen-0.56.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=87fe380988c06d8af839ab618d5df5e1
diff --git a/metadata/md5-cache/dev-rust/bitfield-0.13.2 b/metadata/md5-cache/dev-rust/bitfield-0.13.2
new file mode 100644
index 0000000..875a299b
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/bitfield-0.13.2
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=This crate provides macros to generate bitfield-like struct.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/bitfield
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.13.2/r0
+SRC_URI=https://crates.io/api/v1/crates/bitfield/0.13.2/download -> bitfield-0.13.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ac7490ecfbe0fac7e770487d53b4338f
diff --git a/metadata/md5-cache/dev-rust/bitflags-0.7.0 b/metadata/md5-cache/dev-rust/bitflags-0.7.0
index 6c84861..5631d1d 100644
--- a/metadata/md5-cache/dev-rust/bitflags-0.7.0
+++ b/metadata/md5-cache/dev-rust/bitflags-0.7.0
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.7.0/r0
 SRC_URI=https://crates.io/api/v1/crates/bitflags/0.7.0/download -> bitflags-0.7.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=463c7f17778d40fbf01d217c7f851547
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=f100082728e3501c19a78a78eb3937af
diff --git a/metadata/md5-cache/dev-rust/bitflags-1.2.1 b/metadata/md5-cache/dev-rust/bitflags-1.2.1
index 831d353..fdfc97d 100644
--- a/metadata/md5-cache/dev-rust/bitflags-1.2.1
+++ b/metadata/md5-cache/dev-rust/bitflags-1.2.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.2.1/r0
 SRC_URI=https://crates.io/api/v1/crates/bitflags/1.2.1/download -> bitflags-1.2.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6fa7d524654d655573c4393309d0f425
diff --git a/metadata/md5-cache/dev-rust/built-0.3.1 b/metadata/md5-cache/dev-rust/built-0.3.1
index 5bb6bc3..b08082d 100644
--- a/metadata/md5-cache/dev-rust/built-0.3.1
+++ b/metadata/md5-cache/dev-rust/built-0.3.1
@@ -1,12 +1,13 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/toml-0.5:= =dev-rust/chrono-0.4*:= =dev-rust/git2-0.9*:= >=dev-rust/semver-0.9:= =dev-rust/tempdir-0.3*:= >=virtual/rust-1.39.0:=
+DEPEND==dev-rust/toml-0.5*:= =dev-rust/chrono-0.4*:= =dev-rust/git2-0.9*:= =dev-rust/semver-0.9*:= =dev-rust/tempdir-0.3*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=built provides a crate with information from the time it was built.
 EAPI=6
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.3.1/r0
 SRC_URI=https://crates.io/api/v1/crates/built/0.3.1/download -> built-0.3.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=1cae24a47068ad758db699913d13eb56
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=0b4b53296f7798f6b7270d4557d509d1
diff --git a/metadata/md5-cache/dev-rust/built-0.3.1-r1 b/metadata/md5-cache/dev-rust/built-0.3.1-r1
new file mode 100644
index 0000000..373bf4d
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/built-0.3.1-r1
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/toml-0.5*:= =dev-rust/chrono-0.4*:= =dev-rust/git2-0.9*:= =dev-rust/semver-0.9*:= =dev-rust/tempdir-0.3*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=built provides a crate with information from the time it was built.
+EAPI=6
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.3.1/r1
+SRC_URI=https://crates.io/api/v1/crates/built/0.3.1/download -> built-0.3.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=0b4b53296f7798f6b7270d4557d509d1
diff --git a/metadata/md5-cache/dev-rust/bumpalo-3.5.0 b/metadata/md5-cache/dev-rust/bumpalo-3.5.0
new file mode 100644
index 0000000..7e6d404
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/bumpalo-3.5.0
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=3.5.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/byteorder-1.1.0 b/metadata/md5-cache/dev-rust/byteorder-1.1.0
index cbd258d..9365a9b 100644
--- a/metadata/md5-cache/dev-rust/byteorder-1.1.0
+++ b/metadata/md5-cache/dev-rust/byteorder-1.1.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.1.0/r0
 SRC_URI=https://crates.io/api/v1/crates/byteorder/1.1.0/download -> byteorder-1.1.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e2eeaf49e7b2349ef3942cb4225bb7c2
diff --git a/metadata/md5-cache/dev-rust/byteorder-1.2.7 b/metadata/md5-cache/dev-rust/byteorder-1.2.7
index cebc15b..758c568 100644
--- a/metadata/md5-cache/dev-rust/byteorder-1.2.7
+++ b/metadata/md5-cache/dev-rust/byteorder-1.2.7
@@ -7,5 +7,5 @@
 LICENSE=|| ( MIT Unlicense )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.2.7/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7b9619320573e8d34437d07ff1296f9a
diff --git a/metadata/md5-cache/dev-rust/byteorder-1.3.2 b/metadata/md5-cache/dev-rust/byteorder-1.3.2
index f98eb99..c095172 100644
--- a/metadata/md5-cache/dev-rust/byteorder-1.3.2
+++ b/metadata/md5-cache/dev-rust/byteorder-1.3.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.3.2/r0
 SRC_URI=https://crates.io/api/v1/crates/byteorder/1.3.2/download -> byteorder-1.3.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=10702a44fba7d162a1988a6183ee0edb
diff --git a/metadata/md5-cache/dev-rust/byteorder-1.4.3 b/metadata/md5-cache/dev-rust/byteorder-1.4.3
index 93ce21b..b27dad1 100644
--- a/metadata/md5-cache/dev-rust/byteorder-1.4.3
+++ b/metadata/md5-cache/dev-rust/byteorder-1.4.3
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=MIT
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.4.3/r0
 SRC_URI=https://crates.io/api/v1/crates/byteorder/1.4.3/download -> byteorder-1.4.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=26177fa21b67c6c524ca22ea6eee8c78
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d5d6bab0c9d8113d2b7e81bcea297dc8
diff --git a/metadata/md5-cache/dev-rust/bytes-0.3.0 b/metadata/md5-cache/dev-rust/bytes-0.3.0
index 88963a5..4f8ce0a 100644
--- a/metadata/md5-cache/dev-rust/bytes-0.3.0
+++ b/metadata/md5-cache/dev-rust/bytes-0.3.0
@@ -7,5 +7,5 @@
 LICENSE=MIT
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8e4a6d1ef01671ebbfa11bd51c59761b
diff --git a/metadata/md5-cache/dev-rust/bytes-0.4.11 b/metadata/md5-cache/dev-rust/bytes-0.4.11
index 6327c6d..d44d91e 100644
--- a/metadata/md5-cache/dev-rust/bytes-0.4.11
+++ b/metadata/md5-cache/dev-rust/bytes-0.4.11
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.11/r0
 SRC_URI=https://crates.io/api/v1/crates/bytes/0.4.11/download -> bytes-0.4.11.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=187d7707753daec1867650d64e13b5c8
diff --git a/metadata/md5-cache/dev-rust/bytes-0.4.11-r1 b/metadata/md5-cache/dev-rust/bytes-0.4.11-r1
index 5f88b5f..a798bcd 100644
--- a/metadata/md5-cache/dev-rust/bytes-0.4.11-r1
+++ b/metadata/md5-cache/dev-rust/bytes-0.4.11-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.11/r1
 SRC_URI=https://crates.io/api/v1/crates/bytes/0.4.11/download -> bytes-0.4.11.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=94c23796d7661ee6dcd797ea80bc2a24
diff --git a/metadata/md5-cache/dev-rust/bytes-0.4.12 b/metadata/md5-cache/dev-rust/bytes-0.4.12
index da93216..072812c 100644
--- a/metadata/md5-cache/dev-rust/bytes-0.4.12
+++ b/metadata/md5-cache/dev-rust/bytes-0.4.12
@@ -8,7 +8,8 @@
 LICENSE=MIT
 RDEPEND=>=dev-rust/byteorder-1.1.0:= <dev-rust/byteorder-2.0.0 >=dev-rust/either-1.5.0:= <dev-rust/either-2.0.0 =dev-rust/iovec-0.1*:= =dev-rust/serde-1*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.4.12/r0
 SRC_URI=https://crates.io/api/v1/crates/bytes/0.4.12/download -> bytes-0.4.12.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f2b6094712f9432b7571bcaa028fa540
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7ec951c9be63c5c55f6e0d82edd52591
diff --git a/metadata/md5-cache/dev-rust/bytes-0.5.6 b/metadata/md5-cache/dev-rust/bytes-0.5.6
index d61bc3b..155fc70 100644
--- a/metadata/md5-cache/dev-rust/bytes-0.5.6
+++ b/metadata/md5-cache/dev-rust/bytes-0.5.6
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.5.6/r0
 SRC_URI=https://crates.io/api/v1/crates/bytes/0.5.6/download -> bytes-0.5.6.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3494793e7f8e2bec90a6f0845fcbfc62
diff --git a/metadata/md5-cache/dev-rust/capnp-0.14.2 b/metadata/md5-cache/dev-rust/capnp-0.14.2
new file mode 100644
index 0000000..2ed6e71
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/capnp-0.14.2
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.14.2/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/capnpc-0.14.4 b/metadata/md5-cache/dev-rust/capnpc-0.14.4
new file mode 100644
index 0000000..bf340a1
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/capnpc-0.14.4
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.14.4/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/cc-1.0.25 b/metadata/md5-cache/dev-rust/cc-1.0.25
index 63fbf9a..25e2792 100644
--- a/metadata/md5-cache/dev-rust/cc-1.0.25
+++ b/metadata/md5-cache/dev-rust/cc-1.0.25
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.0.25/r0
 SRC_URI=https://crates.io/api/v1/crates/cc/1.0.25/download -> cc-1.0.25.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=8b68286805c939680030a09ef7e1aca4
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=ea00b5220d2c13229be34810c2464c15
diff --git a/metadata/md5-cache/dev-rust/cexpr-0.4.0 b/metadata/md5-cache/dev-rust/cexpr-0.4.0
index d3e17d8..1f1b23d 100644
--- a/metadata/md5-cache/dev-rust/cexpr-0.4.0
+++ b/metadata/md5-cache/dev-rust/cexpr-0.4.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.0/r0
 SRC_URI=https://crates.io/api/v1/crates/cexpr/0.4.0/download -> cexpr-0.4.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=609b4050ba18c441d8ef651c65de20c7
diff --git a/metadata/md5-cache/dev-rust/cfg-if-0.1.10 b/metadata/md5-cache/dev-rust/cfg-if-0.1.10
index 63a233f..9617c94 100644
--- a/metadata/md5-cache/dev-rust/cfg-if-0.1.10
+++ b/metadata/md5-cache/dev-rust/cfg-if-0.1.10
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.1.10/r0
 SRC_URI=https://crates.io/api/v1/crates/cfg-if/0.1.10/download -> cfg-if-0.1.10.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ae630d8f9d1e358dc52265c39da3d351
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=182e6ebc07b985de83fd5c3611cb0d85
diff --git a/metadata/md5-cache/dev-rust/cfg-if-1.0.0 b/metadata/md5-cache/dev-rust/cfg-if-1.0.0
index ac1b669..c100b86 100644
--- a/metadata/md5-cache/dev-rust/cfg-if-1.0.0
+++ b/metadata/md5-cache/dev-rust/cfg-if-1.0.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.0/r0
 SRC_URI=https://crates.io/api/v1/crates/cfg-if/1.0.0/download -> cfg-if-1.0.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e4ba87dc2fa6a64ebb032d6a370c9eaa
diff --git a/metadata/md5-cache/dev-rust/chashmap-2.2.2 b/metadata/md5-cache/dev-rust/chashmap-2.2.2
index 82cad88..ba48b17 100644
--- a/metadata/md5-cache/dev-rust/chashmap-2.2.2
+++ b/metadata/md5-cache/dev-rust/chashmap-2.2.2
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
 DEPEND==dev-rust/owning_ref-0.3*:= =dev-rust/parking_lot-0.4*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Fast, concurrent hash maps with extensive API
-EAPI=6
+EAPI=7
 HOMEPAGE=https://gitlab.redox-os.org/redox-os/chashmap
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=MIT
+RDEPEND==dev-rust/owning_ref-0.3*:= =dev-rust/parking_lot-0.4*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.2.2/r0
 SRC_URI=https://crates.io/api/v1/crates/chashmap/2.2.2/download -> chashmap-2.2.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=9db65a3685eca924e57271a21dfbc539
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5cdfad587436a41d9da5e91e0f6d01b5
diff --git a/metadata/md5-cache/dev-rust/chashmap-2.2.2-r2 b/metadata/md5-cache/dev-rust/chashmap-2.2.2-r2
new file mode 100644
index 0000000..d133024
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/chashmap-2.2.2-r2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/owning_ref-0.3*:= =dev-rust/parking_lot-0.4*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Fast, concurrent hash maps with extensive API
+EAPI=7
+HOMEPAGE=https://gitlab.redox-os.org/redox-os/chashmap
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND==dev-rust/owning_ref-0.3*:= =dev-rust/parking_lot-0.4*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=2.2.2/r2
+SRC_URI=https://crates.io/api/v1/crates/chashmap/2.2.2/download -> chashmap-2.2.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5cdfad587436a41d9da5e91e0f6d01b5
diff --git a/metadata/md5-cache/dev-rust/chromeos-dbus-bindings-0.24.52-r5 b/metadata/md5-cache/dev-rust/chromeos-dbus-bindings-0.24.52-r5
deleted file mode 100644
index 59e0d1d..0000000
--- a/metadata/md5-cache/dev-rust/chromeos-dbus-bindings-0.24.52-r5
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=>=dev-rust/dbus-codegen-0.5.0 dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=>=virtual/rust-1.39.0:=
-DESCRIPTION=Chrome OS D-Bus bindings generator for Rust.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/chromeos-dbus-bindings/
-IUSE=cros_host cros_workon_tree_e8023258ebab0150d1674664c16f6d197136cc8b cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!chromeos-base/chromeos-dbus-bindings-rust
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.24.52-r5
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e407f7ca361068f213a6e729c52ed84c
diff --git a/metadata/md5-cache/dev-rust/chromeos-dbus-bindings-0.25.52-r11 b/metadata/md5-cache/dev-rust/chromeos-dbus-bindings-0.25.52-r11
new file mode 100644
index 0000000..2127572
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/chromeos-dbus-bindings-0.25.52-r11
@@ -0,0 +1,15 @@
+BDEPEND=>=dev-rust/dbus-codegen-0.9.0 dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/which-4*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Chrome OS D-Bus bindings generator for Rust.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/chromeos-dbus-bindings/
+IUSE=cros_host cros_workon_tree_8753ae37f2abfcd79989d4a4d795bfa11b50816f cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!chromeos-base/chromeos-dbus-bindings-rust =dev-rust/which-4*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.25.52-r11
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=76bef7ff11bc2a515fc5c712b95fadfa
diff --git a/metadata/md5-cache/dev-rust/chromeos-dbus-bindings-9999 b/metadata/md5-cache/dev-rust/chromeos-dbus-bindings-9999
index f1415d7..63fbb90 100644
--- a/metadata/md5-cache/dev-rust/chromeos-dbus-bindings-9999
+++ b/metadata/md5-cache/dev-rust/chromeos-dbus-bindings-9999
@@ -1,6 +1,6 @@
-BDEPEND=>=dev-rust/dbus-codegen-0.5.0 dev-vcs/git
+BDEPEND=>=dev-rust/dbus-codegen-0.9.0 dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=>=virtual/rust-1.39.0:=
+DEPEND==dev-rust/which-4*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Chrome OS D-Bus bindings generator for Rust.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/chromeos-dbus-bindings/
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=!chromeos-base/chromeos-dbus-bindings-rust
+RDEPEND=!chromeos-base/chromeos-dbus-bindings-rust =dev-rust/which-4*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d80e3982bee2233a28f611dce600471c
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=96e6253df595127bed9895cfabdffb8c
diff --git a/metadata/md5-cache/dev-rust/chrono-0.4.19 b/metadata/md5-cache/dev-rust/chrono-0.4.19
index 06f84ac..4c4b465 100644
--- a/metadata/md5-cache/dev-rust/chrono-0.4.19
+++ b/metadata/md5-cache/dev-rust/chrono-0.4.19
@@ -1,13 +1,15 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/num-integer-0.1.36:= =dev-rust/num-traits-0.2*:= >=dev-rust/num-iter-0.1.35:= >=dev-rust/rustc-serialize-0.3.20:= =dev-rust/serde-1*:= =dev-rust/serde_derive-1*:= =dev-rust/serde_json-1*:= >=dev-rust/time-0.1.43:= <dev-rust/time-0.2.0 =dev-rust/bincode-0.8*:= >=virtual/rust-1.39.0:=
+DEPEND==dev-rust/bincode-0.8*:= >=dev-rust/num-integer-0.1.36:= <dev-rust/num-integer-0.2.0 >=dev-rust/num-iter-0.1.35:= <dev-rust/num-iter-0.2.0 =dev-rust/num-traits-0.2*:= >=dev-rust/rustc-serialize-0.3.20:= <dev-rust/rustc-serialize-0.4.0 =dev-rust/serde-1*:= =dev-rust/serde_derive-1*:= =dev-rust/serde_json-1*:= >=dev-rust/time-0.1.43:= <dev-rust/time-0.2.0 >=virtual/rust-1.39.0:=
 DESCRIPTION=Aims to be a feature-complete superset of the time library
 EAPI=7
 HOMEPAGE=https://github.com/chronotope/chrono
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/bincode-0.8*:= >=dev-rust/num-integer-0.1.36:= <dev-rust/num-integer-0.2.0 >=dev-rust/num-iter-0.1.35:= <dev-rust/num-iter-0.2.0 =dev-rust/num-traits-0.2*:= >=dev-rust/rustc-serialize-0.3.20:= <dev-rust/rustc-serialize-0.4.0 =dev-rust/serde-1*:= =dev-rust/serde_derive-1*:= =dev-rust/serde_json-1*:= >=dev-rust/time-0.1.43:= <dev-rust/time-0.2.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.4.19/r0
 SRC_URI=https://crates.io/api/v1/crates/chrono/0.4.19/download -> chrono-0.4.19.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e0a4174f7bdd14a30635c8f032ca4a30
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2fb5a3080de332458e4f480ad9f39b3a
diff --git a/metadata/md5-cache/dev-rust/chrono-0.4.19-r2 b/metadata/md5-cache/dev-rust/chrono-0.4.19-r2
new file mode 100644
index 0000000..1e0f265
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/chrono-0.4.19-r2
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/bincode-0.8*:= >=dev-rust/num-integer-0.1.36:= <dev-rust/num-integer-0.2.0 >=dev-rust/num-iter-0.1.35:= <dev-rust/num-iter-0.2.0 =dev-rust/num-traits-0.2*:= >=dev-rust/rustc-serialize-0.3.20:= <dev-rust/rustc-serialize-0.4.0 =dev-rust/serde-1*:= =dev-rust/serde_derive-1*:= =dev-rust/serde_json-1*:= >=dev-rust/time-0.1.43:= <dev-rust/time-0.2.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Aims to be a feature-complete superset of the time library
+EAPI=7
+HOMEPAGE=https://github.com/chronotope/chrono
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/bincode-0.8*:= >=dev-rust/num-integer-0.1.36:= <dev-rust/num-integer-0.2.0 >=dev-rust/num-iter-0.1.35:= <dev-rust/num-iter-0.2.0 =dev-rust/num-traits-0.2*:= >=dev-rust/rustc-serialize-0.3.20:= <dev-rust/rustc-serialize-0.4.0 =dev-rust/serde-1*:= =dev-rust/serde_derive-1*:= =dev-rust/serde_json-1*:= >=dev-rust/time-0.1.43:= <dev-rust/time-0.2.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.4.19/r2
+SRC_URI=https://crates.io/api/v1/crates/chrono/0.4.19/download -> chrono-0.4.19.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2fb5a3080de332458e4f480ad9f39b3a
diff --git a/metadata/md5-cache/dev-rust/chunked_transfer-1.2.0 b/metadata/md5-cache/dev-rust/chunked_transfer-1.2.0
index 46964bc..9e678b2 100644
--- a/metadata/md5-cache/dev-rust/chunked_transfer-1.2.0
+++ b/metadata/md5-cache/dev-rust/chunked_transfer-1.2.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.2.0/r0
 SRC_URI=https://crates.io/api/v1/crates/chunked_transfer/1.2.0/download -> chunked_transfer-1.2.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6f2f14ac2ade340f8e10e051cd69c789
diff --git a/metadata/md5-cache/dev-rust/clang-sys-1.2.0 b/metadata/md5-cache/dev-rust/clang-sys-1.2.0
index 28cadfb..3253650 100644
--- a/metadata/md5-cache/dev-rust/clang-sys-1.2.0
+++ b/metadata/md5-cache/dev-rust/clang-sys-1.2.0
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.2.0/r0
 SRC_URI=https://crates.io/api/v1/crates/clang-sys/1.2.0/download -> clang-sys-1.2.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=fd58659b93b7d9d1523890463e7d2a4f
diff --git a/metadata/md5-cache/dev-rust/clap-2.33.3 b/metadata/md5-cache/dev-rust/clap-2.33.3
index 8e7c1f8..a2c95ef 100644
--- a/metadata/md5-cache/dev-rust/clap-2.33.3
+++ b/metadata/md5-cache/dev-rust/clap-2.33.3
@@ -1,14 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/atty-0.2.2:= <dev-rust/atty-0.3.0 =dev-rust/bitflags-1*:= ~dev-rust/clippy-0.0.166:= =dev-rust/strsim-0.8*:= =dev-rust/term_size-0.3*:= =dev-rust/textwrap-0.11*:= >=dev-rust/unicode-width-0.1.4:= <dev-rust/unicode-width-0.2.0 =dev-rust/vec_map-0.8*:= >=dev-rust/yaml-rust-0.3.5:= <dev-rust/yaml-rust-0.4.0 =dev-rust/ansi_term-0.11*:= >=virtual/rust-1.39.0:=
+DEPEND=>=dev-rust/atty-0.2.2:= <dev-rust/atty-0.3.0 =dev-rust/bitflags-1*:= ~dev-rust/clippy-0.0.166:= =dev-rust/strsim-0.8*:= =dev-rust/term_size-0.3*:= =dev-rust/textwrap-0.11*:= >=dev-rust/unicode-width-0.1.4:= <dev-rust/unicode-width-0.2.0 =dev-rust/vec_map-0.8*:= =dev-rust/yaml-rust-0.3*:= =dev-rust/ansi_term-0.11*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=A simple to use, efficient, and full-featured Command Line Argument Parser
 EAPI=7
 HOMEPAGE=https://clap.rs/
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=MIT
-RDEPEND=>=dev-rust/atty-0.2.2:= <dev-rust/atty-0.3.0 =dev-rust/bitflags-1*:= ~dev-rust/clippy-0.0.166:= =dev-rust/strsim-0.8*:= =dev-rust/term_size-0.3*:= =dev-rust/textwrap-0.11*:= >=dev-rust/unicode-width-0.1.4:= <dev-rust/unicode-width-0.2.0 =dev-rust/vec_map-0.8*:= >=dev-rust/yaml-rust-0.3.5:= <dev-rust/yaml-rust-0.4.0 =dev-rust/ansi_term-0.11*:=
+RDEPEND=>=dev-rust/atty-0.2.2:= <dev-rust/atty-0.3.0 =dev-rust/bitflags-1*:= ~dev-rust/clippy-0.0.166:= =dev-rust/strsim-0.8*:= =dev-rust/term_size-0.3*:= =dev-rust/textwrap-0.11*:= >=dev-rust/unicode-width-0.1.4:= <dev-rust/unicode-width-0.2.0 =dev-rust/vec_map-0.8*:= =dev-rust/yaml-rust-0.3*:= =dev-rust/ansi_term-0.11*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.33.3/r0
 SRC_URI=https://crates.io/api/v1/crates/clap/2.33.3/download -> clap-2.33.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8ebd93651186ec4cb41bc607008c548e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a4f292bc92f03bad125aef4821a3a6f0
diff --git a/metadata/md5-cache/dev-rust/clap-2.33.3-r1 b/metadata/md5-cache/dev-rust/clap-2.33.3-r1
new file mode 100644
index 0000000..49d01ca
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/clap-2.33.3-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/atty-0.2.2:= <dev-rust/atty-0.3.0 =dev-rust/bitflags-1*:= ~dev-rust/clippy-0.0.166:= =dev-rust/strsim-0.8*:= =dev-rust/term_size-0.3*:= =dev-rust/textwrap-0.11*:= >=dev-rust/unicode-width-0.1.4:= <dev-rust/unicode-width-0.2.0 =dev-rust/vec_map-0.8*:= =dev-rust/yaml-rust-0.3*:= =dev-rust/ansi_term-0.11*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A simple to use, efficient, and full-featured Command Line Argument Parser
+EAPI=7
+HOMEPAGE=https://clap.rs/
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=>=dev-rust/atty-0.2.2:= <dev-rust/atty-0.3.0 =dev-rust/bitflags-1*:= ~dev-rust/clippy-0.0.166:= =dev-rust/strsim-0.8*:= =dev-rust/term_size-0.3*:= =dev-rust/textwrap-0.11*:= >=dev-rust/unicode-width-0.1.4:= <dev-rust/unicode-width-0.2.0 =dev-rust/vec_map-0.8*:= =dev-rust/yaml-rust-0.3*:= =dev-rust/ansi_term-0.11*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=2.33.3/r1
+SRC_URI=https://crates.io/api/v1/crates/clap/2.33.3/download -> clap-2.33.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a4f292bc92f03bad125aef4821a3a6f0
diff --git a/metadata/md5-cache/dev-rust/clap-3.0.0_beta2 b/metadata/md5-cache/dev-rust/clap-3.0.0_beta2
new file mode 100644
index 0000000..6f06624
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/clap-3.0.0_beta2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/atty-0.2*:= >=dev-rust/bitflags-1.2.0:= <dev-rust/bitflags-2.0.0 =dev-rust/clap_derive-3*:= =dev-rust/indexmap-1*:= =dev-rust/lazy_static-1*:= >=dev-rust/os_str_bytes-2.3.0:= <dev-rust/os_str_bytes-3.0.0 =dev-rust/regex-1*:= =dev-rust/strsim-0.10*:= >=dev-rust/termcolor-1.1.0:= <dev-rust/termcolor-2.0.0 >=dev-rust/terminal_size-0.1.12:= <dev-rust/terminal_size-0.2.0 =dev-rust/textwrap-0.12*:= =dev-rust/unicode-width-0.1*:= =dev-rust/vec_map-0.8*:= >=dev-rust/yaml-rust-0.4.1:= <dev-rust/yaml-rust-0.5.0 test? ( =dev-rust/criterion-0.3.2:= =dev-rust/version-sync-0.8*:= ) >=virtual/rust-1.39.0:=
+DESCRIPTION=A simple to use, efficient, and full-featured Command Line Argument Parser
+EAPI=7
+HOMEPAGE=https://clap.rs/
+IUSE=test cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/atty-0.2*:= >=dev-rust/bitflags-1.2.0:= <dev-rust/bitflags-2.0.0 =dev-rust/clap_derive-3*:= =dev-rust/indexmap-1*:= =dev-rust/lazy_static-1*:= >=dev-rust/os_str_bytes-2.3.0:= <dev-rust/os_str_bytes-3.0.0 =dev-rust/regex-1*:= =dev-rust/strsim-0.10*:= >=dev-rust/termcolor-1.1.0:= <dev-rust/termcolor-2.0.0 >=dev-rust/terminal_size-0.1.12:= <dev-rust/terminal_size-0.2.0 =dev-rust/textwrap-0.12*:= =dev-rust/unicode-width-0.1*:= =dev-rust/vec_map-0.8*:= >=dev-rust/yaml-rust-0.4.1:= <dev-rust/yaml-rust-0.5.0 test? ( =dev-rust/criterion-0.3.2:= =dev-rust/version-sync-0.8*:= )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=3.0.0_beta2/r0
+SRC_URI=https://crates.io/api/v1/crates/clap/3.0.0-beta.2/download -> clap-3.0.0_beta2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7fc13bfe62fd775db54640a58a73a31f
diff --git a/metadata/md5-cache/dev-rust/clap_derive-3.0.0_beta2 b/metadata/md5-cache/dev-rust/clap_derive-3.0.0_beta2
new file mode 100644
index 0000000..78d049f
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/clap_derive-3.0.0_beta2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/heck-0.3*:= =dev-rust/proc-macro-error-1*:= =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Parse command line argument by defining a struct, derive crate.
+EAPI=7
+HOMEPAGE=https://clap.rs/
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/heck-0.3*:= =dev-rust/proc-macro-error-1*:= =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=3.0.0_beta2/r0
+SRC_URI=https://crates.io/api/v1/crates/clap_derive/3.0.0-beta.2/download -> clap_derive-3.0.0_beta2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6cc452ed9906e9cbb738580b1294dbbd
diff --git a/metadata/md5-cache/dev-rust/clippy-0.0.166 b/metadata/md5-cache/dev-rust/clippy-0.0.166
index 3592ab7..9640129 100644
--- a/metadata/md5-cache/dev-rust/clippy-0.0.166
+++ b/metadata/md5-cache/dev-rust/clippy-0.0.166
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.0.166/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fe642eb1e1c685d100e0b97134e98668
diff --git a/metadata/md5-cache/dev-rust/cloudabi-0.0.3 b/metadata/md5-cache/dev-rust/cloudabi-0.0.3
index 22e97ab..5d9daa2 100644
--- a/metadata/md5-cache/dev-rust/cloudabi-0.0.3
+++ b/metadata/md5-cache/dev-rust/cloudabi-0.0.3
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.0.3/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/cloudflare-zlib-sys-0.2.0 b/metadata/md5-cache/dev-rust/cloudflare-zlib-sys-0.2.0
index a01d805..e734ca9 100644
--- a/metadata/md5-cache/dev-rust/cloudflare-zlib-sys-0.2.0
+++ b/metadata/md5-cache/dev-rust/cloudflare-zlib-sys-0.2.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.0/r0
 SRC_URI=https://crates.io/api/v1/crates/cloudflare-zlib-sys/0.2.0/download -> cloudflare-zlib-sys-0.2.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=4fd54b136eb3f8a931e8a860b0b62569
diff --git a/metadata/md5-cache/dev-rust/codespan-reporting-0.11.1 b/metadata/md5-cache/dev-rust/codespan-reporting-0.11.1
index 2156abc..a9f3ad4 100644
--- a/metadata/md5-cache/dev-rust/codespan-reporting-0.11.1
+++ b/metadata/md5-cache/dev-rust/codespan-reporting-0.11.1
@@ -8,7 +8,8 @@
 LICENSE=Apache-2.0
 RDEPEND=>=dev-rust/serde-1:= <dev-rust/serde-2 >=dev-rust/termcolor-1:= <dev-rust/termcolor-2 >=dev-rust/unicode-width-0.1:= <dev-rust/unicode-width-0.2
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.11.1/r0
 SRC_URI=https://crates.io/api/v1/crates/codespan-reporting/0.11.1/download -> codespan-reporting-0.11.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9a145981d7b4839733e0f389792d4f09
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e83b75549cb2250fac96e012c2991af8
diff --git a/metadata/md5-cache/dev-rust/codespan-reporting-0.9.5 b/metadata/md5-cache/dev-rust/codespan-reporting-0.9.5
index db1c6cd..d47ad3b 100644
--- a/metadata/md5-cache/dev-rust/codespan-reporting-0.9.5
+++ b/metadata/md5-cache/dev-rust/codespan-reporting-0.9.5
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.9.5/r0
 SRC_URI=https://crates.io/api/v1/crates/codespan-reporting/0.9.5/download -> codespan-reporting-0.9.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2c5335b5f688d9778a6cea33fcb0ad2a
diff --git a/metadata/md5-cache/dev-rust/compiler_builtins-0.1.0 b/metadata/md5-cache/dev-rust/compiler_builtins-0.1.0
index 04fbea1..270346f 100644
--- a/metadata/md5-cache/dev-rust/compiler_builtins-0.1.0
+++ b/metadata/md5-cache/dev-rust/compiler_builtins-0.1.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/compiler_builtins-0.1.2 b/metadata/md5-cache/dev-rust/compiler_builtins-0.1.2
index fa12c23..54c537d 100644
--- a/metadata/md5-cache/dev-rust/compiler_builtins-0.1.2
+++ b/metadata/md5-cache/dev-rust/compiler_builtins-0.1.2
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.2/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/compiletest_rs-0.3.19 b/metadata/md5-cache/dev-rust/compiletest_rs-0.3.19
index 1ef783f..088456b 100644
--- a/metadata/md5-cache/dev-rust/compiletest_rs-0.3.19
+++ b/metadata/md5-cache/dev-rust/compiletest_rs-0.3.19
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.19/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=575a52568022b63766fb1d6754a308ae
diff --git a/metadata/md5-cache/dev-rust/const-random-0.1.6 b/metadata/md5-cache/dev-rust/const-random-0.1.6
index 6b99788..0baabab 100644
--- a/metadata/md5-cache/dev-rust/const-random-0.1.6
+++ b/metadata/md5-cache/dev-rust/const-random-0.1.6
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.6/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/const_fn-0.4.3 b/metadata/md5-cache/dev-rust/const_fn-0.4.3
index 033ff4b..c252f31 100644
--- a/metadata/md5-cache/dev-rust/const_fn-0.4.3
+++ b/metadata/md5-cache/dev-rust/const_fn-0.4.3
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.3/r0
 SRC_URI=https://crates.io/api/v1/crates/const_fn/0.4.3/download -> const_fn-0.4.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9207dbeab4701c58cb0b7abd2838d8fb
diff --git a/metadata/md5-cache/dev-rust/cortex-m-0.6.7 b/metadata/md5-cache/dev-rust/cortex-m-0.6.7
new file mode 100644
index 0000000..576f553
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/cortex-m-0.6.7
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/aligned-0.3.1:= <dev-rust/aligned-0.4.0 =dev-rust/bare-metal-0.2*:= >=dev-rust/bitfield-0.13.2:= <dev-rust/bitfield-0.14.0 =dev-rust/cortex-m-0.7*:= =dev-rust/volatile-register-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Low level access to Cortex-M processors
+EAPI=7
+HOMEPAGE=https://crates.io/crates/cortex-m
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/aligned-0.3.1:= <dev-rust/aligned-0.4.0 =dev-rust/bare-metal-0.2*:= >=dev-rust/bitfield-0.13.2:= <dev-rust/bitfield-0.14.0 =dev-rust/cortex-m-0.7*:= =dev-rust/volatile-register-0.2*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.6.7/r0
+SRC_URI=https://crates.io/api/v1/crates/cortex-m/0.6.7/download -> cortex-m-0.6.7.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=65cb84b3947bdea70d5ec18b020a4904
diff --git a/metadata/md5-cache/dev-rust/cortex-m-0.6.7-r1 b/metadata/md5-cache/dev-rust/cortex-m-0.6.7-r1
new file mode 100644
index 0000000..81fa550
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/cortex-m-0.6.7-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/aligned-0.3.1:= <dev-rust/aligned-0.4.0 =dev-rust/bare-metal-0.2*:= >=dev-rust/bitfield-0.13.2:= <dev-rust/bitfield-0.14.0 =dev-rust/cortex-m-0.7*:= =dev-rust/volatile-register-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Low level access to Cortex-M processors
+EAPI=7
+HOMEPAGE=https://crates.io/crates/cortex-m
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/aligned-0.3.1:= <dev-rust/aligned-0.4.0 =dev-rust/bare-metal-0.2*:= >=dev-rust/bitfield-0.13.2:= <dev-rust/bitfield-0.14.0 =dev-rust/cortex-m-0.7*:= =dev-rust/volatile-register-0.2*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.6.7/r1
+SRC_URI=https://crates.io/api/v1/crates/cortex-m/0.6.7/download -> cortex-m-0.6.7.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=65cb84b3947bdea70d5ec18b020a4904
diff --git a/metadata/md5-cache/dev-rust/cortex-m-0.7.3 b/metadata/md5-cache/dev-rust/cortex-m-0.7.3
new file mode 100644
index 0000000..aa06eaf
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/cortex-m-0.7.3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/bare-metal-0.2*:= >=dev-rust/bitfield-0.13.2:= <dev-rust/bitfield-0.14.0 >=dev-rust/embedded-hal-0.2.4:= <dev-rust/embedded-hal-0.3.0 =dev-rust/volatile-register-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Low level access to Cortex-M processors
+EAPI=7
+HOMEPAGE=https://crates.io/crates/cortex-m
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/bare-metal-0.2*:= >=dev-rust/bitfield-0.13.2:= <dev-rust/bitfield-0.14.0 >=dev-rust/embedded-hal-0.2.4:= <dev-rust/embedded-hal-0.3.0 =dev-rust/volatile-register-0.2*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.7.3/r0
+SRC_URI=https://crates.io/api/v1/crates/cortex-m/0.7.3/download -> cortex-m-0.7.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b082b8a1464e7956d8e0f12b6ec85c83
diff --git a/metadata/md5-cache/dev-rust/cortex-m-0.7.3-r1 b/metadata/md5-cache/dev-rust/cortex-m-0.7.3-r1
new file mode 100644
index 0000000..8a96ab5
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/cortex-m-0.7.3-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/bare-metal-0.2*:= >=dev-rust/bitfield-0.13.2:= <dev-rust/bitfield-0.14.0 >=dev-rust/embedded-hal-0.2.4:= <dev-rust/embedded-hal-0.3.0 =dev-rust/volatile-register-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Low level access to Cortex-M processors
+EAPI=7
+HOMEPAGE=https://crates.io/crates/cortex-m
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/bare-metal-0.2*:= >=dev-rust/bitfield-0.13.2:= <dev-rust/bitfield-0.14.0 >=dev-rust/embedded-hal-0.2.4:= <dev-rust/embedded-hal-0.3.0 =dev-rust/volatile-register-0.2*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.7.3/r1
+SRC_URI=https://crates.io/api/v1/crates/cortex-m/0.7.3/download -> cortex-m-0.7.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b082b8a1464e7956d8e0f12b6ec85c83
diff --git a/metadata/md5-cache/dev-rust/cortex-m-rt-0.6.14 b/metadata/md5-cache/dev-rust/cortex-m-rt-0.6.14
new file mode 100644
index 0000000..b9edab9
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/cortex-m-rt-0.6.14
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=~dev-rust/cortex-m-rt-macros-0.1.8:= >=dev-rust/r0-0.2.2:= <dev-rust/r0-0.3.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Minimal runtime / startup for Cortex-M microcontrollers
+EAPI=7
+HOMEPAGE=https://crates.io/crates/cortex-m-rt
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=~dev-rust/cortex-m-rt-macros-0.1.8:= >=dev-rust/r0-0.2.2:= <dev-rust/r0-0.3.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.6.14/r0
+SRC_URI=https://crates.io/api/v1/crates/cortex-m-rt/0.6.14/download -> cortex-m-rt-0.6.14.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c7d913274d27f0fb44bbbbd4e9556e07
diff --git a/metadata/md5-cache/dev-rust/cortex-m-rt-0.6.14-r1 b/metadata/md5-cache/dev-rust/cortex-m-rt-0.6.14-r1
new file mode 100644
index 0000000..ce3048d
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/cortex-m-rt-0.6.14-r1
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=~dev-rust/cortex-m-rt-macros-0.1.8:= >=dev-rust/r0-0.2.2:= <dev-rust/r0-0.3.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Minimal runtime / startup for Cortex-M microcontrollers
+EAPI=7
+HOMEPAGE=https://crates.io/crates/cortex-m-rt
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=~dev-rust/cortex-m-rt-macros-0.1.8:= >=dev-rust/r0-0.2.2:= <dev-rust/r0-0.3.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.6.14/r1
+SRC_URI=https://crates.io/api/v1/crates/cortex-m-rt/0.6.14/download -> cortex-m-rt-0.6.14.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c7d913274d27f0fb44bbbbd4e9556e07
diff --git a/metadata/md5-cache/dev-rust/cortex-m-rt-macros-0.1.8 b/metadata/md5-cache/dev-rust/cortex-m-rt-macros-0.1.8
new file mode 100644
index 0000000..92a6b28
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/cortex-m-rt-macros-0.1.8
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Attributes re-exported in "cortex-m-rt"
+EAPI=7
+HOMEPAGE=https://crates.io/crates/cortex-m-rt-macros
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.8/r0
+SRC_URI=https://crates.io/api/v1/crates/cortex-m-rt-macros/0.1.8/download -> cortex-m-rt-macros-0.1.8.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=43a627dd2b7506cb5617afe10015af40
diff --git a/metadata/md5-cache/dev-rust/cortex-m-rtic-0.5.7 b/metadata/md5-cache/dev-rust/cortex-m-rtic-0.5.7
new file mode 100644
index 0000000..8bcf53f
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/cortex-m-rtic-0.5.7
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/cortex-m-0.6.2:= <dev-rust/cortex-m-0.7.0 >=dev-rust/cortex-m-rt-0.6.9:= <dev-rust/cortex-m-rt-0.7.0 >=dev-rust/cortex-m-rtic-macros-0.5.3:= <dev-rust/cortex-m-rtic-macros-0.6.0 >=dev-rust/heapless-0.6.1:= <dev-rust/heapless-0.7.0 =dev-rust/microamp-0.1*:= =dev-rust/rtic-core-0.3*:= =dev-rust/version_check-0.9*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Real-Time Interrupt-driven Concurrency (RTIC): a concurrency framework for building real-time systems
+EAPI=7
+HOMEPAGE=https://crates.io/crates/cortex-m-rtic
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/cortex-m-0.6.2:= <dev-rust/cortex-m-0.7.0 >=dev-rust/cortex-m-rt-0.6.9:= <dev-rust/cortex-m-rt-0.7.0 >=dev-rust/cortex-m-rtic-macros-0.5.3:= <dev-rust/cortex-m-rtic-macros-0.6.0 >=dev-rust/heapless-0.6.1:= <dev-rust/heapless-0.7.0 =dev-rust/microamp-0.1*:= =dev-rust/rtic-core-0.3*:= =dev-rust/version_check-0.9*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.5.7/r0
+SRC_URI=https://crates.io/api/v1/crates/cortex-m-rtic/0.5.7/download -> cortex-m-rtic-0.5.7.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5971b32ec69741fb125e178dc6272053
diff --git a/metadata/md5-cache/dev-rust/cortex-m-rtic-macros-0.5.3 b/metadata/md5-cache/dev-rust/cortex-m-rtic-macros-0.5.3
new file mode 100644
index 0000000..c819b91
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/cortex-m-rtic-macros-0.5.3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/rtic-syntax-0.4*:= =dev-rust/syn-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Procedural macros of the cortex-m-rtic crate
+EAPI=7
+HOMEPAGE=https://crates.io/crates/cortex-m-rtic-macros
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/rtic-syntax-0.4*:= =dev-rust/syn-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.5.3/r0
+SRC_URI=https://crates.io/api/v1/crates/cortex-m-rtic-macros/0.5.3/download -> cortex-m-rtic-macros-0.5.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9b9b952fcac7d3f81fb9b75e65315381
diff --git a/metadata/md5-cache/dev-rust/cpp_demangle-0.2.3 b/metadata/md5-cache/dev-rust/cpp_demangle-0.2.3
index 89b3bdd..e8afd48 100644
--- a/metadata/md5-cache/dev-rust/cpp_demangle-0.2.3
+++ b/metadata/md5-cache/dev-rust/cpp_demangle-0.2.3
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.3/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/crates-index-0.5.1 b/metadata/md5-cache/dev-rust/crates-index-0.5.1
index 0d2504c..91f89a2 100644
--- a/metadata/md5-cache/dev-rust/crates-index-0.5.1
+++ b/metadata/md5-cache/dev-rust/crates-index-0.5.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.5.1/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/crc-2.0.0 b/metadata/md5-cache/dev-rust/crc-2.0.0
new file mode 100644
index 0000000..f307e1f
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/crc-2.0.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/crc-catalog-1.1.0 <dev-rust/crc-catalog-2.0.0_alpha:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Rust implementation of CRC(16, 32, 64) with support of various standards
+EAPI=7
+HOMEPAGE=https://crates.io/crates/crc
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/crc-catalog-1.1.0 <dev-rust/crc-catalog-2.0.0_alpha:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=2.0.0/r0
+SRC_URI=https://crates.io/api/v1/crates/crc/2.0.0/download -> crc-2.0.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e89d69fae0747e44fe8d25bc96a94e17
diff --git a/metadata/md5-cache/dev-rust/crc-catalog-1.1.1 b/metadata/md5-cache/dev-rust/crc-catalog-1.1.1
new file mode 100644
index 0000000..419abcb
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/crc-catalog-1.1.1
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Catalog of CRC algorithms (generated from http://reveng.sourceforge.net/crc-catalogue) expressed as simple Rust structs.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/crc-catalog
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.1.1/r0
+SRC_URI=https://crates.io/api/v1/crates/crc-catalog/1.1.1/download -> crc-catalog-1.1.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=27beabd4a7002be45fb0c2038f6e8e3f
diff --git a/metadata/md5-cache/dev-rust/crc32fast-1.2.1 b/metadata/md5-cache/dev-rust/crc32fast-1.2.1
index 05cc3c4..50e18f9 100644
--- a/metadata/md5-cache/dev-rust/crc32fast-1.2.1
+++ b/metadata/md5-cache/dev-rust/crc32fast-1.2.1
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.2.1/r0
 SRC_URI=https://crates.io/api/v1/crates/crc32fast/1.2.1/download -> crc32fast-1.2.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b1f5f9086a318d207cffdf7866910bcb
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=78c9a964c1118a8ad64d1ad3e62a34c5
diff --git a/metadata/md5-cache/dev-rust/criterion-0.2.0 b/metadata/md5-cache/dev-rust/criterion-0.2.0
index 83c94df..9023bf8 100644
--- a/metadata/md5-cache/dev-rust/criterion-0.2.0
+++ b/metadata/md5-cache/dev-rust/criterion-0.2.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/criterion-0.3.0 b/metadata/md5-cache/dev-rust/criterion-0.3.0
index c04a61e..31f69ca 100644
--- a/metadata/md5-cache/dev-rust/criterion-0.3.0
+++ b/metadata/md5-cache/dev-rust/criterion-0.3.0
@@ -8,5 +8,5 @@
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=c648570a45c1b0c9bc5938c9f3d46062
diff --git a/metadata/md5-cache/dev-rust/criterion-0.3.2 b/metadata/md5-cache/dev-rust/criterion-0.3.2
new file mode 100644
index 0000000..f23f179e
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/criterion-0.3.2
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty criterion crate
+EAPI=7
+HOMEPAGE=https://github.com/bheisler/criterion.rs
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.3.2/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c648570a45c1b0c9bc5938c9f3d46062
diff --git a/metadata/md5-cache/dev-rust/cros_async-0.1.0-r24 b/metadata/md5-cache/dev-rust/cros_async-0.1.0-r24
new file mode 100644
index 0000000..8a0b118
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/cros_async-0.1.0-r24
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/async-task-4*:= >=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/data_model:= =dev-rust/futures-0.3*:= dev-rust/io_uring:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3 =dev-rust/paste-1*:= =dev-rust/pin-utils-0.1*:= =dev-rust/remain-0.2*:= =dev-rust/slab-0.4*:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2 >=virtual/rust-1.39.0:=
+DESCRIPTION=Rust async tools for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/cros_async
+IUSE=cros_host cros_workon_tree_b334f296112adcbabfe01632be97e1770fd43075 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND==dev-rust/async-task-4*:= >=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/data_model:= =dev-rust/futures-0.3*:= dev-rust/io_uring:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3 =dev-rust/paste-1*:= =dev-rust/pin-utils-0.1*:= =dev-rust/remain-0.2*:= =dev-rust/slab-0.4*:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r24
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=842a96f8469499a38dbb89e851c3059e
diff --git a/metadata/md5-cache/dev-rust/cros_async-0.1.0-r9 b/metadata/md5-cache/dev-rust/cros_async-0.1.0-r9
deleted file mode 100644
index a581be6..0000000
--- a/metadata/md5-cache/dev-rust/cros_async-0.1.0-r9
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/async-task-4*:= >=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/data_model:= =dev-rust/futures-0.3*:= dev-rust/io_uring:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3 =dev-rust/paste-1*:= =dev-rust/pin-utils-0.1*:= =dev-rust/slab-0.4*:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2 >=virtual/rust-1.39.0:=
-DESCRIPTION=Rust async tools for Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/cros_async
-IUSE=cros_host cros_workon_tree_671a7be7202d6125151e12fb7e4331d0d184cb5f cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND==dev-rust/async-task-4*:= >=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/data_model:= =dev-rust/futures-0.3*:= dev-rust/io_uring:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3 =dev-rust/paste-1*:= =dev-rust/pin-utils-0.1*:= =dev-rust/slab-0.4*:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r9
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=fa1d2e2c7933a81668f5bfd6236e7d0f
diff --git a/metadata/md5-cache/dev-rust/cros_async-9999 b/metadata/md5-cache/dev-rust/cros_async-9999
index 871ff97..2f91cae 100644
--- a/metadata/md5-cache/dev-rust/cros_async-9999
+++ b/metadata/md5-cache/dev-rust/cros_async-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/async-task-4*:= >=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/data_model:= =dev-rust/futures-0.3*:= dev-rust/io_uring:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3 =dev-rust/paste-1*:= =dev-rust/pin-utils-0.1*:= =dev-rust/slab-0.4*:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2 >=virtual/rust-1.39.0:=
+DEPEND==dev-rust/async-task-4*:= >=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/data_model:= =dev-rust/futures-0.3*:= dev-rust/io_uring:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3 =dev-rust/paste-1*:= =dev-rust/pin-utils-0.1*:= =dev-rust/remain-0.2*:= =dev-rust/slab-0.4*:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2 >=virtual/rust-1.39.0:=
 DESCRIPTION=Rust async tools for Chrome OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/cros_async
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND==dev-rust/async-task-4*:= >=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/data_model:= =dev-rust/futures-0.3*:= dev-rust/io_uring:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3 =dev-rust/paste-1*:= =dev-rust/pin-utils-0.1*:= =dev-rust/slab-0.4*:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2
+RDEPEND==dev-rust/async-task-4*:= >=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/data_model:= =dev-rust/futures-0.3*:= dev-rust/io_uring:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3 =dev-rust/paste-1*:= =dev-rust/pin-utils-0.1*:= =dev-rust/remain-0.2*:= =dev-rust/slab-0.4*:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ed38001abda5a1e018ee4c3d7053af45
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=789e6d0aa9946416ddf594c9cede6ec0
diff --git a/metadata/md5-cache/dev-rust/cros_fuzz-0.1.0-r174 b/metadata/md5-cache/dev-rust/cros_fuzz-0.1.0-r174
new file mode 100644
index 0000000..cca587e
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/cros_fuzz-0.1.0-r174
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/rand_core-0.4*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Support crate for running rust fuzzers on Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/cros-fuzz
+IUSE=fuzzer test cros_host cros_workon_tree_c5944a955c7994afdaaee1facb2604801bb47e03 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND==dev-rust/rand_core-0.4*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r174
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=735c296b5bcaa203e38802aec24240e9
diff --git a/metadata/md5-cache/dev-rust/cros_fuzz-0.1.0-r34 b/metadata/md5-cache/dev-rust/cros_fuzz-0.1.0-r34
deleted file mode 100644
index 8a65485..0000000
--- a/metadata/md5-cache/dev-rust/cros_fuzz-0.1.0-r34
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/rand_core-0.4*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Support crate for running rust fuzzers on Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/cros-fuzz
-IUSE=fuzzer test cros_host cros_workon_tree_90bf2838f56bffe127636b5ea4988485595819a8_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND==dev-rust/rand_core-0.4*:=
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r34
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=fc4a9d61cd275cac4699f05907c82c4a
diff --git a/metadata/md5-cache/dev-rust/cros_fuzz-9999 b/metadata/md5-cache/dev-rust/cros_fuzz-9999
index a1dbf426..cfbd4cb 100644
--- a/metadata/md5-cache/dev-rust/cros_fuzz-9999
+++ b/metadata/md5-cache/dev-rust/cros_fuzz-9999
@@ -11,5 +11,5 @@
 RDEPEND==dev-rust/rand_core-0.4*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=48e5f6b2efc67e0813369d1c637778ed
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4b11d325016bd890b2b1d6b53f582023
diff --git a/metadata/md5-cache/dev-rust/crossbeam-channel-0.3.8 b/metadata/md5-cache/dev-rust/crossbeam-channel-0.3.8
index a76ba12..dec9981 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-channel-0.3.8
+++ b/metadata/md5-cache/dev-rust/crossbeam-channel-0.3.8
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.8/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-channel/0.3.8/download -> crossbeam-channel-0.3.8.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=abd661a9b4a6ccbf0d196668965274ac
diff --git a/metadata/md5-cache/dev-rust/crossbeam-channel-0.4.4 b/metadata/md5-cache/dev-rust/crossbeam-channel-0.4.4
index 7db5da4..51eff63 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-channel-0.4.4
+++ b/metadata/md5-cache/dev-rust/crossbeam-channel-0.4.4
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.4/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-channel/0.4.4/download -> crossbeam-channel-0.4.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3b5f5bc3eff694063008b202ad3bee3b
diff --git a/metadata/md5-cache/dev-rust/crossbeam-channel-0.5.0 b/metadata/md5-cache/dev-rust/crossbeam-channel-0.5.0
index 4894b25..eb85cf0 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-channel-0.5.0
+++ b/metadata/md5-cache/dev-rust/crossbeam-channel-0.5.0
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.5.0/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-channel/0.5.0/download -> crossbeam-channel-0.5.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=95180cbb059ddc62861cb5e1233f67d3
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1d30de70e5134e9d5d1c498a5d844e89
diff --git a/metadata/md5-cache/dev-rust/crossbeam-deque-0.7.1 b/metadata/md5-cache/dev-rust/crossbeam-deque-0.7.1
index 09fabdb..f245d71 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-deque-0.7.1
+++ b/metadata/md5-cache/dev-rust/crossbeam-deque-0.7.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.1/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-deque/0.7.1/download -> crossbeam-deque-0.7.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=61fdeae26b4675f8578adc4e5642c67a
diff --git a/metadata/md5-cache/dev-rust/crossbeam-deque-0.7.3 b/metadata/md5-cache/dev-rust/crossbeam-deque-0.7.3
index 46ab06c..0b11ba9 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-deque-0.7.3
+++ b/metadata/md5-cache/dev-rust/crossbeam-deque-0.7.3
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.3/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-deque/0.7.3/download -> crossbeam-deque-0.7.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=0ff2a4f740eeaf4a9543b83e26364960
diff --git a/metadata/md5-cache/dev-rust/crossbeam-deque-0.8.0 b/metadata/md5-cache/dev-rust/crossbeam-deque-0.8.0
index 2cb9e97..f772929 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-deque-0.8.0
+++ b/metadata/md5-cache/dev-rust/crossbeam-deque-0.8.0
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.8.0/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-deque/0.8.0/download -> crossbeam-deque-0.8.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=dde4cf9fac0e55cb3714dd1849ba3824
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7ef71325937b3a08fd2bd1a896dc0f00
diff --git a/metadata/md5-cache/dev-rust/crossbeam-epoch-0.7.1 b/metadata/md5-cache/dev-rust/crossbeam-epoch-0.7.1
index da1b739..35160cb 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-epoch-0.7.1
+++ b/metadata/md5-cache/dev-rust/crossbeam-epoch-0.7.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.1/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-epoch/0.7.1/download -> crossbeam-epoch-0.7.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=94ff770b2fbcbb19ada8f0e9267aa678
diff --git a/metadata/md5-cache/dev-rust/crossbeam-epoch-0.8.2 b/metadata/md5-cache/dev-rust/crossbeam-epoch-0.8.2
index 5c87f40..2d9ed9f 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-epoch-0.8.2
+++ b/metadata/md5-cache/dev-rust/crossbeam-epoch-0.8.2
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.2/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-epoch/0.8.2/download -> crossbeam-epoch-0.8.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=a35e2c70553e95e2ad06fae1492e5c57
diff --git a/metadata/md5-cache/dev-rust/crossbeam-epoch-0.9.0 b/metadata/md5-cache/dev-rust/crossbeam-epoch-0.9.0
index 78d2452..6f3f06b 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-epoch-0.9.0
+++ b/metadata/md5-cache/dev-rust/crossbeam-epoch-0.9.0
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.9.0/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-epoch/0.9.0/download -> crossbeam-epoch-0.9.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3680c11f0fe77b070e6e4b1c2a6c8fe8
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e8f4e0be3b6aa6ba3283e872f9b9b71e
diff --git a/metadata/md5-cache/dev-rust/crossbeam-queue-0.1.2 b/metadata/md5-cache/dev-rust/crossbeam-queue-0.1.2
index 9f79952..e270689 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-queue-0.1.2
+++ b/metadata/md5-cache/dev-rust/crossbeam-queue-0.1.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.2/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-queue/0.1.2/download -> crossbeam-queue-0.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0309153aeb1089d0b2e6deca53bd00cf
diff --git a/metadata/md5-cache/dev-rust/crossbeam-queue-0.2.3 b/metadata/md5-cache/dev-rust/crossbeam-queue-0.2.3
index 2bf02f1..fe1eec7d 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-queue-0.2.3
+++ b/metadata/md5-cache/dev-rust/crossbeam-queue-0.2.3
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.3/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-queue/0.2.3/download -> crossbeam-queue-0.2.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=da63740a53bcd452fafd78977e5e3dad
diff --git a/metadata/md5-cache/dev-rust/crossbeam-utils-0.6.5 b/metadata/md5-cache/dev-rust/crossbeam-utils-0.6.5
index e7622eb..06fb788 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-utils-0.6.5
+++ b/metadata/md5-cache/dev-rust/crossbeam-utils-0.6.5
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.5/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-utils/0.6.5/download -> crossbeam-utils-0.6.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a28c8c8dd284fc12bdd9a559de087049
diff --git a/metadata/md5-cache/dev-rust/crossbeam-utils-0.7.2 b/metadata/md5-cache/dev-rust/crossbeam-utils-0.7.2
index 5162b83..d2fc025 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-utils-0.7.2
+++ b/metadata/md5-cache/dev-rust/crossbeam-utils-0.7.2
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.2/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-utils/0.7.2/download -> crossbeam-utils-0.7.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=44128a6bb484eebd22dddf38bd825beb
diff --git a/metadata/md5-cache/dev-rust/crossbeam-utils-0.8.3 b/metadata/md5-cache/dev-rust/crossbeam-utils-0.8.3
index 11712e7..6ad9d34 100644
--- a/metadata/md5-cache/dev-rust/crossbeam-utils-0.8.3
+++ b/metadata/md5-cache/dev-rust/crossbeam-utils-0.8.3
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.8.3/r0
 SRC_URI=https://crates.io/api/v1/crates/crossbeam-utils/0.8.3/download -> crossbeam-utils-0.8.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a8de4c37e9200a609678600d154faf30
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f659fb0a24a5affdda9a67ece2875692
diff --git a/metadata/md5-cache/dev-rust/csv-1.1.1 b/metadata/md5-cache/dev-rust/csv-1.1.1
index a94694a..bdebda1 100644
--- a/metadata/md5-cache/dev-rust/csv-1.1.1
+++ b/metadata/md5-cache/dev-rust/csv-1.1.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.1.1/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/curl-0.4.22 b/metadata/md5-cache/dev-rust/curl-0.4.22
index 51dcb2b..67137f7 100644
--- a/metadata/md5-cache/dev-rust/curl-0.4.22
+++ b/metadata/md5-cache/dev-rust/curl-0.4.22
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.22/r0
 SRC_URI=https://crates.io/api/v1/crates/curl/0.4.22/download -> curl-0.4.22.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=242005484eda69d11c498c9901556efb
diff --git a/metadata/md5-cache/dev-rust/curl-0.4.22-r1 b/metadata/md5-cache/dev-rust/curl-0.4.22-r1
index cc5ee03..dbdc86d 100644
--- a/metadata/md5-cache/dev-rust/curl-0.4.22-r1
+++ b/metadata/md5-cache/dev-rust/curl-0.4.22-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.22/r1
 SRC_URI=https://crates.io/api/v1/crates/curl/0.4.22/download -> curl-0.4.22.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=242005484eda69d11c498c9901556efb
diff --git a/metadata/md5-cache/dev-rust/curl-sys-0.4.18 b/metadata/md5-cache/dev-rust/curl-sys-0.4.18
index a8ae4df..c8e4e97 100644
--- a/metadata/md5-cache/dev-rust/curl-sys-0.4.18
+++ b/metadata/md5-cache/dev-rust/curl-sys-0.4.18
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.18/r0
 SRC_URI=https://crates.io/api/v1/crates/curl-sys/0.4.18/download -> curl-sys-0.4.18.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=b9b1d5441dc88dab283f25b4279165c2
diff --git a/metadata/md5-cache/dev-rust/curl-sys-0.4.18-r1 b/metadata/md5-cache/dev-rust/curl-sys-0.4.18-r1
index 9cfc336..0cc7c57 100644
--- a/metadata/md5-cache/dev-rust/curl-sys-0.4.18-r1
+++ b/metadata/md5-cache/dev-rust/curl-sys-0.4.18-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.18/r1
 SRC_URI=https://crates.io/api/v1/crates/curl-sys/0.4.18/download -> curl-sys-0.4.18.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=b9b1d5441dc88dab283f25b4279165c2
diff --git a/metadata/md5-cache/dev-rust/data-encoding-2.1.2 b/metadata/md5-cache/dev-rust/data-encoding-2.1.2
index 9f7ab46..657cc96 100644
--- a/metadata/md5-cache/dev-rust/data-encoding-2.1.2
+++ b/metadata/md5-cache/dev-rust/data-encoding-2.1.2
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.1.2/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/data_model-0.1.0-r38 b/metadata/md5-cache/dev-rust/data_model-0.1.0-r38
deleted file mode 100644
index 7521e66..0000000
--- a/metadata/md5-cache/dev-rust/data_model-0.1.0-r38
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/assertions:= dev-rust/libc:= =dev-rust/serde-1*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Crates includes traits and types for safe interaction with raw memory.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/data_model
-IUSE=test cros_host cros_workon_tree_559dded7f8554570e0cbbc3d506d5f34fdc6eb86 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-rust/assertions:= dev-rust/libc:= =dev-rust/serde-1*:= !!<=dev-rust/data_model-0.1.0-r13
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r38
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3befb95ea042258020c866e21672ed15
diff --git a/metadata/md5-cache/dev-rust/data_model-0.1.0-r40 b/metadata/md5-cache/dev-rust/data_model-0.1.0-r40
new file mode 100644
index 0000000..5fb9a43
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/data_model-0.1.0-r40
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=dev-rust/assertions:= dev-rust/libc:= =dev-rust/remain-0.2*:= =dev-rust/serde-1*:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Crates includes traits and types for safe interaction with raw memory.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/data_model
+IUSE=test cros_host cros_workon_tree_bc72a588dae8f80b80d49a4b0350116ac0edfc5b cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-rust/assertions:= dev-rust/libc:= =dev-rust/remain-0.2*:= =dev-rust/serde-1*:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 !!<=dev-rust/data_model-0.1.0-r13
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r40
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9dfbff2a39977eab33df7af1e9c32e1d
diff --git a/metadata/md5-cache/dev-rust/data_model-9999 b/metadata/md5-cache/dev-rust/data_model-9999
index 2599d6d..69fa22d 100644
--- a/metadata/md5-cache/dev-rust/data_model-9999
+++ b/metadata/md5-cache/dev-rust/data_model-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/assertions:= dev-rust/libc:= =dev-rust/serde-1*:= >=virtual/rust-1.39.0:=
+DEPEND=dev-rust/assertions:= dev-rust/libc:= =dev-rust/remain-0.2*:= =dev-rust/serde-1*:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:=
 DESCRIPTION=Crates includes traits and types for safe interaction with raw memory.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/data_model
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=dev-rust/assertions:= dev-rust/libc:= =dev-rust/serde-1*:= !!<=dev-rust/data_model-0.1.0-r13
+RDEPEND=dev-rust/assertions:= dev-rust/libc:= =dev-rust/remain-0.2*:= =dev-rust/serde-1*:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 !!<=dev-rust/data_model-0.1.0-r13
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2aeb88898836265c8b605590b7c61ca8
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e07c3c970b483c8a1f073efe977e6f5c
diff --git a/metadata/md5-cache/dev-rust/dbus-0.6.1 b/metadata/md5-cache/dev-rust/dbus-0.6.1
index ecfdff141..12f7149 100644
--- a/metadata/md5-cache/dev-rust/dbus-0.6.1
+++ b/metadata/md5-cache/dev-rust/dbus-0.6.1
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
 DEPEND=>=dev-rust/libc-0.2.7:= >=dev-rust/libdbus-sys-0.1.2:= <dev-rust/libdbus-sys-0.2 >=dev-rust/tempdir-0.3.0:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Rust bindings to D-Bus.
-EAPI=6
+EAPI=7
 HOMEPAGE=https://github.com/diwic/dbus-rs
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/libc-0.2.7:= >=dev-rust/libdbus-sys-0.1.2:= <dev-rust/libdbus-sys-0.2 >=dev-rust/tempdir-0.3.0:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.1/r0
 SRC_URI=https://crates.io/api/v1/crates/dbus/0.6.1/download -> dbus-0.6.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ff0f1ed099d583c939183cf3cc7cf6ab
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5535ed6b2fb974acf0428a08ca50e261
diff --git a/metadata/md5-cache/dev-rust/dbus-0.6.1-r2 b/metadata/md5-cache/dev-rust/dbus-0.6.1-r2
new file mode 100644
index 0000000..c9c20c7
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/dbus-0.6.1-r2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/libc-0.2.7:= >=dev-rust/libdbus-sys-0.1.2:= <dev-rust/libdbus-sys-0.2 >=dev-rust/tempdir-0.3.0:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Rust bindings to D-Bus.
+EAPI=7
+HOMEPAGE=https://github.com/diwic/dbus-rs
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/libc-0.2.7:= >=dev-rust/libdbus-sys-0.1.2:= <dev-rust/libdbus-sys-0.2 >=dev-rust/tempdir-0.3.0:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.6.1/r2
+SRC_URI=https://crates.io/api/v1/crates/dbus/0.6.1/download -> dbus-0.6.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5535ed6b2fb974acf0428a08ca50e261
diff --git a/metadata/md5-cache/dev-rust/dbus-0.8.4 b/metadata/md5-cache/dev-rust/dbus-0.8.4
index db5e595..75cfcbc 100644
--- a/metadata/md5-cache/dev-rust/dbus-0.8.4
+++ b/metadata/md5-cache/dev-rust/dbus-0.8.4
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=>=dev-rust/libc-0.2.66:= <dev-rust/libc-0.3 =dev-rust/libdbus-sys-0.2*:= =dev-rust/futures-0.3*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.8.4/r0
 SRC_URI=https://crates.io/api/v1/crates/dbus/0.8.4/download -> dbus-0.8.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9701710c45176a5d3560e3a41651f1ed
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c7632ad616b8b0677ca0b8061888246f
diff --git a/metadata/md5-cache/dev-rust/dbus-0.8.4-r2 b/metadata/md5-cache/dev-rust/dbus-0.8.4-r2
index d74d0ae..369d435f 100644
--- a/metadata/md5-cache/dev-rust/dbus-0.8.4-r2
+++ b/metadata/md5-cache/dev-rust/dbus-0.8.4-r2
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=>=dev-rust/libc-0.2.66:= <dev-rust/libc-0.3 =dev-rust/libdbus-sys-0.2*:= =dev-rust/futures-0.3*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.8.4/r2
 SRC_URI=https://crates.io/api/v1/crates/dbus/0.8.4/download -> dbus-0.8.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9701710c45176a5d3560e3a41651f1ed
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c7632ad616b8b0677ca0b8061888246f
diff --git a/metadata/md5-cache/dev-rust/dbus-0.9.3 b/metadata/md5-cache/dev-rust/dbus-0.9.3
new file mode 100644
index 0000000..40f78b1
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/dbus-0.9.3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/futures-channel-0.3*:= =dev-rust/futures-executor-0.3*:= =dev-rust/futures-util-0.3*:= >=dev-rust/libc-0.2.66:= <dev-rust/libc-0.3.0_alpha =dev-rust/libdbus-sys-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Bindings to D-Bus, which is a bus commonly used on Linux for inter-process communication.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/dbus
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( Apache-2.0 MIT )
+RDEPEND==dev-rust/futures-channel-0.3*:= =dev-rust/futures-executor-0.3*:= =dev-rust/futures-util-0.3*:= >=dev-rust/libc-0.2.66:= <dev-rust/libc-0.3.0_alpha =dev-rust/libdbus-sys-0.2*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.9.3/r0
+SRC_URI=https://crates.io/api/v1/crates/dbus/0.9.3/download -> dbus-0.9.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=bd302f0daa059d422cf8c1d457dda2fd
diff --git a/metadata/md5-cache/dev-rust/dbus-codegen-0.5.0-r1 b/metadata/md5-cache/dev-rust/dbus-codegen-0.5.0-r1
index 47319ad..76441de 100644
--- a/metadata/md5-cache/dev-rust/dbus-codegen-0.5.0-r1
+++ b/metadata/md5-cache/dev-rust/dbus-codegen-0.5.0-r1
@@ -1,5 +1,5 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/clap-2.20.0:= <dev-rust/clap-3.0.0 >=dev-rust/dbus-0.8.0:= <dev-rust/dbus-0.9.0 >=dev-rust/xml-rs-0.3.0:= <dev-rust/xml-rs-0.4.0 >=virtual/rust-1.39.0:=
+DEPEND=>=dev-rust/clap-2.20.0:= <dev-rust/clap-3 >=dev-rust/dbus-0.8.0:= <dev-rust/dbus-0.9.0 >=dev-rust/xml-rs-0.3.0:= <dev-rust/xml-rs-0.4.0 >=virtual/rust-1.39.0:=
 DESCRIPTION=Binary crate to generate Rust code from XML introspection data.
 EAPI=7
 HOMEPAGE=https://github.com/diwic/dbus-rs
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/0.5.0-r1
 SRC_URI=https://crates.io/api/v1/crates/dbus-codegen/0.5.0/download -> dbus-codegen-0.5.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f3d2d6ca50a9d53b1199ba4e3652f653
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9cf04b3f0d8244f4b41308d1cbf153fb
diff --git a/metadata/md5-cache/dev-rust/dbus-codegen-0.9.1 b/metadata/md5-cache/dev-rust/dbus-codegen-0.9.1
new file mode 100644
index 0000000..7a2794f
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/dbus-codegen-0.9.1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/clap-2.20.0:= <dev-rust/clap-3.0.0_alpha =dev-rust/dbus-0.9*:= =dev-rust/dbus-tree-0.9*:= >=dev-rust/xml-rs-0.8.3:= <dev-rust/xml-rs-0.9.0_alpha >=virtual/rust-1.39.0:=
+DESCRIPTION=Binary crate to generate Rust code from XML introspection data
+EAPI=7
+HOMEPAGE=https://crates.io/crates/dbus-codegen
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( Apache-2.0 MIT )
+RDEPEND=>=dev-rust/clap-2.20.0:= <dev-rust/clap-3.0.0_alpha =dev-rust/dbus-0.9*:= =dev-rust/dbus-tree-0.9*:= >=dev-rust/xml-rs-0.8.3:= <dev-rust/xml-rs-0.9.0_alpha
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.9.1
+SRC_URI=https://crates.io/api/v1/crates/dbus-codegen/0.9.1/download -> dbus-codegen-0.9.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=47182f617bcece3abe340bc9b13f6893
diff --git a/metadata/md5-cache/dev-rust/dbus-codegen-0.9.1_p20210220 b/metadata/md5-cache/dev-rust/dbus-codegen-0.9.1_p20210220
new file mode 100644
index 0000000..c016a497
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/dbus-codegen-0.9.1_p20210220
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/clap-2*:= =dev-rust/dbus-0.9*:= =dev-rust/dbus-tree-0.9*:= =dev-rust/dbus-crossroads-0.4*:= >=dev-rust/xml-rs-0.8.3:= <dev-rust/xml-rs-0.9.0_alpha >=virtual/rust-1.39.0:=
+DESCRIPTION=Binary crate to generate Rust code from XML introspection data
+EAPI=7
+HOMEPAGE=https://crates.io/crates/dbus-codegen
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( Apache-2.0 MIT )
+RDEPEND==dev-rust/clap-2*:= =dev-rust/dbus-0.9*:= =dev-rust/dbus-tree-0.9*:= =dev-rust/dbus-crossroads-0.4*:= >=dev-rust/xml-rs-0.8.3:= <dev-rust/xml-rs-0.9.0_alpha
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.9.1_p20210220
+SRC_URI=https://github.com/diwic/dbus-rs/archive/006994e300f1211120fb707028c04acf76ac4ebe.tar.gz -> dbus-codegen-0.9.1_p20210220.tar.gz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=facea31b68db3d794e8405cacbfe4af1
diff --git a/metadata/md5-cache/dev-rust/dbus-codegen-0.9.1_p20210220-r1 b/metadata/md5-cache/dev-rust/dbus-codegen-0.9.1_p20210220-r1
new file mode 100644
index 0000000..7a693bd
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/dbus-codegen-0.9.1_p20210220-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/clap-2*:= =dev-rust/dbus-0.9*:= =dev-rust/dbus-tree-0.9*:= =dev-rust/dbus-crossroads-0.4*:= >=dev-rust/xml-rs-0.8.3:= <dev-rust/xml-rs-0.9.0_alpha >=virtual/rust-1.39.0:=
+DESCRIPTION=Binary crate to generate Rust code from XML introspection data
+EAPI=7
+HOMEPAGE=https://crates.io/crates/dbus-codegen
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( Apache-2.0 MIT )
+RDEPEND==dev-rust/clap-2*:= =dev-rust/dbus-0.9*:= =dev-rust/dbus-tree-0.9*:= =dev-rust/dbus-crossroads-0.4*:= >=dev-rust/xml-rs-0.8.3:= <dev-rust/xml-rs-0.9.0_alpha
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.9.1_p20210220-r1
+SRC_URI=https://github.com/diwic/dbus-rs/archive/006994e300f1211120fb707028c04acf76ac4ebe.tar.gz -> dbus-codegen-0.9.1_p20210220.tar.gz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=facea31b68db3d794e8405cacbfe4af1
diff --git a/metadata/md5-cache/dev-rust/dbus-crossroads-0.4.0 b/metadata/md5-cache/dev-rust/dbus-crossroads-0.4.0
new file mode 100644
index 0000000..18c4faa
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/dbus-crossroads-0.4.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/dbus-0.9.3:= <dev-rust/dbus-0.10.0_alpha >=virtual/rust-1.39.0:=
+DESCRIPTION=Framework for writing D-Bus method handlers
+EAPI=7
+HOMEPAGE=https://crates.io/crates/dbus-crossroads
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( Apache-2.0 MIT )
+RDEPEND=>=dev-rust/dbus-0.9.3:= <dev-rust/dbus-0.10.0_alpha
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.4.0/r0
+SRC_URI=https://crates.io/api/v1/crates/dbus-crossroads/0.4.0/download -> dbus-crossroads-0.4.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6fbca0f2a9ba3a30d0a0fd0066cfa728
diff --git a/metadata/md5-cache/dev-rust/dbus-tree-0.9.1 b/metadata/md5-cache/dev-rust/dbus-tree-0.9.1
new file mode 100644
index 0000000..944d430
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/dbus-tree-0.9.1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/dbus-0.9*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Framework for writing D-Bus method handlers (legacy)
+EAPI=7
+HOMEPAGE=https://crates.io/crates/dbus-tree
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( Apache-2.0 MIT )
+RDEPEND==dev-rust/dbus-0.9*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.9.1/r0
+SRC_URI=https://crates.io/api/v1/crates/dbus-tree/0.9.1/download -> dbus-tree-0.9.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=75a3d666c2c4c50076d27b010efedd78
diff --git a/metadata/md5-cache/dev-rust/defmt-0.2.3 b/metadata/md5-cache/dev-rust/defmt-0.2.3
new file mode 100644
index 0000000..c7773a9
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/defmt-0.2.3
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/defmt-macros-0.2.2:= <dev-rust/defmt-macros-0.3.0 =dev-rust/semver-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A highly efficient logging framework that targets resource-constrained devices, like microcontrollers
+EAPI=7
+HOMEPAGE=https://crates.io/crates/defmt
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/defmt-macros-0.2.2:= <dev-rust/defmt-macros-0.3.0 =dev-rust/semver-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.2.3/r0
+SRC_URI=https://crates.io/api/v1/crates/defmt/0.2.3/download -> defmt-0.2.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=11229641b2066e3352a12a45ea33a80d
diff --git a/metadata/md5-cache/dev-rust/defmt-macros-0.2.3 b/metadata/md5-cache/dev-rust/defmt-macros-0.2.3
new file mode 100644
index 0000000..fd61203
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/defmt-macros-0.2.3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=~dev-rust/defmt-parser-0.2.2:= >=dev-rust/proc-macro2-1.0.27:= <dev-rust/proc-macro2-2.0.0 >=dev-rust/quote-1.0.9:= <dev-rust/quote-2.0.0 =dev-rust/syn-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=defmt macros
+EAPI=7
+HOMEPAGE=https://crates.io/crates/defmt-macros
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=~dev-rust/defmt-parser-0.2.2:= >=dev-rust/proc-macro2-1.0.27:= <dev-rust/proc-macro2-2.0.0 >=dev-rust/quote-1.0.9:= <dev-rust/quote-2.0.0 =dev-rust/syn-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.2.3/r0
+SRC_URI=https://crates.io/api/v1/crates/defmt-macros/0.2.3/download -> defmt-macros-0.2.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2fbba118f71aee2b1700362f2587721e
diff --git a/metadata/md5-cache/dev-rust/defmt-parser-0.2.2 b/metadata/md5-cache/dev-rust/defmt-parser-0.2.2
new file mode 100644
index 0000000..1cad728
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/defmt-parser-0.2.2
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Parsing library for defmt format strings
+EAPI=7
+HOMEPAGE=https://crates.io/crates/defmt-parser
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.2.2/r0
+SRC_URI=https://crates.io/api/v1/crates/defmt-parser/0.2.2/download -> defmt-parser-0.2.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=970677ac663dba2b4ff5c7852e361b28
diff --git a/metadata/md5-cache/dev-rust/defmt-rtt-0.2.0 b/metadata/md5-cache/dev-rust/defmt-rtt-0.2.0
new file mode 100644
index 0000000..38fccdf
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/defmt-rtt-0.2.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/cortex-m-0.6.3:= <dev-rust/cortex-m-0.7.0 =dev-rust/defmt-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Transmit defmt log messages over the RTT (Real-Time Transfer) protocol
+EAPI=7
+HOMEPAGE=https://crates.io/crates/defmt-rtt
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/cortex-m-0.6.3:= <dev-rust/cortex-m-0.7.0 =dev-rust/defmt-0.2*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.2.0/r0
+SRC_URI=https://crates.io/api/v1/crates/defmt-rtt/0.2.0/download -> defmt-rtt-0.2.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=161f9fc477ad331a353fb722e9e2d3a6
diff --git a/metadata/md5-cache/dev-rust/derivative-2.1.1 b/metadata/md5-cache/dev-rust/derivative-2.1.1
index 30294fa..f4cf126 100644
--- a/metadata/md5-cache/dev-rust/derivative-2.1.1
+++ b/metadata/md5-cache/dev-rust/derivative-2.1.1
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=2.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/derivative/2.1.1/download -> derivative-2.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5efbca3b34662d752dc85ab37c0d5d90
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9a2700369819f85fcc328ed8c3385dae
diff --git a/metadata/md5-cache/dev-rust/derive-getters-0.1.1 b/metadata/md5-cache/dev-rust/derive-getters-0.1.1
index 5d087ef..0366e15 100644
--- a/metadata/md5-cache/dev-rust/derive-getters-0.1.1
+++ b/metadata/md5-cache/dev-rust/derive-getters-0.1.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/derive-getters/0.1.1/download -> derive-getters-0.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3ba53fce369cac5fd23c6e8497d25b41
diff --git a/metadata/md5-cache/dev-rust/derive-getters-0.1.1-r1 b/metadata/md5-cache/dev-rust/derive-getters-0.1.1-r1
index 920b9e1..8c21e1d 100644
--- a/metadata/md5-cache/dev-rust/derive-getters-0.1.1-r1
+++ b/metadata/md5-cache/dev-rust/derive-getters-0.1.1-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r1
 SRC_URI=https://crates.io/api/v1/crates/derive-getters/0.1.1/download -> derive-getters-0.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=11948526a4443ce7a5cbe114560a58d3
diff --git a/metadata/md5-cache/dev-rust/digest-0.9.0 b/metadata/md5-cache/dev-rust/digest-0.9.0
new file mode 100644
index 0000000..8a3b87b
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/digest-0.9.0
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.9.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/dirs-2.0.2 b/metadata/md5-cache/dev-rust/dirs-2.0.2
index 4167c3e..cad60b8 100644
--- a/metadata/md5-cache/dev-rust/dirs-2.0.2
+++ b/metadata/md5-cache/dev-rust/dirs-2.0.2
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.0.2/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7da3c1f8f115da7f13d2eae2e624386e
diff --git a/metadata/md5-cache/dev-rust/downcast-rs-1.2.0 b/metadata/md5-cache/dev-rust/downcast-rs-1.2.0
index 89eadf3..5160742 100644
--- a/metadata/md5-cache/dev-rust/downcast-rs-1.2.0
+++ b/metadata/md5-cache/dev-rust/downcast-rs-1.2.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.2.0/r0
 SRC_URI=https://crates.io/api/v1/crates/downcast-rs/1.2.0/download -> downcast-rs-1.2.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7b8b5c89c925c1a02c3d0e833be3eda9
diff --git a/metadata/md5-cache/dev-rust/dtoa-0.4.5 b/metadata/md5-cache/dev-rust/dtoa-0.4.5
index 646de08..d3054b0 100644
--- a/metadata/md5-cache/dev-rust/dtoa-0.4.5
+++ b/metadata/md5-cache/dev-rust/dtoa-0.4.5
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.5/r0
 SRC_URI=https://crates.io/api/v1/crates/dtoa/0.4.5/download -> dtoa-0.4.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e7589bc98fd8837338211b77d8859dca
diff --git a/metadata/md5-cache/dev-rust/ed25519-1.0.0 b/metadata/md5-cache/dev-rust/ed25519-1.0.0
new file mode 100644
index 0000000..ecea522e
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/ed25519-1.0.0
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.0.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/ed25519-compact-0.1.9 b/metadata/md5-cache/dev-rust/ed25519-compact-0.1.9
new file mode 100644
index 0000000..fd250fa
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/ed25519-compact-0.1.9
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/ed25519-1*:= =dev-rust/getrandom-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A small, self-contained, wasm-friendly Ed25519 implementation
+EAPI=7
+HOMEPAGE=https://crates.io/crates/ed25519-compact
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=ISC
+RDEPEND==dev-rust/ed25519-1*:= =dev-rust/getrandom-0.2*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.9/r0
+SRC_URI=https://crates.io/api/v1/crates/ed25519-compact/0.1.9/download -> ed25519-compact-0.1.9.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3cc38f8bda7b278e994c74c2fc720576
diff --git a/metadata/md5-cache/dev-rust/either-1.5.2 b/metadata/md5-cache/dev-rust/either-1.5.2
index c091636..ecfc6da 100644
--- a/metadata/md5-cache/dev-rust/either-1.5.2
+++ b/metadata/md5-cache/dev-rust/either-1.5.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.5.2/r0
 SRC_URI=https://crates.io/api/v1/crates/either/1.5.2/download -> either-1.5.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=04c7d847f8bdd471ef0eee747e756bb9
diff --git a/metadata/md5-cache/dev-rust/embedded-hal-0.2.5 b/metadata/md5-cache/dev-rust/embedded-hal-0.2.5
new file mode 100644
index 0000000..91343a0
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/embedded-hal-0.2.5
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/nb-0.1.3:= <dev-rust/nb-0.2.0 >=dev-rust/void-1.0.2:= <dev-rust/void-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=A Hardware Abstraction Layer (HAL) for embedded systems
+EAPI=7
+HOMEPAGE=https://crates.io/crates/embedded-hal
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/nb-0.1.3:= <dev-rust/nb-0.2.0 >=dev-rust/void-1.0.2:= <dev-rust/void-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.2.5/r0
+SRC_URI=https://crates.io/api/v1/crates/embedded-hal/0.2.5/download -> embedded-hal-0.2.5.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6e03975f2d16e71f61b8ccbbb8eeace9
diff --git a/metadata/md5-cache/dev-rust/embedded-hal-0.2.6 b/metadata/md5-cache/dev-rust/embedded-hal-0.2.6
new file mode 100644
index 0000000..3a420d5
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/embedded-hal-0.2.6
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/nb-0.1.3:= <dev-rust/nb-0.2.0 >=dev-rust/void-1.0.2:= <dev-rust/void-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=A Hardware Abstraction Layer (HAL) for embedded systems
+EAPI=7
+HOMEPAGE=https://crates.io/crates/embedded-hal
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/nb-0.1.3:= <dev-rust/nb-0.2.0 >=dev-rust/void-1.0.2:= <dev-rust/void-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.2.6/r0
+SRC_URI=https://crates.io/api/v1/crates/embedded-hal/0.2.6/download -> embedded-hal-0.2.6.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=11907e3a5174d31674ba07335da14445
diff --git a/metadata/md5-cache/dev-rust/embedded-hal-mock-0.8.0 b/metadata/md5-cache/dev-rust/embedded-hal-mock-0.8.0
new file mode 100644
index 0000000..6895a0a
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/embedded-hal-mock-0.8.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/nb-0.1.3:= <dev-rust/nb-0.2.0 >=dev-rust/embedded-hal-0.2.5:= <dev-rust/embedded-hal-0.3.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=A Hardware Abstraction Layer (HAL) mock for embedded systems
+EAPI=7
+HOMEPAGE=https://crates.io/crates/embedded-hal-mock
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/nb-0.1.3:= <dev-rust/nb-0.2.0 >=dev-rust/embedded-hal-0.2.5:= <dev-rust/embedded-hal-0.3.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.8.0/r0
+SRC_URI=https://crates.io/api/v1/crates/embedded-hal-mock/0.8.0/download -> embedded-hal-mock-0.8.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=41e69b7b7c91441bb2ba924b56e85429
diff --git a/metadata/md5-cache/dev-rust/encoding-0.2.33 b/metadata/md5-cache/dev-rust/encoding-0.2.33
index 5451526..105d6d6 100644
--- a/metadata/md5-cache/dev-rust/encoding-0.2.33
+++ b/metadata/md5-cache/dev-rust/encoding-0.2.33
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.33/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/enum-as-inner-0.2.1 b/metadata/md5-cache/dev-rust/enum-as-inner-0.2.1
index c17f54f..be1ddac 100644
--- a/metadata/md5-cache/dev-rust/enum-as-inner-0.2.1
+++ b/metadata/md5-cache/dev-rust/enum-as-inner-0.2.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.1/r0
 SRC_URI=https://crates.io/api/v1/crates/enum-as-inner/0.2.1/download -> enum-as-inner-0.2.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=69dc9f415fa303b721163ec7a490cbbc
diff --git a/metadata/md5-cache/dev-rust/enumn-0.1.0-r13 b/metadata/md5-cache/dev-rust/enumn-0.1.0-r13
index 437bed6..de49d28 100644
--- a/metadata/md5-cache/dev-rust/enumn-0.1.0-r13
+++ b/metadata/md5-cache/dev-rust/enumn-0.1.0-r13
@@ -11,5 +11,5 @@
 RDEPEND==dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= !!<=dev-rust/enumn-0.0.1-r4
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/0.1.0-r13
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e0e196587ee194fbb3b650aacd426cb9
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=34aafb189d8523fb4614501295120e46
diff --git a/metadata/md5-cache/dev-rust/enumn-9999 b/metadata/md5-cache/dev-rust/enumn-9999
index dd814d8..d86a6d3 100644
--- a/metadata/md5-cache/dev-rust/enumn-9999
+++ b/metadata/md5-cache/dev-rust/enumn-9999
@@ -11,5 +11,5 @@
 RDEPEND==dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= !!<=dev-rust/enumn-0.0.1-r4
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ed2af4232ebccce94590a63e7a20792b
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c0651ab652b97adfa0e5dcb9df7fed68
diff --git a/metadata/md5-cache/dev-rust/env_logger-0.4.3 b/metadata/md5-cache/dev-rust/env_logger-0.4.3
index 8d4b962..8ce9173 100644
--- a/metadata/md5-cache/dev-rust/env_logger-0.4.3
+++ b/metadata/md5-cache/dev-rust/env_logger-0.4.3
@@ -7,5 +7,5 @@
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.3/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a24171f2ba7b7f5d00b155293ff5debe
diff --git a/metadata/md5-cache/dev-rust/env_logger-0.5.13 b/metadata/md5-cache/dev-rust/env_logger-0.5.13
index 3648eae..912eb8a 100644
--- a/metadata/md5-cache/dev-rust/env_logger-0.5.13
+++ b/metadata/md5-cache/dev-rust/env_logger-0.5.13
@@ -1,11 +1,15 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=virtual/rust-1.39.0:=
-DESCRIPTION=Empty env_logger crate
-EAPI=6
+DEPEND=>=dev-rust/atty-0.2.5:= <dev-rust/atty-0.3.0 >=dev-rust/humantime-1.1.0:= <dev-rust/humantime-2.0.0 =dev-rust/log-0.4*:= >=dev-rust/regex-1.0.3:= <dev-rust/regex-2.0.0 =dev-rust/termcolor-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A logging implementation for "log" which is configured via an environment variable.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/env_logger
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/atty-0.2.5:= <dev-rust/atty-0.3.0 >=dev-rust/humantime-1.1.0:= <dev-rust/humantime-2.0.0 =dev-rust/log-0.4*:= >=dev-rust/regex-1.0.3:= <dev-rust/regex-2.0.0 =dev-rust/termcolor-1*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.5.13/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=a24171f2ba7b7f5d00b155293ff5debe
+SRC_URI=https://crates.io/api/v1/crates/env_logger/0.5.13/download -> env_logger-0.5.13.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fb321a723d2ba61db2584302bff093ac
diff --git a/metadata/md5-cache/dev-rust/env_logger-0.5.13-r1 b/metadata/md5-cache/dev-rust/env_logger-0.5.13-r1
new file mode 100644
index 0000000..5879974
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/env_logger-0.5.13-r1
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/atty-0.2.5:= <dev-rust/atty-0.3.0 >=dev-rust/humantime-1.1.0:= <dev-rust/humantime-2.0.0 =dev-rust/log-0.4*:= >=dev-rust/regex-1.0.3:= <dev-rust/regex-2.0.0 =dev-rust/termcolor-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A logging implementation for "log" which is configured via an environment variable.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/env_logger
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/atty-0.2.5:= <dev-rust/atty-0.3.0 >=dev-rust/humantime-1.1.0:= <dev-rust/humantime-2.0.0 =dev-rust/log-0.4*:= >=dev-rust/regex-1.0.3:= <dev-rust/regex-2.0.0 =dev-rust/termcolor-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.5.13/r1
+SRC_URI=https://crates.io/api/v1/crates/env_logger/0.5.13/download -> env_logger-0.5.13.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fb321a723d2ba61db2584302bff093ac
diff --git a/metadata/md5-cache/dev-rust/env_logger-0.6.1 b/metadata/md5-cache/dev-rust/env_logger-0.6.1
index c585ed0..0d5eb22 100644
--- a/metadata/md5-cache/dev-rust/env_logger-0.6.1
+++ b/metadata/md5-cache/dev-rust/env_logger-0.6.1
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/log-0.4*:= >=dev-rust/atty-0.2.5:= =dev-rust/humantime-1.1*:= >=dev-rust/regex-1.0.3:= >=dev-rust/termcolor-1.0.2:= >=virtual/rust-1.39.0:=
+DEPEND=>=dev-rust/atty-0.2.5:= <dev-rust/atty-0.3.0 =dev-rust/humantime-1.1*:= =dev-rust/log-0.4*:= >=dev-rust/regex-1.0.3:= <dev-rust/regex-2.0.0 >=dev-rust/termcolor-1.0.2:= <dev-rust/termcolor-2.0.0 >=virtual/rust-1.39.0:=
 DESCRIPTION=Implements a logger that can be configured via environment variables.
-EAPI=6
+EAPI=7
 HOMEPAGE=https://github.com/sebasmagri/env_logger/
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/atty-0.2.5:= <dev-rust/atty-0.3.0 =dev-rust/humantime-1.1*:= =dev-rust/log-0.4*:= >=dev-rust/regex-1.0.3:= <dev-rust/regex-2.0.0 >=dev-rust/termcolor-1.0.2:= <dev-rust/termcolor-2.0.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.1/r0
 SRC_URI=https://crates.io/api/v1/crates/env_logger/0.6.1/download -> env_logger-0.6.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=a50e52fc8345fd791c6912a256d5bd10
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8e9569a471004648cfaf203db0ad4af3
diff --git a/metadata/md5-cache/dev-rust/env_logger-0.6.1-r2 b/metadata/md5-cache/dev-rust/env_logger-0.6.1-r2
new file mode 100644
index 0000000..bdbca1b
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/env_logger-0.6.1-r2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/atty-0.2.5:= <dev-rust/atty-0.3.0 =dev-rust/humantime-1.1*:= =dev-rust/log-0.4*:= >=dev-rust/regex-1.0.3:= <dev-rust/regex-2.0.0 >=dev-rust/termcolor-1.0.2:= <dev-rust/termcolor-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Implements a logger that can be configured via environment variables.
+EAPI=7
+HOMEPAGE=https://github.com/sebasmagri/env_logger/
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/atty-0.2.5:= <dev-rust/atty-0.3.0 =dev-rust/humantime-1.1*:= =dev-rust/log-0.4*:= >=dev-rust/regex-1.0.3:= <dev-rust/regex-2.0.0 >=dev-rust/termcolor-1.0.2:= <dev-rust/termcolor-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.6.1/r2
+SRC_URI=https://crates.io/api/v1/crates/env_logger/0.6.1/download -> env_logger-0.6.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8e9569a471004648cfaf203db0ad4af3
diff --git a/metadata/md5-cache/dev-rust/env_logger-0.8.3 b/metadata/md5-cache/dev-rust/env_logger-0.8.3
index 431d252..c9152606 100644
--- a/metadata/md5-cache/dev-rust/env_logger-0.8.3
+++ b/metadata/md5-cache/dev-rust/env_logger-0.8.3
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.3/r0
 SRC_URI=https://crates.io/api/v1/crates/env_logger/0.8.3/download -> env_logger-0.8.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=156a981e04bb2542ccd7d7e00dd7a501
diff --git a/metadata/md5-cache/dev-rust/error-chain-0.11.0 b/metadata/md5-cache/dev-rust/error-chain-0.11.0
index ec84bc9..a126282 100644
--- a/metadata/md5-cache/dev-rust/error-chain-0.11.0
+++ b/metadata/md5-cache/dev-rust/error-chain-0.11.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.11.0/r0
 SRC_URI=https://crates.io/api/v1/crates/error-chain/0.11.0/download -> error-chain-0.11.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=786e73e4a4c51a0434fb6d23c541bf04
diff --git a/metadata/md5-cache/dev-rust/eui48-0.4.6 b/metadata/md5-cache/dev-rust/eui48-0.4.6
index f4b31f8..2b475b9 100644
--- a/metadata/md5-cache/dev-rust/eui48-0.4.6
+++ b/metadata/md5-cache/dev-rust/eui48-0.4.6
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/rustc-serialize-0.3.24:= >=dev-rust/serde-1.0.80:= >=dev-rust/serde_json-1.0.37:= >=virtual/rust-1.39.0:=
+DEPEND=>=dev-rust/rustc-serialize-0.3.24:= <dev-rust/rustc-serialize-0.4.0 >=dev-rust/serde-1.0.80:= <dev-rust/serde-2.0.0 >=dev-rust/serde_json-1.0.37:= <dev-rust/serde_json-2.0.0 >=virtual/rust-1.39.0:=
 DESCRIPTION=A Rust library to represent and parse IEEE EUI-48 also known as MAC-48 media access control addresses.
-EAPI=6
+EAPI=7
 HOMEPAGE=https://github.com/abaumhauer/eui48
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/rustc-serialize-0.3.24:= <dev-rust/rustc-serialize-0.4.0 >=dev-rust/serde-1.0.80:= <dev-rust/serde-2.0.0 >=dev-rust/serde_json-1.0.37:= <dev-rust/serde_json-2.0.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.6/r0
 SRC_URI=https://crates.io/api/v1/crates/eui48/0.4.6/download -> eui48-0.4.6.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=d81bc0199a7772ea53d9d183fe3dc1c0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0b3b9492cdff9cbdc1f8c9dcb0b5a8c1
diff --git a/metadata/md5-cache/dev-rust/eui48-0.4.6-r2 b/metadata/md5-cache/dev-rust/eui48-0.4.6-r2
new file mode 100644
index 0000000..fab8f89
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/eui48-0.4.6-r2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/rustc-serialize-0.3.24:= <dev-rust/rustc-serialize-0.4.0 >=dev-rust/serde-1.0.80:= <dev-rust/serde-2.0.0 >=dev-rust/serde_json-1.0.37:= <dev-rust/serde_json-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=A Rust library to represent and parse IEEE EUI-48 also known as MAC-48 media access control addresses.
+EAPI=7
+HOMEPAGE=https://github.com/abaumhauer/eui48
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/rustc-serialize-0.3.24:= <dev-rust/rustc-serialize-0.4.0 >=dev-rust/serde-1.0.80:= <dev-rust/serde-2.0.0 >=dev-rust/serde_json-1.0.37:= <dev-rust/serde_json-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.4.6/r2
+SRC_URI=https://crates.io/api/v1/crates/eui48/0.4.6/download -> eui48-0.4.6.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0b3b9492cdff9cbdc1f8c9dcb0b5a8c1
diff --git a/metadata/md5-cache/dev-rust/failure-0.1.5 b/metadata/md5-cache/dev-rust/failure-0.1.5
index 14c1745..5984a56 100644
--- a/metadata/md5-cache/dev-rust/failure-0.1.5
+++ b/metadata/md5-cache/dev-rust/failure-0.1.5
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.5/r0
 SRC_URI=https://crates.io/api/v1/crates/failure/0.1.5/download -> failure-0.1.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ce8f2f37e9aee73387c56079e803573b
diff --git a/metadata/md5-cache/dev-rust/failure_derive-0.1.5 b/metadata/md5-cache/dev-rust/failure_derive-0.1.5
index 6794d8c..9d5e643 100644
--- a/metadata/md5-cache/dev-rust/failure_derive-0.1.5
+++ b/metadata/md5-cache/dev-rust/failure_derive-0.1.5
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.5/r0
 SRC_URI=https://crates.io/api/v1/crates/failure_derive/0.1.5/download -> failure_derive-0.1.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b4ac01ce59fafb4137df7bb45e0f7d13
diff --git a/metadata/md5-cache/dev-rust/failure_derive-0.1.5-r1 b/metadata/md5-cache/dev-rust/failure_derive-0.1.5-r1
index 88d81e5..545c519 100644
--- a/metadata/md5-cache/dev-rust/failure_derive-0.1.5-r1
+++ b/metadata/md5-cache/dev-rust/failure_derive-0.1.5-r1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.5/r1
 SRC_URI=https://crates.io/api/v1/crates/failure_derive/0.1.5/download -> failure_derive-0.1.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b4ac01ce59fafb4137df7bb45e0f7d13
diff --git a/metadata/md5-cache/dev-rust/fallible-iterator-0.2.0 b/metadata/md5-cache/dev-rust/fallible-iterator-0.2.0
index ac10437..d3d12ec 100644
--- a/metadata/md5-cache/dev-rust/fallible-iterator-0.2.0
+++ b/metadata/md5-cache/dev-rust/fallible-iterator-0.2.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.0/r0
 SRC_URI=https://crates.io/api/v1/crates/fallible-iterator/0.2.0/download -> fallible-iterator-0.2.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=cd5f578118dad0e51ff358105713eb04
diff --git a/metadata/md5-cache/dev-rust/fallible-streaming-iterator-0.1.9 b/metadata/md5-cache/dev-rust/fallible-streaming-iterator-0.1.9
index 8655a13..f8242ec 100644
--- a/metadata/md5-cache/dev-rust/fallible-streaming-iterator-0.1.9
+++ b/metadata/md5-cache/dev-rust/fallible-streaming-iterator-0.1.9
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.9/r0
 SRC_URI=https://crates.io/api/v1/crates/fallible-streaming-iterator/0.1.9/download -> fallible-streaming-iterator-0.1.9.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=841e9e99d7e9bd293de07175ea072342
diff --git a/metadata/md5-cache/dev-rust/findshlibs-0.3.3 b/metadata/md5-cache/dev-rust/findshlibs-0.3.3
index 9f36f74..4ad21db 100644
--- a/metadata/md5-cache/dev-rust/findshlibs-0.3.3
+++ b/metadata/md5-cache/dev-rust/findshlibs-0.3.3
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.3/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/flame-0.1.12 b/metadata/md5-cache/dev-rust/flame-0.1.12
index 60d94f9..e7bde2b 100644
--- a/metadata/md5-cache/dev-rust/flame-0.1.12
+++ b/metadata/md5-cache/dev-rust/flame-0.1.12
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.12/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/flamer-0.1.4 b/metadata/md5-cache/dev-rust/flamer-0.1.4
index 410ffbe..7a9486f 100644
--- a/metadata/md5-cache/dev-rust/flamer-0.1.4
+++ b/metadata/md5-cache/dev-rust/flamer-0.1.4
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.4/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/flate2-1.0.20 b/metadata/md5-cache/dev-rust/flate2-1.0.20
index 40c8bf2..1380d7b 100644
--- a/metadata/md5-cache/dev-rust/flate2-1.0.20
+++ b/metadata/md5-cache/dev-rust/flate2-1.0.20
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.0.20/r0
 SRC_URI=https://crates.io/api/v1/crates/flate2/1.0.20/download -> flate2-1.0.20.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7153b8fc087bc6b4e6bf3889b0ef5140
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=11070435798f9e31239f1ae7f99e74b6
diff --git a/metadata/md5-cache/dev-rust/flexbuffers-0.1.1 b/metadata/md5-cache/dev-rust/flexbuffers-0.1.1
index e04d0f9..d45689e 100644
--- a/metadata/md5-cache/dev-rust/flexbuffers-0.1.1
+++ b/metadata/md5-cache/dev-rust/flexbuffers-0.1.1
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/bitflags-1.2.1:= <dev-rust/bitflags-2 >=dev-rust/byteorder-1.3.2:= <dev-rust/byteorder-2 =dev-rust/num_enum-0.5*:= >=dev-rust/serde-1.0.114:= <dev-rust/serde-2 =dev-rust/serde_derive-1*:= >=virtual/rust-1.39.0:=
+DEPEND=>=dev-rust/bitflags-1.2.1 <dev-rust/bitflags-2:= >=dev-rust/byteorder-1.3.2 <dev-rust/byteorder-2:= =dev-rust/num_enum-0.5*:= >=dev-rust/serde-1.0.114 <dev-rust/serde-2:= =dev-rust/serde_derive-1*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Official FlexBuffers Rust runtime library.
 EAPI=7
 HOMEPAGE=https://google.github.io/flatbuffers/flexbuffers
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=Apache-2.0
+RDEPEND=>=dev-rust/bitflags-1.2.1 <dev-rust/bitflags-2:= >=dev-rust/byteorder-1.3.2 <dev-rust/byteorder-2:= =dev-rust/num_enum-0.5*:= >=dev-rust/serde-1.0.114 <dev-rust/serde-2:= =dev-rust/serde_derive-1*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/flexbuffers/0.1.1/download -> flexbuffers-0.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e2b21fbdf9426ef9e6a12af685334ffa
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e4557800ccce4e8f81614974cf2400cf
diff --git a/metadata/md5-cache/dev-rust/flexbuffers-0.1.1-r1 b/metadata/md5-cache/dev-rust/flexbuffers-0.1.1-r1
new file mode 100644
index 0000000..7a562d08
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/flexbuffers-0.1.1-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/bitflags-1.2.1 <dev-rust/bitflags-2:= >=dev-rust/byteorder-1.3.2 <dev-rust/byteorder-2:= =dev-rust/num_enum-0.5*:= >=dev-rust/serde-1.0.114 <dev-rust/serde-2:= =dev-rust/serde_derive-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Official FlexBuffers Rust runtime library.
+EAPI=7
+HOMEPAGE=https://google.github.io/flatbuffers/flexbuffers
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=Apache-2.0
+RDEPEND=>=dev-rust/bitflags-1.2.1 <dev-rust/bitflags-2:= >=dev-rust/byteorder-1.3.2 <dev-rust/byteorder-2:= =dev-rust/num_enum-0.5*:= >=dev-rust/serde-1.0.114 <dev-rust/serde-2:= =dev-rust/serde_derive-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.1/r1
+SRC_URI=https://crates.io/api/v1/crates/flexbuffers/0.1.1/download -> flexbuffers-0.1.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e4557800ccce4e8f81614974cf2400cf
diff --git a/metadata/md5-cache/dev-rust/flexbuffers-2.0.0 b/metadata/md5-cache/dev-rust/flexbuffers-2.0.0
new file mode 100644
index 0000000..3b0d0e0
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/flexbuffers-2.0.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/bitflags-1.2.1 <dev-rust/bitflags-2.0.0_alpha:= >=dev-rust/byteorder-1.4.2 <dev-rust/byteorder-2.0.0_alpha:= >=dev-rust/num_enum-0.5.1 <dev-rust/num_enum-0.6.0_alpha:= >=dev-rust/serde-1.0.119 <dev-rust/serde-2.0.0_alpha:= >=dev-rust/serde_derive-1.0.119 <dev-rust/serde_derive-2.0.0_alpha:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Official FlexBuffers Rust runtime library.
+EAPI=7
+HOMEPAGE=https://google.github.io/flatbuffers/flexbuffers
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=Apache-2.0
+RDEPEND=>=dev-rust/bitflags-1.2.1 <dev-rust/bitflags-2.0.0_alpha:= >=dev-rust/byteorder-1.4.2 <dev-rust/byteorder-2.0.0_alpha:= >=dev-rust/num_enum-0.5.1 <dev-rust/num_enum-0.6.0_alpha:= >=dev-rust/serde-1.0.119 <dev-rust/serde-2.0.0_alpha:= >=dev-rust/serde_derive-1.0.119 <dev-rust/serde_derive-2.0.0_alpha:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=2.0.0/r0
+SRC_URI=https://crates.io/api/v1/crates/flexbuffers/2.0.0/download -> flexbuffers-2.0.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c22eafe372be8075f0c644e30d400fac
diff --git a/metadata/md5-cache/dev-rust/fnv-1.0.6 b/metadata/md5-cache/dev-rust/fnv-1.0.6
index 8174932..baa6b75 100644
--- a/metadata/md5-cache/dev-rust/fnv-1.0.6
+++ b/metadata/md5-cache/dev-rust/fnv-1.0.6
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.6/r0
 SRC_URI=https://crates.io/api/v1/crates/fnv/1.0.6/download -> fnv-1.0.6.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e77f5bdbc9916c53e59afc8112ddd693
diff --git a/metadata/md5-cache/dev-rust/fnv-1.0.7 b/metadata/md5-cache/dev-rust/fnv-1.0.7
index 16aa5a0..8be67ba 100644
--- a/metadata/md5-cache/dev-rust/fnv-1.0.7
+++ b/metadata/md5-cache/dev-rust/fnv-1.0.7
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.7/r0
 SRC_URI=https://crates.io/api/v1/crates/fnv/1.0.7/download -> fnv-1.0.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e55952e49759a3770c60dd0622c265b3
diff --git a/metadata/md5-cache/dev-rust/foreign-types-0.3.2 b/metadata/md5-cache/dev-rust/foreign-types-0.3.2
index 8a78c5b..0901776 100644
--- a/metadata/md5-cache/dev-rust/foreign-types-0.3.2
+++ b/metadata/md5-cache/dev-rust/foreign-types-0.3.2
@@ -6,8 +6,9 @@
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/foreign-types-shared-0.1:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.2/r0
 SRC_URI=https://crates.io/api/v1/crates/foreign-types/0.3.2/download -> foreign-types-0.3.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=92293f1a043a498ff4328f18b81b6830
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=27c785f9ca791b2b5e1d850afae1ded6
diff --git a/metadata/md5-cache/dev-rust/foreign-types-0.3.2-r1 b/metadata/md5-cache/dev-rust/foreign-types-0.3.2-r1
new file mode 100644
index 0000000..eb1886d
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/foreign-types-0.3.2-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/foreign-types-shared-0.1:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A framework for Rust wrappers over C APIs.
+EAPI=6
+HOMEPAGE=https://github.com/sfackler/foreign-types
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/foreign-types-shared-0.1:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.3.2/r1
+SRC_URI=https://crates.io/api/v1/crates/foreign-types/0.3.2/download -> foreign-types-0.3.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=27c785f9ca791b2b5e1d850afae1ded6
diff --git a/metadata/md5-cache/dev-rust/foreign-types-shared-0.1.1 b/metadata/md5-cache/dev-rust/foreign-types-shared-0.1.1
index 3b677cd..c44e18c 100644
--- a/metadata/md5-cache/dev-rust/foreign-types-shared-0.1.1
+++ b/metadata/md5-cache/dev-rust/foreign-types-shared-0.1.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/foreign-types-shared/0.1.1/download -> foreign-types-shared-0.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b68d1b1ffe30543fa18074881501303e
diff --git a/metadata/md5-cache/dev-rust/fs2-0.4.3 b/metadata/md5-cache/dev-rust/fs2-0.4.3
index 0f4dfa8..40ad65f 100644
--- a/metadata/md5-cache/dev-rust/fs2-0.4.3
+++ b/metadata/md5-cache/dev-rust/fs2-0.4.3
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.4.3/r0
 SRC_URI=https://crates.io/api/v1/crates/fs2/0.4.3/download -> fs2-0.4.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=78d57a57da1cec517f0249318cab943a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fd4e3d07209a44938f5c34808f9cfe4a
diff --git a/metadata/md5-cache/dev-rust/fuchsia-cprng-0.1.1 b/metadata/md5-cache/dev-rust/fuchsia-cprng-0.1.1
index 191db6e..f9b4289 100644
--- a/metadata/md5-cache/dev-rust/fuchsia-cprng-0.1.1
+++ b/metadata/md5-cache/dev-rust/fuchsia-cprng-0.1.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/fuchsia-zircon-0.3.2 b/metadata/md5-cache/dev-rust/fuchsia-zircon-0.3.2
index 135f631..67f1f9e 100644
--- a/metadata/md5-cache/dev-rust/fuchsia-zircon-0.3.2
+++ b/metadata/md5-cache/dev-rust/fuchsia-zircon-0.3.2
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.2/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b459f025504105b3b301bb8096b60267
diff --git a/metadata/md5-cache/dev-rust/fuchsia-zircon-sys-0.3.3 b/metadata/md5-cache/dev-rust/fuchsia-zircon-sys-0.3.3
index a0e33bb..154885f 100644
--- a/metadata/md5-cache/dev-rust/fuchsia-zircon-sys-0.3.3
+++ b/metadata/md5-cache/dev-rust/fuchsia-zircon-sys-0.3.3
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.3/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/futures-0.1.26 b/metadata/md5-cache/dev-rust/futures-0.1.26
index 19a1551..7966306 100644
--- a/metadata/md5-cache/dev-rust/futures-0.1.26
+++ b/metadata/md5-cache/dev-rust/futures-0.1.26
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.26/r0
 SRC_URI=https://crates.io/api/v1/crates/futures/0.1.26/download -> futures-0.1.26.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a74af592cb192bcd6987e6d3c1d6e294
diff --git a/metadata/md5-cache/dev-rust/futures-0.1.31 b/metadata/md5-cache/dev-rust/futures-0.1.31
index 05e3b26..14bb72c 100644
--- a/metadata/md5-cache/dev-rust/futures-0.1.31
+++ b/metadata/md5-cache/dev-rust/futures-0.1.31
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.31/r0
 SRC_URI=https://crates.io/api/v1/crates/futures/0.1.31/download -> futures-0.1.31.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=a0dcf920b3fb213adb2a2c2908242501
diff --git a/metadata/md5-cache/dev-rust/futures-0.3.13 b/metadata/md5-cache/dev-rust/futures-0.3.13
index 27243a5..f9a443e 100644
--- a/metadata/md5-cache/dev-rust/futures-0.3.13
+++ b/metadata/md5-cache/dev-rust/futures-0.3.13
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=>=dev-rust/futures-channel-0.3.13:= <dev-rust/futures-channel-0.4 >=dev-rust/futures-core-0.3.13:= <dev-rust/futures-core-0.4 >=dev-rust/futures-executor-0.3.13:= <dev-rust/futures-executor-0.4 >=dev-rust/futures-io-0.3.13:= <dev-rust/futures-io-0.4 >=dev-rust/futures-sink-0.3.13:= <dev-rust/futures-sink-0.4 >=dev-rust/futures-task-0.3.13:= <dev-rust/futures-task-0.4 >=dev-rust/futures-util-0.3.13:= <dev-rust/futures-util-0.4 !~dev-rust/futures-0.3.1
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.3.13/r0
 SRC_URI=https://crates.io/api/v1/crates/futures/0.3.13/download -> futures-0.3.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=597597bb41b8d8a0d4878e278859cb2e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=dcd73095f742686befd154bc3fb1c7bd
diff --git a/metadata/md5-cache/dev-rust/futures-channel-0.3.13 b/metadata/md5-cache/dev-rust/futures-channel-0.3.13
index 9731c4e..b866d77 100644
--- a/metadata/md5-cache/dev-rust/futures-channel-0.3.13
+++ b/metadata/md5-cache/dev-rust/futures-channel-0.3.13
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=>=dev-rust/futures-core-0.3.13:= <dev-rust/futures-core-0.4 >=dev-rust/futures-sink-0.3.13:= <dev-rust/futures-sink-0.4 !~dev-rust/futures-channel-0.3.1
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.3.13/r0
 SRC_URI=https://crates.io/api/v1/crates/futures-channel/0.3.13/download -> futures-channel-0.3.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2e1c1c66f8664c1c5ea85d2733b4aee8
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a668ef011bd87cf1ab93ef07d4e88e49
diff --git a/metadata/md5-cache/dev-rust/futures-core-0.3.13 b/metadata/md5-cache/dev-rust/futures-core-0.3.13
index 2eae846..a8c17ef 100644
--- a/metadata/md5-cache/dev-rust/futures-core-0.3.13
+++ b/metadata/md5-cache/dev-rust/futures-core-0.3.13
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.13/r0
 SRC_URI=https://crates.io/api/v1/crates/futures-core/0.3.13/download -> futures-core-0.3.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7c5ed1d2cc5f405cf997419382334006
diff --git a/metadata/md5-cache/dev-rust/futures-cpupool-0.1.8 b/metadata/md5-cache/dev-rust/futures-cpupool-0.1.8
index ac34882..74376b7 100644
--- a/metadata/md5-cache/dev-rust/futures-cpupool-0.1.8
+++ b/metadata/md5-cache/dev-rust/futures-cpupool-0.1.8
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.8/r0
 SRC_URI=https://crates.io/api/v1/crates/futures-cpupool/0.1.8/download -> futures-cpupool-0.1.8.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f72779a79e1f38d5cc68176d2cb82539
diff --git a/metadata/md5-cache/dev-rust/futures-cpupool-0.1.8-r1 b/metadata/md5-cache/dev-rust/futures-cpupool-0.1.8-r1
index 7a6a289..794b2ab 100644
--- a/metadata/md5-cache/dev-rust/futures-cpupool-0.1.8-r1
+++ b/metadata/md5-cache/dev-rust/futures-cpupool-0.1.8-r1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.8/r1
 SRC_URI=https://crates.io/api/v1/crates/futures-cpupool/0.1.8/download -> futures-cpupool-0.1.8.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f72779a79e1f38d5cc68176d2cb82539
diff --git a/metadata/md5-cache/dev-rust/futures-executor-0.3.13 b/metadata/md5-cache/dev-rust/futures-executor-0.3.13
index 26d01dc..6ba586c 100644
--- a/metadata/md5-cache/dev-rust/futures-executor-0.3.13
+++ b/metadata/md5-cache/dev-rust/futures-executor-0.3.13
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=>=dev-rust/futures-core-0.3.13:= <dev-rust/futures-core-0.4 >=dev-rust/futures-task-0.3.13:= <dev-rust/futures-task-0.4 >=dev-rust/futures-util-0.3.13:= <dev-rust/futures-util-0.4 >=dev-rust/num_cpus-1.8.0:= !~dev-rust/futures-executor-0.3.1
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.3.13/r0
 SRC_URI=https://crates.io/api/v1/crates/futures-executor/0.3.13/download -> futures-executor-0.3.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a334fd1aacb36169216b1a607631d700
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4cc545b8350ed37194b8c39a2d4bce18
diff --git a/metadata/md5-cache/dev-rust/futures-io-0.3.13 b/metadata/md5-cache/dev-rust/futures-io-0.3.13
index de147cf..2267fd0 100644
--- a/metadata/md5-cache/dev-rust/futures-io-0.3.13
+++ b/metadata/md5-cache/dev-rust/futures-io-0.3.13
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.13/r0
 SRC_URI=https://crates.io/api/v1/crates/futures-io/0.3.13/download -> futures-io-0.3.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d81707a0f8a6860eaaf23509791414d7
diff --git a/metadata/md5-cache/dev-rust/futures-macro-0.3.13 b/metadata/md5-cache/dev-rust/futures-macro-0.3.13
index 23e3712..14c0cda 100644
--- a/metadata/md5-cache/dev-rust/futures-macro-0.3.13
+++ b/metadata/md5-cache/dev-rust/futures-macro-0.3.13
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.13/r0
 SRC_URI=https://crates.io/api/v1/crates/futures-macro/0.3.13/download -> futures-macro-0.3.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7b1295b7e318866d5560302c5a933f60
diff --git a/metadata/md5-cache/dev-rust/futures-sink-0.3.13 b/metadata/md5-cache/dev-rust/futures-sink-0.3.13
index e74dc64b8..4217f3f 100644
--- a/metadata/md5-cache/dev-rust/futures-sink-0.3.13
+++ b/metadata/md5-cache/dev-rust/futures-sink-0.3.13
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.13/r0
 SRC_URI=https://crates.io/api/v1/crates/futures-sink/0.3.13/download -> futures-sink-0.3.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f236863e1411c3693d86781882c82d9a
diff --git a/metadata/md5-cache/dev-rust/futures-task-0.3.13 b/metadata/md5-cache/dev-rust/futures-task-0.3.13
index 944ce94..442cf24 100644
--- a/metadata/md5-cache/dev-rust/futures-task-0.3.13
+++ b/metadata/md5-cache/dev-rust/futures-task-0.3.13
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.13/r0
 SRC_URI=https://crates.io/api/v1/crates/futures-task/0.3.13/download -> futures-task-0.3.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=59399c6a67febb99f2d3f3d8a95a1501
diff --git a/metadata/md5-cache/dev-rust/futures-util-0.3.13 b/metadata/md5-cache/dev-rust/futures-util-0.3.13
index c7e9783..4ad8e74 100644
--- a/metadata/md5-cache/dev-rust/futures-util-0.3.13
+++ b/metadata/md5-cache/dev-rust/futures-util-0.3.13
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=>=dev-rust/futures-channel-0.3.13:= <dev-rust/futures-channel-0.4 >=dev-rust/futures-core-0.3.13:= <dev-rust/futures-core-0.4 >=dev-rust/futures-io-0.3.13:= <dev-rust/futures-io-0.4 >=dev-rust/futures-macro-0.3.13:= <dev-rust/futures-macro-0.4 >=dev-rust/futures-sink-0.3.13:= <dev-rust/futures-sink-0.4 >=dev-rust/futures-task-0.3.13:= <dev-rust/futures-task-0.4 >=dev-rust/memchr-2.2:= <dev-rust/memchr-3.0 >=dev-rust/pin-utils-0.1.0_alpha4:= <dev-rust/pin-utils-0.2 >=dev-rust/pin-project-lite-0.2.4_alpha4:= <dev-rust/pin-project-lite-0.3 >=dev-rust/proc-macro-hack-0.5.19:= <dev-rust/proc-macro-hack-0.6 >=dev-rust/proc-macro-nested-0.1.2:= <dev-rust/proc-macro-nested-0.2 >=dev-rust/slab-0.4.2:= <dev-rust/slab-1.0 ~dev-rust/tokio-io-0.1.9 !~dev-rust/futures-util-0.3.1
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.3.13/r0
 SRC_URI=https://crates.io/api/v1/crates/futures-util/0.3.13/download -> futures-util-0.3.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5451987a57953af2e3cf100966559482
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b0ac27104898f751b970c3f977ca3fff
diff --git a/metadata/md5-cache/dev-rust/futures-util-0.3.13-r1 b/metadata/md5-cache/dev-rust/futures-util-0.3.13-r1
index 8e2fb6d..41f9e33 100644
--- a/metadata/md5-cache/dev-rust/futures-util-0.3.13-r1
+++ b/metadata/md5-cache/dev-rust/futures-util-0.3.13-r1
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=>=dev-rust/futures-channel-0.3.13:= <dev-rust/futures-channel-0.4 >=dev-rust/futures-core-0.3.13:= <dev-rust/futures-core-0.4 >=dev-rust/futures-io-0.3.13:= <dev-rust/futures-io-0.4 >=dev-rust/futures-macro-0.3.13:= <dev-rust/futures-macro-0.4 >=dev-rust/futures-sink-0.3.13:= <dev-rust/futures-sink-0.4 >=dev-rust/futures-task-0.3.13:= <dev-rust/futures-task-0.4 >=dev-rust/memchr-2.2:= <dev-rust/memchr-3.0 >=dev-rust/pin-utils-0.1.0_alpha4:= <dev-rust/pin-utils-0.2 >=dev-rust/pin-project-lite-0.2.4_alpha4:= <dev-rust/pin-project-lite-0.3 >=dev-rust/proc-macro-hack-0.5.19:= <dev-rust/proc-macro-hack-0.6 >=dev-rust/proc-macro-nested-0.1.2:= <dev-rust/proc-macro-nested-0.2 >=dev-rust/slab-0.4.2:= <dev-rust/slab-1.0 ~dev-rust/tokio-io-0.1.9 !~dev-rust/futures-util-0.3.1
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.3.13/r1
 SRC_URI=https://crates.io/api/v1/crates/futures-util/0.3.13/download -> futures-util-0.3.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5451987a57953af2e3cf100966559482
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b0ac27104898f751b970c3f977ca3fff
diff --git a/metadata/md5-cache/dev-rust/gdbstub-0.4.2 b/metadata/md5-cache/dev-rust/gdbstub-0.4.2
deleted file mode 100644
index 1be7432..0000000
--- a/metadata/md5-cache/dev-rust/gdbstub-0.4.2
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/cfg-if-0.1*:= =dev-rust/log-0.4*:= =dev-rust/managed-0.8*:= =dev-rust/num-traits-0.2*:= =dev-rust/paste-1*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=An ergonomic and easy-to-integrate implementation of the GDB Remote Serial Protocol in Rust, with full #![no_std] support.
-EAPI=7
-HOMEPAGE=https://github.com/daniel5151/gdbstub
-IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=MIT
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0.4.2/r0
-SRC_URI=https://crates.io/api/v1/crates/gdbstub/0.4.2/download -> gdbstub-0.4.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=c7dd4883d4d285cdcab4e17ae0995cf0
diff --git a/metadata/md5-cache/dev-rust/gdbstub-0.5.0 b/metadata/md5-cache/dev-rust/gdbstub-0.5.0
new file mode 100644
index 0000000..2c15596
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/gdbstub-0.5.0
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/cfg-if-0.1.10:= <dev-rust/cfg-if-0.2 =dev-rust/log-0.4*:= =dev-rust/managed-0.8*:= =dev-rust/num-traits-0.2*:= =dev-rust/paste-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=An ergonomic and easy-to-integrate implementation of the GDB Remote Serial Protocol in Rust, with full #![no_std] support.
+EAPI=7
+HOMEPAGE=https://github.com/daniel5151/gdbstub
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.5.0/r0
+SRC_URI=https://crates.io/api/v1/crates/gdbstub/0.5.0/download -> gdbstub-0.5.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=821d1c16fd7a003072201d8a05e83387
diff --git a/metadata/md5-cache/dev-rust/gdbstub_arch-0.1.1 b/metadata/md5-cache/dev-rust/gdbstub_arch-0.1.1
new file mode 100644
index 0000000..64ba3ee
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/gdbstub_arch-0.1.1
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/gdbstub-0.5*:= =dev-rust/num-traits-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Implementations of gdbstub::arch::Arch for various architectures.
+EAPI=7
+HOMEPAGE=https://github.com/daniel5151/gdbstub
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.1/r0
+SRC_URI=https://crates.io/api/v1/crates/gdbstub_arch/0.1.1/download -> gdbstub_arch-0.1.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=05ba0ab31db7fad9928bdf4e991b520c
diff --git a/metadata/md5-cache/dev-rust/generic-array-0.12.4 b/metadata/md5-cache/dev-rust/generic-array-0.12.4
new file mode 100644
index 0000000..2f6fcc1
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/generic-array-0.12.4
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/serde-1*:= >=dev-rust/typenum-1.10.0:= <dev-rust/typenum-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Generic types implementing functionality of arrays
+EAPI=7
+HOMEPAGE=https://crates.io/crates/generic-array
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND==dev-rust/serde-1*:= >=dev-rust/typenum-1.10.0:= <dev-rust/typenum-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.12.4/r0
+SRC_URI=https://crates.io/api/v1/crates/generic-array/0.12.4/download -> generic-array-0.12.4.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=06bc6903dcc975b5accd10b325c0a861
diff --git a/metadata/md5-cache/dev-rust/generic-array-0.13.3 b/metadata/md5-cache/dev-rust/generic-array-0.13.3
new file mode 100644
index 0000000..babde7e
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/generic-array-0.13.3
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/serde-1*:= >=dev-rust/typenum-1.10.0:= <dev-rust/typenum-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Generic types implementing functionality of arrays
+EAPI=7
+HOMEPAGE=https://crates.io/crates/generic-array
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND==dev-rust/serde-1*:= >=dev-rust/typenum-1.10.0:= <dev-rust/typenum-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.13.3/r0
+SRC_URI=https://crates.io/api/v1/crates/generic-array/0.13.3/download -> generic-array-0.13.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=06bc6903dcc975b5accd10b325c0a861
diff --git a/metadata/md5-cache/dev-rust/generic-array-0.14.4 b/metadata/md5-cache/dev-rust/generic-array-0.14.4
new file mode 100644
index 0000000..ce48b52
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/generic-array-0.14.4
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/serde-1*:= >=dev-rust/typenum-1.12.0:= <dev-rust/typenum-2.0.0 =dev-rust/version_check-0.9*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Generic types implementing functionality of arrays
+EAPI=7
+HOMEPAGE=https://crates.io/crates/generic-array
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND==dev-rust/serde-1*:= >=dev-rust/typenum-1.12.0:= <dev-rust/typenum-2.0.0 =dev-rust/version_check-0.9*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.14.4/r0
+SRC_URI=https://crates.io/api/v1/crates/generic-array/0.14.4/download -> generic-array-0.14.4.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=528cc3fbe053cd4043e7fb211eb6bc94
diff --git a/metadata/md5-cache/dev-rust/getopts-0.2.18 b/metadata/md5-cache/dev-rust/getopts-0.2.18
index 120f3f5..a8cc98c 100644
--- a/metadata/md5-cache/dev-rust/getopts-0.2.18
+++ b/metadata/md5-cache/dev-rust/getopts-0.2.18
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.18/r0
 SRC_URI=https://crates.io/api/v1/crates/getopts/0.2.18/download -> getopts-0.2.18.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6ef2288f6f732bb35a22a8e8447e333d
diff --git a/metadata/md5-cache/dev-rust/getopts-0.2.21 b/metadata/md5-cache/dev-rust/getopts-0.2.21
index e7cdc86..7bda456 100644
--- a/metadata/md5-cache/dev-rust/getopts-0.2.21
+++ b/metadata/md5-cache/dev-rust/getopts-0.2.21
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND==dev-rust/rustc-std-workspace-core-1*:= =dev-rust/rustc-std-workspace-std-1*:= >=dev-rust/unicode-width-0.1.5:= <dev-rust/unicode-width-0.2.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.2.21/r0
 SRC_URI=https://crates.io/api/v1/crates/getopts/0.2.21/download -> getopts-0.2.21.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d03aa5ca24af503f3f9e6ebfb91d586d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=cec59344a0e5f364dba3bd2c060bb94f
diff --git a/metadata/md5-cache/dev-rust/getrandom-0.1.15 b/metadata/md5-cache/dev-rust/getrandom-0.1.15
index be5dcc4..37626a5 100644
--- a/metadata/md5-cache/dev-rust/getrandom-0.1.15
+++ b/metadata/md5-cache/dev-rust/getrandom-0.1.15
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.1.15/r0
 SRC_URI=https://crates.io/api/v1/crates/getrandom/0.1.15/download -> getrandom-0.1.15.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f73324196126faf6a8084456b20ff696
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a81e0ba65b66b2f915da717ce71d3d88
diff --git a/metadata/md5-cache/dev-rust/getrandom-0.2.0 b/metadata/md5-cache/dev-rust/getrandom-0.2.0
new file mode 100644
index 0000000..8aaded0
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/getrandom-0.2.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/cfg-if-0.1.2:= <dev-rust/cfg-if-0.2.0 >=dev-rust/libc-0.2.64:= <dev-rust/libc-0.3.0 >=dev-rust/wasi-0.9.0:= <dev-rust/wasi-0.10.0 >=dev-rust/compiler_builtins-0.1.0:= <dev-rust/compiler_builtins-0.2.0 =dev-rust/rustc-std-workspace-core-1*:= >=dev-rust/stdweb-0.4.18:= <dev-rust/stdweb-0.5.0 >=dev-rust/wasm-bindgen-0.2.62:= <dev-rust/wasm-bindgen-0.3.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=A Rust library for retrieving random data from (operating) system source
+EAPI=7
+HOMEPAGE=https://github.com/rust-random/getrandom
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/cfg-if-0.1.2:= <dev-rust/cfg-if-0.2.0 >=dev-rust/libc-0.2.64:= <dev-rust/libc-0.3.0 >=dev-rust/wasi-0.9.0:= <dev-rust/wasi-0.10.0 >=dev-rust/compiler_builtins-0.1.0:= <dev-rust/compiler_builtins-0.2.0 =dev-rust/rustc-std-workspace-core-1*:= >=dev-rust/stdweb-0.4.18:= <dev-rust/stdweb-0.5.0 >=dev-rust/wasm-bindgen-0.2.62:= <dev-rust/wasm-bindgen-0.3.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.2.0/r0
+SRC_URI=https://crates.io/api/v1/crates/getrandom/0.2.0/download -> getrandom-0.2.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4eb86866547123a6e50d8fc4152456bf
diff --git a/metadata/md5-cache/dev-rust/getrandom-0.2.0-r1 b/metadata/md5-cache/dev-rust/getrandom-0.2.0-r1
new file mode 100644
index 0000000..ffafa1c
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/getrandom-0.2.0-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/cfg-if-0.1.2:= <dev-rust/cfg-if-0.2.0 >=dev-rust/libc-0.2.64:= <dev-rust/libc-0.3.0 >=dev-rust/wasi-0.9.0:= <dev-rust/wasi-0.10.0 >=dev-rust/compiler_builtins-0.1.0:= <dev-rust/compiler_builtins-0.2.0 =dev-rust/rustc-std-workspace-core-1*:= >=dev-rust/stdweb-0.4.18:= <dev-rust/stdweb-0.5.0 >=dev-rust/wasm-bindgen-0.2.62:= <dev-rust/wasm-bindgen-0.3.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=A Rust library for retrieving random data from (operating) system source
+EAPI=7
+HOMEPAGE=https://github.com/rust-random/getrandom
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/cfg-if-0.1.2:= <dev-rust/cfg-if-0.2.0 >=dev-rust/libc-0.2.64:= <dev-rust/libc-0.3.0 >=dev-rust/wasi-0.9.0:= <dev-rust/wasi-0.10.0 >=dev-rust/compiler_builtins-0.1.0:= <dev-rust/compiler_builtins-0.2.0 =dev-rust/rustc-std-workspace-core-1*:= >=dev-rust/stdweb-0.4.18:= <dev-rust/stdweb-0.5.0 >=dev-rust/wasm-bindgen-0.2.62:= <dev-rust/wasm-bindgen-0.3.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.2.0/r1
+SRC_URI=https://crates.io/api/v1/crates/getrandom/0.2.0/download -> getrandom-0.2.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4eb86866547123a6e50d8fc4152456bf
diff --git a/metadata/md5-cache/dev-rust/gimli-0.15.0 b/metadata/md5-cache/dev-rust/gimli-0.15.0
index e3d6e70..55c437a 100644
--- a/metadata/md5-cache/dev-rust/gimli-0.15.0
+++ b/metadata/md5-cache/dev-rust/gimli-0.15.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.15.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/git-version-0.3.5 b/metadata/md5-cache/dev-rust/git-version-0.3.5
new file mode 100644
index 0000000..c157b9a
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/git-version-0.3.5
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=~dev-rust/git-version-macro-0.3.5:= =dev-rust/proc-macro-hack-0.5*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Compile the git version (tag name, or hash otherwise) and dirty state into your program.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/git-version
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-2
+RDEPEND=~dev-rust/git-version-macro-0.3.5:= =dev-rust/proc-macro-hack-0.5*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.3.5/r0
+SRC_URI=https://crates.io/api/v1/crates/git-version/0.3.5/download -> git-version-0.3.5.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=787dd08579c34faf56eefd42b5c081bc
diff --git a/metadata/md5-cache/dev-rust/git-version-macro-0.3.5 b/metadata/md5-cache/dev-rust/git-version-macro-0.3.5
new file mode 100644
index 0000000..d2f6415
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/git-version-macro-0.3.5
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/proc-macro-hack-0.5*:= =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Internal macro crate for git-version.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/git-version-macro
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-2
+RDEPEND==dev-rust/proc-macro-hack-0.5*:= =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.3.5/r0
+SRC_URI=https://crates.io/api/v1/crates/git-version-macro/0.3.5/download -> git-version-macro-0.3.5.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=173d12c9ef59a1062b7cf97b75367445
diff --git a/metadata/md5-cache/dev-rust/git2-0.9.1 b/metadata/md5-cache/dev-rust/git2-0.9.1
index be15d1c..9cc83db 100644
--- a/metadata/md5-cache/dev-rust/git2-0.9.1
+++ b/metadata/md5-cache/dev-rust/git2-0.9.1
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.9.1/r0
 SRC_URI=https://crates.io/api/v1/crates/git2/0.9.1/download -> git2-0.9.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=f834ba7671188ee4f7d2d07d59381fd4
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=2c09f9d6426132fcdae8780afa879b98
diff --git a/metadata/md5-cache/dev-rust/glob-0.3.0 b/metadata/md5-cache/dev-rust/glob-0.3.0
index 030904a8..bcb5ed4 100644
--- a/metadata/md5-cache/dev-rust/glob-0.3.0
+++ b/metadata/md5-cache/dev-rust/glob-0.3.0
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.3.0/r0
 SRC_URI=https://crates.io/api/v1/crates/glob/0.3.0/download -> glob-0.3.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=c31b35ec5583b27f8ba55a638e1d6188
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=55b03b19cc140534246c596cb24d28de
diff --git a/metadata/md5-cache/dev-rust/h2-0.1.26 b/metadata/md5-cache/dev-rust/h2-0.1.26
index 11c3a69..9d7d6e6 100644
--- a/metadata/md5-cache/dev-rust/h2-0.1.26
+++ b/metadata/md5-cache/dev-rust/h2-0.1.26
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.26/r0
 SRC_URI=https://crates.io/api/v1/crates/h2/0.1.26/download -> h2-0.1.26.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=57b3cdb703c724859126c4b1c5f235b6
diff --git a/metadata/md5-cache/dev-rust/hash32-0.1.1 b/metadata/md5-cache/dev-rust/hash32-0.1.1
new file mode 100644
index 0000000..e2d5247
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/hash32-0.1.1
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/byteorder-1.2.2:= <dev-rust/byteorder-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=32-bit hashing machinery
+EAPI=7
+HOMEPAGE=https://crates.io/crates/hash32
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/byteorder-1.2.2:= <dev-rust/byteorder-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.1.1/r0
+SRC_URI=https://crates.io/api/v1/crates/hash32/0.1.1/download -> hash32-0.1.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=889d9a97899da5583f3b50cc058c813e
diff --git a/metadata/md5-cache/dev-rust/hashbrown-0.1.7 b/metadata/md5-cache/dev-rust/hashbrown-0.1.7
index d527941..5cc0ba4 100644
--- a/metadata/md5-cache/dev-rust/hashbrown-0.1.7
+++ b/metadata/md5-cache/dev-rust/hashbrown-0.1.7
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.7/r0
 SRC_URI=https://crates.io/api/v1/crates/hashbrown/0.1.7/download -> hashbrown-0.1.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=62e55cacb795c3c2e51b273671a0fba6
diff --git a/metadata/md5-cache/dev-rust/hashbrown-0.11.2 b/metadata/md5-cache/dev-rust/hashbrown-0.11.2
new file mode 100644
index 0000000..e987fb7
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/hashbrown-0.11.2
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/ahash-0.7*:= =dev-rust/rustc-std-workspace-alloc-1*:= >=dev-rust/bumpalo-3.5.0:= <dev-rust/bumpalo-4.0.0 >=dev-rust/compiler_builtins-0.1.2:= <dev-rust/compiler_builtins-0.2.0 =dev-rust/rustc-std-workspace-core-1*:= =dev-rust/rayon-1*:= >=dev-rust/serde-1.0.25:= <dev-rust/serde-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=A Rust port of Google"s SwissTable hash map
+EAPI=7
+HOMEPAGE=https://crates.io/crates/hashbrown
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( Apache-2.0 MIT )
+RDEPEND==dev-rust/ahash-0.7*:= =dev-rust/rustc-std-workspace-alloc-1*:= >=dev-rust/bumpalo-3.5.0:= <dev-rust/bumpalo-4.0.0 >=dev-rust/compiler_builtins-0.1.2:= <dev-rust/compiler_builtins-0.2.0 =dev-rust/rustc-std-workspace-core-1*:= =dev-rust/rayon-1*:= >=dev-rust/serde-1.0.25:= <dev-rust/serde-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.11.2/r0
+SRC_URI=https://crates.io/api/v1/crates/hashbrown/0.11.2/download -> hashbrown-0.11.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e85d4a9692bcb0113dd8deb880197f6f
diff --git a/metadata/md5-cache/dev-rust/hashbrown-0.9.1 b/metadata/md5-cache/dev-rust/hashbrown-0.9.1
index f99bcbe..bad25fe 100644
--- a/metadata/md5-cache/dev-rust/hashbrown-0.9.1
+++ b/metadata/md5-cache/dev-rust/hashbrown-0.9.1
@@ -8,7 +8,8 @@
 LICENSE=|| ( Apache-2.0 MIT )
 RDEPEND=>=dev-rust/ahash-0.4.4:= <dev-rust/ahash-0.5.0 =dev-rust/rustc-std-workspace-alloc-1*:= >=dev-rust/compiler_builtins-0.1.2:= <dev-rust/compiler_builtins-0.2.0 =dev-rust/rustc-std-workspace-core-1*:= =dev-rust/rayon-1*:= >=dev-rust/serde-1.0.25:= <dev-rust/serde-2.0.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.9.1/r0
 SRC_URI=https://crates.io/api/v1/crates/hashbrown/0.9.1/download -> hashbrown-0.9.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d093394085bf142178956f7c6dc5e98b
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8e837c790f4eadb765d9ccd19e534cec
diff --git a/metadata/md5-cache/dev-rust/heapless-0.6.1 b/metadata/md5-cache/dev-rust/heapless-0.6.1
new file mode 100644
index 0000000..696077b
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/heapless-0.6.1
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/as-slice-0.1.5:= <dev-rust/as-slice-0.2.0 >=dev-rust/generic-array-0.14.4:= <dev-rust/generic-array-0.15.0 =dev-rust/hash32-0.1*:= =dev-rust/stable_deref_trait-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION="static" friendly data structures that don"t require dynamic memory allocation
+EAPI=7
+HOMEPAGE=https://crates.io/crates/heapless
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/as-slice-0.1.5:= <dev-rust/as-slice-0.2.0 >=dev-rust/generic-array-0.14.4:= <dev-rust/generic-array-0.15.0 =dev-rust/hash32-0.1*:= =dev-rust/stable_deref_trait-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.6.1/r0
+SRC_URI=https://crates.io/api/v1/crates/heapless/0.6.1/download -> heapless-0.6.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=800c89417151d00d37068130815e7bd8
diff --git a/metadata/md5-cache/dev-rust/heapsize-0.4.2 b/metadata/md5-cache/dev-rust/heapsize-0.4.2
index ea75a257..ef9d046 100644
--- a/metadata/md5-cache/dev-rust/heapsize-0.4.2
+++ b/metadata/md5-cache/dev-rust/heapsize-0.4.2
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.2/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/heck-0.3.1 b/metadata/md5-cache/dev-rust/heck-0.3.1
index d69df4b..461a46a 100644
--- a/metadata/md5-cache/dev-rust/heck-0.3.1
+++ b/metadata/md5-cache/dev-rust/heck-0.3.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.1/r0
 SRC_URI=https://crates.io/api/v1/crates/heck/0.3.1/download -> heck-0.3.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1c380936eb0970089707da40d0dc88fc
diff --git a/metadata/md5-cache/dev-rust/heck-0.3.3 b/metadata/md5-cache/dev-rust/heck-0.3.3
new file mode 100644
index 0000000..1fd3cbc
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/heck-0.3.3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/unicode-segmentation-1.2.0:= <dev-rust/unicode-segmentation-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=heck is a case conversion library.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/heck
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/unicode-segmentation-1.2.0:= <dev-rust/unicode-segmentation-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.3.3/r0
+SRC_URI=https://crates.io/api/v1/crates/heck/0.3.3/download -> heck-0.3.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1ff31217391f7aaa5157531f6165651b
diff --git a/metadata/md5-cache/dev-rust/hermit-abi-0.1.3 b/metadata/md5-cache/dev-rust/hermit-abi-0.1.3
index 593ad2c..abdafe8 100644
--- a/metadata/md5-cache/dev-rust/hermit-abi-0.1.3
+++ b/metadata/md5-cache/dev-rust/hermit-abi-0.1.3
@@ -8,5 +8,5 @@
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.3/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8c1477352f7e65ce0b82467f45f52b89
diff --git a/metadata/md5-cache/dev-rust/hmac-sha256-0.1.7 b/metadata/md5-cache/dev-rust/hmac-sha256-0.1.7
new file mode 100644
index 0000000..79913a4
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/hmac-sha256-0.1.7
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/digest-0.9*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A small, self-contained SHA256 and HMAC-SHA256 implementation
+EAPI=7
+HOMEPAGE=https://crates.io/crates/hmac-sha256
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=ISC
+RDEPEND==dev-rust/digest-0.9*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.7/r0
+SRC_URI=https://crates.io/api/v1/crates/hmac-sha256/0.1.7/download -> hmac-sha256-0.1.7.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b5224da6414ee566471f3d5b32c35ebb
diff --git a/metadata/md5-cache/dev-rust/hound-3.4.0 b/metadata/md5-cache/dev-rust/hound-3.4.0
index 307ee18..1961800 100644
--- a/metadata/md5-cache/dev-rust/hound-3.4.0
+++ b/metadata/md5-cache/dev-rust/hound-3.4.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=3.4.0/r0
 SRC_URI=https://crates.io/api/v1/crates/hound/3.4.0/download -> hound-3.4.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=02fbba0960462a9db11c94533a04cdea
diff --git a/metadata/md5-cache/dev-rust/http-0.1.19 b/metadata/md5-cache/dev-rust/http-0.1.19
index ab3530c..541facd 100644
--- a/metadata/md5-cache/dev-rust/http-0.1.19
+++ b/metadata/md5-cache/dev-rust/http-0.1.19
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.19/r0
 SRC_URI=https://crates.io/api/v1/crates/http/0.1.19/download -> http-0.1.19.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=cb9c0fb68363dcf13ca2a00f9e7b6e73
diff --git a/metadata/md5-cache/dev-rust/http-body-0.1.0 b/metadata/md5-cache/dev-rust/http-body-0.1.0
index 3dba43e..2890f41 100644
--- a/metadata/md5-cache/dev-rust/http-body-0.1.0
+++ b/metadata/md5-cache/dev-rust/http-body-0.1.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.0/r0
 SRC_URI=https://crates.io/api/v1/crates/http-body/0.1.0/download -> http-body-0.1.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a48304008ea886bff770dd3afba31a6b
diff --git a/metadata/md5-cache/dev-rust/httparse-1.0.0 b/metadata/md5-cache/dev-rust/httparse-1.0.0
index 9804905..3955c6b 100644
--- a/metadata/md5-cache/dev-rust/httparse-1.0.0
+++ b/metadata/md5-cache/dev-rust/httparse-1.0.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/httparse-1.3.4 b/metadata/md5-cache/dev-rust/httparse-1.3.4
index cc6c5c7..17b50a4a 100644
--- a/metadata/md5-cache/dev-rust/httparse-1.3.4
+++ b/metadata/md5-cache/dev-rust/httparse-1.3.4
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.3.4/r0
 SRC_URI=https://crates.io/api/v1/crates/httparse/1.3.4/download -> httparse-1.3.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f548d6a2948034facc146df469ae9169
diff --git a/metadata/md5-cache/dev-rust/httparse-1.3.4-r1 b/metadata/md5-cache/dev-rust/httparse-1.3.4-r1
index 954dd37..7f03e64 100644
--- a/metadata/md5-cache/dev-rust/httparse-1.3.4-r1
+++ b/metadata/md5-cache/dev-rust/httparse-1.3.4-r1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.3.4/r1
 SRC_URI=https://crates.io/api/v1/crates/httparse/1.3.4/download -> httparse-1.3.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f548d6a2948034facc146df469ae9169
diff --git a/metadata/md5-cache/dev-rust/humantime-1.1.1 b/metadata/md5-cache/dev-rust/humantime-1.1.1
index 878e17c..f44c38f 100644
--- a/metadata/md5-cache/dev-rust/humantime-1.1.1
+++ b/metadata/md5-cache/dev-rust/humantime-1.1.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/humantime/1.1.1/download -> humantime-1.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=cd559a426e257850011b37382a56fa11
diff --git a/metadata/md5-cache/dev-rust/humantime-2.1.0 b/metadata/md5-cache/dev-rust/humantime-2.1.0
index 9dcc484..7f15c3b 100644
--- a/metadata/md5-cache/dev-rust/humantime-2.1.0
+++ b/metadata/md5-cache/dev-rust/humantime-2.1.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.1.0/r0
 SRC_URI=https://crates.io/api/v1/crates/humantime/2.1.0/download -> humantime-2.1.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=09f3b93985d86a2f57361c8c1d7a6719
diff --git a/metadata/md5-cache/dev-rust/hyper-0.12.35 b/metadata/md5-cache/dev-rust/hyper-0.12.35
index 1f47414..791aa6e 100644
--- a/metadata/md5-cache/dev-rust/hyper-0.12.35
+++ b/metadata/md5-cache/dev-rust/hyper-0.12.35
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/bytes-0.4.4:= >=dev-rust/futures-0.1.21:= >=dev-rust/h2-0.1.10:= >=dev-rust/http-0.1.15:= >=dev-rust/httparse-1.0:= >=dev-rust/http-body-0.1:= >=dev-rust/iovec-0.1:= >=dev-rust/itoa-0.4.1:= >=dev-rust/log-0.4:= >=dev-rust/rustc_version-0.2:= >=dev-rust/time-0.1:= >=dev-rust/tokio-buf-0.1:= >=dev-rust/tokio-io-0.1:= >=dev-rust/want-0.2:= >=dev-rust/futures-cpupool-0.1.6:= >=dev-rust/net2-0.2.32:= >=dev-rust/tokio-0.1.14:= >=dev-rust/tokio-executor-0.1:= >=dev-rust/tokio-reactor-0.1:= >=dev-rust/tokio-tcp-0.1:= >=dev-rust/tokio-threadpool-0.1.3:= >=dev-rust/tokio-timer-0.2:= >=virtual/rust-1.39.0:=
+DEPEND=>=dev-rust/bytes-0.4.4:= <dev-rust/bytes-0.5.0 >=dev-rust/futures-0.1.21:= <dev-rust/futures-0.2.0 >=dev-rust/h2-0.1.10:= <dev-rust/h2-0.2.0 >=dev-rust/http-0.1.15:= <dev-rust/http-0.2.0 =dev-rust/httparse-1*:= =dev-rust/http-body-0.1*:= =dev-rust/iovec-0.1*:= >=dev-rust/itoa-0.4.1:= <dev-rust/itoa-0.5.0 =dev-rust/log-0.4*:= =dev-rust/rustc_version-0.2*:= =dev-rust/time-0.1*:= =dev-rust/tokio-buf-0.1*:= =dev-rust/tokio-io-0.1*:= =dev-rust/want-0.2*:= >=dev-rust/futures-cpupool-0.1.6:= <dev-rust/futures-cpupool-0.2.0 >=dev-rust/net2-0.2.32:= <dev-rust/net2-0.3.0 >=dev-rust/tokio-0.1.14:= <dev-rust/tokio-0.2.0 =dev-rust/tokio-executor-0.1*:= =dev-rust/tokio-reactor-0.1*:= =dev-rust/tokio-tcp-0.1*:= >=dev-rust/tokio-threadpool-0.1.3:= <dev-rust/tokio-threadpool-0.2.0 =dev-rust/tokio-timer-0.2*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=A fast and correct HTTP implementation for Rust.
-EAPI=6
+EAPI=7
 HOMEPAGE=https://github.com/hyperium/hyper
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=MIT
+RDEPEND=>=dev-rust/bytes-0.4.4:= <dev-rust/bytes-0.5.0 >=dev-rust/futures-0.1.21:= <dev-rust/futures-0.2.0 >=dev-rust/h2-0.1.10:= <dev-rust/h2-0.2.0 >=dev-rust/http-0.1.15:= <dev-rust/http-0.2.0 =dev-rust/httparse-1*:= =dev-rust/http-body-0.1*:= =dev-rust/iovec-0.1*:= >=dev-rust/itoa-0.4.1:= <dev-rust/itoa-0.5.0 =dev-rust/log-0.4*:= =dev-rust/rustc_version-0.2*:= =dev-rust/time-0.1*:= =dev-rust/tokio-buf-0.1*:= =dev-rust/tokio-io-0.1*:= =dev-rust/want-0.2*:= >=dev-rust/futures-cpupool-0.1.6:= <dev-rust/futures-cpupool-0.2.0 >=dev-rust/net2-0.2.32:= <dev-rust/net2-0.3.0 >=dev-rust/tokio-0.1.14:= <dev-rust/tokio-0.2.0 =dev-rust/tokio-executor-0.1*:= =dev-rust/tokio-reactor-0.1*:= =dev-rust/tokio-tcp-0.1*:= >=dev-rust/tokio-threadpool-0.1.3:= <dev-rust/tokio-threadpool-0.2.0 =dev-rust/tokio-timer-0.2*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.12.35/r0
 SRC_URI=https://crates.io/api/v1/crates/hyper/0.12.35/download -> hyper-0.12.35.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=3a1787fc609cf31c59eba298a3f6d12a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6efb233a0de8d3fb4782c7819bcdb467
diff --git a/metadata/md5-cache/dev-rust/hyper-0.12.35-r2 b/metadata/md5-cache/dev-rust/hyper-0.12.35-r2
new file mode 100644
index 0000000..b36d560
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/hyper-0.12.35-r2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/bytes-0.4.4:= <dev-rust/bytes-0.5.0 >=dev-rust/futures-0.1.21:= <dev-rust/futures-0.2.0 >=dev-rust/h2-0.1.10:= <dev-rust/h2-0.2.0 >=dev-rust/http-0.1.15:= <dev-rust/http-0.2.0 =dev-rust/httparse-1*:= =dev-rust/http-body-0.1*:= =dev-rust/iovec-0.1*:= >=dev-rust/itoa-0.4.1:= <dev-rust/itoa-0.5.0 =dev-rust/log-0.4*:= =dev-rust/rustc_version-0.2*:= =dev-rust/time-0.1*:= =dev-rust/tokio-buf-0.1*:= =dev-rust/tokio-io-0.1*:= =dev-rust/want-0.2*:= >=dev-rust/futures-cpupool-0.1.6:= <dev-rust/futures-cpupool-0.2.0 >=dev-rust/net2-0.2.32:= <dev-rust/net2-0.3.0 >=dev-rust/tokio-0.1.14:= <dev-rust/tokio-0.2.0 =dev-rust/tokio-executor-0.1*:= =dev-rust/tokio-reactor-0.1*:= =dev-rust/tokio-tcp-0.1*:= >=dev-rust/tokio-threadpool-0.1.3:= <dev-rust/tokio-threadpool-0.2.0 =dev-rust/tokio-timer-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A fast and correct HTTP implementation for Rust.
+EAPI=7
+HOMEPAGE=https://github.com/hyperium/hyper
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=>=dev-rust/bytes-0.4.4:= <dev-rust/bytes-0.5.0 >=dev-rust/futures-0.1.21:= <dev-rust/futures-0.2.0 >=dev-rust/h2-0.1.10:= <dev-rust/h2-0.2.0 >=dev-rust/http-0.1.15:= <dev-rust/http-0.2.0 =dev-rust/httparse-1*:= =dev-rust/http-body-0.1*:= =dev-rust/iovec-0.1*:= >=dev-rust/itoa-0.4.1:= <dev-rust/itoa-0.5.0 =dev-rust/log-0.4*:= =dev-rust/rustc_version-0.2*:= =dev-rust/time-0.1*:= =dev-rust/tokio-buf-0.1*:= =dev-rust/tokio-io-0.1*:= =dev-rust/want-0.2*:= >=dev-rust/futures-cpupool-0.1.6:= <dev-rust/futures-cpupool-0.2.0 >=dev-rust/net2-0.2.32:= <dev-rust/net2-0.3.0 >=dev-rust/tokio-0.1.14:= <dev-rust/tokio-0.2.0 =dev-rust/tokio-executor-0.1*:= =dev-rust/tokio-reactor-0.1*:= =dev-rust/tokio-tcp-0.1*:= >=dev-rust/tokio-threadpool-0.1.3:= <dev-rust/tokio-threadpool-0.2.0 =dev-rust/tokio-timer-0.2*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.12.35/r2
+SRC_URI=https://crates.io/api/v1/crates/hyper/0.12.35/download -> hyper-0.12.35.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6efb233a0de8d3fb4782c7819bcdb467
diff --git a/metadata/md5-cache/dev-rust/hyper-tls-0.3.2 b/metadata/md5-cache/dev-rust/hyper-tls-0.3.2
index 00504f8..7195dfe 100644
--- a/metadata/md5-cache/dev-rust/hyper-tls-0.3.2
+++ b/metadata/md5-cache/dev-rust/hyper-tls-0.3.2
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/bytes-0.4:= >=dev-rust/futures-0.1.21:= >=dev-rust/hyper-0.12:= >=dev-rust/native-tls-0.2:= >=dev-rust/tokio-io-0.1:= >=dev-rust/tokio-0.1.5:= >=virtual/rust-1.39.0:=
+DEPEND==dev-rust/bytes-0.4*:= >=dev-rust/futures-0.1.21:= <dev-rust/futures-0.2.0 =dev-rust/hyper-0.12*:= =dev-rust/native-tls-0.2*:= =dev-rust/tokio-io-0.1*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Default TLS implementation for use with hyper
-EAPI=6
+EAPI=7
 HOMEPAGE=https://github.com/hyperium/hyper-tls
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/bytes-0.4*:= >=dev-rust/futures-0.1.21:= <dev-rust/futures-0.2.0 =dev-rust/hyper-0.12*:= =dev-rust/native-tls-0.2*:= =dev-rust/tokio-io-0.1*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.2/r0
 SRC_URI=https://crates.io/api/v1/crates/hyper-tls/0.3.2/download -> hyper-tls-0.3.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=7f83789c232af36e48a72f14440e6d1a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4cff1a1f67f2557659215d163c2477ec
diff --git a/metadata/md5-cache/dev-rust/hyper-tls-0.3.2-r2 b/metadata/md5-cache/dev-rust/hyper-tls-0.3.2-r2
new file mode 100644
index 0000000..a55c5d9
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/hyper-tls-0.3.2-r2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/bytes-0.4*:= >=dev-rust/futures-0.1.21:= <dev-rust/futures-0.2.0 =dev-rust/hyper-0.12*:= =dev-rust/native-tls-0.2*:= =dev-rust/tokio-io-0.1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Default TLS implementation for use with hyper
+EAPI=7
+HOMEPAGE=https://github.com/hyperium/hyper-tls
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/bytes-0.4*:= >=dev-rust/futures-0.1.21:= <dev-rust/futures-0.2.0 =dev-rust/hyper-0.12*:= =dev-rust/native-tls-0.2*:= =dev-rust/tokio-io-0.1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.3.2/r2
+SRC_URI=https://crates.io/api/v1/crates/hyper-tls/0.3.2/download -> hyper-tls-0.3.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4cff1a1f67f2557659215d163c2477ec
diff --git a/metadata/md5-cache/dev-rust/hyphenation-0.7.1 b/metadata/md5-cache/dev-rust/hyphenation-0.7.1
index 6c49636..7896b43 100644
--- a/metadata/md5-cache/dev-rust/hyphenation-0.7.1
+++ b/metadata/md5-cache/dev-rust/hyphenation-0.7.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.1/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=bc6aca5c8ee7fc43c9e14fd5a3e5e494
diff --git a/metadata/md5-cache/dev-rust/hyphenation-0.8.0 b/metadata/md5-cache/dev-rust/hyphenation-0.8.0
new file mode 100644
index 0000000..9e38de73
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/hyphenation-0.8.0
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.8.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9aa07c5881f593a1cb62eb261b520418
diff --git a/metadata/md5-cache/dev-rust/idna-0.1.5 b/metadata/md5-cache/dev-rust/idna-0.1.5
index ad71100..a71ebfc 100644
--- a/metadata/md5-cache/dev-rust/idna-0.1.5
+++ b/metadata/md5-cache/dev-rust/idna-0.1.5
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.1.5/r0
 SRC_URI=https://crates.io/api/v1/crates/idna/0.1.5/download -> idna-0.1.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=a68a9a86792c2045719543e28fd41634
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=503dccd9908cbbb880953afea25fe067
diff --git a/metadata/md5-cache/dev-rust/include_dir-0.6.1 b/metadata/md5-cache/dev-rust/include_dir-0.6.1
new file mode 100644
index 0000000..149210c
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/include_dir-0.6.1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/glob-0.3*:= ~dev-rust/include_dir_impl-0.6.1:= =dev-rust/proc-macro-hack-0.5*:= =dev-rust/tempdir-0.3*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Embed the contents of a directory in your binary
+EAPI=7
+HOMEPAGE=https://crates.io/crates/include_dir
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND==dev-rust/glob-0.3*:= ~dev-rust/include_dir_impl-0.6.1:= =dev-rust/proc-macro-hack-0.5*:= =dev-rust/tempdir-0.3*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.6.1/r0
+SRC_URI=https://crates.io/api/v1/crates/include_dir/0.6.1/download -> include_dir-0.6.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=652938333df1b78b3489f7519da13628
diff --git a/metadata/md5-cache/dev-rust/include_dir_impl-0.6.1 b/metadata/md5-cache/dev-rust/include_dir_impl-0.6.1
new file mode 100644
index 0000000..d7b52e7
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/include_dir_impl-0.6.1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/anyhow-1*:= =dev-rust/proc-macro-hack-0.5*:= =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Implementation crate for include_dir
+EAPI=7
+HOMEPAGE=https://crates.io/crates/include_dir_impl
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND==dev-rust/anyhow-1*:= =dev-rust/proc-macro-hack-0.5*:= =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.6.1/r0
+SRC_URI=https://crates.io/api/v1/crates/include_dir_impl/0.6.1/download -> include_dir_impl-0.6.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5556cf2a2be1d0cb2bc1efc95a921406
diff --git a/metadata/md5-cache/dev-rust/indexmap-1.0.2 b/metadata/md5-cache/dev-rust/indexmap-1.0.2
index 044e9b4..7a9e232 100644
--- a/metadata/md5-cache/dev-rust/indexmap-1.0.2
+++ b/metadata/md5-cache/dev-rust/indexmap-1.0.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.2/r0
 SRC_URI=https://crates.io/api/v1/crates/indexmap/1.0.2/download -> indexmap-1.0.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0463ec6876aabb37d3e113ac06370dab
diff --git a/metadata/md5-cache/dev-rust/indexmap-1.6.2 b/metadata/md5-cache/dev-rust/indexmap-1.6.2
index 35c845d..73092bd 100644
--- a/metadata/md5-cache/dev-rust/indexmap-1.6.2
+++ b/metadata/md5-cache/dev-rust/indexmap-1.6.2
@@ -8,7 +8,8 @@
 LICENSE=|| ( Apache-2.0 MIT )
 RDEPEND=>=dev-rust/hashbrown-0.9.1:= <dev-rust/hashbrown-0.10.0 =dev-rust/rayon-1*:= =dev-rust/serde-1*:= =dev-rust/autocfg-1*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.6.2/r0
 SRC_URI=https://crates.io/api/v1/crates/indexmap/1.6.2/download -> indexmap-1.6.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=eda563ca5b68422573e43e521d3f9b0c
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d0f8a155261a130112c5e0cd9671d310
diff --git a/metadata/md5-cache/dev-rust/indexmap-1.7.0 b/metadata/md5-cache/dev-rust/indexmap-1.7.0
new file mode 100644
index 0000000..876ffa7
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/indexmap-1.7.0
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/hashbrown-0.11*:= >=dev-rust/rayon-1.2.0:= <dev-rust/rayon-2.0.0 =dev-rust/serde-1*:= =dev-rust/autocfg-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A hash table with consistent order and fast iteration. The indexmap is a hash table where the iteration order of the key-value pairs is independent of the hash values of the keys. It has the usual hash table functionality, it preserves insertion order except after removals, and it allows lookup of its elements by either hash table key or numerical index. A corresponding hash set type is also provided. This crate was initially published under the name ordermap, but it was renamed to indexmap.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/indexmap
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( Apache-2.0 MIT )
+RDEPEND==dev-rust/hashbrown-0.11*:= >=dev-rust/rayon-1.2.0:= <dev-rust/rayon-2.0.0 =dev-rust/serde-1*:= =dev-rust/autocfg-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=1.7.0/r0
+SRC_URI=https://crates.io/api/v1/crates/indexmap/1.7.0/download -> indexmap-1.7.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=83e4530754d9e73b7f5f16fd4271bf36
diff --git a/metadata/md5-cache/dev-rust/instant-0.1.9 b/metadata/md5-cache/dev-rust/instant-0.1.9
new file mode 100644
index 0000000..d859a1e
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/instant-0.1.9
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/cfg-if-1.0*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A partial replacement for std::time::Instant that works on WASM too.
+EAPI=7
+HOMEPAGE=https://github.com/sebcrozet/instant
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+RDEPEND==dev-rust/cfg-if-1.0*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.9/r0
+SRC_URI=https://crates.io/api/v1/crates/instant/0.1.9/download -> instant-0.1.9.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=256fdbad18b8231d12d74567281f91e0
diff --git a/metadata/md5-cache/dev-rust/intrusive-collections-0.9.0 b/metadata/md5-cache/dev-rust/intrusive-collections-0.9.0
index 373ff61..0c07679 100644
--- a/metadata/md5-cache/dev-rust/intrusive-collections-0.9.0
+++ b/metadata/md5-cache/dev-rust/intrusive-collections-0.9.0
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.9.0/r0
 SRC_URI=https://crates.io/api/v1/crates/intrusive-collections/0.9.0/download -> intrusive-collections-0.9.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=33fb72f89c0a04f6ed2a52c49ceae853
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=cfefd89c32265152b350d553e89c0488
diff --git a/metadata/md5-cache/dev-rust/io_uring-0.1.0-r10 b/metadata/md5-cache/dev-rust/io_uring-0.1.0-r10
new file mode 100644
index 0000000..39ab79e
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/io_uring-0.1.0-r10
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=dev-rust/data_model:= >=dev-rust/libc-0.2.93:= =dev-rust/remain-0.2*:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Safe wrappers around the linux kernel's io_uring interface
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/io_uring
+IUSE=cros_host cros_workon_tree_d9dfdaafd1e7e761461382ccf7d13b6a3cab49bb cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-rust/data_model:= >=dev-rust/libc-0.2.93:= =dev-rust/remain-0.2*:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r10
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c37feedcd415d8e3d03eeeae08e92508
diff --git a/metadata/md5-cache/dev-rust/io_uring-0.1.0-r6 b/metadata/md5-cache/dev-rust/io_uring-0.1.0-r6
deleted file mode 100644
index a5c8d22..0000000
--- a/metadata/md5-cache/dev-rust/io_uring-0.1.0-r6
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/data_model:= >=dev-rust/libc-0.2.93:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Safe wrappers around the linux kernel's io_uring interface
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/io_uring
-IUSE=cros_host cros_workon_tree_3964a781d4aac3a0649b24bcce48011fda8c459a cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-rust/data_model:= >=dev-rust/libc-0.2.93:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:=
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r6
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5cc33db138c934bf34009d9082eba6a0
diff --git a/metadata/md5-cache/dev-rust/io_uring-9999 b/metadata/md5-cache/dev-rust/io_uring-9999
index 6470ba5..fa5c2b7 100644
--- a/metadata/md5-cache/dev-rust/io_uring-9999
+++ b/metadata/md5-cache/dev-rust/io_uring-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/data_model:= >=dev-rust/libc-0.2.93:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=virtual/rust-1.39.0:=
+DEPEND=dev-rust/data_model:= >=dev-rust/libc-0.2.93:= =dev-rust/remain-0.2*:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:=
 DESCRIPTION=Safe wrappers around the linux kernel's io_uring interface
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/io_uring
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=dev-rust/data_model:= >=dev-rust/libc-0.2.93:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:=
+RDEPEND=dev-rust/data_model:= >=dev-rust/libc-0.2.93:= =dev-rust/remain-0.2*:= dev-rust/sync:= dev-rust/sys_util:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e63a124876ed4a1cacae9a5eff3047d5
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b18601d840dce1896f204fb9215702c2
diff --git a/metadata/md5-cache/dev-rust/iota-0.1.4 b/metadata/md5-cache/dev-rust/iota-0.1.4
index 788c588..e0aae34 100644
--- a/metadata/md5-cache/dev-rust/iota-0.1.4
+++ b/metadata/md5-cache/dev-rust/iota-0.1.4
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.4/r0
 SRC_URI=https://crates.io/api/v1/crates/iota/0.1.4/download -> iota-0.1.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fcae20bcc43f3bee9e8662892cd379dd
diff --git a/metadata/md5-cache/dev-rust/iovec-0.1.2 b/metadata/md5-cache/dev-rust/iovec-0.1.2
index f250057..d40be59 100644
--- a/metadata/md5-cache/dev-rust/iovec-0.1.2
+++ b/metadata/md5-cache/dev-rust/iovec-0.1.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.2/r0
 SRC_URI=https://crates.io/api/v1/crates/iovec/0.1.2/download -> iovec-0.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9492a5f36f6937c51a97cd4607f7237c
diff --git a/metadata/md5-cache/dev-rust/iovec-0.1.4 b/metadata/md5-cache/dev-rust/iovec-0.1.4
index f0ebbd0..3f1faab 100644
--- a/metadata/md5-cache/dev-rust/iovec-0.1.4
+++ b/metadata/md5-cache/dev-rust/iovec-0.1.4
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.4/r0
 SRC_URI=https://crates.io/api/v1/crates/iovec/0.1.4/download -> iovec-0.1.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=62bd4f2bc3b02ead6ce8c7d79d8700cc
diff --git a/metadata/md5-cache/dev-rust/itertools-0.7.11 b/metadata/md5-cache/dev-rust/itertools-0.7.11
index a5a172e..4e6a98c 100644
--- a/metadata/md5-cache/dev-rust/itertools-0.7.11
+++ b/metadata/md5-cache/dev-rust/itertools-0.7.11
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.11/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/itertools-0.8.2 b/metadata/md5-cache/dev-rust/itertools-0.8.2
new file mode 100644
index 0000000..21139ce
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/itertools-0.8.2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/either-1*:= test? ( =dev-rust/permutohedron-0.2*:= =dev-rust/quickcheck-0.7*:= =dev-rust/rand-0.6*:= ) >=virtual/rust-1.39.0:=
+DESCRIPTION=Extra iterator adaptors, iterator methods, free functions, and macros.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/itertools
+IUSE=test cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/either-1*:= test? ( =dev-rust/permutohedron-0.2*:= =dev-rust/quickcheck-0.7*:= =dev-rust/rand-0.6*:= )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.8.2/r0
+SRC_URI=https://crates.io/api/v1/crates/itertools/0.8.2/download -> itertools-0.8.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=81ac1ae046a7b6ab87081f776c47b0a7
diff --git a/metadata/md5-cache/dev-rust/itoa-0.4.4 b/metadata/md5-cache/dev-rust/itoa-0.4.4
index cf4724e..08623f5 100644
--- a/metadata/md5-cache/dev-rust/itoa-0.4.4
+++ b/metadata/md5-cache/dev-rust/itoa-0.4.4
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.4/r0
 SRC_URI=https://crates.io/api/v1/crates/itoa/0.4.4/download -> itoa-0.4.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=bdddc791c7e0e859796f00fb0bceb606
diff --git a/metadata/md5-cache/dev-rust/itoa-0.4.7 b/metadata/md5-cache/dev-rust/itoa-0.4.7
index 742e074..3a3ae32 100644
--- a/metadata/md5-cache/dev-rust/itoa-0.4.7
+++ b/metadata/md5-cache/dev-rust/itoa-0.4.7
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.7/r0
 SRC_URI=https://crates.io/api/v1/crates/itoa/0.4.7/download -> itoa-0.4.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2e9d63b65c212d120d1ccb17372090be
diff --git a/metadata/md5-cache/dev-rust/junit-report-0.4.0 b/metadata/md5-cache/dev-rust/junit-report-0.4.0
index 36d315b..e906701 100644
--- a/metadata/md5-cache/dev-rust/junit-report-0.4.0
+++ b/metadata/md5-cache/dev-rust/junit-report-0.4.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.0/r0
 SRC_URI=https://crates.io/api/v1/crates/junit-report/0.4.0/download -> junit-report-0.4.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7f3012cca4626dc0e0274ee0c99282e5
diff --git a/metadata/md5-cache/dev-rust/kernel32-sys-0.2.2 b/metadata/md5-cache/dev-rust/kernel32-sys-0.2.2
index b67c2fc..19d56dc 100644
--- a/metadata/md5-cache/dev-rust/kernel32-sys-0.2.2
+++ b/metadata/md5-cache/dev-rust/kernel32-sys-0.2.2
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.2/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/lazy_static-1.4.0 b/metadata/md5-cache/dev-rust/lazy_static-1.4.0
index d21a7a6..f3c42f3 100644
--- a/metadata/md5-cache/dev-rust/lazy_static-1.4.0
+++ b/metadata/md5-cache/dev-rust/lazy_static-1.4.0
@@ -1,13 +1,15 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
 DEPEND==dev-rust/spin-0.5*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=A macro for declaring lazily evaluated statics in Rust.
-EAPI=6
+EAPI=7
 HOMEPAGE=https://github.com/rust-lang-nursery/lazy-static.rs
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/spin-0.5*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.4.0/r0
 SRC_URI=https://crates.io/api/v1/crates/lazy_static/1.4.0/download -> lazy_static-1.4.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ab0bec05458f0197fd74665f2bbc753a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d1cbfcfcb7e0ee8f0fea58b8a799a9f2
diff --git a/metadata/md5-cache/dev-rust/lazy_static-1.4.0-r1 b/metadata/md5-cache/dev-rust/lazy_static-1.4.0-r1
deleted file mode 100644
index e6fb2e1..0000000
--- a/metadata/md5-cache/dev-rust/lazy_static-1.4.0-r1
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/spin-0.5*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=A macro for declaring lazily evaluated statics in Rust.
-EAPI=7
-HOMEPAGE=https://github.com/rust-lang-nursery/lazy-static.rs
-IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=|| ( MIT Apache-2.0 )
-RDEPEND==dev-rust/spin-0.5*:=
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=1.4.0/r1
-SRC_URI=https://crates.io/api/v1/crates/lazy_static/1.4.0/download -> lazy_static-1.4.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ec9b49372a10d66998fabc7c7864dbec
diff --git a/metadata/md5-cache/dev-rust/lazy_static-1.4.0-r2 b/metadata/md5-cache/dev-rust/lazy_static-1.4.0-r2
new file mode 100644
index 0000000..20fd710
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/lazy_static-1.4.0-r2
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/spin-0.5*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A macro for declaring lazily evaluated statics in Rust.
+EAPI=7
+HOMEPAGE=https://github.com/rust-lang-nursery/lazy-static.rs
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/spin-0.5*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=1.4.0/r2
+SRC_URI=https://crates.io/api/v1/crates/lazy_static/1.4.0/download -> lazy_static-1.4.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d1cbfcfcb7e0ee8f0fea58b8a799a9f2
diff --git a/metadata/md5-cache/dev-rust/lazycell-1.3.0 b/metadata/md5-cache/dev-rust/lazycell-1.3.0
index 770dc10..89340e9 100644
--- a/metadata/md5-cache/dev-rust/lazycell-1.3.0
+++ b/metadata/md5-cache/dev-rust/lazycell-1.3.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.3.0/r0
 SRC_URI=https://crates.io/api/v1/crates/lazycell/1.3.0/download -> lazycell-1.3.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2831a805c391e869f99e4ee356046dec
diff --git a/metadata/md5-cache/dev-rust/lexical-core-0.6.0 b/metadata/md5-cache/dev-rust/lexical-core-0.6.0
index ed42e0e..061fe52 100644
--- a/metadata/md5-cache/dev-rust/lexical-core-0.6.0
+++ b/metadata/md5-cache/dev-rust/lexical-core-0.6.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=eebfd99c03729092f422b6acfa37c16c
diff --git a/metadata/md5-cache/dev-rust/libc-0.2.94 b/metadata/md5-cache/dev-rust/libc-0.2.94
index 7d5af57..7eb2952 100644
--- a/metadata/md5-cache/dev-rust/libc-0.2.94
+++ b/metadata/md5-cache/dev-rust/libc-0.2.94
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.94/r0
 SRC_URI=https://crates.io/api/v1/crates/libc/0.2.94/download -> libc-0.2.94.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=abdb7bfc4d6fb88f8e60d71ddfa57161
diff --git a/metadata/md5-cache/dev-rust/libc-0.2.97 b/metadata/md5-cache/dev-rust/libc-0.2.97
new file mode 100644
index 0000000..ef02958
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/libc-0.2.97
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/rustc-std-workspace-core-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Raw FFI bindings to platform libraries like libc.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/libc
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/rustc-std-workspace-core-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.2.97/r0
+SRC_URI=https://crates.io/api/v1/crates/libc/0.2.97/download -> libc-0.2.97.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7a86e4d6da554fa09116a0a6969dcf7b
diff --git a/metadata/md5-cache/dev-rust/libchromeos-0.1.0-r48 b/metadata/md5-cache/dev-rust/libchromeos-0.1.0-r48
deleted file mode 100644
index 5c24b75..0000000
--- a/metadata/md5-cache/dev-rust/libchromeos-0.1.0-r48
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/vboot_reference:= dev-rust/data_model:= =dev-rust/futures-0.3*:= =dev-rust/getopts-0.2*:= =dev-rust/intrusive-collections-0.9*:= >=dev-rust/lazy_static-1.4.0:= <dev-rust/lazy_static-2.0.0 =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= >=dev-rust/pkg-config-0.3.11:= <dev-rust/pkg-config-0.4.0:= >=dev-rust/protobuf-2.1:= !>=dev-rust/protobuf-3.0:= dev-rust/sys_util:= dev-rust/system_api:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0.0 >=dev-rust/zeroize-1.2.0:= <dev-rust/zeroize-2.0.0 >=virtual/rust-1.39.0:=
-DESCRIPTION=A Rust utility library for Chrome OS
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/libchromeos-rs/
-IUSE=test cros_host cros_workon_tree_9fc61789a553775b1e6e521274f32ec89920b1d8 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/vboot_reference:= !!<=dev-rust/libchromeos-0.1.0-r2
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r48
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=efcec37c9a0a76e970cef21fdef480ec
diff --git a/metadata/md5-cache/dev-rust/libchromeos-0.1.0-r50 b/metadata/md5-cache/dev-rust/libchromeos-0.1.0-r50
new file mode 100644
index 0000000..aefe6de
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/libchromeos-0.1.0-r50
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=chromeos-base/vboot_reference:= dev-rust/data_model:= =dev-rust/dbus-0.9*:= =dev-rust/futures-0.3*:= =dev-rust/getopts-0.2*:= =dev-rust/intrusive-collections-0.9*:= >=dev-rust/lazy_static-1.4.0:= <dev-rust/lazy_static-2.0.0 =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= >=dev-rust/pkg-config-0.3.11:= <dev-rust/pkg-config-0.4.0:= >=dev-rust/protobuf-2.1:= !>=dev-rust/protobuf-3.0:= dev-rust/sys_util:= dev-rust/system_api:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0.0 >=dev-rust/zeroize-1.2.0:= <dev-rust/zeroize-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=A Rust utility library for Chrome OS
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/libchromeos-rs/
+IUSE=test cros_host cros_workon_tree_c0e24d469df78e327c5cdcc67b5f70f6f797b70d cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/vboot_reference:= !!<=dev-rust/libchromeos-0.1.0-r2
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r50
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=20420f924b07a1af03a4a08255921a5f
diff --git a/metadata/md5-cache/dev-rust/libchromeos-9999 b/metadata/md5-cache/dev-rust/libchromeos-9999
index f0ab0c1..7bfda29 100644
--- a/metadata/md5-cache/dev-rust/libchromeos-9999
+++ b/metadata/md5-cache/dev-rust/libchromeos-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/vboot_reference:= dev-rust/data_model:= =dev-rust/futures-0.3*:= =dev-rust/getopts-0.2*:= =dev-rust/intrusive-collections-0.9*:= >=dev-rust/lazy_static-1.4.0:= <dev-rust/lazy_static-2.0.0 =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= >=dev-rust/pkg-config-0.3.11:= <dev-rust/pkg-config-0.4.0:= >=dev-rust/protobuf-2.1:= !>=dev-rust/protobuf-3.0:= dev-rust/sys_util:= dev-rust/system_api:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0.0 >=dev-rust/zeroize-1.2.0:= <dev-rust/zeroize-2.0.0 >=virtual/rust-1.39.0:=
+DEPEND=chromeos-base/vboot_reference:= dev-rust/data_model:= =dev-rust/dbus-0.9*:= =dev-rust/futures-0.3*:= =dev-rust/getopts-0.2*:= =dev-rust/intrusive-collections-0.9*:= >=dev-rust/lazy_static-1.4.0:= <dev-rust/lazy_static-2.0.0 =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= >=dev-rust/pkg-config-0.3.11:= <dev-rust/pkg-config-0.4.0:= >=dev-rust/protobuf-2.1:= !>=dev-rust/protobuf-3.0:= dev-rust/sys_util:= dev-rust/system_api:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0.0 >=dev-rust/zeroize-1.2.0:= <dev-rust/zeroize-2.0.0 >=virtual/rust-1.39.0:=
 DESCRIPTION=A Rust utility library for Chrome OS
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/libchromeos-rs/
@@ -11,5 +11,5 @@
 RDEPEND=chromeos-base/vboot_reference:= !!<=dev-rust/libchromeos-0.1.0-r2
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2d5bcbc301d43c7f2e44d892d15e263f
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=df782bc21d3b2dd88947b5c49e683341
diff --git a/metadata/md5-cache/dev-rust/libdbus-sys-0.1.3 b/metadata/md5-cache/dev-rust/libdbus-sys-0.1.3
index 240cbe2..1155ce7 100644
--- a/metadata/md5-cache/dev-rust/libdbus-sys-0.1.3
+++ b/metadata/md5-cache/dev-rust/libdbus-sys-0.1.3
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
 DEPEND=>=dev-rust/pkg-config-0.3:= sys-apps/dbus >=virtual/rust-1.39.0:=
 DESCRIPTION=Rust FFI bindings to libdbus.
-EAPI=6
+EAPI=7
 HOMEPAGE=https://github.com/diwic/dbus-rs
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/pkg-config-0.3:= sys-apps/dbus
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.3/r0
 SRC_URI=https://crates.io/api/v1/crates/libdbus-sys/0.1.3/download -> libdbus-sys-0.1.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ab821bf28f3fe1dcae3767b6a5bfd05d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=220e9b000799261fd73e6c58e4648307
diff --git a/metadata/md5-cache/dev-rust/libdbus-sys-0.1.3-r1 b/metadata/md5-cache/dev-rust/libdbus-sys-0.1.3-r1
index d0ea632..aaae860 100644
--- a/metadata/md5-cache/dev-rust/libdbus-sys-0.1.3-r1
+++ b/metadata/md5-cache/dev-rust/libdbus-sys-0.1.3-r1
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
 DEPEND=>=dev-rust/pkg-config-0.3:= sys-apps/dbus >=virtual/rust-1.39.0:=
 DESCRIPTION=Rust FFI bindings to libdbus.
-EAPI=6
+EAPI=7
 HOMEPAGE=https://github.com/diwic/dbus-rs
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/pkg-config-0.3:= sys-apps/dbus
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.3/r1
 SRC_URI=https://crates.io/api/v1/crates/libdbus-sys/0.1.3/download -> libdbus-sys-0.1.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ab821bf28f3fe1dcae3767b6a5bfd05d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=220e9b000799261fd73e6c58e4648307
diff --git a/metadata/md5-cache/dev-rust/libdbus-sys-0.1.3-r2 b/metadata/md5-cache/dev-rust/libdbus-sys-0.1.3-r2
new file mode 100644
index 0000000..b071fc3
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/libdbus-sys-0.1.3-r2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/pkg-config-0.3:= sys-apps/dbus >=virtual/rust-1.39.0:=
+DESCRIPTION=Rust FFI bindings to libdbus.
+EAPI=7
+HOMEPAGE=https://github.com/diwic/dbus-rs
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/pkg-config-0.3:= sys-apps/dbus
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.3/r2
+SRC_URI=https://crates.io/api/v1/crates/libdbus-sys/0.1.3/download -> libdbus-sys-0.1.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=220e9b000799261fd73e6c58e4648307
diff --git a/metadata/md5-cache/dev-rust/libdbus-sys-0.2.1 b/metadata/md5-cache/dev-rust/libdbus-sys-0.2.1
index 14e3434..7c8ccc2 100644
--- a/metadata/md5-cache/dev-rust/libdbus-sys-0.2.1
+++ b/metadata/md5-cache/dev-rust/libdbus-sys-0.2.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.1/r0
 SRC_URI=https://crates.io/api/v1/crates/libdbus-sys/0.2.1/download -> libdbus-sys-0.2.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d90ad91a6a21f3d0eb443f37a61e500c
diff --git a/metadata/md5-cache/dev-rust/libgit2-sys-0.8.0 b/metadata/md5-cache/dev-rust/libgit2-sys-0.8.0
index d888b8e..ab4e4d9 100644
--- a/metadata/md5-cache/dev-rust/libgit2-sys-0.8.0
+++ b/metadata/md5-cache/dev-rust/libgit2-sys-0.8.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.0/r0
 SRC_URI=https://crates.io/api/v1/crates/libgit2-sys/0.8.0/download -> libgit2-sys-0.8.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e554571ba4c274b62089eadcb7e79636
diff --git a/metadata/md5-cache/dev-rust/libloading-0.7.0 b/metadata/md5-cache/dev-rust/libloading-0.7.0
index 52f0381..7a76902 100644
--- a/metadata/md5-cache/dev-rust/libloading-0.7.0
+++ b/metadata/md5-cache/dev-rust/libloading-0.7.0
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.0/r0
 SRC_URI=https://crates.io/api/v1/crates/libloading/0.7.0/download -> libloading-0.7.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=20121da4725702b4d726ff3831d4d2d4
diff --git a/metadata/md5-cache/dev-rust/libnghttp2-sys-0.1.1 b/metadata/md5-cache/dev-rust/libnghttp2-sys-0.1.1
index 7cdf575..f2f6f46 100644
--- a/metadata/md5-cache/dev-rust/libnghttp2-sys-0.1.1
+++ b/metadata/md5-cache/dev-rust/libnghttp2-sys-0.1.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/libnghttp2-sys/0.1.1/download -> libnghttp2-sys-0.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=5d207b657a14d4ace1a66cba852d7529
diff --git a/metadata/md5-cache/dev-rust/libsqlite3-sys-0.15.0 b/metadata/md5-cache/dev-rust/libsqlite3-sys-0.15.0
index 7c7a966..62c32a6 100644
--- a/metadata/md5-cache/dev-rust/libsqlite3-sys-0.15.0
+++ b/metadata/md5-cache/dev-rust/libsqlite3-sys-0.15.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.15.0/r0
 SRC_URI=https://crates.io/api/v1/crates/libsqlite3-sys/0.15.0/download -> libsqlite3-sys-0.15.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e308356015f92177baacdf7901e4cb9b
diff --git a/metadata/md5-cache/dev-rust/libsqlite3-sys-0.16.0 b/metadata/md5-cache/dev-rust/libsqlite3-sys-0.16.0
index b9bc405..18a5bbe 100644
--- a/metadata/md5-cache/dev-rust/libsqlite3-sys-0.16.0
+++ b/metadata/md5-cache/dev-rust/libsqlite3-sys-0.16.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.16.0/r0
 SRC_URI=https://crates.io/api/v1/crates/libsqlite3-sys/0.16.0/download -> libsqlite3-sys-0.16.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3baec2ce68c6bb154667fbc053b00673
diff --git a/metadata/md5-cache/dev-rust/libssh2-sys-0.2.11 b/metadata/md5-cache/dev-rust/libssh2-sys-0.2.11
index 0527edd..d85cf85 100644
--- a/metadata/md5-cache/dev-rust/libssh2-sys-0.2.11
+++ b/metadata/md5-cache/dev-rust/libssh2-sys-0.2.11
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.11/r0
 SRC_URI=https://crates.io/api/v1/crates/libssh2-sys/0.2.11/download -> libssh2-sys-0.2.11.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e6510c3b34f2088db6bd4c5ca18996bb
diff --git a/metadata/md5-cache/dev-rust/libusb1-sys-0.3.7 b/metadata/md5-cache/dev-rust/libusb1-sys-0.3.7
index aff062f..0b75fb4 100644
--- a/metadata/md5-cache/dev-rust/libusb1-sys-0.3.7
+++ b/metadata/md5-cache/dev-rust/libusb1-sys-0.3.7
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.7/r0
 SRC_URI=https://crates.io/api/v1/crates/libusb1-sys/0.3.7/download -> libusb1-sys-0.3.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=dc44a266a7ab8525eb4a883ed26bf30d
diff --git a/metadata/md5-cache/dev-rust/libusb1-sys-0.3.7-r2 b/metadata/md5-cache/dev-rust/libusb1-sys-0.3.7-r2
index e460ebb..8f4686c 100644
--- a/metadata/md5-cache/dev-rust/libusb1-sys-0.3.7-r2
+++ b/metadata/md5-cache/dev-rust/libusb1-sys-0.3.7-r2
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.7/r2
 SRC_URI=https://crates.io/api/v1/crates/libusb1-sys/0.3.7/download -> libusb1-sys-0.3.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=dc44a266a7ab8525eb4a883ed26bf30d
diff --git a/metadata/md5-cache/dev-rust/libvda-0.1.0-r28 b/metadata/md5-cache/dev-rust/libvda-0.1.0-r28
deleted file mode 100644
index ecddcfb..0000000
--- a/metadata/md5-cache/dev-rust/libvda-0.1.0-r28
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/libvda:= dev-rust/pkg-config:= dev-rust/enumn:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Rust wrapper for chromeos-base/libvda
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/libvda/rust
-IUSE=test cros_host cros_workon_tree_142c68f4879301817d9f64b7ff516acdda20e554 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/libvda:= dev-rust/pkg-config:= dev-rust/enumn:= !!<=dev-rust/libvda-0.0.1-r5
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r28
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=bf85c7a38e3421ba73f8745c598d77ec
diff --git a/metadata/md5-cache/dev-rust/libvda-9999 b/metadata/md5-cache/dev-rust/libvda-9999
deleted file mode 100644
index 4a9cbe5..0000000
--- a/metadata/md5-cache/dev-rust/libvda-9999
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/libvda:= dev-rust/pkg-config:= dev-rust/enumn:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Rust wrapper for chromeos-base/libvda
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/arc/vm/libvda/rust
-IUSE=test cros_host cros_workon_tree_ cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=~*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/libvda:= dev-rust/pkg-config:= dev-rust/enumn:= !!<=dev-rust/libvda-0.0.1-r5
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=58799e46d1a52a284bdbdb74867ec8d2
diff --git a/metadata/md5-cache/dev-rust/libz-sys-1.1.2 b/metadata/md5-cache/dev-rust/libz-sys-1.1.2
index 15c3722..867f3a0 100644
--- a/metadata/md5-cache/dev-rust/libz-sys-1.1.2
+++ b/metadata/md5-cache/dev-rust/libz-sys-1.1.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.1.2/r0
 SRC_URI=https://crates.io/api/v1/crates/libz-sys/1.1.2/download -> libz-sys-1.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=51a7331d3ae6a4f9bca1f08f44edfc4f
diff --git a/metadata/md5-cache/dev-rust/linked-hash-map-0.5.2 b/metadata/md5-cache/dev-rust/linked-hash-map-0.5.2
deleted file mode 100644
index 3b50851..0000000
--- a/metadata/md5-cache/dev-rust/linked-hash-map-0.5.2
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/clippy-0.0*:= =dev-rust/heapsize-0.4*:= =dev-rust/serde-1*:= =dev-rust/serde_test-1*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=A HashMap wrapper that holds key-value pairs in insertion order
-EAPI=6
-HOMEPAGE=https://github.com/contain-rs/linked-hash-map
-IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=|| ( MIT Apache-2.0 )
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0.5.2/r0
-SRC_URI=https://crates.io/api/v1/crates/linked-hash-map/0.5.2/download -> linked-hash-map-0.5.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=81356d66fac52dd2225e0d17512d2121
diff --git a/metadata/md5-cache/dev-rust/linked-hash-map-0.5.2-r1 b/metadata/md5-cache/dev-rust/linked-hash-map-0.5.2-r1
deleted file mode 100644
index b6f1dde9..0000000
--- a/metadata/md5-cache/dev-rust/linked-hash-map-0.5.2-r1
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/clippy-0.0*:= =dev-rust/heapsize-0.4*:= =dev-rust/serde-1*:= =dev-rust/serde_test-1*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=A HashMap wrapper that holds key-value pairs in insertion order
-EAPI=6
-HOMEPAGE=https://github.com/contain-rs/linked-hash-map
-IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=|| ( MIT Apache-2.0 )
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0.5.2/r1
-SRC_URI=https://crates.io/api/v1/crates/linked-hash-map/0.5.2/download -> linked-hash-map-0.5.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=81356d66fac52dd2225e0d17512d2121
diff --git a/metadata/md5-cache/dev-rust/linked-hash-map-0.5.4 b/metadata/md5-cache/dev-rust/linked-hash-map-0.5.4
new file mode 100644
index 0000000..de1db64
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/linked-hash-map-0.5.4
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/clippy-0.0*:= =dev-rust/heapsize-0.4*:= =dev-rust/serde-1*:= =dev-rust/serde_test-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A HashMap wrapper that holds key-value pairs in insertion order
+EAPI=6
+HOMEPAGE=https://github.com/contain-rs/linked-hash-map
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.5.4/r0
+SRC_URI=https://crates.io/api/v1/crates/linked-hash-map/0.5.4/download -> linked-hash-map-0.5.4.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=4b31628cef5d2efe3d65c9cffa14ee56
diff --git a/metadata/md5-cache/dev-rust/lock_api-0.1.5 b/metadata/md5-cache/dev-rust/lock_api-0.1.5
index 4a9c6a7..e651607 100644
--- a/metadata/md5-cache/dev-rust/lock_api-0.1.5
+++ b/metadata/md5-cache/dev-rust/lock_api-0.1.5
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.5/r0
 SRC_URI=https://crates.io/api/v1/crates/lock_api/0.1.5/download -> lock_api-0.1.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=26f5ecce9302bddfd744211c4709b48d
diff --git a/metadata/md5-cache/dev-rust/lock_api-0.3.4 b/metadata/md5-cache/dev-rust/lock_api-0.3.4
index 4ec951a..a12e8e9 100644
--- a/metadata/md5-cache/dev-rust/lock_api-0.3.4
+++ b/metadata/md5-cache/dev-rust/lock_api-0.3.4
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.4/r0
 SRC_URI=https://crates.io/api/v1/crates/lock_api/0.3.4/download -> lock_api-0.3.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=347e89eb667a7a8114993f7276eef0d4
diff --git a/metadata/md5-cache/dev-rust/lock_api-0.4.2 b/metadata/md5-cache/dev-rust/lock_api-0.4.2
new file mode 100644
index 0000000..f5d6e0d
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/lock_api-0.4.2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/scopeguard-1.1.0:= <dev-rust/scopeguard-2.0.0 >=dev-rust/owning_ref-0.4.1:= <dev-rust/owning_ref-0.5.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Wrappers to create fully-featured Mutex and RwLock types. Compatible with no_std
+EAPI=7
+HOMEPAGE=https://github.com/Amanieu/parking_lot
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/scopeguard-1.1.0:= <dev-rust/scopeguard-2.0.0 >=dev-rust/owning_ref-0.4.1:= <dev-rust/owning_ref-0.5.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.4.2/r0
+SRC_URI=https://crates.io/api/v1/crates/lock_api/0.4.2/download -> lock_api-0.4.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=579301ef3c16f879b08a57b4fbec952f
diff --git a/metadata/md5-cache/dev-rust/log-0.4.14 b/metadata/md5-cache/dev-rust/log-0.4.14
index 5ecf4e6..b80b6cd 100644
--- a/metadata/md5-cache/dev-rust/log-0.4.14
+++ b/metadata/md5-cache/dev-rust/log-0.4.14
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND==dev-rust/cfg-if-1*:= =dev-rust/serde-1*:= =dev-rust/sval-1*:= =dev-rust/value-bag-1*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.4.14/r0
 SRC_URI=https://crates.io/api/v1/crates/log/0.4.14/download -> log-0.4.14.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=1690ac14eb76220785c8ef988be6cc28
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3bc94ed9dbbd2ada973fe32b05eb6e69
diff --git a/metadata/md5-cache/dev-rust/loom-0.1.1 b/metadata/md5-cache/dev-rust/loom-0.1.1
index a40454b..0d811b9d 100644
--- a/metadata/md5-cache/dev-rust/loom-0.1.1
+++ b/metadata/md5-cache/dev-rust/loom-0.1.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/lru-0.1.16 b/metadata/md5-cache/dev-rust/lru-0.1.16
index 0b46534..1ee0c8b 100644
--- a/metadata/md5-cache/dev-rust/lru-0.1.16
+++ b/metadata/md5-cache/dev-rust/lru-0.1.16
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.16/r0
 SRC_URI=https://crates.io/api/v1/crates/lru/0.1.16/download -> lru-0.1.16.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=65ae5b329578092647986e5c328d9b9b
diff --git a/metadata/md5-cache/dev-rust/lru-0.6.5 b/metadata/md5-cache/dev-rust/lru-0.6.5
index 5333377..5ef8ad5 100644
--- a/metadata/md5-cache/dev-rust/lru-0.6.5
+++ b/metadata/md5-cache/dev-rust/lru-0.6.5
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.5/r0
 SRC_URI=https://crates.io/api/v1/crates/lru/0.6.5/download -> lru-0.6.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=179ea1f87824727c0f1909d81a8f57f3
diff --git a/metadata/md5-cache/dev-rust/lru-cache-0.1.2 b/metadata/md5-cache/dev-rust/lru-cache-0.1.2
index 4f3d10b..8bc1133c 100644
--- a/metadata/md5-cache/dev-rust/lru-cache-0.1.2
+++ b/metadata/md5-cache/dev-rust/lru-cache-0.1.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.2/r0
 SRC_URI=https://crates.io/api/v1/crates/lru-cache/0.1.2/download -> lru-cache-0.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ca44c14b6ca8abfa3bcce15535f7c4a2
diff --git a/metadata/md5-cache/dev-rust/managed-0.8.0 b/metadata/md5-cache/dev-rust/managed-0.8.0
index a3f24ed..31fa4ce 100644
--- a/metadata/md5-cache/dev-rust/managed-0.8.0
+++ b/metadata/md5-cache/dev-rust/managed-0.8.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.0/r0
 SRC_URI=https://crates.io/api/v1/crates/managed/0.8.0/download -> managed-0.8.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8fd32779cc99e75a82e21c06e0ba87b6
diff --git a/metadata/md5-cache/dev-rust/manatee-client-0.24.52-r13 b/metadata/md5-cache/dev-rust/manatee-client-0.24.52-r13
deleted file mode 100644
index 68d3958..0000000
--- a/metadata/md5-cache/dev-rust/manatee-client-0.24.52-r13
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=sys-apps/dbus chromeos-base/libsirenia:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= =dev-rust/stderrlog-0.5*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 =dev-rust/which-4*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Rust D-Bus bindings for ManaTEE.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/manatee-client
-IUSE=cros_host cros_workon_tree_a1d60d57f61a5bca613446926cc66c65ac62ce8b_3508d2f3db0647ef3871071db0b2fbfd7b6af042 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=sys-apps/dbus
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.24.52-r13
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=82c1da291bf5df527464e4d94507cb03
diff --git a/metadata/md5-cache/dev-rust/manatee-client-0.24.52-r21 b/metadata/md5-cache/dev-rust/manatee-client-0.24.52-r21
new file mode 100644
index 0000000..575a2d2
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/manatee-client-0.24.52-r21
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=sys-apps/dbus chromeos-base/libsirenia:= =dev-rust/anyhow-1*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.9*:= =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= =dev-rust/stderrlog-0.5*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 =dev-rust/which-4*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Rust D-Bus bindings for ManaTEE.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/manatee-client
+IUSE=cros_host cros_workon_tree_56dc239d6eef3f0577a66b4f0437a9f2374326a7_58be5098716e7df76045940d9d1b652ca9b1cfd7 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=sys-apps/dbus
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.24.52-r21
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e8e1fcc7975bfcac581593546b29bfa8
diff --git a/metadata/md5-cache/dev-rust/manatee-client-9999 b/metadata/md5-cache/dev-rust/manatee-client-9999
index 2edc282..e5404cc 100644
--- a/metadata/md5-cache/dev-rust/manatee-client-9999
+++ b/metadata/md5-cache/dev-rust/manatee-client-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=sys-apps/dbus chromeos-base/libsirenia:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= =dev-rust/stderrlog-0.5*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 =dev-rust/which-4*:= >=virtual/rust-1.39.0:=
+DEPEND=sys-apps/dbus chromeos-base/libsirenia:= =dev-rust/anyhow-1*:= dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.9*:= =dev-rust/getopts-0.2*:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= =dev-rust/stderrlog-0.5*:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 =dev-rust/which-4*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Rust D-Bus bindings for ManaTEE.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/sirenia/manatee-client
@@ -11,5 +11,5 @@
 RDEPEND=sys-apps/dbus
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d7e73d8c93f79e5ff79465f1dddbaf0a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9652d1896e6e3d6a07056e46ad84e605
diff --git a/metadata/md5-cache/dev-rust/matches-0.1.8 b/metadata/md5-cache/dev-rust/matches-0.1.8
index b3c70f1..505e5b2 100644
--- a/metadata/md5-cache/dev-rust/matches-0.1.8
+++ b/metadata/md5-cache/dev-rust/matches-0.1.8
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.8/r0
 SRC_URI=https://crates.io/api/v1/crates/matches/0.1.8/download -> matches-0.1.8.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4a292c75abb4d90b66d1c3feae66831e
diff --git a/metadata/md5-cache/dev-rust/maybe-uninit-2.0.0 b/metadata/md5-cache/dev-rust/maybe-uninit-2.0.0
index 7a04c5f..295fd09 100644
--- a/metadata/md5-cache/dev-rust/maybe-uninit-2.0.0
+++ b/metadata/md5-cache/dev-rust/maybe-uninit-2.0.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.0.0/r0
 SRC_URI=https://crates.io/api/v1/crates/maybe-uninit/2.0.0/download -> maybe-uninit-2.0.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3643f4199a90280407778d2a19d5ed88
diff --git a/metadata/md5-cache/dev-rust/md5-0.7.0 b/metadata/md5-cache/dev-rust/md5-0.7.0
new file mode 100644
index 0000000..51a8eda
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/md5-0.7.0
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.7.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/memchr-2.2.1 b/metadata/md5-cache/dev-rust/memchr-2.2.1
index c81151b..a01bc82 100644
--- a/metadata/md5-cache/dev-rust/memchr-2.2.1
+++ b/metadata/md5-cache/dev-rust/memchr-2.2.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.2.1/r0
 SRC_URI=https://crates.io/api/v1/crates/memchr/2.2.1/download -> memchr-2.2.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=db4aca02ad3f6c4ae112d431d15bd6af
diff --git a/metadata/md5-cache/dev-rust/memchr-2.4.0 b/metadata/md5-cache/dev-rust/memchr-2.4.0
index 4d7849e..a42b145 100644
--- a/metadata/md5-cache/dev-rust/memchr-2.4.0
+++ b/metadata/md5-cache/dev-rust/memchr-2.4.0
@@ -8,7 +8,8 @@
 LICENSE=MIT
 RDEPEND=>=dev-rust/libc-0.2.18:= <dev-rust/libc-0.3.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=2.4.0/r0
 SRC_URI=https://crates.io/api/v1/crates/memchr/2.4.0/download -> memchr-2.4.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9c59693081d8f182a07c5b039f276b03
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b71507f1c0b0c21fc899c65cc8a996f9
diff --git a/metadata/md5-cache/dev-rust/memmap-0.6.2 b/metadata/md5-cache/dev-rust/memmap-0.6.2
index e7969e2..36cadb7 100644
--- a/metadata/md5-cache/dev-rust/memmap-0.6.2
+++ b/metadata/md5-cache/dev-rust/memmap-0.6.2
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.2/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/memoffset-0.2.1 b/metadata/md5-cache/dev-rust/memoffset-0.2.1
index 0d2ba24..0dc5f1f 100644
--- a/metadata/md5-cache/dev-rust/memoffset-0.2.1
+++ b/metadata/md5-cache/dev-rust/memoffset-0.2.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.1/r0
 SRC_URI=https://crates.io/api/v1/crates/memoffset/0.2.1/download -> memoffset-0.2.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=827e49c10ca04132710ce228e3e2dd56
diff --git a/metadata/md5-cache/dev-rust/memoffset-0.5.6 b/metadata/md5-cache/dev-rust/memoffset-0.5.6
index 08a857e..bef1425 100644
--- a/metadata/md5-cache/dev-rust/memoffset-0.5.6
+++ b/metadata/md5-cache/dev-rust/memoffset-0.5.6
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.5.6/r0
 SRC_URI=https://crates.io/api/v1/crates/memoffset/0.5.6/download -> memoffset-0.5.6.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=0ae7e6c5da7c116388dda4b007a5641c
diff --git a/metadata/md5-cache/dev-rust/microamp-0.1.0 b/metadata/md5-cache/dev-rust/microamp-0.1.0
new file mode 100644
index 0000000..270346f
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/microamp-0.1.0
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/minijail-0.2.1-r6 b/metadata/md5-cache/dev-rust/minijail-0.2.1-r6
deleted file mode 100644
index d31c946..0000000
--- a/metadata/md5-cache/dev-rust/minijail-0.2.1-r6
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 dev-rust/minijail-sys:= >=virtual/rust-1.39.0:=
-DESCRIPTION=rust bindings for minijail
-EAPI=7
-HOMEPAGE=https://android.googlesource.com/platform/external/minijail
-IUSE=asan test cros_host cros_workon_tree_2ac2853d10ad0e5f4b451d75ea3590649b9ee241 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 dev-rust/minijail-sys:=
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.2.1-r6
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=372ed08b79e33ef53d355845a46960ec
diff --git a/metadata/md5-cache/dev-rust/minijail-0.2.2-r8 b/metadata/md5-cache/dev-rust/minijail-0.2.2-r8
deleted file mode 100644
index ad5e0ce..0000000
--- a/metadata/md5-cache/dev-rust/minijail-0.2.2-r8
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 dev-rust/minijail-sys:= >=virtual/rust-1.39.0:=
-DESCRIPTION=rust bindings for minijail
-EAPI=7
-HOMEPAGE=https://android.googlesource.com/platform/external/minijail
-IUSE=asan test cros_host cros_workon_tree_7dd54d6994a78efa674fac10be69ff0c8866e384 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 dev-rust/minijail-sys:=
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.2.2-r8
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a2d98350c902f4c1dfc5123eef536f83
diff --git a/metadata/md5-cache/dev-rust/minijail-0.2.3-r10 b/metadata/md5-cache/dev-rust/minijail-0.2.3-r10
new file mode 100644
index 0000000..2ef7965
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/minijail-0.2.3-r10
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/minijail-sys-0.0.13:= >=virtual/rust-1.39.0:=
+DESCRIPTION=rust bindings for minijail
+EAPI=7
+HOMEPAGE=https://android.googlesource.com/platform/external/minijail
+IUSE=asan test cros_host cros_workon_tree_9e34181382f35f4cedb5a0dfd86afd39212d42f8 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/minijail-sys-0.0.13:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.2.3-r10
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1b49d646479663b8a64dac28841fae04
diff --git a/metadata/md5-cache/dev-rust/minijail-9999 b/metadata/md5-cache/dev-rust/minijail-9999
index 462d8c9..31a5b35 100644
--- a/metadata/md5-cache/dev-rust/minijail-9999
+++ b/metadata/md5-cache/dev-rust/minijail-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 dev-rust/minijail-sys:= >=virtual/rust-1.39.0:=
+DEPEND=>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/minijail-sys-0.0.13:= >=virtual/rust-1.39.0:=
 DESCRIPTION=rust bindings for minijail
 EAPI=7
 HOMEPAGE=https://android.googlesource.com/platform/external/minijail
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 dev-rust/minijail-sys:=
+RDEPEND=>=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/minijail-sys-0.0.13:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7bc7794171d39e00e925fcf1d05c38f7
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=55824a876b06577b1b0c102bdc5e5a52
diff --git a/metadata/md5-cache/dev-rust/minijail-sys-0.0.11-r6 b/metadata/md5-cache/dev-rust/minijail-sys-0.0.11-r6
deleted file mode 100644
index cfeeaba..0000000
--- a/metadata/md5-cache/dev-rust/minijail-sys-0.0.11-r6
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/minijail:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0 sys-libs/libcap:= virtual/bindgen:= >=virtual/rust-1.39.0:=
-DESCRIPTION=rust bindings for minijail
-EAPI=7
-HOMEPAGE=https://android.googlesource.com/platform/external/minijail
-IUSE=test cros_host cros_workon_tree_c12462bccb06babed5abc2a8e153f3ff5b04d259 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/minijail:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0 sys-libs/libcap:= virtual/bindgen:=
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.0.11-r6
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5af106317406cc875b3d3c63dc5d0879
diff --git a/metadata/md5-cache/dev-rust/minijail-sys-0.0.12-r8 b/metadata/md5-cache/dev-rust/minijail-sys-0.0.12-r8
deleted file mode 100644
index 04a0b61..0000000
--- a/metadata/md5-cache/dev-rust/minijail-sys-0.0.12-r8
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/minijail:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0 sys-libs/libcap:= virtual/bindgen:= >=virtual/rust-1.39.0:=
-DESCRIPTION=rust bindings for minijail
-EAPI=7
-HOMEPAGE=https://android.googlesource.com/platform/external/minijail
-IUSE=test cros_host cros_workon_tree_1121f5e2d4d75def167b19e54a7e03264df8a7f7 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/minijail:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0 sys-libs/libcap:= virtual/bindgen:=
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.0.12-r8
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=fdda0a550088150b70534a4a8f06be5d
diff --git a/metadata/md5-cache/dev-rust/minijail-sys-0.0.13-r11 b/metadata/md5-cache/dev-rust/minijail-sys-0.0.13-r11
new file mode 100644
index 0000000..e7ab0077
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/minijail-sys-0.0.13-r11
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=chromeos-base/minijail:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0 =dev-rust/which-4*:= sys-libs/libcap:= virtual/bindgen:= >=virtual/rust-1.39.0:=
+DESCRIPTION=rust bindings for minijail
+EAPI=7
+HOMEPAGE=https://android.googlesource.com/platform/external/minijail
+IUSE=test cros_host cros_workon_tree_9827997d82db7f7e49902f5a62123aa5ab08c3be cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/minijail:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0 =dev-rust/which-4*:= sys-libs/libcap:= virtual/bindgen:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.0.13-r11
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c78cc346cda2d91cc4a62b943f525b71
diff --git a/metadata/md5-cache/dev-rust/minijail-sys-9999 b/metadata/md5-cache/dev-rust/minijail-sys-9999
index b503f63..f8b127a 100644
--- a/metadata/md5-cache/dev-rust/minijail-sys-9999
+++ b/metadata/md5-cache/dev-rust/minijail-sys-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=chromeos-base/minijail:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0 sys-libs/libcap:= virtual/bindgen:= >=virtual/rust-1.39.0:=
+DEPEND=chromeos-base/minijail:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0 =dev-rust/which-4*:= sys-libs/libcap:= virtual/bindgen:= >=virtual/rust-1.39.0:=
 DESCRIPTION=rust bindings for minijail
 EAPI=7
 HOMEPAGE=https://android.googlesource.com/platform/external/minijail
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=chromeos-base/minijail:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0 sys-libs/libcap:= virtual/bindgen:=
+RDEPEND=chromeos-base/minijail:= >=dev-rust/libc-0.2.44:= <dev-rust/libc-0.3.0 >=dev-rust/pkg-config-0.3.0:= <dev-rust/pkg-config-0.4.0 =dev-rust/which-4*:= sys-libs/libcap:= virtual/bindgen:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=82934542a10ef884170f3c3bf498ec18
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3c57faea359e750570e296540095f32b
diff --git a/metadata/md5-cache/dev-rust/miniz-sys-0.1.12 b/metadata/md5-cache/dev-rust/miniz-sys-0.1.12
index fb61b8b..ab8807e 100644
--- a/metadata/md5-cache/dev-rust/miniz-sys-0.1.12
+++ b/metadata/md5-cache/dev-rust/miniz-sys-0.1.12
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.12/r0
 SRC_URI=https://crates.io/api/v1/crates/miniz-sys/0.1.12/download -> miniz-sys-0.1.12.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=05bb35708104da2c0ed4cb8b3df2b520
diff --git a/metadata/md5-cache/dev-rust/miniz_oxide-0.4.4 b/metadata/md5-cache/dev-rust/miniz_oxide-0.4.4
index e93c048..5fe51fb 100644
--- a/metadata/md5-cache/dev-rust/miniz_oxide-0.4.4
+++ b/metadata/md5-cache/dev-rust/miniz_oxide-0.4.4
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.4/r0
 SRC_URI=https://crates.io/api/v1/crates/miniz_oxide/0.4.4/download -> miniz_oxide-0.4.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f065a31864be717acaec2bb063d326e6
diff --git a/metadata/md5-cache/dev-rust/mio-0.6.17 b/metadata/md5-cache/dev-rust/mio-0.6.17
index 04551f1..d9e4577 100644
--- a/metadata/md5-cache/dev-rust/mio-0.6.17
+++ b/metadata/md5-cache/dev-rust/mio-0.6.17
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.17/r0
 SRC_URI=https://crates.io/api/v1/crates/mio/0.6.17/download -> mio-0.6.17.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=20a92371a17948d001423d0013809a02
diff --git a/metadata/md5-cache/dev-rust/mio-0.6.17-r1 b/metadata/md5-cache/dev-rust/mio-0.6.17-r1
index 5fdcd58..fda453b 100644
--- a/metadata/md5-cache/dev-rust/mio-0.6.17-r1
+++ b/metadata/md5-cache/dev-rust/mio-0.6.17-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.17/r1
 SRC_URI=https://crates.io/api/v1/crates/mio/0.6.17/download -> mio-0.6.17.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=20a92371a17948d001423d0013809a02
diff --git a/metadata/md5-cache/dev-rust/mio-0.6.17-r2 b/metadata/md5-cache/dev-rust/mio-0.6.17-r2
index 32bdec15..86b113b 100644
--- a/metadata/md5-cache/dev-rust/mio-0.6.17-r2
+++ b/metadata/md5-cache/dev-rust/mio-0.6.17-r2
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.17/r2
 SRC_URI=https://crates.io/api/v1/crates/mio/0.6.17/download -> mio-0.6.17.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=20a92371a17948d001423d0013809a02
diff --git a/metadata/md5-cache/dev-rust/mio-0.6.23 b/metadata/md5-cache/dev-rust/mio-0.6.23
index 2671b13..0292959 100644
--- a/metadata/md5-cache/dev-rust/mio-0.6.23
+++ b/metadata/md5-cache/dev-rust/mio-0.6.23
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.23/r0
 SRC_URI=https://crates.io/api/v1/crates/mio/0.6.23/download -> mio-0.6.23.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ddb611e204c71ce4343b57475fcbd28c
diff --git a/metadata/md5-cache/dev-rust/mio-extras-2.0.5 b/metadata/md5-cache/dev-rust/mio-extras-2.0.5
index 819516c..1b1bf2a 100644
--- a/metadata/md5-cache/dev-rust/mio-extras-2.0.5
+++ b/metadata/md5-cache/dev-rust/mio-extras-2.0.5
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.0.5/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/mio-uds-0.6.7 b/metadata/md5-cache/dev-rust/mio-uds-0.6.7
index 42d6213..c9a5d27 100644
--- a/metadata/md5-cache/dev-rust/mio-uds-0.6.7
+++ b/metadata/md5-cache/dev-rust/mio-uds-0.6.7
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.7/r0
 SRC_URI=https://crates.io/api/v1/crates/mio-uds/0.6.7/download -> mio-uds-0.6.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e18dc2fc4c55e84d4baa97998a35777f
diff --git a/metadata/md5-cache/dev-rust/mio-uds-0.6.8 b/metadata/md5-cache/dev-rust/mio-uds-0.6.8
index 1c6458f..7f51613 100644
--- a/metadata/md5-cache/dev-rust/mio-uds-0.6.8
+++ b/metadata/md5-cache/dev-rust/mio-uds-0.6.8
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.8/r0
 SRC_URI=https://crates.io/api/v1/crates/mio-uds/0.6.8/download -> mio-uds-0.6.8.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3593256a2d93cb28dee32ff18da8e353
diff --git a/metadata/md5-cache/dev-rust/miow-0.2.1 b/metadata/md5-cache/dev-rust/miow-0.2.1
index 8015951..a5c2f4b 100644
--- a/metadata/md5-cache/dev-rust/miow-0.2.1
+++ b/metadata/md5-cache/dev-rust/miow-0.2.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.1/r0
 SRC_URI=https://crates.io/api/v1/crates/miow/0.2.1/download -> miow-0.2.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=78961d5cb26fb286cd9440e6e968e52e
diff --git a/metadata/md5-cache/dev-rust/multimap-0.8.3 b/metadata/md5-cache/dev-rust/multimap-0.8.3
new file mode 100644
index 0000000..c50d02d
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/multimap-0.8.3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/serde-1.0*:= test? ( =dev-rust/serde_test-1.0*:= ) >=virtual/rust-1.39.0:=
+DESCRIPTION=A multimap implementation.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/multimap
+IUSE=test cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/serde-1.0*:= test? ( =dev-rust/serde_test-1.0*:= )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.8.3/r0
+SRC_URI=https://crates.io/api/v1/crates/multimap/0.8.3/download -> multimap-0.8.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=12bccb89b8680efd99a170df3da739e1
diff --git a/metadata/md5-cache/dev-rust/native-tls-0.2.3 b/metadata/md5-cache/dev-rust/native-tls-0.2.3
deleted file mode 100644
index 4bda31e..0000000
--- a/metadata/md5-cache/dev-rust/native-tls-0.2.3
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/lazy_static-1.0:= >=dev-rust/libc-0.2:= >=dev-rust/log-0.4.5:= >=dev-rust/openssl-0.10.15:= >=dev-rust/openssl-probe-0.1:= >=dev-rust/openssl-sys-0.9.30:= >=dev-rust/schannel-0.1.13:= >=dev-rust/security-framework-0.3.1:= >=dev-rust/security-framework-sys-0.3.1:= >=dev-rust/tempfile-3.0:= >=virtual/rust-1.39.0:=
-DESCRIPTION=An abstraction over platform-specific TLS implementations.
-EAPI=6
-HOMEPAGE=https://github.com/sfackler/rust-native-tls
-IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=|| ( MIT Apache-2.0 )
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0.2.3/r0
-SRC_URI=https://crates.io/api/v1/crates/native-tls/0.2.3/download -> native-tls-0.2.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=19c8e2915d3fcfd49a849331990d2a5a
diff --git a/metadata/md5-cache/dev-rust/native-tls-0.2.3-r1 b/metadata/md5-cache/dev-rust/native-tls-0.2.3-r1
new file mode 100644
index 0000000..95d46e7
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/native-tls-0.2.3-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/lazy_static-1*:= =dev-rust/libc-0.2*:= >=dev-rust/security-framework-0.3.1:= <dev-rust/security-framework-0.4.0_alpha >=dev-rust/security-framework-sys-0.3.1:= <dev-rust/security-framework-sys-0.4.0_alpha =dev-rust/tempfile-3*:= >=dev-rust/log-0.4.5:= <dev-rust/log-0.5.0_alpha >=dev-rust/openssl-0.10.15:= <dev-rust/openssl-0.11.0_alpha =dev-rust/openssl-probe-0.1*:= >=dev-rust/openssl-sys-0.9.30:= <dev-rust/openssl-sys-0.10.0_alpha >=dev-rust/schannel-0.1.13:= <dev-rust/schannel-0.2.0_alpha >=virtual/rust-1.39.0:=
+DESCRIPTION=A wrapper over a platform"s native TLS implementation
+EAPI=7
+HOMEPAGE=https://crates.io/crates/native-tls
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/lazy_static-1*:= =dev-rust/libc-0.2*:= >=dev-rust/security-framework-0.3.1:= <dev-rust/security-framework-0.4.0_alpha >=dev-rust/security-framework-sys-0.3.1:= <dev-rust/security-framework-sys-0.4.0_alpha =dev-rust/tempfile-3*:= >=dev-rust/log-0.4.5:= <dev-rust/log-0.5.0_alpha >=dev-rust/openssl-0.10.15:= <dev-rust/openssl-0.11.0_alpha =dev-rust/openssl-probe-0.1*:= >=dev-rust/openssl-sys-0.9.30:= <dev-rust/openssl-sys-0.10.0_alpha >=dev-rust/schannel-0.1.13:= <dev-rust/schannel-0.2.0_alpha
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.2.3/r1
+SRC_URI=https://crates.io/api/v1/crates/native-tls/0.2.3/download -> native-tls-0.2.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=eee1f938056aa209b6b60ba36d1eaaad
diff --git a/metadata/md5-cache/dev-rust/nb-0.1.3 b/metadata/md5-cache/dev-rust/nb-0.1.3
new file mode 100644
index 0000000..bc118df
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/nb-0.1.3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/nb-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Minimal non-blocking I/O layer
+EAPI=7
+HOMEPAGE=https://crates.io/crates/nb
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/nb-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.3/r0
+SRC_URI=https://crates.io/api/v1/crates/nb/0.1.3/download -> nb-0.1.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5cb7c1578f8f65fcf8d89bcc30d765a1
diff --git a/metadata/md5-cache/dev-rust/nb-1.0.0 b/metadata/md5-cache/dev-rust/nb-1.0.0
new file mode 100644
index 0000000..53534dc
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/nb-1.0.0
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Minimal non-blocking I/O layer
+EAPI=7
+HOMEPAGE=https://crates.io/crates/nb
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.0.0/r0
+SRC_URI=https://crates.io/api/v1/crates/nb/1.0.0/download -> nb-1.0.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=bdbe15e3886261e8c349d72181db3dd3
diff --git a/metadata/md5-cache/dev-rust/net2-0.2.33 b/metadata/md5-cache/dev-rust/net2-0.2.33
index 4cb7b98..de23394 100644
--- a/metadata/md5-cache/dev-rust/net2-0.2.33
+++ b/metadata/md5-cache/dev-rust/net2-0.2.33
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.33/r0
 SRC_URI=https://crates.io/api/v1/crates/net2/0.2.33/download -> net2-0.2.33.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=eb5f024986bfa02b842da812edd2905c
diff --git a/metadata/md5-cache/dev-rust/net2-0.2.37 b/metadata/md5-cache/dev-rust/net2-0.2.37
index 31117e0..df607f5 100644
--- a/metadata/md5-cache/dev-rust/net2-0.2.37
+++ b/metadata/md5-cache/dev-rust/net2-0.2.37
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.37/r0
 SRC_URI=https://crates.io/api/v1/crates/net2/0.2.37/download -> net2-0.2.37.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f9385dd59c322fdc1dc5b69f05f9f9fc
diff --git a/metadata/md5-cache/dev-rust/nix-0.19.0 b/metadata/md5-cache/dev-rust/nix-0.19.0
index 388fee9..cce7874 100644
--- a/metadata/md5-cache/dev-rust/nix-0.19.0
+++ b/metadata/md5-cache/dev-rust/nix-0.19.0
@@ -8,7 +8,8 @@
 LICENSE=MIT
 RDEPEND=>=dev-rust/bitflags-1.1.0:= <dev-rust/bitflags-2.0.0 >=dev-rust/cfg-if-0.1.10:= <dev-rust/cfg-if-0.2.0 >=dev-rust/libc-0.2.78:= <dev-rust/libc-3.0.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.19.0/r0
 SRC_URI=https://crates.io/api/v1/crates/nix/0.19.0/download -> nix-0.19.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=deeeccd209ced1dcc8132b64c712eca4
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2a3e20ac3945a3b0ada8af7509555a81
diff --git a/metadata/md5-cache/dev-rust/nix-0.19.0-r1 b/metadata/md5-cache/dev-rust/nix-0.19.0-r1
index 963bd55..29754a2 100644
--- a/metadata/md5-cache/dev-rust/nix-0.19.0-r1
+++ b/metadata/md5-cache/dev-rust/nix-0.19.0-r1
@@ -8,7 +8,8 @@
 LICENSE=MIT
 RDEPEND=>=dev-rust/bitflags-1.1.0:= <dev-rust/bitflags-2.0.0 >=dev-rust/cfg-if-0.1.10:= <dev-rust/cfg-if-0.2.0 >=dev-rust/libc-0.2.78:= <dev-rust/libc-3.0.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.19.0/r1
 SRC_URI=https://crates.io/api/v1/crates/nix/0.19.0/download -> nix-0.19.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=deeeccd209ced1dcc8132b64c712eca4
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2a3e20ac3945a3b0ada8af7509555a81
diff --git a/metadata/md5-cache/dev-rust/no-panic-0.1.10 b/metadata/md5-cache/dev-rust/no-panic-0.1.10
index 440abb5..8d4423c 100644
--- a/metadata/md5-cache/dev-rust/no-panic-0.1.10
+++ b/metadata/md5-cache/dev-rust/no-panic-0.1.10
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.1.10/r0
 SRC_URI=https://crates.io/api/v1/crates/no-panic/0.1.10/download -> no-panic-0.1.10.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=1d34483184bb9f4a5d5ea9a00acbc7e3
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=8ba6a27d2abe7c4913116841618627ae
diff --git a/metadata/md5-cache/dev-rust/nodrop-0.1.13 b/metadata/md5-cache/dev-rust/nodrop-0.1.13
index a40bb13..c8f490e 100644
--- a/metadata/md5-cache/dev-rust/nodrop-0.1.13
+++ b/metadata/md5-cache/dev-rust/nodrop-0.1.13
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.13/r0
 SRC_URI=https://crates.io/api/v1/crates/nodrop/0.1.13/download -> nodrop-0.1.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f5c7565a04faf35ccae24885d0a1c357
diff --git a/metadata/md5-cache/dev-rust/nodrop-union-0.1.10 b/metadata/md5-cache/dev-rust/nodrop-union-0.1.10
index a930f4b..dfd4665 100644
--- a/metadata/md5-cache/dev-rust/nodrop-union-0.1.10
+++ b/metadata/md5-cache/dev-rust/nodrop-union-0.1.10
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.10/r0
 SRC_URI=https://crates.io/api/v1/crates/nodrop-union/0.1.10/download -> nodrop-union-0.1.10.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d10a1446898e31b59890b54476b178ad
diff --git a/metadata/md5-cache/dev-rust/nom-5.1.2 b/metadata/md5-cache/dev-rust/nom-5.1.2
index 2ec3314..f4e9a45 100644
--- a/metadata/md5-cache/dev-rust/nom-5.1.2
+++ b/metadata/md5-cache/dev-rust/nom-5.1.2
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=MIT
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=5.1.2/r0
 SRC_URI=https://crates.io/api/v1/crates/nom/5.1.2/download -> nom-5.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f787e8ed426c04084bae787c38665110
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6e23d09928be3a1693dcf076fbe6aebe
diff --git a/metadata/md5-cache/dev-rust/num-bigint-0.4.0 b/metadata/md5-cache/dev-rust/num-bigint-0.4.0
new file mode 100644
index 0000000..c611b2c
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/num-bigint-0.4.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/arbitrary-1*:= >=dev-rust/num-integer-0.1.42:= <dev-rust/num-integer-0.2.0 >=dev-rust/num-traits-0.2.11:= <dev-rust/num-traits-0.3.0 =dev-rust/quickcheck-1*:= =dev-rust/rand-0.8*:= =dev-rust/serde-1*:= =dev-rust/autocfg-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Big integer implementation for Rust
+EAPI=7
+HOMEPAGE=https://github.com/rust-num/num-bigint
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/arbitrary-1*:= >=dev-rust/num-integer-0.1.42:= <dev-rust/num-integer-0.2.0 >=dev-rust/num-traits-0.2.11:= <dev-rust/num-traits-0.3.0 =dev-rust/quickcheck-1*:= =dev-rust/rand-0.8*:= =dev-rust/serde-1*:= =dev-rust/autocfg-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.4.0/r0
+SRC_URI=https://crates.io/api/v1/crates/num-bigint/0.4.0/download -> num-bigint-0.4.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b752ce321718a67433cb223ff0fe5ec7
diff --git a/metadata/md5-cache/dev-rust/num-integer-0.1.38 b/metadata/md5-cache/dev-rust/num-integer-0.1.38
index 66af581..1e65949 100644
--- a/metadata/md5-cache/dev-rust/num-integer-0.1.38
+++ b/metadata/md5-cache/dev-rust/num-integer-0.1.38
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.38/r0
 SRC_URI=https://crates.io/api/v1/crates/num-integer/0.1.38/download -> num-integer-0.1.38.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6627d63ba545f841f78d6c38f49048c6
diff --git a/metadata/md5-cache/dev-rust/num-integer-0.1.44 b/metadata/md5-cache/dev-rust/num-integer-0.1.44
new file mode 100644
index 0000000..4718083
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/num-integer-0.1.44
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/num-traits-0.2.11:= <dev-rust/num-traits-0.3.0 =dev-rust/autocfg-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Integer traits and functions
+EAPI=7
+HOMEPAGE=https://github.com/rust-num/num-integer
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/num-traits-0.2.11:= <dev-rust/num-traits-0.3.0 =dev-rust/autocfg-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.44/r0
+SRC_URI=https://crates.io/api/v1/crates/num-integer/0.1.44/download -> num-integer-0.1.44.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c3e287a4da2fe6f1ce1f79c4ea8aa29b
diff --git a/metadata/md5-cache/dev-rust/num-iter-0.1.37 b/metadata/md5-cache/dev-rust/num-iter-0.1.37
index d8168d1..2c66dcd 100644
--- a/metadata/md5-cache/dev-rust/num-iter-0.1.37
+++ b/metadata/md5-cache/dev-rust/num-iter-0.1.37
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.37/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b459f025504105b3b301bb8096b60267
diff --git a/metadata/md5-cache/dev-rust/num-traits-0.2.12 b/metadata/md5-cache/dev-rust/num-traits-0.2.12
index 2030ab8..428ae39 100644
--- a/metadata/md5-cache/dev-rust/num-traits-0.2.12
+++ b/metadata/md5-cache/dev-rust/num-traits-0.2.12
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.2.12/r0
 SRC_URI=https://crates.io/api/v1/crates/num-traits/0.2.12/download -> num-traits-0.2.12.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=a0faad407b9562ee8e18cfbab21dff7e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=1b1ba30675daceb56d250690be76bd66
diff --git a/metadata/md5-cache/dev-rust/num_cpus-1.13.0 b/metadata/md5-cache/dev-rust/num_cpus-1.13.0
index 7b42429..7705311 100644
--- a/metadata/md5-cache/dev-rust/num_cpus-1.13.0
+++ b/metadata/md5-cache/dev-rust/num_cpus-1.13.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.13.0/r0
 SRC_URI=https://crates.io/api/v1/crates/num_cpus/1.13.0/download -> num_cpus-1.13.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d7b8d3095847eea2d817faef7b429fe5
diff --git a/metadata/md5-cache/dev-rust/num_cpus-1.9.0 b/metadata/md5-cache/dev-rust/num_cpus-1.9.0
index 53e445f..52582af 100644
--- a/metadata/md5-cache/dev-rust/num_cpus-1.9.0
+++ b/metadata/md5-cache/dev-rust/num_cpus-1.9.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.9.0/r0
 SRC_URI=https://crates.io/api/v1/crates/num_cpus/1.9.0/download -> num_cpus-1.9.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=224962b00facb57ee87a8dc81e32d7d4
diff --git a/metadata/md5-cache/dev-rust/num_enum-0.5.1-r1 b/metadata/md5-cache/dev-rust/num_enum-0.5.1-r1
index 83a3cc7..b38957c 100644
--- a/metadata/md5-cache/dev-rust/num_enum-0.5.1-r1
+++ b/metadata/md5-cache/dev-rust/num_enum-0.5.1-r1
@@ -8,7 +8,8 @@
 LICENSE=BSD
 RDEPEND==dev-rust/derivative-2*:= >=dev-rust/num_enum_derive-0.5.1:= <dev-rust/num_enum_derive-0.6.0 !=dev-rust/num_enum-5*
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.5.1/r1
 SRC_URI=https://crates.io/api/v1/crates/num_enum/0.5.1/download -> num_enum-0.5.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5d2ac09d3c5b9bd893a23d8b139b5d77
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=23f8d6e4ba0908690c4e2c2fd49aea8c
diff --git a/metadata/md5-cache/dev-rust/num_enum_derive-0.5.1 b/metadata/md5-cache/dev-rust/num_enum_derive-0.5.1
index fa45ad5..eb71f7c 100644
--- a/metadata/md5-cache/dev-rust/num_enum_derive-0.5.1
+++ b/metadata/md5-cache/dev-rust/num_enum_derive-0.5.1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.5.1/r0
 SRC_URI=https://crates.io/api/v1/crates/num_enum_derive/0.5.1/download -> num_enum_derive-0.5.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=0086dbc5b7f2dc4f21584ed5bc669dfd
diff --git a/metadata/md5-cache/dev-rust/object-0.7.0 b/metadata/md5-cache/dev-rust/object-0.7.0
index 059211f..54b59e8 100644
--- a/metadata/md5-cache/dev-rust/object-0.7.0
+++ b/metadata/md5-cache/dev-rust/object-0.7.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/once_cell-1.7.2 b/metadata/md5-cache/dev-rust/once_cell-1.7.2
index 7835eb5..b271504 100644
--- a/metadata/md5-cache/dev-rust/once_cell-1.7.2
+++ b/metadata/md5-cache/dev-rust/once_cell-1.7.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.7.2/r0
 SRC_URI=https://crates.io/api/v1/crates/once_cell/1.7.2/download -> once_cell-1.7.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=a94e56ea4acf82de157a2098b502504e
diff --git a/metadata/md5-cache/dev-rust/openssl-0.10.32 b/metadata/md5-cache/dev-rust/openssl-0.10.32
index 69ae818..8033540 100644
--- a/metadata/md5-cache/dev-rust/openssl-0.10.32
+++ b/metadata/md5-cache/dev-rust/openssl-0.10.32
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.10.32/r0
 SRC_URI=https://crates.io/api/v1/crates/openssl/0.10.32/download -> openssl-0.10.32.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3c1e808483a4c9a32b3c9f5782ee77e7
diff --git a/metadata/md5-cache/dev-rust/openssl-0.10.32-r1 b/metadata/md5-cache/dev-rust/openssl-0.10.32-r1
index 0b60215..15e8a9d 100644
--- a/metadata/md5-cache/dev-rust/openssl-0.10.32-r1
+++ b/metadata/md5-cache/dev-rust/openssl-0.10.32-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.10.32/r1
 SRC_URI=https://crates.io/api/v1/crates/openssl/0.10.32/download -> openssl-0.10.32.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3c1e808483a4c9a32b3c9f5782ee77e7
diff --git a/metadata/md5-cache/dev-rust/openssl-probe-0.1.2 b/metadata/md5-cache/dev-rust/openssl-probe-0.1.2
index b269be7..645a729 100644
--- a/metadata/md5-cache/dev-rust/openssl-probe-0.1.2
+++ b/metadata/md5-cache/dev-rust/openssl-probe-0.1.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.2/r0
 SRC_URI=https://crates.io/api/v1/crates/openssl-probe/0.1.2/download -> openssl-probe-0.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=5dc9ec963925ec082a28a282f951e96f
diff --git a/metadata/md5-cache/dev-rust/openssl-src-111.0.1 b/metadata/md5-cache/dev-rust/openssl-src-111.0.1
index 989cf62..5a0005a 100644
--- a/metadata/md5-cache/dev-rust/openssl-src-111.0.1
+++ b/metadata/md5-cache/dev-rust/openssl-src-111.0.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=111.0.1/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2d89a49fb294a4eaf30d0448ce3a9cc8
diff --git a/metadata/md5-cache/dev-rust/openssl-src-111.0.1-r1 b/metadata/md5-cache/dev-rust/openssl-src-111.0.1-r1
index 3052a1e..5ff344a 100644
--- a/metadata/md5-cache/dev-rust/openssl-src-111.0.1-r1
+++ b/metadata/md5-cache/dev-rust/openssl-src-111.0.1-r1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=111.0.1/r1
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2d89a49fb294a4eaf30d0448ce3a9cc8
diff --git a/metadata/md5-cache/dev-rust/openssl-sys-0.9.60 b/metadata/md5-cache/dev-rust/openssl-sys-0.9.60
index cec288c..6afc9a8 100644
--- a/metadata/md5-cache/dev-rust/openssl-sys-0.9.60
+++ b/metadata/md5-cache/dev-rust/openssl-sys-0.9.60
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.9.60/r0
 SRC_URI=https://crates.io/api/v1/crates/openssl-sys/0.9.60/download -> openssl-sys-0.9.60.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d42888d0b134b83088863a1f2a56d677
diff --git a/metadata/md5-cache/dev-rust/openssl-sys-0.9.60-r1 b/metadata/md5-cache/dev-rust/openssl-sys-0.9.60-r1
index 5cfb015..d299e5b9 100644
--- a/metadata/md5-cache/dev-rust/openssl-sys-0.9.60-r1
+++ b/metadata/md5-cache/dev-rust/openssl-sys-0.9.60-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.9.60/r1
 SRC_URI=https://crates.io/api/v1/crates/openssl-sys/0.9.60/download -> openssl-sys-0.9.60.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d42888d0b134b83088863a1f2a56d677
diff --git a/metadata/md5-cache/dev-rust/os_str_bytes-2.4.0 b/metadata/md5-cache/dev-rust/os_str_bytes-2.4.0
new file mode 100644
index 0000000..3f61fef
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/os_str_bytes-2.4.0
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Traits for converting between byte sequences and platform-native strings
+EAPI=7
+HOMEPAGE=https://crates.io/crates/os_str_bytes
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=2.4.0/r0
+SRC_URI=https://crates.io/api/v1/crates/os_str_bytes/2.4.0/download -> os_str_bytes-2.4.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=33b99f9d68c75e27104d70bd415cefc8
diff --git a/metadata/md5-cache/dev-rust/owning_ref-0.3.3 b/metadata/md5-cache/dev-rust/owning_ref-0.3.3
index 0eb2d54..f95e6ba 100644
--- a/metadata/md5-cache/dev-rust/owning_ref-0.3.3
+++ b/metadata/md5-cache/dev-rust/owning_ref-0.3.3
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.3/r0
 SRC_URI=https://crates.io/api/v1/crates/owning_ref/0.3.3/download -> owning_ref-0.3.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f5a7d0de4978f44d7d84a95bc0b72ccd
diff --git a/metadata/md5-cache/dev-rust/owning_ref-0.4.0 b/metadata/md5-cache/dev-rust/owning_ref-0.4.0
index e383f90..55b4c8f 100644
--- a/metadata/md5-cache/dev-rust/owning_ref-0.4.0
+++ b/metadata/md5-cache/dev-rust/owning_ref-0.4.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.0/r0
 SRC_URI=https://crates.io/api/v1/crates/owning_ref/0.4.0/download -> owning_ref-0.4.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f5a7d0de4978f44d7d84a95bc0b72ccd
diff --git a/metadata/md5-cache/dev-rust/owning_ref-0.4.1 b/metadata/md5-cache/dev-rust/owning_ref-0.4.1
new file mode 100644
index 0000000..e95c677
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/owning_ref-0.4.1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/stable_deref_trait-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A library for creating references that carry their owner with them.
+EAPI=7
+HOMEPAGE=https://github.com/Kimundi/owning-ref-rs
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND==dev-rust/stable_deref_trait-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.4.1/r0
+SRC_URI=https://crates.io/api/v1/crates/owning_ref/0.4.1/download -> owning_ref-0.4.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0f14c89e4535f09de9e4223ba49b20ea
diff --git a/metadata/md5-cache/dev-rust/p9-0.1.0-r167 b/metadata/md5-cache/dev-rust/p9-0.1.0-r167
new file mode 100644
index 0000000..ed3012c
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/p9-0.1.0-r167
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=dev-rust/libc:= =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= dev-rust/sys_util:= fuzzer? ( dev-rust/cros_fuzz:= ) >=virtual/rust-1.39.0:=
+DESCRIPTION=Server implementation of the 9P file system protocol
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/p9/
+IUSE=fuzzer test fuzzer cros_host cros_workon_tree_c5944a955c7994afdaaee1facb2604801bb47e03 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-rust/libc:= =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= dev-rust/sys_util:= fuzzer? ( dev-rust/cros_fuzz:= ) !!<=dev-rust/p9-0.1.0-r14
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r167
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=416d3be8674095b4963d5e6569408813
diff --git a/metadata/md5-cache/dev-rust/p9-0.1.0-r34 b/metadata/md5-cache/dev-rust/p9-0.1.0-r34
deleted file mode 100644
index 7906e1f..0000000
--- a/metadata/md5-cache/dev-rust/p9-0.1.0-r34
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/libc:= =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= dev-rust/sys_util:= fuzzer? ( dev-rust/cros_fuzz:= ) >=virtual/rust-1.39.0:=
-DESCRIPTION=Server implementation of the 9P file system protocol
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/p9/
-IUSE=fuzzer test fuzzer cros_host cros_workon_tree_35c56057196d0db164eba11f0482eef6a7510d23 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-rust/libc:= =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= dev-rust/sys_util:= fuzzer? ( dev-rust/cros_fuzz:= ) !!<=dev-rust/p9-0.1.0-r14
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r34
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=08b1217bc3700035b9aefcaaf087e1f4
diff --git a/metadata/md5-cache/dev-rust/p9-9999 b/metadata/md5-cache/dev-rust/p9-9999
index 82fb0e0..d13090c 100644
--- a/metadata/md5-cache/dev-rust/p9-9999
+++ b/metadata/md5-cache/dev-rust/p9-9999
@@ -11,5 +11,5 @@
 RDEPEND=dev-rust/libc:= =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= dev-rust/sys_util:= fuzzer? ( dev-rust/cros_fuzz:= ) !!<=dev-rust/p9-0.1.0-r14
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=077e837fdf04af427c28ed425348fdd4
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=48d3cf749e5687b5dc0a0cb1f82cbf96
diff --git a/metadata/md5-cache/dev-rust/panic-halt-0.2.0 b/metadata/md5-cache/dev-rust/panic-halt-0.2.0
new file mode 100644
index 0000000..01e490a
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/panic-halt-0.2.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Set panicking behavior to halt
+EAPI=7
+HOMEPAGE=https://crates.io/crates/panic-halt
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.2.0/r0
+SRC_URI=https://crates.io/api/v1/crates/panic-halt/0.2.0/download -> panic-halt-0.2.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=32b252009736135db616cca41a5acc5f
diff --git a/metadata/md5-cache/dev-rust/panic-reset-0.1.0 b/metadata/md5-cache/dev-rust/panic-reset-0.1.0
new file mode 100644
index 0000000..35facbf
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/panic-reset-0.1.0
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/cortex-m-0.6*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Set panicking behavior to reset
+EAPI=7
+HOMEPAGE=https://crates.io/crates/panic-reset
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/cortex-m-0.6*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.1.0/r0
+SRC_URI=https://crates.io/api/v1/crates/panic-reset/0.1.0/download -> panic-reset-0.1.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4ef571e5ca53b4bb01612c33648b3b39
diff --git a/metadata/md5-cache/dev-rust/panic-rtt-target-0.1.2 b/metadata/md5-cache/dev-rust/panic-rtt-target-0.1.2
new file mode 100644
index 0000000..8324eba
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/panic-rtt-target-0.1.2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/cortex-m-0.7.1 <dev-rust/cortex-m-0.8.0_alpha:= >=dev-rust/rtt-target-0.3.1 <dev-rust/rtt-target-0.4.0_alpha:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Logs panic messages over RTT using rtt-target
+EAPI=7
+HOMEPAGE=https://crates.io/crates/panic-rtt-target
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=>=dev-rust/cortex-m-0.7.1 <dev-rust/cortex-m-0.8.0_alpha:= >=dev-rust/rtt-target-0.3.1 <dev-rust/rtt-target-0.4.0_alpha:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.2/r0
+SRC_URI=https://crates.io/api/v1/crates/panic-rtt-target/0.1.2/download -> panic-rtt-target-0.1.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a142b696629106d871b3da8592296442
diff --git a/metadata/md5-cache/dev-rust/parking_lot-0.11.1 b/metadata/md5-cache/dev-rust/parking_lot-0.11.1
new file mode 100644
index 0000000..09d8e28
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/parking_lot-0.11.1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/instant-0.1.4:= <dev-rust/instant-0.2.0 =dev-rust/lock_api-0.4*:= =dev-rust/parking_lot_core-0.8*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=This library provides implementations of Mutex, RwLock, Condvar and Once that are smaller, faster and more flexible than those in the Rust standard library
+EAPI=7
+HOMEPAGE=https://github.com/Amanieu/parking_lot
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/instant-0.1.4:= <dev-rust/instant-0.2.0 =dev-rust/lock_api-0.4*:= =dev-rust/parking_lot_core-0.8*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.11.1/r0
+SRC_URI=https://crates.io/api/v1/crates/parking_lot/0.11.1/download -> parking_lot-0.11.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0488a84838200f56a312706366d6e333
diff --git a/metadata/md5-cache/dev-rust/parking_lot-0.4.8 b/metadata/md5-cache/dev-rust/parking_lot-0.4.8
index c4f2f05..73acf8f 100644
--- a/metadata/md5-cache/dev-rust/parking_lot-0.4.8
+++ b/metadata/md5-cache/dev-rust/parking_lot-0.4.8
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.8/r0
 SRC_URI=https://crates.io/api/v1/crates/parking_lot/0.4.8/download -> parking_lot-0.4.8.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9e2b57db1ed32e88122130d0eee73cd0
diff --git a/metadata/md5-cache/dev-rust/parking_lot-0.7.1 b/metadata/md5-cache/dev-rust/parking_lot-0.7.1
index 667cb10..2db2ade 100644
--- a/metadata/md5-cache/dev-rust/parking_lot-0.7.1
+++ b/metadata/md5-cache/dev-rust/parking_lot-0.7.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.1/r0
 SRC_URI=https://crates.io/api/v1/crates/parking_lot/0.7.1/download -> parking_lot-0.7.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=47218be234a3aee45b91d8af08284b52
diff --git a/metadata/md5-cache/dev-rust/parking_lot-0.9.0 b/metadata/md5-cache/dev-rust/parking_lot-0.9.0
index 740e1e8..57463a4 100644
--- a/metadata/md5-cache/dev-rust/parking_lot-0.9.0
+++ b/metadata/md5-cache/dev-rust/parking_lot-0.9.0
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.9.0/r0
 SRC_URI=https://crates.io/api/v1/crates/parking_lot/0.9.0/download -> parking_lot-0.9.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=209834b26521f50cff1abf9cd911c0fc
diff --git a/metadata/md5-cache/dev-rust/parking_lot_core-0.2.14 b/metadata/md5-cache/dev-rust/parking_lot_core-0.2.14
index e137c5f..a1d6e8d 100644
--- a/metadata/md5-cache/dev-rust/parking_lot_core-0.2.14
+++ b/metadata/md5-cache/dev-rust/parking_lot_core-0.2.14
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.14/r0
 SRC_URI=https://crates.io/api/v1/crates/parking_lot_core/0.2.14/download -> parking_lot_core-0.2.14.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9cf15821da22079f260243f9df8ecea9
diff --git a/metadata/md5-cache/dev-rust/parking_lot_core-0.4.0 b/metadata/md5-cache/dev-rust/parking_lot_core-0.4.0
index dcaa027..ef7c00a 100644
--- a/metadata/md5-cache/dev-rust/parking_lot_core-0.4.0
+++ b/metadata/md5-cache/dev-rust/parking_lot_core-0.4.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.0/r0
 SRC_URI=https://crates.io/api/v1/crates/parking_lot_core/0.4.0/download -> parking_lot_core-0.4.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=5a631ab0601fac654a40586c64adaa29
diff --git a/metadata/md5-cache/dev-rust/parking_lot_core-0.6.2 b/metadata/md5-cache/dev-rust/parking_lot_core-0.6.2
index ee5978d..6ac173c 100644
--- a/metadata/md5-cache/dev-rust/parking_lot_core-0.6.2
+++ b/metadata/md5-cache/dev-rust/parking_lot_core-0.6.2
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.2/r0
 SRC_URI=https://crates.io/api/v1/crates/parking_lot_core/0.6.2/download -> parking_lot_core-0.6.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=df2b829a358e2205c41c6e7b493d2bd3
diff --git a/metadata/md5-cache/dev-rust/parking_lot_core-0.8.3 b/metadata/md5-cache/dev-rust/parking_lot_core-0.8.3
new file mode 100644
index 0000000..e3bd25e
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/parking_lot_core-0.8.3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/cfg-if-1*:= >=dev-rust/instant-0.1.4:= <dev-rust/instant-2.0.0 >=dev-rust/libc-0.2.71:= <dev-rust/libc-0.3.0 >=dev-rust/smallvec-1.6.1 <dev-rust/smallvec-2.0.0 >=dev-rust/thread-id-3.3.0:= <dev-rust/thread-id-4.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=An advanced API for creating custom synchronization primitives
+EAPI=7
+HOMEPAGE=https://github.com/Amanieu/parking_lot
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/cfg-if-1*:= >=dev-rust/instant-0.1.4:= <dev-rust/instant-2.0.0 >=dev-rust/libc-0.2.71:= <dev-rust/libc-0.3.0 >=dev-rust/smallvec-1.6.1 <dev-rust/smallvec-2.0.0 >=dev-rust/thread-id-3.3.0:= <dev-rust/thread-id-4.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.8.3/r0
+SRC_URI=https://crates.io/api/v1/crates/parking_lot_core/0.8.3/download -> parking_lot_core-0.8.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=41279d6602b7ead16941f549cc05d2f9
diff --git a/metadata/md5-cache/dev-rust/paste-1.0.2 b/metadata/md5-cache/dev-rust/paste-1.0.2
index 7effa5c..28d38b0 100644
--- a/metadata/md5-cache/dev-rust/paste-1.0.2
+++ b/metadata/md5-cache/dev-rust/paste-1.0.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.2/r0
 SRC_URI=https://crates.io/api/v1/crates/paste/1.0.2/download -> paste-1.0.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e37201c6da9b5e2a2c929659789ffb7a
diff --git a/metadata/md5-cache/dev-rust/paw-1.0.0 b/metadata/md5-cache/dev-rust/paw-1.0.0
index b35719b5..8a58c72 100644
--- a/metadata/md5-cache/dev-rust/paw-1.0.0
+++ b/metadata/md5-cache/dev-rust/paw-1.0.0
@@ -8,5 +8,5 @@
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=00f19a425c17ea89833361a9d1c6acef
diff --git a/metadata/md5-cache/dev-rust/peeking_take_while-0.1.2 b/metadata/md5-cache/dev-rust/peeking_take_while-0.1.2
index 08b4143..f0ee2ad 100644
--- a/metadata/md5-cache/dev-rust/peeking_take_while-0.1.2
+++ b/metadata/md5-cache/dev-rust/peeking_take_while-0.1.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.2/r0
 SRC_URI=https://crates.io/api/v1/crates/peeking_take_while/0.1.2/download -> peeking_take_while-0.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=56ab87518e732df7743c23b1c72bda2f
diff --git a/metadata/md5-cache/dev-rust/percent-encoding-1.0.1 b/metadata/md5-cache/dev-rust/percent-encoding-1.0.1
index 1b8fe7f..a4453fa 100644
--- a/metadata/md5-cache/dev-rust/percent-encoding-1.0.1
+++ b/metadata/md5-cache/dev-rust/percent-encoding-1.0.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.1/r0
 SRC_URI=https://crates.io/api/v1/crates/percent-encoding/1.0.1/download -> percent-encoding-1.0.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=214b88bd705c706a0f78ce4e2cf12b8a
diff --git a/metadata/md5-cache/dev-rust/permutohedron-0.2.4 b/metadata/md5-cache/dev-rust/permutohedron-0.2.4
new file mode 100644
index 0000000..019cfa9
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/permutohedron-0.2.4
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Generate permutations of sequences. Either lexicographical order permutations, or a minimal swaps permutation sequence implemented using Heap"s algorithm.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/permutohedron
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.2.4/r0
+SRC_URI=https://crates.io/api/v1/crates/permutohedron/0.2.4/download -> permutohedron-0.2.4.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=135f927593d386f21c2163308803fa75
diff --git a/metadata/md5-cache/dev-rust/petgraph-0.4.13 b/metadata/md5-cache/dev-rust/petgraph-0.4.13
index c607117..1bd7d54 100644
--- a/metadata/md5-cache/dev-rust/petgraph-0.4.13
+++ b/metadata/md5-cache/dev-rust/petgraph-0.4.13
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.13/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/petgraph-0.4.5 b/metadata/md5-cache/dev-rust/petgraph-0.4.5
index 7602f12..27590e0 100644
--- a/metadata/md5-cache/dev-rust/petgraph-0.4.5
+++ b/metadata/md5-cache/dev-rust/petgraph-0.4.5
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.5/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/pin-project-lite-0.2.4 b/metadata/md5-cache/dev-rust/pin-project-lite-0.2.4
index 8d93b1e..3c4e112 100644
--- a/metadata/md5-cache/dev-rust/pin-project-lite-0.2.4
+++ b/metadata/md5-cache/dev-rust/pin-project-lite-0.2.4
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.2.4/r0
 SRC_URI=https://crates.io/api/v1/crates/pin-project-lite/0.2.4/download -> pin-project-lite-0.2.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3ece97e6074d9672eba62326a8a6ba4d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5f7f3e9e79fb48f3224e26f869386efe
diff --git a/metadata/md5-cache/dev-rust/pin-utils-0.1.0 b/metadata/md5-cache/dev-rust/pin-utils-0.1.0
index f03fa41..39a38fa 100644
--- a/metadata/md5-cache/dev-rust/pin-utils-0.1.0
+++ b/metadata/md5-cache/dev-rust/pin-utils-0.1.0
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.0/r0
 SRC_URI=https://crates.io/api/v1/crates/pin-utils/0.1.0/download -> pin-utils-0.1.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=33aa0e5c710f5a66a324b20adf37ff64
diff --git a/metadata/md5-cache/dev-rust/pkg-config-0.3.11-r2 b/metadata/md5-cache/dev-rust/pkg-config-0.3.11-r2
index b20d38d..77021d0 100644
--- a/metadata/md5-cache/dev-rust/pkg-config-0.3.11-r2
+++ b/metadata/md5-cache/dev-rust/pkg-config-0.3.11-r2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.11/r2
 SRC_URI=https://crates.io/api/v1/crates/pkg-config/0.3.11/download -> pkg-config-0.3.11.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2c4f48112c1961eb2089f372e114eae7
diff --git a/metadata/md5-cache/dev-rust/pkg-config-0.3.19 b/metadata/md5-cache/dev-rust/pkg-config-0.3.19
new file mode 100644
index 0000000..ae38a4c
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/pkg-config-0.3.19
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=A library to run the pkg-config system tool at build time in order to be used in Cargo build scripts.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/pkg-config
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.3.19/r0
+SRC_URI=https://crates.io/api/v1/crates/pkg-config/0.3.19/download -> pkg-config-0.3.19.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5c9b39bde730c9ed81308f93b9dac05f
diff --git a/metadata/md5-cache/dev-rust/ppv-lite86-0.2.10 b/metadata/md5-cache/dev-rust/ppv-lite86-0.2.10
index 8186ed1..befe3a4 100644
--- a/metadata/md5-cache/dev-rust/ppv-lite86-0.2.10
+++ b/metadata/md5-cache/dev-rust/ppv-lite86-0.2.10
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.10/r0
 SRC_URI=https://crates.io/api/v1/crates/ppv-lite86/0.2.10/download -> ppv-lite86-0.2.10.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=c3ff0823dd75ffb741035e70b8573286
diff --git a/metadata/md5-cache/dev-rust/proc-macro-crate-0.1.5 b/metadata/md5-cache/dev-rust/proc-macro-crate-0.1.5
index c436b68..dee7d20 100644
--- a/metadata/md5-cache/dev-rust/proc-macro-crate-0.1.5
+++ b/metadata/md5-cache/dev-rust/proc-macro-crate-0.1.5
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.5/r0
 SRC_URI=https://crates.io/api/v1/crates/proc-macro-crate/0.1.5/download -> proc-macro-crate-0.1.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7f24e5c241b5192874591a943def6571
diff --git a/metadata/md5-cache/dev-rust/proc-macro-error-1.0.4 b/metadata/md5-cache/dev-rust/proc-macro-error-1.0.4
index 0588098..2ec0634 100644
--- a/metadata/md5-cache/dev-rust/proc-macro-error-1.0.4
+++ b/metadata/md5-cache/dev-rust/proc-macro-error-1.0.4
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.0.4/r0
 SRC_URI=https://crates.io/api/v1/crates/proc-macro-error/1.0.4/download -> proc-macro-error-1.0.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=354f5de20c6fd2b479c949e4204d4442
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=566e71d86b1d9bb3d85b18542be274ae
diff --git a/metadata/md5-cache/dev-rust/proc-macro-error-attr-1.0.4 b/metadata/md5-cache/dev-rust/proc-macro-error-attr-1.0.4
index 1358e49..137f94c 100644
--- a/metadata/md5-cache/dev-rust/proc-macro-error-attr-1.0.4
+++ b/metadata/md5-cache/dev-rust/proc-macro-error-attr-1.0.4
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.4/r0
 SRC_URI=https://crates.io/api/v1/crates/proc-macro-error-attr/1.0.4/download -> proc-macro-error-attr-1.0.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=02a1d14b5e7668c035aca3e63ad7b53b
diff --git a/metadata/md5-cache/dev-rust/proc-macro-hack-0.5.19 b/metadata/md5-cache/dev-rust/proc-macro-hack-0.5.19
index 4c63219..6a6de77 100644
--- a/metadata/md5-cache/dev-rust/proc-macro-hack-0.5.19
+++ b/metadata/md5-cache/dev-rust/proc-macro-hack-0.5.19
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=!~dev-rust/proc-macro-hack-0.5.11
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.5.19/r0
 SRC_URI=https://crates.io/api/v1/crates/proc-macro-hack/0.5.19/download -> proc-macro-hack-0.5.19.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=001b26e38000fdeb7ad550c9a9b4f513
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fea72203047de61ea395dfce73933e62
diff --git a/metadata/md5-cache/dev-rust/proc-macro-nested-0.1.3 b/metadata/md5-cache/dev-rust/proc-macro-nested-0.1.3
index 1ef7bf3..a18273c 100644
--- a/metadata/md5-cache/dev-rust/proc-macro-nested-0.1.3
+++ b/metadata/md5-cache/dev-rust/proc-macro-nested-0.1.3
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.3/r0
 SRC_URI=https://crates.io/api/v1/crates/proc-macro-nested/0.1.3/download -> proc-macro-nested-0.1.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=38bd84c1b11f7b578f41008d5407c0da
diff --git a/metadata/md5-cache/dev-rust/proc-macro2-0.4.21 b/metadata/md5-cache/dev-rust/proc-macro2-0.4.21
index 59420ce..f284e1f 100644
--- a/metadata/md5-cache/dev-rust/proc-macro2-0.4.21
+++ b/metadata/md5-cache/dev-rust/proc-macro2-0.4.21
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.4.21/r0
 SRC_URI=https://crates.io/api/v1/crates/proc-macro2/0.4.21/download -> proc-macro2-0.4.21.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=e1e3eef5f89119558c2d40f4d98832f0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=b189aa6688fd54119395ae0b996be530
diff --git a/metadata/md5-cache/dev-rust/proc-macro2-1.0.24 b/metadata/md5-cache/dev-rust/proc-macro2-1.0.24
deleted file mode 100644
index bd4a27d..0000000
--- a/metadata/md5-cache/dev-rust/proc-macro2-1.0.24
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/unicode-xid-0.2*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Stable implementation of the upcoming 'proc_macro' API
-EAPI=7
-HOMEPAGE=https://github.com/alexcrichton/proc-macro2
-IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=|| ( MIT Apache-2.0 )
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=1.0.24/r0
-SRC_URI=https://crates.io/api/v1/crates/proc-macro2/1.0.24/download -> proc-macro2-1.0.24.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=704fb69e2d8144d5b616c558f6aad0ec
diff --git a/metadata/md5-cache/dev-rust/proc-macro2-1.0.26 b/metadata/md5-cache/dev-rust/proc-macro2-1.0.26
deleted file mode 100644
index 6d06df0..0000000
--- a/metadata/md5-cache/dev-rust/proc-macro2-1.0.26
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/unicode-xid-0.2*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Stable implementation of the upcoming 'proc_macro' API
-EAPI=7
-HOMEPAGE=https://github.com/alexcrichton/proc-macro2
-IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=|| ( MIT Apache-2.0 )
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=1.0.26/r0
-SRC_URI=https://crates.io/api/v1/crates/proc-macro2/1.0.26/download -> proc-macro2-1.0.26.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b560c73f799e3652ad0a9497f0661b35
diff --git a/metadata/md5-cache/dev-rust/proc-macro2-1.0.26-r1 b/metadata/md5-cache/dev-rust/proc-macro2-1.0.26-r1
deleted file mode 100644
index 7471b04..0000000
--- a/metadata/md5-cache/dev-rust/proc-macro2-1.0.26-r1
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/unicode-xid-0.2*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Stable implementation of the upcoming 'proc_macro' API
-EAPI=7
-HOMEPAGE=https://github.com/alexcrichton/proc-macro2
-IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=|| ( MIT Apache-2.0 )
-RDEPEND==dev-rust/unicode-xid-0.2*:=
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=1.0.26/r1
-SRC_URI=https://crates.io/api/v1/crates/proc-macro2/1.0.26/download -> proc-macro2-1.0.26.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=476274a85dd2cee7f18a3b6dc36bc292
diff --git a/metadata/md5-cache/dev-rust/proc-macro2-1.0.27 b/metadata/md5-cache/dev-rust/proc-macro2-1.0.27
new file mode 100644
index 0000000..6074815
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/proc-macro2-1.0.27
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/unicode-xid-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A substitute implementation of the compiler"s "proc_macro" API to decouple token-based libraries from the procedural macro use case.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/proc-macro2
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/unicode-xid-0.2*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.0.27/r0
+SRC_URI=https://crates.io/api/v1/crates/proc-macro2/1.0.27/download -> proc-macro2-1.0.27.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0acd9754cba3ea588fd4868dca1708f3
diff --git a/metadata/md5-cache/dev-rust/proc-macro2-1.0.29 b/metadata/md5-cache/dev-rust/proc-macro2-1.0.29
new file mode 100644
index 0000000..af62fe2
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/proc-macro2-1.0.29
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/unicode-xid-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A substitute implementation of the compiler"s "proc_macro" API to decouple token-based libraries from the procedural macro use case.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/proc-macro2
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/unicode-xid-0.2*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.0.29/r0
+SRC_URI=https://crates.io/api/v1/crates/proc-macro2/1.0.29/download -> proc-macro2-1.0.29.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0acd9754cba3ea588fd4868dca1708f3
diff --git a/metadata/md5-cache/dev-rust/protobuf-2.16.2 b/metadata/md5-cache/dev-rust/protobuf-2.16.2
index f8b3c47..03b389e 100644
--- a/metadata/md5-cache/dev-rust/protobuf-2.16.2
+++ b/metadata/md5-cache/dev-rust/protobuf-2.16.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.16.2/r0
 SRC_URI=https://crates.io/api/v1/crates/protobuf/2.16.2/download -> protobuf-2.16.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ce36163e820e9be114e6687050cb8a32
diff --git a/metadata/md5-cache/dev-rust/protobuf-2.24.1 b/metadata/md5-cache/dev-rust/protobuf-2.24.1
index 9e5c9e59..38eeab3 100644
--- a/metadata/md5-cache/dev-rust/protobuf-2.24.1
+++ b/metadata/md5-cache/dev-rust/protobuf-2.24.1
@@ -8,7 +8,8 @@
 LICENSE=MIT
 RDEPEND==dev-rust/bytes-0.5*:= =dev-rust/serde-1*:= =dev-rust/serde_derive-1*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=2.24.1/r0
 SRC_URI=https://crates.io/api/v1/crates/protobuf/2.24.1/download -> protobuf-2.24.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=60cd46391fc5fffbf25c14dced378569
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f310bf384bf8aa6d57f80c5020d94881
diff --git a/metadata/md5-cache/dev-rust/protobuf-codegen-2.16.2 b/metadata/md5-cache/dev-rust/protobuf-codegen-2.16.2
index 910506f..05792af 100644
--- a/metadata/md5-cache/dev-rust/protobuf-codegen-2.16.2
+++ b/metadata/md5-cache/dev-rust/protobuf-codegen-2.16.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/2.16.2
 SRC_URI=https://crates.io/api/v1/crates/protobuf-codegen/2.16.2/download -> protobuf-codegen-2.16.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5fc6eb40ddc258c40ba9e9332f6547c7
diff --git a/metadata/md5-cache/dev-rust/protobuf-codegen-2.24.1 b/metadata/md5-cache/dev-rust/protobuf-codegen-2.24.1
index daa8df2..8dd0d38 100644
--- a/metadata/md5-cache/dev-rust/protobuf-codegen-2.24.1
+++ b/metadata/md5-cache/dev-rust/protobuf-codegen-2.24.1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/2.24.1
 SRC_URI=https://crates.io/api/v1/crates/protobuf-codegen/2.24.1/download -> protobuf-codegen-2.24.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=53e04d34ff0791a0c2b3ec00f0632633
diff --git a/metadata/md5-cache/dev-rust/protoc-2.16.2 b/metadata/md5-cache/dev-rust/protoc-2.16.2
index 305ed81..9e91f3c 100644
--- a/metadata/md5-cache/dev-rust/protoc-2.16.2
+++ b/metadata/md5-cache/dev-rust/protoc-2.16.2
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.16.2/r0
 SRC_URI=https://crates.io/api/v1/crates/protoc/2.16.2/download -> protoc-2.16.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=b27e5b44f309365eb4e7e0dfb005eb3c
diff --git a/metadata/md5-cache/dev-rust/protoc-2.24.1 b/metadata/md5-cache/dev-rust/protoc-2.24.1
index fe7dde1..1240c22 100644
--- a/metadata/md5-cache/dev-rust/protoc-2.24.1
+++ b/metadata/md5-cache/dev-rust/protoc-2.24.1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.24.1/r0
 SRC_URI=https://crates.io/api/v1/crates/protoc/2.24.1/download -> protoc-2.24.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ca90c97b33af3f72a7bf29f6ae3daff8
diff --git a/metadata/md5-cache/dev-rust/protoc-rust-2.16.2 b/metadata/md5-cache/dev-rust/protoc-rust-2.16.2
index b0fa2cc..d95eb2d 100644
--- a/metadata/md5-cache/dev-rust/protoc-rust-2.16.2
+++ b/metadata/md5-cache/dev-rust/protoc-rust-2.16.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/2.16.2
 SRC_URI=https://crates.io/api/v1/crates/protoc-rust/2.16.2/download -> protoc-rust-2.16.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=4c473cf8ed09e65216463aa22bad059d
diff --git a/metadata/md5-cache/dev-rust/protoc-rust-2.24.1 b/metadata/md5-cache/dev-rust/protoc-rust-2.24.1
index d8d4fa8..16e616b 100644
--- a/metadata/md5-cache/dev-rust/protoc-rust-2.24.1
+++ b/metadata/md5-cache/dev-rust/protoc-rust-2.24.1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/2.24.1
 SRC_URI=https://crates.io/api/v1/crates/protoc-rust/2.24.1/download -> protoc-rust-2.24.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6e3d8ce688e01032165ee3a7830e6a03
diff --git a/metadata/md5-cache/dev-rust/pulldown-cmark-0.6.1 b/metadata/md5-cache/dev-rust/pulldown-cmark-0.6.1
new file mode 100644
index 0000000..16f5b18
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/pulldown-cmark-0.6.1
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/bitflags-1.2.0:= <dev-rust/bitflags-2.0.0 =dev-rust/getopts-0.2*:= >=dev-rust/memchr-2.2.0:= <dev-rust/memchr-3.0.0 >=dev-rust/unicase-2.5.0:= <dev-rust/unicase-3.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=A pull parser for CommonMark
+EAPI=7
+HOMEPAGE=https://crates.io/crates/pulldown-cmark
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=>=dev-rust/bitflags-1.2.0:= <dev-rust/bitflags-2.0.0 =dev-rust/getopts-0.2*:= >=dev-rust/memchr-2.2.0:= <dev-rust/memchr-3.0.0 >=dev-rust/unicase-2.5.0:= <dev-rust/unicase-3.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.6.1/r0
+SRC_URI=https://crates.io/api/v1/crates/pulldown-cmark/0.6.1/download -> pulldown-cmark-0.6.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=eca7af9914450b6bb15130ed359e35c6
diff --git a/metadata/md5-cache/dev-rust/quick-error-1.2.1 b/metadata/md5-cache/dev-rust/quick-error-1.2.1
index 7396c06..be77999 100644
--- a/metadata/md5-cache/dev-rust/quick-error-1.2.1
+++ b/metadata/md5-cache/dev-rust/quick-error-1.2.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.2.1/r0
 SRC_URI=https://crates.io/api/v1/crates/quick-error/1.2.1/download -> quick-error-1.2.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=54fca8389b6f482052cf4e7ff4951365
diff --git a/metadata/md5-cache/dev-rust/quickcheck-0.4.2 b/metadata/md5-cache/dev-rust/quickcheck-0.4.2
index ae2e6b5a..f4f0a96 100644
--- a/metadata/md5-cache/dev-rust/quickcheck-0.4.2
+++ b/metadata/md5-cache/dev-rust/quickcheck-0.4.2
@@ -7,5 +7,5 @@
 LICENSE=|| ( MIT Unlicense )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.2/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9321147df1848c51f3451667c55cf85d
diff --git a/metadata/md5-cache/dev-rust/quickcheck-0.6.2 b/metadata/md5-cache/dev-rust/quickcheck-0.6.2
index d418804..bcae94a 100644
--- a/metadata/md5-cache/dev-rust/quickcheck-0.6.2
+++ b/metadata/md5-cache/dev-rust/quickcheck-0.6.2
@@ -7,5 +7,5 @@
 LICENSE=|| ( MIT Unlicense )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.2/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7b9619320573e8d34437d07ff1296f9a
diff --git a/metadata/md5-cache/dev-rust/quickcheck-0.7.2 b/metadata/md5-cache/dev-rust/quickcheck-0.7.2
new file mode 100644
index 0000000..f962d84
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/quickcheck-0.7.2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/env_logger-0.5*:= =dev-rust/log-0.4*:= =dev-rust/rand-0.5*:= >=dev-rust/rand_core-0.2.1:= <dev-rust/rand_core-0.3.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Automatic property based testing with shrinking.
+EAPI=7
+HOMEPAGE=https://github.com/BurntSushi/quickcheck
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND==dev-rust/env_logger-0.5*:= =dev-rust/log-0.4*:= =dev-rust/rand-0.5*:= >=dev-rust/rand_core-0.2.1:= <dev-rust/rand_core-0.3.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.7.2/r0
+SRC_URI=https://crates.io/api/v1/crates/quickcheck/0.7.2/download -> quickcheck-0.7.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=33058d39e3e304829819509dc22a35c4
diff --git a/metadata/md5-cache/dev-rust/quickcheck-0.8.2 b/metadata/md5-cache/dev-rust/quickcheck-0.8.2
index d8b063a..bdc668d 100644
--- a/metadata/md5-cache/dev-rust/quickcheck-0.8.2
+++ b/metadata/md5-cache/dev-rust/quickcheck-0.8.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.2/r0
 SRC_URI=https://crates.io/api/v1/crates/quickcheck/0.8.2/download -> quickcheck-0.8.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fcb8c4008a193740ee8e6f7311bf60cc
diff --git a/metadata/md5-cache/dev-rust/quickcheck-1.0.0 b/metadata/md5-cache/dev-rust/quickcheck-1.0.0
new file mode 100644
index 0000000..ecea522e
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/quickcheck-1.0.0
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.0.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/quote-0.6.10 b/metadata/md5-cache/dev-rust/quote-0.6.10
index 460f0cd..693b47b 100644
--- a/metadata/md5-cache/dev-rust/quote-0.6.10
+++ b/metadata/md5-cache/dev-rust/quote-0.6.10
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.10/r0
 SRC_URI=https://crates.io/api/v1/crates/quote/0.6.10/download -> quote-0.6.10.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3dee3a77039946501509f7f7a124b0c7
diff --git a/metadata/md5-cache/dev-rust/quote-1.0.9 b/metadata/md5-cache/dev-rust/quote-1.0.9
index cd023e8..07d0c59 100644
--- a/metadata/md5-cache/dev-rust/quote-1.0.9
+++ b/metadata/md5-cache/dev-rust/quote-1.0.9
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=>=dev-rust/proc-macro2-1.0.20:= <dev-rust/proc-macro2-2.0.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.0.9/r0
 SRC_URI=https://crates.io/api/v1/crates/quote/1.0.9/download -> quote-1.0.9.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3e2af1f029e3a26afa5a99b953f81208
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=88fadedd2c537568cea48b75e22b7eb1
diff --git a/metadata/md5-cache/dev-rust/r0-0.2.2 b/metadata/md5-cache/dev-rust/r0-0.2.2
new file mode 100644
index 0000000..a6ea82b
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/r0-0.2.2
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Initialization code ("crt0") written in Rust
+EAPI=7
+HOMEPAGE=https://crates.io/crates/r0
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.2.2/r0
+SRC_URI=https://crates.io/api/v1/crates/r0/0.2.2/download -> r0-0.2.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8f446fee392bc09bce6bed12b69afe88
diff --git a/metadata/md5-cache/dev-rust/rand-0.3.20 b/metadata/md5-cache/dev-rust/rand-0.3.20
index 462524f..2e3d314 100644
--- a/metadata/md5-cache/dev-rust/rand-0.3.20
+++ b/metadata/md5-cache/dev-rust/rand-0.3.20
@@ -7,5 +7,5 @@
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.20/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6a6f95690def37edad390c266623a6bc
diff --git a/metadata/md5-cache/dev-rust/rand-0.4.2 b/metadata/md5-cache/dev-rust/rand-0.4.2
index 110b717..68a1f2c 100644
--- a/metadata/md5-cache/dev-rust/rand-0.4.2
+++ b/metadata/md5-cache/dev-rust/rand-0.4.2
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.2/r0
 SRC_URI=https://crates.io/api/v1/crates/rand/0.4.2/download -> rand-0.4.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fce99cd237ab9d166555a20fad667a36
diff --git a/metadata/md5-cache/dev-rust/rand-0.4.2-r1 b/metadata/md5-cache/dev-rust/rand-0.4.2-r1
index 93ec615..b985dcc 100644
--- a/metadata/md5-cache/dev-rust/rand-0.4.2-r1
+++ b/metadata/md5-cache/dev-rust/rand-0.4.2-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.2/r1
 SRC_URI=https://crates.io/api/v1/crates/rand/0.4.2/download -> rand-0.4.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fce99cd237ab9d166555a20fad667a36
diff --git a/metadata/md5-cache/dev-rust/rand-0.5.6 b/metadata/md5-cache/dev-rust/rand-0.5.6
index e66584d..0d05301 100644
--- a/metadata/md5-cache/dev-rust/rand-0.5.6
+++ b/metadata/md5-cache/dev-rust/rand-0.5.6
@@ -1,11 +1,15 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=virtual/rust-1.39.0:=
-DESCRIPTION=Empty rand crate
-EAPI=6
+DEPEND==dev-rust/log-0.4*:= =dev-rust/rand_core_transitional-0.3*:= =dev-rust/serde-1*:= =dev-rust/serde_derive-1*:= =dev-rust/libc-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Random number generators and other randomness functionality.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/rand
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/log-0.4*:= =dev-rust/rand_core_transitional-0.3*:= =dev-rust/serde-1*:= =dev-rust/serde_derive-1*:= =dev-rust/libc-0.2*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.5.6/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=a24171f2ba7b7f5d00b155293ff5debe
+SRC_URI=https://crates.io/api/v1/crates/rand/0.5.6/download -> rand-0.5.6.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b89f7c468512195f41b92c5a2c7626be
diff --git a/metadata/md5-cache/dev-rust/rand-0.5.6-r1 b/metadata/md5-cache/dev-rust/rand-0.5.6-r1
new file mode 100644
index 0000000..36f0498
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/rand-0.5.6-r1
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/log-0.4*:= =dev-rust/rand_core_transitional-0.3*:= =dev-rust/serde-1*:= =dev-rust/serde_derive-1*:= =dev-rust/libc-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Random number generators and other randomness functionality.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/rand
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/log-0.4*:= =dev-rust/rand_core_transitional-0.3*:= =dev-rust/serde-1*:= =dev-rust/serde_derive-1*:= =dev-rust/libc-0.2*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.5.6/r1
+SRC_URI=https://crates.io/api/v1/crates/rand/0.5.6/download -> rand-0.5.6.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b89f7c468512195f41b92c5a2c7626be
diff --git a/metadata/md5-cache/dev-rust/rand-0.6.5 b/metadata/md5-cache/dev-rust/rand-0.6.5
index b1f944c..0361225 100644
--- a/metadata/md5-cache/dev-rust/rand-0.6.5
+++ b/metadata/md5-cache/dev-rust/rand-0.6.5
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND==dev-rust/autocfg-0.1*:= >=dev-rust/average-0.9.2:= =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= ~dev-rust/rand_chacha-0.1.1:= ~dev-rust/rand_core-0.4.0:= ~dev-rust/rand_hc-0.1.0:= ~dev-rust/rand_isaac-0.1.1:= ~dev-rust/rand_jitter-0.1.3:= ~dev-rust/rand_pcg-0.1.2:= ~dev-rust/rand_xorshift-0.1.1:= ~dev-rust/rand_xoshiro-0.1.0:= =dev-rust/rand_os-0.1*:= =dev-rust/winapi-0.3*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.6.5/r0
 SRC_URI=https://crates.io/api/v1/crates/rand/0.6.5/download -> rand-0.6.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9aaa4f9f88697c0f721d2dfdcfe709be
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=71625fe2bb1e7e3800d2fcc8717fe078
diff --git a/metadata/md5-cache/dev-rust/rand-0.6.5-r1 b/metadata/md5-cache/dev-rust/rand-0.6.5-r1
index c98b992..7a2828a 100644
--- a/metadata/md5-cache/dev-rust/rand-0.6.5-r1
+++ b/metadata/md5-cache/dev-rust/rand-0.6.5-r1
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND==dev-rust/autocfg-0.1*:= >=dev-rust/average-0.9.2:= =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= ~dev-rust/rand_chacha-0.1.1:= ~dev-rust/rand_core-0.4.0:= ~dev-rust/rand_hc-0.1.0:= ~dev-rust/rand_isaac-0.1.1:= ~dev-rust/rand_jitter-0.1.3:= ~dev-rust/rand_pcg-0.1.2:= ~dev-rust/rand_xorshift-0.1.1:= ~dev-rust/rand_xoshiro-0.1.0:= =dev-rust/rand_os-0.1*:= =dev-rust/winapi-0.3*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.6.5/r1
 SRC_URI=https://crates.io/api/v1/crates/rand/0.6.5/download -> rand-0.6.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9aaa4f9f88697c0f721d2dfdcfe709be
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=71625fe2bb1e7e3800d2fcc8717fe078
diff --git a/metadata/md5-cache/dev-rust/rand-0.6.5-r2 b/metadata/md5-cache/dev-rust/rand-0.6.5-r2
index e0bbc53..72b5b2c 100644
--- a/metadata/md5-cache/dev-rust/rand-0.6.5-r2
+++ b/metadata/md5-cache/dev-rust/rand-0.6.5-r2
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND==dev-rust/autocfg-0.1*:= >=dev-rust/average-0.9.2:= =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= ~dev-rust/rand_chacha-0.1.1:= ~dev-rust/rand_core-0.4.0:= ~dev-rust/rand_hc-0.1.0:= ~dev-rust/rand_isaac-0.1.1:= ~dev-rust/rand_jitter-0.1.3:= ~dev-rust/rand_pcg-0.1.2:= ~dev-rust/rand_xorshift-0.1.1:= ~dev-rust/rand_xoshiro-0.1.0:= =dev-rust/rand_os-0.1*:= =dev-rust/winapi-0.3*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.6.5/r2
 SRC_URI=https://crates.io/api/v1/crates/rand/0.6.5/download -> rand-0.6.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9aaa4f9f88697c0f721d2dfdcfe709be
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=71625fe2bb1e7e3800d2fcc8717fe078
diff --git a/metadata/md5-cache/dev-rust/rand-0.7.3 b/metadata/md5-cache/dev-rust/rand-0.7.3
index 4eb54b9..c8781c8 100644
--- a/metadata/md5-cache/dev-rust/rand-0.7.3
+++ b/metadata/md5-cache/dev-rust/rand-0.7.3
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.3/r0
 SRC_URI=https://crates.io/api/v1/crates/rand/0.7.3/download -> rand-0.7.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e605486eada344a4a2ada1d4c4341f94
diff --git a/metadata/md5-cache/dev-rust/rand-0.7.3-r1 b/metadata/md5-cache/dev-rust/rand-0.7.3-r1
index 71506dd..092c2d2 100644
--- a/metadata/md5-cache/dev-rust/rand-0.7.3-r1
+++ b/metadata/md5-cache/dev-rust/rand-0.7.3-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.3/r1
 SRC_URI=https://crates.io/api/v1/crates/rand/0.7.3/download -> rand-0.7.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e605486eada344a4a2ada1d4c4341f94
diff --git a/metadata/md5-cache/dev-rust/rand-0.7.3-r2 b/metadata/md5-cache/dev-rust/rand-0.7.3-r2
index 2abdc1e..62cd92a 100644
--- a/metadata/md5-cache/dev-rust/rand-0.7.3-r2
+++ b/metadata/md5-cache/dev-rust/rand-0.7.3-r2
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.3/r2
 SRC_URI=https://crates.io/api/v1/crates/rand/0.7.3/download -> rand-0.7.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e605486eada344a4a2ada1d4c4341f94
diff --git a/metadata/md5-cache/dev-rust/rand-0.8.0 b/metadata/md5-cache/dev-rust/rand-0.8.0
new file mode 100644
index 0000000..25d7146
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/rand-0.8.0
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.8.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/rand-0.8.4 b/metadata/md5-cache/dev-rust/rand-0.8.4
new file mode 100644
index 0000000..6c4bfb4
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/rand-0.8.4
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/log-0.4.4:= <dev-rust/log-0.5.0_alpha =dev-rust/rand_core-0.6*:= >=dev-rust/serde-1.0.103:= <dev-rust/serde-2.0.0_alpha =dev-rust/rand_chacha-0.3*:= =dev-rust/rand_hc-0.3*:= >=dev-rust/libc-0.2.22:= <dev-rust/libc-0.3.0_alpha >=virtual/rust-1.39.0:=
+DESCRIPTION=Random number generators and other randomness functionality.
+EAPI=7
+HOMEPAGE=https://rust-random.github.io/book
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/log-0.4.4:= <dev-rust/log-0.5.0_alpha =dev-rust/rand_core-0.6*:= >=dev-rust/serde-1.0.103:= <dev-rust/serde-2.0.0_alpha =dev-rust/rand_chacha-0.3*:= =dev-rust/rand_hc-0.3*:= >=dev-rust/libc-0.2.22:= <dev-rust/libc-0.3.0_alpha
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.8.4/r0
+SRC_URI=https://crates.io/api/v1/crates/rand/0.8.4/download -> rand-0.8.4.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7650d90110ae1dd16dae673ae927c106
diff --git a/metadata/md5-cache/dev-rust/rand_chacha-0.1.1 b/metadata/md5-cache/dev-rust/rand_chacha-0.1.1
index b36a514..207739d 100644
--- a/metadata/md5-cache/dev-rust/rand_chacha-0.1.1
+++ b/metadata/md5-cache/dev-rust/rand_chacha-0.1.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/rand_chacha/0.1.1/download -> rand_chacha-0.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=bedc1ae8bf2a571b687cb8ce7da4275a
diff --git a/metadata/md5-cache/dev-rust/rand_chacha-0.2.2 b/metadata/md5-cache/dev-rust/rand_chacha-0.2.2
index 2ac23c48..e34b58f 100644
--- a/metadata/md5-cache/dev-rust/rand_chacha-0.2.2
+++ b/metadata/md5-cache/dev-rust/rand_chacha-0.2.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.2/r0
 SRC_URI=https://crates.io/api/v1/crates/rand_chacha/0.2.2/download -> rand_chacha-0.2.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=531ff563b5726f0a3605d28b9a72d6f6
diff --git a/metadata/md5-cache/dev-rust/rand_chacha-0.3.1 b/metadata/md5-cache/dev-rust/rand_chacha-0.3.1
new file mode 100644
index 0000000..786b01c
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/rand_chacha-0.3.1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/ppv-lite86-0.2.8:= <dev-rust/ppv-lite86-0.3.0_alpha =dev-rust/rand_core-0.6*:= =dev-rust/serde-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=ChaCha random number generator
+EAPI=7
+HOMEPAGE=https://rust-random.github.io/book
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/ppv-lite86-0.2.8:= <dev-rust/ppv-lite86-0.3.0_alpha =dev-rust/rand_core-0.6*:= =dev-rust/serde-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.3.1/r0
+SRC_URI=https://crates.io/api/v1/crates/rand_chacha/0.3.1/download -> rand_chacha-0.3.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=77e9081c30009288a3db1b849801a05c
diff --git a/metadata/md5-cache/dev-rust/rand_core-0.2.2 b/metadata/md5-cache/dev-rust/rand_core-0.2.2
new file mode 100644
index 0000000..ad002c1
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/rand_core-0.2.2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/rand_core_transitional-0.3*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Core random number generator traits and tools for implementation.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/rand_core
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/rand_core_transitional-0.3*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.2.2/r0
+SRC_URI=https://crates.io/api/v1/crates/rand_core/0.2.2/download -> rand_core-0.2.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7c66a730305ae139b24db260957df157
diff --git a/metadata/md5-cache/dev-rust/rand_core-0.4.0 b/metadata/md5-cache/dev-rust/rand_core-0.4.0
index 1b25c63..667f431 100644
--- a/metadata/md5-cache/dev-rust/rand_core-0.4.0
+++ b/metadata/md5-cache/dev-rust/rand_core-0.4.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.0/r0
 SRC_URI=https://crates.io/api/v1/crates/rand_core/0.4.0/download -> rand_core-0.4.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0d1dc3cc5fd407c81ad13bad51f9c592
diff --git a/metadata/md5-cache/dev-rust/rand_core-0.5.1 b/metadata/md5-cache/dev-rust/rand_core-0.5.1
index 22ea914..d29323d 100644
--- a/metadata/md5-cache/dev-rust/rand_core-0.5.1
+++ b/metadata/md5-cache/dev-rust/rand_core-0.5.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.5.1/r0
 SRC_URI=https://crates.io/api/v1/crates/rand_core/0.5.1/download -> rand_core-0.5.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=4ce9b4ed8a541854fa7118c08cb9d2b9
diff --git a/metadata/md5-cache/dev-rust/rand_core-0.6.3 b/metadata/md5-cache/dev-rust/rand_core-0.6.3
new file mode 100644
index 0000000..02a077c
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/rand_core-0.6.3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/getrandom-0.2*:= =dev-rust/serde-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Core random number generator traits and tools for implementation.
+EAPI=7
+HOMEPAGE=https://rust-random.github.io/book
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/getrandom-0.2*:= =dev-rust/serde-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.6.3/r0
+SRC_URI=https://crates.io/api/v1/crates/rand_core/0.6.3/download -> rand_core-0.6.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b437e49fb48f23c9876422541f87f577
diff --git a/metadata/md5-cache/dev-rust/rand_core_transitional-0.3.1 b/metadata/md5-cache/dev-rust/rand_core_transitional-0.3.1
index 8212468..0ab5ad7 100644
--- a/metadata/md5-cache/dev-rust/rand_core_transitional-0.3.1
+++ b/metadata/md5-cache/dev-rust/rand_core_transitional-0.3.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.1/r0
 SRC_URI=https://crates.io/api/v1/crates/rand_core/0.3.1/download -> rand_core-0.3.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=608df72417a3485ccfe32e7f0b97ecb0
diff --git a/metadata/md5-cache/dev-rust/rand_core_transitional-0.3.1-r1 b/metadata/md5-cache/dev-rust/rand_core_transitional-0.3.1-r1
index ba62602..3484f24 100644
--- a/metadata/md5-cache/dev-rust/rand_core_transitional-0.3.1-r1
+++ b/metadata/md5-cache/dev-rust/rand_core_transitional-0.3.1-r1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.1/r1
 SRC_URI=https://crates.io/api/v1/crates/rand_core/0.3.1/download -> rand_core-0.3.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=608df72417a3485ccfe32e7f0b97ecb0
diff --git a/metadata/md5-cache/dev-rust/rand_hc-0.1.0 b/metadata/md5-cache/dev-rust/rand_hc-0.1.0
index caca30b..99b15bf 100644
--- a/metadata/md5-cache/dev-rust/rand_hc-0.1.0
+++ b/metadata/md5-cache/dev-rust/rand_hc-0.1.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.0/r0
 SRC_URI=https://crates.io/api/v1/crates/rand_hc/0.1.0/download -> rand_hc-0.1.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=445343c963d07c7c2f34c07c00d9b188
diff --git a/metadata/md5-cache/dev-rust/rand_hc-0.2.0 b/metadata/md5-cache/dev-rust/rand_hc-0.2.0
index f8843f3..3cdb993 100644
--- a/metadata/md5-cache/dev-rust/rand_hc-0.2.0
+++ b/metadata/md5-cache/dev-rust/rand_hc-0.2.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.0/r0
 SRC_URI=https://crates.io/api/v1/crates/rand_hc/0.2.0/download -> rand_hc-0.2.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5fc711e158f795effb6e379359bdfb2b
diff --git a/metadata/md5-cache/dev-rust/rand_hc-0.3.1 b/metadata/md5-cache/dev-rust/rand_hc-0.3.1
new file mode 100644
index 0000000..e9ef4e7
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/rand_hc-0.3.1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/rand_core-0.6*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=HC128 random number generator
+EAPI=7
+HOMEPAGE=https://rust-random.github.io/book
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/rand_core-0.6*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.3.1/r0
+SRC_URI=https://crates.io/api/v1/crates/rand_hc/0.3.1/download -> rand_hc-0.3.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f061dde7920faf1492f0ed157543dec9
diff --git a/metadata/md5-cache/dev-rust/rand_isaac-0.1.1 b/metadata/md5-cache/dev-rust/rand_isaac-0.1.1
index 7b868ec..b6435eb 100644
--- a/metadata/md5-cache/dev-rust/rand_isaac-0.1.1
+++ b/metadata/md5-cache/dev-rust/rand_isaac-0.1.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/rand_isaac/0.1.1/download -> rand_isaac-0.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=093a09612bf284bf5b8bb8f6be3c3696
diff --git a/metadata/md5-cache/dev-rust/rand_isaac-0.1.1-r1 b/metadata/md5-cache/dev-rust/rand_isaac-0.1.1-r1
index 6ba2bec..f30a302 100644
--- a/metadata/md5-cache/dev-rust/rand_isaac-0.1.1-r1
+++ b/metadata/md5-cache/dev-rust/rand_isaac-0.1.1-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r1
 SRC_URI=https://crates.io/api/v1/crates/rand_isaac/0.1.1/download -> rand_isaac-0.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=678820eda433021b0271f29a1128dba0
diff --git a/metadata/md5-cache/dev-rust/rand_jitter-0.1.3 b/metadata/md5-cache/dev-rust/rand_jitter-0.1.3
index 44804fe..e3e5b5c 100644
--- a/metadata/md5-cache/dev-rust/rand_jitter-0.1.3
+++ b/metadata/md5-cache/dev-rust/rand_jitter-0.1.3
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.3/r0
 SRC_URI=https://crates.io/api/v1/crates/rand_jitter/0.1.3/download -> rand_jitter-0.1.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ce68820b363498bca458bd9400f437bb
diff --git a/metadata/md5-cache/dev-rust/rand_os-0.1.2 b/metadata/md5-cache/dev-rust/rand_os-0.1.2
index 3a364f8..b3961f6 100644
--- a/metadata/md5-cache/dev-rust/rand_os-0.1.2
+++ b/metadata/md5-cache/dev-rust/rand_os-0.1.2
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.2/r0
 SRC_URI=https://crates.io/api/v1/crates/rand_os/0.1.2/download -> rand_os-0.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=62f559aeab845dc6fb6a92a5dc2fa09f
diff --git a/metadata/md5-cache/dev-rust/rand_os-0.1.2-r1 b/metadata/md5-cache/dev-rust/rand_os-0.1.2-r1
index 3c81861..912be340 100644
--- a/metadata/md5-cache/dev-rust/rand_os-0.1.2-r1
+++ b/metadata/md5-cache/dev-rust/rand_os-0.1.2-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.2/r1
 SRC_URI=https://crates.io/api/v1/crates/rand_os/0.1.2/download -> rand_os-0.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=62f559aeab845dc6fb6a92a5dc2fa09f
diff --git a/metadata/md5-cache/dev-rust/rand_pcg-0.1.2 b/metadata/md5-cache/dev-rust/rand_pcg-0.1.2
index e2627ec..f2b76bb 100644
--- a/metadata/md5-cache/dev-rust/rand_pcg-0.1.2
+++ b/metadata/md5-cache/dev-rust/rand_pcg-0.1.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.2/r0
 SRC_URI=https://crates.io/api/v1/crates/rand_pcg/0.1.2/download -> rand_pcg-0.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=741ae9e40e3e67ac6ae54a52faa1e567
diff --git a/metadata/md5-cache/dev-rust/rand_pcg-0.1.2-r1 b/metadata/md5-cache/dev-rust/rand_pcg-0.1.2-r1
index 15fa27e..997d2703 100644
--- a/metadata/md5-cache/dev-rust/rand_pcg-0.1.2-r1
+++ b/metadata/md5-cache/dev-rust/rand_pcg-0.1.2-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.2/r1
 SRC_URI=https://crates.io/api/v1/crates/rand_pcg/0.1.2/download -> rand_pcg-0.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3775f677f908feaa2ae5c63757afd590
diff --git a/metadata/md5-cache/dev-rust/rand_pcg-0.2.1 b/metadata/md5-cache/dev-rust/rand_pcg-0.2.1
index c488889..0dfbc61 100644
--- a/metadata/md5-cache/dev-rust/rand_pcg-0.2.1
+++ b/metadata/md5-cache/dev-rust/rand_pcg-0.2.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.1/r0
 SRC_URI=https://crates.io/api/v1/crates/rand_pcg/0.2.1/download -> rand_pcg-0.2.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9997aefcce9bba3584e86a7f723bb464
diff --git a/metadata/md5-cache/dev-rust/rand_xorshift-0.1.1 b/metadata/md5-cache/dev-rust/rand_xorshift-0.1.1
index c16138b..fac4321 100644
--- a/metadata/md5-cache/dev-rust/rand_xorshift-0.1.1
+++ b/metadata/md5-cache/dev-rust/rand_xorshift-0.1.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/rand_xorshift/0.1.1/download -> rand_xorshift-0.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6aa5b793b5ed8f029899caf1679d6774
diff --git a/metadata/md5-cache/dev-rust/rand_xorshift-0.1.1-r1 b/metadata/md5-cache/dev-rust/rand_xorshift-0.1.1-r1
index 6f50c77..0a68f5a 100644
--- a/metadata/md5-cache/dev-rust/rand_xorshift-0.1.1-r1
+++ b/metadata/md5-cache/dev-rust/rand_xorshift-0.1.1-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r1
 SRC_URI=https://crates.io/api/v1/crates/rand_xorshift/0.1.1/download -> rand_xorshift-0.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6829df83685f3e8e2f3c3d760e015033
diff --git a/metadata/md5-cache/dev-rust/rand_xoshiro-0.1.0 b/metadata/md5-cache/dev-rust/rand_xoshiro-0.1.0
index acdd210..53676d6 100644
--- a/metadata/md5-cache/dev-rust/rand_xoshiro-0.1.0
+++ b/metadata/md5-cache/dev-rust/rand_xoshiro-0.1.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/rayon-1.0.2 b/metadata/md5-cache/dev-rust/rayon-1.0.2
index 5661f96..5d0e343 100644
--- a/metadata/md5-cache/dev-rust/rayon-1.0.2
+++ b/metadata/md5-cache/dev-rust/rayon-1.0.2
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.2/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b459f025504105b3b301bb8096b60267
diff --git a/metadata/md5-cache/dev-rust/rayon-1.5.0 b/metadata/md5-cache/dev-rust/rayon-1.5.0
index 17acf28..7779de2 100644
--- a/metadata/md5-cache/dev-rust/rayon-1.5.0
+++ b/metadata/md5-cache/dev-rust/rayon-1.5.0
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.5.0/r0
 SRC_URI=https://crates.io/api/v1/crates/rayon/1.5.0/download -> rayon-1.5.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a490c8003b4370aac8a3add68473e849
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3cbe104c4182d93b5defc3be5b9ce27f
diff --git a/metadata/md5-cache/dev-rust/rayon-core-1.9.0 b/metadata/md5-cache/dev-rust/rayon-core-1.9.0
index 3238b68..249aa044 100644
--- a/metadata/md5-cache/dev-rust/rayon-core-1.9.0
+++ b/metadata/md5-cache/dev-rust/rayon-core-1.9.0
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.9.0/r0
 SRC_URI=https://crates.io/api/v1/crates/rayon-core/1.9.0/download -> rayon-core-1.9.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=191ab4a2eeda57734ad193c4cd3f440e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c534cce1d0c77e0bb681bce0ed63c33f
diff --git a/metadata/md5-cache/dev-rust/rdrand-0.4.0 b/metadata/md5-cache/dev-rust/rdrand-0.4.0
index 85677e0..55c5a87 100644
--- a/metadata/md5-cache/dev-rust/rdrand-0.4.0
+++ b/metadata/md5-cache/dev-rust/rdrand-0.4.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.0/r0
 SRC_URI=https://crates.io/api/v1/crates/rdrand/0.4.0/download -> rdrand-0.4.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=596a14765589310a4b813e4fd934a7aa
diff --git a/metadata/md5-cache/dev-rust/redox_syscall-0.1.51 b/metadata/md5-cache/dev-rust/redox_syscall-0.1.51
index dbb10f2..bdf785d 100644
--- a/metadata/md5-cache/dev-rust/redox_syscall-0.1.51
+++ b/metadata/md5-cache/dev-rust/redox_syscall-0.1.51
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.51/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/redox_termios-0.1.1 b/metadata/md5-cache/dev-rust/redox_termios-0.1.1
index 6963ed3..670c22d 100644
--- a/metadata/md5-cache/dev-rust/redox_termios-0.1.1
+++ b/metadata/md5-cache/dev-rust/redox_termios-0.1.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/regex-1.0.6 b/metadata/md5-cache/dev-rust/regex-1.0.6
index 5bcdc26..f32fc1d 100644
--- a/metadata/md5-cache/dev-rust/regex-1.0.6
+++ b/metadata/md5-cache/dev-rust/regex-1.0.6
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.6/r0
 SRC_URI=https://crates.io/api/v1/crates/regex/1.0.6/download -> regex-1.0.6.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=79eb34fef05b53b09b5b0e74428d2db5
diff --git a/metadata/md5-cache/dev-rust/regex-1.5.3 b/metadata/md5-cache/dev-rust/regex-1.5.3
index 2ef9240..9957e95 100644
--- a/metadata/md5-cache/dev-rust/regex-1.5.3
+++ b/metadata/md5-cache/dev-rust/regex-1.5.3
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=>=dev-rust/aho-corasick-0.7.18:= <dev-rust/aho-corasick-0.8.0 >=dev-rust/memchr-2.4.0:= <dev-rust/memchr-3.0.0 >=dev-rust/regex-syntax-0.6.25:= <dev-rust/regex-syntax-0.7.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.5.3/r0
 SRC_URI=https://crates.io/api/v1/crates/regex/1.5.3/download -> regex-1.5.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4e4383925fc57978c380fd8725a44ab0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=52845057a107e5faba44e850fd7ea51e
diff --git a/metadata/md5-cache/dev-rust/regex-syntax-0.6.25 b/metadata/md5-cache/dev-rust/regex-syntax-0.6.25
index 49d640a..b7ee30b 100644
--- a/metadata/md5-cache/dev-rust/regex-syntax-0.6.25
+++ b/metadata/md5-cache/dev-rust/regex-syntax-0.6.25
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.25/r0
 SRC_URI=https://crates.io/api/v1/crates/regex-syntax/0.6.25/download -> regex-syntax-0.6.25.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9bd7ecd6e702e4ed08cbddc1603441ce
diff --git a/metadata/md5-cache/dev-rust/remain-0.2.1 b/metadata/md5-cache/dev-rust/remain-0.2.1
index f8d2517..5311cfb 100644
--- a/metadata/md5-cache/dev-rust/remain-0.2.1
+++ b/metadata/md5-cache/dev-rust/remain-0.2.1
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.2.1/r0
 SRC_URI=https://crates.io/api/v1/crates/remain/0.2.1/download -> remain-0.2.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=822acba8f91b6e73aebe2601d7660332
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=c48d54c0903b3e8faa3aacf8a39097d4
diff --git a/metadata/md5-cache/dev-rust/remove_dir_all-0.5.1 b/metadata/md5-cache/dev-rust/remove_dir_all-0.5.1
index a108bcd..79a5547 100644
--- a/metadata/md5-cache/dev-rust/remove_dir_all-0.5.1
+++ b/metadata/md5-cache/dev-rust/remove_dir_all-0.5.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.5.1/r0
 SRC_URI=https://crates.io/api/v1/crates/remove_dir_all/0.5.1/download -> remove_dir_all-0.5.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=5a7ee2e402e412a3dbaac0f31dfe3dfa
diff --git a/metadata/md5-cache/dev-rust/ring-0.14.6 b/metadata/md5-cache/dev-rust/ring-0.14.6
index ab8fc79..c60d0eb 100644
--- a/metadata/md5-cache/dev-rust/ring-0.14.6
+++ b/metadata/md5-cache/dev-rust/ring-0.14.6
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.14.6/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/riscv-0.6.0 b/metadata/md5-cache/dev-rust/riscv-0.6.0
new file mode 100644
index 0000000..3ac66c5
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/riscv-0.6.0
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty riscv crate
+EAPI=6
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.6.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=2e3627e92a9d99c1142243e56e94abb3
diff --git a/metadata/md5-cache/dev-rust/ron-0.5.1 b/metadata/md5-cache/dev-rust/ron-0.5.1
new file mode 100644
index 0000000..9ea0c12
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/ron-0.5.1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/base64-0.10*:= =dev-rust/bitflags-1*:= =dev-rust/serde-1*:= test? ( =dev-rust/serde_bytes-0.10*:= =dev-rust/serde_json-1*:= ) >=virtual/rust-1.39.0:=
+DESCRIPTION=Rusty Object Notation
+EAPI=7
+HOMEPAGE=https://github.com/ron-rs/ron
+IUSE=test cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/base64-0.10*:= =dev-rust/bitflags-1*:= =dev-rust/serde-1*:= test? ( =dev-rust/serde_bytes-0.10*:= =dev-rust/serde_json-1*:= )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.5.1/r0
+SRC_URI=https://crates.io/api/v1/crates/ron/0.5.1/download -> ron-0.5.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e6debf71da7049c5f6ac068d8d61abdd
diff --git a/metadata/md5-cache/dev-rust/roxmltree-0.13.1 b/metadata/md5-cache/dev-rust/roxmltree-0.13.1
index 67c2a9a..e8edc97 100644
--- a/metadata/md5-cache/dev-rust/roxmltree-0.13.1
+++ b/metadata/md5-cache/dev-rust/roxmltree-0.13.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.13.1/r0
 SRC_URI=https://crates.io/api/v1/crates/roxmltree/0.13.1/download -> roxmltree-0.13.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=36ada93a2efbe1eca1b4de49b38228cb
diff --git a/metadata/md5-cache/dev-rust/rtic-core-0.3.1 b/metadata/md5-cache/dev-rust/rtic-core-0.3.1
new file mode 100644
index 0000000..4232d53
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/rtic-core-0.3.1
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Core abstractions of the Real-Time Interrupt-driven Concurrency framework
+EAPI=7
+HOMEPAGE=https://crates.io/crates/rtic-core
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.3.1/r0
+SRC_URI=https://crates.io/api/v1/crates/rtic-core/0.3.1/download -> rtic-core-0.3.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4431cb07407bc0c97849cc1a9c2c37e9
diff --git a/metadata/md5-cache/dev-rust/rtic-syntax-0.4.0 b/metadata/md5-cache/dev-rust/rtic-syntax-0.4.0
new file mode 100644
index 0000000..cdc9b28
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/rtic-syntax-0.4.0
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/indexmap-1.0.2:= <dev-rust/indexmap-2.0.0 =dev-rust/proc-macro2-1*:= =dev-rust/syn-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=The Real-Time Interrupt-driven Concurrency (RTIC) meta language
+EAPI=7
+HOMEPAGE=https://crates.io/crates/rtic-syntax
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/indexmap-1.0.2:= <dev-rust/indexmap-2.0.0 =dev-rust/proc-macro2-1*:= =dev-rust/syn-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.4.0/r0
+SRC_URI=https://crates.io/api/v1/crates/rtic-syntax/0.4.0/download -> rtic-syntax-0.4.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e31d295edcff36481ecf90e547480e15
diff --git a/metadata/md5-cache/dev-rust/rtt-target-0.3.1 b/metadata/md5-cache/dev-rust/rtt-target-0.3.1
new file mode 100644
index 0000000..0d5a931
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/rtt-target-0.3.1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/cortex-m-0.7.1 <dev-rust/cortex-m-0.8.0_alpha:= =dev-rust/riscv-0.6*:= =dev-rust/ufmt-write-0.1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Target side implementation of the RTT (Real-Time Transfer) I/O protocol
+EAPI=7
+HOMEPAGE=https://crates.io/crates/rtt-target
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=>=dev-rust/cortex-m-0.7.1 <dev-rust/cortex-m-0.8.0_alpha:= =dev-rust/riscv-0.6*:= =dev-rust/ufmt-write-0.1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.3.1/r0
+SRC_URI=https://crates.io/api/v1/crates/rtt-target/0.3.1/download -> rtt-target-0.3.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f84c44248e5c3fa5af8b7eec7abf20e6
diff --git a/metadata/md5-cache/dev-rust/rusb-0.6.2 b/metadata/md5-cache/dev-rust/rusb-0.6.2
index 42d045e..a270588 100644
--- a/metadata/md5-cache/dev-rust/rusb-0.6.2
+++ b/metadata/md5-cache/dev-rust/rusb-0.6.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.2/r0
 SRC_URI=https://crates.io/api/v1/crates/rusb/0.6.2/download -> rusb-0.6.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=84443b7ee9063f8e6c3eb7017e016197
diff --git a/metadata/md5-cache/dev-rust/rusqlite-0.19.0 b/metadata/md5-cache/dev-rust/rusqlite-0.19.0
index 77aedca..58e2b6e 100644
--- a/metadata/md5-cache/dev-rust/rusqlite-0.19.0
+++ b/metadata/md5-cache/dev-rust/rusqlite-0.19.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.19.0/r0
 SRC_URI=https://crates.io/api/v1/crates/rusqlite/0.19.0/download -> rusqlite-0.19.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=54939ba9e49e1a7a49b1667f388d2730
diff --git a/metadata/md5-cache/dev-rust/rusqlite-0.20.0 b/metadata/md5-cache/dev-rust/rusqlite-0.20.0
index 3b81b16..58be31c 100644
--- a/metadata/md5-cache/dev-rust/rusqlite-0.20.0
+++ b/metadata/md5-cache/dev-rust/rusqlite-0.20.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.20.0/r0
 SRC_URI=https://crates.io/api/v1/crates/rusqlite/0.20.0/download -> rusqlite-0.20.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ca37fac73077f423628842465a0c9b9a
diff --git a/metadata/md5-cache/dev-rust/rustc-demangle-0.1.4 b/metadata/md5-cache/dev-rust/rustc-demangle-0.1.4
index 4d89ac1..8be971e 100644
--- a/metadata/md5-cache/dev-rust/rustc-demangle-0.1.4
+++ b/metadata/md5-cache/dev-rust/rustc-demangle-0.1.4
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.4/r0
 SRC_URI=https://crates.io/api/v1/crates/rustc-demangle/0.1.4/download -> rustc-demangle-0.1.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=06722ff391b8bdaa74db19718f4cf8fd
diff --git a/metadata/md5-cache/dev-rust/rustc-hash-1.1.0 b/metadata/md5-cache/dev-rust/rustc-hash-1.1.0
index 8b61651..fc01c3a 100644
--- a/metadata/md5-cache/dev-rust/rustc-hash-1.1.0
+++ b/metadata/md5-cache/dev-rust/rustc-hash-1.1.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.1.0/r0
 SRC_URI=https://crates.io/api/v1/crates/rustc-hash/1.1.0/download -> rustc-hash-1.1.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=593dd9f8e97bfae4a45140a956b06d40
diff --git a/metadata/md5-cache/dev-rust/rustc-serialize-0.3.24 b/metadata/md5-cache/dev-rust/rustc-serialize-0.3.24
index dadefcd..ced4dfc 100644
--- a/metadata/md5-cache/dev-rust/rustc-serialize-0.3.24
+++ b/metadata/md5-cache/dev-rust/rustc-serialize-0.3.24
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.3.24/r0
 SRC_URI=https://crates.io/api/v1/crates/rustc-serialize/0.3.24/download -> rustc-serialize-0.3.24.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=91a5761fe00ecbc93b689478caf18973
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=e6e63192056881c05c96e2232ebe5abb
diff --git a/metadata/md5-cache/dev-rust/rustc-serialize-0.3.24-r1 b/metadata/md5-cache/dev-rust/rustc-serialize-0.3.24-r1
index 9d4d55c..44dfa88 100644
--- a/metadata/md5-cache/dev-rust/rustc-serialize-0.3.24-r1
+++ b/metadata/md5-cache/dev-rust/rustc-serialize-0.3.24-r1
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.3.24/r1
 SRC_URI=https://crates.io/api/v1/crates/rustc-serialize/0.3.24/download -> rustc-serialize-0.3.24.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=91a5761fe00ecbc93b689478caf18973
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=e6e63192056881c05c96e2232ebe5abb
diff --git a/metadata/md5-cache/dev-rust/rustc-std-workspace-alloc-1.0.0 b/metadata/md5-cache/dev-rust/rustc-std-workspace-alloc-1.0.0
index e48e1ec3..ecea522e 100644
--- a/metadata/md5-cache/dev-rust/rustc-std-workspace-alloc-1.0.0
+++ b/metadata/md5-cache/dev-rust/rustc-std-workspace-alloc-1.0.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/rustc-std-workspace-core-1.0.0 b/metadata/md5-cache/dev-rust/rustc-std-workspace-core-1.0.0
index c5a9225..c345d4a 100644
--- a/metadata/md5-cache/dev-rust/rustc-std-workspace-core-1.0.0
+++ b/metadata/md5-cache/dev-rust/rustc-std-workspace-core-1.0.0
@@ -6,5 +6,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=bd17a758f31d5462ebd445618878377b
diff --git a/metadata/md5-cache/dev-rust/rustc-std-workspace-std-1.0.0 b/metadata/md5-cache/dev-rust/rustc-std-workspace-std-1.0.0
index e48e1ec3..ecea522e 100644
--- a/metadata/md5-cache/dev-rust/rustc-std-workspace-std-1.0.0
+++ b/metadata/md5-cache/dev-rust/rustc-std-workspace-std-1.0.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/rustc-test-0.3.0 b/metadata/md5-cache/dev-rust/rustc-test-0.3.0
index 13c08ff..7352b6f 100644
--- a/metadata/md5-cache/dev-rust/rustc-test-0.3.0
+++ b/metadata/md5-cache/dev-rust/rustc-test-0.3.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/rustc_version-0.2.3 b/metadata/md5-cache/dev-rust/rustc_version-0.2.3
index 3070ea7..f77d73a 100644
--- a/metadata/md5-cache/dev-rust/rustc_version-0.2.3
+++ b/metadata/md5-cache/dev-rust/rustc_version-0.2.3
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.2.3/r0
 SRC_URI=https://crates.io/api/v1/crates/rustc_version/0.2.3/download -> rustc_version-0.2.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=8d57b53039d2a11eb8239d0a2d6f2f07
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=abe0672021633f99bfe12d86f58024be
diff --git a/metadata/md5-cache/dev-rust/rustyline-7.0.0-r1 b/metadata/md5-cache/dev-rust/rustyline-7.0.0-r1
index 7d10699..d7921d1 100644
--- a/metadata/md5-cache/dev-rust/rustyline-7.0.0-r1
+++ b/metadata/md5-cache/dev-rust/rustyline-7.0.0-r1
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=MIT
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=7.0.0/r1
 SRC_URI=https://crates.io/api/v1/crates/rustyline/7.0.0/download -> rustyline-7.0.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=379f215c671112caa93430d5397b148d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=00e86e839a26a847525c0d7dbb5908dd
diff --git a/metadata/md5-cache/dev-rust/ryu-0.2.8 b/metadata/md5-cache/dev-rust/ryu-0.2.8
index 59a9e3d..42cc9580 100644
--- a/metadata/md5-cache/dev-rust/ryu-0.2.8
+++ b/metadata/md5-cache/dev-rust/ryu-0.2.8
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.8/r0
 SRC_URI=https://crates.io/api/v1/crates/ryu/0.2.8/download -> ryu-0.2.8.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=da07188f19ca468301de7d83f9fe84a0
diff --git a/metadata/md5-cache/dev-rust/ryu-1.0.5 b/metadata/md5-cache/dev-rust/ryu-1.0.5
index fd3d58e..b671298 100644
--- a/metadata/md5-cache/dev-rust/ryu-1.0.5
+++ b/metadata/md5-cache/dev-rust/ryu-1.0.5
@@ -8,7 +8,8 @@
 LICENSE=Apache-2.0
 RDEPEND==dev-rust/no-panic-0.1*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.0.5/r0
 SRC_URI=https://crates.io/api/v1/crates/ryu/1.0.5/download -> ryu-1.0.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9f6edd4536500d5d0e1b7e87b21b5c70
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=53df3e1a34b7370f5f354b5540168bc8
diff --git a/metadata/md5-cache/dev-rust/s9-0.1.0-r35 b/metadata/md5-cache/dev-rust/s9-0.1.0-r35
deleted file mode 100644
index 9f758d0..0000000
--- a/metadata/md5-cache/dev-rust/s9-0.1.0-r35
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/getopts-0.2*:= =dev-rust/libc-0.2*:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= dev-rust/p9:= dev-rust/sys_util:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Server binary for the 9P file system protocol
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/9s/
-IUSE=test cros_host cros_workon_tree_a65853288ed3e9a088f071b1946c83222b9a6d3e cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!<chromeos-base/crosvm-0.0.1-r260 !dev-rust/9s
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f1eb6c9eb8a7a472637a8f610889cd41
diff --git a/metadata/md5-cache/dev-rust/s9-0.1.0-r39 b/metadata/md5-cache/dev-rust/s9-0.1.0-r39
new file mode 100644
index 0000000..1504f41
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/s9-0.1.0-r39
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/getopts-0.2*:= =dev-rust/libc-0.2*:= dev-rust/libchromeos:= =dev-rust/log-0.4*:= dev-rust/p9:= dev-rust/sys_util:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Server binary for the 9P file system protocol
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/vm_tools/9s/
+IUSE=test cros_host cros_workon_tree_59484d482a35a5fed23cdac96dbeb666876bfa50 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!<chromeos-base/crosvm-0.0.1-r260 !dev-rust/9s
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9b9c46572e3929204c07a57ec26b3412
diff --git a/metadata/md5-cache/dev-rust/s9-9999 b/metadata/md5-cache/dev-rust/s9-9999
index 0d8b857..c0ca209 100644
--- a/metadata/md5-cache/dev-rust/s9-9999
+++ b/metadata/md5-cache/dev-rust/s9-9999
@@ -11,5 +11,5 @@
 RDEPEND=!<chromeos-base/crosvm-0.0.1-r260 !dev-rust/9s
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2053caffb6d3c3a75abe0364d1a2c4f6
diff --git a/metadata/md5-cache/dev-rust/schannel-0.1.15 b/metadata/md5-cache/dev-rust/schannel-0.1.15
index 2b668ab..29f124f 100644
--- a/metadata/md5-cache/dev-rust/schannel-0.1.15
+++ b/metadata/md5-cache/dev-rust/schannel-0.1.15
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.15/r0
 SRC_URI=https://crates.io/api/v1/crates/schannel/0.1.15/download -> schannel-0.1.15.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ab40bf3a2b6abbeb2594bd73d4a90148
diff --git a/metadata/md5-cache/dev-rust/scoped-tls-0.1.0 b/metadata/md5-cache/dev-rust/scoped-tls-0.1.0
index a170191..e762054 100644
--- a/metadata/md5-cache/dev-rust/scoped-tls-0.1.0
+++ b/metadata/md5-cache/dev-rust/scoped-tls-0.1.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.0/r0
 SRC_URI=https://crates.io/api/v1/crates/scoped-tls/0.1.0/download -> scoped-tls-0.1.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a02ded527606af26467e29a6285ce5b1
diff --git a/metadata/md5-cache/dev-rust/scoped-tls-1.0.0 b/metadata/md5-cache/dev-rust/scoped-tls-1.0.0
new file mode 100644
index 0000000..9009185
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/scoped-tls-1.0.0
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=A Rust library providing the old standard library's scoped_thread_local! macro as a library implementation on crates.io.
+EAPI=7
+HOMEPAGE=https://github.com/alexcrichton/scoped-tls
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.0.0/r0
+SRC_URI=https://crates.io/api/v1/crates/scoped-tls/1.0.0/download -> scoped-tls-1.0.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0d2169802ce5d5e3df5323ff6d87e27d
diff --git a/metadata/md5-cache/dev-rust/scoped_threadpool-0.1.9 b/metadata/md5-cache/dev-rust/scoped_threadpool-0.1.9
index 03022b7..140ea9e 100644
--- a/metadata/md5-cache/dev-rust/scoped_threadpool-0.1.9
+++ b/metadata/md5-cache/dev-rust/scoped_threadpool-0.1.9
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.9/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/scopeguard-0.3.3 b/metadata/md5-cache/dev-rust/scopeguard-0.3.3
index 4a0ca6f..a894fdb 100644
--- a/metadata/md5-cache/dev-rust/scopeguard-0.3.3
+++ b/metadata/md5-cache/dev-rust/scopeguard-0.3.3
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.3/r0
 SRC_URI=https://crates.io/api/v1/crates/scopeguard/0.3.3/download -> scopeguard-0.3.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=94dc2dc560c236e86accab95312d1d43
diff --git a/metadata/md5-cache/dev-rust/scopeguard-1.1.0 b/metadata/md5-cache/dev-rust/scopeguard-1.1.0
index f67381f..50e02be 100644
--- a/metadata/md5-cache/dev-rust/scopeguard-1.1.0
+++ b/metadata/md5-cache/dev-rust/scopeguard-1.1.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.1.0/r0
 SRC_URI=https://crates.io/api/v1/crates/scopeguard/1.1.0/download -> scopeguard-1.1.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=a9ebe4ba7eb70f79f8bf221532ad1c8d
diff --git a/metadata/md5-cache/dev-rust/security-framework-0.3.3 b/metadata/md5-cache/dev-rust/security-framework-0.3.3
index 230b9e7..4331c2f 100644
--- a/metadata/md5-cache/dev-rust/security-framework-0.3.3
+++ b/metadata/md5-cache/dev-rust/security-framework-0.3.3
@@ -7,5 +7,5 @@
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.3/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=41923915aa8b03ebf1d6af087d106c83
diff --git a/metadata/md5-cache/dev-rust/security-framework-sys-0.3.3 b/metadata/md5-cache/dev-rust/security-framework-sys-0.3.3
index 8dc9717..406c3c5 100644
--- a/metadata/md5-cache/dev-rust/security-framework-sys-0.3.3
+++ b/metadata/md5-cache/dev-rust/security-framework-sys-0.3.3
@@ -7,5 +7,5 @@
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.3/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=41923915aa8b03ebf1d6af087d106c83
diff --git a/metadata/md5-cache/dev-rust/semver-0.9.0 b/metadata/md5-cache/dev-rust/semver-0.9.0
index 7b4a6cd..5406973 100644
--- a/metadata/md5-cache/dev-rust/semver-0.9.0
+++ b/metadata/md5-cache/dev-rust/semver-0.9.0
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.9.0/r0
 SRC_URI=https://crates.io/api/v1/crates/semver/0.9.0/download -> semver-0.9.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=8d525f630d7b1503585cfb816b623f18
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=b32e1e0da11136b3e1021fb81029ba04
diff --git a/metadata/md5-cache/dev-rust/semver-1.0.3 b/metadata/md5-cache/dev-rust/semver-1.0.3
new file mode 100644
index 0000000..935ddba
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/semver-1.0.3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/serde-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Parser and evaluator for Cargo"s flavor of Semantic Versioning
+EAPI=7
+HOMEPAGE=https://crates.io/crates/semver
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/serde-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.0.3/r0
+SRC_URI=https://crates.io/api/v1/crates/semver/1.0.3/download -> semver-1.0.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=712c5920913ad71f4ef03d58553add4b
diff --git a/metadata/md5-cache/dev-rust/semver-parser-0.7.0 b/metadata/md5-cache/dev-rust/semver-parser-0.7.0
index 7bd7f02..1e8e4e0 100644
--- a/metadata/md5-cache/dev-rust/semver-parser-0.7.0
+++ b/metadata/md5-cache/dev-rust/semver-parser-0.7.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.0/r0
 SRC_URI=https://crates.io/api/v1/crates/semver-parser/0.7.0/download -> semver-parser-0.7.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=65b1cf25f42ccb6ac2af5af503541bce
diff --git a/metadata/md5-cache/dev-rust/serde-0.8.23 b/metadata/md5-cache/dev-rust/serde-0.8.23
index b3305bf..f4ca6da 100644
--- a/metadata/md5-cache/dev-rust/serde-0.8.23
+++ b/metadata/md5-cache/dev-rust/serde-0.8.23
@@ -7,5 +7,5 @@
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.23/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a24171f2ba7b7f5d00b155293ff5debe
diff --git a/metadata/md5-cache/dev-rust/serde-1.0.114 b/metadata/md5-cache/dev-rust/serde-1.0.114
index 42dff63..be428a7 100644
--- a/metadata/md5-cache/dev-rust/serde-1.0.114
+++ b/metadata/md5-cache/dev-rust/serde-1.0.114
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.114/r0
 SRC_URI=https://crates.io/api/v1/crates/serde/1.0.114/download -> serde-1.0.114.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=63da2ba6427bf8b4f1c342a1565507bf
diff --git a/metadata/md5-cache/dev-rust/serde-1.0.125 b/metadata/md5-cache/dev-rust/serde-1.0.125
index e4cb03f..1bffc1a 100644
--- a/metadata/md5-cache/dev-rust/serde-1.0.125
+++ b/metadata/md5-cache/dev-rust/serde-1.0.125
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.125/r0
 SRC_URI=https://crates.io/api/v1/crates/serde/1.0.125/download -> serde-1.0.125.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1299331d6c69b365527e21725702990a
diff --git a/metadata/md5-cache/dev-rust/serde_bytes-0.10.5 b/metadata/md5-cache/dev-rust/serde_bytes-0.10.5
index 6eca3f0..eb664fd 100644
--- a/metadata/md5-cache/dev-rust/serde_bytes-0.10.5
+++ b/metadata/md5-cache/dev-rust/serde_bytes-0.10.5
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.10.5/r0
 SRC_URI=https://crates.io/api/v1/crates/serde_bytes/0.10.5/download -> serde_bytes-0.10.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6672a45492a97789b9e802e387d81554
diff --git a/metadata/md5-cache/dev-rust/serde_derive-1.0.114 b/metadata/md5-cache/dev-rust/serde_derive-1.0.114
index 7118160..dfe28df 100644
--- a/metadata/md5-cache/dev-rust/serde_derive-1.0.114
+++ b/metadata/md5-cache/dev-rust/serde_derive-1.0.114
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.114/r0
 SRC_URI=https://crates.io/api/v1/crates/serde_derive/1.0.114/download -> serde_derive-1.0.114.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=32cb0117cf05773546ea0d13c7fe9245
diff --git a/metadata/md5-cache/dev-rust/serde_derive-1.0.125 b/metadata/md5-cache/dev-rust/serde_derive-1.0.125
index ee59d51..69fbfd1 100644
--- a/metadata/md5-cache/dev-rust/serde_derive-1.0.125
+++ b/metadata/md5-cache/dev-rust/serde_derive-1.0.125
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.125/r0
 SRC_URI=https://crates.io/api/v1/crates/serde_derive/1.0.125/download -> serde_derive-1.0.125.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d3c1ff17cf6609b3a4833d7153311951
diff --git a/metadata/md5-cache/dev-rust/serde_json-0.8.6 b/metadata/md5-cache/dev-rust/serde_json-0.8.6
index 8e8e3a4..5930ae9 100644
--- a/metadata/md5-cache/dev-rust/serde_json-0.8.6
+++ b/metadata/md5-cache/dev-rust/serde_json-0.8.6
@@ -7,5 +7,5 @@
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.6/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a24171f2ba7b7f5d00b155293ff5debe
diff --git a/metadata/md5-cache/dev-rust/serde_json-1.0.39 b/metadata/md5-cache/dev-rust/serde_json-1.0.39
index dc56b78..febcc5f 100644
--- a/metadata/md5-cache/dev-rust/serde_json-1.0.39
+++ b/metadata/md5-cache/dev-rust/serde_json-1.0.39
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.39/r0
 SRC_URI=https://crates.io/api/v1/crates/serde_json/1.0.39/download -> serde_json-1.0.39.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3be7dfce4e170ed80f6b599d479bc0c4
diff --git a/metadata/md5-cache/dev-rust/serde_json-1.0.39-r1 b/metadata/md5-cache/dev-rust/serde_json-1.0.39-r1
index f0c5a38..a63d3073 100644
--- a/metadata/md5-cache/dev-rust/serde_json-1.0.39-r1
+++ b/metadata/md5-cache/dev-rust/serde_json-1.0.39-r1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.39/r1
 SRC_URI=https://crates.io/api/v1/crates/serde_json/1.0.39/download -> serde_json-1.0.39.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3be7dfce4e170ed80f6b599d479bc0c4
diff --git a/metadata/md5-cache/dev-rust/serde_json-1.0.64 b/metadata/md5-cache/dev-rust/serde_json-1.0.64
index 855d2c3..c37291c 100644
--- a/metadata/md5-cache/dev-rust/serde_json-1.0.64
+++ b/metadata/md5-cache/dev-rust/serde_json-1.0.64
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.64/r0
 SRC_URI=https://crates.io/api/v1/crates/serde_json/1.0.64/download -> serde_json-1.0.64.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8dd26b57bdb4ee2f48527717f85968a6
diff --git a/metadata/md5-cache/dev-rust/serde_repr-0.1.7 b/metadata/md5-cache/dev-rust/serde_repr-0.1.7
index ca12810..f6720a3 100644
--- a/metadata/md5-cache/dev-rust/serde_repr-0.1.7
+++ b/metadata/md5-cache/dev-rust/serde_repr-0.1.7
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.7/r0
 SRC_URI=https://crates.io/api/v1/crates/serde_repr/0.1.7/download -> serde_repr-0.1.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=299a228fdb8db8ff3af5c618ba23ded8
diff --git a/metadata/md5-cache/dev-rust/serde_stacker-0.1.0 b/metadata/md5-cache/dev-rust/serde_stacker-0.1.0
index 0af9356..583aa51 100644
--- a/metadata/md5-cache/dev-rust/serde_stacker-0.1.0
+++ b/metadata/md5-cache/dev-rust/serde_stacker-0.1.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/serde_test-1.0.127 b/metadata/md5-cache/dev-rust/serde_test-1.0.127
new file mode 100644
index 0000000..c16e985
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/serde_test-1.0.127
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/serde-1.0.60:= <dev-rust/serde-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Token De/Serializer for testing De/Serialize implementations
+EAPI=7
+HOMEPAGE=https://serde.rs
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/serde-1.0.60:= <dev-rust/serde-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.0.127/r0
+SRC_URI=https://crates.io/api/v1/crates/serde_test/1.0.127/download -> serde_test-1.0.127.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3f87ec5db899cf2a2764a168832a412d
diff --git a/metadata/md5-cache/dev-rust/serde_test-1.0.92 b/metadata/md5-cache/dev-rust/serde_test-1.0.92
index c86b8ca..90cf7af 100644
--- a/metadata/md5-cache/dev-rust/serde_test-1.0.92
+++ b/metadata/md5-cache/dev-rust/serde_test-1.0.92
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.92/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/serde_yaml-0.8.11 b/metadata/md5-cache/dev-rust/serde_yaml-0.8.11
index 8e9c164..13c4edb 100644
--- a/metadata/md5-cache/dev-rust/serde_yaml-0.8.11
+++ b/metadata/md5-cache/dev-rust/serde_yaml-0.8.11
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.11/r0
 SRC_URI=https://crates.io/api/v1/crates/serde_yaml/0.8.11/download -> serde_yaml-0.8.11.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2d7dcff948c9f716cc50f024a0f369e2
diff --git a/metadata/md5-cache/dev-rust/sha1-0.6.0 b/metadata/md5-cache/dev-rust/sha1-0.6.0
new file mode 100644
index 0000000..f17f74e
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/sha1-0.6.0
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.6.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/shell-words-1.0.0 b/metadata/md5-cache/dev-rust/shell-words-1.0.0
index fa6614b..1590cf4 100644
--- a/metadata/md5-cache/dev-rust/shell-words-1.0.0
+++ b/metadata/md5-cache/dev-rust/shell-words-1.0.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.0/r0
 SRC_URI=https://crates.io/api/v1/crates/shell-words/1.0.0/download -> shell-words-1.0.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=621988a0b5019a7024c137960e47bf2f
diff --git a/metadata/md5-cache/dev-rust/shlex-0.1.1 b/metadata/md5-cache/dev-rust/shlex-0.1.1
index 2d1e222a..f822847 100644
--- a/metadata/md5-cache/dev-rust/shlex-0.1.1
+++ b/metadata/md5-cache/dev-rust/shlex-0.1.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/shlex/0.1.1/download -> shlex-0.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e3772ee820489e55e14a9d8bbbdf88c2
diff --git a/metadata/md5-cache/dev-rust/signal-hook-0.1.16 b/metadata/md5-cache/dev-rust/signal-hook-0.1.16
index f4a745f..55f93f6 100644
--- a/metadata/md5-cache/dev-rust/signal-hook-0.1.16
+++ b/metadata/md5-cache/dev-rust/signal-hook-0.1.16
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.16/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/simplelog-0.10.0 b/metadata/md5-cache/dev-rust/simplelog-0.10.0
index 0b50e3f..f8b77e741 100644
--- a/metadata/md5-cache/dev-rust/simplelog-0.10.0
+++ b/metadata/md5-cache/dev-rust/simplelog-0.10.0
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.10.0/r0
 SRC_URI=https://crates.io/api/v1/crates/simplelog/0.10.0/download -> simplelog-0.10.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d3ea0ddfc283341d63bde6ac5a13811f
diff --git a/metadata/md5-cache/dev-rust/slab-0.4.2 b/metadata/md5-cache/dev-rust/slab-0.4.2
index 809ec4c..33f2227 100644
--- a/metadata/md5-cache/dev-rust/slab-0.4.2
+++ b/metadata/md5-cache/dev-rust/slab-0.4.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.2/r0
 SRC_URI=https://crates.io/api/v1/crates/slab/0.4.2/download -> slab-0.4.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8431703a86a8ef35bf9628a8ecbde178
diff --git a/metadata/md5-cache/dev-rust/slab-0.4.3 b/metadata/md5-cache/dev-rust/slab-0.4.3
index 66f92d8..c22149d 100644
--- a/metadata/md5-cache/dev-rust/slab-0.4.3
+++ b/metadata/md5-cache/dev-rust/slab-0.4.3
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.3/r0
 SRC_URI=https://crates.io/api/v1/crates/slab/0.4.3/download -> slab-0.4.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=423b2cc9d156e5ce8e5a625cf870422e
diff --git a/metadata/md5-cache/dev-rust/slog-2.0.0 b/metadata/md5-cache/dev-rust/slog-2.0.0
new file mode 100644
index 0000000..890c803
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/slog-2.0.0
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=2.0.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/smallvec-0.6.12 b/metadata/md5-cache/dev-rust/smallvec-0.6.12
index 2034155..5e85875 100644
--- a/metadata/md5-cache/dev-rust/smallvec-0.6.12
+++ b/metadata/md5-cache/dev-rust/smallvec-0.6.12
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.12/r0
 SRC_URI=https://crates.io/api/v1/crates/smallvec/0.6.12/download -> smallvec-0.6.12.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0a90dc4d8d25349f1848cb2cee51cf80
diff --git a/metadata/md5-cache/dev-rust/smallvec-0.6.12-r1 b/metadata/md5-cache/dev-rust/smallvec-0.6.12-r1
index e006422..a1c1e55 100644
--- a/metadata/md5-cache/dev-rust/smallvec-0.6.12-r1
+++ b/metadata/md5-cache/dev-rust/smallvec-0.6.12-r1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.12/r1
 SRC_URI=https://crates.io/api/v1/crates/smallvec/0.6.12/download -> smallvec-0.6.12.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0a90dc4d8d25349f1848cb2cee51cf80
diff --git a/metadata/md5-cache/dev-rust/smallvec-0.6.14 b/metadata/md5-cache/dev-rust/smallvec-0.6.14
index f593e19..8d9488d 100644
--- a/metadata/md5-cache/dev-rust/smallvec-0.6.14
+++ b/metadata/md5-cache/dev-rust/smallvec-0.6.14
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.14/r0
 SRC_URI=https://crates.io/api/v1/crates/smallvec/0.6.14/download -> smallvec-0.6.14.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=45a4a916584c16ecc49052684c996fec
diff --git a/metadata/md5-cache/dev-rust/smallvec-1.6.1 b/metadata/md5-cache/dev-rust/smallvec-1.6.1
index 4b3595f..fd3285e 100644
--- a/metadata/md5-cache/dev-rust/smallvec-1.6.1
+++ b/metadata/md5-cache/dev-rust/smallvec-1.6.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.6.1/r0
 SRC_URI=https://crates.io/api/v1/crates/smallvec/1.6.1/download -> smallvec-1.6.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=bf50f32ed80f7a2e4dab2c5e7b6d0ee7
diff --git a/metadata/md5-cache/dev-rust/socket2-0.3.9 b/metadata/md5-cache/dev-rust/socket2-0.3.9
index 839be30..f17cb35 100644
--- a/metadata/md5-cache/dev-rust/socket2-0.3.9
+++ b/metadata/md5-cache/dev-rust/socket2-0.3.9
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.9/r0
 SRC_URI=https://crates.io/api/v1/crates/socket2/0.3.9/download -> socket2-0.3.9.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3f0a2dcec7d3a0e513f41e0fc23254b0
diff --git a/metadata/md5-cache/dev-rust/spi-memory-0.2.0 b/metadata/md5-cache/dev-rust/spi-memory-0.2.0
new file mode 100644
index 0000000..5cda008
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/spi-memory-0.2.0
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/bitflags-1.0.4:= <dev-rust/bitflags-2.0.0 >=dev-rust/embedded-hal-0.2.3:= <dev-rust/embedded-hal-0.3.0 >=dev-rust/log-0.4.6:= <dev-rust/log-0.5.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=A generic driver for different SPI Flash and EEPROM chips
+EAPI=7
+HOMEPAGE=https://crates.io/crates/spi-memory
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=0BSD
+RDEPEND=>=dev-rust/bitflags-1.0.4:= <dev-rust/bitflags-2.0.0 >=dev-rust/embedded-hal-0.2.3:= <dev-rust/embedded-hal-0.3.0 >=dev-rust/log-0.4.6:= <dev-rust/log-0.5.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.2.0/r0
+SRC_URI=https://crates.io/api/v1/crates/spi-memory/0.2.0/download -> spi-memory-0.2.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=106e98c5dbfd8f840f362c133553fa50
diff --git a/metadata/md5-cache/dev-rust/spin-0.4.10 b/metadata/md5-cache/dev-rust/spin-0.4.10
deleted file mode 100644
index 0b6330c..0000000
--- a/metadata/md5-cache/dev-rust/spin-0.4.10
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=virtual/rust-1.39.0:=
-DESCRIPTION=Synchronization primitives based on spinning.
-EAPI=6
-HOMEPAGE=https://github.com/mvdnes/spin-rs
-IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=MIT
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0.4.10/r0
-SRC_URI=https://crates.io/api/v1/crates/spin/0.4.10/download -> spin-0.4.10.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=fa6501919b9ea0b410fd6b597d0ede4f
diff --git a/metadata/md5-cache/dev-rust/spin-0.5.2 b/metadata/md5-cache/dev-rust/spin-0.5.2
index c781eb8..cd495e5 100644
--- a/metadata/md5-cache/dev-rust/spin-0.5.2
+++ b/metadata/md5-cache/dev-rust/spin-0.5.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.5.2/r0
 SRC_URI=https://crates.io/api/v1/crates/spin/0.5.2/download -> spin-0.5.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fa6501919b9ea0b410fd6b597d0ede4f
diff --git a/metadata/md5-cache/dev-rust/stable_deref_trait-1.1.1 b/metadata/md5-cache/dev-rust/stable_deref_trait-1.1.1
index 8e1874d..e6d03b7 100644
--- a/metadata/md5-cache/dev-rust/stable_deref_trait-1.1.1
+++ b/metadata/md5-cache/dev-rust/stable_deref_trait-1.1.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/stable_deref_trait/1.1.1/download -> stable_deref_trait-1.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=45ec6aa0ba5cd97b2d83e46f77b22130
diff --git a/metadata/md5-cache/dev-rust/stable_deref_trait-1.2.0 b/metadata/md5-cache/dev-rust/stable_deref_trait-1.2.0
new file mode 100644
index 0000000..bb0a42f
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/stable_deref_trait-1.2.0
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=An unsafe marker trait for types like Box and Rc that dereference to a stable address even when moved, and hence can be used with libraries such as owning_ref and rental.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/stable_deref_trait
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.2.0/r0
+SRC_URI=https://crates.io/api/v1/crates/stable_deref_trait/1.2.0/download -> stable_deref_trait-1.2.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1bb2cadebd65b0f351383dfbdd6b284e
diff --git a/metadata/md5-cache/dev-rust/stderrlog-0.5.0 b/metadata/md5-cache/dev-rust/stderrlog-0.5.0
index b3066d4..3dac167 100644
--- a/metadata/md5-cache/dev-rust/stderrlog-0.5.0
+++ b/metadata/md5-cache/dev-rust/stderrlog-0.5.0
@@ -6,8 +6,9 @@
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/atty-0.2.6:= <dev-rust/atty-0.3.0 >=dev-rust/chrono-0.4.10:= <dev-rust/chrono-0.5.0 >=dev-rust/log-0.4.11:= <dev-rust/log-0.5.0 >=dev-rust/termcolor-1.1:= <dev-rust/termcolor-1.2 >=dev-rust/thread_local-1.0:= <dev-rust/thread_local-1.1
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.5.0/r0
 SRC_URI=https://crates.io/api/v1/crates/stderrlog/0.5.0/download -> stderrlog-0.5.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=24f92316576d5f8686f970b976e5f727
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=76fe04f5091766f3d3090c12c46cf862
diff --git a/metadata/md5-cache/dev-rust/stderrlog-0.5.0-r1 b/metadata/md5-cache/dev-rust/stderrlog-0.5.0-r1
new file mode 100644
index 0000000..8ef9f6d3
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/stderrlog-0.5.0-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/atty-0.2.6:= <dev-rust/atty-0.3.0 >=dev-rust/chrono-0.4.10:= <dev-rust/chrono-0.5.0 >=dev-rust/log-0.4.11:= <dev-rust/log-0.5.0 >=dev-rust/termcolor-1.1:= <dev-rust/termcolor-1.2 >=dev-rust/thread_local-1.0:= <dev-rust/thread_local-1.1 >=virtual/rust-1.39.0:=
+DESCRIPTION=Logger that aims to provide a simple case of env_logger that just logs to stderr based on verbosity
+EAPI=7
+HOMEPAGE=https://github.com/cardoe/stderrlog-rs
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/atty-0.2.6:= <dev-rust/atty-0.3.0 >=dev-rust/chrono-0.4.10:= <dev-rust/chrono-0.5.0 >=dev-rust/log-0.4.11:= <dev-rust/log-0.5.0 >=dev-rust/termcolor-1.1:= <dev-rust/termcolor-1.2 >=dev-rust/thread_local-1.0:= <dev-rust/thread_local-1.1
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.5.0/r1
+SRC_URI=https://crates.io/api/v1/crates/stderrlog/0.5.0/download -> stderrlog-0.5.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=76fe04f5091766f3d3090c12c46cf862
diff --git a/metadata/md5-cache/dev-rust/stdweb-0.4.20 b/metadata/md5-cache/dev-rust/stdweb-0.4.20
index bc125ef..bd23423 100644
--- a/metadata/md5-cache/dev-rust/stdweb-0.4.20
+++ b/metadata/md5-cache/dev-rust/stdweb-0.4.20
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.20/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/stm32g0-0.13.0 b/metadata/md5-cache/dev-rust/stm32g0-0.13.0
new file mode 100644
index 0000000..7c475c7
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/stm32g0-0.13.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/bare-metal-0.2.4:= <dev-rust/bare-metal-0.3.0 >=dev-rust/cortex-m-0.5.8:= <dev-rust/cortex-m-0.8.0 >=dev-rust/cortex-m-rt-0.6.10:= <dev-rust/cortex-m-rt-0.7.0 =dev-rust/vcell-0.1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Device support crates for STM32G0 devices
+EAPI=7
+HOMEPAGE=https://crates.io/crates/stm32g0
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/bare-metal-0.2.4:= <dev-rust/bare-metal-0.3.0 >=dev-rust/cortex-m-0.5.8:= <dev-rust/cortex-m-0.8.0 >=dev-rust/cortex-m-rt-0.6.10:= <dev-rust/cortex-m-rt-0.7.0 =dev-rust/vcell-0.1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.13.0/r0
+SRC_URI=https://crates.io/api/v1/crates/stm32g0/0.13.0/download -> stm32g0-0.13.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=209f2ca1227456f5912c5b5601b2d355
diff --git a/metadata/md5-cache/dev-rust/stm32g0xx-hal-0.1.0 b/metadata/md5-cache/dev-rust/stm32g0xx-hal-0.1.0
new file mode 100644
index 0000000..685e527
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/stm32g0xx-hal-0.1.0
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/bare-metal-1*:= >=dev-rust/cortex-m-0.7.1:= <dev-rust/cortex-m-0.8.0 >=dev-rust/embedded-hal-0.2.4:= <dev-rust/embedded-hal-0.3.0 =dev-rust/nb-1*:= =dev-rust/stm32g0-0.13*:= >=dev-rust/void-1.0.2:= <dev-rust/void-2.0.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Peripheral access API for STM32G0 series microcontrollers
+EAPI=7
+HOMEPAGE=https://crates.io/crates/stm32g0xx-hal
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/bare-metal-1*:= >=dev-rust/cortex-m-0.7.1:= <dev-rust/cortex-m-0.8.0 >=dev-rust/embedded-hal-0.2.4:= <dev-rust/embedded-hal-0.3.0 =dev-rust/nb-1*:= =dev-rust/stm32g0-0.13*:= >=dev-rust/void-1.0.2:= <dev-rust/void-2.0.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.1.0/r0
+SRC_URI=https://crates.io/api/v1/crates/stm32g0xx-hal/0.1.0/download -> stm32g0xx-hal-0.1.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=db9ba9283e65071d13564a6fab4efd08
diff --git a/metadata/md5-cache/dev-rust/string-0.2.1 b/metadata/md5-cache/dev-rust/string-0.2.1
index 9e7d580..002a231 100644
--- a/metadata/md5-cache/dev-rust/string-0.2.1
+++ b/metadata/md5-cache/dev-rust/string-0.2.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.1/r0
 SRC_URI=https://crates.io/api/v1/crates/string/0.2.1/download -> string-0.2.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3c17b654150aaf83969149884f191bdf
diff --git a/metadata/md5-cache/dev-rust/strsim-0.10.0 b/metadata/md5-cache/dev-rust/strsim-0.10.0
new file mode 100644
index 0000000..3fbe042
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/strsim-0.10.0
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Implementations of string similarity metrics. Includes Hamming, Levenshtein, OSA, Damerau-Levenshtein, Jaro, Jaro-Winkler, and Sørensen-Dice.
+EAPI=7
+HOMEPAGE=https://github.com/dguo/strsim-rs
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.10.0/r0
+SRC_URI=https://crates.io/api/v1/crates/strsim/0.10.0/download -> strsim-0.10.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c58f758748917cc5b3b2ebb8ca0cb3f9
diff --git a/metadata/md5-cache/dev-rust/strsim-0.8.0 b/metadata/md5-cache/dev-rust/strsim-0.8.0
index cf4938c..65df8c9 100644
--- a/metadata/md5-cache/dev-rust/strsim-0.8.0
+++ b/metadata/md5-cache/dev-rust/strsim-0.8.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.0/r0
 SRC_URI=https://crates.io/api/v1/crates/strsim/0.8.0/download -> strsim-0.8.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f2a5717f1ffb813878d0dc6bed348dd2
diff --git a/metadata/md5-cache/dev-rust/strsim-0.8.0-r1 b/metadata/md5-cache/dev-rust/strsim-0.8.0-r1
index 32e3409..9854bfd 100644
--- a/metadata/md5-cache/dev-rust/strsim-0.8.0-r1
+++ b/metadata/md5-cache/dev-rust/strsim-0.8.0-r1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.0/r1
 SRC_URI=https://crates.io/api/v1/crates/strsim/0.8.0/download -> strsim-0.8.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f2a5717f1ffb813878d0dc6bed348dd2
diff --git a/metadata/md5-cache/dev-rust/structopt-0.3.20 b/metadata/md5-cache/dev-rust/structopt-0.3.20
index 768557b..7066428 100644
--- a/metadata/md5-cache/dev-rust/structopt-0.3.20
+++ b/metadata/md5-cache/dev-rust/structopt-0.3.20
@@ -1,5 +1,5 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/clap-2.33.0:= <dev-rust/clap-3.0.0 >=dev-rust/lazy_static-1.4.0:= <dev-rust/lazy_static-2.0.0 =dev-rust/structopt-derive-0.4.13:= =dev-rust/paw-1*:= >=virtual/rust-1.39.0:=
+DEPEND=>=dev-rust/clap-2.33.0:= <dev-rust/clap-3 >=dev-rust/lazy_static-1.4.0:= <dev-rust/lazy_static-2.0.0 =dev-rust/structopt-derive-0.4.13:= =dev-rust/paw-1*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Parse command line arguments by defining a struct.
 EAPI=7
 HOMEPAGE=https://github.com/TeXitoi/structopt
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.3.20/r0
 SRC_URI=https://crates.io/api/v1/crates/structopt/0.3.20/download -> structopt-0.3.20.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e03610180ccf312d88c770782d844154
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=331960bf697cdc442a476fad09e6a9d9
diff --git a/metadata/md5-cache/dev-rust/structopt-derive-0.4.13 b/metadata/md5-cache/dev-rust/structopt-derive-0.4.13
index fdb97474..0489814 100644
--- a/metadata/md5-cache/dev-rust/structopt-derive-0.4.13
+++ b/metadata/md5-cache/dev-rust/structopt-derive-0.4.13
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.13/r0
 SRC_URI=https://crates.io/api/v1/crates/structopt-derive/0.4.13/download -> structopt-derive-0.4.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=cf83464df47082c784dae2bf8054d4aa
diff --git a/metadata/md5-cache/dev-rust/sval-1.0.0 b/metadata/md5-cache/dev-rust/sval-1.0.0
index fa33d8e..a5025fe 100644
--- a/metadata/md5-cache/dev-rust/sval-1.0.0
+++ b/metadata/md5-cache/dev-rust/sval-1.0.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=eebfd99c03729092f422b6acfa37c16c
diff --git a/metadata/md5-cache/dev-rust/syn-0.15.26 b/metadata/md5-cache/dev-rust/syn-0.15.26
index 450582c..149165f 100644
--- a/metadata/md5-cache/dev-rust/syn-0.15.26
+++ b/metadata/md5-cache/dev-rust/syn-0.15.26
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.15.26/r0
 SRC_URI=https://crates.io/api/v1/crates/syn/0.15.26/download -> syn-0.15.26.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=99ddca19c41402005ca371b43fe1f7f9
diff --git a/metadata/md5-cache/dev-rust/syn-0.15.26-r1 b/metadata/md5-cache/dev-rust/syn-0.15.26-r1
index 9101b1d..aa331d2 100644
--- a/metadata/md5-cache/dev-rust/syn-0.15.26-r1
+++ b/metadata/md5-cache/dev-rust/syn-0.15.26-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.15.26/r1
 SRC_URI=https://crates.io/api/v1/crates/syn/0.15.26/download -> syn-0.15.26.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5d192d9c67f8278e4be07e857fd485c1
diff --git a/metadata/md5-cache/dev-rust/syn-1.0.58 b/metadata/md5-cache/dev-rust/syn-1.0.58
index 241d32d..42aa129a 100644
--- a/metadata/md5-cache/dev-rust/syn-1.0.58
+++ b/metadata/md5-cache/dev-rust/syn-1.0.58
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.58/r0
 SRC_URI=https://crates.io/api/v1/crates/syn/1.0.58/download -> syn-1.0.58.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=57d7fcf07b316da230bb6ac8d1d15cfa
diff --git a/metadata/md5-cache/dev-rust/syn-1.0.69 b/metadata/md5-cache/dev-rust/syn-1.0.69
index de161bd..8071c65 100644
--- a/metadata/md5-cache/dev-rust/syn-1.0.69
+++ b/metadata/md5-cache/dev-rust/syn-1.0.69
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.69/r0
 SRC_URI=https://crates.io/api/v1/crates/syn/1.0.69/download -> syn-1.0.69.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=c8ed67637a24d3a40df46607b1821e0c
diff --git a/metadata/md5-cache/dev-rust/syn-1.0.72 b/metadata/md5-cache/dev-rust/syn-1.0.72
index 769db9703..d38a7e7 100644
--- a/metadata/md5-cache/dev-rust/syn-1.0.72
+++ b/metadata/md5-cache/dev-rust/syn-1.0.72
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=>=dev-rust/proc-macro2-1.0.26:= <dev-rust/proc-macro2-2.0.0 =dev-rust/quote-1*:= =dev-rust/unicode-xid-0.2*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.0.72/r0
 SRC_URI=https://crates.io/api/v1/crates/syn/1.0.72/download -> syn-1.0.72.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6da94011eb02eebf871ebb2f2b6a5616
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0c0b2ed919b8430f4e26ca1a555ccf73
diff --git a/metadata/md5-cache/dev-rust/sync-0.1.0-r11 b/metadata/md5-cache/dev-rust/sync-0.1.0-r11
deleted file mode 100644
index 0f080b3..0000000
--- a/metadata/md5-cache/dev-rust/sync-0.1.0-r11
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=>=virtual/rust-1.39.0:=
-DESCRIPTION=Containing a type sync::Mutex which wraps the standard library Mutex and mirrors the same methods
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/sync
-IUSE=test cros_host cros_workon_tree_28852483b877a051ca092e4b811f8831872c49b0 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!!<=dev-rust/sync-0.1.0-r6
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r11
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f1c91aaeffc832c350e2e141bfe84723
diff --git a/metadata/md5-cache/dev-rust/sync-0.1.0-r14 b/metadata/md5-cache/dev-rust/sync-0.1.0-r14
new file mode 100644
index 0000000..6de46fb
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/sync-0.1.0-r14
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Containing a type sync::Mutex which wraps the standard library Mutex and mirrors the same methods
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/sync
+IUSE=test cros_host cros_workon_tree_af21c512e6b9981138e4df7664dab87bf004b04b cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!!<=dev-rust/sync-0.1.0-r6
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r14
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=77238272c61e1a23fe5e1fc17d609714
diff --git a/metadata/md5-cache/dev-rust/sync-9999 b/metadata/md5-cache/dev-rust/sync-9999
index c871c17..d3f6c60 100644
--- a/metadata/md5-cache/dev-rust/sync-9999
+++ b/metadata/md5-cache/dev-rust/sync-9999
@@ -11,5 +11,5 @@
 RDEPEND=!!<=dev-rust/sync-0.1.0-r6
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=0bb17d1cbed697b315b0c2d1e7cebf9c
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=867d27c69b9bb16c5cc1207d6c9d52b1
diff --git a/metadata/md5-cache/dev-rust/synstructure-0.10.1 b/metadata/md5-cache/dev-rust/synstructure-0.10.1
index 1b44450..17bdb35 100644
--- a/metadata/md5-cache/dev-rust/synstructure-0.10.1
+++ b/metadata/md5-cache/dev-rust/synstructure-0.10.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.10.1/r0
 SRC_URI=https://crates.io/api/v1/crates/synstructure/0.10.1/download -> synstructure-0.10.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ff5ee63226ad0d5fdacd731e064c8606
diff --git a/metadata/md5-cache/dev-rust/synstructure-0.12.4 b/metadata/md5-cache/dev-rust/synstructure-0.12.4
index 8e25279..2eedd64 100644
--- a/metadata/md5-cache/dev-rust/synstructure-0.12.4
+++ b/metadata/md5-cache/dev-rust/synstructure-0.12.4
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.12.4/r0
 SRC_URI=https://crates.io/api/v1/crates/synstructure/0.12.4/download -> synstructure-0.12.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=c2e1414403da5267fc49ce509106320b
diff --git a/metadata/md5-cache/dev-rust/synstructure_test_traits-0.1.0 b/metadata/md5-cache/dev-rust/synstructure_test_traits-0.1.0
index 2aa1968..e9b4741 100644
--- a/metadata/md5-cache/dev-rust/synstructure_test_traits-0.1.0
+++ b/metadata/md5-cache/dev-rust/synstructure_test_traits-0.1.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/sys-info-0.5.7 b/metadata/md5-cache/dev-rust/sys-info-0.5.7
index e3d9c3f..6374e57 100644
--- a/metadata/md5-cache/dev-rust/sys-info-0.5.7
+++ b/metadata/md5-cache/dev-rust/sys-info-0.5.7
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.5.7/r0
 SRC_URI=https://crates.io/api/v1/crates/sys-info/0.5.7/download -> sys-info-0.5.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3637c53dac713437c2e85a33b9e82e16
diff --git a/metadata/md5-cache/dev-rust/sys_util-0.1.0-r161 b/metadata/md5-cache/dev-rust/sys_util-0.1.0-r161
deleted file mode 100644
index 06289f8..0000000
--- a/metadata/md5-cache/dev-rust/sys_util-0.1.0-r161
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/android_log-sys-0.2*:= dev-rust/assertions:= dev-rust/data_model:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0 =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= =dev-rust/syn-1*:= dev-rust/sync:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 sys-libs/libcap:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Small system utility modules for usage by other modules.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/sys_util
-IUSE=test cros_host cros_workon_tree_45225500d49ffe6b0cc50397b01585a13c61e9cc cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND==dev-rust/android_log-sys-0.2*:= dev-rust/assertions:= dev-rust/data_model:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0 =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= =dev-rust/syn-1*:= dev-rust/sync:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 sys-libs/libcap:= !!<=dev-rust/sys_util-0.1.0-r60
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r161
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=46786446800d7be4397083b0042ad131
diff --git a/metadata/md5-cache/dev-rust/sys_util-0.1.0-r180 b/metadata/md5-cache/dev-rust/sys_util-0.1.0-r180
new file mode 100644
index 0000000..0d1e8c2
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/sys_util-0.1.0-r180
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/android_log-sys-0.2*:= dev-rust/assertions:= dev-rust/data_model:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0 =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/remain-0.2*:= =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= =dev-rust/syn-1*:= dev-rust/sync:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 sys-libs/libcap:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Small system utility modules for usage by other modules.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/sys_util
+IUSE=test cros_host cros_workon_tree_feca2663ec02a5abf5259894551ce8fc1b6e5465 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND==dev-rust/android_log-sys-0.2*:= dev-rust/assertions:= dev-rust/data_model:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0 =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/remain-0.2*:= =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= =dev-rust/syn-1*:= dev-rust/sync:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 sys-libs/libcap:= !!<=dev-rust/sys_util-0.1.0-r60
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r180
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3e01f4d75e766dd38d0f916edbe782f7
diff --git a/metadata/md5-cache/dev-rust/sys_util-9999 b/metadata/md5-cache/dev-rust/sys_util-9999
index 5009f0e..d2d863d 100644
--- a/metadata/md5-cache/dev-rust/sys_util-9999
+++ b/metadata/md5-cache/dev-rust/sys_util-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/android_log-sys-0.2*:= dev-rust/assertions:= dev-rust/data_model:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0 =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= =dev-rust/syn-1*:= dev-rust/sync:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 sys-libs/libcap:= >=virtual/rust-1.39.0:=
+DEPEND==dev-rust/android_log-sys-0.2*:= dev-rust/assertions:= dev-rust/data_model:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0 =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/remain-0.2*:= =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= =dev-rust/syn-1*:= dev-rust/sync:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 sys-libs/libcap:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Small system utility modules for usage by other modules.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/sys_util
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND==dev-rust/android_log-sys-0.2*:= dev-rust/assertions:= dev-rust/data_model:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0 =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= =dev-rust/syn-1*:= dev-rust/sync:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 sys-libs/libcap:= !!<=dev-rust/sys_util-0.1.0-r60
+RDEPEND==dev-rust/android_log-sys-0.2*:= dev-rust/assertions:= dev-rust/data_model:= >=dev-rust/libc-0.2.93:= <dev-rust/libc-0.3.0 =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/remain-0.2*:= =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= =dev-rust/syn-1*:= dev-rust/sync:= dev-rust/tempfile:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 sys-libs/libcap:= !!<=dev-rust/sys_util-0.1.0-r60
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=01ce7a95a085b2201107d0ca707662bb
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8e3dd8fe15a20b943e06b0645576731a
diff --git a/metadata/md5-cache/dev-rust/syslog-4.0.1-r1 b/metadata/md5-cache/dev-rust/syslog-4.0.1-r1
index 96dbf49..38f23a7 100644
--- a/metadata/md5-cache/dev-rust/syslog-4.0.1-r1
+++ b/metadata/md5-cache/dev-rust/syslog-4.0.1-r1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=4.0.1/r1
 SRC_URI=https://crates.io/api/v1/crates/syslog/4.0.1/download -> syslog-4.0.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d687fec7f98917aff922afd0ac9fda2c
diff --git a/metadata/md5-cache/dev-rust/system_api-0.24.53-r186 b/metadata/md5-cache/dev-rust/system_api-0.24.53-r186
deleted file mode 100644
index dd19be6..0000000
--- a/metadata/md5-cache/dev-rust/system_api-0.24.53-r186
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Chrome OS system API D-Bus bindings for Rust.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/system_api/
-IUSE=cros_host cros_workon_tree_17b97c5c2ddeb8fe389f24ed79e581941c90795b_a0d8550678a1ed2a4ab62782049032a024bf40df_c3e1fc5061dcbd62acb501f21d7a3794f41b2160_2c7ac844cf2db48eca0465be0c5ada91c108f177_3b632cb1cbc6da698a355e078bfc220f0461deee cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= !chromeos-base/system_api-rust
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.24.53-r186
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2f8141b10576fdb170ef316f09f3a538
diff --git a/metadata/md5-cache/dev-rust/system_api-0.24.53-r279 b/metadata/md5-cache/dev-rust/system_api-0.24.53-r279
new file mode 100644
index 0000000..f5fc5de
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/system_api-0.24.53-r279
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.9*:= >=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3 >=virtual/rust-1.39.0:=
+DESCRIPTION=Chrome OS system API D-Bus bindings for Rust.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/system_api/
+IUSE=cros_host cros_workon_tree_c28e5042658473f3d1d5194279d4ec2cc2633f31_a0d8550678a1ed2a4ab62782049032a024bf40df_b00310c222484b624ff9ec2378e041d7cd8f09fb_28de0d8f31b7c079629b40b81e98707f45158909_ac372937b4795711f04d5af57461105605663f83_5c2fc3d693f68ac5e38decc3d1df9c44da6f360f cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.9*:= >=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3 !chromeos-base/system_api-rust
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.24.53-r279
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fddbaaded7165f46f0d8e5d9e6aee6ec
diff --git a/metadata/md5-cache/dev-rust/system_api-9999 b/metadata/md5-cache/dev-rust/system_api-9999
index fab0e7e..42a8474 100644
--- a/metadata/md5-cache/dev-rust/system_api-9999
+++ b/metadata/md5-cache/dev-rust/system_api-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= >=virtual/rust-1.39.0:=
+DEPEND=dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.9*:= >=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3 >=virtual/rust-1.39.0:=
 DESCRIPTION=Chrome OS system API D-Bus bindings for Rust.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/system_api/
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= !chromeos-base/system_api-rust
+RDEPEND=dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.9*:= >=dev-rust/protobuf-2.16.2:= <dev-rust/protobuf-3 >=dev-rust/protoc-rust-2.16.2:= <dev-rust/protoc-rust-3 !chromeos-base/system_api-rust
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7c66ccac2a419c44c10c000c15aee51c
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=171d4149eeb5eca59397aa94fb4be42b
diff --git a/metadata/md5-cache/dev-rust/tempdir-0.3.7 b/metadata/md5-cache/dev-rust/tempdir-0.3.7
index 2d8d61b..d1256d1 100644
--- a/metadata/md5-cache/dev-rust/tempdir-0.3.7
+++ b/metadata/md5-cache/dev-rust/tempdir-0.3.7
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
 DEPEND==dev-rust/rand-0.4*:= =dev-rust/remove_dir_all-0.5*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=A Rust library for creating a temporary directory and deleting its entire contents when the directory is dropped.
-EAPI=6
+EAPI=7
 HOMEPAGE=https://github.com/rust-lang/tempdir
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/rand-0.4*:= =dev-rust/remove_dir_all-0.5*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.7/r0
 SRC_URI=https://crates.io/api/v1/crates/tempdir/0.3.7/download -> tempdir-0.3.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=5645057a0eb0b3511cac4aef9657f5b0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=bf7940075e4fc5dda362bbcc4677ec74
diff --git a/metadata/md5-cache/dev-rust/tempdir-0.3.7-r2 b/metadata/md5-cache/dev-rust/tempdir-0.3.7-r2
index d0b7a67..676d055 100644
--- a/metadata/md5-cache/dev-rust/tempdir-0.3.7-r2
+++ b/metadata/md5-cache/dev-rust/tempdir-0.3.7-r2
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
 DEPEND==dev-rust/rand-0.4*:= =dev-rust/remove_dir_all-0.5*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=A Rust library for creating a temporary directory and deleting its entire contents when the directory is dropped.
-EAPI=6
+EAPI=7
 HOMEPAGE=https://github.com/rust-lang/tempdir
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/rand-0.4*:= =dev-rust/remove_dir_all-0.5*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.7/r2
 SRC_URI=https://crates.io/api/v1/crates/tempdir/0.3.7/download -> tempdir-0.3.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=5645057a0eb0b3511cac4aef9657f5b0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=bf7940075e4fc5dda362bbcc4677ec74
diff --git a/metadata/md5-cache/dev-rust/tempdir-0.3.7-r3 b/metadata/md5-cache/dev-rust/tempdir-0.3.7-r3
new file mode 100644
index 0000000..ddf1608
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/tempdir-0.3.7-r3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/rand-0.4*:= =dev-rust/remove_dir_all-0.5*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A Rust library for creating a temporary directory and deleting its entire contents when the directory is dropped.
+EAPI=7
+HOMEPAGE=https://github.com/rust-lang/tempdir
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/rand-0.4*:= =dev-rust/remove_dir_all-0.5*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.3.7/r3
+SRC_URI=https://crates.io/api/v1/crates/tempdir/0.3.7/download -> tempdir-0.3.7.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=bf7940075e4fc5dda362bbcc4677ec74
diff --git a/metadata/md5-cache/dev-rust/tempfile-3.0.7-r10 b/metadata/md5-cache/dev-rust/tempfile-3.0.7-r10
deleted file mode 100644
index 01d1b26..0000000
--- a/metadata/md5-cache/dev-rust/tempfile-3.0.7-r10
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/cfg-if-0.1*:= >=dev-rust/libc-0.2.27:= =dev-rust/rand-0.6*:= =dev-rust/redox_syscall-0.1*:= =dev-rust/remove_dir_all-0.5*:= =dev-rust/winapi-0.3*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=A library for managing temporary files and directories
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/tempfile
-IUSE=test cros_host cros_workon_tree_4d1019d4ba75c8d6c18310a8bce67bcda0eceab5 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND==dev-rust/cfg-if-0.1*:= >=dev-rust/libc-0.2.27:= =dev-rust/rand-0.6*:= =dev-rust/redox_syscall-0.1*:= =dev-rust/remove_dir_all-0.5*:= =dev-rust/winapi-0.3*:= !!<=dev-rust/tempfile-3.0.7-r2
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/3.0.7-r10
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5d3cf6b8d1e784acc43ca7d34fec4937
diff --git a/metadata/md5-cache/dev-rust/tempfile-3.2.0 b/metadata/md5-cache/dev-rust/tempfile-3.2.0
new file mode 100644
index 0000000..4fc9dff5
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/tempfile-3.2.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/cfg-if-1*:= =dev-rust/rand-0.8*:= =dev-rust/remove_dir_all-0.5*:= >=dev-rust/libc-0.2.27:= <dev-rust/libc-0.3.0_alpha >=virtual/rust-1.39.0:=
+DESCRIPTION=A library for managing temporary files and directories.
+EAPI=7
+HOMEPAGE=http://stebalien.com/projects/tempfile-rs
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/cfg-if-1*:= =dev-rust/rand-0.8*:= =dev-rust/remove_dir_all-0.5*:= >=dev-rust/libc-0.2.27:= <dev-rust/libc-0.3.0_alpha
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=3.2.0/r0
+SRC_URI=https://crates.io/api/v1/crates/tempfile/3.2.0/download -> tempfile-3.2.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d62f5acc366109bcf46844038b0bcfba
diff --git a/metadata/md5-cache/dev-rust/tempfile-9999 b/metadata/md5-cache/dev-rust/tempfile-9999
deleted file mode 100644
index 8bf334f..0000000
--- a/metadata/md5-cache/dev-rust/tempfile-9999
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/cfg-if-0.1*:= >=dev-rust/libc-0.2.27:= =dev-rust/rand-0.6*:= =dev-rust/redox_syscall-0.1*:= =dev-rust/remove_dir_all-0.5*:= =dev-rust/winapi-0.3*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=A library for managing temporary files and directories
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crosvm/+/HEAD/tempfile
-IUSE=test cros_host cros_workon_tree_ cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=~*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND==dev-rust/cfg-if-0.1*:= >=dev-rust/libc-0.2.27:= =dev-rust/rand-0.6*:= =dev-rust/redox_syscall-0.1*:= =dev-rust/remove_dir_all-0.5*:= =dev-rust/winapi-0.3*:= !!<=dev-rust/tempfile-3.0.7-r2
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a00f15a527123cda558b162b7be622b9
diff --git a/metadata/md5-cache/dev-rust/term_size-0.3.0 b/metadata/md5-cache/dev-rust/term_size-0.3.0
index 1b065c3..2107ce4 100644
--- a/metadata/md5-cache/dev-rust/term_size-0.3.0
+++ b/metadata/md5-cache/dev-rust/term_size-0.3.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=611c760b759231009c177190d157e6d3
diff --git a/metadata/md5-cache/dev-rust/termcolor-0.3.6 b/metadata/md5-cache/dev-rust/termcolor-0.3.6
index efad663..ac847e2 100644
--- a/metadata/md5-cache/dev-rust/termcolor-0.3.6
+++ b/metadata/md5-cache/dev-rust/termcolor-0.3.6
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.6/r0
 SRC_URI=https://crates.io/api/v1/crates/termcolor/0.3.6/download -> termcolor-0.3.6.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=71a7755655a9ec37cc855c112e23c81b
diff --git a/metadata/md5-cache/dev-rust/termcolor-1.1.2 b/metadata/md5-cache/dev-rust/termcolor-1.1.2
index 7983737..c8529ba 100644
--- a/metadata/md5-cache/dev-rust/termcolor-1.1.2
+++ b/metadata/md5-cache/dev-rust/termcolor-1.1.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.1.2/r0
 SRC_URI=https://crates.io/api/v1/crates/termcolor/1.1.2/download -> termcolor-1.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=953ed7107cdf579f6ac70c33337ee432
diff --git a/metadata/md5-cache/dev-rust/terminal_size-0.1.12 b/metadata/md5-cache/dev-rust/terminal_size-0.1.12
new file mode 100644
index 0000000..42443ba
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/terminal_size-0.1.12
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty crate
+EAPI=7
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.12/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/termion-1.5.1 b/metadata/md5-cache/dev-rust/termion-1.5.1
index 37fce8e..2717cc2 100644
--- a/metadata/md5-cache/dev-rust/termion-1.5.1
+++ b/metadata/md5-cache/dev-rust/termion-1.5.1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.5.1/r0
 SRC_URI=https://crates.io/api/v1/crates/termion/1.5.1/download -> termion-1.5.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9da6dc2c3bdc48e4593df66c4a339c6a
diff --git a/metadata/md5-cache/dev-rust/termion-1.5.1-r1 b/metadata/md5-cache/dev-rust/termion-1.5.1-r1
index 5ea0335..57e0337 100644
--- a/metadata/md5-cache/dev-rust/termion-1.5.1-r1
+++ b/metadata/md5-cache/dev-rust/termion-1.5.1-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.5.1/r1
 SRC_URI=https://crates.io/api/v1/crates/termion/1.5.1/download -> termion-1.5.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9da6dc2c3bdc48e4593df66c4a339c6a
diff --git a/metadata/md5-cache/dev-rust/textwrap-0.11.0 b/metadata/md5-cache/dev-rust/textwrap-0.11.0
index 44217fb..d8c250b 100644
--- a/metadata/md5-cache/dev-rust/textwrap-0.11.0
+++ b/metadata/md5-cache/dev-rust/textwrap-0.11.0
@@ -1,5 +1,5 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/unicode-width-0.1*:= dev-rust/hyphenation:= dev-rust/term_size:= >=virtual/rust-1.39.0:=
+DEPEND==dev-rust/unicode-width-0.1*:= =dev-rust/hyphenation-0.7*:= =dev-rust/term_size-0.3*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Word wrapping text
 EAPI=6
 HOMEPAGE=https://github.com/mgeisler/textwrap
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.11.0/r0
 SRC_URI=https://crates.io/api/v1/crates/textwrap/0.11.0/download -> textwrap-0.11.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=cebf716bd89565e88e958c15b2bce15a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=9968c4cb1fcd2a9fa6ed08a1cae870c7
diff --git a/metadata/md5-cache/dev-rust/textwrap-0.11.0-r1 b/metadata/md5-cache/dev-rust/textwrap-0.11.0-r1
new file mode 100644
index 0000000..ca92fa1
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/textwrap-0.11.0-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/unicode-width-0.1*:= =dev-rust/hyphenation-0.7*:= =dev-rust/term_size-0.3*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Word wrapping text
+EAPI=6
+HOMEPAGE=https://github.com/mgeisler/textwrap
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.11.0/r1
+SRC_URI=https://crates.io/api/v1/crates/textwrap/0.11.0/download -> textwrap-0.11.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=9968c4cb1fcd2a9fa6ed08a1cae870c7
diff --git a/metadata/md5-cache/dev-rust/textwrap-0.12.1 b/metadata/md5-cache/dev-rust/textwrap-0.12.1
new file mode 100644
index 0000000..ae4a57a
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/textwrap-0.12.1
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/hyphenation-0.8*:= =dev-rust/terminal_size-0.1*:= =dev-rust/unicode-width-0.1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Textwrap is a library for word wrapping, indenting, and dedenting strings. You can use it to format strings (such as help and error messages) for display in commandline applications. It is designed to be efficient and handle Unicode characters correctly.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/textwrap
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND==dev-rust/hyphenation-0.8*:= =dev-rust/terminal_size-0.1*:= =dev-rust/unicode-width-0.1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.12.1/r0
+SRC_URI=https://crates.io/api/v1/crates/textwrap/0.12.1/download -> textwrap-0.12.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f00e929245a53c5b268fbb4b76155b4a
diff --git a/metadata/md5-cache/dev-rust/thiserror-1.0.20 b/metadata/md5-cache/dev-rust/thiserror-1.0.20
index 683bea4..3651397 100644
--- a/metadata/md5-cache/dev-rust/thiserror-1.0.20
+++ b/metadata/md5-cache/dev-rust/thiserror-1.0.20
@@ -6,8 +6,10 @@
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=~dev-rust/thiserror-impl-1.0.20:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.0.20/r0
 SRC_URI=https://crates.io/api/v1/crates/thiserror/1.0.20/download -> thiserror-1.0.20.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=0680505ed96d3b01a4724e61bda744d7
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=abe730d9982d647ed51b568056767f29
diff --git a/metadata/md5-cache/dev-rust/thiserror-1.0.20-r1 b/metadata/md5-cache/dev-rust/thiserror-1.0.20-r1
new file mode 100644
index 0000000..4bbd8d8
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/thiserror-1.0.20-r1
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=~dev-rust/thiserror-impl-1.0.20:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A convenient derive macro for the standard library's std::error::Error trait.
+EAPI=7
+HOMEPAGE=https://github.com/dtolnay/thiserror
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=~dev-rust/thiserror-impl-1.0.20:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=1.0.20/r1
+SRC_URI=https://crates.io/api/v1/crates/thiserror/1.0.20/download -> thiserror-1.0.20.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=abe730d9982d647ed51b568056767f29
diff --git a/metadata/md5-cache/dev-rust/thiserror-impl-1.0.20 b/metadata/md5-cache/dev-rust/thiserror-impl-1.0.20
index f2b1d49..62d9f1d 100644
--- a/metadata/md5-cache/dev-rust/thiserror-impl-1.0.20
+++ b/metadata/md5-cache/dev-rust/thiserror-impl-1.0.20
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= >=dev-rust/syn-1.0.11:= <dev-rust/syn-2.0 >=virtual/rust-1.39.0:=
+DEPEND==dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= >=dev-rust/syn-1.0.11 <dev-rust/syn-2.0:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Implementation detail of the thiserror crate
 EAPI=7
 HOMEPAGE=https://github.com/thiserror/
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= >=dev-rust/syn-1.0.11 <dev-rust/syn-2.0:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.20/r0
 SRC_URI=https://crates.io/api/v1/crates/thiserror-impl/1.0.20/download -> thiserror-impl-1.0.20.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=1bd5fb985067c60eb2b257d3d107f071
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f9037c17093542b4c8ce6dc54566e3e8
diff --git a/metadata/md5-cache/dev-rust/thiserror-impl-1.0.20-r1 b/metadata/md5-cache/dev-rust/thiserror-impl-1.0.20-r1
new file mode 100644
index 0000000..7837605
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/thiserror-impl-1.0.20-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= >=dev-rust/syn-1.0.11 <dev-rust/syn-2.0:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Implementation detail of the thiserror crate
+EAPI=7
+HOMEPAGE=https://github.com/thiserror/
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= >=dev-rust/syn-1.0.11 <dev-rust/syn-2.0:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.0.20/r1
+SRC_URI=https://crates.io/api/v1/crates/thiserror-impl/1.0.20/download -> thiserror-impl-1.0.20.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f9037c17093542b4c8ce6dc54566e3e8
diff --git a/metadata/md5-cache/dev-rust/thread-id-3.3.0 b/metadata/md5-cache/dev-rust/thread-id-3.3.0
index d053fc7..93cfe61 100644
--- a/metadata/md5-cache/dev-rust/thread-id-3.3.0
+++ b/metadata/md5-cache/dev-rust/thread-id-3.3.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=3.3.0/r0
 SRC_URI=https://crates.io/api/v1/crates/thread-id/3.3.0/download -> thread-id-3.3.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2e841f56eefde6a97112215e5ca5f3c7
diff --git a/metadata/md5-cache/dev-rust/thread_local-0.3.6 b/metadata/md5-cache/dev-rust/thread_local-0.3.6
index 09bffe3..b0a9ff3 100644
--- a/metadata/md5-cache/dev-rust/thread_local-0.3.6
+++ b/metadata/md5-cache/dev-rust/thread_local-0.3.6
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.6/r0
 SRC_URI=https://crates.io/api/v1/crates/thread_local/0.3.6/download -> thread_local-0.3.6.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=46aee761516e1d31a536c048573633aa
diff --git a/metadata/md5-cache/dev-rust/thread_local-1.0.1 b/metadata/md5-cache/dev-rust/thread_local-1.0.1
index 6c2c625..a21fe9e 100644
--- a/metadata/md5-cache/dev-rust/thread_local-1.0.1
+++ b/metadata/md5-cache/dev-rust/thread_local-1.0.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.1/r0
 SRC_URI=https://crates.io/api/v1/crates/thread_local/1.0.1/download -> thread_local-1.0.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ea20ca3fc81e5693b5ec223924647f8d
diff --git a/metadata/md5-cache/dev-rust/threadpool-1.7.1 b/metadata/md5-cache/dev-rust/threadpool-1.7.1
index 7fc1075..1f4ab9a 100644
--- a/metadata/md5-cache/dev-rust/threadpool-1.7.1
+++ b/metadata/md5-cache/dev-rust/threadpool-1.7.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.7.1/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/time-0.1.44 b/metadata/md5-cache/dev-rust/time-0.1.44
index 069524b..f7f59bd 100644
--- a/metadata/md5-cache/dev-rust/time-0.1.44
+++ b/metadata/md5-cache/dev-rust/time-0.1.44
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.44/r0
 SRC_URI=https://crates.io/api/v1/crates/time/0.1.44/download -> time-0.1.44.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=581e3a8dafd09ce3b3d3819793364afa
diff --git a/metadata/md5-cache/dev-rust/timeout-readwrite-0.3.1 b/metadata/md5-cache/dev-rust/timeout-readwrite-0.3.1
index b28aef1..d75559d 100644
--- a/metadata/md5-cache/dev-rust/timeout-readwrite-0.3.1
+++ b/metadata/md5-cache/dev-rust/timeout-readwrite-0.3.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.1/r0
 SRC_URI=https://crates.io/api/v1/crates/timeout-readwrite/0.3.1/download -> timeout-readwrite-0.3.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=35edf92f85bbad2b20c281f1d3aa64b5
diff --git a/metadata/md5-cache/dev-rust/tiny_http-0.8.0 b/metadata/md5-cache/dev-rust/tiny_http-0.8.0
index 248ae9c..581719f 100644
--- a/metadata/md5-cache/dev-rust/tiny_http-0.8.0
+++ b/metadata/md5-cache/dev-rust/tiny_http-0.8.0
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.0/r0
 SRC_URI=https://crates.io/api/v1/crates/tiny_http/0.8.0/download -> tiny_http-0.8.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3a23ec47e4d7c1cb8fc623c6b51f1ee5
diff --git a/metadata/md5-cache/dev-rust/tlsdate_dbus-0.24.52-r24 b/metadata/md5-cache/dev-rust/tlsdate_dbus-0.24.52-r24
deleted file mode 100644
index b350900..0000000
--- a/metadata/md5-cache/dev-rust/tlsdate_dbus-0.24.52-r24
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/dbus-0.8*:= dev-rust/chromeos-dbus-bindings:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Rust D-Bus bindings for tlsdate.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/tlsdate/+/master/
-IUSE=cros_host cros_workon_tree_ac75e4e94cf1c6c37833513159b83d64b3de9104 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND==dev-rust/dbus-0.8*:= dev-rust/chromeos-dbus-bindings:=
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.24.52-r24
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6cb95862fb568174718611127e4dc5da
diff --git a/metadata/md5-cache/dev-rust/tlsdate_dbus-0.24.52-r28 b/metadata/md5-cache/dev-rust/tlsdate_dbus-0.24.52-r28
new file mode 100644
index 0000000..f79422c
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/tlsdate_dbus-0.24.52-r28
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/dbus-0.9*:= dev-rust/chromeos-dbus-bindings:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Rust D-Bus bindings for tlsdate.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/tlsdate/+/master/
+IUSE=cros_host cros_workon_tree_aadb9cf0c326d4d0b1e9fd4d12b0192cdba2d8f8 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND==dev-rust/dbus-0.9*:= dev-rust/chromeos-dbus-bindings:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.24.52-r28
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3df4cbdd0ffa9dc273d37deaa8b36416
diff --git a/metadata/md5-cache/dev-rust/tlsdate_dbus-9999 b/metadata/md5-cache/dev-rust/tlsdate_dbus-9999
index 143dd24..92ea8e6 100644
--- a/metadata/md5-cache/dev-rust/tlsdate_dbus-9999
+++ b/metadata/md5-cache/dev-rust/tlsdate_dbus-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/dbus-0.8*:= dev-rust/chromeos-dbus-bindings:= >=virtual/rust-1.39.0:=
+DEPEND==dev-rust/dbus-0.9*:= dev-rust/chromeos-dbus-bindings:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Rust D-Bus bindings for tlsdate.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/tlsdate/+/master/
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND==dev-rust/dbus-0.8*:= dev-rust/chromeos-dbus-bindings:=
+RDEPEND==dev-rust/dbus-0.9*:= dev-rust/chromeos-dbus-bindings:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b9423b0265d47a17e9241c47c1a9a61b
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=eca27f5d63a6d552881db3072f17566b
diff --git a/metadata/md5-cache/dev-rust/tokio-0.1.19 b/metadata/md5-cache/dev-rust/tokio-0.1.19
index 7ed8311..4436b76 100644
--- a/metadata/md5-cache/dev-rust/tokio-0.1.19
+++ b/metadata/md5-cache/dev-rust/tokio-0.1.19
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.19/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio/0.1.19/download -> tokio-0.1.19.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a778bc093f4a6a11d73c4919a143a93f
diff --git a/metadata/md5-cache/dev-rust/tokio-0.1.22 b/metadata/md5-cache/dev-rust/tokio-0.1.22
index 1bd3224..56805ad 100644
--- a/metadata/md5-cache/dev-rust/tokio-0.1.22
+++ b/metadata/md5-cache/dev-rust/tokio-0.1.22
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.22/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio/0.1.22/download -> tokio-0.1.22.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6783985fa825414cf2e41619c33322ae
diff --git a/metadata/md5-cache/dev-rust/tokio-async-await-0.1.7 b/metadata/md5-cache/dev-rust/tokio-async-await-0.1.7
index 653e974..7e42af3 100644
--- a/metadata/md5-cache/dev-rust/tokio-async-await-0.1.7
+++ b/metadata/md5-cache/dev-rust/tokio-async-await-0.1.7
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.7/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-async-await/0.1.7/download -> tokio-async-await-0.1.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a6e8f6f933895c64f164c30191fc9878
diff --git a/metadata/md5-cache/dev-rust/tokio-buf-0.1.1 b/metadata/md5-cache/dev-rust/tokio-buf-0.1.1
index a5b70ae..3f12472 100644
--- a/metadata/md5-cache/dev-rust/tokio-buf-0.1.1
+++ b/metadata/md5-cache/dev-rust/tokio-buf-0.1.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-buf/0.1.1/download -> tokio-buf-0.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=571cb583ae79566f3a224e0f65138989
diff --git a/metadata/md5-cache/dev-rust/tokio-codec-0.1.1 b/metadata/md5-cache/dev-rust/tokio-codec-0.1.1
index b8a3f68..0962e85 100644
--- a/metadata/md5-cache/dev-rust/tokio-codec-0.1.1
+++ b/metadata/md5-cache/dev-rust/tokio-codec-0.1.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-codec/0.1.1/download -> tokio-codec-0.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fa40aef4f76716b1237b89266c460963
diff --git a/metadata/md5-cache/dev-rust/tokio-codec-0.1.2 b/metadata/md5-cache/dev-rust/tokio-codec-0.1.2
index 71221df..a7e492b 100644
--- a/metadata/md5-cache/dev-rust/tokio-codec-0.1.2
+++ b/metadata/md5-cache/dev-rust/tokio-codec-0.1.2
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.2/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-codec/0.1.2/download -> tokio-codec-0.1.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=649f63f82b91b2b5fbca24c622b79b2c
diff --git a/metadata/md5-cache/dev-rust/tokio-core-0.1.17 b/metadata/md5-cache/dev-rust/tokio-core-0.1.17
index 0cb668e..6fe9d65 100644
--- a/metadata/md5-cache/dev-rust/tokio-core-0.1.17
+++ b/metadata/md5-cache/dev-rust/tokio-core-0.1.17
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.17/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-core/0.1.17/download -> tokio-core-0.1.17.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0ae6c6a59e32dc70165d89f24facb4d0
diff --git a/metadata/md5-cache/dev-rust/tokio-core-0.1.17-r1 b/metadata/md5-cache/dev-rust/tokio-core-0.1.17-r1
index a9ce7b8..187ffca 100644
--- a/metadata/md5-cache/dev-rust/tokio-core-0.1.17-r1
+++ b/metadata/md5-cache/dev-rust/tokio-core-0.1.17-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.17/r1
 SRC_URI=https://crates.io/api/v1/crates/tokio-core/0.1.17/download -> tokio-core-0.1.17.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=cbccae00ebb4c9f84a33a1a3d4d25887
diff --git a/metadata/md5-cache/dev-rust/tokio-curl-0.1.11 b/metadata/md5-cache/dev-rust/tokio-curl-0.1.11
index ad2cd06..c381924 100644
--- a/metadata/md5-cache/dev-rust/tokio-curl-0.1.11
+++ b/metadata/md5-cache/dev-rust/tokio-curl-0.1.11
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.11/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-curl/0.1.11/download -> tokio-curl-0.1.11.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=115e87441fbc415c1a215c73235fd72d
diff --git a/metadata/md5-cache/dev-rust/tokio-curl-0.1.11-r1 b/metadata/md5-cache/dev-rust/tokio-curl-0.1.11-r1
index 6b2a39d..731bdd9 100644
--- a/metadata/md5-cache/dev-rust/tokio-curl-0.1.11-r1
+++ b/metadata/md5-cache/dev-rust/tokio-curl-0.1.11-r1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.11/r1
 SRC_URI=https://crates.io/api/v1/crates/tokio-curl/0.1.11/download -> tokio-curl-0.1.11.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=115e87441fbc415c1a215c73235fd72d
diff --git a/metadata/md5-cache/dev-rust/tokio-current-thread-0.1.6 b/metadata/md5-cache/dev-rust/tokio-current-thread-0.1.6
index 42316cc..f5ac3c7 100644
--- a/metadata/md5-cache/dev-rust/tokio-current-thread-0.1.6
+++ b/metadata/md5-cache/dev-rust/tokio-current-thread-0.1.6
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.6/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-current-thread/0.1.6/download -> tokio-current-thread-0.1.6.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8a9942685cb1bda00c650b335cc1632b
diff --git a/metadata/md5-cache/dev-rust/tokio-current-thread-0.1.7 b/metadata/md5-cache/dev-rust/tokio-current-thread-0.1.7
index c2b3d75..69928e0 100644
--- a/metadata/md5-cache/dev-rust/tokio-current-thread-0.1.7
+++ b/metadata/md5-cache/dev-rust/tokio-current-thread-0.1.7
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.7/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-current-thread/0.1.7/download -> tokio-current-thread-0.1.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6436b595df2a2b356e204b8b17499c76
diff --git a/metadata/md5-cache/dev-rust/tokio-executor-0.1.10 b/metadata/md5-cache/dev-rust/tokio-executor-0.1.10
index 391ad4a..e3c74bd 100644
--- a/metadata/md5-cache/dev-rust/tokio-executor-0.1.10
+++ b/metadata/md5-cache/dev-rust/tokio-executor-0.1.10
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.10/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-executor/0.1.10/download -> tokio-executor-0.1.10.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=98d69cf13bb5de3e8281ee374a45b5e6
diff --git a/metadata/md5-cache/dev-rust/tokio-executor-0.1.7 b/metadata/md5-cache/dev-rust/tokio-executor-0.1.7
index fb32461..f67c2e1 100644
--- a/metadata/md5-cache/dev-rust/tokio-executor-0.1.7
+++ b/metadata/md5-cache/dev-rust/tokio-executor-0.1.7
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.7/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-executor/0.1.7/download -> tokio-executor-0.1.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4092f7f5fa4315cdbfd12ccfa576a5d9
diff --git a/metadata/md5-cache/dev-rust/tokio-fs-0.1.6 b/metadata/md5-cache/dev-rust/tokio-fs-0.1.6
index 4023799..5860821 100644
--- a/metadata/md5-cache/dev-rust/tokio-fs-0.1.6
+++ b/metadata/md5-cache/dev-rust/tokio-fs-0.1.6
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.6/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-fs/0.1.6/download -> tokio-fs-0.1.6.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=69fd5f0259d039d60cf55f69f8235b45
diff --git a/metadata/md5-cache/dev-rust/tokio-fs-0.1.7 b/metadata/md5-cache/dev-rust/tokio-fs-0.1.7
index d990a32..26e872e 100644
--- a/metadata/md5-cache/dev-rust/tokio-fs-0.1.7
+++ b/metadata/md5-cache/dev-rust/tokio-fs-0.1.7
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.7/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-fs/0.1.7/download -> tokio-fs-0.1.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8b93756c960a04e7f021eaadc10e1385
diff --git a/metadata/md5-cache/dev-rust/tokio-io-0.1.12 b/metadata/md5-cache/dev-rust/tokio-io-0.1.12
index c0866fe..26a4b17 100644
--- a/metadata/md5-cache/dev-rust/tokio-io-0.1.12
+++ b/metadata/md5-cache/dev-rust/tokio-io-0.1.12
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.12/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-io/0.1.12/download -> tokio-io-0.1.12.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0890d9a71ad50becf4513b81cb2679a0
diff --git a/metadata/md5-cache/dev-rust/tokio-io-0.1.13 b/metadata/md5-cache/dev-rust/tokio-io-0.1.13
index 4bfb053..c141a0a 100644
--- a/metadata/md5-cache/dev-rust/tokio-io-0.1.13
+++ b/metadata/md5-cache/dev-rust/tokio-io-0.1.13
@@ -8,7 +8,8 @@
 LICENSE=MIT
 RDEPEND=>=dev-rust/bytes-0.4.7:= <dev-rust/bytes-0.5.0 >=dev-rust/futures-0.1.18:= <dev-rust/futures-0.2.0 =dev-rust/log-0.4*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.1.13/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-io/0.1.13/download -> tokio-io-0.1.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=eb87814171268c482eb0580d56ec0f84
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c947350bb0efeb3bfa4669b86ee699b9
diff --git a/metadata/md5-cache/dev-rust/tokio-io-0.1.9 b/metadata/md5-cache/dev-rust/tokio-io-0.1.9
index a99f116..8c67203 100644
--- a/metadata/md5-cache/dev-rust/tokio-io-0.1.9
+++ b/metadata/md5-cache/dev-rust/tokio-io-0.1.9
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.9/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e7d10f36a41e64993d9c11cc32e8200e
diff --git a/metadata/md5-cache/dev-rust/tokio-io-pool-0.1.5 b/metadata/md5-cache/dev-rust/tokio-io-pool-0.1.5
index 9eba4f2..0496294 100644
--- a/metadata/md5-cache/dev-rust/tokio-io-pool-0.1.5
+++ b/metadata/md5-cache/dev-rust/tokio-io-pool-0.1.5
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.5/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/tokio-mock-task-0.1.1 b/metadata/md5-cache/dev-rust/tokio-mock-task-0.1.1
index e0f911e..6e9eec0 100644
--- a/metadata/md5-cache/dev-rust/tokio-mock-task-0.1.1
+++ b/metadata/md5-cache/dev-rust/tokio-mock-task-0.1.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.1/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/tokio-reactor-0.1.12 b/metadata/md5-cache/dev-rust/tokio-reactor-0.1.12
index 77f4d740..c235210 100644
--- a/metadata/md5-cache/dev-rust/tokio-reactor-0.1.12
+++ b/metadata/md5-cache/dev-rust/tokio-reactor-0.1.12
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.12/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-reactor/0.1.12/download -> tokio-reactor-0.1.12.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6e3a64479ae8739ff57314fadd7e1011
diff --git a/metadata/md5-cache/dev-rust/tokio-reactor-0.1.9 b/metadata/md5-cache/dev-rust/tokio-reactor-0.1.9
index a3dcdbe..a377300 100644
--- a/metadata/md5-cache/dev-rust/tokio-reactor-0.1.9
+++ b/metadata/md5-cache/dev-rust/tokio-reactor-0.1.9
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.9/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-reactor/0.1.9/download -> tokio-reactor-0.1.9.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e24b40e1d0e626bc3f61bbe99d25c2b1
diff --git a/metadata/md5-cache/dev-rust/tokio-sync-0.1.5 b/metadata/md5-cache/dev-rust/tokio-sync-0.1.5
index 9853a42..f1f7d0c 100644
--- a/metadata/md5-cache/dev-rust/tokio-sync-0.1.5
+++ b/metadata/md5-cache/dev-rust/tokio-sync-0.1.5
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.5/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-sync/0.1.5/download -> tokio-sync-0.1.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=33caf2567283c8e8dd31461eaeec4603
diff --git a/metadata/md5-cache/dev-rust/tokio-sync-0.1.8 b/metadata/md5-cache/dev-rust/tokio-sync-0.1.8
index 0589cbf..e6cc42b 100644
--- a/metadata/md5-cache/dev-rust/tokio-sync-0.1.8
+++ b/metadata/md5-cache/dev-rust/tokio-sync-0.1.8
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.8/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-sync/0.1.8/download -> tokio-sync-0.1.8.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7b59a1b76b8c9c53bac0125080e99573
diff --git a/metadata/md5-cache/dev-rust/tokio-tcp-0.1.3 b/metadata/md5-cache/dev-rust/tokio-tcp-0.1.3
index e5fcbd1..31b6c02 100644
--- a/metadata/md5-cache/dev-rust/tokio-tcp-0.1.3
+++ b/metadata/md5-cache/dev-rust/tokio-tcp-0.1.3
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.3/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-tcp/0.1.3/download -> tokio-tcp-0.1.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f5a518ea454dc40102202ed661c36701
diff --git a/metadata/md5-cache/dev-rust/tokio-tcp-0.1.4 b/metadata/md5-cache/dev-rust/tokio-tcp-0.1.4
index 2bfa911..3bfa246 100644
--- a/metadata/md5-cache/dev-rust/tokio-tcp-0.1.4
+++ b/metadata/md5-cache/dev-rust/tokio-tcp-0.1.4
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.4/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-tcp/0.1.4/download -> tokio-tcp-0.1.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=72710045c675dc89c298ba88b9c3cb08
diff --git a/metadata/md5-cache/dev-rust/tokio-threadpool-0.1.14 b/metadata/md5-cache/dev-rust/tokio-threadpool-0.1.14
index ab69373..a9987be 100644
--- a/metadata/md5-cache/dev-rust/tokio-threadpool-0.1.14
+++ b/metadata/md5-cache/dev-rust/tokio-threadpool-0.1.14
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.14/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-threadpool/0.1.14/download -> tokio-threadpool-0.1.14.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fb3182ad41c06dac9a75d7a6ce224713
diff --git a/metadata/md5-cache/dev-rust/tokio-threadpool-0.1.18 b/metadata/md5-cache/dev-rust/tokio-threadpool-0.1.18
index 4c0cc46..553d842 100644
--- a/metadata/md5-cache/dev-rust/tokio-threadpool-0.1.18
+++ b/metadata/md5-cache/dev-rust/tokio-threadpool-0.1.18
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.18/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-threadpool/0.1.18/download -> tokio-threadpool-0.1.18.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7ac5c16172ae479589845ec4431ed402
diff --git a/metadata/md5-cache/dev-rust/tokio-timer-0.2.11 b/metadata/md5-cache/dev-rust/tokio-timer-0.2.11
index 3e9c0c8..5de30ee 100644
--- a/metadata/md5-cache/dev-rust/tokio-timer-0.2.11
+++ b/metadata/md5-cache/dev-rust/tokio-timer-0.2.11
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.11/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-timer/0.2.11/download -> tokio-timer-0.2.11.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6eb4aaad48c007876ff43d35643f2b68
diff --git a/metadata/md5-cache/dev-rust/tokio-timer-0.2.13 b/metadata/md5-cache/dev-rust/tokio-timer-0.2.13
index 1a9cc06..f386b04 100644
--- a/metadata/md5-cache/dev-rust/tokio-timer-0.2.13
+++ b/metadata/md5-cache/dev-rust/tokio-timer-0.2.13
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.13/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-timer/0.2.13/download -> tokio-timer-0.2.13.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6c4dfd99a9879a2e79ca42826e23c806
diff --git a/metadata/md5-cache/dev-rust/tokio-trace-core-0.1.0 b/metadata/md5-cache/dev-rust/tokio-trace-core-0.1.0
index d98138f..767d6aa 100644
--- a/metadata/md5-cache/dev-rust/tokio-trace-core-0.1.0
+++ b/metadata/md5-cache/dev-rust/tokio-trace-core-0.1.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.0/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-trace-core/0.1.0/download -> tokio-trace-core-0.1.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=964800fd29f9f944b985d7e81ecb5d40
diff --git a/metadata/md5-cache/dev-rust/tokio-udp-0.1.3 b/metadata/md5-cache/dev-rust/tokio-udp-0.1.3
index 44db802..90a6aca 100644
--- a/metadata/md5-cache/dev-rust/tokio-udp-0.1.3
+++ b/metadata/md5-cache/dev-rust/tokio-udp-0.1.3
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.3/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-udp/0.1.3/download -> tokio-udp-0.1.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6cefec8acdcca9a6fdd8bfe9801ba070
diff --git a/metadata/md5-cache/dev-rust/tokio-udp-0.1.6 b/metadata/md5-cache/dev-rust/tokio-udp-0.1.6
index 8f3d3fd..17ca30f 100644
--- a/metadata/md5-cache/dev-rust/tokio-udp-0.1.6
+++ b/metadata/md5-cache/dev-rust/tokio-udp-0.1.6
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.6/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-udp/0.1.6/download -> tokio-udp-0.1.6.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2586f76fc622c09fc0ed18e711d0ae35
diff --git a/metadata/md5-cache/dev-rust/tokio-uds-0.2.5 b/metadata/md5-cache/dev-rust/tokio-uds-0.2.5
index 5d15c71..7bf765d 100644
--- a/metadata/md5-cache/dev-rust/tokio-uds-0.2.5
+++ b/metadata/md5-cache/dev-rust/tokio-uds-0.2.5
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.5/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-uds/0.2.5/download -> tokio-uds-0.2.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=32b9cfe9fafd648820af9b47dcd39449
diff --git a/metadata/md5-cache/dev-rust/tokio-uds-0.2.7 b/metadata/md5-cache/dev-rust/tokio-uds-0.2.7
index 5062e70..0c5e290 100644
--- a/metadata/md5-cache/dev-rust/tokio-uds-0.2.7
+++ b/metadata/md5-cache/dev-rust/tokio-uds-0.2.7
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.7/r0
 SRC_URI=https://crates.io/api/v1/crates/tokio-uds/0.2.7/download -> tokio-uds-0.2.7.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=571b753c8fe37ea457baca41b8ed4ced
diff --git a/metadata/md5-cache/dev-rust/toml-0.5.1 b/metadata/md5-cache/dev-rust/toml-0.5.1
index bf10969..9eb6741 100644
--- a/metadata/md5-cache/dev-rust/toml-0.5.1
+++ b/metadata/md5-cache/dev-rust/toml-0.5.1
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.5.1/r0
 SRC_URI=https://crates.io/api/v1/crates/toml/0.5.1/download -> toml-0.5.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=cf38af70435e678ddaf04e7f23826002
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=0f8f8d7dcb6f265d3f8774b712726649
diff --git a/metadata/md5-cache/dev-rust/tracing-core-0.1.0 b/metadata/md5-cache/dev-rust/tracing-core-0.1.0
index 04fbea1..270346f 100644
--- a/metadata/md5-cache/dev-rust/tracing-core-0.1.0
+++ b/metadata/md5-cache/dev-rust/tracing-core-0.1.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/trust-dns-proto-0.7.3 b/metadata/md5-cache/dev-rust/trust-dns-proto-0.7.3
index 0b90def..557647b 100644
--- a/metadata/md5-cache/dev-rust/trust-dns-proto-0.7.3
+++ b/metadata/md5-cache/dev-rust/trust-dns-proto-0.7.3
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/byteorder-1*:= =dev-rust/enum-as-inner-0.2*:= =dev-rust/failure-0.1*:= =dev-rust/futures-0.1*:= =dev-rust/idna-0.1*:= =dev-rust/lazy_static-1*:= =dev-rust/log-0.4*:= =dev-rust/rand-0.6*:= =dev-rust/smallvec-0.6*:= =dev-rust/socket2-0.3*:= =dev-rust/tokio-executor-0.1*:= =dev-rust/tokio-io-0.1*:= =dev-rust/tokio-reactor-0.1*:= =dev-rust/tokio-tcp-0.1*:= =dev-rust/tokio-timer-0.2*:= =dev-rust/tokio-udp-0.1*:= =dev-rust/url-1*:= =dev-rust/data-encoding-2*:= =dev-rust/openssl-0.10*:= =dev-rust/ring-0.14*:= =dev-rust/serde-1*:= =dev-rust/untrusted-0.6*:= =dev-rust/env_logger-0.6*:= =dev-rust/tokio-0.1*:= >=virtual/rust-1.39.0:=
+DEPEND==dev-rust/byteorder-1*:= =dev-rust/data-encoding-2*:= =dev-rust/enum-as-inner-0.2*:= =dev-rust/failure-0.1*:= =dev-rust/futures-0.1*:= =dev-rust/idna-0.1*:= =dev-rust/lazy_static-1*:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= =dev-rust/rand-0.6*:= =dev-rust/smallvec-0.6*:= =dev-rust/socket2-0.3*:= =dev-rust/tokio-executor-0.1*:= =dev-rust/tokio-io-0.1*:= =dev-rust/tokio-reactor-0.1*:= =dev-rust/tokio-tcp-0.1*:= =dev-rust/tokio-timer-0.2*:= =dev-rust/tokio-udp-0.1*:= =dev-rust/url-1*:= =dev-rust/ring-0.14*:= =dev-rust/serde-1*:= =dev-rust/untrusted-0.6*:= =dev-rust/env_logger-0.6*:= =dev-rust/tokio-0.1*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=DNS protocol library and implementation for Trust-DNS
-EAPI=6
+EAPI=7
 HOMEPAGE=http://www.trust-dns.org/index.html
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/byteorder-1*:= =dev-rust/data-encoding-2*:= =dev-rust/enum-as-inner-0.2*:= =dev-rust/failure-0.1*:= =dev-rust/futures-0.1*:= =dev-rust/idna-0.1*:= =dev-rust/lazy_static-1*:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= =dev-rust/rand-0.6*:= =dev-rust/smallvec-0.6*:= =dev-rust/socket2-0.3*:= =dev-rust/tokio-executor-0.1*:= =dev-rust/tokio-io-0.1*:= =dev-rust/tokio-reactor-0.1*:= =dev-rust/tokio-tcp-0.1*:= =dev-rust/tokio-timer-0.2*:= =dev-rust/tokio-udp-0.1*:= =dev-rust/url-1*:= =dev-rust/ring-0.14*:= =dev-rust/serde-1*:= =dev-rust/untrusted-0.6*:= =dev-rust/env_logger-0.6*:= =dev-rust/tokio-0.1*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.3/r0
 SRC_URI=https://crates.io/api/v1/crates/trust-dns-proto/0.7.3/download -> trust-dns-proto-0.7.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=b3c5a54e108814fc8c9875ecd402e94e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b2a62db9078a6a3ffc0c1f01b07c3e18
diff --git a/metadata/md5-cache/dev-rust/trust-dns-proto-0.7.3-r3 b/metadata/md5-cache/dev-rust/trust-dns-proto-0.7.3-r3
index 9939ec1..fd4598e 100644
--- a/metadata/md5-cache/dev-rust/trust-dns-proto-0.7.3-r3
+++ b/metadata/md5-cache/dev-rust/trust-dns-proto-0.7.3-r3
@@ -1,13 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/byteorder-1*:= =dev-rust/enum-as-inner-0.2*:= =dev-rust/failure-0.1*:= =dev-rust/futures-0.1*:= =dev-rust/idna-0.1*:= =dev-rust/lazy_static-1*:= =dev-rust/log-0.4*:= =dev-rust/rand-0.6*:= =dev-rust/smallvec-0.6*:= =dev-rust/socket2-0.3*:= =dev-rust/tokio-executor-0.1*:= =dev-rust/tokio-io-0.1*:= =dev-rust/tokio-reactor-0.1*:= =dev-rust/tokio-tcp-0.1*:= =dev-rust/tokio-timer-0.2*:= =dev-rust/tokio-udp-0.1*:= =dev-rust/url-1*:= =dev-rust/data-encoding-2*:= =dev-rust/openssl-0.10*:= =dev-rust/ring-0.14*:= =dev-rust/serde-1*:= =dev-rust/untrusted-0.6*:= =dev-rust/env_logger-0.6*:= =dev-rust/tokio-0.1*:= >=virtual/rust-1.39.0:=
+DEPEND==dev-rust/byteorder-1*:= =dev-rust/data-encoding-2*:= =dev-rust/enum-as-inner-0.2*:= =dev-rust/failure-0.1*:= =dev-rust/futures-0.1*:= =dev-rust/idna-0.1*:= =dev-rust/lazy_static-1*:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= =dev-rust/rand-0.6*:= =dev-rust/smallvec-0.6*:= =dev-rust/socket2-0.3*:= =dev-rust/tokio-executor-0.1*:= =dev-rust/tokio-io-0.1*:= =dev-rust/tokio-reactor-0.1*:= =dev-rust/tokio-tcp-0.1*:= =dev-rust/tokio-timer-0.2*:= =dev-rust/tokio-udp-0.1*:= =dev-rust/url-1*:= =dev-rust/ring-0.14*:= =dev-rust/serde-1*:= =dev-rust/untrusted-0.6*:= =dev-rust/env_logger-0.6*:= =dev-rust/tokio-0.1*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=DNS protocol library and implementation for Trust-DNS
-EAPI=6
+EAPI=7
 HOMEPAGE=http://www.trust-dns.org/index.html
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/byteorder-1*:= =dev-rust/data-encoding-2*:= =dev-rust/enum-as-inner-0.2*:= =dev-rust/failure-0.1*:= =dev-rust/futures-0.1*:= =dev-rust/idna-0.1*:= =dev-rust/lazy_static-1*:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= =dev-rust/rand-0.6*:= =dev-rust/smallvec-0.6*:= =dev-rust/socket2-0.3*:= =dev-rust/tokio-executor-0.1*:= =dev-rust/tokio-io-0.1*:= =dev-rust/tokio-reactor-0.1*:= =dev-rust/tokio-tcp-0.1*:= =dev-rust/tokio-timer-0.2*:= =dev-rust/tokio-udp-0.1*:= =dev-rust/url-1*:= =dev-rust/ring-0.14*:= =dev-rust/serde-1*:= =dev-rust/untrusted-0.6*:= =dev-rust/env_logger-0.6*:= =dev-rust/tokio-0.1*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.3/r3
 SRC_URI=https://crates.io/api/v1/crates/trust-dns-proto/0.7.3/download -> trust-dns-proto-0.7.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=b3c5a54e108814fc8c9875ecd402e94e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b2a62db9078a6a3ffc0c1f01b07c3e18
diff --git a/metadata/md5-cache/dev-rust/trust-dns-proto-0.7.3-r4 b/metadata/md5-cache/dev-rust/trust-dns-proto-0.7.3-r4
new file mode 100644
index 0000000..1aaebdd
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/trust-dns-proto-0.7.3-r4
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/byteorder-1*:= =dev-rust/data-encoding-2*:= =dev-rust/enum-as-inner-0.2*:= =dev-rust/failure-0.1*:= =dev-rust/futures-0.1*:= =dev-rust/idna-0.1*:= =dev-rust/lazy_static-1*:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= =dev-rust/rand-0.6*:= =dev-rust/smallvec-0.6*:= =dev-rust/socket2-0.3*:= =dev-rust/tokio-executor-0.1*:= =dev-rust/tokio-io-0.1*:= =dev-rust/tokio-reactor-0.1*:= =dev-rust/tokio-tcp-0.1*:= =dev-rust/tokio-timer-0.2*:= =dev-rust/tokio-udp-0.1*:= =dev-rust/url-1*:= =dev-rust/ring-0.14*:= =dev-rust/serde-1*:= =dev-rust/untrusted-0.6*:= =dev-rust/env_logger-0.6*:= =dev-rust/tokio-0.1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=DNS protocol library and implementation for Trust-DNS
+EAPI=7
+HOMEPAGE=http://www.trust-dns.org/index.html
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/byteorder-1*:= =dev-rust/data-encoding-2*:= =dev-rust/enum-as-inner-0.2*:= =dev-rust/failure-0.1*:= =dev-rust/futures-0.1*:= =dev-rust/idna-0.1*:= =dev-rust/lazy_static-1*:= =dev-rust/log-0.4*:= =dev-rust/openssl-0.10*:= =dev-rust/rand-0.6*:= =dev-rust/smallvec-0.6*:= =dev-rust/socket2-0.3*:= =dev-rust/tokio-executor-0.1*:= =dev-rust/tokio-io-0.1*:= =dev-rust/tokio-reactor-0.1*:= =dev-rust/tokio-tcp-0.1*:= =dev-rust/tokio-timer-0.2*:= =dev-rust/tokio-udp-0.1*:= =dev-rust/url-1*:= =dev-rust/ring-0.14*:= =dev-rust/serde-1*:= =dev-rust/untrusted-0.6*:= =dev-rust/env_logger-0.6*:= =dev-rust/tokio-0.1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.7.3/r4
+SRC_URI=https://crates.io/api/v1/crates/trust-dns-proto/0.7.3/download -> trust-dns-proto-0.7.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b2a62db9078a6a3ffc0c1f01b07c3e18
diff --git a/metadata/md5-cache/dev-rust/try-lock-0.2.2 b/metadata/md5-cache/dev-rust/try-lock-0.2.2
index 6c721cb..6896efa 100644
--- a/metadata/md5-cache/dev-rust/try-lock-0.2.2
+++ b/metadata/md5-cache/dev-rust/try-lock-0.2.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.2/r0
 SRC_URI=https://crates.io/api/v1/crates/try-lock/0.2.2/download -> try-lock-0.2.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a74949c691cb6e85a9d7422c5b12a5b2
diff --git a/metadata/md5-cache/dev-rust/typenum-1.13.0 b/metadata/md5-cache/dev-rust/typenum-1.13.0
new file mode 100644
index 0000000..e8117f4b
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/typenum-1.13.0
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Typenum is a Rust library for type-level numbers evaluated at compile time. It currently supports bits, unsigned integers, and signed integers. It also provides a type-level array of type-level numbers, but its implementation is incomplete.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/typenum
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.13.0/r0
+SRC_URI=https://crates.io/api/v1/crates/typenum/1.13.0/download -> typenum-1.13.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=44858b73f473362fd8570d683dadd347
diff --git a/metadata/md5-cache/dev-rust/ucd-util-0.1.3 b/metadata/md5-cache/dev-rust/ucd-util-0.1.3
index 37b959c..4106a57 100644
--- a/metadata/md5-cache/dev-rust/ucd-util-0.1.3
+++ b/metadata/md5-cache/dev-rust/ucd-util-0.1.3
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.3/r0
 SRC_URI=https://crates.io/api/v1/crates/ucd-util/0.1.3/download -> ucd-util-0.1.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=960bc995639964fcf318d0c60f78732f
diff --git a/metadata/md5-cache/dev-rust/ufmt-0.1.0 b/metadata/md5-cache/dev-rust/ufmt-0.1.0
new file mode 100644
index 0000000..8a403f8
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/ufmt-0.1.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/proc-macro-hack-0.5.11:= <dev-rust/proc-macro-hack-0.6.0 =dev-rust/ufmt-macros-0.1*:= =dev-rust/ufmt-write-0.1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A (6-40x) smaller, (2-9x) faster and panic-free alternative to "core::fmt"
+EAPI=7
+HOMEPAGE=https://crates.io/crates/ufmt
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/proc-macro-hack-0.5.11:= <dev-rust/proc-macro-hack-0.6.0 =dev-rust/ufmt-macros-0.1*:= =dev-rust/ufmt-write-0.1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.0/r0
+SRC_URI=https://crates.io/api/v1/crates/ufmt/0.1.0/download -> ufmt-0.1.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=48331cc92d0d8cb5d4d27d9bc581ce71
diff --git a/metadata/md5-cache/dev-rust/ufmt-macros-0.1.1 b/metadata/md5-cache/dev-rust/ufmt-macros-0.1.1
new file mode 100644
index 0000000..ed30824
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/ufmt-macros-0.1.1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/proc-macro-hack-0.5.11:= <dev-rust/proc-macro-hack-0.6.0 =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION="μfmt" macros
+EAPI=7
+HOMEPAGE=https://crates.io/crates/ufmt-macros
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/proc-macro-hack-0.5.11:= <dev-rust/proc-macro-hack-0.6.0 =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.1/r0
+SRC_URI=https://crates.io/api/v1/crates/ufmt-macros/0.1.1/download -> ufmt-macros-0.1.1.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2d2adbb5130fe3a13f1d7637d990feba
diff --git a/metadata/md5-cache/dev-rust/ufmt-write-0.1.0 b/metadata/md5-cache/dev-rust/ufmt-write-0.1.0
new file mode 100644
index 0000000..09e4edb
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/ufmt-write-0.1.0
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION="μfmt""s "uWrite" trait
+EAPI=7
+HOMEPAGE=https://crates.io/crates/ufmt-write
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.0/r0
+SRC_URI=https://crates.io/api/v1/crates/ufmt-write/0.1.0/download -> ufmt-write-0.1.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=85d8a3f7f5cd03b808172b558ac61238
diff --git a/metadata/md5-cache/dev-rust/unicase-2.4.0 b/metadata/md5-cache/dev-rust/unicase-2.4.0
index 186d7bf..06cc9ae 100644
--- a/metadata/md5-cache/dev-rust/unicase-2.4.0
+++ b/metadata/md5-cache/dev-rust/unicase-2.4.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.4.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/unicase-2.6.0 b/metadata/md5-cache/dev-rust/unicase-2.6.0
new file mode 100644
index 0000000..753d79c
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/unicase-2.6.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/version_check-0.9*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A case-insensitive wrapper around strings.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/unicase
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/version_check-0.9*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=2.6.0/r0
+SRC_URI=https://crates.io/api/v1/crates/unicase/2.6.0/download -> unicase-2.6.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=68da227e2adb06d23b318ce6576fb476
diff --git a/metadata/md5-cache/dev-rust/unicode-bidi-0.3.4 b/metadata/md5-cache/dev-rust/unicode-bidi-0.3.4
index 7cc75a9..b45d7aa 100644
--- a/metadata/md5-cache/dev-rust/unicode-bidi-0.3.4
+++ b/metadata/md5-cache/dev-rust/unicode-bidi-0.3.4
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.4/r0
 SRC_URI=https://crates.io/api/v1/crates/unicode-bidi/0.3.4/download -> unicode-bidi-0.3.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4bb4d7ea16db1e0822146a7a1d8f8cc3
diff --git a/metadata/md5-cache/dev-rust/unicode-normalization-0.1.8 b/metadata/md5-cache/dev-rust/unicode-normalization-0.1.8
index f0a5d22..e68932d 100644
--- a/metadata/md5-cache/dev-rust/unicode-normalization-0.1.8
+++ b/metadata/md5-cache/dev-rust/unicode-normalization-0.1.8
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.1.8/r0
 SRC_URI=https://crates.io/api/v1/crates/unicode-normalization/0.1.8/download -> unicode-normalization-0.1.8.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=d2f03972966fda993b7579a9208909c1
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=8f382f638fd805ce4ec567489a7e3edc
diff --git a/metadata/md5-cache/dev-rust/unicode-segmentation-1.5.0 b/metadata/md5-cache/dev-rust/unicode-segmentation-1.5.0
index 641ef3a..6599423 100644
--- a/metadata/md5-cache/dev-rust/unicode-segmentation-1.5.0
+++ b/metadata/md5-cache/dev-rust/unicode-segmentation-1.5.0
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.5.0/r0
 SRC_URI=https://crates.io/api/v1/crates/unicode-segmentation/1.5.0/download -> unicode-segmentation-1.5.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4be712a5d5897506e3a7f5c13cadf51d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f59a233b2ee194886cad70730d841077
diff --git a/metadata/md5-cache/dev-rust/unicode-segmentation-1.8.0 b/metadata/md5-cache/dev-rust/unicode-segmentation-1.8.0
new file mode 100644
index 0000000..5552b46
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/unicode-segmentation-1.8.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=This crate provides Grapheme Cluster, Word and Sentence boundaries according to Unicode Standard Annex #29 rules.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/unicode-segmentation
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=1.8.0/r0
+SRC_URI=https://crates.io/api/v1/crates/unicode-segmentation/1.8.0/download -> unicode-segmentation-1.8.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=de12314ab2b7a89fde39e74c0a239238
diff --git a/metadata/md5-cache/dev-rust/unicode-width-0.1.8 b/metadata/md5-cache/dev-rust/unicode-width-0.1.8
index b498c05..7c2c10f 100644
--- a/metadata/md5-cache/dev-rust/unicode-width-0.1.8
+++ b/metadata/md5-cache/dev-rust/unicode-width-0.1.8
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.8/r0
 SRC_URI=https://crates.io/api/v1/crates/unicode-width/0.1.8/download -> unicode-width-0.1.8.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3723a2720b4ab67162750600f7d6e437
diff --git a/metadata/md5-cache/dev-rust/unicode-xid-0.1.0 b/metadata/md5-cache/dev-rust/unicode-xid-0.1.0
index e136d91..7d68640 100644
--- a/metadata/md5-cache/dev-rust/unicode-xid-0.1.0
+++ b/metadata/md5-cache/dev-rust/unicode-xid-0.1.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.0/r0
 SRC_URI=https://crates.io/api/v1/crates/unicode-xid/0.1.0/download -> unicode-xid-0.1.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=587c9313949826bc56180f397b1b754d
diff --git a/metadata/md5-cache/dev-rust/unicode-xid-0.2.0 b/metadata/md5-cache/dev-rust/unicode-xid-0.2.0
index 2f79be6..159b620 100644
--- a/metadata/md5-cache/dev-rust/unicode-xid-0.2.0
+++ b/metadata/md5-cache/dev-rust/unicode-xid-0.2.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.0/r0
 SRC_URI=https://crates.io/api/v1/crates/unicode-xid/0.2.0/download -> unicode-xid-0.2.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8ee881ad43a2f02afa08b035d13f98b3
diff --git a/metadata/md5-cache/dev-rust/unicode-xid-0.2.2 b/metadata/md5-cache/dev-rust/unicode-xid-0.2.2
index 5289ab3..3b4a0ec 100644
--- a/metadata/md5-cache/dev-rust/unicode-xid-0.2.2
+++ b/metadata/md5-cache/dev-rust/unicode-xid-0.2.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.2/r0
 SRC_URI=https://crates.io/api/v1/crates/unicode-xid/0.2.2/download -> unicode-xid-0.2.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=419f2d1a564596b7d7dded89ea841f91
diff --git a/metadata/md5-cache/dev-rust/unix_socket-0.5.0 b/metadata/md5-cache/dev-rust/unix_socket-0.5.0
index cdadfec..7be679e 100644
--- a/metadata/md5-cache/dev-rust/unix_socket-0.5.0
+++ b/metadata/md5-cache/dev-rust/unix_socket-0.5.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.5.0/r0
 SRC_URI=https://crates.io/api/v1/crates/unix_socket/0.5.0/download -> unix_socket-0.5.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e02db72fd402939ed4ea6411b039a16f
diff --git a/metadata/md5-cache/dev-rust/untrusted-0.6.2 b/metadata/md5-cache/dev-rust/untrusted-0.6.2
index 65a8020..bd0dc1f 100644
--- a/metadata/md5-cache/dev-rust/untrusted-0.6.2
+++ b/metadata/md5-cache/dev-rust/untrusted-0.6.2
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.6.2/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/url-1.7.2 b/metadata/md5-cache/dev-rust/url-1.7.2
index 92c32bf..498857d 100644
--- a/metadata/md5-cache/dev-rust/url-1.7.2
+++ b/metadata/md5-cache/dev-rust/url-1.7.2
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.7.2/r0
 SRC_URI=https://crates.io/api/v1/crates/url/1.7.2/download -> url-1.7.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=542ef9d0180d5f1d919074b7a180ba4f
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=906cf34114f4dbc00b2fdb0b65476471
diff --git a/metadata/md5-cache/dev-rust/url-2.0.0 b/metadata/md5-cache/dev-rust/url-2.0.0
index cf9266a..629603e 100644
--- a/metadata/md5-cache/dev-rust/url-2.0.0
+++ b/metadata/md5-cache/dev-rust/url-2.0.0
@@ -7,5 +7,5 @@
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.0.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a24171f2ba7b7f5d00b155293ff5debe
diff --git a/metadata/md5-cache/dev-rust/utf8-ranges-1.0.4 b/metadata/md5-cache/dev-rust/utf8-ranges-1.0.4
index c3f58f7..db72ab3 100644
--- a/metadata/md5-cache/dev-rust/utf8-ranges-1.0.4
+++ b/metadata/md5-cache/dev-rust/utf8-ranges-1.0.4
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.4/r0
 SRC_URI=https://crates.io/api/v1/crates/utf8-ranges/1.0.4/download -> utf8-ranges-1.0.4.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d5912f223591d9280a0337da4bd0d63d
diff --git a/metadata/md5-cache/dev-rust/utf8parse-0.2.0 b/metadata/md5-cache/dev-rust/utf8parse-0.2.0
index d553b5a..f59bb16 100644
--- a/metadata/md5-cache/dev-rust/utf8parse-0.2.0
+++ b/metadata/md5-cache/dev-rust/utf8parse-0.2.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.0/r0
 SRC_URI=https://crates.io/api/v1/crates/utf8parse/0.2.0/download -> utf8parse-0.2.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=431193648756458a73024e44354fc630
diff --git a/metadata/md5-cache/dev-rust/uuid-0.7.4 b/metadata/md5-cache/dev-rust/uuid-0.7.4
index 78ca36e..220c72c 100644
--- a/metadata/md5-cache/dev-rust/uuid-0.7.4
+++ b/metadata/md5-cache/dev-rust/uuid-0.7.4
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.7.4/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/uuid-0.8.2 b/metadata/md5-cache/dev-rust/uuid-0.8.2
new file mode 100644
index 0000000..1a53f48
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/uuid-0.8.2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/getrandom-0.2*:= =dev-rust/md5-0.7*:= >=dev-rust/serde-1.0.56:= <dev-rust/serde-2.0.0 =dev-rust/sha1-0.6*:= =dev-rust/slog-2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A library to generate and parse UUIDs.
+EAPI=7
+HOMEPAGE=https://github.com/uuid-rs/uuid
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( Apache-2.0 MIT )
+RDEPEND==dev-rust/getrandom-0.2*:= =dev-rust/md5-0.7*:= >=dev-rust/serde-1.0.56:= <dev-rust/serde-2.0.0 =dev-rust/sha1-0.6*:= =dev-rust/slog-2*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.8.2/r0
+SRC_URI=https://crates.io/api/v1/crates/uuid/0.8.2/download -> uuid-0.8.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d0905e518b21bed7a50d2a7e6f4c6f2e
diff --git a/metadata/md5-cache/dev-rust/value-bag-1.0.0 b/metadata/md5-cache/dev-rust/value-bag-1.0.0
index e48e1ec3..ecea522e 100644
--- a/metadata/md5-cache/dev-rust/value-bag-1.0.0
+++ b/metadata/md5-cache/dev-rust/value-bag-1.0.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2bde60a80008a5717cc088362983971e
diff --git a/metadata/md5-cache/dev-rust/vcell-0.1.3 b/metadata/md5-cache/dev-rust/vcell-0.1.3
new file mode 100644
index 0000000..8879a0c
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/vcell-0.1.3
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION="Cell" with volatile read / write operations
+EAPI=7
+HOMEPAGE=https://crates.io/crates/vcell
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.1.3/r0
+SRC_URI=https://crates.io/api/v1/crates/vcell/0.1.3/download -> vcell-0.1.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b5b7f045e5dd11b61adcaf124f65992e
diff --git a/metadata/md5-cache/dev-rust/vcpkg-0.2.11 b/metadata/md5-cache/dev-rust/vcpkg-0.2.11
index 2cc8306..c22942a 100644
--- a/metadata/md5-cache/dev-rust/vcpkg-0.2.11
+++ b/metadata/md5-cache/dev-rust/vcpkg-0.2.11
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=!=dev-rust/vcpkg-0.2*
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.2.11/r0
 SRC_URI=https://crates.io/api/v1/crates/vcpkg/0.2.11/download -> vcpkg-0.2.11.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5ccd65394565b763e0bcd515c9849993
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6809328d40953f45487700c6d7d0cf9b
diff --git a/metadata/md5-cache/dev-rust/vcpkg-0.2.11-r1 b/metadata/md5-cache/dev-rust/vcpkg-0.2.11-r1
index 3374651..da1f395 100644
--- a/metadata/md5-cache/dev-rust/vcpkg-0.2.11-r1
+++ b/metadata/md5-cache/dev-rust/vcpkg-0.2.11-r1
@@ -8,7 +8,8 @@
 LICENSE=|| ( MIT Apache-2.0 )
 RDEPEND=!=dev-rust/vcpkg-0.2*
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.2.11/r1
 SRC_URI=https://crates.io/api/v1/crates/vcpkg/0.2.11/download -> vcpkg-0.2.11.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5ccd65394565b763e0bcd515c9849993
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6809328d40953f45487700c6d7d0cf9b
diff --git a/metadata/md5-cache/dev-rust/vec_map-0.8.2 b/metadata/md5-cache/dev-rust/vec_map-0.8.2
index 99651ee..20012e5 100644
--- a/metadata/md5-cache/dev-rust/vec_map-0.8.2
+++ b/metadata/md5-cache/dev-rust/vec_map-0.8.2
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.2/r0
 SRC_URI=https://crates.io/api/v1/crates/vec_map/0.8.2/download -> vec_map-0.8.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2ed4ffa41b94ee958505e06f628dfbf5
diff --git a/metadata/md5-cache/dev-rust/version-sync-0.8.0 b/metadata/md5-cache/dev-rust/version-sync-0.8.0
new file mode 100644
index 0000000..18185be
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/version-sync-0.8.0
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Empty version-sync crate
+EAPI=7
+HOMEPAGE=https://github.com/bheisler/criterion.rs
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.8.0/r0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c648570a45c1b0c9bc5938c9f3d46062
diff --git a/metadata/md5-cache/dev-rust/version_check-0.9.2 b/metadata/md5-cache/dev-rust/version_check-0.9.2
index 3d43f96..4829cfb 100644
--- a/metadata/md5-cache/dev-rust/version_check-0.9.2
+++ b/metadata/md5-cache/dev-rust/version_check-0.9.2
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.9.2/r0
 SRC_URI=https://crates.io/api/v1/crates/version_check/0.9.2/download -> version_check-0.9.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2a57fc3c64c0e3378e5aa22a8cd14224
diff --git a/metadata/md5-cache/dev-rust/version_check-0.9.3 b/metadata/md5-cache/dev-rust/version_check-0.9.3
new file mode 100644
index 0000000..2b95c38
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/version_check-0.9.3
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=virtual/rust-1.39.0:=
+DESCRIPTION=Tiny crate to check the version of the installed/running rustc.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/version_check
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.9.3/r0
+SRC_URI=https://crates.io/api/v1/crates/version_check/0.9.3/download -> version_check-0.9.3.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=73787f10e9c968621c5f12de2b3b6b39
diff --git a/metadata/md5-cache/dev-rust/vm-memory-0.2.0 b/metadata/md5-cache/dev-rust/vm-memory-0.2.0
index 417d9bb..280c3a8 100644
--- a/metadata/md5-cache/dev-rust/vm-memory-0.2.0
+++ b/metadata/md5-cache/dev-rust/vm-memory-0.2.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.0/r0
 SRC_URI=https://crates.io/api/v1/crates/vm-memory/0.2.0/download -> vm-memory-0.2.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=0ca50b8fea9bf935678c87d863da2cb3
diff --git a/metadata/md5-cache/dev-rust/vmm_vhost-0.1.0-r2 b/metadata/md5-cache/dev-rust/vmm_vhost-0.1.0-r2
deleted file mode 100644
index 4b4a6a0..0000000
--- a/metadata/md5-cache/dev-rust/vmm_vhost-0.1.0-r2
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/bitflags-1.0.1:= >=dev-rust/libc-0.2.39:= dev-rust/sys_util:= dev-rust/tempfile:= =dev-rust/vm-memory-0.2*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=A crate to support vhost backend drivers for virtio devices.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/rust-vmm/vhost/
-IUSE=cros_host cros_workon_tree_57e82370048b45b2bda2712eea78487d9d65a61c cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=Apache-2.0 BSD
-PROPERTIES=live
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r2
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8cd5fc5b48fa763ea198319917498d24
diff --git a/metadata/md5-cache/dev-rust/vmm_vhost-0.1.0-r7 b/metadata/md5-cache/dev-rust/vmm_vhost-0.1.0-r7
new file mode 100644
index 0000000..d16266d
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/vmm_vhost-0.1.0-r7
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/bitflags-1.0.1:= >=dev-rust/libc-0.2.39:= dev-rust/sys_util:= dev-rust/tempfile:= =dev-rust/vm-memory-0.2*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=A crate to support vhost backend drivers for virtio devices.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/rust-vmm/vhost/
+IUSE=cros_host cros_workon_tree_a0c6dc038819e9dd54e27179e55fad201719ec77 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=Apache-2.0 BSD
+PROPERTIES=live
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r7
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c8c8976108b81aba11ddfc8f7876b0cb
diff --git a/metadata/md5-cache/dev-rust/vmm_vhost-9999 b/metadata/md5-cache/dev-rust/vmm_vhost-9999
index cbdf760..c6ebf57 100644
--- a/metadata/md5-cache/dev-rust/vmm_vhost-9999
+++ b/metadata/md5-cache/dev-rust/vmm_vhost-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2ef14d4d1df82aaa27280967f9ee39f1
diff --git a/metadata/md5-cache/dev-rust/void-1.0.2 b/metadata/md5-cache/dev-rust/void-1.0.2
index 83e5c55..61e244a 100644
--- a/metadata/md5-cache/dev-rust/void-1.0.2
+++ b/metadata/md5-cache/dev-rust/void-1.0.2
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=1.0.2/r0
 SRC_URI=https://crates.io/api/v1/crates/void/1.0.2/download -> void-1.0.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ac82e3a5c83fc235af862be3d14ac113
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=657b30881542a7319d849769cabaf979
diff --git a/metadata/md5-cache/dev-rust/volatile-register-0.2.0 b/metadata/md5-cache/dev-rust/volatile-register-0.2.0
new file mode 100644
index 0000000..7f746e4
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/volatile-register-0.2.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/vcell-0.1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Volatile access to memory mapped hardware registers
+EAPI=7
+HOMEPAGE=https://crates.io/crates/volatile-register
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND==dev-rust/vcell-0.1*:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0.2.0/r0
+SRC_URI=https://crates.io/api/v1/crates/volatile-register/0.2.0/download -> volatile-register-0.2.0.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=03f56e6f25feadee1e6ecbcf148dd297
diff --git a/metadata/md5-cache/dev-rust/walkdir-2.2.5 b/metadata/md5-cache/dev-rust/walkdir-2.2.5
index c1a34cf..d3279c7 100644
--- a/metadata/md5-cache/dev-rust/walkdir-2.2.5
+++ b/metadata/md5-cache/dev-rust/walkdir-2.2.5
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=2.2.5/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3216b88f05a479ae38768636000c5f30
diff --git a/metadata/md5-cache/dev-rust/want-0.2.0 b/metadata/md5-cache/dev-rust/want-0.2.0
index c815f14..b622bb1 100644
--- a/metadata/md5-cache/dev-rust/want-0.2.0
+++ b/metadata/md5-cache/dev-rust/want-0.2.0
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.0/r0
 SRC_URI=https://crates.io/api/v1/crates/want/0.2.0/download -> want-0.2.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=45904c3b43e35e7446bffc2f68bbc86b
diff --git a/metadata/md5-cache/dev-rust/wasi-0.10.0 b/metadata/md5-cache/dev-rust/wasi-0.10.0
index 97798f9..b0b98a6 100644
--- a/metadata/md5-cache/dev-rust/wasi-0.10.0
+++ b/metadata/md5-cache/dev-rust/wasi-0.10.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.10.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/wasi-0.9.0 b/metadata/md5-cache/dev-rust/wasi-0.9.0
index 239b6d0..94fcbaf 100644
--- a/metadata/md5-cache/dev-rust/wasi-0.9.0
+++ b/metadata/md5-cache/dev-rust/wasi-0.9.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.9.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/wasm-bindgen-0.2.68 b/metadata/md5-cache/dev-rust/wasm-bindgen-0.2.68
index 1678521..5444563 100644
--- a/metadata/md5-cache/dev-rust/wasm-bindgen-0.2.68
+++ b/metadata/md5-cache/dev-rust/wasm-bindgen-0.2.68
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.68/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/which-3.1.1 b/metadata/md5-cache/dev-rust/which-3.1.1
index e4948c9..df16ff3 100644
--- a/metadata/md5-cache/dev-rust/which-3.1.1
+++ b/metadata/md5-cache/dev-rust/which-3.1.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=3.1.1/r0
 SRC_URI=https://crates.io/api/v1/crates/which/3.1.1/download -> which-3.1.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2d45c22b5c0f345b402ab77a16b66b50
diff --git a/metadata/md5-cache/dev-rust/which-4.0.2 b/metadata/md5-cache/dev-rust/which-4.0.2
index f617d31..7159a44 100644
--- a/metadata/md5-cache/dev-rust/which-4.0.2
+++ b/metadata/md5-cache/dev-rust/which-4.0.2
@@ -8,7 +8,8 @@
 LICENSE=MIT
 RDEPEND=>=dev-rust/libc-0.2.65:= <dev-rust/libc-0.3 =dev-rust/thiserror-1*:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=4.0.2/r0
 SRC_URI=https://crates.io/api/v1/crates/which/4.0.2/download -> which-4.0.2.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b841b6c041d1579e6717bf445c23cf02
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=93e17cc5511126b20dcb294f1e04be2e
diff --git a/metadata/md5-cache/dev-rust/winapi-0.2.8 b/metadata/md5-cache/dev-rust/winapi-0.2.8
index 2bbef35..8418555 100644
--- a/metadata/md5-cache/dev-rust/winapi-0.2.8
+++ b/metadata/md5-cache/dev-rust/winapi-0.2.8
@@ -7,5 +7,5 @@
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.8/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a24171f2ba7b7f5d00b155293ff5debe
diff --git a/metadata/md5-cache/dev-rust/winapi-0.3.6 b/metadata/md5-cache/dev-rust/winapi-0.3.6
index 4e957b1..4310ee0 100644
--- a/metadata/md5-cache/dev-rust/winapi-0.3.6
+++ b/metadata/md5-cache/dev-rust/winapi-0.3.6
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.6/r0
 SRC_URI=https://crates.io/api/v1/crates/winapi/0.3.6/download -> winapi-0.3.6.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a4a252e1d68938347b8c797fd0b4e630
diff --git a/metadata/md5-cache/dev-rust/winapi-0.3.9 b/metadata/md5-cache/dev-rust/winapi-0.3.9
index 7b1c270..f3dcbde 100644
--- a/metadata/md5-cache/dev-rust/winapi-0.3.9
+++ b/metadata/md5-cache/dev-rust/winapi-0.3.9
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.9/r0
 SRC_URI=https://crates.io/api/v1/crates/winapi/0.3.9/download -> winapi-0.3.9.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ec83541530f15aac0add6c7f308f284b
diff --git a/metadata/md5-cache/dev-rust/winapi-i686-pc-windows-gnu-0.4.0 b/metadata/md5-cache/dev-rust/winapi-i686-pc-windows-gnu-0.4.0
index d9984a5..39f6d5f 100644
--- a/metadata/md5-cache/dev-rust/winapi-i686-pc-windows-gnu-0.4.0
+++ b/metadata/md5-cache/dev-rust/winapi-i686-pc-windows-gnu-0.4.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b459f025504105b3b301bb8096b60267
diff --git a/metadata/md5-cache/dev-rust/winapi-util-0.1.5 b/metadata/md5-cache/dev-rust/winapi-util-0.1.5
index 39cd8af2..f3b6977 100644
--- a/metadata/md5-cache/dev-rust/winapi-util-0.1.5
+++ b/metadata/md5-cache/dev-rust/winapi-util-0.1.5
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.5/r0
 SRC_URI=https://crates.io/api/v1/crates/winapi-util/0.1.5/download -> winapi-util-0.1.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c648456c44e89798fa2fcdec17015bfc
diff --git a/metadata/md5-cache/dev-rust/winapi-x86_64-pc-windows-gnu-0.4.0 b/metadata/md5-cache/dev-rust/winapi-x86_64-pc-windows-gnu-0.4.0
index 769d6bf..f568eca 100644
--- a/metadata/md5-cache/dev-rust/winapi-x86_64-pc-windows-gnu-0.4.0
+++ b/metadata/md5-cache/dev-rust/winapi-x86_64-pc-windows-gnu-0.4.0
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.4.0/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b459f025504105b3b301bb8096b60267
diff --git a/metadata/md5-cache/dev-rust/wincolor-0.1.6 b/metadata/md5-cache/dev-rust/wincolor-0.1.6
index 92f99f6..ed2c0b0 100644
--- a/metadata/md5-cache/dev-rust/wincolor-0.1.6
+++ b/metadata/md5-cache/dev-rust/wincolor-0.1.6
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.1.6/r0
 SRC_URI=https://crates.io/api/v1/crates/wincolor/0.1.6/download -> wincolor-0.1.6.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4987a56aa9c6a796d607ea96d3f843a1
diff --git a/metadata/md5-cache/dev-rust/wincolor-1.0.1 b/metadata/md5-cache/dev-rust/wincolor-1.0.1
index d88a1fd..296ed81 100644
--- a/metadata/md5-cache/dev-rust/wincolor-1.0.1
+++ b/metadata/md5-cache/dev-rust/wincolor-1.0.1
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.1/r0
 SRC_URI=https://crates.io/api/v1/crates/wincolor/1.0.1/download -> wincolor-1.0.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b467357f182178a61f841f815523a326
diff --git a/metadata/md5-cache/dev-rust/ws2_32-sys-0.2.1 b/metadata/md5-cache/dev-rust/ws2_32-sys-0.2.1
index 140416c..96d4936 100644
--- a/metadata/md5-cache/dev-rust/ws2_32-sys-0.2.1
+++ b/metadata/md5-cache/dev-rust/ws2_32-sys-0.2.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.2.1/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=900161294f5dae3873a5d1e154c9a699
diff --git a/metadata/md5-cache/dev-rust/xml-rs-0.3.6 b/metadata/md5-cache/dev-rust/xml-rs-0.3.6
index 0871b1c..a8c457a 100644
--- a/metadata/md5-cache/dev-rust/xml-rs-0.3.6
+++ b/metadata/md5-cache/dev-rust/xml-rs-0.3.6
@@ -1,13 +1,15 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
 DEPEND=>=dev-rust/bitflags-0.5.0:= <dev-rust/bitflags-0.8.0 >=virtual/rust-1.39.0:=
 DESCRIPTION=An XML library in pure Rust.
-EAPI=6
+EAPI=7
 HOMEPAGE=http://netvl.github.io/xml-rs/
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=MIT
+RDEPEND=>=dev-rust/bitflags-0.5.0:= <dev-rust/bitflags-0.8.0
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.3.6/r0
 SRC_URI=https://crates.io/api/v1/crates/xml-rs/0.3.6/download -> xml-rs-0.3.6.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=2b1342a4d03bbefd2f04062b46daa75f
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b97f0c564693f6a6c86c344d8771f6a1
diff --git a/metadata/md5-cache/dev-rust/xml-rs-0.3.6-r2 b/metadata/md5-cache/dev-rust/xml-rs-0.3.6-r2
new file mode 100644
index 0000000..971d36b
--- /dev/null
+++ b/metadata/md5-cache/dev-rust/xml-rs-0.3.6-r2
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/bitflags-0.5.0:= <dev-rust/bitflags-0.8.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=An XML library in pure Rust.
+EAPI=7
+HOMEPAGE=http://netvl.github.io/xml-rs/
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=>=dev-rust/bitflags-0.5.0:= <dev-rust/bitflags-0.8.0
+REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
+SLOT=0.3.6/r2
+SRC_URI=https://crates.io/api/v1/crates/xml-rs/0.3.6/download -> xml-rs-0.3.6.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b97f0c564693f6a6c86c344d8771f6a1
diff --git a/metadata/md5-cache/dev-rust/xml-rs-0.8.3 b/metadata/md5-cache/dev-rust/xml-rs-0.8.3
index 10e8e96..aec9e20 100644
--- a/metadata/md5-cache/dev-rust/xml-rs-0.8.3
+++ b/metadata/md5-cache/dev-rust/xml-rs-0.8.3
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.8.3/r0
 SRC_URI=https://crates.io/api/v1/crates/xml-rs/0.8.3/download -> xml-rs-0.8.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=495f1c10110dd60c901767bbb652f860
diff --git a/metadata/md5-cache/dev-rust/xmlparser-0.13.3 b/metadata/md5-cache/dev-rust/xmlparser-0.13.3
index 54c10b8..14974f1 100644
--- a/metadata/md5-cache/dev-rust/xmlparser-0.13.3
+++ b/metadata/md5-cache/dev-rust/xmlparser-0.13.3
@@ -9,5 +9,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.13.3/r0
 SRC_URI=https://crates.io/api/v1/crates/xmlparser/0.13.3/download -> xmlparser-0.13.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=34b50e1e9428889ab5a955d174c2b906
diff --git a/metadata/md5-cache/dev-rust/yaml-rust-0.3.5 b/metadata/md5-cache/dev-rust/yaml-rust-0.3.5
index fe9488d..3355930 100644
--- a/metadata/md5-cache/dev-rust/yaml-rust-0.3.5
+++ b/metadata/md5-cache/dev-rust/yaml-rust-0.3.5
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0.3.5/r0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a10c45c80def616e132a5a38403f8943
diff --git a/metadata/md5-cache/dev-rust/yaml-rust-0.4.3 b/metadata/md5-cache/dev-rust/yaml-rust-0.4.3
index 0ba3aec..9b9f709 100644
--- a/metadata/md5-cache/dev-rust/yaml-rust-0.4.3
+++ b/metadata/md5-cache/dev-rust/yaml-rust-0.4.3
@@ -7,7 +7,8 @@
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
 REQUIRED_USE=?? ( asan lsan msan tsan )
+RESTRICT=test
 SLOT=0.4.3/r0
 SRC_URI=https://crates.io/api/v1/crates/yaml-rust/0.4.3/download -> yaml-rust-0.4.3.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=6694779e8e125cd907400d6d378c9a5e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=b4619535911a27539e854b026628fbaa
diff --git a/metadata/md5-cache/dev-rust/zeroize-1.2.0 b/metadata/md5-cache/dev-rust/zeroize-1.2.0
index 3bde535..18e8943 100644
--- a/metadata/md5-cache/dev-rust/zeroize-1.2.0
+++ b/metadata/md5-cache/dev-rust/zeroize-1.2.0
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.2.0/r0
 SRC_URI=https://crates.io/api/v1/crates/zeroize/1.2.0/download -> zeroize-1.2.0.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=125361c3b520c84e355d999f80c3fc11
diff --git a/metadata/md5-cache/dev-rust/zeroize_derive-1.0.1 b/metadata/md5-cache/dev-rust/zeroize_derive-1.0.1
index cd7da38..0aa52be 100644
--- a/metadata/md5-cache/dev-rust/zeroize_derive-1.0.1
+++ b/metadata/md5-cache/dev-rust/zeroize_derive-1.0.1
@@ -10,5 +10,5 @@
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.1/r0
 SRC_URI=https://crates.io/api/v1/crates/zeroize_derive/1.0.1/download -> zeroize_derive-1.0.1.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1db88d984079113b5f3de870539cfd6f
diff --git a/metadata/md5-cache/dev-util/android-tools-9.0.0_p3-r5 b/metadata/md5-cache/dev-util/android-tools-9.0.0_p3-r5
index e34bd25..9196ad5 100644
--- a/metadata/md5-cache/dev-util/android-tools-9.0.0_p3-r5
+++ b/metadata/md5-cache/dev-util/android-tools-9.0.0_p3-r5
@@ -9,5 +9,5 @@
 RDEPEND=sys-libs/zlib:= dev-libs/libpcre2:= dev-libs/openssl:= virtual/libusb:1= python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] )
 SLOT=0
 SRC_URI=https://git.archlinux.org/svntogit/community.git/snapshot/community-0ffb7b41d599741d100a6a00a4bb20e162cd3f90.tar.xz -> android-tools-9.0.0_r3-arch.tar.xz https://github.com/android/platform_system_core/archive/android-9.0.0_r3.tar.gz -> android-tools-9.0.0_r3-core.tar.gz https://github.com/google/boringssl/archive/45210dd4e21ace9d28cb76b3f83303fcdd2efcce.tar.gz -> boringssl-45210dd4e21ace9d28cb76b3f83303fcdd2efcce.tar.gz mirror://gentoo/android-tools-9.0.0_r3-e2fsprogs.tar.xz https://dev.gentoo.org/~zmedico/dist/android-tools-9.0.0_r3-e2fsprogs.tar.xz mirror://gentoo/android-tools-9.0.0_r3-extras.tar.xz https://dev.gentoo.org/~zmedico/dist/android-tools-9.0.0_r3-extras.tar.xz mirror://gentoo/android-tools-9.0.0_r3-selinux.tar.xz https://dev.gentoo.org/~zmedico/dist/android-tools-9.0.0_r3-selinux.tar.xz mirror://gentoo/android-tools-9.0.0_r3-f2fs-tools.tar.xz https://dev.gentoo.org/~zmedico/dist/android-tools-9.0.0_r3-f2fs-tools.tar.xz mirror://gentoo/android-tools-9.0.0_r3.ninja.xz https://dev.gentoo.org/~zmedico/dist/android-tools-9.0.0_r3.ninja.xz https://raw.githubusercontent.com/nmeum/android-tools/8a30dba5768304176fd78aaa131242f6b880f828/patches/core/0022-Use-glibc-s-gettid-when-using-glibc-2.30.patch -> android-tools-9.0.0_p3-fix-build-with-glibc-2.30.patch
-_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=2e35134519d186b0c0a83b7c6c588f23
diff --git a/metadata/md5-cache/dev-util/apitrace-9.0 b/metadata/md5-cache/dev-util/apitrace-9.0
index 51af918..fb6f00b 100644
--- a/metadata/md5-cache/dev-util/apitrace-9.0
+++ b/metadata/md5-cache/dev-util/apitrace-9.0
@@ -10,5 +10,5 @@
 REQUIRED_USE=^^ ( python_single_target_python3_6 )
 SLOT=0
 SRC_URI=https://github.com/apitrace/apitrace/archive/9.0.tar.gz -> apitrace-9.0.tar.gz
-_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=7f6a76c31b05f2ba56fb202cb9bde6d8
diff --git a/metadata/md5-cache/dev-util/apitrace-9.0-r1 b/metadata/md5-cache/dev-util/apitrace-9.0-r1
index 51af918..fb6f00b 100644
--- a/metadata/md5-cache/dev-util/apitrace-9.0-r1
+++ b/metadata/md5-cache/dev-util/apitrace-9.0-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=^^ ( python_single_target_python3_6 )
 SLOT=0
 SRC_URI=https://github.com/apitrace/apitrace/archive/9.0.tar.gz -> apitrace-9.0.tar.gz
-_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=7f6a76c31b05f2ba56fb202cb9bde6d8
diff --git a/metadata/md5-cache/dev-util/bear-2.3.9 b/metadata/md5-cache/dev-util/bear-2.3.9
index b653eeb..7d766c7 100644
--- a/metadata/md5-cache/dev-util/bear-2.3.9
+++ b/metadata/md5-cache/dev-util/bear-2.3.9
@@ -7,5 +7,5 @@
 LICENSE=GPL-3
 SLOT=0
 SRC_URI=https://github.com/rizsotto/Bear/archive/2.3.9.tar.gz -> bear-2.3.9.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=06e9c8d811d737883a760665556eb3ac
diff --git a/metadata/md5-cache/dev-util/bear-2.3.9-r2 b/metadata/md5-cache/dev-util/bear-2.3.9-r2
index b653eeb..7d766c7 100644
--- a/metadata/md5-cache/dev-util/bear-2.3.9-r2
+++ b/metadata/md5-cache/dev-util/bear-2.3.9-r2
@@ -7,5 +7,5 @@
 LICENSE=GPL-3
 SLOT=0
 SRC_URI=https://github.com/rizsotto/Bear/archive/2.3.9.tar.gz -> bear-2.3.9.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=06e9c8d811d737883a760665556eb3ac
diff --git a/metadata/md5-cache/dev-util/bsdiff-4.3.1-r32 b/metadata/md5-cache/dev-util/bsdiff-4.3.1-r32
deleted file mode 100644
index 42544a8..0000000
--- a/metadata/md5-cache/dev-util/bsdiff-4.3.1-r32
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=app-arch/brotli-1.0.6:= app-arch/bzip2:= dev-libs/libdivsufsort:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=bsdiff: Binary Differencer using a suffix alg
-EAPI=7
-HOMEPAGE=http://www.daemonology.net/bsdiff/
-IUSE=cros_host cros_workon_tree_3a989be8b720701c4023d8b52d50648e01cf9dd2_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a6219da561ac98cfa3cdf9d1fb98cf15b5b28473 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_3a989be8b720701c4023d8b52d50648e01cf9dd2_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a6219da561ac98cfa3cdf9d1fb98cf15b5b28473 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-2
-PROPERTIES=live live
-RDEPEND=>=app-arch/brotli-1.0.6:= app-arch/bzip2:= dev-libs/libdivsufsort:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/4.3.1-r32
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=842d0af55522166b23f3aacc1eb02bcf
diff --git a/metadata/md5-cache/dev-util/bsdiff-4.3.1-r34 b/metadata/md5-cache/dev-util/bsdiff-4.3.1-r34
new file mode 100644
index 0000000..12b1979
--- /dev/null
+++ b/metadata/md5-cache/dev-util/bsdiff-4.3.1-r34
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=app-arch/brotli-1.0.6:= app-arch/bzip2:= dev-libs/libdivsufsort:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=bsdiff: Binary Differencer using a suffix alg
+EAPI=7
+HOMEPAGE=http://www.daemonology.net/bsdiff/
+IUSE=cros_host cros_workon_tree_a3d79a5641e6cda7da95a9316f5d29998cc84865_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7a09dff0a55fec57ae1ba55d023b5deae612d4fb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_a3d79a5641e6cda7da95a9316f5d29998cc84865_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_7a09dff0a55fec57ae1ba55d023b5deae612d4fb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-2
+PROPERTIES=live live
+RDEPEND=>=app-arch/brotli-1.0.6:= app-arch/bzip2:= dev-libs/libdivsufsort:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/4.3.1-r34
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ccab52d0955cefef33353c6a870ab763
diff --git a/metadata/md5-cache/dev-util/bsdiff-9999 b/metadata/md5-cache/dev-util/bsdiff-9999
index 80cc526..7b6bfbc 100644
--- a/metadata/md5-cache/dev-util/bsdiff-9999
+++ b/metadata/md5-cache/dev-util/bsdiff-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=>=app-arch/brotli-1.0.6:= app-arch/bzip2:= dev-libs/libdivsufsort:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f2519b1ba910deb3aaaad5b079d2c3d6
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f50e3f09e2b8e121e3fee2ec74aefdce
diff --git a/metadata/md5-cache/dev-util/cros-provision-0.0.1-r4 b/metadata/md5-cache/dev-util/cros-provision-0.0.1-r4
new file mode 100644
index 0000000..3c4c89e
--- /dev/null
+++ b/metadata/md5-cache/dev-util/cros-provision-0.0.1-r4
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst setup test unpack
+DEPEND=dev-util/lro-server dev-util/lroold-server dev-go/genproto-rpc dev-go/luci-go-common dev-go/mock dev-go/protobuf chromeos-base/cros-config-api dev-lang/go
+DESCRIPTION=Provision server implementation for installing CrOS on a test device
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/provision
+IUSE=cros_host cros_workon_tree_acc06f308d576afe81e03e6b467ce127eb1ff249
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-util/lro-server dev-util/lroold-server dev-go/genproto-rpc dev-go/luci-go-common dev-go/mock dev-go/protobuf chromeos-base/cros-config-api
+SLOT=0/0.0.1-r4
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b034c67403edb585405111d8fcbb3d71
diff --git a/metadata/md5-cache/dev-util/cros-provision-9999 b/metadata/md5-cache/dev-util/cros-provision-9999
new file mode 100644
index 0000000..8036cc0
--- /dev/null
+++ b/metadata/md5-cache/dev-util/cros-provision-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst setup test unpack
+DEPEND=dev-util/lro-server dev-util/lroold-server dev-go/genproto-rpc dev-go/luci-go-common dev-go/mock dev-go/protobuf chromeos-base/cros-config-api dev-lang/go
+DESCRIPTION=Provision server implementation for installing CrOS on a test device
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/provision
+IUSE=cros_host cros_workon_tree_
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-util/lro-server dev-util/lroold-server dev-go/genproto-rpc dev-go/luci-go-common dev-go/mock dev-go/protobuf chromeos-base/cros-config-api
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=197e941f8f7b20fa054ab37505875986
diff --git a/metadata/md5-cache/dev-util/cros-test-0.0.1-r2 b/metadata/md5-cache/dev-util/cros-test-0.0.1-r2
new file mode 100644
index 0000000..05fb361
--- /dev/null
+++ b/metadata/md5-cache/dev-util/cros-test-0.0.1-r2
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup test unpack
+DEPEND=chromeos-base/tast-cmd:= chromeos-base/tast-proto dev-util/lro-server dev-lang/go
+DESCRIPTION=Test execution server for running tests and capturing results
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/execution
+IUSE=cros_host cros_workon_tree_d66c5c1160ddd377fe32aad46cc54fbee6081343_a5b7a8cfa5fee66dae2198d608c1767f315ab13d
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/tast-cmd:= chromeos-base/tast-proto dev-util/lro-server
+SLOT=0/0.0.1-r2
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=eba9a472fb182714fc27bad0dec35fca
diff --git a/metadata/md5-cache/dev-util/cros-test-9999 b/metadata/md5-cache/dev-util/cros-test-9999
new file mode 100644
index 0000000..bdfdf1f
--- /dev/null
+++ b/metadata/md5-cache/dev-util/cros-test-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup test unpack
+DEPEND=chromeos-base/tast-cmd:= chromeos-base/tast-proto dev-util/lro-server dev-lang/go
+DESCRIPTION=Test execution server for running tests and capturing results
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/execution
+IUSE=cros_host cros_workon_tree_
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/tast-cmd:= chromeos-base/tast-proto dev-util/lro-server
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=82b2bf46fc392666bbb8bbedb390fcda
diff --git a/metadata/md5-cache/dev-util/cros-test-finder-0.0.1-r3 b/metadata/md5-cache/dev-util/cros-test-finder-0.0.1-r3
new file mode 100644
index 0000000..dd3fbb00
--- /dev/null
+++ b/metadata/md5-cache/dev-util/cros-test-finder-0.0.1-r3
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup test unpack
+DEPEND=chromeos-base/tast-cmd:= chromeos-base/tast-proto dev-util/lro-server dev-lang/go
+DESCRIPTION=Test finder for find tests that match the specified test suite tags
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/test_finder
+IUSE=cros_host cros_workon_tree_9bf76baa78c14c43b9ffa2759dca54d2ac3a6134_a5b7a8cfa5fee66dae2198d608c1767f315ab13d_d66c5c1160ddd377fe32aad46cc54fbee6081343
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/tast-cmd:= chromeos-base/tast-proto dev-util/lro-server
+SLOT=0/0.0.1-r3
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1db1fb113f9e4b63ff7c37e26cecedaf
diff --git a/metadata/md5-cache/dev-util/cros-test-finder-9999 b/metadata/md5-cache/dev-util/cros-test-finder-9999
new file mode 100644
index 0000000..1bbae03
--- /dev/null
+++ b/metadata/md5-cache/dev-util/cros-test-finder-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup test unpack
+DEPEND=chromeos-base/tast-cmd:= chromeos-base/tast-proto dev-util/lro-server dev-lang/go
+DESCRIPTION=Test finder for find tests that match the specified test suite tags
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/test_finder
+IUSE=cros_host cros_workon_tree_
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/tast-cmd:= chromeos-base/tast-proto dev-util/lro-server
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d7f01387e77d181465499293e997de9c
diff --git a/metadata/md5-cache/dev-util/cxxbridge-cmd-1.0.42 b/metadata/md5-cache/dev-util/cxxbridge-cmd-1.0.42
index 7289348..96200f8 100644
--- a/metadata/md5-cache/dev-util/cxxbridge-cmd-1.0.42
+++ b/metadata/md5-cache/dev-util/cxxbridge-cmd-1.0.42
@@ -1,14 +1,14 @@
 DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/clap-2.33:= <dev-rust/clap-3 >=dev-rust/codespan-reporting-0.11:= <dev-rust/codespan-reporting-0.12 >=dev-rust/proc-macro2-1.0.26:= <dev-rust/proc-macro2-2 >=dev-rust/quote-1.0:= <dev-rust/quote-2 >=dev-rust/syn-1.0.68:= <dev-rust/syn-2 >=virtual/rust-1.39.0:=
+DEPEND=>=dev-rust/clap-2.33:= <dev-rust/clap-3.0.0_alpha >=dev-rust/codespan-reporting-0.11:= <dev-rust/codespan-reporting-0.12.0_alpha >=dev-rust/proc-macro2-1.0.26:= <dev-rust/proc-macro2-2.0.0_alpha >=dev-rust/quote-1.0:= <dev-rust/quote-2.0.0_alpha >=dev-rust/syn-1.0.68:= <dev-rust/syn-2.0.0_alpha >=virtual/rust-1.39.0:=
 DESCRIPTION=C++ code generator for integrating 'cxx' crate into a non-Cargo build.
 EAPI=7
 HOMEPAGE=https://crates.io/crates/cxxbridge-cmd
 IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
 KEYWORDS=*
 LICENSE=|| ( MIT Apache-2.0 )
-RDEPEND=>=dev-rust/clap-2.33:= <dev-rust/clap-3 >=dev-rust/codespan-reporting-0.11:= <dev-rust/codespan-reporting-0.12 >=dev-rust/proc-macro2-1.0.26:= <dev-rust/proc-macro2-2 >=dev-rust/quote-1.0:= <dev-rust/quote-2 >=dev-rust/syn-1.0.68:= <dev-rust/syn-2
+RDEPEND=>=dev-rust/clap-2.33:= <dev-rust/clap-3.0.0_alpha >=dev-rust/codespan-reporting-0.11:= <dev-rust/codespan-reporting-0.12.0_alpha >=dev-rust/proc-macro2-1.0.26:= <dev-rust/proc-macro2-2.0.0_alpha >=dev-rust/quote-1.0:= <dev-rust/quote-2.0.0_alpha >=dev-rust/syn-1.0.68:= <dev-rust/syn-2.0.0_alpha
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=1.0.42/r0
 SRC_URI=https://crates.io/api/v1/crates/cxxbridge-cmd/1.0.42/download -> cxxbridge-cmd-1.0.42.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=dd4c2226d24ceb3b00c6e864c0f80c67
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f5d266bb79a1d42cf1e4a2ae1e21f4bb
diff --git a/metadata/md5-cache/dev-util/cxxbridge-cmd-1.0.42-r2 b/metadata/md5-cache/dev-util/cxxbridge-cmd-1.0.42-r2
new file mode 100644
index 0000000..4daf19b
--- /dev/null
+++ b/metadata/md5-cache/dev-util/cxxbridge-cmd-1.0.42-r2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/clap-2.33:= <dev-rust/clap-3.0.0_alpha >=dev-rust/codespan-reporting-0.11:= <dev-rust/codespan-reporting-0.12.0_alpha >=dev-rust/proc-macro2-1.0.26:= <dev-rust/proc-macro2-2.0.0_alpha >=dev-rust/quote-1.0:= <dev-rust/quote-2.0.0_alpha >=dev-rust/syn-1.0.68:= <dev-rust/syn-2.0.0_alpha >=virtual/rust-1.39.0:=
+DESCRIPTION=C++ code generator for integrating 'cxx' crate into a non-Cargo build.
+EAPI=7
+HOMEPAGE=https://crates.io/crates/cxxbridge-cmd
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=|| ( MIT Apache-2.0 )
+RDEPEND=>=dev-rust/clap-2.33:= <dev-rust/clap-3.0.0_alpha >=dev-rust/codespan-reporting-0.11:= <dev-rust/codespan-reporting-0.12.0_alpha >=dev-rust/proc-macro2-1.0.26:= <dev-rust/proc-macro2-2.0.0_alpha >=dev-rust/quote-1.0:= <dev-rust/quote-2.0.0_alpha >=dev-rust/syn-1.0.68:= <dev-rust/syn-2.0.0_alpha
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=1.0.42/r2
+SRC_URI=https://crates.io/api/v1/crates/cxxbridge-cmd/1.0.42/download -> cxxbridge-cmd-1.0.42.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f5d266bb79a1d42cf1e4a2ae1e21f4bb
diff --git a/metadata/md5-cache/dev-util/dut-server-0.0.1-r17 b/metadata/md5-cache/dev-util/dut-server-0.0.1-r17
new file mode 100644
index 0000000..743372c
--- /dev/null
+++ b/metadata/md5-cache/dev-util/dut-server-0.0.1-r17
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst setup test unpack
+DEPEND=dev-util/lro-server dev-go/crypto dev-go/grpc dev-go/mock dev-go/protobuf chromeos-base/cros-config-api dev-lang/go
+DESCRIPTION=DUT Service Server implementation for interfacing with the DUT
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/dut
+IUSE=cros_host cros_workon_tree_f618c21fc562b57ffc97a6296301c8c034cf3ddc
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-util/lro-server dev-go/crypto dev-go/grpc dev-go/mock dev-go/protobuf chromeos-base/cros-config-api
+SLOT=0/0.0.1-r17
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=55be12fc2393241997b974e44e801e1b
diff --git a/metadata/md5-cache/dev-util/dut-server-0.0.1-r5 b/metadata/md5-cache/dev-util/dut-server-0.0.1-r5
deleted file mode 100644
index d0113f5..0000000
--- a/metadata/md5-cache/dev-util/dut-server-0.0.1-r5
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=dev-util/lro-server dev-go/grpc chromeos-base/cros-config-api dev-lang/go
-DESCRIPTION=DUT Service Server implementation for interfacing with the DUT
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/dut
-IUSE=cros_host cros_workon_tree_973d967f3987480fbaf6415e28a902e2956a3acd
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-util/lro-server dev-go/grpc chromeos-base/cros-config-api
-SLOT=0/0.0.1-r5
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=10c3166b14a80c02c3e353708bce2022
diff --git a/metadata/md5-cache/dev-util/dut-server-9999 b/metadata/md5-cache/dev-util/dut-server-9999
index 7f8fc3d..7f41946 100644
--- a/metadata/md5-cache/dev-util/dut-server-9999
+++ b/metadata/md5-cache/dev-util/dut-server-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=dev-util/lro-server dev-go/grpc chromeos-base/cros-config-api dev-lang/go
+DEPEND=dev-util/lro-server dev-go/crypto dev-go/grpc dev-go/mock dev-go/protobuf chromeos-base/cros-config-api dev-lang/go
 DESCRIPTION=DUT Service Server implementation for interfacing with the DUT
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/dut
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=dev-util/lro-server dev-go/grpc chromeos-base/cros-config-api
+RDEPEND=dev-util/lro-server dev-go/crypto dev-go/grpc dev-go/mock dev-go/protobuf chromeos-base/cros-config-api
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8fd6178d28eca56a9bd499a12654e55f
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1b27bf8af8189c05fe4b7a1b8e144123
diff --git a/metadata/md5-cache/dev-util/gdbus-codegen-2.66.7-r1 b/metadata/md5-cache/dev-util/gdbus-codegen-2.66.7-r1
deleted file mode 100644
index e107091..0000000
--- a/metadata/md5-cache/dev-util/gdbus-codegen-2.66.7-r1
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-libs/libxslt app-text/docbook-xsl-stylesheets app-arch/xz-utils python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] )
-DEFINED_PHASES=compile configure install prepare setup test
-DEPEND=python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] )
-DESCRIPTION=GDBus code and documentation generator
-EAPI=7
-HOMEPAGE=https://www.gtk.org/
-IUSE=python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
-KEYWORDS=*
-LICENSE=LGPL-2+
-RDEPEND=python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] ) python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] )
-REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9 )
-SLOT=0
-SRC_URI=mirror://gnome/sources/glib/2.66/glib-2.66.7.tar.xz
-_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=52bb73910c139d1fb67d2c8047b5c37c
diff --git a/metadata/md5-cache/dev-util/gdbus-codegen-2.68.3 b/metadata/md5-cache/dev-util/gdbus-codegen-2.68.3
new file mode 100644
index 0000000..ec48930
--- /dev/null
+++ b/metadata/md5-cache/dev-util/gdbus-codegen-2.68.3
@@ -0,0 +1,15 @@
+BDEPEND=dev-libs/libxslt app-text/docbook-xsl-stylesheets app-arch/xz-utils python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] )
+DEFINED_PHASES=compile configure install prepare setup test
+DEPEND=python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] )
+DESCRIPTION=GDBus code and documentation generator
+EAPI=7
+HOMEPAGE=https://www.gtk.org/
+IUSE=python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
+KEYWORDS=*
+LICENSE=LGPL-2+
+RDEPEND=python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] ) python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] )
+REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9 )
+SLOT=0
+SRC_URI=mirror://gnome/sources/glib/2.68/glib-2.68.3.tar.xz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=54f597e1d59dae1657a4ca613831c0af
diff --git a/metadata/md5-cache/dev-util/gdbus-codegen-2.68.3-r1 b/metadata/md5-cache/dev-util/gdbus-codegen-2.68.3-r1
new file mode 100644
index 0000000..ec48930
--- /dev/null
+++ b/metadata/md5-cache/dev-util/gdbus-codegen-2.68.3-r1
@@ -0,0 +1,15 @@
+BDEPEND=dev-libs/libxslt app-text/docbook-xsl-stylesheets app-arch/xz-utils python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] )
+DEFINED_PHASES=compile configure install prepare setup test
+DEPEND=python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] )
+DESCRIPTION=GDBus code and documentation generator
+EAPI=7
+HOMEPAGE=https://www.gtk.org/
+IUSE=python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
+KEYWORDS=*
+LICENSE=LGPL-2+
+RDEPEND=python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] ) python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9[xml] >=dev-lang/python-exec-2:=[python_targets_python3_9] )
+REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9 )
+SLOT=0
+SRC_URI=mirror://gnome/sources/glib/2.68/glib-2.68.3.tar.xz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=54f597e1d59dae1657a4ca613831c0af
diff --git a/metadata/md5-cache/dev-util/glib-utils-2.66.7-r2 b/metadata/md5-cache/dev-util/glib-utils-2.66.7-r2
deleted file mode 100644
index 83d2dc7..0000000
--- a/metadata/md5-cache/dev-util/glib-utils-2.66.7-r2
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-libs/libxslt app-text/docbook-xsl-stylesheets app-arch/xz-utils
-DEFINED_PHASES=compile configure install setup
-DEPEND=python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] ) !<dev-libs/glib-2.56.2:2 cros-host? ( dev-libs/libxslt app-text/docbook-xsl-stylesheets )
-DESCRIPTION=Build utilities for GLib using projects
-EAPI=7
-HOMEPAGE=https://www.gtk.org/
-IUSE=cros-host python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
-KEYWORDS=*
-LICENSE=LGPL-2.1+
-RDEPEND=python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] ) !<dev-libs/glib-2.56.2:2
-REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9 )
-SLOT=0
-SRC_URI=mirror://gnome/sources/glib/2.66/glib-2.66.7.tar.xz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4efed295d300580674903835619d9455
diff --git a/metadata/md5-cache/dev-util/glib-utils-2.68.3 b/metadata/md5-cache/dev-util/glib-utils-2.68.3
new file mode 100644
index 0000000..be72955
--- /dev/null
+++ b/metadata/md5-cache/dev-util/glib-utils-2.68.3
@@ -0,0 +1,15 @@
+BDEPEND=dev-libs/libxslt app-text/docbook-xsl-stylesheets app-arch/xz-utils
+DEFINED_PHASES=compile configure install setup
+DEPEND=python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] ) cros-host? ( dev-libs/libxslt app-text/docbook-xsl-stylesheets )
+DESCRIPTION=Build utilities for GLib using projects
+EAPI=7
+HOMEPAGE=https://www.gtk.org/
+IUSE=cros-host python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
+KEYWORDS=*
+LICENSE=LGPL-2.1+
+RDEPEND=python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] )
+REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9 )
+SLOT=0
+SRC_URI=mirror://gnome/sources/glib/2.68/glib-2.68.3.tar.xz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a8ab342aadb76d7c185f6fa9e2cd0585
diff --git a/metadata/md5-cache/dev-util/glib-utils-2.68.3-r1 b/metadata/md5-cache/dev-util/glib-utils-2.68.3-r1
new file mode 100644
index 0000000..be72955
--- /dev/null
+++ b/metadata/md5-cache/dev-util/glib-utils-2.68.3-r1
@@ -0,0 +1,15 @@
+BDEPEND=dev-libs/libxslt app-text/docbook-xsl-stylesheets app-arch/xz-utils
+DEFINED_PHASES=compile configure install setup
+DEPEND=python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] ) cros-host? ( dev-libs/libxslt app-text/docbook-xsl-stylesheets )
+DESCRIPTION=Build utilities for GLib using projects
+EAPI=7
+HOMEPAGE=https://www.gtk.org/
+IUSE=cros-host python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
+KEYWORDS=*
+LICENSE=LGPL-2.1+
+RDEPEND=python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] )
+REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9 )
+SLOT=0
+SRC_URI=mirror://gnome/sources/glib/2.68/glib-2.68.3.tar.xz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a8ab342aadb76d7c185f6fa9e2cd0585
diff --git a/metadata/md5-cache/dev-util/google-web-toolkit-2.3.0 b/metadata/md5-cache/dev-util/google-web-toolkit-2.3.0
index 2df0af4..52bf24c 100644
--- a/metadata/md5-cache/dev-util/google-web-toolkit-2.3.0
+++ b/metadata/md5-cache/dev-util/google-web-toolkit-2.3.0
@@ -8,5 +8,5 @@
 RDEPEND=>=virtual/jre-1.5
 SLOT=0
 SRC_URI=http://google-web-toolkit.googlecode.com/files/gwt-2.3.0.zip
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	java-utils-2	82402a1c36ab4bf38f3313a543f9e827	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	java-utils-2	82402a1c36ab4bf38f3313a543f9e827	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
 _md5_=0066f3b3c69b94cf3e9ab5c854f8c2be
diff --git a/metadata/md5-cache/dev-util/gyp-2019.06.04.155326 b/metadata/md5-cache/dev-util/gyp-2019.06.04.155326
index b92fcaf..4c72361 100644
--- a/metadata/md5-cache/dev-util/gyp-2019.06.04.155326
+++ b/metadata/md5-cache/dev-util/gyp-2019.06.04.155326
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
 SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/gyp-2019.06.04.155326.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=95261ff7d425035dd73fc686dbda365b
diff --git a/metadata/md5-cache/dev-util/hdctools-0.0.1-r1400 b/metadata/md5-cache/dev-util/hdctools-0.0.1-r1400
deleted file mode 100644
index f83503f..0000000
--- a/metadata/md5-cache/dev-util/hdctools-0.0.1-r1400
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=test? ( dev-python/pytest[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] ) dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] virtual/pkgconfig
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=>=dev-embedded/libftdi-0.18:= dev-python/numpy[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/pexpect-3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pyserial[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/pyusb-1.0.2[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sys-power/uhubctl virtual/libusb:1= chromeos-base/ec-devutils:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] app-text/htmltidy
-DESCRIPTION=Software to communicate with servo/miniservo debug boards
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os/servo
-IUSE=cros_host test cros_host cros_workon_tree_10706ea9ac1e3d8b910c300d8a8f637dd9a2aec9 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=>=dev-embedded/libftdi-0.18:= dev-python/numpy[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/pexpect-3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pyserial[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/pyusb-1.0.2[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sys-power/uhubctl virtual/libusb:1= chromeos-base/ec-devutils:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] virtual/servo-config-dut-usb3:* python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
-REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
-SLOT=0/0.0.1-r1400
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6
-_md5_=910c1569e2fd40c391d751dbf9cb0711
diff --git a/metadata/md5-cache/dev-util/hdctools-0.0.1-r1462 b/metadata/md5-cache/dev-util/hdctools-0.0.1-r1462
new file mode 100644
index 0000000..39e292d
--- /dev/null
+++ b/metadata/md5-cache/dev-util/hdctools-0.0.1-r1462
@@ -0,0 +1,15 @@
+BDEPEND=test? ( dev-python/pytest[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] ) dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] virtual/pkgconfig
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=>=dev-embedded/libftdi-0.18:= dev-python/numpy[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/pexpect-3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pyserial[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/pyusb-1.0.2[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sys-power/uhubctl virtual/libusb:1= chromeos-base/ec-devutils:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] app-text/htmltidy
+DESCRIPTION=Software to communicate with servo/miniservo debug boards
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os/servo
+IUSE=cros_host test cros_host cros_workon_tree_a4992a9a71d7ca08f566c4dc255270c360f6a383 python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=>=dev-embedded/libftdi-0.18:= dev-python/numpy[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/pexpect-3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pyserial[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/pyusb-1.0.2[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sys-power/uhubctl virtual/libusb:1= chromeos-base/ec-devutils:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] virtual/servo-config-dut-usb3:* python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+SLOT=0/0.0.1-r1462
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
+_md5_=33297f04a23b57d88223f472c1be37bd
diff --git a/metadata/md5-cache/dev-util/hdctools-9999 b/metadata/md5-cache/dev-util/hdctools-9999
index 51cc562..89dbff1 100644
--- a/metadata/md5-cache/dev-util/hdctools-9999
+++ b/metadata/md5-cache/dev-util/hdctools-9999
@@ -11,5 +11,5 @@
 RDEPEND=>=dev-embedded/libftdi-0.18:= dev-python/numpy[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/pexpect-3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pyserial[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/pyusb-1.0.2[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sys-power/uhubctl virtual/libusb:1= chromeos-base/ec-devutils:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] virtual/servo-config-dut-usb3:* python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
 _md5_=bccf43f3ef46822ab213478bf42cf8ff
diff --git a/metadata/md5-cache/dev-util/lcov-1.10 b/metadata/md5-cache/dev-util/lcov-1.10
index 8fc2f3a..536f3d8 100644
--- a/metadata/md5-cache/dev-util/lcov-1.10
+++ b/metadata/md5-cache/dev-util/lcov-1.10
@@ -7,5 +7,5 @@
 RDEPEND=>=dev-lang/perl-5 dev-perl/GD[png]
 SLOT=0
 SRC_URI=mirror://sourceforge/ltp/lcov-1.10.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=90a26a15dea986317507af1b6c3aa5ec
diff --git a/metadata/md5-cache/dev-util/lcov-1.10-r1 b/metadata/md5-cache/dev-util/lcov-1.10-r1
index 8fc2f3a..536f3d8 100644
--- a/metadata/md5-cache/dev-util/lcov-1.10-r1
+++ b/metadata/md5-cache/dev-util/lcov-1.10-r1
@@ -7,5 +7,5 @@
 RDEPEND=>=dev-lang/perl-5 dev-perl/GD[png]
 SLOT=0
 SRC_URI=mirror://sourceforge/ltp/lcov-1.10.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=90a26a15dea986317507af1b6c3aa5ec
diff --git a/metadata/md5-cache/dev-util/lldb-server-12.0_pre416183 b/metadata/md5-cache/dev-util/lldb-server-12.0_pre416183
new file mode 100644
index 0000000..ca49dc7
--- /dev/null
+++ b/metadata/md5-cache/dev-util/lldb-server-12.0_pre416183
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure install prepare setup test unpack
+DEPEND=sys-libs/ncurses sys-devel/make >=dev-util/cmake-3.9.6
+DESCRIPTION=lldb-server, for the LLDB debugger
+EAPI=6
+HOMEPAGE=https://github.com/llvm/llvm-project
+IUSE=cros_host llvm-next llvm-tot abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=|| ( UoI-NCSA MIT )
+PROPERTIES=live
+SLOT=0
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=312430bcc715bcc4b8510c644b46df22
diff --git a/metadata/md5-cache/dev-util/lldb-server-12.0_pre416183-r3 b/metadata/md5-cache/dev-util/lldb-server-12.0_pre416183-r3
new file mode 100644
index 0000000..ca49dc7
--- /dev/null
+++ b/metadata/md5-cache/dev-util/lldb-server-12.0_pre416183-r3
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure install prepare setup test unpack
+DEPEND=sys-libs/ncurses sys-devel/make >=dev-util/cmake-3.9.6
+DESCRIPTION=lldb-server, for the LLDB debugger
+EAPI=6
+HOMEPAGE=https://github.com/llvm/llvm-project
+IUSE=cros_host llvm-next llvm-tot abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=|| ( UoI-NCSA MIT )
+PROPERTIES=live
+SLOT=0
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=312430bcc715bcc4b8510c644b46df22
diff --git a/metadata/md5-cache/dev-util/lro-server-0.0.1-r2 b/metadata/md5-cache/dev-util/lro-server-0.0.1-r2
deleted file mode 100644
index 81e3c9f..0000000
--- a/metadata/md5-cache/dev-util/lro-server-0.0.1-r2
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=chromeos-base/cros-config-api dev-lang/go
-DESCRIPTION=Common golang library to support google.longrunning.operations server impls
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/lro
-IUSE=cros_host cros_workon_tree_0a82488b21ac7734f64c67f4addb83f5f0eceb3f
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!<chromeos-base/test-server-0.0.1-r10
-SLOT=0/0.0.1-r2
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=bfea4213ed8ceb938ec9e7cfea63b599
diff --git a/metadata/md5-cache/dev-util/lro-server-0.0.1-r5 b/metadata/md5-cache/dev-util/lro-server-0.0.1-r5
new file mode 100644
index 0000000..e3c470b
--- /dev/null
+++ b/metadata/md5-cache/dev-util/lro-server-0.0.1-r5
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst setup test unpack
+DEPEND=dev-go/go-tools dev-go/grpc dev-go/mock dev-go/protobuf dev-go/uuid chromeos-base/cros-config-api dev-lang/go
+DESCRIPTION=Common golang library to support google.longrunning.operations server impls
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/lro
+IUSE=cros_host cros_workon_tree_0a82488b21ac7734f64c67f4addb83f5f0eceb3f
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!<chromeos-base/test-server-0.0.1-r49
+SLOT=0/0.0.1-r5
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f6ae0a89a09fffc2a74479de6d16de30
diff --git a/metadata/md5-cache/dev-util/lro-server-9999 b/metadata/md5-cache/dev-util/lro-server-9999
index eea3f67..21442aa 100644
--- a/metadata/md5-cache/dev-util/lro-server-9999
+++ b/metadata/md5-cache/dev-util/lro-server-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=chromeos-base/cros-config-api dev-lang/go
+DEPEND=dev-go/go-tools dev-go/grpc dev-go/mock dev-go/protobuf dev-go/uuid chromeos-base/cros-config-api dev-lang/go
 DESCRIPTION=Common golang library to support google.longrunning.operations server impls
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/lro
@@ -8,7 +8,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=!<chromeos-base/test-server-0.0.1-r10
+RDEPEND=!<chromeos-base/test-server-0.0.1-r49
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=84fd616813390cd8661efec44a7a47e5
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=46ca40150c67605ea073d10e048aec0c
diff --git a/metadata/md5-cache/dev-util/lroold-server-0.0.1-r1 b/metadata/md5-cache/dev-util/lroold-server-0.0.1-r1
new file mode 100644
index 0000000..442bc4c
--- /dev/null
+++ b/metadata/md5-cache/dev-util/lroold-server-0.0.1-r1
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst setup test unpack
+DEPEND=dev-go/go-tools dev-go/grpc dev-go/mock dev-go/protobuf chromeos-base/cros-config-api dev-lang/go
+DESCRIPTION=Common golang library to support google.longrunning.operations server impls
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/lroold
+IUSE=cros_host cros_workon_tree_6fd739434fd74ac7d4f838c8817c842b3df37cc3
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!<chromeos-base/test-server-0.0.1-r49
+SLOT=0/0.0.1-r1
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=aba70961461ab24f1d3521d436201751
diff --git a/metadata/md5-cache/dev-util/lroold-server-9999 b/metadata/md5-cache/dev-util/lroold-server-9999
new file mode 100644
index 0000000..a12edc4
--- /dev/null
+++ b/metadata/md5-cache/dev-util/lroold-server-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst setup test unpack
+DEPEND=dev-go/go-tools dev-go/grpc dev-go/mock dev-go/protobuf chromeos-base/cros-config-api dev-lang/go
+DESCRIPTION=Common golang library to support google.longrunning.operations server impls
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/lroold
+IUSE=cros_host cros_workon_tree_
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!<chromeos-base/test-server-0.0.1-r49
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=54ad0c24fafd1090a6e7b8a5a8b3ebde
diff --git a/metadata/md5-cache/dev-util/mem-0.0.1 b/metadata/md5-cache/dev-util/mem-0.0.1
index e4b2480..fa77e53 100644
--- a/metadata/md5-cache/dev-util/mem-0.0.1
+++ b/metadata/md5-cache/dev-util/mem-0.0.1
@@ -9,5 +9,5 @@
 RDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
-_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f30b281b641f2f100165c6b69b41ce63
diff --git a/metadata/md5-cache/dev-util/mem-0.0.1-r6 b/metadata/md5-cache/dev-util/mem-0.0.1-r6
index e4b2480..fa77e53 100644
--- a/metadata/md5-cache/dev-util/mem-0.0.1-r6
+++ b/metadata/md5-cache/dev-util/mem-0.0.1-r6
@@ -9,5 +9,5 @@
 RDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
-_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f30b281b641f2f100165c6b69b41ce63
diff --git a/metadata/md5-cache/dev-util/memory-eater-locked-0.0.1-r5 b/metadata/md5-cache/dev-util/memory-eater-locked-0.0.1-r5
index 75386ed..854cdf50 100644
--- a/metadata/md5-cache/dev-util/memory-eater-locked-0.0.1-r5
+++ b/metadata/md5-cache/dev-util/memory-eater-locked-0.0.1-r5
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=368f8ca7e8ced0aadd79b332fe402659
diff --git a/metadata/md5-cache/dev-util/memory-eater-locked-9999 b/metadata/md5-cache/dev-util/memory-eater-locked-9999
index edabfa1..e3befb7 100644
--- a/metadata/md5-cache/dev-util/memory-eater-locked-9999
+++ b/metadata/md5-cache/dev-util/memory-eater-locked-9999
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=0d252a5feeee6c708fe7aaa9607e64ff
diff --git a/metadata/md5-cache/dev-util/perf-5.3.7 b/metadata/md5-cache/dev-util/perf-5.3.7
index 2afc9ca..1a07958 100644
--- a/metadata/md5-cache/dev-util/perf-5.3.7
+++ b/metadata/md5-cache/dev-util/perf-5.3.7
@@ -1,15 +1,15 @@
 BDEPEND=dev-util/patchutils sys-devel/bison sys-devel/flex java? ( virtual/jdk ) doc? ( app-text/asciidoc app-text/sgml-common app-text/xmlto sys-process/time )
 DEFINED_PHASES=compile install postinst prepare setup test unpack
-DEPEND=audit? ( sys-process/audit ) crypt? ( dev-libs/openssl:0= ) clang? ( sys-devel/clang:* sys-devel/llvm:* ) coresight? ( dev-libs/opencsd ) gtk? ( x11-libs/gtk+:2 ) java? ( virtual/jre:* ) lzma? ( app-arch/xz-utils ) numa? ( sys-process/numactl ) perl? ( dev-lang/perl:= ) python? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) ) slang? ( sys-libs/slang ) systemtap? ( dev-util/systemtap ) unwind? ( sys-libs/llvm-libunwind ) zlib? ( sys-libs/zlib ) dev-libs/elfutils sys-libs/binutils-libs:= >=sys-kernel/linux-headers-4.4
+DEPEND=audit? ( sys-process/audit ) crypt? ( dev-libs/openssl:0= ) clang? ( sys-devel/clang:* sys-devel/llvm:* ) coresight? ( dev-libs/opencsd ) gtk? ( x11-libs/gtk+:2 ) java? ( virtual/jre:* ) lzma? ( app-arch/xz-utils ) numa? ( sys-process/numactl ) perl? ( dev-lang/perl:= ) python? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) ) slang? ( sys-libs/slang ) systemtap? ( dev-util/systemtap ) unwind? ( sys-libs/llvm-libunwind ) zlib? ( sys-libs/zlib ) zstd? ( app-arch/zstd ) dev-libs/elfutils sys-libs/binutils-libs:= >=sys-kernel/linux-headers-4.4
 DESCRIPTION=Userland tools for Linux Performance Counters
 EAPI=7
 HOMEPAGE=https://perf.wiki.kernel.org/
-IUSE=audit clang coresight crypt debug +demangle +doc gtk java lzma numa perl python slang systemtap unwind zlib +python_single_target_python2_7 kernel_linux
+IUSE=audit clang coresight crypt debug +demangle +doc gtk java lzma numa perl python slang systemtap unwind zlib zstd +python_single_target_python2_7 kernel_linux
 KEYWORDS=*
 LICENSE=GPL-2
-RDEPEND=audit? ( sys-process/audit ) crypt? ( dev-libs/openssl:0= ) clang? ( sys-devel/clang:* sys-devel/llvm:* ) coresight? ( dev-libs/opencsd ) gtk? ( x11-libs/gtk+:2 ) java? ( virtual/jre:* ) lzma? ( app-arch/xz-utils ) numa? ( sys-process/numactl ) perl? ( dev-lang/perl:= ) python? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) ) slang? ( sys-libs/slang ) systemtap? ( dev-util/systemtap ) unwind? ( sys-libs/llvm-libunwind ) zlib? ( sys-libs/zlib ) dev-libs/elfutils sys-libs/binutils-libs:=
+RDEPEND=audit? ( sys-process/audit ) crypt? ( dev-libs/openssl:0= ) clang? ( sys-devel/clang:* sys-devel/llvm:* ) coresight? ( dev-libs/opencsd ) gtk? ( x11-libs/gtk+:2 ) java? ( virtual/jre:* ) lzma? ( app-arch/xz-utils ) numa? ( sys-process/numactl ) perl? ( dev-lang/perl:= ) python? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) ) slang? ( sys-libs/slang ) systemtap? ( dev-util/systemtap ) unwind? ( sys-libs/llvm-libunwind ) zlib? ( sys-libs/zlib ) zstd? ( app-arch/zstd ) dev-libs/elfutils sys-libs/binutils-libs:=
 REQUIRED_USE=python? ( ^^ ( python_single_target_python2_7 ) )
 SLOT=0
 SRC_URI=https://www.kernel.org/pub/linux/kernel/v5.x/patch-5.3.7.xz https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.3.tar.xz
-_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d3da095008284de39be1c4b725c0bd89
+_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4baaf8423a82f8de63422857f2cbc15d
diff --git a/metadata/md5-cache/dev-util/perf-5.3.7-r21 b/metadata/md5-cache/dev-util/perf-5.3.7-r21
deleted file mode 100644
index 2afc9ca..0000000
--- a/metadata/md5-cache/dev-util/perf-5.3.7-r21
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-util/patchutils sys-devel/bison sys-devel/flex java? ( virtual/jdk ) doc? ( app-text/asciidoc app-text/sgml-common app-text/xmlto sys-process/time )
-DEFINED_PHASES=compile install postinst prepare setup test unpack
-DEPEND=audit? ( sys-process/audit ) crypt? ( dev-libs/openssl:0= ) clang? ( sys-devel/clang:* sys-devel/llvm:* ) coresight? ( dev-libs/opencsd ) gtk? ( x11-libs/gtk+:2 ) java? ( virtual/jre:* ) lzma? ( app-arch/xz-utils ) numa? ( sys-process/numactl ) perl? ( dev-lang/perl:= ) python? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) ) slang? ( sys-libs/slang ) systemtap? ( dev-util/systemtap ) unwind? ( sys-libs/llvm-libunwind ) zlib? ( sys-libs/zlib ) dev-libs/elfutils sys-libs/binutils-libs:= >=sys-kernel/linux-headers-4.4
-DESCRIPTION=Userland tools for Linux Performance Counters
-EAPI=7
-HOMEPAGE=https://perf.wiki.kernel.org/
-IUSE=audit clang coresight crypt debug +demangle +doc gtk java lzma numa perl python slang systemtap unwind zlib +python_single_target_python2_7 kernel_linux
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=audit? ( sys-process/audit ) crypt? ( dev-libs/openssl:0= ) clang? ( sys-devel/clang:* sys-devel/llvm:* ) coresight? ( dev-libs/opencsd ) gtk? ( x11-libs/gtk+:2 ) java? ( virtual/jre:* ) lzma? ( app-arch/xz-utils ) numa? ( sys-process/numactl ) perl? ( dev-lang/perl:= ) python? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) ) slang? ( sys-libs/slang ) systemtap? ( dev-util/systemtap ) unwind? ( sys-libs/llvm-libunwind ) zlib? ( sys-libs/zlib ) dev-libs/elfutils sys-libs/binutils-libs:=
-REQUIRED_USE=python? ( ^^ ( python_single_target_python2_7 ) )
-SLOT=0
-SRC_URI=https://www.kernel.org/pub/linux/kernel/v5.x/patch-5.3.7.xz https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.3.tar.xz
-_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d3da095008284de39be1c4b725c0bd89
diff --git a/metadata/md5-cache/dev-util/perf-5.3.7-r25 b/metadata/md5-cache/dev-util/perf-5.3.7-r25
new file mode 100644
index 0000000..1a07958
--- /dev/null
+++ b/metadata/md5-cache/dev-util/perf-5.3.7-r25
@@ -0,0 +1,15 @@
+BDEPEND=dev-util/patchutils sys-devel/bison sys-devel/flex java? ( virtual/jdk ) doc? ( app-text/asciidoc app-text/sgml-common app-text/xmlto sys-process/time )
+DEFINED_PHASES=compile install postinst prepare setup test unpack
+DEPEND=audit? ( sys-process/audit ) crypt? ( dev-libs/openssl:0= ) clang? ( sys-devel/clang:* sys-devel/llvm:* ) coresight? ( dev-libs/opencsd ) gtk? ( x11-libs/gtk+:2 ) java? ( virtual/jre:* ) lzma? ( app-arch/xz-utils ) numa? ( sys-process/numactl ) perl? ( dev-lang/perl:= ) python? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) ) slang? ( sys-libs/slang ) systemtap? ( dev-util/systemtap ) unwind? ( sys-libs/llvm-libunwind ) zlib? ( sys-libs/zlib ) zstd? ( app-arch/zstd ) dev-libs/elfutils sys-libs/binutils-libs:= >=sys-kernel/linux-headers-4.4
+DESCRIPTION=Userland tools for Linux Performance Counters
+EAPI=7
+HOMEPAGE=https://perf.wiki.kernel.org/
+IUSE=audit clang coresight crypt debug +demangle +doc gtk java lzma numa perl python slang systemtap unwind zlib zstd +python_single_target_python2_7 kernel_linux
+KEYWORDS=*
+LICENSE=GPL-2
+RDEPEND=audit? ( sys-process/audit ) crypt? ( dev-libs/openssl:0= ) clang? ( sys-devel/clang:* sys-devel/llvm:* ) coresight? ( dev-libs/opencsd ) gtk? ( x11-libs/gtk+:2 ) java? ( virtual/jre:* ) lzma? ( app-arch/xz-utils ) numa? ( sys-process/numactl ) perl? ( dev-lang/perl:= ) python? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) ) slang? ( sys-libs/slang ) systemtap? ( dev-util/systemtap ) unwind? ( sys-libs/llvm-libunwind ) zlib? ( sys-libs/zlib ) zstd? ( app-arch/zstd ) dev-libs/elfutils sys-libs/binutils-libs:=
+REQUIRED_USE=python? ( ^^ ( python_single_target_python2_7 ) )
+SLOT=0
+SRC_URI=https://www.kernel.org/pub/linux/kernel/v5.x/patch-5.3.7.xz https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.3.tar.xz
+_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4baaf8423a82f8de63422857f2cbc15d
diff --git a/metadata/md5-cache/dev-util/provision-server-0.0.1-r7 b/metadata/md5-cache/dev-util/provision-server-0.0.1-r7
deleted file mode 100644
index 21b5f64..0000000
--- a/metadata/md5-cache/dev-util/provision-server-0.0.1-r7
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=dev-util/lro-server dev-lang/go
-DESCRIPTION=Provision server implementation for installing CrOS on a test device
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/provision
-IUSE=cros_host cros_workon_tree_55dda3b3dc30d53d5401aa7b9aa5019068d99fbb
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-util/lro-server
-SLOT=0/0.0.1-r7
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f13503cfdc6c750cbf50a5e5517351d0
diff --git a/metadata/md5-cache/dev-util/provision-server-9999 b/metadata/md5-cache/dev-util/provision-server-9999
deleted file mode 100644
index bc66990..0000000
--- a/metadata/md5-cache/dev-util/provision-server-9999
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=dev-util/lro-server dev-lang/go
-DESCRIPTION=Provision server implementation for installing CrOS on a test device
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/provision
-IUSE=cros_host cros_workon_tree_
-KEYWORDS=~*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-util/lro-server
-SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6ee329cb37cffecf0923b30603ba6e1c
diff --git a/metadata/md5-cache/dev-util/puffin-1.0.0-r439 b/metadata/md5-cache/dev-util/puffin-1.0.0-r439
deleted file mode 100644
index 7e18629..0000000
--- a/metadata/md5-cache/dev-util/puffin-1.0.0-r439
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/libbrillo:=[asan?,fuzzer?] dev-libs/protobuf:= dev-util/bsdiff:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Puffin: Deterministic patching tool for deflate streams
-EAPI=7
-HOMEPAGE=https://android.googlesource.com/platform/external/puffin/
-IUSE=asan fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_d5b2e1140bb5d80e845bd170bd364e892b05ebd1 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_d5b2e1140bb5d80e845bd170bd364e892b05ebd1 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libbrillo:=[asan?,fuzzer?] dev-libs/protobuf:= dev-util/bsdiff:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/1.0.0-r439
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3dd385419ce684f0f688846056f21dd2
diff --git a/metadata/md5-cache/dev-util/puffin-1.0.0-r440 b/metadata/md5-cache/dev-util/puffin-1.0.0-r440
new file mode 100644
index 0000000..a1096dd
--- /dev/null
+++ b/metadata/md5-cache/dev-util/puffin-1.0.0-r440
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libbrillo:=[asan?,fuzzer?] dev-libs/protobuf:= dev-util/bsdiff:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Puffin: Deterministic patching tool for deflate streams
+EAPI=7
+HOMEPAGE=https://android.googlesource.com/platform/external/puffin/
+IUSE=asan fuzzer cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_d5b2e1140bb5d80e845bd170bd364e892b05ebd1 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_d5b2e1140bb5d80e845bd170bd364e892b05ebd1 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libbrillo:=[asan?,fuzzer?] dev-libs/protobuf:= dev-util/bsdiff:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/1.0.0-r440
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e5d04382762863a2b52beb2832649367
diff --git a/metadata/md5-cache/dev-util/puffin-9999 b/metadata/md5-cache/dev-util/puffin-9999
index 03f9870..f9fec36 100644
--- a/metadata/md5-cache/dev-util/puffin-9999
+++ b/metadata/md5-cache/dev-util/puffin-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/libbrillo:=[asan?,fuzzer?] dev-libs/protobuf:= dev-util/bsdiff:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ca84877a0e8850875c81edff70e0a508
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=35f62490e6ba1333dd9b84b803c5ed3a
diff --git a/metadata/md5-cache/dev-util/sccache-0.2.13 b/metadata/md5-cache/dev-util/sccache-0.2.13
index bbcddcf..15850c0 100644
--- a/metadata/md5-cache/dev-util/sccache-0.2.13
+++ b/metadata/md5-cache/dev-util/sccache-0.2.13
@@ -10,5 +10,5 @@
 RDEPEND=dist-server? ( dev-libs/openssl:0= ) gcs? ( dev-libs/openssl:0= ) dist-server? ( sys-apps/bubblewrap )
 SLOT=0
 SRC_URI=https://github.com/mozilla/sccache/archive/0.2.13.tar.gz -> sccache-0.2.13.tar.gz https://crates.io/api/v1/crates/adler32/1.0.4/download -> adler32-1.0.4.crate https://crates.io/api/v1/crates/aho-corasick/0.7.6/download -> aho-corasick-0.7.6.crate https://crates.io/api/v1/crates/ansi_term/0.11.0/download -> ansi_term-0.11.0.crate https://crates.io/api/v1/crates/ar/0.6.2/download -> ar-0.6.2.crate https://crates.io/api/v1/crates/arc-swap/0.4.4/download -> arc-swap-0.4.4.crate https://crates.io/api/v1/crates/arrayref/0.3.5/download -> arrayref-0.3.5.crate https://crates.io/api/v1/crates/arrayvec/0.5.1/download -> arrayvec-0.5.1.crate https://crates.io/api/v1/crates/ascii/0.8.7/download -> ascii-0.8.7.crate https://crates.io/api/v1/crates/ascii/0.9.3/download -> ascii-0.9.3.crate https://crates.io/api/v1/crates/assert_cmd/0.9.1/download -> assert_cmd-0.9.1.crate https://crates.io/api/v1/crates/atty/0.2.13/download -> atty-0.2.13.crate https://crates.io/api/v1/crates/autocfg/0.1.7/download -> autocfg-0.1.7.crate https://crates.io/api/v1/crates/backtrace/0.3.40/download -> backtrace-0.3.40.crate https://crates.io/api/v1/crates/backtrace-sys/0.1.32/download -> backtrace-sys-0.1.32.crate https://crates.io/api/v1/crates/base64/0.10.1/download -> base64-0.10.1.crate https://crates.io/api/v1/crates/base64/0.11.0/download -> base64-0.11.0.crate https://crates.io/api/v1/crates/base64/0.9.3/download -> base64-0.9.3.crate https://crates.io/api/v1/crates/bincode/0.8.0/download -> bincode-0.8.0.crate https://crates.io/api/v1/crates/bincode/1.2.0/download -> bincode-1.2.0.crate https://crates.io/api/v1/crates/bincode/1.2.1/download -> bincode-1.2.1.crate https://crates.io/api/v1/crates/bitflags/1.2.1/download -> bitflags-1.2.1.crate https://crates.io/api/v1/crates/blake2b_simd/0.5.9/download -> blake2b_simd-0.5.9.crate https://crates.io/api/v1/crates/block-buffer/0.7.3/download -> block-buffer-0.7.3.crate https://crates.io/api/v1/crates/block-padding/0.1.5/download -> block-padding-0.1.5.crate https://crates.io/api/v1/crates/buf_redux/0.6.3/download -> buf_redux-0.6.3.crate https://crates.io/api/v1/crates/bufstream/0.1.4/download -> bufstream-0.1.4.crate https://crates.io/api/v1/crates/byte-tools/0.3.1/download -> byte-tools-0.3.1.crate https://crates.io/api/v1/crates/byteorder/1.3.2/download -> byteorder-1.3.2.crate https://crates.io/api/v1/crates/bytes/0.4.12/download -> bytes-0.4.12.crate https://crates.io/api/v1/crates/c2-chacha/0.2.3/download -> c2-chacha-0.2.3.crate https://crates.io/api/v1/crates/case/0.1.0/download -> case-0.1.0.crate https://crates.io/api/v1/crates/cc/1.0.48/download -> cc-1.0.48.crate https://crates.io/api/v1/crates/cfg-if/0.1.10/download -> cfg-if-0.1.10.crate https://crates.io/api/v1/crates/chrono/0.4.10/download -> chrono-0.4.10.crate https://crates.io/api/v1/crates/chunked_transfer/0.3.1/download -> chunked_transfer-0.3.1.crate https://crates.io/api/v1/crates/clap/2.33.0/download -> clap-2.33.0.crate https://crates.io/api/v1/crates/cloudabi/0.0.3/download -> cloudabi-0.0.3.crate https://crates.io/api/v1/crates/combine/3.8.1/download -> combine-3.8.1.crate https://crates.io/api/v1/crates/conhash/0.4.0/download -> conhash-0.4.0.crate https://crates.io/api/v1/crates/constant_time_eq/0.1.4/download -> constant_time_eq-0.1.4.crate https://crates.io/api/v1/crates/cookie/0.12.0/download -> cookie-0.12.0.crate https://crates.io/api/v1/crates/cookie_store/0.7.0/download -> cookie_store-0.7.0.crate https://crates.io/api/v1/crates/core-foundation/0.6.4/download -> core-foundation-0.6.4.crate https://crates.io/api/v1/crates/core-foundation-sys/0.6.2/download -> core-foundation-sys-0.6.2.crate https://crates.io/api/v1/crates/counted-array/0.1.2/download -> counted-array-0.1.2.crate https://crates.io/api/v1/crates/crc32fast/1.2.0/download -> crc32fast-1.2.0.crate https://crates.io/api/v1/crates/crossbeam-deque/0.7.2/download -> crossbeam-deque-0.7.2.crate https://crates.io/api/v1/crates/crossbeam-epoch/0.8.0/download -> crossbeam-epoch-0.8.0.crate https://crates.io/api/v1/crates/crossbeam-queue/0.1.2/download -> crossbeam-queue-0.1.2.crate https://crates.io/api/v1/crates/crossbeam-utils/0.5.0/download -> crossbeam-utils-0.5.0.crate https://crates.io/api/v1/crates/crossbeam-utils/0.6.6/download -> crossbeam-utils-0.6.6.crate https://crates.io/api/v1/crates/crossbeam-utils/0.7.0/download -> crossbeam-utils-0.7.0.crate https://crates.io/api/v1/crates/crypto-mac/0.7.0/download -> crypto-mac-0.7.0.crate https://crates.io/api/v1/crates/daemonize/0.3.0/download -> daemonize-0.3.0.crate https://crates.io/api/v1/crates/derive-error/0.0.3/download -> derive-error-0.0.3.crate https://crates.io/api/v1/crates/difference/2.0.0/download -> difference-2.0.0.crate https://crates.io/api/v1/crates/digest/0.8.1/download -> digest-0.8.1.crate https://crates.io/api/v1/crates/directories/1.0.2/download -> directories-1.0.2.crate https://crates.io/api/v1/crates/dirs/1.0.5/download -> dirs-1.0.5.crate https://crates.io/api/v1/crates/dtoa/0.4.4/download -> dtoa-0.4.4.crate https://crates.io/api/v1/crates/either/1.5.3/download -> either-1.5.3.crate https://crates.io/api/v1/crates/encoding_rs/0.8.20/download -> encoding_rs-0.8.20.crate https://crates.io/api/v1/crates/env_logger/0.5.13/download -> env_logger-0.5.13.crate https://crates.io/api/v1/crates/error-chain/0.11.0/download -> error-chain-0.11.0.crate https://crates.io/api/v1/crates/error-chain/0.12.1/download -> error-chain-0.12.1.crate https://crates.io/api/v1/crates/escargot/0.3.1/download -> escargot-0.3.1.crate https://crates.io/api/v1/crates/failure/0.1.6/download -> failure-0.1.6.crate https://crates.io/api/v1/crates/failure_derive/0.1.6/download -> failure_derive-0.1.6.crate https://crates.io/api/v1/crates/fake-simd/0.1.2/download -> fake-simd-0.1.2.crate https://crates.io/api/v1/crates/filetime/0.1.15/download -> filetime-0.1.15.crate https://crates.io/api/v1/crates/filetime/0.2.8/download -> filetime-0.2.8.crate https://crates.io/api/v1/crates/flate2/1.0.13/download -> flate2-1.0.13.crate https://crates.io/api/v1/crates/float-cmp/0.4.0/download -> float-cmp-0.4.0.crate https://crates.io/api/v1/crates/fnv/1.0.6/download -> fnv-1.0.6.crate https://crates.io/api/v1/crates/foreign-types/0.3.2/download -> foreign-types-0.3.2.crate https://crates.io/api/v1/crates/foreign-types-shared/0.1.1/download -> foreign-types-shared-0.1.1.crate https://crates.io/api/v1/crates/fuchsia-cprng/0.1.1/download -> fuchsia-cprng-0.1.1.crate https://crates.io/api/v1/crates/fuchsia-zircon/0.3.3/download -> fuchsia-zircon-0.3.3.crate https://crates.io/api/v1/crates/fuchsia-zircon-sys/0.3.3/download -> fuchsia-zircon-sys-0.3.3.crate https://crates.io/api/v1/crates/futures/0.1.29/download -> futures-0.1.29.crate https://crates.io/api/v1/crates/futures-cpupool/0.1.8/download -> futures-cpupool-0.1.8.crate https://crates.io/api/v1/crates/generic-array/0.12.3/download -> generic-array-0.12.3.crate https://crates.io/api/v1/crates/getopts/0.2.21/download -> getopts-0.2.21.crate https://crates.io/api/v1/crates/getrandom/0.1.13/download -> getrandom-0.1.13.crate https://crates.io/api/v1/crates/h2/0.1.26/download -> h2-0.1.26.crate https://crates.io/api/v1/crates/hermit-abi/0.1.3/download -> hermit-abi-0.1.3.crate https://crates.io/api/v1/crates/hmac/0.7.1/download -> hmac-0.7.1.crate https://crates.io/api/v1/crates/http/0.1.21/download -> http-0.1.21.crate https://crates.io/api/v1/crates/http-body/0.1.0/download -> http-body-0.1.0.crate https://crates.io/api/v1/crates/httparse/1.3.4/download -> httparse-1.3.4.crate https://crates.io/api/v1/crates/humantime/1.3.0/download -> humantime-1.3.0.crate https://crates.io/api/v1/crates/hyper/0.12.35/download -> hyper-0.12.35.crate https://crates.io/api/v1/crates/hyper-tls/0.3.2/download -> hyper-tls-0.3.2.crate https://crates.io/api/v1/crates/hyperx/0.12.0/download -> hyperx-0.12.0.crate https://crates.io/api/v1/crates/idna/0.1.5/download -> idna-0.1.5.crate https://crates.io/api/v1/crates/idna/0.2.0/download -> idna-0.2.0.crate https://crates.io/api/v1/crates/indexmap/1.3.0/download -> indexmap-1.3.0.crate https://crates.io/api/v1/crates/iovec/0.1.4/download -> iovec-0.1.4.crate https://crates.io/api/v1/crates/itertools/0.7.11/download -> itertools-0.7.11.crate https://crates.io/api/v1/crates/itoa/0.3.4/download -> itoa-0.3.4.crate https://crates.io/api/v1/crates/itoa/0.4.4/download -> itoa-0.4.4.crate https://crates.io/api/v1/crates/jobserver/0.1.19/download -> jobserver-0.1.19.crate https://crates.io/api/v1/crates/jsonwebtoken/6.0.1/download -> jsonwebtoken-6.0.1.crate https://crates.io/api/v1/crates/kernel32-sys/0.2.2/download -> kernel32-sys-0.2.2.crate https://crates.io/api/v1/crates/language-tags/0.2.2/download -> language-tags-0.2.2.crate https://crates.io/api/v1/crates/lazy_static/1.4.0/download -> lazy_static-1.4.0.crate https://crates.io/api/v1/crates/libc/0.2.66/download -> libc-0.2.66.crate https://crates.io/api/v1/crates/libmount/0.1.15/download -> libmount-0.1.15.crate https://crates.io/api/v1/crates/libz-sys/1.0.25/download -> libz-sys-1.0.25.crate https://crates.io/api/v1/crates/linked-hash-map/0.2.1/download -> linked-hash-map-0.2.1.crate https://crates.io/api/v1/crates/local-encoding/0.2.0/download -> local-encoding-0.2.0.crate https://crates.io/api/v1/crates/lock_api/0.3.2/download -> lock_api-0.3.2.crate https://crates.io/api/v1/crates/log/0.3.9/download -> log-0.3.9.crate https://crates.io/api/v1/crates/log/0.4.8/download -> log-0.4.8.crate https://crates.io/api/v1/crates/lru-disk-cache/0.4.0/download -> lru-disk-cache-0.4.0.crate https://crates.io/api/v1/crates/matches/0.1.8/download -> matches-0.1.8.crate https://crates.io/api/v1/crates/maybe-uninit/2.0.0/download -> maybe-uninit-2.0.0.crate https://crates.io/api/v1/crates/md-5/0.8.0/download -> md-5-0.8.0.crate https://crates.io/api/v1/crates/md5/0.3.8/download -> md5-0.3.8.crate https://crates.io/api/v1/crates/memcached-rs/0.3.0/download -> memcached-rs-0.3.0.crate https://crates.io/api/v1/crates/memchr/1.0.2/download -> memchr-1.0.2.crate https://crates.io/api/v1/crates/memchr/2.2.1/download -> memchr-2.2.1.crate https://crates.io/api/v1/crates/memoffset/0.5.3/download -> memoffset-0.5.3.crate https://crates.io/api/v1/crates/mime/0.2.6/download -> mime-0.2.6.crate https://crates.io/api/v1/crates/mime/0.3.14/download -> mime-0.3.14.crate https://crates.io/api/v1/crates/mime_guess/1.8.7/download -> mime_guess-1.8.7.crate https://crates.io/api/v1/crates/mime_guess/2.0.1/download -> mime_guess-2.0.1.crate https://crates.io/api/v1/crates/miniz_oxide/0.3.5/download -> miniz_oxide-0.3.5.crate https://crates.io/api/v1/crates/mio/0.6.21/download -> mio-0.6.21.crate https://crates.io/api/v1/crates/mio-named-pipes/0.1.6/download -> mio-named-pipes-0.1.6.crate https://crates.io/api/v1/crates/mio-uds/0.6.7/download -> mio-uds-0.6.7.crate https://crates.io/api/v1/crates/miow/0.2.1/download -> miow-0.2.1.crate https://crates.io/api/v1/crates/miow/0.3.3/download -> miow-0.3.3.crate https://crates.io/api/v1/crates/msdos_time/0.1.6/download -> msdos_time-0.1.6.crate https://crates.io/api/v1/crates/multipart/0.13.6/download -> multipart-0.13.6.crate https://crates.io/api/v1/crates/native-tls/0.2.3/download -> native-tls-0.2.3.crate https://crates.io/api/v1/crates/net2/0.2.33/download -> net2-0.2.33.crate https://crates.io/api/v1/crates/nix/0.11.1/download -> nix-0.11.1.crate https://crates.io/api/v1/crates/nix/0.14.1/download -> nix-0.14.1.crate https://crates.io/api/v1/crates/normalize-line-endings/0.2.2/download -> normalize-line-endings-0.2.2.crate https://crates.io/api/v1/crates/num-integer/0.1.41/download -> num-integer-0.1.41.crate https://crates.io/api/v1/crates/num-traits/0.1.43/download -> num-traits-0.1.43.crate https://crates.io/api/v1/crates/num-traits/0.2.10/download -> num-traits-0.2.10.crate https://crates.io/api/v1/crates/num_cpus/1.11.1/download -> num_cpus-1.11.1.crate https://crates.io/api/v1/crates/number_prefix/0.2.8/download -> number_prefix-0.2.8.crate https://crates.io/api/v1/crates/opaque-debug/0.2.3/download -> opaque-debug-0.2.3.crate https://crates.io/api/v1/crates/openssl/0.10.26/download -> openssl-0.10.26.crate https://crates.io/api/v1/crates/openssl-probe/0.1.2/download -> openssl-probe-0.1.2.crate https://crates.io/api/v1/crates/openssl-sys/0.9.53/download -> openssl-sys-0.9.53.crate https://crates.io/api/v1/crates/parking_lot/0.9.0/download -> parking_lot-0.9.0.crate https://crates.io/api/v1/crates/parking_lot_core/0.6.2/download -> parking_lot_core-0.6.2.crate https://crates.io/api/v1/crates/percent-encoding/1.0.1/download -> percent-encoding-1.0.1.crate https://crates.io/api/v1/crates/percent-encoding/2.1.0/download -> percent-encoding-2.1.0.crate https://crates.io/api/v1/crates/phf/0.7.24/download -> phf-0.7.24.crate https://crates.io/api/v1/crates/phf_codegen/0.7.24/download -> phf_codegen-0.7.24.crate https://crates.io/api/v1/crates/phf_generator/0.7.24/download -> phf_generator-0.7.24.crate https://crates.io/api/v1/crates/phf_shared/0.7.24/download -> phf_shared-0.7.24.crate https://crates.io/api/v1/crates/pkg-config/0.3.17/download -> pkg-config-0.3.17.crate https://crates.io/api/v1/crates/podio/0.1.6/download -> podio-0.1.6.crate https://crates.io/api/v1/crates/ppv-lite86/0.2.6/download -> ppv-lite86-0.2.6.crate https://crates.io/api/v1/crates/predicates/0.9.1/download -> predicates-0.9.1.crate https://crates.io/api/v1/crates/predicates-core/0.9.0/download -> predicates-core-0.9.0.crate https://crates.io/api/v1/crates/predicates-tree/0.9.0/download -> predicates-tree-0.9.0.crate https://crates.io/api/v1/crates/proc-macro2/1.0.6/download -> proc-macro2-1.0.6.crate https://crates.io/api/v1/crates/publicsuffix/1.5.4/download -> publicsuffix-1.5.4.crate https://crates.io/api/v1/crates/pulldown-cmark/0.0.3/download -> pulldown-cmark-0.0.3.crate https://crates.io/api/v1/crates/quick-error/1.2.2/download -> quick-error-1.2.2.crate https://crates.io/api/v1/crates/quote/0.3.15/download -> quote-0.3.15.crate https://crates.io/api/v1/crates/quote/1.0.2/download -> quote-1.0.2.crate https://crates.io/api/v1/crates/rand/0.3.23/download -> rand-0.3.23.crate https://crates.io/api/v1/crates/rand/0.4.6/download -> rand-0.4.6.crate https://crates.io/api/v1/crates/rand/0.5.6/download -> rand-0.5.6.crate https://crates.io/api/v1/crates/rand/0.6.5/download -> rand-0.6.5.crate https://crates.io/api/v1/crates/rand/0.7.2/download -> rand-0.7.2.crate https://crates.io/api/v1/crates/rand_chacha/0.1.1/download -> rand_chacha-0.1.1.crate https://crates.io/api/v1/crates/rand_chacha/0.2.1/download -> rand_chacha-0.2.1.crate https://crates.io/api/v1/crates/rand_core/0.3.1/download -> rand_core-0.3.1.crate https://crates.io/api/v1/crates/rand_core/0.4.2/download -> rand_core-0.4.2.crate https://crates.io/api/v1/crates/rand_core/0.5.1/download -> rand_core-0.5.1.crate https://crates.io/api/v1/crates/rand_hc/0.1.0/download -> rand_hc-0.1.0.crate https://crates.io/api/v1/crates/rand_hc/0.2.0/download -> rand_hc-0.2.0.crate https://crates.io/api/v1/crates/rand_isaac/0.1.1/download -> rand_isaac-0.1.1.crate https://crates.io/api/v1/crates/rand_jitter/0.1.4/download -> rand_jitter-0.1.4.crate https://crates.io/api/v1/crates/rand_os/0.1.3/download -> rand_os-0.1.3.crate https://crates.io/api/v1/crates/rand_pcg/0.1.2/download -> rand_pcg-0.1.2.crate https://crates.io/api/v1/crates/rand_xorshift/0.1.1/download -> rand_xorshift-0.1.1.crate https://crates.io/api/v1/crates/rdrand/0.4.0/download -> rdrand-0.4.0.crate https://crates.io/api/v1/crates/redis/0.9.1/download -> redis-0.9.1.crate https://crates.io/api/v1/crates/redox_syscall/0.1.56/download -> redox_syscall-0.1.56.crate https://crates.io/api/v1/crates/redox_users/0.3.1/download -> redox_users-0.3.1.crate https://crates.io/api/v1/crates/regex/1.3.1/download -> regex-1.3.1.crate https://crates.io/api/v1/crates/regex-syntax/0.6.12/download -> regex-syntax-0.6.12.crate https://crates.io/api/v1/crates/remove_dir_all/0.5.2/download -> remove_dir_all-0.5.2.crate https://crates.io/api/v1/crates/reqwest/0.9.22/download -> reqwest-0.9.22.crate https://crates.io/api/v1/crates/retry/0.4.0/download -> retry-0.4.0.crate https://crates.io/api/v1/crates/ring/0.14.6/download -> ring-0.14.6.crate https://crates.io/api/v1/crates/rouille/2.2.0/download -> rouille-2.2.0.crate https://crates.io/api/v1/crates/rust-argon2/0.5.1/download -> rust-argon2-0.5.1.crate https://crates.io/api/v1/crates/rustc-demangle/0.1.16/download -> rustc-demangle-0.1.16.crate https://crates.io/api/v1/crates/rustc_version/0.2.3/download -> rustc_version-0.2.3.crate https://crates.io/api/v1/crates/ryu/1.0.2/download -> ryu-1.0.2.crate https://crates.io/api/v1/crates/safemem/0.2.0/download -> safemem-0.2.0.crate https://crates.io/api/v1/crates/safemem/0.3.3/download -> safemem-0.3.3.crate https://crates.io/api/v1/crates/same-file/0.1.3/download -> same-file-0.1.3.crate https://crates.io/api/v1/crates/sccache/0.2.13/download -> sccache-0.2.13.crate https://crates.io/api/v1/crates/schannel/0.1.16/download -> schannel-0.1.16.crate https://crates.io/api/v1/crates/scopeguard/1.0.0/download -> scopeguard-1.0.0.crate https://crates.io/api/v1/crates/security-framework/0.3.4/download -> security-framework-0.3.4.crate https://crates.io/api/v1/crates/security-framework-sys/0.3.3/download -> security-framework-sys-0.3.3.crate https://crates.io/api/v1/crates/selenium-rs/0.1.1/download -> selenium-rs-0.1.1.crate https://crates.io/api/v1/crates/semver/0.9.0/download -> semver-0.9.0.crate https://crates.io/api/v1/crates/semver-parser/0.7.0/download -> semver-parser-0.7.0.crate https://crates.io/api/v1/crates/serde/1.0.103/download -> serde-1.0.103.crate https://crates.io/api/v1/crates/serde_derive/1.0.103/download -> serde_derive-1.0.103.crate https://crates.io/api/v1/crates/serde_json/1.0.44/download -> serde_json-1.0.44.crate https://crates.io/api/v1/crates/serde_urlencoded/0.5.5/download -> serde_urlencoded-0.5.5.crate https://crates.io/api/v1/crates/sha-1/0.8.1/download -> sha-1-0.8.1.crate https://crates.io/api/v1/crates/sha1/0.6.0/download -> sha1-0.6.0.crate https://crates.io/api/v1/crates/sha2/0.8.0/download -> sha2-0.8.0.crate https://crates.io/api/v1/crates/signal-hook/0.1.12/download -> signal-hook-0.1.12.crate https://crates.io/api/v1/crates/signal-hook-registry/1.2.0/download -> signal-hook-registry-1.2.0.crate https://crates.io/api/v1/crates/siphasher/0.2.3/download -> siphasher-0.2.3.crate https://crates.io/api/v1/crates/skeptic/0.4.0/download -> skeptic-0.4.0.crate https://crates.io/api/v1/crates/slab/0.4.2/download -> slab-0.4.2.crate https://crates.io/api/v1/crates/smallvec/0.6.13/download -> smallvec-0.6.13.crate https://crates.io/api/v1/crates/smallvec/1.0.0/download -> smallvec-1.0.0.crate https://crates.io/api/v1/crates/socket2/0.3.11/download -> socket2-0.3.11.crate https://crates.io/api/v1/crates/spin/0.5.2/download -> spin-0.5.2.crate https://crates.io/api/v1/crates/string/0.2.1/download -> string-0.2.1.crate https://crates.io/api/v1/crates/strip-ansi-escapes/0.1.0/download -> strip-ansi-escapes-0.1.0.crate https://crates.io/api/v1/crates/strsim/0.8.0/download -> strsim-0.8.0.crate https://crates.io/api/v1/crates/subtle/1.0.0/download -> subtle-1.0.0.crate https://crates.io/api/v1/crates/syn/0.11.11/download -> syn-0.11.11.crate https://crates.io/api/v1/crates/syn/1.0.11/download -> syn-1.0.11.crate https://crates.io/api/v1/crates/synom/0.11.3/download -> synom-0.11.3.crate https://crates.io/api/v1/crates/synstructure/0.12.3/download -> synstructure-0.12.3.crate https://crates.io/api/v1/crates/syslog/4.0.1/download -> syslog-4.0.1.crate https://crates.io/api/v1/crates/tar/0.4.26/download -> tar-0.4.26.crate https://crates.io/api/v1/crates/tempdir/0.3.7/download -> tempdir-0.3.7.crate https://crates.io/api/v1/crates/tempfile/3.1.0/download -> tempfile-3.1.0.crate https://crates.io/api/v1/crates/term/0.5.2/download -> term-0.5.2.crate https://crates.io/api/v1/crates/termcolor/1.0.5/download -> termcolor-1.0.5.crate https://crates.io/api/v1/crates/textwrap/0.11.0/download -> textwrap-0.11.0.crate https://crates.io/api/v1/crates/thread_local/0.3.6/download -> thread_local-0.3.6.crate https://crates.io/api/v1/crates/threadpool/1.7.1/download -> threadpool-1.7.1.crate https://crates.io/api/v1/crates/time/0.1.42/download -> time-0.1.42.crate https://crates.io/api/v1/crates/tiny_http/0.6.2/download -> tiny_http-0.6.2.crate https://crates.io/api/v1/crates/tokio/0.1.22/download -> tokio-0.1.22.crate https://crates.io/api/v1/crates/tokio-buf/0.1.1/download -> tokio-buf-0.1.1.crate https://crates.io/api/v1/crates/tokio-codec/0.1.1/download -> tokio-codec-0.1.1.crate https://crates.io/api/v1/crates/tokio-current-thread/0.1.6/download -> tokio-current-thread-0.1.6.crate https://crates.io/api/v1/crates/tokio-executor/0.1.9/download -> tokio-executor-0.1.9.crate https://crates.io/api/v1/crates/tokio-fs/0.1.6/download -> tokio-fs-0.1.6.crate https://crates.io/api/v1/crates/tokio-io/0.1.12/download -> tokio-io-0.1.12.crate https://crates.io/api/v1/crates/tokio-named-pipes/0.1.0/download -> tokio-named-pipes-0.1.0.crate https://crates.io/api/v1/crates/tokio-process/0.2.4/download -> tokio-process-0.2.4.crate https://crates.io/api/v1/crates/tokio-reactor/0.1.11/download -> tokio-reactor-0.1.11.crate https://crates.io/api/v1/crates/tokio-serde/0.1.0/download -> tokio-serde-0.1.0.crate https://crates.io/api/v1/crates/tokio-serde-bincode/0.1.1/download -> tokio-serde-bincode-0.1.1.crate https://crates.io/api/v1/crates/tokio-signal/0.2.7/download -> tokio-signal-0.2.7.crate https://crates.io/api/v1/crates/tokio-sync/0.1.7/download -> tokio-sync-0.1.7.crate https://crates.io/api/v1/crates/tokio-tcp/0.1.3/download -> tokio-tcp-0.1.3.crate https://crates.io/api/v1/crates/tokio-threadpool/0.1.17/download -> tokio-threadpool-0.1.17.crate https://crates.io/api/v1/crates/tokio-timer/0.2.12/download -> tokio-timer-0.2.12.crate https://crates.io/api/v1/crates/tokio-udp/0.1.5/download -> tokio-udp-0.1.5.crate https://crates.io/api/v1/crates/tokio-uds/0.2.5/download -> tokio-uds-0.2.5.crate https://crates.io/api/v1/crates/toml/0.4.10/download -> toml-0.4.10.crate https://crates.io/api/v1/crates/tower/0.1.1/download -> tower-0.1.1.crate https://crates.io/api/v1/crates/tower-buffer/0.1.2/download -> tower-buffer-0.1.2.crate https://crates.io/api/v1/crates/tower-discover/0.1.0/download -> tower-discover-0.1.0.crate https://crates.io/api/v1/crates/tower-layer/0.1.0/download -> tower-layer-0.1.0.crate https://crates.io/api/v1/crates/tower-limit/0.1.1/download -> tower-limit-0.1.1.crate https://crates.io/api/v1/crates/tower-load-shed/0.1.0/download -> tower-load-shed-0.1.0.crate https://crates.io/api/v1/crates/tower-retry/0.1.0/download -> tower-retry-0.1.0.crate https://crates.io/api/v1/crates/tower-service/0.2.0/download -> tower-service-0.2.0.crate https://crates.io/api/v1/crates/tower-timeout/0.1.1/download -> tower-timeout-0.1.1.crate https://crates.io/api/v1/crates/tower-util/0.1.0/download -> tower-util-0.1.0.crate https://crates.io/api/v1/crates/tracing/0.1.10/download -> tracing-0.1.10.crate https://crates.io/api/v1/crates/tracing-attributes/0.1.5/download -> tracing-attributes-0.1.5.crate https://crates.io/api/v1/crates/tracing-core/0.1.7/download -> tracing-core-0.1.7.crate https://crates.io/api/v1/crates/treeline/0.1.0/download -> treeline-0.1.0.crate https://crates.io/api/v1/crates/try-lock/0.2.2/download -> try-lock-0.2.2.crate https://crates.io/api/v1/crates/try_from/0.3.2/download -> try_from-0.3.2.crate https://crates.io/api/v1/crates/twoway/0.1.8/download -> twoway-0.1.8.crate https://crates.io/api/v1/crates/typenum/1.11.2/download -> typenum-1.11.2.crate https://crates.io/api/v1/crates/unicase/1.4.2/download -> unicase-1.4.2.crate https://crates.io/api/v1/crates/unicase/2.6.0/download -> unicase-2.6.0.crate https://crates.io/api/v1/crates/unicode-bidi/0.3.4/download -> unicode-bidi-0.3.4.crate https://crates.io/api/v1/crates/unicode-normalization/0.1.11/download -> unicode-normalization-0.1.11.crate https://crates.io/api/v1/crates/unicode-width/0.1.7/download -> unicode-width-0.1.7.crate https://crates.io/api/v1/crates/unicode-xid/0.0.4/download -> unicode-xid-0.0.4.crate https://crates.io/api/v1/crates/unicode-xid/0.2.0/download -> unicode-xid-0.2.0.crate https://crates.io/api/v1/crates/unix_socket/0.5.0/download -> unix_socket-0.5.0.crate https://crates.io/api/v1/crates/unreachable/1.0.0/download -> unreachable-1.0.0.crate https://crates.io/api/v1/crates/untrusted/0.6.2/download -> untrusted-0.6.2.crate https://crates.io/api/v1/crates/url/1.7.2/download -> url-1.7.2.crate https://crates.io/api/v1/crates/url/2.1.0/download -> url-2.1.0.crate https://crates.io/api/v1/crates/utf8parse/0.1.1/download -> utf8parse-0.1.1.crate https://crates.io/api/v1/crates/uuid/0.7.4/download -> uuid-0.7.4.crate https://crates.io/api/v1/crates/vcpkg/0.2.8/download -> vcpkg-0.2.8.crate https://crates.io/api/v1/crates/vec_map/0.8.1/download -> vec_map-0.8.1.crate https://crates.io/api/v1/crates/version-compare/0.0.10/download -> version-compare-0.0.10.crate https://crates.io/api/v1/crates/version_check/0.1.5/download -> version_check-0.1.5.crate https://crates.io/api/v1/crates/version_check/0.9.1/download -> version_check-0.9.1.crate https://crates.io/api/v1/crates/void/1.0.2/download -> void-1.0.2.crate https://crates.io/api/v1/crates/vte/0.3.3/download -> vte-0.3.3.crate https://crates.io/api/v1/crates/walkdir/1.0.7/download -> walkdir-1.0.7.crate https://crates.io/api/v1/crates/want/0.2.0/download -> want-0.2.0.crate https://crates.io/api/v1/crates/wasi/0.7.0/download -> wasi-0.7.0.crate https://crates.io/api/v1/crates/which/2.0.1/download -> which-2.0.1.crate https://crates.io/api/v1/crates/winapi/0.2.8/download -> winapi-0.2.8.crate https://crates.io/api/v1/crates/winapi/0.3.8/download -> winapi-0.3.8.crate https://crates.io/api/v1/crates/winapi-build/0.1.1/download -> winapi-build-0.1.1.crate https://crates.io/api/v1/crates/winapi-i686-pc-windows-gnu/0.4.0/download -> winapi-i686-pc-windows-gnu-0.4.0.crate https://crates.io/api/v1/crates/winapi-util/0.1.2/download -> winapi-util-0.1.2.crate https://crates.io/api/v1/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download -> winapi-x86_64-pc-windows-gnu-0.4.0.crate https://crates.io/api/v1/crates/wincolor/1.0.2/download -> wincolor-1.0.2.crate https://crates.io/api/v1/crates/winreg/0.6.2/download -> winreg-0.6.2.crate https://crates.io/api/v1/crates/ws2_32-sys/0.2.1/download -> ws2_32-sys-0.2.1.crate https://crates.io/api/v1/crates/xattr/0.2.2/download -> xattr-0.2.2.crate https://crates.io/api/v1/crates/zip/0.4.2/download -> zip-0.4.2.crate
-_eclasses_=cargo	378185a01fbe9ce3ab1cff0a241ecd00	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	optfeature	f4941a15f8b66955c45f7b0e7c4ae890	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cargo	378185a01fbe9ce3ab1cff0a241ecd00	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	optfeature	f4941a15f8b66955c45f7b0e7c4ae890	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=cadea8621179b89bfadafda21cff556e
diff --git a/metadata/md5-cache/dev-util/servo-config-dut-usb3-public-0.0.1-r1 b/metadata/md5-cache/dev-util/servo-config-dut-usb3-public-0.0.1-r1
index cfbf63e..7fa2f46 100644
--- a/metadata/md5-cache/dev-util/servo-config-dut-usb3-public-0.0.1-r1
+++ b/metadata/md5-cache/dev-util/servo-config-dut-usb3-public-0.0.1-r1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/0.0.1-r1
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=eec52536e2d7064e4a2a0317da7e1678
diff --git a/metadata/md5-cache/dev-util/servo-config-dut-usb3-public-9999 b/metadata/md5-cache/dev-util/servo-config-dut-usb3-public-9999
index c6cc389..e70fe4f 100644
--- a/metadata/md5-cache/dev-util/servo-config-dut-usb3-public-9999
+++ b/metadata/md5-cache/dev-util/servo-config-dut-usb3-public-9999
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5abe71be9ad5e6a301efbb42f2c83a69
diff --git a/metadata/md5-cache/dev-util/shellcheck-0.7.1-r44 b/metadata/md5-cache/dev-util/shellcheck-0.7.1-r44
deleted file mode 100644
index c6f5e53..0000000
--- a/metadata/md5-cache/dev-util/shellcheck-0.7.1-r44
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install postinst postrm setup test unpack
-DEPEND=dev-haskell/aeson:=[profile?] >=dev-haskell/diff-0.2.0:=[profile?] >=dev-haskell/mtl-2.2.1:=[profile?] >=dev-haskell/parsec-3.0:=[profile?] >=dev-haskell/quickcheck-2.7.4:2=[template_haskell,profile?] dev-haskell/regex-tdfa:=[profile?] dev-haskell/semigroups:=[profile?] >=dev-lang/ghc-7.8.2:= >=dev-haskell/cabal-1.18.1.3 <dev-haskell/cabal-2.5 dev-libs/gmp[static-libs] dev-libs/libffi[static-libs] doc? ( || ( dev-haskell/haddock >=dev-lang/ghc-7.10.2 ) ) hscolour? ( dev-haskell/hscolour )
-DESCRIPTION=Shell script analysis tool
-EAPI=6
-HOMEPAGE=https://www.shellcheck.net/
-IUSE=cros_host cros_workon_tree_a3d8fd0085198723b1f72f5a33e974abd59d352d doc hscolour profile test
-KEYWORDS=*
-LICENSE=GPL-3
-PROPERTIES=live
-RESTRICT=!test? ( test )
-SLOT=0/0.7.1
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=945ede78ce88a9cf996dda8153ed31e1
diff --git a/metadata/md5-cache/dev-util/shellcheck-0.7.1-r46 b/metadata/md5-cache/dev-util/shellcheck-0.7.1-r46
new file mode 100644
index 0000000..afa65f8
--- /dev/null
+++ b/metadata/md5-cache/dev-util/shellcheck-0.7.1-r46
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install postinst postrm setup test unpack
+DEPEND=dev-haskell/aeson:=[profile?] >=dev-haskell/diff-0.2.0:=[profile?] >=dev-haskell/mtl-2.2.1:=[profile?] >=dev-haskell/parsec-3.0:=[profile?] >=dev-haskell/quickcheck-2.7.4:2=[template_haskell,profile?] dev-haskell/regex-tdfa:=[profile?] dev-haskell/semigroups:=[profile?] >=dev-lang/ghc-7.8.2:= >=dev-haskell/cabal-1.18.1.3 <dev-haskell/cabal-2.5 dev-libs/gmp[static-libs] dev-libs/libffi[static-libs] doc? ( || ( dev-haskell/haddock >=dev-lang/ghc-7.10.2 ) ) hscolour? ( dev-haskell/hscolour )
+DESCRIPTION=Shell script analysis tool
+EAPI=6
+HOMEPAGE=https://www.shellcheck.net/
+IUSE=cros_host cros_workon_tree_276632ca93702dfd95fc5be0ed8beb7dbfe7d001 doc hscolour profile test
+KEYWORDS=*
+LICENSE=GPL-3
+PROPERTIES=live
+RESTRICT=!test? ( test )
+SLOT=0/0.7.1
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=93fe1159c1ae0958951893ee517900c4
diff --git a/metadata/md5-cache/dev-util/shellcheck-9999 b/metadata/md5-cache/dev-util/shellcheck-9999
index 9a12d8d..5bcabbe 100644
--- a/metadata/md5-cache/dev-util/shellcheck-9999
+++ b/metadata/md5-cache/dev-util/shellcheck-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RESTRICT=!test? ( test )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ghc-package	cfc8267c6151d804d0c34bf9e180533f	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	haskell-cabal	433b5153bec6b0ffe21c7be2210e8396	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6b3be2cd504ce526a33c180b6eb5b232
diff --git a/metadata/md5-cache/dev-util/stressapptest-1.0.9 b/metadata/md5-cache/dev-util/stressapptest-1.0.9
index f4f64a6..2ceaeb0 100644
--- a/metadata/md5-cache/dev-util/stressapptest-1.0.9
+++ b/metadata/md5-cache/dev-util/stressapptest-1.0.9
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/libaio
 SLOT=0
 SRC_URI=https://github.com/stressapptest/stressapptest/archive/v1.0.9.tar.gz -> stressapptest-1.0.9.tar.gz
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=74eb3571eb65290e26aafb940b310de7
diff --git a/metadata/md5-cache/dev-util/stressapptest-1.0.9-r5 b/metadata/md5-cache/dev-util/stressapptest-1.0.9-r5
index f4f64a6..2ceaeb0 100644
--- a/metadata/md5-cache/dev-util/stressapptest-1.0.9-r5
+++ b/metadata/md5-cache/dev-util/stressapptest-1.0.9-r5
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/libaio
 SLOT=0
 SRC_URI=https://github.com/stressapptest/stressapptest/archive/v1.0.9.tar.gz -> stressapptest-1.0.9.tar.gz
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=74eb3571eb65290e26aafb940b310de7
diff --git a/metadata/md5-cache/dev-util/tclint-2020.10.29-r1 b/metadata/md5-cache/dev-util/tclint-2020.10.29-r1
deleted file mode 100644
index 6ba4f6e..0000000
--- a/metadata/md5-cache/dev-util/tclint-2020.10.29-r1
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Linter for Chrome OS test configuration data
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/infra/infra/+/HEAD/go/src/infra/cros/cmd/tclint
-KEYWORDS=-* amd64
-LICENSE=BSD-Google
-RESTRICT=mirror
-SLOT=0
-SRC_URI=cipd://chromiumos/infra/tclint/linux-amd64:sjRn9w13x8uDUepDyVXBmIdIjqmF0M2cw6QxTiUIihYC -> tclint-2020.10.29.zip
-_md5_=02258a7a26bc77ef47a437a55ea546f3
diff --git a/metadata/md5-cache/dev-util/test-exec-server-0.0.1-r11 b/metadata/md5-cache/dev-util/test-exec-server-0.0.1-r11
deleted file mode 100644
index f6c216b..0000000
--- a/metadata/md5-cache/dev-util/test-exec-server-0.0.1-r11
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=chromeos-base/tast-cmd:= chromeos-base/tast-proto dev-util/lro-server dev-lang/go
-DESCRIPTION=Test execution server for running tests and capturing results
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/execution
-IUSE=cros_host cros_workon_tree_e1ccefbfeef648c4212cf53a99e488290712a30d
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/tast-cmd:= chromeos-base/tast-proto dev-util/lro-server
-SLOT=0/0.0.1-r11
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=93ec922d1a7d2febcdbd4398ce084018
diff --git a/metadata/md5-cache/dev-util/test-exec-server-9999 b/metadata/md5-cache/dev-util/test-exec-server-9999
deleted file mode 100644
index 4492c45..0000000
--- a/metadata/md5-cache/dev-util/test-exec-server-9999
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=chromeos-base/tast-cmd:= chromeos-base/tast-proto dev-util/lro-server dev-lang/go
-DESCRIPTION=Test execution server for running tests and capturing results
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/execution
-IUSE=cros_host cros_workon_tree_
-KEYWORDS=~*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/tast-cmd:= chromeos-base/tast-proto dev-util/lro-server
-SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3fd2e3c3badadde38b3ffb1444373857
diff --git a/metadata/md5-cache/dev-util/test-plan-0.0.1-r10 b/metadata/md5-cache/dev-util/test-plan-0.0.1-r10
deleted file mode 100644
index b3c65d7..0000000
--- a/metadata/md5-cache/dev-util/test-plan-0.0.1-r10
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=chromeos-base/cros-config-api dev-go/glog dev-go/luci-go-common dev-go/maruel-subcommands dev-go/protobuf dev-lang/go
-DESCRIPTION=A tool to generate ChromeOS CoverageRule protos from SourceTestPlan protos.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/plan
-IUSE=cros_host cros_workon_tree_55726521578abdb261bd7fc4f14694a1224bdcd5
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/cros-config-api dev-go/glog dev-go/luci-go-common dev-go/maruel-subcommands dev-go/protobuf
-SLOT=0/0.0.1-r10
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=fd9197300abb3bfe9bb39ac8c9bfe43c
diff --git a/metadata/md5-cache/dev-util/test-plan-0.0.1-r21 b/metadata/md5-cache/dev-util/test-plan-0.0.1-r21
new file mode 100644
index 0000000..f9a0388
--- /dev/null
+++ b/metadata/md5-cache/dev-util/test-plan-0.0.1-r21
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst prepare setup test unpack
+DEPEND=chromeos-base/cros-config-api dev-go/glog dev-go/luci-go-common dev-go/maruel-subcommands dev-go/protobuf dev-lang/go
+DESCRIPTION=A tool to generate ChromeOS CoverageRule protos from SourceTestPlan protos.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/plan
+IUSE=cros_host cros_workon_tree_de50d6ec0a347802864cdf378ff2a970ee691ab7
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/cros-config-api dev-go/glog dev-go/luci-go-common dev-go/maruel-subcommands dev-go/protobuf
+SLOT=0/0.0.1-r21
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f4a5e52257416ed9181b2197ed6b88df
diff --git a/metadata/md5-cache/dev-util/test-plan-9999 b/metadata/md5-cache/dev-util/test-plan-9999
index 33ae727..70449a6 100644
--- a/metadata/md5-cache/dev-util/test-plan-9999
+++ b/metadata/md5-cache/dev-util/test-plan-9999
@@ -1,5 +1,5 @@
 BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst setup test unpack
+DEFINED_PHASES=compile info install postinst prepare setup test unpack
 DEPEND=chromeos-base/cros-config-api dev-go/glog dev-go/luci-go-common dev-go/maruel-subcommands dev-go/protobuf dev-lang/go
 DESCRIPTION=A tool to generate ChromeOS CoverageRule protos from SourceTestPlan protos.
 EAPI=7
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/cros-config-api dev-go/glog dev-go/luci-go-common dev-go/maruel-subcommands dev-go/protobuf
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b6fef6464f933edb5decf3545d07ed36
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c12ef28ccd895f2349356f49018a52c6
diff --git a/metadata/md5-cache/dev-util/test-services-0.0.1-r47 b/metadata/md5-cache/dev-util/test-services-0.0.1-r47
new file mode 100644
index 0000000..b83ed21
--- /dev/null
+++ b/metadata/md5-cache/dev-util/test-services-0.0.1-r47
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info setup unpack
+DEPEND=dev-util/cros-provision dev-util/testlabenv-local dev-util/cros-test dev-util/dut-server
+DESCRIPTION=Collection of test services installed into the cros_sdk env
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src
+IUSE=cros_host cros_workon_tree_3c054d108afe656ffecc42af955b5e553d6f62d0
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-util/cros-provision dev-util/testlabenv-local dev-util/cros-test dev-util/dut-server !<chromeos-base/test-server-0.0.1-r49
+SLOT=0/0.0.1-r47
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4e985d1eec8a7b0621ce805248c19f31
diff --git a/metadata/md5-cache/dev-util/test-services-9999 b/metadata/md5-cache/dev-util/test-services-9999
new file mode 100644
index 0000000..90ec39c
--- /dev/null
+++ b/metadata/md5-cache/dev-util/test-services-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info setup unpack
+DEPEND=dev-util/cros-provision dev-util/testlabenv-local dev-util/cros-test dev-util/dut-server
+DESCRIPTION=Collection of test services installed into the cros_sdk env
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src
+IUSE=cros_host cros_workon_tree_
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-util/cros-provision dev-util/testlabenv-local dev-util/cros-test dev-util/dut-server !<chromeos-base/test-server-0.0.1-r49
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fd84f40d6874339e82eda5062b8741db
diff --git a/metadata/md5-cache/dev-util/testlabenv-local-0.0.1-r3 b/metadata/md5-cache/dev-util/testlabenv-local-0.0.1-r3
new file mode 100644
index 0000000..efce2c1
--- /dev/null
+++ b/metadata/md5-cache/dev-util/testlabenv-local-0.0.1-r3
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst setup test unpack
+DEPEND=dev-go/genproto-rpc dev-go/mock dev-go/protobuf chromeos-base/cros-config-api dev-lang/go
+DESCRIPTION=Local test lab environment support (local DUT setup/wiring support for test execution)
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/lab/local
+IUSE=cros_host cros_workon_tree_4b946e9c995155a84021703c48444873d8061a9e
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-go/genproto-rpc dev-go/mock dev-go/protobuf chromeos-base/cros-config-api
+SLOT=0/0.0.1-r3
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a518292d342cd24153281ddde53e5fa9
diff --git a/metadata/md5-cache/dev-util/testlabenv-local-9999 b/metadata/md5-cache/dev-util/testlabenv-local-9999
new file mode 100644
index 0000000..bfbf714
--- /dev/null
+++ b/metadata/md5-cache/dev-util/testlabenv-local-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst setup test unpack
+DEPEND=dev-go/genproto-rpc dev-go/mock dev-go/protobuf chromeos-base/cros-config-api dev-lang/go
+DESCRIPTION=Local test lab environment support (local DUT setup/wiring support for test execution)
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/dev-util/+/HEAD/src/chromiumos/test/lab/local
+IUSE=cros_host cros_workon_tree_
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-go/genproto-rpc dev-go/mock dev-go/protobuf chromeos-base/cros-config-api
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ec5a865cd843f5464d08f69695b21a12
diff --git a/metadata/md5-cache/dev-util/toolchain-utils-0.0.1-r722 b/metadata/md5-cache/dev-util/toolchain-utils-0.0.1-r722
deleted file mode 100644
index beedb1c..0000000
--- a/metadata/md5-cache/dev-util/toolchain-utils-0.0.1-r722
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-DESCRIPTION=Compilation and runtime tests for toolchain
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/toolchain-utils/
-IUSE=cros_host cros_workon_tree_e911bdbba91a2d91d761b62a3d79ac8fd2c009dd
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=app-misc/pax-utils dev-lang/python sys-devel/binutils
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d2ceecdb98567e97de248c4ef35787d4
diff --git a/metadata/md5-cache/dev-util/toolchain-utils-0.0.1-r761 b/metadata/md5-cache/dev-util/toolchain-utils-0.0.1-r761
new file mode 100644
index 0000000..993b155
--- /dev/null
+++ b/metadata/md5-cache/dev-util/toolchain-utils-0.0.1-r761
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Compilation and runtime tests for toolchain
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/toolchain-utils/
+IUSE=cros_host cros_workon_tree_f6051da037280ebe193e3ef6d55dbebe33054860
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=app-misc/pax-utils dev-lang/python sys-devel/binutils
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=92fe66b9e864e1533bbac62830105bd3
diff --git a/metadata/md5-cache/dev-util/toolchain-utils-9999 b/metadata/md5-cache/dev-util/toolchain-utils-9999
index d7a229b..801c088 100644
--- a/metadata/md5-cache/dev-util/toolchain-utils-9999
+++ b/metadata/md5-cache/dev-util/toolchain-utils-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=app-misc/pax-utils dev-lang/python sys-devel/binutils
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9be17ccb113646afb8a84044c260ca25
diff --git a/metadata/md5-cache/dev-util/turbostat-5.10.46-r2263 b/metadata/md5-cache/dev-util/turbostat-5.10.46-r2263
deleted file mode 100644
index bf80522..0000000
--- a/metadata/md5-cache/dev-util/turbostat-5.10.46-r2263
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install setup unpack
-DEPEND=sys-libs/libcap:=
-DESCRIPTION=Intel processor C-state and P-state reporting tool
-EAPI=7
-HOMEPAGE=https://www.kernel.org/
-IUSE=-asan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_3202862f18c3bfd4f166d01f916bce7bcee6894d_77108e315e621449fc0ca943e5bdf79aa8744ef8_82f471a1f381850d569b3edbfa0ba3ec42139f56
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=sys-libs/libcap:=
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7bd24154a5764124c51aada9fd620e38
diff --git a/metadata/md5-cache/dev-util/turbostat-5.10.72-r2291 b/metadata/md5-cache/dev-util/turbostat-5.10.72-r2291
new file mode 100644
index 0000000..c3b69d2
--- /dev/null
+++ b/metadata/md5-cache/dev-util/turbostat-5.10.72-r2291
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install setup unpack
+DEPEND=sys-libs/libcap:=
+DESCRIPTION=Intel processor C-state and P-state reporting tool
+EAPI=7
+HOMEPAGE=https://www.kernel.org/
+IUSE=-asan asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_d05a676255f38f7f7d77997a116b0bba4327b45e_fa703ad766fda3d500b8114d3ad3cd7aa8babab6_82f471a1f381850d569b3edbfa0ba3ec42139f56
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=sys-libs/libcap:=
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8c0fbdec28bfd136e6cd7b5d855c64e7
diff --git a/metadata/md5-cache/dev-util/turbostat-9999 b/metadata/md5-cache/dev-util/turbostat-9999
index 9c74fec..fbb536c 100644
--- a/metadata/md5-cache/dev-util/turbostat-9999
+++ b/metadata/md5-cache/dev-util/turbostat-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=sys-libs/libcap:=
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7a6806778966c7da1e2e2a69d2de25a4
diff --git a/metadata/md5-cache/dev-util/u2f-ref-code-20171201 b/metadata/md5-cache/dev-util/u2f-ref-code-20171201
index ceaa67d..04f3818 100644
--- a/metadata/md5-cache/dev-util/u2f-ref-code-20171201
+++ b/metadata/md5-cache/dev-util/u2f-ref-code-20171201
@@ -7,5 +7,5 @@
 RDEPEND=dev-libs/hidapi virtual/libudev
 SLOT=0
 SRC_URI=http://github.com/google/u2f-ref-code/archive/8f37b6e2265717cbc2acd0a9c4144c7fcd09af6c.tar.gz -> u2f-ref-code-8f37b6e.tar.gz https://android.googlesource.com/platform/system/core/+archive/lollipop-release.tar.gz -> android-system-core-lollipop-release.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f5b123f5f6434a25b670a51b097bec14
diff --git a/metadata/md5-cache/dev-util/vulkan-tools-1.2.162 b/metadata/md5-cache/dev-util/vulkan-tools-1.2.162
index 11b15ce..389bf15 100644
--- a/metadata/md5-cache/dev-util/vulkan-tools-1.2.162
+++ b/metadata/md5-cache/dev-util/vulkan-tools-1.2.162
@@ -11,5 +11,5 @@
 REQUIRED_USE=cube? ( ^^ ( X wayland ) )
 SLOT=0
 SRC_URI=https://github.com/KhronosGroup/Vulkan-Tools/archive/v1.2.162.tar.gz -> vulkan-tools-1.2.162.tar.gz
-_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=5394ab94393271c00be423d617b43241
diff --git a/metadata/md5-cache/dev-util/xxd-1.10 b/metadata/md5-cache/dev-util/xxd-1.10
index 6d90c05..0e446721 100644
--- a/metadata/md5-cache/dev-util/xxd-1.10
+++ b/metadata/md5-cache/dev-util/xxd-1.10
@@ -6,5 +6,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=http://ftp.uni-erlangen.de/pub/utilities/etc/xxd-1.10.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=07c8265b5ec7a82d46d676720827db25
diff --git a/metadata/md5-cache/dev-util/xxd-1.10-r3 b/metadata/md5-cache/dev-util/xxd-1.10-r3
index 6d90c05..0e446721 100644
--- a/metadata/md5-cache/dev-util/xxd-1.10-r3
+++ b/metadata/md5-cache/dev-util/xxd-1.10-r3
@@ -6,5 +6,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=http://ftp.uni-erlangen.de/pub/utilities/etc/xxd-1.10.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=07c8265b5ec7a82d46d676720827db25
diff --git a/metadata/md5-cache/dev-vcs/git-deps-1.0.2-r1 b/metadata/md5-cache/dev-vcs/git-deps-1.0.2-r1
index 68f0787..0b5ea90 100644
--- a/metadata/md5-cache/dev-vcs/git-deps-1.0.2-r1
+++ b/metadata/md5-cache/dev-vcs/git-deps-1.0.2-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 )
 SLOT=0/1.0.2-r1
 SRC_URI=https://github.com/aspiers/git-deps/archive/1.0.2.tar.gz -> git-deps-1.0.2.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2a3787087df1859e24985d4becf8f549
diff --git a/metadata/md5-cache/dev-vcs/patman-0.0.1-r342 b/metadata/md5-cache/dev-vcs/patman-0.0.1-r342
index c9f74b2..f5543e7 100644
--- a/metadata/md5-cache/dev-vcs/patman-0.0.1-r342
+++ b/metadata/md5-cache/dev-vcs/patman-0.0.1-r342
@@ -10,5 +10,5 @@
 RDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,-python_single_target_python3_6(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f285f91b2f4903fa96603f094566f0e6
diff --git a/metadata/md5-cache/dev-vcs/patman-9999 b/metadata/md5-cache/dev-vcs/patman-9999
index 35e89ae..90f6fe5 100644
--- a/metadata/md5-cache/dev-vcs/patman-9999
+++ b/metadata/md5-cache/dev-vcs/patman-9999
@@ -10,5 +10,5 @@
 RDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,-python_single_target_python3_6(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=9a3427f4b7f4c67264d1256525e92922
diff --git a/metadata/md5-cache/media-fonts/notofonts-20200917 b/metadata/md5-cache/media-fonts/notofonts-20200917
deleted file mode 100644
index 3833378..0000000
--- a/metadata/md5-cache/media-fonts/notofonts-20200917
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=install postinst postrm setup
-DEPEND=X? ( x11-apps/mkfontdir media-fonts/encodings ) >=media-libs/fontconfig-2.4.0
-DESCRIPTION=Noto Pan Unicode fonts developed by Monotype
-EAPI=7
-IUSE=X
-KEYWORDS=*
-LICENSE=OFL-1.1
-RESTRICT=strip binchecks
-SLOT=0
-SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/notofonts-20200917.tar.xz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	font	bc3df4ed373e09f86a90e8fad39034d6
-_md5_=977846bf56587ee434ad535c9539f9f9
diff --git a/metadata/md5-cache/media-fonts/notofonts-20200917-r1 b/metadata/md5-cache/media-fonts/notofonts-20200917-r1
deleted file mode 100644
index 3833378..0000000
--- a/metadata/md5-cache/media-fonts/notofonts-20200917-r1
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=install postinst postrm setup
-DEPEND=X? ( x11-apps/mkfontdir media-fonts/encodings ) >=media-libs/fontconfig-2.4.0
-DESCRIPTION=Noto Pan Unicode fonts developed by Monotype
-EAPI=7
-IUSE=X
-KEYWORDS=*
-LICENSE=OFL-1.1
-RESTRICT=strip binchecks
-SLOT=0
-SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/notofonts-20200917.tar.xz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	font	bc3df4ed373e09f86a90e8fad39034d6
-_md5_=977846bf56587ee434ad535c9539f9f9
diff --git a/metadata/md5-cache/media-fonts/notofonts-20210716 b/metadata/md5-cache/media-fonts/notofonts-20210716
new file mode 100644
index 0000000..05527ba
--- /dev/null
+++ b/metadata/md5-cache/media-fonts/notofonts-20210716
@@ -0,0 +1,12 @@
+DEFINED_PHASES=install postinst postrm setup
+DEPEND=X? ( x11-apps/mkfontdir media-fonts/encodings ) >=media-libs/fontconfig-2.4.0
+DESCRIPTION=Noto Pan Unicode fonts developed by Monotype
+EAPI=7
+IUSE=X
+KEYWORDS=*
+LICENSE=OFL-1.1
+RESTRICT=strip binchecks
+SLOT=0
+SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/notofonts-20210716.tar.xz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	font	bc3df4ed373e09f86a90e8fad39034d6
+_md5_=977846bf56587ee434ad535c9539f9f9
diff --git a/metadata/md5-cache/media-fonts/notofonts-20210716-r1 b/metadata/md5-cache/media-fonts/notofonts-20210716-r1
new file mode 100644
index 0000000..05527ba
--- /dev/null
+++ b/metadata/md5-cache/media-fonts/notofonts-20210716-r1
@@ -0,0 +1,12 @@
+DEFINED_PHASES=install postinst postrm setup
+DEPEND=X? ( x11-apps/mkfontdir media-fonts/encodings ) >=media-libs/fontconfig-2.4.0
+DESCRIPTION=Noto Pan Unicode fonts developed by Monotype
+EAPI=7
+IUSE=X
+KEYWORDS=*
+LICENSE=OFL-1.1
+RESTRICT=strip binchecks
+SLOT=0
+SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/notofonts-20210716.tar.xz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	font	bc3df4ed373e09f86a90e8fad39034d6
+_md5_=977846bf56587ee434ad535c9539f9f9
diff --git a/metadata/md5-cache/media-gfx/deqp-2021.02.10-r3 b/metadata/md5-cache/media-gfx/deqp-2021.02.10-r3
deleted file mode 100644
index 6d76912..0000000
--- a/metadata/md5-cache/media-gfx/deqp-2021.02.10-r3
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare test unpack
-DEPEND=virtual/opengles media-libs/minigbm media-libs/libpng vulkan? ( virtual/vulkan-icd ) x11-drivers/opengles-headers x11-libs/libX11 dev-util/ninja >=dev-util/cmake-3.9.6
-DESCRIPTION=drawElements Quality Program - an OpenGL ES testsuite
-EAPI=6
-HOMEPAGE=https://android.googlesource.com/platform/external/deqp
-IUSE=-vulkan asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=Apache-2.0
-RDEPEND=virtual/opengles media-libs/minigbm media-libs/libpng vulkan? ( virtual/vulkan-icd )
-SLOT=0
-SRC_URI=https://android.googlesource.com/platform/external/deqp/+archive/e58b0b2e5075855482dc7d9991b0db35f9afe0c4.tar.gz -> deqp-e58b0b2e5075855482dc7d9991b0db35f9afe0c4.tar.gz https://github.com/KhronosGroup/glslang/archive/ffccefddfd9a02ec0c0b6dd04ef5e1042279c97f.tar.gz -> glslang-ffccefddfd9a02ec0c0b6dd04ef5e1042279c97f.tar.gz https://github.com/KhronosGroup/SPIRV-Tools/archive/cd590fa3341284cd6d1ee82366155786cfd44c96.tar.gz -> SPIRV-Tools-cd590fa3341284cd6d1ee82366155786cfd44c96.tar.gz https://github.com/KhronosGroup/SPIRV-Headers/archive/104ecc356c1bea4476320faca64440cd1df655a3.tar.gz -> SPIRV-Headers-104ecc356c1bea4476320faca64440cd1df655a3.tar.gz https://github.com/google/amber/archive/4d0115cccfcb3b73d20b6513b1c40748e6403c50.tar.gz -> amber-4d0115cccfcb3b73d20b6513b1c40748e6403c50.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=962688ba1589f7914a53229a56573d20
diff --git a/metadata/md5-cache/media-gfx/deqp-2021.08.20-r2 b/metadata/md5-cache/media-gfx/deqp-2021.08.20-r2
new file mode 100644
index 0000000..9d85f3d
--- /dev/null
+++ b/metadata/md5-cache/media-gfx/deqp-2021.08.20-r2
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install prepare test unpack
+DEPEND=virtual/opengles media-libs/minigbm media-libs/libpng vulkan? ( virtual/vulkan-icd ) x11-drivers/opengles-headers x11-libs/libX11 dev-util/ninja >=dev-util/cmake-3.9.6
+DESCRIPTION=drawElements Quality Program - an OpenGL ES testsuite
+EAPI=6
+HOMEPAGE=https://github.com/KhronosGroup/VK-GL-CTS
+IUSE=-vulkan asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=Apache-2.0
+RDEPEND=virtual/opengles media-libs/minigbm media-libs/libpng vulkan? ( virtual/vulkan-icd )
+SLOT=0
+SRC_URI=https://github.com/KhronosGroup/VK-GL-CTS/archive/34639fb3f8b467b261624a1b2863b5e808bb7aef.tar.gz -> deqp-34639fb3f8b467b261624a1b2863b5e808bb7aef.tar.gz https://github.com/KhronosGroup/glslang/archive/9158061398a96033c990e69156bd28c67114544b.tar.gz -> glslang-9158061398a96033c990e69156bd28c67114544b.tar.gz https://github.com/KhronosGroup/SPIRV-Tools/archive/11cd875ed88484f93943071083b4821b4c3d2193.tar.gz -> SPIRV-Tools-11cd875ed88484f93943071083b4821b4c3d2193.tar.gz https://github.com/KhronosGroup/SPIRV-Headers/archive/cf653e4ca4858583802b0d1656bc934edff6bd7f.tar.gz -> SPIRV-Headers-cf653e4ca4858583802b0d1656bc934edff6bd7f.tar.gz https://github.com/google/amber/archive/8797ee109e7a6ea4d1f58f387f757545fa35325b.tar.gz -> amber-8797ee109e7a6ea4d1f58f387f757545fa35325b.tar.gz
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=6a19e57573e7016ee99bf182aa8b50af
diff --git a/metadata/md5-cache/media-gfx/deqp-runner-0.6.5 b/metadata/md5-cache/media-gfx/deqp-runner-0.6.5
deleted file mode 100644
index 5bd4592..0000000
--- a/metadata/md5-cache/media-gfx/deqp-runner-0.6.5
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
-DEPEND==dev-rust/anyhow-1*:= >=dev-rust/crossbeam-utils-0.8:= <dev-rust/crossbeam-utils-0.9 >=dev-rust/flate2-1.0.18:= <dev-rust/flate2-2 =dev-rust/junit-report-0.4*:= >=dev-rust/lazy_static-1.4:= <dev-rust/lazy_static-2.0 >=dev-rust/log-0.4:= >=dev-rust/rand-0.7.3:= <dev-rust/rand-0.8 >=dev-rust/rayon-1.5.0:= <dev-rust/rayon-2.0.0 =dev-rust/regex-1*:= >=dev-rust/roxmltree-0.13.0:= <dev-rust/roxmltree-0.14 >=dev-rust/stderrlog-0.4:= <dev-rust/stderrlog-0.6 =dev-rust/structopt-0.3*:= >=dev-rust/thread-id-3.3.0:= <dev-rust/thread-id-4.0 >=dev-rust/timeout-readwrite-0.3.1:= <dev-rust/timeout-readwrite-0.4 >=virtual/rust-1.39.0:=
-DESCRIPTION=A VK-GL-CTS/dEQP wrapper program to parallelize it across CPUs and report results against a baseline.
-EAPI=7
-HOMEPAGE=https://gitlab.freedesktop.org/anholt/deqp-runner
-IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=MIT
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/r0
-SRC_URI=https://crates.io/api/v1/crates/deqp-runner/0.6.5/download -> deqp-runner-0.6.5.crate
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f8897e4d62adf57e2f4ff1bc614cfbfa
diff --git a/metadata/md5-cache/media-gfx/deqp-runner-0.8.2-r1 b/metadata/md5-cache/media-gfx/deqp-runner-0.8.2-r1
new file mode 100644
index 0000000..c1f4ec3
--- /dev/null
+++ b/metadata/md5-cache/media-gfx/deqp-runner-0.8.2-r1
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/anyhow-1*:= >=dev-rust/crossbeam-utils-0.8:= <dev-rust/crossbeam-utils-0.9 >=dev-rust/flate2-1.0.18:= <dev-rust/flate2-2 =dev-rust/junit-report-0.4*:= >=dev-rust/lazy_static-1.4:= <dev-rust/lazy_static-2.0 >=dev-rust/log-0.4:= >=dev-rust/rand-0.7.3:= <dev-rust/rand-0.8 >=dev-rust/rayon-1.5.0:= <dev-rust/rayon-2.0.0 =dev-rust/regex-1*:= >=dev-rust/roxmltree-0.13.0:= <dev-rust/roxmltree-0.14 >=dev-rust/stderrlog-0.4:= <dev-rust/stderrlog-0.6 =dev-rust/structopt-0.3*:= >=dev-rust/thread-id-3.3.0:= <dev-rust/thread-id-4.0 >=dev-rust/timeout-readwrite-0.3.1:= <dev-rust/timeout-readwrite-0.4 >=virtual/rust-1.39.0:=
+DESCRIPTION=A VK-GL-CTS/dEQP wrapper program to parallelize it across CPUs and report results against a baseline.
+EAPI=7
+HOMEPAGE=https://gitlab.freedesktop.org/anholt/deqp-runner
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=MIT
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/r1
+SRC_URI=https://crates.io/api/v1/crates/deqp-runner/0.8.2/download -> deqp-runner-0.8.2.crate
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f8897e4d62adf57e2f4ff1bc614cfbfa
diff --git a/metadata/md5-cache/media-gfx/perceptualdiff-1.1.1 b/metadata/md5-cache/media-gfx/perceptualdiff-1.1.1
index c896c78..ffaf291 100644
--- a/metadata/md5-cache/media-gfx/perceptualdiff-1.1.1
+++ b/metadata/md5-cache/media-gfx/perceptualdiff-1.1.1
@@ -8,5 +8,5 @@
 RDEPEND=media-libs/freeimage
 SLOT=0
 SRC_URI=mirror://sourceforge/pdiff/perceptualdiff-1.1.1-src.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=5ef353efd034c99a0872d94f278d16cb
diff --git a/metadata/md5-cache/media-gfx/perceptualdiff-1.1.1-r2 b/metadata/md5-cache/media-gfx/perceptualdiff-1.1.1-r2
index c896c78..ffaf291 100644
--- a/metadata/md5-cache/media-gfx/perceptualdiff-1.1.1-r2
+++ b/metadata/md5-cache/media-gfx/perceptualdiff-1.1.1-r2
@@ -8,5 +8,5 @@
 RDEPEND=media-libs/freeimage
 SLOT=0
 SRC_URI=mirror://sourceforge/pdiff/perceptualdiff-1.1.1-src.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=5ef353efd034c99a0872d94f278d16cb
diff --git a/metadata/md5-cache/media-gfx/sane-airscan-0.99.26 b/metadata/md5-cache/media-gfx/sane-airscan-0.99.26
deleted file mode 100644
index 5ffc3b0..0000000
--- a/metadata/md5-cache/media-gfx/sane-airscan-0.99.26
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
-DEFINED_PHASES=compile configure install test
-DEPEND=dev-libs/libxml2:= media-gfx/sane-backends:= media-libs/libjpeg-turbo:= media-libs/libpng:= net-dns/avahi:= net-libs/libsoup:=
-DESCRIPTION=eSCL and WSD SANE backend
-EAPI=7
-HOMEPAGE=https://github.com/alexpevzner/sane-airscan
-IUSE=asan fuzzer fuzzer asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=dev-libs/libxml2:= media-gfx/sane-backends:= media-libs/libjpeg-turbo:= media-libs/libpng:= net-dns/avahi:= net-libs/libsoup:=
-SLOT=0/0.99.26
-SRC_URI=https://github.com/alexpevzner/sane-airscan/archive/0.99.26.tar.gz -> sane-airscan-0.99.26.tar.gz
-_eclasses_=cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=50edfd631e1f530d6ec1caea53e2b5bf
diff --git a/metadata/md5-cache/media-gfx/sane-airscan-0.99.26-r2 b/metadata/md5-cache/media-gfx/sane-airscan-0.99.26-r2
deleted file mode 100644
index 40eb0c0..0000000
--- a/metadata/md5-cache/media-gfx/sane-airscan-0.99.26-r2
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
-DEFINED_PHASES=compile configure install test
-DEPEND=dev-libs/libxml2:= media-gfx/sane-backends:= media-libs/libjpeg-turbo:= media-libs/libpng:= net-dns/avahi:= net-libs/libsoup:=
-DESCRIPTION=eSCL and WSD SANE backend
-EAPI=7
-HOMEPAGE=https://github.com/alexpevzner/sane-airscan
-IUSE=asan fuzzer fuzzer asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=dev-libs/libxml2:= media-gfx/sane-backends:= media-libs/libjpeg-turbo:= media-libs/libpng:= net-dns/avahi:= net-libs/libsoup:=
-SLOT=0/0.99.26-r2
-SRC_URI=https://github.com/alexpevzner/sane-airscan/archive/0.99.26.tar.gz -> sane-airscan-0.99.26.tar.gz
-_eclasses_=cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=50edfd631e1f530d6ec1caea53e2b5bf
diff --git a/metadata/md5-cache/media-gfx/sane-airscan-0.99.27_pre20210716 b/metadata/md5-cache/media-gfx/sane-airscan-0.99.27_pre20210716
new file mode 100644
index 0000000..ecbf454
--- /dev/null
+++ b/metadata/md5-cache/media-gfx/sane-airscan-0.99.27_pre20210716
@@ -0,0 +1,14 @@
+BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEFINED_PHASES=compile configure install test
+DEPEND=dev-libs/libxml2:= media-gfx/sane-backends:= media-libs/libjpeg-turbo:= media-libs/libpng:= net-dns/avahi:= net-libs/libsoup:=
+DESCRIPTION=eSCL and WSD SANE backend
+EAPI=7
+HOMEPAGE=https://github.com/alexpevzner/sane-airscan
+IUSE=fuzzer fuzzer asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=GPL-2
+RDEPEND=dev-libs/libxml2:= media-gfx/sane-backends:= media-libs/libjpeg-turbo:= media-libs/libpng:= net-dns/avahi:= net-libs/libsoup:=
+SLOT=0/0.99.27_pre20210716
+SRC_URI=https://github.com/alexpevzner/sane-airscan/archive/a7eb696c6930ab3ab4191ce1cdaffd03ef09fd05.tar.gz -> sane-airscan-a7eb696c6930ab3ab4191ce1cdaffd03ef09fd05.tar.gz
+_eclasses_=cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=20c546d26033cca6a207900038fbe1ab
diff --git a/metadata/md5-cache/media-gfx/sane-airscan-0.99.27_pre20210716-r2 b/metadata/md5-cache/media-gfx/sane-airscan-0.99.27_pre20210716-r2
new file mode 100644
index 0000000..cca70d8
--- /dev/null
+++ b/metadata/md5-cache/media-gfx/sane-airscan-0.99.27_pre20210716-r2
@@ -0,0 +1,14 @@
+BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEFINED_PHASES=compile configure install test
+DEPEND=dev-libs/libxml2:= media-gfx/sane-backends:= media-libs/libjpeg-turbo:= media-libs/libpng:= net-dns/avahi:= net-libs/libsoup:=
+DESCRIPTION=eSCL and WSD SANE backend
+EAPI=7
+HOMEPAGE=https://github.com/alexpevzner/sane-airscan
+IUSE=fuzzer fuzzer asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=GPL-2
+RDEPEND=dev-libs/libxml2:= media-gfx/sane-backends:= media-libs/libjpeg-turbo:= media-libs/libpng:= net-dns/avahi:= net-libs/libsoup:=
+SLOT=0/0.99.27_pre20210716-r2
+SRC_URI=https://github.com/alexpevzner/sane-airscan/archive/a7eb696c6930ab3ab4191ce1cdaffd03ef09fd05.tar.gz -> sane-airscan-a7eb696c6930ab3ab4191ce1cdaffd03ef09fd05.tar.gz
+_eclasses_=cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=20c546d26033cca6a207900038fbe1ab
diff --git a/metadata/md5-cache/media-gfx/sane-backends-1.0.32 b/metadata/md5-cache/media-gfx/sane-backends-1.0.32
index 79127d5..90690b0 100644
--- a/metadata/md5-cache/media-gfx/sane-backends-1.0.32
+++ b/metadata/md5-cache/media-gfx/sane-backends-1.0.32
@@ -4,12 +4,12 @@
 DESCRIPTION=Scanner Access Now Easy - Backends
 EAPI=7
 HOMEPAGE=http://www.sane-project.org/
-IUSE=gphoto2 ipv6 snmp systemd threads usb v4l xinetd zeroconf +sane_backends_abaton +sane_backends_agfafocus +sane_backends_apple +sane_backends_artec +sane_backends_artec_eplus48u +sane_backends_as6e +sane_backends_avision +sane_backends_bh +sane_backends_canon +sane_backends_canon630u +sane_backends_canon_dr +sane_backends_canon_lide70 -sane_backends_canon_pp +sane_backends_cardscan +sane_backends_coolscan +sane_backends_coolscan2 +sane_backends_coolscan3 +sane_backends_dc210 +sane_backends_dc240 +sane_backends_dc25 +sane_backends_dell1600n_net +sane_backends_dmc +sane_backends_epjitsu +sane_backends_epson +sane_backends_epson2 -sane_backends_escl +sane_backends_fujitsu +sane_backends_genesys +sane_backends_gt68xx +sane_backends_hp +sane_backends_hp3500 +sane_backends_hp3900 +sane_backends_hp4200 +sane_backends_hp5400 +sane_backends_hp5590 +sane_backends_hpljm1005 -sane_backends_hpsj5s +sane_backends_hs2p +sane_backends_ibm +sane_backends_kodak +sane_backends_kodakaio +sane_backends_kvs1025 +sane_backends_kvs20xx sane_backends_kvs40xx +sane_backends_leo +sane_backends_lexmark +sane_backends_ma1509 +sane_backends_magicolor +sane_backends_matsushita +sane_backends_microtek +sane_backends_microtek2 +sane_backends_mustek -sane_backends_mustek_pp +sane_backends_mustek_usb sane_backends_mustek_usb2 +sane_backends_nec +sane_backends_net +sane_backends_niash +sane_backends_p5 +sane_backends_pie +sane_backends_pixma +sane_backends_plustek +sane_backends_plustek_pp -sane_backends_pnm +sane_backends_qcam +sane_backends_ricoh +sane_backends_ricoh2 +sane_backends_rts8891 +sane_backends_s9036 +sane_backends_sceptre +sane_backends_sharp +sane_backends_sm3600 +sane_backends_sm3840 +sane_backends_snapscan +sane_backends_sp15c +sane_backends_st400 +sane_backends_stv680 +sane_backends_tamarack +sane_backends_teco1 +sane_backends_teco2 +sane_backends_teco3 +sane_backends_test +sane_backends_u12 +sane_backends_umax +sane_backends_umax1220u +sane_backends_umax_pp +sane_backends_xerox_mfp abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 asan coverage fuzzer msan tsan ubsan
+IUSE=gphoto2 ipv6 snmp systemd threads usb v4l xinetd zeroconf +sane_backends_abaton +sane_backends_agfafocus +sane_backends_apple +sane_backends_artec +sane_backends_artec_eplus48u +sane_backends_as6e +sane_backends_avision +sane_backends_bh +sane_backends_canon +sane_backends_canon630u +sane_backends_canon_dr +sane_backends_canon_lide70 -sane_backends_canon_pp +sane_backends_cardscan +sane_backends_coolscan +sane_backends_coolscan2 +sane_backends_coolscan3 +sane_backends_dc210 +sane_backends_dc240 +sane_backends_dc25 +sane_backends_dell1600n_net +sane_backends_dmc +sane_backends_epjitsu +sane_backends_epson +sane_backends_epson2 +sane_backends_epsonds -sane_backends_escl +sane_backends_fujitsu +sane_backends_genesys +sane_backends_gt68xx +sane_backends_hp +sane_backends_hp3500 +sane_backends_hp3900 +sane_backends_hp4200 +sane_backends_hp5400 +sane_backends_hp5590 +sane_backends_hpljm1005 -sane_backends_hpsj5s +sane_backends_hs2p +sane_backends_ibm +sane_backends_kodak +sane_backends_kodakaio +sane_backends_kvs1025 +sane_backends_kvs20xx sane_backends_kvs40xx +sane_backends_leo +sane_backends_lexmark +sane_backends_ma1509 +sane_backends_magicolor +sane_backends_matsushita +sane_backends_microtek +sane_backends_microtek2 +sane_backends_mustek -sane_backends_mustek_pp +sane_backends_mustek_usb sane_backends_mustek_usb2 +sane_backends_nec +sane_backends_net +sane_backends_niash +sane_backends_p5 +sane_backends_pie +sane_backends_pixma +sane_backends_plustek +sane_backends_plustek_pp -sane_backends_pnm +sane_backends_qcam +sane_backends_ricoh +sane_backends_ricoh2 +sane_backends_rts8891 +sane_backends_s9036 +sane_backends_sceptre +sane_backends_sharp +sane_backends_sm3600 +sane_backends_sm3840 +sane_backends_snapscan +sane_backends_sp15c +sane_backends_st400 +sane_backends_stv680 +sane_backends_tamarack +sane_backends_teco1 +sane_backends_teco2 +sane_backends_teco3 +sane_backends_test +sane_backends_u12 +sane_backends_umax +sane_backends_umax1220u +sane_backends_umax_pp +sane_backends_xerox_mfp abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 asan coverage fuzzer msan tsan ubsan
 KEYWORDS=*
 LICENSE=GPL-2 public-domain
 RDEPEND=sane_backends_dc210? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_dc240? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_dell1600n_net? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=media-libs/tiff-3.9.7-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_canon_pp? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_hpsj5s? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_mustek_pp? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) usb? ( >=virtual/libusb-1-r1:1=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) gphoto2? ( >=media-libs/libgphoto2-2.5.3.1:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) v4l? ( >=media-libs/libv4l-0.9.5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xinetd? ( sys-apps/xinetd ) snmp? ( net-analyzer/net-snmp:0= ) systemd? ( sys-apps/systemd:0= ) zeroconf? ( >=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sys-apps/baselayout
 REQUIRED_USE=sane_backends_mustek_usb2? ( threads ) sane_backends_kvs40xx? ( threads )
 SLOT=0
 SRC_URI=https://gitlab.com/sane-project/backends/-/archive/1.0.32/backends-1.0.32.tar.gz -> sane-backends-1.0.32.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=015968e2f62386d7fe0643a931383ffa
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=b3cba1f630fcd737de682c043563803b
diff --git a/metadata/md5-cache/media-gfx/sane-backends-1.0.32-r2 b/metadata/md5-cache/media-gfx/sane-backends-1.0.32-r2
deleted file mode 100644
index 79127d5..0000000
--- a/metadata/md5-cache/media-gfx/sane-backends-1.0.32-r2
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=>=app-portage/elt-patches-20170815 virtual/pkgconfig virtual/pkgconfig
-DEFINED_PHASES=compile configure install postinst prepare setup test
-DEPEND=sane_backends_dc210? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_dc240? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_dell1600n_net? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=media-libs/tiff-3.9.7-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_canon_pp? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_hpsj5s? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_mustek_pp? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) usb? ( >=virtual/libusb-1-r1:1=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) gphoto2? ( >=media-libs/libgphoto2-2.5.3.1:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) v4l? ( >=media-libs/libv4l-0.9.5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xinetd? ( sys-apps/xinetd ) snmp? ( net-analyzer/net-snmp:0= ) systemd? ( sys-apps/systemd:0= ) zeroconf? ( >=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) v4l? ( sys-kernel/linux-headers ) >=sys-devel/gettext-0.18.1 >=virtual/pkgconfig-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
-DESCRIPTION=Scanner Access Now Easy - Backends
-EAPI=7
-HOMEPAGE=http://www.sane-project.org/
-IUSE=gphoto2 ipv6 snmp systemd threads usb v4l xinetd zeroconf +sane_backends_abaton +sane_backends_agfafocus +sane_backends_apple +sane_backends_artec +sane_backends_artec_eplus48u +sane_backends_as6e +sane_backends_avision +sane_backends_bh +sane_backends_canon +sane_backends_canon630u +sane_backends_canon_dr +sane_backends_canon_lide70 -sane_backends_canon_pp +sane_backends_cardscan +sane_backends_coolscan +sane_backends_coolscan2 +sane_backends_coolscan3 +sane_backends_dc210 +sane_backends_dc240 +sane_backends_dc25 +sane_backends_dell1600n_net +sane_backends_dmc +sane_backends_epjitsu +sane_backends_epson +sane_backends_epson2 -sane_backends_escl +sane_backends_fujitsu +sane_backends_genesys +sane_backends_gt68xx +sane_backends_hp +sane_backends_hp3500 +sane_backends_hp3900 +sane_backends_hp4200 +sane_backends_hp5400 +sane_backends_hp5590 +sane_backends_hpljm1005 -sane_backends_hpsj5s +sane_backends_hs2p +sane_backends_ibm +sane_backends_kodak +sane_backends_kodakaio +sane_backends_kvs1025 +sane_backends_kvs20xx sane_backends_kvs40xx +sane_backends_leo +sane_backends_lexmark +sane_backends_ma1509 +sane_backends_magicolor +sane_backends_matsushita +sane_backends_microtek +sane_backends_microtek2 +sane_backends_mustek -sane_backends_mustek_pp +sane_backends_mustek_usb sane_backends_mustek_usb2 +sane_backends_nec +sane_backends_net +sane_backends_niash +sane_backends_p5 +sane_backends_pie +sane_backends_pixma +sane_backends_plustek +sane_backends_plustek_pp -sane_backends_pnm +sane_backends_qcam +sane_backends_ricoh +sane_backends_ricoh2 +sane_backends_rts8891 +sane_backends_s9036 +sane_backends_sceptre +sane_backends_sharp +sane_backends_sm3600 +sane_backends_sm3840 +sane_backends_snapscan +sane_backends_sp15c +sane_backends_st400 +sane_backends_stv680 +sane_backends_tamarack +sane_backends_teco1 +sane_backends_teco2 +sane_backends_teco3 +sane_backends_test +sane_backends_u12 +sane_backends_umax +sane_backends_umax1220u +sane_backends_umax_pp +sane_backends_xerox_mfp abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=GPL-2 public-domain
-RDEPEND=sane_backends_dc210? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_dc240? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_dell1600n_net? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=media-libs/tiff-3.9.7-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_canon_pp? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_hpsj5s? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_mustek_pp? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) usb? ( >=virtual/libusb-1-r1:1=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) gphoto2? ( >=media-libs/libgphoto2-2.5.3.1:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) v4l? ( >=media-libs/libv4l-0.9.5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xinetd? ( sys-apps/xinetd ) snmp? ( net-analyzer/net-snmp:0= ) systemd? ( sys-apps/systemd:0= ) zeroconf? ( >=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sys-apps/baselayout
-REQUIRED_USE=sane_backends_mustek_usb2? ( threads ) sane_backends_kvs40xx? ( threads )
-SLOT=0
-SRC_URI=https://gitlab.com/sane-project/backends/-/archive/1.0.32/backends-1.0.32.tar.gz -> sane-backends-1.0.32.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=015968e2f62386d7fe0643a931383ffa
diff --git a/metadata/md5-cache/media-gfx/sane-backends-1.0.32-r4 b/metadata/md5-cache/media-gfx/sane-backends-1.0.32-r4
new file mode 100644
index 0000000..90690b0
--- /dev/null
+++ b/metadata/md5-cache/media-gfx/sane-backends-1.0.32-r4
@@ -0,0 +1,15 @@
+BDEPEND=>=app-portage/elt-patches-20170815 virtual/pkgconfig virtual/pkgconfig
+DEFINED_PHASES=compile configure install postinst prepare setup test
+DEPEND=sane_backends_dc210? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_dc240? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_dell1600n_net? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=media-libs/tiff-3.9.7-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_canon_pp? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_hpsj5s? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_mustek_pp? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) usb? ( >=virtual/libusb-1-r1:1=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) gphoto2? ( >=media-libs/libgphoto2-2.5.3.1:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) v4l? ( >=media-libs/libv4l-0.9.5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xinetd? ( sys-apps/xinetd ) snmp? ( net-analyzer/net-snmp:0= ) systemd? ( sys-apps/systemd:0= ) zeroconf? ( >=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) v4l? ( sys-kernel/linux-headers ) >=sys-devel/gettext-0.18.1 >=virtual/pkgconfig-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
+DESCRIPTION=Scanner Access Now Easy - Backends
+EAPI=7
+HOMEPAGE=http://www.sane-project.org/
+IUSE=gphoto2 ipv6 snmp systemd threads usb v4l xinetd zeroconf +sane_backends_abaton +sane_backends_agfafocus +sane_backends_apple +sane_backends_artec +sane_backends_artec_eplus48u +sane_backends_as6e +sane_backends_avision +sane_backends_bh +sane_backends_canon +sane_backends_canon630u +sane_backends_canon_dr +sane_backends_canon_lide70 -sane_backends_canon_pp +sane_backends_cardscan +sane_backends_coolscan +sane_backends_coolscan2 +sane_backends_coolscan3 +sane_backends_dc210 +sane_backends_dc240 +sane_backends_dc25 +sane_backends_dell1600n_net +sane_backends_dmc +sane_backends_epjitsu +sane_backends_epson +sane_backends_epson2 +sane_backends_epsonds -sane_backends_escl +sane_backends_fujitsu +sane_backends_genesys +sane_backends_gt68xx +sane_backends_hp +sane_backends_hp3500 +sane_backends_hp3900 +sane_backends_hp4200 +sane_backends_hp5400 +sane_backends_hp5590 +sane_backends_hpljm1005 -sane_backends_hpsj5s +sane_backends_hs2p +sane_backends_ibm +sane_backends_kodak +sane_backends_kodakaio +sane_backends_kvs1025 +sane_backends_kvs20xx sane_backends_kvs40xx +sane_backends_leo +sane_backends_lexmark +sane_backends_ma1509 +sane_backends_magicolor +sane_backends_matsushita +sane_backends_microtek +sane_backends_microtek2 +sane_backends_mustek -sane_backends_mustek_pp +sane_backends_mustek_usb sane_backends_mustek_usb2 +sane_backends_nec +sane_backends_net +sane_backends_niash +sane_backends_p5 +sane_backends_pie +sane_backends_pixma +sane_backends_plustek +sane_backends_plustek_pp -sane_backends_pnm +sane_backends_qcam +sane_backends_ricoh +sane_backends_ricoh2 +sane_backends_rts8891 +sane_backends_s9036 +sane_backends_sceptre +sane_backends_sharp +sane_backends_sm3600 +sane_backends_sm3840 +sane_backends_snapscan +sane_backends_sp15c +sane_backends_st400 +sane_backends_stv680 +sane_backends_tamarack +sane_backends_teco1 +sane_backends_teco2 +sane_backends_teco3 +sane_backends_test +sane_backends_u12 +sane_backends_umax +sane_backends_umax1220u +sane_backends_umax_pp +sane_backends_xerox_mfp abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=GPL-2 public-domain
+RDEPEND=sane_backends_dc210? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_dc240? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_dell1600n_net? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=media-libs/tiff-3.9.7-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_canon_pp? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_hpsj5s? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sane_backends_mustek_pp? ( >=sys-libs/libieee1284-0.2.11-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) usb? ( >=virtual/libusb-1-r1:1=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) gphoto2? ( >=media-libs/libgphoto2-2.5.3.1:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) v4l? ( >=media-libs/libv4l-0.9.5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xinetd? ( sys-apps/xinetd ) snmp? ( net-analyzer/net-snmp:0= ) systemd? ( sys-apps/systemd:0= ) zeroconf? ( >=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) sys-apps/baselayout
+REQUIRED_USE=sane_backends_mustek_usb2? ( threads ) sane_backends_kvs40xx? ( threads )
+SLOT=0
+SRC_URI=https://gitlab.com/sane-project/backends/-/archive/1.0.32/backends-1.0.32.tar.gz -> sane-backends-1.0.32.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=b3cba1f630fcd737de682c043563803b
diff --git a/metadata/md5-cache/media-gfx/vadumpcaps-20190304 b/metadata/md5-cache/media-gfx/vadumpcaps-20190304
index 1972f8d..67ad6bd 100644
--- a/metadata/md5-cache/media-gfx/vadumpcaps-20190304
+++ b/metadata/md5-cache/media-gfx/vadumpcaps-20190304
@@ -8,5 +8,5 @@
 RDEPEND=>=x11-libs/libva-2.1.0 >=x11-libs/libdrm-2.4
 SLOT=0
 SRC_URI=https://github.com/fhvwy/vadumpcaps/archive/fb4dfef76c0fa08f853af377d5d4945d5fb3001c.tar.gz -> vadumpcaps-20190304.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fac91cdeb2867ded6f499bf7ed041d28
diff --git a/metadata/md5-cache/media-gfx/vadumpcaps-20190304-r1 b/metadata/md5-cache/media-gfx/vadumpcaps-20190304-r1
index 1972f8d..67ad6bd 100644
--- a/metadata/md5-cache/media-gfx/vadumpcaps-20190304-r1
+++ b/metadata/md5-cache/media-gfx/vadumpcaps-20190304-r1
@@ -8,5 +8,5 @@
 RDEPEND=>=x11-libs/libva-2.1.0 >=x11-libs/libdrm-2.4
 SLOT=0
 SRC_URI=https://github.com/fhvwy/vadumpcaps/archive/fb4dfef76c0fa08f853af377d5d4945d5fb3001c.tar.gz -> vadumpcaps-20190304.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fac91cdeb2867ded6f499bf7ed041d28
diff --git a/metadata/md5-cache/media-libs/alsa-lib-1.2.1.2 b/metadata/md5-cache/media-libs/alsa-lib-1.2.1.2
index aeae023..7ff0c0d 100644
--- a/metadata/md5-cache/media-libs/alsa-lib-1.2.1.2
+++ b/metadata/md5-cache/media-libs/alsa-lib-1.2.1.2
@@ -11,5 +11,5 @@
 REQUIRED_USE=python? ( ^^ ( python_single_target_python2_7 python_single_target_python3_6 python_single_target_python3_7 ) )
 SLOT=0
 SRC_URI=https://www.alsa-project.org/files/pub/lib/alsa-lib-1.2.1.2.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2b299008ced47e01149ea404e09151f5
diff --git a/metadata/md5-cache/media-libs/alsa-lib-1.2.1.2-r2 b/metadata/md5-cache/media-libs/alsa-lib-1.2.1.2-r2
index aeae023..7ff0c0d 100644
--- a/metadata/md5-cache/media-libs/alsa-lib-1.2.1.2-r2
+++ b/metadata/md5-cache/media-libs/alsa-lib-1.2.1.2-r2
@@ -11,5 +11,5 @@
 REQUIRED_USE=python? ( ^^ ( python_single_target_python2_7 python_single_target_python3_6 python_single_target_python3_7 ) )
 SLOT=0
 SRC_URI=https://www.alsa-project.org/files/pub/lib/alsa-lib-1.2.1.2.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=2b299008ced47e01149ea404e09151f5
diff --git a/metadata/md5-cache/media-libs/arc-camera-profile-0.0.1-r697 b/metadata/md5-cache/media-libs/arc-camera-profile-0.0.1-r697
deleted file mode 100644
index fc5e1fb..0000000
--- a/metadata/md5-cache/media-libs/arc-camera-profile-0.0.1-r697
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Runtime detect the number of cameras on device to generate corresponding media_profiles.xml.
-EAPI=5
-IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_309b7116bd1f5aeb3ece4e1d90ce13f61b7e1b4b_049eedf136293a1ab81617017200cb31032eb384_d1fd07ac03f1ac6e670181ebd45b30e31efe5a87_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_309b7116bd1f5aeb3ece4e1d90ce13f61b7e1b4b_049eedf136293a1ab81617017200cb31032eb384_d1fd07ac03f1ac6e670181ebd45b30e31efe5a87_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=d8e69c022cf9cce46896f0d7ab128b8e
diff --git a/metadata/md5-cache/media-libs/arc-camera-profile-0.0.1-r778 b/metadata/md5-cache/media-libs/arc-camera-profile-0.0.1-r778
new file mode 100644
index 0000000..edc7b0b
--- /dev/null
+++ b/metadata/md5-cache/media-libs/arc-camera-profile-0.0.1-r778
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Runtime detect the number of cameras on device to generate corresponding media_profiles.xml.
+EAPI=5
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_b859b43cd8fde226526c57956659101cf8b11b74_21f96983b4c04d23267767a4f371212fe68039d9_3ab43d75b077ff01eff298ac286116bbcbb27bd8_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_b859b43cd8fde226526c57956659101cf8b11b74_21f96983b4c04d23267767a4f371212fe68039d9_3ab43d75b077ff01eff298ac286116bbcbb27bd8_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=7b999235ab86d9bc5f3092971d466b50
diff --git a/metadata/md5-cache/media-libs/arc-camera-profile-9999 b/metadata/md5-cache/media-libs/arc-camera-profile-9999
index 9c86532..06889d3 100644
--- a/metadata/md5-cache/media-libs/arc-camera-profile-9999
+++ b/metadata/md5-cache/media-libs/arc-camera-profile-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=68c0c61b82a230f6454b3d842366e922
diff --git a/metadata/md5-cache/media-libs/arc-cros-gralloc-0.0.1-r432 b/metadata/md5-cache/media-libs/arc-cros-gralloc-0.0.1-r432
deleted file mode 100644
index b7f1d4d..0000000
--- a/metadata/md5-cache/media-libs/arc-cros-gralloc-0.0.1-r432
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=!<media-libs/minigbm-0.0.1-r438 x11-libs/arc-libdrm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] video_cards_amdgpu? ( virtual/arc-opengles ) sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=ChromeOS gralloc implementation
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/minigbm
-IUSE=kernel-3_18 video_cards_amdgpu video_cards_exynos video_cards_intel video_cards_marvell video_cards_mediatek video_cards_msm video_cards_rockchip video_cards_tegra video_cards_virgl minigbm_platform_mt8183 minigbm_platform_mt8192 minigbm_platform_mt8195 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master cros_host cros_workon_tree_6db1492d66cd8acef88bacfe95f001e289adc55c
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!<media-libs/minigbm-0.0.1-r438 x11-libs/arc-libdrm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-REQUIRED_USE=cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
-SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=fb1adc7731880c3fad810d5610e97722
diff --git a/metadata/md5-cache/media-libs/arc-cros-gralloc-0.0.1-r482 b/metadata/md5-cache/media-libs/arc-cros-gralloc-0.0.1-r482
new file mode 100644
index 0000000..50376c5
--- /dev/null
+++ b/metadata/md5-cache/media-libs/arc-cros-gralloc-0.0.1-r482
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=!<media-libs/minigbm-0.0.1-r438 x11-libs/arc-libdrm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] video_cards_amdgpu? ( virtual/arc-opengles ) sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+DESCRIPTION=ChromeOS gralloc implementation
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/minigbm
+IUSE=kernel-3_18 video_cards_amdgpu video_cards_exynos video_cards_intel video_cards_marvell video_cards_mediatek video_cards_msm video_cards_rockchip video_cards_tegra video_cards_virgl minigbm_platform_mt8183 minigbm_platform_mt8192 minigbm_platform_mt8195 minigbm_platform_sc7280 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master cros_host cros_workon_tree_81cd37f0714198bfcfc7939e20046acb470d31c4
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!<media-libs/minigbm-0.0.1-r438 x11-libs/arc-libdrm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+REQUIRED_USE=cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
+SLOT=0
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7ae99da7ad97ccdf0d7aca94379f1cd3
diff --git a/metadata/md5-cache/media-libs/arc-cros-gralloc-9999 b/metadata/md5-cache/media-libs/arc-cros-gralloc-9999
index 6fef408..9247e1d 100644
--- a/metadata/md5-cache/media-libs/arc-cros-gralloc-9999
+++ b/metadata/md5-cache/media-libs/arc-cros-gralloc-9999
@@ -4,12 +4,12 @@
 DESCRIPTION=ChromeOS gralloc implementation
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/minigbm
-IUSE=kernel-3_18 video_cards_amdgpu video_cards_exynos video_cards_intel video_cards_marvell video_cards_mediatek video_cards_msm video_cards_rockchip video_cards_tegra video_cards_virgl minigbm_platform_mt8183 minigbm_platform_mt8192 minigbm_platform_mt8195 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master cros_host cros_workon_tree_
+IUSE=kernel-3_18 video_cards_amdgpu video_cards_exynos video_cards_intel video_cards_marvell video_cards_mediatek video_cards_msm video_cards_rockchip video_cards_tegra video_cards_virgl minigbm_platform_mt8183 minigbm_platform_mt8192 minigbm_platform_mt8195 minigbm_platform_sc7280 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
 RDEPEND=!<media-libs/minigbm-0.0.1-r438 x11-libs/arc-libdrm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
 REQUIRED_USE=cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=586f6319148804c6e15dbc082dba23e5
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1c34a97bc2499955ce1e879e44534085
diff --git a/metadata/md5-cache/media-libs/arc-mesa-19.0 b/metadata/md5-cache/media-libs/arc-mesa-19.0
index 222384e..2713cc0 100644
--- a/metadata/md5-cache/media-libs/arc-mesa-19.0
+++ b/metadata/md5-cache/media-libs/arc-mesa-19.0
@@ -10,5 +10,5 @@
 RDEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( >=sys-devel/arc-llvm-9:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
 REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel ) ) video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( !cheets_user !cheets_user_64 ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ce8f37f15c1277e203e53bc8e67f58bd
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=02d62864a5e69704add8870f687c13f0
diff --git a/metadata/md5-cache/media-libs/arc-mesa-19.0-r39 b/metadata/md5-cache/media-libs/arc-mesa-19.0-r39
deleted file mode 100644
index 222384e..0000000
--- a/metadata/md5-cache/media-libs/arc-mesa-19.0-r39
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
-DEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( >=sys-devel/arc-llvm-9:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=OpenGL-like graphic library for Linux
-EAPI=6
-HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_savage video_cards_sis video_cards_vmware video_cards_tdfx video_cards_via video_cards_freedreno video_cards_virgl android_aep -android_gles2 -android_gles30 +android_gles31 -android_gles32 -android_vulkan_compute_0 cheets +classic debug dri egl +gallium -gbm gles1 gles2 +llvm +nptl pic selinux shared-glapi vulkan X xlib-glx cheets_user cheets_user_64 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_040a39591a38d3dc778725575c72dcdc1b07e032 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
-KEYWORDS=*
-LICENSE=MIT LGPL-3 SGI-B-2.0
-PROPERTIES=live
-RDEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( >=sys-devel/arc-llvm-9:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
-REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel ) ) video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( !cheets_user !cheets_user_64 ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
-SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ce8f37f15c1277e203e53bc8e67f58bd
diff --git a/metadata/md5-cache/media-libs/arc-mesa-19.0-r40 b/metadata/md5-cache/media-libs/arc-mesa-19.0-r40
new file mode 100644
index 0000000..2713cc0
--- /dev/null
+++ b/metadata/md5-cache/media-libs/arc-mesa-19.0-r40
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
+DEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( >=sys-devel/arc-llvm-9:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+DESCRIPTION=OpenGL-like graphic library for Linux
+EAPI=6
+HOMEPAGE=http://mesa3d.sourceforge.net/
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_savage video_cards_sis video_cards_vmware video_cards_tdfx video_cards_via video_cards_freedreno video_cards_virgl android_aep -android_gles2 -android_gles30 +android_gles31 -android_gles32 -android_vulkan_compute_0 cheets +classic debug dri egl +gallium -gbm gles1 gles2 +llvm +nptl pic selinux shared-glapi vulkan X xlib-glx cheets_user cheets_user_64 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_040a39591a38d3dc778725575c72dcdc1b07e032 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
+KEYWORDS=*
+LICENSE=MIT LGPL-3 SGI-B-2.0
+PROPERTIES=live
+RDEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( >=sys-devel/arc-llvm-9:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
+REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel ) ) video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( !cheets_user !cheets_user_64 ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
+SLOT=0
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=02d62864a5e69704add8870f687c13f0
diff --git a/metadata/md5-cache/media-libs/arc-mesa-9999 b/metadata/md5-cache/media-libs/arc-mesa-9999
index 9f35be3..c621c44 100644
--- a/metadata/md5-cache/media-libs/arc-mesa-9999
+++ b/metadata/md5-cache/media-libs/arc-mesa-9999
@@ -10,5 +10,5 @@
 RDEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( >=sys-devel/arc-llvm-9:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
 REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel ) ) video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( !cheets_user !cheets_user_64 ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=dc7f31c3876cef1e94c87c581bcaf749
diff --git a/metadata/md5-cache/media-libs/arc-mesa-amd-21.1.0-r49 b/metadata/md5-cache/media-libs/arc-mesa-amd-21.1.0-r49
deleted file mode 100644
index 5f1f668..0000000
--- a/metadata/md5-cache/media-libs/arc-mesa-amd-21.1.0-r49
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=The Mesa 3D Graphics Library
-EAPI=6
-HOMEPAGE=http://mesa3d.org/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe android-container-pi -android_vulkan_compute_0 cheets debug vulkan cheets_user cheets_user_64 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_cbc74a968f7dbca5312df2f7cb8af5ecadf471c5 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
-KEYWORDS=*
-LICENSE=MIT
-PROPERTIES=live
-RDEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] !media-libs/arc-mesa
-REQUIRED_USE=android_vulkan_compute_0? ( vulkan ) vulkan? ( || ( video_cards_amdgpu video_cards_intel ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
-SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=9f41b0c3d57b8d0a381de5bcf8e50707
diff --git a/metadata/md5-cache/media-libs/arc-mesa-amd-21.2.1-r65 b/metadata/md5-cache/media-libs/arc-mesa-amd-21.2.1-r65
new file mode 100644
index 0000000..20e66c0
--- /dev/null
+++ b/metadata/md5-cache/media-libs/arc-mesa-amd-21.2.1-r65
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+DESCRIPTION=The Mesa 3D Graphics Library
+EAPI=6
+HOMEPAGE=http://mesa3d.org/
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe android-container-pi -android_vulkan_compute_0 cheets debug vulkan cheets_user cheets_user_64 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_55afc873edb87a9fbc88fea984156a8c1d3de9ca arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
+KEYWORDS=*
+LICENSE=MIT
+PROPERTIES=live
+RDEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] !media-libs/arc-mesa
+REQUIRED_USE=android_vulkan_compute_0? ( vulkan ) vulkan? ( || ( video_cards_amdgpu video_cards_intel ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
+SLOT=0
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=6a079cab91aa9cf7218c6ef32409133b
diff --git a/metadata/md5-cache/media-libs/arc-mesa-amd-9999 b/metadata/md5-cache/media-libs/arc-mesa-amd-9999
index fd5217c..80aeb00 100644
--- a/metadata/md5-cache/media-libs/arc-mesa-amd-9999
+++ b/metadata/md5-cache/media-libs/arc-mesa-amd-9999
@@ -10,5 +10,5 @@
 RDEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] !media-libs/arc-mesa
 REQUIRED_USE=android_vulkan_compute_0? ( vulkan ) vulkan? ( || ( video_cards_amdgpu video_cards_intel ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=b39ab6ec5ae73f75e6df4003ec9b8514
diff --git a/metadata/md5-cache/media-libs/arc-mesa-freedreno-21.2.0_pre-r56 b/metadata/md5-cache/media-libs/arc-mesa-freedreno-21.2.0_pre-r56
deleted file mode 100644
index 3c21a70..0000000
--- a/metadata/md5-cache/media-libs/arc-mesa-freedreno-21.2.0_pre-r56
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install pretend setup test unpack
-DEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=OpenGL-like graphic library for Linux
-EAPI=6
-HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=cheets cheets_user cheets_user_64 debug -vulkan abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_5e2d3eccd85d551dcd7d7bfa5dac28a8d680dc88 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
-KEYWORDS=*
-LICENSE=MIT SGI-B-2.0
-PROPERTIES=live
-RDEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-REQUIRED_USE=cheets cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
-SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ce632ea587b72b7c1b0bbe5dbd353937
diff --git a/metadata/md5-cache/media-libs/arc-mesa-freedreno-21.3.0_pre-r68 b/metadata/md5-cache/media-libs/arc-mesa-freedreno-21.3.0_pre-r68
new file mode 100644
index 0000000..f968342
--- /dev/null
+++ b/metadata/md5-cache/media-libs/arc-mesa-freedreno-21.3.0_pre-r68
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+DESCRIPTION=OpenGL-like graphic library for Linux
+EAPI=6
+HOMEPAGE=http://mesa3d.sourceforge.net/
+IUSE=cheets cheets_user cheets_user_64 debug vulkan android_vulkan_compute_0 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_c7b01d2c0cb8997df5e307f810ecc26c4c76c097 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
+KEYWORDS=*
+LICENSE=MIT SGI-B-2.0
+PROPERTIES=live
+RDEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+REQUIRED_USE=cheets android_vulkan_compute_0? ( vulkan ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
+SLOT=0
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=447184dba14a2f0b32fbd1bc57a9325c
diff --git a/metadata/md5-cache/media-libs/arc-mesa-freedreno-9999 b/metadata/md5-cache/media-libs/arc-mesa-freedreno-9999
index 1dc64d6..8400b8f 100644
--- a/metadata/md5-cache/media-libs/arc-mesa-freedreno-9999
+++ b/metadata/md5-cache/media-libs/arc-mesa-freedreno-9999
@@ -1,14 +1,14 @@
-DEFINED_PHASES=compile configure info install pretend setup test unpack
+DEFINED_PHASES=compile configure info install setup test unpack
 DEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
 DESCRIPTION=OpenGL-like graphic library for Linux
 EAPI=6
 HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=cheets cheets_user cheets_user_64 debug -vulkan abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_ arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
+IUSE=cheets cheets_user cheets_user_64 debug vulkan android_vulkan_compute_0 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_ arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
 KEYWORDS=~*
 LICENSE=MIT SGI-B-2.0
 PROPERTIES=live
 RDEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-REQUIRED_USE=cheets cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
+REQUIRED_USE=cheets android_vulkan_compute_0? ( vulkan ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=7d96284ecbeeafdd8786047faa989fec
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=6f9f4ee6e97b6c3289c79d7379f542d5
diff --git a/metadata/md5-cache/media-libs/arc-mesa-img-19.0_pre1 b/metadata/md5-cache/media-libs/arc-mesa-img-19.0_pre1
index 0c64d22..b46d0d7 100644
--- a/metadata/md5-cache/media-libs/arc-mesa-img-19.0_pre1
+++ b/metadata/md5-cache/media-libs/arc-mesa-img-19.0_pre1
@@ -10,5 +10,5 @@
 RDEPEND=video_cards_powervr? ( media-libs/arc-img-ddk !<media-libs/arc-img-ddk-1.9 ) cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
 REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel video_cards_powervr ) ) video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( !cheets_user !cheets_user_64 ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	autotools	d0e5375d47f4c809f406eb892e531513	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	autotools	d0e5375d47f4c809f406eb892e531513	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=781670352d2d848b1161245998a3c38f
diff --git a/metadata/md5-cache/media-libs/arc-mesa-img-19.0_pre1-r8 b/metadata/md5-cache/media-libs/arc-mesa-img-19.0_pre1-r8
index 0c64d22..b46d0d7 100644
--- a/metadata/md5-cache/media-libs/arc-mesa-img-19.0_pre1-r8
+++ b/metadata/md5-cache/media-libs/arc-mesa-img-19.0_pre1-r8
@@ -10,5 +10,5 @@
 RDEPEND=video_cards_powervr? ( media-libs/arc-img-ddk !<media-libs/arc-img-ddk-1.9 ) cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
 REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel video_cards_powervr ) ) video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( !cheets_user !cheets_user_64 ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	autotools	d0e5375d47f4c809f406eb892e531513	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	autotools	d0e5375d47f4c809f406eb892e531513	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=781670352d2d848b1161245998a3c38f
diff --git a/metadata/md5-cache/media-libs/arc-mesa-img-9999 b/metadata/md5-cache/media-libs/arc-mesa-img-9999
index 2651aca..5b7c6ed 100644
--- a/metadata/md5-cache/media-libs/arc-mesa-img-9999
+++ b/metadata/md5-cache/media-libs/arc-mesa-img-9999
@@ -10,5 +10,5 @@
 RDEPEND=video_cards_powervr? ( media-libs/arc-img-ddk !<media-libs/arc-img-ddk-1.9 ) cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
 REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel video_cards_powervr ) ) video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( !cheets_user !cheets_user_64 ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	autotools	d0e5375d47f4c809f406eb892e531513	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	autotools	d0e5375d47f4c809f406eb892e531513	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c69bfb4bdf96843cf987ffabbe8ca139
diff --git a/metadata/md5-cache/media-libs/arc-mesa-iris-21.1.1-r28 b/metadata/md5-cache/media-libs/arc-mesa-iris-21.1.1-r28
deleted file mode 100644
index 5723e2f..0000000
--- a/metadata/md5-cache/media-libs/arc-mesa-iris-21.1.1-r28
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=The Mesa 3D Graphics Library
-EAPI=6
-HOMEPAGE=http://mesa3d.org/
-IUSE=cheets cheets_user cheets_user_64 debug vulkan android_vulkan_compute_0 android_aep abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_f623425a2c035582400821c0eb4451faaac1b9f2 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
-KEYWORDS=*
-LICENSE=MIT SGI-B-2.0
-PROPERTIES=live
-RDEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-REQUIRED_USE=cheets android_vulkan_compute_0? ( vulkan ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
-SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=4563bbbbc6dbc514a4c7ec27ea882902
diff --git a/metadata/md5-cache/media-libs/arc-mesa-iris-21.2.3-r30 b/metadata/md5-cache/media-libs/arc-mesa-iris-21.2.3-r30
new file mode 100644
index 0000000..102b55e
--- /dev/null
+++ b/metadata/md5-cache/media-libs/arc-mesa-iris-21.2.3-r30
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+DESCRIPTION=The Mesa 3D Graphics Library
+EAPI=6
+HOMEPAGE=http://mesa3d.org/
+IUSE=cheets cheets_user cheets_user_64 debug vulkan android_vulkan_compute_0 android_aep abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_dc2e8513f627de823b24480670875277b9f478b2 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
+KEYWORDS=*
+LICENSE=MIT SGI-B-2.0
+PROPERTIES=live
+RDEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+REQUIRED_USE=cheets android_vulkan_compute_0? ( vulkan ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
+SLOT=0
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=78b04617dbe6deee9cbf2e7fa7ef5508
diff --git a/metadata/md5-cache/media-libs/arc-mesa-iris-9999 b/metadata/md5-cache/media-libs/arc-mesa-iris-9999
index 40f0d80..37caf8aa 100644
--- a/metadata/md5-cache/media-libs/arc-mesa-iris-9999
+++ b/metadata/md5-cache/media-libs/arc-mesa-iris-9999
@@ -10,5 +10,5 @@
 RDEPEND=>=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
 REQUIRED_USE=cheets android_vulkan_compute_0? ( vulkan ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d2f2c1a10aec3236e5c23a79b33293ca
diff --git a/metadata/md5-cache/media-libs/arc-mesa-virgl-21 b/metadata/md5-cache/media-libs/arc-mesa-virgl-21
deleted file mode 100644
index 33d5012..0000000
--- a/metadata/md5-cache/media-libs/arc-mesa-virgl-21
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
-DEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=OpenGL-like graphic library for Linux
-EAPI=6
-HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_savage video_cards_sis video_cards_vmware video_cards_tdfx video_cards_via video_cards_freedreno video_cards_virgl android_aep -android_gles2 -android_gles30 +android_gles31 -android_gles32 -android_vulkan_compute_0 +cheets classic debug dri +egl +gallium -gbm +gles1 +gles2 -llvm +nptl pic selinux +shared-glapi -vulkan -X xlib-glx cheets_user cheets_user_64 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_88bd3b1a95f9324ca0ef06e7bf3a025ce1de8f80 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
-KEYWORDS=*
-LICENSE=MIT LGPL-3 SGI-B-2.0
-PROPERTIES=live
-RDEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
-REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel ) ) video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( !cheets_user !cheets_user_64 ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
-SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=57eede8bbb73fa395899aef940dae03b
diff --git a/metadata/md5-cache/media-libs/arc-mesa-virgl-21.0.2-r3 b/metadata/md5-cache/media-libs/arc-mesa-virgl-21.0.2-r3
deleted file mode 100644
index 33d5012..0000000
--- a/metadata/md5-cache/media-libs/arc-mesa-virgl-21.0.2-r3
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
-DEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=OpenGL-like graphic library for Linux
-EAPI=6
-HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_savage video_cards_sis video_cards_vmware video_cards_tdfx video_cards_via video_cards_freedreno video_cards_virgl android_aep -android_gles2 -android_gles30 +android_gles31 -android_gles32 -android_vulkan_compute_0 +cheets classic debug dri +egl +gallium -gbm +gles1 +gles2 -llvm +nptl pic selinux +shared-glapi -vulkan -X xlib-glx cheets_user cheets_user_64 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_88bd3b1a95f9324ca0ef06e7bf3a025ce1de8f80 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
-KEYWORDS=*
-LICENSE=MIT LGPL-3 SGI-B-2.0
-PROPERTIES=live
-RDEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
-REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel ) ) video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( !cheets_user !cheets_user_64 ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
-SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=57eede8bbb73fa395899aef940dae03b
diff --git a/metadata/md5-cache/media-libs/arc-mesa-virgl-21.1 b/metadata/md5-cache/media-libs/arc-mesa-virgl-21.1
deleted file mode 100644
index 8363588..0000000
--- a/metadata/md5-cache/media-libs/arc-mesa-virgl-21.1
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
-DEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=OpenGL-like graphic library for Linux
-EAPI=6
-HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_savage video_cards_sis video_cards_vmware video_cards_tdfx video_cards_via video_cards_freedreno video_cards_virgl android_aep -android_gles2 -android_gles30 +android_gles31 -android_gles32 -android_vulkan_compute_0 +cheets classic debug dri +egl +gallium -gbm +gles1 +gles2 -llvm +nptl pic selinux +shared-glapi -vulkan -X xlib-glx cheets_user cheets_user_64 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_d663408cd6538b6fee669db87ea77f6a38a37177 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
-KEYWORDS=~*
-LICENSE=MIT LGPL-3 SGI-B-2.0
-PROPERTIES=live
-RDEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
-REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel video_cards_virgl ) ) video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( !cheets_user !cheets_user_64 ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
-SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=72a61c02ae38a83910e0ba830458bc0a
diff --git a/metadata/md5-cache/media-libs/arc-mesa-virgl-21.1-r3 b/metadata/md5-cache/media-libs/arc-mesa-virgl-21.1-r3
deleted file mode 100644
index 8363588..0000000
--- a/metadata/md5-cache/media-libs/arc-mesa-virgl-21.1-r3
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
-DEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=OpenGL-like graphic library for Linux
-EAPI=6
-HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_savage video_cards_sis video_cards_vmware video_cards_tdfx video_cards_via video_cards_freedreno video_cards_virgl android_aep -android_gles2 -android_gles30 +android_gles31 -android_gles32 -android_vulkan_compute_0 +cheets classic debug dri +egl +gallium -gbm +gles1 +gles2 -llvm +nptl pic selinux +shared-glapi -vulkan -X xlib-glx cheets_user cheets_user_64 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_d663408cd6538b6fee669db87ea77f6a38a37177 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
-KEYWORDS=~*
-LICENSE=MIT LGPL-3 SGI-B-2.0
-PROPERTIES=live
-RDEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
-REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel video_cards_virgl ) ) video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( !cheets_user !cheets_user_64 ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
-SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=72a61c02ae38a83910e0ba830458bc0a
diff --git a/metadata/md5-cache/media-libs/arc-mesa-virgl-21.2 b/metadata/md5-cache/media-libs/arc-mesa-virgl-21.2
new file mode 100644
index 0000000..cf039c0
--- /dev/null
+++ b/metadata/md5-cache/media-libs/arc-mesa-virgl-21.2
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
+DEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+DESCRIPTION=OpenGL-like graphic library for Linux
+EAPI=6
+HOMEPAGE=http://mesa3d.sourceforge.net/
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_savage video_cards_sis video_cards_vmware video_cards_tdfx video_cards_via video_cards_freedreno video_cards_virgl android_aep -android_gles2 -android_gles30 +android_gles31 -android_gles32 -android_vulkan_compute_0 +cheets classic debug dri +egl +gallium -gbm +gles1 +gles2 -llvm +nptl pic selinux +shared-glapi -vulkan -X xlib-glx cheets_user cheets_user_64 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_1972ec61637a2ec1152ac8d8fdb91c8df68f2df2 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
+KEYWORDS=*
+LICENSE=MIT LGPL-3 SGI-B-2.0
+PROPERTIES=live
+RDEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
+REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel ) ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
+SLOT=0
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=b5ac4c530fd8402a16aa8610b0a6e375
diff --git a/metadata/md5-cache/media-libs/arc-mesa-virgl-21.2-r7 b/metadata/md5-cache/media-libs/arc-mesa-virgl-21.2-r7
new file mode 100644
index 0000000..cf039c0
--- /dev/null
+++ b/metadata/md5-cache/media-libs/arc-mesa-virgl-21.2-r7
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
+DEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+DESCRIPTION=OpenGL-like graphic library for Linux
+EAPI=6
+HOMEPAGE=http://mesa3d.sourceforge.net/
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_savage video_cards_sis video_cards_vmware video_cards_tdfx video_cards_via video_cards_freedreno video_cards_virgl android_aep -android_gles2 -android_gles30 +android_gles31 -android_gles32 -android_vulkan_compute_0 +cheets classic debug dri +egl +gallium -gbm +gles1 +gles2 -llvm +nptl pic selinux +shared-glapi -vulkan -X xlib-glx cheets_user cheets_user_64 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 cros_host cros_workon_tree_1972ec61637a2ec1152ac8d8fdb91c8df68f2df2 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
+KEYWORDS=*
+LICENSE=MIT LGPL-3 SGI-B-2.0
+PROPERTIES=live
+RDEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
+REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel ) ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
+SLOT=0
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=b5ac4c530fd8402a16aa8610b0a6e375
diff --git a/metadata/md5-cache/media-libs/arc-mesa-virgl-9999 b/metadata/md5-cache/media-libs/arc-mesa-virgl-9999
index 0b30541..2b1634b 100644
--- a/metadata/md5-cache/media-libs/arc-mesa-virgl-9999
+++ b/metadata/md5-cache/media-libs/arc-mesa-virgl-9999
@@ -1,5 +1,5 @@
 DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
-DEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+DEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
 DESCRIPTION=OpenGL-like graphic library for Linux
 EAPI=6
 HOMEPAGE=http://mesa3d.sourceforge.net/
@@ -7,8 +7,8 @@
 KEYWORDS=~*
 LICENSE=MIT LGPL-3 SGI-B-2.0
 PROPERTIES=live
-RDEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_amdgpu? ( dev-libs/arc-libelf[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
-REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel video_cards_virgl ) ) video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( !cheets_user !cheets_user_64 ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
+RDEPEND=cheets? ( >=x11-libs/arc-libdrm-2.4.82[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] llvm? ( sys-devel/arc-llvm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) )
+REQUIRED_USE=^^ ( android_gles2 android_gles30 android_gles31 android_gles32 ) android_aep? ( !android_gles2 !android_gles30 ) android_vulkan_compute_0? ( vulkan ) cheets? ( vulkan? ( ^^ ( video_cards_amdgpu video_cards_intel ) ) ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=a730c6e9f63f71acee0d7ad346d371d7
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=0b61339015a368ac4a6a9a1ef29cfe3c
diff --git a/metadata/md5-cache/media-libs/cmrt-1.0.5 b/metadata/md5-cache/media-libs/cmrt-1.0.5
index 4611d02..20c4b3a 100644
--- a/metadata/md5-cache/media-libs/cmrt-1.0.5
+++ b/metadata/md5-cache/media-libs/cmrt-1.0.5
@@ -8,5 +8,5 @@
 RDEPEND=x11-libs/libdrm
 SLOT=0
 SRC_URI=https://github.com/01org/cmrt/archive/1.0.5.tar.gz -> cmrt-1.0.5.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=aabf490eed4b04ff8f223255590cd72d
diff --git a/metadata/md5-cache/media-libs/cmrt-1.0.5-r5 b/metadata/md5-cache/media-libs/cmrt-1.0.5-r5
index 4611d02..20c4b3a 100644
--- a/metadata/md5-cache/media-libs/cmrt-1.0.5-r5
+++ b/metadata/md5-cache/media-libs/cmrt-1.0.5-r5
@@ -8,5 +8,5 @@
 RDEPEND=x11-libs/libdrm
 SLOT=0
 SRC_URI=https://github.com/01org/cmrt/archive/1.0.5.tar.gz -> cmrt-1.0.5.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=aabf490eed4b04ff8f223255590cd72d
diff --git a/metadata/md5-cache/media-libs/cros-camera-connector-client-0.0.1-r245 b/metadata/md5-cache/media-libs/cros-camera-connector-client-0.0.1-r245
deleted file mode 100644
index 741fc21..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-connector-client-0.0.1-r245
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/cros-camera-libs x11-libs/libdrm >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=A simple package that exercises cros-camera-libcamera_connector
-EAPI=7
-IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_318ca9f48604274cd31481e13eb9321be3d94d8f_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_318ca9f48604274cd31481e13eb9321be3d94d8f_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/cros-camera-libs >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r245
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e09a0d78e888b56e78d29a29d5aeb7bb
diff --git a/metadata/md5-cache/media-libs/cros-camera-connector-client-0.0.1-r312 b/metadata/md5-cache/media-libs/cros-camera-connector-client-0.0.1-r312
new file mode 100644
index 0000000..8dc1394
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-connector-client-0.0.1-r312
@@ -0,0 +1,13 @@
+BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/cros-camera-libs x11-libs/libdrm >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=A simple package that exercises cros-camera-libcamera_connector
+EAPI=7
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_318ca9f48604274cd31481e13eb9321be3d94d8f_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_318ca9f48604274cd31481e13eb9321be3d94d8f_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/cros-camera-libs >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r312
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b2e3c210272c6ce0efa0f1ced71b9696
diff --git a/metadata/md5-cache/media-libs/cros-camera-connector-client-9999 b/metadata/md5-cache/media-libs/cros-camera-connector-client-9999
index 01deae0..06f029b 100644
--- a/metadata/md5-cache/media-libs/cros-camera-connector-client-9999
+++ b/metadata/md5-cache/media-libs/cros-camera-connector-client-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/cros-camera-libs >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7515ce089787e1e1762f67d96627b0da
diff --git a/metadata/md5-cache/media-libs/cros-camera-document-scanning-2021.06.22 b/metadata/md5-cache/media-libs/cros-camera-document-scanning-2021.06.22
deleted file mode 100644
index 4def096..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-document-scanning-2021.06.22
+++ /dev/null
@@ -1,9 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Google3 document scanning library.
-EAPI=7
-IUSE=march_goldmont march_armv8 ondevice_document_scanner
-KEYWORDS=*
-LICENSE=BSD-Google
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/chromeos-document-scanning-lib-2021.06.22.tar.bz2
-_md5_=aea3c48e9632fe55ad12e0f62be4d4d4
diff --git a/metadata/md5-cache/media-libs/cros-camera-document-scanning-2021.06.22-r1 b/metadata/md5-cache/media-libs/cros-camera-document-scanning-2021.06.22-r1
deleted file mode 100644
index 4def096..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-document-scanning-2021.06.22-r1
+++ /dev/null
@@ -1,9 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Google3 document scanning library.
-EAPI=7
-IUSE=march_goldmont march_armv8 ondevice_document_scanner
-KEYWORDS=*
-LICENSE=BSD-Google
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/chromeos-document-scanning-lib-2021.06.22.tar.bz2
-_md5_=aea3c48e9632fe55ad12e0f62be4d4d4
diff --git a/metadata/md5-cache/media-libs/cros-camera-document-scanning-2021.08.05 b/metadata/md5-cache/media-libs/cros-camera-document-scanning-2021.08.05
new file mode 100644
index 0000000..f8b36f3
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-document-scanning-2021.08.05
@@ -0,0 +1,9 @@
+DEFINED_PHASES=install
+DESCRIPTION=Google3 document scanning library.
+EAPI=7
+IUSE=march_alderlake march_armv8 march_bdver4 march_corei7 march_goldmont march_silvermont march_skylake march_tigerlake march_tremont march_znver1 ondevice_document_scanner
+KEYWORDS=*
+LICENSE=BSD-Google
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/chromeos-document-scanning-lib-2021.08.05.tar.bz2
+_md5_=05bd5db93437374a40cc28f45152952d
diff --git a/metadata/md5-cache/media-libs/cros-camera-document-scanning-2021.08.05-r2 b/metadata/md5-cache/media-libs/cros-camera-document-scanning-2021.08.05-r2
new file mode 100644
index 0000000..f8b36f3
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-document-scanning-2021.08.05-r2
@@ -0,0 +1,9 @@
+DEFINED_PHASES=install
+DESCRIPTION=Google3 document scanning library.
+EAPI=7
+IUSE=march_alderlake march_armv8 march_bdver4 march_corei7 march_goldmont march_silvermont march_skylake march_tigerlake march_tremont march_znver1 ondevice_document_scanner
+KEYWORDS=*
+LICENSE=BSD-Google
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/chromeos-document-scanning-lib-2021.08.05.tar.bz2
+_md5_=05bd5db93437374a40cc28f45152952d
diff --git a/metadata/md5-cache/media-libs/cros-camera-document-scanning-test-0.0.1-r14 b/metadata/md5-cache/media-libs/cros-camera-document-scanning-test-0.0.1-r14
new file mode 100644
index 0000000..72e0cc8
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-document-scanning-test-0.0.1-r14
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libbrillo:= dev-cpp/gtest:= media-libs/cros-camera-document-scanning:= virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS camera Document Scanning test.
+EAPI=7
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_af913357e1c51d9a6679dcbc787dfecb62cbc74f_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_af913357e1c51d9a6679dcbc787dfecb62cbc74f_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libbrillo:= dev-cpp/gtest:= media-libs/cros-camera-document-scanning:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0ab6d3f258f5136914c5b83b0c35223c
diff --git a/metadata/md5-cache/media-libs/cros-camera-document-scanning-test-9999 b/metadata/md5-cache/media-libs/cros-camera-document-scanning-test-9999
new file mode 100644
index 0000000..b94e14d
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-document-scanning-test-9999
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/libbrillo:= dev-cpp/gtest:= media-libs/cros-camera-document-scanning:= virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS camera Document Scanning test.
+EAPI=7
+IUSE=cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libbrillo:= dev-cpp/gtest:= media-libs/cros-camera-document-scanning:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=553c2f5a5cb9516cc727d395ca6ef18c
diff --git a/metadata/md5-cache/media-libs/cros-camera-facessd-2021.05.19 b/metadata/md5-cache/media-libs/cros-camera-facessd-2021.05.19
deleted file mode 100644
index b9bb4dd..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-facessd-2021.05.19
+++ /dev/null
@@ -1,9 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Google3 face detection library.
-EAPI=7
-IUSE=march_alderlake march_bdver4 march_corei7 march_goldmont march_silvermont march_skylake march_tremont march_znver1 march_armv8
-KEYWORDS=*
-LICENSE=BSD-Google
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/chromeos-facessd-lib-2021.05.19.tar.bz2
-_md5_=b13794558d6c26af3d141025aeab9ddc
diff --git a/metadata/md5-cache/media-libs/cros-camera-facessd-2021.05.19-r1 b/metadata/md5-cache/media-libs/cros-camera-facessd-2021.05.19-r1
deleted file mode 100644
index b9bb4dd..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-facessd-2021.05.19-r1
+++ /dev/null
@@ -1,9 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Google3 face detection library.
-EAPI=7
-IUSE=march_alderlake march_bdver4 march_corei7 march_goldmont march_silvermont march_skylake march_tremont march_znver1 march_armv8
-KEYWORDS=*
-LICENSE=BSD-Google
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/chromeos-facessd-lib-2021.05.19.tar.bz2
-_md5_=b13794558d6c26af3d141025aeab9ddc
diff --git a/metadata/md5-cache/media-libs/cros-camera-facessd-2021.07.07 b/metadata/md5-cache/media-libs/cros-camera-facessd-2021.07.07
new file mode 100644
index 0000000..cae4321
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-facessd-2021.07.07
@@ -0,0 +1,9 @@
+DEFINED_PHASES=install
+DESCRIPTION=Google3 face detection library.
+EAPI=7
+IUSE=march_alderlake march_armv8 march_bdver4 march_corei7 march_goldmont march_silvermont march_skylake march_tigerlake march_tremont march_znver1
+KEYWORDS=*
+LICENSE=BSD-Google
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/chromeos-facessd-lib-2021.07.07.tar.bz2
+_md5_=d5e8a34137fe98e98711e1a9d7569a4c
diff --git a/metadata/md5-cache/media-libs/cros-camera-facessd-2021.07.07-r1 b/metadata/md5-cache/media-libs/cros-camera-facessd-2021.07.07-r1
new file mode 100644
index 0000000..cae4321
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-facessd-2021.07.07-r1
@@ -0,0 +1,9 @@
+DEFINED_PHASES=install
+DESCRIPTION=Google3 face detection library.
+EAPI=7
+IUSE=march_alderlake march_armv8 march_bdver4 march_corei7 march_goldmont march_silvermont march_skylake march_tigerlake march_tremont march_znver1
+KEYWORDS=*
+LICENSE=BSD-Google
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/chromeos-facessd-lib-2021.07.07.tar.bz2
+_md5_=d5e8a34137fe98e98711e1a9d7569a4c
diff --git a/metadata/md5-cache/media-libs/cros-camera-gpu-test-0.0.1-r59 b/metadata/md5-cache/media-libs/cros-camera-gpu-test-0.0.1-r59
new file mode 100644
index 0000000..15d0372
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-gpu-test-0.0.1-r59
@@ -0,0 +1,13 @@
+BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/cros-camera-android-deps:= chromeos-base/cros-camera-libs:= dev-cpp/gtest:= virtual/opengles:= x11-drivers/opengles-headers:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS camera GPU-related tests
+EAPI=7
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_21f96983b4c04d23267767a4f371212fe68039d9_786825f5ecfe94fcf4d839470255111ca27b4d6f_f4393b535673365e930c04efeab0ab4a23a5a8a0_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_21f96983b4c04d23267767a4f371212fe68039d9_786825f5ecfe94fcf4d839470255111ca27b4d6f_f4393b535673365e930c04efeab0ab4a23a5a8a0_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/cros-camera-android-deps:= chromeos-base/cros-camera-libs:= dev-cpp/gtest:= virtual/opengles:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r59
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5a6e92ce19a83b85893e4f9a20f9afdf
diff --git a/metadata/md5-cache/media-libs/cros-camera-gpu-test-9999 b/metadata/md5-cache/media-libs/cros-camera-gpu-test-9999
new file mode 100644
index 0000000..8fe09e4
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-gpu-test-9999
@@ -0,0 +1,13 @@
+BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/cros-camera-android-deps:= chromeos-base/cros-camera-libs:= dev-cpp/gtest:= virtual/opengles:= x11-drivers/opengles-headers:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS camera GPU-related tests
+EAPI=7
+IUSE=cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/cros-camera-android-deps:= chromeos-base/cros-camera-libs:= dev-cpp/gtest:= virtual/opengles:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5dd7e73bafb6a9e856320b4a0fc40a3c
diff --git a/metadata/md5-cache/media-libs/cros-camera-hal-intel-ipu6-0.0.2-r131 b/metadata/md5-cache/media-libs/cros-camera-hal-intel-ipu6-0.0.2-r131
new file mode 100644
index 0000000..74f0443
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-hal-intel-ipu6-0.0.2-r131
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/chromeos-config-tools chromeos-base/cros-camera-libs chromeos-base/cros-camera-android-deps dev-libs/expat !ipu6se? ( !ipu6ep? ( media-libs/intel-ipu6-camera-bins ) ) ipu6se? ( media-libs/intel-ipu6se-camera-bins x11-libs/libva-intel-media-driver ) ipu6ep? ( media-libs/intel-ipu6ep-camera-bins ) !media-libs/cros-camera-hal-intel-ipu6-squash media-libs/libsync media-libs/libyuv sys-kernel/linux-headers virtual/jpeg:0 virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Intel IPU6 (Image Processing Unit) Chrome OS camera HAL
+EAPI=7
+IUSE=ipu6se ipu6ep cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_4b4f10fc5abb864ad187f25722ef3fc8df6bcb36 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_4b4f10fc5abb864ad187f25722ef3fc8df6bcb36 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=Apache-2.0
+PROPERTIES=live live
+RDEPEND=chromeos-base/chromeos-config-tools chromeos-base/cros-camera-libs chromeos-base/cros-camera-android-deps dev-libs/expat !ipu6se? ( !ipu6ep? ( media-libs/intel-ipu6-camera-bins ) ) ipu6se? ( media-libs/intel-ipu6se-camera-bins x11-libs/libva-intel-media-driver ) ipu6ep? ( media-libs/intel-ipu6ep-camera-bins ) !media-libs/cros-camera-hal-intel-ipu6-squash media-libs/libsync media-libs/libyuv >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
+_md5_=d7b73e3f5446f7643b80af98484bf0c2
diff --git a/metadata/md5-cache/media-libs/cros-camera-hal-intel-ipu6-0.0.2-r99 b/metadata/md5-cache/media-libs/cros-camera-hal-intel-ipu6-0.0.2-r99
deleted file mode 100644
index 45719bd..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-hal-intel-ipu6-0.0.2-r99
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/chromeos-config-tools chromeos-base/cros-camera-libs chromeos-base/cros-camera-android-deps dev-libs/expat !ipu6se? ( !ipu6ep? ( media-libs/intel-ipu6-camera-bins ) ) ipu6se? ( media-libs/intel-ipu6se-camera-bins x11-libs/libva-intel-media-driver ) ipu6ep? ( media-libs/intel-ipu6ep-camera-bins ) !media-libs/cros-camera-hal-intel-ipu6-squash media-libs/libsync media-libs/libyuv sys-kernel/linux-headers virtual/jpeg:0 virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Intel IPU6 (Image Processing Unit) Chrome OS camera HAL
-EAPI=7
-IUSE=ipu6se ipu6ep cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_39c3d3a73f6da845a21c6cb5cc49dcca62f80f6a cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_39c3d3a73f6da845a21c6cb5cc49dcca62f80f6a cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=Apache-2.0
-PROPERTIES=live live
-RDEPEND=chromeos-base/chromeos-config-tools chromeos-base/cros-camera-libs chromeos-base/cros-camera-android-deps dev-libs/expat !ipu6se? ( !ipu6ep? ( media-libs/intel-ipu6-camera-bins ) ) ipu6se? ( media-libs/intel-ipu6se-camera-bins x11-libs/libva-intel-media-driver ) ipu6ep? ( media-libs/intel-ipu6ep-camera-bins ) !media-libs/cros-camera-hal-intel-ipu6-squash media-libs/libsync media-libs/libyuv >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6
-_md5_=bbda7bfe2462e99ded910c9f07b549a5
diff --git a/metadata/md5-cache/media-libs/cros-camera-hal-intel-ipu6-9999 b/metadata/md5-cache/media-libs/cros-camera-hal-intel-ipu6-9999
index c3e87cd..baa8cac 100644
--- a/metadata/md5-cache/media-libs/cros-camera-hal-intel-ipu6-9999
+++ b/metadata/md5-cache/media-libs/cros-camera-hal-intel-ipu6-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/chromeos-config-tools chromeos-base/cros-camera-libs chromeos-base/cros-camera-android-deps dev-libs/expat !ipu6se? ( !ipu6ep? ( media-libs/intel-ipu6-camera-bins ) ) ipu6se? ( media-libs/intel-ipu6se-camera-bins x11-libs/libva-intel-media-driver ) ipu6ep? ( media-libs/intel-ipu6ep-camera-bins ) !media-libs/cros-camera-hal-intel-ipu6-squash media-libs/libsync media-libs/libyuv >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
 _md5_=98d83fbba4b69555d9663f19bb25652d
diff --git a/metadata/md5-cache/media-libs/cros-camera-hal-ip-0.0.1-r483 b/metadata/md5-cache/media-libs/cros-camera-hal-ip-0.0.1-r483
deleted file mode 100644
index 38e7112..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-hal-ip-0.0.1-r483
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs media-libs/libsync virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS IP camera HAL v3.
-EAPI=5
-IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_08b12a8d5bd9bbe7ab69c8e6cd9f11b700d32b76_309b7116bd1f5aeb3ece4e1d90ce13f61b7e1b4b_049eedf136293a1ab81617017200cb31032eb384_6cdd3e4e16d9890ff8b5fe897e4cf5a94620c315_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_08b12a8d5bd9bbe7ab69c8e6cd9f11b700d32b76_309b7116bd1f5aeb3ece4e1d90ce13f61b7e1b4b_049eedf136293a1ab81617017200cb31032eb384_6cdd3e4e16d9890ff8b5fe897e4cf5a94620c315_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs media-libs/libsync >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=969bc63c1a110bdb4619b53ff954a3dd
diff --git a/metadata/md5-cache/media-libs/cros-camera-hal-ip-0.0.1-r565 b/metadata/md5-cache/media-libs/cros-camera-hal-ip-0.0.1-r565
new file mode 100644
index 0000000..1f50081
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-hal-ip-0.0.1-r565
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs media-libs/libsync virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS IP camera HAL v3.
+EAPI=5
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_78f8d2f9f3729b431493013e909fbbbe9167d31f_b859b43cd8fde226526c57956659101cf8b11b74_21f96983b4c04d23267767a4f371212fe68039d9_542b6a1b940801e08d9d1aa3ff2657d06dc80bfa_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_78f8d2f9f3729b431493013e909fbbbe9167d31f_b859b43cd8fde226526c57956659101cf8b11b74_21f96983b4c04d23267767a4f371212fe68039d9_542b6a1b940801e08d9d1aa3ff2657d06dc80bfa_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs media-libs/libsync >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=f687d2e635343d70b1c3c71602650a93
diff --git a/metadata/md5-cache/media-libs/cros-camera-hal-ip-9999 b/metadata/md5-cache/media-libs/cros-camera-hal-ip-9999
index 9d45a27..c960559 100644
--- a/metadata/md5-cache/media-libs/cros-camera-hal-ip-9999
+++ b/metadata/md5-cache/media-libs/cros-camera-hal-ip-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs media-libs/libsync >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=415703279c1f9728dc2e22dbe2e46997
diff --git a/metadata/md5-cache/media-libs/cros-camera-hal-usb-0.0.1-r1003 b/metadata/md5-cache/media-libs/cros-camera-hal-usb-0.0.1-r1003
new file mode 100644
index 0000000..fb96549
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-hal-usb-0.0.1-r1003
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs dev-libs/re2 media-libs/libsync chromeos-base/chromeos-config-tools media-libs/libyuv virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS USB camera HAL v3.
+EAPI=5
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_b859b43cd8fde226526c57956659101cf8b11b74_21f96983b4c04d23267767a4f371212fe68039d9_542b6a1b940801e08d9d1aa3ff2657d06dc80bfa_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_b859b43cd8fde226526c57956659101cf8b11b74_21f96983b4c04d23267767a4f371212fe68039d9_542b6a1b940801e08d9d1aa3ff2657d06dc80bfa_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs dev-libs/re2 media-libs/libsync chromeos-base/chromeos-config-tools >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=6a9f28d378a69cf9f41683eb6783db15
diff --git a/metadata/md5-cache/media-libs/cros-camera-hal-usb-0.0.1-r903 b/metadata/md5-cache/media-libs/cros-camera-hal-usb-0.0.1-r903
deleted file mode 100644
index 2c0319d..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-hal-usb-0.0.1-r903
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs dev-libs/re2 media-libs/libsync chromeos-base/chromeos-config-tools media-libs/libyuv virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS USB camera HAL v3.
-EAPI=5
-IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_309b7116bd1f5aeb3ece4e1d90ce13f61b7e1b4b_049eedf136293a1ab81617017200cb31032eb384_6cdd3e4e16d9890ff8b5fe897e4cf5a94620c315_aa0612733aca2d5ffa65470f07408228b473ebdb_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_309b7116bd1f5aeb3ece4e1d90ce13f61b7e1b4b_049eedf136293a1ab81617017200cb31032eb384_6cdd3e4e16d9890ff8b5fe897e4cf5a94620c315_aa0612733aca2d5ffa65470f07408228b473ebdb_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs dev-libs/re2 media-libs/libsync chromeos-base/chromeos-config-tools >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ff6ff07b728d696deb70fd908edd1c4f
diff --git a/metadata/md5-cache/media-libs/cros-camera-hal-usb-9999 b/metadata/md5-cache/media-libs/cros-camera-hal-usb-9999
index 7558844..bcda537 100644
--- a/metadata/md5-cache/media-libs/cros-camera-hal-usb-9999
+++ b/metadata/md5-cache/media-libs/cros-camera-hal-usb-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs dev-libs/re2 media-libs/libsync chromeos-base/chromeos-config-tools >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0b432e995476a74673916b08b6f5d85a
diff --git a/metadata/md5-cache/media-libs/cros-camera-hdrnet-tests-0.0.1-r71 b/metadata/md5-cache/media-libs/cros-camera-hdrnet-tests-0.0.1-r71
new file mode 100644
index 0000000..effc31f
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-hdrnet-tests-0.0.1-r71
@@ -0,0 +1,13 @@
+BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/cros-camera-android-deps:= chromeos-base/cros-camera-libs:= dev-cpp/gtest:= media-libs/cros-camera-libhdr:= virtual/opengles:= x11-drivers/opengles-headers:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS camera HDRnet integration tests
+EAPI=7
+IUSE=ipu6 ipu6ep cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_32ac98629dfba863322d9dc20a553d071bb70df0_21f96983b4c04d23267767a4f371212fe68039d9_786825f5ecfe94fcf4d839470255111ca27b4d6f_f4393b535673365e930c04efeab0ab4a23a5a8a0_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_77d69659cf481a4d0917b7c100630f3c969b5720 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_32ac98629dfba863322d9dc20a553d071bb70df0_21f96983b4c04d23267767a4f371212fe68039d9_786825f5ecfe94fcf4d839470255111ca27b4d6f_f4393b535673365e930c04efeab0ab4a23a5a8a0_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_77d69659cf481a4d0917b7c100630f3c969b5720 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/cros-camera-android-deps:= chromeos-base/cros-camera-libs:= dev-cpp/gtest:= media-libs/cros-camera-libhdr:= virtual/opengles:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r71
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=cab66ecd6d8b5fc26fb4332d4a90c1f3
diff --git a/metadata/md5-cache/media-libs/cros-camera-hdrnet-tests-9999 b/metadata/md5-cache/media-libs/cros-camera-hdrnet-tests-9999
new file mode 100644
index 0000000..4259b1a
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-hdrnet-tests-9999
@@ -0,0 +1,13 @@
+BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/cros-camera-android-deps:= chromeos-base/cros-camera-libs:= dev-cpp/gtest:= media-libs/cros-camera-libhdr:= virtual/opengles:= x11-drivers/opengles-headers:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS camera HDRnet integration tests
+EAPI=7
+IUSE=ipu6 ipu6ep cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+KEYWORDS=~*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/cros-camera-android-deps:= chromeos-base/cros-camera-libs:= dev-cpp/gtest:= media-libs/cros-camera-libhdr:= virtual/opengles:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c0c3e92e94c3413ee4b8f4ac4aabfc43
diff --git a/metadata/md5-cache/media-libs/cros-camera-libcab-test-0.0.1-r546 b/metadata/md5-cache/media-libs/cros-camera-libcab-test-0.0.1-r546
deleted file mode 100644
index 5b7c8ce..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-libcab-test-0.0.1-r546
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/cros-camera-libs dev-cpp/gtest:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Test for camera algorithm bridge library
-EAPI=5
-IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/cros-camera-libs dev-cpp/gtest:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=3f1ceb6724fc598fe7407c3002622a21
diff --git a/metadata/md5-cache/media-libs/cros-camera-libcab-test-0.0.1-r613 b/metadata/md5-cache/media-libs/cros-camera-libcab-test-0.0.1-r613
new file mode 100644
index 0000000..db5d705
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-libcab-test-0.0.1-r613
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/cros-camera-libs dev-cpp/gtest:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Test for camera algorithm bridge library
+EAPI=5
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/cros-camera-libs dev-cpp/gtest:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=a6a3b4bd71ea721c998d3f77e9f3cf65
diff --git a/metadata/md5-cache/media-libs/cros-camera-libcab-test-9999 b/metadata/md5-cache/media-libs/cros-camera-libcab-test-9999
index fe4f4a6..0062573 100644
--- a/metadata/md5-cache/media-libs/cros-camera-libcab-test-9999
+++ b/metadata/md5-cache/media-libs/cros-camera-libcab-test-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/cros-camera-libs dev-cpp/gtest:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c3e0999a6c5be76c6fe57f8dd64c5a79
diff --git a/metadata/md5-cache/media-libs/cros-camera-libcamera_connector_test-0.0.1-r229 b/metadata/md5-cache/media-libs/cros-camera-libcamera_connector_test-0.0.1-r229
deleted file mode 100644
index ff1fcb6..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-libcamera_connector_test-0.0.1-r229
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/cros-camera-libs:= dev-cpp/gtest:= media-libs/libyuv virtual/jpeg:0 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS camera connector test.
-EAPI=7
-IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/cros-camera-libs:= dev-cpp/gtest:= media-libs/libyuv virtual/jpeg:0 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0/0.0.1-r229
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d5b6265f33825d38830aaf278c1037b7
diff --git a/metadata/md5-cache/media-libs/cros-camera-libcamera_connector_test-0.0.1-r296 b/metadata/md5-cache/media-libs/cros-camera-libcamera_connector_test-0.0.1-r296
new file mode 100644
index 0000000..870ecfe
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-libcamera_connector_test-0.0.1-r296
@@ -0,0 +1,13 @@
+BDEPEND=virtual/pkgconfig dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/cros-camera-libs:= dev-cpp/gtest:= media-libs/libyuv virtual/jpeg:0 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS camera connector test.
+EAPI=7
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/cros-camera-libs:= dev-cpp/gtest:= media-libs/libyuv virtual/jpeg:0 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0/0.0.1-r296
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9e86c6fb4c342a4093af03e1d9d8d2e9
diff --git a/metadata/md5-cache/media-libs/cros-camera-libcamera_connector_test-9999 b/metadata/md5-cache/media-libs/cros-camera-libcamera_connector_test-9999
index 572ce6c..e38e9dd 100644
--- a/metadata/md5-cache/media-libs/cros-camera-libcamera_connector_test-9999
+++ b/metadata/md5-cache/media-libs/cros-camera-libcamera_connector_test-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/cros-camera-libs:= dev-cpp/gtest:= media-libs/libyuv virtual/jpeg:0 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0/9999
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=687d06a9c511efd126a30a2857510ecf
diff --git a/metadata/md5-cache/media-libs/cros-camera-libgcam-2021.10.12 b/metadata/md5-cache/media-libs/cros-camera-libgcam-2021.10.12
new file mode 100644
index 0000000..4e9f164
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-libgcam-2021.10.12
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DESCRIPTION=Gcam libraries ported from google3 that are specialized for CrOS.
+EAPI=7
+IUSE=march_skylake march_alderlake
+KEYWORDS=*
+LICENSE=BSD-Google
+RDEPEND=!media-libs/cros-camera-libhdr
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/chromeos-camera-libgcam-2021.10.12.tar.bz2
+_md5_=350651d1921e662be6071a4beb743e2c
diff --git a/metadata/md5-cache/media-libs/cros-camera-libgcam-2021.10.12-r1 b/metadata/md5-cache/media-libs/cros-camera-libgcam-2021.10.12-r1
new file mode 100644
index 0000000..4e9f164
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-libgcam-2021.10.12-r1
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DESCRIPTION=Gcam libraries ported from google3 that are specialized for CrOS.
+EAPI=7
+IUSE=march_skylake march_alderlake
+KEYWORDS=*
+LICENSE=BSD-Google
+RDEPEND=!media-libs/cros-camera-libhdr
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/chromeos-camera-libgcam-2021.10.12.tar.bz2
+_md5_=350651d1921e662be6071a4beb743e2c
diff --git a/metadata/md5-cache/media-libs/cros-camera-libhdr-2021.06.11 b/metadata/md5-cache/media-libs/cros-camera-libhdr-2021.06.11
deleted file mode 100644
index ec6f17f..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-libhdr-2021.06.11
+++ /dev/null
@@ -1,9 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Chrome OS HDR related libraries ported from google3.
-EAPI=7
-IUSE=march_goldmont
-KEYWORDS=*
-LICENSE=BSD-Google
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/chromeos-camera-libhdr-2021.06.11.tar.bz2
-_md5_=6eb138d3588a91298673e792e12045ec
diff --git a/metadata/md5-cache/media-libs/cros-camera-libhdr-2021.06.11-r1 b/metadata/md5-cache/media-libs/cros-camera-libhdr-2021.06.11-r1
deleted file mode 100644
index ec6f17f..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-libhdr-2021.06.11-r1
+++ /dev/null
@@ -1,9 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Chrome OS HDR related libraries ported from google3.
-EAPI=7
-IUSE=march_goldmont
-KEYWORDS=*
-LICENSE=BSD-Google
-SLOT=0
-SRC_URI=gs://chromeos-localmirror/distfiles/chromeos-camera-libhdr-2021.06.11.tar.bz2
-_md5_=6eb138d3588a91298673e792e12045ec
diff --git a/metadata/md5-cache/media-libs/cros-camera-libjda_test-0.0.1-r549 b/metadata/md5-cache/media-libs/cros-camera-libjda_test-0.0.1-r549
deleted file mode 100644
index dfe0fb8..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-libjda_test-0.0.1-r549
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-cpp/gtest chromeos-base/cros-camera-libs >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=End to end test for JPEG decode accelerator
-EAPI=5
-IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=dev-cpp/gtest >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=28287234cb0d56481f7f334f99df8959
diff --git a/metadata/md5-cache/media-libs/cros-camera-libjda_test-0.0.1-r616 b/metadata/md5-cache/media-libs/cros-camera-libjda_test-0.0.1-r616
new file mode 100644
index 0000000..fcd60ff
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-libjda_test-0.0.1-r616
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-cpp/gtest chromeos-base/cros-camera-libs >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=End to end test for JPEG decode accelerator
+EAPI=5
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=dev-cpp/gtest >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=7222c2b473ed3d8377a96c86368fa40d
diff --git a/metadata/md5-cache/media-libs/cros-camera-libjda_test-9999 b/metadata/md5-cache/media-libs/cros-camera-libjda_test-9999
index 9fb2c89..722a31c 100644
--- a/metadata/md5-cache/media-libs/cros-camera-libjda_test-9999
+++ b/metadata/md5-cache/media-libs/cros-camera-libjda_test-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live live
 RDEPEND=dev-cpp/gtest >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4a0a523a3fc411073a484aac891bbe5f
diff --git a/metadata/md5-cache/media-libs/cros-camera-libjea_test-0.0.1-r602 b/metadata/md5-cache/media-libs/cros-camera-libjea_test-0.0.1-r602
deleted file mode 100644
index 75bb5f3..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-libjea_test-0.0.1-r602
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs dev-cpp/gtest:= media-libs/libyuv >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=End to end test for JPEG encode accelerator
-EAPI=5
-IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs dev-cpp/gtest:= media-libs/libyuv >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=e007223032df43faef7290e2c788370c
diff --git a/metadata/md5-cache/media-libs/cros-camera-libjea_test-0.0.1-r669 b/metadata/md5-cache/media-libs/cros-camera-libjea_test-0.0.1-r669
new file mode 100644
index 0000000..22dcb03
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-libjea_test-0.0.1-r669
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs dev-cpp/gtest:= media-libs/libyuv >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=End to end test for JPEG encode accelerator
+EAPI=5
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs dev-cpp/gtest:= media-libs/libyuv >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=02fd0768ff0b194674b5f902174f6902
diff --git a/metadata/md5-cache/media-libs/cros-camera-libjea_test-9999 b/metadata/md5-cache/media-libs/cros-camera-libjea_test-9999
index 56c9cf3..041df40 100644
--- a/metadata/md5-cache/media-libs/cros-camera-libjea_test-9999
+++ b/metadata/md5-cache/media-libs/cros-camera-libjea_test-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/cros-camera-android-deps chromeos-base/cros-camera-libs dev-cpp/gtest:= media-libs/libyuv >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=69a13d61f90a23421f2d144efe545418
diff --git a/metadata/md5-cache/media-libs/cros-camera-test-0.0.1-r621 b/metadata/md5-cache/media-libs/cros-camera-test-0.0.1-r621
deleted file mode 100644
index fd7629f..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-test-0.0.1-r621
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=chromeos-base/cros-camera-libs-0.0.1-r34:= chromeos-base/chromeos-config-tools chromeos-base/cros-camera-android-deps media-libs/libexif media-libs/libsync media-libs/minigbm virtual/jpeg:0 dev-cpp/gtest:= media-libs/libyuv virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS camera HAL native test.
-EAPI=5
-IUSE=-asan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_686790e236933c99eeef7eed68f3b4c7ca629daf_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_aa0612733aca2d5ffa65470f07408228b473ebdb_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_686790e236933c99eeef7eed68f3b4c7ca629daf_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_aa0612733aca2d5ffa65470f07408228b473ebdb_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=chromeos-base/cros-camera-libs-0.0.1-r34:= chromeos-base/chromeos-config-tools chromeos-base/cros-camera-android-deps media-libs/libexif media-libs/libsync media-libs/minigbm virtual/jpeg:0 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=83d4eb43e603bfa6dc194534cfe254e9
diff --git a/metadata/md5-cache/media-libs/cros-camera-test-0.0.1-r714 b/metadata/md5-cache/media-libs/cros-camera-test-0.0.1-r714
new file mode 100644
index 0000000..ae50c45
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-test-0.0.1-r714
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=chromeos-base/cros-camera-libs-0.0.1-r34:= chromeos-base/chromeos-config-tools chromeos-base/cros-camera-android-deps media-libs/libexif media-libs/libsync media-libs/minigbm virtual/jpeg:0 dev-cpp/gtest:= media-libs/libyuv virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS camera HAL native test.
+EAPI=5
+IUSE=-asan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_05537afb624431739d04be7dec89054d85318249_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_05537afb624431739d04be7dec89054d85318249_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=chromeos-base/cros-camera-libs-0.0.1-r34:= chromeos-base/chromeos-config-tools chromeos-base/cros-camera-android-deps media-libs/libexif media-libs/libsync media-libs/minigbm virtual/jpeg:0 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=e958a46e9e069aa5a426d4470664c3e0
diff --git a/metadata/md5-cache/media-libs/cros-camera-test-9999 b/metadata/md5-cache/media-libs/cros-camera-test-9999
index f060773..f8bad7a 100644
--- a/metadata/md5-cache/media-libs/cros-camera-test-9999
+++ b/metadata/md5-cache/media-libs/cros-camera-test-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live live
 RDEPEND=>=chromeos-base/cros-camera-libs-0.0.1-r34:= chromeos-base/chromeos-config-tools chromeos-base/cros-camera-android-deps media-libs/libexif media-libs/libsync media-libs/minigbm virtual/jpeg:0 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e4a77b6b41edbc88bc0fae3da0f707af
diff --git a/metadata/md5-cache/media-libs/cros-camera-v4l2_test-0.0.1-r471 b/metadata/md5-cache/media-libs/cros-camera-v4l2_test-0.0.1-r471
deleted file mode 100644
index 3d0aaf1..0000000
--- a/metadata/md5-cache/media-libs/cros-camera-v4l2_test-0.0.1-r471
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/chromeos-config-tools chromeos-base/libbrillo:= dev-cpp/gtest:= dev-libs/re2:= media-libs/libyuv virtual/jpeg:0 virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Chrome OS camera V4L2 test.
-EAPI=6
-IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_309b7116bd1f5aeb3ece4e1d90ce13f61b7e1b4b_aa0612733aca2d5ffa65470f07408228b473ebdb_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_49e3b5c529d012af19cb326eec9cf346538d4459_c37af7d99913a584dbfb1b64fdb83acb19e91c20_049eedf136293a1ab81617017200cb31032eb384_309b7116bd1f5aeb3ece4e1d90ce13f61b7e1b4b_aa0612733aca2d5ffa65470f07408228b473ebdb_791c6808b4f4f5f1c484108d66ff958d65f8f1e3 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/chromeos-config-tools chromeos-base/libbrillo:= dev-cpp/gtest:= dev-libs/re2:= media-libs/libyuv virtual/jpeg:0 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=2580ece9a7cbaf2d4f8fba41ef6920d2
diff --git a/metadata/md5-cache/media-libs/cros-camera-v4l2_test-0.0.1-r571 b/metadata/md5-cache/media-libs/cros-camera-v4l2_test-0.0.1-r571
new file mode 100644
index 0000000..25c5189
--- /dev/null
+++ b/metadata/md5-cache/media-libs/cros-camera-v4l2_test-0.0.1-r571
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/chromeos-config-tools chromeos-base/libbrillo:= dev-cpp/gtest:= dev-libs/re2:= media-libs/libyuv virtual/jpeg:0 virtual/pkgconfig >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Chrome OS camera V4L2 test.
+EAPI=6
+IUSE=cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_b859b43cd8fde226526c57956659101cf8b11b74_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_a9db923ed9d7e66024405ab4fdb8bbe178930040_f4393b535673365e930c04efeab0ab4a23a5a8a0_21f96983b4c04d23267767a4f371212fe68039d9_b859b43cd8fde226526c57956659101cf8b11b74_3a8b816b9fdaca04ec76e8a8d97b206e139a9dfc_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/chromeos-config-tools chromeos-base/libbrillo:= dev-cpp/gtest:= dev-libs/re2:= media-libs/libyuv virtual/jpeg:0 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=068f2739f6f401206cf8d0e03506c63b
diff --git a/metadata/md5-cache/media-libs/cros-camera-v4l2_test-9999 b/metadata/md5-cache/media-libs/cros-camera-v4l2_test-9999
index c1e9669..33806b4 100644
--- a/metadata/md5-cache/media-libs/cros-camera-v4l2_test-9999
+++ b/metadata/md5-cache/media-libs/cros-camera-v4l2_test-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live live
 RDEPEND=chromeos-base/chromeos-config-tools chromeos-base/libbrillo:= dev-cpp/gtest:= dev-libs/re2:= media-libs/libyuv virtual/jpeg:0 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d2ef9c7210255cb5af49e48195692c30
diff --git a/metadata/md5-cache/media-libs/evdi-1.9.1-r1 b/metadata/md5-cache/media-libs/evdi-1.9.1-r1
index ec18356..2de4330 100644
--- a/metadata/md5-cache/media-libs/evdi-1.9.1-r1
+++ b/metadata/md5-cache/media-libs/evdi-1.9.1-r1
@@ -7,5 +7,5 @@
 LICENSE=LGPL-2.1
 SLOT=0
 SRC_URI=https://github.com/DisplayLink/evdi/archive/v1.9.1.tar.gz -> evdi-1.9.1.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=872011b8cf6334f61bc8cb7dea155386
diff --git a/metadata/md5-cache/media-libs/fontconfig-2.13.0-r11 b/metadata/md5-cache/media-libs/fontconfig-2.13.0-r11
index 328c2fb..9238ba7 100644
--- a/metadata/md5-cache/media-libs/fontconfig-2.13.0-r11
+++ b/metadata/md5-cache/media-libs/fontconfig-2.13.0-r11
@@ -10,5 +10,5 @@
 RDEPEND=>=dev-libs/expat-2.1.0-r3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=media-libs/freetype-2.9[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] !elibc_Darwin? ( sys-apps/util-linux[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) elibc_Darwin? ( sys-libs/native-uuid ) virtual/libintl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
 SLOT=1.0
 SRC_URI=https://fontconfig.org/release/fontconfig-2.13.0.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a33af12baff48b07064904b2b2229588
diff --git a/metadata/md5-cache/media-libs/freeimage-3.15.3-r3 b/metadata/md5-cache/media-libs/freeimage-3.15.3-r3
index cee57d5..30cbf58 100644
--- a/metadata/md5-cache/media-libs/freeimage-3.15.3-r3
+++ b/metadata/md5-cache/media-libs/freeimage-3.15.3-r3
@@ -9,5 +9,5 @@
 RDEPEND=sys-libs/zlib jpeg? ( virtual/jpeg ) jpeg2k? ( media-libs/openjpeg ) mng? ( media-libs/libmng ) openexr? ( media-libs/openexr ) png? ( media-libs/libpng ) raw? ( media-libs/libraw ) tiff? ( media-libs/ilmbase media-libs/tiff )
 SLOT=0
 SRC_URI=mirror://sourceforge/freeimage/FreeImage3153.zip mirror://sourceforge/freeimage/FreeImage3153.pdf
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e004febd17d000ce535f032457089567
diff --git a/metadata/md5-cache/media-libs/freetype-2.9 b/metadata/md5-cache/media-libs/freetype-2.9
index 5b7cd11..87cffe2c 100644
--- a/metadata/md5-cache/media-libs/freetype-2.9
+++ b/metadata/md5-cache/media-libs/freetype-2.9
@@ -11,5 +11,5 @@
 RESTRICT=!bindist? ( bindist )
 SLOT=2
 SRC_URI=mirror://sourceforge/freetype/freetype-2.9.tar.bz2 mirror://nongnu/freetype/freetype-2.9.tar.bz2 utils? ( mirror://sourceforge/freetype/ft2demos-2.9.tar.bz2 mirror://nongnu/freetype/ft2demos-2.9.tar.bz2 ) doc? ( mirror://sourceforge/freetype/freetype-doc-2.9.tar.bz2 mirror://nongnu/freetype/freetype-doc-2.9.tar.bz2 ) infinality? ( https://dev.gentoo.org/~polynomial-c/03-infinality-2.6.2-2015.11.28.patch.xz )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-multilib	037c4046d25f29e78dd44dccabd5d66b	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-multilib	037c4046d25f29e78dd44dccabd5d66b	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=acb81955a178fa15af253631f98a963c
diff --git a/metadata/md5-cache/media-libs/freetype-2.9-r3 b/metadata/md5-cache/media-libs/freetype-2.9-r3
index 5b7cd11..87cffe2c 100644
--- a/metadata/md5-cache/media-libs/freetype-2.9-r3
+++ b/metadata/md5-cache/media-libs/freetype-2.9-r3
@@ -11,5 +11,5 @@
 RESTRICT=!bindist? ( bindist )
 SLOT=2
 SRC_URI=mirror://sourceforge/freetype/freetype-2.9.tar.bz2 mirror://nongnu/freetype/freetype-2.9.tar.bz2 utils? ( mirror://sourceforge/freetype/ft2demos-2.9.tar.bz2 mirror://nongnu/freetype/ft2demos-2.9.tar.bz2 ) doc? ( mirror://sourceforge/freetype/freetype-doc-2.9.tar.bz2 mirror://nongnu/freetype/freetype-doc-2.9.tar.bz2 ) infinality? ( https://dev.gentoo.org/~polynomial-c/03-infinality-2.6.2-2015.11.28.patch.xz )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-multilib	037c4046d25f29e78dd44dccabd5d66b	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-multilib	037c4046d25f29e78dd44dccabd5d66b	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=acb81955a178fa15af253631f98a963c
diff --git a/metadata/md5-cache/media-libs/glu-9.0.0 b/metadata/md5-cache/media-libs/glu-9.0.0
index 4aaf0ad..0a17b3a 100644
--- a/metadata/md5-cache/media-libs/glu-9.0.0
+++ b/metadata/md5-cache/media-libs/glu-9.0.0
@@ -9,5 +9,5 @@
 RDEPEND=virtual/opengl multilib? ( !app-emulation/emul-linux-x86-opengl )
 SLOT=0
 SRC_URI=ftp://ftp.freedesktop.org/pub/mesa/glu/glu-9.0.0.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7f0b2cb0e893505f4c0b00fadbe16f8d
diff --git a/metadata/md5-cache/media-libs/gmmlib-21.1.1 b/metadata/md5-cache/media-libs/gmmlib-21.1.1
deleted file mode 100644
index 68c427f..0000000
--- a/metadata/md5-cache/media-libs/gmmlib-21.1.1
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-util/ninja dev-util/cmake
-DEFINED_PHASES=compile configure install prepare test
-DESCRIPTION=Intel Graphics Memory Management Library
-EAPI=7
-HOMEPAGE=https://github.com/intel/gmmlib
-IUSE=test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=MIT
-RESTRICT=!test? ( test )
-SLOT=0
-SRC_URI=https://github.com/intel/gmmlib/archive/refs/tags/intel-gmmlib-21.1.1.tar.gz
-_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=8cc0802b2262a143fd30bab67005909a
diff --git a/metadata/md5-cache/media-libs/gmmlib-21.1.1-r3 b/metadata/md5-cache/media-libs/gmmlib-21.1.1-r3
deleted file mode 100644
index 68c427f..0000000
--- a/metadata/md5-cache/media-libs/gmmlib-21.1.1-r3
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-util/ninja dev-util/cmake
-DEFINED_PHASES=compile configure install prepare test
-DESCRIPTION=Intel Graphics Memory Management Library
-EAPI=7
-HOMEPAGE=https://github.com/intel/gmmlib
-IUSE=test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=MIT
-RESTRICT=!test? ( test )
-SLOT=0
-SRC_URI=https://github.com/intel/gmmlib/archive/refs/tags/intel-gmmlib-21.1.1.tar.gz
-_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=8cc0802b2262a143fd30bab67005909a
diff --git a/metadata/md5-cache/media-libs/gmmlib-21.2.1 b/metadata/md5-cache/media-libs/gmmlib-21.2.1
new file mode 100644
index 0000000..e2603bd
--- /dev/null
+++ b/metadata/md5-cache/media-libs/gmmlib-21.2.1
@@ -0,0 +1,13 @@
+BDEPEND=dev-util/ninja dev-util/cmake
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=Intel Graphics Memory Management Library
+EAPI=7
+HOMEPAGE=https://github.com/intel/gmmlib
+IUSE=test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=MIT
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/intel/gmmlib/archive/refs/tags/intel-gmmlib-21.2.1.tar.gz
+_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=9008fb3425c5374420296b9918f4a5c6
diff --git a/metadata/md5-cache/media-libs/gmmlib-21.2.1-r4 b/metadata/md5-cache/media-libs/gmmlib-21.2.1-r4
new file mode 100644
index 0000000..e2603bd
--- /dev/null
+++ b/metadata/md5-cache/media-libs/gmmlib-21.2.1-r4
@@ -0,0 +1,13 @@
+BDEPEND=dev-util/ninja dev-util/cmake
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=Intel Graphics Memory Management Library
+EAPI=7
+HOMEPAGE=https://github.com/intel/gmmlib
+IUSE=test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=MIT
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/intel/gmmlib/archive/refs/tags/intel-gmmlib-21.2.1.tar.gz
+_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=9008fb3425c5374420296b9918f4a5c6
diff --git a/metadata/md5-cache/media-libs/go2001-rules-0.0.1 b/metadata/md5-cache/media-libs/go2001-rules-0.0.1
index ed20b21..fe637e3 100644
--- a/metadata/md5-cache/media-libs/go2001-rules-0.0.1
+++ b/metadata/md5-cache/media-libs/go2001-rules-0.0.1
@@ -6,5 +6,5 @@
 LICENSE=BSD-Google
 RDEPEND=virtual/udev
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fcdabb00197cff7e9ccc5a63bb7f1450
diff --git a/metadata/md5-cache/media-libs/go2001-rules-0.0.1-r1 b/metadata/md5-cache/media-libs/go2001-rules-0.0.1-r1
deleted file mode 100644
index ed20b21..0000000
--- a/metadata/md5-cache/media-libs/go2001-rules-0.0.1-r1
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=install
-DEPEND=!media-libs/media-rules virtual/pkgconfig
-DESCRIPTION=Rules for setting up /dev/ nodes for the go2001 video codec
-EAPI=5
-KEYWORDS=*
-LICENSE=BSD-Google
-RDEPEND=virtual/udev
-SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=fcdabb00197cff7e9ccc5a63bb7f1450
diff --git a/metadata/md5-cache/media-libs/go2001-rules-0.0.1-r2 b/metadata/md5-cache/media-libs/go2001-rules-0.0.1-r2
new file mode 100644
index 0000000..fe637e3
--- /dev/null
+++ b/metadata/md5-cache/media-libs/go2001-rules-0.0.1-r2
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DEPEND=!media-libs/media-rules virtual/pkgconfig
+DESCRIPTION=Rules for setting up /dev/ nodes for the go2001 video codec
+EAPI=5
+KEYWORDS=*
+LICENSE=BSD-Google
+RDEPEND=virtual/udev
+SLOT=0
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=fcdabb00197cff7e9ccc5a63bb7f1450
diff --git a/metadata/md5-cache/media-libs/intel-hybrid-driver-1.0.1 b/metadata/md5-cache/media-libs/intel-hybrid-driver-1.0.1
index 4a5ee79..fdc0e4f 100644
--- a/metadata/md5-cache/media-libs/intel-hybrid-driver-1.0.1
+++ b/metadata/md5-cache/media-libs/intel-hybrid-driver-1.0.1
@@ -8,5 +8,5 @@
 RDEPEND=x11-libs/libva x11-libs/libdrm media-libs/cmrt
 SLOT=0
 SRC_URI=https://github.com/01org/intel-hybrid-driver/archive/1.0.1.tar.gz -> intel-hybrid-driver-1.0.1.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=a76b9e5db5fbe28cb61032ec065e266e
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=9a25abc383098c25a6ce9ba145fe03b8
diff --git a/metadata/md5-cache/media-libs/intel-hybrid-driver-1.0.1-r7 b/metadata/md5-cache/media-libs/intel-hybrid-driver-1.0.1-r7
deleted file mode 100644
index 4a5ee79..0000000
--- a/metadata/md5-cache/media-libs/intel-hybrid-driver-1.0.1-r7
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=configure install prepare
-DEPEND=x11-libs/libva x11-libs/libdrm media-libs/cmrt virtual/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Intel hybrid driver provides support for WebM project VPx codecs. GPU acceleration is provided via media kernels executed on Intel GEN GPUs. The hybrid driver provides the CPU bound entropy (e.g., CPBAC) decoding and manages the GEN GPU media kernel parameters and buffers.
-EAPI=5
-HOMEPAGE=https://github.com/01org/intel-hybrid-driver
-KEYWORDS=-* amd64 x86
-LICENSE=MIT
-RDEPEND=x11-libs/libva x11-libs/libdrm media-libs/cmrt
-SLOT=0
-SRC_URI=https://github.com/01org/intel-hybrid-driver/archive/1.0.1.tar.gz -> intel-hybrid-driver-1.0.1.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=a76b9e5db5fbe28cb61032ec065e266e
diff --git a/metadata/md5-cache/media-libs/intel-hybrid-driver-1.0.1-r8 b/metadata/md5-cache/media-libs/intel-hybrid-driver-1.0.1-r8
new file mode 100644
index 0000000..fdc0e4f
--- /dev/null
+++ b/metadata/md5-cache/media-libs/intel-hybrid-driver-1.0.1-r8
@@ -0,0 +1,12 @@
+DEFINED_PHASES=configure install prepare
+DEPEND=x11-libs/libva x11-libs/libdrm media-libs/cmrt virtual/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=Intel hybrid driver provides support for WebM project VPx codecs. GPU acceleration is provided via media kernels executed on Intel GEN GPUs. The hybrid driver provides the CPU bound entropy (e.g., CPBAC) decoding and manages the GEN GPU media kernel parameters and buffers.
+EAPI=5
+HOMEPAGE=https://github.com/01org/intel-hybrid-driver
+KEYWORDS=-* amd64 x86
+LICENSE=MIT
+RDEPEND=x11-libs/libva x11-libs/libdrm media-libs/cmrt
+SLOT=0
+SRC_URI=https://github.com/01org/intel-hybrid-driver/archive/1.0.1.tar.gz -> intel-hybrid-driver-1.0.1.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=9a25abc383098c25a6ce9ba145fe03b8
diff --git a/metadata/md5-cache/media-libs/libcamera-0.0.1-r540 b/metadata/md5-cache/media-libs/libcamera-0.0.1-r540
deleted file mode 100644
index ad20281..0000000
--- a/metadata/md5-cache/media-libs/libcamera-0.0.1-r540
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=chromeos-base/cros-camera-libs dev? ( dev-libs/libevent[threads] ) dev-libs/libyaml media-libs/libcamera-configs media-libs/libjpeg-turbo media-libs/libexif >=net-libs/gnutls-3.3:= media-libs/libyuv udev? ( virtual/libudev ) dev-libs/openssl >=dev-python/pyyaml-3:=
-DESCRIPTION=Camera support library for Linux
-EAPI=7
-HOMEPAGE=https://www.libcamera.org
-IUSE=debug dev doc ipu3 rkisp1 test udev cros_host cros_workon_tree_f069be1e4124d2430ef62cb3f389fcf33493beac
-KEYWORDS=*
-LICENSE=LGPL-2.1+
-PROPERTIES=live
-RDEPEND=chromeos-base/cros-camera-libs dev? ( dev-libs/libevent[threads] ) dev-libs/libyaml media-libs/libcamera-configs media-libs/libjpeg-turbo media-libs/libexif >=net-libs/gnutls-3.3:= media-libs/libyuv udev? ( virtual/libudev )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7bb46cacf26147ea2e5be34c95c81b6d
diff --git a/metadata/md5-cache/media-libs/libcamera-0.0.1-r665 b/metadata/md5-cache/media-libs/libcamera-0.0.1-r665
new file mode 100644
index 0000000..46dd986
--- /dev/null
+++ b/metadata/md5-cache/media-libs/libcamera-0.0.1-r665
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=chromeos-base/cros-camera-libs dev? ( dev-libs/libevent[threads] ) dev-libs/libyaml media-libs/libcamera-configs media-libs/libjpeg-turbo media-libs/libexif >=net-libs/gnutls-3.3:= media-libs/libyuv udev? ( virtual/libudev ) dev-libs/openssl >=dev-python/pyyaml-3:=
+DESCRIPTION=Camera support library for Linux
+EAPI=7
+HOMEPAGE=https://www.libcamera.org
+IUSE=debug dev doc ipu3 rkisp1 test udev cros_host cros_workon_tree_8db027be3b9ecf3e9f3f9cc2638294c62919c830
+KEYWORDS=*
+LICENSE=LGPL-2.1+
+PROPERTIES=live
+RDEPEND=chromeos-base/cros-camera-libs dev? ( dev-libs/libevent[threads] ) dev-libs/libyaml media-libs/libcamera-configs media-libs/libjpeg-turbo media-libs/libexif >=net-libs/gnutls-3.3:= media-libs/libyuv udev? ( virtual/libudev )
+SLOT=0
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=98548a92fcd412a0b55292cbedba1d56
diff --git a/metadata/md5-cache/media-libs/libcamera-9999 b/metadata/md5-cache/media-libs/libcamera-9999
index 7bb543e..5fd4318 100644
--- a/metadata/md5-cache/media-libs/libcamera-9999
+++ b/metadata/md5-cache/media-libs/libcamera-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/cros-camera-libs dev? ( dev-libs/libevent[threads] ) dev-libs/libyaml media-libs/libcamera-configs media-libs/libjpeg-turbo media-libs/libexif >=net-libs/gnutls-3.3:= media-libs/libyuv udev? ( virtual/libudev )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=71a24ca4c2608953653445d834ca86ed
+_eclasses_=cros-camera	edfe7d3bbe26994c0ee8019d7597b0b6	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5b51d00ae0afe3341f3fee22aae675c9
diff --git a/metadata/md5-cache/media-libs/libepoxy-1.5.4 b/metadata/md5-cache/media-libs/libepoxy-1.5.4
deleted file mode 100644
index 403c7e0..0000000
--- a/metadata/md5-cache/media-libs/libepoxy-1.5.4
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=|| ( dev-lang/python:3.9[xml(+)] dev-lang/python:3.8[xml(+)] dev-lang/python:3.7[xml(+)] dev-lang/python:3.6[xml(+)] ) x11-drivers/opengles-headers x11-misc/util-macros x11-libs/libX11[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Epoxy is a library for handling OpenGL function pointer management for you
-EAPI=5
-HOMEPAGE=https://github.com/anholt/libepoxy
-IUSE=test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=MIT
-RDEPEND=virtual/opengles
-SLOT=0
-SRC_URI=https://github.com/anholt/libepoxy/archive/1.5.4.tar.gz -> libepoxy-1.5.4.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-multilib	037c4046d25f29e78dd44dccabd5d66b	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=bbe631411d315800cf26acb889a8c7d4
diff --git a/metadata/md5-cache/media-libs/libepoxy-1.5.4-r2 b/metadata/md5-cache/media-libs/libepoxy-1.5.4-r2
deleted file mode 100644
index 403c7e0..0000000
--- a/metadata/md5-cache/media-libs/libepoxy-1.5.4-r2
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=|| ( dev-lang/python:3.9[xml(+)] dev-lang/python:3.8[xml(+)] dev-lang/python:3.7[xml(+)] dev-lang/python:3.6[xml(+)] ) x11-drivers/opengles-headers x11-misc/util-macros x11-libs/libX11[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Epoxy is a library for handling OpenGL function pointer management for you
-EAPI=5
-HOMEPAGE=https://github.com/anholt/libepoxy
-IUSE=test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=MIT
-RDEPEND=virtual/opengles
-SLOT=0
-SRC_URI=https://github.com/anholt/libepoxy/archive/1.5.4.tar.gz -> libepoxy-1.5.4.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-multilib	037c4046d25f29e78dd44dccabd5d66b	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=bbe631411d315800cf26acb889a8c7d4
diff --git a/metadata/md5-cache/media-libs/libepoxy-1.5.9_pre1 b/metadata/md5-cache/media-libs/libepoxy-1.5.9_pre1
new file mode 100644
index 0000000..89ed6a6
--- /dev/null
+++ b/metadata/md5-cache/media-libs/libepoxy-1.5.9_pre1
@@ -0,0 +1,14 @@
+BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEFINED_PHASES=compile configure install setup test unpack
+DEPEND=|| ( dev-lang/python:3.9[xml(+)] dev-lang/python:3.8[xml(+)] dev-lang/python:3.7[xml(+)] dev-lang/python:3.6[xml(+)] ) x11-drivers/opengles-headers x11-misc/util-macros x11-libs/libX11
+DESCRIPTION=Epoxy is a library for handling OpenGL function pointer management for you
+EAPI=7
+HOMEPAGE=https://github.com/anholt/libepoxy
+IUSE=test
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=virtual/opengles
+SLOT=0
+SRC_URI=https://github.com/anholt/libepoxy/archive/ecfa8e0f083084181d36966fa084aca9a6c97d53.tar.gz -> libepoxy-1.5.9_pre1.tar.gz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=432fccf4cdf993774c511d2d81920454
diff --git a/metadata/md5-cache/media-libs/libglvnd-1.3.3-r2 b/metadata/md5-cache/media-libs/libglvnd-1.3.3-r2
new file mode 100644
index 0000000..7137fa4
--- /dev/null
+++ b/metadata/md5-cache/media-libs/libglvnd-1.3.3-r2
@@ -0,0 +1,15 @@
+BDEPEND=|| ( dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) test? ( X? ( !prefix? ( x11-base/xorg-server ) x11-apps/xhost ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEFINED_PHASES=compile configure install prepare setup test
+DEPEND=!media-libs/mesa[-libglvnd(-)] !media-libs/mesa-amd[-libglvnd(-)] !media-libs/mesa-freedreno[-libglvnd(-)] !media-libs/mesa-img[-libglvnd(-)] !media-libs/mesa-iris[-libglvnd(-)] !media-libs/mesa-llvmpipe[-libglvnd(-)] !media-libs/mesa-panfrost[-libglvnd(-)] X? ( x11-libs/libX11[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) X? ( x11-base/xorg-proto )
+DESCRIPTION=The GL Vendor-Neutral Dispatch library
+EAPI=7
+HOMEPAGE=https://gitlab.freedesktop.org/glvnd/libglvnd
+IUSE=test X abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=!media-libs/mesa[-libglvnd(-)] !media-libs/mesa-amd[-libglvnd(-)] !media-libs/mesa-freedreno[-libglvnd(-)] !media-libs/mesa-img[-libglvnd(-)] !media-libs/mesa-iris[-libglvnd(-)] !media-libs/mesa-llvmpipe[-libglvnd(-)] !media-libs/mesa-panfrost[-libglvnd(-)] X? ( x11-libs/libX11[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://gitlab.freedesktop.org/glvnd/libglvnd/-/archive/v1.3.3/libglvnd-v1.3.3.tar.bz2 -> libglvnd-1.3.3.tar.bz2
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	virtualx	e9162f65645513120b4e12863a5fa972
+_md5_=1cf2654f1cdc70aa4fac793de473ca7f
diff --git a/metadata/md5-cache/media-libs/libmtp-1.1.18 b/metadata/md5-cache/media-libs/libmtp-1.1.18
index 71ff69b..9abcc5a 100644
--- a/metadata/md5-cache/media-libs/libmtp-1.1.18
+++ b/metadata/md5-cache/media-libs/libmtp-1.1.18
@@ -9,5 +9,5 @@
 RDEPEND=virtual/libusb:1 crypt? ( dev-libs/libgcrypt )
 SLOT=0
 SRC_URI=mirror://sourceforge/libmtp/libmtp-1.1.18.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=18cca32d14a68d451462f98a3b9ae993
diff --git a/metadata/md5-cache/media-libs/libsync-0.0.1-r6 b/metadata/md5-cache/media-libs/libsync-0.0.1-r6
index 698bbc9..d4a6eb9 100644
--- a/metadata/md5-cache/media-libs/libsync-0.0.1-r6
+++ b/metadata/md5-cache/media-libs/libsync-0.0.1-r6
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=!media-libs/arc-camera3-libsync
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=9574c2029bedf5c573e9b1bf774367d6
diff --git a/metadata/md5-cache/media-libs/libsync-9999 b/metadata/md5-cache/media-libs/libsync-9999
index b53a3b9..d5a7824 100644
--- a/metadata/md5-cache/media-libs/libsync-9999
+++ b/metadata/md5-cache/media-libs/libsync-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=!media-libs/arc-camera3-libsync
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4670b2be39ce486dbd88fe7becf209a2
diff --git a/metadata/md5-cache/media-libs/libv4l-1.20.0 b/metadata/md5-cache/media-libs/libv4l-1.20.0
index 32c43c5..7508d8e 100644
--- a/metadata/md5-cache/media-libs/libv4l-1.20.0
+++ b/metadata/md5-cache/media-libs/libv4l-1.20.0
@@ -9,5 +9,5 @@
 RDEPEND=jpeg? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !media-tv/v4l2-ctl !<media-tv/ivtv-utils-1.4.0-r2 abi_x86_32? ( !<=app-emulation/emul-linux-x86-medialibs-20130224-r5 !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )
 SLOT=0
 SRC_URI=http://linuxtv.org/downloads/v4l-utils/v4l-utils-1.20.0.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=65368d98d1968e564d7ade860a8fb805
diff --git a/metadata/md5-cache/media-libs/libv4l-1.20.0-r1 b/metadata/md5-cache/media-libs/libv4l-1.20.0-r1
index 32c43c5..7508d8e 100644
--- a/metadata/md5-cache/media-libs/libv4l-1.20.0-r1
+++ b/metadata/md5-cache/media-libs/libv4l-1.20.0-r1
@@ -9,5 +9,5 @@
 RDEPEND=jpeg? ( >=virtual/jpeg-0-r2:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !media-tv/v4l2-ctl !<media-tv/ivtv-utils-1.4.0-r2 abi_x86_32? ( !<=app-emulation/emul-linux-x86-medialibs-20130224-r5 !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )
 SLOT=0
 SRC_URI=http://linuxtv.org/downloads/v4l-utils/v4l-utils-1.20.0.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=65368d98d1968e564d7ade860a8fb805
diff --git a/metadata/md5-cache/media-libs/libv4lplugins-0.0.1-r43 b/metadata/md5-cache/media-libs/libv4lplugins-0.0.1-r43
deleted file mode 100644
index efacf9c..0000000
--- a/metadata/md5-cache/media-libs/libv4lplugins-0.0.1-r43
+++ /dev/null
@@ -1,15 +0,0 @@
-DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=media-libs/libv4l >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Separate plugin library from upstream v4l-utils package
-EAPI=5
-HOMEPAGE=http://git.linuxtv.org/v4l-utils.git
-IUSE=rockchip rockchip_v2 cros_host cros_workon_tree_9e0363f36d5a77f1c0625ae393afb70cc067bf82
-KEYWORDS=*
-LICENSE=LGPL-2.1
-PROPERTIES=live
-RDEPEND=media-libs/libv4l
-REQUIRED_USE=^^ ( rockchip rockchip_v2 )
-SLOT=0
-SRC_URI=http://linuxtv.org/downloads/v4l-utils/v4l-utils-1.18.1.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=f14c3153624f79ec183402071a0881ab
diff --git a/metadata/md5-cache/media-libs/libv4lplugins-0.0.1-r44 b/metadata/md5-cache/media-libs/libv4lplugins-0.0.1-r44
new file mode 100644
index 0000000..bee5596
--- /dev/null
+++ b/metadata/md5-cache/media-libs/libv4lplugins-0.0.1-r44
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure info install prepare setup unpack
+DEPEND=media-libs/libv4l >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=Separate plugin library from upstream v4l-utils package
+EAPI=5
+HOMEPAGE=http://git.linuxtv.org/v4l-utils.git
+IUSE=rockchip rockchip_v2 cros_host cros_workon_tree_4c456646357a19df1ab6f5b86f5a27edb33f59c6
+KEYWORDS=*
+LICENSE=LGPL-2.1
+PROPERTIES=live
+RDEPEND=media-libs/libv4l
+REQUIRED_USE=^^ ( rockchip rockchip_v2 )
+SLOT=0
+SRC_URI=http://linuxtv.org/downloads/v4l-utils/v4l-utils-1.18.1.tar.bz2
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=b8e694f8a08739af5b044867e006fde1
diff --git a/metadata/md5-cache/media-libs/libv4lplugins-9999 b/metadata/md5-cache/media-libs/libv4lplugins-9999
index 149debf..0d0ee4a 100644
--- a/metadata/md5-cache/media-libs/libv4lplugins-9999
+++ b/metadata/md5-cache/media-libs/libv4lplugins-9999
@@ -11,5 +11,5 @@
 REQUIRED_USE=^^ ( rockchip rockchip_v2 )
 SLOT=0
 SRC_URI=http://linuxtv.org/downloads/v4l-utils/v4l-utils-1.18.1.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e75c7ea92b58cb866cde529d3db4681d
diff --git a/metadata/md5-cache/media-libs/libyuv-1774 b/metadata/md5-cache/media-libs/libyuv-1774
index fbb596f..1ff743b 100644
--- a/metadata/md5-cache/media-libs/libyuv-1774
+++ b/metadata/md5-cache/media-libs/libyuv-1774
@@ -9,5 +9,5 @@
 RDEPEND=virtual/jpeg:0
 SLOT=0
 SRC_URI=https://chromium.googlesource.com/libyuv/libyuv/+archive/fc61dde1eb4b7807201fa20cd0a7d023363558b2.tar.gz -> libyuv-1774.tar.gz
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-debug	d2750757005d6a444f8eb12bb9eb9944	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-debug	d2750757005d6a444f8eb12bb9eb9944	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e105813cceacabf1729dc4f4e2d2df53
diff --git a/metadata/md5-cache/media-libs/libyuv-1774-r5 b/metadata/md5-cache/media-libs/libyuv-1774-r5
index fbb596f..1ff743b 100644
--- a/metadata/md5-cache/media-libs/libyuv-1774-r5
+++ b/metadata/md5-cache/media-libs/libyuv-1774-r5
@@ -9,5 +9,5 @@
 RDEPEND=virtual/jpeg:0
 SLOT=0
 SRC_URI=https://chromium.googlesource.com/libyuv/libyuv/+archive/fc61dde1eb4b7807201fa20cd0a7d023363558b2.tar.gz -> libyuv-1774.tar.gz
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-debug	d2750757005d6a444f8eb12bb9eb9944	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-debug	d2750757005d6a444f8eb12bb9eb9944	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e105813cceacabf1729dc4f4e2d2df53
diff --git a/metadata/md5-cache/media-libs/libyuv-test-1774 b/metadata/md5-cache/media-libs/libyuv-test-1774
index 04594d9..33f3fc2 100644
--- a/metadata/md5-cache/media-libs/libyuv-test-1774
+++ b/metadata/md5-cache/media-libs/libyuv-test-1774
@@ -9,5 +9,5 @@
 RDEPEND=dev-cpp/gtest:= virtual/jpeg:0
 SLOT=0
 SRC_URI=https://chromium.googlesource.com/libyuv/libyuv/+archive/fc61dde1eb4b7807201fa20cd0a7d023363558b2.tar.gz -> libyuv-1774.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=48c3284ee8e261b31668a1ef57c54737
diff --git a/metadata/md5-cache/media-libs/libyuv-test-1774-r1 b/metadata/md5-cache/media-libs/libyuv-test-1774-r1
index 04594d9..33f3fc2 100644
--- a/metadata/md5-cache/media-libs/libyuv-test-1774-r1
+++ b/metadata/md5-cache/media-libs/libyuv-test-1774-r1
@@ -9,5 +9,5 @@
 RDEPEND=dev-cpp/gtest:= virtual/jpeg:0
 SLOT=0
 SRC_URI=https://chromium.googlesource.com/libyuv/libyuv/+archive/fc61dde1eb4b7807201fa20cd0a7d023363558b2.tar.gz -> libyuv-1774.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=48c3284ee8e261b31668a1ef57c54737
diff --git a/metadata/md5-cache/media-libs/mesa-21.0 b/metadata/md5-cache/media-libs/mesa-21.0
deleted file mode 100644
index 8cfd428..0000000
--- a/metadata/md5-cache/media-libs/mesa-21.0
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm )
-DESCRIPTION=OpenGL-like graphic library for Linux
-EAPI=7
-HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X cros_host cros_workon_tree_b8d78e509c717d068a0199e10811bffd817f2dd4
-KEYWORDS=*
-LICENSE=MIT LGPL-3 SGI-B-2.0
-PROPERTIES=live
-RDEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
-REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
-SLOT=0
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e7866b55d492edacf94ab7926b0f16ea
diff --git a/metadata/md5-cache/media-libs/mesa-21.0.2 b/metadata/md5-cache/media-libs/mesa-21.0.2
deleted file mode 100644
index 8cfd428..0000000
--- a/metadata/md5-cache/media-libs/mesa-21.0.2
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm )
-DESCRIPTION=OpenGL-like graphic library for Linux
-EAPI=7
-HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X cros_host cros_workon_tree_b8d78e509c717d068a0199e10811bffd817f2dd4
-KEYWORDS=*
-LICENSE=MIT LGPL-3 SGI-B-2.0
-PROPERTIES=live
-RDEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
-REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
-SLOT=0
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e7866b55d492edacf94ab7926b0f16ea
diff --git a/metadata/md5-cache/media-libs/mesa-21.1 b/metadata/md5-cache/media-libs/mesa-21.1
deleted file mode 100644
index 84e0296..0000000
--- a/metadata/md5-cache/media-libs/mesa-21.1
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm )
-DESCRIPTION=OpenGL-like graphic library for Linux
-EAPI=7
-HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X cros_host cros_workon_tree_5d5b7c74a6aae79cfcfb57dcff3bc4574df27c32
-KEYWORDS=~*
-LICENSE=MIT LGPL-3 SGI-B-2.0
-PROPERTIES=live
-RDEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
-REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
-SLOT=0
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=361bbd2650b22d8635b0c05b5070860c
diff --git a/metadata/md5-cache/media-libs/mesa-21.1-r1 b/metadata/md5-cache/media-libs/mesa-21.1-r1
deleted file mode 100644
index 84e0296..0000000
--- a/metadata/md5-cache/media-libs/mesa-21.1-r1
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm )
-DESCRIPTION=OpenGL-like graphic library for Linux
-EAPI=7
-HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X cros_host cros_workon_tree_5d5b7c74a6aae79cfcfb57dcff3bc4574df27c32
-KEYWORDS=~*
-LICENSE=MIT LGPL-3 SGI-B-2.0
-PROPERTIES=live
-RDEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
-REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
-SLOT=0
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=361bbd2650b22d8635b0c05b5070860c
diff --git a/metadata/md5-cache/media-libs/mesa-21.2 b/metadata/md5-cache/media-libs/mesa-21.2
new file mode 100644
index 0000000..6d360f1
--- /dev/null
+++ b/metadata/md5-cache/media-libs/mesa-21.2
@@ -0,0 +1,15 @@
+BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm )
+DESCRIPTION=OpenGL-like graphic library for Linux
+EAPI=7
+HOMEPAGE=http://mesa3d.sourceforge.net/
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X libglvnd cros_host cros_workon_tree_dc2e8513f627de823b24480670875277b9f478b2
+KEYWORDS=*
+LICENSE=MIT LGPL-3 SGI-B-2.0
+PROPERTIES=live
+RDEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
+REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
+SLOT=0
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=cffe8387616586fdb0c53e1d434e3e49
diff --git a/metadata/md5-cache/media-libs/mesa-21.2.3-r1 b/metadata/md5-cache/media-libs/mesa-21.2.3-r1
new file mode 100644
index 0000000..6d360f1
--- /dev/null
+++ b/metadata/md5-cache/media-libs/mesa-21.2.3-r1
@@ -0,0 +1,15 @@
+BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm )
+DESCRIPTION=OpenGL-like graphic library for Linux
+EAPI=7
+HOMEPAGE=http://mesa3d.sourceforge.net/
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X libglvnd cros_host cros_workon_tree_dc2e8513f627de823b24480670875277b9f478b2
+KEYWORDS=*
+LICENSE=MIT LGPL-3 SGI-B-2.0
+PROPERTIES=live
+RDEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
+REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
+SLOT=0
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=cffe8387616586fdb0c53e1d434e3e49
diff --git a/metadata/md5-cache/media-libs/mesa-9999 b/metadata/md5-cache/media-libs/mesa-9999
index 3df391bc..a4bd9f3 100644
--- a/metadata/md5-cache/media-libs/mesa-9999
+++ b/metadata/md5-cache/media-libs/mesa-9999
@@ -4,12 +4,12 @@
 DESCRIPTION=OpenGL-like graphic library for Linux
 EAPI=7
 HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi +vulkan wayland xlib-glx X cros_host cros_workon_tree_
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi +vulkan wayland xlib-glx X libglvnd cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=MIT LGPL-3 SGI-B-2.0
 PROPERTIES=live live
-RDEPEND=dev-libs/expat:= dev-libs/libgcrypt:= llvm? ( sys-devel/llvm:= ) llvm? ( virtual/libelf:= ) virtual/udev:= X? ( !<x11-base/xorg-server-1.7:= >=x11-libs/libX11-1.3.99.901:= x11-libs/libXdamage:= x11-libs/libXext:= x11-libs/libXrandr:= x11-libs/libxshmfence:= x11-libs/libXxf86vm:= ) >=x11-libs/libdrm-2.4.60:=
+RDEPEND=dev-libs/expat:= dev-libs/libgcrypt:= llvm? ( sys-devel/llvm:= ) llvm? ( virtual/libelf:= ) virtual/udev:= X? ( !<x11-base/xorg-server-1.7:= >=x11-libs/libX11-1.3.99.901:= x11-libs/libXdamage:= x11-libs/libXext:= x11-libs/libXrandr:= x11-libs/libxshmfence:= x11-libs/libXxf86vm:= ) >=x11-libs/libdrm-2.4.60:= libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd )
 REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
 SLOT=0/9999
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2df1ea6349f93dd6f45f672b8e7cdb3c
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d33fd8bbe88d0f69c4db14bfc260ec0d
diff --git a/metadata/md5-cache/media-libs/mesa-amd-21.1.0-r48 b/metadata/md5-cache/media-libs/mesa-amd-21.1.0-r48
deleted file mode 100644
index 4b374db..0000000
--- a/metadata/md5-cache/media-libs/mesa-amd-21.1.0-r48
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=virtual/libelf dev-libs/expat x11-libs/libdrm !media-libs/mesa sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto x11-libs/libva sys-devel/llvm >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
-DESCRIPTION=The Mesa 3D Graphics Library
-EAPI=6
-HOMEPAGE=http://mesa3d.org/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe debug vulkan cros_host cros_workon_tree_cbc74a968f7dbca5312df2f7cb8af5ecadf471c5
-KEYWORDS=*
-LICENSE=MIT
-PROPERTIES=live
-RDEPEND=virtual/libelf dev-libs/expat x11-libs/libdrm !media-libs/mesa
-SLOT=0
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ca981a8438e051df6cfe33e20d3f3844
diff --git a/metadata/md5-cache/media-libs/mesa-amd-21.2.1-r66 b/metadata/md5-cache/media-libs/mesa-amd-21.2.1-r66
new file mode 100644
index 0000000..29d1f65
--- /dev/null
+++ b/metadata/md5-cache/media-libs/mesa-amd-21.2.1-r66
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) virtual/libelf dev-libs/expat x11-libs/libdrm !media-libs/mesa sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto x11-libs/libva sys-devel/llvm >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DESCRIPTION=The Mesa 3D Graphics Library
+EAPI=6
+HOMEPAGE=http://mesa3d.org/
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe debug vulkan libglvnd cros_host cros_workon_tree_55afc873edb87a9fbc88fea984156a8c1d3de9ca
+KEYWORDS=*
+LICENSE=MIT
+PROPERTIES=live
+RDEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) virtual/libelf dev-libs/expat x11-libs/libdrm !media-libs/mesa
+SLOT=0
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=a347d70f4e93be506561e977efbebe93
diff --git a/metadata/md5-cache/media-libs/mesa-amd-9999 b/metadata/md5-cache/media-libs/mesa-amd-9999
index d338c06..1769ea0 100644
--- a/metadata/md5-cache/media-libs/mesa-amd-9999
+++ b/metadata/md5-cache/media-libs/mesa-amd-9999
@@ -1,13 +1,13 @@
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=virtual/libelf dev-libs/expat x11-libs/libdrm !media-libs/mesa sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto x11-libs/libva sys-devel/llvm >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) virtual/libelf dev-libs/expat x11-libs/libdrm !media-libs/mesa sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto x11-libs/libva sys-devel/llvm >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
 DESCRIPTION=The Mesa 3D Graphics Library
 EAPI=6
 HOMEPAGE=http://mesa3d.org/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe debug vulkan cros_host cros_workon_tree_
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe debug vulkan libglvnd cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=MIT
 PROPERTIES=live
-RDEPEND=virtual/libelf dev-libs/expat x11-libs/libdrm !media-libs/mesa
+RDEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) virtual/libelf dev-libs/expat x11-libs/libdrm !media-libs/mesa
 SLOT=0
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=1756c3a320b5b914005dd57594faa8a8
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=41e8d3fbb7484962dcfbfb221526650c
diff --git a/metadata/md5-cache/media-libs/mesa-freedreno-21.2.0_pre-r49 b/metadata/md5-cache/media-libs/mesa-freedreno-21.2.0_pre-r49
deleted file mode 100644
index c9f5d2f..0000000
--- a/metadata/md5-cache/media-libs/mesa-freedreno-21.2.0_pre-r49
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=sys-devel/bison sys-devel/flex virtual/pkgconfig >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:=
-DESCRIPTION=The Mesa 3D Graphics Library
-EAPI=7
-HOMEPAGE=http://mesa3d.org/
-IUSE=debug vulkan cros_host cros_workon_tree_5e2d3eccd85d551dcd7d7bfa5dac28a8d680dc88
-KEYWORDS=*
-LICENSE=MIT SGI-B-2.0
-PROPERTIES=live
-RDEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:=
-SLOT=0/21.2.0_pre-r49
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=02b84ee292ca7961d1d837af5943be4a
diff --git a/metadata/md5-cache/media-libs/mesa-freedreno-21.3.0_pre-r61 b/metadata/md5-cache/media-libs/mesa-freedreno-21.3.0_pre-r61
new file mode 100644
index 0000000..39809b4
--- /dev/null
+++ b/metadata/md5-cache/media-libs/mesa-freedreno-21.3.0_pre-r61
@@ -0,0 +1,14 @@
+BDEPEND=sys-devel/bison sys-devel/flex virtual/pkgconfig >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:=
+DESCRIPTION=The Mesa 3D Graphics Library
+EAPI=7
+HOMEPAGE=http://mesa3d.org/
+IUSE=debug vulkan libglvnd cros_host cros_workon_tree_c7b01d2c0cb8997df5e307f810ecc26c4c76c097
+KEYWORDS=*
+LICENSE=MIT SGI-B-2.0
+PROPERTIES=live
+RDEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:= libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd )
+SLOT=0/21.3.0_pre-r61
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0201d420825378849d053923126e9633
diff --git a/metadata/md5-cache/media-libs/mesa-freedreno-9999 b/metadata/md5-cache/media-libs/mesa-freedreno-9999
index e9bc836..dce6404 100644
--- a/metadata/md5-cache/media-libs/mesa-freedreno-9999
+++ b/metadata/md5-cache/media-libs/mesa-freedreno-9999
@@ -4,11 +4,11 @@
 DESCRIPTION=The Mesa 3D Graphics Library
 EAPI=7
 HOMEPAGE=http://mesa3d.org/
-IUSE=debug vulkan cros_host cros_workon_tree_
+IUSE=debug vulkan libglvnd cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=MIT SGI-B-2.0
 PROPERTIES=live
-RDEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:=
+RDEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:= libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd )
 SLOT=0/9999
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=cfe0eb948c9c6dd8dc193110254c1978
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9a95a5423e0e91904a094ae7acb53c14
diff --git a/metadata/md5-cache/media-libs/mesa-img-19.0_pre1 b/metadata/md5-cache/media-libs/mesa-img-19.0_pre1
index 692715b..ab921e2 100644
--- a/metadata/md5-cache/media-libs/mesa-img-19.0_pre1
+++ b/metadata/md5-cache/media-libs/mesa-img-19.0_pre1
@@ -1,14 +1,14 @@
 DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=!media-libs/mesa X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm ) video_cards_powervr? ( virtual/img-ddk !<media-libs/img-ddk-1.9 !<media-libs/img-ddk-bin-1.9 ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) !media-libs/mesa X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm ) video_cards_powervr? ( virtual/img-ddk !<media-libs/img-ddk-1.9 !<media-libs/img-ddk-bin-1.9 ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
 DESCRIPTION=OpenGL-like graphic library for Linux
 EAPI=6
 HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl -gallium -gbm gles1 gles2 -llvm +nptl pic selinux shared-glapi kernel_FreeBSD vulkan wayland xlib-glx X cros_host cros_workon_tree_b09304eab38348e2a157c4adc75542a460746ce9
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl -gallium -gbm gles1 gles2 -llvm +nptl pic selinux shared-glapi kernel_FreeBSD vulkan wayland xlib-glx X libglvnd cros_host cros_workon_tree_b09304eab38348e2a157c4adc75542a460746ce9
 KEYWORDS=*
 LICENSE=MIT LGPL-3 SGI-B-2.0
 PROPERTIES=live
-RDEPEND=!media-libs/mesa X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
+RDEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) !media-libs/mesa X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
 REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
 SLOT=0
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=25c78ba298149162539415f920609bc0
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=7354c30a3f7d2f0cbb2667e735029a2c
diff --git a/metadata/md5-cache/media-libs/mesa-img-19.0_pre1-r7 b/metadata/md5-cache/media-libs/mesa-img-19.0_pre1-r7
index 692715b..ab921e2 100644
--- a/metadata/md5-cache/media-libs/mesa-img-19.0_pre1-r7
+++ b/metadata/md5-cache/media-libs/mesa-img-19.0_pre1-r7
@@ -1,14 +1,14 @@
 DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=!media-libs/mesa X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm ) video_cards_powervr? ( virtual/img-ddk !<media-libs/img-ddk-1.9 !<media-libs/img-ddk-bin-1.9 ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) !media-libs/mesa X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm ) video_cards_powervr? ( virtual/img-ddk !<media-libs/img-ddk-1.9 !<media-libs/img-ddk-bin-1.9 ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
 DESCRIPTION=OpenGL-like graphic library for Linux
 EAPI=6
 HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl -gallium -gbm gles1 gles2 -llvm +nptl pic selinux shared-glapi kernel_FreeBSD vulkan wayland xlib-glx X cros_host cros_workon_tree_b09304eab38348e2a157c4adc75542a460746ce9
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl -gallium -gbm gles1 gles2 -llvm +nptl pic selinux shared-glapi kernel_FreeBSD vulkan wayland xlib-glx X libglvnd cros_host cros_workon_tree_b09304eab38348e2a157c4adc75542a460746ce9
 KEYWORDS=*
 LICENSE=MIT LGPL-3 SGI-B-2.0
 PROPERTIES=live
-RDEPEND=!media-libs/mesa X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
+RDEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) !media-libs/mesa X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
 REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
 SLOT=0
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=25c78ba298149162539415f920609bc0
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=7354c30a3f7d2f0cbb2667e735029a2c
diff --git a/metadata/md5-cache/media-libs/mesa-img-9999 b/metadata/md5-cache/media-libs/mesa-img-9999
index 12bd864..b5676c3 100644
--- a/metadata/md5-cache/media-libs/mesa-img-9999
+++ b/metadata/md5-cache/media-libs/mesa-img-9999
@@ -1,14 +1,14 @@
 DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=!media-libs/mesa X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm ) video_cards_powervr? ( virtual/img-ddk !<media-libs/img-ddk-1.9 !<media-libs/img-ddk-bin-1.9 ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) !media-libs/mesa X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm ) video_cards_powervr? ( virtual/img-ddk !<media-libs/img-ddk-1.9 !<media-libs/img-ddk-bin-1.9 ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
 DESCRIPTION=OpenGL-like graphic library for Linux
 EAPI=6
 HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl -gallium -gbm gles1 gles2 -llvm +nptl pic selinux shared-glapi kernel_FreeBSD vulkan wayland xlib-glx X cros_host cros_workon_tree_
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_powervr video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl -gallium -gbm gles1 gles2 -llvm +nptl pic selinux shared-glapi kernel_FreeBSD vulkan wayland xlib-glx X libglvnd cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=MIT LGPL-3 SGI-B-2.0
 PROPERTIES=live live
-RDEPEND=!media-libs/mesa X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
+RDEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) !media-libs/mesa X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
 REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
 SLOT=0
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=a6bb24473410e23ad3251ac15baa0028
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=023b13bd8e9cfc0d02d029ae9b641d4e
diff --git a/metadata/md5-cache/media-libs/mesa-iris-21.1.1-r26 b/metadata/md5-cache/media-libs/mesa-iris-21.1.1-r26
deleted file mode 100644
index 2ba3e8b..0000000
--- a/metadata/md5-cache/media-libs/mesa-iris-21.1.1-r26
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=sys-devel/bison sys-devel/flex virtual/pkgconfig >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:=
-DESCRIPTION=The Mesa 3D Graphics Library
-EAPI=7
-HOMEPAGE=http://mesa3d.org/
-IUSE=debug vulkan tools cros_host cros_workon_tree_f623425a2c035582400821c0eb4451faaac1b9f2
-KEYWORDS=*
-LICENSE=MIT SGI-B-2.0
-PROPERTIES=live
-RDEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:=
-SLOT=0/21.1.1-r26
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f1f017744a85ea9b7676ea8e53afd7b5
diff --git a/metadata/md5-cache/media-libs/mesa-iris-21.2.3-r30 b/metadata/md5-cache/media-libs/mesa-iris-21.2.3-r30
new file mode 100644
index 0000000..2292cc3
--- /dev/null
+++ b/metadata/md5-cache/media-libs/mesa-iris-21.2.3-r30
@@ -0,0 +1,14 @@
+BDEPEND=sys-devel/bison sys-devel/flex virtual/pkgconfig >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:=
+DESCRIPTION=The Mesa 3D Graphics Library
+EAPI=7
+HOMEPAGE=http://mesa3d.org/
+IUSE=debug vulkan tools libglvnd cros_host cros_workon_tree_dc2e8513f627de823b24480670875277b9f478b2
+KEYWORDS=*
+LICENSE=MIT SGI-B-2.0
+PROPERTIES=live
+RDEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:= libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd )
+SLOT=0/21.2.3-r30
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=acbb2ec838f90c4df6ef9ac6a3593003
diff --git a/metadata/md5-cache/media-libs/mesa-iris-9999 b/metadata/md5-cache/media-libs/mesa-iris-9999
index 51e5b51..c495ad8 100644
--- a/metadata/md5-cache/media-libs/mesa-iris-9999
+++ b/metadata/md5-cache/media-libs/mesa-iris-9999
@@ -4,11 +4,11 @@
 DESCRIPTION=The Mesa 3D Graphics Library
 EAPI=7
 HOMEPAGE=http://mesa3d.org/
-IUSE=debug vulkan tools cros_host cros_workon_tree_
+IUSE=debug vulkan tools libglvnd cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=MIT SGI-B-2.0
 PROPERTIES=live
-RDEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:=
+RDEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:= libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd )
 SLOT=0/9999
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a0d1b68999e4cc90b0c80f70af34c6d4
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=acb6499bf52586772bbc3f3028cd8570
diff --git a/metadata/md5-cache/media-libs/mesa-llvmpipe-20.1 b/metadata/md5-cache/media-libs/mesa-llvmpipe-20.1
deleted file mode 100644
index 2d6c79b..0000000
--- a/metadata/md5-cache/media-libs/mesa-llvmpipe-20.1
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) wayland? ( dev-libs/wayland >=dev-libs/wayland-protocols-1.8 ) !media-libs/mesa llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto llvm? ( sys-devel/llvm ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
-DESCRIPTION=OpenGL-like graphic library for Linux
-EAPI=6
-HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X cros_host cros_workon_tree_b8d78e509c717d068a0199e10811bffd817f2dd4
-KEYWORDS=*
-LICENSE=MIT LGPL-3 SGI-B-2.0
-PROPERTIES=live
-RDEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) wayland? ( dev-libs/wayland >=dev-libs/wayland-protocols-1.8 ) !media-libs/mesa llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
-REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
-SLOT=0
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=702dbc0061405abe6c1f113138d930b8
diff --git a/metadata/md5-cache/media-libs/mesa-llvmpipe-20.1.3-r3 b/metadata/md5-cache/media-libs/mesa-llvmpipe-20.1.3-r3
deleted file mode 100644
index 2d6c79b..0000000
--- a/metadata/md5-cache/media-libs/mesa-llvmpipe-20.1.3-r3
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) wayland? ( dev-libs/wayland >=dev-libs/wayland-protocols-1.8 ) !media-libs/mesa llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto llvm? ( sys-devel/llvm ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
-DESCRIPTION=OpenGL-like graphic library for Linux
-EAPI=6
-HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X cros_host cros_workon_tree_b8d78e509c717d068a0199e10811bffd817f2dd4
-KEYWORDS=*
-LICENSE=MIT LGPL-3 SGI-B-2.0
-PROPERTIES=live
-RDEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) wayland? ( dev-libs/wayland >=dev-libs/wayland-protocols-1.8 ) !media-libs/mesa llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
-REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
-SLOT=0
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=702dbc0061405abe6c1f113138d930b8
diff --git a/metadata/md5-cache/media-libs/mesa-llvmpipe-21.1 b/metadata/md5-cache/media-libs/mesa-llvmpipe-21.1
new file mode 100644
index 0000000..5c3e3782f
--- /dev/null
+++ b/metadata/md5-cache/media-libs/mesa-llvmpipe-21.1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) wayland? ( dev-libs/wayland >=dev-libs/wayland-protocols-1.8 ) !media-libs/mesa llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto llvm? ( sys-devel/llvm ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DESCRIPTION=OpenGL-like graphic library for Linux
+EAPI=6
+HOMEPAGE=http://mesa3d.sourceforge.net/
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X libglvnd cros_host cros_workon_tree_a3f45c0300977502a0a9a969f3445b5fc09a642d
+KEYWORDS=*
+LICENSE=MIT LGPL-3 SGI-B-2.0
+PROPERTIES=live
+RDEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) wayland? ( dev-libs/wayland >=dev-libs/wayland-protocols-1.8 ) !media-libs/mesa llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
+REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
+SLOT=0
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=8d897fa08f1b60d83769a009626e105e
diff --git a/metadata/md5-cache/media-libs/mesa-llvmpipe-21.1.4 b/metadata/md5-cache/media-libs/mesa-llvmpipe-21.1.4
new file mode 100644
index 0000000..5c3e3782f
--- /dev/null
+++ b/metadata/md5-cache/media-libs/mesa-llvmpipe-21.1.4
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) wayland? ( dev-libs/wayland >=dev-libs/wayland-protocols-1.8 ) !media-libs/mesa llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto llvm? ( sys-devel/llvm ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DESCRIPTION=OpenGL-like graphic library for Linux
+EAPI=6
+HOMEPAGE=http://mesa3d.sourceforge.net/
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X libglvnd cros_host cros_workon_tree_a3f45c0300977502a0a9a969f3445b5fc09a642d
+KEYWORDS=*
+LICENSE=MIT LGPL-3 SGI-B-2.0
+PROPERTIES=live
+RDEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) wayland? ( dev-libs/wayland >=dev-libs/wayland-protocols-1.8 ) !media-libs/mesa llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
+REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
+SLOT=0
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=8d897fa08f1b60d83769a009626e105e
diff --git a/metadata/md5-cache/media-libs/mesa-llvmpipe-9999 b/metadata/md5-cache/media-libs/mesa-llvmpipe-9999
index 0c0d193..dc35d87 100644
--- a/metadata/md5-cache/media-libs/mesa-llvmpipe-9999
+++ b/metadata/md5-cache/media-libs/mesa-llvmpipe-9999
@@ -1,14 +1,14 @@
 DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) wayland? ( dev-libs/wayland >=dev-libs/wayland-protocols-1.8 ) llvm? ( virtual/libelf ) !media-libs/mesa dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto llvm? ( sys-devel/llvm ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) wayland? ( dev-libs/wayland >=dev-libs/wayland-protocols-1.8 ) llvm? ( virtual/libelf ) !media-libs/mesa dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto llvm? ( sys-devel/llvm ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
 DESCRIPTION=OpenGL-like graphic library for Linux
 EAPI=6
 HOMEPAGE=http://mesa3d.sourceforge.net/
-IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X cros_host cros_workon_tree_
+IUSE=video_cards_intel video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X libglvnd cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=MIT LGPL-3 SGI-B-2.0
 PROPERTIES=live live
-RDEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) wayland? ( dev-libs/wayland >=dev-libs/wayland-protocols-1.8 ) llvm? ( virtual/libelf ) !media-libs/mesa dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
+RDEPEND=libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd ) X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libXxf86vm ) wayland? ( dev-libs/wayland >=dev-libs/wayland-protocols-1.8 ) llvm? ( virtual/libelf ) !media-libs/mesa dev-libs/expat dev-libs/libgcrypt virtual/udev >=x11-libs/libdrm-2.4.60
 REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
 SLOT=0
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=5675ef71778dbb14076a6199fc83b9e0
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=d85db60ba47ddc4d458fe9acf83822f9
diff --git a/metadata/md5-cache/media-libs/mesa-panfrost-20.3.2 b/metadata/md5-cache/media-libs/mesa-panfrost-20.3.2
deleted file mode 100644
index fab3b55..0000000
--- a/metadata/md5-cache/media-libs/mesa-panfrost-20.3.2
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=sys-devel/bison sys-devel/flex virtual/pkgconfig >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:=
-DESCRIPTION=The Mesa 3D Graphics Library
-EAPI=7
-HOMEPAGE=http://mesa3d.org/
-IUSE=debug vulkan cros_host cros_workon_tree_02503301daef244eb54dfe159f0d795d31064aa1
-KEYWORDS=*
-LICENSE=MIT SGI-B-2.0
-PROPERTIES=live
-RDEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:=
-SLOT=0/20.3.2
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=247d6c26a7966826e83360f22e7b26ef
diff --git a/metadata/md5-cache/media-libs/mesa-panfrost-21.2.1 b/metadata/md5-cache/media-libs/mesa-panfrost-21.2.1
new file mode 100644
index 0000000..8965465
--- /dev/null
+++ b/metadata/md5-cache/media-libs/mesa-panfrost-21.2.1
@@ -0,0 +1,14 @@
+BDEPEND=sys-devel/bison sys-devel/flex virtual/pkgconfig >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:=
+DESCRIPTION=The Mesa 3D Graphics Library
+EAPI=7
+HOMEPAGE=http://mesa3d.org/
+IUSE=debug vulkan libglvnd cros_host cros_workon_tree_4990bb4b958cda4cee02dac3d6115328e1d3dd45
+KEYWORDS=*
+LICENSE=MIT SGI-B-2.0
+PROPERTIES=live
+RDEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:= libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd )
+SLOT=0/21.2.1
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=20118ea5c8bc87c7661e5ee072847d01
diff --git a/metadata/md5-cache/media-libs/mesa-panfrost-9999 b/metadata/md5-cache/media-libs/mesa-panfrost-9999
index 5322b49..acc5a53 100644
--- a/metadata/md5-cache/media-libs/mesa-panfrost-9999
+++ b/metadata/md5-cache/media-libs/mesa-panfrost-9999
@@ -4,11 +4,11 @@
 DESCRIPTION=The Mesa 3D Graphics Library
 EAPI=7
 HOMEPAGE=http://mesa3d.org/
-IUSE=debug vulkan cros_host cros_workon_tree_
+IUSE=debug vulkan libglvnd cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=MIT SGI-B-2.0
 PROPERTIES=live
-RDEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:=
+RDEPEND=dev-libs/expat:= >=x11-libs/libdrm-2.4.94:= libglvnd? ( media-libs/libglvnd ) !libglvnd? ( !media-libs/libglvnd )
 SLOT=0/9999
-_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=839738781362e761492a93326d6d38dd
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9a18dd8dbe37e73146634a6d76d357dd
diff --git a/metadata/md5-cache/media-libs/mesa-reven-21.0 b/metadata/md5-cache/media-libs/mesa-reven-21.0
new file mode 100644
index 0000000..f22e5d9
--- /dev/null
+++ b/metadata/md5-cache/media-libs/mesa-reven-21.0
@@ -0,0 +1,15 @@
+BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev zstd? ( app-arch/zstd ) >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm )
+DESCRIPTION=OpenGL-like graphic library for Linux
+EAPI=7
+HOMEPAGE=http://mesa3d.sourceforge.net/
+IUSE=video_cards_intel video_cards_iris video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X zstd cros_host cros_workon_tree_b8d78e509c717d068a0199e10811bffd817f2dd4
+KEYWORDS=*
+LICENSE=MIT LGPL-3 SGI-B-2.0
+PROPERTIES=live
+RDEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev zstd? ( app-arch/zstd ) >=x11-libs/libdrm-2.4.60
+REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
+SLOT=0
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e96cea3116af75c02d82d632c315dcc8
diff --git a/metadata/md5-cache/media-libs/mesa-reven-21.0.2-r1 b/metadata/md5-cache/media-libs/mesa-reven-21.0.2-r1
new file mode 100644
index 0000000..f22e5d9
--- /dev/null
+++ b/metadata/md5-cache/media-libs/mesa-reven-21.0.2-r1
@@ -0,0 +1,15 @@
+BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev zstd? ( app-arch/zstd ) >=x11-libs/libdrm-2.4.60 dev-libs/libxml2 sys-devel/bison sys-devel/flex virtual/pkgconfig x11-base/xorg-proto wayland? ( >=dev-libs/wayland-protocols-1.8 ) llvm? ( sys-devel/llvm )
+DESCRIPTION=OpenGL-like graphic library for Linux
+EAPI=7
+HOMEPAGE=http://mesa3d.sourceforge.net/
+IUSE=video_cards_intel video_cards_iris video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi vulkan wayland xlib-glx X zstd cros_host cros_workon_tree_b8d78e509c717d068a0199e10811bffd817f2dd4
+KEYWORDS=*
+LICENSE=MIT LGPL-3 SGI-B-2.0
+PROPERTIES=live
+RDEPEND=X? ( !<x11-base/xorg-server-1.7 >=x11-libs/libX11-1.3.99.901 x11-libs/libXdamage x11-libs/libXext x11-libs/libXrandr x11-libs/libxshmfence x11-libs/libXxf86vm ) llvm? ( virtual/libelf ) dev-libs/expat dev-libs/libgcrypt virtual/udev zstd? ( app-arch/zstd ) >=x11-libs/libdrm-2.4.60
+REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
+SLOT=0
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e96cea3116af75c02d82d632c315dcc8
diff --git a/metadata/md5-cache/media-libs/mesa-reven-9999 b/metadata/md5-cache/media-libs/mesa-reven-9999
new file mode 100644
index 0000000..c80e6e7
--- /dev/null
+++ b/metadata/md5-cache/media-libs/mesa-reven-9999
@@ -0,0 +1,15 @@
+BDEPEND=virtual/pkgconfig sys-devel/bison sys-devel/flex >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=dev-libs/expat:= dev-libs/libgcrypt:= llvm? ( sys-devel/llvm:= ) llvm? ( virtual/libelf:= ) virtual/udev:= zstd? ( app-arch/zstd ) X? ( !<x11-base/xorg-server-1.7:= >=x11-libs/libX11-1.3.99.901:= x11-libs/libXdamage:= x11-libs/libXext:= x11-libs/libXrandr:= x11-libs/libxshmfence:= x11-libs/libXxf86vm:= ) >=x11-libs/libdrm-2.4.60:= dev-libs/libxml2:= x11-base/xorg-proto:= wayland? ( >=dev-libs/wayland-protocols-1.8:= )
+DESCRIPTION=OpenGL-like graphic library for Linux
+EAPI=7
+HOMEPAGE=http://mesa3d.sourceforge.net/
+IUSE=video_cards_intel video_cards_iris video_cards_amdgpu video_cards_radeon video_cards_freedreno video_cards_llvmpipe video_cards_mach64 video_cards_mga video_cards_nouveau video_cards_r128 video_cards_radeonsi video_cards_savage video_cards_sis video_cards_softpipe video_cards_tdfx video_cards_via video_cards_virgl video_cards_vmware +classic debug dri drm egl +gallium -gbm gles1 gles2 kernel_FreeBSD kvm_guest llvm +nptl pic selinux shared-glapi +vulkan wayland xlib-glx X zstd libglvnd cros_host cros_workon_tree_
+KEYWORDS=~*
+LICENSE=MIT LGPL-3 SGI-B-2.0
+PROPERTIES=live live
+RDEPEND=dev-libs/expat:= dev-libs/libgcrypt:= llvm? ( sys-devel/llvm:= ) llvm? ( virtual/libelf:= ) virtual/udev:= zstd? ( app-arch/zstd ) X? ( !<x11-base/xorg-server-1.7:= >=x11-libs/libX11-1.3.99.901:= x11-libs/libXdamage:= x11-libs/libXext:= x11-libs/libXrandr:= x11-libs/libxshmfence:= x11-libs/libXxf86vm:= ) >=x11-libs/libdrm-2.4.60:= libglvnd? ( media-libs/libglvnd:= )
+REQUIRED_USE=video_cards_amdgpu? ( llvm ) video_cards_llvmpipe? ( llvm )
+SLOT=0/9999
+_eclasses_=base	ec46b36a6f6fd1d0b505a33e0b74e413	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5844518d1be11c6f7f4e3079824a4363
diff --git a/metadata/md5-cache/media-libs/minigbm-0.0.1-r485 b/metadata/md5-cache/media-libs/minigbm-0.0.1-r485
deleted file mode 100644
index 8d05529..0000000
--- a/metadata/md5-cache/media-libs/minigbm-0.0.1-r485
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=x11-libs/libdrm !media-libs/mesa[gbm] virtual/pkgconfig video_cards_amdgpu? ( virtual/opengles x11-drivers/opengles-headers )
-DESCRIPTION=Mini GBM implementation
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/minigbm
-IUSE=-asan kernel-3_18 linear_align_256 video_cards_amdgpu video_cards_exynos video_cards_intel video_cards_marvell video_cards_mediatek video_cards_msm video_cards_radeon video_cards_radeonsi video_cards_rockchip video_cards_tegra video_cards_vc4 video_cards_virgl minigbm_platform_mt8183 minigbm_platform_mt8192 minigbm_platform_mt8195 asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_6db1492d66cd8acef88bacfe95f001e289adc55c
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=x11-libs/libdrm !media-libs/mesa[gbm]
-SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=9a81748ac96d0e9b369ee1683699189e
diff --git a/metadata/md5-cache/media-libs/minigbm-0.0.1-r533 b/metadata/md5-cache/media-libs/minigbm-0.0.1-r533
new file mode 100644
index 0000000..4e1a06a
--- /dev/null
+++ b/metadata/md5-cache/media-libs/minigbm-0.0.1-r533
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=x11-libs/libdrm !media-libs/mesa[gbm] virtual/pkgconfig video_cards_amdgpu? ( virtual/opengles x11-drivers/opengles-headers )
+DESCRIPTION=Mini GBM implementation
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/minigbm
+IUSE=-asan kernel-3_18 linear_align_256 video_cards_amdgpu video_cards_exynos video_cards_intel video_cards_marvell video_cards_mediatek video_cards_msm video_cards_radeon video_cards_radeonsi video_cards_rockchip video_cards_tegra video_cards_vc4 video_cards_virgl minigbm_platform_mt8183 minigbm_platform_mt8192 minigbm_platform_mt8195 minigbm_platform_sc7280 asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_81cd37f0714198bfcfc7939e20046acb470d31c4
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=x11-libs/libdrm !media-libs/mesa[gbm]
+SLOT=0
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=708a7093f1ccffd5c23b102195fe2939
diff --git a/metadata/md5-cache/media-libs/minigbm-9999 b/metadata/md5-cache/media-libs/minigbm-9999
index a741729..e59c37c 100644
--- a/metadata/md5-cache/media-libs/minigbm-9999
+++ b/metadata/md5-cache/media-libs/minigbm-9999
@@ -3,11 +3,11 @@
 DESCRIPTION=Mini GBM implementation
 EAPI=6
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/minigbm
-IUSE=-asan kernel-3_18 linear_align_256 video_cards_amdgpu video_cards_exynos video_cards_intel video_cards_marvell video_cards_mediatek video_cards_msm video_cards_radeon video_cards_radeonsi video_cards_rockchip video_cards_tegra video_cards_vc4 video_cards_virgl minigbm_platform_mt8183 minigbm_platform_mt8192 minigbm_platform_mt8195 asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_
+IUSE=-asan kernel-3_18 linear_align_256 video_cards_amdgpu video_cards_exynos video_cards_intel video_cards_marvell video_cards_mediatek video_cards_msm video_cards_radeon video_cards_radeonsi video_cards_rockchip video_cards_tegra video_cards_vc4 video_cards_virgl minigbm_platform_mt8183 minigbm_platform_mt8192 minigbm_platform_mt8195 minigbm_platform_sc7280 asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
 RDEPEND=x11-libs/libdrm !media-libs/mesa[gbm]
 SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=f592a178d48d870ec54d5d1ac6a5aeaf
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=04f1ffb2705247a07256bab8ed36f7ae
diff --git a/metadata/md5-cache/media-libs/opencv-4.1.2-r3 b/metadata/md5-cache/media-libs/opencv-4.1.2-r3
index 0ac0e7d..2924df6 100644
--- a/metadata/md5-cache/media-libs/opencv-4.1.2-r3
+++ b/metadata/md5-cache/media-libs/opencv-4.1.2-r3
@@ -11,5 +11,5 @@
 REQUIRED_USE=cuda? ( tesseract? ( opencl ) ) dnnsamples? ( examples ) gflags? ( contrib ) glog? ( contrib ) contribcvv? ( contrib qt5 ) contribdnn? ( contrib ) contribhdf? ( contrib ) contribsfm? ( contrib eigen gflags glog ) contribxfeatures2d? ( contrib download ) java? ( python ) opengl? ( || ( gtk qt5 ) ) python? ( || ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 ) ) tesseract? ( contrib )
 SLOT=0/4.1.2
 SRC_URI=https://github.com/opencv/opencv/archive/4.1.2.tar.gz -> opencv-4.1.2.tar.gz dnnsamples? ( https://dev.gentoo.org/~amynka/snap/opencv-3.4.0-res10_300x300-caffeemodel.tar.gz ) contrib? ( https://github.com/opencv/opencv_contrib/archive/4.1.2.tar.gz -> opencv-4.1.2_contrib.tar.gz contribdnn? ( https://dev.gentoo.org/~amynka/snap/opencv-3.4.0-face_landmark_model.tar.gz ) contribxfeatures2d? ( https://dev.gentoo.org/~amynka/snap/vgg_boostdesc-3.2.0.tar.gz ) )
-_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	java-ant-2	4e2b30d918dda38a51839a4d45282b62	java-pkg-opt-2	be255db325e3af8fbf3506cf63998341	java-utils-2	82402a1c36ab4bf38f3313a543f9e827	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	java-ant-2	4e2b30d918dda38a51839a4d45282b62	java-pkg-opt-2	be255db325e3af8fbf3506cf63998341	java-utils-2	82402a1c36ab4bf38f3313a543f9e827	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=debbddda5bccacdee773c6ab82e6d547
diff --git a/metadata/md5-cache/media-libs/speex-1.2_rc1 b/metadata/md5-cache/media-libs/speex-1.2_rc1
index fb63ece..f963eeb 100644
--- a/metadata/md5-cache/media-libs/speex-1.2_rc1
+++ b/metadata/md5-cache/media-libs/speex-1.2_rc1
@@ -9,5 +9,5 @@
 RDEPEND=ogg? ( media-libs/libogg )
 SLOT=0
 SRC_URI=http://downloads.xiph.org/releases/speex/speex-1.2rc1.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2fde6188222d18c762ed05f8e5da064a
diff --git a/metadata/md5-cache/media-libs/speex-1.2_rc1-r6 b/metadata/md5-cache/media-libs/speex-1.2_rc1-r6
index fb63ece..f963eeb 100644
--- a/metadata/md5-cache/media-libs/speex-1.2_rc1-r6
+++ b/metadata/md5-cache/media-libs/speex-1.2_rc1-r6
@@ -9,5 +9,5 @@
 RDEPEND=ogg? ( media-libs/libogg )
 SLOT=0
 SRC_URI=http://downloads.xiph.org/releases/speex/speex-1.2rc1.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2fde6188222d18c762ed05f8e5da064a
diff --git a/metadata/md5-cache/media-libs/virglrenderer-0.8.2-r54 b/metadata/md5-cache/media-libs/virglrenderer-0.8.2-r54
deleted file mode 100644
index b2c492f..0000000
--- a/metadata/md5-cache/media-libs/virglrenderer-0.8.2-r54
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=>=x11-libs/libdrm-2.4.50 media-libs/libepoxy media-libs/minigbm fuzzer? ( virtual/opengles ) vulkan? ( media-libs/vulkan-loader ) chromeos-base/percetto sys-devel/autoconf-archive fuzzer? ( >=dev-libs/check-0.9.4 ) test? ( >=dev-libs/check-0.9.4 ) vulkan? ( dev-util/vulkan-headers ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
-DESCRIPTION=library used implement a virtual 3D GPU used by qemu
-EAPI=6
-HOMEPAGE=https://virgil3d.github.io/
-IUSE=debug fuzzer profiling test vulkan fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_f4b861dfec2f86b6b3c33034d7af41e0a08a86e6
-KEYWORDS=*
-LICENSE=MIT
-PROPERTIES=live
-RDEPEND=>=x11-libs/libdrm-2.4.50 media-libs/libepoxy media-libs/minigbm fuzzer? ( virtual/opengles ) vulkan? ( media-libs/vulkan-loader )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=544f6289ba664d49493d3f5fe677a7a3
diff --git a/metadata/md5-cache/media-libs/virglrenderer-0.8.2-r90 b/metadata/md5-cache/media-libs/virglrenderer-0.8.2-r90
new file mode 100644
index 0000000..58309cf
--- /dev/null
+++ b/metadata/md5-cache/media-libs/virglrenderer-0.8.2-r90
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=>=x11-libs/libdrm-2.4.50 media-libs/libepoxy media-libs/minigbm fuzzer? ( virtual/opengles vulkan? ( virtual/vulkan-icd ) ) vulkan? ( media-libs/vulkan-loader media-libs/vulkan-layers ) chromeos-base/percetto sys-devel/autoconf-archive fuzzer? ( >=dev-libs/check-0.9.4 ) test? ( >=dev-libs/check-0.9.4 ) vulkan? ( dev-util/vulkan-headers ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DESCRIPTION=library used implement a virtual 3D GPU used by qemu
+EAPI=6
+HOMEPAGE=https://virgil3d.github.io/
+IUSE=debug fuzzer profiling test vulkan fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ad93154c2f4708f36f7f74a7d057336304b5a1ae
+KEYWORDS=*
+LICENSE=MIT
+PROPERTIES=live
+RDEPEND=>=x11-libs/libdrm-2.4.50 media-libs/libepoxy media-libs/minigbm fuzzer? ( virtual/opengles vulkan? ( virtual/vulkan-icd ) ) vulkan? ( media-libs/vulkan-loader media-libs/vulkan-layers )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=f6cbdf66219b776e17d03d38a54ec849
diff --git a/metadata/md5-cache/media-libs/virglrenderer-9999 b/metadata/md5-cache/media-libs/virglrenderer-9999
index 7532507..a4fed23 100644
--- a/metadata/md5-cache/media-libs/virglrenderer-9999
+++ b/metadata/md5-cache/media-libs/virglrenderer-9999
@@ -1,5 +1,5 @@
 DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=>=x11-libs/libdrm-2.4.50 media-libs/libepoxy media-libs/minigbm fuzzer? ( virtual/opengles ) vulkan? ( media-libs/vulkan-loader ) chromeos-base/percetto sys-devel/autoconf-archive fuzzer? ( >=dev-libs/check-0.9.4 ) test? ( >=dev-libs/check-0.9.4 ) vulkan? ( dev-util/vulkan-headers ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEPEND=>=x11-libs/libdrm-2.4.50 media-libs/libepoxy media-libs/minigbm fuzzer? ( virtual/opengles vulkan? ( virtual/vulkan-icd ) ) vulkan? ( media-libs/vulkan-loader media-libs/vulkan-layers ) chromeos-base/percetto sys-devel/autoconf-archive fuzzer? ( >=dev-libs/check-0.9.4 ) test? ( >=dev-libs/check-0.9.4 ) vulkan? ( dev-util/vulkan-headers ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
 DESCRIPTION=library used implement a virtual 3D GPU used by qemu
 EAPI=6
 HOMEPAGE=https://virgil3d.github.io/
@@ -7,7 +7,7 @@
 KEYWORDS=~*
 LICENSE=MIT
 PROPERTIES=live
-RDEPEND=>=x11-libs/libdrm-2.4.50 media-libs/libepoxy media-libs/minigbm fuzzer? ( virtual/opengles ) vulkan? ( media-libs/vulkan-loader )
+RDEPEND=>=x11-libs/libdrm-2.4.50 media-libs/libepoxy media-libs/minigbm fuzzer? ( virtual/opengles vulkan? ( virtual/vulkan-icd ) ) vulkan? ( media-libs/vulkan-loader media-libs/vulkan-layers )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=fd2dfc30a56c35cd8c6e2996e5f79981
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=2f1484cd8e47d192dd9458c95176ddd8
diff --git a/metadata/md5-cache/media-libs/vpd-hdcpkey-install-0.0.1 b/metadata/md5-cache/media-libs/vpd-hdcpkey-install-0.0.1
index 9fd6a1a..0e287f9 100644
--- a/metadata/md5-cache/media-libs/vpd-hdcpkey-install-0.0.1
+++ b/metadata/md5-cache/media-libs/vpd-hdcpkey-install-0.0.1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=|| ( rk32 rk3399 )
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=af798b327fe536d2881fe27e5a04012b
diff --git a/metadata/md5-cache/media-libs/vpd-hdcpkey-install-0.0.1-r1 b/metadata/md5-cache/media-libs/vpd-hdcpkey-install-0.0.1-r1
index 9fd6a1a..0e287f9 100644
--- a/metadata/md5-cache/media-libs/vpd-hdcpkey-install-0.0.1-r1
+++ b/metadata/md5-cache/media-libs/vpd-hdcpkey-install-0.0.1-r1
@@ -7,5 +7,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=|| ( rk32 rk3399 )
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=af798b327fe536d2881fe27e5a04012b
diff --git a/metadata/md5-cache/media-libs/vulkan-layers-1.2.162 b/metadata/md5-cache/media-libs/vulkan-layers-1.2.162
deleted file mode 100644
index 4c73c9b..0000000
--- a/metadata/md5-cache/media-libs/vulkan-layers-1.2.162
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=>=dev-util/cmake-3.10.2 dev-util/ninja dev-util/cmake
-DEFINED_PHASES=compile configure install prepare setup test
-DEPEND=>=dev-util/spirv-tools-2020.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] || ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) >=dev-util/glslang-10.11.0.0_pre20201216:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-util/vulkan-headers-1.2.162 wayland? ( dev-libs/wayland:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) X? ( x11-libs/libX11:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] x11-libs/libXrandr:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
-DESCRIPTION=Vulkan Validation Layers
-EAPI=7
-HOMEPAGE=https://github.com/KhronosGroup/Vulkan-ValidationLayers
-IUSE=wayland X abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=Apache-2.0
-RDEPEND=>=dev-util/spirv-tools-2020.6:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-SLOT=0
-SRC_URI=https://github.com/KhronosGroup/Vulkan-ValidationLayers/archive/v1.2.162.tar.gz -> vulkan-layers-1.2.162.tar.gz
-_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=343b553b332680b37a604955f27e2871
diff --git a/metadata/md5-cache/media-libs/vulkan-layers-1.2.182-r1 b/metadata/md5-cache/media-libs/vulkan-layers-1.2.182-r1
new file mode 100644
index 0000000..8484c09
--- /dev/null
+++ b/metadata/md5-cache/media-libs/vulkan-layers-1.2.182-r1
@@ -0,0 +1,14 @@
+BDEPEND=>=dev-util/cmake-3.10.2 sys-devel/make >=dev-util/cmake-3.9.6
+DEFINED_PHASES=compile configure install prepare setup test
+DEPEND=>=dev-util/spirv-tools-2021.0_pre20210526:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] || ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) dev-cpp/robin-hood-hashing >=dev-util/glslang-11.4.0:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=dev-util/vulkan-headers-1.2.182 wayland? ( dev-libs/wayland:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) X? ( x11-libs/libX11:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] x11-libs/libXrandr:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
+DESCRIPTION=Vulkan Validation Layers
+EAPI=7
+HOMEPAGE=https://github.com/KhronosGroup/Vulkan-ValidationLayers
+IUSE=wayland X abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=Apache-2.0
+RDEPEND=>=dev-util/spirv-tools-2021.0_pre20210526:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+SLOT=0
+SRC_URI=https://github.com/KhronosGroup/Vulkan-ValidationLayers/archive/v1.2.182.tar.gz -> vulkan-layers-1.2.182.tar.gz
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=518dd34c8d04e82b91151b00c4c8cc95
diff --git a/metadata/md5-cache/media-libs/vulkan-loader-1.2.162-r1 b/metadata/md5-cache/media-libs/vulkan-loader-1.2.162-r1
deleted file mode 100644
index 8fde50e..0000000
--- a/metadata/md5-cache/media-libs/vulkan-loader-1.2.162-r1
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=|| ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) >=dev-util/cmake-3.10.2 dev-util/ninja dev-util/cmake
-DEFINED_PHASES=compile configure install postinst prepare setup test
-DEPEND=~dev-util/vulkan-headers-1.2.162 wayland? ( dev-libs/wayland:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) X? ( x11-libs/libX11:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] x11-libs/libXrandr:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
-DESCRIPTION=Vulkan Installable Client Driver (ICD) Loader
-EAPI=7
-HOMEPAGE=https://github.com/KhronosGroup/Vulkan-Loader
-IUSE=layers wayland X abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=Apache-2.0
-PDEPEND=layers? ( media-libs/vulkan-layers:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
-SLOT=0
-SRC_URI=https://github.com/KhronosGroup/Vulkan-Loader/archive/v1.2.162.tar.gz -> vulkan-loader-1.2.162.tar.gz
-_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=e020cf42f1ddbb61fd3ceacccee5441b
diff --git a/metadata/md5-cache/media-libs/vulkan-loader-1.2.182-r1 b/metadata/md5-cache/media-libs/vulkan-loader-1.2.182-r1
new file mode 100644
index 0000000..488ede1
--- /dev/null
+++ b/metadata/md5-cache/media-libs/vulkan-loader-1.2.182-r1
@@ -0,0 +1,14 @@
+BDEPEND=>=dev-util/cmake-3.10.2 sys-devel/make >=dev-util/cmake-3.9.6
+DEFINED_PHASES=compile configure install postinst prepare test
+DEPEND=~dev-util/vulkan-headers-1.2.182 wayland? ( dev-libs/wayland:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) X? ( x11-libs/libX11:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] x11-libs/libXrandr:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
+DESCRIPTION=Vulkan Installable Client Driver (ICD) Loader
+EAPI=7
+HOMEPAGE=https://github.com/KhronosGroup/Vulkan-Loader
+IUSE=layers wayland X abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=Apache-2.0
+PDEPEND=layers? ( media-libs/vulkan-layers:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
+SLOT=0
+SRC_URI=https://github.com/KhronosGroup/Vulkan-Loader/archive/v1.2.182.tar.gz -> vulkan-loader-1.2.182.tar.gz
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=f5f5ed79c7dc05e50d25e86b7d50a5bb
diff --git a/metadata/md5-cache/media-libs/waffle-1.6.0-r13 b/metadata/md5-cache/media-libs/waffle-1.6.0-r13
index 1c6f1fa..fbbf8fe 100644
--- a/metadata/md5-cache/media-libs/waffle-1.6.0-r13
+++ b/metadata/md5-cache/media-libs/waffle-1.6.0-r13
@@ -10,5 +10,5 @@
 REQUIRED_USE=|| ( opengl opengles ) opengl? ( X ) || ( X gbm wayland )
 SLOT=0
 SRC_URI=https://github.com/fjhenigman/waffle/archive/null2.tar.gz -> waffle-1.6.0-r1.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=d03a92a859e96f8cb0057b9c0b211dfa
diff --git a/metadata/md5-cache/media-libs/webrtc-apm-0.0.1-r25 b/metadata/md5-cache/media-libs/webrtc-apm-0.0.1-r25
deleted file mode 100644
index b9e4cd6..0000000
--- a/metadata/md5-cache/media-libs/webrtc-apm-0.0.1-r25
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure info install setup unpack
-DEPEND=dev-libs/iniparser:= dev-libs/libevent:= dev-libs/protobuf:= chromeos-base/metrics
-DESCRIPTION=Standalone WebRTC APM library
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/webrtc-apm
-IUSE=cpu_flags_x86_sse2 neon cros_host cros_workon_tree_d7913d87dd4ea6cee195ad27b94ce6ad23840b87
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-libs/iniparser:= dev-libs/libevent:= dev-libs/protobuf:= chromeos-base/metrics
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=3ed891c842da193263db7ba0d7192309
diff --git a/metadata/md5-cache/media-libs/webrtc-apm-0.0.1-r27 b/metadata/md5-cache/media-libs/webrtc-apm-0.0.1-r27
new file mode 100644
index 0000000..1e8801b
--- /dev/null
+++ b/metadata/md5-cache/media-libs/webrtc-apm-0.0.1-r27
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure info install setup unpack
+DEPEND=dev-libs/iniparser:= dev-libs/libevent:= dev-libs/protobuf:= chromeos-base/metrics
+DESCRIPTION=Standalone WebRTC APM library
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/webrtc-apm
+IUSE=cpu_flags_x86_sse2 neon cros_host cros_workon_tree_1a0b1a1877d86d749c00100ebbef86fc9c873b6b asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-libs/iniparser:= dev-libs/libevent:= dev-libs/protobuf:= chromeos-base/metrics
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=e445647221e294c3f08fa400fcd2484d
diff --git a/metadata/md5-cache/media-libs/webrtc-apm-9999 b/metadata/md5-cache/media-libs/webrtc-apm-9999
index a139089..3f12525 100644
--- a/metadata/md5-cache/media-libs/webrtc-apm-9999
+++ b/metadata/md5-cache/media-libs/webrtc-apm-9999
@@ -3,11 +3,11 @@
 DESCRIPTION=Standalone WebRTC APM library
 EAPI=5
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/webrtc-apm
-IUSE=cpu_flags_x86_sse2 neon cros_host cros_workon_tree_
+IUSE=cpu_flags_x86_sse2 neon cros_host cros_workon_tree_ asan coverage fuzzer msan tsan ubsan
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
 RDEPEND=dev-libs/iniparser:= dev-libs/libevent:= dev-libs/protobuf:= chromeos-base/metrics
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=d32e579e67b74a633881bb70b256a8c2
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=a61567f805732749d4380e4cdb01a61d
diff --git a/metadata/md5-cache/media-plugins/live-2020.03.06 b/metadata/md5-cache/media-plugins/live-2020.03.06
deleted file mode 100644
index b228bf9..0000000
--- a/metadata/md5-cache/media-plugins/live-2020.03.06
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure install prepare
-DEPEND=ssl? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) )
-DESCRIPTION=Libraries for standards-based RTP/RTCP/RTSP multimedia streaming
-EAPI=7
-HOMEPAGE=http://www.live555.com/
-IUSE=libressl ssl
-KEYWORDS=*
-LICENSE=LGPL-2.1
-RDEPEND=ssl? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) )
-SLOT=0/8
-SRC_URI=http://www.live555.com/liveMedia/public/live.2020.03.06.tar.gz
-_md5_=b5abda330445e4adc51e8711848156b2
diff --git a/metadata/md5-cache/media-plugins/live-2020.03.06-r3 b/metadata/md5-cache/media-plugins/live-2020.03.06-r3
deleted file mode 100644
index b228bf9..0000000
--- a/metadata/md5-cache/media-plugins/live-2020.03.06-r3
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure install prepare
-DEPEND=ssl? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) )
-DESCRIPTION=Libraries for standards-based RTP/RTCP/RTSP multimedia streaming
-EAPI=7
-HOMEPAGE=http://www.live555.com/
-IUSE=libressl ssl
-KEYWORDS=*
-LICENSE=LGPL-2.1
-RDEPEND=ssl? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) )
-SLOT=0/8
-SRC_URI=http://www.live555.com/liveMedia/public/live.2020.03.06.tar.gz
-_md5_=b5abda330445e4adc51e8711848156b2
diff --git a/metadata/md5-cache/media-plugins/live-2021.05.22 b/metadata/md5-cache/media-plugins/live-2021.05.22
new file mode 100644
index 0000000..9e82457
--- /dev/null
+++ b/metadata/md5-cache/media-plugins/live-2021.05.22
@@ -0,0 +1,14 @@
+BDEPEND=virtual/pkgconfig
+DEFINED_PHASES=compile configure install prepare
+DEPEND=ssl? ( dev-libs/openssl:0= )
+DESCRIPTION=Libraries for standards-based RTP/RTCP/RTSP multimedia streaming
+EAPI=7
+HOMEPAGE=http://www.live555.com/
+IUSE=ssl
+KEYWORDS=*
+LICENSE=LGPL-2.1
+RDEPEND=ssl? ( dev-libs/openssl:0= )
+SLOT=0/9
+SRC_URI=http://www.live555.com/liveMedia/public/live.2021.05.22.tar.gz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d32c05e84a7288045f0a185bbfe4abb4
diff --git a/metadata/md5-cache/media-plugins/live-2021.05.22-r1 b/metadata/md5-cache/media-plugins/live-2021.05.22-r1
new file mode 100644
index 0000000..9e82457
--- /dev/null
+++ b/metadata/md5-cache/media-plugins/live-2021.05.22-r1
@@ -0,0 +1,14 @@
+BDEPEND=virtual/pkgconfig
+DEFINED_PHASES=compile configure install prepare
+DEPEND=ssl? ( dev-libs/openssl:0= )
+DESCRIPTION=Libraries for standards-based RTP/RTCP/RTSP multimedia streaming
+EAPI=7
+HOMEPAGE=http://www.live555.com/
+IUSE=ssl
+KEYWORDS=*
+LICENSE=LGPL-2.1
+RDEPEND=ssl? ( dev-libs/openssl:0= )
+SLOT=0/9
+SRC_URI=http://www.live555.com/liveMedia/public/live.2021.05.22.tar.gz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d32c05e84a7288045f0a185bbfe4abb4
diff --git a/metadata/md5-cache/media-sound/adhd-0.0.6-r2281 b/metadata/md5-cache/media-sound/adhd-0.0.6-r2281
deleted file mode 100644
index a4a00f6..0000000
--- a/metadata/md5-cache/media-sound/adhd-0.0.6-r2281
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=>=app-portage/elt-patches-20170815 dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst prepare setup test unpack
-DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/iniparser:= cras-apm? ( media-libs/webrtc-apm:= ) >=media-libs/alsa-lib-1.1.6-r3:= media-libs/ladspa-sdk:= media-libs/sbc:= media-libs/speex:= >=sys-apps/dbus-1.4.12:= selinux? ( sys-libs/libselinux:= ) virtual/udev:= dev-libs/libpthread-stubs:= media-sound/cras_rust:= !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
-DESCRIPTION=Google A/V Daemon
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/
-IUSE=asan +cras-apm fuzzer generated_cros_config selinux systemd unibuild fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_e62b24ca0c95c5db285704697a8d941cbdbb742c
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/iniparser:= cras-apm? ( media-libs/webrtc-apm:= ) >=media-libs/alsa-lib-1.1.6-r3:= media-libs/ladspa-sdk:= media-libs/sbc:= media-libs/speex:= >=sys-apps/dbus-1.4.12:= selinux? ( sys-libs/libselinux:= ) virtual/udev:= media-sound/alsa-utils media-plugins/alsa-plugins unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp ) ) chromeos-base/chromeos-config-tools sys-apps/baselayout
-SLOT=0/0.0.6-r2281
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=f43ae1589298849ec190117a48924325
diff --git a/metadata/md5-cache/media-sound/adhd-0.0.6-r2366 b/metadata/md5-cache/media-sound/adhd-0.0.6-r2366
new file mode 100644
index 0000000..51bb969
--- /dev/null
+++ b/metadata/md5-cache/media-sound/adhd-0.0.6-r2366
@@ -0,0 +1,14 @@
+BDEPEND=>=app-portage/elt-patches-20170815 dev-vcs/git chromeos-base/chromeos-config-host:= virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst prepare setup test unpack
+DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/iniparser:= cras-apm? ( media-libs/webrtc-apm:= ) >=media-libs/alsa-lib-1.1.6-r3:= media-libs/ladspa-sdk:= media-libs/sbc:= media-libs/speex:= >=sys-apps/dbus-1.4.12:= selinux? ( sys-libs/libselinux:= ) virtual/udev:= dev-libs/libpthread-stubs:= media-sound/cras_rust:= !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) sys-apps/baselayout
+DESCRIPTION=Google A/V Daemon
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/
+IUSE=asan +cras-apm fuzzer selinux systemd fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_f415ee0442ea42533f2915076efce40c27901850 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/iniparser:= cras-apm? ( media-libs/webrtc-apm:= ) >=media-libs/alsa-lib-1.1.6-r3:= media-libs/ladspa-sdk:= media-libs/sbc:= media-libs/speex:= >=sys-apps/dbus-1.4.12:= selinux? ( sys-libs/libselinux:= ) virtual/udev:= media-sound/alsa-utils media-plugins/alsa-plugins chromeos-base/chromeos-config-tools has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) sys-apps/baselayout
+SLOT=0/0.0.6-r2366
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=e49cfb709faba882f53b93f76f6c0eeb
diff --git a/metadata/md5-cache/media-sound/adhd-9999 b/metadata/md5-cache/media-sound/adhd-9999
index f143c2f..4cf543c 100644
--- a/metadata/md5-cache/media-sound/adhd-9999
+++ b/metadata/md5-cache/media-sound/adhd-9999
@@ -1,14 +1,14 @@
-BDEPEND=>=app-portage/elt-patches-20170815 dev-vcs/git virtual/pkgconfig
+BDEPEND=>=app-portage/elt-patches-20170815 dev-vcs/git chromeos-base/chromeos-config-host:= virtual/pkgconfig
 DEFINED_PHASES=compile configure info install preinst prepare setup test unpack
-DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/iniparser:= cras-apm? ( media-libs/webrtc-apm:= ) >=media-libs/alsa-lib-1.1.6-r3:= media-libs/ladspa-sdk:= media-libs/sbc:= media-libs/speex:= >=sys-apps/dbus-1.4.12:= selinux? ( sys-libs/libselinux:= ) virtual/udev:= dev-libs/libpthread-stubs:= media-sound/cras_rust:= !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
+DEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/iniparser:= cras-apm? ( media-libs/webrtc-apm:= ) >=media-libs/alsa-lib-1.1.6-r3:= media-libs/ladspa-sdk:= media-libs/sbc:= media-libs/speex:= >=sys-apps/dbus-1.4.12:= selinux? ( sys-libs/libselinux:= ) virtual/udev:= dev-libs/libpthread-stubs:= media-sound/cras_rust:= !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) sys-apps/baselayout
 DESCRIPTION=Google A/V Daemon
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/
-IUSE=asan +cras-apm fuzzer generated_cros_config selinux systemd unibuild fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_
+IUSE=asan +cras-apm fuzzer selinux systemd fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/iniparser:= cras-apm? ( media-libs/webrtc-apm:= ) >=media-libs/alsa-lib-1.1.6-r3:= media-libs/ladspa-sdk:= media-libs/sbc:= media-libs/speex:= >=sys-apps/dbus-1.4.12:= selinux? ( sys-libs/libselinux:= ) virtual/udev:= media-sound/alsa-utils media-plugins/alsa-plugins unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp ) ) chromeos-base/chromeos-config-tools sys-apps/baselayout
+RDEPEND=>=chromeos-base/metrics-0.0.1-r3152:= dev-libs/iniparser:= cras-apm? ( media-libs/webrtc-apm:= ) >=media-libs/alsa-lib-1.1.6-r3:= media-libs/ladspa-sdk:= media-libs/sbc:= media-libs/speex:= >=sys-apps/dbus-1.4.12:= selinux? ( sys-libs/libselinux:= ) virtual/udev:= media-sound/alsa-utils media-plugins/alsa-plugins chromeos-base/chromeos-config-tools has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=e951975d7e25c9c43c7b36ba55d8391d
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=b2260fb6013cad83b9f87fb54df4c321
diff --git a/metadata/md5-cache/media-sound/alsa-utils-1.2.1 b/metadata/md5-cache/media-sound/alsa-utils-1.2.1
index f4fe88a..65c29166 100644
--- a/metadata/md5-cache/media-sound/alsa-utils-1.2.1
+++ b/metadata/md5-cache/media-sound/alsa-utils-1.2.1
@@ -10,5 +10,5 @@
 RDEPEND=>=media-libs/alsa-lib-1.2.1 libsamplerate? ( media-libs/libsamplerate ) ncurses? ( >=sys-libs/ncurses-5.7-r7:0= ) bat? ( sci-libs/fftw:= ) selinux? ( sec-policy/selinux-alsa )
 SLOT=0.9
 SRC_URI=https://www.alsa-project.org/files/pub/utils/alsa-utils-1.2.1.tar.bz2
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6
-_md5_=fe007ef3effbd90ff5cf2d0170e001a4
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
+_md5_=45b193bc942dcffd6edb335abdfc5d35
diff --git a/metadata/md5-cache/media-sound/alsa-utils-1.2.1-r2 b/metadata/md5-cache/media-sound/alsa-utils-1.2.1-r2
deleted file mode 100644
index f4fe88a..0000000
--- a/metadata/md5-cache/media-sound/alsa-utils-1.2.1-r2
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=virtual/pkgconfig virtual/pkgconfig virtual/pkgconfig
-DEFINED_PHASES=configure install
-DEPEND=>=media-libs/alsa-lib-1.2.1 libsamplerate? ( media-libs/libsamplerate ) ncurses? ( >=sys-libs/ncurses-5.7-r7:0= ) bat? ( sci-libs/fftw:= ) doc? ( app-text/xmlto )
-DESCRIPTION=Advanced Linux Sound Architecture Utils (alsactl, alsamixer, etc.)
-EAPI=7
-HOMEPAGE=https://alsa-project.org/
-IUSE=bat doc +libsamplerate +ncurses nls selinux
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=>=media-libs/alsa-lib-1.2.1 libsamplerate? ( media-libs/libsamplerate ) ncurses? ( >=sys-libs/ncurses-5.7-r7:0= ) bat? ( sci-libs/fftw:= ) selinux? ( sec-policy/selinux-alsa )
-SLOT=0.9
-SRC_URI=https://www.alsa-project.org/files/pub/utils/alsa-utils-1.2.1.tar.bz2
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6
-_md5_=fe007ef3effbd90ff5cf2d0170e001a4
diff --git a/metadata/md5-cache/media-sound/alsa-utils-1.2.1-r3 b/metadata/md5-cache/media-sound/alsa-utils-1.2.1-r3
new file mode 100644
index 0000000..65c29166
--- /dev/null
+++ b/metadata/md5-cache/media-sound/alsa-utils-1.2.1-r3
@@ -0,0 +1,14 @@
+BDEPEND=virtual/pkgconfig virtual/pkgconfig virtual/pkgconfig
+DEFINED_PHASES=configure install
+DEPEND=>=media-libs/alsa-lib-1.2.1 libsamplerate? ( media-libs/libsamplerate ) ncurses? ( >=sys-libs/ncurses-5.7-r7:0= ) bat? ( sci-libs/fftw:= ) doc? ( app-text/xmlto )
+DESCRIPTION=Advanced Linux Sound Architecture Utils (alsactl, alsamixer, etc.)
+EAPI=7
+HOMEPAGE=https://alsa-project.org/
+IUSE=bat doc +libsamplerate +ncurses nls selinux
+KEYWORDS=*
+LICENSE=GPL-2
+RDEPEND=>=media-libs/alsa-lib-1.2.1 libsamplerate? ( media-libs/libsamplerate ) ncurses? ( >=sys-libs/ncurses-5.7-r7:0= ) bat? ( sci-libs/fftw:= ) selinux? ( sec-policy/selinux-alsa )
+SLOT=0.9
+SRC_URI=https://www.alsa-project.org/files/pub/utils/alsa-utils-1.2.1.tar.bz2
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
+_md5_=45b193bc942dcffd6edb335abdfc5d35
diff --git a/metadata/md5-cache/media-sound/audio_streams-0.1.0-r28 b/metadata/md5-cache/media-sound/audio_streams-0.1.0-r28
deleted file mode 100644
index e132c9e..0000000
--- a/metadata/md5-cache/media-sound/audio_streams-0.1.0-r28
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/sync:= dev-rust/sys_util:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Crate provides a basic interface for playing audio.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/audio_streams
-IUSE=test cros_host cros_workon_tree_e5a0ad587f560a2b9eb5321c3eaff76ed3cf5626 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-rust/sync:= dev-rust/sys_util:= !<=media-sound/audio_streams-0.1.0-r7
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r28
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=08dcb51166d5e93fe9c312a157f1c218
diff --git a/metadata/md5-cache/media-sound/audio_streams-0.1.0-r36 b/metadata/md5-cache/media-sound/audio_streams-0.1.0-r36
new file mode 100644
index 0000000..ab379d9
--- /dev/null
+++ b/metadata/md5-cache/media-sound/audio_streams-0.1.0-r36
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/cros_async:= =dev-rust/remain-0.2*:= dev-rust/sync:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:=
+DESCRIPTION=Crate provides a basic interface for playing audio.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/audio_streams
+IUSE=test cros_host cros_workon_tree_ba168cd4a4877aafcfca4aa5f9e548d6416ac96e cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=>=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/cros_async:= =dev-rust/remain-0.2*:= dev-rust/sync:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 !<=media-sound/audio_streams-0.1.0-r7
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r36
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7619806ebd42a66a2029ef5e6708548f
diff --git a/metadata/md5-cache/media-sound/audio_streams-9999 b/metadata/md5-cache/media-sound/audio_streams-9999
index 475bcc0..b370bfc 100644
--- a/metadata/md5-cache/media-sound/audio_streams-9999
+++ b/metadata/md5-cache/media-sound/audio_streams-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/sync:= dev-rust/sys_util:= >=virtual/rust-1.39.0:=
+DEPEND=>=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/cros_async:= =dev-rust/remain-0.2*:= dev-rust/sync:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 >=virtual/rust-1.39.0:=
 DESCRIPTION=Crate provides a basic interface for playing audio.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/audio_streams
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=dev-rust/sync:= dev-rust/sys_util:= !<=media-sound/audio_streams-0.1.0-r7
+RDEPEND=>=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/cros_async:= =dev-rust/remain-0.2*:= dev-rust/sync:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 !<=media-sound/audio_streams-0.1.0-r7
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=59cef9e41180b71d364ae892505e2137
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fd3e5930914080d7a731286da79a78df
diff --git a/metadata/md5-cache/media-sound/cras-sys-0.1.0-r48 b/metadata/md5-cache/media-sound/cras-sys-0.1.0-r48
deleted file mode 100644
index 7602198..0000000
--- a/metadata/md5-cache/media-sound/cras-sys-0.1.0-r48
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/data_model:= media-sound/audio_streams:= virtual/bindgen:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Crate for CRAS C-structures generated by bindgen
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/cras-sys
-IUSE=test cros_host cros_workon_tree_6c8939340ea089d520f7153d66be9e8690b5d594_269d67a227b2d3fedb9eaef0322bd0c6f986b9da cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-rust/data_model:= media-sound/audio_streams:= virtual/bindgen:= !<=media-sound/cras-sys-0.1.0-r10
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r48
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2d8d640f82ad781f7ca4895b84caa70b
diff --git a/metadata/md5-cache/media-sound/cras-sys-0.1.0-r57 b/metadata/md5-cache/media-sound/cras-sys-0.1.0-r57
new file mode 100644
index 0000000..d591b37
--- /dev/null
+++ b/metadata/md5-cache/media-sound/cras-sys-0.1.0-r57
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=dev-rust/data_model:= media-sound/audio_streams:= virtual/bindgen:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Crate for CRAS C-structures generated by bindgen
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/cras-sys
+IUSE=test cros_host cros_workon_tree_b289b15e5b44db36f7f2721430997b8f55122071_263fbad86e105cd9743a800885889067a4fa8d5c cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-rust/data_model:= media-sound/audio_streams:= virtual/bindgen:= !<=media-sound/cras-sys-0.1.0-r10
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r57
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0f6071bf79b307ba81b94ca7895f350c
diff --git a/metadata/md5-cache/media-sound/cras-sys-9999 b/metadata/md5-cache/media-sound/cras-sys-9999
index b2bf198..8d629a4 100644
--- a/metadata/md5-cache/media-sound/cras-sys-9999
+++ b/metadata/md5-cache/media-sound/cras-sys-9999
@@ -11,5 +11,5 @@
 RDEPEND=dev-rust/data_model:= media-sound/audio_streams:= virtual/bindgen:= !<=media-sound/cras-sys-0.1.0-r10
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=6b4d135f3a00904651b6018d633841b2
diff --git a/metadata/md5-cache/media-sound/cras_bench-0.0.1-r3 b/metadata/md5-cache/media-sound/cras_bench-0.0.1-r3
deleted file mode 100644
index e7027b3..0000000
--- a/metadata/md5-cache/media-sound/cras_bench-0.0.1-r3
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git >=dev-util/bazel-0.20
-DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=media-libs/alsa-lib
-DESCRIPTION=Performance benchmarks for ChromeOS audio server
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/
-IUSE=cros_host cros_workon_tree_e62b24ca0c95c5db285704697a8d941cbdbb742c
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=media-libs/alsa-lib
-SLOT=0/0.0.1-r3
-SRC_URI=https://github.com/bazelbuild/rules_cc/archive/01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip -> bazelbuild-rules_cc-01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip https://github.com/google/benchmark/archive/refs/tags/v1.5.5.tar.gz -> google-benchmark-1.5.5.tar.gz
-_eclasses_=bazel	754d004c54b3ac8a286975d232cbab17	cros-bazel	f8f1ddf279e2cce6ed2320142f477dbf	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=458c85e3e2d57d7437f38a0605b91fa6
diff --git a/metadata/md5-cache/media-sound/cras_bench-0.0.1-r86 b/metadata/md5-cache/media-sound/cras_bench-0.0.1-r86
new file mode 100644
index 0000000..108a8e1
--- /dev/null
+++ b/metadata/md5-cache/media-sound/cras_bench-0.0.1-r86
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git >=dev-util/bazel-0.20
+DEFINED_PHASES=compile configure info install prepare setup unpack
+DEPEND=media-libs/alsa-lib cras-apm? ( media-libs/webrtc-apm:= )
+DESCRIPTION=Performance benchmarks for ChromeOS audio server
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/
+IUSE=+cras-apm cros_host cros_workon_tree_f415ee0442ea42533f2915076efce40c27901850
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=media-libs/alsa-lib cras-apm? ( media-libs/webrtc-apm:= )
+SLOT=0/0.0.1-r86
+SRC_URI=https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz -> bazel-skylib-1.0.3.tar.gz https://github.com/bazelbuild/rules_cc/archive/01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip -> bazelbuild-rules_cc-01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip https://github.com/google/benchmark/archive/refs/tags/v1.5.5.tar.gz -> google-benchmark-1.5.5.tar.gz
+_eclasses_=bazel	754d004c54b3ac8a286975d232cbab17	cros-bazel	f8f1ddf279e2cce6ed2320142f477dbf	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3994479ffd4a7560e7d0df4ad125877f
diff --git a/metadata/md5-cache/media-sound/cras_bench-9999 b/metadata/md5-cache/media-sound/cras_bench-9999
index 234f4b8..18e0fec 100644
--- a/metadata/md5-cache/media-sound/cras_bench-9999
+++ b/metadata/md5-cache/media-sound/cras_bench-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git >=dev-util/bazel-0.20
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=media-libs/alsa-lib
+DEPEND=media-libs/alsa-lib cras-apm? ( media-libs/webrtc-apm:= )
 DESCRIPTION=Performance benchmarks for ChromeOS audio server
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/
-IUSE=cros_host cros_workon_tree_
+IUSE=+cras-apm cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=media-libs/alsa-lib
+RDEPEND=media-libs/alsa-lib cras-apm? ( media-libs/webrtc-apm:= )
 SLOT=0/9999
-SRC_URI=https://github.com/bazelbuild/rules_cc/archive/01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip -> bazelbuild-rules_cc-01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip https://github.com/google/benchmark/archive/refs/tags/v1.5.5.tar.gz -> google-benchmark-1.5.5.tar.gz
-_eclasses_=bazel	754d004c54b3ac8a286975d232cbab17	cros-bazel	f8f1ddf279e2cce6ed2320142f477dbf	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4a6d3e9c8fc59ef1a5202b5bf7abb9a0
+SRC_URI=https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz -> bazel-skylib-1.0.3.tar.gz https://github.com/bazelbuild/rules_cc/archive/01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip -> bazelbuild-rules_cc-01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip https://github.com/google/benchmark/archive/refs/tags/v1.5.5.tar.gz -> google-benchmark-1.5.5.tar.gz
+_eclasses_=bazel	754d004c54b3ac8a286975d232cbab17	cros-bazel	f8f1ddf279e2cce6ed2320142f477dbf	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8a8ee188b66a80ccbaabbb22eed9a324
diff --git a/metadata/md5-cache/media-sound/cras_rust-0.1.0-r6 b/metadata/md5-cache/media-sound/cras_rust-0.1.0-r6
deleted file mode 100644
index 8678e66..0000000
--- a/metadata/md5-cache/media-sound/cras_rust-0.1.0-r6
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/libc:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Rust code which is used within cras
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/src/server/rust
-IUSE=test cros_host cros_workon_tree_56f51edbec0ccbbca4e4cdd4694e849e4ae48f42 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=dev-rust/libc:=
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r6
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=024e8a45ef3432334ef0115087632eac
diff --git a/metadata/md5-cache/media-sound/cras_rust-0.1.0-r7 b/metadata/md5-cache/media-sound/cras_rust-0.1.0-r7
new file mode 100644
index 0000000..421265f
--- /dev/null
+++ b/metadata/md5-cache/media-sound/cras_rust-0.1.0-r7
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=dev-rust/libc:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Rust code which is used within cras
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/src/server/rust
+IUSE=test cros_host cros_workon_tree_59ac7e6fe81d2514470c8a5e255c595a87f707e2 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=dev-rust/libc:=
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r7
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7a7e357bbe0db0d32293685995e647b6
diff --git a/metadata/md5-cache/media-sound/cras_rust-9999 b/metadata/md5-cache/media-sound/cras_rust-9999
index 2b04f3f..2d17c09 100644
--- a/metadata/md5-cache/media-sound/cras_rust-9999
+++ b/metadata/md5-cache/media-sound/cras_rust-9999
@@ -11,5 +11,5 @@
 RDEPEND=dev-rust/libc:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=61e3a1fa4570836fd8e57269463a9ea2
diff --git a/metadata/md5-cache/media-sound/cras_tests-0.1.0-r38 b/metadata/md5-cache/media-sound/cras_tests-0.1.0-r38
deleted file mode 100644
index 6a65fc1..0000000
--- a/metadata/md5-cache/media-sound/cras_tests-0.1.0-r38
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= >=dev-rust/getopts-0.2.18:= <dev-rust/getopts-0.3 dev-rust/hound:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 media-sound/audio_streams:= media-sound/libcras:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Rust version cras test client
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/cras_tests
-IUSE=test cros_host cros_workon_tree_494f6b2f84535576baf70eb7303bb7a60f8f94da_4df4730b8dde3019b84b90e0b6785d53ae1480c8 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=!<=media-sound/cras_tests-0.1.0-r12
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r38
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8392f32edd6bc85d1b61c3c1dc4fa13c
diff --git a/metadata/md5-cache/media-sound/cras_tests-0.1.0-r43 b/metadata/md5-cache/media-sound/cras_tests-0.1.0-r43
new file mode 100644
index 0000000..2da9c74
--- /dev/null
+++ b/metadata/md5-cache/media-sound/cras_tests-0.1.0-r43
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.9*:= >=dev-rust/getopts-0.2.18:= <dev-rust/getopts-0.3 dev-rust/hound:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 media-sound/audio_streams:= media-sound/libcras:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Rust version cras test client
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/cras_tests
+IUSE=test cros_host cros_workon_tree_8ef7917c4c480d70df1d6da4e2652a0bfe321d16_92ccb6beb362add53c23dfbaa25c2ef099d732c7 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=!<=media-sound/cras_tests-0.1.0-r12
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r43
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a9b69bed57a0f4c54ba7c6dce2adf2dd
diff --git a/metadata/md5-cache/media-sound/cras_tests-9999 b/metadata/md5-cache/media-sound/cras_tests-9999
index bf6802b..8162ba5 100644
--- a/metadata/md5-cache/media-sound/cras_tests-9999
+++ b/metadata/md5-cache/media-sound/cras_tests-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.8*:= >=dev-rust/getopts-0.2.18:= <dev-rust/getopts-0.3 dev-rust/hound:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 media-sound/audio_streams:= media-sound/libcras:= >=virtual/rust-1.39.0:=
+DEPEND=dev-rust/chromeos-dbus-bindings:= =dev-rust/dbus-0.9*:= >=dev-rust/getopts-0.2.18:= <dev-rust/getopts-0.3 dev-rust/hound:= dev-rust/sys_util:= >=dev-rust/thiserror-1.0.20:= <dev-rust/thiserror-2.0 media-sound/audio_streams:= media-sound/libcras:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Rust version cras test client
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/cras_tests
@@ -11,5 +11,5 @@
 RDEPEND=!<=media-sound/cras_tests-0.1.0-r12
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7364cccfb44136a299cb40a18de5a8ba
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=248319d1c9df79a0165f6efd72214c86
diff --git a/metadata/md5-cache/media-sound/cros_alsa-0.1.0-r5 b/metadata/md5-cache/media-sound/cros_alsa-0.1.0-r5
index c0033aa..780e0c8 100644
--- a/metadata/md5-cache/media-sound/cros_alsa-0.1.0-r5
+++ b/metadata/md5-cache/media-sound/cros_alsa-0.1.0-r5
@@ -11,5 +11,5 @@
 RDEPEND=>=dev-rust/alsa-sys-0.2.0:= <dev-rust/alsa-sys-0.3.0 >=dev-rust/libc-0.2.65:= <dev-rust/libc-0.3 =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= dev-rust/remain:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/0.1.0-r5
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=07717dde82b5d143c2e921fa139ccb1d
diff --git a/metadata/md5-cache/media-sound/cros_alsa-9999 b/metadata/md5-cache/media-sound/cros_alsa-9999
index da4e4d8..cc9e3d7 100644
--- a/metadata/md5-cache/media-sound/cros_alsa-9999
+++ b/metadata/md5-cache/media-sound/cros_alsa-9999
@@ -11,5 +11,5 @@
 RDEPEND=>=dev-rust/alsa-sys-0.2.0:= <dev-rust/alsa-sys-0.3.0 >=dev-rust/libc-0.2.65:= <dev-rust/libc-0.3 =dev-rust/proc-macro2-1*:= =dev-rust/quote-1*:= =dev-rust/syn-1*:= dev-rust/remain:=
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=55c16c409ed023fa9075850e7fd7a1d2
diff --git a/metadata/md5-cache/media-sound/libcras-0.1.0-r56 b/metadata/md5-cache/media-sound/libcras-0.1.0-r56
deleted file mode 100644
index 4be935f..0000000
--- a/metadata/md5-cache/media-sound/libcras-0.1.0-r56
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/libc-0.2.44:= dev-rust/data_model:= dev-rust/sys_util:= media-sound/audio_streams:= media-sound/cras-sys:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Rust version libcras
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/libcras
-IUSE=test cros_host cros_workon_tree_ec4dd0d4955052d5311671f6724e123d6753116c cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=>=dev-rust/libc-0.2.44:= dev-rust/data_model:= dev-rust/sys_util:= media-sound/audio_streams:= media-sound/cras-sys:= !<=media-sound/libcras-0.1.0-r21
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r56
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3f57031a94f2443bad367d1de85b4029
diff --git a/metadata/md5-cache/media-sound/libcras-0.1.0-r64 b/metadata/md5-cache/media-sound/libcras-0.1.0-r64
new file mode 100644
index 0000000..8b4a89e
--- /dev/null
+++ b/metadata/md5-cache/media-sound/libcras-0.1.0-r64
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=>=dev-rust/libc-0.2.44:= >=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/cros_async:= dev-rust/data_model:= dev-rust/sys_util:= media-sound/audio_streams:= media-sound/cras-sys:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Rust version libcras
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/libcras
+IUSE=test cros_host cros_workon_tree_ebc5730c39c1062b2b96871d97e2cee677de683d cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=>=dev-rust/libc-0.2.44:= >=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/cros_async:= dev-rust/data_model:= dev-rust/sys_util:= media-sound/audio_streams:= media-sound/cras-sys:= !<=media-sound/libcras-0.1.0-r21
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r64
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c6cb90bd2ad62895cfd0855a344e8f65
diff --git a/metadata/md5-cache/media-sound/libcras-9999 b/metadata/md5-cache/media-sound/libcras-9999
index 47a1cc4..964e9ca 100644
--- a/metadata/md5-cache/media-sound/libcras-9999
+++ b/metadata/md5-cache/media-sound/libcras-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/libc-0.2.44:= dev-rust/data_model:= dev-rust/sys_util:= media-sound/audio_streams:= media-sound/cras-sys:= >=virtual/rust-1.39.0:=
+DEPEND=>=dev-rust/libc-0.2.44:= >=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/cros_async:= dev-rust/data_model:= dev-rust/sys_util:= media-sound/audio_streams:= media-sound/cras-sys:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Rust version libcras
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/cras/client/libcras
@@ -8,8 +8,8 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
-RDEPEND=>=dev-rust/libc-0.2.44:= dev-rust/data_model:= dev-rust/sys_util:= media-sound/audio_streams:= media-sound/cras-sys:= !<=media-sound/libcras-0.1.0-r21
+RDEPEND=>=dev-rust/libc-0.2.44:= >=dev-rust/async-trait-0.1.36:= <dev-rust/async-trait-0.2 dev-rust/cros_async:= dev-rust/data_model:= dev-rust/sys_util:= media-sound/audio_streams:= media-sound/cras-sys:= !<=media-sound/libcras-0.1.0-r21
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=99c1ce46799dfbbdc43c55475caa6a0e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e7650258bd51909302ff4dbf2dcb5b5c
diff --git a/metadata/md5-cache/media-sound/sof_sys-0.1.0-r2 b/metadata/md5-cache/media-sound/sof_sys-0.1.0-r2
index 2a4467c..0429950 100644
--- a/metadata/md5-cache/media-sound/sof_sys-0.1.0-r2
+++ b/metadata/md5-cache/media-sound/sof_sys-0.1.0-r2
@@ -10,5 +10,5 @@
 PROPERTIES=live
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/0.1.0-r2
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d87cc372fe9b1ada64ff5c711cdf96ef
diff --git a/metadata/md5-cache/media-sound/sof_sys-9999 b/metadata/md5-cache/media-sound/sof_sys-9999
index 3cec61e..7a88ca5 100644
--- a/metadata/md5-cache/media-sound/sof_sys-9999
+++ b/metadata/md5-cache/media-sound/sof_sys-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=856a9c060f6cdce2d7519d72f19d7ed2
diff --git a/metadata/md5-cache/media-sound/sound_card_init-0.1.0-r17 b/metadata/md5-cache/media-sound/sound_card_init-0.1.0-r17
deleted file mode 100644
index d9a4263..0000000
--- a/metadata/md5-cache/media-sound/sound_card_init-0.1.0-r17
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=dev-rust/cc:= dev-rust/getopts:= dev-rust/sys_util:= dev-rust/serde_yaml:= dev-rust/remain:= media-sound/audio_streams:= media-sound/cros_alsa:= media-sound/libcras:= media-sound/sof_sys:= >=virtual/rust-1.39.0:= sys-apps/baselayout
-DESCRIPTION=Sound Card Initializer
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/sound_card_init
-IUSE=cros_host cros_workon_tree_bbabf117ce1fac3718c2d641b9e289fddde8cbae cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=-* amd64
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=sys-apps/baselayout
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/0.1.0-r17
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=ca65a7c1c447948af4e79556899de55d
diff --git a/metadata/md5-cache/media-sound/sound_card_init-0.1.0-r28 b/metadata/md5-cache/media-sound/sound_card_init-0.1.0-r28
new file mode 100644
index 0000000..0c9154d
--- /dev/null
+++ b/metadata/md5-cache/media-sound/sound_card_init-0.1.0-r28
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=dev-rust/cc:= dev-rust/getopts:= dev-rust/sys_util:= dev-rust/serde_yaml:= dev-rust/remain:= media-sound/audio_streams:= media-sound/cros_alsa:= media-sound/libcras:= media-sound/sof_sys:= >=virtual/rust-1.39.0:= sys-apps/baselayout
+DESCRIPTION=Sound Card Initializer
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/sound_card_init
+IUSE=cros_host cros_workon_tree_6d28ecc8b67303d3affc323dbd0fa214f6bf2f21 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=-* amd64 arm
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=sys-apps/baselayout
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.1.0-r28
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=5335ab7f2bba99c1f499b303b235c98e
diff --git a/metadata/md5-cache/media-sound/sound_card_init-9999 b/metadata/md5-cache/media-sound/sound_card_init-9999
index cb78dd3..5e2e2e8 100644
--- a/metadata/md5-cache/media-sound/sound_card_init-9999
+++ b/metadata/md5-cache/media-sound/sound_card_init-9999
@@ -5,11 +5,11 @@
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/adhd/+/HEAD/sound_card_init
 IUSE=cros_host cros_workon_tree_ cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=-* ~amd64
+KEYWORDS=-* ~amd64 ~arm
 LICENSE=BSD-Google
 PROPERTIES=live
 RDEPEND=sys-apps/baselayout
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=08624b2414645366ed604b5ee4368377
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=2b02489441164414c1c02bbc13242524
diff --git a/metadata/md5-cache/media-tv/v4l-utils-1.20.0 b/metadata/md5-cache/media-tv/v4l-utils-1.20.0
index f6eccbe..7c0a8ab 100644
--- a/metadata/md5-cache/media-tv/v4l-utils-1.20.0
+++ b/metadata/md5-cache/media-tv/v4l-utils-1.20.0
@@ -9,5 +9,5 @@
 RDEPEND=>=media-libs/libv4l-1.20.0 qt4? ( dev-qt/qtgui:4 dev-qt/qtopengl:4 virtual/opengl media-libs/alsa-lib ) udev? ( virtual/libudev ) !media-tv/v4l2-ctl !<media-tv/ivtv-utils-1.4.0-r2
 SLOT=0
 SRC_URI=http://linuxtv.org/downloads/v4l-utils/v4l-utils-1.20.0.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a80b3a93e2ad34460f7bff61373a4afb
diff --git a/metadata/md5-cache/media-tv/v4l-utils-1.20.0-r1 b/metadata/md5-cache/media-tv/v4l-utils-1.20.0-r1
index f6eccbe..7c0a8ab 100644
--- a/metadata/md5-cache/media-tv/v4l-utils-1.20.0-r1
+++ b/metadata/md5-cache/media-tv/v4l-utils-1.20.0-r1
@@ -9,5 +9,5 @@
 RDEPEND=>=media-libs/libv4l-1.20.0 qt4? ( dev-qt/qtgui:4 dev-qt/qtopengl:4 virtual/opengl media-libs/alsa-lib ) udev? ( virtual/libudev ) !media-tv/v4l2-ctl !<media-tv/ivtv-utils-1.4.0-r2
 SLOT=0
 SRC_URI=http://linuxtv.org/downloads/v4l-utils/v4l-utils-1.20.0.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=a80b3a93e2ad34460f7bff61373a4afb
diff --git a/metadata/md5-cache/media-video/libva-utils-2.11.1 b/metadata/md5-cache/media-video/libva-utils-2.11.1
deleted file mode 100644
index 468ff01..0000000
--- a/metadata/md5-cache/media-video/libva-utils-2.11.1
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815
-DEFINED_PHASES=configure prepare
-DEPEND=>=x11-libs/libva-2.0.0:= >=x11-libs/libdrm-2.4 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Collection of utilities and tests for VA-API
-EAPI=7
-HOMEPAGE=https://01.org/linuxmedia/vaapi
-IUSE=test
-KEYWORDS=*
-LICENSE=MIT
-RDEPEND=>=x11-libs/libva-2.0.0:= >=x11-libs/libdrm-2.4
-RESTRICT=!test? ( test )
-SLOT=0
-SRC_URI=https://github.com/intel/libva-utils/archive/2.11.1.tar.gz -> libva-utils-2.11.1.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ee72d9061fcde49a7ea5ff70f2dbd20e
diff --git a/metadata/md5-cache/media-video/libva-utils-2.11.1-r1 b/metadata/md5-cache/media-video/libva-utils-2.11.1-r1
deleted file mode 100644
index 468ff01..0000000
--- a/metadata/md5-cache/media-video/libva-utils-2.11.1-r1
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815
-DEFINED_PHASES=configure prepare
-DEPEND=>=x11-libs/libva-2.0.0:= >=x11-libs/libdrm-2.4 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Collection of utilities and tests for VA-API
-EAPI=7
-HOMEPAGE=https://01.org/linuxmedia/vaapi
-IUSE=test
-KEYWORDS=*
-LICENSE=MIT
-RDEPEND=>=x11-libs/libva-2.0.0:= >=x11-libs/libdrm-2.4
-RESTRICT=!test? ( test )
-SLOT=0
-SRC_URI=https://github.com/intel/libva-utils/archive/2.11.1.tar.gz -> libva-utils-2.11.1.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ee72d9061fcde49a7ea5ff70f2dbd20e
diff --git a/metadata/md5-cache/media-video/libva-utils-2.12.0 b/metadata/md5-cache/media-video/libva-utils-2.12.0
new file mode 100644
index 0000000..12d3209
--- /dev/null
+++ b/metadata/md5-cache/media-video/libva-utils-2.12.0
@@ -0,0 +1,15 @@
+BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815
+DEFINED_PHASES=configure prepare
+DEPEND=>=x11-libs/libva-2.0.0:= >=x11-libs/libdrm-2.4 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=Collection of utilities and tests for VA-API
+EAPI=7
+HOMEPAGE=https://01.org/linuxmedia/vaapi
+IUSE=test
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=>=x11-libs/libva-2.0.0:= >=x11-libs/libdrm-2.4
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/intel/libva-utils/archive/2.12.0.tar.gz -> libva-utils-2.12.0.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ee72d9061fcde49a7ea5ff70f2dbd20e
diff --git a/metadata/md5-cache/media-video/libva-utils-2.12.0-r1 b/metadata/md5-cache/media-video/libva-utils-2.12.0-r1
new file mode 100644
index 0000000..12d3209
--- /dev/null
+++ b/metadata/md5-cache/media-video/libva-utils-2.12.0-r1
@@ -0,0 +1,15 @@
+BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815
+DEFINED_PHASES=configure prepare
+DEPEND=>=x11-libs/libva-2.0.0:= >=x11-libs/libdrm-2.4 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=Collection of utilities and tests for VA-API
+EAPI=7
+HOMEPAGE=https://01.org/linuxmedia/vaapi
+IUSE=test
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=>=x11-libs/libva-2.0.0:= >=x11-libs/libdrm-2.4
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/intel/libva-utils/archive/2.12.0.tar.gz -> libva-utils-2.12.0.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ee72d9061fcde49a7ea5ff70f2dbd20e
diff --git a/metadata/md5-cache/media-video/yavta-0.0.1-r3 b/metadata/md5-cache/media-video/yavta-0.0.1-r3
index 302e896..df8cc14 100644
--- a/metadata/md5-cache/media-video/yavta-0.0.1-r3
+++ b/metadata/md5-cache/media-video/yavta-0.0.1-r3
@@ -6,5 +6,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=http://storage.googleapis.com/chromeos-localmirror/distfiles/yavta-20181204.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=5f412fc7ad68b9169f2a9eb907f4bf1b
diff --git a/metadata/md5-cache/net-analyzer/nmap-7.70 b/metadata/md5-cache/net-analyzer/nmap-7.70
index cdaf6fc..7add940 100644
--- a/metadata/md5-cache/net-analyzer/nmap-7.70
+++ b/metadata/md5-cache/net-analyzer/nmap-7.70
@@ -10,5 +10,5 @@
 REQUIRED_USE=system-lua? ( nse ) ndiff? ( ^^ ( python_single_target_python2_7 ) ) zenmap? ( ^^ ( python_single_target_python2_7 ) )
 SLOT=0
 SRC_URI=https://nmap.org/dist/nmap-7.70.tar.bz2 https://dev.gentoo.org/~jer/nmap-logo-64.png
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=48405f487e1ef337e53774b5fdf9c530
diff --git a/metadata/md5-cache/net-analyzer/nmap-7.70-r3 b/metadata/md5-cache/net-analyzer/nmap-7.70-r3
index cdaf6fc..7add940 100644
--- a/metadata/md5-cache/net-analyzer/nmap-7.70-r3
+++ b/metadata/md5-cache/net-analyzer/nmap-7.70-r3
@@ -10,5 +10,5 @@
 REQUIRED_USE=system-lua? ( nse ) ndiff? ( ^^ ( python_single_target_python2_7 ) ) zenmap? ( ^^ ( python_single_target_python2_7 ) )
 SLOT=0
 SRC_URI=https://nmap.org/dist/nmap-7.70.tar.bz2 https://dev.gentoo.org/~jer/nmap-logo-64.png
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=48405f487e1ef337e53774b5fdf9c530
diff --git a/metadata/md5-cache/net-analyzer/suricata-2.0.10 b/metadata/md5-cache/net-analyzer/suricata-2.0.10
index 51eaeee..c52d8ba 100644
--- a/metadata/md5-cache/net-analyzer/suricata-2.0.10
+++ b/metadata/md5-cache/net-analyzer/suricata-2.0.10
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-libs/jansson-2.2 dev-libs/libpcre dev-libs/libyaml net-libs/libnet:* net-libs/libnfnetlink dev-libs/nspr dev-libs/nss net-libs/libpcap sys-apps/file cuda? ( dev-util/nvidia-cuda-toolkit ) geoip? ( dev-libs/geoip ) lua? ( dev-lang/lua:* ) luajit? ( dev-lang/luajit:* ) nflog? ( net-libs/libnetfilter_log ) nfqueue? ( net-libs/libnetfilter_queue ) sys-apps/baselayout
 SLOT=0
 SRC_URI=http://www.openinfosecfoundation.org/download/suricata-2.0.10.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c49fe2dba553566975ba99c16a13fe30
diff --git a/metadata/md5-cache/net-analyzer/suricata-2.0.10-r3 b/metadata/md5-cache/net-analyzer/suricata-2.0.10-r3
index 51eaeee..c52d8ba 100644
--- a/metadata/md5-cache/net-analyzer/suricata-2.0.10-r3
+++ b/metadata/md5-cache/net-analyzer/suricata-2.0.10-r3
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-libs/jansson-2.2 dev-libs/libpcre dev-libs/libyaml net-libs/libnet:* net-libs/libnfnetlink dev-libs/nspr dev-libs/nss net-libs/libpcap sys-apps/file cuda? ( dev-util/nvidia-cuda-toolkit ) geoip? ( dev-libs/geoip ) lua? ( dev-lang/lua:* ) luajit? ( dev-lang/luajit:* ) nflog? ( net-libs/libnetfilter_log ) nfqueue? ( net-libs/libnetfilter_queue ) sys-apps/baselayout
 SLOT=0
 SRC_URI=http://www.openinfosecfoundation.org/download/suricata-2.0.10.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c49fe2dba553566975ba99c16a13fe30
diff --git a/metadata/md5-cache/net-analyzer/wireshark-1.10.5 b/metadata/md5-cache/net-analyzer/wireshark-1.10.5
deleted file mode 100644
index 657fe94..0000000
--- a/metadata/md5-cache/net-analyzer/wireshark-1.10.5
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install prepare
-DEPEND=>=dev-libs/glib-2.14:2 netlink? ( dev-libs/libnl ) adns? ( !libadns? ( >=net-dns/c-ares-1.5 ) ) crypt? ( dev-libs/libgcrypt:0= ) caps? ( sys-libs/libcap ) geoip? ( dev-libs/geoip ) gtk2? ( x11-libs/gdk-pixbuf x11-libs/pango x11-misc/xdg-utils >=x11-libs/gtk+-2.4.0:2 ) gtk3? ( x11-libs/gdk-pixbuf x11-libs/pango x11-misc/xdg-utils x11-libs/gtk+:3 ) kerberos? ( virtual/krb5 ) libadns? ( net-libs/adns ) lua? ( >=dev-lang/lua-5.1 ) pcap? ( net-libs/libpcap[-netlink] ) portaudio? ( media-libs/portaudio ) qt4? ( dev-qt/qtcore:4 dev-qt/qtgui:4 x11-misc/xdg-utils ) selinux? ( sec-policy/selinux-wireshark ) smi? ( net-libs/libsmi ) ssl? ( net-libs/gnutls:= ) zlib? ( sys-libs/zlib !=sys-libs/zlib-1.2.4 ) doc? ( app-doc/doxygen app-text/asciidoc dev-libs/libxml2 dev-libs/libxslt doc-pdf? ( dev-java/fop ) www-client/lynx ) sys-devel/bison sys-devel/flex virtual/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
-DESCRIPTION=A network protocol analyzer formerly known as ethereal
-EAPI=5
-HOMEPAGE=http://www.wireshark.org/
-IUSE=adns +caps crypt doc doc-pdf geoip +gtk2 gtk3 ipv6 kerberos libadns lua +netlink +pcap portaudio qt4 selinux smi ssl zlib
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=>=dev-libs/glib-2.14:2 netlink? ( dev-libs/libnl ) adns? ( !libadns? ( >=net-dns/c-ares-1.5 ) ) crypt? ( dev-libs/libgcrypt:0= ) caps? ( sys-libs/libcap ) geoip? ( dev-libs/geoip ) gtk2? ( x11-libs/gdk-pixbuf x11-libs/pango x11-misc/xdg-utils >=x11-libs/gtk+-2.4.0:2 ) gtk3? ( x11-libs/gdk-pixbuf x11-libs/pango x11-misc/xdg-utils x11-libs/gtk+:3 ) kerberos? ( virtual/krb5 ) libadns? ( net-libs/adns ) lua? ( >=dev-lang/lua-5.1 ) pcap? ( net-libs/libpcap[-netlink] ) portaudio? ( media-libs/portaudio ) qt4? ( dev-qt/qtcore:4 dev-qt/qtgui:4 x11-misc/xdg-utils ) selinux? ( sec-policy/selinux-wireshark ) smi? ( net-libs/libsmi ) ssl? ( net-libs/gnutls:= ) zlib? ( sys-libs/zlib !=sys-libs/zlib-1.2.4 ) sys-apps/baselayout
-REQUIRED_USE=?? ( gtk2 gtk3 qt4 ) ssl? ( crypt )
-SLOT=0/1.10.5
-SRC_URI=http://www.wireshark.org/download/src/all-versions/wireshark-1.10.5.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=25c92c79aac747634add3f65aef3b225
diff --git a/metadata/md5-cache/net-analyzer/wireshark-1.10.5-r7 b/metadata/md5-cache/net-analyzer/wireshark-1.10.5-r7
deleted file mode 100644
index 657fe94..0000000
--- a/metadata/md5-cache/net-analyzer/wireshark-1.10.5-r7
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install prepare
-DEPEND=>=dev-libs/glib-2.14:2 netlink? ( dev-libs/libnl ) adns? ( !libadns? ( >=net-dns/c-ares-1.5 ) ) crypt? ( dev-libs/libgcrypt:0= ) caps? ( sys-libs/libcap ) geoip? ( dev-libs/geoip ) gtk2? ( x11-libs/gdk-pixbuf x11-libs/pango x11-misc/xdg-utils >=x11-libs/gtk+-2.4.0:2 ) gtk3? ( x11-libs/gdk-pixbuf x11-libs/pango x11-misc/xdg-utils x11-libs/gtk+:3 ) kerberos? ( virtual/krb5 ) libadns? ( net-libs/adns ) lua? ( >=dev-lang/lua-5.1 ) pcap? ( net-libs/libpcap[-netlink] ) portaudio? ( media-libs/portaudio ) qt4? ( dev-qt/qtcore:4 dev-qt/qtgui:4 x11-misc/xdg-utils ) selinux? ( sec-policy/selinux-wireshark ) smi? ( net-libs/libsmi ) ssl? ( net-libs/gnutls:= ) zlib? ( sys-libs/zlib !=sys-libs/zlib-1.2.4 ) doc? ( app-doc/doxygen app-text/asciidoc dev-libs/libxml2 dev-libs/libxslt doc-pdf? ( dev-java/fop ) www-client/lynx ) sys-devel/bison sys-devel/flex virtual/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
-DESCRIPTION=A network protocol analyzer formerly known as ethereal
-EAPI=5
-HOMEPAGE=http://www.wireshark.org/
-IUSE=adns +caps crypt doc doc-pdf geoip +gtk2 gtk3 ipv6 kerberos libadns lua +netlink +pcap portaudio qt4 selinux smi ssl zlib
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=>=dev-libs/glib-2.14:2 netlink? ( dev-libs/libnl ) adns? ( !libadns? ( >=net-dns/c-ares-1.5 ) ) crypt? ( dev-libs/libgcrypt:0= ) caps? ( sys-libs/libcap ) geoip? ( dev-libs/geoip ) gtk2? ( x11-libs/gdk-pixbuf x11-libs/pango x11-misc/xdg-utils >=x11-libs/gtk+-2.4.0:2 ) gtk3? ( x11-libs/gdk-pixbuf x11-libs/pango x11-misc/xdg-utils x11-libs/gtk+:3 ) kerberos? ( virtual/krb5 ) libadns? ( net-libs/adns ) lua? ( >=dev-lang/lua-5.1 ) pcap? ( net-libs/libpcap[-netlink] ) portaudio? ( media-libs/portaudio ) qt4? ( dev-qt/qtcore:4 dev-qt/qtgui:4 x11-misc/xdg-utils ) selinux? ( sec-policy/selinux-wireshark ) smi? ( net-libs/libsmi ) ssl? ( net-libs/gnutls:= ) zlib? ( sys-libs/zlib !=sys-libs/zlib-1.2.4 ) sys-apps/baselayout
-REQUIRED_USE=?? ( gtk2 gtk3 qt4 ) ssl? ( crypt )
-SLOT=0/1.10.5
-SRC_URI=http://www.wireshark.org/download/src/all-versions/wireshark-1.10.5.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=25c92c79aac747634add3f65aef3b225
diff --git a/metadata/md5-cache/net-analyzer/wireshark-3.4.7-r2 b/metadata/md5-cache/net-analyzer/wireshark-3.4.7-r2
new file mode 100644
index 0000000..2ebde9c
--- /dev/null
+++ b/metadata/md5-cache/net-analyzer/wireshark-3.4.7-r2
@@ -0,0 +1,16 @@
+BDEPEND=dev-lang/perl sys-devel/bison sys-devel/flex virtual/pkgconfig doc? ( app-doc/doxygen dev-ruby/asciidoctor ) qt5? ( dev-qt/linguist-tools:5 ) test? ( dev-python/pytest ) dev-util/ninja dev-util/cmake
+DEFINED_PHASES=compile configure install postinst postrm prepare setup test
+DEPEND=>=dev-libs/glib-2.32:2 >=net-dns/c-ares-1.5:= dev-libs/libgcrypt:= bcg729? ( media-libs/bcg729 ) brotli? ( app-arch/brotli:= ) ciscodump? ( >=net-libs/libssh-0.6 ) filecaps? ( sys-libs/libcap ) http2? ( net-libs/nghttp2:= ) ilbc? ( media-libs/libilbc ) kerberos? ( virtual/krb5 ) libxml2? ( dev-libs/libxml2 ) lz4? ( app-arch/lz4:= ) maxminddb? ( dev-libs/libmaxminddb:= ) minizip? ( sys-libs/zlib[minizip] ) netlink? ( dev-libs/libnl:3 ) opus? ( media-libs/opus ) pcap? ( net-libs/libpcap ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtmultimedia:5 dev-qt/qtprintsupport:5 dev-qt/qtwidgets:5 x11-misc/xdg-utils ) sbc? ( media-libs/sbc ) sdjournal? ( sys-apps/systemd ) smi? ( net-libs/libsmi ) snappy? ( app-arch/snappy ) spandsp? ( media-libs/spandsp ) sshdump? ( >=net-libs/libssh-0.6 ) ssl? ( net-libs/gnutls:= ) zlib? ( sys-libs/zlib ) zstd? ( app-arch/zstd:= ) || ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) filecaps? ( sys-libs/libcap )
+DESCRIPTION=A network protocol analyzer formerly known as ethereal
+EAPI=7
+HOMEPAGE=https://www.wireshark.org/
+IUSE=androiddump bcg729 brotli +capinfos +captype ciscodump +dftest doc dpauxmon +dumpcap +editcap http2 ilbc kerberos libxml2 lto lua lz4 maxminddb +mergecap minizip +netlink opus +plugins plugin-ifdemo +pcap qt5 +randpkt +randpktdump +reordercap sbc selinux +sharkd smi snappy spandsp sshdump ssl sdjournal test +text2pcap tfshark +tshark +udpdump zlib +zstd +filecaps
+KEYWORDS=*
+LICENSE=GPL-2
+RDEPEND=>=dev-libs/glib-2.32:2 >=net-dns/c-ares-1.5:= dev-libs/libgcrypt:= bcg729? ( media-libs/bcg729 ) brotli? ( app-arch/brotli:= ) ciscodump? ( >=net-libs/libssh-0.6 ) filecaps? ( sys-libs/libcap ) http2? ( net-libs/nghttp2:= ) ilbc? ( media-libs/libilbc ) kerberos? ( virtual/krb5 ) libxml2? ( dev-libs/libxml2 ) lz4? ( app-arch/lz4:= ) maxminddb? ( dev-libs/libmaxminddb:= ) minizip? ( sys-libs/zlib[minizip] ) netlink? ( dev-libs/libnl:3 ) opus? ( media-libs/opus ) pcap? ( net-libs/libpcap ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtmultimedia:5 dev-qt/qtprintsupport:5 dev-qt/qtwidgets:5 x11-misc/xdg-utils ) sbc? ( media-libs/sbc ) sdjournal? ( sys-apps/systemd ) smi? ( net-libs/libsmi ) snappy? ( app-arch/snappy ) spandsp? ( media-libs/spandsp ) sshdump? ( >=net-libs/libssh-0.6 ) ssl? ( net-libs/gnutls:= ) zlib? ( sys-libs/zlib ) zstd? ( app-arch/zstd:= ) qt5? ( virtual/freedesktop-icon-theme ) selinux? ( sec-policy/selinux-wireshark )
+REQUIRED_USE=plugin-ifdemo? ( plugins )
+RESTRICT=test
+SLOT=0/3.4.7
+SRC_URI=https://www.wireshark.org/download/src/all-versions/wireshark-3.4.7.tar.xz
+_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	fcaps	eeefea88d5fef2853d4c1e3770340302	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	qmake-utils	bdf97e69a34b864d6d545f4ec3143ff7	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=7130e0a8e3b53e96aed4a9b367b25b7c
diff --git a/metadata/md5-cache/net-dialup/ppp-2.4.9-r3 b/metadata/md5-cache/net-dialup/ppp-2.4.9-r3
index f86d9f5..6ddb576 100644
--- a/metadata/md5-cache/net-dialup/ppp-2.4.9-r3
+++ b/metadata/md5-cache/net-dialup/ppp-2.4.9-r3
@@ -11,5 +11,5 @@
 RDEPEND=activefilter? ( net-libs/libpcap ) atm? ( net-dialup/linux-atm ) pam? ( sys-libs/pam ) gtk? ( x11-libs/gtk+:2 ) !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:= ) !<net-misc/netifrc-0.7.1-r2 sys-apps/baselayout
 SLOT=0/2.4.9
 SRC_URI=https://github.com/paulusmack/ppp/archive/ppp-2.4.9.tar.gz https://dev.gentoo.org/~polynomial-c/ppp-2.4.9-patches-02.tar.xz http://www.netservers.net.uk/gpl/ppp-dhcpc.tgz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	pam	3f746974e1cc47cabe3bd488c08cdc8e	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	pam	3f746974e1cc47cabe3bd488c08cdc8e	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=40e0ae3f144edee73f292576d454f333
diff --git a/metadata/md5-cache/net-dialup/xl2tpd-1.3.12 b/metadata/md5-cache/net-dialup/xl2tpd-1.3.12
index e001f1d..258a73f 100644
--- a/metadata/md5-cache/net-dialup/xl2tpd-1.3.12
+++ b/metadata/md5-cache/net-dialup/xl2tpd-1.3.12
@@ -8,5 +8,5 @@
 RDEPEND=net-libs/libpcap >=sys-kernel/linux-headers-2.6 net-dialup/ppp
 SLOT=0
 SRC_URI=https://github.com/xelerance/xl2tpd/archive/v1.3.12.tar.gz -> xl2tpd-1.3.12.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8d9e088a58be17dc7c4c3a516abc840c
diff --git a/metadata/md5-cache/net-dialup/xl2tpd-1.3.12-r2 b/metadata/md5-cache/net-dialup/xl2tpd-1.3.12-r2
index e001f1d..258a73f 100644
--- a/metadata/md5-cache/net-dialup/xl2tpd-1.3.12-r2
+++ b/metadata/md5-cache/net-dialup/xl2tpd-1.3.12-r2
@@ -8,5 +8,5 @@
 RDEPEND=net-libs/libpcap >=sys-kernel/linux-headers-2.6 net-dialup/ppp
 SLOT=0
 SRC_URI=https://github.com/xelerance/xl2tpd/archive/v1.3.12.tar.gz -> xl2tpd-1.3.12.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8d9e088a58be17dc7c4c3a516abc840c
diff --git a/metadata/md5-cache/net-dns/avahi-0.8 b/metadata/md5-cache/net-dns/avahi-0.8
index 6465f88..d3adb29 100644
--- a/metadata/md5-cache/net-dns/avahi-0.8
+++ b/metadata/md5-cache/net-dns/avahi-0.8
@@ -12,5 +12,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=https://github.com/lathiat/avahi/archive/v0.8.tar.gz -> avahi-0.8.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	mono-env	59ca1177366cc9e14521d3501e9bb281	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=af2a9067af406bbb2170af38b7f2e9bd
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	mono-env	59ca1177366cc9e14521d3501e9bb281	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=a2b6d20276225d1d845e1fb121f7d52b
diff --git a/metadata/md5-cache/net-dns/avahi-0.8-r2 b/metadata/md5-cache/net-dns/avahi-0.8-r2
deleted file mode 100644
index 6465f88..0000000
--- a/metadata/md5-cache/net-dns/avahi-0.8-r2
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=dev-util/glib-utils doc? ( app-doc/doxygen ) app-doc/xmltoman dev-util/intltool virtual/pkgconfig >=app-portage/elt-patches-20170815 virtual/pkgconfig
-DEFINED_PHASES=compile configure install postinst preinst prepare setup test
-DEPEND=dev-libs/libdaemon dev-libs/libevent:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/expat dev-libs/glib:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] gdbm? ( sys-libs/gdbm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) qt5? ( dev-qt/qtcore:5 ) gtk2? ( x11-libs/gtk+:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) gtk? ( x11-libs/gtk+:3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) dbus? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kernel_linux? ( sys-libs/libcap ) introspection? ( dev-libs/gobject-introspection:= ) mono? ( dev-lang/mono gtk2? ( dev-dotnet/gtk-sharp:2 ) ) python? ( python_targets_python3_7? ( dev-lang/python:3.7[gdbm] ) python_targets_python3_8? ( dev-lang/python:3.8[gdbm] ) >=dev-lang/python-exec-2:=[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dbus? ( dev-python/dbus-python[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) introspection? ( dev-python/pygobject:3[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) ) bookmarks? ( python_targets_python3_7? ( dev-lang/python:3.7[gdbm] ) python_targets_python3_8? ( dev-lang/python:3.8[gdbm] ) >=dev-lang/python-exec-2:=[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/twisted-16.0.0[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
-DESCRIPTION=System which facilitates service discovery on a local network
-EAPI=7
-HOMEPAGE=http://avahi.org/
-IUSE=autoipd bookmarks dbus doc fuzzer gdbm gtk gtk2 howl-compat +introspection ipv6 kernel_linux mdnsresponder-compat mono nls python qt5 selinux systemd test fuzzer asan coverage fuzzer msan tsan ubsan abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 python_targets_python3_7 python_targets_python3_8
-KEYWORDS=*
-LICENSE=LGPL-2.1
-RDEPEND=dev-libs/libdaemon dev-libs/libevent:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/expat dev-libs/glib:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] gdbm? ( sys-libs/gdbm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) qt5? ( dev-qt/qtcore:5 ) gtk2? ( x11-libs/gtk+:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) gtk? ( x11-libs/gtk+:3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) dbus? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kernel_linux? ( sys-libs/libcap ) introspection? ( dev-libs/gobject-introspection:= ) mono? ( dev-lang/mono gtk2? ( dev-dotnet/gtk-sharp:2 ) ) python? ( python_targets_python3_7? ( dev-lang/python:3.7[gdbm] ) python_targets_python3_8? ( dev-lang/python:3.8[gdbm] ) >=dev-lang/python-exec-2:=[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dbus? ( dev-python/dbus-python[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) introspection? ( dev-python/pygobject:3[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) ) bookmarks? ( python_targets_python3_7? ( dev-lang/python:3.7[gdbm] ) python_targets_python3_8? ( dev-lang/python:3.8[gdbm] ) >=dev-lang/python-exec-2:=[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/twisted-16.0.0[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) selinux? ( sec-policy/selinux-avahi ) sys-apps/baselayout
-REQUIRED_USE=python? ( dbus gdbm || ( python_targets_python3_7 python_targets_python3_8 ) ) mono? ( dbus ) howl-compat? ( dbus ) mdnsresponder-compat? ( dbus ) systemd? ( dbus )
-RESTRICT=!test? ( test )
-SLOT=0
-SRC_URI=https://github.com/lathiat/avahi/archive/v0.8.tar.gz -> avahi-0.8.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	mono-env	59ca1177366cc9e14521d3501e9bb281	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=af2a9067af406bbb2170af38b7f2e9bd
diff --git a/metadata/md5-cache/net-dns/avahi-0.8-r4 b/metadata/md5-cache/net-dns/avahi-0.8-r4
new file mode 100644
index 0000000..d3adb29
--- /dev/null
+++ b/metadata/md5-cache/net-dns/avahi-0.8-r4
@@ -0,0 +1,16 @@
+BDEPEND=dev-util/glib-utils doc? ( app-doc/doxygen ) app-doc/xmltoman dev-util/intltool virtual/pkgconfig >=app-portage/elt-patches-20170815 virtual/pkgconfig
+DEFINED_PHASES=compile configure install postinst preinst prepare setup test
+DEPEND=dev-libs/libdaemon dev-libs/libevent:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/expat dev-libs/glib:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] gdbm? ( sys-libs/gdbm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) qt5? ( dev-qt/qtcore:5 ) gtk2? ( x11-libs/gtk+:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) gtk? ( x11-libs/gtk+:3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) dbus? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kernel_linux? ( sys-libs/libcap ) introspection? ( dev-libs/gobject-introspection:= ) mono? ( dev-lang/mono gtk2? ( dev-dotnet/gtk-sharp:2 ) ) python? ( python_targets_python3_7? ( dev-lang/python:3.7[gdbm] ) python_targets_python3_8? ( dev-lang/python:3.8[gdbm] ) >=dev-lang/python-exec-2:=[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dbus? ( dev-python/dbus-python[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) introspection? ( dev-python/pygobject:3[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) ) bookmarks? ( python_targets_python3_7? ( dev-lang/python:3.7[gdbm] ) python_targets_python3_8? ( dev-lang/python:3.8[gdbm] ) >=dev-lang/python-exec-2:=[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/twisted-16.0.0[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
+DESCRIPTION=System which facilitates service discovery on a local network
+EAPI=7
+HOMEPAGE=http://avahi.org/
+IUSE=autoipd bookmarks dbus doc fuzzer gdbm gtk gtk2 howl-compat +introspection ipv6 kernel_linux mdnsresponder-compat mono nls python qt5 selinux systemd test fuzzer asan coverage fuzzer msan tsan ubsan abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 python_targets_python3_7 python_targets_python3_8
+KEYWORDS=*
+LICENSE=LGPL-2.1
+RDEPEND=dev-libs/libdaemon dev-libs/libevent:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/expat dev-libs/glib:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] gdbm? ( sys-libs/gdbm:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) qt5? ( dev-qt/qtcore:5 ) gtk2? ( x11-libs/gtk+:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) gtk? ( x11-libs/gtk+:3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) dbus? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kernel_linux? ( sys-libs/libcap ) introspection? ( dev-libs/gobject-introspection:= ) mono? ( dev-lang/mono gtk2? ( dev-dotnet/gtk-sharp:2 ) ) python? ( python_targets_python3_7? ( dev-lang/python:3.7[gdbm] ) python_targets_python3_8? ( dev-lang/python:3.8[gdbm] ) >=dev-lang/python-exec-2:=[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dbus? ( dev-python/dbus-python[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) introspection? ( dev-python/pygobject:3[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) ) bookmarks? ( python_targets_python3_7? ( dev-lang/python:3.7[gdbm] ) python_targets_python3_8? ( dev-lang/python:3.8[gdbm] ) >=dev-lang/python-exec-2:=[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/twisted-16.0.0[python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) selinux? ( sec-policy/selinux-avahi ) sys-apps/baselayout
+REQUIRED_USE=python? ( dbus gdbm || ( python_targets_python3_7 python_targets_python3_8 ) ) mono? ( dbus ) howl-compat? ( dbus ) mdnsresponder-compat? ( dbus ) systemd? ( dbus )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/lathiat/avahi/archive/v0.8.tar.gz -> avahi-0.8.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	mono-env	59ca1177366cc9e14521d3501e9bb281	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=a2b6d20276225d1d845e1fb121f7d52b
diff --git a/metadata/md5-cache/net-dns/avahi-daemon-0.0.1-r10 b/metadata/md5-cache/net-dns/avahi-daemon-0.0.1-r11
similarity index 100%
rename from metadata/md5-cache/net-dns/avahi-daemon-0.0.1-r10
rename to metadata/md5-cache/net-dns/avahi-daemon-0.0.1-r11
diff --git a/metadata/md5-cache/net-dns/dnsmasq-2.78 b/metadata/md5-cache/net-dns/dnsmasq-2.78
deleted file mode 100644
index cc100e7..0000000
--- a/metadata/md5-cache/net-dns/dnsmasq-2.78
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install postinst preinst prepare pretend setup
-DEPEND=dbus? ( sys-apps/dbus ) idn? ( !libidn2? ( net-dns/libidn ) libidn2? ( >=net-dns/libidn2-2.0 ) ) lua? ( dev-lang/lua:* ) conntrack? ( net-libs/libnetfilter_conntrack ) nls? ( sys-devel/gettext ) app-arch/xz-utils dnssec? ( dev-libs/nettle[gmp] static? ( dev-libs/nettle[static-libs(+)] ) ) virtual/pkgconfig sys-apps/baselayout virtual/pkgconfig
-DESCRIPTION=Small forwarding DNS server
-EAPI=5
-HOMEPAGE=http://www.thekelleys.org.uk/dnsmasq/doc.html
-IUSE=auth-dns conntrack dbus +dhcp dhcp-tools dnssec +id idn libidn2 +inotify ipv6 lua nls script selinux static tftp dhcp-options linguas_de linguas_es linguas_fi linguas_fr linguas_id linguas_it linguas_no linguas_pl linguas_pt_BR linguas_ro
-KEYWORDS=*
-LICENSE=|| ( GPL-2 GPL-3 )
-RDEPEND=dbus? ( sys-apps/dbus ) idn? ( !libidn2? ( net-dns/libidn ) libidn2? ( >=net-dns/libidn2-2.0 ) ) lua? ( dev-lang/lua:* ) conntrack? ( net-libs/libnetfilter_conntrack ) nls? ( sys-devel/gettext ) dnssec? ( !static? ( dev-libs/nettle[gmp] ) ) selinux? ( sec-policy/selinux-dnsmasq ) sys-apps/baselayout
-REQUIRED_USE=dhcp-tools? ( dhcp ) lua? ( script ) libidn2? ( idn )
-SLOT=0
-SRC_URI=http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.78.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=1502c335280a513c33642a1f61cb534e
diff --git a/metadata/md5-cache/net-dns/dnsmasq-2.78-r4 b/metadata/md5-cache/net-dns/dnsmasq-2.78-r4
deleted file mode 100644
index cc100e7..0000000
--- a/metadata/md5-cache/net-dns/dnsmasq-2.78-r4
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install postinst preinst prepare pretend setup
-DEPEND=dbus? ( sys-apps/dbus ) idn? ( !libidn2? ( net-dns/libidn ) libidn2? ( >=net-dns/libidn2-2.0 ) ) lua? ( dev-lang/lua:* ) conntrack? ( net-libs/libnetfilter_conntrack ) nls? ( sys-devel/gettext ) app-arch/xz-utils dnssec? ( dev-libs/nettle[gmp] static? ( dev-libs/nettle[static-libs(+)] ) ) virtual/pkgconfig sys-apps/baselayout virtual/pkgconfig
-DESCRIPTION=Small forwarding DNS server
-EAPI=5
-HOMEPAGE=http://www.thekelleys.org.uk/dnsmasq/doc.html
-IUSE=auth-dns conntrack dbus +dhcp dhcp-tools dnssec +id idn libidn2 +inotify ipv6 lua nls script selinux static tftp dhcp-options linguas_de linguas_es linguas_fi linguas_fr linguas_id linguas_it linguas_no linguas_pl linguas_pt_BR linguas_ro
-KEYWORDS=*
-LICENSE=|| ( GPL-2 GPL-3 )
-RDEPEND=dbus? ( sys-apps/dbus ) idn? ( !libidn2? ( net-dns/libidn ) libidn2? ( >=net-dns/libidn2-2.0 ) ) lua? ( dev-lang/lua:* ) conntrack? ( net-libs/libnetfilter_conntrack ) nls? ( sys-devel/gettext ) dnssec? ( !static? ( dev-libs/nettle[gmp] ) ) selinux? ( sec-policy/selinux-dnsmasq ) sys-apps/baselayout
-REQUIRED_USE=dhcp-tools? ( dhcp ) lua? ( script ) libidn2? ( idn )
-SLOT=0
-SRC_URI=http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.78.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=1502c335280a513c33642a1f61cb534e
diff --git a/metadata/md5-cache/net-dns/dnsmasq-2.85 b/metadata/md5-cache/net-dns/dnsmasq-2.85
new file mode 100644
index 0000000..4c06546
--- /dev/null
+++ b/metadata/md5-cache/net-dns/dnsmasq-2.85
@@ -0,0 +1,15 @@
+BDEPEND=app-arch/xz-utils virtual/pkgconfig nls? ( sys-devel/gettext ) virtual/pkgconfig
+DEFINED_PHASES=compile configure install postinst preinst prepare pretend setup
+DEPEND=dbus? ( sys-apps/dbus:= ) idn? ( !libidn2? ( net-dns/libidn:0= ) libidn2? ( >=net-dns/libidn2-2.0:= ) ) lua? ( dev-lang/lua:* ) conntrack? ( net-libs/libnetfilter_conntrack:= ) nls? ( sys-devel/gettext ) dnssec? ( dev-libs/nettle:=[gmp] static? ( >=dev-libs/nettle-3.4[static-libs(+)] ) ) sys-apps/baselayout
+DESCRIPTION=Small forwarding DNS server
+EAPI=7
+HOMEPAGE=http://www.thekelleys.org.uk/dnsmasq/doc.html
+IUSE=auth-dns conntrack dbus +dhcp dhcp-tools dnssec +dumpfile id idn libidn2 +inotify ipv6 lua nettlehash nls script selinux static tftp dhcp-options
+KEYWORDS=*
+LICENSE=|| ( GPL-2 GPL-3 )
+RDEPEND=dbus? ( sys-apps/dbus:= ) idn? ( !libidn2? ( net-dns/libidn:0= ) libidn2? ( >=net-dns/libidn2-2.0:= ) ) lua? ( dev-lang/lua:* ) conntrack? ( net-libs/libnetfilter_conntrack:= ) nls? ( sys-devel/gettext ) dnssec? ( !static? ( >=dev-libs/nettle-3.4:=[gmp] ) ) selinux? ( sec-policy/selinux-dnsmasq ) sys-apps/baselayout
+REQUIRED_USE=dhcp-tools? ( dhcp ) dnssec? ( !nettlehash ) lua? ( script ) libidn2? ( idn )
+SLOT=0
+SRC_URI=http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.85.tar.xz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=b4f61ac18ce7d98cd2547ce7ea41c8e7
diff --git a/metadata/md5-cache/net-dns/dnsmasq-2.85-r1 b/metadata/md5-cache/net-dns/dnsmasq-2.85-r1
new file mode 100644
index 0000000..4c06546
--- /dev/null
+++ b/metadata/md5-cache/net-dns/dnsmasq-2.85-r1
@@ -0,0 +1,15 @@
+BDEPEND=app-arch/xz-utils virtual/pkgconfig nls? ( sys-devel/gettext ) virtual/pkgconfig
+DEFINED_PHASES=compile configure install postinst preinst prepare pretend setup
+DEPEND=dbus? ( sys-apps/dbus:= ) idn? ( !libidn2? ( net-dns/libidn:0= ) libidn2? ( >=net-dns/libidn2-2.0:= ) ) lua? ( dev-lang/lua:* ) conntrack? ( net-libs/libnetfilter_conntrack:= ) nls? ( sys-devel/gettext ) dnssec? ( dev-libs/nettle:=[gmp] static? ( >=dev-libs/nettle-3.4[static-libs(+)] ) ) sys-apps/baselayout
+DESCRIPTION=Small forwarding DNS server
+EAPI=7
+HOMEPAGE=http://www.thekelleys.org.uk/dnsmasq/doc.html
+IUSE=auth-dns conntrack dbus +dhcp dhcp-tools dnssec +dumpfile id idn libidn2 +inotify ipv6 lua nettlehash nls script selinux static tftp dhcp-options
+KEYWORDS=*
+LICENSE=|| ( GPL-2 GPL-3 )
+RDEPEND=dbus? ( sys-apps/dbus:= ) idn? ( !libidn2? ( net-dns/libidn:0= ) libidn2? ( >=net-dns/libidn2-2.0:= ) ) lua? ( dev-lang/lua:* ) conntrack? ( net-libs/libnetfilter_conntrack:= ) nls? ( sys-devel/gettext ) dnssec? ( !static? ( >=dev-libs/nettle-3.4:=[gmp] ) ) selinux? ( sec-policy/selinux-dnsmasq ) sys-apps/baselayout
+REQUIRED_USE=dhcp-tools? ( dhcp ) dnssec? ( !nettlehash ) lua? ( script ) libidn2? ( idn )
+SLOT=0
+SRC_URI=http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.85.tar.xz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=b4f61ac18ce7d98cd2547ce7ea41c8e7
diff --git a/metadata/md5-cache/net-firewall/conntrack-tools-1.4.4 b/metadata/md5-cache/net-firewall/conntrack-tools-1.4.4
index f38dacf..18560d3 100644
--- a/metadata/md5-cache/net-firewall/conntrack-tools-1.4.4
+++ b/metadata/md5-cache/net-firewall/conntrack-tools-1.4.4
@@ -1,13 +1,14 @@
-DEFINED_PHASES=compile configure install prepare setup
-DEPEND=>=net-libs/libmnl-1.0.3 >=net-libs/libnetfilter_conntrack-1.0.6 >=net-libs/libnetfilter_cthelper-1.0.0 >=net-libs/libnetfilter_cttimeout-1.0.0 >=net-libs/libnetfilter_queue-1.0.2 >=net-libs/libnfnetlink-1.0.1 !libtirpc? ( sys-libs/glibc[rpc(-)] ) libtirpc? ( net-libs/libtirpc ) doc? ( app-text/docbook-xml-dtd:4.1.2 app-text/xmlto ) virtual/pkgconfig sys-devel/bison sys-devel/flex >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+BDEPEND=doc? ( app-text/docbook-xml-dtd:4.1.2 app-text/xmlto ) virtual/pkgconfig sys-devel/bison sys-devel/flex >=app-portage/elt-patches-20170815
+DEFINED_PHASES=compile configure install prepare
+DEPEND=>=net-libs/libmnl-1.0.3 >=net-libs/libnetfilter_conntrack-1.0.6 >=net-libs/libnetfilter_cthelper-1.0.0 >=net-libs/libnetfilter_cttimeout-1.0.0 >=net-libs/libnetfilter_queue-1.0.2 >=net-libs/libnfnetlink-1.0.1 !libtirpc? ( sys-libs/glibc[rpc(-)] ) libtirpc? ( net-libs/libtirpc ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
 DESCRIPTION=Connection tracking userspace tools
-EAPI=5
+EAPI=7
 HOMEPAGE=http://conntrack-tools.netfilter.org
-IUSE=doc +libtirpc +seccomp kernel_linux
+IUSE=doc +libtirpc +seccomp
 KEYWORDS=*
 LICENSE=GPL-2
 RDEPEND=>=net-libs/libmnl-1.0.3 >=net-libs/libnetfilter_conntrack-1.0.6 >=net-libs/libnetfilter_cthelper-1.0.0 >=net-libs/libnetfilter_cttimeout-1.0.0 >=net-libs/libnetfilter_queue-1.0.2 >=net-libs/libnfnetlink-1.0.1 !libtirpc? ( sys-libs/glibc[rpc(-)] ) libtirpc? ( net-libs/libtirpc )
 SLOT=0
 SRC_URI=http://www.netfilter.org/projects/conntrack-tools/files/conntrack-tools-1.4.4.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=df69b828106964d49a37c24bd4b5e18b
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9f42f3f3147cf7537572d874841e2439
diff --git a/metadata/md5-cache/net-firewall/conntrack-tools-1.4.4-r17 b/metadata/md5-cache/net-firewall/conntrack-tools-1.4.4-r17
deleted file mode 100644
index f38dacf..0000000
--- a/metadata/md5-cache/net-firewall/conntrack-tools-1.4.4-r17
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup
-DEPEND=>=net-libs/libmnl-1.0.3 >=net-libs/libnetfilter_conntrack-1.0.6 >=net-libs/libnetfilter_cthelper-1.0.0 >=net-libs/libnetfilter_cttimeout-1.0.0 >=net-libs/libnetfilter_queue-1.0.2 >=net-libs/libnfnetlink-1.0.1 !libtirpc? ( sys-libs/glibc[rpc(-)] ) libtirpc? ( net-libs/libtirpc ) doc? ( app-text/docbook-xml-dtd:4.1.2 app-text/xmlto ) virtual/pkgconfig sys-devel/bison sys-devel/flex >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Connection tracking userspace tools
-EAPI=5
-HOMEPAGE=http://conntrack-tools.netfilter.org
-IUSE=doc +libtirpc +seccomp kernel_linux
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=>=net-libs/libmnl-1.0.3 >=net-libs/libnetfilter_conntrack-1.0.6 >=net-libs/libnetfilter_cthelper-1.0.0 >=net-libs/libnetfilter_cttimeout-1.0.0 >=net-libs/libnetfilter_queue-1.0.2 >=net-libs/libnfnetlink-1.0.1 !libtirpc? ( sys-libs/glibc[rpc(-)] ) libtirpc? ( net-libs/libtirpc )
-SLOT=0
-SRC_URI=http://www.netfilter.org/projects/conntrack-tools/files/conntrack-tools-1.4.4.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=df69b828106964d49a37c24bd4b5e18b
diff --git a/metadata/md5-cache/net-firewall/conntrack-tools-1.4.4-r21 b/metadata/md5-cache/net-firewall/conntrack-tools-1.4.4-r21
new file mode 100644
index 0000000..18560d3
--- /dev/null
+++ b/metadata/md5-cache/net-firewall/conntrack-tools-1.4.4-r21
@@ -0,0 +1,14 @@
+BDEPEND=doc? ( app-text/docbook-xml-dtd:4.1.2 app-text/xmlto ) virtual/pkgconfig sys-devel/bison sys-devel/flex >=app-portage/elt-patches-20170815
+DEFINED_PHASES=compile configure install prepare
+DEPEND=>=net-libs/libmnl-1.0.3 >=net-libs/libnetfilter_conntrack-1.0.6 >=net-libs/libnetfilter_cthelper-1.0.0 >=net-libs/libnetfilter_cttimeout-1.0.0 >=net-libs/libnetfilter_queue-1.0.2 >=net-libs/libnfnetlink-1.0.1 !libtirpc? ( sys-libs/glibc[rpc(-)] ) libtirpc? ( net-libs/libtirpc ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=Connection tracking userspace tools
+EAPI=7
+HOMEPAGE=http://conntrack-tools.netfilter.org
+IUSE=doc +libtirpc +seccomp
+KEYWORDS=*
+LICENSE=GPL-2
+RDEPEND=>=net-libs/libmnl-1.0.3 >=net-libs/libnetfilter_conntrack-1.0.6 >=net-libs/libnetfilter_cthelper-1.0.0 >=net-libs/libnetfilter_cttimeout-1.0.0 >=net-libs/libnetfilter_queue-1.0.2 >=net-libs/libnfnetlink-1.0.1 !libtirpc? ( sys-libs/glibc[rpc(-)] ) libtirpc? ( net-libs/libtirpc )
+SLOT=0
+SRC_URI=http://www.netfilter.org/projects/conntrack-tools/files/conntrack-tools-1.4.4.tar.bz2
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9f42f3f3147cf7537572d874841e2439
diff --git a/metadata/md5-cache/net-firewall/nftables-0.8 b/metadata/md5-cache/net-firewall/nftables-0.8
index aed4293..87a2911 100644
--- a/metadata/md5-cache/net-firewall/nftables-0.8
+++ b/metadata/md5-cache/net-firewall/nftables-0.8
@@ -9,5 +9,5 @@
 RDEPEND=>=net-libs/libmnl-1.0.3:0= gmp? ( dev-libs/gmp:0= ) readline? ( sys-libs/readline:0= ) >=net-libs/libnftnl-1.0.9:0=
 SLOT=0
 SRC_URI=https://git.netfilter.org/nftables/snapshot/v0.8.tar.gz -> nftables-0.8.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ab866536631a456e2b8396adcebb5b85
diff --git a/metadata/md5-cache/net-firewall/nftables-0.8-r4 b/metadata/md5-cache/net-firewall/nftables-0.8-r4
index aed4293..87a2911 100644
--- a/metadata/md5-cache/net-firewall/nftables-0.8-r4
+++ b/metadata/md5-cache/net-firewall/nftables-0.8-r4
@@ -9,5 +9,5 @@
 RDEPEND=>=net-libs/libmnl-1.0.3:0= gmp? ( dev-libs/gmp:0= ) readline? ( sys-libs/readline:0= ) >=net-libs/libnftnl-1.0.9:0=
 SLOT=0
 SRC_URI=https://git.netfilter.org/nftables/snapshot/v0.8.tar.gz -> nftables-0.8.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ab866536631a456e2b8396adcebb5b85
diff --git a/metadata/md5-cache/net-fs/samba-4.11.13 b/metadata/md5-cache/net-fs/samba-4.11.13
index 633fb38..3c79a92 100644
--- a/metadata/md5-cache/net-fs/samba-4.11.13
+++ b/metadata/md5-cache/net-fs/samba-4.11.13
@@ -1,4 +1,4 @@
-DEFINED_PHASES=compile configure install postinst prepare setup test
+DEFINED_PHASES=compile configure install prepare setup test
 DEPEND=>=app-arch/libarchive-3.1.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] perl? ( dev-lang/perl:= ) dev-libs/libaio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/libbsd[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/libgcrypt:0 dev-libs/iniparser:0 dev-libs/libtasn1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/popt[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] python? ( python_single_target_python3_6? ( dev-python/subunit[python_targets_python3_6(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) python_single_target_python3_7? ( dev-python/subunit[python_targets_python3_7(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) python_single_target_python3_8? ( dev-python/subunit[python_targets_python3_8(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/cmocka-1.1.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-3.2.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] net-libs/libnsl:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/e2fsprogs-libs[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/ldb-2.0.12[ldap(+)?,python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] <sys-libs/ldb-2.1.0[ldap(+)?,python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/libcap sys-libs/ncurses:0= sys-libs/readline:0= >=sys-libs/talloc-2.2.0[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/tdb-1.4.2[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/tevent-0.10.0[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/libiconv pam? ( sys-libs/pam ) acl? ( virtual/acl ) addns? ( net-dns/bind-tools[gssapi] python_single_target_python3_6? ( dev-python/dnspython:=[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/dnspython:=[python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-python/dnspython:=[python_targets_python3_8(-)] ) ) ceph? ( sys-cluster/ceph ) cluster? ( net-libs/rpcsvc-proto !dev-db/ctdb ) cups? ( net-print/cups ) debug? ( dev-util/lttng-ust ) dmapi? ( sys-apps/dmapi ) fam? ( virtual/fam ) gpg? ( app-crypt/gpgme ) json? ( dev-libs/jansson ) ldap? ( net-nds/openldap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) snapper? ( sys-apps/dbus ) system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) systemd? ( sys-apps/systemd:0= ) zeroconf? ( net-dns/avahi ) python_single_target_python3_6? ( dev-lang/python:3.6[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) app-text/docbook-xsl-stylesheets dev-libs/libxslt net-libs/libtirpc[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/pkgconfig || ( net-libs/rpcsvc-proto <sys-libs/glibc-2.26[rpc(+)] ) test? ( !system-mitkrb5? ( >=sys-libs/nss_wrapper-1.1.3 >=net-dns/resolv_wrapper-1.1.4 >=net-libs/socket_wrapper-1.1.9 >=sys-libs/uid_wrapper-1.2.1 ) ) virtual/pkgconfig
 DESCRIPTION=Samba Suite Version 4
 EAPI=6
@@ -11,5 +11,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=mirror://samba/stable/samba-4.11.13.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pam	3f746974e1cc47cabe3bd488c08cdc8e	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	waf-utils	0af0bf9207f47292d40e888b9687763c
-_md5_=d6b65e706ace276581f7e48d32acac0c
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pam	3f746974e1cc47cabe3bd488c08cdc8e	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	waf-utils	0af0bf9207f47292d40e888b9687763c
+_md5_=8f24a78a7d7b6a56c08d7907a682a298
diff --git a/metadata/md5-cache/net-fs/samba-4.11.13-r7 b/metadata/md5-cache/net-fs/samba-4.11.13-r7
deleted file mode 100644
index 633fb38..0000000
--- a/metadata/md5-cache/net-fs/samba-4.11.13-r7
+++ /dev/null
@@ -1,15 +0,0 @@
-DEFINED_PHASES=compile configure install postinst prepare setup test
-DEPEND=>=app-arch/libarchive-3.1.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] perl? ( dev-lang/perl:= ) dev-libs/libaio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/libbsd[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/libgcrypt:0 dev-libs/iniparser:0 dev-libs/libtasn1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/popt[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] python? ( python_single_target_python3_6? ( dev-python/subunit[python_targets_python3_6(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) python_single_target_python3_7? ( dev-python/subunit[python_targets_python3_7(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) python_single_target_python3_8? ( dev-python/subunit[python_targets_python3_8(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/cmocka-1.1.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-3.2.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] net-libs/libnsl:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/e2fsprogs-libs[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/ldb-2.0.12[ldap(+)?,python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] <sys-libs/ldb-2.1.0[ldap(+)?,python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/libcap sys-libs/ncurses:0= sys-libs/readline:0= >=sys-libs/talloc-2.2.0[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/tdb-1.4.2[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/tevent-0.10.0[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/libiconv pam? ( sys-libs/pam ) acl? ( virtual/acl ) addns? ( net-dns/bind-tools[gssapi] python_single_target_python3_6? ( dev-python/dnspython:=[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/dnspython:=[python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-python/dnspython:=[python_targets_python3_8(-)] ) ) ceph? ( sys-cluster/ceph ) cluster? ( net-libs/rpcsvc-proto !dev-db/ctdb ) cups? ( net-print/cups ) debug? ( dev-util/lttng-ust ) dmapi? ( sys-apps/dmapi ) fam? ( virtual/fam ) gpg? ( app-crypt/gpgme ) json? ( dev-libs/jansson ) ldap? ( net-nds/openldap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) snapper? ( sys-apps/dbus ) system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) systemd? ( sys-apps/systemd:0= ) zeroconf? ( net-dns/avahi ) python_single_target_python3_6? ( dev-lang/python:3.6[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) app-text/docbook-xsl-stylesheets dev-libs/libxslt net-libs/libtirpc[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/pkgconfig || ( net-libs/rpcsvc-proto <sys-libs/glibc-2.26[rpc(+)] ) test? ( !system-mitkrb5? ( >=sys-libs/nss_wrapper-1.1.3 >=net-dns/resolv_wrapper-1.1.4 >=net-libs/socket_wrapper-1.1.9 >=sys-libs/uid_wrapper-1.2.1 ) ) virtual/pkgconfig
-DESCRIPTION=Samba Suite Version 4
-EAPI=6
-HOMEPAGE=https://www.samba.org/
-IUSE=acl addc addns ads ceph client cluster cups debug dmapi fam gpg iprint json ldap pam perl profiling-data python quota selinux snapper syslog system-heimdal +system-mitkrb5 systemd test winbind zeroconf python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 kernel_linux
-KEYWORDS=*
-LICENSE=GPL-3
-RDEPEND=>=app-arch/libarchive-3.1.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] perl? ( dev-lang/perl:= ) dev-libs/libaio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/libbsd[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/libgcrypt:0 dev-libs/iniparser:0 dev-libs/libtasn1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/popt[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] python? ( python_single_target_python3_6? ( dev-python/subunit[python_targets_python3_6(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) python_single_target_python3_7? ( dev-python/subunit[python_targets_python3_7(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) python_single_target_python3_8? ( dev-python/subunit[python_targets_python3_8(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/cmocka-1.1.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-3.2.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] net-libs/libnsl:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/e2fsprogs-libs[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/ldb-2.0.12[ldap(+)?,python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] <sys-libs/ldb-2.1.0[ldap(+)?,python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/libcap sys-libs/ncurses:0= sys-libs/readline:0= >=sys-libs/talloc-2.2.0[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/tdb-1.4.2[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/tevent-0.10.0[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/libiconv pam? ( sys-libs/pam ) acl? ( virtual/acl ) addns? ( net-dns/bind-tools[gssapi] python_single_target_python3_6? ( dev-python/dnspython:=[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/dnspython:=[python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-python/dnspython:=[python_targets_python3_8(-)] ) ) ceph? ( sys-cluster/ceph ) cluster? ( net-libs/rpcsvc-proto !dev-db/ctdb ) cups? ( net-print/cups ) debug? ( dev-util/lttng-ust ) dmapi? ( sys-apps/dmapi ) fam? ( virtual/fam ) gpg? ( app-crypt/gpgme ) json? ( dev-libs/jansson ) ldap? ( net-nds/openldap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) snapper? ( sys-apps/dbus ) system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) systemd? ( sys-apps/systemd:0= ) zeroconf? ( net-dns/avahi ) python? ( python_single_target_python3_6? ( dev-lang/python:3.6[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) ) client? ( net-fs/cifs-utils[ads?] ) selinux? ( sec-policy/selinux-samba ) !dev-perl/Parse-Yapp
-REQUIRED_USE=addc? ( python json winbind ) addns? ( python ) ads? ( acl ldap winbind ) cluster? ( ads ) gpg? ( addc ) python? ( ldap ) test? ( python ) ?? ( system-heimdal system-mitkrb5 ) ^^ ( python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 )
-RESTRICT=test
-SLOT=0
-SRC_URI=mirror://samba/stable/samba-4.11.13.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pam	3f746974e1cc47cabe3bd488c08cdc8e	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	waf-utils	0af0bf9207f47292d40e888b9687763c
-_md5_=d6b65e706ace276581f7e48d32acac0c
diff --git a/metadata/md5-cache/net-fs/samba-4.11.13-r8 b/metadata/md5-cache/net-fs/samba-4.11.13-r8
new file mode 100644
index 0000000..3c79a92
--- /dev/null
+++ b/metadata/md5-cache/net-fs/samba-4.11.13-r8
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install prepare setup test
+DEPEND=>=app-arch/libarchive-3.1.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] perl? ( dev-lang/perl:= ) dev-libs/libaio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/libbsd[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/libgcrypt:0 dev-libs/iniparser:0 dev-libs/libtasn1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/popt[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] python? ( python_single_target_python3_6? ( dev-python/subunit[python_targets_python3_6(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) python_single_target_python3_7? ( dev-python/subunit[python_targets_python3_7(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) python_single_target_python3_8? ( dev-python/subunit[python_targets_python3_8(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/cmocka-1.1.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-3.2.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] net-libs/libnsl:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/e2fsprogs-libs[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/ldb-2.0.12[ldap(+)?,python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] <sys-libs/ldb-2.1.0[ldap(+)?,python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/libcap sys-libs/ncurses:0= sys-libs/readline:0= >=sys-libs/talloc-2.2.0[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/tdb-1.4.2[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/tevent-0.10.0[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/libiconv pam? ( sys-libs/pam ) acl? ( virtual/acl ) addns? ( net-dns/bind-tools[gssapi] python_single_target_python3_6? ( dev-python/dnspython:=[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/dnspython:=[python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-python/dnspython:=[python_targets_python3_8(-)] ) ) ceph? ( sys-cluster/ceph ) cluster? ( net-libs/rpcsvc-proto !dev-db/ctdb ) cups? ( net-print/cups ) debug? ( dev-util/lttng-ust ) dmapi? ( sys-apps/dmapi ) fam? ( virtual/fam ) gpg? ( app-crypt/gpgme ) json? ( dev-libs/jansson ) ldap? ( net-nds/openldap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) snapper? ( sys-apps/dbus ) system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) systemd? ( sys-apps/systemd:0= ) zeroconf? ( net-dns/avahi ) python_single_target_python3_6? ( dev-lang/python:3.6[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) app-text/docbook-xsl-stylesheets dev-libs/libxslt net-libs/libtirpc[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/pkgconfig || ( net-libs/rpcsvc-proto <sys-libs/glibc-2.26[rpc(+)] ) test? ( !system-mitkrb5? ( >=sys-libs/nss_wrapper-1.1.3 >=net-dns/resolv_wrapper-1.1.4 >=net-libs/socket_wrapper-1.1.9 >=sys-libs/uid_wrapper-1.2.1 ) ) virtual/pkgconfig
+DESCRIPTION=Samba Suite Version 4
+EAPI=6
+HOMEPAGE=https://www.samba.org/
+IUSE=acl addc addns ads ceph client cluster cups debug dmapi fam gpg iprint json ldap pam perl profiling-data python quota selinux snapper syslog system-heimdal +system-mitkrb5 systemd test winbind zeroconf python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 kernel_linux
+KEYWORDS=*
+LICENSE=GPL-3
+RDEPEND=>=app-arch/libarchive-3.1.2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] perl? ( dev-lang/perl:= ) dev-libs/libaio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/libbsd[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/libgcrypt:0 dev-libs/iniparser:0 dev-libs/libtasn1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-libs/popt[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] python? ( python_single_target_python3_6? ( dev-python/subunit[python_targets_python3_6(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) python_single_target_python3_7? ( dev-python/subunit[python_targets_python3_7(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) python_single_target_python3_8? ( dev-python/subunit[python_targets_python3_8(-),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) >=dev-util/cmocka-1.1.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-3.2.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] net-libs/libnsl:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/e2fsprogs-libs[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/ldb-2.0.12[ldap(+)?,python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] <sys-libs/ldb-2.1.0[ldap(+)?,python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/libcap sys-libs/ncurses:0= sys-libs/readline:0= >=sys-libs/talloc-2.2.0[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/tdb-1.4.2[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/tevent-0.10.0[python?,python_single_target_python3_6(-)?,python_single_target_python3_7(-)?,python_single_target_python3_8(-)?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] virtual/libiconv pam? ( sys-libs/pam ) acl? ( virtual/acl ) addns? ( net-dns/bind-tools[gssapi] python_single_target_python3_6? ( dev-python/dnspython:=[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/dnspython:=[python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-python/dnspython:=[python_targets_python3_8(-)] ) ) ceph? ( sys-cluster/ceph ) cluster? ( net-libs/rpcsvc-proto !dev-db/ctdb ) cups? ( net-print/cups ) debug? ( dev-util/lttng-ust ) dmapi? ( sys-apps/dmapi ) fam? ( virtual/fam ) gpg? ( app-crypt/gpgme ) json? ( dev-libs/jansson ) ldap? ( net-nds/openldap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) snapper? ( sys-apps/dbus ) system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) systemd? ( sys-apps/systemd:0= ) zeroconf? ( net-dns/avahi ) python? ( python_single_target_python3_6? ( dev-lang/python:3.6[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[threads(+),xml(+)] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) ) client? ( net-fs/cifs-utils[ads?] ) selinux? ( sec-policy/selinux-samba ) !dev-perl/Parse-Yapp
+REQUIRED_USE=addc? ( python json winbind ) addns? ( python ) ads? ( acl ldap winbind ) cluster? ( ads ) gpg? ( addc ) python? ( ldap ) test? ( python ) ?? ( system-heimdal system-mitkrb5 ) ^^ ( python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 )
+RESTRICT=test
+SLOT=0
+SRC_URI=mirror://samba/stable/samba-4.11.13.tar.gz
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pam	3f746974e1cc47cabe3bd488c08cdc8e	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	waf-utils	0af0bf9207f47292d40e888b9687763c
+_md5_=8f24a78a7d7b6a56c08d7907a682a298
diff --git a/metadata/md5-cache/net-fs/sshfs-2.10-r4 b/metadata/md5-cache/net-fs/sshfs-2.10-r4
index 4201c27..968c37a 100644
--- a/metadata/md5-cache/net-fs/sshfs-2.10-r4
+++ b/metadata/md5-cache/net-fs/sshfs-2.10-r4
@@ -9,5 +9,5 @@
 RDEPEND=>=sys-fs/fuse-2.6.0_pre3:0 >=dev-libs/glib-2.4.2 >=net-misc/openssh-4.4
 SLOT=0
 SRC_URI=https://github.com/libfuse/sshfs/releases/download/sshfs-2.10/sshfs-2.10.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4cabcfb79f8138cd6d1322a20639de1d
diff --git a/metadata/md5-cache/net-libs/glib-networking-2.54.1 b/metadata/md5-cache/net-libs/glib-networking-2.54.1
index 7771451..56afd16 100644
--- a/metadata/md5-cache/net-libs/glib-networking-2.54.1
+++ b/metadata/md5-cache/net-libs/glib-networking-2.54.1
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-libs/glib-2.46.0:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] gnome? ( gnome-base/gsettings-desktop-schemas ) libproxy? ( >=net-libs/libproxy-0.4.11-r1:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) smartcard? ( >=app-crypt/p11-kit-0.18.4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-3:=[pkcs11,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ssl? ( app-misc/ca-certificates >=net-libs/gnutls-3:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
 SLOT=0
 SRC_URI=mirror://gnome/sources/glib-networking/2.54/glib-networking-2.54.1.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	gnome2	acac536f2c3bbcd312ac3faaa3e55e40	gnome2-utils	893e828f0f25f070f0b38d20c83c7670	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72	virtualx	e9162f65645513120b4e12863a5fa972	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	gnome2	acac536f2c3bbcd312ac3faaa3e55e40	gnome2-utils	893e828f0f25f070f0b38d20c83c7670	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72	virtualx	e9162f65645513120b4e12863a5fa972	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=95596d95f8274bb6c4ed6851949a63e6
diff --git a/metadata/md5-cache/net-libs/glib-networking-2.54.1-r1 b/metadata/md5-cache/net-libs/glib-networking-2.54.1-r1
index 7771451..56afd16 100644
--- a/metadata/md5-cache/net-libs/glib-networking-2.54.1-r1
+++ b/metadata/md5-cache/net-libs/glib-networking-2.54.1-r1
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-libs/glib-2.46.0:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] gnome? ( gnome-base/gsettings-desktop-schemas ) libproxy? ( >=net-libs/libproxy-0.4.11-r1:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) smartcard? ( >=app-crypt/p11-kit-0.18.4[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-3:=[pkcs11,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ssl? ( app-misc/ca-certificates >=net-libs/gnutls-3:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
 SLOT=0
 SRC_URI=mirror://gnome/sources/glib-networking/2.54/glib-networking-2.54.1.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	gnome2	acac536f2c3bbcd312ac3faaa3e55e40	gnome2-utils	893e828f0f25f070f0b38d20c83c7670	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72	virtualx	e9162f65645513120b4e12863a5fa972	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnome.org	532d56d07b9eace4831aaa817d2b756a	gnome2	acac536f2c3bbcd312ac3faaa3e55e40	gnome2-utils	893e828f0f25f070f0b38d20c83c7670	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72	virtualx	e9162f65645513120b4e12863a5fa972	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=95596d95f8274bb6c4ed6851949a63e6
diff --git a/metadata/md5-cache/net-libs/grpc-1.16.1 b/metadata/md5-cache/net-libs/grpc-1.16.1
index 51f8a76..c74e928 100644
--- a/metadata/md5-cache/net-libs/grpc-1.16.1
+++ b/metadata/md5-cache/net-libs/grpc-1.16.1
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-libs/openssl-1.0.2:0=[-bindist] !dev-libs/grpc dev-libs/protobuf:= net-dns/c-ares:= sys-libs/zlib:= systemtap? ( dev-util/systemtap )
 SLOT=0
 SRC_URI=https://github.com/grpc/grpc/archive/v1.16.1.tar.gz -> grpc-1.16.1.tar.gz
-_eclasses_=cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=bbf9eb0961c0ac299ce866d31a2a63db
diff --git a/metadata/md5-cache/net-libs/grpc-1.16.1-r6 b/metadata/md5-cache/net-libs/grpc-1.16.1-r6
index 51f8a76..c74e928 100644
--- a/metadata/md5-cache/net-libs/grpc-1.16.1-r6
+++ b/metadata/md5-cache/net-libs/grpc-1.16.1-r6
@@ -9,5 +9,5 @@
 RDEPEND=>=dev-libs/openssl-1.0.2:0=[-bindist] !dev-libs/grpc dev-libs/protobuf:= net-dns/c-ares:= sys-libs/zlib:= systemtap? ( dev-util/systemtap )
 SLOT=0
 SRC_URI=https://github.com/grpc/grpc/archive/v1.16.1.tar.gz -> grpc-1.16.1.tar.gz
-_eclasses_=cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=bbf9eb0961c0ac299ce866d31a2a63db
diff --git a/metadata/md5-cache/net-libs/grpc-web-1.0.3 b/metadata/md5-cache/net-libs/grpc-web-1.0.3
index eccc22c..18f3bb4 100644
--- a/metadata/md5-cache/net-libs/grpc-web-1.0.3
+++ b/metadata/md5-cache/net-libs/grpc-web-1.0.3
@@ -8,5 +8,5 @@
 RDEPEND=dev-libs/protobuf
 SLOT=0
 SRC_URI=https://github.com/grpc-web/grpc-web/archive/v.tar.gz -> grpc-web-1.0.3.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=dd92fae8844f22bb8e90a4331e80a7aa
diff --git a/metadata/md5-cache/net-libs/grpc-web-1.0.3-r1 b/metadata/md5-cache/net-libs/grpc-web-1.0.3-r1
index eccc22c..18f3bb4 100644
--- a/metadata/md5-cache/net-libs/grpc-web-1.0.3-r1
+++ b/metadata/md5-cache/net-libs/grpc-web-1.0.3-r1
@@ -8,5 +8,5 @@
 RDEPEND=dev-libs/protobuf
 SLOT=0
 SRC_URI=https://github.com/grpc-web/grpc-web/archive/v.tar.gz -> grpc-web-1.0.3.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=dd92fae8844f22bb8e90a4331e80a7aa
diff --git a/metadata/md5-cache/net-libs/libiio-0.21 b/metadata/md5-cache/net-libs/libiio-0.21
index 1861561..e826155 100644
--- a/metadata/md5-cache/net-libs/libiio-0.21
+++ b/metadata/md5-cache/net-libs/libiio-0.21
@@ -10,5 +10,5 @@
 RDEPEND=dev-libs/libxml2:= aio? ( dev-libs/libaio ) libiio_all? ( zeroconf? ( net-dns/avahi ) ) !dev-libs/libiio
 SLOT=0/0.21
 SRC_URI=https://github.com/analogdevicesinc/libiio/archive/v0.21.tar.gz -> libiio-0.21.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=755095ba302211fe0b57e01c449644e7
diff --git a/metadata/md5-cache/net-libs/libiio-0.21-r2 b/metadata/md5-cache/net-libs/libiio-0.21-r2
index 1861561..e826155 100644
--- a/metadata/md5-cache/net-libs/libiio-0.21-r2
+++ b/metadata/md5-cache/net-libs/libiio-0.21-r2
@@ -10,5 +10,5 @@
 RDEPEND=dev-libs/libxml2:= aio? ( dev-libs/libaio ) libiio_all? ( zeroconf? ( net-dns/avahi ) ) !dev-libs/libiio
 SLOT=0/0.21
 SRC_URI=https://github.com/analogdevicesinc/libiio/archive/v0.21.tar.gz -> libiio-0.21.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=755095ba302211fe0b57e01c449644e7
diff --git a/metadata/md5-cache/net-libs/libmbim-1.25.3-r75 b/metadata/md5-cache/net-libs/libmbim-1.25.3-r75
deleted file mode 100644
index 46abc50..0000000
--- a/metadata/md5-cache/net-libs/libmbim-1.25.3-r75
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure info install prepare setup test unpack
-DEPEND=>=dev-libs/glib-2.36 virtual/libgudev doc? ( dev-util/gtk-doc ) virtual/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=MBIM modem protocol helper library
-EAPI=6
-HOMEPAGE=http://cgit.freedesktop.org/libmbim/
-IUSE=-asan doc static-libs asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_b9755a1074ada9c532a88c68dd45adee57247c46
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=>=dev-libs/glib-2.36 virtual/libgudev
-SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=042b8d45935a0ae8216ab08150c74a53
diff --git a/metadata/md5-cache/net-libs/libmbim-1.25.5-r78 b/metadata/md5-cache/net-libs/libmbim-1.25.5-r78
new file mode 100644
index 0000000..3c57ce5
--- /dev/null
+++ b/metadata/md5-cache/net-libs/libmbim-1.25.5-r78
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure info install prepare setup test unpack
+DEPEND=>=dev-libs/glib-2.36 virtual/libgudev doc? ( dev-util/gtk-doc ) virtual/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=MBIM modem protocol helper library
+EAPI=6
+HOMEPAGE=http://cgit.freedesktop.org/libmbim/
+IUSE=-asan doc static-libs asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_468bdcc151b22569686839df708344e29549c084
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=>=dev-libs/glib-2.36 virtual/libgudev
+SLOT=0
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=5949760ab38c2f358a657e4bdca1896b
diff --git a/metadata/md5-cache/net-libs/libmbim-9999 b/metadata/md5-cache/net-libs/libmbim-9999
index 995f4c7..b8ef0e9 100644
--- a/metadata/md5-cache/net-libs/libmbim-9999
+++ b/metadata/md5-cache/net-libs/libmbim-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=>=dev-libs/glib-2.36 virtual/libgudev
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=6ffc81d2d408444460b01f7f7c758cf3
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=e9353de4f72ddd471e1c0fea112ca765
diff --git a/metadata/md5-cache/net-libs/libproxy-0.4.13-r2 b/metadata/md5-cache/net-libs/libproxy-0.4.13-r2
index 437d2ec..54276c8 100644
--- a/metadata/md5-cache/net-libs/libproxy-0.4.13-r2
+++ b/metadata/md5-cache/net-libs/libproxy-0.4.13-r2
@@ -11,5 +11,5 @@
 REQUIRED_USE=python? ( || ( python_targets_python2_7 ) )
 SLOT=0
 SRC_URI=https://github.com/libproxy/libproxy/archive/0.4.13.tar.gz -> libproxy-0.4.13.tar.gz
-_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	mono-env	59ca1177366cc9e14521d3501e9bb281	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	mono-env	59ca1177366cc9e14521d3501e9bb281	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=c12d2e85416ae33f76c76989c9e149ad
diff --git a/metadata/md5-cache/net-libs/libqmi-1.29.5-r103 b/metadata/md5-cache/net-libs/libqmi-1.29.5-r103
deleted file mode 100644
index 6ec8713..0000000
--- a/metadata/md5-cache/net-libs/libqmi-1.29.5-r103
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure info install prepare setup test unpack
-DEPEND=>=dev-libs/glib-2.36 mbim? ( >=net-libs/libmbim-1.18.0 ) qrtr? ( net-libs/libqrtr-glib ) doc? ( dev-util/gtk-doc ) sys-devel/autoconf-archive virtual/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=QMI modem protocol helper library
-EAPI=6
-HOMEPAGE=http://cgit.freedesktop.org/libqmi/
-IUSE=-asan doc mbim qrtr static-libs asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_dce4e660d9cd78ea98e76aebf8eed517b076c3a9
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=>=dev-libs/glib-2.36 mbim? ( >=net-libs/libmbim-1.18.0 ) qrtr? ( net-libs/libqrtr-glib )
-SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=0a9721fca963f7d63ca7291c1cb1659a
diff --git a/metadata/md5-cache/net-libs/libqmi-1.29.5-r105 b/metadata/md5-cache/net-libs/libqmi-1.29.5-r105
new file mode 100644
index 0000000..9bd70be
--- /dev/null
+++ b/metadata/md5-cache/net-libs/libqmi-1.29.5-r105
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure info install prepare setup test unpack
+DEPEND=>=dev-libs/glib-2.36 mbim? ( >=net-libs/libmbim-1.18.0 ) qrtr? ( net-libs/libqrtr-glib ) doc? ( dev-util/gtk-doc ) sys-devel/autoconf-archive virtual/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=QMI modem protocol helper library
+EAPI=6
+HOMEPAGE=http://cgit.freedesktop.org/libqmi/
+IUSE=-asan doc mbim qrtr static-libs asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_577b11fa1095676da86e7c189831caef08779226
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=>=dev-libs/glib-2.36 mbim? ( >=net-libs/libmbim-1.18.0 ) qrtr? ( net-libs/libqrtr-glib )
+SLOT=0
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=9f47374221c6dc943f9358e7ef260946
diff --git a/metadata/md5-cache/net-libs/libqmi-9999 b/metadata/md5-cache/net-libs/libqmi-9999
index 4aaadc2..9bb3ff0 100644
--- a/metadata/md5-cache/net-libs/libqmi-9999
+++ b/metadata/md5-cache/net-libs/libqmi-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=>=dev-libs/glib-2.36 mbim? ( >=net-libs/libmbim-1.18.0 ) qrtr? ( net-libs/libqrtr-glib )
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=3a94d0d03c1d30066b5146f3fae67d6d
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=38579376f9b0bb478618fa565f67344d
diff --git a/metadata/md5-cache/net-libs/libqrtr-0.0.1-r23 b/metadata/md5-cache/net-libs/libqrtr-0.0.1-r23
deleted file mode 100644
index 07cd420..0000000
--- a/metadata/md5-cache/net-libs/libqrtr-0.0.1-r23
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure info install preinst prepare setup test unpack
-DEPEND=sys-kernel/linux-headers virtual/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
-DESCRIPTION=QRTR userspace helper library
-EAPI=5
-HOMEPAGE=https://github.com/andersson/qrtr
-IUSE=-asan -qrtr_ns asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_9fc5b98c54615474f4c167d5034b6eb15475e046
-KEYWORDS=*
-LICENSE=BSD
-PROPERTIES=live
-RDEPEND=sys-apps/baselayout
-SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=ff8fd5f0f4cc84865bf1b2c5ecc87007
diff --git a/metadata/md5-cache/net-libs/libqrtr-0.0.1-r26 b/metadata/md5-cache/net-libs/libqrtr-0.0.1-r26
new file mode 100644
index 0000000..e2ae5be
--- /dev/null
+++ b/metadata/md5-cache/net-libs/libqrtr-0.0.1-r26
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure info install preinst prepare setup test unpack
+DEPEND=sys-kernel/linux-headers virtual/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
+DESCRIPTION=QRTR userspace helper library
+EAPI=5
+HOMEPAGE=https://github.com/andersson/qrtr
+IUSE=-asan -qrtr_ns asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_9fc5b98c54615474f4c167d5034b6eb15475e046
+KEYWORDS=*
+LICENSE=BSD
+PROPERTIES=live
+RDEPEND=sys-apps/baselayout
+SLOT=0
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=ff8fd5f0f4cc84865bf1b2c5ecc87007
diff --git a/metadata/md5-cache/net-libs/libqrtr-9999 b/metadata/md5-cache/net-libs/libqrtr-9999
index 59e4138..d963343 100644
--- a/metadata/md5-cache/net-libs/libqrtr-9999
+++ b/metadata/md5-cache/net-libs/libqrtr-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=sys-apps/baselayout
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3624a123e7f8fbb9468470dcb40086cf
diff --git a/metadata/md5-cache/net-libs/libqrtr-glib-1.1.0-r4 b/metadata/md5-cache/net-libs/libqrtr-glib-1.1.0-r4
deleted file mode 100644
index e3311d9..0000000
--- a/metadata/md5-cache/net-libs/libqrtr-glib-1.1.0-r4
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815 dev-vcs/git
-DEFINED_PHASES=configure info install prepare setup test unpack
-DEPEND=>=dev-libs/glib-2.36:2 doc? ( dev-util/gtk-doc ) sys-devel/autoconf-archive !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=QRTR modem protocol helper library
-EAPI=7
-HOMEPAGE=https://gitlab.freedesktop.org/mobile-broadband/libqrtr-glib
-IUSE=doc static-libs asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_4f570b6770ab57ec0d70319dafc98cef6a6c6062
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=>=dev-libs/glib-2.36:2
-SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3b4c7b7a5146c805d593d2031f8d7973
diff --git a/metadata/md5-cache/net-libs/libqrtr-glib-1.1.0-r6 b/metadata/md5-cache/net-libs/libqrtr-glib-1.1.0-r6
new file mode 100644
index 0000000..74b0083
--- /dev/null
+++ b/metadata/md5-cache/net-libs/libqrtr-glib-1.1.0-r6
@@ -0,0 +1,14 @@
+BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815 dev-vcs/git
+DEFINED_PHASES=configure info install prepare setup test unpack
+DEPEND=>=dev-libs/glib-2.36:2 doc? ( dev-util/gtk-doc ) sys-devel/autoconf-archive !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=QRTR modem protocol helper library
+EAPI=7
+HOMEPAGE=https://gitlab.freedesktop.org/mobile-broadband/libqrtr-glib
+IUSE=doc static-libs asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_4ca2d2a5acfaeee87c56a2055543ac95b3ecbe34
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=>=dev-libs/glib-2.36:2
+SLOT=0
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e11a653dd8d572a8af41ef1193d4d1f0
diff --git a/metadata/md5-cache/net-libs/libqrtr-glib-9999 b/metadata/md5-cache/net-libs/libqrtr-glib-9999
index b4a619d..0e17659 100644
--- a/metadata/md5-cache/net-libs/libqrtr-glib-9999
+++ b/metadata/md5-cache/net-libs/libqrtr-glib-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=>=dev-libs/glib-2.36:2
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=346172b49561b8e422bb3cf55bccba92
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fdb83ec9eb7fc14686523c435e9eb4ee
diff --git a/metadata/md5-cache/net-libs/librmnetctl-1.0_p20180801 b/metadata/md5-cache/net-libs/librmnetctl-1.0_p20180801
index b6c59b0..c49079f 100644
--- a/metadata/md5-cache/net-libs/librmnetctl-1.0_p20180801
+++ b/metadata/md5-cache/net-libs/librmnetctl-1.0_p20180801
@@ -7,5 +7,5 @@
 LICENSE=BSD
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/librmnetctl-1.0_p20180801.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6e8ce602a93a250834d28d45529a8109
diff --git a/metadata/md5-cache/net-libs/librmnetctl-1.0_p20180801-r3 b/metadata/md5-cache/net-libs/librmnetctl-1.0_p20180801-r3
index b6c59b0..c49079f 100644
--- a/metadata/md5-cache/net-libs/librmnetctl-1.0_p20180801-r3
+++ b/metadata/md5-cache/net-libs/librmnetctl-1.0_p20180801-r3
@@ -7,5 +7,5 @@
 LICENSE=BSD
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/librmnetctl-1.0_p20180801.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6e8ce602a93a250834d28d45529a8109
diff --git a/metadata/md5-cache/net-libs/rpcsvc-proto-1.3.1-r3 b/metadata/md5-cache/net-libs/rpcsvc-proto-1.3.1-r3
index d704f19..ce56f04 100644
--- a/metadata/md5-cache/net-libs/rpcsvc-proto-1.3.1-r3
+++ b/metadata/md5-cache/net-libs/rpcsvc-proto-1.3.1-r3
@@ -8,5 +8,5 @@
 RDEPEND=!<sys-libs/glibc-2.26
 SLOT=0
 SRC_URI=https://github.com/thkukuk/rpcsvc-proto/archive/v1.3.1.tar.gz -> rpcsvc-proto-1.3.1.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c8327223b86305bd39ae13d0223c52ae
diff --git a/metadata/md5-cache/net-misc/dhcpcd-6.8.2 b/metadata/md5-cache/net-misc/dhcpcd-6.8.2
index e664fe5..6eaddaa 100644
--- a/metadata/md5-cache/net-misc/dhcpcd-6.8.2
+++ b/metadata/md5-cache/net-misc/dhcpcd-6.8.2
@@ -9,5 +9,5 @@
 RDEPEND=udev? ( virtual/udev ) dbus? ( sys-apps/dbus ) sys-apps/baselayout
 SLOT=0
 SRC_URI=http://roy.marples.name/downloads/dhcpcd/dhcpcd-6.8.2.tar.bz2
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4762b257f827cb58db7199c6d20488ee
diff --git a/metadata/md5-cache/net-misc/dhcpcd-6.8.2-r24 b/metadata/md5-cache/net-misc/dhcpcd-6.8.2-r24
index e664fe5..6eaddaa 100644
--- a/metadata/md5-cache/net-misc/dhcpcd-6.8.2-r24
+++ b/metadata/md5-cache/net-misc/dhcpcd-6.8.2-r24
@@ -9,5 +9,5 @@
 RDEPEND=udev? ( virtual/udev ) dbus? ( sys-apps/dbus ) sys-apps/baselayout
 SLOT=0
 SRC_URI=http://roy.marples.name/downloads/dhcpcd/dhcpcd-6.8.2.tar.bz2
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4762b257f827cb58db7199c6d20488ee
diff --git a/metadata/md5-cache/net-misc/dhcpcd-7.2.5 b/metadata/md5-cache/net-misc/dhcpcd-7.2.5
new file mode 100644
index 0000000..63a2f17
--- /dev/null
+++ b/metadata/md5-cache/net-misc/dhcpcd-7.2.5
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure install postinst preinst prepare
+DEPEND=udev? ( virtual/udev ) dbus? ( sys-apps/dbus ) virtual/pkgconfig sys-apps/baselayout
+DESCRIPTION=A fully featured, yet light weight RFC2131 compliant DHCP client
+EAPI=5
+HOMEPAGE=http://roy.marples.name/projects/dhcpcd/
+IUSE=elibc_glibc +embedded ipv6 kernel_linux +udev +dbus asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=BSD-2
+RDEPEND=udev? ( virtual/udev ) dbus? ( sys-apps/dbus ) sys-apps/baselayout
+SLOT=0
+SRC_URI=https://github.com/NetworkConfiguration/dhcpcd/archive/refs/tags/dhcpcd-7.2.5.tar.xz
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=1245e1b64811669b548611be559b55e7
diff --git a/metadata/md5-cache/net-misc/diag-0.1_p20200329 b/metadata/md5-cache/net-misc/diag-0.1_p20200329
deleted file mode 100644
index b189c7f..0000000
--- a/metadata/md5-cache/net-misc/diag-0.1_p20200329
+++ /dev/null
@@ -1,11 +0,0 @@
-DEFINED_PHASES=compile install prepare
-DEPEND=net-libs/libqrtr:= virtual/udev:=
-DESCRIPTION=DIAG channel diagnostics communication tool
-EAPI=7
-HOMEPAGE=https://github.com/andersson/diag
-KEYWORDS=*
-LICENSE=BSD
-RDEPEND=net-libs/libqrtr:= virtual/udev:=
-SLOT=0
-SRC_URI=https://github.com/andersson/diag/archive/d06e599d197790c9e84ac41a51bf124a69768c4f.tar.gz -> diag-0.1_p20200329.tar.gz
-_md5_=89d971ca6bd2fe7996b58f5aed40e04e
diff --git a/metadata/md5-cache/net-misc/diag-0.1_p20200329-r1 b/metadata/md5-cache/net-misc/diag-0.1_p20200329-r1
deleted file mode 100644
index b189c7f..0000000
--- a/metadata/md5-cache/net-misc/diag-0.1_p20200329-r1
+++ /dev/null
@@ -1,11 +0,0 @@
-DEFINED_PHASES=compile install prepare
-DEPEND=net-libs/libqrtr:= virtual/udev:=
-DESCRIPTION=DIAG channel diagnostics communication tool
-EAPI=7
-HOMEPAGE=https://github.com/andersson/diag
-KEYWORDS=*
-LICENSE=BSD
-RDEPEND=net-libs/libqrtr:= virtual/udev:=
-SLOT=0
-SRC_URI=https://github.com/andersson/diag/archive/d06e599d197790c9e84ac41a51bf124a69768c4f.tar.gz -> diag-0.1_p20200329.tar.gz
-_md5_=89d971ca6bd2fe7996b58f5aed40e04e
diff --git a/metadata/md5-cache/net-misc/diag-0.1_p20210329 b/metadata/md5-cache/net-misc/diag-0.1_p20210329
new file mode 100644
index 0000000..2b97351
--- /dev/null
+++ b/metadata/md5-cache/net-misc/diag-0.1_p20210329
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile install prepare
+DEPEND=net-libs/libqrtr:= virtual/udev:=
+DESCRIPTION=DIAG channel diagnostics communication tool
+EAPI=7
+HOMEPAGE=https://github.com/andersson/diag
+KEYWORDS=*
+LICENSE=BSD
+RDEPEND=net-libs/libqrtr:= virtual/udev:=
+SLOT=0
+SRC_URI=https://github.com/andersson/diag/archive/d06e599d197790c9e84ac41a51bf124a69768c4f.tar.gz -> diag-0.1_p20210329.tar.gz
+_md5_=2f61e183dae1183bfee3562ee81b16bb
diff --git a/metadata/md5-cache/net-misc/diag-0.1_p20210329-r1 b/metadata/md5-cache/net-misc/diag-0.1_p20210329-r1
new file mode 100644
index 0000000..2b97351
--- /dev/null
+++ b/metadata/md5-cache/net-misc/diag-0.1_p20210329-r1
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile install prepare
+DEPEND=net-libs/libqrtr:= virtual/udev:=
+DESCRIPTION=DIAG channel diagnostics communication tool
+EAPI=7
+HOMEPAGE=https://github.com/andersson/diag
+KEYWORDS=*
+LICENSE=BSD
+RDEPEND=net-libs/libqrtr:= virtual/udev:=
+SLOT=0
+SRC_URI=https://github.com/andersson/diag/archive/d06e599d197790c9e84ac41a51bf124a69768c4f.tar.gz -> diag-0.1_p20210329.tar.gz
+_md5_=2f61e183dae1183bfee3562ee81b16bb
diff --git a/metadata/md5-cache/net-misc/gsutil-4.67 b/metadata/md5-cache/net-misc/gsutil-4.67
new file mode 100644
index 0000000..80f75a1
--- /dev/null
+++ b/metadata/md5-cache/net-misc/gsutil-4.67
@@ -0,0 +1,15 @@
+BDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure install prepare test unpack
+DEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/argcomplete-1.9.4[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/crcmod-1.7[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/fasteners-0.14.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/gcs-oauth2-boto-plugin-2.7[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/google-apitools-0.5.32[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/google-reauth-python-0.1.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/httplib2-0.18[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/mock-2.0.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/monotonic-1.4[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/pyopenssl-0.13[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/retry-decorator-1.0.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/six-1.12.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DESCRIPTION=command line tool for interacting with cloud storage services
+EAPI=7
+HOMEPAGE=https://github.com/GoogleCloudPlatform/gsutil
+IUSE=python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=Apache-2.0
+RDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/argcomplete-1.9.4[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/crcmod-1.7[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/fasteners-0.14.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/gcs-oauth2-boto-plugin-2.7[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/google-apitools-0.5.32[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/google-reauth-python-0.1.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/httplib2-0.18[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/mock-2.0.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/monotonic-1.4[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/pyopenssl-0.13[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/retry-decorator-1.0.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] >=dev-python/six-1.12.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+SLOT=0/4.67
+SRC_URI=http://commondatastorage.googleapis.com/pub/gsutil-4.67.tar.gz https://github.com/gsutil-mirrors/boto/archive/9d356f922fcd27be141cda576571c3c4002b1b4d.tar.gz -> gsutil-4.67-boto.tar.gz https://github.com/gsutil-mirrors/oauth2client/archive/350c1fc5ff81dec26777789c1764c420469c6b67.tar.gz -> gsutil-4.67-oauth2client.tar.gz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=88e1df5d132e5c99e7e0fcd1df9f3d8b
diff --git a/metadata/md5-cache/net-misc/htpdate-1.0.4 b/metadata/md5-cache/net-misc/htpdate-1.0.4
index e50733d..a1b896b 100644
--- a/metadata/md5-cache/net-misc/htpdate-1.0.4
+++ b/metadata/md5-cache/net-misc/htpdate-1.0.4
@@ -6,5 +6,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=http://www.clevervest.com/htp/archive/c/htpdate-1.0.4.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1167973faa627f5d3d696f8ca93a8337
diff --git a/metadata/md5-cache/net-misc/htpdate-1.0.4-r7 b/metadata/md5-cache/net-misc/htpdate-1.0.4-r7
index e50733d..a1b896b 100644
--- a/metadata/md5-cache/net-misc/htpdate-1.0.4-r7
+++ b/metadata/md5-cache/net-misc/htpdate-1.0.4-r7
@@ -6,5 +6,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=http://www.clevervest.com/htp/archive/c/htpdate-1.0.4.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1167973faa627f5d3d696f8ca93a8337
diff --git a/metadata/md5-cache/net-misc/igmpproxy-0.2 b/metadata/md5-cache/net-misc/igmpproxy-0.2
index e437b58..6dcf386 100644
--- a/metadata/md5-cache/net-misc/igmpproxy-0.2
+++ b/metadata/md5-cache/net-misc/igmpproxy-0.2
@@ -8,5 +8,5 @@
 LICENSE=GPL-2 Stanford
 SLOT=0
 SRC_URI=https://github.com/pali/igmpproxy/releases/download/0.2/igmpproxy-0.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=73f3fea65a838700af2f019f9dfa883c
diff --git a/metadata/md5-cache/net-misc/igmpproxy-0.2-r4 b/metadata/md5-cache/net-misc/igmpproxy-0.2-r4
index e437b58..6dcf386 100644
--- a/metadata/md5-cache/net-misc/igmpproxy-0.2-r4
+++ b/metadata/md5-cache/net-misc/igmpproxy-0.2-r4
@@ -8,5 +8,5 @@
 LICENSE=GPL-2 Stanford
 SLOT=0
 SRC_URI=https://github.com/pali/igmpproxy/releases/download/0.2/igmpproxy-0.2.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=73f3fea65a838700af2f019f9dfa883c
diff --git a/metadata/md5-cache/net-misc/modemmanager-next-1.17.0-r417 b/metadata/md5-cache/net-misc/modemmanager-next-1.17.0-r417
deleted file mode 100644
index 05ab856..0000000
--- a/metadata/md5-cache/net-misc/modemmanager-next-1.17.0-r417
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure info install preinst prepare setup test unpack
-DEPEND=>=dev-libs/glib-2.36 >=sys-apps/dbus-1.2 dev-libs/dbus-glib net-dialup/ppp mbim? ( net-libs/libmbim ) qmi? ( net-libs/libqmi ) qrtr? ( net-libs/libqrtr-glib ) !net-misc/modemmanager virtual/libgudev dev-util/pkgconfig dev-util/intltool >=dev-util/gtk-doc-1.13 !net-misc/modemmanager-next-interfaces !net-misc/modemmanager >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 virtual/pkgconfig virtual/pkgconfig sys-apps/baselayout
-DESCRIPTION=Modem and mobile broadband management libraries
-EAPI=6
-HOMEPAGE=http://mail.gnome.org/archives/networkmanager-list/2008-July/msg00274.html
-IUSE=doc mbim systemd qmi qrtr asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_cfa9bb35e4db8f971b84b1327cd2583d2ab1718e
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=>=dev-libs/glib-2.36 >=sys-apps/dbus-1.2 dev-libs/dbus-glib net-dialup/ppp mbim? ( net-libs/libmbim ) qmi? ( net-libs/libqmi ) qrtr? ( net-libs/libqrtr-glib ) !net-misc/modemmanager sys-apps/baselayout
-SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=0858c993eff934156393671485b69847
diff --git a/metadata/md5-cache/net-misc/modemmanager-next-1.17.0-r430 b/metadata/md5-cache/net-misc/modemmanager-next-1.17.0-r430
new file mode 100644
index 0000000..a696745
--- /dev/null
+++ b/metadata/md5-cache/net-misc/modemmanager-next-1.17.0-r430
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure info install preinst prepare setup test unpack
+DEPEND=>=dev-libs/glib-2.36 >=sys-apps/dbus-1.2 dev-libs/dbus-glib net-dialup/ppp mbim? ( net-libs/libmbim ) qmi? ( net-libs/libqmi ) qrtr? ( net-libs/libqrtr-glib ) !net-misc/modemmanager virtual/libgudev dev-util/pkgconfig dev-util/intltool >=dev-util/gtk-doc-1.13 !net-misc/modemmanager-next-interfaces !net-misc/modemmanager >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 virtual/pkgconfig virtual/pkgconfig sys-apps/baselayout
+DESCRIPTION=Modem and mobile broadband management libraries
+EAPI=6
+HOMEPAGE=http://mail.gnome.org/archives/networkmanager-list/2008-July/msg00274.html
+IUSE=doc mbim systemd qmi qrtr asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_cecdbe635d8e52398ee304ef74d9194fdc0328bc
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=>=dev-libs/glib-2.36 >=sys-apps/dbus-1.2 dev-libs/dbus-glib net-dialup/ppp mbim? ( net-libs/libmbim ) qmi? ( net-libs/libqmi ) qrtr? ( net-libs/libqrtr-glib ) !net-misc/modemmanager sys-apps/baselayout
+SLOT=0
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=169af8d1dfefd16b836633ca00e0286e
diff --git a/metadata/md5-cache/net-misc/modemmanager-next-9999 b/metadata/md5-cache/net-misc/modemmanager-next-9999
index 3ccfd6c..01c928a 100644
--- a/metadata/md5-cache/net-misc/modemmanager-next-9999
+++ b/metadata/md5-cache/net-misc/modemmanager-next-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=>=dev-libs/glib-2.36 >=sys-apps/dbus-1.2 dev-libs/dbus-glib net-dialup/ppp mbim? ( net-libs/libmbim ) qmi? ( net-libs/libqmi ) qrtr? ( net-libs/libqrtr-glib ) !net-misc/modemmanager sys-apps/baselayout
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=99bb8193331e4e5edf1b08e9e1c2e7bb
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=64249729196d54b88239e6ce1dca2152
diff --git a/metadata/md5-cache/net-misc/qc-netmgr-0.1_p20201006 b/metadata/md5-cache/net-misc/qc-netmgr-0.1_p20201006
index fdde69f..4a2c570 100644
--- a/metadata/md5-cache/net-misc/qc-netmgr-0.1_p20201006
+++ b/metadata/md5-cache/net-misc/qc-netmgr-0.1_p20201006
@@ -9,5 +9,5 @@
 RDEPEND=net-libs/librmnetctl net-libs/libqrtr sys-apps/baselayout
 SLOT=0
 SRC_URI=https://source.codeaurora.org/quic/dataservices/modem-data-manager/log/?h=LC.UM.1.0 -> qc-netmgr-0.1_p20201006.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=390ab6718e4f85e9d8f8338756491390
diff --git a/metadata/md5-cache/net-misc/qc-netmgr-0.1_p20201006-r5 b/metadata/md5-cache/net-misc/qc-netmgr-0.1_p20201006-r5
index fdde69f..4a2c570 100644
--- a/metadata/md5-cache/net-misc/qc-netmgr-0.1_p20201006-r5
+++ b/metadata/md5-cache/net-misc/qc-netmgr-0.1_p20201006-r5
@@ -9,5 +9,5 @@
 RDEPEND=net-libs/librmnetctl net-libs/libqrtr sys-apps/baselayout
 SLOT=0
 SRC_URI=https://source.codeaurora.org/quic/dataservices/modem-data-manager/log/?h=LC.UM.1.0 -> qc-netmgr-0.1_p20201006.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=390ab6718e4f85e9d8f8338756491390
diff --git a/metadata/md5-cache/net-misc/qmi-ping-0.1_p20180606 b/metadata/md5-cache/net-misc/qmi-ping-0.1_p20180606
index 674a6b2..58f5fe4 100644
--- a/metadata/md5-cache/net-misc/qmi-ping-0.1_p20180606
+++ b/metadata/md5-cache/net-misc/qmi-ping-0.1_p20180606
@@ -9,5 +9,5 @@
 RDEPEND=net-libs/libqrtr
 SLOT=0
 SRC_URI=https://github.com/andersson/qmi-ping/archive/36799ff5464a7ee384dcf3ad3a8f1d2b107f062e.tar.gz -> qmi-ping-0.1_p20180606.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c730f8df5ef21317605719ec15821265
diff --git a/metadata/md5-cache/net-misc/qmi-ping-0.1_p20180606-r2 b/metadata/md5-cache/net-misc/qmi-ping-0.1_p20180606-r2
index 674a6b2..58f5fe4 100644
--- a/metadata/md5-cache/net-misc/qmi-ping-0.1_p20180606-r2
+++ b/metadata/md5-cache/net-misc/qmi-ping-0.1_p20180606-r2
@@ -9,5 +9,5 @@
 RDEPEND=net-libs/libqrtr
 SLOT=0
 SRC_URI=https://github.com/andersson/qmi-ping/archive/36799ff5464a7ee384dcf3ad3a8f1d2b107f062e.tar.gz -> qmi-ping-0.1_p20180606.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c730f8df5ef21317605719ec15821265
diff --git a/metadata/md5-cache/net-misc/radsecproxy-1.6.6 b/metadata/md5-cache/net-misc/radsecproxy-1.6.6
index 41dc087..0cc27eb 100644
--- a/metadata/md5-cache/net-misc/radsecproxy-1.6.6
+++ b/metadata/md5-cache/net-misc/radsecproxy-1.6.6
@@ -8,5 +8,5 @@
 RDEPEND=dev-libs/openssl:0=
 SLOT=0
 SRC_URI=https://software.uninett.no/radsecproxy/radsecproxy-1.6.6.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=11406b19cb631de5ba64cd4e95ecd293
diff --git a/metadata/md5-cache/net-misc/radsecproxy-1.6.6-r2 b/metadata/md5-cache/net-misc/radsecproxy-1.6.6-r2
index 41dc087..0cc27eb 100644
--- a/metadata/md5-cache/net-misc/radsecproxy-1.6.6-r2
+++ b/metadata/md5-cache/net-misc/radsecproxy-1.6.6-r2
@@ -8,5 +8,5 @@
 RDEPEND=dev-libs/openssl:0=
 SLOT=0
 SRC_URI=https://software.uninett.no/radsecproxy/radsecproxy-1.6.6.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=11406b19cb631de5ba64cd4e95ecd293
diff --git a/metadata/md5-cache/net-misc/rmtfs-0.3_p20210408 b/metadata/md5-cache/net-misc/rmtfs-0.3_p20210408
index 1456af7..358e897 100644
--- a/metadata/md5-cache/net-misc/rmtfs-0.3_p20210408
+++ b/metadata/md5-cache/net-misc/rmtfs-0.3_p20210408
@@ -9,5 +9,5 @@
 RDEPEND=net-libs/libqrtr:= virtual/udev:= sys-apps/baselayout
 SLOT=0
 SRC_URI=https://github.com/andersson/rmtfs/archive/293ab8babb27ac0f24247bb101fed9420c629c29.tar.gz -> rmtfs-0.3_p20210408.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=c2ce1023eb53970f2f03b40ddf7d3150
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=9126b568e8e3995f2567e5433d1fe9b2
diff --git a/metadata/md5-cache/net-misc/rmtfs-0.3_p20210408-r2 b/metadata/md5-cache/net-misc/rmtfs-0.3_p20210408-r2
deleted file mode 100644
index 1456af7..0000000
--- a/metadata/md5-cache/net-misc/rmtfs-0.3_p20210408-r2
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure install preinst
-DEPEND=net-libs/libqrtr:= virtual/udev:= sys-apps/baselayout
-DESCRIPTION=QMI Remote File System Server
-EAPI=7
-HOMEPAGE=https://github.com/andersson/rmtfs
-IUSE=asan +seccomp asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=BSD
-RDEPEND=net-libs/libqrtr:= virtual/udev:= sys-apps/baselayout
-SLOT=0
-SRC_URI=https://github.com/andersson/rmtfs/archive/293ab8babb27ac0f24247bb101fed9420c629c29.tar.gz -> rmtfs-0.3_p20210408.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=c2ce1023eb53970f2f03b40ddf7d3150
diff --git a/metadata/md5-cache/net-misc/rmtfs-0.3_p20210408-r3 b/metadata/md5-cache/net-misc/rmtfs-0.3_p20210408-r3
new file mode 100644
index 0000000..358e897
--- /dev/null
+++ b/metadata/md5-cache/net-misc/rmtfs-0.3_p20210408-r3
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure install preinst
+DEPEND=net-libs/libqrtr:= virtual/udev:= sys-apps/baselayout
+DESCRIPTION=QMI Remote File System Server
+EAPI=7
+HOMEPAGE=https://github.com/andersson/rmtfs
+IUSE=asan +seccomp asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=BSD
+RDEPEND=net-libs/libqrtr:= virtual/udev:= sys-apps/baselayout
+SLOT=0
+SRC_URI=https://github.com/andersson/rmtfs/archive/293ab8babb27ac0f24247bb101fed9420c629c29.tar.gz -> rmtfs-0.3_p20210408.tar.gz
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=9126b568e8e3995f2567e5433d1fe9b2
diff --git a/metadata/md5-cache/net-misc/rpmsgexport-0.1_p20180228 b/metadata/md5-cache/net-misc/rpmsgexport-0.1_p20180228
index c895b05..a78a849f 100644
--- a/metadata/md5-cache/net-misc/rpmsgexport-0.1_p20180228
+++ b/metadata/md5-cache/net-misc/rpmsgexport-0.1_p20180228
@@ -7,5 +7,5 @@
 LICENSE=BSD
 SLOT=0
 SRC_URI=https://github.com/andersson/rpmsgexport/archive/324d88d668f36c6a5e6a9c2003a050b8a5a3cd60.tar.gz -> rpmsgexport-0.1_p20180228.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=684a9f262ee917ad8d55caa32d1100aa
diff --git a/metadata/md5-cache/net-misc/rpmsgexport-0.1_p20180228-r2 b/metadata/md5-cache/net-misc/rpmsgexport-0.1_p20180228-r2
index c895b05..a78a849f 100644
--- a/metadata/md5-cache/net-misc/rpmsgexport-0.1_p20180228-r2
+++ b/metadata/md5-cache/net-misc/rpmsgexport-0.1_p20180228-r2
@@ -7,5 +7,5 @@
 LICENSE=BSD
 SLOT=0
 SRC_URI=https://github.com/andersson/rpmsgexport/archive/324d88d668f36c6a5e6a9c2003a050b8a5a3cd60.tar.gz -> rpmsgexport-0.1_p20180228.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=684a9f262ee917ad8d55caa32d1100aa
diff --git a/metadata/md5-cache/net-misc/swconfig-14.07 b/metadata/md5-cache/net-misc/swconfig-14.07
index 5f263f4..31a4e16 100644
--- a/metadata/md5-cache/net-misc/swconfig-14.07
+++ b/metadata/md5-cache/net-misc/swconfig-14.07
@@ -8,5 +8,5 @@
 RDEPEND=dev-libs/libnl:3
 SLOT=0
 SRC_URI=http://commondatastorage.googleapis.com/chromeos-localmirror/distfiles/swconfig-14.07.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e777fc52138bc2e8d1f56428b273883d
diff --git a/metadata/md5-cache/net-misc/tlsdate-0.0.5-r100 b/metadata/md5-cache/net-misc/tlsdate-0.0.5-r100
new file mode 100644
index 0000000..82b4ffb
--- /dev/null
+++ b/metadata/md5-cache/net-misc/tlsdate-0.0.5-r100
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install preinst prepare setup unpack
+DEPEND=dev-libs/openssl:0= dev-libs/libevent dbus? ( sys-apps/dbus ) >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 virtual/pkgconfig sys-apps/baselayout
+DESCRIPTION=Update local time over HTTPS
+EAPI=6
+HOMEPAGE=https://github.com/ioerror/tlsdate
+IUSE=-asan +dbus +seccomp systemd asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_aadb9cf0c326d4d0b1e9fd4d12b0192cdba2d8f8 cros-debug
+KEYWORDS=*
+LICENSE=BSD
+PROPERTIES=live
+RDEPEND=dev-libs/openssl:0= dev-libs/libevent dbus? ( sys-apps/dbus ) chromeos-base/chromeos-ca-certificates sys-apps/baselayout
+SLOT=0
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=86096401b7ac25cf88c5bca843541c9f
diff --git a/metadata/md5-cache/net-misc/tlsdate-0.0.5-r95 b/metadata/md5-cache/net-misc/tlsdate-0.0.5-r95
deleted file mode 100644
index ab8fee1..0000000
--- a/metadata/md5-cache/net-misc/tlsdate-0.0.5-r95
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install preinst prepare setup unpack
-DEPEND=dev-libs/openssl:0= dev-libs/libevent dbus? ( sys-apps/dbus ) >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 virtual/pkgconfig sys-apps/baselayout
-DESCRIPTION=Update local time over HTTPS
-EAPI=6
-HOMEPAGE=https://github.com/ioerror/tlsdate
-IUSE=-asan +dbus +seccomp systemd asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ac75e4e94cf1c6c37833513159b83d64b3de9104 cros-debug
-KEYWORDS=*
-LICENSE=BSD
-PROPERTIES=live
-RDEPEND=dev-libs/openssl:0= dev-libs/libevent dbus? ( sys-apps/dbus ) chromeos-base/chromeos-ca-certificates sys-apps/baselayout
-SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=fef6227d1aff0003c5a4f8441c2e8f63
diff --git a/metadata/md5-cache/net-misc/tlsdate-9999 b/metadata/md5-cache/net-misc/tlsdate-9999
index cb90af4..a41a65b 100644
--- a/metadata/md5-cache/net-misc/tlsdate-9999
+++ b/metadata/md5-cache/net-misc/tlsdate-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=dev-libs/openssl:0= dev-libs/libevent dbus? ( sys-apps/dbus ) chromeos-base/chromeos-ca-certificates sys-apps/baselayout
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=bf89cabbedd0888b18f23a1f77bcef00
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=e9cf83df6b68a14e549c579f4dbe5349
diff --git a/metadata/md5-cache/net-misc/usbip-4.19-r7 b/metadata/md5-cache/net-misc/usbip-4.19-r7
index a03e310..e43bc7a 100644
--- a/metadata/md5-cache/net-misc/usbip-4.19-r7
+++ b/metadata/md5-cache/net-misc/usbip-4.19-r7
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=>=dev-libs/glib-2.6 sys-apps/hwids >=sys-kernel/linux-headers-3.17 virtual/libudev tcpd? ( sys-apps/tcp-wrappers )
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8351d29c2aed6e5da26486c23b69ab7b
diff --git a/metadata/md5-cache/net-misc/usbip-9999 b/metadata/md5-cache/net-misc/usbip-9999
index feed1b2..eb73571 100644
--- a/metadata/md5-cache/net-misc/usbip-9999
+++ b/metadata/md5-cache/net-misc/usbip-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=>=dev-libs/glib-2.6 sys-apps/hwids >=sys-kernel/linux-headers-3.17 virtual/libudev tcpd? ( sys-apps/tcp-wrappers )
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=89b492a0773470a756de8a0e166da868
diff --git a/metadata/md5-cache/net-nds/rpcbind-0.2.4 b/metadata/md5-cache/net-nds/rpcbind-0.2.4
index 2ee79e0..0291aa6 100644
--- a/metadata/md5-cache/net-nds/rpcbind-0.2.4
+++ b/metadata/md5-cache/net-nds/rpcbind-0.2.4
@@ -9,5 +9,5 @@
 RDEPEND=>=net-libs/libtirpc-1.0:= systemd? ( sys-apps/systemd:= ) tcpd? ( sys-apps/tcp-wrappers ) selinux? ( sec-policy/selinux-rpcbind )
 SLOT=0
 SRC_URI=mirror://sourceforge/rpcbind/rpcbind-0.2.4.tar.bz2
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d6adcf1e1bc28dbae894f9e8fab9947a
diff --git a/metadata/md5-cache/net-nds/rpcbind-0.2.4-r7 b/metadata/md5-cache/net-nds/rpcbind-0.2.4-r7
deleted file mode 100644
index 2ee79e0..0000000
--- a/metadata/md5-cache/net-nds/rpcbind-0.2.4-r7
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure install prepare
-DEPEND=>=net-libs/libtirpc-1.0:= systemd? ( sys-apps/systemd:= ) tcpd? ( sys-apps/tcp-wrappers ) virtual/pkgconfig virtual/pkgconfig
-DESCRIPTION=portmap replacement which supports RPC over various protocols
-EAPI=5
-HOMEPAGE=https://sourceforge.net/projects/rpcbind/
-IUSE=debug selinux systemd tcpd warmstarts
-KEYWORDS=*
-LICENSE=BSD
-RDEPEND=>=net-libs/libtirpc-1.0:= systemd? ( sys-apps/systemd:= ) tcpd? ( sys-apps/tcp-wrappers ) selinux? ( sec-policy/selinux-rpcbind )
-SLOT=0
-SRC_URI=mirror://sourceforge/rpcbind/rpcbind-0.2.4.tar.bz2
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=d6adcf1e1bc28dbae894f9e8fab9947a
diff --git a/metadata/md5-cache/net-nds/rpcbind-0.2.4-r9 b/metadata/md5-cache/net-nds/rpcbind-0.2.4-r9
new file mode 100644
index 0000000..0291aa6
--- /dev/null
+++ b/metadata/md5-cache/net-nds/rpcbind-0.2.4-r9
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure install prepare
+DEPEND=>=net-libs/libtirpc-1.0:= systemd? ( sys-apps/systemd:= ) tcpd? ( sys-apps/tcp-wrappers ) virtual/pkgconfig virtual/pkgconfig
+DESCRIPTION=portmap replacement which supports RPC over various protocols
+EAPI=5
+HOMEPAGE=https://sourceforge.net/projects/rpcbind/
+IUSE=debug selinux systemd tcpd warmstarts
+KEYWORDS=*
+LICENSE=BSD
+RDEPEND=>=net-libs/libtirpc-1.0:= systemd? ( sys-apps/systemd:= ) tcpd? ( sys-apps/tcp-wrappers ) selinux? ( sec-policy/selinux-rpcbind )
+SLOT=0
+SRC_URI=mirror://sourceforge/rpcbind/rpcbind-0.2.4.tar.bz2
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=d6adcf1e1bc28dbae894f9e8fab9947a
diff --git a/metadata/md5-cache/net-print/cups-2.3.3-r196 b/metadata/md5-cache/net-print/cups-2.3.3-r196
deleted file mode 100644
index 4346cd5..0000000
--- a/metadata/md5-cache/net-print/cups-2.3.3-r196
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure info install postinst postrm preinst prepare setup test unpack
-DEPEND=app-text/libpaper acl? ( kernel_linux? ( sys-apps/acl sys-apps/attr ) ) dbus? ( >=sys-apps/dbus-1.6.18-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) java? ( >=virtual/jre-1.6:* ) kerberos? ( >=virtual/krb5-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !net-print/lprng pam? ( virtual/pam ) python? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) ) ssl? ( >=dev-libs/libgcrypt-1.5.3:0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-2.12.23-r6[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) systemd? ( sys-apps/systemd ) usb? ( virtual/libusb:1 ) X? ( x11-misc/xdg-utils ) xinetd? ( sys-apps/xinetd ) zeroconf? ( >=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20140508 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) >=virtual/pkgconfig-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] test? ( dev-cpp/gtest >=chromeos-base/libchrome-0.0.1-r31:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= ) >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout java? ( >=dev-java/java-config-2.2.0-r3 ) virtual/pkgconfig
-DESCRIPTION=The Common Unix Printing System
-EAPI=5
-HOMEPAGE=http://www.cups.org/
-IUSE=acl dbus debug java kerberos pam python +seccomp selinux +ssl static-libs systemd test +threads upstart usb X xinetd zeroconf asan fuzzer +linguas_ca +linguas_cs +linguas_de +linguas_es +linguas_fr +linguas_it +linguas_ja +linguas_ru cros-debug cros_host cros_workon_tree_9fe07ac7bed15d529469e9ae9619cf4b25aa3772 kernel_linux abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 +python_single_target_python2_7 elibc_FreeBSD java fuzzer asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=Apache-2.0
-PROPERTIES=live
-RDEPEND=app-text/libpaper acl? ( kernel_linux? ( sys-apps/acl sys-apps/attr ) ) dbus? ( >=sys-apps/dbus-1.6.18-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) java? ( >=virtual/jre-1.6:* ) kerberos? ( >=virtual/krb5-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !net-print/lprng pam? ( virtual/pam ) python? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) ) ssl? ( >=dev-libs/libgcrypt-1.5.3:0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-2.12.23-r6[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) systemd? ( sys-apps/systemd ) usb? ( virtual/libusb:1 ) X? ( x11-misc/xdg-utils ) xinetd? ( sys-apps/xinetd ) zeroconf? ( >=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20140508 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) selinux? ( sec-policy/selinux-cups ) sys-apps/baselayout java? ( >=dev-java/java-config-2.2.0-r3 )
-REQUIRED_USE=python? ( ^^ ( python_single_target_python2_7 ) ) usb? ( threads ) ?? ( systemd upstart )
-SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	fdo-mime	9c46e30acd923ff12e325dbe96bb98b9	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	gnome2-utils	893e828f0f25f070f0b38d20c83c7670	java-pkg-opt-2	be255db325e3af8fbf3506cf63998341	java-utils-2	82402a1c36ab4bf38f3313a543f9e827	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	pam	3f746974e1cc47cabe3bd488c08cdc8e	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=c070b678d107a2fd6173cdb186bc55fc
diff --git a/metadata/md5-cache/net-print/cups-2.3.3-r220 b/metadata/md5-cache/net-print/cups-2.3.3-r220
new file mode 100644
index 0000000..102b8a2
--- /dev/null
+++ b/metadata/md5-cache/net-print/cups-2.3.3-r220
@@ -0,0 +1,15 @@
+BDEPEND=>=virtual/pkgconfig-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-vcs/git >=app-portage/elt-patches-20170815 virtual/pkgconfig
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=app-text/libpaper acl? ( kernel_linux? ( sys-apps/acl sys-apps/attr ) ) dbus? ( >=sys-apps/dbus-1.6.18-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kerberos? ( >=virtual/krb5-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !net-print/lprng pam? ( virtual/pam ) ssl? ( >=dev-libs/libgcrypt-1.5.3:0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-2.12.23-r6[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) systemd? ( sys-apps/systemd ) usb? ( virtual/libusb:1 ) X? ( x11-misc/xdg-utils ) xinetd? ( sys-apps/xinetd ) zeroconf? ( >=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20140508 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) test? ( dev-cpp/gtest:= >=chromeos-base/libchrome-0.0.1-r31:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
+DESCRIPTION=The Common Unix Printing System
+EAPI=7
+HOMEPAGE=http://www.cups.org/
+IUSE=acl dbus debug kerberos pam +seccomp selinux +ssl static-libs systemd test +threads upstart usb X xinetd zeroconf asan fuzzer +linguas_ca +linguas_cs +linguas_de +linguas_es +linguas_fr +linguas_it +linguas_ja +linguas_ru cros-debug cros_host cros_workon_tree_b6ee9f6faeeed6a18cd96ebade126330d4dcf9f2 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 fuzzer asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=Apache-2.0
+PROPERTIES=live
+RDEPEND=app-text/libpaper acl? ( kernel_linux? ( sys-apps/acl sys-apps/attr ) ) dbus? ( >=sys-apps/dbus-1.6.18-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kerberos? ( >=virtual/krb5-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !net-print/lprng pam? ( virtual/pam ) ssl? ( >=dev-libs/libgcrypt-1.5.3:0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-2.12.23-r6[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) systemd? ( sys-apps/systemd ) usb? ( virtual/libusb:1 ) X? ( x11-misc/xdg-utils ) xinetd? ( sys-apps/xinetd ) zeroconf? ( >=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20140508 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) selinux? ( sec-policy/selinux-cups ) sys-apps/baselayout virtual/tmpfiles
+REQUIRED_USE=usb? ( threads ) ?? ( systemd upstart )
+SLOT=0/2.3.3-r220
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	pam	3f746974e1cc47cabe3bd488c08cdc8e	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=e2d387b1e642ab152a98a57489ebb1ca
diff --git a/metadata/md5-cache/net-print/cups-9999 b/metadata/md5-cache/net-print/cups-9999
index a616b05..62a5697 100644
--- a/metadata/md5-cache/net-print/cups-9999
+++ b/metadata/md5-cache/net-print/cups-9999
@@ -1,14 +1,15 @@
-DEFINED_PHASES=compile configure info install postinst postrm preinst prepare setup test unpack
-DEPEND=app-text/libpaper acl? ( kernel_linux? ( sys-apps/acl sys-apps/attr ) ) dbus? ( >=sys-apps/dbus-1.6.18-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) java? ( >=virtual/jre-1.6:* ) kerberos? ( >=virtual/krb5-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !net-print/lprng pam? ( virtual/pam ) python? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) ) ssl? ( >=dev-libs/libgcrypt-1.5.3:0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-2.12.23-r6[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) systemd? ( sys-apps/systemd ) usb? ( virtual/libusb:1 ) X? ( x11-misc/xdg-utils ) xinetd? ( sys-apps/xinetd ) zeroconf? ( >=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20140508 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) >=virtual/pkgconfig-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] test? ( dev-cpp/gtest >=chromeos-base/libchrome-0.0.1-r31:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= ) >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout java? ( >=dev-java/java-config-2.2.0-r3 ) virtual/pkgconfig
+BDEPEND=>=virtual/pkgconfig-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] dev-vcs/git >=app-portage/elt-patches-20170815 virtual/pkgconfig
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=app-text/libpaper acl? ( kernel_linux? ( sys-apps/acl sys-apps/attr ) ) dbus? ( >=sys-apps/dbus-1.6.18-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kerberos? ( >=virtual/krb5-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !net-print/lprng pam? ( virtual/pam ) ssl? ( >=dev-libs/libgcrypt-1.5.3:0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-2.12.23-r6[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) systemd? ( sys-apps/systemd ) usb? ( virtual/libusb:1 ) X? ( x11-misc/xdg-utils ) xinetd? ( sys-apps/xinetd ) zeroconf? ( >=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20140508 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) test? ( dev-cpp/gtest:= >=chromeos-base/libchrome-0.0.1-r31:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
 DESCRIPTION=The Common Unix Printing System
-EAPI=5
+EAPI=7
 HOMEPAGE=http://www.cups.org/
-IUSE=acl dbus debug java kerberos pam python +seccomp selinux +ssl static-libs systemd test +threads upstart usb X xinetd zeroconf asan fuzzer +linguas_ca +linguas_cs +linguas_de +linguas_es +linguas_fr +linguas_it +linguas_ja +linguas_ru cros-debug cros_host cros_workon_tree_ kernel_linux abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 +python_single_target_python2_7 elibc_FreeBSD java fuzzer asan coverage fuzzer msan tsan ubsan
+IUSE=acl dbus debug kerberos pam +seccomp selinux +ssl static-libs systemd test +threads upstart usb X xinetd zeroconf asan fuzzer +linguas_ca +linguas_cs +linguas_de +linguas_es +linguas_fr +linguas_it +linguas_ja +linguas_ru cros-debug cros_host cros_workon_tree_ abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 fuzzer asan coverage fuzzer msan tsan ubsan
 KEYWORDS=~*
 LICENSE=Apache-2.0
 PROPERTIES=live
-RDEPEND=app-text/libpaper acl? ( kernel_linux? ( sys-apps/acl sys-apps/attr ) ) dbus? ( >=sys-apps/dbus-1.6.18-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) java? ( >=virtual/jre-1.6:* ) kerberos? ( >=virtual/krb5-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !net-print/lprng pam? ( virtual/pam ) python? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) ) ssl? ( >=dev-libs/libgcrypt-1.5.3:0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-2.12.23-r6[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) systemd? ( sys-apps/systemd ) usb? ( virtual/libusb:1 ) X? ( x11-misc/xdg-utils ) xinetd? ( sys-apps/xinetd ) zeroconf? ( >=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20140508 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) selinux? ( sec-policy/selinux-cups ) sys-apps/baselayout java? ( >=dev-java/java-config-2.2.0-r3 )
-REQUIRED_USE=python? ( ^^ ( python_single_target_python2_7 ) ) usb? ( threads ) ?? ( systemd upstart )
-SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	fdo-mime	9c46e30acd923ff12e325dbe96bb98b9	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	gnome2-utils	893e828f0f25f070f0b38d20c83c7670	java-pkg-opt-2	be255db325e3af8fbf3506cf63998341	java-utils-2	82402a1c36ab4bf38f3313a543f9e827	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	pam	3f746974e1cc47cabe3bd488c08cdc8e	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=f294c5d6292849bd8fc7fc50808a3248
+RDEPEND=app-text/libpaper acl? ( kernel_linux? ( sys-apps/acl sys-apps/attr ) ) dbus? ( >=sys-apps/dbus-1.6.18-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) kerberos? ( >=virtual/krb5-0-r1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !net-print/lprng pam? ( virtual/pam ) ssl? ( >=dev-libs/libgcrypt-1.5.3:0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=net-libs/gnutls-2.12.23-r6[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) systemd? ( sys-apps/systemd ) usb? ( virtual/libusb:1 ) X? ( x11-misc/xdg-utils ) xinetd? ( sys-apps/xinetd ) zeroconf? ( >=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20140508 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) selinux? ( sec-policy/selinux-cups ) sys-apps/baselayout virtual/tmpfiles
+REQUIRED_USE=usb? ( threads ) ?? ( systemd upstart )
+SLOT=0/9999
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	pam	3f746974e1cc47cabe3bd488c08cdc8e	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=66a6dd9fe7919deff40228fc3f4b0924
diff --git a/metadata/md5-cache/net-print/cups-filters-1.28.7 b/metadata/md5-cache/net-print/cups-filters-1.28.7
index 09ed789..5df6f66 100644
--- a/metadata/md5-cache/net-print/cups-filters-1.28.7
+++ b/metadata/md5-cache/net-print/cups-filters-1.28.7
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=http://www.openprinting.org/download/cups-filters/cups-filters-1.28.7.tar.xz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	perl-functions	6ec4c4d8fc8324200f1c14e8d158c59b	perl-module	97206c028d9bdc9f248e022ac5c9fc83	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	perl-functions	6ec4c4d8fc8324200f1c14e8d158c59b	perl-module	97206c028d9bdc9f248e022ac5c9fc83	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=72726e5a691731e35079788a000f8b90
diff --git a/metadata/md5-cache/net-print/cups-filters-1.28.7-r1 b/metadata/md5-cache/net-print/cups-filters-1.28.7-r1
deleted file mode 100644
index 09ed789..0000000
--- a/metadata/md5-cache/net-print/cups-filters-1.28.7-r1
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-util/gdbus-codegen >=sys-devel/gettext-0.18.3 virtual/pkgconfig test? ( media-fonts/dejavu ) virtual/pkgconfig
-DEFINED_PHASES=compile configure install postinst prepare test
-DEPEND=!postscript? ( >=app-text/poppler-0.32:=[cxx,jpeg?,lcms,tiff?,utils] ) >=app-text/qpdf-10.0.1:= chromeos-base/foomatic_shell dev-libs/glib:2 media-libs/fontconfig media-libs/freetype:2 media-libs/lcms:2 >=net-print/cups-1.7.3 !<=net-print/cups-1.5.9999 sys-devel/bc sys-libs/zlib dbus? ( sys-apps/dbus ) foomatic? ( !net-print/foomatic-filters ) jpeg? ( virtual/jpeg:0 ) ldap? ( net-nds/openldap ) pdf? ( app-text/mupdf ) perl? ( dev-lang/perl:= ) png? ( media-libs/libpng:0= ) postscript? ( >=app-text/ghostscript-gpl-9.09[cups] ) tiff? ( media-libs/tiff:0 ) zeroconf? ( net-dns/avahi[dbus] )
-DESCRIPTION=Cups filters
-EAPI=7
-HOMEPAGE=https://wiki.linuxfoundation.org/openprinting/cups-filters
-IUSE=dbus +foomatic ipp_autosetup jpeg ldap pclm pdf perl png +postscript static-libs test tiff zeroconf asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=MIT GPL-2
-RDEPEND=!postscript? ( >=app-text/poppler-0.32:=[cxx,jpeg?,lcms,tiff?,utils] ) >=app-text/qpdf-10.0.1:= chromeos-base/foomatic_shell dev-libs/glib:2 media-libs/fontconfig media-libs/freetype:2 media-libs/lcms:2 >=net-print/cups-1.7.3 !<=net-print/cups-1.5.9999 sys-devel/bc sys-libs/zlib dbus? ( sys-apps/dbus ) foomatic? ( !net-print/foomatic-filters ) jpeg? ( virtual/jpeg:0 ) ldap? ( net-nds/openldap ) pdf? ( app-text/mupdf ) perl? ( dev-lang/perl:= ) png? ( media-libs/libpng:0= ) postscript? ( >=app-text/ghostscript-gpl-9.09[cups] ) tiff? ( media-libs/tiff:0 ) zeroconf? ( net-dns/avahi[dbus] )
-RESTRICT=!test? ( test )
-SLOT=0
-SRC_URI=http://www.openprinting.org/download/cups-filters/cups-filters-1.28.7.tar.xz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	perl-functions	6ec4c4d8fc8324200f1c14e8d158c59b	perl-module	97206c028d9bdc9f248e022ac5c9fc83	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=72726e5a691731e35079788a000f8b90
diff --git a/metadata/md5-cache/net-print/cups-filters-1.28.7-r4 b/metadata/md5-cache/net-print/cups-filters-1.28.7-r4
new file mode 100644
index 0000000..5df6f66
--- /dev/null
+++ b/metadata/md5-cache/net-print/cups-filters-1.28.7-r4
@@ -0,0 +1,15 @@
+BDEPEND=dev-util/gdbus-codegen >=sys-devel/gettext-0.18.3 virtual/pkgconfig test? ( media-fonts/dejavu ) virtual/pkgconfig
+DEFINED_PHASES=compile configure install postinst prepare test
+DEPEND=!postscript? ( >=app-text/poppler-0.32:=[cxx,jpeg?,lcms,tiff?,utils] ) >=app-text/qpdf-10.0.1:= chromeos-base/foomatic_shell dev-libs/glib:2 media-libs/fontconfig media-libs/freetype:2 media-libs/lcms:2 >=net-print/cups-1.7.3 !<=net-print/cups-1.5.9999 sys-devel/bc sys-libs/zlib dbus? ( sys-apps/dbus ) foomatic? ( !net-print/foomatic-filters ) jpeg? ( virtual/jpeg:0 ) ldap? ( net-nds/openldap ) pdf? ( app-text/mupdf ) perl? ( dev-lang/perl:= ) png? ( media-libs/libpng:0= ) postscript? ( >=app-text/ghostscript-gpl-9.09[cups] ) tiff? ( media-libs/tiff:0 ) zeroconf? ( net-dns/avahi[dbus] )
+DESCRIPTION=Cups filters
+EAPI=7
+HOMEPAGE=https://wiki.linuxfoundation.org/openprinting/cups-filters
+IUSE=dbus +foomatic ipp_autosetup jpeg ldap pclm pdf perl png +postscript static-libs test tiff zeroconf asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=MIT GPL-2
+RDEPEND=!postscript? ( >=app-text/poppler-0.32:=[cxx,jpeg?,lcms,tiff?,utils] ) >=app-text/qpdf-10.0.1:= chromeos-base/foomatic_shell dev-libs/glib:2 media-libs/fontconfig media-libs/freetype:2 media-libs/lcms:2 >=net-print/cups-1.7.3 !<=net-print/cups-1.5.9999 sys-devel/bc sys-libs/zlib dbus? ( sys-apps/dbus ) foomatic? ( !net-print/foomatic-filters ) jpeg? ( virtual/jpeg:0 ) ldap? ( net-nds/openldap ) pdf? ( app-text/mupdf ) perl? ( dev-lang/perl:= ) png? ( media-libs/libpng:0= ) postscript? ( >=app-text/ghostscript-gpl-9.09[cups] ) tiff? ( media-libs/tiff:0 ) zeroconf? ( net-dns/avahi[dbus] )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=http://www.openprinting.org/download/cups-filters/cups-filters-1.28.7.tar.xz
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	perl-functions	6ec4c4d8fc8324200f1c14e8d158c59b	perl-module	97206c028d9bdc9f248e022ac5c9fc83	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=72726e5a691731e35079788a000f8b90
diff --git a/metadata/md5-cache/net-print/cups_proxy-0.0.1-r186 b/metadata/md5-cache/net-print/cups_proxy-0.0.1-r186
deleted file mode 100644
index 7591fd7..0000000
--- a/metadata/md5-cache/net-print/cups_proxy-0.0.1-r186
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install preinst setup test unpack
-DEPEND=chromeos-base/libbrillo:= net-libs/libmicrohttpd:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
-DESCRIPTION=CUPS Proxy Daemon for Chromium OS
-EAPI=6
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cups_proxy/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_3d941a32a42e1b92a1e353ab03fde0c52d50b4ab_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_3d941a32a42e1b92a1e353ab03fde0c52d50b4ab_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=chromeos-base/libbrillo:= net-libs/libmicrohttpd:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=7ee5e9701f68daf0dddfe2e9a3735370
diff --git a/metadata/md5-cache/net-print/cups_proxy-0.0.1-r222 b/metadata/md5-cache/net-print/cups_proxy-0.0.1-r222
new file mode 100644
index 0000000..d799456
--- /dev/null
+++ b/metadata/md5-cache/net-print/cups_proxy-0.0.1-r222
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install preinst setup test unpack
+DEPEND=chromeos-base/libbrillo:= net-libs/libmicrohttpd:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:= sys-apps/baselayout
+DESCRIPTION=CUPS Proxy Daemon for Chromium OS
+EAPI=6
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/cups_proxy/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_f5c65939888b9e828b7f0d5fc915727b4f549910_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_f5c65939888b9e828b7f0d5fc915727b4f549910_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=chromeos-base/libbrillo:= net-libs/libmicrohttpd:= virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=10206317b0675b06b6c0e4184385ac97
diff --git a/metadata/md5-cache/net-print/cups_proxy-9999 b/metadata/md5-cache/net-print/cups_proxy-9999
index e8eb5de..6f42870 100644
--- a/metadata/md5-cache/net-print/cups_proxy-9999
+++ b/metadata/md5-cache/net-print/cups_proxy-9999
@@ -7,7 +7,7 @@
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=chromeos-base/libbrillo:= net-libs/libmicrohttpd:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
+RDEPEND=chromeos-base/libbrillo:= net-libs/libmicrohttpd:= virtual/tmpfiles >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= sys-apps/baselayout
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=70ca177218eec27019a89e7b5435bdef
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=0632dd52f2e201a5b5f6263cb78d5376
diff --git a/metadata/md5-cache/net-print/dymo-cups-drivers-1.4.0 b/metadata/md5-cache/net-print/dymo-cups-drivers-1.4.0
index 0db2e38..3618a8f 100644
--- a/metadata/md5-cache/net-print/dymo-cups-drivers-1.4.0
+++ b/metadata/md5-cache/net-print/dymo-cups-drivers-1.4.0
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=http://download.dymo.com/Download%20Drivers/Linux/Download/dymo-cups-drivers-1.4.0.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=27972ebf130a49b870fec6e485a5f837
diff --git a/metadata/md5-cache/net-print/dymo-cups-drivers-1.4.0-r2 b/metadata/md5-cache/net-print/dymo-cups-drivers-1.4.0-r2
index 0db2e38..3618a8f 100644
--- a/metadata/md5-cache/net-print/dymo-cups-drivers-1.4.0-r2
+++ b/metadata/md5-cache/net-print/dymo-cups-drivers-1.4.0-r2
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=http://download.dymo.com/Download%20Drivers/Linux/Download/dymo-cups-drivers-1.4.0.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=27972ebf130a49b870fec6e485a5f837
diff --git a/metadata/md5-cache/net-print/epson-inkjet-printer-escpr-1.7.6 b/metadata/md5-cache/net-print/epson-inkjet-printer-escpr-1.7.6
index 7d7fa7f..b411987 100644
--- a/metadata/md5-cache/net-print/epson-inkjet-printer-escpr-1.7.6
+++ b/metadata/md5-cache/net-print/epson-inkjet-printer-escpr-1.7.6
@@ -9,5 +9,5 @@
 RDEPEND=net-print/cups
 SLOT=0
 SRC_URI=https://download3.ebz.epson.net/dsc/f/03/00/10/33/90/13c8b802beeae061b6eb08248a0417be08484a26/epson-inkjet-printer-escpr-1.7.6-1lsb3.2.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=94279ae5038c2195391f5d45a1eddfbc
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=29096fae39c6c383b2dfd1c8512ddb22
diff --git a/metadata/md5-cache/net-print/epson-inkjet-printer-escpr-1.7.6-r6 b/metadata/md5-cache/net-print/epson-inkjet-printer-escpr-1.7.6-r6
deleted file mode 100644
index 7d7fa7f..0000000
--- a/metadata/md5-cache/net-print/epson-inkjet-printer-escpr-1.7.6-r6
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure install prepare
-DEPEND=net-print/cups >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Epson Inkjet Printer Driver (ESC/P-R)
-EAPI=5
-HOMEPAGE=http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX
-IUSE=asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=net-print/cups
-SLOT=0
-SRC_URI=https://download3.ebz.epson.net/dsc/f/03/00/10/33/90/13c8b802beeae061b6eb08248a0417be08484a26/epson-inkjet-printer-escpr-1.7.6-1lsb3.2.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=94279ae5038c2195391f5d45a1eddfbc
diff --git a/metadata/md5-cache/net-print/epson-inkjet-printer-escpr-1.7.6-r7 b/metadata/md5-cache/net-print/epson-inkjet-printer-escpr-1.7.6-r7
new file mode 100644
index 0000000..b411987
--- /dev/null
+++ b/metadata/md5-cache/net-print/epson-inkjet-printer-escpr-1.7.6-r7
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure install prepare
+DEPEND=net-print/cups >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=Epson Inkjet Printer Driver (ESC/P-R)
+EAPI=5
+HOMEPAGE=http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX
+IUSE=asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=GPL-2
+RDEPEND=net-print/cups
+SLOT=0
+SRC_URI=https://download3.ebz.epson.net/dsc/f/03/00/10/33/90/13c8b802beeae061b6eb08248a0417be08484a26/epson-inkjet-printer-escpr-1.7.6-1lsb3.2.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=29096fae39c6c383b2dfd1c8512ddb22
diff --git a/metadata/md5-cache/net-print/hplip-3.19.6 b/metadata/md5-cache/net-print/hplip-3.19.6
index 032eefd..efc08c3 100644
--- a/metadata/md5-cache/net-print/hplip-3.19.6
+++ b/metadata/md5-cache/net-print/hplip-3.19.6
@@ -10,5 +10,5 @@
 REQUIRED_USE=!minimal? ( ^^ ( python_single_target_python2_7 python_single_target_python3_6 ) )
 SLOT=0
 SRC_URI=mirror://sourceforge/hplip/hplip-3.19.6.tar.gz https://dev.gentoo.org/~billie/distfiles/hplip-3.18.12-patches-1.tar.xz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=cb7cddbb4ffa0721cc23755a1d098d42
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=4cf3b98d7c2cf9f946841a4de43a0939
diff --git a/metadata/md5-cache/net-print/hplip-3.19.6-r5 b/metadata/md5-cache/net-print/hplip-3.19.6-r5
deleted file mode 100644
index 032eefd..0000000
--- a/metadata/md5-cache/net-print/hplip-3.19.6-r5
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=configure install postinst prepare setup
-DEPEND=net-print/cups virtual/jpeg:0 hpijs? ( net-print/cups-filters[foomatic] ) !minimal? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7[threads,xml] >=dev-lang/python-exec-2:=[python_targets_python2_7] ) python_single_target_python3_6? ( dev-lang/python:3.6[threads,xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) sys-apps/dbus !libusb0? ( virtual/libusb:1 ) libusb0? ( virtual/libusb:0 ) scanner? ( media-gfx/sane-backends ) snmp? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:= ) net-analyzer/net-snmp ) ) >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 =sys-devel/automake-1.13* >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 virtual/pkgconfig
-DESCRIPTION=HP Linux Imaging and Printing - Print, scan, fax drivers and service tools
-EAPI=6
-HOMEPAGE=https://developers.hp.com/hp-linux-imaging-and-printing
-IUSE=doc fax +hpcups hpijs kde libnotify libressl -libusb0 minimal parport policykit qt5 scanner +snmp static-ppds X kernel_linux python_single_target_python2_7 python_single_target_python3_6
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=net-print/cups virtual/jpeg:0 hpijs? ( net-print/cups-filters[foomatic] ) !minimal? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7[threads,xml] >=dev-lang/python-exec-2:=[python_targets_python2_7] ) python_single_target_python3_6? ( dev-lang/python:3.6[threads,xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) sys-apps/dbus !libusb0? ( virtual/libusb:1 ) libusb0? ( virtual/libusb:0 ) scanner? ( media-gfx/sane-backends ) snmp? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:= ) net-analyzer/net-snmp ) ) app-text/ghostscript-gpl !minimal? ( python_single_target_python2_7? ( >=dev-python/dbus-python-1.2.0-r1[python_targets_python2_7(-)] ) python_single_target_python3_6? ( >=dev-python/dbus-python-1.2.0-r1[python_targets_python3_6(-)] ) python_single_target_python2_7? ( dev-python/pygobject:2[python_targets_python2_7(-)] ) python_single_target_python3_6? ( dev-python/pygobject:3[python_targets_python3_6(-)] ) fax? ( python_single_target_python2_7? ( dev-python/reportlab[python_targets_python2_7(-)] ) python_single_target_python3_6? ( dev-python/reportlab[python_targets_python3_6(-)] ) ) kernel_linux? ( virtual/udev ) qt5? ( python_single_target_python2_7? ( >=dev-python/PyQt5-5.5.1[dbus,gui,widgets,python_targets_python2_7(-)] ) python_single_target_python3_6? ( >=dev-python/PyQt5-5.5.1[dbus,gui,widgets,python_targets_python3_6(-)] ) libnotify? ( python_single_target_python2_7? ( dev-python/notify2[python_targets_python2_7(-)] ) python_single_target_python3_6? ( dev-python/notify2[python_targets_python3_6(-)] ) ) ) scanner? ( python_single_target_python2_7? ( >=dev-python/reportlab-3.2[python_targets_python2_7(-)] ) python_single_target_python3_6? ( >=dev-python/reportlab-3.2[python_targets_python3_6(-)] ) python_single_target_python2_7? ( >=dev-python/pillow-3.1.1[python_targets_python2_7(-)] ) python_single_target_python3_6? ( >=dev-python/pillow-3.1.1[python_targets_python3_6(-)] ) X? ( || ( kde? ( kde-misc/skanlite ) media-gfx/xsane media-gfx/sane-frontends ) ) ) ) policykit? ( sys-auth/polkit )
-REQUIRED_USE=!minimal? ( ^^ ( python_single_target_python2_7 python_single_target_python3_6 ) )
-SLOT=0
-SRC_URI=mirror://sourceforge/hplip/hplip-3.19.6.tar.gz https://dev.gentoo.org/~billie/distfiles/hplip-3.18.12-patches-1.tar.xz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=cb7cddbb4ffa0721cc23755a1d098d42
diff --git a/metadata/md5-cache/net-print/hplip-3.19.6-r7 b/metadata/md5-cache/net-print/hplip-3.19.6-r7
new file mode 100644
index 0000000..efc08c3
--- /dev/null
+++ b/metadata/md5-cache/net-print/hplip-3.19.6-r7
@@ -0,0 +1,14 @@
+DEFINED_PHASES=configure install postinst prepare setup
+DEPEND=net-print/cups virtual/jpeg:0 hpijs? ( net-print/cups-filters[foomatic] ) !minimal? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7[threads,xml] >=dev-lang/python-exec-2:=[python_targets_python2_7] ) python_single_target_python3_6? ( dev-lang/python:3.6[threads,xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) sys-apps/dbus !libusb0? ( virtual/libusb:1 ) libusb0? ( virtual/libusb:0 ) scanner? ( media-gfx/sane-backends ) snmp? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:= ) net-analyzer/net-snmp ) ) >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 =sys-devel/automake-1.13* >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 virtual/pkgconfig
+DESCRIPTION=HP Linux Imaging and Printing - Print, scan, fax drivers and service tools
+EAPI=6
+HOMEPAGE=https://developers.hp.com/hp-linux-imaging-and-printing
+IUSE=doc fax +hpcups hpijs kde libnotify libressl -libusb0 minimal parport policykit qt5 scanner +snmp static-ppds X kernel_linux python_single_target_python2_7 python_single_target_python3_6
+KEYWORDS=*
+LICENSE=GPL-2
+RDEPEND=net-print/cups virtual/jpeg:0 hpijs? ( net-print/cups-filters[foomatic] ) !minimal? ( python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7[threads,xml] >=dev-lang/python-exec-2:=[python_targets_python2_7] ) python_single_target_python3_6? ( dev-lang/python:3.6[threads,xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) sys-apps/dbus !libusb0? ( virtual/libusb:1 ) libusb0? ( virtual/libusb:0 ) scanner? ( media-gfx/sane-backends ) snmp? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:= ) net-analyzer/net-snmp ) ) app-text/ghostscript-gpl !minimal? ( python_single_target_python2_7? ( >=dev-python/dbus-python-1.2.0-r1[python_targets_python2_7(-)] ) python_single_target_python3_6? ( >=dev-python/dbus-python-1.2.0-r1[python_targets_python3_6(-)] ) python_single_target_python2_7? ( dev-python/pygobject:2[python_targets_python2_7(-)] ) python_single_target_python3_6? ( dev-python/pygobject:3[python_targets_python3_6(-)] ) fax? ( python_single_target_python2_7? ( dev-python/reportlab[python_targets_python2_7(-)] ) python_single_target_python3_6? ( dev-python/reportlab[python_targets_python3_6(-)] ) ) kernel_linux? ( virtual/udev ) qt5? ( python_single_target_python2_7? ( >=dev-python/PyQt5-5.5.1[dbus,gui,widgets,python_targets_python2_7(-)] ) python_single_target_python3_6? ( >=dev-python/PyQt5-5.5.1[dbus,gui,widgets,python_targets_python3_6(-)] ) libnotify? ( python_single_target_python2_7? ( dev-python/notify2[python_targets_python2_7(-)] ) python_single_target_python3_6? ( dev-python/notify2[python_targets_python3_6(-)] ) ) ) scanner? ( python_single_target_python2_7? ( >=dev-python/reportlab-3.2[python_targets_python2_7(-)] ) python_single_target_python3_6? ( >=dev-python/reportlab-3.2[python_targets_python3_6(-)] ) python_single_target_python2_7? ( >=dev-python/pillow-3.1.1[python_targets_python2_7(-)] ) python_single_target_python3_6? ( >=dev-python/pillow-3.1.1[python_targets_python3_6(-)] ) X? ( || ( kde? ( kde-misc/skanlite ) media-gfx/xsane media-gfx/sane-frontends ) ) ) ) policykit? ( sys-auth/polkit )
+REQUIRED_USE=!minimal? ( ^^ ( python_single_target_python2_7 python_single_target_python3_6 ) )
+SLOT=0
+SRC_URI=mirror://sourceforge/hplip/hplip-3.19.6.tar.gz https://dev.gentoo.org/~billie/distfiles/hplip-3.18.12-patches-1.tar.xz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=4cf3b98d7c2cf9f946841a4de43a0939
diff --git a/metadata/md5-cache/net-print/ippsample-1.0.0 b/metadata/md5-cache/net-print/ippsample-1.0.0
deleted file mode 100644
index f2bc901..0000000
--- a/metadata/md5-cache/net-print/ippsample-1.0.0
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure install test
-DEPEND=ssl? ( >=dev-libs/libgcrypt-1.5.3:= >=net-libs/gnutls-3.6.14:= )
-DESCRIPTION=ippsample print testing utility
-EAPI=7
-HOMEPAGE=https://github.com/istopwg/ippsample/blob/master/README.md
-IUSE=+ssl
-KEYWORDS=*
-LICENSE=Apache-2.0
-RDEPEND=ssl? ( >=dev-libs/libgcrypt-1.5.3:= >=net-libs/gnutls-3.6.14:= )
-SLOT=0
-SRC_URI=https://github.com/istopwg/ippsample/archive/ecfd14a4b6198a360e2b2ff48acc95ddde501019.zip -> ippsample-1.0.0.zip
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=847b9b2a64172315ff7bb2c345761f42
diff --git a/metadata/md5-cache/net-print/ippsample-1.0.0-r1 b/metadata/md5-cache/net-print/ippsample-1.0.0-r1
deleted file mode 100644
index f2bc901..0000000
--- a/metadata/md5-cache/net-print/ippsample-1.0.0-r1
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure install test
-DEPEND=ssl? ( >=dev-libs/libgcrypt-1.5.3:= >=net-libs/gnutls-3.6.14:= )
-DESCRIPTION=ippsample print testing utility
-EAPI=7
-HOMEPAGE=https://github.com/istopwg/ippsample/blob/master/README.md
-IUSE=+ssl
-KEYWORDS=*
-LICENSE=Apache-2.0
-RDEPEND=ssl? ( >=dev-libs/libgcrypt-1.5.3:= >=net-libs/gnutls-3.6.14:= )
-SLOT=0
-SRC_URI=https://github.com/istopwg/ippsample/archive/ecfd14a4b6198a360e2b2ff48acc95ddde501019.zip -> ippsample-1.0.0.zip
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=847b9b2a64172315ff7bb2c345761f42
diff --git a/metadata/md5-cache/net-print/ippsample-1.1.0 b/metadata/md5-cache/net-print/ippsample-1.1.0
new file mode 100644
index 0000000..fbe470a
--- /dev/null
+++ b/metadata/md5-cache/net-print/ippsample-1.1.0
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure install test
+DEPEND=ssl? ( >=dev-libs/libgcrypt-1.5.3:= >=net-libs/gnutls-3.6.14:= )
+DESCRIPTION=ippsample print testing utility
+EAPI=7
+HOMEPAGE=https://github.com/istopwg/ippsample/blob/master/README.md
+IUSE=+ssl asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=Apache-2.0
+RDEPEND=ssl? ( >=dev-libs/libgcrypt-1.5.3:= >=net-libs/gnutls-3.6.14:= )
+SLOT=0
+SRC_URI=https://github.com/istopwg/ippsample/archive/df83ad39d54f05aab39dab013464bea3514034d6.zip -> ippsample-1.1.0.zip
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d13c5e843ec50fadb997cb767c7ebaf4
diff --git a/metadata/md5-cache/net-print/ippsample-1.1.0-r1 b/metadata/md5-cache/net-print/ippsample-1.1.0-r1
new file mode 100644
index 0000000..fbe470a
--- /dev/null
+++ b/metadata/md5-cache/net-print/ippsample-1.1.0-r1
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure install test
+DEPEND=ssl? ( >=dev-libs/libgcrypt-1.5.3:= >=net-libs/gnutls-3.6.14:= )
+DESCRIPTION=ippsample print testing utility
+EAPI=7
+HOMEPAGE=https://github.com/istopwg/ippsample/blob/master/README.md
+IUSE=+ssl asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=Apache-2.0
+RDEPEND=ssl? ( >=dev-libs/libgcrypt-1.5.3:= >=net-libs/gnutls-3.6.14:= )
+SLOT=0
+SRC_URI=https://github.com/istopwg/ippsample/archive/df83ad39d54f05aab39dab013464bea3514034d6.zip -> ippsample-1.1.0.zip
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d13c5e843ec50fadb997cb767c7ebaf4
diff --git a/metadata/md5-cache/net-print/starcupsdrv-3.11.0 b/metadata/md5-cache/net-print/starcupsdrv-3.11.0
new file mode 100644
index 0000000..c07df9e
--- /dev/null
+++ b/metadata/md5-cache/net-print/starcupsdrv-3.11.0
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure install prepare unpack
+DEPEND=net-print/cups:=
+DESCRIPTION=CUPS filter and PPD files for Star Micronics printers
+EAPI=5
+HOMEPAGE=http://www.starmicronics.com
+IUSE=asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=GPL-2
+RDEPEND=net-print/cups:=
+SLOT=0
+SRC_URI=http://www.starmicronics.com/support/DriverFolder/drvr/starcupsdrv-3.11.0_linux.tar.gz -> starcupsdrv-3.11.0_linux.tar.gz
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=1adf9e6e5dcd1051e6f1164163a13b0f
diff --git a/metadata/md5-cache/net-print/starcupsdrv-3.11.0-r1 b/metadata/md5-cache/net-print/starcupsdrv-3.11.0-r1
new file mode 100644
index 0000000..c07df9e
--- /dev/null
+++ b/metadata/md5-cache/net-print/starcupsdrv-3.11.0-r1
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure install prepare unpack
+DEPEND=net-print/cups:=
+DESCRIPTION=CUPS filter and PPD files for Star Micronics printers
+EAPI=5
+HOMEPAGE=http://www.starmicronics.com
+IUSE=asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=GPL-2
+RDEPEND=net-print/cups:=
+SLOT=0
+SRC_URI=http://www.starmicronics.com/support/DriverFolder/drvr/starcupsdrv-3.11.0_linux.tar.gz -> starcupsdrv-3.11.0_linux.tar.gz
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=1adf9e6e5dcd1051e6f1164163a13b0f
diff --git a/metadata/md5-cache/net-print/starcupsdrv-3.6.0a_pre20170914 b/metadata/md5-cache/net-print/starcupsdrv-3.6.0a_pre20170914
deleted file mode 100644
index 4a63321..0000000
--- a/metadata/md5-cache/net-print/starcupsdrv-3.6.0a_pre20170914
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure install prepare unpack
-DEPEND=net-print/cups:=
-DESCRIPTION=CUPS filter and PPD files for Star Micronics printers
-EAPI=5
-HOMEPAGE=http://www.starmicronics.com
-IUSE=asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=net-print/cups:=
-SLOT=0
-SRC_URI=http://www.starmicronics.com/support/DriverFolder/drvr/starcupsdrv-3.6.0a_linux_20170914.tar.gz -> starcupsdrv-3.6.0a_linux_20170914.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=fa918a8673338b6dab6f8a6d8bab5196
diff --git a/metadata/md5-cache/net-print/starcupsdrv-3.6.0a_pre20170914-r3 b/metadata/md5-cache/net-print/starcupsdrv-3.6.0a_pre20170914-r3
deleted file mode 100644
index 4a63321..0000000
--- a/metadata/md5-cache/net-print/starcupsdrv-3.6.0a_pre20170914-r3
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure install prepare unpack
-DEPEND=net-print/cups:=
-DESCRIPTION=CUPS filter and PPD files for Star Micronics printers
-EAPI=5
-HOMEPAGE=http://www.starmicronics.com
-IUSE=asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=net-print/cups:=
-SLOT=0
-SRC_URI=http://www.starmicronics.com/support/DriverFolder/drvr/starcupsdrv-3.6.0a_linux_20170914.tar.gz -> starcupsdrv-3.6.0a_linux_20170914.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=fa918a8673338b6dab6f8a6d8bab5196
diff --git a/metadata/md5-cache/net-vpn/openvpn-2.4.4 b/metadata/md5-cache/net-vpn/openvpn-2.4.4
index 2e990a3..a1f3fac 100644
--- a/metadata/md5-cache/net-vpn/openvpn-2.4.4
+++ b/metadata/md5-cache/net-vpn/openvpn-2.4.4
@@ -10,5 +10,5 @@
 REQUIRED_USE=static? ( !plugins !pkcs11 ) mbedtls? ( ssl !libressl ) pkcs11? ( ssl ) !plugins? ( !pam !down-root ) inotify? ( plugins )
 SLOT=0
 SRC_URI=http://swupdate.openvpn.net/community/releases/openvpn-2.4.4.tar.gz test? ( https://raw.githubusercontent.com/OpenVPN/openvpn/v2.4.4/tests/unit_tests/openvpn/mock_msg.h )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=90244ea1bbd8741330d9f972da2a9a65
diff --git a/metadata/md5-cache/net-vpn/openvpn-2.4.4-r7 b/metadata/md5-cache/net-vpn/openvpn-2.4.4-r7
index 2e990a3..a1f3fac 100644
--- a/metadata/md5-cache/net-vpn/openvpn-2.4.4-r7
+++ b/metadata/md5-cache/net-vpn/openvpn-2.4.4-r7
@@ -10,5 +10,5 @@
 REQUIRED_USE=static? ( !plugins !pkcs11 ) mbedtls? ( ssl !libressl ) pkcs11? ( ssl ) !plugins? ( !pam !down-root ) inotify? ( plugins )
 SLOT=0
 SRC_URI=http://swupdate.openvpn.net/community/releases/openvpn-2.4.4.tar.gz test? ( https://raw.githubusercontent.com/OpenVPN/openvpn/v2.4.4/tests/unit_tests/openvpn/mock_msg.h )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=90244ea1bbd8741330d9f972da2a9a65
diff --git a/metadata/md5-cache/net-vpn/strongswan-5.7.2 b/metadata/md5-cache/net-vpn/strongswan-5.7.2
index 88227ed..c0510cc 100644
--- a/metadata/md5-cache/net-vpn/strongswan-5.7.2
+++ b/metadata/md5-cache/net-vpn/strongswan-5.7.2
@@ -9,5 +9,5 @@
 RDEPEND=!net-misc/openswan gmp? ( >=dev-libs/gmp-4.1.5:= ) gcrypt? ( dev-libs/libgcrypt:0 ) caps? ( sys-libs/libcap ) curl? ( net-misc/curl ) ldap? ( net-nds/openldap ) openssl? ( >=dev-libs/openssl-0.9.8:=[-bindist] ) mysql? ( dev-db/mysql-connector-c:= ) sqlite? ( >=dev-db/sqlite-3.3.1 ) systemd? ( sys-apps/systemd ) networkmanager? ( net-misc/networkmanager ) pam? ( sys-libs/pam ) strongswan_plugins_unbound? ( net-dns/unbound:= net-libs/ldns ) virtual/logger sys-apps/iproute2 !net-vpn/libreswan selinux? ( sec-policy/selinux-ipsec ) sys-apps/baselayout
 SLOT=0
 SRC_URI=https://download.strongswan.org/strongswan-5.7.2.tar.bz2
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=391f4feeb0036b7c3fb247bf7eda9b45
diff --git a/metadata/md5-cache/net-vpn/strongswan-5.7.2-r3 b/metadata/md5-cache/net-vpn/strongswan-5.7.2-r3
index 88227ed..c0510cc 100644
--- a/metadata/md5-cache/net-vpn/strongswan-5.7.2-r3
+++ b/metadata/md5-cache/net-vpn/strongswan-5.7.2-r3
@@ -9,5 +9,5 @@
 RDEPEND=!net-misc/openswan gmp? ( >=dev-libs/gmp-4.1.5:= ) gcrypt? ( dev-libs/libgcrypt:0 ) caps? ( sys-libs/libcap ) curl? ( net-misc/curl ) ldap? ( net-nds/openldap ) openssl? ( >=dev-libs/openssl-0.9.8:=[-bindist] ) mysql? ( dev-db/mysql-connector-c:= ) sqlite? ( >=dev-db/sqlite-3.3.1 ) systemd? ( sys-apps/systemd ) networkmanager? ( net-misc/networkmanager ) pam? ( sys-libs/pam ) strongswan_plugins_unbound? ( net-dns/unbound:= net-libs/ldns ) virtual/logger sys-apps/iproute2 !net-vpn/libreswan selinux? ( sec-policy/selinux-ipsec ) sys-apps/baselayout
 SLOT=0
 SRC_URI=https://download.strongswan.org/strongswan-5.7.2.tar.bz2
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=391f4feeb0036b7c3fb247bf7eda9b45
diff --git a/metadata/md5-cache/net-wireless/Wi-FiTestSuite-Linux-DUT-0.0.1-r1 b/metadata/md5-cache/net-wireless/Wi-FiTestSuite-Linux-DUT-0.0.1-r1
index 48e43a5..1412a91 100644
--- a/metadata/md5-cache/net-wireless/Wi-FiTestSuite-Linux-DUT-0.0.1-r1
+++ b/metadata/md5-cache/net-wireless/Wi-FiTestSuite-Linux-DUT-0.0.1-r1
@@ -8,5 +8,5 @@
 LICENSE=ISC
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ca042b0d39f9943aa76709e335e9ac06
diff --git a/metadata/md5-cache/net-wireless/Wi-FiTestSuite-Linux-DUT-9999 b/metadata/md5-cache/net-wireless/Wi-FiTestSuite-Linux-DUT-9999
index 45ce103..40b7ca3 100644
--- a/metadata/md5-cache/net-wireless/Wi-FiTestSuite-Linux-DUT-9999
+++ b/metadata/md5-cache/net-wireless/Wi-FiTestSuite-Linux-DUT-9999
@@ -8,5 +8,5 @@
 LICENSE=ISC
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5473ae4ec4bff2ee4b74189cf4b1448b
diff --git a/metadata/md5-cache/net-wireless/bluez-5.54-r597 b/metadata/md5-cache/net-wireless/bluez-5.54-r597
deleted file mode 100644
index 87ac8ae..0000000
--- a/metadata/md5-cache/net-wireless/bluez-5.54-r597
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=>=dev-libs/glib-2.14:2= app-arch/bzip2:= sys-apps/dbus:= virtual/libudev:= cups? ( net-print/cups:= ) readline? ( sys-libs/readline:= ) >=chromeos-base/metrics-0.0.1-r3152:= dev-util/pkgconfig:= sys-devel/flex:= >=app-portage/elt-patches-20170815 virtual/pkgconfig virtual/pkgconfig dev-vcs/git
-DEFINED_PHASES=configure info install postinst prepare setup test unpack
-DEPEND=>=dev-libs/glib-2.14:2= app-arch/bzip2:= sys-apps/dbus:= virtual/libudev:= cups? ( net-print/cups:= ) readline? ( sys-libs/readline:= ) >=chromeos-base/metrics-0.0.1-r3152:= !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
-DESCRIPTION=Bluetooth Tools and System Daemons for Linux
-EAPI=7
-HOMEPAGE=http://www.bluez.org/
-IUSE=asan bluez-next bluez-upstream cups debug fuzzer hid2hci systemd readline bt_deprecated_tools cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_f6a13bc35a4fee801b0556bde9b43556aa7b6fce_f6a13bc35a4fee801b0556bde9b43556aa7b6fce_222eadaf67220ca68aa38117b584ffa2075edf43
-KEYWORDS=*
-LICENSE=GPL-2 LGPL-2.1
-PROPERTIES=live
-RDEPEND=>=dev-libs/glib-2.14:2= app-arch/bzip2:= sys-apps/dbus:= virtual/libudev:= cups? ( net-print/cups:= ) readline? ( sys-libs/readline:= ) >=chromeos-base/metrics-0.0.1-r3152:= !net-wireless/bluez-hcidump !net-wireless/bluez-libs !net-wireless/bluez-test !net-wireless/bluez-utils sys-apps/baselayout >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] virtual/tmpfiles
-REQUIRED_USE=?? ( bluez-next bluez-upstream )
-SLOT=0/5.54-r597
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=370962028fbe298ce4463608a3920733
diff --git a/metadata/md5-cache/net-wireless/bluez-5.54-r629 b/metadata/md5-cache/net-wireless/bluez-5.54-r629
new file mode 100644
index 0000000..35c367c
--- /dev/null
+++ b/metadata/md5-cache/net-wireless/bluez-5.54-r629
@@ -0,0 +1,15 @@
+BDEPEND=>=dev-libs/glib-2.14:2= app-arch/bzip2:= sys-apps/dbus:= virtual/libudev:= cups? ( net-print/cups:= ) readline? ( sys-libs/readline:= ) >=chromeos-base/metrics-0.0.1-r3152:= dev-util/pkgconfig:= sys-devel/flex:= >=app-portage/elt-patches-20170815 virtual/pkgconfig virtual/pkgconfig dev-vcs/git
+DEFINED_PHASES=configure info install postinst prepare setup test unpack
+DEPEND=>=dev-libs/glib-2.14:2= app-arch/bzip2:= sys-apps/dbus:= virtual/libudev:= cups? ( net-print/cups:= ) readline? ( sys-libs/readline:= ) >=chromeos-base/metrics-0.0.1-r3152:= !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=]
+DESCRIPTION=Bluetooth Tools and System Daemons for Linux
+EAPI=7
+HOMEPAGE=http://www.bluez.org/
+IUSE=asan bluez-next bluez-upstream cups debug fuzzer hid2hci systemd readline bt_deprecated_tools cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_9df2d30d041ead9d18eaff9efdecbd33d3ffb58c_9df2d30d041ead9d18eaff9efdecbd33d3ffb58c_eec8a54ac20960395916046cad286fd05b83d10e
+KEYWORDS=*
+LICENSE=GPL-2 LGPL-2.1
+PROPERTIES=live
+RDEPEND=>=dev-libs/glib-2.14:2= app-arch/bzip2:= sys-apps/dbus:= virtual/libudev:= cups? ( net-print/cups:= ) readline? ( sys-libs/readline:= ) >=chromeos-base/metrics-0.0.1-r3152:= !net-wireless/bluez-hcidump !net-wireless/bluez-libs !net-wireless/bluez-test !net-wireless/bluez-utils sys-apps/baselayout >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] virtual/tmpfiles
+REQUIRED_USE=?? ( bluez-next bluez-upstream )
+SLOT=0/5.54-r629
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=b2254d1de5a2c48b02ef9bf6fbc70db7
diff --git a/metadata/md5-cache/net-wireless/bluez-9999 b/metadata/md5-cache/net-wireless/bluez-9999
index 4ee391c..1c394b37 100644
--- a/metadata/md5-cache/net-wireless/bluez-9999
+++ b/metadata/md5-cache/net-wireless/bluez-9999
@@ -11,5 +11,5 @@
 RDEPEND=>=dev-libs/glib-2.14:2= app-arch/bzip2:= sys-apps/dbus:= virtual/libudev:= cups? ( net-print/cups:= ) readline? ( sys-libs/readline:= ) >=chromeos-base/metrics-0.0.1-r3152:= !net-wireless/bluez-hcidump !net-wireless/bluez-libs !net-wireless/bluez-test !net-wireless/bluez-utils sys-apps/baselayout >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] virtual/tmpfiles
 REQUIRED_USE=?? ( bluez-next bluez-upstream )
 SLOT=0/9999
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=62e785f2feb72b15b217404c63d70c7e
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=675a35b030df10efa5086f6ccd8c13f1
diff --git a/metadata/md5-cache/net-wireless/crda-3.18-r3 b/metadata/md5-cache/net-wireless/crda-3.18-r3
index 0b9f7f0..a2a4a1d 100644
--- a/metadata/md5-cache/net-wireless/crda-3.18-r3
+++ b/metadata/md5-cache/net-wireless/crda-3.18-r3
@@ -9,5 +9,5 @@
 RDEPEND=!gcrypt? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) ) gcrypt? ( dev-libs/libgcrypt:0= ) dev-libs/libnl:3 net-wireless/wireless-regdb
 SLOT=0
 SRC_URI=http://linuxwireless.org/download/crda/crda-3.18.tar.xz https://www.kernel.org/pub/software/network/crda/crda-3.18.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=dc4d79ce18af9e4588bc83c843bf7baf
diff --git a/metadata/md5-cache/net-wireless/crda-3.18-r6 b/metadata/md5-cache/net-wireless/crda-3.18-r6
index 0b9f7f0..a2a4a1d 100644
--- a/metadata/md5-cache/net-wireless/crda-3.18-r6
+++ b/metadata/md5-cache/net-wireless/crda-3.18-r6
@@ -9,5 +9,5 @@
 RDEPEND=!gcrypt? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) ) gcrypt? ( dev-libs/libgcrypt:0= ) dev-libs/libnl:3 net-wireless/wireless-regdb
 SLOT=0
 SRC_URI=http://linuxwireless.org/download/crda/crda-3.18.tar.xz https://www.kernel.org/pub/software/network/crda/crda-3.18.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=dc4d79ce18af9e4588bc83c843bf7baf
diff --git a/metadata/md5-cache/net-wireless/floss-0.0.2-r11 b/metadata/md5-cache/net-wireless/floss-0.0.2-r11
new file mode 100644
index 0000000..892fec5
--- /dev/null
+++ b/metadata/md5-cache/net-wireless/floss-0.0.2-r11
@@ -0,0 +1,15 @@
+BDEPEND=dev-libs/tinyxml2:= dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=dev-libs/flatbuffers:= dev-libs/modp_b64:= dev-libs/tinyxml2:= dev-libs/openssl:= =dev-rust/cc-1*:= net-wireless/bluez >=virtual/rust-1.39.0:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Bluetooth Tools and System Daemons for Linux
+EAPI=7
+HOMEPAGE=https://android.googlesource.com/platform/system/bt/
+IUSE=bt_dynlib cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_b4e5d17b5cdd2a8ab0bdf79e735235c7530409f3_7eae68a604c33288e18b948cc1cf30a87f0a74bc_7a34b72edeab38960a8149a82cf554cd16606dba cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86 cros-debug fuzzer cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_b4e5d17b5cdd2a8ab0bdf79e735235c7530409f3_7eae68a604c33288e18b948cc1cf30a87f0a74bc_7a34b72edeab38960a8149a82cf554cd16606dba cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=Apache-2.0 MIT BSD ISC
+PROPERTIES=live live
+RDEPEND=dev-libs/flatbuffers:= dev-libs/modp_b64:= dev-libs/tinyxml2:= dev-libs/openssl:= =dev-rust/cc-1*:= net-wireless/bluez >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/0.0.2-r11
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3c0bbbf3a0fde02020d744b6ac4db81f
diff --git a/metadata/md5-cache/net-wireless/floss-9999 b/metadata/md5-cache/net-wireless/floss-9999
new file mode 100644
index 0000000..f26ce9c
--- /dev/null
+++ b/metadata/md5-cache/net-wireless/floss-9999
@@ -0,0 +1,15 @@
+BDEPEND=dev-libs/tinyxml2:= dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND=dev-libs/flatbuffers:= dev-libs/modp_b64:= dev-libs/tinyxml2:= dev-libs/openssl:= =dev-rust/cc-1*:= net-wireless/bluez >=virtual/rust-1.39.0:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Bluetooth Tools and System Daemons for Linux
+EAPI=7
+HOMEPAGE=https://android.googlesource.com/platform/system/bt/
+IUSE=bt_dynlib cros_host cros_workon_tree_ cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86 cros-debug fuzzer cros_host cros_workon_tree_ cros-debug compilation_database cros_host test
+KEYWORDS=~*
+LICENSE=Apache-2.0 MIT BSD ISC
+PROPERTIES=live live
+RDEPEND=dev-libs/flatbuffers:= dev-libs/modp_b64:= dev-libs/tinyxml2:= dev-libs/openssl:= =dev-rust/cc-1*:= net-wireless/bluez >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:= virtual/tmpfiles
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/9999
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6d8c4dcfee8c2e597c5d12352a9bd9f0
diff --git a/metadata/md5-cache/net-wireless/hostap-test-0.0.1-r37 b/metadata/md5-cache/net-wireless/hostap-test-0.0.1-r37
deleted file mode 100644
index da84663..0000000
--- a/metadata/md5-cache/net-wireless/hostap-test-0.0.1-r37
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=dev-libs/libnl:3= dev-libs/openssl:0= net-libs/libpcap:=
-DESCRIPTION=Test package for the hostap project, intended for a VM
-EAPI=7
-HOMEPAGE=https://w1.fi
-IUSE=dbus asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_76ef3707eefe49ae08b8c889ada1c4a987fbaa6e python_targets_python3_6 python_targets_python3_7
-KEYWORDS=*
-LICENSE=BSD
-PROPERTIES=live
-RDEPEND=dev-libs/libnl:3= dev-libs/openssl:0= net-libs/libpcap:= python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dbus? ( dev-python/dbus-python[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/pygobject[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] sys-apps/dbus ) dev-python/pycryptodome[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/pyrad[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] net-analyzer/wireshark net-wireless/crda python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
-REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 ) || ( python_targets_python3_6 python_targets_python3_7 )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=55e3ca6459a5a24d7324626e15872f4e
diff --git a/metadata/md5-cache/net-wireless/hostap-test-0.0.1-r39 b/metadata/md5-cache/net-wireless/hostap-test-0.0.1-r39
new file mode 100644
index 0000000..5286e12
--- /dev/null
+++ b/metadata/md5-cache/net-wireless/hostap-test-0.0.1-r39
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=dev-libs/libnl:3= dev-libs/openssl:0= net-libs/libpcap:=
+DESCRIPTION=Test package for the hostap project, intended for a VM
+EAPI=7
+HOMEPAGE=https://w1.fi
+IUSE=dbus asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_982936790e4edc3320774f5e5e7bb4dbafd32f53 python_targets_python3_6 python_targets_python3_7
+KEYWORDS=*
+LICENSE=BSD
+PROPERTIES=live
+RDEPEND=dev-libs/libnl:3= dev-libs/openssl:0= net-libs/libpcap:= python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dbus? ( dev-python/dbus-python[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/pygobject[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] sys-apps/dbus ) dev-python/pycryptodome[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/pyrad[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] net-analyzer/wireshark net-wireless/crda python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 ) || ( python_targets_python3_6 python_targets_python3_7 )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4683b38c15565c2c677f207126f98d39
diff --git a/metadata/md5-cache/net-wireless/hostap-test-9999 b/metadata/md5-cache/net-wireless/hostap-test-9999
index dab9a24..b7fe271 100644
--- a/metadata/md5-cache/net-wireless/hostap-test-9999
+++ b/metadata/md5-cache/net-wireless/hostap-test-9999
@@ -11,5 +11,5 @@
 RDEPEND=dev-libs/libnl:3= dev-libs/openssl:0= net-libs/libpcap:= python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dbus? ( dev-python/dbus-python[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/pygobject[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] sys-apps/dbus ) dev-python/pycryptodome[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/pyrad[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)] net-analyzer/wireshark net-wireless/crda python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
 REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 ) || ( python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=098055317c1edba83e9240ee8b4e5557
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6016cddc895872926cc740c5d173b0d8
diff --git a/metadata/md5-cache/net-wireless/hostapd-2.9-r159 b/metadata/md5-cache/net-wireless/hostapd-2.9-r159
deleted file mode 100644
index f2c8b60..0000000
--- a/metadata/md5-cache/net-wireless/hostapd-2.9-r159
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install postinst setup unpack
-DEPEND=libressl? ( dev-libs/libressl:0= ) !libressl? ( internal-tls? ( dev-libs/libtommath ) !internal-tls? ( dev-libs/openssl:0=[-bindist] ) ) kernel_linux? ( dev-libs/libnl:3 crda? ( net-wireless/crda ) ) netlink? ( net-libs/libnfnetlink ) sqlite? ( >=dev-db/sqlite-3 )
-DESCRIPTION=IEEE 802.11 wireless LAN Host AP daemon
-EAPI=6
-HOMEPAGE=http://w1.fi
-IUSE=internal-tls ipv6 libressl logwatch netlink sqlite +suiteb +wps +crda cros_host cros_workon_tree_76ef3707eefe49ae08b8c889ada1c4a987fbaa6e savedconfig
-KEYWORDS=*
-LICENSE=BSD
-PROPERTIES=live
-RDEPEND=libressl? ( dev-libs/libressl:0= ) !libressl? ( internal-tls? ( dev-libs/libtommath ) !internal-tls? ( dev-libs/openssl:0=[-bindist] ) ) kernel_linux? ( dev-libs/libnl:3 crda? ( net-wireless/crda ) ) netlink? ( net-libs/libnfnetlink ) sqlite? ( >=dev-db/sqlite-3 )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	portability	536c5e70c5fb252ed3b769e04aa3f05b	preserve-libs	ef207dc62baddfddfd39a164d9797648	savedconfig	973a6df1a0949eba28a185eac79de815	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=5f06051c79fbc1b6908666c4270df531
diff --git a/metadata/md5-cache/net-wireless/hostapd-2.9-r161 b/metadata/md5-cache/net-wireless/hostapd-2.9-r161
new file mode 100644
index 0000000..a13c8e6
--- /dev/null
+++ b/metadata/md5-cache/net-wireless/hostapd-2.9-r161
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install postinst setup unpack
+DEPEND=libressl? ( dev-libs/libressl:0= ) !libressl? ( internal-tls? ( dev-libs/libtommath ) !internal-tls? ( dev-libs/openssl:0=[-bindist] ) ) kernel_linux? ( dev-libs/libnl:3 crda? ( net-wireless/crda ) ) netlink? ( net-libs/libnfnetlink ) sqlite? ( >=dev-db/sqlite-3 )
+DESCRIPTION=IEEE 802.11 wireless LAN Host AP daemon
+EAPI=6
+HOMEPAGE=http://w1.fi
+IUSE=internal-tls ipv6 libressl logwatch netlink sqlite +suiteb +wps +crda cros_host cros_workon_tree_982936790e4edc3320774f5e5e7bb4dbafd32f53 savedconfig
+KEYWORDS=*
+LICENSE=BSD
+PROPERTIES=live
+RDEPEND=libressl? ( dev-libs/libressl:0= ) !libressl? ( internal-tls? ( dev-libs/libtommath ) !internal-tls? ( dev-libs/openssl:0=[-bindist] ) ) kernel_linux? ( dev-libs/libnl:3 crda? ( net-wireless/crda ) ) netlink? ( net-libs/libnfnetlink ) sqlite? ( >=dev-db/sqlite-3 )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	portability	536c5e70c5fb252ed3b769e04aa3f05b	preserve-libs	ef207dc62baddfddfd39a164d9797648	savedconfig	973a6df1a0949eba28a185eac79de815	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=d49d055493067c67fbf2ba8b0e0cd7a0
diff --git a/metadata/md5-cache/net-wireless/hostapd-9999 b/metadata/md5-cache/net-wireless/hostapd-9999
index 395a8f3..f199554 100644
--- a/metadata/md5-cache/net-wireless/hostapd-9999
+++ b/metadata/md5-cache/net-wireless/hostapd-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=libressl? ( dev-libs/libressl:0= ) !libressl? ( internal-tls? ( dev-libs/libtommath ) !internal-tls? ( dev-libs/openssl:0=[-bindist] ) ) kernel_linux? ( dev-libs/libnl:3 crda? ( net-wireless/crda ) ) netlink? ( net-libs/libnfnetlink ) sqlite? ( >=dev-db/sqlite-3 )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	portability	536c5e70c5fb252ed3b769e04aa3f05b	preserve-libs	ef207dc62baddfddfd39a164d9797648	savedconfig	973a6df1a0949eba28a185eac79de815	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=69efaf2000fb73dfdf2da87ab5daefc8
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	portability	536c5e70c5fb252ed3b769e04aa3f05b	preserve-libs	ef207dc62baddfddfd39a164d9797648	savedconfig	973a6df1a0949eba28a185eac79de815	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=01453402f71bf1c4f3ea864643a9bc63
diff --git a/metadata/md5-cache/net-wireless/iw-5.9 b/metadata/md5-cache/net-wireless/iw-5.9
index 7f47888..01ba72c 100644
--- a/metadata/md5-cache/net-wireless/iw-5.9
+++ b/metadata/md5-cache/net-wireless/iw-5.9
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/libnl:=
 SLOT=0
 SRC_URI=https://www.kernel.org/pub/software/network/iw/iw-5.9.tar.xz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=15a87fd525124b841a0047d74d6bbb19
diff --git a/metadata/md5-cache/net-wireless/iw-5.9-r3 b/metadata/md5-cache/net-wireless/iw-5.9-r3
index 7f47888..01ba72c 100644
--- a/metadata/md5-cache/net-wireless/iw-5.9-r3
+++ b/metadata/md5-cache/net-wireless/iw-5.9-r3
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/libnl:=
 SLOT=0
 SRC_URI=https://www.kernel.org/pub/software/network/iw/iw-5.9.tar.xz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=15a87fd525124b841a0047d74d6bbb19
diff --git a/metadata/md5-cache/net-wireless/iwlwifi_rescan-0.0.1 b/metadata/md5-cache/net-wireless/iwlwifi_rescan-0.0.1
index e456413..bc54e44 100644
--- a/metadata/md5-cache/net-wireless/iwlwifi_rescan-0.0.1
+++ b/metadata/md5-cache/net-wireless/iwlwifi_rescan-0.0.1
@@ -6,5 +6,5 @@
 LICENSE=BSD-Google
 RDEPEND=!<chromeos-base/chromeos-bsp-cyan-0.0.2-r14
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=5e1b03262675078dee37c4c8ac64303b
diff --git a/metadata/md5-cache/net-wireless/iwlwifi_rescan-0.0.1-r4 b/metadata/md5-cache/net-wireless/iwlwifi_rescan-0.0.1-r4
index e456413..bc54e44 100644
--- a/metadata/md5-cache/net-wireless/iwlwifi_rescan-0.0.1-r4
+++ b/metadata/md5-cache/net-wireless/iwlwifi_rescan-0.0.1-r4
@@ -6,5 +6,5 @@
 LICENSE=BSD-Google
 RDEPEND=!<chromeos-base/chromeos-bsp-cyan-0.0.2-r14
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=5e1b03262675078dee37c4c8ac64303b
diff --git a/metadata/md5-cache/net-wireless/marvell_sd8787-14.64.2.47-r62 b/metadata/md5-cache/net-wireless/marvell_sd8787-14.64.2.47-r62
index 5c5ebdd..4025161 100644
--- a/metadata/md5-cache/net-wireless/marvell_sd8787-14.64.2.47-r62
+++ b/metadata/md5-cache/net-wireless/marvell_sd8787-14.64.2.47-r62
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RESTRICT=binchecks strip test
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2a8de96f0a33c0234da94857a68e3be4
diff --git a/metadata/md5-cache/net-wireless/marvell_sd8787-9999 b/metadata/md5-cache/net-wireless/marvell_sd8787-9999
index 4019269..9a55796 100644
--- a/metadata/md5-cache/net-wireless/marvell_sd8787-9999
+++ b/metadata/md5-cache/net-wireless/marvell_sd8787-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RESTRICT=binchecks strip test
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=51f0967d3fbe6feb73b362e6a80c2c5b
diff --git a/metadata/md5-cache/net-wireless/systembt-0.0.1-r111 b/metadata/md5-cache/net-wireless/systembt-0.0.1-r111
new file mode 100644
index 0000000..6a09ce8
--- /dev/null
+++ b/metadata/md5-cache/net-wireless/systembt-0.0.1-r111
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=dev-libs/modp_b64:= dev-libs/tinyxml2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Bluetooth Tools and System Daemons for Linux
+EAPI=7
+HOMEPAGE=https://android.googlesource.com/platform/system/bt/
+IUSE=bt-bringup cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_b4e5d17b5cdd2a8ab0bdf79e735235c7530409f3_1e793181081ea50dec9407274b86bde3dfe50a71 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_b4e5d17b5cdd2a8ab0bdf79e735235c7530409f3_1e793181081ea50dec9407274b86bde3dfe50a71 cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=Apache-2.0
+PROPERTIES=live live
+RDEPEND=dev-libs/modp_b64:= dev-libs/tinyxml2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+REQUIRED_USE=?? ( bt-bringup )
+SLOT=0/0.0.1-r111
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5c82a33f6c01f59668842192ccdf2340
diff --git a/metadata/md5-cache/net-wireless/systembt-0.0.1-r46 b/metadata/md5-cache/net-wireless/systembt-0.0.1-r46
deleted file mode 100644
index 0dad83a..0000000
--- a/metadata/md5-cache/net-wireless/systembt-0.0.1-r46
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=dev-libs/modp_b64:= dev-libs/tinyxml2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Bluetooth Tools and System Daemons for Linux
-EAPI=7
-HOMEPAGE=https://android.googlesource.com/platform/system/bt/
-IUSE=bt-bringup cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_3cc6ea87ef525e84c9ed2cbf6809a6a4895b4ad4_1e793181081ea50dec9407274b86bde3dfe50a71 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb_3cc6ea87ef525e84c9ed2cbf6809a6a4895b4ad4_1e793181081ea50dec9407274b86bde3dfe50a71 cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=Apache-2.0
-PROPERTIES=live live
-RDEPEND=dev-libs/modp_b64:= dev-libs/tinyxml2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-REQUIRED_USE=?? ( bt-bringup )
-SLOT=0/0.0.1-r46
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=466fc4d890067d59637d5c22344a7ec0
diff --git a/metadata/md5-cache/net-wireless/systembt-9999 b/metadata/md5-cache/net-wireless/systembt-9999
index b779f18..0a2f4eb 100644
--- a/metadata/md5-cache/net-wireless/systembt-9999
+++ b/metadata/md5-cache/net-wireless/systembt-9999
@@ -11,5 +11,5 @@
 RDEPEND=dev-libs/modp_b64:= dev-libs/tinyxml2:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 REQUIRED_USE=?? ( bt-bringup )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=e94e1d07f83fc1a970429554648bee69
diff --git a/metadata/md5-cache/net-wireless/wireless-regdb-20190301 b/metadata/md5-cache/net-wireless/wireless-regdb-20190301
deleted file mode 100644
index 7244c93..0000000
--- a/metadata/md5-cache/net-wireless/wireless-regdb-20190301
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=compile install
-DESCRIPTION=Binary regulatory database for CRDA
-EAPI=6
-HOMEPAGE=https://wireless.kernel.org/en/developers/Regulatory
-KEYWORDS=*
-LICENSE=ISC
-SLOT=0
-SRC_URI=https://www.kernel.org/pub/software/network/wireless-regdb/wireless-regdb-2019.03.01.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=bc94e64fc6bb06b4599b2b04b5b76745
diff --git a/metadata/md5-cache/net-wireless/wireless-regdb-20190301-r1 b/metadata/md5-cache/net-wireless/wireless-regdb-20190301-r1
deleted file mode 100644
index 7244c93..0000000
--- a/metadata/md5-cache/net-wireless/wireless-regdb-20190301-r1
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=compile install
-DESCRIPTION=Binary regulatory database for CRDA
-EAPI=6
-HOMEPAGE=https://wireless.kernel.org/en/developers/Regulatory
-KEYWORDS=*
-LICENSE=ISC
-SLOT=0
-SRC_URI=https://www.kernel.org/pub/software/network/wireless-regdb/wireless-regdb-2019.03.01.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=bc94e64fc6bb06b4599b2b04b5b76745
diff --git a/metadata/md5-cache/net-wireless/wireless-regdb-20210421 b/metadata/md5-cache/net-wireless/wireless-regdb-20210421
new file mode 100644
index 0000000..13cc90c
--- /dev/null
+++ b/metadata/md5-cache/net-wireless/wireless-regdb-20210421
@@ -0,0 +1,9 @@
+DEFINED_PHASES=compile install
+DESCRIPTION=Binary regulatory database for CRDA
+EAPI=7
+HOMEPAGE=https://wireless.wiki.kernel.org/en/developers/regulatory/wireless-regdb
+KEYWORDS=*
+LICENSE=ISC
+SLOT=0
+SRC_URI=https://www.kernel.org/pub/software/network/wireless-regdb/wireless-regdb-2021.04.21.tar.xz
+_md5_=dbfa18cd9303975ef5a7d2b7dc2bf129
diff --git a/metadata/md5-cache/net-wireless/wireless-regdb-20210421-r3 b/metadata/md5-cache/net-wireless/wireless-regdb-20210421-r3
new file mode 100644
index 0000000..13cc90c
--- /dev/null
+++ b/metadata/md5-cache/net-wireless/wireless-regdb-20210421-r3
@@ -0,0 +1,9 @@
+DEFINED_PHASES=compile install
+DESCRIPTION=Binary regulatory database for CRDA
+EAPI=7
+HOMEPAGE=https://wireless.wiki.kernel.org/en/developers/regulatory/wireless-regdb
+KEYWORDS=*
+LICENSE=ISC
+SLOT=0
+SRC_URI=https://www.kernel.org/pub/software/network/wireless-regdb/wireless-regdb-2021.04.21.tar.xz
+_md5_=dbfa18cd9303975ef5a7d2b7dc2bf129
diff --git a/metadata/md5-cache/net-wireless/wpa_supplicant-2_9-2.9-r27 b/metadata/md5-cache/net-wireless/wpa_supplicant-2_9-2.9-r27
deleted file mode 100644
index a3fe312..0000000
--- a/metadata/md5-cache/net-wireless/wpa_supplicant-2_9-2.9-r27
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install postinst preinst prepare setup unpack
-DEPEND=chromeos-base/minijail dbus? ( sys-apps/dbus ) kernel_linux? ( dev-libs/libnl:3 net-wireless/crda ) !kernel_linux? ( net-libs/libpcap ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtsvg:5 dev-qt/qtwidgets:5 ) readline? ( sys-libs/ncurses:0 sys-libs/readline:0 ) !libressl? ( dev-libs/openssl:0=[bindist=] ) libressl? ( dev-libs/libressl:0= ) smartcard? ( dev-libs/engine_pkcs11 ) virtual/pkgconfig sys-apps/baselayout
-DESCRIPTION=IEEE 802.1X/WPA supplicant for secure wireless transfers
-EAPI=7
-HOMEPAGE=https://w1.fi/wpa_supplicant/
-IUSE=ap bindist dbus debug eap-sim +hs2-0 libressl mbo p2p ps3 qt5 readline +seccomp selinux smartcard systemd +tdls uncommon-eap-types wifi_hostap_test +wnm wps kernel_linux kernel_FreeBSD wimax asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_76ef3707eefe49ae08b8c889ada1c4a987fbaa6e
-KEYWORDS=*
-LICENSE=|| ( GPL-2 BSD )
-PROPERTIES=live
-RDEPEND=chromeos-base/minijail dbus? ( sys-apps/dbus ) kernel_linux? ( dev-libs/libnl:3 net-wireless/crda ) !kernel_linux? ( net-libs/libpcap ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtsvg:5 dev-qt/qtwidgets:5 ) readline? ( sys-libs/ncurses:0 sys-libs/readline:0 ) !libressl? ( dev-libs/openssl:0=[bindist=] ) libressl? ( dev-libs/libressl:0= ) smartcard? ( dev-libs/engine_pkcs11 ) !net-wireless/wpa_supplicant !net-wireless/wpa_supplicant-2_8 selinux? ( sec-policy/selinux-networkmanager ) sys-apps/baselayout
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	qmake-utils	bdf97e69a34b864d6d545f4ec3143ff7	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=5b5da83376c9edb1226b70f6d1b6d139
diff --git a/metadata/md5-cache/net-wireless/wpa_supplicant-2_9-9999 b/metadata/md5-cache/net-wireless/wpa_supplicant-2_9-9999
deleted file mode 100644
index e19352d..0000000
--- a/metadata/md5-cache/net-wireless/wpa_supplicant-2_9-9999
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install postinst preinst prepare setup unpack
-DEPEND=chromeos-base/minijail dbus? ( sys-apps/dbus ) kernel_linux? ( dev-libs/libnl:3 net-wireless/crda ) !kernel_linux? ( net-libs/libpcap ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtsvg:5 dev-qt/qtwidgets:5 ) readline? ( sys-libs/ncurses:0 sys-libs/readline:0 ) !libressl? ( dev-libs/openssl:0=[bindist=] ) libressl? ( dev-libs/libressl:0= ) smartcard? ( dev-libs/engine_pkcs11 ) virtual/pkgconfig sys-apps/baselayout
-DESCRIPTION=IEEE 802.1X/WPA supplicant for secure wireless transfers
-EAPI=7
-HOMEPAGE=https://w1.fi/wpa_supplicant/
-IUSE=ap bindist dbus debug eap-sim +hs2-0 libressl mbo p2p ps3 qt5 readline +seccomp selinux smartcard systemd +tdls uncommon-eap-types wifi_hostap_test +wnm wps kernel_linux kernel_FreeBSD wimax asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_
-KEYWORDS=~*
-LICENSE=|| ( GPL-2 BSD )
-PROPERTIES=live
-RDEPEND=chromeos-base/minijail dbus? ( sys-apps/dbus ) kernel_linux? ( dev-libs/libnl:3 net-wireless/crda ) !kernel_linux? ( net-libs/libpcap ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtsvg:5 dev-qt/qtwidgets:5 ) readline? ( sys-libs/ncurses:0 sys-libs/readline:0 ) !libressl? ( dev-libs/openssl:0=[bindist=] ) libressl? ( dev-libs/libressl:0= ) smartcard? ( dev-libs/engine_pkcs11 ) !net-wireless/wpa_supplicant !net-wireless/wpa_supplicant-2_8 selinux? ( sec-policy/selinux-networkmanager ) sys-apps/baselayout
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	qmake-utils	bdf97e69a34b864d6d545f4ec3143ff7	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=9ab98584d9c0412f5fce0c4455c63a5e
diff --git a/metadata/md5-cache/net-wireless/wpa_supplicant-cros-2.9-r10 b/metadata/md5-cache/net-wireless/wpa_supplicant-cros-2.9-r10
new file mode 100644
index 0000000..5f32bbd
--- /dev/null
+++ b/metadata/md5-cache/net-wireless/wpa_supplicant-cros-2.9-r10
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install postinst preinst prepare setup unpack
+DEPEND=chromeos-base/minijail dbus? ( sys-apps/dbus ) kernel_linux? ( dev-libs/libnl:3 net-wireless/crda ) !kernel_linux? ( net-libs/libpcap ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtsvg:5 dev-qt/qtwidgets:5 ) readline? ( sys-libs/ncurses:0 sys-libs/readline:0 ) !libressl? ( dev-libs/openssl:0=[bindist=] ) libressl? ( dev-libs/libressl:0= ) smartcard? ( dev-libs/engine_pkcs11 ) virtual/pkgconfig sys-apps/baselayout
+DESCRIPTION=IEEE 802.1X/WPA supplicant for secure wireless transfers
+EAPI=7
+HOMEPAGE=https://w1.fi/wpa_supplicant/
+IUSE=ap bindist dbus debug eap-sim fuzzer +hs2-0 libressl mbo p2p ps3 qt5 readline +seccomp selinux smartcard supplicant-next systemd +tdls uncommon-eap-types +wep wifi_hostap_test +wnm wps kernel_linux kernel_FreeBSD wimax asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_982936790e4edc3320774f5e5e7bb4dbafd32f53_9a6e035b9aea7e4044166e0744127763ad234692 fuzzer
+KEYWORDS=*
+LICENSE=|| ( GPL-2 BSD )
+PROPERTIES=live
+RDEPEND=chromeos-base/minijail dbus? ( sys-apps/dbus ) kernel_linux? ( dev-libs/libnl:3 net-wireless/crda ) !kernel_linux? ( net-libs/libpcap ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtsvg:5 dev-qt/qtwidgets:5 ) readline? ( sys-libs/ncurses:0 sys-libs/readline:0 ) !libressl? ( dev-libs/openssl:0=[bindist=] ) libressl? ( dev-libs/libressl:0= ) smartcard? ( dev-libs/engine_pkcs11 ) !net-wireless/wpa_supplicant !net-wireless/wpa_supplicant-2_8 !net-wireless/wpa_supplicant-2_9 selinux? ( sec-policy/selinux-networkmanager ) sys-apps/baselayout
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	qmake-utils	bdf97e69a34b864d6d545f4ec3143ff7	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=f17cc50f464468ed01b51eea70492387
diff --git a/metadata/md5-cache/net-wireless/wpa_supplicant-cros-9999 b/metadata/md5-cache/net-wireless/wpa_supplicant-cros-9999
new file mode 100644
index 0000000..d36273e
--- /dev/null
+++ b/metadata/md5-cache/net-wireless/wpa_supplicant-cros-9999
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install postinst preinst prepare setup unpack
+DEPEND=chromeos-base/minijail dbus? ( sys-apps/dbus ) kernel_linux? ( dev-libs/libnl:3 net-wireless/crda ) !kernel_linux? ( net-libs/libpcap ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtsvg:5 dev-qt/qtwidgets:5 ) readline? ( sys-libs/ncurses:0 sys-libs/readline:0 ) !libressl? ( dev-libs/openssl:0=[bindist=] ) libressl? ( dev-libs/libressl:0= ) smartcard? ( dev-libs/engine_pkcs11 ) virtual/pkgconfig sys-apps/baselayout
+DESCRIPTION=IEEE 802.1X/WPA supplicant for secure wireless transfers
+EAPI=7
+HOMEPAGE=https://w1.fi/wpa_supplicant/
+IUSE=ap bindist dbus debug eap-sim fuzzer +hs2-0 libressl mbo p2p ps3 qt5 readline +seccomp selinux smartcard supplicant-next systemd +tdls uncommon-eap-types +wep wifi_hostap_test +wnm wps kernel_linux kernel_FreeBSD wimax asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ fuzzer
+KEYWORDS=~*
+LICENSE=|| ( GPL-2 BSD )
+PROPERTIES=live
+RDEPEND=chromeos-base/minijail dbus? ( sys-apps/dbus ) kernel_linux? ( dev-libs/libnl:3 net-wireless/crda ) !kernel_linux? ( net-libs/libpcap ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtsvg:5 dev-qt/qtwidgets:5 ) readline? ( sys-libs/ncurses:0 sys-libs/readline:0 ) !libressl? ( dev-libs/openssl:0=[bindist=] ) libressl? ( dev-libs/libressl:0= ) smartcard? ( dev-libs/engine_pkcs11 ) !net-wireless/wpa_supplicant !net-wireless/wpa_supplicant-2_8 !net-wireless/wpa_supplicant-2_9 selinux? ( sec-policy/selinux-networkmanager ) sys-apps/baselayout
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	qmake-utils	bdf97e69a34b864d6d545f4ec3143ff7	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=c42af77d32162905d7d143d237db55db
diff --git a/metadata/md5-cache/sci-electronics/litedram-2021.04_p20210809 b/metadata/md5-cache/sci-electronics/litedram-2021.04_p20210809
new file mode 100644
index 0000000..4b2af1c
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/litedram-2021.04_p20210809
@@ -0,0 +1,15 @@
+BDEPEND=test? ( dev-python/pyyaml[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/litex[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/migen[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] test? ( sci-electronics/pythondata-cpu-vexriscv[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] || ( cross-riscv64-cros-elf/gcc cross-riscv32-cros-elf/gcc ) ) ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=LiteDRAM provides a small footprint and configurable DRAM core.
+EAPI=7
+HOMEPAGE=https://github.com/enjoy-digital/litedram
+IUSE=test python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=BSD-2
+RDEPEND=dev-python/pyyaml[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/litex[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/migen[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] test? ( sci-electronics/pythondata-cpu-vexriscv[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] || ( cross-riscv64-cros-elf/gcc cross-riscv32-cros-elf/gcc ) ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/enjoy-digital/litedram/archive/203cc73cebec56faa0ed5c8900e15ac2c1dfe32b.tar.gz -> litedram-203cc73cebec56faa0ed5c8900e15ac2c1dfe32b.tar.gz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e5550ee9f02d27e27e2dce7a81d217b6
diff --git a/metadata/md5-cache/sci-electronics/liteeth-2021.04_p20210811 b/metadata/md5-cache/sci-electronics/liteeth-2021.04_p20210811
new file mode 100644
index 0000000..fc0d52a
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/liteeth-2021.04_p20210811
@@ -0,0 +1,15 @@
+BDEPEND=test? ( sci-electronics/liteiclink[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/litex[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/migen[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=LiteEth provides a small footprint and configurable Ethernet core.
+EAPI=7
+HOMEPAGE=https://github.com/enjoy-digital/liteeth
+IUSE=test python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=BSD-2
+RDEPEND=sci-electronics/liteiclink[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/litex[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/migen[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/enjoy-digital/liteeth/archive/c6c8be703bb5a2351df222a758f9dce0edd5517c.tar.gz -> liteeth-c6c8be703bb5a2351df222a758f9dce0edd5517c.tar.gz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4cb8c22860bc15d5d2ca5bc8077dcf85
diff --git a/metadata/md5-cache/sci-electronics/liteiclink-2021.08 b/metadata/md5-cache/sci-electronics/liteiclink-2021.08
new file mode 100644
index 0000000..1c8bc0c
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/liteiclink-2021.08
@@ -0,0 +1,15 @@
+BDEPEND=test? ( sci-electronics/litex[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/migen[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=LiteICLink provides small footprint and configurable Inter-Chip communication cores.
+EAPI=7
+HOMEPAGE=https://github.com/enjoy-digital/liteiclink
+IUSE=test python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=BSD-2
+RDEPEND=sci-electronics/litex[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/migen[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/enjoy-digital/liteiclink/archive/3d8ecdbcf9f0260292221ff63b0ad3f5e409a955.tar.gz -> liteiclink-3d8ecdbcf9f0260292221ff63b0ad3f5e409a955.tar.gz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4a8aacf9f12b7f85f1b44a4f4b5d1259
diff --git a/metadata/md5-cache/sci-electronics/litescope-2021.04_p20210524 b/metadata/md5-cache/sci-electronics/litescope-2021.04_p20210524
new file mode 100644
index 0000000..4998e14
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/litescope-2021.04_p20210524
@@ -0,0 +1,15 @@
+BDEPEND=test? ( sci-electronics/litex[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/migen[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=LiteScope provides a small footprint and configurable Logic Analyzer core.
+EAPI=7
+HOMEPAGE=https://github.com/enjoy-digital/litescope
+IUSE=test python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=BSD-2
+RDEPEND=sci-electronics/litex[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/migen[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/enjoy-digital/litescope/archive/1243ab3c81fc33ddacb3c15d18b6c63a45e6989e.tar.gz -> litescope-1243ab3c81fc33ddacb3c15d18b6c63a45e6989e.tar.gz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8f8c63bb5b572be2f057bf8ab693eb75
diff --git a/metadata/md5-cache/sci-electronics/litespi-2021.04_p20210921 b/metadata/md5-cache/sci-electronics/litespi-2021.04_p20210921
new file mode 100644
index 0000000..95040b3
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/litespi-2021.04_p20210921
@@ -0,0 +1,15 @@
+BDEPEND=test? ( sci-electronics/litex[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/migen[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=LiteSPI provides a small footprint and configurable SPI core.
+EAPI=7
+HOMEPAGE=https://github.com/litex-hub/litespi
+IUSE=test python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=BSD-2
+RDEPEND=sci-electronics/litex[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/migen[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/litex-hub/litespi/archive/4cb907881bb75999e4c6bb68e211dd5cfc301de9.tar.gz -> litespi-4cb907881bb75999e4c6bb68e211dd5cfc301de9.tar.gz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1d0dfbb5893fc89e5d4afbf08a65765a
diff --git a/metadata/md5-cache/sci-electronics/litex-2021.04_p20210923 b/metadata/md5-cache/sci-electronics/litex-2021.04_p20210923
new file mode 100644
index 0000000..0fe5af8
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/litex-2021.04_p20210923
@@ -0,0 +1,15 @@
+BDEPEND=test? ( sci-electronics/migen[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/pythondata-software-compiler_rt[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pyserial[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/requests[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=The LiteX framework provides a convenient and efficient infrastructure to create FPGA Cores/SOCs, to create FPGA Cores/SoCs, to explore various digital design architectures and create full FPGA based systems.
+EAPI=7
+HOMEPAGE=https://github.com/enjoy-digital/litex
+IUSE=test python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=BSD-2
+RDEPEND=sci-electronics/migen[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] sci-electronics/pythondata-software-compiler_rt[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/pyserial[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/requests[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/enjoy-digital/litex/archive/c43132f81f1113e83780571b10d004974fe361de.tar.gz -> litex-c43132f81f1113e83780571b10d004974fe361de.tar.gz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=350ba9d5b94b6b86b4cd319a415bb0fe
diff --git a/metadata/md5-cache/sci-electronics/migen-0.9.2_p20210209 b/metadata/md5-cache/sci-electronics/migen-0.9.2_p20210209
new file mode 100644
index 0000000..d564b89
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/migen-0.9.2_p20210209
@@ -0,0 +1,15 @@
+BDEPEND=test? ( dev-python/colorama ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=Python toolbox for building complex digital hardware.
+EAPI=7
+HOMEPAGE=https://github.com/m-labs/migen
+IUSE=test python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=BSD-2
+RDEPEND=dev-python/colorama python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/m-labs/migen/archive/7014bdccc11270764186e6a4441fb58238c612aa.tar.gz -> migen-7014bdccc11270764186e6a4441fb58238c612aa.tar.gz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=be2fb9285e114383e0b7fa86625d19e5
diff --git a/metadata/md5-cache/sci-electronics/nextpnr-0.1_pre20210924 b/metadata/md5-cache/sci-electronics/nextpnr-0.1_pre20210924
new file mode 100644
index 0000000..fed3b87
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/nextpnr-0.1_pre20210924
@@ -0,0 +1,14 @@
+BDEPEND=dev-util/ninja dev-util/cmake
+DEFINED_PHASES=compile configure install prepare pretend test unpack
+DEPEND=dev-cpp/eigen:3 dev-libs/boost nexus? ( sci-electronics/prjoxide )
+DESCRIPTION=nextpnr -- a portable FPGA place and route tool.
+EAPI=7
+HOMEPAGE=https://github.com/YosysHQ/nextpnr
+IUSE=+nexus test
+KEYWORDS=*
+LICENSE=ISC
+RDEPEND=dev-cpp/eigen:3 dev-libs/boost nexus? ( sci-electronics/prjoxide ) sci-electronics/yosys
+SLOT=0
+SRC_URI=https://github.com/YosysHQ/nextpnr/archive/9782a46a9b4edb24cc73ea65f1ad7697ed74ab41.tar.gz -> nextpnr-9782a46a9b4edb24cc73ea65f1ad7697ed74ab41.tar.gz https://github.com/YosysHQ/nextpnr-tests/archive/ccc61e5ec7cc04410462ec3196ad467354787afb.tar.gz -> nextpnr-tests-ccc61e5ec7cc04410462ec3196ad467354787afb.tar.gz
+_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=05e734b8e0742d651fde3db6f57f3e60
diff --git a/metadata/md5-cache/sci-electronics/nmigen-0.2_p20210204 b/metadata/md5-cache/sci-electronics/nmigen-0.2_p20210204
new file mode 100644
index 0000000..a4f47ab
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/nmigen-0.2_p20210204
@@ -0,0 +1,15 @@
+BDEPEND=dev-python/setuptools_scm[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] test? ( python_targets_python3_6? ( dev-python/importlib_metadata[python_targets_python3_6(-)?,-python_single_target_python3_6(-),python_targets_python3_7(-)?,-python_single_target_python3_7(-)] ) python_targets_python3_7? ( dev-python/importlib_metadata[python_targets_python3_6(-)?,-python_single_target_python3_6(-),python_targets_python3_7(-)?,-python_single_target_python3_7(-)] ) >=dev-python/jinja-2.11[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] =dev-python/jinja-2* >=dev-python/pyvcd-0.2.2[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] =dev-python/pyvcd-0.2* >=sci-electronics/yosys-0.9 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=A refreshed Python toolbox for building complex digital hardware.
+EAPI=7
+HOMEPAGE=https://github.com/nmigen/nmigen
+IUSE=test python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=BSD-2
+RDEPEND=python_targets_python3_6? ( dev-python/importlib_metadata[python_targets_python3_6(-)?,-python_single_target_python3_6(-),python_targets_python3_7(-)?,-python_single_target_python3_7(-)] ) python_targets_python3_7? ( dev-python/importlib_metadata[python_targets_python3_6(-)?,-python_single_target_python3_6(-),python_targets_python3_7(-)?,-python_single_target_python3_7(-)] ) >=dev-python/jinja-2.11[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] =dev-python/jinja-2* >=dev-python/pyvcd-0.2.2[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] =dev-python/pyvcd-0.2* >=sci-electronics/yosys-0.9 python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/nmigen/nmigen/archive/f7c2b9419f9de450be76a0e9cf681931295df65f.tar.gz -> nmigen-f7c2b9419f9de450be76a0e9cf681931295df65f.tar.gz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a8fdc35185634d9b5f4ff90918ca0c73
diff --git a/metadata/md5-cache/sci-electronics/prjoxide-0.1.0_p20210924 b/metadata/md5-cache/sci-electronics/prjoxide-0.1.0_p20210924
new file mode 100644
index 0000000..08679f9
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/prjoxide-0.1.0_p20210924
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/capnp-0.14*:= =dev-rust/clap-3*:= =dev-rust/flate2-1*:= =dev-rust/include_dir-0.6*:= >=dev-rust/itertools-0.8.2:= <dev-rust/itertools-0.9.0 >=dev-rust/lazy_static-1.4.0:= <dev-rust/lazy_static-2.0.0 >=dev-rust/log-0.4.11:= <dev-rust/log-0.5.0 =dev-rust/multimap-0.8*:= =dev-rust/num-bigint-0.4*:= >=dev-rust/pulldown-cmark-0.6.1:= <dev-rust/pulldown-cmark-0.7.0 =dev-rust/regex-1*:= >=dev-rust/ron-0.5.1:= <dev-rust/ron-0.6.0 =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= =dev-rust/capnpc-0.14*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Project Oxide - documenting Lattice's 28nm "Nexus" FPGA parts
+EAPI=7
+HOMEPAGE=https://github.com/gatecat/prjoxide
+IUSE=cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=ISC
+RDEPEND==dev-rust/capnp-0.14*:= =dev-rust/clap-3*:= =dev-rust/flate2-1*:= =dev-rust/include_dir-0.6*:= >=dev-rust/itertools-0.8.2:= <dev-rust/itertools-0.9.0 >=dev-rust/lazy_static-1.4.0:= <dev-rust/lazy_static-2.0.0 >=dev-rust/log-0.4.11:= <dev-rust/log-0.5.0 =dev-rust/multimap-0.8*:= =dev-rust/num-bigint-0.4*:= >=dev-rust/pulldown-cmark-0.6.1:= <dev-rust/pulldown-cmark-0.7.0 =dev-rust/regex-1*:= >=dev-rust/ron-0.5.1:= <dev-rust/ron-0.6.0 =dev-rust/serde-1*:= =dev-rust/serde_json-1*:= =dev-rust/capnpc-0.14*:= sci-electronics/yosys
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0
+SRC_URI=https://github.com/gatecat/prjoxide/archive/318331f8b30c2e2a31cc41d51f104b671e180a8a.tar.gz -> prjoxide-318331f8b30c2e2a31cc41d51f104b671e180a8a.tar.gz https://github.com/gatecat/prjoxide-db/archive/48cb5537977c41d38c40ddff45ba1bbcec384ba8.tar.gz -> prjoxide-db-48cb5537977c41d38c40ddff45ba1bbcec384ba8.tar.gz https://github.com/SymbiFlow/fpga-interchange-schema/archive/78abf3f30770ccc6d0e1f5dbfeaef2666f55acf6.tar.gz -> fpga-interchange-schema-78abf3f30770ccc6d0e1f5dbfeaef2666f55acf6.tar.gz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ee65e1e16efaa00bc4dc0101edcc0a82
diff --git a/metadata/md5-cache/sci-electronics/pythondata-cpu-vexriscv-2020.08_p20210515 b/metadata/md5-cache/sci-electronics/pythondata-cpu-vexriscv-2020.08_p20210515
new file mode 100644
index 0000000..f705df8
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/pythondata-cpu-vexriscv-2020.08_p20210515
@@ -0,0 +1,14 @@
+BDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=Python module containing verilog files for VexRISCV cpu.
+EAPI=7
+HOMEPAGE=https://github.com/litex-hub/pythondata-cpu-vexriscv
+IUSE=python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+SLOT=0
+SRC_URI=https://github.com/litex-hub/pythondata-cpu-vexriscv/archive/2b6855412cdbde5e31bde13283e49976247ba90b.tar.gz -> pythondata-cpu-vexriscv-2b6855412cdbde5e31bde13283e49976247ba90b.tar.gz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=169fab7161c47b39ab353ea78a68dc76
diff --git a/metadata/md5-cache/sci-electronics/pythondata-misc-tapcfg-2020.08_p20210305 b/metadata/md5-cache/sci-electronics/pythondata-misc-tapcfg-2020.08_p20210305
new file mode 100644
index 0000000..b5c85ea
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/pythondata-misc-tapcfg-2020.08_p20210305
@@ -0,0 +1,14 @@
+BDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=Python module containing data files for Ethernet TAP Config misc.
+EAPI=7
+HOMEPAGE=https://github.com/litex-hub/pythondata-misc-tapcfg
+IUSE=python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=LGPL-2.1
+RDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+SLOT=0
+SRC_URI=https://github.com/litex-hub/pythondata-misc-tapcfg/archive/0e6809132b7a42d26fc148b2b5e54ede8d6021ab.tar.gz -> pythondata-misc-tapcfg-0e6809132b7a42d26fc148b2b5e54ede8d6021ab.tar.gz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8ad6bdbe2f634232fcf882715b765ed2
diff --git a/metadata/md5-cache/sci-electronics/pythondata-software-compiler_rt-2020.08_p20201104 b/metadata/md5-cache/sci-electronics/pythondata-software-compiler_rt-2020.08_p20201104
new file mode 100644
index 0000000..746b38e
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/pythondata-software-compiler_rt-2020.08_p20201104
@@ -0,0 +1,14 @@
+BDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)] dev-python/setuptools[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+DEFINED_PHASES=compile configure install prepare test
+DESCRIPTION=Python module containing data files for LLVM Compiler RT Module software.
+EAPI=7
+HOMEPAGE=https://github.com/litex-hub/pythondata-software-compiler_rt
+IUSE=python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9
+KEYWORDS=*
+LICENSE=Apache-2.0
+RDEPEND=python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) python_targets_python3_9? ( dev-lang/python:3.9 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]
+REQUIRED_USE=|| ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_targets_python3_9 )
+SLOT=0
+SRC_URI=https://github.com/litex-hub/pythondata-software-compiler_rt/archive/fcb03245613ccf3079cc833a701f13d0beaae09d.tar.gz -> pythondata-software-compiler_rt-fcb03245613ccf3079cc833a701f13d0beaae09d.tar.gz
+_eclasses_=distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2ace3345bffcc3d8c13fed9aafcf4663
diff --git a/metadata/md5-cache/sci-electronics/sigrok-cli-0.5.0-r17 b/metadata/md5-cache/sci-electronics/sigrok-cli-0.5.0-r17
index 8d84315..aec45a2 100644
--- a/metadata/md5-cache/sci-electronics/sigrok-cli-0.5.0-r17
+++ b/metadata/md5-cache/sci-electronics/sigrok-cli-0.5.0-r17
@@ -10,5 +10,5 @@
 RDEPEND=>=dev-libs/glib-2.28.0 >=sci-libs/libsigrok-0.3.0 decode? ( >=sci-libs/libsigrokdecode-0.3.0 python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) )
 REQUIRED_USE=decode? ( ^^ ( python_single_target_python3_6 ) )
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=0ace0df1510b176b35ebbbeacba2bc78
diff --git a/metadata/md5-cache/sci-electronics/sigrok-cli-9999 b/metadata/md5-cache/sci-electronics/sigrok-cli-9999
index 2a22cbf..61c813e 100644
--- a/metadata/md5-cache/sci-electronics/sigrok-cli-9999
+++ b/metadata/md5-cache/sci-electronics/sigrok-cli-9999
@@ -10,5 +10,5 @@
 RDEPEND=>=dev-libs/glib-2.28.0 >=sci-libs/libsigrok-0.3.0 decode? ( >=sci-libs/libsigrokdecode-0.3.0 python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) )
 REQUIRED_USE=decode? ( ^^ ( python_single_target_python3_6 ) )
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3dd3de327fd977ff6651953a5db4be75
diff --git a/metadata/md5-cache/sci-electronics/verilator-4.212_p20210928 b/metadata/md5-cache/sci-electronics/verilator-4.212_p20210928
new file mode 100644
index 0000000..d72b397
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/verilator-4.212_p20210928
@@ -0,0 +1,15 @@
+BDEPEND=test? ( sys-apps/grep[pcre] ) >=app-portage/elt-patches-20170815
+DEFINED_PHASES=compile prepare test
+DEPEND=systemc? ( sci-electronics/systemc ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=The fastest Verilog/SystemVerilog simulator
+EAPI=7
+HOMEPAGE=https://www.veripool.org/verilator/
+IUSE=+systemc test
+KEYWORDS=*
+LICENSE=LGPL-3
+RDEPEND=systemc? ( sci-electronics/systemc )
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=https://github.com/verilator/verilator/archive/20af8a36a77d2b11b0522b214ba95047c16c887b.tar.gz -> verilator-4.212_p20210928.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4664b2c8d7a625293f0a141092e8475e
diff --git a/metadata/md5-cache/sci-electronics/yosys-0.9_p20210925 b/metadata/md5-cache/sci-electronics/yosys-0.9_p20210925
new file mode 100644
index 0000000..2c826d3
--- /dev/null
+++ b/metadata/md5-cache/sci-electronics/yosys-0.9_p20210925
@@ -0,0 +1,11 @@
+DEFINED_PHASES=configure test unpack
+DESCRIPTION=A framework for Verilog RTL synthesis.
+EAPI=7
+HOMEPAGE=http://www.clifford.at/yosys/
+KEYWORDS=*
+LICENSE=ISC
+RDEPEND=sci-electronics/iverilog
+SLOT=0
+SRC_URI=https://github.com/YosysHQ/yosys/archive/1cac671c70bc3da9808ceb3add15686da4a5d82e.tar.gz -> yosys-1cac671c70bc3da9808ceb3add15686da4a5d82e.tar.gz https://github.com/YosysHQ/abc/archive/4f5f73d.tar.gz -> yosys-abc-4f5f73d.tar.gz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=01916ec836c11dc3cd8c03bc4c3f8bbb
diff --git a/metadata/md5-cache/sci-libs/libsigrok-0.3.0-r68 b/metadata/md5-cache/sci-libs/libsigrok-0.3.0-r68
index 4d157f4..18b5554 100644
--- a/metadata/md5-cache/sci-libs/libsigrok-0.3.0-r68
+++ b/metadata/md5-cache/sci-libs/libsigrok-0.3.0-r68
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=!static-libs? ( >=dev-libs/glib-2.32.0 >=dev-libs/libzip-0.8 ftdi? ( >=dev-embedded/libftdi-0.16 ) serial? ( dev-libs/libserialport ) usb? ( virtual/libusb:1 ) ) static-libs? ( >=dev-libs/glib-2.32.0[static-libs(+)] >=dev-libs/libzip-0.8[static-libs(+)] ftdi? ( >=dev-embedded/libftdi-0.16[static-libs(+)] ) serial? ( dev-libs/libserialport[static-libs(+)] ) usb? ( virtual/libusb:1[static-libs(+)] ) )
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e79b160e9b5913dde82774cc14c8a0e2
diff --git a/metadata/md5-cache/sci-libs/libsigrok-9999 b/metadata/md5-cache/sci-libs/libsigrok-9999
index 5b5e276..d105532 100644
--- a/metadata/md5-cache/sci-libs/libsigrok-9999
+++ b/metadata/md5-cache/sci-libs/libsigrok-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=!static-libs? ( >=dev-libs/glib-2.32.0 >=dev-libs/libzip-0.8 ftdi? ( >=dev-embedded/libftdi-0.16 ) serial? ( dev-libs/libserialport ) usb? ( virtual/libusb:1 ) ) static-libs? ( >=dev-libs/glib-2.32.0[static-libs(+)] >=dev-libs/libzip-0.8[static-libs(+)] ftdi? ( >=dev-embedded/libftdi-0.16[static-libs(+)] ) serial? ( dev-libs/libserialport[static-libs(+)] ) usb? ( virtual/libusb:1[static-libs(+)] ) )
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f83fa6896a895d8c697f016b0827a02f
diff --git a/metadata/md5-cache/sci-libs/libsigrokdecode-0.3.0-r21 b/metadata/md5-cache/sci-libs/libsigrokdecode-0.3.0-r21
index 1eb3b9c..18e4cc9 100644
--- a/metadata/md5-cache/sci-libs/libsigrokdecode-0.3.0-r21
+++ b/metadata/md5-cache/sci-libs/libsigrokdecode-0.3.0-r21
@@ -10,5 +10,5 @@
 RDEPEND=>=dev-libs/glib-2.24.0 python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] )
 REQUIRED_USE=^^ ( python_single_target_python3_6 )
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8cf327046e9dbc351406ec08c547155a
diff --git a/metadata/md5-cache/sci-libs/libsigrokdecode-9999 b/metadata/md5-cache/sci-libs/libsigrokdecode-9999
index da562e8..f4f0fa3 100644
--- a/metadata/md5-cache/sci-libs/libsigrokdecode-9999
+++ b/metadata/md5-cache/sci-libs/libsigrokdecode-9999
@@ -10,5 +10,5 @@
 RDEPEND=>=dev-libs/glib-2.24.0 python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] )
 REQUIRED_USE=^^ ( python_single_target_python3_6 )
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=73d40369ee5e89fd4a7327d6d13ab4b4
diff --git a/metadata/md5-cache/sci-libs/tensorflow-1.14.0 b/metadata/md5-cache/sci-libs/tensorflow-1.14.0
index 6db855a..d96e337 100644
--- a/metadata/md5-cache/sci-libs/tensorflow-1.14.0
+++ b/metadata/md5-cache/sci-libs/tensorflow-1.14.0
@@ -1,6 +1,6 @@
 BDEPEND=app-arch/unzip >=dev-libs/flatbuffers-1.8.0 >=dev-libs/protobuf-3.6.0 || ( =dev-util/bazel-0.24* =dev-util/bazel-0.26* =dev-util/bazel-0.27* ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] ) !python? ( dev-lang/python ) python? ( dev-lang/swig dev-python/grpcio-tools dev-python/mock dev-python/cython ) >=dev-util/bazel-0.20
 DEFINED_PHASES=compile configure install prepare setup unpack
-DEPEND=>=dev-libs/flatbuffers-1.8.0 >=dev-libs/protobuf-3.6.0:= !minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/icu >=dev-libs/jsoncpp-1.8.4 dev-libs/libpcre dev-libs/nsync dev-libs/openssl:0= >=dev-libs/re2-0.2018.04.01 media-libs/giflib media-libs/libjpeg-turbo media-libs/libpng:0 >=net-libs/grpc-1.16.0 net-misc/curl sys-libs/zlib >=sys-apps/hwloc-2 ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] dev-libs/cudnn ) mpi? ( virtual/mpi ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/absl-py[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/astor-0.7.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/gast[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/numpy[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/google-pasta[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/protobuf-python-3.6.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/six[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/termcolor[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/grpcio[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/wrapt-1.11.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=net-libs/google-cloud-cpp-0.9.0 >=sci-libs/keras-applications-1.0.6[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-libs/keras-preprocessing-1.0.5[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-visualization/tensorboard-1.13.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] virtual/python-enum34[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] ) python? ( dev-python/mock )
+DEPEND=>=dev-libs/flatbuffers-1.8.0:= >=dev-libs/protobuf-3.6.0:= !minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/icu >=dev-libs/jsoncpp-1.8.4 dev-libs/libpcre dev-libs/nsync dev-libs/openssl:0= >=dev-libs/re2-0.2018.04.01 media-libs/giflib media-libs/libjpeg-turbo media-libs/libpng:0 >=net-libs/grpc-1.16.0 net-misc/curl sys-libs/zlib >=sys-apps/hwloc-2 ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] dev-libs/cudnn ) mpi? ( virtual/mpi ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/absl-py[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/astor-0.7.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/gast[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/numpy[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/google-pasta[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/protobuf-python-3.6.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/six[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/termcolor[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/grpcio[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/wrapt-1.11.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=net-libs/google-cloud-cpp-0.9.0 >=sci-libs/keras-applications-1.0.6[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-libs/keras-preprocessing-1.0.5[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-visualization/tensorboard-1.13.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] virtual/python-enum34[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] ) python? ( dev-python/mock )
 DESCRIPTION=Computation framework using data flow graphs for scalable machine learning
 EAPI=7
 HOMEPAGE=https://www.tensorflow.org/
@@ -8,9 +8,9 @@
 KEYWORDS=*
 LICENSE=Apache-2.0
 PDEPEND=python? ( >=sci-libs/tensorflow-estimator-1.13.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] )
-RDEPEND=>=dev-libs/flatbuffers-1.8.0 >=dev-libs/protobuf-3.6.0:= !minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/icu >=dev-libs/jsoncpp-1.8.4 dev-libs/libpcre dev-libs/nsync dev-libs/openssl:0= >=dev-libs/re2-0.2018.04.01 media-libs/giflib media-libs/libjpeg-turbo media-libs/libpng:0 >=net-libs/grpc-1.16.0 net-misc/curl sys-libs/zlib >=sys-apps/hwloc-2 ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] dev-libs/cudnn ) mpi? ( virtual/mpi ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/absl-py[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/astor-0.7.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/gast[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/numpy[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/google-pasta[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/protobuf-python-3.6.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/six[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/termcolor[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/grpcio[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/wrapt-1.11.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=net-libs/google-cloud-cpp-0.9.0 >=sci-libs/keras-applications-1.0.6[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-libs/keras-preprocessing-1.0.5[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-visualization/tensorboard-1.13.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] virtual/python-enum34[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] )
+RDEPEND=>=dev-libs/flatbuffers-1.8.0:= >=dev-libs/protobuf-3.6.0:= !minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/icu >=dev-libs/jsoncpp-1.8.4 dev-libs/libpcre dev-libs/nsync dev-libs/openssl:0= >=dev-libs/re2-0.2018.04.01 media-libs/giflib media-libs/libjpeg-turbo media-libs/libpng:0 >=net-libs/grpc-1.16.0 net-misc/curl sys-libs/zlib >=sys-apps/hwloc-2 ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] dev-libs/cudnn ) mpi? ( virtual/mpi ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/absl-py[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/astor-0.7.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/gast[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/numpy[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/google-pasta[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/protobuf-python-3.6.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/six[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/termcolor[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/grpcio[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/wrapt-1.11.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=net-libs/google-cloud-cpp-0.9.0 >=sci-libs/keras-applications-1.0.6[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-libs/keras-preprocessing-1.0.5[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-visualization/tensorboard-1.13.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] virtual/python-enum34[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] )
 REQUIRED_USE=python? ( || ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 ) !minimal )
 SLOT=0
 SRC_URI=https://github.com/tensorflow/tensorflow/archive/v1.14.0.tar.gz -> tensorflow-1.14.0.tar.gz http://www.kurims.kyoto-u.ac.jp/~ooura/fft.tgz -> oourafft-20061228.tgz https://bitbucket.org/eigen/eigen/get/a0d250e79c79.tar.gz -> eigen-a0d250e79c79.tar.gz https://github.com/abseil/abseil-cpp/archive/daf381e8535a1f1f1b8a75966a74e7cca63dee89.tar.gz -> abseil-cpp-daf381e8535a1f1f1b8a75966a74e7cca63dee89.tar.gz https://github.com/bazelbuild/bazel-skylib/archive/0.6.0.tar.gz -> bazel-skylib-0.6.0.tar.gz https://github.com/bazelbuild/rules_closure/archive/cf1e44edb908e9616030cc83d085989b8e6cd6df.tar.gz -> bazelbuild-rules_closure-cf1e44edb908e9616030cc83d085989b8e6cd6df.tar.gz https://github.com/bazelbuild/rules_docker/archive/b8ff6a85ec359db3fd5657accd3e524daf12016d.tar.gz -> rules_docker-b8ff6a85ec359db3fd5657accd3e524daf12016d.tar.gz https://github.com/bazelbuild/rules_swift/releases/download/0.9.0/rules_swift.0.9.0.tar.gz -> bazelbuild-rules_swift.0.9.0.tar.gz https://github.com/google/farmhash/archive/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz -> farmhash-816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz https://github.com/google/gemmlowp/archive/12fed0cd7cfcd9e169bf1925bc3a7a58725fdcc3.zip -> gemmlowp-12fed0cd7cfcd9e169bf1925bc3a7a58725fdcc3.zip https://github.com/google/highwayhash/archive/fd3d9af80465e4383162e4a7c5e2f406e82dd968.tar.gz -> highwayhash-fd3d9af80465e4383162e4a7c5e2f406e82dd968.tar.gz https://github.com/intel/ARM_NEON_2_x86_SSE/archive/1200fe90bb174a6224a525ee60148671a786a71f.tar.gz -> ARM_NEON_2_x86_SSE-1200fe90bb174a6224a525ee60148671a786a71f.tar.gz https://github.com/nlopezgi/bazel-toolchains/archive/94d31935a2c94fe7e7c7379a0f3393e181928ff7.tar.gz -> bazel-toolchains-94d31935a2c94fe7e7c7379a0f3393e181928ff7.tar.gz cuda? ( https://github.com/nvidia/nccl/archive/f93fe9bfd94884cec2ba711897222e0df5569a53.tar.gz -> nvidia-nccl-f93fe9bfd94884cec2ba711897222e0df5569a53.tar.gz https://github.com/NVlabs/cub/archive/1.8.0.zip -> cub-1.8.0.zip ) python? ( http://mirror.tensorflow.org/docs.python.org/2.7/_sources/license.rst.txt -> tensorflow-1.14.0-python-license.rst.txt https://pypi.python.org/packages/bc/cc/3cdb0a02e7e96f6c70bd971bc8a90b8463fda83e264fa9c5c1c98ceabd81/backports.weakref-1.0rc1.tar.gz )
-_eclasses_=bazel	754d004c54b3ac8a286975d232cbab17	check-reqs	74c98e9a7b34b32be3548357852e9ec3	cros-bazel	f8f1ddf279e2cce6ed2320142f477dbf	cuda	bb861e5221b7272ac90c2f12791c1e66	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7799a5c27dbdbdc583ccfc1326916e8d
+_eclasses_=bazel	754d004c54b3ac8a286975d232cbab17	check-reqs	74c98e9a7b34b32be3548357852e9ec3	cros-bazel	f8f1ddf279e2cce6ed2320142f477dbf	cuda	bb861e5221b7272ac90c2f12791c1e66	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5701fe4fe31d9b3fb5c81ecf9ac5363e
diff --git a/metadata/md5-cache/sci-libs/tensorflow-1.14.0-r13 b/metadata/md5-cache/sci-libs/tensorflow-1.14.0-r13
deleted file mode 100644
index 6db855a..0000000
--- a/metadata/md5-cache/sci-libs/tensorflow-1.14.0-r13
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=app-arch/unzip >=dev-libs/flatbuffers-1.8.0 >=dev-libs/protobuf-3.6.0 || ( =dev-util/bazel-0.24* =dev-util/bazel-0.26* =dev-util/bazel-0.27* ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] ) !python? ( dev-lang/python ) python? ( dev-lang/swig dev-python/grpcio-tools dev-python/mock dev-python/cython ) >=dev-util/bazel-0.20
-DEFINED_PHASES=compile configure install prepare setup unpack
-DEPEND=>=dev-libs/flatbuffers-1.8.0 >=dev-libs/protobuf-3.6.0:= !minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/icu >=dev-libs/jsoncpp-1.8.4 dev-libs/libpcre dev-libs/nsync dev-libs/openssl:0= >=dev-libs/re2-0.2018.04.01 media-libs/giflib media-libs/libjpeg-turbo media-libs/libpng:0 >=net-libs/grpc-1.16.0 net-misc/curl sys-libs/zlib >=sys-apps/hwloc-2 ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] dev-libs/cudnn ) mpi? ( virtual/mpi ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/absl-py[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/astor-0.7.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/gast[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/numpy[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/google-pasta[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/protobuf-python-3.6.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/six[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/termcolor[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/grpcio[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/wrapt-1.11.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=net-libs/google-cloud-cpp-0.9.0 >=sci-libs/keras-applications-1.0.6[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-libs/keras-preprocessing-1.0.5[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-visualization/tensorboard-1.13.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] virtual/python-enum34[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] ) python? ( dev-python/mock )
-DESCRIPTION=Computation framework using data flow graphs for scalable machine learning
-EAPI=7
-HOMEPAGE=https://www.tensorflow.org/
-IUSE=cuda mpi minimal +python label_image benchmark_model cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_fma3 cpu_flags_x86_fma4 python_targets_python2_7 python_targets_python3_6 python_targets_python3_7
-KEYWORDS=*
-LICENSE=Apache-2.0
-PDEPEND=python? ( >=sci-libs/tensorflow-estimator-1.13.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] )
-RDEPEND=>=dev-libs/flatbuffers-1.8.0 >=dev-libs/protobuf-3.6.0:= !minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/icu >=dev-libs/jsoncpp-1.8.4 dev-libs/libpcre dev-libs/nsync dev-libs/openssl:0= >=dev-libs/re2-0.2018.04.01 media-libs/giflib media-libs/libjpeg-turbo media-libs/libpng:0 >=net-libs/grpc-1.16.0 net-misc/curl sys-libs/zlib >=sys-apps/hwloc-2 ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] dev-libs/cudnn ) mpi? ( virtual/mpi ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/absl-py[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/astor-0.7.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/gast[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/numpy[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/google-pasta[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/protobuf-python-3.6.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/six[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/termcolor[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/grpcio[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/wrapt-1.11.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=net-libs/google-cloud-cpp-0.9.0 >=sci-libs/keras-applications-1.0.6[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-libs/keras-preprocessing-1.0.5[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-visualization/tensorboard-1.13.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] virtual/python-enum34[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] )
-REQUIRED_USE=python? ( || ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 ) !minimal )
-SLOT=0
-SRC_URI=https://github.com/tensorflow/tensorflow/archive/v1.14.0.tar.gz -> tensorflow-1.14.0.tar.gz http://www.kurims.kyoto-u.ac.jp/~ooura/fft.tgz -> oourafft-20061228.tgz https://bitbucket.org/eigen/eigen/get/a0d250e79c79.tar.gz -> eigen-a0d250e79c79.tar.gz https://github.com/abseil/abseil-cpp/archive/daf381e8535a1f1f1b8a75966a74e7cca63dee89.tar.gz -> abseil-cpp-daf381e8535a1f1f1b8a75966a74e7cca63dee89.tar.gz https://github.com/bazelbuild/bazel-skylib/archive/0.6.0.tar.gz -> bazel-skylib-0.6.0.tar.gz https://github.com/bazelbuild/rules_closure/archive/cf1e44edb908e9616030cc83d085989b8e6cd6df.tar.gz -> bazelbuild-rules_closure-cf1e44edb908e9616030cc83d085989b8e6cd6df.tar.gz https://github.com/bazelbuild/rules_docker/archive/b8ff6a85ec359db3fd5657accd3e524daf12016d.tar.gz -> rules_docker-b8ff6a85ec359db3fd5657accd3e524daf12016d.tar.gz https://github.com/bazelbuild/rules_swift/releases/download/0.9.0/rules_swift.0.9.0.tar.gz -> bazelbuild-rules_swift.0.9.0.tar.gz https://github.com/google/farmhash/archive/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz -> farmhash-816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz https://github.com/google/gemmlowp/archive/12fed0cd7cfcd9e169bf1925bc3a7a58725fdcc3.zip -> gemmlowp-12fed0cd7cfcd9e169bf1925bc3a7a58725fdcc3.zip https://github.com/google/highwayhash/archive/fd3d9af80465e4383162e4a7c5e2f406e82dd968.tar.gz -> highwayhash-fd3d9af80465e4383162e4a7c5e2f406e82dd968.tar.gz https://github.com/intel/ARM_NEON_2_x86_SSE/archive/1200fe90bb174a6224a525ee60148671a786a71f.tar.gz -> ARM_NEON_2_x86_SSE-1200fe90bb174a6224a525ee60148671a786a71f.tar.gz https://github.com/nlopezgi/bazel-toolchains/archive/94d31935a2c94fe7e7c7379a0f3393e181928ff7.tar.gz -> bazel-toolchains-94d31935a2c94fe7e7c7379a0f3393e181928ff7.tar.gz cuda? ( https://github.com/nvidia/nccl/archive/f93fe9bfd94884cec2ba711897222e0df5569a53.tar.gz -> nvidia-nccl-f93fe9bfd94884cec2ba711897222e0df5569a53.tar.gz https://github.com/NVlabs/cub/archive/1.8.0.zip -> cub-1.8.0.zip ) python? ( http://mirror.tensorflow.org/docs.python.org/2.7/_sources/license.rst.txt -> tensorflow-1.14.0-python-license.rst.txt https://pypi.python.org/packages/bc/cc/3cdb0a02e7e96f6c70bd971bc8a90b8463fda83e264fa9c5c1c98ceabd81/backports.weakref-1.0rc1.tar.gz )
-_eclasses_=bazel	754d004c54b3ac8a286975d232cbab17	check-reqs	74c98e9a7b34b32be3548357852e9ec3	cros-bazel	f8f1ddf279e2cce6ed2320142f477dbf	cuda	bb861e5221b7272ac90c2f12791c1e66	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7799a5c27dbdbdc583ccfc1326916e8d
diff --git a/metadata/md5-cache/sci-libs/tensorflow-1.14.0-r14 b/metadata/md5-cache/sci-libs/tensorflow-1.14.0-r14
new file mode 100644
index 0000000..d96e337
--- /dev/null
+++ b/metadata/md5-cache/sci-libs/tensorflow-1.14.0-r14
@@ -0,0 +1,16 @@
+BDEPEND=app-arch/unzip >=dev-libs/flatbuffers-1.8.0 >=dev-libs/protobuf-3.6.0 || ( =dev-util/bazel-0.24* =dev-util/bazel-0.26* =dev-util/bazel-0.27* ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] ) !python? ( dev-lang/python ) python? ( dev-lang/swig dev-python/grpcio-tools dev-python/mock dev-python/cython ) >=dev-util/bazel-0.20
+DEFINED_PHASES=compile configure install prepare setup unpack
+DEPEND=>=dev-libs/flatbuffers-1.8.0:= >=dev-libs/protobuf-3.6.0:= !minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/icu >=dev-libs/jsoncpp-1.8.4 dev-libs/libpcre dev-libs/nsync dev-libs/openssl:0= >=dev-libs/re2-0.2018.04.01 media-libs/giflib media-libs/libjpeg-turbo media-libs/libpng:0 >=net-libs/grpc-1.16.0 net-misc/curl sys-libs/zlib >=sys-apps/hwloc-2 ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] dev-libs/cudnn ) mpi? ( virtual/mpi ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/absl-py[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/astor-0.7.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/gast[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/numpy[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/google-pasta[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/protobuf-python-3.6.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/six[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/termcolor[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/grpcio[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/wrapt-1.11.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=net-libs/google-cloud-cpp-0.9.0 >=sci-libs/keras-applications-1.0.6[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-libs/keras-preprocessing-1.0.5[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-visualization/tensorboard-1.13.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] virtual/python-enum34[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] ) python? ( dev-python/mock )
+DESCRIPTION=Computation framework using data flow graphs for scalable machine learning
+EAPI=7
+HOMEPAGE=https://www.tensorflow.org/
+IUSE=cuda mpi minimal +python label_image benchmark_model cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_fma3 cpu_flags_x86_fma4 python_targets_python2_7 python_targets_python3_6 python_targets_python3_7
+KEYWORDS=*
+LICENSE=Apache-2.0
+PDEPEND=python? ( >=sci-libs/tensorflow-estimator-1.13.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] )
+RDEPEND=>=dev-libs/flatbuffers-1.8.0:= >=dev-libs/protobuf-3.6.0:= !minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/icu >=dev-libs/jsoncpp-1.8.4 dev-libs/libpcre dev-libs/nsync dev-libs/openssl:0= >=dev-libs/re2-0.2018.04.01 media-libs/giflib media-libs/libjpeg-turbo media-libs/libpng:0 >=net-libs/grpc-1.16.0 net-misc/curl sys-libs/zlib >=sys-apps/hwloc-2 ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] dev-libs/cudnn ) mpi? ( virtual/mpi ) python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/absl-py[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/astor-0.7.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/gast[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/numpy[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/google-pasta[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/protobuf-python-3.6.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/six[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/termcolor[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/grpcio[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=dev-python/wrapt-1.11.1[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=net-libs/google-cloud-cpp-0.9.0 >=sci-libs/keras-applications-1.0.6[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-libs/keras-preprocessing-1.0.5[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=sci-visualization/tensorboard-1.13.0[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] virtual/python-enum34[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] )
+REQUIRED_USE=python? ( || ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 ) !minimal )
+SLOT=0
+SRC_URI=https://github.com/tensorflow/tensorflow/archive/v1.14.0.tar.gz -> tensorflow-1.14.0.tar.gz http://www.kurims.kyoto-u.ac.jp/~ooura/fft.tgz -> oourafft-20061228.tgz https://bitbucket.org/eigen/eigen/get/a0d250e79c79.tar.gz -> eigen-a0d250e79c79.tar.gz https://github.com/abseil/abseil-cpp/archive/daf381e8535a1f1f1b8a75966a74e7cca63dee89.tar.gz -> abseil-cpp-daf381e8535a1f1f1b8a75966a74e7cca63dee89.tar.gz https://github.com/bazelbuild/bazel-skylib/archive/0.6.0.tar.gz -> bazel-skylib-0.6.0.tar.gz https://github.com/bazelbuild/rules_closure/archive/cf1e44edb908e9616030cc83d085989b8e6cd6df.tar.gz -> bazelbuild-rules_closure-cf1e44edb908e9616030cc83d085989b8e6cd6df.tar.gz https://github.com/bazelbuild/rules_docker/archive/b8ff6a85ec359db3fd5657accd3e524daf12016d.tar.gz -> rules_docker-b8ff6a85ec359db3fd5657accd3e524daf12016d.tar.gz https://github.com/bazelbuild/rules_swift/releases/download/0.9.0/rules_swift.0.9.0.tar.gz -> bazelbuild-rules_swift.0.9.0.tar.gz https://github.com/google/farmhash/archive/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz -> farmhash-816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz https://github.com/google/gemmlowp/archive/12fed0cd7cfcd9e169bf1925bc3a7a58725fdcc3.zip -> gemmlowp-12fed0cd7cfcd9e169bf1925bc3a7a58725fdcc3.zip https://github.com/google/highwayhash/archive/fd3d9af80465e4383162e4a7c5e2f406e82dd968.tar.gz -> highwayhash-fd3d9af80465e4383162e4a7c5e2f406e82dd968.tar.gz https://github.com/intel/ARM_NEON_2_x86_SSE/archive/1200fe90bb174a6224a525ee60148671a786a71f.tar.gz -> ARM_NEON_2_x86_SSE-1200fe90bb174a6224a525ee60148671a786a71f.tar.gz https://github.com/nlopezgi/bazel-toolchains/archive/94d31935a2c94fe7e7c7379a0f3393e181928ff7.tar.gz -> bazel-toolchains-94d31935a2c94fe7e7c7379a0f3393e181928ff7.tar.gz cuda? ( https://github.com/nvidia/nccl/archive/f93fe9bfd94884cec2ba711897222e0df5569a53.tar.gz -> nvidia-nccl-f93fe9bfd94884cec2ba711897222e0df5569a53.tar.gz https://github.com/NVlabs/cub/archive/1.8.0.zip -> cub-1.8.0.zip ) python? ( http://mirror.tensorflow.org/docs.python.org/2.7/_sources/license.rst.txt -> tensorflow-1.14.0-python-license.rst.txt https://pypi.python.org/packages/bc/cc/3cdb0a02e7e96f6c70bd971bc8a90b8463fda83e264fa9c5c1c98ceabd81/backports.weakref-1.0rc1.tar.gz )
+_eclasses_=bazel	754d004c54b3ac8a286975d232cbab17	check-reqs	74c98e9a7b34b32be3548357852e9ec3	cros-bazel	f8f1ddf279e2cce6ed2320142f477dbf	cuda	bb861e5221b7272ac90c2f12791c1e66	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5701fe4fe31d9b3fb5c81ecf9ac5363e
diff --git a/metadata/md5-cache/sci-libs/tensorflow-2.5.0 b/metadata/md5-cache/sci-libs/tensorflow-2.5.0
deleted file mode 100644
index a3b52ce..0000000
--- a/metadata/md5-cache/sci-libs/tensorflow-2.5.0
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=app-arch/unzip >=dev-libs/protobuf-3.8.0 dev-java/java-config dev-lang/swig !minimal? ( =dev-util/bazel-3* ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] ) !python? ( dev-lang/python ) python? ( dev-python/cython dev-python/mock >=dev-python/grpcio-tools-1.28 ) >=dev-util/bazel-0.20
-DEFINED_PHASES=compile configure install prepare setup unpack
-DEPEND=!minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/double-conversion dev-libs/icu >=dev-libs/jsoncpp-1.9.2 ) dev-libs/libpcre !minimal? ( dev-libs/nsync ) dev-libs/openssl:0= >=dev-libs/protobuf-3.8.0:= >=dev-libs/re2-0.2019.06.01 !minimal? ( media-libs/giflib ) media-libs/libjpeg-turbo media-libs/libpng:0 !minimal? ( >=net-libs/grpc-1.28 ) net-misc/curl sys-libs/zlib !minimal? ( >=sys-apps/hwloc-2 ) cuda? ( || ( ( =dev-util/nvidia-cuda-toolkit-10.2*[profiler] =dev-libs/cudnn-7* ) ( =dev-util/nvidia-cuda-toolkit-10.1*[profiler] =dev-libs/cudnn-7* ) ( =dev-util/nvidia-cuda-toolkit-10.0*[profiler] =dev-libs/cudnn-7.4* ) ( =dev-util/nvidia-cuda-toolkit-9.2*[profiler] =dev-libs/cudnn-7.1* ) ( =dev-util/nvidia-cuda-toolkit-9.1*[profiler] =dev-libs/cudnn-7.0* ) ) ) mpi? ( virtual/mpi ) python? ( python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-libs/flatbuffers-1.12.0:= dev-python/absl-py[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/astor-0.7.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/astunparse[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/gast-0.3.3[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/h5py[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/numpy-1.19[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/google-pasta-0.1.8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/opt-einsum[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/protobuf-python-3.8.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/pybind11[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/six[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/termcolor[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/grpcio-1.28[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/wrapt-1.11.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=net-libs/google-cloud-cpp-0.10.0 >=sci-libs/keras-applications-1.0.8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=sci-libs/keras-preprocessing-1.1.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=sci-visualization/tensorboard-2.3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/dill[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/tblib[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) python? ( dev-python/mock dev-python/setuptools )
-DESCRIPTION=Computation framework using data flow graphs for scalable machine learning
-EAPI=7
-HOMEPAGE=https://www.tensorflow.org/
-IUSE=cuda mpi +python xla minimal label_image benchmark_model xnnpack python_targets_python3_6 python_targets_python3_7 python_targets_python3_8
-KEYWORDS=*
-LICENSE=Apache-2.0
-PDEPEND=python? ( >=sci-libs/tensorflow-estimator-2.3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] )
-RDEPEND=!minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/double-conversion dev-libs/icu >=dev-libs/jsoncpp-1.9.2 ) dev-libs/libpcre !minimal? ( dev-libs/nsync ) dev-libs/openssl:0= >=dev-libs/protobuf-3.8.0:= >=dev-libs/re2-0.2019.06.01 !minimal? ( media-libs/giflib ) media-libs/libjpeg-turbo media-libs/libpng:0 !minimal? ( >=net-libs/grpc-1.28 ) net-misc/curl sys-libs/zlib !minimal? ( >=sys-apps/hwloc-2 ) cuda? ( || ( ( =dev-util/nvidia-cuda-toolkit-10.2*[profiler] =dev-libs/cudnn-7* ) ( =dev-util/nvidia-cuda-toolkit-10.1*[profiler] =dev-libs/cudnn-7* ) ( =dev-util/nvidia-cuda-toolkit-10.0*[profiler] =dev-libs/cudnn-7.4* ) ( =dev-util/nvidia-cuda-toolkit-9.2*[profiler] =dev-libs/cudnn-7.1* ) ( =dev-util/nvidia-cuda-toolkit-9.1*[profiler] =dev-libs/cudnn-7.0* ) ) ) mpi? ( virtual/mpi ) python? ( python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-libs/flatbuffers-1.12.0:= dev-python/absl-py[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/astor-0.7.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/astunparse[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/gast-0.3.3[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/h5py[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/numpy-1.19[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/google-pasta-0.1.8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/opt-einsum[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/protobuf-python-3.8.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/pybind11[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/six[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/termcolor[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/grpcio-1.28[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/wrapt-1.11.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=net-libs/google-cloud-cpp-0.10.0 >=sci-libs/keras-applications-1.0.8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=sci-libs/keras-preprocessing-1.1.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=sci-visualization/tensorboard-2.3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/dill[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/tblib[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] )
-REQUIRED_USE=python? ( || ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 ) )
-SLOT=0
-SRC_URI=https://github.com/tensorflow/tensorflow/archive/v2.5.0.tar.gz -> tensorflow-2.5.0.tar.gz https://github.com/abseil/abseil-cpp/archive/6f9d96a1f41439ac172ee2ef7ccd8edf0e5d068c.tar.gz -> abseil-cpp-6f9d96a1f41439ac172ee2ef7ccd8edf0e5d068c.tar.gz https://github.com/bazelbuild/apple_support/archive/501b4afb27745c4813a88ffa28acd901408014e4.tar.gz -> bazelbuild-apple_support-501b4afb27745c4813a88ffa28acd901408014e4.tar.gz https://github.com/bazelbuild/bazel-toolchains/archive/92dd8a7a518a2fb7ba992d47c8b38299fe0be825.tar.gz -> bazel-toolchains-92dd8a7a518a2fb7ba992d47c8b38299fe0be825.tar.gz https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz -> bazel-skylib-1.0.3.tar.gz https://github.com/bazelbuild/rules_android/archive/v0.1.1.zip -> bazelbuild-rules_android-v0.1.1.zip https://github.com/bazelbuild/rules_apple/archive/5131f3d46794bf227d296c82f30c2499c9de3c5b.tar.gz -> bazelbuild-rules_apple-5131f3d46794bf227d296c82f30c2499c9de3c5b.tar.gz https://github.com/bazelbuild/rules_cc/archive/01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip -> bazelbuild-rules_cc-01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip https://github.com/bazelbuild/rules_closure/archive/308b05b2419edb5c8ee0471b67a40403df940149.tar.gz -> bazelbuild-rules_closure-308b05b2419edb5c8ee0471b67a40403df940149.tar.gz https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip https://github.com/bazelbuild/rules_swift/archive/3eeeb53cebda55b349d64c9fc144e18c5f7c0eb8.tar.gz -> bazelbuild-rules_swift-3eeeb53cebda55b349d64c9fc144e18c5f7c0eb8.tar.gz https://github.com/google/farmhash/archive/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz -> farmhash-816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz https://github.com/google/gemmlowp/archive/fda83bdc38b118cc6b56753bd540caa49e570745.zip -> gemmlowp-fda83bdc38b118cc6b56753bd540caa49e570745.zip https://github.com/google/ruy/archive/54774a7a2cf85963777289193629d4bd42de4a59.zip -> ruy-54774a7a2cf85963777289193629d4bd42de4a59.zip https://github.com/google/XNNPACK/archive/79cd5f9e18ad0925ac9a050b00ea5a36230072db.zip -> XNNPACK-79cd5f9e18ad0925ac9a050b00ea5a36230072db.zip https://github.com/intel/ARM_NEON_2_x86_SSE/archive/1200fe90bb174a6224a525ee60148671a786a71f.tar.gz -> ARM_NEON_2_x86_SSE-1200fe90bb174a6224a525ee60148671a786a71f.tar.gz https://github.com/googleapis/googleapis/archive/541b1ded4abadcc38e8178680b0677f65594ea6f.zip -> googleapis-541b1ded4abadcc38e8178680b0677f65594ea6f.zip https://github.com/petewarden/OouraFFT/archive/v1.0.tar.gz -> OouraFFT-v1.0.tar.gz https://github.com/pytorch/cpuinfo/archive/5916273f79a21551890fd3d56fc5375a78d1598d.zip -> pytorch-cpuinfo-5916273f79a21551890fd3d56fc5375a78d1598d.zip https://github.com/pytorch/cpuinfo/archive/d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz -> pytorch-cpuinfo-d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz https://github.com/Maratyszcza/FP16/archive/4dfe081cf6bcd15db339cf2680b9281b8451eeb3.zip -> FP16-4dfe081cf6bcd15db339cf2680b9281b8451eeb3.zip https://github.com/Maratyszcza/FXdiv/archive/63058eff77e11aa15bf531df5dd34395ec3017c8.zip -> FXdiv-63058eff77e11aa15bf531df5dd34395ec3017c8.zip https://github.com/Maratyszcza/pthreadpool/archive/b8374f80e42010941bda6c85b0e3f1a1bd77a1e0.zip -> pthreadpool-b8374f80e42010941bda6c85b0e3f1a1bd77a1e0.zip https://github.com/tensorflow/toolchains/archive/v1.1.10.tar.gz -> tensorflow_toolchains_v1.1.10.tar.gz https://gitlab.com/libeigen/eigen/-/archive/f612df273689a19d25b45ca4f8269463207c4fee/eigen-f612df273689a19d25b45ca4f8269463207c4fee.tar.gz -> eigen-f612df273689a19d25b45ca4f8269463207c4fee.tar.gz
-_eclasses_=bazel	754d004c54b3ac8a286975d232cbab17	check-reqs	74c98e9a7b34b32be3548357852e9ec3	cros-bazel	f8f1ddf279e2cce6ed2320142f477dbf	cuda	bb861e5221b7272ac90c2f12791c1e66	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=db3a0656379ca43f062bef88b500e2e7
diff --git a/metadata/md5-cache/sci-libs/tensorflow-2.5.0-r2 b/metadata/md5-cache/sci-libs/tensorflow-2.5.0-r2
deleted file mode 100644
index a3b52ce..0000000
--- a/metadata/md5-cache/sci-libs/tensorflow-2.5.0-r2
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=app-arch/unzip >=dev-libs/protobuf-3.8.0 dev-java/java-config dev-lang/swig !minimal? ( =dev-util/bazel-3* ) cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] ) !python? ( dev-lang/python ) python? ( dev-python/cython dev-python/mock >=dev-python/grpcio-tools-1.28 ) >=dev-util/bazel-0.20
-DEFINED_PHASES=compile configure install prepare setup unpack
-DEPEND=!minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/double-conversion dev-libs/icu >=dev-libs/jsoncpp-1.9.2 ) dev-libs/libpcre !minimal? ( dev-libs/nsync ) dev-libs/openssl:0= >=dev-libs/protobuf-3.8.0:= >=dev-libs/re2-0.2019.06.01 !minimal? ( media-libs/giflib ) media-libs/libjpeg-turbo media-libs/libpng:0 !minimal? ( >=net-libs/grpc-1.28 ) net-misc/curl sys-libs/zlib !minimal? ( >=sys-apps/hwloc-2 ) cuda? ( || ( ( =dev-util/nvidia-cuda-toolkit-10.2*[profiler] =dev-libs/cudnn-7* ) ( =dev-util/nvidia-cuda-toolkit-10.1*[profiler] =dev-libs/cudnn-7* ) ( =dev-util/nvidia-cuda-toolkit-10.0*[profiler] =dev-libs/cudnn-7.4* ) ( =dev-util/nvidia-cuda-toolkit-9.2*[profiler] =dev-libs/cudnn-7.1* ) ( =dev-util/nvidia-cuda-toolkit-9.1*[profiler] =dev-libs/cudnn-7.0* ) ) ) mpi? ( virtual/mpi ) python? ( python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-libs/flatbuffers-1.12.0:= dev-python/absl-py[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/astor-0.7.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/astunparse[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/gast-0.3.3[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/h5py[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/numpy-1.19[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/google-pasta-0.1.8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/opt-einsum[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/protobuf-python-3.8.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/pybind11[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/six[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/termcolor[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/grpcio-1.28[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/wrapt-1.11.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=net-libs/google-cloud-cpp-0.10.0 >=sci-libs/keras-applications-1.0.8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=sci-libs/keras-preprocessing-1.1.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=sci-visualization/tensorboard-2.3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/dill[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/tblib[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) python? ( dev-python/mock dev-python/setuptools )
-DESCRIPTION=Computation framework using data flow graphs for scalable machine learning
-EAPI=7
-HOMEPAGE=https://www.tensorflow.org/
-IUSE=cuda mpi +python xla minimal label_image benchmark_model xnnpack python_targets_python3_6 python_targets_python3_7 python_targets_python3_8
-KEYWORDS=*
-LICENSE=Apache-2.0
-PDEPEND=python? ( >=sci-libs/tensorflow-estimator-2.3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] )
-RDEPEND=!minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/double-conversion dev-libs/icu >=dev-libs/jsoncpp-1.9.2 ) dev-libs/libpcre !minimal? ( dev-libs/nsync ) dev-libs/openssl:0= >=dev-libs/protobuf-3.8.0:= >=dev-libs/re2-0.2019.06.01 !minimal? ( media-libs/giflib ) media-libs/libjpeg-turbo media-libs/libpng:0 !minimal? ( >=net-libs/grpc-1.28 ) net-misc/curl sys-libs/zlib !minimal? ( >=sys-apps/hwloc-2 ) cuda? ( || ( ( =dev-util/nvidia-cuda-toolkit-10.2*[profiler] =dev-libs/cudnn-7* ) ( =dev-util/nvidia-cuda-toolkit-10.1*[profiler] =dev-libs/cudnn-7* ) ( =dev-util/nvidia-cuda-toolkit-10.0*[profiler] =dev-libs/cudnn-7.4* ) ( =dev-util/nvidia-cuda-toolkit-9.2*[profiler] =dev-libs/cudnn-7.1* ) ( =dev-util/nvidia-cuda-toolkit-9.1*[profiler] =dev-libs/cudnn-7.0* ) ) ) mpi? ( virtual/mpi ) python? ( python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-libs/flatbuffers-1.12.0:= dev-python/absl-py[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/astor-0.7.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/astunparse[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/gast-0.3.3[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/h5py[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/numpy-1.19[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/google-pasta-0.1.8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/opt-einsum[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/protobuf-python-3.8.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/pybind11[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/six[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/termcolor[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/grpcio-1.28[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/wrapt-1.11.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=net-libs/google-cloud-cpp-0.10.0 >=sci-libs/keras-applications-1.0.8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=sci-libs/keras-preprocessing-1.1.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=sci-visualization/tensorboard-2.3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/dill[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/tblib[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] )
-REQUIRED_USE=python? ( || ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 ) )
-SLOT=0
-SRC_URI=https://github.com/tensorflow/tensorflow/archive/v2.5.0.tar.gz -> tensorflow-2.5.0.tar.gz https://github.com/abseil/abseil-cpp/archive/6f9d96a1f41439ac172ee2ef7ccd8edf0e5d068c.tar.gz -> abseil-cpp-6f9d96a1f41439ac172ee2ef7ccd8edf0e5d068c.tar.gz https://github.com/bazelbuild/apple_support/archive/501b4afb27745c4813a88ffa28acd901408014e4.tar.gz -> bazelbuild-apple_support-501b4afb27745c4813a88ffa28acd901408014e4.tar.gz https://github.com/bazelbuild/bazel-toolchains/archive/92dd8a7a518a2fb7ba992d47c8b38299fe0be825.tar.gz -> bazel-toolchains-92dd8a7a518a2fb7ba992d47c8b38299fe0be825.tar.gz https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz -> bazel-skylib-1.0.3.tar.gz https://github.com/bazelbuild/rules_android/archive/v0.1.1.zip -> bazelbuild-rules_android-v0.1.1.zip https://github.com/bazelbuild/rules_apple/archive/5131f3d46794bf227d296c82f30c2499c9de3c5b.tar.gz -> bazelbuild-rules_apple-5131f3d46794bf227d296c82f30c2499c9de3c5b.tar.gz https://github.com/bazelbuild/rules_cc/archive/01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip -> bazelbuild-rules_cc-01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip https://github.com/bazelbuild/rules_closure/archive/308b05b2419edb5c8ee0471b67a40403df940149.tar.gz -> bazelbuild-rules_closure-308b05b2419edb5c8ee0471b67a40403df940149.tar.gz https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip https://github.com/bazelbuild/rules_swift/archive/3eeeb53cebda55b349d64c9fc144e18c5f7c0eb8.tar.gz -> bazelbuild-rules_swift-3eeeb53cebda55b349d64c9fc144e18c5f7c0eb8.tar.gz https://github.com/google/farmhash/archive/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz -> farmhash-816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz https://github.com/google/gemmlowp/archive/fda83bdc38b118cc6b56753bd540caa49e570745.zip -> gemmlowp-fda83bdc38b118cc6b56753bd540caa49e570745.zip https://github.com/google/ruy/archive/54774a7a2cf85963777289193629d4bd42de4a59.zip -> ruy-54774a7a2cf85963777289193629d4bd42de4a59.zip https://github.com/google/XNNPACK/archive/79cd5f9e18ad0925ac9a050b00ea5a36230072db.zip -> XNNPACK-79cd5f9e18ad0925ac9a050b00ea5a36230072db.zip https://github.com/intel/ARM_NEON_2_x86_SSE/archive/1200fe90bb174a6224a525ee60148671a786a71f.tar.gz -> ARM_NEON_2_x86_SSE-1200fe90bb174a6224a525ee60148671a786a71f.tar.gz https://github.com/googleapis/googleapis/archive/541b1ded4abadcc38e8178680b0677f65594ea6f.zip -> googleapis-541b1ded4abadcc38e8178680b0677f65594ea6f.zip https://github.com/petewarden/OouraFFT/archive/v1.0.tar.gz -> OouraFFT-v1.0.tar.gz https://github.com/pytorch/cpuinfo/archive/5916273f79a21551890fd3d56fc5375a78d1598d.zip -> pytorch-cpuinfo-5916273f79a21551890fd3d56fc5375a78d1598d.zip https://github.com/pytorch/cpuinfo/archive/d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz -> pytorch-cpuinfo-d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz https://github.com/Maratyszcza/FP16/archive/4dfe081cf6bcd15db339cf2680b9281b8451eeb3.zip -> FP16-4dfe081cf6bcd15db339cf2680b9281b8451eeb3.zip https://github.com/Maratyszcza/FXdiv/archive/63058eff77e11aa15bf531df5dd34395ec3017c8.zip -> FXdiv-63058eff77e11aa15bf531df5dd34395ec3017c8.zip https://github.com/Maratyszcza/pthreadpool/archive/b8374f80e42010941bda6c85b0e3f1a1bd77a1e0.zip -> pthreadpool-b8374f80e42010941bda6c85b0e3f1a1bd77a1e0.zip https://github.com/tensorflow/toolchains/archive/v1.1.10.tar.gz -> tensorflow_toolchains_v1.1.10.tar.gz https://gitlab.com/libeigen/eigen/-/archive/f612df273689a19d25b45ca4f8269463207c4fee/eigen-f612df273689a19d25b45ca4f8269463207c4fee.tar.gz -> eigen-f612df273689a19d25b45ca4f8269463207c4fee.tar.gz
-_eclasses_=bazel	754d004c54b3ac8a286975d232cbab17	check-reqs	74c98e9a7b34b32be3548357852e9ec3	cros-bazel	f8f1ddf279e2cce6ed2320142f477dbf	cuda	bb861e5221b7272ac90c2f12791c1e66	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=db3a0656379ca43f062bef88b500e2e7
diff --git a/metadata/md5-cache/sci-libs/tensorflow-2.6.0 b/metadata/md5-cache/sci-libs/tensorflow-2.6.0
new file mode 100644
index 0000000..a4bc8ef
--- /dev/null
+++ b/metadata/md5-cache/sci-libs/tensorflow-2.6.0
@@ -0,0 +1,16 @@
+BDEPEND=app-arch/unzip >=dev-libs/protobuf-3.8.0 dev-java/java-config dev-lang/swig =dev-util/bazel-3* cuda? ( >=dev-util/nvidia-cuda-toolkit-9.1[profiler] ) !python? ( dev-lang/python ) python? ( dev-python/cython dev-python/mock >=dev-python/grpcio-tools-1.28 ) >=dev-util/bazel-0.20
+DEFINED_PHASES=compile configure install prepare setup unpack
+DEPEND=x11-drivers/opengles-headers:= virtual/opengles:= !minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/double-conversion dev-libs/icu >=dev-libs/jsoncpp-1.9.2 ) >=dev-libs/flatbuffers-1.12.0:= dev-libs/libpcre !minimal? ( dev-libs/nsync ) dev-libs/openssl:0= >=dev-libs/protobuf-3.8.0:= >=dev-libs/re2-0.2019.06.01 !minimal? ( media-libs/giflib ) media-libs/libjpeg-turbo media-libs/libpng:0 !minimal? ( >=net-libs/grpc-1.28 ) net-misc/curl sys-libs/zlib !minimal? ( >=sys-apps/hwloc-2 ) cuda? ( || ( ( =dev-util/nvidia-cuda-toolkit-10.2*[profiler] =dev-libs/cudnn-7* ) ( =dev-util/nvidia-cuda-toolkit-10.1*[profiler] =dev-libs/cudnn-7* ) ( =dev-util/nvidia-cuda-toolkit-10.0*[profiler] =dev-libs/cudnn-7.4* ) ( =dev-util/nvidia-cuda-toolkit-9.2*[profiler] =dev-libs/cudnn-7.1* ) ( =dev-util/nvidia-cuda-toolkit-9.1*[profiler] =dev-libs/cudnn-7.0* ) ) ) mpi? ( virtual/mpi ) python? ( python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/absl-py[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/astor-0.7.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/astunparse[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/gast-0.3.3[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/h5py[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/numpy-1.19[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/google-pasta-0.1.8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/opt-einsum[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/protobuf-python-3.8.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/pybind11[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/six[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/termcolor[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/grpcio-1.28[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/wrapt-1.11.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=net-libs/google-cloud-cpp-0.10.0 >=sci-libs/keras-applications-1.0.8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=sci-libs/keras-preprocessing-1.1.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=sci-visualization/tensorboard-2.3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/dill[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/tblib[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] ) python? ( dev-python/mock dev-python/setuptools )
+DESCRIPTION=Computation framework using data flow graphs for scalable machine learning
+EAPI=7
+HOMEPAGE=https://www.tensorflow.org/
+IUSE=cuda mpi +python xla minimal label_image benchmark_model xnnpack python_targets_python3_6 python_targets_python3_7 python_targets_python3_8
+KEYWORDS=*
+LICENSE=Apache-2.0
+PDEPEND=python? ( >=sci-libs/tensorflow-estimator-2.3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] )
+RDEPEND=x11-drivers/opengles-headers:= virtual/opengles:= !minimal? ( app-arch/snappy dev-db/lmdb dev-db/sqlite dev-libs/double-conversion dev-libs/icu >=dev-libs/jsoncpp-1.9.2 ) >=dev-libs/flatbuffers-1.12.0:= dev-libs/libpcre !minimal? ( dev-libs/nsync ) dev-libs/openssl:0= >=dev-libs/protobuf-3.8.0:= >=dev-libs/re2-0.2019.06.01 !minimal? ( media-libs/giflib ) media-libs/libjpeg-turbo media-libs/libpng:0 !minimal? ( >=net-libs/grpc-1.28 ) net-misc/curl sys-libs/zlib !minimal? ( >=sys-apps/hwloc-2 ) cuda? ( || ( ( =dev-util/nvidia-cuda-toolkit-10.2*[profiler] =dev-libs/cudnn-7* ) ( =dev-util/nvidia-cuda-toolkit-10.1*[profiler] =dev-libs/cudnn-7* ) ( =dev-util/nvidia-cuda-toolkit-10.0*[profiler] =dev-libs/cudnn-7.4* ) ( =dev-util/nvidia-cuda-toolkit-9.2*[profiler] =dev-libs/cudnn-7.1* ) ( =dev-util/nvidia-cuda-toolkit-9.1*[profiler] =dev-libs/cudnn-7.0* ) ) ) mpi? ( virtual/mpi ) python? ( python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) python_targets_python3_8? ( dev-lang/python:3.8 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/absl-py[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/astor-0.7.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/astunparse[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/gast-0.3.3[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/h5py[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/numpy-1.19[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/google-pasta-0.1.8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/opt-einsum[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/protobuf-python-3.8.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/pybind11[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/six[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/termcolor[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/grpcio-1.28[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=dev-python/wrapt-1.11.1[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=net-libs/google-cloud-cpp-0.10.0 >=sci-libs/keras-applications-1.0.8[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=sci-libs/keras-preprocessing-1.1.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] >=sci-visualization/tensorboard-2.3.0[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/dill[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] dev-python/tblib[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-)] )
+REQUIRED_USE=python? ( || ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 ) )
+SLOT=0
+SRC_URI=https://github.com/tensorflow/tensorflow/archive/v2.6.0.tar.gz -> tensorflow-2.6.0.tar.gz https://github.com/bazelbuild/platforms/releases/download/0.0.2/platforms-0.0.2.tar.gz -> bazelbuild-platforms-0.0.2.tar.gz https://github.com/bazelbuild/apple_support/archive/501b4afb27745c4813a88ffa28acd901408014e4.tar.gz -> bazelbuild-apple_support-501b4afb27745c4813a88ffa28acd901408014e4.tar.gz https://github.com/bazelbuild/bazel-toolchains/archive/92dd8a7a518a2fb7ba992d47c8b38299fe0be825.tar.gz -> bazel-toolchains-92dd8a7a518a2fb7ba992d47c8b38299fe0be825.tar.gz https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz -> bazel-skylib-1.0.3.tar.gz https://github.com/bazelbuild/rules_android/archive/v0.1.1.zip -> bazelbuild-rules_android-v0.1.1.zip https://github.com/bazelbuild/rules_apple/archive/5131f3d46794bf227d296c82f30c2499c9de3c5b.tar.gz -> bazelbuild-rules_apple-5131f3d46794bf227d296c82f30c2499c9de3c5b.tar.gz https://github.com/bazelbuild/rules_cc/archive/40548a2974f1aea06215272d9c2b47a14a24e556.tar.gz -> bazelbuild-rules_cc-40548a2974f1aea06215272d9c2b47a14a24e556.tar.gz https://github.com/bazelbuild/rules_closure/archive/308b05b2419edb5c8ee0471b67a40403df940149.tar.gz -> bazelbuild-rules_closure-308b05b2419edb5c8ee0471b67a40403df940149.tar.gz https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip https://github.com/bazelbuild/rules_swift/archive/3eeeb53cebda55b349d64c9fc144e18c5f7c0eb8.tar.gz -> bazelbuild-rules_swift-3eeeb53cebda55b349d64c9fc144e18c5f7c0eb8.tar.gz https://github.com/google/farmhash/archive/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz -> farmhash-816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz https://github.com/google/gemmlowp/archive/fda83bdc38b118cc6b56753bd540caa49e570745.zip -> gemmlowp-fda83bdc38b118cc6b56753bd540caa49e570745.zip https://github.com/google/ruy/archive/e6c1b8dc8a8b00ee74e7268aac8b18d7260ab1ce.zip -> ruy-e6c1b8dc8a8b00ee74e7268aac8b18d7260ab1ce.zip https://github.com/intel/ARM_NEON_2_x86_SSE/archive/1200fe90bb174a6224a525ee60148671a786a71f.tar.gz -> ARM_NEON_2_x86_SSE-1200fe90bb174a6224a525ee60148671a786a71f.tar.gz https://github.com/googleapis/googleapis/archive/541b1ded4abadcc38e8178680b0677f65594ea6f.zip -> googleapis-541b1ded4abadcc38e8178680b0677f65594ea6f.zip https://github.com/petewarden/OouraFFT/archive/v1.0.tar.gz -> OouraFFT-v1.0.tar.gz https://github.com/pytorch/cpuinfo/archive/5916273f79a21551890fd3d56fc5375a78d1598d.zip -> pytorch-cpuinfo-5916273f79a21551890fd3d56fc5375a78d1598d.zip https://github.com/pytorch/cpuinfo/archive/d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz -> pytorch-cpuinfo-d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz https://github.com/Maratyszcza/FP16/archive/4dfe081cf6bcd15db339cf2680b9281b8451eeb3.zip -> FP16-4dfe081cf6bcd15db339cf2680b9281b8451eeb3.zip https://github.com/Maratyszcza/FXdiv/archive/63058eff77e11aa15bf531df5dd34395ec3017c8.zip -> FXdiv-63058eff77e11aa15bf531df5dd34395ec3017c8.zip https://github.com/Maratyszcza/pthreadpool/archive/b8374f80e42010941bda6c85b0e3f1a1bd77a1e0.zip -> pthreadpool-b8374f80e42010941bda6c85b0e3f1a1bd77a1e0.zip https://github.com/tensorflow/toolchains/archive/v1.1.21.tar.gz -> tensorflow_toolchains_v1.1.21.tar.gz https://github.com/tensorflow/runtime/archive/b570a1921c9e55ac53c8972bd2bfd37cd0eb510d.tar.gz -> tf_runtime-b570a1921c9e55ac53c8972bd2bfd37cd0eb510d.tar.gz https://gitlab.com/libeigen/eigen/-/archive/12e8d57108c50d8a63605c6eb0144c838c128337/eigen-12e8d57108c50d8a63605c6eb0144c838c128337.tar.gz -> eigen-12e8d57108c50d8a63605c6eb0144c838c128337.tar.gz https://github.com/KhronosGroup/OpenCL-Headers/archive/0d5f18c6e7196863bc1557a693f1509adfcee056.tar.gz -> OpenCL-Headers-0d5f18c6e7196863bc1557a693f1509adfcee056.tar.gz https://github.com/KhronosGroup/Vulkan-Headers/archive/ec2db85225ab410bc6829251bef6c578aaed5868.tar.gz -> Vulkan-Headers-ec2db85225ab410bc6829251bef6c578aaed5868.tar.gz https://github.com/abseil/abseil-cpp/archive/997aaf3a28308eba1b9156aa35ab7bca9688e9f6.tar.gz -> abseil-cpp-997aaf3a28308eba1b9156aa35ab7bca9688e9f6.tar.gz https://github.com/google/XNNPACK/archive/476eb84d6a8e6f8249d5584d30759c6fbdbf791d.zip -> xnnpack-476eb84d6a8e6f8249d5584d30759c6fbdbf791d.zip
+_eclasses_=bazel	754d004c54b3ac8a286975d232cbab17	check-reqs	74c98e9a7b34b32be3548357852e9ec3	cros-bazel	f8f1ddf279e2cce6ed2320142f477dbf	cuda	bb861e5221b7272ac90c2f12791c1e66	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=cc4bd9918062fc58b9e27dbe239f6d90
diff --git a/metadata/md5-cache/sys-apps/aver-updater-0.0.1-r22 b/metadata/md5-cache/sys-apps/aver-updater-0.0.1-r22
deleted file mode 100644
index 1534fb9..0000000
--- a/metadata/md5-cache/sys-apps/aver-updater-0.0.1-r22
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=compile configure info install preinst prepare setup test unpack
-DEPEND=chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
-DESCRIPTION=AVer firmware updater
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/aver-updater
-IUSE=cros_host cros_workon_tree_d02c7c4fa5cc0fa3c52fe5f9d0bc24e4d3fd786c cros-debug
-KEYWORDS=*
-LICENSE=BSD
-PROPERTIES=live
-RDEPEND=chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
-SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=64ac351c4b4e75805e24381170de4518
diff --git a/metadata/md5-cache/sys-apps/aver-updater-0.0.1-r23 b/metadata/md5-cache/sys-apps/aver-updater-0.0.1-r23
new file mode 100644
index 0000000..a40c57df
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/aver-updater-0.0.1-r23
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=compile configure info install preinst prepare setup test unpack
+DEPEND=chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
+DESCRIPTION=AVer firmware updater
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/aver-updater
+IUSE=cros_host cros_workon_tree_1ac27b05306f3b75d870043a7b16a2076e30e196 cros-debug
+KEYWORDS=*
+LICENSE=BSD
+PROPERTIES=live
+RDEPEND=chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
+SLOT=0
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=82174b3a37d5cd54c84b5fd4f3961e11
diff --git a/metadata/md5-cache/sys-apps/aver-updater-9999 b/metadata/md5-cache/sys-apps/aver-updater-9999
index 29c9612..bab6338 100644
--- a/metadata/md5-cache/sys-apps/aver-updater-9999
+++ b/metadata/md5-cache/sys-apps/aver-updater-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
 SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=45ac725800db3f5628d77433e9aa64d5
diff --git a/metadata/md5-cache/sys-apps/baselayout-2.2 b/metadata/md5-cache/sys-apps/baselayout-2.2
index 528ce07..7af3b43 100644
--- a/metadata/md5-cache/sys-apps/baselayout-2.2
+++ b/metadata/md5-cache/sys-apps/baselayout-2.2
@@ -7,5 +7,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=mirror://gentoo/baselayout-2.2.tar.bz2 http://dev.gentoo.org/~vapier/dist/baselayout-2.2.tar.bz2
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8bf5995f87115cfa45fc7c03e0815184
diff --git a/metadata/md5-cache/sys-apps/baselayout-2.2-r1 b/metadata/md5-cache/sys-apps/baselayout-2.2-r1
index 528ce07..7af3b43 100644
--- a/metadata/md5-cache/sys-apps/baselayout-2.2-r1
+++ b/metadata/md5-cache/sys-apps/baselayout-2.2-r1
@@ -7,5 +7,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=mirror://gentoo/baselayout-2.2.tar.bz2 http://dev.gentoo.org/~vapier/dist/baselayout-2.2.tar.bz2
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=8bf5995f87115cfa45fc7c03e0815184
diff --git a/metadata/md5-cache/sys-apps/coreboot-utils-0.0.1-r4889 b/metadata/md5-cache/sys-apps/coreboot-utils-0.0.1-r4889
deleted file mode 100644
index 699b525..0000000
--- a/metadata/md5-cache/sys-apps/coreboot-utils-0.0.1-r4889
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install setup unpack
-DEPEND=!static? ( sys-apps/pciutils ) static? ( sys-apps/pciutils[static-libs(+)] )
-DESCRIPTION=Utilities for modifying coreboot firmware images
-EAPI=7
-HOMEPAGE=http://coreboot.org
-IUSE=cros_host mma +pci static cros_host cros_workon_tree_799331977582570b4553d5b8ecf53f17828b8175_0e26966d3f2069b8ac7134030bcdf1022620e54b_68a5efcfa8adcf49f7e7b213e8693b754999b180_7970bef34ce4d0b3023def52ff72e1c4cd2eca85_1f141a99a47f4c9edd8fdf11508f24cee865b31e_2928430a62aab173b801749223f89a315b2f5e1c_c4524c42dcd8ee9f61dc34d99e71983e065c591c_181b7ecc670fb8b8481356d96e48592587a73c68_e03866d9ecdf3529248f3d4bd0b63499a092f2c3_974edbc79de4f730edf8c9d01bc9186f97417f1d_bfef75f3a17da232f402e1799b42c25c2b1c5176_327b75387dd5fa21a18900c37c6017c6378024be_f0e6fefacbfcbd78417e52a97ba25032cf8fa1ed_357d07fc1526ad76c1a186e437b7736e3a254d65_2d58e3830d3fc4159e3f127522d8f7b1bee5c8d7_362eda536c1c8032f60673bd7943efd3bd9dfb7a
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!static? ( sys-apps/pciutils )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a66efdfc67bb6341ba4f2bf93b66ec02
diff --git a/metadata/md5-cache/sys-apps/coreboot-utils-0.0.1-r4954 b/metadata/md5-cache/sys-apps/coreboot-utils-0.0.1-r4954
new file mode 100644
index 0000000..8b2116a
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/coreboot-utils-0.0.1-r4954
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install setup unpack
+DEPEND=!static? ( sys-apps/pciutils ) static? ( sys-apps/pciutils[static-libs(+)] )
+DESCRIPTION=Utilities for modifying coreboot firmware images
+EAPI=7
+HOMEPAGE=http://coreboot.org
+IUSE=cros_host mma +pci static cros_host cros_workon_tree_2f56f33e4ca7509f5fa6b97968a3843243c9efdd_d9fab03566b4b3ee492eb67fe08412a113049445_d560fabd78baf38e2487941eda393729364c82fe_7970bef34ce4d0b3023def52ff72e1c4cd2eca85_601ee39c125f29e5fec3aaa576fd358acdb862b2_c0d566400f6112c9842142ff0c10cee8f082ad66_66841836ab184dcc27bd8c7e8afc96468aa820e1_86fbdc9951820efeae7d46bfd27307a4590b2609_e03866d9ecdf3529248f3d4bd0b63499a092f2c3_974edbc79de4f730edf8c9d01bc9186f97417f1d_bfef75f3a17da232f402e1799b42c25c2b1c5176_82d6a44aa0a9c6ae58f89895a32bfe59393f5760_20540235deec2fd668c673d3410390c6017aba39_563961bd6bcd89bbe3dd5d978926033fb1eaf02d_cbedc36a46cb53fabc6446e2a6434b41a091c498_c352b35303d45386dd3952e107f76cb519c5b4e9
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!static? ( sys-apps/pciutils )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=340392a8ba9f08b569e229f8da4ddd9d
diff --git a/metadata/md5-cache/sys-apps/coreboot-utils-9999 b/metadata/md5-cache/sys-apps/coreboot-utils-9999
index 60a045d..6c8af8f 100644
--- a/metadata/md5-cache/sys-apps/coreboot-utils-9999
+++ b/metadata/md5-cache/sys-apps/coreboot-utils-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=!static? ( sys-apps/pciutils )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=1739e49b6085d800d754b917a1c847c0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b7cad39527ed49c1d7912d840719d9f6
diff --git a/metadata/md5-cache/sys-apps/daisydog-0.0.1-r31 b/metadata/md5-cache/sys-apps/daisydog-0.0.1-r31
deleted file mode 100644
index 95a2d77..0000000
--- a/metadata/md5-cache/sys-apps/daisydog-0.0.1-r31
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install preinst prepare setup unpack
-DEPEND=sys-apps/baselayout
-DESCRIPTION=Simple HW watchdog daemon
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/daisydog
-IUSE=cros_host cros_workon_tree_7a2f69d271925735904e8f921ddbc5dbd17e77ac
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=sys-apps/baselayout
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
-_md5_=ae102cf55f410941b1e11f4cfbac41c3
diff --git a/metadata/md5-cache/sys-apps/daisydog-0.0.1-r32 b/metadata/md5-cache/sys-apps/daisydog-0.0.1-r32
new file mode 100644
index 0000000..93bb492
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/daisydog-0.0.1-r32
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install preinst prepare setup unpack
+DEPEND=sys-apps/baselayout
+DESCRIPTION=Simple HW watchdog daemon
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/daisydog
+IUSE=cros_host cros_workon_tree_8c8ad8ed7b4a24dca5f8e8086ae4e338f4aa159e
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=sys-apps/baselayout
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
+_md5_=3ec7e0046cd4f8e126a48ffe9d30d317
diff --git a/metadata/md5-cache/sys-apps/daisydog-9999 b/metadata/md5-cache/sys-apps/daisydog-9999
index 6771a0d..b4a6e80 100644
--- a/metadata/md5-cache/sys-apps/daisydog-9999
+++ b/metadata/md5-cache/sys-apps/daisydog-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=sys-apps/baselayout
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621
 _md5_=5cecd400268f491510045574e9cd49e3
diff --git a/metadata/md5-cache/sys-apps/dbus-1.12.20 b/metadata/md5-cache/sys-apps/dbus-1.12.20
index 879fb71..46873a1 100644
--- a/metadata/md5-cache/sys-apps/dbus-1.12.20
+++ b/metadata/md5-cache/sys-apps/dbus-1.12.20
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=https://dbus.freedesktop.org/releases/dbus/dbus-1.12.20.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	virtualx	e9162f65645513120b4e12863a5fa972
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	virtualx	e9162f65645513120b4e12863a5fa972
 _md5_=ce3a21760ea7aff0c95e2f3459e4557a
diff --git a/metadata/md5-cache/sys-apps/dbus-1.12.20-r3 b/metadata/md5-cache/sys-apps/dbus-1.12.20-r3
index 879fb71..46873a1 100644
--- a/metadata/md5-cache/sys-apps/dbus-1.12.20-r3
+++ b/metadata/md5-cache/sys-apps/dbus-1.12.20-r3
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=https://dbus.freedesktop.org/releases/dbus/dbus-1.12.20.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	virtualx	e9162f65645513120b4e12863a5fa972
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	virtualx	e9162f65645513120b4e12863a5fa972
 _md5_=ce3a21760ea7aff0c95e2f3459e4557a
diff --git a/metadata/md5-cache/sys-apps/dtc-1.6.0 b/metadata/md5-cache/sys-apps/dtc-1.6.0
index d16c30d4..87ed4ac 100644
--- a/metadata/md5-cache/sys-apps/dtc-1.6.0
+++ b/metadata/md5-cache/sys-apps/dtc-1.6.0
@@ -10,5 +10,5 @@
 REQUIRED_USE=python? ( || ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 ) )
 SLOT=0
 SRC_URI=mirror://kernel/software/utils/dtc/dtc-1.6.0.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=25323cbdca1d04b89ecd96266d6611d4
diff --git a/metadata/md5-cache/sys-apps/dtc-1.6.0-r2 b/metadata/md5-cache/sys-apps/dtc-1.6.0-r2
index d16c30d4..87ed4ac 100644
--- a/metadata/md5-cache/sys-apps/dtc-1.6.0-r2
+++ b/metadata/md5-cache/sys-apps/dtc-1.6.0-r2
@@ -10,5 +10,5 @@
 REQUIRED_USE=python? ( || ( python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 ) )
 SLOT=0
 SRC_URI=mirror://kernel/software/utils/dtc/dtc-1.6.0.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=25323cbdca1d04b89ecd96266d6611d4
diff --git a/metadata/md5-cache/sys-apps/em100-0.0.1-r59 b/metadata/md5-cache/sys-apps/em100-0.0.1-r59
index e6da9f4d9..89c3683 100644
--- a/metadata/md5-cache/sys-apps/em100-0.0.1-r59
+++ b/metadata/md5-cache/sys-apps/em100-0.0.1-r59
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=virtual/libusb:1
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e4b420dd42769e621749da68948c3ed7
diff --git a/metadata/md5-cache/sys-apps/em100-9999 b/metadata/md5-cache/sys-apps/em100-9999
index 61a4696a..d3556a6 100644
--- a/metadata/md5-cache/sys-apps/em100-9999
+++ b/metadata/md5-cache/sys-apps/em100-9999
@@ -8,5 +8,5 @@
 PROPERTIES=live
 RDEPEND=virtual/libusb:1
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=ca55c30cd7471d3aab006fcfee6d887b
diff --git a/metadata/md5-cache/sys-apps/etphidiap-1.5-r1 b/metadata/md5-cache/sys-apps/etphidiap-1.5-r1
index e51ecdd..242ffe5 100644
--- a/metadata/md5-cache/sys-apps/etphidiap-1.5-r1
+++ b/metadata/md5-cache/sys-apps/etphidiap-1.5-r1
@@ -8,5 +8,5 @@
 RDEPEND=!<chromeos-base/etphidiap-1.1-r3
 SLOT=0
 SRC_URI=https://github.com/jinglewu/etphidiap/archive/1.5.tar.gz -> etphidiap-1.5.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=81a7af19589a9a98b784e411f58414b8
diff --git a/metadata/md5-cache/sys-apps/fitpicker-0.0.1-r2108 b/metadata/md5-cache/sys-apps/fitpicker-0.0.1-r2108
deleted file mode 100644
index d0d73ea..0000000
--- a/metadata/md5-cache/sys-apps/fitpicker-0.0.1-r2108
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=>=sys-apps/dtc-1.4.1 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Utility for picking a kernel/device tree from a FIT image.
-EAPI=5
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/fitpicker/
-IUSE=cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4ece3f8f3d85b6237e276452a02c7c6044463211_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_4ece3f8f3d85b6237e276452a02c7c6044463211_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=>=sys-apps/dtc-1.4.1 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=22d8cb80ad6c52819b9d1f48cfdf28c1
diff --git a/metadata/md5-cache/sys-apps/fitpicker-0.0.1-r2133 b/metadata/md5-cache/sys-apps/fitpicker-0.0.1-r2133
new file mode 100644
index 0000000..290045f
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/fitpicker-0.0.1-r2133
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=>=sys-apps/dtc-1.4.1 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Utility for picking a kernel/device tree from a FIT image.
+EAPI=5
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform2/+/master/fitpicker/
+IUSE=cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_4ece3f8f3d85b6237e276452a02c7c6044463211_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_4ece3f8f3d85b6237e276452a02c7c6044463211_e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb cros-debug compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=>=sys-apps/dtc-1.4.1 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=449f14711c0c9818977927206c324910
diff --git a/metadata/md5-cache/sys-apps/fitpicker-9999 b/metadata/md5-cache/sys-apps/fitpicker-9999
index 62cff6d..133c5a3 100644
--- a/metadata/md5-cache/sys-apps/fitpicker-9999
+++ b/metadata/md5-cache/sys-apps/fitpicker-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live live
 RDEPEND=>=sys-apps/dtc-1.4.1 >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] >=chromeos-base/libbrillo-0.0.1-r1651:=
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	efc0b92bddaaf9cd74eceec133e77973	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c2374b2f77f9f0d7c6b45c04b9cc61dd
diff --git a/metadata/md5-cache/sys-apps/flashbench-9999 b/metadata/md5-cache/sys-apps/flashbench-9999
index 314a5b4..5182d35 100644
--- a/metadata/md5-cache/sys-apps/flashbench-9999
+++ b/metadata/md5-cache/sys-apps/flashbench-9999
@@ -7,5 +7,5 @@
 LICENSE=GPL-2
 PROPERTIES=live
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c7584207e090e6821131ed15ccebd377
diff --git a/metadata/md5-cache/sys-apps/flashmap-0.3-r35 b/metadata/md5-cache/sys-apps/flashmap-0.3-r35
deleted file mode 100644
index 2e9d806..0000000
--- a/metadata/md5-cache/sys-apps/flashmap-0.3-r35
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=configure info install setup test unpack
-DEPEND=python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] )
-DESCRIPTION=Utility for manipulating firmware ROM mapping data structure
-EAPI=7
-HOMEPAGE=http://flashmap.googlecode.com
-IUSE=python cros_host cros_workon_tree_6fdc81bee0326e66662115d9bda50159bf41db9f python_targets_python2_7 python_targets_python3_6 python_targets_python3_7
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] )
-RESTRICT=test
-SLOT=0/0.3-r35
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=153c776fcfa72b1f24e0e5be0e34679d
diff --git a/metadata/md5-cache/sys-apps/flashmap-0.3-r36 b/metadata/md5-cache/sys-apps/flashmap-0.3-r36
new file mode 100644
index 0000000..0351ea4
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/flashmap-0.3-r36
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=configure info install setup test unpack
+DEPEND=python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] )
+DESCRIPTION=Utility for manipulating firmware ROM mapping data structure
+EAPI=7
+HOMEPAGE=http://flashmap.googlecode.com
+IUSE=python cros_host cros_workon_tree_63eebcb098106693e29bbce840fedce94e297da6 python_targets_python2_7 python_targets_python3_6 python_targets_python3_7
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] )
+RESTRICT=test
+SLOT=0/0.3-r36
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=1ceb18ae0b1f7d8e0012052bf25c7eba
diff --git a/metadata/md5-cache/sys-apps/flashmap-9999 b/metadata/md5-cache/sys-apps/flashmap-9999
index e5300a5..aa4cd31 100644
--- a/metadata/md5-cache/sys-apps/flashmap-9999
+++ b/metadata/md5-cache/sys-apps/flashmap-9999
@@ -11,5 +11,5 @@
 RDEPEND=python? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] )
 RESTRICT=test
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3cdabe62adfa5755f180eaf0ee212d0d
diff --git a/metadata/md5-cache/sys-apps/flashrom-0.9.9-r1244 b/metadata/md5-cache/sys-apps/flashrom-0.9.9-r1244
deleted file mode 100644
index 1487b10..0000000
--- a/metadata/md5-cache/sys-apps/flashrom-0.9.9-r1244
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=sys-apps/diffutils dev-vcs/git >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=!static? ( atahpt? ( sys-apps/pciutils ) atapromise? ( sys-apps/pciutils ) atavia? ( sys-apps/pciutils ) ch341a_spi? ( virtual/libusb:1 ) dediprog? ( virtual/libusb:1 ) developerbox_spi? ( virtual/libusb:1 ) digilent_spi? ( virtual/libusb:1 ) drkaiser? ( sys-apps/pciutils ) ft2232_spi? ( dev-embedded/libftdi:= ) gfxnvidia? ( sys-apps/pciutils ) internal? ( sys-apps/pciutils ) it8212? ( sys-apps/pciutils ) jlink_spi? ( dev-embedded/libjaylink ) nic3com? ( sys-apps/pciutils ) nicintel_eeprom? ( sys-apps/pciutils ) nicintel_spi? ( sys-apps/pciutils ) nicintel? ( sys-apps/pciutils ) nicnatsemi? ( sys-apps/pciutils ) nicrealtek? ( sys-apps/pciutils ) raiden_debug_spi? ( virtual/libusb:1 ) ogp_spi? ( sys-apps/pciutils ) pickit2_spi? ( virtual/libusb:0 ) rayer_spi? ( sys-apps/pciutils ) satamv? ( sys-apps/pciutils ) satasii? ( sys-apps/pciutils ) stlinkv3_spi? ( virtual/libusb:1 ) usbblaster_spi? ( dev-embedded/libftdi:1= ) ) static? ( atahpt? ( sys-apps/pciutils[static-libs(+)] ) atapromise? ( sys-apps/pciutils[static-libs(+)] ) atavia? ( sys-apps/pciutils[static-libs(+)] ) ch341a_spi? ( virtual/libusb:1[static-libs(+)] ) dediprog? ( virtual/libusb:1[static-libs(+)] ) developerbox_spi? ( virtual/libusb:1[static-libs(+)] ) digilent_spi? ( virtual/libusb:1[static-libs(+)] ) drkaiser? ( sys-apps/pciutils[static-libs(+)] ) ft2232_spi? ( dev-embedded/libftdi:=[static-libs(+)] ) gfxnvidia? ( sys-apps/pciutils[static-libs(+)] ) internal? ( sys-apps/pciutils[static-libs(+)] ) it8212? ( sys-apps/pciutils[static-libs(+)] ) jlink_spi? ( dev-embedded/libjaylink[static-libs(+)] ) nic3com? ( sys-apps/pciutils[static-libs(+)] ) nicintel_eeprom? ( sys-apps/pciutils[static-libs(+)] ) nicintel_spi? ( sys-apps/pciutils[static-libs(+)] ) nicintel? ( sys-apps/pciutils[static-libs(+)] ) nicnatsemi? ( sys-apps/pciutils[static-libs(+)] ) nicrealtek? ( sys-apps/pciutils[static-libs(+)] ) raiden_debug_spi? ( virtual/libusb:1[static-libs(+)] ) ogp_spi? ( sys-apps/pciutils[static-libs(+)] ) pickit2_spi? ( virtual/libusb:0[static-libs(+)] ) rayer_spi? ( sys-apps/pciutils[static-libs(+)] ) satamv? ( sys-apps/pciutils[static-libs(+)] ) satasii? ( sys-apps/pciutils[static-libs(+)] ) stlinkv3_spi? ( virtual/libusb:1[static-libs(+)] ) usbblaster_spi? ( dev-embedded/libftdi:1=[static-libs(+)] ) ) test? ( dev-util/cmocka )
-DESCRIPTION=Utility for reading, writing, erasing and verifying flash ROM chips
-EAPI=7
-HOMEPAGE=https://flashrom.org/
-IUSE=atahpt atapromise +atavia +buspirate_spi +ch341a_spi dediprog +developerbox_spi +digilent_spi +drkaiser +dummy ene_lpc +ft2232_spi +gfxnvidia +internal +it8212 jlink_spi +linux_mtd +linux_spi +lspcon_i2c_spi mec1308 mstarddc_spi +nic3com +nicintel +nicintel_eeprom +nicintel_spi +nicnatsemi +nicrealtek +ogp_spi +pickit2_spi +pony_spi +raiden_debug_spi +rayer_spi +realtek_mst_i2c_spi +satasii +satamv +serprog static +stlinkv3_spi test +usbblaster_spi +wiki cros_host cros_workon_tree_6b9f4673e9d065a9f4cad040ace211b94d9e7bef
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!static? ( atahpt? ( sys-apps/pciutils ) atapromise? ( sys-apps/pciutils ) atavia? ( sys-apps/pciutils ) ch341a_spi? ( virtual/libusb:1 ) dediprog? ( virtual/libusb:1 ) developerbox_spi? ( virtual/libusb:1 ) digilent_spi? ( virtual/libusb:1 ) drkaiser? ( sys-apps/pciutils ) ft2232_spi? ( dev-embedded/libftdi:= ) gfxnvidia? ( sys-apps/pciutils ) internal? ( sys-apps/pciutils ) it8212? ( sys-apps/pciutils ) jlink_spi? ( dev-embedded/libjaylink ) nic3com? ( sys-apps/pciutils ) nicintel_eeprom? ( sys-apps/pciutils ) nicintel_spi? ( sys-apps/pciutils ) nicintel? ( sys-apps/pciutils ) nicnatsemi? ( sys-apps/pciutils ) nicrealtek? ( sys-apps/pciutils ) raiden_debug_spi? ( virtual/libusb:1 ) ogp_spi? ( sys-apps/pciutils ) pickit2_spi? ( virtual/libusb:0 ) rayer_spi? ( sys-apps/pciutils ) satamv? ( sys-apps/pciutils ) satasii? ( sys-apps/pciutils ) stlinkv3_spi? ( virtual/libusb:1 ) usbblaster_spi? ( dev-embedded/libftdi:1= ) ) internal? ( sys-apps/dmidecode )
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=aa91ec6e3af5e21577945d516649570b
diff --git a/metadata/md5-cache/sys-apps/flashrom-0.9.9-r1284 b/metadata/md5-cache/sys-apps/flashrom-0.9.9-r1284
new file mode 100644
index 0000000..8eaec63
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/flashrom-0.9.9-r1284
@@ -0,0 +1,14 @@
+BDEPEND=sys-apps/diffutils dev-vcs/git >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=!static? ( atahpt? ( sys-apps/pciutils ) atapromise? ( sys-apps/pciutils ) atavia? ( sys-apps/pciutils ) ch341a_spi? ( virtual/libusb:1 ) dediprog? ( virtual/libusb:1 ) developerbox_spi? ( virtual/libusb:1 ) digilent_spi? ( virtual/libusb:1 ) drkaiser? ( sys-apps/pciutils ) ft2232_spi? ( dev-embedded/libftdi:= ) gfxnvidia? ( sys-apps/pciutils ) internal? ( sys-apps/pciutils ) it8212? ( sys-apps/pciutils ) jlink_spi? ( dev-embedded/libjaylink ) nic3com? ( sys-apps/pciutils ) nicintel_eeprom? ( sys-apps/pciutils ) nicintel_spi? ( sys-apps/pciutils ) nicintel? ( sys-apps/pciutils ) nicnatsemi? ( sys-apps/pciutils ) nicrealtek? ( sys-apps/pciutils ) raiden_debug_spi? ( virtual/libusb:1 ) ogp_spi? ( sys-apps/pciutils ) pickit2_spi? ( virtual/libusb:0 ) rayer_spi? ( sys-apps/pciutils ) satamv? ( sys-apps/pciutils ) satasii? ( sys-apps/pciutils ) stlinkv3_spi? ( virtual/libusb:1 ) usbblaster_spi? ( dev-embedded/libftdi:1= ) ) static? ( atahpt? ( sys-apps/pciutils[static-libs(+)] ) atapromise? ( sys-apps/pciutils[static-libs(+)] ) atavia? ( sys-apps/pciutils[static-libs(+)] ) ch341a_spi? ( virtual/libusb:1[static-libs(+)] ) dediprog? ( virtual/libusb:1[static-libs(+)] ) developerbox_spi? ( virtual/libusb:1[static-libs(+)] ) digilent_spi? ( virtual/libusb:1[static-libs(+)] ) drkaiser? ( sys-apps/pciutils[static-libs(+)] ) ft2232_spi? ( dev-embedded/libftdi:=[static-libs(+)] ) gfxnvidia? ( sys-apps/pciutils[static-libs(+)] ) internal? ( sys-apps/pciutils[static-libs(+)] ) it8212? ( sys-apps/pciutils[static-libs(+)] ) jlink_spi? ( dev-embedded/libjaylink[static-libs(+)] ) nic3com? ( sys-apps/pciutils[static-libs(+)] ) nicintel_eeprom? ( sys-apps/pciutils[static-libs(+)] ) nicintel_spi? ( sys-apps/pciutils[static-libs(+)] ) nicintel? ( sys-apps/pciutils[static-libs(+)] ) nicnatsemi? ( sys-apps/pciutils[static-libs(+)] ) nicrealtek? ( sys-apps/pciutils[static-libs(+)] ) raiden_debug_spi? ( virtual/libusb:1[static-libs(+)] ) ogp_spi? ( sys-apps/pciutils[static-libs(+)] ) pickit2_spi? ( virtual/libusb:0[static-libs(+)] ) rayer_spi? ( sys-apps/pciutils[static-libs(+)] ) satamv? ( sys-apps/pciutils[static-libs(+)] ) satasii? ( sys-apps/pciutils[static-libs(+)] ) stlinkv3_spi? ( virtual/libusb:1[static-libs(+)] ) usbblaster_spi? ( dev-embedded/libftdi:1=[static-libs(+)] ) ) test? ( dev-util/cmocka )
+DESCRIPTION=Utility for reading, writing, erasing and verifying flash ROM chips
+EAPI=7
+HOMEPAGE=https://flashrom.org/
+IUSE=atahpt atapromise +atavia +buspirate_spi +ch341a_spi dediprog +developerbox_spi +digilent_spi +drkaiser +dummy ene_lpc +ft2232_spi +gfxnvidia +internal +it8212 jlink_spi +linux_mtd +linux_spi +lspcon_i2c_spi mec1308 mstarddc_spi +nic3com +nicintel +nicintel_eeprom +nicintel_spi +nicnatsemi +nicrealtek +ogp_spi +pickit2_spi +pony_spi +raiden_debug_spi +rayer_spi +realtek_mst_i2c_spi +satasii +satamv +serprog static +stlinkv3_spi test +usbblaster_spi +wiki cros_host cros_workon_tree_bd6ded88de17e9f3d2cf1441739100f961db0e57
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!static? ( atahpt? ( sys-apps/pciutils ) atapromise? ( sys-apps/pciutils ) atavia? ( sys-apps/pciutils ) ch341a_spi? ( virtual/libusb:1 ) dediprog? ( virtual/libusb:1 ) developerbox_spi? ( virtual/libusb:1 ) digilent_spi? ( virtual/libusb:1 ) drkaiser? ( sys-apps/pciutils ) ft2232_spi? ( dev-embedded/libftdi:= ) gfxnvidia? ( sys-apps/pciutils ) internal? ( sys-apps/pciutils ) it8212? ( sys-apps/pciutils ) jlink_spi? ( dev-embedded/libjaylink ) nic3com? ( sys-apps/pciutils ) nicintel_eeprom? ( sys-apps/pciutils ) nicintel_spi? ( sys-apps/pciutils ) nicintel? ( sys-apps/pciutils ) nicnatsemi? ( sys-apps/pciutils ) nicrealtek? ( sys-apps/pciutils ) raiden_debug_spi? ( virtual/libusb:1 ) ogp_spi? ( sys-apps/pciutils ) pickit2_spi? ( virtual/libusb:0 ) rayer_spi? ( sys-apps/pciutils ) satamv? ( sys-apps/pciutils ) satasii? ( sys-apps/pciutils ) stlinkv3_spi? ( virtual/libusb:1 ) usbblaster_spi? ( dev-embedded/libftdi:1= ) ) internal? ( sys-apps/dmidecode )
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d714e4e9380c28db703918cc65c5297b
diff --git a/metadata/md5-cache/sys-apps/flashrom-9999 b/metadata/md5-cache/sys-apps/flashrom-9999
index 46f3077..8e5889e 100644
--- a/metadata/md5-cache/sys-apps/flashrom-9999
+++ b/metadata/md5-cache/sys-apps/flashrom-9999
@@ -1,5 +1,5 @@
 BDEPEND=sys-apps/diffutils dev-vcs/git >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
-DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEFINED_PHASES=compile configure info install setup test unpack
 DEPEND=!static? ( atahpt? ( sys-apps/pciutils ) atapromise? ( sys-apps/pciutils ) atavia? ( sys-apps/pciutils ) ch341a_spi? ( virtual/libusb:1 ) dediprog? ( virtual/libusb:1 ) developerbox_spi? ( virtual/libusb:1 ) digilent_spi? ( virtual/libusb:1 ) drkaiser? ( sys-apps/pciutils ) ft2232_spi? ( dev-embedded/libftdi:= ) gfxnvidia? ( sys-apps/pciutils ) internal? ( sys-apps/pciutils ) it8212? ( sys-apps/pciutils ) jlink_spi? ( dev-embedded/libjaylink ) nic3com? ( sys-apps/pciutils ) nicintel_eeprom? ( sys-apps/pciutils ) nicintel_spi? ( sys-apps/pciutils ) nicintel? ( sys-apps/pciutils ) nicnatsemi? ( sys-apps/pciutils ) nicrealtek? ( sys-apps/pciutils ) raiden_debug_spi? ( virtual/libusb:1 ) ogp_spi? ( sys-apps/pciutils ) pickit2_spi? ( virtual/libusb:0 ) rayer_spi? ( sys-apps/pciutils ) satamv? ( sys-apps/pciutils ) satasii? ( sys-apps/pciutils ) stlinkv3_spi? ( virtual/libusb:1 ) usbblaster_spi? ( dev-embedded/libftdi:1= ) ) static? ( atahpt? ( sys-apps/pciutils[static-libs(+)] ) atapromise? ( sys-apps/pciutils[static-libs(+)] ) atavia? ( sys-apps/pciutils[static-libs(+)] ) ch341a_spi? ( virtual/libusb:1[static-libs(+)] ) dediprog? ( virtual/libusb:1[static-libs(+)] ) developerbox_spi? ( virtual/libusb:1[static-libs(+)] ) digilent_spi? ( virtual/libusb:1[static-libs(+)] ) drkaiser? ( sys-apps/pciutils[static-libs(+)] ) ft2232_spi? ( dev-embedded/libftdi:=[static-libs(+)] ) gfxnvidia? ( sys-apps/pciutils[static-libs(+)] ) internal? ( sys-apps/pciutils[static-libs(+)] ) it8212? ( sys-apps/pciutils[static-libs(+)] ) jlink_spi? ( dev-embedded/libjaylink[static-libs(+)] ) nic3com? ( sys-apps/pciutils[static-libs(+)] ) nicintel_eeprom? ( sys-apps/pciutils[static-libs(+)] ) nicintel_spi? ( sys-apps/pciutils[static-libs(+)] ) nicintel? ( sys-apps/pciutils[static-libs(+)] ) nicnatsemi? ( sys-apps/pciutils[static-libs(+)] ) nicrealtek? ( sys-apps/pciutils[static-libs(+)] ) raiden_debug_spi? ( virtual/libusb:1[static-libs(+)] ) ogp_spi? ( sys-apps/pciutils[static-libs(+)] ) pickit2_spi? ( virtual/libusb:0[static-libs(+)] ) rayer_spi? ( sys-apps/pciutils[static-libs(+)] ) satamv? ( sys-apps/pciutils[static-libs(+)] ) satasii? ( sys-apps/pciutils[static-libs(+)] ) stlinkv3_spi? ( virtual/libusb:1[static-libs(+)] ) usbblaster_spi? ( dev-embedded/libftdi:1=[static-libs(+)] ) ) test? ( dev-util/cmocka )
 DESCRIPTION=Utility for reading, writing, erasing and verifying flash ROM chips
 EAPI=7
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=!static? ( atahpt? ( sys-apps/pciutils ) atapromise? ( sys-apps/pciutils ) atavia? ( sys-apps/pciutils ) ch341a_spi? ( virtual/libusb:1 ) dediprog? ( virtual/libusb:1 ) developerbox_spi? ( virtual/libusb:1 ) digilent_spi? ( virtual/libusb:1 ) drkaiser? ( sys-apps/pciutils ) ft2232_spi? ( dev-embedded/libftdi:= ) gfxnvidia? ( sys-apps/pciutils ) internal? ( sys-apps/pciutils ) it8212? ( sys-apps/pciutils ) jlink_spi? ( dev-embedded/libjaylink ) nic3com? ( sys-apps/pciutils ) nicintel_eeprom? ( sys-apps/pciutils ) nicintel_spi? ( sys-apps/pciutils ) nicintel? ( sys-apps/pciutils ) nicnatsemi? ( sys-apps/pciutils ) nicrealtek? ( sys-apps/pciutils ) raiden_debug_spi? ( virtual/libusb:1 ) ogp_spi? ( sys-apps/pciutils ) pickit2_spi? ( virtual/libusb:0 ) rayer_spi? ( sys-apps/pciutils ) satamv? ( sys-apps/pciutils ) satasii? ( sys-apps/pciutils ) stlinkv3_spi? ( virtual/libusb:1 ) usbblaster_spi? ( dev-embedded/libftdi:1= ) ) internal? ( sys-apps/dmidecode )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=15c862c8e52e76d802eb15b3326679fc
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=67a6ec472a4fc9648de0f17c25d1cd5a
diff --git a/metadata/md5-cache/sys-apps/flashrom-tester-1.6.0-r59 b/metadata/md5-cache/sys-apps/flashrom-tester-1.6.0-r59
deleted file mode 100644
index 8903ad8..0000000
--- a/metadata/md5-cache/sys-apps/flashrom-tester-1.6.0-r59
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/rand-0.6.4:= =dev-rust/chrono-0.4*:= =dev-rust/clap-2.33*:= =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= =dev-rust/built-0.3*:= =dev-rust/sys-info-0.5.7:= =dev-rust/serde_json-1*:= >=virtual/rust-1.39.0:=
-DESCRIPTION=Utility for AVL qualification of SPI flash chips with flashrom
-EAPI=7
-HOMEPAGE=https://www.flashrom.org/Flashrom
-IUSE=cros_host cros_workon_tree_0b4dc5d2acaf537f04737355784e7261d7031408 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!<=sys-apps/flashrom-tester-1.60-r41
-REQUIRED_USE=?? ( asan lsan msan tsan )
-SLOT=0/1.6.0-r59
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5e05edb66571fbad37143666dc0c8a74
diff --git a/metadata/md5-cache/sys-apps/flashrom-tester-1.6.0-r60 b/metadata/md5-cache/sys-apps/flashrom-tester-1.6.0-r60
new file mode 100644
index 0000000..fa39634
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/flashrom-tester-1.6.0-r60
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
+DEPEND==dev-rust/rand-0.6*:= =dev-rust/chrono-0.4*:= =dev-rust/clap-2.33*:= =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= =dev-rust/built-0.3*:= =dev-rust/sys-info-0.5.7:= =dev-rust/serde_json-1*:= >=virtual/rust-1.39.0:=
+DESCRIPTION=Utility for AVL qualification of SPI flash chips with flashrom
+EAPI=7
+HOMEPAGE=https://www.flashrom.org/Flashrom
+IUSE=cros_host cros_workon_tree_0b4dc5d2acaf537f04737355784e7261d7031408 cros-debug asan coverage fuzzer msan tsan ubsan amd64 asan cros_host fuzzer lsan +lto msan sccache test tsan ubsan x86
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!<=sys-apps/flashrom-tester-1.60-r41
+REQUIRED_USE=?? ( asan lsan msan tsan )
+SLOT=0/1.6.0-r60
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d384e0e853b720e98eda9dc6a77db932
diff --git a/metadata/md5-cache/sys-apps/flashrom-tester-9999 b/metadata/md5-cache/sys-apps/flashrom-tester-9999
index 4a71e4f..8a075d1 100644
--- a/metadata/md5-cache/sys-apps/flashrom-tester-9999
+++ b/metadata/md5-cache/sys-apps/flashrom-tester-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install postinst preinst prepare prerm setup test unpack
-DEPEND=>=dev-rust/rand-0.6.4:= =dev-rust/chrono-0.4*:= =dev-rust/clap-2.33*:= =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= =dev-rust/built-0.3*:= =dev-rust/sys-info-0.5.7:= =dev-rust/serde_json-1*:= >=virtual/rust-1.39.0:=
+DEPEND==dev-rust/rand-0.6*:= =dev-rust/chrono-0.4*:= =dev-rust/clap-2.33*:= =dev-rust/libc-0.2*:= =dev-rust/log-0.4*:= =dev-rust/built-0.3*:= =dev-rust/sys-info-0.5.7:= =dev-rust/serde_json-1*:= >=virtual/rust-1.39.0:=
 DESCRIPTION=Utility for AVL qualification of SPI flash chips with flashrom
 EAPI=7
 HOMEPAGE=https://www.flashrom.org/Flashrom
@@ -11,5 +11,5 @@
 RDEPEND=!<=sys-apps/flashrom-tester-1.60-r41
 REQUIRED_USE=?? ( asan lsan msan tsan )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	4ea5b08ffae6d27d86cc6d34d71f3446	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2dcbb27d4fabbe2fab2478d476009673
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-rust	faa106216cec9496d08e356cab846420	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=eb3a4a5764186782e7ac35f4e9008f2c
diff --git a/metadata/md5-cache/sys-apps/frecon-0.0.1-r175 b/metadata/md5-cache/sys-apps/frecon-0.0.1-r175
index 07602bd..97cfdf4 100644
--- a/metadata/md5-cache/sys-apps/frecon-0.0.1-r175
+++ b/metadata/md5-cache/sys-apps/frecon-0.0.1-r175
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=virtual/udev sys-apps/dbus:= media-libs/libpng:0= sys-apps/libtsm:= x11-libs/libdrm:=
 SLOT=0/0.0.1-r175
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=5fbf1a10557a63cb275fb85fcc009e65
diff --git a/metadata/md5-cache/sys-apps/frecon-9999 b/metadata/md5-cache/sys-apps/frecon-9999
index 7b403ad..4cb1e8a 100644
--- a/metadata/md5-cache/sys-apps/frecon-9999
+++ b/metadata/md5-cache/sys-apps/frecon-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=virtual/udev sys-apps/dbus:= media-libs/libpng:0= sys-apps/libtsm:= x11-libs/libdrm:=
 SLOT=0/9999
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d3f3279b6d87cc75990bdfa3df1303be
diff --git a/metadata/md5-cache/sys-apps/frecon-lite-0.0.1-r70 b/metadata/md5-cache/sys-apps/frecon-lite-0.0.1-r70
index 93dd80f..1605112 100644
--- a/metadata/md5-cache/sys-apps/frecon-lite-0.0.1-r70
+++ b/metadata/md5-cache/sys-apps/frecon-lite-0.0.1-r70
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=media-libs/libpng:0= sys-apps/libtsm:=
 SLOT=0/0.0.1-r70
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=03fd979b2d0d54fbbb098368f982279f
diff --git a/metadata/md5-cache/sys-apps/frecon-lite-9999 b/metadata/md5-cache/sys-apps/frecon-lite-9999
index 3e3dfbd..8011b9a 100644
--- a/metadata/md5-cache/sys-apps/frecon-lite-9999
+++ b/metadata/md5-cache/sys-apps/frecon-lite-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=media-libs/libpng:0= sys-apps/libtsm:=
 SLOT=0/9999
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=ea51614689249cc2d3459e8c732ff28c
diff --git a/metadata/md5-cache/sys-apps/fwupd-1.6.1-r127 b/metadata/md5-cache/sys-apps/fwupd-1.6.1-r127
deleted file mode 100644
index 6d30960..0000000
--- a/metadata/md5-cache/sys-apps/fwupd-1.6.1-r127
+++ /dev/null
@@ -1,15 +0,0 @@
-DEFINED_PHASES=compile configure info install postinst postrm preinst prepare setup test unpack
-DEPEND=>=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) x11-libs/pango || ( dev-lang/vala:0.36 dev-lang/vala:0.34 dev-lang/vala:0.32 ) python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] ) python_single_target_python2_7? ( dev-python/pillow[python_targets_python2_7(-)] dev-python/pycairo[python_targets_python2_7(-)] dev-python/pygobject:3[cairo,python_targets_python2_7(-)] ) !<sci-chemistry/chemical-mime-data-0.1.94-r4 >=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) sys-apps/dbus >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array virtual/pkgconfig sys-apps/baselayout dev-util/desktop-file-utils x11-misc/shared-mime-info
-DESCRIPTION=Aims to make updating firmware on Linux automatic, safe and reliable
-EAPI=6
-HOMEPAGE=https://fwupd.org
-IUSE=+agent amt archive +bluetooth dell +dummy +gnutls gtk-doc +gusb elogind flashrom +gpg lzma minimal introspection +man nls nvme pkcs7 policykit spi synaptics systemd test thunderbolt uefi cros_host cros_workon_tree_3445c6105d04d1a045d86e4d9d25bbadd2953cf9 kernel_linux python_single_target_python2_7 python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
-KEYWORDS=*
-LICENSE=LGPL-2.1+
-PROPERTIES=live
-RDEPEND=!<sci-chemistry/chemical-mime-data-0.1.94-r4 >=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) sys-apps/dbus sys-apps/baselayout
-REQUIRED_USE=^^ ( python_single_target_python2_7 python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9 ) dell? ( uefi ) minimal? ( !introspection ) spi? ( lzma ) synaptics? ( gnutls ) uefi? ( gnutls )
-RESTRICT=!test? ( test )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vala	2f3804278870542119da624a5eded505	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=4439ff99e490ce45ff3a3821e3947b3b
diff --git a/metadata/md5-cache/sys-apps/fwupd-1.6.3-r172 b/metadata/md5-cache/sys-apps/fwupd-1.6.3-r172
new file mode 100644
index 0000000..adfa0a3
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/fwupd-1.6.3-r172
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure info install postinst postrm preinst prepare setup test unpack
+DEPEND=>=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= dev-libs/protobuf-c >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) modemmanager? ( net-misc/modemmanager[qmi] ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) x11-libs/pango || ( dev-lang/vala:0.36 dev-lang/vala:0.34 dev-lang/vala:0.32 ) python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] ) python_single_target_python2_7? ( dev-python/pillow[python_targets_python2_7(-)] dev-python/pycairo[python_targets_python2_7(-)] dev-python/pygobject:3[cairo,python_targets_python2_7(-)] ) !<sci-chemistry/chemical-mime-data-0.1.94-r4 >=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= dev-libs/protobuf-c >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) modemmanager? ( net-misc/modemmanager[qmi] ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) sys-apps/dbus >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array virtual/pkgconfig sys-apps/baselayout dev-util/desktop-file-utils x11-misc/shared-mime-info
+DESCRIPTION=Aims to make updating firmware on Linux automatic, safe and reliable
+EAPI=6
+HOMEPAGE=https://fwupd.org
+IUSE=agent amt archive +bluetooth dell +dummy elogind flashrom +gnutls gtk-doc +gusb +gpg introspection lzma +man minimal modemmanager nls nvme pkcs7 policykit spi synaptics systemd test thunderbolt uefi cros_host cros_workon_tree_90f2e2fd15db34a99c406e9e39ba04a184a6c716 kernel_linux python_single_target_python2_7 python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
+KEYWORDS=*
+LICENSE=LGPL-2.1+
+PROPERTIES=live
+RDEPEND=!<sci-chemistry/chemical-mime-data-0.1.94-r4 >=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= dev-libs/protobuf-c >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) modemmanager? ( net-misc/modemmanager[qmi] ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) sys-apps/dbus sys-apps/baselayout
+REQUIRED_USE=^^ ( python_single_target_python2_7 python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9 ) dell? ( uefi ) minimal? ( !introspection ) spi? ( lzma ) synaptics? ( gnutls ) uefi? ( gnutls )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vala	2f3804278870542119da624a5eded505	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=b683187d35dc0f12fbadf2beac20992c
diff --git a/metadata/md5-cache/sys-apps/fwupd-9998 b/metadata/md5-cache/sys-apps/fwupd-9998
index a17c5d4..761ed96 100644
--- a/metadata/md5-cache/sys-apps/fwupd-9998
+++ b/metadata/md5-cache/sys-apps/fwupd-9998
@@ -1,15 +1,14 @@
 DEFINED_PHASES=compile configure install postinst postrm preinst prepare setup test unpack
-DEPEND=>=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) x11-libs/pango || ( dev-lang/vala:0.36 dev-lang/vala:0.34 dev-lang/vala:0.32 ) python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] ) python_single_target_python2_7? ( dev-python/pillow[python_targets_python2_7(-)] dev-python/pycairo[python_targets_python2_7(-)] dev-python/pygobject:3[cairo,python_targets_python2_7(-)] ) !<sci-chemistry/chemical-mime-data-0.1.94-r4 >=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) sys-apps/dbus >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array virtual/pkgconfig sys-apps/baselayout dev-util/desktop-file-utils x11-misc/shared-mime-info
+DEPEND=>=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= dev-libs/protobuf-c >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) modemmanager? ( net-misc/modemmanager[qmi] ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) x11-libs/pango || ( dev-lang/vala:0.36 dev-lang/vala:0.34 dev-lang/vala:0.32 ) python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] ) python_single_target_python2_7? ( dev-python/pillow[python_targets_python2_7(-)] dev-python/pycairo[python_targets_python2_7(-)] dev-python/pygobject:3[cairo,python_targets_python2_7(-)] ) !<sci-chemistry/chemical-mime-data-0.1.94-r4 >=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= dev-libs/protobuf-c >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) modemmanager? ( net-misc/modemmanager[qmi] ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) sys-apps/dbus >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array virtual/pkgconfig sys-apps/baselayout dev-util/desktop-file-utils x11-misc/shared-mime-info
 DESCRIPTION=Aims to make updating firmware on Linux automatic, safe and reliable
 EAPI=6
 HOMEPAGE=https://fwupd.org
-IUSE=+agent amt archive +bluetooth dell +dummy +gnutls gtk-doc +gusb elogind flashrom +gpg lzma minimal introspection +man nls nvme pkcs7 policykit spi synaptics systemd test thunderbolt uefi kernel_linux python_single_target_python2_7 python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
+IUSE=agent amt archive +bluetooth dell +dummy elogind flashrom +gnutls gtk-doc +gusb +gpg introspection lzma +man minimal modemmanager nls nvme pkcs7 policykit spi synaptics systemd test thunderbolt uefi kernel_linux python_single_target_python2_7 python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
 KEYWORDS=*
 LICENSE=LGPL-2.1+
 PROPERTIES=live
-RDEPEND=!<sci-chemistry/chemical-mime-data-0.1.94-r4 >=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) sys-apps/dbus sys-apps/baselayout
+RDEPEND=!<sci-chemistry/chemical-mime-data-0.1.94-r4 >=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= dev-libs/protobuf-c >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) modemmanager? ( net-misc/modemmanager[qmi] ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) sys-apps/dbus sys-apps/baselayout
 REQUIRED_USE=^^ ( python_single_target_python2_7 python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9 ) dell? ( uefi ) minimal? ( !introspection ) spi? ( lzma ) synaptics? ( gnutls ) uefi? ( gnutls )
-RESTRICT=!test? ( test )
 SLOT=0
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vala	2f3804278870542119da624a5eded505	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=195c05940864187dfba749b2fb3d60be
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vala	2f3804278870542119da624a5eded505	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=6c17b4e1836a7815a7f3c825dbbdb62f
diff --git a/metadata/md5-cache/sys-apps/fwupd-9999 b/metadata/md5-cache/sys-apps/fwupd-9999
index d7adb56..6702ed8 100644
--- a/metadata/md5-cache/sys-apps/fwupd-9999
+++ b/metadata/md5-cache/sys-apps/fwupd-9999
@@ -1,15 +1,14 @@
 DEFINED_PHASES=compile configure info install postinst postrm preinst prepare setup test unpack
-DEPEND=>=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) x11-libs/pango || ( dev-lang/vala:0.36 dev-lang/vala:0.34 dev-lang/vala:0.32 ) python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] ) python_single_target_python2_7? ( dev-python/pillow[python_targets_python2_7(-)] dev-python/pycairo[python_targets_python2_7(-)] dev-python/pygobject:3[cairo,python_targets_python2_7(-)] ) !<sci-chemistry/chemical-mime-data-0.1.94-r4 >=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) sys-apps/dbus >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array virtual/pkgconfig sys-apps/baselayout dev-util/desktop-file-utils x11-misc/shared-mime-info
+DEPEND=>=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= dev-libs/protobuf-c >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) modemmanager? ( net-misc/modemmanager[qmi] ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) x11-libs/pango || ( dev-lang/vala:0.36 dev-lang/vala:0.34 dev-lang/vala:0.32 ) python_single_target_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 >=dev-lang/python-exec-2:=[python_targets_python2_7] ) python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8 >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_9? ( dev-lang/python:3.9 >=dev-lang/python-exec-2:=[python_targets_python3_9] ) python_single_target_python2_7? ( dev-python/pillow[python_targets_python2_7(-)] dev-python/pycairo[python_targets_python2_7(-)] dev-python/pygobject:3[cairo,python_targets_python2_7(-)] ) !<sci-chemistry/chemical-mime-data-0.1.94-r4 >=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= dev-libs/protobuf-c >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) modemmanager? ( net-misc/modemmanager[qmi] ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) sys-apps/dbus >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array virtual/pkgconfig sys-apps/baselayout dev-util/desktop-file-utils x11-misc/shared-mime-info
 DESCRIPTION=Aims to make updating firmware on Linux automatic, safe and reliable
 EAPI=6
 HOMEPAGE=https://fwupd.org
-IUSE=+agent amt archive +bluetooth dell +dummy +gnutls gtk-doc +gusb elogind flashrom +gpg lzma minimal introspection +man nls nvme pkcs7 policykit spi synaptics systemd test thunderbolt uefi cros_host cros_workon_tree_ kernel_linux python_single_target_python2_7 python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
+IUSE=agent amt archive +bluetooth dell +dummy elogind flashrom +gnutls gtk-doc +gusb +gpg introspection lzma +man minimal modemmanager nls nvme pkcs7 policykit spi synaptics systemd test thunderbolt uefi cros_host cros_workon_tree_ kernel_linux python_single_target_python2_7 python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9
 KEYWORDS=~*
 LICENSE=LGPL-2.1+
 PROPERTIES=live
-RDEPEND=!<sci-chemistry/chemical-mime-data-0.1.94-r4 >=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) sys-apps/dbus sys-apps/baselayout
+RDEPEND=!<sci-chemistry/chemical-mime-data-0.1.94-r4 >=app-arch/gcab-1.0 dev-db/sqlite >=dev-libs/glib-2.45.8:2 dev-libs/json-glib dev-libs/libgpg-error dev-libs/libgudev:= >=dev-libs/libjcat-0.1.0[gpg?,pkcs7?] >=dev-libs/libxmlb-0.1.13:= dev-libs/protobuf-c >=net-libs/libsoup-2.51.92:2.4[introspection?] net-misc/curl virtual/libelf:0= virtual/udev archive? ( app-arch/libarchive:= ) dell? ( >=sys-libs/libsmbios-2.4.0 ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( sys-apps/flashrom ) gnutls? ( net-libs/gnutls ) gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] ) lzma? ( app-arch/xz-utils ) modemmanager? ( net-misc/modemmanager[qmi] ) policykit? ( >=sys-auth/polkit-0.103 ) systemd? ( >=sys-apps/systemd-211 ) uefi? ( sys-apps/fwupd-efi sys-boot/efibootmgr sys-fs/udisks sys-libs/efivar ) sys-apps/dbus sys-apps/baselayout
 REQUIRED_USE=^^ ( python_single_target_python2_7 python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 python_single_target_python3_9 ) dell? ( uefi ) minimal? ( !introspection ) spi? ( lzma ) synaptics? ( gnutls ) uefi? ( gnutls )
-RESTRICT=!test? ( test )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vala	2f3804278870542119da624a5eded505	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=a4f09892f23ccd835bd647e0a24b6520
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vala	2f3804278870542119da624a5eded505	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=4e1250f2ed8dc7b2aabfa5dbb939aa49
diff --git a/metadata/md5-cache/sys-apps/huddly-updater-0.0.1-r84 b/metadata/md5-cache/sys-apps/huddly-updater-0.0.1-r84
deleted file mode 100644
index 45c670c..0000000
--- a/metadata/md5-cache/sys-apps/huddly-updater-0.0.1-r84
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git virtual/pkgconfig
-DEFINED_PHASES=configure info install preinst setup test unpack
-DEPEND=chromeos-base/libbrillo:= chromeos-base/cfm-dfu-notification:= dev-libs/msgpack:= virtual/libusb:1 virtual/libudev:0= test? ( dev-cpp/gtest:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
-DESCRIPTION=A utility to update Huddly camera firmware
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/huddly-updater
-IUSE=test cros-debug cros_host cros_workon_tree_e131236442db8932de949ee815cfb95f90f93e7d cros-debug
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-RDEPEND=chromeos-base/libbrillo:= chromeos-base/cfm-dfu-notification:= dev-libs/msgpack:= virtual/libusb:1 virtual/libudev:0= app-arch/unzip >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
-SLOT=0/0.0.1-r84
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
-_md5_=cb687b4e571718eddb57dd2116405e55
diff --git a/metadata/md5-cache/sys-apps/huddly-updater-0.0.1-r88 b/metadata/md5-cache/sys-apps/huddly-updater-0.0.1-r88
new file mode 100644
index 0000000..59cd140
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/huddly-updater-0.0.1-r88
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=configure info install preinst setup test unpack
+DEPEND=chromeos-base/libbrillo:= chromeos-base/cfm-dfu-notification:= dev-libs/msgpack:= virtual/libusb:1 virtual/libudev:0= test? ( dev-cpp/gtest:= ) >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
+DESCRIPTION=A utility to update Huddly camera firmware
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/third_party/huddly-updater
+IUSE=test cros-debug cros_host cros_workon_tree_8e73b869e4aa9bd7f07a795f5db5f21126175d6e cros-debug
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+RDEPEND=chromeos-base/libbrillo:= chromeos-base/cfm-dfu-notification:= dev-libs/msgpack:= virtual/libusb:1 virtual/libudev:0= app-arch/unzip >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
+SLOT=0/0.0.1-r88
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=7d39af6c44a53559dae7cb81a9b26b07
diff --git a/metadata/md5-cache/sys-apps/huddly-updater-9999 b/metadata/md5-cache/sys-apps/huddly-updater-9999
index bedb457..2896913 100644
--- a/metadata/md5-cache/sys-apps/huddly-updater-9999
+++ b/metadata/md5-cache/sys-apps/huddly-updater-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/libbrillo:= chromeos-base/cfm-dfu-notification:= dev-libs/msgpack:= virtual/libusb:1 virtual/libudev:0= app-arch/unzip >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=a3fbd54ea7ccd17f77dc616d65129ceb
diff --git a/metadata/md5-cache/sys-apps/hwids-20150717 b/metadata/md5-cache/sys-apps/hwids-20150717
index 10fcb3e..6af865b 100644
--- a/metadata/md5-cache/sys-apps/hwids-20150717
+++ b/metadata/md5-cache/sys-apps/hwids-20150717
@@ -9,5 +9,5 @@
 RDEPEND=!<sys-apps/pciutils-3.1.9-r2 !<sys-apps/usbutils-005-r1
 SLOT=0
 SRC_URI=https://github.com/gentoo/hwids/archive/hwids-20150717.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=3a651a174fef3000aac6620a5d2591c8
diff --git a/metadata/md5-cache/sys-apps/hwids-20150717-r10 b/metadata/md5-cache/sys-apps/hwids-20150717-r10
new file mode 100644
index 0000000..6af865b
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/hwids-20150717-r10
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile install prepare
+DEPEND=udev? ( dev-lang/perl >=virtual/udev-206 ) virtual/pkgconfig
+DESCRIPTION=Hardware (PCI, USB, OUI, IAB) IDs databases
+EAPI=5
+HOMEPAGE=https://github.com/gentoo/hwids
+IUSE=+net +pci +udev +usb +hwids-lite
+KEYWORDS=*
+LICENSE=|| ( GPL-2 BSD ) public-domain
+RDEPEND=!<sys-apps/pciutils-3.1.9-r2 !<sys-apps/usbutils-005-r1
+SLOT=0
+SRC_URI=https://github.com/gentoo/hwids/archive/hwids-20150717.tar.gz
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=3a651a174fef3000aac6620a5d2591c8
diff --git a/metadata/md5-cache/sys-apps/hwids-20150717-r9 b/metadata/md5-cache/sys-apps/hwids-20150717-r9
deleted file mode 100644
index 10fcb3e..0000000
--- a/metadata/md5-cache/sys-apps/hwids-20150717-r9
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile install prepare
-DEPEND=udev? ( dev-lang/perl >=virtual/udev-206 ) virtual/pkgconfig
-DESCRIPTION=Hardware (PCI, USB, OUI, IAB) IDs databases
-EAPI=5
-HOMEPAGE=https://github.com/gentoo/hwids
-IUSE=+net +pci +udev +usb +hwids-lite
-KEYWORDS=*
-LICENSE=|| ( GPL-2 BSD ) public-domain
-RDEPEND=!<sys-apps/pciutils-3.1.9-r2 !<sys-apps/usbutils-005-r1
-SLOT=0
-SRC_URI=https://github.com/gentoo/hwids/archive/hwids-20150717.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=3a651a174fef3000aac6620a5d2591c8
diff --git a/metadata/md5-cache/sys-apps/iproute2-5.4.0-r2 b/metadata/md5-cache/sys-apps/iproute2-5.4.0-r2
index 3cdf18f..a932f3c 100644
--- a/metadata/md5-cache/sys-apps/iproute2-5.4.0-r2
+++ b/metadata/md5-cache/sys-apps/iproute2-5.4.0-r2
@@ -9,5 +9,5 @@
 RDEPEND=!net-misc/arpd !minimal? ( net-libs/libmnl ) iptables? ( >=net-firewall/iptables-1.4.20:= ) berkdb? ( sys-libs/db:= ) atm? ( net-dialup/linux-atm ) selinux? ( sys-libs/libselinux )
 SLOT=0
 SRC_URI=mirror://kernel/linux/utils/net/iproute2/iproute2-5.4.0.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d317f6e1608d88702a147524434139ee
diff --git a/metadata/md5-cache/sys-apps/libtsm-3-r3 b/metadata/md5-cache/sys-apps/libtsm-3-r3
index c536aa8..038ffe5 100644
--- a/metadata/md5-cache/sys-apps/libtsm-3-r3
+++ b/metadata/md5-cache/sys-apps/libtsm-3-r3
@@ -8,5 +8,5 @@
 RDEPEND=!!=sys-apps/kmscon-7
 SLOT=0
 SRC_URI=http://www.freedesktop.org/software/kmscon/releases/libtsm-3.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=d437af8752902889430869f7d1cc87ad
diff --git a/metadata/md5-cache/sys-apps/logitech-updater-0.0.1-r38 b/metadata/md5-cache/sys-apps/logitech-updater-0.0.1-r38
index 6b13507..979c90b 100644
--- a/metadata/md5-cache/sys-apps/logitech-updater-0.0.1-r38
+++ b/metadata/md5-cache/sys-apps/logitech-updater-0.0.1-r38
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/libbrillo:= virtual/libusb:1= chromeos-base/cfm-dfu-notification:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
 SLOT=0/0.0.1-r38
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=1815d8cad8a3f3e33ecf59a4f8e77e46
diff --git a/metadata/md5-cache/sys-apps/logitech-updater-9999 b/metadata/md5-cache/sys-apps/logitech-updater-9999
index 84775de..3d2b5dc 100644
--- a/metadata/md5-cache/sys-apps/logitech-updater-9999
+++ b/metadata/md5-cache/sys-apps/logitech-updater-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/libbrillo:= virtual/libusb:1= chromeos-base/cfm-dfu-notification:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=974889840fc65ee3d6f06bf6fbb18e0a
diff --git a/metadata/md5-cache/sys-apps/mimo-updater-0.0.1-r24 b/metadata/md5-cache/sys-apps/mimo-updater-0.0.1-r24
index 668c7b5..405404c 100644
--- a/metadata/md5-cache/sys-apps/mimo-updater-0.0.1-r24
+++ b/metadata/md5-cache/sys-apps/mimo-updater-0.0.1-r24
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/libbrillo:= virtual/libusb:1 virtual/libudev:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
 SLOT=0/0.0.1-r24
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=7c6243281d9a756fc2ad521db0f5e498
diff --git a/metadata/md5-cache/sys-apps/mimo-updater-9999 b/metadata/md5-cache/sys-apps/mimo-updater-9999
index b2a001b..9f66eb5 100644
--- a/metadata/md5-cache/sys-apps/mimo-updater-9999
+++ b/metadata/md5-cache/sys-apps/mimo-updater-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/libbrillo:= virtual/libusb:1 virtual/libudev:0= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=718682785f9c3f6a0b4362798c191264
diff --git a/metadata/md5-cache/sys-apps/mmc-utils-0.0.1-r23 b/metadata/md5-cache/sys-apps/mmc-utils-0.0.1-r23
index 73456ea..6f85741 100644
--- a/metadata/md5-cache/sys-apps/mmc-utils-0.0.1-r23
+++ b/metadata/md5-cache/sys-apps/mmc-utils-0.0.1-r23
@@ -8,5 +8,5 @@
 LICENSE=GPL-2
 PROPERTIES=live
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f52122d3ef6a76e02dd3b7e29b20adc3
diff --git a/metadata/md5-cache/sys-apps/mmc-utils-9999 b/metadata/md5-cache/sys-apps/mmc-utils-9999
index f44bec4..2297c3d 100644
--- a/metadata/md5-cache/sys-apps/mmc-utils-9999
+++ b/metadata/md5-cache/sys-apps/mmc-utils-9999
@@ -8,5 +8,5 @@
 LICENSE=GPL-2
 PROPERTIES=live
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=8fab2247ac0cd5d06565648b17884d15
diff --git a/metadata/md5-cache/sys-apps/mosys-1.2.3-r1294 b/metadata/md5-cache/sys-apps/mosys-1.2.3-r1294
deleted file mode 100644
index bfa985f..0000000
--- a/metadata/md5-cache/sys-apps/mosys-1.2.3-r1294
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git dev-vcs/git
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) vpd_file_cache? ( chromeos-base/vpd ) dev-util/cmocka chromeos-base/minijail cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
-DESCRIPTION=Utility for obtaining various bits of low-level system info
-EAPI=7
-HOMEPAGE=http://mosys.googlecode.com/
-IUSE=generated_cros_config unibuild vpd_file_cache cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_bcf4019b8955138ea74f9724cd90d5490c3c8b70 cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_791c6808b4f4f5f1c484108d66ff958d65f8f1e3_bcf4019b8955138ea74f9724cd90d5490c3c8b70 compilation_database cros_host test
-KEYWORDS=*
-LICENSE=BSD-Google BSD Apache-2.0 MIT ISC Unlicense
-PROPERTIES=live live
-RDEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) vpd_file_cache? ( chromeos-base/vpd ) dev-util/cmocka chromeos-base/minijail
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	platform	efc0b92bddaaf9cd74eceec133e77973	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f2d6f06ee4bc779ac1ddb125eeb48876
diff --git a/metadata/md5-cache/sys-apps/mosys-1.2.3-r1338 b/metadata/md5-cache/sys-apps/mosys-1.2.3-r1338
new file mode 100644
index 0000000..559f5d1
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/mosys-1.2.3-r1338
@@ -0,0 +1,14 @@
+BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array chromeos-base/chromeos-config-host:= dev-vcs/git dev-vcs/git
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=vpd_file_cache? ( chromeos-base/vpd ) dev-util/cmocka chromeos-base/minijail:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DESCRIPTION=Utility for obtaining various bits of low-level system info
+EAPI=7
+HOMEPAGE=http://mosys.googlecode.com/
+IUSE=unibuild vpd_file_cache has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_b63af68c544d220e9ac4fec05fcdd8001237667d cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722_b63af68c544d220e9ac4fec05fcdd8001237667d compilation_database cros_host test
+KEYWORDS=*
+LICENSE=BSD-Google BSD Apache-2.0 MIT ISC Unlicense
+PROPERTIES=live live
+RDEPEND=vpd_file_cache? ( chromeos-base/vpd ) dev-util/cmocka chromeos-base/minijail:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=81afeeab86c822745910fd633ed6329e
diff --git a/metadata/md5-cache/sys-apps/mosys-9999 b/metadata/md5-cache/sys-apps/mosys-9999
index 06d1f61..414c08b 100644
--- a/metadata/md5-cache/sys-apps/mosys-9999
+++ b/metadata/md5-cache/sys-apps/mosys-9999
@@ -1,14 +1,14 @@
-BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git dev-vcs/git
+BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array chromeos-base/chromeos-config-host:= dev-vcs/git dev-vcs/git
 DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) vpd_file_cache? ( chromeos-base/vpd ) dev-util/cmocka chromeos-base/minijail cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
+DEPEND=vpd_file_cache? ( chromeos-base/vpd ) dev-util/cmocka chromeos-base/minijail:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) cros_host? ( dev-util/gn ) >=dev-cpp/gtest-1.10.0:=
 DESCRIPTION=Utility for obtaining various bits of low-level system info
 EAPI=7
 HOMEPAGE=http://mosys.googlecode.com/
-IUSE=generated_cros_config unibuild vpd_file_cache cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ compilation_database cros_host test
+IUSE=unibuild vpd_file_cache has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros_host cros_workon_tree_ cros-debug fuzzer asan coverage fuzzer msan tsan ubsan cros_host cros_workon_tree_ compilation_database cros_host test
 KEYWORDS=~*
 LICENSE=BSD-Google BSD Apache-2.0 MIT ISC Unlicense
 PROPERTIES=live live
-RDEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) vpd_file_cache? ( chromeos-base/vpd ) dev-util/cmocka chromeos-base/minijail
+RDEPEND=vpd_file_cache? ( chromeos-base/vpd ) dev-util/cmocka chromeos-base/minijail:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	b480bfcdd51a928c9a2254c6641649a2	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	platform	efc0b92bddaaf9cd74eceec133e77973	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ea9ccb604c04b27b114f544ef40e5b60
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	platform	55fa3d5a49ef92fdfb31c827e2d8fc5d	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0c5cb40a045a04800fcf62e8efcc63be
diff --git a/metadata/md5-cache/sys-apps/novatek-tcon-fw-update-tool-0.0.1-r4 b/metadata/md5-cache/sys-apps/novatek-tcon-fw-update-tool-0.0.1-r4
index fc4510b..b4ab2df 100644
--- a/metadata/md5-cache/sys-apps/novatek-tcon-fw-update-tool-0.0.1-r4
+++ b/metadata/md5-cache/sys-apps/novatek-tcon-fw-update-tool-0.0.1-r4
@@ -7,5 +7,5 @@
 LICENSE=BSD
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=acdbafba030e35c05b23e33cf4e355ad
diff --git a/metadata/md5-cache/sys-apps/novatek-tcon-fw-update-tool-9999 b/metadata/md5-cache/sys-apps/novatek-tcon-fw-update-tool-9999
index fc044dd..690f10a 100644
--- a/metadata/md5-cache/sys-apps/novatek-tcon-fw-update-tool-9999
+++ b/metadata/md5-cache/sys-apps/novatek-tcon-fw-update-tool-9999
@@ -7,5 +7,5 @@
 LICENSE=BSD
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=4d4316d8817806476dc36b05dec1a1c5
diff --git a/metadata/md5-cache/sys-apps/portage-2.3.75-r59 b/metadata/md5-cache/sys-apps/portage-2.3.75-r59
deleted file mode 100644
index 1dfaa26..0000000
--- a/metadata/md5-cache/sys-apps/portage-2.3.75-r59
+++ /dev/null
@@ -1,15 +0,0 @@
-DEFINED_PHASES=compile configure info install preinst prepare setup test unpack
-DEPEND=!build? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7[ssl(+)] ) python_targets_python3_6? ( dev-lang/python:3.6[ssl(+)] ) python_targets_python3_7? ( dev-lang/python:3.7[ssl(+)] ) ) >=app-arch/tar-1.27 dev-lang/python-exec:2 >=sys-apps/sed-4.0.5 sys-devel/patch doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 ) epydoc? ( python_targets_python2_7? ( >=dev-python/epydoc-2.0[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7[bzip2(+),threads(+)] ) python_targets_python3_6? ( dev-lang/python:3.6[bzip2(+),threads(+)] ) python_targets_python3_7? ( dev-lang/python:3.7[bzip2(+),threads(+)] ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/setuptools[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] virtual/pkgconfig
-DESCRIPTION=Portage is the package management and distribution system for Gentoo
-EAPI=5
-HOMEPAGE=https://wiki.gentoo.org/wiki/Project:Portage
-IUSE=build doc epydoc gentoo-dev +ipc +native-extensions -rsync-verify selinux xattr python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 cros_host cros_workon_tree_36a4c89a02e336f72bbad9139911e34c2f91aaae
-KEYWORDS=*
-LICENSE=GPL-2
-PDEPEND=!build? ( >=net-misc/rsync-2.6.4 userland_GNU? ( >=sys-apps/coreutils-6.4 ) )
-PROPERTIES=live
-RDEPEND=>=app-arch/tar-1.27 dev-lang/python-exec:2 !build? ( >=sys-apps/sed-4.0.5 app-shells/bash:0[readline] >=app-admin/eselect-1.2 python_targets_python2_7? ( dev-python/pyblake2[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) rsync-verify? ( >=app-portage/gemato-14[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=app-crypt/openpgp-keys-gentoo-release-20180706 >=app-crypt/gnupg-2.2.4-r2[ssl(-)] ) ) elibc_FreeBSD? ( sys-freebsd/freebsd-bin ) elibc_glibc? ( >=sys-apps/sandbox-2.2 ) elibc_musl? ( >=sys-apps/sandbox-2.2 ) elibc_uclibc? ( >=sys-apps/sandbox-2.2 ) >=app-misc/pax-utils-0.1.17 selinux? ( >=sys-libs/libselinux-2.0.94[python,python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] ) xattr? ( kernel_linux? ( >=sys-apps/install-xattr-0.3 python_targets_python2_7? ( dev-python/pyxattr[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) ) ) !<app-portage/gentoolkit-0.3.0.8-r4 !<app-admin/logrotate-3.8.0 !<app-portage/repoman-2.3.10 python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7[bzip2(+),threads(+)] ) python_targets_python3_6? ( dev-lang/python:3.6[bzip2(+),threads(+)] ) python_targets_python3_7? ( dev-lang/python:3.7[bzip2(+),threads(+)] ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
-REQUIRED_USE=epydoc? ( python_targets_python2_7 ) || ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=0ea907f6cc33ea0228813ed971932f19
diff --git a/metadata/md5-cache/sys-apps/portage-2.3.75-r62 b/metadata/md5-cache/sys-apps/portage-2.3.75-r62
new file mode 100644
index 0000000..70164d4
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/portage-2.3.75-r62
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure info install preinst prepare setup test unpack
+DEPEND=!build? ( python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7[ssl(+)] ) python_targets_python3_6? ( dev-lang/python:3.6[ssl(+)] ) python_targets_python3_7? ( dev-lang/python:3.7[ssl(+)] ) ) >=app-arch/tar-1.27 dev-lang/python-exec:2 >=sys-apps/sed-4.0.5 sys-devel/patch doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 ) epydoc? ( python_targets_python2_7? ( >=dev-python/epydoc-2.0[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7[bzip2(+),threads(+)] ) python_targets_python3_6? ( dev-lang/python:3.6[bzip2(+),threads(+)] ) python_targets_python3_7? ( dev-lang/python:3.7[bzip2(+),threads(+)] ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] dev-python/setuptools[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] virtual/pkgconfig
+DESCRIPTION=Portage is the package management and distribution system for Gentoo
+EAPI=5
+HOMEPAGE=https://wiki.gentoo.org/wiki/Project:Portage
+IUSE=build doc epydoc gentoo-dev +ipc +native-extensions -rsync-verify selinux xattr python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 cros_host cros_workon_tree_4a1bd562718cd3fd754f07d8b5cf7639858a1d3e
+KEYWORDS=*
+LICENSE=GPL-2
+PDEPEND=!build? ( >=net-misc/rsync-2.6.4 userland_GNU? ( >=sys-apps/coreutils-6.4 ) )
+PROPERTIES=live
+RDEPEND=>=app-arch/tar-1.27 dev-lang/python-exec:2 !build? ( >=sys-apps/sed-4.0.5 app-shells/bash:0[readline] >=app-admin/eselect-1.2 python_targets_python2_7? ( dev-python/pyblake2[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) rsync-verify? ( >=app-portage/gemato-14[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=app-crypt/openpgp-keys-gentoo-release-20180706 >=app-crypt/gnupg-2.2.4-r2[ssl(-)] ) ) elibc_FreeBSD? ( sys-freebsd/freebsd-bin ) elibc_glibc? ( >=sys-apps/sandbox-2.2 ) elibc_musl? ( >=sys-apps/sandbox-2.2 ) elibc_uclibc? ( >=sys-apps/sandbox-2.2 ) >=app-misc/pax-utils-0.1.17 selinux? ( >=sys-libs/libselinux-2.0.94[python,python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] ) xattr? ( kernel_linux? ( >=sys-apps/install-xattr-0.3 python_targets_python2_7? ( dev-python/pyxattr[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) ) ) !<app-portage/gentoolkit-0.3.0.8-r4 !<app-admin/logrotate-3.8.0 !<app-portage/repoman-2.3.10 python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7[bzip2(+),threads(+)] ) python_targets_python3_6? ( dev-lang/python:3.6[bzip2(+),threads(+)] ) python_targets_python3_7? ( dev-lang/python:3.7[bzip2(+),threads(+)] ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
+REQUIRED_USE=epydoc? ( python_targets_python2_7 ) || ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=23585042a962d0ac3dd59667aa7e3e45
diff --git a/metadata/md5-cache/sys-apps/portage-9999 b/metadata/md5-cache/sys-apps/portage-9999
index bfae8fd..86ed76f 100644
--- a/metadata/md5-cache/sys-apps/portage-9999
+++ b/metadata/md5-cache/sys-apps/portage-9999
@@ -11,5 +11,5 @@
 RDEPEND=>=app-arch/tar-1.27 dev-lang/python-exec:2 !build? ( >=sys-apps/sed-4.0.5 app-shells/bash:0[readline] >=app-admin/eselect-1.2 python_targets_python2_7? ( dev-python/pyblake2[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) rsync-verify? ( >=app-portage/gemato-14[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] >=app-crypt/openpgp-keys-gentoo-release-20180706 >=app-crypt/gnupg-2.2.4-r2[ssl(-)] ) ) elibc_FreeBSD? ( sys-freebsd/freebsd-bin ) elibc_glibc? ( >=sys-apps/sandbox-2.2 ) elibc_musl? ( >=sys-apps/sandbox-2.2 ) elibc_uclibc? ( >=sys-apps/sandbox-2.2 ) >=app-misc/pax-utils-0.1.17 selinux? ( >=sys-libs/libselinux-2.0.94[python,python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)] ) xattr? ( kernel_linux? ( >=sys-apps/install-xattr-0.3 python_targets_python2_7? ( dev-python/pyxattr[python_targets_python2_7(-)?,-python_single_target_python2_7(-)] ) ) ) !<app-portage/gentoolkit-0.3.0.8-r4 !<app-admin/logrotate-3.8.0 !<app-portage/repoman-2.3.10 python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7[bzip2(+),threads(+)] ) python_targets_python3_6? ( dev-lang/python:3.6[bzip2(+),threads(+)] ) python_targets_python3_7? ( dev-lang/python:3.7[bzip2(+),threads(+)] ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
 REQUIRED_USE=epydoc? ( python_targets_python2_7 ) || ( python_targets_python2_7 python_targets_python3_6 python_targets_python3_7 )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	distutils-r1	198e3b9ddb55ae36b2a50b07ca2877ef	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=45edffa88ba1177326d8b67291720fe6
diff --git a/metadata/md5-cache/sys-apps/restorecon-2.7 b/metadata/md5-cache/sys-apps/restorecon-2.7
index 328439f..2cd764f 100644
--- a/metadata/md5-cache/sys-apps/restorecon-2.7
+++ b/metadata/md5-cache/sys-apps/restorecon-2.7
@@ -9,5 +9,5 @@
 RDEPEND=>=sys-libs/libselinux-2.7:= >=sys-libs/glibc-2.4 >=sys-libs/libsepol-2.7:= audit? ( >=sys-process/audit-1.5.1 ) !sys-apps/policycoreutils
 SLOT=0
 SRC_URI=https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20170804/policycoreutils-2.7.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e2f29a1745d951db84319de5d7e4db09
diff --git a/metadata/md5-cache/sys-apps/restorecon-2.7-r1 b/metadata/md5-cache/sys-apps/restorecon-2.7-r1
index 328439f..2cd764f 100644
--- a/metadata/md5-cache/sys-apps/restorecon-2.7-r1
+++ b/metadata/md5-cache/sys-apps/restorecon-2.7-r1
@@ -9,5 +9,5 @@
 RDEPEND=>=sys-libs/libselinux-2.7:= >=sys-libs/glibc-2.4 >=sys-libs/libsepol-2.7:= audit? ( >=sys-process/audit-1.5.1 ) !sys-apps/policycoreutils
 SLOT=0
 SRC_URI=https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20170804/policycoreutils-2.7.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=e2f29a1745d951db84319de5d7e4db09
diff --git a/metadata/md5-cache/sys-apps/ripgrep-12.1.1 b/metadata/md5-cache/sys-apps/ripgrep-12.1.1
index cf6ecac..5f14509 100644
--- a/metadata/md5-cache/sys-apps/ripgrep-12.1.1
+++ b/metadata/md5-cache/sys-apps/ripgrep-12.1.1
@@ -9,5 +9,5 @@
 RDEPEND=pcre? ( dev-libs/libpcre2 )
 SLOT=0
 SRC_URI=https://github.com/BurntSushi/ripgrep/archive/12.1.1.tar.gz -> ripgrep-12.1.1.tar.gz https://github.com/BurntSushi/ripgrep/releases/download/12.1.1/ripgrep-12.1.1-x86_64-unknown-linux-musl.tar.gz https://crates.io/api/v1/crates/aho-corasick/0.7.10/download -> aho-corasick-0.7.10.crate https://crates.io/api/v1/crates/atty/0.2.14/download -> atty-0.2.14.crate https://crates.io/api/v1/crates/autocfg/1.0.0/download -> autocfg-1.0.0.crate https://crates.io/api/v1/crates/base64/0.12.1/download -> base64-0.12.1.crate https://crates.io/api/v1/crates/bitflags/1.2.1/download -> bitflags-1.2.1.crate https://crates.io/api/v1/crates/bstr/0.2.13/download -> bstr-0.2.13.crate https://crates.io/api/v1/crates/bytecount/0.6.0/download -> bytecount-0.6.0.crate https://crates.io/api/v1/crates/byteorder/1.3.4/download -> byteorder-1.3.4.crate https://crates.io/api/v1/crates/cc/1.0.54/download -> cc-1.0.54.crate https://crates.io/api/v1/crates/cfg-if/0.1.10/download -> cfg-if-0.1.10.crate https://crates.io/api/v1/crates/clap/2.33.1/download -> clap-2.33.1.crate https://crates.io/api/v1/crates/crossbeam-channel/0.4.2/download -> crossbeam-channel-0.4.2.crate https://crates.io/api/v1/crates/crossbeam-utils/0.7.2/download -> crossbeam-utils-0.7.2.crate https://crates.io/api/v1/crates/encoding_rs/0.8.23/download -> encoding_rs-0.8.23.crate https://crates.io/api/v1/crates/encoding_rs_io/0.1.7/download -> encoding_rs_io-0.1.7.crate https://crates.io/api/v1/crates/fnv/1.0.7/download -> fnv-1.0.7.crate https://crates.io/api/v1/crates/fs_extra/1.1.0/download -> fs_extra-1.1.0.crate https://crates.io/api/v1/crates/glob/0.3.0/download -> glob-0.3.0.crate https://crates.io/api/v1/crates/hermit-abi/0.1.13/download -> hermit-abi-0.1.13.crate https://crates.io/api/v1/crates/itoa/0.4.5/download -> itoa-0.4.5.crate https://crates.io/api/v1/crates/jemallocator/0.3.2/download -> jemallocator-0.3.2.crate https://crates.io/api/v1/crates/jemalloc-sys/0.3.2/download -> jemalloc-sys-0.3.2.crate https://crates.io/api/v1/crates/lazy_static/1.4.0/download -> lazy_static-1.4.0.crate https://crates.io/api/v1/crates/libc/0.2.71/download -> libc-0.2.71.crate https://crates.io/api/v1/crates/log/0.4.8/download -> log-0.4.8.crate https://crates.io/api/v1/crates/maybe-uninit/2.0.0/download -> maybe-uninit-2.0.0.crate https://crates.io/api/v1/crates/memchr/2.3.3/download -> memchr-2.3.3.crate https://crates.io/api/v1/crates/memmap/0.7.0/download -> memmap-0.7.0.crate https://crates.io/api/v1/crates/num_cpus/1.13.0/download -> num_cpus-1.13.0.crate https://crates.io/api/v1/crates/packed_simd/0.3.3/download -> packed_simd-0.3.3.crate https://crates.io/api/v1/crates/pcre2/0.2.3/download -> pcre2-0.2.3.crate https://crates.io/api/v1/crates/pcre2-sys/0.2.2/download -> pcre2-sys-0.2.2.crate https://crates.io/api/v1/crates/pkg-config/0.3.17/download -> pkg-config-0.3.17.crate https://crates.io/api/v1/crates/proc-macro2/1.0.17/download -> proc-macro2-1.0.17.crate https://crates.io/api/v1/crates/quote/1.0.6/download -> quote-1.0.6.crate https://crates.io/api/v1/crates/regex/1.3.9/download -> regex-1.3.9.crate https://crates.io/api/v1/crates/regex-automata/0.1.9/download -> regex-automata-0.1.9.crate https://crates.io/api/v1/crates/regex-syntax/0.6.18/download -> regex-syntax-0.6.18.crate https://crates.io/api/v1/crates/ryu/1.0.4/download -> ryu-1.0.4.crate https://crates.io/api/v1/crates/same-file/1.0.6/download -> same-file-1.0.6.crate https://crates.io/api/v1/crates/serde/1.0.110/download -> serde-1.0.110.crate https://crates.io/api/v1/crates/serde_derive/1.0.110/download -> serde_derive-1.0.110.crate https://crates.io/api/v1/crates/serde_json/1.0.53/download -> serde_json-1.0.53.crate https://crates.io/api/v1/crates/strsim/0.8.0/download -> strsim-0.8.0.crate https://crates.io/api/v1/crates/syn/1.0.27/download -> syn-1.0.27.crate https://crates.io/api/v1/crates/termcolor/1.1.0/download -> termcolor-1.1.0.crate https://crates.io/api/v1/crates/textwrap/0.11.0/download -> textwrap-0.11.0.crate https://crates.io/api/v1/crates/thread_local/1.0.1/download -> thread_local-1.0.1.crate https://crates.io/api/v1/crates/unicode-width/0.1.7/download -> unicode-width-0.1.7.crate https://crates.io/api/v1/crates/unicode-xid/0.2.0/download -> unicode-xid-0.2.0.crate https://crates.io/api/v1/crates/walkdir/2.3.1/download -> walkdir-2.3.1.crate https://crates.io/api/v1/crates/winapi/0.3.8/download -> winapi-0.3.8.crate https://crates.io/api/v1/crates/winapi-i686-pc-windows-gnu/0.4.0/download -> winapi-i686-pc-windows-gnu-0.4.0.crate https://crates.io/api/v1/crates/winapi-util/0.1.5/download -> winapi-util-0.1.5.crate https://crates.io/api/v1/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download -> winapi-x86_64-pc-windows-gnu-0.4.0.crate
-_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	cargo	378185a01fbe9ce3ab1cff0a241ecd00	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	cargo	378185a01fbe9ce3ab1cff0a241ecd00	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=a781eb5557eff0ef7034ba9cbe6cda7b
diff --git a/metadata/md5-cache/sys-apps/rootdev-0.0.1-r38 b/metadata/md5-cache/sys-apps/rootdev-0.0.1-r38
index 9411d8a..c0f1aac 100644
--- a/metadata/md5-cache/sys-apps/rootdev-0.0.1-r38
+++ b/metadata/md5-cache/sys-apps/rootdev-0.0.1-r38
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/0.0.1-r38
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1827beb65bf63b3d07043e147548aef1
diff --git a/metadata/md5-cache/sys-apps/rootdev-9999 b/metadata/md5-cache/sys-apps/rootdev-9999
index 90fe944..7dd760d 100644
--- a/metadata/md5-cache/sys-apps/rootdev-9999
+++ b/metadata/md5-cache/sys-apps/rootdev-9999
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=78b665735a7c322c64bc6492fa0499bb
diff --git a/metadata/md5-cache/sys-apps/sandbox-2.11-r9 b/metadata/md5-cache/sys-apps/sandbox-2.11-r9
index 7778844..46fb96d 100644
--- a/metadata/md5-cache/sys-apps/sandbox-2.11-r9
+++ b/metadata/md5-cache/sys-apps/sandbox-2.11-r9
@@ -8,5 +8,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=mirror://gentoo/sandbox-2.11.tar.xz https://dev.gentoo.org/~vapier/dist/sandbox-2.11.tar.xz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=223746f27e3f8168dc97b6a122a1b648
diff --git a/metadata/md5-cache/sys-apps/sis-updater-0.0.1-r27 b/metadata/md5-cache/sys-apps/sis-updater-0.0.1-r27
index a014cd1..6b97bed 100644
--- a/metadata/md5-cache/sys-apps/sis-updater-0.0.1-r27
+++ b/metadata/md5-cache/sys-apps/sis-updater-0.0.1-r27
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
 SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=23261aed22d3faa1e03f1f088863d5c3
diff --git a/metadata/md5-cache/sys-apps/sis-updater-9999 b/metadata/md5-cache/sys-apps/sis-updater-9999
index d16a765..a3e4648 100644
--- a/metadata/md5-cache/sys-apps/sis-updater-9999
+++ b/metadata/md5-cache/sys-apps/sis-updater-9999
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/libbrillo:= >=chromeos-base/libchrome-0.0.1-r117:0=[cros-debug=] sys-apps/baselayout
 SLOT=0
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libchrome	b0adbfd1a2eae79766f7256eaad1da23	libchrome-version	f89118941e7f3c3825d2fe216c977c57	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
 _md5_=1dcdf7e997f2d1a4ff8413a75696c5ea
diff --git a/metadata/md5-cache/sys-apps/st-touch-fw-updater-0.0.1.002 b/metadata/md5-cache/sys-apps/st-touch-fw-updater-0.0.1.002
index 21b090c..29ec820 100644
--- a/metadata/md5-cache/sys-apps/st-touch-fw-updater-0.0.1.002
+++ b/metadata/md5-cache/sys-apps/st-touch-fw-updater-0.0.1.002
@@ -6,5 +6,5 @@
 LICENSE=BSD
 SLOT=0
 SRC_URI=https://github.com/stmicroelectronics-acp/st-touch-fw-updater/archive/v0.0.1.002.tar.gz -> st-touch-fw-updater-0.0.1.002.tar.gz
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7e16c1e87ab167ffe962e91aa68cf370
diff --git a/metadata/md5-cache/sys-apps/st-touch-fw-updater-0.0.1.002-r2 b/metadata/md5-cache/sys-apps/st-touch-fw-updater-0.0.1.002-r2
index 21b090c..29ec820 100644
--- a/metadata/md5-cache/sys-apps/st-touch-fw-updater-0.0.1.002-r2
+++ b/metadata/md5-cache/sys-apps/st-touch-fw-updater-0.0.1.002-r2
@@ -6,5 +6,5 @@
 LICENSE=BSD
 SLOT=0
 SRC_URI=https://github.com/stmicroelectronics-acp/st-touch-fw-updater/archive/v0.0.1.002.tar.gz -> st-touch-fw-updater-0.0.1.002.tar.gz
-_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-common.mk	0d2a9d7d20c4d4ab08fc94b6ca128a88	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=7e16c1e87ab167ffe962e91aa68cf370
diff --git a/metadata/md5-cache/sys-apps/systemd-tmpfiles-247-r2 b/metadata/md5-cache/sys-apps/systemd-tmpfiles-247-r2
deleted file mode 100644
index 3beb5ff..0000000
--- a/metadata/md5-cache/sys-apps/systemd-tmpfiles-247-r2
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=app-text/docbook-xml-dtd:4.2 app-text/docbook-xml-dtd:4.5 app-text/docbook-xsl-stylesheets dev-libs/libxslt:0 >=dev-util/meson-0.46 >=dev-util/intltool-0.50 >=sys-apps/coreutils-8.16 sys-devel/m4 virtual/pkgconfig test? ( || ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
-DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
-DEPEND=sys-apps/acl:0= >=sys-apps/util-linux-2.30:0= >=sys-kernel/linux-headers-3.11 sys-libs/libcap:0= selinux? ( sys-libs/libselinux:0= )
-DESCRIPTION=Creates, deletes and cleans up volatile and temporary files and directories
-EAPI=7
-HOMEPAGE=https://www.freedesktop.org/wiki/Software/systemd
-IUSE=selinux test cros_host cros_workon_tree_83bd8f9f33dcbdab56dd52d44086e72c63b85e7b
-KEYWORDS=*
-LICENSE=BSD-2 GPL-2 LGPL-2.1 MIT public-domain
-PROPERTIES=live
-RDEPEND=sys-apps/acl:0= >=sys-apps/util-linux-2.30:0= >=sys-kernel/linux-headers-3.11 sys-libs/libcap:0= selinux? ( sys-libs/libselinux:0= ) !sys-apps/opentmpfiles !sys-apps/systemd
-RESTRICT=!test? ( test )
-SLOT=0
-SRC_URI=elibc_musl? ( https://dev.gentoo.org/~gyakovlev/distfiles/systemd-tmpfiles-247-musl.tar.xz )
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=bab8a9a3e28ebb604336e0edcc5074ce
diff --git a/metadata/md5-cache/sys-apps/systemd-tmpfiles-247-r3 b/metadata/md5-cache/sys-apps/systemd-tmpfiles-247-r3
new file mode 100644
index 0000000..011c609
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/systemd-tmpfiles-247-r3
@@ -0,0 +1,16 @@
+BDEPEND=app-text/docbook-xml-dtd:4.2 app-text/docbook-xml-dtd:4.5 app-text/docbook-xsl-stylesheets dev-libs/libxslt:0 >=dev-util/meson-0.46 >=dev-util/intltool-0.50 >=sys-apps/coreutils-8.16 sys-devel/m4 virtual/pkgconfig test? ( || ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
+DEFINED_PHASES=compile configure info install postinst prepare setup test unpack
+DEPEND=sys-apps/acl:0= >=sys-apps/util-linux-2.30:0= >=sys-kernel/linux-headers-3.11 sys-libs/libcap:0= selinux? ( sys-libs/libselinux:0= )
+DESCRIPTION=Creates, deletes and cleans up volatile and temporary files and directories
+EAPI=7
+HOMEPAGE=https://www.freedesktop.org/wiki/Software/systemd
+IUSE=selinux test cros_host cros_workon_tree_ee97d599a375b39a743f9745b31a258f80ade471
+KEYWORDS=*
+LICENSE=BSD-2 GPL-2 LGPL-2.1 MIT public-domain
+PROPERTIES=live
+RDEPEND=sys-apps/acl:0= >=sys-apps/util-linux-2.30:0= >=sys-kernel/linux-headers-3.11 sys-libs/libcap:0= selinux? ( sys-libs/libselinux:0= ) !sys-apps/opentmpfiles !sys-apps/systemd
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=elibc_musl? ( https://dev.gentoo.org/~gyakovlev/distfiles/systemd-tmpfiles-247-musl.tar.xz )
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=aa832d3c00a878a82d8eab36211e42a9
diff --git a/metadata/md5-cache/sys-apps/systemd-tmpfiles-9999 b/metadata/md5-cache/sys-apps/systemd-tmpfiles-9999
index 89e4070..751e8e5 100644
--- a/metadata/md5-cache/sys-apps/systemd-tmpfiles-9999
+++ b/metadata/md5-cache/sys-apps/systemd-tmpfiles-9999
@@ -12,5 +12,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=elibc_musl? ( https://dev.gentoo.org/~gyakovlev/distfiles/systemd-tmpfiles-9999-musl.tar.xz )
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=c322fe64586dd4f2743a4a002a4b4176
diff --git a/metadata/md5-cache/sys-apps/upstart-1.2-r43 b/metadata/md5-cache/sys-apps/upstart-1.2-r43
deleted file mode 100644
index c35d7c0..0000000
--- a/metadata/md5-cache/sys-apps/upstart-1.2-r43
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git >=app-portage/elt-patches-20170815
-DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=>=dev-libs/expat-2.0.0 nls? ( sys-devel/gettext ) direncryption? ( sys-fs/e2fsprogs ) >=sys-apps/dbus-1.2.16 >=sys-libs/libnih-1.0.2 selinux? ( sys-libs/libselinux sys-libs/libsepol ) udev_bridge? ( >=virtual/libudev-146 ) direncryption? ( sys-apps/keyutils ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=An event-based replacement for the init daemon
-EAPI=7
-HOMEPAGE=http://upstart.ubuntu.com/
-IUSE=debug direncryption examples nls selinux udev_bridge cros_host cros_workon_tree_d69eb10c4a65ca386a5bbb961dfe31b246b5fb91
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=>=sys-apps/dbus-1.2.16 >=sys-libs/libnih-1.0.2 selinux? ( sys-libs/libselinux sys-libs/libsepol ) udev_bridge? ( >=virtual/libudev-146 ) direncryption? ( sys-apps/keyutils ) selinux? ( chromeos-base/selinux-policy )
-SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3d7efc289bd7a3fe85a3722d8824af62
diff --git a/metadata/md5-cache/sys-apps/upstart-1.2-r51 b/metadata/md5-cache/sys-apps/upstart-1.2-r51
new file mode 100644
index 0000000..515e361
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/upstart-1.2-r51
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git >=app-portage/elt-patches-20170815
+DEFINED_PHASES=compile configure info install prepare setup unpack
+DEPEND=>=dev-libs/expat-2.0.0 nls? ( sys-devel/gettext ) direncryption? ( sys-fs/e2fsprogs ) >=sys-apps/dbus-1.2.16 >=sys-libs/libnih-1.0.2 selinux? ( sys-libs/libselinux sys-libs/libsepol ) udev_bridge? ( >=virtual/libudev-146 ) direncryption? ( sys-apps/keyutils ) global_seccomp? ( chromeos-base/minijail ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=An event-based replacement for the init daemon
+EAPI=7
+HOMEPAGE=http://upstart.ubuntu.com/
+IUSE=debug direncryption examples global_seccomp manatee nls selinux udev_bridge cros_host cros_workon_tree_4d503ec7163213da41c0beb5ea4573493fae2582
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=>=sys-apps/dbus-1.2.16 >=sys-libs/libnih-1.0.2 selinux? ( sys-libs/libselinux sys-libs/libsepol ) udev_bridge? ( >=virtual/libudev-146 ) direncryption? ( sys-apps/keyutils ) global_seccomp? ( chromeos-base/minijail ) selinux? ( chromeos-base/selinux-policy )
+SLOT=0
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=57f1f63459f45abad8e11282f04545a8
diff --git a/metadata/md5-cache/sys-apps/upstart-9999 b/metadata/md5-cache/sys-apps/upstart-9999
index b63b3fe..8ab9bb3 100644
--- a/metadata/md5-cache/sys-apps/upstart-9999
+++ b/metadata/md5-cache/sys-apps/upstart-9999
@@ -1,14 +1,14 @@
 BDEPEND=dev-vcs/git >=app-portage/elt-patches-20170815
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=>=dev-libs/expat-2.0.0 nls? ( sys-devel/gettext ) direncryption? ( sys-fs/e2fsprogs ) >=sys-apps/dbus-1.2.16 >=sys-libs/libnih-1.0.2 selinux? ( sys-libs/libselinux sys-libs/libsepol ) udev_bridge? ( >=virtual/libudev-146 ) direncryption? ( sys-apps/keyutils ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DEPEND=>=dev-libs/expat-2.0.0 nls? ( sys-devel/gettext ) direncryption? ( sys-fs/e2fsprogs ) >=sys-apps/dbus-1.2.16 >=sys-libs/libnih-1.0.2 selinux? ( sys-libs/libselinux sys-libs/libsepol ) udev_bridge? ( >=virtual/libudev-146 ) direncryption? ( sys-apps/keyutils ) global_seccomp? ( chromeos-base/minijail ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
 DESCRIPTION=An event-based replacement for the init daemon
 EAPI=7
 HOMEPAGE=http://upstart.ubuntu.com/
-IUSE=debug direncryption examples nls selinux udev_bridge cros_host cros_workon_tree_
+IUSE=debug direncryption examples global_seccomp manatee nls selinux udev_bridge cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
-RDEPEND=>=sys-apps/dbus-1.2.16 >=sys-libs/libnih-1.0.2 selinux? ( sys-libs/libselinux sys-libs/libsepol ) udev_bridge? ( >=virtual/libudev-146 ) direncryption? ( sys-apps/keyutils ) selinux? ( chromeos-base/selinux-policy )
+RDEPEND=>=sys-apps/dbus-1.2.16 >=sys-libs/libnih-1.0.2 selinux? ( sys-libs/libselinux sys-libs/libsepol ) udev_bridge? ( >=virtual/libudev-146 ) direncryption? ( sys-apps/keyutils ) global_seccomp? ( chromeos-base/minijail ) selinux? ( chromeos-base/selinux-policy )
 SLOT=0
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f5f5eedaa933a581df143d2853ce35c6
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5ef3b8bc87a2c259e2672ba6f3a2c727
diff --git a/metadata/md5-cache/sys-apps/usbguard-20190808 b/metadata/md5-cache/sys-apps/usbguard-20190808
index d55d04d..74b5d34 100644
--- a/metadata/md5-cache/sys-apps/usbguard-20190808
+++ b/metadata/md5-cache/sys-apps/usbguard-20190808
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/dbus-glib dev-libs/libgcrypt dev-libs/protobuf:= sys-apps/dbus sys-cluster/libqb sys-apps/baselayout
 SLOT=0
 SRC_URI=https://github.com/USBGuard/usbguard/archive/4957d2d0bc4c2ed4529e8b69f9813c735d51a69a.tar.gz -> usbguard-20190808.tar.gz https://github.com/catchorg/Catch2/archive/35f510545d55a831372d3113747bf1314ff4f2ef.tar.gz -> usbguard-201807-catch.tar.gz https://github.com/taocpp/PEGTL/archive/ecec1f68d5ddae123aa7fb82b88abc1e03dd3587.tar.gz -> usbguard-20190808-pegtl.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=2098a5186fcdbfeba00ed7ee390397a1
diff --git a/metadata/md5-cache/sys-apps/usbguard-20190808-r10 b/metadata/md5-cache/sys-apps/usbguard-20190808-r10
deleted file mode 100644
index d55d04d..0000000
--- a/metadata/md5-cache/sys-apps/usbguard-20190808-r10
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=configure install prepare setup
-DEPEND=dev-libs/dbus-glib dev-libs/libgcrypt dev-libs/protobuf:= sys-apps/dbus sys-cluster/libqb >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
-DESCRIPTION=The USBGuard software framework helps to protect your computer against rogue USB devices (a.k.a. BadUSB) by implementing basic whitelisting and blacklisting capabilities based on device attributes.
-EAPI=6
-HOMEPAGE=https://usbguard.github.io/
-IUSE=cfm_enabled_device hammerd
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=dev-libs/dbus-glib dev-libs/libgcrypt dev-libs/protobuf:= sys-apps/dbus sys-cluster/libqb sys-apps/baselayout
-SLOT=0
-SRC_URI=https://github.com/USBGuard/usbguard/archive/4957d2d0bc4c2ed4529e8b69f9813c735d51a69a.tar.gz -> usbguard-20190808.tar.gz https://github.com/catchorg/Catch2/archive/35f510545d55a831372d3113747bf1314ff4f2ef.tar.gz -> usbguard-201807-catch.tar.gz https://github.com/taocpp/PEGTL/archive/ecec1f68d5ddae123aa7fb82b88abc1e03dd3587.tar.gz -> usbguard-20190808-pegtl.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=2098a5186fcdbfeba00ed7ee390397a1
diff --git a/metadata/md5-cache/sys-apps/usbguard-20190808-r12 b/metadata/md5-cache/sys-apps/usbguard-20190808-r12
new file mode 100644
index 0000000..74b5d34
--- /dev/null
+++ b/metadata/md5-cache/sys-apps/usbguard-20190808-r12
@@ -0,0 +1,13 @@
+DEFINED_PHASES=configure install prepare setup
+DEPEND=dev-libs/dbus-glib dev-libs/libgcrypt dev-libs/protobuf:= sys-apps/dbus sys-cluster/libqb >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
+DESCRIPTION=The USBGuard software framework helps to protect your computer against rogue USB devices (a.k.a. BadUSB) by implementing basic whitelisting and blacklisting capabilities based on device attributes.
+EAPI=6
+HOMEPAGE=https://usbguard.github.io/
+IUSE=cfm_enabled_device hammerd
+KEYWORDS=*
+LICENSE=GPL-2
+RDEPEND=dev-libs/dbus-glib dev-libs/libgcrypt dev-libs/protobuf:= sys-apps/dbus sys-cluster/libqb sys-apps/baselayout
+SLOT=0
+SRC_URI=https://github.com/USBGuard/usbguard/archive/4957d2d0bc4c2ed4529e8b69f9813c735d51a69a.tar.gz -> usbguard-20190808.tar.gz https://github.com/catchorg/Catch2/archive/35f510545d55a831372d3113747bf1314ff4f2ef.tar.gz -> usbguard-201807-catch.tar.gz https://github.com/taocpp/PEGTL/archive/ecec1f68d5ddae123aa7fb82b88abc1e03dd3587.tar.gz -> usbguard-20190808-pegtl.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=2098a5186fcdbfeba00ed7ee390397a1
diff --git a/metadata/md5-cache/sys-apps/util-linux-2.36.2-r1 b/metadata/md5-cache/sys-apps/util-linux-2.36.2-r1
index 4798130..d548ebe 100644
--- a/metadata/md5-cache/sys-apps/util-linux-2.36.2-r1
+++ b/metadata/md5-cache/sys-apps/util-linux-2.36.2-r1
@@ -12,5 +12,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=https://www.kernel.org/pub/linux/utils/util-linux/v2.36/util-linux-2.36.2.tar.xz
-_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pam	3f746974e1cc47cabe3bd488c08cdc8e	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	usr-ldscript	766f0a506b45f02361ad1b8ca205b7e1
+_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	pam	3f746974e1cc47cabe3bd488c08cdc8e	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	usr-ldscript	766f0a506b45f02361ad1b8ca205b7e1
 _md5_=7ebeb703c715f23e3c9d63e6fe7036ab
diff --git a/metadata/md5-cache/sys-auth/nss-mdns-0.13 b/metadata/md5-cache/sys-auth/nss-mdns-0.13
index 795c372..99ee614 100644
--- a/metadata/md5-cache/sys-auth/nss-mdns-0.13
+++ b/metadata/md5-cache/sys-auth/nss-mdns-0.13
@@ -9,5 +9,5 @@
 RDEPEND=>=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
 SLOT=0
 SRC_URI=https://github.com/lathiat/nss-mdns/releases/download/v0.13/nss-mdns-0.13.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=dd95b38f9a81f230388aa9855698abdf
diff --git a/metadata/md5-cache/sys-auth/nss-mdns-0.13-r1 b/metadata/md5-cache/sys-auth/nss-mdns-0.13-r1
index 795c372..99ee614 100644
--- a/metadata/md5-cache/sys-auth/nss-mdns-0.13-r1
+++ b/metadata/md5-cache/sys-auth/nss-mdns-0.13-r1
@@ -9,5 +9,5 @@
 RDEPEND=>=net-dns/avahi-0.6.31-r2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
 SLOT=0
 SRC_URI=https://github.com/lathiat/nss-mdns/releases/download/v0.13/nss-mdns-0.13.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=dd95b38f9a81f230388aa9855698abdf
diff --git a/metadata/md5-cache/sys-auth/pam_pwdfile-0.99-r2 b/metadata/md5-cache/sys-auth/pam_pwdfile-0.99-r2
index 8b3d808..634985d 100644
--- a/metadata/md5-cache/sys-auth/pam_pwdfile-0.99-r2
+++ b/metadata/md5-cache/sys-auth/pam_pwdfile-0.99-r2
@@ -7,5 +7,5 @@
 LICENSE=GPL-2
 SLOT=0
 SRC_URI=http://cpbotha.net/files/pam_pwdfile/pam_pwdfile-0.99.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	pam	3f746974e1cc47cabe3bd488c08cdc8e	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	pam	3f746974e1cc47cabe3bd488c08cdc8e	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=afecafbff862444ed93179b5943a3cbb
diff --git a/metadata/md5-cache/sys-block/open-iscsi-2.0.873-r1 b/metadata/md5-cache/sys-block/open-iscsi-2.0.873-r1
index f9d4577..baa8a72 100644
--- a/metadata/md5-cache/sys-block/open-iscsi-2.0.873-r1
+++ b/metadata/md5-cache/sys-block/open-iscsi-2.0.873-r1
@@ -9,5 +9,5 @@
 RDEPEND=slp? ( net-libs/openslp ) virtual/udev sys-apps/util-linux chromeos-base/chromeos-init
 SLOT=0
 SRC_URI=http://www.open-iscsi.org/bits/open-iscsi-2.0-873.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
 _md5_=074b6c3f989e244c3a8984f5926c1140
diff --git a/metadata/md5-cache/sys-block/open-iscsi-2.0.873-r2 b/metadata/md5-cache/sys-block/open-iscsi-2.0.873-r2
index f9d4577..baa8a72 100644
--- a/metadata/md5-cache/sys-block/open-iscsi-2.0.873-r2
+++ b/metadata/md5-cache/sys-block/open-iscsi-2.0.873-r2
@@ -9,5 +9,5 @@
 RDEPEND=slp? ( net-libs/openslp ) virtual/udev sys-apps/util-linux chromeos-base/chromeos-init
 SLOT=0
 SRC_URI=http://www.open-iscsi.org/bits/open-iscsi-2.0-873.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
 _md5_=074b6c3f989e244c3a8984f5926c1140
diff --git a/metadata/md5-cache/sys-block/parted-3.1-r4 b/metadata/md5-cache/sys-block/parted-3.1-r4
index 8957cad..1fb119f 100644
--- a/metadata/md5-cache/sys-block/parted-3.1-r4
+++ b/metadata/md5-cache/sys-block/parted-3.1-r4
@@ -10,5 +10,5 @@
 RDEPEND=>=sys-fs/e2fsprogs-1.27 >=sys-libs/ncurses-5.2 nls? ( >=sys-devel/gettext-0.12.1-r2 ) readline? ( >=sys-libs/readline-5.2 ) selinux? ( sys-libs/libselinux ) device-mapper? ( || ( >=sys-fs/lvm2-2.02.45 sys-fs/device-mapper ) )
 SLOT=0
 SRC_URI=mirror://gnu/parted/parted-3.1.tar.xz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=76c2a2f3b39fcb4bdbb1154d89c7020c
diff --git a/metadata/md5-cache/sys-boot/bootstub-1.0-r15 b/metadata/md5-cache/sys-boot/bootstub-1.0-r15
index 3803bb0..fe2ff95 100644
--- a/metadata/md5-cache/sys-boot/bootstub-1.0-r15
+++ b/metadata/md5-cache/sys-boot/bootstub-1.0-r15
@@ -8,5 +8,5 @@
 LICENSE=GPL-3
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=3b24f31d667c430714c3f56cb008e88a
diff --git a/metadata/md5-cache/sys-boot/bootstub-9999 b/metadata/md5-cache/sys-boot/bootstub-9999
index 55ef4e0..09ceba1 100644
--- a/metadata/md5-cache/sys-boot/bootstub-9999
+++ b/metadata/md5-cache/sys-boot/bootstub-9999
@@ -8,5 +8,5 @@
 LICENSE=GPL-3
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=09210bfe93e58855a6b5033a72533c54
diff --git a/metadata/md5-cache/sys-boot/chromeos-bmpblk-1.0.1-r301 b/metadata/md5-cache/sys-boot/chromeos-bmpblk-1.0.1-r301
deleted file mode 100644
index e2460e5..0000000
--- a/metadata/md5-cache/sys-boot/chromeos-bmpblk-1.0.1-r301
+++ /dev/null
@@ -1,12 +0,0 @@
-BDEPEND=|| ( dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) dev-vcs/git
-DEFINED_PHASES=compile info install prepare setup unpack
-DESCRIPTION=Chrome OS Firmware Bitmap Block
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/bmpblk/
-IUSE=detachable diag_payload +minidiag physical_presence_power physical_presence_recovery cros_host cros_workon_tree_adc125e63a2cf7b47603a336a8390afa9374aede board_use_ambassador board_use_asurada board_use_atlas board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_brya board_use_buddy board_use_butterfly board_use_candy board_use_chell board_use_cherry board_use_cid board_use_clapper board_use_cranky board_use_daisy board_use_daisy_snow board_use_daisy_spring board_use_daisy_skate board_use_dedede board_use_deltaur board_use_dragonegg board_use_drallion board_use_endeavour board_use_enguarde board_use_expresso board_use_eve board_use_falco board_use_fizz board_use_flapjack board_use_glados board_use_glimmer board_use_gnawty board_use_grunt board_use_guado board_use_hatch board_use_jacuzzi board_use_kalista board_use_keeby board_use_kevin board_use_kip board_use_kukui board_use_lars board_use_leon board_use_link board_use_lulu board_use_lumpy board_use_mccloud board_use_meowth board_use_monroe board_use_mushu board_use_nami board_use_nautilus board_use_ninja board_use_nocturne board_use_nyan board_use_nyan_big board_use_octopus board_use_orco board_use_palkia board_use_panther board_use_parrot board_use_peach_pi board_use_peach_pit board_use_peppy board_use_poppy board_use_puff board_use_quawks board_use_rammus board_use_reks board_use_rikku board_use_sarien board_use_scarlet board_use_soraka board_use_squawks board_use_stout board_use_strongbad board_use_stumpy board_use_sumo board_use_swanky board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_veyron_brain board_use_veyron_danger board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_minnie board_use_veyron_pinky board_use_veyron_romy board_use_volteer board_use_winky board_use_wolf board_use_zako board_use_zoombini board_use_zork cros_host unibuild
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-SLOT=0/1.0.1-r301
-_eclasses_=cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4ad95ec054c61444bf127513f86d0183
diff --git a/metadata/md5-cache/sys-boot/chromeos-bmpblk-1.0.1-r311 b/metadata/md5-cache/sys-boot/chromeos-bmpblk-1.0.1-r311
new file mode 100644
index 0000000..fd7bc0a
--- /dev/null
+++ b/metadata/md5-cache/sys-boot/chromeos-bmpblk-1.0.1-r311
@@ -0,0 +1,14 @@
+BDEPEND=|| ( dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) dev-vcs/git
+DEFINED_PHASES=compile info install prepare setup unpack
+DEPEND=chromeos-base/chromeos-config:=
+DESCRIPTION=Chrome OS Firmware Bitmap Block
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/bmpblk/
+IUSE=detachable physical_presence_power physical_presence_recovery unibuild cros_host cros_workon_tree_9df5aa30d080574443e113e214ff27dbf43b35ce
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+REQUIRED_USE=unibuild
+SLOT=0/1.0.1-r311
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=45d2f516d82dfa336ecba449853b64b4
diff --git a/metadata/md5-cache/sys-boot/chromeos-bmpblk-9999 b/metadata/md5-cache/sys-boot/chromeos-bmpblk-9999
index 6126609..8921f75 100644
--- a/metadata/md5-cache/sys-boot/chromeos-bmpblk-9999
+++ b/metadata/md5-cache/sys-boot/chromeos-bmpblk-9999
@@ -1,12 +1,14 @@
 BDEPEND=|| ( dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) dev-vcs/git
 DEFINED_PHASES=compile info install prepare setup unpack
+DEPEND=chromeos-base/chromeos-config:=
 DESCRIPTION=Chrome OS Firmware Bitmap Block
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/bmpblk/
-IUSE=detachable diag_payload +minidiag physical_presence_power physical_presence_recovery cros_host cros_workon_tree_ board_use_ambassador board_use_asurada board_use_atlas board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_brya board_use_buddy board_use_butterfly board_use_candy board_use_chell board_use_cherry board_use_cid board_use_clapper board_use_cranky board_use_daisy board_use_daisy_snow board_use_daisy_spring board_use_daisy_skate board_use_dedede board_use_deltaur board_use_dragonegg board_use_drallion board_use_endeavour board_use_enguarde board_use_expresso board_use_eve board_use_falco board_use_fizz board_use_flapjack board_use_glados board_use_glimmer board_use_gnawty board_use_grunt board_use_guado board_use_hatch board_use_jacuzzi board_use_kalista board_use_keeby board_use_kevin board_use_kip board_use_kukui board_use_lars board_use_leon board_use_link board_use_lulu board_use_lumpy board_use_mccloud board_use_meowth board_use_monroe board_use_mushu board_use_nami board_use_nautilus board_use_ninja board_use_nocturne board_use_nyan board_use_nyan_big board_use_octopus board_use_orco board_use_palkia board_use_panther board_use_parrot board_use_peach_pi board_use_peach_pit board_use_peppy board_use_poppy board_use_puff board_use_quawks board_use_rammus board_use_reks board_use_rikku board_use_sarien board_use_scarlet board_use_soraka board_use_squawks board_use_stout board_use_strongbad board_use_stumpy board_use_sumo board_use_swanky board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_veyron_brain board_use_veyron_danger board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_minnie board_use_veyron_pinky board_use_veyron_romy board_use_volteer board_use_winky board_use_wolf board_use_zako board_use_zoombini board_use_zork cros_host unibuild
+IUSE=detachable physical_presence_power physical_presence_recovery unibuild cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live
+REQUIRED_USE=unibuild
 SLOT=0/9999
-_eclasses_=cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3421f0328291e35601e7073a17b1033a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0e07ff4a1895ff6602464effdab85eff
diff --git a/metadata/md5-cache/sys-boot/chromeos-bootimage-0.0.4-r2 b/metadata/md5-cache/sys-boot/chromeos-bootimage-0.0.4-r2
deleted file mode 100644
index c0d7cd2..0000000
--- a/metadata/md5-cache/sys-boot/chromeos-bootimage-0.0.4-r2
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=chromeos-base/vboot_reference dev-vcs/git
-DEFINED_PHASES=compile info install setup unpack
-DEPEND=sys-boot/coreboot:= depthcharge? ( sys-boot/depthcharge:= ) bmpblk? ( sys-boot/chromeos-bmpblk:= ) tianocore? ( sys-boot/edk2:= ) seabios? ( sys-boot/chromeos-seabios:= ) unibuild? ( chromeos-base/chromeos-config:= ) u-boot? ( sys-boot/u-boot:= ) cros_ec? ( chromeos-base/chromeos-ec:= ) zephyr_ec? ( chromeos-base/chromeos-zephyr:= ) pd_sync? ( chromeos-base/chromeos-ec:= )
-DESCRIPTION=ChromeOS firmware image builder
-EAPI=7
-HOMEPAGE=http://www.chromium.org
-IUSE=diag_payload seabios wilco_ec zephyr_ec fsp unibuild u-boot tianocore cros_ec pd_sync +bmpblk ec_ro_sync +depthcharge cros-debug cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=952797e9c6b70f3572d3295ae59eb78b
diff --git a/metadata/md5-cache/sys-boot/chromeos-bootimage-0.0.4-r7 b/metadata/md5-cache/sys-boot/chromeos-bootimage-0.0.4-r7
new file mode 100644
index 0000000..7fa1bd1
--- /dev/null
+++ b/metadata/md5-cache/sys-boot/chromeos-bootimage-0.0.4-r7
@@ -0,0 +1,15 @@
+BDEPEND=chromeos-base/vboot_reference chromeos-base/chromeos-config-host:= dev-vcs/git
+DEFINED_PHASES=compile info install setup unpack
+DEPEND=sys-boot/coreboot:= depthcharge? ( sys-boot/depthcharge:= ) bmpblk? ( sys-boot/chromeos-bmpblk:= ) tianocore? ( sys-boot/edk2:= ) seabios? ( sys-boot/chromeos-seabios:= ) chromeos-base/chromeos-config:= u-boot? ( sys-boot/u-boot:= ) cros_ec? ( chromeos-base/chromeos-ec:= ) zephyr_ec? ( chromeos-base/chromeos-zephyr:= ) pd_sync? ( chromeos-base/chromeos-ec:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+DESCRIPTION=ChromeOS firmware image builder
+EAPI=7
+HOMEPAGE=http://www.chromium.org
+IUSE=seabios wilco_ec zephyr_ec fsp unibuild u-boot tianocore cros_ec pd_sync +bmpblk ec_ro_sync +depthcharge payload-align-64 +payload-compress-lzma payload-compress-lz4 cros-debug has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=sys-boot/coreboot:= depthcharge? ( sys-boot/depthcharge:= ) bmpblk? ( sys-boot/chromeos-bmpblk:= ) tianocore? ( sys-boot/edk2:= ) seabios? ( sys-boot/chromeos-seabios:= ) chromeos-base/chromeos-config:= u-boot? ( sys-boot/u-boot:= ) cros_ec? ( chromeos-base/chromeos-ec:= ) zephyr_ec? ( chromeos-base/chromeos-zephyr:= ) pd_sync? ( chromeos-base/chromeos-ec:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+REQUIRED_USE=unibuild
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=2e864d8a8fa629ca02e8d83462b18d73
diff --git a/metadata/md5-cache/sys-boot/chromeos-bootimage-9999 b/metadata/md5-cache/sys-boot/chromeos-bootimage-9999
index 7ddf047..2bfed71 100644
--- a/metadata/md5-cache/sys-boot/chromeos-bootimage-9999
+++ b/metadata/md5-cache/sys-boot/chromeos-bootimage-9999
@@ -1,13 +1,15 @@
-BDEPEND=chromeos-base/vboot_reference dev-vcs/git
+BDEPEND=chromeos-base/vboot_reference chromeos-base/chromeos-config-host:= dev-vcs/git
 DEFINED_PHASES=compile info install setup unpack
-DEPEND=sys-boot/coreboot:= depthcharge? ( sys-boot/depthcharge:= ) bmpblk? ( sys-boot/chromeos-bmpblk:= ) tianocore? ( sys-boot/edk2:= ) seabios? ( sys-boot/chromeos-seabios:= ) unibuild? ( chromeos-base/chromeos-config:= ) u-boot? ( sys-boot/u-boot:= ) cros_ec? ( chromeos-base/chromeos-ec:= ) zephyr_ec? ( chromeos-base/chromeos-zephyr:= ) pd_sync? ( chromeos-base/chromeos-ec:= )
+DEPEND=sys-boot/coreboot:= depthcharge? ( sys-boot/depthcharge:= ) bmpblk? ( sys-boot/chromeos-bmpblk:= ) tianocore? ( sys-boot/edk2:= ) seabios? ( sys-boot/chromeos-seabios:= ) chromeos-base/chromeos-config:= u-boot? ( sys-boot/u-boot:= ) cros_ec? ( chromeos-base/chromeos-ec:= ) zephyr_ec? ( chromeos-base/chromeos-zephyr:= ) pd_sync? ( chromeos-base/chromeos-ec:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
 DESCRIPTION=ChromeOS firmware image builder
 EAPI=7
 HOMEPAGE=http://www.chromium.org
-IUSE=diag_payload seabios wilco_ec zephyr_ec fsp unibuild u-boot tianocore cros_ec pd_sync +bmpblk ec_ro_sync +depthcharge cros-debug cros_host cros_workon_tree_
+IUSE=seabios wilco_ec zephyr_ec fsp unibuild u-boot tianocore cros_ec pd_sync +bmpblk ec_ro_sync +depthcharge payload-align-64 +payload-compress-lzma payload-compress-lz4 cros-debug has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
+RDEPEND=sys-boot/coreboot:= depthcharge? ( sys-boot/depthcharge:= ) bmpblk? ( sys-boot/chromeos-bmpblk:= ) tianocore? ( sys-boot/edk2:= ) seabios? ( sys-boot/chromeos-seabios:= ) chromeos-base/chromeos-config:= u-boot? ( sys-boot/u-boot:= ) cros_ec? ( chromeos-base/chromeos-ec:= ) zephyr_ec? ( chromeos-base/chromeos-zephyr:= ) pd_sync? ( chromeos-base/chromeos-ec:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+REQUIRED_USE=unibuild
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=17ce66722a1430816b0f213772f3de0e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-debug	d2750757005d6a444f8eb12bb9eb9944	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=02d44916cc901d49eaa438d50b7a5116
diff --git a/metadata/md5-cache/sys-boot/chromeos-seabios-0.0.1-r88 b/metadata/md5-cache/sys-boot/chromeos-seabios-0.0.1-r88
index 1d692ff..1c2d066 100644
--- a/metadata/md5-cache/sys-boot/chromeos-seabios-0.0.1-r88
+++ b/metadata/md5-cache/sys-boot/chromeos-seabios-0.0.1-r88
@@ -8,5 +8,5 @@
 LICENSE=GPL-2
 PROPERTIES=live
 SLOT=0/0.0.1-r88
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=f411830117b5bcf389767a6a5e26a71a
diff --git a/metadata/md5-cache/sys-boot/chromeos-seabios-9999 b/metadata/md5-cache/sys-boot/chromeos-seabios-9999
index ede1936..d618fde 100644
--- a/metadata/md5-cache/sys-boot/chromeos-seabios-9999
+++ b/metadata/md5-cache/sys-boot/chromeos-seabios-9999
@@ -8,5 +8,5 @@
 LICENSE=GPL-2
 PROPERTIES=live
 SLOT=0/9999
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=b79e86b4dc6274be0a7928c36559cfd0
diff --git a/metadata/md5-cache/sys-boot/coreboot-0.0.1-r4457 b/metadata/md5-cache/sys-boot/coreboot-0.0.1-r4457
deleted file mode 100644
index f88c672..0000000
--- a/metadata/md5-cache/sys-boot/coreboot-0.0.1-r4457
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install prepare setup unpack
-DEPEND=mtc? ( sys-boot/mtc:= ) coreboot-private-files-board? ( sys-boot/coreboot-private-files-board:= ) coreboot-private-files-chipset? ( sys-boot/coreboot-private-files-chipset:= ) virtual/coreboot-private-files bmpblk? ( sys-boot/chromeos-bmpblk:= ) chipset_stoneyridge? ( sys-boot/amd-firmware:= ) chipset_picasso? ( >=sys-boot/amd-picasso-fsp-0.0.2:= ) chipset_cezanne? ( sys-boot/amd-cezanne-fsp:= ) unibuild? ( chromeos-base/chromeos-config:= )
-DESCRIPTION=coreboot firmware
-EAPI=7
-HOMEPAGE=http://www.coreboot.org
-IUSE=em100-mode fsp memmaps mocktpm quiet-cb rmt vmx mtc mma +bmpblk quiet unibuild verbose amd_cpu coreboot-sdk chipset_stoneyridge chipset_picasso chipset_cezanne coreboot-private-files-board coreboot-private-files-chipset board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild cros_host cros_workon_tree_0039a6731a3018302bff712c112c2464f8192e79_d6d71de60d72b25dfa814f04f38f6e1f874fe88e_3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c_27bb5107ef257116a45f756ad185272ae385faf9_71e64b41a2f07ca30f4745b73c3964bc3c59dcf2_45d22a8711f85c4310c0c2121d3dc8a72793d375_c0433b88f972fa26dded401be022c1c026cd644e
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RESTRICT=strip
-SLOT=0/0.0.1-r4457
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=f60128604e9bfef77b56a10ebcdb51ae
diff --git a/metadata/md5-cache/sys-boot/coreboot-0.0.1-r4660 b/metadata/md5-cache/sys-boot/coreboot-0.0.1-r4660
new file mode 100644
index 0000000..fe7ae47
--- /dev/null
+++ b/metadata/md5-cache/sys-boot/coreboot-0.0.1-r4660
@@ -0,0 +1,16 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:=
+DEFINED_PHASES=compile info install prepare setup unpack
+DEPEND=coreboot-private-files-board? ( sys-boot/coreboot-private-files-board:= ) coreboot-private-files-chipset? ( sys-boot/coreboot-private-files-chipset:= ) virtual/coreboot-private-files bmpblk? ( sys-boot/chromeos-bmpblk:= ) chipset_stoneyridge? ( sys-boot/amd-firmware:= ) chipset_picasso? ( >=sys-boot/amd-picasso-fsp-0.0.2:= ) chipset_cezanne? ( sys-boot/amd-cezanne-fsp:= ) chromeos-base/chromeos-config:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+DESCRIPTION=coreboot firmware
+EAPI=7
+HOMEPAGE=http://www.coreboot.org
+IUSE=em100-mode fsp memmaps mocktpm quiet-cb rmt vmx mma +bmpblk quiet unibuild verbose amd_cpu coreboot-sdk chipset_stoneyridge chipset_picasso chipset_cezanne coreboot-private-files-board coreboot-private-files-chipset cros_host cros_workon_tree_562dfaab06163893d44f62dfb625009f71617aee_7f944eabb92969a61888993e551ddf829ad9c304_63abdfe41a1746dfd5452f030b2ff4646a15ff76_b85e072a7f764c4f43d084e3aa20e13bf24ab8aa_5396cf00ee808f67c4e1f81487a9c420d01a6452_45d22a8711f85c4310c0c2121d3dc8a72793d375_c0433b88f972fa26dded401be022c1c026cd644e has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=coreboot-private-files-board? ( sys-boot/coreboot-private-files-board:= ) coreboot-private-files-chipset? ( sys-boot/coreboot-private-files-chipset:= ) virtual/coreboot-private-files bmpblk? ( sys-boot/chromeos-bmpblk:= ) chipset_stoneyridge? ( sys-boot/amd-firmware:= ) chipset_picasso? ( >=sys-boot/amd-picasso-fsp-0.0.2:= ) chipset_cezanne? ( sys-boot/amd-cezanne-fsp:= ) chromeos-base/chromeos-config:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+REQUIRED_USE=unibuild
+RESTRICT=strip
+SLOT=0/0.0.1-r4660
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c3956f5ac253030198bd59c90d52d5f6
diff --git a/metadata/md5-cache/sys-boot/coreboot-9999 b/metadata/md5-cache/sys-boot/coreboot-9999
index a7e1962..fe4721f 100644
--- a/metadata/md5-cache/sys-boot/coreboot-9999
+++ b/metadata/md5-cache/sys-boot/coreboot-9999
@@ -1,14 +1,16 @@
-BDEPEND=dev-vcs/git
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:=
 DEFINED_PHASES=compile info install prepare setup unpack
-DEPEND=mtc? ( sys-boot/mtc:= ) coreboot-private-files-board? ( sys-boot/coreboot-private-files-board:= ) coreboot-private-files-chipset? ( sys-boot/coreboot-private-files-chipset:= ) virtual/coreboot-private-files bmpblk? ( sys-boot/chromeos-bmpblk:= ) chipset_stoneyridge? ( sys-boot/amd-firmware:= ) chipset_picasso? ( >=sys-boot/amd-picasso-fsp-0.0.2:= ) chipset_cezanne? ( sys-boot/amd-cezanne-fsp:= ) unibuild? ( chromeos-base/chromeos-config:= )
+DEPEND=coreboot-private-files-board? ( sys-boot/coreboot-private-files-board:= ) coreboot-private-files-chipset? ( sys-boot/coreboot-private-files-chipset:= ) virtual/coreboot-private-files bmpblk? ( sys-boot/chromeos-bmpblk:= ) chipset_stoneyridge? ( sys-boot/amd-firmware:= ) chipset_picasso? ( >=sys-boot/amd-picasso-fsp-0.0.2:= ) chipset_cezanne? ( sys-boot/amd-cezanne-fsp:= ) chromeos-base/chromeos-config:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
 DESCRIPTION=coreboot firmware
 EAPI=7
 HOMEPAGE=http://www.coreboot.org
-IUSE=em100-mode fsp memmaps mocktpm quiet-cb rmt vmx mtc mma +bmpblk quiet unibuild verbose amd_cpu coreboot-sdk chipset_stoneyridge chipset_picasso chipset_cezanne coreboot-private-files-board coreboot-private-files-chipset board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild cros_host cros_workon_tree_
+IUSE=em100-mode fsp memmaps mocktpm quiet-cb rmt vmx mma +bmpblk quiet unibuild verbose amd_cpu coreboot-sdk chipset_stoneyridge chipset_picasso chipset_cezanne coreboot-private-files-board coreboot-private-files-chipset cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
+RDEPEND=coreboot-private-files-board? ( sys-boot/coreboot-private-files-board:= ) coreboot-private-files-chipset? ( sys-boot/coreboot-private-files-chipset:= ) virtual/coreboot-private-files bmpblk? ( sys-boot/chromeos-bmpblk:= ) chipset_stoneyridge? ( sys-boot/amd-firmware:= ) chipset_picasso? ( >=sys-boot/amd-picasso-fsp-0.0.2:= ) chipset_cezanne? ( sys-boot/amd-cezanne-fsp:= ) chromeos-base/chromeos-config:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+REQUIRED_USE=unibuild
 RESTRICT=strip
 SLOT=0/9999
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6ee6fe57b1404c5c4e14a027a95935a1
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=c6c21ac899230edddc69d86dca736948
diff --git a/metadata/md5-cache/sys-boot/depthcharge-0.0.1-r3288 b/metadata/md5-cache/sys-boot/depthcharge-0.0.1-r3288
deleted file mode 100644
index b74bfd0..0000000
--- a/metadata/md5-cache/sys-boot/depthcharge-0.0.1-r3288
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-python/kconfiglib dev-vcs/git
-DEFINED_PHASES=compile info install setup unpack
-DEPEND=sys-boot/coreboot:= chromeos-base/chromeos-ec-headers:= sys-boot/libpayload:= unibuild? ( chromeos-base/chromeos-config:= )
-DESCRIPTION=coreboot's depthcharge payload
-EAPI=7
-HOMEPAGE=http://www.coreboot.org
-IUSE=detachable diag_payload fwconsole mocktpm pd_sync unibuild verbose debug +minidiag physical_presence_power physical_presence_recovery cros_host cros_workon_tree_da095db43f621ecd0e59572cc290ac6f892753fc_3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-SLOT=0/0.0.1-r3288
-_eclasses_=cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b81473a8a7e8327d414499e02d8e10c4
diff --git a/metadata/md5-cache/sys-boot/depthcharge-0.0.1-r3453 b/metadata/md5-cache/sys-boot/depthcharge-0.0.1-r3453
new file mode 100644
index 0000000..0d2a48d
--- /dev/null
+++ b/metadata/md5-cache/sys-boot/depthcharge-0.0.1-r3453
@@ -0,0 +1,15 @@
+BDEPEND=dev-python/kconfiglib dev-vcs/git chromeos-base/chromeos-config-host:=
+DEFINED_PHASES=compile info install setup unpack
+DEPEND=sys-boot/coreboot:= chromeos-base/chromeos-ec-headers:= sys-boot/libpayload:= chromeos-base/chromeos-config:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+DESCRIPTION=coreboot's depthcharge payload
+EAPI=7
+HOMEPAGE=http://www.coreboot.org
+IUSE=detachable fwconsole mocktpm pd_sync unibuild verbose debug physical_presence_power physical_presence_recovery cros_host cros_workon_tree_d3d1417229734b694fbf97adaf1a8ea5788e6b41_63abdfe41a1746dfd5452f030b2ff4646a15ff76 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=sys-boot/coreboot:= chromeos-base/chromeos-ec-headers:= sys-boot/libpayload:= chromeos-base/chromeos-config:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+REQUIRED_USE=unibuild
+SLOT=0/0.0.1-r3453
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=743ca764b97af2fbeafbb97038a7f598
diff --git a/metadata/md5-cache/sys-boot/depthcharge-9999 b/metadata/md5-cache/sys-boot/depthcharge-9999
index 68948b0..32cf150 100644
--- a/metadata/md5-cache/sys-boot/depthcharge-9999
+++ b/metadata/md5-cache/sys-boot/depthcharge-9999
@@ -1,13 +1,15 @@
-BDEPEND=dev-python/kconfiglib dev-vcs/git
+BDEPEND=dev-python/kconfiglib dev-vcs/git chromeos-base/chromeos-config-host:=
 DEFINED_PHASES=compile info install setup unpack
-DEPEND=sys-boot/coreboot:= chromeos-base/chromeos-ec-headers:= sys-boot/libpayload:= unibuild? ( chromeos-base/chromeos-config:= )
+DEPEND=sys-boot/coreboot:= chromeos-base/chromeos-ec-headers:= sys-boot/libpayload:= chromeos-base/chromeos-config:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
 DESCRIPTION=coreboot's depthcharge payload
 EAPI=7
 HOMEPAGE=http://www.coreboot.org
-IUSE=detachable diag_payload fwconsole mocktpm pd_sync unibuild verbose debug +minidiag physical_presence_power physical_presence_recovery cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild
+IUSE=detachable fwconsole mocktpm pd_sync unibuild verbose debug physical_presence_power physical_presence_recovery cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
+RDEPEND=sys-boot/coreboot:= chromeos-base/chromeos-ec-headers:= sys-boot/libpayload:= chromeos-base/chromeos-config:= has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+REQUIRED_USE=unibuild
 SLOT=0/9999
-_eclasses_=cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=823b9a2c6bd912ceeaf2181edd946b4c
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a9f57c8b4bed256e0b7505453fac00e9
diff --git a/metadata/md5-cache/sys-boot/edk2-0.0.1-r36 b/metadata/md5-cache/sys-boot/edk2-0.0.1-r36
index d7c1b44..1f5b468 100644
--- a/metadata/md5-cache/sys-boot/edk2-0.0.1-r36
+++ b/metadata/md5-cache/sys-boot/edk2-0.0.1-r36
@@ -9,5 +9,5 @@
 PROPERTIES=live
 SLOT=0/0.0.1-r36
 SRC_URI=https://www.openssl.org/source/openssl-1.1.0e.tar.gz
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=cf6da632749b0dea100a34bd60edcaa2
diff --git a/metadata/md5-cache/sys-boot/edk2-9999 b/metadata/md5-cache/sys-boot/edk2-9999
index fc72255..02611a9 100644
--- a/metadata/md5-cache/sys-boot/edk2-9999
+++ b/metadata/md5-cache/sys-boot/edk2-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 SLOT=0/9999
 SRC_URI=https://www.openssl.org/source/openssl-1.1.0e.tar.gz
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=b4df054c018d5a9bfc86bbf7d15e669d
diff --git a/metadata/md5-cache/sys-boot/grub-2.02 b/metadata/md5-cache/sys-boot/grub-2.02
deleted file mode 100644
index 3a139fe..0000000
--- a/metadata/md5-cache/sys-boot/grub-2.02
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=compile configure install prepare
-DESCRIPTION=GNU GRUB 2 boot loader
-EAPI=5
-HOMEPAGE=http://www.gnu.org/software/grub/
-KEYWORDS=-* amd64
-LICENSE=GPL-3
-SLOT=0
-SRC_URI=ftp://ftp.gnu.org/gnu/grub/grub-2.02.tar.xz
-_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=bd2b1f9954fc9d39ba0cae97c2cb5b7a
diff --git a/metadata/md5-cache/sys-boot/grub-2.02-r7 b/metadata/md5-cache/sys-boot/grub-2.02-r7
deleted file mode 100644
index 3a139fe..0000000
--- a/metadata/md5-cache/sys-boot/grub-2.02-r7
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=compile configure install prepare
-DESCRIPTION=GNU GRUB 2 boot loader
-EAPI=5
-HOMEPAGE=http://www.gnu.org/software/grub/
-KEYWORDS=-* amd64
-LICENSE=GPL-3
-SLOT=0
-SRC_URI=ftp://ftp.gnu.org/gnu/grub/grub-2.02.tar.xz
-_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=bd2b1f9954fc9d39ba0cae97c2cb5b7a
diff --git a/metadata/md5-cache/sys-boot/grub-2.06 b/metadata/md5-cache/sys-boot/grub-2.06
new file mode 100644
index 0000000..ece5830
--- /dev/null
+++ b/metadata/md5-cache/sys-boot/grub-2.06
@@ -0,0 +1,10 @@
+DEFINED_PHASES=compile configure install prepare
+DESCRIPTION=GNU GRUB 2 boot loader
+EAPI=5
+HOMEPAGE=http://www.gnu.org/software/grub/
+KEYWORDS=-* amd64
+LICENSE=GPL-3
+SLOT=0
+SRC_URI=ftp://ftp.gnu.org/gnu/grub/grub-2.06.tar.xz
+_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=5e043e030e6787331e82a2cffaaaea50
diff --git a/metadata/md5-cache/sys-boot/grub-2.06-r2 b/metadata/md5-cache/sys-boot/grub-2.06-r2
new file mode 100644
index 0000000..ece5830
--- /dev/null
+++ b/metadata/md5-cache/sys-boot/grub-2.06-r2
@@ -0,0 +1,10 @@
+DEFINED_PHASES=compile configure install prepare
+DESCRIPTION=GNU GRUB 2 boot loader
+EAPI=5
+HOMEPAGE=http://www.gnu.org/software/grub/
+KEYWORDS=-* amd64
+LICENSE=GPL-3
+SLOT=0
+SRC_URI=ftp://ftp.gnu.org/gnu/grub/grub-2.06.tar.xz
+_eclasses_=bash-completion-r1	47a7402d95930413ce25ba8d857339bb	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_md5_=5e043e030e6787331e82a2cffaaaea50
diff --git a/metadata/md5-cache/sys-boot/libpayload-0.0.1-r4178 b/metadata/md5-cache/sys-boot/libpayload-0.0.1-r4178
deleted file mode 100644
index c9dbc73..0000000
--- a/metadata/md5-cache/sys-boot/libpayload-0.0.1-r4178
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install setup unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= )
-DESCRIPTION=coreboot's libpayload library
-EAPI=7
-HOMEPAGE=http://www.coreboot.org
-IUSE=coreboot-sdk unibuild verbose cros_host cros_workon_tree_b5a9076b809964e8c39cac28e54a2e8ad99169c8_705ef94c6144066c732bc3b44a3fed2e79debfd5_3866d5128a8888a5cbbf8e2ea4a546537e16d2ce board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-SLOT=0/0.0.1-r4178
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e82814ef3b2346187e9e9b00550f2d82
diff --git a/metadata/md5-cache/sys-boot/libpayload-0.0.1-r4197 b/metadata/md5-cache/sys-boot/libpayload-0.0.1-r4197
new file mode 100644
index 0000000..3df0bce
--- /dev/null
+++ b/metadata/md5-cache/sys-boot/libpayload-0.0.1-r4197
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile configure info install setup unpack
+DEPEND=chromeos-base/chromeos-config:=
+DESCRIPTION=coreboot's libpayload library
+EAPI=7
+HOMEPAGE=http://www.coreboot.org
+IUSE=coreboot-sdk unibuild verbose cros_host cros_workon_tree_7214ebe25e04a80e92de5ca2640c95af554aa83b_51a5dcd34b034f2cfac29061083859525130cf08_bacdab8734794201bdb8ad183f79bab4051584db
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=chromeos-base/chromeos-config:=
+REQUIRED_USE=unibuild
+SLOT=0/0.0.1-r4197
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=63fbc0ed1fb89b96c5351778fc10c5bf
diff --git a/metadata/md5-cache/sys-boot/libpayload-9999 b/metadata/md5-cache/sys-boot/libpayload-9999
index 50f706f..7d34875 100644
--- a/metadata/md5-cache/sys-boot/libpayload-9999
+++ b/metadata/md5-cache/sys-boot/libpayload-9999
@@ -1,13 +1,15 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=compile configure info install setup unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= )
+DEPEND=chromeos-base/chromeos-config:=
 DESCRIPTION=coreboot's libpayload library
 EAPI=7
 HOMEPAGE=http://www.coreboot.org
-IUSE=coreboot-sdk unibuild verbose cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild
+IUSE=coreboot-sdk unibuild verbose cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
+RDEPEND=chromeos-base/chromeos-config:=
+REQUIRED_USE=unibuild
 SLOT=0/9999
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=352d40d67d1fdd5144e2e05b9cd61a78
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=02e639e3950ca36e953f00a5cf7387c7
diff --git a/metadata/md5-cache/sys-boot/syslinux-6.04_pre1-r3 b/metadata/md5-cache/sys-boot/syslinux-6.04_pre1-r3
new file mode 100644
index 0000000..496f393
--- /dev/null
+++ b/metadata/md5-cache/sys-boot/syslinux-6.04_pre1-r3
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile install prepare
+DEPEND=sys-fs/mtools dev-perl/Crypt-PasswdMD5 dev-perl/Digest-SHA1 dev-lang/nasm sys-apps/util-linux:= >=sys-boot/gnu-efi-3.0u virtual/os-headers
+DESCRIPTION=SYSLINUX, PXELINUX, ISOLINUX, EXTLINUX and MEMDISK bootloaders
+EAPI=7
+HOMEPAGE=https://www.syslinux.org/
+IUSE=custom-cflags
+KEYWORDS=-* amd64 x86
+LICENSE=GPL-2
+RDEPEND=sys-fs/mtools dev-perl/Crypt-PasswdMD5 dev-perl/Digest-SHA1
+SLOT=0
+SRC_URI=https://www.kernel.org/pub/linux/utils/boot/syslinux/Testing/6.04/syslinux-6.04-pre1.tar.xz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=88bbde65047bcea7b42d141a505008e6
diff --git a/metadata/md5-cache/sys-boot/u-boot-2021.07-r2879 b/metadata/md5-cache/sys-boot/u-boot-2021.07-r2879
deleted file mode 100644
index d3df29e..0000000
--- a/metadata/md5-cache/sys-boot/u-boot-2021.07-r2879
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile configure info install setup unpack
-DEPEND=sandbox? ( media-libs/libsdl:= )
-DESCRIPTION=Das U-Boot boot loader
-EAPI=7
-HOMEPAGE=http://www.denx.de/wiki/U-Boot
-IUSE=dev generated_cros_config sandbox unibuild vboot werror cros_host cros_workon_tree_de4f0c255aa3b757f43b4dd4f7a60f08ead04f30_3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=sandbox? ( media-libs/libsdl:= ) chromeos-base/u-boot-scripts !!sys-boot/chromeos-u-boot unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) )
-SLOT=0/2021.07-r2879
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e962543e988fa1ff1c658d64463684cb
diff --git a/metadata/md5-cache/sys-boot/u-boot-2021.07-r2934 b/metadata/md5-cache/sys-boot/u-boot-2021.07-r2934
new file mode 100644
index 0000000..b50b33a
--- /dev/null
+++ b/metadata/md5-cache/sys-boot/u-boot-2021.07-r2934
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:=
+DEFINED_PHASES=compile configure info install setup unpack
+DEPEND=sandbox? ( media-libs/libsdl:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+DESCRIPTION=Das U-Boot boot loader
+EAPI=7
+HOMEPAGE=http://www.denx.de/wiki/U-Boot
+IUSE=dev sandbox vboot werror cros_host cros_workon_tree_de4f0c255aa3b757f43b4dd4f7a60f08ead04f30_63abdfe41a1746dfd5452f030b2ff4646a15ff76 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=sandbox? ( media-libs/libsdl:= ) chromeos-base/u-boot-scripts !!sys-boot/chromeos-u-boot has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+SLOT=0/2021.07-r2934
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=713c027ddc877d0a5bda403036f52104
diff --git a/metadata/md5-cache/sys-boot/u-boot-9999 b/metadata/md5-cache/sys-boot/u-boot-9999
index f18b8f3..fb16368 100644
--- a/metadata/md5-cache/sys-boot/u-boot-9999
+++ b/metadata/md5-cache/sys-boot/u-boot-9999
@@ -1,14 +1,14 @@
-BDEPEND=dev-vcs/git
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:=
 DEFINED_PHASES=compile configure info install setup unpack
-DEPEND=sandbox? ( media-libs/libsdl:= )
+DEPEND=sandbox? ( media-libs/libsdl:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
 DESCRIPTION=Das U-Boot boot loader
 EAPI=7
 HOMEPAGE=http://www.denx.de/wiki/U-Boot
-IUSE=dev generated_cros_config sandbox unibuild vboot werror cros_host cros_workon_tree_
+IUSE=dev sandbox vboot werror cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
-RDEPEND=sandbox? ( media-libs/libsdl:= ) chromeos-base/u-boot-scripts !!sys-boot/chromeos-u-boot unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) )
+RDEPEND=sandbox? ( media-libs/libsdl:= ) chromeos-base/u-boot-scripts !!sys-boot/chromeos-u-boot has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=0f5634d7606d2cd93e630c41d6727436
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ad415655b1ae0d85ef6aebf7c8c192aa
diff --git a/metadata/md5-cache/sys-devel/arc-build-0.0.3 b/metadata/md5-cache/sys-devel/arc-build-0.0.3
index 25e0238..900197c 100644
--- a/metadata/md5-cache/sys-devel/arc-build-0.0.3
+++ b/metadata/md5-cache/sys-devel/arc-build-0.0.3
@@ -6,5 +6,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0
-_eclasses_=arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=71ba9f5e6090fb4d6bb966d22642d185
diff --git a/metadata/md5-cache/sys-devel/arc-build-0.0.3-r18 b/metadata/md5-cache/sys-devel/arc-build-0.0.3-r18
index 25e0238..900197c 100644
--- a/metadata/md5-cache/sys-devel/arc-build-0.0.3-r18
+++ b/metadata/md5-cache/sys-devel/arc-build-0.0.3-r18
@@ -6,5 +6,5 @@
 LICENSE=BSD-Google
 REQUIRED_USE=cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 SLOT=0
-_eclasses_=arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=71ba9f5e6090fb4d6bb966d22642d185
diff --git a/metadata/md5-cache/sys-devel/arc-llvm-12.0.1 b/metadata/md5-cache/sys-devel/arc-llvm-12.0.1
new file mode 100644
index 0000000..fc9b10a
--- /dev/null
+++ b/metadata/md5-cache/sys-devel/arc-llvm-12.0.1
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install prepare setup test
+DEPEND=dev-util/ninja >=dev-util/cmake-3.7.0-r1 sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+DESCRIPTION=Low Level Virtual Machine
+EAPI=6
+HOMEPAGE=https://llvm.org/
+IUSE=debug doc exegesis libedit libffi ncurses test xar xml kernel_Darwin llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
+KEYWORDS=*
+LICENSE=UoI-NCSA rc BSD public-domain llvm_targets_ARM? ( LLVM-Grant )
+RDEPEND=!sys-devel/arc-llvm:0 !<sys-devel/arc-llvm-12
+REQUIRED_USE=|| ( llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
+RESTRICT=!test? ( test )
+SLOT=12
+SRC_URI=https://github.com/llvm/llvm-project/archive/llvmorg-12.0.1.tar.gz !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/llvm-12.0.1-manpages.tar.bz2 )
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=69d961df9f2d2750f7168a3c0b15d48d
diff --git a/metadata/md5-cache/sys-devel/arc-llvm-12.0.1-r2 b/metadata/md5-cache/sys-devel/arc-llvm-12.0.1-r2
new file mode 100644
index 0000000..fc9b10a
--- /dev/null
+++ b/metadata/md5-cache/sys-devel/arc-llvm-12.0.1-r2
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install prepare setup test
+DEPEND=dev-util/ninja >=dev-util/cmake-3.7.0-r1 sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+DESCRIPTION=Low Level Virtual Machine
+EAPI=6
+HOMEPAGE=https://llvm.org/
+IUSE=debug doc exegesis libedit libffi ncurses test xar xml kernel_Darwin llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
+KEYWORDS=*
+LICENSE=UoI-NCSA rc BSD public-domain llvm_targets_ARM? ( LLVM-Grant )
+RDEPEND=!sys-devel/arc-llvm:0 !<sys-devel/arc-llvm-12
+REQUIRED_USE=|| ( llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
+RESTRICT=!test? ( test )
+SLOT=12
+SRC_URI=https://github.com/llvm/llvm-project/archive/llvmorg-12.0.1.tar.gz !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/llvm-12.0.1-manpages.tar.bz2 )
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=69d961df9f2d2750f7168a3c0b15d48d
diff --git a/metadata/md5-cache/sys-devel/arc-llvm-9.0.0 b/metadata/md5-cache/sys-devel/arc-llvm-9.0.0
deleted file mode 100644
index 2c2eb9b..0000000
--- a/metadata/md5-cache/sys-devel/arc-llvm-9.0.0
+++ /dev/null
@@ -1,15 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test
-DEPEND=dev-util/ninja >=dev-util/cmake-3.7.0-r1 sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=Low Level Virtual Machine
-EAPI=6
-HOMEPAGE=https://llvm.org/
-IUSE=debug doc exegesis libedit libffi ncurses test xar xml kernel_Darwin llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
-KEYWORDS=*
-LICENSE=UoI-NCSA rc BSD public-domain llvm_targets_ARM? ( LLVM-Grant )
-RDEPEND=!sys-devel/arc-llvm:0 !<sys-devel/arc-llvm-9
-REQUIRED_USE=|| ( llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
-RESTRICT=!test? ( test )
-SLOT=9
-SRC_URI=https://github.com/llvm/llvm-project/releases/download/llvmorg-9.0.0/llvm-9.0.0.src.tar.xz !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/llvm-9.0.0-manpages.tar.bz2 )
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=d32bb9f2cc171c4f5300f1c4153eea4c
diff --git a/metadata/md5-cache/sys-devel/arc-llvm-9.0.0-r2 b/metadata/md5-cache/sys-devel/arc-llvm-9.0.0-r2
deleted file mode 100644
index 2c2eb9b..0000000
--- a/metadata/md5-cache/sys-devel/arc-llvm-9.0.0-r2
+++ /dev/null
@@ -1,15 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test
-DEPEND=dev-util/ninja >=dev-util/cmake-3.7.0-r1 sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=Low Level Virtual Machine
-EAPI=6
-HOMEPAGE=https://llvm.org/
-IUSE=debug doc exegesis libedit libffi ncurses test xar xml kernel_Darwin llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
-KEYWORDS=*
-LICENSE=UoI-NCSA rc BSD public-domain llvm_targets_ARM? ( LLVM-Grant )
-RDEPEND=!sys-devel/arc-llvm:0 !<sys-devel/arc-llvm-9
-REQUIRED_USE=|| ( llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore ) cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
-RESTRICT=!test? ( test )
-SLOT=9
-SRC_URI=https://github.com/llvm/llvm-project/releases/download/llvmorg-9.0.0/llvm-9.0.0.src.tar.xz !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/llvm-9.0.0-manpages.tar.bz2 )
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=d32bb9f2cc171c4f5300f1c4153eea4c
diff --git a/metadata/md5-cache/sys-devel/autofdo-0.21 b/metadata/md5-cache/sys-devel/autofdo-0.21
index f5fefa6..c0ce3ed 100644
--- a/metadata/md5-cache/sys-devel/autofdo-0.21
+++ b/metadata/md5-cache/sys-devel/autofdo-0.21
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/openssl:0= dev-libs/protobuf:= dev-libs/libffi sys-devel/llvm sys-libs/zlib
 SLOT=0
 SRC_URI=https://github.com/google/autofdo/archive/0.21.tar.xz -> autofdo-0.21.tar.xz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=f34d15d56a6f436d26492a95ccf6c59d
diff --git a/metadata/md5-cache/sys-devel/autofdo-0.21-r1 b/metadata/md5-cache/sys-devel/autofdo-0.21-r1
index f5fefa6..c0ce3ed 100644
--- a/metadata/md5-cache/sys-devel/autofdo-0.21-r1
+++ b/metadata/md5-cache/sys-devel/autofdo-0.21-r1
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/openssl:0= dev-libs/protobuf:= dev-libs/libffi sys-devel/llvm sys-libs/zlib
 SLOT=0
 SRC_URI=https://github.com/google/autofdo/archive/0.21.tar.xz -> autofdo-0.21.tar.xz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
 _md5_=f34d15d56a6f436d26492a95ccf6c59d
diff --git a/metadata/md5-cache/sys-devel/binutils-2.35.2 b/metadata/md5-cache/sys-devel/binutils-2.35.2
deleted file mode 100644
index 00cc08b..0000000
--- a/metadata/md5-cache/sys-devel/binutils-2.35.2
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=>=app-portage/elt-patches-20170815
-DEFINED_PHASES=compile configure install postinst postrm prepare test
-DEPEND=>=sys-devel/binutils-config-3 test? ( dev-util/dejagnu ) nls? ( sys-devel/gettext ) sys-devel/flex sys-devel/gnuconfig
-DESCRIPTION=Tools necessary to build programs
-EAPI=7
-HOMEPAGE=http://sources.redhat.com/binutils/
-IUSE=cet cros_host hardened multitarget nls test vanilla
-KEYWORDS=*
-LICENSE=|| ( GPL-3 LGPL-3 )
-RDEPEND=>=sys-devel/binutils-config-3
-RESTRICT=!test? ( test )
-SLOT=0
-SRC_URI=mirror://gnu/binutils/binutils-2.35.2.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/binutils-2.35.2-patches-1.tar.xz
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnuconfig	9200bfc8e0184357abfb86a08edd4fc3	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4b33711621bb63be767c7fe40d39391f
diff --git a/metadata/md5-cache/sys-devel/binutils-2.35.2-r3 b/metadata/md5-cache/sys-devel/binutils-2.35.2-r3
deleted file mode 100644
index 00cc08b..0000000
--- a/metadata/md5-cache/sys-devel/binutils-2.35.2-r3
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=>=app-portage/elt-patches-20170815
-DEFINED_PHASES=compile configure install postinst postrm prepare test
-DEPEND=>=sys-devel/binutils-config-3 test? ( dev-util/dejagnu ) nls? ( sys-devel/gettext ) sys-devel/flex sys-devel/gnuconfig
-DESCRIPTION=Tools necessary to build programs
-EAPI=7
-HOMEPAGE=http://sources.redhat.com/binutils/
-IUSE=cet cros_host hardened multitarget nls test vanilla
-KEYWORDS=*
-LICENSE=|| ( GPL-3 LGPL-3 )
-RDEPEND=>=sys-devel/binutils-config-3
-RESTRICT=!test? ( test )
-SLOT=0
-SRC_URI=mirror://gnu/binutils/binutils-2.35.2.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/binutils-2.35.2-patches-1.tar.xz
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnuconfig	9200bfc8e0184357abfb86a08edd4fc3	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4b33711621bb63be767c7fe40d39391f
diff --git a/metadata/md5-cache/sys-devel/binutils-2.36.1 b/metadata/md5-cache/sys-devel/binutils-2.36.1
new file mode 100644
index 0000000..781843e
--- /dev/null
+++ b/metadata/md5-cache/sys-devel/binutils-2.36.1
@@ -0,0 +1,15 @@
+BDEPEND=>=app-portage/elt-patches-20170815
+DEFINED_PHASES=compile configure install postinst postrm prepare test
+DEPEND=>=sys-devel/binutils-config-3 test? ( dev-util/dejagnu ) nls? ( sys-devel/gettext ) sys-devel/flex sys-devel/gnuconfig
+DESCRIPTION=Tools necessary to build programs
+EAPI=7
+HOMEPAGE=http://sources.redhat.com/binutils/
+IUSE=cet cros_host hardened multitarget nls test vanilla
+KEYWORDS=*
+LICENSE=|| ( GPL-3 LGPL-3 )
+RDEPEND=>=sys-devel/binutils-config-3
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=mirror://gnu/binutils/binutils-2.36.1.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/binutils-2.36.1-patches-3.tar.xz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnuconfig	9200bfc8e0184357abfb86a08edd4fc3	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9aaf34e3c6f01e26b31889e70fb90e59
diff --git a/metadata/md5-cache/sys-devel/binutils-2.36.1-r2 b/metadata/md5-cache/sys-devel/binutils-2.36.1-r2
new file mode 100644
index 0000000..781843e
--- /dev/null
+++ b/metadata/md5-cache/sys-devel/binutils-2.36.1-r2
@@ -0,0 +1,15 @@
+BDEPEND=>=app-portage/elt-patches-20170815
+DEFINED_PHASES=compile configure install postinst postrm prepare test
+DEPEND=>=sys-devel/binutils-config-3 test? ( dev-util/dejagnu ) nls? ( sys-devel/gettext ) sys-devel/flex sys-devel/gnuconfig
+DESCRIPTION=Tools necessary to build programs
+EAPI=7
+HOMEPAGE=http://sources.redhat.com/binutils/
+IUSE=cet cros_host hardened multitarget nls test vanilla
+KEYWORDS=*
+LICENSE=|| ( GPL-3 LGPL-3 )
+RDEPEND=>=sys-devel/binutils-config-3
+RESTRICT=!test? ( test )
+SLOT=0
+SRC_URI=mirror://gnu/binutils/binutils-2.36.1.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/binutils-2.36.1-patches-3.tar.xz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnuconfig	9200bfc8e0184357abfb86a08edd4fc3	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=9aaf34e3c6f01e26b31889e70fb90e59
diff --git a/metadata/md5-cache/sys-devel/gcc-10.2.0 b/metadata/md5-cache/sys-devel/gcc-10.2.0
index 15d5dd6..7865623 100644
--- a/metadata/md5-cache/sys-devel/gcc-10.2.0
+++ b/metadata/md5-cache/sys-devel/gcc-10.2.0
@@ -11,5 +11,5 @@
 RESTRICT=strip
 SLOT=x86_64-pc-linux-gnu
 SRC_URI=mirror://gnu/gcc/gcc-10.2.0/gcc-10.2.0.tar.xz https://dev.gentoo.org/~slyfox/distfiles/gcc-10.2.0-patches-6.tar.bz2
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b4aea5c97a9270cb76acf3e484efd42e
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=dd043d4626c1d0bc15c282c728bc6a61
diff --git a/metadata/md5-cache/sys-devel/gcc-10.2.0-r15 b/metadata/md5-cache/sys-devel/gcc-10.2.0-r15
deleted file mode 100644
index 15d5dd6..0000000
--- a/metadata/md5-cache/sys-devel/gcc-10.2.0-r15
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=sys-devel/binutils
-DEFINED_PHASES=compile configure install postinst postrm prepare
-DEPEND=>=sys-libs/zlib-1.1.4 >=sys-devel/gcc-config-1.6 virtual/libiconv >=dev-libs/gmp-4.3.2 >=dev-libs/mpc-0.8.1 >=dev-libs/mpfr-2.4.2 graphite? ( >=dev-libs/cloog-0.18.0 >=dev-libs/isl-0.11.1 ) test? ( >=dev-util/dejagnu-1.4.4 >=sys-devel/autogen-5.5.4 ) >=sys-apps/texinfo-4.8 >=sys-devel/bison-1.875
-DESCRIPTION=The GNU Compiler Collection. Includes C/C++, java compilers, pie+ssp extensions, Haj Ten Brugge runtime bounds checking. This Compiler is based off of Crosstoolv14.
-EAPI=7
-IUSE=cet gcc_repo gcj git_gcc go graphite gtk hardened hardfp llvm-next llvm-tot mounted_gcc multilib nls cxx openmp test tests +thumb upstream_gcc vanilla vtable_verify +wrapper_ccache
-KEYWORDS=*
-LICENSE=GPL-3 LGPL-3 libgcc FDL-1.2
-PDEPEND=>=sys-devel/gcc-config-2.3
-RDEPEND=>=sys-libs/zlib-1.1.4 >=sys-devel/gcc-config-1.6 virtual/libiconv >=dev-libs/gmp-4.3.2 >=dev-libs/mpc-0.8.1 >=dev-libs/mpfr-2.4.2 graphite? ( >=dev-libs/cloog-0.18.0 >=dev-libs/isl-0.11.1 )
-RESTRICT=strip
-SLOT=x86_64-pc-linux-gnu
-SRC_URI=mirror://gnu/gcc/gcc-10.2.0/gcc-10.2.0.tar.xz https://dev.gentoo.org/~slyfox/distfiles/gcc-10.2.0-patches-6.tar.bz2
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b4aea5c97a9270cb76acf3e484efd42e
diff --git a/metadata/md5-cache/sys-devel/gcc-10.2.0-r23 b/metadata/md5-cache/sys-devel/gcc-10.2.0-r23
new file mode 100644
index 0000000..7865623
--- /dev/null
+++ b/metadata/md5-cache/sys-devel/gcc-10.2.0-r23
@@ -0,0 +1,15 @@
+BDEPEND=sys-devel/binutils
+DEFINED_PHASES=compile configure install postinst postrm prepare
+DEPEND=>=sys-libs/zlib-1.1.4 >=sys-devel/gcc-config-1.6 virtual/libiconv >=dev-libs/gmp-4.3.2 >=dev-libs/mpc-0.8.1 >=dev-libs/mpfr-2.4.2 graphite? ( >=dev-libs/cloog-0.18.0 >=dev-libs/isl-0.11.1 ) test? ( >=dev-util/dejagnu-1.4.4 >=sys-devel/autogen-5.5.4 ) >=sys-apps/texinfo-4.8 >=sys-devel/bison-1.875
+DESCRIPTION=The GNU Compiler Collection. Includes C/C++, java compilers, pie+ssp extensions, Haj Ten Brugge runtime bounds checking. This Compiler is based off of Crosstoolv14.
+EAPI=7
+IUSE=cet gcc_repo gcj git_gcc go graphite gtk hardened hardfp llvm-next llvm-tot mounted_gcc multilib nls cxx openmp test tests +thumb upstream_gcc vanilla vtable_verify +wrapper_ccache
+KEYWORDS=*
+LICENSE=GPL-3 LGPL-3 libgcc FDL-1.2
+PDEPEND=>=sys-devel/gcc-config-2.3
+RDEPEND=>=sys-libs/zlib-1.1.4 >=sys-devel/gcc-config-1.6 virtual/libiconv >=dev-libs/gmp-4.3.2 >=dev-libs/mpc-0.8.1 >=dev-libs/mpfr-2.4.2 graphite? ( >=dev-libs/cloog-0.18.0 >=dev-libs/isl-0.11.1 )
+RESTRICT=strip
+SLOT=x86_64-pc-linux-gnu
+SRC_URI=mirror://gnu/gcc/gcc-10.2.0/gcc-10.2.0.tar.xz https://dev.gentoo.org/~slyfox/distfiles/gcc-10.2.0-patches-6.tar.bz2
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=dd043d4626c1d0bc15c282c728bc6a61
diff --git a/metadata/md5-cache/sys-devel/gdb-9.2.20200923 b/metadata/md5-cache/sys-devel/gdb-9.2.20200923
index b512bf1..640c006 100644
--- a/metadata/md5-cache/sys-devel/gdb-9.2.20200923
+++ b/metadata/md5-cache/sys-devel/gdb-9.2.20200923
@@ -10,5 +10,5 @@
 REQUIRED_USE=python? ( ^^ ( python_single_target_python2_7 python_single_target_python3_6 ) ) || ( client server )
 SLOT=0
 SRC_URI=https://android.googlesource.com/toolchain/gdb/+archive/234e271db36e2a8be022f7a4bbabfa1623a6ae9a.tar.gz -> gdb-9.2.20200923.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
 _md5_=712204dc60992ef1c996ec4ca4f391e9
diff --git a/metadata/md5-cache/sys-devel/gdb-9.2.20200923-r5 b/metadata/md5-cache/sys-devel/gdb-9.2.20200923-r5
index b512bf1..640c006 100644
--- a/metadata/md5-cache/sys-devel/gdb-9.2.20200923-r5
+++ b/metadata/md5-cache/sys-devel/gdb-9.2.20200923-r5
@@ -10,5 +10,5 @@
 REQUIRED_USE=python? ( ^^ ( python_single_target_python2_7 python_single_target_python3_6 ) ) || ( client server )
 SLOT=0
 SRC_URI=https://android.googlesource.com/toolchain/gdb/+archive/234e271db36e2a8be022f7a4bbabfa1623a6ae9a.tar.gz -> gdb-9.2.20200923.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
 _md5_=712204dc60992ef1c996ec4ca4f391e9
diff --git a/metadata/md5-cache/sys-devel/grit-i18n-20200210 b/metadata/md5-cache/sys-devel/grit-i18n-20200210
index 3836cf3..8cead44 100644
--- a/metadata/md5-cache/sys-devel/grit-i18n-20200210
+++ b/metadata/md5-cache/sys-devel/grit-i18n-20200210
@@ -10,5 +10,5 @@
 REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 )
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/grit-i18n-73253b76da834152a7cfa76f6b4208694febf4d5.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=53ee8dbc526c1154267d1868019ca597
diff --git a/metadata/md5-cache/sys-devel/grit-i18n-20200210-r1 b/metadata/md5-cache/sys-devel/grit-i18n-20200210-r1
index 3836cf3..8cead44 100644
--- a/metadata/md5-cache/sys-devel/grit-i18n-20200210-r1
+++ b/metadata/md5-cache/sys-devel/grit-i18n-20200210-r1
@@ -10,5 +10,5 @@
 REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 )
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/grit-i18n-73253b76da834152a7cfa76f6b4208694febf4d5.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=53ee8dbc526c1154267d1868019ca597
diff --git a/metadata/md5-cache/sys-devel/libtool-2.4.6-r6 b/metadata/md5-cache/sys-devel/libtool-2.4.6-r6
index 43a3871..624d27d 100644
--- a/metadata/md5-cache/sys-devel/libtool-2.4.6-r6
+++ b/metadata/md5-cache/sys-devel/libtool-2.4.6-r6
@@ -9,5 +9,5 @@
 RDEPEND=sys-devel/gnuconfig >=sys-devel/autoconf-2.69 >=sys-devel/automake-1.13 dev-libs/libltdl:0 !<sys-apps/sandbox-2.10-r4
 SLOT=2
 SRC_URI=mirror://gnu/libtool/libtool-2.4.6.tar.xz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	epunt-cxx	e99babeaa7d98c1caaa6a61a79902210	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	prefix	e51c7882b7b721e54e684f7eb143cbfe	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	unpacker	04385b0f181c42fa9c18ec0e31729d1f	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	epunt-cxx	e99babeaa7d98c1caaa6a61a79902210	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	prefix	e51c7882b7b721e54e684f7eb143cbfe	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	unpacker	04385b0f181c42fa9c18ec0e31729d1f	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=30ca85529f337526bf2f9056ea5c7a44
diff --git a/metadata/md5-cache/sys-devel/llvm-12.0.1 b/metadata/md5-cache/sys-devel/llvm-12.0.1
new file mode 100644
index 0000000..51757fe
--- /dev/null
+++ b/metadata/md5-cache/sys-devel/llvm-12.0.1
@@ -0,0 +1,16 @@
+DEFINED_PHASES=compile configure install prepare setup test
+DEPEND=sys-libs/zlib:0= exegesis? ( dev-libs/libpfm:= ) gold? ( >=sys-devel/binutils-2.31.1-r4:*[plugins] ) libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xar? ( app-arch/xar ) xml? ( dev-libs/libxml2:2=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) gold? ( sys-libs/binutils-libs ) dev-util/ninja >=dev-util/cmake-3.7.0-r1
+DESCRIPTION=Low Level Virtual Machine
+EAPI=6
+HOMEPAGE=https://llvm.org/
+IUSE=debug doc exegesis gold libedit +libffi ncurses test tools xar xml kernel_Darwin llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=UoI-NCSA rc BSD public-domain llvm_targets_ARM? ( LLVM-Grant )
+PDEPEND=sys-devel/llvm-common gold? ( sys-devel/llvmgold )
+RDEPEND=sys-libs/zlib:0= exegesis? ( dev-libs/libpfm:= ) gold? ( >=sys-devel/binutils-2.31.1-r4:*[plugins] ) libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xar? ( app-arch/xar ) xml? ( dev-libs/libxml2:2=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !<sys-devel/llvm-12
+REQUIRED_USE=|| ( llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore )
+RESTRICT=!test? ( test )
+SLOT=12
+SRC_URI=https://github.com/llvm/llvm-project/archive/llvmorg-12.0.1.tar.gz !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/llvm-12.0.1-manpages.tar.bz2 )
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=6ce8bd1b31b88a987e6fdba0ad5138d7
diff --git a/metadata/md5-cache/sys-devel/llvm-12.0.1-r2 b/metadata/md5-cache/sys-devel/llvm-12.0.1-r2
new file mode 100644
index 0000000..51757fe
--- /dev/null
+++ b/metadata/md5-cache/sys-devel/llvm-12.0.1-r2
@@ -0,0 +1,16 @@
+DEFINED_PHASES=compile configure install prepare setup test
+DEPEND=sys-libs/zlib:0= exegesis? ( dev-libs/libpfm:= ) gold? ( >=sys-devel/binutils-2.31.1-r4:*[plugins] ) libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xar? ( app-arch/xar ) xml? ( dev-libs/libxml2:2=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) gold? ( sys-libs/binutils-libs ) dev-util/ninja >=dev-util/cmake-3.7.0-r1
+DESCRIPTION=Low Level Virtual Machine
+EAPI=6
+HOMEPAGE=https://llvm.org/
+IUSE=debug doc exegesis gold libedit +libffi ncurses test tools xar xml kernel_Darwin llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=UoI-NCSA rc BSD public-domain llvm_targets_ARM? ( LLVM-Grant )
+PDEPEND=sys-devel/llvm-common gold? ( sys-devel/llvmgold )
+RDEPEND=sys-libs/zlib:0= exegesis? ( dev-libs/libpfm:= ) gold? ( >=sys-devel/binutils-2.31.1-r4:*[plugins] ) libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xar? ( app-arch/xar ) xml? ( dev-libs/libxml2:2=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !<sys-devel/llvm-12
+REQUIRED_USE=|| ( llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore )
+RESTRICT=!test? ( test )
+SLOT=12
+SRC_URI=https://github.com/llvm/llvm-project/archive/llvmorg-12.0.1.tar.gz !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/llvm-12.0.1-manpages.tar.bz2 )
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=6ce8bd1b31b88a987e6fdba0ad5138d7
diff --git a/metadata/md5-cache/sys-devel/llvm-12.0_pre422132_p20210405 b/metadata/md5-cache/sys-devel/llvm-12.0_pre422132_p20210405
deleted file mode 100644
index bc3284d..0000000
--- a/metadata/md5-cache/sys-devel/llvm-12.0_pre422132_p20210405
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=dev-lang/perl libffi? ( virtual/pkgconfig ) sys-devel/gnuconfig || ( ( dev-lang/python:3.9 dev-python/sphinx[python_targets_python3_9(-),python_single_target_python3_9(+)] doc? ( dev-python/recommonmark[python_targets_python3_9(-),python_single_target_python3_9(+)] ) ) ( dev-lang/python:3.8 dev-python/sphinx[python_targets_python3_8(-),python_single_target_python3_8(+)] doc? ( dev-python/recommonmark[python_targets_python3_8(-),python_single_target_python3_8(+)] ) ) ( dev-lang/python:3.7 dev-python/sphinx[python_targets_python3_7(-),python_single_target_python3_7(+)] doc? ( dev-python/recommonmark[python_targets_python3_7(-),python_single_target_python3_7(+)] ) ) ( dev-lang/python:3.6 dev-python/sphinx[python_targets_python3_6(-),python_single_target_python3_6(+)] doc? ( dev-python/recommonmark[python_targets_python3_6(-),python_single_target_python3_6(+)] ) ) ) dev-util/ninja dev-util/cmake >=dev-vcs/git-1.8.2.1[curl]
-DEFINED_PHASES=compile configure install postinst postrm prepare setup test unpack
-DEPEND=sys-libs/zlib:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=virtual/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ocaml? ( >=dev-lang/ocaml-4.00.0:0= dev-ml/findlib dev-ml/ocaml-ctypes ) sys-devel/binutils ocaml? ( test? ( dev-ml/ounit ) )
-DESCRIPTION=Low Level Virtual Machine
-EAPI=7
-HOMEPAGE=http://llvm.org/
-IUSE=debug +default-compiler-rt +default-libcxx doc libedit +libffi +llvm-crt llvm-next llvm_pgo_generate +llvm_pgo_use llvm-next_pgo_use llvm-tot multitarget ncurses ocaml test +thinlto xml video_cards_radeon abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=-* amd64
-LICENSE=UoI-NCSA
-PROPERTIES=live
-RDEPEND=sys-libs/zlib:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=virtual/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ocaml? ( >=dev-lang/ocaml-4.00.0:0= dev-ml/findlib dev-ml/ocaml-ctypes ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r2 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) !<=sys-devel/llvm-8.0_pre !sys-devel/lld !sys-devel/clang
-REQUIRED_USE=llvm_pgo_generate? ( !llvm_pgo_use )
-SLOT=8
-SRC_URI=!llvm-tot? ( !llvm-next? ( llvm_pgo_use? ( gs://chromeos-localmirror/distfiles/llvm-profdata-cd442157cff4aad209ae532cbf031abbe10bc1df.tar.xz ) ) llvm-next? ( llvm-next_pgo_use? ( gs://chromeos-localmirror/distfiles/llvm-profdata-cd442157cff4aad209ae532cbf031abbe10bc1df.tar.xz ) ) )
-_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	pax-utils	3551398d6ede2b572568832730cc2a45	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=2bec9fb76df4273431e645646135c896
diff --git a/metadata/md5-cache/sys-devel/llvm-12.0_pre422132_p20210405-r9 b/metadata/md5-cache/sys-devel/llvm-12.0_pre422132_p20210405-r9
deleted file mode 100644
index bc3284d..0000000
--- a/metadata/md5-cache/sys-devel/llvm-12.0_pre422132_p20210405-r9
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=dev-lang/perl libffi? ( virtual/pkgconfig ) sys-devel/gnuconfig || ( ( dev-lang/python:3.9 dev-python/sphinx[python_targets_python3_9(-),python_single_target_python3_9(+)] doc? ( dev-python/recommonmark[python_targets_python3_9(-),python_single_target_python3_9(+)] ) ) ( dev-lang/python:3.8 dev-python/sphinx[python_targets_python3_8(-),python_single_target_python3_8(+)] doc? ( dev-python/recommonmark[python_targets_python3_8(-),python_single_target_python3_8(+)] ) ) ( dev-lang/python:3.7 dev-python/sphinx[python_targets_python3_7(-),python_single_target_python3_7(+)] doc? ( dev-python/recommonmark[python_targets_python3_7(-),python_single_target_python3_7(+)] ) ) ( dev-lang/python:3.6 dev-python/sphinx[python_targets_python3_6(-),python_single_target_python3_6(+)] doc? ( dev-python/recommonmark[python_targets_python3_6(-),python_single_target_python3_6(+)] ) ) ) dev-util/ninja dev-util/cmake >=dev-vcs/git-1.8.2.1[curl]
-DEFINED_PHASES=compile configure install postinst postrm prepare setup test unpack
-DEPEND=sys-libs/zlib:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=virtual/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ocaml? ( >=dev-lang/ocaml-4.00.0:0= dev-ml/findlib dev-ml/ocaml-ctypes ) sys-devel/binutils ocaml? ( test? ( dev-ml/ounit ) )
-DESCRIPTION=Low Level Virtual Machine
-EAPI=7
-HOMEPAGE=http://llvm.org/
-IUSE=debug +default-compiler-rt +default-libcxx doc libedit +libffi +llvm-crt llvm-next llvm_pgo_generate +llvm_pgo_use llvm-next_pgo_use llvm-tot multitarget ncurses ocaml test +thinlto xml video_cards_radeon abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=-* amd64
-LICENSE=UoI-NCSA
-PROPERTIES=live
-RDEPEND=sys-libs/zlib:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=virtual/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ocaml? ( >=dev-lang/ocaml-4.00.0:0= dev-ml/findlib dev-ml/ocaml-ctypes ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r2 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) !<=sys-devel/llvm-8.0_pre !sys-devel/lld !sys-devel/clang
-REQUIRED_USE=llvm_pgo_generate? ( !llvm_pgo_use )
-SLOT=8
-SRC_URI=!llvm-tot? ( !llvm-next? ( llvm_pgo_use? ( gs://chromeos-localmirror/distfiles/llvm-profdata-cd442157cff4aad209ae532cbf031abbe10bc1df.tar.xz ) ) llvm-next? ( llvm-next_pgo_use? ( gs://chromeos-localmirror/distfiles/llvm-profdata-cd442157cff4aad209ae532cbf031abbe10bc1df.tar.xz ) ) )
-_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	pax-utils	3551398d6ede2b572568832730cc2a45	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=2bec9fb76df4273431e645646135c896
diff --git a/metadata/md5-cache/sys-devel/llvm-13.0_pre428724_p20210813 b/metadata/md5-cache/sys-devel/llvm-13.0_pre428724_p20210813
new file mode 100644
index 0000000..605babd
--- /dev/null
+++ b/metadata/md5-cache/sys-devel/llvm-13.0_pre428724_p20210813
@@ -0,0 +1,16 @@
+BDEPEND=dev-lang/perl libffi? ( virtual/pkgconfig ) sys-devel/gnuconfig || ( ( dev-lang/python:3.9 dev-python/sphinx[python_targets_python3_9(-),python_single_target_python3_9(+)] doc? ( dev-python/recommonmark[python_targets_python3_9(-),python_single_target_python3_9(+)] ) ) ( dev-lang/python:3.8 dev-python/sphinx[python_targets_python3_8(-),python_single_target_python3_8(+)] doc? ( dev-python/recommonmark[python_targets_python3_8(-),python_single_target_python3_8(+)] ) ) ( dev-lang/python:3.7 dev-python/sphinx[python_targets_python3_7(-),python_single_target_python3_7(+)] doc? ( dev-python/recommonmark[python_targets_python3_7(-),python_single_target_python3_7(+)] ) ) ( dev-lang/python:3.6 dev-python/sphinx[python_targets_python3_6(-),python_single_target_python3_6(+)] doc? ( dev-python/recommonmark[python_targets_python3_6(-),python_single_target_python3_6(+)] ) ) ) dev-util/ninja dev-util/cmake >=dev-vcs/git-1.8.2.1[curl]
+DEFINED_PHASES=compile configure install postinst postrm prepare setup test unpack
+DEPEND=sys-libs/zlib:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=virtual/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ocaml? ( >=dev-lang/ocaml-4.00.0:0= dev-ml/findlib dev-ml/ocaml-ctypes ) sys-devel/binutils ocaml? ( test? ( dev-ml/ounit ) )
+DESCRIPTION=Low Level Virtual Machine
+EAPI=7
+HOMEPAGE=http://llvm.org/
+IUSE=debug +default-compiler-rt +default-libcxx doc libedit +libffi +llvm-crt llvm-next llvm_pgo_generate +llvm_pgo_use llvm-next_pgo_use llvm-tot multitarget ncurses ocaml test +thinlto xml video_cards_radeon abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=-* amd64
+LICENSE=UoI-NCSA
+PROPERTIES=live
+RDEPEND=sys-libs/zlib:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=virtual/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ocaml? ( >=dev-lang/ocaml-4.00.0:0= dev-ml/findlib dev-ml/ocaml-ctypes ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r2 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) !<=sys-devel/llvm-8.0_pre !sys-devel/lld !sys-devel/clang
+REQUIRED_USE=llvm_pgo_generate? ( !llvm_pgo_use )
+SLOT=8
+SRC_URI=!llvm-tot? ( !llvm-next? ( llvm_pgo_use? ( gs://chromeos-localmirror/distfiles/llvm-profdata-9968896cd62a62b11ac61085534dd598c4bd3c60.tar.xz ) ) llvm-next? ( llvm-next_pgo_use? ( gs://chromeos-localmirror/distfiles/llvm-profdata-0fe7531b75e54909a7cb7f7080634ab2053964ad.tar.xz ) ) )
+_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	pax-utils	3551398d6ede2b572568832730cc2a45	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=40e2270e4a04f7d874f0c3a66a7c4efb
diff --git a/metadata/md5-cache/sys-devel/llvm-13.0_pre428724_p20210813-r10 b/metadata/md5-cache/sys-devel/llvm-13.0_pre428724_p20210813-r10
new file mode 100644
index 0000000..605babd
--- /dev/null
+++ b/metadata/md5-cache/sys-devel/llvm-13.0_pre428724_p20210813-r10
@@ -0,0 +1,16 @@
+BDEPEND=dev-lang/perl libffi? ( virtual/pkgconfig ) sys-devel/gnuconfig || ( ( dev-lang/python:3.9 dev-python/sphinx[python_targets_python3_9(-),python_single_target_python3_9(+)] doc? ( dev-python/recommonmark[python_targets_python3_9(-),python_single_target_python3_9(+)] ) ) ( dev-lang/python:3.8 dev-python/sphinx[python_targets_python3_8(-),python_single_target_python3_8(+)] doc? ( dev-python/recommonmark[python_targets_python3_8(-),python_single_target_python3_8(+)] ) ) ( dev-lang/python:3.7 dev-python/sphinx[python_targets_python3_7(-),python_single_target_python3_7(+)] doc? ( dev-python/recommonmark[python_targets_python3_7(-),python_single_target_python3_7(+)] ) ) ( dev-lang/python:3.6 dev-python/sphinx[python_targets_python3_6(-),python_single_target_python3_6(+)] doc? ( dev-python/recommonmark[python_targets_python3_6(-),python_single_target_python3_6(+)] ) ) ) dev-util/ninja dev-util/cmake >=dev-vcs/git-1.8.2.1[curl]
+DEFINED_PHASES=compile configure install postinst postrm prepare setup test unpack
+DEPEND=sys-libs/zlib:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=virtual/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ocaml? ( >=dev-lang/ocaml-4.00.0:0= dev-ml/findlib dev-ml/ocaml-ctypes ) sys-devel/binutils ocaml? ( test? ( dev-ml/ounit ) )
+DESCRIPTION=Low Level Virtual Machine
+EAPI=7
+HOMEPAGE=http://llvm.org/
+IUSE=debug +default-compiler-rt +default-libcxx doc libedit +libffi +llvm-crt llvm-next llvm_pgo_generate +llvm_pgo_use llvm-next_pgo_use llvm-tot multitarget ncurses ocaml test +thinlto xml video_cards_radeon abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=-* amd64
+LICENSE=UoI-NCSA
+PROPERTIES=live
+RDEPEND=sys-libs/zlib:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=virtual/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ocaml? ( >=dev-lang/ocaml-4.00.0:0= dev-ml/findlib dev-ml/ocaml-ctypes ) abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r2 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) !<=sys-devel/llvm-8.0_pre !sys-devel/lld !sys-devel/clang
+REQUIRED_USE=llvm_pgo_generate? ( !llvm_pgo_use )
+SLOT=8
+SRC_URI=!llvm-tot? ( !llvm-next? ( llvm_pgo_use? ( gs://chromeos-localmirror/distfiles/llvm-profdata-9968896cd62a62b11ac61085534dd598c4bd3c60.tar.xz ) ) llvm-next? ( llvm-next_pgo_use? ( gs://chromeos-localmirror/distfiles/llvm-profdata-0fe7531b75e54909a7cb7f7080634ab2053964ad.tar.xz ) ) )
+_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	pax-utils	3551398d6ede2b572568832730cc2a45	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=40e2270e4a04f7d874f0c3a66a7c4efb
diff --git a/metadata/md5-cache/sys-devel/llvm-9.0.0 b/metadata/md5-cache/sys-devel/llvm-9.0.0
deleted file mode 100644
index 89ac26f..0000000
--- a/metadata/md5-cache/sys-devel/llvm-9.0.0
+++ /dev/null
@@ -1,16 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test
-DEPEND=sys-libs/zlib:0= exegesis? ( dev-libs/libpfm:= ) gold? ( || ( >=sys-devel/binutils-2.31.1-r4:*[plugins] <sys-devel/binutils-2.31.1-r4:*[cxx] ) ) libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=virtual/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xar? ( app-arch/xar ) xml? ( dev-libs/libxml2:2=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) dev-lang/perl || ( >=sys-devel/gcc-3.0 >=sys-devel/llvm-3.5 ( >=sys-freebsd/freebsd-lib-9.1-r10 sys-libs/libcxx ) ) kernel_Darwin? ( <sys-libs/libcxx-9.0.0.9999 >=sys-devel/binutils-apple-5.1 ) doc? ( || ( ( dev-lang/python:3.9 dev-python/recommonmark[python_targets_python3_9(-),python_single_target_python3_9(+)] dev-python/sphinx[python_targets_python3_9(-),python_single_target_python3_9(+)] ) ( dev-lang/python:3.8 dev-python/recommonmark[python_targets_python3_8(-),python_single_target_python3_8(+)] dev-python/sphinx[python_targets_python3_8(-),python_single_target_python3_8(+)] ) ( dev-lang/python:3.7 dev-python/recommonmark[python_targets_python3_7(-),python_single_target_python3_7(+)] dev-python/sphinx[python_targets_python3_7(-),python_single_target_python3_7(+)] ) ( dev-lang/python:3.6 dev-python/recommonmark[python_targets_python3_6(-),python_single_target_python3_6(+)] dev-python/sphinx[python_targets_python3_6(-),python_single_target_python3_6(+)] ) ) ) !doc? ( || ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) ) gold? ( sys-libs/binutils-libs ) libffi? ( virtual/pkgconfig ) !!<dev-python/configparser-3.3.0.2 || ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) dev-util/ninja >=dev-util/cmake-3.7.0-r1
-DESCRIPTION=Low Level Virtual Machine
-EAPI=6
-HOMEPAGE=https://llvm.org/
-IUSE=debug doc exegesis gold libedit +libffi ncurses test tools xar xml kernel_Darwin llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=UoI-NCSA rc BSD public-domain llvm_targets_ARM? ( LLVM-Grant )
-PDEPEND=sys-devel/llvm-common gold? ( sys-devel/llvmgold )
-RDEPEND=sys-libs/zlib:0= exegesis? ( dev-libs/libpfm:= ) gold? ( || ( >=sys-devel/binutils-2.31.1-r4:*[plugins] <sys-devel/binutils-2.31.1-r4:*[cxx] ) ) libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=virtual/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xar? ( app-arch/xar ) xml? ( dev-libs/libxml2:2=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !<sys-devel/llvm-9
-REQUIRED_USE=|| ( llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore )
-RESTRICT=!test? ( test )
-SLOT=9
-SRC_URI=https://github.com/llvm/llvm-project/releases/download/llvmorg-9.0.0/llvm-9.0.0.src.tar.xz !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/llvm-9.0.0-manpages.tar.bz2 )
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=4a9693d961063e52a095b798a60cfeb1
diff --git a/metadata/md5-cache/sys-devel/llvm-9.0.0-r4 b/metadata/md5-cache/sys-devel/llvm-9.0.0-r4
deleted file mode 100644
index 89ac26f..0000000
--- a/metadata/md5-cache/sys-devel/llvm-9.0.0-r4
+++ /dev/null
@@ -1,16 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test
-DEPEND=sys-libs/zlib:0= exegesis? ( dev-libs/libpfm:= ) gold? ( || ( >=sys-devel/binutils-2.31.1-r4:*[plugins] <sys-devel/binutils-2.31.1-r4:*[cxx] ) ) libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=virtual/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xar? ( app-arch/xar ) xml? ( dev-libs/libxml2:2=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) dev-lang/perl || ( >=sys-devel/gcc-3.0 >=sys-devel/llvm-3.5 ( >=sys-freebsd/freebsd-lib-9.1-r10 sys-libs/libcxx ) ) kernel_Darwin? ( <sys-libs/libcxx-9.0.0.9999 >=sys-devel/binutils-apple-5.1 ) doc? ( || ( ( dev-lang/python:3.9 dev-python/recommonmark[python_targets_python3_9(-),python_single_target_python3_9(+)] dev-python/sphinx[python_targets_python3_9(-),python_single_target_python3_9(+)] ) ( dev-lang/python:3.8 dev-python/recommonmark[python_targets_python3_8(-),python_single_target_python3_8(+)] dev-python/sphinx[python_targets_python3_8(-),python_single_target_python3_8(+)] ) ( dev-lang/python:3.7 dev-python/recommonmark[python_targets_python3_7(-),python_single_target_python3_7(+)] dev-python/sphinx[python_targets_python3_7(-),python_single_target_python3_7(+)] ) ( dev-lang/python:3.6 dev-python/recommonmark[python_targets_python3_6(-),python_single_target_python3_6(+)] dev-python/sphinx[python_targets_python3_6(-),python_single_target_python3_6(+)] ) ) ) !doc? ( || ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) ) gold? ( sys-libs/binutils-libs ) libffi? ( virtual/pkgconfig ) !!<dev-python/configparser-3.3.0.2 || ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) dev-util/ninja >=dev-util/cmake-3.7.0-r1
-DESCRIPTION=Low Level Virtual Machine
-EAPI=6
-HOMEPAGE=https://llvm.org/
-IUSE=debug doc exegesis gold libedit +libffi ncurses test tools xar xml kernel_Darwin llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=UoI-NCSA rc BSD public-domain llvm_targets_ARM? ( LLVM-Grant )
-PDEPEND=sys-devel/llvm-common gold? ( sys-devel/llvmgold )
-RDEPEND=sys-libs/zlib:0= exegesis? ( dev-libs/libpfm:= ) gold? ( || ( >=sys-devel/binutils-2.31.1-r4:*[plugins] <sys-devel/binutils-2.31.1-r4:*[cxx] ) ) libedit? ( dev-libs/libedit:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libffi? ( >=virtual/libffi-3.0.13-r1:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) xar? ( app-arch/xar ) xml? ( dev-libs/libxml2:2=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !<sys-devel/llvm-9
-REQUIRED_USE=|| ( llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore )
-RESTRICT=!test? ( test )
-SLOT=9
-SRC_URI=https://github.com/llvm/llvm-project/releases/download/llvmorg-9.0.0/llvm-9.0.0.src.tar.xz !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/llvm-9.0.0-manpages.tar.bz2 )
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	pax-utils	3551398d6ede2b572568832730cc2a45	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=4a9693d961063e52a095b798a60cfeb1
diff --git a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-bloonchipper-0.0.1-r48 b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-bloonchipper-0.0.1-r48
deleted file mode 100644
index 9969f67..0000000
--- a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-bloonchipper-0.0.1-r48
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git chromeos-base/chromeos-config-host
-DEFINED_PHASES=compile info install prepare setup test unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files virtual/chromeos-config-bsp
-DESCRIPTION=Chrome OS EC release firmware for bloonchipper.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
-IUSE=cros_host cros_workon_tree_57ec13f9095b7a6d49a429f8d6b1c14c6837344d_679fa8b14bd105ad9959a0f82eaa928d5b18890d_f3d026c790bd3d7121bb96ed2a4932360d698a73 ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_57ec13f9095b7a6d49a429f8d6b1c14c6837344d_679fa8b14bd105ad9959a0f82eaa928d5b18890d_f3d026c790bd3d7121bb96ed2a4932360d698a73 quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
-RESTRICT=binchecksbinchecks strip
-SLOT=0/0.0.1-r48
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	12499835cbfa67cb99a77b6a1e57e313	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	a4d1c4dc442bcc9b1d3b46603cdafbd4	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=d65f63634c006e9a2750c299fb1b8096
diff --git a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-bloonchipper-0.0.1-r55 b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-bloonchipper-0.0.1-r55
new file mode 100644
index 0000000..e500c79
--- /dev/null
+++ b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-bloonchipper-0.0.1-r55
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git chromeos-base/chromeos-config-host:= chromeos-base/chromeos-config-host
+DEFINED_PHASES=compile info install prepare setup test unpack
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files
+DESCRIPTION=Chrome OS EC release firmware for bloonchipper.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
+IUSE=cros_host cros_workon_tree_cc86e13c5ceccafd485c6aaba4ede227c01b0f16_2159375e60a21a4f4cd6da052dcc95a4a0dec15d_f3d026c790bd3d7121bb96ed2a4932360d698a73 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_cc86e13c5ceccafd485c6aaba4ede227c01b0f16_2159375e60a21a4f4cd6da052dcc95a4a0dec15d_f3d026c790bd3d7121bb96ed2a4932360d698a73 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
+RESTRICT=binchecksbinchecks strip
+SLOT=0/0.0.1-r55
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	ca58ac724e837012f5f60d5ece713fb4	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	bf6fcdb3af12bec49e4c1f0a4023d042	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ba36ee2b5059d3516a7ef33774a185b8
diff --git a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-bloonchipper-9999 b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-bloonchipper-9999
index 7a09ebf..f4533f9 100644
--- a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-bloonchipper-9999
+++ b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-bloonchipper-9999
@@ -1,15 +1,15 @@
-BDEPEND=dev-vcs/git dev-vcs/git chromeos-base/chromeos-config-host
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git chromeos-base/chromeos-config-host:= chromeos-base/chromeos-config-host
 DEFINED_PHASES=compile info install prepare setup test unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files virtual/chromeos-config-bsp
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files
 DESCRIPTION=Chrome OS EC release firmware for bloonchipper.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
-IUSE=cros_host cros_workon_tree_ ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
+IUSE=cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
 RESTRICT=binchecksbinchecks strip
 SLOT=0/9999
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	12499835cbfa67cb99a77b6a1e57e313	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	a4d1c4dc442bcc9b1d3b46603cdafbd4	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=cea836d5193bd67772b93ca7276ca90b
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	ca58ac724e837012f5f60d5ece713fb4	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	bf6fcdb3af12bec49e4c1f0a4023d042	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=13b59e7477ca1165bbcab81910f9547c
diff --git a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-dartmonkey-0.0.1-r37 b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-dartmonkey-0.0.1-r37
deleted file mode 100644
index 78645db..0000000
--- a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-dartmonkey-0.0.1-r37
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git chromeos-base/chromeos-config-host
-DEFINED_PHASES=compile info install prepare setup test unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files virtual/chromeos-config-bsp
-DESCRIPTION=Chrome OS EC release firmware for dartmonkey.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
-IUSE=cros_host cros_workon_tree_c58fb6b1d5dcbcdf2a513e88558e47031f0ae606_679fa8b14bd105ad9959a0f82eaa928d5b18890d_f3d026c790bd3d7121bb96ed2a4932360d698a73 ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_c58fb6b1d5dcbcdf2a513e88558e47031f0ae606_679fa8b14bd105ad9959a0f82eaa928d5b18890d_f3d026c790bd3d7121bb96ed2a4932360d698a73 quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
-RESTRICT=binchecksbinchecks strip
-SLOT=0/0.0.1-r37
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	12499835cbfa67cb99a77b6a1e57e313	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	a4d1c4dc442bcc9b1d3b46603cdafbd4	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e026d1ed358b8f8ba233cfe866e48e8f
diff --git a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-dartmonkey-0.0.1-r44 b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-dartmonkey-0.0.1-r44
new file mode 100644
index 0000000..4ff8106
--- /dev/null
+++ b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-dartmonkey-0.0.1-r44
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git chromeos-base/chromeos-config-host:= chromeos-base/chromeos-config-host
+DEFINED_PHASES=compile info install prepare setup test unpack
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files
+DESCRIPTION=Chrome OS EC release firmware for dartmonkey.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
+IUSE=cros_host cros_workon_tree_cc86e13c5ceccafd485c6aaba4ede227c01b0f16_2159375e60a21a4f4cd6da052dcc95a4a0dec15d_f3d026c790bd3d7121bb96ed2a4932360d698a73 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_cc86e13c5ceccafd485c6aaba4ede227c01b0f16_2159375e60a21a4f4cd6da052dcc95a4a0dec15d_f3d026c790bd3d7121bb96ed2a4932360d698a73 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
+RESTRICT=binchecksbinchecks strip
+SLOT=0/0.0.1-r44
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	ca58ac724e837012f5f60d5ece713fb4	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	bf6fcdb3af12bec49e4c1f0a4023d042	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b1fbdfc7e29f28d8b9198f2e417fa6f0
diff --git a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-dartmonkey-9999 b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-dartmonkey-9999
index 74cfe95..196b91d 100644
--- a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-dartmonkey-9999
+++ b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-dartmonkey-9999
@@ -1,15 +1,15 @@
-BDEPEND=dev-vcs/git dev-vcs/git chromeos-base/chromeos-config-host
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git chromeos-base/chromeos-config-host:= chromeos-base/chromeos-config-host
 DEFINED_PHASES=compile info install prepare setup test unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files virtual/chromeos-config-bsp
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files
 DESCRIPTION=Chrome OS EC release firmware for dartmonkey.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
-IUSE=cros_host cros_workon_tree_ ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
+IUSE=cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
 RESTRICT=binchecksbinchecks strip
 SLOT=0/9999
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	12499835cbfa67cb99a77b6a1e57e313	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	a4d1c4dc442bcc9b1d3b46603cdafbd4	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=67657e7d5f0de46bfcd5cec06ebe2c84
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	ca58ac724e837012f5f60d5ece713fb4	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	bf6fcdb3af12bec49e4c1f0a4023d042	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7c56169b23bb90300dccf10496ae9661
diff --git a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nami-0.0.1-r36 b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nami-0.0.1-r36
deleted file mode 100644
index 4cf40c0..0000000
--- a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nami-0.0.1-r36
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git chromeos-base/chromeos-config-host
-DEFINED_PHASES=compile info install prepare setup test unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files virtual/chromeos-config-bsp
-DESCRIPTION=Chrome OS EC release firmware for nami_fp.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
-IUSE=cros_host cros_workon_tree_c58fb6b1d5dcbcdf2a513e88558e47031f0ae606_679fa8b14bd105ad9959a0f82eaa928d5b18890d_f3d026c790bd3d7121bb96ed2a4932360d698a73 ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_c58fb6b1d5dcbcdf2a513e88558e47031f0ae606_679fa8b14bd105ad9959a0f82eaa928d5b18890d_f3d026c790bd3d7121bb96ed2a4932360d698a73 quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
-RESTRICT=binchecksbinchecks strip
-SLOT=0/0.0.1-r36
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	12499835cbfa67cb99a77b6a1e57e313	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	a4d1c4dc442bcc9b1d3b46603cdafbd4	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2a8bcdb2e09f2cd0e6c37e366537ccc8
diff --git a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nami-0.0.1-r43 b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nami-0.0.1-r43
new file mode 100644
index 0000000..a74760b
--- /dev/null
+++ b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nami-0.0.1-r43
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git chromeos-base/chromeos-config-host:= chromeos-base/chromeos-config-host
+DEFINED_PHASES=compile info install prepare setup test unpack
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files
+DESCRIPTION=Chrome OS EC release firmware for nami_fp.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
+IUSE=cros_host cros_workon_tree_cc86e13c5ceccafd485c6aaba4ede227c01b0f16_2159375e60a21a4f4cd6da052dcc95a4a0dec15d_f3d026c790bd3d7121bb96ed2a4932360d698a73 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_cc86e13c5ceccafd485c6aaba4ede227c01b0f16_2159375e60a21a4f4cd6da052dcc95a4a0dec15d_f3d026c790bd3d7121bb96ed2a4932360d698a73 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
+RESTRICT=binchecksbinchecks strip
+SLOT=0/0.0.1-r43
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	ca58ac724e837012f5f60d5ece713fb4	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	bf6fcdb3af12bec49e4c1f0a4023d042	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0ae1bebe5a915322cd69bdb8982ea8e2
diff --git a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nami-9999 b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nami-9999
index 36e5387..d2f2bc9 100644
--- a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nami-9999
+++ b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nami-9999
@@ -1,15 +1,15 @@
-BDEPEND=dev-vcs/git dev-vcs/git chromeos-base/chromeos-config-host
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git chromeos-base/chromeos-config-host:= chromeos-base/chromeos-config-host
 DEFINED_PHASES=compile info install prepare setup test unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files virtual/chromeos-config-bsp
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files
 DESCRIPTION=Chrome OS EC release firmware for nami_fp.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
-IUSE=cros_host cros_workon_tree_ ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
+IUSE=cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
 RESTRICT=binchecksbinchecks strip
 SLOT=0/9999
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	12499835cbfa67cb99a77b6a1e57e313	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	a4d1c4dc442bcc9b1d3b46603cdafbd4	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9ac73720881a7cbc618a5a260e117909
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	ca58ac724e837012f5f60d5ece713fb4	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	bf6fcdb3af12bec49e4c1f0a4023d042	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6cb49a1b83fcb43048e0f394a08d9fad
diff --git a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nocturne-0.0.1-r36 b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nocturne-0.0.1-r36
deleted file mode 100644
index 883b1d1..0000000
--- a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nocturne-0.0.1-r36
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git dev-vcs/git chromeos-base/chromeos-config-host
-DEFINED_PHASES=compile info install prepare setup test unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files virtual/chromeos-config-bsp
-DESCRIPTION=Chrome OS EC release firmware for nocturne_fp.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
-IUSE=cros_host cros_workon_tree_c58fb6b1d5dcbcdf2a513e88558e47031f0ae606_679fa8b14bd105ad9959a0f82eaa928d5b18890d_f3d026c790bd3d7121bb96ed2a4932360d698a73 ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_c58fb6b1d5dcbcdf2a513e88558e47031f0ae606_679fa8b14bd105ad9959a0f82eaa928d5b18890d_f3d026c790bd3d7121bb96ed2a4932360d698a73 quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live live
-RDEPEND=fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
-RESTRICT=binchecksbinchecks strip
-SLOT=0/0.0.1-r36
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	12499835cbfa67cb99a77b6a1e57e313	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	a4d1c4dc442bcc9b1d3b46603cdafbd4	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=c00479b2576b78488b3a9f7f7a948b49
diff --git a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nocturne-0.0.1-r43 b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nocturne-0.0.1-r43
new file mode 100644
index 0000000..716eb7e
--- /dev/null
+++ b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nocturne-0.0.1-r43
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git chromeos-base/chromeos-config-host:= chromeos-base/chromeos-config-host
+DEFINED_PHASES=compile info install prepare setup test unpack
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files
+DESCRIPTION=Chrome OS EC release firmware for nocturne_fp.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
+IUSE=cros_host cros_workon_tree_cc86e13c5ceccafd485c6aaba4ede227c01b0f16_2159375e60a21a4f4cd6da052dcc95a4a0dec15d_f3d026c790bd3d7121bb96ed2a4932360d698a73 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_cc86e13c5ceccafd485c6aaba4ede227c01b0f16_2159375e60a21a4f4cd6da052dcc95a4a0dec15d_f3d026c790bd3d7121bb96ed2a4932360d698a73 has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live live
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
+RESTRICT=binchecksbinchecks strip
+SLOT=0/0.0.1-r43
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	ca58ac724e837012f5f60d5ece713fb4	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	bf6fcdb3af12bec49e4c1f0a4023d042	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7853bdadcbf9bdd0d4952775f02b6d8b
diff --git a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nocturne-9999 b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nocturne-9999
index 28e49cf..655fb23 100644
--- a/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nocturne-9999
+++ b/metadata/md5-cache/sys-firmware/chromeos-fpmcu-release-nocturne-9999
@@ -1,15 +1,15 @@
-BDEPEND=dev-vcs/git dev-vcs/git chromeos-base/chromeos-config-host
+BDEPEND=dev-vcs/git chromeos-base/chromeos-config-host:= dev-vcs/git chromeos-base/chromeos-config-host:= chromeos-base/chromeos-config-host
 DEFINED_PHASES=compile info install prepare setup test unpack
-DEPEND=unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files virtual/chromeos-config-bsp
+DEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= ) dev-embedded/libftdi:1= fuzzer? ( dev-libs/libprotobuf-mutator:= ) test? ( dev-libs/libprotobuf-mutator:= ) virtual/chromeos-ec-private-files virtual/chromeos-ec-touch-firmware unibuild? ( chromeos-base/chromeos-config:= ) bootblock_in_ec? ( sys-boot/coreboot ) virtual/chromeos-ec-private-files
 DESCRIPTION=Chrome OS EC release firmware for nocturne_fp.
 EAPI=7
 HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md
-IUSE=cros_host cros_workon_tree_ ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
+IUSE=cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild ec_firmware_bds ec_firmware_cr50 ec_firmware_cyan ec_firmware_dingdong ec_firmware_elm ec_firmware_glkrvp ec_firmware_hadoken ec_firmware_hammer ec_firmware_hoho ec_firmware_jerry ec_firmware_oak ec_firmware_oak_pd ec_firmware_plankton ec_firmware_poppy ec_firmware_samus ec_firmware_samus_pd ec_firmware_strago ec_firmware_wand ec_firmware_zinger ec_firmware_extra_bds ec_firmware_extra_cr50 ec_firmware_extra_cyan ec_firmware_extra_dingdong ec_firmware_extra_elm ec_firmware_extra_glkrvp ec_firmware_extra_hadoken ec_firmware_extra_hammer ec_firmware_extra_hoho ec_firmware_extra_jerry ec_firmware_extra_oak ec_firmware_extra_oak_pd ec_firmware_extra_plankton ec_firmware_extra_poppy ec_firmware_extra_samus ec_firmware_extra_samus_pd ec_firmware_extra_strago ec_firmware_extra_wand ec_firmware_extra_zinger cros_host unibuild cros_host cros_workon_tree_ has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild quiet verbose coreboot-sdk unibuild fuzzer bootblock_in_ec asan msan ubsan test
 KEYWORDS=~*
 LICENSE=BSD-Google
 PROPERTIES=live live
-RDEPEND=fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
+RDEPEND=has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) fuzzer? ( dev-libs/openssl:= dev-libs/protobuf:= ) test? ( dev-libs/openssl:= dev-libs/protobuf:= )
 RESTRICT=binchecksbinchecks strip
 SLOT=0/9999
-_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	12499835cbfa67cb99a77b6a1e57e313	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	a4d1c4dc442bcc9b1d3b46603cdafbd4	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	b24e55d25b82e1b66400619ed7e13f9c	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=47e7f6d092fdf631a7073f8c037db43b
+_eclasses_=coreboot-sdk	b3fb569501ebe9ba5b808b9766a0392f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-ec	ca58ac724e837012f5f60d5ece713fb4	cros-ec-board	9439c4f29a6191c8d4c7daa1cf7c4f1d	cros-ec-merge-ro	bf6fcdb3af12bec49e4c1f0a4023d042	cros-ec-release	9a95b7bb0fefbcec0803c657f36fa8df	cros-ec-utils	5498f49404d3d05041dad891c1fd163c	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=31ef75309737a4bb62b25c26eb42b084
diff --git a/metadata/md5-cache/sys-firmware/fw-engprod-tools-0.0.1-r58 b/metadata/md5-cache/sys-firmware/fw-engprod-tools-0.0.1-r58
deleted file mode 100644
index 01a82b9..0000000
--- a/metadata/md5-cache/sys-firmware/fw-engprod-tools-0.0.1-r58
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=compile info install postinst setup test unpack
-DEPEND=dev-go/crypto:= dev-go/gapi-discovery:= dev-go/gapi-option:= dev-lang/go
-DESCRIPTION=Tooling related to firmware release testing.
-EAPI=7
-HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crostestutils/+/HEAD/go/src/firmware/
-IUSE=cros_host cros_workon_tree_b2f14f8919270f945f2fe0a397e2de5b19eecac8
-KEYWORDS=*
-LICENSE=BSD-Google
-PROPERTIES=live
-SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ec2bbebde238bd851b272845f1f6db34
diff --git a/metadata/md5-cache/sys-firmware/fw-engprod-tools-0.0.1-r65 b/metadata/md5-cache/sys-firmware/fw-engprod-tools-0.0.1-r65
new file mode 100644
index 0000000..a87cc49
--- /dev/null
+++ b/metadata/md5-cache/sys-firmware/fw-engprod-tools-0.0.1-r65
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=compile info install postinst setup test unpack
+DEPEND=dev-go/crypto:= dev-go/gapi-discovery:= dev-go/gapi-option:= dev-lang/go
+DESCRIPTION=Tooling related to firmware release testing.
+EAPI=7
+HOMEPAGE=https://chromium.googlesource.com/chromiumos/platform/crostestutils/+/HEAD/go/src/firmware/
+IUSE=cros_host cros_workon_tree_4e37e73d8386a092c04f41a1258e97f8df30d235
+KEYWORDS=*
+LICENSE=BSD-Google
+PROPERTIES=live
+SLOT=0/0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=cfd68de36ba596956733d2f228989d9e
diff --git a/metadata/md5-cache/sys-firmware/fw-engprod-tools-9999 b/metadata/md5-cache/sys-firmware/fw-engprod-tools-9999
index d844043..0b88630 100644
--- a/metadata/md5-cache/sys-firmware/fw-engprod-tools-9999
+++ b/metadata/md5-cache/sys-firmware/fw-engprod-tools-9999
@@ -9,5 +9,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0/0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-go	157c7bac0e032e424ec1c3316c127db8	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1249fe4c3ca7559c32d4c54f07f1ce7e
diff --git a/metadata/md5-cache/sys-firmware/mmc-firmware-0.0.1-r1 b/metadata/md5-cache/sys-firmware/mmc-firmware-0.0.1-r1
new file mode 100644
index 0000000..7458fb1
--- /dev/null
+++ b/metadata/md5-cache/sys-firmware/mmc-firmware-0.0.1-r1
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Installs eMMC firmware update files used by fwupd.
+EAPI=7
+HOMEPAGE=https://fwupd.org/downloads
+IUSE=cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1 remote
+KEYWORDS=*
+LICENSE=LVFS-Vendor-Agreement-v1
+PROPERTIES=live
+RDEPEND=sys-apps/fwupd
+RESTRICT=mirror
+SLOT=0/0.0.1-r1
+SRC_URI=gs://chromeos-localmirror/lvfs//ee85c8b40e538cd41ecbdd0d10ef7ef6f48c12eddffe1c934c988ef8f77f375e-MCEM131.cab
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fwupd	b20d3a2d6dece1bc3030df7fcd82c829	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
+_md5_=3b345abfb3112cd51d0b56af181b5ff8
diff --git a/metadata/md5-cache/sys-firmware/mmc-firmware-9999 b/metadata/md5-cache/sys-firmware/mmc-firmware-9999
new file mode 100644
index 0000000..46d688a
--- /dev/null
+++ b/metadata/md5-cache/sys-firmware/mmc-firmware-9999
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git virtual/pkgconfig
+DEFINED_PHASES=info install setup unpack
+DESCRIPTION=Installs eMMC firmware update files used by fwupd.
+EAPI=7
+HOMEPAGE=https://fwupd.org/downloads
+IUSE=cros_host cros_workon_tree_ remote
+KEYWORDS=~*
+LICENSE=LVFS-Vendor-Agreement-v1
+PROPERTIES=live
+RDEPEND=sys-apps/fwupd
+RESTRICT=mirror
+SLOT=0/9999
+SRC_URI=gs://chromeos-localmirror/lvfs//ee85c8b40e538cd41ecbdd0d10ef7ef6f48c12eddffe1c934c988ef8f77f375e-MCEM131.cab
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fwupd	b20d3a2d6dece1bc3030df7fcd82c829	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
+_md5_=a52b8a30f766faf14cca463600552ee5
diff --git a/metadata/md5-cache/sys-firmware/parade-ps8705a2-firmware-2 b/metadata/md5-cache/sys-firmware/parade-ps8705a2-firmware-2
index a4f14d8..36a6dd8 100644
--- a/metadata/md5-cache/sys-firmware/parade-ps8705a2-firmware-2
+++ b/metadata/md5-cache/sys-firmware/parade-ps8705a2-firmware-2
@@ -5,4 +5,4 @@
 LICENSE=Google-Partners-Website
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/parade-ps8705a2-firmware-2.tar.xz
-_md5_=199dc39b9740a05aa120fdaa018c48b9
+_md5_=5cc7897253ea30f150d63a2f1bb8a18a
diff --git a/metadata/md5-cache/sys-firmware/parade-ps8705a2-firmware-2-r1 b/metadata/md5-cache/sys-firmware/parade-ps8705a2-firmware-2-r1
index a4f14d8..36a6dd8 100644
--- a/metadata/md5-cache/sys-firmware/parade-ps8705a2-firmware-2-r1
+++ b/metadata/md5-cache/sys-firmware/parade-ps8705a2-firmware-2-r1
@@ -5,4 +5,4 @@
 LICENSE=Google-Partners-Website
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/parade-ps8705a2-firmware-2.tar.xz
-_md5_=199dc39b9740a05aa120fdaa018c48b9
+_md5_=5cc7897253ea30f150d63a2f1bb8a18a
diff --git a/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-2 b/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-2
index 687ae66..87bb651 100644
--- a/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-2
+++ b/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-2
@@ -5,4 +5,4 @@
 LICENSE=Google-Partners-Website
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/parade-ps8755a2-firmware-2.tar.xz
-_md5_=2cb1c7a8bca058557adf8b4f4a9ac13e
+_md5_=c16f8324ecd31e0171025e33c096f7fb
diff --git a/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-2-r1 b/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-2-r1
index 687ae66..87bb651 100644
--- a/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-2-r1
+++ b/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-2-r1
@@ -5,4 +5,4 @@
 LICENSE=Google-Partners-Website
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/parade-ps8755a2-firmware-2.tar.xz
-_md5_=2cb1c7a8bca058557adf8b4f4a9ac13e
+_md5_=c16f8324ecd31e0171025e33c096f7fb
diff --git a/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-3-r1 b/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-3-r1
index cf0f244..3a4a3ea 100644
--- a/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-3-r1
+++ b/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-3-r1
@@ -5,4 +5,4 @@
 LICENSE=Google-Partners-Website
 SLOT=0
 SRC_URI=gs://chromeos-localmirror/distfiles/parade-ps8755a2-firmware-3.tar.xz
-_md5_=2cb1c7a8bca058557adf8b4f4a9ac13e
+_md5_=c16f8324ecd31e0171025e33c096f7fb
diff --git a/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-7-r1 b/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-7-r1
new file mode 100644
index 0000000..b937f20
--- /dev/null
+++ b/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-7-r1
@@ -0,0 +1,8 @@
+DEFINED_PHASES=install
+DESCRIPTION=PS8755-A2 Firmware Binary
+EAPI=7
+KEYWORDS=*
+LICENSE=Google-Partners-Website
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/parade-ps8755a2-firmware-7.tar.xz
+_md5_=c16f8324ecd31e0171025e33c096f7fb
diff --git a/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-8-r2 b/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-8-r2
new file mode 100644
index 0000000..fc76ef9
--- /dev/null
+++ b/metadata/md5-cache/sys-firmware/parade-ps8755a2-firmware-8-r2
@@ -0,0 +1,8 @@
+DEFINED_PHASES=install
+DESCRIPTION=PS8755-A2 Firmware Binary
+EAPI=7
+KEYWORDS=*
+LICENSE=Google-Partners-Website
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/parade-ps8755a2-firmware-8.tar.xz
+_md5_=c16f8324ecd31e0171025e33c096f7fb
diff --git a/metadata/md5-cache/sys-firmware/parade-ps8805a3-firmware-22 b/metadata/md5-cache/sys-firmware/parade-ps8805a3-firmware-22
new file mode 100644
index 0000000..db6345a
--- /dev/null
+++ b/metadata/md5-cache/sys-firmware/parade-ps8805a3-firmware-22
@@ -0,0 +1,8 @@
+DEFINED_PHASES=install
+DESCRIPTION=PS8805-A3 Firmware Binary
+EAPI=7
+KEYWORDS=*
+LICENSE=Google-Partners-Website
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/parade-ps8805a3-firmware-22.tar.xz
+_md5_=31f5ec929d435dce9d2afc16e63762a4
diff --git a/metadata/md5-cache/sys-firmware/parade-ps8815a2-firmware-32-r1 b/metadata/md5-cache/sys-firmware/parade-ps8815a2-firmware-32-r1
new file mode 100644
index 0000000..f4b0898
--- /dev/null
+++ b/metadata/md5-cache/sys-firmware/parade-ps8815a2-firmware-32-r1
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DEPEND=!sys-boot/chromeos-firmware-ps8815
+DESCRIPTION=PS8815-A2 Firmware Binary
+EAPI=7
+KEYWORDS=*
+LICENSE=Google-Partners-Website
+RDEPEND=!sys-boot/chromeos-firmware-ps8815
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/parade-ps8815a2-firmware-32.tar.xz
+_md5_=ae3ec3fb799bf88351dda9e02c460968
diff --git a/metadata/md5-cache/sys-firmware/parade-ps8815a2-firmware-34-r1 b/metadata/md5-cache/sys-firmware/parade-ps8815a2-firmware-34-r1
new file mode 100644
index 0000000..7bba078
--- /dev/null
+++ b/metadata/md5-cache/sys-firmware/parade-ps8815a2-firmware-34-r1
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DEPEND=!sys-boot/chromeos-firmware-ps8815
+DESCRIPTION=PS8815-A2 Firmware Binary
+EAPI=7
+KEYWORDS=*
+LICENSE=Google-Partners-Website
+RDEPEND=!sys-boot/chromeos-firmware-ps8815
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/parade-ps8815a2-firmware-34.tar.xz
+_md5_=ae3ec3fb799bf88351dda9e02c460968
diff --git a/metadata/md5-cache/sys-firmware/parade-ps8815a2-firmware-35-r1 b/metadata/md5-cache/sys-firmware/parade-ps8815a2-firmware-35-r1
new file mode 100644
index 0000000..d30ffef
--- /dev/null
+++ b/metadata/md5-cache/sys-firmware/parade-ps8815a2-firmware-35-r1
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DEPEND=!sys-boot/chromeos-firmware-ps8815
+DESCRIPTION=PS8815-A2 Firmware Binary
+EAPI=7
+KEYWORDS=*
+LICENSE=Google-Partners-Website
+RDEPEND=!sys-boot/chromeos-firmware-ps8815
+SLOT=0
+SRC_URI=gs://chromeos-localmirror/distfiles/parade-ps8815a2-firmware-35.tar.xz
+_md5_=ae3ec3fb799bf88351dda9e02c460968
diff --git a/metadata/md5-cache/sys-firmware/thinkpad-usbc-gen2-dock-0.0.1-r4 b/metadata/md5-cache/sys-firmware/thinkpad-usbc-gen2-dock-0.0.1-r4
index 6a496e5..c99399e 100644
--- a/metadata/md5-cache/sys-firmware/thinkpad-usbc-gen2-dock-0.0.1-r4
+++ b/metadata/md5-cache/sys-firmware/thinkpad-usbc-gen2-dock-0.0.1-r4
@@ -11,5 +11,5 @@
 RESTRICT=mirror
 SLOT=0/0.0.1-r4
 SRC_URI=gs://chromeos-localmirror/lvfs//29835d73b07590db964d796e508058e512c55ff0ca2a75b9c8ac2ed1fe305de5-Lenovo-ThinkPad-USBCGen2Dock-PDFirmware-0.0.34.cab gs://chromeos-localmirror/lvfs//ac37f23af002e91df11094b08fd2e076cf9c8cb4f08930be8eefe35850097a60-Lenovo-ThinkPad-USBCGen2Dock-DP-Firmware-5.05.00.cab gs://chromeos-localmirror/lvfs//2e0bf8aaf9c63ca11cfe3444d032277c21ec0d678e5963123a8b33e5dcd37d99-Lenovo-ThinkPad-USBCGen2Dock-Firmware-49-0E-14.cab gs://chromeos-localmirror/lvfs//9a13f9fefa59ae42c06e9861dc20a0e53e35d471c6a1c05d6426a011b0fada30-Lenovo-ThinkPad-USBCGen2Dock-USBHUB-Firmware-0D23_7a216856-8a97-550c-882e-8233751c7cf2.cab gs://chromeos-localmirror/lvfs//f241ce8c26d83546d5bfd1d67b70b9324f32ea4790acebb2a5e7d5a071eaaa85-Lenovo-ThinkPad-USBCGen2Dock-USBHUBQ7-Firmware-0D24_4ec36768-1858-5e9b-9d35-40e6143c3cd4.cab
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fwupd	b20d3a2d6dece1bc3030df7fcd82c829	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fwupd	b20d3a2d6dece1bc3030df7fcd82c829	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
 _md5_=da69f977a683ec08425d2e320d77a898
diff --git a/metadata/md5-cache/sys-firmware/thinkpad-usbc-gen2-dock-9999 b/metadata/md5-cache/sys-firmware/thinkpad-usbc-gen2-dock-9999
index e426af9..5acfea4 100644
--- a/metadata/md5-cache/sys-firmware/thinkpad-usbc-gen2-dock-9999
+++ b/metadata/md5-cache/sys-firmware/thinkpad-usbc-gen2-dock-9999
@@ -11,5 +11,5 @@
 RESTRICT=mirror
 SLOT=0/9999
 SRC_URI=gs://chromeos-localmirror/lvfs//29835d73b07590db964d796e508058e512c55ff0ca2a75b9c8ac2ed1fe305de5-Lenovo-ThinkPad-USBCGen2Dock-PDFirmware-0.0.34.cab gs://chromeos-localmirror/lvfs//ac37f23af002e91df11094b08fd2e076cf9c8cb4f08930be8eefe35850097a60-Lenovo-ThinkPad-USBCGen2Dock-DP-Firmware-5.05.00.cab gs://chromeos-localmirror/lvfs//2e0bf8aaf9c63ca11cfe3444d032277c21ec0d678e5963123a8b33e5dcd37d99-Lenovo-ThinkPad-USBCGen2Dock-Firmware-49-0E-14.cab gs://chromeos-localmirror/lvfs//9a13f9fefa59ae42c06e9861dc20a0e53e35d471c6a1c05d6426a011b0fada30-Lenovo-ThinkPad-USBCGen2Dock-USBHUB-Firmware-0D23_7a216856-8a97-550c-882e-8233751c7cf2.cab gs://chromeos-localmirror/lvfs//f241ce8c26d83546d5bfd1d67b70b9324f32ea4790acebb2a5e7d5a071eaaa85-Lenovo-ThinkPad-USBCGen2Dock-USBHUBQ7-Firmware-0D24_4ec36768-1858-5e9b-9d35-40e6143c3cd4.cab
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fwupd	b20d3a2d6dece1bc3030df7fcd82c829	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-fwupd	b20d3a2d6dece1bc3030df7fcd82c829	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
 _md5_=172a48f2c4b58caefecc4f16780aa4cf
diff --git a/metadata/md5-cache/sys-fs/archivemount-0.8.12 b/metadata/md5-cache/sys-fs/archivemount-0.8.12
deleted file mode 100644
index 3e40b73..0000000
--- a/metadata/md5-cache/sys-fs/archivemount-0.8.12
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815
-DEFINED_PHASES=prepare
-DEPEND=app-arch/libarchive:= sys-fs/fuse:0 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Mount archives using libarchive and FUSE
-EAPI=7
-HOMEPAGE=https://www.cybernoia.de/software/archivemount.html https://github.com/cybernoid/archivemount
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=app-arch/libarchive:= sys-fs/fuse:0
-SLOT=0
-SRC_URI=https://www.cybernoia.de/software/archivemount/archivemount-0.8.12.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=86c151cf36118e869646a0d772e71d04
diff --git a/metadata/md5-cache/sys-fs/archivemount-0.8.12-r2 b/metadata/md5-cache/sys-fs/archivemount-0.8.12-r2
deleted file mode 100644
index 3e40b73..0000000
--- a/metadata/md5-cache/sys-fs/archivemount-0.8.12-r2
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815
-DEFINED_PHASES=prepare
-DEPEND=app-arch/libarchive:= sys-fs/fuse:0 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Mount archives using libarchive and FUSE
-EAPI=7
-HOMEPAGE=https://www.cybernoia.de/software/archivemount.html https://github.com/cybernoid/archivemount
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=app-arch/libarchive:= sys-fs/fuse:0
-SLOT=0
-SRC_URI=https://www.cybernoia.de/software/archivemount/archivemount-0.8.12.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=86c151cf36118e869646a0d772e71d04
diff --git a/metadata/md5-cache/sys-fs/fsverity-utils-1.1 b/metadata/md5-cache/sys-fs/fsverity-utils-1.1
index 98d716b..68c4a76 100644
--- a/metadata/md5-cache/sys-fs/fsverity-utils-1.1
+++ b/metadata/md5-cache/sys-fs/fsverity-utils-1.1
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/openssl:=
 SLOT=0
 SRC_URI=https://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/fsverity-utils.git/snapshot/fsverity-utils-1.1.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=830c354489ec4f7ae1dfe8ad0c657de2
diff --git a/metadata/md5-cache/sys-fs/fsverity-utils-1.1-r1 b/metadata/md5-cache/sys-fs/fsverity-utils-1.1-r1
index 98d716b..68c4a76 100644
--- a/metadata/md5-cache/sys-fs/fsverity-utils-1.1-r1
+++ b/metadata/md5-cache/sys-fs/fsverity-utils-1.1-r1
@@ -9,5 +9,5 @@
 RDEPEND=dev-libs/openssl:=
 SLOT=0
 SRC_URI=https://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/fsverity-utils.git/snapshot/fsverity-utils-1.1.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=830c354489ec4f7ae1dfe8ad0c657de2
diff --git a/metadata/md5-cache/sys-fs/fuse-2.9.8-r4 b/metadata/md5-cache/sys-fs/fuse-2.9.8-r4
index 17e0887..e0a728e 100644
--- a/metadata/md5-cache/sys-fs/fuse-2.9.8-r4
+++ b/metadata/md5-cache/sys-fs/fuse-2.9.8-r4
@@ -10,5 +10,5 @@
 RDEPEND=sys-fs/fuse-common
 SLOT=0
 SRC_URI=https://github.com/libfuse/libfuse/releases/download/fuse-2.9.8/fuse-2.9.8.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	fcaps	eeefea88d5fef2853d4c1e3770340302	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	fcaps	eeefea88d5fef2853d4c1e3770340302	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=f5c82c3fbcdd182805819f6aa940fad1
diff --git a/metadata/md5-cache/sys-fs/fuse-3.10.4 b/metadata/md5-cache/sys-fs/fuse-3.10.4
new file mode 100644
index 0000000..08d542b
--- /dev/null
+++ b/metadata/md5-cache/sys-fs/fuse-3.10.4
@@ -0,0 +1,14 @@
+BDEPEND=virtual/pkgconfig test? ( || ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 ) || ( ( dev-lang/python:3.9 dev-python/pytest[python_targets_python3_9(-),python_single_target_python3_9(+)] ) ( dev-lang/python:3.8 dev-python/pytest[python_targets_python3_8(-),python_single_target_python3_8(+)] ) ( dev-lang/python:3.7 dev-python/pytest[python_targets_python3_7(-),python_single_target_python3_7(+)] ) ) ) >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array virtual/pkgconfig
+DEFINED_PHASES=compile configure install setup test
+DESCRIPTION=An interface for filesystems implemented in userspace
+EAPI=7
+HOMEPAGE=https://github.com/libfuse/libfuse
+IUSE=+suid test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=GPL-2 LGPL-2.1
+RDEPEND=>=sys-fs/fuse-common-3.3.0-r1
+RESTRICT=!test? ( test )
+SLOT=3
+SRC_URI=https://github.com/libfuse/libfuse/releases/download/fuse-3.10.4/fuse-3.10.4.tar.xz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	meson-multilib	485215fef459a86936e377c0eaa513a0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
+_md5_=954d19f469b29845719c0126b003ef85
diff --git a/metadata/md5-cache/sys-fs/fuse-archive-0.1.7 b/metadata/md5-cache/sys-fs/fuse-archive-0.1.7
new file mode 100644
index 0000000..929ca87
--- /dev/null
+++ b/metadata/md5-cache/sys-fs/fuse-archive-0.1.7
@@ -0,0 +1,12 @@
+BDEPEND=virtual/pkgconfig
+DEFINED_PHASES=-
+DEPEND=app-arch/libarchive:= sys-fs/fuse:0
+DESCRIPTION=Serve an archive or compressed file as a FUSE file system
+EAPI=7
+HOMEPAGE=https://github.com/google/fuse-archive
+KEYWORDS=*
+LICENSE=Apache-2.0
+RDEPEND=app-arch/libarchive:= sys-fs/fuse:0
+SLOT=0
+SRC_URI=https://github.com/google/fuse-archive/archive/v0.1.7.tar.gz -> fuse-archive-0.1.7.tar.gz
+_md5_=82735ee67fe2d0887fe8faf89688924c
diff --git a/metadata/md5-cache/sys-fs/fuse-common-3.10.4-r1 b/metadata/md5-cache/sys-fs/fuse-common-3.10.4-r1
new file mode 100644
index 0000000..5ab3576
--- /dev/null
+++ b/metadata/md5-cache/sys-fs/fuse-common-3.10.4-r1
@@ -0,0 +1,12 @@
+BDEPEND=virtual/pkgconfig virtual/pkgconfig
+DEFINED_PHASES=install
+DESCRIPTION=Common files for multiple slots of sys-fs/fuse
+EAPI=7
+HOMEPAGE=https://github.com/libfuse/libfuse
+KEYWORDS=*
+LICENSE=GPL-2 LGPL-2.1
+RDEPEND=!<sys-fs/fuse-2.9.7-r1:0
+SLOT=0
+SRC_URI=https://github.com/libfuse/libfuse/releases/download/fuse-3.10.4/fuse-3.10.4.tar.xz
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6
+_md5_=92e4cf41218620cf9a2b3e4cb8df8a77
diff --git a/metadata/md5-cache/sys-fs/fuse-common-3.2.6-r2 b/metadata/md5-cache/sys-fs/fuse-common-3.2.6-r2
deleted file mode 100644
index 0f00a76..0000000
--- a/metadata/md5-cache/sys-fs/fuse-common-3.2.6-r2
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare test
-DEPEND=virtual/pkgconfig >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array virtual/pkgconfig
-DESCRIPTION=Common files for multiple slots of sys-fs/fuse
-EAPI=6
-HOMEPAGE=https://github.com/libfuse/libfuse
-KEYWORDS=*
-LICENSE=GPL-2 LGPL-2.1
-RDEPEND=!<sys-fs/fuse-2.9.8
-RESTRICT=test
-SLOT=0
-SRC_URI=https://github.com/libfuse/libfuse/releases/download/fuse-3.2.6/fuse-3.2.6.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
-_md5_=cb9d7e5d1d87b00e0fcc960b3c2d60a0
diff --git a/metadata/md5-cache/sys-fs/fuse-zip-0.7.0 b/metadata/md5-cache/sys-fs/fuse-zip-0.7.0
new file mode 100644
index 0000000..03fe0ca
--- /dev/null
+++ b/metadata/md5-cache/sys-fs/fuse-zip-0.7.0
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile install
+DEPEND=>=chromeos-base/chrome-icu-89 dev-libs/libzip:= sys-fs/fuse:0
+DESCRIPTION=FUSE file system to navigate, extract, create and modify ZIP archives
+EAPI=7
+HOMEPAGE=https://bitbucket.org/agalanin/fuse-zip
+IUSE=asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=GPL-3
+RDEPEND=>=chromeos-base/chrome-icu-89 dev-libs/libzip:= sys-fs/fuse:0
+RESTRICT=test
+SLOT=0
+SRC_URI=https://bitbucket.org/agalanin/fuse-zip/downloads/fuse-zip-0.7.0.tar.gz
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=423a8358bc960a0b902aef32a86a3902
diff --git a/metadata/md5-cache/sys-fs/fuse-zip-0.7.0-r15 b/metadata/md5-cache/sys-fs/fuse-zip-0.7.0-r15
deleted file mode 100644
index 06c139d..0000000
--- a/metadata/md5-cache/sys-fs/fuse-zip-0.7.0-r15
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile install
-DEPEND=chromeos-base/chrome-icu dev-libs/libzip:= sys-fs/fuse:0
-DESCRIPTION=FUSE file system to navigate, extract, create and modify ZIP archives
-EAPI=7
-HOMEPAGE=https://bitbucket.org/agalanin/fuse-zip
-IUSE=asan coverage fuzzer msan tsan ubsan
-KEYWORDS=*
-LICENSE=GPL-3
-RDEPEND=chromeos-base/chrome-icu dev-libs/libzip:= sys-fs/fuse:0
-RESTRICT=test
-SLOT=0
-SRC_URI=https://bitbucket.org/agalanin/fuse-zip/downloads/fuse-zip-0.7.0.tar.gz
-_eclasses_=cros-sanitizers	fcc8f96c24bfce0853f07c00f65fb50a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=1b5a14db6ebaaf6ef3eafd3d1e143a80
diff --git a/metadata/md5-cache/sys-fs/fuse-zip-0.7.0-r17 b/metadata/md5-cache/sys-fs/fuse-zip-0.7.0-r17
new file mode 100644
index 0000000..03fe0ca
--- /dev/null
+++ b/metadata/md5-cache/sys-fs/fuse-zip-0.7.0-r17
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile install
+DEPEND=>=chromeos-base/chrome-icu-89 dev-libs/libzip:= sys-fs/fuse:0
+DESCRIPTION=FUSE file system to navigate, extract, create and modify ZIP archives
+EAPI=7
+HOMEPAGE=https://bitbucket.org/agalanin/fuse-zip
+IUSE=asan coverage fuzzer msan tsan ubsan
+KEYWORDS=*
+LICENSE=GPL-3
+RDEPEND=>=chromeos-base/chrome-icu-89 dev-libs/libzip:= sys-fs/fuse:0
+RESTRICT=test
+SLOT=0
+SRC_URI=https://bitbucket.org/agalanin/fuse-zip/downloads/fuse-zip-0.7.0.tar.gz
+_eclasses_=cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=423a8358bc960a0b902aef32a86a3902
diff --git a/metadata/md5-cache/sys-fs/lxcfs-4.0.8 b/metadata/md5-cache/sys-fs/lxcfs-4.0.8
deleted file mode 100644
index 658ff13..0000000
--- a/metadata/md5-cache/sys-fs/lxcfs-4.0.8
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=sys-apps/help2man verify-sig? ( app-crypt/openpgp-keys-linuxcontainers ) >=app-portage/elt-patches-20170815 virtual/pkgconfig verify-sig? ( app-crypt/gnupg >=app-portage/gemato-16 )
-DEFINED_PHASES=configure install prepare test unpack
-DEPEND=dev-libs/glib:2 sys-fs/fuse:0 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=FUSE filesystem for LXC
-EAPI=7
-HOMEPAGE=https://linuxcontainers.org/lxcfs/introduction/ https://github.com/lxc/lxcfs/
-IUSE=verify-sig
-KEYWORDS=*
-LICENSE=Apache-2.0
-RDEPEND=dev-libs/glib:2 sys-fs/fuse:0
-RESTRICT=test
-SLOT=4
-SRC_URI=https://linuxcontainers.org/downloads/lxcfs/lxcfs-4.0.8.tar.gz verify-sig? ( https://linuxcontainers.org/downloads/lxcfs/lxcfs-4.0.8.tar.gz.asc )
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	verify-sig	40b4f4f782cf67118f594ce604cc4c0a
-_md5_=cb9d187c27ec7076160f1e8be316dd23
diff --git a/metadata/md5-cache/sys-fs/lxcfs-4.0.9 b/metadata/md5-cache/sys-fs/lxcfs-4.0.9
new file mode 100644
index 0000000..abdf203
--- /dev/null
+++ b/metadata/md5-cache/sys-fs/lxcfs-4.0.9
@@ -0,0 +1,15 @@
+BDEPEND=sys-apps/help2man verify-sig? ( app-crypt/openpgp-keys-linuxcontainers ) >=app-portage/elt-patches-20170815 virtual/pkgconfig verify-sig? ( app-crypt/gnupg >=app-portage/gemato-16 )
+DEFINED_PHASES=configure install prepare test unpack
+DEPEND=dev-libs/glib:2 sys-fs/fuse:0 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=FUSE filesystem for LXC
+EAPI=7
+HOMEPAGE=https://linuxcontainers.org/lxcfs/introduction/ https://github.com/lxc/lxcfs/
+IUSE=verify-sig
+KEYWORDS=*
+LICENSE=Apache-2.0
+RDEPEND=dev-libs/glib:2 sys-fs/fuse:0
+RESTRICT=test
+SLOT=4
+SRC_URI=https://linuxcontainers.org/downloads/lxcfs/lxcfs-4.0.9.tar.gz verify-sig? ( https://linuxcontainers.org/downloads/lxcfs/lxcfs-4.0.9.tar.gz.asc )
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	verify-sig	40b4f4f782cf67118f594ce604cc4c0a
+_md5_=cb9d187c27ec7076160f1e8be316dd23
diff --git a/metadata/md5-cache/sys-fs/ntfs3g-2017.3.23-r7 b/metadata/md5-cache/sys-fs/ntfs3g-2017.3.23-r7
index 98fc4e9..807562c 100644
--- a/metadata/md5-cache/sys-fs/ntfs3g-2017.3.23-r7
+++ b/metadata/md5-cache/sys-fs/ntfs3g-2017.3.23-r7
@@ -9,5 +9,5 @@
 RDEPEND=!<sys-apps/util-linux-2.20.1-r2 !sys-fs/ntfsprogs ntfsdecrypt? ( >=dev-libs/libgcrypt-1.2.2:0 >=net-libs/gnutls-1.4.4 ) external-fuse? ( >=sys-fs/fuse-2.8.0 <sys-fs/fuse-3.0.0_pre )
 SLOT=0/87
 SRC_URI=http://tuxera.com/opensource/ntfs-3g_ntfsprogs-2017.3.23.tgz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=68af8d88238f6152de50f1c33837148d
diff --git a/metadata/md5-cache/sys-fs/rar2fs-1.29.5-r1 b/metadata/md5-cache/sys-fs/rar2fs-1.29.5-r1
deleted file mode 100644
index 03cdc1f..0000000
--- a/metadata/md5-cache/sys-fs/rar2fs-1.29.5-r1
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=>=app-portage/elt-patches-20170815
-DEFINED_PHASES=configure prepare
-DEPEND=>=app-arch/unrar-5:= sys-fs/fuse:0 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=A FUSE based filesystem that can mount one or multiple RAR archive(s)
-EAPI=7
-HOMEPAGE=https://hasse69.github.io/rar2fs/ https://github.com/hasse69/rar2fs
-IUSE=debug
-KEYWORDS=*
-LICENSE=GPL-3
-RDEPEND=>=app-arch/unrar-5:= sys-fs/fuse:0
-SLOT=0
-SRC_URI=https://github.com/hasse69/rar2fs/releases/download/v1.29.5/rar2fs-1.29.5.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2bcce997f0b64a607703c2f26da81b41
diff --git a/metadata/md5-cache/sys-fs/rar2fs-1.29.5-r2 b/metadata/md5-cache/sys-fs/rar2fs-1.29.5-r2
new file mode 100644
index 0000000..a908041
--- /dev/null
+++ b/metadata/md5-cache/sys-fs/rar2fs-1.29.5-r2
@@ -0,0 +1,14 @@
+BDEPEND=>=app-portage/elt-patches-20170815
+DEFINED_PHASES=configure prepare
+DEPEND=>=app-arch/unrar-5:= sys-fs/fuse:0 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=A FUSE based filesystem that can mount one or multiple RAR archive(s)
+EAPI=7
+HOMEPAGE=https://hasse69.github.io/rar2fs/ https://github.com/hasse69/rar2fs
+IUSE=debug
+KEYWORDS=*
+LICENSE=GPL-3
+RDEPEND=>=app-arch/unrar-5:= sys-fs/fuse:0
+SLOT=0
+SRC_URI=https://github.com/hasse69/rar2fs/releases/download/v1.29.5/rar2fs-1.29.5.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=086d050d4a2b4751fd46da47033b88f8
diff --git a/metadata/md5-cache/sys-fs/squashfs-tools-4.4_p1 b/metadata/md5-cache/sys-fs/squashfs-tools-4.4_p1
index 219efdb..e540b16 100644
--- a/metadata/md5-cache/sys-fs/squashfs-tools-4.4_p1
+++ b/metadata/md5-cache/sys-fs/squashfs-tools-4.4_p1
@@ -10,5 +10,5 @@
 REQUIRED_USE=selinux? ( xattr )
 SLOT=0
 SRC_URI=https://github.com/plougher/squashfs-tools/archive/4.4-git.1.tar.gz -> squashfs-tools-4.4-git.1.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7505acff5443ca524f3546fef0713ae2
diff --git a/metadata/md5-cache/sys-fs/squashfs-tools-4.4_p1-r2 b/metadata/md5-cache/sys-fs/squashfs-tools-4.4_p1-r2
index 219efdb..e540b16 100644
--- a/metadata/md5-cache/sys-fs/squashfs-tools-4.4_p1-r2
+++ b/metadata/md5-cache/sys-fs/squashfs-tools-4.4_p1-r2
@@ -10,5 +10,5 @@
 REQUIRED_USE=selinux? ( xattr )
 SLOT=0
 SRC_URI=https://github.com/plougher/squashfs-tools/archive/4.4-git.1.tar.gz -> squashfs-tools-4.4-git.1.tar.gz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=7505acff5443ca524f3546fef0713ae2
diff --git a/metadata/md5-cache/sys-fs/udev-225-r35 b/metadata/md5-cache/sys-fs/udev-225-r35
deleted file mode 100644
index 1efeacc..0000000
--- a/metadata/md5-cache/sys-fs/udev-225-r35
+++ /dev/null
@@ -1,15 +0,0 @@
-DEFINED_PHASES=compile configure install postinst prepare test
-DEPEND=>=sys-apps/util-linux-2.24 sys-libs/libcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] acl? ( sys-apps/acl ) kmod? ( >=sys-apps/kmod-16 ) selinux? ( >=sys-libs/libselinux-2.1.9 ) !<sys-libs/glibc-2.11 !sys-apps/gentoo-systemd-integration !sys-apps/systemd abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r7 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) dev-util/gperf >=dev-util/intltool-0.50 >=sys-apps/coreutils-8.16 virtual/os-headers virtual/pkgconfig >=sys-devel/make-3.82-r4 >=sys-kernel/linux-headers-3.9 app-text/docbook-xml-dtd:4.2 app-text/docbook-xml-dtd:4.5 app-text/docbook-xsl-stylesheets dev-libs/libxslt >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 virtual/pkgconfig sys-apps/baselayout
-DESCRIPTION=Linux dynamic and persistent device naming support (aka userspace devfs)
-EAPI=5
-HOMEPAGE=https://www.freedesktop.org/wiki/Software/systemd
-IUSE=acl +kmod openrc selinux static-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=LGPL-2.1 MIT GPL-2
-PDEPEND=>=sys-apps/hwids-20140304[udev] openrc? ( >=sys-fs/udev-init-scripts-26 )
-RDEPEND=>=sys-apps/util-linux-2.24 sys-libs/libcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] acl? ( sys-apps/acl ) kmod? ( >=sys-apps/kmod-16 ) selinux? ( >=sys-libs/libselinux-2.1.9 ) !<sys-libs/glibc-2.11 !sys-apps/gentoo-systemd-integration !sys-apps/systemd abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r7 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) !<sec-policy/selinux-base-2.20120725-r10 sys-apps/baselayout
-RESTRICT=test
-SLOT=0
-SRC_URI=https://github.com/systemd/systemd/archive/v225.tar.gz -> systemd-225.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
-_md5_=14be25ad818954e3d16b21623d1d27c7
diff --git a/metadata/md5-cache/sys-fs/udev-225-r38 b/metadata/md5-cache/sys-fs/udev-225-r38
new file mode 100644
index 0000000..7ede443
--- /dev/null
+++ b/metadata/md5-cache/sys-fs/udev-225-r38
@@ -0,0 +1,16 @@
+BDEPEND=dev-util/gperf >=dev-util/intltool-0.50 >=sys-apps/coreutils-8.16 virtual/pkgconfig >=sys-devel/make-3.82-r4 app-text/docbook-xml-dtd:4.2 app-text/docbook-xml-dtd:4.5 app-text/docbook-xsl-stylesheets dev-libs/libxslt >=app-portage/elt-patches-20170815 virtual/pkgconfig
+DEFINED_PHASES=compile configure install postinst prepare test
+DEPEND=>=sys-apps/util-linux-2.24 sys-libs/libcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] acl? ( sys-apps/acl ) kmod? ( >=sys-apps/kmod-16 ) selinux? ( >=sys-libs/libselinux-2.1.9 ) !<sys-libs/glibc-2.11 !sys-apps/gentoo-systemd-integration !sys-apps/systemd abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r7 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) virtual/os-headers >=sys-kernel/linux-headers-3.9 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 sys-apps/baselayout
+DESCRIPTION=Linux dynamic and persistent device naming support (aka userspace devfs)
+EAPI=7
+HOMEPAGE=https://www.freedesktop.org/wiki/Software/systemd
+IUSE=acl +kmod openrc selinux static-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=LGPL-2.1 MIT GPL-2
+PDEPEND=>=sys-apps/hwids-20140304[udev] openrc? ( >=sys-fs/udev-init-scripts-26 )
+RDEPEND=>=sys-apps/util-linux-2.24 sys-libs/libcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] acl? ( sys-apps/acl ) kmod? ( >=sys-apps/kmod-16 ) selinux? ( >=sys-libs/libselinux-2.1.9 ) !<sys-libs/glibc-2.11 !sys-apps/gentoo-systemd-integration !sys-apps/systemd abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r7 !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] ) !<sec-policy/selinux-base-2.20120725-r10 sys-apps/baselayout
+RESTRICT=test
+SLOT=0
+SRC_URI=https://github.com/systemd/systemd/archive/v225.tar.gz -> systemd-225.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	bash-completion-r1	47a7402d95930413ce25ba8d857339bb	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	udev	452708c3f55cf6e918b045adb949a9e6	user	7c566af8c48023219fd63246e88d6621
+_md5_=de069982226c8fa729a1f48bb03f36a8
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-3_18-3.18-r2668 b/metadata/md5-cache/sys-kernel/chromeos-kernel-3_18-3.18-r2668
deleted file mode 100644
index 0ff61be..0000000
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-3_18-3.18-r2668
+++ /dev/null
@@ -1,17 +0,0 @@
-BDEPEND=dev-vcs/git sys-apps/debianutils
-DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
-DESCRIPTION=Chrome OS Linux Kernel 3.18
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_584f5e2f76ae08f52c5abfaeaa1dba472471bb83 board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-RDEPEND=!!sys-kernel/gale-kernel-3_18
-REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
-RESTRICT=binchecks mirror
-SLOT=0
-SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/3.18/R93-14010.0-1623663215.gcov.xz -> chromeos-kernel-3_18-R93-14010.0-1623663215.gcov.xz )
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=29f6e7f04dcee71a1bff6e5c0361ab15
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-3_18-3.18-r2681 b/metadata/md5-cache/sys-kernel/chromeos-kernel-3_18-3.18-r2681
new file mode 100644
index 0000000..b83db48
--- /dev/null
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-3_18-3.18-r2681
@@ -0,0 +1,17 @@
+BDEPEND=dev-vcs/git sys-apps/debianutils
+DEFINED_PHASES=compile configure info install prepare setup unpack
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DESCRIPTION=Chrome OS Linux Kernel 3.18
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
+IUSE=cros_host cros_workon_tree_428b606f3040135d83acd83b89dadbd509aa6a9c board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+RDEPEND=!!sys-kernel/gale-kernel-3_18
+REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
+RESTRICT=binchecks mirror
+SLOT=0
+SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/3.18/R94-14150.17-1631525840.gcov.xz -> chromeos-kernel-3_18-R94-14150.17-1631525840.gcov.xz )
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=7a4be1f9cc6d3b5a961aa975fc745df5
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-3_18-9999 b/metadata/md5-cache/sys-kernel/chromeos-kernel-3_18-9999
index 5209c48..4867a0d 100644
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-3_18-9999
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-3_18-9999
@@ -1,10 +1,10 @@
 BDEPEND=dev-vcs/git sys-apps/debianutils
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 DESCRIPTION=Chrome OS Linux Kernel 3.18
 EAPI=7
 HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
+IUSE=cros_host cros_workon_tree_ board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
@@ -12,6 +12,6 @@
 REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
 RESTRICT=binchecks mirror
 SLOT=0
-SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/3.18/R93-14010.0-1623663215.gcov.xz -> chromeos-kernel-3_18-R93-14010.0-1623663215.gcov.xz )
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=81df0105b1c33b83c0058b9c02ca5ed3
+SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/3.18/R94-14150.17-1631525840.gcov.xz -> chromeos-kernel-3_18-R94-14150.17-1631525840.gcov.xz )
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=f1499ba3b4c658acb76cf47784f2a482
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_14-4.14.237-r1641 b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_14-4.14.237-r1641
deleted file mode 100644
index a68e1a9..0000000
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_14-4.14.237-r1641
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=dev-vcs/git sys-apps/debianutils
-DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
-DESCRIPTION=Chrome OS Linux Kernel 4.14
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_66e638dfefa1448cbb74e4aa39634a314ab106a4 board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
-RESTRICT=binchecks mirror
-SLOT=0
-SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/4.14/R93-14023.0-1623663563.gcov.xz -> chromeos-kernel-4_14-R93-14023.0-1623663563.gcov.xz )
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=9f6d471e757bfaabcbb64d572186f54f
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_14-4.14.250-r1710 b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_14-4.14.250-r1710
new file mode 100644
index 0000000..33598e4
--- /dev/null
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_14-4.14.250-r1710
@@ -0,0 +1,16 @@
+BDEPEND=dev-vcs/git sys-apps/debianutils
+DEFINED_PHASES=compile configure info install prepare setup unpack
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DESCRIPTION=Chrome OS Linux Kernel 4.14
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
+IUSE=cros_host cros_workon_tree_ea3f4935b04180e213c42c0492cb440a64cea0b9 board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
+RESTRICT=binchecks mirror
+SLOT=0
+SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/4.14/R96-14244.0-1633340189.gcov.xz -> chromeos-kernel-4_14-R96-14244.0-1633340189.gcov.xz )
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=bda002ae67dfa5bd9addaad009bf3b4e
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_14-9999 b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_14-9999
index 8e4f779..06e8987 100644
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_14-9999
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_14-9999
@@ -1,16 +1,16 @@
 BDEPEND=dev-vcs/git sys-apps/debianutils
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 DESCRIPTION=Chrome OS Linux Kernel 4.14
 EAPI=7
 HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
+IUSE=cros_host cros_workon_tree_ board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
 RESTRICT=binchecks mirror
 SLOT=0
-SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/4.14/R93-14023.0-1623663563.gcov.xz -> chromeos-kernel-4_14-R93-14023.0-1623663563.gcov.xz )
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=feaceb10ab49d2f9b432a1696153a9bc
+SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/4.14/R96-14244.0-1633340189.gcov.xz -> chromeos-kernel-4_14-R96-14244.0-1633340189.gcov.xz )
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b23b6d2c8b1714eaaa603b4080b6b956
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-4.19.195-r2048 b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-4.19.195-r2048
deleted file mode 100644
index 27fb558..0000000
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-4.19.195-r2048
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=dev-vcs/git sys-apps/debianutils
-DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
-DESCRIPTION=Chrome OS Linux Kernel 4.19
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_0ea0bfa48fd873d3f53398e55979de8ea14ed1a1 board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
-RESTRICT=binchecks mirror
-SLOT=0
-SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/4.19/R93-14021.0-1623663098.gcov.xz -> chromeos-kernel-4_19-R93-14021.0-1623663098.gcov.xz )
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=195d6508d523cbaa2dd1b8ecc4aded89
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-4.19.210-r2138 b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-4.19.210-r2138
new file mode 100644
index 0000000..b2b19b0
--- /dev/null
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-4.19.210-r2138
@@ -0,0 +1,16 @@
+BDEPEND=dev-vcs/git sys-apps/debianutils
+DEFINED_PHASES=compile configure info install prepare setup unpack
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DESCRIPTION=Chrome OS Linux Kernel 4.19
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
+IUSE=cros_host cros_workon_tree_816626f61b1998739aaa0f54b58576603f53de3d board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
+RESTRICT=binchecks mirror
+SLOT=0
+SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/4.19/R96-14244.0-1633339943.gcov.xz -> chromeos-kernel-4_19-R96-14244.0-1633339943.gcov.xz )
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=cef9ed2eb10bda36f4a4f92d42081edc
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-9999 b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-9999
index ce03346..fa240f4 100644
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-9999
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-9999
@@ -1,16 +1,16 @@
 BDEPEND=dev-vcs/git sys-apps/debianutils
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 DESCRIPTION=Chrome OS Linux Kernel 4.19
 EAPI=7
 HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
+IUSE=cros_host cros_workon_tree_ board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
 RESTRICT=binchecks mirror
 SLOT=0
-SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/4.19/R93-14021.0-1623663098.gcov.xz -> chromeos-kernel-4_19-R93-14021.0-1623663098.gcov.xz )
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=abb3cc0376b2f206f51dfbcd04e82587
+SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/4.19/R96-14244.0-1633339943.gcov.xz -> chromeos-kernel-4_19-R96-14244.0-1633339943.gcov.xz )
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=54a450a705643dacd42a607db4c9aeef
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-ht-4.19.115-r10 b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-ht-4.19.115-r10
deleted file mode 100644
index 79d049b..0000000
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-ht-4.19.115-r10
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git sys-apps/debianutils
-DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
-DESCRIPTION=Chrome OS Linux Kernel 4.19-ht
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_fa55a46690cd73594e89eb9b5066e99177dabc8e board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
-RESTRICT=binchecks mirror
-SLOT=0
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3b57e34cb79420ccc978caa598f34509
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-ht-4.19.115-r12 b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-ht-4.19.115-r12
new file mode 100644
index 0000000..99f741d
--- /dev/null
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-ht-4.19.115-r12
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git sys-apps/debianutils
+DEFINED_PHASES=compile configure info install prepare setup unpack
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DESCRIPTION=Chrome OS Linux Kernel 4.19-ht
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
+IUSE=cros_host cros_workon_tree_fa55a46690cd73594e89eb9b5066e99177dabc8e board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
+RESTRICT=binchecks mirror
+SLOT=0
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ba018c8eb4f6d448268c9a5a4799ee1c
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-ht-9999 b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-ht-9999
index 2a1562c..b4fe005f 100644
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-ht-9999
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_19-ht-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git sys-apps/debianutils
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 DESCRIPTION=Chrome OS Linux Kernel 4.19-ht
 EAPI=7
 HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
+IUSE=cros_host cros_workon_tree_ board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
 RESTRICT=binchecks mirror
 SLOT=0
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5be3b0b1b40afcb53e6ff14138b86d00
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=11bc0b38eeba6dcf02a1a73a57c03c10
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_4-4.4.273-r2681 b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_4-4.4.273-r2681
deleted file mode 100644
index 03cc683..0000000
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_4-4.4.273-r2681
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=dev-vcs/git sys-apps/debianutils
-DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
-DESCRIPTION=Chrome OS Linux Kernel 4.4
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_e3252c59b87ed40c9ff881fe2f97048605e0a3bf board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
-RESTRICT=binchecks mirror
-SLOT=0
-SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/4.4/R93-14021.0-1623663147.gcov.xz -> chromeos-kernel-4_4-R93-14021.0-1623663147.gcov.xz )
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=950a2afb7cebf441e83d81cdff5ed44f
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_4-4.4.288-r2726 b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_4-4.4.288-r2726
new file mode 100644
index 0000000..bb627be
--- /dev/null
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_4-4.4.288-r2726
@@ -0,0 +1,16 @@
+BDEPEND=dev-vcs/git sys-apps/debianutils
+DEFINED_PHASES=compile configure info install prepare setup unpack
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DESCRIPTION=Chrome OS Linux Kernel 4.4
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
+IUSE=cros_host cros_workon_tree_13bb9fb92bbfbdbb19ca1984dafdaf8568f3625e board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
+RESTRICT=binchecks mirror
+SLOT=0
+SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/4.4/R96-14244.0-1633340299.gcov.xz -> chromeos-kernel-4_4-R96-14244.0-1633340299.gcov.xz )
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=152184ce28f18dab71eb04430416f9a3
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_4-9999 b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_4-9999
index 0d4b84b..8383c20 100644
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-4_4-9999
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-4_4-9999
@@ -1,16 +1,16 @@
 BDEPEND=dev-vcs/git sys-apps/debianutils
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 DESCRIPTION=Chrome OS Linux Kernel 4.4
 EAPI=7
 HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
+IUSE=cros_host cros_workon_tree_ board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
 RESTRICT=binchecks mirror
 SLOT=0
-SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/4.4/R93-14021.0-1623663147.gcov.xz -> chromeos-kernel-4_4-R93-14021.0-1623663147.gcov.xz )
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5ea42567067c44f2f665f8cc48bd9615
+SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/4.4/R96-14244.0-1633340299.gcov.xz -> chromeos-kernel-4_4-R96-14244.0-1633340299.gcov.xz )
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=16e84800a6095ab8ab4420f43f705121
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-5_10-5.10.46-r477 b/metadata/md5-cache/sys-kernel/chromeos-kernel-5_10-5.10.46-r477
deleted file mode 100644
index 162f4b6..0000000
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-5_10-5.10.46-r477
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git sys-apps/debianutils
-DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
-DESCRIPTION=Chrome OS Linux Kernel 5.10
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_9a3e6b51afa8764e98a98e805c1ecd7ec2f041b2 board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
-RESTRICT=binchecks mirror
-SLOT=0
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=8c3c4c02f96c06c12247eec211368b05
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-5_10-5.10.72-r987 b/metadata/md5-cache/sys-kernel/chromeos-kernel-5_10-5.10.72-r987
new file mode 100644
index 0000000..0d6df25
--- /dev/null
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-5_10-5.10.72-r987
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git sys-apps/debianutils
+DEFINED_PHASES=compile configure info install prepare setup unpack
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DESCRIPTION=Chrome OS Linux Kernel 5.10
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
+IUSE=cros_host cros_workon_tree_112894f03eb300b63aa8d580f6a49b28c76a5721 board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
+RESTRICT=binchecks mirror
+SLOT=0
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=3e82437d1a95604b1d5bc5196902c7eb
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-5_10-9999 b/metadata/md5-cache/sys-kernel/chromeos-kernel-5_10-9999
index a3c5e52..12edcf9 100644
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-5_10-9999
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-5_10-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git sys-apps/debianutils
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 DESCRIPTION=Chrome OS Linux Kernel 5.10
 EAPI=7
 HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
+IUSE=cros_host cros_workon_tree_ board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
 RESTRICT=binchecks mirror
 SLOT=0
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ef8ef648bcee7182cfe602873192d895
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=369e16abb9cab692931bf30a84bae618
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-5_4-5.4.128-r2362 b/metadata/md5-cache/sys-kernel/chromeos-kernel-5_4-5.4.128-r2362
deleted file mode 100644
index e8dc3ff..0000000
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-5_4-5.4.128-r2362
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=dev-vcs/git sys-apps/debianutils
-DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
-DESCRIPTION=Chrome OS Linux Kernel 5.4
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_d2088f2a2ad01abfc14810345aa1f171011ad20a board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
-RESTRICT=binchecks mirror
-SLOT=0
-SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/5.4/R93-14021.0-1623663354.gcov.xz -> chromeos-kernel-5_4-R93-14021.0-1623663354.gcov.xz )
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=024efaccfca27870bc5a4a45332ea715
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-5_4-5.4.153-r2692 b/metadata/md5-cache/sys-kernel/chromeos-kernel-5_4-5.4.153-r2692
new file mode 100644
index 0000000..1629d30
--- /dev/null
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-5_4-5.4.153-r2692
@@ -0,0 +1,16 @@
+BDEPEND=dev-vcs/git sys-apps/debianutils
+DEFINED_PHASES=compile configure info install prepare setup unpack
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DESCRIPTION=Chrome OS Linux Kernel 5.4
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
+IUSE=cros_host cros_workon_tree_6de95a3b2f41af2e2388b0b0d16acbd716713a4d board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
+RESTRICT=binchecks mirror
+SLOT=0
+SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/5.4/R96-14244.0-1633339893.gcov.xz -> chromeos-kernel-5_4-R96-14244.0-1633339893.gcov.xz )
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=971e1b8ce5f75c108af1ddc132e5afe3
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-5_4-9999 b/metadata/md5-cache/sys-kernel/chromeos-kernel-5_4-9999
index 27b3603..e1fca80 100644
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-5_4-9999
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-5_4-9999
@@ -1,16 +1,16 @@
 BDEPEND=dev-vcs/git sys-apps/debianutils
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 DESCRIPTION=Chrome OS Linux Kernel 5.4
 EAPI=7
 HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
+IUSE=cros_host cros_workon_tree_ board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
 RESTRICT=binchecks mirror
 SLOT=0
-SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/5.4/R93-14021.0-1623663354.gcov.xz -> chromeos-kernel-5_4-R93-14021.0-1623663354.gcov.xz )
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4d3399fff3d11bae7638fe674a03c73e
+SRC_URI=kernel_afdo? ( gs://chromeos-prebuilt/afdo-job/cwp/kernel/5.4/R96-14244.0-1633339893.gcov.xz -> chromeos-kernel-5_4-R96-14244.0-1633339893.gcov.xz )
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=13bfea8bf0442af9d52fbc7531887b8a
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-experimental-4.18_rc2-r23 b/metadata/md5-cache/sys-kernel/chromeos-kernel-experimental-4.18_rc2-r23
index b19d355..50fc222 100644
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-experimental-4.18_rc2-r23
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-experimental-4.18_rc2-r23
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git sys-apps/debianutils
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 DESCRIPTION=Chrome OS Linux Kernel (experimental)
 EAPI=7
 HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_1e11905e9a7cd3f8925678d2dcc192026a35f442 board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
+IUSE=cros_host cros_workon_tree_1e11905e9a7cd3f8925678d2dcc192026a35f442 board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
 KEYWORDS=*
 LICENSE=GPL-2
 PROPERTIES=live
 REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
 RESTRICT=binchecks mirror
 SLOT=0
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=62de9888ac7f469d01e5f8be70666dd3
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-experimental-9999 b/metadata/md5-cache/sys-kernel/chromeos-kernel-experimental-9999
index 19cb832..ef3b9b4 100644
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-experimental-9999
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-experimental-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git sys-apps/debianutils
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 DESCRIPTION=Chrome OS Linux Kernel (experimental)
 EAPI=7
 HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
+IUSE=cros_host cros_workon_tree_ board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
 RESTRICT=binchecks mirror
 SLOT=0
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=3f72a511ed7cef04a3f208ec3c9262a8
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=34d5fc70048d7a0e952aa219cf292bb4
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-next-9999 b/metadata/md5-cache/sys-kernel/chromeos-kernel-next-9999
index 9a6dc43..5af5e09 100644
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-next-9999
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-next-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git sys-apps/debianutils
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 DESCRIPTION=Chrome OS Linux Kernel (next)
 EAPI=7
 HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
+IUSE=cros_host cros_workon_tree_ board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
 RESTRICT=binchecks mirror
 SLOT=0
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=312b277127e16395e68f76cd598a2570
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=8f290b516762f54b16f0bf0adf4a5788
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-upstream-5.13_rc7-r28 b/metadata/md5-cache/sys-kernel/chromeos-kernel-upstream-5.13_rc7-r28
deleted file mode 100644
index 192f332..0000000
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-upstream-5.13_rc7-r28
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git sys-apps/debianutils
-DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
-DESCRIPTION=Chrome OS Linux Kernel latest upstream rc
-EAPI=7
-HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_05cff5472871455d25debb0f398a4fa861e5a5c3 board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
-KEYWORDS=*
-LICENSE=GPL-2
-PROPERTIES=live
-REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
-RESTRICT=binchecks mirror
-SLOT=0
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=748a95c38db6ce21e2639b87914ab0f4
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-upstream-5.15_rc4-r45 b/metadata/md5-cache/sys-kernel/chromeos-kernel-upstream-5.15_rc4-r45
new file mode 100644
index 0000000..13f8e50
--- /dev/null
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-upstream-5.15_rc4-r45
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git sys-apps/debianutils
+DEFINED_PHASES=compile configure info install prepare setup unpack
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DESCRIPTION=Chrome OS Linux Kernel latest upstream rc
+EAPI=7
+HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
+IUSE=cros_host cros_workon_tree_9a99f338899927afd5e734348ad41b5a88274bfa board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
+KEYWORDS=*
+LICENSE=GPL-2
+PROPERTIES=live
+REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
+RESTRICT=binchecks mirror
+SLOT=0
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d7352b6a83dd6fac8bc294011af45615
diff --git a/metadata/md5-cache/sys-kernel/chromeos-kernel-upstream-9999 b/metadata/md5-cache/sys-kernel/chromeos-kernel-upstream-9999
index 59e9bfb..f678f2c 100644
--- a/metadata/md5-cache/sys-kernel/chromeos-kernel-upstream-9999
+++ b/metadata/md5-cache/sys-kernel/chromeos-kernel-upstream-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git sys-apps/debianutils
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 DESCRIPTION=Chrome OS Linux Kernel latest upstream rc
 EAPI=7
 HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
+IUSE=cros_host cros_workon_tree_ board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
 KEYWORDS=~*
 LICENSE=GPL-2
 PROPERTIES=live
 REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
 RESTRICT=binchecks mirror
 SLOT=0
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=dc3bf375324bc59ed9e58cf38c9b6033
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=08b053dac2e1b443a297c7f701e01888
diff --git a/metadata/md5-cache/sys-kernel/linux-firmware-0.0.1-r467 b/metadata/md5-cache/sys-kernel/linux-firmware-0.0.1-r467
deleted file mode 100644
index c92a774..0000000
--- a/metadata/md5-cache/sys-kernel/linux-firmware-0.0.1-r467
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-lang/python dev-vcs/git dev-vcs/git
-DEFINED_PHASES=info install setup test unpack
-DESCRIPTION=Firmware images from the upstream linux-fimware package
-EAPI=7
-HOMEPAGE=https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/
-IUSE=kernel-4_19 kernel-5_4 kernel-upstream linux_firmware_adreno-630 linux_firmware_adreno-660 linux_firmware_adsp_apl linux_firmware_adsp_cnl linux_firmware_adsp_glk linux_firmware_adsp_kbl linux_firmware_adsp_skl linux_firmware_ath9k_htc linux_firmware_ath10k_qca6174a-5 linux_firmware_ath10k_qca6174a-3 linux_firmware_ath10k_wcn3990 linux_firmware_amdgpu_carrizo linux_firmware_amdgpu_green_sardine linux_firmware_amdgpu_picasso linux_firmware_amdgpu_raven2 linux_firmware_amdgpu_renoir linux_firmware_amdgpu_stoney linux_firmware_amdgpu_vega12 linux_firmware_bcm4354-bt linux_firmware_cros-pd linux_firmware_fw_sst linux_firmware_fw_sst2 linux_firmware_i915_adl linux_firmware_i915_bxt linux_firmware_i915_cnl linux_firmware_i915_glk linux_firmware_i915_jsl linux_firmware_i915_kbl linux_firmware_i915_skl linux_firmware_i915_tgl linux_firmware_ibt_9260 linux_firmware_ibt_9560 linux_firmware_ibt_ax200 linux_firmware_ibt_ax201 linux_firmware_ibt-hw linux_firmware_ipu3_fw linux_firmware_keyspan_usb linux_firmware_marvell-mwlwifi linux_firmware_marvell-pcie8897 linux_firmware_marvell-pcie8997 linux_firmware_mt7921e linux_firmware_mt7921e-bt linux_firmware_mt8173-vpu linux_firmware_nvidia-xusb linux_firmware_qca6174a-3-bt linux_firmware_qca6174a-5-bt linux_firmware_qca-wcn3990-bt linux_firmware_qca-wcn3991-bt linux_firmware_rockchip-dptx linux_firmware_rt2870 linux_firmware_rtl8107e-1 linux_firmware_rtl8107e-2 linux_firmware_rtl8125a-3 linux_firmware_rtl8153 linux_firmware_rtl8168fp-3 linux_firmware_rtl8168g-1 linux_firmware_rtl8168g-2 linux_firmware_rtl8168h-1 linux_firmware_rtl8168h-2 linux_firmware_rtl_bt-8822ce-uart linux_firmware_rtl_bt-8822ce-usb linux_firmware_rtl_bt-8852ae-usb linux_firmware_rtw8822c linux_firmware_rtw8852a linux_firmware_venus-52 linux_firmware_venus-54 linux_firmware_ath3k-all linux_firmware_ath3k-ar3011 linux_firmware_ath3k-ar3012 linux_firmware_iwlwifi-all linux_firmware_iwlwifi-100 linux_firmware_iwlwifi-105 linux_firmware_iwlwifi-135 linux_firmware_iwlwifi-1000 linux_firmware_iwlwifi-1000 linux_firmware_iwlwifi-2000 linux_firmware_iwlwifi-2030 linux_firmware_iwlwifi-3160 linux_firmware_iwlwifi-3945 linux_firmware_iwlwifi-4965 linux_firmware_iwlwifi-5000 linux_firmware_iwlwifi-5150 linux_firmware_iwlwifi-6000 linux_firmware_iwlwifi-6005 linux_firmware_iwlwifi-6030 linux_firmware_iwlwifi-6050 linux_firmware_iwlwifi-7260 linux_firmware_iwlwifi-7265 linux_firmware_iwlwifi-7265D linux_firmware_iwlwifi-9000 linux_firmware_iwlwifi-9260 linux_firmware_iwlwifi-cc linux_firmware_iwlwifi-QuZ linux_firmware_brcmfmac-all linux_firmware_brcmfmac4354-sdio linux_firmware_brcmfmac4356-pcie linux_firmware_brcmfmac4371-pcie video_cards_radeon video_cards_amdgpu cros_host cros_workon_tree_88bba44e96f96f30758702983502712897feeafa
-KEYWORDS=*
-LICENSE=linux_firmware_adreno-630? ( LICENSE.qcom ) linux_firmware_adreno-660? ( LICENSE.qcom ) linux_firmware_adsp_apl? ( LICENCE.adsp_sst ) linux_firmware_adsp_cnl? ( LICENCE.adsp_sst ) linux_firmware_adsp_glk? ( LICENCE.adsp_sst ) linux_firmware_adsp_kbl? ( LICENCE.adsp_sst ) linux_firmware_adsp_skl? ( LICENCE.adsp_sst ) linux_firmware_amdgpu_carrizo? ( LICENSE.amdgpu ) linux_firmware_amdgpu_green_sardine? ( LICENSE.amdgpu ) linux_firmware_amdgpu_picasso? ( LICENSE.amdgpu ) linux_firmware_amdgpu_raven2? ( LICENSE.amdgpu ) linux_firmware_amdgpu_renoir? ( LICENSE.amdgpu ) linux_firmware_amdgpu_stoney? ( LICENSE.amdgpu ) linux_firmware_amdgpu_vega12? ( LICENSE.amdgpu ) linux_firmware_ath3k-all? ( LICENCE.atheros_firmware ) linux_firmware_ath3k-ar3011? ( LICENCE.atheros_firmware ) linux_firmware_ath3k-ar3012? ( LICENCE.atheros_firmware ) linux_firmware_ath9k_htc? ( LICENCE.atheros_firmware ) linux_firmware_ath10k_qca6174a-5? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_ath10k_qca6174a-3? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_ath10k_wcn3990? ( LICENCE.atheros_firmware ) linux_firmware_bcm4354-bt? ( LICENCE.broadcom_bcm43xx ) linux_firmware_cros-pd? ( BSD-Google ) linux_firmware_fw_sst? ( LICENCE.fw_sst ) linux_firmware_fw_sst2? ( LICENCE.IntcSST2 ) linux_firmware_i915_adl? ( LICENSE.i915 ) linux_firmware_i915_bxt? ( LICENSE.i915 ) linux_firmware_i915_cnl? ( LICENSE.i915 ) linux_firmware_i915_glk? ( LICENSE.i915 ) linux_firmware_i915_jsl? ( LICENSE.i915 ) linux_firmware_i915_kbl? ( LICENSE.i915 ) linux_firmware_i915_skl? ( LICENSE.i915 ) linux_firmware_i915_tgl? ( LICENSE.i915 ) linux_firmware_ipu3_fw? ( LICENSE.ipu3_firmware ) linux_firmware_ibt_9260? ( LICENCE.ibt_firmware ) linux_firmware_ibt_9560? ( LICENCE.ibt_firmware ) linux_firmware_ibt_ax200? ( LICENCE.ibt_firmware ) linux_firmware_ibt_ax201? ( LICENCE.ibt_firmware ) linux_firmware_ibt-hw? ( LICENCE.ibt_firmware ) linux_firmware_keyspan_usb? ( LICENSE.keyspan_usb ) linux_firmware_marvell-mwlwifi? ( LICENCE.Marvell ) linux_firmware_marvell-pcie8897? ( LICENCE.Marvell ) linux_firmware_marvell-pcie8997? ( LICENCE.Marvell ) linux_firmware_mt7921e? ( LICENCE.mediatek-nic ) linux_firmware_mt7921e-bt? ( LICENCE.mediatek-nic ) linux_firmware_mt8173-vpu? ( LICENCE.mediatek-vpu ) linux_firmware_nvidia-xusb? ( LICENCE.nvidia ) linux_firmware_qca6174a-3-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca6174a-5-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca-wcn3990-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca-wcn3991-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_rockchip-dptx? ( LICENCE.rockchip ) linux_firmware_rt2870? ( LICENCE.ralink-firmware.txt LICENCE.ralink_a_mediatek_company_firmware ) linux_firmware_rtl8107e-1? ( LICENCE.rtl_nic ) linux_firmware_rtl8107e-2? ( LICENCE.rtl_nic ) linux_firmware_rtl8125a-3? ( LICENCE.rtl_nic ) linux_firmware_rtl8153? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtl8168fp-3? ( LICENCE.rtl_nic ) linux_firmware_rtl8168g-1? ( LICENCE.rtl_nic ) linux_firmware_rtl8168g-2? ( LICENCE.rtl_nic ) linux_firmware_rtl8168h-1? ( LICENCE.rtl_nic ) linux_firmware_rtl8168h-2? ( LICENCE.rtl_nic ) linux_firmware_rtl_bt-8822ce-uart? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtl_bt-8822ce-usb? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtl_bt-8852ae-usb? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtw8822c? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtw8852a? ( LICENCE.rtlwifi_firmware ) linux_firmware_venus-52? ( LICENSE.qcom ) linux_firmware_venus-54? ( LICENSE.qcom ) linux_firmware_iwlwifi-all? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-100? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-105? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-135? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-1000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-1000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-2000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-2030? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-3160? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-3945? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-4965? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-5000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-5150? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6005? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6030? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6050? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-7260? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-7265? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-7265D? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-9000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-9260? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-cc? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-QuZ? ( LICENCE.iwlwifi_firmware ) linux_firmware_brcmfmac-all? ( LICENCE.broadcom_bcm43xx ) linux_firmware_brcmfmac4354-sdio? ( LICENCE.broadcom_bcm43xx ) linux_firmware_brcmfmac4356-pcie? ( LICENCE.broadcom_bcm43xx ) linux_firmware_brcmfmac4371-pcie? ( LICENCE.broadcom_bcm43xx ) video_cards_radeon? ( LICENSE.radeon ) video_cards_amdgpu? ( LICENSE.amdgpu )
-PROPERTIES=live
-RDEPEND=linux_firmware_adreno-630? ( !media-libs/a630-fw ) linux_firmware_adreno-630? ( !media-libs/a660-fw ) linux_firmware_ath3k-all? ( !net-wireless/ath3k ) linux_firmware_ath3k-ar3011? ( !net-wireless/ath3k ) linux_firmware_ath3k-ar3012? ( !net-wireless/ath3k ) linux_firmware_keyspan_usb? ( !sys-kernel/chromeos-kernel-3_18[firmware_install] !sys-kernel/chromeos-kernel-4_4[firmware_install] ) linux_firmware_marvell-pcie8897? ( !net-wireless/marvell_sd8787[pcie] ) linux_firmware_marvell-pcie8997? ( !net-wireless/marvell_sd8787[pcie] ) linux_firmware_mt8173-vpu? ( !media-libs/vpu-fw ) linux_firmware_nvidia-xusb? ( !sys-kernel/xhci-firmware ) linux_firmware_rt2870? ( !net-wireless/realtek-rt2800-firmware ) !net-wireless/ath6k !net-wireless/ath10k !net-wireless/iwl1000-ucode !net-wireless/iwl2000-ucode !net-wireless/iwl2030-ucode !net-wireless/iwl3945-ucode !net-wireless/iwl4965-ucode !net-wireless/iwl5000-ucode !net-wireless/iwl6000-ucode !net-wireless/iwl6005-ucode !net-wireless/iwl6030-ucode !net-wireless/iwl6050-ucode
-REQUIRED_USE=?? ( kernel-4_19 kernel-5_4 kernel-upstream )
-RESTRICT=binchecks strip
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=2c2a4b799779d98bc541d24f551921f5
diff --git a/metadata/md5-cache/sys-kernel/linux-firmware-0.0.1-r493 b/metadata/md5-cache/sys-kernel/linux-firmware-0.0.1-r493
new file mode 100644
index 0000000..1e39c30
--- /dev/null
+++ b/metadata/md5-cache/sys-kernel/linux-firmware-0.0.1-r493
@@ -0,0 +1,15 @@
+BDEPEND=dev-lang/python dev-vcs/git dev-vcs/git
+DEFINED_PHASES=info install setup test unpack
+DESCRIPTION=Firmware images from the upstream linux-fimware package
+EAPI=7
+HOMEPAGE=https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/
+IUSE=kernel-4_19 kernel-5_4 kernel-upstream linux_firmware_adreno-630 linux_firmware_adreno-660 linux_firmware_adsp_apl linux_firmware_adsp_cnl linux_firmware_adsp_glk linux_firmware_adsp_kbl linux_firmware_adsp_skl linux_firmware_ath9k_htc linux_firmware_ath10k_qca6174a-5 linux_firmware_ath10k_qca6174a-3 linux_firmware_ath10k_wcn3990 linux_firmware_ath11k_wcn6855 linux_firmware_amdgpu_carrizo linux_firmware_amdgpu_green_sardine linux_firmware_amdgpu_picasso linux_firmware_amdgpu_raven2 linux_firmware_amdgpu_renoir linux_firmware_amdgpu_stoney linux_firmware_amdgpu_vega12 linux_firmware_bcm4354-bt linux_firmware_cros-pd linux_firmware_fw_sst linux_firmware_fw_sst2 linux_firmware_i915_adl linux_firmware_i915_bxt linux_firmware_i915_cnl linux_firmware_i915_glk linux_firmware_i915_jsl linux_firmware_i915_kbl linux_firmware_i915_skl linux_firmware_i915_tgl linux_firmware_ibt_9260 linux_firmware_ibt_9560 linux_firmware_ibt_ax200 linux_firmware_ibt_ax201 linux_firmware_ibt_ax211 linux_firmware_ibt-hw linux_firmware_ipu3_fw linux_firmware_keyspan_usb linux_firmware_marvell-mwlwifi linux_firmware_marvell-pcie8897 linux_firmware_marvell-pcie8997 linux_firmware_mt7921e linux_firmware_mt7921e-bt linux_firmware_mt8173-vpu linux_firmware_nvidia-xusb linux_firmware_qca6174a-3-bt linux_firmware_qca6174a-5-bt linux_firmware_qca-wcn3990-bt linux_firmware_qca-wcn3991-bt linux_firmware_qca-wcn685x-bt linux_firmware_rockchip-dptx linux_firmware_rt2870 linux_firmware_rtl8107e-1 linux_firmware_rtl8107e-2 linux_firmware_rtl8125a-3 linux_firmware_rtl8153 linux_firmware_rtl8168fp-3 linux_firmware_rtl8168g-1 linux_firmware_rtl8168g-2 linux_firmware_rtl8168h-1 linux_firmware_rtl8168h-2 linux_firmware_rtl_bt-8822ce-uart linux_firmware_rtl_bt-8822ce-usb linux_firmware_rtl_bt-8852ae-usb linux_firmware_rtw8822c linux_firmware_rtw8852a linux_firmware_venus-52 linux_firmware_venus-54 linux_firmware_venus-vpu-2 linux_firmware_ath3k-all linux_firmware_ath3k-ar3011 linux_firmware_ath3k-ar3012 linux_firmware_iwlwifi-all linux_firmware_iwlwifi-100 linux_firmware_iwlwifi-105 linux_firmware_iwlwifi-135 linux_firmware_iwlwifi-1000 linux_firmware_iwlwifi-1000 linux_firmware_iwlwifi-2000 linux_firmware_iwlwifi-2030 linux_firmware_iwlwifi-3160 linux_firmware_iwlwifi-3945 linux_firmware_iwlwifi-4965 linux_firmware_iwlwifi-5000 linux_firmware_iwlwifi-5150 linux_firmware_iwlwifi-6000 linux_firmware_iwlwifi-6005 linux_firmware_iwlwifi-6030 linux_firmware_iwlwifi-6050 linux_firmware_iwlwifi-7260 linux_firmware_iwlwifi-7265 linux_firmware_iwlwifi-7265D linux_firmware_iwlwifi-9000 linux_firmware_iwlwifi-9260 linux_firmware_iwlwifi-cc linux_firmware_iwlwifi-QuZ linux_firmware_iwlwifi-so linux_firmware_brcmfmac-all linux_firmware_brcmfmac4354-sdio linux_firmware_brcmfmac4356-pcie linux_firmware_brcmfmac4371-pcie video_cards_radeon video_cards_amdgpu cros_host cros_workon_tree_2d91d63b8e88955ece22fe15bcddcf7750194ee9
+KEYWORDS=*
+LICENSE=linux_firmware_adreno-630? ( LICENSE.qcom ) linux_firmware_adreno-660? ( LICENSE.qcom ) linux_firmware_adsp_apl? ( LICENCE.adsp_sst ) linux_firmware_adsp_cnl? ( LICENCE.adsp_sst ) linux_firmware_adsp_glk? ( LICENCE.adsp_sst ) linux_firmware_adsp_kbl? ( LICENCE.adsp_sst ) linux_firmware_adsp_skl? ( LICENCE.adsp_sst ) linux_firmware_amdgpu_carrizo? ( LICENSE.amdgpu ) linux_firmware_amdgpu_green_sardine? ( LICENSE.amdgpu ) linux_firmware_amdgpu_picasso? ( LICENSE.amdgpu ) linux_firmware_amdgpu_raven2? ( LICENSE.amdgpu ) linux_firmware_amdgpu_renoir? ( LICENSE.amdgpu ) linux_firmware_amdgpu_stoney? ( LICENSE.amdgpu ) linux_firmware_amdgpu_vega12? ( LICENSE.amdgpu ) linux_firmware_ath3k-all? ( LICENCE.atheros_firmware ) linux_firmware_ath3k-ar3011? ( LICENCE.atheros_firmware ) linux_firmware_ath3k-ar3012? ( LICENCE.atheros_firmware ) linux_firmware_ath9k_htc? ( LICENCE.atheros_firmware ) linux_firmware_ath10k_qca6174a-5? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_ath10k_qca6174a-3? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_ath10k_wcn3990? ( LICENCE.atheros_firmware ) linux_firmware_ath11k_wcn6855? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_bcm4354-bt? ( LICENCE.broadcom_bcm43xx ) linux_firmware_cros-pd? ( BSD-Google ) linux_firmware_fw_sst? ( LICENCE.fw_sst ) linux_firmware_fw_sst2? ( LICENCE.IntcSST2 ) linux_firmware_i915_adl? ( LICENSE.i915 ) linux_firmware_i915_bxt? ( LICENSE.i915 ) linux_firmware_i915_cnl? ( LICENSE.i915 ) linux_firmware_i915_glk? ( LICENSE.i915 ) linux_firmware_i915_jsl? ( LICENSE.i915 ) linux_firmware_i915_kbl? ( LICENSE.i915 ) linux_firmware_i915_skl? ( LICENSE.i915 ) linux_firmware_i915_tgl? ( LICENSE.i915 ) linux_firmware_ipu3_fw? ( LICENSE.ipu3_firmware ) linux_firmware_ibt_9260? ( LICENCE.ibt_firmware ) linux_firmware_ibt_9560? ( LICENCE.ibt_firmware ) linux_firmware_ibt_ax200? ( LICENCE.ibt_firmware ) linux_firmware_ibt_ax201? ( LICENCE.ibt_firmware ) linux_firmware_ibt_ax211? ( LICENCE.ibt_firmware ) linux_firmware_ibt-hw? ( LICENCE.ibt_firmware ) linux_firmware_keyspan_usb? ( LICENSE.keyspan_usb ) linux_firmware_marvell-mwlwifi? ( LICENCE.Marvell ) linux_firmware_marvell-pcie8897? ( LICENCE.NXP ) linux_firmware_marvell-pcie8997? ( LICENCE.NXP ) linux_firmware_mt7921e? ( LICENCE.mediatek-nic ) linux_firmware_mt7921e-bt? ( LICENCE.mediatek-nic ) linux_firmware_mt8173-vpu? ( LICENCE.mediatek-vpu ) linux_firmware_nvidia-xusb? ( LICENCE.nvidia ) linux_firmware_qca6174a-3-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca6174a-5-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca-wcn3990-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca-wcn3991-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca-wcn685x-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_rockchip-dptx? ( LICENCE.rockchip ) linux_firmware_rt2870? ( LICENCE.ralink-firmware.txt LICENCE.ralink_a_mediatek_company_firmware ) linux_firmware_rtl8107e-1? ( LICENCE.rtl_nic ) linux_firmware_rtl8107e-2? ( LICENCE.rtl_nic ) linux_firmware_rtl8125a-3? ( LICENCE.rtl_nic ) linux_firmware_rtl8153? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtl8168fp-3? ( LICENCE.rtl_nic ) linux_firmware_rtl8168g-1? ( LICENCE.rtl_nic ) linux_firmware_rtl8168g-2? ( LICENCE.rtl_nic ) linux_firmware_rtl8168h-1? ( LICENCE.rtl_nic ) linux_firmware_rtl8168h-2? ( LICENCE.rtl_nic ) linux_firmware_rtl_bt-8822ce-uart? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtl_bt-8822ce-usb? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtl_bt-8852ae-usb? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtw8822c? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtw8852a? ( LICENCE.rtlwifi_firmware ) linux_firmware_venus-52? ( LICENSE.qcom ) linux_firmware_venus-54? ( LICENSE.qcom ) linux_firmware_venus-vpu-2? ( LICENSE.qcom ) linux_firmware_iwlwifi-all? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-100? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-105? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-135? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-1000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-1000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-2000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-2030? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-3160? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-3945? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-4965? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-5000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-5150? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6005? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6030? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6050? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-7260? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-7265? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-7265D? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-9000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-9260? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-cc? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-QuZ? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-so? ( LICENCE.iwlwifi_firmware ) linux_firmware_brcmfmac-all? ( LICENCE.broadcom_bcm43xx ) linux_firmware_brcmfmac4354-sdio? ( LICENCE.broadcom_bcm43xx ) linux_firmware_brcmfmac4356-pcie? ( LICENCE.broadcom_bcm43xx ) linux_firmware_brcmfmac4371-pcie? ( LICENCE.broadcom_bcm43xx ) video_cards_radeon? ( LICENSE.radeon ) video_cards_amdgpu? ( LICENSE.amdgpu )
+PROPERTIES=live
+RDEPEND=linux_firmware_adreno-630? ( !media-libs/a630-fw ) linux_firmware_adreno-630? ( !media-libs/a660-fw ) linux_firmware_ath3k-all? ( !net-wireless/ath3k ) linux_firmware_ath3k-ar3011? ( !net-wireless/ath3k ) linux_firmware_ath3k-ar3012? ( !net-wireless/ath3k ) linux_firmware_keyspan_usb? ( !sys-kernel/chromeos-kernel-3_18[firmware_install] !sys-kernel/chromeos-kernel-4_4[firmware_install] ) linux_firmware_marvell-pcie8897? ( !net-wireless/marvell_sd8787[pcie] ) linux_firmware_marvell-pcie8997? ( !net-wireless/marvell_sd8787[pcie] ) linux_firmware_mt8173-vpu? ( !media-libs/vpu-fw ) linux_firmware_nvidia-xusb? ( !sys-kernel/xhci-firmware ) linux_firmware_rt2870? ( !net-wireless/realtek-rt2800-firmware ) !net-wireless/ath6k !net-wireless/ath10k !net-wireless/iwl1000-ucode !net-wireless/iwl2000-ucode !net-wireless/iwl2030-ucode !net-wireless/iwl3945-ucode !net-wireless/iwl4965-ucode !net-wireless/iwl5000-ucode !net-wireless/iwl6000-ucode !net-wireless/iwl6005-ucode !net-wireless/iwl6030-ucode !net-wireless/iwl6050-ucode !sys-kernel/iwlwifi-gfp2-private
+REQUIRED_USE=?? ( kernel-4_19 kernel-5_4 kernel-upstream )
+RESTRICT=binchecks strip
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=dcc94fab0d11961d85f3170f546cce2b
diff --git a/metadata/md5-cache/sys-kernel/linux-firmware-9999 b/metadata/md5-cache/sys-kernel/linux-firmware-9999
index c42c725..43c1d02d 100644
--- a/metadata/md5-cache/sys-kernel/linux-firmware-9999
+++ b/metadata/md5-cache/sys-kernel/linux-firmware-9999
@@ -3,13 +3,13 @@
 DESCRIPTION=Firmware images from the upstream linux-fimware package
 EAPI=7
 HOMEPAGE=https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/
-IUSE=kernel-4_19 kernel-5_4 kernel-upstream linux_firmware_adreno-630 linux_firmware_adreno-660 linux_firmware_adsp_apl linux_firmware_adsp_cnl linux_firmware_adsp_glk linux_firmware_adsp_kbl linux_firmware_adsp_skl linux_firmware_ath9k_htc linux_firmware_ath10k_qca6174a-5 linux_firmware_ath10k_qca6174a-3 linux_firmware_ath10k_wcn3990 linux_firmware_amdgpu_carrizo linux_firmware_amdgpu_green_sardine linux_firmware_amdgpu_picasso linux_firmware_amdgpu_raven2 linux_firmware_amdgpu_renoir linux_firmware_amdgpu_stoney linux_firmware_amdgpu_vega12 linux_firmware_bcm4354-bt linux_firmware_cros-pd linux_firmware_fw_sst linux_firmware_fw_sst2 linux_firmware_i915_adl linux_firmware_i915_bxt linux_firmware_i915_cnl linux_firmware_i915_glk linux_firmware_i915_jsl linux_firmware_i915_kbl linux_firmware_i915_skl linux_firmware_i915_tgl linux_firmware_ibt_9260 linux_firmware_ibt_9560 linux_firmware_ibt_ax200 linux_firmware_ibt_ax201 linux_firmware_ibt-hw linux_firmware_ipu3_fw linux_firmware_keyspan_usb linux_firmware_marvell-mwlwifi linux_firmware_marvell-pcie8897 linux_firmware_marvell-pcie8997 linux_firmware_mt7921e linux_firmware_mt7921e-bt linux_firmware_mt8173-vpu linux_firmware_nvidia-xusb linux_firmware_qca6174a-3-bt linux_firmware_qca6174a-5-bt linux_firmware_qca-wcn3990-bt linux_firmware_qca-wcn3991-bt linux_firmware_rockchip-dptx linux_firmware_rt2870 linux_firmware_rtl8107e-1 linux_firmware_rtl8107e-2 linux_firmware_rtl8125a-3 linux_firmware_rtl8153 linux_firmware_rtl8168fp-3 linux_firmware_rtl8168g-1 linux_firmware_rtl8168g-2 linux_firmware_rtl8168h-1 linux_firmware_rtl8168h-2 linux_firmware_rtl_bt-8822ce-uart linux_firmware_rtl_bt-8822ce-usb linux_firmware_rtl_bt-8852ae-usb linux_firmware_rtw8822c linux_firmware_rtw8852a linux_firmware_venus-52 linux_firmware_venus-54 linux_firmware_ath3k-all linux_firmware_ath3k-ar3011 linux_firmware_ath3k-ar3012 linux_firmware_iwlwifi-all linux_firmware_iwlwifi-100 linux_firmware_iwlwifi-105 linux_firmware_iwlwifi-135 linux_firmware_iwlwifi-1000 linux_firmware_iwlwifi-1000 linux_firmware_iwlwifi-2000 linux_firmware_iwlwifi-2030 linux_firmware_iwlwifi-3160 linux_firmware_iwlwifi-3945 linux_firmware_iwlwifi-4965 linux_firmware_iwlwifi-5000 linux_firmware_iwlwifi-5150 linux_firmware_iwlwifi-6000 linux_firmware_iwlwifi-6005 linux_firmware_iwlwifi-6030 linux_firmware_iwlwifi-6050 linux_firmware_iwlwifi-7260 linux_firmware_iwlwifi-7265 linux_firmware_iwlwifi-7265D linux_firmware_iwlwifi-9000 linux_firmware_iwlwifi-9260 linux_firmware_iwlwifi-cc linux_firmware_iwlwifi-QuZ linux_firmware_brcmfmac-all linux_firmware_brcmfmac4354-sdio linux_firmware_brcmfmac4356-pcie linux_firmware_brcmfmac4371-pcie video_cards_radeon video_cards_amdgpu cros_host cros_workon_tree_
+IUSE=kernel-4_19 kernel-5_4 kernel-upstream linux_firmware_adreno-630 linux_firmware_adreno-660 linux_firmware_adsp_apl linux_firmware_adsp_cnl linux_firmware_adsp_glk linux_firmware_adsp_kbl linux_firmware_adsp_skl linux_firmware_ath9k_htc linux_firmware_ath10k_qca6174a-5 linux_firmware_ath10k_qca6174a-3 linux_firmware_ath10k_wcn3990 linux_firmware_ath11k_wcn6855 linux_firmware_amdgpu_carrizo linux_firmware_amdgpu_green_sardine linux_firmware_amdgpu_picasso linux_firmware_amdgpu_raven2 linux_firmware_amdgpu_renoir linux_firmware_amdgpu_stoney linux_firmware_amdgpu_vega12 linux_firmware_bcm4354-bt linux_firmware_cros-pd linux_firmware_fw_sst linux_firmware_fw_sst2 linux_firmware_i915_adl linux_firmware_i915_bxt linux_firmware_i915_cnl linux_firmware_i915_glk linux_firmware_i915_jsl linux_firmware_i915_kbl linux_firmware_i915_skl linux_firmware_i915_tgl linux_firmware_ibt_9260 linux_firmware_ibt_9560 linux_firmware_ibt_ax200 linux_firmware_ibt_ax201 linux_firmware_ibt_ax211 linux_firmware_ibt-hw linux_firmware_ipu3_fw linux_firmware_keyspan_usb linux_firmware_marvell-mwlwifi linux_firmware_marvell-pcie8897 linux_firmware_marvell-pcie8997 linux_firmware_mt7921e linux_firmware_mt7921e-bt linux_firmware_mt8173-vpu linux_firmware_nvidia-xusb linux_firmware_qca6174a-3-bt linux_firmware_qca6174a-5-bt linux_firmware_qca-wcn3990-bt linux_firmware_qca-wcn3991-bt linux_firmware_qca-wcn685x-bt linux_firmware_rockchip-dptx linux_firmware_rt2870 linux_firmware_rtl8107e-1 linux_firmware_rtl8107e-2 linux_firmware_rtl8125a-3 linux_firmware_rtl8153 linux_firmware_rtl8168fp-3 linux_firmware_rtl8168g-1 linux_firmware_rtl8168g-2 linux_firmware_rtl8168h-1 linux_firmware_rtl8168h-2 linux_firmware_rtl_bt-8822ce-uart linux_firmware_rtl_bt-8822ce-usb linux_firmware_rtl_bt-8852ae-usb linux_firmware_rtw8822c linux_firmware_rtw8852a linux_firmware_venus-52 linux_firmware_venus-54 linux_firmware_venus-vpu-2 linux_firmware_ath3k-all linux_firmware_ath3k-ar3011 linux_firmware_ath3k-ar3012 linux_firmware_iwlwifi-all linux_firmware_iwlwifi-100 linux_firmware_iwlwifi-105 linux_firmware_iwlwifi-135 linux_firmware_iwlwifi-1000 linux_firmware_iwlwifi-1000 linux_firmware_iwlwifi-2000 linux_firmware_iwlwifi-2030 linux_firmware_iwlwifi-3160 linux_firmware_iwlwifi-3945 linux_firmware_iwlwifi-4965 linux_firmware_iwlwifi-5000 linux_firmware_iwlwifi-5150 linux_firmware_iwlwifi-6000 linux_firmware_iwlwifi-6005 linux_firmware_iwlwifi-6030 linux_firmware_iwlwifi-6050 linux_firmware_iwlwifi-7260 linux_firmware_iwlwifi-7265 linux_firmware_iwlwifi-7265D linux_firmware_iwlwifi-9000 linux_firmware_iwlwifi-9260 linux_firmware_iwlwifi-cc linux_firmware_iwlwifi-QuZ linux_firmware_iwlwifi-so linux_firmware_brcmfmac-all linux_firmware_brcmfmac4354-sdio linux_firmware_brcmfmac4356-pcie linux_firmware_brcmfmac4371-pcie video_cards_radeon video_cards_amdgpu cros_host cros_workon_tree_
 KEYWORDS=~*
-LICENSE=linux_firmware_adreno-630? ( LICENSE.qcom ) linux_firmware_adreno-660? ( LICENSE.qcom ) linux_firmware_adsp_apl? ( LICENCE.adsp_sst ) linux_firmware_adsp_cnl? ( LICENCE.adsp_sst ) linux_firmware_adsp_glk? ( LICENCE.adsp_sst ) linux_firmware_adsp_kbl? ( LICENCE.adsp_sst ) linux_firmware_adsp_skl? ( LICENCE.adsp_sst ) linux_firmware_amdgpu_carrizo? ( LICENSE.amdgpu ) linux_firmware_amdgpu_green_sardine? ( LICENSE.amdgpu ) linux_firmware_amdgpu_picasso? ( LICENSE.amdgpu ) linux_firmware_amdgpu_raven2? ( LICENSE.amdgpu ) linux_firmware_amdgpu_renoir? ( LICENSE.amdgpu ) linux_firmware_amdgpu_stoney? ( LICENSE.amdgpu ) linux_firmware_amdgpu_vega12? ( LICENSE.amdgpu ) linux_firmware_ath3k-all? ( LICENCE.atheros_firmware ) linux_firmware_ath3k-ar3011? ( LICENCE.atheros_firmware ) linux_firmware_ath3k-ar3012? ( LICENCE.atheros_firmware ) linux_firmware_ath9k_htc? ( LICENCE.atheros_firmware ) linux_firmware_ath10k_qca6174a-5? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_ath10k_qca6174a-3? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_ath10k_wcn3990? ( LICENCE.atheros_firmware ) linux_firmware_bcm4354-bt? ( LICENCE.broadcom_bcm43xx ) linux_firmware_cros-pd? ( BSD-Google ) linux_firmware_fw_sst? ( LICENCE.fw_sst ) linux_firmware_fw_sst2? ( LICENCE.IntcSST2 ) linux_firmware_i915_adl? ( LICENSE.i915 ) linux_firmware_i915_bxt? ( LICENSE.i915 ) linux_firmware_i915_cnl? ( LICENSE.i915 ) linux_firmware_i915_glk? ( LICENSE.i915 ) linux_firmware_i915_jsl? ( LICENSE.i915 ) linux_firmware_i915_kbl? ( LICENSE.i915 ) linux_firmware_i915_skl? ( LICENSE.i915 ) linux_firmware_i915_tgl? ( LICENSE.i915 ) linux_firmware_ipu3_fw? ( LICENSE.ipu3_firmware ) linux_firmware_ibt_9260? ( LICENCE.ibt_firmware ) linux_firmware_ibt_9560? ( LICENCE.ibt_firmware ) linux_firmware_ibt_ax200? ( LICENCE.ibt_firmware ) linux_firmware_ibt_ax201? ( LICENCE.ibt_firmware ) linux_firmware_ibt-hw? ( LICENCE.ibt_firmware ) linux_firmware_keyspan_usb? ( LICENSE.keyspan_usb ) linux_firmware_marvell-mwlwifi? ( LICENCE.Marvell ) linux_firmware_marvell-pcie8897? ( LICENCE.Marvell ) linux_firmware_marvell-pcie8997? ( LICENCE.Marvell ) linux_firmware_mt7921e? ( LICENCE.mediatek-nic ) linux_firmware_mt7921e-bt? ( LICENCE.mediatek-nic ) linux_firmware_mt8173-vpu? ( LICENCE.mediatek-vpu ) linux_firmware_nvidia-xusb? ( LICENCE.nvidia ) linux_firmware_qca6174a-3-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca6174a-5-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca-wcn3990-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca-wcn3991-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_rockchip-dptx? ( LICENCE.rockchip ) linux_firmware_rt2870? ( LICENCE.ralink-firmware.txt LICENCE.ralink_a_mediatek_company_firmware ) linux_firmware_rtl8107e-1? ( LICENCE.rtl_nic ) linux_firmware_rtl8107e-2? ( LICENCE.rtl_nic ) linux_firmware_rtl8125a-3? ( LICENCE.rtl_nic ) linux_firmware_rtl8153? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtl8168fp-3? ( LICENCE.rtl_nic ) linux_firmware_rtl8168g-1? ( LICENCE.rtl_nic ) linux_firmware_rtl8168g-2? ( LICENCE.rtl_nic ) linux_firmware_rtl8168h-1? ( LICENCE.rtl_nic ) linux_firmware_rtl8168h-2? ( LICENCE.rtl_nic ) linux_firmware_rtl_bt-8822ce-uart? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtl_bt-8822ce-usb? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtl_bt-8852ae-usb? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtw8822c? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtw8852a? ( LICENCE.rtlwifi_firmware ) linux_firmware_venus-52? ( LICENSE.qcom ) linux_firmware_venus-54? ( LICENSE.qcom ) linux_firmware_iwlwifi-all? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-100? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-105? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-135? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-1000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-1000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-2000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-2030? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-3160? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-3945? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-4965? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-5000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-5150? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6005? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6030? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6050? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-7260? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-7265? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-7265D? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-9000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-9260? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-cc? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-QuZ? ( LICENCE.iwlwifi_firmware ) linux_firmware_brcmfmac-all? ( LICENCE.broadcom_bcm43xx ) linux_firmware_brcmfmac4354-sdio? ( LICENCE.broadcom_bcm43xx ) linux_firmware_brcmfmac4356-pcie? ( LICENCE.broadcom_bcm43xx ) linux_firmware_brcmfmac4371-pcie? ( LICENCE.broadcom_bcm43xx ) video_cards_radeon? ( LICENSE.radeon ) video_cards_amdgpu? ( LICENSE.amdgpu )
+LICENSE=linux_firmware_adreno-630? ( LICENSE.qcom ) linux_firmware_adreno-660? ( LICENSE.qcom ) linux_firmware_adsp_apl? ( LICENCE.adsp_sst ) linux_firmware_adsp_cnl? ( LICENCE.adsp_sst ) linux_firmware_adsp_glk? ( LICENCE.adsp_sst ) linux_firmware_adsp_kbl? ( LICENCE.adsp_sst ) linux_firmware_adsp_skl? ( LICENCE.adsp_sst ) linux_firmware_amdgpu_carrizo? ( LICENSE.amdgpu ) linux_firmware_amdgpu_green_sardine? ( LICENSE.amdgpu ) linux_firmware_amdgpu_picasso? ( LICENSE.amdgpu ) linux_firmware_amdgpu_raven2? ( LICENSE.amdgpu ) linux_firmware_amdgpu_renoir? ( LICENSE.amdgpu ) linux_firmware_amdgpu_stoney? ( LICENSE.amdgpu ) linux_firmware_amdgpu_vega12? ( LICENSE.amdgpu ) linux_firmware_ath3k-all? ( LICENCE.atheros_firmware ) linux_firmware_ath3k-ar3011? ( LICENCE.atheros_firmware ) linux_firmware_ath3k-ar3012? ( LICENCE.atheros_firmware ) linux_firmware_ath9k_htc? ( LICENCE.atheros_firmware ) linux_firmware_ath10k_qca6174a-5? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_ath10k_qca6174a-3? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_ath10k_wcn3990? ( LICENCE.atheros_firmware ) linux_firmware_ath11k_wcn6855? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_bcm4354-bt? ( LICENCE.broadcom_bcm43xx ) linux_firmware_cros-pd? ( BSD-Google ) linux_firmware_fw_sst? ( LICENCE.fw_sst ) linux_firmware_fw_sst2? ( LICENCE.IntcSST2 ) linux_firmware_i915_adl? ( LICENSE.i915 ) linux_firmware_i915_bxt? ( LICENSE.i915 ) linux_firmware_i915_cnl? ( LICENSE.i915 ) linux_firmware_i915_glk? ( LICENSE.i915 ) linux_firmware_i915_jsl? ( LICENSE.i915 ) linux_firmware_i915_kbl? ( LICENSE.i915 ) linux_firmware_i915_skl? ( LICENSE.i915 ) linux_firmware_i915_tgl? ( LICENSE.i915 ) linux_firmware_ipu3_fw? ( LICENSE.ipu3_firmware ) linux_firmware_ibt_9260? ( LICENCE.ibt_firmware ) linux_firmware_ibt_9560? ( LICENCE.ibt_firmware ) linux_firmware_ibt_ax200? ( LICENCE.ibt_firmware ) linux_firmware_ibt_ax201? ( LICENCE.ibt_firmware ) linux_firmware_ibt_ax211? ( LICENCE.ibt_firmware ) linux_firmware_ibt-hw? ( LICENCE.ibt_firmware ) linux_firmware_keyspan_usb? ( LICENSE.keyspan_usb ) linux_firmware_marvell-mwlwifi? ( LICENCE.Marvell ) linux_firmware_marvell-pcie8897? ( LICENCE.NXP ) linux_firmware_marvell-pcie8997? ( LICENCE.NXP ) linux_firmware_mt7921e? ( LICENCE.mediatek-nic ) linux_firmware_mt7921e-bt? ( LICENCE.mediatek-nic ) linux_firmware_mt8173-vpu? ( LICENCE.mediatek-vpu ) linux_firmware_nvidia-xusb? ( LICENCE.nvidia ) linux_firmware_qca6174a-3-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca6174a-5-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca-wcn3990-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca-wcn3991-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_qca-wcn685x-bt? ( LICENSE.QualcommAtheros_ath10k ) linux_firmware_rockchip-dptx? ( LICENCE.rockchip ) linux_firmware_rt2870? ( LICENCE.ralink-firmware.txt LICENCE.ralink_a_mediatek_company_firmware ) linux_firmware_rtl8107e-1? ( LICENCE.rtl_nic ) linux_firmware_rtl8107e-2? ( LICENCE.rtl_nic ) linux_firmware_rtl8125a-3? ( LICENCE.rtl_nic ) linux_firmware_rtl8153? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtl8168fp-3? ( LICENCE.rtl_nic ) linux_firmware_rtl8168g-1? ( LICENCE.rtl_nic ) linux_firmware_rtl8168g-2? ( LICENCE.rtl_nic ) linux_firmware_rtl8168h-1? ( LICENCE.rtl_nic ) linux_firmware_rtl8168h-2? ( LICENCE.rtl_nic ) linux_firmware_rtl_bt-8822ce-uart? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtl_bt-8822ce-usb? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtl_bt-8852ae-usb? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtw8822c? ( LICENCE.rtlwifi_firmware ) linux_firmware_rtw8852a? ( LICENCE.rtlwifi_firmware ) linux_firmware_venus-52? ( LICENSE.qcom ) linux_firmware_venus-54? ( LICENSE.qcom ) linux_firmware_venus-vpu-2? ( LICENSE.qcom ) linux_firmware_iwlwifi-all? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-100? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-105? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-135? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-1000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-1000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-2000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-2030? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-3160? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-3945? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-4965? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-5000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-5150? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6005? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6030? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-6050? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-7260? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-7265? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-7265D? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-9000? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-9260? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-cc? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-QuZ? ( LICENCE.iwlwifi_firmware ) linux_firmware_iwlwifi-so? ( LICENCE.iwlwifi_firmware ) linux_firmware_brcmfmac-all? ( LICENCE.broadcom_bcm43xx ) linux_firmware_brcmfmac4354-sdio? ( LICENCE.broadcom_bcm43xx ) linux_firmware_brcmfmac4356-pcie? ( LICENCE.broadcom_bcm43xx ) linux_firmware_brcmfmac4371-pcie? ( LICENCE.broadcom_bcm43xx ) video_cards_radeon? ( LICENSE.radeon ) video_cards_amdgpu? ( LICENSE.amdgpu )
 PROPERTIES=live
-RDEPEND=linux_firmware_adreno-630? ( !media-libs/a630-fw ) linux_firmware_adreno-630? ( !media-libs/a660-fw ) linux_firmware_ath3k-all? ( !net-wireless/ath3k ) linux_firmware_ath3k-ar3011? ( !net-wireless/ath3k ) linux_firmware_ath3k-ar3012? ( !net-wireless/ath3k ) linux_firmware_keyspan_usb? ( !sys-kernel/chromeos-kernel-3_18[firmware_install] !sys-kernel/chromeos-kernel-4_4[firmware_install] ) linux_firmware_marvell-pcie8897? ( !net-wireless/marvell_sd8787[pcie] ) linux_firmware_marvell-pcie8997? ( !net-wireless/marvell_sd8787[pcie] ) linux_firmware_mt8173-vpu? ( !media-libs/vpu-fw ) linux_firmware_nvidia-xusb? ( !sys-kernel/xhci-firmware ) linux_firmware_rt2870? ( !net-wireless/realtek-rt2800-firmware ) !net-wireless/ath6k !net-wireless/ath10k !net-wireless/iwl1000-ucode !net-wireless/iwl2000-ucode !net-wireless/iwl2030-ucode !net-wireless/iwl3945-ucode !net-wireless/iwl4965-ucode !net-wireless/iwl5000-ucode !net-wireless/iwl6000-ucode !net-wireless/iwl6005-ucode !net-wireless/iwl6030-ucode !net-wireless/iwl6050-ucode
+RDEPEND=linux_firmware_adreno-630? ( !media-libs/a630-fw ) linux_firmware_adreno-630? ( !media-libs/a660-fw ) linux_firmware_ath3k-all? ( !net-wireless/ath3k ) linux_firmware_ath3k-ar3011? ( !net-wireless/ath3k ) linux_firmware_ath3k-ar3012? ( !net-wireless/ath3k ) linux_firmware_keyspan_usb? ( !sys-kernel/chromeos-kernel-3_18[firmware_install] !sys-kernel/chromeos-kernel-4_4[firmware_install] ) linux_firmware_marvell-pcie8897? ( !net-wireless/marvell_sd8787[pcie] ) linux_firmware_marvell-pcie8997? ( !net-wireless/marvell_sd8787[pcie] ) linux_firmware_mt8173-vpu? ( !media-libs/vpu-fw ) linux_firmware_nvidia-xusb? ( !sys-kernel/xhci-firmware ) linux_firmware_rt2870? ( !net-wireless/realtek-rt2800-firmware ) !net-wireless/ath6k !net-wireless/ath10k !net-wireless/iwl1000-ucode !net-wireless/iwl2000-ucode !net-wireless/iwl2030-ucode !net-wireless/iwl3945-ucode !net-wireless/iwl4965-ucode !net-wireless/iwl5000-ucode !net-wireless/iwl6000-ucode !net-wireless/iwl6005-ucode !net-wireless/iwl6030-ucode !net-wireless/iwl6050-ucode !sys-kernel/iwlwifi-gfp2-private
 REQUIRED_USE=?? ( kernel-4_19 kernel-5_4 kernel-upstream )
 RESTRICT=binchecks strip
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4464a6813312b909be3958982b84af4d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=71cac432d181d3a1955b4829391cffce
diff --git a/metadata/md5-cache/sys-kernel/linux-headers-4.14 b/metadata/md5-cache/sys-kernel/linux-headers-4.14
index ef78784..e11697d 100644
--- a/metadata/md5-cache/sys-kernel/linux-headers-4.14
+++ b/metadata/md5-cache/sys-kernel/linux-headers-4.14
@@ -10,5 +10,5 @@
 RESTRICT=binchecks strip
 SLOT=0
 SRC_URI=mirror://gentoo/gentoo-headers-base-4.14.tar.xz mirror://gentoo/gentoo-headers-4.14-1.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	kernel-2	50e2a9c5725758a927075467bd13698f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
-_md5_=be179a14b741ce6408907f7a836d7545
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	kernel-2	50e2a9c5725758a927075467bd13698f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
+_md5_=c536dcb8136b4434dd7bcff2784ba79a
diff --git a/metadata/md5-cache/sys-kernel/linux-headers-4.14-r37 b/metadata/md5-cache/sys-kernel/linux-headers-4.14-r37
deleted file mode 100644
index ef78784..0000000
--- a/metadata/md5-cache/sys-kernel/linux-headers-4.14-r37
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile install postinst postrm preinst prepare setup test unpack
-DEPEND=app-arch/xz-utils dev-lang/perl
-DESCRIPTION=Linux system headers
-EAPI=6
-HOMEPAGE=http://www.kernel.org/ http://www.gentoo.org/
-IUSE=crosscompile_opts_headers-only
-KEYWORDS=*
-LICENSE=GPL-2
-RDEPEND=!!media-sound/alsa-headers
-RESTRICT=binchecks strip
-SLOT=0
-SRC_URI=mirror://gentoo/gentoo-headers-base-4.14.tar.xz mirror://gentoo/gentoo-headers-4.14-1.tar.xz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	kernel-2	50e2a9c5725758a927075467bd13698f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
-_md5_=be179a14b741ce6408907f7a836d7545
diff --git a/metadata/md5-cache/sys-kernel/linux-headers-4.14-r40 b/metadata/md5-cache/sys-kernel/linux-headers-4.14-r40
new file mode 100644
index 0000000..e11697d
--- /dev/null
+++ b/metadata/md5-cache/sys-kernel/linux-headers-4.14-r40
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile install postinst postrm preinst prepare setup test unpack
+DEPEND=app-arch/xz-utils dev-lang/perl
+DESCRIPTION=Linux system headers
+EAPI=6
+HOMEPAGE=http://www.kernel.org/ http://www.gentoo.org/
+IUSE=crosscompile_opts_headers-only
+KEYWORDS=*
+LICENSE=GPL-2
+RDEPEND=!!media-sound/alsa-headers
+RESTRICT=binchecks strip
+SLOT=0
+SRC_URI=mirror://gentoo/gentoo-headers-base-4.14.tar.xz mirror://gentoo/gentoo-headers-4.14-1.tar.xz
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	kernel-2	50e2a9c5725758a927075467bd13698f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	versionator	26ca8a8bd95d6a74122c08ba98a4ee72
+_md5_=c536dcb8136b4434dd7bcff2784ba79a
diff --git a/metadata/md5-cache/sys-kernel/upstream-kernel-mainline-9999 b/metadata/md5-cache/sys-kernel/upstream-kernel-mainline-9999
index 9488642..255ee87 100644
--- a/metadata/md5-cache/sys-kernel/upstream-kernel-mainline-9999
+++ b/metadata/md5-cache/sys-kernel/upstream-kernel-mainline-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git sys-apps/debianutils
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 DESCRIPTION=Linux Kernel Upstream (mainline)
 EAPI=7
 HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
+IUSE=cros_host cros_workon_tree_ board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
 KEYWORDS=*
 LICENSE=GPL-2
 PROPERTIES=live
 REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
 RESTRICT=binchecks mirror
 SLOT=0
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=c07f93f3a1635317d89b72b8c6e7e3a7
diff --git a/metadata/md5-cache/sys-kernel/upstream-kernel-next-9999 b/metadata/md5-cache/sys-kernel/upstream-kernel-next-9999
index 4e5e0fd..afcac35 100644
--- a/metadata/md5-cache/sys-kernel/upstream-kernel-next-9999
+++ b/metadata/md5-cache/sys-kernel/upstream-kernel-next-9999
@@ -1,15 +1,15 @@
 BDEPEND=dev-vcs/git sys-apps/debianutils
 DEFINED_PHASES=compile configure info install prepare setup unpack
-DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
+DEPEND=sys-kernel/linux-firmware factory_netboot_ramfs? ( chromeos-base/chromeos-initramfs[factory_netboot_ramfs] ) factory_shim_ramfs? ( chromeos-base/chromeos-initramfs[factory_shim_ramfs] ) minios_ramfs? ( chromeos-base/chromeos-initramfs[minios_ramfs] ) recovery_ramfs? ( chromeos-base/chromeos-initramfs[recovery_ramfs] ) builtin_fw_mali_g57? ( virtual/opengles ) builtin_fw_t210_bpmp? ( sys-kernel/tegra_bpmp-t210 ) builtin_fw_t210_nouveau? ( sys-kernel/nouveau-firmware ) builtin_fw_x86_aml_ucode? ( chromeos-base/aml-ucode-firmware-private ) builtin_fw_x86_apl_ucode? ( chromeos-base/apl-ucode-firmware-private ) builtin_fw_x86_bdw_ucode? ( chromeos-base/bdw-ucode-firmware-private ) builtin_fw_x86_bsw_ucode? ( chromeos-base/bsw-ucode-firmware-private ) builtin_fw_x86_byt_ucode? ( chromeos-base/byt-ucode-firmware-private ) builtin_fw_x86_cml_ucode? ( chromeos-base/cml-ucode-firmware-private ) builtin_fw_x86_glk_ucode? ( chromeos-base/glk-ucode-firmware-private ) builtin_fw_x86_jsl_ucode? ( chromeos-base/jsl-ucode-firmware-private ) builtin_fw_x86_kbl_ucode? ( chromeos-base/kbl-ucode-firmware-private ) builtin_fw_x86_skl_ucode? ( chromeos-base/skl-ucode-firmware-private ) builtin_fw_x86_tgl_ucode? ( chromeos-base/tgl-ucode-firmware-private ) builtin_fw_x86_whl_ucode? ( chromeos-base/whl-ucode-firmware-private )
 DESCRIPTION=Linux Kernel Upstream (next)
 EAPI=7
 HOMEPAGE=https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel
-IUSE=cros_host cros_workon_tree_ board_use_acorn board_use_adlrvp board_use_ambassador board_use_amd64-corei7 board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic-goofy board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_aries board_use_arkham board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-blueznext board_use_atlas-kernelnext board_use_atlas-kvm board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_pearlvalley board_use_auron_yuna board_use_banjo board_use_banon board_use_bayleybay board_use_beaglebone board_use_beaglebone_servo board_use_beaglebone_vv1 board_use_beltino board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-arcmaster board_use_betty-arcnext board_use_betty-arcvm-master board_use_betty-pi-arc board_use_blackwall board_use_bob board_use_bob-arc64 board_use_bobcat board_use_bolt board_use_borealis board_use_bruteus board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_butterfly board_use_bwtm2 board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cardhu board_use_cave board_use_celes board_use_celes-cheets board_use_chell board_use_chell-cheets board_use_cherry board_use_cheza board_use_cheza-freedreno board_use_cheza64 board_use_cheza64-freedreno board_use_cid board_use_clapper board_use_cmlrvp board_use_cobblepot board_use_coral board_use_coral-kernelnext board_use_cosmos board_use_cranky board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_cyclone board_use_daisy board_use_daisy_embedded board_use_daisy_skate board_use_daisy_snow board_use_daisy_spring board_use_daisy_winter board_use_dalmore board_use_danger board_use_danger_embedded board_use_dedede board_use_deltaur board_use_drallion board_use_duck board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-cheets board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arcnext board_use_eve-arc-r board_use_eve-arcvm board_use_eve-arcvm-mesa-virgl-next board_use_eve-arm64 board_use_eve-campfire board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-manatee board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_falco board_use_falco_gles board_use_falco_li board_use_fb1 board_use_fizz board_use_fizz-accelerator board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_flapjack board_use_foster board_use_galaxy board_use_gale board_use_gandof board_use_genesis board_use_glados board_use_glados-cheets board_use_glimmer board_use_glimmer-cheets board_use_glkrvp board_use_gnawty board_use_gonzo board_use_gru board_use_grunt board_use_grunt-arc64 board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-accelerator board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-signed board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-blueznext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_hsb board_use_ironhide board_use_jacuzzi board_use_jacuzzi-arc64 board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kayle board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-arc64 board_use_kevin-tpm2 board_use_kevin-userdebug board_use_kidd board_use_kip board_use_klang board_use_kukui board_use_kukui-arc-r board_use_kukui-arc-r-signed board_use_kukui-arc64 board_use_kukui-kernelnext board_use_kumo board_use_kunimitsu board_use_lakitu board_use_lakitu-arm64 board_use_lakitu-gpu board_use_lakitu-nc board_use_lakitu_next board_use_lakitu-slice board_use_lakitu-st board_use_lars board_use_lars-kernelnext board_use_laser board_use_lasilla-ground board_use_lassen board_use_leon board_use_link board_use_littlejoe board_use_loonix board_use_lulu board_use_lulu-cheets board_use_lumpy board_use_majolica board_use_mancomb board_use_mappy board_use_mappy_flashstation board_use_marble board_use_mccloud board_use_metis board_use_minnowboard board_use_mipseb-n32-generic board_use_mipseb-n64-generic board_use_mipseb-o32-generic board_use_mipsel-n32-generic board_use_mipsel-n64-generic board_use_mipsel-o32-generic board_use_mistral board_use_moblab-generic-vm board_use_monroe board_use_moose board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nami-kvm board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_nyan board_use_nyan_big board_use_nyan_blaze board_use_nyan_kitty board_use_oak board_use_oak-cheets board_use_octavius board_use_octopus board_use_orco board_use_palkia board_use_panda board_use_panther board_use_panther_embedded board_use_panther_goofy board_use_panther_moblab board_use_parrot board_use_parrot32 board_use_parrot64 board_use_parrot_ivb board_use_peach board_use_peach_kirby board_use_peach_pi board_use_peach_pit board_use_peppy board_use_plaso board_use_poppy board_use_ppcbe-32-generic board_use_ppcbe-64-generic board_use_ppcle-32-generic board_use_ppcle-64-generic board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_puppy board_use_purin board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_raspberrypi board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_rizer board_use_romer board_use_rotor board_use_rowan board_use_rush board_use_rush_ryu board_use_sama5d3 board_use_samus board_use_samus-cheets board_use_sand board_use_sarien board_use_sarien-arc64 board_use_sarien-kvm board_use_scarlet board_use_scarlet-arc64 board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_shogun board_use_sklrvp board_use_smaug board_use_smaug-cheets board_use_smaug-kasan board_use_snappy board_use_snappy-kernelnext board_use_sonic board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_stelvio board_use_storm board_use_storm_nand board_use_stout board_use_strago board_use_strongbad board_use_stumpy board_use_stumpy_moblab board_use_stumpy_pico board_use_sumo board_use_swanky board_use_tails board_use_tatl board_use_tael board_use_tegra3-generic board_use_terra board_use_tglrvp board_use_tidus board_use_tricky board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_umaro board_use_veyron board_use_veyron_fievel board_use_veyron_gus board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_minnie-cheets board_use_veyron_nicky board_use_veyron_pinky board_use_veyron_remy board_use_veyron_rialto board_use_veyron_shark board_use_veyron_speedy board_use_veyron_speedy-cheets board_use_veyron_thea board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_whirlwind board_use_whlrvp board_use_winky board_use_wizpig board_use_wolf board_use_wristpin board_use_wsb board_use_x30evb board_use_x32-generic board_use_x86-agz board_use_x86-alex board_use_x86-alex32 board_use_x86-alex32_he board_use_x86-alex_he board_use_x86-alex_hubble board_use_x86-dogfood board_use_x86-generic board_use_x86-generic_embedded board_use_x86-mario board_use_x86-mario64 board_use_x86-zgb board_use_x86-zgb32 board_use_x86-zgb32_he board_use_x86-zgb_he board_use_zako board_use_zoombini board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_whl_ucode
+IUSE=cros_host cros_workon_tree_ board_use_adlrvp board_use_ambassador board_use_amd64-generic board_use_amd64-generic-cheets board_use_amd64-generic_embedded board_use_amd64-host board_use_aplrvp board_use_arm-generic board_use_arm64-generic board_use_arm64-llvmpipe board_use_asuka board_use_asurada board_use_atlas board_use_atlas-connectivitynext board_use_atlas-kernelnext board_use_aurora board_use_aurora-borealis board_use_auron board_use_auron_paine board_use_auron_yuna board_use_banjo board_use_banon board_use_beaglebone board_use_beaglebone_servo board_use_betty board_use_betty-arc-r board_use_betty-arc-s board_use_betty-arc64 board_use_betty-pi-arc board_use_bob board_use_borealis board_use_brask board_use_brya board_use_brya-manatee board_use_bubs board_use_buddy board_use_buddy-cfm board_use_candy board_use_capri board_use_capri-zfpga board_use_caroline board_use_caroline-arc64 board_use_caroline-kernelnext board_use_caroline-ndktranslation board_use_caroline-userdebug board_use_cave board_use_celes board_use_chell board_use_cherry board_use_cobblepot board_use_coral board_use_cyan board_use_cyan-cheets board_use_cyan-kernelnext board_use_dedede board_use_deltaur board_use_drallion board_use_edgar board_use_elm board_use_elm-arc64 board_use_elm-kernelnext board_use_endeavour board_use_enguarde board_use_eve board_use_eve-arc-r board_use_eve-arm64 board_use_eve-kernelnext board_use_eve-kvm board_use_eve-lacros board_use_eve-swap board_use_eve-userdebug board_use_excelsior board_use_expresso board_use_fizz board_use_fizz-cfm board_use_fizz-labstation board_use_fizz-moblab board_use_fizz-satlab board_use_galaxy board_use_gale board_use_gandof board_use_glados board_use_glimmer board_use_glkrvp board_use_gnawty board_use_gonzo board_use_grunt board_use_grunt-arc-r board_use_grunt-kernelnext board_use_guado board_use_guado-cfm board_use_guado-macrophage board_use_guado_moblab board_use_guado_labstation board_use_guybrush board_use_hana board_use_hana-arc64 board_use_hana-kernelnext board_use_hatch board_use_hatch-arc-r board_use_hatch-arc-r-ack board_use_hatch-arc-r-userdebug board_use_hatch-arc-s board_use_hatch-connectivitynext board_use_hatch-borealis board_use_hatch-diskswap board_use_hatch-kernelnext board_use_hatch-manatee board_use_heli board_use_herobrine board_use_jacuzzi board_use_jacuzzi-kernelnext board_use_jecht board_use_kalista board_use_kalista-cfm board_use_kblrvp board_use_keeby board_use_kefka board_use_kefka-kernelnext board_use_kevin board_use_kevin64 board_use_kevin-kernelnext board_use_kevin-userdebug board_use_kip board_use_kukui board_use_kukui-arc-r board_use_kukui-kernelnext board_use_kunimitsu board_use_lakitu board_use_lars board_use_lars-kernelnext board_use_lasilla-ground board_use_littlejoe board_use_loonix board_use_lulu board_use_majolica board_use_metis board_use_mistral board_use_moblab-generic-vm board_use_mushu board_use_nami board_use_nami-kernelnext board_use_nautilus board_use_ninja board_use_nocturne board_use_nocturne-kernelnext board_use_novato board_use_novato-arc64 board_use_novato-arcnext board_use_oak board_use_octavius board_use_octopus board_use_octopus-arc-r board_use_octopus-kernelnext board_use_orco board_use_palkia board_use_poppy board_use_puff board_use_puff-borealis board_use_puff-macrophage board_use_puff-moblab board_use_pyro board_use_quawks board_use_rainier board_use_rambi board_use_rammus board_use_rammus-arc-r board_use_rammus-arc-r-userdebug board_use_reef board_use_relm board_use_reks board_use_reven board_use_rikku board_use_rikku-cfm board_use_romer board_use_samus board_use_sand board_use_sarien board_use_sarien-kernelnext board_use_scarlet board_use_senor board_use_sentry board_use_setzer board_use_shadowkeep board_use_sklrvp board_use_snappy board_use_snappy-kernelnext board_use_soraka board_use_soraka-libcamera board_use_squawks board_use_strongbad board_use_sumo board_use_swanky board_use_tatl board_use_tael board_use_terra board_use_tglrvp board_use_tidus board_use_trogdor board_use_trogdor-arc-r board_use_trogdor-kernelnext board_use_trogdor64 board_use_trogdor64-manatee board_use_ultima board_use_veyron board_use_veyron_fievel board_use_veyron_jaq board_use_veyron_jerry board_use_veyron_mickey board_use_veyron_mighty board_use_veyron_minnie board_use_veyron_rialto board_use_veyron_speedy board_use_veyron_tiger board_use_viking board_use_viking-poc2 board_use_volteer board_use_volteer-borealis board_use_volteer-kernelnext board_use_volteer-manatee board_use_winky board_use_wizpig board_use_wristpin board_use_x32-generic board_use_x86-generic board_use_x86-generic_embedded board_use_zork board_use_zork-arc-r board_use_zork-borealis board_use_zork-kernelnext board_use_zork-minios cros_host unibuild apply_patches -asan buildtest +clang -compilation_database -device_tree +dt_compression +fit_compression_kernel_lz4 fit_compression_kernel_lzma firmware_install frozen_gcc -kernel_sources kernel_warning_level_1 kernel_warning_level_2 kernel_warning_level_3 +lld +llvm_ias nfc -wireless42 -wifi_testbed_ap -boot_dts_device_tree -nowerror -ppp -binder -selinux_develop -transparent_hugepage tpm2 -kernel_afdo -kernel_afdo_verify +vdso32 -criu -docker -lxc acpi_ac acpi_debug allocator_slab apex binder blkdevram builtin_driver_amdgpu ca0132 cec criu cros_ec_mec debug debugobjects devdebug diskswap dmadebug dm_snapshot docker dp_cec drm_dp_aux_chardev dwc2_dual_role dyndebug ec2_guest_net eve_bt_hacks eve_wifi_etsi factory_netboot_ramfs factory_shim_ramfs failslab fbconsole goldfish highmem hypervisor_guest i2cdev iioservice irqsoff_tracer iscsi lockdown lxc kasan kcov kcsan kernel_compress_xz kexec_file kgdb kmemleak kvm kvm_invept_global kvm_host kvm_nested lockdebug lockstat lpss_uart mbim memory_debug minios_ramfs module_sign nfc nfs nowerror pca954x pcserial plan9 ppp preempt_tracer pvrdebug qmi realtekpstor recovery_ramfs samsung_serial sched_tracer selinux_develop socketmon systemtap tpm transparent_hugepage ubsan usb_gadget usb_gadget_acm usb_gadget_audio usb_gadget_ncm usbip vfat virtio_balloon vivid vlan vtpm_proxy vmware_guest vtconsole wifi_testbed_ap wifi_diag x32 xen_guest builtin_fw_amdgpu builtin_fw_amdgpu_carrizo builtin_fw_amdgpu_green_sardine builtin_fw_amdgpu_picasso builtin_fw_amdgpu_raven2 builtin_fw_amdgpu_renoir builtin_fw_amdgpu_stoney builtin_fw_guc_adl builtin_fw_guc_g9 builtin_fw_guc_jsl builtin_fw_guc_tgl builtin_fw_huc_adl builtin_fw_huc_g9 builtin_fw_huc_jsl builtin_fw_huc_tgl builtin_fw_mali_g57 builtin_fw_t124_xusb builtin_fw_t210_bpmp builtin_fw_t210_nouveau builtin_fw_t210_xusb builtin_fw_vega12 builtin_fw_x86_aml_ucode builtin_fw_x86_apl_ucode builtin_fw_x86_bdw_ucode builtin_fw_x86_bsw_ucode builtin_fw_x86_byt_ucode builtin_fw_x86_cml_ucode builtin_fw_x86_glk_ucode builtin_fw_x86_jsl_ucode builtin_fw_x86_kbl_ucode builtin_fw_x86_skl_ucode builtin_fw_x86_tgl_ucode builtin_fw_x86_whl_ucode
 KEYWORDS=*
 LICENSE=GPL-2
 PROPERTIES=live
 REQUIRED_USE=compilation_database? ( clang ) ?? ( fit_compression_kernel_lz4 fit_compression_kernel_lzma ) frozen_gcc? ( !clang ) lld? ( clang ) llvm_ias? ( clang ) kgdb? ( vtconsole ) ?? ( factory_netboot_ramfs factory_shim_ramfs minios_ramfs recovery_ramfs ) factory_netboot_ramfs? ( i2cdev ) factory_shim_ramfs? ( i2cdev ) recovery_ramfs? ( i2cdev ) factory_netboot_ramfs? ( || ( tpm tpm2 ) ) factory_shim_ramfs? ( || ( tpm tpm2 ) ) recovery_ramfs? ( || ( tpm tpm2 ) )
 RESTRICT=binchecks mirror
 SLOT=0
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	5a35dc532daffcd208914d59a1adb8f4	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	2c7600e1fd5d5e154c7012d9e7e88d43	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	cros-board	74070119a408123d4472b4459436d22e	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-kernel2	c013839892cadaa3b0324b80bbb30b1a	cros-workon	ff100259492312ff6570e490bcb9a320	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=101da4609976a9fd1b83c50b61864495
diff --git a/metadata/md5-cache/sys-libs/compiler-rt-12.0_pre422132 b/metadata/md5-cache/sys-libs/compiler-rt-12.0_pre422132
deleted file mode 100644
index 4949766..0000000
--- a/metadata/md5-cache/sys-libs/compiler-rt-12.0_pre422132
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=sys-devel/llvm sys-devel/make >=dev-util/cmake-3.9.6
-DESCRIPTION=Compiler runtime library for clang
-EAPI=6
-HOMEPAGE=http://compiler-rt.llvm.org/
-IUSE=+llvm-crt llvm-next llvm-tot
-KEYWORDS=*
-LICENSE=UoI-NCSA
-PROPERTIES=live
-SLOT=0
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=2bb116a44458d79790bd6d725fb4eecb
diff --git a/metadata/md5-cache/sys-libs/compiler-rt-12.0_pre422132-r4 b/metadata/md5-cache/sys-libs/compiler-rt-12.0_pre422132-r4
deleted file mode 100644
index 4949766..0000000
--- a/metadata/md5-cache/sys-libs/compiler-rt-12.0_pre422132-r4
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=sys-devel/llvm sys-devel/make >=dev-util/cmake-3.9.6
-DESCRIPTION=Compiler runtime library for clang
-EAPI=6
-HOMEPAGE=http://compiler-rt.llvm.org/
-IUSE=+llvm-crt llvm-next llvm-tot
-KEYWORDS=*
-LICENSE=UoI-NCSA
-PROPERTIES=live
-SLOT=0
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=2bb116a44458d79790bd6d725fb4eecb
diff --git a/metadata/md5-cache/sys-libs/compiler-rt-13.0_pre428724 b/metadata/md5-cache/sys-libs/compiler-rt-13.0_pre428724
new file mode 100644
index 0000000..c4243e0
--- /dev/null
+++ b/metadata/md5-cache/sys-libs/compiler-rt-13.0_pre428724
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure install prepare setup test unpack
+DEPEND=sys-devel/llvm sys-devel/make >=dev-util/cmake-3.9.6
+DESCRIPTION=Compiler runtime library for clang
+EAPI=6
+HOMEPAGE=http://compiler-rt.llvm.org/
+IUSE=+llvm-crt llvm-next llvm-tot
+KEYWORDS=*
+LICENSE=UoI-NCSA
+PROPERTIES=live
+SLOT=0
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=6606a8c652e599355f6b564f643ccbda
diff --git a/metadata/md5-cache/sys-libs/compiler-rt-13.0_pre428724-r4 b/metadata/md5-cache/sys-libs/compiler-rt-13.0_pre428724-r4
new file mode 100644
index 0000000..c4243e0
--- /dev/null
+++ b/metadata/md5-cache/sys-libs/compiler-rt-13.0_pre428724-r4
@@ -0,0 +1,12 @@
+DEFINED_PHASES=compile configure install prepare setup test unpack
+DEPEND=sys-devel/llvm sys-devel/make >=dev-util/cmake-3.9.6
+DESCRIPTION=Compiler runtime library for clang
+EAPI=6
+HOMEPAGE=http://compiler-rt.llvm.org/
+IUSE=+llvm-crt llvm-next llvm-tot
+KEYWORDS=*
+LICENSE=UoI-NCSA
+PROPERTIES=live
+SLOT=0
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=6606a8c652e599355f6b564f643ccbda
diff --git a/metadata/md5-cache/sys-libs/gcc-libs-10.2.0 b/metadata/md5-cache/sys-libs/gcc-libs-10.2.0
index ef26b0b..aa3b075 100644
--- a/metadata/md5-cache/sys-libs/gcc-libs-10.2.0
+++ b/metadata/md5-cache/sys-libs/gcc-libs-10.2.0
@@ -1,11 +1,11 @@
 DEFINED_PHASES=compile configure install
 DESCRIPTION=The GNU Compiler Collection. This builds and installs the libgcc, libstdc++, and libgo libraries. It is board-specific.
 EAPI=7
-IUSE=go hardened hardfp libatomic +thumb vtable_verify
+IUSE=go hardened hardfp libatomic +thumb vtable_verify libunwind
 KEYWORDS=*
 LICENSE=GPL-3 LGPL-3 FDL-1.2
 REQUIRED_USE=go? ( libatomic )
 SLOT=0
 SRC_URI=mirror://gnu/gcc/gcc-10.2.0/gcc-10.2.0.tar.xz
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7f54585bee54267a3a56aa2e81679556
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=47cfa83ad895a5ddb809268faeda23a2
diff --git a/metadata/md5-cache/sys-libs/gcc-libs-10.2.0-r1 b/metadata/md5-cache/sys-libs/gcc-libs-10.2.0-r1
deleted file mode 100644
index ef26b0b..0000000
--- a/metadata/md5-cache/sys-libs/gcc-libs-10.2.0-r1
+++ /dev/null
@@ -1,11 +0,0 @@
-DEFINED_PHASES=compile configure install
-DESCRIPTION=The GNU Compiler Collection. This builds and installs the libgcc, libstdc++, and libgo libraries. It is board-specific.
-EAPI=7
-IUSE=go hardened hardfp libatomic +thumb vtable_verify
-KEYWORDS=*
-LICENSE=GPL-3 LGPL-3 FDL-1.2
-REQUIRED_USE=go? ( libatomic )
-SLOT=0
-SRC_URI=mirror://gnu/gcc/gcc-10.2.0/gcc-10.2.0.tar.xz
-_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7f54585bee54267a3a56aa2e81679556
diff --git a/metadata/md5-cache/sys-libs/gcc-libs-10.2.0-r2 b/metadata/md5-cache/sys-libs/gcc-libs-10.2.0-r2
new file mode 100644
index 0000000..aa3b075
--- /dev/null
+++ b/metadata/md5-cache/sys-libs/gcc-libs-10.2.0-r2
@@ -0,0 +1,11 @@
+DEFINED_PHASES=compile configure install
+DESCRIPTION=The GNU Compiler Collection. This builds and installs the libgcc, libstdc++, and libgo libraries. It is board-specific.
+EAPI=7
+IUSE=go hardened hardfp libatomic +thumb vtable_verify libunwind
+KEYWORDS=*
+LICENSE=GPL-3 LGPL-3 FDL-1.2
+REQUIRED_USE=go? ( libatomic )
+SLOT=0
+SRC_URI=mirror://gnu/gcc/gcc-10.2.0/gcc-10.2.0.tar.xz
+_eclasses_=binutils-funcs	6207477a739f6f25d13da27b9cc00160	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=47cfa83ad895a5ddb809268faeda23a2
diff --git a/metadata/md5-cache/sys-libs/glibc-2.32-r14 b/metadata/md5-cache/sys-libs/glibc-2.32-r14
deleted file mode 100644
index 280dde7..0000000
--- a/metadata/md5-cache/sys-libs/glibc-2.32-r14
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=|| ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) >=app-misc/pax-utils-0.1.10 sys-devel/bison doc? ( sys-apps/texinfo ) !compile-locales? ( app-arch/gzip sys-apps/grep virtual/awk ) >=sys-devel/binutils-2.24 >=sys-devel/gcc-6 virtual/pkgconfig
-DEFINED_PHASES=compile configure install postinst preinst prepare setup test unpack
-DEPEND=gd? ( media-libs/gd:2= ) nscd? ( selinux? ( audit? ( sys-process/audit ) caps? ( sys-libs/libcap ) ) ) suid? ( caps? ( sys-libs/libcap ) ) selinux? ( sys-libs/libselinux ) systemtap? ( dev-util/systemtap ) !<net-misc/openssh-8.1_p1-r2 compile-locales? ( app-arch/gzip sys-apps/grep virtual/awk ) test? ( >=net-dns/libidn2-2.3.0 ) virtual/os-headers sys-devel/gnuconfig
-DESCRIPTION=GNU libc C library
-EAPI=7
-HOMEPAGE=https://www.gnu.org/software/libc/
-IUSE=audit caps cet compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib nscd profile selinux +ssp +static-libs static-pie suid systemtap test vanilla crosscompile_opts_headers-only
-KEYWORDS=*
-LICENSE=LGPL-2.1+ BSD HPND ISC inner-net rc PCRE
-PDEPEND=gd? ( media-libs/gd:2= ) nscd? ( selinux? ( audit? ( sys-process/audit ) caps? ( sys-libs/libcap ) ) ) suid? ( caps? ( sys-libs/libcap ) ) selinux? ( sys-libs/libselinux ) systemtap? ( dev-util/systemtap ) !<net-misc/openssh-8.1_p1-r2 app-arch/gzip sys-apps/grep virtual/awk sys-apps/gentoo-functions !vanilla? ( sys-libs/timezone-data )
-RDEPEND=>=net-dns/libidn2-2.3.0 vanilla? ( !sys-libs/timezone-data )
-RESTRICT=!test? ( test )
-SLOT=2.2
-SRC_URI=mirror://gnu/glibc/glibc-2.32.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/glibc-2.32-patches-8.tar.xz riscv? ( https://dev.gentoo.org/~dilfridge/distfiles/backport-rv32.txz ) https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-2.10.tar.gz multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-20201208.tar.xz )
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnuconfig	9200bfc8e0184357abfb86a08edd4fc3	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	prefix	e51c7882b7b721e54e684f7eb143cbfe	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=e88ba46c36533c603baec8a80a87f811
diff --git a/metadata/md5-cache/sys-libs/glibc-2.32-r18 b/metadata/md5-cache/sys-libs/glibc-2.32-r18
new file mode 100644
index 0000000..28b0db9
--- /dev/null
+++ b/metadata/md5-cache/sys-libs/glibc-2.32-r18
@@ -0,0 +1,16 @@
+BDEPEND=|| ( dev-lang/python:3.9 dev-lang/python:3.8 dev-lang/python:3.7 dev-lang/python:3.6 ) >=app-misc/pax-utils-0.1.10 sys-devel/bison doc? ( sys-apps/texinfo ) !compile-locales? ( app-arch/gzip sys-apps/grep virtual/awk ) >=sys-devel/binutils-2.24 >=sys-devel/gcc-6 virtual/pkgconfig
+DEFINED_PHASES=compile configure install postinst preinst prepare setup test unpack
+DEPEND=gd? ( media-libs/gd:2= ) nscd? ( selinux? ( audit? ( sys-process/audit ) caps? ( sys-libs/libcap ) ) ) suid? ( caps? ( sys-libs/libcap ) ) selinux? ( sys-libs/libselinux ) systemtap? ( dev-util/systemtap ) !<net-misc/openssh-8.1_p1-r2 compile-locales? ( app-arch/gzip sys-apps/grep virtual/awk ) test? ( >=net-dns/libidn2-2.3.0 ) virtual/os-headers sys-devel/gnuconfig
+DESCRIPTION=GNU libc C library
+EAPI=7
+HOMEPAGE=https://www.gnu.org/software/libc/
+IUSE=audit caps cet compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib nscd profile selinux +ssp +static-libs static-pie suid systemtap test vanilla crosscompile_opts_headers-only
+KEYWORDS=*
+LICENSE=LGPL-2.1+ BSD HPND ISC inner-net rc PCRE
+PDEPEND=gd? ( media-libs/gd:2= ) nscd? ( selinux? ( audit? ( sys-process/audit ) caps? ( sys-libs/libcap ) ) ) suid? ( caps? ( sys-libs/libcap ) ) selinux? ( sys-libs/libselinux ) systemtap? ( dev-util/systemtap ) !<net-misc/openssh-8.1_p1-r2 app-arch/gzip sys-apps/grep virtual/awk sys-apps/gentoo-functions !vanilla? ( sys-libs/timezone-data )
+RDEPEND=>=net-dns/libidn2-2.3.0 vanilla? ( !sys-libs/timezone-data )
+RESTRICT=!test? ( test )
+SLOT=2.2
+SRC_URI=mirror://gnu/glibc/glibc-2.32.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/glibc-2.32-patches-8.tar.xz riscv? ( https://dev.gentoo.org/~dilfridge/distfiles/backport-rv32.txz ) https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-2.10.tar.gz multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-20201208.tar.xz )
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	gnuconfig	9200bfc8e0184357abfb86a08edd4fc3	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	prefix	e51c7882b7b721e54e684f7eb143cbfe	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=ce56fedeb6f422d35e56655992f6334b
diff --git a/metadata/md5-cache/sys-libs/ldb-2.0.12 b/metadata/md5-cache/sys-libs/ldb-2.0.12
index 90c444f..223b355 100644
--- a/metadata/md5-cache/sys-libs/ldb-2.0.12
+++ b/metadata/md5-cache/sys-libs/ldb-2.0.12
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/2.0.12
 SRC_URI=https://www.samba.org/ftp/pub/ldb/ldb-2.0.12.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	waf-utils	0af0bf9207f47292d40e888b9687763c
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	waf-utils	0af0bf9207f47292d40e888b9687763c
 _md5_=fc14d2da6d5850fd1f1b744340b0710a
diff --git a/metadata/md5-cache/sys-libs/ldb-2.0.12-r1 b/metadata/md5-cache/sys-libs/ldb-2.0.12-r1
index 90c444f..223b355 100644
--- a/metadata/md5-cache/sys-libs/ldb-2.0.12-r1
+++ b/metadata/md5-cache/sys-libs/ldb-2.0.12-r1
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0/2.0.12
 SRC_URI=https://www.samba.org/ftp/pub/ldb/ldb-2.0.12.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	waf-utils	0af0bf9207f47292d40e888b9687763c
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-single-r1	674c48c926cbb44e91b656e0399d8f54	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	waf-utils	0af0bf9207f47292d40e888b9687763c
 _md5_=fc14d2da6d5850fd1f1b744340b0710a
diff --git a/metadata/md5-cache/sys-libs/libcxx-12.0_pre422132 b/metadata/md5-cache/sys-libs/libcxx-12.0_pre422132
deleted file mode 100644
index a53a949..0000000
--- a/metadata/md5-cache/sys-libs/libcxx-12.0_pre422132
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=libcxxabi? ( sys-libs/libcxxabi[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libcxxrt? ( sys-libs/libcxxrt[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !libcxxabi? ( !libcxxrt? ( >=sys-devel/gcc-4.7:=[cxx] ) ) !cros_host? ( sys-libs/gcc-libs ) cros_host? ( sys-devel/llvm ) app-arch/xz-utils dev-util/ninja >=dev-util/cmake-3.9.6
-DESCRIPTION=New implementation of the C++ standard library, targeting C++11
-EAPI=6
-HOMEPAGE=http://libcxx.llvm.org/
-IUSE=+compiler-rt cros_host elibc_glibc elibc_musl +libcxxabi libcxxrt libunwind llvm-next llvm-tot msan +static-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=|| ( UoI-NCSA MIT )
-PROPERTIES=live
-RDEPEND=libcxxabi? ( sys-libs/libcxxabi[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libcxxrt? ( sys-libs/libcxxrt[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !libcxxabi? ( !libcxxrt? ( >=sys-devel/gcc-4.7:=[cxx] ) ) !cros_host? ( sys-libs/gcc-libs )
-REQUIRED_USE=libunwind? ( || ( libcxxabi libcxxrt ) ) ?? ( libcxxabi libcxxrt )
-SLOT=0
-_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	llvm	aa54e879d157ef21f6ecf31f255eaa2e	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=5809ebc495ccd047ebdeb96e2dae4363
diff --git a/metadata/md5-cache/sys-libs/libcxx-12.0_pre422132-r1 b/metadata/md5-cache/sys-libs/libcxx-12.0_pre422132-r1
deleted file mode 100644
index a53a949..0000000
--- a/metadata/md5-cache/sys-libs/libcxx-12.0_pre422132-r1
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=libcxxabi? ( sys-libs/libcxxabi[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libcxxrt? ( sys-libs/libcxxrt[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !libcxxabi? ( !libcxxrt? ( >=sys-devel/gcc-4.7:=[cxx] ) ) !cros_host? ( sys-libs/gcc-libs ) cros_host? ( sys-devel/llvm ) app-arch/xz-utils dev-util/ninja >=dev-util/cmake-3.9.6
-DESCRIPTION=New implementation of the C++ standard library, targeting C++11
-EAPI=6
-HOMEPAGE=http://libcxx.llvm.org/
-IUSE=+compiler-rt cros_host elibc_glibc elibc_musl +libcxxabi libcxxrt libunwind llvm-next llvm-tot msan +static-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=|| ( UoI-NCSA MIT )
-PROPERTIES=live
-RDEPEND=libcxxabi? ( sys-libs/libcxxabi[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libcxxrt? ( sys-libs/libcxxrt[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !libcxxabi? ( !libcxxrt? ( >=sys-devel/gcc-4.7:=[cxx] ) ) !cros_host? ( sys-libs/gcc-libs )
-REQUIRED_USE=libunwind? ( || ( libcxxabi libcxxrt ) ) ?? ( libcxxabi libcxxrt )
-SLOT=0
-_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	llvm	aa54e879d157ef21f6ecf31f255eaa2e	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=5809ebc495ccd047ebdeb96e2dae4363
diff --git a/metadata/md5-cache/sys-libs/libcxx-13.0_pre428724 b/metadata/md5-cache/sys-libs/libcxx-13.0_pre428724
new file mode 100644
index 0000000..157319a
--- /dev/null
+++ b/metadata/md5-cache/sys-libs/libcxx-13.0_pre428724
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install prepare setup test unpack
+DEPEND=libcxxabi? ( sys-libs/libcxxabi[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libcxxrt? ( sys-libs/libcxxrt[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !libcxxabi? ( !libcxxrt? ( >=sys-devel/gcc-4.7:=[cxx] ) ) !cros_host? ( sys-libs/gcc-libs ) cros_host? ( sys-devel/llvm ) app-arch/xz-utils dev-util/ninja >=dev-util/cmake-3.9.6
+DESCRIPTION=New implementation of the C++ standard library, targeting C++11
+EAPI=6
+HOMEPAGE=http://libcxx.llvm.org/
+IUSE=+compiler-rt cros_host elibc_glibc elibc_musl +libcxxabi libcxxrt libunwind llvm-next llvm-tot msan +static-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=|| ( UoI-NCSA MIT )
+PROPERTIES=live
+RDEPEND=libcxxabi? ( sys-libs/libcxxabi[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libcxxrt? ( sys-libs/libcxxrt[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !libcxxabi? ( !libcxxrt? ( >=sys-devel/gcc-4.7:=[cxx] ) ) !cros_host? ( sys-libs/gcc-libs )
+REQUIRED_USE=libunwind? ( || ( libcxxabi libcxxrt ) ) ?? ( libcxxabi libcxxrt )
+SLOT=0
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	llvm	aa54e879d157ef21f6ecf31f255eaa2e	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=d3a6ab702bee6400004034154e144fec
diff --git a/metadata/md5-cache/sys-libs/libcxx-13.0_pre428724-r3 b/metadata/md5-cache/sys-libs/libcxx-13.0_pre428724-r3
new file mode 100644
index 0000000..157319a
--- /dev/null
+++ b/metadata/md5-cache/sys-libs/libcxx-13.0_pre428724-r3
@@ -0,0 +1,14 @@
+DEFINED_PHASES=compile configure install prepare setup test unpack
+DEPEND=libcxxabi? ( sys-libs/libcxxabi[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libcxxrt? ( sys-libs/libcxxrt[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !libcxxabi? ( !libcxxrt? ( >=sys-devel/gcc-4.7:=[cxx] ) ) !cros_host? ( sys-libs/gcc-libs ) cros_host? ( sys-devel/llvm ) app-arch/xz-utils dev-util/ninja >=dev-util/cmake-3.9.6
+DESCRIPTION=New implementation of the C++ standard library, targeting C++11
+EAPI=6
+HOMEPAGE=http://libcxx.llvm.org/
+IUSE=+compiler-rt cros_host elibc_glibc elibc_musl +libcxxabi libcxxrt libunwind llvm-next llvm-tot msan +static-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=|| ( UoI-NCSA MIT )
+PROPERTIES=live
+RDEPEND=libcxxabi? ( sys-libs/libcxxabi[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) libcxxrt? ( sys-libs/libcxxrt[libunwind=,static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !libcxxabi? ( !libcxxrt? ( >=sys-devel/gcc-4.7:=[cxx] ) ) !cros_host? ( sys-libs/gcc-libs )
+REQUIRED_USE=libunwind? ( || ( libcxxabi libcxxrt ) ) ?? ( libcxxabi libcxxrt )
+SLOT=0
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	llvm	aa54e879d157ef21f6ecf31f255eaa2e	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=d3a6ab702bee6400004034154e144fec
diff --git a/metadata/md5-cache/sys-libs/libcxxabi-12.0_pre422132 b/metadata/md5-cache/sys-libs/libcxxabi-12.0_pre422132
deleted file mode 100644
index 7258962..0000000
--- a/metadata/md5-cache/sys-libs/libcxxabi-12.0_pre422132
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=libunwind? ( || ( >=sys-libs/libunwind-1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) !cros_host? ( sys-libs/gcc-libs ) cros_host? ( sys-devel/llvm ) dev-util/ninja >=dev-util/cmake-3.9.6
-DESCRIPTION=Low level support for a standard C++ library
-EAPI=6
-HOMEPAGE=http://libcxxabi.llvm.org/
-IUSE=+compiler-rt cros_host libunwind msan llvm-next llvm-tot +static-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=|| ( UoI-NCSA MIT )
-PROPERTIES=live
-RDEPEND=libunwind? ( || ( >=sys-libs/libunwind-1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) !cros_host? ( sys-libs/gcc-libs )
-SLOT=0
-_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	llvm	aa54e879d157ef21f6ecf31f255eaa2e	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=272b33bdc7465632780bbe1ba85fbb1c
diff --git a/metadata/md5-cache/sys-libs/libcxxabi-12.0_pre422132-r1 b/metadata/md5-cache/sys-libs/libcxxabi-12.0_pre422132-r1
deleted file mode 100644
index 7258962..0000000
--- a/metadata/md5-cache/sys-libs/libcxxabi-12.0_pre422132-r1
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=libunwind? ( || ( >=sys-libs/libunwind-1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) !cros_host? ( sys-libs/gcc-libs ) cros_host? ( sys-devel/llvm ) dev-util/ninja >=dev-util/cmake-3.9.6
-DESCRIPTION=Low level support for a standard C++ library
-EAPI=6
-HOMEPAGE=http://libcxxabi.llvm.org/
-IUSE=+compiler-rt cros_host libunwind msan llvm-next llvm-tot +static-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=|| ( UoI-NCSA MIT )
-PROPERTIES=live
-RDEPEND=libunwind? ( || ( >=sys-libs/libunwind-1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) !cros_host? ( sys-libs/gcc-libs )
-SLOT=0
-_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	llvm	aa54e879d157ef21f6ecf31f255eaa2e	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=272b33bdc7465632780bbe1ba85fbb1c
diff --git a/metadata/md5-cache/sys-libs/libcxxabi-13.0_pre428724 b/metadata/md5-cache/sys-libs/libcxxabi-13.0_pre428724
new file mode 100644
index 0000000..fd1c3f1
--- /dev/null
+++ b/metadata/md5-cache/sys-libs/libcxxabi-13.0_pre428724
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install prepare setup test unpack
+DEPEND=libunwind? ( || ( >=sys-libs/libunwind-1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) !cros_host? ( sys-libs/gcc-libs ) cros_host? ( sys-devel/llvm ) dev-util/ninja >=dev-util/cmake-3.9.6
+DESCRIPTION=Low level support for a standard C++ library
+EAPI=6
+HOMEPAGE=http://libcxxabi.llvm.org/
+IUSE=+compiler-rt cros_host libunwind msan llvm-next llvm-tot +static-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=|| ( UoI-NCSA MIT )
+PROPERTIES=live
+RDEPEND=libunwind? ( || ( >=sys-libs/libunwind-1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) !cros_host? ( sys-libs/gcc-libs )
+SLOT=0
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	llvm	aa54e879d157ef21f6ecf31f255eaa2e	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=513429ef3426ecc84581e680b9194ca7
diff --git a/metadata/md5-cache/sys-libs/libcxxabi-13.0_pre428724-r3 b/metadata/md5-cache/sys-libs/libcxxabi-13.0_pre428724-r3
new file mode 100644
index 0000000..fd1c3f1
--- /dev/null
+++ b/metadata/md5-cache/sys-libs/libcxxabi-13.0_pre428724-r3
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install prepare setup test unpack
+DEPEND=libunwind? ( || ( >=sys-libs/libunwind-1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) !cros_host? ( sys-libs/gcc-libs ) cros_host? ( sys-devel/llvm ) dev-util/ninja >=dev-util/cmake-3.9.6
+DESCRIPTION=Low level support for a standard C++ library
+EAPI=6
+HOMEPAGE=http://libcxxabi.llvm.org/
+IUSE=+compiler-rt cros_host libunwind msan llvm-next llvm-tot +static-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=|| ( UoI-NCSA MIT )
+PROPERTIES=live
+RDEPEND=libunwind? ( || ( >=sys-libs/libunwind-1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) !cros_host? ( sys-libs/gcc-libs )
+SLOT=0
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	llvm	aa54e879d157ef21f6ecf31f255eaa2e	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=513429ef3426ecc84581e680b9194ca7
diff --git a/metadata/md5-cache/sys-libs/lithium-0.0.1-r3 b/metadata/md5-cache/sys-libs/lithium-0.0.1-r3
index bb0b782..bd4a84d 100644
--- a/metadata/md5-cache/sys-libs/lithium-0.0.1-r3
+++ b/metadata/md5-cache/sys-libs/lithium-0.0.1-r3
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=71ef491deae7a8296145e16929f587eb
diff --git a/metadata/md5-cache/sys-libs/lithium-9999 b/metadata/md5-cache/sys-libs/lithium-9999
index e0036c1..c41ed64 100644
--- a/metadata/md5-cache/sys-libs/lithium-9999
+++ b/metadata/md5-cache/sys-libs/lithium-9999
@@ -8,5 +8,5 @@
 LICENSE=BSD-Google
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=33359022de93aabda819c52552eae6f2
diff --git a/metadata/md5-cache/sys-libs/llvm-libunwind-12.0_pre422132 b/metadata/md5-cache/sys-libs/llvm-libunwind-12.0_pre422132
deleted file mode 100644
index 16cc745..0000000
--- a/metadata/md5-cache/sys-libs/llvm-libunwind-12.0_pre422132
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=!sys-libs/libunwind cros_host? ( sys-devel/llvm ) sys-devel/make >=dev-util/cmake-3.9.6
-DESCRIPTION=C++ runtime stack unwinder from LLVM
-EAPI=6
-HOMEPAGE=https://github.com/llvm-mirror/libunwind
-IUSE=cros_host debug llvm-next llvm-tot +static-libs +shared-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=|| ( UoI-NCSA MIT )
-PROPERTIES=live
-RDEPEND=!sys-libs/libunwind
-SLOT=0
-_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=aa706672074a18202cccbfc445dc67f7
diff --git a/metadata/md5-cache/sys-libs/llvm-libunwind-12.0_pre422132-r1 b/metadata/md5-cache/sys-libs/llvm-libunwind-12.0_pre422132-r1
deleted file mode 100644
index 16cc745..0000000
--- a/metadata/md5-cache/sys-libs/llvm-libunwind-12.0_pre422132-r1
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare setup test unpack
-DEPEND=!sys-libs/libunwind cros_host? ( sys-devel/llvm ) sys-devel/make >=dev-util/cmake-3.9.6
-DESCRIPTION=C++ runtime stack unwinder from LLVM
-EAPI=6
-HOMEPAGE=https://github.com/llvm-mirror/libunwind
-IUSE=cros_host debug llvm-next llvm-tot +static-libs +shared-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=|| ( UoI-NCSA MIT )
-PROPERTIES=live
-RDEPEND=!sys-libs/libunwind
-SLOT=0
-_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=aa706672074a18202cccbfc445dc67f7
diff --git a/metadata/md5-cache/sys-libs/llvm-libunwind-13.0_pre428724 b/metadata/md5-cache/sys-libs/llvm-libunwind-13.0_pre428724
new file mode 100644
index 0000000..eb0ac6a4
--- /dev/null
+++ b/metadata/md5-cache/sys-libs/llvm-libunwind-13.0_pre428724
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install prepare setup test unpack
+DEPEND=!sys-libs/libunwind cros_host? ( sys-devel/llvm ) sys-devel/make >=dev-util/cmake-3.9.6
+DESCRIPTION=C++ runtime stack unwinder from LLVM
+EAPI=6
+HOMEPAGE=https://github.com/llvm-mirror/libunwind
+IUSE=cros_host debug llvm-next llvm-tot +static-libs +shared-libs synth_libgcc +compiler-rt fuzzer asan coverage fuzzer msan tsan ubsan abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=|| ( UoI-NCSA MIT )
+PROPERTIES=live
+RDEPEND=!sys-libs/libunwind
+SLOT=0
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=a813bc52cb25815958be3fcc8767e38d
diff --git a/metadata/md5-cache/sys-libs/llvm-libunwind-13.0_pre428724-r4 b/metadata/md5-cache/sys-libs/llvm-libunwind-13.0_pre428724-r4
new file mode 100644
index 0000000..eb0ac6a4
--- /dev/null
+++ b/metadata/md5-cache/sys-libs/llvm-libunwind-13.0_pre428724-r4
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install prepare setup test unpack
+DEPEND=!sys-libs/libunwind cros_host? ( sys-devel/llvm ) sys-devel/make >=dev-util/cmake-3.9.6
+DESCRIPTION=C++ runtime stack unwinder from LLVM
+EAPI=6
+HOMEPAGE=https://github.com/llvm-mirror/libunwind
+IUSE=cros_host debug llvm-next llvm-tot +static-libs +shared-libs synth_libgcc +compiler-rt fuzzer asan coverage fuzzer msan tsan ubsan abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=|| ( UoI-NCSA MIT )
+PROPERTIES=live
+RDEPEND=!sys-libs/libunwind
+SLOT=0
+_eclasses_=cmake-multilib	b396704c8c04bb210b7b45dff5c67fea	cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-fuzzer	e815e6e711300a7010da60d6030db0c9	cros-llvm	bb582d113e05e1d252d1c86ac2983b68	cros-sanitizers	5d3cd3adbab6bd1fbf1edd64d5041997	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=a813bc52cb25815958be3fcc8767e38d
diff --git a/metadata/md5-cache/sys-libs/readline-6.3_p8-r3 b/metadata/md5-cache/sys-libs/readline-6.3_p8-r3
index 921bbc0..acb2b25 100644
--- a/metadata/md5-cache/sys-libs/readline-6.3_p8-r3
+++ b/metadata/md5-cache/sys-libs/readline-6.3_p8-r3
@@ -9,5 +9,5 @@
 RDEPEND=>=sys-libs/ncurses-5.9-r3:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
 SLOT=0
 SRC_URI=mirror://gnu/readline/readline-6.3.tar.gz ftp://ftp.cwru.edu/pub/bash/readline-6.3-patches/readline63-001 ftp://ftp.cwru.edu/pub/bash/readline-6.3-patches/readline63-002 ftp://ftp.cwru.edu/pub/bash/readline-6.3-patches/readline63-003 ftp://ftp.cwru.edu/pub/bash/readline-6.3-patches/readline63-004 ftp://ftp.cwru.edu/pub/bash/readline-6.3-patches/readline63-005 ftp://ftp.cwru.edu/pub/bash/readline-6.3-patches/readline63-006 ftp://ftp.cwru.edu/pub/bash/readline-6.3-patches/readline63-007 ftp://ftp.cwru.edu/pub/bash/readline-6.3-patches/readline63-008 mirror://gnu/readline/readline-6.3-patches/readline63-001 mirror://gnu/readline/readline-6.3-patches/readline63-002 mirror://gnu/readline/readline-6.3-patches/readline63-003 mirror://gnu/readline/readline-6.3-patches/readline63-004 mirror://gnu/readline/readline-6.3-patches/readline63-005 mirror://gnu/readline/readline-6.3-patches/readline63-006 mirror://gnu/readline/readline-6.3-patches/readline63-007 mirror://gnu/readline/readline-6.3-patches/readline63-008
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	usr-ldscript	766f0a506b45f02361ad1b8ca205b7e1	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	usr-ldscript	766f0a506b45f02361ad1b8ca205b7e1	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fd5838947841d23dc87190a7b92f0c28
diff --git a/metadata/md5-cache/sys-libs/readline-8.0_p4 b/metadata/md5-cache/sys-libs/readline-8.0_p4
index e37b425..e82d29c 100644
--- a/metadata/md5-cache/sys-libs/readline-8.0_p4
+++ b/metadata/md5-cache/sys-libs/readline-8.0_p4
@@ -10,5 +10,5 @@
 RDEPEND=>=sys-libs/ncurses-5.9-r3:0=[static-libs?,unicode?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
 SLOT=0
 SRC_URI=mirror://gnu/readline/readline-8.0.tar.gz ftp://ftp.cwru.edu/pub/bash/readline-8.0-patches/readline80-001 ftp://ftp.cwru.edu/pub/bash/readline-8.0-patches/readline80-002 ftp://ftp.cwru.edu/pub/bash/readline-8.0-patches/readline80-003 ftp://ftp.cwru.edu/pub/bash/readline-8.0-patches/readline80-004 mirror://gnu/readline/readline-8.0-patches/readline80-001 mirror://gnu/readline/readline-8.0-patches/readline80-002 mirror://gnu/readline/readline-8.0-patches/readline80-003 mirror://gnu/readline/readline-8.0-patches/readline80-004 cros_host? ( gs://chromeos-localmirror/distfiles/readline-6.3_p8-r3.tbz2 )
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	usr-ldscript	766f0a506b45f02361ad1b8ca205b7e1
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	usr-ldscript	766f0a506b45f02361ad1b8ca205b7e1
 _md5_=67d0e16edfcfe474ddd25a8e9803889b
diff --git a/metadata/md5-cache/sys-libs/readline-8.0_p4-r1 b/metadata/md5-cache/sys-libs/readline-8.0_p4-r1
index e37b425..e82d29c 100644
--- a/metadata/md5-cache/sys-libs/readline-8.0_p4-r1
+++ b/metadata/md5-cache/sys-libs/readline-8.0_p4-r1
@@ -10,5 +10,5 @@
 RDEPEND=>=sys-libs/ncurses-5.9-r3:0=[static-libs?,unicode?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
 SLOT=0
 SRC_URI=mirror://gnu/readline/readline-8.0.tar.gz ftp://ftp.cwru.edu/pub/bash/readline-8.0-patches/readline80-001 ftp://ftp.cwru.edu/pub/bash/readline-8.0-patches/readline80-002 ftp://ftp.cwru.edu/pub/bash/readline-8.0-patches/readline80-003 ftp://ftp.cwru.edu/pub/bash/readline-8.0-patches/readline80-004 mirror://gnu/readline/readline-8.0-patches/readline80-001 mirror://gnu/readline/readline-8.0-patches/readline80-002 mirror://gnu/readline/readline-8.0-patches/readline80-003 mirror://gnu/readline/readline-8.0-patches/readline80-004 cros_host? ( gs://chromeos-localmirror/distfiles/readline-6.3_p8-r3.tbz2 )
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	usr-ldscript	766f0a506b45f02361ad1b8ca205b7e1
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	usr-ldscript	766f0a506b45f02361ad1b8ca205b7e1
 _md5_=67d0e16edfcfe474ddd25a8e9803889b
diff --git a/metadata/md5-cache/sys-power/dptf-9.0.10500-r1 b/metadata/md5-cache/sys-power/dptf-9.0.10500-r1
deleted file mode 100644
index e2d4d8a..0000000
--- a/metadata/md5-cache/sys-power/dptf-9.0.10500-r1
+++ /dev/null
@@ -1,13 +0,0 @@
-DEFINED_PHASES=compile configure install prepare test
-DEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools sys-apps/dbus sys-libs/ncurses sys-libs/readline sys-devel/make >=dev-util/cmake-3.9.6
-DESCRIPTION=Intel(R) Dynamic Platform & Thermal Framework
-EAPI=6
-HOMEPAGE=https://01.org/dptf/
-IUSE=debug generated_cros_config unibuild
-KEYWORDS=-* amd64 x86
-LICENSE=Apache-2.0 GPL-2 BSD
-RDEPEND=unibuild? ( !generated_cros_config? ( chromeos-base/chromeos-config ) generated_cros_config? ( chromeos-base/chromeos-config-bsp:= ) ) chromeos-base/chromeos-config-tools sys-apps/dbus sys-libs/ncurses sys-libs/readline
-SLOT=0
-SRC_URI=https://github.com/intel/dptf/archive/9.0.10500.tar.gz -> dptf-9.0.10500.tar.gz
-_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=abc16729e0e26653dff250f4f757eb64
diff --git a/metadata/md5-cache/sys-power/dptf-9.0.10600-r1 b/metadata/md5-cache/sys-power/dptf-9.0.10600-r1
new file mode 100644
index 0000000..17f6d61
--- /dev/null
+++ b/metadata/md5-cache/sys-power/dptf-9.0.10600-r1
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=chromeos-base/chromeos-config-tools sys-apps/dbus sys-libs/ncurses sys-libs/readline has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= ) sys-devel/make >=dev-util/cmake-3.9.6
+DESCRIPTION=Intel(R) Dynamic Platform & Thermal Framework
+EAPI=6
+HOMEPAGE=https://01.org/dptf/
+IUSE=debug has_chromeos_config_bsp has_chromeos_config_bsp_private has_chromeos_config_bsp_baseboard has_chromeos_config_bsp_baseboard_private unibuild
+KEYWORDS=-* amd64 x86
+LICENSE=Apache-2.0 GPL-2 BSD
+RDEPEND=chromeos-base/chromeos-config-tools sys-apps/dbus sys-libs/ncurses sys-libs/readline has_chromeos_config_bsp? ( chromeos-base/chromeos-config-bsp:= ) has_chromeos_config_bsp_private? ( chromeos-base/chromeos-config-bsp-private:= ) has_chromeos_config_bsp_baseboard? ( chromeos-base/chromeos-config-bsp-baseboard:= ) has_chromeos_config_bsp_baseboard_private? ( chromeos-base/chromeos-config-bsp-baseboard-private:= ) unibuild? ( chromeos-base/chromeos-config:= )
+SLOT=0
+SRC_URI=https://github.com/intel/dptf/archive/9.0.10600.tar.gz -> dptf-9.0.10600.tar.gz
+_eclasses_=cmake-utils	91d6ef31dc426240577497cacbf2508c	cros-unibuild	1e3c054ec0012700a0ee1c421b79a600	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=6a610f98480062d961c5743e4e7c655a
diff --git a/metadata/md5-cache/sys-power/dptf-policy-ap-9.0.10500-r1 b/metadata/md5-cache/sys-power/dptf-policy-ap-9.0.10500-r1
deleted file mode 100644
index a3a9d75..0000000
--- a/metadata/md5-cache/sys-power/dptf-policy-ap-9.0.10500-r1
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Adaptive Performance Policy for Intel(R) Dynamic Platform & Thermal Framework
-EAPI=5
-KEYWORDS=*
-LICENSE=LICENSE.intel-dptf-private
-RESTRICT=mirror
-SLOT=0
-SRC_URI=gs://chromeos-binaries/HOME/bcs-chipset-kbl-private/chipset-kbl-private/dptf/DptfPolicyAdaptivePerformance-9.0.10500.tbz2
-_eclasses_=cros-binary	1c6eaa4fc56e7f712aa6c195e2ce5b73
-_md5_=dfe8b2e589a2412bf1194d171aa10134
diff --git a/metadata/md5-cache/sys-power/dptf-policy-ap-9.0.10600-r1 b/metadata/md5-cache/sys-power/dptf-policy-ap-9.0.10600-r1
new file mode 100644
index 0000000..bab3455
--- /dev/null
+++ b/metadata/md5-cache/sys-power/dptf-policy-ap-9.0.10600-r1
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DESCRIPTION=Adaptive Performance Policy for Intel(R) Dynamic Platform & Thermal Framework
+EAPI=5
+KEYWORDS=*
+LICENSE=LICENSE.intel-dptf-private
+RESTRICT=mirror
+SLOT=0
+SRC_URI=gs://chromeos-binaries/HOME/bcs-chipset-kbl-private/chipset-kbl-private/dptf/DptfPolicyAdaptivePerformance-9.0.10600.tbz2
+_eclasses_=cros-binary	1c6eaa4fc56e7f712aa6c195e2ce5b73
+_md5_=dfe8b2e589a2412bf1194d171aa10134
diff --git a/metadata/md5-cache/sys-power/dptf-policy-passive2-9.0.10500-r1 b/metadata/md5-cache/sys-power/dptf-policy-passive2-9.0.10500-r1
deleted file mode 100644
index 49242b8..0000000
--- a/metadata/md5-cache/sys-power/dptf-policy-passive2-9.0.10500-r1
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Passive2 Policy for Intel(R) Dynamic Platform & Thermal Framework
-EAPI=5
-KEYWORDS=*
-LICENSE=LICENSE.intel-dptf-private
-RESTRICT=mirror
-SLOT=0
-SRC_URI=gs://chromeos-binaries/HOME/bcs-chipset-kbl-private/chipset-kbl-private/dptf/DptfPolicyPassive2-9.0.10500.tbz2
-_eclasses_=cros-binary	1c6eaa4fc56e7f712aa6c195e2ce5b73
-_md5_=ca12868dfe2e507dc929e8ba83fd5f8e
diff --git a/metadata/md5-cache/sys-power/dptf-policy-passive2-9.0.10600-r1 b/metadata/md5-cache/sys-power/dptf-policy-passive2-9.0.10600-r1
new file mode 100644
index 0000000..9c8fec8
--- /dev/null
+++ b/metadata/md5-cache/sys-power/dptf-policy-passive2-9.0.10600-r1
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DESCRIPTION=Passive2 Policy for Intel(R) Dynamic Platform & Thermal Framework
+EAPI=5
+KEYWORDS=*
+LICENSE=LICENSE.intel-dptf-private
+RESTRICT=mirror
+SLOT=0
+SRC_URI=gs://chromeos-binaries/HOME/bcs-chipset-kbl-private/chipset-kbl-private/dptf/DptfPolicyPassive2-9.0.10600.tbz2
+_eclasses_=cros-binary	1c6eaa4fc56e7f712aa6c195e2ce5b73
+_md5_=ca12868dfe2e507dc929e8ba83fd5f8e
diff --git a/metadata/md5-cache/sys-power/dptf-policy-vs-9.0.10500-r1 b/metadata/md5-cache/sys-power/dptf-policy-vs-9.0.10500-r1
deleted file mode 100644
index db2831a..0000000
--- a/metadata/md5-cache/sys-power/dptf-policy-vs-9.0.10500-r1
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=install
-DESCRIPTION=Virtual Sensor Policy for Intel(R) Dynamic Platform & Thermal Framework
-EAPI=5
-KEYWORDS=*
-LICENSE=LICENSE.intel-dptf-private
-RESTRICT=mirror
-SLOT=0
-SRC_URI=gs://chromeos-binaries/HOME/bcs-chipset-kbl-private/chipset-kbl-private/dptf/DptfPolicyVirtualSensor-9.0.10500.tbz2
-_eclasses_=cros-binary	1c6eaa4fc56e7f712aa6c195e2ce5b73
-_md5_=c42878251902d94220fc105884a738b4
diff --git a/metadata/md5-cache/sys-power/dptf-policy-vs-9.0.10600-r1 b/metadata/md5-cache/sys-power/dptf-policy-vs-9.0.10600-r1
new file mode 100644
index 0000000..20dcf4d
--- /dev/null
+++ b/metadata/md5-cache/sys-power/dptf-policy-vs-9.0.10600-r1
@@ -0,0 +1,10 @@
+DEFINED_PHASES=install
+DESCRIPTION=Virtual Sensor Policy for Intel(R) Dynamic Platform & Thermal Framework
+EAPI=5
+KEYWORDS=*
+LICENSE=LICENSE.intel-dptf-private
+RESTRICT=mirror
+SLOT=0
+SRC_URI=gs://chromeos-binaries/HOME/bcs-chipset-kbl-private/chipset-kbl-private/dptf/DptfPolicyVirtualSensor-9.0.10600.tbz2
+_eclasses_=cros-binary	1c6eaa4fc56e7f712aa6c195e2ce5b73
+_md5_=c42878251902d94220fc105884a738b4
diff --git a/metadata/md5-cache/sys-process/audit-2.8.4 b/metadata/md5-cache/sys-process/audit-2.8.4
index ecc8da0..1e53e48 100644
--- a/metadata/md5-cache/sys-process/audit-2.8.4
+++ b/metadata/md5-cache/sys-process/audit-2.8.4
@@ -11,5 +11,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=https://people.redhat.com/sgrubb/audit/audit-2.8.4.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fb78152d6dfe81bc36d0201de9de79f3
diff --git a/metadata/md5-cache/sys-process/audit-2.8.4-r6 b/metadata/md5-cache/sys-process/audit-2.8.4-r6
index ecc8da0..1e53e48 100644
--- a/metadata/md5-cache/sys-process/audit-2.8.4-r6
+++ b/metadata/md5-cache/sys-process/audit-2.8.4-r6
@@ -11,5 +11,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=https://people.redhat.com/sgrubb/audit/audit-2.8.4.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	desktop	b1d22ac8bdd4679ab79c71aca235009d	eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	linux-info	327865b9921771330775d971263dc234	ltprune	2729691420b6deeda2a90b1f1183fb55	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	preserve-libs	ef207dc62baddfddfd39a164d9797648	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	systemd	71fd8d2065d102753fb9e4d20eaf3e9f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=fb78152d6dfe81bc36d0201de9de79f3
diff --git a/metadata/md5-cache/sys-process/criu-3.15 b/metadata/md5-cache/sys-process/criu-3.15
index e22bef9..474aa87 100644
--- a/metadata/md5-cache/sys-process/criu-3.15
+++ b/metadata/md5-cache/sys-process/criu-3.15
@@ -11,5 +11,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=https://download.openvz.org/criu/criu-3.15.tar.bz2
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=c553f9e11f26235a34f6433cca529ad2
diff --git a/metadata/md5-cache/sys-process/criu-3.15-r1 b/metadata/md5-cache/sys-process/criu-3.15-r1
index e22bef9..474aa87 100644
--- a/metadata/md5-cache/sys-process/criu-3.15-r1
+++ b/metadata/md5-cache/sys-process/criu-3.15-r1
@@ -11,5 +11,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=https://download.openvz.org/criu/criu-3.15.tar.bz2
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	linux-info	327865b9921771330775d971263dc234	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	python-r1	79e26ce8f853c9daebe9a4956e37cc1b	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=c553f9e11f26235a34f6433cca529ad2
diff --git a/metadata/md5-cache/virtual/chromeos-config-bsp-1 b/metadata/md5-cache/virtual/chromeos-config-bsp-1
deleted file mode 100644
index a9cf791..0000000
--- a/metadata/md5-cache/virtual/chromeos-config-bsp-1
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=-
-DEPEND=chromeos-base/chromeos-config-bsp
-DESCRIPTION=Chrome OS BSP config virtual package
-EAPI=7
-HOMEPAGE=http://src.chromium.org
-KEYWORDS=*
-LICENSE=metapackage
-RDEPEND=chromeos-base/chromeos-config-bsp
-SLOT=0
-_md5_=929c5c5c6e492706700de3c9b61812c7
diff --git a/metadata/md5-cache/virtual/chromeos-config-bsp-1-r4 b/metadata/md5-cache/virtual/chromeos-config-bsp-1-r4
deleted file mode 100644
index a9cf791..0000000
--- a/metadata/md5-cache/virtual/chromeos-config-bsp-1-r4
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=-
-DEPEND=chromeos-base/chromeos-config-bsp
-DESCRIPTION=Chrome OS BSP config virtual package
-EAPI=7
-HOMEPAGE=http://src.chromium.org
-KEYWORDS=*
-LICENSE=metapackage
-RDEPEND=chromeos-base/chromeos-config-bsp
-SLOT=0
-_md5_=929c5c5c6e492706700de3c9b61812c7
diff --git a/metadata/md5-cache/virtual/chromium-os-fuzzers-1-r59 b/metadata/md5-cache/virtual/chromium-os-fuzzers-1-r59
deleted file mode 100644
index 41452fd..0000000
--- a/metadata/md5-cache/virtual/chromium-os-fuzzers-1-r59
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info setup unpack
-DESCRIPTION=List of packages that should be fuzzed
-EAPI=7
-HOMEPAGE=https://dev.chromium.org/
-IUSE=asan msan cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
-KEYWORDS=*
-LICENSE=metapackage
-PROPERTIES=live
-RDEPEND=chromeos-base/arc-adbd[fuzzer] asan? ( chromeos-base/arc-keymaster[fuzzer] ) chromeos-base/arc-obb-mounter[fuzzer] chromeos-base/arc-setup[fuzzer] chromeos-base/authpolicy[fuzzer] chromeos-base/biod[fuzzer] chromeos-base/chaps[fuzzer] chromeos-base/chromeos-ec[fuzzer] chromeos-base/chromeos-login[fuzzer] chromeos-base/crash-reporter[fuzzer] chromeos-base/cros-disks[fuzzer] chromeos-base/crosdns[fuzzer] chromeos-base/cryptohome[fuzzer] chromeos-base/cups-fuzz[fuzzer] chromeos-base/diagnostics[fuzzer] chromeos-base/dlcservice[fuzzer] chromeos-base/foomatic_shell[fuzzer] chromeos-base/ghostscript-fuzz[fuzzer] chromeos-base/hammerd[fuzzer] chromeos-base/imageloader[fuzzer] chromeos-base/kerberos[fuzzer] chromeos-base/libbrillo[fuzzer] chromeos-base/libipp[fuzzer] asan? ( chromeos-base/libvda[fuzzer] ) chromeos-base/metrics[fuzzer] chromeos-base/ml[fuzzer] chromeos-base/modemfwd[fuzzer] chromeos-base/p2p[fuzzer] chromeos-base/patchpanel[fuzzer] chromeos-base/patchpanel-client[fuzzer] chromeos-base/permission_broker[fuzzer] chromeos-base/power_manager[fuzzer] chromeos-base/runtime_probe[fuzzer] >=chromeos-base/shill-0.0.1-r2205[fuzzer] chromeos-base/smbprovider[fuzzer] chromeos-base/system-proxy[fuzzer] chromeos-base/trunks[fuzzer] chromeos-base/u2fd[fuzzer] chromeos-base/update_engine[fuzzer] chromeos-base/usb_bouncer[fuzzer] chromeos-base/vboot_reference[fuzzer] chromeos-base/vm_guest_tools[fuzzer] chromeos-base/vpn-manager[fuzzer] asan? ( chromeos-base/vm_host_tools[fuzzer] ) dev-libs/modp_b64[fuzzer] asan? ( dev-rust/p9[fuzzer] ) dev-util/bsdiff[fuzzer] dev-util/puffin[fuzzer] media-gfx/sane-airscan[fuzzer] media-libs/virglrenderer[fuzzer] media-sound/adhd[fuzzer] net-dns/avahi[fuzzer] net-wireless/bluez[fuzzer]
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5239207a2280e773a4169ab4060c9384
diff --git a/metadata/md5-cache/virtual/chromium-os-fuzzers-1-r62 b/metadata/md5-cache/virtual/chromium-os-fuzzers-1-r62
new file mode 100644
index 0000000..f592725
--- /dev/null
+++ b/metadata/md5-cache/virtual/chromium-os-fuzzers-1-r62
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info setup unpack
+DESCRIPTION=List of packages that should be fuzzed
+EAPI=7
+HOMEPAGE=https://dev.chromium.org/
+IUSE=asan msan cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
+KEYWORDS=*
+LICENSE=metapackage
+PROPERTIES=live
+RDEPEND=chromeos-base/arc-adbd[fuzzer] asan? ( chromeos-base/arc-keymaster[fuzzer] ) chromeos-base/arc-obb-mounter[fuzzer] chromeos-base/arc-setup[fuzzer] chromeos-base/authpolicy[fuzzer] chromeos-base/biod[fuzzer] chromeos-base/chaps[fuzzer] chromeos-base/chromeos-ec[fuzzer] chromeos-base/chromeos-login[fuzzer] chromeos-base/crash-reporter[fuzzer] chromeos-base/cros-disks[fuzzer] chromeos-base/crosdns[fuzzer] chromeos-base/cryptohome[fuzzer] chromeos-base/cups-fuzz[fuzzer] chromeos-base/diagnostics[fuzzer] chromeos-base/dlcservice[fuzzer] chromeos-base/dns-proxy[fuzzer] chromeos-base/foomatic_shell[fuzzer] chromeos-base/ghostscript-fuzz[fuzzer] chromeos-base/hammerd[fuzzer] chromeos-base/imageloader[fuzzer] chromeos-base/kerberos[fuzzer] chromeos-base/libbrillo[fuzzer] chromeos-base/libipp[fuzzer] asan? ( chromeos-base/libvda[fuzzer] ) chromeos-base/metrics[fuzzer] chromeos-base/ml[fuzzer] chromeos-base/modemfwd[fuzzer] chromeos-base/p2p[fuzzer] chromeos-base/patchpanel[fuzzer] chromeos-base/patchpanel-client[fuzzer] chromeos-base/permission_broker[fuzzer] chromeos-base/power_manager[fuzzer] chromeos-base/runtime_probe[fuzzer] >=chromeos-base/shill-0.0.1-r2205[fuzzer] chromeos-base/smbprovider[fuzzer] chromeos-base/sommelier[fuzzer] chromeos-base/system-proxy[fuzzer] chromeos-base/trunks[fuzzer] chromeos-base/u2fd[fuzzer] chromeos-base/update_engine[fuzzer] chromeos-base/usb_bouncer[fuzzer] chromeos-base/vboot_reference[fuzzer] chromeos-base/vm_guest_tools[fuzzer] chromeos-base/vpn-manager[fuzzer] asan? ( chromeos-base/vm_host_tools[fuzzer] ) dev-libs/modp_b64[fuzzer] asan? ( dev-rust/p9[fuzzer] ) dev-util/bsdiff[fuzzer] dev-util/puffin[fuzzer] media-gfx/sane-airscan[fuzzer] media-libs/virglrenderer[fuzzer] media-sound/adhd[fuzzer] net-dns/avahi[fuzzer] net-wireless/bluez[fuzzer] net-wireless/wpa_supplicant-cros[fuzzer]
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=bea7cc3a5cdacc60affeb053df94853c
diff --git a/metadata/md5-cache/virtual/chromium-os-fuzzers-9999 b/metadata/md5-cache/virtual/chromium-os-fuzzers-9999
index 825bb17..68ce086 100644
--- a/metadata/md5-cache/virtual/chromium-os-fuzzers-9999
+++ b/metadata/md5-cache/virtual/chromium-os-fuzzers-9999
@@ -7,7 +7,7 @@
 KEYWORDS=~*
 LICENSE=metapackage
 PROPERTIES=live
-RDEPEND=chromeos-base/arc-adbd[fuzzer] asan? ( chromeos-base/arc-keymaster[fuzzer] ) chromeos-base/arc-obb-mounter[fuzzer] chromeos-base/arc-setup[fuzzer] chromeos-base/authpolicy[fuzzer] chromeos-base/biod[fuzzer] chromeos-base/chaps[fuzzer] chromeos-base/chromeos-ec[fuzzer] chromeos-base/chromeos-login[fuzzer] chromeos-base/crash-reporter[fuzzer] chromeos-base/cros-disks[fuzzer] chromeos-base/crosdns[fuzzer] chromeos-base/cryptohome[fuzzer] chromeos-base/cups-fuzz[fuzzer] chromeos-base/diagnostics[fuzzer] chromeos-base/dlcservice[fuzzer] chromeos-base/foomatic_shell[fuzzer] chromeos-base/ghostscript-fuzz[fuzzer] chromeos-base/hammerd[fuzzer] chromeos-base/imageloader[fuzzer] chromeos-base/kerberos[fuzzer] chromeos-base/libbrillo[fuzzer] chromeos-base/libipp[fuzzer] asan? ( chromeos-base/libvda[fuzzer] ) chromeos-base/metrics[fuzzer] chromeos-base/ml[fuzzer] chromeos-base/modemfwd[fuzzer] chromeos-base/p2p[fuzzer] chromeos-base/patchpanel[fuzzer] chromeos-base/patchpanel-client[fuzzer] chromeos-base/permission_broker[fuzzer] chromeos-base/power_manager[fuzzer] chromeos-base/runtime_probe[fuzzer] >=chromeos-base/shill-0.0.1-r2205[fuzzer] chromeos-base/smbprovider[fuzzer] chromeos-base/system-proxy[fuzzer] chromeos-base/trunks[fuzzer] chromeos-base/u2fd[fuzzer] chromeos-base/update_engine[fuzzer] chromeos-base/usb_bouncer[fuzzer] chromeos-base/vboot_reference[fuzzer] chromeos-base/vm_guest_tools[fuzzer] chromeos-base/vpn-manager[fuzzer] asan? ( chromeos-base/vm_host_tools[fuzzer] ) dev-libs/modp_b64[fuzzer] asan? ( dev-rust/p9[fuzzer] ) dev-util/bsdiff[fuzzer] dev-util/puffin[fuzzer] media-gfx/sane-airscan[fuzzer] media-libs/virglrenderer[fuzzer] media-sound/adhd[fuzzer] net-dns/avahi[fuzzer] net-wireless/bluez[fuzzer]
+RDEPEND=chromeos-base/arc-adbd[fuzzer] asan? ( chromeos-base/arc-keymaster[fuzzer] ) chromeos-base/arc-obb-mounter[fuzzer] chromeos-base/arc-setup[fuzzer] chromeos-base/authpolicy[fuzzer] chromeos-base/biod[fuzzer] chromeos-base/chaps[fuzzer] chromeos-base/chromeos-ec[fuzzer] chromeos-base/chromeos-login[fuzzer] chromeos-base/crash-reporter[fuzzer] chromeos-base/cros-disks[fuzzer] chromeos-base/crosdns[fuzzer] chromeos-base/cryptohome[fuzzer] chromeos-base/cups-fuzz[fuzzer] chromeos-base/diagnostics[fuzzer] chromeos-base/dlcservice[fuzzer] chromeos-base/dns-proxy[fuzzer] chromeos-base/foomatic_shell[fuzzer] chromeos-base/ghostscript-fuzz[fuzzer] chromeos-base/hammerd[fuzzer] chromeos-base/imageloader[fuzzer] chromeos-base/kerberos[fuzzer] chromeos-base/libbrillo[fuzzer] chromeos-base/libipp[fuzzer] asan? ( chromeos-base/libvda[fuzzer] ) chromeos-base/metrics[fuzzer] chromeos-base/ml[fuzzer] chromeos-base/modemfwd[fuzzer] chromeos-base/p2p[fuzzer] chromeos-base/patchpanel[fuzzer] chromeos-base/patchpanel-client[fuzzer] chromeos-base/permission_broker[fuzzer] chromeos-base/power_manager[fuzzer] chromeos-base/runtime_probe[fuzzer] >=chromeos-base/shill-0.0.1-r2205[fuzzer] chromeos-base/smbprovider[fuzzer] chromeos-base/sommelier[fuzzer] chromeos-base/system-proxy[fuzzer] chromeos-base/trunks[fuzzer] chromeos-base/u2fd[fuzzer] chromeos-base/update_engine[fuzzer] chromeos-base/usb_bouncer[fuzzer] chromeos-base/vboot_reference[fuzzer] chromeos-base/vm_guest_tools[fuzzer] chromeos-base/vpn-manager[fuzzer] asan? ( chromeos-base/vm_host_tools[fuzzer] ) dev-libs/modp_b64[fuzzer] asan? ( dev-rust/p9[fuzzer] ) dev-util/bsdiff[fuzzer] dev-util/puffin[fuzzer] media-gfx/sane-airscan[fuzzer] media-libs/virglrenderer[fuzzer] media-sound/adhd[fuzzer] net-dns/avahi[fuzzer] net-wireless/bluez[fuzzer] net-wireless/wpa_supplicant-cros[fuzzer]
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=6d6a426e8fbd2f1331941be057ad2b60
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5647c18027c0cb5eb23f462c97407733
diff --git a/metadata/md5-cache/virtual/lpe-support-1 b/metadata/md5-cache/virtual/lpe-support-1
index e4194b3..0449c3c 100644
--- a/metadata/md5-cache/virtual/lpe-support-1
+++ b/metadata/md5-cache/virtual/lpe-support-1
@@ -1,10 +1,10 @@
 DEFINED_PHASES=-
-DEPEND=apl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_apl] ) cnl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_cnl] ) glk_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_glk] ) kbl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_kbl] ) media-libs/lpe-support-topology media-libs/lpe-support-blacklist skl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_skl] )
+DEPEND=apl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_apl] ) cnl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_cnl] ) glk_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_glk] ) kbl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_kbl] ) !has_private_audio_topology? ( media-libs/lpe-support-topology ) has_private_audio_topology? ( media-libs/lpe-support-topology-private ) media-libs/lpe-support-blacklist skl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_skl] )
 DESCRIPTION=Ebuild which pulls in any necessary ebuilds as dependencies or portage actions.
 EAPI=7
-IUSE=skl_lpe apl_lpe kbl_lpe cnl_lpe glk_lpe
+IUSE=skl_lpe apl_lpe kbl_lpe cnl_lpe glk_lpe has_private_audio_topology
 KEYWORDS=-* amd64 x86
 LICENSE=metapackage
-RDEPEND=apl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_apl] ) cnl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_cnl] ) glk_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_glk] ) kbl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_kbl] ) media-libs/lpe-support-topology media-libs/lpe-support-blacklist skl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_skl] )
+RDEPEND=apl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_apl] ) cnl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_cnl] ) glk_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_glk] ) kbl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_kbl] ) !has_private_audio_topology? ( media-libs/lpe-support-topology ) has_private_audio_topology? ( media-libs/lpe-support-topology-private ) media-libs/lpe-support-blacklist skl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_skl] )
 SLOT=0
-_md5_=121f279e68ada69ae7b0f34c5a17c9ab
+_md5_=aff770af8dfdc832749f816b44039585
diff --git a/metadata/md5-cache/virtual/lpe-support-1-r7 b/metadata/md5-cache/virtual/lpe-support-1-r7
deleted file mode 100644
index e4194b3..0000000
--- a/metadata/md5-cache/virtual/lpe-support-1-r7
+++ /dev/null
@@ -1,10 +0,0 @@
-DEFINED_PHASES=-
-DEPEND=apl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_apl] ) cnl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_cnl] ) glk_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_glk] ) kbl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_kbl] ) media-libs/lpe-support-topology media-libs/lpe-support-blacklist skl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_skl] )
-DESCRIPTION=Ebuild which pulls in any necessary ebuilds as dependencies or portage actions.
-EAPI=7
-IUSE=skl_lpe apl_lpe kbl_lpe cnl_lpe glk_lpe
-KEYWORDS=-* amd64 x86
-LICENSE=metapackage
-RDEPEND=apl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_apl] ) cnl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_cnl] ) glk_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_glk] ) kbl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_kbl] ) media-libs/lpe-support-topology media-libs/lpe-support-blacklist skl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_skl] )
-SLOT=0
-_md5_=121f279e68ada69ae7b0f34c5a17c9ab
diff --git a/metadata/md5-cache/virtual/lpe-support-1-r8 b/metadata/md5-cache/virtual/lpe-support-1-r8
new file mode 100644
index 0000000..0449c3c
--- /dev/null
+++ b/metadata/md5-cache/virtual/lpe-support-1-r8
@@ -0,0 +1,10 @@
+DEFINED_PHASES=-
+DEPEND=apl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_apl] ) cnl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_cnl] ) glk_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_glk] ) kbl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_kbl] ) !has_private_audio_topology? ( media-libs/lpe-support-topology ) has_private_audio_topology? ( media-libs/lpe-support-topology-private ) media-libs/lpe-support-blacklist skl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_skl] )
+DESCRIPTION=Ebuild which pulls in any necessary ebuilds as dependencies or portage actions.
+EAPI=7
+IUSE=skl_lpe apl_lpe kbl_lpe cnl_lpe glk_lpe has_private_audio_topology
+KEYWORDS=-* amd64 x86
+LICENSE=metapackage
+RDEPEND=apl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_apl] ) cnl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_cnl] ) glk_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_glk] ) kbl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_kbl] ) !has_private_audio_topology? ( media-libs/lpe-support-topology ) has_private_audio_topology? ( media-libs/lpe-support-topology-private ) media-libs/lpe-support-blacklist skl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_skl] )
+SLOT=0
+_md5_=aff770af8dfdc832749f816b44039585
diff --git a/metadata/md5-cache/virtual/rust-1.47.0 b/metadata/md5-cache/virtual/rust-1.47.0
deleted file mode 100644
index 5d3e69a..0000000
--- a/metadata/md5-cache/virtual/rust-1.47.0
+++ /dev/null
@@ -1,8 +0,0 @@
-DEFINED_PHASES=-
-DEPEND=~dev-lang/rust-1.47.0:=
-DESCRIPTION=Virtual for the Rust language compiler
-EAPI=7
-KEYWORDS=*
-LICENSE=metapackage
-SLOT=0/1.47.0
-_md5_=562a9b7b89850bc9d641a4adb3977d36
diff --git a/metadata/md5-cache/virtual/rust-1.47.0-r7 b/metadata/md5-cache/virtual/rust-1.47.0-r7
deleted file mode 100644
index 5d3e69a..0000000
--- a/metadata/md5-cache/virtual/rust-1.47.0-r7
+++ /dev/null
@@ -1,8 +0,0 @@
-DEFINED_PHASES=-
-DEPEND=~dev-lang/rust-1.47.0:=
-DESCRIPTION=Virtual for the Rust language compiler
-EAPI=7
-KEYWORDS=*
-LICENSE=metapackage
-SLOT=0/1.47.0
-_md5_=562a9b7b89850bc9d641a4adb3977d36
diff --git a/metadata/md5-cache/virtual/rust-1.51.0 b/metadata/md5-cache/virtual/rust-1.51.0
deleted file mode 100644
index a09a172..0000000
--- a/metadata/md5-cache/virtual/rust-1.51.0
+++ /dev/null
@@ -1,8 +0,0 @@
-DEFINED_PHASES=-
-DEPEND=~dev-lang/rust-1.51.0:=
-DESCRIPTION=Virtual for the Rust language compiler
-EAPI=7
-KEYWORDS=*
-LICENSE=metapackage
-SLOT=0/1.51.0
-_md5_=562a9b7b89850bc9d641a4adb3977d36
diff --git a/metadata/md5-cache/virtual/rust-1.51.0-r1 b/metadata/md5-cache/virtual/rust-1.51.0-r1
deleted file mode 100644
index a09a172..0000000
--- a/metadata/md5-cache/virtual/rust-1.51.0-r1
+++ /dev/null
@@ -1,8 +0,0 @@
-DEFINED_PHASES=-
-DEPEND=~dev-lang/rust-1.51.0:=
-DESCRIPTION=Virtual for the Rust language compiler
-EAPI=7
-KEYWORDS=*
-LICENSE=metapackage
-SLOT=0/1.51.0
-_md5_=562a9b7b89850bc9d641a4adb3977d36
diff --git a/metadata/md5-cache/virtual/rust-1.55.0 b/metadata/md5-cache/virtual/rust-1.55.0
new file mode 100644
index 0000000..6411b76
--- /dev/null
+++ b/metadata/md5-cache/virtual/rust-1.55.0
@@ -0,0 +1,8 @@
+DEFINED_PHASES=-
+DEPEND=~dev-lang/rust-1.55.0:=
+DESCRIPTION=Virtual for the Rust language compiler
+EAPI=7
+KEYWORDS=*
+LICENSE=metapackage
+SLOT=0/1.55.0
+_md5_=562a9b7b89850bc9d641a4adb3977d36
diff --git a/metadata/md5-cache/virtual/target-chromium-os-1-r172 b/metadata/md5-cache/virtual/target-chromium-os-1-r172
deleted file mode 100644
index 9afb281..0000000
--- a/metadata/md5-cache/virtual/target-chromium-os-1-r172
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info setup unpack
-DESCRIPTION=List of packages that are needed inside the Chromium OS base (release)
-EAPI=7
-HOMEPAGE=https://dev.chromium.org/
-IUSE=arc-camera1 arc-camera3 biod bluetooth bootchart buffet cellular compupdates containers cr50_onboard +cras +crash_reporting +cros_disks cros_embedded cups +debugd diagnostics dlc dlc_test dlp dns-proxy dptf eclog +fonts fpstudy fuzzer fwupd hammerd iioservice ime input_devices_evdev intel_lpe iwlwifi_rescan kerberos_daemon kvm_host lacros_rootfs manatee media_perception memd missive mist minios secanomalyd modemfwd ml_service hps mtd +network_time nfc os_install_service pam pciguard perfetto postscript +power_management +profile racc +readahead resourced rmad scanner selinux +shill sirenia smbprovider +syslog +system_locales system_proxy systemd ti50_onboard touchview +tpm -tpm2 +trim_supported typecd usb_bouncer usbguard +vpn watchdog cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
-KEYWORDS=*
-LICENSE=metapackage
-PROPERTIES=live
-RDEPEND=input_devices_evdev? ( app-misc/evtest ) syslog? ( app-admin/rsyslog chromeos-base/croslog ) biod? ( chromeos-base/biod ) fpstudy? ( chromeos-base/fingerprint_study ) compupdates? ( chromeos-base/imageloader ) dlc? ( chromeos-base/dlcservice ) dlc_test? ( chromeos-base/sample-dlc chromeos-base/test-dlc ) bluetooth? ( net-wireless/bluez ) bootchart? ( app-benchmarks/bootchart ) tpm? ( !tpm2? ( app-crypt/trousers ) chromeos-base/chaps ) tpm2? ( chromeos-base/trunks ) pam? ( virtual/chromeos-auth-config ) fonts? ( chromeos-base/chromeos-fonts ) chromeos-base/chromeos-installer chromeos-base/dev-install os_install_service? ( chromeos-base/os_install_service ) perfetto? ( chromeos-base/perfetto ) crash_reporting? ( chromeos-base/crash-reporter ) missive? ( chromeos-base/missive ) mist? ( chromeos-base/mist ) modemfwd? ( chromeos-base/modemfwd ) buffet? ( chromeos-base/buffet ) containers? ( chromeos-base/run_oci ) cros_disks? ( chromeos-base/cros-disks ) debugd? ( chromeos-base/debugd ) diagnostics? ( chromeos-base/diagnostics ) dlp? ( chromeos-base/dlp ) kerberos_daemon? ( chromeos-base/kerberos ) scanner? ( chromeos-base/lorgnette ) ml_service? ( chromeos-base/ml ) hps? ( chromeos-base/hpsd ) hammerd? ( chromeos-base/hammerd ) racc? ( chromeos-base/hardware_verifier chromeos-base/runtime_probe ) rmad? ( chromeos-base/rmad ) iioservice? ( chromeos-base/iioservice ) media_perception? ( chromeos-base/mri_package ) memd? ( chromeos-base/memd ) power_management? ( chromeos-base/power_manager ) !chromeos-base/platform2 profile? ( chromeos-base/quipper ) resourced? ( chromeos-base/resourced ) selinux? ( chromeos-base/selinux-policy ) shill? ( >=chromeos-base/shill-0.0.1-r2205 ) manatee? ( chromeos-base/sirenia ) sirenia? ( chromeos-base/sirenia ) usb_bouncer? ( chromeos-base/usb_bouncer ) chromeos-base/update_engine vpn? ( chromeos-base/vpn-manager ) cras? ( media-sound/adhd media-sound/cras_tests ) trim_supported? ( chromeos-base/chromeos-trim ) network_time? ( net-misc/tlsdate ) iwlwifi_rescan? ( net-wireless/iwlwifi_rescan ) nfc? ( net-wireless/neard chromeos-base/neard-configs ) readahead? ( sys-apps/ureadahead ) pam? ( sys-auth/pam_pwdfile ) watchdog? ( sys-apps/daisydog ) mtd? ( sys-fs/mtd-utils ) cups? ( virtual/chromium-os-printing ) touchview? ( !iioservice? ( chromeos-base/chromeos-accelerometer-init ) ) system_locales? ( chromeos-base/system-locales ) system_proxy? ( chromeos-base/system-proxy ) eclog? ( chromeos-base/timberslide ) chromeos-base/chromeos-machine-id-regen systemd? ( sys-apps/systemd ) !systemd? ( sys-apps/systemd-tmpfiles ) usbguard? ( sys-apps/usbguard ) kvm_host? ( chromeos-base/crosdns chromeos-base/crostini_client chromeos-base/vm_host_tools chromeos-base/termina-dlc ) sys-kernel/linux-firmware virtual/chromeos-bsp virtual/chromeos-firewall virtual/chromeos-firmware virtual/chromeos-interface virtual/chromeos-regions virtual/implicit-system virtual/linux-sources virtual/modutils virtual/service-manager cr50_onboard? ( chromeos-base/chromeos-cr50 chromeos-base/u2fd ) ti50_onboard? ( chromeos-base/chromeos-ti50 chromeos-base/u2fd ) ime? ( app-i18n/chinese-input app-i18n/keyboard-input app-i18n/japanese-input app-i18n/hangul-input ) fuzzer? ( virtual/target-fuzzers ) !dev-python/socksipy arc-camera1? ( chromeos-base/cros-camera ) arc-camera3? ( chromeos-base/cros-camera ) fwupd? ( sys-apps/fwupd ) smbprovider? ( chromeos-base/smbfs chromeos-base/smbprovider ) typecd? ( chromeos-base/typecd ) pciguard? ( chromeos-base/pciguard ) minios? ( chromeos-base/minios ) secanomalyd? ( chromeos-base/secanomalyd ) lacros_rootfs? ( chromeos-base/chromeos-lacros ) dns-proxy? ( chromeos-base/dns-proxy ) !cros_embedded? ( x86? ( dptf? ( virtual/dptf ) intel_lpe? ( virtual/lpe-support ) ) amd64? ( dptf? ( virtual/dptf ) intel_lpe? ( virtual/lpe-support ) ) app-arch/tar app-editors/vim app-shells/bash chromeos-base/common-assets chromeos-base/chromeos-imageburner chromeos-base/crosh chromeos-base/crosh-extension chromeos-base/inputcontrol chromeos-base/mtpd chromeos-base/permission_broker chromeos-base/userfeedback chromeos-base/vboot_reference chromeos-base/vpd net-wireless/crda sys-apps/dbus sys-apps/flashrom sys-apps/iproute2 sys-apps/rootdev !systemd? ( sys-apps/upstart ) sys-fs/e2fsprogs virtual/assets virtual/cheets virtual/udev )
-REQUIRED_USE=cellular? ( shill ) modemfwd? ( cellular )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=11a56230b14c2c7f5326f5fc6f569af5
diff --git a/metadata/md5-cache/virtual/target-chromium-os-1-r185 b/metadata/md5-cache/virtual/target-chromium-os-1-r185
new file mode 100644
index 0000000..d9fc6d5
--- /dev/null
+++ b/metadata/md5-cache/virtual/target-chromium-os-1-r185
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info setup unpack
+DESCRIPTION=List of packages that are needed inside the Chromium OS base (release)
+EAPI=7
+HOMEPAGE=https://dev.chromium.org/
+IUSE=asan arc-camera1 arc-camera3 biod bluetooth bootchart buffet cellular compupdates containers cr50_onboard +cras +crash_reporting +cros_disks cros_embedded cups +debugd diagnostics dlc dlc_test dlp dns-proxy dptf eclog factory_branch featured federated_service floss +fonts fpstudy fuzzer fwupd hammerd iioservice ime input_devices_evdev intel_lpe iwlwifi_rescan kerberos_daemon kvm_host lacros_rootfs manatee media_perception memd missive mist minios mmc secanomalyd modemfwd ml_service hps mtd +network_time nfc os_install_service pam pciguard perfetto postscript +power_management +profile racc +readahead resourced rmad scanner selinux +shill sirenia smbprovider +spaced +syslog +system_locales system_proxy systemd ti50_onboard touchview +tpm -tpm2 +trim_supported typecd ubsan usb_bouncer usbguard +vpn watchdog cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
+KEYWORDS=*
+LICENSE=metapackage
+PROPERTIES=live
+RDEPEND=input_devices_evdev? ( app-misc/evtest ) syslog? ( app-admin/rsyslog chromeos-base/croslog chromeos-base/bootid-logger ) biod? ( chromeos-base/biod ) fpstudy? ( chromeos-base/fingerprint_study ) compupdates? ( chromeos-base/imageloader ) dlc? ( chromeos-base/dlcservice ) dlc_test? ( chromeos-base/sample-dlc chromeos-base/test-dlc ) bluetooth? ( net-wireless/bluez ) floss? ( net-wireless/floss ) bootchart? ( app-benchmarks/bootchart ) tpm? ( app-crypt/trousers chromeos-base/chaps ) tpm2? ( chromeos-base/trunks ) pam? ( virtual/chromeos-auth-config ) federated_service? ( chromeos-base/federated-service ) fonts? ( chromeos-base/chromeos-fonts ) chromeos-base/chromeos-installer chromeos-base/dev-install os_install_service? ( chromeos-base/os_install_service ) perfetto? ( chromeos-base/perfetto ) crash_reporting? ( chromeos-base/crash-reporter ) missive? ( chromeos-base/missive ) mist? ( chromeos-base/mist ) modemfwd? ( chromeos-base/modemfwd ) buffet? ( chromeos-base/buffet ) containers? ( chromeos-base/run_oci ) cros_disks? ( chromeos-base/cros-disks ) debugd? ( chromeos-base/debugd ) diagnostics? ( chromeos-base/diagnostics ) dlp? ( chromeos-base/dlp ) kerberos_daemon? ( chromeos-base/kerberos ) scanner? ( chromeos-base/lorgnette ) ml_service? ( chromeos-base/ml ) hps? ( chromeos-base/hpsd !asan? ( !ubsan? ( chromeos-base/hps-firmware ) ) ) hammerd? ( chromeos-base/hammerd ) racc? ( chromeos-base/hardware_verifier chromeos-base/runtime_probe ) rmad? ( chromeos-base/rmad ) iioservice? ( chromeos-base/iioservice ) media_perception? ( chromeos-base/mri_package ) memd? ( chromeos-base/memd ) power_management? ( chromeos-base/power_manager ) !chromeos-base/platform2 profile? ( chromeos-base/quipper ) resourced? ( chromeos-base/resourced ) selinux? ( chromeos-base/selinux-policy ) shill? ( >=chromeos-base/shill-0.0.1-r2205 ) manatee? ( chromeos-base/sirenia ) sirenia? ( chromeos-base/sirenia ) spaced? ( chromeos-base/spaced ) usb_bouncer? ( chromeos-base/usb_bouncer ) chromeos-base/update_engine vpn? ( chromeos-base/vpn-manager ) cras? ( media-sound/adhd media-sound/cras_tests ) trim_supported? ( chromeos-base/chromeos-trim ) network_time? ( net-misc/tlsdate ) iwlwifi_rescan? ( net-wireless/iwlwifi_rescan ) nfc? ( net-wireless/neard chromeos-base/neard-configs ) readahead? ( sys-apps/ureadahead ) pam? ( sys-auth/pam_pwdfile ) watchdog? ( sys-apps/daisydog ) mtd? ( sys-fs/mtd-utils ) cups? ( virtual/chromium-os-printing ) touchview? ( !iioservice? ( chromeos-base/chromeos-accelerometer-init ) ) system_locales? ( chromeos-base/system-locales ) system_proxy? ( chromeos-base/system-proxy ) eclog? ( chromeos-base/timberslide ) chromeos-base/chromeos-machine-id-regen systemd? ( sys-apps/systemd ) !systemd? ( sys-apps/systemd-tmpfiles ) usbguard? ( sys-apps/usbguard ) kvm_host? ( chromeos-base/crosdns chromeos-base/crostini_client chromeos-base/vm_host_tools chromeos-base/termina-dlc ) sys-kernel/linux-firmware virtual/chromeos-bsp virtual/chromeos-firewall !factory_branch? ( virtual/chromeos-firmware ) virtual/chromeos-interface virtual/chromeos-regions virtual/implicit-system virtual/linux-sources virtual/modutils virtual/service-manager cr50_onboard? ( chromeos-base/chromeos-cr50 chromeos-base/u2fd ) ti50_onboard? ( chromeos-base/chromeos-ti50 chromeos-base/u2fd ) ime? ( app-i18n/chinese-input app-i18n/keyboard-input app-i18n/japanese-input app-i18n/hangul-input ) fuzzer? ( virtual/target-fuzzers ) !dev-python/socksipy arc-camera1? ( chromeos-base/cros-camera ) arc-camera3? ( chromeos-base/cros-camera ) fwupd? ( sys-apps/fwupd mmc? ( sys-firmware/mmc-firmware ) ) smbprovider? ( chromeos-base/smbfs chromeos-base/smbprovider ) typecd? ( chromeos-base/typecd ) pciguard? ( chromeos-base/pciguard ) minios? ( chromeos-base/minios ) secanomalyd? ( chromeos-base/secanomalyd ) lacros_rootfs? ( chromeos-base/chromeos-lacros ) dns-proxy? ( chromeos-base/dns-proxy ) featured? ( chromeos-base/featured ) !cros_embedded? ( x86? ( dptf? ( virtual/dptf ) intel_lpe? ( virtual/lpe-support ) ) amd64? ( dptf? ( virtual/dptf ) intel_lpe? ( virtual/lpe-support ) ) app-arch/tar app-editors/vim app-shells/bash chromeos-base/common-assets chromeos-base/chromeos-imageburner chromeos-base/crosh chromeos-base/crosh-extension chromeos-base/inputcontrol chromeos-base/mtpd chromeos-base/permission_broker chromeos-base/userfeedback chromeos-base/vboot_reference chromeos-base/vpd net-wireless/crda sys-apps/dbus sys-apps/flashrom sys-apps/iproute2 sys-apps/rootdev !systemd? ( sys-apps/upstart ) sys-fs/e2fsprogs virtual/assets virtual/cheets virtual/udev )
+REQUIRED_USE=cellular? ( shill ) modemfwd? ( cellular )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=5935e7d6b808e49bd641d75c5a517962
diff --git a/metadata/md5-cache/virtual/target-chromium-os-9999 b/metadata/md5-cache/virtual/target-chromium-os-9999
index f0587ab..0bbabe2 100644
--- a/metadata/md5-cache/virtual/target-chromium-os-9999
+++ b/metadata/md5-cache/virtual/target-chromium-os-9999
@@ -3,12 +3,12 @@
 DESCRIPTION=List of packages that are needed inside the Chromium OS base (release)
 EAPI=7
 HOMEPAGE=https://dev.chromium.org/
-IUSE=arc-camera1 arc-camera3 biod bluetooth bootchart buffet cellular compupdates containers cr50_onboard +cras +crash_reporting +cros_disks cros_embedded cups +debugd diagnostics dlc dlc_test dlp dns-proxy dptf eclog +fonts fpstudy fuzzer fwupd hammerd iioservice ime input_devices_evdev intel_lpe iwlwifi_rescan kerberos_daemon kvm_host lacros_rootfs manatee media_perception memd missive mist minios secanomalyd modemfwd ml_service hps mtd +network_time nfc os_install_service pam pciguard perfetto postscript +power_management +profile racc +readahead resourced rmad scanner selinux +shill sirenia smbprovider +syslog +system_locales system_proxy systemd ti50_onboard touchview +tpm -tpm2 +trim_supported typecd usb_bouncer usbguard +vpn watchdog cros_host cros_workon_tree_
+IUSE=asan arc-camera1 arc-camera3 biod bluetooth bootchart buffet cellular compupdates containers cr50_onboard +cras +crash_reporting +cros_disks cros_embedded cups +debugd diagnostics dlc dlc_test dlp dns-proxy dptf eclog factory_branch featured federated_service floss +fonts fpstudy fuzzer fwupd hammerd iioservice ime input_devices_evdev intel_lpe iwlwifi_rescan kerberos_daemon kvm_host lacros_rootfs manatee media_perception memd missive mist minios mmc secanomalyd modemfwd ml_service hps mtd +network_time nfc os_install_service pam pciguard perfetto postscript +power_management +profile racc +readahead resourced rmad scanner selinux +shill sirenia smbprovider +spaced +syslog +system_locales system_proxy systemd ti50_onboard touchview +tpm -tpm2 +trim_supported typecd ubsan usb_bouncer usbguard +vpn watchdog cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=metapackage
 PROPERTIES=live
-RDEPEND=input_devices_evdev? ( app-misc/evtest ) syslog? ( app-admin/rsyslog chromeos-base/croslog ) biod? ( chromeos-base/biod ) fpstudy? ( chromeos-base/fingerprint_study ) compupdates? ( chromeos-base/imageloader ) dlc? ( chromeos-base/dlcservice ) dlc_test? ( chromeos-base/sample-dlc chromeos-base/test-dlc ) bluetooth? ( net-wireless/bluez ) bootchart? ( app-benchmarks/bootchart ) tpm? ( !tpm2? ( app-crypt/trousers ) chromeos-base/chaps ) tpm2? ( chromeos-base/trunks ) pam? ( virtual/chromeos-auth-config ) fonts? ( chromeos-base/chromeos-fonts ) chromeos-base/chromeos-installer chromeos-base/dev-install os_install_service? ( chromeos-base/os_install_service ) perfetto? ( chromeos-base/perfetto ) crash_reporting? ( chromeos-base/crash-reporter ) missive? ( chromeos-base/missive ) mist? ( chromeos-base/mist ) modemfwd? ( chromeos-base/modemfwd ) buffet? ( chromeos-base/buffet ) containers? ( chromeos-base/run_oci ) cros_disks? ( chromeos-base/cros-disks ) debugd? ( chromeos-base/debugd ) diagnostics? ( chromeos-base/diagnostics ) dlp? ( chromeos-base/dlp ) kerberos_daemon? ( chromeos-base/kerberos ) scanner? ( chromeos-base/lorgnette ) ml_service? ( chromeos-base/ml ) hps? ( chromeos-base/hpsd ) hammerd? ( chromeos-base/hammerd ) racc? ( chromeos-base/hardware_verifier chromeos-base/runtime_probe ) rmad? ( chromeos-base/rmad ) iioservice? ( chromeos-base/iioservice ) media_perception? ( chromeos-base/mri_package ) memd? ( chromeos-base/memd ) power_management? ( chromeos-base/power_manager ) !chromeos-base/platform2 profile? ( chromeos-base/quipper ) resourced? ( chromeos-base/resourced ) selinux? ( chromeos-base/selinux-policy ) shill? ( >=chromeos-base/shill-0.0.1-r2205 ) manatee? ( chromeos-base/sirenia ) sirenia? ( chromeos-base/sirenia ) usb_bouncer? ( chromeos-base/usb_bouncer ) chromeos-base/update_engine vpn? ( chromeos-base/vpn-manager ) cras? ( media-sound/adhd media-sound/cras_tests ) trim_supported? ( chromeos-base/chromeos-trim ) network_time? ( net-misc/tlsdate ) iwlwifi_rescan? ( net-wireless/iwlwifi_rescan ) nfc? ( net-wireless/neard chromeos-base/neard-configs ) readahead? ( sys-apps/ureadahead ) pam? ( sys-auth/pam_pwdfile ) watchdog? ( sys-apps/daisydog ) mtd? ( sys-fs/mtd-utils ) cups? ( virtual/chromium-os-printing ) touchview? ( !iioservice? ( chromeos-base/chromeos-accelerometer-init ) ) system_locales? ( chromeos-base/system-locales ) system_proxy? ( chromeos-base/system-proxy ) eclog? ( chromeos-base/timberslide ) chromeos-base/chromeos-machine-id-regen systemd? ( sys-apps/systemd ) !systemd? ( sys-apps/systemd-tmpfiles ) usbguard? ( sys-apps/usbguard ) kvm_host? ( chromeos-base/crosdns chromeos-base/crostini_client chromeos-base/vm_host_tools chromeos-base/termina-dlc ) sys-kernel/linux-firmware virtual/chromeos-bsp virtual/chromeos-firewall virtual/chromeos-firmware virtual/chromeos-interface virtual/chromeos-regions virtual/implicit-system virtual/linux-sources virtual/modutils virtual/service-manager cr50_onboard? ( chromeos-base/chromeos-cr50 chromeos-base/u2fd ) ti50_onboard? ( chromeos-base/chromeos-ti50 chromeos-base/u2fd ) ime? ( app-i18n/chinese-input app-i18n/keyboard-input app-i18n/japanese-input app-i18n/hangul-input ) fuzzer? ( virtual/target-fuzzers ) !dev-python/socksipy arc-camera1? ( chromeos-base/cros-camera ) arc-camera3? ( chromeos-base/cros-camera ) fwupd? ( sys-apps/fwupd ) smbprovider? ( chromeos-base/smbfs chromeos-base/smbprovider ) typecd? ( chromeos-base/typecd ) pciguard? ( chromeos-base/pciguard ) minios? ( chromeos-base/minios ) secanomalyd? ( chromeos-base/secanomalyd ) lacros_rootfs? ( chromeos-base/chromeos-lacros ) dns-proxy? ( chromeos-base/dns-proxy ) !cros_embedded? ( x86? ( dptf? ( virtual/dptf ) intel_lpe? ( virtual/lpe-support ) ) amd64? ( dptf? ( virtual/dptf ) intel_lpe? ( virtual/lpe-support ) ) app-arch/tar app-editors/vim app-shells/bash chromeos-base/common-assets chromeos-base/chromeos-imageburner chromeos-base/crosh chromeos-base/crosh-extension chromeos-base/inputcontrol chromeos-base/mtpd chromeos-base/permission_broker chromeos-base/userfeedback chromeos-base/vboot_reference chromeos-base/vpd net-wireless/crda sys-apps/dbus sys-apps/flashrom sys-apps/iproute2 sys-apps/rootdev !systemd? ( sys-apps/upstart ) sys-fs/e2fsprogs virtual/assets virtual/cheets virtual/udev )
+RDEPEND=input_devices_evdev? ( app-misc/evtest ) syslog? ( app-admin/rsyslog chromeos-base/croslog chromeos-base/bootid-logger ) biod? ( chromeos-base/biod ) fpstudy? ( chromeos-base/fingerprint_study ) compupdates? ( chromeos-base/imageloader ) dlc? ( chromeos-base/dlcservice ) dlc_test? ( chromeos-base/sample-dlc chromeos-base/test-dlc ) bluetooth? ( net-wireless/bluez ) floss? ( net-wireless/floss ) bootchart? ( app-benchmarks/bootchart ) tpm? ( app-crypt/trousers chromeos-base/chaps ) tpm2? ( chromeos-base/trunks ) pam? ( virtual/chromeos-auth-config ) federated_service? ( chromeos-base/federated-service ) fonts? ( chromeos-base/chromeos-fonts ) chromeos-base/chromeos-installer chromeos-base/dev-install os_install_service? ( chromeos-base/os_install_service ) perfetto? ( chromeos-base/perfetto ) crash_reporting? ( chromeos-base/crash-reporter ) missive? ( chromeos-base/missive ) mist? ( chromeos-base/mist ) modemfwd? ( chromeos-base/modemfwd ) buffet? ( chromeos-base/buffet ) containers? ( chromeos-base/run_oci ) cros_disks? ( chromeos-base/cros-disks ) debugd? ( chromeos-base/debugd ) diagnostics? ( chromeos-base/diagnostics ) dlp? ( chromeos-base/dlp ) kerberos_daemon? ( chromeos-base/kerberos ) scanner? ( chromeos-base/lorgnette ) ml_service? ( chromeos-base/ml ) hps? ( chromeos-base/hpsd !asan? ( !ubsan? ( chromeos-base/hps-firmware ) ) ) hammerd? ( chromeos-base/hammerd ) racc? ( chromeos-base/hardware_verifier chromeos-base/runtime_probe ) rmad? ( chromeos-base/rmad ) iioservice? ( chromeos-base/iioservice ) media_perception? ( chromeos-base/mri_package ) memd? ( chromeos-base/memd ) power_management? ( chromeos-base/power_manager ) !chromeos-base/platform2 profile? ( chromeos-base/quipper ) resourced? ( chromeos-base/resourced ) selinux? ( chromeos-base/selinux-policy ) shill? ( >=chromeos-base/shill-0.0.1-r2205 ) manatee? ( chromeos-base/sirenia ) sirenia? ( chromeos-base/sirenia ) spaced? ( chromeos-base/spaced ) usb_bouncer? ( chromeos-base/usb_bouncer ) chromeos-base/update_engine vpn? ( chromeos-base/vpn-manager ) cras? ( media-sound/adhd media-sound/cras_tests ) trim_supported? ( chromeos-base/chromeos-trim ) network_time? ( net-misc/tlsdate ) iwlwifi_rescan? ( net-wireless/iwlwifi_rescan ) nfc? ( net-wireless/neard chromeos-base/neard-configs ) readahead? ( sys-apps/ureadahead ) pam? ( sys-auth/pam_pwdfile ) watchdog? ( sys-apps/daisydog ) mtd? ( sys-fs/mtd-utils ) cups? ( virtual/chromium-os-printing ) touchview? ( !iioservice? ( chromeos-base/chromeos-accelerometer-init ) ) system_locales? ( chromeos-base/system-locales ) system_proxy? ( chromeos-base/system-proxy ) eclog? ( chromeos-base/timberslide ) chromeos-base/chromeos-machine-id-regen systemd? ( sys-apps/systemd ) !systemd? ( sys-apps/systemd-tmpfiles ) usbguard? ( sys-apps/usbguard ) kvm_host? ( chromeos-base/crosdns chromeos-base/crostini_client chromeos-base/vm_host_tools chromeos-base/termina-dlc ) sys-kernel/linux-firmware virtual/chromeos-bsp virtual/chromeos-firewall !factory_branch? ( virtual/chromeos-firmware ) virtual/chromeos-interface virtual/chromeos-regions virtual/implicit-system virtual/linux-sources virtual/modutils virtual/service-manager cr50_onboard? ( chromeos-base/chromeos-cr50 chromeos-base/u2fd ) ti50_onboard? ( chromeos-base/chromeos-ti50 chromeos-base/u2fd ) ime? ( app-i18n/chinese-input app-i18n/keyboard-input app-i18n/japanese-input app-i18n/hangul-input ) fuzzer? ( virtual/target-fuzzers ) !dev-python/socksipy arc-camera1? ( chromeos-base/cros-camera ) arc-camera3? ( chromeos-base/cros-camera ) fwupd? ( sys-apps/fwupd mmc? ( sys-firmware/mmc-firmware ) ) smbprovider? ( chromeos-base/smbfs chromeos-base/smbprovider ) typecd? ( chromeos-base/typecd ) pciguard? ( chromeos-base/pciguard ) minios? ( chromeos-base/minios ) secanomalyd? ( chromeos-base/secanomalyd ) lacros_rootfs? ( chromeos-base/chromeos-lacros ) dns-proxy? ( chromeos-base/dns-proxy ) featured? ( chromeos-base/featured ) !cros_embedded? ( x86? ( dptf? ( virtual/dptf ) intel_lpe? ( virtual/lpe-support ) ) amd64? ( dptf? ( virtual/dptf ) intel_lpe? ( virtual/lpe-support ) ) app-arch/tar app-editors/vim app-shells/bash chromeos-base/common-assets chromeos-base/chromeos-imageburner chromeos-base/crosh chromeos-base/crosh-extension chromeos-base/inputcontrol chromeos-base/mtpd chromeos-base/permission_broker chromeos-base/userfeedback chromeos-base/vboot_reference chromeos-base/vpd net-wireless/crda sys-apps/dbus sys-apps/flashrom sys-apps/iproute2 sys-apps/rootdev !systemd? ( sys-apps/upstart ) sys-fs/e2fsprogs virtual/assets virtual/cheets virtual/udev )
 REQUIRED_USE=cellular? ( shill ) modemfwd? ( cellular )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=ca4d8c1a46e8cbb434c3b0deac43eafb
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=dffd230474731e5a9276b1cda8097bfb
diff --git a/metadata/md5-cache/virtual/target-chromium-os-dev-1-r69 b/metadata/md5-cache/virtual/target-chromium-os-dev-1-r69
deleted file mode 100644
index 7fd6b23..0000000
--- a/metadata/md5-cache/virtual/target-chromium-os-dev-1-r69
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info setup unpack
-DESCRIPTION=List of packages that are needed inside the Chromium OS dev image
-EAPI=7
-HOMEPAGE=https://dev.chromium.org/
-IUSE=chromeless_tty cras diag nvme opengl pam +power_management +profile python_targets_python2_7 +shill tpm tpm2 usb vaapi video_cards_amdgpu video_cards_intel vulkan cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
-KEYWORDS=*
-LICENSE=metapackage
-PROPERTIES=live
-RDEPEND=x86? ( app-benchmarks/i7z power_management? ( dev-util/turbostat ) sys-apps/dmidecode sys-apps/pciutils sys-boot/syslinux vaapi? ( chromeos-base/libva-fake-driver media-gfx/vadumpcaps media-video/libva-utils ) video_cards_amdgpu? ( x11-apps/igt-gpu-tools ) video_cards_intel? ( x11-apps/igt-gpu-tools ) ) amd64? ( app-benchmarks/i7z power_management? ( dev-util/turbostat ) sys-apps/dmidecode sys-apps/pciutils sys-boot/syslinux vaapi? ( chromeos-base/libva-fake-driver media-gfx/vadumpcaps media-video/libva-utils ) video_cards_amdgpu? ( x11-apps/igt-gpu-tools ) video_cards_intel? ( x11-apps/igt-gpu-tools ) ) pam? ( app-admin/sudo ) app-admin/sysstat app-arch/bzip2 app-arch/gzip app-arch/tar app-arch/unzip app-arch/xz-utils app-arch/zip profile? ( chromeos-base/quipper app-benchmarks/libc-bench net-analyzer/netperf dev-util/perf ) app-benchmarks/stress-ng app-crypt/nss tpm? ( app-crypt/tpm-tools ) app-editors/nano app-editors/qemacs app-editors/vim app-misc/edid-decode app-misc/evtest app-misc/pax-utils app-misc/screen app-portage/portage-utils app-shells/bash app-text/tree cras? ( chromeos-base/audiotest media-sound/sox ) chromeos-base/avtest_label_detect chromeos-base/chromeos-dev-root chromeos-base/cros-config-test chromeos-base/cryptohome-dev-utils tpm2? ( chromeos-base/g2f_tools ) !chromeless_tty? ( chromeos-base/graphics-utils-go ) chromeos-base/policy_utils chromeos-base/protofiles !chromeless_tty? ( chromeos-base/screen-capture-utils ) shill? ( chromeos-base/shill-test-scripts ) python_targets_python2_7? ( chromeos-base/touch_firmware_test ) chromeos-base/usi-test dev-vcs/git net-analyzer/tcpdump net-analyzer/traceroute net-dialup/minicom net-dns/bind-tools net-misc/dhcp diag? ( net-misc/diag ) net-misc/iperf:2 net-misc/iputils net-misc/openssh net-misc/rsync net-wireless/iw net-wireless/wireless-tools python_targets_python2_7? ( dev-lang/python:2.7 ) dev-lang/python:3.6 dev-libs/libgpiod dev-python/protobuf-python dev-python/cherrypy dev-python/dbus-python dev-python/hid-tools python_targets_python2_7? ( dev-util/hdctools ) dev-util/mem dev-util/strace media-libs/libyuv-test media-libs/openh264 vulkan? ( media-libs/vulkan-layers ) media-tv/v4l-utils media-video/yavta net-dialup/lrzsz net-fs/sshfs net-misc/curl net-misc/wget sys-apps/coreboot-utils sys-apps/coreutils sys-apps/diffutils sys-apps/file sys-apps/findutils sys-apps/flashrom-tester sys-apps/gawk sys-apps/i2c-tools sys-apps/iotools sys-apps/kbd sys-apps/less sys-apps/mmc-utils nvme? ( sys-apps/nvme-cli ) sys-apps/portage sys-apps/smartmontools usb? ( sys-apps/usbutils ) sys-apps/which sys-block/fio sys-devel/gdb sys-fs/fuse sys-fs/lvm2 sys-fs/mtd-utils power_management? ( sys-power/powertop ) sys-process/procps sys-process/psmisc sys-process/time virtual/autotest-capability virtual/chromeos-bsp-dev
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=5381984c15e14b02a2d69e391db031cb
diff --git a/metadata/md5-cache/virtual/target-chromium-os-dev-1-r73 b/metadata/md5-cache/virtual/target-chromium-os-dev-1-r73
new file mode 100644
index 0000000..b1f4c4f
--- /dev/null
+++ b/metadata/md5-cache/virtual/target-chromium-os-dev-1-r73
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info setup unpack
+DESCRIPTION=List of packages that are needed inside the Chromium OS dev image
+EAPI=7
+HOMEPAGE=https://dev.chromium.org/
+IUSE=chromeless_tty cras diag lldbserver nvme opengl pam +power_management +profile python_targets_python2_7 +shill tpm tpm2 usb vaapi video_cards_amdgpu video_cards_intel video_cards_mediatek video_cards_msm vulkan cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
+KEYWORDS=*
+LICENSE=metapackage
+PROPERTIES=live
+RDEPEND=x86? ( app-benchmarks/i7z power_management? ( dev-util/turbostat ) sys-apps/dmidecode sys-apps/pciutils sys-boot/syslinux vaapi? ( chromeos-base/libva-fake-driver media-gfx/vadumpcaps media-video/libva-utils ) ) amd64? ( app-benchmarks/i7z power_management? ( dev-util/turbostat ) sys-apps/dmidecode sys-apps/pciutils sys-boot/syslinux vaapi? ( chromeos-base/libva-fake-driver media-gfx/vadumpcaps media-video/libva-utils ) ) pam? ( app-admin/sudo ) app-admin/sysstat app-arch/bzip2 app-arch/gzip app-arch/tar app-arch/unzip app-arch/xz-utils app-arch/zip profile? ( chromeos-base/quipper app-benchmarks/libc-bench net-analyzer/netperf dev-util/perf ) app-benchmarks/stress-ng app-crypt/nss tpm? ( app-crypt/tpm-tools ) app-editors/nano app-editors/qemacs app-editors/vim app-misc/edid-decode app-misc/evtest app-misc/pax-utils app-misc/screen app-portage/portage-utils app-shells/bash app-text/tree cras? ( chromeos-base/audiotest media-sound/sox ) chromeos-base/avtest_label_detect chromeos-base/chromeos-dev-root chromeos-base/cros-config-test chromeos-base/cryptohome-dev-utils tpm2? ( chromeos-base/g2f_tools ) !chromeless_tty? ( chromeos-base/graphics-utils-go ) chromeos-base/policy_utils chromeos-base/protofiles !chromeless_tty? ( chromeos-base/screen-capture-utils ) shill? ( chromeos-base/shill-test-scripts ) python_targets_python2_7? ( chromeos-base/touch_firmware_test ) chromeos-base/usi-test dev-vcs/git net-analyzer/tcpdump net-analyzer/traceroute net-dialup/minicom net-dns/bind-tools net-misc/dhcp diag? ( net-misc/diag ) net-misc/iperf:2 net-misc/iputils net-misc/openssh net-misc/rsync net-wireless/iw net-wireless/wireless-tools python_targets_python2_7? ( dev-lang/python:2.7 ) dev-lang/python:3.6 dev-libs/libgpiod dev-python/protobuf-python dev-python/cherrypy dev-python/dbus-python dev-python/hid-tools python_targets_python2_7? ( dev-util/hdctools ) lldbserver? ( dev-util/lldb-server ) dev-util/mem dev-util/strace media-libs/libyuv-test media-libs/openh264 vulkan? ( media-libs/vulkan-layers ) media-tv/v4l-utils media-video/yavta net-dialup/lrzsz net-fs/sshfs net-misc/curl net-misc/wget sys-apps/coreboot-utils sys-apps/coreutils sys-apps/diffutils sys-apps/file sys-apps/findutils sys-apps/flashrom-tester sys-apps/gawk sys-apps/i2c-tools sys-apps/iotools sys-apps/kbd sys-apps/less sys-apps/mmc-utils nvme? ( sys-apps/nvme-cli ) sys-apps/portage sys-apps/smartmontools usb? ( sys-apps/usbutils ) sys-apps/which sys-block/fio sys-devel/gdb sys-fs/fuse sys-fs/lvm2 sys-fs/mtd-utils power_management? ( sys-power/powertop ) sys-process/procps sys-process/psmisc sys-process/time virtual/autotest-capability virtual/chromeos-bsp-dev video_cards_amdgpu? ( x11-apps/igt-gpu-tools ) video_cards_intel? ( x11-apps/igt-gpu-tools ) video_cards_mediatek? ( x11-apps/igt-gpu-tools ) video_cards_msm? ( x11-apps/igt-gpu-tools )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=759be39c71254e9e9bedc8c8a19b6261
diff --git a/metadata/md5-cache/virtual/target-chromium-os-dev-9999 b/metadata/md5-cache/virtual/target-chromium-os-dev-9999
index 5eb00da..54306eb 100644
--- a/metadata/md5-cache/virtual/target-chromium-os-dev-9999
+++ b/metadata/md5-cache/virtual/target-chromium-os-dev-9999
@@ -3,11 +3,11 @@
 DESCRIPTION=List of packages that are needed inside the Chromium OS dev image
 EAPI=7
 HOMEPAGE=https://dev.chromium.org/
-IUSE=chromeless_tty cras diag nvme opengl pam +power_management +profile python_targets_python2_7 +shill tpm tpm2 usb vaapi video_cards_amdgpu video_cards_intel vulkan cros_host cros_workon_tree_
+IUSE=chromeless_tty cras diag lldbserver nvme opengl pam +power_management +profile python_targets_python2_7 +shill tpm tpm2 usb vaapi video_cards_amdgpu video_cards_intel video_cards_mediatek video_cards_msm vulkan cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=metapackage
 PROPERTIES=live
-RDEPEND=x86? ( app-benchmarks/i7z power_management? ( dev-util/turbostat ) sys-apps/dmidecode sys-apps/pciutils sys-boot/syslinux vaapi? ( chromeos-base/libva-fake-driver media-gfx/vadumpcaps media-video/libva-utils ) video_cards_amdgpu? ( x11-apps/igt-gpu-tools ) video_cards_intel? ( x11-apps/igt-gpu-tools ) ) amd64? ( app-benchmarks/i7z power_management? ( dev-util/turbostat ) sys-apps/dmidecode sys-apps/pciutils sys-boot/syslinux vaapi? ( chromeos-base/libva-fake-driver media-gfx/vadumpcaps media-video/libva-utils ) video_cards_amdgpu? ( x11-apps/igt-gpu-tools ) video_cards_intel? ( x11-apps/igt-gpu-tools ) ) pam? ( app-admin/sudo ) app-admin/sysstat app-arch/bzip2 app-arch/gzip app-arch/tar app-arch/unzip app-arch/xz-utils app-arch/zip profile? ( chromeos-base/quipper app-benchmarks/libc-bench net-analyzer/netperf dev-util/perf ) app-benchmarks/stress-ng app-crypt/nss tpm? ( app-crypt/tpm-tools ) app-editors/nano app-editors/qemacs app-editors/vim app-misc/edid-decode app-misc/evtest app-misc/pax-utils app-misc/screen app-portage/portage-utils app-shells/bash app-text/tree cras? ( chromeos-base/audiotest media-sound/sox ) chromeos-base/avtest_label_detect chromeos-base/chromeos-dev-root chromeos-base/cros-config-test chromeos-base/cryptohome-dev-utils tpm2? ( chromeos-base/g2f_tools ) !chromeless_tty? ( chromeos-base/graphics-utils-go ) chromeos-base/policy_utils chromeos-base/protofiles !chromeless_tty? ( chromeos-base/screen-capture-utils ) shill? ( chromeos-base/shill-test-scripts ) python_targets_python2_7? ( chromeos-base/touch_firmware_test ) chromeos-base/usi-test dev-vcs/git net-analyzer/tcpdump net-analyzer/traceroute net-dialup/minicom net-dns/bind-tools net-misc/dhcp diag? ( net-misc/diag ) net-misc/iperf:2 net-misc/iputils net-misc/openssh net-misc/rsync net-wireless/iw net-wireless/wireless-tools python_targets_python2_7? ( dev-lang/python:2.7 ) dev-lang/python:3.6 dev-libs/libgpiod dev-python/protobuf-python dev-python/cherrypy dev-python/dbus-python dev-python/hid-tools python_targets_python2_7? ( dev-util/hdctools ) dev-util/mem dev-util/strace media-libs/libyuv-test media-libs/openh264 vulkan? ( media-libs/vulkan-layers ) media-tv/v4l-utils media-video/yavta net-dialup/lrzsz net-fs/sshfs net-misc/curl net-misc/wget sys-apps/coreboot-utils sys-apps/coreutils sys-apps/diffutils sys-apps/file sys-apps/findutils sys-apps/flashrom-tester sys-apps/gawk sys-apps/i2c-tools sys-apps/iotools sys-apps/kbd sys-apps/less sys-apps/mmc-utils nvme? ( sys-apps/nvme-cli ) sys-apps/portage sys-apps/smartmontools usb? ( sys-apps/usbutils ) sys-apps/which sys-block/fio sys-devel/gdb sys-fs/fuse sys-fs/lvm2 sys-fs/mtd-utils power_management? ( sys-power/powertop ) sys-process/procps sys-process/psmisc sys-process/time virtual/autotest-capability virtual/chromeos-bsp-dev
+RDEPEND=x86? ( app-benchmarks/i7z power_management? ( dev-util/turbostat ) sys-apps/dmidecode sys-apps/pciutils sys-boot/syslinux vaapi? ( chromeos-base/libva-fake-driver media-gfx/vadumpcaps media-video/libva-utils ) ) amd64? ( app-benchmarks/i7z power_management? ( dev-util/turbostat ) sys-apps/dmidecode sys-apps/pciutils sys-boot/syslinux vaapi? ( chromeos-base/libva-fake-driver media-gfx/vadumpcaps media-video/libva-utils ) ) pam? ( app-admin/sudo ) app-admin/sysstat app-arch/bzip2 app-arch/gzip app-arch/tar app-arch/unzip app-arch/xz-utils app-arch/zip profile? ( chromeos-base/quipper app-benchmarks/libc-bench net-analyzer/netperf dev-util/perf ) app-benchmarks/stress-ng app-crypt/nss tpm? ( app-crypt/tpm-tools ) app-editors/nano app-editors/qemacs app-editors/vim app-misc/edid-decode app-misc/evtest app-misc/pax-utils app-misc/screen app-portage/portage-utils app-shells/bash app-text/tree cras? ( chromeos-base/audiotest media-sound/sox ) chromeos-base/avtest_label_detect chromeos-base/chromeos-dev-root chromeos-base/cros-config-test chromeos-base/cryptohome-dev-utils tpm2? ( chromeos-base/g2f_tools ) !chromeless_tty? ( chromeos-base/graphics-utils-go ) chromeos-base/policy_utils chromeos-base/protofiles !chromeless_tty? ( chromeos-base/screen-capture-utils ) shill? ( chromeos-base/shill-test-scripts ) python_targets_python2_7? ( chromeos-base/touch_firmware_test ) chromeos-base/usi-test dev-vcs/git net-analyzer/tcpdump net-analyzer/traceroute net-dialup/minicom net-dns/bind-tools net-misc/dhcp diag? ( net-misc/diag ) net-misc/iperf:2 net-misc/iputils net-misc/openssh net-misc/rsync net-wireless/iw net-wireless/wireless-tools python_targets_python2_7? ( dev-lang/python:2.7 ) dev-lang/python:3.6 dev-libs/libgpiod dev-python/protobuf-python dev-python/cherrypy dev-python/dbus-python dev-python/hid-tools python_targets_python2_7? ( dev-util/hdctools ) lldbserver? ( dev-util/lldb-server ) dev-util/mem dev-util/strace media-libs/libyuv-test media-libs/openh264 vulkan? ( media-libs/vulkan-layers ) media-tv/v4l-utils media-video/yavta net-dialup/lrzsz net-fs/sshfs net-misc/curl net-misc/wget sys-apps/coreboot-utils sys-apps/coreutils sys-apps/diffutils sys-apps/file sys-apps/findutils sys-apps/flashrom-tester sys-apps/gawk sys-apps/i2c-tools sys-apps/iotools sys-apps/kbd sys-apps/less sys-apps/mmc-utils nvme? ( sys-apps/nvme-cli ) sys-apps/portage sys-apps/smartmontools usb? ( sys-apps/usbutils ) sys-apps/which sys-block/fio sys-devel/gdb sys-fs/fuse sys-fs/lvm2 sys-fs/mtd-utils power_management? ( sys-power/powertop ) sys-process/procps sys-process/psmisc sys-process/time virtual/autotest-capability virtual/chromeos-bsp-dev video_cards_amdgpu? ( x11-apps/igt-gpu-tools ) video_cards_intel? ( x11-apps/igt-gpu-tools ) video_cards_mediatek? ( x11-apps/igt-gpu-tools ) video_cards_msm? ( x11-apps/igt-gpu-tools )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=024caa964f3b16ed1ec007d662e7940d
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=83072618317025a02aff617197309cf0
diff --git a/metadata/md5-cache/virtual/target-chromium-os-initramfs-1-r1 b/metadata/md5-cache/virtual/target-chromium-os-initramfs-1-r1
deleted file mode 100644
index 48e457a..0000000
--- a/metadata/md5-cache/virtual/target-chromium-os-initramfs-1-r1
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info setup unpack
-DESCRIPTION=List of packages that are needed inside the Chromium OS initramfs
-EAPI=7
-HOMEPAGE=https://dev.chromium.org/
-IUSE=minios minios_ramfs cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
-KEYWORDS=*
-LICENSE=metapackage
-PROPERTIES=live
-RDEPEND=minios? ( chromeos-base/minios ) chromeos-base/chromeos-initramfs
-REQUIRED_USE=minios? ( minios_ramfs ) minios_ramfs? ( minios )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=860d4669952ae0fb5e6c29e7a8d877fe
diff --git a/metadata/md5-cache/virtual/target-chromium-os-initramfs-1-r2 b/metadata/md5-cache/virtual/target-chromium-os-initramfs-1-r2
new file mode 100644
index 0000000..f2772d2
--- /dev/null
+++ b/metadata/md5-cache/virtual/target-chromium-os-initramfs-1-r2
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info setup unpack
+DESCRIPTION=List of packages that are needed inside the Chromium OS initramfs
+EAPI=7
+HOMEPAGE=https://dev.chromium.org/
+IUSE=minios cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
+KEYWORDS=*
+LICENSE=metapackage
+PROPERTIES=live
+RDEPEND=minios? ( chromeos-base/minios )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=eb9ee61911fbe593418fa3a65cdc0029
diff --git a/metadata/md5-cache/virtual/target-chromium-os-initramfs-9999 b/metadata/md5-cache/virtual/target-chromium-os-initramfs-9999
index 0d68601..a73441f 100644
--- a/metadata/md5-cache/virtual/target-chromium-os-initramfs-9999
+++ b/metadata/md5-cache/virtual/target-chromium-os-initramfs-9999
@@ -3,12 +3,11 @@
 DESCRIPTION=List of packages that are needed inside the Chromium OS initramfs
 EAPI=7
 HOMEPAGE=https://dev.chromium.org/
-IUSE=minios minios_ramfs cros_host cros_workon_tree_
+IUSE=minios cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=metapackage
 PROPERTIES=live
-RDEPEND=minios? ( chromeos-base/minios ) chromeos-base/chromeos-initramfs
-REQUIRED_USE=minios? ( minios_ramfs ) minios_ramfs? ( minios )
+RDEPEND=minios? ( chromeos-base/minios )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4d7bbb738956450ce927182b9fe295a6
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a0da675226a47815d4bcdd10de4592e0
diff --git a/metadata/md5-cache/virtual/target-chromium-os-sdk-1-r205 b/metadata/md5-cache/virtual/target-chromium-os-sdk-1-r205
deleted file mode 100644
index eb37e7c..0000000
--- a/metadata/md5-cache/virtual/target-chromium-os-sdk-1-r205
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info setup unpack
-DESCRIPTION=List of packages that are needed inside the Chromium OS SDK
-EAPI=7
-HOMEPAGE=https://dev.chromium.org/
-IUSE=cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
-KEYWORDS=*
-LICENSE=metapackage
-PROPERTIES=live
-RDEPEND=!chromeos-base/hard-host-depends !virtual/hard-host-depends-bsp app-arch/bzip2 app-arch/cpio app-arch/gcab app-arch/gzip app-arch/p7zip app-arch/tar app-shells/bash net-misc/iputils net-misc/rsync sys-apps/baselayout sys-apps/coreutils sys-apps/diffutils sys-apps/dtc sys-apps/file sys-apps/findutils sys-apps/gawk sys-apps/grep sys-apps/sed sys-apps/shadow sys-apps/texinfo sys-apps/util-linux sys-apps/which sys-devel/autoconf sys-devel/autoconf-archive sys-devel/automake:1.10 sys-devel/automake:1.11 sys-devel/automake:1.15 sys-devel/binutils sys-devel/bison sys-devel/flex sys-devel/gcc sys-devel/gnuconfig sys-devel/grit-i18n sys-devel/libtool sys-devel/m4 sys-devel/make sys-devel/patch sys-fs/e2fsprogs sys-fs/f2fs-tools sys-libs/ncurses sys-libs/readline sys-libs/zlib sys-process/procps sys-process/psmisc virtual/editor virtual/libc virtual/man virtual/os-headers virtual/package-manager virtual/pager app-arch/lbzip2 app-arch/lz4 app-arch/lzop app-arch/pigz app-arch/pixz app-admin/sudo app-crypt/efitools app-crypt/sbsigntools chromeos-base/zephyr-build-tools dev-embedded/binman dev-embedded/cbootimage dev-embedded/tegrarcm dev-embedded/u-boot-tools dev-util/ccache media-gfx/pngcrush >=sys-apps/dtc-1.3.0-r5 sys-boot/bootstub sys-boot/grub sys-boot/syslinux sys-devel/crossdev sys-fs/dosfstools sys-fs/squashfs-tools sys-fs/mtd-utils app-misc/jq sys-devel/aapt sys-devel/arc-toolchain-master sys-devel/arc-toolchain-p sys-devel/arc-toolchain-r sys-devel/dex2oatds app-crypt/gnupg app-admin/eselect-opengl app-admin/eselect-mesa app-arch/cabextract app-arch/makeself >=app-arch/pbzip2-1.1.1-r1 app-arch/rpm2targz app-arch/sharutils app-arch/unzip app-crypt/nss app-doc/xmltoman app-emulation/qemu app-emulation/qemu-binfmt-wrapper !app-emulation/qemu-kvm !app-emulation/qemu-user app-text/asciidoc app-text/docbook-xml-dtd:4.2 app-text/docbook-xml-dtd:4.5 app-text/docbook-xsl-stylesheets app-text/texi2html app-text/xmlto chromeos-base/google-breakpad chromeos-base/chromeos-base chromeos-base/chromeos-common-script >=chromeos-base/chromeos-config-host-0.0.2-r491 chromeos-base/chromite-sdk chromeos-base/cros-devutils[cros_host] chromeos-base/cros-testutils chromeos-base/ec-devutils chromeos-base/minijail chromeos-base/test-server dev-db/m17n-contrib dev-db/m17n-db dev-go/protobuf dev-lang/closure-compiler-bin dev-lang/nasm dev-lang/python:2.7 dev-lang/python:3.6 dev-lang/swig dev-lang/tcl dev-lang/yasm dev-libs/dbus-glib dev-libs/flatbuffers >=dev-libs/glib-2.26.1 net-libs/grpc dev-libs/libgcrypt dev-libs/libxslt dev-libs/libyaml dev-libs/m17n-lib dev-libs/protobuf dev-libs/protobuf-c dev-libs/wayland dev-python/cffi dev-python/cherrypy dev-python/dbus-python dev-python/dpkt dev-python/ecdsa dev-python/future dev-python/intelhex dev-python/kconfiglib dev-python/m2crypto dev-python/mako dev-python/netifaces dev-python/pexpect dev-python/pillow dev-python/psutil dev-python/py dev-python/pycairo dev-python/pycparser dev-python/pygobject dev-python/pyopenssl dev-python/pytest dev-python/python-evdev dev-python/pyudev dev-python/pyusb dev-python/setproctitle !dev-python/socksipy dev-python/tempita dev-python/ws4py dev-util/bazel dev-util/cmake dev-util/dwarves dev-util/gob dev-util/gdbus-codegen dev-util/gperf dev-util/gtk-doc dev-util/hdctools >=dev-util/gtk-doc-am-1.13 >=dev-util/intltool-0.30 dev-util/scons dev-util/vulkan-headers >=dev-vcs/git-1.7.2 >=media-libs/freetype-2.2.1 >=media-libs/lcms-2.6:2 net-fs/sshfs net-libs/rpcsvc-proto net-misc/gsutil sys-apps/usbutils !sys-apps/nih-dbus-tool sys-devel/autofdo sys-devel/bc >=sys-libs/glibc-2.27 sys-libs/libcxxabi sys-libs/libcxx sys-libs/llvm-libunwind virtual/udev sys-libs/libnih sys-power/iasl virtual/modutils x11-apps/mkfontscale x11-apps/xcursorgen x11-apps/xkbcomp >=x11-misc/util-macros-1.2 chromeos-base/chromeos-fonts gnome-base/librsvg dev-libs/atk dev-libs/glib media-libs/fontconfig media-libs/freetype x11-libs/cairo x11-libs/libX11 x11-libs/libXi x11-libs/libXrandr x11-libs/libXtst x11-libs/pango sys-apps/dbus sys-process/lsof app-arch/zip app-editors/nano app-editors/qemacs app-editors/vim app-portage/eclass-manpages app-portage/gentoolkit app-portage/portage-utils app-shells/bash-completion dev-go/go-tools dev-go/golint dev-lang/go dev-python/ipython dev-util/codespell dev-util/patchutils dev-util/perf dev-util/shfmt net-analyzer/netperf sys-apps/less sys-apps/man-pages sys-apps/pv sys-devel/smatch dev-python/google-cloud-logging dev-python/mysqlclient dev-python/pyparsing dev-python/virtualenv x11-misc/xkeyboard-config dev-util/google-web-toolkit dev-python/btsocket dev-python/selenium sys-apps/iproute2 sys-apps/net-tools media-video/ffmpeg >=chromeos-base/vboot_reference-1.0-r174 chromeos-base/verity !dev-python/ahocorasick dev-python/pyahocorasick sys-fs/libfat chromeos-base/update_engine sys-fs/e2tools dev-cpp/gflags dev-go/mock dev-python/mock dev-python/mox dev-python/unittest2 dev-python/httplib2 dev-python/pyshark dev-python/python-dateutil dev-python/six dev-python/pylint net-misc/openssh net-misc/socat net-misc/wget dev-python/pyyaml dev-util/lcov chromeos-base/chromeos-dbus-bindings dev-util/meson dev-util/ninja brillo-base/libsparse dev-python/ply dev-util/gn dev-util/tclint !net-misc/dhcpcd dev-libs/closure-library dev-libs/closure_linter dev-python/autopep8 dev-python/django dev-python/enum34 dev-python/jsonrpclib dev-python/jsonschema dev-python/python-gnupg dev-python/requests dev-python/sphinx dev-python/twisted !dev-python/twisted-core !dev-python/twisted-web www-servers/nginx chromeos-base/tast-cmd chromeos-base/tast-remote-tests-cros dev-util/ragel sys-apps/coreboot-utils chromeos-base/ec-utils dev-libs/libprotobuf-mutator dev-libs/openssl dev-util/unifdef sys-firmware/fw-engprod-tools media-sound/alsa-utils dev-util/boost-build chromeos-base/sepolicy-analyze sys-apps/checkpolicy sys-apps/restorecon sys-apps/secilc sys-apps/selinux-python chromeos-base/android-relocation-packer chromeos-base/update_payload net-libs/nodejs dev-python/clang-python dev-python/grpcio-tools net-libs/grpc-web dev-python/grpcio dev-util/strace app-misc/fdupes sys-power/cpupower sys-apps/baselayout-java chromeos-base/android-sdk sys-devel/zipalign dev-python/jinja sys-devel/gcc-bin dev-libs/wayland-protocols
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=a9f1c67801b36fcaabe1b173c11c7ff9
diff --git a/metadata/md5-cache/virtual/target-chromium-os-sdk-1-r208 b/metadata/md5-cache/virtual/target-chromium-os-sdk-1-r208
new file mode 100644
index 0000000..49809d1
--- /dev/null
+++ b/metadata/md5-cache/virtual/target-chromium-os-sdk-1-r208
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info setup unpack
+DESCRIPTION=List of packages that are needed inside the Chromium OS SDK
+EAPI=7
+HOMEPAGE=https://dev.chromium.org/
+IUSE=cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
+KEYWORDS=*
+LICENSE=metapackage
+PROPERTIES=live
+RDEPEND=!chromeos-base/hard-host-depends !virtual/hard-host-depends-bsp app-arch/bzip2 app-arch/cpio app-arch/gcab app-arch/gzip app-arch/p7zip app-arch/tar app-shells/bash net-misc/iputils net-misc/rsync sys-apps/baselayout sys-apps/coreutils sys-apps/diffutils sys-apps/dtc sys-apps/file sys-apps/findutils sys-apps/gawk sys-apps/grep sys-apps/sed sys-apps/shadow sys-apps/texinfo sys-apps/util-linux sys-apps/which sys-devel/autoconf sys-devel/autoconf-archive sys-devel/automake:1.10 sys-devel/automake:1.11 sys-devel/automake:1.15 sys-devel/binutils sys-devel/bison sys-devel/flex sys-devel/gcc sys-devel/gnuconfig sys-devel/grit-i18n sys-devel/libtool sys-devel/m4 sys-devel/make sys-devel/patch sys-fs/e2fsprogs sys-fs/f2fs-tools sys-libs/ncurses sys-libs/readline sys-libs/zlib sys-process/procps sys-process/psmisc virtual/editor virtual/libc virtual/man virtual/os-headers virtual/package-manager virtual/pager app-arch/lbzip2 app-arch/lz4 app-arch/lzop app-arch/pigz app-arch/pixz app-admin/sudo app-crypt/efitools app-crypt/sbsigntools chromeos-base/zephyr-build-tools dev-embedded/binman dev-embedded/cbootimage dev-embedded/tegrarcm dev-embedded/u-boot-tools dev-util/ccache media-gfx/pngcrush >=sys-apps/dtc-1.3.0-r5 sys-boot/bootstub sys-boot/grub sys-boot/syslinux sys-devel/crossdev sys-fs/dosfstools sys-fs/squashfs-tools sys-fs/mtd-utils app-misc/jq sys-devel/aapt sys-devel/arc-toolchain-master sys-devel/arc-toolchain-p sys-devel/arc-toolchain-r sys-devel/dex2oatds app-crypt/gnupg app-admin/eselect-opengl app-admin/eselect-mesa app-arch/cabextract app-arch/makeself >=app-arch/pbzip2-1.1.1-r1 app-arch/rpm2targz app-arch/sharutils app-arch/unzip app-crypt/nss app-doc/xmltoman app-emulation/qemu app-emulation/qemu-binfmt-wrapper !app-emulation/qemu-kvm !app-emulation/qemu-user app-text/asciidoc app-text/docbook-xml-dtd:4.2 app-text/docbook-xml-dtd:4.5 app-text/docbook-xsl-stylesheets app-text/texi2html app-text/xmlto chromeos-base/google-breakpad chromeos-base/chromeos-base chromeos-base/chromeos-common-script >=chromeos-base/chromeos-config-host-0.0.2-r491 chromeos-base/chromite-sdk chromeos-base/cros-devutils[cros_host] chromeos-base/cros-testutils chromeos-base/ec-devutils chromeos-base/minijail dev-db/m17n-contrib dev-db/m17n-db dev-go/protobuf dev-lang/closure-compiler-bin dev-lang/nasm dev-lang/python:2.7 dev-lang/python:3.6 dev-lang/swig dev-lang/tcl dev-lang/yasm dev-libs/dbus-glib dev-libs/flatbuffers >=dev-libs/glib-2.26.1 net-libs/grpc dev-libs/libgcrypt dev-libs/libxslt dev-libs/libyaml dev-libs/m17n-lib dev-libs/protobuf dev-libs/protobuf-c dev-libs/wayland dev-python/cffi dev-python/cherrypy dev-python/dbus-python dev-python/dpkt dev-python/ecdsa dev-python/future dev-python/intelhex dev-python/kconfiglib dev-python/m2crypto dev-python/mako dev-python/netifaces dev-python/pexpect dev-python/pillow dev-python/psutil dev-python/py dev-python/pycairo dev-python/pycparser dev-python/pygobject dev-python/pyopenssl dev-python/pytest dev-python/python-evdev dev-python/python-magic dev-python/pyudev dev-python/pyusb dev-python/setproctitle !dev-python/socksipy dev-python/tempita dev-python/ws4py dev-util/bazel dev-util/cmake dev-util/dwarves dev-util/gob dev-util/gdbus-codegen dev-util/gperf dev-util/gtk-doc dev-util/hdctools >=dev-util/gtk-doc-am-1.13 >=dev-util/intltool-0.30 dev-util/scons dev-util/test-services dev-util/vulkan-headers >=dev-vcs/git-1.7.2 >=media-libs/freetype-2.2.1 >=media-libs/lcms-2.6:2 net-fs/sshfs net-libs/rpcsvc-proto net-misc/gsutil sys-apps/usbutils !sys-apps/nih-dbus-tool sys-devel/autofdo sys-devel/bc >=sys-libs/glibc-2.27 sys-libs/libcxxabi sys-libs/libcxx sys-libs/llvm-libunwind virtual/udev sys-libs/libnih sys-power/iasl virtual/modutils x11-apps/mkfontscale x11-apps/xcursorgen x11-apps/xkbcomp >=x11-misc/util-macros-1.2 chromeos-base/chromeos-fonts gnome-base/librsvg dev-libs/atk dev-libs/glib media-libs/fontconfig media-libs/freetype x11-libs/cairo x11-libs/libX11 x11-libs/libXi x11-libs/libXrandr x11-libs/libXtst x11-libs/pango sys-apps/dbus sys-process/lsof app-arch/zip app-editors/nano app-editors/qemacs app-editors/vim app-portage/eclass-manpages app-portage/gentoolkit app-portage/portage-utils app-shells/bash-completion dev-go/go-tools dev-go/golint dev-lang/go dev-python/ipython dev-util/codespell dev-util/patchutils dev-util/perf dev-util/shfmt net-analyzer/netperf sys-apps/less sys-apps/man-pages sys-apps/pv sys-devel/smatch dev-python/google-cloud-logging dev-python/mysqlclient dev-python/pyparsing dev-python/virtualenv x11-misc/xkeyboard-config dev-util/google-web-toolkit dev-python/btsocket dev-python/selenium sys-apps/iproute2 sys-apps/net-tools media-video/ffmpeg >=chromeos-base/vboot_reference-1.0-r174 chromeos-base/verity !dev-python/ahocorasick dev-python/pyahocorasick sys-fs/libfat chromeos-base/update_engine sys-fs/e2tools dev-cpp/gflags dev-go/mock dev-python/mock dev-python/mox dev-python/unittest2 dev-python/httplib2 dev-python/pyshark dev-python/python-dateutil dev-python/six dev-python/pylint net-misc/openssh net-misc/socat net-misc/wget dev-python/pyyaml dev-util/lcov chromeos-base/chromeos-dbus-bindings dev-util/meson dev-util/ninja brillo-base/libsparse dev-python/ply dev-util/gn !net-misc/dhcpcd dev-libs/closure-library dev-libs/closure_linter dev-python/autopep8 dev-python/django dev-python/enum34 dev-python/jsonrpclib dev-python/jsonschema dev-python/python-gnupg dev-python/requests dev-python/sphinx dev-python/twisted !dev-python/twisted-core !dev-python/twisted-web www-servers/nginx chromeos-base/tast-cmd chromeos-base/tast-remote-tests-cros dev-util/ragel sys-apps/coreboot-utils chromeos-base/ec-utils dev-libs/libprotobuf-mutator dev-libs/openssl dev-util/unifdef sys-firmware/fw-engprod-tools media-sound/alsa-utils dev-util/boost-build chromeos-base/sepolicy-analyze sys-apps/checkpolicy sys-apps/restorecon sys-apps/secilc sys-apps/selinux-python chromeos-base/android-relocation-packer chromeos-base/update_payload net-libs/nodejs dev-python/clang-python dev-python/grpcio-tools net-libs/grpc-web dev-python/grpcio dev-util/strace app-misc/fdupes sys-power/cpupower sys-apps/baselayout-java chromeos-base/android-sdk sys-devel/zipalign dev-python/jinja sys-devel/gcc-bin dev-libs/wayland-protocols
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b0d7c316b19105c2030f3f1c0d363ea9
diff --git a/metadata/md5-cache/virtual/target-chromium-os-sdk-9999 b/metadata/md5-cache/virtual/target-chromium-os-sdk-9999
index 126b41d..c6447ff4 100644
--- a/metadata/md5-cache/virtual/target-chromium-os-sdk-9999
+++ b/metadata/md5-cache/virtual/target-chromium-os-sdk-9999
@@ -7,7 +7,7 @@
 KEYWORDS=~*
 LICENSE=metapackage
 PROPERTIES=live
-RDEPEND=!chromeos-base/hard-host-depends !virtual/hard-host-depends-bsp app-arch/bzip2 app-arch/cpio app-arch/gcab app-arch/gzip app-arch/p7zip app-arch/tar app-shells/bash net-misc/iputils net-misc/rsync sys-apps/baselayout sys-apps/coreutils sys-apps/diffutils sys-apps/dtc sys-apps/file sys-apps/findutils sys-apps/gawk sys-apps/grep sys-apps/sed sys-apps/shadow sys-apps/texinfo sys-apps/util-linux sys-apps/which sys-devel/autoconf sys-devel/autoconf-archive sys-devel/automake:1.10 sys-devel/automake:1.11 sys-devel/automake:1.15 sys-devel/binutils sys-devel/bison sys-devel/flex sys-devel/gcc sys-devel/gnuconfig sys-devel/grit-i18n sys-devel/libtool sys-devel/m4 sys-devel/make sys-devel/patch sys-fs/e2fsprogs sys-fs/f2fs-tools sys-libs/ncurses sys-libs/readline sys-libs/zlib sys-process/procps sys-process/psmisc virtual/editor virtual/libc virtual/man virtual/os-headers virtual/package-manager virtual/pager app-arch/lbzip2 app-arch/lz4 app-arch/lzop app-arch/pigz app-arch/pixz app-admin/sudo app-crypt/efitools app-crypt/sbsigntools chromeos-base/zephyr-build-tools dev-embedded/binman dev-embedded/cbootimage dev-embedded/tegrarcm dev-embedded/u-boot-tools dev-util/ccache media-gfx/pngcrush >=sys-apps/dtc-1.3.0-r5 sys-boot/bootstub sys-boot/grub sys-boot/syslinux sys-devel/crossdev sys-fs/dosfstools sys-fs/squashfs-tools sys-fs/mtd-utils app-misc/jq sys-devel/aapt sys-devel/arc-toolchain-master sys-devel/arc-toolchain-p sys-devel/arc-toolchain-r sys-devel/dex2oatds app-crypt/gnupg app-admin/eselect-opengl app-admin/eselect-mesa app-arch/cabextract app-arch/makeself >=app-arch/pbzip2-1.1.1-r1 app-arch/rpm2targz app-arch/sharutils app-arch/unzip app-crypt/nss app-doc/xmltoman app-emulation/qemu app-emulation/qemu-binfmt-wrapper !app-emulation/qemu-kvm !app-emulation/qemu-user app-text/asciidoc app-text/docbook-xml-dtd:4.2 app-text/docbook-xml-dtd:4.5 app-text/docbook-xsl-stylesheets app-text/texi2html app-text/xmlto chromeos-base/google-breakpad chromeos-base/chromeos-base chromeos-base/chromeos-common-script >=chromeos-base/chromeos-config-host-0.0.2-r491 chromeos-base/chromite-sdk chromeos-base/cros-devutils[cros_host] chromeos-base/cros-testutils chromeos-base/ec-devutils chromeos-base/minijail chromeos-base/test-server dev-db/m17n-contrib dev-db/m17n-db dev-go/protobuf dev-lang/closure-compiler-bin dev-lang/nasm dev-lang/python:2.7 dev-lang/python:3.6 dev-lang/swig dev-lang/tcl dev-lang/yasm dev-libs/dbus-glib dev-libs/flatbuffers >=dev-libs/glib-2.26.1 net-libs/grpc dev-libs/libgcrypt dev-libs/libxslt dev-libs/libyaml dev-libs/m17n-lib dev-libs/protobuf dev-libs/protobuf-c dev-libs/wayland dev-python/cffi dev-python/cherrypy dev-python/dbus-python dev-python/dpkt dev-python/ecdsa dev-python/future dev-python/intelhex dev-python/kconfiglib dev-python/m2crypto dev-python/mako dev-python/netifaces dev-python/pexpect dev-python/pillow dev-python/psutil dev-python/py dev-python/pycairo dev-python/pycparser dev-python/pygobject dev-python/pyopenssl dev-python/pytest dev-python/python-evdev dev-python/pyudev dev-python/pyusb dev-python/setproctitle !dev-python/socksipy dev-python/tempita dev-python/ws4py dev-util/bazel dev-util/cmake dev-util/dwarves dev-util/gob dev-util/gdbus-codegen dev-util/gperf dev-util/gtk-doc dev-util/hdctools >=dev-util/gtk-doc-am-1.13 >=dev-util/intltool-0.30 dev-util/scons dev-util/vulkan-headers >=dev-vcs/git-1.7.2 >=media-libs/freetype-2.2.1 >=media-libs/lcms-2.6:2 net-fs/sshfs net-libs/rpcsvc-proto net-misc/gsutil sys-apps/usbutils !sys-apps/nih-dbus-tool sys-devel/autofdo sys-devel/bc >=sys-libs/glibc-2.27 sys-libs/libcxxabi sys-libs/libcxx sys-libs/llvm-libunwind virtual/udev sys-libs/libnih sys-power/iasl virtual/modutils x11-apps/mkfontscale x11-apps/xcursorgen x11-apps/xkbcomp >=x11-misc/util-macros-1.2 chromeos-base/chromeos-fonts gnome-base/librsvg dev-libs/atk dev-libs/glib media-libs/fontconfig media-libs/freetype x11-libs/cairo x11-libs/libX11 x11-libs/libXi x11-libs/libXrandr x11-libs/libXtst x11-libs/pango sys-apps/dbus sys-process/lsof app-arch/zip app-editors/nano app-editors/qemacs app-editors/vim app-portage/eclass-manpages app-portage/gentoolkit app-portage/portage-utils app-shells/bash-completion dev-go/go-tools dev-go/golint dev-lang/go dev-python/ipython dev-util/codespell dev-util/patchutils dev-util/perf dev-util/shfmt net-analyzer/netperf sys-apps/less sys-apps/man-pages sys-apps/pv sys-devel/smatch dev-python/google-cloud-logging dev-python/mysqlclient dev-python/pyparsing dev-python/virtualenv x11-misc/xkeyboard-config dev-util/google-web-toolkit dev-python/btsocket dev-python/selenium sys-apps/iproute2 sys-apps/net-tools media-video/ffmpeg >=chromeos-base/vboot_reference-1.0-r174 chromeos-base/verity !dev-python/ahocorasick dev-python/pyahocorasick sys-fs/libfat chromeos-base/update_engine sys-fs/e2tools dev-cpp/gflags dev-go/mock dev-python/mock dev-python/mox dev-python/unittest2 dev-python/httplib2 dev-python/pyshark dev-python/python-dateutil dev-python/six dev-python/pylint net-misc/openssh net-misc/socat net-misc/wget dev-python/pyyaml dev-util/lcov chromeos-base/chromeos-dbus-bindings dev-util/meson dev-util/ninja brillo-base/libsparse dev-python/ply dev-util/gn dev-util/tclint !net-misc/dhcpcd dev-libs/closure-library dev-libs/closure_linter dev-python/autopep8 dev-python/django dev-python/enum34 dev-python/jsonrpclib dev-python/jsonschema dev-python/python-gnupg dev-python/requests dev-python/sphinx dev-python/twisted !dev-python/twisted-core !dev-python/twisted-web www-servers/nginx chromeos-base/tast-cmd chromeos-base/tast-remote-tests-cros dev-util/ragel sys-apps/coreboot-utils chromeos-base/ec-utils dev-libs/libprotobuf-mutator dev-libs/openssl dev-util/unifdef sys-firmware/fw-engprod-tools media-sound/alsa-utils dev-util/boost-build chromeos-base/sepolicy-analyze sys-apps/checkpolicy sys-apps/restorecon sys-apps/secilc sys-apps/selinux-python chromeos-base/android-relocation-packer chromeos-base/update_payload net-libs/nodejs dev-python/clang-python dev-python/grpcio-tools net-libs/grpc-web dev-python/grpcio dev-util/strace app-misc/fdupes sys-power/cpupower sys-apps/baselayout-java chromeos-base/android-sdk sys-devel/zipalign dev-python/jinja sys-devel/gcc-bin dev-libs/wayland-protocols
+RDEPEND=!chromeos-base/hard-host-depends !virtual/hard-host-depends-bsp app-arch/bzip2 app-arch/cpio app-arch/gcab app-arch/gzip app-arch/p7zip app-arch/tar app-shells/bash net-misc/iputils net-misc/rsync sys-apps/baselayout sys-apps/coreutils sys-apps/diffutils sys-apps/dtc sys-apps/file sys-apps/findutils sys-apps/gawk sys-apps/grep sys-apps/sed sys-apps/shadow sys-apps/texinfo sys-apps/util-linux sys-apps/which sys-devel/autoconf sys-devel/autoconf-archive sys-devel/automake:1.10 sys-devel/automake:1.11 sys-devel/automake:1.15 sys-devel/binutils sys-devel/bison sys-devel/flex sys-devel/gcc sys-devel/gnuconfig sys-devel/grit-i18n sys-devel/libtool sys-devel/m4 sys-devel/make sys-devel/patch sys-fs/e2fsprogs sys-fs/f2fs-tools sys-libs/ncurses sys-libs/readline sys-libs/zlib sys-process/procps sys-process/psmisc virtual/editor virtual/libc virtual/man virtual/os-headers virtual/package-manager virtual/pager app-arch/lbzip2 app-arch/lz4 app-arch/lzop app-arch/pigz app-arch/pixz app-admin/sudo app-crypt/efitools app-crypt/sbsigntools chromeos-base/zephyr-build-tools dev-embedded/binman dev-embedded/cbootimage dev-embedded/tegrarcm dev-embedded/u-boot-tools dev-util/ccache media-gfx/pngcrush >=sys-apps/dtc-1.3.0-r5 sys-boot/bootstub sys-boot/grub sys-boot/syslinux sys-devel/crossdev sys-fs/dosfstools sys-fs/squashfs-tools sys-fs/mtd-utils app-misc/jq sys-devel/aapt sys-devel/arc-toolchain-master sys-devel/arc-toolchain-p sys-devel/arc-toolchain-r sys-devel/dex2oatds app-crypt/gnupg app-admin/eselect-opengl app-admin/eselect-mesa app-arch/cabextract app-arch/makeself >=app-arch/pbzip2-1.1.1-r1 app-arch/rpm2targz app-arch/sharutils app-arch/unzip app-crypt/nss app-doc/xmltoman app-emulation/qemu app-emulation/qemu-binfmt-wrapper !app-emulation/qemu-kvm !app-emulation/qemu-user app-text/asciidoc app-text/docbook-xml-dtd:4.2 app-text/docbook-xml-dtd:4.5 app-text/docbook-xsl-stylesheets app-text/texi2html app-text/xmlto chromeos-base/google-breakpad chromeos-base/chromeos-base chromeos-base/chromeos-common-script >=chromeos-base/chromeos-config-host-0.0.2-r491 chromeos-base/chromite-sdk chromeos-base/cros-devutils[cros_host] chromeos-base/cros-testutils chromeos-base/ec-devutils chromeos-base/minijail dev-db/m17n-contrib dev-db/m17n-db dev-go/protobuf dev-lang/closure-compiler-bin dev-lang/nasm dev-lang/python:2.7 dev-lang/python:3.6 dev-lang/swig dev-lang/tcl dev-lang/yasm dev-libs/dbus-glib dev-libs/flatbuffers >=dev-libs/glib-2.26.1 net-libs/grpc dev-libs/libgcrypt dev-libs/libxslt dev-libs/libyaml dev-libs/m17n-lib dev-libs/protobuf dev-libs/protobuf-c dev-libs/wayland dev-python/cffi dev-python/cherrypy dev-python/dbus-python dev-python/dpkt dev-python/ecdsa dev-python/future dev-python/intelhex dev-python/kconfiglib dev-python/m2crypto dev-python/mako dev-python/netifaces dev-python/pexpect dev-python/pillow dev-python/psutil dev-python/py dev-python/pycairo dev-python/pycparser dev-python/pygobject dev-python/pyopenssl dev-python/pytest dev-python/python-evdev dev-python/python-magic dev-python/pyudev dev-python/pyusb dev-python/setproctitle !dev-python/socksipy dev-python/tempita dev-python/ws4py dev-util/bazel dev-util/cmake dev-util/dwarves dev-util/gob dev-util/gdbus-codegen dev-util/gperf dev-util/gtk-doc dev-util/hdctools >=dev-util/gtk-doc-am-1.13 >=dev-util/intltool-0.30 dev-util/scons dev-util/test-services dev-util/vulkan-headers >=dev-vcs/git-1.7.2 >=media-libs/freetype-2.2.1 >=media-libs/lcms-2.6:2 net-fs/sshfs net-libs/rpcsvc-proto net-misc/gsutil sys-apps/usbutils !sys-apps/nih-dbus-tool sys-devel/autofdo sys-devel/bc >=sys-libs/glibc-2.27 sys-libs/libcxxabi sys-libs/libcxx sys-libs/llvm-libunwind virtual/udev sys-libs/libnih sys-power/iasl virtual/modutils x11-apps/mkfontscale x11-apps/xcursorgen x11-apps/xkbcomp >=x11-misc/util-macros-1.2 chromeos-base/chromeos-fonts gnome-base/librsvg dev-libs/atk dev-libs/glib media-libs/fontconfig media-libs/freetype x11-libs/cairo x11-libs/libX11 x11-libs/libXi x11-libs/libXrandr x11-libs/libXtst x11-libs/pango sys-apps/dbus sys-process/lsof app-arch/zip app-editors/nano app-editors/qemacs app-editors/vim app-portage/eclass-manpages app-portage/gentoolkit app-portage/portage-utils app-shells/bash-completion dev-go/go-tools dev-go/golint dev-lang/go dev-python/ipython dev-util/codespell dev-util/patchutils dev-util/perf dev-util/shfmt net-analyzer/netperf sys-apps/less sys-apps/man-pages sys-apps/pv sys-devel/smatch dev-python/google-cloud-logging dev-python/mysqlclient dev-python/pyparsing dev-python/virtualenv x11-misc/xkeyboard-config dev-util/google-web-toolkit dev-python/btsocket dev-python/selenium sys-apps/iproute2 sys-apps/net-tools media-video/ffmpeg >=chromeos-base/vboot_reference-1.0-r174 chromeos-base/verity !dev-python/ahocorasick dev-python/pyahocorasick sys-fs/libfat chromeos-base/update_engine sys-fs/e2tools dev-cpp/gflags dev-go/mock dev-python/mock dev-python/mox dev-python/unittest2 dev-python/httplib2 dev-python/pyshark dev-python/python-dateutil dev-python/six dev-python/pylint net-misc/openssh net-misc/socat net-misc/wget dev-python/pyyaml dev-util/lcov chromeos-base/chromeos-dbus-bindings dev-util/meson dev-util/ninja brillo-base/libsparse dev-python/ply dev-util/gn !net-misc/dhcpcd dev-libs/closure-library dev-libs/closure_linter dev-python/autopep8 dev-python/django dev-python/enum34 dev-python/jsonrpclib dev-python/jsonschema dev-python/python-gnupg dev-python/requests dev-python/sphinx dev-python/twisted !dev-python/twisted-core !dev-python/twisted-web www-servers/nginx chromeos-base/tast-cmd chromeos-base/tast-remote-tests-cros dev-util/ragel sys-apps/coreboot-utils chromeos-base/ec-utils dev-libs/libprotobuf-mutator dev-libs/openssl dev-util/unifdef sys-firmware/fw-engprod-tools media-sound/alsa-utils dev-util/boost-build chromeos-base/sepolicy-analyze sys-apps/checkpolicy sys-apps/restorecon sys-apps/secilc sys-apps/selinux-python chromeos-base/android-relocation-packer chromeos-base/update_payload net-libs/nodejs dev-python/clang-python dev-python/grpcio-tools net-libs/grpc-web dev-python/grpcio dev-util/strace app-misc/fdupes sys-power/cpupower sys-apps/baselayout-java chromeos-base/android-sdk sys-devel/zipalign dev-python/jinja sys-devel/gcc-bin dev-libs/wayland-protocols
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=fc877da03b2ca177339d48125ffec06e
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=d389fc6ea8aa566006e81ff2a1f79884
diff --git a/metadata/md5-cache/virtual/target-chromium-os-sdk-post-cross-1-r5 b/metadata/md5-cache/virtual/target-chromium-os-sdk-post-cross-1-r5
deleted file mode 100644
index 0eefcc6..0000000
--- a/metadata/md5-cache/virtual/target-chromium-os-sdk-post-cross-1-r5
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info setup unpack
-DESCRIPTION=List of packages that are needed inside the SDK, but after we've built all the toolchain packages that we install separately via binpkgs. This avoids circular dependencies when bootstrapping.
-EAPI=7
-HOMEPAGE=http://dev.chromium.org/
-IUSE=cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
-KEYWORDS=*
-LICENSE=metapackage
-PROPERTIES=live
-RDEPEND=dev-lang/rust dev-rust/bindgen dev-rust/dbus-codegen dev-rust/protobuf-codegen dev-util/cxxbridge-cmd sys-apps/mosys sys-apps/ripgrep dev-embedded/coreboot-sdk
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=7fbf2162af806aed28b6a342017bd018
diff --git a/metadata/md5-cache/virtual/target-chromium-os-sdk-post-cross-1-r8 b/metadata/md5-cache/virtual/target-chromium-os-sdk-post-cross-1-r8
new file mode 100644
index 0000000..5e0a68e
--- /dev/null
+++ b/metadata/md5-cache/virtual/target-chromium-os-sdk-post-cross-1-r8
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info setup unpack
+DESCRIPTION=List of packages that are needed inside the SDK, but after we've built all the toolchain packages that we install separately via binpkgs. This avoids circular dependencies when bootstrapping.
+EAPI=7
+HOMEPAGE=http://dev.chromium.org/
+IUSE=cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
+KEYWORDS=*
+LICENSE=metapackage
+PROPERTIES=live
+RDEPEND=dev-lang/rust dev-rust/bindgen dev-rust/dbus-codegen dev-rust/protobuf-codegen dev-util/cxxbridge-cmd sys-apps/ripgrep dev-embedded/coreboot-sdk dev-embedded/ti50-sdk chromeos-base/sirenia-tools
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6d635358c0502ac19cc66ebf1c11c87a
diff --git a/metadata/md5-cache/virtual/target-chromium-os-sdk-post-cross-9999 b/metadata/md5-cache/virtual/target-chromium-os-sdk-post-cross-9999
index c43509f2..4e45112 100644
--- a/metadata/md5-cache/virtual/target-chromium-os-sdk-post-cross-9999
+++ b/metadata/md5-cache/virtual/target-chromium-os-sdk-post-cross-9999
@@ -7,7 +7,7 @@
 KEYWORDS=~*
 LICENSE=metapackage
 PROPERTIES=live
-RDEPEND=dev-lang/rust dev-rust/bindgen dev-rust/dbus-codegen dev-rust/protobuf-codegen dev-util/cxxbridge-cmd sys-apps/mosys sys-apps/ripgrep dev-embedded/coreboot-sdk
+RDEPEND=dev-lang/rust dev-rust/bindgen dev-rust/dbus-codegen dev-rust/protobuf-codegen dev-util/cxxbridge-cmd sys-apps/ripgrep dev-embedded/coreboot-sdk dev-embedded/ti50-sdk chromeos-base/sirenia-tools
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=cd856561e989cafb19499c874c361c06
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=a99a24b283c337e84c0ec593e475755e
diff --git a/metadata/md5-cache/virtual/target-chromium-os-test-1-r151 b/metadata/md5-cache/virtual/target-chromium-os-test-1-r151
deleted file mode 100644
index d8511e6..0000000
--- a/metadata/md5-cache/virtual/target-chromium-os-test-1-r151
+++ /dev/null
@@ -1,13 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info setup unpack
-DESCRIPTION=List of packages that are needed inside the Chromium OS test image; Note: test images are a superset of dev images.
-EAPI=7
-HOMEPAGE=https://dev.chromium.org/
-IUSE=arc-camera3 biod -chromeless_tests cheets chromeless_tty cr50_onboard +cras cros_ec cros_embedded dlc hammerd iioservice ml_service hps nnapi opengl opengles p2p +perfetto python_targets_python2_7 scanner +shill +tpm tpm2 unibuild vaapi vulkan wifi_hostap_test wifi_testbed_ap +wired_8021x cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
-KEYWORDS=*
-LICENSE=metapackage
-PROPERTIES=live
-RDEPEND=tpm? ( app-crypt/tpm-tools chromeos-base/hwsec-test-utils chromeos-base/tpm_softclear_utils ) tpm2? ( chromeos-base/hwsec-test-utils chromeos-base/tpm_softclear_utils ) chromeos-base/chromeos-test-root chromeos-base/ec-utils chromeos-base/ec-utils-test chromeos-base/factory-deps biod? ( virtual/chromeos-fpmcu-test chromeos-base/chromeos-fpmcu-unittests ) hammerd? ( chromeos-base/hammerd-test-utils ) iioservice? ( chromeos-base/iioservice_simpleclient ) scanner? ( chromeos-base/lorgnette_cli chromeos-base/sane-backends-test ) ml_service? ( chromeos-base/ml-cmdline ) hps? ( chromeos-base/hps-tool ) nnapi? ( chromeos-base/aosp-frameworks-ml-nn-vts chromeos-base/ml-test-assets ) chromeos-base/recover-duts chromeos-base/tast-local-test-runner chromeos-base/tast-local-tests chromeos-base/tast-use-flags chromeos-base/verity chromeos-base/vpd cros_ec? ( chromeos-base/ec-devutils ) !chromeless_tty? ( !chromeless_tests? ( >=dev-cpp/gflags-2.0 ) ) wifi_testbed_ap? ( dev-python/btsocket ) python_targets_python2_7? ( dev-lang/python:2.7 ) dev-lang/python:3.6 dev-libs/opensc p2p? ( dev-python/dpkt ) perfetto? ( chromeos-base/perfetto chromeos-base/perfetto_simple_producer ) cr50_onboard? ( dev-util/u2f-ref-code ) net-misc/rsync sys-apps/memtester virtual/autotest-capability virtual/chromeos-bsp-test sys-apps/hdparm sys-apps/mmc-utils !cros_embedded? ( x86? ( app-benchmarks/sysbench sys-apps/pciutils sys-power/iasl vaapi? ( media-gfx/vadumpcaps media-video/libva-utils ) x11-misc/read-edid ) amd64? ( app-benchmarks/sysbench sys-apps/pciutils sys-power/iasl vaapi? ( media-gfx/vadumpcaps media-video/libva-utils ) x11-misc/read-edid ) app-admin/sudo app-arch/gzip app-arch/tar app-benchmarks/blktests app-benchmarks/blogbench app-benchmarks/lmbench app-benchmarks/microbenchmarks app-benchmarks/pjdfstest app-benchmarks/xfstests app-misc/ckermit opengles? ( app-misc/eglinfo ) app-misc/tmux app-misc/utouch-evemu app-mobilephone/dfu-util chromeos-base/autotest-client cras? ( chromeos-base/audiotest media-sound/cras_bench ) chromeos-base/avtest_label_detect chromeos-base/chrome-binary-tests chromeos-base/cros-camera-tool chromeos-base/cros-config-test !chromeless_tty? ( !chromeless_tests? ( chromeos-base/drm-tests ) ) chromeos-base/factory-mini chromeos-base/glbench chromeos-base/graphics-utils-python chromeos-base/libvda-gpu-tests chromeos-base/modem-diagnostics chromeos-base/policy_utils chromeos-base/protofiles chromeos-base/pywalt !chromeless_tty? ( chromeos-base/screen-capture-utils ) chromeos-base/secure-wipe shill? ( chromeos-base/shill-test-scripts wired_8021x? ( net-wireless/hostapd ) ) !chromeless_tests? ( chromeos-base/telemetry ) chromeos-base/toolchain-tests vulkan? ( chromeos-base/vkbench ) dev-embedded/dfu-programmer dev-go/syzkaller dev-libs/re2 dev-python/protobuf-python dev-python/btsocket dev-python/contextlib2 dev-python/dbus-python dev-python/dpkt dev-python/httplib2 dev-python/jsonrpclib dev-python/mkvparse dev-python/netifaces dev-python/pygobject dev-python/pyserial dev-python/pytest dev-python/python-evdev dev-python/python-uinput dev-python/pyudev dev-python/pyxattr dev-python/pyyaml dev-python/selenium dev-python/setproctitle dev-python/setuptools dev-python/ws4py !chromeless_tty? ( !chromeless_tests? ( dev-util/apitrace ) ) dev-util/stressapptest dev-util/trace-cmd dlc? ( sys-fs/squashfs-tools ) games-util/joystick media-gfx/imagemagick[jpeg,png,svg,tiff] media-gfx/perceptualdiff media-gfx/zbar arc-camera3? ( media-libs/cros-camera-libcamera_connector_test ) arc-camera3? ( media-libs/cros-camera-libjea_test ) arc-camera3? ( media-libs/cros-camera-test ) media-libs/cros-camera-v4l2_test media-libs/libexif media-libs/libvpx media-libs/opencv media-libs/openh264 !chromeless_tty? ( !chromeless_tests? ( media-gfx/deqp media-gfx/deqp-runner ) ) media-libs/tiff opengles? ( media-libs/waffle ) opengl? ( media-libs/waffle ) media-sound/sox net-analyzer/netperf net-dialup/minicom net-dns/dnsmasq net-misc/dhcp net-misc/iperf:2 net-misc/iputils net-misc/openssh net-misc/radvd net-proxy/tinyproxy wifi_hostap_test? ( net-wireless/hostap-test ) sci-geosciences/gpsd sys-apps/coreutils sys-apps/dtc sys-apps/ethtool sys-apps/file sys-apps/findutils sys-apps/kbd sys-apps/shadow sys-devel/binutils sys-process/iotop sys-process/procps sys-process/psmisc sys-process/time x11-libs/libdrm )
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4704391b23befee7168edd3f28f0b247
diff --git a/metadata/md5-cache/virtual/target-chromium-os-test-1-r153 b/metadata/md5-cache/virtual/target-chromium-os-test-1-r153
new file mode 100644
index 0000000..82148db
--- /dev/null
+++ b/metadata/md5-cache/virtual/target-chromium-os-test-1-r153
@@ -0,0 +1,13 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info setup unpack
+DESCRIPTION=List of packages that are needed inside the Chromium OS test image; Note: test images are a superset of dev images.
+EAPI=7
+HOMEPAGE=https://dev.chromium.org/
+IUSE=arc-camera3 biod -chromeless_tests cheets chromeless_tty cr50_onboard +cras cros_ec cros_embedded dlc hammerd iioservice ml_service hps nnapi ondevice_document_scanner opengl opengles p2p +perfetto python_targets_python2_7 scanner +shill +tpm tpm2 unibuild vaapi vulkan wifi_hostap_test wifi_testbed_ap +wired_8021x cros_host cros_workon_tree_8ce164efd78fcb4a68e898d8c92c7579657a49b1
+KEYWORDS=*
+LICENSE=metapackage
+PROPERTIES=live
+RDEPEND=tpm? ( app-crypt/tpm-tools chromeos-base/hwsec-test-utils chromeos-base/tpm_softclear_utils ) tpm2? ( chromeos-base/hwsec-test-utils chromeos-base/tpm_softclear_utils ) chromeos-base/chromeos-test-root chromeos-base/ec-utils chromeos-base/ec-utils-test chromeos-base/factory-deps biod? ( virtual/chromeos-fpmcu-test chromeos-base/chromeos-fpmcu-unittests ) hammerd? ( chromeos-base/hammerd-test-utils ) iioservice? ( chromeos-base/iioservice_simpleclient ) scanner? ( chromeos-base/lorgnette_cli chromeos-base/lorgnette-wwcb-tests chromeos-base/sane-backends-test ) ml_service? ( chromeos-base/ml-cmdline ) hps? ( chromeos-base/hps-tool ) nnapi? ( chromeos-base/aosp-frameworks-ml-nn-vts chromeos-base/ml-test-assets ) ondevice_document_scanner? ( media-libs/cros-camera-document-scanning-test ) chromeos-base/recover-duts chromeos-base/tast-local-test-runner chromeos-base/tast-local-tests chromeos-base/tast-use-flags chromeos-base/verity chromeos-base/vpd cros_ec? ( chromeos-base/ec-devutils ) !chromeless_tty? ( !chromeless_tests? ( >=dev-cpp/gflags-2.0 ) ) wifi_testbed_ap? ( dev-python/btsocket ) python_targets_python2_7? ( dev-lang/python:2.7 ) dev-lang/python:3.6 dev-libs/opensc p2p? ( dev-python/dpkt ) perfetto? ( chromeos-base/perfetto chromeos-base/perfetto_simple_producer ) cr50_onboard? ( dev-util/u2f-ref-code ) net-misc/rsync sys-apps/memtester virtual/autotest-capability virtual/chromeos-bsp-test sys-apps/hdparm sys-apps/mmc-utils !cros_embedded? ( x86? ( app-benchmarks/sysbench sys-apps/pciutils sys-power/iasl vaapi? ( media-gfx/vadumpcaps media-video/libva-utils ) x11-misc/read-edid ) amd64? ( app-benchmarks/sysbench sys-apps/pciutils sys-power/iasl vaapi? ( media-gfx/vadumpcaps media-video/libva-utils ) x11-misc/read-edid ) app-admin/sudo app-arch/gzip app-arch/tar app-benchmarks/blktests app-benchmarks/blogbench app-benchmarks/lmbench app-benchmarks/microbenchmarks app-benchmarks/pjdfstest app-benchmarks/xfstests app-misc/ckermit opengles? ( app-misc/eglinfo ) app-misc/tmux app-misc/utouch-evemu app-mobilephone/dfu-util chromeos-base/autotest-client cras? ( chromeos-base/audiotest media-sound/cras_bench ) chromeos-base/avtest_label_detect chromeos-base/chrome-binary-tests chromeos-base/cros-camera-tool chromeos-base/cros-config-test !chromeless_tty? ( !chromeless_tests? ( chromeos-base/drm-tests ) ) chromeos-base/factory-mini chromeos-base/glbench chromeos-base/graphics-utils-python chromeos-base/libvda-gpu-tests chromeos-base/modem-diagnostics chromeos-base/policy_utils chromeos-base/protofiles chromeos-base/pywalt !chromeless_tty? ( chromeos-base/screen-capture-utils ) chromeos-base/secure-wipe shill? ( chromeos-base/shill-test-scripts wired_8021x? ( net-wireless/hostapd ) ) !chromeless_tests? ( chromeos-base/telemetry ) chromeos-base/toolchain-tests vulkan? ( chromeos-base/vkbench ) dev-embedded/dfu-programmer dev-go/syzkaller dev-libs/re2 dev-python/protobuf-python dev-python/btsocket dev-python/contextlib2 dev-python/dbus-python dev-python/dpkt dev-python/httplib2 dev-python/jsonrpclib dev-python/mkvparse dev-python/netifaces dev-python/pygobject dev-python/pyserial dev-python/pytest dev-python/python-evdev dev-python/python-uinput dev-python/pyudev dev-python/pyxattr dev-python/pyyaml dev-python/selenium dev-python/setproctitle dev-python/setuptools dev-python/ws4py !chromeless_tty? ( !chromeless_tests? ( dev-util/apitrace ) ) dev-util/stressapptest dev-util/trace-cmd dlc? ( sys-fs/squashfs-tools ) games-util/joystick media-gfx/imagemagick[jpeg,png,svg,tiff] media-gfx/perceptualdiff media-gfx/zbar arc-camera3? ( media-libs/cros-camera-libcamera_connector_test ) arc-camera3? ( media-libs/cros-camera-libjea_test ) arc-camera3? ( media-libs/cros-camera-test ) media-libs/cros-camera-v4l2_test media-libs/libexif media-libs/libvpx media-libs/opencv media-libs/openh264 !chromeless_tty? ( !chromeless_tests? ( media-gfx/deqp media-gfx/deqp-runner ) ) media-libs/tiff opengles? ( media-libs/waffle ) opengl? ( media-libs/waffle ) media-sound/sox net-analyzer/netperf net-dialup/minicom net-dns/dnsmasq net-misc/dhcp net-misc/iperf:2 net-misc/iputils net-misc/openssh net-misc/radvd net-proxy/tinyproxy wifi_hostap_test? ( net-wireless/hostap-test ) sci-geosciences/gpsd sys-apps/coreutils sys-apps/dtc sys-apps/ethtool sys-apps/file sys-apps/findutils sys-apps/kbd sys-apps/shadow sys-devel/binutils sys-process/iotop sys-process/procps sys-process/psmisc sys-process/time x11-libs/libdrm )
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=cf697fe800840ccb9ffe9fe7f44f96e0
diff --git a/metadata/md5-cache/virtual/target-chromium-os-test-9999 b/metadata/md5-cache/virtual/target-chromium-os-test-9999
index c0f2830..df91371 100644
--- a/metadata/md5-cache/virtual/target-chromium-os-test-9999
+++ b/metadata/md5-cache/virtual/target-chromium-os-test-9999
@@ -3,11 +3,11 @@
 DESCRIPTION=List of packages that are needed inside the Chromium OS test image; Note: test images are a superset of dev images.
 EAPI=7
 HOMEPAGE=https://dev.chromium.org/
-IUSE=arc-camera3 biod -chromeless_tests cheets chromeless_tty cr50_onboard +cras cros_ec cros_embedded dlc hammerd iioservice ml_service hps nnapi opengl opengles p2p +perfetto python_targets_python2_7 scanner +shill +tpm tpm2 unibuild vaapi vulkan wifi_hostap_test wifi_testbed_ap +wired_8021x cros_host cros_workon_tree_
+IUSE=arc-camera3 biod -chromeless_tests cheets chromeless_tty cr50_onboard +cras cros_ec cros_embedded dlc hammerd iioservice ml_service hps nnapi ondevice_document_scanner opengl opengles p2p +perfetto python_targets_python2_7 scanner +shill +tpm tpm2 unibuild vaapi vulkan wifi_hostap_test wifi_testbed_ap +wired_8021x cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=metapackage
 PROPERTIES=live
-RDEPEND=tpm? ( app-crypt/tpm-tools chromeos-base/hwsec-test-utils chromeos-base/tpm_softclear_utils ) tpm2? ( chromeos-base/hwsec-test-utils chromeos-base/tpm_softclear_utils ) chromeos-base/chromeos-test-root chromeos-base/ec-utils chromeos-base/ec-utils-test chromeos-base/factory-deps biod? ( virtual/chromeos-fpmcu-test chromeos-base/chromeos-fpmcu-unittests ) hammerd? ( chromeos-base/hammerd-test-utils ) iioservice? ( chromeos-base/iioservice_simpleclient ) scanner? ( chromeos-base/lorgnette_cli chromeos-base/sane-backends-test ) ml_service? ( chromeos-base/ml-cmdline ) hps? ( chromeos-base/hps-tool ) nnapi? ( chromeos-base/aosp-frameworks-ml-nn-vts chromeos-base/ml-test-assets ) chromeos-base/recover-duts chromeos-base/tast-local-test-runner chromeos-base/tast-local-tests chromeos-base/tast-use-flags chromeos-base/verity chromeos-base/vpd cros_ec? ( chromeos-base/ec-devutils ) !chromeless_tty? ( !chromeless_tests? ( >=dev-cpp/gflags-2.0 ) ) wifi_testbed_ap? ( dev-python/btsocket ) python_targets_python2_7? ( dev-lang/python:2.7 ) dev-lang/python:3.6 dev-libs/opensc p2p? ( dev-python/dpkt ) perfetto? ( chromeos-base/perfetto chromeos-base/perfetto_simple_producer ) cr50_onboard? ( dev-util/u2f-ref-code ) net-misc/rsync sys-apps/memtester virtual/autotest-capability virtual/chromeos-bsp-test sys-apps/hdparm sys-apps/mmc-utils !cros_embedded? ( x86? ( app-benchmarks/sysbench sys-apps/pciutils sys-power/iasl vaapi? ( media-gfx/vadumpcaps media-video/libva-utils ) x11-misc/read-edid ) amd64? ( app-benchmarks/sysbench sys-apps/pciutils sys-power/iasl vaapi? ( media-gfx/vadumpcaps media-video/libva-utils ) x11-misc/read-edid ) app-admin/sudo app-arch/gzip app-arch/tar app-benchmarks/blktests app-benchmarks/blogbench app-benchmarks/lmbench app-benchmarks/microbenchmarks app-benchmarks/pjdfstest app-benchmarks/xfstests app-misc/ckermit opengles? ( app-misc/eglinfo ) app-misc/tmux app-misc/utouch-evemu app-mobilephone/dfu-util chromeos-base/autotest-client cras? ( chromeos-base/audiotest media-sound/cras_bench ) chromeos-base/avtest_label_detect chromeos-base/chrome-binary-tests chromeos-base/cros-camera-tool chromeos-base/cros-config-test !chromeless_tty? ( !chromeless_tests? ( chromeos-base/drm-tests ) ) chromeos-base/factory-mini chromeos-base/glbench chromeos-base/graphics-utils-python chromeos-base/libvda-gpu-tests chromeos-base/modem-diagnostics chromeos-base/policy_utils chromeos-base/protofiles chromeos-base/pywalt !chromeless_tty? ( chromeos-base/screen-capture-utils ) chromeos-base/secure-wipe shill? ( chromeos-base/shill-test-scripts wired_8021x? ( net-wireless/hostapd ) ) !chromeless_tests? ( chromeos-base/telemetry ) chromeos-base/toolchain-tests vulkan? ( chromeos-base/vkbench ) dev-embedded/dfu-programmer dev-go/syzkaller dev-libs/re2 dev-python/protobuf-python dev-python/btsocket dev-python/contextlib2 dev-python/dbus-python dev-python/dpkt dev-python/httplib2 dev-python/jsonrpclib dev-python/mkvparse dev-python/netifaces dev-python/pygobject dev-python/pyserial dev-python/pytest dev-python/python-evdev dev-python/python-uinput dev-python/pyudev dev-python/pyxattr dev-python/pyyaml dev-python/selenium dev-python/setproctitle dev-python/setuptools dev-python/ws4py !chromeless_tty? ( !chromeless_tests? ( dev-util/apitrace ) ) dev-util/stressapptest dev-util/trace-cmd dlc? ( sys-fs/squashfs-tools ) games-util/joystick media-gfx/imagemagick[jpeg,png,svg,tiff] media-gfx/perceptualdiff media-gfx/zbar arc-camera3? ( media-libs/cros-camera-libcamera_connector_test ) arc-camera3? ( media-libs/cros-camera-libjea_test ) arc-camera3? ( media-libs/cros-camera-test ) media-libs/cros-camera-v4l2_test media-libs/libexif media-libs/libvpx media-libs/opencv media-libs/openh264 !chromeless_tty? ( !chromeless_tests? ( media-gfx/deqp media-gfx/deqp-runner ) ) media-libs/tiff opengles? ( media-libs/waffle ) opengl? ( media-libs/waffle ) media-sound/sox net-analyzer/netperf net-dialup/minicom net-dns/dnsmasq net-misc/dhcp net-misc/iperf:2 net-misc/iputils net-misc/openssh net-misc/radvd net-proxy/tinyproxy wifi_hostap_test? ( net-wireless/hostap-test ) sci-geosciences/gpsd sys-apps/coreutils sys-apps/dtc sys-apps/ethtool sys-apps/file sys-apps/findutils sys-apps/kbd sys-apps/shadow sys-devel/binutils sys-process/iotop sys-process/procps sys-process/psmisc sys-process/time x11-libs/libdrm )
+RDEPEND=tpm? ( app-crypt/tpm-tools chromeos-base/hwsec-test-utils chromeos-base/tpm_softclear_utils ) tpm2? ( chromeos-base/hwsec-test-utils chromeos-base/tpm_softclear_utils ) chromeos-base/chromeos-test-root chromeos-base/ec-utils chromeos-base/ec-utils-test chromeos-base/factory-deps biod? ( virtual/chromeos-fpmcu-test chromeos-base/chromeos-fpmcu-unittests ) hammerd? ( chromeos-base/hammerd-test-utils ) iioservice? ( chromeos-base/iioservice_simpleclient ) scanner? ( chromeos-base/lorgnette_cli chromeos-base/lorgnette-wwcb-tests chromeos-base/sane-backends-test ) ml_service? ( chromeos-base/ml-cmdline ) hps? ( chromeos-base/hps-tool ) nnapi? ( chromeos-base/aosp-frameworks-ml-nn-vts chromeos-base/ml-test-assets ) ondevice_document_scanner? ( media-libs/cros-camera-document-scanning-test ) chromeos-base/recover-duts chromeos-base/tast-local-test-runner chromeos-base/tast-local-tests chromeos-base/tast-use-flags chromeos-base/verity chromeos-base/vpd cros_ec? ( chromeos-base/ec-devutils ) !chromeless_tty? ( !chromeless_tests? ( >=dev-cpp/gflags-2.0 ) ) wifi_testbed_ap? ( dev-python/btsocket ) python_targets_python2_7? ( dev-lang/python:2.7 ) dev-lang/python:3.6 dev-libs/opensc p2p? ( dev-python/dpkt ) perfetto? ( chromeos-base/perfetto chromeos-base/perfetto_simple_producer ) cr50_onboard? ( dev-util/u2f-ref-code ) net-misc/rsync sys-apps/memtester virtual/autotest-capability virtual/chromeos-bsp-test sys-apps/hdparm sys-apps/mmc-utils !cros_embedded? ( x86? ( app-benchmarks/sysbench sys-apps/pciutils sys-power/iasl vaapi? ( media-gfx/vadumpcaps media-video/libva-utils ) x11-misc/read-edid ) amd64? ( app-benchmarks/sysbench sys-apps/pciutils sys-power/iasl vaapi? ( media-gfx/vadumpcaps media-video/libva-utils ) x11-misc/read-edid ) app-admin/sudo app-arch/gzip app-arch/tar app-benchmarks/blktests app-benchmarks/blogbench app-benchmarks/lmbench app-benchmarks/microbenchmarks app-benchmarks/pjdfstest app-benchmarks/xfstests app-misc/ckermit opengles? ( app-misc/eglinfo ) app-misc/tmux app-misc/utouch-evemu app-mobilephone/dfu-util chromeos-base/autotest-client cras? ( chromeos-base/audiotest media-sound/cras_bench ) chromeos-base/avtest_label_detect chromeos-base/chrome-binary-tests chromeos-base/cros-camera-tool chromeos-base/cros-config-test !chromeless_tty? ( !chromeless_tests? ( chromeos-base/drm-tests ) ) chromeos-base/factory-mini chromeos-base/glbench chromeos-base/graphics-utils-python chromeos-base/libvda-gpu-tests chromeos-base/modem-diagnostics chromeos-base/policy_utils chromeos-base/protofiles chromeos-base/pywalt !chromeless_tty? ( chromeos-base/screen-capture-utils ) chromeos-base/secure-wipe shill? ( chromeos-base/shill-test-scripts wired_8021x? ( net-wireless/hostapd ) ) !chromeless_tests? ( chromeos-base/telemetry ) chromeos-base/toolchain-tests vulkan? ( chromeos-base/vkbench ) dev-embedded/dfu-programmer dev-go/syzkaller dev-libs/re2 dev-python/protobuf-python dev-python/btsocket dev-python/contextlib2 dev-python/dbus-python dev-python/dpkt dev-python/httplib2 dev-python/jsonrpclib dev-python/mkvparse dev-python/netifaces dev-python/pygobject dev-python/pyserial dev-python/pytest dev-python/python-evdev dev-python/python-uinput dev-python/pyudev dev-python/pyxattr dev-python/pyyaml dev-python/selenium dev-python/setproctitle dev-python/setuptools dev-python/ws4py !chromeless_tty? ( !chromeless_tests? ( dev-util/apitrace ) ) dev-util/stressapptest dev-util/trace-cmd dlc? ( sys-fs/squashfs-tools ) games-util/joystick media-gfx/imagemagick[jpeg,png,svg,tiff] media-gfx/perceptualdiff media-gfx/zbar arc-camera3? ( media-libs/cros-camera-libcamera_connector_test ) arc-camera3? ( media-libs/cros-camera-libjea_test ) arc-camera3? ( media-libs/cros-camera-test ) media-libs/cros-camera-v4l2_test media-libs/libexif media-libs/libvpx media-libs/opencv media-libs/openh264 !chromeless_tty? ( !chromeless_tests? ( media-gfx/deqp media-gfx/deqp-runner ) ) media-libs/tiff opengles? ( media-libs/waffle ) opengl? ( media-libs/waffle ) media-sound/sox net-analyzer/netperf net-dialup/minicom net-dns/dnsmasq net-misc/dhcp net-misc/iperf:2 net-misc/iputils net-misc/openssh net-misc/radvd net-proxy/tinyproxy wifi_hostap_test? ( net-wireless/hostap-test ) sci-geosciences/gpsd sys-apps/coreutils sys-apps/dtc sys-apps/ethtool sys-apps/file sys-apps/findutils sys-apps/kbd sys-apps/shadow sys-devel/binutils sys-process/iotop sys-process/procps sys-process/psmisc sys-process/time x11-libs/libdrm )
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=12677e723810cebd80b80e2e45bd7166
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0f6e92c07b63a37ff2b29cc7096cbef4
diff --git a/metadata/md5-cache/virtual/wpa_supplicant-1 b/metadata/md5-cache/virtual/wpa_supplicant-1
index 14ab61e..b59e890 100644
--- a/metadata/md5-cache/virtual/wpa_supplicant-1
+++ b/metadata/md5-cache/virtual/wpa_supplicant-1
@@ -1,9 +1,9 @@
 DEFINED_PHASES=-
-DEPEND=net-wireless/wpa_supplicant-2_9:=[dbus] !net-wireless/wpa_supplicant-2_8 !net-wireless/wpa_supplicant
+DEPEND=net-wireless/wpa_supplicant-cros:=[dbus] !net-wireless/wpa_supplicant-2_9 !net-wireless/wpa_supplicant-2_8 !net-wireless/wpa_supplicant
 DESCRIPTION=Virtual to select between different wpa_supplicant revisions
 EAPI=7
 KEYWORDS=*
 LICENSE=metapackage
-RDEPEND=net-wireless/wpa_supplicant-2_9:=[dbus] !net-wireless/wpa_supplicant-2_8 !net-wireless/wpa_supplicant
+RDEPEND=net-wireless/wpa_supplicant-cros:=[dbus] !net-wireless/wpa_supplicant-2_9 !net-wireless/wpa_supplicant-2_8 !net-wireless/wpa_supplicant
 SLOT=0
-_md5_=6866e2abc525ee4f475ec7ea6e80ea5b
+_md5_=e6d2b3dcdace395ba85c7bfd8133a550
diff --git a/metadata/md5-cache/virtual/wpa_supplicant-1-r3 b/metadata/md5-cache/virtual/wpa_supplicant-1-r3
deleted file mode 100644
index 14ab61e..0000000
--- a/metadata/md5-cache/virtual/wpa_supplicant-1-r3
+++ /dev/null
@@ -1,9 +0,0 @@
-DEFINED_PHASES=-
-DEPEND=net-wireless/wpa_supplicant-2_9:=[dbus] !net-wireless/wpa_supplicant-2_8 !net-wireless/wpa_supplicant
-DESCRIPTION=Virtual to select between different wpa_supplicant revisions
-EAPI=7
-KEYWORDS=*
-LICENSE=metapackage
-RDEPEND=net-wireless/wpa_supplicant-2_9:=[dbus] !net-wireless/wpa_supplicant-2_8 !net-wireless/wpa_supplicant
-SLOT=0
-_md5_=6866e2abc525ee4f475ec7ea6e80ea5b
diff --git a/metadata/md5-cache/virtual/wpa_supplicant-1-r4 b/metadata/md5-cache/virtual/wpa_supplicant-1-r4
new file mode 100644
index 0000000..b59e890
--- /dev/null
+++ b/metadata/md5-cache/virtual/wpa_supplicant-1-r4
@@ -0,0 +1,9 @@
+DEFINED_PHASES=-
+DEPEND=net-wireless/wpa_supplicant-cros:=[dbus] !net-wireless/wpa_supplicant-2_9 !net-wireless/wpa_supplicant-2_8 !net-wireless/wpa_supplicant
+DESCRIPTION=Virtual to select between different wpa_supplicant revisions
+EAPI=7
+KEYWORDS=*
+LICENSE=metapackage
+RDEPEND=net-wireless/wpa_supplicant-cros:=[dbus] !net-wireless/wpa_supplicant-2_9 !net-wireless/wpa_supplicant-2_8 !net-wireless/wpa_supplicant
+SLOT=0
+_md5_=e6d2b3dcdace395ba85c7bfd8133a550
diff --git a/metadata/md5-cache/x11-apps/igt-gpu-tools-1.25-r18 b/metadata/md5-cache/x11-apps/igt-gpu-tools-1.25-r18
new file mode 100644
index 0000000..1c4cdf6
--- /dev/null
+++ b/metadata/md5-cache/x11-apps/igt-gpu-tools-1.25-r18
@@ -0,0 +1,17 @@
+BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=dev-libs/elfutils dev-libs/glib:2 sys-apps/kmod:= sys-libs/llvm-libunwind:= sys-libs/zlib:= sys-process/procps:= virtual/libudev:= >=x11-libs/cairo-1.12.0[X?] >=x11-libs/libdrm-2.4.82[video_cards_amdgpu?,video_cards_intel?,video_cards_nouveau?] >=x11-libs/libpciaccess-0.10 x11-libs/pixman chamelium? ( dev-libs/xmlrpc-c[curl] sci-libs/gsl media-libs/alsa-lib:= ) overlay? ( >=x11-libs/libXrandr-1.3 xv? ( x11-libs/libX11 x11-libs/libXext x11-libs/libXv ) ) runner? ( dev-libs/json-c:= ) unwind? ( sys-libs/libunwind ) valgrind? ( dev-util/valgrind ) doc? ( >=dev-util/gtk-doc-1.25-r1 ) man? ( dev-python/docutils ) overlay? ( >=dev-util/peg-0.1.18 x11-base/xorg-proto ) video_cards_intel? ( sys-devel/bison sys-devel/flex )
+DESCRIPTION=Intel GPU userland tools
+EAPI=7
+HOMEPAGE=https://01.org/linuxgraphics https://gitlab.freedesktop.org/drm/igt-gpu-tools
+IUSE=chamelium doc man overlay runner tests unwind valgrind video_cards_amdgpu video_cards_intel video_cards_nouveau video_cards_mediatek video_cards_msm X xv cros_host cros_workon_tree_a12acd360976cad2585d069bc1af65c25e5dcd6f
+KEYWORDS=*
+LICENSE=MIT
+PROPERTIES=live
+RDEPEND=dev-libs/elfutils dev-libs/glib:2 sys-apps/kmod:= sys-libs/llvm-libunwind:= sys-libs/zlib:= sys-process/procps:= virtual/libudev:= >=x11-libs/cairo-1.12.0[X?] >=x11-libs/libdrm-2.4.82[video_cards_amdgpu?,video_cards_intel?,video_cards_nouveau?] >=x11-libs/libpciaccess-0.10 x11-libs/pixman chamelium? ( dev-libs/xmlrpc-c[curl] sci-libs/gsl media-libs/alsa-lib:= ) overlay? ( >=x11-libs/libXrandr-1.3 xv? ( x11-libs/libX11 x11-libs/libXext x11-libs/libXv ) ) runner? ( dev-libs/json-c:= ) unwind? ( sys-libs/libunwind ) valgrind? ( dev-util/valgrind )
+REQUIRED_USE=|| ( video_cards_amdgpu video_cards_intel video_cards_nouveau video_cards_mediatek video_cards_msm ) overlay? ( video_cards_intel || ( X xv ) ) doc? ( tests )
+RESTRICT=test
+SLOT=0
+SRC_URI=https://www.x.org/releases/individual/app/igt-gpu-tools-1.25.tar.xz
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b4a6f29139bcf7105178050e1d2f2d27
diff --git a/metadata/md5-cache/x11-apps/igt-gpu-tools-1.25-r7 b/metadata/md5-cache/x11-apps/igt-gpu-tools-1.25-r7
deleted file mode 100644
index 3cc0f41..0000000
--- a/metadata/md5-cache/x11-apps/igt-gpu-tools-1.25-r7
+++ /dev/null
@@ -1,17 +0,0 @@
-BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=dev-libs/elfutils dev-libs/glib:2 sys-apps/kmod:= sys-libs/llvm-libunwind:= sys-libs/zlib:= sys-process/procps:= virtual/libudev:= >=x11-libs/cairo-1.12.0[X?] >=x11-libs/libdrm-2.4.82[video_cards_amdgpu?,video_cards_intel?,video_cards_nouveau?] >=x11-libs/libpciaccess-0.10 x11-libs/pixman chamelium? ( dev-libs/xmlrpc-c[curl] sci-libs/gsl media-libs/alsa-lib:= ) overlay? ( >=x11-libs/libXrandr-1.3 xv? ( x11-libs/libX11 x11-libs/libXext x11-libs/libXv ) ) runner? ( dev-libs/json-c:= ) unwind? ( sys-libs/libunwind ) valgrind? ( dev-util/valgrind ) doc? ( >=dev-util/gtk-doc-1.25-r1 ) man? ( dev-python/docutils ) overlay? ( >=dev-util/peg-0.1.18 x11-base/xorg-proto ) video_cards_intel? ( sys-devel/bison sys-devel/flex )
-DESCRIPTION=Intel GPU userland tools
-EAPI=7
-HOMEPAGE=https://01.org/linuxgraphics https://gitlab.freedesktop.org/drm/igt-gpu-tools
-IUSE=chamelium doc man overlay runner tests unwind valgrind video_cards_amdgpu video_cards_intel video_cards_nouveau video_cards_msm X xv cros_host cros_workon_tree_79e9b31715154f1cfb9bc5e1a2bbc8ec4d5af188
-KEYWORDS=*
-LICENSE=MIT
-PROPERTIES=live
-RDEPEND=dev-libs/elfutils dev-libs/glib:2 sys-apps/kmod:= sys-libs/llvm-libunwind:= sys-libs/zlib:= sys-process/procps:= virtual/libudev:= >=x11-libs/cairo-1.12.0[X?] >=x11-libs/libdrm-2.4.82[video_cards_amdgpu?,video_cards_intel?,video_cards_nouveau?] >=x11-libs/libpciaccess-0.10 x11-libs/pixman chamelium? ( dev-libs/xmlrpc-c[curl] sci-libs/gsl media-libs/alsa-lib:= ) overlay? ( >=x11-libs/libXrandr-1.3 xv? ( x11-libs/libX11 x11-libs/libXext x11-libs/libXv ) ) runner? ( dev-libs/json-c:= ) unwind? ( sys-libs/libunwind ) valgrind? ( dev-util/valgrind )
-REQUIRED_USE=|| ( video_cards_amdgpu video_cards_intel video_cards_nouveau video_cards_msm ) overlay? ( video_cards_intel || ( X xv ) ) doc? ( tests )
-RESTRICT=test
-SLOT=0
-SRC_URI=https://www.x.org/releases/individual/app/igt-gpu-tools-1.25.tar.xz
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=cb63c4077da2be4ffb106910c74ae639
diff --git a/metadata/md5-cache/x11-apps/igt-gpu-tools-9999 b/metadata/md5-cache/x11-apps/igt-gpu-tools-9999
index 089a024..a9666ce 100644
--- a/metadata/md5-cache/x11-apps/igt-gpu-tools-9999
+++ b/metadata/md5-cache/x11-apps/igt-gpu-tools-9999
@@ -4,13 +4,13 @@
 DESCRIPTION=Intel GPU userland tools
 EAPI=7
 HOMEPAGE=https://01.org/linuxgraphics https://gitlab.freedesktop.org/drm/igt-gpu-tools
-IUSE=chamelium doc man overlay runner tests unwind valgrind video_cards_amdgpu video_cards_intel video_cards_nouveau video_cards_msm X xv cros_host cros_workon_tree_
+IUSE=chamelium doc man overlay runner tests unwind valgrind video_cards_amdgpu video_cards_intel video_cards_nouveau video_cards_mediatek video_cards_msm X xv cros_host cros_workon_tree_
 KEYWORDS=~*
 LICENSE=MIT
 PROPERTIES=live live
 RDEPEND=dev-libs/elfutils dev-libs/glib:2 sys-apps/kmod:= sys-libs/llvm-libunwind:= sys-libs/zlib:= sys-process/procps:= virtual/libudev:= >=x11-libs/cairo-1.12.0[X?] >=x11-libs/libdrm-2.4.82[video_cards_amdgpu?,video_cards_intel?,video_cards_nouveau?] >=x11-libs/libpciaccess-0.10 x11-libs/pixman chamelium? ( dev-libs/xmlrpc-c[curl] sci-libs/gsl media-libs/alsa-lib:= ) overlay? ( >=x11-libs/libXrandr-1.3 xv? ( x11-libs/libX11 x11-libs/libXext x11-libs/libXv ) ) runner? ( dev-libs/json-c:= ) unwind? ( sys-libs/libunwind ) valgrind? ( dev-util/valgrind )
-REQUIRED_USE=|| ( video_cards_amdgpu video_cards_intel video_cards_nouveau video_cards_msm ) overlay? ( video_cards_intel || ( X xv ) ) doc? ( tests )
+REQUIRED_USE=|| ( video_cards_amdgpu video_cards_intel video_cards_nouveau video_cards_mediatek video_cards_msm ) overlay? ( video_cards_intel || ( X xv ) ) doc? ( tests )
 RESTRICT=test
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=cb63c4077da2be4ffb106910c74ae639
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	git-r3	c8f4649ab5a3c07ee2b75b12bc446f6a	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=b4a6f29139bcf7105178050e1d2f2d27
diff --git a/metadata/md5-cache/x11-apps/xrandr-1.3.5-r1 b/metadata/md5-cache/x11-apps/xrandr-1.3.5-r1
index d7c7f95..4272509 100644
--- a/metadata/md5-cache/x11-apps/xrandr-1.3.5-r1
+++ b/metadata/md5-cache/x11-apps/xrandr-1.3.5-r1
@@ -8,5 +8,5 @@
 RDEPEND=>=x11-libs/libXrandr-1.3 x11-libs/libXrender x11-libs/libX11
 SLOT=0
 SRC_URI=http://xorg.freedesktop.org/releases/individual/app/xrandr-1.3.5.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xorg-2	50dd640df6d0554c259daa81531ed3ee
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xorg-2	50dd640df6d0554c259daa81531ed3ee
 _md5_=01b2f750a482dbe5195cdd6bbf84a7ad
diff --git a/metadata/md5-cache/x11-apps/xsendevt-0.6 b/metadata/md5-cache/x11-apps/xsendevt-0.6
index 55c0337..cc5f554 100644
--- a/metadata/md5-cache/x11-apps/xsendevt-0.6
+++ b/metadata/md5-cache/x11-apps/xsendevt-0.6
@@ -8,5 +8,5 @@
 RDEPEND=x11-libs/libX11 x11-libs/libXt x11-libs/libXtst
 SLOT=0
 SRC_URI=mirror://sourceforge/xsendevt/xsendevt-0.6.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c7d15d4969740b8228ef6704f2bc70c6
diff --git a/metadata/md5-cache/x11-apps/xsendevt-0.6-r1 b/metadata/md5-cache/x11-apps/xsendevt-0.6-r1
index 55c0337..cc5f554 100644
--- a/metadata/md5-cache/x11-apps/xsendevt-0.6-r1
+++ b/metadata/md5-cache/x11-apps/xsendevt-0.6-r1
@@ -8,5 +8,5 @@
 RDEPEND=x11-libs/libX11 x11-libs/libXt x11-libs/libXtst
 SLOT=0
 SRC_URI=mirror://sourceforge/xsendevt/xsendevt-0.6.tar.gz
-_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=c7d15d4969740b8228ef6704f2bc70c6
diff --git a/metadata/md5-cache/x11-base/xwayland-1.20.8 b/metadata/md5-cache/x11-base/xwayland-1.20.8
index 676c5f7..a8c3eb8 100644
--- a/metadata/md5-cache/x11-base/xwayland-1.20.8
+++ b/metadata/md5-cache/x11-base/xwayland-1.20.8
@@ -10,5 +10,5 @@
 RDEPEND=!x11-base/xorg-server dev-libs/openssl:0= >=dev-libs/wayland-1.3.0 >=media-libs/mesa-10.3.4-r1 >=x11-libs/libXfont2-2.0.1 >=x11-libs/libxshmfence-1.1 >=x11-libs/pixman-0.27.2 >=x11-misc/xkeyboard-config-2.4.1-r3 >=x11-apps/xkbcomp-1.2.3
 SLOT=0/1.20.8
 SRC_URI=https://www.x.org/releases/individual/xserver/xorg-server-1.20.8.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xorg-3	8cad61092536d3b5fcfc558b8c5d44cc
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xorg-3	8cad61092536d3b5fcfc558b8c5d44cc
 _md5_=ccad9e8a3dc8211cdedb1301006e63c6
diff --git a/metadata/md5-cache/x11-base/xwayland-1.20.8-r3 b/metadata/md5-cache/x11-base/xwayland-1.20.8-r3
index 676c5f7..a8c3eb8 100644
--- a/metadata/md5-cache/x11-base/xwayland-1.20.8-r3
+++ b/metadata/md5-cache/x11-base/xwayland-1.20.8-r3
@@ -10,5 +10,5 @@
 RDEPEND=!x11-base/xorg-server dev-libs/openssl:0= >=dev-libs/wayland-1.3.0 >=media-libs/mesa-10.3.4-r1 >=x11-libs/libXfont2-2.0.1 >=x11-libs/libxshmfence-1.1 >=x11-libs/pixman-0.27.2 >=x11-misc/xkeyboard-config-2.4.1-r3 >=x11-apps/xkbcomp-1.2.3
 SLOT=0/1.20.8
 SRC_URI=https://www.x.org/releases/individual/xserver/xorg-server-1.20.8.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xorg-3	8cad61092536d3b5fcfc558b8c5d44cc
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xorg-3	8cad61092536d3b5fcfc558b8c5d44cc
 _md5_=ccad9e8a3dc8211cdedb1301006e63c6
diff --git a/metadata/md5-cache/x11-drivers/opengles-headers-0.0.1-r36 b/metadata/md5-cache/x11-drivers/opengles-headers-0.0.1-r36
deleted file mode 100644
index cce8f12..0000000
--- a/metadata/md5-cache/x11-drivers/opengles-headers-0.0.1-r36
+++ /dev/null
@@ -1,14 +0,0 @@
-BDEPEND=dev-vcs/git
-DEFINED_PHASES=info install setup unpack
-DEPEND=x11-libs/libX11:= >=dev-util/spirv-headers-1.5.4.1
-DESCRIPTION=OpenGL|ES headers.
-EAPI=7
-HOMEPAGE=http://www.khronos.org/opengles/2_X/
-IUSE=cros_host cros_workon_tree_1de25b0683139e5255fcf749bc31bcb20dbc6533
-KEYWORDS=*
-LICENSE=SGI-B-2.0
-PROPERTIES=live
-RDEPEND=x11-libs/libX11:=
-SLOT=0/0.0.1-r36
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=65072d2dcffaf87f0f9e47da5933c1fa
diff --git a/metadata/md5-cache/x11-drivers/opengles-headers-0.0.1-r37 b/metadata/md5-cache/x11-drivers/opengles-headers-0.0.1-r37
new file mode 100644
index 0000000..0a6e90d
--- /dev/null
+++ b/metadata/md5-cache/x11-drivers/opengles-headers-0.0.1-r37
@@ -0,0 +1,14 @@
+BDEPEND=dev-vcs/git
+DEFINED_PHASES=info install setup unpack
+DEPEND=x11-libs/libX11:= >=dev-util/opencl-headers-2021.04.29 >=dev-util/spirv-headers-1.5.4.1
+DESCRIPTION=OpenGL|ES headers.
+EAPI=7
+HOMEPAGE=http://www.khronos.org/opengles/2_X/
+IUSE=cros_host cros_workon_tree_1de25b0683139e5255fcf749bc31bcb20dbc6533
+KEYWORDS=*
+LICENSE=SGI-B-2.0
+PROPERTIES=live
+RDEPEND=x11-libs/libX11:=
+SLOT=0/0.0.1-r37
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=e693dd62945eaacf67a5c698b85f8bef
diff --git a/metadata/md5-cache/x11-drivers/opengles-headers-9999 b/metadata/md5-cache/x11-drivers/opengles-headers-9999
index 9f996b6..4cd0ee7 100644
--- a/metadata/md5-cache/x11-drivers/opengles-headers-9999
+++ b/metadata/md5-cache/x11-drivers/opengles-headers-9999
@@ -1,6 +1,6 @@
 BDEPEND=dev-vcs/git
 DEFINED_PHASES=info install setup unpack
-DEPEND=x11-libs/libX11:= >=dev-util/spirv-headers-1.5.4.1
+DEPEND=x11-libs/libX11:= >=dev-util/opencl-headers-2021.04.29 >=dev-util/spirv-headers-1.5.4.1
 DESCRIPTION=OpenGL|ES headers.
 EAPI=7
 HOMEPAGE=http://www.khronos.org/opengles/2_X/
@@ -10,5 +10,5 @@
 PROPERTIES=live
 RDEPEND=x11-libs/libX11:=
 SLOT=0/9999
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=4a8712b4b2742be2fc803085f0b4a0dd
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	multilib	2477ebe553d3e4d2c606191fe6c33602	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=4541702304612e7d481c1020d95b1595
diff --git a/metadata/md5-cache/x11-drivers/touchpad-tests-0.0.1-r192 b/metadata/md5-cache/x11-drivers/touchpad-tests-0.0.1-r192
index aaf9fd7..8667fdc 100644
--- a/metadata/md5-cache/x11-drivers/touchpad-tests-0.0.1-r192
+++ b/metadata/md5-cache/x11-drivers/touchpad-tests-0.0.1-r192
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/gestures chromeos-base/libevdev:= app-misc/utouch-evemu x11-base/xorg-proto
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=75f1f1df346d64bc45be629ca930e48f
diff --git a/metadata/md5-cache/x11-drivers/touchpad-tests-9999 b/metadata/md5-cache/x11-drivers/touchpad-tests-9999
index c397ce6..12e0359 100644
--- a/metadata/md5-cache/x11-drivers/touchpad-tests-9999
+++ b/metadata/md5-cache/x11-drivers/touchpad-tests-9999
@@ -9,5 +9,5 @@
 PROPERTIES=live
 RDEPEND=chromeos-base/gestures chromeos-base/libevdev:= app-misc/utouch-evemu x11-base/xorg-proto
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=6c5232e2d97df9f31991614c361a5c12
diff --git a/metadata/md5-cache/x11-libs/arc-libdrm-2.4.105-r1 b/metadata/md5-cache/x11-libs/arc-libdrm-2.4.105-r1
deleted file mode 100644
index cb1f263..0000000
--- a/metadata/md5-cache/x11-libs/arc-libdrm-2.4.105-r1
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-vcs/git >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
-DEFINED_PHASES=compile configure info install setup test unpack
-DEPEND=sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-DESCRIPTION=X.Org libdrm library
-EAPI=7
-HOMEPAGE=http://dri.freedesktop.org/
-IUSE=video_cards_amdgpu video_cards_exynos video_cards_freedreno video_cards_nouveau video_cards_omap video_cards_radeon video_cards_vc4 video_cards_vmware libkms manpages +udev cros_host cros_workon_tree_7d7f7823d7a6c217122b4402ed8c8b77bdec4952 abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
-KEYWORDS=*
-LICENSE=|| ( MIT X )
-PROPERTIES=live
-REQUIRED_USE=cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
-RESTRICT=test
-SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=804b49a51cf35a0d6b7b3082263c6fe8
diff --git a/metadata/md5-cache/x11-libs/arc-libdrm-2.4.107-r1 b/metadata/md5-cache/x11-libs/arc-libdrm-2.4.107-r1
new file mode 100644
index 0000000..c35ae10
--- /dev/null
+++ b/metadata/md5-cache/x11-libs/arc-libdrm-2.4.107-r1
@@ -0,0 +1,15 @@
+BDEPEND=dev-vcs/git >=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array
+DEFINED_PHASES=compile configure info install setup test unpack
+DEPEND=sys-devel/arc-build[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+DESCRIPTION=X.Org libdrm library
+EAPI=7
+HOMEPAGE=http://dri.freedesktop.org/
+IUSE=video_cards_amdgpu video_cards_exynos video_cards_freedreno video_cards_nouveau video_cards_omap video_cards_radeon video_cards_vc4 video_cards_vmware libkms manpages +udev cros_host cros_workon_tree_25ac2f44628d93835f86f30b10d797a652f34cea abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64 arcpp arcvm cheets android-container-pi android-vm-rvc android-vm-sc android-vm-master
+KEYWORDS=*
+LICENSE=|| ( MIT X )
+PROPERTIES=live
+REQUIRED_USE=cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
+RESTRICT=test
+SLOT=0
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=72564587250c2ea7c030a217ac745dd1
diff --git a/metadata/md5-cache/x11-libs/arc-libdrm-9999 b/metadata/md5-cache/x11-libs/arc-libdrm-9999
index 3c2f08c..2a9f3fa 100644
--- a/metadata/md5-cache/x11-libs/arc-libdrm-9999
+++ b/metadata/md5-cache/x11-libs/arc-libdrm-9999
@@ -11,5 +11,5 @@
 REQUIRED_USE=cheets? ( || ( arcpp arcvm ) arcpp? ( ^^ ( android-container-pi ) ) arcvm? ( ^^ ( android-vm-rvc android-vm-sc android-vm-master ) ) ) !cheets? ( !arcpp !arcvm ) !arcpp? ( !android-container-pi ) !arcvm? ( !android-vm-rvc !android-vm-sc !android-vm-master )
 RESTRICT=test
 SLOT=0
-_eclasses_=arc-build	3dd538cae2e82e9cdd7e41df567e1169	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=804b49a51cf35a0d6b7b3082263c6fe8
+_eclasses_=arc-build	a123fd2e41d460acd9c540898b38f13f	arc-build-constants	7fdd7eed9abc3f4a7cb7496a49dca63f	cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=72564587250c2ea7c030a217ac745dd1
diff --git a/metadata/md5-cache/x11-libs/cairo-1.17.4 b/metadata/md5-cache/x11-libs/cairo-1.17.4
index d716dad..a13c445 100644
--- a/metadata/md5-cache/x11-libs/cairo-1.17.4
+++ b/metadata/md5-cache/x11-libs/cairo-1.17.4
@@ -12,5 +12,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=https://www.cairographics.org/releases/cairo-1.17.4.tar.xz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d901d08dae83ad717b2bc7abb1490161
diff --git a/metadata/md5-cache/x11-libs/cairo-1.17.4-r2 b/metadata/md5-cache/x11-libs/cairo-1.17.4-r2
index d716dad..a13c445 100644
--- a/metadata/md5-cache/x11-libs/cairo-1.17.4-r2
+++ b/metadata/md5-cache/x11-libs/cairo-1.17.4-r2
@@ -12,5 +12,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=https://www.cairographics.org/releases/cairo-1.17.4.tar.xz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=d901d08dae83ad717b2bc7abb1490161
diff --git a/metadata/md5-cache/x11-libs/libXfont-1.4.4-r1 b/metadata/md5-cache/x11-libs/libXfont-1.4.4-r1
index 8980419..37b32dc 100644
--- a/metadata/md5-cache/x11-libs/libXfont-1.4.4-r1
+++ b/metadata/md5-cache/x11-libs/libXfont-1.4.4-r1
@@ -9,5 +9,5 @@
 RDEPEND=x11-libs/xtrans x11-libs/libfontenc >=media-libs/freetype-2 app-arch/bzip2 x11-proto/xproto x11-proto/fontsproto
 SLOT=0
 SRC_URI=http://xorg.freedesktop.org/releases/individual/lib/libXfont-1.4.4.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xorg-2	50dd640df6d0554c259daa81531ed3ee
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xorg-2	50dd640df6d0554c259daa81531ed3ee
 _md5_=5f7052254fc316c4b360f288a8acd2d5
diff --git a/metadata/md5-cache/x11-libs/libXft-2.3.1 b/metadata/md5-cache/x11-libs/libXft-2.3.1
index 291965f..f4ab6eb 100644
--- a/metadata/md5-cache/x11-libs/libXft-2.3.1
+++ b/metadata/md5-cache/x11-libs/libXft-2.3.1
@@ -9,5 +9,5 @@
 RDEPEND=>=x11-libs/libXrender-0.8.2 x11-libs/libX11 x11-libs/libXext media-libs/freetype media-libs/fontconfig x11-proto/xproto
 SLOT=0
 SRC_URI=http://xorg.freedesktop.org/releases/individual/lib/libXft-2.3.1.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xorg-2	50dd640df6d0554c259daa81531ed3ee
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xorg-2	50dd640df6d0554c259daa81531ed3ee
 _md5_=c8a8da550a30e66d68f9173662d9521d
diff --git a/metadata/md5-cache/x11-libs/libXft-2.3.1-r1 b/metadata/md5-cache/x11-libs/libXft-2.3.1-r1
index 291965f..f4ab6eb 100644
--- a/metadata/md5-cache/x11-libs/libXft-2.3.1-r1
+++ b/metadata/md5-cache/x11-libs/libXft-2.3.1-r1
@@ -9,5 +9,5 @@
 RDEPEND=>=x11-libs/libXrender-0.8.2 x11-libs/libX11 x11-libs/libXext media-libs/freetype media-libs/fontconfig x11-proto/xproto
 SLOT=0
 SRC_URI=http://xorg.freedesktop.org/releases/individual/lib/libXft-2.3.1.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xorg-2	50dd640df6d0554c259daa81531ed3ee
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xorg-2	50dd640df6d0554c259daa81531ed3ee
 _md5_=c8a8da550a30e66d68f9173662d9521d
diff --git a/metadata/md5-cache/x11-libs/libdrm-2.4.105-r2 b/metadata/md5-cache/x11-libs/libdrm-2.4.105-r2
deleted file mode 100644
index 645addc..0000000
--- a/metadata/md5-cache/x11-libs/libdrm-2.4.105-r2
+++ /dev/null
@@ -1,16 +0,0 @@
-BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
-DEFINED_PHASES=compile configure info install prepare setup test unpack
-DEPEND=dev-libs/libpthread-stubs udev? ( virtual/udev ) video_cards_amdgpu? ( dev-util/cunit ) video_cards_intel? ( >=x11-libs/libpciaccess-0.10 ) !<x11-libs/libdrm-tests-2.4.58-r3
-DESCRIPTION=X.Org libdrm library
-EAPI=7
-HOMEPAGE=http://dri.freedesktop.org/
-IUSE=video_cards_amdgpu video_cards_exynos video_cards_freedreno video_cards_intel video_cards_nouveau video_cards_omap video_cards_radeon video_cards_vc4 video_cards_vmware libkms manpages +udev cros_host cros_workon_tree_7d7f7823d7a6c217122b4402ed8c8b77bdec4952
-KEYWORDS=*
-LICENSE=|| ( MIT X )
-PROPERTIES=live
-RDEPEND=dev-libs/libpthread-stubs udev? ( virtual/udev ) video_cards_amdgpu? ( dev-util/cunit ) video_cards_intel? ( >=x11-libs/libpciaccess-0.10 ) !<x11-libs/libdrm-tests-2.4.58-r3
-REQUIRED_USE=video_cards_exynos? ( libkms )
-RESTRICT=test
-SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=485b35806765d5d460999f40aa4905f8
diff --git a/metadata/md5-cache/x11-libs/libdrm-2.4.107-r1 b/metadata/md5-cache/x11-libs/libdrm-2.4.107-r1
new file mode 100644
index 0000000..59fb85f
--- /dev/null
+++ b/metadata/md5-cache/x11-libs/libdrm-2.4.107-r1
@@ -0,0 +1,16 @@
+BDEPEND=>=dev-util/meson-0.56.0 >=dev-util/ninja-1.8.2 dev-util/meson-format-array dev-vcs/git
+DEFINED_PHASES=compile configure info install prepare setup test unpack
+DEPEND=dev-libs/libpthread-stubs udev? ( virtual/udev ) video_cards_amdgpu? ( dev-util/cunit ) video_cards_intel? ( >=x11-libs/libpciaccess-0.10 ) !<x11-libs/libdrm-tests-2.4.58-r3
+DESCRIPTION=X.Org libdrm library
+EAPI=7
+HOMEPAGE=http://dri.freedesktop.org/
+IUSE=video_cards_amdgpu video_cards_exynos video_cards_freedreno video_cards_intel video_cards_nouveau video_cards_omap video_cards_radeon video_cards_vc4 video_cards_vmware libkms manpages +udev cros_host cros_workon_tree_25ac2f44628d93835f86f30b10d797a652f34cea
+KEYWORDS=*
+LICENSE=|| ( MIT X )
+PROPERTIES=live
+RDEPEND=dev-libs/libpthread-stubs udev? ( virtual/udev ) video_cards_amdgpu? ( dev-util/cunit ) video_cards_intel? ( >=x11-libs/libpciaccess-0.10 ) !<x11-libs/libdrm-tests-2.4.58-r3
+REQUIRED_USE=video_cards_exynos? ( libkms )
+RESTRICT=test
+SLOT=0
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0fb429586506b64e8aac23322abb6221
diff --git a/metadata/md5-cache/x11-libs/libdrm-9999 b/metadata/md5-cache/x11-libs/libdrm-9999
index 7b3119b..e9883b3 100644
--- a/metadata/md5-cache/x11-libs/libdrm-9999
+++ b/metadata/md5-cache/x11-libs/libdrm-9999
@@ -12,5 +12,5 @@
 REQUIRED_USE=video_cards_exynos? ( libkms )
 RESTRICT=test
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=485b35806765d5d460999f40aa4905f8
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	meson	5ec14fdbc5446b8767e87e186e3b1a52	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=0fb429586506b64e8aac23322abb6221
diff --git a/metadata/md5-cache/x11-libs/libpciaccess-0.12.902-r3 b/metadata/md5-cache/x11-libs/libpciaccess-0.12.902-r3
index c88b655..a659de9 100644
--- a/metadata/md5-cache/x11-libs/libpciaccess-0.12.902-r3
+++ b/metadata/md5-cache/x11-libs/libpciaccess-0.12.902-r3
@@ -9,5 +9,5 @@
 RDEPEND=!<x11-base/xorg-server-1.5 zlib? ( sys-libs/zlib )
 SLOT=0
 SRC_URI=http://xorg.freedesktop.org/releases/individual/lib/libpciaccess-0.12.902.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xorg-2	50dd640df6d0554c259daa81531ed3ee
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	autotools-utils	95db0904ad0f62535e18e5ccb67cce5e	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf	xorg-2	50dd640df6d0554c259daa81531ed3ee
 _md5_=f07f9d31b2ec7c646052a741f5086398
diff --git a/metadata/md5-cache/x11-libs/libva-2.11.0 b/metadata/md5-cache/x11-libs/libva-2.11.0
deleted file mode 100644
index f27dc1a..0000000
--- a/metadata/md5-cache/x11-libs/libva-2.11.0
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815
-DEFINED_PHASES=compile configure install prepare test
-DEPEND=>=x11-libs/libdrm-2.4.46[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Video Acceleration (VA) API for Linux
-EAPI=7
-HOMEPAGE=https://01.org/linuxmedia/vaapi
-IUSE=utils beanstalk internal intel_ihd_pavp video_cards_i965 video_cards_amdgpu video_cards_iHD abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=MIT
-PDEPEND=video_cards_i965? ( >=x11-libs/libva-intel-driver-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_iHD? ( beanstalk? ( internal? ( x11-libs/libva-intel-media-driver-pavp[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !internal? ( intel_ihd_pavp? ( x11-libs/libva-intel-media-driver-pavp[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !intel_ihd_pavp? ( ~x11-libs/libva-intel-media-driver-21.1.3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) ) !beanstalk? ( ~x11-libs/libva-intel-media-driver-21.1.3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) video_cards_amdgpu? ( virtual/opengles[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) utils? ( media-video/libva-utils )
-RDEPEND=>=x11-libs/libdrm-2.4.46[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-SLOT=0/2
-SRC_URI=https://github.com/intel/libva/releases/download/2.11.0/libva-2.11.0.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=bc11edfd96db86c0d7ff41aec6ba6513
diff --git a/metadata/md5-cache/x11-libs/libva-2.11.0-r1 b/metadata/md5-cache/x11-libs/libva-2.11.0-r1
deleted file mode 100644
index f27dc1a..0000000
--- a/metadata/md5-cache/x11-libs/libva-2.11.0-r1
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815
-DEFINED_PHASES=compile configure install prepare test
-DEPEND=>=x11-libs/libdrm-2.4.46[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=Video Acceleration (VA) API for Linux
-EAPI=7
-HOMEPAGE=https://01.org/linuxmedia/vaapi
-IUSE=utils beanstalk internal intel_ihd_pavp video_cards_i965 video_cards_amdgpu video_cards_iHD abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=MIT
-PDEPEND=video_cards_i965? ( >=x11-libs/libva-intel-driver-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_iHD? ( beanstalk? ( internal? ( x11-libs/libva-intel-media-driver-pavp[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !internal? ( intel_ihd_pavp? ( x11-libs/libva-intel-media-driver-pavp[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !intel_ihd_pavp? ( ~x11-libs/libva-intel-media-driver-21.1.3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) ) !beanstalk? ( ~x11-libs/libva-intel-media-driver-21.1.3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) video_cards_amdgpu? ( virtual/opengles[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) utils? ( media-video/libva-utils )
-RDEPEND=>=x11-libs/libdrm-2.4.46[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
-SLOT=0/2
-SRC_URI=https://github.com/intel/libva/releases/download/2.11.0/libva-2.11.0.tar.gz
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=bc11edfd96db86c0d7ff41aec6ba6513
diff --git a/metadata/md5-cache/x11-libs/libva-2.12.0 b/metadata/md5-cache/x11-libs/libva-2.12.0
new file mode 100644
index 0000000..6bf6877
--- /dev/null
+++ b/metadata/md5-cache/x11-libs/libva-2.12.0
@@ -0,0 +1,15 @@
+BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=>=x11-libs/libdrm-2.4.46[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=Video Acceleration (VA) API for Linux
+EAPI=7
+HOMEPAGE=https://01.org/linuxmedia/vaapi
+IUSE=utils intel_oemcrypto internal intel_ihd_pavp video_cards_i965 video_cards_amdgpu video_cards_iHD abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=MIT
+PDEPEND=video_cards_i965? ( >=x11-libs/libva-intel-driver-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_iHD? ( intel_oemcrypto? ( internal? ( x11-libs/libva-intel-media-driver-pavp[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !internal? ( intel_ihd_pavp? ( x11-libs/libva-intel-media-driver-pavp[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !intel_ihd_pavp? ( ~x11-libs/libva-intel-media-driver-21.2.3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) ) !intel_oemcrypto? ( ~x11-libs/libva-intel-media-driver-21.2.3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) video_cards_amdgpu? ( virtual/opengles[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) utils? ( media-video/libva-utils )
+RDEPEND=>=x11-libs/libdrm-2.4.46[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+SLOT=0/2
+SRC_URI=https://github.com/intel/libva/releases/download/2.12.0/libva-2.12.0.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6dfbc753ebe366894287ecca877e59aa
diff --git a/metadata/md5-cache/x11-libs/libva-2.12.0-r1 b/metadata/md5-cache/x11-libs/libva-2.12.0-r1
new file mode 100644
index 0000000..6bf6877
--- /dev/null
+++ b/metadata/md5-cache/x11-libs/libva-2.12.0-r1
@@ -0,0 +1,15 @@
+BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=>=x11-libs/libdrm-2.4.46[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=Video Acceleration (VA) API for Linux
+EAPI=7
+HOMEPAGE=https://01.org/linuxmedia/vaapi
+IUSE=utils intel_oemcrypto internal intel_ihd_pavp video_cards_i965 video_cards_amdgpu video_cards_iHD abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=MIT
+PDEPEND=video_cards_i965? ( >=x11-libs/libva-intel-driver-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) video_cards_iHD? ( intel_oemcrypto? ( internal? ( x11-libs/libva-intel-media-driver-pavp[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !internal? ( intel_ihd_pavp? ( x11-libs/libva-intel-media-driver-pavp[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !intel_ihd_pavp? ( ~x11-libs/libva-intel-media-driver-21.2.3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) ) !intel_oemcrypto? ( ~x11-libs/libva-intel-media-driver-21.2.3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) ) video_cards_amdgpu? ( virtual/opengles[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) utils? ( media-video/libva-utils )
+RDEPEND=>=x11-libs/libdrm-2.4.46[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?]
+SLOT=0/2
+SRC_URI=https://github.com/intel/libva/releases/download/2.12.0/libva-2.12.0.tar.gz
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=6dfbc753ebe366894287ecca877e59aa
diff --git a/metadata/md5-cache/x11-libs/libva-intel-driver-2.4.1 b/metadata/md5-cache/x11-libs/libva-intel-driver-2.4.1
index c63a246..94d5a7b 100644
--- a/metadata/md5-cache/x11-libs/libva-intel-driver-2.4.1
+++ b/metadata/md5-cache/x11-libs/libva-intel-driver-2.4.1
@@ -11,5 +11,5 @@
 RESTRICT=test
 SLOT=0
 SRC_URI=https://github.com/intel/intel-vaapi-driver/releases/download/2.4.1/intel-vaapi-driver-2.4.1.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b6470a1e0b2a0bfaf3838c9d340cfdfc
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fe65413464e9dd3a34ee0f2d4f540268
diff --git a/metadata/md5-cache/x11-libs/libva-intel-driver-2.4.1-r10 b/metadata/md5-cache/x11-libs/libva-intel-driver-2.4.1-r10
new file mode 100644
index 0000000..94d5a7b
--- /dev/null
+++ b/metadata/md5-cache/x11-libs/libva-intel-driver-2.4.1-r10
@@ -0,0 +1,15 @@
+BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=>=x11-libs/libdrm-2.4.52[video_cards_intel,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=x11-libs/libva-2.4.0:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] hybrid_codec? ( media-libs/intel-hybrid-driver[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
+DESCRIPTION=HW video decode support for Intel integrated graphics
+EAPI=7
+HOMEPAGE=https://github.com/intel/intel-vaapi-driver
+IUSE=hybrid_codec abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=>=x11-libs/libdrm-2.4.52[video_cards_intel,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=x11-libs/libva-2.4.0:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] hybrid_codec? ( media-libs/intel-hybrid-driver[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
+RESTRICT=test
+SLOT=0
+SRC_URI=https://github.com/intel/intel-vaapi-driver/releases/download/2.4.1/intel-vaapi-driver-2.4.1.tar.bz2
+_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
+_md5_=fe65413464e9dd3a34ee0f2d4f540268
diff --git a/metadata/md5-cache/x11-libs/libva-intel-driver-2.4.1-r9 b/metadata/md5-cache/x11-libs/libva-intel-driver-2.4.1-r9
deleted file mode 100644
index c63a246..0000000
--- a/metadata/md5-cache/x11-libs/libva-intel-driver-2.4.1-r9
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815
-DEFINED_PHASES=compile configure install prepare test
-DEPEND=>=x11-libs/libdrm-2.4.52[video_cards_intel,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=x11-libs/libva-2.4.0:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] hybrid_codec? ( media-libs/intel-hybrid-driver[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
-DESCRIPTION=HW video decode support for Intel integrated graphics
-EAPI=7
-HOMEPAGE=https://github.com/intel/intel-vaapi-driver
-IUSE=hybrid_codec abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64 abi_arm_32 abi_arm_64
-KEYWORDS=*
-LICENSE=MIT
-RDEPEND=>=x11-libs/libdrm-2.4.52[video_cards_intel,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] >=x11-libs/libva-2.4.0:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] hybrid_codec? ( media-libs/intel-hybrid-driver[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?,abi_arm_32(-)?,abi_arm_64(-)?] )
-RESTRICT=test
-SLOT=0
-SRC_URI=https://github.com/intel/intel-vaapi-driver/releases/download/2.4.1/intel-vaapi-driver-2.4.1.tar.bz2
-_eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
-_md5_=b6470a1e0b2a0bfaf3838c9d340cfdfc
diff --git a/metadata/md5-cache/x11-libs/libva-intel-media-driver-21.1.3 b/metadata/md5-cache/x11-libs/libva-intel-media-driver-21.1.3
deleted file mode 100644
index 8e2c49b..0000000
--- a/metadata/md5-cache/x11-libs/libva-intel-media-driver-21.1.3
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-util/ninja dev-util/cmake
-DEFINED_PHASES=compile configure install prepare test
-DEPEND=>=media-libs/gmmlib-21.1.1 >=x11-libs/libva-2.11.0
-DESCRIPTION=Intel Media Driver for VAAPI (iHD)
-EAPI=7
-HOMEPAGE=https://github.com/intel/media-driver
-IUSE=ihd_cmrtlib
-KEYWORDS=*
-LICENSE=MIT BSD
-RDEPEND=>=media-libs/gmmlib-21.1.1 >=x11-libs/libva-2.11.0
-RESTRICT=nomirror
-SLOT=0
-SRC_URI=https://github.com/intel/media-driver/archive/intel-media-21.1.3.tar.gz
-_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=89c99d9ddea5e4e8f523a63b4194e7b3
diff --git a/metadata/md5-cache/x11-libs/libva-intel-media-driver-21.1.3-r5 b/metadata/md5-cache/x11-libs/libva-intel-media-driver-21.1.3-r5
deleted file mode 100644
index 8e2c49b..0000000
--- a/metadata/md5-cache/x11-libs/libva-intel-media-driver-21.1.3-r5
+++ /dev/null
@@ -1,15 +0,0 @@
-BDEPEND=dev-util/ninja dev-util/cmake
-DEFINED_PHASES=compile configure install prepare test
-DEPEND=>=media-libs/gmmlib-21.1.1 >=x11-libs/libva-2.11.0
-DESCRIPTION=Intel Media Driver for VAAPI (iHD)
-EAPI=7
-HOMEPAGE=https://github.com/intel/media-driver
-IUSE=ihd_cmrtlib
-KEYWORDS=*
-LICENSE=MIT BSD
-RDEPEND=>=media-libs/gmmlib-21.1.1 >=x11-libs/libva-2.11.0
-RESTRICT=nomirror
-SLOT=0
-SRC_URI=https://github.com/intel/media-driver/archive/intel-media-21.1.3.tar.gz
-_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=89c99d9ddea5e4e8f523a63b4194e7b3
diff --git a/metadata/md5-cache/x11-libs/libva-intel-media-driver-21.2.3 b/metadata/md5-cache/x11-libs/libva-intel-media-driver-21.2.3
new file mode 100644
index 0000000..93a0764
--- /dev/null
+++ b/metadata/md5-cache/x11-libs/libva-intel-media-driver-21.2.3
@@ -0,0 +1,14 @@
+BDEPEND=dev-util/ninja dev-util/cmake
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=>=media-libs/gmmlib-21.2.1 >=x11-libs/libva-2.12.0
+DESCRIPTION=Intel Media Driver for VAAPI (iHD)
+EAPI=7
+HOMEPAGE=https://github.com/intel/media-driver
+IUSE=ihd_cmrtlib
+KEYWORDS=*
+LICENSE=MIT BSD
+RDEPEND=>=media-libs/gmmlib-21.2.1 >=x11-libs/libva-2.12.0
+SLOT=0
+SRC_URI=https://github.com/intel/media-driver/archive/intel-media-21.2.3.tar.gz
+_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=86194b968f758508c57b315759833fed
diff --git a/metadata/md5-cache/x11-libs/libva-intel-media-driver-21.2.3-r7 b/metadata/md5-cache/x11-libs/libva-intel-media-driver-21.2.3-r7
new file mode 100644
index 0000000..93a0764
--- /dev/null
+++ b/metadata/md5-cache/x11-libs/libva-intel-media-driver-21.2.3-r7
@@ -0,0 +1,14 @@
+BDEPEND=dev-util/ninja dev-util/cmake
+DEFINED_PHASES=compile configure install prepare test
+DEPEND=>=media-libs/gmmlib-21.2.1 >=x11-libs/libva-2.12.0
+DESCRIPTION=Intel Media Driver for VAAPI (iHD)
+EAPI=7
+HOMEPAGE=https://github.com/intel/media-driver
+IUSE=ihd_cmrtlib
+KEYWORDS=*
+LICENSE=MIT BSD
+RDEPEND=>=media-libs/gmmlib-21.2.1 >=x11-libs/libva-2.12.0
+SLOT=0
+SRC_URI=https://github.com/intel/media-driver/archive/intel-media-21.2.3.tar.gz
+_eclasses_=cmake	b22e256fd899c7e0c747e8834eff121a	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	multilib	2477ebe553d3e4d2c606191fe6c33602	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=86194b968f758508c57b315759833fed
diff --git a/metadata/md5-cache/x11-libs/libxkbcommon-1.0.3 b/metadata/md5-cache/x11-libs/libxkbcommon-1.0.3
index 2a28ab9..ecf8396 100644
--- a/metadata/md5-cache/x11-libs/libxkbcommon-1.0.3
+++ b/metadata/md5-cache/x11-libs/libxkbcommon-1.0.3
@@ -11,5 +11,5 @@
 RESTRICT=!test? ( test )
 SLOT=0
 SRC_URI=https://xkbcommon.org/download/libxkbcommon-1.0.3.tar.xz
-_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a
+_eclasses_=eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	meson	5ec14fdbc5446b8767e87e186e3b1a52	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	multiprocessing	c3cf317581e5bd068a4b851f03dd8cba	ninja-utils	132cbb376048d079b5a012f5467c4e7f	python-any-r1	54a3178500786b0a7ede4a23b7f2a6ad	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e
 _md5_=1b031b43c45976f85c14ab9fb3459d1d
diff --git a/metadata/md5-cache/x11-misc/xkeyboard-config-2.27 b/metadata/md5-cache/x11-misc/xkeyboard-config-2.27
index a7a058e..a87c02f 100644
--- a/metadata/md5-cache/x11-misc/xkeyboard-config-2.27
+++ b/metadata/md5-cache/x11-misc/xkeyboard-config-2.27
@@ -9,4 +9,4 @@
 RDEPEND=cros_host? ( !<x11-apps/xkbcomp-1.2.3 ) !<x11-libs/libX11-1.4.3
 SLOT=0
 SRC_URI=/data/xkeyboard-config/xkeyboard-config-2.27.tar.bz2
-_md5_=02cdbaf747f7c1d37c7af4a49489fba1
+_md5_=5f875912c1ebcaceef97a0462ae230e5
diff --git a/metadata/md5-cache/x11-misc/xkeyboard-config-2.27-r11 b/metadata/md5-cache/x11-misc/xkeyboard-config-2.27-r11
deleted file mode 100644
index a7a058e..0000000
--- a/metadata/md5-cache/x11-misc/xkeyboard-config-2.27-r11
+++ /dev/null
@@ -1,12 +0,0 @@
-DEFINED_PHASES=configure prepare
-DEPEND=dev-util/intltool sys-devel/gettext virtual/pkgconfig
-DESCRIPTION=X keyboard configuration database
-EAPI=6
-HOMEPAGE=https://www.freedesktop.org/wiki/Software/XKeyboardConfig https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config
-IUSE=cros_host
-KEYWORDS=*
-LICENSE=MIT
-RDEPEND=cros_host? ( !<x11-apps/xkbcomp-1.2.3 ) !<x11-libs/libX11-1.4.3
-SLOT=0
-SRC_URI=/data/xkeyboard-config/xkeyboard-config-2.27.tar.bz2
-_md5_=02cdbaf747f7c1d37c7af4a49489fba1
diff --git a/metadata/md5-cache/x11-misc/xkeyboard-config-2.27-r12 b/metadata/md5-cache/x11-misc/xkeyboard-config-2.27-r12
new file mode 100644
index 0000000..a87c02f
--- /dev/null
+++ b/metadata/md5-cache/x11-misc/xkeyboard-config-2.27-r12
@@ -0,0 +1,12 @@
+DEFINED_PHASES=configure prepare
+DEPEND=dev-util/intltool sys-devel/gettext virtual/pkgconfig
+DESCRIPTION=X keyboard configuration database
+EAPI=6
+HOMEPAGE=https://www.freedesktop.org/wiki/Software/XKeyboardConfig https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config
+IUSE=cros_host
+KEYWORDS=*
+LICENSE=MIT
+RDEPEND=cros_host? ( !<x11-apps/xkbcomp-1.2.3 ) !<x11-libs/libX11-1.4.3
+SLOT=0
+SRC_URI=/data/xkeyboard-config/xkeyboard-config-2.27.tar.bz2
+_md5_=5f875912c1ebcaceef97a0462ae230e5
diff --git a/metadata/md5-cache/x11-themes/cros-adapta-0.0.1-r32 b/metadata/md5-cache/x11-themes/cros-adapta-0.0.1-r32
index bad7133..9a6c1c2 100644
--- a/metadata/md5-cache/x11-themes/cros-adapta-0.0.1-r32
+++ b/metadata/md5-cache/x11-themes/cros-adapta-0.0.1-r32
@@ -7,5 +7,5 @@
 LICENSE=GPL-2 CC-BY-4.0
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=69d1c1fbe765c4c62493884d50b8fabe
diff --git a/metadata/md5-cache/x11-themes/cros-adapta-9999 b/metadata/md5-cache/x11-themes/cros-adapta-9999
index 9a219b5..738c4e9 100644
--- a/metadata/md5-cache/x11-themes/cros-adapta-9999
+++ b/metadata/md5-cache/x11-themes/cros-adapta-9999
@@ -7,5 +7,5 @@
 LICENSE=GPL-2 CC-BY-4.0
 PROPERTIES=live
 SLOT=0
-_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	2237e0dad80252483b9faa240a43ce2a	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
+_eclasses_=cros-constants	bf71cd1168b6441b64a8cdbc06c36eda	cros-credentials	4fd98ebbff6a1534ca9a89547e13dc92	cros-workon	ff100259492312ff6570e490bcb9a320	desktop	b1d22ac8bdd4679ab79c71aca235009d	epatch	ed88001f77c6dd0d5f09e45c1a5b480e	estack	686eaab303305a908fd57b2fd7617800	eutils	fcb2aa98e1948b835b5ae66ca52868c5	flag-o-matic	5d5921a298e95441da2f85be419894c0	git-2	d6a1d7d3b4c4fff2fba86e3f53beeb0f	ltprune	2729691420b6deeda2a90b1f1183fb55	multilib	2477ebe553d3e4d2c606191fe6c33602	preserve-libs	ef207dc62baddfddfd39a164d9797648	toolchain-funcs	528ab0a9e1ee02c57524ad3bede3c57e	vcs-clean	2a0f74a496fa2b1552c4f3398258b7bf
 _md5_=08ccdaf7863bba37ec96d0d3d54c119a
diff --git a/net-analyzer/wireshark/Manifest b/net-analyzer/wireshark/Manifest
index 3a55d96..107b0ba 100644
--- a/net-analyzer/wireshark/Manifest
+++ b/net-analyzer/wireshark/Manifest
@@ -1 +1 @@
-DIST wireshark-1.10.5.tar.bz2 26666846 SHA256 a02190da9573dd381e7598277a31d0c63b05b2af9fe05ab6b7fc058bbea141f5 SHA512 c72d8f23d3018ece52ccebbaa49f6a389e57ce5ab6df93d26f82888b8ed6fb29dd3caf4f5cb022f153f9589261f5666f7bacaf14b2d64b10f56c4e8ef9cc43e7 WHIRLPOOL f2b12e44ebea344e5dafa58892ae03b1cb140eb116c044ea214ec879d2a24daa2c2bbabba377238cddb32a38426e07ed50b0a997ea065b12e3a8f97a0f43b176
+DIST wireshark-3.4.7.tar.xz 32311140 BLAKE2B 0a6112ed667739935417350660e31d64747cb81295db058e0a27c38387b2ed2b9806f8d61925c262d531fb96d87e230d1cd5d511ae0bdba973373835bf5d7bc5 SHA512 26546828d26f0fef1021ae9fccf5c3f1d7cb3bd05ce63ec37259a1938546ec427415d542fe985c11f95055f7677a19b010be57c7082848714b1755565f092ed0
diff --git a/net-analyzer/wireshark/files/wireshark-1.10.1-oldlibs.patch b/net-analyzer/wireshark/files/wireshark-1.10.1-oldlibs.patch
deleted file mode 100644
index 58eabdf..0000000
--- a/net-analyzer/wireshark/files/wireshark-1.10.1-oldlibs.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/epan/Makefile.am
-+++ b/epan/Makefile.am
-@@ -136,14 +136,15 @@
- # Add the object files for missing routines, if any.
- #
- libwireshark_la_LIBADD = \
-+	${top_builddir}/wiretap/libwiretap.la ${top_builddir}/wsutil/libwsutil.la \
- 	libwireshark_generated.la \
- 	libwireshark_asmopt.la crypt/libairpdcap.la \
- 	ftypes/libftypes.la dfilter/libdfilter.la dissectors/libdissectors.la \
- 	dissectors/libdirtydissectors.la wmem/libwmem.la $(wslua_lib) $(wspython_lib) @SOCKET_LIBS@ @NSL_LIBS@ \
- 	@C_ARES_LIBS@ @ADNS_LIBS@ @LIBGCRYPT_LIBS@ @LIBGNUTLS_LIBS@ \
- 	@KRB5_LIBS@ @SSL_LIBS@ @LIBSMI_LDFLAGS@ @GEOIP_LIBS@ \
--	${top_builddir}/wiretap/libwiretap.la @GLIB_LIBS@ \
--	${top_builddir}/wsutil/libwsutil.la -lm
-+	@GLIB_LIBS@ \
-+	-lm
- 
- libwireshark_la_DEPENDENCIES = \
- 	libwireshark_generated.la \
diff --git a/net-analyzer/wireshark/files/wireshark-1.10.4-gtk-deprecated-warnings.patch b/net-analyzer/wireshark/files/wireshark-1.10.4-gtk-deprecated-warnings.patch
deleted file mode 100644
index 0e072bc..0000000
--- a/net-analyzer/wireshark/files/wireshark-1.10.4-gtk-deprecated-warnings.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/configure.ac
-+++ b/configure.ac
-@@ -1387,16 +1387,6 @@
- 	wireshark_SUBDIRS="codecs ui/gtk"
- 	# Don't use GLIB_CFLAGS
- 	AM_PATH_GLIB_2_0($GLIB_MIN_VERSION, , AC_MSG_ERROR(GLib $GLIB_MIN_VERSION or later distribution not found.), gthread gmodule)
--
--	CPPFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CPPFLAGS"
--	CPPFLAGS="-DGDK_DISABLE_DEPRECATED $CPPFLAGS"
--	CPPFLAGS="-DGTK_DISABLE_DEPRECATED $CPPFLAGS"
--	CPPFLAGS="-DGTK_DISABLE_SINGLE_INCLUDES $CPPFLAGS"
--	if test ! \( $gtk_config_major_version -eq 2 -a $gtk_config_minor_version -lt 20 \) ; then
--		# Enable GSEAL when building with GTK > 2.20
--		# (Versions prior to 2.22 lacked some necessary accessors.)
--		CPPFLAGS="-DGSEAL_ENABLE $CPPFLAGS"
--	fi
- fi
- 
- #
diff --git a/net-analyzer/wireshark/files/wireshark-1.10.5-cross-compile.patch b/net-analyzer/wireshark/files/wireshark-1.10.5-cross-compile.patch
deleted file mode 100644
index 2eb3f8c..0000000
--- a/net-analyzer/wireshark/files/wireshark-1.10.5-cross-compile.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-https://code.wireshark.org/review/8481
-
-From edefd74591d8f7010024a31576c2cb51eb1526ad Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@chromium.org>
-Date: Sat, 16 May 2015 05:08:53 -0400
-Subject: [PATCH] switch to AC_PATH_TOOL
-
-The TOOL variant will automatically search for host prefixed scripts
-(e.g. armv7a-unknown-linux-gnueabi-pcap-config) before falling back
-to the default (i.e. pcap-config).  This makes cross-compiling a bit
-simpler.
-
---- a/acinclude.m4
-+++ b/acinclude.m4
-@@ -349,7 +349,7 @@ AC_DEFUN([AC_WIRESHARK_PCAP_CHECK],
- 	  # The user didn't specify a directory in which libpcap resides.
- 	  # First, look for a pcap-config script.
- 	  #
--	  AC_PATH_PROG(PCAP_CONFIG, pcap-config)
-+	  AC_PATH_TOOL(PCAP_CONFIG, pcap-config)
- 
- 	  if test -n "$PCAP_CONFIG" ; then
- 	    #
-@@ -1296,7 +1296,7 @@ AC_DEFUN([AC_WIRESHARK_KRB5_CHECK],
- 	    AC_DEFINE(HAVE_MIT_KERBEROS, 1, [Define to use MIT kerberos])
- 	  fi
- 	else
--	  AC_PATH_PROG(KRB5_CONFIG, krb5-config)
-+	  AC_PATH_TOOL(KRB5_CONFIG, krb5-config)
- 	  if test -x "$KRB5_CONFIG"
- 	  then
- 	    KRB5_FLAGS=`"$KRB5_CONFIG" --cflags`
diff --git a/net-analyzer/wireshark/files/wireshark-1.10.5-g_memmove.patch b/net-analyzer/wireshark/files/wireshark-1.10.5-g_memmove.patch
deleted file mode 100644
index 52f4327..0000000
--- a/net-analyzer/wireshark/files/wireshark-1.10.5-g_memmove.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From 78f855e132513e2effda73f02913f743a5689d7c Mon Sep 17 00:00:00 2001
-From: Ben Chan <benchan@chromium.org>
-Date: Wed, 21 Jun 2017 22:37:50 -0700
-Subject: [PATCH] Replace deprecated g_memmove with memmove.
-
-This patch backports the following upstream patches that replace
-g_memmove with memmove as the g_memmove has been removed from newer glib
-versions:
-
-    From 9fba5a787ebce032b31105aad1d575258db0c568 Mon Sep 17 00:00:00 2001
-    From: Evan Huus <eapache@gmail.com>
-    Date: Fri, 20 Dec 2013 14:35:34 +0000
-    Subject: [PATCH] g_memmove has been removed in favour of normal memmove in the
-     latest glib versions, so do the same. Plain old memmove appears to be
-     specified in C90, so I'm not sure why they ever needed a compat function in
-     the first place...
-
-    svn path=/trunk/; revision=54295
-
-    From c38424311f573b631b4015ff587c8423ceaef57f Mon Sep 17 00:00:00 2001
-    From: Evan Huus <eapache@gmail.com>
-    Date: Fri, 20 Dec 2013 14:45:24 +0000
-    Subject: [PATCH] Replace one more g_memmove with memmove, add a cast to make
-     the Lua stuff compile.
-
-    svn path=/trunk/; revision=54296
----
----
- epan/dissectors/packet-ssl-utils.c | 4 ++--
- ui/export_object_smb.c             | 2 +-
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/epan/dissectors/packet-ssl-utils.c b/epan/dissectors/packet-ssl-utils.c
-index 1ab3c8d477..0f1ad44d1f 100644
---- a/epan/dissectors/packet-ssl-utils.c
-+++ b/epan/dissectors/packet-ssl-utils.c
-@@ -1633,7 +1633,7 @@ ssl_private_decrypt(guint len, guchar* encr_data, SSL_PRIVATE_KEY* pk)
-     ssl_debug_printf("pcry_private_decrypt: stripping %d bytes, decr_len %" G_GSIZE_MODIFIER "u\n",
-         rc, decr_len);
-     ssl_print_data("decrypted_unstrip_pre_master", decr_data_ptr, decr_len);
--    g_memmove(decr_data_ptr, &decr_data_ptr[rc], decr_len - rc);
-+    memmove(decr_data_ptr, &decr_data_ptr[rc], decr_len - rc);
-     decr_len -= rc;
- 
- out:
-@@ -1670,7 +1670,7 @@ out:
-     ssl_debug_printf("pcry_private_decrypt: stripping %d bytes, decr_len %d\n",
-         rc, decr_len);
-     ssl_print_data("decrypted_unstrip_pre_master", decr_data_ptr, decr_len);
--    g_memmove(decr_data_ptr, &decr_data_ptr[rc], decr_len - rc);
-+    memmove(decr_data_ptr, &decr_data_ptr[rc], decr_len - rc);
-     decr_len -= rc;
- #endif /* SSL_FAST */
-     gcry_mpi_release(text);
-diff --git a/ui/export_object_smb.c b/ui/export_object_smb.c
-index dec3de9eca..59ccaa2cb2 100644
---- a/ui/export_object_smb.c
-+++ b/ui/export_object_smb.c
-@@ -254,7 +254,7 @@ gpointer    dest_memory_addr;
- 	/* ...then, put the chunk of the file in the right place */
- 	if (!file->is_out_of_memory) {
- 		dest_memory_addr = entry->payload_data + chunk_offset;
--		g_memmove(dest_memory_addr, eo_info->payload_data, eo_info->payload_len);
-+		memmove(dest_memory_addr, eo_info->payload_data, eo_info->payload_len);
- 	}
- }
- 
--- 
-2.13.1.611.g7e3b11ae1-goog
-
diff --git a/net-analyzer/wireshark/files/wireshark-1.6.13-ldflags.patch b/net-analyzer/wireshark/files/wireshark-1.6.13-ldflags.patch
deleted file mode 100644
index 94554fd..0000000
--- a/net-analyzer/wireshark/files/wireshark-1.6.13-ldflags.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- a/acinclude.m4
-+++ b/acinclude.m4
-@@ -61,9 +61,9 @@
- # "-R" here.
- #
- AC_DEFUN([AC_WIRESHARK_ADD_DASH_L],
--[$1="$$1 -L$2"
--case "$host_os" in
-+[case "$host_os" in
-   solaris*)
-+    $1="$$1 -L$2"
-     $1="$$1 -R$2"
-   ;;
- esac
diff --git a/net-analyzer/wireshark/files/wireshark-2.6.0-redhat.patch b/net-analyzer/wireshark/files/wireshark-2.6.0-redhat.patch
new file mode 100644
index 0000000..fe17609
--- /dev/null
+++ b/net-analyzer/wireshark/files/wireshark-2.6.0-redhat.patch
@@ -0,0 +1,11 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -3019,7 +3019,7 @@
+ 
+ endif()
+ 
+-if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
++if(CMAKE_SYSTEM_NAME STREQUAL "Red Hat")
+ 	find_program(RPMBUILD_EXECUTABLE rpmbuild)
+ 	find_program(GIT_EXECUTABLE git)
+ endif()
diff --git a/net-analyzer/wireshark/files/wireshark-3.4.2-cmake-lua-version.patch b/net-analyzer/wireshark/files/wireshark-3.4.2-cmake-lua-version.patch
new file mode 100644
index 0000000..18f663b
--- /dev/null
+++ b/net-analyzer/wireshark/files/wireshark-3.4.2-cmake-lua-version.patch
@@ -0,0 +1,11 @@
+--- a/cmake/modules/FindLUA.cmake
++++ b/cmake/modules/FindLUA.cmake
+@@ -19,7 +19,7 @@
+ 
+ if(NOT WIN32)
+   find_package(PkgConfig)
+-  pkg_search_module(LUA lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51)
++  pkg_search_module(LUA lua)
+   if(NOT LUA_FOUND)
+       pkg_search_module(LUA "lua<=5.2.99")
+   endif()
diff --git a/net-analyzer/wireshark/files/wireshark-3.4.7-cmake-lemon-allow-builds-to-specify-a-different-comp.patch b/net-analyzer/wireshark/files/wireshark-3.4.7-cmake-lemon-allow-builds-to-specify-a-different-comp.patch
new file mode 100644
index 0000000..ceab33c
--- /dev/null
+++ b/net-analyzer/wireshark/files/wireshark-3.4.7-cmake-lemon-allow-builds-to-specify-a-different-comp.patch
@@ -0,0 +1,36 @@
+From 6431488bbd96ca7d3c3f19641cebe7ef8626074a Mon Sep 17 00:00:00 2001
+From: Adrian Ratiu <adrian.ratiu@collabora.com>
+Date: Thu, 26 Aug 2021 17:44:11 +0300
+Subject: [PATCH 2/2] cmake: lemon: allow builds to specify a different
+ compiler
+
+Lemon is a host build tool used to generate some syntax files.
+When cross-compiling, it needs to be built for the host machine
+so allow the build to configure a different compiler for it.
+
+The alternative would be to create a cmake spec for each
+toolchain and build lemon separately which is overkill for
+such a simple tool compared to just pointing it to $HOST_CC.
+---
+ tools/lemon/CMakeLists.txt | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/tools/lemon/CMakeLists.txt b/tools/lemon/CMakeLists.txt
+index af62d4596e..8742aa9fc9 100644
+--- a/tools/lemon/CMakeLists.txt
++++ b/tools/lemon/CMakeLists.txt
+@@ -9,6 +9,11 @@
+ 
+ add_executable(lemon lemon.c)
+ 
++if(DEFINED LEMON_C_COMPILER)
++	set(CMAKE_C_COMPILER "${LEMON_C_COMPILER}")
++	set(CMAKE_C_FLAGS "")
++endif()
++
+ # To keep lemon.c as close to upstream as possible, deliberately ignore
+ # some stylistic issues.
+ set(lemon_cflags)
+-- 
+2.32.0
+
diff --git a/net-analyzer/wireshark/files/wireshark-3.4.7-cmake-lemon-fix-path-to-internal-lemon-tool.patch b/net-analyzer/wireshark/files/wireshark-3.4.7-cmake-lemon-fix-path-to-internal-lemon-tool.patch
new file mode 100644
index 0000000..bb3cc48
--- /dev/null
+++ b/net-analyzer/wireshark/files/wireshark-3.4.7-cmake-lemon-fix-path-to-internal-lemon-tool.patch
@@ -0,0 +1,38 @@
+From 5ea34c43635b465b739bbad030e649b7f7b7f357 Mon Sep 17 00:00:00 2001
+From: Adrian Ratiu <adrian.ratiu@collabora.com>
+Date: Wed, 25 Aug 2021 20:13:03 +0300
+Subject: [PATCH 1/2] cmake: lemon: fix path to internal lemon tool
+
+Wireshark fails to build on my Gentoo/ChromeOS systems
+because the lemon command is not  properly specified or
+included in PATH, failing with:
+
+/bin/sh: lemon: command not found
+
+The relevant excerpt from build.ninja is:
+
+COMMAND = cd ..._build/plugins/epan/mate && lemon -T.../tools/lemon/lempar.c
+-d. .../plugins/epan/mate/mate_grammar.lemon
+
+By specifying the full path to "lemon" we ensure it is
+always searched for and found in the correct location.
+---
+ cmake/modules/UseLemon.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cmake/modules/UseLemon.cmake b/cmake/modules/UseLemon.cmake
+index 849ffc1c87..a3bf99fa33 100644
+--- a/cmake/modules/UseLemon.cmake
++++ b/cmake/modules/UseLemon.cmake
+@@ -13,7 +13,7 @@ MACRO(ADD_LEMON_FILES _source _generated)
+           # These files are generated as side-effect
+           ${_out}.h
+           ${_out}.out
+-         COMMAND lemon
++         COMMAND ${CMAKE_BINARY_DIR}/run/lemon
+            -T${_lemonpardir}/lempar.c
+            -d.
+            ${_in}
+-- 
+2.32.0
+
diff --git a/net-analyzer/wireshark/files/wireshark-9999-ui-needs-wiretap.patch b/net-analyzer/wireshark/files/wireshark-9999-ui-needs-wiretap.patch
new file mode 100644
index 0000000..c0bfc3a
--- /dev/null
+++ b/net-analyzer/wireshark/files/wireshark-9999-ui-needs-wiretap.patch
@@ -0,0 +1,11 @@
+--- a/ui/CMakeLists.txt
++++ b/ui/CMakeLists.txt
+@@ -76,6 +76,8 @@
+ 
+ add_library(ui STATIC ${UI_SRC})
+ 
++set(ui_LIBS wiretap)
++
+ set_target_properties(ui PROPERTIES
+ 	LINK_FLAGS "${WS_LINK_FLAGS}"
+ 	FOLDER "UI"
diff --git a/net-analyzer/wireshark/metadata.xml b/net-analyzer/wireshark/metadata.xml
index 02557c8..715f6af 100644
--- a/net-analyzer/wireshark/metadata.xml
+++ b/net-analyzer/wireshark/metadata.xml
@@ -1,41 +1,73 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-<herd>netmon</herd>
-<maintainer>
-	<email>zerochaos@gentoo.org</email>
-	<name>Rick Farina</name>
-	<description>Excessive wireshark user and enthusiast</description>
-</maintainer>
-<longdescription>
-	Wireshark is the world's foremost network protocol analyzer, and is the de
-	facto (and often de jure) standard across many industries and educational
-	institutions. Wireshark has a rich feature set which includes 1) deep
-	inspection of hundreds of protocols, with more being added all the time, 2)
-	live capture and offline analysis, 3) standard three-pane packet browser, 4)
-	captured network data can be browsed via a GUI, or via the TTY-mode TShark
-	utility, 5) the most powerful display filters in the industry, 6) rich VoIP
-	analysis, 7) read/write many different capture file formats: tcpdump
-	(libpcap), Catapult DCT2000, Cisco Secure IDS iplog, Microsoft Network
-	Monitor, Network General Sniffer® (compressed and uncompressed), Sniffer®
-	Pro, and NetXray®, Network Instruments Observer, Novell LANalyzer, RADCOM
-	WAN/LAN Analyzer, Shomiti/Finisar Surveyor, Tektronix K12xx, Visual Networks
-	Visual UpTime, WildPackets EtherPeek/TokenPeek/AiroPeek, and many others, 8)
-	capture files compressed with gzip can be decompressed on the fly, 9) live
-	data can be read from Ethernet, IEEE 802.11, PPP/HDLC, ATM, Bluetooth, USB,
-	Token Ring, Frame Relay, FDDI, and others, 10) decryption support for many
-	protocols, including IPsec, ISAKMP, Kerberos, SNMPv3, SSL/TLS, WEP, and
-	WPA/WPA2, 11) coloring rules can be applied to the packet list for quick,
-	intuitive analysis, 12) output can be exported to XML, PostScript®, CSV, or
-	plain text 
-</longdescription>
-<use>
-<flag name='adns'>Use the GNU <pkg>net-dns/c-ares</pkg> library to resolve DNS names</flag>
-<flag name='crypt'>Use <pkg>dev-libs/libgcrypt</pkg> to decrypt traffic</flag>
-<flag name='doc-pdf'>Build documentation in pdf format (US and a4 paper sizes)</flag>
-<flag name='libadns'>Use <pkg>net-lib/adns</pkg> (DEPRECATED) instead of <pkg>net-dns/c-ares</pkg> to resolve DNS names</flag>
-<flag name='netlink'>Use <pkg>dev-libs/libnl</pkg></flag>
-<flag name='pcap'>Use <pkg>net-libs/libpcap</pkg> for network packet capturing (build dumpcap, rawshark)</flag>
-<flag name='smi'>Use <pkg>net-libs/libsmi</pkg> to resolve numeric OIDs into human readable format</flag>
-</use>
+	<maintainer type="person">
+		<email>zlogene@gentoo.org</email>
+		<name>Mikle Kolyada</name>
+	</maintainer>
+	<maintainer type="person">
+		<email>bman@gentoo.org</email>
+		<name>Aaron Bauman</name>
+	</maintainer>
+	<maintainer type="person">
+		<email>sam@gentoo.org</email>
+		<name>Sam James</name>
+	</maintainer>
+	<longdescription>
+		Wireshark is the world's foremost network protocol analyzer, and is the de
+		facto (and often de jure) standard across many industries and educational
+		institutions. Wireshark has a rich feature set which includes 1) deep
+		inspection of hundreds of protocols, with more being added all the time, 2)
+		live capture and offline analysis, 3) standard three-pane packet browser, 4)
+		captured network data can be browsed via a GUI, or via the TTY-mode TShark
+		utility, 5) the most powerful display filters in the industry, 6) rich VoIP
+		analysis, 7) read/write many different capture file formats: tcpdump (libpcap),
+		Catapult DCT2000, Cisco Secure IDS iplog, Microsoft Network Monitor, Network
+		General Sniffer® (compressed and uncompressed), Sniffer® Pro, and NetXray®,
+		Network Instruments Observer, Novell LANalyzer, RADCOM WAN/LAN Analyzer,
+		Shomiti/Finisar Surveyor, Tektronix K12xx, Visual Networks Visual UpTime,
+		WildPackets EtherPeek/TokenPeek/AiroPeek, and many others, 8) capture files
+		compressed with gzip can be decompressed on the fly, 9) live data can be read
+		from Ethernet, IEEE 802.11, PPP/HDLC, ATM, Bluetooth, USB, Token Ring, Frame
+		Relay, FDDI, and others, 10) decryption support for many protocols, including
+		IPsec, ISAKMP, Kerberos, SNMPv3, SSL/TLS, WEP, and WPA/WPA2, 11) coloring rules
+		can be applied to the packet list for quick, intuitive analysis, 12) output can
+		be exported to XML, PostScript®, CSV, or plain text.
+	</longdescription>
+	<use>
+		<flag name="androiddump">Install androiddump, an extcap interface to capture from Android devices</flag>
+		<flag name="bcg729">Use <pkg>media-libs/bcg729</pkg> for G.729 codec support in RTP Player</flag>
+		<flag name="brotli">Use <pkg>app-arch/brotli</pkg> for compression/decompression</flag>
+		<flag name="capinfos">Install capinfos, to print information about capture files</flag>
+		<flag name="captype">Install captype, to print the file types of capture files</flag>
+		<flag name="ciscodump">Install ciscodump, extcap interface to capture from a remote Cisco router</flag>
+		<flag name="dftest">Install dftest, to display filter byte-code, for debugging dfilter routines</flag>
+		<flag name="dpauxmon">Install dpauxmon, an external capture interface (extcap) that captures DisplayPort AUX channel data from linux kernel drivers</flag>
+		<flag name="dumpcap">Install dumpcap, to dump network traffic from inside wireshark</flag>
+		<flag name="editcap">Install editcap, to edit and/or translate the format of capture files</flag>
+		<flag name="http2">Use <pkg>net-libs/nghttp2</pkg> for HTTP/2 support</flag>
+		<flag name="ilbc">Build with iLBC support in RTP Player using <pkg>media-libs/libilbc</pkg></flag>
+		<flag name="libxml2">Use <pkg>dev-libs/libxml2</pkg> for handling XML configuration in dissectors</flag>
+		<flag name="lto">Enable link time optimization</flag>
+		<flag name="maxminddb">Use <pkg>dev-libs/libmaxminddb</pkg> for IP address geolocation</flag>
+		<flag name="mergecap">Install mergecap, to merge two or more capture files into one</flag>
+		<flag name="minizip">Build with zip file compression support</flag>
+		<flag name="netlink">Use <pkg>dev-libs/libnl</pkg></flag>
+		<flag name="pcap">Use <pkg>net-libs/libpcap</pkg> for network packet capturing (build dumpcap, rawshark)</flag>
+		<flag name="plugin-ifdemo">Install plugin interface demo</flag>
+		<flag name="plugins">Install plugins</flag>
+		<flag name="randpkt">Install randpkt, a utility for creating pcap trace files full of random packets</flag>
+		<flag name="randpktdump">Install randpktdump, an extcap interface to provide access to the random packet generator (randpkt)</flag>
+		<flag name="reordercap">Install reordercap, to reorder input file by timestamp into output file</flag>
+		<flag name="sbc">Use <pkg>media-libs/sbc</pkg> for playing back SBC encoded packets</flag>
+		<flag name="sdjournal">Install sdjournal, an extcap that captures systemd journal entries</flag>
+		<flag name="sharkd">Install sharkd, the daemon variant of wireshark</flag>
+		<flag name="smi">Use <pkg>net-libs/libsmi</pkg> to resolve numeric OIDs into human readable format</flag>
+		<flag name="spandsp">Use <pkg>media-libs/spandsp</pkg> for for G.722 and G.726 codec support in the RTP Player</flag>
+		<flag name="sshdump">Install sshdump, an extcap interface to capture from a remote host through SSH</flag>
+		<flag name="text2pcap">Install text2pcap, to generate a capture file from an ASCII hexdump of packets</flag>
+		<flag name="tfshark">Install tfshark, a terminal-based version of the FileShark capability</flag>
+		<flag name="tshark">Install tshark, to dump and analyzer network traffic from the command line</flag>
+		<flag name="udpdump">Install udpdump, to get packets exported from a source (like a network device or a GSMTAP producer) that are dumped to a pcap file</flag>
+	</use>
 </pkgmetadata>
diff --git a/net-analyzer/wireshark/wireshark-1.10.5-r7.ebuild b/net-analyzer/wireshark/wireshark-1.10.5-r7.ebuild
deleted file mode 120000
index 6e3f75f..0000000
--- a/net-analyzer/wireshark/wireshark-1.10.5-r7.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-wireshark-1.10.5.ebuild
\ No newline at end of file
diff --git a/net-analyzer/wireshark/wireshark-1.10.5.ebuild b/net-analyzer/wireshark/wireshark-1.10.5.ebuild
deleted file mode 100644
index b408f6e..0000000
--- a/net-analyzer/wireshark/wireshark-1.10.5.ebuild
+++ /dev/null
@@ -1,207 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-analyzer/wireshark/wireshark-1.10.5.ebuild,v 1.11 2014/03/01 22:26:46 mgorny Exp $
-
-EAPI=5
-inherit autotools eutils user
-
-[[ -n ${PV#*_rc} && ${PV#*_rc} != ${PV} ]] && MY_P=${PN}-${PV/_} || MY_P=${P}
-DESCRIPTION="A network protocol analyzer formerly known as ethereal"
-HOMEPAGE="http://www.wireshark.org/"
-SRC_URI="http://www.wireshark.org/download/src/all-versions/${MY_P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0/${PV}"
-KEYWORDS="*"
-IUSE="
-	adns +caps crypt doc doc-pdf geoip +gtk2 gtk3 ipv6 kerberos libadns lua
-	+netlink +pcap portaudio qt4 selinux smi ssl zlib
-"
-REQUIRED_USE="
-	?? ( gtk2 gtk3 qt4 )
-	ssl? ( crypt )
-"
-
-GTK_COMMON_DEPEND="
-	x11-libs/gdk-pixbuf
-	x11-libs/pango
-	x11-misc/xdg-utils
-"
-RDEPEND="
-	>=dev-libs/glib-2.14:2
-	netlink? ( dev-libs/libnl )
-	adns? ( !libadns? ( >=net-dns/c-ares-1.5 ) )
-	crypt? ( dev-libs/libgcrypt:0= )
-	caps? ( sys-libs/libcap )
-	geoip? ( dev-libs/geoip )
-	gtk2? (
-		${GTK_COMMON_DEPEND}
-		>=x11-libs/gtk+-2.4.0:2
-	)
-	gtk3? (
-		${GTK_COMMON_DEPEND}
-		x11-libs/gtk+:3
-	)
-	kerberos? ( virtual/krb5 )
-	libadns? ( net-libs/adns )
-	lua? ( >=dev-lang/lua-5.1 )
-	pcap? ( net-libs/libpcap[-netlink] )
-	portaudio? ( media-libs/portaudio )
-	qt4? (
-		dev-qt/qtcore:4
-		dev-qt/qtgui:4
-		x11-misc/xdg-utils
-		)
-	selinux? ( sec-policy/selinux-wireshark )
-	smi? ( net-libs/libsmi )
-	ssl? ( net-libs/gnutls:= )
-	zlib? ( sys-libs/zlib !=sys-libs/zlib-1.2.4 )
-"
-
-DEPEND="
-	${RDEPEND}
-	doc? (
-		app-doc/doxygen
-		app-text/asciidoc
-		dev-libs/libxml2
-		dev-libs/libxslt
-		doc-pdf? ( dev-java/fop )
-		www-client/lynx
-	)
-	sys-devel/bison
-	sys-devel/flex
-	virtual/pkgconfig
-"
-
-S=${WORKDIR}/${MY_P}
-
-src_prepare() {
-	epatch \
-		"${FILESDIR}"/${PN}-1.6.13-ldflags.patch \
-		"${FILESDIR}"/${PN}-1.10.1-oldlibs.patch \
-		"${FILESDIR}"/${PN}-1.10.4-gtk-deprecated-warnings.patch \
-		"${FILESDIR}"/${PN}-1.10.5-cross-compile.patch \
-		"${FILESDIR}"/${PN}-1.10.5-g_memmove.patch
-
-	epatch_user
-
-	eautoreconf
-
-	# Fix hard-coded cross-compile flag that enables dladdr.
-	# https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9912
-	sed -i '/ac_cv_dladdr_finds_executable_path=yes/s:=yes:=no:' configure
-}
-
-src_configure() {
-	local myconf
-
-	if use adns; then
-		if use libadns; then
-			myconf+=( "--with-adns --without-c-ares" )
-		else
-			myconf+=( "--without-adns --with-c-ares" )
-		fi
-	else
-		if use libadns; then
-			myconf+=( "--with-adns --without-c-ares" )
-		else
-			myconf+=( "--without-adns --without-c-ares" )
-		fi
-	fi
-
-	# Workaround bug #213705. If krb5-config --libs has -lcrypto then pass
-	# --with-ssl to ./configure. (Mimics code from acinclude.m4).
-	if use kerberos; then
-		case $(krb5-config --libs) in
-			*-lcrypto*)
-				ewarn "Kerberos was built with ssl support: linkage with openssl is enabled."
-				ewarn "Note there are annoying license incompatibilities between the OpenSSL"
-				ewarn "license and the GPL, so do your check before distributing such package."
-				myconf+=( "--with-ssl" )
-				;;
-		esac
-	fi
-
-	# Enable wireshark binary with any supported GUI toolkit (bug #473188)
-	if use gtk2 || use gtk3 || use qt4 ; then
-		myconf+=( "--enable-wireshark" )
-	else
-		myconf+=( "--disable-wireshark" )
-	fi
-
-	# Hack around inability to disable doxygen/fop doc generation
-	use doc || export ac_cv_prog_HAVE_DOXYGEN=false
-	use doc-pdf || export ac_cv_prog_HAVE_FOP=false
-
-	# dumpcap requires libcap, setuid-install requires dumpcap
-	# --disable-profile-build bugs #215806, #292991, #479602
-	econf \
-		$(use pcap && use_enable !caps setuid-install) \
-		$(use pcap && use_enable caps setcap-install) \
-		$(use_enable ipv6) \
-		$(use_with caps libcap) \
-		$(use_with crypt gcrypt) \
-		$(use_with geoip) \
-		$(use_with kerberos krb5) \
-		$(use_with lua) \
-		$(use_with netlink libnl) \
-		$(use_with pcap dumpcap-group wireshark) \
-		$(use_with pcap) \
-		$(use_with portaudio) \
-		$(use_with qt4 qt) \
-		$(use_with smi libsmi) \
-		$(use_with ssl gnutls) \
-		$(use_with zlib) \
-		$(usex gtk3 --with-gtk3=yes --with-gtk3=no) \
-		--disable-extra-gcc-checks \
-		--disable-profile-build \
-		--disable-usr-local \
-		--sysconfdir="${EPREFIX}"/etc/wireshark \
-		${myconf[@]}
-}
-
-src_compile() {
-	default
-	use doc && emake -j1 -C docbook
-}
-
-src_install() {
-	default
-	if use doc; then
-		dohtml -r docbook/{release-notes.html,ws{d,u}g_html{,_chunked}}
-		if use doc-pdf; then
-			insinto /usr/share/doc/${PF}/pdf/
-			doins docbook/{{developer,user}-guide,release-notes}-{a4,us}.pdf
-		fi
-	fi
-
-	# FAQ is not required as is installed from help/faq.txt
-	dodoc AUTHORS ChangeLog NEWS README{,.bsd,.linux,.macos,.vmware} \
-		doc/{randpkt.txt,README*}
-
-	# install headers
-	local wsheader
-	for wsheader in $( echo $(< debian/wireshark-dev.header-files ) ); do
-		insinto /usr/include/wireshark/$( dirname ${wsheader} )
-		doins ${wsheader}
-	done
-
-	#with the above this really shouldn't be needed, but things may be looking in wiretap/ instead of wireshark/wiretap/
-	insinto /usr/include/wiretap
-	doins wiretap/wtap.h
-
-	if use gtk2 || use gtk3 || use qt4; then
-		local c d
-		for c in hi lo; do
-			for d in 16 32 48; do
-				insinto /usr/share/icons/${c}color/${d}x${d}/apps
-				newins image/${c}${d}-app-wireshark.png wireshark.png
-			done
-		done
-		domenu wireshark.desktop
-	fi
-
-	use pcap && chmod o-x "${ED}"/usr/bin/dumpcap #357237
-
-	prune_libtool_files
-}
diff --git a/net-analyzer/wireshark/wireshark-3.4.7-r2.ebuild b/net-analyzer/wireshark/wireshark-3.4.7-r2.ebuild
new file mode 100644
index 0000000..5bfdbcf
--- /dev/null
+++ b/net-analyzer/wireshark/wireshark-3.4.7-r2.ebuild
@@ -0,0 +1,275 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9} )
+
+inherit fcaps flag-o-matic python-any-r1 qmake-utils xdg-utils cmake
+
+DESCRIPTION="A network protocol analyzer formerly known as ethereal"
+HOMEPAGE="https://www.wireshark.org/"
+
+if [[ ${PV} == *9999* ]] ; then
+	EGIT_REPO_URI="https://gitlab.com/wireshark/wireshark"
+	inherit git-r3
+else
+	SRC_URI="https://www.wireshark.org/download/src/all-versions/${P/_/}.tar.xz"
+	S="${WORKDIR}/${P/_/}"
+
+	KEYWORDS="*"
+fi
+
+LICENSE="GPL-2"
+SLOT="0/${PV}"
+IUSE="androiddump bcg729 brotli +capinfos +captype ciscodump +dftest doc dpauxmon"
+IUSE+=" +dumpcap +editcap http2 ilbc kerberos libxml2 lto lua lz4 maxminddb"
+IUSE+=" +mergecap minizip +netlink opus +plugins plugin-ifdemo +pcap qt5 +randpkt"
+IUSE+=" +randpktdump +reordercap sbc selinux +sharkd smi snappy spandsp sshdump ssl"
+IUSE+=" sdjournal test +text2pcap tfshark +tshark +udpdump zlib +zstd"
+
+CDEPEND="
+	>=dev-libs/glib-2.32:2
+	>=net-dns/c-ares-1.5:=
+	dev-libs/libgcrypt:=
+	bcg729? ( media-libs/bcg729 )
+	brotli? ( app-arch/brotli:= )
+	ciscodump? ( >=net-libs/libssh-0.6 )
+	filecaps? ( sys-libs/libcap )
+	http2? ( net-libs/nghttp2:= )
+	ilbc? ( media-libs/libilbc )
+	kerberos? ( virtual/krb5 )
+	libxml2? ( dev-libs/libxml2 )
+	lz4? ( app-arch/lz4:= )
+	maxminddb? ( dev-libs/libmaxminddb:= )
+	minizip? ( sys-libs/zlib[minizip] )
+	netlink? ( dev-libs/libnl:3 )
+	opus? ( media-libs/opus )
+	pcap? ( net-libs/libpcap )
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtmultimedia:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtwidgets:5
+		x11-misc/xdg-utils
+	)
+	sbc? ( media-libs/sbc )
+	sdjournal? ( sys-apps/systemd )
+	smi? ( net-libs/libsmi )
+	snappy? ( app-arch/snappy )
+	spandsp? ( media-libs/spandsp )
+	sshdump? ( >=net-libs/libssh-0.6 )
+	ssl? ( net-libs/gnutls:= )
+	zlib? ( sys-libs/zlib )
+	zstd? ( app-arch/zstd:= )
+"
+# We need perl for `pod2html`. The rest of the perl stuff is to block older
+# and broken installs. #455122
+DEPEND="
+	${CDEPEND}
+	${PYTHON_DEPS}
+"
+BDEPEND="
+	dev-lang/perl
+	sys-devel/bison
+	sys-devel/flex
+	virtual/pkgconfig
+	doc? (
+		app-doc/doxygen
+		dev-ruby/asciidoctor
+	)
+	qt5? (
+		dev-qt/linguist-tools:5
+	)
+	test? (
+		dev-python/pytest
+	)
+"
+RDEPEND="
+	${CDEPEND}
+	qt5? ( virtual/freedesktop-icon-theme )
+	selinux? ( sec-policy/selinux-wireshark )
+"
+REQUIRED_USE="
+	plugin-ifdemo? ( plugins )
+"
+
+RESTRICT="test"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-2.6.0-redhat.patch
+	"${FILESDIR}"/${PN}-3.4.2-cmake-lua-version.patch
+	"${FILESDIR}"/${PN}-3.4.7-cmake-lemon-allow-builds-to-specify-a-different-comp.patch
+	"${FILESDIR}"/${PN}-3.4.7-cmake-lemon-fix-path-to-internal-lemon-tool.patch
+	"${FILESDIR}"/${PN}-9999-ui-needs-wiretap.patch
+)
+
+pkg_setup() {
+	use lua && lua-single_pkg_setup
+}
+
+src_configure() {
+	local mycmakeargs
+
+	#printenv
+	#echo CFLAGS_host is : ${CFLAGS_host}
+	echo
+	for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+		einfo "$(printf '%10s' ${x}:) ${!x}"
+	done
+	echo
+	#exit 1
+	#cros_use_gcc
+
+	# Workaround bug #213705. If krb5-config --libs has -lcrypto then pass
+	# --with-ssl to ./configure. (Mimics code from acinclude.m4).
+	if use kerberos; then
+		case $(krb5-config --libs) in
+			*-lcrypto*)
+				ewarn "Kerberos was built with ssl support: linkage with openssl is enabled."
+				ewarn "Note there are annoying license incompatibilities between the OpenSSL"
+				ewarn "license and the GPL, so do your check before distributing such package."
+				mycmakeargs+=( -DENABLE_GNUTLS=$(usex ssl) )
+				;;
+		esac
+	fi
+
+	if use qt5; then
+		export QT_MIN_VERSION=5.3.0
+		append-cxxflags -fPIC -DPIC
+	fi
+
+	python_setup
+
+	mycmakeargs+=(
+		$(use androiddump && use pcap && echo -DEXTCAP_ANDROIDDUMP_LIBPCAP=yes)
+		$(usex qt5 LRELEASE=$(qt5_get_bindir)/lrelease '')
+		$(usex qt5 MOC=$(qt5_get_bindir)/moc '')
+		$(usex qt5 RCC=$(qt5_get_bindir)/rcc '')
+		$(usex qt5 UIC=$(qt5_get_bindir)/uic '')
+		-DBUILD_androiddump=$(usex androiddump)
+		-DBUILD_capinfos=$(usex capinfos)
+		-DBUILD_captype=$(usex captype)
+		-DBUILD_ciscodump=$(usex ciscodump)
+		-DBUILD_dftest=$(usex dftest)
+		-DBUILD_dpauxmon=$(usex dpauxmon)
+		-DBUILD_dumpcap=$(usex dumpcap)
+		-DBUILD_editcap=$(usex editcap)
+		-DBUILD_mergecap=$(usex mergecap)
+		-DBUILD_mmdbresolve=$(usex maxminddb)
+		-DBUILD_randpkt=$(usex randpkt)
+		-DBUILD_randpktdump=$(usex randpktdump)
+		-DBUILD_reordercap=$(usex reordercap)
+		-DBUILD_sdjournal=$(usex sdjournal)
+		-DBUILD_sharkd=$(usex sharkd)
+		-DBUILD_sshdump=$(usex sshdump)
+		-DBUILD_text2pcap=$(usex text2pcap)
+		-DBUILD_tfshark=$(usex tfshark)
+		-DBUILD_tshark=$(usex tshark)
+		-DBUILD_udpdump=$(usex udpdump)
+		-DBUILD_wireshark=$(usex qt5)
+		-DDISABLE_WERROR=yes
+		-DENABLE_BCG729=$(usex bcg729)
+		-DENABLE_BROTLI=$(usex brotli)
+		-DENABLE_CAP=$(usex filecaps caps)
+		-DENABLE_GNUTLS=$(usex ssl)
+		-DENABLE_ILBC=$(usex ilbc)
+		-DENABLE_KERBEROS=$(usex kerberos)
+		-DENABLE_LIBXML2=$(usex libxml2)
+		-DENABLE_LTO=$(usex lto)
+		-DENABLE_LUA=$(usex lua)
+		-DENABLE_LZ4=$(usex lz4)
+		-DENABLE_MINIZIP=$(usex minizip)
+		-DENABLE_NETLINK=$(usex netlink)
+		-DENABLE_NGHTTP2=$(usex http2)
+		-DENABLE_OPUS=$(usex opus)
+		-DENABLE_PCAP=$(usex pcap)
+		-DENABLE_PLUGINS=$(usex plugins)
+		-DENABLE_PLUGIN_IFDEMO=$(usex plugin-ifdemo)
+		-DENABLE_SBC=$(usex sbc)
+		-DENABLE_SMI=$(usex smi)
+		-DENABLE_SNAPPY=$(usex snappy)
+		-DENABLE_SPANDSP=$(usex spandsp)
+		-DENABLE_ZLIB=$(usex zlib)
+		-DENABLE_ZSTD=$(usex zstd)
+		-DLEMON_C_COMPILER="${BUILD_CC}"
+	)
+
+	cmake_src_configure
+}
+
+src_test() {
+	cmake_build test-programs
+
+	myctestargs=(
+		--disable-capture
+		--skip-missing-programs=all
+		--verbose
+	)
+
+	cmake_src_test
+}
+
+src_install() {
+	cmake_src_install
+
+	# FAQ is not required as is installed from help/faq.txt
+	dodoc AUTHORS ChangeLog NEWS README* doc/randpkt.txt doc/README*
+
+	# install headers
+	insinto /usr/include/wireshark
+	doins ws_diag_control.h ws_symbol_export.h \
+		"${BUILD_DIR}"/config.h "${BUILD_DIR}"/version.h
+
+	local dir dirs=(
+		epan
+		epan/crypt
+		epan/dfilter
+		epan/dissectors
+		epan/ftypes
+		epan/wmem
+		wiretap
+		wsutil
+	)
+
+	for dir in "${dirs[@]}" ; do
+		insinto /usr/include/wireshark/${dir}
+		doins ${dir}/*.h
+	done
+
+	#with the above this really shouldn't be needed, but things may be looking
+	# in wiretap/ instead of wireshark/wiretap/
+	insinto /usr/include/wiretap
+	doins wiretap/wtap.h
+
+	if use qt5; then
+		local s
+		for s in 16 32 48 64 128 256 512 1024; do
+			insinto /usr/share/icons/hicolor/${s}x${s}/apps
+			newins image/wsicon${s}.png wireshark.png
+		done
+		for s in 16 24 32 48 64 128 256 ; do
+			insinto /usr/share/icons/hicolor/${s}x${s}/mimetypes
+			newins image/WiresharkDoc-${s}.png application-vnd.tcpdump.pcap.png
+		done
+	fi
+
+	if [[ -d "${ED}"/usr/share/appdata ]]; then
+		rm -r "${ED}"/usr/share/appdata || die
+	fi
+}
+
+pkg_postinst() {
+	xdg_desktop_database_update
+	xdg_icon_cache_update
+	xdg_mimeinfo_database_update
+
+	use pcap && chmod o-x "${ED}"/usr/bin/dumpcap #357237
+}
+
+pkg_postrm() {
+	xdg_desktop_database_update
+	xdg_icon_cache_update
+	xdg_mimeinfo_database_update
+}
diff --git a/net-dns/avahi-daemon/avahi-daemon-0.0.1-r10.ebuild b/net-dns/avahi-daemon/avahi-daemon-0.0.1-r11.ebuild
similarity index 100%
rename from net-dns/avahi-daemon/avahi-daemon-0.0.1-r10.ebuild
rename to net-dns/avahi-daemon/avahi-daemon-0.0.1-r11.ebuild
diff --git a/net-dns/avahi-daemon/files/init/auto.conf b/net-dns/avahi-daemon/files/init/auto.conf
index 83d92d9..93a0927 100644
--- a/net-dns/avahi-daemon/files/init/auto.conf
+++ b/net-dns/avahi-daemon/files/init/auto.conf
@@ -19,6 +19,7 @@
 end script
 
 script
+  # -N: enter a new cgroup namespace.
   # -r: remount namespace to /proc inside the mini-jail
   #     (read only and implies -v).
   # -v: forces process to enter into unique namespace with their own isolated
@@ -29,7 +30,7 @@
   # -b /run/dbus: We need access to dbus.
   # -b /dev/log: We need access to syslog.
   # -T static: static mode to lockdown pre-exec.
-  set -- /sbin/minijail0 -rvi --uts \
+  set -- /sbin/minijail0 -Nrvi --uts \
     -T static \
     --profile=minimalistic-mountns \
     -k '/var,/var,tmpfs,MS_NODEV|MS_NOEXEC|MS_NOSUID,mode=755,size=10M' \
diff --git a/net-dns/avahi-daemon/files/init/manual.conf b/net-dns/avahi-daemon/files/init/manual.conf
index 712421f..6b9c125 100644
--- a/net-dns/avahi-daemon/files/init/manual.conf
+++ b/net-dns/avahi-daemon/files/init/manual.conf
@@ -21,6 +21,7 @@
 end script
 
 script
+  # -N: enter a new cgroup namespace.
   # -r: remount namespace to /proc inside the mini-jail
   #     (read only and implies -v).
   # -v: forces process to enter into unique namespace with their own isolated
@@ -32,7 +33,7 @@
   # -b /dev/log: We need access to syslog.
   # -T static: static mode to lockdown pre-exec.
   # TODO: When we upgrade to avahi-0.7, change the /var/run path to /run.
-  set -- /sbin/minijail0 -rvi --uts \
+  set -- /sbin/minijail0 -Nrvi --uts \
     -T static \
     --profile=minimalistic-mountns \
     -k '/var,/var,tmpfs,MS_NODEV|MS_NOEXEC|MS_NOSUID,mode=755,size=10M' \
diff --git a/net-dns/avahi/avahi-0.8-r2.ebuild b/net-dns/avahi/avahi-0.8-r4.ebuild
similarity index 100%
rename from net-dns/avahi/avahi-0.8-r2.ebuild
rename to net-dns/avahi/avahi-0.8-r4.ebuild
diff --git a/net-dns/avahi/avahi-0.8.ebuild b/net-dns/avahi/avahi-0.8.ebuild
index c012f2e..60199e9 100644
--- a/net-dns/avahi/avahi-0.8.ebuild
+++ b/net-dns/avahi/avahi-0.8.ebuild
@@ -194,6 +194,7 @@
 		doins avahi.devhelp
 	fi
 
+	# fuzzer_component_id is unknown/unlisted
 	fuzzer_install "${FILESDIR}/OWNERS" "examples/.libs/recv_fuzzer"
 
 	# The build system creates an empty "/run" directory, so we clean it up here
diff --git a/net-dns/avahi/files/avahi-0.7-fuzzer.patch b/net-dns/avahi/files/avahi-0.7-fuzzer.patch
index f3f64c1..7d42fc2 100644
--- a/net-dns/avahi/files/avahi-0.7-fuzzer.patch
+++ b/net-dns/avahi/files/avahi-0.7-fuzzer.patch
@@ -254,7 +254,7 @@
 index 0000000..0d626e7
 --- /dev/null
 +++ b/examples/recv_fuzzer.c
-@@ -0,0 +1,200 @@
+@@ -0,0 +1,198 @@
 +#include <assert.h>
 +#include <errno.h>
 +#include <stdio.h>
@@ -330,13 +330,13 @@
 +    destAddr.sin_addr.s_addr = inet_addr(AVAHI_IPV4_MCAST_GROUP);
 +
 +    if (sock < 0) {
-+        avahi_log_warn("socket() failed: %s", strerror(errno));
-+        exit(1);
++        avahi_log_warn("socket() IPv4 failed: %s", strerror(errno));
++        return;
 +    }
 +    reuseaddr(sock);
 +
 +    if (bind(sock, (struct sockaddr *) &local, sizeof(local)) < 0) {
-+        avahi_log_warn("socket() failed: %s", strerror(errno));
++        avahi_log_warn("bind() IPv4 failed: %s", strerror(errno));
 +        return;
 +    }
 +
@@ -346,8 +346,7 @@
 +
 +    ssize_t s;
 +    if ((s = sendto(sock, data, size, 0, (struct sockaddr *) &destAddr, sizeof(destAddr))) < 0) {
-+        avahi_log_warn("socket() failed: %s", strerror(errno));
-+        exit(1);
++        avahi_log_warn("sendto() IPv4 failed: %s", strerror(errno));
 +    }
 +
 +    close(sock);
@@ -375,20 +374,19 @@
 +    inet_pton(AF_INET6, AVAHI_IPV6_MCAST_GROUP, &destAddr.sin6_addr);
 +
 +    if (sock < 0) {
-+        avahi_log_warn("socket() failed: %s", strerror(errno));
-+        exit(1);
++        avahi_log_warn("socket() IPv6 failed: %s", strerror(errno));
++        return;
 +    }
 +
 +    reuseaddr(sock);
 +    if (bind(sock, (struct sockaddr *) &local, sizeof(local)) < 0) {
-+        avahi_log_warn("socket() failed: %s", strerror(errno));
++        avahi_log_warn("bind() IPv6 failed: %s", strerror(errno));
 +        return;
 +    }
 +
 +    ssize_t s;
 +    if ((s = sendto(sock, data, size, 0, (struct sockaddr *) &destAddr, sizeof(destAddr))) < 0) {
-+        avahi_log_warn("socket() failed: %s", strerror(errno));
-+        exit(1);
++        avahi_log_warn("sendto() IPv6 failed: %s", strerror(errno));
 +    }
 +
 +    close(sock);
diff --git a/net-dns/dnsmasq/Manifest b/net-dns/dnsmasq/Manifest
index 72772cd..8a4d81c 100644
--- a/net-dns/dnsmasq/Manifest
+++ b/net-dns/dnsmasq/Manifest
@@ -1 +1 @@
-DIST dnsmasq-2.78.tar.xz 489172 SHA256 89949f438c74b0c7543f06689c319484bd126cc4b1f8c745c742ab397681252b SHA512 9b79b84e5a768d52f90f6335ccef2c404ecd7a13e78e49f4cd0755fffc6cf34d0dc96ad4c72cad1dab3c5743a8d0d789b3e9b6e625b03c5675bb898ca61a698b WHIRLPOOL 3fdde3511c39b5f42a8166936576b60f7114a54388e317136ef9c4b5770c02106706dc0612361b18d25fa16a340e613c98aa78973e2dc038dc93f2a664d27606
+DIST dnsmasq-2.85.tar.xz 518316 BLAKE2B b7c081132c65d67b65f797bdbc603930c1509717bc1b5209b12f72fa3f01b4bae2f26a5387f95ef20317cd3d60e097c0b8bef5e019a35013f3ed2acce9fe9e89 SHA512 8beefe76b46f7d561f40d0900ba68b260a199cb62ab5b653746e3a1104c04fb8899b9e7a160a1be4fe8782bfb1607b556e9ffb9c25c4e99653e4bc74fcc03b09
diff --git a/net-dns/dnsmasq/dnsmasq-2.78-r4.ebuild b/net-dns/dnsmasq/dnsmasq-2.78-r4.ebuild
deleted file mode 120000
index 844f383..0000000
--- a/net-dns/dnsmasq/dnsmasq-2.78-r4.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-dnsmasq-2.78.ebuild
\ No newline at end of file
diff --git a/net-dns/dnsmasq/dnsmasq-2.78.ebuild b/net-dns/dnsmasq/dnsmasq-2.78.ebuild
deleted file mode 100644
index c681c7b..0000000
--- a/net-dns/dnsmasq/dnsmasq-2.78.ebuild
+++ /dev/null
@@ -1,206 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils toolchain-funcs flag-o-matic user systemd
-
-DESCRIPTION="Small forwarding DNS server"
-HOMEPAGE="http://www.thekelleys.org.uk/dnsmasq/doc.html"
-SRC_URI="http://www.thekelleys.org.uk/dnsmasq/${P}.tar.xz"
-
-LICENSE="|| ( GPL-2 GPL-3 )"
-SLOT="0"
-KEYWORDS="*"
-IUSE="auth-dns conntrack dbus +dhcp dhcp-tools dnssec +id idn libidn2 +inotify"
-IUSE+=" ipv6 lua nls script selinux static tftp"
-IUSE+=" dhcp-options"
-
-DM_LINGUAS=(de es fi fr id it no pl pt_BR ro)
-
-for dm_lingua in "${DM_LINGUAS[@]}"; do
-	IUSE+=" linguas_${dm_lingua}"
-done
-
-CDEPEND="dbus? ( sys-apps/dbus )
-	idn? (
-		!libidn2? ( net-dns/libidn )
-		libidn2? ( >=net-dns/libidn2-2.0 )
-	)
-	lua? ( dev-lang/lua:* )
-	conntrack? ( net-libs/libnetfilter_conntrack )
-	nls? ( sys-devel/gettext )
-"
-
-DEPEND="${CDEPEND}
-	app-arch/xz-utils
-	dnssec? (
-		dev-libs/nettle[gmp]
-		static? ( dev-libs/nettle[static-libs(+)] )
-	)
-	virtual/pkgconfig
-"
-
-RDEPEND="${CDEPEND}
-	dnssec? (
-		!static? (
-			dev-libs/nettle[gmp]
-		)
-	)
-	selinux? ( sec-policy/selinux-dnsmasq )
-"
-
-REQUIRED_USE="dhcp-tools? ( dhcp )
-	lua? ( script )
-	libidn2? ( idn )"
-
-use_have() {
-	local useflag no_only uword
-	if [[ $1 == '-n' ]]; then
-		no_only=1
-		shift
-	fi
-	useflag="${1}"
-	shift
-
-	uword="${1:-${useflag}}"
-	shift
-
-	while [[ ${uword} ]]; do
-		uword="${uword^^}"
-
-		if ! use "${useflag}"; then
-			echo -n " -DNO_${uword}"
-		elif [[ -z "${no_only}" ]]; then
-			echo -n " -DHAVE_${uword}"
-		fi
-		uword="${1}"
-		shift
-	done
-}
-
-pkg_pretend() {
-	if use static; then
-		einfo "Only sys-libs/gmp and dev-libs/nettle are statically linked."
-		use dnssec || einfo "Thus, ${P}[!dnssec,static] makes no sense; the static USE flag is ignored."
-	fi
-}
-
-pkg_setup() {
-	enewgroup dnsmasq
-	enewuser dnsmasq
-}
-
-src_prepare() {
-	default
-
-	if use dhcp-options; then
-		epatch "${FILESDIR}"/${PN}-2.72-Write-DHCP-request-options-to-lease-file.patch
-	fi
-
-	epatch "${FILESDIR}"/${PN}-2.78-Alter-DHCP-address-selection-after-DECLINE-in-consec-addr.patch
-	epatch "${FILESDIR}"/${PN}-2.78-Fix-Alter-DHCP-address-selection-after-DECLINE-in-consec-addr.patch
-	epatch "${FILESDIR}"/${PN}-2.78-cve-2019-14834.patch
-
-	sed -i -r 's:lua5.[0-9]+:lua:' Makefile
-	sed -i "s:%%PREFIX%%:${EPREFIX}/usr:" dnsmasq.conf.example
-}
-
-src_configure() {
-	COPTS="$(use_have -n auth-dns auth)"
-	COPTS+="$(use_have conntrack)"
-	COPTS+="$(use_have dbus)"
-	COPTS+="$(use libidn2 || use_have idn)"
-	COPTS+="$(use_have libidn2)"
-	COPTS+="$(use_have -n inotify)"
-	COPTS+="$(use_have -n dhcp dhcp dhcp6)"
-	COPTS+="$(use_have -n ipv6 ipv6 dhcp6)"
-	COPTS+="$(use_have -n id id)"
-	COPTS+="$(use_have lua luascript)"
-	COPTS+="$(use_have -n script)"
-	COPTS+="$(use_have -n tftp)"
-	COPTS+="$(use_have dnssec)"
-	COPTS+="$(use_have static dnssec_static)"
-}
-
-src_compile() {
-	emake \
-		PREFIX=/usr \
-		MANDIR=/usr/share/man \
-		CC="$(tc-getCC)" \
-		PKG_CONFIG="$(tc-getPKG_CONFIG)" \
-		CFLAGS="${CFLAGS}" \
-		LDFLAGS="${LDFLAGS}" \
-		COPTS="${COPTS}" \
-		CONFFILE="/etc/${PN}.conf" \
-		all$(use nls && echo "-i18n")
-
-	use dhcp-tools && emake -C contrib/lease-tools \
-		PREFIX=/usr \
-		MANDIR=/usr/share/man \
-		CC="$(tc-getCC)" \
-		PKG_CONFIG="$(tc-getPKG_CONFIG)" \
-		CFLAGS="${CFLAGS}" \
-		LDFLAGS="${LDFLAGS}" \
-		all
-}
-
-src_install() {
-	local lingua puid
-	emake \
-		PREFIX=/usr \
-		MANDIR=/usr/share/man \
-		COPTS="${COPTS}" \
-		DESTDIR="${D}" \
-		install$(use nls && echo "-i18n")
-
-	for lingua in "${DM_LINGUAS[@]}"; do
-		use linguas_${lingua} || rm -rf "${D}"/usr/share/locale/${lingua}
-	done
-	[[ -d "${D}"/usr/share/locale/ ]] && rmdir --ignore-fail-on-non-empty "${D}"/usr/share/locale/
-
-	dodoc CHANGELOG CHANGELOG.archive FAQ dnsmasq.conf.example
-	dodoc -r logo
-
-	docinto html/
-	dodoc *.html
-
-	newinitd "${FILESDIR}"/dnsmasq-init-r3 ${PN}
-	newconfd "${FILESDIR}"/dnsmasq.confd-r1 ${PN}
-
-	insinto /etc
-	newins dnsmasq.conf.example dnsmasq.conf
-
-	insinto /usr/share/dnsmasq
-	doins trust-anchors.conf
-
-	if use dhcp; then
-		dodir /var/lib/misc
-		newinitd "${FILESDIR}"/dnsmasq-init-dhcp-r2 ${PN}
-	fi
-	if use dbus; then
-		insinto /etc/dbus-1/system.d
-		doins dbus/dnsmasq.conf
-	fi
-
-	if use dhcp-tools; then
-		dosbin contrib/lease-tools/{dhcp_release,dhcp_lease_time}
-		doman contrib/lease-tools/{dhcp_release,dhcp_lease_time}.1
-		if use ipv6; then
-			dosbin contrib/lease-tools/dhcp_release6
-			doman contrib/lease-tools/dhcp_release6.1
-		fi
-	fi
-
-	systemd_newunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service
-}
-
-pkg_preinst() {
-	# temporary workaround to (hopefully) prevent leases file from being removed
-	[[ -f /var/lib/misc/dnsmasq.leases ]] && cp /var/lib/misc/dnsmasq.leases "${T}"
-}
-
-pkg_postinst() {
-	# temporary workaround to (hopefully) prevent leases file from being removed
-	[[ -f "${T}"/dnsmasq.leases ]] && cp "${T}"/dnsmasq.leases /var/lib/misc/dnsmasq.leases
-}
diff --git a/net-dns/dnsmasq/dnsmasq-2.85-r1.ebuild b/net-dns/dnsmasq/dnsmasq-2.85-r1.ebuild
new file mode 120000
index 0000000..4e45182
--- /dev/null
+++ b/net-dns/dnsmasq/dnsmasq-2.85-r1.ebuild
@@ -0,0 +1 @@
+dnsmasq-2.85.ebuild
\ No newline at end of file
diff --git a/net-dns/dnsmasq/dnsmasq-2.85.ebuild b/net-dns/dnsmasq/dnsmasq-2.85.ebuild
new file mode 100644
index 0000000..4d72e0f
--- /dev/null
+++ b/net-dns/dnsmasq/dnsmasq-2.85.ebuild
@@ -0,0 +1,222 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit eutils toolchain-funcs flag-o-matic user systemd
+
+DESCRIPTION="Small forwarding DNS server"
+HOMEPAGE="http://www.thekelleys.org.uk/dnsmasq/doc.html"
+SRC_URI="http://www.thekelleys.org.uk/dnsmasq/${P}.tar.xz"
+
+LICENSE="|| ( GPL-2 GPL-3 )"
+SLOT="0"
+KEYWORDS="*"
+
+IUSE="auth-dns conntrack dbus +dhcp dhcp-tools dnssec +dumpfile id idn libidn2"
+IUSE+=" +inotify ipv6 lua nettlehash nls script selinux static tftp"
+IUSE+=" dhcp-options"
+
+DM_LINGUAS=(de es fi fr id it no pl pt_BR ro)
+
+BDEPEND="
+	app-arch/xz-utils
+	virtual/pkgconfig
+	nls? ( sys-devel/gettext )
+"
+
+COMMON_DEPEND="
+	dbus? ( sys-apps/dbus:= )
+	idn? (
+		!libidn2? ( net-dns/libidn:0= )
+		libidn2? ( >=net-dns/libidn2-2.0:= )
+	)
+	lua? (  dev-lang/lua:* )
+	conntrack? ( net-libs/libnetfilter_conntrack:= )
+	nls? ( sys-devel/gettext )
+"
+
+DEPEND="${COMMON_DEPEND}
+	dnssec? (
+		dev-libs/nettle:=[gmp]
+		static? ( >=dev-libs/nettle-3.4[static-libs(+)] )
+	)
+"
+
+RDEPEND="${COMMON_DEPEND}
+	dnssec? (
+		!static? ( >=dev-libs/nettle-3.4:=[gmp] )
+	)
+	selinux? ( sec-policy/selinux-dnsmasq )
+"
+
+REQUIRED_USE="
+	dhcp-tools? ( dhcp )
+	dnssec? ( !nettlehash )
+	lua? (
+		script
+		${LUA_REQUIRED_USE}
+	)
+	libidn2? ( idn )
+"
+
+use_have() {
+	local no_only
+	if [[ ${1} == '-n' ]]; then
+		no_only=1
+		shift
+	fi
+	local useflag="${1}"
+	shift
+
+	local uword="${1:-${useflag}}"
+	shift
+
+	while [[ ${uword} ]]; do
+		uword="${uword^^}"
+
+		if ! use "${useflag}"; then
+			printf -- " -DNO_%s" "${uword}"
+		elif [[ -z "${no_only}" ]]; then
+			printf -- " -DHAVE_%s" "${uword}"
+		fi
+		uword="${1}"
+		shift
+	done
+}
+
+pkg_setup() {
+	use lua && lua-single_pkg_setup
+}
+
+pkg_pretend() {
+	if use static; then
+		einfo "Only sys-libs/gmp and dev-libs/nettle are statically linked."
+		use dnssec || einfo "Thus, ${P}[!dnssec,static] makes no sense;" \
+			"in this case the static USE flag does nothing."
+	fi
+}
+
+src_prepare() {
+	default
+
+	if use dhcp-options; then
+		eapply "${FILESDIR}"/${PN}-2.72-Write-DHCP-request-options-to-lease-file.patch
+	fi
+
+	eapply_user
+
+	sed -i -r 's:lua5.[0-9]+:lua:' Makefile || die
+	sed -i "s:%%PREFIX%%:${EPREFIX}/usr:" \
+		dnsmasq.conf.example || die
+}
+
+src_configure() {
+	COPTS=(
+		$(use_have -n auth-dns auth)
+		$(use_have conntrack)
+		$(use_have dbus)
+		$(use libidn2 || use_have idn)
+		$(use_have libidn2)
+		$(use_have -n inotify)
+		$(use_have -n dhcp dhcp dhcp6)
+		$(use_have -n ipv6 ipv6 dhcp6)
+		$(use_have -n id id)
+		$(use_have lua luascript)
+		$(use_have -n script)
+		$(use_have -n tftp)
+		$(use_have dnssec)
+		$(use_have nettlehash)
+		$(use_have static dnssec_static)
+		$(use_have -n dumpfile)
+	)
+}
+
+src_compile() {
+	emake \
+		PREFIX=/usr \
+		MANDIR=/usr/share/man \
+		CC="$(tc-getCC)" \
+		PKG_CONFIG="$(tc-getPKG_CONFIG)" \
+		CFLAGS="${CFLAGS}" \
+		LDFLAGS="${LDFLAGS}" \
+		COPTS="${COPTS[*]}" \
+		CONFFILE="/etc/${PN}.conf" \
+		all$(use nls && printf -- "-i18n\n")
+
+	use dhcp-tools && emake -C contrib/lease-tools \
+		PREFIX=/usr \
+		MANDIR=/usr/share/man \
+		CC="$(tc-getCC)" \
+		PKG_CONFIG="$(tc-getPKG_CONFIG)" \
+		CFLAGS="${CFLAGS}" \
+		LDFLAGS="${LDFLAGS}" \
+		all
+}
+
+src_install() {
+	local lingua puid
+	emake \
+		PREFIX=/usr \
+		MANDIR=/usr/share/man \
+		COPTS="${COPTS[*]}" \
+		DESTDIR="${ED}" \
+		install$(use nls && printf -- "-i18n\n")
+
+	for lingua in "${DM_LINGUAS[@]}"; do
+		has ${lingua} ${LINGUAS-${lingua}} \
+			|| rm -rf "${ED}"/usr/share/locale/${lingua}
+	done
+	[[ -d "${D}"/usr/share/locale/ ]] && \
+		rmdir --ignore-fail-on-non-empty "${ED}"/usr/share/locale/
+
+	dodoc CHANGELOG CHANGELOG.archive FAQ dnsmasq.conf.example
+	dodoc -r logo
+
+	docinto html/
+	dodoc *.html
+
+	newinitd "${FILESDIR}"/dnsmasq-init-r4 ${PN}
+	newconfd "${FILESDIR}"/dnsmasq.confd-r1 ${PN}
+
+	insinto /etc/logrotate.d
+	newins "${FILESDIR}"/dnsmasq.logrotate ${PN}
+
+	insinto /etc
+	newins dnsmasq.conf.example dnsmasq.conf
+
+	insinto /usr/share/dnsmasq
+	doins trust-anchors.conf
+
+	if use dhcp; then
+		keepdir /var/lib/misc
+		newinitd "${FILESDIR}"/dnsmasq-init-dhcp-r3 ${PN}
+	fi
+	if use dbus; then
+		insinto /etc/dbus-1/system.d
+		doins dbus/dnsmasq.conf
+	fi
+
+	if use dhcp-tools; then
+		dosbin contrib/lease-tools/{dhcp_release,dhcp_lease_time}
+		doman contrib/lease-tools/{dhcp_release,dhcp_lease_time}.1
+		if use ipv6; then
+			dosbin contrib/lease-tools/dhcp_release6
+			doman contrib/lease-tools/dhcp_release6.1
+		fi
+	fi
+
+	systemd_newunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service
+}
+
+pkg_preinst() {
+	[[ -f /var/lib/misc/dnsmasq.leases ]] && \
+		cp /var/lib/misc/dnsmasq.leases "${T}"
+}
+
+pkg_postinst() {
+	[[ -f "${T}"/dnsmasq.leases ]] && \
+		cp "${T}"/dnsmasq.leases /var/lib/misc/dnsmasq.leases
+}
diff --git a/net-dns/dnsmasq/files/dnsmasq-2.78-Alter-DHCP-address-selection-after-DECLINE-in-consec-addr.patch b/net-dns/dnsmasq/files/dnsmasq-2.78-Alter-DHCP-address-selection-after-DECLINE-in-consec-addr.patch
deleted file mode 100644
index 6a00435..0000000
--- a/net-dns/dnsmasq/files/dnsmasq-2.78-Alter-DHCP-address-selection-after-DECLINE-in-consec-addr.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From e7bfd556c079c8b5e7425aed44abc35925b24043 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Mon, 31 Dec 2018 20:51:15 +0000
-Subject: [PATCH] Alter DHCP address selection after DECLINE in consec-addr
- mode. Avoid offering the same address after a recieving a
- DECLINE message to stop an infinite protocol loop. This has
- long been done in default address allocation mode: this
- adds similar behaviour when allocaing addresses
- consecutively.
-
----
- src/dhcp.c  |   13 +++++++++++++
- src/dhcp6.c |   11 +++++++++--
- 2 files changed, 22 insertions(+), 2 deletions(-)
-
-diff --git a/src/dhcp.c b/src/dhcp.c
-index f8d323b..6689f2f 100644
---- a/src/dhcp.c
-+++ b/src/dhcp.c
-@@ -754,6 +754,19 @@ int address_allocate(struct dhcp_context *context,
- 	      if (addr.s_addr == d->router.s_addr)
- 		break;
- 
-+	    /* in consec-ip mode, skip addresses equal to
-+	       the number of addresses rejected by clients. This
-+	       should avoid the same client being offered the same
-+	       address after it has rjected it. */
-+	    if (option_bool(OPT_CONSEC_ADDR))
-+	      {
-+		if (c->addr_epoch)
-+		  {
-+		    c->addr_epoch--;
-+		    d = context; /* d non-NULL skips the address. */
-+		  }
-+	      }
-+	    
- 	    /* Addresses which end in .255 and .0 are broken in Windows even when using 
- 	       supernetting. ie dhcp-range=192.168.0.1,192.168.1.254,255,255,254.0
- 	       then 192.168.0.255 is a valid IP address, but not for Windows as it's
-diff --git a/src/dhcp6.c b/src/dhcp6.c
-index 3932cc7..f8b09e9 100644
---- a/src/dhcp6.c
-+++ b/src/dhcp6.c
-@@ -431,8 +431,15 @@ struct dhcp_context *address6_allocate(struct dhcp_context *context,  unsigned c
-       else
- 	{ 
- 	  if (!temp_addr && option_bool(OPT_CONSEC_ADDR))
--	    /* seed is largest extant lease addr in this context */
--	    start = lease_find_max_addr6(c) + serial;
-+	    {
-+	      /* seed is largest extant lease addr in this context,
-+		 skip addresses equal to the number of addresses rejected
-+		 by clients. This should avoid the same client being offered the same
-+		 address after it has rjected it. */
-+	      start = lease_find_max_addr6(c) + serial + c->addr_epoch;
-+	      if (c->addr_epoch)
-+		c->addr_epoch--;
-+	    }
- 	  else
- 	    {
- 	      u64 range = 1 + addr6part(&c->end6) - addr6part(&c->start6);
--- 
-1.7.10.4
diff --git a/net-dns/dnsmasq/files/dnsmasq-2.78-Fix-Alter-DHCP-address-selection-after-DECLINE-in-consec-addr.patch b/net-dns/dnsmasq/files/dnsmasq-2.78-Fix-Alter-DHCP-address-selection-after-DECLINE-in-consec-addr.patch
deleted file mode 100644
index 6b2acef..0000000
--- a/net-dns/dnsmasq/files/dnsmasq-2.78-Fix-Alter-DHCP-address-selection-after-DECLINE-in-consec-addr.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-From 9c0d445ef4abffa2b9342ad65e85ef425c1f83bb Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Wed, 9 Jan 2019 17:57:56 +0000
-Subject: [PATCH] Fix e7bfd556c079c8b5e7425aed44abc35925b24043 to actually
- work.
-
----
- src/dhcp.c  |   54 +++++++++++++++++++++++++-----------------------------
- src/dhcp6.c |    2 +-
- 2 files changed, 26 insertions(+), 30 deletions(-)
-
-diff --git a/src/dhcp.c b/src/dhcp.c
-index f71024d..ee74f06 100644
---- a/src/dhcp.c
-+++ b/src/dhcp.c
-@@ -754,19 +754,6 @@ int address_allocate(struct dhcp_context *context,
- 	      if (addr.s_addr == d->router.s_addr)
- 		break;
- 
--	    /* in consec-ip mode, skip addresses equal to
--	       the number of addresses rejected by clients. This
--	       should avoid the same client being offered the same
--	       address after it has rjected it. */
--	    if (option_bool(OPT_CONSEC_ADDR))
--	      {
--		if (c->addr_epoch)
--		  {
--		    c->addr_epoch--;
--		    d = context; /* d non-NULL skips the address. */
--		  }
--	      }
--	    
- 	    /* Addresses which end in .255 and .0 are broken in Windows even when using 
- 	       supernetting. ie dhcp-range=192.168.0.1,192.168.1.254,255,255,254.0
- 	       then 192.168.0.255 is a valid IP address, but not for Windows as it's
-@@ -778,24 +765,33 @@ int address_allocate(struct dhcp_context *context,
- 		(!IN_CLASSC(ntohl(addr.s_addr)) || 
- 		 ((ntohl(addr.s_addr) & 0xff) != 0xff && ((ntohl(addr.s_addr) & 0xff) != 0x0))))
- 	      {
--		struct ping_result *r;
--		
--		if ((r = do_icmp_ping(now, addr, j, loopback)))
-- 		  {
--		    /* consec-ip mode: we offered this address for another client
--		       (different hash) recently, don't offer it to this one. */
--		    if (!option_bool(OPT_CONSEC_ADDR) || r->hash == j)
--		      {
--			*addrp = addr;
--			return 1;
--		      }
--		  }
-+		/* in consec-ip mode, skip addresses equal to
-+		   the number of addresses rejected by clients. This
-+		   should avoid the same client being offered the same
-+		   address after it has rjected it. */
-+		if (option_bool(OPT_CONSEC_ADDR) && c->addr_epoch)
-+		  c->addr_epoch--;
- 		else
- 		  {
--		    /* address in use: perturb address selection so that we are
--		       less likely to try this address again. */
--		    if (!option_bool(OPT_CONSEC_ADDR))
--		      c->addr_epoch++;
-+		    struct ping_result *r;
-+		    
-+		    if ((r = do_icmp_ping(now, addr, j, loopback)))
-+		      {
-+			/* consec-ip mode: we offered this address for another client
-+			   (different hash) recently, don't offer it to this one. */
-+			if (!option_bool(OPT_CONSEC_ADDR) || r->hash == j)
-+			  {
-+			    *addrp = addr;
-+			    return 1;
-+			  }
-+		      }
-+		    else
-+		      {
-+			/* address in use: perturb address selection so that we are
-+			   less likely to try this address again. */
-+			if (!option_bool(OPT_CONSEC_ADDR))
-+			  c->addr_epoch++;
-+		      }
- 		  }
- 	      }
- 	    
-diff --git a/src/dhcp6.c b/src/dhcp6.c
-index 56b2532..7e6e3df 100644
---- a/src/dhcp6.c
-+++ b/src/dhcp6.c
-@@ -436,7 +436,7 @@ struct dhcp_context *address6_allocate(struct dhcp_context *context,  unsigned c
- 		 skip addresses equal to the number of addresses rejected
- 		 by clients. This should avoid the same client being offered the same
- 		 address after it has rjected it. */
--	      start = lease_find_max_addr6(c) + serial + c->addr_epoch;
-+	      start = lease_find_max_addr6(c) + 1 + serial + c->addr_epoch;
- 	      if (c->addr_epoch)
- 		c->addr_epoch--;
- 	    }
--- 
-1.7.10.4
diff --git a/net-dns/dnsmasq/files/dnsmasq-2.78-cve-2019-14834.patch b/net-dns/dnsmasq/files/dnsmasq-2.78-cve-2019-14834.patch
deleted file mode 100644
index cc699b1..0000000
--- a/net-dns/dnsmasq/files/dnsmasq-2.78-cve-2019-14834.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-Fix memory leak in helper.c
-
-Thanks to Xu Mingjie <xumingjie1995@outlook.com> for spotting this.
-
-author: Simon Kelley <simon@thekelleys.org.uk>	
-commit-url: http://thekelleys.org.uk/gitweb/?p=dnsmasq.git;a=commit;h=69bc94779c2f035a9fffdb5327a54c3aeca73ed5
-pull-request: https://github.com/gentoo/gentoo/pull/15197
-diff --git a/src/helper.c b/src/helper.c
-index 33ba120..c392eec 100644 (file)
---- a/src/helper.c
-+++ b/src/helper.c
-@@ -80,7 +80,8 @@ int create_helper(int event_fd, int err_fd, uid_t uid, gid_t gid, long max_fd)
-   pid_t pid;
-   int i, pipefd[2];
-   struct sigaction sigact;
--
-+  unsigned char *alloc_buff = NULL;
-+  
-   /* create the pipe through which the main program sends us commands,
-      then fork our process. */
-   if (pipe(pipefd) == -1 || !fix_fd(pipefd[1]) || (pid = fork()) == -1)
-@@ -186,11 +187,16 @@ int create_helper(int event_fd, int err_fd, uid_t uid, gid_t gid, long max_fd)
-       struct script_data data;
-       char *p, *action_str, *hostname = NULL, *domain = NULL;
-       unsigned char *buf = (unsigned char *)daemon->namebuff;
--      unsigned char *end, *extradata, *alloc_buff = NULL;
-+      unsigned char *end, *extradata;
-       int is6, err = 0;
-       int pipeout[2];
- 
--      free(alloc_buff);
-+      /* Free rarely-allocated memory from previous iteration. */
-+      if (alloc_buff)
-+       {
-+         free(alloc_buff);
-+         alloc_buff = NULL;
-+       }
-       
-       /* we read zero bytes when pipe closed: this is our signal to exit */ 
-       if (!read_write(pipefd[0], (unsigned char *)&data, sizeof(data), 1))
diff --git a/net-dns/dnsmasq/files/dnsmasq-init-dhcp-r2 b/net-dns/dnsmasq/files/dnsmasq-init-dhcp-r2
deleted file mode 100644
index 610ce7a..0000000
--- a/net-dns/dnsmasq/files/dnsmasq-init-dhcp-r2
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License, v2 or later
-
-extra_started_commands="reload"
-
-pidfile="/var/run/dnsmasq.pid"
-command="/usr/sbin/dnsmasq"
-command_args="-x ${pidfile} ${DNSMASQ_OPTS}"
-retry="TERM/3/TERM/5"
-
-depend() {
-	provide dns
-	need localmount net
-	after bootmisc
-	use logger
-}
-
-start_pre() {
-	checkpath --owner dnsmasq:dnsmasq \
-		--mode 0644 \
-		--file /var/lib/misc/dnsmasq.leases
-}
-
-reload() {
-	ebegin "Reloading ${RC_SVCNAME}"
-	start-stop-daemon --signal HUP --pidfile "${pidfile}"
-	eend $?
-}
diff --git a/net-dns/dnsmasq/files/dnsmasq-init-dhcp-r3 b/net-dns/dnsmasq/files/dnsmasq-init-dhcp-r3
new file mode 100644
index 0000000..5a356b2
--- /dev/null
+++ b/net-dns/dnsmasq/files/dnsmasq-init-dhcp-r3
@@ -0,0 +1,35 @@
+#!/sbin/openrc-run
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+
+extra_started_commands="reload rotate"
+
+pidfile="/var/run/dnsmasq.pid"
+command="/usr/sbin/dnsmasq"
+command_args="-x ${pidfile} ${DNSMASQ_OPTS}"
+retry="TERM/3/TERM/5"
+
+depend() {
+	provide dns
+	need localmount net
+	after bootmisc
+	use logger
+}
+
+start_pre() {
+	checkpath --owner dnsmasq:dnsmasq \
+		--mode 0644 \
+		--file /var/lib/misc/dnsmasq.leases
+}
+
+reload() {
+	ebegin "Reloading ${RC_SVCNAME}"
+	start-stop-daemon --signal HUP --pidfile "${pidfile}"
+	eend $?
+}
+
+rotate() {
+	ebegin "Reopening ${RC_SVCNAME} log file"
+	start-stop-daemon --signal USR2 --pidfile "${pidfile}"
+	eend $?
+}
diff --git a/net-dns/dnsmasq/files/dnsmasq-init-r3 b/net-dns/dnsmasq/files/dnsmasq-init-r3
deleted file mode 100644
index 9d58b26..0000000
--- a/net-dns/dnsmasq/files/dnsmasq-init-r3
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License, v2 or later
-
-extra_started_commands="reload"
-
-pidfile="/var/run/dnsmasq.pid"
-command="/usr/sbin/dnsmasq"
-command_args="-x ${pidfile} ${DNSMASQ_OPTS}"
-retry="TERM/3/TERM/5"
-
-depend() {
-	provide dns
-	need localmount net
-	after bootmisc
-	use logger
-}
-
-reload() {
-	ebegin "Reloading ${SVCNAME}"
-	start-stop-daemon --signal HUP --pidfile "${pidfile}"
-	eend $?
-}
diff --git a/net-dns/dnsmasq/files/dnsmasq-init-r4 b/net-dns/dnsmasq/files/dnsmasq-init-r4
new file mode 100644
index 0000000..559cb1e
--- /dev/null
+++ b/net-dns/dnsmasq/files/dnsmasq-init-r4
@@ -0,0 +1,29 @@
+#!/sbin/openrc-run
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+
+extra_started_commands="reload rotate"
+
+pidfile="/var/run/dnsmasq.pid"
+command="/usr/sbin/dnsmasq"
+command_args="-x ${pidfile} ${DNSMASQ_OPTS}"
+retry="TERM/3/TERM/5"
+
+depend() {
+	provide dns
+	need localmount net
+	after bootmisc
+	use logger
+}
+
+reload() {
+	ebegin "Reloading ${RC_SVCNAME}"
+	start-stop-daemon --signal HUP --pidfile "${pidfile}"
+	eend $?
+}
+
+rotate() {
+	ebegin "Reopening ${RC_SVCNAME} log file"
+	start-stop-daemon --signal USR2 --pidfile "${pidfile}"
+	eend $?
+}
diff --git a/net-dns/dnsmasq/files/dnsmasq.logrotate b/net-dns/dnsmasq/files/dnsmasq.logrotate
new file mode 100644
index 0000000..75372fe
--- /dev/null
+++ b/net-dns/dnsmasq/files/dnsmasq.logrotate
@@ -0,0 +1,8 @@
+/var/log/dnsmasq.log {
+	create 640 dnsmasq root
+	notifempty
+	missingok
+	postrotate
+		test -r /var/run/dnsmasq.pid && kill -USR2 "$(head -n1 /var/run/dnsmasq.pid)"
+	endscript
+}
diff --git a/net-firewall/conntrack-tools/OWNERS b/net-firewall/conntrack-tools/OWNERS
new file mode 100644
index 0000000..af1ab76
--- /dev/null
+++ b/net-firewall/conntrack-tools/OWNERS
@@ -0,0 +1 @@
+include /chromeos-base/shill/OWNERS
diff --git a/net-firewall/conntrack-tools/conntrack-tools-1.4.4-r17.ebuild b/net-firewall/conntrack-tools/conntrack-tools-1.4.4-r21.ebuild
similarity index 100%
rename from net-firewall/conntrack-tools/conntrack-tools-1.4.4-r17.ebuild
rename to net-firewall/conntrack-tools/conntrack-tools-1.4.4-r21.ebuild
diff --git a/net-firewall/conntrack-tools/conntrack-tools-1.4.4.ebuild b/net-firewall/conntrack-tools/conntrack-tools-1.4.4.ebuild
index 9e91716..72562f7 100644
--- a/net-firewall/conntrack-tools/conntrack-tools-1.4.4.ebuild
+++ b/net-firewall/conntrack-tools/conntrack-tools-1.4.4.ebuild
@@ -1,9 +1,9 @@
 # Copyright 1999-2016 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Id$
 
-EAPI=5
-inherit autotools eutils linux-info
+EAPI="7"
+
+inherit autotools eutils
 
 DESCRIPTION="Connection tracking userspace tools"
 HOMEPAGE="http://conntrack-tools.netfilter.org"
@@ -11,7 +11,7 @@
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS=*
+KEYWORDS="*"
 IUSE="doc +libtirpc +seccomp"
 
 RDEPEND="
@@ -24,8 +24,8 @@
 	!libtirpc? ( sys-libs/glibc[rpc(-)] )
 	libtirpc? ( net-libs/libtirpc )
 "
-DEPEND="
-	${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
 	doc? (
 		app-text/docbook-xml-dtd:4.1.2
 		app-text/xmlto
@@ -35,30 +35,13 @@
 	sys-devel/flex
 "
 
-pkg_setup() {
-	linux-info_pkg_setup
-
-	if kernel_is lt 2 6 18 ; then
-		die "${PN} requires at least 2.6.18 kernel version"
-	fi
-
-	#netfilter core team has changed some option names with kernel 2.6.20
-	if kernel_is lt 2 6 20 ; then
-		CONFIG_CHECK="~IP_NF_CONNTRACK_NETLINK"
-	else
-		CONFIG_CHECK="~NF_CT_NETLINK"
-	fi
-	CONFIG_CHECK="${CONFIG_CHECK} ~NF_CONNTRACK
-		~NETFILTER_NETLINK ~NF_CONNTRACK_EVENTS"
-
-	check_extra_config
-
-	linux_config_exists || \
-		linux_chkconfig_present "NF_CONNTRACK_IPV4" || \
-		linux_chkconfig_present "NF_CONNTRACK_IPV6" || \
-		ewarn "CONFIG_NF_CONNTRACK_IPV4 or CONFIG_NF_CONNTRACK_IPV6 " \
-			"are not set when one at least should be."
-}
+PATCHES=(
+	"${FILESDIR}"/${P}-mdns-helper.patch
+	"${FILESDIR}"/${P}-lazy-binding.patch
+	"${FILESDIR}"/${P}-upnp-helper.patch
+	"${FILESDIR}"/${P}-pktb-memory-leak.patch
+	"${FILESDIR}"/${P}-rpc.patch
+)
 
 src_prepare() {
 	default
@@ -66,11 +49,6 @@
 	# bug #474858
 	sed -i -e 's:/var/lock:/run/lock:' doc/stats/conntrackd.conf || die
 
-	epatch "${FILESDIR}"/${P}-mdns-helper.patch
-	epatch "${FILESDIR}"/${P}-lazy-binding.patch
-	epatch "${FILESDIR}"/${P}-upnp-helper.patch
-	epatch "${FILESDIR}"/${P}-pktb-memory-leak.patch
-	epatch "${FILESDIR}"/${P}-rpc.patch
 	eautoreconf
 }
 
diff --git a/net-firewall/conntrack-tools/files/conntrackd-seccomp-amd64.policy b/net-firewall/conntrack-tools/files/conntrackd-seccomp-amd64.policy
index 1477fd3..d2e04c2 100644
--- a/net-firewall/conntrack-tools/files/conntrackd-seccomp-amd64.policy
+++ b/net-firewall/conntrack-tools/files/conntrackd-seccomp-amd64.policy
@@ -14,6 +14,8 @@
 futex: 1
 brk: 1
 access: 1
+faccessat: 1
+faccessat2: 1
 rt_sigaction: 1
 getsockname: 1
 bind: 1
diff --git a/net-firewall/conntrack-tools/files/conntrackd-seccomp-arm.policy b/net-firewall/conntrack-tools/files/conntrackd-seccomp-arm.policy
index be60c7e..57e1abd 100644
--- a/net-firewall/conntrack-tools/files/conntrackd-seccomp-arm.policy
+++ b/net-firewall/conntrack-tools/files/conntrackd-seccomp-arm.policy
@@ -15,6 +15,8 @@
 futex_time64: 1
 brk: 1
 access: 1
+faccessat: 1
+faccessat2: 1
 rt_sigaction: 1
 getsockname: 1
 bind: 1
@@ -42,16 +44,20 @@
 recvmsg: 1
 chdir: 1
 getpid: 1
+statx: 1
 
 # architecture-dependent syscalls:
 mmap2: 1
 clock_gettime64: 1
 fstat64: 1
+fstatat64: 1
 fstatfs64: 1
+fstatfs: 1
 stat64: 1
 fcntl64: 1
 _newselect: 1
 pselect6: 1
+pselect6_time64: 1
 prctl: 1
 gettimeofday: 1
 _llseek: 1
diff --git a/net-firewall/conntrack-tools/files/conntrackd-seccomp-arm64.policy b/net-firewall/conntrack-tools/files/conntrackd-seccomp-arm64.policy
index 3013dcd..d1c2525 100644
--- a/net-firewall/conntrack-tools/files/conntrackd-seccomp-arm64.policy
+++ b/net-firewall/conntrack-tools/files/conntrackd-seccomp-arm64.policy
@@ -14,6 +14,7 @@
 futex: 1
 brk: 1
 faccessat: 1
+faccessat2: 1
 rt_sigaction: 1
 getsockname: 1
 bind: 1
diff --git a/net-firewall/conntrack-tools/files/conntrackd-seccomp-x86.policy b/net-firewall/conntrack-tools/files/conntrackd-seccomp-x86.policy
index 0f54f5e..08b290d 100644
--- a/net-firewall/conntrack-tools/files/conntrackd-seccomp-x86.policy
+++ b/net-firewall/conntrack-tools/files/conntrackd-seccomp-x86.policy
@@ -11,6 +11,8 @@
 futex_time64: 1
 brk: 1
 access: 1
+faccessat: 1
+faccessat2: 1
 rt_sigaction: 1
 munmap: 1
 restart_syscall: 1
@@ -37,9 +39,12 @@
 clock_gettime64: 1
 fstat64: 1
 fstatfs64: 1
+fstatfs: 1
 stat64: 1
 fcntl64: 1
 _newselect: 1
+pselect6: 1
+pselect6_time64: 1
 prctl: 1
 gettimeofday: 1
 socketcall: 1
diff --git a/net-fs/samba/samba-4.11.13-r7.ebuild b/net-fs/samba/samba-4.11.13-r8.ebuild
similarity index 100%
rename from net-fs/samba/samba-4.11.13-r7.ebuild
rename to net-fs/samba/samba-4.11.13-r8.ebuild
diff --git a/net-fs/samba/samba-4.11.13.ebuild b/net-fs/samba/samba-4.11.13.ebuild
index 02333f4..7ade715 100644
--- a/net-fs/samba/samba-4.11.13.ebuild
+++ b/net-fs/samba/samba-4.11.13.ebuild
@@ -333,14 +333,3 @@
 		"${WAF_BINARY}" test || die "test failed"
 	fi
 }
-
-pkg_postinst() {
-	ewarn "Be aware that this release contains the best of all of Samba's"
-	ewarn "technology parts, both a file server (that you can reasonably expect"
-	ewarn "to upgrade existing Samba 3.x releases to) and the AD domain"
-	ewarn "controller work previously known as 'samba4'."
-
-	elog "For further information and migration steps make sure to read "
-	elog "https://samba.org/samba/history/${P}.html "
-	elog "https://wiki.samba.org/index.php/Samba4/HOWTO "
-}
diff --git a/net-libs/libmbim/libmbim-1.25.3-r75.ebuild b/net-libs/libmbim/libmbim-1.25.3-r75.ebuild
deleted file mode 100644
index 11de9eb..0000000
--- a/net-libs/libmbim/libmbim-1.25.3-r75.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-CROS_WORKON_COMMIT="2e95568b4d3105e0223fce8c674ac9afced82fbb"
-CROS_WORKON_TREE="b9755a1074ada9c532a88c68dd45adee57247c46"
-CROS_WORKON_PROJECT="chromiumos/third_party/libmbim"
-
-inherit autotools cros-sanitizers cros-workon
-
-DESCRIPTION="MBIM modem protocol helper library"
-HOMEPAGE="http://cgit.freedesktop.org/libmbim/"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-IUSE="-asan doc static-libs"
-
-RDEPEND=">=dev-libs/glib-2.36
-	virtual/libgudev"
-
-DEPEND="${RDEPEND}
-	doc? ( dev-util/gtk-doc )
-	virtual/pkgconfig"
-
-src_prepare() {
-	default
-	gtkdocize
-	eautoreconf
-}
-
-src_configure() {
-	sanitizers-setup-env
-
-	econf \
-		--enable-mbim-username='modem' \
-		--enable-compile-warnings=yes \
-		$(use_enable static{-libs,}) \
-		$(use_enable {,gtk-}doc)
-}
-
-src_test() {
-	# TODO(benchan): Run unit tests for non-x86 platforms via qemu.
-	[[ "${ARCH}" == "x86" || "${ARCH}" == "amd64" ]] && emake check
-}
-
-src_install() {
-	default
-	use static-libs || rm -f "${ED}"/usr/$(get_libdir)/libmbim-glib.la
-}
diff --git a/net-libs/libmbim/libmbim-1.25.5-r78.ebuild b/net-libs/libmbim/libmbim-1.25.5-r78.ebuild
new file mode 100644
index 0000000..b8279ae
--- /dev/null
+++ b/net-libs/libmbim/libmbim-1.25.5-r78.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+CROS_WORKON_COMMIT="3230440a20973434cdc0c05bc021f4907d809dfa"
+CROS_WORKON_TREE="468bdcc151b22569686839df708344e29549c084"
+CROS_WORKON_PROJECT="chromiumos/third_party/libmbim"
+
+inherit autotools cros-sanitizers cros-workon
+
+DESCRIPTION="MBIM modem protocol helper library"
+HOMEPAGE="http://cgit.freedesktop.org/libmbim/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+IUSE="-asan doc static-libs"
+
+RDEPEND=">=dev-libs/glib-2.36
+	virtual/libgudev"
+
+DEPEND="${RDEPEND}
+	doc? ( dev-util/gtk-doc )
+	virtual/pkgconfig"
+
+src_prepare() {
+	default
+	gtkdocize
+	eautoreconf
+}
+
+src_configure() {
+	sanitizers-setup-env
+
+	econf \
+		--enable-mbim-username='modem' \
+		--enable-compile-warnings=yes \
+		--enable-introspection=no \
+		$(use_enable static{-libs,}) \
+		$(use_enable {,gtk-}doc)
+}
+
+src_test() {
+	# TODO(benchan): Run unit tests for non-x86 platforms via qemu.
+	[[ "${ARCH}" == "x86" || "${ARCH}" == "amd64" ]] && emake check
+}
+
+src_install() {
+	default
+	use static-libs || rm -f "${ED}"/usr/$(get_libdir)/libmbim-glib.la
+}
diff --git a/net-libs/libmbim/libmbim-9999.ebuild b/net-libs/libmbim/libmbim-9999.ebuild
index ec7dd9f..5685403 100644
--- a/net-libs/libmbim/libmbim-9999.ebuild
+++ b/net-libs/libmbim/libmbim-9999.ebuild
@@ -33,6 +33,7 @@
 	econf \
 		--enable-mbim-username='modem' \
 		--enable-compile-warnings=yes \
+		--enable-introspection=no \
 		$(use_enable static{-libs,}) \
 		$(use_enable {,gtk-}doc)
 }
diff --git a/net-libs/libqmi/libqmi-1.29.5-r103.ebuild b/net-libs/libqmi/libqmi-1.29.5-r103.ebuild
deleted file mode 100644
index ca9864e..0000000
--- a/net-libs/libqmi/libqmi-1.29.5-r103.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-CROS_WORKON_COMMIT="bc48601c7144792a724572a732bf15632ff6407c"
-CROS_WORKON_TREE="dce4e660d9cd78ea98e76aebf8eed517b076c3a9"
-CROS_WORKON_PROJECT="chromiumos/third_party/libqmi"
-
-inherit autotools cros-sanitizers cros-workon
-
-DESCRIPTION="QMI modem protocol helper library"
-HOMEPAGE="http://cgit.freedesktop.org/libqmi/"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-IUSE="-asan doc mbim qrtr static-libs"
-
-RDEPEND=">=dev-libs/glib-2.36
-	mbim? ( >=net-libs/libmbim-1.18.0 )
-	qrtr? ( net-libs/libqrtr-glib )"
-
-DEPEND="${RDEPEND}
-	doc? ( dev-util/gtk-doc )
-	sys-devel/autoconf-archive
-	virtual/pkgconfig"
-
-src_prepare() {
-	default
-	gtkdocize
-	eautoreconf
-}
-
-src_configure() {
-	sanitizers-setup-env
-
-	econf \
-		--enable-qmi-username='modem' \
-		--enable-compile-warnings=yes \
-		$(use_enable qrtr) \
-		$(use_enable mbim mbim-qmux) \
-		$(use_enable static{-libs,}) \
-		$(use_enable {,gtk-}doc)
-}
-
-src_test() {
-	# TODO(b/180536539): Run unit tests for non-x86 platforms via qemu.
-	if [[ "${ARCH}" == "x86" || "${ARCH}" == "amd64" ]] ; then
-		# This is an ugly hack that happens to work, but should not be copied.
-		LD_LIBRARY_PATH="${SYSROOT}/usr/$(get_libdir)" \
-		emake check
-	fi
-}
-
-src_install() {
-	default
-	use static-libs || rm -f "${ED}"/usr/$(get_libdir)/libqmi-glib.la
-}
diff --git a/net-libs/libqmi/libqmi-1.29.5-r105.ebuild b/net-libs/libqmi/libqmi-1.29.5-r105.ebuild
new file mode 100644
index 0000000..5f44686
--- /dev/null
+++ b/net-libs/libqmi/libqmi-1.29.5-r105.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+CROS_WORKON_COMMIT="1d09b17b2fbf474ba25875e8e769e099a7193235"
+CROS_WORKON_TREE="577b11fa1095676da86e7c189831caef08779226"
+CROS_WORKON_PROJECT="chromiumos/third_party/libqmi"
+
+inherit autotools cros-sanitizers cros-workon
+
+DESCRIPTION="QMI modem protocol helper library"
+HOMEPAGE="http://cgit.freedesktop.org/libqmi/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+IUSE="-asan doc mbim qrtr static-libs"
+
+RDEPEND=">=dev-libs/glib-2.36
+	mbim? ( >=net-libs/libmbim-1.18.0 )
+	qrtr? ( net-libs/libqrtr-glib )"
+
+DEPEND="${RDEPEND}
+	doc? ( dev-util/gtk-doc )
+	sys-devel/autoconf-archive
+	virtual/pkgconfig"
+
+src_prepare() {
+	default
+	gtkdocize
+	eautoreconf
+}
+
+src_configure() {
+	sanitizers-setup-env
+
+	econf \
+		--enable-qmi-username='modem' \
+		--enable-compile-warnings=yes \
+		--enable-introspection=no \
+		$(use_enable qrtr) \
+		$(use_enable mbim mbim-qmux) \
+		$(use_enable static{-libs,}) \
+		$(use_enable {,gtk-}doc)
+}
+
+src_test() {
+	# TODO(b/180536539): Run unit tests for non-x86 platforms via qemu.
+	if [[ "${ARCH}" == "x86" || "${ARCH}" == "amd64" ]] ; then
+		# This is an ugly hack that happens to work, but should not be copied.
+		LD_LIBRARY_PATH="${SYSROOT}/usr/$(get_libdir)" \
+		emake check
+	fi
+}
+
+src_install() {
+	default
+	use static-libs || rm -f "${ED}"/usr/$(get_libdir)/libqmi-glib.la
+}
diff --git a/net-libs/libqmi/libqmi-9999.ebuild b/net-libs/libqmi/libqmi-9999.ebuild
index 8ec4de9..ce60f10 100644
--- a/net-libs/libqmi/libqmi-9999.ebuild
+++ b/net-libs/libqmi/libqmi-9999.ebuild
@@ -35,6 +35,7 @@
 	econf \
 		--enable-qmi-username='modem' \
 		--enable-compile-warnings=yes \
+		--enable-introspection=no \
 		$(use_enable qrtr) \
 		$(use_enable mbim mbim-qmux) \
 		$(use_enable static{-libs,}) \
diff --git a/net-libs/libqrtr-glib/OWNERS b/net-libs/libqrtr-glib/OWNERS
index b7e3dc7..c2aee89 100644
--- a/net-libs/libqrtr-glib/OWNERS
+++ b/net-libs/libqrtr-glib/OWNERS
@@ -2,4 +2,3 @@
 pholla@chromium.org
 andrewlassalle@chromium.org
 madhavadas@google.com
-vpalatin@chromium.org
diff --git a/net-libs/libqrtr-glib/libqrtr-glib-1.1.0-r4.ebuild b/net-libs/libqrtr-glib/libqrtr-glib-1.1.0-r4.ebuild
deleted file mode 100644
index 5652f3f..0000000
--- a/net-libs/libqrtr-glib/libqrtr-glib-1.1.0-r4.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="ee51e8f6e7d474bf990ba840972a80c6a7d55c6a"
-CROS_WORKON_TREE="4f570b6770ab57ec0d70319dafc98cef6a6c6062"
-CROS_WORKON_PROJECT="chromiumos/third_party/libqrtr-glib"
-CROS_WORKON_EGIT_BRANCH="master"
-
-inherit autotools cros-sanitizers cros-workon
-
-DESCRIPTION="QRTR modem protocol helper library"
-# TODO(andrewlassalle): replace the homepage once one is created.
-HOMEPAGE="https://gitlab.freedesktop.org/mobile-broadband/libqrtr-glib"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-IUSE="doc static-libs"
-
-RDEPEND=">=dev-libs/glib-2.36:2"
-BDEPEND="virtual/pkgconfig"
-DEPEND="${RDEPEND}
-	doc? ( dev-util/gtk-doc )
-	sys-devel/autoconf-archive"
-
-src_prepare() {
-	default
-	gtkdocize
-	eautoreconf
-}
-
-src_configure() {
-	sanitizers-setup-env
-
-	econf \
-		--enable-compile-warnings=yes \
-		"$(use_enable static{-libs,})" \
-		"$(use_enable {,gtk-}doc)"
-}
-
-src_test() {
-	# TODO(b/180536539): Run unit tests for non-x86 platforms via qemu.
-	if [[ "${ARCH}" == "x86" || "${ARCH}" == "amd64" ]] ; then
-		# This is an ugly hack that happens to work, but should not be copied.
-		LD_LIBRARY_PATH="${SYSROOT}/usr/$(get_libdir)" \
-		emake check
-	fi
-}
-
-src_install() {
-	default
-	use static-libs || rm -f "${ED}/usr/$(get_libdir)/libqrtr-glib.la"
-}
diff --git a/net-libs/libqrtr-glib/libqrtr-glib-1.1.0-r6.ebuild b/net-libs/libqrtr-glib/libqrtr-glib-1.1.0-r6.ebuild
new file mode 100644
index 0000000..eb862cd
--- /dev/null
+++ b/net-libs/libqrtr-glib/libqrtr-glib-1.1.0-r6.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="b0722587a777fa585c1557a47d6bcfeb8280abb4"
+CROS_WORKON_TREE="4ca2d2a5acfaeee87c56a2055543ac95b3ecbe34"
+CROS_WORKON_PROJECT="chromiumos/third_party/libqrtr-glib"
+CROS_WORKON_EGIT_BRANCH="master"
+
+inherit autotools cros-sanitizers cros-workon
+
+DESCRIPTION="QRTR modem protocol helper library"
+# TODO(andrewlassalle): replace the homepage once one is created.
+HOMEPAGE="https://gitlab.freedesktop.org/mobile-broadband/libqrtr-glib"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+IUSE="doc static-libs"
+
+RDEPEND=">=dev-libs/glib-2.36:2"
+BDEPEND="virtual/pkgconfig"
+DEPEND="${RDEPEND}
+	doc? ( dev-util/gtk-doc )
+	sys-devel/autoconf-archive"
+
+src_prepare() {
+	default
+	gtkdocize
+	eautoreconf
+}
+
+src_configure() {
+	sanitizers-setup-env
+
+	econf \
+		--enable-compile-warnings=yes \
+		--enable-introspection=no \
+		"$(use_enable static{-libs,})" \
+		"$(use_enable {,gtk-}doc)"
+}
+
+src_test() {
+	# TODO(b/180536539): Run unit tests for non-x86 platforms via qemu.
+	if [[ "${ARCH}" == "x86" || "${ARCH}" == "amd64" ]] ; then
+		# This is an ugly hack that happens to work, but should not be copied.
+		LD_LIBRARY_PATH="${SYSROOT}/usr/$(get_libdir)" \
+		emake check
+	fi
+}
+
+src_install() {
+	default
+	use static-libs || rm -f "${ED}/usr/$(get_libdir)/libqrtr-glib.la"
+}
diff --git a/net-libs/libqrtr-glib/libqrtr-glib-9999.ebuild b/net-libs/libqrtr-glib/libqrtr-glib-9999.ebuild
index 1850cf0..7d21940 100644
--- a/net-libs/libqrtr-glib/libqrtr-glib-9999.ebuild
+++ b/net-libs/libqrtr-glib/libqrtr-glib-9999.ebuild
@@ -33,6 +33,7 @@
 
 	econf \
 		--enable-compile-warnings=yes \
+		--enable-introspection=no \
 		"$(use_enable static{-libs,})" \
 		"$(use_enable {,gtk-}doc)"
 }
diff --git a/net-libs/libqrtr/files/qrtr-ns-seccomp-arm.policy b/net-libs/libqrtr/files/qrtr-ns-seccomp-arm.policy
index 3fbd4e7..cecfcf0 100644
--- a/net-libs/libqrtr/files/qrtr-ns-seccomp-arm.policy
+++ b/net-libs/libqrtr/files/qrtr-ns-seccomp-arm.policy
@@ -3,12 +3,15 @@
 # found in the LICENSE file.
 _llseek: 1
 access: 1
+faccessat: 1
+faccessat2: 1
 bind: 1
 brk: 1
 close: 1
 connect: 1
 exit_group: 1
 fstat64: 1
+fstatat64: 1
 getpid: 1
 getsockname: 1
 gettimeofday: 1
@@ -30,6 +33,7 @@
 # Only AF_UNIX (for syslog), AF_NETLINK and AF_QIPCRTR sockets
 socket: arg0 == AF_UNIX || arg0 == AF_NETLINK || arg0 == 42
 stat64: 1
+statx: 1
 uname: 1
 wait4: 1
 write: 1
diff --git a/net-libs/libqrtr/files/qrtr-ns-seccomp-arm64.policy b/net-libs/libqrtr/files/qrtr-ns-seccomp-arm64.policy
index e47d769..bd6e87b 100644
--- a/net-libs/libqrtr/files/qrtr-ns-seccomp-arm64.policy
+++ b/net-libs/libqrtr/files/qrtr-ns-seccomp-arm64.policy
@@ -3,6 +3,7 @@
 # found in the LICENSE file.
 lseek: 1
 faccessat: 1
+faccessat2: 1
 bind: 1
 brk: 1
 close: 1
diff --git a/net-libs/libqrtr/libqrtr-0.0.1-r23.ebuild b/net-libs/libqrtr/libqrtr-0.0.1-r26.ebuild
similarity index 100%
rename from net-libs/libqrtr/libqrtr-0.0.1-r23.ebuild
rename to net-libs/libqrtr/libqrtr-0.0.1-r26.ebuild
diff --git a/net-misc/dhcpcd/Manifest b/net-misc/dhcpcd/Manifest
index a60c1d1..923df90 100644
--- a/net-misc/dhcpcd/Manifest
+++ b/net-misc/dhcpcd/Manifest
@@ -1 +1,2 @@
-DIST dhcpcd-6.8.2.tar.bz2 175355 SHA256 a72187fe1f31553264571720d47ebf919cf484f04c2fa974e57a10e16a505cb2 SHA512 cef488618c2bab398adb4b5021745ca9a8319067400604d087cb2c62142449adc40f25a14d90c87147c9412ffa1a85e6253374e98fea2de8024c94e3771e1c41 WHIRLPOOL c1464776cbccc96513ad544408ef9156f755fb3c81903536628c7b16bf18d8e373afe395e1137e998980e56585d571aa7abaac8820164d8f013e82c1ae8adc99
+DIST dhcpcd-6.8.2.tar.bz2 175355 BLAKE2B bd85965569b15fd83f66463c25a63a439f5f54ebf6fd4af2fa410902df475dfd8944eb441189fc4ce9abc5463ec08510122ec6587f3718125cd48825af9c63e4 SHA512 cef488618c2bab398adb4b5021745ca9a8319067400604d087cb2c62142449adc40f25a14d90c87147c9412ffa1a85e6253374e98fea2de8024c94e3771e1c41
+DIST dhcpcd-7.2.5.tar.xz 214124 BLAKE2B 7a5f32b66187afcaa2bb4a1cbcc0d704a28a27ff6d1f9fea409bab242ebf4d263d81590cb4a4959c9f1119966795e26fa582ed16a525c1e46a72dd0905868074 SHA512 ee0c70f3996f6a06031c2f663a4bdf4f147d637c31e54bb94fcb9d86282c33ad7b0f5569abe09acd7698efbb34c35afb228fe0825e4a95ad6a42832d1838ca72
diff --git a/net-misc/dhcpcd/OWNERS b/net-misc/dhcpcd/OWNERS
index a69358b..b830d86 100644
--- a/net-misc/dhcpcd/OWNERS
+++ b/net-misc/dhcpcd/OWNERS
@@ -1 +1 @@
-garrick@chromium.org
+include chromiumos/platform2:/patchpanel/OWNERS
diff --git a/net-misc/dhcpcd/dhcpcd-7.2.5.ebuild b/net-misc/dhcpcd/dhcpcd-7.2.5.ebuild
new file mode 100644
index 0000000..5cc66a1
--- /dev/null
+++ b/net-misc/dhcpcd/dhcpcd-7.2.5.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/dhcpcd/dhcpcd-6.8.2.ebuild,v 1.1 2015/05/05 13:20:12 williamh Exp $
+
+EAPI=5
+
+MY_P="${P/_alpha/-alpha}"
+MY_P="${MY_P/_beta/-beta}"
+MY_P="${MY_P/_rc/-rc}"
+SRC_URI="https://github.com/NetworkConfiguration/${PN}/archive/refs/tags/${MY_P}.tar.xz"
+KEYWORDS="*"
+S="${WORKDIR}/${MY_P}"
+
+inherit cros-sanitizers eutils systemd toolchain-funcs user
+
+DESCRIPTION="A fully featured, yet light weight RFC2131 compliant DHCP client"
+HOMEPAGE="http://roy.marples.name/projects/dhcpcd/"
+LICENSE="BSD-2"
+SLOT="0"
+IUSE="elibc_glibc +embedded ipv6 kernel_linux +udev +dbus"
+
+COMMON_DEPEND="udev? ( virtual/udev )
+		dbus? ( sys-apps/dbus )"
+DEPEND="${COMMON_DEPEND}"
+RDEPEND="${COMMON_DEPEND}"
+
+src_prepare()
+{
+	epatch "${FILESDIR}"/patches/${P}-Optionally-ARP-for-gateway-IP-address.patch
+	epatch "${FILESDIR}"/patches/${P}-Teach-DHCP-client-to-do-unicast-ARP-for-gateway.patch
+	epatch "${FILESDIR}"/patches/${P}-Fix-dhcpcd-running-as-a-regular-user.patch
+	epatch "${FILESDIR}"/patches/${P}-Allow-lease-file-to-be-set-on-command-line.patch
+	epatch "${FILESDIR}"/patches/${P}-Be-more-permissive-on-NAKs.patch
+	epatch "${FILESDIR}"/patches/${P}-Accept-an-ACK-after-a-NAK.patch
+	epatch "${FILESDIR}"/patches/${P}-Track-and-validate-disputed-addresses.patch
+	epatch "${FILESDIR}"/patches/${P}-Fix-OOB-read-in-dhcpcd.patch
+	epatch "${FILESDIR}"/patches/${P}-Merge-in-DHCP-options-from-the-original-offer.patch
+	epatch "${FILESDIR}"/patches/${P}-Add-RPC-support-for-DHCPv4-client.patch
+	epatch "${FILESDIR}"/patches/${P}-Add-ability-to-disable-hook-scripts.patch
+	epatch "${FILESDIR}"/patches/${P}-Improve-debugability.patch
+	epatch "${FILESDIR}"/patches/${P}-Add-DBus-RPC-support.patch
+	epatch "${FILESDIR}"/patches/${P}-ChromiumOS-DHCPv6-support.patch
+	epatch "${FILESDIR}"/patches/${P}-Ensure-gateway-probe-is-broadcast.patch
+	epatch "${FILESDIR}"/patches/${P}-Change-vendor_encapsulated_options-to-binhex.patch
+	epatch "${FILESDIR}"/patches/${P}-Handle-DHCP-iSNS-option.patch
+	epatch "${FILESDIR}"/patches/${P}-Send-more-DHCPv6-options-over-DBus.patch
+	epatch "${FILESDIR}"/patches/${P}-Add-more-ARP-related-info-to-logs.patch
+}
+
+src_configure()
+{
+	sanitizers-setup-env
+
+	local dev hooks
+	use udev || dev="--without-dev --without-udev"
+	if ! use dbus ; then
+		hooks="--with-hook=ntp.conf"
+		use elibc_glibc && hooks="${hooks} --with-hook=yp.conf"
+	fi
+	econf \
+		--prefix= \
+		--libexecdir=/lib/dhcpcd \
+		--dbdir=/var/lib/dhcpcd \
+		--rundir=/run/dhcpcd \
+		"$(use_enable embedded)" \
+		"$(use_enable ipv6)" \
+		"$(use_enable dbus)" \
+		${dev} \
+		CC="$(tc-getCC)" \
+		${hooks}
+	# Update DUID file path so it is writable by dhcp user.
+	echo '#define DUID DBDIR "/" PACKAGE ".duid"' >> "${S}/config.h"
+}
+
+src_install()
+{
+	default
+	newinitd "${FILESDIR}"/${PN}.initd ${PN}
+	systemd_dounit "${FILESDIR}"/${PN}.service
+}
+
+pkg_preinst()
+{
+	enewuser "dhcp"
+	enewgroup "dhcp"
+}
+
+pkg_postinst()
+{
+	# Upgrade the duid file to the new format if needed
+	local old_duid="${ROOT}"/var/lib/dhcpcd/dhcpcd.duid
+	local new_duid="${ROOT}"/etc/dhcpcd.duid
+	if [ -e "${old_duid}" ] && ! grep -q '..:..:..:..:..:..' "${old_duid}"; then
+		sed -i -e 's/\(..\)/\1:/g; s/:$//g' "${old_duid}"
+	fi
+
+	# Move the duid to /etc, a more sensible location
+	if [[ -e "${old_duid}" && ! -e "${new_duid}" ]]; then
+		cp -p "${old_duid}" "${new_duid}"
+	fi
+
+	if [ -z "${REPLACING_VERSIONS}" ]; then
+		elog
+		elog "dhcpcd has zeroconf support active by default."
+		elog "This means it will always obtain an IP address even if no"
+		elog "DHCP server can be contacted, which will break any existing"
+		elog "failover support you may have configured in your net configuration."
+		elog "This behaviour can be controlled with the noipv4ll configuration"
+		elog "file option or the -L command line switch."
+		elog "See the dhcpcd and dhcpcd.conf man pages for more details."
+
+		elog
+		elog "Dhcpcd has duid enabled by default, and this may cause issues"
+		elog "with some dhcp servers. For more information, see"
+		elog "https://bugs.gentoo.org/show_bug.cgi?id=477356"
+	fi
+
+	if ! has_version net-dns/bind-tools; then
+		elog
+		elog "If you activate the lookup-hostname hook to look up your hostname"
+		elog "using the dns, you need to install net-dns/bind-tools."
+	fi
+}
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Accept-an-ACK-after-a-NAK.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Accept-an-ACK-after-a-NAK.patch
new file mode 100644
index 0000000..b7e231dc
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Accept-an-ACK-after-a-NAK.patch
@@ -0,0 +1,103 @@
+From 736c33730f553737e9842f2699f52aa35d06baf1 Mon Sep 17 00:00:00 2001
+From: Paul Stewart <pstew@chromium.org>
+Date: Mon, 31 May 2021 15:45:01 +0000
+Subject: [PATCH 06/19] Accept an ACK after a NAK
+
+When a NAK is received, wait for a response interval before
+acting on it.  In doing so, this allows for networks that
+may have duelling DHCP servers which both consider themselves
+authoritative on a network.  Since other DHCP clients also
+act in a similar manner, issues of this sort end up undetected
+and network administrators thus consider this situation nominal.
+
+BUG=chromium:384897
+TEST=New network_DhcpNak test subcase in CL:208214
+
+Reviewed-on: https://chromium-review.googlesource.com/208207
+---
+ src/dhcp.c | 49 ++++++++++++++++++++++++++++++-------------------
+ 1 file changed, 30 insertions(+), 19 deletions(-)
+
+diff --git a/src/dhcp.c b/src/dhcp.c
+index 4590958c..782eb231 100644
+--- a/src/dhcp.c
++++ b/src/dhcp.c
+@@ -3095,6 +3095,30 @@ dhcp_redirect_dhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+ 	}
+ }
+ 
++static void
++handle_nak(void *arg)
++{
++	struct interface *ifp = arg;
++	struct dhcp_state *state = D_STATE(ifp);
++
++	loginfox("%s: Handling deferred NAK", ifp->name);
++	if (!(ifp->ctx->options & DHCPCD_TEST)) {
++		dhcp_drop(ifp, "NAK");
++		unlink(state->leasefile);
++	}
++
++	/* If we constantly get NAKS then we should slowly back off */
++	eloop_timeout_add_sec(ifp->ctx->eloop,
++			      state->nakoff, dhcp_discover, ifp);
++	if (state->nakoff == 0)
++		state->nakoff = 1;
++	else {
++		state->nakoff *= 2;
++		if (state->nakoff > NAKOFF_MAX)
++			state->nakoff = NAKOFF_MAX;
++	}
++}
++
+ static void
+ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+     const struct in_addr *from)
+@@ -3266,31 +3290,17 @@ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+ 	}
+ 
+ 	if (type == DHCP_NAK) {
+-		/* We should restart on a NAK */
+-		LOGDHCP(logwarnx, "NAK:");
+-		if ((msg = get_option_string(ifp->ctx,
+-		    bootp, bootp_len, DHO_MESSAGE)))
++		if ((msg = get_option_string(ifp->ctx, bootp,
++					     bootp_len, DHO_MESSAGE)))
+ 		{
+ 			logwarnx("%s: message: %s", ifp->name, msg);
+ 			free(msg);
+ 		}
+ 		if (state->state == DHS_INFORM) /* INFORM should not be NAKed */
+ 			return;
+-		if (!(ifp->ctx->options & DHCPCD_TEST)) {
+-			dhcp_drop(ifp, "NAK");
+-			unlink(state->leasefile);
+-		}
+-
+-		/* If we constantly get NAKS then we should slowly back off */
+-		eloop_timeout_add_sec(ifp->ctx->eloop,
+-		    state->nakoff, dhcp_discover, ifp);
+-		if (state->nakoff == 0)
+-			state->nakoff = 1;
+-		else {
+-			state->nakoff *= 2;
+-			if (state->nakoff > NAKOFF_MAX)
+-				state->nakoff = NAKOFF_MAX;
+-		}
++                LOGDHCP(logwarnx, "NAK (deferred)");
++		eloop_timeout_add_sec(ifp->ctx->eloop, DHCP_BASE,
++                                      handle_nak, ifp);
+ 		return;
+ 	}
+ 
+@@ -3423,6 +3433,7 @@ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+ 			return;
+ 		}
+ 		eloop_timeout_delete(ifp->ctx->eloop, send_discover, ifp);
++		eloop_timeout_delete(ifp->ctx->eloop, handle_nak, ifp);
+ 		/* We don't request BOOTP addresses */
+ 		if (type) {
+ 			/* We used to ARP check here, but that seems to be in
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Add-DBus-RPC-support.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Add-DBus-RPC-support.patch
new file mode 100644
index 0000000..dc9f5bb
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Add-DBus-RPC-support.patch
@@ -0,0 +1,1469 @@
+From 98f89ca39060eb3bffb9140f7dacad69d7a9a432 Mon Sep 17 00:00:00 2001
+From: Peter Qiu <zqiu@chromium.org>
+Date: Fri, 11 Jun 2021 13:14:35 +0000
+Subject: [PATCH 13/19] Add DBus RPC support
+
+Porting the DBus support from version 5.1.4 and allow it to be
+configurable through the package configuration. Removed the unused
+and incomplete implemention for DBus method GetInterfaces and GetStatus.
+
+Also: update the default lease file name to tailor around the
+expectation of shill ("dhcpcd-%dev.lease).
+
+Also: update the config file to meet shill's expectation.
+
+Author: Sam Leffler <sleffler@google.com>
+Author: Nathan Williams <njw@chromium.org>
+Author: Jorge Lucangeli Obes <jorgelo@chromium.org>
+Author: Paul Stewart <pstew@chromium.org>
+Review URL: http://codereview.chromium.org/2428004
+Review URL: http://codereview.chromium.org/2851022
+Review URL: http://codereview.chromium.org/2851023
+Review URL: http://codereview.chromium.org/2865017
+Review URL: http://codereview.chromium.org/2965010
+Review URL: http://codereview.chromium.org/2957010
+Review URL: http://codereview.chromium.org/3060016
+Reviewed-on: http://gerrit.chromium.org/gerrit/2228
+Reviewed-on: https://gerrit.chromium.org/gerrit/22597
+Reviewed-on: https://gerrit.chromium.org/gerrit/36716
+Reviewed-on: https://gerrit.chromium.org/gerrit/38183
+Reviewed-on: https://gerrit.chromium.org/gerrit/59967
+Reviewed-on: https://chromium-review.googlesource.com/178462
+Reviewed-on: https://chromium-review.googlesource.com/185086
+Reviewed-on: https://chromium-review.googlesource.com/195269
+Reviewed-on: https://chromium-review.googlesource.com/259072
+---
+ configure                       |  12 +
+ src/Makefile                    |  25 +-
+ src/dbus/dbus-dict.c            | 249 ++++++++++++
+ src/dbus/dbus-dict.h            |  43 +++
+ src/dbus/dhcpcd-dbus.conf       |  21 ++
+ src/dbus/org.chromium.dhcpcd.in |   4 +
+ src/dbus/rpc-dbus.c             | 649 ++++++++++++++++++++++++++++++++
+ src/dbus/test/introspection     |   9 +
+ src/dbus/test/monitor           |  19 +
+ src/dhcp-common.c               |  32 +-
+ src/dhcp.c                      |   9 +-
+ src/dhcpcd-definitions.conf     |   2 +-
+ src/dhcpcd.c                    |  55 ++-
+ src/dhcpcd.conf                 |  18 +-
+ src/dhcpcd.h                    |   5 +
+ src/if-linux.c                  |   3 +
+ src/logerr.c                    |   2 +-
+ 17 files changed, 1113 insertions(+), 44 deletions(-)
+ create mode 100644 src/dbus/dbus-dict.c
+ create mode 100644 src/dbus/dbus-dict.h
+ create mode 100644 src/dbus/dhcpcd-dbus.conf
+ create mode 100644 src/dbus/org.chromium.dhcpcd.in
+ create mode 100644 src/dbus/rpc-dbus.c
+ create mode 100755 src/dbus/test/introspection
+ create mode 100755 src/dbus/test/monitor
+
+diff --git a/configure b/configure
+index 66a96040..76a33788 100755
+--- a/configure
++++ b/configure
+@@ -31,6 +31,7 @@ AUTH=
+ POLL=
+ SMALL=
+ STATUSARG=
++DBUS=
+ 
+ DHCPCD_DEFS=dhcpcd-definitions.conf
+ 
+@@ -63,6 +64,8 @@ for x do
+ 	--enable-embedded) EMBEDDED=yes;;
+ 	--disable-auth) AUTH=no;;
+ 	--enable-auth) AUTH=yes;;
++	--enable-dbus) DBUS=yes;;
++	--disable-dbus) DBUS=no;;
+ 	--prefix) PREFIX=$var;;
+ 	--sysconfdir) SYSCONFDIR=$var;;
+ 	--bindir|--sbindir) SBINDIR=$var;;
+@@ -503,6 +506,15 @@ if [ -z "$INET6" -o "$INET6" = yes -o -z "$AUTH" -o "$AUTH" = yes ]; then
+ 	echo "CRYPT_SRCS+=	\${MD5_SRC} \${SHA256_SRC}" >>$CONFIG_MK
+ fi
+ 
++if [ "$DBUS" = yes ]; then
++	echo "DBUS_SUPPORT=	yes" >>$CONFIG_MK
++	echo "DBUSINSTALL=	_dbusinstall" >>$CONFIG_MK
++	echo "CPPFLAGS+=	-DPASSIVE_MODE" >>$CONFIG_MK
++	echo "DHCPCD_SRCS+=	dbus/dbus-dict.c dbus/rpc-dbus.c" >>$CONFIG_MK
++else
++	echo "DHCPCD_SRCS+=	rpc-stub.c" >>$CONFIG_MK
++fi
++
+ echo "Using compiler .. $CC"
+ # Add CPPFLAGS and CFLAGS to CC for testing features
+ XCC="$CC `$SED -n -e 's/CPPFLAGS+=*\(.*\)/\1/p' $CONFIG_MK`"
+diff --git a/src/Makefile b/src/Makefile
+index d5b100a8..4b280ea0 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -3,7 +3,8 @@
+ PROG=		dhcpcd
+ SRCS=		common.c control.c dhcpcd.c duid.c eloop.c logerr.c
+ SRCS+=		if.c if-options.c sa.c route.c
+-SRCS+=		dhcp-common.c rpc-stub.c
++SRCS+=		dhcp-common.c
++PKG_CONFIG ?= pkg-config
+ 
+ CFLAGS?=	-O2
+ SUBDIRS+=	${MKDIRS}
+@@ -29,6 +30,17 @@ CLEANFILES=	dhcpcd.conf.5 dhcpcd.8
+ FILES=		dhcpcd.conf
+ FILESDIR=	${SYSCONFDIR}
+ 
++ifeq ($(DBUS_SUPPORT),yes)
++FILES+= 	dbus/dhcpcd-dbus.conf
++
++DBUSCFLAGS := $(shell $(PKG_CONFIG) --cflags dbus-1)
++DBUSLIBS := $(shell $(PKG_CONFIG) --libs dbus-1)
++DBUSDIR= ${SYSCONFDIR}/dbus-1/system.d
++
++CFLAGS+= ${DBUSCFLAGS}
++LDADD+= ${DBUSLIBS}
++endif
++
+ DEPEND!=	test -e .depend && echo ".depend" || echo ""
+ 
+ CLEANFILES+=	*.tar.xz
+@@ -44,7 +56,7 @@ CLEANFILES+=	*.tar.xz
+ 		${SED_STATUSARG} \
+ 		$< > $@
+ 
+-all: ${TOP}/config.h ${PROG} ${SCRIPTS} ${MAN5} ${MAN8}
++all: ${TOP}/config.h ${PROG} ${SCRIPTS} ${MAN5} ${MAN8} ${FILES}
+ 	for x in ${SUBDIRS}; do cd $$x; ${MAKE} $@ || exit $$?; cd ..; done
+ 
+ dev:
+@@ -92,7 +104,12 @@ _maninstall: ${MAN5} ${MAN8}
+ 	${INSTALL} -d ${DESTDIR}${MANDIR}/man8
+ 	${INSTALL} -m ${MANMODE} ${MAN8} ${DESTDIR}${MANDIR}/man8
+ 
+-_confinstall:
++_dbusinstall: dbus/dhcpcd-dbus.conf
++	${INSTALL} -d ${DESTDIR}${DBUSDIR}
++	${INSTALL} -m ${CONFMODE} dbus/dhcpcd-dbus.conf \
++		${DESTDIR}${DBUSDIR}/dhcpcd.conf
++
++_confinstall: ${DBUSINSTALL}
+ 	${INSTALL} -d ${DESTDIR}${SYSCONFDIR}
+ 	# Install a new default config if not present
+ 	test -e ${DESTDIR}${SYSCONFDIR}/dhcpcd.conf || \
+@@ -126,7 +143,7 @@ _confinstall:
+ 	
+ eginstall:
+ 
+-install: proginstall _maninstall _confinstall eginstall
++install: proginstall _confinstall eginstall
+ 
+ clean:
+ 	rm -f ${OBJS} ${PROG} ${PROG}.core ${CLEANFILES}
+diff --git a/src/dbus/dbus-dict.c b/src/dbus/dbus-dict.c
+new file mode 100644
+index 00000000..8e3cf4e4
+--- /dev/null
++++ b/src/dbus/dbus-dict.c
+@@ -0,0 +1,249 @@
++/*
++ * dhcpcd - DHCP client daemon
++ * Copyright (c) 2006-2015 Roy Marples <roy@marples.name>
++ * All rights reserved
++
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the above copyright
++ *    notice, this list of conditions and the following disclaimer.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ *    notice, this list of conditions and the following disclaimer in the
++ *    documentation and/or other materials provided with the distribution.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++ * SUCH DAMAGE.
++ */
++
++#include <arpa/inet.h>
++
++#include <ctype.h>
++#include <stdlib.h>
++#include <string.h>
++#include <syslog.h>
++
++#include <dbus/dbus.h>
++
++#include "../config.h"
++#include "dbus-dict.h"
++
++static dbus_bool_t
++append_sanitized_string(DBusMessageIter *iter, const char *value)
++{
++	dbus_bool_t ret;
++	size_t i, len = strlen(value);
++	char *sanitized_value = NULL;
++
++	for (i = 0; i < len; i++) {
++		if (isascii(value[i]) || isprint(value[i])) {
++			if (sanitized_value)
++				sanitized_value[i] = value[i];
++		} else {
++			if (sanitized_value == NULL) {
++				sanitized_value = malloc(len + 1);
++				if (sanitized_value == NULL) {
++					syslog(LOG_ERR, "DBus string parameter "
++					       "sanitization failed due to "
++					       "malloc failure");
++					return FALSE;
++				}
++				memcpy(sanitized_value, value, i);
++			}
++			sanitized_value[i] = '?';
++		}
++	}
++	if (sanitized_value) {
++		syslog(LOG_ERR, "DBus string parameter sanitization"
++                       " was invoked");
++		sanitized_value[i] = '\0';
++		ret = dbus_message_iter_append_basic(iter, DBUS_TYPE_STRING,
++	            &sanitized_value);
++
++		free(sanitized_value);
++	} else {
++		ret = dbus_message_iter_append_basic(iter, DBUS_TYPE_STRING,
++	            &value);
++	}
++
++	return ret;
++}
++
++static int
++append_config_value(DBusMessageIter *entry, int type,
++    const char *data)
++{
++	int retval;
++	DBusMessageIter var;
++	unsigned char byte;
++	dbus_uint16_t u16;
++	dbus_uint32_t u32;
++	dbus_int16_t i16;
++	dbus_int32_t i32;
++	struct in_addr in;
++
++	retval = -1;
++	switch (type) {
++	case DBUS_TYPE_BOOLEAN:
++		if (*data == '0' || *data == '\0')
++			u32 = 0;
++		else
++			u32 = 1;
++		dbus_message_iter_open_container(entry, DBUS_TYPE_VARIANT,
++		    DBUS_TYPE_BOOLEAN_AS_STRING, &var);
++		if (dbus_message_iter_append_basic(&var,
++			DBUS_TYPE_BOOLEAN, &u32))
++			retval = 0;
++		break;
++	case DBUS_TYPE_BYTE:
++		byte = strtoul(data, NULL, 0);
++		dbus_message_iter_open_container(entry, DBUS_TYPE_VARIANT,
++		    DBUS_TYPE_BYTE_AS_STRING, &var);
++		if (dbus_message_iter_append_basic(&var, DBUS_TYPE_BYTE,
++			&byte))
++			retval = 0;
++		break;
++	case DBUS_TYPE_STRING:
++		dbus_message_iter_open_container(entry, DBUS_TYPE_VARIANT,
++		    DBUS_TYPE_STRING_AS_STRING, &var);
++		if (append_sanitized_string(&var, data))
++			retval = 0;
++		break;
++	case DBUS_TYPE_INT16:
++		i16 = strtol(data, NULL, 0);
++		dbus_message_iter_open_container(entry, DBUS_TYPE_VARIANT,
++		    DBUS_TYPE_INT16_AS_STRING, &var);
++		if (dbus_message_iter_append_basic(&var,
++			DBUS_TYPE_INT16, &i16))
++			retval = 0;
++		break;
++	case DBUS_TYPE_UINT16:
++		u16 = strtoul(data, NULL, 0);
++		dbus_message_iter_open_container(entry, DBUS_TYPE_VARIANT,
++		    DBUS_TYPE_UINT16_AS_STRING, &var);
++		if (dbus_message_iter_append_basic(&var,
++			DBUS_TYPE_UINT16, &u16))
++			retval = 0;
++		break;
++	case DBUS_TYPE_INT32:
++		i32 = strtol(data, NULL, 0);
++		dbus_message_iter_open_container(entry, DBUS_TYPE_VARIANT,
++		    DBUS_TYPE_INT32_AS_STRING, &var);
++		if (dbus_message_iter_append_basic(&var,
++			DBUS_TYPE_INT32, &i32))
++			retval = 0;
++		break;
++	case DBUS_TYPE_UINT32:
++		if (strchr(data, '.') != NULL && inet_aton(data, &in) == 1)
++			u32 = in.s_addr;
++		else
++			u32 = strtoul(data, NULL, 0);
++		dbus_message_iter_open_container(entry, DBUS_TYPE_VARIANT,
++		    DBUS_TYPE_UINT32_AS_STRING, &var);
++		if (dbus_message_iter_append_basic(&var,
++			DBUS_TYPE_UINT32, &u32))
++			retval = 0;
++		break;
++	default:
++		retval = 1;
++		break;
++	}
++	if (retval == 0)
++		dbus_message_iter_close_container(entry, &var);
++	else if (retval == 1)
++		retval = 0;
++
++	return retval;
++}
++
++static int
++append_config_array(DBusMessageIter *entry, int type, const char *data)
++{
++	int retval;
++	char *ns, *p, *tok;
++	const char *tsa, *ts;
++	DBusMessageIter var, array;
++	dbus_bool_t ok;
++	dbus_uint32_t u32;
++	struct in_addr in;
++
++	switch (type) {
++	case DBUS_TYPE_STRING:
++		tsa = DBUS_TYPE_ARRAY_AS_STRING DBUS_TYPE_STRING_AS_STRING;
++		ts = DBUS_TYPE_STRING_AS_STRING;
++		break;
++	case DBUS_TYPE_UINT32:
++		tsa = DBUS_TYPE_ARRAY_AS_STRING DBUS_TYPE_UINT32_AS_STRING;
++		ts = DBUS_TYPE_UINT32_AS_STRING;
++		break;
++	default:
++		return -1;
++	}
++
++	ns = p = strdup(data);
++	if (ns == NULL)
++		return -1;
++	retval = 0;
++
++	dbus_message_iter_open_container(entry, DBUS_TYPE_VARIANT, tsa, &var);
++	dbus_message_iter_open_container(&var, DBUS_TYPE_ARRAY, ts, &array);
++	while ((tok = strsep(&p, " ")) != NULL) {
++		if (*tok == '\0')
++			continue;
++		switch(type) {
++		case DBUS_TYPE_STRING:
++			ok = append_sanitized_string(&array, tok);
++			break;
++		case DBUS_TYPE_UINT32:
++			if (strchr(tok, '.') != NULL &&
++			    inet_aton(tok, &in) == 1)
++				u32 = in.s_addr;
++			else
++				u32 = strtoul(tok, NULL, 0);
++			ok = dbus_message_iter_append_basic(&array,
++			    DBUS_TYPE_UINT32, &u32);
++			break;
++		default:
++			ok = FALSE;
++			break;
++		}
++		if (!ok)
++			break;
++	}
++	dbus_message_iter_close_container(&var, &array);
++	dbus_message_iter_close_container(entry, &var);
++	free(ns);
++	return retval;
++}
++
++int
++dict_append_config_item(DBusMessageIter *iter, const struct o_dbus *op,
++    const char *data)
++{
++	int retval;
++	DBusMessageIter entry;
++
++	retval = 0;
++	if (*data == '\0')
++		return retval;
++	dbus_message_iter_open_container(iter,
++	    DBUS_TYPE_DICT_ENTRY,
++	    NULL,
++	    &entry);
++	append_sanitized_string(&entry, op->name);
++	if (op->type == DBUS_TYPE_ARRAY)
++		retval = append_config_array(&entry, op->sub_type, data);
++	else
++		retval = append_config_value(&entry, op->type, data);
++	dbus_message_iter_close_container(iter, &entry);
++	return retval;
++}
+diff --git a/src/dbus/dbus-dict.h b/src/dbus/dbus-dict.h
+new file mode 100644
+index 00000000..735f2592
+--- /dev/null
++++ b/src/dbus/dbus-dict.h
+@@ -0,0 +1,43 @@
++/*
++ * dhcpcd - DHCP client daemon
++ * Copyright (c) 2006-2015 Roy Marples <roy@marples.name>
++ * All rights reserved
++
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the above copyright
++ *    notice, this list of conditions and the following disclaimer.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ *    notice, this list of conditions and the following disclaimer in the
++ *    documentation and/or other materials provided with the distribution.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++ * SUCH DAMAGE.
++ */
++
++#ifndef DBUS_DICT_H
++#define DBUS_DICT_H
++
++#include <dbus/dbus.h>
++
++struct o_dbus {
++	const char *var;
++	int type;
++	int sub_type;
++	const char *name;
++};
++
++int dict_append_config_item(DBusMessageIter *,
++                            const struct o_dbus *, const char *);
++
++#endif
+diff --git a/src/dbus/dhcpcd-dbus.conf b/src/dbus/dhcpcd-dbus.conf
+new file mode 100644
+index 00000000..766cc598
+--- /dev/null
++++ b/src/dbus/dhcpcd-dbus.conf
+@@ -0,0 +1,21 @@
++<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
++ "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
++<busconfig>
++  <!-- Both root and dhcp can own the dhcpcd service -->
++  <policy user="root">
++    <allow own="org.chromium.dhcpcd"/>
++    <allow send_interface="org.chromium.dhcpcd" />
++    <allow send_destination="org.chromium.dhcpcd" />
++  </policy>
++  <policy user="dhcp">
++    <allow own="org.chromium.dhcpcd"/>
++    <allow send_interface="org.chromium.dhcpcd" />
++    <allow send_destination="org.chromium.dhcpcd" />
++  </policy>
++
++  <policy context="default">
++    <allow send_interface="org.chromium.dhcpcd" />
++    <allow send_interface="org.freedesktop.DBus.Introspectable" />
++    <allow send_destination="org.chromium.dhcpcd" />
++</policy>
++</busconfig>
+diff --git a/src/dbus/org.chromium.dhcpcd.in b/src/dbus/org.chromium.dhcpcd.in
+new file mode 100644
+index 00000000..f2b01f38
+--- /dev/null
++++ b/src/dbus/org.chromium.dhcpcd.in
+@@ -0,0 +1,4 @@
++[D-BUS Service]
++Name=org.chromium.dhcpcd
++Exec=@BINDIR@/dhcpcd
++User=root
+diff --git a/src/dbus/rpc-dbus.c b/src/dbus/rpc-dbus.c
+new file mode 100644
+index 00000000..bea71b22
+--- /dev/null
++++ b/src/dbus/rpc-dbus.c
+@@ -0,0 +1,649 @@
++/*
++ * dhcpcd - DHCP client daemon
++ * Copyright (c) 2006-2015 Roy Marples <roy@marples.name>
++ * All rights reserved
++
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the above copyright
++ *    notice, this list of conditions and the following disclaimer.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ *    notice, this list of conditions and the following disclaimer in the
++ *    documentation and/or other materials provided with the distribution.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++ * SUCH DAMAGE.
++ */
++
++#include <errno.h>
++#include <poll.h>
++#include <signal.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++#include <unistd.h>
++
++#include <dbus/dbus.h>
++
++#include "../config.h"
++#include "../eloop.h"
++#include "../dhcp.h"
++#include "../logerr.h"
++#include "../rpc-interface.h"
++#include "dbus-dict.h"
++
++#define SERVICE_NAME	"org.chromium.dhcpcd"
++#define SERVICE_PATH    "/org/chromium/dhcpcd"
++#define S_EINVAL	SERVICE_NAME ".InvalidArgument"
++#define S_ARGS		"Not enough arguments"
++
++static DBusConnection *connection;
++static struct dhcpcd_ctx *dhcpcd_ctx;
++
++static const char dhcpcd_introspection_xml[] =
++    "    <method name=\"GetVersion\">\n"
++    "      <arg name=\"version\" direction=\"out\" type=\"s\"/>\n"
++    "    </method>\n"
++    "    <method name=\"Rebind\">\n"
++    "      <arg name=\"interface\" direction=\"in\" type=\"s\"/>\n"
++    "    </method>\n"
++    "    <method name=\"Release\">\n"
++    "      <arg name=\"interface\" direction=\"in\" type=\"s\"/>\n"
++    "    </method>\n"
++    "    <method name=\"Stop\">\n"
++    "      <arg name=\"interface\" direction=\"in\" type=\"s\"/>\n"
++    "    </method>\n"
++    "    <signal name=\"Event\">\n"
++    "      <arg name=\"configuration\" type=\"usa{sv}\"/>\n"
++    "    </signal>\n"
++    "    <signal name=\"StatusChanged\">\n"
++    "      <arg name=\"status\" type=\"us\"/>\n"
++    "    </signal>\n";
++
++static const char service_watch_rule[] = "interface=" DBUS_INTERFACE_DBUS
++	",type=signal,member=NameOwnerChanged";
++
++static const char introspection_header_xml[] =
++    "<!DOCTYPE node PUBLIC \"-//freedesktop//"
++    "DTD D-BUS Object Introspection 1.0//EN\"\n"
++    "\"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd\">\n"
++    "<node name=\"" SERVICE_PATH "\">\n"
++    "  <interface name=\"org.freedesktop.DBus.Introspectable\">\n"
++    "    <method name=\"Introspect\">\n"
++    "      <arg name=\"data\" direction=\"out\" type=\"s\"/>\n"
++    "    </method>\n"
++    "  </interface>\n"
++    "  <interface name=\"" SERVICE_NAME "\">\n";
++
++static const char introspection_footer_xml[] =
++    "  </interface>\n"
++    "</node>\n";
++
++static const struct o_dbus dhos[] = {
++	{ "ip_address=", DBUS_TYPE_UINT32, 0, "IPAddress" },
++	{ "server_name=", DBUS_TYPE_STRING, 0, "ServerName"},
++	{ "subnet_mask=", DBUS_TYPE_UINT32, 0, "SubnetMask" },
++	{ "subnet_cidr=", DBUS_TYPE_BYTE, 0, "SubnetCIDR" },
++	{ "network_number=", DBUS_TYPE_UINT32, 0, "NetworkNumber" },
++	{ "classless_static_routes=", DBUS_TYPE_STRING, 0,
++	  "ClasslessStaticRoutes" },
++	{ "ms_classless_static_routes=", DBUS_TYPE_STRING, 0,
++	  "MSClasslessStaticRoutes" },
++	{ "static_routes=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "StaticRoutes"} ,
++	{ "routers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "Routers" },
++	{ "time_offset=", DBUS_TYPE_UINT32, 0, "TimeOffset" },
++	{ "time_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "TimeServers" },
++	{ "ien116_name_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "IEN116NameServers" },
++	{ "domain_name_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "DomainNameServers" },
++	{ "log_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "LogServers" },
++	{ "cookie_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "CookieServers" },
++	{ "lpr_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "LPRServers" },
++	{ "impress_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "ImpressServers" },
++	{ "resource_location_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "ResourceLocationServers" },
++	{ "host_name=", DBUS_TYPE_STRING, 0, "Hostname" },
++	{ "boot_size=", DBUS_TYPE_UINT16, 0, "BootSize" },
++	{ "merit_dump=", DBUS_TYPE_STRING, 0, "MeritDump" },
++	{ "domain_name=", DBUS_TYPE_STRING, 0, "DomainName" },
++	{ "swap_server=", DBUS_TYPE_UINT32, 0, "SwapServer" },
++	{ "root_path=", DBUS_TYPE_STRING, 0, "RootPath" },
++	{ "extensions_path=", DBUS_TYPE_STRING, 0, "ExtensionsPath" },
++	{ "ip_forwarding=", DBUS_TYPE_BOOLEAN, 0, "IPForwarding" },
++	{ "non_local_source_routing=", DBUS_TYPE_BOOLEAN, 0,
++	  "NonLocalSourceRouting" },
++	{ "policy_filter=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "PolicyFilter" },
++	{ "max_dgram_reassembly=", DBUS_TYPE_INT16, 0,
++	  "MaxDatagramReassembly" },
++	{ "default_ip_ttl=", DBUS_TYPE_UINT16, 0, "DefaultIPTTL" },
++	{ "path_mtu_aging_timeout=", DBUS_TYPE_UINT32, 0,
++	  "PathMTUAgingTimeout" },
++	{ "path_mtu_plateau_table=" ,DBUS_TYPE_ARRAY, DBUS_TYPE_UINT16,
++	  "PolicyFilter"} ,
++	{ "interface_mtu=", DBUS_TYPE_UINT16, 0, "InterfaceMTU" },
++	{ "all_subnets_local=", DBUS_TYPE_BOOLEAN, 0, "AllSubnetsLocal" },
++	{ "broadcast_address=", DBUS_TYPE_UINT32, 0, "BroadcastAddress" },
++	{ "perform_mask_discovery=", DBUS_TYPE_BOOLEAN, 0,
++	  "PerformMaskDiscovery" },
++	{ "mask_supplier=", DBUS_TYPE_BOOLEAN, 0, "MaskSupplier" },
++	{ "router_discovery=", DBUS_TYPE_BOOLEAN, 0, "RouterDiscovery" },
++	{ "router_solicitiation_address=", DBUS_TYPE_UINT32, 0,
++	  "RouterSolicationAddress" },
++	{ "trailer_encapsulation=", DBUS_TYPE_BOOLEAN, 0,
++	  "TrailerEncapsulation" },
++	{ "arp_cache_timeout=", DBUS_TYPE_UINT32, 0, "ARPCacheTimeout" },
++	{ "ieee802_3_encapsulation=", DBUS_TYPE_UINT16, 0,
++	  "IEEE8023Encapsulation" },
++	{ "default_tcp_ttl=", DBUS_TYPE_BYTE, 0, "DefaultTCPTTL" },
++	{ "tcp_keepalive_interval=", DBUS_TYPE_UINT32, 0,
++	  "TCPKeepAliveInterval" },
++	{ "tcp_keepalive_garbage=", DBUS_TYPE_BOOLEAN, 0,
++	  "TCPKeepAliveGarbage" },
++	{ "nis_domain=", DBUS_TYPE_STRING, 0, "NISDomain" },
++	{ "nis_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "NISServers" },
++	{ "ntp_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "NTPServers" },
++	{ "vendor_encapsulated_options=", DBUS_TYPE_STRING, 0,
++	  "VendorEncapsulatedOptions" },
++	{ "netbios_name_servers=" ,DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "NetBIOSNameServers" },
++	{ "netbios_dd_server=", DBUS_TYPE_UINT32, 0, "NetBIOSDDServer" },
++	{ "netbios_node_type=", DBUS_TYPE_BYTE, 0, "NetBIOSNodeType" },
++	{ "netbios_scope=", DBUS_TYPE_STRING, 0, "NetBIOSScope" },
++	{ "font_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "FontServers" },
++	{ "x_display_manager=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "XDisplayManager" },
++	{ "dhcp_requested_address=", DBUS_TYPE_UINT32, 0,
++	  "DHCPRequestedAddress" },
++	{ "dhcp_lease_time=", DBUS_TYPE_UINT32, 0, "DHCPLeaseTime" },
++	{ "dhcp_option_overload=", DBUS_TYPE_BOOLEAN, 0,
++	  "DHCPOptionOverload" },
++	{ "dhcp_message_type=", DBUS_TYPE_BYTE, 0, "DHCPMessageType" },
++	{ "dhcp_server_identifier=", DBUS_TYPE_UINT32, 0,
++	  "DHCPServerIdentifier" },
++	{ "dhcp_message=", DBUS_TYPE_STRING, 0, "DHCPMessage" },
++	{ "dhcp_max_message_size=", DBUS_TYPE_UINT16, 0,
++	  "DHCPMaxMessageSize" },
++	{ "dhcp_renewal_time=", DBUS_TYPE_UINT32, 0, "DHCPRenewalTime" },
++	{ "dhcp_rebinding_time=", DBUS_TYPE_UINT32, 0, "DHCPRebindingTime" },
++	{ "nisplus_domain=", DBUS_TYPE_STRING, 0, "NISPlusDomain" },
++	{ "nisplus_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "NISPlusServers" },
++	{ "tftp_server_name=", DBUS_TYPE_STRING, 0, "TFTPServerName" },
++	{ "bootfile_name=", DBUS_TYPE_STRING, 0, "BootFileName" },
++	{ "mobile_ip_home_agent=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "MobileIPHomeAgent" },
++	{ "smtp_server=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "SMTPServer" },
++	{ "pop_server=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "POPServer" },
++	{ "nntp_server=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "NNTPServer" },
++	{ "www_server=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "WWWServer" },
++	{ "finger_server=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "FingerServer" },
++	{ "irc_server=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "IRCServer" },
++	{ "streettalk_server=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "StreetTalkServer" },
++	{ "streettalk_directory_assistance_server=", DBUS_TYPE_ARRAY,
++	  DBUS_TYPE_UINT32, "StreetTalkDirectoryAssistanceServer" },
++	{ "user_class=", DBUS_TYPE_STRING, 0, "UserClass" },
++	{ "new_fqdn_name=", DBUS_TYPE_STRING, 0, "FQDNName" },
++	{ "nds_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "NDSServers" },
++	{ "nds_tree_name=", DBUS_TYPE_STRING, 0, "NDSTreeName" },
++	{ "nds_context=", DBUS_TYPE_STRING, 0, "NDSContext" },
++	{ "bcms_controller_names=", DBUS_TYPE_STRING, 0,
++	  "BCMSControllerNames" },
++	{ "client_last_transaction_time=", DBUS_TYPE_UINT32, 0,
++	  "ClientLastTransactionTime" },
++	{ "associated_ip=", DBUS_TYPE_UINT32, 0, "AssociatedIP" },
++	{ "uap_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "UAPServers" },
++	{ "netinfo_server_address=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
++	  "NetinfoServerAddress" },
++	{ "netinfo_server_tag=", DBUS_TYPE_STRING, 0, "NetinfoServerTag" },
++	{ "default_url=", DBUS_TYPE_STRING, 0, "DefaultURL" },
++	{ "subnet_selection=", DBUS_TYPE_UINT32, 0, "SubnetSelection" },
++	{ "domain_search=", DBUS_TYPE_ARRAY, DBUS_TYPE_STRING,
++	  "DomainSearch" },
++	{ "wpad_url=", DBUS_TYPE_STRING, 0, "WebProxyAutoDiscoveryUrl" },
++	{ NULL, 0, 0, NULL }
++};
++
++static int
++append_config(DBusMessageIter *iter,
++    const char *prefix, char **env, ssize_t elen)
++{
++	char **eenv, *p;
++	const struct o_dbus *dhop;
++	size_t l, lp;
++	int retval;
++
++	retval = 0;
++	lp = strlen(prefix);
++	for (eenv = env + elen; env < eenv; env++) {
++		p = env[0];
++		for (dhop = dhos; dhop->var; dhop++) {
++			l = strlen(dhop->var);
++			if (strncmp(p, dhop->var, l) == 0) {
++				retval = dict_append_config_item(iter,
++				    dhop, p + l);
++				break;
++			}
++			if (strncmp(p, prefix, lp) == 0 &&
++			    strncmp(p + lp, dhop->var, l) == 0)
++			{
++				retval = dict_append_config_item(iter,
++				    dhop, p + l + lp);
++				break;
++			}
++		}
++		if (retval == -1)
++			break;
++	}
++	return retval;
++}
++
++static DBusHandlerResult
++get_dbus_error(DBusConnection *con, DBusMessage *msg,
++		  const char *name, const char *fmt, ...)
++{
++	char buffer[1024];
++	DBusMessage *reply;
++	va_list args;
++
++	va_start(args, fmt);
++	vsnprintf(buffer, sizeof(buffer), fmt, args);
++	va_end(args);
++	reply = dbus_message_new_error(msg, name, buffer);
++	dbus_connection_send(con, reply, NULL);
++	dbus_message_unref(reply);
++	return DBUS_HANDLER_RESULT_HANDLED;
++}
++
++static dbus_bool_t
++dbus_send_message(const struct interface *ifp, const char *reason,
++		  const char *prefix, struct bootp *bootp, size_t bootp_len)
++{
++	DBusMessage* msg;
++	DBusMessageIter args, dict;
++	int pid = getpid();
++	char **env = NULL;
++	ssize_t e, elen = 0;
++	int retval;
++	int success = FALSE;
++
++	loginfox("event %s on interface %s", reason, ifp->name);
++
++	msg = dbus_message_new_signal(SERVICE_PATH, SERVICE_NAME, "Event");
++	if (msg == NULL) {
++		logerrx("failed to make a configure message");
++		return FALSE;
++	}
++	dbus_message_iter_init_append(msg, &args);
++	dbus_message_iter_append_basic(&args, DBUS_TYPE_UINT32, &pid);
++	dbus_message_iter_append_basic(&args, DBUS_TYPE_STRING, &reason);
++	dbus_message_iter_open_container(&args, DBUS_TYPE_ARRAY,
++	    DBUS_DICT_ENTRY_BEGIN_CHAR_AS_STRING
++	    DBUS_TYPE_STRING_AS_STRING
++	    DBUS_TYPE_VARIANT_AS_STRING
++	    DBUS_DICT_ENTRY_END_CHAR_AS_STRING,
++	    &dict);
++	if (prefix == NULL || bootp == NULL)
++		retval = 0;
++	else {
++		e = dhcp_env(NULL, NULL, bootp, bootp_len, ifp);
++		if (e > 0) {
++			char *config_prefix = strdup(prefix);
++			if (config_prefix == NULL) {
++				logerrx("Memory exhausted (strdup)");
++				eloop_exit(dhcpcd_ctx->eloop, EXIT_FAILURE);
++			}
++			char *p = config_prefix + strlen(config_prefix) - 1;
++			if (p >= config_prefix && *p == '_')
++				*p = '\0';
++			env = calloc(e + 1, sizeof(char *));
++			if (env == NULL) {
++				logerrx("Memory exhausted (calloc)");
++				eloop_exit(dhcpcd_ctx->eloop, EXIT_FAILURE);
++			}
++			elen = dhcp_env(env, config_prefix,
++					bootp, bootp_len, ifp);
++			free(config_prefix);
++		}
++		retval = append_config(&dict, prefix, env, elen);
++	}
++
++	/* Release memory allocated for env. */
++	if (env) {
++		char **current = env;
++		while (*current)
++			free(*current++);
++		free(env);
++	}
++
++	dbus_message_iter_close_container(&args, &dict);
++	if (retval == 0) {
++		success = dbus_connection_send(connection, msg, NULL);
++		if (!success)
++			logerrx("failed to send dhcp to dbus");
++	} else
++		logerrx("failed to construct dbus message");
++	dbus_message_unref(msg);
++
++	return success;
++}
++
++static DBusHandlerResult
++introspect(DBusConnection *con, DBusMessage *msg)
++{
++	DBusMessage *reply;
++	char *xml;
++	size_t len;
++
++	len = sizeof(introspection_header_xml) - 1
++	    + sizeof(dhcpcd_introspection_xml) - 1
++	    + sizeof(introspection_footer_xml) - 1
++	    + 1; /* terminal \0 */
++	xml = malloc(len);
++	if (xml == NULL)
++		return DBUS_HANDLER_RESULT_HANDLED;
++	snprintf(xml, len, "%s%s%s",
++	    introspection_header_xml,
++	    dhcpcd_introspection_xml,
++	    introspection_footer_xml);
++	reply = dbus_message_new_method_return(msg);
++	dbus_message_append_args(reply,
++	    DBUS_TYPE_STRING, &xml,
++	    DBUS_TYPE_INVALID);
++	dbus_connection_send(con, reply, NULL);
++	dbus_message_unref(reply);
++	free(xml);
++	return DBUS_HANDLER_RESULT_HANDLED;
++}
++
++static DBusHandlerResult
++version(DBusConnection *con, DBusMessage *msg, const char *ver)
++{
++	DBusMessage *reply;
++
++	reply = dbus_message_new_method_return(msg);
++	dbus_message_append_args(reply,
++	    DBUS_TYPE_STRING, &ver,
++	    DBUS_TYPE_INVALID);
++	dbus_connection_send(con, reply, NULL);
++	dbus_message_unref(reply);
++	return DBUS_HANDLER_RESULT_HANDLED;
++}
++
++static DBusHandlerResult
++dbus_ack(DBusConnection *con, DBusMessage *msg)
++{
++	DBusMessage *reply;
++
++	reply = dbus_message_new_method_return(msg);
++	dbus_connection_send(con, reply, NULL);
++	dbus_message_unref(reply);
++	return DBUS_HANDLER_RESULT_HANDLED;
++}
++
++static DBusHandlerResult
++msg_handler(DBusConnection *con, DBusMessage *msg, __unused void *data)
++{
++#define	IsMethod(msg, method) \
++	dbus_message_is_method_call(msg, SERVICE_NAME, method)
++
++	if (dbus_message_is_method_call(msg, DBUS_INTERFACE_INTROSPECTABLE,
++					"Introspect")) {
++		return introspect(con, msg);
++	} else if (IsMethod(msg, "GetVersion")) {
++		return version(con, msg, VERSION);
++	} else if (IsMethod(msg, "Rebind")) {
++		const char *iface_name;
++		if (!dbus_message_get_args(msg, NULL,
++				   DBUS_TYPE_STRING, &iface_name,
++				   DBUS_TYPE_INVALID)) {
++			logerrx("Invalid arguments for Rebind");
++			return get_dbus_error(con, msg, S_EINVAL, S_ARGS);
++		}
++		dhcpcd_start_interface(dhcpcd_ctx, iface_name);
++		return dbus_ack(con, msg);
++	} else if (IsMethod(msg, "Release")) {
++		const char *iface_name;
++		if (!dbus_message_get_args(msg, NULL,
++				   DBUS_TYPE_STRING, &iface_name,
++				   DBUS_TYPE_INVALID)) {
++			logerrx("Invalid arguments for Release");
++			return get_dbus_error(con, msg, S_EINVAL, S_ARGS);
++		}
++		dhcpcd_release_ipv4(dhcpcd_ctx, iface_name);
++		return dbus_ack(con, msg);
++	} else if (IsMethod(msg, "Stop")) {
++		const char *iface_name;
++		if (!dbus_message_get_args(msg, NULL,
++				   DBUS_TYPE_STRING, &iface_name,
++				   DBUS_TYPE_INVALID)) {
++			logerrx("Invalid arguments for Stop");
++			return get_dbus_error(con, msg, S_EINVAL, S_ARGS);
++		}
++		dhcpcd_stop_interface(dhcpcd_ctx, iface_name);
++		(void) dbus_ack(con, msg);
++		eloop_exit(dhcpcd_ctx->eloop, EXIT_FAILURE);
++	} else if (dbus_message_is_signal(msg, DBUS_INTERFACE_LOCAL,
++					  "Disconnected")) {
++		dhcpcd_stop_interfaces(dhcpcd_ctx);
++		eloop_exit(dhcpcd_ctx->eloop, EXIT_FAILURE);
++	}
++	return get_dbus_error(con, msg, S_EINVAL, S_ARGS);
++#undef IsMethod
++}
++
++static void
++dbus_handle_event(DBusWatch *watch, int flags)
++{
++	dbus_watch_handle((DBusWatch *)watch, flags);
++
++	if (connection != NULL) {
++		dbus_connection_ref(connection);
++		while (dbus_connection_dispatch(connection) ==
++				DBUS_DISPATCH_DATA_REMAINS)
++				;
++		dbus_connection_unref(connection);
++	}
++}
++
++static void
++dbus_read_event(void *watch)
++{
++	dbus_handle_event((DBusWatch *)watch, DBUS_WATCH_READABLE);
++}
++
++static void
++dbus_write_event(void *watch)
++{
++	dbus_handle_event((DBusWatch *)watch, DBUS_WATCH_WRITABLE);
++}
++
++static dbus_bool_t
++add_watch(DBusWatch *watch, __unused void *data)
++{
++	int fd, flags;
++	void (*read_event)(void *) = NULL;
++	void *read_arg = NULL;
++	void (*write_event)(void *) = NULL;
++	void *write_arg = NULL;
++
++	fd = dbus_watch_get_unix_fd(watch);
++	flags = dbus_watch_get_flags(watch);
++	if (flags & DBUS_WATCH_READABLE) {
++		read_event = dbus_read_event;
++		read_arg = watch;
++	}
++	if (flags & DBUS_WATCH_WRITABLE) {
++		write_event = dbus_write_event;
++		write_arg = watch;
++	}
++
++	if (eloop_event_add_rw(dhcpcd_ctx->eloop, fd, read_event, read_arg,
++			       write_event, write_arg) == 0)
++		return TRUE;
++	return FALSE;
++}
++
++static void
++remove_watch(DBusWatch *watch, __unused void *data)
++{
++	int fd, flags;
++	int write_only = 0;
++	fd = dbus_watch_get_unix_fd(watch);
++	flags = dbus_watch_get_flags(watch);
++	if (!(flags & DBUS_WATCH_READABLE) && (flags & DBUS_WATCH_WRITABLE))
++		write_only = 1;
++	eloop_event_delete_write(dhcpcd_ctx->eloop, fd, write_only);
++}
++
++static DBusHandlerResult
++dhcpcd_dbus_filter(DBusConnection *conn, DBusMessage *msg, void *user_data)
++{
++	const char *service = NULL;
++	const char *old_owner = NULL;
++	const char *new_owner = NULL;
++
++	if (!dbus_message_is_signal(msg, DBUS_INTERFACE_DBUS,
++				    "NameOwnerChanged"))
++		return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
++
++	if (!dbus_message_get_args(msg, NULL,
++				   DBUS_TYPE_STRING, &service,
++				   DBUS_TYPE_STRING, &old_owner,
++				   DBUS_TYPE_STRING, &new_owner,
++				   DBUS_TYPE_INVALID)) {
++		logerrx("Invalid arguments for NameOwnerChanged signal");
++		return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
++	}
++	if (strcmp(service, "org.chromium.flimflam") == 0 &&
++	    strlen(new_owner) == 0) {
++		loginfox("exiting because shill has died");
++		dhcpcd_stop_interfaces(dhcpcd_ctx);
++		eloop_exit(dhcpcd_ctx->eloop, EXIT_FAILURE);
++	}
++	return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
++}
++
++int
++rpc_init(struct dhcpcd_ctx *ctx)
++{
++	DBusObjectPathVTable vt = {
++		NULL, &msg_handler, NULL, NULL, NULL, NULL
++	};
++	DBusError err;
++
++	dhcpcd_ctx = ctx;
++
++	dbus_error_init(&err);
++	connection = dbus_bus_get(DBUS_BUS_SYSTEM, &err);
++	if (connection == NULL) {
++		if (dbus_error_is_set(&err))
++			logerrx("%s", err.message);
++		else
++			logerrx("failed to get a dbus connection");
++		return -1;
++	}
++	atexit(rpc_close);
++
++	if (!dbus_connection_set_watch_functions(connection,
++		add_watch, remove_watch, NULL, NULL, NULL))
++	{
++		logerrx("dbus: failed to set watch functions");
++		return -1;
++	}
++	if (!dbus_connection_register_object_path(connection,
++		SERVICE_PATH, &vt, NULL))
++	{
++		logerrx("dbus: failed to register object path");
++		return -1;
++	}
++	dbus_connection_add_filter(connection, dhcpcd_dbus_filter, NULL, NULL);
++	dbus_bus_add_match(connection, service_watch_rule, &err);
++	if (dbus_error_is_set(&err)) {
++		logerrx("Cannot add rule: %s", err.message);
++		return -1;
++	}
++	return 0;
++}
++
++void
++rpc_close(void)
++{
++	if (connection) {
++		dbus_bus_remove_match(connection, service_watch_rule, NULL);
++		dbus_connection_remove_filter(connection,
++					      dhcpcd_dbus_filter,
++					      NULL);
++		dbus_connection_unref(connection);
++		connection = NULL;
++	}
++}
++
++void
++rpc_signal_status(const char *status)
++{
++	DBusMessage *msg;
++	DBusMessageIter args;
++	int pid = getpid();
++
++	loginfox("status changed to %s", status);
++
++	msg = dbus_message_new_signal(SERVICE_PATH, SERVICE_NAME,
++	    "StatusChanged");
++	if (msg == NULL) {
++		logerrx("failed to make a status changed message");
++		return;
++	}
++	dbus_message_iter_init_append(msg, &args);
++	dbus_message_iter_append_basic(&args, DBUS_TYPE_UINT32, &pid);
++	dbus_message_iter_append_basic(&args, DBUS_TYPE_STRING, &status);
++	if (!dbus_connection_send(connection, msg, NULL))
++		logerrx("failed to send status to dbus");
++	dbus_message_unref(msg);
++}
++
++
++int
++rpc_update_ipv4(struct interface *ifp)
++{
++	struct dhcp_state *state = D_STATE(ifp);
++	if (state->new != NULL) {
++		/* push state over d-bus */
++		dbus_send_message(ifp, state->reason, "new_",
++				  state->new, state->new_len);
++		rpc_signal_status("Bound");
++	} else {
++		rpc_signal_status("Release");
++	}
++	return 0;
++}
++
++int
++rpc_update_ipv6(struct interface *ifp)
++{
++	/* Currently not supported. */
++	return 0;
++}
++
++int
++rpc_notify_unicast_arp(struct interface *ifp) {
++	struct dhcp_state *state = D_STATE(ifp);
++	return dbus_send_message(ifp, "GATEWAY-ARP", "saved_",
++				 state->offer, state->offer_len);
++}
+diff --git a/src/dbus/test/introspection b/src/dbus/test/introspection
+new file mode 100755
+index 00000000..772a1db7
+--- /dev/null
++++ b/src/dbus/test/introspection
+@@ -0,0 +1,9 @@
++#!/usr/bin/python
++
++import dbus
++
++bus = dbus.SystemBus()
++
++object = dbus.Interface(bus.get_object("org.chromium.dhcpcd", '/'),
++				"org.freedesktop.DBus.Introspectable")
++print object.Introspect()
+diff --git a/src/dbus/test/monitor b/src/dbus/test/monitor
+new file mode 100755
+index 00000000..11d17b83
+--- /dev/null
++++ b/src/dbus/test/monitor
+@@ -0,0 +1,19 @@
++#!/usr/bin/python
++
++import gobject
++import dbus
++import dbus.mainloop.glib
++
++def event(pid, reason, value):
++	print "pid %s %s: %s" % (pid, reason, value)
++
++if __name__ == '__main__':
++	dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
++
++	bus = dbus.SystemBus()
++
++	bus.add_signal_receiver(event, bus_name="org.chromium.dhcpcd",
++	    signal_name = "Event")
++
++	mainloop = gobject.MainLoop()
++	mainloop.run()
+diff --git a/src/dhcp-common.c b/src/dhcp-common.c
+index b9b6fbbb..2c062afe 100644
+--- a/src/dhcp-common.c
++++ b/src/dhcp-common.c
+@@ -831,44 +831,26 @@ print_option(char *s, size_t len, const struct dhcp_opt *opt,
+ 	return bytes;
+ }
+ 
++/* Lease file name is formatted according to the expectation of the ChromiumOS's
++ * connection manager (shill). */
+ int
+ dhcp_set_leasefile(char *leasefile, size_t len, int family,
+     const struct interface *ifp)
+ {
+-	char ssid[1 + (IF_SSIDLEN * 4) + 1]; /* - prefix and NUL terminated. */
+-
+ 	if (ifp->name[0] == '\0') {
+ 		strlcpy(leasefile, ifp->ctx->pidfile, len);
+ 		return 0;
+ 	}
+ 
+ 	if (strlen(ifp->lease_identifier) > 0) {
+-		/* Only supports lease identifier for IPv4 for now. */
+-		if (family == AF_INET) {
+-			return snprintf(leasefile, len, LEASEFILE,
+-					ifp->lease_identifier, "");
+-		}
++		return snprintf(leasefile, len,
++				family == AF_INET ? LEASEFILE : LEASEFILE6,
++				ifp->lease_identifier, "");
+ 	}
+ 
+-	switch (family) {
+-	case AF_INET:
+-	case AF_INET6:
+-		break;
+-	default:
+-		errno = EINVAL;
+-		return -1;
+-	}
+-
+-	if (ifp->wireless) {
+-		ssid[0] = '-';
+-		print_string(ssid + 1, sizeof(ssid) - 1,
+-		    OT_ESCFILE,
+-		    (const uint8_t *)ifp->ssid, ifp->ssid_len);
+-	} else
+-		ssid[0] = '\0';
+ 	return snprintf(leasefile, len,
+-	    family == AF_INET ? LEASEFILE : LEASEFILE6,
+-	    ifp->name, ssid);
++			family == AF_INET ? LEASEFILE : LEASEFILE6,
++			ifp->name, "");
+ }
+ 
+ static size_t
+diff --git a/src/dhcp.c b/src/dhcp.c
+index c03c0904..c8ec40da 100644
+--- a/src/dhcp.c
++++ b/src/dhcp.c
+@@ -1841,11 +1841,11 @@ send_message(struct interface *ifp, uint8_t type,
+ 		    state->xid);
+ 	} else {
+ 		if (state->interval == 0)
+-			state->interval = 4;
++			state->interval = DHCP_BASE;
+ 		else {
+ 			state->interval *= 2;
+-			if (state->interval > 64)
+-				state->interval = 64;
++			if (state->interval > DHCP_MAX)
++				state->interval = DHCP_MAX;
+ 		}
+ 		tv.tv_sec = state->interval + DHCP_RAND_MIN;
+ 		tv.tv_nsec = (suseconds_t)arc4random_uniform(
+@@ -3079,7 +3079,8 @@ dhcp_drop(struct interface *ifp, const char *reason)
+ #ifdef ARPING
+ 	state->arping_index = -1;
+ #endif
+-	if (ifp->options->options & DHCPCD_RELEASE &&
++	if ((ifp->options->options & DHCPCD_RELEASE ||
++             strcmp(reason, "RELEASE") == 0) &&
+ 	    !(ifp->options->options & DHCPCD_INFORM))
+ 	{
+ 		/* Failure to send the release may cause this function to
+diff --git a/src/dhcpcd-definitions.conf b/src/dhcpcd-definitions.conf
+index df4075e8..f9205956 100644
+--- a/src/dhcpcd-definitions.conf
++++ b/src/dhcpcd-definitions.conf
+@@ -58,7 +58,7 @@ define 39	byte			tcp_keepalive_garbage
+ define 40	string			nis_domain
+ define 41	array ipaddress		nis_servers
+ define 42	array ipaddress		ntp_servers
+-define 43	binhex			vendor_encapsulated_options
++define 43	string			vendor_encapsulated_options
+ define 44	array ipaddress		netbios_name_servers
+ define 45	ipaddress		netbios_dd_server
+ define 46	byte			netbios_node_type
+diff --git a/src/dhcpcd.c b/src/dhcpcd.c
+index bba72a3d..a0bd69dd 100644
+--- a/src/dhcpcd.c
++++ b/src/dhcpcd.c
+@@ -1178,6 +1178,55 @@ dhcpcd_handlehwaddr(struct dhcpcd_ctx *ctx, const char *ifname,
+ 	memcpy(ifp->hwaddr, hwaddr, hwlen);
+ }
+ 
++void
++dhcpcd_start_interface(struct dhcpcd_ctx *ctx, const char *ifname)
++{
++	struct interface *ifp;
++	ifp = if_find(ctx->ifaces, ifname);
++	if (ifp == NULL)
++	{
++		logerrx("start_interface: %s not found", ifname);
++		return;
++	}
++	dhcpcd_startinterface(ifp);
++}
++
++void
++dhcpcd_stop_interface(struct dhcpcd_ctx *ctx, const char *ifname)
++{
++	struct interface *ifp;
++	ifp = if_find(ctx->ifaces, ifname);
++	if (ifp == NULL)
++	{
++		logerrx("stop_interface: %s not found", ifname);
++		return;
++	}
++	stop_interface(ifp);
++}
++
++void
++dhcpcd_stop_interfaces(struct dhcpcd_ctx *ctx)
++{
++	struct interface *ifp, *ifn;
++	TAILQ_FOREACH_SAFE(ifp, ctx->ifaces, next, ifn) {
++		stop_interface(ifp);
++	}
++}
++
++void
++dhcpcd_release_ipv4(struct dhcpcd_ctx *ctx, const char *ifname)
++{
++	struct interface *ifp;
++
++	ifp = if_find(ctx->ifaces, ifname);
++	if (ifp == NULL)
++	{
++		logerrx("IPv4 release: %s not found", ifname);
++		return;
++	}
++	dhcp_drop(ifp, "RELEASE");
++}
++
+ static void
+ if_reboot(struct interface *ifp, int argc, char **argv)
+ {
+@@ -1409,13 +1458,13 @@ dhcpcd_handleargs(struct dhcpcd_ctx *ctx, struct fd_list *fd,
+ 	 * write callback on the fd */
+ 	if (strcmp(*argv, "--version") == 0) {
+ 		return control_queue(fd, UNCONST(VERSION),
+-		    strlen(VERSION) + 1, 0);
++				     strlen(VERSION) + 1, 0);
+ 	} else if (strcmp(*argv, "--getconfigfile") == 0) {
+ 		return control_queue(fd, UNCONST(fd->ctx->cffile),
+-		    strlen(fd->ctx->cffile) + 1, 0);
++				     strlen(fd->ctx->cffile) + 1, 0);
+ 	} else if (strcmp(*argv, "--getinterfaces") == 0) {
+ 		eloop_event_add_w(fd->ctx->eloop, fd->fd,
+-		    dhcpcd_getinterfaces, fd);
++				  dhcpcd_getinterfaces, fd);
+ 		return 0;
+ 	} else if (strcmp(*argv, "--listen") == 0) {
+ 		fd->flags |= FD_LISTEN;
+diff --git a/src/dhcpcd.conf b/src/dhcpcd.conf
+index 537ed77b..d7ba8c9a 100644
+--- a/src/dhcpcd.conf
++++ b/src/dhcpcd.conf
+@@ -1,6 +1,12 @@
+ # A sample configuration for dhcpcd.
+ # See dhcpcd.conf(5) for details.
+ 
++# Disabling ARP checking
++noarp
++
++# Disabling link state monitoring
++nolink
++
+ # Allow users of this group to interact with dhcpcd via the control socket.
+ #controlgroup wheel
+ 
+@@ -8,23 +14,23 @@
+ hostname
+ 
+ # Use the hardware address of the interface for the Client ID.
+-#clientid
++clientid
+ # or
+ # Use the same DUID + IAID as set in DHCPv6 for DHCPv4 ClientID as per RFC4361.
+ # Some non-RFC compliant DHCP servers do not reply with this set.
+ # In this case, comment out duid and enable clientid above.
+-duid
++#duid
+ 
+ # Persist interface configuration when dhcpcd exits.
+-persistent
++#persistent
+ 
+ # Rapid commit support.
+ # Safe to enable by default because it requires the equivalent option set
+ # on the server to actually work.
+-option rapid_commit
++#option rapid_commit
+ 
+ # A list of options to request from the DHCP server.
+-option domain_name_servers, domain_name, domain_search, host_name
++option domain_name_servers, domain_name, domain_search, host_name, wpad_url
+ option classless_static_routes
+ # Respect the network MTU. This is applied to DHCP routes.
+ option interface_mtu
+@@ -38,4 +44,4 @@ require dhcp_server_identifier
+ # Generate SLAAC address using the Hardware Address of the interface
+ #slaac hwaddr
+ # OR generate Stable Private IPv6 Addresses based from the DUID
+-slaac private
++#slaac private
+diff --git a/src/dhcpcd.h b/src/dhcpcd.h
+index 5adafc68..263102f3 100644
+--- a/src/dhcpcd.h
++++ b/src/dhcpcd.h
+@@ -229,4 +229,9 @@ int dhcpcd_selectprofile(struct interface *, const char *);
+ void dhcpcd_startinterface(void *);
+ void dhcpcd_activateinterface(struct interface *, unsigned long long);
+ 
++void dhcpcd_start_interface(struct dhcpcd_ctx *, const char *);
++void dhcpcd_stop_interface(struct dhcpcd_ctx *, const char *);
++void dhcpcd_release_ipv4(struct dhcpcd_ctx *, const char *);
++void dhcpcd_stop_interfaces(struct dhcpcd_ctx *);
++
+ #endif
+diff --git a/src/if-linux.c b/src/if-linux.c
+index f4437859..e3cc257e 100644
+--- a/src/if-linux.c
++++ b/src/if-linux.c
+@@ -1698,6 +1698,9 @@ static const char *prefix = "/proc/sys/net/ipv6/conf";
+ void
+ if_setup_inet6(const struct interface *ifp)
+ {
++#ifdef PASSIVE_MODE
++	return;
++#endif
+ 	int ra;
+ 	char path[256];
+ 
+diff --git a/src/logerr.c b/src/logerr.c
+index afef8d1b..9e543cc9 100644
+--- a/src/logerr.c
++++ b/src/logerr.c
+@@ -329,7 +329,7 @@ logopen(const char *path)
+ 	struct logctx *ctx = &_logctx;
+ 
+ 	if (path == NULL) {
+-		int opts = 0;
++		int opts = LOG_PERROR;
+ 
+ 		if (ctx->log_opts & LOGERR_LOG_PID)
+ 			opts |= LOG_PID;
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Add-RPC-support-for-DHCPv4-client.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Add-RPC-support-for-DHCPv4-client.patch
new file mode 100644
index 0000000..5ad38a9
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Add-RPC-support-for-DHCPv4-client.patch
@@ -0,0 +1,431 @@
+From a38901d5190608778ea9fb426e900ebdbf21cb67 Mon Sep 17 00:00:00 2001
+From: Peter Qiu <zqiu@chromium.org>
+Date: Wed, 9 Jun 2021 19:45:02 +0000
+Subject: [PATCH 10/19] Add RPC support for DHCPv4 client
+
+Define a RPC interface for the daemon to interact with other
+applications (command execution and status update), and integrate
+it with the DHCPv4 client.  Default to stub implementation for now
+until new RPC mechanism is implemented and enabled.
+
+Also add a new compiler flag "PASSIVE_MODE" which will be enabled
+when a RPC mechanism is enabled (e.g. DBus).  This compiler flag
+will prevent the daemon from modifying system configurations
+(e.g. routing table, interface address).  The idea is that when
+RPC is enabled, the daemon will provide configurations through
+RPC, and the remote application will be the one responsible for
+modifying system configurations.
+
+Integration with DHCPv6 client will be added in the future.
+
+Author: Paul Stewart <pstew@chromium.org>
+Reviewed-on: https://chromium-review.googlesource.com/208835
+Review URL: http://codereview.chromium.org/3061018
+---
+ src/Makefile        |  2 +-
+ src/dhcp.c          | 20 ++++++++++---
+ src/dhcpcd.c        |  7 +++++
+ src/if-linux.c      | 11 ++++++++
+ src/ipv4.c          | 12 ++++++--
+ src/ipv4.h          |  2 +-
+ src/rpc-interface.h | 51 +++++++++++++++++++++++++++++++++
+ src/rpc-stub.c      | 69 +++++++++++++++++++++++++++++++++++++++++++++
+ 8 files changed, 166 insertions(+), 8 deletions(-)
+ create mode 100644 src/rpc-interface.h
+ create mode 100644 src/rpc-stub.c
+
+diff --git a/src/Makefile b/src/Makefile
+index fe78631d..c916bcc1 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -3,7 +3,7 @@
+ PROG=		dhcpcd
+ SRCS=		common.c control.c dhcpcd.c duid.c eloop.c logerr.c
+ SRCS+=		if.c if-options.c sa.c route.c
+-SRCS+=		dhcp-common.c script.c
++SRCS+=		dhcp-common.c script.c rpc-stub.c
+ 
+ CFLAGS?=	-O2
+ SUBDIRS+=	${MKDIRS}
+diff --git a/src/dhcp.c b/src/dhcp.c
+index 9cb64fbd..d0bb26e5 100644
+--- a/src/dhcp.c
++++ b/src/dhcp.c
+@@ -65,6 +65,7 @@
+ #include "ipv4.h"
+ #include "ipv4ll.h"
+ #include "logerr.h"
++#include "rpc-interface.h"
+ #include "sa.h"
+ #include "script.h"
+ 
+@@ -1965,6 +1966,7 @@ dhcp_discover(void *arg)
+ 	struct dhcp_state *state = D_STATE(ifp);
+ 	struct if_options *ifo = ifp->options;
+ 
++	rpc_signal_status("Discover");
+ 	state->state = DHS_DISCOVER;
+ 	state->nak_receive_count = 0;
+ 	state->failed_address_offer_count = 0;
+@@ -1993,6 +1995,7 @@ dhcp_request(void *arg)
+ 	struct interface *ifp = arg;
+ 	struct dhcp_state *state = D_STATE(ifp);
+ 
++	rpc_signal_status("Request");
+ 	state->state = DHS_REQUEST;
+ 	state->nak_receive_count = 0;
+ 	send_request(ifp);
+@@ -2094,7 +2097,7 @@ dhcp_startrenew(void *arg)
+ void
+ dhcp_renew(struct interface *ifp)
+ {
+-
++	rpc_signal_status("Renew");
+ 	dhcp_startrenew(ifp);
+ }
+ 
+@@ -2105,6 +2108,7 @@ dhcp_rebind(void *arg)
+ 	struct dhcp_state *state = D_STATE(ifp);
+ 	struct dhcp_lease *lease = &state->lease;
+ 
++	rpc_signal_status("Rebind");
+ 	logwarnx("%s: failed to renew DHCP, rebinding", ifp->name);
+ 	logdebugx("%s: expire in %"PRIu32" seconds",
+ 	    ifp->name, lease->leasetime - lease->rebindtime);
+@@ -2164,7 +2168,7 @@ dhcp_probe_gw_response(struct arp_state *astate, const struct arp_msg *amsg)
+ 	    amsg->sip.s_addr == astate->addr.s_addr) {
+ 		if (astate->dest_hwlen) {
+ 			/* Response to unicast ARP. */
+-			/* TODO(zqiu): notify listener. */
++			rpc_notify_unicast_arp(astate->iface);
+ 		} else {
+ 			/* Response to arpgw request. */
+ 			save_gateway_addr(astate->iface, amsg->sha);
+@@ -2764,6 +2768,7 @@ dhcp_arp_address(struct interface *ifp)
+ 		    ifp->name, inet_ntoa(l.addr), inet_ntocidr(l.mask));
+ 		/* We need to handle DAD. */
+ 		arp_probe(astate);
++		rpc_signal_status("ArpSelf");
+ 		return 0;
+ 	}
+ #endif
+@@ -2823,6 +2828,7 @@ dhcp_inform(struct interface *ifp)
+ 	state = D_STATE(ifp);
+ 	ifo = ifp->options;
+ 
++	rpc_signal_status("Inform");
+ 	state->state = DHS_INFORM;
+ 	free(state->offer);
+ 	state->offer = NULL;
+@@ -2982,6 +2988,7 @@ dhcp_reboot(struct interface *ifp)
+ 
+ 	if (state == NULL || state->state == DHS_NONE)
+ 		return;
++	rpc_signal_status("Reboot");
+ 	ifo = ifp->options;
+ 	state->state = DHS_REBOOT;
+ 	state->interval = 0;
+@@ -3274,7 +3281,6 @@ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+ 	struct if_options *ifo = ifp->options;
+ 	struct dhcp_lease *lease = &state->lease;
+ 	uint8_t type, tmp;
+-	struct in_addr addr;
+ 	unsigned int i;
+ 	char *msg;
+ 	bool bootp_copied;
+@@ -3445,7 +3451,8 @@ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+ 		}
+ 		if (state->state == DHS_INFORM) /* INFORM should not be NAKed */
+ 			return;
+-                LOGDHCP(logwarnx, "NAK (deferred)");
++		LOGDHCP(logwarnx, "NAK (deferred)");
++		rpc_signal_status("NakDefer");
+ 		if (state->nak_receive_count == 0)
+ 			eloop_timeout_add_sec(ifp->ctx->eloop, DHCP_BASE,
+ 					      handle_nak, ifp);
+@@ -3517,6 +3524,7 @@ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+ 	    &&
+ 	    (bootp->yiaddr == INADDR_ANY || bootp->yiaddr == INADDR_BROADCAST))
+ 	{
++		rpc_signal_status("IgnoreInvalidOffer");
+ 		LOGDHCP(logwarnx, "reject invalid address");
+ 		return;
+ 	}
+@@ -3540,6 +3548,7 @@ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+ 		if (bootp->yiaddr == state->failed.s_addr &&
+ 		    state->failed_address_offer_count == 0) {
+ 			LOGDHCP(logwarnx, "reject previously declined address");
++			rpc_signal_status("IgnoreFailedOffer");
+ 			state->failed_address_offer_count++;
+ 			return;
+ 		}
+@@ -3605,12 +3614,14 @@ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+ 	if (type) {
+ 		if (type == DHCP_OFFER) {
+ 			LOGDHCP(logwarnx, "ignoring offer of");
++			rpc_signal_status("IgnoreAdditionalOffer");
+ 			return;
+ 		}
+ 
+ 		/* We should only be dealing with acks */
+ 		if (type != DHCP_ACK) {
+ 			LOGDHCP(logerr, "not ACK or OFFER");
++			rpc_signal_status("IgnoreNonOffer");
+ 			return;
+ 		}
+ 
+@@ -3658,6 +3669,7 @@ rapidcommit:
+ 
+ #ifdef ARP
+ 	if ((ifo->options & DHCPCD_ARPGW) && (dhcp_probe_gw(ifp))) {
++		rpc_signal_status("ArpGateway");
+ 		return;
+ 	}
+ 
+diff --git a/src/dhcpcd.c b/src/dhcpcd.c
+index 7e778338..bba72a3d 100644
+--- a/src/dhcpcd.c
++++ b/src/dhcpcd.c
+@@ -65,6 +65,7 @@ const char dhcpcd_copyright[] = "Copyright (c) 2006-2019 Roy Marples";
+ #include "ipv6.h"
+ #include "ipv6nd.h"
+ #include "logerr.h"
++#include "rpc-interface.h"
+ #include "script.h"
+ 
+ #ifdef HAVE_UTIL_H
+@@ -1978,6 +1979,12 @@ printpidfile:
+ 	    (DHCPCD_MASTER | DHCPCD_DEV))
+ 		dev_start(&ctx);
+ 
++	if (rpc_init(&ctx) == -1) {
++		/* NB: rpc_init generates a syslog msg */
++		goto exit_failure;
++	}
++	rpc_signal_status("Init");
++
+ 	ctx.ifaces = if_discover(&ctx, &ifaddrs, ctx.ifc, ctx.ifv);
+ 	if (ctx.ifaces == NULL) {
+ 		logerr("%s: if_discover", __func__);
+diff --git a/src/if-linux.c b/src/if-linux.c
+index 3b7fa25c..f4437859 100644
+--- a/src/if-linux.c
++++ b/src/if-linux.c
+@@ -1198,6 +1198,10 @@ struct nlmr
+ int
+ if_route(unsigned char cmd, const struct rt *rt)
+ {
++/* Do not modify route table when running in passive mode. */
++#ifdef PASSIVE_MODE
++	return 0;
++#endif
+ 	struct nlmr nlm;
+ 	bool gateway_unspec;
+ 
+@@ -1457,6 +1461,10 @@ bpf_attach(int s, void *filter, unsigned int filter_len)
+ int
+ if_address(unsigned char cmd, const struct ipv4_addr *addr)
+ {
++/* Do not modify addresses when running in passive mode. */
++#ifdef PASSIVE_MODE
++	return 0;
++#endif
+ 	struct nlma nlm;
+ 	int retval = 0;
+ #if defined(IFA_F_NOPREFIXROUTE)
+@@ -1511,6 +1519,9 @@ __unused const struct in_addr *addr, __unused const char *alias)
+ int
+ if_address6(unsigned char cmd, const struct ipv6_addr *ia)
+ {
++#ifdef PASSIVE_MODE
++	return 0;
++#endif
+ 	struct nlma nlm;
+ 	struct ifa_cacheinfo cinfo;
+ /* IFA_FLAGS is not a define, but is was added at the same time
+diff --git a/src/ipv4.c b/src/ipv4.c
+index 7a39c2c5..fd380750 100644
+--- a/src/ipv4.c
++++ b/src/ipv4.c
+@@ -55,6 +55,9 @@
+ #include "route.h"
+ #include "script.h"
+ #include "sa.h"
++#ifdef PASSIVE_MODE
++#include "rpc-interface.h"
++#endif
+ 
+ #define IPV4_LOOPBACK_ROUTE
+ #if defined(__linux__) || defined(__sun) || (defined(BSD) && defined(RTF_LOCAL))
+@@ -690,9 +693,8 @@ ipv4_daddaddr(struct interface *ifp, const struct dhcp_lease *lease)
+ }
+ 
+ void
+-ipv4_applyaddr(void *arg)
++ipv4_applyaddr(struct interface *ifp)
+ {
+-	struct interface *ifp = arg;
+ 	struct dhcp_state *state = D_STATE(ifp);
+ 	struct dhcp_lease *lease;
+ 	struct if_options *ifo = ifp->options;
+@@ -702,6 +704,12 @@ ipv4_applyaddr(void *arg)
+ 	if (state == NULL)
+ 		return;
+ 
++#ifdef PASSIVE_MODE
++	/* Note that in passive mode we still allow to update internal state
++	 * below - this is in order to have valid information (important in case
++	 * we need to e.g. renew) and to handle properly ARP. */
++	rpc_update_ipv4(ifp);
++#endif
+ 	lease = &state->lease;
+ 	if (state->new == NULL) {
+ 		if ((ifo->options & (DHCPCD_EXITING | DHCPCD_PERSISTENT)) !=
+diff --git a/src/ipv4.h b/src/ipv4.h
+index 506d83b5..5d15e01a 100644
+--- a/src/ipv4.h
++++ b/src/ipv4.h
+@@ -123,7 +123,7 @@ bool inet_getroutes(struct dhcpcd_ctx *, struct rt_head *);
+ int ipv4_deladdr(struct ipv4_addr *, int);
+ struct ipv4_addr *ipv4_addaddr(struct interface *,
+     const struct in_addr *, const struct in_addr *, const struct in_addr *);
+-void ipv4_applyaddr(void *);
++void ipv4_applyaddr(struct interface *);
+ 
+ struct ipv4_addr *ipv4_iffindaddr(struct interface *,
+     const struct in_addr *, const struct in_addr *);
+diff --git a/src/rpc-interface.h b/src/rpc-interface.h
+new file mode 100644
+index 00000000..6e1e7e0c
+--- /dev/null
++++ b/src/rpc-interface.h
+@@ -0,0 +1,51 @@
++/*
++ * dhcpcd - DHCP client daemon
++ * Copyright (c) 2006-2015 Roy Marples <roy@marples.name>
++ * All rights reserved
++
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the above copyright
++ *    notice, this list of conditions and the following disclaimer.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ *    notice, this list of conditions and the following disclaimer in the
++ *    documentation and/or other materials provided with the distribution.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++ * SUCH DAMAGE.
++ */
++
++#ifndef RPC_INTERFACE_H
++#define RPC_INTERFACE_H
++
++#include "dhcpcd.h"
++
++/* Initialize RPC interface. Return 0 on success. */
++int rpc_init(struct dhcpcd_ctx *ctx);
++
++/* Tear down RPC interface. */
++void rpc_close(void);
++
++/* Emit signal status to RPC interface. */
++void rpc_signal_status(const char *);
++
++/* Update IPv4 configuration. Return 0 on success. */
++int rpc_update_ipv4(struct interface *ifp);
++
++/* Update IPv6 configuration. Return 0 on success. */
++int rpc_update_ipv6(struct interface *ifp);
++
++/* Emit notification for successful unicast ARP. Return 0 on success. */
++int rpc_notify_unicast_arp(struct interface *ifp);
++
++#endif
+diff --git a/src/rpc-stub.c b/src/rpc-stub.c
+new file mode 100644
+index 00000000..aa650974
+--- /dev/null
++++ b/src/rpc-stub.c
+@@ -0,0 +1,69 @@
++/*
++ * dhcpcd - DHCP client daemon
++ * Copyright (c) 2006-2015 Roy Marples <roy@marples.name>
++ * All rights reserved
++
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the above copyright
++ *    notice, this list of conditions and the following disclaimer.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ *    notice, this list of conditions and the following disclaimer in the
++ *    documentation and/or other materials provided with the distribution.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++ * SUCH DAMAGE.
++ */
++
++#include "rpc-interface.h"
++
++int
++rpc_init(struct dhcpcd_ctx *ctx)
++{
++	/* Stub implementation. */
++	return 0;
++}
++
++void
++rpc_close(void)
++{
++	/* Stub implementation. */
++}
++
++void
++rpc_signal_status(const char *reason)
++{
++	/* Stub implementation. */
++}
++
++int
++rpc_update_ipv4(struct interface *ifp)
++{
++	/* Stub implementation. */
++	return 0;
++}
++
++int
++rpc_update_ipv6(struct interface *ifp)
++{
++	/* Stub implementation. */
++	return 0;
++}
++
++int
++rpc_notify_unicast_arp(struct interface *ifp)
++{
++	/* Stub implementation. */
++	return 0;
++}
++
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Add-ability-to-disable-hook-scripts.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Add-ability-to-disable-hook-scripts.patch
new file mode 100644
index 0000000..764935d9
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Add-ability-to-disable-hook-scripts.patch
@@ -0,0 +1,159 @@
+From 3c5e296ceea909346e20033e8b4e4421d58bc13d Mon Sep 17 00:00:00 2001
+From: Peter Qiu <zqiu@chromium.org>
+Date: Thu, 10 Jun 2021 16:49:39 +0000
+Subject: [PATCH 11/19] Add ability to disable hook scripts
+
+This allow dhcpcd to be installed without hook scripts and bypassing
+the hook script processing code.
+---
+ Makefile          |  9 ++++++++-
+ configure         | 17 ++++++++++++----
+ src/Makefile      |  2 +-
+ src/script-stub.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++
+ 4 files changed, 71 insertions(+), 6 deletions(-)
+ create mode 100644 src/script-stub.c
+
+diff --git a/Makefile b/Makefile
+index a39b0f89..56e188a4 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,4 +1,11 @@
+-SUBDIRS=	src hooks
++TOP?=		.
++include ${TOP}/iconfig.mk
++
++SUBDIRS=	src
++
++ifneq ($(HOOKSCRIPTS),)
++SUBDIRS+= 	hooks
++endif
+ 
+ VERSION!=	sed -n 's/\#define VERSION[[:space:]]*"\(.*\)".*/\1/p' src/defs.h
+ 
+diff --git a/configure b/configure
+index b4d6c267..66a96040 100755
+--- a/configure
++++ b/configure
+@@ -78,7 +78,9 @@ for x do
+ 	CPPFLAGS) CPPFLAGS=$var;;
+ 	PKG_CONFIG) PKG_CONFIG=$var;;
+ 	--with-hook) HOOKSCRIPTS="$HOOKSCRIPTS${HOOKSCRIPTS:+ }$var";;
+-	--with-hooks|HOOKSCRIPTS) HOOKSCRIPTS=$var; HOOKSET=true;;
++	--with-hooks|HOOKSCRIPTS)
++		if [ "$opt" != "$var" ]; then HOOKSCRIPTS=$var; fi
++		HOOKSET=true;;
+ 	--build) BUILD=$var;;
+ 	--host) HOST=$var; HOSTCC=$var-;;
+ 	--target) TARGET=$var;;
+@@ -687,7 +689,7 @@ elif $XCC _inet_ntoa.c -lnsl -o _inet_ntoa 2>&3; then
+ 	echo "LDADD+=		-lnsl" >>$CONFIG_MK
+ elif $XCC _inet_ntoa.c -lsocket -o _inet_ntoa 2>&3; then
+ 	echo "yes (-lsocket)"
+-	echo "LDADD+=		-lsocket" >>$CONFIG_MK	
++	echo "LDADD+=		-lsocket" >>$CONFIG_MK
+ else
+ 	echo "no"
+ 	echo "libc support for inet_ntoa is required - aborting" >&2
+@@ -1430,7 +1432,7 @@ fi
+ echo "STATUSARG=	$STATUSARG" >>config.mk
+ 
+ HOOKS=
+-if ! $HOOKSET; then
++if $HOOKSET; then
+ 	printf "Checking for ntpd ... "
+ 	NTPD=$(_which ntpd)
+ 	if [ -n "$NTPD" ]; then
+@@ -1519,6 +1521,13 @@ if cd hooks; then
+ 	done
+ 	cd ..
+ fi
++
++if [ -z  "$HOOKS" ]; then
++	echo "DHCPCD_SRCS+=	script-stub.c" >>$CONFIG_MK
++else
++	echo "SCRIPTSINSTALL=	_scriptsinstall" >>$CONFIG_MK
++	echo "DHCPCD_SRCS+=	script.c" >>$CONFIG_MK
++fi
+ echo "HOOKSCRIPTS=	$HOOKS" >>$CONFIG_MK
+ echo "EGHOOKSCRIPTS=	$EGHOOKS" >>$CONFIG_MK
+ 
+@@ -1528,7 +1537,7 @@ echo "   SBINDIR =		$SBINDIR"
+ echo "   LIBDIR =		$LIBDIR"
+ echo "   LIBEXECDIR =		$LIBEXECDIR"
+ echo "   DBDIR =		$DBDIR"
+-echo "   RUNDIR =		$RUNDIR"	
++echo "   RUNDIR =		$RUNDIR"
+ echo "   MANDIR =		$MANDIR"
+ echo "   DATADIR =		$DATADIR"
+ echo "   HOOKSCRIPTS =	$HOOKS"
+diff --git a/src/Makefile b/src/Makefile
+index c916bcc1..d5b100a8 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -3,7 +3,7 @@
+ PROG=		dhcpcd
+ SRCS=		common.c control.c dhcpcd.c duid.c eloop.c logerr.c
+ SRCS+=		if.c if-options.c sa.c route.c
+-SRCS+=		dhcp-common.c script.c rpc-stub.c
++SRCS+=		dhcp-common.c rpc-stub.c
+ 
+ CFLAGS?=	-O2
+ SUBDIRS+=	${MKDIRS}
+diff --git a/src/script-stub.c b/src/script-stub.c
+new file mode 100644
+index 00000000..ed2a4747
+--- /dev/null
++++ b/src/script-stub.c
+@@ -0,0 +1,49 @@
++/*
++ * dhcpcd - DHCP client daemon
++ * Copyright (c) 2006-2015 Roy Marples <roy@marples.name>
++ * All rights reserved
++
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ * 1. Redistributions of source code must retain the above copyright
++ *    notice, this list of conditions and the following disclaimer.
++ * 2. Redistributions in binary form must reproduce the above copyright
++ *    notice, this list of conditions and the following disclaimer in the
++ *    documentation and/or other materials provided with the distribution.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
++ * SUCH DAMAGE.
++ */
++
++#include "common.h"
++#include "script.h"
++
++void
++if_printoptions(void)
++{
++	/* Stub implementation. */
++}
++
++int
++send_interface(struct fd_list *fd, const struct interface *ifp)
++{
++	/* Stub implementation. */
++	return 0;
++}
++
++int
++script_runreason(const struct interface *ifp, const char *reason)
++{
++	/* Stub implementation. */
++	return 0;
++}
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Add-more-ARP-related-info-to-logs.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Add-more-ARP-related-info-to-logs.patch
new file mode 100644
index 0000000..345c5a5
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Add-more-ARP-related-info-to-logs.patch
@@ -0,0 +1,35 @@
+From 82784fbae9d24df30721a5379336feea103669d6 Mon Sep 17 00:00:00 2001
+From: Andrzej Ostruszka <amo@semihalf.com>
+Date: Wed, 29 Sep 2021 16:27:16 +0000
+Subject: [PATCH 19/19] Add more ARP related info to logs
+
+This is just a minor indication whether we are doing unicast "ARP(U)" or
+broadcast "ARP(B)", that can be helpful during log analysis.
+---
+ src/arp.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/src/arp.c b/src/arp.c
+index c07e0f6c..601b0a64 100644
+--- a/src/arp.c
++++ b/src/arp.c
+@@ -296,12 +296,12 @@ arp_probe1(void *arg)
+ 		tv.tv_nsec = 0;
+ 		eloop_timeout_add_tv(ifp->ctx->eloop, &tv, arp_probed, astate);
+ 	}
+-	loginfox("%s: ARP probing %s (%d of %d), next in %0.1f seconds",
+-	    ifp->name, inet_ntoa(astate->addr),
+-	    astate->probes ? astate->probes : PROBE_NUM, PROBE_NUM,
+-	    timespec_to_double(&tv));
+ 	if (astate->dest_hwlen == ifp->hwlen)
+ 		dest_hwaddr = astate->dest_hwaddr;
++	loginfox("%s: ARP(%c) probing %s (%d of %d), next in %0.1f seconds",
++	    ifp->name, dest_hwaddr ? 'U' : 'B', inet_ntoa(astate->addr),
++	    astate->probes ? astate->probes : PROBE_NUM, PROBE_NUM,
++	    timespec_to_double(&tv));
+ 	if (arp_request(ifp, astate->src_addr.s_addr,
+ 			astate->addr.s_addr, dest_hwaddr) == -1)
+ 		logerr(__func__);
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Allow-lease-file-to-be-set-on-command-line.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Allow-lease-file-to-be-set-on-command-line.patch
new file mode 100644
index 0000000..e9586aa
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Allow-lease-file-to-be-set-on-command-line.patch
@@ -0,0 +1,396 @@
+From 4155069acee2ca62c534d210b130699497a7da31 Mon Sep 17 00:00:00 2001
+From: Paul Stewart <pstew@chromium.org>
+Date: Mon, 31 May 2021 13:22:06 +0000
+Subject: [PATCH 04/19] Allow lease file to be set on command line
+
+Currently, dhcpcd names its lease files using the interface name
+as the unique part of the name.  There are a couple reasons why
+this may not work well: firstly if "eth0" can have different MAC
+addresses (multiple USB-Ethernet dongles for example) leases for
+one interface aren't valid for the other.  Secondly, when using
+a wireless interface, it would be convenient to hold multiple
+leases in parallel for each SSID one is connected to.
+
+This change adds a suffix to each interface argument (dhcpcd can
+accept multiple interface arguments) that specifies the identifier
+to use to save lease files with.  By default, the behavior is
+identical.
+
+The second CL (https://gerrit.chromium.org/gerrit/22170) for fixing
+pid file formating bug originally introduced by this CL is not needed
+anymore since this bug doesn't exist/apply in the updated implementation.
+
+BUG=chromium-os:25717
+TEST=Re-run dhcpcd with and without an identifier suffix.
+
+Note: the implementation has been changed during upgrade to 7.2.5, the
+original one has been reviewed at:
+Reviewed-on: https://gerrit.chromium.org/gerrit/21991
+Reviewed-on: https://gerrit.chromium.org/gerrit/22170
+---
+ src/dhcp-common.c | 10 +++++-
+ src/dhcp.h        |  2 +-
+ src/dhcpcd.8.in   |  8 ++++-
+ src/dhcpcd.c      | 24 ++++++++------
+ src/dhcpcd.h      |  2 ++
+ src/if-options.c  |  2 +-
+ src/if.c          | 82 ++++++++++++++++++++++++++++++++++++++---------
+ src/if.h          |  8 +++++
+ 8 files changed, 108 insertions(+), 30 deletions(-)
+
+diff --git a/src/dhcp-common.c b/src/dhcp-common.c
+index c562ada7..866c3ccb 100644
+--- a/src/dhcp-common.c
++++ b/src/dhcp-common.c
+@@ -838,6 +838,14 @@ dhcp_set_leasefile(char *leasefile, size_t len, int family,
+ 		return 0;
+ 	}
+ 
++	if (strlen(ifp->lease_identifier) > 0) {
++		/* Only supports lease identifier for IPv4 for now. */
++		if (family == AF_INET) {
++			return snprintf(leasefile, len, LEASEFILE,
++					ifp->lease_identifier, "");
++		}
++	}
++
+ 	switch (family) {
+ 	case AF_INET:
+ 	case AF_INET6:
+@@ -1070,7 +1078,7 @@ dhcp_read_lease_fd(int fd, void **lease)
+ 	size_t sz;
+ 	void *buf;
+ 	ssize_t len;
+-	
++
+ 	if (fstat(fd, &st) != 0)
+ 		goto out;
+ 	if (!S_ISREG(st.st_mode)) {
+diff --git a/src/dhcp.h b/src/dhcp.h
+index e54671e1..becf27c2 100644
+--- a/src/dhcp.h
++++ b/src/dhcp.h
+@@ -230,7 +230,7 @@ struct dhcp_state {
+ 	struct ipv4_addr *addr;
+ 	uint8_t added;
+ 
+-	char leasefile[sizeof(LEASEFILE) + IF_NAMESIZE + (IF_SSIDLEN * 4)];
++	char leasefile[PATH_MAX];
+ 	struct timespec started;
+ 	unsigned char *clientid;
+ 	struct authstate auth;
+diff --git a/src/dhcpcd.8.in b/src/dhcpcd.8.in
+index 8d47dd7f..607df76b 100644
+--- a/src/dhcpcd.8.in
++++ b/src/dhcpcd.8.in
+@@ -201,6 +201,12 @@ changes the routes to use the interface with the same route and the lowest
+ metric.
+ See options below for controlling which interfaces we allow and deny through
+ the use of patterns.
++.Pp
++If an interface name is suffixed by an equal-sign, the text following the
++equal sign will be used instead of the interface name as the unique identifier
++for the DHCP lease file.  Doing so allows the caller to specify different
++lease files for the same interface (e.g, when switching the same wireless
++interface between different 802.11 networks).
+ .Ss Hooking into events
+ .Nm
+ runs
+@@ -821,7 +827,7 @@ Control socket to per interface daemon.
+ .Xr dhcpcd-run-hooks 8 ,
+ .Xr resolvconf 8
+ .Sh STANDARDS
+-RFC\ 951, RFC\ 1534, RFC\ 2104, RFC\ 2131, RFC\ 2132, RFC\ 2563, RFC\ 2855, 
++RFC\ 951, RFC\ 1534, RFC\ 2104, RFC\ 2131, RFC\ 2132, RFC\ 2563, RFC\ 2855,
+ RFC\ 3004, RFC\ 3118, RFC\ 3203, RFC\ 3315, RFC\ 3361, RFC\ 3633, RFC\ 3396,
+ RFC\ 3397, RFC\ 3442, RFC\ 3495, RFC\ 3925, RFC\ 3927, RFC\ 4039, RFC\ 4075,
+ RFC\ 4242, RFC\ 4361, RFC\ 4390, RFC\ 4702, RFC\ 4074, RFC\ 4861, RFC\ 4833,
+diff --git a/src/dhcpcd.c b/src/dhcpcd.c
+index 67dc3d64..7e778338 100644
+--- a/src/dhcpcd.c
++++ b/src/dhcpcd.c
+@@ -1531,6 +1531,7 @@ main(int argc, char **argv)
+ 	int sig = 0;
+ 	const char *siga = NULL;
+ #endif
++	char ifn[IF_NAMESIZE];
+ 
+ 	/* Test for --help and --version */
+ 	if (argc > 1) {
+@@ -1727,12 +1728,11 @@ printpidfile:
+ 		 *  instance for that interface. */
+ 		if (optind == argc - 1 && !(ctx.options & DHCPCD_MASTER)) {
+ 			const char *per;
+-			const char *ifname;
++			const char *ifname = if_namepart(ifn, *ctx.ifv);
+ 
+-			ifname = *ctx.ifv;
+-			if (ifname == NULL || strlen(ifname) > IF_NAMESIZE) {
+-				errno = ifname == NULL ? EINVAL : E2BIG;
+-				logerr("%s: ", ifname);
++			if (ifname == NULL) {
++				errno = EINVAL;
++				logerrx("missing or invalid interface name");
+ 				goto exit_failure;
+ 			}
+ 			/* Allow a dhcpcd interface per address family */
+@@ -1811,7 +1811,7 @@ printpidfile:
+ 				goto exit_failure;
+ 			}
+ 			if (optind != argc)
+-				strlcpy(ctx.pidfile, argv[optind],
++				strlcpy(ctx.pidfile, if_namepart(ifn, argv[optind]),
+ 				    sizeof(ctx.pidfile));
+ 			ifp->ctx = &ctx;
+ 			TAILQ_INSERT_HEAD(ctx.ifaces, ifp, next);
+@@ -1857,7 +1857,8 @@ printpidfile:
+ 	{
+ #endif
+ 		if (!(ctx.options & DHCPCD_MASTER))
+-			ctx.control_fd = control_open(argv[optind]);
++			ctx.control_fd = control_open(
++				if_namepart(ifn, argv[optind]));
+ 		if (ctx.control_fd == -1)
+ 			ctx.control_fd = control_open(NULL);
+ 		if (ctx.control_fd != -1) {
+@@ -1937,7 +1938,9 @@ printpidfile:
+ 	}
+ #else
+ 	if (control_start(&ctx,
+-	    ctx.options & DHCPCD_MASTER ? NULL : argv[optind]) == -1)
++			  ctx.options & DHCPCD_MASTER
++			  ? NULL : if_namepart(ifn, argv[optind]))
++	    == -1)
+ 	{
+ 		logerr("%s: control_start", __func__);
+ 		goto exit_failure;
+@@ -1949,7 +1952,8 @@ printpidfile:
+ 
+ #ifdef HAVE_SETPROCTITLE
+ 	setproctitle("%s%s%s",
+-	    ctx.options & DHCPCD_MASTER ? "[master]" : argv[optind],
++	    ctx.options & DHCPCD_MASTER ? "[master]"
++					: if_namepart(ifn, argv[optind]),
+ 	    ctx.options & DHCPCD_IPV4 ? " [ip4]" : "",
+ 	    ctx.options & DHCPCD_IPV6 ? " [ip6]" : "");
+ #endif
+@@ -1983,7 +1987,7 @@ printpidfile:
+ 		if ((ifp = if_find(ctx.ifaces, ctx.ifv[i])) == NULL ||
+ 		    !ifp->active)
+ 			logerrx("%s: interface not found or invalid",
+-			    ctx.ifv[i]);
++				if_namepart(ifn, ctx.ifv[i]));
+ 	}
+ 	TAILQ_FOREACH(ifp, ctx.ifaces, next) {
+ 		if (ifp->active == IF_ACTIVE_USER)
+diff --git a/src/dhcpcd.h b/src/dhcpcd.h
+index 3e35a3de..5adafc68 100644
+--- a/src/dhcpcd.h
++++ b/src/dhcpcd.h
+@@ -44,6 +44,7 @@
+ #define IF_SSIDLEN	32
+ #define PROFILE_LEN	64
+ #define SECRET_LEN	64
++#define LEASE_IDENTIFIER_LEN (PATH_MAX - sizeof(LEASEFILE))
+ 
+ #define IF_INACTIVE	0
+ #define IF_ACTIVE	1
+@@ -88,6 +89,7 @@ struct interface {
+ 	bool wireless;
+ 	uint8_t ssid[IF_SSIDLEN];
+ 	unsigned int ssid_len;
++        char lease_identifier[LEASE_IDENTIFIER_LEN];
+ 
+ 	char profile[PROFILE_LEN];
+ 	struct if_options *options;
+diff --git a/src/if-options.c b/src/if-options.c
+index 80d1efda..1ced9642 100644
+--- a/src/if-options.c
++++ b/src/if-options.c
+@@ -2512,7 +2512,7 @@ read_config(struct dhcpcd_ctx *ctx,
+ 				skip = 1;
+ 				continue;
+ 			}
+-			if (ifname && strcmp(line, ifname) == 0)
++			if (ifname && if_namecmp(line, ifname, NULL) == 0)
+ 				skip = 0;
+ 			else
+ 				skip = 1;
+diff --git a/src/if.c b/src/if.c
+index 28597dc2..643fc546 100644
+--- a/src/if.c
++++ b/src/if.c
+@@ -72,6 +72,21 @@
+ #include "ipv6nd.h"
+ #include "logerr.h"
+ 
++/* This utility function is used to work around case for lease file encoded in
++ * interface name after '='.  If the lease part is not present the 'name'
++ * argument is returned, otherwise the interface part is copied to the 'buf' and
++ * it is returned. */
++const char* if_namepart(char *buf, const char *name)
++{
++	const char *p;
++
++	if (name == NULL || (p = strchr(name, '=')) == NULL)
++		return name;
++
++	strlcpy(buf, name, MIN(IF_NAMESIZE, (size_t)(p - name + 1)));
++	return buf;
++}
++
+ void
+ if_free(struct interface *ifp)
+ {
+@@ -295,6 +310,25 @@ if_valid_hwaddr(const uint8_t *hwaddr, size_t hwlen)
+ 	return false;
+ }
+ 
++/* This utility function is used to work around case for lease file encoded in
++ * interface name after '='.  It assumes proper name in first arg and possibly
++ * "extended" name as a second one.  As a side-effect when the name matches and
++ * there is lease file encoded it is returned in the last optional argument. */
++int if_namecmp(const char *if_name, const char *ext_name, const char **lease)
++{
++	const char *p = strchr(ext_name, '=');
++	int ret;
++
++	if (p) {
++		ret = strncmp(if_name, ext_name, (size_t)(p - ext_name));
++		if (ret == 0 && lease)
++			*lease = p + 1;
++		return ret;
++	}
++
++	return strcmp(if_name, ext_name);
++}
++
+ struct if_head *
+ if_discover(struct dhcpcd_ctx *ctx, struct ifaddrs **ifaddrs,
+     int argc, char * const *argv)
+@@ -305,6 +339,9 @@ if_discover(struct dhcpcd_ctx *ctx, struct ifaddrs **ifaddrs,
+ 	struct if_head *ifs;
+ 	struct interface *ifp;
+ 	struct if_spec spec;
++	char ifn[IF_NAMESIZE];
++	const char *lease_id = NULL;
++
+ #ifdef AF_LINK
+ 	const struct sockaddr_dl *sdl;
+ #ifdef SIOCGIFPRIORITY
+@@ -363,7 +400,8 @@ if_discover(struct dhcpcd_ctx *ctx, struct ifaddrs **ifaddrs,
+ 
+ 		if (argc > 0) {
+ 			for (i = 0; i < argc; i++) {
+-				if (strcmp(argv[i], spec.devname) == 0)
++				if (if_namecmp(spec.devname, argv[i],
++					       &lease_id) == 0)
+ 					break;
+ 			}
+ 			active = (i == argc) ? IF_INACTIVE : IF_ACTIVE_USER;
+@@ -371,7 +409,8 @@ if_discover(struct dhcpcd_ctx *ctx, struct ifaddrs **ifaddrs,
+ 			/* -1 means we're discovering against a specific
+ 			 * interface, but we still need the below rules
+ 			 * to apply. */
+-			if (argc == -1 && strcmp(argv[0], spec.devname) != 0)
++			if (argc == -1 && if_namecmp(spec.devname, argv[0],
++						     &lease_id) != 0)
+ 				continue;
+ 			active = ctx->options & DHCPCD_INACTIVE ?
+ 			    IF_INACTIVE: IF_ACTIVE_USER;
+@@ -383,7 +422,8 @@ if_discover(struct dhcpcd_ctx *ctx, struct ifaddrs **ifaddrs,
+ 		if (i < ctx->ifdc)
+ 			active = IF_INACTIVE;
+ 		for (i = 0; i < ctx->ifc; i++)
+-			if (fnmatch(ctx->ifv[i], spec.devname, 0) == 0)
++			if (fnmatch(if_namepart(ifn, ctx->ifv[i]),
++				    spec.devname, 0) == 0)
+ 				break;
+ 		if (ctx->ifc && i == ctx->ifc)
+ 			active = IF_INACTIVE;
+@@ -420,6 +460,9 @@ if_discover(struct dhcpcd_ctx *ctx, struct ifaddrs **ifaddrs,
+ 		}
+ 		ifp->ctx = ctx;
+ 		strlcpy(ifp->name, spec.devname, sizeof(ifp->name));
++		if (lease_id)
++			strlcpy(ifp->lease_identifier, lease_id,
++				LEASE_IDENTIFIER_LEN);
+ 		ifp->flags = ifa->ifa_flags;
+ 
+ 		if (ifa->ifa_addr != NULL) {
+@@ -599,16 +642,21 @@ if_nametospec(const char *ifname, struct if_spec *spec)
+ {
+ 	char *ep;
+ 	int e;
++	size_t len;
++
++	if (ifname == NULL || *ifname == '\0')
++		goto invalid;
++
++	ep = strchr(ifname, '=');
++	len = ep ? (size_t)(ep - ifname) : strlen(ifname);
++	len += 1; /* for ending NUL */
++
++	if (len > sizeof(spec->ifname) || len > sizeof(spec->drvname))
++		goto invalid;
++
++	strlcpy(spec->ifname, ifname, len);
++	strlcpy(spec->drvname, ifname, len);
+ 
+-	if (ifname == NULL || *ifname == '\0' ||
+-	    strlcpy(spec->ifname, ifname, sizeof(spec->ifname)) >=
+-	    sizeof(spec->ifname) ||
+-	    strlcpy(spec->drvname, ifname, sizeof(spec->drvname)) >=
+-	    sizeof(spec->drvname))
+-	{
+-		errno = EINVAL;
+-		return -1;
+-	}
+ 	ep = strchr(spec->drvname, ':');
+ 	if (ep) {
+ 		spec->lun = (int)strtoi(ep + 1, NULL, 10, 0, INT_MAX, &e);
+@@ -624,16 +672,18 @@ if_nametospec(const char *ifname, struct if_spec *spec)
+ 	strlcpy(spec->devname, spec->drvname, sizeof(spec->devname));
+ 	while (ep > spec->drvname && isdigit((int)*ep))
+ 		ep--;
+-	if (*ep++ == ':') {
+-		errno = EINVAL;
+-		return -1;
+-	}
++	if (*ep++ == ':')
++		goto invalid;
+ 	spec->ppa = (int)strtoi(ep, NULL, 10, 0, INT_MAX, &e);
+ 	if (e != 0)
+ 		spec->ppa = -1;
+ 	*ep = '\0';
+ 
+ 	return 0;
++
++invalid:
++	errno = EINVAL;
++	return -1;
+ }
+ 
+ static struct interface *
+diff --git a/src/if.h b/src/if.h
+index 91bba49b..fe5c4e23 100644
+--- a/src/if.h
++++ b/src/if.h
+@@ -111,6 +111,14 @@ int if_getifaddrs(struct ifaddrs **);
+ #define	getifaddrs	if_getifaddrs
+ #endif
+ 
++/* Basically this is strcmp but 2nd name can be suffixed with '=' and lease
++ * name after it - this suffix is skipped for comparison. */
++int if_namecmp(const char *if_name, const char *ext_name, const char **lease);
++/* This utility returns just an interface name from "extended" name.  If the
++ * name is not "extended" it is returned otherwise initial part is copied to buf
++ * and it is returned. */
++const char* if_namepart(char *buf, const char *ext_name);
++
+ int if_getflags(struct interface *ifp);
+ int if_setflag(struct interface *ifp, short flag);
+ #define if_up(ifp) if_setflag((ifp), (IFF_UP | IFF_RUNNING))
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Be-more-permissive-on-NAKs.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Be-more-permissive-on-NAKs.patch
new file mode 100644
index 0000000..30d1828
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Be-more-permissive-on-NAKs.patch
@@ -0,0 +1,47 @@
+From 29a1c7892c61d863a5c444040cc24b6dc1bc812c Mon Sep 17 00:00:00 2001
+From: Mukesh Agrawal <quiche@chromium.org>
+Date: Mon, 31 May 2021 13:29:34 +0000
+Subject: [PATCH 05/19] Be more permissive on NAKs
+
+Previously, we'd reject NAKs that did not include a server ID.
+Since we'd only check that a server ID was present, but did not
+validate it against any stored state, the test is merely pedantic.
+Moreover, some DHCP servers (e.g. OpenBSD 4.6) send NAK messages
+without a server ID. [1]
+
+To improve compatibility with real-world DHCP servers, drop the
+check for the presence of a server ID.
+
+BUG=chrome-os-partner:27930
+TEST=network_DhcpNak
+
+[1] http://openbsd.7691.n7.nabble.com/dhcpd-omits-server-id-option-54-in-NAK-to-a-RENEW-request-td41044.html
+
+Reviewed-on: https://chromium-review.googlesource.com/194972
+---
+ src/dhcp.c | 9 ---------
+ 1 file changed, 9 deletions(-)
+
+diff --git a/src/dhcp.c b/src/dhcp.c
+index 1ff59a1a..4590958c 100644
+--- a/src/dhcp.c
++++ b/src/dhcp.c
+@@ -3266,15 +3266,6 @@ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+ 	}
+ 
+ 	if (type == DHCP_NAK) {
+-		/* For NAK, only check if we require the ServerID */
+-		if (has_option_mask(ifo->requiremask, DHO_SERVERID) &&
+-		    get_option_addr(ifp->ctx, &addr,
+-		    bootp, bootp_len, DHO_SERVERID) == -1)
+-		{
+-			LOGDHCP(logwarnx, "reject NAK");
+-			return;
+-		}
+-
+ 		/* We should restart on a NAK */
+ 		LOGDHCP(logwarnx, "NAK:");
+ 		if ((msg = get_option_string(ifp->ctx,
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Change-vendor_encapsulated_options-to-binhex.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Change-vendor_encapsulated_options-to-binhex.patch
new file mode 100644
index 0000000..478ca47
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Change-vendor_encapsulated_options-to-binhex.patch
@@ -0,0 +1,120 @@
+From ad006eda5935885b04f66f948c171c073dfecff6 Mon Sep 17 00:00:00 2001
+From: Victor Dodon <printesoi@chromium.org>
+Date: Mon, 14 Jun 2021 12:49:27 +0000
+Subject: [PATCH 16/19] Change vendor_encapsulated_options to binhex
+
+Make option vendor_encapsulated_options of type binhex and pass
+VendorEncapsulatedOptions on dbus as a byte array
+
+BUG=chromium:574578
+TEST=run `dbus-monitor --system \
+"type=signal,path=/org/chromium/dhcpcd,interface=org.chromium.dhcpcd,arg1='BOUND'"`
+and check that VendorEncapsulatedOptions is sent
+as array of bytes
+---
+ src/dbus/dbus-dict.c        | 47 +++++++++++++++++++++++++++++++++++++
+ src/dbus/rpc-dbus.c         |  2 +-
+ src/dhcpcd-definitions.conf |  2 +-
+ 3 files changed, 49 insertions(+), 2 deletions(-)
+
+diff --git a/src/dbus/dbus-dict.c b/src/dbus/dbus-dict.c
+index 8e3cf4e4..53b261ef 100644
+--- a/src/dbus/dbus-dict.c
++++ b/src/dbus/dbus-dict.c
+@@ -28,6 +28,7 @@
+ #include <arpa/inet.h>
+ 
+ #include <ctype.h>
++#include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+ #include <syslog.h>
+@@ -165,6 +166,50 @@ append_config_value(DBusMessageIter *entry, int type,
+ 	return retval;
+ }
+ 
++static int
++append_config_byte_array(DBusMessageIter *entry, const char *data)
++{
++	DBusMessageIter var, array;
++	dbus_bool_t ok = TRUE;
++	uint8_t u8, u8_2;
++	size_t len;
++	const char *it, *end;
++	const char *tsa, *ts;
++
++	tsa = DBUS_TYPE_ARRAY_AS_STRING DBUS_TYPE_BYTE_AS_STRING;
++	ts = DBUS_TYPE_BYTE_AS_STRING;
++
++	dbus_message_iter_open_container(entry, DBUS_TYPE_VARIANT, tsa, &var);
++	dbus_message_iter_open_container(&var, DBUS_TYPE_ARRAY, ts, &array);
++
++	len = strlen(data);
++	it = data;
++	end = data + len;
++
++	/* "a12" is treated as "0a12" */
++	if (len & 1) {
++		ok = (sscanf(it++, "%1hhx", &u8) == 1) &&
++			dbus_message_iter_append_basic(&array, DBUS_TYPE_BYTE,
++						       &u8);
++	}
++
++	while (ok && it < end) {
++		/* sscanf("1z", "%2hhx", &u8) will store 0x01 in u8 and
++		 * will return 1 */
++		ok = (sscanf(it++, "%1hhx", &u8) == 1) &&
++			(sscanf(it++, "%1hhx", &u8_2) == 1);
++		if (!ok)
++			break;
++
++		u8 = (u8 << 4) | u8_2;
++		ok = dbus_message_iter_append_basic(&array, DBUS_TYPE_BYTE, &u8);
++	}
++
++	dbus_message_iter_close_container(&var, &array);
++	dbus_message_iter_close_container(entry, &var);
++	return ok ? 0 : -1;
++}
++
+ static int
+ append_config_array(DBusMessageIter *entry, int type, const char *data)
+ {
+@@ -177,6 +222,8 @@ append_config_array(DBusMessageIter *entry, int type, const char *data)
+ 	struct in_addr in;
+ 
+ 	switch (type) {
++	case DBUS_TYPE_BYTE:
++		return append_config_byte_array(entry, data);
+ 	case DBUS_TYPE_STRING:
+ 		tsa = DBUS_TYPE_ARRAY_AS_STRING DBUS_TYPE_STRING_AS_STRING;
+ 		ts = DBUS_TYPE_STRING_AS_STRING;
+diff --git a/src/dbus/rpc-dbus.c b/src/dbus/rpc-dbus.c
+index 4298d4c2..df9b54d2 100644
+--- a/src/dbus/rpc-dbus.c
++++ b/src/dbus/rpc-dbus.c
+@@ -160,7 +160,7 @@ static const struct o_dbus dhos[] = {
+ 	{ "nis_domain=", DBUS_TYPE_STRING, 0, "NISDomain" },
+ 	{ "nis_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "NISServers" },
+ 	{ "ntp_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, "NTPServers" },
+-	{ "vendor_encapsulated_options=", DBUS_TYPE_STRING, 0,
++	{ "vendor_encapsulated_options=", DBUS_TYPE_ARRAY, DBUS_TYPE_BYTE,
+ 	  "VendorEncapsulatedOptions" },
+ 	{ "netbios_name_servers=" ,DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32,
+ 	  "NetBIOSNameServers" },
+diff --git a/src/dhcpcd-definitions.conf b/src/dhcpcd-definitions.conf
+index f9205956..df4075e8 100644
+--- a/src/dhcpcd-definitions.conf
++++ b/src/dhcpcd-definitions.conf
+@@ -58,7 +58,7 @@ define 39	byte			tcp_keepalive_garbage
+ define 40	string			nis_domain
+ define 41	array ipaddress		nis_servers
+ define 42	array ipaddress		ntp_servers
+-define 43	string			vendor_encapsulated_options
++define 43	binhex			vendor_encapsulated_options
+ define 44	array ipaddress		netbios_name_servers
+ define 45	ipaddress		netbios_dd_server
+ define 46	byte			netbios_node_type
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-ChromiumOS-DHCPv6-support.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-ChromiumOS-DHCPv6-support.patch
new file mode 100644
index 0000000..43f2afb
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-ChromiumOS-DHCPv6-support.patch
@@ -0,0 +1,386 @@
+From 63435f1d3f36c4ffc0375789d70e27277927308e Mon Sep 17 00:00:00 2001
+From: Peter Qiu <zqiu@chromium.org>
+Date: Mon, 14 Jun 2021 11:50:10 +0000
+Subject: [PATCH 14/19] ChromiumOS DHCPv6 support
+
+Add support to emit DHCPv6 configuration/status updates through
+DBus, and prevent the daemon from updating IPv6 system configurations.
+
+Add command line option "-a" to enable ia options for shill usage,
+since ia options can only be specified through the config file by
+default.  When "-a" option is enabled, the daemon will request ia_na
+(Non-temporary Address) and ia_pd (Prefix Delegation) options from
+the DHCPv6 server.
+
+BUG=chromium:496751
+TEST=Verify using upcoming client test network_Dhcpv6*
+Manual Test:
+1. Create a virtual ethernet pair and setup a DHCPv6 server on the
+   master interface (veth_master) using dhcpd:
+   "dhcpd -6 -d -cf /tmp/dhcp6.conf veth_master"
+   with following config:
+       default-lease-time 600;
+       max-lease-time 7200;
+       subnet6 2001:db8:0:1::/64 {
+           # Range for clients
+           range6 2001:db8:0:1::129 2001:db8:0:1::254;
+           # Additional options
+           option dhcp6.name-servers fec0:0:0:1::1;
+           option dhcp6.domain-search "domain.example";
+           # Prefix range for delegation to sub-routers
+           prefix6 2001:db8:0:100:: 2001:db8:0:f00:: /56;
+       }
+2. Start DBus monitor using "dbus-monitor --system"
+3. Start a DHCPv6 client on the slave interface using dhcpcd:
+   "dhcpcd -6 -B -a veth_slave"
+4. Verify DHCPv6 configurations through DBus messages.
+---
+ src/dbus/rpc-dbus.c | 107 +++++++++++++++++++++++++++++++++++++++++++-
+ src/dhcp6.c         |  11 +++++
+ src/dhcpcd.conf     |   3 ++
+ src/if-options.c    |  39 ++++++++++++++++
+ src/if-options.h    |   2 +-
+ src/rpc-interface.h |   2 +
+ src/rpc-stub.c      |   2 +
+ 7 files changed, 164 insertions(+), 2 deletions(-)
+
+diff --git a/src/dbus/rpc-dbus.c b/src/dbus/rpc-dbus.c
+index bea71b22..4298d4c2 100644
+--- a/src/dbus/rpc-dbus.c
++++ b/src/dbus/rpc-dbus.c
+@@ -38,6 +38,9 @@
+ #include "../config.h"
+ #include "../eloop.h"
+ #include "../dhcp.h"
++#ifdef INET6
++#include "../dhcp6.h"
++#endif
+ #include "../logerr.h"
+ #include "../rpc-interface.h"
+ #include "dbus-dict.h"
+@@ -217,6 +220,23 @@ static const struct o_dbus dhos[] = {
+ 	{ "domain_search=", DBUS_TYPE_ARRAY, DBUS_TYPE_STRING,
+ 	  "DomainSearch" },
+ 	{ "wpad_url=", DBUS_TYPE_STRING, 0, "WebProxyAutoDiscoveryUrl" },
++#ifdef INET6
++	{ "dhcp6_server_id=", DBUS_TYPE_STRING, 0,
++	  "DHCPv6ServerIdentifier" },
++	{ "dhcp6_ia_na1_ia_addr1=", DBUS_TYPE_STRING, 0, "DHCPv6Address" },
++	{ "dhcp6_ia_na1_ia_addr1_vltime=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6AddressLeaseTime" },
++	{ "dhcp6_name_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_STRING,
++	  "DHCPv6NameServers" },
++	{ "dhcp6_domain_search=", DBUS_TYPE_ARRAY, DBUS_TYPE_STRING,
++	  "DHCPv6DomainSearch" },
++	{ "dhcp6_ia_pd1_prefix1=", DBUS_TYPE_STRING, 0,
++	  "DHCPv6DelegatedPrefix" },
++	{ "dhcp6_ia_pd1_prefix1_length=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6DelegatedPrefixLength" },
++	{ "dhcp6_ia_pd1_prefix1_vltime=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6DelegatedPrefixLeaseTime" },
++#endif
+ 	{ NULL, 0, 0, NULL }
+ };
+ 
+@@ -344,6 +364,81 @@ dbus_send_message(const struct interface *ifp, const char *reason,
+ 	return success;
+ }
+ 
++#ifdef INET6
++static dbus_bool_t
++dbus_send_dhcpv6_message(const struct interface *ifp, const char *reason,
++    const char *prefix, struct dhcp6_message *message, size_t length)
++{
++	const struct if_options *ifo = ifp->options;
++	DBusMessage* msg;
++	DBusMessageIter args, dict;
++	int pid = getpid();
++	char **env = NULL;
++	ssize_t e, elen;
++	int retval;
++	int success = FALSE;
++
++	loginfox("event %s on interface %s", reason, ifp->name);
++
++	msg = dbus_message_new_signal(SERVICE_PATH, SERVICE_NAME, "Event");
++	if (msg == NULL) {
++		logerrx("failed to make a configure message");
++		return FALSE;
++	}
++	dbus_message_iter_init_append(msg, &args);
++	dbus_message_iter_append_basic(&args, DBUS_TYPE_UINT32, &pid);
++	dbus_message_iter_append_basic(&args, DBUS_TYPE_STRING, &reason);
++	dbus_message_iter_open_container(&args, DBUS_TYPE_ARRAY,
++	    DBUS_DICT_ENTRY_BEGIN_CHAR_AS_STRING
++	    DBUS_TYPE_STRING_AS_STRING
++	    DBUS_TYPE_VARIANT_AS_STRING
++	    DBUS_DICT_ENTRY_END_CHAR_AS_STRING,
++	    &dict);
++	if (prefix == NULL || message == NULL)
++		retval = 0;
++	else {
++		e = dhcp6_env(NULL, NULL, ifp, message, length);
++		if (e > 0) {
++			char *config_prefix = strdup(prefix);
++			if (config_prefix == NULL) {
++				logerrx("Memory exhausted (strdup)");
++				eloop_exit(dhcpcd_ctx->eloop, EXIT_FAILURE);
++			}
++			char *p = config_prefix + strlen(config_prefix) - 1;
++			if (p >= config_prefix && *p == '_')
++				*p = '\0';
++			env = calloc(e + 1, sizeof(char *));
++			if (env == NULL) {
++				logerrx("Memory exhausted (calloc)");
++				eloop_exit(dhcpcd_ctx->eloop, EXIT_FAILURE);
++			}
++			elen = dhcp6_env(env, "new", ifp, message, length);
++			free(config_prefix);
++		}
++		retval = append_config(&dict, prefix, env, elen);
++	}
++
++	/* Release memory allocated for env. */
++	if (env) {
++		char **current = env;
++		while (*current)
++			free(*current++);
++		free(env);
++	}
++
++	dbus_message_iter_close_container(&args, &dict);
++	if (retval == 0) {
++		success = dbus_connection_send(connection, msg, NULL);
++		if (!success)
++			logerrx("failed to send dhcpv6 to dbus");
++	} else
++		logerrx("failed to construct dbus message");
++	dbus_message_unref(msg);
++
++	return success;
++}
++#endif
++
+ static DBusHandlerResult
+ introspect(DBusConnection *con, DBusMessage *msg)
+ {
+@@ -634,12 +729,22 @@ rpc_update_ipv4(struct interface *ifp)
+ 	return 0;
+ }
+ 
++#ifdef INET6
+ int
+ rpc_update_ipv6(struct interface *ifp)
+ {
+-	/* Currently not supported. */
++	struct dhcp6_state *state = D6_STATE(ifp);
++	if (state->new != NULL) {
++		/* push state over d-bus */
++		dbus_send_dhcpv6_message(ifp, state->reason, "new_",
++					 state->new, state->new_len);
++		rpc_signal_status("Bound6");
++	} else {
++		rpc_signal_status("Release6");
++	}
+ 	return 0;
+ }
++#endif
+ 
+ int
+ rpc_notify_unicast_arp(struct interface *ifp) {
+diff --git a/src/dhcp6.c b/src/dhcp6.c
+index aebb5224..d84a8d20 100644
+--- a/src/dhcp6.c
++++ b/src/dhcp6.c
+@@ -55,6 +55,7 @@
+ #include "if-options.h"
+ #include "ipv6nd.h"
+ #include "logerr.h"
++#include "rpc-interface.h"
+ #include "script.h"
+ 
+ #ifdef HAVE_SYS_BITOPS_H
+@@ -1563,6 +1564,7 @@ dhcp6_startdiscover(void *arg)
+ 	struct interface *ifp;
+ 	struct dhcp6_state *state;
+ 
++	rpc_signal_status("Discover6");
+ 	ifp = arg;
+ #ifndef SMALL
+ 	dhcp6_delete_delegates(ifp);
+@@ -1593,6 +1595,7 @@ dhcp6_startinform(void *arg)
+ 	struct interface *ifp;
+ 	struct dhcp6_state *state;
+ 
++	rpc_signal_status("Inform6");
+ 	ifp = arg;
+ 	state = D6_STATE(ifp);
+ 	if (state->new == NULL || ifp->options->options & DHCPCD_DEBUG)
+@@ -1735,6 +1738,7 @@ dhcp6_startrebind(void *arg)
+ 	int pd;
+ #endif
+ 
++	rpc_signal_status("Rebind6");
+ 	ifp = arg;
+ 	eloop_timeout_delete(ifp->ctx->eloop, dhcp6_sendrenew, ifp);
+ 	state = D6_STATE(ifp);
+@@ -1780,6 +1784,7 @@ dhcp6_startrequest(struct interface *ifp)
+ {
+ 	struct dhcp6_state *state;
+ 
++	rpc_signal_status("Request6");
+ 	eloop_timeout_delete(ifp->ctx->eloop, dhcp6_senddiscover, ifp);
+ 	state = D6_STATE(ifp);
+ 	state->state = DH6S_REQUEST;
+@@ -1803,6 +1808,7 @@ dhcp6_startconfirm(struct interface *ifp)
+ {
+ 	struct dhcp6_state *state;
+ 
++	rpc_signal_status("Confirm6");
+ 	state = D6_STATE(ifp);
+ 	state->state = DH6S_CONFIRM;
+ 	state->RTC = 0;
+@@ -1841,6 +1847,7 @@ dhcp6_startexpire(void *arg)
+ {
+ 	struct interface *ifp;
+ 
++	rpc_signal_status("Expire6");
+ 	ifp = arg;
+ 	eloop_timeout_delete(ifp->ctx->eloop, dhcp6_sendrebind, ifp);
+ 
+@@ -1887,6 +1894,7 @@ dhcp6_startrelease(struct interface *ifp)
+ 	if (state->state != DH6S_BOUND)
+ 		return;
+ 
++	rpc_signal_status("Release6");
+ 	state->state = DH6S_RELEASE;
+ 	state->RTC = 0;
+ 	state->IMD = REL_MAX_DELAY;
+@@ -3185,6 +3193,9 @@ dhcp6_bind(struct interface *ifp, const char *op, const char *sfrom)
+ 
+ 		ipv6_addaddrs(&state->addrs);
+ 		dhcp6_deprecateaddrs(&state->addrs);
++#ifdef PASSIVE_MODE
++		rpc_update_ipv6(ifp);
++#endif
+ 
+ 		if (state->state == DH6S_INFORMED)
+ 			lognewinfo("%s: refresh in %"PRIu32" seconds",
+diff --git a/src/dhcpcd.conf b/src/dhcpcd.conf
+index d7ba8c9a..f4fe9b18 100644
+--- a/src/dhcpcd.conf
++++ b/src/dhcpcd.conf
+@@ -45,3 +45,6 @@ require dhcp_server_identifier
+ #slaac hwaddr
+ # OR generate Stable Private IPv6 Addresses based from the DUID
+ #slaac private
++
++# Disable IPv6 router solicitation
++noipv6rs
+diff --git a/src/if-options.c b/src/if-options.c
+index 1ced9642..edcda8fd 100644
+--- a/src/if-options.c
++++ b/src/if-options.c
+@@ -108,6 +108,7 @@
+ #define	O_UNICASTGW		O_BASE + 49
+ 
+ const struct option cf_options[] = {
++	{"shill-ipv6",      no_argument,       NULL, 'a'},
+ 	{"background",      no_argument,       NULL, 'b'},
+ 	{"script",          required_argument, NULL, 'c'},
+ 	{"debug",           no_argument,       NULL, 'd'},
+@@ -717,6 +718,44 @@ parse_option(struct dhcpcd_ctx *ctx, const char *ifname, struct if_options *ifo,
+ 	case 'U': /* FALLTHROUGH */
+ 	case 'V': /* We need to handle non interface options */
+ 		break;
++#ifdef INET6
++	case 'a':
++		/* Chromeos hack: configure DHCPv6 option for shill. */
++
++		/* Reallocate ia to add both ia_na and ia_pd. */
++		ia = realloc(ifo->ia, sizeof(*ifo->ia) * (ifo->ia_len + 2));
++		if (ia == NULL) {
++			logerr("%s: %m", __func__);
++			return -1;
++		}
++		ifo->ia = ia;
++
++		/* Setup ia_na option with iaid of 0. */
++		ia = &ifo->ia[ifo->ia_len++];
++		ia->ia_type = D6_OPTION_IA_NA;
++		parse_iaid(ia->iaid, "0", sizeof(ia->iaid));
++		ia->iaid_set = 1;
++		memset(&ia->addr, 0, sizeof(ia->addr));
++		ia->prefix_len = 0;
++		ia->sla_max = 0;
++		ia->sla_len = 0;
++		ia->sla = NULL;
++
++		/* Setup ia_pd option with iaid of 1. */
++		ia = &ifo->ia[ifo->ia_len++];
++		ia->ia_type = D6_OPTION_IA_PD;
++		parse_iaid(ia->iaid, "1", sizeof(ia->iaid));
++		ia->iaid_set = 1;
++		memset(&ia->addr, 0, sizeof(ia->addr));
++		ia->prefix_len = 0;
++		ia->sla_max = 0;
++		ia->sla_len = 0;
++		ia->sla = NULL;
++
++		/* Enable ia option. */
++		ifo->options |= DHCPCD_IA_FORCED;
++		break;
++#endif
+ 	case 'b':
+ 		ifo->options |= DHCPCD_BACKGROUND;
+ 		break;
+diff --git a/src/if-options.h b/src/if-options.h
+index 3ef02c2e..1dae344f 100644
+--- a/src/if-options.h
++++ b/src/if-options.h
+@@ -42,7 +42,7 @@
+ 
+ /* Don't set any optional arguments here so we retain POSIX
+  * compatibility with getopt */
+-#define IF_OPTS "146bc:de:f:gh:i:j:kl:m:no:pqr:s:t:u:v:wxy:z:" \
++#define IF_OPTS "146abc:de:f:gh:i:j:kl:m:no:pqr:s:t:u:v:wxy:z:" \
+ 		"ABC:DEF:GHI:JKLMNO:PQ:RS:TUVW:X:Z:"
+ #define NOERR_IF_OPTS		":" IF_OPTS
+ 
+diff --git a/src/rpc-interface.h b/src/rpc-interface.h
+index 6e1e7e0c..cf4da466 100644
+--- a/src/rpc-interface.h
++++ b/src/rpc-interface.h
+@@ -42,8 +42,10 @@ void rpc_signal_status(const char *);
+ /* Update IPv4 configuration. Return 0 on success. */
+ int rpc_update_ipv4(struct interface *ifp);
+ 
++#ifdef INET6
+ /* Update IPv6 configuration. Return 0 on success. */
+ int rpc_update_ipv6(struct interface *ifp);
++#endif
+ 
+ /* Emit notification for successful unicast ARP. Return 0 on success. */
+ int rpc_notify_unicast_arp(struct interface *ifp);
+diff --git a/src/rpc-stub.c b/src/rpc-stub.c
+index aa650974..e2b4ed90 100644
+--- a/src/rpc-stub.c
++++ b/src/rpc-stub.c
+@@ -53,12 +53,14 @@ rpc_update_ipv4(struct interface *ifp)
+ 	return 0;
+ }
+ 
++#ifdef INET6
+ int
+ rpc_update_ipv6(struct interface *ifp)
+ {
+ 	/* Stub implementation. */
+ 	return 0;
+ }
++#endif
+ 
+ int
+ rpc_notify_unicast_arp(struct interface *ifp)
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Ensure-gateway-probe-is-broadcast.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Ensure-gateway-probe-is-broadcast.patch
new file mode 100644
index 0000000..6cf8b5e
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Ensure-gateway-probe-is-broadcast.patch
@@ -0,0 +1,52 @@
+From 566e20e7740d8f032614c47b93c866a1d2c97840 Mon Sep 17 00:00:00 2001
+From: Paul Stewart <pstew@chromium.org>
+Date: Mon, 14 Jun 2021 12:32:58 +0000
+Subject: [PATCH 15/19] Ensure gateway probe is broadcast
+
+The arp_new() method does not always return a freshly
+initialized arp_state structure.  For example, if
+dhcp_probe_gw() is called while a probe from
+start_unicast_arp() is still running, the arp_state
+object from the unicast ARP call will be returned by
+arp_new().  This can happen when a DHCP renew succeeds
+while a unicast "GatewayArp" is still in progress.
+
+In the above scenario we need to make sure the dest_hwlen
+field of the arp_state structure is zero.  This signals a
+broadcast ARP, and will ensure that the callbacks that are
+invoked by the ARP state machine know which case we are in.
+
+While here, add a small optimization that skips a
+broadcast gateway ARP if a unicast ARP succeeds.
+
+BUG=chromium:531042
+TEST=Reconnect to WiFi network where ARP fails
+---
+ src/dhcp.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/dhcp.c b/src/dhcp.c
+index c8ec40da..ac339a6a 100644
+--- a/src/dhcp.c
++++ b/src/dhcp.c
+@@ -2171,6 +2171,8 @@ dhcp_probe_gw_response(struct arp_state *astate, const struct arp_msg *amsg)
+ 		if (astate->dest_hwlen) {
+ 			/* Response to unicast ARP. */
+ 			rpc_notify_unicast_arp(astate->iface);
++			/* Unicast ARP succeeded; no need for broadcast ARP. */
++			astate->iface->options->options &= ~DHCPCD_ARPGW;
+ 		} else {
+ 			/* Response to arpgw request. */
+ 			save_gateway_addr(astate->iface, amsg->sha);
+@@ -2199,6 +2201,8 @@ dhcp_probe_gw(struct interface *ifp)
+ 			    state->offer, state->offer_len, DHO_ROUTER) == 0) {
+ 		astate = arp_new(ifp, &gateway_addr);
+ 		if (astate) {
++			/* Make sure we're doing a broadcast ARP. */
++			astate->dest_hwlen = 0;
+ 			astate->src_addr.s_addr = state->offer->yiaddr;
+ 			astate->probed_cb = dhcp_probe_gw_timeout;
+ 			astate->conflicted_cb = dhcp_probe_gw_response;
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Fix-OOB-read-in-dhcpcd.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Fix-OOB-read-in-dhcpcd.patch
new file mode 100644
index 0000000..a0c59d1
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Fix-OOB-read-in-dhcpcd.patch
@@ -0,0 +1,35 @@
+From 15f361ac1b13c122d37626cad8de324b20cc8178 Mon Sep 17 00:00:00 2001
+From: Jorge Lucangeli Obes <jorgelo@chromium.org>
+Date: Tue, 1 Jun 2021 20:16:58 +0000
+Subject: [PATCH 08/19] Fix OOB read in dhcpcd.
+
+Should have done this sooner, but hey, late is better than never.
+
+Based on https://googleplex-android-review.git.corp.google.com/#/c/588010/.
+
+BUG=chromium:433078
+TEST=Deploy to Chromebook, connect to network, get DHCP lease.
+
+Reviewed-on: https://chromium-review.googlesource.com/242880
+---
+ src/dhcp-common.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/dhcp-common.c b/src/dhcp-common.c
+index 866c3ccb..b9b6fbbb 100644
+--- a/src/dhcp-common.c
++++ b/src/dhcp-common.c
+@@ -819,6 +819,10 @@ print_option(char *s, size_t len, const struct dhcp_opt *opt,
+ 		}
+ 		if (sl == -1)
+ 			return bytes == 0 ? -1 : bytes;
++		if (len <= (size_t)sl) {
++			bytes += len;
++			break;
++		}
+ 		len -= (size_t)sl;
+ 		bytes += sl;
+ 		s += sl;
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Fix-dhcpcd-running-as-a-regular-user.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Fix-dhcpcd-running-as-a-regular-user.patch
new file mode 100644
index 0000000..56a0c2f
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Fix-dhcpcd-running-as-a-regular-user.patch
@@ -0,0 +1,33 @@
+From b6e67174c3968e76b54fe757e2608990d0fdae56 Mon Sep 17 00:00:00 2001
+From: "sy.avinash" <sy.avinash@globaledgesoftware.corp-partner.google.com>
+Date: Thu, 27 May 2021 11:51:16 +0000
+Subject: [PATCH 03/19] Fix dhcpcd running as a regular user.
+
+Update the lease file permission to 0600 to prevent other
+users from reading the lease file.
+
+BUG=chromium-os:28336
+TEST=Build and boot an image, network still works.
+TEST=New lease files are created with 0600 permissions.
+
+Reviewed-on: https://gerrit.chromium.org/gerrit/22644
+---
+ src/dhcp.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/dhcp.c b/src/dhcp.c
+index 3591ce1f..1ff59a1a 100644
+--- a/src/dhcp.c
++++ b/src/dhcp.c
+@@ -1158,7 +1158,7 @@ write_lease(const struct interface *ifp, const struct bootp *bootp, size_t len)
+ 
+ 	logdebugx("%s: writing lease `%s'", ifp->name, state->leasefile);
+ 
+-	fd = open(state->leasefile, O_WRONLY | O_CREAT | O_TRUNC, 0644);
++	fd = open(state->leasefile, O_WRONLY | O_CREAT | O_TRUNC, 0600);
+ 	if (fd == -1)
+ 		return -1;
+ 
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Handle-DHCP-iSNS-option.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Handle-DHCP-iSNS-option.patch
new file mode 100644
index 0000000..26821a9
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Handle-DHCP-iSNS-option.patch
@@ -0,0 +1,68 @@
+From 9af8ed34c4a2ab2c72cd5092e1b67ebfe5defe9a Mon Sep 17 00:00:00 2001
+From: Victor Dodon <printesoi@chromium.org>
+Date: Mon, 14 Jun 2021 15:52:00 +0000
+Subject: [PATCH 17/19] Handle DHCP iSNS option
+
+iSNS clients need to handle DHCP iSNS option (RFC 4174) to discover the
+location of the iSNS server automatically.
+
+TEST=run `dbus-monitor --system \
+    "type=signal,path=/org/chromium/dhcpcd,interface=org.chromium.dhcpcd,arg1='BOUND'"`
+    and check that iSNSOptionData is sent as array of bytes
+---
+ src/dbus/rpc-dbus.c         |  1 +
+ src/dhcpcd-definitions.conf | 26 +++++++++++++++-----------
+ 2 files changed, 16 insertions(+), 11 deletions(-)
+
+diff --git a/src/dbus/rpc-dbus.c b/src/dbus/rpc-dbus.c
+index df9b54d2..22608d15 100644
+--- a/src/dbus/rpc-dbus.c
++++ b/src/dbus/rpc-dbus.c
+@@ -220,6 +220,7 @@ static const struct o_dbus dhos[] = {
+ 	{ "domain_search=", DBUS_TYPE_ARRAY, DBUS_TYPE_STRING,
+ 	  "DomainSearch" },
+ 	{ "wpad_url=", DBUS_TYPE_STRING, 0, "WebProxyAutoDiscoveryUrl" },
++	{ "isns_option_data=", DBUS_TYPE_ARRAY, DBUS_TYPE_BYTE, "iSNSOptionData" },
+ #ifdef INET6
+ 	{ "dhcp6_server_id=", DBUS_TYPE_STRING, 0,
+ 	  "DHCPv6ServerIdentifier" },
+diff --git a/src/dhcpcd-definitions.conf b/src/dhcpcd-definitions.conf
+index df4075e8..3500f13a 100644
+--- a/src/dhcpcd-definitions.conf
++++ b/src/dhcpcd-definitions.conf
+@@ -119,17 +119,21 @@ embed		optional domain		fqdn
+ # Option 82 is for Relay Agents and DHCP servers
+ 
+ # iSNS, RFC4174
+-define 83	embed			isns
+-embed		byte			reserved1
+-embed		bitflags=00000SAE	functions
+-embed		byte			reserved2
+-embed		bitflags=00fFsSCE	dd
+-embed		byte			reserved3
+-embed		bitflags=0000DMHE	admin
+-embed		uint16			reserved4
+-embed		byte			reserved5
+-embed		bitflags=0TXPAMSE	server_security
+-embed		array ipaddress		servers
++# NOTE: Proper definition is commented below.  This is used for
++# exporting values to hooks which shill is not using so let's simplify
++# iSNS and format according to shill expectations
++define 83	binhex			isns_option_data
++#define 83	embed			isns
++#embed		byte			reserved1
++#embed		bitflags=00000SAE	functions
++#embed		byte			reserved2
++#embed		bitflags=00fFsSCE	dd
++#embed		byte			reserved3
++#embed		bitflags=0000DMHE	admin
++#embed		uint16			reserved4
++#embed		byte			reserved5
++#embed		bitflags=0TXPAMSE	server_security
++#embed		array ipaddress		servers
+ 
+ # Option 84 are unused, RFC3679
+ 
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Improve-debugability.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Improve-debugability.patch
new file mode 100644
index 0000000..8991270
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Improve-debugability.patch
@@ -0,0 +1,158 @@
+From 1c8e51d6e0ae428bb2e277e4f8dff79b6eab3874 Mon Sep 17 00:00:00 2001
+From: Peter Qiu <zqiu@chromium.org>
+Date: Thu, 10 Jun 2021 17:52:03 +0000
+Subject: [PATCH 12/19] Improve debugability
+
+Increase log level for certain log messages and add more log messages
+to improve debugability.
+
+Author: Paul Stewart <pstew@chromium.org>
+Author: mukesh agrawal <quiche@chromium.org>
+Reviewed-on: https://gerrit.chromium.org/gerrit/42622
+Reviewed-on: https://chromium-review.googlesource.com/185511
+Reviewed-on: https://chromium-review.googlesource.com/186593
+Reviewed-on: https://chromium-review.googlesource.com/206143
+Reviewed-on: https://gerrit.chromium.org/gerrit/24835
+---
+ src/arp.c  |  2 +-
+ src/dhcp.c | 22 +++++++++++++++++-----
+ src/if.c   |  7 +++++++
+ 3 files changed, 25 insertions(+), 6 deletions(-)
+
+diff --git a/src/arp.c b/src/arp.c
+index f3b2e8ad..c07e0f6c 100644
+--- a/src/arp.c
++++ b/src/arp.c
+@@ -296,7 +296,7 @@ arp_probe1(void *arg)
+ 		tv.tv_nsec = 0;
+ 		eloop_timeout_add_tv(ifp->ctx->eloop, &tv, arp_probed, astate);
+ 	}
+-	logdebugx("%s: ARP probing %s (%d of %d), next in %0.1f seconds",
++	loginfox("%s: ARP probing %s (%d of %d), next in %0.1f seconds",
+ 	    ifp->name, inet_ntoa(astate->addr),
+ 	    astate->probes ? astate->probes : PROBE_NUM, PROBE_NUM,
+ 	    timespec_to_double(&tv));
+diff --git a/src/dhcp.c b/src/dhcp.c
+index d0bb26e5..c03c0904 100644
+--- a/src/dhcp.c
++++ b/src/dhcp.c
+@@ -1835,7 +1835,7 @@ send_message(struct interface *ifp, uint8_t type,
+ 		/* No carrier? Don't bother sending the packet. */
+ 		if (ifp->carrier <= LINK_DOWN)
+ 			return;
+-		logdebugx("%s: sending %s with xid 0x%x",
++		loginfox("%s: sending %s with xid 0x%x",
+ 		    ifp->name,
+ 		    ifo->options & DHCPCD_BOOTP ? "BOOTP" : get_dhcp_op(type),
+ 		    state->xid);
+@@ -1855,7 +1855,7 @@ send_message(struct interface *ifp, uint8_t type,
+ 		 * However, we do need to advance the timeout. */
+ 		if (ifp->carrier <= LINK_DOWN)
+ 			goto fail;
+-		logdebugx("%s: sending %s (xid 0x%x), next in %0.1f seconds",
++		loginfox("%s: sending %s (xid 0x%x), next in %0.1f seconds",
+ 		    ifp->name,
+ 		    ifo->options & DHCPCD_BOOTP ? "BOOTP" : get_dhcp_op(type),
+ 		    state->xid,
+@@ -1996,6 +1996,8 @@ dhcp_request(void *arg)
+ 	struct dhcp_state *state = D_STATE(ifp);
+ 
+ 	rpc_signal_status("Request");
++	loginfox("%s: requesting lease of %s",
++		 ifp->name, inet_ntoa(state->lease.addr));
+ 	state->state = DHS_REQUEST;
+ 	state->nak_receive_count = 0;
+ 	send_request(ifp);
+@@ -2085,8 +2087,8 @@ dhcp_startrenew(void *arg)
+ 	eloop_timeout_delete(ifp->ctx->eloop, dhcp_startrenew, ifp);
+ 
+ 	lease = &state->lease;
+-	logdebugx("%s: renewing lease of %s", ifp->name,
+-	    inet_ntoa(lease->addr));
++	loginfox("%s: renewing lease of %s", ifp->name,
++		 inet_ntoa(lease->addr));
+ 	state->state = DHS_RENEW;
+ 	state->nak_receive_count = 0;
+ 	dhcp_new_xid(ifp);
+@@ -2829,6 +2831,7 @@ dhcp_inform(struct interface *ifp)
+ 	ifo = ifp->options;
+ 
+ 	rpc_signal_status("Inform");
++	loginfox("%s: informing peers of local address", ifp->name);
+ 	state->state = DHS_INFORM;
+ 	free(state->offer);
+ 	state->offer = NULL;
+@@ -3354,6 +3357,9 @@ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+ 		return;
+ 	}
+ 
++	loginfox("%s: received %s with xid 0x%x",
++		 ifp->name, get_dhcp_op(type), state->xid);
++
+ #ifdef AUTH
+ 	/* Authenticate the message */
+ 	auth = get_option(ifp->ctx, bootp, bootp_len,
+@@ -3640,7 +3646,7 @@ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+ 
+ rapidcommit:
+ 		if (!(ifo->options & DHCPCD_INFORM))
+-			LOGDHCP(logdebugx, "acknowledged");
++			LOGDHCP(loginfox, "acknowledged");
+ 		else
+ 		    ifo->options &= ~DHCPCD_STATIC;
+ 	}
+@@ -3697,6 +3703,8 @@ valid_udp_packet(void *data, size_t data_len, struct in_addr *from,
+ 	uint16_t bytes;
+ 
+ 	if (data_len < sizeof(p->ip)) {
++		logwarnx("packet shorter than an ip header "
++			 "(len=%zd)", data_len);
+ 		if (from)
+ 			from->s_addr = INADDR_ANY;
+ 		errno = ERANGE;
+@@ -3706,6 +3714,7 @@ valid_udp_packet(void *data, size_t data_len, struct in_addr *from,
+ 	if (from)
+ 		from->s_addr = p->ip.ip_src.s_addr;
+ 	if (checksum(&p->ip, sizeof(p->ip)) != 0) {
++		logwarnx("packet failed ip header checksum");
+ 		errno = EINVAL;
+ 		return -1;
+ 	}
+@@ -3718,6 +3727,8 @@ valid_udp_packet(void *data, size_t data_len, struct in_addr *from,
+ 	}
+ 	/* Check we don't go beyond the payload */
+ 	if (bytes > data_len) {
++		logwarnx("packet appears truncated "
++			 "(len=%zd, ip_len=%hu)", data_len, bytes);
+ 		errno = ENOBUFS;
+ 		return -1;
+ 	}
+@@ -3739,6 +3750,7 @@ valid_udp_packet(void *data, size_t data_len, struct in_addr *from,
+ 		p->ip.ip_ttl = 0;
+ 		p->ip.ip_sum = 0;
+ 		if (udpsum && checksum(p, bytes) != udpsum) {
++			logwarnx("packet failed udp checksum");
+ 			errno = EINVAL;
+ 			return -1;
+ 		}
+diff --git a/src/if.c b/src/if.c
+index 643fc546..ad7baa84 100644
+--- a/src/if.c
++++ b/src/if.c
+@@ -630,6 +630,13 @@ if_discover(struct dhcpcd_ctx *ctx, struct ifaddrs **ifaddrs,
+ 		TAILQ_INSERT_TAIL(ifs, ifp, next);
+ 	}
+ 
++	if (!ifs) {
++		loginfox("%s: no matching interfaces", __func__);
++		for (ifa = *ifaddrs; ifa; ifa = ifa->ifa_next) {
++			loginfox("%s: considered %s", __func__, ifa->ifa_name);
++		}
++	}
++
+ #ifdef IFLR_ACTIVE
+ 	close(link_fd);
+ #endif
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Merge-in-DHCP-options-from-the-original-offer.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Merge-in-DHCP-options-from-the-original-offer.patch
new file mode 100644
index 0000000..908327d
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Merge-in-DHCP-options-from-the-original-offer.patch
@@ -0,0 +1,238 @@
+From 40c8ab6602ffa5cb76d0fe92a6bdad91281a1f0c Mon Sep 17 00:00:00 2001
+From: Paul Stewart <pstew@chromium.org>
+Date: Tue, 1 Jun 2021 21:02:29 +0000
+Subject: [PATCH 09/19] Merge in DHCP options from the original offer
+
+We've found that some APs respond to DHCP REQUEST messages with a
+subset of the DHCP options that were present in the original DHCP
+negotiation.  Copy such options out of the stored lease and carry
+them forward whenever a lease renewal succeeds.
+
+BUG=chromium:360452
+TEST=New test network_DhcpRenewWithOptionSubset
+
+Reviewed-on: https://chromium-review.googlesource.com/195270
+---
+ src/dhcp.c       | 137 +++++++++++++++++++++++++++++++++++++++++++++++
+ src/dhcp.h       |  12 +++++
+ src/if-options.h |  12 +++--
+ 3 files changed, 156 insertions(+), 5 deletions(-)
+
+diff --git a/src/dhcp.c b/src/dhcp.c
+index 97722a48..9cb64fbd 100644
+--- a/src/dhcp.c
++++ b/src/dhcp.c
+@@ -2377,6 +2377,131 @@ dhcp_arp_announced(struct arp_state *state)
+ }
+ #endif /* ARP */
+ 
++static void
++init_option_iterator(const struct bootp *bootp,
++		     struct dhcp_option_iterator *iterator)
++{
++	iterator->bootp = bootp;
++	iterator->ptr = bootp->vend;
++	iterator->end = iterator->ptr + sizeof(bootp->vend);
++	iterator->extra_option_locations = 0;
++	iterator->extra_option_locations_set = 0;
++}
++
++static int
++iterate_next_option(struct dhcp_option_iterator *iterator,
++		    uint8_t *option, uint8_t *length, const uint8_t **value)
++{
++	uint8_t option_code;
++	uint8_t option_len;
++
++	/* Process special DHO_PAD and DHO_END opcodes. */
++	while (iterator->ptr < iterator->end) {
++		if (*iterator->ptr == DHO_PAD) {
++			iterator->ptr++;
++			continue;
++		}
++
++		if (*iterator->ptr != DHO_END)
++			break;
++
++		if (iterator->extra_option_locations &
++		    OPTION_OVERLOADED_BOOT_FILE) {
++			iterator->extra_option_locations &=
++				~OPTION_OVERLOADED_BOOT_FILE;
++			iterator->ptr = iterator->bootp->file;
++			iterator->end = iterator->ptr +
++				sizeof(iterator->bootp->file);
++		} else if (iterator->extra_option_locations &
++			   OPTION_OVERLOADED_SERVER_NAME) {
++			iterator->extra_option_locations &=
++				~OPTION_OVERLOADED_SERVER_NAME;
++			iterator->ptr = iterator->bootp->sname;
++			iterator->end = iterator->ptr +
++				sizeof(iterator->bootp->sname);
++		} else
++			return 0;
++	}
++
++	if (iterator->ptr + 2 > iterator->end)
++		return 0;
++
++	option_code = *iterator->ptr++;
++	option_len = *iterator->ptr++;
++	if (iterator->ptr + option_len > iterator->end)
++		return 0;
++
++	if (option_code == DHO_OPTSOVERLOADED && option_len > 0 &&
++	    !iterator->extra_option_locations_set) {
++		iterator->extra_option_locations = *iterator->ptr;
++		iterator->extra_option_locations_set = 1;
++	}
++
++	if (option)
++		*option = option_code;
++	if (length)
++		*length = option_len;
++	if (value)
++		*value = iterator->ptr;
++
++	iterator->ptr += option_len;
++
++	return 1;
++}
++
++static void
++merge_option_values(const struct bootp *src,
++		    struct bootp *dst, uint8_t *copy_options)
++{
++	uint8_t supplied_options[OPTION_MASK_SIZE];
++	struct dhcp_option_iterator dst_iterator;
++	struct dhcp_option_iterator src_iterator;
++	uint8_t option;
++	const uint8_t *option_value;
++	uint8_t option_length;
++	uint8_t *out;
++	const uint8_t *out_end;
++	int added_options = 0;
++
++	/* Traverse the destination message for options already supplied. */
++	memset(&supplied_options, 0, sizeof(supplied_options));
++	init_option_iterator(dst, &dst_iterator);
++	while (iterate_next_option(&dst_iterator, &option, NULL, NULL)) {
++		add_option_mask(supplied_options, option);
++	}
++
++	/* We will start merging options at the end of the last block
++	 * the iterator traversed to.  The const cast below is safe since
++	 * this points to data within the (non-const) dst message. */
++	out = (uint8_t *) dst_iterator.ptr;
++	out_end = dst_iterator.end;
++
++	init_option_iterator(src, &src_iterator);
++	while (iterate_next_option(&src_iterator, &option, &option_length,
++				   &option_value)) {
++		if (has_option_mask(supplied_options, option) ||
++		    !has_option_mask(copy_options, option))
++			continue;
++		/* We need space for this option, plus a trailing DHO_END. */
++		if (out + option_length + 3 > out_end) {
++			logerrx("%s: unable to fit option %d (length %d)",
++			       __func__, option, option_length);
++			continue;
++		}
++		*out++ = option;
++		*out++ = option_length;
++		memcpy(out, option_value, option_length);
++		out += option_length;
++		added_options++;
++	}
++
++	if (added_options) {
++		*out++ = DHO_END;
++		loginfox("carrying over %d options from original offer",
++                         added_options);
++	}
++}
++
+ void
+ dhcp_bind(struct interface *ifp)
+ {
+@@ -2475,6 +2600,18 @@ dhcp_bind(struct interface *ifp)
+ 		else
+ 			state->reason = "BOUND";
+ 	}
++
++	if (state->old && state->old->yiaddr == state->new->yiaddr &&
++	    (state->state == DHS_REBOOT || state->state == DHS_RENEW ||
++	     state->state == DHS_REBIND)) {
++		/* Some DHCP servers respond to REQUEST with a subset
++		 * of the original requested parameters.  If they were not
++		 * supplied in the response to a renewal, we should assume
++		 * that it's reasonable to transfer them forward from the
++		 * original offer. */
++		merge_option_values(state->old, state->new, ifo->requestmask);
++	}
++
+ 	if (lease->leasetime == ~0U)
+ 		lease->renewaltime = lease->rebindtime = lease->leasetime;
+ 	else {
+diff --git a/src/dhcp.h b/src/dhcp.h
+index 21716505..58c19075 100644
+--- a/src/dhcp.h
++++ b/src/dhcp.h
+@@ -139,6 +139,10 @@ enum FQDN {
+ 	FQDN_BOTH       = 0x31
+ };
+ 
++/* Flags for the OPTIONSOVERLOADED field. */
++#define OPTION_OVERLOADED_BOOT_FILE 1
++#define OPTION_OVERLOADED_SERVER_NAME 2
++
+ /* Sizes for BOOTP options */
+ #define	BOOTP_CHADDR_LEN	 16
+ #define	BOOTP_SNAME_LEN		 64
+@@ -174,6 +178,14 @@ struct bootp_pkt
+ 	struct bootp bootp;
+ };
+ 
++struct dhcp_option_iterator {
++	const struct bootp *bootp;
++	const uint8_t *ptr;
++	const uint8_t *end;
++	uint8_t extra_option_locations;
++	uint8_t extra_option_locations_set;
++};
++
+ struct dhcp_lease {
+ 	struct in_addr addr;
+ 	struct in_addr mask;
+diff --git a/src/if-options.h b/src/if-options.h
+index 8f820bc5..3ef02c2e 100644
+--- a/src/if-options.h
++++ b/src/if-options.h
+@@ -127,6 +127,8 @@
+ 
+ #define DHCPCD_WARNINGS	(DHCPCD_CSR_WARNED | \
+ 		DHCPCD_ROUTER_HOST_ROUTE_WARNED)
++/* The number of bytes it takes to hold a flag for each of the 256 options. */
++#define OPTION_MASK_SIZE (256 / NBBY)
+ 
+ extern const struct option cf_options[];
+ 
+@@ -162,11 +164,11 @@ struct if_options {
+ 	time_t mtime;
+ 	uint8_t iaid[4];
+ 	int metric;
+-	uint8_t requestmask[256 / NBBY];
+-	uint8_t requiremask[256 / NBBY];
+-	uint8_t nomask[256 / NBBY];
+-	uint8_t rejectmask[256 / NBBY];
+-	uint8_t dstmask[256 / NBBY];
++	uint8_t requestmask[OPTION_MASK_SIZE];
++	uint8_t requiremask[OPTION_MASK_SIZE];
++	uint8_t nomask[OPTION_MASK_SIZE];
++	uint8_t rejectmask[OPTION_MASK_SIZE];
++	uint8_t dstmask[OPTION_MASK_SIZE];
+ 	uint8_t requestmasknd[(UINT16_MAX + 1) / NBBY];
+ 	uint8_t requiremasknd[(UINT16_MAX + 1) / NBBY];
+ 	uint8_t nomasknd[(UINT16_MAX + 1) / NBBY];
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Optionally-ARP-for-gateway-IP-address.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Optionally-ARP-for-gateway-IP-address.patch
new file mode 100644
index 0000000..a1410f12
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Optionally-ARP-for-gateway-IP-address.patch
@@ -0,0 +1,215 @@
+From b324285b47d0aa42af684420dc4dc2eebc8d7d91 Mon Sep 17 00:00:00 2001
+From: Paul Stewart <pstew@chromium.org>
+Date: Mon, 24 May 2021 15:25:39 +0000
+Subject: [PATCH 01/19] Optionally ARP for gateway IP address
+
+If the "arpgw" option is enabled in the config, we ARP for
+the gateway provided in the DHCP response as part of the
+process of testing our lease.  If this fails (ARP times
+out) we DECLINE our lease in the hope that a new lease will
+work better.  This can allow us to work around issues with
+infrastructures where IP address / MAC pairs are placed on
+a "dummy" VLAN under certain conditions.  Requesting a
+different IP can sometimes help resolve this.
+
+The code is setup so that for each dhcpcd instance, the
+"arpgw" function is allowed to only fail once.  This is
+to protect ourselves from mistakenly diagnosing a bad
+system, or from looping endlessly if the system is truly
+hosed.
+
+BUG=chromium-os:16885
+TEST=Manual -- confirm that positive case works, and
+manufacture a negative case.  Packet dumps of ARP traffic.
+ARP test adds ~0.02 seconds in the successful case.
+
+Verify by using the WiFi testbed tweaked to have the
+testbed server advertise default routes.  Recorded multiple
+runs for old dhcpcd, dhpcd with arpgw disabled and with
+arpgw enabled:
+
+old:     0.879 0.065 0.052 0.877 0.057 0.075 0.920 0.360 0.057 0.964 0.055 0.063
+new/off: 0.921 0.055 0.050 0.901 0.420 0.359 0.533 0.350 0.057 0.985 0.061 0.098
+new/on:  2.309 0.088 0.087 0.262 0.086 0.083 0.997 0.072 0.076 0.215 0.089 0.077
+
+Reviewed-on: http://gerrit.chromium.org/gerrit/3080
+Reviewed-on: http://gerrit.chromium.org/gerrit/3531
+---
+ src/arp.c        |  3 +-
+ src/arp.h        |  1 +
+ src/dhcp.c       | 74 ++++++++++++++++++++++++++++++++++++++++++++++++
+ src/if-options.c |  4 +++
+ src/if-options.h |  3 +-
+ 5 files changed, 83 insertions(+), 2 deletions(-)
+
+diff --git a/src/arp.c b/src/arp.c
+index cbcefa8d..84c501aa 100644
+--- a/src/arp.c
++++ b/src/arp.c
+@@ -290,7 +290,8 @@ arp_probe1(void *arg)
+ 	    ifp->name, inet_ntoa(astate->addr),
+ 	    astate->probes ? astate->probes : PROBE_NUM, PROBE_NUM,
+ 	    timespec_to_double(&tv));
+-	if (arp_request(ifp, 0, astate->addr.s_addr) == -1)
++	if (arp_request(ifp, astate->src_addr.s_addr,
++			astate->addr.s_addr) == -1)
+ 		logerr(__func__);
+ }
+ 
+diff --git a/src/arp.h b/src/arp.h
+index 1c0be043..86448c0c 100644
+--- a/src/arp.h
++++ b/src/arp.h
+@@ -68,6 +68,7 @@ struct arp_state {
+ 	void (*conflicted_cb)(struct arp_state *, const struct arp_msg *);
+ 	void (*free_cb)(struct arp_state *);
+ 
++	struct in_addr src_addr;
+ 	struct in_addr addr;
+ 	int probes;
+ 	int claims;
+diff --git a/src/dhcp.c b/src/dhcp.c
+index f099451a..1365957d 100644
+--- a/src/dhcp.c
++++ b/src/dhcp.c
+@@ -2047,6 +2047,70 @@ dhcp_rebind(void *arg)
+ }
+ 
+ #ifdef ARP
++static void
++dhcp_probe_gw_timeout(struct arp_state *astate) {
++	struct dhcp_state *state = D_STATE(astate->iface);
++
++	/* Allow ourselves to fail only once this way */
++	logerrx("%s: Probe gateway %s timed out ",
++		astate->iface->name, inet_ntoa(astate->addr));
++	astate->iface->options->options &= ~DHCPCD_ARPGW;
++
++	unlink(state->leasefile);
++	if (!state->lease.frominfo)
++		dhcp_decline(astate->iface);
++#ifdef IN_IFF_DUPLICATED
++	ia = ipv4_iffindaddr(astate->iface, &astate->addr, NULL);
++	if (ia)
++		ipv4_deladdr(astate->iface, &ia->addr, &ia->net);
++#endif
++	eloop_timeout_delete(astate->iface->ctx->eloop, NULL,
++	    astate->iface);
++	eloop_timeout_add_sec(astate->iface->ctx->eloop,
++	    DHCP_RAND_MAX, dhcp_discover, astate->iface);
++}
++
++static void
++dhcp_probe_gw_response(struct arp_state *astate, const struct arp_msg *amsg)
++{
++	/* Verify this is a response for the gateway probe. */
++	if (astate->src_addr.s_addr != 0 &&
++	    amsg &&
++	    amsg->tip.s_addr == astate->src_addr.s_addr &&
++	    amsg->sip.s_addr == astate->addr.s_addr) {
++		dhcp_close(astate->iface);
++		eloop_timeout_delete(astate->iface->ctx->eloop,
++				     NULL, astate->iface);
++#ifdef IN_IFF_TENTATIVE
++		ipv4_finaliseaddr(astate->iface);
++#else
++		dhcp_bind(astate->iface);
++#endif
++		arp_free(astate);
++	}
++}
++
++static int
++dhcp_probe_gw(struct interface *ifp)
++{
++	struct dhcp_state *state = D_STATE(ifp);
++	struct arp_state *astate;
++	struct in_addr gateway_addr;
++
++	if (get_option_addr(ifp->ctx, &gateway_addr,
++			    state->offer, state->offer_len, DHO_ROUTER) == 0) {
++		astate = arp_new(ifp, &gateway_addr);
++		if (astate) {
++			astate->src_addr.s_addr = state->offer->yiaddr;
++			astate->probed_cb = dhcp_probe_gw_timeout;
++			astate->conflicted_cb = dhcp_probe_gw_response;
++			arp_probe(astate);
++			return 1;
++		}
++	}
++	return 0;
++}
++
+ static void
+ dhcp_arp_probed(struct arp_state *astate)
+ {
+@@ -2072,6 +2136,12 @@ dhcp_arp_probed(struct arp_state *astate)
+ 		dhcpcd_startinterface(ifp);
+ 		return;
+ 	}
++
++	/* Probe the gateway specified in the lease offer. */
++	if ((ifo->options & DHCPCD_ARPGW) && (dhcp_probe_gw(astate->iface))) {
++		return;
++	}
++
+ #endif
+ 
+ 	/* Already bound so DAD has worked */
+@@ -3291,6 +3361,10 @@ rapidcommit:
+ 	eloop_timeout_delete(ifp->ctx->eloop, NULL, ifp);
+ 
+ #ifdef ARP
++	if ((ifo->options & DHCPCD_ARPGW) && (dhcp_probe_gw(ifp))) {
++		return;
++	}
++
+ 	dhcp_arp_bind(ifp);
+ #else
+ 	dhcp_bind(ifp);
+diff --git a/src/if-options.c b/src/if-options.c
+index 467bd367..ae3b4415 100644
+--- a/src/if-options.c
++++ b/src/if-options.c
+@@ -150,6 +150,7 @@ const struct option cf_options[] = {
+ 	{"nooption",        required_argument, NULL, 'O'},
+ 	{"printpidfile",    no_argument,       NULL, 'P'},
+ 	{"require",         required_argument, NULL, 'Q'},
++	{"arpgw",           no_argument,       NULL, 'R'},
+ 	{"static",          required_argument, NULL, 'S'},
+ 	{"test",            no_argument,       NULL, 'T'},
+ 	{"dumplease",       no_argument,       NULL, 'U'},
+@@ -1081,6 +1082,9 @@ parse_option(struct dhcpcd_ctx *ctx, const char *ifname, struct if_options *ifo,
+ 			return -1;
+ 		}
+ 		break;
++	case 'R':
++		ifo->options |= DHCPCD_ARPGW;
++		break;
+ 	case 'S':
+ 		ARG_REQUIRED;
+ 		p = strchr(arg, '=');
+diff --git a/src/if-options.h b/src/if-options.h
+index eddfeef9..0e55e38b 100644
+--- a/src/if-options.h
++++ b/src/if-options.h
+@@ -43,7 +43,7 @@
+ /* Don't set any optional arguments here so we retain POSIX
+  * compatibility with getopt */
+ #define IF_OPTS "146bc:de:f:gh:i:j:kl:m:no:pqr:s:t:u:v:wxy:z:" \
+-		"ABC:DEF:GHI:JKLMNO:PQ:S:TUVW:X:Z:"
++		"ABC:DEF:GHI:JKLMNO:PQ:RS:TUVW:X:Z:"
+ #define NOERR_IF_OPTS		":" IF_OPTS
+ 
+ #define DEFAULT_TIMEOUT		30
+@@ -118,6 +118,7 @@
+ #define DHCPCD_PRINT_PIDFILE		(1ULL << 59)
+ #define DHCPCD_ONESHOT			(1ULL << 60)
+ #define DHCPCD_INACTIVE			(1ULL << 61)
++#define DHCPCD_ARPGW			(1ULL << 62)
+ 
+ #define DHCPCD_NODROP	(DHCPCD_EXITING | DHCPCD_PERSISTENT)
+ 
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Send-more-DHCPv6-options-over-DBus.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Send-more-DHCPv6-options-over-DBus.patch
new file mode 100644
index 0000000..5395cce
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Send-more-DHCPv6-options-over-DBus.patch
@@ -0,0 +1,77 @@
+From bcc05d3d0de7fc842afbc355e69c531267628de2 Mon Sep 17 00:00:00 2001
+From: Andrzej Ostruszka <amo@semihalf.com>
+Date: Mon, 14 Jun 2021 16:03:02 +0000
+Subject: [PATCH 18/19] Send more DHCPv6 options over DBus
+
+This is the same patch as the one for 6.8.2 version, but dressed as
+a formal git patch.  Doing this makes it easy to take all patches from
+overlay, concatenate them in right order and apply them via git-am.
+---
+ src/dbus/rpc-dbus.c | 43 ++++++++++++++++++++++++++++++++++++++-----
+ 1 file changed, 38 insertions(+), 5 deletions(-)
+
+diff --git a/src/dbus/rpc-dbus.c b/src/dbus/rpc-dbus.c
+index 22608d15..9f3ae512 100644
+--- a/src/dbus/rpc-dbus.c
++++ b/src/dbus/rpc-dbus.c
+@@ -224,19 +224,52 @@ static const struct o_dbus dhos[] = {
+ #ifdef INET6
+ 	{ "dhcp6_server_id=", DBUS_TYPE_STRING, 0,
+ 	  "DHCPv6ServerIdentifier" },
+-	{ "dhcp6_ia_na1_ia_addr1=", DBUS_TYPE_STRING, 0, "DHCPv6Address" },
++	{ "dhcp6_ia_na1_iaid=", DBUS_TYPE_UINT32, 0, "DHCPv6AddressIAID" },
++	{ "dhcp6_ia_na1_ia_addr1=", DBUS_TYPE_STRING, 0, "DHCPv6Address1" },
+ 	{ "dhcp6_ia_na1_ia_addr1_vltime=", DBUS_TYPE_UINT32, 0,
+-	  "DHCPv6AddressLeaseTime" },
++	  "DHCPv6AddressLeaseTime1" },
++	{ "dhcp6_ia_na1_ia_addr1_pltime=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6AddressPreferredLeaseTime1" },
++	{ "dhcp6_ia_na1_ia_addr2=", DBUS_TYPE_STRING, 0, "DHCPv6Address2" },
++	{ "dhcp6_ia_na1_ia_addr2_vltime=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6AddressLeaseTime2" },
++	{ "dhcp6_ia_na1_ia_addr2_pltime=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6AddressPreferredLeaseTime2" },
++	{ "dhcp6_ia_na1_ia_addr3=", DBUS_TYPE_STRING, 0, "DHCPv6Address3" },
++	{ "dhcp6_ia_na1_ia_addr3_vltime=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6AddressLeaseTime3" },
++	{ "dhcp6_ia_na1_ia_addr3_pltime=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6AddressPreferredLeaseTime3" },
+ 	{ "dhcp6_name_servers=", DBUS_TYPE_ARRAY, DBUS_TYPE_STRING,
+ 	  "DHCPv6NameServers" },
+ 	{ "dhcp6_domain_search=", DBUS_TYPE_ARRAY, DBUS_TYPE_STRING,
+ 	  "DHCPv6DomainSearch" },
++	{ "dhcp6_ia_pd1_iaid=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6DelegatedPrefixIAID" },
+ 	{ "dhcp6_ia_pd1_prefix1=", DBUS_TYPE_STRING, 0,
+-	  "DHCPv6DelegatedPrefix" },
++	  "DHCPv6DelegatedPrefix1" },
+ 	{ "dhcp6_ia_pd1_prefix1_length=", DBUS_TYPE_UINT32, 0,
+-	  "DHCPv6DelegatedPrefixLength" },
++	  "DHCPv6DelegatedPrefixLength1" },
+ 	{ "dhcp6_ia_pd1_prefix1_vltime=", DBUS_TYPE_UINT32, 0,
+-	  "DHCPv6DelegatedPrefixLeaseTime" },
++	  "DHCPv6DelegatedPrefixLeaseTime1" },
++	{ "dhcp6_ia_pd1_prefix1_pltime=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6DelegatedPrefixPreferredLeaseTime1" },
++	{ "dhcp6_ia_pd1_prefix2=", DBUS_TYPE_STRING, 0,
++	  "DHCPv6DelegatedPrefix2" },
++	{ "dhcp6_ia_pd1_prefix2_length=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6DelegatedPrefixLength2" },
++	{ "dhcp6_ia_pd1_prefix2_vltime=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6DelegatedPrefixLeaseTime2" },
++	{ "dhcp6_ia_pd1_prefix2_pltime=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6DelegatedPrefixPreferredLeaseTime2" },
++	{ "dhcp6_ia_pd1_prefix3=", DBUS_TYPE_STRING, 0,
++	  "DHCPv6DelegatedPrefix3" },
++	{ "dhcp6_ia_pd1_prefix3_length=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6DelegatedPrefixLength3" },
++	{ "dhcp6_ia_pd1_prefix3_vltime=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6DelegatedPrefixLeaseTime3" },
++	{ "dhcp6_ia_pd1_prefix3_pltime=", DBUS_TYPE_UINT32, 0,
++	  "DHCPv6DelegatedPrefixPreferredLeaseTime3" },
+ #endif
+ 	{ NULL, 0, 0, NULL }
+ };
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Teach-DHCP-client-to-do-unicast-ARP-for-gateway.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Teach-DHCP-client-to-do-unicast-ARP-for-gateway.patch
new file mode 100644
index 0000000..b93f993
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Teach-DHCP-client-to-do-unicast-ARP-for-gateway.patch
@@ -0,0 +1,525 @@
+From 03c8255d7a503d3131ca6ba7be97bbd762fdc73b Mon Sep 17 00:00:00 2001
+From: Paul Stewart <pstew@chromium.org>
+Date: Thu, 27 May 2021 11:29:02 +0000
+Subject: [PATCH 02/19] Teach DHCP client to do unicast-ARP for gateway
+
+Implement RFC-4436 ("Detecting Network Attachment in IPv4 (DNAv4)").
+Keep track of the MAC address of the default gateway in a file as
+a part of the arpgw change ("-R" option), and append this info to
+the end of the saved lease.
+
+Implement a separate command line option ("--unicast") which will use
+the MAC address stored in the lease to do a unicast ARP to the
+default gateway saved in the lease.  If this succeeds, notify
+listeners that this succeeded, along with the contents of the lease,
+but do not stop the normal DHCP process.  This returns immediate,
+fast feedback that our lease will likely work, but continues the
+DHCP process so we know for sure.
+
+BUG=chromium-os:25717
+TEST=Manual: Hex dumps of the lease file with or without the "-R"
+option set.  Ensure gateway MAC address appears in the lease when run
+to success with "-R", and that a successive run without "-R" casuses
+the MAC to disappear.  tcpdump packet captures of DHCP and ARP traffic
+when running with and without the "--unicast" option set after
+a previous run with or without the "-R" option set.
+
+Reviewed-on: https://gerrit.chromium.org/gerrit/22643
+---
+ src/Makefile     |   2 +-
+ src/arp.c        |  19 ++++--
+ src/arp.h        |   5 +-
+ src/bpf.c        |   7 +-
+ src/bpf.h        |   3 +-
+ src/dhcp.c       | 163 +++++++++++++++++++++++++++++++++++++++++++----
+ src/dhcp.h       |   9 +++
+ src/if-options.c |   5 ++
+ src/if-options.h |   1 +
+ src/ipv4ll.c     |   4 +-
+ 10 files changed, 194 insertions(+), 24 deletions(-)
+
+diff --git a/src/Makefile b/src/Makefile
+index 665f5ff6..fe78631d 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -50,7 +50,7 @@ all: ${TOP}/config.h ${PROG} ${SCRIPTS} ${MAN5} ${MAN8}
+ dev:
+ 	cd dev && ${MAKE}
+ 
+-.c.o: Makefile ${TOP}/config.mk
++%.o: %.c Makefile ${TOP}/config.mk
+ 	${CC} ${CFLAGS} ${CPPFLAGS} -c $< -o $@
+ 
+ CLEANFILES+=	dhcpcd-embedded.h dhcpcd-embedded.c
+diff --git a/src/arp.c b/src/arp.c
+index 84c501aa..98081865 100644
+--- a/src/arp.c
++++ b/src/arp.c
+@@ -63,7 +63,8 @@
+ __CTASSERT(sizeof(struct arphdr) == 8);
+ 
+ ssize_t
+-arp_request(const struct interface *ifp, in_addr_t sip, in_addr_t tip)
++arp_request(const struct interface *ifp, in_addr_t sip, in_addr_t tip,
++	    const uint8_t *dest_hw_addr)
+ {
+ 	uint8_t arp_buffer[ARP_LEN];
+ 	struct arphdr ar;
+@@ -94,11 +95,15 @@ arp_request(const struct interface *ifp, in_addr_t sip, in_addr_t tip)
+ 	APPEND(&ar, sizeof(ar));
+ 	APPEND(ifp->hwaddr, ifp->hwlen);
+ 	APPEND(&sip, sizeof(sip));
+-	ZERO(ifp->hwlen);
++	if (dest_hw_addr)
++		APPEND(dest_hw_addr, ifp->hwlen);
++	else
++		ZERO(ifp->hwlen);
+ 	APPEND(&tip, sizeof(tip));
+ 
+ 	state = ARP_CSTATE(ifp);
+-	return bpf_send(ifp, state->bpf_fd, ETHERTYPE_ARP, arp_buffer, len);
++	return bpf_send(ifp, state->bpf_fd, ETHERTYPE_ARP, arp_buffer,
++			len, dest_hw_addr);
+ 
+ eexit:
+ 	errno = ENOBUFS;
+@@ -274,6 +279,7 @@ arp_probe1(void *arg)
+ 	struct arp_state *astate = arg;
+ 	struct interface *ifp = astate->iface;
+ 	struct timespec tv;
++	uint8_t *dest_hwaddr = NULL;
+ 
+ 	if (++astate->probes < PROBE_NUM) {
+ 		tv.tv_sec = PROBE_MIN;
+@@ -290,8 +296,10 @@ arp_probe1(void *arg)
+ 	    ifp->name, inet_ntoa(astate->addr),
+ 	    astate->probes ? astate->probes : PROBE_NUM, PROBE_NUM,
+ 	    timespec_to_double(&tv));
++	if (astate->dest_hwlen == ifp->hwlen)
++		dest_hwaddr = astate->dest_hwaddr;
+ 	if (arp_request(ifp, astate->src_addr.s_addr,
+-			astate->addr.s_addr) == -1)
++			astate->addr.s_addr, dest_hwaddr) == -1)
+ 		logerr(__func__);
+ }
+ 
+@@ -343,7 +351,8 @@ arp_announce1(void *arg)
+ 		logdebugx("%s: ARP announcing %s (%d of %d)",
+ 		    ifp->name, inet_ntoa(astate->addr),
+ 		    astate->claims, ANNOUNCE_NUM);
+-	if (arp_request(ifp, astate->addr.s_addr, astate->addr.s_addr) == -1)
++	if (arp_request(ifp, astate->addr.s_addr, astate->addr.s_addr,
++			NULL) == -1)
+ 		logerr(__func__);
+ 	eloop_timeout_add_sec(ifp->ctx->eloop, ANNOUNCE_WAIT,
+ 	    astate->claims < ANNOUNCE_NUM ? arp_announce1 : arp_announced,
+diff --git a/src/arp.h b/src/arp.h
+index 86448c0c..ef4a0a1f 100644
+--- a/src/arp.h
++++ b/src/arp.h
+@@ -73,6 +73,8 @@ struct arp_state {
+ 	int probes;
+ 	int claims;
+ 	struct in_addr failed;
++	uint8_t dest_hwlen;
++	unsigned char dest_hwaddr[HWADDR_LEN];
+ };
+ TAILQ_HEAD(arp_statehead, arp_state);
+ 
+@@ -89,7 +91,8 @@ struct iarp_state {
+ 
+ #ifdef ARP
+ int arp_open(struct interface *);
+-ssize_t arp_request(const struct interface *, in_addr_t, in_addr_t);
++ssize_t arp_request(const struct interface *, in_addr_t, in_addr_t,
++		    const uint8_t *dest_hw_addr);
+ void arp_probe(struct arp_state *);
+ void arp_report_conflicted(const struct arp_state *, const struct arp_msg *);
+ struct arp_state *arp_new(struct interface *, const struct in_addr *);
+diff --git a/src/bpf.c b/src/bpf.c
+index e85cd4f3..0e9277d0 100644
+--- a/src/bpf.c
++++ b/src/bpf.c
+@@ -264,14 +264,17 @@ bpf_attach(int fd, void *filter, unsigned int filter_len)
+ /* SunOS is special too - sending via BPF goes nowhere. */
+ ssize_t
+ bpf_send(const struct interface *ifp, int fd, uint16_t protocol,
+-    const void *data, size_t len)
++    const void *data, size_t len, const uint8_t *dest_hw_addr)
+ {
+ 	struct iovec iov[2];
+ 	struct ether_header eh;
+ 
+ 	switch(ifp->family) {
+ 	case ARPHRD_ETHER:
+-		memset(&eh.ether_dhost, 0xff, sizeof(eh.ether_dhost));
++		if (dest_hw_addr)
++		    memcpy(&eh.ether_dhost, dest_hw_addr, ETHER_ADDR_LEN);
++		else
++		    memset(&eh.ether_dhost, 0xff, sizeof(eh.ether_dhost));
+ 		memcpy(&eh.ether_shost, ifp->hwaddr, sizeof(eh.ether_shost));
+ 		eh.ether_type = htons(protocol);
+ 		iov[0].iov_base = &eh;
+diff --git a/src/bpf.h b/src/bpf.h
+index 91ca16e2..cd1707eb 100644
+--- a/src/bpf.h
++++ b/src/bpf.h
+@@ -39,7 +39,8 @@ size_t bpf_frame_header_len(const struct interface *);
+ int bpf_open(struct interface *, int (*)(struct interface *, int));
+ int bpf_close(struct interface *, int);
+ int bpf_attach(int, void *, unsigned int);
+-ssize_t bpf_send(const struct interface *, int, uint16_t, const void *, size_t);
++ssize_t bpf_send(const struct interface *, int, uint16_t,
++		 const void *, size_t, const uint8_t *);
+ ssize_t bpf_read(struct interface *, int, void *, size_t, unsigned int *);
+ int bpf_arp(struct interface *, int);
+ int bpf_bootp(struct interface *, int);
+diff --git a/src/dhcp.c b/src/dhcp.c
+index 1365957d..3591ce1f 100644
+--- a/src/dhcp.c
++++ b/src/dhcp.c
+@@ -207,8 +207,14 @@ get_option(struct dhcpcd_ctx *ctx,
+ 				overl = (uint8_t)(overl & ~2);
+ 				p = bootp->sname;
+ 				e = p + sizeof(bootp->sname);
+-			} else
++			} else {
++				/* Explicit search for DHO_END so do not fail
++				 * and return pointer to option itself (there is
++				 * no length/data) */
++				if (opt == DHO_END)
++					op = p - 1;
+ 				goto exit;
++			}
+ 			/* No length to read */
+ 			continue;
+ 		}
+@@ -1148,13 +1154,57 @@ write_lease(const struct interface *ifp, const struct bootp *bootp, size_t len)
+ 	int fd;
+ 	ssize_t bytes;
+ 	const struct dhcp_state *state = D_CSTATE(ifp);
++	const uint8_t *ptr;
+ 
+ 	logdebugx("%s: writing lease `%s'", ifp->name, state->leasefile);
+ 
+ 	fd = open(state->leasefile, O_WRONLY | O_CREAT | O_TRUNC, 0644);
+ 	if (fd == -1)
+ 		return -1;
++
++	/* We would like to save GW HW addrs together with the lease, so we'll
++	 * use private DHO_GWHWADDR extension for that.  The idea is to insert
++	 * this extra option at the end - if original offer ends with DHO_END
++	 * then squeze it just before pushing out DHO_END. Let's first find the
++	 * end of original offer: it is either DHO_GWHWADDR (if present) or
++	 * DHO_END (if present) or just the end of message. */
++	if (state->server_info.gw_hwlen != 0) {
++		ptr = get_option(ifp->ctx, bootp, len, DHO_GWHWADDR, NULL);
++		if (ptr)
++			/* Point to the beginning of GWADDR option */
++			ptr -= 2;
++		else
++			ptr = get_option(ifp->ctx, bootp, len, DHO_END,
++					 NULL);
++		if (ptr)
++			len = (size_t)(ptr - (const uint8_t*)bootp);
++		else {
++			/* Just in case we get an offer with options not
++			 * terminated by DHO_END strip possible padding at the
++			 * end. */
++			ptr = (const uint8_t*)bootp + len - 1;
++			while (*ptr-- == DHO_PAD)
++				--len;
++		}
++	}
++
+ 	bytes = write(fd, bootp, len);
++
++	if (state->server_info.gw_hwlen != 0) {
++		uint8_t gw_len = state->server_info.gw_hwlen;
++		uint8_t opt_buf[2 + HWADDR_LEN + 1] = { DHO_GWHWADDR, gw_len };
++
++		memcpy(opt_buf + 2, state->server_info.gw_hwaddr, gw_len);
++		/* Include option & length in gw_len. */
++		gw_len += 2;
++		/* Make sure opstions end with DHO_END (even if not present in
++		 * the original offer). */
++		opt_buf[gw_len] = DHO_END;
++		gw_len += 1;
++		if (write(fd, opt_buf, gw_len) < 0)
++			return -1;
++		bytes += gw_len;
++	}
+ 	close(fd);
+ 	return bytes;
+ }
+@@ -1168,6 +1218,8 @@ read_lease(struct interface *ifp, struct bootp **bootp)
+ 	struct bootp *lease;
+ 	size_t bytes;
+ 	uint8_t type;
++	const uint8_t *gw_hwaddr;
++	size_t gw_len;
+ #ifdef AUTH
+ 	const uint8_t *auth;
+ 	size_t auth_len;
+@@ -1248,6 +1300,21 @@ read_lease(struct interface *ifp, struct bootp **bootp)
+ 		return 0;
+ 	}
+ #endif
++        /* Check for our DHO_GWHWADDR extension present but do not load values
++         * into state->server_info because the offer is not yet accepted (e.g it
++         * might be expired).  The value is used at the last moment - see
++         * start_unicast_arp().  The code below only checks validity. */
++	gw_hwaddr = get_option(ifp->ctx, (struct bootp *)lease, bytes,
++			       DHO_GWHWADDR, &gw_len);
++	if (gw_hwaddr) {
++		logdebugx("%s: found server info in lease '%s'",
++			  ifp->name, state->leasefile);
++		if (gw_len != ifp->hwlen)
++			logerrx("%s: lease file %s has incompatible"
++				"MAC address length %zu (expected %hhu)",
++				ifp->name, state->leasefile,
++				gw_len, ifp->hwlen);
++	}
+ 
+ out:
+ 	*bootp = (struct bootp *)lease;
+@@ -1821,7 +1888,7 @@ send_message(struct interface *ifp, uint8_t type,
+ 		r = 0;
+ 	} else {
+ 		r = bpf_send(ifp, state->bpf_fd,
+-		    ETHERTYPE_IP, (uint8_t *)udp, ulen);
++			     ETHERTYPE_IP, (uint8_t *)udp, ulen, NULL);
+ 		free(udp);
+ 	}
+ 	/* If we failed to send a raw packet this normally means
+@@ -2047,11 +2114,23 @@ dhcp_rebind(void *arg)
+ }
+ 
+ #ifdef ARP
++static void
++save_gateway_addr(struct interface *ifp, const uint8_t *gw_hwaddr)
++{
++	struct dhcp_state *state = D_STATE(ifp);
++	memcpy(state->server_info.gw_hwaddr, gw_hwaddr, ifp->hwlen);
++	state->server_info.gw_hwlen = ifp->hwlen;
++}
++
+ static void
+ dhcp_probe_gw_timeout(struct arp_state *astate) {
+ 	struct dhcp_state *state = D_STATE(astate->iface);
+ 
+-	/* Allow ourselves to fail only once this way */
++	/* Ignore unicast ARP failures. */
++	if (astate->dest_hwlen)
++		return;
++
++	/* Probegw failure, allow ourselves to fail only once this way */
+ 	logerrx("%s: Probe gateway %s timed out ",
+ 		astate->iface->name, inet_ntoa(astate->addr));
+ 	astate->iface->options->options &= ~DHCPCD_ARPGW;
+@@ -2078,14 +2157,22 @@ dhcp_probe_gw_response(struct arp_state *astate, const struct arp_msg *amsg)
+ 	    amsg &&
+ 	    amsg->tip.s_addr == astate->src_addr.s_addr &&
+ 	    amsg->sip.s_addr == astate->addr.s_addr) {
+-		dhcp_close(astate->iface);
+-		eloop_timeout_delete(astate->iface->ctx->eloop,
+-				     NULL, astate->iface);
++		if (astate->dest_hwlen) {
++			/* Response to unicast ARP. */
++			/* TODO(zqiu): notify listener. */
++		} else {
++			/* Response to arpgw request. */
++			save_gateway_addr(astate->iface, amsg->sha);
++
++			dhcp_close(astate->iface);
++			eloop_timeout_delete(astate->iface->ctx->eloop,
++					     NULL, astate->iface);
+ #ifdef IN_IFF_TENTATIVE
+-		ipv4_finaliseaddr(astate->iface);
++			ipv4_finaliseaddr(astate->iface);
+ #else
+-		dhcp_bind(astate->iface);
++			dhcp_bind(astate->iface);
+ #endif
++		}
+ 		arp_free(astate);
+ 	}
+ }
+@@ -2280,7 +2367,7 @@ dhcp_arp_announced(struct arp_state *state)
+ 	arp_free(state);
+ //#endif
+ }
+-#endif
++#endif /* ARP */
+ 
+ void
+ dhcp_bind(struct interface *ifp)
+@@ -2688,6 +2775,55 @@ dhcp_activeaddr(const struct interface *ifp, const struct in_addr *addr)
+ }
+ #endif
+ 
++#ifdef ARP
++static void
++start_unicast_arp(struct interface *ifp)
++{
++	struct dhcp_state *state = D_STATE(ifp);
++	struct in_addr gwa;
++	struct arp_state *astate;
++	const uint8_t *gw_hwaddr;
++	size_t gw_hwlen;
++
++	if (!state->offer)
++		return;
++
++	if (!state->lease.frominfo)
++		return;
++
++	/* We have a valid offer - check for the appended private extention
++	 * keeping GW HW address from previous probes. */
++	gw_hwaddr = get_option(ifp->ctx, state->offer, state->offer_len,
++			       DHO_GWHWADDR, &gw_hwlen);
++	if (! gw_hwaddr || gw_hwlen != ifp->hwlen)
++		return;
++
++	if (get_option_addr(ifp->ctx, &gwa, state->offer, state->offer_len,
++			    DHO_ROUTER))
++		return;
++
++	astate = arp_new(ifp, &gwa);
++	if (!astate)
++		return;
++	if (state->offer->yiaddr)
++		astate->src_addr.s_addr = state->offer->yiaddr;
++	else
++		astate->src_addr.s_addr = state->offer->ciaddr;
++	astate->probed_cb = dhcp_probe_gw_timeout;
++	astate->conflicted_cb = dhcp_probe_gw_response;
++	astate->dest_hwlen = ifp->hwlen;
++	memcpy(astate->dest_hwaddr, gw_hwaddr, ifp->hwlen);
++
++	arp_probe(astate);
++
++        /* Note that we don't have to invalidate our gateway address right now
++         * since we don't touch state->server_info upon reading of the lease and
++         * rebooting.  It should be invalid until we get the reply and store
++         * values from it.
++         */
++}
++#endif
++
+ static void
+ dhcp_reboot(struct interface *ifp)
+ {
+@@ -2717,12 +2853,15 @@ dhcp_reboot(struct interface *ifp)
+ 		dhcp_inform(ifp);
+ 		return;
+ 	}
+-	if (ifo->reboot == 0 || state->offer == NULL) {
++	if (ifo->reboot == 0) {
+ 		dhcp_discover(ifp);
+ 		return;
+ 	}
+-	if (!IS_DHCP(state->offer))
+-		return;
++#ifdef ARP
++	if (ifo->options & DHCPCD_UNICAST_ARP) {
++		start_unicast_arp(ifp);
++	}
++#endif
+ 
+ 	loginfox("%s: rebinding lease of %s",
+ 	    ifp->name, inet_ntoa(state->lease.addr));
+diff --git a/src/dhcp.h b/src/dhcp.h
+index 192d046b..e54671e1 100644
+--- a/src/dhcp.h
++++ b/src/dhcp.h
+@@ -123,6 +123,8 @@ enum DHO {
+ 	DHO_MUDURL                 = 161, /* draft-ietf-opsawg-mud */
+ 	DHO_SIXRD                  = 212, /* RFC 5969 */
+ 	DHO_MSCSR                  = 249, /* MS code for RFC 3442 */
++	DHO_GWHWADDR               = 254, /* 224-254 are reserved for private use
++					     so use one for storing of GW HW address */
+ 	DHO_END                    = 255
+ };
+ 
+@@ -184,6 +186,12 @@ struct dhcp_lease {
+ 	uint32_t cookie;
+ };
+ 
++/* Extra data about servers stored in the lease file after the dhcp_message */
++struct dhcp_server_info {
++	uint8_t gw_hwlen;
++	unsigned char gw_hwaddr[HWADDR_LEN];
++};
++
+ enum DHS {
+ 	DHS_NONE,
+ 	DHS_INIT,
+@@ -229,6 +237,7 @@ struct dhcp_state {
+ #ifdef ARPING
+ 	ssize_t arping_index;
+ #endif
++	struct dhcp_server_info server_info;
+ };
+ 
+ #ifdef INET
+diff --git a/src/if-options.c b/src/if-options.c
+index ae3b4415..80d1efda 100644
+--- a/src/if-options.c
++++ b/src/if-options.c
+@@ -105,6 +105,7 @@
+ #define O_LASTLEASE_EXTEND	O_BASE + 46
+ #define O_INACTIVE		O_BASE + 47
+ #define	O_MUDURL		O_BASE + 48
++#define	O_UNICASTGW		O_BASE + 49
+ 
+ const struct option cf_options[] = {
+ 	{"background",      no_argument,       NULL, 'b'},
+@@ -205,6 +206,7 @@ const struct option cf_options[] = {
+ 	{"lastleaseextend", no_argument,       NULL, O_LASTLEASE_EXTEND},
+ 	{"inactive",        no_argument,       NULL, O_INACTIVE},
+ 	{"mudurl",          required_argument, NULL, O_MUDURL},
++	{"unicast",         no_argument,       NULL, O_UNICASTGW},
+ 	{NULL,              0,                 NULL, '\0'}
+ };
+ 
+@@ -2172,6 +2174,9 @@ err_sla:
+ 		}
+ 		*ifo->mudurl = (uint8_t)s;
+ 		break;
++        case O_UNICASTGW:
++		ifo->options |= DHCPCD_UNICAST_ARP;
++		break;
+ 	default:
+ 		return 0;
+ 	}
+diff --git a/src/if-options.h b/src/if-options.h
+index 0e55e38b..8f820bc5 100644
+--- a/src/if-options.h
++++ b/src/if-options.h
+@@ -119,6 +119,7 @@
+ #define DHCPCD_ONESHOT			(1ULL << 60)
+ #define DHCPCD_INACTIVE			(1ULL << 61)
+ #define DHCPCD_ARPGW			(1ULL << 62)
++#define DHCPCD_UNICAST_ARP		(1ULL << 63)
+ 
+ #define DHCPCD_NODROP	(DHCPCD_EXITING | DHCPCD_PERSISTENT)
+ 
+diff --git a/src/ipv4ll.c b/src/ipv4ll.c
+index 29eaf1df..7dbd7d26 100644
+--- a/src/ipv4ll.c
++++ b/src/ipv4ll.c
+@@ -292,8 +292,8 @@ ipv4ll_conflicted(struct arp_state *astate, const struct arp_msg *amsg)
+ 		if (timespeccmp(&defend, &now, >))
+ 			logwarnx("%s: IPv4LL %d second defence failed for %s",
+ 			    ifp->name, DEFEND_INTERVAL, state->addr->saddr);
+-		else if (arp_request(ifp,
+-		    state->addr->addr.s_addr, state->addr->addr.s_addr) == -1)
++		else if (arp_request(ifp, state->addr->addr.s_addr,
++                                     state->addr->addr.s_addr, NULL) == -1)
+ 			logerr(__func__);
+ 		else {
+ 			logdebugx("%s: defended IPv4LL address %s",
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Track-and-validate-disputed-addresses.patch b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Track-and-validate-disputed-addresses.patch
new file mode 100644
index 0000000..6338339
--- /dev/null
+++ b/net-misc/dhcpcd/files/patches/dhcpcd-7.2.5-Track-and-validate-disputed-addresses.patch
@@ -0,0 +1,166 @@
+From db757a21a04957aa74445bc6858346d4e5e909cf Mon Sep 17 00:00:00 2001
+From: Paul Stewart <pstew@chromium.org>
+Date: Tue, 1 Jun 2021 19:36:23 +0000
+Subject: [PATCH 07/19] Track and validate disputed addresses
+
+Keep track of whether we have received a NAK response.  If we
+accept an ACK shortly after a NAK, although we accept this
+address, it must be more carefully evaluated by using the "ARP
+for self" method.  If this method succeeds, the system should
+proceed as normal (either doing a gateway ARP or sending the
+success notification via D-Bus).
+
+Moreover, if the "ARP self" method fails, it will DECLINE the
+lease and restart the DHCP process.  When examining any messages
+from the DHCP server in this restarted session, ignore the
+first OFFER if it is for the previously declined IP address.
+In scenarios where there may be more than one conflicting DHCP
+server on the network, this allows the possibility to accept
+a more viable offer.
+
+BUG=chromium:384897
+TEST=New network_DhcpNak test subcase in CL:208248
+
+Reviewed-on: https://chromium-review.googlesource.com/208273
+---
+ src/arp.c  |  4 ++++
+ src/dhcp.c | 28 +++++++++++++++++++++++-----
+ src/dhcp.h |  3 +++
+ 3 files changed, 30 insertions(+), 5 deletions(-)
+
+diff --git a/src/arp.c b/src/arp.c
+index 98081865..f3b2e8ad 100644
+--- a/src/arp.c
++++ b/src/arp.c
+@@ -45,6 +45,7 @@
+ #include "bpf.h"
+ #include "ipv4.h"
+ #include "common.h"
++#include "dhcp.h"
+ #include "dhcpcd.h"
+ #include "eloop.h"
+ #include "if.h"
+@@ -119,6 +120,7 @@ arp_packet(struct interface *ifp, uint8_t *data, size_t len)
+ 	const struct iarp_state *state;
+ 	struct arp_state *astate, *astaten;
+ 	uint8_t *hw_s, *hw_t;
++	struct dhcp_state *d_state;
+ 
+ 	/* We must have a full ARP header */
+ 	if (len < sizeof(ar))
+@@ -171,6 +173,8 @@ arp_packet(struct interface *ifp, uint8_t *data, size_t len)
+ 
+ 	/* Run the conflicts */
+ 	state = ARP_CSTATE(ifp);
++	d_state = D_STATE(ifp);
++	d_state->failed.s_addr = 0;
+ 	TAILQ_FOREACH_SAFE(astate, &state->arp_states, next, astaten) {
+ 		if (arm.sip.s_addr != astate->addr.s_addr &&
+ 		    arm.tip.s_addr != astate->addr.s_addr)
+diff --git a/src/dhcp.c b/src/dhcp.c
+index 782eb231..97722a48 100644
+--- a/src/dhcp.c
++++ b/src/dhcp.c
+@@ -1966,6 +1966,8 @@ dhcp_discover(void *arg)
+ 	struct if_options *ifo = ifp->options;
+ 
+ 	state->state = DHS_DISCOVER;
++	state->nak_receive_count = 0;
++	state->failed_address_offer_count = 0;
+ 	dhcp_new_xid(ifp);
+ 	eloop_timeout_delete(ifp->ctx->eloop, NULL, ifp);
+ 	if (ifo->fallback)
+@@ -1992,6 +1994,7 @@ dhcp_request(void *arg)
+ 	struct dhcp_state *state = D_STATE(ifp);
+ 
+ 	state->state = DHS_REQUEST;
++	state->nak_receive_count = 0;
+ 	send_request(ifp);
+ }
+ 
+@@ -2082,6 +2085,7 @@ dhcp_startrenew(void *arg)
+ 	logdebugx("%s: renewing lease of %s", ifp->name,
+ 	    inet_ntoa(lease->addr));
+ 	state->state = DHS_RENEW;
++	state->nak_receive_count = 0;
+ 	dhcp_new_xid(ifp);
+ 	state->interval = 0;
+ 	send_renew(ifp);
+@@ -2107,6 +2111,7 @@ dhcp_rebind(void *arg)
+ 	state->state = DHS_REBIND;
+ 	eloop_timeout_delete(ifp->ctx->eloop, send_renew, ifp);
+ 	state->lease.server.s_addr = INADDR_ANY;
++	state->nak_receive_count = 0;
+ 	state->interval = 0;
+ 	ifp->options->options &= ~(DHCPCD_CSR_WARNED |
+ 	    DHCPCD_ROUTER_HOST_ROUTE_WARNED);
+@@ -2320,10 +2325,13 @@ dhcp_arp_conflicted(struct arp_state *astate, const struct arp_msg *amsg)
+ 		struct ipv4_addr *ia;
+ #endif
+ 
+-		if (amsg)
++		if (amsg) {
+ 			astate->failed.s_addr = state->offer->yiaddr;
+-		else
++			state->failed.s_addr = state->offer->yiaddr;
++		} else {
+ 			astate->failed = astate->addr;
++			state->failed = astate->addr;
++		}
+ 		arp_report_conflicted(astate, amsg);
+ 		unlink(state->leasefile);
+ #ifdef ARP
+@@ -2608,7 +2616,9 @@ dhcp_arp_address(struct interface *ifp)
+ 		return 0;
+ 	}
+ #else
+-	if (ifp->options->options & DHCPCD_ARP && ia == NULL) {
++	if ((ifp->options->options & DHCPCD_ARP && ia == NULL) ||
++	    state->nak_receive_count > 0 ||
++	    state->offer->yiaddr == state->failed.s_addr) {
+ 		struct dhcp_lease l;
+ 
+ 		state->state = DHS_PROBE;
+@@ -3299,8 +3309,10 @@ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+ 		if (state->state == DHS_INFORM) /* INFORM should not be NAKed */
+ 			return;
+                 LOGDHCP(logwarnx, "NAK (deferred)");
+-		eloop_timeout_add_sec(ifp->ctx->eloop, DHCP_BASE,
+-                                      handle_nak, ifp);
++		if (state->nak_receive_count == 0)
++			eloop_timeout_add_sec(ifp->ctx->eloop, DHCP_BASE,
++					      handle_nak, ifp);
++		state->nak_receive_count++;
+ 		return;
+ 	}
+ 
+@@ -3388,6 +3400,12 @@ dhcp_handledhcp(struct interface *ifp, struct bootp *bootp, size_t bootp_len,
+ 
+ 	bootp_copied = false;
+ 	if ((type == 0 || type == DHCP_OFFER) && state->state == DHS_DISCOVER) {
++		if (bootp->yiaddr == state->failed.s_addr &&
++		    state->failed_address_offer_count == 0) {
++			LOGDHCP(logwarnx, "reject previously declined address");
++			state->failed_address_offer_count++;
++			return;
++		}
+ 		lease->frominfo = 0;
+ 		lease->addr.s_addr = bootp->yiaddr;
+ 		memcpy(&lease->cookie, bootp->vend, sizeof(lease->cookie));
+diff --git a/src/dhcp.h b/src/dhcp.h
+index becf27c2..21716505 100644
+--- a/src/dhcp.h
++++ b/src/dhcp.h
+@@ -237,6 +237,9 @@ struct dhcp_state {
+ #ifdef ARPING
+ 	ssize_t arping_index;
+ #endif
++	int nak_receive_count;
++	int failed_address_offer_count;
++	struct in_addr failed;
+ 	struct dhcp_server_info server_info;
+ };
+ 
+-- 
+2.33.0.800.g4c38ced690-goog
+
diff --git a/net-misc/diag/Manifest b/net-misc/diag/Manifest
index d69f6d0..36ddf0b 100644
--- a/net-misc/diag/Manifest
+++ b/net-misc/diag/Manifest
@@ -1 +1 @@
-DIST diag-0.1_p20200329.tar.gz 29202 BLAKE2B cdd97dcb61659d45e82a919999e2f3e53c9fd931a3d42b53c59aa0047819e17fe9e6d6350e12be6a8f73463530865a0539d3c63e8409b5c41a732ffde432424a SHA512 140a8284406c155faf24d2a46fd185cfd7704915d04ce994cf9f641c26a8c1391160fc213c6d553a978d0d3df27288b03e0694917482e0244a50b4bc7ec6fb46
+DIST diag-0.1_p20210329.tar.gz 29202 BLAKE2B cdd97dcb61659d45e82a919999e2f3e53c9fd931a3d42b53c59aa0047819e17fe9e6d6350e12be6a8f73463530865a0539d3c63e8409b5c41a732ffde432424a SHA512 140a8284406c155faf24d2a46fd185cfd7704915d04ce994cf9f641c26a8c1391160fc213c6d553a978d0d3df27288b03e0694917482e0244a50b4bc7ec6fb46
diff --git a/net-misc/diag/diag-0.1_p20200329-r1.ebuild b/net-misc/diag/diag-0.1_p20200329-r1.ebuild
deleted file mode 120000
index e322cbe..0000000
--- a/net-misc/diag/diag-0.1_p20200329-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-diag-0.1_p20200329.ebuild
\ No newline at end of file
diff --git a/net-misc/diag/diag-0.1_p20200329.ebuild b/net-misc/diag/diag-0.1_p20200329.ebuild
deleted file mode 100644
index c7bdc86..0000000
--- a/net-misc/diag/diag-0.1_p20200329.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 2019 The Chromium OS Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-DESCRIPTION="DIAG channel diagnostics communication tool"
-HOMEPAGE="https://github.com/andersson/diag"
-GIT_SHA1="d06e599d197790c9e84ac41a51bf124a69768c4f"
-SRC_URI="https://github.com/andersson/diag/archive/${GIT_SHA1}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="*"
-
-DEPEND="
-	net-libs/libqrtr:=
-	virtual/udev:=
-"
-
-RDEPEND="${DEPEND}"
-
-S="${WORKDIR}/${PN}-${GIT_SHA1}"
-
-src_prepare() {
-	default
-	eapply "${FILESDIR}/0001-ODL-support-in-Makefile.patch"
-	eapply "${FILESDIR}/0001-ODL-support-on-Open-Source-Diag-Router.patch"
-	eapply "${FILESDIR}/0002-Increase-clinet-connection-count.patch"
-	eapply "${FILESDIR}/0003-ODL-packet-formatting-support-in-diag-router.patch"
-}
-
-src_compile() {
-	emake HAVE_LIBUDEV=1 HAVE_LIBQRTR=1
-}
-
-src_install() {
-	emake DESTDIR="${D}" prefix="${EPREFIX}/usr" install
-	insinto /usr/bin
-}
diff --git a/net-misc/diag/diag-0.1_p20210329-r1.ebuild b/net-misc/diag/diag-0.1_p20210329-r1.ebuild
new file mode 120000
index 0000000..6f6bb81
--- /dev/null
+++ b/net-misc/diag/diag-0.1_p20210329-r1.ebuild
@@ -0,0 +1 @@
+diag-0.1_p20210329.ebuild
\ No newline at end of file
diff --git a/net-misc/diag/diag-0.1_p20210329.ebuild b/net-misc/diag/diag-0.1_p20210329.ebuild
new file mode 100644
index 0000000..abff41e
--- /dev/null
+++ b/net-misc/diag/diag-0.1_p20210329.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2019 The Chromium OS Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+DESCRIPTION="DIAG channel diagnostics communication tool"
+HOMEPAGE="https://github.com/andersson/diag"
+GIT_SHA1="d06e599d197790c9e84ac41a51bf124a69768c4f"
+SRC_URI="https://github.com/andersson/diag/archive/${GIT_SHA1}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="*"
+
+DEPEND="
+	net-libs/libqrtr:=
+	virtual/udev:=
+"
+
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${PN}-${GIT_SHA1}"
+
+src_prepare() {
+	default
+	eapply "${FILESDIR}/patches/0001-ODL-support-on-Open-Source-Diag-Router.patch"
+}
+
+src_compile() {
+	emake HAVE_LIBUDEV=1 HAVE_LIBQRTR=1
+}
+
+src_install() {
+	emake DESTDIR="${D}" prefix="${EPREFIX}/usr" install
+}
diff --git a/net-misc/diag/files/0001-ODL-support-in-Makefile.patch b/net-misc/diag/files/0001-ODL-support-in-Makefile.patch
deleted file mode 100644
index 83807be..0000000
--- a/net-misc/diag/files/0001-ODL-support-in-Makefile.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From ea36269f6a983a03620b5e874fa79d0cb8502666 Mon Sep 17 00:00:00 2001
-From: Dumpeti Sathish Kumar <sdumpeti@codeaurora.org>
-Date: Mon, 19 Apr 2021 15:37:05 +0530
-Subject: [PATCH 1/4] ODL support in Makefile
-
----
- Makefile | 16 ++++++++++++----
- 1 file changed, 12 insertions(+), 4 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 3565102..dc22396 100644
---- a/Makefile
-+++ b/Makefile
-@@ -5,13 +5,14 @@ HAVE_LIBQRTR=1
- 
- DIAG := diag-router
- SEND_DATA := send_data
-+LOG_ON_DEVICE:= diag-log_on_device
- 
--all: $(DIAG) $(SEND_DATA)
-+all: $(DIAG) $(SEND_DATA) $(LOG_ON_DEVICE)
- 
- CFLAGS ?= -Wall -g -O2
- ifeq ($(HAVE_LIBUDEV),1)
- CFLAGS += -DHAS_LIBUDEV=1
--LDFLAGS += -ludev
-+LDFLAGS += -ludev -lpthread
- endif
- ifeq ($(HAVE_LIBQRTR),1)
- CFLAGS += -DHAS_LIBQRTR=1
-@@ -55,9 +56,16 @@ SEND_DATA_OBJS := $(SEND_DATA_SRCS:.c=.o)
- $(SEND_DATA): $(SEND_DATA_OBJS)
- 	$(CC) -o $@ $^ $(LDFLAGS)
- 
--install: $(DIAG) $(SEND_DATA)
-+LOG_ON_DEVICE_SRCS  := tools/diag-log_on_device.c
-+LOG_ON_DEVICE_OBJS  := $(LOG_ON_DEVICE_SRCS:.c=.o)
-+
-+$(LOG_ON_DEVICE): $(LOG_ON_DEVICE_OBJS)
-+	$(CC) -o $@ $^ $(LDFLAGS)
-+
-+install: $(DIAG) $(SEND_DATA) $(LOG_ON_DEVICE)
- 	install -D -m 755 $(DIAG) $(DESTDIR)$(prefix)/bin/$(DIAG)
- 	install -D -m 755 $(SEND_DATA) $(DESTDIR)$(prefix)/bin/$(SEND_DATA)
-+	install -D -m 755 $(LOG_ON_DEVICE) $(DESTDIR)$(prefix)/bin/$(LOG_ON_DEVICE)
- 
- clean:
--	rm -f $(DIAG) $(OBJS) $(SEND_DATA) $(SEND_DATA_OBJS)
-+	rm -f $(DIAG) $(OBJS) $(SEND_DATA) $(SEND_DATA_OBJS) $(LOG_ON_DEVICE) $(LOG_ON_DEVICE_OBJS)
--- 
-2.7.4
-
diff --git a/net-misc/diag/files/0001-ODL-support-on-Open-Source-Diag-Router.patch b/net-misc/diag/files/0001-ODL-support-on-Open-Source-Diag-Router.patch
deleted file mode 100644
index abdcf3f..0000000
--- a/net-misc/diag/files/0001-ODL-support-on-Open-Source-Diag-Router.patch
+++ /dev/null
@@ -1,662 +0,0 @@
-From f850acdbe3bf2e5812f56d303add96ec3dc8f0a8 Mon Sep 17 00:00:00 2001
-From: Dumpeti Sathish Kumar <sdumpeti@codeaurora.org>
-Date: Tue, 20 Apr 2021 19:38:20 +0530
-Subject: [PATCH] ODL-support-on-Open-Source-Diag-Router
-
----
- tools/diag-log_on_device.c | 643 +++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 643 insertions(+)
- create mode 100644 tools/diag-log_on_device.c
-
-diff --git a/tools/diag-log_on_device.c b/tools/diag-log_on_device.c
-new file mode 100644
-index 0000000..03a67f8
---- /dev/null
-+++ b/tools/diag-log_on_device.c
-@@ -0,0 +1,643 @@
-+/*
-+ * Copyright (c) 2021 The Linux Foundation. All rights reserved.
-+
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions are met:
-+    * Redistributions of source code must retain the above copyright
-+      notice, this list of conditions and the following disclaimer.
-+    * Redistributions in binary form must reproduce the above
-+      copyright notice, this list of conditions and the following
-+      disclaimer in the documentation and/or other materials provided
-+      with the distribution.
-+    * Neither the name of The Linux Foundation nor the names of its
-+      contributors may be used to endorse or promote products derived
-+      from this software without specific prior written permission.
-+
-+ * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
-+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
-+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
-+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
-+ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
-+ * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ */
-+
-+#include <sys/socket.h>
-+#include <sys/un.h>
-+#include <netinet/in.h>
-+#include <arpa/inet.h>
-+#include <sys/time.h>
-+#include <pthread.h>
-+#include <err.h>
-+#include <errno.h>
-+#include <fcntl.h>
-+#include <netdb.h>
-+#include <stdio.h>
-+#include <string.h>
-+#include <stdlib.h>
-+#include <unistd.h>
-+#include <time.h>
-+#include <pthread.h>
-+#include <stdint.h>
-+#include <signal.h>
-+#include <sys/time.h>
-+#include <sys/types.h>
-+#include <sys/stat.h>
-+#include <dirent.h>
-+#include <sys/types.h>
-+#include <sys/syscall.h>
-+#include <sys/select.h>
-+#include <ctype.h>
-+#include <limits.h>
-+#include <stdlib.h>
-+
-+#define FILE_LIST_NAME_SIZE 100
-+#define MAX_FILES_IN_FILE_LIST 100
-+#define std_strlprintf snprintf
-+#define LOG_FILENAME_PREFIX_LEN 9
-+#define READ_BUF_SIZE 100000
-+#define DISK_BUF_SIZE 8192
-+#define CONTROL_CHAR 0x7E
-+#define USER_SPACE_DATA_TYPE 0x00000020
-+#define USER_SPACE_RAW_DATA_TYPE 0x00000080
-+#define FILE_NAME_LEN 500
-+#define MASK_FILE_BUF_SIZE 8192
-+
-+struct buffer_pool {
-+	unsigned int bytes_in_buff;
-+	unsigned char buffer_ptr[DISK_BUF_SIZE];
-+};
-+
-+/*Static declaration of buffer. */
-+struct buffer_pool pools[] = {
-+	[0] = {
-+		.bytes_in_buff = 0,
-+	},
-+	[1] = {
-+		.bytes_in_buff = 0,
-+	},
-+
-+};
-+
-+typedef uint32_t	uint32;
-+typedef uint8_t		uint8;
-+
-+pthread_cond_t cond1 = PTHREAD_COND_INITIALIZER;
-+pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER;
-+
-+/* Thread Handlers */
-+pthread_t read_thread_hdl;	/* Diag Read thread handle */
-+pthread_t write_thread_hdl;	/* Diag disk write thread handle */
-+
-+/* Global Declarations */
-+int curr_read = 0;
-+int curr_write = 0;
-+unsigned char read_buffer[READ_BUF_SIZE];
-+char output_dir[FILE_NAME_LEN] = {"/tmp"};
-+char mask_clear_file[] = "/tmp/diag_mask.cfg";
-+int fd_dev = -1; // Socket Descriptor
-+int fd_device = -1; //FIle Descriptor
-+char timestamp_buf[30];
-+char file_name_curr[FILE_NAME_LEN];
-+static char *open_mask_file= NULL;
-+static int diag_mask_file = 0;
-+static int diag_timeout;
-+int num_bytes_read;
-+unsigned int max_file_num = 10;
-+static unsigned int file_count = 0;
-+int file_list_size;
-+unsigned long max_file_size = 100000000;
-+unsigned long min_file_size = 80000000;
-+unsigned static long count_written_bytes;
-+char* file_list = NULL;
-+int file_list_index = -1;
-+char file_name_del[FILE_NAME_LEN];
-+int overflow_flag = 0;
-+int cleanup_mask;
-+
-+
-+/* Function to get timestamp */
-+void get_time_string(char *buffer, int len)
-+{
-+	struct timeval tv;
-+	struct tm *tm;
-+	unsigned long long milliseconds = 0;
-+	char timestamp_buf[30];
-+
-+	if (!buffer || len <= 0)
-+		return;
-+
-+	gettimeofday(&tv, NULL);
-+	tm = localtime(&tv.tv_sec);
-+	if (!tm)
-+		return;
-+
-+	milliseconds = (tv.tv_sec * 1000LL) + (tv.tv_usec / 1000);
-+	strftime(timestamp_buf, 30, "%Y%m%d_%H%M%S", tm);
-+	(void)snprintf(buffer, len, "%s%lld",
-+		timestamp_buf, milliseconds);
-+}
-+
-+static void usage(void)
-+{
-+	fprintf(stderr,
-+		"User space application for diag interface\n"
-+		"\n"
-+		"usage: diag [-of]\n"
-+		"\n"
-+		"options:\n"
-+		"-o	<output directory>\n"
-+		"-f	<Diag Configuration file>\n"
-+		"-t	<Log Timeout>\n"
-+		"-n	<number of log files>\n"
-+		"-s	<Size in MB>\n"
-+		"-c	<Cleanup Modem Mask>\n"
-+	);
-+	exit(1);
-+}
-+
-+
-+int send_empty_mask(int type)
-+{
-+	int fd_mask, ch, ret;
-+	const uint8 size = 40;
-+	unsigned char mask_buf[size];
-+	int count_mask_bytes = 4;
-+	*(int *)mask_buf = USER_SPACE_RAW_DATA_TYPE;
-+	FILE *mask_fp = NULL;
-+
-+	if ((mask_fp = fopen(mask_clear_file, "rb")) == NULL) {
-+		printf("can't open mask clear file: %s, errno: %d\n", mask_clear_file,errno);
-+		return -1;
-+	}
-+	while(1)
-+	{
-+		ch = fgetc(mask_fp);
-+		if(ch == EOF)
-+			break;
-+
-+		mask_buf[count_mask_bytes] = ch;
-+		if (mask_buf[count_mask_bytes] == CONTROL_CHAR) {
-+			ret = write(fd_dev, mask_buf, count_mask_bytes-1);
-+			if(ret < 0) {
-+				printf("Write Error on the Socket: errno = %d\n", errno);
-+				return -1;
-+			}
-+		*(int *)mask_buf = USER_SPACE_DATA_TYPE;
-+		count_mask_bytes = 4;
-+		} else {
-+			count_mask_bytes++;
-+		}
-+	}
-+	fclose(mask_fp);
-+
-+	return 0;	
-+}
-+
-+
-+static void log_timeout(int sig, siginfo_t *siginfo, void *context)
-+{
-+	int ret;
-+	printf ("Sending PID: %ld, UID: %ld\n",
-+			(long)siginfo->si_pid, (long)siginfo->si_uid);
-+	ret = send_empty_mask(0);
-+	if(ret < 0)
-+		printf("Couldn't open Mask clear file.\n");
-+
-+	close(fd_device);
-+	close(fd_dev);
-+	pthread_cancel(read_thread_hdl);
-+	pthread_cancel(write_thread_hdl);
-+}
-+int close_logging_file()
-+{
-+	int status;
-+	char timestamp_buf[30];
-+	char new_filename[FILE_NAME_LEN];
-+
-+	close(fd_device);
-+	/* check whether number of files in /tmp. Delete if we exceed the limit */
-+	if(file_count > max_file_num) {
-+		printf("Delete Oldest File.\n");
-+		if (!delete_log()) {
-+			file_count--;
-+		}
-+	}
-+	get_time_string(timestamp_buf, sizeof(timestamp_buf));
-+	snprintf(new_filename,
-+			FILE_NAME_LEN, "%s%s%s%s",
-+			output_dir,"/diag_log_",
-+			timestamp_buf, ".qmdl");
-+
-+	fd_device = open(new_filename,
-+			O_CREAT | O_RDWR | O_SYNC | O_TRUNC,
-+			0644);
-+	if(fd_device < 0) {
-+		printf(" File open error: %d\n", errno);
-+		return -1;
-+	}
-+	else {
-+		file_count++; 
-+	}
-+	strncpy(file_name_curr, new_filename, FILE_NAME_LEN);
-+	return 0;
-+}
-+
-+static void *WriteThread(void *data)
-+{
-+	unsigned int chunks, last_chunk;
-+	struct stat finfo;
-+	int ret;
-+	while(1) {
-+		pthread_mutex_lock(&lock);
-+		pthread_cond_wait(&cond1, &lock);
-+		ret = write(fd_device,pools[curr_write].buffer_ptr,DISK_BUF_SIZE);
-+		if(ret > 0) {
-+			pools[curr_write].bytes_in_buff = 0;
-+		} else if (ret < 0) {
-+			goto fail;
-+		}
-+		/* Check whether we reached to MAX size of the File */
-+		if(fstat(fd_device, &finfo) == 0) {
-+			if(finfo.st_size > min_file_size) {
-+				ret = close_logging_file();
-+				if(ret < 0)
-+					goto fail;
-+				count_written_bytes = 0;
-+			}
-+		} 
-+		else {
-+			goto fail;
-+		}
-+		pthread_mutex_unlock(&lock);
-+		curr_write =! curr_write;
-+	}
-+fail:
-+	pthread_cancel(read_thread_hdl);
-+	close(fd_dev);
-+	close(fd_device);
-+}
-+/* Read Thread */
-+static void *CreateWaitThread(void* data) 
-+{
-+	int read_bytes = 0,type,num_data_fields;
-+	uint32 count_received_bytes;
-+	unsigned char* ptr;
-+
-+	while(1) {
-+		num_bytes_read = 0;
-+		memset(read_buffer, 0, READ_BUF_SIZE);
-+		num_bytes_read = read(fd_dev, (void*)read_buffer,READ_BUF_SIZE);
-+		if(!num_bytes_read || (num_bytes_read < 0))
-+			goto read_failure;
-+
-+		type = *(int *)read_buffer;
-+		ptr = read_buffer+4;
-+		num_data_fields = *(int *)ptr;
-+		ptr += 4;
-+		count_received_bytes = *(uint32*)ptr;
-+		ptr += sizeof(uint32);
-+		count_written_bytes += num_bytes_read;
-+		if(count_received_bytes >= (DISK_BUF_SIZE - pools[curr_read].bytes_in_buff)) {
-+		/* Trigger Write Thread */
-+			curr_read =! curr_read;
-+			pthread_cond_signal(&cond1);
-+		}
-+
-+		if(count_received_bytes > 0) {/* Buffer space is available */
-+			memcpy(pools[curr_read].buffer_ptr + pools[curr_read].bytes_in_buff, ptr, count_received_bytes);
-+			pools[curr_read].bytes_in_buff += count_received_bytes;
-+		}
-+	}
-+
-+read_failure:
-+	close(fd_dev);
-+	close(fd_device);
-+	pthread_cancel(write_thread_hdl);	
-+}
-+
-+static int create_oldest_file_list(char *oldest_dir)
-+{
-+
-+	int status = 1;
-+	struct dirent **dirent_list;
-+	int i,n,type=0;
-+	int num_entries = 0;
-+	int num_entries_capped = 0;
-+	char *name_ptr;
-+	int num_bytes = 0;
-+
-+	num_entries = scandir(oldest_dir, &dirent_list, 0,(int(*)(const struct dirent **, const struct dirent **))alphasort);
-+	if(!dirent_list) {
-+		printf("In %s, couldn't get the dirent_list, errno: %d, directory: %s\n",
-+		__func__, errno, oldest_dir);
-+		return 0;
-+	} else if (num_entries < 0) {
-+		printf("In %s, error determining directory entries, errno: %d, directory: %s\n",
-+			__func__, errno, oldest_dir);
-+		return 0;
-+	}
-+
-+	/* Limit the size of the list so we aren't working with too many files */
-+	num_entries_capped = (num_entries > MAX_FILES_IN_FILE_LIST) ?
-+				MAX_FILES_IN_FILE_LIST : num_entries;
-+		
-+	if (num_entries_capped - 2 > 0) {
-+		file_list_size = num_entries_capped - 2;
-+		num_bytes = FILE_LIST_NAME_SIZE * file_list_size;
-+		file_list = malloc(num_bytes);
-+	}
-+
-+	if (file_list) {
-+		file_list_index = 0;
-+		for (i = 0; i < num_entries_capped; i++)
-+		{
-+			if ((strncmp(dirent_list[i]->d_name, "diag_log_",LOG_FILENAME_PREFIX_LEN) != 0))
-+				continue;
-+			if (file_list_index < file_list_size)
-+			{
-+				name_ptr = file_list +
-+						(file_list_index * FILE_LIST_NAME_SIZE);
-+				strncpy(name_ptr, dirent_list[i]->d_name, FILE_LIST_NAME_SIZE);
-+				*(name_ptr + (FILE_LIST_NAME_SIZE - 1)) = 0;
-+					file_list_index++;
-+			}
-+			if (file_list_index > 0) {
-+				if (file_list_index < file_list_size) {
-+					int new_size = FILE_LIST_NAME_SIZE *file_list_index;
-+					char *temp_ptr = realloc(file_list, new_size);
-+					if (temp_ptr)
-+						file_list = temp_ptr;
-+				}
-+			file_list_size = file_list_index;
-+			}
-+		}
-+	}
-+	else if (num_bytes > 0) {
-+		printf("Memory Allocation error.\n");
-+		status = 0;
-+	}
-+	
-+	i = num_entries;
-+	while (i--) {
-+	free(dirent_list[i]);
-+	}
-+	
-+	free(dirent_list); 
-+	return status;
-+}
-+
-+static int get_oldest_file(char* oldest_file, char *oldest_dir)
-+{
-+	int status = 0;
-+		status = create_oldest_file_list(oldest_dir);
-+
-+	if (file_list) {
-+		if (oldest_file) {
-+			strncpy(oldest_file, file_list,
-+				FILE_LIST_NAME_SIZE);
-+			file_list_index++;
-+			status = 1;
-+		} else {
-+			printf("In %s, oldest_file is NULL\n", __func__);
-+		}
-+		
-+	}else {
-+		status =0;
-+		printf("No Log files in the dicrectory.\n");
-+	}
-+
-+	return status;
-+}
-+/* Number of Log file in /tmp directory */
-+static int get_file_count(char *oldest_dir)
-+{
-+	struct dirent **dirent_list;
-+	int i,num_entries = 0;
-+	int num_entries_capped = 0;
-+
-+	num_entries = scandir(oldest_dir, &dirent_list, 0,(int(*)(const struct dirent **, const struct dirent **))alphasort);
-+	if(!dirent_list) {
-+		printf("In %s, couldn't get the dirent_list, errno: %d, directory: %s\n",
-+			__func__, errno, oldest_dir);
-+		return 0;
-+	} else if (num_entries < 0) {
-+		printf("In %s, error determining directory entries, errno: %d, directory: %s\n",
-+			 __func__, errno, oldest_dir);
-+		return 0;
-+	}
-+	
-+	for (i = 0; i < num_entries; i++) {
-+		if ((strncmp(dirent_list[i]->d_name, "diag_log_",LOG_FILENAME_PREFIX_LEN) != 0))
-+			continue;
-+	file_count++;
-+	}
-+	return file_count;
-+}
-+
-+int delete_log()
-+{
-+	int status;
-+	char oldest_file[FILE_LIST_NAME_SIZE] = "";
-+	struct stat file_stat;
-+
-+	status = get_oldest_file(oldest_file,
-+					output_dir);
-+	if (0 == status) {
-+		printf("diag: In %s, Unable to determine oldest file for deletion\n",
-+			 __func__);
-+		return -1;
-+	}
-+	std_strlprintf(file_name_del,
-+			FILE_NAME_LEN, "%s%s%s",
-+			output_dir, "/", oldest_file);
-+	if (!strncmp(file_name_curr, file_name_del, FILE_NAME_LEN)) {
-+		printf("diag: In %s, Cannot delete file, file %s is in use \n",
-+			 __func__, file_name_curr);
-+		return -1;
-+	}
-+	stat(file_name_del, &file_stat);
-+	/* Convert size to KB */
-+	file_stat.st_size /= 1024;
-+	if (unlink(file_name_del)) {
-+		printf("In %s, Unable to delete file: %s, errno: %d\n",
-+			__func__, file_name_del, errno);
-+		return -1;
-+	} else {
-+		printf("In %s, Deleting logfile %s of size %lld KB\n",
-+			__func__, file_name_del,
-+			(long long int) file_stat.st_size);
-+		free(file_list);
-+	}
-+	return 0;
-+}
-+
-+
-+int main(int argc, char **argv)
-+{
-+	int ret;
-+	int c,ch,found_cmd;
-+	struct sockaddr_un addr;
-+	struct timeval tv = {20, 0};
-+	struct sigaction act;
-+	int count_mask_bytes = 0;
-+	unsigned char mask_buf[MASK_FILE_BUF_SIZE];
-+	FILE *read_mask_fp;
-+	*(int *)mask_buf = USER_SPACE_DATA_TYPE;
-+	
-+	count_mask_bytes = 4;
-+	memset (&act, '\0', sizeof(act));
-+	act.sa_sigaction = &log_timeout;
-+	act.sa_flags = SA_SIGINFO;
-+	if (sigaction(SIGALRM, &act, NULL) < 0) {
-+		perror ("sigaction");
-+		return 1;
-+	}
-+
-+	for (;;) {
-+		c = getopt(argc, argv, "hf:o:t:s");
-+		if (c < 0)
-+			break;
-+
-+		switch (c) {
-+		case 'c':
-+			cleanup_mask = 1;
-+			break;
-+		
-+		case 's':
-+			max_file_size = atol(optarg);
-+			if ((long)max_file_size <= 0)
-+				max_file_size = 100000000;
-+			else {
-+				max_file_size *= 1024 * 1024;
-+				if (max_file_size >= 0 && max_file_size < 1024 * 1024)
-+					max_file_size = 100000000;
-+			}
-+			min_file_size = ((max_file_size / 100) * 80);
-+			break;
-+		
-+		case 'o':
-+			file_count = get_file_count(output_dir);
-+			printf("QMDL File Count in /tmp Directory = %d\n", file_count);
-+			
-+			if(max_file_num > 1 && (file_count >= max_file_num)) { /* Check file_count before creating the Log File. */
-+				printf("In %s, File count reached max file num %u so deleting oldest file\n",__func__, max_file_num);
-+			
-+			while(file_count > max_file_num)
-+				if (!delete_log()) {
-+				file_count--;
-+				}
-+			}
-+
-+			get_time_string(timestamp_buf, sizeof(timestamp_buf));
-+			snprintf(file_name_curr,
-+					FILE_NAME_LEN, "%s%s%s%s",
-+					output_dir,"/diag_log_",
-+					timestamp_buf, ".qmdl");
-+			fd_device = open(file_name_curr,
-+					O_CREAT | O_RDWR | O_SYNC | O_TRUNC,
-+					0644);
-+			if(fd_device < 0) {
-+				printf(" File open error: %d\n", errno);
-+				return -1;
-+			}
-+			else {
-+				file_count++;
-+			}
-+			break;
-+
-+		case 'f':
-+			open_mask_file = strdup(optarg);
-+			diag_mask_file = 1;
-+			break;
-+		case 't':
-+			printf("Timeout for QMDL Logging\n");
-+			diag_timeout = atoi(optarg);
-+			printf("Time out value = %d\n", diag_timeout);
-+			alarm(diag_timeout);
-+			break;
-+		default:
-+		case 'h':
-+			usage();
-+			break;
-+		}
-+	}
-+
-+	fd_dev = socket(AF_UNIX, SOCK_SEQPACKET, 0);
-+	if (fd_dev < 0)
-+		goto failure_case3;
-+
-+	memset(&addr, 0, sizeof(addr));
-+	addr.sun_family = AF_UNIX;
-+	strncpy(addr.sun_path, "\0diag", sizeof(addr.sun_path)-1);
-+	
-+	ret = connect(fd_dev, (struct sockaddr*)&addr, sizeof(addr));
-+	if (ret < 0)
-+		goto failure_case2;
-+
-+	pthread_create(&read_thread_hdl, NULL, CreateWaitThread, NULL);
-+	if(read_thread_hdl == 0) {
-+		printf("Failed to create Read Thread.\n");
-+		goto failure_case2;
-+	}
-+	pthread_create(&write_thread_hdl, NULL, WriteThread, NULL);
-+	if(write_thread_hdl == 0) {
-+		printf("Failed to create Write Thread.\n");
-+		if(read_thread_hdl == 0)
-+			pthread_cancel(read_thread_hdl);
-+		goto failure_case2;
-+	}
-+
-+	if ((read_mask_fp = fopen(open_mask_file, "rb")) == NULL) {
-+		printf("can't open mask file: %s, errno: %d\n", open_mask_file,errno);
-+		goto failure_case1;
-+	}
-+
-+	if(diag_mask_file){
-+		while(1){
-+			ch = fgetc(read_mask_fp);
-+			if (ch == EOF)
-+			break;  
-+			mask_buf[count_mask_bytes] = ch;
-+			if (mask_buf[count_mask_bytes] == CONTROL_CHAR) {
-+
-+			if (!found_cmd)
-+				found_cmd = 1;
-+			ret = write(fd_dev, mask_buf, count_mask_bytes+1);
-+			if(ret < 0) {
-+				printf("Write Error on the Socket: errno = %d\n", errno);
-+				goto failure_case0;
-+			}
-+		
-+			*(int *)mask_buf = USER_SPACE_DATA_TYPE;
-+			count_mask_bytes = 4;
-+			} else {
-+			count_mask_bytes++;
-+			}
-+		}
-+		if(!found_cmd){
-+			printf("No command found:\n");
-+		}
-+	}
-+	while(1)
-+		sleep(3600);
-+
-+failure_case0:
-+	fclose(read_mask_fp);
-+
-+failure_case1:
-+	pthread_cancel(read_thread_hdl);
-+	pthread_cancel(write_thread_hdl);
-+
-+failure_case2:
-+	close(fd_dev);
-+
-+failure_case3:
-+	close(fd_device);
-+
-+	return 0;
-+}
--- 
-2.7.4
-
diff --git a/net-misc/diag/files/0002-Increase-clinet-connection-count.patch b/net-misc/diag/files/0002-Increase-clinet-connection-count.patch
deleted file mode 100644
index 68ca389..0000000
--- a/net-misc/diag/files/0002-Increase-clinet-connection-count.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 5d3cffa5e71a607c5c970491e57f7251240c9ac6 Mon Sep 17 00:00:00 2001
-From: Dumpeti Sathish Kumar <sdumpeti@codeaurora.org>
-Date: Mon, 19 Apr 2021 15:37:24 +0530
-Subject: [PATCH 2/4] Increase clinet connection count
-
----
- router/unix.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/router/unix.c b/router/unix.c
-index ead9fe0..5b3e41d 100644
---- a/router/unix.c
-+++ b/router/unix.c
-@@ -85,7 +85,7 @@ int diag_unix_open(void)
- 		return -1;
- 	}
- 
--	ret = listen(fd, 2);
-+	ret = listen(fd, 50);
- 	if (ret < 0) {
- 		fprintf(stderr, "failed to listen on diag socket\n");
- 		return -1;
--- 
-2.7.4
-
diff --git a/net-misc/diag/files/0003-ODL-packet-formatting-support-in-diag-router.patch b/net-misc/diag/files/0003-ODL-packet-formatting-support-in-diag-router.patch
deleted file mode 100644
index 2890ae6..0000000
--- a/net-misc/diag/files/0003-ODL-packet-formatting-support-in-diag-router.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From 20aad66f2fbb535cb51536ca387149f53ffa99fd Mon Sep 17 00:00:00 2001
-From: Dumpeti Sathish Kumar <sdumpeti@codeaurora.org>
-Date: Mon, 19 Apr 2021 15:37:44 +0530
-Subject: [PATCH 3/4] ODL packet formatting support in diag-router
-
----
- router/dm.c | 44 +++++++++++++++++++++++++++++++++++++++-----
- 1 file changed, 39 insertions(+), 5 deletions(-)
-
-diff --git a/router/dm.c b/router/dm.c
-index b669bef..b9585ba 100644
---- a/router/dm.c
-+++ b/router/dm.c
-@@ -35,6 +35,7 @@
- #include <stdlib.h>
- #include <string.h>
- #include <unistd.h>
-+#include <error.h>
- 
- #include "diag.h"
- #include "dm.h"
-@@ -128,6 +129,10 @@ static int dm_recv_raw(struct diag_client *dm)
- 	int saved_errno;
- 	unsigned char buf[4096];
- 	ssize_t n;
-+	struct hdlc_decoder recv_decoder;
-+	struct circ_buf recv_buf;
-+	size_t msglen;
-+	void *msg;
- 
- 	for (;;) {
- 		n = read(dm->in_fd, buf, sizeof(buf));
-@@ -141,10 +146,13 @@ static int dm_recv_raw(struct diag_client *dm)
- 			warn("Failed to read from %s\n", dm->name);
- 			return saved_errno;
- 		}
--
--		diag_client_handle_command(dm, buf, n);
-+		memset(&recv_decoder, 0, sizeof(recv_decoder));
-+		memcpy(recv_buf.buf, buf+4, n-4);
-+		recv_buf.tail = 0;
-+		recv_buf.head = n-4;
-+		msg = hdlc_decode_one(&recv_decoder, &recv_buf, &msglen);
-+		diag_client_handle_command(dm, msg, msglen);
- 	}
--
- 	return 0;
- }
- 
-@@ -194,15 +202,41 @@ ssize_t dm_send(struct diag_client *dm, const void *ptr, size_t len)
-  * @len:	length of message
-  * @flow:	flow control context for the peripheral
-  */
--void dm_broadcast(const void *ptr, size_t len, struct watch_flow *flow)
-+void dm_broadcast(const void *buf, size_t len, struct watch_flow *flow)
- {
- 	struct diag_client *dm;
- 	struct list_head *item;
-+	size_t outlen;
-+	void *outbuf;
-+	int user_space_data_type = 32;
-+	int remote_proc, data_len;
-+	unsigned char *ptr;
-+	int num_data_fields = 1, offset = 0;
-+	
-+	outbuf = hdlc_encode(buf, len, &outlen);
-+	if (!outbuf) {
-+		printf("failed to allocate hdlc destination buffer\n");
-+		return;
-+	}
-+	
-+	data_len = (outlen + sizeof(int)*3);
-+	ptr = alloca(data_len);
-+	if (!ptr) {
-+		printf("diag: In %s failed to allocate memory\n", __func__);
-+		return;
-+	}
-+	memcpy(ptr,&user_space_data_type, sizeof(user_space_data_type));
-+	offset = offset + sizeof(user_space_data_type);
-+	memcpy(ptr + offset, &num_data_fields, sizeof(num_data_fields));
-+	offset = offset + sizeof(num_data_fields);
-+	memcpy(ptr + offset, &outlen, sizeof(int));
-+	offset = offset + sizeof(int);
-+	memcpy(ptr + offset, outbuf, outlen);
- 
- 	list_for_each(item, &diag_clients) {
- 		dm = container_of(item, struct diag_client, node);
- 
--		dm_send_flow(dm, ptr, len, flow);
-+		dm_send_flow(dm, ptr, data_len, flow);
- 	}
- }
- 
--- 
-2.7.4
-
diff --git a/net-misc/diag/files/patches/0001-ODL-support-on-Open-Source-Diag-Router.patch b/net-misc/diag/files/patches/0001-ODL-support-on-Open-Source-Diag-Router.patch
new file mode 100644
index 0000000..e9376329
--- /dev/null
+++ b/net-misc/diag/files/patches/0001-ODL-support-on-Open-Source-Diag-Router.patch
@@ -0,0 +1,1633 @@
+From d0d8ff2f5e33bfd840d0644e66982f5c67738058 Mon Sep 17 00:00:00 2001
+From: Dumpeti Sathish Kumar <sdumpeti@codeaurora.org>
+Date: Mon, 28 Jun 2021 15:58:06 +0530
+Subject: [PATCH] ODL support on Open-Source Diag-Router
+
+---
+ Makefile                   |  16 +-
+ router/diag.c              |   2 +
+ router/diag.h              |  24 ++
+ router/diag_cntl.c         | 229 +++++++++++++---
+ router/diag_cntl.h         |   7 +
+ router/dm.c                | 198 ++++++++++++--
+ router/dm.h                |   1 +
+ router/peripheral-qrtr.c   |  10 +-
+ router/peripheral.c        |   2 +-
+ router/peripheral.h        |  20 ++
+ router/socket.c            |   7 +-
+ router/unix.c              |   2 +-
+ tools/diag-log_on_device.c | 656 +++++++++++++++++++++++++++++++++++++++++++++
+ tools/send_data.c          |  52 +++-
+ 14 files changed, 1156 insertions(+), 70 deletions(-)
+ create mode 100644 tools/diag-log_on_device.c
+
+diff --git a/Makefile b/Makefile
+index 3565102..dc22396 100644
+--- a/Makefile
++++ b/Makefile
+@@ -5,13 +5,14 @@ HAVE_LIBQRTR=1
+ 
+ DIAG := diag-router
+ SEND_DATA := send_data
++LOG_ON_DEVICE:= diag-log_on_device
+ 
+-all: $(DIAG) $(SEND_DATA)
++all: $(DIAG) $(SEND_DATA) $(LOG_ON_DEVICE)
+ 
+ CFLAGS ?= -Wall -g -O2
+ ifeq ($(HAVE_LIBUDEV),1)
+ CFLAGS += -DHAS_LIBUDEV=1
+-LDFLAGS += -ludev
++LDFLAGS += -ludev -lpthread
+ endif
+ ifeq ($(HAVE_LIBQRTR),1)
+ CFLAGS += -DHAS_LIBQRTR=1
+@@ -55,9 +56,16 @@ SEND_DATA_OBJS := $(SEND_DATA_SRCS:.c=.o)
+ $(SEND_DATA): $(SEND_DATA_OBJS)
+ 	$(CC) -o $@ $^ $(LDFLAGS)
+ 
+-install: $(DIAG) $(SEND_DATA)
++LOG_ON_DEVICE_SRCS  := tools/diag-log_on_device.c
++LOG_ON_DEVICE_OBJS  := $(LOG_ON_DEVICE_SRCS:.c=.o)
++
++$(LOG_ON_DEVICE): $(LOG_ON_DEVICE_OBJS)
++	$(CC) -o $@ $^ $(LDFLAGS)
++
++install: $(DIAG) $(SEND_DATA) $(LOG_ON_DEVICE)
+ 	install -D -m 755 $(DIAG) $(DESTDIR)$(prefix)/bin/$(DIAG)
+ 	install -D -m 755 $(SEND_DATA) $(DESTDIR)$(prefix)/bin/$(SEND_DATA)
++	install -D -m 755 $(LOG_ON_DEVICE) $(DESTDIR)$(prefix)/bin/$(LOG_ON_DEVICE)
+ 
+ clean:
+-	rm -f $(DIAG) $(OBJS) $(SEND_DATA) $(SEND_DATA_OBJS)
++	rm -f $(DIAG) $(OBJS) $(SEND_DATA) $(SEND_DATA_OBJS) $(LOG_ON_DEVICE) $(LOG_ON_DEVICE_OBJS)
+diff --git a/router/diag.c b/router/diag.c
+index b5e443d..5978dc1 100644
+--- a/router/diag.c
++++ b/router/diag.c
+@@ -131,6 +131,8 @@ int main(int argc, char **argv)
+ 
+ 	diag_usb_open("/dev/ffs-diag");
+ 
++	diag_mux_init();
++
+ 	ret = diag_unix_open();
+ 	if (ret < 0)
+ 		errx(1, "failed to create unix socket dm\n");
+diff --git a/router/diag.h b/router/diag.h
+index da502bf..bf255d1 100644
+--- a/router/diag.h
++++ b/router/diag.h
+@@ -59,10 +59,16 @@
+ #define DIAG_FEATURE_DCI_EXTENDED_HEADER			BIT(14)
+ #define DIAG_FEATURE_DIAG_ID					BIT(15)
+ #define DIAG_FEATURE_PKT_HEADER_UNTAG				BIT(16)
++#define DIAG_FEATURE_DIAG_ID_FEATURE_MASK			BIT(19)
+ 
+ #define DIAG_CMD_SUBSYS_DISPATCH       75
+ #define DIAG_CMD_SUBSYS_DISPATCH_V2	128
+ 
++void diag_mux_init(void);
++int dm_del(int );
++
++
++
+ struct diag_client;
+ 
+ struct peripheral {
+@@ -76,6 +82,8 @@ struct peripheral {
+ 	struct list_head cntlq;
+ 	struct list_head dataq;
+ 
++	int periph_id;
++
+ 	int cntl_fd;
+ 	bool cntl_open;
+ 	int data_fd;
+@@ -96,6 +104,22 @@ struct peripheral {
+ 	void (*close)(struct peripheral *perif);
+ };
+ 
++extern struct diag_client *socket_dm;
++
++struct diag_logger_ops {
++	int (*write)(unsigned char *buf, int len, struct watch_flow *flow);
++	int (*open)(void);
++	int (*close)(void);
++	int (*open_device)(int id);
++	int (*close_device)(int id);
++};
++
++struct diag_logger_t {
++	int mode;
++	struct diag_logger_ops *log_ops;
++};
++
++
+ extern struct list_head peripherals;
+ 
+ struct diag_cmd {
+diff --git a/router/diag_cntl.c b/router/diag_cntl.c
+index 0e35c8d..f1a391a 100644
+--- a/router/diag_cntl.c
++++ b/router/diag_cntl.c
+@@ -43,30 +43,30 @@
+ #include "peripheral.h"
+ #include "util.h"
+ 
+-#define DIAG_CTRL_MSG_DTR               2
+-#define DIAG_CTRL_MSG_DIAGMODE          3
+-#define DIAG_CTRL_MSG_DIAGDATA          4
+-#define DIAG_CTRL_MSG_FEATURE           8
+-#define DIAG_CTRL_MSG_EQUIP_LOG_MASK    9
+-#define DIAG_CTRL_MSG_EVENT_MASK_V2     10
+-#define DIAG_CTRL_MSG_F3_MASK_V2        11
+-#define DIAG_CTRL_MSG_NUM_PRESETS       12
+-#define DIAG_CTRL_MSG_SET_PRESET_ID     13
+-#define DIAG_CTRL_MSG_LOG_MASK_WITH_PRESET_ID   14
+-#define DIAG_CTRL_MSG_EVENT_MASK_WITH_PRESET_ID 15
+-#define DIAG_CTRL_MSG_F3_MASK_WITH_PRESET_ID    16
+-#define DIAG_CTRL_MSG_CONFIG_PERIPHERAL_TX_MODE 17
+-#define DIAG_CTRL_MSG_PERIPHERAL_BUF_DRAIN_IMM  18
+-#define DIAG_CTRL_MSG_CONFIG_PERIPHERAL_WMQ_VAL 19
+-#define DIAG_CTRL_MSG_DCI_CONNECTION_STATUS     20
+-#define DIAG_CTRL_MSG_LAST_EVENT_REPORT         22
+-#define DIAG_CTRL_MSG_LOG_RANGE_REPORT          23
+-#define DIAG_CTRL_MSG_SSID_RANGE_REPORT         24
+-#define DIAG_CTRL_MSG_BUILD_MASK_REPORT         25
+-#define DIAG_CTRL_MSG_DEREG             27
+-#define DIAG_CTRL_MSG_DCI_HANDSHAKE_PKT         29
+-#define DIAG_CTRL_MSG_PD_STATUS                 30
+-#define DIAG_CTRL_MSG_TIME_SYNC_PKT             31
++#define DIAG_CTRL_MSG_DTR		2
++#define DIAG_CTRL_MSG_DIAGMODE		3
++#define DIAG_CTRL_MSG_DIAGDATA		4
++#define DIAG_CTRL_MSG_FEATURE		8
++#define DIAG_CTRL_MSG_EQUIP_LOG_MASK	9
++#define DIAG_CTRL_MSG_EVENT_MASK_V2	10
++#define DIAG_CTRL_MSG_F3_MASK_V2	11
++#define DIAG_CTRL_MSG_NUM_PRESETS	12
++#define DIAG_CTRL_MSG_SET_PRESET_ID	13
++#define DIAG_CTRL_MSG_LOG_MASK_WITH_PRESET_ID	14
++#define DIAG_CTRL_MSG_EVENT_MASK_WITH_PRESET_ID	15
++#define DIAG_CTRL_MSG_F3_MASK_WITH_PRESET_ID	16
++#define DIAG_CTRL_MSG_CONFIG_PERIPHERAL_TX_MODE	17
++#define DIAG_CTRL_MSG_PERIPHERAL_BUF_DRAIN_IMM	18
++#define DIAG_CTRL_MSG_CONFIG_PERIPHERAL_WMQ_VAL	19
++#define DIAG_CTRL_MSG_DCI_CONNECTION_STATUS	20
++#define DIAG_CTRL_MSG_LAST_EVENT_REPORT		22
++#define DIAG_CTRL_MSG_LOG_RANGE_REPORT		23
++#define DIAG_CTRL_MSG_SSID_RANGE_REPORT		24
++#define DIAG_CTRL_MSG_BUILD_MASK_REPORT		25
++#define DIAG_CTRL_MSG_DEREG			27
++#define DIAG_CTRL_MSG_DCI_HANDSHAKE_PKT		29
++#define DIAG_CTRL_MSG_PD_STATUS			30
++#define DIAG_CTRL_MSG_TIME_SYNC_PKT		31
+ 
+ struct diag_cntl_hdr {
+ 	uint32_t cmd;
+@@ -190,9 +190,9 @@ struct diag_cntl_cmd_buffering_tx_mode_v2
+ 	uint8_t tx_mode;
+ } __packed;
+ 
+-#define DIAG_BUFFERING_MODE_STREAMING   0
+-#define DIAG_BUFFERING_MODE_THRESHOLD   1
+-#define DIAG_BUFFERING_MODE_CIRCULAR    2
++#define DIAG_BUFFERING_MODE_STREAMING	0
++#define DIAG_BUFFERING_MODE_THRESHOLD	1
++#define DIAG_BUFFERING_MODE_CIRCULAR	2
+ 
+ #define DIAG_CNTL_CMD_DEREGISTER	27
+ struct diag_cntl_cmd_dereg {
+@@ -205,10 +205,36 @@ struct diag_cntl_cmd_dereg {
+ } __packed;
+ #define to_cmd_dereg(h) container_of(h, struct diag_cntl_cmd_dereg, hdr)
+ 
++#define DIAG_CNTL_CMD_DIAG_ID 33
++
++struct diag_cntl_cmd_diag_id {
++	 struct diag_cntl_hdr hdr;
++	uint32_t version;
++	uint32_t diag_id;
++	char process_name[MAX_DIAGID_STR_LEN];
++} __packed;
++#define to_cmd_diag_id(h) container_of(h, struct diag_cntl_cmd_diag_id, hdr)
++
++struct diag_id_tbl_t {
++	struct list_head link;
++	uint8_t diag_id;
++	uint8_t pd_val;
++	int periph_id;
++	uint8_t pd_feature_mask;
++	char *process_name;
++}; //__packed;
++
++struct diag_id_t {
++	uint8_t diag_id;
++	uint8_t len;
++	char *process_name;
++} __packed;
++
++
+ static void diag_cntl_send_feature_mask(struct peripheral *peripheral, uint32_t mask);
+ 
+ static int diag_cntl_register(struct peripheral *peripheral,
+-			      struct diag_cntl_hdr *hdr, size_t len)
++				struct diag_cntl_hdr *hdr, size_t len)
+ {
+ 	struct diag_cntl_cmd_reg *pkt = to_cmd_reg(hdr);
+ 	struct diag_cmd *dc;
+@@ -229,7 +255,7 @@ static int diag_cntl_register(struct peripheral *peripheral,
+ 		last = cmd << 24 | subsys << 16 | pkt->ranges[i].last;
+ 
+ 		// printf("[%s] register 0x%x - 0x%x\n",
+-		//	  peripheral->name, first, last);
++			//peripheral->name, first, last);
+ 
+ 		dc = malloc(sizeof(*dc));
+ 		if (!dc) {
+@@ -249,7 +275,7 @@ static int diag_cntl_register(struct peripheral *peripheral,
+ }
+ 
+ static int diag_cntl_feature_mask(struct peripheral *peripheral,
+-				  struct diag_cntl_hdr *hdr, size_t len)
++					struct diag_cntl_hdr *hdr, size_t len)
+ {
+ 	struct diag_cntl_cmd_feature *pkt = to_cmd_feature(hdr);
+ 	uint32_t local_mask = 0;
+@@ -263,6 +289,10 @@ static int diag_cntl_feature_mask(struct peripheral *peripheral,
+ 	if (peripheral->sockets)
+ 		local_mask |= DIAG_FEATURE_SOCKETS_ENABLED;
+ 
++	local_mask |= DIAG_FEATURE_DIAG_ID;
++	local_mask |= DIAG_FEATURE_DIAG_ID_FEATURE_MASK;
++
++
+ 	printf("[%s] mask:", peripheral->name);
+ 
+ 	if (mask & DIAG_FEATURE_FEATURE_MASK_SUPPORT)
+@@ -288,6 +318,10 @@ static int diag_cntl_feature_mask(struct peripheral *peripheral,
+ 	if (mask & DIAG_FEATURE_DIAG_ID)
+ 		printf(" DIAG-ID");
+ 
++	if (mask & DIAG_FEATURE_DIAG_ID_FEATURE_MASK)
++		printf("DIAG-ID-FEATURE-MASK");
++
++
+ 	printf(" (0x%x)\n", mask);
+ 
+ 	peripheral->features = mask & local_mask;
+@@ -395,6 +429,7 @@ void diag_cntl_send_masks(struct peripheral *peripheral)
+ 
+ 		diag_cntl_send_msg_mask(peripheral, &range);
+ 	}
++	diag_cntl_send_event_mask(peripheral);
+ }
+ 
+ void diag_cntl_send_event_mask(struct peripheral *peripheral)
+@@ -437,7 +472,7 @@ void diag_cntl_send_event_mask(struct peripheral *peripheral)
+ }
+ 
+ static int diag_cntl_deregister(struct peripheral *peripheral,
+-			      struct diag_cntl_hdr *hdr, size_t len)
++				struct diag_cntl_hdr *hdr, size_t len)
+ {
+ 	struct diag_cntl_cmd_dereg *pkt = to_cmd_dereg(hdr);
+ 	struct diag_cmd *dc;
+@@ -494,6 +529,133 @@ static void diag_cntl_send_feature_mask(struct peripheral *peripheral, uint32_t
+ 	diag_cntl_set_buffering_mode(peripheral, 0);
+ }
+ 
++#define DIAG_ID_APPS 1
++#define DIAG_ID_ROOT_STRING "root"
++
++struct list_head diag_id_list = LIST_INIT(diag_id_list);
++
++
++int diag_add_diag_id_to_list(uint8_t diag_id, char *process_name,
++				uint8_t pd_val, struct peripheral *perif)
++{
++	struct diag_id_tbl_t *new_item = NULL;
++	int process_len = 0;
++
++	if (!process_name || diag_id == 0)
++		return -EINVAL;
++
++	new_item = (struct diag_id_tbl_t *)malloc(sizeof(struct diag_id_tbl_t));
++	if (!new_item)
++		return -ENOMEM;
++
++	process_len = strlen(process_name);
++	new_item->process_name = malloc(process_len + 1);
++
++	if (!new_item->process_name) {
++		free(new_item);
++		new_item = NULL;
++		return -ENOMEM;
++	}
++	new_item->diag_id = diag_id;
++	new_item->pd_val = pd_val;
++	new_item->periph_id = perif->periph_id;
++	strncpy(new_item->process_name, process_name, process_len + 1);
++	list_add(&diag_id_list, &new_item->link);
++
++	return 0;
++}
++
++static int diag_query_pd_name(char *process_name, char *search_str)
++{
++	if (!process_name)
++		return -EINVAL;
++
++	if (strstr(process_name, search_str))
++		return 1;
++
++	return 0;
++}
++
++
++int diag_query_diag_id(char *process_name, uint8_t *diag_id)
++{
++	struct list_head *start;
++	struct diag_id_tbl_t *item = NULL;
++
++	if (!process_name || !diag_id)
++		return -EINVAL;
++
++	list_for_each(start, &diag_id_list) {
++		item = list_entry(start, struct diag_id_tbl_t, link);
++		if (strcmp(item->process_name, process_name) == 0) {
++			*diag_id = item->diag_id;
++			return 1;
++		}
++	}
++
++	return 0;
++}
++
++int diag_query_pd(char *process_name)
++{
++	if (!process_name)
++		return -EINVAL;
++
++	if (diag_query_pd_name(process_name, "modem/root_pd"))
++		return PERIPHERAL_MODEM;
++	if (diag_query_pd_name(process_name, "wpss/root_pd"))
++		return PERIPHERAL_WCNSS;
++	if (diag_query_pd_name(process_name, "wlan_pd"))
++		return UPD_WLAN;
++
++	return PD_UNKNOWN;
++}
++
++
++static int diag_cntl_process_diag_id(struct peripheral *peripheral,
++					struct diag_cntl_hdr *hdr, size_t len)
++{
++	struct diag_cntl_cmd_diag_id *pkt = to_cmd_diag_id(hdr);
++	struct diag_cntl_cmd_diag_id *ctrl_pkt;
++	char *process_name = NULL;
++	char *root_str = NULL;
++	uint8_t local_diag_id = 0;
++	static uint8_t diag_id = DIAG_ID_APPS;
++	uint32_t version = 0, feature_len = 0;
++	uint8_t new_request = 0;
++	int pd_val, ret;
++	process_name = (char*)&pkt->process_name;
++
++	ret = diag_query_diag_id(process_name, &local_diag_id);
++	if (!ret) {
++		diag_id++;
++		new_request = 1;
++		pd_val = diag_query_pd(process_name);
++		diag_add_diag_id_to_list(diag_id, process_name,
++		pd_val, peripheral);
++		local_diag_id = diag_id;
++	}
++
++	root_str = strstr(process_name, DIAG_ID_ROOT_STRING);
++	ctrl_pkt = malloc(sizeof(*ctrl_pkt));
++
++	if (!ctrl_pkt)
++		return -ENOMEM;
++
++	ctrl_pkt->diag_id = local_diag_id;
++	ctrl_pkt->hdr.cmd = DIAG_CNTL_CMD_DIAG_ID;
++	ctrl_pkt->version = DIAGID_VERSION_1;
++	strncpy((char *)&ctrl_pkt->process_name, process_name,
++		sizeof(ctrl_pkt->process_name));
++	ctrl_pkt->hdr.len = sizeof(ctrl_pkt->diag_id) + sizeof(ctrl_pkt->version) +
++		strlen(process_name) + 1;
++	len = ctrl_pkt->hdr.len+ sizeof(ctrl_pkt->hdr);
++
++	queue_push(&peripheral->cntlq, ctrl_pkt, len);
++
++	return 0;
++}
++
+ void diag_cntl_set_diag_mode(struct peripheral *perif, bool real_time)
+ {
+ 	struct diag_cntl_cmd_diag_mode_v2 pkt_v2;
+@@ -583,9 +745,12 @@ int diag_cntl_recv(struct peripheral *peripheral, const void *buf, size_t n)
+ 		case DIAG_CNTL_CMD_DEREGISTER:
+ 			diag_cntl_deregister(peripheral, hdr, n);
+ 			break;
++		case DIAG_CNTL_CMD_DIAG_ID:
++			diag_cntl_process_diag_id(peripheral, hdr, n);
++			break;
+ 		default:
+ 			warnx("[%s] unsupported control packet: %d",
+-			      peripheral->name, hdr->cmd);
++				peripheral->name, hdr->cmd);
+ 			print_hex_dump("CNTL", buf, n);
+ 			break;
+ 		}
+diff --git a/router/diag_cntl.h b/router/diag_cntl.h
+index f73f0d2..42a3e4b 100644
+--- a/router/diag_cntl.h
++++ b/router/diag_cntl.h
+@@ -35,6 +35,13 @@
+ #include "peripheral.h"
+ #include "masks.h"
+ 
++#define DIAG_ID_ROOT_STRING	"root"
++#define DIAGID_VERSION_1	1
++#define DIAGID_VERSION_2	2
++#define MAX_DIAGID_STR_LEN	30
++#define MIN_DIAGID_STR_LEN	5
++
++
+ int diag_cntl_recv(struct peripheral *perif, const void *buf, size_t len);
+ void diag_cntl_send_log_mask(struct peripheral *peripheral, uint32_t equip_id);
+ void diag_cntl_send_msg_mask(struct peripheral *peripheral, struct diag_ssid_range_t *range);
+diff --git a/router/dm.c b/router/dm.c
+index b669bef..ede519a 100644
+--- a/router/dm.c
++++ b/router/dm.c
+@@ -35,6 +35,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <unistd.h>
++#include <error.h>
+ 
+ #include "diag.h"
+ #include "dm.h"
+@@ -59,9 +60,100 @@ struct diag_client {
+ 
+ 	struct list_head outq;
+ 	struct list_head node;
++	struct watch_flow *flow;
+ };
+ 
+ struct list_head diag_clients = LIST_INIT(diag_clients);
++struct list_head diag_sock_clients = LIST_INIT(diag_sock_clients);
++
++
++int diag_socket_write(unsigned char *buf, int len, struct watch_flow *flow)
++{
++	if(socket_dm)
++		dm_send_flow(socket_dm, buf, len, flow);
++	return 0;
++}
++
++int diag_md_write(unsigned char *buf, int len, struct watch_flow *flow)
++//int diag_md_write(const void *buf, int len, struct watch_flow *flow)
++{
++	//printf("ODL Write Call\n");
++	struct diag_client *dm;
++	struct list_head *item;
++	size_t outlen;
++	void *outbuf;
++	int user_space_data_type = 32;
++	int remote_proc, data_len;
++	unsigned char *ptr;
++	int num_data_fields = 1, offset = 0;
++
++	outbuf = hdlc_encode(buf, len, &outlen);
++	if (!outbuf) {
++		warn("failed to allocate hdlc destination buffer\n");
++		return -1;
++	}
++
++	data_len = (outlen + sizeof(int)*3);
++	ptr = alloca(data_len);
++	if (!ptr) {
++		warn("diag: In %s failed to allocate memory\n", __func__);
++		return -1;
++	}
++	memcpy(ptr,&user_space_data_type, sizeof(user_space_data_type));
++	offset = offset + sizeof(user_space_data_type);
++	memcpy(ptr + offset, &num_data_fields, sizeof(num_data_fields));
++	offset = offset + sizeof(num_data_fields);
++	memcpy(ptr + offset, &outlen, sizeof(int));
++	offset = offset + sizeof(int);
++	memcpy(ptr + offset, outbuf, outlen);
++
++	list_for_each(item, &diag_sock_clients) {
++		dm = container_of(item, struct diag_client, node);
++
++		dm_send_flow(dm, ptr, data_len, flow);
++	}
++
++	return 0;
++}
++
++static struct diag_logger_ops socket_log_ops = {
++	.write = diag_socket_write,
++	.open = NULL,
++	.close = NULL,
++	.open_device = NULL,
++	.close_device = NULL,
++};
++
++static struct diag_logger_ops md_log_ops = {
++	.write = diag_md_write,
++	.open = NULL,
++	.close = NULL,
++	.open_device = NULL,
++	.close_device = NULL,
++};
++
++
++struct diag_logger_t *logger = NULL;
++
++void diag_mux_init()
++{
++	logger = (struct diag_logger_t *) malloc(sizeof(struct diag_logger_t *));
++	if(logger == NULL)
++		warn("Failed to allocate Memory.\n");
++
++	if(socket_dm)
++		logger->log_ops = &socket_log_ops;
++	else
++	logger->log_ops = &md_log_ops;
++}
++
++void diag_close_logging_process()
++{
++        if(socket_dm)
++                logger->log_ops = &socket_log_ops;
++        else
++                logger->log_ops = &md_log_ops;
++}
+ 
+ /**
+  * dm_add() - register new DM
+@@ -78,14 +170,32 @@ struct diag_client *dm_add(const char *name, int in_fd, int out_fd, bool hdlc_en
+ 	dm->name = strdup(name);
+ 	dm->in_fd = in_fd;
+ 	dm->out_fd = out_fd;
++	dm->flow = NULL;
+ 	dm->hdlc_encoded = hdlc_encoded;
+ 	list_init(&dm->outq);
+ 
+-	if (dm->in_fd >= 0)
++	if ((dm->in_fd >= 0) && (dm->name != NULL)) {
++		if (!strcmp(dm->name, "UNIX")) {
++			dm->flow = watch_flow_new();
++			watch_add_readfd(dm->in_fd, dm_recv, dm, dm->flow);
++		} else {
+ 		watch_add_readfd(dm->in_fd, dm_recv, dm, NULL);
++		}
++	}
+ 	watch_add_writeq(dm->out_fd, &dm->outq);
+ 
+-	list_add(&diag_clients, &dm->node);
++
++	if (dm->name != NULL) {
++		if (!strcmp(dm->name,"UNIX"))
++			list_add(&diag_sock_clients, &dm->node);
++		else
++			list_add(&diag_clients, &dm->node);
++	} else {
++		free(dm);
++		return NULL;
++	}
++
++//	list_add(&diag_clients, &dm->node);
+ 
+ 	/* Disable DM by default, so that  */
+ 	dm->enabled = false;
+@@ -123,31 +233,88 @@ static int dm_recv_hdlc(struct diag_client *dm)
+ 	return ret;
+ }
+ 
++#define USER_SPACE_DATA_TYPE 0x00000020
++#define USER_SPACE_RAW_DATA_TYPE 0x00000080
++#define USER_SPACE_LOG_EVENT  0x00000010
++
+ static int dm_recv_raw(struct diag_client *dm)
+ {
+-	int saved_errno;
++	int saved_errno,fd;
+ 	unsigned char buf[4096];
+ 	ssize_t n;
++	struct hdlc_decoder recv_decoder;
++	struct circ_buf recv_buf;
++	size_t msglen;
++	void *msg;
++	struct dm_pkt{
++		int type;
++		unsigned char pkt;
++	};
++	struct dm_pkt *dmpkt;
+ 
+ 	for (;;) {
+ 		n = read(dm->in_fd, buf, sizeof(buf));
+ 		if (!n) {
++			fd = dm->in_fd;
+ 			watch_remove_fd(dm->in_fd);
++			dm_del(dm->in_fd);
++			diag_close_logging_process();
++			close(fd);
+ 			break;
+ 		} else if (n < 0 && errno == EAGAIN) {
+ 			break;
+ 		} else if (n < 0) {
+-			saved_errno = -errno;
+ 			warn("Failed to read from %s\n", dm->name);
+-			return saved_errno;
++			fd = dm->in_fd;
++			watch_remove_fd(dm->in_fd);
++ 	                dm_del(dm->in_fd);
++			diag_close_logging_process();
++			close(fd);
++			break;
++		}
++		dmpkt = (struct dm_pkt *)buf;
++		switch (dmpkt->type) {
++		case USER_SPACE_DATA_TYPE:
++			memset(&recv_decoder, 0, sizeof(recv_decoder));
++			memcpy(recv_buf.buf, buf+4, n-4);
++			recv_buf.tail = 0;
++			recv_buf.head = n-4;
++			msg = hdlc_decode_one(&recv_decoder, &recv_buf, &msglen);
++			diag_client_handle_command(dm, msg, msglen);
++		break;
++		case USER_SPACE_RAW_DATA_TYPE:
++			diag_client_handle_command(dm, buf + 4, n - 4);
++		break;
++		case USER_SPACE_LOG_EVENT:
++			logger->log_ops = &md_log_ops;
++		break;	
++	
++		default:
++			break;
+ 		}
+-
+-		diag_client_handle_command(dm, buf, n);
+ 	}
+-
+ 	return 0;
+ }
+ 
++int dm_del(int fd)
++{
++        struct diag_client *dm;
++        struct list_head *item;
++
++        list_for_each(item, &diag_sock_clients) {
++                dm = container_of(item, struct diag_client, node);
++                if (dm->in_fd == fd) {
++                        if (dm->flow)
++                                free(dm->flow);
++                        list_del(&dm->node);
++                        free(dm);
++                }
++        }
++
++        return 0;
++}
++
++
+ /**
+  * dm_recv() - read and handle data from a DM
+  * @fd:		the file descriptor associated with the DM
+@@ -163,7 +330,7 @@ int dm_recv(int fd, void* data)
+ 		return dm_recv_raw(dm);
+ }
+ 
+-static ssize_t dm_send_flow(struct diag_client *dm, const void *ptr, size_t len,
++ssize_t dm_send_flow(struct diag_client *dm, const void *ptr, size_t len,
+ 			    struct watch_flow *flow)
+ {
+ 	if (!dm->enabled)
+@@ -194,16 +361,11 @@ ssize_t dm_send(struct diag_client *dm, const void *ptr, size_t len)
+  * @len:	length of message
+  * @flow:	flow control context for the peripheral
+  */
+-void dm_broadcast(const void *ptr, size_t len, struct watch_flow *flow)
++void dm_broadcast(const void *buf, size_t len, struct watch_flow *flow)
+ {
+-	struct diag_client *dm;
+-	struct list_head *item;
+-
+-	list_for_each(item, &diag_clients) {
+-		dm = container_of(item, struct diag_client, node);
+-
+-		dm_send_flow(dm, ptr, len, flow);
+-	}
++	unsigned char *tmp;
++	tmp = (unsigned char *)buf;
++	logger->log_ops->write(tmp, len, flow);
+ }
+ 
+ void dm_enable(struct diag_client *dm)
+diff --git a/router/dm.h b/router/dm.h
+index 9c2195c..985a929 100644
+--- a/router/dm.h
++++ b/router/dm.h
+@@ -39,6 +39,7 @@ struct diag_client;
+ struct diag_client *dm_add(const char *name, int in_fd, int out_fd, bool hdlc_encoded);
+ int dm_recv(int fd, void* data);
+ ssize_t dm_send(struct diag_client *dm, const void *ptr, size_t len);
++ssize_t dm_send_flow(struct diag_client *dm, const void *ptr, size_t len, struct watch_flow *flow);
+ void dm_broadcast(const void *ptr, size_t len, struct watch_flow *flow);
+ void dm_enable(struct diag_client *dm);
+ void dm_disable(struct diag_client *dm);
+diff --git a/router/peripheral-qrtr.c b/router/peripheral-qrtr.c
+index f3c1537..465b0da 100644
+--- a/router/peripheral-qrtr.c
++++ b/router/peripheral-qrtr.c
+@@ -272,7 +272,7 @@ void qrtr_perif_close(struct peripheral *perif)
+ {
+ }
+ 
+-static int qrtr_perif_init_subsystem(const char *name, int instance_base)
++static int qrtr_perif_init_subsystem(const char *name, int instance_base, int id)
+ {
+ 	struct peripheral *perif;
+ 	struct watch_flow *flow;
+@@ -280,12 +280,12 @@ static int qrtr_perif_init_subsystem(const char *name, int instance_base)
+ 	perif = calloc(1, sizeof(*perif));
+ 
+ 	flow = watch_flow_new();
+-
+ 	perif->name = strdup(name);
+ 	perif->send = qrtr_perif_send;
+ 	perif->close = qrtr_perif_close;
+ 	perif->sockets = true;
+ 	perif->flow = flow;
++	perif->periph_id = id;
+ 
+ 	list_init(&perif->cmdq);
+ 	list_init(&perif->cntlq);
+@@ -327,12 +327,12 @@ static int qrtr_perif_init_subsystem(const char *name, int instance_base)
+ 
+ int peripheral_qrtr_init(void)
+ {
+-	qrtr_perif_init_subsystem("modem", DIAG_INSTANCE_BASE_MODEM);
+-	qrtr_perif_init_subsystem("lpass", DIAG_INSTANCE_BASE_LPASS);
++	qrtr_perif_init_subsystem("modem", DIAG_INSTANCE_BASE_MODEM, PERIPHERAL_MODEM);
++/*	qrtr_perif_init_subsystem("lpass", DIAG_INSTANCE_BASE_LPASS);
+ 	qrtr_perif_init_subsystem("wcnss", DIAG_INSTANCE_BASE_WCNSS);
+ 	qrtr_perif_init_subsystem("sensors", DIAG_INSTANCE_BASE_SENSORS);
+ 	qrtr_perif_init_subsystem("cdsp", DIAG_INSTANCE_BASE_CDSP);
+ 	qrtr_perif_init_subsystem("wdsp", DIAG_INSTANCE_BASE_WDSP);
+-
++*/
+ 	return 0;
+ }
+diff --git a/router/peripheral.c b/router/peripheral.c
+index 1b63a58..9de656c 100644
+--- a/router/peripheral.c
++++ b/router/peripheral.c
+@@ -63,7 +63,7 @@ void peripheral_close(struct peripheral *peripheral)
+ 
+ int peripheral_init(void)
+ {
+-	peripheral_rpmsg_init();
++//	peripheral_rpmsg_init();
+ 	peripheral_qrtr_init();
+ 
+ 	return 0;
+diff --git a/router/peripheral.h b/router/peripheral.h
+index d04c8f8..f4cb46e 100644
+--- a/router/peripheral.h
++++ b/router/peripheral.h
+@@ -33,6 +33,26 @@
+ 
+ struct diag_ssid_range_t;
+ 
++#define PERIPHERAL_APPS		0
++#define PERIPHERAL_MODEM	1
++
++#define PERIPHERAL_LPASS	2
++#define PERIPHERAL_WCNSS	3
++#define PERIPHERAL_SENSORS	4
++#define PERIPHERAL_WDSP		5
++#define PERIPHERAL_CDSP		6
++#define PERIPHERAL_NPU		7
++#define NUM_PERIPHERALS		8
++
++#define UPD_WLAN		8
++#define UPD_AUDIO		9
++#define UPD_SENSORS		10
++#define UPD_CHARGER		11
++#define NUM_UPD			4
++#define PD_UNKNOWN		255
++
++
++
+ int peripheral_init(void);
+ void peripheral_close(struct peripheral *peripheral);
+ 
+diff --git a/router/socket.c b/router/socket.c
+index f8f5b0f..f71b344 100644
+--- a/router/socket.c
++++ b/router/socket.c
+@@ -49,11 +49,12 @@
+ #include "watch.h"
+ 
+ #define APPS_BUF_SIZE 16384
++struct diag_client *socket_dm = NULL;
+ 
+ int diag_sock_connect(const char *hostname, unsigned short port)
+ {
+ 	struct sockaddr_in addr;
+-	struct diag_client *dm;
++//	struct diag_client *dm;
+ 	struct hostent *host;
+ 	int ret;
+ 	int fd;
+@@ -81,8 +82,8 @@ int diag_sock_connect(const char *hostname, unsigned short port)
+ 
+ 	printf("Connected to %s:%d\n", hostname, port);
+ 
+-	dm = dm_add("DIAG CLIENT", fd, fd, true);
+-	dm_enable(dm);
++	socket_dm = dm_add("Socket Client", fd, fd, true);
++	dm_enable(socket_dm);
+ 
+ 	return fd;
+ }
+diff --git a/router/unix.c b/router/unix.c
+index ead9fe0..5b3e41d 100644
+--- a/router/unix.c
++++ b/router/unix.c
+@@ -85,7 +85,7 @@ int diag_unix_open(void)
+ 		return -1;
+ 	}
+ 
+-	ret = listen(fd, 2);
++	ret = listen(fd, 50);
+ 	if (ret < 0) {
+ 		fprintf(stderr, "failed to listen on diag socket\n");
+ 		return -1;
+diff --git a/tools/diag-log_on_device.c b/tools/diag-log_on_device.c
+new file mode 100644
+index 0000000..0be46af
+--- /dev/null
++++ b/tools/diag-log_on_device.c
+@@ -0,0 +1,656 @@
++/*
++ * Copyright (c) 2021 The Linux Foundation. All rights reserved.
++
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions are met:
++    * Redistributions of source code must retain the above copyright
++      notice, this list of conditions and the following disclaimer.
++    * Redistributions in binary form must reproduce the above
++      copyright notice, this list of conditions and the following
++      disclaimer in the documentation and/or other materials provided
++      with the distribution.
++    * Neither the name of The Linux Foundation nor the names of its
++      contributors may be used to endorse or promote products derived
++      from this software without specific prior written permission.
++
++ * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
++ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
++ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
++ * ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
++ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
++ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
++ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
++ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
++ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
++ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
++ * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++ */
++
++#include <sys/socket.h>
++#include <sys/un.h>
++#include <netinet/in.h>
++#include <arpa/inet.h>
++#include <sys/time.h>
++#include <pthread.h>
++#include <err.h>
++#include <errno.h>
++#include <fcntl.h>
++#include <netdb.h>
++#include <stdio.h>
++#include <string.h>
++#include <stdlib.h>
++#include <unistd.h>
++#include <time.h>
++#include <pthread.h>
++#include <stdint.h>
++#include <signal.h>
++#include <sys/time.h>
++#include <sys/types.h>
++#include <sys/stat.h>
++#include <dirent.h>
++#include <sys/types.h>
++#include <sys/syscall.h>
++#include <sys/select.h>
++#include <ctype.h>
++#include <limits.h>
++#include <stdlib.h>
++
++#define FILE_LIST_NAME_SIZE 100
++#define MAX_FILES_IN_FILE_LIST 100
++#define std_strlprintf snprintf
++#define LOG_FILENAME_PREFIX_LEN 9
++#define READ_BUF_SIZE 100000
++#define DISK_BUF_SIZE 8192
++#define CONTROL_CHAR 0x7E
++#define USER_SPACE_DATA_TYPE 0x00000020
++#define USER_SPACE_RAW_DATA_TYPE 0x00000080
++#define USER_SPACE_LOG_EVENT     0x00000010
++#define FILE_NAME_LEN 500
++#define MASK_FILE_BUF_SIZE 8192
++
++
++
++struct buffer_pool {
++	unsigned int bytes_in_buff;
++	unsigned char buffer_ptr[DISK_BUF_SIZE];
++};
++
++/*Static declaration of buffer. */
++struct buffer_pool pools[] = {
++	[0] = {
++		.bytes_in_buff = 0,
++	},
++	[1] = {
++		.bytes_in_buff = 0,
++	},
++
++};
++
++typedef uint32_t	uint32;
++typedef uint8_t		uint8;
++
++pthread_cond_t cond1 = PTHREAD_COND_INITIALIZER;
++pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER;
++
++/* Thread Handlers */
++pthread_t read_thread_hdl;	/* Diag Read thread handle */
++pthread_t write_thread_hdl;	/* Diag disk write thread handle */
++
++/* Global Declarations */
++int curr_read = 0;
++int curr_write = 0;
++unsigned char read_buffer[READ_BUF_SIZE];
++char output_dir[FILE_NAME_LEN] = {"/tmp"};
++char mask_clear_file[] = "/tmp/diag_mask.cfg";
++int fd_dev = -1; // Socket Descriptor
++int fd_device = -1; //FIle Descriptor
++char timestamp_buf[30];
++char file_name_curr[FILE_NAME_LEN];
++static char *open_mask_file= NULL;
++static int diag_mask_file = 0;
++static int diag_timeout;
++int num_bytes_read;
++unsigned int max_file_num = 10;
++static unsigned int file_count = 0;
++int file_list_size;
++unsigned long max_file_size = 100000000;
++unsigned long min_file_size = 80000000;
++unsigned static long count_written_bytes;
++char* file_list = NULL;
++int file_list_index = -1;
++char file_name_del[FILE_NAME_LEN];
++int overflow_flag = 0;
++int cleanup_mask;
++
++int delete_log(void);
++
++/* Function to get timestamp */
++void get_time_string(char *buffer, int len)
++{
++	struct timeval tv;
++	struct tm *tm;
++	unsigned long long milliseconds = 0;
++	char timestamp_buf[30];
++
++	if (!buffer || len <= 0)
++		return;
++
++	gettimeofday(&tv, NULL);
++	tm = localtime(&tv.tv_sec);
++	if (!tm)
++		return;
++
++	milliseconds = (tv.tv_sec * 1000LL) + (tv.tv_usec / 1000);
++	strftime(timestamp_buf, 30, "%Y%m%d_%H%M%S", tm);
++	(void)snprintf(buffer, len, "%s%lld",
++		timestamp_buf, milliseconds);
++}
++
++static void usage(void)
++{
++	fprintf(stderr,
++		"User space application for diag interface\n"
++		"\n"
++		"usage: diag [-of]\n"
++		"\n"
++		"options:\n"
++		"-o	<output directory>\n"
++		"-f	<Diag Configuration file>\n"
++		"-t	<Log Timeout>\n"
++		"-n	<number of log files>\n"
++		"-s	<Size in MB>\n"
++		"-c	<Cleanup Modem Mask>\n"
++	);
++	exit(1);
++}
++
++
++int send_empty_mask(int type)
++{
++	int fd_mask, ch, ret;
++	const uint8 size = 40;
++	unsigned char mask_buf[size];
++	int count_mask_bytes = 4;
++	*(int *)mask_buf = USER_SPACE_RAW_DATA_TYPE;
++	FILE *mask_fp = NULL;
++
++	if ((mask_fp = fopen(mask_clear_file, "rb")) == NULL) {
++		printf("can't open mask clear file: %s, errno: %d\n", mask_clear_file,errno);
++		return -1;
++	}
++	while(1)
++	{
++		ch = fgetc(mask_fp);
++		if(ch == EOF)
++			break;
++
++		mask_buf[count_mask_bytes] = ch;
++		if (mask_buf[count_mask_bytes] == CONTROL_CHAR) {
++			ret = write(fd_dev, mask_buf, count_mask_bytes-1);
++			if(ret < 0) {
++				printf("Write Error on the Socket: errno = %d\n", errno);
++				return -1;
++			}
++		*(int *)mask_buf = USER_SPACE_DATA_TYPE;
++		count_mask_bytes = 4;
++		} else {
++			count_mask_bytes++;
++		}
++	}
++	fclose(mask_fp);
++
++	return 0;	
++}
++
++
++static void log_timeout(int sig, siginfo_t *siginfo, void *context)
++{
++	int ret;
++	printf ("Sending PID: %ld, UID: %ld\n",
++			(long)siginfo->si_pid, (long)siginfo->si_uid);
++	ret = send_empty_mask(0);
++	if(ret < 0)
++		printf("Couldn't open Mask clear file.\n");
++
++	close(fd_device);
++	close(fd_dev);
++	pthread_cancel(read_thread_hdl);
++	pthread_cancel(write_thread_hdl);
++}
++int close_logging_file()
++{
++	int status;
++	char timestamp_buf[30];
++	char new_filename[FILE_NAME_LEN];
++
++	close(fd_device);
++	/* check whether number of files in /tmp. Delete if we exceed the limit */
++	if(file_count > max_file_num) {
++		printf("Delete Oldest File.\n");
++		if (!delete_log()) {
++			file_count--;
++		}
++	}
++	get_time_string(timestamp_buf, sizeof(timestamp_buf));
++	snprintf(new_filename,
++			FILE_NAME_LEN, "%s%s%s%s",
++			output_dir,"/diag_log_",
++			timestamp_buf, ".qmdl");
++
++	fd_device = open(new_filename,
++			O_CREAT | O_RDWR | O_SYNC | O_TRUNC,
++			0644);
++	if(fd_device < 0) {
++		printf(" File open error: %d\n", errno);
++		return -1;
++	}
++	else {
++		file_count++; 
++	}
++	strncpy(file_name_curr, new_filename, FILE_NAME_LEN);
++	return 0;
++}
++
++static void *WriteThread(void *data)
++{
++	unsigned int chunks, last_chunk;
++	struct stat finfo;
++	int ret;
++	while(1) {
++		pthread_mutex_lock(&lock);
++		pthread_cond_wait(&cond1, &lock);
++		ret = write(fd_device,pools[curr_write].buffer_ptr,DISK_BUF_SIZE);
++		if(ret > 0) {
++			pools[curr_write].bytes_in_buff = 0;
++		} else if (ret < 0) {
++			goto fail;
++		}
++		/* Check whether we reached to MAX size of the File */
++		if(fstat(fd_device, &finfo) == 0) {
++			if(finfo.st_size > min_file_size) {
++				ret = close_logging_file();
++				if(ret < 0)
++					goto fail;
++				count_written_bytes = 0;
++			}
++		} 
++		else {
++			goto fail;
++		}
++		pthread_mutex_unlock(&lock);
++		curr_write =! curr_write;
++	}
++fail: 
++	pthread_cancel(read_thread_hdl);
++	close(fd_dev);
++	close(fd_device);
++	return (void *)0;
++}
++/* Read Thread */
++static void *CreateWaitThread(void* data) 
++{
++	int read_bytes = 0,type,num_data_fields;
++	uint32 count_received_bytes;
++	unsigned char* ptr;
++
++	while(1) {
++		num_bytes_read = 0;
++		memset(read_buffer, 0, READ_BUF_SIZE);
++		num_bytes_read = read(fd_dev, (void*)read_buffer,READ_BUF_SIZE);
++		if(!num_bytes_read || (num_bytes_read < 0))
++			goto read_failure;
++
++		type = *(int *)read_buffer;
++		ptr = read_buffer+4;
++		num_data_fields = *(int *)ptr;
++		ptr += 4;
++		count_received_bytes = *(uint32*)ptr;
++		ptr += sizeof(uint32);
++		count_written_bytes += num_bytes_read;
++		if(count_received_bytes >= (DISK_BUF_SIZE - pools[curr_read].bytes_in_buff)) {
++		/* Trigger Write Thread */
++			curr_read =! curr_read;
++			pthread_cond_signal(&cond1);
++		}
++
++		if(count_received_bytes > 0) {/* Buffer space is available */
++			memcpy(pools[curr_read].buffer_ptr + pools[curr_read].bytes_in_buff, ptr, count_received_bytes);
++			pools[curr_read].bytes_in_buff += count_received_bytes;
++		}
++	}
++
++read_failure:
++	close(fd_dev);
++	close(fd_device);
++	pthread_cancel(write_thread_hdl);
++	return (void *)0;	
++}
++
++static int create_oldest_file_list(char *oldest_dir)
++{
++
++	int status = 1;
++	struct dirent **dirent_list;
++	int i,n,type=0;
++	int num_entries = 0;
++	int num_entries_capped = 0;
++	char *name_ptr;
++	int num_bytes = 0;
++
++	num_entries = scandir(oldest_dir, &dirent_list, 0,(int(*)(const struct dirent **, const struct dirent **))alphasort);
++	if(!dirent_list) {
++		printf("In %s, couldn't get the dirent_list, errno: %d, directory: %s\n",
++		__func__, errno, oldest_dir);
++		return 0;
++	} else if (num_entries < 0) {
++		printf("In %s, error determining directory entries, errno: %d, directory: %s\n",
++			__func__, errno, oldest_dir);
++		return 0;
++	}
++
++	/* Limit the size of the list so we aren't working with too many files */
++	num_entries_capped = (num_entries > MAX_FILES_IN_FILE_LIST) ?
++				MAX_FILES_IN_FILE_LIST : num_entries;
++		
++	if (num_entries_capped - 2 > 0) {
++		file_list_size = num_entries_capped - 2;
++		num_bytes = FILE_LIST_NAME_SIZE * file_list_size;
++		file_list = malloc(num_bytes);
++	}
++
++	if (file_list) {
++		file_list_index = 0;
++		for (i = 0; i < num_entries_capped; i++)
++		{
++			if ((strncmp(dirent_list[i]->d_name, "diag_log_",LOG_FILENAME_PREFIX_LEN) != 0))
++				continue;
++			if (file_list_index < file_list_size)
++			{
++				name_ptr = file_list +
++						(file_list_index * FILE_LIST_NAME_SIZE);
++				strncpy(name_ptr, dirent_list[i]->d_name, FILE_LIST_NAME_SIZE);
++				*(name_ptr + (FILE_LIST_NAME_SIZE - 1)) = 0;
++					file_list_index++;
++			}
++			if (file_list_index > 0) {
++				if (file_list_index < file_list_size) {
++					int new_size = FILE_LIST_NAME_SIZE *file_list_index;
++					char *temp_ptr = realloc(file_list, new_size);
++					if (temp_ptr)
++						file_list = temp_ptr;
++				}
++			file_list_size = file_list_index;
++			}
++		}
++	}
++	else if (num_bytes > 0) {
++		printf("Memory Allocation error.\n");
++		status = 0;
++	}
++	
++	i = num_entries;
++	while (i--) {
++	free(dirent_list[i]);
++	}
++	
++	free(dirent_list); 
++	return status;
++}
++
++static int get_oldest_file(char* oldest_file, char *oldest_dir)
++{
++	int status = 0;
++		status = create_oldest_file_list(oldest_dir);
++
++	if (file_list) {
++		if (oldest_file) {
++			strncpy(oldest_file, file_list,
++				FILE_LIST_NAME_SIZE);
++			file_list_index++;
++			status = 1;
++		} else {
++			printf("In %s, oldest_file is NULL\n", __func__);
++		}
++		
++	}else {
++		status =0;
++		printf("No Log files in the dicrectory.\n");
++	}
++
++	return status;
++}
++/* Number of Log file in /tmp directory */
++static int get_file_count(char *oldest_dir)
++{
++	struct dirent **dirent_list;
++	int i,num_entries = 0;
++	int num_entries_capped = 0;
++
++	num_entries = scandir(oldest_dir, &dirent_list, 0,(int(*)(const struct dirent **, const struct dirent **))alphasort);
++	if(!dirent_list) {
++		printf("In %s, couldn't get the dirent_list, errno: %d, directory: %s\n",
++			__func__, errno, oldest_dir);
++		return 0;
++	} else if (num_entries < 0) {
++		printf("In %s, error determining directory entries, errno: %d, directory: %s\n",
++			 __func__, errno, oldest_dir);
++		return 0;
++	}
++	
++	for (i = 0; i < num_entries; i++) {
++		if ((strncmp(dirent_list[i]->d_name, "diag_log_",LOG_FILENAME_PREFIX_LEN) != 0))
++			continue;
++	file_count++;
++	}
++	return file_count;
++}
++
++int delete_log()
++{
++	int status;
++	char oldest_file[FILE_LIST_NAME_SIZE] = "";
++	struct stat file_stat;
++
++	status = get_oldest_file(oldest_file,
++					output_dir);
++	if (0 == status) {
++		printf("diag: In %s, Unable to determine oldest file for deletion\n",
++			 __func__);
++		return -1;
++	}
++	std_strlprintf(file_name_del,
++			FILE_NAME_LEN, "%s%s%s",
++			output_dir, "/", oldest_file);
++	if (!strncmp(file_name_curr, file_name_del, FILE_NAME_LEN)) {
++		printf("diag: In %s, Cannot delete file, file %s is in use \n",
++			 __func__, file_name_curr);
++		return -1;
++	}
++	stat(file_name_del, &file_stat);
++	/* Convert size to KB */
++	file_stat.st_size /= 1024;
++	if (unlink(file_name_del)) {
++		printf("In %s, Unable to delete file: %s, errno: %d\n",
++			__func__, file_name_del, errno);
++		return -1;
++	} else {
++		printf("In %s, Deleting logfile %s of size %lld KB\n",
++			__func__, file_name_del,
++			(long long int) file_stat.st_size);
++		free(file_list);
++	}
++	return 0;
++}
++
++
++int main(int argc, char **argv)
++{
++	int ret;
++	int c,ch,found_cmd;
++	struct sockaddr_un addr;
++	struct timeval tv = {20, 0};
++	struct sigaction act;
++	int count_mask_bytes = 0;
++	unsigned char mask_buf[MASK_FILE_BUF_SIZE];
++	unsigned char mask_log[4];
++	FILE *read_mask_fp;
++	*(int *)mask_buf = USER_SPACE_DATA_TYPE;
++	*(int *)mask_log = USER_SPACE_LOG_EVENT; 
++	
++	count_mask_bytes = 4;
++	memset (&act, '\0', sizeof(act));
++	act.sa_sigaction = &log_timeout;
++	act.sa_flags = SA_SIGINFO;
++	if (sigaction(SIGALRM, &act, NULL) < 0) {
++		perror ("sigaction");
++		return 1;
++	}
++
++	for (;;) {
++		c = getopt(argc, argv, "hf:o:t:s");
++		if (c < 0)
++			break;
++
++		switch (c) {
++		case 'c':
++			cleanup_mask = 1;
++			break;
++		
++		case 's':
++			max_file_size = atol(optarg);
++			if ((long)max_file_size <= 0)
++				max_file_size = 100000000;
++			else {
++				max_file_size *= 1024 * 1024;
++			//	if (max_file_size >= 0 && max_file_size < 1024 * 1024)
++			//		max_file_size = 100000000;
++			}
++			min_file_size = ((max_file_size / 100) * 80);
++			break;
++		
++		case 'o':
++			file_count = get_file_count(output_dir);
++			printf("QMDL File Count in /tmp Directory = %d\n", file_count);
++			
++			if(max_file_num > 1 && (file_count >= max_file_num)) { /* Check file_count before creating the Log File. */
++				printf("In %s, File count reached max file num %u so deleting oldest file\n",__func__, max_file_num);
++			
++			while(file_count > max_file_num)
++				if (!delete_log()) {
++				file_count--;
++				}
++			}
++
++			get_time_string(timestamp_buf, sizeof(timestamp_buf));
++			snprintf(file_name_curr,
++					FILE_NAME_LEN, "%s%s%s%s",
++					output_dir,"/diag_log_",
++					timestamp_buf, ".qmdl");
++			fd_device = open(file_name_curr,
++					O_CREAT | O_RDWR | O_SYNC | O_TRUNC,
++					0644);
++			if(fd_device < 0) {
++				printf(" File open error: %d\n", errno);
++				return -1;
++			}
++			else {
++				file_count++;
++			}
++			printf("QMDL Fil: %s\n", file_name_curr);
++			break;
++
++		case 'f':
++			open_mask_file = strdup(optarg);
++			diag_mask_file = 1;
++			break;
++		case 't':
++			printf("Timeout for QMDL Logging\n");
++			diag_timeout = atoi(optarg);
++			printf("Time out value = %d\n", diag_timeout);
++			alarm(diag_timeout);
++			break;
++		default:
++		case 'h':
++			usage();
++			break;
++		}
++	}
++
++	fd_dev = socket(AF_UNIX, SOCK_SEQPACKET, 0);
++	if (fd_dev < 0)
++		goto failure_case3;
++
++	memset(&addr, 0, sizeof(addr));
++	addr.sun_family = AF_UNIX;
++	strncpy(addr.sun_path, "\0diag", sizeof(addr.sun_path)-1);
++	
++	ret = connect(fd_dev, (struct sockaddr*)&addr, sizeof(addr));
++	if (ret < 0)
++		goto failure_case2;
++	
++	ret = write(fd_dev,mask_log,4);
++	if(ret < 0)
++		printf("LOg MAsk failed to write\n");
++
++	pthread_create(&read_thread_hdl, NULL, CreateWaitThread, NULL);
++	if(read_thread_hdl == 0) {
++		printf("Failed to create Read Thread.\n");
++		goto failure_case2;
++	}
++	pthread_create(&write_thread_hdl, NULL, WriteThread, NULL);
++	if(write_thread_hdl == 0) {
++		printf("Failed to create Write Thread.\n");
++		if(read_thread_hdl == 0)
++			pthread_cancel(read_thread_hdl);
++		goto failure_case2;
++	}
++
++	if ((read_mask_fp = fopen(open_mask_file, "rb")) == NULL) {
++		printf("can't open mask file: %s, errno: %d\n", open_mask_file,errno);
++		goto failure_case1;
++	}
++
++	if(diag_mask_file){
++		while(1){
++			ch = fgetc(read_mask_fp);
++			if (ch == EOF)
++			break;  
++			mask_buf[count_mask_bytes] = ch;
++			if (mask_buf[count_mask_bytes] == CONTROL_CHAR) {
++
++			if (!found_cmd)
++				found_cmd = 1;
++			ret = write(fd_dev, mask_buf, count_mask_bytes+1);
++			if(ret < 0) {
++				printf("Write Error on the Socket: errno = %d\n", errno);
++				goto failure_case0;
++			}
++		
++			*(int *)mask_buf = USER_SPACE_DATA_TYPE;
++			count_mask_bytes = 4;
++			} else {
++			count_mask_bytes++;
++			}
++		}
++		if(!found_cmd){
++			printf("No command found:\n");
++		}
++	}
++	while(1)
++		sleep(3600);
++
++failure_case0:
++	fclose(read_mask_fp);
++
++failure_case1:
++	pthread_cancel(read_thread_hdl);
++	pthread_cancel(write_thread_hdl);
++
++failure_case2:
++	close(fd_dev);
++
++failure_case3:
++	close(fd_device);
++
++	return 0;
++}
+diff --git a/tools/send_data.c b/tools/send_data.c
+index 95ac274..84a338b 100644
+--- a/tools/send_data.c
++++ b/tools/send_data.c
+@@ -47,6 +47,10 @@
+ #define DIAG_CMD_RSP_BAD_COMMAND			0x13
+ #define DIAG_CMD_RSP_BAD_PARAMS				0x14
+ #define DIAG_CMD_RSP_BAD_LENGTH				0x15
++#define USER_SPACE_RAW_DATA_TYPE                        0x00000080
++#define USER_SPACE_LOG_EVENT                            0x00000010
++
++typedef uint32_t        uint32;
+ 
+ int main(int argc, char **argv)
+ {
+@@ -58,12 +62,31 @@ int main(int argc, char **argv)
+ 	char buf[8192];
+ 	int ret;
+ 	int fd;
+-	int i;
++	int i,j=1;
++	unsigned char *req_modem_loopback;
++	unsigned char *req_modem_logging;
++	int REQ_LOOPBACK_LEN;
++	unsigned char* ptr;
++	uint32 count_received_bytes;
++	(void)argc;
++	(void)argv;
++	
++	REQ_LOOPBACK_LEN = argc -1 + 4;
++
++	printf("REQ_LOOPBACK_LEN = %d\n", REQ_LOOPBACK_LEN);
++
++	req_modem_loopback = calloc(argc - 1 + 4, sizeof(*req_modem_loopback));
++	if (!req_modem_loopback)
++		exit(1);
++	*(int *)req_modem_loopback = USER_SPACE_RAW_DATA_TYPE;
++
++	req_modem_logging = calloc(4, sizeof(*req_modem_loopback));
++
++	*(int *)req_modem_logging = USER_SPACE_LOG_EVENT;
+ 
+-	msg = calloc(argc - 1, sizeof(*msg));
++	for (i = 4; i < REQ_LOOPBACK_LEN; i++,j++)
++		req_modem_loopback[i] = atoi(argv[j]);
+ 
+-	for (i = 1; i < argc; i++)
+-		msg[i - 1] = atoi(argv[i]);
+ 
+ 	fd = socket(AF_UNIX, SOCK_SEQPACKET, 0);
+ 	if (fd < 0)
+@@ -76,8 +99,12 @@ int main(int argc, char **argv)
+ 	ret = connect(fd, (struct sockaddr*)&addr, sizeof(addr));
+ 	if (ret < 0)
+ 		err(1, "failed to connect to diag");
++	
++	n = write(fd,req_modem_logging,4);
++	if(n < 0)
++		err(1, "failed to send request");
+ 
+-	n = write(fd, msg, argc - 1);
++	n = write(fd, req_modem_loopback, REQ_LOOPBACK_LEN);
+ 	if (n < 0)
+ 		err(1, "failed to send request");
+ 
+@@ -108,12 +135,25 @@ int main(int argc, char **argv)
+ 			printf("Diag response: Bad command\n");
+ 			break;
+ 		}
+-
++		
++		ptr = (unsigned char*)buf;
++                ptr = ptr+4;
++                ptr += 4;
++                count_received_bytes = *(uint32*)ptr;
++                ptr += sizeof(uint32);
++#if 0
+ 		for (i = 0; i < n; i++) {
+ 			printf("%s%d", i == 0 ? "" : " ", buf[i]);
+ 			if (i % 16 == 15 || i == n - 1)
+ 				printf("\n");
+ 		}
++#endif
++	 for (i = 0; i < count_received_bytes; i++) {
++		if (i % 8 == 0) {
++			printf("\n  ");
++		}
++		printf("%02x ", ptr[i]);
++	}
+ 
+ 		if (buf[0] == msg[0])
+ 			break;
+-- 
+2.7.4
+
diff --git a/net-misc/gsutil/Manifest b/net-misc/gsutil/Manifest
new file mode 100644
index 0000000..0d98b56
--- /dev/null
+++ b/net-misc/gsutil/Manifest
@@ -0,0 +1,3 @@
+DIST gsutil-4.67-boto.tar.gz 1486373 BLAKE2B 750d9e394d4e4ba9ae7ef5dbd704bea4d577ac8af017e56750ff4adc3b6a327c09938636a7e3492299ad6c6022d77fd3cb76498a73310e3951048f71ca09b5e6 SHA512 f07d59bca302c75928db7820e8a546e98abe84361dc8aece03cd6fe248da30b3850c15ca362360647b98ec0893add4a0f36e13414f39de68e7e3dcdc69d0a1a4
+DIST gsutil-4.67-oauth2client.tar.gz 182632 BLAKE2B f5914e8388297d0053911bbb92105667d003220a01d9c9dc0f91e5eda618cf2e95e18b958c4bbca466025e0abddc2471cda14cebd24d5cdfe2188f1e7958a0cb SHA512 2ce956858d4357ce48252592f02d3b1448ca0f264f57bbe8752dcd2622501d88eea4b81b952695fe6a00d0099c25ab46937e0d364436c4dd439c581987753630
+DIST gsutil-4.67.tar.gz 1419295 BLAKE2B 27c9ccd797c7a05d0963835eedce572e2a94666a13521e1e9c817532fea446c7ea8bff2547b2a437e31892b5b733633d060b17b16fab866b504b43d2f879bdff SHA512 ddf2ff187ea0ebdf27afde8efca5c1be5f695577d3b7c5d032ec63167d0f9587a67ed7eae56cebe19e70abbcfc1049864459686b37b75bf8933c8b3bd617d850
diff --git a/net-misc/gsutil/OWNERS b/net-misc/gsutil/OWNERS
new file mode 100644
index 0000000..d229735
--- /dev/null
+++ b/net-misc/gsutil/OWNERS
@@ -0,0 +1,2 @@
+# Used in the build to fetch files.
+include chromiumos/chromite:/OWNERS.build
diff --git a/net-misc/gsutil/gsutil-4.67.ebuild b/net-misc/gsutil/gsutil-4.67.ebuild
new file mode 100644
index 0000000..a816653
--- /dev/null
+++ b/net-misc/gsutil/gsutil-4.67.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{6..9} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+
+inherit distutils-r1
+
+DESCRIPTION="command line tool for interacting with cloud storage services"
+HOMEPAGE="https://github.com/GoogleCloudPlatform/gsutil"
+BOTO_REV="9d356f922fcd27be141cda576571c3c4002b1b4d"
+OAUTH2CLIENT_REV="350c1fc5ff81dec26777789c1764c420469c6b67"
+SRC_URI="http://commondatastorage.googleapis.com/pub/${PN}-${PV}.tar.gz
+https://github.com/gsutil-mirrors/boto/archive/${BOTO_REV}.tar.gz -> ${PN}-${PV}-boto.tar.gz
+https://github.com/gsutil-mirrors/oauth2client/archive/${OAUTH2CLIENT_REV}.tar.gz -> ${PN}-${PV}-oauth2client.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PVR}"
+KEYWORDS="*"
+
+RDEPEND="${PYTHON_DEPS}
+	>=dev-python/argcomplete-1.9.4[${PYTHON_USEDEP}]
+	>=dev-python/crcmod-1.7[${PYTHON_USEDEP}]
+	>=dev-python/fasteners-0.14.1[${PYTHON_USEDEP}]
+	>=dev-python/gcs-oauth2-boto-plugin-2.7[${PYTHON_USEDEP}]
+	>=dev-python/google-apitools-0.5.32[${PYTHON_USEDEP}]
+	>=dev-python/google-reauth-python-0.1.0[${PYTHON_USEDEP}]
+	>=dev-python/httplib2-0.18[${PYTHON_USEDEP}]
+	>=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
+	>=dev-python/monotonic-1.4[${PYTHON_USEDEP}]
+	>=dev-python/pyopenssl-0.13[${PYTHON_USEDEP}]
+	>=dev-python/retry-decorator-1.0.0[${PYTHON_USEDEP}]
+	>=dev-python/six-1.12.0[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+DOCS=( README.md CHANGES.md )
+
+src_unpack() {
+	default
+
+	S="${WORKDIR}/${PN}-${PV}"
+	rm -rf "${S}/gslib/vendored/boto"
+	mv "${WORKDIR}/boto-${BOTO_REV}" "${S}/gslib/vendored/boto"
+	rm -rf "${S}/gslib/vendored/oauth2client"
+	mv "${WORKDIR}/oauth2client-${OAUTH2CLIENT_REV}" "${S}/gslib/vendored/oauth2client"
+}
+
+python_prepare_all() {
+	distutils-r1_python_prepare_all
+
+	sed -i \
+		-e 's/mock==/mock>=/' \
+		setup.py || die
+	# Sanity check we didn't miss any updates.
+	grep '==' setup.py && die "Need to update version requirements"
+
+	# For debugging purposes, show hidden tracebacks.
+	sed -e 's/^  except OSError as e:$/&\n    raise/' \
+		-e 's/def _HandleUnknownFailure(e):/&\n  raise/' \
+		-i gslib/__main__.py || die
+
+	sed -i -E -e 's/(executable_prefix =).*/\1 [sys.executable]/' \
+		gslib/commands/test.py || die
+
+	# IOError: close() called during concurrent operation on the same file object.
+	sed -i -e 's/sys.stderr.close()/#&/' \
+		gslib/tests/testcase/unit_testcase.py || die
+
+	# Don't install the 'test' module.
+	rm test/__init__.py
+}
+
+python_compile() {
+	2to3 --write --nobackups --no-diffs -j "$(makeopts_jobs "${MAKEOPTS}" INF)" \
+		gslib/vendored/boto/tests || die "2to3 on boto tests failed"
+
+	distutils-r1_python_compile
+}
diff --git a/net-misc/gsutil/metadata.xml b/net-misc/gsutil/metadata.xml
new file mode 100644
index 0000000..8d25939
--- /dev/null
+++ b/net-misc/gsutil/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+  <maintainer type="person">
+    <email>chutzpah@gentoo.org</email>
+    <name>Patrick McLean</name>
+  </maintainer>
+  <maintainer type="person">
+    <email>zmedico@gentoo.org</email>
+    <name>Zac Medico</name>
+  </maintainer>
+  <upstream>
+    <remote-id type="google-code">gsutil</remote-id>
+    <remote-id type="github">GoogleCloudPlatform/gsutil</remote-id>
+  </upstream>
+</pkgmetadata>
diff --git a/net-misc/modemmanager-next/files/52-mm-modem-permissions.rules b/net-misc/modemmanager-next/files/52-mm-modem-permissions.rules
index 810a66e..667aa6c 100644
--- a/net-misc/modemmanager-next/files/52-mm-modem-permissions.rules
+++ b/net-misc/modemmanager-next/files/52-mm-modem-permissions.rules
@@ -9,6 +9,10 @@
 # 77-mm-*.rules.
 
 #-------------------------------------------------------------------------------
+# PCIe devices exposed by ccci kernel driver
+KERNEL=="ttyCMBIM[0-9]", SUBSYSTEM=="ccci_node", GOTO="modem_change_mode"
+
+#-------------------------------------------------------------------------------
 # 'usb' devices
 
 # A 'cdc-wdm' device is from a MBIM and QMI-based modems.
diff --git a/net-misc/modemmanager-next/files/modemmanager-amd64.policy b/net-misc/modemmanager-next/files/modemmanager-amd64.policy
index 134b209..08fa99a 100644
--- a/net-misc/modemmanager-next/files/modemmanager-amd64.policy
+++ b/net-misc/modemmanager-next/files/modemmanager-amd64.policy
@@ -7,6 +7,7 @@
 sendto: 1
 write: 1
 read: 1
+pread64: 1
 poll: 1
 lstat: 1
 futex: 1
@@ -39,7 +40,8 @@
 # 0x8BE4 == SIOCIWFIRSTPRIV_CLEANUP
 ioctl: arg1 == TCGETS || arg1 == SIOCGIFINDEX || arg1 == TIOCEXCL || \
        arg1 == TIOCNXCL || arg1 == TIOCGSERIAL || arg1 == 0x800248a0 || \
-       arg1 == 0x8BE1 || arg1 == 0x8BE2 || arg1 == 0x8BE3 || arg1 == 0x8BE4
+       arg1 == 0x8BE1 || arg1 == 0x8BE2 || arg1 == 0x8BE3 || arg1 == 0x8BE4 || \
+       arg1 == TCFLSH || arg1 == TCSETS
 connect: 1
 clone: 1
 set_robust_list: 1
diff --git a/net-misc/modemmanager-next/files/modemmanager-arm.policy b/net-misc/modemmanager-next/files/modemmanager-arm.policy
index 74323aa..d9af536 100644
--- a/net-misc/modemmanager-next/files/modemmanager-arm.policy
+++ b/net-misc/modemmanager-next/files/modemmanager-arm.policy
@@ -8,13 +8,17 @@
 write: 1
 poll: 1
 read: 1
+pread64: 1
 recv: 1
 futex: 1
+futex_time64: 1
 lstat64: 1
 stat64: 1
 statx: 1
 fstat64: 1
+fstatat64: 1
 fstatfs64: 1
+fstatfs: 1
 getrandom: 1
 readlink: 1
 readlinkat: 1
diff --git a/net-misc/modemmanager-next/files/modemmanager-arm64.policy b/net-misc/modemmanager-next/files/modemmanager-arm64.policy
index b61ec31..49a4a02 100644
--- a/net-misc/modemmanager-next/files/modemmanager-arm64.policy
+++ b/net-misc/modemmanager-next/files/modemmanager-arm64.policy
@@ -7,6 +7,7 @@
 write: 1
 ppoll: 1
 read: 1
+pread64: 1
 recvfrom: 1
 futex: 1
 newfstatat: 1
diff --git a/net-misc/modemmanager-next/modemmanager-next-1.17.0-r417.ebuild b/net-misc/modemmanager-next/modemmanager-next-1.17.0-r417.ebuild
deleted file mode 100644
index 4720da8..0000000
--- a/net-misc/modemmanager-next/modemmanager-next-1.17.0-r417.ebuild
+++ /dev/null
@@ -1,175 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# Based on gentoo's modemmanager ebuild
-
-EAPI=6
-CROS_WORKON_COMMIT="e7eac4f62ca0c8eebc9aaf7f909baf2dbf61e9f0"
-CROS_WORKON_TREE="cfa9bb35e4db8f971b84b1327cd2583d2ab1718e"
-CROS_WORKON_PROJECT="chromiumos/third_party/modemmanager-next"
-CROS_WORKON_EGIT_BRANCH="master"
-
-inherit eutils autotools cros-sanitizers cros-workon flag-o-matic systemd udev user
-
-# ModemManager likes itself with capital letters
-MY_P=${P/modemmanager/ModemManager}
-
-DESCRIPTION="Modem and mobile broadband management libraries"
-HOMEPAGE="http://mail.gnome.org/archives/networkmanager-list/2008-July/msg00274.html"
-#SRC_URI not defined because we get our source locally
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-IUSE="doc mbim systemd qmi qrtr"
-
-RDEPEND=">=dev-libs/glib-2.36
-	>=sys-apps/dbus-1.2
-	dev-libs/dbus-glib
-	net-dialup/ppp
-	mbim? ( net-libs/libmbim )
-	qmi? ( net-libs/libqmi )
-	qrtr? ( net-libs/libqrtr-glib )
-	!net-misc/modemmanager"
-
-DEPEND="${RDEPEND}
-	virtual/libgudev
-	dev-util/pkgconfig
-	dev-util/intltool
-	>=dev-util/gtk-doc-1.13
-	!net-misc/modemmanager-next-interfaces
-	!net-misc/modemmanager"
-
-DOCS="AUTHORS NEWS README"
-
-src_prepare() {
-	default
-
-	# According to "Introspection Data Format" of the DBus specification,
-	# revision 0.30 [1], "Only the root <node> element can omit the node
-	# name, as it's known to be the object that was introspected. If the
-	# root <node> does have a name attribute, it must be an absolute object
-	# path. If child <node> have object paths, they must be relative."
-	#
-	# The introspection XMLs of ModemManager object interfaces specify
-	# name="/" at their root <node>, which should be omitted instead as the
-	# object paths aren't fixed.
-	#
-	# CL:294115 [2] removed the name="/" attribute from those root <node>s
-	# in several ModemManager introspection XMLs in order to allow
-	# chromeos-dbus-bindings to properly generate the DBus proxies for
-	# ModemManager interfaces. Instead of modifying those introspection
-	# XMLs directly in the modemmanager-next git repository, we patch them
-	# (all org.freedesktop.ModemManager1.*.xml, but not
-	# org.freedesktop.ModemManager1.xml) here instead, which helps minimize
-	# the difference between the local modemmanager-next repository and the
-	# upstream repository.
-	#
-	# TODO(benchan): Discuss with upstream ModemManager maintainers to see
-	# if it makes sense to apply the changes to the upstream code instead.
-	#
-	# References:
-	# [1] https://dbus.freedesktop.org/doc/dbus-specification.html#introspection-format
-	# [2] http://crosreview.com/294115
-	find introspection -type f -name 'org.freedesktop.ModemManager1.*.xml' \
-		-exec sed -i 's/^<node name="\/"/<node/' {} +
-
-	gtkdocize
-	eautopoint
-	eautoreconf
-	intltoolize --force
-}
-
-src_configure() {
-	sanitizers-setup-env
-	append-flags -Xclang-only=-Wno-unneeded-internal-declaration
-	append-flags -DWITH_NEWEST_QMI_COMMANDS
-	# TODO(b/183029202): Remove this once we have support for IPv6 only network
-	append-flags -DSUPPORT_MBIM_IPV6_WITH_IPV4_ROAMING
-	econf \
-		--with-html-dir="\${datadir}/doc/${PF}/html" \
-		--enable-compile-warnings=yes \
-		"$(use_enable {,gtk-}doc)" \
-		"$(use_with mbim)" \
-		"$(use_enable qrtr plugin-qcom-soc)" \
-		"$(use_with qmi)"
-}
-
-src_test() {
-	# TODO(b/180536539): Run unit tests for non-x86 platforms via qemu.
-	if [[ "${ARCH}" == "x86" || "${ARCH}" == "amd64" ]] ; then
-		# This is an ugly hack that happens to work, but should not be copied.
-		PATH="${SYSROOT}/usr/bin:${PATH}" \
-		LD_LIBRARY_PATH="${SYSROOT}/usr/$(get_libdir):${SYSROOT}/$(get_libdir)" \
-		emake check
-	fi
-}
-
-src_install() {
-	default
-	# Remove useless .la files
-	find "${D}" -name '*.la' -delete
-
-	# Remove the DBus service file generated by Makefile. This file directs DBus
-	# to launch the ModemManager process when a DBus call for the ModemManager
-	# service is received. We do not want this behaviour.
-	find "${D}" -name 'org.freedesktop.ModemManager1.service' -delete
-
-	# Only install the following plugins for supported modems to conserve
-	# space on the root filesystem.
-	local plugins=(
-		altair-lte
-		generic
-		huawei
-		longcheer
-		novatel-lte
-		samsung
-		telit
-		zte
-	)
-	if use qrtr; then
-		plugins+=(qcom-soc)
-	fi
-
-	local plugins_regex=".*/libmm-plugin-($(IFS='|'; echo "${plugins[*]}")).so"
-
-	find "${D}" -regextype posix-extended \
-		-name 'libmm-plugin-*.so' \
-		! -regex "${plugins_regex}" \
-		-delete
-
-	local found_plugins="$(find "${D}" -regextype posix-extended \
-		-regex "${plugins_regex}" | wc -l)"
-	[[ "${found_plugins}" == "${#plugins[@]}" ]] || \
-		die "Expects ${#plugins[@]} plugins, but ${found_plugins} found."
-
-	# Seccomp policy file.
-	insinto /usr/share/policy
-	newins "${FILESDIR}/modemmanager-${ARCH}.policy" modemmanager.policy
-
-	# Install init scripts.
-	if use systemd; then
-		systemd_dounit "${FILESDIR}/modemmanager.service"
-		systemd_enable_service system-services.target modemmanager.service
-	else
-		insinto /etc/init
-		doins "${FILESDIR}/modemmanager.conf"
-	fi
-
-	# Override the ModemManager DBus configuration file to constrain how
-	# ModemManager exposes its DBus service on Chrome OS.
-	insinto /etc/dbus-1/system.d
-	doins "${FILESDIR}/org.freedesktop.ModemManager1.conf"
-
-	# Install Chrome OS specific udev rules.
-	udev_dorules "${FILESDIR}/52-mm-modem-permissions.rules"
-	udev_dorules "${FILESDIR}/77-mm-fibocom-port-types.rules"
-	udev_dorules "${FILESDIR}/77-mm-huawei-configuration.rules"
-	exeinto "$(get_udevdir)"
-	doexe "${FILESDIR}/mm-huawei-configuration-switch.sh"
-}
-
-pkg_preinst() {
-	# ModemManager is run under the 'modem' user and group on Chrome OS.
-	enewuser "modem"
-	enewgroup "modem"
-}
diff --git a/net-misc/modemmanager-next/modemmanager-next-1.17.0-r430.ebuild b/net-misc/modemmanager-next/modemmanager-next-1.17.0-r430.ebuild
new file mode 100644
index 0000000..b4ee8f5
--- /dev/null
+++ b/net-misc/modemmanager-next/modemmanager-next-1.17.0-r430.ebuild
@@ -0,0 +1,176 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# Based on gentoo's modemmanager ebuild
+
+EAPI=6
+CROS_WORKON_COMMIT="b45ba3b2c7a9e6a56cdbbd9824cc525b93a4537b"
+CROS_WORKON_TREE="cecdbe635d8e52398ee304ef74d9194fdc0328bc"
+CROS_WORKON_PROJECT="chromiumos/third_party/modemmanager-next"
+CROS_WORKON_EGIT_BRANCH="master"
+
+inherit eutils autotools cros-sanitizers cros-workon flag-o-matic systemd udev user
+
+# ModemManager likes itself with capital letters
+MY_P=${P/modemmanager/ModemManager}
+
+DESCRIPTION="Modem and mobile broadband management libraries"
+HOMEPAGE="http://mail.gnome.org/archives/networkmanager-list/2008-July/msg00274.html"
+#SRC_URI not defined because we get our source locally
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+IUSE="doc mbim systemd qmi qrtr"
+
+RDEPEND=">=dev-libs/glib-2.36
+	>=sys-apps/dbus-1.2
+	dev-libs/dbus-glib
+	net-dialup/ppp
+	mbim? ( net-libs/libmbim )
+	qmi? ( net-libs/libqmi )
+	qrtr? ( net-libs/libqrtr-glib )
+	!net-misc/modemmanager"
+
+DEPEND="${RDEPEND}
+	virtual/libgudev
+	dev-util/pkgconfig
+	dev-util/intltool
+	>=dev-util/gtk-doc-1.13
+	!net-misc/modemmanager-next-interfaces
+	!net-misc/modemmanager"
+
+DOCS="AUTHORS NEWS README"
+
+src_prepare() {
+	default
+
+	# According to "Introspection Data Format" of the DBus specification,
+	# revision 0.30 [1], "Only the root <node> element can omit the node
+	# name, as it's known to be the object that was introspected. If the
+	# root <node> does have a name attribute, it must be an absolute object
+	# path. If child <node> have object paths, they must be relative."
+	#
+	# The introspection XMLs of ModemManager object interfaces specify
+	# name="/" at their root <node>, which should be omitted instead as the
+	# object paths aren't fixed.
+	#
+	# CL:294115 [2] removed the name="/" attribute from those root <node>s
+	# in several ModemManager introspection XMLs in order to allow
+	# chromeos-dbus-bindings to properly generate the DBus proxies for
+	# ModemManager interfaces. Instead of modifying those introspection
+	# XMLs directly in the modemmanager-next git repository, we patch them
+	# (all org.freedesktop.ModemManager1.*.xml, but not
+	# org.freedesktop.ModemManager1.xml) here instead, which helps minimize
+	# the difference between the local modemmanager-next repository and the
+	# upstream repository.
+	#
+	# TODO(benchan): Discuss with upstream ModemManager maintainers to see
+	# if it makes sense to apply the changes to the upstream code instead.
+	#
+	# References:
+	# [1] https://dbus.freedesktop.org/doc/dbus-specification.html#introspection-format
+	# [2] http://crosreview.com/294115
+	find introspection -type f -name 'org.freedesktop.ModemManager1.*.xml' \
+		-exec sed -i 's/^<node name="\/"/<node/' {} +
+
+	gtkdocize
+	eautopoint
+	eautoreconf
+	intltoolize --force
+}
+
+src_configure() {
+	sanitizers-setup-env
+	append-flags -Xclang-only=-Wno-unneeded-internal-declaration
+	append-flags -DWITH_NEWEST_QMI_COMMANDS
+	# TODO(b/183029202): Remove this once we have support for IPv6 only network
+	append-flags -DSUPPORT_MBIM_IPV6_WITH_IPV4_ROAMING
+	econf \
+		--with-html-dir="\${datadir}/doc/${PF}/html" \
+		--enable-compile-warnings=yes \
+		--enable-introspection=no \
+		"$(use_enable {,gtk-}doc)" \
+		"$(use_with mbim)" \
+		"$(use_enable qrtr plugin-qcom-soc)" \
+		"$(use_with qmi)"
+}
+
+src_test() {
+	# TODO(b/180536539): Run unit tests for non-x86 platforms via qemu.
+	if [[ "${ARCH}" == "x86" || "${ARCH}" == "amd64" ]] ; then
+		# This is an ugly hack that happens to work, but should not be copied.
+		PATH="${SYSROOT}/usr/bin:${PATH}" \
+		LD_LIBRARY_PATH="${SYSROOT}/usr/$(get_libdir):${SYSROOT}/$(get_libdir)" \
+		emake check
+	fi
+}
+
+src_install() {
+	default
+	# Remove useless .la files
+	find "${D}" -name '*.la' -delete
+
+	# Remove the DBus service file generated by Makefile. This file directs DBus
+	# to launch the ModemManager process when a DBus call for the ModemManager
+	# service is received. We do not want this behaviour.
+	find "${D}" -name 'org.freedesktop.ModemManager1.service' -delete
+
+	# Only install the following plugins for supported modems to conserve
+	# space on the root filesystem.
+	local plugins=(
+		altair-lte
+		generic
+		huawei
+		longcheer
+		novatel-lte
+		samsung
+		telit
+		zte
+	)
+	if use qrtr; then
+		plugins+=(qcom-soc)
+	fi
+
+	local plugins_regex=".*/libmm-plugin-($(IFS='|'; echo "${plugins[*]}")).so"
+
+	find "${D}" -regextype posix-extended \
+		-name 'libmm-plugin-*.so' \
+		! -regex "${plugins_regex}" \
+		-delete
+
+	local found_plugins="$(find "${D}" -regextype posix-extended \
+		-regex "${plugins_regex}" | wc -l)"
+	[[ "${found_plugins}" == "${#plugins[@]}" ]] || \
+		die "Expects ${#plugins[@]} plugins, but ${found_plugins} found."
+
+	# Seccomp policy file.
+	insinto /usr/share/policy
+	newins "${FILESDIR}/modemmanager-${ARCH}.policy" modemmanager.policy
+
+	# Install init scripts.
+	if use systemd; then
+		systemd_dounit "${FILESDIR}/modemmanager.service"
+		systemd_enable_service system-services.target modemmanager.service
+	else
+		insinto /etc/init
+		doins "${FILESDIR}/modemmanager.conf"
+	fi
+
+	# Override the ModemManager DBus configuration file to constrain how
+	# ModemManager exposes its DBus service on Chrome OS.
+	insinto /etc/dbus-1/system.d
+	doins "${FILESDIR}/org.freedesktop.ModemManager1.conf"
+
+	# Install Chrome OS specific udev rules.
+	udev_dorules "${FILESDIR}/52-mm-modem-permissions.rules"
+	udev_dorules "${FILESDIR}/77-mm-fibocom-port-types.rules"
+	udev_dorules "${FILESDIR}/77-mm-huawei-configuration.rules"
+	exeinto "$(get_udevdir)"
+	doexe "${FILESDIR}/mm-huawei-configuration-switch.sh"
+}
+
+pkg_preinst() {
+	# ModemManager is run under the 'modem' user and group on Chrome OS.
+	enewuser "modem"
+	enewgroup "modem"
+}
diff --git a/net-misc/modemmanager-next/modemmanager-next-9999.ebuild b/net-misc/modemmanager-next/modemmanager-next-9999.ebuild
index 5bd3a44..59d0add 100644
--- a/net-misc/modemmanager-next/modemmanager-next-9999.ebuild
+++ b/net-misc/modemmanager-next/modemmanager-next-9999.ebuild
@@ -86,6 +86,7 @@
 	econf \
 		--with-html-dir="\${datadir}/doc/${PF}/html" \
 		--enable-compile-warnings=yes \
+		--enable-introspection=no \
 		"$(use_enable {,gtk-}doc)" \
 		"$(use_with mbim)" \
 		"$(use_enable qrtr plugin-qcom-soc)" \
diff --git a/net-misc/rmtfs/files/patches/0001-Use-fdatasync-instead-of-O_SYNC-on-storage.patch b/net-misc/rmtfs/files/patches/0001-Use-fdatasync-instead-of-O_SYNC-on-storage.patch
new file mode 100644
index 0000000..49a5b89
--- /dev/null
+++ b/net-misc/rmtfs/files/patches/0001-Use-fdatasync-instead-of-O_SYNC-on-storage.patch
@@ -0,0 +1,84 @@
+From a5d253123fb404116d4c6f6e028aabbce6264e22 Mon Sep 17 00:00:00 2001
+From: Evan Green <evgreen@chromium.org>
+Date: Thu, 8 Jul 2021 15:01:45 -0700
+Subject: [PATCH] Use fdatasync instead of O_SYNC on storage
+
+Opening the backing files with O_SYNC makes things really slow. So slow
+in fact that the modem times out after 10 seconds waiting for the last
+EFS sync to go through. I think this takes forever because rmtfs is
+doing 512-byte reads and writes.
+
+One option would be to make this bigger. But a better option is to not
+use O_SYNC, but explicitly do an fdatasync() after the iovec operation
+is complete. This is better because 1) it's way faster, we no longer see
+10-12 second delays at rebooto time, and 2) partial syncs of the EFS
+file aren't useful anyway.
+
+Use fdatasync() as opposed to fsync() since it's not important for the
+metadata to be synced, just the file contents.
+
+Signed-off-by: Evan Green <evangreen86@gmail.com>
+---
+ rmtfs.c   |  4 ++++
+ rmtfs.h   |  1 +
+ storage.c | 10 +++++++++-
+ 3 files changed, 14 insertions(+), 1 deletion(-)
+
+diff --git a/rmtfs.c b/rmtfs.c
+index 25862d1..ffca070 100644
+--- a/rmtfs.c
++++ b/rmtfs.c
+@@ -220,6 +220,10 @@ static void rmtfs_iovec(int sock, struct qrtr_packet *pkt)
+ respond:
+ 	dbgprintf("[RMTFS] iovec %d, %sforced => (%d:%d)\n", caller_id, force ? "" : "not ",
+ 							     resp.result.result, resp.result.error);
++
++	if (is_write)
++		storage_sync(rmtfd);
++
+ 	for (i = 0; i < num_entries; i++) {
+ 		dbgprintf("[RMTFS]       %s %d:%d 0x%x\n", is_write ? "write" : "read",
+ 							   entries[i].sector_addr,
+diff --git a/rmtfs.h b/rmtfs.h
+index 242baa5..fa4b806 100644
+--- a/rmtfs.h
++++ b/rmtfs.h
+@@ -34,6 +34,7 @@ int storage_get_error(const struct rmtfd *rmtfd);
+ void storage_exit(void);
+ ssize_t storage_pread(const struct rmtfd *rmtfd, void *buf, size_t nbyte, off_t offset);
+ ssize_t storage_pwrite(struct rmtfd *rmtfd, const void *buf, size_t nbyte, off_t offset);
++int storage_sync(struct rmtfd *rmtfd);
+ 
+ int rproc_init(void);
+ int rproc_start(void);
+diff --git a/storage.c b/storage.c
+index 0f882eb..aaf73d0 100644
+--- a/storage.c
++++ b/storage.c
+@@ -122,7 +122,7 @@ found:
+ 	fspath = alloca(pathlen);
+ 	snprintf(fspath, pathlen, "%s/%s", storage_dir, file);
+ 	if (!storage_read_only) {
+-		fd = open(fspath, O_RDWR | O_SYNC);
++		fd = open(fspath, O_RDWR);
+ 		if (fd < 0) {
+ 			saved_errno = errno;
+ 			fprintf(stderr, "[storage] failed to open '%s' (requested '%s'): %s\n",
+@@ -245,6 +245,14 @@ ssize_t storage_pwrite(struct rmtfd *rmtfd, const void *buf, size_t nbyte, off_t
+ 	return nbyte;
+ }
+ 
++int storage_sync(struct rmtfd *rmtfd)
++{
++	if (storage_read_only)
++		return 0;
++	
++	return fdatasync(rmtfd->fd);
++}
++
+ static int storage_populate_shadow_buf(struct rmtfd *rmtfd, const char *file)
+ {
+ 	ssize_t len;
+-- 
+2.31.0
+
diff --git a/net-misc/rmtfs/files/rmtfs-seccomp-arm.policy b/net-misc/rmtfs/files/rmtfs-seccomp-arm.policy
index c7ddd20..7eac327 100644
--- a/net-misc/rmtfs/files/rmtfs-seccomp-arm.policy
+++ b/net-misc/rmtfs/files/rmtfs-seccomp-arm.policy
@@ -9,8 +9,12 @@
 close: 1
 exit: 1
 exit_group: 1
+faccessat: 1
+faccessat2: 1
 fcntl64: 1
+fdatasync: 1
 fstat64: 1
+fstatat64: 1
 getdents: 1
 getdents64: 1
 getpid: 1
@@ -27,6 +31,8 @@
 mprotect: arg2 in 0xfffffffb
 munmap: 1
 _newselect: 1
+pselect6: 1
+pselect6_time64: 1
 openat: 1
 pipe: 1
 poll: 1
@@ -45,6 +51,7 @@
 sigreturn: 1
 # Allow AF_UNIX or AF_QIPCRTR
 socket: arg0 == AF_UNIX || arg0 == AF_QIPCRTR
+statx: 1
 ugetrlimit: 1
 uname: 1
 write: 1
diff --git a/net-misc/rmtfs/files/rmtfs-seccomp-arm64.policy b/net-misc/rmtfs/files/rmtfs-seccomp-arm64.policy
index 828c622..06a8f9b 100644
--- a/net-misc/rmtfs/files/rmtfs-seccomp-arm64.policy
+++ b/net-misc/rmtfs/files/rmtfs-seccomp-arm64.policy
@@ -3,6 +3,7 @@
 # found in the LICENSE file.
 
 faccessat: 1
+faccessat2: 1
 bind: 1
 brk: 1
 clone: 1
@@ -10,6 +11,7 @@
 exit: 1
 exit_group: 1
 fcntl: 1
+fdatasync: 1
 fstat: 1
 newfstatat: 1
 getdents64: 1
diff --git a/net-misc/rmtfs/rmtfs-0.3_p20210408-r2.ebuild b/net-misc/rmtfs/rmtfs-0.3_p20210408-r3.ebuild
similarity index 100%
rename from net-misc/rmtfs/rmtfs-0.3_p20210408-r2.ebuild
rename to net-misc/rmtfs/rmtfs-0.3_p20210408-r3.ebuild
diff --git a/net-misc/rmtfs/rmtfs-0.3_p20210408.ebuild b/net-misc/rmtfs/rmtfs-0.3_p20210408.ebuild
index aec5a62..fc5d5fe 100644
--- a/net-misc/rmtfs/rmtfs-0.3_p20210408.ebuild
+++ b/net-misc/rmtfs/rmtfs-0.3_p20210408.ebuild
@@ -24,6 +24,10 @@
 
 S="${WORKDIR}/${PN}-${GIT_SHA1}"
 
+PATCHES=(
+	"${FILESDIR}/patches/0001-Use-fdatasync-instead-of-O_SYNC-on-storage.patch"
+)
+
 src_configure() {
 	sanitizers-setup-env
 }
diff --git a/net-misc/tlsdate/tlsdate-0.0.5-r100.ebuild b/net-misc/tlsdate/tlsdate-0.0.5-r100.ebuild
new file mode 100644
index 0000000..11fa1bc
--- /dev/null
+++ b/net-misc/tlsdate/tlsdate-0.0.5-r100.ebuild
@@ -0,0 +1,88 @@
+# Copyright 2012 The Chromium OS Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+CROS_WORKON_COMMIT="f6185658498aa903ff47c9eb46e7ccd7f95c74da"
+CROS_WORKON_TREE="aadb9cf0c326d4d0b1e9fd4d12b0192cdba2d8f8"
+CROS_WORKON_PROJECT="chromiumos/third_party/tlsdate"
+CROS_WORKON_EGIT_BRANCH=master
+
+inherit autotools flag-o-matic toolchain-funcs cros-sanitizers cros-workon cros-debug systemd user
+
+DESCRIPTION="Update local time over HTTPS"
+HOMEPAGE="https://github.com/ioerror/tlsdate"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="*"
+IUSE="-asan +dbus +seccomp systemd"
+
+DEPEND="dev-libs/openssl:0=
+	dev-libs/libevent
+	dbus? ( sys-apps/dbus )"
+RDEPEND="${DEPEND}
+	chromeos-base/chromeos-ca-certificates
+"
+
+src_prepare() {
+	# Use the system cert store rather than a custom one specific
+	# to the tlsdate package. #534394
+	sed -i \
+		-e 's:/tlsdate/ca-roots/tlsdate-ca-roots.conf:/ssl/certs/ca-certificates.crt:' \
+		Makefile.am || die
+
+	default
+
+	eautoreconf
+}
+
+src_configure() {
+	sanitizers-setup-env
+	cros-debug-add-NDEBUG
+	econf \
+		$(use_enable dbus) \
+		$(use_enable seccomp seccomp-filter) \
+		$(use_enable cros-debug seccomp-debugging) \
+		--enable-cros \
+		--with-dbus-client-group=chronos \
+		--with-unpriv-user=tlsdate \
+		--with-unpriv-group=tlsdate
+}
+
+src_compile() {
+	tc-export CC
+	emake CFLAGS="-Wall -Werror ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}"
+}
+
+src_install() {
+	default
+
+	# Use the system cert store; see src_prepare. #446426 #534394
+	rm "${ED}"/etc/tlsdate/ca-roots/tlsdate-ca-roots.conf || die
+	rmdir "${ED}"/etc/tlsdate/ca-roots || die
+
+	insinto /etc/tlsdate
+	doins "${FILESDIR}/tlsdated.conf"
+	insinto /etc/dbus-1/system.d
+	doins "${S}/dbus/org.torproject.tlsdate.conf"
+	insinto /usr/share/dbus-1/interfaces
+	doins "${S}/dbus/org.torproject.tlsdate.xml"
+	insinto /usr/share/dbus-1/services
+	doins "${S}/dbus/org.torproject.tlsdate.service"
+
+	if use systemd; then
+		systemd_dounit init/tlsdated.service
+		systemd_enable_service system-services.target tlsdated.service
+		systemd_dotmpfilesd init/tlsdated-directories.conf
+	else
+		insinto /etc/init
+		doins init/tlsdated.conf
+	fi
+}
+
+pkg_preinst() {
+	enewuser "tlsdate"
+	enewgroup "tlsdate"
+	enewuser "tlsdate-dbus"   # For tlsdate-dbus-announce.
+	enewgroup "tlsdate-dbus"  # For tlsdate-dbus-announce.
+}
diff --git a/net-misc/tlsdate/tlsdate-0.0.5-r95.ebuild b/net-misc/tlsdate/tlsdate-0.0.5-r95.ebuild
deleted file mode 100644
index 16e2189..0000000
--- a/net-misc/tlsdate/tlsdate-0.0.5-r95.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 2012 The Chromium OS Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-CROS_WORKON_COMMIT="8b0e7603cb5fd7924c9e99b7d26ad8b716fbada7"
-CROS_WORKON_TREE="ac75e4e94cf1c6c37833513159b83d64b3de9104"
-CROS_WORKON_PROJECT="chromiumos/third_party/tlsdate"
-
-inherit autotools flag-o-matic toolchain-funcs cros-sanitizers cros-workon cros-debug systemd user
-
-DESCRIPTION="Update local time over HTTPS"
-HOMEPAGE="https://github.com/ioerror/tlsdate"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="*"
-IUSE="-asan +dbus +seccomp systemd"
-
-DEPEND="dev-libs/openssl:0=
-	dev-libs/libevent
-	dbus? ( sys-apps/dbus )"
-RDEPEND="${DEPEND}
-	chromeos-base/chromeos-ca-certificates
-"
-
-src_prepare() {
-	# Use the system cert store rather than a custom one specific
-	# to the tlsdate package. #534394
-	sed -i \
-		-e 's:/tlsdate/ca-roots/tlsdate-ca-roots.conf:/ssl/certs/ca-certificates.crt:' \
-		Makefile.am || die
-
-	default
-
-	eautoreconf
-}
-
-src_configure() {
-	sanitizers-setup-env
-	cros-debug-add-NDEBUG
-	econf \
-		$(use_enable dbus) \
-		$(use_enable seccomp seccomp-filter) \
-		$(use_enable cros-debug seccomp-debugging) \
-		--enable-cros \
-		--with-dbus-client-group=chronos \
-		--with-unpriv-user=tlsdate \
-		--with-unpriv-group=tlsdate
-}
-
-src_compile() {
-	tc-export CC
-	emake CFLAGS="-Wall -Werror ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}"
-}
-
-src_install() {
-	default
-
-	# Use the system cert store; see src_prepare. #446426 #534394
-	rm "${ED}"/etc/tlsdate/ca-roots/tlsdate-ca-roots.conf || die
-	rmdir "${ED}"/etc/tlsdate/ca-roots || die
-
-	insinto /etc/tlsdate
-	doins "${FILESDIR}/tlsdated.conf"
-	insinto /etc/dbus-1/system.d
-	doins "${S}/dbus/org.torproject.tlsdate.conf"
-	insinto /usr/share/dbus-1/interfaces
-	doins "${S}/dbus/org.torproject.tlsdate.xml"
-	insinto /usr/share/dbus-1/services
-	doins "${S}/dbus/org.torproject.tlsdate.service"
-
-	if use systemd; then
-		systemd_dounit init/tlsdated.service
-		systemd_enable_service system-services.target tlsdated.service
-		systemd_dotmpfilesd init/tlsdated-directories.conf
-	else
-		insinto /etc/init
-		doins init/tlsdated.conf
-	fi
-}
-
-pkg_preinst() {
-	enewuser "tlsdate"
-	enewgroup "tlsdate"
-	enewuser "tlsdate-dbus"   # For tlsdate-dbus-announce.
-	enewgroup "tlsdate-dbus"  # For tlsdate-dbus-announce.
-}
diff --git a/net-misc/tlsdate/tlsdate-9999.ebuild b/net-misc/tlsdate/tlsdate-9999.ebuild
index 78188fe..dd97ac9 100644
--- a/net-misc/tlsdate/tlsdate-9999.ebuild
+++ b/net-misc/tlsdate/tlsdate-9999.ebuild
@@ -3,6 +3,7 @@
 
 EAPI="6"
 CROS_WORKON_PROJECT="chromiumos/third_party/tlsdate"
+CROS_WORKON_EGIT_BRANCH=master
 
 inherit autotools flag-o-matic toolchain-funcs cros-sanitizers cros-workon cros-debug systemd user
 
diff --git a/net-nds/rpcbind/files/rpcbind.conf b/net-nds/rpcbind/files/rpcbind.conf
index a5b9166..b9981a2 100644
--- a/net-nds/rpcbind/files/rpcbind.conf
+++ b/net-nds/rpcbind/files/rpcbind.conf
@@ -20,7 +20,7 @@
 end script
 
 # Allow CAP_NET_BIND_SERVICE(10)
-exec minijail0 -nplrvt -L \
+exec minijail0 -nplNrvt -L \
 	-S /usr/share/policy/rpcbind-seccomp.policy \
 	--uts \
 	-c 0x400 \
diff --git a/net-nds/rpcbind/files/seccomp-arm.policy b/net-nds/rpcbind/files/seccomp-arm.policy
index 779c38b..af74bec 100644
--- a/net-nds/rpcbind/files/seccomp-arm.policy
+++ b/net-nds/rpcbind/files/seccomp-arm.policy
@@ -12,6 +12,7 @@
 exit_group: 1
 flock: 1
 fstat64: 1
+fstatat64: 1
 getpeername: 1
 getpid: 1
 getsockname: 1
@@ -42,6 +43,7 @@
 set_tid_address: 1
 socket: arg0 == AF_INET6 || arg0 == AF_UNIX || arg0 == AF_INET || arg0 == AF_NETLINK
 stat64: 1
+statx: 1
 ugetrlimit: 1
 umask: 1
 uname: 1
diff --git a/net-nds/rpcbind/rpcbind-0.2.4-r7.ebuild b/net-nds/rpcbind/rpcbind-0.2.4-r9.ebuild
similarity index 100%
rename from net-nds/rpcbind/rpcbind-0.2.4-r7.ebuild
rename to net-nds/rpcbind/rpcbind-0.2.4-r9.ebuild
diff --git a/net-print/cups-filters/cups-filters-1.28.7-r1.ebuild b/net-print/cups-filters/cups-filters-1.28.7-r4.ebuild
similarity index 100%
rename from net-print/cups-filters/cups-filters-1.28.7-r1.ebuild
rename to net-print/cups-filters/cups-filters-1.28.7-r4.ebuild
diff --git a/net-print/cups-filters/files/cups-filters-1.28.5-pwg-raster-total-page-count.patch b/net-print/cups-filters/files/cups-filters-1.28.5-pwg-raster-total-page-count.patch
deleted file mode 100644
index 6feb57f..0000000
--- a/net-print/cups-filters/files/cups-filters-1.28.5-pwg-raster-total-page-count.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-This patch modifies `gstoraster` to include the TotalPageCount field in
-generated PWG-Raster content:
-https://issuetracker.google.com/issues/172225466
-
---- a/filter/gstoraster.c
-+++ b/filter/gstoraster.c
-@@ -713,8 +713,13 @@ main (int argc, char **argv, char *envp[])
-     goto out;
-   }
- 
-+  /*
-+   * Count pages.
-+   * Later passed to GhostScript as cupsInteger[0].
-+   */
-+  int pages = 0;
-   if (doc_type == GS_DOC_TYPE_PDF) {  
--    int pages = pdf_pages(filename);
-+    pages = pdf_pages(filename);
- 
-     if (pages == 0) {
-       fprintf(stderr, "DEBUG: No pages left, outputting empty file.\n");
-@@ -879,6 +884,13 @@ main (int argc, char **argv, char *envp[])
- #endif /* HAVE_CUPS_1_7 */
-   }
- 
-+  /*
-+   * cupsRasterParseIPPOptions() would populate the TotalPageCount field
-+   * (h.cupsInteger[0]) if CUPS passed "job-impressions" to this filter.
-+   * CUPS does not do so, so we set it manually here.
-+   */
-+  h.cupsInteger[0] = pages;
-+
-   if ((h.HWResolution[0] == 100) && (h.HWResolution[1] == 100)) {
-     /* No "Resolution" option */
-     if (ppd && (attr = ppdFindAttr(ppd, "DefaultResolution", 0)) != NULL) {
diff --git a/net-print/cups-filters/files/cups-filters-1.28.9-gstoraster-job-impressions.patch b/net-print/cups-filters/files/cups-filters-1.28.9-gstoraster-job-impressions.patch
new file mode 100644
index 0000000..dc0b19c
--- /dev/null
+++ b/net-print/cups-filters/files/cups-filters-1.28.9-gstoraster-job-impressions.patch
@@ -0,0 +1,46 @@
+From ec89219791b806a26b68044cbc0a5f48037f6bce Mon Sep 17 00:00:00 2001
+From: Sean Kau <skau@chromium.org>
+Date: Thu, 8 Jul 2021 16:00:28 -0700
+Subject: [PATCH] Set the counted pages for PDFs as job-impressions
+
+---
+ filter/gstoraster.c | 17 +++++++++++------
+ 1 file changed, 11 insertions(+), 6 deletions(-)
+
+diff --git a/filter/gstoraster.c b/filter/gstoraster.c
+index c26e04e6a..2a3a5a286 100644
+--- a/filter/gstoraster.c
++++ b/filter/gstoraster.c
+@@ -713,21 +713,25 @@ main (int argc, char **argv, char *envp[])
+     goto out;
+   }
+ 
+-  if (doc_type == GS_DOC_TYPE_PDF) {  
+-    int pages = pdf_pages(filename);
+-
+-    if (pages == 0) {
++  if (doc_type == GS_DOC_TYPE_PDF) {
++    // Determine how many pages we have and if we have something valid to print.
++    int pagecount = pdf_pages(filename);
++    if (pagecount == 0) {
+       fprintf(stderr, "DEBUG: No pages left, outputting empty file.\n");
+       status = 0;
+       if (outformat == OUTPUT_FORMAT_RASTER)
+         fprintf(stdout, "RaS2");
+       goto out;
+     }
+-    if (pages < 0) {
++    if (pagecount < 0) {
+       fprintf(stderr, "DEBUG: Unexpected page count\n");
+       goto out;
+     }
++
++    // Set job-impressions for later embedding as TotalPageCount.
++    num_options = cupsAddIntegerOption("job-impressions", pagecount, num_options, &options);
+   }
++
+   if (argc == 6) {
+     /* input from stdin */
+     /* remove name of temp file*/
+2.32.0.93.g670b81a890-goog
+
diff --git a/net-print/cups-filters/files/cups-filters-1.29.0-remove-font-handling.patch b/net-print/cups-filters/files/cups-filters-1.29.0-remove-font-handling.patch
new file mode 100644
index 0000000..c3de98f
--- /dev/null
+++ b/net-print/cups-filters/files/cups-filters-1.29.0-remove-font-handling.patch
@@ -0,0 +1,29 @@
+From 4b76f99de79f23bf514215d7185afe74acc4af65 Mon Sep 17 00:00:00 2001
+From: Sean Kau <skau@chromium.org>
+Date: Thu, 5 Aug 2021 14:53:44 -0700
+Subject: [PATCH] Remove font handling
+
+---
+ filter/gstoraster.c | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/filter/gstoraster.c b/filter/gstoraster.c
+index 2a3a5a286..27c361894 100644
+--- a/filter/gstoraster.c
++++ b/filter/gstoraster.c
+@@ -918,12 +918,6 @@ main (int argc, char **argv, char *envp[])
+   /* get all the data from the header and pass it to ghostscript */
+   add_pdf_header_options (&h, gs_args, outformat, pxlcolor);
+ 
+-  /* CUPS font path */
+-  if ((t = getenv("CUPS_FONTPATH")) == NULL)
+-    t = CUPS_FONTPATH;
+-  snprintf(tmpstr, sizeof(tmpstr), "-I%s", t);
+-  cupsArrayAdd(gs_args, strdup(tmpstr));
+-
+   /* set the device output ICC profile */
+   if(icc_profile != NULL && icc_profile[0] != '\0') {
+     snprintf(tmpstr, sizeof(tmpstr), "-sOutputICCProfile=%s", icc_profile);
+-- 
+2.32.0.605.g8dce9f2422-goog
+
diff --git a/net-print/cups/cups-2.3.3-r196.ebuild b/net-print/cups/cups-2.3.3-r196.ebuild
deleted file mode 100644
index b35566d..0000000
--- a/net-print/cups/cups-2.3.3-r196.ebuild
+++ /dev/null
@@ -1,391 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-CROS_WORKON_COMMIT="f734115e4d1aeb8093a33a34c875170a027330e8"
-CROS_WORKON_TREE="9fe07ac7bed15d529469e9ae9619cf4b25aa3772"
-CROS_WORKON_PROJECT="chromiumos/third_party/cups"
-CROS_WORKON_EGIT_BRANCH="chromeos"
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit cros-debug cros-workon libchrome-version autotools fdo-mime gnome2-utils flag-o-matic linux-info multilib multilib-minimal pam python-single-r1 user versionator java-pkg-opt-2 systemd toolchain-funcs cros-fuzzer cros-sanitizers
-
-MY_P=${P/_rc/rc}
-MY_P=${MY_P/_beta/b}
-MY_PV=${PV/_rc/rc}
-MY_PV=${MY_PV/_beta/b}
-
-KEYWORDS="*"
-
-DESCRIPTION="The Common Unix Printing System"
-HOMEPAGE="http://www.cups.org/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE="acl dbus debug java kerberos pam
-	python +seccomp selinux +ssl static-libs systemd test +threads upstart usb X xinetd zeroconf
-	asan fuzzer"
-
-LANGS="ca cs de es fr it ja ru"
-for X in ${LANGS} ; do
-	IUSE="${IUSE} +linguas_${X}"
-done
-
-CDEPEND="
-	app-text/libpaper
-	acl? (
-		kernel_linux? (
-			sys-apps/acl
-			sys-apps/attr
-		)
-	)
-	dbus? ( >=sys-apps/dbus-1.6.18-r1[${MULTILIB_USEDEP}] )
-	java? ( >=virtual/jre-1.6:* )
-	kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
-	!net-print/lprng
-	pam? ( virtual/pam )
-	python? ( ${PYTHON_DEPS} )
-	ssl? (
-		>=dev-libs/libgcrypt-1.5.3:0[${MULTILIB_USEDEP}]
-		>=net-libs/gnutls-2.12.23-r6[${MULTILIB_USEDEP}]
-	)
-	systemd? ( sys-apps/systemd )
-	usb? ( virtual/libusb:1 )
-	X? ( x11-misc/xdg-utils )
-	xinetd? ( sys-apps/xinetd )
-	zeroconf? ( >=net-dns/avahi-0.6.31-r2[${MULTILIB_USEDEP}] )
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20140508
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-	)
-"
-
-DEPEND="${CDEPEND}
-	>=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
-	test? (
-		dev-cpp/gtest
-		>=chromeos-base/libchrome-0.0.1-r31:0=[cros-debug=]
-		>=chromeos-base/libbrillo-0.0.1-r1651:=
-	)
-"
-
-RDEPEND="${CDEPEND}
-	selinux? ( sec-policy/selinux-cups )
-"
-
-REQUIRED_USE="
-	python? ( ${PYTHON_REQUIRED_USE} )
-	usb? ( threads )
-	?? ( systemd upstart )
-"
-
-S="${WORKDIR}/${PN}-release-${MY_PV}"
-
-MULTILIB_CHOST_TOOLS=(
-	/usr/bin/cups-config
-)
-
-pkg_setup() {
-	enewgroup lp
-	enewuser lp -1 -1 -1 "lp,ippusb"
-	enewgroup lpadmin
-	enewuser lpadmin -1 -1 -1 "lpadmin,ippusb"
-	enewgroup cups
-	enewuser cups -1 -1 -1 cups
-
-	use python && python-single-r1_pkg_setup
-
-	if use kernel_linux; then
-		linux-info_pkg_setup
-		if  ! linux_config_exists; then
-			ewarn "Can't check the linux kernel configuration."
-			ewarn "You might have some incompatible options enabled."
-		else
-			# recheck that we don't have usblp to collide with libusb
-			if use usb; then
-				if linux_chkconfig_present USB_PRINTER; then
-					eerror "Your usb printers will be managed via libusb. In this case, "
-					eerror "${P} requires the USB_PRINTER support disabled."
-					eerror "Please disable it:"
-					eerror "    CONFIG_USB_PRINTER=n"
-					eerror "in /usr/src/linux/.config or"
-					eerror "    Device Drivers --->"
-					eerror "        USB support  --->"
-					eerror "            [ ] USB Printer support"
-					eerror "Alternatively, just disable the usb useflag for cups (your printer will still work)."
-				fi
-			else
-				#here we should warn user that he should enable it so he can print
-				if ! linux_chkconfig_present USB_PRINTER; then
-					ewarn "If you plan to use USB printers you should enable the USB_PRINTER"
-					ewarn "support in your kernel."
-					ewarn "Please enable it:"
-					ewarn "    CONFIG_USB_PRINTER=y"
-					ewarn "in /usr/src/linux/.config or"
-					ewarn "    Device Drivers --->"
-					ewarn "        USB support  --->"
-					ewarn "            [*] USB Printer support"
-					ewarn "Alternatively, enable the usb useflag for cups and use the libusb code."
-				fi
-			fi
-		fi
-	fi
-}
-
-src_prepare() {
-	epatch_user
-
-	# Remove ".SILENT" rule for verbose output (bug 524338).
-	sed 's#^.SILENT:##g' -i "${S}"/Makedefs.in || die "sed failed"
-
-	# Fix install-sh, posix sh does not have 'function'.
-	sed 's#function gzipcp#gzipcp()#g' -i "${S}/install-sh"
-
-	AT_M4DIR=config-scripts eaclocal
-	eautoconf
-
-	# custom Makefiles
-	multilib_copy_sources
-}
-
-multilib_src_configure() {
-	sanitizers-setup-env
-
-	export DSOFLAGS="${LDFLAGS}"
-
-	einfo LANGS=\"${LANGS}\"
-	einfo LINGUAS=\"${LINGUAS}\"
-
-	local myconf=()
-
-	if tc-is-static-only; then
-		myconf+=(
-			--disable-shared
-		)
-	fi
-
-	# engages the Chrome-OS-specific "minimal" build.
-	# We perform further cleanup in multilib_src_install_all().
-	myconf+=( "--with-components=cros-minimal" )
-
-	# The tests use googletest (C++), so make sure correct C++ version is
-	# enabled.
-	append-cxxflags -std=gnu++17
-
-	# explicitly specify compiler wrt bug 524340
-	#
-	# need to override KRB5CONFIG for proper flags
-	# https://www.cups.org/str.php?L4423
-	econf \
-		CC="$(tc-getCC)" \
-		CXX="$(tc-getCXX)" \
-		KRB5CONFIG="${EPREFIX}"/usr/bin/${CHOST}-krb5-config \
-		--libdir="${EPREFIX}"/usr/$(get_libdir) \
-		--localstatedir="${EPREFIX}"/var \
-		--with-rundir="${EPREFIX}"/run/cups \
-		--with-printerroot="${EPREFIX}"/var/cache/cups/printers \
-		--with-cups-user=nobody \
-		--with-cups-group=cups \
-		--with-docdir="${EPREFIX}"/usr/share/cups/html \
-		--with-languages="${LINGUAS}" \
-		--with-system-groups=lpadmin \
-		--with-xinetd=/etc/xinetd.d \
-		$(multilib_native_use_enable acl) \
-		$(use_enable dbus) \
-		$(use_enable debug) \
-		$(use_enable debug debug-guards) \
-		$(use_enable debug debug-printfs) \
-		$(multilib_native_use_with java) \
-		$(use_enable kerberos gssapi) \
-		$(multilib_native_use_enable pam) \
-		$(multilib_native_use_with python python "${PYTHON}") \
-		$(use_enable static-libs static) \
-		$(use_enable threads) \
-		$(use_with ssl tls gnutls) \
-		$(use_with systemd ondemand systemd) \
-		$(use_with upstart ondemand upstart) \
-		$(multilib_native_use_enable usb libusb) \
-		$(use_enable zeroconf avahi) \
-		--without-dnssd \
-		--disable-localization \
-		--without-perl \
-		--without-php \
-		$(multilib_is_native_abi && echo --enable-libpaper || echo --disable-libpaper) \
-		"${myconf[@]}"
-
-	# install in /usr/libexec always, instead of using /usr/lib/cups, as that
-	# makes more sense when facing multilib support.
-	sed -i -e "s:SERVERBIN.*:SERVERBIN = \"\$\(BUILDROOT\)${EPREFIX}/usr/libexec/cups\":" Makedefs || die
-	sed -i -e "s:#define CUPS_SERVERBIN.*:#define CUPS_SERVERBIN \"${EPREFIX}/usr/libexec/cups\":" config.h || die
-	sed -i -e "s:cups_serverbin=.*:cups_serverbin=\"${EPREFIX}/usr/libexec/cups\":" cups-config || die
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		default
-		if use test; then
-			tc-export PKG_CONFIG
-			cros-debug-add-NDEBUG
-			export BASE_VER="$(libchrome_ver)"
-			emake compile-test
-		fi
-	else
-		emake libs
-	fi
-}
-
-multilib_src_test() {
-	multilib_is_native_abi || return 0
-	local tests=(
-		./cups/googletests
-		./scheduler/googletests
-	)
-	local t
-	for t in "${tests[@]}"; do
-		ASAN_OPTIONS=log_path=stderr \
-		UBSAN_OPTIONS=print_stacktrace=1:log_path=stderr \
-		/mnt/host/source/src/platform2/common-mk/platform2_test.py \
-		--sysroot="${SYSROOT}" -- "${t}" || die "${t} failed"
-	done
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		emake BUILDROOT="${D}" install
-	else
-		emake BUILDROOT="${D}" install-libs install-headers
-		dobin cups-config
-	fi
-}
-
-multilib_src_install_all() {
-	# move the default config file to docs
-	dodoc "${ED}"/etc/cups/cupsd.conf.default
-	rm -f "${ED}"/etc/cups/cupsd.conf.default
-
-	# clean out cups init scripts
-	rm -rf "${ED}"/etc/{init.d/cups,rc*,pam.d/cups}
-
-	# install our init script
-	local neededservices
-	use zeroconf && neededservices+=" avahi-daemon"
-	use dbus && neededservices+=" dbus"
-	[[ -n ${neededservices} ]] && neededservices="need${neededservices}"
-	cp "${FILESDIR}"/cupsd.init.d-r1 "${T}"/cupsd || die
-	sed -i \
-		-e "s/@neededservices@/$neededservices/" \
-		"${T}"/cupsd || die
-	doinitd "${T}"/cupsd
-
-	# install our pam script
-	pamd_mimic_system cups auth account
-
-	if use xinetd ; then
-		# correct path
-		sed -i \
-			-e "s:server = .*:server = /usr/libexec/cups/daemon/cups-lpd:" \
-			"${ED}"/etc/xinetd.d/cups-lpd || die
-		# it is safer to disable this by default, bug #137130
-		grep -w 'disable' "${ED}"/etc/xinetd.d/cups-lpd || \
-			{ sed -i -e "s:}:\tdisable = yes\n}:" "${ED}"/etc/xinetd.d/cups-lpd || die ; }
-		# write permission for file owner (root), bug #296221
-		fperms u+w /etc/xinetd.d/cups-lpd || die "fperms failed"
-	else
-		# always configure with --with-xinetd= and clean up later,
-		# bug #525604
-		rm -rf "${ED}"/etc/xinetd.d
-	fi
-
-	keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} \
-		/var/spool/cups/tmp
-
-	keepdir /etc/cups/{interfaces,ppd,ssl}
-
-	# create /etc/cups/client.conf, bug #196967 and #266678
-	echo "ServerName ${EPREFIX}/run/cups/cups.sock" >> "${ED}"/etc/cups/client.conf
-	# Cap TLS per https://crbug.com/1088032
-	echo "MaxTLS1.2" >> "${ED}/etc/cups/client.conf"
-
-	# the following file is now provided by cups-filters:
-	rm -r "${ED}"/usr/share/cups/banners || die
-
-	# the following are created by the init script
-	rm -r "${ED}"/var/cache/cups || die
-	rm -r "${ED}"/run || die
-
-	# we're sending logs to syslog, not /var/log/cups/*
-	rmdir "${ED}"/var/log/cups || die
-
-	# CUPS tries to install these as root-only executables, for
-	# IPP/Kerberos support, and for "privileged port" listening. We don't
-	# need the former, and the latter is handled by Linux capabilities.
-	# Discussion here:
-	# http://www.cups.org/pipermail/cups/2016-February/027499.html
-	chmod 0755 "${ED}"/usr/libexec/cups/backend/{dnssd,ipp,lpd}
-
-	# Create a symbolic link from "ippusb' to the ipp backend.
-	dosym ipp /usr/libexec/cups/backend/ippusb
-
-	# Install our own conf files
-	insinto /etc/cups
-	doins "${FILESDIR}"/{cupsd,cups-files}.conf
-	if use upstart; then
-		insinto /etc/init
-		doins "${FILESDIR}"/init/cups-pre-upstart-socket-bridge.conf
-		doins "${FILESDIR}"/init/cups-post-upstart-socket-bridge.conf
-		doins "${FILESDIR}"/init/cupsd.conf
-		doins "${FILESDIR}"/init/cups-clear-state.conf
-		exeinto /usr/share/cros/init
-		doexe "${FILESDIR}"/init/cups-clear-state.sh
-	fi
-
-	# CUPS wants the daemon user to own these
-	chown cups:cups "${ED}"/etc/cups/{cupsd.conf,cups-files.conf,ssl}
-	# CUPS also wants some specific permissions
-	chmod 640 "${ED}"/etc/cups/{cupsd,cups-files}.conf
-	chmod 700 "${ED}"/etc/cups/ssl
-
-	if use seccomp; then
-		# Install seccomp policy files.
-		insinto /usr/share/policy
-		newins "${FILESDIR}/cupsd-seccomp-${ARCH}.policy" cupsd-seccomp.policy
-		newins "${FILESDIR}/cupstestppd-seccomp-${ARCH}.policy" cupstestppd-seccomp.policy
-		newins "${FILESDIR}/lpadmin-seccomp-${ARCH}.policy" lpadmin-seccomp.policy
-		newins "${FILESDIR}/lpstat-seccomp-${ARCH}.policy" lpstat-seccomp.policy
-	else
-		sed -i '/^env seccomp_flags=/s:=.*:="":' "${ED}"/etc/init/cupsd.conf
-	fi
-
-	# Removes files and directories not used by Chrome OS.
-	rm -rv \
-		"${ED}"usr/share/cups/ppdc/ \
-			|| die "failed to remove some directories"
-	rm -v \
-		"${ED}"etc/cups/*.default \
-		"${ED}"etc/cups/snmp.conf \
-		"${ED}"usr/bin/cancel \
-		"${ED}"usr/libexec/cups/backend/snmp \
-		"${ED}"usr/sbin/cupsctl \
-		"${ED}"usr/sbin/cupsreject \
-		"${ED}"usr/sbin/lpmove \
-			|| die "failed to remove some files"
-}
-
-pkg_preinst() {
-	gnome2_icon_savelist
-}
-
-pkg_postinst() {
-	# Update desktop file database and gtk icon cache (bug 370059)
-	gnome2_icon_cache_update
-	fdo-mime_desktop_database_update
-}
-
-pkg_postrm() {
-	# Update desktop file database and gtk icon cache (bug 370059)
-	gnome2_icon_cache_update
-	fdo-mime_desktop_database_update
-}
diff --git a/net-print/cups/cups-2.3.3-r220.ebuild b/net-print/cups/cups-2.3.3-r220.ebuild
new file mode 100644
index 0000000..81e53e9
--- /dev/null
+++ b/net-print/cups/cups-2.3.3-r220.ebuild
@@ -0,0 +1,338 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=7
+
+CROS_WORKON_COMMIT="93fe2b032acca8147e0f343e8963e777f846d283"
+CROS_WORKON_TREE="b6ee9f6faeeed6a18cd96ebade126330d4dcf9f2"
+CROS_WORKON_PROJECT="chromiumos/third_party/cups"
+CROS_WORKON_EGIT_BRANCH="chromeos"
+
+inherit cros-debug cros-workon libchrome-version autotools flag-o-matic multilib multilib-minimal pam user systemd toolchain-funcs cros-fuzzer cros-sanitizers tmpfiles
+
+MY_P=${P/_rc/rc}
+MY_P=${MY_P/_beta/b}
+MY_PV=${PV/_rc/rc}
+MY_PV=${MY_PV/_beta/b}
+
+KEYWORDS="*"
+
+DESCRIPTION="The Common Unix Printing System"
+HOMEPAGE="http://www.cups.org/"
+
+LICENSE="Apache-2.0"
+IUSE="acl dbus debug kerberos pam
+	+seccomp selinux +ssl static-libs systemd test +threads upstart usb X xinetd zeroconf
+	asan fuzzer"
+
+LANGS="ca cs de es fr it ja ru"
+for X in ${LANGS} ; do
+	IUSE="${IUSE} +linguas_${X}"
+done
+
+CDEPEND="
+	app-text/libpaper
+	acl? (
+		kernel_linux? (
+			sys-apps/acl
+			sys-apps/attr
+		)
+	)
+	dbus? ( >=sys-apps/dbus-1.6.18-r1[${MULTILIB_USEDEP}] )
+	kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
+	!net-print/lprng
+	pam? ( virtual/pam )
+	ssl? (
+		>=dev-libs/libgcrypt-1.5.3:0[${MULTILIB_USEDEP}]
+		>=net-libs/gnutls-2.12.23-r6[${MULTILIB_USEDEP}]
+	)
+	systemd? ( sys-apps/systemd )
+	usb? ( virtual/libusb:1 )
+	X? ( x11-misc/xdg-utils )
+	xinetd? ( sys-apps/xinetd )
+	zeroconf? ( >=net-dns/avahi-0.6.31-r2[${MULTILIB_USEDEP}] )
+	abi_x86_32? (
+		!<=app-emulation/emul-linux-x86-baselibs-20140508
+		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+	)
+"
+
+DEPEND="${CDEPEND}
+	test? (
+		dev-cpp/gtest:=
+		>=chromeos-base/libchrome-0.0.1-r31:0=[cros-debug=]
+		>=chromeos-base/libbrillo-0.0.1-r1651:=
+	)
+"
+
+BDEPEND="
+	>=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+"
+
+RDEPEND="${CDEPEND}
+	selinux? ( sec-policy/selinux-cups )
+"
+
+REQUIRED_USE="
+	usb? ( threads )
+	?? ( systemd upstart )
+"
+
+S="${WORKDIR}/${PN}-release-${MY_PV}"
+
+MULTILIB_CHOST_TOOLS=(
+	/usr/bin/cups-config
+)
+
+pkg_setup() {
+	enewgroup lp
+	enewuser lp -1 -1 -1 "lp,ippusb"
+	enewgroup lpadmin
+	enewuser lpadmin -1 -1 -1 "lpadmin,ippusb"
+	enewgroup cups
+	enewuser cups -1 -1 -1 cups
+}
+
+src_prepare() {
+	default
+
+	# Remove ".SILENT" rule for verbose output (bug 524338).
+	sed 's#^.SILENT:##g' -i "${S}"/Makedefs.in || die "sed failed"
+
+	# Fix install-sh, posix sh does not have 'function'.
+	sed 's#function gzipcp#gzipcp()#g' -i "${S}/install-sh"
+
+	AT_M4DIR=config-scripts eaclocal
+	eautoconf
+
+	# custom Makefiles
+	multilib_copy_sources
+}
+
+multilib_src_configure() {
+	sanitizers-setup-env
+
+	export DSOFLAGS="${LDFLAGS}"
+
+	einfo LANGS=\"${LANGS}\"
+	einfo LINGUAS=\"${LINGUAS}\"
+
+	local myconf=()
+
+	if tc-is-static-only; then
+		myconf+=(
+			--disable-shared
+		)
+	fi
+
+	# engages the Chrome-OS-specific "minimal" build.
+	# We perform further cleanup in multilib_src_install_all().
+	myconf+=( "--with-components=cros-minimal" )
+
+	# The tests use googletest (C++), so make sure correct C++ version is
+	# enabled.
+	append-cxxflags -std=gnu++17
+
+	# explicitly specify compiler wrt bug 524340
+	#
+	# need to override KRB5CONFIG for proper flags
+	# https://www.cups.org/str.php?L4423
+	econf \
+		CC="$(tc-getCC)" \
+		CXX="$(tc-getCXX)" \
+		LIBS="-lstdc++" \
+		KRB5CONFIG="${EPREFIX}/usr/bin/${CHOST}-krb5-config" \
+		PKGCONFIG="$(tc-getPKG_CONFIG)" \
+		--libdir="${EPREFIX}"/usr/$(get_libdir) \
+		--localstatedir="${EPREFIX}"/var \
+		--with-rundir="${EPREFIX}"/run/cups \
+		--with-printerroot="${EPREFIX}"/var/cache/cups/printers \
+		--with-cups-user=nobody \
+		--with-cups-group=cups \
+		--with-docdir="${EPREFIX}"/usr/share/cups/html \
+		--with-languages="${LINGUAS}" \
+		--with-system-groups=lpadmin \
+		--with-xinetd=/etc/xinetd.d \
+		$(multilib_native_use_enable acl) \
+		$(use_enable dbus) \
+		$(use_enable debug) \
+		$(use_enable debug debug-guards) \
+		$(use_enable debug debug-printfs) \
+		$(use_enable kerberos gssapi) \
+		$(multilib_native_use_enable pam) \
+		$(use_enable static-libs static) \
+		$(use_enable threads) \
+		$(use_with ssl tls gnutls) \
+		$(use_with systemd ondemand systemd) \
+		$(use_with upstart ondemand upstart) \
+		$(multilib_native_use_enable usb libusb) \
+		--without-dnssd \
+		--disable-localization \
+		$(multilib_is_native_abi && echo --enable-libpaper || echo --disable-libpaper) \
+		"${myconf[@]}"
+
+	# install in /usr/libexec always, instead of using /usr/lib/cups, as that
+	# makes more sense when facing multilib support.
+	sed -i -e "s:SERVERBIN.*:SERVERBIN = \"\$\(BUILDROOT\)${EPREFIX}/usr/libexec/cups\":" Makedefs || die
+	sed -i -e "s:#define CUPS_SERVERBIN.*:#define CUPS_SERVERBIN \"${EPREFIX}/usr/libexec/cups\":" config.h || die
+	sed -i -e "s:cups_serverbin=.*:cups_serverbin=\"${EPREFIX}/usr/libexec/cups\":" cups-config || die
+}
+
+multilib_src_compile() {
+	if multilib_is_native_abi; then
+		default
+		if use test; then
+			tc-export PKG_CONFIG
+			cros-debug-add-NDEBUG
+			export BASE_VER="$(libchrome_ver)"
+			emake compile-test
+		fi
+	else
+		emake libs
+	fi
+}
+
+multilib_src_test() {
+	multilib_is_native_abi || return 0
+	local tests=(
+		./cups/googletests
+		./scheduler/googletests
+	)
+	local t
+
+	if use cros_host; then
+		test_args=( --host )
+	else
+		test_args=( --sysroot="${SYSROOT}" )
+	fi
+
+	for t in "${tests[@]}"; do
+		ASAN_OPTIONS=log_path=stderr \
+		UBSAN_OPTIONS=print_stacktrace=1:log_path=stderr \
+		/mnt/host/source/src/platform2/common-mk/platform2_test.py \
+		"${test_args[@]}" -- "${t}" || die "${t} failed"
+	done
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		emake BUILDROOT="${D}" install
+	else
+		emake BUILDROOT="${D}" install-libs install-headers
+		dobin cups-config
+	fi
+}
+
+multilib_src_install_all() {
+	# install tmpfiles.d
+	dotmpfiles "${FILESDIR}/tmpfiles.d/cupsd.conf"
+
+	# move the default config file to docs
+	dodoc "${ED}"/etc/cups/cupsd.conf.default
+	rm -f "${ED}"/etc/cups/cupsd.conf.default
+
+	# clean out cups init scripts
+	rm -rf "${ED}"/etc/{init.d/cups,rc*,pam.d/cups}
+
+	# install our init script
+	local neededservices
+	use zeroconf && neededservices+=" avahi-daemon"
+	use dbus && neededservices+=" dbus"
+	[[ -n ${neededservices} ]] && neededservices="need${neededservices}"
+	cp "${FILESDIR}"/cupsd.init.d-r1 "${T}"/cupsd || die
+	sed -i \
+		-e "s/@neededservices@/$neededservices/" \
+		"${T}"/cupsd || die
+	doinitd "${T}"/cupsd
+
+	# install our pam script
+	pamd_mimic_system cups auth account
+
+	if use xinetd ; then
+		# correct path
+		sed -i \
+			-e "s:server = .*:server = /usr/libexec/cups/daemon/cups-lpd:" \
+			"${ED}"/etc/xinetd.d/cups-lpd || die
+		# it is safer to disable this by default, bug #137130
+		grep -w 'disable' "${ED}"/etc/xinetd.d/cups-lpd || \
+			{ sed -i -e "s:}:\tdisable = yes\n}:" "${ED}"/etc/xinetd.d/cups-lpd || die ; }
+		# write permission for file owner (root), bug #296221
+		fperms u+w /etc/xinetd.d/cups-lpd || die "fperms failed"
+	else
+		# always configure with --with-xinetd= and clean up later,
+		# bug #525604
+		rm -rf "${ED}"/etc/xinetd.d
+	fi
+
+	keepdir /usr/libexec/cups/driver /usr/share/cups/{model,profiles} \
+		/var/spool/cups/tmp
+
+	keepdir /etc/cups/{interfaces,ppd,ssl}
+
+	# create /etc/cups/client.conf, bug #196967 and #266678
+	echo "ServerName ${EPREFIX}/run/cups/cups.sock" >> "${ED}"/etc/cups/client.conf
+	# Cap TLS per https://crbug.com/1088032
+	echo "MaxTLS1.2" >> "${ED}/etc/cups/client.conf"
+
+	# the following file is now provided by cups-filters:
+	rm -r "${ED}"/usr/share/cups/banners || die
+
+	# the following are created by the init script
+	rm -r "${ED}"/var/cache/cups || die
+	rm -r "${ED}"/run || die
+
+	# we're sending logs to syslog, not /var/log/cups/*
+	rmdir "${ED}"/var/log/cups || die
+
+	# CUPS tries to install these as root-only executables, for
+	# IPP/Kerberos support, and for "privileged port" listening. We don't
+	# need the former, and the latter is handled by Linux capabilities.
+	# Discussion here:
+	# http://www.cups.org/pipermail/cups/2016-February/027499.html
+	chmod 0755 "${ED}"/usr/libexec/cups/backend/{dnssd,ipp,lpd}
+
+	# Create a symbolic link from "ippusb' to the ipp backend.
+	dosym ipp /usr/libexec/cups/backend/ippusb
+
+	# Install our own conf files
+	insinto /etc/cups
+	doins "${FILESDIR}"/{cupsd,cups-files}.conf
+	if use upstart; then
+		insinto /etc/init
+		doins "${FILESDIR}"/init/cups-pre-upstart-socket-bridge.conf
+		doins "${FILESDIR}"/init/cups-post-upstart-socket-bridge.conf
+		doins "${FILESDIR}"/init/cupsd.conf
+	fi
+
+	# CUPS wants the daemon user to own these
+	chown cups:cups "${ED}"/etc/cups/{cupsd.conf,cups-files.conf,ssl}
+	# CUPS also wants some specific permissions
+	chmod 640 "${ED}"/etc/cups/{cupsd,cups-files}.conf
+	chmod 700 "${ED}"/etc/cups/ssl
+
+	if use seccomp; then
+		# Install seccomp policy files.
+		insinto /usr/share/policy
+		newins "${FILESDIR}/cupsd-seccomp-${ARCH}.policy" cupsd-seccomp.policy
+		newins "${FILESDIR}/cupstestppd-seccomp-${ARCH}.policy" cupstestppd-seccomp.policy
+		newins "${FILESDIR}/lpadmin-seccomp-${ARCH}.policy" lpadmin-seccomp.policy
+		newins "${FILESDIR}/lpstat-seccomp-${ARCH}.policy" lpstat-seccomp.policy
+	else
+		sed -i '/^env seccomp_flags=/s:=.*:="":' "${ED}"/etc/init/cupsd.conf
+	fi
+
+	# Removes files and directories not used by Chrome OS.
+	rm -rv \
+		"${ED}"/usr/share/cups/ppdc/ \
+			|| die "failed to remove some directories"
+	rm -v \
+		"${ED}"/etc/cups/*.default \
+		"${ED}"/etc/cups/snmp.conf \
+		"${ED}"/usr/bin/cancel \
+		"${ED}"/usr/libexec/cups/backend/snmp \
+		"${ED}"/usr/sbin/cupsctl \
+		"${ED}"/usr/sbin/cupsreject \
+		"${ED}"/usr/sbin/lpmove \
+			|| die "failed to remove some files"
+}
diff --git a/net-print/cups/cups-9999.ebuild b/net-print/cups/cups-9999.ebuild
index 1fb3ddd..d965475 100644
--- a/net-print/cups/cups-9999.ebuild
+++ b/net-print/cups/cups-9999.ebuild
@@ -2,14 +2,12 @@
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
-EAPI=5
+EAPI=7
 
 CROS_WORKON_PROJECT="chromiumos/third_party/cups"
 CROS_WORKON_EGIT_BRANCH="chromeos"
 
-PYTHON_COMPAT=( python2_7 )
-
-inherit cros-debug cros-workon libchrome-version autotools fdo-mime gnome2-utils flag-o-matic linux-info multilib multilib-minimal pam python-single-r1 user versionator java-pkg-opt-2 systemd toolchain-funcs cros-fuzzer cros-sanitizers
+inherit cros-debug cros-workon libchrome-version autotools flag-o-matic multilib multilib-minimal pam user systemd toolchain-funcs cros-fuzzer cros-sanitizers tmpfiles
 
 MY_P=${P/_rc/rc}
 MY_P=${MY_P/_beta/b}
@@ -22,9 +20,8 @@
 HOMEPAGE="http://www.cups.org/"
 
 LICENSE="Apache-2.0"
-SLOT="0"
-IUSE="acl dbus debug java kerberos pam
-	python +seccomp selinux +ssl static-libs systemd test +threads upstart usb X xinetd zeroconf
+IUSE="acl dbus debug kerberos pam
+	+seccomp selinux +ssl static-libs systemd test +threads upstart usb X xinetd zeroconf
 	asan fuzzer"
 
 LANGS="ca cs de es fr it ja ru"
@@ -41,11 +38,9 @@
 		)
 	)
 	dbus? ( >=sys-apps/dbus-1.6.18-r1[${MULTILIB_USEDEP}] )
-	java? ( >=virtual/jre-1.6:* )
 	kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
 	!net-print/lprng
 	pam? ( virtual/pam )
-	python? ( ${PYTHON_DEPS} )
 	ssl? (
 		>=dev-libs/libgcrypt-1.5.3:0[${MULTILIB_USEDEP}]
 		>=net-libs/gnutls-2.12.23-r6[${MULTILIB_USEDEP}]
@@ -62,20 +57,22 @@
 "
 
 DEPEND="${CDEPEND}
-	>=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
 	test? (
-		dev-cpp/gtest
+		dev-cpp/gtest:=
 		>=chromeos-base/libchrome-0.0.1-r31:0=[cros-debug=]
 		>=chromeos-base/libbrillo-0.0.1-r1651:=
 	)
 "
 
+BDEPEND="
+	>=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+"
+
 RDEPEND="${CDEPEND}
 	selinux? ( sec-policy/selinux-cups )
 "
 
 REQUIRED_USE="
-	python? ( ${PYTHON_REQUIRED_USE} )
 	usb? ( threads )
 	?? ( systemd upstart )
 "
@@ -93,48 +90,10 @@
 	enewuser lpadmin -1 -1 -1 "lpadmin,ippusb"
 	enewgroup cups
 	enewuser cups -1 -1 -1 cups
-
-	use python && python-single-r1_pkg_setup
-
-	if use kernel_linux; then
-		linux-info_pkg_setup
-		if  ! linux_config_exists; then
-			ewarn "Can't check the linux kernel configuration."
-			ewarn "You might have some incompatible options enabled."
-		else
-			# recheck that we don't have usblp to collide with libusb
-			if use usb; then
-				if linux_chkconfig_present USB_PRINTER; then
-					eerror "Your usb printers will be managed via libusb. In this case, "
-					eerror "${P} requires the USB_PRINTER support disabled."
-					eerror "Please disable it:"
-					eerror "    CONFIG_USB_PRINTER=n"
-					eerror "in /usr/src/linux/.config or"
-					eerror "    Device Drivers --->"
-					eerror "        USB support  --->"
-					eerror "            [ ] USB Printer support"
-					eerror "Alternatively, just disable the usb useflag for cups (your printer will still work)."
-				fi
-			else
-				#here we should warn user that he should enable it so he can print
-				if ! linux_chkconfig_present USB_PRINTER; then
-					ewarn "If you plan to use USB printers you should enable the USB_PRINTER"
-					ewarn "support in your kernel."
-					ewarn "Please enable it:"
-					ewarn "    CONFIG_USB_PRINTER=y"
-					ewarn "in /usr/src/linux/.config or"
-					ewarn "    Device Drivers --->"
-					ewarn "        USB support  --->"
-					ewarn "            [*] USB Printer support"
-					ewarn "Alternatively, enable the usb useflag for cups and use the libusb code."
-				fi
-			fi
-		fi
-	fi
 }
 
 src_prepare() {
-	epatch_user
+	default
 
 	# Remove ".SILENT" rule for verbose output (bug 524338).
 	sed 's#^.SILENT:##g' -i "${S}"/Makedefs.in || die "sed failed"
@@ -180,7 +139,9 @@
 	econf \
 		CC="$(tc-getCC)" \
 		CXX="$(tc-getCXX)" \
-		KRB5CONFIG="${EPREFIX}"/usr/bin/${CHOST}-krb5-config \
+		LIBS="-lstdc++" \
+		KRB5CONFIG="${EPREFIX}/usr/bin/${CHOST}-krb5-config" \
+		PKGCONFIG="$(tc-getPKG_CONFIG)" \
 		--libdir="${EPREFIX}"/usr/$(get_libdir) \
 		--localstatedir="${EPREFIX}"/var \
 		--with-rundir="${EPREFIX}"/run/cups \
@@ -196,21 +157,16 @@
 		$(use_enable debug) \
 		$(use_enable debug debug-guards) \
 		$(use_enable debug debug-printfs) \
-		$(multilib_native_use_with java) \
 		$(use_enable kerberos gssapi) \
 		$(multilib_native_use_enable pam) \
-		$(multilib_native_use_with python python "${PYTHON}") \
 		$(use_enable static-libs static) \
 		$(use_enable threads) \
 		$(use_with ssl tls gnutls) \
 		$(use_with systemd ondemand systemd) \
 		$(use_with upstart ondemand upstart) \
 		$(multilib_native_use_enable usb libusb) \
-		$(use_enable zeroconf avahi) \
 		--without-dnssd \
 		--disable-localization \
-		--without-perl \
-		--without-php \
 		$(multilib_is_native_abi && echo --enable-libpaper || echo --disable-libpaper) \
 		"${myconf[@]}"
 
@@ -242,11 +198,18 @@
 		./scheduler/googletests
 	)
 	local t
+
+	if use cros_host; then
+		test_args=( --host )
+	else
+		test_args=( --sysroot="${SYSROOT}" )
+	fi
+
 	for t in "${tests[@]}"; do
 		ASAN_OPTIONS=log_path=stderr \
 		UBSAN_OPTIONS=print_stacktrace=1:log_path=stderr \
 		/mnt/host/source/src/platform2/common-mk/platform2_test.py \
-		--sysroot="${SYSROOT}" -- "${t}" || die "${t} failed"
+		"${test_args[@]}" -- "${t}" || die "${t} failed"
 	done
 }
 
@@ -260,6 +223,9 @@
 }
 
 multilib_src_install_all() {
+	# install tmpfiles.d
+	dotmpfiles "${FILESDIR}/tmpfiles.d/cupsd.conf"
+
 	# move the default config file to docs
 	dodoc "${ED}"/etc/cups/cupsd.conf.default
 	rm -f "${ED}"/etc/cups/cupsd.conf.default
@@ -335,9 +301,6 @@
 		doins "${FILESDIR}"/init/cups-pre-upstart-socket-bridge.conf
 		doins "${FILESDIR}"/init/cups-post-upstart-socket-bridge.conf
 		doins "${FILESDIR}"/init/cupsd.conf
-		doins "${FILESDIR}"/init/cups-clear-state.conf
-		exeinto /usr/share/cros/init
-		doexe "${FILESDIR}"/init/cups-clear-state.sh
 	fi
 
 	# CUPS wants the daemon user to own these
@@ -359,31 +322,15 @@
 
 	# Removes files and directories not used by Chrome OS.
 	rm -rv \
-		"${ED}"usr/share/cups/ppdc/ \
+		"${ED}"/usr/share/cups/ppdc/ \
 			|| die "failed to remove some directories"
 	rm -v \
-		"${ED}"etc/cups/*.default \
-		"${ED}"etc/cups/snmp.conf \
-		"${ED}"usr/bin/cancel \
-		"${ED}"usr/libexec/cups/backend/snmp \
-		"${ED}"usr/sbin/cupsctl \
-		"${ED}"usr/sbin/cupsreject \
-		"${ED}"usr/sbin/lpmove \
+		"${ED}"/etc/cups/*.default \
+		"${ED}"/etc/cups/snmp.conf \
+		"${ED}"/usr/bin/cancel \
+		"${ED}"/usr/libexec/cups/backend/snmp \
+		"${ED}"/usr/sbin/cupsctl \
+		"${ED}"/usr/sbin/cupsreject \
+		"${ED}"/usr/sbin/lpmove \
 			|| die "failed to remove some files"
 }
-
-pkg_preinst() {
-	gnome2_icon_savelist
-}
-
-pkg_postinst() {
-	# Update desktop file database and gtk icon cache (bug 370059)
-	gnome2_icon_cache_update
-	fdo-mime_desktop_database_update
-}
-
-pkg_postrm() {
-	# Update desktop file database and gtk icon cache (bug 370059)
-	gnome2_icon_cache_update
-	fdo-mime_desktop_database_update
-}
diff --git a/net-print/cups/files/cupsd-seccomp-amd64.policy b/net-print/cups/files/cupsd-seccomp-amd64.policy
index b9830b1..93575ba 100644
--- a/net-print/cups/files/cupsd-seccomp-amd64.policy
+++ b/net-print/cups/files/cupsd-seccomp-amd64.policy
@@ -20,6 +20,8 @@
 execve: 1
 exit: 1
 exit_group: 1
+faccessat: 1
+faccessat2: 1
 fadvise64: 1
 fchmod: 1
 fchown: 1
@@ -85,6 +87,7 @@
 rt_sigprocmask: 1
 rt_sigreturn: 1
 select: 1
+pselect6: 1
 sendmmsg: 1
 sendmsg: 1
 sendto: 1
diff --git a/net-print/cups/files/cupsd-seccomp-arm.policy b/net-print/cups/files/cupsd-seccomp-arm.policy
index 07b8a3f..39db5e8 100644
--- a/net-print/cups/files/cupsd-seccomp-arm.policy
+++ b/net-print/cups/files/cupsd-seccomp-arm.policy
@@ -21,6 +21,8 @@
 exit: 1
 exit_group: 1
 arm_fadvise64_64: 1
+faccessat: 1
+faccessat2: 1
 fchmod: 1
 fchown32: 1
 fcntl64: 1
@@ -88,6 +90,8 @@
 rt_sigaction: 1
 rt_sigprocmask: 1
 _newselect: 1
+pselect6: 1
+pselect6_time64: 1
 send: 1
 sendmmsg: 1
 sendmsg: 1
@@ -107,6 +111,7 @@
 stat64: 1
 statfs: 1
 statfs64: 1
+statx: 1
 symlink: 1
 sysinfo: 1
 timerfd_create: 1
diff --git a/net-print/cups/files/cupsd-seccomp-arm64.policy b/net-print/cups/files/cupsd-seccomp-arm64.policy
index 7c67920..8eb2f83 100644
--- a/net-print/cups/files/cupsd-seccomp-arm64.policy
+++ b/net-print/cups/files/cupsd-seccomp-arm64.policy
@@ -18,6 +18,7 @@
 exit: 1
 exit_group: 1
 faccessat: 1
+faccessat2: 1
 fadvise64: 1
 fchmod: 1
 fchmodat: 1
diff --git a/net-print/cups/files/cupsd-seccomp-x86.policy b/net-print/cups/files/cupsd-seccomp-x86.policy
index a7309d7..0913460 100644
--- a/net-print/cups/files/cupsd-seccomp-x86.policy
+++ b/net-print/cups/files/cupsd-seccomp-x86.policy
@@ -22,6 +22,8 @@
 execve: 1
 exit: 1
 exit_group: 1
+faccessat: 1
+faccessat2: 1
 fadvise64: 1
 fadvise64_64: 1
 fchmod: 1
@@ -103,6 +105,8 @@
 rt_sigprocmask: 1
 rt_sigreturn: 1
 select: 1
+pselect6: 1
+pselect6_time64: 1
 send: 1
 sendmmsg: 1
 sendto: 1
diff --git a/net-print/cups/files/cupstestppd-seccomp-amd64.policy b/net-print/cups/files/cupstestppd-seccomp-amd64.policy
index 1a08f46..f14992c 100644
--- a/net-print/cups/files/cupstestppd-seccomp-amd64.policy
+++ b/net-print/cups/files/cupstestppd-seccomp-amd64.policy
@@ -6,6 +6,8 @@
 brk: 1
 close: 1
 exit_group: 1
+faccessat: 1
+faccessat2: 1
 fcntl: 1
 fstat: 1
 futex: 1
diff --git a/net-print/cups/files/cupstestppd-seccomp-arm.policy b/net-print/cups/files/cupstestppd-seccomp-arm.policy
index fac4910..aa663f5 100644
--- a/net-print/cups/files/cupstestppd-seccomp-arm.policy
+++ b/net-print/cups/files/cupstestppd-seccomp-arm.policy
@@ -8,9 +8,13 @@
 close: 1
 exit: 1
 exit_group: 1
+faccessat: 1
+faccessat2: 1
 fcntl64: 1
 fstat64: 1
 fstatat64: 1
+fstatfs64: 1
+fstatfs: 1
 futex: 1
 futex_time64: 1
 getdents64: 1
@@ -33,5 +37,5 @@
 openat: arg2 in O_RDONLY|O_NONBLOCK|0x4000|0x20000|0x80000
 read: 1
 stat64: 1
+statx: 1
 write: 1
-fstatfs64: 1
diff --git a/net-print/cups/files/cupstestppd-seccomp-arm64.policy b/net-print/cups/files/cupstestppd-seccomp-arm64.policy
index 151193ed..1f43c63 100644
--- a/net-print/cups/files/cupstestppd-seccomp-arm64.policy
+++ b/net-print/cups/files/cupstestppd-seccomp-arm64.policy
@@ -8,6 +8,7 @@
 exit: 1
 exit_group: 1
 faccessat: 1
+faccessat2: 1
 fcntl: 1
 fstat: 1
 futex: 1
diff --git a/net-print/cups/files/cupstestppd-seccomp-x86.policy b/net-print/cups/files/cupstestppd-seccomp-x86.policy
index 4fce66b..589fcda 100644
--- a/net-print/cups/files/cupstestppd-seccomp-x86.policy
+++ b/net-print/cups/files/cupstestppd-seccomp-x86.policy
@@ -8,8 +8,12 @@
 close: 1
 exit: 1
 exit_group: 1
+faccessat: 1
+faccessat2: 1
 fcntl64: 1
 fstat64: 1
+fstatfs64: 1
+fstatfs: 1
 futex: 1
 futex_time64: 1
 getdents64: 1
@@ -36,4 +40,3 @@
 stat64: 1
 uname: 1
 write: 1
-fstatfs64: 1
diff --git a/net-print/cups/files/init/cups-clear-state.conf b/net-print/cups/files/init/cups-clear-state.conf
deleted file mode 100644
index 600717e..0000000
--- a/net-print/cups/files/init/cups-clear-state.conf
+++ /dev/null
@@ -1,17 +0,0 @@
-# Copyright 2016 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.
-
-description     "Perform CUPS session cleanup tasks."
-author          "chromium-os-dev@chromium.org"
-
-start on login-prompt-visible
-task
-
-script
-  if grep -q CHROMEOS_RELEASE_TRACK=testimage /etc/lsb-release && [ -f /run/cups/disable ]; then
-    logger -t "${UPSTART_JOB}" "cups-clear-state disabled for testing."
-  else
-    exec /usr/share/cros/init/cups-clear-state.sh
-  fi
-end script
diff --git a/net-print/cups/files/init/cups-clear-state.sh b/net-print/cups/files/init/cups-clear-state.sh
deleted file mode 100644
index d69462d..0000000
--- a/net-print/cups/files/init/cups-clear-state.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/bin/sh
-# Copyright 2019 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.
-
-# This script is to maintain cupsd's privileged directories (/var/spool/cups
-# and /var/cache/cups).
-
-# cupsd waits for the stamp file before starting.
-stamp=/run/cups/stamp
-rm -f "${stamp}"
-stop cupsd || :
-mkdir -p /run/cups
-logger -t "${UPSTART_JOB}" "Removing privileged directories"
-if ! error=$(rm -rf /var/spool/cups /var/cache/cups 2>&1); then
-  logger -t "${UPSTART_JOB}" "Failed to remove privileged directories." "${error}"
-  exit 1
-fi
-touch "${stamp}"
diff --git a/net-print/cups/files/init/cupsd.conf b/net-print/cups/files/init/cupsd.conf
index 516d09e..4e155d9 100644
--- a/net-print/cups/files/init/cupsd.conf
+++ b/net-print/cups/files/init/cupsd.conf
@@ -6,9 +6,6 @@
 author          "chromium-os-dev@chromium.org"
 
 env user=cups
-env lp_group=cups
-env admin_group=lpadmin
-env printer_root=/var/cache/cups/printers
 env seccomp_flags="-S /usr/share/policy/cupsd-seccomp.policy"
 
 # Start only on request.
@@ -16,59 +13,13 @@
 stop on stopping ui
 
 pre-start script
-	# Wait for cups-clear-state.conf to finish running to prevent a potential
-	# race condition.
-	until [ -f /run/cups/stamp ]; do
-		logger -t "${UPSTART_JOB}" "Waiting for /run/cups/stamp"
-		sleep 1
-	done
-
-	fail_if_symlink() {
-		local abs="$(readlink -f .)"
-		if [ "$1" != "${abs}" ]; then
-			logger -t "${UPSTART_JOB}" "'$1' resolves to '${abs}'"
-			exit 1
-		fi
-	}
-
-	# dir: directory to create (if necessary)
-	# perm: permissions to set for the directory
-	# group (optional): group to own the directory; defaults to ${lp_group}
-	check_create() {
-		local dir="$1"
-		local perm="$2"
-		local group="${3:-${lp_group}}"
-		# If it's not a directory currently, clean it up.
-		rm -f "${dir}" 2>/dev/null || :
-		mkdir -p "${dir}"
-		# Use working directory instead of path to avoid chown and chmod being
-		# applied to a linked path.
-		local original_wd="${PWD}"
-		cd "${dir}"
-		fail_if_symlink "${dir}"
-		chown -h ${user}:${group} .
-		chmod "${perm}" .
-		cd "${original_wd}"
-	}
-
-	check_create /var/spool/cups 0710
-	check_create /var/spool/cups/tmp 0770
-	check_create /var/cache/cups 0770
-	check_create /var/cache/cups/rss 0775
-	check_create /run/cups 0755
-	check_create /run/cups/certs 0711 ${admin_group}
-
-	# PrinterRoot keeps printers.conf and ppd/PRINTERNAME.ppd configuration
-	# data
-	check_create "${printer_root}" 0755
-	check_create "${printer_root}"/ppd 0755
-
-	# Clear old job files and history
-	original_wd="${PWD}"
-	cd "/var/spool/cups"
-	fail_if_symlink "/var/spool/cups"
-	rm -f ./{c,d}* ./job.cache*
-	cd "${original_wd}"
+	if ! status ui | grep -q "ui start/running"; then
+		logger -t "${UPSTART_JOB}" "ui not running"
+		stop
+		exit 0
+	fi
+	# Create temporary directories used by CUPS.
+	systemd-tmpfiles --create --remove /usr/lib/tmpfiles.d/cupsd.conf
 end script
 
 # TODO(xiaochu): use -b instead of -K. crbug.com/811473
diff --git a/net-print/cups/files/lpadmin-seccomp-amd64.policy b/net-print/cups/files/lpadmin-seccomp-amd64.policy
index 90dcf4a..b772386 100644
--- a/net-print/cups/files/lpadmin-seccomp-amd64.policy
+++ b/net-print/cups/files/lpadmin-seccomp-amd64.policy
@@ -11,8 +11,11 @@
 connect: 1
 exit: 1
 exit_group: 1
+faccessat: 1
+faccessat2: 1
 fcntl: 1
 fstat: 1
+fstatfs: 1
 futex: 1
 getegid: 1
 geteuid: 1
diff --git a/net-print/cups/files/lpadmin-seccomp-arm.policy b/net-print/cups/files/lpadmin-seccomp-arm.policy
index c73840d..f3d1d09 100644
--- a/net-print/cups/files/lpadmin-seccomp-arm.policy
+++ b/net-print/cups/files/lpadmin-seccomp-arm.policy
@@ -12,8 +12,13 @@
 connect: 1
 exit: 1
 exit_group: 1
+faccessat: 1
+faccessat2: 1
 fcntl64: 1
 fstat64: 1
+fstatat64: 1
+fstatfs64: 1
+fstatfs: 1
 futex: 1
 futex_time64: 1
 getegid32: 1
@@ -49,6 +54,7 @@
 setsockopt: 1
 socket:1
 stat64: 1
+statx: 1
 uname: 1
 unlink: 1
 write: 1
diff --git a/net-print/cups/files/lpadmin-seccomp-arm64.policy b/net-print/cups/files/lpadmin-seccomp-arm64.policy
index f2c118d..40bc42a 100644
--- a/net-print/cups/files/lpadmin-seccomp-arm64.policy
+++ b/net-print/cups/files/lpadmin-seccomp-arm64.policy
@@ -11,8 +11,10 @@
 exit: 1
 exit_group: 1
 faccessat: 1
+faccessat2: 1
 fcntl: 1
 fstat: 1
+fstatfs: 1
 futex: 1
 getegid: 1
 geteuid: 1
diff --git a/net-print/cups/files/lpadmin-seccomp-x86.policy b/net-print/cups/files/lpadmin-seccomp-x86.policy
index 67416be..2c74285 100644
--- a/net-print/cups/files/lpadmin-seccomp-x86.policy
+++ b/net-print/cups/files/lpadmin-seccomp-x86.policy
@@ -12,8 +12,12 @@
 connect: 1
 exit: 1
 exit_group: 1
+faccessat: 1
+faccessat2: 1
 fcntl64: 1
 fstat64: 1
+fstatfs64: 1
+fstatfs: 1
 futex: 1
 futex_time64: 1
 getegid32: 1
diff --git a/net-print/cups/files/lpstat-seccomp-arm.policy b/net-print/cups/files/lpstat-seccomp-arm.policy
index 443738a..38e4030 100644
--- a/net-print/cups/files/lpstat-seccomp-arm.policy
+++ b/net-print/cups/files/lpstat-seccomp-arm.policy
@@ -9,6 +9,8 @@
 send: 1
 fcntl64: 1
 fstat64: 1
+fstatat64: 1
+statx: 1
 close: 1
 read: 1
 setsockopt: 1
diff --git a/net-print/cups/files/tmpfiles.d/cupsd.conf b/net-print/cups/files/tmpfiles.d/cupsd.conf
new file mode 100644
index 0000000..1475ab1
--- /dev/null
+++ b/net-print/cups/files/tmpfiles.d/cupsd.conf
@@ -0,0 +1,16 @@
+# 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.
+
+# Type  Path  Mode  User  Group  Age  Arguments
+d= /run/cups 0755 cups cups
+d= /run/cups/certs 0711 cups lpadmin
+d= /var/cache/cups 0770 cups cups
+d= /var/cache/cups/printers 0755 cups cups
+d= /var/cache/cups/printers/ppd 0755 cups cups
+d= /var/cache/cups/rss 0775 cups cups
+d= /var/spool/cups 0710 cups cups
+d= /var/spool/cups/tmp 0770 cups cups
+
+# Clear old job files and history
+R /var/spool/cups/{c,d,job.cache}*
diff --git a/net-print/cups_proxy/cups_proxy-0.0.1-r186.ebuild b/net-print/cups_proxy/cups_proxy-0.0.1-r186.ebuild
deleted file mode 100644
index 4b9d60c..0000000
--- a/net-print/cups_proxy/cups_proxy-0.0.1-r186.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "3d941a32a42e1b92a1e353ab03fde0c52d50b4ab" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk cups_proxy .gn"
-
-PLATFORM_SUBDIR="cups_proxy"
-
-inherit cros-workon platform user
-
-DESCRIPTION="CUPS Proxy Daemon for Chromium OS"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cups_proxy/"
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-RDEPEND="
-	chromeos-base/libbrillo:=
-	net-libs/libmicrohttpd:=
-	"
-
-DEPEND="${RDEPEND}
-	"
-
-pkg_preinst() {
-	enewuser cups-proxy
-	enewgroup cups-proxy
-}
-
-src_install() {
-	dobin "${OUT}"/cups_proxy
-
-	# Install upstart configuration.
-	insinto /etc/init
-	doins init/*.conf
-
-	# Install seccomp policy file.
-	insinto /usr/share/policy
-	newins "seccomp/cups_proxy-seccomp-${ARCH}.policy" cups_proxy-seccomp.policy
-
-	# Install D-Bus configuration file.
-	insinto /etc/dbus-1/system.d
-	doins dbus/org.chromium.CupsProxyDaemon.conf
-
-	# Install D-Bus service activation configuration.
-	insinto /usr/share/dbus-1/system-services
-	doins dbus/org.chromium.CupsProxyDaemon.service
-}
diff --git a/net-print/cups_proxy/cups_proxy-0.0.1-r222.ebuild b/net-print/cups_proxy/cups_proxy-0.0.1-r222.ebuild
new file mode 100644
index 0000000..26cc175
--- /dev/null
+++ b/net-print/cups_proxy/cups_proxy-0.0.1-r222.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "f5c65939888b9e828b7f0d5fc915727b4f549910" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk cups_proxy .gn"
+
+PLATFORM_SUBDIR="cups_proxy"
+
+inherit tmpfiles cros-workon platform user
+
+DESCRIPTION="CUPS Proxy Daemon for Chromium OS"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cups_proxy/"
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+RDEPEND="
+	chromeos-base/libbrillo:=
+	net-libs/libmicrohttpd:=
+	"
+
+DEPEND="${RDEPEND}
+	"
+
+pkg_preinst() {
+	enewuser cups-proxy
+	enewgroup cups-proxy
+}
+
+src_install() {
+	dobin "${OUT}"/cups_proxy
+
+	# Install upstart configuration.
+	insinto /etc/init
+	doins init/*.conf
+
+	dotmpfiles tmpfiles.d/*.conf
+
+	# Install seccomp policy file.
+	insinto /usr/share/policy
+	newins "seccomp/cups_proxy-seccomp-${ARCH}.policy" cups_proxy-seccomp.policy
+
+	# Install D-Bus configuration file.
+	insinto /etc/dbus-1/system.d
+	doins dbus/org.chromium.CupsProxyDaemon.conf
+
+	# Install D-Bus service activation configuration.
+	insinto /usr/share/dbus-1/system-services
+	doins dbus/org.chromium.CupsProxyDaemon.service
+}
diff --git a/net-print/cups_proxy/cups_proxy-9999.ebuild b/net-print/cups_proxy/cups_proxy-9999.ebuild
index fe40f4d..3591500 100644
--- a/net-print/cups_proxy/cups_proxy-9999.ebuild
+++ b/net-print/cups_proxy/cups_proxy-9999.ebuild
@@ -11,7 +11,7 @@
 
 PLATFORM_SUBDIR="cups_proxy"
 
-inherit cros-workon platform user
+inherit tmpfiles cros-workon platform user
 
 DESCRIPTION="CUPS Proxy Daemon for Chromium OS"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/cups_proxy/"
@@ -41,6 +41,8 @@
 	insinto /etc/init
 	doins init/*.conf
 
+	dotmpfiles tmpfiles.d/*.conf
+
 	# Install seccomp policy file.
 	insinto /usr/share/policy
 	newins "seccomp/cups_proxy-seccomp-${ARCH}.policy" cups_proxy-seccomp.policy
diff --git a/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.7.6-r6.ebuild b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.7.6-r7.ebuild
similarity index 100%
rename from net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.7.6-r6.ebuild
rename to net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.7.6-r7.ebuild
diff --git a/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.7.6.ebuild b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.7.6.ebuild
index 6ea48de..aaf55673 100644
--- a/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.7.6.ebuild
+++ b/net-print/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr-1.7.6.ebuild
@@ -21,7 +21,7 @@
 	"${FILESDIR}/1.6.5-warnings.patch"
 	"${FILESDIR}/${PN}-1.6.10-search-filter.patch"
 	"${FILESDIR}/${PN}-1.7.6-cupsRasterHeader.patch"
-	"${FILESDIR}/${PN}-1.7.6-writeToNullFix.patch"
+	"${FILESDIR}/${PN}-1.7.6-writeToNullFix2.patch"
 )
 
 src_prepare() {
diff --git a/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.7.6-writeToNullFix.patch b/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.7.6-writeToNullFix.patch
deleted file mode 100644
index d1c566d..0000000
--- a/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.7.6-writeToNullFix.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-This patch fixes a bug in the original driver: write to NULL descriptor.
-
-b/182179434
-
---- a/src/wrapper.c
-+++ b/src/wrapper.c
-@@ -244,6 +244,9 @@ main (int argc, char *argv[])
- 				break;
- 			}
- 
-+			if (pfp == NULL) // do not write anything if pipe is not open
-+				break;
-+
- 			if(first_fwrite){//æœ€ćˆăźfwriteă ă‘ă€ăƒšăƒŒă‚žæ•°ă‚’é€äżĄ
- 				fwrite (&pageNum, 1, 1, pfp);
- 				first_fwrite = FALSE;
diff --git a/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.7.6-writeToNullFix2.patch b/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.7.6-writeToNullFix2.patch
new file mode 100644
index 0000000..3d0ac25
--- /dev/null
+++ b/net-print/epson-inkjet-printer-escpr/files/epson-inkjet-printer-escpr-1.7.6-writeToNullFix2.patch
@@ -0,0 +1,28 @@
+This patch fixes a bug in the original driver: write to NULL descriptor.
+
+b/182179434
+
+--- a/src/wrapper.c
++++ b/src/wrapper.c
+@@ -244,6 +244,10 @@ main (int argc, char *argv[])
+ 				break;
+ 			}
+ 
++			if(pfp == NULL){ // do not write anything if pipe is not open
++				break;
++			}
++
+ 			if(first_fwrite){//æœ€ćˆăźfwriteă ă‘ă€ăƒšăƒŒă‚žæ•°ă‚’é€äżĄ
+ 				fwrite (&pageNum, 1, 1, pfp);
+ 				first_fwrite = FALSE;
+@@ -404,7 +408,9 @@ main (int argc, char *argv[])
+ 	free (page_raw);
+ 	free (page_raw_cache);
+ 
+-	pclose (pfp);
++	if(pfp != NULL){
++		pclose (pfp);
++	}
+ 	cupsRasterClose (ras);
+ 
+ 	return 0;
diff --git a/net-print/hplip/files/hplip-3.19.6-fix-pixel-color-overflow.patch b/net-print/hplip/files/hplip-3.19.6-fix-pixel-color-overflow.patch
new file mode 100644
index 0000000..8db62b6
--- /dev/null
+++ b/net-print/hplip/files/hplip-3.19.6-fix-pixel-color-overflow.patch
@@ -0,0 +1,34 @@
+From: Pranav Batra <batrapranav@chromium.org>
+  
+The hpcups filter increments the green color value of the last pixel on each
+row if it matches the previous pixel or seed pixel color value to simplify the
+implementation of a run length encoding compression algorithm.
+
+If the seed pixel has color value 0x0000xx, the last pixel 0xffffxx, and the
+previous pixel 0xffffxx, then the last pixel's color value will overflow to
+0x0000xx, the same as the seed pixel. This will cause an assertion to fail and
+the filter to crash.
+
+This patch fixes the bug by incrementing the green color value of the last
+pixel if it has a color value less than 0x80 and decrementing if the color
+value is greater than 0x80.
+
+https://bugs.launchpad.net/hplip/+bug/1933552
+
+--- a/prnt/hpcups/Mode10.cpp
++++ b/prnt/hpcups/Mode10.cpp
+@@ -159,12 +159,13 @@ This function compresses a single row per call.
+ 
+     // Setup sentinal value to replace last pixel of curRow. Simplifies future end condition checking.
+     uint32_t realLastPixel = getPixel(curRowPtr, lastPixel);
++    int delta = (realLastPixel & 0xff00U) < 0x8000U ? 0x100 : -0x100;
+ 
+     uint32_t newLastPixel = realLastPixel;
+     while ((getPixel (curRowPtr, lastPixel - 1) == newLastPixel) ||
+            (getPixel (seedRowPtr, lastPixel) == newLastPixel))
+     {
+-        putPixel (curRowPtr, lastPixel, newLastPixel += 0x100); // add one to green.
++        putPixel (curRowPtr, lastPixel, newLastPixel += delta); // modify green by one.
+     }
+     unsigned int curPixel = 0;
+     unsigned int seedRowPixelCopyCount;
diff --git a/net-print/hplip/hplip-3.19.6-r5.ebuild b/net-print/hplip/hplip-3.19.6-r7.ebuild
similarity index 100%
rename from net-print/hplip/hplip-3.19.6-r5.ebuild
rename to net-print/hplip/hplip-3.19.6-r7.ebuild
diff --git a/net-print/hplip/hplip-3.19.6.ebuild b/net-print/hplip/hplip-3.19.6.ebuild
index bada67c..5cf50c5 100644
--- a/net-print/hplip/hplip-3.19.6.ebuild
+++ b/net-print/hplip/hplip-3.19.6.ebuild
@@ -81,6 +81,7 @@
 	"${FILESDIR}/${PN}-3.19.6-fix-return.patch"
 	"${FILESDIR}/${PN}-3.19.6-ignore-prebuilt-shared-objects.patch"
 	"${FILESDIR}/${PN}-3.19.6-fix-uninitialized-variable.patch"
+	"${FILESDIR}/${PN}-3.19.6-fix-pixel-color-overflow.patch"
 	"${WORKDIR}/patches"
 )
 
diff --git a/net-print/ippsample/Manifest b/net-print/ippsample/Manifest
index 0a86ed6..82a69f7 100644
--- a/net-print/ippsample/Manifest
+++ b/net-print/ippsample/Manifest
@@ -1 +1 @@
-DIST ippsample-1.0.0.zip 6899766 BLAKE2B 6f087b4f6f49704d60e2450d62cac6d7919da6e328629f00de2aec0162577fdc9a453d430bf8ef39d354bbd4120937f689d75ffdf65723d4b3d8e8a03647e1ba SHA512 203da9dc385cdc8a6234754c59f5858dc9f7a815668b7ca48a7c1d0bb321a880ca0b726ffbbb8108ceb213c9eaae6dc664db9a6099d5b879144090dadb08f979
+DIST ippsample-1.1.0.zip 6922081 BLAKE2B 7f60f777afd6162125d6ae7a31654d4828d95d39fc80069f5bb1c727e8f446e88fe7ec58e92232d0c175b55de8f964b7467a1f96d470928c5b725ec3de059fa7 SHA512 3280b60a72f0bce96500db293ef10f649fc86bdb3482143472875b03704df2c2d12ac309871db272d4a2c9b368fc1fc91904fe46eda55f49021c678b262b0f23
diff --git a/net-print/ippsample/files/ippsample-1.0.0-use-PKG_CONFIG.patch b/net-print/ippsample/files/ippsample-1.0.0-use-PKG_CONFIG.patch
deleted file mode 100644
index 2d79cdb..0000000
--- a/net-print/ippsample/files/ippsample-1.0.0-use-PKG_CONFIG.patch
+++ /dev/null
@@ -1,177 +0,0 @@
-From 58e396709d1e1cd70138cd136e2ba12262352ebb Mon Sep 17 00:00:00 2001
-From: Marcin Wojtas <mw@semihalf.com>
-Date: Fri, 12 Mar 2021 00:42:34 +0000
-Subject: [PATCH] Use PKG_CONFIG
-
----
- configure | 62 +++++++++++++++++++++++++++----------------------------
- 1 file changed, 31 insertions(+), 31 deletions(-)
-
-diff --git a/configure b/configure
-index aeb01db..5f7cdf3 100755
---- a/configure
-+++ b/configure
-@@ -664,7 +664,7 @@ LIBZ
- INSTALL_GZIP
- EGREP
- GREP
--PKGCONFIG
-+PKG_CONFIG
- INSTALL
- SED
- RMDIR
-@@ -3576,12 +3576,12 @@ if test -n "$ac_tool_prefix"; then
- set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
- $as_echo_n "checking for $ac_word... " >&6; }
--if ${ac_cv_path_PKGCONFIG+:} false; then :
-+if ${ac_cv_path_PKG_CONFIG+:} false; then :
-   $as_echo_n "(cached) " >&6
- else
--  case $PKGCONFIG in
-+  case $PKG_CONFIG in
-   [\\/]* | ?:[\\/]*)
--  ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
-+  ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
-   ;;
-   *)
-   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-@@ -3591,7 +3591,7 @@ do
-   test -z "$as_dir" && as_dir=.
-     for ac_exec_ext in '' $ac_executable_extensions; do
-   if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
--    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-+    ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
-     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-     break 2
-   fi
-@@ -3602,10 +3602,10 @@ IFS=$as_save_IFS
-   ;;
- esac
- fi
--PKGCONFIG=$ac_cv_path_PKGCONFIG
--if test -n "$PKGCONFIG"; then
--  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
--$as_echo "$PKGCONFIG" >&6; }
-+PKG_CONFIG=$ac_cv_path_PKG_CONFIG
-+if test -n "$PKG_CONFIG"; then
-+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
-+$as_echo "$PKG_CONFIG" >&6; }
- else
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
- $as_echo "no" >&6; }
-@@ -3613,18 +3613,18 @@ fi
- 
- 
- fi
--if test -z "$ac_cv_path_PKGCONFIG"; then
--  ac_pt_PKGCONFIG=$PKGCONFIG
-+if test -z "$ac_cv_path_PKG_CONFIG"; then
-+  ac_pt_PKG_CONFIG=$PKG_CONFIG
-   # Extract the first word of "pkg-config", so it can be a program name with args.
- set dummy pkg-config; ac_word=$2
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
- $as_echo_n "checking for $ac_word... " >&6; }
--if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-+if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then :
-   $as_echo_n "(cached) " >&6
- else
--  case $ac_pt_PKGCONFIG in
-+  case $ac_pt_PKG_CONFIG in
-   [\\/]* | ?:[\\/]*)
--  ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
-+  ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
-   ;;
-   *)
-   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-@@ -3634,7 +3634,7 @@ do
-   test -z "$as_dir" && as_dir=.
-     for ac_exec_ext in '' $ac_executable_extensions; do
-   if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
--    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-+    ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
-     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-     break 2
-   fi
-@@ -3645,17 +3645,17 @@ IFS=$as_save_IFS
-   ;;
- esac
- fi
--ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
--if test -n "$ac_pt_PKGCONFIG"; then
--  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
--$as_echo "$ac_pt_PKGCONFIG" >&6; }
-+ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
-+if test -n "$ac_pt_PKG_CONFIG"; then
-+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
-+$as_echo "$ac_pt_PKG_CONFIG" >&6; }
- else
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
- $as_echo "no" >&6; }
- fi
- 
--  if test "x$ac_pt_PKGCONFIG" = x; then
--    PKGCONFIG=""
-+  if test "x$ac_pt_PKG_CONFIG" = x; then
-+    PKG_CONFIG=""
-   else
-     case $cross_compiling:$ac_tool_warned in
- yes:)
-@@ -3663,10 +3663,10 @@ yes:)
- $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
- ac_tool_warned=yes ;;
- esac
--    PKGCONFIG=$ac_pt_PKGCONFIG
-+    PKG_CONFIG=$ac_pt_PKG_CONFIG
-   fi
- else
--  PKGCONFIG="$ac_cv_path_PKGCONFIG"
-+  PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
- fi
- 
- 
-@@ -6368,7 +6368,7 @@ fi
- 	fi
-     fi
- 
--        if test $have_ssl = 0 -a "x$enable_gnutls" != "xno" -a "x$PKGCONFIG" != x; then
-+        if test $have_ssl = 0 -a "x$enable_gnutls" != "xno" -a "x$PKG_CONFIG" != x; then
-     	if test -n "$ac_tool_prefix"; then
-   # Extract the first word of "${ac_tool_prefix}libgnutls-config", so it can be a program name with args.
- set dummy ${ac_tool_prefix}libgnutls-config; ac_word=$2
-@@ -6467,10 +6467,10 @@ else
-   LIBGNUTLSCONFIG="$ac_cv_path_LIBGNUTLSCONFIG"
- fi
- 
--	if $PKGCONFIG --exists gnutls; then
-+	if $PKG_CONFIG --exists gnutls; then
- 	    have_ssl=1
--	    SSLLIBS=`$PKGCONFIG --libs gnutls`
--	    SSLFLAGS=`$PKGCONFIG --cflags gnutls`
-+	    SSLLIBS=`$PKG_CONFIG --libs gnutls`
-+	    SSLFLAGS=`$PKG_CONFIG --cflags gnutls`
- 	    $as_echo "#define HAVE_SSL 1" >>confdefs.h
- 
- 	    $as_echo "#define HAVE_GNUTLS 1" >>confdefs.h
-@@ -6821,14 +6821,14 @@ IPPFIND_BIN=""
- IPPFIND_HTML=""
- IPPFIND_MAN=""
- 
--if test "x$PKGCONFIG" != x -a x$enable_avahi != xno -a x$host_os_name != xdarwin; then
-+if test "x$PKG_CONFIG" != x -a x$enable_avahi != xno -a x$host_os_name != xdarwin; then
- 	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Avahi" >&5
- $as_echo_n "checking for Avahi... " >&6; }
--	if $PKGCONFIG --exists avahi-client; then
-+	if $PKG_CONFIG --exists avahi-client; then
- 		{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
- $as_echo "yes" >&6; }
--		CFLAGS="$CFLAGS `$PKGCONFIG --cflags avahi-client`"
--		DNSSDLIBS="`$PKGCONFIG --libs avahi-client`"
-+		CFLAGS="$CFLAGS `$PKG_CONFIG --cflags avahi-client`"
-+		DNSSDLIBS="`$PKG_CONFIG --libs avahi-client`"
- 		IPPFIND_BIN="ippfind"
- 		IPPFIND_HTML="ippfind.html"
- 		IPPFIND_MAN="ippfind.1"
--- 
-2.31.0.rc2.261.g7f71774620-goog
-
diff --git a/net-print/ippsample/files/ippsample-1.1.0-use-PKG_CONFIG.patch b/net-print/ippsample/files/ippsample-1.1.0-use-PKG_CONFIG.patch
new file mode 100644
index 0000000..fb58097
--- /dev/null
+++ b/net-print/ippsample/files/ippsample-1.1.0-use-PKG_CONFIG.patch
@@ -0,0 +1,371 @@
+From 7309babda7273e6af8fbf8a76150d9186374f3c8 Mon Sep 17 00:00:00 2001
+From: Marcin Wojtas <mw@semihalf.com>
+Date: Wed, 18 Aug 2021 14:38:16 +0000
+Subject: [PATCH] Use PKG_CONFIG
+
+---
+ config-scripts/cups-common.m4      |  4 +-
+ config-scripts/cups-directories.m4 |  6 +--
+ config-scripts/cups-dnssd.m4       | 12 ++---
+ config-scripts/cups-tls.m4         | 12 ++---
+ configure                          | 78 +++++++++++++++---------------
+ 5 files changed, 56 insertions(+), 56 deletions(-)
+
+diff --git a/config-scripts/cups-common.m4 b/config-scripts/cups-common.m4
+index f8bcdfd..6675d65 100644
+--- a/config-scripts/cups-common.m4
++++ b/config-scripts/cups-common.m4
+@@ -62,7 +62,7 @@ AS_IF([test "x$CC" = x], [
+ ])
+ 
+ dnl Check for pkg-config, which is used for some other tests later on...
+-AC_PATH_TOOL([PKGCONFIG], [pkg-config])
++AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
+ 
+ dnl Check for libraries...
+ AC_SEARCH_LIBS([abs], [m], [AC_DEFINE(HAVE_ABS)])
+@@ -185,7 +185,7 @@ AC_CHECK_HEADER([zlib.h], [
+ AC_SUBST([INSTALL_GZIP])
+ AC_SUBST([LIBZ])
+ 
+-PKGCONFIG_LIBS_STATIC="$PKGCONFIG_LIBS_STATIC $LIBZ"
++PKG_CONFIG_LIBS_STATIC="$PKG_CONFIG_LIBS_STATIC $LIBZ"
+ 
+ dnl Flags for "ar" command...
+ AS_CASE([host_os_name], [darwin* | *bsd*], [
+diff --git a/config-scripts/cups-directories.m4 b/config-scripts/cups-directories.m4
+index a8ad4a2..d6008ff 100644
+--- a/config-scripts/cups-directories.m4
++++ b/config-scripts/cups-directories.m4
+@@ -61,7 +61,7 @@ AS_IF([test "$includedir" = "\${prefix}/include" -a "$prefix" = "/"], [
+     includedir="/usr/include"
+ ])
+ AS_IF([test "$includedir" != "/usr/include"], [
+-    PKGCONFIG_CFLAGS="$PKGCONFIG_CFLAGS -I$includedir"
++    PKG_CONFIG_CFLAGS="$PKG_CONFIG_CFLAGS -I$includedir"
+ ])
+ 
+ dnl Fix "localstatedir" variable if it hasn't been specified...
+@@ -103,9 +103,9 @@ AS_IF([test "$libdir" = "\${exec_prefix}/lib"], [
+     ])
+ ])
+ AS_IF([test "$libdir" = "/usr/lib"], [
+-    PKGCONFIG_LIBS="-lcups"
++    PKG_CONFIG_LIBS="-lcups"
+ ], [
+-    PKGCONFIG_LIBS="-L$libdir -lcups"
++    PKG_CONFIG_LIBS="-L$libdir -lcups"
+ ])
+ 
+ dnl Setup default locations...
+diff --git a/config-scripts/cups-dnssd.m4 b/config-scripts/cups-dnssd.m4
+index 2132414..a620ba1 100644
+--- a/config-scripts/cups-dnssd.m4
++++ b/config-scripts/cups-dnssd.m4
+@@ -63,7 +63,7 @@ AS_IF([test $with_dnssd = yes -o $with_dnssd = mdnsresponder], [
+ 		IPPFIND_BIN="ippfind"
+ 		IPPFIND_HTML="ippfind.html"
+ 		IPPFIND_MAN="ippfind.1"
+-		PKGCONFIG_LIBS_STATIC="$PKGCONFIG_LIBS_STATIC $DNSSDLIBS"
++		PKG_CONFIG_LIBS_STATIC="$PKG_CONFIG_LIBS_STATIC $DNSSDLIBS"
+ 	    ], [
+ 		AC_MSG_RESULT([no])
+ 		AS_IF([test $with_dnssd = mdnsresponder], [
+@@ -77,21 +77,21 @@ AS_IF([test $with_dnssd = yes -o $with_dnssd = mdnsresponder], [
+ 
+ dnl Then try Avahi...
+ AS_IF([test $with_dnssd = avahi -o $with_dnssd = yes], [
+-    AS_IF([test "x$PKGCONFIG" = x], [
++    AS_IF([test "x$PKG_CONFIG" = x], [
+ 	AS_IF([test $with_dnssd = avahi], [
+ 	    AC_MSG_ERROR([Avahi requires pkg-config.])
+ 	])
+     ], [
+ 	AC_MSG_CHECKING([for Avahi client])
+-	AS_IF([$PKGCONFIG --exists avahi-client], [
++	AS_IF([$PKG_CONFIG --exists avahi-client], [
+ 	    AC_MSG_RESULT([yes])
+-	    CFLAGS="$CFLAGS `$PKGCONFIG --cflags avahi-client`"
+-	    DNSSDLIBS="`$PKGCONFIG --libs avahi-client`"
++	    CFLAGS="$CFLAGS `$PKG_CONFIG --cflags avahi-client`"
++	    DNSSDLIBS="`$PKG_CONFIG --libs avahi-client`"
+ 	    DNSSD_BACKEND="dnssd"
+ 	    IPPFIND_BIN="ippfind"
+ 	    IPPFIND_HTML="ippfind.html"
+ 	    IPPFIND_MAN="ippfind.1"
+-		PKGCONFIG_REQUIRES="$PKGCONFIG_REQUIRES avahi-client"
++		PKG_CONFIG_REQUIRES="$PKG_CONFIG_REQUIRES avahi-client"
+ 	    AC_DEFINE([HAVE_AVAHI], [1], [Have Avahi client library?])
+ 	    AC_DEFINE([HAVE_DNSSD], [1], [Have DNS-SD support?])
+ 	], [
+diff --git a/config-scripts/cups-tls.m4 b/config-scripts/cups-tls.m4
+index 0d218a5..582a47f 100644
+--- a/config-scripts/cups-tls.m4
++++ b/config-scripts/cups-tls.m4
+@@ -51,15 +51,15 @@ AS_IF([test $with_tls = yes -o $with_tls = cdsa], [
+ dnl Then look for GNU TLS...
+ AS_IF([test $with_tls = yes -o $with_tls = gnutls], [
+     AC_PATH_TOOL([LIBGNUTLSCONFIG], [libgnutls-config])
+-    AS_IF([test "x$PKGCONFIG" != x], [
++    AS_IF([test "x$PKG_CONFIG" != x], [
+         AC_MSG_CHECKING([for gnutls package])
+-	AS_IF([$PKGCONFIG --exists gnutls], [
++	AS_IF([$PKG_CONFIG --exists gnutls], [
+ 	    AC_MSG_RESULT([yes])
+ 	    have_tls="1"
+ 	    with_tls="gnutls"
+-	    TLSLIBS="$($PKGCONFIG --libs gnutls)"
+-	    TLSFLAGS="$($PKGCONFIG --cflags gnutls)"
+-	    PKGCONFIG_REQUIRES="$PKGCONFIG_REQUIRES gnutls"
++	    TLSLIBS="$($PKG_CONFIG --libs gnutls)"
++	    TLSFLAGS="$($PKG_CONFIG --cflags gnutls)"
++	    PKG_CONFIG_REQUIRES="$PKG_CONFIG_REQUIRES gnutls"
+ 	    AC_DEFINE([HAVE_TLS], [1], [Do we support TLS?])
+ 	    AC_DEFINE([HAVE_GNUTLS], [1], [Do we have the GNU TLS library?])
+ 	], [
+@@ -71,7 +71,7 @@ AS_IF([test $with_tls = yes -o $with_tls = gnutls], [
+ 	with_tls="gnutls"
+ 	TLSLIBS="$($LIBGNUTLSCONFIG --libs)"
+ 	TLSFLAGS="$($LIBGNUTLSCONFIG --cflags)"
+-	PKGCONFIG_LIBS_STATIC="$PKGCONFIG_LIBS_STATIC $TLSLIBS"
++	PKG_CONFIG_LIBS_STATIC="$PKG_CONFIG_LIBS_STATIC $TLSLIBS"
+ 	AC_DEFINE([HAVE_TLS], [1], [Do we support TLS?])
+ 	AC_DEFINE([HAVE_GNUTLS], [1], [Do we have the GNU TLS library?])
+     ])
+diff --git a/configure b/configure
+index e56af1f..f6f4372 100755
+--- a/configure
++++ b/configure
+@@ -701,7 +701,7 @@ IPPTRANSFORM_BIN
+ ARFLAGS
+ LIBZ
+ INSTALL_GZIP
+-PKGCONFIG
++PKG_CONFIG
+ SED
+ RMDIR
+ RM
+@@ -5211,13 +5211,13 @@ if test -n "$ac_tool_prefix"; then
+ set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+ printf %s "checking for $ac_word... " >&6; }
+-if test ${ac_cv_path_PKGCONFIG+y}
++if test ${ac_cv_path_PKG_CONFIG+y}
+ then :
+   printf %s "(cached) " >&6
+ else $as_nop
+-  case $PKGCONFIG in
++  case $PKG_CONFIG in
+   [\\/]* | ?:[\\/]*)
+-  ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
++  ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
+   ;;
+   *)
+   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+@@ -5231,7 +5231,7 @@ do
+   esac
+     for ac_exec_ext in '' $ac_executable_extensions; do
+   if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+-    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
++    ac_cv_path_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext"
+     printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+     break 2
+   fi
+@@ -5242,10 +5242,10 @@ IFS=$as_save_IFS
+   ;;
+ esac
+ fi
+-PKGCONFIG=$ac_cv_path_PKGCONFIG
+-if test -n "$PKGCONFIG"; then
+-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+-printf "%s\n" "$PKGCONFIG" >&6; }
++PKG_CONFIG=$ac_cv_path_PKG_CONFIG
++if test -n "$PKG_CONFIG"; then
++  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
++printf "%s\n" "$PKG_CONFIG" >&6; }
+ else
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ printf "%s\n" "no" >&6; }
+@@ -5253,19 +5253,19 @@ fi
+ 
+ 
+ fi
+-if test -z "$ac_cv_path_PKGCONFIG"; then
+-  ac_pt_PKGCONFIG=$PKGCONFIG
++if test -z "$ac_cv_path_PKG_CONFIG"; then
++  ac_pt_PKG_CONFIG=$PKG_CONFIG
+   # Extract the first word of "pkg-config", so it can be a program name with args.
+ set dummy pkg-config; ac_word=$2
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+ printf %s "checking for $ac_word... " >&6; }
+-if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
++if test ${ac_cv_path_ac_pt_PKG_CONFIG+y}
+ then :
+   printf %s "(cached) " >&6
+ else $as_nop
+-  case $ac_pt_PKGCONFIG in
++  case $ac_pt_PKG_CONFIG in
+   [\\/]* | ?:[\\/]*)
+-  ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
++  ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
+   ;;
+   *)
+   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+@@ -5279,7 +5279,7 @@ do
+   esac
+     for ac_exec_ext in '' $ac_executable_extensions; do
+   if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
++    ac_cv_path_ac_pt_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext"
+     printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+     break 2
+   fi
+@@ -5290,17 +5290,17 @@ IFS=$as_save_IFS
+   ;;
+ esac
+ fi
+-ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
+-if test -n "$ac_pt_PKGCONFIG"; then
+-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+-printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
++ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
++if test -n "$ac_pt_PKG_CONFIG"; then
++  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
++printf "%s\n" "$ac_pt_PKG_CONFIG" >&6; }
+ else
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ printf "%s\n" "no" >&6; }
+ fi
+ 
+-  if test "x$ac_pt_PKGCONFIG" = x; then
+-    PKGCONFIG=""
++  if test "x$ac_pt_PKG_CONFIG" = x; then
++    PKG_CONFIG=""
+   else
+     case $cross_compiling:$ac_tool_warned in
+ yes:)
+@@ -5308,10 +5308,10 @@ yes:)
+ printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ ac_tool_warned=yes ;;
+ esac
+-    PKGCONFIG=$ac_pt_PKGCONFIG
++    PKG_CONFIG=$ac_pt_PKG_CONFIG
+   fi
+ else
+-  PKGCONFIG="$ac_cv_path_PKGCONFIG"
++  PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
+ fi
+ 
+ 
+@@ -6028,7 +6028,7 @@ fi
+ 
+ 
+ 
+-PKGCONFIG_LIBS_STATIC="$PKGCONFIG_LIBS_STATIC $LIBZ"
++PKG_CONFIG_LIBS_STATIC="$PKG_CONFIG_LIBS_STATIC $LIBZ"
+ 
+ case host_os_name in #(
+   darwin* | *bsd*) :
+@@ -8562,21 +8562,21 @@ else
+   LIBGNUTLSCONFIG="$ac_cv_path_LIBGNUTLSCONFIG"
+ fi
+ 
+-    if test "x$PKGCONFIG" != x
++    if test "x$PKG_CONFIG" != x
+ then :
+ 
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gnutls package" >&5
+ printf %s "checking for gnutls package... " >&6; }
+-	if $PKGCONFIG --exists gnutls
++	if $PKG_CONFIG --exists gnutls
+ then :
+ 
+ 	    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+ printf "%s\n" "yes" >&6; }
+ 	    have_tls="1"
+ 	    with_tls="gnutls"
+-	    TLSLIBS="$($PKGCONFIG --libs gnutls)"
+-	    TLSFLAGS="$($PKGCONFIG --cflags gnutls)"
+-	    PKGCONFIG_REQUIRES="$PKGCONFIG_REQUIRES gnutls"
++	    TLSLIBS="$($PKG_CONFIG --libs gnutls)"
++	    TLSFLAGS="$($PKG_CONFIG --cflags gnutls)"
++	    PKG_CONFIG_REQUIRES="$PKG_CONFIG_REQUIRES gnutls"
+ 
+ printf "%s\n" "#define HAVE_TLS 1" >>confdefs.h
+ 
+@@ -8599,7 +8599,7 @@ then :
+ 	with_tls="gnutls"
+ 	TLSLIBS="$($LIBGNUTLSCONFIG --libs)"
+ 	TLSFLAGS="$($LIBGNUTLSCONFIG --cflags)"
+-	PKGCONFIG_LIBS_STATIC="$PKGCONFIG_LIBS_STATIC $TLSLIBS"
++	PKG_CONFIG_LIBS_STATIC="$PKG_CONFIG_LIBS_STATIC $TLSLIBS"
+ 
+ printf "%s\n" "#define HAVE_TLS 1" >>confdefs.h
+ 
+@@ -9077,7 +9077,7 @@ printf "%s\n" "#define HAVE_MDNSRESPONDER 1" >>confdefs.h
+ 		IPPFIND_BIN="ippfind"
+ 		IPPFIND_HTML="ippfind.html"
+ 		IPPFIND_MAN="ippfind.1"
+-		PKGCONFIG_LIBS_STATIC="$PKGCONFIG_LIBS_STATIC $DNSSDLIBS"
++		PKG_CONFIG_LIBS_STATIC="$PKG_CONFIG_LIBS_STATIC $DNSSDLIBS"
+ 
+ else $as_nop
+ 
+@@ -9106,7 +9106,7 @@ fi
+ if test $with_dnssd = avahi -o $with_dnssd = yes
+ then :
+ 
+-    if test "x$PKGCONFIG" = x
++    if test "x$PKG_CONFIG" = x
+ then :
+ 
+ 	if test $with_dnssd = avahi
+@@ -9120,18 +9120,18 @@ else $as_nop
+ 
+ 	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for Avahi client" >&5
+ printf %s "checking for Avahi client... " >&6; }
+-	if $PKGCONFIG --exists avahi-client
++	if $PKG_CONFIG --exists avahi-client
+ then :
+ 
+ 	    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+ printf "%s\n" "yes" >&6; }
+-	    CFLAGS="$CFLAGS `$PKGCONFIG --cflags avahi-client`"
+-	    DNSSDLIBS="`$PKGCONFIG --libs avahi-client`"
++	    CFLAGS="$CFLAGS `$PKG_CONFIG --cflags avahi-client`"
++	    DNSSDLIBS="`$PKG_CONFIG --libs avahi-client`"
+ 	    DNSSD_BACKEND="dnssd"
+ 	    IPPFIND_BIN="ippfind"
+ 	    IPPFIND_HTML="ippfind.html"
+ 	    IPPFIND_MAN="ippfind.1"
+-		PKGCONFIG_REQUIRES="$PKGCONFIG_REQUIRES avahi-client"
++		PKG_CONFIG_REQUIRES="$PKG_CONFIG_REQUIRES avahi-client"
+ 
+ printf "%s\n" "#define HAVE_AVAHI 1" >>confdefs.h
+ 
+@@ -9254,7 +9254,7 @@ fi
+ if test "$includedir" != "/usr/include"
+ then :
+ 
+-    PKGCONFIG_CFLAGS="$PKGCONFIG_CFLAGS -I$includedir"
++    PKG_CONFIG_CFLAGS="$PKG_CONFIG_CFLAGS -I$includedir"
+ 
+ fi
+ 
+@@ -9337,11 +9337,11 @@ fi
+ if test "$libdir" = "/usr/lib"
+ then :
+ 
+-    PKGCONFIG_LIBS="-lcups"
++    PKG_CONFIG_LIBS="-lcups"
+ 
+ else $as_nop
+ 
+-    PKGCONFIG_LIBS="-L$libdir -lcups"
++    PKG_CONFIG_LIBS="-L$libdir -lcups"
+ 
+ fi
+ 
+-- 
+2.33.0.rc2.250.ged5fa647cd-goog
+
diff --git a/net-print/ippsample/ippsample-1.0.0-r1.ebuild b/net-print/ippsample/ippsample-1.0.0-r1.ebuild
deleted file mode 120000
index ec3f550..0000000
--- a/net-print/ippsample/ippsample-1.0.0-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-ippsample-1.0.0.ebuild
\ No newline at end of file
diff --git a/net-print/ippsample/ippsample-1.0.0.ebuild b/net-print/ippsample/ippsample-1.0.0.ebuild
deleted file mode 100644
index de3c40e..0000000
--- a/net-print/ippsample/ippsample-1.0.0.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="ippsample print testing utility"
-HOMEPAGE="https://github.com/istopwg/ippsample/blob/master/README.md"
-
-LICENSE="Apache-2.0"
-
-GIT_SHA1="ecfd14a4b6198a360e2b2ff48acc95ddde501019"
-SRC_URI="https://github.com/istopwg/ippsample/archive/${GIT_SHA1}.zip -> ${P}.zip"
-
-SLOT="0"
-IUSE="+ssl"
-KEYWORDS="*"
-
-CDEPEND="
-	ssl? (
-		>=dev-libs/libgcrypt-1.5.3:=
-		>=net-libs/gnutls-3.6.14:=
-	)
-"
-
-DEPEND="${CDEPEND}"
-
-RDEPEND="${CDEPEND}"
-
-PATCHES=(
-	"${FILESDIR}/ippsample-1.0.0-do-not-force-local-BinDir-directory.patch"
-	"${FILESDIR}/ippsample-1.0.0-use-PKG_CONFIG.patch"
-)
-
-S="${WORKDIR}/${PN}-${GIT_SHA1}"
-
-src_configure() {
-	tc-export PKG_CONFIG
-
-	local myeconfargs=(
-		--enable-gnutls \
-		--includedir=/usr/local/include
-	)
-	econf "${myeconfargs[@]}"
-}
-
-src_install() {
-	default
-
-	# Install ippserver test prerequisites
-	insinto /usr/local/share/ippsample
-	doins -r "${S}"/test
-}
-
-src_test() {
-	emake check
-}
diff --git a/net-print/ippsample/ippsample-1.1.0-r1.ebuild b/net-print/ippsample/ippsample-1.1.0-r1.ebuild
new file mode 120000
index 0000000..848c324
--- /dev/null
+++ b/net-print/ippsample/ippsample-1.1.0-r1.ebuild
@@ -0,0 +1 @@
+ippsample-1.1.0.ebuild
\ No newline at end of file
diff --git a/net-print/ippsample/ippsample-1.1.0.ebuild b/net-print/ippsample/ippsample-1.1.0.ebuild
new file mode 100644
index 0000000..efcae98
--- /dev/null
+++ b/net-print/ippsample/ippsample-1.1.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs cros-sanitizers
+
+DESCRIPTION="ippsample print testing utility"
+HOMEPAGE="https://github.com/istopwg/ippsample/blob/master/README.md"
+
+LICENSE="Apache-2.0"
+
+GIT_SHA1="df83ad39d54f05aab39dab013464bea3514034d6"
+SRC_URI="https://github.com/istopwg/ippsample/archive/${GIT_SHA1}.zip -> ${P}.zip"
+
+SLOT="0"
+IUSE="+ssl"
+KEYWORDS="*"
+
+CDEPEND="
+	ssl? (
+		>=dev-libs/libgcrypt-1.5.3:=
+		>=net-libs/gnutls-3.6.14:=
+	)
+"
+
+DEPEND="${CDEPEND}"
+
+RDEPEND="${CDEPEND}"
+
+PATCHES=(
+	"${FILESDIR}/ippsample-1.0.0-do-not-force-local-BinDir-directory.patch"
+	"${FILESDIR}/ippsample-1.1.0-use-PKG_CONFIG.patch"
+)
+
+S="${WORKDIR}/${PN}-${GIT_SHA1}"
+
+src_configure() {
+
+	sanitizers-setup-env
+
+	tc-export PKG_CONFIG
+
+	local myeconfargs=(
+		--with-tls=gnutls \
+		--includedir=/usr/local/include
+	)
+	econf "${myeconfargs[@]}"
+}
+
+src_install() {
+	default
+
+	# Install ippserver test prerequisites.
+	insinto /usr/local/share/ippsample
+	doins -r "${S}"/test
+	# Installing libcups should be left to net-print/cups (b/193691589).
+	rm "${D}/usr/$(get_libdir)/libcups.a" || die
+}
+
+src_test() {
+	emake check
+}
diff --git a/net-print/starcupsdrv/Manifest b/net-print/starcupsdrv/Manifest
index 95abca6..a34ebb1e2e 100644
--- a/net-print/starcupsdrv/Manifest
+++ b/net-print/starcupsdrv/Manifest
@@ -1 +1 @@
-DIST starcupsdrv-3.6.0a_linux_20170914.tar.gz 527463 SHA256 14a13805c920eaff79623e3557e6bec781be6f7d22d4f8c5c198d5c88733fbf3 SHA512 4663ff7f53913fd89e63f0d7270bab4bc5ab9dc8e1f39408261677c468680d74103326db7d289de8237581a3a0a75c5588a3daeed0cc6f0d8467b8d532f9db68 WHIRLPOOL 5a1a87433cfcb620db60f8e625c8049c9727e3afd988ab4269fdb944c0a55847616f67000c2932f3afbb10f16b3079c1a2c033f374c7d146cb9cc832b44b9757
+DIST starcupsdrv-3.11.0_linux.tar.gz 554385 BLAKE2B 78e8d0a0548bd9afc8cec9196f124107a7fa2b410a3ca6c33d3e853f4b4364b0e8e1e02ca6318d5dd9df83fa9c8582b6ad0b81714d061bedccadb47246595cd1 SHA512 3b2096f3c1154ed9db60b4e11498b7041c8d4294d6f7b9ba0596914a7586e8889f1e9cee2392ae4ec4731023e39acc0a02fcfcf8e7d124327b2c6900d844ba80
diff --git a/net-print/starcupsdrv/files/starcupsdrv-3.6.0a-build-fix.patch b/net-print/starcupsdrv/files/starcupsdrv-3.6.0a-build-fix.patch
deleted file mode 100644
index 18034a2..0000000
--- a/net-print/starcupsdrv/files/starcupsdrv-3.6.0a-build-fix.patch
+++ /dev/null
@@ -1,152 +0,0 @@
-Fix ebuild file and src code for cross compilation.
-
-1. Fix dependency check (use compiler preprocessor instead of checking path existence).
-2. Use flags like $(CC), etc. for cross compilation.
-3. Remove inline for clang linker to find definition (compiler unfolds leaf function as optimizations).
-4. Allow parallel compilation.
-
---- a/makefile
-+++ b/makefile
-@@ -11,11 +11,11 @@ LIBS=-ldl
- endif
- 
- define dependencies
--@if [ ! -e /usr/include/cups ]; then echo "CUPS headers not available - exiting"; exit 1; fi
-+@if ! echo '#include <cups/cups.h>' | $(CC) $(CPPFLAGS) -E ->/dev/null 2>&1; then echo "CUPS headers not available - exiting"; exit 1; fi
- endef
- 
- define init
--@if [ ! -e bin ]; then echo "mkdir bin"; mkdir bin; fi
-+@if [ ! -e bin ]; then echo "mkdir bin"; mkdir -p bin; fi
- endef
- 
- define sweep
-@@ -66,16 +66,17 @@ rastertostar: rastertostar.c
- 	$(dependencies)
- 	$(init)
- 	# compiling rastertostar filter
--	gcc -Wl,-rpath,/usr/lib -Wall -fPIC -O2 $(DEFS) -o bin/rastertostar src/rastertostar.c $(LIBS)
-+	$(CC) -Wall $(DEFS) $(CPPFLAGS) $(CFLAGS) -fPIC $(LDFLAGS) -o bin/rastertostar src/rastertostar.c $(LIBS)
- 
- rastertostarlm: rastertostarlm.c
- 	$(dependencies)
- 	$(init)
- 	# compiling rastertostarlm filter
--	gcc -Wl,-rpath,/usr/lib -Wall -fPIC -O2 $(DEFS) -o bin/rastertostarlm src/rastertostarlm.c $(LIBS)
-+	$(CC) -Wall $(DEFS) $(CPPFLAGS) $(CFLAGS) -fPIC $(LDFLAGS) -o bin/rastertostarlm src/rastertostarlm.c $(LIBS)
- 
- 
- $(ppds): %.ppd.gz: %.ppd
-+	$(init)
- 	# gzip ppd file
- 	gzip -c $< >> bin/$@
- 
---- a/src/rastertostar.c
-+++ b/src/rastertostar.c
-@@ -636,7 +636,7 @@ static const struct command endJobCommand =
- static const struct command yRelCommand =
- {9,(char[9]){0x1b,'*','r','Y','x','x','x','x',0x00}};
- 
--inline void debugPrintSettings(struct settings_ * settings)
-+void debugPrintSettings(struct settings_ * settings)
- {
-   fprintf(stderr, "DEBUG: pageType = %d\n"    , settings->pageType);
-   fprintf(stderr, "DEBUG: focusArea = %d\n"   , settings->focusArea);
-@@ -670,7 +670,7 @@ inline void debugPrintSettings(struct settings_ * settings)
-   fprintf(stderr, "DEBUG: dataTreatmentRecoverFromError = %d\n", settings->dataTreatmentRecoverFromError);
- }
- 
--inline void outputCommand(struct command output)
-+void outputCommand(struct command output)
- {
-     int i = 0;
- 
-@@ -680,17 +680,17 @@ inline void outputCommand(struct command output)
-     }
- }
- 
--inline void outputAsciiEncodedLength(int length)
-+void outputAsciiEncodedLength(int length)
- {
-     printf("%d",length);
- }
- 
--inline void outputNullTerminator()
-+void outputNullTerminator()
- {
-     putchar(0x00);
- }
- 
--inline int getOptionChoiceIndex(const char * choiceName, ppd_file_t * ppd)
-+int getOptionChoiceIndex(const char * choiceName, ppd_file_t * ppd)
- {
-     ppd_choice_t * choice;
-     ppd_option_t * option;
-@@ -705,7 +705,7 @@ inline int getOptionChoiceIndex(const char * choiceName, ppd_file_t * ppd)
-     return atoi(choice->choice);
- }
- 
--inline void getPageWidthPageHeight(ppd_file_t * ppd, struct settings_ * settings)
-+void getPageWidthPageHeight(ppd_file_t * ppd, struct settings_ * settings)
- {
-     ppd_choice_t * choice;
-     ppd_option_t * option;
-@@ -819,7 +819,7 @@ inline void getPageWidthPageHeight(ppd_file_t * ppd, struct settings_ * settings
-     }
- }
- 
--inline void initializeSettings(char * commandLineOptionSettings, struct settings_ * settings)
-+void initializeSettings(char * commandLineOptionSettings, struct settings_ * settings)
- {
-     ppd_file_t *    ppd         = NULL;
-     cups_option_t * options     = NULL;
---- a/src/rastertostarlm.c
-+++ b/src/rastertostarlm.c
-@@ -447,7 +447,7 @@ static const struct command docCutTypeCommand [4] =
- static const struct command yRelCommand =
- {3,(char[3]){0x1b,'I','x'}};
- 
--inline void outputCommand(struct command output)
-+void outputCommand(struct command output)
- {
-     int i = 0;
- 
-@@ -457,17 +457,17 @@ inline void outputCommand(struct command output)
-     }
- }
- 
--inline void outputAsciiEncodedLength(int length)
-+void outputAsciiEncodedLength(int length)
- {
-     printf("%d",length);
- }
- 
--inline void outputNullTerminator()
-+void outputNullTerminator()
- {
-     putchar(0x00);
- }
- 
--inline int getOptionChoiceIndex(const char * choiceName, ppd_file_t * ppd)
-+int getOptionChoiceIndex(const char * choiceName, ppd_file_t * ppd)
- {
-     ppd_choice_t * choice;
-     ppd_option_t * option;
-@@ -484,7 +484,7 @@ inline int getOptionChoiceIndex(const char * choiceName, ppd_file_t * ppd)
-     return atoi(choice->choice);
- }
- 
--inline void getPageWidthPageHeight(ppd_file_t * ppd, struct settings_ * settings)
-+void getPageWidthPageHeight(ppd_file_t * ppd, struct settings_ * settings)
- {
-     ppd_choice_t * choice;
-     ppd_option_t * option;
-@@ -598,7 +598,7 @@ inline void getPageWidthPageHeight(ppd_file_t * ppd, struct settings_ * settings
-     }
- }
- 
--inline void initializeSettings(char * commandLineOptionSettings, struct settings_ * settings)
-+void initializeSettings(char * commandLineOptionSettings, struct settings_ * settings)
- {
-     ppd_file_t *    ppd         = NULL;
-     cups_option_t * options     = NULL;
diff --git a/net-print/starcupsdrv/starcupsdrv-3.11.0-r1.ebuild b/net-print/starcupsdrv/starcupsdrv-3.11.0-r1.ebuild
new file mode 120000
index 0000000..26064e3
--- /dev/null
+++ b/net-print/starcupsdrv/starcupsdrv-3.11.0-r1.ebuild
@@ -0,0 +1 @@
+starcupsdrv-3.11.0.ebuild
\ No newline at end of file
diff --git a/net-print/starcupsdrv/starcupsdrv-3.11.0.ebuild b/net-print/starcupsdrv/starcupsdrv-3.11.0.ebuild
new file mode 100644
index 0000000..c533e65
--- /dev/null
+++ b/net-print/starcupsdrv/starcupsdrv-3.11.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils cros-sanitizers
+
+DESCRIPTION="CUPS filter and PPD files for Star Micronics printers"
+HOMEPAGE="http://www.starmicronics.com"
+SRC_URI="http://www.starmicronics.com/support/DriverFolder/drvr/starcupsdrv-${PV}_linux.tar.gz -> starcupsdrv-${PV}_linux.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND="net-print/cups:="
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+	default
+	unpack ./${PN}-${PV%_*}_linux/SourceCode/starcupsdrv-src-${PV%_*}.tar.gz
+	mv starcupsdrv starcupsdrv-${PV} || die
+}
+
+src_prepare() {
+	epatch_user
+}
+
+src_configure() {
+	sanitizers-setup-env
+	default
+}
+
+src_install() {
+	exeinto "$(${SYSROOT}/usr/bin/cups-config --serverbin)/filter"
+	doexe install/rastertostar
+	doexe install/rastertostarm
+	doexe install/rastertostarlm
+}
diff --git a/net-print/starcupsdrv/starcupsdrv-3.6.0a_pre20170914-r3.ebuild b/net-print/starcupsdrv/starcupsdrv-3.6.0a_pre20170914-r3.ebuild
deleted file mode 120000
index a03cf5e..0000000
--- a/net-print/starcupsdrv/starcupsdrv-3.6.0a_pre20170914-r3.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-starcupsdrv-3.6.0a_pre20170914.ebuild
\ No newline at end of file
diff --git a/net-print/starcupsdrv/starcupsdrv-3.6.0a_pre20170914.ebuild b/net-print/starcupsdrv/starcupsdrv-3.6.0a_pre20170914.ebuild
deleted file mode 100644
index 895f470..0000000
--- a/net-print/starcupsdrv/starcupsdrv-3.6.0a_pre20170914.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils cros-sanitizers
-
-DESCRIPTION="CUPS filter and PPD files for Star Micronics printers"
-HOMEPAGE="http://www.starmicronics.com"
-SRC_URI="http://www.starmicronics.com/support/DriverFolder/drvr/starcupsdrv-${PV%_*}_linux_${PV#*_pre}.tar.gz -> starcupsdrv-${PV%_*}_linux_${PV#*_pre}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="net-print/cups:="
-RDEPEND="${DEPEND}"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-3.6.0a-build-fix.patch"
-)
-
-src_unpack() {
-	default
-	unpack ./${PN}-${PV%_*}_linux/SourceCode/starcupsdrv-src-${PV%_*}.tar.gz
-	mv starcupsdrv starcupsdrv-${PV} || die
-}
-
-src_prepare() {
-	epatch "${PATCHES[@]}"
-	epatch_user
-}
-
-src_configure() {
-	sanitizers-setup-env
-	default
-}
-
-src_install() {
-	exeinto "$(${SYSROOT}/usr/bin/cups-config --serverbin)/filter"
-	doexe install/rastertostar
-	doexe install/rastertostarlm
-}
diff --git a/net-wireless/bluez/bluez-5.54-r597.ebuild b/net-wireless/bluez/bluez-5.54-r597.ebuild
deleted file mode 100644
index ef087d6..0000000
--- a/net-wireless/bluez/bluez-5.54-r597.ebuild
+++ /dev/null
@@ -1,176 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-wireless/bluez/bluez-4.99.ebuild,v 1.7 2012/04/15 16:53:41 maekke Exp $
-
-EAPI="7"
-# To support choosing between current and next versions, two cros-workon
-# projects are declared. During emerge, both project sources are copied to
-# their respective destination directories, and one is chosen as the
-# "working directory" in src_unpack() below based on bluez-next USE flag.
-CROS_WORKON_COMMIT=("b61c0155e4f07a20838566177dc863ec5aae91d0" "b61c0155e4f07a20838566177dc863ec5aae91d0" "352cee4717fb031edb55ecf98e03a599c4439ddd")
-CROS_WORKON_TREE=("f6a13bc35a4fee801b0556bde9b43556aa7b6fce" "f6a13bc35a4fee801b0556bde9b43556aa7b6fce" "222eadaf67220ca68aa38117b584ffa2075edf43")
-CROS_WORKON_LOCALNAME=("bluez/current" "bluez/next" "bluez/upstream")
-CROS_WORKON_PROJECT=("chromiumos/third_party/bluez" "chromiumos/third_party/bluez" "chromiumos/third_party/bluez")
-CROS_WORKON_OPTIONAL_CHECKOUT=(
-	"use !bluez-next && use !bluez-upstream"
-	"use bluez-next"
-	"use bluez-upstream"
-)
-CROS_WORKON_DESTDIR=("${S}/bluez/current" "${S}/bluez/next" "${S}/bluez/upstream")
-CROS_WORKON_EGIT_BRANCH=("chromeos-5.54" "chromeos-5.54" "upstream/master")
-
-inherit autotools multilib eutils systemd udev user libchrome cros-fuzzer cros-sanitizers cros-workon flag-o-matic tmpfiles
-
-DESCRIPTION="Bluetooth Tools and System Daemons for Linux"
-HOMEPAGE="http://www.bluez.org/"
-#SRC_URI not defined because we get our source locally
-
-LICENSE="GPL-2 LGPL-2.1"
-KEYWORDS="*"
-IUSE="asan bluez-next bluez-upstream cups debug fuzzer hid2hci systemd readline bt_deprecated_tools"
-REQUIRED_USE="?? ( bluez-next bluez-upstream )"
-
-CDEPEND="
-	>=dev-libs/glib-2.14:2=
-	app-arch/bzip2:=
-	sys-apps/dbus:=
-	virtual/libudev:=
-	cups? ( net-print/cups:= )
-	readline? ( sys-libs/readline:= )
-	>=chromeos-base/metrics-0.0.1-r3152:=
-"
-DEPEND="${CDEPEND}"
-
-RDEPEND="${CDEPEND}
-	!net-wireless/bluez-hcidump
-	!net-wireless/bluez-libs
-	!net-wireless/bluez-test
-	!net-wireless/bluez-utils
-"
-BDEPEND="${CDEPEND}
-	dev-util/pkgconfig:=
-	sys-devel/flex:=
-"
-
-PATCHES=(
-	"${FILESDIR}"/bluez-hid2hci.patch
-)
-
-DOCS=( AUTHORS ChangeLog README )
-
-src_unpack() {
-	cros-workon_src_unpack
-
-	# Setting S has the effect of changing the temporary build directory
-	# here onwards. Choose "bluez/next" or "bluez/current" subdir depending on
-	# the USE flag.
-	local checkout="bluez/$(usex bluez-next next $(usex bluez-upstream upstream current))"
-	S+="/${checkout}"
-	local version="$("${FILESDIR}"/chromeos-version.sh "${S}")"
-	einfo "Using checkout ${checkout} (version ${version})"
-}
-
-src_prepare() {
-	default
-
-	eautoreconf
-
-	if use cups; then
-		sed -i \
-			-e "s:cupsdir = \$(libdir)/cups:cupsdir = $(cups-config --serverbin):" \
-			Makefile.tools Makefile.in || die
-	fi
-}
-
-src_configure() {
-	sanitizers-setup-env
-	# Workaround a global-buffer-overflow warning in asan build.
-	# See crbug.com/748216 for details.
-	if use asan; then
-		append-flags '-mllvm -asan-globals=0'
-	fi
-
-	use readline || export ac_cv_header_readline_readline_h=no
-
-	export BASE_VER="$(libchrome_ver)"
-	econf \
-		--enable-tools \
-		--localstatedir=/var \
-		$(use_enable cups) \
-		--enable-datafiles \
-		$(use_enable debug) \
-		--disable-test \
-		--enable-library \
-		--disable-systemd \
-		--disable-obex \
-		--enable-sixaxis \
-		--disable-network \
-		--disable-datafiles \
-		$(use_enable fuzzer) \
-		$(use_enable hid2hci) \
-		$(use_enable bt_deprecated_tools deprecated)
-}
-
-src_test() {
-	# TODO(armansito): Run unit tests for non-x86 platforms.
-	[[ "${ARCH}" == "x86" || "${ARCH}" == "amd64" ]] && \
-		emake check VERBOSE=1
-}
-
-src_install() {
-	default
-
-	dobin tools/btmgmt tools/btgatt-client tools/btgatt-server
-
-	# Install scripts
-	dobin "${FILESDIR}/dbus_send_blutooth_class.awk"
-	dobin "${FILESDIR}/get_bluetooth_device_class.sh"
-	dobin "${FILESDIR}/start_bluetoothd.sh"
-	dobin "${FILESDIR}/start_bluetoothlog.sh"
-
-	# Install init scripts.
-	if use systemd; then
-		systemd_dounit "${FILESDIR}/bluetoothd.service"
-		systemd_enable_service system-services.target bluetoothd.service
-		systemd_dotmpfilesd "${FILESDIR}/bluetoothd-directories.conf"
-	else
-		insinto /etc/init
-		newins "${FILESDIR}/${PN}-upstart.conf" bluetoothd.conf
-		newins "${FILESDIR}/bluetoothlog-upstart.conf" bluetoothlog.conf
-	fi
-
-	# Install tmpfiles.d config
-	dotmpfiles "${FILESDIR}/bluetoothlog-directories.conf"
-
-	# Install D-Bus config
-	insinto /etc/dbus-1/system.d
-	doins "${FILESDIR}/org.bluez.conf"
-
-	# Install udev files
-	udev_dorules "${FILESDIR}/99-uhid.rules"
-	udev_dorules "${FILESDIR}/99-ps3-gamepad.rules"
-	udev_dorules "${FILESDIR}/99-bluetooth-quirks.rules"
-
-	# Install the config files.
-	insinto "/etc/bluetooth"
-	doins "${FILESDIR}/main.conf"
-	doins "${FILESDIR}/input.conf"
-
-	# Install the fuzzer binaries.
-	fuzzer_install "${S}/fuzzer/OWNERS" fuzzer/bluez_pattern_match_fuzzer
-	fuzzer_install "${S}/fuzzer/OWNERS" fuzzer/bluez_pattern_new_fuzzer
-
-	# We don't preserve /var/lib in images, so nuke anything we preseed.
-	rm -rf "${D}"/var/lib/bluetooth
-
-	rm "${D}/lib/udev/rules.d/97-bluetooth.rules"
-
-	find "${D}" -name "*.la" -delete
-}
-
-pkg_postinst() {
-	enewuser "bluetooth" "218"
-	enewgroup "bluetooth" "218"
-
-	udev_reload
-}
diff --git a/net-wireless/bluez/bluez-5.54-r629.ebuild b/net-wireless/bluez/bluez-5.54-r629.ebuild
new file mode 100644
index 0000000..b8eb5e5
--- /dev/null
+++ b/net-wireless/bluez/bluez-5.54-r629.ebuild
@@ -0,0 +1,180 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-wireless/bluez/bluez-4.99.ebuild,v 1.7 2012/04/15 16:53:41 maekke Exp $
+
+EAPI="7"
+# To support choosing between current and next versions, two cros-workon
+# projects are declared. During emerge, both project sources are copied to
+# their respective destination directories, and one is chosen as the
+# "working directory" in src_unpack() below based on bluez-next USE flag.
+CROS_WORKON_COMMIT=("2b858153ee09504eddd2538287f0c370c31f27b9" "2b858153ee09504eddd2538287f0c370c31f27b9" "6bbb22a096f98b9619e0604bd98326d9f4adcb17")
+CROS_WORKON_TREE=("9df2d30d041ead9d18eaff9efdecbd33d3ffb58c" "9df2d30d041ead9d18eaff9efdecbd33d3ffb58c" "eec8a54ac20960395916046cad286fd05b83d10e")
+CROS_WORKON_LOCALNAME=("bluez/current" "bluez/next" "bluez/upstream")
+CROS_WORKON_PROJECT=("chromiumos/third_party/bluez" "chromiumos/third_party/bluez" "chromiumos/third_party/bluez")
+CROS_WORKON_OPTIONAL_CHECKOUT=(
+	"use !bluez-next && use !bluez-upstream"
+	"use bluez-next"
+	"use bluez-upstream"
+)
+CROS_WORKON_DESTDIR=("${S}/bluez/current" "${S}/bluez/next" "${S}/bluez/upstream")
+CROS_WORKON_EGIT_BRANCH=("chromeos-5.54" "chromeos-5.54" "upstream/master")
+
+inherit autotools multilib eutils systemd udev user libchrome cros-fuzzer cros-sanitizers cros-workon flag-o-matic tmpfiles
+
+DESCRIPTION="Bluetooth Tools and System Daemons for Linux"
+HOMEPAGE="http://www.bluez.org/"
+#SRC_URI not defined because we get our source locally
+
+LICENSE="GPL-2 LGPL-2.1"
+KEYWORDS="*"
+IUSE="asan bluez-next bluez-upstream cups debug fuzzer hid2hci systemd readline bt_deprecated_tools"
+REQUIRED_USE="?? ( bluez-next bluez-upstream )"
+
+CDEPEND="
+	>=dev-libs/glib-2.14:2=
+	app-arch/bzip2:=
+	sys-apps/dbus:=
+	virtual/libudev:=
+	cups? ( net-print/cups:= )
+	readline? ( sys-libs/readline:= )
+	>=chromeos-base/metrics-0.0.1-r3152:=
+"
+DEPEND="${CDEPEND}"
+
+RDEPEND="${CDEPEND}
+	!net-wireless/bluez-hcidump
+	!net-wireless/bluez-libs
+	!net-wireless/bluez-test
+	!net-wireless/bluez-utils
+"
+BDEPEND="${CDEPEND}
+	dev-util/pkgconfig:=
+	sys-devel/flex:=
+"
+
+PATCHES=(
+	"${FILESDIR}"/bluez-hid2hci.patch
+)
+
+DOCS=( AUTHORS ChangeLog README )
+
+src_unpack() {
+	cros-workon_src_unpack
+
+	# Setting S has the effect of changing the temporary build directory
+	# here onwards. Choose "bluez/next" or "bluez/current" subdir depending on
+	# the USE flag.
+	local checkout="bluez/$(usex bluez-next next $(usex bluez-upstream upstream current))"
+	S+="/${checkout}"
+	local version="$("${FILESDIR}"/chromeos-version.sh "${S}")"
+	einfo "Using checkout ${checkout} (version ${version})"
+}
+
+src_prepare() {
+	default
+
+	eautoreconf
+
+	if use cups; then
+		sed -i \
+			-e "s:cupsdir = \$(libdir)/cups:cupsdir = $(cups-config --serverbin):" \
+			Makefile.tools Makefile.in || die
+	fi
+}
+
+src_configure() {
+	sanitizers-setup-env
+	# Workaround a global-buffer-overflow warning in asan build.
+	# See crbug.com/748216 for details.
+	if use asan; then
+		append-flags '-mllvm -asan-globals=0'
+	fi
+
+	use readline || export ac_cv_header_readline_readline_h=no
+
+	export BASE_VER="$(libchrome_ver)"
+	econf \
+		--enable-tools \
+		--localstatedir=/var \
+		$(use_enable cups) \
+		--enable-datafiles \
+		$(use_enable debug) \
+		--disable-test \
+		--enable-library \
+		--disable-systemd \
+		--disable-obex \
+		--enable-sixaxis \
+		--disable-network \
+		--disable-datafiles \
+		--enable-admin \
+		$(use_enable fuzzer) \
+		$(use_enable hid2hci) \
+		$(use_enable bt_deprecated_tools deprecated)
+}
+
+src_test() {
+	# TODO(armansito): Run unit tests for non-x86 platforms.
+	[[ "${ARCH}" == "x86" || "${ARCH}" == "amd64" ]] && \
+		emake check VERBOSE=1
+}
+
+src_install() {
+	default
+
+	dobin tools/btmgmt tools/btgatt-client tools/btgatt-server
+
+	# Install scripts
+	dobin "${FILESDIR}/dbus_send_blutooth_class.awk"
+	dobin "${FILESDIR}/get_bluetooth_device_class.sh"
+	dobin "${FILESDIR}/start_bluetoothd.sh"
+	dobin "${FILESDIR}/start_bluetoothlog.sh"
+
+	# Install init scripts.
+	if use systemd; then
+		systemd_dounit "${FILESDIR}/bluetoothd.service"
+		systemd_enable_service system-services.target bluetoothd.service
+		systemd_dotmpfilesd "${FILESDIR}/bluetoothd-directories.conf"
+	else
+		insinto /etc/init
+		newins "${FILESDIR}/${PN}-upstart.conf" bluetoothd.conf
+		newins "${FILESDIR}/bluetoothlog-upstart.conf" bluetoothlog.conf
+	fi
+
+	# Install tmpfiles.d config
+	dotmpfiles "${FILESDIR}/bluetoothlog-directories.conf"
+
+	# Install D-Bus config
+	insinto /etc/dbus-1/system.d
+	doins "${FILESDIR}/org.bluez.conf"
+
+	# Install udev files
+	udev_dorules "${FILESDIR}/99-uhid.rules"
+	udev_dorules "${FILESDIR}/99-ps3-gamepad.rules"
+	udev_dorules "${FILESDIR}/99-bluetooth-quirks.rules"
+
+	# Install the config files.
+	insinto "/etc/bluetooth"
+	doins "${FILESDIR}/main.conf"
+	doins "${FILESDIR}/input.conf"
+
+	# Install the fuzzer binaries.
+	local fuzzer_component_id="167317"
+	fuzzer_install "${S}/fuzzer/OWNERS" fuzzer/bluez_pattern_match_fuzzer \
+		--comp "${fuzzer_component_id}"
+	fuzzer_install "${S}/fuzzer/OWNERS" fuzzer/bluez_pattern_new_fuzzer \
+		--comp "${fuzzer_component_id}"
+
+	# We don't preserve /var/lib in images, so nuke anything we preseed.
+	rm -rf "${D}"/var/lib/bluetooth
+
+	rm "${D}/lib/udev/rules.d/97-bluetooth.rules"
+
+	find "${D}" -name "*.la" -delete
+}
+
+pkg_postinst() {
+	enewuser "bluetooth" "218"
+	enewgroup "bluetooth" "218"
+
+	udev_reload
+}
diff --git a/net-wireless/bluez/bluez-9999.ebuild b/net-wireless/bluez/bluez-9999.ebuild
index 328fde2..1bd8089 100644
--- a/net-wireless/bluez/bluez-9999.ebuild
+++ b/net-wireless/bluez/bluez-9999.ebuild
@@ -104,6 +104,7 @@
 		--enable-sixaxis \
 		--disable-network \
 		--disable-datafiles \
+		--enable-admin \
 		$(use_enable fuzzer) \
 		$(use_enable hid2hci) \
 		$(use_enable bt_deprecated_tools deprecated)
@@ -155,8 +156,11 @@
 	doins "${FILESDIR}/input.conf"
 
 	# Install the fuzzer binaries.
-	fuzzer_install "${S}/fuzzer/OWNERS" fuzzer/bluez_pattern_match_fuzzer
-	fuzzer_install "${S}/fuzzer/OWNERS" fuzzer/bluez_pattern_new_fuzzer
+	local fuzzer_component_id="167317"
+	fuzzer_install "${S}/fuzzer/OWNERS" fuzzer/bluez_pattern_match_fuzzer \
+		--comp "${fuzzer_component_id}"
+	fuzzer_install "${S}/fuzzer/OWNERS" fuzzer/bluez_pattern_new_fuzzer \
+		--comp "${fuzzer_component_id}"
 
 	# We don't preserve /var/lib in images, so nuke anything we preseed.
 	rm -rf "${D}"/var/lib/bluetooth
diff --git a/net-wireless/bluez/files/main.conf b/net-wireless/bluez/files/main.conf
index f80f7ee..b51b9d9 100644
--- a/net-wireless/bluez/files/main.conf
+++ b/net-wireless/bluez/files/main.conf
@@ -97,6 +97,18 @@
 # profile is connected. Defaults to true.
 #RefreshDiscovery = true
 
+# Enables experimental features and interfaces, alternatively a list of UUIDs
+# can be given.
+# Possible values: true,false,<UUID List>
+# Possible UUIDS:
+# d4992530-b9ec-469f-ab01-6c481c47da1c (BlueZ Experimental Debug)
+# 671b10b5-42c0-4696-9227-eb28d1b049d6 (BlueZ Experimental Simultaneous Central and Peripheral)
+# 15c0a148-c273-11ea-b3de-0242ac130004 (BlueZ Experimental LL privacy)
+# 330859bc-7506-492d-9370-9a6f0614037f (BlueZ Experimental Bluetooth Quality Report)
+# a6695ace-ee7f-4fb9-881a-5fac66c629af (BlueZ Experimental Offload Codecs)
+# Defaults to false.
+Experimental = d4992530-b9ec-469f-ab01-6c481c47da1c,671b10b5-42c0-4696-9227-eb28d1b049d6,330859bc-7506-492d-9370-9a6f0614037f
+
 [BR]
 # The following values are used to load default adapter parameters for BR/EDR.
 # BlueZ loads the values into the kernel before the adapter is powered if the
@@ -108,8 +120,8 @@
 
 # BR/EDR Page scan activity configuration
 PageScanType=1
-#PageScanInterval=
-#PageScanWindow=
+PageScanInterval=1024
+PageScanWindow=18
 
 # BR/EDR Inquiry scan activity configuration
 #InquiryScanType=
@@ -172,8 +184,8 @@
 
 # LE default connection parameters.  These values are superceeded by any
 # specific values provided via the Load Connection Parameters interface
-#MinConnectionInterval=
-#MaxConnectionInterval=
+MinConnectionInterval=6
+MaxConnectionInterval=16
 #ConnectionLatency=
 ConnectionSupervisionTimeout=200
 Autoconnecttimeout=5000
diff --git a/net-wireless/bluez/files/start_bluetoothd.sh b/net-wireless/bluez/files/start_bluetoothd.sh
index 9ff24aa..892d5f4 100644
--- a/net-wireless/bluez/files/start_bluetoothd.sh
+++ b/net-wireless/bluez/files/start_bluetoothd.sh
@@ -27,4 +27,4 @@
 exec /sbin/minijail0 -u bluetooth -g bluetooth -G \
   -c 3500 -n -- \
   /usr/libexec/bluetooth/bluetoothd "${BLUETOOTH_DAEMON_OPTION}" --nodetach \
-  "${config_file_param}" --experimental
+  "${config_file_param}"
diff --git a/net-wireless/floss/OWNERS b/net-wireless/floss/OWNERS
new file mode 100644
index 0000000..b138a06
--- /dev/null
+++ b/net-wireless/floss/OWNERS
@@ -0,0 +1,4 @@
+abhishekpandit@chromium.org
+alainm@chromium.org
+mcchou@chromium.org
+sonnysasaka@chromium.org
diff --git a/net-wireless/floss/files/chromeos-version.sh b/net-wireless/floss/files/chromeos-version.sh
new file mode 100644
index 0000000..c6667c0
--- /dev/null
+++ b/net-wireless/floss/files/chromeos-version.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+# 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.
+
+echo 0.0.2
diff --git a/net-wireless/floss/files/dbus/org.chromium.bluetooth.conf b/net-wireless/floss/files/dbus/org.chromium.bluetooth.conf
new file mode 100644
index 0000000..b357631
--- /dev/null
+++ b/net-wireless/floss/files/dbus/org.chromium.bluetooth.conf
@@ -0,0 +1,70 @@
+<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+ "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+<!--
+  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.
+-->
+
+<busconfig>
+  <!-- ../system.conf have denied everything, so we just punch some holes -->
+
+  <!-- Allow btclient to run as root -->
+  <policy user="root">
+    <allow send_destination="org.chromium.bluetooth"/>
+    <allow send_destination="org.chromium.bluetooth.Manager"/>
+    <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
+    <allow send_interface="org.freedesktop.DBus.Properties"/>
+  </policy>
+
+  <policy user="bluetooth">
+    <!-- Manager policy -->
+    <allow own="org.chromium.bluetooth.Manager"/>
+    <allow send_destination="org.chromium.bluetooth.Manager"/>
+    <allow send_interface="org.chromium.bluetooth.Manager"/>
+    <allow send_interface="org.chromium.bluetooth.ManagerCallback"/>
+    <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
+    <allow send_interface="org.freedesktop.DBus.Properties"/>
+
+    <allow send_destination="com.ubuntu.Upstart"
+           send_interface="com.ubuntu.Upstart0_6.Job"
+           send_path="/com/ubuntu/Upstart/jobs/btadapterd"/>
+
+    <allow send_destination="com.ubuntu.Upstart"
+           send_interface="com.ubuntu.Upstart0_6.Job"
+           send_path="/com/ubuntu/Upstart/jobs/bluetoothd"/>
+
+    <!-- Adapter policy -->
+    <allow own="org.chromium.bluetooth" />
+    <allow send_destination="org.chromium.bluetooth"/>
+    <allow send_interface="org.chromium.bluetooth.Bluetooth"/>
+    <allow send_interface="org.chromium.bluetooth.BluetoothCallback"/>
+    <allow send_interface="org.chromium.bluetooth.BluetoothConnectionCallback"/>
+  </policy>
+
+  <policy user="chronos">
+    <allow send_destination="org.chromium.bluetooth"/>
+    <allow send_destination="org.chromium.bluetooth.Manager"/>
+
+    <allow send_interface="org.chromium.bluetooth.Bluetooth"/>
+    <allow send_interface="org.chromium.bluetooth.BluetoothCallback"/>
+    <allow send_interface="org.chromium.bluetooth.BluetoothConnectionCallback"/>
+
+    <allow send_interface="org.chromium.bluetooth.Manager"/>
+    <allow send_interface="org.chromium.bluetooth.ManagerCallback"/>
+
+    <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
+    <allow send_interface="org.freedesktop.DBus.Properties"/>
+
+  </policy>
+
+  <policy user="cras">
+    <allow send_destination="org.chromium.bluetooth"/>
+    <allow send_destination="org.chromium.bluetooth.Manager"/>
+  </policy>
+
+  <policy context="default">
+    <deny send_destination="org.chromium.bluetooth"/>
+    <deny send_destination="org.chromium.bluetooth.Manager"/>
+  </policy>
+</busconfig>
diff --git a/net-wireless/floss/files/tmpfiles.d/floss.conf b/net-wireless/floss/files/tmpfiles.d/floss.conf
new file mode 100644
index 0000000..1d58f98
--- /dev/null
+++ b/net-wireless/floss/files/tmpfiles.d/floss.conf
@@ -0,0 +1,18 @@
+# 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.
+
+# Setup the directory paths expected by Floss
+
+# Config files dirs + files
+d= /var/lib/bluetooth 0750 bluetooth bluetooth
+f= /var/lib/bluetooth/btmanagerd.json 0750 bluetooth bluetooth
+
+# PID files
+d= /run/bluetooth 0770 bluetooth bluetooth
+
+# Audio sockets
+d= /run/bluetooth/audio 0770 bluetooth bluetooth-audio
+
+# For dogfood: Select which daemon to use (bluez vs floss)
+f= /var/lib/misc/bluetooth-daemon.current 0775 bluetooth bluetooth
diff --git a/net-wireless/floss/files/upstart/btadapterd.conf b/net-wireless/floss/files/upstart/btadapterd.conf
new file mode 100644
index 0000000..72ca963
--- /dev/null
+++ b/net-wireless/floss/files/upstart/btadapterd.conf
@@ -0,0 +1,51 @@
+# 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.
+
+description "Bluetooth Adapter"
+author "ChromeOS BT <chromeos-bt-team@google.com>"
+
+# Limit respawning in case of crashloop
+respawn limit 10 5
+respawn
+
+# This daemon manages the Bluetooth connections on a system. It can be killed at
+# the cost of an interruption in Bluetooth connectivity.
+oom score -100
+
+import HCI
+instance $HCI
+
+pre-start script
+  if [ "$HCI" -ge "0" ] 2>/dev/null; then
+    # HCI is a valid value (number >= 0) so do nothing.
+    # Values < 0 and non-numerical values will fall through.
+    :
+  else
+    # Invalid HCI value should fail
+    logger -is -p daemon.warning -t "${UPSTART_JOB}" -- \
+      "Invalid params on btadapterd. HCI=${HCI}"
+    exit 1
+  fi
+end script
+
+post-stop script
+  rm "/run/bluetooth/bluetooth${HCI}.pid"
+end script
+
+# Set GD flags; format is INIT_gd_<>
+env GD_FLAGS="INIT_gd_hci=true"
+
+script
+  # -u bluetooth changes user.
+  # -g bluetooth changes group.
+  # -G inherit bluetooth's supplementary groups.
+  # -n prevents that execve gains privileges, required for seccomp filters.
+  # -c 803500 = cap_sys_nice  (1 << 23) | cap_net_raw          (1 << 13) | \
+  #             cap_net_admin (1 << 12) | cap_net_bind_service (1 << 10) | \
+  #             cap_setpcap   (1 << 8)
+  exec minijail0 \
+  -u bluetooth -g bluetooth -G -n \
+  -c 803500 \
+  -- /usr/bin/btadapterd --hci=$HCI ${GD_FLAGS}
+end script
diff --git a/net-wireless/floss/files/upstart/btmanagerd.conf b/net-wireless/floss/files/upstart/btmanagerd.conf
new file mode 100644
index 0000000..721c1bb
--- /dev/null
+++ b/net-wireless/floss/files/upstart/btmanagerd.conf
@@ -0,0 +1,50 @@
+# 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.
+
+description "Bluetooth Manager"
+author "ChromeOS BT <chromeos-bt-team@google.com>"
+
+start on started system-services
+stop on stopping system-services
+
+# Limit respawning in case of crashloop
+respawn limit 10 5
+respawn
+
+# This daemon manages the Bluetooth controllers on a system. It can be killed at
+# the cost of an interruption in Bluetooth connectivity.
+oom score -100
+
+script
+  # -u bluetooth changes user.
+  # -g bluetooth changes group.
+  # -G inherit bluetooth's supplementary groups.
+  # -n prevents that execve gains privileges, required for seccomp filters.
+  # -l creates IPC namespace (isolates System V IPC objects/POSIX message
+  #    queues).
+  # --uts enters a new UTS namespace.
+  # -e enters new network namespace.
+  # --profile minimalistic-mountns sets up minimalistic mount namespace.
+  #   equivalent to -v -t -r --mount-dev -P /var/empty -b / -b /proc -b /dev/log
+  # -k /run,/run,tmpfs,... mounts tmpfs at /run
+  # -k /var,/var,tmpfs,... mounts tmpfs at /var
+  # -k /sys,/sys,tmpfs... mounts tmpfs at /sys
+  # -b /run/dbus mount read-only, required for D-Bus.
+  # -b /sys/class/bluetooth mount read-only, required for hci devices.
+  # -b /var/run/bluetooth mount read-only, required for pid files.
+  # -b /var/lib/misc/ allows read-write access to select floss/bluez daemon
+  # -b /var/lib/bluetooth/ allows read-write access to bluetooth config
+  exec minijail0 \
+  -u bluetooth -g bluetooth -G -n -l --uts -e \
+  --profile minimalistic-mountns \
+  -k '/run,/run,tmpfs,MS_NODEV|MS_NOEXEC|MS_NOSUID,mode=755,size=10M' \
+  -k '/var,/var,tmpfs,MS_NODEV|MS_NOEXEC|MS_NOSUID,mode=755,size=10M' \
+  -k '/sys,/sys,tmpfs,MS_NODEV|MS_NOEXEC|MS_NOSUID,mode=755,size=10M' \
+  -b /run/dbus \
+  -b /sys/class/bluetooth \
+  -b /var/run/bluetooth \
+  -b /var/lib/misc,,1 \
+  -b /var/lib/bluetooth,,1 \
+  -- /usr/bin/btmanagerd
+end script
diff --git a/net-wireless/floss/floss-0.0.2-r11.ebuild b/net-wireless/floss/floss-0.0.2-r11.ebuild
new file mode 100644
index 0000000..f86e0a7
--- /dev/null
+++ b/net-wireless/floss/floss-0.0.2-r11.ebuild
@@ -0,0 +1,216 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT=("4044c5b32117b91cc288ad825f8345d7933ef54b" "f0e07f640a3baffca84e0f55ba42edbca202aefc" "06ed9cf72897e1f8b54a8d74f4aed932a4996662" "fd36c25f2a8c6659c83f07391f95af3a171cb685")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "b4e5d17b5cdd2a8ab0bdf79e735235c7530409f3" "7eae68a604c33288e18b948cc1cf30a87f0a74bc" "7a34b72edeab38960a8149a82cf554cd16606dba")
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform2"
+	"aosp/platform/system/bt"
+	"aosp/platform/frameworks/proto_logging"
+	"chromiumos/third_party/rust_crates"
+)
+CROS_WORKON_LOCALNAME=(
+	"../platform2"
+	"../aosp/system/bt/upstream"
+	"../aosp/frameworks/proto_logging"
+	"../third_party/rust_crates"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}/platform2"
+	"${S}/platform2/bt"
+	"${S}/platform2/external/proto_logging"
+	"${S}/platform2/external/rust"
+)
+CROS_WORKON_SUBTREE=("common-mk .gn" "" "" "")
+CROS_WORKON_EGIT_BRANCH=("main" "main" "master" "main")
+CROS_WORKON_INCREMENTAL_BUILD=1
+
+PLATFORM_SUBDIR="bt"
+
+inherit cros-workon toolchain-funcs cros-rust platform tmpfiles
+
+DESCRIPTION="Bluetooth Tools and System Daemons for Linux"
+HOMEPAGE="https://android.googlesource.com/platform/system/bt/"
+
+# Apache-2.0 for system/bt
+# All others from rust crates
+LICENSE="
+	Apache-2.0
+	MIT BSD ISC
+"
+
+KEYWORDS="*"
+IUSE="bt_dynlib"
+
+#
+# TODO(b/188819708)
+# Floss continues to depend on bluez for a few things:
+#  - Several headers (bluetooth.h, l2cap.h, etc) which are used by Chrome
+#  - Bluetooth user + group are added in bluez's postinst
+#
+DEPEND="
+	dev-libs/flatbuffers:=
+	dev-libs/modp_b64:=
+	dev-libs/tinyxml2:=
+	dev-libs/openssl:=
+	=dev-rust/cc-1*:=
+	net-wireless/bluez
+"
+
+BDEPEND="
+	dev-libs/tinyxml2:=
+"
+
+RDEPEND="${DEPEND}"
+
+DOCS=( README.md )
+
+src_unpack() {
+	platform_src_unpack
+
+	# Cros rust unpack should come after platform unpack otherwise platform
+	# unpack will fail.
+	cros-rust_src_unpack
+
+	# Regenerate config with one that points to the vendored crates in
+	# systembt. This replaces one that's generated by cros-rust_src_unpack
+	echo -n > "${ECARGO_HOME}/config"
+	cat <<- EOF >> "${ECARGO_HOME}/config"
+	[source.systembt]
+	directory = "${S}/../external/rust/vendor"
+
+	[source.crates-io]
+	replace-with = "systembt"
+	local-registry = "/nonexistent"
+
+	[target.${CHOST}]
+	linker = "$(tc-getCC)"
+	EOF
+
+	# When the target environment is different from the host environment,
+	# add a setting for the target environment.
+	if tc-is-cross-compiler; then
+		cat <<- EOF >> "${ECARGO_HOME}/config"
+
+		[target.${CBUILD}]
+		linker = "$(tc-getBUILD_CC)"
+		EOF
+	fi
+}
+
+src_configure() {
+	if tc-is-cross-compiler ; then
+		# Build tools and move to host directory
+		mkdir -p "$(cros-workon_get_build_dir)/${CBUILD}"
+		tc-env_build platform "configure" "--host"
+		tc-env_build platform "compile" "tools" "--host"
+		mv "$(cros-workon_get_build_dir)/out" "$(cros-workon_get_build_dir)/${CBUILD}/"
+	fi
+
+	cros-rust_src_configure
+	platform_src_configure
+}
+
+floss_build_tools() {
+	local bin_dir="$(cros-workon_get_build_dir)/out/Default/"
+	if tc-is-cross-compiler ; then
+		local host_dir="$(cros-workon_get_build_dir)/${CBUILD}/out/Default"
+		mkdir -p "${bin_dir}"
+		cp "${host_dir}/bluetooth_packetgen" "${bin_dir}"
+		cp "${host_dir}/bluetooth_flatbuffer_bundler" "${bin_dir}"
+	else
+		platform "compile" "tools" "--host"
+	fi
+
+	# Make sure packetgen is also available to rust
+	mkdir -p "${ECARGO_HOME}/bin/"
+	cp "${bin_dir}/bluetooth_packetgen" "${ECARGO_HOME}/bin/"
+}
+
+floss_build_rust() {
+	# Export all build env variables
+	tc-export_build_env PKG_CONFIG
+
+	# Check if cxxflags has -fno-exceptions and set -DRUST_CXX_NO_EXCEPTIONS
+	# This is required to build the cxx rust dependency
+	if is-flagq -fno-exceptions; then
+		append-cxxflags -DRUST_CXX_NO_EXCEPTIONS
+	fi
+
+	# cc rust package requires CLANG_PATH so it uses correct clang triple
+	export CLANG_PATH="$(tc-getBUILD_CC)"
+	export HOST_CFLAGS=${BUILD_CFLAGS}
+
+	# Add linker search path to RUSTFLAGS
+	cxx_outdir="$(cros-workon_get_build_dir)/out/Default"
+	export RUSTFLAGS="${RUSTFLAGS} -L ${cxx_outdir}"
+	# Also ignore multiple definitions for now (added due to some shared
+	# library shenaningans)
+	export RUSTFLAGS="${RUSTFLAGS} -C link-arg=-Wl,--allow-multiple-definition"
+
+	# Export the source path for bindgen
+	export CXX_ROOT_PATH="${S}"
+
+	cros-rust_src_compile
+}
+
+src_compile() {
+	# Build tools required for building the runtime and copy to both the GN
+	# directory and the Rust bin directory
+	floss_build_tools
+
+	# Compile for target (generates static libs)
+	platform_src_compile
+
+	# Build rust portion (finish linking in rust)
+	floss_build_rust
+}
+
+src_install() {
+	platform_src_install
+
+	dobin "${CARGO_TARGET_DIR}/${CHOST}/release/btmanagerd"
+	dobin "${CARGO_TARGET_DIR}/${CHOST}/release/btadapterd"
+	dobin "${CARGO_TARGET_DIR}/${CHOST}/release/btclient"
+
+	if use bt_dynlib; then
+		dolib.so "${OUT}/lib/libbluetooth.so"
+	fi
+
+	# Install D-Bus config
+	insinto /etc/dbus-1/system.d
+	doins "${FILESDIR}/dbus/org.chromium.bluetooth.conf"
+
+	# Install upstart rules
+	insinto /etc/init/
+	doins "${FILESDIR}/upstart/btmanagerd.conf"
+	doins "${FILESDIR}/upstart/btadapterd.conf"
+
+	# Install tmpfiles
+	dotmpfiles "${FILESDIR}/tmpfiles.d/floss.conf"
+}
+
+platform_pkg_test() {
+	local tests=(
+		"bluetoothtbd_test"
+		"bluetooth_test_common"
+		"net_test_avrcp"
+		"net_test_btcore"
+		"net_test_types"
+		"net_test_btm_iso"
+		# TODO(b/178740721) - This test wasn't compiling. Need to fix
+		# this and re-enable it.
+		# "net_test_btpackets"
+	)
+
+	# Run rust tests
+	cros-rust_src_test
+
+	# TODO(b/190750167) - Re-enable once we're fully Bazel build
+	#local test_bin
+	#for test_bin in "${tests[@]}"; do
+		#platform_test run "${OUT}/${test_bin}"
+	#done
+}
diff --git a/net-wireless/floss/floss-9999.ebuild b/net-wireless/floss/floss-9999.ebuild
new file mode 100644
index 0000000..fc131fa
--- /dev/null
+++ b/net-wireless/floss/floss-9999.ebuild
@@ -0,0 +1,214 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform2"
+	"aosp/platform/system/bt"
+	"aosp/platform/frameworks/proto_logging"
+	"chromiumos/third_party/rust_crates"
+)
+CROS_WORKON_LOCALNAME=(
+	"../platform2"
+	"../aosp/system/bt/upstream"
+	"../aosp/frameworks/proto_logging"
+	"../third_party/rust_crates"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}/platform2"
+	"${S}/platform2/bt"
+	"${S}/platform2/external/proto_logging"
+	"${S}/platform2/external/rust"
+)
+CROS_WORKON_SUBTREE=("common-mk .gn" "" "" "")
+CROS_WORKON_EGIT_BRANCH=("main" "main" "master" "main")
+CROS_WORKON_INCREMENTAL_BUILD=1
+
+PLATFORM_SUBDIR="bt"
+
+inherit cros-workon toolchain-funcs cros-rust platform tmpfiles
+
+DESCRIPTION="Bluetooth Tools and System Daemons for Linux"
+HOMEPAGE="https://android.googlesource.com/platform/system/bt/"
+
+# Apache-2.0 for system/bt
+# All others from rust crates
+LICENSE="
+	Apache-2.0
+	MIT BSD ISC
+"
+
+KEYWORDS="~*"
+IUSE="bt_dynlib"
+
+#
+# TODO(b/188819708)
+# Floss continues to depend on bluez for a few things:
+#  - Several headers (bluetooth.h, l2cap.h, etc) which are used by Chrome
+#  - Bluetooth user + group are added in bluez's postinst
+#
+DEPEND="
+	dev-libs/flatbuffers:=
+	dev-libs/modp_b64:=
+	dev-libs/tinyxml2:=
+	dev-libs/openssl:=
+	=dev-rust/cc-1*:=
+	net-wireless/bluez
+"
+
+BDEPEND="
+	dev-libs/tinyxml2:=
+"
+
+RDEPEND="${DEPEND}"
+
+DOCS=( README.md )
+
+src_unpack() {
+	platform_src_unpack
+
+	# Cros rust unpack should come after platform unpack otherwise platform
+	# unpack will fail.
+	cros-rust_src_unpack
+
+	# Regenerate config with one that points to the vendored crates in
+	# systembt. This replaces one that's generated by cros-rust_src_unpack
+	echo -n > "${ECARGO_HOME}/config"
+	cat <<- EOF >> "${ECARGO_HOME}/config"
+	[source.systembt]
+	directory = "${S}/../external/rust/vendor"
+
+	[source.crates-io]
+	replace-with = "systembt"
+	local-registry = "/nonexistent"
+
+	[target.${CHOST}]
+	linker = "$(tc-getCC)"
+	EOF
+
+	# When the target environment is different from the host environment,
+	# add a setting for the target environment.
+	if tc-is-cross-compiler; then
+		cat <<- EOF >> "${ECARGO_HOME}/config"
+
+		[target.${CBUILD}]
+		linker = "$(tc-getBUILD_CC)"
+		EOF
+	fi
+}
+
+src_configure() {
+	if tc-is-cross-compiler ; then
+		# Build tools and move to host directory
+		mkdir -p "$(cros-workon_get_build_dir)/${CBUILD}"
+		tc-env_build platform "configure" "--host"
+		tc-env_build platform "compile" "tools" "--host"
+		mv "$(cros-workon_get_build_dir)/out" "$(cros-workon_get_build_dir)/${CBUILD}/"
+	fi
+
+	cros-rust_src_configure
+	platform_src_configure
+}
+
+floss_build_tools() {
+	local bin_dir="$(cros-workon_get_build_dir)/out/Default/"
+	if tc-is-cross-compiler ; then
+		local host_dir="$(cros-workon_get_build_dir)/${CBUILD}/out/Default"
+		mkdir -p "${bin_dir}"
+		cp "${host_dir}/bluetooth_packetgen" "${bin_dir}"
+		cp "${host_dir}/bluetooth_flatbuffer_bundler" "${bin_dir}"
+	else
+		platform "compile" "tools" "--host"
+	fi
+
+	# Make sure packetgen is also available to rust
+	mkdir -p "${ECARGO_HOME}/bin/"
+	cp "${bin_dir}/bluetooth_packetgen" "${ECARGO_HOME}/bin/"
+}
+
+floss_build_rust() {
+	# Export all build env variables
+	tc-export_build_env PKG_CONFIG
+
+	# Check if cxxflags has -fno-exceptions and set -DRUST_CXX_NO_EXCEPTIONS
+	# This is required to build the cxx rust dependency
+	if is-flagq -fno-exceptions; then
+		append-cxxflags -DRUST_CXX_NO_EXCEPTIONS
+	fi
+
+	# cc rust package requires CLANG_PATH so it uses correct clang triple
+	export CLANG_PATH="$(tc-getBUILD_CC)"
+	export HOST_CFLAGS=${BUILD_CFLAGS}
+
+	# Add linker search path to RUSTFLAGS
+	cxx_outdir="$(cros-workon_get_build_dir)/out/Default"
+	export RUSTFLAGS="${RUSTFLAGS} -L ${cxx_outdir}"
+	# Also ignore multiple definitions for now (added due to some shared
+	# library shenaningans)
+	export RUSTFLAGS="${RUSTFLAGS} -C link-arg=-Wl,--allow-multiple-definition"
+
+	# Export the source path for bindgen
+	export CXX_ROOT_PATH="${S}"
+
+	cros-rust_src_compile
+}
+
+src_compile() {
+	# Build tools required for building the runtime and copy to both the GN
+	# directory and the Rust bin directory
+	floss_build_tools
+
+	# Compile for target (generates static libs)
+	platform_src_compile
+
+	# Build rust portion (finish linking in rust)
+	floss_build_rust
+}
+
+src_install() {
+	platform_src_install
+
+	dobin "${CARGO_TARGET_DIR}/${CHOST}/release/btmanagerd"
+	dobin "${CARGO_TARGET_DIR}/${CHOST}/release/btadapterd"
+	dobin "${CARGO_TARGET_DIR}/${CHOST}/release/btclient"
+
+	if use bt_dynlib; then
+		dolib.so "${OUT}/lib/libbluetooth.so"
+	fi
+
+	# Install D-Bus config
+	insinto /etc/dbus-1/system.d
+	doins "${FILESDIR}/dbus/org.chromium.bluetooth.conf"
+
+	# Install upstart rules
+	insinto /etc/init/
+	doins "${FILESDIR}/upstart/btmanagerd.conf"
+	doins "${FILESDIR}/upstart/btadapterd.conf"
+
+	# Install tmpfiles
+	dotmpfiles "${FILESDIR}/tmpfiles.d/floss.conf"
+}
+
+platform_pkg_test() {
+	local tests=(
+		"bluetoothtbd_test"
+		"bluetooth_test_common"
+		"net_test_avrcp"
+		"net_test_btcore"
+		"net_test_types"
+		"net_test_btm_iso"
+		# TODO(b/178740721) - This test wasn't compiling. Need to fix
+		# this and re-enable it.
+		# "net_test_btpackets"
+	)
+
+	# Run rust tests
+	cros-rust_src_test
+
+	# TODO(b/190750167) - Re-enable once we're fully Bazel build
+	#local test_bin
+	#for test_bin in "${tests[@]}"; do
+		#platform_test run "${OUT}/${test_bin}"
+	#done
+}
diff --git a/net-wireless/hostap-test/hostap-test-0.0.1-r37.ebuild b/net-wireless/hostap-test/hostap-test-0.0.1-r37.ebuild
deleted file mode 100644
index 637937a..0000000
--- a/net-wireless/hostap-test/hostap-test-0.0.1-r37.ebuild
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 2019 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.
-
-EAPI="7"
-CROS_WORKON_COMMIT="8ac12f2cec9b9c227e8719fca00d4d6c75cf7270"
-CROS_WORKON_TREE="76ef3707eefe49ae08b8c889ada1c4a987fbaa6e"
-CROS_WORKON_PROJECT="chromiumos/third_party/hostap"
-CROS_WORKON_LOCALNAME="../third_party/wpa_supplicant-2.9"
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-inherit cros-sanitizers cros-workon distutils-r1 flag-o-matic toolchain-funcs
-
-DESCRIPTION="Test package for the hostap project, intended for a VM"
-HOMEPAGE="https://w1.fi"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="*"
-IUSE="dbus"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="
-	dev-libs/libnl:3=
-	dev-libs/openssl:0=
-	net-libs/libpcap:=
-"
-
-# pygobject with python3 support requires recent versions (e.g., 3.28.3 --
-# http://crrev.com/c/1869550), but recent versions are more difficult to
-# cross-compile (gobject-introspection, in particular). Leave this behind an
-# optional 'dbus' USE flag for now. Hwsim tests will skip D-Bus tests if
-# libraries aren't available.
-RDEPEND="${DEPEND}
-	${PYTHON_DEPS}
-	dbus? (
-		dev-python/dbus-python[${PYTHON_USEDEP}]
-		dev-python/pygobject[${PYTHON_USEDEP}]
-		sys-apps/dbus
-	)
-	dev-python/pycryptodome[${PYTHON_USEDEP}]
-	dev-python/pyrad[${PYTHON_USEDEP}]
-	net-analyzer/wireshark
-
-	net-wireless/crda
-"
-
-src_unpack() {
-	cros-workon_src_unpack
-}
-
-src_configure() {
-	sanitizers-setup-env
-	# Toolchain setup
-	append-flags -Werror
-	tc-export CC
-
-	cp tests/hwsim/example-wpa_supplicant.config wpa_supplicant/.config || die
-	cp tests/hwsim/example-hostapd.config hostapd/.config || die
-
-	# Disable WPA_TRACE_BFD, and kill any hard-coded /usr/include paths.
-	# TODO(https://crbug.com/1013471): re-enable BFD to run additional
-	# trace-based tests.
-	sed -i \
-		-e '/^CONFIG_WPA_TRACE_BFD=/d' \
-		-e '/^CFLAGS .*\/usr\/include/d' \
-		wpa_supplicant/.config \
-		hostapd/.config || die
-}
-
-# Clean in-between builds, because common code may be built with different
-# configs. See also tests/hwsim/build.sh.
-src_compile() {
-	einfo "Building wlantest"
-	emake -C wlantest V=1
-
-	einfo "Building hostapd"
-	emake -C hostapd clean
-	emake -C hostapd hostapd hostapd_cli hlr_auc_gw V=1
-
-	einfo "Building wpa_supplicant"
-	emake -C wpa_supplicant clean
-	emake -C wpa_supplicant V=1
-}
-
-src_install() {
-	local install_dir="/usr/libexec/hostap"
-	exeinto "${install_dir}"/wlantest
-	doexe wlantest/wlantest wlantest/wlantest_cli wlantest/test_vectors
-
-	dodir "${install_dir}"/tests
-	cp -pPR "${S}"/tests/hwsim "${D}/${install_dir}"/tests || die
-	cp -pPR "${S}"/wpaspy "${D}/${install_dir}" || die
-
-	exeinto "${install_dir}"/hostapd
-	local exe
-	for exe in hostapd hostapd_cli hlr_auc_gw; do
-		doexe "hostapd/${exe}"
-	done
-	exeinto "${install_dir}"/wpa_supplicant
-	for exe in wpa_supplicant wpa_cli; do
-		doexe "wpa_supplicant/${exe}"
-	done
-}
diff --git a/net-wireless/hostap-test/hostap-test-0.0.1-r39.ebuild b/net-wireless/hostap-test/hostap-test-0.0.1-r39.ebuild
new file mode 100644
index 0000000..ce3578a
--- /dev/null
+++ b/net-wireless/hostap-test/hostap-test-0.0.1-r39.ebuild
@@ -0,0 +1,106 @@
+# Copyright 2019 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.
+
+EAPI="7"
+CROS_WORKON_COMMIT="112d4f509901d7de3dc3f8f6533cad487ce67f56"
+CROS_WORKON_TREE="982936790e4edc3320774f5e5e7bb4dbafd32f53"
+CROS_WORKON_PROJECT="chromiumos/third_party/hostap"
+CROS_WORKON_LOCALNAME="../third_party/wpa_supplicant-cros/current"
+
+PYTHON_COMPAT=( python3_{6,7} )
+
+inherit cros-sanitizers cros-workon distutils-r1 flag-o-matic toolchain-funcs
+
+DESCRIPTION="Test package for the hostap project, intended for a VM"
+HOMEPAGE="https://w1.fi"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="*"
+IUSE="dbus"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="
+	dev-libs/libnl:3=
+	dev-libs/openssl:0=
+	net-libs/libpcap:=
+"
+
+# pygobject with python3 support requires recent versions (e.g., 3.28.3 --
+# http://crrev.com/c/1869550), but recent versions are more difficult to
+# cross-compile (gobject-introspection, in particular). Leave this behind an
+# optional 'dbus' USE flag for now. Hwsim tests will skip D-Bus tests if
+# libraries aren't available.
+RDEPEND="${DEPEND}
+	${PYTHON_DEPS}
+	dbus? (
+		dev-python/dbus-python[${PYTHON_USEDEP}]
+		dev-python/pygobject[${PYTHON_USEDEP}]
+		sys-apps/dbus
+	)
+	dev-python/pycryptodome[${PYTHON_USEDEP}]
+	dev-python/pyrad[${PYTHON_USEDEP}]
+	net-analyzer/wireshark
+
+	net-wireless/crda
+"
+
+src_unpack() {
+	cros-workon_src_unpack
+}
+
+src_configure() {
+	sanitizers-setup-env
+	# Toolchain setup
+	append-flags -Werror
+	tc-export CC
+
+	cp tests/hwsim/example-wpa_supplicant.config wpa_supplicant/.config || die
+	cp tests/hwsim/example-hostapd.config hostapd/.config || die
+
+	# Disable WPA_TRACE_BFD, and kill any hard-coded /usr/include paths.
+	# TODO(https://crbug.com/1013471): re-enable BFD to run additional
+	# trace-based tests.
+	sed -i \
+		-e '/^CONFIG_WPA_TRACE_BFD=/d' \
+		-e '/^CFLAGS .*\/usr\/include/d' \
+		wpa_supplicant/.config \
+		hostapd/.config || die
+}
+
+# Clean in-between builds, because common code may be built with different
+# configs. See also tests/hwsim/build.sh.
+src_compile() {
+	einfo "Building wlantest"
+	emake -C wlantest V=1
+
+	einfo "Building hostapd"
+	emake -C hostapd clean
+	emake -C hostapd hostapd hostapd_cli hlr_auc_gw V=1
+
+	einfo "Building wpa_supplicant"
+	emake -C wpa_supplicant clean
+	emake -C wpa_supplicant V=1
+}
+
+src_install() {
+	local install_dir="/usr/libexec/hostap"
+	exeinto "${install_dir}"/wlantest
+	doexe wlantest/wlantest wlantest/wlantest_cli wlantest/test_vectors
+
+	dodir "${install_dir}"/tests
+	cp -pPR "${S}"/tests/hwsim "${D}/${install_dir}"/tests || die
+	cp -pPR "${S}"/wpaspy "${D}/${install_dir}" || die
+
+	exeinto "${install_dir}"/hostapd
+	local exe
+	for exe in hostapd hostapd_cli hlr_auc_gw; do
+		doexe "hostapd/${exe}"
+	done
+	exeinto "${install_dir}"/wpa_supplicant
+	for exe in wpa_supplicant wpa_cli; do
+		doexe "wpa_supplicant/${exe}"
+	done
+}
diff --git a/net-wireless/hostap-test/hostap-test-9999.ebuild b/net-wireless/hostap-test/hostap-test-9999.ebuild
index f0bdfad..8f164f8 100644
--- a/net-wireless/hostap-test/hostap-test-9999.ebuild
+++ b/net-wireless/hostap-test/hostap-test-9999.ebuild
@@ -4,7 +4,7 @@
 
 EAPI="7"
 CROS_WORKON_PROJECT="chromiumos/third_party/hostap"
-CROS_WORKON_LOCALNAME="../third_party/wpa_supplicant-2.9"
+CROS_WORKON_LOCALNAME="../third_party/wpa_supplicant-cros/current"
 
 PYTHON_COMPAT=( python3_{6,7} )
 
diff --git a/net-wireless/hostapd/hostapd-2.9-r159.ebuild b/net-wireless/hostapd/hostapd-2.9-r159.ebuild
deleted file mode 100644
index 9a8671b..0000000
--- a/net-wireless/hostapd/hostapd-2.9-r159.ebuild
+++ /dev/null
@@ -1,251 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-CROS_WORKON_COMMIT="8ac12f2cec9b9c227e8719fca00d4d6c75cf7270"
-CROS_WORKON_TREE="76ef3707eefe49ae08b8c889ada1c4a987fbaa6e"
-CROS_WORKON_PROJECT="chromiumos/third_party/hostap"
-CROS_WORKON_LOCALNAME="../third_party/wpa_supplicant-2.9"
-
-inherit cros-workon toolchain-funcs savedconfig
-
-DESCRIPTION="IEEE 802.11 wireless LAN Host AP daemon"
-HOMEPAGE="http://w1.fi"
-SRC_URI=""
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="*"
-IUSE="internal-tls ipv6 libressl logwatch netlink sqlite +suiteb +wps +crda"
-
-DEPEND="
-	libressl? ( dev-libs/libressl:0= )
-	!libressl? (
-		internal-tls? ( dev-libs/libtommath )
-		!internal-tls? ( dev-libs/openssl:0=[-bindist] )
-	)
-	kernel_linux? (
-		dev-libs/libnl:3
-		crda? ( net-wireless/crda )
-	)
-	netlink? ( net-libs/libnfnetlink )
-	sqlite? ( >=dev-db/sqlite-3 )"
-
-RDEPEND="${DEPEND}"
-
-src_unpack() {
-	cros-workon_src_unpack
-	S+="/hostapd"
-}
-
-src_configure() {
-	if use internal-tls; then
-		if use libressl; then
-			elog "libressl flag takes precedence over internal-tls"
-		else
-			ewarn "internal-tls implementation is experimental and provides fewer features"
-		fi
-	fi
-
-	local CONFIG="${S}/.config"
-
-	restore_config "${CONFIG}"
-	if [[ -f "${CONFIG}" ]]; then
-		default_src_configure
-		return 0
-	fi
-
-	# toolchain setup
-	echo "CC = $(tc-getCC)" > ${CONFIG}
-
-	# EAP authentication methods
-	echo "CONFIG_EAP=y" >> ${CONFIG}
-	echo "CONFIG_ERP=y" >> ${CONFIG}
-	echo "CONFIG_EAP_MD5=y" >> ${CONFIG}
-	echo "CONFIG_SAE=y" >> ${CONFIG}
-	echo "CONFIG_OWE=y" >> ${CONFIG}
-	echo "CONFIG_DPP=y" >> ${CONFIG}
-
-	if use suiteb; then
-		echo "CONFIG_SUITEB=y" >> ${CONFIG}
-		echo "CONFIG_SUITEB192=y" >> ${CONFIG}
-	fi
-
-	if use internal-tls && ! use libressl; then
-		echo "CONFIG_TLS=internal" >> ${CONFIG}
-	else
-		# SSL authentication methods
-		echo "CONFIG_EAP_FAST=y" >> ${CONFIG}
-		echo "CONFIG_EAP_TLS=y" >> ${CONFIG}
-		echo "CONFIG_EAP_TTLS=y" >> ${CONFIG}
-		echo "CONFIG_EAP_MSCHAPV2=y" >> ${CONFIG}
-		echo "CONFIG_EAP_PEAP=y" >> ${CONFIG}
-		echo "CONFIG_TLSV11=y" >> ${CONFIG}
-		echo "CONFIG_TLSV12=y" >> ${CONFIG}
-		echo "CONFIG_EAP_PWD=y" >> ${CONFIG}
-	fi
-
-	if use wps; then
-		# Enable Wi-Fi Protected Setup
-		echo "CONFIG_WPS=y" >> ${CONFIG}
-		echo "CONFIG_WPS2=y" >> ${CONFIG}
-		echo "CONFIG_WPS_UPNP=y" >> ${CONFIG}
-		echo "CONFIG_WPS_NFC=y" >> ${CONFIG}
-		einfo "Enabling Wi-Fi Protected Setup support"
-	fi
-
-	echo "CONFIG_EAP_IKEV2=y" >> ${CONFIG}
-	echo "CONFIG_EAP_TNC=y" >> ${CONFIG}
-	echo "CONFIG_EAP_GTC=y" >> ${CONFIG}
-	echo "CONFIG_EAP_SIM=y" >> ${CONFIG}
-	echo "CONFIG_EAP_AKA=y" >> ${CONFIG}
-	echo "CONFIG_EAP_AKA_PRIME=y" >> ${CONFIG}
-	echo "CONFIG_EAP_EKE=y" >> ${CONFIG}
-	echo "CONFIG_EAP_FAST=y" >> ${CONFIG}
-	echo "CONFIG_EAP_PAX=y" >> ${CONFIG}
-	echo "CONFIG_EAP_PSK=y" >> ${CONFIG}
-	echo "CONFIG_EAP_SAKE=y" >> ${CONFIG}
-	echo "CONFIG_EAP_GPSK=y" >> ${CONFIG}
-	echo "CONFIG_EAP_GPSK_SHA256=y" >> ${CONFIG}
-	echo "CONFIG_EAP_UNAUTH_TLS=y" >> ${CONFIG}
-	echo "CONFIG_EAP_VENDOR_TEST=y" >> ${CONFIG}
-
-	einfo "Enabling drivers: "
-
-	# drivers
-	echo "CONFIG_DRIVER_HOSTAP=y" >> ${CONFIG}
-	einfo "  HostAP driver enabled"
-	echo "CONFIG_DRIVER_WIRED=y" >> ${CONFIG}
-	einfo "  Wired driver enabled"
-	echo "CONFIG_DRIVER_NONE=y" >> ${CONFIG}
-	einfo "  None driver enabled"
-
-	einfo "  nl80211 driver enabled"
-	echo "CONFIG_DRIVER_NL80211=y" >> ${CONFIG}
-
-	# epoll
-	echo "CONFIG_ELOOP_EPOLL=y" >> ${CONFIG}
-
-	# misc
-	echo "CONFIG_DEBUG_FILE=y" >> ${CONFIG}
-	echo "CONFIG_PKCS12=y" >> ${CONFIG}
-	echo "CONFIG_RADIUS_SERVER=y" >> ${CONFIG}
-	echo "CONFIG_IAPP=y" >> ${CONFIG}
-	echo "CONFIG_IEEE80211R=y" >> ${CONFIG}
-	echo "CONFIG_IEEE80211W=y" >> ${CONFIG}
-	echo "CONFIG_IEEE80211N=y" >> ${CONFIG}
-	echo "CONFIG_IEEE80211AC=y" >> ${CONFIG}
-	echo "CONFIG_PEERKEY=y" >> ${CONFIG}
-	echo "CONFIG_RSN_PREAUTH=y" >> ${CONFIG}
-	echo "CONFIG_INTERWORKING=y" >> ${CONFIG}
-	echo "CONFIG_FULL_DYNAMIC_VLAN=y" >> ${CONFIG}
-	echo "CONFIG_HS20=y" >> ${CONFIG}
-	echo "CONFIG_WNM=y" >> ${CONFIG}
-	echo "CONFIG_FST=y" >> ${CONFIG}
-	echo "CONFIG_FST_TEST=y" >> ${CONFIG}
-	echo "CONFIG_ACS=y" >> ${CONFIG}
-	echo "CONFIG_MBO=y" >> ${CONFIG}
-
-	# Disable random pool to work-around the slow random entropy
-	# generation on whirlwind. (See: crbug.com/1114912#c9)
-	# This is safe now because:
-	# 1. We now only use hostapd for tests. (on test APs or in
-	#    network.Ethernet8021X.* tests.)
-	# 2. The random pool (and entropy estimations) seem to mostly be
-	#    designed to guard against lack of initial entropy on a fresh
-	#    boot, but they run at every startup. In the presence of many
-	#    hostapd restarts, when "available entropy" gets drained by
-	#    hostapd, /dev/urandom should still be seeded with enough entropy.
-	# However, if we want to launch AP support in CrOS, it would be better
-	# to re-evaluate this with security experts.
-	echo "CONFIG_NO_RANDOM_POOL=y" >> ${CONFIG}
-
-	if use netlink; then
-		# Netlink support
-		echo "CONFIG_VLAN_NETLINK=y" >> ${CONFIG}
-	fi
-
-	if use ipv6; then
-		# IPv6 support
-		echo "CONFIG_IPV6=y" >> ${CONFIG}
-	fi
-
-	if use sqlite; then
-		# Sqlite support
-		echo "CONFIG_SQLITE=y" >> ${CONFIG}
-	fi
-
-	# If we are using libnl 2.0 and above, enable support for it
-	# Removed for now, since the 3.2 version is broken, and we don't
-	# support it.
-	if has_version ">=dev-libs/libnl-3.2"; then
-		echo "CONFIG_LIBNL32=y" >> .config
-	fi
-
-	# TODO: Add support for BSD drivers
-
-	default
-}
-
-src_compile() {
-	emake V=1
-
-	if use libressl || ! use internal-tls; then
-		emake V=1 nt_password_hash
-		emake V=1 hlr_auc_gw
-	fi
-}
-
-src_install() {
-	dosbin ${PN}
-	dobin ${PN}_cli
-
-	if use libressl || ! use internal-tls; then
-		dobin nt_password_hash hlr_auc_gw
-	fi
-
-	doman ${PN}{.8,_cli.1}
-
-	dodoc ChangeLog README
-	use wps && dodoc README-WPS
-
-	docinto examples
-	dodoc wired.conf
-
-	if use logwatch; then
-		insinto /etc/log.d/conf/services/
-		doins logwatch/${PN}.conf
-
-		exeinto /etc/log.d/scripts/services/
-		doexe logwatch/${PN}
-	fi
-
-	save_config .config
-}
-
-pkg_postinst() {
-	einfo
-	einfo "If you are running openRC you need to follow this instructions:"
-	einfo "In order to use ${PN} you need to set up your wireless card"
-	einfo "for master mode in /etc/conf.d/net and then start"
-	einfo "/etc/init.d/${PN}."
-	einfo
-	einfo "Example configuration:"
-	einfo
-	einfo "config_wlan0=( \"192.168.1.1/24\" )"
-	einfo "channel_wlan0=\"6\""
-	einfo "essid_wlan0=\"test\""
-	einfo "mode_wlan0=\"master\""
-	einfo
-	#if [ -e "${KV_DIR}"/net/mac80211 ]; then
-	#	einfo "This package now compiles against the headers installed by"
-	#	einfo "the kernel source for the mac80211 driver. You should "
-	#	einfo "re-emerge ${PN} after upgrading your kernel source."
-	#fi
-
-	if use wps; then
-		einfo "You have enabled Wi-Fi Protected Setup support, please"
-		einfo "read the README-WPS file in /usr/share/doc/${P}"
-		einfo "for info on how to use WPS"
-	fi
-}
diff --git a/net-wireless/hostapd/hostapd-2.9-r161.ebuild b/net-wireless/hostapd/hostapd-2.9-r161.ebuild
new file mode 100644
index 0000000..0612184
--- /dev/null
+++ b/net-wireless/hostapd/hostapd-2.9-r161.ebuild
@@ -0,0 +1,251 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+CROS_WORKON_COMMIT="112d4f509901d7de3dc3f8f6533cad487ce67f56"
+CROS_WORKON_TREE="982936790e4edc3320774f5e5e7bb4dbafd32f53"
+CROS_WORKON_PROJECT="chromiumos/third_party/hostap"
+CROS_WORKON_LOCALNAME="../third_party/wpa_supplicant-cros/current"
+
+inherit cros-workon toolchain-funcs savedconfig
+
+DESCRIPTION="IEEE 802.11 wireless LAN Host AP daemon"
+HOMEPAGE="http://w1.fi"
+SRC_URI=""
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="*"
+IUSE="internal-tls ipv6 libressl logwatch netlink sqlite +suiteb +wps +crda"
+
+DEPEND="
+	libressl? ( dev-libs/libressl:0= )
+	!libressl? (
+		internal-tls? ( dev-libs/libtommath )
+		!internal-tls? ( dev-libs/openssl:0=[-bindist] )
+	)
+	kernel_linux? (
+		dev-libs/libnl:3
+		crda? ( net-wireless/crda )
+	)
+	netlink? ( net-libs/libnfnetlink )
+	sqlite? ( >=dev-db/sqlite-3 )"
+
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+	cros-workon_src_unpack
+	S+="/hostapd"
+}
+
+src_configure() {
+	if use internal-tls; then
+		if use libressl; then
+			elog "libressl flag takes precedence over internal-tls"
+		else
+			ewarn "internal-tls implementation is experimental and provides fewer features"
+		fi
+	fi
+
+	local CONFIG="${S}/.config"
+
+	restore_config "${CONFIG}"
+	if [[ -f "${CONFIG}" ]]; then
+		default_src_configure
+		return 0
+	fi
+
+	# toolchain setup
+	echo "CC = $(tc-getCC)" > ${CONFIG}
+
+	# EAP authentication methods
+	echo "CONFIG_EAP=y" >> ${CONFIG}
+	echo "CONFIG_ERP=y" >> ${CONFIG}
+	echo "CONFIG_EAP_MD5=y" >> ${CONFIG}
+	echo "CONFIG_SAE=y" >> ${CONFIG}
+	echo "CONFIG_OWE=y" >> ${CONFIG}
+	echo "CONFIG_DPP=y" >> ${CONFIG}
+
+	if use suiteb; then
+		echo "CONFIG_SUITEB=y" >> ${CONFIG}
+		echo "CONFIG_SUITEB192=y" >> ${CONFIG}
+	fi
+
+	if use internal-tls && ! use libressl; then
+		echo "CONFIG_TLS=internal" >> ${CONFIG}
+	else
+		# SSL authentication methods
+		echo "CONFIG_EAP_FAST=y" >> ${CONFIG}
+		echo "CONFIG_EAP_TLS=y" >> ${CONFIG}
+		echo "CONFIG_EAP_TTLS=y" >> ${CONFIG}
+		echo "CONFIG_EAP_MSCHAPV2=y" >> ${CONFIG}
+		echo "CONFIG_EAP_PEAP=y" >> ${CONFIG}
+		echo "CONFIG_TLSV11=y" >> ${CONFIG}
+		echo "CONFIG_TLSV12=y" >> ${CONFIG}
+		echo "CONFIG_EAP_PWD=y" >> ${CONFIG}
+	fi
+
+	if use wps; then
+		# Enable Wi-Fi Protected Setup
+		echo "CONFIG_WPS=y" >> ${CONFIG}
+		echo "CONFIG_WPS2=y" >> ${CONFIG}
+		echo "CONFIG_WPS_UPNP=y" >> ${CONFIG}
+		echo "CONFIG_WPS_NFC=y" >> ${CONFIG}
+		einfo "Enabling Wi-Fi Protected Setup support"
+	fi
+
+	echo "CONFIG_EAP_IKEV2=y" >> ${CONFIG}
+	echo "CONFIG_EAP_TNC=y" >> ${CONFIG}
+	echo "CONFIG_EAP_GTC=y" >> ${CONFIG}
+	echo "CONFIG_EAP_SIM=y" >> ${CONFIG}
+	echo "CONFIG_EAP_AKA=y" >> ${CONFIG}
+	echo "CONFIG_EAP_AKA_PRIME=y" >> ${CONFIG}
+	echo "CONFIG_EAP_EKE=y" >> ${CONFIG}
+	echo "CONFIG_EAP_FAST=y" >> ${CONFIG}
+	echo "CONFIG_EAP_PAX=y" >> ${CONFIG}
+	echo "CONFIG_EAP_PSK=y" >> ${CONFIG}
+	echo "CONFIG_EAP_SAKE=y" >> ${CONFIG}
+	echo "CONFIG_EAP_GPSK=y" >> ${CONFIG}
+	echo "CONFIG_EAP_GPSK_SHA256=y" >> ${CONFIG}
+	echo "CONFIG_EAP_UNAUTH_TLS=y" >> ${CONFIG}
+	echo "CONFIG_EAP_VENDOR_TEST=y" >> ${CONFIG}
+
+	einfo "Enabling drivers: "
+
+	# drivers
+	echo "CONFIG_DRIVER_HOSTAP=y" >> ${CONFIG}
+	einfo "  HostAP driver enabled"
+	echo "CONFIG_DRIVER_WIRED=y" >> ${CONFIG}
+	einfo "  Wired driver enabled"
+	echo "CONFIG_DRIVER_NONE=y" >> ${CONFIG}
+	einfo "  None driver enabled"
+
+	einfo "  nl80211 driver enabled"
+	echo "CONFIG_DRIVER_NL80211=y" >> ${CONFIG}
+
+	# epoll
+	echo "CONFIG_ELOOP_EPOLL=y" >> ${CONFIG}
+
+	# misc
+	echo "CONFIG_DEBUG_FILE=y" >> ${CONFIG}
+	echo "CONFIG_PKCS12=y" >> ${CONFIG}
+	echo "CONFIG_RADIUS_SERVER=y" >> ${CONFIG}
+	echo "CONFIG_IAPP=y" >> ${CONFIG}
+	echo "CONFIG_IEEE80211R=y" >> ${CONFIG}
+	echo "CONFIG_IEEE80211W=y" >> ${CONFIG}
+	echo "CONFIG_IEEE80211N=y" >> ${CONFIG}
+	echo "CONFIG_IEEE80211AC=y" >> ${CONFIG}
+	echo "CONFIG_PEERKEY=y" >> ${CONFIG}
+	echo "CONFIG_RSN_PREAUTH=y" >> ${CONFIG}
+	echo "CONFIG_INTERWORKING=y" >> ${CONFIG}
+	echo "CONFIG_FULL_DYNAMIC_VLAN=y" >> ${CONFIG}
+	echo "CONFIG_HS20=y" >> ${CONFIG}
+	echo "CONFIG_WNM=y" >> ${CONFIG}
+	echo "CONFIG_FST=y" >> ${CONFIG}
+	echo "CONFIG_FST_TEST=y" >> ${CONFIG}
+	echo "CONFIG_ACS=y" >> ${CONFIG}
+	echo "CONFIG_MBO=y" >> ${CONFIG}
+
+	# Disable random pool to work-around the slow random entropy
+	# generation on whirlwind. (See: crbug.com/1114912#c9)
+	# This is safe now because:
+	# 1. We now only use hostapd for tests. (on test APs or in
+	#    network.Ethernet8021X.* tests.)
+	# 2. The random pool (and entropy estimations) seem to mostly be
+	#    designed to guard against lack of initial entropy on a fresh
+	#    boot, but they run at every startup. In the presence of many
+	#    hostapd restarts, when "available entropy" gets drained by
+	#    hostapd, /dev/urandom should still be seeded with enough entropy.
+	# However, if we want to launch AP support in CrOS, it would be better
+	# to re-evaluate this with security experts.
+	echo "CONFIG_NO_RANDOM_POOL=y" >> ${CONFIG}
+
+	if use netlink; then
+		# Netlink support
+		echo "CONFIG_VLAN_NETLINK=y" >> ${CONFIG}
+	fi
+
+	if use ipv6; then
+		# IPv6 support
+		echo "CONFIG_IPV6=y" >> ${CONFIG}
+	fi
+
+	if use sqlite; then
+		# Sqlite support
+		echo "CONFIG_SQLITE=y" >> ${CONFIG}
+	fi
+
+	# If we are using libnl 2.0 and above, enable support for it
+	# Removed for now, since the 3.2 version is broken, and we don't
+	# support it.
+	if has_version ">=dev-libs/libnl-3.2"; then
+		echo "CONFIG_LIBNL32=y" >> .config
+	fi
+
+	# TODO: Add support for BSD drivers
+
+	default
+}
+
+src_compile() {
+	emake V=1
+
+	if use libressl || ! use internal-tls; then
+		emake V=1 nt_password_hash
+		emake V=1 hlr_auc_gw
+	fi
+}
+
+src_install() {
+	dosbin ${PN}
+	dobin ${PN}_cli
+
+	if use libressl || ! use internal-tls; then
+		dobin nt_password_hash hlr_auc_gw
+	fi
+
+	doman ${PN}{.8,_cli.1}
+
+	dodoc ChangeLog README
+	use wps && dodoc README-WPS
+
+	docinto examples
+	dodoc wired.conf
+
+	if use logwatch; then
+		insinto /etc/log.d/conf/services/
+		doins logwatch/${PN}.conf
+
+		exeinto /etc/log.d/scripts/services/
+		doexe logwatch/${PN}
+	fi
+
+	save_config .config
+}
+
+pkg_postinst() {
+	einfo
+	einfo "If you are running openRC you need to follow this instructions:"
+	einfo "In order to use ${PN} you need to set up your wireless card"
+	einfo "for master mode in /etc/conf.d/net and then start"
+	einfo "/etc/init.d/${PN}."
+	einfo
+	einfo "Example configuration:"
+	einfo
+	einfo "config_wlan0=( \"192.168.1.1/24\" )"
+	einfo "channel_wlan0=\"6\""
+	einfo "essid_wlan0=\"test\""
+	einfo "mode_wlan0=\"master\""
+	einfo
+	#if [ -e "${KV_DIR}"/net/mac80211 ]; then
+	#	einfo "This package now compiles against the headers installed by"
+	#	einfo "the kernel source for the mac80211 driver. You should "
+	#	einfo "re-emerge ${PN} after upgrading your kernel source."
+	#fi
+
+	if use wps; then
+		einfo "You have enabled Wi-Fi Protected Setup support, please"
+		einfo "read the README-WPS file in /usr/share/doc/${P}"
+		einfo "for info on how to use WPS"
+	fi
+}
diff --git a/net-wireless/hostapd/hostapd-9999.ebuild b/net-wireless/hostapd/hostapd-9999.ebuild
index 571f363..6273ad8 100644
--- a/net-wireless/hostapd/hostapd-9999.ebuild
+++ b/net-wireless/hostapd/hostapd-9999.ebuild
@@ -3,7 +3,7 @@
 
 EAPI="6"
 CROS_WORKON_PROJECT="chromiumos/third_party/hostap"
-CROS_WORKON_LOCALNAME="../third_party/wpa_supplicant-2.9"
+CROS_WORKON_LOCALNAME="../third_party/wpa_supplicant-cros/current"
 
 inherit cros-workon toolchain-funcs savedconfig
 
diff --git a/net-wireless/systembt/systembt-0.0.1-r111.ebuild b/net-wireless/systembt/systembt-0.0.1-r111.ebuild
new file mode 100644
index 0000000..37ec1b1
--- /dev/null
+++ b/net-wireless/systembt/systembt-0.0.1-r111.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT=("4044c5b32117b91cc288ad825f8345d7933ef54b" "f0e07f640a3baffca84e0f55ba42edbca202aefc" "48b28b8680caa31da7b5c4d3d44425a221b0c3ee")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "b4e5d17b5cdd2a8ab0bdf79e735235c7530409f3" "1e793181081ea50dec9407274b86bde3dfe50a71")
+CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/system/bt" "aosp/platform/system/bt")
+CROS_WORKON_LOCALNAME=("../platform2" "../aosp/system/bt/upstream" "../aosp/system/bt/bringup")
+CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/bt" "${S}/platform2/bt")
+CROS_WORKON_SUBTREE=("common-mk .gn" "" "")
+CROS_WORKON_OPTIONAL_CHECKOUT=(
+	""
+	"use !bt-bringup"
+	"use bt-bringup"
+)
+
+PLATFORM_SUBDIR="bt"
+
+inherit cros-workon platform
+
+DESCRIPTION="Bluetooth Tools and System Daemons for Linux"
+HOMEPAGE="https://android.googlesource.com/platform/system/bt/"
+
+LICENSE="Apache-2.0"
+KEYWORDS="*"
+IUSE="bt-bringup"
+REQUIRED_USE="?? ( bt-bringup )"
+
+DEPEND="
+	dev-libs/modp_b64:=
+	dev-libs/tinyxml2:=
+"
+
+RDEPEND="${DEPEND}"
+
+DOCS=( README.md )
diff --git a/net-wireless/systembt/systembt-0.0.1-r46.ebuild b/net-wireless/systembt/systembt-0.0.1-r46.ebuild
deleted file mode 100644
index 119c4ef..0000000
--- a/net-wireless/systembt/systembt-0.0.1-r46.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT=("75e289d3e6ade22048818d18980d229a30c32504" "92f4b2f8e2f621609f15d22b23ea0009c342fd4d" "48b28b8680caa31da7b5c4d3d44425a221b0c3ee")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb" "3cc6ea87ef525e84c9ed2cbf6809a6a4895b4ad4" "1e793181081ea50dec9407274b86bde3dfe50a71")
-CROS_WORKON_PROJECT=("chromiumos/platform2" "aosp/platform/system/bt" "aosp/platform/system/bt")
-CROS_WORKON_LOCALNAME=("../platform2" "../aosp/system/bt/upstream" "../aosp/system/bt/bringup")
-CROS_WORKON_DESTDIR=("${S}/platform2" "${S}/platform2/bt" "${S}/platform2/bt")
-CROS_WORKON_SUBTREE=("common-mk .gn" "" "")
-CROS_WORKON_OPTIONAL_CHECKOUT=(
-	""
-	"use !bt-bringup"
-	"use bt-bringup"
-)
-
-PLATFORM_SUBDIR="bt"
-
-inherit cros-workon platform
-
-DESCRIPTION="Bluetooth Tools and System Daemons for Linux"
-HOMEPAGE="https://android.googlesource.com/platform/system/bt/"
-
-LICENSE="Apache-2.0"
-KEYWORDS="*"
-IUSE="bt-bringup"
-REQUIRED_USE="?? ( bt-bringup )"
-
-DEPEND="
-	dev-libs/modp_b64:=
-	dev-libs/tinyxml2:=
-"
-
-RDEPEND="${DEPEND}"
-
-DOCS=( README.md )
diff --git a/net-wireless/wireless-regdb/Manifest b/net-wireless/wireless-regdb/Manifest
index 644b079..ec30def 100644
--- a/net-wireless/wireless-regdb/Manifest
+++ b/net-wireless/wireless-regdb/Manifest
@@ -1 +1 @@
-DIST wireless-regdb-2019.03.01.tar.xz 23196 BLAKE2B 804ad05a0270df58dd89eb7193f8b568b5534abfc52b35f519e27cfa1f1922db457c77477b3014bd6b48cdd1bbe9e859a6508afa848cf01efbbf6b20d10c4984 SHA512 f0b94e1f661d86f4fcd39384588e10d7353ad085563ddc40a98446b416ce0d7bd0cbe34f1d9620ac45a33f16b7bfe58419da915061942cd5f51d5a3bf9809d72
+DIST wireless-regdb-2021.04.21.tar.xz 24944 BLAKE2B 4af782ceefe67c311cb90d1f64d830d9e5d2ccb7bc1aebcd8a176079522c21f1d8ef70cad0bd7223e9d56d46e6d20030af2349da9944d7ee3590bad28aeba467 SHA512 0ffbee04ec08c2025a34b60adc11198d64cb258a6ce53caf758667d25b733a242ca592d76ebd08e5692047917f5f42bb67a176f67a7d6bd11ad9178378cd0d26
diff --git a/net-wireless/wireless-regdb/files/regdb-Ensure-outfile-is-written.patch b/net-wireless/wireless-regdb/files/regdb-Ensure-outfile-is-written.patch
new file mode 100644
index 0000000..f588953
--- /dev/null
+++ b/net-wireless/wireless-regdb/files/regdb-Ensure-outfile-is-written.patch
@@ -0,0 +1,37 @@
+diff --git a/Makefile b/Makefile
+index 02176ec..a3ace28 100644
+--- a/Makefile
++++ b/Makefile
+@@ -62,8 +62,10 @@ regulatory.bin: db.txt $(REGDB_PRIVKEY) $(REGDB_PUBKEY)
+ regulatory.db: db.txt db2fw.py
+ 	@echo "Generating $@"
+ 	./db2fw.py regulatory.db db.txt
++	@echo "Validating regulatory.db: $$(pwd && df -h . && ls -la regulatory.db)"
+ 
+ regulatory.db.p7s: regulatory.db $(REGDB_PRIVKEY) $(REGDB_PUBCERT)
++	@echo "Validating regulatory.db: $$(pwd && df -h . && ls -la regulatory.db)"
+ 	@echo "Signing regulatory.db (by $(REGDB_AUTHOR))..."
+ 	@openssl smime -sign \
+ 		-signer $(REGDB_PUBCERT) \
+diff --git a/db2fw.py b/db2fw.py
+index 3affd5a..f0d391c 100755
+--- a/db2fw.py
++++ b/db2fw.py
+@@ -6,6 +6,7 @@ import hashlib
+ from dbparse import DBParser
+ import sys
+ from math import log
++import os
+ 
+ MAGIC = 0x52474442
+ VERSION = 20
+@@ -154,5 +155,7 @@ for coll in collections:
+ for alpha2 in countrynames:
+     assert country_ptrs[alpha2].written
+ 
+-outfile = open(sys.argv[1], 'wb')
+-outfile.write(output.getvalue())
++with open(sys.argv[1], 'wb') as outfile:
++    outfile.write(output.getvalue())
++    outfile.flush()
++    os.fsync(outfile.fileno())
diff --git a/net-wireless/wireless-regdb/files/regdb-gb-5ghz.patch b/net-wireless/wireless-regdb/files/regdb-gb-5ghz.patch
new file mode 100644
index 0000000..af23608
--- /dev/null
+++ b/net-wireless/wireless-regdb/files/regdb-gb-5ghz.patch
@@ -0,0 +1,20 @@
+Based on the latest IR 2030 update [1], update this range to cover
+5725-5850 MHz rather than 5725-5875 MHz, increase the max EIRP to
+200 mW, remove the DFS requirement, and add NO-OUTDOOR.
+
+[1] https://www.ofcom.org.uk/__data/assets/pdf_file/0028/84970/ir-2030.pdf
+
+Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
+
+diff --git a/db.txt b/db.txt
+index ddf9e14..a5829e0 100644
+--- a/db.txt
++++ b/db.txt
+@@ -599,7 +599,7 @@ country GB: DFS-ETSI
+ 	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
+ 	(5470 - 5730 @ 160), (500 mW), DFS, wmmrule=ETSI
+ 	# short range devices (ETSI EN 300 440-1)
+-	(5725 - 5875 @ 80), (100 mW), DFS
++	(5725 - 5850 @ 80), (200 mW), NO-OUTDOOR
+ 	# 60 GHz band channels 1-6
+ 	(57000 - 71000 @ 2160), (40)
\ No newline at end of file
diff --git a/net-wireless/wireless-regdb/wireless-regdb-20190301-r1.ebuild b/net-wireless/wireless-regdb/wireless-regdb-20190301-r1.ebuild
deleted file mode 120000
index c187967..0000000
--- a/net-wireless/wireless-regdb/wireless-regdb-20190301-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-wireless-regdb-20190301.ebuild
\ No newline at end of file
diff --git a/net-wireless/wireless-regdb/wireless-regdb-20190301.ebuild b/net-wireless/wireless-regdb/wireless-regdb-20190301.ebuild
deleted file mode 100644
index 0f6178c..0000000
--- a/net-wireless/wireless-regdb/wireless-regdb-20190301.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils multilib
-
-MY_P="wireless-regdb-${PV:0:4}.${PV:4:2}.${PV:6:2}"
-DESCRIPTION="Binary regulatory database for CRDA"
-HOMEPAGE="https://wireless.kernel.org/en/developers/Regulatory"
-SRC_URI="https://www.kernel.org/pub/software/network/${PN}/${MY_P}.tar.xz"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
-	"${FILESDIR}"/regdb-ar-5ghz.patch
-)
-
-src_compile() {
-	emake -j1 REGDB_AUTHOR=chromium
-}
-
-src_install() {
-	# This file is not ABI-specific, and crda itself always hardcodes
-	# this path.  So install into a common location for all ABIs to use.
-	insinto /usr/lib/crda
-	doins regulatory.bin
-
-	insinto /usr/lib/crda/pubkeys
-	doins chromium.key.pub.pem
-
-	# Linux 4.15 now complains if the firmware loader
-	# can't find these files #643520
-	insinto /lib/firmware
-	doins regulatory.db
-	doins regulatory.db.p7s
-
-	doman regulatory.bin.5
-	dodoc README db.txt
-}
diff --git a/net-wireless/wireless-regdb/wireless-regdb-20210421-r3.ebuild b/net-wireless/wireless-regdb/wireless-regdb-20210421-r3.ebuild
new file mode 120000
index 0000000..d120eb8
--- /dev/null
+++ b/net-wireless/wireless-regdb/wireless-regdb-20210421-r3.ebuild
@@ -0,0 +1 @@
+wireless-regdb-20210421.ebuild
\ No newline at end of file
diff --git a/net-wireless/wireless-regdb/wireless-regdb-20210421.ebuild b/net-wireless/wireless-regdb/wireless-regdb-20210421.ebuild
new file mode 100644
index 0000000..139515d
--- /dev/null
+++ b/net-wireless/wireless-regdb/wireless-regdb-20210421.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+MY_P="wireless-regdb-${PV:0:4}.${PV:4:2}.${PV:6:2}"
+DESCRIPTION="Binary regulatory database for CRDA"
+HOMEPAGE="https://wireless.wiki.kernel.org/en/developers/regulatory/wireless-regdb"
+SRC_URI="https://www.kernel.org/pub/software/network/${PN}/${MY_P}.tar.xz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="*"
+
+PATCHES=(
+	"${FILESDIR}"/regdb-ar-5ghz.patch
+	"${FILESDIR}"/regdb-Ensure-outfile-is-written.patch
+	# TODO(b:201792393) Once Gentoo upstream has this patch, uprev our
+	# wireless-regdb package so we can get rid of this patch.
+	"${FILESDIR}"/regdb-gb-5ghz.patch
+)
+
+src_compile() {
+	emake -j1 REGDB_AUTHOR=chromium
+}
+
+src_install() {
+	# This file is not ABI-specific, and crda itself always hardcodes
+	# this path.  So install into a common location for all ABIs to use.
+	insinto /usr/lib/crda
+	doins regulatory.bin
+
+	insinto /usr/lib/crda/pubkeys
+	doins chromium.key.pub.pem
+
+	# Linux 4.15 now complains if the firmware loader
+	# can't find these files #643520
+	insinto /lib/firmware
+	doins regulatory.db
+	doins regulatory.db.p7s
+
+	doman regulatory.bin.5
+	dodoc README db.txt
+}
diff --git a/net-wireless/wpa_supplicant-2_9/files/init/wpasupplicant.conf b/net-wireless/wpa_supplicant-2_9/files/init/wpasupplicant.conf
deleted file mode 100644
index 6cd20b9..0000000
--- a/net-wireless/wpa_supplicant-2_9/files/init/wpasupplicant.conf
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 2020 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.
-
-description     "WPA Supplicant daemon"
-author          "chromium-os-dev@chromium.org"
-
-# Default log level for wpa_supplicant.
-env WPA_DEBUG=
-
-# OpenSSL compatibility settings.
-# TODO(crbug.com/1047146): Drop these stop-gaps after addressing the underlying
-# problems described in the bug.
-env OPENSSL_CONF=/etc/ssl/openssl.cnf.compat
-env OPENSSL_CHROMIUM_SKIP_TRUSTED_PURPOSE_CHECK=1
-env OPENSSL_CHROMIUM_GENERATE_METRICS=1
-env seccomp_flags='--seccomp-bpf-binary /usr/share/policy/wpa_supplicant.bpf'
-# Use a canary flag, such that we only enable seccomp once per boot. If it
-# crashes for some reason (possibly incomplete seccomp filter?), next time
-# we'll start it without seccomp.
-# TODO(b/177454191): remove this once stabilized.
-env seccomp_disable='/run/wpa_supplicant/tried-seccomp'
-
-# https://crbug.com/783125: "started boot-services" is relatively early in the
-# boot process. This is necessary for getting online quickly, a metric which we
-# optimize for alongside "time to login screen," because networking is a
-# critical service.
-start on started boot-services
-stop on stopping boot-services
-respawn
-
-# make sure the control interface dir exists and has the right owner
-pre-start script
-  mkdir -p -m 0750 /run/wpa_supplicant
-  chown wpa:wpa /run/wpa_supplicant
-end script
-
-# minijail0 will jail the wpa_supplicant instance it forks off.
-expect fork
-
-# use minijail (drop root, keep CAP_NET_ADMIN|CAP_NET_RAW, set NoNewPrivs)
-# enable dbus, syslog msgs, wpa_cli over unix domain socket
-script
-  ARGS=""
-  case ${WPA_DEBUG} in
-    excessive) ARGS='-ddd';;
-    msgdump)   ARGS='-dd';;
-    debug)     ARGS='-d';;
-    info)      ARGS='';;
-    warning)   ARGS='-q';;
-    error)     ARGS='-qq';;
-  esac
-  if [ -e "${seccomp_disable}" ]; then
-    seccomp_flags=''
-  else
-    echo 1 > "${seccomp_disable}"
-  fi
-  exec minijail0 -u wpa -g wpa -c 3000 -n -i ${seccomp_flags} -- \
-    /usr/sbin/wpa_supplicant -u -s ${ARGS} -O/run/wpa_supplicant
-end script
diff --git a/net-wireless/wpa_supplicant-2_9/files/seccomp/wpa_supplicant-amd64.policy b/net-wireless/wpa_supplicant-2_9/files/seccomp/wpa_supplicant-amd64.policy
deleted file mode 100644
index 5459d0d..0000000
--- a/net-wireless/wpa_supplicant-2_9/files/seccomp/wpa_supplicant-amd64.policy
+++ /dev/null
@@ -1,76 +0,0 @@
-# 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.
-
-clock_gettime: 1
-sendmsg: 1
-select: 1
-ioctl: arg1 == TIOCOUTQ || arg1 == SIOCGIFNAME || arg1 == TCGETS || \
-       arg1 == SIOCSIFFLAGS || arg1 == SIOCGIFHWADDR || \
-       arg1 == SIOCGIFFLAGS || arg1 == SIOCGIFINDEX || arg1 == SIOCGIFADDR
-getsockopt: 1
-recvmsg: 1
-setsockopt: 1
-rt_sigprocmask: 1
-recvfrom: 1
-getpid: 1
-close: 1
-socket: arg0 == AF_INET || arg0 == AF_NETLINK || arg0 == AF_UNIX || arg0 == AF_PACKET
-gettid: 1
-tgkill: 1
-rt_sigreturn: 1
-mmap: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
-lstat: 1
-sendto: 1
-read: 1
-madvise: 1
-futex: 1
-openat: 1
-fstat: 1
-stat: 1
-mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
-bind: 1
-fcntl: 1
-poll: 1
-write: 1
-brk: 1
-rt_sigaction: 1
-getsockname: 1
-readlink: 1
-access: 1
-munmap: 1
-mlock: 1
-munlock: 1
-connect: 1
-getrandom: 1
-arch_prctl: 1
-set_tid_address: 1
-set_robust_list: 1
-prlimit64: 1
-clock_getres: 1
-getresuid: 1
-getresgid: 1
-geteuid: 1
-lseek: 1
-sysinfo: 1
-clone: 1
-setpriority: 1
-prctl: arg0 == PR_SET_NAME
-mkdir: 1
-chmod: 1
-pipe2: 1
-epoll_ctl: 1
-epoll_wait: 1
-restart_syscall: 1
-exit: 1
-exit_group: 1
-alarm: 1
-creat: 1
-epoll_create1: 1
-unlink: 1
-rmdir: 1
-wait4: 1
-flock: 1
-getuid: 1
-getgid: 1
-getegid: 1
diff --git a/net-wireless/wpa_supplicant-2_9/files/seccomp/wpa_supplicant-arm.policy b/net-wireless/wpa_supplicant-2_9/files/seccomp/wpa_supplicant-arm.policy
deleted file mode 100644
index 501395a..0000000
--- a/net-wireless/wpa_supplicant-2_9/files/seccomp/wpa_supplicant-arm.policy
+++ /dev/null
@@ -1,82 +0,0 @@
-# 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.
-
-clock_gettime: 1
-clock_gettime64: 1
-getpid: 1
-gettimeofday: 1
-send: 1
-sendmsg: 1
-ioctl: arg1 == TIOCOUTQ || arg1 == SIOCGIFNAME || arg1 == TCGETS || \
-       arg1 == SIOCSIFFLAGS || arg1 == SIOCGIFHWADDR || \
-       arg1 == SIOCGIFFLAGS || arg1 == SIOCGIFINDEX || arg1 == SIOCGIFADDR
-getsockopt: 1
-recvmsg: 1
-gettid: 1
-_newselect: 1
-madvise: 1
-futex: 1
-setsockopt: 1
-epoll_wait: 1
-mmap2: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
-munmap: 1
-mlock: 1
-munlock: 1
-read: 1
-poll: 1
-write: 1
-rt_sigprocmask: 1
-recvfrom: 1
-tgkill: 1
-sigreturn: 1
-close: 1
-socket: arg0 == AF_INET || arg0 == AF_NETLINK || arg0 == AF_UNIX || arg0 == AF_PACKET
-openat: 1
-mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
-sendto: 1
-fstat64: 1
-lstat64: 1
-stat64: 1
-brk: 1
-fcntl64: 1
-bind: 1
-getsockname: 1
-rt_sigaction: 1
-readlink: 1
-geteuid32: 1
-getuid32: 1
-getgid32: 1
-getegid32: 1
-access: 1
-connect: 1
-set_robust_list: 1
-getrandom: 1
-mkdir: 1
-chmod: 1
-pipe2: 1
-epoll_ctl: 1
-uname: 1
-ARM_set_tls: 1
-set_tid_address: 1
-ugetrlimit: 1
-clock_getres: 1
-clock_getres_time64: 1
-getresuid32: 1
-getresgid32: 1
-_llseek: 1
-sysinfo: 1
-clone: 1
-sched_getattr: 1
-sched_setattr: 1
-setpriority: 1
-prctl: arg0 == PR_SET_NAME
-epoll_create1: 1
-unlink: 1
-rmdir: 1
-restart_syscall: 1
-exit: 1
-exit_group: 1
-rt_sigreturn: 1
-setitimer: 1
-wait4: 1
diff --git a/net-wireless/wpa_supplicant-2_9/files/seccomp/wpa_supplicant-arm64.policy b/net-wireless/wpa_supplicant-2_9/files/seccomp/wpa_supplicant-arm64.policy
deleted file mode 100644
index 75e357c..0000000
--- a/net-wireless/wpa_supplicant-2_9/files/seccomp/wpa_supplicant-arm64.policy
+++ /dev/null
@@ -1,72 +0,0 @@
-# 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.
-
-getpid: 1
-sendto: 1
-recvmsg: 1
-ioctl: arg1 == TIOCOUTQ || arg1 == SIOCGIFNAME || arg1 == TCGETS || \
-       arg1 == SIOCSIFFLAGS || arg1 == SIOCGIFHWADDR || \
-       arg1 == SIOCGIFFLAGS || arg1 == SIOCGIFINDEX || arg1 == SIOCGIFADDR
-getsockopt: 1
-sendmsg: 1
-gettid: 1
-setsockopt: 1
-madvise: 1
-pselect6: 1
-close: 1
-futex: 1
-epoll_pwait: 1
-recvfrom: 1
-rt_sigprocmask: 1
-mmap: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
-write: 1
-munmap: 1
-mlock: 1
-munlock: 1
-socket: arg0 == AF_PACKET || arg0 == AF_INET || arg0 == AF_NETLINK || arg0 == AF_UNIX
-read: 1
-openat: 1
-rt_sigreturn: 1
-tgkill: 1
-ppoll: 1
-fstat: 1
-newfstatat: 1
-mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
-bind: 1
-fcntl: 1
-readlinkat: 1
-brk: 1
-epoll_ctl: 1
-getsockname: 1
-rt_sigaction: 1
-unlinkat: 1
-mkdirat: 1
-fchmodat: 1
-faccessat: 1
-set_robust_list: 1
-geteuid: 1
-getrandom: 1
-getuid: 1
-getgid: 1
-getegid: 1
-set_tid_address: 1
-prlimit64: 1
-exit_group: 1
-setitimer: 1
-clone: 1
-connect: 1
-pipe2: 1
-wait4: 1
-flock: 1
-getresuid: 1
-getresgid: 1
-lseek: 1
-sysinfo: 1
-sched_getattr: 1
-sched_setattr: 1
-setpriority: 1
-prctl: arg0 == PR_SET_NAME
-epoll_create1: 1
-restart_syscall: 1
-exit: 1
diff --git a/net-wireless/wpa_supplicant-2_9/wpa_supplicant-2_9-2.9-r27.ebuild b/net-wireless/wpa_supplicant-2_9/wpa_supplicant-2_9-2.9-r27.ebuild
deleted file mode 100644
index 4412904..0000000
--- a/net-wireless/wpa_supplicant-2_9/wpa_supplicant-2_9-2.9-r27.ebuild
+++ /dev/null
@@ -1,444 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="8ac12f2cec9b9c227e8719fca00d4d6c75cf7270"
-CROS_WORKON_TREE="76ef3707eefe49ae08b8c889ada1c4a987fbaa6e"
-CROS_WORKON_PROJECT="chromiumos/third_party/hostap"
-CROS_WORKON_LOCALNAME="../third_party/wpa_supplicant-2.9"
-CROS_WORKON_EGIT_BRANCH="wpa_supplicant-2.9"
-
-inherit cros-sanitizers cros-workon eutils flag-o-matic qmake-utils systemd toolchain-funcs user
-
-DESCRIPTION="IEEE 802.1X/WPA supplicant for secure wireless transfers"
-HOMEPAGE="https://w1.fi/wpa_supplicant/"
-LICENSE="|| ( GPL-2 BSD )"
-
-SLOT="0"
-KEYWORDS="*"
-IUSE="ap bindist dbus debug eap-sim +hs2-0 libressl mbo p2p ps3 qt5 readline +seccomp selinux smartcard systemd +tdls uncommon-eap-types wifi_hostap_test +wnm wps kernel_linux kernel_FreeBSD wimax"
-
-CDEPEND="
-	chromeos-base/minijail
-	dbus? ( sys-apps/dbus )
-	kernel_linux? (
-		dev-libs/libnl:3
-		net-wireless/crda
-	)
-	!kernel_linux? ( net-libs/libpcap )
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtsvg:5
-		dev-qt/qtwidgets:5
-	)
-	readline? (
-		sys-libs/ncurses:0
-		sys-libs/readline:0
-	)
-	!libressl? ( dev-libs/openssl:0=[bindist=] )
-	libressl? ( dev-libs/libressl:0= )
-	smartcard? ( dev-libs/engine_pkcs11 )
-"
-DEPEND="${CDEPEND}
-	virtual/pkgconfig
-"
-RDEPEND="${CDEPEND}
-	!net-wireless/wpa_supplicant
-	!net-wireless/wpa_supplicant-2_8
-	selinux? ( sec-policy/selinux-networkmanager )
-"
-
-# S="${WORKDIR}/${P}/${PN}"
-src_unpack() {
-	cros-workon_src_unpack
-	S+="/wpa_supplicant"
-}
-
-Kconfig_style_config() {
-		#param 1 is CONFIG_* item
-		#param 2 is what to set it = to, defaulting in y
-		CONFIG_PARAM="${CONFIG_HEADER:-CONFIG_}$1"
-		setting="${2:-y}"
-
-		if [ ! $setting = n ]; then
-			#first remove any leading "# " if $2 is not n
-			sed -i "/^# *$CONFIG_PARAM=/s/^# *//" .config || echo "Kconfig_style_config error uncommenting $CONFIG_PARAM"
-			#set item = $setting (defaulting to y)
-			sed -i "/^$CONFIG_PARAM\>/s/=.*/=$setting/" .config || echo "Kconfig_style_config error setting $CONFIG_PARAM=$setting"
-			if [ -z "$( grep ^$CONFIG_PARAM= .config )" ] ; then
-				echo "$CONFIG_PARAM=$setting" >>.config
-			fi
-		else
-			#ensure item commented out
-			sed -i "/^$CONFIG_PARAM\>/s/$CONFIG_PARAM/# $CONFIG_PARAM/" .config || echo "Kconfig_style_config error commenting $CONFIG_PARAM"
-		fi
-}
-
-src_prepare() {
-	# net/bpf.h needed for net-libs/libpcap on Gentoo/FreeBSD
-	sed -i \
-		-e "s:\(#include <pcap\.h>\):#include <net/bpf.h>\n\1:" \
-		../src/l2_packet/l2_packet_freebsd.c || die
-
-	# People seem to take the example configuration file too literally (bug #102361)
-	sed -i \
-		-e "s:^\(opensc_engine_path\):#\1:" \
-		-e "s:^\(pkcs11_engine_path\):#\1:" \
-		-e "s:^\(pkcs11_module_path\):#\1:" \
-		wpa_supplicant.conf || die
-
-	# Change configuration to match Gentoo locations (bug #143750)
-	sed -i \
-		-e "s:/usr/lib/opensc:/usr/$(get_libdir):" \
-		-e "s:/usr/lib/pkcs11:/usr/$(get_libdir):" \
-		wpa_supplicant.conf || die
-
-	# systemd entries to D-Bus service files (bug #372877)
-	# echo 'SystemdService=wpa_supplicant.service' \
-	# 	| tee -a dbus/*.service >/dev/null || die
-
-	cd "${WORKDIR}/${P}" || die
-
-	if use wimax; then
-		# generate-libeap-peer.patch comes before
-		# fix-undefined-reference-to-random_get_bytes.patch
-		# epatch "${FILESDIR}/${P}-generate-libeap-peer.patch"
-
-		# multilib-strict fix (bug #373685)
-		sed -e "s/\/usr\/lib/\/usr\/$(get_libdir)/" -i src/eap_peer/Makefile || die
-	fi
-
-	# bug (320097)
-	# epatch "${FILESDIR}/${P}-do-not-call-dbus-functions-with-NULL-path.patch"
-
-	# TODO - NEED TESTING TO SEE IF STILL NEEDED, NOT COMPATIBLE WITH 1.0 OUT OF THE BOX,
-	# SO WOULD BE NICE TO JUST DROP IT, IF IT IS NOT NEEDED.
-	# bug (374089)
-	#epatch "${FILESDIR}/${P}-dbus-WPAIE-fix.patch"
-
-	# bug (565270)
-	# epatch "${FILESDIR}/${P}-libressl.patch"
-	default
-}
-
-src_configure() {
-	sanitizers-setup-env
-	# Toolchain setup
-	append-flags -Werror
-	tc-export CC
-
-	cp defconfig .config || die
-
-	# Basic setup
-	Kconfig_style_config CTRL_IFACE
-	Kconfig_style_config MATCH_IFACE
-	Kconfig_style_config BACKEND file
-	Kconfig_style_config IBSS_RSN
-	Kconfig_style_config IEEE80211W
-	Kconfig_style_config IEEE80211R
-	Kconfig_style_config IEEE80211N
-	Kconfig_style_config IEEE80211AC
-	Kconfig_style_config HT_OVERRIDES
-	Kconfig_style_config VHT_OVERRIDES
-	Kconfig_style_config OCV
-	Kconfig_style_config TLSV11
-	Kconfig_style_config TLSV12
-	Kconfig_style_config GETRANDOM
-
-	# Basic authentication methods
-	# NOTE: we don't set GPSK or SAKE as they conflict
-	# with the below options
-	Kconfig_style_config EAP_GTC
-	Kconfig_style_config EAP_MD5
-	Kconfig_style_config EAP_OTP
-	Kconfig_style_config EAP_PAX
-	Kconfig_style_config EAP_PSK
-	Kconfig_style_config EAP_TLV
-	Kconfig_style_config EAP_EXE
-	Kconfig_style_config IEEE8021X_EAPOL
-	Kconfig_style_config PKCS12
-	Kconfig_style_config PEERKEY
-	Kconfig_style_config EAP_LEAP
-	Kconfig_style_config EAP_MSCHAPV2
-	Kconfig_style_config EAP_PEAP
-	Kconfig_style_config EAP_TEAP
-	Kconfig_style_config EAP_TLS
-	Kconfig_style_config EAP_TTLS
-
-	# Enabling background scanning.
-	Kconfig_style_config BGSCAN_SIMPLE
-	Kconfig_style_config BGSCAN_LEARN
-
-	if use dbus ; then
-		Kconfig_style_config CTRL_IFACE_DBUS
-		Kconfig_style_config CTRL_IFACE_DBUS_NEW
-		Kconfig_style_config CTRL_IFACE_DBUS_INTRO
-	else
-		Kconfig_style_config CTRL_IFACE_DBUS n
-		Kconfig_style_config CTRL_IFACE_DBUS_NEW n
-		Kconfig_style_config CTRL_IFACE_DBUS_INTRO n
-	fi
-
-	# Enable support for writing debug info to a log file and syslog.
-	Kconfig_style_config DEBUG_FILE
-	Kconfig_style_config DEBUG_SYSLOG
-	Kconfig_style_config DEBUG_SYSLOG_FACILITY LOG_LOCAL6
-
-	if use hs2-0 ; then
-		Kconfig_style_config INTERWORKING
-		Kconfig_style_config HS20
-	fi
-
-	# Enable support for MBO (Multi-Band Operation), see
-	# https://www.wi-fi.org/discover-wi-fi/wi-fi-agile-multiband
-	if use mbo ; then
-		Kconfig_style_config MBO
-	else
-		Kconfig_style_config MBO n
-	fi
-
-	if use uncommon-eap-types; then
-		Kconfig_style_config EAP_GPSK
-		Kconfig_style_config EAP_SAKE
-		Kconfig_style_config EAP_GPSK_SHA256
-		Kconfig_style_config EAP_IKEV2
-		Kconfig_style_config EAP_EKE
-	fi
-
-	if use eap-sim ; then
-		# Smart card authentication
-		Kconfig_style_config EAP_SIM
-		Kconfig_style_config EAP_AKA
-		Kconfig_style_config EAP_AKA_PRIME
-		# CHROMIUM: We don't have smartcard support. Instead include the
-		# client library for external processing via the control interface.
-		# Kconfig_style_config PCSC
-		Kconfig_style_config BUILD_WPA_CLIENT_SO
-	fi
-
-	if use readline ; then
-		# readline/history support for wpa_cli
-		Kconfig_style_config READLINE
-	else
-		#internal line edit mode for wpa_cli
-		Kconfig_style_config WPA_CLI_EDIT
-	fi
-
-	Kconfig_style_config TLS openssl
-	Kconfig_style_config FST
-	if ! use bindist || use libressl; then
-		Kconfig_style_config EAP_PWD
-		#WPA3
-		Kconfig_style_config OWE
-		Kconfig_style_config SAE
-		Kconfig_style_config DPP
-		Kconfig_style_config SUITEB192
-	fi
-	if ! use bindist && ! use libressl; then
-		Kconfig_style_config SUITEB
-	fi
-
-	if use smartcard ; then
-		Kconfig_style_config SMARTCARD
-	else
-		Kconfig_style_config SMARTCARD n
-	fi
-
-	if use tdls ; then
-		Kconfig_style_config TDLS
-	fi
-
-	if use kernel_linux ; then
-		# Linux specific drivers
-		# Kconfig_style_config DRIVER_ATMEL
-		# Kconfig_style_config DRIVER_HOSTAP
-		# Kconfig_style_config DRIVER_IPW
-		Kconfig_style_config DRIVER_NL80211
-		# Kconfig_style_config DRIVER_RALINK
-		Kconfig_style_config DRIVER_WEXT
-		Kconfig_style_config DRIVER_WIRED
-
-		if use ps3 ; then
-			Kconfig_style_config DRIVER_PS3
-		fi
-
-	elif use kernel_FreeBSD ; then
-		# FreeBSD specific driver
-		Kconfig_style_config DRIVER_BSD
-	fi
-
-	# Wi-Fi Protected Setup (WPS)
-	if use wps ; then
-		Kconfig_style_config WPS
-		Kconfig_style_config WPS2
-		# USB Flash Drive
-		Kconfig_style_config WPS_UFD
-		# External Registrar
-		Kconfig_style_config WPS_ER
-		# Universal Plug'n'Play
-		Kconfig_style_config WPS_UPNP
-		# Near Field Communication
-		Kconfig_style_config WPS_NFC
-	else
-		Kconfig_style_config WPS n
-		Kconfig_style_config WPS2 n
-		Kconfig_style_config WPS_UFD n
-		Kconfig_style_config WPS_ER n
-		Kconfig_style_config WPS_UPNP n
-		Kconfig_style_config WPS_NFC n
-	fi
-
-	# Wi-Fi Direct (WiDi)
-	if use p2p ; then
-		Kconfig_style_config P2P
-		Kconfig_style_config WIFI_DISPLAY
-	else
-		Kconfig_style_config P2P n
-		Kconfig_style_config WIFI_DISPLAY n
-	fi
-
-	# Access Point Mode
-	if use ap ; then
-		Kconfig_style_config AP
-		# only AP currently support mesh networks.
-		Kconfig_style_config MESH
-	else
-		# (ChromeOS) Explicitly disable to override enabling from defconfig.
-		Kconfig_style_config AP        n
-		Kconfig_style_config MESH      n
-	fi
-
-	# Enable mitigation against certain attacks against TKIP
-	Kconfig_style_config DELAYED_MIC_ERROR_REPORT
-
-	# Turn on 802.11v Wireless Network Management
-	if use wnm ; then
-		Kconfig_style_config WNM
-	else
-		Kconfig_style_config WNM       n
-	fi
-
-	if use qt5 ; then
-		pushd "${S}"/wpa_gui-qt4 > /dev/null || die
-		eqmake5 wpa_gui.pro
-		popd > /dev/null || die
-	fi
-}
-
-src_compile() {
-	einfo "Building wpa_supplicant"
-	emake V=1 BINDIR=/usr/sbin
-
-	if use wimax; then
-		emake -C ../src/eap_peer clean
-		emake -C ../src/eap_peer
-	fi
-
-	if use qt5; then
-		einfo "Building wpa_gui"
-		emake -C "${S}"/wpa_gui-qt4
-	fi
-}
-
-src_install() {
-	dosbin wpa_supplicant
-	dobin wpa_cli wpa_passphrase
-
-	# baselayout-1 compat
-	if has_version "<sys-apps/baselayout-2.0.0"; then
-		dodir /sbin
-		dosym /usr/sbin/wpa_supplicant /sbin/wpa_supplicant
-		dodir /bin
-		dosym /usr/bin/wpa_cli /bin/wpa_cli
-	fi
-
-	if has_version ">=sys-apps/openrc-0.5.0"; then
-		newinitd "${FILESDIR}/${PN}-init.d" wpa_supplicant
-		newconfd "${FILESDIR}/${PN}-conf.d" wpa_supplicant
-	fi
-
-	dodoc ChangeLog {eap_testing,todo}.txt README{,-WPS} \
-		wpa_supplicant.conf
-
-	newdoc .config build-config
-
-	if use qt5 ; then
-		into /usr
-		dobin wpa_gui-qt4/wpa_gui
-		doicon wpa_gui-qt4/icons/wpa_gui.svg
-		make_desktop_entry wpa_gui "WPA Supplicant Administration GUI" "wpa_gui" "Qt;Network;"
-	fi
-
-	use wimax && emake DESTDIR="${D}" -C ../src/eap_peer install
-
-	if use eap-sim ; then
-		# Install this library and header for the external processor.
-		dolib.so libwpa_client.so
-
-		insinto /usr/include/wpa_supplicant
-		doins ../src/common/wpa_ctrl.h
-	fi
-
-	if use dbus ; then
-		# DBus introspection XML file.
-		insinto /usr/share/dbus-1/interfaces
-		doins ${FILESDIR}/dbus_bindings/fi.w1.wpa_supplicant1.xml || die
-		insinto /etc/dbus-1/system.d
-		# Allow (but don't require) wpa_supplicant to run as root only
-		# when building hwsim targets.
-		if use wifi_hostap_test; then
-			newins "${FILESDIR}"/dbus_permissions/root_fi.w1.wpa_supplicant1.conf \
-				fi.w1.wpa_supplicant1.conf
-		else
-			doins "${FILESDIR}"/dbus_permissions/fi.w1.wpa_supplicant1.conf
-		fi
-	fi
-	# Install the init scripts
-	if use systemd; then
-		insinto /usr/share
-		systemd_dounit ${FILESDIR}/init/wpasupplicant.service
-		systemd_enable_service boot-services.target wpasupplicant.service
-		systemd_dotmpfilesd ${FILESDIR}/init/wpasupplicant-directories.conf
-	else
-		insinto /etc/init
-		doins ${FILESDIR}/init/wpasupplicant.conf
-		if use seccomp; then
-			local policy="${FILESDIR}/seccomp/wpa_supplicant-${ARCH}.policy"
-			local policy_out="${ED}/usr/share/policy/wpa_supplicant.bpf"
-			dodir /usr/share/policy
-			compile_seccomp_policy \
-				--arch-json "${SYSROOT}/build/share/constants.json" \
-				--default-action trap "${policy}" "${policy_out}" \
-				|| die "failed to compile seccomp policy ${policy}"
-		else
-			sed -i '/^env seccomp_flags=/s:=.*:="":' \
-				"${ED}"/etc/init/wpasupplicant.conf || die
-		fi
-	fi
-}
-
-pkg_preinst() {
-	enewuser "wpa"
-	enewgroup "wpa"
-}
-
-pkg_postinst() {
-	if [[ -e ${ROOT}etc/wpa_supplicant.conf ]] ; then
-		echo
-		ewarn "WARNING: your old configuration file ${ROOT}etc/wpa_supplicant.conf"
-		ewarn "needs to be moved to ${ROOT}etc/wpa_supplicant/wpa_supplicant.conf"
-	fi
-
-	if use bindist; then
-		if ! use libressl; then
-			ewarn "Using bindist use flag presently breaks WPA3 (specifically SAE, OWE, DPP, and FILS)."
-			ewarn "This is incredibly undesirable"
-		fi
-	fi
-	if use libressl; then
-		ewarn "Libressl doesn't support SUITEB (part of WPA3)"
-		ewarn "but it does support SUITEB192 (the upgraded strength version of the same)"
-		ewarn "You probably don't care.  Patches welcome"
-	fi
-}
diff --git a/net-wireless/wpa_supplicant-2_9/wpa_supplicant-2_9-9999.ebuild b/net-wireless/wpa_supplicant-2_9/wpa_supplicant-2_9-9999.ebuild
deleted file mode 100644
index 73755c5..0000000
--- a/net-wireless/wpa_supplicant-2_9/wpa_supplicant-2_9-9999.ebuild
+++ /dev/null
@@ -1,442 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_PROJECT="chromiumos/third_party/hostap"
-CROS_WORKON_LOCALNAME="../third_party/wpa_supplicant-2.9"
-CROS_WORKON_EGIT_BRANCH="wpa_supplicant-2.9"
-
-inherit cros-sanitizers cros-workon eutils flag-o-matic qmake-utils systemd toolchain-funcs user
-
-DESCRIPTION="IEEE 802.1X/WPA supplicant for secure wireless transfers"
-HOMEPAGE="https://w1.fi/wpa_supplicant/"
-LICENSE="|| ( GPL-2 BSD )"
-
-SLOT="0"
-KEYWORDS="~*"
-IUSE="ap bindist dbus debug eap-sim +hs2-0 libressl mbo p2p ps3 qt5 readline +seccomp selinux smartcard systemd +tdls uncommon-eap-types wifi_hostap_test +wnm wps kernel_linux kernel_FreeBSD wimax"
-
-CDEPEND="
-	chromeos-base/minijail
-	dbus? ( sys-apps/dbus )
-	kernel_linux? (
-		dev-libs/libnl:3
-		net-wireless/crda
-	)
-	!kernel_linux? ( net-libs/libpcap )
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtsvg:5
-		dev-qt/qtwidgets:5
-	)
-	readline? (
-		sys-libs/ncurses:0
-		sys-libs/readline:0
-	)
-	!libressl? ( dev-libs/openssl:0=[bindist=] )
-	libressl? ( dev-libs/libressl:0= )
-	smartcard? ( dev-libs/engine_pkcs11 )
-"
-DEPEND="${CDEPEND}
-	virtual/pkgconfig
-"
-RDEPEND="${CDEPEND}
-	!net-wireless/wpa_supplicant
-	!net-wireless/wpa_supplicant-2_8
-	selinux? ( sec-policy/selinux-networkmanager )
-"
-
-# S="${WORKDIR}/${P}/${PN}"
-src_unpack() {
-	cros-workon_src_unpack
-	S+="/wpa_supplicant"
-}
-
-Kconfig_style_config() {
-		#param 1 is CONFIG_* item
-		#param 2 is what to set it = to, defaulting in y
-		CONFIG_PARAM="${CONFIG_HEADER:-CONFIG_}$1"
-		setting="${2:-y}"
-
-		if [ ! $setting = n ]; then
-			#first remove any leading "# " if $2 is not n
-			sed -i "/^# *$CONFIG_PARAM=/s/^# *//" .config || echo "Kconfig_style_config error uncommenting $CONFIG_PARAM"
-			#set item = $setting (defaulting to y)
-			sed -i "/^$CONFIG_PARAM\>/s/=.*/=$setting/" .config || echo "Kconfig_style_config error setting $CONFIG_PARAM=$setting"
-			if [ -z "$( grep ^$CONFIG_PARAM= .config )" ] ; then
-				echo "$CONFIG_PARAM=$setting" >>.config
-			fi
-		else
-			#ensure item commented out
-			sed -i "/^$CONFIG_PARAM\>/s/$CONFIG_PARAM/# $CONFIG_PARAM/" .config || echo "Kconfig_style_config error commenting $CONFIG_PARAM"
-		fi
-}
-
-src_prepare() {
-	# net/bpf.h needed for net-libs/libpcap on Gentoo/FreeBSD
-	sed -i \
-		-e "s:\(#include <pcap\.h>\):#include <net/bpf.h>\n\1:" \
-		../src/l2_packet/l2_packet_freebsd.c || die
-
-	# People seem to take the example configuration file too literally (bug #102361)
-	sed -i \
-		-e "s:^\(opensc_engine_path\):#\1:" \
-		-e "s:^\(pkcs11_engine_path\):#\1:" \
-		-e "s:^\(pkcs11_module_path\):#\1:" \
-		wpa_supplicant.conf || die
-
-	# Change configuration to match Gentoo locations (bug #143750)
-	sed -i \
-		-e "s:/usr/lib/opensc:/usr/$(get_libdir):" \
-		-e "s:/usr/lib/pkcs11:/usr/$(get_libdir):" \
-		wpa_supplicant.conf || die
-
-	# systemd entries to D-Bus service files (bug #372877)
-	# echo 'SystemdService=wpa_supplicant.service' \
-	# 	| tee -a dbus/*.service >/dev/null || die
-
-	cd "${WORKDIR}/${P}" || die
-
-	if use wimax; then
-		# generate-libeap-peer.patch comes before
-		# fix-undefined-reference-to-random_get_bytes.patch
-		# epatch "${FILESDIR}/${P}-generate-libeap-peer.patch"
-
-		# multilib-strict fix (bug #373685)
-		sed -e "s/\/usr\/lib/\/usr\/$(get_libdir)/" -i src/eap_peer/Makefile || die
-	fi
-
-	# bug (320097)
-	# epatch "${FILESDIR}/${P}-do-not-call-dbus-functions-with-NULL-path.patch"
-
-	# TODO - NEED TESTING TO SEE IF STILL NEEDED, NOT COMPATIBLE WITH 1.0 OUT OF THE BOX,
-	# SO WOULD BE NICE TO JUST DROP IT, IF IT IS NOT NEEDED.
-	# bug (374089)
-	#epatch "${FILESDIR}/${P}-dbus-WPAIE-fix.patch"
-
-	# bug (565270)
-	# epatch "${FILESDIR}/${P}-libressl.patch"
-	default
-}
-
-src_configure() {
-	sanitizers-setup-env
-	# Toolchain setup
-	append-flags -Werror
-	tc-export CC
-
-	cp defconfig .config || die
-
-	# Basic setup
-	Kconfig_style_config CTRL_IFACE
-	Kconfig_style_config MATCH_IFACE
-	Kconfig_style_config BACKEND file
-	Kconfig_style_config IBSS_RSN
-	Kconfig_style_config IEEE80211W
-	Kconfig_style_config IEEE80211R
-	Kconfig_style_config IEEE80211N
-	Kconfig_style_config IEEE80211AC
-	Kconfig_style_config HT_OVERRIDES
-	Kconfig_style_config VHT_OVERRIDES
-	Kconfig_style_config OCV
-	Kconfig_style_config TLSV11
-	Kconfig_style_config TLSV12
-	Kconfig_style_config GETRANDOM
-
-	# Basic authentication methods
-	# NOTE: we don't set GPSK or SAKE as they conflict
-	# with the below options
-	Kconfig_style_config EAP_GTC
-	Kconfig_style_config EAP_MD5
-	Kconfig_style_config EAP_OTP
-	Kconfig_style_config EAP_PAX
-	Kconfig_style_config EAP_PSK
-	Kconfig_style_config EAP_TLV
-	Kconfig_style_config EAP_EXE
-	Kconfig_style_config IEEE8021X_EAPOL
-	Kconfig_style_config PKCS12
-	Kconfig_style_config PEERKEY
-	Kconfig_style_config EAP_LEAP
-	Kconfig_style_config EAP_MSCHAPV2
-	Kconfig_style_config EAP_PEAP
-	Kconfig_style_config EAP_TEAP
-	Kconfig_style_config EAP_TLS
-	Kconfig_style_config EAP_TTLS
-
-	# Enabling background scanning.
-	Kconfig_style_config BGSCAN_SIMPLE
-	Kconfig_style_config BGSCAN_LEARN
-
-	if use dbus ; then
-		Kconfig_style_config CTRL_IFACE_DBUS
-		Kconfig_style_config CTRL_IFACE_DBUS_NEW
-		Kconfig_style_config CTRL_IFACE_DBUS_INTRO
-	else
-		Kconfig_style_config CTRL_IFACE_DBUS n
-		Kconfig_style_config CTRL_IFACE_DBUS_NEW n
-		Kconfig_style_config CTRL_IFACE_DBUS_INTRO n
-	fi
-
-	# Enable support for writing debug info to a log file and syslog.
-	Kconfig_style_config DEBUG_FILE
-	Kconfig_style_config DEBUG_SYSLOG
-	Kconfig_style_config DEBUG_SYSLOG_FACILITY LOG_LOCAL6
-
-	if use hs2-0 ; then
-		Kconfig_style_config INTERWORKING
-		Kconfig_style_config HS20
-	fi
-
-	# Enable support for MBO (Multi-Band Operation), see
-	# https://www.wi-fi.org/discover-wi-fi/wi-fi-agile-multiband
-	if use mbo ; then
-		Kconfig_style_config MBO
-	else
-		Kconfig_style_config MBO n
-	fi
-
-	if use uncommon-eap-types; then
-		Kconfig_style_config EAP_GPSK
-		Kconfig_style_config EAP_SAKE
-		Kconfig_style_config EAP_GPSK_SHA256
-		Kconfig_style_config EAP_IKEV2
-		Kconfig_style_config EAP_EKE
-	fi
-
-	if use eap-sim ; then
-		# Smart card authentication
-		Kconfig_style_config EAP_SIM
-		Kconfig_style_config EAP_AKA
-		Kconfig_style_config EAP_AKA_PRIME
-		# CHROMIUM: We don't have smartcard support. Instead include the
-		# client library for external processing via the control interface.
-		# Kconfig_style_config PCSC
-		Kconfig_style_config BUILD_WPA_CLIENT_SO
-	fi
-
-	if use readline ; then
-		# readline/history support for wpa_cli
-		Kconfig_style_config READLINE
-	else
-		#internal line edit mode for wpa_cli
-		Kconfig_style_config WPA_CLI_EDIT
-	fi
-
-	Kconfig_style_config TLS openssl
-	Kconfig_style_config FST
-	if ! use bindist || use libressl; then
-		Kconfig_style_config EAP_PWD
-		#WPA3
-		Kconfig_style_config OWE
-		Kconfig_style_config SAE
-		Kconfig_style_config DPP
-		Kconfig_style_config SUITEB192
-	fi
-	if ! use bindist && ! use libressl; then
-		Kconfig_style_config SUITEB
-	fi
-
-	if use smartcard ; then
-		Kconfig_style_config SMARTCARD
-	else
-		Kconfig_style_config SMARTCARD n
-	fi
-
-	if use tdls ; then
-		Kconfig_style_config TDLS
-	fi
-
-	if use kernel_linux ; then
-		# Linux specific drivers
-		# Kconfig_style_config DRIVER_ATMEL
-		# Kconfig_style_config DRIVER_HOSTAP
-		# Kconfig_style_config DRIVER_IPW
-		Kconfig_style_config DRIVER_NL80211
-		# Kconfig_style_config DRIVER_RALINK
-		Kconfig_style_config DRIVER_WEXT
-		Kconfig_style_config DRIVER_WIRED
-
-		if use ps3 ; then
-			Kconfig_style_config DRIVER_PS3
-		fi
-
-	elif use kernel_FreeBSD ; then
-		# FreeBSD specific driver
-		Kconfig_style_config DRIVER_BSD
-	fi
-
-	# Wi-Fi Protected Setup (WPS)
-	if use wps ; then
-		Kconfig_style_config WPS
-		Kconfig_style_config WPS2
-		# USB Flash Drive
-		Kconfig_style_config WPS_UFD
-		# External Registrar
-		Kconfig_style_config WPS_ER
-		# Universal Plug'n'Play
-		Kconfig_style_config WPS_UPNP
-		# Near Field Communication
-		Kconfig_style_config WPS_NFC
-	else
-		Kconfig_style_config WPS n
-		Kconfig_style_config WPS2 n
-		Kconfig_style_config WPS_UFD n
-		Kconfig_style_config WPS_ER n
-		Kconfig_style_config WPS_UPNP n
-		Kconfig_style_config WPS_NFC n
-	fi
-
-	# Wi-Fi Direct (WiDi)
-	if use p2p ; then
-		Kconfig_style_config P2P
-		Kconfig_style_config WIFI_DISPLAY
-	else
-		Kconfig_style_config P2P n
-		Kconfig_style_config WIFI_DISPLAY n
-	fi
-
-	# Access Point Mode
-	if use ap ; then
-		Kconfig_style_config AP
-		# only AP currently support mesh networks.
-		Kconfig_style_config MESH
-	else
-		# (ChromeOS) Explicitly disable to override enabling from defconfig.
-		Kconfig_style_config AP        n
-		Kconfig_style_config MESH      n
-	fi
-
-	# Enable mitigation against certain attacks against TKIP
-	Kconfig_style_config DELAYED_MIC_ERROR_REPORT
-
-	# Turn on 802.11v Wireless Network Management
-	if use wnm ; then
-		Kconfig_style_config WNM
-	else
-		Kconfig_style_config WNM       n
-	fi
-
-	if use qt5 ; then
-		pushd "${S}"/wpa_gui-qt4 > /dev/null || die
-		eqmake5 wpa_gui.pro
-		popd > /dev/null || die
-	fi
-}
-
-src_compile() {
-	einfo "Building wpa_supplicant"
-	emake V=1 BINDIR=/usr/sbin
-
-	if use wimax; then
-		emake -C ../src/eap_peer clean
-		emake -C ../src/eap_peer
-	fi
-
-	if use qt5; then
-		einfo "Building wpa_gui"
-		emake -C "${S}"/wpa_gui-qt4
-	fi
-}
-
-src_install() {
-	dosbin wpa_supplicant
-	dobin wpa_cli wpa_passphrase
-
-	# baselayout-1 compat
-	if has_version "<sys-apps/baselayout-2.0.0"; then
-		dodir /sbin
-		dosym /usr/sbin/wpa_supplicant /sbin/wpa_supplicant
-		dodir /bin
-		dosym /usr/bin/wpa_cli /bin/wpa_cli
-	fi
-
-	if has_version ">=sys-apps/openrc-0.5.0"; then
-		newinitd "${FILESDIR}/${PN}-init.d" wpa_supplicant
-		newconfd "${FILESDIR}/${PN}-conf.d" wpa_supplicant
-	fi
-
-	dodoc ChangeLog {eap_testing,todo}.txt README{,-WPS} \
-		wpa_supplicant.conf
-
-	newdoc .config build-config
-
-	if use qt5 ; then
-		into /usr
-		dobin wpa_gui-qt4/wpa_gui
-		doicon wpa_gui-qt4/icons/wpa_gui.svg
-		make_desktop_entry wpa_gui "WPA Supplicant Administration GUI" "wpa_gui" "Qt;Network;"
-	fi
-
-	use wimax && emake DESTDIR="${D}" -C ../src/eap_peer install
-
-	if use eap-sim ; then
-		# Install this library and header for the external processor.
-		dolib.so libwpa_client.so
-
-		insinto /usr/include/wpa_supplicant
-		doins ../src/common/wpa_ctrl.h
-	fi
-
-	if use dbus ; then
-		# DBus introspection XML file.
-		insinto /usr/share/dbus-1/interfaces
-		doins ${FILESDIR}/dbus_bindings/fi.w1.wpa_supplicant1.xml || die
-		insinto /etc/dbus-1/system.d
-		# Allow (but don't require) wpa_supplicant to run as root only
-		# when building hwsim targets.
-		if use wifi_hostap_test; then
-			newins "${FILESDIR}"/dbus_permissions/root_fi.w1.wpa_supplicant1.conf \
-				fi.w1.wpa_supplicant1.conf
-		else
-			doins "${FILESDIR}"/dbus_permissions/fi.w1.wpa_supplicant1.conf
-		fi
-	fi
-	# Install the init scripts
-	if use systemd; then
-		insinto /usr/share
-		systemd_dounit ${FILESDIR}/init/wpasupplicant.service
-		systemd_enable_service boot-services.target wpasupplicant.service
-		systemd_dotmpfilesd ${FILESDIR}/init/wpasupplicant-directories.conf
-	else
-		insinto /etc/init
-		doins ${FILESDIR}/init/wpasupplicant.conf
-		if use seccomp; then
-			local policy="${FILESDIR}/seccomp/wpa_supplicant-${ARCH}.policy"
-			local policy_out="${ED}/usr/share/policy/wpa_supplicant.bpf"
-			dodir /usr/share/policy
-			compile_seccomp_policy \
-				--arch-json "${SYSROOT}/build/share/constants.json" \
-				--default-action trap "${policy}" "${policy_out}" \
-				|| die "failed to compile seccomp policy ${policy}"
-		else
-			sed -i '/^env seccomp_flags=/s:=.*:="":' \
-				"${ED}"/etc/init/wpasupplicant.conf || die
-		fi
-	fi
-}
-
-pkg_preinst() {
-	enewuser "wpa"
-	enewgroup "wpa"
-}
-
-pkg_postinst() {
-	if [[ -e ${ROOT}etc/wpa_supplicant.conf ]] ; then
-		echo
-		ewarn "WARNING: your old configuration file ${ROOT}etc/wpa_supplicant.conf"
-		ewarn "needs to be moved to ${ROOT}etc/wpa_supplicant/wpa_supplicant.conf"
-	fi
-
-	if use bindist; then
-		if ! use libressl; then
-			ewarn "Using bindist use flag presently breaks WPA3 (specifically SAE, OWE, DPP, and FILS)."
-			ewarn "This is incredibly undesirable"
-		fi
-	fi
-	if use libressl; then
-		ewarn "Libressl doesn't support SUITEB (part of WPA3)"
-		ewarn "but it does support SUITEB192 (the upgraded strength version of the same)"
-		ewarn "You probably don't care.  Patches welcome"
-	fi
-}
diff --git a/net-wireless/wpa_supplicant-2_9/files/chromeos-version.sh b/net-wireless/wpa_supplicant-cros/files/chromeos-version.sh
similarity index 100%
rename from net-wireless/wpa_supplicant-2_9/files/chromeos-version.sh
rename to net-wireless/wpa_supplicant-cros/files/chromeos-version.sh
diff --git a/net-wireless/wpa_supplicant-2_9/files/dbus_bindings/fi.w1.wpa_supplicant1.xml b/net-wireless/wpa_supplicant-cros/files/dbus_bindings/fi.w1.wpa_supplicant1.xml
similarity index 100%
rename from net-wireless/wpa_supplicant-2_9/files/dbus_bindings/fi.w1.wpa_supplicant1.xml
rename to net-wireless/wpa_supplicant-cros/files/dbus_bindings/fi.w1.wpa_supplicant1.xml
diff --git a/net-wireless/wpa_supplicant-2_9/files/dbus_permissions/fi.w1.wpa_supplicant1.conf b/net-wireless/wpa_supplicant-cros/files/dbus_permissions/fi.w1.wpa_supplicant1.conf
similarity index 100%
rename from net-wireless/wpa_supplicant-2_9/files/dbus_permissions/fi.w1.wpa_supplicant1.conf
rename to net-wireless/wpa_supplicant-cros/files/dbus_permissions/fi.w1.wpa_supplicant1.conf
diff --git a/net-wireless/wpa_supplicant-2_9/files/dbus_permissions/root_fi.w1.wpa_supplicant1.conf b/net-wireless/wpa_supplicant-cros/files/dbus_permissions/root_fi.w1.wpa_supplicant1.conf
similarity index 100%
rename from net-wireless/wpa_supplicant-2_9/files/dbus_permissions/root_fi.w1.wpa_supplicant1.conf
rename to net-wireless/wpa_supplicant-cros/files/dbus_permissions/root_fi.w1.wpa_supplicant1.conf
diff --git a/net-wireless/wpa_supplicant-2_9/files/init/wpasupplicant-directories.conf b/net-wireless/wpa_supplicant-cros/files/init/wpasupplicant-directories.conf
similarity index 100%
rename from net-wireless/wpa_supplicant-2_9/files/init/wpasupplicant-directories.conf
rename to net-wireless/wpa_supplicant-cros/files/init/wpasupplicant-directories.conf
diff --git a/net-wireless/wpa_supplicant-cros/files/init/wpasupplicant.conf b/net-wireless/wpa_supplicant-cros/files/init/wpasupplicant.conf
new file mode 100644
index 0000000..fcbbc8e
--- /dev/null
+++ b/net-wireless/wpa_supplicant-cros/files/init/wpasupplicant.conf
@@ -0,0 +1,54 @@
+# Copyright 2020 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.
+
+description     "WPA Supplicant daemon"
+author          "chromium-os-dev@chromium.org"
+
+# Default log level for wpa_supplicant.
+env WPA_DEBUG=
+
+# OpenSSL compatibility settings.
+# TODO(crbug.com/1047146): Drop these stop-gaps after addressing the underlying
+# problems described in the bug.
+env OPENSSL_CONF=/etc/ssl/openssl.cnf.compat
+env OPENSSL_CHROMIUM_SKIP_TRUSTED_PURPOSE_CHECK=1
+env OPENSSL_CHROMIUM_GENERATE_METRICS=1
+env seccomp_flags='--seccomp-bpf-binary /usr/share/policy/wpa_supplicant.bpf'
+
+# https://crbug.com/783125: "started boot-services" is relatively early in the
+# boot process. This is necessary for getting online quickly, a metric which we
+# optimize for alongside "time to login screen," because networking is a
+# critical service.
+start on started boot-services
+stop on stopping boot-services
+respawn
+
+# make sure the control interface dir exists and has the right owner
+pre-start script
+  mkdir -p -m 0750 /run/wpa_supplicant
+  chown wpa:wpa /run/wpa_supplicant
+end script
+
+# minijail0 will jail the wpa_supplicant instance it forks off.
+expect fork
+
+# This service is controlling the WiFi connection. It can be killed,
+# at the cost of an interruption in WiFi connectivity.
+oom score -100
+
+# use minijail (drop root, keep CAP_NET_ADMIN|CAP_NET_RAW, set NoNewPrivs)
+# enable dbus, syslog msgs, wpa_cli over unix domain socket
+script
+  ARGS=""
+  case ${WPA_DEBUG} in
+    excessive) ARGS='-ddd';;
+    msgdump)   ARGS='-dd';;
+    debug)     ARGS='-d';;
+    info)      ARGS='';;
+    warning)   ARGS='-q';;
+    error)     ARGS='-qq';;
+  esac
+  exec minijail0 -u wpa -g wpa -c 3000 -n -i ${seccomp_flags} -- \
+    /usr/sbin/wpa_supplicant -u -s ${ARGS} -O/run/wpa_supplicant
+end script
diff --git a/net-wireless/wpa_supplicant-2_9/files/init/wpasupplicant.service b/net-wireless/wpa_supplicant-cros/files/init/wpasupplicant.service
similarity index 100%
rename from net-wireless/wpa_supplicant-2_9/files/init/wpasupplicant.service
rename to net-wireless/wpa_supplicant-cros/files/init/wpasupplicant.service
diff --git a/net-wireless/wpa_supplicant-cros/files/seccomp/wpa_supplicant-amd64.policy b/net-wireless/wpa_supplicant-cros/files/seccomp/wpa_supplicant-amd64.policy
new file mode 100644
index 0000000..2c68993
--- /dev/null
+++ b/net-wireless/wpa_supplicant-cros/files/seccomp/wpa_supplicant-amd64.policy
@@ -0,0 +1,89 @@
+# 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.
+
+clock_gettime: 1
+gettimeofday: 1
+sendmsg: 1
+select: 1
+pselect6: 1
+ioctl: arg1 == TIOCOUTQ || arg1 == SIOCGIFNAME || arg1 == TCGETS || \
+       arg1 == SIOCSIFFLAGS || arg1 == SIOCGIFHWADDR || \
+       arg1 == SIOCGIFFLAGS || arg1 == SIOCGIFINDEX || arg1 == SIOCGIFADDR
+getsockopt: 1
+recvmsg: 1
+setsockopt: 1
+rt_sigprocmask: 1
+recvfrom: 1
+getpid: 1
+close: 1
+socket: arg0 == AF_INET || arg0 == AF_NETLINK || arg0 == AF_UNIX || arg0 == AF_PACKET
+gettid: 1
+tgkill: 1
+rt_sigreturn: 1
+mmap: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
+lstat: 1
+sendto: 1
+read: 1
+madvise: 1
+futex: 1
+openat: 1
+fstat: 1
+newfstatat: 1
+stat: 1
+mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
+bind: 1
+fcntl: 1
+poll: 1
+write: 1
+brk: 1
+rt_sigaction: 1
+getsockname: 1
+readlink: 1
+access: 1
+munmap: 1
+mlock: 1
+munlock: 1
+connect: 1
+getrandom: 1
+arch_prctl: 1
+faccessat: 1
+faccessat2: 1
+set_tid_address: 1
+set_robust_list: 1
+prlimit64: 1
+nanosleep: 1
+clock_nanosleep: 1
+clock_getres: 1
+getresuid: 1
+getresgid: 1
+geteuid: 1
+lseek: 1
+sysinfo: 1
+clone: 1
+setpriority: 1
+prctl: arg0 == PR_SET_NAME
+mkdir: 1
+chmod: 1
+pipe2: 1
+epoll_ctl: 1
+epoll_wait: 1
+restart_syscall: 1
+exit: 1
+exit_group: 1
+alarm: 1
+creat: 1
+epoll_create1: 1
+unlink: 1
+rmdir: 1
+wait4: 1
+flock: 1
+getuid: 1
+getgid: 1
+getegid: 1
+sched_yield: 1
+fstatfs: 1
+# TODO(b/172208472): Remove execve from allow list after the compatibility hack
+# mentioned in the bug has been retired.
+execve: 1
+mremap: 1
diff --git a/net-wireless/wpa_supplicant-cros/files/seccomp/wpa_supplicant-arm.policy b/net-wireless/wpa_supplicant-cros/files/seccomp/wpa_supplicant-arm.policy
new file mode 100644
index 0000000..b217c58
--- /dev/null
+++ b/net-wireless/wpa_supplicant-cros/files/seccomp/wpa_supplicant-arm.policy
@@ -0,0 +1,98 @@
+# 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.
+
+clock_gettime: 1
+clock_gettime64: 1
+getpid: 1
+gettimeofday: 1
+send: 1
+sendmsg: 1
+ioctl: arg1 == TIOCOUTQ || arg1 == SIOCGIFNAME || arg1 == TCGETS || \
+       arg1 == SIOCSIFFLAGS || arg1 == SIOCGIFHWADDR || \
+       arg1 == SIOCGIFFLAGS || arg1 == SIOCGIFINDEX || arg1 == SIOCGIFADDR
+getsockopt: 1
+recvmsg: 1
+gettid: 1
+_newselect: 1
+pselect6: 1
+pselect6_time64: 1
+madvise: 1
+futex: 1
+setsockopt: 1
+epoll_wait: 1
+mmap2: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
+munmap: 1
+mlock: 1
+munlock: 1
+read: 1
+poll: 1
+write: 1
+rt_sigprocmask: 1
+recvfrom: 1
+tgkill: 1
+sigreturn: 1
+close: 1
+socket: arg0 == AF_INET || arg0 == AF_NETLINK || arg0 == AF_UNIX || arg0 == AF_PACKET
+openat: 1
+mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
+sendto: 1
+fstat64: 1
+fstatat64: 1
+statx: 1
+lstat64: 1
+stat64: 1
+brk: 1
+fcntl64: 1
+bind: 1
+getsockname: 1
+rt_sigaction: 1
+readlink: 1
+geteuid32: 1
+getuid32: 1
+getgid32: 1
+getegid32: 1
+access: 1
+connect: 1
+faccessat: 1
+faccessat2: 1
+set_robust_list: 1
+getrandom: 1
+nanosleep: 1
+clock_nanosleep: 1
+clock_nanosleep_time64: 1
+mkdir: 1
+chmod: 1
+pipe2: 1
+epoll_ctl: 1
+uname: 1
+ARM_set_tls: 1
+set_tid_address: 1
+ugetrlimit: 1
+clock_getres: 1
+clock_getres_time64: 1
+getresuid32: 1
+getresgid32: 1
+_llseek: 1
+sysinfo: 1
+clone: 1
+sched_getattr: 1
+sched_setattr: 1
+setpriority: 1
+prctl: arg0 == PR_SET_NAME
+epoll_create1: 1
+unlink: 1
+rmdir: 1
+restart_syscall: 1
+exit: 1
+exit_group: 1
+rt_sigreturn: 1
+setitimer: 1
+wait4: 1
+sched_yield: 1
+fstatfs64: 1
+fstatfs: 1
+# TODO(b/172208472): Remove execve from allow list after the compatibility hack
+# mentioned in the bug has been retired.
+execve: 1
+mremap: 1
diff --git a/net-wireless/wpa_supplicant-cros/files/seccomp/wpa_supplicant-arm64.policy b/net-wireless/wpa_supplicant-cros/files/seccomp/wpa_supplicant-arm64.policy
new file mode 100644
index 0000000..0244c93
--- /dev/null
+++ b/net-wireless/wpa_supplicant-cros/files/seccomp/wpa_supplicant-arm64.policy
@@ -0,0 +1,84 @@
+# 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.
+
+clock_getres: 1
+clock_gettime: 1
+gettimeofday: 1
+getpid: 1
+sendto: 1
+recvmsg: 1
+ioctl: arg1 == TIOCOUTQ || arg1 == SIOCGIFNAME || arg1 == TCGETS || \
+       arg1 == SIOCSIFFLAGS || arg1 == SIOCGIFHWADDR || \
+       arg1 == SIOCGIFFLAGS || arg1 == SIOCGIFINDEX || arg1 == SIOCGIFADDR
+getsockopt: 1
+sendmsg: 1
+gettid: 1
+setsockopt: 1
+madvise: 1
+pselect6: 1
+close: 1
+futex: 1
+epoll_pwait: 1
+recvfrom: 1
+rt_sigprocmask: 1
+mmap: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
+write: 1
+munmap: 1
+mlock: 1
+munlock: 1
+socket: arg0 == AF_PACKET || arg0 == AF_INET || arg0 == AF_NETLINK || arg0 == AF_UNIX
+read: 1
+openat: 1
+rt_sigreturn: 1
+tgkill: 1
+ppoll: 1
+fstat: 1
+newfstatat: 1
+mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
+bind: 1
+fcntl: 1
+readlinkat: 1
+brk: 1
+epoll_ctl: 1
+getsockname: 1
+rt_sigaction: 1
+unlinkat: 1
+mkdirat: 1
+fchmodat: 1
+faccessat: 1
+faccessat2: 1
+set_robust_list: 1
+geteuid: 1
+getrandom: 1
+nanosleep: 1
+clock_nanosleep: 1
+getuid: 1
+getgid: 1
+getegid: 1
+set_tid_address: 1
+prlimit64: 1
+exit_group: 1
+setitimer: 1
+clone: 1
+connect: 1
+pipe2: 1
+wait4: 1
+flock: 1
+getresuid: 1
+getresgid: 1
+lseek: 1
+sysinfo: 1
+sched_getattr: 1
+sched_setattr: 1
+setpriority: 1
+prctl: arg0 == PR_SET_NAME
+epoll_create1: 1
+restart_syscall: 1
+exit: 1
+sched_yield: 1
+fstatfs: 1
+# TODO(b/172208472): Remove execve from allow list after the compatibility hack
+# mentioned in the bug has been retired.
+execve: 1
+mremap: 1
diff --git a/net-wireless/wpa_supplicant-2_9/metadata.xml b/net-wireless/wpa_supplicant-cros/metadata.xml
similarity index 100%
rename from net-wireless/wpa_supplicant-2_9/metadata.xml
rename to net-wireless/wpa_supplicant-cros/metadata.xml
diff --git a/net-wireless/wpa_supplicant-cros/wpa_supplicant-cros-2.9-r10.ebuild b/net-wireless/wpa_supplicant-cros/wpa_supplicant-cros-2.9-r10.ebuild
new file mode 100644
index 0000000..ad72325
--- /dev/null
+++ b/net-wireless/wpa_supplicant-cros/wpa_supplicant-cros-2.9-r10.ebuild
@@ -0,0 +1,494 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT=("112d4f509901d7de3dc3f8f6533cad487ce67f56" "c2c4af18a3850af1ae8a97f9b3859639d5d7cd00")
+CROS_WORKON_TREE=("982936790e4edc3320774f5e5e7bb4dbafd32f53" "9a6e035b9aea7e4044166e0744127763ad234692")
+CROS_WORKON_PROJECT=("chromiumos/third_party/hostap" "chromiumos/third_party/hostap")
+CROS_WORKON_LOCALNAME=("../third_party/wpa_supplicant-cros/current" "../third_party/wpa_supplicant-cros/next")
+CROS_WORKON_EGIT_BRANCH=("wpa_supplicant-2.9" "wpa_supplicant-2.9.1")
+CROS_WORKON_DESTDIR=("${S}/wpa_supplicant-cros/current" "${S}/wpa_supplicant-cros/next")
+CROS_WORKON_OPTIONAL_CHECKOUT=("use !supplicant-next" "use supplicant-next")
+
+inherit cros-sanitizers cros-workon cros-fuzzer eutils flag-o-matic qmake-utils systemd toolchain-funcs user
+
+DESCRIPTION="IEEE 802.1X/WPA supplicant for secure wireless transfers"
+HOMEPAGE="https://w1.fi/wpa_supplicant/"
+LICENSE="|| ( GPL-2 BSD )"
+
+SLOT="0"
+KEYWORDS="*"
+IUSE="ap bindist dbus debug eap-sim fuzzer +hs2-0 libressl mbo p2p ps3 qt5 readline +seccomp selinux smartcard supplicant-next systemd +tdls uncommon-eap-types +wep wifi_hostap_test +wnm wps kernel_linux kernel_FreeBSD wimax"
+
+CDEPEND="
+	chromeos-base/minijail
+	dbus? ( sys-apps/dbus )
+	kernel_linux? (
+		dev-libs/libnl:3
+		net-wireless/crda
+	)
+	!kernel_linux? ( net-libs/libpcap )
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtsvg:5
+		dev-qt/qtwidgets:5
+	)
+	readline? (
+		sys-libs/ncurses:0
+		sys-libs/readline:0
+	)
+	!libressl? ( dev-libs/openssl:0=[bindist=] )
+	libressl? ( dev-libs/libressl:0= )
+	smartcard? ( dev-libs/engine_pkcs11 )
+"
+DEPEND="${CDEPEND}
+	virtual/pkgconfig
+"
+RDEPEND="${CDEPEND}
+	!net-wireless/wpa_supplicant
+	!net-wireless/wpa_supplicant-2_8
+	!net-wireless/wpa_supplicant-2_9
+	selinux? ( sec-policy/selinux-networkmanager )
+"
+
+# All the available fuzzers.
+# TODO(b/197270874): enable them gradually to avoid a bug storm.
+FUZZERS=(
+	#"ap-mgmt"
+	#"asn1"
+	#"eap-aka-peer"
+	"eapol-key-auth"
+	"eapol-key-supp"
+	"eapol-supp"
+	#"eap-sim-peer"
+	#"json"
+	#"p2p"
+	"tls-client"
+	"tls-server"
+	#"wnm"
+	"x509"
+)
+
+# S="${WORKDIR}/${P}/${PN}"
+src_unpack() {
+	cros-workon_src_unpack
+	local checkout="/wpa_supplicant-cros/$(usex supplicant-next next current)"
+	S+="${checkout}/wpa_supplicant"
+}
+
+Kconfig_style_config() {
+		#param 1 is CONFIG_* item
+		#param 2 is what to set it = to, defaulting in y
+		CONFIG_PARAM="${CONFIG_HEADER:-CONFIG_}$1"
+		setting="${2:-y}"
+
+		if [ ! $setting = n ]; then
+			#first remove any leading "# " if $2 is not n
+			sed -i "/^# *$CONFIG_PARAM=/s/^# *//" .config || echo "Kconfig_style_config error uncommenting $CONFIG_PARAM"
+			#set item = $setting (defaulting to y)
+			sed -i "/^$CONFIG_PARAM\>/s/=.*/=$setting/" .config || echo "Kconfig_style_config error setting $CONFIG_PARAM=$setting"
+			if [ -z "$( grep ^$CONFIG_PARAM= .config )" ] ; then
+				echo "$CONFIG_PARAM=$setting" >>.config
+			fi
+		else
+			#ensure item commented out
+			sed -i "/^$CONFIG_PARAM\>/s/$CONFIG_PARAM/# $CONFIG_PARAM/" .config || echo "Kconfig_style_config error commenting $CONFIG_PARAM"
+		fi
+}
+
+src_prepare() {
+	# net/bpf.h needed for net-libs/libpcap on Gentoo/FreeBSD
+	sed -i \
+		-e "s:\(#include <pcap\.h>\):#include <net/bpf.h>\n\1:" \
+		../src/l2_packet/l2_packet_freebsd.c || die
+
+	# People seem to take the example configuration file too literally (bug #102361)
+	sed -i \
+		-e "s:^\(opensc_engine_path\):#\1:" \
+		-e "s:^\(pkcs11_engine_path\):#\1:" \
+		-e "s:^\(pkcs11_module_path\):#\1:" \
+		wpa_supplicant.conf || die
+
+	# Change configuration to match Gentoo locations (bug #143750)
+	sed -i \
+		-e "s:/usr/lib/opensc:/usr/$(get_libdir):" \
+		-e "s:/usr/lib/pkcs11:/usr/$(get_libdir):" \
+		wpa_supplicant.conf || die
+
+	# systemd entries to D-Bus service files (bug #372877)
+	# echo 'SystemdService=wpa_supplicant.service' \
+	# 	| tee -a dbus/*.service >/dev/null || die
+
+	cd "${WORKDIR}/${P}" || die
+
+	if use wimax; then
+		# generate-libeap-peer.patch comes before
+		# fix-undefined-reference-to-random_get_bytes.patch
+		# epatch "${FILESDIR}/${P}-generate-libeap-peer.patch"
+
+		# multilib-strict fix (bug #373685)
+		sed -e "s/\/usr\/lib/\/usr\/$(get_libdir)/" -i src/eap_peer/Makefile || die
+	fi
+
+	# bug (320097)
+	# epatch "${FILESDIR}/${P}-do-not-call-dbus-functions-with-NULL-path.patch"
+
+	# TODO - NEED TESTING TO SEE IF STILL NEEDED, NOT COMPATIBLE WITH 1.0 OUT OF THE BOX,
+	# SO WOULD BE NICE TO JUST DROP IT, IF IT IS NOT NEEDED.
+	# bug (374089)
+	#epatch "${FILESDIR}/${P}-dbus-WPAIE-fix.patch"
+
+	# bug (565270)
+	# epatch "${FILESDIR}/${P}-libressl.patch"
+	default
+}
+
+src_configure() {
+	sanitizers-setup-env
+	# Toolchain setup
+	append-flags -Werror
+	tc-export CC
+
+	cp defconfig .config || die
+
+	# Basic setup
+	Kconfig_style_config CTRL_IFACE
+	Kconfig_style_config MATCH_IFACE
+	Kconfig_style_config BACKEND file
+	Kconfig_style_config IBSS_RSN
+	Kconfig_style_config IEEE80211W
+	Kconfig_style_config IEEE80211R
+	Kconfig_style_config IEEE80211N
+	Kconfig_style_config IEEE80211AC
+	Kconfig_style_config HT_OVERRIDES
+	Kconfig_style_config VHT_OVERRIDES
+	Kconfig_style_config OCV
+	Kconfig_style_config TLSV11
+	Kconfig_style_config TLSV12
+	Kconfig_style_config GETRANDOM
+
+	# Basic authentication methods
+	# NOTE: we don't set GPSK or SAKE as they conflict
+	# with the below options
+	Kconfig_style_config EAP_GTC
+	Kconfig_style_config EAP_MD5
+	Kconfig_style_config EAP_OTP
+	Kconfig_style_config EAP_PAX
+	Kconfig_style_config EAP_PSK
+	Kconfig_style_config EAP_TLV
+	Kconfig_style_config EAP_EXE
+	Kconfig_style_config IEEE8021X_EAPOL
+	Kconfig_style_config PKCS12
+	Kconfig_style_config PEERKEY
+	Kconfig_style_config EAP_LEAP
+	Kconfig_style_config EAP_MSCHAPV2
+	Kconfig_style_config EAP_PEAP
+	Kconfig_style_config EAP_TEAP
+	Kconfig_style_config EAP_TLS
+	Kconfig_style_config EAP_TTLS
+
+	# Enabling background scanning.
+	Kconfig_style_config BGSCAN_SIMPLE
+	Kconfig_style_config BGSCAN_LEARN
+
+	if use dbus ; then
+		Kconfig_style_config CTRL_IFACE_DBUS
+		Kconfig_style_config CTRL_IFACE_DBUS_NEW
+		Kconfig_style_config CTRL_IFACE_DBUS_INTRO
+	else
+		Kconfig_style_config CTRL_IFACE_DBUS n
+		Kconfig_style_config CTRL_IFACE_DBUS_NEW n
+		Kconfig_style_config CTRL_IFACE_DBUS_INTRO n
+	fi
+
+	# Enable support for writing debug info to a log file and syslog.
+	Kconfig_style_config DEBUG_FILE
+	Kconfig_style_config DEBUG_SYSLOG
+	Kconfig_style_config DEBUG_SYSLOG_FACILITY LOG_LOCAL6
+
+	if use hs2-0 ; then
+		Kconfig_style_config INTERWORKING
+		Kconfig_style_config HS20
+	fi
+
+	# Enable support for MBO (Multi-Band Operation), see
+	# https://www.wi-fi.org/discover-wi-fi/wi-fi-agile-multiband
+	if use mbo ; then
+		Kconfig_style_config MBO
+	else
+		Kconfig_style_config MBO n
+	fi
+
+	if use uncommon-eap-types; then
+		Kconfig_style_config EAP_GPSK
+		Kconfig_style_config EAP_SAKE
+		Kconfig_style_config EAP_GPSK_SHA256
+		Kconfig_style_config EAP_IKEV2
+		Kconfig_style_config EAP_EKE
+	fi
+
+	if use eap-sim ; then
+		# Smart card authentication
+		Kconfig_style_config EAP_SIM
+		Kconfig_style_config EAP_AKA
+		Kconfig_style_config EAP_AKA_PRIME
+		# CHROMIUM: We don't have smartcard support. Instead include the
+		# client library for external processing via the control interface.
+		# Kconfig_style_config PCSC
+		Kconfig_style_config BUILD_WPA_CLIENT_SO
+	fi
+
+	if use readline ; then
+		# readline/history support for wpa_cli
+		Kconfig_style_config READLINE
+	else
+		#internal line edit mode for wpa_cli
+		Kconfig_style_config WPA_CLI_EDIT
+	fi
+
+	Kconfig_style_config TLS openssl
+	Kconfig_style_config FST
+	if ! use bindist || use libressl; then
+		Kconfig_style_config EAP_PWD
+		#WPA3
+		Kconfig_style_config OWE
+		Kconfig_style_config SAE
+		Kconfig_style_config DPP
+		Kconfig_style_config SUITEB192
+	fi
+	if ! use bindist && ! use libressl; then
+		Kconfig_style_config SUITEB
+	fi
+
+	if use smartcard ; then
+		Kconfig_style_config SMARTCARD
+	else
+		Kconfig_style_config SMARTCARD n
+	fi
+
+	if use tdls ; then
+		Kconfig_style_config TDLS
+	fi
+
+	if use kernel_linux ; then
+		# Linux specific drivers
+		# Kconfig_style_config DRIVER_ATMEL
+		# Kconfig_style_config DRIVER_HOSTAP
+		# Kconfig_style_config DRIVER_IPW
+		Kconfig_style_config DRIVER_NL80211
+		# Kconfig_style_config DRIVER_RALINK
+		Kconfig_style_config DRIVER_WEXT
+		Kconfig_style_config DRIVER_WIRED
+
+		if use ps3 ; then
+			Kconfig_style_config DRIVER_PS3
+		fi
+
+	elif use kernel_FreeBSD ; then
+		# FreeBSD specific driver
+		Kconfig_style_config DRIVER_BSD
+	fi
+
+	# Wi-Fi Protected Setup (WPS)
+	if use wps ; then
+		Kconfig_style_config WPS
+		Kconfig_style_config WPS2
+		# USB Flash Drive
+		Kconfig_style_config WPS_UFD
+		# External Registrar
+		Kconfig_style_config WPS_ER
+		# Universal Plug'n'Play
+		Kconfig_style_config WPS_UPNP
+		# Near Field Communication
+		Kconfig_style_config WPS_NFC
+	else
+		Kconfig_style_config WPS n
+		Kconfig_style_config WPS2 n
+		Kconfig_style_config WPS_UFD n
+		Kconfig_style_config WPS_ER n
+		Kconfig_style_config WPS_UPNP n
+		Kconfig_style_config WPS_NFC n
+	fi
+
+	if use wep ; then
+		Kconfig_style_config WEP
+	fi
+
+	# Wi-Fi Direct (WiDi)
+	if use p2p ; then
+		Kconfig_style_config P2P
+		Kconfig_style_config WIFI_DISPLAY
+	else
+		Kconfig_style_config P2P n
+		Kconfig_style_config WIFI_DISPLAY n
+	fi
+
+	# Access Point Mode
+	if use ap ; then
+		Kconfig_style_config AP
+		# only AP currently support mesh networks.
+		Kconfig_style_config MESH
+	else
+		# (ChromeOS) Explicitly disable to override enabling from defconfig.
+		Kconfig_style_config AP        n
+		Kconfig_style_config MESH      n
+	fi
+
+	# Enable mitigation against certain attacks against TKIP
+	Kconfig_style_config DELAYED_MIC_ERROR_REPORT
+
+	# Turn on 802.11v Wireless Network Management
+	if use wnm ; then
+		Kconfig_style_config WNM
+	else
+		Kconfig_style_config WNM       n
+	fi
+
+	if use qt5 ; then
+		pushd "${S}"/wpa_gui-qt4 > /dev/null || die
+		eqmake5 wpa_gui.pro
+		popd > /dev/null || die
+	fi
+}
+
+src_compile() {
+	# Fuzzers have to be built alone
+	if use fuzzer ; then
+		for f in "${FUZZERS[@]}"; do
+			einfo "Building ${f} fuzzer"
+			cd "../tests/fuzzing/${f}" || die
+			# Override the FUZZ_FLAGS to ensure we'll be able to build with
+			# address and memory sanitizer.
+			emake LIBFUZZER=1 FUZZ_FLAGS=-fsanitize=fuzzer
+			mv "${f}" "supplicant_${f}_fuzzer"
+			cd "${S}" || die
+		done
+		return
+	fi
+
+	einfo "Building wpa_supplicant"
+	emake V=1 BINDIR=/usr/sbin
+
+	if use wimax; then
+		emake -C ../src/eap_peer clean
+		emake -C ../src/eap_peer
+	fi
+
+	if use qt5; then
+		einfo "Building wpa_gui"
+		emake -C "${S}"/wpa_gui-qt4
+	fi
+}
+
+src_install() {
+	if use fuzzer ; then
+		local fuzzer_component_id="893827"
+		for f in "${FUZZERS[@]}"; do
+			fuzzer_install ../OWNERS \
+				"../tests/fuzzing/${f}/supplicant_${f}_fuzzer" \
+				--comp "${fuzzer_component_id}"
+		done
+		return
+	fi
+
+	dosbin wpa_supplicant
+	dobin wpa_cli wpa_passphrase
+
+	# baselayout-1 compat
+	if has_version "<sys-apps/baselayout-2.0.0"; then
+		dodir /sbin
+		dosym /usr/sbin/wpa_supplicant /sbin/wpa_supplicant
+		dodir /bin
+		dosym /usr/bin/wpa_cli /bin/wpa_cli
+	fi
+
+	if has_version ">=sys-apps/openrc-0.5.0"; then
+		newinitd "${FILESDIR}/${PN}-init.d" wpa_supplicant
+		newconfd "${FILESDIR}/${PN}-conf.d" wpa_supplicant
+	fi
+
+	dodoc ChangeLog {eap_testing,todo}.txt README{,-WPS} \
+		wpa_supplicant.conf
+
+	newdoc .config build-config
+
+	if use qt5 ; then
+		into /usr
+		dobin wpa_gui-qt4/wpa_gui
+		doicon wpa_gui-qt4/icons/wpa_gui.svg
+		make_desktop_entry wpa_gui "WPA Supplicant Administration GUI" "wpa_gui" "Qt;Network;"
+	fi
+
+	use wimax && emake DESTDIR="${D}" -C ../src/eap_peer install
+
+	if use eap-sim ; then
+		# Install this library and header for the external processor.
+		dolib.so libwpa_client.so
+
+		insinto /usr/include/wpa_supplicant
+		doins ../src/common/wpa_ctrl.h
+	fi
+
+	if use dbus ; then
+		# DBus introspection XML file.
+		insinto /usr/share/dbus-1/interfaces
+		doins ${FILESDIR}/dbus_bindings/fi.w1.wpa_supplicant1.xml || die
+		insinto /etc/dbus-1/system.d
+		# Allow (but don't require) wpa_supplicant to run as root only
+		# when building hwsim targets.
+		if use wifi_hostap_test; then
+			newins "${FILESDIR}"/dbus_permissions/root_fi.w1.wpa_supplicant1.conf \
+				fi.w1.wpa_supplicant1.conf
+		else
+			doins "${FILESDIR}"/dbus_permissions/fi.w1.wpa_supplicant1.conf
+		fi
+	fi
+	# Install the init scripts
+	if use systemd; then
+		insinto /usr/share
+		systemd_dounit ${FILESDIR}/init/wpasupplicant.service
+		systemd_enable_service boot-services.target wpasupplicant.service
+		systemd_dotmpfilesd ${FILESDIR}/init/wpasupplicant-directories.conf
+	else
+		insinto /etc/init
+		doins ${FILESDIR}/init/wpasupplicant.conf
+		if use seccomp; then
+			local policy="${FILESDIR}/seccomp/wpa_supplicant-${ARCH}.policy"
+			local policy_out="${ED}/usr/share/policy/wpa_supplicant.bpf"
+			dodir /usr/share/policy
+			compile_seccomp_policy \
+				--arch-json "${SYSROOT}/build/share/constants.json" \
+				--default-action trap "${policy}" "${policy_out}" \
+				|| die "failed to compile seccomp policy ${policy}"
+		else
+			sed -i '/^env seccomp_flags=/s:=.*:="":' \
+				"${ED}"/etc/init/wpasupplicant.conf || die
+		fi
+	fi
+}
+
+pkg_preinst() {
+	enewuser "wpa"
+	enewgroup "wpa"
+}
+
+pkg_postinst() {
+	if [[ -e ${ROOT}etc/wpa_supplicant.conf ]] ; then
+		echo
+		ewarn "WARNING: your old configuration file ${ROOT}etc/wpa_supplicant.conf"
+		ewarn "needs to be moved to ${ROOT}etc/wpa_supplicant/wpa_supplicant.conf"
+	fi
+
+	if use bindist; then
+		if ! use libressl; then
+			ewarn "Using bindist use flag presently breaks WPA3 (specifically SAE, OWE, DPP, and FILS)."
+			ewarn "This is incredibly undesirable"
+		fi
+	fi
+	if use libressl; then
+		ewarn "Libressl doesn't support SUITEB (part of WPA3)"
+		ewarn "but it does support SUITEB192 (the upgraded strength version of the same)"
+		ewarn "You probably don't care.  Patches welcome"
+	fi
+}
diff --git a/net-wireless/wpa_supplicant-cros/wpa_supplicant-cros-9999.ebuild b/net-wireless/wpa_supplicant-cros/wpa_supplicant-cros-9999.ebuild
new file mode 100644
index 0000000..c37b98b
--- /dev/null
+++ b/net-wireless/wpa_supplicant-cros/wpa_supplicant-cros-9999.ebuild
@@ -0,0 +1,492 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_PROJECT=("chromiumos/third_party/hostap" "chromiumos/third_party/hostap")
+CROS_WORKON_LOCALNAME=("../third_party/wpa_supplicant-cros/current" "../third_party/wpa_supplicant-cros/next")
+CROS_WORKON_EGIT_BRANCH=("wpa_supplicant-2.9" "wpa_supplicant-2.9.1")
+CROS_WORKON_DESTDIR=("${S}/wpa_supplicant-cros/current" "${S}/wpa_supplicant-cros/next")
+CROS_WORKON_OPTIONAL_CHECKOUT=("use !supplicant-next" "use supplicant-next")
+
+inherit cros-sanitizers cros-workon cros-fuzzer eutils flag-o-matic qmake-utils systemd toolchain-funcs user
+
+DESCRIPTION="IEEE 802.1X/WPA supplicant for secure wireless transfers"
+HOMEPAGE="https://w1.fi/wpa_supplicant/"
+LICENSE="|| ( GPL-2 BSD )"
+
+SLOT="0"
+KEYWORDS="~*"
+IUSE="ap bindist dbus debug eap-sim fuzzer +hs2-0 libressl mbo p2p ps3 qt5 readline +seccomp selinux smartcard supplicant-next systemd +tdls uncommon-eap-types +wep wifi_hostap_test +wnm wps kernel_linux kernel_FreeBSD wimax"
+
+CDEPEND="
+	chromeos-base/minijail
+	dbus? ( sys-apps/dbus )
+	kernel_linux? (
+		dev-libs/libnl:3
+		net-wireless/crda
+	)
+	!kernel_linux? ( net-libs/libpcap )
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtsvg:5
+		dev-qt/qtwidgets:5
+	)
+	readline? (
+		sys-libs/ncurses:0
+		sys-libs/readline:0
+	)
+	!libressl? ( dev-libs/openssl:0=[bindist=] )
+	libressl? ( dev-libs/libressl:0= )
+	smartcard? ( dev-libs/engine_pkcs11 )
+"
+DEPEND="${CDEPEND}
+	virtual/pkgconfig
+"
+RDEPEND="${CDEPEND}
+	!net-wireless/wpa_supplicant
+	!net-wireless/wpa_supplicant-2_8
+	!net-wireless/wpa_supplicant-2_9
+	selinux? ( sec-policy/selinux-networkmanager )
+"
+
+# All the available fuzzers.
+# TODO(b/197270874): enable them gradually to avoid a bug storm.
+FUZZERS=(
+	#"ap-mgmt"
+	#"asn1"
+	#"eap-aka-peer"
+	"eapol-key-auth"
+	"eapol-key-supp"
+	"eapol-supp"
+	#"eap-sim-peer"
+	#"json"
+	#"p2p"
+	"tls-client"
+	"tls-server"
+	#"wnm"
+	"x509"
+)
+
+# S="${WORKDIR}/${P}/${PN}"
+src_unpack() {
+	cros-workon_src_unpack
+	local checkout="/wpa_supplicant-cros/$(usex supplicant-next next current)"
+	S+="${checkout}/wpa_supplicant"
+}
+
+Kconfig_style_config() {
+		#param 1 is CONFIG_* item
+		#param 2 is what to set it = to, defaulting in y
+		CONFIG_PARAM="${CONFIG_HEADER:-CONFIG_}$1"
+		setting="${2:-y}"
+
+		if [ ! $setting = n ]; then
+			#first remove any leading "# " if $2 is not n
+			sed -i "/^# *$CONFIG_PARAM=/s/^# *//" .config || echo "Kconfig_style_config error uncommenting $CONFIG_PARAM"
+			#set item = $setting (defaulting to y)
+			sed -i "/^$CONFIG_PARAM\>/s/=.*/=$setting/" .config || echo "Kconfig_style_config error setting $CONFIG_PARAM=$setting"
+			if [ -z "$( grep ^$CONFIG_PARAM= .config )" ] ; then
+				echo "$CONFIG_PARAM=$setting" >>.config
+			fi
+		else
+			#ensure item commented out
+			sed -i "/^$CONFIG_PARAM\>/s/$CONFIG_PARAM/# $CONFIG_PARAM/" .config || echo "Kconfig_style_config error commenting $CONFIG_PARAM"
+		fi
+}
+
+src_prepare() {
+	# net/bpf.h needed for net-libs/libpcap on Gentoo/FreeBSD
+	sed -i \
+		-e "s:\(#include <pcap\.h>\):#include <net/bpf.h>\n\1:" \
+		../src/l2_packet/l2_packet_freebsd.c || die
+
+	# People seem to take the example configuration file too literally (bug #102361)
+	sed -i \
+		-e "s:^\(opensc_engine_path\):#\1:" \
+		-e "s:^\(pkcs11_engine_path\):#\1:" \
+		-e "s:^\(pkcs11_module_path\):#\1:" \
+		wpa_supplicant.conf || die
+
+	# Change configuration to match Gentoo locations (bug #143750)
+	sed -i \
+		-e "s:/usr/lib/opensc:/usr/$(get_libdir):" \
+		-e "s:/usr/lib/pkcs11:/usr/$(get_libdir):" \
+		wpa_supplicant.conf || die
+
+	# systemd entries to D-Bus service files (bug #372877)
+	# echo 'SystemdService=wpa_supplicant.service' \
+	# 	| tee -a dbus/*.service >/dev/null || die
+
+	cd "${WORKDIR}/${P}" || die
+
+	if use wimax; then
+		# generate-libeap-peer.patch comes before
+		# fix-undefined-reference-to-random_get_bytes.patch
+		# epatch "${FILESDIR}/${P}-generate-libeap-peer.patch"
+
+		# multilib-strict fix (bug #373685)
+		sed -e "s/\/usr\/lib/\/usr\/$(get_libdir)/" -i src/eap_peer/Makefile || die
+	fi
+
+	# bug (320097)
+	# epatch "${FILESDIR}/${P}-do-not-call-dbus-functions-with-NULL-path.patch"
+
+	# TODO - NEED TESTING TO SEE IF STILL NEEDED, NOT COMPATIBLE WITH 1.0 OUT OF THE BOX,
+	# SO WOULD BE NICE TO JUST DROP IT, IF IT IS NOT NEEDED.
+	# bug (374089)
+	#epatch "${FILESDIR}/${P}-dbus-WPAIE-fix.patch"
+
+	# bug (565270)
+	# epatch "${FILESDIR}/${P}-libressl.patch"
+	default
+}
+
+src_configure() {
+	sanitizers-setup-env
+	# Toolchain setup
+	append-flags -Werror
+	tc-export CC
+
+	cp defconfig .config || die
+
+	# Basic setup
+	Kconfig_style_config CTRL_IFACE
+	Kconfig_style_config MATCH_IFACE
+	Kconfig_style_config BACKEND file
+	Kconfig_style_config IBSS_RSN
+	Kconfig_style_config IEEE80211W
+	Kconfig_style_config IEEE80211R
+	Kconfig_style_config IEEE80211N
+	Kconfig_style_config IEEE80211AC
+	Kconfig_style_config HT_OVERRIDES
+	Kconfig_style_config VHT_OVERRIDES
+	Kconfig_style_config OCV
+	Kconfig_style_config TLSV11
+	Kconfig_style_config TLSV12
+	Kconfig_style_config GETRANDOM
+
+	# Basic authentication methods
+	# NOTE: we don't set GPSK or SAKE as they conflict
+	# with the below options
+	Kconfig_style_config EAP_GTC
+	Kconfig_style_config EAP_MD5
+	Kconfig_style_config EAP_OTP
+	Kconfig_style_config EAP_PAX
+	Kconfig_style_config EAP_PSK
+	Kconfig_style_config EAP_TLV
+	Kconfig_style_config EAP_EXE
+	Kconfig_style_config IEEE8021X_EAPOL
+	Kconfig_style_config PKCS12
+	Kconfig_style_config PEERKEY
+	Kconfig_style_config EAP_LEAP
+	Kconfig_style_config EAP_MSCHAPV2
+	Kconfig_style_config EAP_PEAP
+	Kconfig_style_config EAP_TEAP
+	Kconfig_style_config EAP_TLS
+	Kconfig_style_config EAP_TTLS
+
+	# Enabling background scanning.
+	Kconfig_style_config BGSCAN_SIMPLE
+	Kconfig_style_config BGSCAN_LEARN
+
+	if use dbus ; then
+		Kconfig_style_config CTRL_IFACE_DBUS
+		Kconfig_style_config CTRL_IFACE_DBUS_NEW
+		Kconfig_style_config CTRL_IFACE_DBUS_INTRO
+	else
+		Kconfig_style_config CTRL_IFACE_DBUS n
+		Kconfig_style_config CTRL_IFACE_DBUS_NEW n
+		Kconfig_style_config CTRL_IFACE_DBUS_INTRO n
+	fi
+
+	# Enable support for writing debug info to a log file and syslog.
+	Kconfig_style_config DEBUG_FILE
+	Kconfig_style_config DEBUG_SYSLOG
+	Kconfig_style_config DEBUG_SYSLOG_FACILITY LOG_LOCAL6
+
+	if use hs2-0 ; then
+		Kconfig_style_config INTERWORKING
+		Kconfig_style_config HS20
+	fi
+
+	# Enable support for MBO (Multi-Band Operation), see
+	# https://www.wi-fi.org/discover-wi-fi/wi-fi-agile-multiband
+	if use mbo ; then
+		Kconfig_style_config MBO
+	else
+		Kconfig_style_config MBO n
+	fi
+
+	if use uncommon-eap-types; then
+		Kconfig_style_config EAP_GPSK
+		Kconfig_style_config EAP_SAKE
+		Kconfig_style_config EAP_GPSK_SHA256
+		Kconfig_style_config EAP_IKEV2
+		Kconfig_style_config EAP_EKE
+	fi
+
+	if use eap-sim ; then
+		# Smart card authentication
+		Kconfig_style_config EAP_SIM
+		Kconfig_style_config EAP_AKA
+		Kconfig_style_config EAP_AKA_PRIME
+		# CHROMIUM: We don't have smartcard support. Instead include the
+		# client library for external processing via the control interface.
+		# Kconfig_style_config PCSC
+		Kconfig_style_config BUILD_WPA_CLIENT_SO
+	fi
+
+	if use readline ; then
+		# readline/history support for wpa_cli
+		Kconfig_style_config READLINE
+	else
+		#internal line edit mode for wpa_cli
+		Kconfig_style_config WPA_CLI_EDIT
+	fi
+
+	Kconfig_style_config TLS openssl
+	Kconfig_style_config FST
+	if ! use bindist || use libressl; then
+		Kconfig_style_config EAP_PWD
+		#WPA3
+		Kconfig_style_config OWE
+		Kconfig_style_config SAE
+		Kconfig_style_config DPP
+		Kconfig_style_config SUITEB192
+	fi
+	if ! use bindist && ! use libressl; then
+		Kconfig_style_config SUITEB
+	fi
+
+	if use smartcard ; then
+		Kconfig_style_config SMARTCARD
+	else
+		Kconfig_style_config SMARTCARD n
+	fi
+
+	if use tdls ; then
+		Kconfig_style_config TDLS
+	fi
+
+	if use kernel_linux ; then
+		# Linux specific drivers
+		# Kconfig_style_config DRIVER_ATMEL
+		# Kconfig_style_config DRIVER_HOSTAP
+		# Kconfig_style_config DRIVER_IPW
+		Kconfig_style_config DRIVER_NL80211
+		# Kconfig_style_config DRIVER_RALINK
+		Kconfig_style_config DRIVER_WEXT
+		Kconfig_style_config DRIVER_WIRED
+
+		if use ps3 ; then
+			Kconfig_style_config DRIVER_PS3
+		fi
+
+	elif use kernel_FreeBSD ; then
+		# FreeBSD specific driver
+		Kconfig_style_config DRIVER_BSD
+	fi
+
+	# Wi-Fi Protected Setup (WPS)
+	if use wps ; then
+		Kconfig_style_config WPS
+		Kconfig_style_config WPS2
+		# USB Flash Drive
+		Kconfig_style_config WPS_UFD
+		# External Registrar
+		Kconfig_style_config WPS_ER
+		# Universal Plug'n'Play
+		Kconfig_style_config WPS_UPNP
+		# Near Field Communication
+		Kconfig_style_config WPS_NFC
+	else
+		Kconfig_style_config WPS n
+		Kconfig_style_config WPS2 n
+		Kconfig_style_config WPS_UFD n
+		Kconfig_style_config WPS_ER n
+		Kconfig_style_config WPS_UPNP n
+		Kconfig_style_config WPS_NFC n
+	fi
+
+	if use wep ; then
+		Kconfig_style_config WEP
+	fi
+
+	# Wi-Fi Direct (WiDi)
+	if use p2p ; then
+		Kconfig_style_config P2P
+		Kconfig_style_config WIFI_DISPLAY
+	else
+		Kconfig_style_config P2P n
+		Kconfig_style_config WIFI_DISPLAY n
+	fi
+
+	# Access Point Mode
+	if use ap ; then
+		Kconfig_style_config AP
+		# only AP currently support mesh networks.
+		Kconfig_style_config MESH
+	else
+		# (ChromeOS) Explicitly disable to override enabling from defconfig.
+		Kconfig_style_config AP        n
+		Kconfig_style_config MESH      n
+	fi
+
+	# Enable mitigation against certain attacks against TKIP
+	Kconfig_style_config DELAYED_MIC_ERROR_REPORT
+
+	# Turn on 802.11v Wireless Network Management
+	if use wnm ; then
+		Kconfig_style_config WNM
+	else
+		Kconfig_style_config WNM       n
+	fi
+
+	if use qt5 ; then
+		pushd "${S}"/wpa_gui-qt4 > /dev/null || die
+		eqmake5 wpa_gui.pro
+		popd > /dev/null || die
+	fi
+}
+
+src_compile() {
+	# Fuzzers have to be built alone
+	if use fuzzer ; then
+		for f in "${FUZZERS[@]}"; do
+			einfo "Building ${f} fuzzer"
+			cd "../tests/fuzzing/${f}" || die
+			# Override the FUZZ_FLAGS to ensure we'll be able to build with
+			# address and memory sanitizer.
+			emake LIBFUZZER=1 FUZZ_FLAGS=-fsanitize=fuzzer
+			mv "${f}" "supplicant_${f}_fuzzer"
+			cd "${S}" || die
+		done
+		return
+	fi
+
+	einfo "Building wpa_supplicant"
+	emake V=1 BINDIR=/usr/sbin
+
+	if use wimax; then
+		emake -C ../src/eap_peer clean
+		emake -C ../src/eap_peer
+	fi
+
+	if use qt5; then
+		einfo "Building wpa_gui"
+		emake -C "${S}"/wpa_gui-qt4
+	fi
+}
+
+src_install() {
+	if use fuzzer ; then
+		local fuzzer_component_id="893827"
+		for f in "${FUZZERS[@]}"; do
+			fuzzer_install ../OWNERS \
+				"../tests/fuzzing/${f}/supplicant_${f}_fuzzer" \
+				--comp "${fuzzer_component_id}"
+		done
+		return
+	fi
+
+	dosbin wpa_supplicant
+	dobin wpa_cli wpa_passphrase
+
+	# baselayout-1 compat
+	if has_version "<sys-apps/baselayout-2.0.0"; then
+		dodir /sbin
+		dosym /usr/sbin/wpa_supplicant /sbin/wpa_supplicant
+		dodir /bin
+		dosym /usr/bin/wpa_cli /bin/wpa_cli
+	fi
+
+	if has_version ">=sys-apps/openrc-0.5.0"; then
+		newinitd "${FILESDIR}/${PN}-init.d" wpa_supplicant
+		newconfd "${FILESDIR}/${PN}-conf.d" wpa_supplicant
+	fi
+
+	dodoc ChangeLog {eap_testing,todo}.txt README{,-WPS} \
+		wpa_supplicant.conf
+
+	newdoc .config build-config
+
+	if use qt5 ; then
+		into /usr
+		dobin wpa_gui-qt4/wpa_gui
+		doicon wpa_gui-qt4/icons/wpa_gui.svg
+		make_desktop_entry wpa_gui "WPA Supplicant Administration GUI" "wpa_gui" "Qt;Network;"
+	fi
+
+	use wimax && emake DESTDIR="${D}" -C ../src/eap_peer install
+
+	if use eap-sim ; then
+		# Install this library and header for the external processor.
+		dolib.so libwpa_client.so
+
+		insinto /usr/include/wpa_supplicant
+		doins ../src/common/wpa_ctrl.h
+	fi
+
+	if use dbus ; then
+		# DBus introspection XML file.
+		insinto /usr/share/dbus-1/interfaces
+		doins ${FILESDIR}/dbus_bindings/fi.w1.wpa_supplicant1.xml || die
+		insinto /etc/dbus-1/system.d
+		# Allow (but don't require) wpa_supplicant to run as root only
+		# when building hwsim targets.
+		if use wifi_hostap_test; then
+			newins "${FILESDIR}"/dbus_permissions/root_fi.w1.wpa_supplicant1.conf \
+				fi.w1.wpa_supplicant1.conf
+		else
+			doins "${FILESDIR}"/dbus_permissions/fi.w1.wpa_supplicant1.conf
+		fi
+	fi
+	# Install the init scripts
+	if use systemd; then
+		insinto /usr/share
+		systemd_dounit ${FILESDIR}/init/wpasupplicant.service
+		systemd_enable_service boot-services.target wpasupplicant.service
+		systemd_dotmpfilesd ${FILESDIR}/init/wpasupplicant-directories.conf
+	else
+		insinto /etc/init
+		doins ${FILESDIR}/init/wpasupplicant.conf
+		if use seccomp; then
+			local policy="${FILESDIR}/seccomp/wpa_supplicant-${ARCH}.policy"
+			local policy_out="${ED}/usr/share/policy/wpa_supplicant.bpf"
+			dodir /usr/share/policy
+			compile_seccomp_policy \
+				--arch-json "${SYSROOT}/build/share/constants.json" \
+				--default-action trap "${policy}" "${policy_out}" \
+				|| die "failed to compile seccomp policy ${policy}"
+		else
+			sed -i '/^env seccomp_flags=/s:=.*:="":' \
+				"${ED}"/etc/init/wpasupplicant.conf || die
+		fi
+	fi
+}
+
+pkg_preinst() {
+	enewuser "wpa"
+	enewgroup "wpa"
+}
+
+pkg_postinst() {
+	if [[ -e ${ROOT}etc/wpa_supplicant.conf ]] ; then
+		echo
+		ewarn "WARNING: your old configuration file ${ROOT}etc/wpa_supplicant.conf"
+		ewarn "needs to be moved to ${ROOT}etc/wpa_supplicant/wpa_supplicant.conf"
+	fi
+
+	if use bindist; then
+		if ! use libressl; then
+			ewarn "Using bindist use flag presently breaks WPA3 (specifically SAE, OWE, DPP, and FILS)."
+			ewarn "This is incredibly undesirable"
+		fi
+	fi
+	if use libressl; then
+		ewarn "Libressl doesn't support SUITEB (part of WPA3)"
+		ewarn "but it does support SUITEB192 (the upgraded strength version of the same)"
+		ewarn "You probably don't care.  Patches welcome"
+	fi
+}
diff --git a/profiles/arch/arm64/use.mask b/profiles/arch/arm64/use.mask
index c40a24e..936f97e 100644
--- a/profiles/arch/arm64/use.mask
+++ b/profiles/arch/arm64/use.mask
@@ -166,6 +166,9 @@
 # aarch64 is somewhat deffective as of end of 2019, disable drivefs for arm64.
 drivefs
 
+# Unmask scanning on arm64.
+-scanner
+
 # Some SANE backends that we want to disable to conserve disk space
 # TODO(b/161252439): synchronize with x86.
 sane_backends_hp3900
diff --git a/profiles/base/package.mask b/profiles/base/package.mask
index 8bba7ff..7876d25 100644
--- a/profiles/base/package.mask
+++ b/profiles/base/package.mask
@@ -4,7 +4,9 @@
 sys-firmware/analogix-anx3429-firmware
 sys-firmware/parade-ps8751a3-firmware
 sys-firmware/parade-ps8751a3-firmware-canary
+sys-firmware/parade-ps8755a2-firmware
 sys-firmware/parade-ps8805a2-firmware
+sys-firmware/parade-ps8805a3-firmware
 sys-firmware/parade-ps8815a0-firmware
 sys-firmware/parade-ps8815a1-firmware
 sys-firmware/parade-ps8815a2-firmware
diff --git a/profiles/base/profile.bashrc b/profiles/base/profile.bashrc
index 4045eef..b8e5346 100644
--- a/profiles/base/profile.bashrc
+++ b/profiles/base/profile.bashrc
@@ -295,14 +295,12 @@
 		net-dns/dnsmasq|\
 		net-misc/dhcpcd|\
 		net-misc/improxy|\
-		net-print/cups|\
 		sys-apps/cavium-n3fips-driver|\
 		sys-apps/fwupd|\
 		sys-apps/loadpin-trigger|\
 		sys-apps/snaggletooth-drivers|\
 		sys-boot/coreboot|\
 		sys-boot/depthcharge|\
-		sys-boot/libpayload|\
 		sys-boot/loonix-u-boot|\
 		sys-boot/u-boot|\
 		sys-devel/arc-llvm|\
@@ -391,7 +389,6 @@
 		sys-boot/coreboot|\
 		sys-boot/depthcharge|\
 		sys-boot/grub-lakitu|\
-		sys-boot/libpayload|\
 		sys-boot/syslinux|\
 		sys-firmware/chromeos-fpmcu-release-bloonchipper|\
 		sys-firmware/chromeos-fpmcu-release-dartmonkey|\
@@ -419,7 +416,6 @@
 		media-libs/mali-drivers-valhall|\
 		net-libs/nodejs|\
 		sys-boot/coreboot|\
-		sys-boot/libpayload|\
 		sys-devel/arc-llvm|\
 		sys-devel/llvm) return 1;;
 		esac
@@ -455,8 +451,7 @@
 		dev-embedded/coreboot-sdk|\
 		dev-libs/nspr|\
 		net-misc/nldaemon|\
-		sys-boot/coreboot|\
-		sys-boot/libpayload) return 1;;
+		sys-boot/coreboot) return 1;;
 		esac
 	}
 
@@ -733,7 +728,8 @@
 	for var in CFLAGS CXXFLAGS LDFLAGS; do
 		for flag in ${!var}; do
 			if [[ ${flag} != "-Xcompiler" && \
-			      ${flag} != "-Wl,--icf=all" ]]; then
+			      ${flag} != "-Wl,--icf=all" && \
+			      ${flag} != "--unwindlib=libunwind" ]]; then
 				flags+=("${flag}")
 			fi
 		done
diff --git a/profiles/default/linux/package.use b/profiles/default/linux/package.use
index 31b943c..e96f503 100644
--- a/profiles/default/linux/package.use
+++ b/profiles/default/linux/package.use
@@ -89,3 +89,6 @@
 # Use hostname from coreutils so we don't require net-tools anymore.
 sys-apps/coreutils hostname
 sys-apps/net-tools -hostname
+
+# Use the dedicated python-magic package.
+sys-apps/file -python
diff --git a/profiles/default/linux/package.use.mask b/profiles/default/linux/package.use.mask
index 7f1fbd5..8b43e88 100644
--- a/profiles/default/linux/package.use.mask
+++ b/profiles/default/linux/package.use.mask
@@ -27,10 +27,15 @@
 # Han Shen <shenhan@chromium.org> (21 Mar 2012)
 #
 # Disable hardened for bare-metal toolchains.
+cross-arm-none-eabi/binutils hardened
 cross-arm-none-eabi/gcc hardened
 cross-arm-none-eabi/newlib hardened
+cross-armv7m-cros-eabi/binutils hardened
 cross-armv7m-cros-eabi/gcc hardened
 cross-armv7m-cros-eabi/newlib hardened
+cross-riscv64-cros-elf/binutils hardened
+cross-riscv64-cros-elf/gcc hardened
+cross-riscv64-cros-elf/newlib hardened
 
 # yasm-python is blocked until we upgrade to python 2.7.
 dev-lang/yasm python
@@ -62,7 +67,7 @@
 net-misc/openssh bindist
 # We want WPA3 features, which currently aren't available with openssl's
 # USE=bindist.
-net-wireless/wpa_supplicant-2_9 bindist
+net-wireless/wpa_supplicant-cros bindist
 
 # Resolve circular dependency between libcap and pam.
 # http://crbug.com/508630 (see #8)
diff --git a/profiles/features/embedded/make.defaults b/profiles/features/embedded/make.defaults
index f9b2164..9e2bf28 100644
--- a/profiles/features/embedded/make.defaults
+++ b/profiles/features/embedded/make.defaults
@@ -24,8 +24,9 @@
 # out any locally-collected metrics, in the absence of Chrome.
 USE="${USE} metrics_uploader"
 
-# Disable ML Service until/unless features on embedded devices need it.
-USE="${USE} -ml_service"
+# Disable ML Service until/unless features on embedded devices need it. Also
+# disable on-device grammar check since it depends on ML Service.
+USE="${USE} -ml_service -ondevice_grammar"
 
 # Disable usbguard and usb_bouncer on embedded CrOS because they currently only
 # protect the lockscreen.
@@ -56,6 +57,9 @@
 # Don't run Camera v3 stack.
 USE="${USE} -arc-camera3"
 
+# Disable document scanning.
+USE="${USE} -ondevice_document_scanner"
+
 # Disable oobe config.
 USE="${USE} -oobe_config"
 
diff --git a/profiles/features/embedded/package.use b/profiles/features/embedded/package.use
index 39f13f0..8352ebcf 100644
--- a/profiles/features/embedded/package.use
+++ b/profiles/features/embedded/package.use
@@ -1,4 +1,4 @@
 chromeos-base/chromeos-chrome	-accessibility -autotest -build_tests -chrome_remoting -nacl -reorder
 chromeos-base/chromeos-init	vt
 media-sound/adhd		-cras-apm
-net-wireless/wpa_supplicant-2_9	-smartcard
+net-wireless/wpa_supplicant-cros -smartcard
diff --git a/profiles/features/kernel/hypervisor-guest/README.md b/profiles/features/kernel/hypervisor-guest/README.md
new file mode 100644
index 0000000..0ad35a0
--- /dev/null
+++ b/profiles/features/kernel/hypervisor-guest/README.md
@@ -0,0 +1,15 @@
+This feature profile enables the hypervisor_guest USE flags for every
+chromeos-kernel package. It speeds up CrOS running as a guest on hypervisor.
+
+To add this profile to an existing overlay, take the following steps:
+1) Create a new subdirectory within the given overlay's "profiles" directory.
+2) Add a "parent" file to the new subdirectory with the below two lines:
+  ```
+  ../base
+  chromiumos:features/kernel/hypervisor-guest
+  ```
+
+The first line specifies that the new profile will inherit from the overlay's
+base profile. The second line will mix in this profile which enables the
+hypervisor_guest USE flags for the chromeos-kernel package, independent of
+which kernel version the overlay uses.
diff --git a/profiles/features/kernel/hypervisor-guest/make.defaults b/profiles/features/kernel/hypervisor-guest/make.defaults
new file mode 100644
index 0000000..f002a24
--- /dev/null
+++ b/profiles/features/kernel/hypervisor-guest/make.defaults
@@ -0,0 +1,4 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+USE="hypervisor_guest"
diff --git a/profiles/features/minimal/make.defaults b/profiles/features/minimal/make.defaults
index 35eba9c..fb4c38b 100644
--- a/profiles/features/minimal/make.defaults
+++ b/profiles/features/minimal/make.defaults
@@ -32,9 +32,9 @@
 # Make stuff small.
 USE="${USE} -attestation -buffet -cellular chromeless_tty -crash_reporting"
 USE="${USE} -cros_disks cros_embedded -diagnostics -debugd -encrypted_stateful"
-USE="${USE} -gdmwimax -lorgnette -memd -mist -missive -ml_service -pam"
-USE="${USE} -passive_metrics -perfetto -power_management -secanomalyd -scanner"
-USE="${USE} -tpm -usb_bouncer -usbguard -vpn -wimax"
+USE="${USE} -featured -gdmwimax -lorgnette -memd -mist -missive -ml_service"
+USE="${USE} -ondevice_grammar -pam -passive_metrics -perfetto -power_management"
+USE="${USE} -scanner -secanomalyd -tpm -usb_bouncer -usbguard -vpn -wimax"
 
 # Disable auth frameworks.
 USE="${USE} -kerberos -kerberos_daemon -system_proxy"
@@ -57,6 +57,9 @@
 # Don't run Camera v3 stack.
 USE="${USE} -arc-camera3"
 
+# Disable document scanning.
+USE="${USE} -ondevice_document_scanner"
+
 # Disable oobe config.
 USE="${USE} -oobe_config"
 
diff --git a/profiles/features/minimal/package.use b/profiles/features/minimal/package.use
index 378b902..64bbda8 100644
--- a/profiles/features/minimal/package.use
+++ b/profiles/features/minimal/package.use
@@ -3,5 +3,5 @@
 chromeos-base/chromeos-init	vt
 chromeos-base/update_engine -cros_p2p
 media-sound/adhd		-cras-apm
-net-wireless/wpa_supplicant-2_9	-smartcard
+net-wireless/wpa_supplicant-cros -smartcard
 sys-libs/gcc-libs		-go
diff --git a/profiles/features/sanitizers/fuzzer/package.use b/profiles/features/sanitizers/fuzzer/package.use
index 82b481a..eb2b408 100644
--- a/profiles/features/sanitizers/fuzzer/package.use
+++ b/profiles/features/sanitizers/fuzzer/package.use
@@ -5,3 +5,4 @@
 # List packages that need specific use flags in fuzzer builds.
 chromeos-base/arc-setup arcpp
 chromeos-base/vm_guest_tools kvm_guest
+chromeos-base/sommelier kvm_guest
diff --git a/profiles/targets/chromeos/OWNERS b/profiles/targets/chromeos/OWNERS
new file mode 100644
index 0000000..b63f731
--- /dev/null
+++ b/profiles/targets/chromeos/OWNERS
@@ -0,0 +1,2 @@
+# Intended for Rust-related changes only.
+per-file package.provided = file://dev-lang/rust/OWNERS
diff --git a/profiles/targets/chromeos/make.defaults b/profiles/targets/chromeos/make.defaults
index 6571b01..60b2381 100644
--- a/profiles/targets/chromeos/make.defaults
+++ b/profiles/targets/chromeos/make.defaults
@@ -20,7 +20,7 @@
 USE="${USE} cellular mbim"
 USE="${USE} ime"
 USE="${USE} memd"
-USE="${USE} ml_service"
+USE="${USE} ml_service ondevice_grammar"
 USE="${USE} pinweaver"
 USE="${USE} resourced"
 USE="${USE} smartdim"
@@ -88,6 +88,9 @@
 # Run Camera v3 stack by default.
 USE="${USE} arc-camera3"
 
+# Enable document scanning by default.
+USE="${USE} ondevice_document_scanner"
+
 # Enable Downloadable Content (DLC).
 USE="${USE} dlc"
 
@@ -100,6 +103,12 @@
 # Enable dns-proxy daemon.
 USE="${USE} dns-proxy"
 
+# Enable iioservice to gather sensor information.
+USE="${USE} iioservice"
+
+# Enable feature daemon.
+USE="${USE} featured"
+
 # Disable tty2 console.
 TTY_CONSOLE="-tty2"
 
diff --git a/profiles/targets/chromeos/package.keywords b/profiles/targets/chromeos/package.keywords
index 54915e7..83ffcd4 100644
--- a/profiles/targets/chromeos/package.keywords
+++ b/profiles/targets/chromeos/package.keywords
@@ -13,7 +13,7 @@
 =dev-python/python-xlib-0.14    amd64 arm x86
 # This should be kept in sync with package.mask.
 # Here we keyword the version we want for the board.
-~sys-devel/llvm-9.0.0		*
+~sys-devel/llvm-12.0.1		*
 ~sys-devel/clang-3.8.1		*
 =x11-apps/xinput_calibrator-0.7.5	arm
 
diff --git a/profiles/targets/chromeos/package.provided b/profiles/targets/chromeos/package.provided
index 706b53f..3b2b2a8 100644
--- a/profiles/targets/chromeos/package.provided
+++ b/profiles/targets/chromeos/package.provided
@@ -134,12 +134,14 @@
 dev-util/boost-build-1.65.0
 
 # We don't need the toolchain itself in the target board.
-dev-lang/rust-1.47.0
 dev-lang/rust-1.51.0
+dev-lang/rust-1.55.0
 
 # We don't need code generators on the target board.
 dev-rust/bindgen-0.56.0-r2
 dev-rust/dbus-codegen-0.5.0-r1
+dev-rust/dbus-codegen-0.9.1
+dev-rust/dbus-codegen-0.9.1_p20210220
 
 # We sometimes need ruby for building, but don't yet care about targets.
 dev-lang/ruby-1.9.4
diff --git a/profiles/targets/chromeos/package.use b/profiles/targets/chromeos/package.use
index 4b097b7..c0da7f1 100644
--- a/profiles/targets/chromeos/package.use
+++ b/profiles/targets/chromeos/package.use
@@ -97,7 +97,7 @@
 net-proxy/tsocks	tordns
 # No support for bluetooth printing.
 net-wireless/bluez	-cups
-net-wireless/wpa_supplicant-2_9	dbus debug -readline smartcard
+net-wireless/wpa_supplicant-cros	dbus debug -readline smartcard
 sci-geosciences/gpsd	-python -ntp -X dbus garmin minimal ocean tntc usb -sockets
 # Build only TF lite to save disk space.
 sci-libs/tensorflow	-python minimal
@@ -138,6 +138,7 @@
 # Readline requires the unicode flag to match sys-libs/ncurses.
 sys-libs/readline	-unicode
 sys-libs/talloc		-python
+sys-libs/timezone-data	zic-slim
 sys-libs/tdb		-python
 sys-libs/tevent		-python
 sys-libs/zlib		static-libs
diff --git a/profiles/targets/sdk/package.use b/profiles/targets/sdk/package.use
index 7c7e0de..ccec829 100644
--- a/profiles/targets/sdk/package.use
+++ b/profiles/targets/sdk/package.use
@@ -32,10 +32,10 @@
 net-libs/libslirp static-libs
 sys-apps/attr static-libs
 
-# mksquashfs used in build_image requires lzo support.
-# Also include lz4 and lzma compressors, for flexibility.
+# mksquashfs used in build_image requires lzo/lz4/zstd support.
+# Also include lzma compressor for flexibility.
 # For SELinux context labeling it also needs selinux.
-sys-fs/squashfs-tools lzo lz4 lzma selinux
+sys-fs/squashfs-tools lzo lz4 lzma selinux zstd
 
 # some prebuilt binaries created on Ubuntu like to link against libtinfo.
 sys-libs/ncurses tinfo
@@ -68,6 +68,9 @@
 sys-libs/libcxx abi_x86_32
 sys-libs/llvm-libunwind abi_x86_32
 
+# Disable libgcc_s.so creation for host builds.
+sys-libs/llvm-libunwind -synth_libgcc
+
 # vaapi is not used through ffmpeg on ChromiumOS, avoid dependency for sdk
 media-video/ffmpeg -vaapi
 
@@ -129,6 +132,10 @@
 # We don't need Python in these packages, so save some space.
 dev-libs/boost -python
 
+# Disable cairo for pygobject to avoid pulling in more python 2 packages as
+# dependencies.
+dev-python/pygobject -cairo
+
 # Freeze Python 2.7 versions for all existing packages.  We'll slowly trim this
 # list down as packages don't need them.  New packages should *not* be added
 # here as new code should be using Python 3.
diff --git a/proto/audio_config.proto b/proto/audio_config.proto
deleted file mode 100644
index d6293a3..0000000
--- a/proto/audio_config.proto
+++ /dev/null
@@ -1,23 +0,0 @@
-syntax = "proto3";
-
-option go_package = "go.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto";
-
-package chromiumos_overlay;
-
-// Note that all files should be specified as paths relative to the root of a
-// chromiumos checkout, e.g. "src/overlays/overlay-<target>/audio/HiFi.conf".
-message AudioConfig {
-    // The name of the audio card.
-    string card_name = 1;
-
-    // Path to the CRAS card configuration file.
-    // See https://chromium.googlesource.com/chromiumos/third_party/adhd/+/master/cras/#card-configuration.
-    string card_config_file = 2;
-
-    // Path to the dsp.ini configuration file.
-    string dsp_file = 3;
-
-    // Path to the UCM file. Note that this is the UCM verb file (e.g.
-    // "HiFi.conf"), NOT the UCM master file (e.g. <sound card name>.conf).
-    string ucm_file = 4;
-}
diff --git a/proto/brand_config.proto b/proto/brand_config.proto
deleted file mode 100644
index 42e17c7..0000000
--- a/proto/brand_config.proto
+++ /dev/null
@@ -1,13 +0,0 @@
-syntax = "proto3";
-
-package chromiumos_overlay;
-
-option go_package = "go.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto";
-
-import "src/platform2/chromeos-config/proto/identity_scan_config.proto";
-
-// TODO(shapiroc): Delete after config is migrated.
-message BrandConfig {
-  chromeos_config.IdentityScanConfig.BrandId scan_config = 1;
-  string wallpaper = 2;
-}
diff --git a/proto/build_payload.proto b/proto/build_payload.proto
deleted file mode 100644
index c8b2b3e..0000000
--- a/proto/build_payload.proto
+++ /dev/null
@@ -1,44 +0,0 @@
-syntax = "proto3";
-
-package chromiumos_overlay;
-
-option go_package = "go.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto";
-
-import "src/third_party/chromiumos-overlay/proto/audio_config.proto";
-import "src/third_party/chromiumos-overlay/proto/firmware_config.proto";
-import "src/platform2/bluetooth/proto/config.proto";
-import "src/platform2/chromeos-config/proto/identity_scan_config.proto";
-import "src/platform2/power_manager/config.proto";
-
-message BuildPayload {
-  // Determines how to scan for a unique hardware design config.
-  //
-  // And based on that hardware configuriation identity,
-  // defines all of the unique software build and runtime configuration.
-  //
-  // For context, see: config/api/design.proto
-  message DesignConfig {
-    chromeos_config.IdentityScanConfig.DesignConfigId scan_config = 1;
-
-    firmware.FirmwareConfig firmware = 2;
-
-    bluetooth.BluetoothConfig bluetooth_config = 3;
-
-    power_manager.PowerManagerConfig power_manager_config = 4;
-
-    AudioConfig audio_config = 5;
-  }
-
-  // Determines how to scan for a unique device brand.
-  //
-  // And based on that brand identity,
-  // defines all of the unique branding information.
-  //
-  // For context, see: config/api/device_brand.proto
-  message BrandConfig {
-    chromeos_config.IdentityScanConfig.BrandId scan_config = 1;
-
-    // Base filename of the default wallpaper to show on this device.
-    string wallpaper = 2;
-  }
-}
diff --git a/proto/build_target.proto b/proto/build_target.proto
deleted file mode 100644
index db32875..0000000
--- a/proto/build_target.proto
+++ /dev/null
@@ -1,14 +0,0 @@
-syntax = "proto3";
-
-package chromiumos_overlay;
-
-option go_package = "go.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto";
-
-import "src/third_party/chromiumos-overlay/proto/build_target_id.proto";
-
-message BuildTarget {
-  BuildTargetId id = 1;
-
-  // The name of the overlay to use, e.g. "amd64-generic"
-  string overlay = 2;
-}
diff --git a/proto/build_target_id.proto b/proto/build_target_id.proto
deleted file mode 100644
index cfb3c7d..0000000
--- a/proto/build_target_id.proto
+++ /dev/null
@@ -1,12 +0,0 @@
-syntax = "proto3";
-
-package chromiumos_overlay;
-
-option go_package = "go.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto";
-
-// An id that other messages can use as a foreign key to specify a
-// BuildTarget. Id messages are equal iff their binary serialization is
-// equal.
-message BuildTargetId {
-  string value = 1;
-}
diff --git a/proto/design_config_build_payload.proto b/proto/design_config_build_payload.proto
deleted file mode 100644
index b5d501c..0000000
--- a/proto/design_config_build_payload.proto
+++ /dev/null
@@ -1,24 +0,0 @@
-syntax = "proto3";
-
-package chromiumos_overlay;
-
-option go_package = "go.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto";
-
-import "src/third_party/chromiumos-overlay/proto/audio_config.proto";
-import "src/third_party/chromiumos-overlay/proto/firmware_config.proto";
-import "src/platform2/bluetooth/proto/config.proto";
-import "src/platform2/chromeos-config/proto/identity_scan_config.proto";
-import "src/platform2/power_manager/config.proto";
-
-// TODO(shapiroc): Delete after config is migrated.
-message DesignConfigBuildPayload {
-  chromeos_config.IdentityScanConfig.DesignConfigId scan_config = 1;
-
-  firmware.FirmwareConfig firmware = 2;
-
-  bluetooth.BluetoothConfig bluetooth_config = 3;
-
-  power_manager.PowerManagerConfig power_manager_config = 4;
-
-  AudioConfig audio_config = 5;
-}
diff --git a/proto/firmware_config.proto b/proto/firmware_config.proto
deleted file mode 100644
index 5a7e9e8..0000000
--- a/proto/firmware_config.proto
+++ /dev/null
@@ -1,47 +0,0 @@
-syntax = "proto3";
-
-package firmware;
-
-option go_package = "go.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto";
-
-// The type of a firmware binary.
-message FirmwareType {
-  enum Type {
-    UNKNOWN = 0;
-    MAIN = 1;
-    EC = 2;
-  }
-}
-
-// Specifies the version of a firmware binary.
-message Version {
-  int32 major = 1;
-  int32 minor = 2;
-}
-
-// Specifies the location of a firmware binary.
-message FirmwarePayload {
-  // The build target the firmware was built for.
-  string build_target_name = 1;
-
-  // The name of the firmware image used by the firmware updater. Typically
-  // the device name, but can differ when a device may have two or more
-  // different firmware images.
-  string firmware_image_name = 2;
-
-  FirmwareType.Type type = 3;
-
-  Version version = 4;
-}
-
-// Specifies different firmware payloads to use in a build.
-message FirmwareConfig {
-  // The main read-only firmware.
-  FirmwarePayload main_ro_payload = 1;
-
-  // The main read-write firmware.
-  FirmwarePayload main_rw_payload = 2;
-
-  // The embedded controller read-only firmware.
-  FirmwarePayload ec_ro_payload = 3;
-}
diff --git a/proto/generate.sh b/proto/generate.sh
deleted file mode 100755
index 3d79b63..0000000
--- a/proto/generate.sh
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/bin/bash -e
-#
-# Copyright 2020 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.
-
-# proto_path is set to the project root, so all protos must be specified as
-# src/third_party/chromiumos-overlay/...
-protos=(
-    audio_config.proto
-    brand_config.proto
-    build_payload.proto
-    build_target.proto
-    build_target_id.proto
-    design_config_build_payload.proto
-    firmware_config.proto
-)
-for proto in "${protos[@]}"; do
-    protoc -I../../../.. "src/third_party/chromiumos-overlay/proto/${proto}" \
-        --python_out=proto_bindings
-done
-
diff --git a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/audio_config_pb2.py b/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/audio_config_pb2.py
deleted file mode 100644
index 87ddc2c..0000000
--- a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/audio_config_pb2.py
+++ /dev/null
@@ -1,91 +0,0 @@
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: src/third_party/chromiumos-overlay/proto/audio_config.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='src/third_party/chromiumos-overlay/proto/audio_config.proto',
-  package='chromiumos_overlay',
-  syntax='proto3',
-  serialized_options=_b('ZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto'),
-  serialized_pb=_b('\n;src/third_party/chromiumos-overlay/proto/audio_config.proto\x12\x12\x63hromiumos_overlay\"^\n\x0b\x41udioConfig\x12\x11\n\tcard_name\x18\x01 \x01(\t\x12\x18\n\x10\x63\x61rd_config_file\x18\x02 \x01(\t\x12\x10\n\x08\x64sp_file\x18\x03 \x01(\t\x12\x10\n\x08ucm_file\x18\x04 \x01(\tBOZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/protob\x06proto3')
-)
-
-
-
-
-_AUDIOCONFIG = _descriptor.Descriptor(
-  name='AudioConfig',
-  full_name='chromiumos_overlay.AudioConfig',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='card_name', full_name='chromiumos_overlay.AudioConfig.card_name', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='card_config_file', full_name='chromiumos_overlay.AudioConfig.card_config_file', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='dsp_file', full_name='chromiumos_overlay.AudioConfig.dsp_file', index=2,
-      number=3, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='ucm_file', full_name='chromiumos_overlay.AudioConfig.ucm_file', index=3,
-      number=4, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=83,
-  serialized_end=177,
-)
-
-DESCRIPTOR.message_types_by_name['AudioConfig'] = _AUDIOCONFIG
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-AudioConfig = _reflection.GeneratedProtocolMessageType('AudioConfig', (_message.Message,), dict(
-  DESCRIPTOR = _AUDIOCONFIG,
-  __module__ = 'src.third_party.chromiumos_overlay.proto.audio_config_pb2'
-  # @@protoc_insertion_point(class_scope:chromiumos_overlay.AudioConfig)
-  ))
-_sym_db.RegisterMessage(AudioConfig)
-
-
-DESCRIPTOR._options = None
-# @@protoc_insertion_point(module_scope)
diff --git a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/brand_config_pb2.py b/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/brand_config_pb2.py
deleted file mode 100644
index 1cb48960..0000000
--- a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/brand_config_pb2.py
+++ /dev/null
@@ -1,80 +0,0 @@
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: src/third_party/chromiumos-overlay/proto/brand_config.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-from src.platform2.chromeos_config.proto import identity_scan_config_pb2 as src_dot_platform2_dot_chromeos__config_dot_proto_dot_identity__scan__config__pb2
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='src/third_party/chromiumos-overlay/proto/brand_config.proto',
-  package='chromiumos_overlay',
-  syntax='proto3',
-  serialized_options=_b('ZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto'),
-  serialized_pb=_b('\n;src/third_party/chromiumos-overlay/proto/brand_config.proto\x12\x12\x63hromiumos_overlay\x1a>src/platform2/chromeos-config/proto/identity_scan_config.proto\"b\n\x0b\x42randConfig\x12@\n\x0bscan_config\x18\x01 \x01(\x0b\x32+.chromeos_config.IdentityScanConfig.BrandId\x12\x11\n\twallpaper\x18\x02 \x01(\tBOZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/protob\x06proto3')
-  ,
-  dependencies=[src_dot_platform2_dot_chromeos__config_dot_proto_dot_identity__scan__config__pb2.DESCRIPTOR,])
-
-
-
-
-_BRANDCONFIG = _descriptor.Descriptor(
-  name='BrandConfig',
-  full_name='chromiumos_overlay.BrandConfig',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='scan_config', full_name='chromiumos_overlay.BrandConfig.scan_config', index=0,
-      number=1, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='wallpaper', full_name='chromiumos_overlay.BrandConfig.wallpaper', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=147,
-  serialized_end=245,
-)
-
-_BRANDCONFIG.fields_by_name['scan_config'].message_type = src_dot_platform2_dot_chromeos__config_dot_proto_dot_identity__scan__config__pb2._IDENTITYSCANCONFIG_BRANDID
-DESCRIPTOR.message_types_by_name['BrandConfig'] = _BRANDCONFIG
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-BrandConfig = _reflection.GeneratedProtocolMessageType('BrandConfig', (_message.Message,), dict(
-  DESCRIPTOR = _BRANDCONFIG,
-  __module__ = 'src.third_party.chromiumos_overlay.proto.brand_config_pb2'
-  # @@protoc_insertion_point(class_scope:chromiumos_overlay.BrandConfig)
-  ))
-_sym_db.RegisterMessage(BrandConfig)
-
-
-DESCRIPTOR._options = None
-# @@protoc_insertion_point(module_scope)
diff --git a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/build_payload_pb2.py b/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/build_payload_pb2.py
deleted file mode 100644
index 4ac955f..0000000
--- a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/build_payload_pb2.py
+++ /dev/null
@@ -1,188 +0,0 @@
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: src/third_party/chromiumos-overlay/proto/build_payload.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-from src.third_party.chromiumos_overlay.proto import audio_config_pb2 as src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_audio__config__pb2
-from src.third_party.chromiumos_overlay.proto import firmware_config_pb2 as src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_firmware__config__pb2
-from src.platform2.bluetooth.proto import config_pb2 as src_dot_platform2_dot_bluetooth_dot_proto_dot_config__pb2
-from src.platform2.chromeos_config.proto import identity_scan_config_pb2 as src_dot_platform2_dot_chromeos__config_dot_proto_dot_identity__scan__config__pb2
-from src.platform2.power_manager import config_pb2 as src_dot_platform2_dot_power__manager_dot_config__pb2
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='src/third_party/chromiumos-overlay/proto/build_payload.proto',
-  package='chromiumos_overlay',
-  syntax='proto3',
-  serialized_options=_b('ZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto'),
-  serialized_pb=_b('\n<src/third_party/chromiumos-overlay/proto/build_payload.proto\x12\x12\x63hromiumos_overlay\x1a;src/third_party/chromiumos-overlay/proto/audio_config.proto\x1a>src/third_party/chromiumos-overlay/proto/firmware_config.proto\x1a*src/platform2/bluetooth/proto/config.proto\x1a>src/platform2/chromeos-config/proto/identity_scan_config.proto\x1a(src/platform2/power_manager/config.proto\"\xa6\x03\n\x0c\x42uildPayload\x1a\xb1\x02\n\x0c\x44\x65signConfig\x12G\n\x0bscan_config\x18\x01 \x01(\x0b\x32\x32.chromeos_config.IdentityScanConfig.DesignConfigId\x12*\n\x08\x66irmware\x18\x02 \x01(\x0b\x32\x18.firmware.FirmwareConfig\x12\x34\n\x10\x62luetooth_config\x18\x03 \x01(\x0b\x32\x1a.bluetooth.BluetoothConfig\x12?\n\x14power_manager_config\x18\x04 \x01(\x0b\x32!.power_manager.PowerManagerConfig\x12\x35\n\x0c\x61udio_config\x18\x05 \x01(\x0b\x32\x1f.chromiumos_overlay.AudioConfig\x1a\x62\n\x0b\x42randConfig\x12@\n\x0bscan_config\x18\x01 \x01(\x0b\x32+.chromeos_config.IdentityScanConfig.BrandId\x12\x11\n\twallpaper\x18\x02 \x01(\tBOZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/protob\x06proto3')
-  ,
-  dependencies=[src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_audio__config__pb2.DESCRIPTOR,src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_firmware__config__pb2.DESCRIPTOR,src_dot_platform2_dot_bluetooth_dot_proto_dot_config__pb2.DESCRIPTOR,src_dot_platform2_dot_chromeos__config_dot_proto_dot_identity__scan__config__pb2.DESCRIPTOR,src_dot_platform2_dot_power__manager_dot_config__pb2.DESCRIPTOR,])
-
-
-
-
-_BUILDPAYLOAD_DESIGNCONFIG = _descriptor.Descriptor(
-  name='DesignConfig',
-  full_name='chromiumos_overlay.BuildPayload.DesignConfig',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='scan_config', full_name='chromiumos_overlay.BuildPayload.DesignConfig.scan_config', index=0,
-      number=1, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='firmware', full_name='chromiumos_overlay.BuildPayload.DesignConfig.firmware', index=1,
-      number=2, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='bluetooth_config', full_name='chromiumos_overlay.BuildPayload.DesignConfig.bluetooth_config', index=2,
-      number=3, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='power_manager_config', full_name='chromiumos_overlay.BuildPayload.DesignConfig.power_manager_config', index=3,
-      number=4, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='audio_config', full_name='chromiumos_overlay.BuildPayload.DesignConfig.audio_config', index=4,
-      number=5, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=377,
-  serialized_end=682,
-)
-
-_BUILDPAYLOAD_BRANDCONFIG = _descriptor.Descriptor(
-  name='BrandConfig',
-  full_name='chromiumos_overlay.BuildPayload.BrandConfig',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='scan_config', full_name='chromiumos_overlay.BuildPayload.BrandConfig.scan_config', index=0,
-      number=1, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='wallpaper', full_name='chromiumos_overlay.BuildPayload.BrandConfig.wallpaper', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=684,
-  serialized_end=782,
-)
-
-_BUILDPAYLOAD = _descriptor.Descriptor(
-  name='BuildPayload',
-  full_name='chromiumos_overlay.BuildPayload',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-  ],
-  extensions=[
-  ],
-  nested_types=[_BUILDPAYLOAD_DESIGNCONFIG, _BUILDPAYLOAD_BRANDCONFIG, ],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=360,
-  serialized_end=782,
-)
-
-_BUILDPAYLOAD_DESIGNCONFIG.fields_by_name['scan_config'].message_type = src_dot_platform2_dot_chromeos__config_dot_proto_dot_identity__scan__config__pb2._IDENTITYSCANCONFIG_DESIGNCONFIGID
-_BUILDPAYLOAD_DESIGNCONFIG.fields_by_name['firmware'].message_type = src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_firmware__config__pb2._FIRMWARECONFIG
-_BUILDPAYLOAD_DESIGNCONFIG.fields_by_name['bluetooth_config'].message_type = src_dot_platform2_dot_bluetooth_dot_proto_dot_config__pb2._BLUETOOTHCONFIG
-_BUILDPAYLOAD_DESIGNCONFIG.fields_by_name['power_manager_config'].message_type = src_dot_platform2_dot_power__manager_dot_config__pb2._POWERMANAGERCONFIG
-_BUILDPAYLOAD_DESIGNCONFIG.fields_by_name['audio_config'].message_type = src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_audio__config__pb2._AUDIOCONFIG
-_BUILDPAYLOAD_DESIGNCONFIG.containing_type = _BUILDPAYLOAD
-_BUILDPAYLOAD_BRANDCONFIG.fields_by_name['scan_config'].message_type = src_dot_platform2_dot_chromeos__config_dot_proto_dot_identity__scan__config__pb2._IDENTITYSCANCONFIG_BRANDID
-_BUILDPAYLOAD_BRANDCONFIG.containing_type = _BUILDPAYLOAD
-DESCRIPTOR.message_types_by_name['BuildPayload'] = _BUILDPAYLOAD
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-BuildPayload = _reflection.GeneratedProtocolMessageType('BuildPayload', (_message.Message,), dict(
-
-  DesignConfig = _reflection.GeneratedProtocolMessageType('DesignConfig', (_message.Message,), dict(
-    DESCRIPTOR = _BUILDPAYLOAD_DESIGNCONFIG,
-    __module__ = 'src.third_party.chromiumos_overlay.proto.build_payload_pb2'
-    # @@protoc_insertion_point(class_scope:chromiumos_overlay.BuildPayload.DesignConfig)
-    ))
-  ,
-
-  BrandConfig = _reflection.GeneratedProtocolMessageType('BrandConfig', (_message.Message,), dict(
-    DESCRIPTOR = _BUILDPAYLOAD_BRANDCONFIG,
-    __module__ = 'src.third_party.chromiumos_overlay.proto.build_payload_pb2'
-    # @@protoc_insertion_point(class_scope:chromiumos_overlay.BuildPayload.BrandConfig)
-    ))
-  ,
-  DESCRIPTOR = _BUILDPAYLOAD,
-  __module__ = 'src.third_party.chromiumos_overlay.proto.build_payload_pb2'
-  # @@protoc_insertion_point(class_scope:chromiumos_overlay.BuildPayload)
-  ))
-_sym_db.RegisterMessage(BuildPayload)
-_sym_db.RegisterMessage(BuildPayload.DesignConfig)
-_sym_db.RegisterMessage(BuildPayload.BrandConfig)
-
-
-DESCRIPTOR._options = None
-# @@protoc_insertion_point(module_scope)
diff --git a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/build_target_id_pb2.py b/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/build_target_id_pb2.py
deleted file mode 100644
index e788d81..0000000
--- a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/build_target_id_pb2.py
+++ /dev/null
@@ -1,70 +0,0 @@
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: src/third_party/chromiumos-overlay/proto/build_target_id.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='src/third_party/chromiumos-overlay/proto/build_target_id.proto',
-  package='chromiumos_overlay',
-  syntax='proto3',
-  serialized_options=_b('ZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto'),
-  serialized_pb=_b('\n>src/third_party/chromiumos-overlay/proto/build_target_id.proto\x12\x12\x63hromiumos_overlay\"\x1e\n\rBuildTargetId\x12\r\n\x05value\x18\x01 \x01(\tBOZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/protob\x06proto3')
-)
-
-
-
-
-_BUILDTARGETID = _descriptor.Descriptor(
-  name='BuildTargetId',
-  full_name='chromiumos_overlay.BuildTargetId',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='value', full_name='chromiumos_overlay.BuildTargetId.value', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=86,
-  serialized_end=116,
-)
-
-DESCRIPTOR.message_types_by_name['BuildTargetId'] = _BUILDTARGETID
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-BuildTargetId = _reflection.GeneratedProtocolMessageType('BuildTargetId', (_message.Message,), dict(
-  DESCRIPTOR = _BUILDTARGETID,
-  __module__ = 'src.third_party.chromiumos_overlay.proto.build_target_id_pb2'
-  # @@protoc_insertion_point(class_scope:chromiumos_overlay.BuildTargetId)
-  ))
-_sym_db.RegisterMessage(BuildTargetId)
-
-
-DESCRIPTOR._options = None
-# @@protoc_insertion_point(module_scope)
diff --git a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/build_target_pb2.py b/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/build_target_pb2.py
deleted file mode 100644
index da4063e..0000000
--- a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/build_target_pb2.py
+++ /dev/null
@@ -1,80 +0,0 @@
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: src/third_party/chromiumos-overlay/proto/build_target.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-from src.third_party.chromiumos_overlay.proto import build_target_id_pb2 as src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_build__target__id__pb2
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='src/third_party/chromiumos-overlay/proto/build_target.proto',
-  package='chromiumos_overlay',
-  syntax='proto3',
-  serialized_options=_b('ZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto'),
-  serialized_pb=_b('\n;src/third_party/chromiumos-overlay/proto/build_target.proto\x12\x12\x63hromiumos_overlay\x1a>src/third_party/chromiumos-overlay/proto/build_target_id.proto\"M\n\x0b\x42uildTarget\x12-\n\x02id\x18\x01 \x01(\x0b\x32!.chromiumos_overlay.BuildTargetId\x12\x0f\n\x07overlay\x18\x02 \x01(\tBOZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/protob\x06proto3')
-  ,
-  dependencies=[src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_build__target__id__pb2.DESCRIPTOR,])
-
-
-
-
-_BUILDTARGET = _descriptor.Descriptor(
-  name='BuildTarget',
-  full_name='chromiumos_overlay.BuildTarget',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='id', full_name='chromiumos_overlay.BuildTarget.id', index=0,
-      number=1, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='overlay', full_name='chromiumos_overlay.BuildTarget.overlay', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=147,
-  serialized_end=224,
-)
-
-_BUILDTARGET.fields_by_name['id'].message_type = src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_build__target__id__pb2._BUILDTARGETID
-DESCRIPTOR.message_types_by_name['BuildTarget'] = _BUILDTARGET
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-BuildTarget = _reflection.GeneratedProtocolMessageType('BuildTarget', (_message.Message,), dict(
-  DESCRIPTOR = _BUILDTARGET,
-  __module__ = 'src.third_party.chromiumos_overlay.proto.build_target_pb2'
-  # @@protoc_insertion_point(class_scope:chromiumos_overlay.BuildTarget)
-  ))
-_sym_db.RegisterMessage(BuildTarget)
-
-
-DESCRIPTOR._options = None
-# @@protoc_insertion_point(module_scope)
diff --git a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/design_config_build_payload_pb2.py b/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/design_config_build_payload_pb2.py
deleted file mode 100644
index a179fd0..0000000
--- a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/design_config_build_payload_pb2.py
+++ /dev/null
@@ -1,109 +0,0 @@
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: src/third_party/chromiumos-overlay/proto/design_config_build_payload.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-from src.third_party.chromiumos_overlay.proto import audio_config_pb2 as src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_audio__config__pb2
-from src.third_party.chromiumos_overlay.proto import firmware_config_pb2 as src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_firmware__config__pb2
-from src.platform2.bluetooth.proto import config_pb2 as src_dot_platform2_dot_bluetooth_dot_proto_dot_config__pb2
-from src.platform2.chromeos_config.proto import identity_scan_config_pb2 as src_dot_platform2_dot_chromeos__config_dot_proto_dot_identity__scan__config__pb2
-from src.platform2.power_manager import config_pb2 as src_dot_platform2_dot_power__manager_dot_config__pb2
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='src/third_party/chromiumos-overlay/proto/design_config_build_payload.proto',
-  package='chromiumos_overlay',
-  syntax='proto3',
-  serialized_options=_b('ZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto'),
-  serialized_pb=_b('\nJsrc/third_party/chromiumos-overlay/proto/design_config_build_payload.proto\x12\x12\x63hromiumos_overlay\x1a;src/third_party/chromiumos-overlay/proto/audio_config.proto\x1a>src/third_party/chromiumos-overlay/proto/firmware_config.proto\x1a*src/platform2/bluetooth/proto/config.proto\x1a>src/platform2/chromeos-config/proto/identity_scan_config.proto\x1a(src/platform2/power_manager/config.proto\"\xbd\x02\n\x18\x44\x65signConfigBuildPayload\x12G\n\x0bscan_config\x18\x01 \x01(\x0b\x32\x32.chromeos_config.IdentityScanConfig.DesignConfigId\x12*\n\x08\x66irmware\x18\x02 \x01(\x0b\x32\x18.firmware.FirmwareConfig\x12\x34\n\x10\x62luetooth_config\x18\x03 \x01(\x0b\x32\x1a.bluetooth.BluetoothConfig\x12?\n\x14power_manager_config\x18\x04 \x01(\x0b\x32!.power_manager.PowerManagerConfig\x12\x35\n\x0c\x61udio_config\x18\x05 \x01(\x0b\x32\x1f.chromiumos_overlay.AudioConfigBOZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/protob\x06proto3')
-  ,
-  dependencies=[src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_audio__config__pb2.DESCRIPTOR,src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_firmware__config__pb2.DESCRIPTOR,src_dot_platform2_dot_bluetooth_dot_proto_dot_config__pb2.DESCRIPTOR,src_dot_platform2_dot_chromeos__config_dot_proto_dot_identity__scan__config__pb2.DESCRIPTOR,src_dot_platform2_dot_power__manager_dot_config__pb2.DESCRIPTOR,])
-
-
-
-
-_DESIGNCONFIGBUILDPAYLOAD = _descriptor.Descriptor(
-  name='DesignConfigBuildPayload',
-  full_name='chromiumos_overlay.DesignConfigBuildPayload',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='scan_config', full_name='chromiumos_overlay.DesignConfigBuildPayload.scan_config', index=0,
-      number=1, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='firmware', full_name='chromiumos_overlay.DesignConfigBuildPayload.firmware', index=1,
-      number=2, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='bluetooth_config', full_name='chromiumos_overlay.DesignConfigBuildPayload.bluetooth_config', index=2,
-      number=3, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='power_manager_config', full_name='chromiumos_overlay.DesignConfigBuildPayload.power_manager_config', index=3,
-      number=4, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='audio_config', full_name='chromiumos_overlay.DesignConfigBuildPayload.audio_config', index=4,
-      number=5, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=374,
-  serialized_end=691,
-)
-
-_DESIGNCONFIGBUILDPAYLOAD.fields_by_name['scan_config'].message_type = src_dot_platform2_dot_chromeos__config_dot_proto_dot_identity__scan__config__pb2._IDENTITYSCANCONFIG_DESIGNCONFIGID
-_DESIGNCONFIGBUILDPAYLOAD.fields_by_name['firmware'].message_type = src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_firmware__config__pb2._FIRMWARECONFIG
-_DESIGNCONFIGBUILDPAYLOAD.fields_by_name['bluetooth_config'].message_type = src_dot_platform2_dot_bluetooth_dot_proto_dot_config__pb2._BLUETOOTHCONFIG
-_DESIGNCONFIGBUILDPAYLOAD.fields_by_name['power_manager_config'].message_type = src_dot_platform2_dot_power__manager_dot_config__pb2._POWERMANAGERCONFIG
-_DESIGNCONFIGBUILDPAYLOAD.fields_by_name['audio_config'].message_type = src_dot_third__party_dot_chromiumos__overlay_dot_proto_dot_audio__config__pb2._AUDIOCONFIG
-DESCRIPTOR.message_types_by_name['DesignConfigBuildPayload'] = _DESIGNCONFIGBUILDPAYLOAD
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-DesignConfigBuildPayload = _reflection.GeneratedProtocolMessageType('DesignConfigBuildPayload', (_message.Message,), dict(
-  DESCRIPTOR = _DESIGNCONFIGBUILDPAYLOAD,
-  __module__ = 'src.third_party.chromiumos_overlay.proto.design_config_build_payload_pb2'
-  # @@protoc_insertion_point(class_scope:chromiumos_overlay.DesignConfigBuildPayload)
-  ))
-_sym_db.RegisterMessage(DesignConfigBuildPayload)
-
-
-DESCRIPTOR._options = None
-# @@protoc_insertion_point(module_scope)
diff --git a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/firmware_config_pb2.py b/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/firmware_config_pb2.py
deleted file mode 100644
index 63b4557..0000000
--- a/proto/proto_bindings/src/third_party/chromiumos_overlay/proto/firmware_config_pb2.py
+++ /dev/null
@@ -1,255 +0,0 @@
-# Generated by the protocol buffer compiler.  DO NOT EDIT!
-# source: src/third_party/chromiumos-overlay/proto/firmware_config.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
-  name='src/third_party/chromiumos-overlay/proto/firmware_config.proto',
-  package='firmware',
-  syntax='proto3',
-  serialized_options=_b('ZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto'),
-  serialized_pb=_b('\n>src/third_party/chromiumos-overlay/proto/firmware_config.proto\x12\x08\x66irmware\"5\n\x0c\x46irmwareType\"%\n\x04Type\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x08\n\x04MAIN\x10\x01\x12\x06\n\x02\x45\x43\x10\x02\"\'\n\x07Version\x12\r\n\x05major\x18\x01 \x01(\x05\x12\r\n\x05minor\x18\x02 \x01(\x05\"\x93\x01\n\x0f\x46irmwarePayload\x12\x19\n\x11\x62uild_target_name\x18\x01 \x01(\t\x12\x1b\n\x13\x66irmware_image_name\x18\x02 \x01(\t\x12$\n\x04type\x18\x03 \x01(\x0b\x32\x16.firmware.FirmwareType\x12\"\n\x07version\x18\x04 \x01(\x0b\x32\x11.firmware.Version\"\xaa\x01\n\x0e\x46irmwareConfig\x12\x32\n\x0fmain_ro_payload\x18\x01 \x01(\x0b\x32\x19.firmware.FirmwarePayload\x12\x32\n\x0fmain_rw_payload\x18\x02 \x01(\x0b\x32\x19.firmware.FirmwarePayload\x12\x30\n\rec_ro_payload\x18\x03 \x01(\x0b\x32\x19.firmware.FirmwarePayloadBOZMgo.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/protob\x06proto3')
-)
-
-
-
-_FIRMWARETYPE_TYPE = _descriptor.EnumDescriptor(
-  name='Type',
-  full_name='firmware.FirmwareType.Type',
-  filename=None,
-  file=DESCRIPTOR,
-  values=[
-    _descriptor.EnumValueDescriptor(
-      name='UNKNOWN', index=0, number=0,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='MAIN', index=1, number=1,
-      serialized_options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='EC', index=2, number=2,
-      serialized_options=None,
-      type=None),
-  ],
-  containing_type=None,
-  serialized_options=None,
-  serialized_start=92,
-  serialized_end=129,
-)
-_sym_db.RegisterEnumDescriptor(_FIRMWARETYPE_TYPE)
-
-
-_FIRMWARETYPE = _descriptor.Descriptor(
-  name='FirmwareType',
-  full_name='firmware.FirmwareType',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-    _FIRMWARETYPE_TYPE,
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=76,
-  serialized_end=129,
-)
-
-
-_VERSION = _descriptor.Descriptor(
-  name='Version',
-  full_name='firmware.Version',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='major', full_name='firmware.Version.major', index=0,
-      number=1, type=5, cpp_type=1, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='minor', full_name='firmware.Version.minor', index=1,
-      number=2, type=5, cpp_type=1, label=1,
-      has_default_value=False, default_value=0,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=131,
-  serialized_end=170,
-)
-
-
-_FIRMWAREPAYLOAD = _descriptor.Descriptor(
-  name='FirmwarePayload',
-  full_name='firmware.FirmwarePayload',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='build_target_name', full_name='firmware.FirmwarePayload.build_target_name', index=0,
-      number=1, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='firmware_image_name', full_name='firmware.FirmwarePayload.firmware_image_name', index=1,
-      number=2, type=9, cpp_type=9, label=1,
-      has_default_value=False, default_value=_b("").decode('utf-8'),
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='type', full_name='firmware.FirmwarePayload.type', index=2,
-      number=3, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='version', full_name='firmware.FirmwarePayload.version', index=3,
-      number=4, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=173,
-  serialized_end=320,
-)
-
-
-_FIRMWARECONFIG = _descriptor.Descriptor(
-  name='FirmwareConfig',
-  full_name='firmware.FirmwareConfig',
-  filename=None,
-  file=DESCRIPTOR,
-  containing_type=None,
-  fields=[
-    _descriptor.FieldDescriptor(
-      name='main_ro_payload', full_name='firmware.FirmwareConfig.main_ro_payload', index=0,
-      number=1, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='main_rw_payload', full_name='firmware.FirmwareConfig.main_rw_payload', index=1,
-      number=2, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-    _descriptor.FieldDescriptor(
-      name='ec_ro_payload', full_name='firmware.FirmwareConfig.ec_ro_payload', index=2,
-      number=3, type=11, cpp_type=10, label=1,
-      has_default_value=False, default_value=None,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      serialized_options=None, file=DESCRIPTOR),
-  ],
-  extensions=[
-  ],
-  nested_types=[],
-  enum_types=[
-  ],
-  serialized_options=None,
-  is_extendable=False,
-  syntax='proto3',
-  extension_ranges=[],
-  oneofs=[
-  ],
-  serialized_start=323,
-  serialized_end=493,
-)
-
-_FIRMWARETYPE_TYPE.containing_type = _FIRMWARETYPE
-_FIRMWAREPAYLOAD.fields_by_name['type'].message_type = _FIRMWARETYPE
-_FIRMWAREPAYLOAD.fields_by_name['version'].message_type = _VERSION
-_FIRMWARECONFIG.fields_by_name['main_ro_payload'].message_type = _FIRMWAREPAYLOAD
-_FIRMWARECONFIG.fields_by_name['main_rw_payload'].message_type = _FIRMWAREPAYLOAD
-_FIRMWARECONFIG.fields_by_name['ec_ro_payload'].message_type = _FIRMWAREPAYLOAD
-DESCRIPTOR.message_types_by_name['FirmwareType'] = _FIRMWARETYPE
-DESCRIPTOR.message_types_by_name['Version'] = _VERSION
-DESCRIPTOR.message_types_by_name['FirmwarePayload'] = _FIRMWAREPAYLOAD
-DESCRIPTOR.message_types_by_name['FirmwareConfig'] = _FIRMWARECONFIG
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-FirmwareType = _reflection.GeneratedProtocolMessageType('FirmwareType', (_message.Message,), dict(
-  DESCRIPTOR = _FIRMWARETYPE,
-  __module__ = 'src.third_party.chromiumos_overlay.proto.firmware_config_pb2'
-  # @@protoc_insertion_point(class_scope:firmware.FirmwareType)
-  ))
-_sym_db.RegisterMessage(FirmwareType)
-
-Version = _reflection.GeneratedProtocolMessageType('Version', (_message.Message,), dict(
-  DESCRIPTOR = _VERSION,
-  __module__ = 'src.third_party.chromiumos_overlay.proto.firmware_config_pb2'
-  # @@protoc_insertion_point(class_scope:firmware.Version)
-  ))
-_sym_db.RegisterMessage(Version)
-
-FirmwarePayload = _reflection.GeneratedProtocolMessageType('FirmwarePayload', (_message.Message,), dict(
-  DESCRIPTOR = _FIRMWAREPAYLOAD,
-  __module__ = 'src.third_party.chromiumos_overlay.proto.firmware_config_pb2'
-  # @@protoc_insertion_point(class_scope:firmware.FirmwarePayload)
-  ))
-_sym_db.RegisterMessage(FirmwarePayload)
-
-FirmwareConfig = _reflection.GeneratedProtocolMessageType('FirmwareConfig', (_message.Message,), dict(
-  DESCRIPTOR = _FIRMWARECONFIG,
-  __module__ = 'src.third_party.chromiumos_overlay.proto.firmware_config_pb2'
-  # @@protoc_insertion_point(class_scope:firmware.FirmwareConfig)
-  ))
-_sym_db.RegisterMessage(FirmwareConfig)
-
-
-DESCRIPTOR._options = None
-# @@protoc_insertion_point(module_scope)
diff --git a/sci-electronics/litedram/Manifest b/sci-electronics/litedram/Manifest
new file mode 100644
index 0000000..e7a3bfc
--- /dev/null
+++ b/sci-electronics/litedram/Manifest
@@ -0,0 +1 @@
+DIST litedram-203cc73cebec56faa0ed5c8900e15ac2c1dfe32b.tar.gz 370612 BLAKE2B c9e3b07e7afb2d8d9fc3ca35a507d44cc41c7d15361ddbe391ada2a629d1053bbe0dc1944fb65916a6265b5b75134bed39cb4a81a603dbecdbbe3db78f697fac SHA512 74ed779aae01eb10715644e23b7aa5c40706f044b59a116bcb6e9c57c6471c183bb1b3cb52b3a2e2d22014bcb4ca33a9d8ef5c5a3b486caac5ceacfd6185b58d
diff --git a/sci-electronics/litedram/OWNERS b/sci-electronics/litedram/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/litedram/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/litedram/litedram-2021.04_p20210809.ebuild b/sci-electronics/litedram/litedram-2021.04_p20210809.ebuild
new file mode 100644
index 0000000..415a357
--- /dev/null
+++ b/sci-electronics/litedram/litedram-2021.04_p20210809.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+inherit distutils-r1
+
+DESCRIPTION="LiteDRAM provides a small footprint and configurable DRAM core."
+HOMEPAGE="https://github.com/enjoy-digital/litedram"
+
+GIT_REV="203cc73cebec56faa0ed5c8900e15ac2c1dfe32b"
+SRC_URI="https://github.com/enjoy-digital/${PN}/archive/${GIT_REV}.tar.gz -> ${PN}-${GIT_REV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	dev-python/pyyaml[${PYTHON_USEDEP}]
+	sci-electronics/litex[${PYTHON_USEDEP}]
+	sci-electronics/migen[${PYTHON_USEDEP}]
+	test? (
+		sci-electronics/pythondata-cpu-vexriscv[${PYTHON_USEDEP}]
+		|| (
+			cross-riscv64-cros-elf/gcc
+			cross-riscv32-cros-elf/gcc
+		)
+	)
+"
+
+S="${WORKDIR}/${PN}-${GIT_REV}"
+
+distutils_enable_tests unittest
+
+src_test() {
+	# All tests require 'litex_boards' module.
+	mv test/{,skipped-}test_init.py || die
+
+	# This particular test requires 'pythondata-cpu-serv' module.
+	sed -i -e 's#\([ ]\+\)def test_ulx3s#\1@unittest.skip("Serv CPU test")\n&#' \
+		test/test_examples.py || die
+
+	# Tests belonging to Verilator...Tests class require Verilator. There are
+	# other tests in 'test_lpddr4.py' though, so only the class is skipped.
+	if ! has_version sci-electronics/verilator; then
+		sed -i -e 's#class Verilator.*Tests#@unittest.skip("No Verilator")\n&#' \
+			test/test_lpddr4.py || die
+	fi
+
+	distutils-r1_src_test
+}
diff --git a/sci-electronics/liteeth/Manifest b/sci-electronics/liteeth/Manifest
new file mode 100644
index 0000000..40741d2
--- /dev/null
+++ b/sci-electronics/liteeth/Manifest
@@ -0,0 +1 @@
+DIST liteeth-c6c8be703bb5a2351df222a758f9dce0edd5517c.tar.gz 237517 BLAKE2B cb873d05e8b3b5a97d24bc2cd6c50ec62eee036512f3cf23e78159acd6d96851262740df458db5999f6fd826a10b8773cf4829ab1579dd7222b796bc401f59e5 SHA512 deaea9f8d157c53234a8b3d3c22b0aa0596a99a53cc451bcd45ce2307acb6505de8e2f9da1b213915106fcdb1fede35e91e163b5ab5f1a37d925173829622510
diff --git a/sci-electronics/liteeth/OWNERS b/sci-electronics/liteeth/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/liteeth/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/liteeth/liteeth-2021.04_p20210811.ebuild b/sci-electronics/liteeth/liteeth-2021.04_p20210811.ebuild
new file mode 100644
index 0000000..358b9da
--- /dev/null
+++ b/sci-electronics/liteeth/liteeth-2021.04_p20210811.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+inherit distutils-r1
+
+DESCRIPTION="LiteEth provides a small footprint and configurable Ethernet core."
+HOMEPAGE="https://github.com/enjoy-digital/liteeth"
+
+GIT_REV="c6c8be703bb5a2351df222a758f9dce0edd5517c"
+SRC_URI="https://github.com/enjoy-digital/${PN}/archive/${GIT_REV}.tar.gz -> ${PN}-${GIT_REV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	sci-electronics/liteiclink[${PYTHON_USEDEP}]
+	sci-electronics/litex[${PYTHON_USEDEP}]
+	sci-electronics/migen[${PYTHON_USEDEP}]
+"
+
+S="${WORKDIR}/${PN}-${GIT_REV}"
+
+distutils_enable_tests unittest
diff --git a/sci-electronics/liteiclink/Manifest b/sci-electronics/liteiclink/Manifest
new file mode 100644
index 0000000..da9ae09
--- /dev/null
+++ b/sci-electronics/liteiclink/Manifest
@@ -0,0 +1 @@
+DIST liteiclink-3d8ecdbcf9f0260292221ff63b0ad3f5e409a955.tar.gz 78817 BLAKE2B dfc88747823dfcdff2fcee5bb312e8b1f75f84705413095cb7d61b08b590ea8f9f5ce1844f2c7d57fc669b745672bd428a8073624fa26d602406e13be8f6f0f0 SHA512 3b804fe18353774eb0e3f0c3483f5bdb2b76780ac3ef757b539c97c3be42c51c9e4995b201dfd4b91ae60c13ca367bfc74803fe37ab4bab2f79b67feab66797c
diff --git a/sci-electronics/liteiclink/OWNERS b/sci-electronics/liteiclink/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/liteiclink/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/liteiclink/liteiclink-2021.08.ebuild b/sci-electronics/liteiclink/liteiclink-2021.08.ebuild
new file mode 100644
index 0000000..e894192
--- /dev/null
+++ b/sci-electronics/liteiclink/liteiclink-2021.08.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+inherit distutils-r1
+
+DESCRIPTION="LiteICLink provides small footprint and configurable Inter-Chip
+communication cores."
+HOMEPAGE="https://github.com/enjoy-digital/liteiclink"
+
+GIT_REV="3d8ecdbcf9f0260292221ff63b0ad3f5e409a955"
+SRC_URI="https://github.com/enjoy-digital/${PN}/archive/${GIT_REV}.tar.gz -> ${PN}-${GIT_REV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	sci-electronics/litex[${PYTHON_USEDEP}]
+	sci-electronics/migen[${PYTHON_USEDEP}]
+"
+
+S="${WORKDIR}/${PN}-${GIT_REV}"
+
+distutils_enable_tests unittest
diff --git a/sci-electronics/litescope/Manifest b/sci-electronics/litescope/Manifest
new file mode 100644
index 0000000..bc65e75
--- /dev/null
+++ b/sci-electronics/litescope/Manifest
@@ -0,0 +1 @@
+DIST litescope-1243ab3c81fc33ddacb3c15d18b6c63a45e6989e.tar.gz 172289 BLAKE2B edae130ddfd16a8f3fec9d3a4d070e7e1d90cbb1912c43096bdff92c68a9d193ea3280f4366d17e0f7a146686c94a423e175981ac97e73d156046c4d09418aa8 SHA512 4e57ce0c3bec567b0512fbcc4dbd598e810ecc1b5c45db089b0bece8715c8293d36efbcf576a762d19e84b06f48c5087213a66030b40921b808c096b55a19fb1
diff --git a/sci-electronics/litescope/OWNERS b/sci-electronics/litescope/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/litescope/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/litescope/litescope-2021.04_p20210524.ebuild b/sci-electronics/litescope/litescope-2021.04_p20210524.ebuild
new file mode 100644
index 0000000..4af0848
--- /dev/null
+++ b/sci-electronics/litescope/litescope-2021.04_p20210524.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+inherit distutils-r1
+
+DESCRIPTION="LiteScope provides a small footprint and configurable Logic Analyzer core."
+HOMEPAGE="https://github.com/enjoy-digital/litescope"
+
+GIT_REV="1243ab3c81fc33ddacb3c15d18b6c63a45e6989e"
+SRC_URI="https://github.com/enjoy-digital/${PN}/archive/${GIT_REV}.tar.gz -> ${PN}-${GIT_REV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	sci-electronics/litex[${PYTHON_USEDEP}]
+	sci-electronics/migen[${PYTHON_USEDEP}]
+"
+
+S="${WORKDIR}/${PN}-${GIT_REV}"
+
+distutils_enable_tests unittest
+
+src_test() {
+	# Requires 'litex_boards' module.
+	mv test/{,skipped-}test_examples.py
+
+	distutils-r1_src_test
+}
diff --git a/sci-electronics/litespi/Manifest b/sci-electronics/litespi/Manifest
new file mode 100644
index 0000000..d0b6949
--- /dev/null
+++ b/sci-electronics/litespi/Manifest
@@ -0,0 +1 @@
+DIST litespi-4cb907881bb75999e4c6bb68e211dd5cfc301de9.tar.gz 55261 BLAKE2B 1f8b4481eff0ab05916bbe21aa811f1b91989e7df187eb145da5ede0e496b5f6d33b75a48ba526e1c2efa9b9e55fb9c7ac4d6bef56aee6865658cb572efd7930 SHA512 4eafd428feabd8439fa5d4ab2939249f85e9778904542c96d55b01ba551cb436f308be2641bb185a7c75422ac6b9ea8c5ed2146cbbb9e9e0d211704c85f28f6b
diff --git a/sci-electronics/litespi/OWNERS b/sci-electronics/litespi/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/litespi/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/litespi/litespi-2021.04_p20210921.ebuild b/sci-electronics/litespi/litespi-2021.04_p20210921.ebuild
new file mode 100644
index 0000000..90fd719
--- /dev/null
+++ b/sci-electronics/litespi/litespi-2021.04_p20210921.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+inherit distutils-r1
+
+DESCRIPTION="LiteSPI provides a small footprint and configurable SPI core."
+HOMEPAGE="https://github.com/litex-hub/litespi"
+
+GIT_REV="4cb907881bb75999e4c6bb68e211dd5cfc301de9"
+SRC_URI="https://github.com/litex-hub/${PN}/archive/${GIT_REV}.tar.gz -> ${PN}-${GIT_REV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	sci-electronics/litex[${PYTHON_USEDEP}]
+	sci-electronics/migen[${PYTHON_USEDEP}]
+"
+
+S="${WORKDIR}/${PN}-${GIT_REV}"
+
+distutils_enable_tests unittest
diff --git a/sci-electronics/litex/Manifest b/sci-electronics/litex/Manifest
new file mode 100644
index 0000000..244e4d7
--- /dev/null
+++ b/sci-electronics/litex/Manifest
@@ -0,0 +1 @@
+DIST litex-c43132f81f1113e83780571b10d004974fe361de.tar.gz 2518516 BLAKE2B cf201977aa593b0a7e58077e709bb49aac78e3c20bf39dcfcd7e78896f053260b250c06074ac1c93cf143072868526da6214aa1838fa37e5760a685dff641d3e SHA512 8349f1e157962b638f2fedde98500224211141d6860c776fd5d1909bd38a1a41e5234d4ea4a041c3df6be687a0cc5371293f83789e7122ba67a85e6eef1b756c
diff --git a/sci-electronics/litex/OWNERS b/sci-electronics/litex/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/litex/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/litex/files/litex-2021.04_p20210811-add-riscv-cros-elf-to-known-riscv-toolchains.patch b/sci-electronics/litex/files/litex-2021.04_p20210811-add-riscv-cros-elf-to-known-riscv-toolchains.patch
new file mode 100644
index 0000000..afcbc00
--- /dev/null
+++ b/sci-electronics/litex/files/litex-2021.04_p20210811-add-riscv-cros-elf-to-known-riscv-toolchains.patch
@@ -0,0 +1,22 @@
+# In Chromium OS the toolchain has `cros` as a vendor. Such toolchains aren't
+# used outside CrOS so LiteX doesn't know these can be used.
+
+--- a/litex/soc/cores/cpu/__init__.py
++++ b/litex/soc/cores/cpu/__init__.py
+@@ -49,6 +49,8 @@ CPU_GCC_TRIPLE_RISCV32 = (
+     "riscv64-linux-gnu",
+     "riscv-sifive-elf",
+     "riscv64-none-elf",
++    "riscv32-cros-elf",
++    "riscv64-cros-elf",
+ )
+ 
+ CPU_GCC_TRIPLE_RISCV64 = (
+@@ -59,6 +61,7 @@ CPU_GCC_TRIPLE_RISCV64 = (
+     "riscv64-linux-gnu",
+     "riscv-sifive-elf",
+     "riscv64-none-elf",
++    "riscv64-cros-elf",
+ )
+ 
+ # CPUS ---------------------------------------------------------------------------------------------
diff --git a/sci-electronics/litex/litex-2021.04_p20210923.ebuild b/sci-electronics/litex/litex-2021.04_p20210923.ebuild
new file mode 100644
index 0000000..2ef239a
--- /dev/null
+++ b/sci-electronics/litex/litex-2021.04_p20210923.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+inherit distutils-r1
+
+DESCRIPTION="The LiteX framework provides a convenient and efficient infrastructure to
+create FPGA Cores/SOCs, to create FPGA Cores/SoCs, to explore various digital design
+architectures and create full FPGA based systems."
+HOMEPAGE="https://github.com/enjoy-digital/litex"
+
+GIT_REV="c43132f81f1113e83780571b10d004974fe361de"
+SRC_URI="https://github.com/enjoy-digital/${PN}/archive/${GIT_REV}.tar.gz -> ${PN}-${GIT_REV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	sci-electronics/migen[${PYTHON_USEDEP}]
+	sci-electronics/pythondata-software-compiler_rt[${PYTHON_USEDEP}]
+	dev-python/pyserial[${PYTHON_USEDEP}]
+	dev-python/requests[${PYTHON_USEDEP}]
+"
+
+S="${WORKDIR}/${PN}-${GIT_REV}"
+
+PATCHES="
+	${FILESDIR}/litex-2021.04_p20210811-add-riscv-cros-elf-to-known-riscv-toolchains.patch
+"
+
+distutils_enable_tests unittest
+
+src_test() {
+	# ECC tests require 'litedram' which in turn requires 'litex' for testing.
+	# Let's just skip them.
+	mv test/{,skipped-}test_ecc.py || die
+
+	distutils-r1_src_test
+}
diff --git a/sci-electronics/migen/Manifest b/sci-electronics/migen/Manifest
new file mode 100644
index 0000000..6978d39
--- /dev/null
+++ b/sci-electronics/migen/Manifest
@@ -0,0 +1 @@
+DIST migen-7014bdccc11270764186e6a4441fb58238c612aa.tar.gz 269570 BLAKE2B bb3575b198282b72099034f266c5aef6334f1b076d6b868415fe31e7eb9d75164cca0cacbde5209898748cd86146c11df54e381972308dffc9bc3194fa73108c SHA512 e4fef487f59ce2eaaf8094dd76914a1a2ed6eaa56bb537f1fe535dd0bacc7ddb7b9e2788ee2f2fbbbbe67ce28aaa78f6c0f8867e1b4b8c64f6750111d853e87f
diff --git a/sci-electronics/migen/OWNERS b/sci-electronics/migen/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/migen/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/migen/migen-0.9.2_p20210209.ebuild b/sci-electronics/migen/migen-0.9.2_p20210209.ebuild
new file mode 100644
index 0000000..9ec65fa
--- /dev/null
+++ b/sci-electronics/migen/migen-0.9.2_p20210209.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# setup.py: "You need Python 3.3+"
+PYTHON_COMPAT=( python3_{3..9} )
+inherit distutils-r1
+
+DESCRIPTION="Python toolbox for building complex digital hardware."
+HOMEPAGE="https://github.com/m-labs/migen"
+
+GIT_REV="7014bdccc11270764186e6a4441fb58238c612aa"
+SRC_URI="https://github.com/m-labs/${PN}/archive/${GIT_REV}.tar.gz -> ${PN}-${GIT_REV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	dev-python/colorama
+"
+
+S="${WORKDIR}/${PN}-${GIT_REV}"
+
+distutils_enable_tests unittest
diff --git a/sci-electronics/nextpnr/Manifest b/sci-electronics/nextpnr/Manifest
new file mode 100644
index 0000000..b4f2caf
--- /dev/null
+++ b/sci-electronics/nextpnr/Manifest
@@ -0,0 +1,2 @@
+DIST nextpnr-9782a46a9b4edb24cc73ea65f1ad7697ed74ab41.tar.gz 4252932 BLAKE2B d661f2eee19d22ccbebc61ba841f32d7975432ccb7f714a8c79ee458e87e3992402cdc318ee2b4eb86c2910d71773e4e6ff5c8c331c5f6c46510101aa7b13b7b SHA512 47d0b889e68d4b3990f9b047f1c0050c7507dcab6b86b6d6096a4387a81c764d64736f0d5247d5896cf6694ceb5fc1cb1527a164fe2d701d5a68eae389cecfda
+DIST nextpnr-tests-ccc61e5ec7cc04410462ec3196ad467354787afb.tar.gz 1039113 BLAKE2B a65b92421375c91924b4413b09ea204dcae7d803f0b0a7e8fa340373ad3ddb67608ea7ec30bd0dbd3df8210e92c191a551a4bc6a7e81abe005d9cca7b2eaf2d7 SHA512 f92ac0bf379a8f948f089be8d1f4fec58891b9a926d562cb73233607d5414a6fc22d1a052291fa0cfa5af671643d9628ea188152a12bf5d0796a9b547959089c
diff --git a/sci-electronics/nextpnr/OWNERS b/sci-electronics/nextpnr/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/nextpnr/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/nextpnr/nextpnr-0.1_pre20210924.ebuild b/sci-electronics/nextpnr/nextpnr-0.1_pre20210924.ebuild
new file mode 100644
index 0000000..dcb2600
--- /dev/null
+++ b/sci-electronics/nextpnr/nextpnr-0.1_pre20210924.ebuild
@@ -0,0 +1,90 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake  # EAPI >=7
+
+DESCRIPTION="nextpnr -- a portable FPGA place and route tool."
+HOMEPAGE="https://github.com/YosysHQ/nextpnr"
+
+GIT_REV="9782a46a9b4edb24cc73ea65f1ad7697ed74ab41"
+
+# 'tests' submodule.
+TESTS_GIT_REV="ccc61e5ec7cc04410462ec3196ad467354787afb"
+
+# '3rdparty/fpga-interchange-schema' submodule.
+SCHEMA_GIT_REV="6b2973788692be86c4a8b2cff1353e603e5857a3"
+
+SRC_URI="
+	https://github.com/YosysHQ/nextpnr/archive/${GIT_REV}.tar.gz -> nextpnr-${GIT_REV}.tar.gz
+	https://github.com/YosysHQ/nextpnr-tests/archive/${TESTS_GIT_REV}.tar.gz -> nextpnr-tests-${TESTS_GIT_REV}.tar.gz
+"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="*"
+
+DEPEND="
+	dev-cpp/eigen:3
+	dev-libs/boost
+	nexus? ( sci-electronics/prjoxide )
+"
+RDEPEND="${DEPEND}
+	sci-electronics/yosys
+"
+
+IUSE="+nexus test"
+
+NEXTPNR_ROOT_DIR="${WORKDIR}/nextpnr-${GIT_REV}"
+S="${NEXTPNR_ROOT_DIR}"
+
+pkg_pretend() {
+	if ! use nexus; then
+		die '
+			At least one FPGA family have to be chosen for nextpnr to support.
+			Currently supported FPGA families are:
+			* Lattice Nexus (USE=nexus)
+		'
+	fi
+}
+
+src_unpack() {
+	default
+
+	cd "${NEXTPNR_ROOT_DIR}" || die
+	mv -T ../nextpnr-tests-* tests || die
+}
+
+src_configure() {
+	mycmakeargs=(
+		"-DARCH=nexus"
+		"-DOXIDE_INSTALL_PREFIX=/usr"
+		# Version is based on a repository's `git describe --tags --always`.
+		"-DCURRENT_GIT_VERSION=${GIT_REV:0:8}"
+		# Supported and tested optional arguments.
+		"-DBUILD_TESTS=$(usex test)"
+	)
+	cmake_src_configure
+}
+
+src_test() {
+	cmake_src_test
+
+	if use nexus; then
+		ebegin "Test creating prjoxide example bitstreams"
+		if ! "$BUILD_DIR/nextpnr-nexus" --version; then
+			die '`nextpnr-nexus` executable not found in `$BUILD_DIR`!'
+		fi
+		export PATH="$BUILD_DIR:$PATH"
+
+		cd "$T" || die
+		cp -r /usr/share/prjoxide/examples prjoxide-examples || die
+		for example in blinky_evn blinky_vip; do
+			pushd prjoxide-examples/$example
+			emake blinky.bit
+			popd
+		done
+		eend
+	fi
+}
diff --git a/sci-electronics/nmigen/Manifest b/sci-electronics/nmigen/Manifest
new file mode 100644
index 0000000..c96ac71
--- /dev/null
+++ b/sci-electronics/nmigen/Manifest
@@ -0,0 +1 @@
+DIST nmigen-f7c2b9419f9de450be76a0e9cf681931295df65f.tar.gz 220534 BLAKE2B 63bc74a105f828ffc59601ab8a6277e2402d2c685be8977c8d7a75a1e3bb59c49d015af018444c27ddef573b84c9638e9b5f583d70c9691f918c8fe9676c25e2 SHA512 d34afe2bc4412289e24cd468ae093c28277d8aceb466553f53f04b95e2dc914ef69aad4d700037869c4475d26f60ebe39d6785267e84b65ef7f6e36b75622623
diff --git a/sci-electronics/nmigen/OWNERS b/sci-electronics/nmigen/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/nmigen/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/nmigen/files/nmigen-0.2_p20210204-fix-cxx-executable.patch b/sci-electronics/nmigen/files/nmigen-0.2_p20210204-fix-cxx-executable.patch
new file mode 100644
index 0000000..57b33158
--- /dev/null
+++ b/sci-electronics/nmigen/files/nmigen-0.2_p20210204-fix-cxx-executable.patch
@@ -0,0 +1,15 @@
+# Prefixed toolchain isn't properly used otherwise (`cxx` executable is called
+# instead) and `tests/test_toolchain_cxx.py` obstructs the test phase.
+
+--- a/nmigen/_toolchain/cxx.py
++++ b/nmigen/_toolchain/cxx.py
+@@ -33,7 +33,9 @@ def build_cxx(*, cxx_sources, output_name, include_dirs, macros):
+             compiler=f"{cc} {cflags}",
+             compiler_so=f"{cc} {cflags}",
+             compiler_cxx=f"{cxx} {cflags}",
++            compiler_so_cxx=f"{cxx} {cflags}",
+             linker_so=ld_cxxflags,
++            linker_so_cxx=ld_cxxflags,
+         )
+ 
+         for include_dir in include_dirs:
diff --git a/sci-electronics/nmigen/files/nmigen-0.2_p20210204-fix-setup.patch b/sci-electronics/nmigen/files/nmigen-0.2_p20210204-fix-setup.patch
new file mode 100644
index 0000000..d5296fd
--- /dev/null
+++ b/sci-electronics/nmigen/files/nmigen-0.2_p20210204-fix-setup.patch
@@ -0,0 +1,19 @@
+# `wheel` package isn't available in ChromiumOS and it's not really required.
+#
+# `importlib_resources` isn't available in ChromiumOS but it's only required to
+# use nMigen Yosys which, having the "original" Yosys installed, isn't needed.
+
+--- a/setup.py
++++ b/setup.py
+@@ -38,10 +38,9 @@ def doc_version():
+     #long_description="""TODO""",
+     license="BSD",
+     python_requires="~=3.6",
+-    setup_requires=["wheel", "setuptools", "setuptools_scm"],
++    setup_requires=["setuptools", "setuptools_scm"],
+     install_requires=[
+         "importlib_metadata; python_version<'3.8'",  # for __version__ and nmigen._yosys
+-        "importlib_resources; python_version<'3.9'", # for nmigen._yosys
+         "pyvcd~=0.2.2", # for nmigen.pysim
+         "Jinja2~=2.11", # for nmigen.build
+     ],
diff --git a/sci-electronics/nmigen/files/nmigen-0.2_p20210204-skip-tests-using-symbiyosys.patch b/sci-electronics/nmigen/files/nmigen-0.2_p20210204-skip-tests-using-symbiyosys.patch
new file mode 100644
index 0000000..963778d
--- /dev/null
+++ b/sci-electronics/nmigen/files/nmigen-0.2_p20210204-skip-tests-using-symbiyosys.patch
@@ -0,0 +1,39 @@
+# This patch is only applied if SymbiYosys isn't installed. Not sure if all
+# `GrayCoderTestCase` will require it but it is probable all `FIFOFormalCase`
+# will as SymbiYosys allows formal hardware verification.
+#
+# It isn't currently available in ChromiumOS and only 11 out of 605 tests are
+# skipped so let's not depend on SymbiYosys for testing.
+
+--- a/tests/test_lib_coding.py
++++ b/tests/test_lib_coding.py
+@@ -116,12 +116,14 @@ class HammingDistanceSpec(Elaboratable):
+         ]
+         return m
+ 
+-
++import unittest
+ class GrayCoderTestCase(FHDLTestCase):
++    @unittest.skip("No SymbiYosys")
+     def test_reversible(self):
+         spec = ReversibleSpec(encoder_cls=GrayEncoder, decoder_cls=GrayDecoder, args=(16,))
+         self.assertFormal(spec, mode="prove")
+ 
++    @unittest.skip("No SymbiYosys")
+     def test_distance(self):
+         spec = HammingDistanceSpec(distance=1, encoder_cls=GrayEncoder, args=(16,))
+         self.assertFormal(spec, mode="prove")
+diff --git a/tests/test_lib_fifo.py b/tests/test_lib_fifo.py
+index 0e322c1..6d00922 100644
+--- a/tests/test_lib_fifo.py
++++ b/tests/test_lib_fifo.py
+@@ -236,7 +236,8 @@ class FIFOContractSpec(Elaboratable):
+ 
+         return m
+ 
+-
++import unittest
++@unittest.skip("No SymbiYosys")
+ class FIFOFormalCase(FHDLTestCase):
+     def check_sync_fifo(self, fifo):
+         self.assertFormal(FIFOModelEquivalenceSpec(fifo, r_domain="sync", w_domain="sync"),
diff --git a/sci-electronics/nmigen/nmigen-0.2_p20210204.ebuild b/sci-electronics/nmigen/nmigen-0.2_p20210204.ebuild
new file mode 100644
index 0000000..ddcd009
--- /dev/null
+++ b/sci-electronics/nmigen/nmigen-0.2_p20210204.ebuild
@@ -0,0 +1,61 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+inherit distutils-r1
+
+DESCRIPTION="A refreshed Python toolbox for building complex digital hardware."
+HOMEPAGE="https://github.com/nmigen/nmigen"
+
+GIT_REV="f7c2b9419f9de450be76a0e9cf681931295df65f"
+SRC_URI="https://github.com/nmigen/${PN}/archive/${GIT_REV}.tar.gz -> ${PN}-${GIT_REV}.tar.gz"
+
+# Provide the version since `setuptools_scm` breaks emerging snapshot ebuilds.
+# `python3 -m setuptools_scm` can be used inside a repository to print version
+# corresponding to the checked-out commit.
+export SETUPTOOLS_SCM_PRETEND_VERSION="0.3.dev243+gf7c2b94"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="*"
+
+# Versioned setup.py deps: "pyvcd~=0.2.2", "Jinja2~=2.11".
+RDEPEND="
+	$(python_gen_cond_dep '
+		dev-python/importlib_metadata[${PYTHON_USEDEP}]
+	' python3_{6..7})
+	>=dev-python/jinja-2.11[${PYTHON_USEDEP}] =dev-python/jinja-2*
+	>=dev-python/pyvcd-0.2.2[${PYTHON_USEDEP}] =dev-python/pyvcd-0.2*
+	>=sci-electronics/yosys-0.9
+"
+BDEPEND="
+	dev-python/setuptools_scm[${PYTHON_USEDEP}]
+"
+
+S="${WORKDIR}/${PN}-${GIT_REV}"
+
+PATCHES="
+	${FILESDIR}/nmigen-0.2_p20210204-fix-cxx-executable.patch
+	${FILESDIR}/nmigen-0.2_p20210204-fix-setup.patch
+"
+
+src_test() {
+	if ! has_version sci-electronics/symbiyosys; then
+		ewarn "SymbiYosys not found; skipping tests that require it."
+		eapply "${FILESDIR}/nmigen-0.2_p20210204-skip-tests-using-symbiyosys.patch"
+	fi
+
+	distutils-r1_src_test
+}
+
+# Apart from declaring `python_test`, `distutils_enable_tests` also manages test
+# dependencies and flags. Let's keep it even though the function is overridden.
+distutils_enable_tests unittest
+python_test() {
+	distutils_install_for_testing
+
+	"${EPYTHON}" -m unittest discover -v || die "Tests fail with ${EPYTHON}"
+}
diff --git a/sci-electronics/prjoxide/Manifest b/sci-electronics/prjoxide/Manifest
new file mode 100644
index 0000000..a1e4275
--- /dev/null
+++ b/sci-electronics/prjoxide/Manifest
@@ -0,0 +1,3 @@
+DIST fpga-interchange-schema-78abf3f30770ccc6d0e1f5dbfeaef2666f55acf6.tar.gz 1329813 BLAKE2B 10040ad877c8efd6446585522b85c86585f012d4104d3780465285cf7045e732dfa9a889ca969beea97def827fafe7e505c20b9d006082baf5a758476f6a9920 SHA512 9f08e1a351a885544360f8121ed56ac0e2d179048ac61e16f727986d394653e086c0233a57f4869f41f82e4e620d1a029c32ce6e36eb97333d026ba53365cd83
+DIST prjoxide-318331f8b30c2e2a31cc41d51f104b671e180a8a.tar.gz 163236 BLAKE2B 28af83f8a16ad888de42e1f4525b7d97ee95beaa338b4943e3e86a12a2774ee2a3584c2457a286048dfe75894c60a5cfda8188f4b6a9fdff51b14bb01616bf1d SHA512 4c4112b5e2b095f3540065742c6dea83c3b2083e7d2463b40642ac5b7e5af0f5498bdce723f1ab0f3659e7cf16c2b4b186f3bfd0146abf8568e0bb09b5b83c9e
+DIST prjoxide-db-48cb5537977c41d38c40ddff45ba1bbcec384ba8.tar.gz 939770 BLAKE2B 4a664e6597754e96097a04443e36a13f4990ad5e6d9048ed7c107b902de381494cde6c8d3093e3be3b1f3d39c11444a190ba9e8a4a766f48195d0bbb90da6e5f SHA512 5836907cabf8929691f04826e96343aaa6de1c349ce632527eb8d777cbcc6773faf00b58176f12339a5fb397d7a4c1d98d595c0decaf6d0548749cfce82211c8
diff --git a/sci-electronics/prjoxide/OWNERS b/sci-electronics/prjoxide/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/prjoxide/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/prjoxide/prjoxide-0.1.0_p20210924.ebuild b/sci-electronics/prjoxide/prjoxide-0.1.0_p20210924.ebuild
new file mode 100644
index 0000000..63ccb6c
--- /dev/null
+++ b/sci-electronics/prjoxide/prjoxide-0.1.0_p20210924.ebuild
@@ -0,0 +1,80 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit cros-rust
+
+DESCRIPTION="Project Oxide - documenting Lattice's 28nm \"Nexus\" FPGA parts"
+HOMEPAGE="https://github.com/gatecat/prjoxide"
+
+GIT_REV="318331f8b30c2e2a31cc41d51f104b671e180a8a"
+
+# 'database' submodule.
+DB_GIT_REV="48cb5537977c41d38c40ddff45ba1bbcec384ba8"
+
+# '3rdparty/fpga-interchange-schema' submodule.
+SCHEMA_GIT_REV="78abf3f30770ccc6d0e1f5dbfeaef2666f55acf6"
+
+SRC_URI="
+	https://github.com/gatecat/prjoxide/archive/${GIT_REV}.tar.gz -> prjoxide-${GIT_REV}.tar.gz
+	https://github.com/gatecat/prjoxide-db/archive/${DB_GIT_REV}.tar.gz -> prjoxide-db-${DB_GIT_REV}.tar.gz
+	https://github.com/SymbiFlow/fpga-interchange-schema/archive/${SCHEMA_GIT_REV}.tar.gz -> fpga-interchange-schema-${SCHEMA_GIT_REV}.tar.gz
+"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="*"
+
+DEPEND="
+	=dev-rust/capnp-0.14*:=
+	=dev-rust/clap-3*:=
+	=dev-rust/flate2-1*:=
+	=dev-rust/include_dir-0.6*:=
+	>=dev-rust/itertools-0.8.2:= <dev-rust/itertools-0.9.0
+	>=dev-rust/lazy_static-1.4.0:= <dev-rust/lazy_static-2.0.0
+	>=dev-rust/log-0.4.11:= <dev-rust/log-0.5.0
+	=dev-rust/multimap-0.8*:=
+	=dev-rust/num-bigint-0.4*:=
+	>=dev-rust/pulldown-cmark-0.6.1:= <dev-rust/pulldown-cmark-0.7.0
+	=dev-rust/regex-1*:=
+	>=dev-rust/ron-0.5.1:= <dev-rust/ron-0.6.0
+	=dev-rust/serde-1*:=
+	=dev-rust/serde_json-1*:=
+	=dev-rust/capnpc-0.14*:=
+"
+RDEPEND="${DEPEND} sci-electronics/yosys"
+
+PRJOXIDE_ROOT_DIR="${WORKDIR}/${PN}-${GIT_REV}"
+S="${PRJOXIDE_ROOT_DIR}/libprjoxide/prjoxide"
+
+src_unpack() {
+	cros-rust_src_unpack
+
+	cd "${PRJOXIDE_ROOT_DIR}" || die
+	mv -T ../prjoxide-db-* database || die
+	mv -T ../fpga-interchange-schema-* 3rdparty/fpga-interchange-schema || die
+
+	# Remove to build only the prjoxide binary (with prjoxide/Cargo.toml).
+	rm libprjoxide/Cargo.toml || die
+}
+
+src_compile() {
+	ecargo_build
+}
+
+src_test() {
+	ebegin "Testing 'prjoxide --help'"
+	"$(cros-rust_get_build_dir)/prjoxide" --help &>/dev/null \
+		|| die "The binary hasn't been correctly built!"
+	eend
+}
+
+src_install() {
+	dobin "$(cros-rust_get_build_dir)/prjoxide"
+
+	dodoc "${PRJOXIDE_ROOT_DIR}/README.md"
+
+	insinto /usr/share/${PN}
+	doins -r "${PRJOXIDE_ROOT_DIR}/examples"
+}
diff --git a/sci-electronics/pythondata-cpu-vexriscv/Manifest b/sci-electronics/pythondata-cpu-vexriscv/Manifest
new file mode 100644
index 0000000..5f4a776
--- /dev/null
+++ b/sci-electronics/pythondata-cpu-vexriscv/Manifest
@@ -0,0 +1 @@
+DIST pythondata-cpu-vexriscv-2b6855412cdbde5e31bde13283e49976247ba90b.tar.gz 720024 BLAKE2B e8c002220ab4d5b8c9acb4d05542ddc7cc70eb4f24532296ccdfa5fa3a48f975c2f4371c2a5c686a03844f6efd9bbc105345aec2b2d676343df210e122d190d3 SHA512 28875195e71d1056a38e02b257e3ccf29ebbbe2b0784c9b16bd07e7ee6f1406b7cb48b6704702d8fee0cf2789b998d05f054b02fec7d33ca61db3fd91ebcfc19
diff --git a/sci-electronics/pythondata-cpu-vexriscv/OWNERS b/sci-electronics/pythondata-cpu-vexriscv/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/pythondata-cpu-vexriscv/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/pythondata-cpu-vexriscv/pythondata-cpu-vexriscv-2020.08_p20210515.ebuild b/sci-electronics/pythondata-cpu-vexriscv/pythondata-cpu-vexriscv-2020.08_p20210515.ebuild
new file mode 100644
index 0000000..57f51ab
--- /dev/null
+++ b/sci-electronics/pythondata-cpu-vexriscv/pythondata-cpu-vexriscv-2020.08_p20210515.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# python_requires='>=3.5'
+PYTHON_COMPAT=( python3_{5..9} )
+inherit distutils-r1
+
+DESCRIPTION="Python module containing verilog files for VexRISCV cpu."
+HOMEPAGE="https://github.com/litex-hub/pythondata-cpu-vexriscv"
+
+# Not on a master branch.
+GIT_REV="2b6855412cdbde5e31bde13283e49976247ba90b"
+SRC_URI="https://github.com/litex-hub/${PN}/archive/${GIT_REV}.tar.gz -> ${PN}-${GIT_REV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="*"
+
+S="${WORKDIR}/${PN}-${GIT_REV}"
+
+python_test() {
+	"${EPYTHON}" test.py || die "Tests fail with ${EPYTHON}"
+}
diff --git a/sci-electronics/pythondata-misc-tapcfg/Manifest b/sci-electronics/pythondata-misc-tapcfg/Manifest
new file mode 100644
index 0000000..14340f3
--- /dev/null
+++ b/sci-electronics/pythondata-misc-tapcfg/Manifest
@@ -0,0 +1 @@
+DIST pythondata-misc-tapcfg-0e6809132b7a42d26fc148b2b5e54ede8d6021ab.tar.gz 191741 BLAKE2B 24c2eecd098290606a1efd281630d7c01ca8c5575fd2414736c7407a759dcf69a2d4bab3bb7cd08e1d34ab23dd606a79c668e655e6e8d8e3a113d0c7b67f1509 SHA512 7630d26de0e018f5e02a00afbae7d88ee842e723d0b03dbd5e412146939e12a74bb5ca1a8d92bcf3da84a430cb376ff76298652d62e288412535efbfbd33b09c
diff --git a/sci-electronics/pythondata-misc-tapcfg/OWNERS b/sci-electronics/pythondata-misc-tapcfg/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/pythondata-misc-tapcfg/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/pythondata-misc-tapcfg/pythondata-misc-tapcfg-2020.08_p20210305.ebuild b/sci-electronics/pythondata-misc-tapcfg/pythondata-misc-tapcfg-2020.08_p20210305.ebuild
new file mode 100644
index 0000000..b804e30
--- /dev/null
+++ b/sci-electronics/pythondata-misc-tapcfg/pythondata-misc-tapcfg-2020.08_p20210305.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# python_requires='>=3.5'
+PYTHON_COMPAT=( python3_{5..9} )
+inherit distutils-r1
+
+DESCRIPTION="Python module containing data files for Ethernet TAP Config misc."
+HOMEPAGE="https://github.com/litex-hub/pythondata-misc-tapcfg"
+
+GIT_REV="0e6809132b7a42d26fc148b2b5e54ede8d6021ab"
+SRC_URI="https://github.com/litex-hub/${PN}/archive/${GIT_REV}.tar.gz -> ${PN}-${GIT_REV}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="*"
+
+S="${WORKDIR}/${PN}-${GIT_REV}"
+
+python_test() {
+	"${EPYTHON}" test.py || die "Tests fail with ${EPYTHON}"
+}
diff --git a/sci-electronics/pythondata-software-compiler_rt/Manifest b/sci-electronics/pythondata-software-compiler_rt/Manifest
new file mode 100644
index 0000000..ba74cec
--- /dev/null
+++ b/sci-electronics/pythondata-software-compiler_rt/Manifest
@@ -0,0 +1 @@
+DIST pythondata-software-compiler_rt-fcb03245613ccf3079cc833a701f13d0beaae09d.tar.gz 2176573 BLAKE2B 26bc3406ee69c3e258639facd52cbc6a21c22d4cf29207eabaaae84991543749bccbb086434e446ace74693d89a735d6193917edc837f065be1e7e6af18b83bc SHA512 b7df3ada94532778a82522050b360657275958d2b0881a6f6482718780bf56f8947562373f46d6f241902661f4370ba23085a9a2cfbd25759524b975b57435da
diff --git a/sci-electronics/pythondata-software-compiler_rt/OWNERS b/sci-electronics/pythondata-software-compiler_rt/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/pythondata-software-compiler_rt/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/pythondata-software-compiler_rt/pythondata-software-compiler_rt-2020.08_p20201104.ebuild b/sci-electronics/pythondata-software-compiler_rt/pythondata-software-compiler_rt-2020.08_p20201104.ebuild
new file mode 100644
index 0000000..866644d
--- /dev/null
+++ b/sci-electronics/pythondata-software-compiler_rt/pythondata-software-compiler_rt-2020.08_p20201104.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# python_requires='>=3.5'
+PYTHON_COMPAT=( python3_{5..9} )
+inherit distutils-r1
+
+DESCRIPTION="Python module containing data files for LLVM Compiler RT Module software."
+HOMEPAGE="https://github.com/litex-hub/pythondata-software-compiler_rt"
+
+GIT_REV="fcb03245613ccf3079cc833a701f13d0beaae09d"
+SRC_URI="https://github.com/litex-hub/${PN}/archive/${GIT_REV}.tar.gz -> ${PN}-${GIT_REV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="*"
+
+S="${WORKDIR}/${PN}-${GIT_REV}"
+
+python_test() {
+	"${EPYTHON}" test.py || die "Tests fail with ${EPYTHON}"
+}
diff --git a/sci-electronics/verilator/Manifest b/sci-electronics/verilator/Manifest
new file mode 100644
index 0000000..39749e3
--- /dev/null
+++ b/sci-electronics/verilator/Manifest
@@ -0,0 +1 @@
+DIST verilator-4.212_p20210928.tar.gz 2438699 BLAKE2B 7d1bddc88bd4905b268f56975a52c80b825b40570cb4c8c3a392c19d0e5ddafda89b875d600cdd6f53da1b9ce24f976001e492166a74af9a6ab40995873312e2 SHA512 eabf40f65c28e763193158ef8b357c804f085b72eddc29663be441d7c69a1bdfba86b26a129f936e8d836b472784919ad2a1977d50e82aee90f4fff36283dace
diff --git a/sci-electronics/verilator/OWNERS b/sci-electronics/verilator/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/verilator/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/verilator/verilator-4.212_p20210928.ebuild b/sci-electronics/verilator/verilator-4.212_p20210928.ebuild
new file mode 100644
index 0000000..0f8358bd
--- /dev/null
+++ b/sci-electronics/verilator/verilator-4.212_p20210928.ebuild
@@ -0,0 +1,66 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools
+
+DESCRIPTION="The fastest Verilog/SystemVerilog simulator"
+HOMEPAGE="https://www.veripool.org/verilator/"
+
+GIT_REV="20af8a36a77d2b11b0522b214ba95047c16c887b"
+SRC_URI="https://github.com/verilator/verilator/archive/${GIT_REV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="*"
+
+IUSE="+systemc test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+	systemc? ( sci-electronics/systemc )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+	test? ( sys-apps/grep[pcre] )
+"
+
+S="${WORKDIR}/verilator-${GIT_REV}"
+
+src_prepare() {
+	eautoconf
+	default
+}
+
+src_compile() {
+	local emake_args=()
+	if use systemc; then
+		get_systemc_variable() {
+			local pkg_config="$(tc-getPKG_CONFIG)"
+			local result="$(${pkg_config} systemc --variable=${1})"
+			if [[ -z "${result}" ]]; then
+				die "'${1}' variable not found in SystemC package with ${pkg_config}"
+			fi
+			echo "${result}"
+		}
+		# These variables simplify using Verilator with SystemC. They are built-in only
+		# if set during compilation -- neither autoconf nor configure set them properly.
+		emake_args+=(
+			"SYSTEMC_INCLUDE=$(get_systemc_variable includedir)"
+			"SYSTEMC_LIBDIR=$(get_systemc_variable libarchdir)"
+		)
+	fi
+	emake ${emake_args[@]}
+}
+
+# The `default_src_test` doesn't work because `make test -n` fails.
+src_test() {
+	if use systemc; then
+		# Check if SYSTEMC variables are set. Setting these is error-prone.
+		[[ -n "$(./bin/verilator --getenv SYSTEMC_INCLUDE)" ]] || die
+		[[ -n "$(./bin/verilator --getenv SYSTEMC_LIBDIR)" ]] || die
+	fi
+
+	emake test
+}
diff --git a/sci-electronics/yosys/Manifest b/sci-electronics/yosys/Manifest
new file mode 100644
index 0000000..c0b539e
--- /dev/null
+++ b/sci-electronics/yosys/Manifest
@@ -0,0 +1,2 @@
+DIST yosys-1cac671c70bc3da9808ceb3add15686da4a5d82e.tar.gz 2023520 BLAKE2B dddbf10f10f43754a0f366abc4ecc769f065d0a27557550968ee5020f67ea0a0f8ee6ea61009251c980fd418a5ceb8beb7aa9b32859158caa01729fff2c56c75 SHA512 e98f4391b79862cfcc29f8b188432b3afc5ee624087b7f7407d1e354829af4dfbc39ffdbcccc7af2528636b1a9029cb097a390bac64109c6af66f22b473c7e33
+DIST yosys-abc-4f5f73d.tar.gz 5773018 BLAKE2B 7b8c34aaa8803d7340e1accc8b3ccf600013fb135a4cce8e851051458bc6fe5621c493e1607e951321878ffaafc7a71c8d9cd7cf07ff493ce78c30dbdd7f96aa SHA512 e65a55fdcfbe4e12acdd700196a5ae66a29142bde81cff9eed466b9305fe00ba5c449686ecae2546d38470173d1d9e52385507268cd4d733e6b24bba922dc458
diff --git a/sci-electronics/yosys/OWNERS b/sci-electronics/yosys/OWNERS
new file mode 100644
index 0000000..f855b6f
--- /dev/null
+++ b/sci-electronics/yosys/OWNERS
@@ -0,0 +1 @@
+include chromiumos/platform2:/hps/OWNERS
diff --git a/sci-electronics/yosys/files/yosys-fix-Makefile-tools.patch b/sci-electronics/yosys/files/yosys-fix-Makefile-tools.patch
new file mode 100644
index 0000000..065a7e6
--- /dev/null
+++ b/sci-electronics/yosys/files/yosys-fix-Makefile-tools.patch
@@ -0,0 +1,26 @@
+# These two changes are (respectively):
+# * pass CC to ABC since clang is expected instead of clang++,
+# * remove hardcoded CXX and LD to use environment-based tools instead.
+#
+# Both of these changes are required to build Yosys.
+
+--- a/Makefile
++++ b/Makefile
+@@ -143,7 +143,7 @@ bumpversion:
+ ABCREV = 4f5f73d
+ ABCPULL = 1
+ ABCURL ?= https://github.com/YosysHQ/abc
+-ABCMKARGS = CC="$(CXX)" CXX="$(CXX)" ABC_USE_LIBSTDCXX=1 VERBOSE=$(Q)
++ABCMKARGS = CC="$(CC)" CXX="$(CXX)" ABC_USE_LIBSTDCXX=1 VERBOSE=$(Q)
+ 
+ # set ABCEXTERNAL = <abc-command> to use an external ABC instance
+ # Note: The in-tree ABC (yosys-abc) will not be installed when ABCEXTERNAL is set.
+@@ -185,8 +185,6 @@ endif
+ endif
+ 
+ ifeq ($(CONFIG),clang)
+-CXX = clang
+-LD = clang++
+ CXXFLAGS += -std=c++11 -Os
+ ABCMKARGS += ARCHFLAGS="-DABC_USE_STDINT_H"
+ 
diff --git a/sci-electronics/yosys/yosys-0.9_p20210925.ebuild b/sci-electronics/yosys/yosys-0.9_p20210925.ebuild
new file mode 100644
index 0000000..48e2f53
--- /dev/null
+++ b/sci-electronics/yosys/yosys-0.9_p20210925.ebuild
@@ -0,0 +1,67 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="A framework for Verilog RTL synthesis."
+HOMEPAGE="http://www.clifford.at/yosys/"
+
+GIT_REV="1cac671c70bc3da9808ceb3add15686da4a5d82e"
+
+# These have to match Yosys Makefile's ABCREV and ABCURL variables.
+ABC_GIT_REV="4f5f73d"
+ABC_GIT_URL="https://github.com/YosysHQ/abc"
+
+SRC_URI="
+	https://github.com/YosysHQ/yosys/archive/${GIT_REV}.tar.gz -> yosys-${GIT_REV}.tar.gz
+	${ABC_GIT_URL}/archive/${ABC_GIT_REV}.tar.gz -> yosys-abc-${ABC_GIT_REV}.tar.gz
+"
+
+S="${WORKDIR}/${PN}-${GIT_REV}"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="*"
+
+DEPEND=""
+RDEPEND="${DEPEND} sci-electronics/iverilog"
+
+PATCHES=(
+	"${FILESDIR}/yosys-fix-Makefile-tools.patch"
+)
+
+src_unpack() {
+	default
+
+	# Yosys' Makefile expects ABC in the 'abc' directory.
+	cd "${S}"
+	mv ../abc-* abc || die
+
+	# Make sure Makefile's ABCURL and ABCREV match ebuild ones.
+	if ! grep -q "^ABCURL.*= ${ABC_GIT_URL}" Makefile; then
+		die "ABC git URL mismatch between ebuild and Yosys' Makefile!"
+	fi
+
+	if ! grep -q "^ABCREV.*= ${ABC_GIT_REV}" Makefile; then
+		die "ABC git revision mismatch between ebuild and Yosys' Makefile!"
+	fi
+}
+
+src_configure() {
+	cat >> Makefile.conf <<-EOF
+		# ABC from 'abc' dir will be used
+		ABCREV := default
+		LD := $(tc-getCXX)
+		PKG_CONFIG := $(tc-getPKG_CONFIG)
+		PREFIX := /usr
+		# Prevent stripping
+		STRIP := :
+	EOF
+}
+
+# The default function doesn't call it because 'emake test -n' fails.
+src_test() {
+	emake test
+}
diff --git a/sci-libs/tensorflow/Manifest b/sci-libs/tensorflow/Manifest
index 9bdb7b0..b565fc2 100644
--- a/sci-libs/tensorflow/Manifest
+++ b/sci-libs/tensorflow/Manifest
@@ -3,6 +3,8 @@
 DIST FXdiv-63058eff77e11aa15bf531df5dd34395ec3017c8.zip 16646 BLAKE2B 8f6ca6feee16cb57d9b4504e7615703c2c7ea86fa8ea3f814668478cc13b8cb3cb1429200359be5521ca11f77e1c3d575b2222d123d3ac03586faab88a131ac2 SHA512 6b4830a56137e226d51ba8166fe1a31c51256f1666cc0a683abfb154fbe313d415ce15e362756865a1dd91510cf581c619604b29e8a5288c328c85da57d53308
 DIST OouraFFT-v1.0.tar.gz 110531 BLAKE2B de0e280407e21118e2bc6ca93a7caf3c4a49d0a13eda018b1497f98851af73dda4cef56460dba310336c7ed958e34feef4784ca2575a13287dec2c1ac9a5af6d SHA512 89c6e8fd57abf26351b3efb792008a1bbe62d404a4225dcae8aa666b3782a421be071bdc9760ebb0c95b5336ee5ea517d2fa43ab915045f7cf6fd76e73578079
 DIST XNNPACK-79cd5f9e18ad0925ac9a050b00ea5a36230072db.zip 10378085 BLAKE2B b163263e7ff23848e442b3086677da46135ca1ee20ca792ee30c2127d4246e5d31ca0bceb7997e573f21803cc0620fc0c6e368305557c9520ef134597c70f958 SHA512 422ddfa0ed53806a652cf221d43674f0f6af25e8f209e29c0ef9fcaaa6c30eca65853af6d3d8bbf07f8a6213ea7aa55dbb003c11adacf96650e668cafee3b7f4
+DIST OpenCL-Headers-0d5f18c6e7196863bc1557a693f1509adfcee056.tar.gz 35174 BLAKE2B c0cbffddf740c96588049b426dcf3231b4a4eef6f3f6036c17ae9f83c64a59935fc7f9a869a6a7258b17259b438615543655da4bde7ab562bbe1c564d0af89df SHA512 7e8fa6c8e73c660d8e9e31ddea3bfef887ed827fc21a1da559bde9dd4af6c52a91f609401bb718528b5c96d21e4c01aee7b8027bdf3dec4b0aa326270788a4b0
+DIST Vulkan-Headers-ec2db85225ab410bc6829251bef6c578aaed5868.tar.gz 869393 BLAKE2B 0a2a846ca6460c6fa3d6ebbce10af04d321fb70ad27126fdb501e734e420fcfca475ff24f49aadb402b47afc3bbea23c4b07e3a36b7d371c37e70878a7311ccb SHA512 6a0d89257b6f5487f3937ec40fb491ad0b6f1b9feac4e1a3d20814489f5aa0f9ae09c978ecf86c80b5d297dbc36e10c8785001e8b77a59742cd112311841a691
 DIST abseil-cpp-6f9d96a1f41439ac172ee2ef7ccd8edf0e5d068c.tar.gz 1785034 BLAKE2B 83cee194b416fff3d6ec3f4c02b4210a60ebfcf0316524fe9deb94372bfc34f33075fa59e2e71d8bb17c32f61a6e324072651c2bbf382d3d4a7540657b8a33a8 SHA512 f64fee62863f2103c1991136fd3bc2b71cd28c7ff62138ac991b5a7f81780a05e0e2bdd6a119d02e1d70dd54f989f584093957efaec94f26c9d6c3f4ee37f8ae
 DIST abseil-cpp-daf381e8535a1f1f1b8a75966a74e7cca63dee89.tar.gz 1275955 BLAKE2B eb6e0f9d55458a4ae6e8b86be89add9b0cc44d1ff5a11f6fa1ec93e2f46885c8ff87b8c1e674e1ba5ac13556ed303963864057f0e258fce41fa753d891846996 SHA512 56a827296e2948b90922766369f2040e04abd03320375240ad32fcc2925cdd1ffea312edcef1009a0c8abd79f521a61e433b7651dd4c2721d2b1ad13f48256de
 DIST backports.weakref-1.0rc1.tar.gz 7761 BLAKE2B 4cb2554a4b71bb1f8c41a790268511e4b382effc7e0328f74346d086de539a177111de9e2dabac19a44b2a1cdbf59a7425e30eee4caa4bfe66b0ca97f1f460a9 SHA512 f37e9eb0d9060d2e1588a941f623460bd4477d7e180b38b5cd46d9c1db1ee094ae63e4f5eeeb422823bf3d067f46c4124cb124a9e4ddb795bc0bfbc4802ab826
@@ -13,7 +15,6 @@
 DIST bazelbuild-apple_support-501b4afb27745c4813a88ffa28acd901408014e4.tar.gz 19956 BLAKE2B 73f04a13f8ac3552e6f0770d1ac4edcc1b5ef46e4a3c4f3b83f11eeffa632f764d37aa7a98b35b5be6bd0caef19f84d0dc1b88bc55ff5397012863af4ee6d902 SHA512 732f482338996a62db24bfa6acd2fde6b629ac0a49317ed4e4778a55bbbbb22225f42a6cfa18cdcc51c200e29abe82a1f2a5548df09b7244074ae52e1f62ef66
 DIST bazelbuild-rules_android-v0.1.1.zip 14654 BLAKE2B 1cfd5af08c6eab9602883f62d85ef1b9eb02383f73dcc31ae84af880c9ba228ae349ac6b017c550286e248347193e2c56eba30c86174432429809447dd940ed2 SHA512 80628a5e2ca9806ab031cd0c2f2999bd67f5621a83e8300a51fe6233373bdaf7c90ff8fa9551c81e60fc904c4d7b24554327ac8ed2ee101e92c4ab9319c53f4a
 DIST bazelbuild-rules_apple-5131f3d46794bf227d296c82f30c2499c9de3c5b.tar.gz 1951045 BLAKE2B d8c17f301de729bbf5254acacf89490ab1034b1180d5ea788251ae6ba3e2b704c82d7f66d33a086f52ce3909cd33df7739d7d536c6be070a2d3454e2f280517f SHA512 a23826d8e53d49de6347eca052e980878d50b431bf02c9b8333234c0659d5e290447121bf9519729639891e67d732474a3c3b7a7502752b32f830680bb334bad
-DIST bazelbuild-rules_cc-01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip 171775 BLAKE2B ec0ece4555d779bc8380937baac517a8adf3b0176c4bfb1324943a91366ad9688f528a4bd69e4587bcc4ad427c71a53016a3e2d32a050d9d4ec99caac4967a8e SHA512 5c5e82f276c1c962fbd9c7ddf21df9aa4291f3285f3fa07cd2c2790475ccba670b0627fc3d6faedd1508eca4d80bdae64a31383f001f04f3031112be81c3e697
 DIST bazelbuild-rules_closure-308b05b2419edb5c8ee0471b67a40403df940149.tar.gz 464906 BLAKE2B 033d76b8081f4f987e64875ad5c8e7b8f894ec6be58c52ee02c4d31d4480fee02f3f432ea9c4630ad3f5d1163f820aff37f6493da797ec51b148b361ab3c8b25 SHA512 2cd841f4530503ed31fa6425cb749ef29f8a1071b5d55594644303233e58455783cb02402bc23d7104ef036745733087d43075a1fcdab2ac96cd1a9872a6ea4a
 DIST bazelbuild-rules_closure-cf1e44edb908e9616030cc83d085989b8e6cd6df.tar.gz 462798 BLAKE2B f461635702cd881828cf401c78fe0e64398c015d7f7824b369b0808d54224c633b6d8b699000e9e481ba094a93e01c33cc4360a541b2d520db10d3e9ef81007e SHA512 e85b13a50cbec60e4e574de9a3d3b646ca4bf045c55afcb41f2fd671202aac9e6d3e91c618f8923986ae142e615624718f3df0d1edb33a90e334f29667888d39
 DIST bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip 9422 BLAKE2B bbc45c97551ee8126335b611ffca6574dac843d4db9b3221b10d26487f8eecfe38ba0cd67a4039a3ad921c25fea6294c43e4f4e7a57a060a30791acd6c4f9d39 SHA512 ba06242feb711e7fb6e821fd9ac029248b4f3e466fb1acf971d0db8196f3efe4d114ef137acbe4913073f8cbe8ccab4d47d8bafa21b867b2d6a6d57f5a647f0c
@@ -21,7 +22,6 @@
 DIST bazelbuild-rules_swift.0.9.0.tar.gz 105918 BLAKE2B 8f1bd8f5a468e3b37c614cf498a6cd8ceca55b255d6f096ebf88cd77e95148eab3fb5a128ed93b40f6d1ee8988b8dfd300fdf7061fc4ed4f1fb4ab25446ebe58 SHA512 68e985fa30b865317ccf59473cb52873d65159b866a54e35b3fbf83c135f3c750752663e962decbc8ebcd17b5784867d4d4767dd0b706f1182d4715291d8268b
 DIST cub-1.8.0.zip 602396 BLAKE2B a5e302a52e04f85ae8e1836c59e799532a8b961a8d10c08fe1241c9045f88e31f1ebda6d26124b85c6df40968e1c7b3985a39961bf7614535aafcab2da1a576a SHA512 6167c5be94989f88e05a07508cf69cf2c6b22a5ac733804043daa46bd86a44a15a758b1ffb811bab28b82039d027516ed85b3d9f7677a740a7e00ec9c2f81aed
 DIST eigen-a0d250e79c79.tar.gz 2468318 BLAKE2B 8799adc1a13612820251cd22a7ddc347ee4711d583561a5df9735bd22ab727c0d8e7fdc894cd7e83b3b972d5adcb86f033bc089e1a4de5fe4e6257f78df88957 SHA512 864646a0b3fd8287fbf6943f4cc7f692a883e6164add21c97e98372641b32e5ceffadc825178b9d11e9504377b837d0e54a264b7a53b28e4f9fc2a23c616d2b3
-DIST eigen-f612df273689a19d25b45ca4f8269463207c4fee.tar.gz 2721573 BLAKE2B a6f3fdfd622b11d1dc634518e0c50bac5246c6eb91ad52ba08db6b846a22f74fd151ac0a27d7ea330137cb5a572c41ca6a916796a94919663c46136b634c7ebb SHA512 71ed7b5e1c70a3a3502c9c1901120eebba7a3668f1b13c1e8156ef49e25decc0c2897fd9d729c505530d85842afd3084c615f87e1a43bc7a5f1f12ba34eaed36
 DIST farmhash-816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz 467122 BLAKE2B 8b9dd426f4b9f732df6c8c09d868d1b1cc006c395b1525c46ea91c75318b723358c8e64bb0d86a73aace2032eded93f0d80cc7c2c77fddd6a39e3402ab4f2cb7 SHA512 7f5110514a8cdc7ce48d33fd94ad67d96a24e42e11b203e4d0986f4190545f051b2a63f8e09f2ac38c3aa4a5c62d9a0e02cd8ce02045037381fb62a99f0dcd00
 DIST gemmlowp-12fed0cd7cfcd9e169bf1925bc3a7a58725fdcc3.zip 935628 BLAKE2B 09bd1dd1e367b1e5c4fe9a9525449c09460f19168bc03c57ad563aa27ec74a18f08b620a3dab6da4fa1a1448cdc7ce8bc8a089becc033b53fff4cc07593315ce SHA512 bd42a364f718f3b077cd9c840d626bfc1fd92ace98ce43329d8fa54700c9d28cb47568b6567e9b081b340af7be621c44be1ce06d4b8dccc4fb5d82c35b12f951
 DIST gemmlowp-fda83bdc38b118cc6b56753bd540caa49e570745.zip 936866 BLAKE2B 0977df121a80de979a9996b58a0a8cad157db8d0862b96f95b3be1157cddbc6b40dff4fc7da4ee78f5986cbfff2a67c173155e849e772ae476398c51f3028311 SHA512 4bf036de43f5e0890f66e0b16cd9a0f52911b160f79c9c50cf403454fa9d6040df225d34e02f424da8bb8c5f7f5c002f88f4d232c61503aa825c907ad8742823
@@ -33,8 +33,14 @@
 DIST pytorch-cpuinfo-5916273f79a21551890fd3d56fc5375a78d1598d.zip 3787933 BLAKE2B 169620d461103f271ae927d84af27282189509b2ba2fbed2c09f9ae387b5f392eea635dfdf2d3a23e1fc19b5d467bee3f13d3e473946e42bba4b6a9a2fd60e32 SHA512 6f1c8c931b62990ab0228679efb52207a6e21cb847139c11bf6117051b7315ff87c12ed1373670d006f0bc7e3d390d59f2d28a8250d0bd7df850583ae42afdf2
 DIST pytorch-cpuinfo-d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz 3489028 BLAKE2B aa6b7719eb9871b6cc71318cb4a9c2e2397e665662b7978daecd9e8380304691a78b95118eba5cbbb738c4b490352a847f6ce6b5c4ae29de0543b95ecc557cbb SHA512 ecd2115340fa82a67db7889ce286c3070d5ab9c30b02372b08aac893e90ccebc65c6b3e66aa02a9ae9c57892d2d8c3b77cb836e5fc3b88df2c75d33e574d90d2
 DIST rules_docker-b8ff6a85ec359db3fd5657accd3e524daf12016d.tar.gz 460121 BLAKE2B bca31bbdd9069647fa9560002e63a404e2bd4d4ebd19d90e28d08f797f8f63157cc127dab26b996bb976e50f099928a91c1d6343427cb85048c6ca2b47c0c7e2 SHA512 461a663189e5995e31ee8175ee260e1ad06b00ee8a7548b9d3a946a2de693311031ec6eba89e3bad527f5d8f76ed25626ef4ea05a8d6e7579932dc1be3b0a6ba
-DIST ruy-54774a7a2cf85963777289193629d4bd42de4a59.zip 363561 BLAKE2B 81ff61f1a125c99f7bc8c2f4e03909036a759543cf56774dc872db5987ed4ef099b376597acc2f07758c4813933e7b27fe336281bc05da19f284fb085492ade2 SHA512 b15b6e0464f7612276bc8b198341653e3b72b5e166132a5107f825d4c4612e179018f92a16f7a41490d176bb138417b18a6f1b7fc165c4e829d889808cb89276
 DIST tensorflow-1.14.0-python-license.rst.txt 45132 BLAKE2B 8a8ace4b64fd9eda1932272704dd4fea002d2562cd9c2c94470d3ff5de58bb171ff849d3f998ea90cd779d1084d39af1267aca8400b74b701205d2e76e6a2628 SHA512 c79c42f4ceecf33c8f8778ca17b53595b75d5d0bdf30b11058cf01dd70a6351f530ca9dd846460aba14edc1d5876f7bf6fa0f9f49f7915590b0f54d267ce3856
 DIST tensorflow-1.14.0.tar.gz 41335204 BLAKE2B d91d84c5d86c838cc659c45e28cf3c8a9ec9a02f5854a1826680806dae41cdd00ea49a6d2c04f2019b3400c6e267c6ca6f3b28e43b244569dca174ff7f2c59d6 SHA512 ac9ea5a2d1c761aaafbdc335259e29c128127b8d069ec5b206067935180490aa95e93c7e13de57f7f54ce4ba4f34a822face22b4a028f60185edb380e5cd4787
-DIST tensorflow-2.5.0.tar.gz 55999506 BLAKE2B 0f1f29ed9ff6e5fd3fc0c98419bca636f48085810f934290885b3469c45817b2ce17e9dbd3d93d70b09ec7975088edd0973f147449f527a8f2e23b388e2592ce SHA512 637c63b1bed1c0eb7bb018f1ff7f29f7f0d78e75dac384df4ecb5dfb92bbcb28209e3d3d2204145abddf88e3247d8c31bbb4cea032a73b7122b2ef3eb0d2b947
-DIST tensorflow_toolchains_v1.1.10.tar.gz 137512 BLAKE2B 774b22a599070564c0f77ed0da79f6a96359b196dd3007370be885b796c236b9a29c01597507a3049f82cf489824c8016740b778cacb2b8cd859500f9ecb1887 SHA512 1daf4684f5b364a89b3cc475cf2d13d0d0622fc14d2b32d7ad8518932538e716782d755cfcedc98d129a3986bc7c38bfc7854c8ad596891e397510b75ae2f93e
+DIST tensorflow-2.6.0.tar.gz 59094786 BLAKE2B 3f9ce4bacc2f9429e2e58e03f1b1271c83c6175d58f668fcc71732f0ec821e288a877a150e8b9a2d3b793ed640dc05c0225f732351b8681f6ac5320445040238 SHA512 d052da4b324f1b5ac9c904ac3cca270cefbf916be6e5968a6835ef3f8ea8c703a0b90be577ac5205edf248e8e6c7ee8817b6a1b383018bb77c381717c6205e05
+DIST tensorflow_toolchains_v1.1.21.tar.gz 61538 BLAKE2B d54a91f46977d3cad3bee604d8a8de857f287cfd84f05738b020549516a3d8719992f048d829e5377f42609dc41be856c7d7fa2e28e4f649fc89897b255a362e SHA512 4d63fec57a03dc60a84021614b93a3965f69b830b00b48923c617cc2869cf64b9ce568b0d8bcba2897869eb012ba911beec468ea501662ac22cfb362b8e3c0ea
+DIST tf_runtime-b570a1921c9e55ac53c8972bd2bfd37cd0eb510d.tar.gz 15244125 BLAKE2B d77d37169ab4f2acc87fe269c5dcbc1c2c817f80a498e4cf41ac9ca14e44c6c46edc785bc940efe79de317acc5250c456fbfd2b9e35dd313716651fc77efccac SHA512 2711827f2c1073220950c4bb6ba0d3e57701de371e01e588627ff87e15068b26795613e7ff6c9b94c1965fa847e06f7b49911407a5599e3948306347dbfaf683
+DIST bazelbuild-rules_cc-40548a2974f1aea06215272d9c2b47a14a24e556.tar.gz 129521 BLAKE2B 368feec785ba0f9abb0f02d14a48ba6ff03859be9245465817c30a0174f897a2dcb6ab1503995da0b521858f96ece3b6eafe6e36cc7e2f8feeb7b6b9620a4d22 SHA512 4573fcd097b7d288024931fd5875358bba3f6db8d904b70e191e0c9a3b34280f8aecac600862883b7692f6faf96c5e8c582441f5f5eff086917b3901fbdbb40b
+DIST bazelbuild-platforms-0.0.2.tar.gz 5278 BLAKE2B 0c247bb6efdc30ec2c46fd7e1eeaab6aa20c29d8f9a12e6425530c0e8bd70c4fcafe4b9168c43aa43dc59d55aa27fc975acf15840f6cdb87f0bbda31eac8fb70 SHA512 11119d44627208b04be20f63e486d871866148b52f6d66e7cae3da1fd5daa3ba5b291bad9c5fd40231add8fe770dafb6b71c4b9e0a803317a4f94f7a4be7cad9
+DIST eigen-12e8d57108c50d8a63605c6eb0144c838c128337.tar.gz 2729080 BLAKE2B c3809e169c57e4814e8f5c9fcb898c0e61ac5e8680307ab29ccaea3fbc223c45ce5fa94cec10b022e8a878c91a7e5055123981b36b7c043d4d4d02044ad673b0 SHA512 7e9b84729f7911529a7bb6090cbeaeeec0012ad630b5134acd1769879b3d57f8f13f44a8cced5e7521d4f2f5a0e03204b22e9172cbfbe06164be33b8c9ee4275
+DIST ruy-e6c1b8dc8a8b00ee74e7268aac8b18d7260ab1ce.zip 375516 BLAKE2B d026fcb8cf5226fca9153bd5acb848f04382cf759efda334e9bdbc58cb838a54c8e26d85d8c1577cca835b82319a80a61c7be83e6f61e0dab01d8119995a6c2e SHA512 e556764ef8505509cadf6cf28bb172be96b3650b410b1ccc3a34ef4c2bb8f67e911597962dd392c6441e68d329c66a0f0215fa545df01c63912adda1b08b25ce
+DIST abseil-cpp-997aaf3a28308eba1b9156aa35ab7bca9688e9f6.tar.gz 1774075 BLAKE2B 2f082ce0a16df2a323add4b74cdc73443d720a5e1afe02e3eda18239b00bb8ce05488ef17a0a2553af4d92f1f26c6041215b0e914028ff5bc8c869c38cbce4b7 SHA512 bdd80a2278eef121e8837791fdebca06e87bfff4adc438c123e0ce11efc42a8bd461edcbbe18c0eee05be2cd6100f9acf8eab3db58ac73322b5852e6ffe7c85b
+DIST xnnpack-476eb84d6a8e6f8249d5584d30759c6fbdbf791d.zip 11980826 BLAKE2B 965a0d3aa4c67cc366f6da57a88dba1b61183afc74bce60516773b3b6463fef336b53043a41ea234b4b291a343798826d2308df70ee76581327043bf98e72187 SHA512 5f6a397926a6208fadbd0fb22e91135c0f4be0afd805d4b89fb44299c8f6dd53d8bf9ea5f6b03b63dc56af288b62a3e0bbe21197b7a4a523bea06b1110e4f774
diff --git a/sci-libs/tensorflow/files/tensorflow-2.5.0-0003-nnapi-delegates.patch b/sci-libs/tensorflow/files/tensorflow-2.5.0-0003-nnapi-delegates.patch
deleted file mode 100644
index 6598afe..0000000
--- a/sci-libs/tensorflow/files/tensorflow-2.5.0-0003-nnapi-delegates.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-Patch the code in the tools directory so that it loads the NNAPI delegate
-correctly without needing to define __ANDROID__
-
-diff --git a/tensorflow/lite/BUILD b/tensorflow/lite/BUILD
-index 8d16389b..30d18fb1 100644
---- a/tensorflow/lite/BUILD
-+++ b/tensorflow/lite/BUILD
-@@ -268,6 +268,8 @@ cc_library(
-         ":string",
-         ":type_to_tflitetype",
-         ":util",
-+        "//tensorflow/lite/delegates/nnapi:nnapi_delegate",
-+        "//tensorflow/lite/nnapi:nnapi_implementation",
-         "//tensorflow/lite/c:common",
-         "//tensorflow/lite/core/api",
-         "//tensorflow/lite/core/api:verifier",
-
-diff --git a/tensorflow/lite/tools/evaluation/utils.cc b/tensorflow/lite/tools/evaluation/utils.cc
-index 730a7d5f..e073a402 100644
---- a/tensorflow/lite/tools/evaluation/utils.cc
-+++ b/tensorflow/lite/tools/evaluation/utils.cc
-@@ -95,25 +95,17 @@ TfLiteStatus GetSortedFileNames(
- 
- // TODO(b/138448769): Migrate delegate helper APIs to lite/testing.
- TfLiteDelegatePtr CreateNNAPIDelegate() {
--#if defined(__ANDROID__)
-   return TfLiteDelegatePtr(
-       NnApiDelegate(),
-       // NnApiDelegate() returns a singleton, so provide a no-op deleter.
-       [](TfLiteDelegate*) {});
--#else
--  return CreateNullDelegate();
--#endif  // defined(__ANDROID__)
- }
- 
- TfLiteDelegatePtr CreateNNAPIDelegate(StatefulNnApiDelegate::Options options) {
--#if defined(__ANDROID__)
-   return TfLiteDelegatePtr(
-       new StatefulNnApiDelegate(options), [](TfLiteDelegate* delegate) {
-         delete reinterpret_cast<StatefulNnApiDelegate*>(delegate);
-       });
--#else
--  return CreateNullDelegate();
--#endif  // defined(__ANDROID__)
- }
- 
- #if TFLITE_SUPPORTS_GPU_DELEGATE
diff --git a/sci-libs/tensorflow/files/tensorflow-2.5.0-0005-xnnpack-update.patch b/sci-libs/tensorflow/files/tensorflow-2.5.0-0005-xnnpack-update.patch
deleted file mode 100644
index 6a644f4..0000000
--- a/sci-libs/tensorflow/files/tensorflow-2.5.0-0005-xnnpack-update.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-diff --git a/tensorflow/lite/delegates/xnnpack/BUILD b/tensorflow/lite/delegates/xnnpack/BUILD
-index 8eb31175..9eafefc6 100644
---- a/tensorflow/lite/delegates/xnnpack/BUILD
-+++ b/tensorflow/lite/delegates/xnnpack/BUILD
-@@ -32,7 +32,7 @@ cc_library(
-         "//tensorflow/lite/schema:schema_fbs",
-         "//tensorflow/lite/tools/optimize/sparsity:format_converter",
-         "@FP16",
--        "@XNNPACK//:xnnpack_f32",
-+        "@XNNPACK//:xnnpack_for_tflite",
-     ],
- )
- 
-diff --git a/tensorflow/workspace2.bzl b/tensorflow/workspace2.bzl
-index efc50709..28a0e935 100644
---- a/tensorflow/workspace2.bzl
-+++ b/tensorflow/workspace2.bzl
-@@ -126,11 +126,11 @@ def _tf_repositories():
-     # and update the sha256 with the result.
-     tf_http_archive(
-         name = "XNNPACK",
--        sha256 = "95b778a920a1a79efdb11bf68dda9b4fd16779a1a0210438582e750f9bfb6351",
--        strip_prefix = "XNNPACK-fb8d1f1b2bb2e32c141564528a39748c4631b453",
-+        sha256 = "dbb28e7ed4c09b6d09d9fcc194081560039994e60bfa753ba7f408f57605672e",
-+        strip_prefix = "XNNPACK-79cd5f9e18ad0925ac9a050b00ea5a36230072db",
-         urls = [
--            "https://storage.googleapis.com/mirror.tensorflow.org/github.com/google/XNNPACK/archive/fb8d1f1b2bb2e32c141564528a39748c4631b453.zip",
--            "https://github.com/google/XNNPACK/archive/fb8d1f1b2bb2e32c141564528a39748c4631b453.zip",
-+            "https://storage.googleapis.com/mirror.tensorflow.org/github.com/google/XNNPACK/archive/79cd5f9e18ad0925ac9a050b00ea5a36230072db.zip",
-+            "https://github.com/google/XNNPACK/archive/79cd5f9e18ad0925ac9a050b00ea5a36230072db.zip",
-         ],
-     )
- 
diff --git a/sci-libs/tensorflow/files/tensorflow-2.5.0-0001-workspace.patch b/sci-libs/tensorflow/files/tensorflow-2.6.0-0001-workspace.patch
similarity index 100%
rename from sci-libs/tensorflow/files/tensorflow-2.5.0-0001-workspace.patch
rename to sci-libs/tensorflow/files/tensorflow-2.6.0-0001-workspace.patch
diff --git a/sci-libs/tensorflow/files/tensorflow-2.5.0-0002-ashmem-create.patch b/sci-libs/tensorflow/files/tensorflow-2.6.0-0002-ashmem-create.patch
similarity index 100%
rename from sci-libs/tensorflow/files/tensorflow-2.5.0-0002-ashmem-create.patch
rename to sci-libs/tensorflow/files/tensorflow-2.6.0-0002-ashmem-create.patch
diff --git a/sci-libs/tensorflow/files/tensorflow-2.6.0-0003-nnapi-delegates.patch b/sci-libs/tensorflow/files/tensorflow-2.6.0-0003-nnapi-delegates.patch
new file mode 100644
index 0000000..8c589702
--- /dev/null
+++ b/sci-libs/tensorflow/files/tensorflow-2.6.0-0003-nnapi-delegates.patch
@@ -0,0 +1,43 @@
+diff --git a/tensorflow/lite/BUILD b/tensorflow/lite/BUILD
+index 72a46e66..c0b1cd16 100644
+--- a/tensorflow/lite/BUILD
++++ b/tensorflow/lite/BUILD
+@@ -348,6 +348,8 @@ cc_library(
+         ":string",
+         ":type_to_tflitetype",
+         ":util",
++        "//tensorflow/lite/delegates/nnapi:nnapi_delegate",
++        "//tensorflow/lite/nnapi:nnapi_implementation",
+         "//tensorflow/lite/c:common",
+         "//tensorflow/lite/core/api",
+         "//tensorflow/lite/core/api:verifier",
+diff --git a/tensorflow/lite/tools/evaluation/utils.cc b/tensorflow/lite/tools/evaluation/utils.cc
+index ec09394e..0ce47fcb 100644
+--- a/tensorflow/lite/tools/evaluation/utils.cc
++++ b/tensorflow/lite/tools/evaluation/utils.cc
+@@ -94,25 +94,17 @@ TfLiteStatus GetSortedFileNames(
+ #endif
+ 
+ TfLiteDelegatePtr CreateNNAPIDelegate() {
+-#if defined(__ANDROID__)
+   return TfLiteDelegatePtr(
+       NnApiDelegate(),
+       // NnApiDelegate() returns a singleton, so provide a no-op deleter.
+       [](TfLiteDelegate*) {});
+-#else
+-  return CreateNullDelegate();
+-#endif  // defined(__ANDROID__)
+ }
+ 
+ TfLiteDelegatePtr CreateNNAPIDelegate(StatefulNnApiDelegate::Options options) {
+-#if defined(__ANDROID__)
+   return TfLiteDelegatePtr(
+       new StatefulNnApiDelegate(options), [](TfLiteDelegate* delegate) {
+         delete reinterpret_cast<StatefulNnApiDelegate*>(delegate);
+       });
+-#else
+-  return CreateNullDelegate();
+-#endif  // defined(__ANDROID__)
+ }
+ 
+ #if TFLITE_SUPPORTS_GPU_DELEGATE
diff --git a/sci-libs/tensorflow/files/tensorflow-2.5.0-0004-cpuinfo-arm-fix.patch b/sci-libs/tensorflow/files/tensorflow-2.6.0-0004-cpuinfo-arm-fix.patch
similarity index 100%
rename from sci-libs/tensorflow/files/tensorflow-2.5.0-0004-cpuinfo-arm-fix.patch
rename to sci-libs/tensorflow/files/tensorflow-2.6.0-0004-cpuinfo-arm-fix.patch
diff --git a/sci-libs/tensorflow/files/tensorflow-2.6.0-0005-gpu.patch b/sci-libs/tensorflow/files/tensorflow-2.6.0-0005-gpu.patch
new file mode 100644
index 0000000..3ea6bbf
--- /dev/null
+++ b/sci-libs/tensorflow/files/tensorflow-2.6.0-0005-gpu.patch
@@ -0,0 +1,135 @@
+diff --git a/tensorflow/lite/BUILD b/tensorflow/lite/BUILD
+index c0b1cd16..2406b723 100644
+--- a/tensorflow/lite/BUILD
++++ b/tensorflow/lite/BUILD
+@@ -1045,6 +1045,8 @@ tflite_cc_shared_object(
+         "//conditions:default": [
+             "-Wl,-z,defs",
+             "-Wl,--version-script,$(location //tensorflow/lite:tflite_version_script.lds)",
++            "-lEGL",
++            "-lGLESv2",
+         ],
+     }),
+     per_os_targets = True,
+@@ -1053,6 +1055,7 @@ tflite_cc_shared_object(
+         ":tflite_exported_symbols.lds",
+         ":tflite_version_script.lds",
+         "//tensorflow/lite/kernels:builtin_ops_all_linked",
++        "//tensorflow/lite/delegates/gpu:delegate",
+     ],
+ )
+ 
+diff --git a/tensorflow/lite/examples/label_image/BUILD b/tensorflow/lite/examples/label_image/BUILD
+index b6d0f108..b3147244 100644
+--- a/tensorflow/lite/examples/label_image/BUILD
++++ b/tensorflow/lite/examples/label_image/BUILD
+@@ -25,7 +25,10 @@ cc_binary(
+             "-lm",  # some builtin ops, e.g., tanh, need -lm
+             "-Wl,-rpath=/data/local/tmp",  # for hexagon delegate
+         ],
+-        "//conditions:default": [],
++        "//conditions:default": [
++            "-lEGL",
++            "-lGLESv2",
++        ],
+     }),
+     deps = [
+         ":bitmap_helpers",
+@@ -68,7 +71,9 @@ cc_library(
+             "//tensorflow/lite/delegates/gpu:delegate",
+             "//tensorflow/lite/delegates/hexagon:hexagon_delegate",
+         ],
+-        "//conditions:default": [],
++        "//conditions:default": [
++            "//tensorflow/lite/delegates/gpu:delegate",
++        ],
+     }),
+ )
+ 
+diff --git a/tensorflow/lite/tools/benchmark/BUILD b/tensorflow/lite/tools/benchmark/BUILD
+index a5813112..7f280d17 100644
+--- a/tensorflow/lite/tools/benchmark/BUILD
++++ b/tensorflow/lite/tools/benchmark/BUILD
+@@ -36,7 +36,10 @@ cc_binary(
+             "-lm",  # some builtin ops, e.g., tanh, need -lm
+             "-Wl,--rpath=/data/local/tmp/",  # Hexagon delegate libraries should be in /data/local/tmp
+         ],
+-        "//conditions:default": [],
++        "//conditions:default": [
++            "-lEGL",
++            "-lGLESv2",
++        ],
+     }),
+     tags = ["builder_default_android_arm64"],
+     deps = [
+@@ -191,7 +194,9 @@ cc_library(
+         "//tensorflow:android": [
+             "//tensorflow/lite/delegates/gpu:delegate",
+         ],
+-        "//conditions:default": [],
++        "//conditions:default": [
++            "//tensorflow/lite/delegates/gpu:delegate",
++        ],
+     }),
+ )
+ 
+diff --git a/tensorflow/lite/tools/delegates/BUILD b/tensorflow/lite/tools/delegates/BUILD
+index b0ddff8c..e1e56f7a 100644
+--- a/tensorflow/lite/tools/delegates/BUILD
++++ b/tensorflow/lite/tools/delegates/BUILD
+@@ -78,12 +78,8 @@ cc_library(
+     deps = [
+         ":delegate_provider_hdr",
+         "//tensorflow/lite/tools/evaluation:utils",
++        "//tensorflow/lite/delegates/gpu:delegate",
+     ] + select({
+-        "//tensorflow/lite/delegates/gpu:supports_gpu_delegate": [
+-            "//tensorflow/lite/delegates/gpu:delegate",
+-        ],
+-        "//conditions:default": [],
+-    }) + select({
+         "//tensorflow:ios": [
+             "//tensorflow/lite/delegates/gpu:metal_delegate",
+         ],
+@@ -117,6 +113,7 @@ cc_library(
+     deps = [
+         ":delegate_provider_hdr",
+         "//tensorflow/lite/tools/evaluation:utils",
++        "//tensorflow/lite/delegates/gpu:delegate",
+     ] + select({
+         "//tensorflow:android_arm": [
+             "//tensorflow/lite/delegates/hexagon:hexagon_delegate",
+@@ -144,6 +141,7 @@ cc_library(
+     deps = [
+         ":delegate_provider_hdr",
+         "//tensorflow/lite/tools/evaluation:utils",
++        "//tensorflow/lite/delegates/gpu:delegate",
+     ] + select({
+         "//tensorflow:ios": [
+             "//tensorflow/lite/delegates/coreml:coreml_delegate",
+@@ -165,6 +163,7 @@ cc_library(
+     deps = [
+         ":delegate_provider_hdr",
+         "//tensorflow/lite/tools/evaluation:utils",
++        "//tensorflow/lite/delegates/gpu:delegate",
+     ],
+     alwayslink = 1,
+ )
+diff --git a/tensorflow/lite/tools/evaluation/BUILD b/tensorflow/lite/tools/evaluation/BUILD
+index ba745c6a..a1b7a49e 100644
+--- a/tensorflow/lite/tools/evaluation/BUILD
++++ b/tensorflow/lite/tools/evaluation/BUILD
+@@ -43,12 +43,8 @@ cc_library(
+         "//tensorflow/lite/c:common",
+         "//tensorflow/lite/delegates/nnapi:nnapi_delegate",
+         "//tensorflow/lite/delegates/xnnpack:xnnpack_delegate",
++        "//tensorflow/lite/delegates/gpu:delegate",
+     ] + select({
+-        "//tensorflow/lite/delegates/gpu:supports_gpu_delegate": [
+-            "//tensorflow/lite/delegates/gpu:delegate",
+-        ],
+-        "//conditions:default": [],
+-    }) + select({
+         "//tensorflow:android_arm": [
+             "//tensorflow/lite/delegates/hexagon:hexagon_delegate",
+         ],
diff --git a/sci-libs/tensorflow/files/tensorflow-2.6.0-0006-nnapi-loading-errors.patch b/sci-libs/tensorflow/files/tensorflow-2.6.0-0006-nnapi-loading-errors.patch
new file mode 100644
index 0000000..f1691c5
--- /dev/null
+++ b/sci-libs/tensorflow/files/tensorflow-2.6.0-0006-nnapi-loading-errors.patch
@@ -0,0 +1,20 @@
+diff --git a/tensorflow/lite/nnapi/nnapi_implementation.cc b/tensorflow/lite/nnapi/nnapi_implementation.cc
+index 4c8c9e24..186f451e 100644
+--- a/tensorflow/lite/nnapi/nnapi_implementation.cc
++++ b/tensorflow/lite/nnapi/nnapi_implementation.cc
+@@ -177,7 +177,6 @@ const NnApi LoadNnApi() {
+   // instances of nn api RT
+   static const char nnapi_library_name[] = "libneuralnetworks.so";
+   libneuralnetworks = dlopen(nnapi_library_name, RTLD_LAZY | RTLD_LOCAL);
+-#ifdef __ANDROID__
+   // Note: If there is an problem trying to open the NNAPI library on a
+   // non-Android system, the error message is suppressed. This is to avoid
+   // showing confusing errors when running in environments that do not support
+@@ -190,7 +189,6 @@ const NnApi LoadNnApi() {
+     }
+     NNAPI_LOG("nnapi error: unable to open library %s", nnapi_library_name);
+   }
+-#endif  // __ANDROID__
+ 
+   nnapi.nnapi_exists = libneuralnetworks != nullptr;
+ 
diff --git a/sci-libs/tensorflow/tensorflow-1.14.0-r13.ebuild b/sci-libs/tensorflow/tensorflow-1.14.0-r14.ebuild
similarity index 100%
rename from sci-libs/tensorflow/tensorflow-1.14.0-r13.ebuild
rename to sci-libs/tensorflow/tensorflow-1.14.0-r14.ebuild
diff --git a/sci-libs/tensorflow/tensorflow-1.14.0.ebuild b/sci-libs/tensorflow/tensorflow-1.14.0.ebuild
index b4df961..027ea6a 100644
--- a/sci-libs/tensorflow/tensorflow-1.14.0.ebuild
+++ b/sci-libs/tensorflow/tensorflow-1.14.0.ebuild
@@ -49,7 +49,7 @@
 		${bazel_external_uris}"
 
 RDEPEND="
-	>=dev-libs/flatbuffers-1.8.0
+	>=dev-libs/flatbuffers-1.8.0:=
 	>=dev-libs/protobuf-3.6.0:=
 	!minimal? (
 		app-arch/snappy
diff --git a/sci-libs/tensorflow/tensorflow-2.5.0-r2.ebuild b/sci-libs/tensorflow/tensorflow-2.5.0-r2.ebuild
deleted file mode 120000
index 3aa6e3f..0000000
--- a/sci-libs/tensorflow/tensorflow-2.5.0-r2.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-tensorflow-2.5.0.ebuild
\ No newline at end of file
diff --git a/sci-libs/tensorflow/tensorflow-2.5.0.ebuild b/sci-libs/tensorflow/tensorflow-2.5.0.ebuild
deleted file mode 100644
index 7bd2fb5..0000000
--- a/sci-libs/tensorflow/tensorflow-2.5.0.ebuild
+++ /dev/null
@@ -1,493 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_OPTIONAL=1
-PYTHON_COMPAT=( python3_{6,7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-MY_PV=${PV/_rc/-rc}
-MY_P=${PN}-${MY_PV}
-
-# s/bazel/cros-bazel/ instead of bazel to fix downloading dependencies.
-# s/prefix// because ChromeOS doesn't need it.
-inherit cros-bazel check-reqs cuda distutils-r1 flag-o-matic toolchain-funcs
-
-DESCRIPTION="Computation framework using data flow graphs for scalable machine learning"
-HOMEPAGE="https://www.tensorflow.org/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="*"
-# ChromeOS uses 'minimal' to compile only TensorFlow Lite, compilation without 'minimal' is not supported.
-IUSE="cuda mpi +python xla minimal label_image benchmark_model xnnpack"
-
-# distfiles that bazel uses for the workspace, will be copied to basel-distdir
-bazel_external_uris="
-	https://github.com/abseil/abseil-cpp/archive/6f9d96a1f41439ac172ee2ef7ccd8edf0e5d068c.tar.gz -> abseil-cpp-6f9d96a1f41439ac172ee2ef7ccd8edf0e5d068c.tar.gz
-	https://github.com/bazelbuild/apple_support/archive/501b4afb27745c4813a88ffa28acd901408014e4.tar.gz -> bazelbuild-apple_support-501b4afb27745c4813a88ffa28acd901408014e4.tar.gz
-	https://github.com/bazelbuild/bazel-toolchains/archive/92dd8a7a518a2fb7ba992d47c8b38299fe0be825.tar.gz -> bazel-toolchains-92dd8a7a518a2fb7ba992d47c8b38299fe0be825.tar.gz
-	https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz -> bazel-skylib-1.0.3.tar.gz
-	https://github.com/bazelbuild/rules_android/archive/v0.1.1.zip -> bazelbuild-rules_android-v0.1.1.zip
-	https://github.com/bazelbuild/rules_apple/archive/5131f3d46794bf227d296c82f30c2499c9de3c5b.tar.gz -> bazelbuild-rules_apple-5131f3d46794bf227d296c82f30c2499c9de3c5b.tar.gz
-	https://github.com/bazelbuild/rules_cc/archive/01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip -> bazelbuild-rules_cc-01d4a48911d5e7591ecb1c06d3b8af47fe872371.zip
-	https://github.com/bazelbuild/rules_closure/archive/308b05b2419edb5c8ee0471b67a40403df940149.tar.gz -> bazelbuild-rules_closure-308b05b2419edb5c8ee0471b67a40403df940149.tar.gz
-	https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip
-	https://github.com/bazelbuild/rules_swift/archive/3eeeb53cebda55b349d64c9fc144e18c5f7c0eb8.tar.gz -> bazelbuild-rules_swift-3eeeb53cebda55b349d64c9fc144e18c5f7c0eb8.tar.gz
-	https://github.com/google/farmhash/archive/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz -> farmhash-816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz
-	https://github.com/google/gemmlowp/archive/fda83bdc38b118cc6b56753bd540caa49e570745.zip -> gemmlowp-fda83bdc38b118cc6b56753bd540caa49e570745.zip
-	https://github.com/google/ruy/archive/54774a7a2cf85963777289193629d4bd42de4a59.zip -> ruy-54774a7a2cf85963777289193629d4bd42de4a59.zip
-	https://github.com/google/XNNPACK/archive/79cd5f9e18ad0925ac9a050b00ea5a36230072db.zip -> XNNPACK-79cd5f9e18ad0925ac9a050b00ea5a36230072db.zip
-	https://github.com/intel/ARM_NEON_2_x86_SSE/archive/1200fe90bb174a6224a525ee60148671a786a71f.tar.gz -> ARM_NEON_2_x86_SSE-1200fe90bb174a6224a525ee60148671a786a71f.tar.gz	https://github.com/googleapis/googleapis/archive/541b1ded4abadcc38e8178680b0677f65594ea6f.zip -> googleapis-541b1ded4abadcc38e8178680b0677f65594ea6f.zip
-	https://github.com/petewarden/OouraFFT/archive/v1.0.tar.gz -> OouraFFT-v1.0.tar.gz
-	https://github.com/pytorch/cpuinfo/archive/5916273f79a21551890fd3d56fc5375a78d1598d.zip -> pytorch-cpuinfo-5916273f79a21551890fd3d56fc5375a78d1598d.zip
-	https://github.com/pytorch/cpuinfo/archive/d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz -> pytorch-cpuinfo-d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz
-	https://github.com/Maratyszcza/FP16/archive/4dfe081cf6bcd15db339cf2680b9281b8451eeb3.zip -> FP16-4dfe081cf6bcd15db339cf2680b9281b8451eeb3.zip
-	https://github.com/Maratyszcza/FXdiv/archive/63058eff77e11aa15bf531df5dd34395ec3017c8.zip -> FXdiv-63058eff77e11aa15bf531df5dd34395ec3017c8.zip
-	https://github.com/Maratyszcza/pthreadpool/archive/b8374f80e42010941bda6c85b0e3f1a1bd77a1e0.zip -> pthreadpool-b8374f80e42010941bda6c85b0e3f1a1bd77a1e0.zip
-	https://github.com/tensorflow/toolchains/archive/v1.1.10.tar.gz -> tensorflow_toolchains_v1.1.10.tar.gz
-	https://gitlab.com/libeigen/eigen/-/archive/f612df273689a19d25b45ca4f8269463207c4fee/eigen-f612df273689a19d25b45ca4f8269463207c4fee.tar.gz -> eigen-f612df273689a19d25b45ca4f8269463207c4fee.tar.gz
-"
-
-SRC_URI="
-	https://github.com/${PN}/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz
-	${bazel_external_uris}
-	"
-
-RDEPEND="
-	!minimal? (
-		app-arch/snappy
-		dev-db/lmdb
-		dev-db/sqlite
-		dev-libs/double-conversion
-		dev-libs/icu
-		>=dev-libs/jsoncpp-1.9.2
-	)
-	dev-libs/libpcre
-	!minimal? (
-		dev-libs/nsync
-	)
-	dev-libs/openssl:0=
-	>=dev-libs/protobuf-3.8.0:=
-	>=dev-libs/re2-0.2019.06.01
-	!minimal? (
-		media-libs/giflib
-	)
-	media-libs/libjpeg-turbo
-	media-libs/libpng:0
-	!minimal? (
-		>=net-libs/grpc-1.28
-	)
-	net-misc/curl
-	sys-libs/zlib
-	!minimal? (
-		>=sys-apps/hwloc-2
-	)
-	cuda? (
-		|| (
-			( =dev-util/nvidia-cuda-toolkit-10.2*[profiler] =dev-libs/cudnn-7* )
-			( =dev-util/nvidia-cuda-toolkit-10.1*[profiler] =dev-libs/cudnn-7* )
-			( =dev-util/nvidia-cuda-toolkit-10.0*[profiler] =dev-libs/cudnn-7.4* )
-			( =dev-util/nvidia-cuda-toolkit-9.2*[profiler] =dev-libs/cudnn-7.1* )
-			( =dev-util/nvidia-cuda-toolkit-9.1*[profiler] =dev-libs/cudnn-7.0* )
-		)
-	)
-	mpi? ( virtual/mpi )
-	python? (
-		${PYTHON_DEPS}
-		>=dev-libs/flatbuffers-1.12.0:=
-		dev-python/absl-py[${PYTHON_USEDEP}]
-		>=dev-python/astor-0.7.1[${PYTHON_USEDEP}]
-		dev-python/astunparse[${PYTHON_USEDEP}]
-		>=dev-python/gast-0.3.3[${PYTHON_USEDEP}]
-		dev-python/h5py[${PYTHON_USEDEP}]
-		>=dev-python/numpy-1.19[${PYTHON_USEDEP}]
-		>=dev-python/google-pasta-0.1.8[${PYTHON_USEDEP}]
-		dev-python/opt-einsum[${PYTHON_USEDEP}]
-		>=dev-python/protobuf-python-3.8.0[${PYTHON_USEDEP}]
-		dev-python/pybind11[${PYTHON_USEDEP}]
-		dev-python/six[${PYTHON_USEDEP}]
-		dev-python/termcolor[${PYTHON_USEDEP}]
-		>=dev-python/grpcio-1.28[${PYTHON_USEDEP}]
-		>=dev-python/wrapt-1.11.1[${PYTHON_USEDEP}]
-		>=net-libs/google-cloud-cpp-0.10.0
-		>=sci-libs/keras-applications-1.0.8[${PYTHON_USEDEP}]
-		>=sci-libs/keras-preprocessing-1.1.0[${PYTHON_USEDEP}]
-		>=sci-visualization/tensorboard-2.3.0[${PYTHON_USEDEP}]
-		dev-python/dill[${PYTHON_USEDEP}]
-		dev-python/tblib[${PYTHON_USEDEP}]
-	)"
-DEPEND="${RDEPEND}
-	python? (
-		dev-python/mock
-		dev-python/setuptools
-	)"
-PDEPEND="python? (
-		>=sci-libs/tensorflow-estimator-2.3.0[${PYTHON_USEDEP}]
-	)"
-BDEPEND="
-	app-arch/unzip
-	>=dev-libs/protobuf-3.8.0
-	dev-java/java-config
-	dev-lang/swig
-	!minimal? (
-		=dev-util/bazel-3*
-	)
-	cuda? (
-		>=dev-util/nvidia-cuda-toolkit-9.1[profiler]
-	)
-	!python? ( dev-lang/python )
-	python? (
-		dev-python/cython
-		dev-python/mock
-		>=dev-python/grpcio-tools-1.28
-	)"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-PATCHES=(
-	"${FILESDIR}/tensorflow-2.5.0-0001-workspace.patch"
-	"${FILESDIR}/tensorflow-2.5.0-0002-ashmem-create.patch"
-	"${FILESDIR}/tensorflow-2.5.0-0003-nnapi-delegates.patch"
-	"${FILESDIR}/tensorflow-2.5.0-0004-cpuinfo-arm-fix.patch"
-	"${FILESDIR}/tensorflow-2.5.0-0005-xnnpack-update.patch"
-)
-
-S="${WORKDIR}/${MY_P}"
-
-DOCS=( AUTHORS CONTRIBUTING.md ISSUE_TEMPLATE.md README.md RELEASE.md )
-CHECKREQS_MEMORY="5G"
-CHECKREQS_DISK_BUILD="10G"
-
-# Echos the CPU string that TensorFlow uses to refer to the given architecture.
-get-cpu-str() {
-	local arch
-	arch="$(tc-arch "${1}")"
-
-	case "${arch}" in
-	amd64) echo "k8";;
-	arm) echo "arm";;
-	arm64) echo "aarch64";;
-	*) die "Unsupported architecture '${arch}'."
-	esac
-}
-
-pkg_setup() {
-	ewarn "TensorFlow 2.0 is a major release that contains some incompatibilities"
-	ewarn "with TensorFlow 1.x. For more information about migrating to TF2.0 see:"
-	ewarn "https://www.tensorflow.org/guide/migrate"
-
-	local num_pythons_enabled
-	num_pythons_enabled=0
-	count_impls(){
-		num_pythons_enabled=$((${num_pythons_enabled} + 1))
-	}
-	use python && python_foreach_impl count_impls
-
-	# 10G to build C/C++ libs, 5G per python impl
-	CHECKREQS_DISK_BUILD="$((10 + 6 * ${num_pythons_enabled}))G"
-	check-reqs_pkg_setup
-}
-
-src_unpack() {
-	# Only unpack the main distfile
-	unpack "${P}.tar.gz"
-	bazel_load_distfiles "${bazel_external_uris}"
-}
-
-src_prepare() {
-	export JAVA_HOME=$(ROOT="${BROOT}" java-config --jdk-home)
-
-	# Relax version checks in setup.py
-	sed -i "/^    '/s/==/>=/g" tensorflow/tools/pip_package/setup.py || die
-
-	bazel_setup_bazelrc
-	bazel_setup_crosstool "$(get-cpu-str "${CBUILD}")" "$(get-cpu-str "${CHOST}")"
-
-	default
-	use python && python_copy_sources
-
-	use cuda && cuda_add_sandbox
-}
-
-src_configure() {
-	export JAVA_HOME=$(ROOT="${BROOT}" java-config --jdk-home)
-
-	do_configure() {
-		export CC_OPT_FLAGS=" "
-		export TF_ENABLE_XLA=$(usex xla 1 0)
-		export TF_NEED_OPENCL_SYCL=0
-		export TF_NEED_OPENCL=0
-		export TF_NEED_COMPUTECPP=0
-		export TF_NEED_ROCM=0
-		export TF_NEED_MPI=$(usex mpi 1 0)
-		export TF_SET_ANDROID_WORKSPACE=0
-
-		if use python; then
-			export PYTHON_BIN_PATH="${PYTHON}"
-			export PYTHON_LIB_PATH="$(python_get_sitedir)"
-		else
-			export PYTHON_BIN_PATH="$(which python)"
-			export PYTHON_LIB_PATH="$(python -c 'from distutils.sysconfig import *; print(get_python_lib())')"
-		fi
-
-		export TF_NEED_CUDA=$(usex cuda 1 0)
-		export TF_DOWNLOAD_CLANG=0
-		export TF_CUDA_CLANG=0
-		export TF_NEED_TENSORRT=0
-		if use cuda; then
-			export TF_CUDA_PATHS="${EPREFIX}/opt/cuda"
-			export GCC_HOST_COMPILER_PATH="$(cuda_gccdir)/$(tc-getCC)"
-			export TF_CUDA_VERSION="$(cuda_toolkit_version)"
-			export TF_CUDNN_VERSION="$(cuda_cudnn_version)"
-			einfo "Setting CUDA version: $TF_CUDA_VERSION"
-			einfo "Setting CUDNN version: $TF_CUDNN_VERSION"
-
-			if [[ *$(gcc-version)* != $(cuda-config -s) ]]; then
-				ewarn "TensorFlow is being built with Nvidia CUDA support. Your default compiler"
-				ewarn "version is not supported by the currently installed CUDA. TensorFlow will"
-				ewarn "instead be compiled using: ${GCC_HOST_COMPILER_PATH}."
-				ewarn "If the build fails with linker errors try rebuilding the relevant"
-				ewarn "dependencies using the same compiler version."
-			fi
-
-			if [[ -z "$TF_CUDA_COMPUTE_CAPABILITIES" ]]; then
-				ewarn "WARNING: Tensorflow is being built with its default CUDA compute capabilities: 3.5 and 7.0."
-				ewarn "These may not be optimal for your GPU."
-				ewarn ""
-				ewarn "To configure Tensorflow with the CUDA compute capability that is optimal for your GPU,"
-				ewarn "set TF_CUDA_COMPUTE_CAPABILITIES in your make.conf, and re-emerge tensorflow."
-				ewarn "For example, to use CUDA capability 7.5 & 3.5, add: TF_CUDA_COMPUTE_CAPABILITIES=7.5,3.5"
-				ewarn ""
-				ewarn "You can look up your GPU's CUDA compute capability at https://developer.nvidia.com/cuda-gpus"
-				ewarn "or by running /opt/cuda/extras/demo_suite/deviceQuery | grep 'CUDA Capability'"
-			fi
-		fi
-
-		local SYSLIBS=(
-			absl_py
-			astor_archive
-			astunparse_archive
-			boringssl
-			com_github_googleapis_googleapis
-			com_github_googlecloudplatform_google_cloud_cpp
-			com_github_grpc_grpc
-			com_google_protobuf
-			curl
-			cython
-			dill_archive
-			double_conversion
-			enum34_archive
-			flatbuffers
-			functools32_archive
-			gast_archive
-			gif
-			hwloc
-			icu
-			jsoncpp_git
-			libjpeg_turbo
-			lmdb
-			nasm
-			nsync
-			opt_einsum_archive
-			org_sqlite
-			pasta
-			pcre
-			png
-			pybind11
-			six_archive
-			snappy
-			swig
-			tblib_archive
-			termcolor_archive
-			wrapt
-			zlib
-		)
-
-		export TF_SYSTEM_LIBS="${SYSLIBS[@]}"
-		export TF_IGNORE_MAX_BAZEL_VERSION=1
-
-		# This is not autoconf
-		./configure || die
-
-		echo 'build --config=noaws --config=nohdfs' >> .bazelrc || die
-		echo 'build --define tensorflow_mkldnn_contraction_kernel=0' >> .bazelrc || die
-
-		# The ruy library is faster than the default libeigen on arm, but
-		# MUCH slower on amd64. See b/178593695 for more discussion.
-		case "${ARCH}" in
-			arm | arm64) echo 'build --define=tflite_with_ruy=true' >> .bazelrc || die ;;
-		esac
-	}
-	if use python; then
-		python_foreach_impl run_in_build_dir do_configure
-	else
-		do_configure
-	fi
-}
-
-src_compile() {
-	export JAVA_HOME=$(ROOT="${BROOT}" java-config --jdk-home)
-
-	if use python; then
-		python_setup
-		BUILD_DIR="${S}-${EPYTHON/./_}"
-		cd "${BUILD_DIR}"
-	fi
-
-	# fail early if any deps are missing
-	if ! use minimal; then
-		ebazel build -k --nobuild \
-			//tensorflow:libtensorflow_framework.so \
-			//tensorflow:libtensorflow.so \
-			//tensorflow:libtensorflow_cc.so \
-			$(usex python '//tensorflow/tools/pip_package:build_pip_package' '')
-	else
-		ebazel build -k --nobuild \
-			tensorflow/lite:libtensorflowlite.so \
-			//tensorflow/lite/kernels/internal:install_nnapi_extra_headers \
-			"$(usex label_image '
-				//tensorflow/lite/examples/label_image:label_image' '')" \
-			"$(usex benchmark_model '
-				//tensorflow/lite/tools/benchmark:benchmark_model' '')" \
-			"$(usex python '//tensorflow/tools/pip_package:build_pip_package' '')"
-	fi
-
-	if ! use minimal; then
-		ebazel build \
-			//tensorflow:libtensorflow_framework.so \
-			//tensorflow:libtensorflow.so
-		ebazel build //tensorflow:libtensorflow_cc.so
-	else
-		ebazel build \
-			//tensorflow/lite:libtensorflowlite.so \
-			//tensorflow/lite/kernels/internal:install_nnapi_extra_headers \
-			"$(usex label_image '
-				//tensorflow/lite/examples/label_image:label_image' '')" \
-			"$(usex benchmark_model '
-				//tensorflow/lite/tools/benchmark:benchmark_model' '')"
-	fi
-
-	do_compile() {
-		ebazel build //tensorflow/tools/pip_package:build_pip_package
-	}
-	BUILD_DIR="${S}"
-	cd "${BUILD_DIR}"
-	use python && python_foreach_impl run_in_build_dir do_compile
-	ebazel shutdown
-}
-
-src_install() {
-	local i j
-	export JAVA_HOME=$(ROOT="${BROOT}" java-config --jdk-home)
-
-	if ! use minimal; then
-		do_install() {
-			einfo "Installing ${EPYTHON} files"
-			local srcdir="${T}/src-${MULTIBUILD_VARIANT}"
-			mkdir -p "${srcdir}" || die
-			bazel-bin/tensorflow/tools/pip_package/build_pip_package --src "${srcdir}" || die
-			cd "${srcdir}" || die
-			esetup.py install
-
-			# libtensorflow_framework.so is in /usr/lib already
-			rm -f "${D}/$(python_get_sitedir)"/${PN}/lib${PN}_framework.so* || die
-			rm -f "${D}/$(python_get_sitedir)"/${PN}_core/lib${PN}_framework.so* || die
-			python_optimize
-		}
-
-		if use python; then
-			python_foreach_impl run_in_build_dir do_install
-
-			# Symlink to python-exec scripts
-			for i in "${ED}"/usr/lib/python-exec/*/*; do
-				n="${i##*/}"
-				[[ -e "${ED}/usr/bin/${n}" ]] || dosym ../lib/python-exec/python-exec2 "/usr/bin/${n}"
-			done
-
-			python_setup
-			local BUILD_DIR="${S}-${EPYTHON/./_}"
-			cd "${BUILD_DIR}" || die
-		fi
-
-		einfo "Installing headers"
-		ebazel build //tensorflow:install_headers
-		ebazel shutdown
-		insinto /usr/include/${PN}/
-		doins -r bazel-bin/tensorflow/include/*
-
-		einfo "Installing libs"
-		# Generate pkg-config file
-		${PN}/c/generate-pc.sh --prefix="${EPREFIX}"/usr --libdir=$(get_libdir) --version=${MY_PV} || die
-		insinto /usr/$(get_libdir)/pkgconfig
-		doins ${PN}.pc ${PN}_cc.pc
-
-		for l in libtensorflow{,_framework,_cc}.so; do
-			dolib.so bazel-bin/tensorflow/${l}
-			dolib.so bazel-bin/tensorflow/${l}.$(ver_cut 1)
-			dolib.so bazel-bin/tensorflow/${l}.$(ver_cut 1-3)
-		done
-	else
-		einfo "Installing TF lite headers"
-		# From tensorflow/lite/lib_package/create_ios_frameworks.sh
-		find ${PN}/lite -name "*.h" \
-			-not -path "${PN}/lite/tools/*" \
-			-not -path "${PN}/lite/examples/*" \
-			-not -path "${PN}/lite/gen/*" \
-			-not -path "${PN}/lite/toco/*" \
-			-not -path "${PN}/lite/java/*" |
-		while read -r i; do
-			insinto "/usr/include/${PN}/${i%/*}"
-			doins "${i}"
-		done
-		if use minimal; then
-			einfo "Installing selected TF core headers"
-			local selected=( lib/bfloat16/bfloat16.h platform/byte_order.h platform/macros.h platform/bfloat16.h )
-			for i in "${selected[@]}"; do
-				insinto "/usr/include/${PN}/${PN}/core/${i%/*}"
-				doins "${PN}/core/${i}"
-			done
-		fi
-
-		einfo "Installing NNAPI headers"
-		insinto /usr/include/${PN}/nnapi/
-		doins -r bazel-bin/tensorflow/lite/kernels/internal/include
-
-		einfo "Installing ruy headers"
-		insinto /usr/include/${PN}/ruy/
-		doins -r "../tensorflow-${PV}-bazel-base/external/ruy/ruy"/*
-
-		einfo "Installing TF lite libraries"
-		dolib.so bazel-bin/tensorflow/lite/lib${PN}lite.so
-
-		if use label_image; then
-			einfo "Install label_image example"
-			dobin bazel-bin/tensorflow/lite/examples/label_image/label_image
-		fi
-
-		if use benchmark_model; then
-			einfo "Install benchmark_model tool"
-			dobin bazel-bin/tensorflow/lite/tools/benchmark/benchmark_model
-		fi
-
-		if use xnnpack; then
-			einfo "Installing XNNPACK headers and libs"
-			local bindir="../tensorflow-${PV}-bazel-base/execroot/org_tensorflow/bazel-out/$(get-cpu-str "${CHOST}")-opt/bin/external/"
-			insinto /usr/include/${PN}/xnnpack/
-			doins "../tensorflow-${PV}-bazel-base/external/XNNPACK/include/xnnpack.h"
-			doins "../tensorflow-${PV}-bazel-base/external/pthreadpool/include/pthreadpool.h"
-			dolib.a "${bindir}/clog/libclog.a"
-			dolib.a "${bindir}/cpuinfo/libcpuinfo_impl.pic.a"
-			dolib.a "${bindir}/pthreadpool/libpthreadpool.a"
-			# The lib names vary wildly between amd64 and arm, so
-			# easier just to scan for them rather than explicitly
-			# listing them and switching on ${ARCH}.
-			find "${bindir}/XNNPACK/" -name "*.a" |
-			while read -r i; do
-				dolib.a "${i}"
-			done
-		fi
-
-	fi
-
-	einstalldocs
-}
diff --git a/sci-libs/tensorflow/tensorflow-2.6.0.ebuild b/sci-libs/tensorflow/tensorflow-2.6.0.ebuild
new file mode 100644
index 0000000..77eb6ec
--- /dev/null
+++ b/sci-libs/tensorflow/tensorflow-2.6.0.ebuild
@@ -0,0 +1,494 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_OPTIONAL=1
+PYTHON_COMPAT=( python3_{6,7,8} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+MY_PV=${PV/_rc/-rc}
+MY_P=${PN}-${MY_PV}
+
+# s/bazel/cros-bazel/ instead of bazel to fix downloading dependencies.
+# s/prefix// because ChromeOS doesn't need it.
+inherit cros-bazel check-reqs cuda distutils-r1 flag-o-matic toolchain-funcs
+
+DESCRIPTION="Computation framework using data flow graphs for scalable machine learning"
+HOMEPAGE="https://www.tensorflow.org/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="*"
+# ChromeOS uses 'minimal' to compile only TensorFlow Lite, compilation without 'minimal' is not supported.
+IUSE="cuda mpi +python xla minimal label_image benchmark_model xnnpack"
+
+# distfiles that bazel uses for the workspace, will be copied to basel-distdir
+bazel_external_uris="
+	https://github.com/bazelbuild/platforms/releases/download/0.0.2/platforms-0.0.2.tar.gz -> bazelbuild-platforms-0.0.2.tar.gz
+	https://github.com/bazelbuild/apple_support/archive/501b4afb27745c4813a88ffa28acd901408014e4.tar.gz -> bazelbuild-apple_support-501b4afb27745c4813a88ffa28acd901408014e4.tar.gz
+	https://github.com/bazelbuild/bazel-toolchains/archive/92dd8a7a518a2fb7ba992d47c8b38299fe0be825.tar.gz -> bazel-toolchains-92dd8a7a518a2fb7ba992d47c8b38299fe0be825.tar.gz
+	https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz -> bazel-skylib-1.0.3.tar.gz
+	https://github.com/bazelbuild/rules_android/archive/v0.1.1.zip -> bazelbuild-rules_android-v0.1.1.zip
+	https://github.com/bazelbuild/rules_apple/archive/5131f3d46794bf227d296c82f30c2499c9de3c5b.tar.gz -> bazelbuild-rules_apple-5131f3d46794bf227d296c82f30c2499c9de3c5b.tar.gz
+	https://github.com/bazelbuild/rules_cc/archive/40548a2974f1aea06215272d9c2b47a14a24e556.tar.gz -> bazelbuild-rules_cc-40548a2974f1aea06215272d9c2b47a14a24e556.tar.gz
+	https://github.com/bazelbuild/rules_closure/archive/308b05b2419edb5c8ee0471b67a40403df940149.tar.gz -> bazelbuild-rules_closure-308b05b2419edb5c8ee0471b67a40403df940149.tar.gz
+	https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip -> bazelbuild-rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip
+	https://github.com/bazelbuild/rules_swift/archive/3eeeb53cebda55b349d64c9fc144e18c5f7c0eb8.tar.gz -> bazelbuild-rules_swift-3eeeb53cebda55b349d64c9fc144e18c5f7c0eb8.tar.gz
+	https://github.com/google/farmhash/archive/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz -> farmhash-816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz
+	https://github.com/google/gemmlowp/archive/fda83bdc38b118cc6b56753bd540caa49e570745.zip -> gemmlowp-fda83bdc38b118cc6b56753bd540caa49e570745.zip
+	https://github.com/google/ruy/archive/e6c1b8dc8a8b00ee74e7268aac8b18d7260ab1ce.zip -> ruy-e6c1b8dc8a8b00ee74e7268aac8b18d7260ab1ce.zip
+	https://github.com/intel/ARM_NEON_2_x86_SSE/archive/1200fe90bb174a6224a525ee60148671a786a71f.tar.gz -> ARM_NEON_2_x86_SSE-1200fe90bb174a6224a525ee60148671a786a71f.tar.gz	https://github.com/googleapis/googleapis/archive/541b1ded4abadcc38e8178680b0677f65594ea6f.zip -> googleapis-541b1ded4abadcc38e8178680b0677f65594ea6f.zip
+	https://github.com/petewarden/OouraFFT/archive/v1.0.tar.gz -> OouraFFT-v1.0.tar.gz
+	https://github.com/pytorch/cpuinfo/archive/5916273f79a21551890fd3d56fc5375a78d1598d.zip -> pytorch-cpuinfo-5916273f79a21551890fd3d56fc5375a78d1598d.zip
+	https://github.com/pytorch/cpuinfo/archive/d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz -> pytorch-cpuinfo-d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz
+	https://github.com/Maratyszcza/FP16/archive/4dfe081cf6bcd15db339cf2680b9281b8451eeb3.zip -> FP16-4dfe081cf6bcd15db339cf2680b9281b8451eeb3.zip
+	https://github.com/Maratyszcza/FXdiv/archive/63058eff77e11aa15bf531df5dd34395ec3017c8.zip -> FXdiv-63058eff77e11aa15bf531df5dd34395ec3017c8.zip
+	https://github.com/Maratyszcza/pthreadpool/archive/b8374f80e42010941bda6c85b0e3f1a1bd77a1e0.zip -> pthreadpool-b8374f80e42010941bda6c85b0e3f1a1bd77a1e0.zip
+	https://github.com/tensorflow/toolchains/archive/v1.1.21.tar.gz -> tensorflow_toolchains_v1.1.21.tar.gz
+	https://github.com/tensorflow/runtime/archive/b570a1921c9e55ac53c8972bd2bfd37cd0eb510d.tar.gz -> tf_runtime-b570a1921c9e55ac53c8972bd2bfd37cd0eb510d.tar.gz
+	https://gitlab.com/libeigen/eigen/-/archive/12e8d57108c50d8a63605c6eb0144c838c128337/eigen-12e8d57108c50d8a63605c6eb0144c838c128337.tar.gz -> eigen-12e8d57108c50d8a63605c6eb0144c838c128337.tar.gz
+	https://github.com/KhronosGroup/OpenCL-Headers/archive/0d5f18c6e7196863bc1557a693f1509adfcee056.tar.gz -> OpenCL-Headers-0d5f18c6e7196863bc1557a693f1509adfcee056.tar.gz
+	https://github.com/KhronosGroup/Vulkan-Headers/archive/ec2db85225ab410bc6829251bef6c578aaed5868.tar.gz -> Vulkan-Headers-ec2db85225ab410bc6829251bef6c578aaed5868.tar.gz
+	https://github.com/abseil/abseil-cpp/archive/997aaf3a28308eba1b9156aa35ab7bca9688e9f6.tar.gz -> abseil-cpp-997aaf3a28308eba1b9156aa35ab7bca9688e9f6.tar.gz
+	https://github.com/google/XNNPACK/archive/476eb84d6a8e6f8249d5584d30759c6fbdbf791d.zip -> xnnpack-476eb84d6a8e6f8249d5584d30759c6fbdbf791d.zip
+"
+
+SRC_URI="
+	https://github.com/${PN}/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz
+	${bazel_external_uris}
+	"
+
+RDEPEND="
+	x11-drivers/opengles-headers:=
+	virtual/opengles:=
+	!minimal? (
+		app-arch/snappy
+		dev-db/lmdb
+		dev-db/sqlite
+		dev-libs/double-conversion
+		dev-libs/icu
+		>=dev-libs/jsoncpp-1.9.2
+	)
+	>=dev-libs/flatbuffers-1.12.0:=
+	dev-libs/libpcre
+	!minimal? (
+		dev-libs/nsync
+	)
+	dev-libs/openssl:0=
+	>=dev-libs/protobuf-3.8.0:=
+	>=dev-libs/re2-0.2019.06.01
+	!minimal? (
+		media-libs/giflib
+	)
+	media-libs/libjpeg-turbo
+	media-libs/libpng:0
+	!minimal? (
+		>=net-libs/grpc-1.28
+	)
+	net-misc/curl
+	sys-libs/zlib
+	!minimal? (
+		>=sys-apps/hwloc-2
+	)
+	cuda? (
+		|| (
+			( =dev-util/nvidia-cuda-toolkit-10.2*[profiler] =dev-libs/cudnn-7* )
+			( =dev-util/nvidia-cuda-toolkit-10.1*[profiler] =dev-libs/cudnn-7* )
+			( =dev-util/nvidia-cuda-toolkit-10.0*[profiler] =dev-libs/cudnn-7.4* )
+			( =dev-util/nvidia-cuda-toolkit-9.2*[profiler] =dev-libs/cudnn-7.1* )
+			( =dev-util/nvidia-cuda-toolkit-9.1*[profiler] =dev-libs/cudnn-7.0* )
+		)
+	)
+	mpi? ( virtual/mpi )
+	python? (
+		${PYTHON_DEPS}
+		dev-python/absl-py[${PYTHON_USEDEP}]
+		>=dev-python/astor-0.7.1[${PYTHON_USEDEP}]
+		dev-python/astunparse[${PYTHON_USEDEP}]
+		>=dev-python/gast-0.3.3[${PYTHON_USEDEP}]
+		dev-python/h5py[${PYTHON_USEDEP}]
+		>=dev-python/numpy-1.19[${PYTHON_USEDEP}]
+		>=dev-python/google-pasta-0.1.8[${PYTHON_USEDEP}]
+		dev-python/opt-einsum[${PYTHON_USEDEP}]
+		>=dev-python/protobuf-python-3.8.0[${PYTHON_USEDEP}]
+		dev-python/pybind11[${PYTHON_USEDEP}]
+		dev-python/six[${PYTHON_USEDEP}]
+		dev-python/termcolor[${PYTHON_USEDEP}]
+		>=dev-python/grpcio-1.28[${PYTHON_USEDEP}]
+		>=dev-python/wrapt-1.11.1[${PYTHON_USEDEP}]
+		>=net-libs/google-cloud-cpp-0.10.0
+		>=sci-libs/keras-applications-1.0.8[${PYTHON_USEDEP}]
+		>=sci-libs/keras-preprocessing-1.1.0[${PYTHON_USEDEP}]
+		>=sci-visualization/tensorboard-2.3.0[${PYTHON_USEDEP}]
+		dev-python/dill[${PYTHON_USEDEP}]
+		dev-python/tblib[${PYTHON_USEDEP}]
+	)"
+DEPEND="${RDEPEND}
+	python? (
+		dev-python/mock
+		dev-python/setuptools
+	)"
+PDEPEND="python? (
+		>=sci-libs/tensorflow-estimator-2.3.0[${PYTHON_USEDEP}]
+	)"
+BDEPEND="
+	app-arch/unzip
+	>=dev-libs/protobuf-3.8.0
+	dev-java/java-config
+	dev-lang/swig
+	=dev-util/bazel-3*
+	cuda? (
+		>=dev-util/nvidia-cuda-toolkit-9.1[profiler]
+	)
+	!python? ( dev-lang/python )
+	python? (
+		dev-python/cython
+		dev-python/mock
+		>=dev-python/grpcio-tools-1.28
+	)"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+PATCHES=(
+	"${FILESDIR}/tensorflow-2.6.0-0001-workspace.patch"
+	"${FILESDIR}/tensorflow-2.6.0-0002-ashmem-create.patch"
+	"${FILESDIR}/tensorflow-2.6.0-0003-nnapi-delegates.patch"
+	"${FILESDIR}/tensorflow-2.6.0-0004-cpuinfo-arm-fix.patch"
+	"${FILESDIR}/tensorflow-2.6.0-0005-gpu.patch"
+	"${FILESDIR}/tensorflow-2.6.0-0006-nnapi-loading-errors.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+DOCS=( AUTHORS CONTRIBUTING.md ISSUE_TEMPLATE.md README.md RELEASE.md )
+CHECKREQS_MEMORY="5G"
+CHECKREQS_DISK_BUILD="10G"
+
+# Echos the CPU string that TensorFlow uses to refer to the given architecture.
+get-cpu-str() {
+	local arch
+	arch="$(tc-arch "${1}")"
+
+	case "${arch}" in
+	amd64) echo "k8";;
+	arm) echo "arm";;
+	arm64) echo "aarch64";;
+	*) die "Unsupported architecture '${arch}'."
+	esac
+}
+
+pkg_setup() {
+	local num_pythons_enabled
+	num_pythons_enabled=0
+	count_impls(){
+		num_pythons_enabled=$((${num_pythons_enabled} + 1))
+	}
+	use python && python_foreach_impl count_impls
+
+	# 10G to build C/C++ libs, 5G per python impl
+	CHECKREQS_DISK_BUILD="$((10 + 6 * ${num_pythons_enabled}))G"
+	check-reqs_pkg_setup
+}
+
+src_unpack() {
+	# Only unpack the main distfile
+	unpack "${P}.tar.gz"
+	bazel_load_distfiles "${bazel_external_uris}"
+}
+
+src_prepare() {
+	export JAVA_HOME=$(ROOT="${BROOT}" java-config --jdk-home)
+
+	# Relax version checks in setup.py
+	sed -i "/^    '/s/==/>=/g" tensorflow/tools/pip_package/setup.py || die
+
+	bazel_setup_bazelrc
+	bazel_setup_crosstool "$(get-cpu-str "${CBUILD}")" "$(get-cpu-str "${CHOST}")"
+
+	default
+	use python && python_copy_sources
+
+	use cuda && cuda_add_sandbox
+}
+
+src_configure() {
+	export JAVA_HOME=$(ROOT="${BROOT}" java-config --jdk-home)
+
+	do_configure() {
+		export CC_OPT_FLAGS=" "
+		export TF_ENABLE_XLA=$(usex xla 1 0)
+		export TF_NEED_OPENCL_SYCL=0
+		export TF_NEED_OPENCL=0
+		export TF_NEED_COMPUTECPP=0
+		export TF_NEED_ROCM=0
+		export TF_NEED_MPI=$(usex mpi 1 0)
+		export TF_SET_ANDROID_WORKSPACE=0
+
+		if use python; then
+			export PYTHON_BIN_PATH="${PYTHON}"
+			export PYTHON_LIB_PATH="$(python_get_sitedir)"
+		else
+			export PYTHON_BIN_PATH="$(which python)"
+			export PYTHON_LIB_PATH="$(python -c 'from distutils.sysconfig import *; print(get_python_lib())')"
+		fi
+
+		export TF_NEED_CUDA=$(usex cuda 1 0)
+		export TF_DOWNLOAD_CLANG=0
+		export TF_CUDA_CLANG=0
+		export TF_NEED_TENSORRT=0
+		if use cuda; then
+			export TF_CUDA_PATHS="${EPREFIX}/opt/cuda"
+			export GCC_HOST_COMPILER_PATH="$(cuda_gccdir)/$(tc-getCC)"
+			export TF_CUDA_VERSION="$(cuda_toolkit_version)"
+			export TF_CUDNN_VERSION="$(cuda_cudnn_version)"
+			einfo "Setting CUDA version: $TF_CUDA_VERSION"
+			einfo "Setting CUDNN version: $TF_CUDNN_VERSION"
+
+			if [[ *$(gcc-version)* != $(cuda-config -s) ]]; then
+				ewarn "TensorFlow is being built with Nvidia CUDA support. Your default compiler"
+				ewarn "version is not supported by the currently installed CUDA. TensorFlow will"
+				ewarn "instead be compiled using: ${GCC_HOST_COMPILER_PATH}."
+				ewarn "If the build fails with linker errors try rebuilding the relevant"
+				ewarn "dependencies using the same compiler version."
+			fi
+
+			if [[ -z "$TF_CUDA_COMPUTE_CAPABILITIES" ]]; then
+				ewarn "WARNING: Tensorflow is being built with its default CUDA compute capabilities: 3.5 and 7.0."
+				ewarn "These may not be optimal for your GPU."
+				ewarn ""
+				ewarn "To configure Tensorflow with the CUDA compute capability that is optimal for your GPU,"
+				ewarn "set TF_CUDA_COMPUTE_CAPABILITIES in your make.conf, and re-emerge tensorflow."
+				ewarn "For example, to use CUDA capability 7.5 & 3.5, add: TF_CUDA_COMPUTE_CAPABILITIES=7.5,3.5"
+				ewarn ""
+				ewarn "You can look up your GPU's CUDA compute capability at https://developer.nvidia.com/cuda-gpus"
+				ewarn "or by running /opt/cuda/extras/demo_suite/deviceQuery | grep 'CUDA Capability'"
+			fi
+		fi
+
+		local SYSLIBS=(
+			absl_py
+			astor_archive
+			astunparse_archive
+			boringssl
+			com_github_googleapis_googleapis
+			com_github_googlecloudplatform_google_cloud_cpp
+			com_github_grpc_grpc
+			com_google_protobuf
+			curl
+			cython
+			dill_archive
+			double_conversion
+			enum34_archive
+			flatbuffers
+			functools32_archive
+			gast_archive
+			gif
+			hwloc
+			icu
+			jsoncpp_git
+			libjpeg_turbo
+			lmdb
+			nasm
+			nsync
+			opt_einsum_archive
+			org_sqlite
+			pasta
+			pcre
+			png
+			pybind11
+			six_archive
+			snappy
+			swig
+			tblib_archive
+			termcolor_archive
+			wrapt
+			zlib
+		)
+
+		export TF_SYSTEM_LIBS="${SYSLIBS[@]}"
+		export TF_IGNORE_MAX_BAZEL_VERSION=1
+
+		# This is not autoconf
+		./configure || die
+
+		echo 'build --config=noaws --config=nohdfs' >> .bazelrc || die
+		echo 'build --define tensorflow_mkldnn_contraction_kernel=0' >> .bazelrc || die
+
+		# The ruy library is faster than the default libeigen on arm, but
+		# MUCH slower on amd64. See b/178593695 for more discussion.
+		case "${ARCH}" in
+			arm | arm64) echo 'build --define=tflite_with_ruy=true' >> .bazelrc || die ;;
+		esac
+	}
+	if use python; then
+		python_foreach_impl run_in_build_dir do_configure
+	else
+		do_configure
+	fi
+}
+
+src_compile() {
+	export JAVA_HOME=$(ROOT="${BROOT}" java-config --jdk-home)
+
+	if use python; then
+		python_setup
+		BUILD_DIR="${S}-${EPYTHON/./_}"
+		cd "${BUILD_DIR}"
+	fi
+
+	# fail early if any deps are missing
+	if ! use minimal; then
+		ebazel build -k --nobuild \
+			//tensorflow:libtensorflow_framework.so \
+			//tensorflow:libtensorflow.so \
+			//tensorflow:libtensorflow_cc.so \
+			$(usex python '//tensorflow/tools/pip_package:build_pip_package' '')
+	else
+		ebazel build -k --nobuild \
+			tensorflow/lite:libtensorflowlite.so \
+			//tensorflow/lite/kernels/internal:install_nnapi_extra_headers \
+			"$(usex label_image '
+				//tensorflow/lite/examples/label_image:label_image' '')" \
+			"$(usex benchmark_model '
+				//tensorflow/lite/tools/benchmark:benchmark_model' '')" \
+			"$(usex python '//tensorflow/tools/pip_package:build_pip_package' '')"
+	fi
+
+	if ! use minimal; then
+		ebazel build \
+			//tensorflow:libtensorflow_framework.so \
+			//tensorflow:libtensorflow.so
+		ebazel build //tensorflow:libtensorflow_cc.so
+	else
+		ebazel build --copt=-DTFLITE_SUPPORTS_GPU_DELEGATE=1 --copt=-DEGL_NO_X11 \
+			//tensorflow/lite:libtensorflowlite.so \
+			//tensorflow/lite/kernels/internal:install_nnapi_extra_headers \
+			"$(usex label_image '
+				//tensorflow/lite/examples/label_image:label_image' '')" \
+			"$(usex benchmark_model '
+				//tensorflow/lite/tools/benchmark:benchmark_model' '')"
+	fi
+
+	do_compile() {
+		ebazel build //tensorflow/tools/pip_package:build_pip_package
+	}
+	BUILD_DIR="${S}"
+	cd "${BUILD_DIR}"
+	use python && python_foreach_impl run_in_build_dir do_compile
+	ebazel shutdown
+}
+
+src_install() {
+	local i j
+	export JAVA_HOME=$(ROOT="${BROOT}" java-config --jdk-home)
+
+	if ! use minimal; then
+		do_install() {
+			einfo "Installing ${EPYTHON} files"
+			local srcdir="${T}/src-${MULTIBUILD_VARIANT}"
+			mkdir -p "${srcdir}" || die
+			bazel-bin/tensorflow/tools/pip_package/build_pip_package --src "${srcdir}" || die
+			cd "${srcdir}" || die
+			esetup.py install
+
+			# libtensorflow_framework.so is in /usr/lib already
+			rm -f "${D}/$(python_get_sitedir)"/${PN}/lib${PN}_framework.so* || die
+			rm -f "${D}/$(python_get_sitedir)"/${PN}_core/lib${PN}_framework.so* || die
+			python_optimize
+		}
+
+		if use python; then
+			python_foreach_impl run_in_build_dir do_install
+
+			# Symlink to python-exec scripts
+			for i in "${ED}"/usr/lib/python-exec/*/*; do
+				n="${i##*/}"
+				[[ -e "${ED}/usr/bin/${n}" ]] || dosym ../lib/python-exec/python-exec2 "/usr/bin/${n}"
+			done
+
+			python_setup
+			local BUILD_DIR="${S}-${EPYTHON/./_}"
+			cd "${BUILD_DIR}" || die
+		fi
+
+		einfo "Installing headers"
+		ebazel build //tensorflow:install_headers
+		ebazel shutdown
+		insinto /usr/include/${PN}/
+		doins -r bazel-bin/tensorflow/include/*
+
+		einfo "Installing libs"
+		# Generate pkg-config file
+		${PN}/c/generate-pc.sh --prefix="${EPREFIX}"/usr --libdir=$(get_libdir) --version=${MY_PV} || die
+		insinto /usr/$(get_libdir)/pkgconfig
+		doins ${PN}.pc ${PN}_cc.pc
+
+		for l in libtensorflow{,_framework,_cc}.so; do
+			dolib.so bazel-bin/tensorflow/${l}
+			dolib.so bazel-bin/tensorflow/${l}.$(ver_cut 1)
+			dolib.so bazel-bin/tensorflow/${l}.$(ver_cut 1-3)
+		done
+	else
+		einfo "Installing TF lite headers"
+		# From tensorflow/lite/lib_package/create_ios_frameworks.sh
+		find ${PN}/lite -name "*.h" \
+			-not -path "${PN}/lite/tools/*" \
+			-not -path "${PN}/lite/examples/*" \
+			-not -path "${PN}/lite/gen/*" \
+			-not -path "${PN}/lite/toco/*" \
+			-not -path "${PN}/lite/java/*" |
+		while read -r i; do
+			insinto "/usr/include/${PN}/${i%/*}"
+			doins "${i}"
+		done
+		if use minimal; then
+			einfo "Installing selected TF core headers"
+			local selected=( lib/bfloat16/bfloat16.h platform/byte_order.h platform/macros.h platform/bfloat16.h )
+			for i in "${selected[@]}"; do
+				insinto "/usr/include/${PN}/${PN}/core/${i%/*}"
+				doins "${PN}/core/${i}"
+			done
+		fi
+
+		einfo "Installing NNAPI headers"
+		insinto /usr/include/${PN}/nnapi/
+		doins -r bazel-bin/tensorflow/lite/kernels/internal/include
+
+		einfo "Installing ruy headers"
+		insinto /usr/include/${PN}/ruy/
+		doins -r "../tensorflow-${PV}-bazel-base/external/ruy/ruy"/*
+
+		einfo "Installing TF lite libraries"
+		dolib.so bazel-bin/tensorflow/lite/lib${PN}lite.so
+
+		if use label_image; then
+			einfo "Install label_image example"
+			dobin bazel-bin/tensorflow/lite/examples/label_image/label_image
+		fi
+
+		if use benchmark_model; then
+			einfo "Install benchmark_model tool"
+			dobin bazel-bin/tensorflow/lite/tools/benchmark/benchmark_model
+		fi
+
+		if use xnnpack; then
+			einfo "Installing XNNPACK headers and libs"
+			local bindir="../tensorflow-${PV}-bazel-base/execroot/org_tensorflow/bazel-out/$(get-cpu-str "${CHOST}")-opt/bin/external/"
+			insinto /usr/include/${PN}/xnnpack/
+			doins "../tensorflow-${PV}-bazel-base/external/XNNPACK/include/xnnpack.h"
+			doins "../tensorflow-${PV}-bazel-base/external/pthreadpool/include/pthreadpool.h"
+			dolib.a "${bindir}/clog/libclog.a"
+			dolib.a "${bindir}/cpuinfo/libcpuinfo_impl.pic.a"
+			dolib.a "${bindir}/pthreadpool/libpthreadpool.a"
+			# The lib names vary wildly between amd64 and arm, so
+			# easier just to scan for them rather than explicitly
+			# listing them and switching on ${ARCH}.
+			find "${bindir}/XNNPACK/" -name "*.a" |
+			while read -r i; do
+				dolib.a "${i}"
+			done
+		fi
+
+	fi
+
+	einstalldocs
+}
diff --git a/sys-apps/aver-updater/aver-updater-0.0.1-r22.ebuild b/sys-apps/aver-updater/aver-updater-0.0.1-r22.ebuild
deleted file mode 100644
index dd93abd..0000000
--- a/sys-apps/aver-updater/aver-updater-0.0.1-r22.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="6e643d64f634f83f3ba7233f4fb4869e38a306e5"
-CROS_WORKON_TREE="d02c7c4fa5cc0fa3c52fe5f9d0bc24e4d3fd786c"
-CROS_WORKON_PROJECT="chromiumos/third_party/aver-updater"
-
-inherit cros-workon cros-common.mk libchrome udev user
-
-DESCRIPTION="AVer firmware updater"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/aver-updater"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND="
-	chromeos-base/libbrillo:=
-"
-
-DEPEND="${RDEPEND}"
-
-src_configure() {
-	# Disable tautological-compare warnings, crbug.com/1042142
-	append-cppflags "-Wno-tautological-compare"
-	cros-common.mk_src_configure
-	default
-}
-
-src_install() {
-	dosbin "${OUT}/aver-updater"
-	udev_dorules conf/99-run-aver-updater.rules
-}
-
-pkg_preinst() {
-	enewuser cfm-firmware-updaters
-	enewgroup cfm-firmware-updaters
-}
diff --git a/sys-apps/aver-updater/aver-updater-0.0.1-r23.ebuild b/sys-apps/aver-updater/aver-updater-0.0.1-r23.ebuild
new file mode 100644
index 0000000..58fe19c
--- /dev/null
+++ b/sys-apps/aver-updater/aver-updater-0.0.1-r23.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="8f41f40860e9fce20c15ed982e6042191c14be70"
+CROS_WORKON_TREE="1ac27b05306f3b75d870043a7b16a2076e30e196"
+CROS_WORKON_PROJECT="chromiumos/third_party/aver-updater"
+
+inherit cros-workon cros-common.mk libchrome udev user
+
+DESCRIPTION="AVer firmware updater"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/aver-updater"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	chromeos-base/libbrillo:=
+"
+
+DEPEND="${RDEPEND}"
+
+src_configure() {
+	# Disable tautological-compare warnings, crbug.com/1042142
+	append-cppflags "-Wno-tautological-compare"
+	cros-common.mk_src_configure
+	default
+}
+
+src_install() {
+	dosbin "${OUT}/aver-updater"
+	udev_dorules conf/99-run-aver-updater.rules
+}
+
+pkg_preinst() {
+	enewuser cfm-firmware-updaters
+	enewgroup cfm-firmware-updaters
+}
diff --git a/sys-apps/coreboot-utils/coreboot-utils-0.0.1-r4889.ebuild b/sys-apps/coreboot-utils/coreboot-utils-0.0.1-r4889.ebuild
deleted file mode 100644
index d7d0842..0000000
--- a/sys-apps/coreboot-utils/coreboot-utils-0.0.1-r4889.ebuild
+++ /dev/null
@@ -1,111 +0,0 @@
-# Copyright 2012 The Chromium OS Authors
-# Distributed under the terms of the GNU General Public License v2
-# $Header:
-
-EAPI=7
-CROS_WORKON_COMMIT=("08aff2250e3b459da8094f03e5bea60ed78c413a" "600c679cd66265a54ee63b1747abfff6f94a25ad")
-CROS_WORKON_TREE=("799331977582570b4553d5b8ecf53f17828b8175" "0e26966d3f2069b8ac7134030bcdf1022620e54b" "68a5efcfa8adcf49f7e7b213e8693b754999b180" "7970bef34ce4d0b3023def52ff72e1c4cd2eca85" "1f141a99a47f4c9edd8fdf11508f24cee865b31e" "2928430a62aab173b801749223f89a315b2f5e1c" "c4524c42dcd8ee9f61dc34d99e71983e065c591c" "181b7ecc670fb8b8481356d96e48592587a73c68" "e03866d9ecdf3529248f3d4bd0b63499a092f2c3" "974edbc79de4f730edf8c9d01bc9186f97417f1d" "bfef75f3a17da232f402e1799b42c25c2b1c5176" "327b75387dd5fa21a18900c37c6017c6378024be" "f0e6fefacbfcbd78417e52a97ba25032cf8fa1ed" "357d07fc1526ad76c1a186e437b7736e3a254d65" "2d58e3830d3fc4159e3f127522d8f7b1bee5c8d7" "362eda536c1c8032f60673bd7943efd3bd9dfb7a")
-CROS_WORKON_PROJECT=(
-	"chromiumos/third_party/coreboot"
-	"chromiumos/platform/vboot_reference"
-)
-CROS_WORKON_LOCALNAME=(
-	"coreboot"
-	"../platform/vboot_reference"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}"
-	"${S}/3rdparty/vboot"
-)
-CROS_WORKON_EGIT_BRANCH=(
-	"chromeos-2016.05"
-	"main"
-)
-
-# coreboot:src/arch/x85/include/arch: used by inteltool, x86 only
-# coreboot:src/commonlib: used by cbfstool
-# coreboot:src/vendorcode/intel: used by cbfstool
-# coreboot:util/*: tools built by this ebuild
-# vboot: minimum set of files and directories to build vboot_lib for cbfstool
-CROS_WORKON_SUBTREE=(
-	"src/arch/x86/include/arch src/commonlib src/vendorcode/intel util/archive util/cbmem util/cbfstool util/ifdtool util/inteltool util/mma util/nvramtool util/superiotool"
-	"Makefile cgpt host firmware futility"
-)
-
-inherit cros-workon toolchain-funcs
-
-DESCRIPTION="Utilities for modifying coreboot firmware images"
-HOMEPAGE="http://coreboot.org"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-IUSE="cros_host mma +pci static"
-
-LIB_DEPEND="sys-apps/pciutils[static-libs(+)]"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-DEPEND="${RDEPEND}
-	static? ( ${LIB_DEPEND} )
-"
-
-_emake() {
-	emake \
-		TOOLLDFLAGS="${LDFLAGS}" \
-		CC="${CC}" \
-		STRIP="true" \
-		"$@"
-}
-
-src_configure() {
-	use static && append-ldflags -static
-	tc-export CC PKG_CONFIG
-}
-
-is_x86() {
-	use x86 || use amd64
-}
-
-src_compile() {
-	_emake -C util/cbfstool obj="${PWD}/util/cbfstool"
-	if use cros_host; then
-		_emake -C util/archive HOSTCC="${CC}"
-	else
-		_emake -C util/cbmem
-	fi
-	if is_x86; then
-		if use cros_host; then
-			_emake -C util/ifdtool
-		else
-			_emake -C util/superiotool \
-				CONFIG_PCI=$(usex pci)
-			_emake -C util/inteltool
-			_emake -C util/nvramtool
-		fi
-	fi
-}
-
-src_install() {
-	dobin util/cbfstool/cbfstool
-	if use cros_host; then
-		dobin util/cbfstool/fmaptool
-		dobin util/cbfstool/cbfs-compression-tool
-		dobin util/archive/archive
-	else
-		dobin util/cbmem/cbmem
-	fi
-	if is_x86; then
-		if use cros_host; then
-			dobin util/ifdtool/ifdtool
-		else
-			dobin util/superiotool/superiotool
-			dobin util/inteltool/inteltool
-			dobin util/nvramtool/nvramtool
-		fi
-		if use mma; then
-			dobin util/mma/mma_setup_test.sh
-			dobin util/mma/mma_get_result.sh
-			dobin util/mma/mma_automated_test.sh
-			insinto /etc/init
-			doins util/mma/mma.conf
-		fi
-	fi
-}
diff --git a/sys-apps/coreboot-utils/coreboot-utils-0.0.1-r4954.ebuild b/sys-apps/coreboot-utils/coreboot-utils-0.0.1-r4954.ebuild
new file mode 100644
index 0000000..8984cea
--- /dev/null
+++ b/sys-apps/coreboot-utils/coreboot-utils-0.0.1-r4954.ebuild
@@ -0,0 +1,112 @@
+# Copyright 2012 The Chromium OS Authors
+# Distributed under the terms of the GNU General Public License v2
+# $Header:
+
+EAPI=7
+CROS_WORKON_COMMIT=("925a3a4f5836e2f6f696975cf52c0ff6c86c9309" "1269365169791c65a6bf6f364583209195874138")
+CROS_WORKON_TREE=("2f56f33e4ca7509f5fa6b97968a3843243c9efdd" "d9fab03566b4b3ee492eb67fe08412a113049445" "d560fabd78baf38e2487941eda393729364c82fe" "7970bef34ce4d0b3023def52ff72e1c4cd2eca85" "601ee39c125f29e5fec3aaa576fd358acdb862b2" "c0d566400f6112c9842142ff0c10cee8f082ad66" "66841836ab184dcc27bd8c7e8afc96468aa820e1" "86fbdc9951820efeae7d46bfd27307a4590b2609" "e03866d9ecdf3529248f3d4bd0b63499a092f2c3" "974edbc79de4f730edf8c9d01bc9186f97417f1d" "bfef75f3a17da232f402e1799b42c25c2b1c5176" "82d6a44aa0a9c6ae58f89895a32bfe59393f5760" "20540235deec2fd668c673d3410390c6017aba39" "563961bd6bcd89bbe3dd5d978926033fb1eaf02d" "cbedc36a46cb53fabc6446e2a6434b41a091c498" "c352b35303d45386dd3952e107f76cb519c5b4e9")
+CROS_WORKON_PROJECT=(
+	"chromiumos/third_party/coreboot"
+	"chromiumos/platform/vboot_reference"
+)
+CROS_WORKON_LOCALNAME=(
+	"coreboot"
+	"../platform/vboot_reference"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}"
+	"${S}/3rdparty/vboot"
+)
+CROS_WORKON_EGIT_BRANCH=(
+	"chromeos-2016.05"
+	"main"
+)
+
+# coreboot:src/arch/x85/include/arch: used by inteltool, x86 only
+# coreboot:src/commonlib: used by cbfstool
+# coreboot:src/vendorcode/intel: used by cbfstool
+# coreboot:util/*: tools built by this ebuild
+# vboot: minimum set of files and directories to build vboot_lib for cbfstool
+CROS_WORKON_SUBTREE=(
+	"src/arch/x86/include/arch src/commonlib src/vendorcode/intel util/archive util/cbmem util/cbfstool util/ifdtool util/inteltool util/mma util/nvramtool util/superiotool"
+	"Makefile cgpt host firmware futility"
+)
+
+inherit cros-workon toolchain-funcs
+
+DESCRIPTION="Utilities for modifying coreboot firmware images"
+HOMEPAGE="http://coreboot.org"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+IUSE="cros_host mma +pci static"
+
+LIB_DEPEND="sys-apps/pciutils[static-libs(+)]"
+RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
+DEPEND="${RDEPEND}
+	static? ( ${LIB_DEPEND} )
+"
+
+_emake() {
+	emake \
+		TOOLLDFLAGS="${LDFLAGS}" \
+		CC="${CC}" \
+		STRIP="true" \
+		"$@"
+}
+
+src_configure() {
+	use static && append-ldflags -static
+	tc-export CC PKG_CONFIG
+}
+
+is_x86() {
+	use x86 || use amd64
+}
+
+src_compile() {
+	_emake -C util/cbfstool obj="${PWD}/util/cbfstool"
+	if use cros_host; then
+		_emake -C util/archive HOSTCC="${CC}"
+	else
+		_emake -C util/cbmem
+	fi
+	if is_x86; then
+		if use cros_host; then
+			_emake -C util/ifdtool
+		else
+			_emake -C util/superiotool \
+				CONFIG_PCI=$(usex pci)
+			_emake -C util/inteltool
+			_emake -C util/nvramtool
+		fi
+	fi
+}
+
+src_install() {
+	dobin util/cbfstool/cbfstool
+	dobin util/cbfstool/elogtool
+	if use cros_host; then
+		dobin util/cbfstool/fmaptool
+		dobin util/cbfstool/cbfs-compression-tool
+		dobin util/archive/archive
+	else
+		dobin util/cbmem/cbmem
+	fi
+	if is_x86; then
+		if use cros_host; then
+			dobin util/ifdtool/ifdtool
+		else
+			dobin util/superiotool/superiotool
+			dobin util/inteltool/inteltool
+			dobin util/nvramtool/nvramtool
+		fi
+		if use mma; then
+			dobin util/mma/mma_setup_test.sh
+			dobin util/mma/mma_get_result.sh
+			dobin util/mma/mma_automated_test.sh
+			insinto /etc/init
+			doins util/mma/mma.conf
+		fi
+	fi
+}
diff --git a/sys-apps/coreboot-utils/coreboot-utils-9999.ebuild b/sys-apps/coreboot-utils/coreboot-utils-9999.ebuild
index 8191550..48a14e7 100644
--- a/sys-apps/coreboot-utils/coreboot-utils-9999.ebuild
+++ b/sys-apps/coreboot-utils/coreboot-utils-9999.ebuild
@@ -83,6 +83,7 @@
 
 src_install() {
 	dobin util/cbfstool/cbfstool
+	dobin util/cbfstool/elogtool
 	if use cros_host; then
 		dobin util/cbfstool/fmaptool
 		dobin util/cbfstool/cbfs-compression-tool
diff --git a/sys-apps/daisydog/daisydog-0.0.1-r31.ebuild b/sys-apps/daisydog/daisydog-0.0.1-r31.ebuild
deleted file mode 100644
index a1b62a2..0000000
--- a/sys-apps/daisydog/daisydog-0.0.1-r31.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="387aa374551913374e9fac1b7bd1ffec896d5f72"
-CROS_WORKON_TREE="7a2f69d271925735904e8f921ddbc5dbd17e77ac"
-CROS_WORKON_PROJECT="chromiumos/third_party/daisydog"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-
-inherit cros-workon toolchain-funcs user
-
-DESCRIPTION="Simple HW watchdog daemon"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/daisydog"
-
-LICENSE="GPL-2"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-src_prepare() {
-	mkdir -p "$(cros-workon_get_build_dir)"
-	default
-}
-
-src_configure() {
-	tc-export CC
-	default
-}
-
-_emake() {
-	emake -C "$(cros-workon_get_build_dir)" \
-		top_srcdir="${S}" -f "${S}"/Makefile "$@"
-}
-
-src_compile() {
-	_emake
-}
-
-src_install() {
-	_emake DESTDIR="${D}" install
-}
-
-pkg_preinst() {
-	enewuser watchdog
-	enewgroup watchdog
-}
diff --git a/sys-apps/daisydog/daisydog-0.0.1-r32.ebuild b/sys-apps/daisydog/daisydog-0.0.1-r32.ebuild
new file mode 100644
index 0000000..56bb51db
--- /dev/null
+++ b/sys-apps/daisydog/daisydog-0.0.1-r32.ebuild
@@ -0,0 +1,46 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="4b0c966fb6a35eabd6f06633a5c48ecff27ce2a5"
+CROS_WORKON_TREE="8c8ad8ed7b4a24dca5f8e8086ae4e338f4aa159e"
+CROS_WORKON_PROJECT="chromiumos/third_party/daisydog"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+
+inherit cros-workon toolchain-funcs user
+
+DESCRIPTION="Simple HW watchdog daemon"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/daisydog"
+
+LICENSE="GPL-2"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+src_prepare() {
+	mkdir -p "$(cros-workon_get_build_dir)"
+	default
+}
+
+src_configure() {
+	tc-export CC
+	default
+}
+
+_emake() {
+	emake -C "$(cros-workon_get_build_dir)" \
+		top_srcdir="${S}" -f "${S}"/Makefile "$@"
+}
+
+src_compile() {
+	_emake
+}
+
+src_install() {
+	_emake DESTDIR="${D}" install
+}
+
+pkg_preinst() {
+	enewuser watchdog
+	enewgroup watchdog
+}
diff --git a/sys-apps/fitpicker/fitpicker-0.0.1-r2108.ebuild b/sys-apps/fitpicker/fitpicker-0.0.1-r2108.ebuild
deleted file mode 100644
index ca7bea8..0000000
--- a/sys-apps/fitpicker/fitpicker-0.0.1-r2108.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-CROS_WORKON_COMMIT="f34cf3a06f7b17b7829185630d886a5d9d3f0e75"
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "4ece3f8f3d85b6237e276452a02c7c6044463211" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
-CROS_WORKON_PROJECT="chromiumos/platform2"
-CROS_WORKON_LOCALNAME="../platform2"
-CROS_WORKON_DESTDIR="${S}"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_SUBTREE="common-mk fitpicker .gn"
-
-PLATFORM_SUBDIR="fitpicker"
-
-inherit cros-workon platform
-
-DESCRIPTION="Utility for picking a kernel/device tree from a FIT image."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/fitpicker/"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND=">=sys-apps/dtc-1.4.1"
-DEPEND="${RDEPEND}"
-
-src_install() {
-	dobin "${OUT}"/fitpicker
-}
diff --git a/sys-apps/fitpicker/fitpicker-0.0.1-r2133.ebuild b/sys-apps/fitpicker/fitpicker-0.0.1-r2133.ebuild
new file mode 100644
index 0000000..51e99b8
--- /dev/null
+++ b/sys-apps/fitpicker/fitpicker-0.0.1-r2133.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CROS_WORKON_COMMIT="5bbbe52a139486abcbd802b9bd3f6763dac479b3"
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "4ece3f8f3d85b6237e276452a02c7c6044463211" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
+CROS_WORKON_PROJECT="chromiumos/platform2"
+CROS_WORKON_LOCALNAME="../platform2"
+CROS_WORKON_DESTDIR="${S}"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_SUBTREE="common-mk fitpicker .gn"
+
+PLATFORM_SUBDIR="fitpicker"
+
+inherit cros-workon platform
+
+DESCRIPTION="Utility for picking a kernel/device tree from a FIT image."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/fitpicker/"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND=">=sys-apps/dtc-1.4.1"
+DEPEND="${RDEPEND}"
+
+src_install() {
+	dobin "${OUT}"/fitpicker
+}
diff --git a/sys-apps/flashmap/flashmap-0.3-r35.ebuild b/sys-apps/flashmap/flashmap-0.3-r35.ebuild
deleted file mode 100644
index 26a39ea..0000000
--- a/sys-apps/flashmap/flashmap-0.3-r35.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 2011 The Chromium OS Authors
-# Distributed under the terms of the GNU General Public License v2
-# $Header:
-
-EAPI=7
-CROS_WORKON_COMMIT="2f7b2e16f588dde75a0c9c28175f16b8cb9e11dc"
-CROS_WORKON_TREE="6fdc81bee0326e66662115d9bda50159bf41db9f"
-CROS_WORKON_PROJECT="chromiumos/third_party/flashmap"
-
-PYTHON_COMPAT=( python2_7 python3_{4,5,6,7} )
-
-inherit cros-workon toolchain-funcs python-r1
-
-DESCRIPTION="Utility for manipulating firmware ROM mapping data structure"
-HOMEPAGE="http://flashmap.googlecode.com"
-SRC_URI=""
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="python"
-
-RDEPEND="python? ( ${PYTHON_DEPS} )"
-DEPEND="${RDEPEND}"
-
-# Disable unit testing for now because one of the test cases for detecting
-# buffer overflow causes emake to fail when fmap_test is run.
-# RESTRICT="test" will override FEATURES="test" and will also cause
-# src_test() to be ignored by relevant scripts.
-RESTRICT="test"
-
-src_configure() {
-	tc-export AR CC LD NM STRIP OBJCOPY
-}
-
-src_test() {
-	# default "test" target uses lcov, so "test_only" was added to only
-	# build and run the test without generating coverage statistics
-	emake test_only
-}
-
-src_install() {
-	emake LIBDIR=$(get_libdir) DESTDIR="${D}" USE_PKG_CONFIG=1 install
-
-	if use python; then
-		install_python() {
-			insinto "$(python_get_sitedir)"
-			doins "fmap.py"
-		}
-		python_foreach_impl install_python
-	fi
-}
diff --git a/sys-apps/flashmap/flashmap-0.3-r36.ebuild b/sys-apps/flashmap/flashmap-0.3-r36.ebuild
new file mode 100644
index 0000000..4b7aeab
--- /dev/null
+++ b/sys-apps/flashmap/flashmap-0.3-r36.ebuild
@@ -0,0 +1,51 @@
+# Copyright 2011 The Chromium OS Authors
+# Distributed under the terms of the GNU General Public License v2
+# $Header:
+
+EAPI=7
+CROS_WORKON_COMMIT="9c71c8331ad52a11d29496ffb10cbdb1a51e2ccb"
+CROS_WORKON_TREE="63eebcb098106693e29bbce840fedce94e297da6"
+CROS_WORKON_PROJECT="chromiumos/third_party/flashmap"
+
+PYTHON_COMPAT=( python2_7 python3_{4,5,6,7} )
+
+inherit cros-workon toolchain-funcs python-r1
+
+DESCRIPTION="Utility for manipulating firmware ROM mapping data structure"
+HOMEPAGE="http://flashmap.googlecode.com"
+SRC_URI=""
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="python"
+
+RDEPEND="python? ( ${PYTHON_DEPS} )"
+DEPEND="${RDEPEND}"
+
+# Disable unit testing for now because one of the test cases for detecting
+# buffer overflow causes emake to fail when fmap_test is run.
+# RESTRICT="test" will override FEATURES="test" and will also cause
+# src_test() to be ignored by relevant scripts.
+RESTRICT="test"
+
+src_configure() {
+	tc-export AR CC LD NM STRIP OBJCOPY
+}
+
+src_test() {
+	# default "test" target uses lcov, so "test_only" was added to only
+	# build and run the test without generating coverage statistics
+	emake test_only
+}
+
+src_install() {
+	emake LIBDIR=$(get_libdir) DESTDIR="${D}" USE_PKG_CONFIG=1 install
+
+	if use python; then
+		install_python() {
+			insinto "$(python_get_sitedir)"
+			doins "fmap.py"
+		}
+		python_foreach_impl install_python
+	fi
+}
diff --git a/sys-apps/flashrom-tester/flashrom-tester-1.6.0-r59.ebuild b/sys-apps/flashrom-tester/flashrom-tester-1.6.0-r59.ebuild
deleted file mode 100644
index 1f402af..0000000
--- a/sys-apps/flashrom-tester/flashrom-tester-1.6.0-r59.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="99b95501ed31eee1b73a45018bf70aa1b41ade9a"
-CROS_WORKON_TREE="0b4dc5d2acaf537f04737355784e7261d7031408"
-CROS_RUST_SUBDIR="util/flashrom_tester"
-
-CROS_WORKON_USE_VCSID="1"
-CROS_WORKON_PROJECT="chromiumos/third_party/flashrom"
-CROS_WORKON_EGIT_BRANCH="master"
-CROS_WORKON_LOCALNAME="flashrom"
-CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
-
-inherit cros-workon cros-rust
-
-DESCRIPTION="Utility for AVL qualification of SPI flash chips with flashrom"
-HOMEPAGE="https://www.flashrom.org/Flashrom"
-
-LICENSE="GPL-2"
-KEYWORDS="*"
-DEPEND=">=dev-rust/rand-0.6.4:=
-	=dev-rust/chrono-0.4*:=
-	=dev-rust/clap-2.33*:=
-	=dev-rust/libc-0.2*:=
-	=dev-rust/log-0.4*:=
-	=dev-rust/built-0.3*:=
-	=dev-rust/sys-info-0.5.7:=
-	=dev-rust/serde_json-1*:=
-"
-
-RDEPEND="!<=sys-apps/flashrom-tester-1.60-r41"
-
-src_compile() {
-	# Override HOST_CFLAGS so that build dependencies use the correct
-	# flags on cross-compiled targets using cc-rs.
-	tc-export_build_env
-	export HOST_CFLAGS="${BUILD_CFLAGS}"
-	ecargo_build
-	if use test; then
-		ecargo_test --no-run --workspace
-	fi
-}
-
-src_test() {
-	cros-rust_src_test --workspace
-}
-
-src_install() {
-	dobin "$(cros-rust_get_build_dir)/flashrom_tester"
-}
diff --git a/sys-apps/flashrom-tester/flashrom-tester-1.6.0-r60.ebuild b/sys-apps/flashrom-tester/flashrom-tester-1.6.0-r60.ebuild
new file mode 100644
index 0000000..9614661
--- /dev/null
+++ b/sys-apps/flashrom-tester/flashrom-tester-1.6.0-r60.ebuild
@@ -0,0 +1,52 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="7a53838cb5fe23d8bdaa615e717b49b0221e077c"
+CROS_WORKON_TREE="0b4dc5d2acaf537f04737355784e7261d7031408"
+CROS_RUST_SUBDIR="util/flashrom_tester"
+
+CROS_WORKON_USE_VCSID="1"
+CROS_WORKON_PROJECT="chromiumos/third_party/flashrom"
+CROS_WORKON_EGIT_BRANCH="master"
+CROS_WORKON_LOCALNAME="flashrom"
+CROS_WORKON_SUBTREE="${CROS_RUST_SUBDIR}"
+
+inherit cros-workon cros-rust
+
+DESCRIPTION="Utility for AVL qualification of SPI flash chips with flashrom"
+HOMEPAGE="https://www.flashrom.org/Flashrom"
+
+LICENSE="GPL-2"
+KEYWORDS="*"
+DEPEND="=dev-rust/rand-0.6*:=
+	=dev-rust/chrono-0.4*:=
+	=dev-rust/clap-2.33*:=
+	=dev-rust/libc-0.2*:=
+	=dev-rust/log-0.4*:=
+	=dev-rust/built-0.3*:=
+	=dev-rust/sys-info-0.5.7:=
+	=dev-rust/serde_json-1*:=
+"
+
+RDEPEND="!<=sys-apps/flashrom-tester-1.60-r41"
+
+src_compile() {
+	# Override HOST_CFLAGS so that build dependencies use the correct
+	# flags on cross-compiled targets using cc-rs.
+	tc-export_build_env
+	export HOST_CFLAGS="${BUILD_CFLAGS}"
+	ecargo_build
+	if use test; then
+		ecargo_test --no-run --workspace
+	fi
+}
+
+src_test() {
+	cros-rust_src_test --workspace
+}
+
+src_install() {
+	dobin "$(cros-rust_get_build_dir)/flashrom_tester"
+}
diff --git a/sys-apps/flashrom-tester/flashrom-tester-9999.ebuild b/sys-apps/flashrom-tester/flashrom-tester-9999.ebuild
index db7cbdd..f5477f5 100644
--- a/sys-apps/flashrom-tester/flashrom-tester-9999.ebuild
+++ b/sys-apps/flashrom-tester/flashrom-tester-9999.ebuild
@@ -18,7 +18,7 @@
 
 LICENSE="GPL-2"
 KEYWORDS="~*"
-DEPEND=">=dev-rust/rand-0.6.4:=
+DEPEND="=dev-rust/rand-0.6*:=
 	=dev-rust/chrono-0.4*:=
 	=dev-rust/clap-2.33*:=
 	=dev-rust/libc-0.2*:=
diff --git a/sys-apps/flashrom/flashrom-0.9.9-r1244.ebuild b/sys-apps/flashrom/flashrom-0.9.9-r1244.ebuild
deleted file mode 100644
index c1745e3..0000000
--- a/sys-apps/flashrom/flashrom-0.9.9-r1244.ebuild
+++ /dev/null
@@ -1,164 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/flashrom/flashrom-0.9.4.ebuild,v 1.5 2011/09/20 16:03:21 nativemad Exp $
-
-EAPI=7
-CROS_WORKON_COMMIT="2a82136462df1924f52d6e2efea5cb8844edbb73"
-CROS_WORKON_TREE="6b9f4673e9d065a9f4cad040ace211b94d9e7bef"
-CROS_WORKON_PROJECT="chromiumos/third_party/flashrom"
-CROS_WORKON_EGIT_BRANCH="master"
-
-inherit cros-workon toolchain-funcs meson
-
-DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
-HOMEPAGE="https://flashrom.org/"
-#SRC_URI="http://download.flashrom.org/releases/${P}.tar.bz2"
-SRC_URI=""
-
-LICENSE="GPL-2"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="
-	atahpt
-	atapromise
-	+atavia
-	+buspirate_spi
-	+ch341a_spi
-	dediprog
-	+developerbox_spi
-	+digilent_spi
-	+drkaiser
-	+dummy
-	ene_lpc
-	+ft2232_spi
-	+gfxnvidia
-	+internal
-	+it8212
-	jlink_spi
-	+linux_mtd
-	+linux_spi
-	+lspcon_i2c_spi
-	mec1308
-	mstarddc_spi
-	+nic3com
-	+nicintel
-	+nicintel_eeprom
-	+nicintel_spi
-	+nicnatsemi
-	+nicrealtek
-	+ogp_spi
-	+pickit2_spi
-	+pony_spi
-	+raiden_debug_spi
-	+rayer_spi
-	+realtek_mst_i2c_spi
-	+satasii
-	+satamv
-	+serprog static
-	+stlinkv3_spi
-	test
-	+usbblaster_spi
-	+wiki
-"
-
-LIB_DEPEND="
-	atahpt? ( sys-apps/pciutils[static-libs(+)] )
-	atapromise? ( sys-apps/pciutils[static-libs(+)] )
-	atavia? ( sys-apps/pciutils[static-libs(+)] )
-	ch341a_spi? ( virtual/libusb:1[static-libs(+)] )
-	dediprog? ( virtual/libusb:1[static-libs(+)] )
-	developerbox_spi? ( virtual/libusb:1[static-libs(+)] )
-	digilent_spi? ( virtual/libusb:1[static-libs(+)] )
-	drkaiser? ( sys-apps/pciutils[static-libs(+)] )
-	ft2232_spi? ( dev-embedded/libftdi:=[static-libs(+)] )
-	gfxnvidia? ( sys-apps/pciutils[static-libs(+)] )
-	internal? ( sys-apps/pciutils[static-libs(+)] )
-	it8212? ( sys-apps/pciutils[static-libs(+)] )
-	jlink_spi? ( dev-embedded/libjaylink[static-libs(+)] )
-	nic3com? ( sys-apps/pciutils[static-libs(+)] )
-	nicintel_eeprom? ( sys-apps/pciutils[static-libs(+)] )
-	nicintel_spi? ( sys-apps/pciutils[static-libs(+)] )
-	nicintel? ( sys-apps/pciutils[static-libs(+)] )
-	nicnatsemi? ( sys-apps/pciutils[static-libs(+)] )
-	nicrealtek? ( sys-apps/pciutils[static-libs(+)] )
-	raiden_debug_spi? ( virtual/libusb:1[static-libs(+)] )
-	ogp_spi? ( sys-apps/pciutils[static-libs(+)] )
-	pickit2_spi? ( virtual/libusb:0[static-libs(+)] )
-	rayer_spi? ( sys-apps/pciutils[static-libs(+)] )
-	satamv? ( sys-apps/pciutils[static-libs(+)] )
-	satasii? ( sys-apps/pciutils[static-libs(+)] )
-	stlinkv3_spi? ( virtual/libusb:1[static-libs(+)] )
-	usbblaster_spi? ( dev-embedded/libftdi:1=[static-libs(+)] )
-"
-RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
-DEPEND="${RDEPEND}
-	static? ( ${LIB_DEPEND} )
-	test? ( dev-util/cmocka )"
-RDEPEND+=" internal? ( sys-apps/dmidecode )"
-
-BDEPEND="sys-apps/diffutils"
-
-DOCS=( README.chromiumos Documentation/ )
-
-src_prepare() {
-	default
-	if use internal; then
-		# Set CONFIG_DEFAULT_PROGRAMMER to PROGRAMMER_INTERNAL
-		sed -e "s/PROGRAMMER_INVALID/PROGRAMMER_INTERNAL/" \
-			-i meson.build || die
-	fi
-}
-
-src_configure() {
-	local emesonargs=(
-		-Ddefault_library="$(usex static static shared)"
-		$(meson_use atahpt config_atahpt)
-		$(meson_use atapromise config_atapromise)
-		$(meson_use atavia config_atavia)
-		$(meson_use buspirate_spi config_buspirate_spi)
-		$(meson_use ch341a_spi config_ch341a_spi)
-		$(meson_use dediprog config_dediprog)
-		$(meson_use developerbox_spi config_developerbox_spi)
-		$(meson_use digilent_spi config_digilent_spi)
-		$(meson_use drkaiser config_drkaiser)
-		$(meson_use dummy config_dummy)
-		$(meson_use ene_lpc config_ene_lpc)
-		$(meson_use ft2232_spi config_ft2232_spi)
-		$(meson_use gfxnvidia config_gfxnvidia)
-		$(meson_use internal config_internal)
-		$(meson_use it8212 config_it8212)
-		$(meson_use jlink_spi config_jlink_spi)
-		$(meson_use linux_mtd config_linux_mtd)
-		$(meson_use linux_spi config_linux_spi)
-		$(meson_use lspcon_i2c_spi config_lspcon_i2c_spi)
-		$(meson_use mec1308 config_mec1308)
-		$(meson_use mstarddc_spi config_mstarddc_spi)
-		$(meson_use nic3com config_nic3com)
-		$(meson_use nicintel_eeprom config_nicintel_eeprom)
-		$(meson_use nicintel_spi config_nicintel_spi)
-		$(meson_use nicintel config_nicintel)
-		$(meson_use nicnatsemi config_nicnatsemi)
-		$(meson_use nicrealtek config_nicrealtek)
-		$(meson_use ogp_spi config_ogp_spi)
-		$(meson_use pickit2_spi config_pickit2_spi)
-		$(meson_use pony_spi config_pony_spi)
-		$(meson_use raiden_debug_spi config_raiden_debug_spi)
-		$(meson_use rayer_spi config_rayer_spi)
-		$(meson_use realtek_mst_i2c_spi config_realtek_mst_i2c_spi)
-		$(meson_use satamv config_satamv)
-		$(meson_use satasii config_satasii)
-		$(meson_use serprog config_serprog)
-		$(meson_use stlinkv3_spi config_stlinkv3_spi)
-		$(meson_use usbblaster_spi config_usbblaster_spi)
-		$(meson_use wiki print_wiki)
-	)
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-}
-
-src_test() {
-	meson_src_test
-}
diff --git a/sys-apps/flashrom/flashrom-0.9.9-r1284.ebuild b/sys-apps/flashrom/flashrom-0.9.9-r1284.ebuild
new file mode 100644
index 0000000..2491312
--- /dev/null
+++ b/sys-apps/flashrom/flashrom-0.9.9-r1284.ebuild
@@ -0,0 +1,156 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/flashrom/flashrom-0.9.4.ebuild,v 1.5 2011/09/20 16:03:21 nativemad Exp $
+
+EAPI=7
+CROS_WORKON_COMMIT="94ed91682f82f4cdf3432b127b50a3b1e1e8e6aa"
+CROS_WORKON_TREE="bd6ded88de17e9f3d2cf1441739100f961db0e57"
+CROS_WORKON_PROJECT="chromiumos/third_party/flashrom"
+CROS_WORKON_EGIT_BRANCH="master"
+
+inherit cros-workon toolchain-funcs meson
+
+DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
+HOMEPAGE="https://flashrom.org/"
+#SRC_URI="http://download.flashrom.org/releases/${P}.tar.bz2"
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="
+	atahpt
+	atapromise
+	+atavia
+	+buspirate_spi
+	+ch341a_spi
+	dediprog
+	+developerbox_spi
+	+digilent_spi
+	+drkaiser
+	+dummy
+	ene_lpc
+	+ft2232_spi
+	+gfxnvidia
+	+internal
+	+it8212
+	jlink_spi
+	+linux_mtd
+	+linux_spi
+	+lspcon_i2c_spi
+	mec1308
+	mstarddc_spi
+	+nic3com
+	+nicintel
+	+nicintel_eeprom
+	+nicintel_spi
+	+nicnatsemi
+	+nicrealtek
+	+ogp_spi
+	+pickit2_spi
+	+pony_spi
+	+raiden_debug_spi
+	+rayer_spi
+	+realtek_mst_i2c_spi
+	+satasii
+	+satamv
+	+serprog static
+	+stlinkv3_spi
+	test
+	+usbblaster_spi
+	+wiki
+"
+
+LIB_DEPEND="
+	atahpt? ( sys-apps/pciutils[static-libs(+)] )
+	atapromise? ( sys-apps/pciutils[static-libs(+)] )
+	atavia? ( sys-apps/pciutils[static-libs(+)] )
+	ch341a_spi? ( virtual/libusb:1[static-libs(+)] )
+	dediprog? ( virtual/libusb:1[static-libs(+)] )
+	developerbox_spi? ( virtual/libusb:1[static-libs(+)] )
+	digilent_spi? ( virtual/libusb:1[static-libs(+)] )
+	drkaiser? ( sys-apps/pciutils[static-libs(+)] )
+	ft2232_spi? ( dev-embedded/libftdi:=[static-libs(+)] )
+	gfxnvidia? ( sys-apps/pciutils[static-libs(+)] )
+	internal? ( sys-apps/pciutils[static-libs(+)] )
+	it8212? ( sys-apps/pciutils[static-libs(+)] )
+	jlink_spi? ( dev-embedded/libjaylink[static-libs(+)] )
+	nic3com? ( sys-apps/pciutils[static-libs(+)] )
+	nicintel_eeprom? ( sys-apps/pciutils[static-libs(+)] )
+	nicintel_spi? ( sys-apps/pciutils[static-libs(+)] )
+	nicintel? ( sys-apps/pciutils[static-libs(+)] )
+	nicnatsemi? ( sys-apps/pciutils[static-libs(+)] )
+	nicrealtek? ( sys-apps/pciutils[static-libs(+)] )
+	raiden_debug_spi? ( virtual/libusb:1[static-libs(+)] )
+	ogp_spi? ( sys-apps/pciutils[static-libs(+)] )
+	pickit2_spi? ( virtual/libusb:0[static-libs(+)] )
+	rayer_spi? ( sys-apps/pciutils[static-libs(+)] )
+	satamv? ( sys-apps/pciutils[static-libs(+)] )
+	satasii? ( sys-apps/pciutils[static-libs(+)] )
+	stlinkv3_spi? ( virtual/libusb:1[static-libs(+)] )
+	usbblaster_spi? ( dev-embedded/libftdi:1=[static-libs(+)] )
+"
+RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
+DEPEND="${RDEPEND}
+	static? ( ${LIB_DEPEND} )
+	test? ( dev-util/cmocka )"
+RDEPEND+=" internal? ( sys-apps/dmidecode )"
+
+BDEPEND="sys-apps/diffutils"
+
+DOCS=( README.chromiumos Documentation/ )
+
+src_configure() {
+	local emesonargs=(
+		-Ddefault_library="$(usex static static shared)"
+		-Ddefault_programmer_name=internal
+		$(meson_use atahpt config_atahpt)
+		$(meson_use atapromise config_atapromise)
+		$(meson_use atavia config_atavia)
+		$(meson_use buspirate_spi config_buspirate_spi)
+		$(meson_use ch341a_spi config_ch341a_spi)
+		$(meson_use dediprog config_dediprog)
+		$(meson_use developerbox_spi config_developerbox_spi)
+		$(meson_use digilent_spi config_digilent_spi)
+		$(meson_use drkaiser config_drkaiser)
+		$(meson_use dummy config_dummy)
+		$(meson_use ene_lpc config_ene_lpc)
+		$(meson_use ft2232_spi config_ft2232_spi)
+		$(meson_use gfxnvidia config_gfxnvidia)
+		$(meson_use internal config_internal)
+		$(meson_use it8212 config_it8212)
+		$(meson_use jlink_spi config_jlink_spi)
+		$(meson_use linux_mtd config_linux_mtd)
+		$(meson_use linux_spi config_linux_spi)
+		$(meson_use lspcon_i2c_spi config_lspcon_i2c_spi)
+		$(meson_use mec1308 config_mec1308)
+		$(meson_use mstarddc_spi config_mstarddc_spi)
+		$(meson_use nic3com config_nic3com)
+		$(meson_use nicintel_eeprom config_nicintel_eeprom)
+		$(meson_use nicintel_spi config_nicintel_spi)
+		$(meson_use nicintel config_nicintel)
+		$(meson_use nicnatsemi config_nicnatsemi)
+		$(meson_use nicrealtek config_nicrealtek)
+		$(meson_use ogp_spi config_ogp_spi)
+		$(meson_use pickit2_spi config_pickit2_spi)
+		$(meson_use pony_spi config_pony_spi)
+		$(meson_use raiden_debug_spi config_raiden_debug_spi)
+		$(meson_use rayer_spi config_rayer_spi)
+		$(meson_use realtek_mst_i2c_spi config_realtek_mst_i2c_spi)
+		$(meson_use satamv config_satamv)
+		$(meson_use satasii config_satasii)
+		$(meson_use serprog config_serprog)
+		$(meson_use stlinkv3_spi config_stlinkv3_spi)
+		$(meson_use usbblaster_spi config_usbblaster_spi)
+		$(meson_use wiki print_wiki)
+	)
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+}
+
+src_test() {
+	meson_src_test
+}
diff --git a/sys-apps/flashrom/flashrom-9999.ebuild b/sys-apps/flashrom/flashrom-9999.ebuild
index 42f1823..e37f2e2 100644
--- a/sys-apps/flashrom/flashrom-9999.ebuild
+++ b/sys-apps/flashrom/flashrom-9999.ebuild
@@ -98,18 +98,10 @@
 
 DOCS=( README.chromiumos Documentation/ )
 
-src_prepare() {
-	default
-	if use internal; then
-		# Set CONFIG_DEFAULT_PROGRAMMER to PROGRAMMER_INTERNAL
-		sed -e "s/PROGRAMMER_INVALID/PROGRAMMER_INTERNAL/" \
-			-i meson.build || die
-	fi
-}
-
 src_configure() {
 	local emesonargs=(
 		-Ddefault_library="$(usex static static shared)"
+		-Ddefault_programmer_name=internal
 		$(meson_use atahpt config_atahpt)
 		$(meson_use atapromise config_atapromise)
 		$(meson_use atavia config_atavia)
diff --git a/sys-apps/fwupd/files/fwupd-at-boot.sh b/sys-apps/fwupd/files/fwupd-at-boot.sh
index 07b5e89..30400c9 100755
--- a/sys-apps/fwupd/files/fwupd-at-boot.sh
+++ b/sys-apps/fwupd/files/fwupd-at-boot.sh
@@ -12,13 +12,13 @@
   local ret=0
 
   if [ "$#" -ne 0 ]; then
-	logger -t "${LOGGER_TAG}" "Too many arguments."
-	return 1
+    logger -t "${LOGGER_TAG}" "Too many arguments."
+    return 1
   fi
 
   local pending
-  read -ra pending < \
-    <(find /var/lib/fwupd/pending -type f -size -100c 2>/dev/null | xargs)
+  readarray -d $'\0' pending < \
+    <(find /var/lib/fwupd/pending -type f -size -100c -print0 2>/dev/null)
   if [ -z "${pending[*]}" ]; then
 	return "${ret}"
   fi
@@ -40,6 +40,10 @@
       "ccgx"|"synaptics_cxaudio"|"synaptics_mst"|"vli")
         seconds=2
         ;;
+      "emmc")
+        # Trigger mmc/block events to adjust ownership
+        udevadm trigger --action=add --settle --subsystem-match=mmc --subsystem-match=block
+        ;;
       # USB4/TBT Retimer
       "thunderbolt")
         udevadm trigger --action=add --settle --subsystem-match=platform
@@ -53,7 +57,7 @@
   for i in "${pending[@]}"; do
     # Trigger fwupdtool-update job, which blocks until the job completes.
     /sbin/initctl emit fwupdtool-update GUID="${i##*/}" \
-      PLUGIN="$(cat "${i}")" AT_BOOT="true" USE_TOOL="true" || ret=1
+      PLUGIN="$(cat "${i}")" AT_BOOT="true" || ret=1
     rm "${i}"
   done
 
diff --git a/sys-apps/fwupd/files/fwupd.conf b/sys-apps/fwupd/files/fwupd.conf
index b6123ff..9cae1c6 100644
--- a/sys-apps/fwupd/files/fwupd.conf
+++ b/sys-apps/fwupd/files/fwupd.conf
@@ -5,21 +5,22 @@
 description    "Fwupd daemon"
 author         "chromium-os-dev@chromium.org"
 
-# The service is started via DBus activation.
-stop on stopping system-services
+start on started system-services
+stop on stopping boot-services or stopping powerd
 respawn
 
+env LANG=en_US.UTF-8
 env CACHE_DIRECTORY="/var/cache/fwupd"
 
 pre-start script
   mkdir -p /var/cache/fwupd /var/lib/fwupd
   chown -R fwupd:fwupd /var/cache/fwupd /var/lib/fwupd
 
-  # Check if system-services is still running before starting.
+  # Check if boot-services is still running before starting.
   # This is to prevent new dbus-activated instances from getting started once
   # the system is beginning to shut down.
-  if ! initctl status system-services | grep -q running; then
-    logger -t "${UPSTART_JOB}" "ERROR: system services not running, quit."
+  if ! initctl status boot-services | grep -q running; then
+    logger -t "${UPSTART_JOB}" "ERROR: boot services not running, quit."
     stop
     exit 0
   fi
@@ -30,11 +31,14 @@
   # uevents via netlink socket.
   # Need access to /proc, /sys, /dev to perform USB enumeration.
   # Need access to /run/dbus for DBus communications.
+  # Need /run/udev/data for enumerating emmc.
+  # Need cap_sys_rawio for communicating with emmc.
   exec minijail0 \
-    --uts -e -l -p -N \
+    --uts -l -p -N \
     -v -P /mnt/empty -b / -b /proc -t -r -b /dev,,1 -b /sys,,1 \
     -k /var,/var,tmpfs -b /var/cache/fwupd,,1 -b /var/lib/fwupd,,1 \
-    -k run,/run,tmpfs -b /run/dbus -b /run/shill -u fwupd -g fwupd -G \
+    -k run,/run,tmpfs -b /run/dbus -b /run/lock,,1 -b /run/shill \
+    -b /run/udev/data,,1 -u fwupd -g fwupd -G -c cap_sys_rawio+e \
     -- /usr/libexec/fwupd/fwupd
 end script
 
diff --git a/sys-apps/fwupd/files/fwupdtool-activate.conf b/sys-apps/fwupd/files/fwupdtool-activate.conf
index 0425146..d6dccce 100644
--- a/sys-apps/fwupd/files/fwupdtool-activate.conf
+++ b/sys-apps/fwupd/files/fwupdtool-activate.conf
@@ -12,6 +12,8 @@
 start on stopping ui
 task
 
+env LANG=en_US.UTF-8
+
 script
   if [ -f /var/lib/fwupd/pending.db ]; then
     exec minijail0 \
diff --git a/sys-apps/fwupd/files/fwupdtool-update.conf b/sys-apps/fwupd/files/fwupdtool-update.conf
index 4ff1b3b..2339c87 100644
--- a/sys-apps/fwupd/files/fwupdtool-update.conf
+++ b/sys-apps/fwupd/files/fwupdtool-update.conf
@@ -10,6 +10,7 @@
 # devices with pending updates.
 start on fwupdtool-update
 task
+instance $GUID-$AT_BOOT
 
 # Device GUID to be updated by fwupdtool update invocation.
 import GUID
@@ -22,13 +23,14 @@
 # Force fwupdtool over fwupdmgr usage.
 import USE_TOOL
 
+env LANG=en_US.UTF-8
 env AT_BOOT="false"
 env FILTER="usable-during-update"
 env REGEX="^[0-9a-f]\{8\}-[0-9a-f]\{4\}-[0-9a-f]\{4\}-[0-9a-f]\{4\}-[0-9a-f]\{12\}$"
 # Need access to /run/shill to download from LVFS mirror.
 env MINIJAIL_ARGS="--profile=minimalistic-mountns --uts -l -p -N \
     -k /run,/run,tmpfs -b /run/dbus -b /run/shill -u fwupd -g fwupd"
-env MINIJAIL_ARGS_TOOL="--uts -e -l -p -N \
+env MINIJAIL_ARGS_TOOL="--uts -l -p -N \
     -v -P /mnt/empty -b / -b /proc -r -t -b /dev,,1 -k run,/run,tmpfs \
     -k /var,/var,tmpfs -b /var/cache/fwupd,,1 -b /var/lib/fwupd,,1 \
     -b /run/lock,,1 -b /sys,,1 -u fwupd -g fwupd -G"
@@ -61,10 +63,6 @@
 end script
 
 script
-  INHIBIT_SUSPEND_FILE="/run/lock/power_override/${UPSTART_JOB}.lock"
-  trap 'rm -f -- "${INHIBIT_SUSPEND_FILE}"' EXIT
-  echo "$$" > "${INHIBIT_SUSPEND_FILE}"
-
   for plugin in ${PLUGIN}; do
     case "${plugin}" in
     "nvme")
@@ -83,6 +81,12 @@
 
   if [ "${USE_TOOL}" = "true" ]; then
     if [ -n "${FIRMWARE_FILE}" ]; then
+      # Grant access to /run/imageloader if the firmware file path starts with
+      # that prefix.
+      case "${FIRMWARE_FILE}" in /run/imageloader/*)
+        MINIJAIL_ARGS_TOOL="${MINIJAIL_ARGS_TOOL} \
+          -k /run/imageloader,/run/imageloader,none,MS_BIND|MS_REC"
+      esac
       minijail0 ${MINIJAIL_ARGS_TOOL} -- /usr/bin/fwupdtool install \
         "${FIRMWARE_FILE}" "${GUID}" --allow-older ${PLUGIN_ARGS} \
         --filter="${FILTER}" 2>&1 | logger -t "${UPSTART_JOB}"
@@ -106,7 +110,7 @@
     else
       if minijail0 ${MINIJAIL_ARGS} \
            -- /usr/bin/fwupdmgr get-updates "${GUID}" --filter=~"${FILTER}"; then
-        touch /var/lib/fwupd/pending/"${GUID}"
+        echo "${PLUGIN}" > /var/lib/fwupd/pending/"${GUID}"
       fi
     fi
   fi
diff --git a/sys-apps/fwupd/fwupd-1.6.1-r127.ebuild b/sys-apps/fwupd/fwupd-1.6.1-r127.ebuild
deleted file mode 100644
index 3530fe8..0000000
--- a/sys-apps/fwupd/fwupd-1.6.1-r127.ebuild
+++ /dev/null
@@ -1,207 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-CROS_WORKON_COMMIT="d58dc03c286db4c16f5d2f04ef258abf350f502a"
-CROS_WORKON_TREE="3445c6105d04d1a045d86e4d9d25bbadd2953cf9"
-CROS_WORKON_PROJECT="chromiumos/third_party/fwupd"
-CROS_WORKON_EGIT_BRANCH="fwupd-1.6.1"
-
-PYTHON_COMPAT=( python2_7 python3_{6..9} )
-
-inherit cros-workon linux-info meson python-single-r1 udev user vala xdg
-
-DESCRIPTION="Aims to make updating firmware on Linux automatic, safe and reliable"
-HOMEPAGE="https://fwupd.org"
-#SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="*"
-IUSE="+agent amt archive +bluetooth dell +dummy +gnutls gtk-doc +gusb elogind flashrom +gpg lzma minimal introspection +man nls nvme pkcs7 policykit spi synaptics systemd test thunderbolt uefi"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
-	dell? ( uefi )
-	minimal? ( !introspection )
-	spi? ( lzma )
-	synaptics? ( gnutls )
-	uefi? ( gnutls )
-"
-RESTRICT="!test? ( test )"
-
-BDEPEND="
-	virtual/pkgconfig
-	gtk-doc? ( dev-util/gtk-doc )
-	introspection? ( dev-libs/gobject-introspection )
-	man? (
-		app-text/docbook-sgml-utils
-		sys-apps/help2man
-	)
-	test? (
-		thunderbolt? ( dev-util/umockdev )
-		net-libs/gnutls[tools]
-	)
-"
-COMMON_DEPEND="
-	>=app-arch/gcab-1.0
-	dev-db/sqlite
-	>=dev-libs/glib-2.45.8:2
-	dev-libs/json-glib
-	dev-libs/libgpg-error
-	dev-libs/libgudev:=
-	>=dev-libs/libjcat-0.1.0[gpg?,pkcs7?]
-	>=dev-libs/libxmlb-0.1.13:=
-	>=net-libs/libsoup-2.51.92:2.4[introspection?]
-	net-misc/curl
-	virtual/libelf:0=
-	virtual/udev
-	archive? ( app-arch/libarchive:= )
-	dell? ( >=sys-libs/libsmbios-2.4.0 )
-	elogind? ( >=sys-auth/elogind-211 )
-	flashrom? ( sys-apps/flashrom )
-	gnutls? ( net-libs/gnutls )
-	gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] )
-	lzma? ( app-arch/xz-utils )
-	policykit? ( >=sys-auth/polkit-0.103 )
-	systemd? ( >=sys-apps/systemd-211 )
-	uefi? (
-		sys-apps/fwupd-efi
-		sys-boot/efibootmgr
-		sys-fs/udisks
-		sys-libs/efivar
-	)
-"
-# Block sci-chemistry/chemical-mime-data for bug #701900
-RDEPEND="
-	!<sci-chemistry/chemical-mime-data-0.1.94-r4
-	${COMMON_DEPEND}
-	sys-apps/dbus
-"
-
-DEPEND="
-	${COMMON_DEPEND}
-	x11-libs/pango
-	$(vala_depend)
-	${PYTHON_DEPS}
-	$(python_gen_cond_dep '
-		dev-python/pillow[${PYTHON_USEDEP}]
-		dev-python/pycairo[${PYTHON_USEDEP}]
-		dev-python/pygobject:3[cairo,${PYTHON_USEDEP}]
-	' ${PYTHON_COMPAT} )
-	${RDEPEND}
-"
-
-pkg_setup() {
-	python-single-r1_pkg_setup
-	if use nvme ; then
-		kernel_is -ge 4 4 || die "NVMe support requires kernel >= 4.4"
-	fi
-}
-
-src_prepare() {
-	default
-	# c.f. https://github.com/fwupd/fwupd/issues/1414
-	sed -e "/test('thunderbolt-self-test', e, env: test_env, timeout : 120)/d" \
-		-i plugins/thunderbolt/meson.build || die
-	sed '/platform-integrity/d' \
-		-i plugins/meson.build || die #753521
-	sed -e "/^gcab/s/^/#/" -i meson.build || die
-	if ! use nls ; then
-		echo > po/LINGUAS || die
-	fi
-	vala_src_prepare
-}
-
-src_configure() {
-	local plugins=(
-		$(meson_use amt plugin_amt)
-		$(meson_use dell plugin_dell)
-		$(meson_use dummy plugin_dummy)
-		$(meson_use flashrom plugin_flashrom)
-		$(meson_use gusb plugin_altos)
-		$(meson_use nvme plugin_nvme)
-		$(meson_use spi plugin_intel_spi)
-		$(meson_use synaptics plugin_synaptics_mst)
-		$(meson_use synaptics plugin_synaptics_rmi)
-		$(meson_use thunderbolt plugin_thunderbolt)
-		$(meson_use uefi plugin_uefi_capsule)
-		$(meson_use uefi plugin_uefi_capsule_splash)
-		$(meson_use uefi plugin_uefi_pk)
-
-		# Dependencies are not available (yet?)
-		-Dplugin_modem_manager="false"
-		-Dplugin_tpm="false"
-	)
-	(use x86 || use amd64 ) || plugins+=( -Dplugin_msr="false" )
-
-	local emesonargs=(
-		--localstatedir "${EPREFIX}"/var
-		-Dbuild="$(usex minimal standalone all)"
-		-Dconsolekit="false"
-		-Dcurl="true"
-		-Ddocs="$(usex gtk-doc gtkdoc none)"
-		-Defi_binary="false"
-		-Dsupported_build="true"
-		$(meson_use agent)
-		$(meson_use archive libarchive)
-		$(meson_use bluetooth bluez)
-		$(meson_use elogind)
-		$(meson_use gnutls)
-		$(meson_use gusb)
-		$(meson_use lzma)
-		$(meson_use man)
-		$(meson_use introspection)
-		$(meson_use policykit polkit)
-		$(meson_use systemd)
-		$(meson_use test tests)
-
-		${plugins[@]}
-	)
-	use uefi && emesonargs+=( -Defi_os_dir="gentoo" )
-	export CACHE_DIRECTORY="${T}"
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	# Disable lvfs remote
-	sed 's/Enabled=true/Enabled=false/' -i "${ED}"/etc/${PN}/remotes.d/lvfs.conf || die
-
-	# Enable vendor-directory remote with local firmware
-	sed 's/Enabled=false/Enabled=true/' -i "${ED}"/etc/${PN}/remotes.d/vendor-directory.conf || die
-
-	# Install udev rules to fix user permissions.
-	udev_dorules "${FILESDIR}"/90-fwupd.rules
-
-	# Change D-BUS owner for org.freedesktop.fwupd
-	sed 's/root/fwupd/' -i "${ED}"/usr/share/dbus-1/system.d/org.freedesktop.fwupd.conf || die
-
-	# Install D-BUS service for org.freedesktop.fwupd to enable D-BUS activation
-	insinto /usr/share/dbus-1/system-services
-	doins "${FILESDIR}"/org.freedesktop.fwupd.service
-
-	insinto /etc/init
-	# Install upstart script for fwupd daemon.
-	doins "${FILESDIR}"/fwupd.conf
-	# Install upstart script for activating firmware update on logout/shutdown.
-	doins "${FILESDIR}"/fwupdtool-activate.conf
-	# Install upstart script for automatic firmware update on device plug-in.
-	doins "${FILESDIR}"/fwupdtool-update.conf
-
-	exeinto /usr/share/cros/init
-	doexe "${FILESDIR}"/fwupd-at-boot.sh
-
-	if ! use minimal ; then
-		if ! use systemd ; then
-			# Don't timeout when fwupd is running (#673140)
-			sed '/^IdleTimeout=/s@=[[:digit:]]\+@=0@' \
-				-i "${ED}"/etc/${PN}/daemon.conf || die
-		fi
-	fi
-}
-
-pkg_preinst() {
-	enewuser fwupd
-	enewgroup fwupd
-}
diff --git a/sys-apps/fwupd/fwupd-1.6.3-r172.ebuild b/sys-apps/fwupd/fwupd-1.6.3-r172.ebuild
new file mode 100644
index 0000000..8d4c992
--- /dev/null
+++ b/sys-apps/fwupd/fwupd-1.6.3-r172.ebuild
@@ -0,0 +1,213 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+CROS_WORKON_COMMIT="78ac91557d798a5415b58fca6853f6609f1ff51c"
+CROS_WORKON_TREE="90f2e2fd15db34a99c406e9e39ba04a184a6c716"
+CROS_WORKON_PROJECT="chromiumos/third_party/fwupd"
+CROS_WORKON_EGIT_BRANCH="fwupd-1.6.3"
+
+PYTHON_COMPAT=( python2_7 python3_{6..9} )
+
+inherit cros-workon linux-info meson python-single-r1 udev user vala xdg
+
+DESCRIPTION="Aims to make updating firmware on Linux automatic, safe and reliable"
+HOMEPAGE="https://fwupd.org"
+#SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="*"
+IUSE="agent amt archive +bluetooth dell +dummy elogind flashrom +gnutls gtk-doc +gusb +gpg introspection lzma +man minimal modemmanager nls nvme pkcs7 policykit spi synaptics systemd test thunderbolt uefi"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+	dell? ( uefi )
+	minimal? ( !introspection )
+	spi? ( lzma )
+	synaptics? ( gnutls )
+	uefi? ( gnutls )
+"
+
+BDEPEND="
+	virtual/pkgconfig
+	gtk-doc? ( dev-util/gtk-doc )
+	introspection? ( dev-libs/gobject-introspection )
+	man? (
+		app-text/docbook-sgml-utils
+		sys-apps/help2man
+	)
+	test? (
+		thunderbolt? ( dev-util/umockdev )
+		net-libs/gnutls[tools]
+	)
+"
+COMMON_DEPEND="
+	>=app-arch/gcab-1.0
+	dev-db/sqlite
+	>=dev-libs/glib-2.45.8:2
+	dev-libs/json-glib
+	dev-libs/libgpg-error
+	dev-libs/libgudev:=
+	>=dev-libs/libjcat-0.1.0[gpg?,pkcs7?]
+	>=dev-libs/libxmlb-0.1.13:=
+	dev-libs/protobuf-c
+	>=net-libs/libsoup-2.51.92:2.4[introspection?]
+	net-misc/curl
+	virtual/libelf:0=
+	virtual/udev
+	archive? ( app-arch/libarchive:= )
+	dell? ( >=sys-libs/libsmbios-2.4.0 )
+	elogind? ( >=sys-auth/elogind-211 )
+	flashrom? ( sys-apps/flashrom )
+	gnutls? ( net-libs/gnutls )
+	gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] )
+	lzma? ( app-arch/xz-utils )
+	modemmanager? ( net-misc/modemmanager[qmi] )
+	policykit? ( >=sys-auth/polkit-0.103 )
+	systemd? ( >=sys-apps/systemd-211 )
+	uefi? (
+		sys-apps/fwupd-efi
+		sys-boot/efibootmgr
+		sys-fs/udisks
+		sys-libs/efivar
+	)
+"
+# Block sci-chemistry/chemical-mime-data for bug #701900
+RDEPEND="
+	!<sci-chemistry/chemical-mime-data-0.1.94-r4
+	${COMMON_DEPEND}
+	sys-apps/dbus
+"
+
+DEPEND="
+	${COMMON_DEPEND}
+	x11-libs/pango
+	$(vala_depend)
+	${PYTHON_DEPS}
+	$(python_gen_cond_dep '
+		dev-python/pillow[${PYTHON_USEDEP}]
+		dev-python/pycairo[${PYTHON_USEDEP}]
+		dev-python/pygobject:3[cairo,${PYTHON_USEDEP}]
+	' ${PYTHON_COMPAT} )
+	${RDEPEND}
+"
+
+pkg_setup() {
+	python-single-r1_pkg_setup
+	if use nvme ; then
+		kernel_is -ge 4 4 || die "NVMe support requires kernel >= 4.4"
+	fi
+}
+
+src_prepare() {
+	default
+	# c.f. https://github.com/fwupd/fwupd/issues/1414
+	sed -e "/test('thunderbolt-self-test', e, env: test_env, timeout : 120)/d" \
+		-i plugins/thunderbolt/meson.build || die
+
+	sed -e '/platform-integrity/d' \
+		-i plugins/meson.build || die #753521
+	sed -e "/^gcab/s/^/#/" -i meson.build || die
+	if ! use nls ; then
+		echo > po/LINGUAS || die
+	fi
+	vala_src_prepare
+}
+
+src_configure() {
+	local plugins=(
+		$(meson_use amt plugin_amt)
+		$(meson_use dell plugin_dell)
+		$(meson_use dummy plugin_dummy)
+		$(meson_use flashrom plugin_flashrom)
+		$(meson_use gusb plugin_altos)
+		$(meson_use modemmanager plugin_modem_manager)
+		$(meson_use nvme plugin_nvme)
+		$(meson_use spi plugin_intel_spi)
+		$(meson_use synaptics plugin_synaptics_mst)
+		$(meson_use synaptics plugin_synaptics_rmi)
+		$(meson_use thunderbolt plugin_thunderbolt)
+		$(meson_use uefi plugin_uefi_capsule)
+		$(meson_use uefi plugin_uefi_capsule_splash)
+		$(meson_use uefi plugin_uefi_pk)
+
+		# Dependencies are not available (yet?)
+		-Dplugin_tpm="false"
+	)
+	(use x86 || use amd64 ) || plugins+=( -Dplugin_msr="false" )
+
+	local emesonargs=(
+		--localstatedir "${EPREFIX}"/var
+		-Dbuild="$(usex minimal standalone all)"
+		-Dconsolekit="false"
+		-Dcurl="true"
+		-Ddocs="$(usex gtk-doc gtkdoc none)"
+		-Defi_binary="false"
+		-Dsupported_build="true"
+		$(meson_use agent)
+		$(meson_use archive libarchive)
+		$(meson_use bluetooth bluez)
+		$(meson_use elogind)
+		$(meson_use gnutls)
+		$(meson_use gusb)
+		$(meson_use lzma)
+		$(meson_use man)
+		$(meson_use introspection)
+		$(meson_use policykit polkit)
+		$(meson_use systemd)
+		$(meson_use test tests)
+
+		${plugins[@]}
+	)
+	use uefi && emesonargs+=( -Defi_os_dir="gentoo" )
+	export CACHE_DIRECTORY="${T}"
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# Disable lvfs remote
+	sed 's/Enabled=true/Enabled=false/' -i "${ED}"/etc/${PN}/remotes.d/lvfs.conf || die
+
+	# Enable vendor-directory remote with local firmware
+	sed 's/Enabled=false/Enabled=true/' -i "${ED}"/etc/${PN}/remotes.d/vendor-directory.conf || die
+
+	# Install udev rules to fix user permissions.
+	udev_dorules "${FILESDIR}"/90-fwupd.rules
+
+	# Change D-BUS owner for org.freedesktop.fwupd
+	sed 's/root/fwupd/' -i "${ED}"/usr/share/dbus-1/system.d/org.freedesktop.fwupd.conf || die
+
+	# Install D-BUS service for org.freedesktop.fwupd to enable D-BUS activation
+	insinto /usr/share/dbus-1/system-services
+	doins "${FILESDIR}"/org.freedesktop.fwupd.service
+
+	insinto /etc/init
+	# Install upstart script for fwupd daemon.
+	doins "${FILESDIR}"/fwupd.conf
+	# Install upstart script for activating firmware update on logout/shutdown.
+	doins "${FILESDIR}"/fwupdtool-activate.conf
+	# Install upstart script for automatic firmware update on device plug-in.
+	doins "${FILESDIR}"/fwupdtool-update.conf
+
+	exeinto /usr/share/cros/init
+	doexe "${FILESDIR}"/fwupd-at-boot.sh
+
+	if ! use minimal ; then
+		if ! use systemd ; then
+			# Don't timeout when fwupd is running (#673140)
+			sed '/^IdleTimeout=/s@=[[:digit:]]\+@=0@' \
+				-i "${ED}"/etc/${PN}/daemon.conf || die
+		fi
+	fi
+}
+
+src_test() {
+	meson_src_test
+}
+
+pkg_preinst() {
+	enewuser fwupd
+	enewgroup fwupd
+}
diff --git a/sys-apps/fwupd/fwupd-9998.ebuild b/sys-apps/fwupd/fwupd-9998.ebuild
index d27a47d..0789514 100644
--- a/sys-apps/fwupd/fwupd-9998.ebuild
+++ b/sys-apps/fwupd/fwupd-9998.ebuild
@@ -4,7 +4,7 @@
 EAPI=6
 
 EGIT_REPO_URI="https://github.com/fwupd/fwupd"
-EGIT_BRANCH="master"
+EGIT_BRANCH="main"
 
 PYTHON_COMPAT=( python2_7 python3_{6..9} )
 
@@ -17,7 +17,7 @@
 LICENSE="LGPL-2.1+"
 SLOT="0"
 KEYWORDS="*"
-IUSE="+agent amt archive +bluetooth dell +dummy +gnutls gtk-doc +gusb elogind flashrom +gpg lzma minimal introspection +man nls nvme pkcs7 policykit spi synaptics systemd test thunderbolt uefi"
+IUSE="agent amt archive +bluetooth dell +dummy elogind flashrom +gnutls gtk-doc +gusb +gpg introspection lzma +man minimal modemmanager nls nvme pkcs7 policykit spi synaptics systemd test thunderbolt uefi"
 REQUIRED_USE="${PYTHON_REQUIRED_USE}
 	dell? ( uefi )
 	minimal? ( !introspection )
@@ -25,7 +25,6 @@
 	synaptics? ( gnutls )
 	uefi? ( gnutls )
 "
-RESTRICT="!test? ( test )"
 
 BDEPEND="
 	virtual/pkgconfig
@@ -49,6 +48,7 @@
 	dev-libs/libgudev:=
 	>=dev-libs/libjcat-0.1.0[gpg?,pkcs7?]
 	>=dev-libs/libxmlb-0.1.13:=
+	dev-libs/protobuf-c
 	>=net-libs/libsoup-2.51.92:2.4[introspection?]
 	net-misc/curl
 	virtual/libelf:0=
@@ -60,6 +60,7 @@
 	gnutls? ( net-libs/gnutls )
 	gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] )
 	lzma? ( app-arch/xz-utils )
+	modemmanager? ( net-misc/modemmanager[qmi] )
 	policykit? ( >=sys-auth/polkit-0.103 )
 	systemd? ( >=sys-apps/systemd-211 )
 	uefi? (
@@ -101,7 +102,8 @@
 	# c.f. https://github.com/fwupd/fwupd/issues/1414
 	sed -e "/test('thunderbolt-self-test', e, env: test_env, timeout : 120)/d" \
 		-i plugins/thunderbolt/meson.build || die
-	sed '/platform-integrity/d' \
+
+	sed -e '/platform-integrity/d' \
 		-i plugins/meson.build || die #753521
 	sed -e "/^gcab/s/^/#/" -i meson.build || die
 	if ! use nls ; then
@@ -117,6 +119,7 @@
 		$(meson_use dummy plugin_dummy)
 		$(meson_use flashrom plugin_flashrom)
 		$(meson_use gusb plugin_altos)
+		$(meson_use modemmanager plugin_modem_manager)
 		$(meson_use nvme plugin_nvme)
 		$(meson_use spi plugin_intel_spi)
 		$(meson_use synaptics plugin_synaptics_mst)
@@ -127,7 +130,6 @@
 		$(meson_use uefi plugin_uefi_pk)
 
 		# Dependencies are not available (yet?)
-		-Dplugin_modem_manager="false"
 		-Dplugin_tpm="false"
 	)
 	(use x86 || use amd64 ) || plugins+=( -Dplugin_msr="false" )
@@ -199,6 +201,10 @@
 	fi
 }
 
+src_test() {
+	meson_src_test
+}
+
 pkg_preinst() {
 	enewuser fwupd
 	enewgroup fwupd
diff --git a/sys-apps/fwupd/fwupd-9999.ebuild b/sys-apps/fwupd/fwupd-9999.ebuild
index 12430b5..96b6c81 100644
--- a/sys-apps/fwupd/fwupd-9999.ebuild
+++ b/sys-apps/fwupd/fwupd-9999.ebuild
@@ -4,7 +4,7 @@
 EAPI=6
 
 CROS_WORKON_PROJECT="chromiumos/third_party/fwupd"
-CROS_WORKON_EGIT_BRANCH="fwupd-1.6.1"
+CROS_WORKON_EGIT_BRANCH="fwupd-1.6.3"
 
 PYTHON_COMPAT=( python2_7 python3_{6..9} )
 
@@ -17,7 +17,7 @@
 LICENSE="LGPL-2.1+"
 SLOT="0"
 KEYWORDS="~*"
-IUSE="+agent amt archive +bluetooth dell +dummy +gnutls gtk-doc +gusb elogind flashrom +gpg lzma minimal introspection +man nls nvme pkcs7 policykit spi synaptics systemd test thunderbolt uefi"
+IUSE="agent amt archive +bluetooth dell +dummy elogind flashrom +gnutls gtk-doc +gusb +gpg introspection lzma +man minimal modemmanager nls nvme pkcs7 policykit spi synaptics systemd test thunderbolt uefi"
 REQUIRED_USE="${PYTHON_REQUIRED_USE}
 	dell? ( uefi )
 	minimal? ( !introspection )
@@ -25,7 +25,6 @@
 	synaptics? ( gnutls )
 	uefi? ( gnutls )
 "
-RESTRICT="!test? ( test )"
 
 BDEPEND="
 	virtual/pkgconfig
@@ -49,6 +48,7 @@
 	dev-libs/libgudev:=
 	>=dev-libs/libjcat-0.1.0[gpg?,pkcs7?]
 	>=dev-libs/libxmlb-0.1.13:=
+	dev-libs/protobuf-c
 	>=net-libs/libsoup-2.51.92:2.4[introspection?]
 	net-misc/curl
 	virtual/libelf:0=
@@ -60,6 +60,7 @@
 	gnutls? ( net-libs/gnutls )
 	gusb? ( >=dev-libs/libgusb-0.3.5[introspection?] )
 	lzma? ( app-arch/xz-utils )
+	modemmanager? ( net-misc/modemmanager[qmi] )
 	policykit? ( >=sys-auth/polkit-0.103 )
 	systemd? ( >=sys-apps/systemd-211 )
 	uefi? (
@@ -101,7 +102,8 @@
 	# c.f. https://github.com/fwupd/fwupd/issues/1414
 	sed -e "/test('thunderbolt-self-test', e, env: test_env, timeout : 120)/d" \
 		-i plugins/thunderbolt/meson.build || die
-	sed '/platform-integrity/d' \
+
+	sed -e '/platform-integrity/d' \
 		-i plugins/meson.build || die #753521
 	sed -e "/^gcab/s/^/#/" -i meson.build || die
 	if ! use nls ; then
@@ -117,6 +119,7 @@
 		$(meson_use dummy plugin_dummy)
 		$(meson_use flashrom plugin_flashrom)
 		$(meson_use gusb plugin_altos)
+		$(meson_use modemmanager plugin_modem_manager)
 		$(meson_use nvme plugin_nvme)
 		$(meson_use spi plugin_intel_spi)
 		$(meson_use synaptics plugin_synaptics_mst)
@@ -127,7 +130,6 @@
 		$(meson_use uefi plugin_uefi_pk)
 
 		# Dependencies are not available (yet?)
-		-Dplugin_modem_manager="false"
 		-Dplugin_tpm="false"
 	)
 	(use x86 || use amd64 ) || plugins+=( -Dplugin_msr="false" )
@@ -199,6 +201,10 @@
 	fi
 }
 
+src_test() {
+	meson_src_test
+}
+
 pkg_preinst() {
 	enewuser fwupd
 	enewgroup fwupd
diff --git a/sys-apps/huddly-updater/huddly-updater-0.0.1-r84.ebuild b/sys-apps/huddly-updater/huddly-updater-0.0.1-r84.ebuild
deleted file mode 100644
index 32162c1..0000000
--- a/sys-apps/huddly-updater/huddly-updater-0.0.1-r84.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="8622a0d971b16620ca2e4e35dc44a4715a6993f4"
-CROS_WORKON_TREE="e131236442db8932de949ee815cfb95f90f93e7d"
-CROS_WORKON_PROJECT="chromiumos/third_party/huddly-updater"
-
-inherit cros-debug cros-workon libchrome udev user
-
-DESCRIPTION="A utility to update Huddly camera firmware"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/huddly-updater"
-
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="test"
-
-COMMON_DEPEND="chromeos-base/libbrillo:=
-	chromeos-base/cfm-dfu-notification:=
-	dev-libs/msgpack:=
-	virtual/libusb:1
-	virtual/libudev:0=
-"
-
-DEPEND="${COMMON_DEPEND}
-	test? ( dev-cpp/gtest:= )
-"
-
-RDEPEND="${COMMON_DEPEND}
-	app-arch/unzip
-"
-
-src_configure() {
-	# See crbug/1078297
-	cros-debug-add-NDEBUG
-	default
-}
-
-src_test() {
-	if use amd64; then
-		emake tests
-	fi
-}
-
-src_install() {
-	dosbin huddly-updater
-	dosbin huddly-hpk-updater
-	udev_dorules conf/99-huddly.rules
-}
-
-pkg_preinst() {
-	enewuser cfm-firmware-updaters
-	enewgroup cfm-firmware-updaters
-}
diff --git a/sys-apps/huddly-updater/huddly-updater-0.0.1-r88.ebuild b/sys-apps/huddly-updater/huddly-updater-0.0.1-r88.ebuild
new file mode 100644
index 0000000..c9b58b5
--- /dev/null
+++ b/sys-apps/huddly-updater/huddly-updater-0.0.1-r88.ebuild
@@ -0,0 +1,54 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="cf6a1b2ded4b3a8fe0855eefc127c35b7912b5ac"
+CROS_WORKON_TREE="8e73b869e4aa9bd7f07a795f5db5f21126175d6e"
+CROS_WORKON_PROJECT="chromiumos/third_party/huddly-updater"
+
+inherit cros-debug cros-workon libchrome udev user
+
+DESCRIPTION="A utility to update Huddly camera firmware"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/third_party/huddly-updater"
+
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="test"
+
+COMMON_DEPEND="chromeos-base/libbrillo:=
+	chromeos-base/cfm-dfu-notification:=
+	dev-libs/msgpack:=
+	virtual/libusb:1
+	virtual/libudev:0=
+"
+
+DEPEND="${COMMON_DEPEND}
+	test? ( dev-cpp/gtest:= )
+"
+
+RDEPEND="${COMMON_DEPEND}
+	app-arch/unzip
+"
+
+src_configure() {
+	# See crbug/1078297
+	cros-debug-add-NDEBUG
+	default
+}
+
+src_test() {
+	if use amd64; then
+		emake tests
+	fi
+}
+
+src_install() {
+	dosbin huddly-updater
+	dosbin huddly-hpk-updater
+	udev_dorules conf/99-huddly.rules
+}
+
+pkg_preinst() {
+	enewuser cfm-firmware-updaters
+	enewgroup cfm-firmware-updaters
+}
diff --git a/sys-apps/hwids/files/61-keyboard-chromeos.hwdb b/sys-apps/hwids/files/61-keyboard-chromeos.hwdb
index 1842681..ddac6e1 100644
--- a/sys-apps/hwids/files/61-keyboard-chromeos.hwdb
+++ b/sys-apps/hwids/files/61-keyboard-chromeos.hwdb
@@ -17,3 +17,13 @@
 evdev:input:b0005v3175p9100e*-*m4*
 evdev:input:b0003v3175p9100e*-*m4*
  KEYBOARD_KEY_ffd10018=assistant
+
+# Because HID spec does not yet have official usage for system
+# microphone mute function, devices connected to Logitech's BOLT
+# receiver (USB) and their bluetooth keyboards are using "Start or
+# Stop Microphone Capture" usage code to indicate that microphone
+# should be muted or unmuted.
+evdev:input:b0003v046DpC548e*-*m4*
+evdev:input:b0005v046DpB36Fe*-*m4*
+evdev:input:b0005v046DpB370e*-*m4*
+ KEYBOARD_KEY_000c00d5=micmute
diff --git a/sys-apps/hwids/hwids-20150717-r9.ebuild b/sys-apps/hwids/hwids-20150717-r10.ebuild
similarity index 100%
rename from sys-apps/hwids/hwids-20150717-r9.ebuild
rename to sys-apps/hwids/hwids-20150717-r10.ebuild
diff --git a/sys-apps/mosys/mosys-1.2.3-r1294.ebuild b/sys-apps/mosys/mosys-1.2.3-r1294.ebuild
deleted file mode 100644
index 522f456..0000000
--- a/sys-apps/mosys/mosys-1.2.3-r1294.ebuild
+++ /dev/null
@@ -1,110 +0,0 @@
-# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("f34cf3a06f7b17b7829185630d886a5d9d3f0e75" "8b2a2c062be89e22e2c413ce66fd4f2acdb33c88")
-CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "bcf4019b8955138ea74f9724cd90d5490c3c8b70")
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform2"
-	"chromiumos/platform/mosys"
-)
-CROS_WORKON_LOCALNAME=(
-	"../platform2"
-	"../platform/mosys"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}/platform2"
-	"${S}/platform/mosys"
-)
-CROS_WORKON_INCREMENTAL_BUILD=1
-CROS_WORKON_SUBTREE=(
-	"common-mk"
-	""
-)
-
-WANT_LIBCHROME="no"
-WANT_LIBBRILLO="no"
-
-inherit meson flag-o-matic toolchain-funcs cros-unibuild cros-workon platform
-
-DESCRIPTION="Utility for obtaining various bits of low-level system info"
-HOMEPAGE="http://mosys.googlecode.com/"
-
-LICENSE="BSD-Google BSD Apache-2.0 MIT ISC Unlicense"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE="generated_cros_config unibuild vpd_file_cache"
-
-RDEPEND="unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
-	vpd_file_cache? ( chromeos-base/vpd )
-	dev-util/cmocka
-	chromeos-base/minijail"
-DEPEND="${RDEPEND}"
-
-src_unpack() {
-	cros-workon_src_unpack
-	PLATFORM_TOOLDIR="${S}/platform2/common-mk"
-	S+="/platform/mosys"
-}
-
-src_configure() {
-	local platform_intf=""
-	local emesonargs=(
-		$(meson_use unibuild use_cros_config)
-		"$(meson_use vpd_file_cache use_vpd_file_cache)"
-		-Darch=$(tc-arch)
-	)
-
-	if use unibuild; then
-		emesonargs+=(
-			"-Dcros_config_data_src=${SYSROOT}${UNIBOARD_C_CONFIG}"
-		)
-		platform_intf="$(cros_config_host get-mosys-platform)"
-	else
-		# TODO(jrosenth): hard code some board to platform_intf
-		# mappings here for legacy non-unibuild boards.  For now, this
-		# feature is unibuild only.
-		true
-	fi
-
-	if [[ -n "${platform_intf}" ]]; then
-		emesonargs+=(
-			"-Dplatform_intf=${platform_intf}"
-		)
-	fi
-
-	# Necessary to enable LTO.  See crbug.com/1082378.
-	append-ldflags "-O2"
-
-	meson_src_configure
-}
-
-src_compile() {
-	meson_src_compile
-}
-
-platform_pkg_test() {
-	local tests=(
-		file_unittest
-		math_unittest
-		platform_unittest
-		vpd_unittest
-	)
-	local test_bin
-	for test_bin in "${tests[@]}"; do
-		platform_test "run" \
-			"${BUILD_DIR}/unittests/${test_bin}"
-	done
-}
-
-src_install() {
-	dosbin "${BUILD_DIR}/mains/mosys"
-
-	insinto /usr/share/policy
-	newins "seccomp/mosys-seccomp-${ARCH}.policy" mosys-seccomp.policy
-	dodoc README
-}
diff --git a/sys-apps/mosys/mosys-1.2.3-r1338.ebuild b/sys-apps/mosys/mosys-1.2.3-r1338.ebuild
new file mode 100644
index 0000000..f4d7122
--- /dev/null
+++ b/sys-apps/mosys/mosys-1.2.3-r1338.ebuild
@@ -0,0 +1,107 @@
+# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("5bbbe52a139486abcbd802b9bd3f6763dac479b3" "ed22531607e5d69a99369b675eebcbdd486efaaa")
+CROS_WORKON_TREE=("ef118ceb3e8ebcc8b8a4ae6577a71d7ad210a722" "b63af68c544d220e9ac4fec05fcdd8001237667d")
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform2"
+	"chromiumos/platform/mosys"
+)
+CROS_WORKON_LOCALNAME=(
+	"../platform2"
+	"../platform/mosys"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}/platform2"
+	"${S}/platform/mosys"
+)
+CROS_WORKON_INCREMENTAL_BUILD=1
+CROS_WORKON_SUBTREE=(
+	"common-mk"
+	""
+)
+
+WANT_LIBCHROME="no"
+WANT_LIBBRILLO="no"
+
+inherit meson flag-o-matic toolchain-funcs cros-unibuild cros-workon platform
+
+DESCRIPTION="Utility for obtaining various bits of low-level system info"
+HOMEPAGE="http://mosys.googlecode.com/"
+
+LICENSE="BSD-Google BSD Apache-2.0 MIT ISC Unlicense"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE="unibuild vpd_file_cache"
+
+RDEPEND="
+	vpd_file_cache? ( chromeos-base/vpd )
+	dev-util/cmocka
+	chromeos-base/minijail:="
+DEPEND="${RDEPEND}"
+
+src_unpack() {
+	cros-workon_src_unpack
+	PLATFORM_TOOLDIR="${S}/platform2/common-mk"
+	S+="/platform/mosys"
+}
+
+src_configure() {
+	local platform_intf=""
+	local emesonargs=(
+		$(meson_use unibuild use_cros_config)
+		"$(meson_use vpd_file_cache use_vpd_file_cache)"
+		-Darch=$(tc-arch)
+	)
+
+	if use unibuild; then
+		emesonargs+=(
+			"-Dcros_config_data_src=${SYSROOT}${UNIBOARD_C_CONFIG}"
+		)
+		platform_intf="$(cros_config_host get-mosys-platform)"
+	else
+		# TODO(jrosenth): hard code some board to platform_intf
+		# mappings here for legacy non-unibuild boards.  For now, this
+		# feature is unibuild only.
+		true
+	fi
+
+	if [[ -n "${platform_intf}" ]]; then
+		emesonargs+=(
+			"-Dplatform_intf=${platform_intf}"
+		)
+	fi
+
+	# Necessary to enable LTO.  See crbug.com/1082378.
+	append-ldflags "-O2"
+
+	meson_src_configure
+}
+
+src_compile() {
+	meson_src_compile
+}
+
+platform_pkg_test() {
+	local tests=(
+		file_unittest
+		math_unittest
+		platform_unittest
+		vpd_unittest
+	)
+	local test_bin
+	for test_bin in "${tests[@]}"; do
+		platform_test "run" \
+			"${BUILD_DIR}/unittests/${test_bin}"
+	done
+}
+
+src_install() {
+	dosbin "${BUILD_DIR}/mains/mosys"
+
+	insinto /usr/share/policy
+	newins "seccomp/mosys-seccomp-${ARCH}.policy" mosys-seccomp.policy
+	dodoc README
+}
diff --git a/sys-apps/mosys/mosys-9999.ebuild b/sys-apps/mosys/mosys-9999.ebuild
index ac4971e..855b77c 100644
--- a/sys-apps/mosys/mosys-9999.ebuild
+++ b/sys-apps/mosys/mosys-9999.ebuild
@@ -32,15 +32,12 @@
 LICENSE="BSD-Google BSD Apache-2.0 MIT ISC Unlicense"
 SLOT="0/0"
 KEYWORDS="~*"
-IUSE="generated_cros_config unibuild vpd_file_cache"
+IUSE="unibuild vpd_file_cache"
 
-RDEPEND="unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
+RDEPEND="
 	vpd_file_cache? ( chromeos-base/vpd )
 	dev-util/cmocka
-	chromeos-base/minijail"
+	chromeos-base/minijail:="
 DEPEND="${RDEPEND}"
 
 src_unpack() {
diff --git a/sys-apps/portage/portage-2.3.75-r59.ebuild b/sys-apps/portage/portage-2.3.75-r59.ebuild
deleted file mode 100644
index 99e1d47..0000000
--- a/sys-apps/portage/portage-2.3.75-r59.ebuild
+++ /dev/null
@@ -1,276 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-CROS_WORKON_COMMIT="2dfb7012b08e9ab94722ac1be3b4c22ddcc6b9b7"
-CROS_WORKON_TREE="36a4c89a02e336f72bbad9139911e34c2f91aaae"
-PYTHON_COMPAT=(
-	pypy
-	python3_4 python3_5 python3_6 python3_7
-	python2_7
-)
-PYTHON_REQ_USE='bzip2(+),threads(+)'
-
-inherit distutils-r1 systemd
-
-CROS_WORKON_PROJECT="chromiumos/third_party/portage_tool"
-CROS_WORKON_LOCALNAME="portage_tool"
-CROS_WORKON_EGIT_BRANCH="chromeos-2.3.75"
-inherit cros-workon
-
-DESCRIPTION="Portage is the package management and distribution system for Gentoo"
-HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
-
-LICENSE="GPL-2"
-KEYWORDS="*"
-SLOT="0"
-IUSE="build doc epydoc gentoo-dev +ipc +native-extensions -rsync-verify selinux xattr"
-
-DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
-	>=app-arch/tar-1.27
-	dev-lang/python-exec:2
-	>=sys-apps/sed-4.0.5 sys-devel/patch
-	doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 )
-	epydoc? ( $(python_gen_cond_dep '>=dev-python/epydoc-2.0[${PYTHON_USEDEP}]' \
-		'python2*') )"
-# Require sandbox-2.2 for bug #288863.
-# For xattr, we can spawn getfattr and setfattr from sys-apps/attr, but that's
-# quite slow, so it's not considered in the dependencies as an alternative to
-# to python-3.3 / pyxattr. Also, xattr support is only tested with Linux, so
-# for now, don't pull in xattr deps for other kernels.
-# For whirlpool hash, require python[ssl] (bug #425046).
-# For compgen, require bash[readline] (bug #445576).
-# app-portage/gemato goes without PYTHON_USEDEP since we're calling
-# the executable.
-RDEPEND="
-	>=app-arch/tar-1.27
-	dev-lang/python-exec:2
-	!build? (
-		>=sys-apps/sed-4.0.5
-		app-shells/bash:0[readline]
-		>=app-admin/eselect-1.2
-		$(python_gen_cond_dep 'dev-python/pyblake2[${PYTHON_USEDEP}]' \
-			python{2_7,3_4,3_5} pypy)
-		rsync-verify? (
-			>=app-portage/gemato-14[${PYTHON_USEDEP}]
-			>=app-crypt/openpgp-keys-gentoo-release-20180706
-			>=app-crypt/gnupg-2.2.4-r2[ssl(-)]
-		)
-	)
-	elibc_FreeBSD? ( sys-freebsd/freebsd-bin )
-	elibc_glibc? ( >=sys-apps/sandbox-2.2 )
-	elibc_musl? ( >=sys-apps/sandbox-2.2 )
-	elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
-	>=app-misc/pax-utils-0.1.17
-	selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
-	xattr? ( kernel_linux? (
-		>=sys-apps/install-xattr-0.3
-		$(python_gen_cond_dep 'dev-python/pyxattr[${PYTHON_USEDEP}]' \
-			python2_7 pypy)
-	) )
-	!<app-portage/gentoolkit-0.3.0.8-r4
-	!<app-admin/logrotate-3.8.0
-	!<app-portage/repoman-2.3.10"
-PDEPEND="
-	!build? (
-		>=net-misc/rsync-2.6.4
-		userland_GNU? ( >=sys-apps/coreutils-6.4 )
-	)"
-# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
-# NOTE: FEATURES=installsources requires debugedit and rsync
-
-REQUIRED_USE="epydoc? ( $(python_gen_useflags 'python2*') )"
-
-SRC_ARCHIVES="https://dev.gentoo.org/~zmedico/portage/archives"
-
-prefix_src_archives() {
-	local x y
-	for x in ${@}; do
-		for y in ${SRC_ARCHIVES}; do
-			echo ${y}/${x}
-		done
-	done
-}
-
-TARBALL_PV=${PV}
-SRC_URI="mirror://gentoo/${PN}-${TARBALL_PV}.tar.bz2
-	$(prefix_src_archives ${PN}-${TARBALL_PV}.tar.bz2)"
-
-# Disable for CrOS.
-SRC_URI=""
-
-pkg_setup() {
-	use epydoc && DISTUTILS_ALL_SUBPHASE_IMPLS=( python2.7 )
-}
-
-python_prepare_all() {
-	distutils-r1_python_prepare_all
-
-	if use gentoo-dev; then
-		einfo "Disabling --dynamic-deps by default for gentoo-dev..."
-		sed -e 's:\("--dynamic-deps", \)\("y"\):\1"n":' \
-			-i lib/_emerge/create_depgraph_params.py || \
-			die "failed to patch create_depgraph_params.py"
-
-		einfo "Enabling additional FEATURES for gentoo-dev..."
-		echo 'FEATURES="${FEATURES} ipc-sandbox network-sandbox strict-keepdir"' \
-			>> cnf/make.globals || die
-	fi
-
-	if use native-extensions; then
-		printf "[build_ext]\nportage-ext-modules=true\n" >> \
-			setup.cfg || die
-	fi
-
-	if ! use ipc ; then
-		einfo "Disabling ipc..."
-		sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
-			-i lib/_emerge/AbstractEbuildProcess.py || \
-			die "failed to patch AbstractEbuildProcess.py"
-	fi
-
-	if use xattr && use kernel_linux ; then
-		einfo "Adding FEATURES=xattr to make.globals ..."
-		echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
-			|| die "failed to append to make.globals"
-	fi
-
-	if use build || ! use rsync-verify; then
-		sed -e '/^sync-rsync-verify-metamanifest/s|yes|no|' \
-			-i cnf/repos.conf || die "sed failed"
-	fi
-
-	if [[ -n ${EPREFIX} ]] ; then
-		einfo "Setting portage.const.EPREFIX ..."
-		sed -e "s|^\(SANDBOX_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/sandbox\"\)|\\1${EPREFIX}\\2|" \
-			-e "s|^\(FAKEROOT_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/fakeroot\"\)|\\1${EPREFIX}\\2|" \
-			-e "s|^\(BASH_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/bash\"\)|\\1${EPREFIX}\\2|" \
-			-e "s|^\(MOVE_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/mv\"\)|\\1${EPREFIX}\\2|" \
-			-e "s|^\(PRELINK_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/sbin/prelink\"\)|\\1${EPREFIX}\\2|" \
-			-e "s|^\(EPREFIX[[:space:]]*=[[:space:]]*\"\).*|\\1${EPREFIX}\"|" \
-			-i lib/portage/const.py || \
-			die "Failed to patch portage.const.EPREFIX"
-
-		einfo "Prefixing shebangs ..."
-		while read -r -d $'\0' ; do
-			local shebang=$(head -n1 "$REPLY")
-			if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
-				sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "$REPLY" || \
-					die "sed failed"
-			fi
-		done < <(find . -type f -print0)
-
-		einfo "Adjusting make.globals ..."
-		sed -e "s|\(/usr/portage\)|${EPREFIX}\\1|" \
-			-e "s|^\(PORTAGE_TMPDIR=\"\)\(/var/tmp\"\)|\\1${EPREFIX}\\2|" \
-			-i cnf/make.globals || die "sed failed"
-
-		einfo "Adjusting repos.conf ..."
-		sed -e "s|^\(location = \)\(/usr/portage\)|\\1${EPREFIX}\\2|" \
-			-e "s|^\(sync-openpgp-key-path = \)\(.*\)|\\1${EPREFIX}\\2|" \
-			-i cnf/repos.conf || die "sed failed"
-		if use prefix-guest ; then
-			sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
-				-e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
-				-e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
-				-i cnf/repos.conf || die "sed failed"
-		fi
-
-		einfo "Adding FEATURES=force-prefix to make.globals ..."
-		echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
-			|| die "failed to append to make.globals"
-	fi
-
-	cd "${S}/cnf" || die
-	if [ -f "make.conf.example.${ARCH}".diff ]; then
-		patch make.conf.example "make.conf.example.${ARCH}".diff || \
-			die "Failed to patch make.conf.example"
-	else
-		eerror ""
-		eerror "Portage does not have an arch-specific configuration for this arch."
-		eerror "Please notify the arch maintainer about this issue. Using generic."
-		eerror ""
-	fi
-}
-
-python_compile_all() {
-	local targets=()
-	use doc && targets+=( docbook )
-	use epydoc && targets+=( epydoc )
-
-	if [[ ${targets[@]} ]]; then
-		esetup.py "${targets[@]}"
-	fi
-}
-
-python_test() {
-	esetup.py test
-}
-
-python_install() {
-	# Install sbin scripts to bindir for python-exec linking
-	# they will be relocated in pkg_preinst()
-	distutils-r1_python_install \
-		--system-prefix="${EPREFIX}/usr" \
-		--bindir="$(python_get_scriptdir)" \
-		--docdir="${EPREFIX}/usr/share/doc/${PF}" \
-		--htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \
-		--portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
-		--sbindir="$(python_get_scriptdir)" \
-		--sysconfdir="${EPREFIX}/etc" \
-		"${@}"
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-
-	local targets=()
-	use doc && targets+=(
-		install_docbook
-		--htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
-	)
-	use epydoc && targets+=(
-		install_epydoc
-		--htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
-	)
-
-	# install docs
-	if [[ ${targets[@]} ]]; then
-		esetup.py "${targets[@]}"
-	fi
-
-	systemd_dotmpfilesd "${FILESDIR}"/portage-ccache.conf
-
-	# Due to distutils/python-exec limitations
-	# these must be installed to /usr/bin.
-	local sbin_relocations='archive-conf dispatch-conf emaint env-update etc-update fixpackages regenworld'
-	einfo "Moving admin scripts to the correct directory"
-	dodir /usr/sbin
-	for target in ${sbin_relocations}; do
-		einfo "Moving /usr/bin/${target} to /usr/sbin/${target}"
-		mv "${ED}usr/bin/${target}" "${ED}usr/sbin/${target}" || die "sbin scripts move failed!"
-	done
-}
-
-pkg_preinst() {
-	# comment out sanity test until it is fixed to work
-	# with the new PORTAGE_PYM_PATH
-	#if [[ $ROOT == / ]] ; then
-		## Run some minimal tests as a sanity check.
-		#local test_runner=$(find "${ED}" -name runTests)
-		#if [[ -n $test_runner && -x $test_runner ]] ; then
-			#einfo "Running preinst sanity tests..."
-			#"$test_runner" || die "preinst sanity tests failed"
-		#fi
-	#fi
-
-	# elog dir must exist to avoid logrotate error for bug #415911.
-	# This code runs in preinst in order to bypass the mapping of
-	# portage:portage to root:root which happens after src_install.
-	keepdir /var/log/portage/elog
-	# This is allowed to fail if the user/group are invalid for prefix users.
-	if chown portage:portage "${ED}"var/log/portage{,/elog} 2>/dev/null ; then
-		chmod g+s,ug+rwx "${ED}"var/log/portage{,/elog}
-	fi
-}
diff --git a/sys-apps/portage/portage-2.3.75-r62.ebuild b/sys-apps/portage/portage-2.3.75-r62.ebuild
new file mode 100644
index 0000000..5951be7
--- /dev/null
+++ b/sys-apps/portage/portage-2.3.75-r62.ebuild
@@ -0,0 +1,276 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CROS_WORKON_COMMIT="ceeb0e9ff251cf1bdb92358371ec9e5d6d9f751c"
+CROS_WORKON_TREE="4a1bd562718cd3fd754f07d8b5cf7639858a1d3e"
+PYTHON_COMPAT=(
+	pypy
+	python3_4 python3_5 python3_6 python3_7
+	python2_7
+)
+PYTHON_REQ_USE='bzip2(+),threads(+)'
+
+inherit distutils-r1 systemd
+
+CROS_WORKON_PROJECT="chromiumos/third_party/portage_tool"
+CROS_WORKON_LOCALNAME="portage_tool"
+CROS_WORKON_EGIT_BRANCH="chromeos-2.3.75"
+inherit cros-workon
+
+DESCRIPTION="Portage is the package management and distribution system for Gentoo"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
+
+LICENSE="GPL-2"
+KEYWORDS="*"
+SLOT="0"
+IUSE="build doc epydoc gentoo-dev +ipc +native-extensions -rsync-verify selinux xattr"
+
+DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
+	>=app-arch/tar-1.27
+	dev-lang/python-exec:2
+	>=sys-apps/sed-4.0.5 sys-devel/patch
+	doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 )
+	epydoc? ( $(python_gen_cond_dep '>=dev-python/epydoc-2.0[${PYTHON_USEDEP}]' \
+		'python2*') )"
+# Require sandbox-2.2 for bug #288863.
+# For xattr, we can spawn getfattr and setfattr from sys-apps/attr, but that's
+# quite slow, so it's not considered in the dependencies as an alternative to
+# to python-3.3 / pyxattr. Also, xattr support is only tested with Linux, so
+# for now, don't pull in xattr deps for other kernels.
+# For whirlpool hash, require python[ssl] (bug #425046).
+# For compgen, require bash[readline] (bug #445576).
+# app-portage/gemato goes without PYTHON_USEDEP since we're calling
+# the executable.
+RDEPEND="
+	>=app-arch/tar-1.27
+	dev-lang/python-exec:2
+	!build? (
+		>=sys-apps/sed-4.0.5
+		app-shells/bash:0[readline]
+		>=app-admin/eselect-1.2
+		$(python_gen_cond_dep 'dev-python/pyblake2[${PYTHON_USEDEP}]' \
+			python{2_7,3_4,3_5} pypy)
+		rsync-verify? (
+			>=app-portage/gemato-14[${PYTHON_USEDEP}]
+			>=app-crypt/openpgp-keys-gentoo-release-20180706
+			>=app-crypt/gnupg-2.2.4-r2[ssl(-)]
+		)
+	)
+	elibc_FreeBSD? ( sys-freebsd/freebsd-bin )
+	elibc_glibc? ( >=sys-apps/sandbox-2.2 )
+	elibc_musl? ( >=sys-apps/sandbox-2.2 )
+	elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
+	>=app-misc/pax-utils-0.1.17
+	selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
+	xattr? ( kernel_linux? (
+		>=sys-apps/install-xattr-0.3
+		$(python_gen_cond_dep 'dev-python/pyxattr[${PYTHON_USEDEP}]' \
+			python2_7 pypy)
+	) )
+	!<app-portage/gentoolkit-0.3.0.8-r4
+	!<app-admin/logrotate-3.8.0
+	!<app-portage/repoman-2.3.10"
+PDEPEND="
+	!build? (
+		>=net-misc/rsync-2.6.4
+		userland_GNU? ( >=sys-apps/coreutils-6.4 )
+	)"
+# coreutils-6.4 rdep is for date format in emerge-webrsync #164532
+# NOTE: FEATURES=installsources requires debugedit and rsync
+
+REQUIRED_USE="epydoc? ( $(python_gen_useflags 'python2*') )"
+
+SRC_ARCHIVES="https://dev.gentoo.org/~zmedico/portage/archives"
+
+prefix_src_archives() {
+	local x y
+	for x in ${@}; do
+		for y in ${SRC_ARCHIVES}; do
+			echo ${y}/${x}
+		done
+	done
+}
+
+TARBALL_PV=${PV}
+SRC_URI="mirror://gentoo/${PN}-${TARBALL_PV}.tar.bz2
+	$(prefix_src_archives ${PN}-${TARBALL_PV}.tar.bz2)"
+
+# Disable for CrOS.
+SRC_URI=""
+
+pkg_setup() {
+	use epydoc && DISTUTILS_ALL_SUBPHASE_IMPLS=( python2.7 )
+}
+
+python_prepare_all() {
+	distutils-r1_python_prepare_all
+
+	if use gentoo-dev; then
+		einfo "Disabling --dynamic-deps by default for gentoo-dev..."
+		sed -e 's:\("--dynamic-deps", \)\("y"\):\1"n":' \
+			-i lib/_emerge/create_depgraph_params.py || \
+			die "failed to patch create_depgraph_params.py"
+
+		einfo "Enabling additional FEATURES for gentoo-dev..."
+		echo 'FEATURES="${FEATURES} ipc-sandbox network-sandbox strict-keepdir"' \
+			>> cnf/make.globals || die
+	fi
+
+	if use native-extensions; then
+		printf "[build_ext]\nportage-ext-modules=true\n" >> \
+			setup.cfg || die
+	fi
+
+	if ! use ipc ; then
+		einfo "Disabling ipc..."
+		sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
+			-i lib/_emerge/AbstractEbuildProcess.py || \
+			die "failed to patch AbstractEbuildProcess.py"
+	fi
+
+	if use xattr && use kernel_linux ; then
+		einfo "Adding FEATURES=xattr to make.globals ..."
+		echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
+			|| die "failed to append to make.globals"
+	fi
+
+	if use build || ! use rsync-verify; then
+		sed -e '/^sync-rsync-verify-metamanifest/s|yes|no|' \
+			-i cnf/repos.conf || die "sed failed"
+	fi
+
+	if [[ -n ${EPREFIX} ]] ; then
+		einfo "Setting portage.const.EPREFIX ..."
+		sed -e "s|^\(SANDBOX_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/sandbox\"\)|\\1${EPREFIX}\\2|" \
+			-e "s|^\(FAKEROOT_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/fakeroot\"\)|\\1${EPREFIX}\\2|" \
+			-e "s|^\(BASH_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/bash\"\)|\\1${EPREFIX}\\2|" \
+			-e "s|^\(MOVE_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/mv\"\)|\\1${EPREFIX}\\2|" \
+			-e "s|^\(PRELINK_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/sbin/prelink\"\)|\\1${EPREFIX}\\2|" \
+			-e "s|^\(EPREFIX[[:space:]]*=[[:space:]]*\"\).*|\\1${EPREFIX}\"|" \
+			-i lib/portage/const.py || \
+			die "Failed to patch portage.const.EPREFIX"
+
+		einfo "Prefixing shebangs ..."
+		while read -r -d $'\0' ; do
+			local shebang=$(head -n1 "$REPLY")
+			if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
+				sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "$REPLY" || \
+					die "sed failed"
+			fi
+		done < <(find . -type f -print0)
+
+		einfo "Adjusting make.globals ..."
+		sed -e "s|\(/usr/portage\)|${EPREFIX}\\1|" \
+			-e "s|^\(PORTAGE_TMPDIR=\"\)\(/var/tmp\"\)|\\1${EPREFIX}\\2|" \
+			-i cnf/make.globals || die "sed failed"
+
+		einfo "Adjusting repos.conf ..."
+		sed -e "s|^\(location = \)\(/usr/portage\)|\\1${EPREFIX}\\2|" \
+			-e "s|^\(sync-openpgp-key-path = \)\(.*\)|\\1${EPREFIX}\\2|" \
+			-i cnf/repos.conf || die "sed failed"
+		if use prefix-guest ; then
+			sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
+				-e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
+				-e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
+				-i cnf/repos.conf || die "sed failed"
+		fi
+
+		einfo "Adding FEATURES=force-prefix to make.globals ..."
+		echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
+			|| die "failed to append to make.globals"
+	fi
+
+	cd "${S}/cnf" || die
+	if [ -f "make.conf.example.${ARCH}".diff ]; then
+		patch make.conf.example "make.conf.example.${ARCH}".diff || \
+			die "Failed to patch make.conf.example"
+	else
+		eerror ""
+		eerror "Portage does not have an arch-specific configuration for this arch."
+		eerror "Please notify the arch maintainer about this issue. Using generic."
+		eerror ""
+	fi
+}
+
+python_compile_all() {
+	local targets=()
+	use doc && targets+=( docbook )
+	use epydoc && targets+=( epydoc )
+
+	if [[ ${targets[@]} ]]; then
+		esetup.py "${targets[@]}"
+	fi
+}
+
+python_test() {
+	esetup.py test
+}
+
+python_install() {
+	# Install sbin scripts to bindir for python-exec linking
+	# they will be relocated in pkg_preinst()
+	distutils-r1_python_install \
+		--system-prefix="${EPREFIX}/usr" \
+		--bindir="$(python_get_scriptdir)" \
+		--docdir="${EPREFIX}/usr/share/doc/${PF}" \
+		--htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \
+		--portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
+		--sbindir="$(python_get_scriptdir)" \
+		--sysconfdir="${EPREFIX}/etc" \
+		"${@}"
+}
+
+python_install_all() {
+	distutils-r1_python_install_all
+
+	local targets=()
+	use doc && targets+=(
+		install_docbook
+		--htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
+	)
+	use epydoc && targets+=(
+		install_epydoc
+		--htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
+	)
+
+	# install docs
+	if [[ ${targets[@]} ]]; then
+		esetup.py "${targets[@]}"
+	fi
+
+	systemd_dotmpfilesd "${FILESDIR}"/portage-ccache.conf
+
+	# Due to distutils/python-exec limitations
+	# these must be installed to /usr/bin.
+	local sbin_relocations='archive-conf dispatch-conf emaint env-update etc-update fixpackages regenworld'
+	einfo "Moving admin scripts to the correct directory"
+	dodir /usr/sbin
+	for target in ${sbin_relocations}; do
+		einfo "Moving /usr/bin/${target} to /usr/sbin/${target}"
+		mv "${ED}usr/bin/${target}" "${ED}usr/sbin/${target}" || die "sbin scripts move failed!"
+	done
+}
+
+pkg_preinst() {
+	# comment out sanity test until it is fixed to work
+	# with the new PORTAGE_PYM_PATH
+	#if [[ $ROOT == / ]] ; then
+		## Run some minimal tests as a sanity check.
+		#local test_runner=$(find "${ED}" -name runTests)
+		#if [[ -n $test_runner && -x $test_runner ]] ; then
+			#einfo "Running preinst sanity tests..."
+			#"$test_runner" || die "preinst sanity tests failed"
+		#fi
+	#fi
+
+	# elog dir must exist to avoid logrotate error for bug #415911.
+	# This code runs in preinst in order to bypass the mapping of
+	# portage:portage to root:root which happens after src_install.
+	keepdir /var/log/portage/elog
+	# This is allowed to fail if the user/group are invalid for prefix users.
+	if chown portage:portage "${ED}"var/log/portage{,/elog} 2>/dev/null ; then
+		chmod g+s,ug+rwx "${ED}"var/log/portage{,/elog}
+	fi
+}
diff --git a/sys-apps/systemd-tmpfiles/systemd-tmpfiles-247-r2.ebuild b/sys-apps/systemd-tmpfiles/systemd-tmpfiles-247-r2.ebuild
deleted file mode 100644
index e4d573f..0000000
--- a/sys-apps/systemd-tmpfiles/systemd-tmpfiles-247-r2.ebuild
+++ /dev/null
@@ -1,206 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="be2ed6c3b67e544ae17fd90776f5331abd02b1c9"
-CROS_WORKON_TREE="83bd8f9f33dcbdab56dd52d44086e72c63b85e7b"
-CROS_WORKON_PROJECT="chromiumos/third_party/systemd"
-CROS_WORKON_LOCALNAME="../third_party/systemd"
-
-MINKV="3.11"
-PYTHON_COMPAT=( python3_{6..9} )
-inherit meson python-any-r1 cros-workon
-
-DESCRIPTION="Creates, deletes and cleans up volatile and temporary files and directories"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-SRC_URI="elibc_musl? ( https://dev.gentoo.org/~gyakovlev/distfiles/${P}-musl.tar.xz )"
-
-LICENSE="BSD-2 GPL-2 LGPL-2.1 MIT public-domain"
-SLOT="0"
-KEYWORDS="*"
-IUSE="selinux test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
-	sys-apps/acl:0=
-	>=sys-apps/util-linux-2.30:0=
-	>=sys-kernel/linux-headers-${MINKV}
-	sys-libs/libcap:0=
-	selinux? ( sys-libs/libselinux:0= )
-"
-RDEPEND="${DEPEND}
-	!sys-apps/opentmpfiles
-	!sys-apps/systemd
-"
-
-BDEPEND="
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt:0
-	>=dev-util/meson-0.46
-	>=dev-util/intltool-0.50
-	>=sys-apps/coreutils-8.16
-	sys-devel/m4
-	virtual/pkgconfig
-	test? ( ${PYTHON_DEPS} )
-"
-
-pkg_setup() {
-	use test && python-any-r1_pkg_setup
-}
-
-src_prepare() {
-	# musl patchset from:
-	# http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-core/systemd/systemd
-	use elibc_musl && eapply "${WORKDIR}/${P}-musl"
-	default
-}
-
-src_configure() {
-	# disable everything until configure says "enabled features: ACL, tmpfiles"
-	local systemd_disable_options=(
-		adm-group
-		analyze
-		apparmor
-		audit
-		backlight
-		binfmt
-		blkid
-		bzip2
-		coredump
-		dbus
-		efi
-		elfutils
-		environment-d
-		fdisk
-		gcrypt
-		glib
-		gshadow
-		gnutls
-		hibernate
-		hostnamed
-		hwdb
-		idn
-		ima
-		initrd
-		firstboot
-		kernel-install
-		kmod
-		ldconfig
-		libcryptsetup
-		libcurl
-		libfido2
-		libidn
-		libidn2
-		libiptc
-		link-networkd-shared
-		link-systemctl-shared
-		link-timesyncd-shared
-		link-udev-shared
-		localed
-		logind
-		lz4
-		machined
-		microhttpd
-		networkd
-		nss-myhostname
-		nss-resolve
-		nss-systemd
-		openssl
-		p11kit
-		pam
-		pcre2
-		polkit
-		portabled
-		pstore
-		pwquality
-		randomseed
-		resolve
-		rfkill
-		seccomp
-		$(usex selinux '' selinux)
-		smack
-		sysusers
-		timedated
-		timesyncd
-		tpm
-		qrencode
-		quotacheck
-		userdb
-		utmp
-		vconsole
-		wheel-group
-		xdg-autostart
-		xkbcommon
-		xz
-		zlib
-		zstd
-	)
-
-	# prepend -D and append =false, e.g. zstd becomes -Dzstd=false
-	systemd_disable_options=( ${systemd_disable_options[@]/#/-D} )
-	systemd_disable_options=( ${systemd_disable_options[@]/%/=false} )
-
-	local emesonargs=(
-		-Dacl=true
-		-Dtmpfiles=true
-		-Dstandalone-binaries=true # this and below option does the magic
-		-Dstatic-libsystemd=true
-		-Dsysvinit-path=''
-		${systemd_disable_options[@]}
-	)
-	meson_src_configure
-}
-
-src_compile() {
-	# tmpfiles and sysusers can be built as standalone, link systemd-shared in statically.
-	# https://github.com/systemd/systemd/pull/16061 original implementation
-	# we just need to pass -Dstandalone-binaries=true and
-	# use <name>.standalone target below.
-	# check meson.build for if have_standalone_binaries condition per target.
-	local mytargets=(
-		systemd-tmpfiles.standalone
-		man/tmpfiles.d.5
-		man/systemd-tmpfiles.8
-	)
-	meson_src_compile "${mytargets[@]}"
-}
-
-src_install() {
-	# lean and mean installation, single binary and man-pages
-	pushd "${BUILD_DIR}" > /dev/null || die
-	into /
-	newbin systemd-tmpfiles.standalone systemd-tmpfiles
-
-	doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
-
-	popd > /dev/null || die
-
-	# The init file installation was intentally removed.
-}
-
-src_test() {
-	# 'meson test' will compile full systemd, but we can still outsmart it
-	python_fix_shebang src/test/test-systemd-tmpfiles.py
-	ASAN_OPTIONS=log_path=stderr \
-	UBSAN_OPTIONS=print_stacktrace=1:log_path=stderr \
-	/mnt/host/source/src/platform2/common-mk/platform2_test.py \
-	--sysroot="${SYSROOT}" -- "${EPYTHON}" src/test/test-systemd-tmpfiles.py \
-	"/${BUILD_DIR#${SYSROOT}/}"/systemd-tmpfiles.standalone || die "${FUNCNAME} failed"
-}
-
-# adapted from opentmpfiles ebuild
-add_service() {
-	local initd=$1
-	local runlevel=$2
-
-	elog "Auto-adding '${initd}' service to your ${runlevel} runlevel"
-	mkdir -p "${EROOT}/etc/runlevels/${runlevel}"
-	ln -snf "${EROOT}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
-}
-
-pkg_postinst() {
-	: # This is intentionally removed from the upstream ebuild.
-}
diff --git a/sys-apps/systemd-tmpfiles/systemd-tmpfiles-247-r3.ebuild b/sys-apps/systemd-tmpfiles/systemd-tmpfiles-247-r3.ebuild
new file mode 100644
index 0000000..1f99dd7
--- /dev/null
+++ b/sys-apps/systemd-tmpfiles/systemd-tmpfiles-247-r3.ebuild
@@ -0,0 +1,206 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="6b08fdfc2c5ca9adb0e443e19b40a910c777de64"
+CROS_WORKON_TREE="ee97d599a375b39a743f9745b31a258f80ade471"
+CROS_WORKON_PROJECT="chromiumos/third_party/systemd"
+CROS_WORKON_LOCALNAME="../third_party/systemd"
+
+MINKV="3.11"
+PYTHON_COMPAT=( python3_{6..9} )
+inherit meson python-any-r1 cros-workon
+
+DESCRIPTION="Creates, deletes and cleans up volatile and temporary files and directories"
+HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
+SRC_URI="elibc_musl? ( https://dev.gentoo.org/~gyakovlev/distfiles/${P}-musl.tar.xz )"
+
+LICENSE="BSD-2 GPL-2 LGPL-2.1 MIT public-domain"
+SLOT="0"
+KEYWORDS="*"
+IUSE="selinux test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+	sys-apps/acl:0=
+	>=sys-apps/util-linux-2.30:0=
+	>=sys-kernel/linux-headers-${MINKV}
+	sys-libs/libcap:0=
+	selinux? ( sys-libs/libselinux:0= )
+"
+RDEPEND="${DEPEND}
+	!sys-apps/opentmpfiles
+	!sys-apps/systemd
+"
+
+BDEPEND="
+	app-text/docbook-xml-dtd:4.2
+	app-text/docbook-xml-dtd:4.5
+	app-text/docbook-xsl-stylesheets
+	dev-libs/libxslt:0
+	>=dev-util/meson-0.46
+	>=dev-util/intltool-0.50
+	>=sys-apps/coreutils-8.16
+	sys-devel/m4
+	virtual/pkgconfig
+	test? ( ${PYTHON_DEPS} )
+"
+
+pkg_setup() {
+	use test && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+	# musl patchset from:
+	# http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-core/systemd/systemd
+	use elibc_musl && eapply "${WORKDIR}/${P}-musl"
+	default
+}
+
+src_configure() {
+	# disable everything until configure says "enabled features: ACL, tmpfiles"
+	local systemd_disable_options=(
+		adm-group
+		analyze
+		apparmor
+		audit
+		backlight
+		binfmt
+		blkid
+		bzip2
+		coredump
+		dbus
+		efi
+		elfutils
+		environment-d
+		fdisk
+		gcrypt
+		glib
+		gshadow
+		gnutls
+		hibernate
+		hostnamed
+		hwdb
+		idn
+		ima
+		initrd
+		firstboot
+		kernel-install
+		kmod
+		ldconfig
+		libcryptsetup
+		libcurl
+		libfido2
+		libidn
+		libidn2
+		libiptc
+		link-networkd-shared
+		link-systemctl-shared
+		link-timesyncd-shared
+		link-udev-shared
+		localed
+		logind
+		lz4
+		machined
+		microhttpd
+		networkd
+		nss-myhostname
+		nss-resolve
+		nss-systemd
+		openssl
+		p11kit
+		pam
+		pcre2
+		polkit
+		portabled
+		pstore
+		pwquality
+		randomseed
+		resolve
+		rfkill
+		seccomp
+		$(usex selinux '' selinux)
+		smack
+		sysusers
+		timedated
+		timesyncd
+		tpm
+		qrencode
+		quotacheck
+		userdb
+		utmp
+		vconsole
+		wheel-group
+		xdg-autostart
+		xkbcommon
+		xz
+		zlib
+		zstd
+	)
+
+	# prepend -D and append =false, e.g. zstd becomes -Dzstd=false
+	systemd_disable_options=( ${systemd_disable_options[@]/#/-D} )
+	systemd_disable_options=( ${systemd_disable_options[@]/%/=false} )
+
+	local emesonargs=(
+		-Dacl=true
+		-Dtmpfiles=true
+		-Dstandalone-binaries=true # this and below option does the magic
+		-Dstatic-libsystemd=true
+		-Dsysvinit-path=''
+		${systemd_disable_options[@]}
+	)
+	meson_src_configure
+}
+
+src_compile() {
+	# tmpfiles and sysusers can be built as standalone, link systemd-shared in statically.
+	# https://github.com/systemd/systemd/pull/16061 original implementation
+	# we just need to pass -Dstandalone-binaries=true and
+	# use <name>.standalone target below.
+	# check meson.build for if have_standalone_binaries condition per target.
+	local mytargets=(
+		systemd-tmpfiles.standalone
+		man/tmpfiles.d.5
+		man/systemd-tmpfiles.8
+	)
+	meson_src_compile "${mytargets[@]}"
+}
+
+src_install() {
+	# lean and mean installation, single binary and man-pages
+	pushd "${BUILD_DIR}" > /dev/null || die
+	into /
+	newbin systemd-tmpfiles.standalone systemd-tmpfiles
+
+	doman man/{systemd-tmpfiles.8,tmpfiles.d.5}
+
+	popd > /dev/null || die
+
+	# The init file installation was intentally removed.
+}
+
+src_test() {
+	# 'meson test' will compile full systemd, but we can still outsmart it
+	python_fix_shebang src/test/test-systemd-tmpfiles.py
+	ASAN_OPTIONS=log_path=stderr \
+	UBSAN_OPTIONS=print_stacktrace=1:log_path=stderr \
+	/mnt/host/source/src/platform2/common-mk/platform2_test.py \
+	--sysroot="${SYSROOT}" -- "${EPYTHON}" src/test/test-systemd-tmpfiles.py \
+	"/${BUILD_DIR#${SYSROOT}/}"/systemd-tmpfiles.standalone || die "${FUNCNAME} failed"
+}
+
+# adapted from opentmpfiles ebuild
+add_service() {
+	local initd=$1
+	local runlevel=$2
+
+	elog "Auto-adding '${initd}' service to your ${runlevel} runlevel"
+	mkdir -p "${EROOT}/etc/runlevels/${runlevel}"
+	ln -snf "${EROOT}/etc/init.d/${initd}" "${EROOT}/etc/runlevels/${runlevel}/${initd}"
+}
+
+pkg_postinst() {
+	: # This is intentionally removed from the upstream ebuild.
+}
diff --git a/sys-apps/upstart/upstart-1.2-r43.ebuild b/sys-apps/upstart/upstart-1.2-r43.ebuild
deleted file mode 100644
index 291abed..0000000
--- a/sys-apps/upstart/upstart-1.2-r43.ebuild
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright 1999-2007 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-CROS_WORKON_COMMIT="0dda6d8f285760b12fb2696e9f7b8975702ec5cb"
-CROS_WORKON_TREE="d69eb10c4a65ca386a5bbb961dfe31b246b5fb91"
-CROS_WORKON_PROJECT="chromiumos/third_party/upstart"
-CROS_WORKON_LOCALNAME="../third_party/upstart"
-CROS_WORKON_EGIT_BRANCH="master"
-
-inherit cros-workon autotools flag-o-matic
-
-DESCRIPTION="An event-based replacement for the init daemon"
-HOMEPAGE="http://upstart.ubuntu.com/"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-IUSE="debug direncryption examples nls selinux udev_bridge"
-
-RDEPEND=">=sys-apps/dbus-1.2.16
-	>=sys-libs/libnih-1.0.2
-	selinux? (
-		sys-libs/libselinux
-		sys-libs/libsepol
-	)
-	udev_bridge? (
-		>=virtual/libudev-146
-	)
-	direncryption? (
-		sys-apps/keyutils
-	)"
-DEPEND=">=dev-libs/expat-2.0.0
-	nls? ( sys-devel/gettext )
-	direncryption? (
-		sys-fs/e2fsprogs
-	)
-	${RDEPEND}"
-RDEPEND+="
-	selinux? ( chromeos-base/selinux-policy )"
-
-src_prepare() {
-	default
-
-	# Patch to use kmsg at higher verbosity for logging; this is
-	# our own patch because we can't just add --verbose to the
-	# kernel command-line when we need to.
-	use debug && eapply "${FILESDIR}"/upstart-1.2-log-verbosity.patch
-
-	# The selinux patch changes makefile.am and configure.ac
-	# so we need to run autoreconf, and if we don't the system
-	# will do it for us, and incorrectly too.
-	eautoreconf
-}
-
-src_configure() {
-	# Rearrange PATH so that /usr/local does not override /usr.
-	append-cppflags '-DPATH="\"/usr/bin:/usr/sbin:/sbin:/bin:/usr/local/sbin:/usr/local/bin\""'
-
-	append-lfs-flags
-
-	econf \
-		--prefix=/ \
-		--exec-prefix= \
-		--includedir='${prefix}/usr/include' \
-		--disable-rpath \
-		$(use_with direncryption dircrypto-keyring) \
-		$(use_enable selinux) \
-		$(use_enable nls)
-}
-
-src_compile() {
-	emake NIH_DBUS_TOOL=$(which nih-dbus-tool)
-}
-
-src_install() {
-	default
-	use examples || rm "${D}"/etc/init/*.conf
-	insinto /etc/init
-	# Always use our own upstart-socket-bridge.conf.
-	doins "${FILESDIR}"/init/upstart-socket-bridge.conf
-	# Restore udev bridge if requested.
-	use udev_bridge && doins extra/conf/upstart-udev-bridge.conf
-	# Install D-Bus XML files.
-	insinto /usr/share/dbus-1/interfaces/
-	doins "${S}"/dbus/*.xml
-}
diff --git a/sys-apps/upstart/upstart-1.2-r51.ebuild b/sys-apps/upstart/upstart-1.2-r51.ebuild
new file mode 100644
index 0000000..d6d018b
--- /dev/null
+++ b/sys-apps/upstart/upstart-1.2-r51.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+CROS_WORKON_COMMIT="7a9bc4fbe5897a8b7f52218f4236bb3af604445b"
+CROS_WORKON_TREE="4d503ec7163213da41c0beb5ea4573493fae2582"
+CROS_WORKON_PROJECT="chromiumos/third_party/upstart"
+CROS_WORKON_LOCALNAME="../third_party/upstart"
+CROS_WORKON_EGIT_BRANCH="chromeos-1.2"
+
+inherit cros-workon autotools flag-o-matic
+
+DESCRIPTION="An event-based replacement for the init daemon"
+HOMEPAGE="http://upstart.ubuntu.com/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+IUSE="debug direncryption examples global_seccomp manatee nls selinux udev_bridge"
+
+RDEPEND=">=sys-apps/dbus-1.2.16
+	>=sys-libs/libnih-1.0.2
+	selinux? (
+		sys-libs/libselinux
+		sys-libs/libsepol
+	)
+	udev_bridge? (
+		>=virtual/libudev-146
+	)
+	direncryption? (
+		sys-apps/keyutils
+	)
+	global_seccomp? (
+		chromeos-base/minijail
+	)"
+DEPEND=">=dev-libs/expat-2.0.0
+	nls? ( sys-devel/gettext )
+	direncryption? (
+		sys-fs/e2fsprogs
+	)
+	${RDEPEND}"
+RDEPEND+="
+	selinux? ( chromeos-base/selinux-policy )"
+
+src_prepare() {
+	default
+
+	# Patch to use kmsg at higher verbosity for logging; this is
+	# our own patch because we can't just add --verbose to the
+	# kernel command-line when we need to.
+	use debug && eapply "${FILESDIR}"/upstart-1.2-log-verbosity.patch
+
+	# The selinux patch changes makefile.am and configure.ac
+	# so we need to run autoreconf, and if we don't the system
+	# will do it for us, and incorrectly too.
+	eautoreconf
+}
+
+src_configure() {
+	# Rearrange PATH so that /usr/local does not override /usr.
+	append-cppflags '-DPATH="\"/usr/bin:/usr/sbin:/sbin:/bin:/usr/local/sbin:/usr/local/bin\""'
+
+	append-lfs-flags
+
+	local myconf=(
+		--prefix=/
+		--exec-prefix=
+		--includedir="${prefix}/usr/include"
+		--disable-rpath
+		$(use_with direncryption dircrypto-keyring)
+		$(use_enable selinux)
+		$(use_enable nls)
+		$(use_enable manatee)
+	)
+
+	if use global_seccomp; then
+		myconf+=(
+			--with-seccomp-constants="${SYSROOT}/build/share/constants.json"
+		)
+	fi
+
+	econf "${myconf[@]}"
+}
+
+src_compile() {
+	emake clean
+	emake "NIH_DBUS_TOOL=$(which nih-dbus-tool)"
+}
+
+src_install() {
+	default
+	use examples || rm "${D}"/etc/init/*.conf
+	insinto /etc/init
+	# Always use our own upstart-socket-bridge.conf.
+	doins "${FILESDIR}"/init/upstart-socket-bridge.conf
+	# Restore udev bridge if requested.
+	use udev_bridge && doins extra/conf/upstart-udev-bridge.conf
+	# Install D-Bus XML files.
+	insinto /usr/share/dbus-1/interfaces/
+	doins "${S}"/dbus/*.xml
+}
diff --git a/sys-apps/upstart/upstart-9999.ebuild b/sys-apps/upstart/upstart-9999.ebuild
index c7354c6..1aa482d 100644
--- a/sys-apps/upstart/upstart-9999.ebuild
+++ b/sys-apps/upstart/upstart-9999.ebuild
@@ -5,7 +5,7 @@
 
 CROS_WORKON_PROJECT="chromiumos/third_party/upstart"
 CROS_WORKON_LOCALNAME="../third_party/upstart"
-CROS_WORKON_EGIT_BRANCH="master"
+CROS_WORKON_EGIT_BRANCH="chromeos-1.2"
 
 inherit cros-workon autotools flag-o-matic
 
@@ -15,7 +15,7 @@
 LICENSE="GPL-2"
 SLOT="0"
 KEYWORDS="~*"
-IUSE="debug direncryption examples nls selinux udev_bridge"
+IUSE="debug direncryption examples global_seccomp manatee nls selinux udev_bridge"
 
 RDEPEND=">=sys-apps/dbus-1.2.16
 	>=sys-libs/libnih-1.0.2
@@ -28,6 +28,9 @@
 	)
 	direncryption? (
 		sys-apps/keyutils
+	)
+	global_seccomp? (
+		chromeos-base/minijail
 	)"
 DEPEND=">=dev-libs/expat-2.0.0
 	nls? ( sys-devel/gettext )
@@ -58,18 +61,29 @@
 
 	append-lfs-flags
 
-	econf \
-		--prefix=/ \
-		--exec-prefix= \
-		--includedir='${prefix}/usr/include' \
-		--disable-rpath \
-		$(use_with direncryption dircrypto-keyring) \
-		$(use_enable selinux) \
+	local myconf=(
+		--prefix=/
+		--exec-prefix=
+		--includedir="${prefix}/usr/include"
+		--disable-rpath
+		$(use_with direncryption dircrypto-keyring)
+		$(use_enable selinux)
 		$(use_enable nls)
+		$(use_enable manatee)
+	)
+
+	if use global_seccomp; then
+		myconf+=(
+			--with-seccomp-constants="${SYSROOT}/build/share/constants.json"
+		)
+	fi
+
+	econf "${myconf[@]}"
 }
 
 src_compile() {
-	emake NIH_DBUS_TOOL=$(which nih-dbus-tool)
+	emake clean
+	emake "NIH_DBUS_TOOL=$(which nih-dbus-tool)"
 }
 
 src_install() {
diff --git a/sys-apps/usbguard/files/usbguard-daemon-seccomp-amd64.policy b/sys-apps/usbguard/files/usbguard-daemon-seccomp-amd64.policy
index 902d8a6..c91fa55 100644
--- a/sys-apps/usbguard/files/usbguard-daemon-seccomp-amd64.policy
+++ b/sys-apps/usbguard/files/usbguard-daemon-seccomp-amd64.policy
@@ -35,9 +35,12 @@
 socket: arg0 == AF_NETLINK || arg0 == AF_UNIX
 access: 1
 exit: 1
+faccessat: 1
+faccessat2: 1
 madvise: 1
 restart_syscall: 1
 select: 1
+pselect6: 1
 bind: 1
 prctl: arg0 == PR_SET_NAME
 prlimit64: 1
diff --git a/sys-apps/usbguard/files/usbguard-daemon-seccomp-arm.policy b/sys-apps/usbguard/files/usbguard-daemon-seccomp-arm.policy
index c414f56..521760c6 100644
--- a/sys-apps/usbguard/files/usbguard-daemon-seccomp-arm.policy
+++ b/sys-apps/usbguard/files/usbguard-daemon-seccomp-arm.policy
@@ -13,6 +13,8 @@
 mmap2: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
 mprotect: arg2 in ~PROT_EXEC || arg2 in ~PROT_WRITE
 fstat64: 1
+fstatat64: 1
+statx: 1
 gettimeofday: 1
 poll: 1
 futex: 1
@@ -37,8 +39,12 @@
 setsockopt: 1
 socket: arg0 == AF_NETLINK || arg0 == AF_UNIX
 _newselect: 1
+pselect6: 1
+pselect6_time64: 1
 access: 1
 exit: 1
+faccessat: 1
+faccessat2: 1
 madvise: 1
 restart_syscall: 1
 bind: 1
diff --git a/sys-apps/usbguard/files/usbguard-daemon-seccomp-arm64.policy b/sys-apps/usbguard/files/usbguard-daemon-seccomp-arm64.policy
index 86fbb64..f0f4492 100644
--- a/sys-apps/usbguard/files/usbguard-daemon-seccomp-arm64.policy
+++ b/sys-apps/usbguard/files/usbguard-daemon-seccomp-arm64.policy
@@ -33,6 +33,7 @@
 socket: arg0 == AF_NETLINK || arg0 == AF_UNIX
 exit: 1
 faccessat: 1
+faccessat2: 1
 madvise: 1
 pselect6: 1
 bind: 1
diff --git a/sys-apps/usbguard/files/usbguard.conf b/sys-apps/usbguard/files/usbguard.conf
index 0fbffb9..79e6848 100644
--- a/sys-apps/usbguard/files/usbguard.conf
+++ b/sys-apps/usbguard/files/usbguard.conf
@@ -22,6 +22,7 @@
 # -g    Set the group to usbguard.
 # -c    Provide CAP_DAC_OVERRIDE for write access without root to /sys/bus/usb
 # -l    Enter a new IPC namespace.
+# -N    Enter a new cgroup namespace.
 # -p    Enter a new pid namespace.
 # -e    Enter a new network namespace because usbguard-daemon opens a
 #       unix socket for communication with the usbguard cli client, and
@@ -36,7 +37,7 @@
 #
 # The usbguard-daemon flags are:
 # -s    Log to syslog.
-exec /sbin/minijail0 -u usbguard -g usbguard -c 2 -l -p -e --uts -n -i \
+exec /sbin/minijail0 -u usbguard -g usbguard -c 2 -l -N -p -e --uts -n -i \
     --profile=minimalistic-mountns \
     -b /sys,,1 \
     -k 'tmpfs,/run,tmpfs,MS_NODEV|MS_NOEXEC|MS_NOSUID,mode=755,size=10M' \
diff --git a/sys-apps/usbguard/usbguard-20190808-r10.ebuild b/sys-apps/usbguard/usbguard-20190808-r12.ebuild
similarity index 100%
rename from sys-apps/usbguard/usbguard-20190808-r10.ebuild
rename to sys-apps/usbguard/usbguard-20190808-r12.ebuild
diff --git a/sys-boot/chromeos-bmpblk/chromeos-bmpblk-1.0.1-r301.ebuild b/sys-boot/chromeos-bmpblk/chromeos-bmpblk-1.0.1-r301.ebuild
deleted file mode 100644
index c640e87..0000000
--- a/sys-boot/chromeos-bmpblk/chromeos-bmpblk-1.0.1-r301.ebuild
+++ /dev/null
@@ -1,209 +0,0 @@
-# Copyright 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="720e73efd70668f3d3e5d77d22e9678026076a2b"
-CROS_WORKON_TREE="adc125e63a2cf7b47603a336a8390afa9374aede"
-CROS_WORKON_PROJECT="chromiumos/platform/bmpblk"
-CROS_WORKON_LOCALNAME="../platform/bmpblk"
-CROS_WORKON_OUTOFTREE_BUILD="1"
-CROS_WORKON_USE_VCSID="1"
-
-# TODO(hungte) When "tweaking ebuilds by source repository" is implemented, we
-# can generate this list by some script inside source repo.
-CROS_BOARDS=(
-	ambassador
-	asurada
-	atlas
-	auron_paine
-	auron_yuna
-	banjo
-	brya
-	buddy
-	butterfly
-	candy
-	chell
-	cherry
-	cid
-	clapper
-	cranky
-	daisy
-	daisy_snow
-	daisy_spring
-	daisy_skate
-	dedede
-	deltaur
-	dragonegg
-	drallion
-	endeavour
-	enguarde
-	expresso
-	eve
-	falco
-	fizz
-	flapjack
-	glados
-	glimmer
-	gnawty
-	grunt
-	guado
-	hatch
-	jacuzzi
-	kalista
-	keeby
-	kevin
-	kip
-	kukui
-	lars
-	leon
-	link
-	lulu
-	lumpy
-	mccloud
-	meowth
-	monroe
-	mushu
-	nami
-	nautilus
-	ninja
-	nocturne
-	nyan
-	nyan_big
-	octopus
-	orco
-	palkia
-	panther
-	parrot
-	peach_pi
-	peach_pit
-	peppy
-	poppy
-	puff
-	quawks
-	rammus
-	reks
-	rikku
-	sarien
-	scarlet
-	soraka
-	squawks
-	stout
-	strongbad
-	stumpy
-	sumo
-	swanky
-	tglrvp
-	tidus
-	tricky
-	trogdor
-	veyron_brain
-	veyron_danger
-	veyron_jerry
-	veyron_mickey
-	veyron_minnie
-	veyron_pinky
-	veyron_romy
-	volteer
-	winky
-	wolf
-	zako
-	zoombini
-	zork
-)
-
-PYTHON_COMPAT=( python3_{6..8} )
-inherit cros-workon cros-board python-any-r1
-
-DESCRIPTION="Chrome OS Firmware Bitmap Block"
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/bmpblk/"
-SRC_URI=""
-LICENSE="BSD-Google"
-KEYWORDS="*"
-IUSE="detachable diag_payload +minidiag physical_presence_power
-	physical_presence_recovery"
-
-BDEPEND="${PYTHON_DEPS}"
-DEPEND=""
-
-src_prepare() {
-	export BOARD="$(get_current_board_with_variant "${ARCH}-generic")"
-	export VCSID
-
-	default
-
-	# if fontconfig's cache is empty, prepare single use cache.
-	# That's still faster than having each process (of which there
-	# are many) re-scan the fonts
-	if find /usr/share/cache/fontconfig -maxdepth 0 -type d -empty \
-		-exec false {} +; then
-
-		return
-	fi
-
-	TMPCACHE=$(mktemp -d)
-	cat > $TMPCACHE/local-conf.xml <<-EOF
-		<?xml version="1.0"?>
-		<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
-		<fontconfig>
-		<cachedir>$TMPCACHE</cachedir>
-		<include>/etc/fonts/fonts.conf</include>
-		</fontconfig>
-	EOF
-	export FONTCONFIG_FILE=$TMPCACHE/local-conf.xml
-	fc-cache -v
-}
-
-src_compile() {
-	if use detachable ; then
-		export DETACHABLE=1
-	fi
-
-	# Both diag_payload and minidiag need additional UI images from
-	# chromeos-bmpblk.
-	if use diag_payload || use minidiag ; then
-		export DIAGNOSTIC_UI=1
-	fi
-	if use physical_presence_power ; then
-		export PHYSICAL_PRESENCE="power"
-	elif use physical_presence_recovery ; then
-		export PHYSICAL_PRESENCE="recovery"
-	else
-		export PHYSICAL_PRESENCE="keyboard"
-	fi
-	emake OUTPUT="${WORKDIR}" BOARD="${BOARD}"
-	emake OUTPUT="${WORKDIR}/${BOARD}" ARCHIVER="/usr/bin/archive" archive
-	if [[ "${BOARD}" == "${ARCH}-generic" ]]; then
-		printf "1" > "${WORKDIR}/${BOARD}/vbgfx_not_scaled"
-	fi
-}
-
-doins_if_exist() {
-	local f
-	for f in "$@"; do
-		if [[ -r "${f}" ]]; then
-			doins "${f}"
-		fi
-	done
-}
-
-src_install() {
-	# Most bitmaps need to reside in the RO CBFS only. Many boards do
-	# not have enough space in the RW CBFS regions to contain all
-	# image files.
-	insinto /firmware/cbfs-ro-compress
-	# These files aren't necessary for debug builds. When these files
-	# are missing, Depthcharge will render text-only screens. They look
-	# obviously not ready for release.
-	doins_if_exist "${WORKDIR}/${BOARD}"/vbgfx.bin
-	doins_if_exist "${WORKDIR}/${BOARD}"/locales
-	doins_if_exist "${WORKDIR}/${BOARD}"/locale/ro/locale_*.bin
-	doins_if_exist "${WORKDIR}/${BOARD}"/font.bin
-	# This flag tells the firmware_Bmpblk test to flag this build as
-	# not ready for release.
-	doins_if_exist "${WORKDIR}/${BOARD}"/vbgfx_not_scaled
-
-	# However, if specific bitmaps need to be updated via RW update,
-	# we should also install here.
-	insinto /firmware/cbfs-rw-compress-override
-	doins_if_exist "${WORKDIR}/${BOARD}"/locale/rw/rw_locale_*.bin
-}
diff --git a/sys-boot/chromeos-bmpblk/chromeos-bmpblk-1.0.1-r311.ebuild b/sys-boot/chromeos-bmpblk/chromeos-bmpblk-1.0.1-r311.ebuild
new file mode 100644
index 0000000..b7a839b
--- /dev/null
+++ b/sys-boot/chromeos-bmpblk/chromeos-bmpblk-1.0.1-r311.ebuild
@@ -0,0 +1,154 @@
+# Copyright 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="d4ab83ac871c21f02153a12676cbef5919c1d0a8"
+CROS_WORKON_TREE="9df5aa30d080574443e113e214ff27dbf43b35ce"
+CROS_WORKON_PROJECT="chromiumos/platform/bmpblk"
+CROS_WORKON_LOCALNAME="../platform/bmpblk"
+CROS_WORKON_OUTOFTREE_BUILD="1"
+CROS_WORKON_USE_VCSID="1"
+
+PYTHON_COMPAT=( python3_{6..8} )
+inherit cros-workon python-any-r1
+
+DESCRIPTION="Chrome OS Firmware Bitmap Block"
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/bmpblk/"
+SRC_URI=""
+LICENSE="BSD-Google"
+KEYWORDS="*"
+IUSE="detachable physical_presence_power physical_presence_recovery unibuild"
+REQUIRED_USE="unibuild"
+
+BDEPEND="${PYTHON_DEPS}"
+DEPEND="chromeos-base/chromeos-config:="
+
+BMPBLK_BUILD_NAMES=()
+BMPBLK_BUILD_TARGETS=()
+
+src_prepare() {
+	local name
+	local bmpblk_target
+
+	while read -r name && read -r bmpblk_target; do
+		if [[ -z "${bmpblk_target}" ]]; then
+			# Use ${ARCH}-generic to get a fallback configuration.
+			bmpblk_target="${ARCH}-generic"
+		fi
+		BMPBLK_BUILD_NAMES+=("${name}")
+		BMPBLK_BUILD_TARGETS+=("${bmpblk_target}")
+	done < <(cros_config_host get-firmware-build-combinations bmpblk)
+
+	export VCSID
+
+	default
+
+	# if fontconfig's cache is empty, prepare single use cache.
+	# That's still faster than having each process (of which there
+	# are many) re-scan the fonts
+	if find /usr/share/cache/fontconfig -maxdepth 0 -type d -empty \
+		-exec false {} +; then
+
+		return
+	fi
+
+	TMPCACHE=$(mktemp -d)
+	cat > $TMPCACHE/local-conf.xml <<-EOF
+		<?xml version="1.0"?>
+		<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+		<fontconfig>
+		<cachedir>$TMPCACHE</cachedir>
+		<include>/etc/fonts/fonts.conf</include>
+		</fontconfig>
+	EOF
+	export FONTCONFIG_FILE=$TMPCACHE/local-conf.xml
+	fc-cache -v
+}
+
+# Compile bmpblk for a certain build target.
+#   $1: bmpblk build target name
+compile_bmpblk() {
+	local build_target="$1"
+
+	if use detachable ; then
+		export DETACHABLE=1
+	fi
+
+	if use physical_presence_power ; then
+		export PHYSICAL_PRESENCE="power"
+	elif use physical_presence_recovery ; then
+		export PHYSICAL_PRESENCE="recovery"
+	else
+		export PHYSICAL_PRESENCE="keyboard"
+	fi
+
+	emake OUTPUT="${WORKDIR}" BOARD="${build_target}" || \
+		die "Unable to compile bmpblk for ${build_target}."
+	emake OUTPUT="${WORKDIR}/${build_target}" ARCHIVER="/usr/bin/archive" archive || \
+		die "Unable to archive bmpblk for ${build_target}."
+	if [[ "${build_target}" == "${ARCH}-generic" ]]; then
+		printf "1" > "${WORKDIR}/${build_target}/vbgfx_not_scaled"
+	fi
+}
+
+src_compile() {
+	local build_target
+
+	for build_target in "${BMPBLK_BUILD_TARGETS[@]}"; do
+		# Check we haven't already compiled this target.
+		if [[ -e "${WORKDIR}/${build_target}" ]]; then
+			continue
+		fi
+		compile_bmpblk "${build_target}"
+	done
+}
+
+doins_if_exist() {
+	local f
+	for f in "$@"; do
+		if [[ -r "${f}" ]]; then
+			doins "${f}"
+		fi
+	done
+}
+
+# Compile bmpblk for a certain build target.
+#   $1: build combination name
+#   $2: bmpblk build target name
+install_bmpblk() {
+	local build_combination="$1"
+	local build_target="$2"
+
+	# Most bitmaps need to reside in the RO CBFS only. Many boards do
+	# not have enough space in the RW CBFS regions to contain all
+	# image files.
+	insinto "/firmware/cbfs-ro-compress/${build_combination}"
+	# These files aren't necessary for debug builds. When these files
+	# are missing, Depthcharge will render text-only screens. They look
+	# obviously not ready for release.
+	doins_if_exist "${WORKDIR}/${build_target}"/vbgfx.bin
+	doins_if_exist "${WORKDIR}/${build_target}"/locales
+	doins_if_exist "${WORKDIR}/${build_target}"/locale/ro/locale_*.bin
+	doins_if_exist "${WORKDIR}/${build_target}"/font.bin
+	# This flag tells the firmware_Bmpblk test to flag this build as
+	# not ready for release.
+	doins_if_exist "${WORKDIR}/${build_target}"/vbgfx_not_scaled
+
+	# However, if specific bitmaps need to be updated via RW update,
+	# we should also install here.
+	insinto "/firmware/cbfs-rw-compress-override/${build_combination}"
+	doins_if_exist "${WORKDIR}/${build_target}"/locale/rw/rw_locale_*.bin
+}
+
+src_install() {
+	local i
+	local name
+	local target
+
+	for i in "${!BMPBLK_BUILD_TARGETS[@]}"; do
+		name="${BMPBLK_BUILD_NAMES[${i}]}"
+		target="${BMPBLK_BUILD_TARGETS[${i}]}"
+
+		install_bmpblk "${name}" "${target}"
+	done
+}
diff --git a/sys-boot/chromeos-bmpblk/chromeos-bmpblk-9999.ebuild b/sys-boot/chromeos-bmpblk/chromeos-bmpblk-9999.ebuild
index 5f93551..3ab48c1 100644
--- a/sys-boot/chromeos-bmpblk/chromeos-bmpblk-9999.ebuild
+++ b/sys-boot/chromeos-bmpblk/chromeos-bmpblk-9999.ebuild
@@ -7,124 +7,36 @@
 CROS_WORKON_OUTOFTREE_BUILD="1"
 CROS_WORKON_USE_VCSID="1"
 
-# TODO(hungte) When "tweaking ebuilds by source repository" is implemented, we
-# can generate this list by some script inside source repo.
-CROS_BOARDS=(
-	ambassador
-	asurada
-	atlas
-	auron_paine
-	auron_yuna
-	banjo
-	brya
-	buddy
-	butterfly
-	candy
-	chell
-	cherry
-	cid
-	clapper
-	cranky
-	daisy
-	daisy_snow
-	daisy_spring
-	daisy_skate
-	dedede
-	deltaur
-	dragonegg
-	drallion
-	endeavour
-	enguarde
-	expresso
-	eve
-	falco
-	fizz
-	flapjack
-	glados
-	glimmer
-	gnawty
-	grunt
-	guado
-	hatch
-	jacuzzi
-	kalista
-	keeby
-	kevin
-	kip
-	kukui
-	lars
-	leon
-	link
-	lulu
-	lumpy
-	mccloud
-	meowth
-	monroe
-	mushu
-	nami
-	nautilus
-	ninja
-	nocturne
-	nyan
-	nyan_big
-	octopus
-	orco
-	palkia
-	panther
-	parrot
-	peach_pi
-	peach_pit
-	peppy
-	poppy
-	puff
-	quawks
-	rammus
-	reks
-	rikku
-	sarien
-	scarlet
-	soraka
-	squawks
-	stout
-	strongbad
-	stumpy
-	sumo
-	swanky
-	tglrvp
-	tidus
-	tricky
-	trogdor
-	veyron_brain
-	veyron_danger
-	veyron_jerry
-	veyron_mickey
-	veyron_minnie
-	veyron_pinky
-	veyron_romy
-	volteer
-	winky
-	wolf
-	zako
-	zoombini
-	zork
-)
-
 PYTHON_COMPAT=( python3_{6..8} )
-inherit cros-workon cros-board python-any-r1
+inherit cros-workon python-any-r1
 
 DESCRIPTION="Chrome OS Firmware Bitmap Block"
 HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/bmpblk/"
 SRC_URI=""
 LICENSE="BSD-Google"
 KEYWORDS="~*"
-IUSE="detachable diag_payload +minidiag physical_presence_power
-	physical_presence_recovery"
+IUSE="detachable physical_presence_power physical_presence_recovery unibuild"
+REQUIRED_USE="unibuild"
 
 BDEPEND="${PYTHON_DEPS}"
-DEPEND=""
+DEPEND="chromeos-base/chromeos-config:="
+
+BMPBLK_BUILD_NAMES=()
+BMPBLK_BUILD_TARGETS=()
 
 src_prepare() {
-	export BOARD="$(get_current_board_with_variant "${ARCH}-generic")"
+	local name
+	local bmpblk_target
+
+	while read -r name && read -r bmpblk_target; do
+		if [[ -z "${bmpblk_target}" ]]; then
+			# Use ${ARCH}-generic to get a fallback configuration.
+			bmpblk_target="${ARCH}-generic"
+		fi
+		BMPBLK_BUILD_NAMES+=("${name}")
+		BMPBLK_BUILD_TARGETS+=("${bmpblk_target}")
+	done < <(cros_config_host get-firmware-build-combinations bmpblk)
+
 	export VCSID
 
 	default
@@ -151,16 +63,15 @@
 	fc-cache -v
 }
 
-src_compile() {
+# Compile bmpblk for a certain build target.
+#   $1: bmpblk build target name
+compile_bmpblk() {
+	local build_target="$1"
+
 	if use detachable ; then
 		export DETACHABLE=1
 	fi
 
-	# Both diag_payload and minidiag need additional UI images from
-	# chromeos-bmpblk.
-	if use diag_payload || use minidiag ; then
-		export DIAGNOSTIC_UI=1
-	fi
 	if use physical_presence_power ; then
 		export PHYSICAL_PRESENCE="power"
 	elif use physical_presence_recovery ; then
@@ -168,13 +79,28 @@
 	else
 		export PHYSICAL_PRESENCE="keyboard"
 	fi
-	emake OUTPUT="${WORKDIR}" BOARD="${BOARD}"
-	emake OUTPUT="${WORKDIR}/${BOARD}" ARCHIVER="/usr/bin/archive" archive
-	if [[ "${BOARD}" == "${ARCH}-generic" ]]; then
-		printf "1" > "${WORKDIR}/${BOARD}/vbgfx_not_scaled"
+
+	emake OUTPUT="${WORKDIR}" BOARD="${build_target}" || \
+		die "Unable to compile bmpblk for ${build_target}."
+	emake OUTPUT="${WORKDIR}/${build_target}" ARCHIVER="/usr/bin/archive" archive || \
+		die "Unable to archive bmpblk for ${build_target}."
+	if [[ "${build_target}" == "${ARCH}-generic" ]]; then
+		printf "1" > "${WORKDIR}/${build_target}/vbgfx_not_scaled"
 	fi
 }
 
+src_compile() {
+	local build_target
+
+	for build_target in "${BMPBLK_BUILD_TARGETS[@]}"; do
+		# Check we haven't already compiled this target.
+		if [[ -e "${WORKDIR}/${build_target}" ]]; then
+			continue
+		fi
+		compile_bmpblk "${build_target}"
+	done
+}
+
 doins_if_exist() {
 	local f
 	for f in "$@"; do
@@ -184,24 +110,43 @@
 	done
 }
 
-src_install() {
+# Compile bmpblk for a certain build target.
+#   $1: build combination name
+#   $2: bmpblk build target name
+install_bmpblk() {
+	local build_combination="$1"
+	local build_target="$2"
+
 	# Most bitmaps need to reside in the RO CBFS only. Many boards do
 	# not have enough space in the RW CBFS regions to contain all
 	# image files.
-	insinto /firmware/cbfs-ro-compress
+	insinto "/firmware/cbfs-ro-compress/${build_combination}"
 	# These files aren't necessary for debug builds. When these files
 	# are missing, Depthcharge will render text-only screens. They look
 	# obviously not ready for release.
-	doins_if_exist "${WORKDIR}/${BOARD}"/vbgfx.bin
-	doins_if_exist "${WORKDIR}/${BOARD}"/locales
-	doins_if_exist "${WORKDIR}/${BOARD}"/locale/ro/locale_*.bin
-	doins_if_exist "${WORKDIR}/${BOARD}"/font.bin
+	doins_if_exist "${WORKDIR}/${build_target}"/vbgfx.bin
+	doins_if_exist "${WORKDIR}/${build_target}"/locales
+	doins_if_exist "${WORKDIR}/${build_target}"/locale/ro/locale_*.bin
+	doins_if_exist "${WORKDIR}/${build_target}"/font.bin
 	# This flag tells the firmware_Bmpblk test to flag this build as
 	# not ready for release.
-	doins_if_exist "${WORKDIR}/${BOARD}"/vbgfx_not_scaled
+	doins_if_exist "${WORKDIR}/${build_target}"/vbgfx_not_scaled
 
 	# However, if specific bitmaps need to be updated via RW update,
 	# we should also install here.
-	insinto /firmware/cbfs-rw-compress-override
-	doins_if_exist "${WORKDIR}/${BOARD}"/locale/rw/rw_locale_*.bin
+	insinto "/firmware/cbfs-rw-compress-override/${build_combination}"
+	doins_if_exist "${WORKDIR}/${build_target}"/locale/rw/rw_locale_*.bin
+}
+
+src_install() {
+	local i
+	local name
+	local target
+
+	for i in "${!BMPBLK_BUILD_TARGETS[@]}"; do
+		name="${BMPBLK_BUILD_NAMES[${i}]}"
+		target="${BMPBLK_BUILD_TARGETS[${i}]}"
+
+		install_bmpblk "${name}" "${target}"
+	done
 }
diff --git a/sys-boot/chromeos-bootimage/chromeos-bootimage-0.0.4-r2.ebuild b/sys-boot/chromeos-bootimage/chromeos-bootimage-0.0.4-r2.ebuild
deleted file mode 100644
index eec911e..0000000
--- a/sys-boot/chromeos-bootimage/chromeos-bootimage-0.0.4-r2.ebuild
+++ /dev/null
@@ -1,701 +0,0 @@
-# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
-CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
-CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
-CROS_WORKON_LOCALNAME="../platform/empty-project"
-
-inherit cros-debug cros-unibuild cros-workon
-
-DESCRIPTION="ChromeOS firmware image builder"
-HOMEPAGE="http://www.chromium.org"
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-IUSE="diag_payload seabios wilco_ec zephyr_ec"
-IUSE="${IUSE} fsp unibuild u-boot tianocore cros_ec pd_sync +bmpblk"
-
-# 'ec_ro_sync' can be a solution for devices that will fail to complete recovery
-# due to TCPC reset (crbug.com/782427#c4), but may not work for every devices
-# (crbug.com/1024401, and MT8183 family). Please double check before turning on
-# this option.
-IUSE="${IUSE} ec_ro_sync"
-IUSE="${IUSE} +depthcharge"
-
-BDEPEND="chromeos-base/vboot_reference"
-
-DEPEND="
-	sys-boot/coreboot:=
-	depthcharge? ( sys-boot/depthcharge:= )
-	bmpblk? ( sys-boot/chromeos-bmpblk:= )
-	tianocore? ( sys-boot/edk2:= )
-	seabios? ( sys-boot/chromeos-seabios:= )
-	unibuild? ( chromeos-base/chromeos-config:= )
-	u-boot? ( sys-boot/u-boot:= )
-	cros_ec? ( chromeos-base/chromeos-ec:= )
-	zephyr_ec? ( chromeos-base/chromeos-zephyr:= )
-	pd_sync? ( chromeos-base/chromeos-ec:= )
-	"
-
-# Directory where the generated files are looked for and placed.
-CROS_FIRMWARE_IMAGE_DIR="/firmware"
-CROS_FIRMWARE_ROOT="${SYSROOT}${CROS_FIRMWARE_IMAGE_DIR}"
-
-do_cbfstool() {
-	local output
-	einfo cbfstool "$@"
-	output=$(cbfstool "$@" 2>&1)
-	if [ $? != 0 ]; then
-		die "Failed cbfstool invocation: cbfstool $@\n${output}"
-	fi
-	printf "${output}"
-}
-
-sign_region() {
-	local fw_image=$1
-	local keydir=$2
-	local slot=$3
-
-	local tmpfile=`mktemp`
-	local cbfs=FW_MAIN_${slot}
-	local vblock=VBLOCK_${slot}
-
-	do_cbfstool ${fw_image} read -r ${cbfs} -f ${tmpfile}
-	local size=$(do_cbfstool ${fw_image} print -k -r ${cbfs} | \
-		tail -1 | \
-		sed "/(empty).*null/ s,^(empty)[[:space:]]\(0x[0-9a-f]*\)\tnull\t.*$,\1,")
-	size=$(printf "%d" ${size})
-
-	# If the last entry is called "(empty)" and of type "null", remove it from
-	# the section so it isn't part of the signed data, to improve boot speed
-	# if (as often happens) there's a large unused suffix.
-	if [ -n "${size}" ] && [ ${size} -gt 0 ]; then
-		head -c ${size} ${tmpfile} > ${tmpfile}.2
-		mv ${tmpfile}.2 ${tmpfile}
-		# Use 255 (aka 0xff) as the filler, this greatly reduces
-		# memory areas which need to be programmed for spi flash
-		# chips, because the erase value is 0xff.
-		do_cbfstool ${fw_image} write --force -u -i 255 \
-			-r ${cbfs} -f ${tmpfile}
-	fi
-
-	futility vbutil_firmware \
-		--vblock ${tmpfile}.out \
-		--keyblock ${keydir}/firmware.keyblock \
-		--signprivate ${keydir}/firmware_data_key.vbprivk \
-		--version 1 \
-		--fv ${tmpfile} \
-		--kernelkey ${keydir}/kernel_subkey.vbpubk \
-		--flags 0
-
-	do_cbfstool ${fw_image} write -u -i 255 -r ${vblock} -f ${tmpfile}.out
-
-	rm -f ${tmpfile} ${tmpfile}.out
-}
-
-sign_image() {
-	local fw_image=$1
-	local keydir=$2
-
-	sign_region "${fw_image}" "${keydir}" A
-	sign_region "${fw_image}" "${keydir}" B
-}
-
-add_payloads() {
-	local fw_image=$1
-	local ro_payload=$2
-	local rw_payload=$3
-
-	if [ -n "${ro_payload}" ]; then
-		do_cbfstool "${fw_image}" add-payload \
-			-f "${ro_payload}" -n fallback/payload -c lzma
-	fi
-
-	if [ -n "${rw_payload}" ]; then
-		do_cbfstool "${fw_image}" add-payload -f "${rw_payload}" \
-			-n fallback/payload -c lzma -r FW_MAIN_A,FW_MAIN_B
-	fi
-}
-
-# Returns true if EC supports EFS.
-is_ec_efs_enabled() {
-	local depthcharge_config="$1"
-
-	grep -q "^CONFIG_EC_EFS=y$" "${depthcharge_config}"
-}
-
-# Returns true if coreboot is set up to perform EC software sync
-is_early_ec_sync_enabled() {
-	local coreboot_config="$1"
-
-	grep -q "^CONFIG_VBOOT_EARLY_EC_SYNC=y$" "${coreboot_config}"
-}
-
-# Adds EC{ro,rw} images to CBFS
-add_ec() {
-	local depthcharge_config="$1"
-	local coreboot_config="$2"
-	local rom="$3"
-	local name="$4"
-	local ecroot="$5"
-	local pad="0"
-	local comp_type="lzma"
-
-	# The initial implementation of EC software sync in coreboot does
-	# not support decompression of the EC firmware images.  There is
-	# not enough CAR/SRAM space available to store the entire image
-	# decompressed, so it would have to be decompressed in a "streaming"
-	# fashion.  See crbug.com/1023830.
-	if [[ "${name}" != "pd" ]] && is_early_ec_sync_enabled "${coreboot_config}"; then
-		einfo "Adding uncompressed EC image"
-		comp_type="none"
-	fi
-
-	# When EFS is enabled, the payloads here may be resigned and enlarged so
-	# extra padding is needed.
-	if use depthcharge; then
-		is_ec_efs_enabled "${depthcharge_config}" && pad="128"
-	fi
-	einfo "Padding ${name}{ro,rw} ${pad} byte."
-
-	local rw_file="${ecroot}/ec.RW.bin"
-	# TODO(jrosenth): can we do this for all EC's (not just Zephyr)?
-	if use zephyr_ec; then
-		( cd "${T}" && dump_fmap -x "${ecroot}/zephyr.bin" RW_FW ) || \
-			die "Unable to extract RW region from FMAP"
-		rw_file="${T}/RW_FW"
-	fi
-	openssl dgst -sha256 -binary "${rw_file}" > "${T}/ecrw.hash" || \
-		die "Unable to compute RW hash"
-
-	do_cbfstool "${rom}" add -r FW_MAIN_A,FW_MAIN_B -t raw -c "${comp_type}" \
-		-f "${rw_file}" -n "${name}rw" -p "${pad}"
-	do_cbfstool "${rom}" add -r FW_MAIN_A,FW_MAIN_B -t raw -c none \
-		-f "${T}/ecrw.hash" -n "${name}rw.hash"
-
-	if ! use ec_ro_sync; then
-		einfo "Skip packing EC RO."
-	elif [[ -f "${ecroot}/ec.RO.bin" ]]; then
-		do_cbfstool "${rom}" add -r COREBOOT -t raw -c "${comp_type}" \
-			-f "${ecroot}/ec.RO.bin" -n "${name}ro" -p "${pad}"
-		do_cbfstool "${rom}" add -r COREBOOT -t raw -c none \
-			-f "${ecroot}/ec.RO.hash" -n "${name}ro.hash"
-	else
-		ewarn "Missing ${ecroot}/ec.RO.bin, skip packing EC RO."
-	fi
-
-	# Add EC version file for Wilco EC
-	if use wilco_ec; then
-		do_cbfstool "${rom}" add -r FW_MAIN_A,FW_MAIN_B -t raw -c none \
-			-f "${ecroot}/ec.RW.version" -n "${name}rw.version"
-	fi
-}
-
-# Add payloads and sign the image.
-# This takes the base image and creates a new signed one with the given
-# payloads added to it.
-# The image is placed in directory ${outdir} ("" for current directory).
-# An image suffix is added is ${suffix} is non-empty (e.g. "dev", "net").
-# Args:
-#   $1: Image type (e,g. "" for standard image, "dev" for dev image)
-#   $2: Source image to start from.
-#   $3: Payload to add to read-only image portion
-#   $4: Payload to add to read-write image portion
-build_image() {
-	local image_type=$1
-	local src_image=$2
-	local ro_payload=$3
-	local rw_payload=$4
-	local devkeys_dir="${BROOT}/usr/share/vboot/devkeys"
-
-	[ -n "${image_type}" ] && image_type=".${image_type}"
-	local dst_image="${outdir}image${suffix}${image_type}.bin"
-
-	einfo "Building image ${dst_image}"
-	cp ${src_image} ${dst_image}
-	add_payloads ${dst_image} ${ro_payload} ${rw_payload}
-	sign_image ${dst_image} "${devkeys_dir}"
-}
-
-# Hash the payload of an altfw alternative bootloader
-# Loads the payload from $rom on RW_LEGACY under:
-#   altfw/<name>
-# Stores the hash into $rom on RW-A and RW-B as:
-#   altfw/<name>.sha256
-# Args:
-#   $1: rom file where the payload can be found
-#   $2: name of the alternative bootloader
-hash_altfw_payload() {
-	local rom="$1"
-	local name="$2"
-	local payload_file="altfw/${name}"
-	local hash_file="${payload_file}.sha256"
-	local tmpfile="$(mktemp)"
-	local tmphash="$(mktemp)"
-	local rom
-
-	einfo "  Hashing ${payload_file}"
-
-	# Grab the raw uncompressed payload (-U) and hash it into $tmphash.
-	do_cbfstool "${rom}" extract -r RW_LEGACY -n "${payload_file}" \
-		-f "${tmpfile}" -U >/dev/null
-	openssl dgst -sha256 -binary "${tmpfile}" > "${tmphash}"
-
-	# Copy $tmphash into RW-A and RW-B.
-	do_cbfstool "${rom}" add -r FW_MAIN_A,FW_MAIN_B \
-		-f "${tmphash}" -n "${hash_file}" -t raw
-}
-
-# Set up alternative bootloaders
-#
-# This creates a new CBFS in the RW_LEGACY area and puts bootloaders into it,
-# based on USE flags. A list is written to an "altfw/list" file so that there
-# is a record of what is available.
-# Args:
-#   $1: coreboot build target to use for prefix on target-specific payloads
-#   $2: coreboot file to add alternative bootloaders to
-setup_altfw() {
-	local target="$1"
-	local rom="$2"
-	local bl_list="${T}/altfw"
-	local have_default
-
-	einfo "Adding alternative firmware"
-
-	# Add master header to the RW_LEGACY section
-	printf "ptr_" > "${T}/ptr"
-	do_cbfstool "${rom}" add -r RW_LEGACY -f "${T}/ptr" -n "header pointer" \
-		-t "cbfs header" -b -4
-	do_cbfstool "${rom}" add-master-header -r RW_LEGACY
-	rm "${T}/ptr"
-	> "${bl_list}"
-
-	# Add U-Boot if enabled
-	if use u-boot; then
-		einfo "- Adding U-Boot"
-
-		do_cbfstool "${rom}" add-flat-binary -r RW_LEGACY -n altfw/u-boot \
-			-c lzma -l 0x1110000 -e 0x1110000 \
-			-f "${CROS_FIRMWARE_ROOT}/u-boot.bin"
-		hash_altfw_payload "${rom}" u-boot
-		echo "1;altfw/u-boot;U-Boot;U-Boot bootloader" >> "${bl_list}"
-	fi
-
-	# Add TianoCore if enabled
-	if use tianocore; then
-		einfo "- Adding TianoCore"
-
-		# Some boards only have 1MB of RW_LEGACY space but UEFI is over
-		# 800KB. Allow this to fail, in which case we just don't add it.
-		if cbfstool "${rom}" add-payload -r RW_LEGACY \
-				-n altfw/tianocore -c lzma -f \
-				"${CROS_FIRMWARE_ROOT}/tianocore/UEFIPAYLOAD.fd"; then
-			hash_altfw_payload "${rom}" tianocore
-			echo "2;altfw/tianocore;TianoCore;TianoCore bootloader" \
-				>> "${bl_list}"
-
-			# For now, use TianoCore as the default.
-			echo "0;altfw/tianocore;TianoCore;TianoCore bootloader" \
-				>> "${bl_list}"
-			have_default=y
-			einfo "  (sing TianoCore as default)"
-		else
-			ewarn "Not enough space for TianoCore: omitted"
-		fi
-	fi
-
-	# Add SeaBIOS if enabled
-	if use seabios; then
-		local root="${CROS_FIRMWARE_ROOT}/seabios/"
-		einfo "- Adding SeaBIOS"
-
-		do_cbfstool "${rom}" add-payload -r RW_LEGACY -n altfw/seabios -c lzma \
-			-f "${root}/seabios.elf"
-		hash_altfw_payload "${rom}" seabios
-		for f in "${root}oprom/"*; do
-			if [[ -f "${f}" ]]; then
-				do_cbfstool "${rom}" add -r RW_LEGACY -f "${f}" \
-					-n "${f#${root}oprom/}" -t optionrom
-			fi
-		done
-		for f in "${root}cbfs/"*; do
-			if [[ -f "${f}" ]]; then
-				do_cbfstool "${rom}" add -r RW_LEGACY -f "${f}" \
-					-n "${f#${root}cbfs/}" -t raw
-			fi
-		done
-		for f in "${root}"etc/*; do
-			do_cbfstool "${rom}" add -r RW_LEGACY -f "${f}" \
-				-n "${f#$root}" -t raw
-		done
-		echo "3;altfw/seabios;SeaBIOS;SeaBIOS bootloader" \
-			>> "${bl_list}"
-	fi
-
-	# Add Diagnostic Payload if enabled
-	if use diag_payload; then
-		einfo "- Adding Diagnostic Payload"
-
-		do_cbfstool "${rom}" add-payload -r RW_LEGACY -n altfw/diag -c lzma -f \
-			"${CROS_FIRMWARE_ROOT}/diag_payload/${target}-diag.bin"
-		hash_altfw_payload "${rom}" diag
-		echo "5;altfw/diag;Diagnostics;System Diagnostics" \
-			>> "${bl_list}"
-
-		# Use Diag as the default if tianocore is not enabled
-		if [[ -z "${have_default}" ]]; then
-			echo "0;altfw/diag;Diagnostics;System Diagnostics" \
-				>> "${bl_list}"
-			have_default=y
-			einfo "  (using Diagnostics as default)"
-		fi
-	fi
-
-	# Add the list
-	einfo "- adding firmware list"
-	do_cbfstool "${rom}" add -r RW_LEGACY -n altfw/list -t raw -f "${bl_list}"
-
-	# Add the tag for silent updating.
-	do_cbfstool "${rom}" add-int -r RW_LEGACY -i 1 -n "cros_allow_auto_update"
-
-	# TODO(kitching): Get hash and sign.
-}
-
-# Check whether assets will fit in the image.
-#
-# Estimate the total size of compressed assets, uncompressed assets, and the
-# compressed payload.  Warn when the size exceeds free space available in
-# RO or RW CBFS regions.  Note that this is purely informational and doesn't
-# actually trigger failure.
-#
-# Args:
-#   $1: Filename of image to add to (use serial image for best coverage)
-#   $2: Payload to add to both RO and RW regions
-check_assets() {
-	local rom="$1"
-	local payload="$2"
-
-	# The objcopy architecture doesn't really need to match, it just needs any ELF.
-	local payload_size=$(objcopy -I elf32-i386 -O binary "${payload}" /proc/self/fd/1 2>/dev/null | xz -9 -c | wc -c)
-
-	local rw_assets_size=$(find compressed-assets-rw "compressed-assets-rw/${build_name}" "raw-assets-rw/${build_name}" -maxdepth 1 -type f -print0 | du --files0-from=- -bc | tail -n1 | cut -f1)
-	local rw_override_assets_size=$(find compressed-assets-rw-override "compressed-assets-rw-override/${build_name}" -maxdepth 1 -type f -print0 | du --files0-from=- -bc | tail -n1 | cut -f1)
-	local rw_size=$((rw_assets_size + rw_override_assets_size + payload_size))
-	local rw_free=$(($(do_cbfstool "${rom}" print -r FW_MAIN_A | awk '$1 ~ /empty/ {s+=$4} END {print s}') - payload_size))
-
-	# Most RW assets are also added to RO region.
-	local ro_assets_size=$(find compressed-assets-ro "compressed-assets-ro/${build_name}" -maxdepth 1 -type f -print0 | du --files0-from=- -bc | tail -n1 | cut -f1)
-	local ro_size=$((ro_assets_size + rw_assets_size + payload_size))
-	local ro_free=$(($(do_cbfstool "${rom}" print -r COREBOOT | awk '$1 ~ /empty/ {s+=$4} END {print s}') - payload_size))
-
-	einfo "assets (RO): $((ro_size / 1024)) KiB ($((ro_free / 1024)) KiB free) ${build_name}"
-	[[ ${ro_size} -gt ${ro_free} ]] &&
-		ewarn "WARNING: RO estimated $(((ro_size - ro_free) / 1024)) KiB over limit ${build_name}"
-
-	einfo "assets (RW): $((rw_size / 1024)) KiB ($((rw_free / 1024)) KiB free) ${build_name}"
-	[[ ${rw_size} -gt ${rw_free} ]] &&
-		ewarn "WARNING: RW estimated $(((rw_size - rw_free) / 1024)) KiB over limit ${build_name}"
-}
-
-# Add compressed assets, both common and target, to CBFS using cbfstool
-# Args:
-#  $1: Path where the compressed assets are present.
-#  $2: CBFS Regions to add the compressed assets to.
-add_compressed_assets() {
-	local asset_path="$1"
-	local cbfs_regions="$2"
-	local build_name="$3"
-
-	while IFS= read -r -d '' file; do
-		do_cbfstool "${rom}" add -r "${cbfs_regions}" -f "${file}" \
-			-n "$(basename "${file}")" -t raw -c precompression
-	done < <(find "${asset_path}" -maxdepth 1 -type f -print0)
-
-	# Pre uni-builds have build_name not set. So check to avoid adding
-	# duplicate assets.
-	if [ -n "${build_name}" ]; then
-		while IFS= read -r -d '' file; do
-			do_cbfstool "${rom}" add -r "${cbfs_regions}" -f "${file}" \
-				-n "$(basename "${file}")" -t raw -c precompression
-		done < <(find "${asset_path}/${build_name}" -maxdepth 1 -type f -print0)
-	fi
-}
-
-# Add Chrome OS assets to the base and serial images:
-#       compressed-assets-ro/*
-#         - fonts, images and screens for recovery mode, originally from
-#           cbfs-ro-compress/*; pre-compressed in src_compile()
-#       compressed-assets-rw/*
-#         - files originally from cbfs-rw-compress/*; pre-compressed
-#           in src_compile(); used for vbt*.bin
-#       compressed-assets-rw-override/*
-#         - updated images for screens, originally from
-#           cbfs-rw-compress-override/*; pre-compressed in src_compile(); used
-#           for rw_locale*.bin
-#       raw-assets-rw/*
-#         - files originally from cbfs-rw-raw/*, used for extra wifi_sar files
-#
-# Args:
-#  $1: Filename of image to add to
-add_assets() {
-	local rom="$1"
-
-	add_compressed_assets "compressed-assets-ro" "COREBOOT" "${build_name}"
-	add_compressed_assets "compressed-assets-rw" \
-				"COREBOOT,FW_MAIN_A,FW_MAIN_B" "${build_name}"
-	add_compressed_assets "compressed-assets-rw-override" \
-				"FW_MAIN_A,FW_MAIN_B" "${build_name}"
-
-	while IFS= read -r -d '' file; do
-		do_cbfstool "${rom}" add -r COREBOOT,FW_MAIN_A,FW_MAIN_B \
-			-f "${file}" -n "$(basename "${file}")" -t raw
-	done < <(find "raw-assets-rw/${build_name}" -type f -print0)
-}
-
-# Compress static and firmware target specific assets:
-#       compressed-assets-ro/*
-#         - fonts, images and screens for recovery mode, originally from
-#           cbfs-ro-compress/*; pre-compressed in src_compile()
-#       compressed-assets-rw/*
-#         - files originally from cbfs-rw-compress/*; pre-compressed
-#           in src_compile(); used for vbt*.bin
-#       compressed-assets-rw-override/*
-#         - updated images for screens, originally from
-#           cbfs-rw-compress-override/*; pre-compressed in src_compile(); used
-#           for rw_locale*.bin
-# Args:
-#  $1: Root path for the firmware build
-#  $2: Firmware target where the uncompressed assets are present. When nothing
-#      is passed, then static assets are being compressed.
-compress_assets() {
-	local froot="$1"
-	local build_name="$2"
-
-	# files from cbfs-ro-compress/ are installed in
-	# all images' RO CBFS, compressed
-	mkdir -p compressed-assets-ro/"${build_name}"
-	find "${froot}"/cbfs-ro-compress/"${build_name}" -mindepth 1 -maxdepth 1 \
-		-type f -printf "%P\0" 2>/dev/null | \
-		xargs -0 -n 1 -P "$(nproc)" -I '{}' \
-		cbfs-compression-tool compress \
-			"${froot}"/cbfs-ro-compress/"${build_name}"/'{}' \
-			compressed-assets-ro/"${build_name}"/'{}' LZMA
-
-	# files from cbfs-rw-compress/ are installed in
-	# all images' RO/RW CBFS, compressed
-	mkdir -p compressed-assets-rw/"${build_name}"
-	find "${froot}"/cbfs-rw-compress/"${build_name}" -mindepth 1 -maxdepth 1 \
-		-type f -printf "%P\0" 2>/dev/null | \
-		xargs -0 -n 1 -P "$(nproc)" -I '{}' \
-		cbfs-compression-tool compress \
-			"${froot}"/cbfs-rw-compress/"${build_name}"/'{}' \
-			compressed-assets-rw/"${build_name}"/'{}' LZMA
-
-	# files from cbfs-rw-compress-override/ are installed in
-	# all images' RW CBFS, compressed
-	mkdir -p compressed-assets-rw-override/"${build_name}"
-	find "${froot}"/cbfs-rw-compress-override/"${build_name}" -mindepth 1 \
-		-maxdepth 1 -type f -printf "%P\0" 2>/dev/null | \
-		xargs -0 -n 1 -P "$(nproc)" -I '{}' \
-		cbfs-compression-tool compress \
-			"${froot}"/cbfs-rw-compress-override/"${build_name}"/'{}' \
-			compressed-assets-rw-override/"${build_name}"/'{}' LZMA
-}
-
-# Build firmware images for a given board
-# Creates image*.bin for the following images:
-#    image.bin          - production image (no serial console)
-#    image.serial.bin   - production image with serial console enabled
-#    image.dev.bin      - developer image with serial console enabled
-#    image.net.bin      - netboot image with serial console enabled
-#
-# If $2 is set, then it uses "image-$2" instead of "image" and puts images in
-# the $2 subdirectory.
-#
-# If outdir
-# Args:
-#   $1: Directory containing the input files:
-#       coreboot.rom             - coreboot ROM image containing various pieces
-#       coreboot.rom.serial      - same, but with serial console enabled
-#       depthcharge/depthcharge.elf - depthcharge ELF payload
-#       depthcharge/dev.elf      - developer version of depthcharge
-#       depthcharge/netboot.elf  - netboot version of depthcharge
-#       depthcharge/depthcharge.config - configuration used to build depthcharge image
-#       (plus files mentioned above in add_assets)
-#   $2: Name to use when naming output files (see note above, can be empty)
-#
-#   $3: Name of target to build for coreboot (can be empty)
-#
-#   $4: Name of target to build for depthcharge (can be empty)
-#
-#   $5: Name of target to build for ec (can be empty)
-build_images() {
-	local froot="$1"
-	local build_name="$2"
-	local coreboot_build_target="$3"
-	local depthcharge_build_target="$4"
-	local ec_build_target="$5"
-	local outdir
-	local suffix
-	local file
-	local rom
-
-	local coreboot_orig
-	local depthcharge_prefix
-	local coreboot_config
-
-	if [ -n "${build_name}" ]; then
-		einfo "Building firmware images for ${build_name}"
-		outdir="${build_name}/"
-		mkdir "${outdir}"
-		suffix="-${build_name}"
-		coreboot_orig="${froot}/${coreboot_build_target}/coreboot.rom"
-		coreboot_config="${froot}/${coreboot_build_target}/coreboot.config"
-		depthcharge_prefix="${froot}/${depthcharge_build_target}/depthcharge"
-	else
-		coreboot_orig="${froot}/coreboot.rom"
-		coreboot_config="${froot}/coreboot.config"
-		depthcharge_prefix="${froot}/depthcharge"
-	fi
-
-	local coreboot_file="coreboot.rom"
-	cp "${coreboot_orig}" "${coreboot_file}"
-	cp "${coreboot_orig}.serial" "${coreboot_file}.serial"
-
-	local depthcharge
-	local depthcharge_dev
-	local netboot
-	local depthcharge_config
-
-	if use depthcharge; then
-		depthcharge="${depthcharge_prefix}/depthcharge.elf"
-		depthcharge_dev="${depthcharge_prefix}/dev.elf"
-		netboot="${depthcharge_prefix}/netboot.elf"
-		depthcharge_config="${depthcharge_prefix}/depthcharge.config"
-	fi
-
-	if [[ -d ${froot}/cbfs ]]; then
-		die "something is still using ${froot}/cbfs, which is deprecated."
-	fi
-
-	if use cros_ec || use wilco_ec || use zephyr_ec; then
-		if use unibuild; then
-			einfo "Adding EC for ${ec_build_target}"
-			add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}" "ec" "${froot}/${ec_build_target}"
-			add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}.serial" "ec" "${froot}/${ec_build_target}"
-		else
-			add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}" "ec" "${froot}"
-			add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}.serial" "ec" "${froot}"
-		fi
-	fi
-
-	local pd_folder="${froot}/"
-	if use unibuild; then
-		pd_folder+="${ec_build_target}_pd"
-	else
-		# For non-unibuild boards this must match PD_FIRMWARE in board
-		# overlay make.defaults.
-		pd_folder+="${PD_FIRMWARE:-$(basename "${ROOT}")_pd}"
-	fi
-
-	if use pd_sync; then
-		add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}" "pd" "${pd_folder}"
-		add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}.serial" "pd" "${pd_folder}"
-	fi
-
-	setup_altfw "${coreboot_build_target}" "${coreboot_file}"
-	setup_altfw "${coreboot_build_target}" "${coreboot_file}.serial"
-
-	check_assets "${coreboot_file}.serial" "${depthcharge_dev}"
-	add_assets "${coreboot_file}"
-	add_assets "${coreboot_file}.serial"
-
-	build_image "" "${coreboot_file}" "${depthcharge}" "${depthcharge}"
-
-	build_image serial "${coreboot_file}.serial" \
-		"${depthcharge}" "${depthcharge}"
-
-	build_image dev "${coreboot_file}.serial" \
-		"${depthcharge_dev}" "${depthcharge_dev}"
-
-	# Build a netboot image.
-	#
-	# The readonly payload is usually depthcharge and the read/write
-	# payload is usually netboot. This way the netboot image can be used
-	# to boot from USB through recovery mode if necessary.
-	build_image net "${coreboot_file}.serial" "${depthcharge}" "${netboot}"
-
-	# Set convenient netboot parameter defaults for developers.
-	local name="${build_name:-"${BOARD_USE}"}"
-	local bootfile="${PORTAGE_USERNAME}/${name}/vmlinuz"
-	local argsfile="${PORTAGE_USERNAME}/${name}/cmdline"
-	"${FILESDIR}/netboot_firmware_settings.py" \
-		-i "${outdir}image${suffix}.net.bin" \
-		--bootfile="${bootfile}" --argsfile="${argsfile}" &&
-		"${FILESDIR}/netboot_firmware_settings.py" \
-			-i "${outdir}image${suffix}.dev.bin" \
-			--bootfile="${bootfile}" --argsfile="${argsfile}" ||
-		die "failed to preset netboot parameter defaults."
-	einfo "Netboot configured to boot ${bootfile}, fetch kernel command" \
-		"line from ${argsfile}, and use the DHCP-provided TFTP server IP."
-}
-
-src_compile() {
-	local froot="${CROS_FIRMWARE_ROOT}"
-	einfo "Copying static rw assets"
-
-	if [[ -d "${froot}"/cbfs-rw-raw ]]; then
-		mkdir raw-assets-rw
-		cp -R "${froot}"/cbfs-rw-raw/* raw-assets-rw/ ||
-			die "unable to copy files cbfw-rw-raw files"
-	fi
-
-	einfo "Compressing static assets"
-
-	if [[ -d ${froot}/rocbfs ]]; then
-		die "something is still using ${froot}/rocbfs, which is deprecated."
-	fi
-
-	compress_assets "${froot}"
-
-	if use unibuild; then
-		local fields="coreboot,depthcharge,ec"
-		local cmd="get-firmware-build-combinations"
-		(cros_config_host "${cmd}" "${fields}" || die) |
-		while read -r name; do
-			read -r coreboot
-			read -r depthcharge
-			read -r ec
-			einfo "Compressing target assets for: ${name}"
-			compress_assets "${froot}" "${name}"
-			einfo "Building image for: ${name}"
-			if use zephyr_ec; then
-				# Zephyr installs under ${froot}/${name}/zephyr.bin,
-				# instead of using the EC build target name.
-				ec="${name}"
-			fi
-			build_images "${froot}" "${name}" "${coreboot}" "${depthcharge}" "${ec}"
-		done
-	else
-		build_images "${froot}" "" "" "" ""
-	fi
-}
-
-src_install() {
-	insinto "${CROS_FIRMWARE_IMAGE_DIR}"
-	if use unibuild; then
-		local fields="coreboot,depthcharge"
-		local cmd="get-firmware-build-combinations"
-		(cros_config_host "${cmd}" "${fields}" || die) |
-		while read -r name; do
-			read -r coreboot
-			read -r depthcharge
-			doins "${name}"/image-${name}*.bin
-		done
-	else
-		doins image*.bin
-	fi
-}
diff --git a/sys-boot/chromeos-bootimage/chromeos-bootimage-0.0.4-r7.ebuild b/sys-boot/chromeos-bootimage/chromeos-bootimage-0.0.4-r7.ebuild
new file mode 100644
index 0000000..7882a9d
--- /dev/null
+++ b/sys-boot/chromeos-bootimage/chromeos-bootimage-0.0.4-r7.ebuild
@@ -0,0 +1,693 @@
+# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
+CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="../platform/empty-project"
+
+inherit cros-debug cros-unibuild cros-workon
+
+DESCRIPTION="ChromeOS firmware image builder"
+HOMEPAGE="http://www.chromium.org"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="*"
+IUSE="seabios wilco_ec zephyr_ec"
+IUSE="${IUSE} fsp unibuild u-boot tianocore cros_ec pd_sync +bmpblk"
+
+# 'ec_ro_sync' can be a solution for devices that will fail to complete recovery
+# due to TCPC reset (crbug.com/782427#c4), but may not work for every devices
+# (crbug.com/1024401, and MT8183 family). Please double check before turning on
+# this option.
+IUSE="${IUSE} ec_ro_sync"
+IUSE="${IUSE} +depthcharge"
+IUSE="${IUSE} payload-align-64 +payload-compress-lzma payload-compress-lz4"
+
+REQUIRED_USE="^^ ( payload-compress-lzma payload-compress-lz4 )"
+
+
+# No pre-unibuild boards build firmware on ToT anymore.  Assume
+# unibuild to keep ebuild clean.
+REQUIRED_USE="unibuild"
+
+BDEPEND="chromeos-base/vboot_reference"
+
+DEPEND="
+	sys-boot/coreboot:=
+	depthcharge? ( sys-boot/depthcharge:= )
+	bmpblk? ( sys-boot/chromeos-bmpblk:= )
+	tianocore? ( sys-boot/edk2:= )
+	seabios? ( sys-boot/chromeos-seabios:= )
+	chromeos-base/chromeos-config:=
+	u-boot? ( sys-boot/u-boot:= )
+	cros_ec? ( chromeos-base/chromeos-ec:= )
+	zephyr_ec? ( chromeos-base/chromeos-zephyr:= )
+	pd_sync? ( chromeos-base/chromeos-ec:= )
+	"
+
+# While this package is never actually executed, we still need to specify
+# RDEPEND. A binary version of this package could exist that was built using an
+# outdated version of chromeos-config. Without the RDEPEND this stale binary
+# package is considered valid by the package manager. This is problematic
+# because we could have two binary packages installed having been build with
+# different versions of chromeos-config. By specifying the RDEPEND we force
+# the package manager to ensure the two versions use the same chromeos-config.
+RDEPEND="${DEPEND}"
+
+# Directory where the generated files are looked for and placed.
+CROS_FIRMWARE_IMAGE_DIR="/firmware"
+CROS_FIRMWARE_ROOT="${SYSROOT}${CROS_FIRMWARE_IMAGE_DIR}"
+
+do_cbfstool() {
+	local output
+	einfo cbfstool "$@"
+	output=$(cbfstool "$@" 2>&1)
+	if [ $? != 0 ]; then
+		die "Failed cbfstool invocation: cbfstool $@\n${output}"
+	fi
+	printf "${output}"
+}
+
+sign_region() {
+	local fw_image=$1
+	local keydir=$2
+	local slot=$3
+
+	local tmpfile=`mktemp`
+	local cbfs=FW_MAIN_${slot}
+	local vblock=VBLOCK_${slot}
+
+	do_cbfstool ${fw_image} read -r ${cbfs} -f ${tmpfile}
+	local size=$(do_cbfstool ${fw_image} print -k -r ${cbfs} | \
+		tail -1 | \
+		sed "/(empty).*null/ s,^(empty)[[:space:]]\(0x[0-9a-f]*\)\tnull\t.*$,\1,")
+	size=$(printf "%d" ${size})
+
+	# If the last entry is called "(empty)" and of type "null", remove it from
+	# the section so it isn't part of the signed data, to improve boot speed
+	# if (as often happens) there's a large unused suffix.
+	if [ -n "${size}" ] && [ ${size} -gt 0 ]; then
+		head -c ${size} ${tmpfile} > ${tmpfile}.2
+		mv ${tmpfile}.2 ${tmpfile}
+		# Use 255 (aka 0xff) as the filler, this greatly reduces
+		# memory areas which need to be programmed for spi flash
+		# chips, because the erase value is 0xff.
+		do_cbfstool ${fw_image} write --force -u -i 255 \
+			-r ${cbfs} -f ${tmpfile}
+	fi
+
+	futility vbutil_firmware \
+		--vblock ${tmpfile}.out \
+		--keyblock ${keydir}/firmware.keyblock \
+		--signprivate ${keydir}/firmware_data_key.vbprivk \
+		--version 1 \
+		--fv ${tmpfile} \
+		--kernelkey ${keydir}/kernel_subkey.vbpubk \
+		--flags 0
+
+	do_cbfstool ${fw_image} write -u -i 255 -r ${vblock} -f ${tmpfile}.out
+
+	rm -f ${tmpfile} ${tmpfile}.out
+}
+
+sign_image() {
+	local fw_image=$1
+	local keydir=$2
+
+	sign_region "${fw_image}" "${keydir}" A
+	sign_region "${fw_image}" "${keydir}" B
+}
+
+add_payloads() {
+	local fw_image=$1
+	local ro_payload=$2
+	local rw_payload=$3
+
+	local -a args=(-n fallback/payload)
+
+	if use payload-compress-lzma; then
+		args+=(-c lzma)
+	elif use payload-compress-lz4; then
+		args+=(-c lz4)
+	fi
+
+	if use payload-align-64; then
+		args+=(-a 64)
+	fi
+
+	if [ -n "${ro_payload}" ]; then
+		do_cbfstool "${fw_image}" add-payload \
+			-f "${ro_payload}" "${args[@]}"
+	fi
+
+	if [ -n "${rw_payload}" ]; then
+		do_cbfstool "${fw_image}" add-payload -f "${rw_payload}" \
+			"${args[@]}" -r FW_MAIN_A,FW_MAIN_B
+	fi
+}
+
+# Returns true if EC supports EFS.
+is_ec_efs_enabled() {
+	local depthcharge_config="$1"
+
+	grep -q "^CONFIG_EC_EFS=y$" "${depthcharge_config}"
+}
+
+# Returns true if coreboot is set up to perform EC software sync
+is_early_ec_sync_enabled() {
+	local coreboot_config="$1"
+
+	grep -q "^CONFIG_VBOOT_EARLY_EC_SYNC=y$" "${coreboot_config}"
+}
+
+# Adds EC{ro,rw} images to CBFS
+add_ec() {
+	local depthcharge_config="$1"
+	local coreboot_config="$2"
+	local rom="$3"
+	local name="$4"
+	local ecroot="$5"
+	local pad="0"
+	local comp_type="lzma"
+
+	# The initial implementation of EC software sync in coreboot does
+	# not support decompression of the EC firmware images.  There is
+	# not enough CAR/SRAM space available to store the entire image
+	# decompressed, so it would have to be decompressed in a "streaming"
+	# fashion.  See crbug.com/1023830.
+	if [[ "${name}" != "pd" ]] && is_early_ec_sync_enabled "${coreboot_config}"; then
+		einfo "Adding uncompressed EC image"
+		comp_type="none"
+	fi
+
+	# When EFS is enabled, the payloads here may be resigned and enlarged so
+	# extra padding is needed.
+	if use depthcharge; then
+		is_ec_efs_enabled "${depthcharge_config}" && pad="128"
+	fi
+	einfo "Padding ${name}{ro,rw} ${pad} byte."
+
+	local rw_file="${ecroot}/ec.RW.bin"
+	# TODO(jrosenth): can we do this for all EC's (not just Zephyr)?
+	if use zephyr_ec; then
+		( cd "${T}" && dump_fmap -x "${ecroot}/zephyr.bin" RW_FW ) || \
+			die "Unable to extract RW region from FMAP"
+		rw_file="${T}/RW_FW"
+	fi
+	openssl dgst -sha256 -binary "${rw_file}" > "${T}/ecrw.hash" || \
+		die "Unable to compute RW hash"
+
+	do_cbfstool "${rom}" add -r FW_MAIN_A,FW_MAIN_B -t raw -c "${comp_type}" \
+		-f "${rw_file}" -n "${name}rw" -p "${pad}"
+	do_cbfstool "${rom}" add -r FW_MAIN_A,FW_MAIN_B -t raw -c none \
+		-f "${T}/ecrw.hash" -n "${name}rw.hash"
+
+	if ! use ec_ro_sync; then
+		einfo "Skip packing EC RO."
+	elif [[ -f "${ecroot}/ec.RO.bin" ]]; then
+		do_cbfstool "${rom}" add -r COREBOOT -t raw -c "${comp_type}" \
+			-f "${ecroot}/ec.RO.bin" -n "${name}ro" -p "${pad}"
+		do_cbfstool "${rom}" add -r COREBOOT -t raw -c none \
+			-f "${ecroot}/ec.RO.hash" -n "${name}ro.hash"
+	else
+		ewarn "Missing ${ecroot}/ec.RO.bin, skip packing EC RO."
+	fi
+
+	# Add EC version file for Wilco EC
+	if use wilco_ec; then
+		do_cbfstool "${rom}" add -r FW_MAIN_A,FW_MAIN_B -t raw -c none \
+			-f "${ecroot}/ec.RW.version" -n "${name}rw.version"
+	fi
+}
+
+# Add payloads and sign the image.
+# This takes the base image and creates a new signed one with the given
+# payloads added to it.
+# The image is placed in directory ${outdir} ("" for current directory).
+# An image suffix is added is ${suffix} is non-empty (e.g. "dev", "net").
+# Args:
+#   $1: Image type (e,g. "" for standard image, "dev" for dev image)
+#   $2: Source image to start from.
+#   $3: Payload to add to read-only image portion
+#   $4: Payload to add to read-write image portion
+build_image() {
+	local image_type=$1
+	local src_image=$2
+	local ro_payload=$3
+	local rw_payload=$4
+	local devkeys_dir="${BROOT}/usr/share/vboot/devkeys"
+
+	[ -n "${image_type}" ] && image_type=".${image_type}"
+	local dst_image="${outdir}image${suffix}${image_type}.bin"
+
+	einfo "Building image ${dst_image}"
+	cp ${src_image} ${dst_image}
+	add_payloads ${dst_image} ${ro_payload} ${rw_payload}
+	sign_image ${dst_image} "${devkeys_dir}"
+}
+
+# Hash the payload of an altfw alternative bootloader
+# Loads the payload from $rom on RW_LEGACY under:
+#   altfw/<name>
+# Stores the hash into $rom on RW-A and RW-B as:
+#   altfw/<name>.sha256
+# Args:
+#   $1: rom file where the payload can be found
+#   $2: name of the alternative bootloader
+hash_altfw_payload() {
+	local rom="$1"
+	local name="$2"
+	local payload_file="altfw/${name}"
+	local hash_file="${payload_file}.sha256"
+	local tmpfile="$(mktemp)"
+	local tmphash="$(mktemp)"
+	local rom
+
+	einfo "  Hashing ${payload_file}"
+
+	# Grab the raw uncompressed payload (-U) and hash it into $tmphash.
+	do_cbfstool "${rom}" extract -r RW_LEGACY -n "${payload_file}" \
+		-f "${tmpfile}" -U >/dev/null
+	openssl dgst -sha256 -binary "${tmpfile}" > "${tmphash}"
+
+	# Copy $tmphash into RW-A and RW-B.
+	do_cbfstool "${rom}" add -r FW_MAIN_A,FW_MAIN_B \
+		-f "${tmphash}" -n "${hash_file}" -t raw
+}
+
+# Set up alternative bootloaders
+#
+# This creates a new CBFS in the RW_LEGACY area and puts bootloaders into it,
+# based on USE flags. A list is written to an "altfw/list" file so that there
+# is a record of what is available.
+# Args:
+#   $1: coreboot build target to use for prefix on target-specific payloads
+#   $2: coreboot file to add alternative bootloaders to
+setup_altfw() {
+	local target="$1"
+	local rom="$2"
+	local bl_list="${T}/altfw"
+
+	einfo "Adding alternative firmware"
+
+	# Add master header to the RW_LEGACY section
+	printf "ptr_" > "${T}/ptr"
+	do_cbfstool "${rom}" add -r RW_LEGACY -f "${T}/ptr" -n "header pointer" \
+		-t "cbfs header" -b -4
+	do_cbfstool "${rom}" add-master-header -r RW_LEGACY
+	rm "${T}/ptr"
+	> "${bl_list}"
+
+	# Add U-Boot if enabled
+	if use u-boot; then
+		einfo "- Adding U-Boot"
+
+		do_cbfstool "${rom}" add-flat-binary -r RW_LEGACY -n altfw/u-boot \
+			-c lzma -l 0x1110000 -e 0x1110000 \
+			-f "${CROS_FIRMWARE_ROOT}/u-boot.bin"
+		hash_altfw_payload "${rom}" u-boot
+		echo "1;altfw/u-boot;U-Boot;U-Boot bootloader" >> "${bl_list}"
+	fi
+
+	# Add TianoCore if enabled
+	if use tianocore; then
+		einfo "- Adding TianoCore"
+
+		# Some boards only have 1MB of RW_LEGACY space but UEFI is over
+		# 800KB. Allow this to fail, in which case we just don't add it.
+		if cbfstool "${rom}" add-payload -r RW_LEGACY \
+				-n altfw/tianocore -c lzma -f \
+				"${CROS_FIRMWARE_ROOT}/tianocore/UEFIPAYLOAD.fd"; then
+			hash_altfw_payload "${rom}" tianocore
+			echo "2;altfw/tianocore;TianoCore;TianoCore bootloader" \
+				>> "${bl_list}"
+
+			# For now, use TianoCore as the default.
+			echo "0;altfw/tianocore;TianoCore;TianoCore bootloader" \
+				>> "${bl_list}"
+			einfo "  (sing TianoCore as default)"
+		else
+			ewarn "Not enough space for TianoCore: omitted"
+		fi
+	fi
+
+	# Add SeaBIOS if enabled
+	if use seabios; then
+		local root="${CROS_FIRMWARE_ROOT}/seabios/"
+		einfo "- Adding SeaBIOS"
+
+		do_cbfstool "${rom}" add-payload -r RW_LEGACY -n altfw/seabios -c lzma \
+			-f "${root}/seabios.elf"
+		hash_altfw_payload "${rom}" seabios
+		for f in "${root}oprom/"*; do
+			if [[ -f "${f}" ]]; then
+				do_cbfstool "${rom}" add -r RW_LEGACY -f "${f}" \
+					-n "${f#${root}oprom/}" -t optionrom
+			fi
+		done
+		for f in "${root}cbfs/"*; do
+			if [[ -f "${f}" ]]; then
+				do_cbfstool "${rom}" add -r RW_LEGACY -f "${f}" \
+					-n "${f#${root}cbfs/}" -t raw
+			fi
+		done
+		for f in "${root}"etc/*; do
+			do_cbfstool "${rom}" add -r RW_LEGACY -f "${f}" \
+				-n "${f#$root}" -t raw
+		done
+		echo "3;altfw/seabios;SeaBIOS;SeaBIOS bootloader" \
+			>> "${bl_list}"
+	fi
+
+	# Add the list
+	einfo "- adding firmware list"
+	do_cbfstool "${rom}" add -r RW_LEGACY -n altfw/list -t raw -f "${bl_list}"
+
+	# Add the tag for silent updating.
+	do_cbfstool "${rom}" add-int -r RW_LEGACY -i 1 -n "cros_allow_auto_update"
+
+	# TODO(kitching): Get hash and sign.
+}
+
+# Check whether assets will fit in the image.
+#
+# Estimate the total size of compressed assets, uncompressed assets, and the
+# compressed payload.  Warn when the size exceeds free space available in
+# RO or RW CBFS regions.  Note that this is purely informational and doesn't
+# actually trigger failure.
+#
+# Args:
+#   $1: Filename of image to add to (use serial image for best coverage)
+#   $2: Payload to add to both RO and RW regions
+check_assets() {
+	local rom="$1"
+	local payload="$2"
+
+	# The objcopy architecture doesn't really need to match, it just needs any ELF.
+	local payload_size=$(objcopy -I elf32-i386 -O binary "${payload}" /proc/self/fd/1 2>/dev/null | xz -9 -c | wc -c)
+
+	local rw_assets_size=$(find compressed-assets-rw "compressed-assets-rw/${build_name}" "raw-assets-rw/${build_name}" -maxdepth 1 -type f -print0 | du --files0-from=- -bc | tail -n1 | cut -f1)
+	local rw_override_assets_size=$(find compressed-assets-rw-override "compressed-assets-rw-override/${build_name}" -maxdepth 1 -type f -print0 | du --files0-from=- -bc | tail -n1 | cut -f1)
+	local rw_size=$((rw_assets_size + rw_override_assets_size + payload_size))
+	local rw_free=$(($(do_cbfstool "${rom}" print -r FW_MAIN_A | awk '$1 ~ /empty/ {s+=$4} END {print s}') - payload_size))
+
+	# Most RW assets are also added to RO region.
+	local ro_assets_size=$(find compressed-assets-ro "compressed-assets-ro/${build_name}" -maxdepth 1 -type f -print0 | du --files0-from=- -bc | tail -n1 | cut -f1)
+	local ro_size=$((ro_assets_size + rw_assets_size + payload_size))
+	local ro_free=$(($(do_cbfstool "${rom}" print -r COREBOOT | awk '$1 ~ /empty/ {s+=$4} END {print s}') - payload_size))
+
+	einfo "assets (RO): $((ro_size / 1024)) KiB ($((ro_free / 1024)) KiB free) ${build_name}"
+	[[ ${ro_size} -gt ${ro_free} ]] &&
+		ewarn "WARNING: RO estimated $(((ro_size - ro_free) / 1024)) KiB over limit ${build_name}"
+
+	einfo "assets (RW): $((rw_size / 1024)) KiB ($((rw_free / 1024)) KiB free) ${build_name}"
+	[[ ${rw_size} -gt ${rw_free} ]] &&
+		ewarn "WARNING: RW estimated $(((rw_size - rw_free) / 1024)) KiB over limit ${build_name}"
+}
+
+# Add compressed assets, both common and target, to CBFS using cbfstool
+# Args:
+#  $1: Path where the compressed assets are present.
+#  $2: CBFS Regions to add the compressed assets to.
+add_compressed_assets() {
+	local asset_path="$1"
+	local cbfs_regions="$2"
+	local build_name="$3"
+
+	while IFS= read -r -d '' file; do
+		do_cbfstool "${rom}" add -r "${cbfs_regions}" -f "${file}" \
+			-n "$(basename "${file}")" -t raw -c precompression
+	done < <(find "${asset_path}" -maxdepth 1 -type f -print0 | sort -z)
+
+	# Pre uni-builds have build_name not set. So check to avoid adding
+	# duplicate assets.
+	if [ -n "${build_name}" ]; then
+		while IFS= read -r -d '' file; do
+			do_cbfstool "${rom}" add -r "${cbfs_regions}" -f "${file}" \
+				-n "$(basename "${file}")" -t raw -c precompression
+		done < <(find "${asset_path}/${build_name}" -maxdepth 1 -type f -print0 \
+				| sort -z)
+	fi
+}
+
+# Add Chrome OS assets to the base and serial images:
+#       compressed-assets-ro/*
+#         - fonts, images and screens for recovery mode, originally from
+#           cbfs-ro-compress/*; pre-compressed in src_compile()
+#       compressed-assets-rw/*
+#         - files originally from cbfs-rw-compress/*; pre-compressed
+#           in src_compile(); used for vbt*.bin
+#       compressed-assets-rw-override/*
+#         - updated images for screens, originally from
+#           cbfs-rw-compress-override/*; pre-compressed in src_compile(); used
+#           for rw_locale*.bin
+#       raw-assets-rw/*
+#         - files originally from cbfs-rw-raw/*, used for extra wifi_sar files
+#
+# Args:
+#  $1: Filename of image to add to
+add_assets() {
+	local rom="$1"
+
+	add_compressed_assets "compressed-assets-ro" "COREBOOT" "${build_name}"
+	add_compressed_assets "compressed-assets-rw" \
+				"COREBOOT,FW_MAIN_A,FW_MAIN_B" "${build_name}"
+	add_compressed_assets "compressed-assets-rw-override" \
+				"FW_MAIN_A,FW_MAIN_B" "${build_name}"
+
+	while IFS= read -r -d '' file; do
+		do_cbfstool "${rom}" add -r COREBOOT,FW_MAIN_A,FW_MAIN_B \
+			-f "${file}" -n "$(basename "${file}")" -t raw
+	done < <(find "raw-assets-rw/${build_name}" -type f -print0 | sort -z)
+}
+
+# Compress static and firmware target specific assets:
+#       compressed-assets-ro/*
+#         - fonts, images and screens for recovery mode, originally from
+#           cbfs-ro-compress/*; pre-compressed in src_compile()
+#       compressed-assets-rw/*
+#         - files originally from cbfs-rw-compress/*; pre-compressed
+#           in src_compile(); used for vbt*.bin
+#       compressed-assets-rw-override/*
+#         - updated images for screens, originally from
+#           cbfs-rw-compress-override/*; pre-compressed in src_compile(); used
+#           for rw_locale*.bin
+# Args:
+#  $1: Root path for the firmware build
+#  $2: Firmware target where the uncompressed assets are present. When nothing
+#      is passed, then static assets are being compressed.
+compress_assets() {
+	local froot="$1"
+	local build_name="$2"
+
+	# files from cbfs-ro-compress/ are installed in
+	# all images' RO CBFS, compressed
+	mkdir -p compressed-assets-ro/"${build_name}"
+	find "${froot}"/cbfs-ro-compress/"${build_name}" -mindepth 1 -maxdepth 1 \
+		-type f -printf "%P\0" 2>/dev/null | \
+		xargs -0 -n 1 -P "$(nproc)" -I '{}' \
+		cbfs-compression-tool compress \
+			"${froot}"/cbfs-ro-compress/"${build_name}"/'{}' \
+			compressed-assets-ro/"${build_name}"/'{}' LZMA
+
+	# files from cbfs-rw-compress/ are installed in
+	# all images' RO/RW CBFS, compressed
+	mkdir -p compressed-assets-rw/"${build_name}"
+	find "${froot}"/cbfs-rw-compress/"${build_name}" -mindepth 1 -maxdepth 1 \
+		-type f -printf "%P\0" 2>/dev/null | \
+		xargs -0 -n 1 -P "$(nproc)" -I '{}' \
+		cbfs-compression-tool compress \
+			"${froot}"/cbfs-rw-compress/"${build_name}"/'{}' \
+			compressed-assets-rw/"${build_name}"/'{}' LZMA
+
+	# files from cbfs-rw-compress-override/ are installed in
+	# all images' RW CBFS, compressed
+	mkdir -p compressed-assets-rw-override/"${build_name}"
+	find "${froot}"/cbfs-rw-compress-override/"${build_name}" -mindepth 1 \
+		-maxdepth 1 -type f -printf "%P\0" 2>/dev/null | \
+		xargs -0 -n 1 -P "$(nproc)" -I '{}' \
+		cbfs-compression-tool compress \
+			"${froot}"/cbfs-rw-compress-override/"${build_name}"/'{}' \
+			compressed-assets-rw-override/"${build_name}"/'{}' LZMA
+}
+
+# Build firmware images for a given board
+# Creates image*.bin for the following images:
+#    image.bin          - production image (no serial console)
+#    image.serial.bin   - production image with serial console enabled
+#    image.dev.bin      - developer image with serial console enabled
+#    image.net.bin      - netboot image with serial console enabled
+#
+# If $2 is set, then it uses "image-$2" instead of "image" and puts images in
+# the $2 subdirectory.
+#
+# If outdir
+# Args:
+#   $1: Directory containing the input files:
+#       coreboot.rom             - coreboot ROM image containing various pieces
+#       coreboot.rom.serial      - same, but with serial console enabled
+#       depthcharge/depthcharge.elf - depthcharge ELF payload
+#       depthcharge/dev.elf      - developer version of depthcharge
+#       depthcharge/netboot.elf  - netboot version of depthcharge
+#       depthcharge/depthcharge.config - configuration used to build depthcharge image
+#       (plus files mentioned above in add_assets)
+#   $2: Name to use when naming output files (see note above, can be empty)
+#
+#   $3: Name of target to build for coreboot (can be empty)
+#
+#   $4: Name of target to build for depthcharge (can be empty)
+#
+#   $5: Name of target to build for ec (can be empty)
+build_images() {
+	local froot="$1"
+	local build_name="$2"
+	local coreboot_build_target="$3"
+	local depthcharge_build_target="$4"
+	local ec_build_target="$5"
+	local outdir
+	local suffix
+	local file
+	local rom
+
+	local coreboot_orig
+	local depthcharge_prefix
+	local coreboot_config
+
+	if [ -n "${build_name}" ]; then
+		einfo "Building firmware images for ${build_name}"
+		outdir="${build_name}/"
+		mkdir "${outdir}"
+		suffix="-${build_name}"
+		coreboot_orig="${froot}/${coreboot_build_target}/coreboot.rom"
+		coreboot_config="${froot}/${coreboot_build_target}/coreboot.config"
+		depthcharge_prefix="${froot}/${depthcharge_build_target}/depthcharge"
+	else
+		coreboot_orig="${froot}/coreboot.rom"
+		coreboot_config="${froot}/coreboot.config"
+		depthcharge_prefix="${froot}/depthcharge"
+	fi
+
+	local coreboot_file="coreboot.rom"
+	cp "${coreboot_orig}" "${coreboot_file}"
+	cp "${coreboot_orig}.serial" "${coreboot_file}.serial"
+
+	local depthcharge
+	local depthcharge_dev
+	local netboot
+	local depthcharge_config
+
+	if use depthcharge; then
+		depthcharge="${depthcharge_prefix}/depthcharge.elf"
+		depthcharge_dev="${depthcharge_prefix}/dev.elf"
+		netboot="${depthcharge_prefix}/netboot.elf"
+		depthcharge_config="${depthcharge_prefix}/depthcharge.config"
+	fi
+
+	if [[ -d ${froot}/cbfs ]]; then
+		die "something is still using ${froot}/cbfs, which is deprecated."
+	fi
+
+	if use cros_ec || use wilco_ec || use zephyr_ec; then
+		einfo "Adding EC for ${ec_build_target}"
+		add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}" "ec" "${froot}/${ec_build_target}"
+		add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}.serial" "ec" "${froot}/${ec_build_target}"
+	fi
+
+	local pd_folder="${froot}/${ec_build_target}_pd"
+
+	if use pd_sync; then
+		add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}" "pd" "${pd_folder}"
+		add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}.serial" "pd" "${pd_folder}"
+	fi
+
+	setup_altfw "${coreboot_build_target}" "${coreboot_file}"
+	setup_altfw "${coreboot_build_target}" "${coreboot_file}.serial"
+
+	# Keeps the find commands from failing with directory not found
+	mkdir -p "raw-assets-rw/${build_name}"
+
+	check_assets "${coreboot_file}.serial" "${depthcharge_dev}"
+	add_assets "${coreboot_file}"
+	add_assets "${coreboot_file}.serial"
+
+	build_image "" "${coreboot_file}" "${depthcharge}" "${depthcharge}"
+
+	build_image serial "${coreboot_file}.serial" \
+		"${depthcharge}" "${depthcharge}"
+
+	build_image dev "${coreboot_file}.serial" \
+		"${depthcharge_dev}" "${depthcharge_dev}"
+
+	# Build a netboot image.
+	#
+	# The readonly payload is usually depthcharge and the read/write
+	# payload is usually netboot. This way the netboot image can be used
+	# to boot from USB through recovery mode if necessary.
+	build_image net "${coreboot_file}.serial" "${depthcharge}" "${netboot}"
+
+	# Set convenient netboot parameter defaults for developers.
+	local name="${build_name:-"${BOARD_USE}"}"
+	local bootfile="${PORTAGE_USERNAME}/${name}/vmlinuz"
+	local argsfile="${PORTAGE_USERNAME}/${name}/cmdline"
+	"${FILESDIR}/netboot_firmware_settings.py" \
+		-i "${outdir}image${suffix}.net.bin" \
+		--bootfile="${bootfile}" --argsfile="${argsfile}" &&
+		"${FILESDIR}/netboot_firmware_settings.py" \
+			-i "${outdir}image${suffix}.dev.bin" \
+			--bootfile="${bootfile}" --argsfile="${argsfile}" ||
+		die "failed to preset netboot parameter defaults."
+	einfo "Netboot configured to boot ${bootfile}, fetch kernel command" \
+		"line from ${argsfile}, and use the DHCP-provided TFTP server IP."
+}
+
+src_compile() {
+	local froot="${CROS_FIRMWARE_ROOT}"
+	einfo "Copying static rw assets"
+
+	if [[ -d "${froot}"/cbfs-rw-raw ]]; then
+		mkdir raw-assets-rw
+		cp -R "${froot}"/cbfs-rw-raw/* raw-assets-rw/ ||
+			die "unable to copy files cbfw-rw-raw files"
+	fi
+
+	einfo "Compressing static assets"
+
+	if [[ -d ${froot}/rocbfs ]]; then
+		die "something is still using ${froot}/rocbfs, which is deprecated."
+	fi
+
+	compress_assets "${froot}"
+
+	local fields="coreboot,depthcharge,ec"
+	local cmd="get-firmware-build-combinations"
+	(cros_config_host "${cmd}" "${fields}" || die) |
+	while read -r name; do
+		read -r coreboot
+		read -r depthcharge
+		read -r ec
+		einfo "Compressing target assets for: ${name}"
+		compress_assets "${froot}" "${name}"
+		einfo "Building image for: ${name}"
+		if use zephyr_ec; then
+			# Zephyr installs under ${froot}/${name}/zephyr.bin,
+			# instead of using the EC build target name.
+			ec="${name}"
+		fi
+		build_images "${froot}" "${name}" "${coreboot}" "${depthcharge}" "${ec}"
+	done
+}
+
+src_install() {
+	insinto "${CROS_FIRMWARE_IMAGE_DIR}"
+	local fields="coreboot,depthcharge"
+	local cmd="get-firmware-build-combinations"
+	(cros_config_host "${cmd}" "${fields}" || die) |
+	while read -r name; do
+		read -r coreboot
+		read -r depthcharge
+		doins "${name}"/image-${name}*.bin
+	done
+}
diff --git a/sys-boot/chromeos-bootimage/chromeos-bootimage-9999.ebuild b/sys-boot/chromeos-bootimage/chromeos-bootimage-9999.ebuild
index 7e13b0c..b14949a 100644
--- a/sys-boot/chromeos-bootimage/chromeos-bootimage-9999.ebuild
+++ b/sys-boot/chromeos-bootimage/chromeos-bootimage-9999.ebuild
@@ -13,7 +13,7 @@
 LICENSE="GPL-2"
 SLOT="0"
 KEYWORDS="~*"
-IUSE="diag_payload seabios wilco_ec zephyr_ec"
+IUSE="seabios wilco_ec zephyr_ec"
 IUSE="${IUSE} fsp unibuild u-boot tianocore cros_ec pd_sync +bmpblk"
 
 # 'ec_ro_sync' can be a solution for devices that will fail to complete recovery
@@ -22,6 +22,14 @@
 # this option.
 IUSE="${IUSE} ec_ro_sync"
 IUSE="${IUSE} +depthcharge"
+IUSE="${IUSE} payload-align-64 +payload-compress-lzma payload-compress-lz4"
+
+REQUIRED_USE="^^ ( payload-compress-lzma payload-compress-lz4 )"
+
+
+# No pre-unibuild boards build firmware on ToT anymore.  Assume
+# unibuild to keep ebuild clean.
+REQUIRED_USE="unibuild"
 
 BDEPEND="chromeos-base/vboot_reference"
 
@@ -31,13 +39,22 @@
 	bmpblk? ( sys-boot/chromeos-bmpblk:= )
 	tianocore? ( sys-boot/edk2:= )
 	seabios? ( sys-boot/chromeos-seabios:= )
-	unibuild? ( chromeos-base/chromeos-config:= )
+	chromeos-base/chromeos-config:=
 	u-boot? ( sys-boot/u-boot:= )
 	cros_ec? ( chromeos-base/chromeos-ec:= )
 	zephyr_ec? ( chromeos-base/chromeos-zephyr:= )
 	pd_sync? ( chromeos-base/chromeos-ec:= )
 	"
 
+# While this package is never actually executed, we still need to specify
+# RDEPEND. A binary version of this package could exist that was built using an
+# outdated version of chromeos-config. Without the RDEPEND this stale binary
+# package is considered valid by the package manager. This is problematic
+# because we could have two binary packages installed having been build with
+# different versions of chromeos-config. By specifying the RDEPEND we force
+# the package manager to ensure the two versions use the same chromeos-config.
+RDEPEND="${DEPEND}"
+
 # Directory where the generated files are looked for and placed.
 CROS_FIRMWARE_IMAGE_DIR="/firmware"
 CROS_FIRMWARE_ROOT="${SYSROOT}${CROS_FIRMWARE_IMAGE_DIR}"
@@ -107,14 +124,26 @@
 	local ro_payload=$2
 	local rw_payload=$3
 
+	local -a args=(-n fallback/payload)
+
+	if use payload-compress-lzma; then
+		args+=(-c lzma)
+	elif use payload-compress-lz4; then
+		args+=(-c lz4)
+	fi
+
+	if use payload-align-64; then
+		args+=(-a 64)
+	fi
+
 	if [ -n "${ro_payload}" ]; then
 		do_cbfstool "${fw_image}" add-payload \
-			-f "${ro_payload}" -n fallback/payload -c lzma
+			-f "${ro_payload}" "${args[@]}"
 	fi
 
 	if [ -n "${rw_payload}" ]; then
 		do_cbfstool "${fw_image}" add-payload -f "${rw_payload}" \
-			-n fallback/payload -c lzma -r FW_MAIN_A,FW_MAIN_B
+			"${args[@]}" -r FW_MAIN_A,FW_MAIN_B
 	fi
 }
 
@@ -259,7 +288,6 @@
 	local target="$1"
 	local rom="$2"
 	local bl_list="${T}/altfw"
-	local have_default
 
 	einfo "Adding alternative firmware"
 
@@ -298,7 +326,6 @@
 			# For now, use TianoCore as the default.
 			echo "0;altfw/tianocore;TianoCore;TianoCore bootloader" \
 				>> "${bl_list}"
-			have_default=y
 			einfo "  (sing TianoCore as default)"
 		else
 			ewarn "Not enough space for TianoCore: omitted"
@@ -333,25 +360,6 @@
 			>> "${bl_list}"
 	fi
 
-	# Add Diagnostic Payload if enabled
-	if use diag_payload; then
-		einfo "- Adding Diagnostic Payload"
-
-		do_cbfstool "${rom}" add-payload -r RW_LEGACY -n altfw/diag -c lzma -f \
-			"${CROS_FIRMWARE_ROOT}/diag_payload/${target}-diag.bin"
-		hash_altfw_payload "${rom}" diag
-		echo "5;altfw/diag;Diagnostics;System Diagnostics" \
-			>> "${bl_list}"
-
-		# Use Diag as the default if tianocore is not enabled
-		if [[ -z "${have_default}" ]]; then
-			echo "0;altfw/diag;Diagnostics;System Diagnostics" \
-				>> "${bl_list}"
-			have_default=y
-			einfo "  (using Diagnostics as default)"
-		fi
-	fi
-
 	# Add the list
 	einfo "- adding firmware list"
 	do_cbfstool "${rom}" add -r RW_LEGACY -n altfw/list -t raw -f "${bl_list}"
@@ -410,7 +418,7 @@
 	while IFS= read -r -d '' file; do
 		do_cbfstool "${rom}" add -r "${cbfs_regions}" -f "${file}" \
 			-n "$(basename "${file}")" -t raw -c precompression
-	done < <(find "${asset_path}" -maxdepth 1 -type f -print0)
+	done < <(find "${asset_path}" -maxdepth 1 -type f -print0 | sort -z)
 
 	# Pre uni-builds have build_name not set. So check to avoid adding
 	# duplicate assets.
@@ -418,7 +426,8 @@
 		while IFS= read -r -d '' file; do
 			do_cbfstool "${rom}" add -r "${cbfs_regions}" -f "${file}" \
 				-n "$(basename "${file}")" -t raw -c precompression
-		done < <(find "${asset_path}/${build_name}" -maxdepth 1 -type f -print0)
+		done < <(find "${asset_path}/${build_name}" -maxdepth 1 -type f -print0 \
+				| sort -z)
 	fi
 }
 
@@ -450,7 +459,7 @@
 	while IFS= read -r -d '' file; do
 		do_cbfstool "${rom}" add -r COREBOOT,FW_MAIN_A,FW_MAIN_B \
 			-f "${file}" -n "$(basename "${file}")" -t raw
-	done < <(find "raw-assets-rw/${build_name}" -type f -print0)
+	done < <(find "raw-assets-rw/${build_name}" -type f -print0 | sort -z)
 }
 
 # Compress static and firmware target specific assets:
@@ -580,24 +589,12 @@
 	fi
 
 	if use cros_ec || use wilco_ec || use zephyr_ec; then
-		if use unibuild; then
-			einfo "Adding EC for ${ec_build_target}"
-			add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}" "ec" "${froot}/${ec_build_target}"
-			add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}.serial" "ec" "${froot}/${ec_build_target}"
-		else
-			add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}" "ec" "${froot}"
-			add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}.serial" "ec" "${froot}"
-		fi
+		einfo "Adding EC for ${ec_build_target}"
+		add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}" "ec" "${froot}/${ec_build_target}"
+		add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}.serial" "ec" "${froot}/${ec_build_target}"
 	fi
 
-	local pd_folder="${froot}/"
-	if use unibuild; then
-		pd_folder+="${ec_build_target}_pd"
-	else
-		# For non-unibuild boards this must match PD_FIRMWARE in board
-		# overlay make.defaults.
-		pd_folder+="${PD_FIRMWARE:-$(basename "${ROOT}")_pd}"
-	fi
+	local pd_folder="${froot}/${ec_build_target}_pd"
 
 	if use pd_sync; then
 		add_ec "${depthcharge_config}" "${coreboot_config}" "${coreboot_file}" "pd" "${pd_folder}"
@@ -607,6 +604,9 @@
 	setup_altfw "${coreboot_build_target}" "${coreboot_file}"
 	setup_altfw "${coreboot_build_target}" "${coreboot_file}.serial"
 
+	# Keeps the find commands from failing with directory not found
+	mkdir -p "raw-assets-rw/${build_name}"
+
 	check_assets "${coreboot_file}.serial" "${depthcharge_dev}"
 	add_assets "${coreboot_file}"
 	add_assets "${coreboot_file}.serial"
@@ -659,41 +659,33 @@
 
 	compress_assets "${froot}"
 
-	if use unibuild; then
-		local fields="coreboot,depthcharge,ec"
-		local cmd="get-firmware-build-combinations"
-		(cros_config_host "${cmd}" "${fields}" || die) |
-		while read -r name; do
-			read -r coreboot
-			read -r depthcharge
-			read -r ec
-			einfo "Compressing target assets for: ${name}"
-			compress_assets "${froot}" "${name}"
-			einfo "Building image for: ${name}"
-			if use zephyr_ec; then
-				# Zephyr installs under ${froot}/${name}/zephyr.bin,
-				# instead of using the EC build target name.
-				ec="${name}"
-			fi
-			build_images "${froot}" "${name}" "${coreboot}" "${depthcharge}" "${ec}"
-		done
-	else
-		build_images "${froot}" "" "" "" ""
-	fi
+	local fields="coreboot,depthcharge,ec"
+	local cmd="get-firmware-build-combinations"
+	(cros_config_host "${cmd}" "${fields}" || die) |
+	while read -r name; do
+		read -r coreboot
+		read -r depthcharge
+		read -r ec
+		einfo "Compressing target assets for: ${name}"
+		compress_assets "${froot}" "${name}"
+		einfo "Building image for: ${name}"
+		if use zephyr_ec; then
+			# Zephyr installs under ${froot}/${name}/zephyr.bin,
+			# instead of using the EC build target name.
+			ec="${name}"
+		fi
+		build_images "${froot}" "${name}" "${coreboot}" "${depthcharge}" "${ec}"
+	done
 }
 
 src_install() {
 	insinto "${CROS_FIRMWARE_IMAGE_DIR}"
-	if use unibuild; then
-		local fields="coreboot,depthcharge"
-		local cmd="get-firmware-build-combinations"
-		(cros_config_host "${cmd}" "${fields}" || die) |
-		while read -r name; do
-			read -r coreboot
-			read -r depthcharge
-			doins "${name}"/image-${name}*.bin
-		done
-	else
-		doins image*.bin
-	fi
+	local fields="coreboot,depthcharge"
+	local cmd="get-firmware-build-combinations"
+	(cros_config_host "${cmd}" "${fields}" || die) |
+	while read -r name; do
+		read -r coreboot
+		read -r depthcharge
+		doins "${name}"/image-${name}*.bin
+	done
 }
diff --git a/sys-boot/coreboot/coreboot-0.0.1-r4457.ebuild b/sys-boot/coreboot/coreboot-0.0.1-r4457.ebuild
deleted file mode 100644
index d16d47cb..0000000
--- a/sys-boot/coreboot/coreboot-0.0.1-r4457.ebuild
+++ /dev/null
@@ -1,456 +0,0 @@
-# Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# Change this version number when any change is made to configs/files under
-# coreboot and an auto-revbump is required.
-# VERSION=REVBUMP-0.0.71
-
-EAPI=7
-CROS_WORKON_COMMIT=("08aff2250e3b459da8094f03e5bea60ed78c413a" "967344b52082725523ed6146b54e8c8a077bfeb6" "5c0fcf0f8725b98043a4b18f36e21489375d133a" "7874c7d3cebc0ebca57875e24911ddd55aec9711" "df630442ada121d52205f009fdab685401f53694" "ee319ae7bc59e88b60142f40a9ec1b46656de4db" "b7d5b2d6a6dd05874d86ee900ff441d261f9034c")
-CROS_WORKON_TREE=("0039a6731a3018302bff712c112c2464f8192e79" "d6d71de60d72b25dfa814f04f38f6e1f874fe88e" "3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c" "27bb5107ef257116a45f756ad185272ae385faf9" "71e64b41a2f07ca30f4745b73c3964bc3c59dcf2" "45d22a8711f85c4310c0c2121d3dc8a72793d375" "c0433b88f972fa26dded401be022c1c026cd644e")
-CROS_WORKON_PROJECT=(
-	"chromiumos/third_party/coreboot"
-	"chromiumos/third_party/arm-trusted-firmware"
-	"chromiumos/platform/vboot_reference"
-	"chromiumos/third_party/coreboot/amd_blobs"
-	"chromiumos/third_party/coreboot/blobs"
-	"chromiumos/third_party/coreboot/intel-microcode"
-	"chromiumos/third_party/cbootimage"
-)
-CROS_WORKON_LOCALNAME=(
-	"coreboot"
-	"arm-trusted-firmware"
-	"../platform/vboot_reference"
-	"coreboot/3rdparty/amd_blobs"
-	"coreboot/3rdparty/blobs"
-	"coreboot/3rdparty/intel-microcode"
-	"cbootimage"
-)
-CROS_WORKON_DESTDIR=(
-	"${S}"
-	"${S}/3rdparty/arm-trusted-firmware"
-	"${S}/3rdparty/vboot"
-	"${S}/3rdparty/amd_blobs"
-	"${S}/3rdparty/blobs"
-	"${S}/3rdparty/intel-microcode"
-	"${S}/util/nvidia/cbootimage"
-)
-
-CROS_WORKON_EGIT_BRANCH=(
-	"chromeos-2016.05"
-	"master"
-	"master"
-	"chromeos"
-	"master"
-	"master"
-	"master"
-)
-
-inherit cros-board cros-workon toolchain-funcs cros-unibuild coreboot-sdk
-
-DESCRIPTION="coreboot firmware"
-HOMEPAGE="http://www.coreboot.org"
-LICENSE="GPL-2"
-KEYWORDS="*"
-IUSE="em100-mode fsp memmaps mocktpm quiet-cb rmt vmx mtc mma"
-IUSE="${IUSE} +bmpblk quiet unibuild verbose"
-IUSE="${IUSE} amd_cpu coreboot-sdk chipset_stoneyridge chipset_picasso"
-IUSE="${IUSE} chipset_cezanne"
-# virtual/coreboot-private-files is deprecated. When adding a new board you
-# should add the coreboot-private-files-{board/chipset} ebuilds into the private
-# overlays, and avoid creating virtual packages.
-# See b/178642474
-IUSE="${IUSE} coreboot-private-files-board coreboot-private-files-chipset"
-# coreboot's build system handles stripping the binaries and producing a
-# separate .debug file with the symbols. This flag prevents portage from
-# stripping the .debug symbols
-RESTRICT="strip"
-
-RDEPEND=""
-DEPEND="
-	mtc? ( sys-boot/mtc:= )
-	coreboot-private-files-board? ( sys-boot/coreboot-private-files-board:= )
-	coreboot-private-files-chipset? ( sys-boot/coreboot-private-files-chipset:= )
-	virtual/coreboot-private-files
-	bmpblk? ( sys-boot/chromeos-bmpblk:= )
-	chipset_stoneyridge? ( sys-boot/amd-firmware:= )
-	chipset_picasso? ( >=sys-boot/amd-picasso-fsp-0.0.2:= )
-	chipset_cezanne? ( sys-boot/amd-cezanne-fsp:= )
-	unibuild? ( chromeos-base/chromeos-config:= )
-	"
-
-# Get the coreboot board config to build for.
-# Checks the current board with/without variant, and also whether an FSP
-# is in use. Echoes the board config file that should be used to build
-# coreboot.
-get_board() {
-	local board=$(get_current_board_with_variant)
-
-	if [[ ! -s "${FILESDIR}/configs/config.${board}" ]]; then
-		board=$(get_current_board_no_variant)
-	fi
-	echo "${board}"
-}
-
-set_build_env() {
-	local board="$1"
-
-	CONFIG="$(cros-workon_get_build_dir)/${board}.config"
-	CONFIG_SERIAL="$(cros-workon_get_build_dir)/${board}-serial.config"
-	# Strip the .config suffix
-	BUILD_DIR="${CONFIG%.config}"
-	BUILD_DIR_SERIAL="${CONFIG_SERIAL%.config}"
-}
-
-# Create the coreboot configuration files for a particular board. This
-# creates a standard config and a serial config.
-# Args:
-#   $1: board name
-#   $2: Base board name, if any (used for unified builds)
-create_config() {
-	local board="$1"
-	local base_board="$2"
-
-	if [[ -s "${FILESDIR}/configs/config.${board}" ]]; then
-
-		cp -v "${FILESDIR}/configs/config.${board}" "${CONFIG}"
-		# handle the case when "${CONFIG}" does not have a newline in the end.
-		echo >> "${CONFIG}"
-
-		# Override mainboard vendor if needed.
-		if [[ -n "${SYSTEM_OEM}" ]]; then
-			echo "CONFIG_MAINBOARD_VENDOR=\"${SYSTEM_OEM}\"" >> "${CONFIG}"
-		fi
-		if [[ -n "${SYSTEM_OEM_VENDOR_ID}" ]]; then
-			echo "CONFIG_SUBSYSTEM_VENDOR_ID=${SYSTEM_OEM_VENDOR_ID}" >> "${CONFIG}"
-		fi
-		if [[ -n "${SYSTEM_OEM_DEVICE_ID}" ]]; then
-			echo "CONFIG_SUBSYSTEM_DEVICE_ID=${SYSTEM_OEM_DEVICE_ID}" >> "${CONFIG}"
-		fi
-		if [[ -n "${SYSTEM_OEM_ACPI_ID}" ]]; then
-			echo "CONFIG_ACPI_SUBSYSTEM_ID=\"${SYSTEM_OEM_ACPI_ID}\"" >> "${CONFIG}"
-		fi
-
-		# In case config comes from a symlink we are likely building
-		# for an overlay not matching this config name. Enable adding
-		# a CBFS based board ID for coreboot.
-		if [[ -L "${FILESDIR}/configs/config.${board}" ]]; then
-			echo "CONFIG_BOARD_ID_MANUAL=y" >> "${CONFIG}"
-			echo "CONFIG_BOARD_ID_STRING=\"${BOARD_USE}\"" >> "${CONFIG}"
-		fi
-	else
-		ewarn "Could not find existing config for ${board}."
-	fi
-
-	if use rmt; then
-		echo "CONFIG_MRC_RMT=y" >> "${CONFIG}"
-	fi
-	if use vmx; then
-		elog "   - enabling VMX"
-		echo "CONFIG_ENABLE_VMX=y" >> "${CONFIG}"
-	fi
-	if use quiet-cb; then
-		# Suppress console spew if requested.
-		cat >> "${CONFIG}" <<EOF
-CONFIG_DEFAULT_CONSOLE_LOGLEVEL=3
-# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_8 is not set
-CONFIG_DEFAULT_CONSOLE_LOGLEVEL_3=y
-EOF
-	fi
-	if use mocktpm; then
-		echo "CONFIG_VBOOT_MOCK_SECDATA=y" >> "${CONFIG}"
-	fi
-	if use mma; then
-		echo "CONFIG_MMA=y" >> "${CONFIG}"
-	fi
-
-	# disable coreboot's own EC firmware building mechanism
-	echo "CONFIG_EC_GOOGLE_CHROMEEC_FIRMWARE_NONE=y" >> "${CONFIG}"
-	echo "CONFIG_EC_GOOGLE_CHROMEEC_PD_FIRMWARE_NONE=y" >> "${CONFIG}"
-	# enable common GBB flags for development
-	echo "CONFIG_GBB_FLAG_DEV_SCREEN_SHORT_DELAY=y" >> "${CONFIG}"
-	echo "CONFIG_GBB_FLAG_DISABLE_FW_ROLLBACK_CHECK=y" >> "${CONFIG}"
-	echo "CONFIG_GBB_FLAG_FORCE_DEV_BOOT_USB=y" >> "${CONFIG}"
-	echo "CONFIG_GBB_FLAG_FORCE_DEV_SWITCH_ON=y" >> "${CONFIG}"
-	local version=$(${CHROOT_SOURCE_ROOT}/src/third_party/chromiumos-overlay/chromeos/config/chromeos_version.sh |grep "^[[:space:]]*CHROMEOS_VERSION_STRING=" |cut -d= -f2)
-	echo "CONFIG_VBOOT_FWID_VERSION=\".${version}\"" >> "${CONFIG}"
-	if use em100-mode; then
-		einfo "Enabling em100 mode via CONFIG_EM100 (slower SPI flash)"
-		echo "CONFIG_EM100=y" >> "${CONFIG}"
-	fi
-	# Use FSP's GOP in favor of coreboot's Ada based Intel graphics init
-	# which we don't include at this time. A no-op on non-FSP/GOP devices.
-	echo "CONFIG_RUN_FSP_GOP=y" >> "${CONFIG}"
-
-	cp "${CONFIG}" "${CONFIG_SERIAL}"
-	file="${FILESDIR}/configs/fwserial.${board}"
-	if [ ! -f "${file}" ] && [ -n "${base_board}" ]; then
-		file="${FILESDIR}/configs/fwserial.${base_board}"
-	fi
-	if [ ! -f "${file}" ]; then
-		file="${FILESDIR}/configs/fwserial.default"
-	fi
-	cat "${file}" >> "${CONFIG_SERIAL}" || die
-	# handle the case when "${CONFIG_SERIAL}" does not have a newline in the end.
-	echo >> "${CONFIG_SERIAL}"
-
-	# Check that we're using coreboot-sdk
-	if ! use coreboot-sdk; then
-		die "Enable coreboot-sdk to build coreboot."
-	fi
-	if grep -q "^CONFIG_ANY_TOOLCHAIN=y" "${CONFIG}"; then
-		die "Drop ANY_TOOLCHAIN from ${CONFIG}: we don't support it anymore."
-	fi
-
-	einfo "Configured ${CONFIG} for board ${board} in ${BUILD_DIR}"
-}
-
-src_prepare() {
-	local froot="${SYSROOT}/firmware"
-	local privdir="${SYSROOT}/firmware/coreboot-private"
-	local file
-
-	default
-
-	mkdir "$(cros-workon_get_build_dir)"
-
-	if [[ -d "${privdir}" ]]; then
-		while read -d $'\0' -r file; do
-			rsync --recursive --links --executability \
-				"${file}" ./ || die
-		done < <(find "${privdir}" -maxdepth 1 -mindepth 1 -print0)
-	fi
-
-	cp -a "${FILESDIR}/3rdparty/"* 3rdparty
-
-	if use unibuild; then
-		local build_target
-
-		while read -r name; do
-			read -r coreboot
-			set_build_env "${coreboot}"
-			create_config "${coreboot}" "$(get_board)"
-		done < <(cros_config_host "get-firmware-build-combinations" coreboot || die)
-	else
-		set_build_env "$(get_board)"
-		create_config "$(get_board)"
-	fi
-}
-
-add_fw_blob() {
-	local rom="$1"
-	local cbname="$2"
-	local blob="$3"
-	local cbhash="${cbname%.bin}.hash"
-	local hash="${blob%.bin}.hash"
-
-	cbfstool "${rom}" add -r FW_MAIN_A,FW_MAIN_B -t raw -c lzma \
-		-f "${blob}" -n "${cbname}" || die
-	cbfstool "${rom}" add -r FW_MAIN_A,FW_MAIN_B -t raw -c none \
-		-f "${hash}" -n "${cbhash}" || die
-}
-
-# Build coreboot with a supplied configuration and output directory.
-#   $1: Build directory to use (e.g. "build_serial")
-#   $2: Config file to use (e.g. ".config_serial")
-#   $3: Build target build (e.g. "pyro"), for USE=unibuild only.
-make_coreboot() {
-	local builddir="$1"
-	local config_fname="$2"
-
-	rm -rf "${builddir}" .xcompile
-
-	local CB_OPTS=( "DOTCONFIG=${config_fname}" )
-	use quiet && CB_OPTS+=( "V=0" )
-	use verbose && CB_OPTS+=( "V=1" )
-	use quiet && REDIR="/dev/null" || REDIR="/dev/stdout"
-
-	# Configure and build coreboot.
-	yes "" | emake oldconfig "${CB_OPTS[@]}" obj="${builddir}" >${REDIR}
-	if grep -q "CONFIG_VENDOR_EMULATION=y" "${config_fname}"; then
-		local config_file
-		config_file="${FILESDIR}/configs/config.$(get_board)"
-		die "Working with a default configuration. ${config_file} incorrect?"
-	fi
-	emake "${CB_OPTS[@]}" obj="${builddir}" HOSTCC="$(tc-getBUILD_CC)" \
-		HOSTPKGCONFIG="$(tc-getBUILD_PKG_CONFIG)"
-
-	# Expand FW_MAIN_* since we might add some files
-	cbfstool "${builddir}/coreboot.rom" expand -r FW_MAIN_A,FW_MAIN_B
-
-	# Modify firmware descriptor if building for the EM100 emulator on
-	# Intel platforms.
-	# TODO(crbug.com/863396): Should we have an 'intel' USE flag? Do we
-	# still have any Intel platforms that don't use ifdtool?
-	if ! use amd_cpu && use em100-mode; then
-		einfo "Enabling em100 mode via ifdttool (slower SPI flash)"
-		ifdtool --em100 "${builddir}/coreboot.rom" || die
-		mv "${builddir}/coreboot.rom"{.new,} || die
-	fi
-}
-
-# Add fw blobs to the coreboot.rom.
-#   $1: Build directory to use (e.g. "build_serial")
-#   $2: Build target build (e.g. "pyro"), for USE=unibuild only.
-add_fw_blobs() {
-	local builddir="$1"
-	local build_target="$2"
-	local froot="${SYSROOT}/firmware"
-	local fblobroot="${SYSROOT}/firmware"
-
-	if use unibuild; then
-		froot+="/${build_target}"
-	fi
-
-	local blob
-	local cbname
-	for blob in ${FW_BLOBS}; do
-		local blobfile="${fblobroot}/${blob}"
-
-		# Use per-board blob if available
-		if use unibuild && [[ -e "${froot}/${blob}" ]]; then
-			blobfile="${froot}/${blob}"
-		fi
-
-		cbname=$(basename "${blob}")
-		add_fw_blob "${builddir}/coreboot.rom" "${cbname}" \
-			"${blobfile}" || die
-	done
-
-	if [ -d ${froot}/cbfs ]; then
-		die "something is still using ${froot}/cbfs, which is deprecated."
-	fi
-}
-
-src_compile() {
-	# Set KERNELREVISION (really coreboot revision) to the ebuild revision
-	# number followed by a dot and the first seven characters of the git
-	# hash. The name is confusing but consistent with the coreboot
-	# Makefile.
-	local sha1v="${VCSID/*-/}"
-	export KERNELREVISION=".${PV}.${sha1v:0:7}"
-
-	if ! use coreboot-sdk; then
-		tc-export CC
-		# Export the known cross compilers so there isn't a reliance
-		# on what the default profile is for exporting a compiler. The
-		# reasoning is that the firmware may need more than one to build
-		# and boot.
-		export CROSS_COMPILE_x86="i686-pc-linux-gnu-"
-		export CROSS_COMPILE_mipsel="mipsel-cros-linux-gnu-"
-		export CROSS_COMPILE_arm64="aarch64-cros-linux-gnu-"
-		export CROSS_COMPILE_arm="armv7a-cros-linux-gnu- armv7a-cros-linux-gnueabihf-"
-	else
-		export CROSS_COMPILE_x86=${COREBOOT_SDK_PREFIX_x86_32}
-		export CROSS_COMPILE_mipsel=${COREBOOT_SDK_PREFIX_mips}
-		export CROSS_COMPILE_arm64=${COREBOOT_SDK_PREFIX_arm64}
-		export CROSS_COMPILE_arm=${COREBOOT_SDK_PREFIX_arm}
-
-		export PATH=/opt/coreboot-sdk/bin:$PATH
-	fi
-
-	use verbose && elog "Toolchain:\n$(sh util/xcompile/xcompile)\n"
-
-	if use unibuild; then
-		while read -r name; do
-			read -r coreboot
-
-			set_build_env "${coreboot}"
-			make_coreboot "${BUILD_DIR}" "${CONFIG}"
-			add_fw_blobs "${BUILD_DIR}" "${coreboot}"
-
-			# Build a second ROM with serial support for developers.
-			make_coreboot "${BUILD_DIR_SERIAL}" "${CONFIG_SERIAL}"
-			add_fw_blobs "${BUILD_DIR_SERIAL}" "${coreboot}"
-		done < <(cros_config_host "get-firmware-build-combinations" coreboot || die)
-	else
-		set_build_env "$(get_board)"
-		make_coreboot "${BUILD_DIR}" "${CONFIG}"
-		add_fw_blobs "${BUILD_DIR}"
-
-		# Build a second ROM with serial support for developers.
-		make_coreboot "${BUILD_DIR_SERIAL}" "${CONFIG_SERIAL}"
-		add_fw_blobs "${BUILD_DIR_SERIAL}"
-	fi
-}
-
-# Install files into /firmware
-# Args:
-#   $1: The build combination name
-#   $2: The coreboot build target
-do_install() {
-	local build_combination="$1"
-	local build_target="$2"
-	local dest_dir="/firmware"
-	local mapfile
-
-	if [[ -n "${build_target}" ]]; then
-		dest_dir+="/${build_target}"
-		einfo "Installing coreboot ${build_target} into ${dest_dir}"
-	fi
-	insinto "${dest_dir}"
-
-	newins "${BUILD_DIR}/coreboot.rom" coreboot.rom
-	newins "${BUILD_DIR_SERIAL}/coreboot.rom" coreboot.rom.serial
-
-	OPROM=$( awk 'BEGIN{FS="\""} /CONFIG_VGA_BIOS_FILE=/ { print $2 }' \
-		"${CONFIG}" )
-	CBFSOPROM=pci$( awk 'BEGIN{FS="\""} /CONFIG_VGA_BIOS_ID=/ { print $2 }' \
-		"${CONFIG}" ).rom
-	FSP=$( awk 'BEGIN{FS="\""} /CONFIG_FSP_FILE=/ { print $2 }' \
-		"${CONFIG}" )
-	if [[ -n "${FSP}" ]]; then
-		newins ${FSP} fsp.bin
-	fi
-	# Save the psp_verstage binary for signing on AMD Fam17h platforms
-	if [[ -e "${BUILD_DIR}/psp_verstage.bin" ]]; then
-		newins "${BUILD_DIR}/psp_verstage.bin" psp_verstage.bin
-	fi
-	if [[ -n "${OPROM}" ]]; then
-		newins ${OPROM} ${CBFSOPROM}
-	fi
-	if use memmaps; then
-		for mapfile in "${BUILD_DIR}"/cbfs/fallback/*.map
-		do
-			doins $mapfile
-		done
-	fi
-	newins "${CONFIG}" coreboot.config
-	newins "${CONFIG_SERIAL}" coreboot_serial.config
-
-	# Keep binaries with debug symbols around for crash dump analysis
-	if [[ -s "${BUILD_DIR}/bl31.elf" ]]; then
-		newins "${BUILD_DIR}/bl31.elf" bl31.elf
-		newins "${BUILD_DIR_SERIAL}/bl31.elf" bl31.serial.elf
-	fi
-	insinto "${dest_dir}"/coreboot
-	doins "${BUILD_DIR}"/cbfs/fallback/*.debug
-	nonfatal doins "${BUILD_DIR}"/cbfs/fallback/bootblock.bin
-	insinto "${dest_dir}"/coreboot_serial
-	doins "${BUILD_DIR_SERIAL}"/cbfs/fallback/*.debug
-	nonfatal doins "${BUILD_DIR_SERIAL}"/cbfs/fallback/bootblock.bin
-
-	# coreboot's static_fw_config.h is copied into libpayload include
-	# directory.
-	local libpayload_subdir=legacy
-	if use unibuild; then
-		libpayload_subdir="${build_combination}"
-	fi
-	insinto "/firmware/${libpayload_subdir}/libpayload/libpayload/include"
-	doins "${BUILD_DIR}/static_fw_config.h"
-	einfo "Installed static_fw_config.h into libpayload include directory"
-}
-
-src_install() {
-	if use unibuild; then
-		while read -r name; do
-			read -r coreboot
-
-			set_build_env "${coreboot}"
-			do_install "${name}" "${coreboot}"
-		done < <(cros_config_host "get-firmware-build-combinations" coreboot || die)
-	else
-		set_build_env "$(get_board)"
-		do_install
-	fi
-}
diff --git a/sys-boot/coreboot/coreboot-0.0.1-r4660.ebuild b/sys-boot/coreboot/coreboot-0.0.1-r4660.ebuild
new file mode 100644
index 0000000..21e562f
--- /dev/null
+++ b/sys-boot/coreboot/coreboot-0.0.1-r4660.ebuild
@@ -0,0 +1,440 @@
+# Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+# Change this version number when any change is made to configs/files under
+# coreboot and an auto-revbump is required.
+# VERSION=REVBUMP-0.0.71
+
+EAPI=7
+CROS_WORKON_COMMIT=("925a3a4f5836e2f6f696975cf52c0ff6c86c9309" "55eeb7b08f8ab9f5d9614e16a0c772342fd4713e" "1269365169791c65a6bf6f364583209195874138" "f38a9e68c064436c1252d7705200258dda7b5816" "f754363ae1e32a0b2029200cabb5de0cc8fa2720" "ee319ae7bc59e88b60142f40a9ec1b46656de4db" "b7d5b2d6a6dd05874d86ee900ff441d261f9034c")
+CROS_WORKON_TREE=("562dfaab06163893d44f62dfb625009f71617aee" "7f944eabb92969a61888993e551ddf829ad9c304" "63abdfe41a1746dfd5452f030b2ff4646a15ff76" "b85e072a7f764c4f43d084e3aa20e13bf24ab8aa" "5396cf00ee808f67c4e1f81487a9c420d01a6452" "45d22a8711f85c4310c0c2121d3dc8a72793d375" "c0433b88f972fa26dded401be022c1c026cd644e")
+CROS_WORKON_PROJECT=(
+	"chromiumos/third_party/coreboot"
+	"chromiumos/third_party/arm-trusted-firmware"
+	"chromiumos/platform/vboot_reference"
+	"chromiumos/third_party/coreboot/amd_blobs"
+	"chromiumos/third_party/coreboot/blobs"
+	"chromiumos/third_party/coreboot/intel-microcode"
+	"chromiumos/third_party/cbootimage"
+)
+CROS_WORKON_LOCALNAME=(
+	"coreboot"
+	"arm-trusted-firmware"
+	"../platform/vboot_reference"
+	"coreboot/3rdparty/amd_blobs"
+	"coreboot/3rdparty/blobs"
+	"coreboot/3rdparty/intel-microcode"
+	"cbootimage"
+)
+CROS_WORKON_DESTDIR=(
+	"${S}"
+	"${S}/3rdparty/arm-trusted-firmware"
+	"${S}/3rdparty/vboot"
+	"${S}/3rdparty/amd_blobs"
+	"${S}/3rdparty/blobs"
+	"${S}/3rdparty/intel-microcode"
+	"${S}/util/nvidia/cbootimage"
+)
+
+CROS_WORKON_EGIT_BRANCH=(
+	"chromeos-2016.05"
+	"master"
+	"master"
+	"chromeos"
+	"master"
+	"master"
+	"master"
+)
+
+inherit cros-workon toolchain-funcs cros-unibuild coreboot-sdk
+
+DESCRIPTION="coreboot firmware"
+HOMEPAGE="http://www.coreboot.org"
+LICENSE="GPL-2"
+KEYWORDS="*"
+IUSE="em100-mode fsp memmaps mocktpm quiet-cb rmt vmx mma"
+IUSE="${IUSE} +bmpblk quiet unibuild verbose"
+IUSE="${IUSE} amd_cpu coreboot-sdk chipset_stoneyridge chipset_picasso"
+IUSE="${IUSE} chipset_cezanne"
+# virtual/coreboot-private-files is deprecated. When adding a new board you
+# should add the coreboot-private-files-{board/chipset} ebuilds into the private
+# overlays, and avoid creating virtual packages.
+# See b/178642474
+IUSE="${IUSE} coreboot-private-files-board coreboot-private-files-chipset"
+
+# No pre-unibuild boards build firmware on ToT anymore.  Assume
+# unibuild to keep ebuild clean.
+REQUIRED_USE="unibuild"
+
+# coreboot's build system handles stripping the binaries and producing a
+# separate .debug file with the symbols. This flag prevents portage from
+# stripping the .debug symbols
+RESTRICT="strip"
+
+DEPEND="
+	coreboot-private-files-board? ( sys-boot/coreboot-private-files-board:= )
+	coreboot-private-files-chipset? ( sys-boot/coreboot-private-files-chipset:= )
+	virtual/coreboot-private-files
+	bmpblk? ( sys-boot/chromeos-bmpblk:= )
+	chipset_stoneyridge? ( sys-boot/amd-firmware:= )
+	chipset_picasso? ( >=sys-boot/amd-picasso-fsp-0.0.2:= )
+	chipset_cezanne? ( sys-boot/amd-cezanne-fsp:= )
+	chromeos-base/chromeos-config:=
+	"
+
+# While this package is never actually executed, we still need to specify
+# RDEPEND. A binary version of this package could exist that was built using an
+# outdated version of chromeos-config. Without the RDEPEND this stale binary
+# package is considered valid by the package manager. This is problematic
+# because we could have two binary packages installed having been build with
+# different versions of chromeos-config. By specifying the RDEPEND we force
+# the package manager to ensure the two versions use the same chromeos-config.
+RDEPEND="${DEPEND}"
+
+set_build_env() {
+	local board="$1"
+
+	CONFIG="$(cros-workon_get_build_dir)/${board}.config"
+	CONFIG_SERIAL="$(cros-workon_get_build_dir)/${board}-serial.config"
+	# Strip the .config suffix
+	BUILD_DIR="${CONFIG%.config}"
+	BUILD_DIR_SERIAL="${CONFIG_SERIAL%.config}"
+}
+
+# Create the coreboot configuration files for a particular board. This
+# creates a standard config and a serial config.
+# Args:
+#   $1: board name
+#   $2: libpayload build target (for config.baseboard files)
+create_config() {
+	local board="$1"
+	local base_board="$2"
+
+	if [[ -s "${FILESDIR}/configs/config.${board}" ]]; then
+		touch "${CONFIG}"
+
+		if [[ -s "${FILESDIR}/configs/config.baseboard.${base_board}" ]]; then
+			cat "${FILESDIR}/configs/config.baseboard.${base_board}" >> "${CONFIG}"
+			# handle the case when "${CONFIG}" does not have a newline in the end.
+			echo >> "${CONFIG}"
+		fi
+
+		cat "${FILESDIR}/configs/config.${board}" >> "${CONFIG}"
+
+		# handle the case when "${CONFIG}" does not have a newline in the end.
+		echo >> "${CONFIG}"
+
+		# Override mainboard vendor if needed.
+		if [[ -n "${SYSTEM_OEM}" ]]; then
+			echo "CONFIG_MAINBOARD_VENDOR=\"${SYSTEM_OEM}\"" >> "${CONFIG}"
+		fi
+		if [[ -n "${SYSTEM_OEM_VENDOR_ID}" ]]; then
+			echo "CONFIG_SUBSYSTEM_VENDOR_ID=${SYSTEM_OEM_VENDOR_ID}" >> "${CONFIG}"
+		fi
+		if [[ -n "${SYSTEM_OEM_DEVICE_ID}" ]]; then
+			echo "CONFIG_SUBSYSTEM_DEVICE_ID=${SYSTEM_OEM_DEVICE_ID}" >> "${CONFIG}"
+		fi
+		if [[ -n "${SYSTEM_OEM_ACPI_ID}" ]]; then
+			echo "CONFIG_ACPI_SUBSYSTEM_ID=\"${SYSTEM_OEM_ACPI_ID}\"" >> "${CONFIG}"
+		fi
+
+		# In case config comes from a symlink we are likely building
+		# for an overlay not matching this config name. Enable adding
+		# a CBFS based board ID for coreboot.
+		if [[ -L "${FILESDIR}/configs/config.${board}" ]]; then
+			echo "CONFIG_BOARD_ID_MANUAL=y" >> "${CONFIG}"
+			echo "CONFIG_BOARD_ID_STRING=\"${BOARD_USE}\"" >> "${CONFIG}"
+		fi
+	else
+		ewarn "Could not find existing config for ${board}."
+	fi
+
+	if use rmt; then
+		echo "CONFIG_MRC_RMT=y" >> "${CONFIG}"
+	fi
+	if use vmx; then
+		elog "   - enabling VMX"
+		echo "CONFIG_ENABLE_VMX=y" >> "${CONFIG}"
+	fi
+	if use quiet-cb; then
+		# Suppress console spew if requested.
+		cat >> "${CONFIG}" <<EOF
+CONFIG_DEFAULT_CONSOLE_LOGLEVEL=3
+# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_8 is not set
+CONFIG_DEFAULT_CONSOLE_LOGLEVEL_3=y
+EOF
+	fi
+	if use mocktpm; then
+		echo "CONFIG_VBOOT_MOCK_SECDATA=y" >> "${CONFIG}"
+	fi
+	if use mma; then
+		echo "CONFIG_MMA=y" >> "${CONFIG}"
+	fi
+
+	# disable coreboot's own EC firmware building mechanism
+	echo "CONFIG_EC_GOOGLE_CHROMEEC_FIRMWARE_NONE=y" >> "${CONFIG}"
+	echo "CONFIG_EC_GOOGLE_CHROMEEC_PD_FIRMWARE_NONE=y" >> "${CONFIG}"
+	# enable common GBB flags for development
+	echo "CONFIG_GBB_FLAG_DEV_SCREEN_SHORT_DELAY=y" >> "${CONFIG}"
+	echo "CONFIG_GBB_FLAG_DISABLE_FW_ROLLBACK_CHECK=y" >> "${CONFIG}"
+	echo "CONFIG_GBB_FLAG_FORCE_DEV_BOOT_USB=y" >> "${CONFIG}"
+	echo "CONFIG_GBB_FLAG_FORCE_DEV_SWITCH_ON=y" >> "${CONFIG}"
+	local version=$(${CHROOT_SOURCE_ROOT}/src/third_party/chromiumos-overlay/chromeos/config/chromeos_version.sh |grep "^[[:space:]]*CHROMEOS_VERSION_STRING=" |cut -d= -f2)
+	echo "CONFIG_VBOOT_FWID_VERSION=\".${version}\"" >> "${CONFIG}"
+	if use em100-mode; then
+		einfo "Enabling em100 mode via CONFIG_EM100 (slower SPI flash)"
+		echo "CONFIG_EM100=y" >> "${CONFIG}"
+	fi
+	# Use FSP's GOP in favor of coreboot's Ada based Intel graphics init
+	# which we don't include at this time. A no-op on non-FSP/GOP devices.
+	echo "CONFIG_RUN_FSP_GOP=y" >> "${CONFIG}"
+
+	cp "${CONFIG}" "${CONFIG_SERIAL}"
+	file="${FILESDIR}/configs/fwserial.${board}"
+	if [ ! -f "${file}" ] && [ -n "${base_board}" ]; then
+		file="${FILESDIR}/configs/fwserial.${base_board}"
+	fi
+	if [ ! -f "${file}" ]; then
+		file="${FILESDIR}/configs/fwserial.default"
+	fi
+	cat "${file}" >> "${CONFIG_SERIAL}" || die
+	# handle the case when "${CONFIG_SERIAL}" does not have a newline in the end.
+	echo >> "${CONFIG_SERIAL}"
+
+	# Check that we're using coreboot-sdk
+	if ! use coreboot-sdk; then
+		die "Enable coreboot-sdk to build coreboot."
+	fi
+	if grep -q "^CONFIG_ANY_TOOLCHAIN=y" "${CONFIG}"; then
+		die "Drop ANY_TOOLCHAIN from ${CONFIG}: we don't support it anymore."
+	fi
+
+	einfo "Configured ${CONFIG} for board ${board} in ${BUILD_DIR}"
+}
+
+src_prepare() {
+	local froot="${SYSROOT}/firmware"
+	local privdir="${SYSROOT}/firmware/coreboot-private"
+	local file
+
+	default
+
+	export GENERIC_COMPILER_PREFIX="invalid"
+
+	mkdir "$(cros-workon_get_build_dir)"
+
+	if [[ -d "${privdir}" ]]; then
+		while read -d $'\0' -r file; do
+			rsync --recursive --links --executability \
+				"${file}" ./ || die
+		done < <(find "${privdir}" -maxdepth 1 -mindepth 1 -print0)
+	fi
+
+	cp -a "${FILESDIR}/3rdparty/"* 3rdparty
+
+	local name
+	local coreboot
+	local libpayload
+	while read -r name; do
+		read -r coreboot
+		read -r libpayload
+		set_build_env "${coreboot}"
+		create_config "${coreboot}" "${libpayload}"
+	done < <(cros_config_host "get-firmware-build-combinations" \
+		coreboot,libpayload || die)
+}
+
+add_fw_blob() {
+	local rom="$1"
+	local cbname="$2"
+	local blob="$3"
+	local cbhash="${cbname%.bin}.hash"
+	local hash="${blob%.bin}.hash"
+
+	cbfstool "${rom}" add -r FW_MAIN_A,FW_MAIN_B -t raw -c lzma \
+		-f "${blob}" -n "${cbname}" || die
+	cbfstool "${rom}" add -r FW_MAIN_A,FW_MAIN_B -t raw -c none \
+		-f "${hash}" -n "${cbhash}" || die
+}
+
+# Build coreboot with a supplied configuration and output directory.
+#   $1: Build directory to use (e.g. "build_serial")
+#   $2: Config file to use (e.g. ".config_serial")
+#   $3: Build target build (e.g. "pyro")
+make_coreboot() {
+	local builddir="$1"
+	local config_fname="$2"
+
+	rm -rf "${builddir}" .xcompile
+
+	local CB_OPTS=(
+		obj="${builddir}"
+		DOTCONFIG="${config_fname}"
+		HOSTCC="$(tc-getBUILD_CC)"
+		HOSTCXX="$(tc-getBUILD_CXX)"
+		HOSTPKGCONFIG="$(tc-getBUILD_PKG_CONFIG)"
+	)
+	use quiet && CB_OPTS+=( "V=0" )
+	use verbose && CB_OPTS+=( "V=1" )
+	use quiet && REDIR="/dev/null" || REDIR="/dev/stdout"
+
+	# Configure and build coreboot.
+	yes "" | emake oldconfig "${CB_OPTS[@]}" >${REDIR}
+	emake "${CB_OPTS[@]}"
+
+	# Expand FW_MAIN_* since we might add some files
+	cbfstool "${builddir}/coreboot.rom" expand -r FW_MAIN_A,FW_MAIN_B
+
+	# Modify firmware descriptor if building for the EM100 emulator on
+	# Intel platforms.
+	# TODO(crbug.com/863396): Should we have an 'intel' USE flag? Do we
+	# still have any Intel platforms that don't use ifdtool?
+	if ! use amd_cpu && use em100-mode; then
+		einfo "Enabling em100 mode via ifdttool (slower SPI flash)"
+		ifdtool --em100 "${builddir}/coreboot.rom" || die
+		mv "${builddir}/coreboot.rom"{.new,} || die
+	fi
+}
+
+# Add fw blobs to the coreboot.rom.
+#   $1: Build directory to use (e.g. "build_serial")
+#   $2: Build target build (e.g. "pyro")
+add_fw_blobs() {
+	local builddir="$1"
+	local build_target="$2"
+	local froot="${SYSROOT}/firmware/${build_target}"
+	local fblobroot="${SYSROOT}/firmware"
+
+	local blob
+	local cbname
+	for blob in ${FW_BLOBS}; do
+		local blobfile="${fblobroot}/${blob}"
+
+		# Use per-board blob if available
+		if [[ -e "${froot}/${blob}" ]]; then
+			blobfile="${froot}/${blob}"
+		fi
+
+		cbname=$(basename "${blob}")
+		add_fw_blob "${builddir}/coreboot.rom" "${cbname}" \
+			"${blobfile}" || die
+	done
+
+	if [ -d ${froot}/cbfs ]; then
+		die "something is still using ${froot}/cbfs, which is deprecated."
+	fi
+}
+
+src_compile() {
+	# Set KERNELREVISION (really coreboot revision) to the ebuild revision
+	# number followed by a dot and the first seven characters of the git
+	# hash. The name is confusing but consistent with the coreboot
+	# Makefile.
+	local sha1v="${VCSID/*-/}"
+	export KERNELREVISION=".${PV}.${sha1v:0:7}"
+
+	if ! use coreboot-sdk; then
+		tc-export CC
+		# Export the known cross compilers so there isn't a reliance
+		# on what the default profile is for exporting a compiler. The
+		# reasoning is that the firmware may need more than one to build
+		# and boot.
+		export CROSS_COMPILE_x86="i686-pc-linux-gnu-"
+		export CROSS_COMPILE_mipsel="mipsel-cros-linux-gnu-"
+		export CROSS_COMPILE_arm64="aarch64-cros-linux-gnu-"
+		export CROSS_COMPILE_arm="armv7a-cros-linux-gnu- armv7a-cros-linux-gnueabihf-"
+	else
+		export CROSS_COMPILE_x86=${COREBOOT_SDK_PREFIX_x86_32}
+		export CROSS_COMPILE_mipsel=${COREBOOT_SDK_PREFIX_mips}
+		export CROSS_COMPILE_arm64=${COREBOOT_SDK_PREFIX_arm64}
+		export CROSS_COMPILE_arm=${COREBOOT_SDK_PREFIX_arm}
+
+		export PATH=/opt/coreboot-sdk/bin:$PATH
+	fi
+
+	use verbose && elog "Toolchain:\n$(sh util/xcompile/xcompile)\n"
+
+	while read -r name; do
+		read -r coreboot
+
+		set_build_env "${coreboot}"
+		make_coreboot "${BUILD_DIR}" "${CONFIG}"
+		add_fw_blobs "${BUILD_DIR}" "${coreboot}"
+
+		# Build a second ROM with serial support for developers.
+		make_coreboot "${BUILD_DIR_SERIAL}" "${CONFIG_SERIAL}"
+		add_fw_blobs "${BUILD_DIR_SERIAL}" "${coreboot}"
+	done < <(cros_config_host "get-firmware-build-combinations" coreboot || die)
+}
+
+# Install files into /firmware
+# Args:
+#   $1: The build combination name
+#   $2: The coreboot build target
+do_install() {
+	local build_combination="$1"
+	local build_target="$2"
+	local dest_dir="/firmware"
+	local mapfile
+
+	if [[ -n "${build_target}" ]]; then
+		dest_dir+="/${build_target}"
+		einfo "Installing coreboot ${build_target} into ${dest_dir}"
+	fi
+	insinto "${dest_dir}"
+
+	newins "${BUILD_DIR}/coreboot.rom" coreboot.rom
+	newins "${BUILD_DIR_SERIAL}/coreboot.rom" coreboot.rom.serial
+
+	OPROM=$( awk 'BEGIN{FS="\""} /CONFIG_VGA_BIOS_FILE=/ { print $2 }' \
+		"${CONFIG}" )
+	CBFSOPROM=pci$( awk 'BEGIN{FS="\""} /CONFIG_VGA_BIOS_ID=/ { print $2 }' \
+		"${CONFIG}" ).rom
+	FSP=$( awk 'BEGIN{FS="\""} /CONFIG_FSP_FILE=/ { print $2 }' \
+		"${CONFIG}" )
+	if [[ -n "${FSP}" ]]; then
+		newins ${FSP} fsp.bin
+	fi
+	# Save the psp_verstage binary for signing on AMD Fam17h platforms
+	if [[ -e "${BUILD_DIR}/psp_verstage.bin" ]]; then
+		newins "${BUILD_DIR}/psp_verstage.bin" psp_verstage.bin
+	fi
+	if [[ -n "${OPROM}" ]]; then
+		newins ${OPROM} ${CBFSOPROM}
+	fi
+	if use memmaps; then
+		for mapfile in "${BUILD_DIR}"/cbfs/fallback/*.map
+		do
+			doins $mapfile
+		done
+	fi
+	newins "${CONFIG}" coreboot.config
+	newins "${CONFIG_SERIAL}" coreboot_serial.config
+
+	# Keep binaries with debug symbols around for crash dump analysis
+	if [[ -s "${BUILD_DIR}/bl31.elf" ]]; then
+		newins "${BUILD_DIR}/bl31.elf" bl31.elf
+		newins "${BUILD_DIR_SERIAL}/bl31.elf" bl31.serial.elf
+	fi
+	insinto "${dest_dir}"/coreboot
+	doins "${BUILD_DIR}"/cbfs/fallback/*.debug
+	nonfatal doins "${BUILD_DIR}"/cbfs/fallback/bootblock.bin
+	insinto "${dest_dir}"/coreboot_serial
+	doins "${BUILD_DIR_SERIAL}"/cbfs/fallback/*.debug
+	nonfatal doins "${BUILD_DIR_SERIAL}"/cbfs/fallback/bootblock.bin
+
+	# coreboot's static_fw_config.h is copied into libpayload include
+	# directory.
+	insinto "/firmware/${build_combination}/libpayload/libpayload/include"
+	doins "${BUILD_DIR}/static_fw_config.h"
+	einfo "Installed static_fw_config.h into libpayload include directory"
+}
+
+src_install() {
+	while read -r name; do
+		read -r coreboot
+
+		set_build_env "${coreboot}"
+		do_install "${name}" "${coreboot}"
+	done < <(cros_config_host "get-firmware-build-combinations" coreboot || die)
+}
diff --git a/sys-boot/coreboot/coreboot-9999.ebuild b/sys-boot/coreboot/coreboot-9999.ebuild
index 45a31d8..8336ab4 100644
--- a/sys-boot/coreboot/coreboot-9999.ebuild
+++ b/sys-boot/coreboot/coreboot-9999.ebuild
@@ -44,13 +44,13 @@
 	"master"
 )
 
-inherit cros-board cros-workon toolchain-funcs cros-unibuild coreboot-sdk
+inherit cros-workon toolchain-funcs cros-unibuild coreboot-sdk
 
 DESCRIPTION="coreboot firmware"
 HOMEPAGE="http://www.coreboot.org"
 LICENSE="GPL-2"
 KEYWORDS="~*"
-IUSE="em100-mode fsp memmaps mocktpm quiet-cb rmt vmx mtc mma"
+IUSE="em100-mode fsp memmaps mocktpm quiet-cb rmt vmx mma"
 IUSE="${IUSE} +bmpblk quiet unibuild verbose"
 IUSE="${IUSE} amd_cpu coreboot-sdk chipset_stoneyridge chipset_picasso"
 IUSE="${IUSE} chipset_cezanne"
@@ -59,14 +59,17 @@
 # overlays, and avoid creating virtual packages.
 # See b/178642474
 IUSE="${IUSE} coreboot-private-files-board coreboot-private-files-chipset"
+
+# No pre-unibuild boards build firmware on ToT anymore.  Assume
+# unibuild to keep ebuild clean.
+REQUIRED_USE="unibuild"
+
 # coreboot's build system handles stripping the binaries and producing a
 # separate .debug file with the symbols. This flag prevents portage from
 # stripping the .debug symbols
 RESTRICT="strip"
 
-RDEPEND=""
 DEPEND="
-	mtc? ( sys-boot/mtc:= )
 	coreboot-private-files-board? ( sys-boot/coreboot-private-files-board:= )
 	coreboot-private-files-chipset? ( sys-boot/coreboot-private-files-chipset:= )
 	virtual/coreboot-private-files
@@ -74,21 +77,17 @@
 	chipset_stoneyridge? ( sys-boot/amd-firmware:= )
 	chipset_picasso? ( >=sys-boot/amd-picasso-fsp-0.0.2:= )
 	chipset_cezanne? ( sys-boot/amd-cezanne-fsp:= )
-	unibuild? ( chromeos-base/chromeos-config:= )
+	chromeos-base/chromeos-config:=
 	"
 
-# Get the coreboot board config to build for.
-# Checks the current board with/without variant, and also whether an FSP
-# is in use. Echoes the board config file that should be used to build
-# coreboot.
-get_board() {
-	local board=$(get_current_board_with_variant)
-
-	if [[ ! -s "${FILESDIR}/configs/config.${board}" ]]; then
-		board=$(get_current_board_no_variant)
-	fi
-	echo "${board}"
-}
+# While this package is never actually executed, we still need to specify
+# RDEPEND. A binary version of this package could exist that was built using an
+# outdated version of chromeos-config. Without the RDEPEND this stale binary
+# package is considered valid by the package manager. This is problematic
+# because we could have two binary packages installed having been build with
+# different versions of chromeos-config. By specifying the RDEPEND we force
+# the package manager to ensure the two versions use the same chromeos-config.
+RDEPEND="${DEPEND}"
 
 set_build_env() {
 	local board="$1"
@@ -104,14 +103,22 @@
 # creates a standard config and a serial config.
 # Args:
 #   $1: board name
-#   $2: Base board name, if any (used for unified builds)
+#   $2: libpayload build target (for config.baseboard files)
 create_config() {
 	local board="$1"
 	local base_board="$2"
 
 	if [[ -s "${FILESDIR}/configs/config.${board}" ]]; then
+		touch "${CONFIG}"
 
-		cp -v "${FILESDIR}/configs/config.${board}" "${CONFIG}"
+		if [[ -s "${FILESDIR}/configs/config.baseboard.${base_board}" ]]; then
+			cat "${FILESDIR}/configs/config.baseboard.${base_board}" >> "${CONFIG}"
+			# handle the case when "${CONFIG}" does not have a newline in the end.
+			echo >> "${CONFIG}"
+		fi
+
+		cat "${FILESDIR}/configs/config.${board}" >> "${CONFIG}"
+
 		# handle the case when "${CONFIG}" does not have a newline in the end.
 		echo >> "${CONFIG}"
 
@@ -210,6 +217,8 @@
 
 	default
 
+	export GENERIC_COMPILER_PREFIX="invalid"
+
 	mkdir "$(cros-workon_get_build_dir)"
 
 	if [[ -d "${privdir}" ]]; then
@@ -221,18 +230,16 @@
 
 	cp -a "${FILESDIR}/3rdparty/"* 3rdparty
 
-	if use unibuild; then
-		local build_target
-
-		while read -r name; do
-			read -r coreboot
-			set_build_env "${coreboot}"
-			create_config "${coreboot}" "$(get_board)"
-		done < <(cros_config_host "get-firmware-build-combinations" coreboot || die)
-	else
-		set_build_env "$(get_board)"
-		create_config "$(get_board)"
-	fi
+	local name
+	local coreboot
+	local libpayload
+	while read -r name; do
+		read -r coreboot
+		read -r libpayload
+		set_build_env "${coreboot}"
+		create_config "${coreboot}" "${libpayload}"
+	done < <(cros_config_host "get-firmware-build-combinations" \
+		coreboot,libpayload || die)
 }
 
 add_fw_blob() {
@@ -251,27 +258,27 @@
 # Build coreboot with a supplied configuration and output directory.
 #   $1: Build directory to use (e.g. "build_serial")
 #   $2: Config file to use (e.g. ".config_serial")
-#   $3: Build target build (e.g. "pyro"), for USE=unibuild only.
+#   $3: Build target build (e.g. "pyro")
 make_coreboot() {
 	local builddir="$1"
 	local config_fname="$2"
 
 	rm -rf "${builddir}" .xcompile
 
-	local CB_OPTS=( "DOTCONFIG=${config_fname}" )
+	local CB_OPTS=(
+		obj="${builddir}"
+		DOTCONFIG="${config_fname}"
+		HOSTCC="$(tc-getBUILD_CC)"
+		HOSTCXX="$(tc-getBUILD_CXX)"
+		HOSTPKGCONFIG="$(tc-getBUILD_PKG_CONFIG)"
+	)
 	use quiet && CB_OPTS+=( "V=0" )
 	use verbose && CB_OPTS+=( "V=1" )
 	use quiet && REDIR="/dev/null" || REDIR="/dev/stdout"
 
 	# Configure and build coreboot.
-	yes "" | emake oldconfig "${CB_OPTS[@]}" obj="${builddir}" >${REDIR}
-	if grep -q "CONFIG_VENDOR_EMULATION=y" "${config_fname}"; then
-		local config_file
-		config_file="${FILESDIR}/configs/config.$(get_board)"
-		die "Working with a default configuration. ${config_file} incorrect?"
-	fi
-	emake "${CB_OPTS[@]}" obj="${builddir}" HOSTCC="$(tc-getBUILD_CC)" \
-		HOSTPKGCONFIG="$(tc-getBUILD_PKG_CONFIG)"
+	yes "" | emake oldconfig "${CB_OPTS[@]}" >${REDIR}
+	emake "${CB_OPTS[@]}"
 
 	# Expand FW_MAIN_* since we might add some files
 	cbfstool "${builddir}/coreboot.rom" expand -r FW_MAIN_A,FW_MAIN_B
@@ -289,24 +296,20 @@
 
 # Add fw blobs to the coreboot.rom.
 #   $1: Build directory to use (e.g. "build_serial")
-#   $2: Build target build (e.g. "pyro"), for USE=unibuild only.
+#   $2: Build target build (e.g. "pyro")
 add_fw_blobs() {
 	local builddir="$1"
 	local build_target="$2"
-	local froot="${SYSROOT}/firmware"
+	local froot="${SYSROOT}/firmware/${build_target}"
 	local fblobroot="${SYSROOT}/firmware"
 
-	if use unibuild; then
-		froot+="/${build_target}"
-	fi
-
 	local blob
 	local cbname
 	for blob in ${FW_BLOBS}; do
 		local blobfile="${fblobroot}/${blob}"
 
 		# Use per-board blob if available
-		if use unibuild && [[ -e "${froot}/${blob}" ]]; then
+		if [[ -e "${froot}/${blob}" ]]; then
 			blobfile="${froot}/${blob}"
 		fi
 
@@ -349,27 +352,17 @@
 
 	use verbose && elog "Toolchain:\n$(sh util/xcompile/xcompile)\n"
 
-	if use unibuild; then
-		while read -r name; do
-			read -r coreboot
+	while read -r name; do
+		read -r coreboot
 
-			set_build_env "${coreboot}"
-			make_coreboot "${BUILD_DIR}" "${CONFIG}"
-			add_fw_blobs "${BUILD_DIR}" "${coreboot}"
-
-			# Build a second ROM with serial support for developers.
-			make_coreboot "${BUILD_DIR_SERIAL}" "${CONFIG_SERIAL}"
-			add_fw_blobs "${BUILD_DIR_SERIAL}" "${coreboot}"
-		done < <(cros_config_host "get-firmware-build-combinations" coreboot || die)
-	else
-		set_build_env "$(get_board)"
+		set_build_env "${coreboot}"
 		make_coreboot "${BUILD_DIR}" "${CONFIG}"
-		add_fw_blobs "${BUILD_DIR}"
+		add_fw_blobs "${BUILD_DIR}" "${coreboot}"
 
 		# Build a second ROM with serial support for developers.
 		make_coreboot "${BUILD_DIR_SERIAL}" "${CONFIG_SERIAL}"
-		add_fw_blobs "${BUILD_DIR_SERIAL}"
-	fi
+		add_fw_blobs "${BUILD_DIR_SERIAL}" "${coreboot}"
+	done < <(cros_config_host "get-firmware-build-combinations" coreboot || die)
 }
 
 # Install files into /firmware
@@ -430,25 +423,16 @@
 
 	# coreboot's static_fw_config.h is copied into libpayload include
 	# directory.
-	local libpayload_subdir=legacy
-	if use unibuild; then
-		libpayload_subdir="${build_combination}"
-	fi
-	insinto "/firmware/${libpayload_subdir}/libpayload/libpayload/include"
+	insinto "/firmware/${build_combination}/libpayload/libpayload/include"
 	doins "${BUILD_DIR}/static_fw_config.h"
 	einfo "Installed static_fw_config.h into libpayload include directory"
 }
 
 src_install() {
-	if use unibuild; then
-		while read -r name; do
-			read -r coreboot
+	while read -r name; do
+		read -r coreboot
 
-			set_build_env "${coreboot}"
-			do_install "${name}" "${coreboot}"
-		done < <(cros_config_host "get-firmware-build-combinations" coreboot || die)
-	else
-		set_build_env "$(get_board)"
-		do_install
-	fi
+		set_build_env "${coreboot}"
+		do_install "${name}" "${coreboot}"
+	done < <(cros_config_host "get-firmware-build-combinations" coreboot || die)
 }
diff --git a/sys-boot/coreboot/files/configs/config.adlrvp_m_ext_ec b/sys-boot/coreboot/files/configs/config.adlrvp_m_ext_ec
index 722c8c3..f1ee8b3 100644
--- a/sys-boot/coreboot/files/configs/config.adlrvp_m_ext_ec
+++ b/sys-boot/coreboot/files/configs/config.adlrvp_m_ext_ec
@@ -1,46 +1,21 @@
 CONFIG_VENDOR_INTEL=y
 CONFIG_BOARD_INTEL_ADLRVP_M_EXT_EC=y
-CONFIG_MAINBOARD_SMBIOS_PRODUCT_NAME="adlrvp"
-
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
 
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/mainboard/google/brya/descriptor-adlrvp_m.bin"
 
 # FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/adl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/adl/fsp/fsps.bin"
-CONFIG_RUN_FSP_GOP=y
 CONFIG_DISPLAY_FSP_CALLS_AND_STATUS=y
 CONFIG_DISPLAY_FSP_HEADER=y
 
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/mainboard/google/brya/csme-adlrvp_m.bin"
 
-# Microcode
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/mainboard/google/brya/ucode.bin"
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
+CONFIG_SOC_INTEL_CSE_RW_VERSION="16.0.10.1372"
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-adlrvp_m.bin"
 
 # Video Blob
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt_adlrvp_m.bin"
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_HAVE_VBT=y
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.adlrvp_p b/sys-boot/coreboot/files/configs/config.adlrvp_p
index f9da3b3..88819ac 100644
--- a/sys-boot/coreboot/files/configs/config.adlrvp_p
+++ b/sys-boot/coreboot/files/configs/config.adlrvp_p
@@ -1,50 +1,24 @@
 CONFIG_VENDOR_INTEL=y
 CONFIG_BOARD_INTEL_ADLRVP_P=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/mainboard/google/brya/descriptor-adlrvp_p.bin"
 
 # FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/adl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/adl/fsp/fsps.bin"
-CONFIG_RUN_FSP_GOP=y
 CONFIG_DISPLAY_FSP_CALLS_AND_STATUS=y
 CONFIG_DISPLAY_FSP_HEADER=y
 
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/mainboard/google/brya/csme-adlrvp_p.bin"
 
-# Microcode
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/mainboard/google/brya/ucode.bin"
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-adlrvp_p.bin"
 
 # Video Blob
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt.bin"
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_HAVE_VBT=y
 
 # EC
 CONFIG_HAVE_EC_BIN=y
 CONFIG_EC_BIN_PATH="3rdparty/blobs/mainboard/google/brya/ec-adlrvp_p.bin"
 CONFIG_ADL_INTEL_EC=y
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.adlrvp_p_ext_ec b/sys-boot/coreboot/files/configs/config.adlrvp_p_ext_ec
index 7ab03e1..50f6ca1 100644
--- a/sys-boot/coreboot/files/configs/config.adlrvp_p_ext_ec
+++ b/sys-boot/coreboot/files/configs/config.adlrvp_p_ext_ec
@@ -1,50 +1,24 @@
 CONFIG_VENDOR_INTEL=y
 CONFIG_BOARD_INTEL_ADLRVP_P=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/mainboard/google/brya/descriptor-adlrvp_p.bin"
 
 # FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/adl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/adl/fsp/fsps.bin"
-CONFIG_RUN_FSP_GOP=y
 CONFIG_DISPLAY_FSP_CALLS_AND_STATUS=y
 CONFIG_DISPLAY_FSP_HEADER=y
 
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/mainboard/google/brya/csme-adlrvp_p.bin"
 
-# Microcode
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/mainboard/google/brya/ucode.bin"
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-adlrvp_p.bin"
 
 # Video Blob
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt.bin"
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_HAVE_VBT=y
 
 # EC
 CONFIG_HAVE_EC_BIN=y
 CONFIG_EC_BIN_PATH="3rdparty/blobs/mainboard/google/brya/ec-adlrvp_p.bin"
 CONFIG_BOARD_INTEL_ADLRVP_P_EXT_EC=y
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.aleena b/sys-boot/coreboot/files/configs/config.aleena
index f521da4..2f01b40 100644
--- a/sys-boot/coreboot/files/configs/config.aleena
+++ b/sys-boot/coreboot/files/configs/config.aleena
@@ -26,3 +26,7 @@
 CONFIG_SPI_FLASH_SMM=y
 CONFIG_ELOG_BOOT_COUNT=y
 CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+CONFIG_AMDFW_CONFIG_FILE=""
+CONFIG_STONEYRIDGE_XHCI_FWM_FILE=""
+CONFIG_AGESA_PRE_MEMORY_BINARY_PI_FILE=""
+CONFIG_AGESA_POST_MEMORY_BINARY_PI_FILE=""
diff --git a/sys-boot/coreboot/files/configs/config.anahera b/sys-boot/coreboot/files/configs/config.anahera
new file mode 100644
index 0000000..4cd6b08
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.anahera
@@ -0,0 +1,14 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_ANAHERA=y
+
+# SPI Descriptor
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/mainboard/google/brya/descriptor-anahera.bin"
+
+# Management Engine
+CONFIG_ME_BIN_PATH="3rdparty/blobs/mainboard/google/brya/csme-anahera.bin"
+
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-anahera.bin"
+
+# Video Blob
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt.bin"
diff --git a/sys-boot/coreboot/files/configs/config.baseboard.brya b/sys-boot/coreboot/files/configs/config.baseboard.brya
new file mode 100644
index 0000000..31894fc
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.baseboard.brya
@@ -0,0 +1,39 @@
+CONFIG_PAYLOAD_NONE=y
+CONFIG_USE_BLOBS=y
+
+# Chrome OS
+CONFIG_CHROMEOS=y
+
+# SPI Descriptor
+CONFIG_HAVE_IFD_BIN=y
+
+# FSP Blobs
+CONFIG_ADD_FSP_BINARIES=y
+CONFIG_FSP_M_FILE="3rdparty/blobs/intel/adl/fsp/fspm.bin"
+CONFIG_FSP_S_FILE="3rdparty/blobs/intel/adl/fsp/fsps.bin"
+CONFIG_RUN_FSP_GOP=y
+
+# Management Engine
+CONFIG_HAVE_ME_BIN=y
+
+# Microcode
+CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/mainboard/google/brya/ucode.bin"
+CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+
+# Video Blob
+CONFIG_INTEL_GMA_ADD_VBT=y
+
+# Serial console disabled by default (do not remove)
+# CONFIG_CONSOLE_SERIAL is not set
+
+# Event Logging
+CONFIG_CMOS_POST=y
+CONFIG_CMOS_POST_OFFSET=0x70
+CONFIG_ELOG_GSMI=y
+CONFIG_ELOG_BOOT_COUNT=y
+CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+CONFIG_SPI_FLASH_SMM=y
+
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
+CONFIG_SOC_INTEL_CSE_RW_VERSION="16.0.10.1473"
diff --git a/sys-boot/coreboot/files/configs/config.baseboard.volteer b/sys-boot/coreboot/files/configs/config.baseboard.volteer
new file mode 100644
index 0000000..480770c
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.baseboard.volteer
@@ -0,0 +1,44 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_PAYLOAD_NONE=y
+CONFIG_USE_BLOBS=y
+
+# Chrome OS
+CONFIG_CHROMEOS=y
+
+# SPI Descriptor
+CONFIG_HAVE_IFD_BIN=y
+
+# FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
+CONFIG_ADD_FSP_BINARIES=y
+CONFIG_HAVE_INTEL_FSP_REPO=y
+# CONFIG_FSP_USE_REPO is not set
+CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
+CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
+CONFIG_FSP_M_XIP=y
+CONFIG_RUN_FSP_GOP=y
+
+# Management Engine
+CONFIG_HAVE_ME_BIN=y
+
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
+CONFIG_SOC_INTEL_CSE_RW_VERSION="15.0.23.1777"
+
+# Microcode
+CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
+CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+
+# Video Blob
+CONFIG_INTEL_GMA_ADD_VBT=y
+
+# Serial console disabled by default (do not remove)
+# CONFIG_CONSOLE_SERIAL is not set
+
+# Event Logging
+CONFIG_CMOS_POST=y
+CONFIG_CMOS_POST_OFFSET=0x70
+CONFIG_ELOG_GSMI=y
+CONFIG_ELOG_BOOT_COUNT=y
+CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.blipper b/sys-boot/coreboot/files/configs/config.blipper
index e9040e0..0295975 100644
--- a/sys-boot/coreboot/files/configs/config.blipper
+++ b/sys-boot/coreboot/files/configs/config.blipper
@@ -45,6 +45,6 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-blipper.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.boten b/sys-boot/coreboot/files/configs/config.boten
index 7eb2a95..65c6a10 100644
--- a/sys-boot/coreboot/files/configs/config.boten
+++ b/sys-boot/coreboot/files/configs/config.boten
@@ -44,7 +44,7 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-boten.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 # WiFi SAR
 CONFIG_WIFI_SAR_CBFS=y
 CONFIG_CHROMEOS_WIFI_SAR=y
diff --git a/sys-boot/coreboot/files/configs/config.boten_legacy b/sys-boot/coreboot/files/configs/config.boten_legacy
deleted file mode 100644
index cd96d8f..0000000
--- a/sys-boot/coreboot/files/configs/config.boten_legacy
+++ /dev/null
@@ -1,49 +0,0 @@
-CONFIG_VENDOR_GOOGLE=y
-CONFIG_BOARD_GOOGLE_BOTEN_LEGACY=y
-CONFIG_USE_BLOBS=y
-CONFIG_PAYLOAD_NONE=y
-CONFIG_SPI_FLASH=y
-CONFIG_SPI_FLASH_SMM=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_COLLECT_TIMESTAMPS=y
-CONFIG_ELOG=y
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-# Firmware Support Package
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/jsl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/jsl/fsp/fsps.bin"
-
-# Enable VBT
-CONFIG_INTEL_GMA_ADD_VBT=y
-CONFIG_RUN_FSP_GOP=y
-CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-dedede/vbt.bin"
-
-# Microcode
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-dedede/ucode.bin"
-
-# SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
-CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-dedede/descriptor-boten_legacy.bin"
-
-# Management Engine
-CONFIG_HAVE_ME_BIN=y
-CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-dedede/me-boten_legacy.bin"
-# CONFIG_LOCK_MANAGEMENT_ENGINE is not set
-
-# CSE RW Update Feature
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
-CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-boten_legacy.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.0.1269"
-
-# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.brask b/sys-boot/coreboot/files/configs/config.brask
new file mode 100644
index 0000000..2525c4b
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.brask
@@ -0,0 +1,14 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_BRASK=y
+
+# SPI Descriptor
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/mainboard/google/brya/descriptor-brask.bin"
+
+# Management Engine
+CONFIG_ME_BIN_PATH="3rdparty/blobs/mainboard/google/brya/csme-brask.bin"
+
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-brask.bin"
+
+# Video Blob
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt.bin"
diff --git a/sys-boot/coreboot/files/configs/config.brya0 b/sys-boot/coreboot/files/configs/config.brya0
index db387e92..988f052 100644
--- a/sys-boot/coreboot/files/configs/config.brya0
+++ b/sys-boot/coreboot/files/configs/config.brya0
@@ -1,54 +1,14 @@
 CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_BRYA0=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-# Waiting for FIT kit, b/173078987
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/mainboard/google/brya/descriptor-brya0.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/adl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/adl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
-# TODO: b/178846328
-#CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/adl/fsp/Include/"
-#CONFIG_FSP_USE_REPO is not set
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/mainboard/google/brya/csme-brya0.bin"
 
 # Management Engine FW update
-# Waiting for CSE Lite FIT kit, b/173078987
-### CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
-### CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-brya0.bin"
-### CONFIG_SOC_INTEL_CSE_RW_VERSION="a.b.c.d"
-
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/mainboard/google/brya/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-brya0.bin"
 
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt.bin"
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.bugzzy b/sys-boot/coreboot/files/configs/config.bugzzy
new file mode 100644
index 0000000..6f9e37d
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.bugzzy
@@ -0,0 +1,51 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_BUGZZY=y
+CONFIG_USE_BLOBS=y
+CONFIG_PAYLOAD_NONE=y
+CONFIG_SPI_FLASH=y
+CONFIG_SPI_FLASH_SMM=y
+
+# Chrome OS
+CONFIG_CHROMEOS=y
+
+# Event Logging
+CONFIG_CMOS_POST=y
+CONFIG_CMOS_POST_OFFSET=0x70
+CONFIG_COLLECT_TIMESTAMPS=y
+CONFIG_ELOG=y
+CONFIG_ELOG_GSMI=y
+CONFIG_ELOG_BOOT_COUNT=y
+CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+
+# Firmware Support Package
+CONFIG_ADD_FSP_BINARIES=y
+CONFIG_HAVE_INTEL_FSP_REPO=y
+# CONFIG_FSP_USE_REPO is not set
+CONFIG_FSP_M_FILE="3rdparty/blobs/intel/jsl/fsp/fspm.bin"
+CONFIG_FSP_S_FILE="3rdparty/blobs/intel/jsl/fsp/fsps.bin"
+# CONFIG_FSP_HEADER_PATH is not set
+
+# Enable VBT
+CONFIG_INTEL_GMA_ADD_VBT=y
+CONFIG_RUN_FSP_GOP=y
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-dedede/vbt_bugzzy.bin"
+
+# Microcode
+CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-dedede/ucode.bin"
+
+# SPI Descriptor
+CONFIG_HAVE_IFD_BIN=y
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-dedede/descriptor-bugzzy.bin"
+
+# Management Engine
+CONFIG_HAVE_ME_BIN=y
+CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-dedede/me-bugzzy.bin"
+# CONFIG_LOCK_MANAGEMENT_ENGINE is not set
+
+# CSE RW Update Feature
+CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-bugzzy.bin"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
+
+# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.cappy2 b/sys-boot/coreboot/files/configs/config.cappy2
new file mode 100644
index 0000000..0d4e8fc
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.cappy2
@@ -0,0 +1,50 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_CAPPY2=y
+CONFIG_USE_BLOBS=y
+CONFIG_PAYLOAD_NONE=y
+CONFIG_SPI_FLASH=y
+CONFIG_SPI_FLASH_SMM=y
+
+# Chrome OS
+CONFIG_CHROMEOS=y
+
+# Event Logging
+CONFIG_CMOS_POST=y
+CONFIG_CMOS_POST_OFFSET=0x70
+CONFIG_COLLECT_TIMESTAMPS=y
+CONFIG_ELOG=y
+CONFIG_ELOG_GSMI=y
+CONFIG_ELOG_BOOT_COUNT=y
+CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+
+# Firmware Support Package
+CONFIG_ADD_FSP_BINARIES=y
+CONFIG_HAVE_INTEL_FSP_REPO=y
+# CONFIG_FSP_USE_REPO is not set
+CONFIG_FSP_M_FILE="3rdparty/blobs/intel/jsl/fsp/fspm.bin"
+CONFIG_FSP_S_FILE="3rdparty/blobs/intel/jsl/fsp/fsps.bin"
+
+# Enable VBT
+CONFIG_INTEL_GMA_ADD_VBT=y
+CONFIG_RUN_FSP_GOP=y
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-dedede/vbt_cappy2.bin"
+
+# Microcode
+CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-dedede/ucode.bin"
+
+# SPI Descriptor
+CONFIG_HAVE_IFD_BIN=y
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-dedede/descriptor-cappy2.bin"
+
+# Management Engine
+CONFIG_HAVE_ME_BIN=y
+CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-dedede/me-cappy2.bin"
+# CONFIG_LOCK_MANAGEMENT_ENGINE is not set
+
+# CSE RW Update Feature
+CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-cappy2.bin"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
+
+# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.careena b/sys-boot/coreboot/files/configs/config.careena
index ae23808..2fce037 100644
--- a/sys-boot/coreboot/files/configs/config.careena
+++ b/sys-boot/coreboot/files/configs/config.careena
@@ -28,3 +28,7 @@
 CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
 CONFIG_USE_OEM_BIN=y
 CONFIG_OEM_BIN_FILE="/build/grunt/firmware/coreboot-private/3rdparty/blobs/mainboard/google/kahlee/variants/careena/oem.bin"
+CONFIG_AMDFW_CONFIG_FILE=""
+CONFIG_STONEYRIDGE_XHCI_FWM_FILE=""
+CONFIG_AGESA_PRE_MEMORY_BINARY_PI_FILE=""
+CONFIG_AGESA_POST_MEMORY_BINARY_PI_FILE=""
diff --git a/sys-boot/coreboot/files/configs/config.chronicler b/sys-boot/coreboot/files/configs/config.chronicler
index ce60729..47c5a1e 100644
--- a/sys-boot/coreboot/files/configs/config.chronicler
+++ b/sys-boot/coreboot/files/configs/config.chronicler
@@ -1,45 +1,13 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_CHRONICLER=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-chronicler.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-chronicler.bin"
 
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-chronicler.bin"
 
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
-CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt.bin"
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt-chronicler.bin"
diff --git a/sys-boot/coreboot/files/configs/config.collis b/sys-boot/coreboot/files/configs/config.collis
index 55d802e..983d7aa 100644
--- a/sys-boot/coreboot/files/configs/config.collis
+++ b/sys-boot/coreboot/files/configs/config.collis
@@ -1,50 +1,17 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_COLLIS=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-collis.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-collis.bin"
 
 # Management Engine FW update
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-collis.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="15.0.23.1777"
 
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+# WiFi SAR
+CONFIG_CHROMEOS_WIFI_SAR=y
+CONFIG_WIFI_SAR_CBFS_FILEPATH="3rdparty/blobs/baseboard-volteer/wifi_sar/wifi_sar-collis.hex"
 
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt.bin"
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.copano b/sys-boot/coreboot/files/configs/config.copano
index 762e8b4..244b4ad 100644
--- a/sys-boot/coreboot/files/configs/config.copano
+++ b/sys-boot/coreboot/files/configs/config.copano
@@ -1,54 +1,17 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_COPANO=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-copano.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-copano.bin"
 
 # Management Engine FW update
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-copano.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="15.0.23.1777"
 
 # WiFi SAR
 CONFIG_CHROMEOS_WIFI_SAR=y
 CONFIG_WIFI_SAR_CBFS_FILEPATH="3rdparty/blobs/baseboard-volteer/wifi_sar/wifi_sar-copano.hex"
 
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
-
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt.bin"
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.corori b/sys-boot/coreboot/files/configs/config.corori
new file mode 100644
index 0000000..b634708
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.corori
@@ -0,0 +1,55 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_CORORI=y
+CONFIG_USE_BLOBS=y
+CONFIG_PAYLOAD_NONE=y
+CONFIG_SPI_FLASH=y
+CONFIG_SPI_FLASH_SMM=y
+
+# Chrome OS
+CONFIG_CHROMEOS=y
+
+# Event Logging
+CONFIG_CMOS_POST=y
+CONFIG_CMOS_POST_OFFSET=0x70
+CONFIG_COLLECT_TIMESTAMPS=y
+CONFIG_ELOG=y
+CONFIG_ELOG_GSMI=y
+CONFIG_ELOG_BOOT_COUNT=y
+CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+
+# Firmware Support Package
+CONFIG_ADD_FSP_BINARIES=y
+CONFIG_HAVE_INTEL_FSP_REPO=y
+# CONFIG_FSP_USE_REPO is not set
+CONFIG_FSP_M_FILE="3rdparty/blobs/intel/jsl/fsp/fspm.bin"
+CONFIG_FSP_S_FILE="3rdparty/blobs/intel/jsl/fsp/fsps.bin"
+
+# Enable VBT
+CONFIG_INTEL_GMA_ADD_VBT=y
+CONFIG_RUN_FSP_GOP=y
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-dedede/vbt_corori.bin"
+
+# Microcode
+CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-dedede/ucode.bin"
+
+# SPI Descriptor
+CONFIG_HAVE_IFD_BIN=y
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-dedede/descriptor-corori.bin"
+
+# Management Engine
+CONFIG_HAVE_ME_BIN=y
+CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-dedede/me-corori.bin"
+# CONFIG_LOCK_MANAGEMENT_ENGINE is not set
+
+# CSE RW Update Feature
+CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-corori.bin"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
+
+# WiFi SAR
+CONFIG_CHROMEOS_WIFI_SAR=y
+# FILEPATH is set to blank to prevent any default SAR file from getting added.
+CONFIG_WIFI_SAR_CBFS_FILEPATH=""
+
+# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.corsola b/sys-boot/coreboot/files/configs/config.corsola
new file mode 100644
index 0000000..06ebf24
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.corsola
@@ -0,0 +1,4 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_CORSOLA=y
+CONFIG_CHROMEOS=y
+# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.cret b/sys-boot/coreboot/files/configs/config.cret
index c3d19fc..4ba01bd 100644
--- a/sys-boot/coreboot/files/configs/config.cret
+++ b/sys-boot/coreboot/files/configs/config.cret
@@ -46,6 +46,10 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-cret.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
+
+# WiFi SAR
+CONFIG_CHROMEOS_WIFI_SAR=y
+CONFIG_WIFI_SAR_CBFS_FILEPATH=""
 
 # CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.delbin b/sys-boot/coreboot/files/configs/config.delbin
index 01bf794..09dc9ad 100644
--- a/sys-boot/coreboot/files/configs/config.delbin
+++ b/sys-boot/coreboot/files/configs/config.delbin
@@ -1,54 +1,17 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_DELBIN=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-delbin.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-delbin.bin"
 
 # Management Engine FW update
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-delbin.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="15.0.23.1777"
 
 # WiFi SAR
 CONFIG_CHROMEOS_WIFI_SAR=y
 CONFIG_WIFI_SAR_CBFS_FILEPATH="3rdparty/blobs/baseboard-volteer/wifi_sar/wifi_sar-delbin.hex"
 
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
-
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt.bin"
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.delbin_npcx796fc b/sys-boot/coreboot/files/configs/config.delbin_npcx796fc
index 1641e5f..5dabaab 100644
--- a/sys-boot/coreboot/files/configs/config.delbin_npcx796fc
+++ b/sys-boot/coreboot/files/configs/config.delbin_npcx796fc
@@ -12,6 +12,7 @@
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-delbin.bin"
 
 # FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_HAVE_INTEL_FSP_REPO=y
 # CONFIG_FSP_USE_REPO is not set
diff --git a/sys-boot/coreboot/files/configs/config.dewatt b/sys-boot/coreboot/files/configs/config.dewatt
new file mode 100644
index 0000000..6294676
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.dewatt
@@ -0,0 +1,21 @@
+CONFIG_ADD_FSP_BINARIES=y
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_DEWATT=y
+CONFIG_FSP_M_FILE="3rdparty/amd_blobs/cezanne/CEZANNE_M.fd"
+CONFIG_FSP_S_FILE="3rdparty/amd_blobs/cezanne/CEZANNE_S.fd"
+CONFIG_CHROMEOS=y
+CONFIG_PAYLOAD_NONE=y
+CONFIG_USE_BLOBS=y
+CONFIG_USE_AMD_BLOBS=y
+CONFIG_VGA_BIOS=y
+CONFIG_VGA_BIOS_ID="1002,1638"
+CONFIG_VGA_BIOS_FILE="3rdparty/amd_blobs/cezanne/CezanneGenericVbios.bin"
+CONFIG_RUN_FSP_GOP=y
+# CONFIG_CONSOLE_SERIAL is not set
+CONFIG_CMOS_POST=y
+CONFIG_CMOS_POST_OFFSET=0x70
+CONFIG_COLLECT_TIMESTAMPS=y
+CONFIG_ELOG=y
+CONFIG_ELOG_GSMI=y
+CONFIG_ELOG_BOOT_COUNT=y
+CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
diff --git a/sys-boot/coreboot/files/configs/config.drawcia b/sys-boot/coreboot/files/configs/config.drawcia
index 47cbd64..a8c0b1c 100644
--- a/sys-boot/coreboot/files/configs/config.drawcia
+++ b/sys-boot/coreboot/files/configs/config.drawcia
@@ -45,7 +45,7 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-drawcia.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # WiFi SAR
 CONFIG_CHROMEOS_WIFI_SAR=y
diff --git a/sys-boot/coreboot/files/configs/config.drawcia_legacy b/sys-boot/coreboot/files/configs/config.drawcia_legacy
deleted file mode 100644
index 788a984..0000000
--- a/sys-boot/coreboot/files/configs/config.drawcia_legacy
+++ /dev/null
@@ -1,51 +0,0 @@
-CONFIG_VENDOR_GOOGLE=y
-CONFIG_BOARD_GOOGLE_DRAWCIA_LEGACY=y
-CONFIG_USE_BLOBS=y
-CONFIG_PAYLOAD_NONE=y
-CONFIG_SPI_FLASH=y
-CONFIG_SPI_FLASH_SMM=y
-CONFIG_BOARD_ROMSIZE_KB_32768=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_COLLECT_TIMESTAMPS=y
-CONFIG_ELOG=y
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-# Firmware Support Package
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/jsl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/jsl/fsp/fsps.bin"
-
-# Enable VBT
-CONFIG_INTEL_GMA_ADD_VBT=y
-CONFIG_RUN_FSP_GOP=y
-CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-dedede/vbt.bin"
-
-# Microcode
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-dedede/ucode.bin"
-
-# SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
-CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-dedede/descriptor-drawcia_legacy.bin"
-
-# Management Engine
-CONFIG_HAVE_ME_BIN=y
-CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-dedede/me-drawcia_legacy.bin"
-# CONFIG_LOCK_MANAGEMENT_ENGINE is not set
-
-# CSE RW Update Feature
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
-CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-drawcia_legacy.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.0.1269"
-
-# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.driblee b/sys-boot/coreboot/files/configs/config.driblee
new file mode 100644
index 0000000..8844ae1
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.driblee
@@ -0,0 +1,55 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_DRIBLEE=y
+CONFIG_USE_BLOBS=y
+CONFIG_PAYLOAD_NONE=y
+CONFIG_SPI_FLASH=y
+CONFIG_SPI_FLASH_SMM=y
+
+# Chrome OS
+CONFIG_CHROMEOS=y
+
+# Event Logging
+CONFIG_CMOS_POST=y
+CONFIG_CMOS_POST_OFFSET=0x70
+CONFIG_COLLECT_TIMESTAMPS=y
+CONFIG_ELOG=y
+CONFIG_ELOG_GSMI=y
+CONFIG_ELOG_BOOT_COUNT=y
+CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+
+# Firmware Support Package
+CONFIG_ADD_FSP_BINARIES=y
+CONFIG_HAVE_INTEL_FSP_REPO=y
+# CONFIG_FSP_USE_REPO is not set
+CONFIG_FSP_M_FILE="3rdparty/blobs/intel/jsl/fsp/fspm.bin"
+CONFIG_FSP_S_FILE="3rdparty/blobs/intel/jsl/fsp/fsps.bin"
+
+# Enable VBT
+CONFIG_INTEL_GMA_ADD_VBT=y
+CONFIG_RUN_FSP_GOP=y
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-dedede/vbt_cret.bin"
+
+# Microcode
+CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-dedede/ucode.bin"
+
+# SPI Descriptor
+CONFIG_HAVE_IFD_BIN=y
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-dedede/descriptor-driblee.bin"
+
+# Management Engine
+CONFIG_HAVE_ME_BIN=y
+CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-dedede/me-driblee.bin"
+# CONFIG_LOCK_MANAGEMENT_ENGINE is not set
+
+# CSE RW Update Feature
+CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-driblee.bin"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
+
+# WiFi SAR
+CONFIG_CHROMEOS_WIFI_SAR=y
+# FILEPATH is set to blank to prevent any default SAR file from getting added.
+CONFIG_WIFI_SAR_CBFS_FILEPATH=""
+
+# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.drobit b/sys-boot/coreboot/files/configs/config.drobit
index bbd42bb..fcf2557 100644
--- a/sys-boot/coreboot/files/configs/config.drobit
+++ b/sys-boot/coreboot/files/configs/config.drobit
@@ -1,54 +1,17 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_DROBIT=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-drobit.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-drobit.bin"
 
 # Management Engine FW update
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-drobit.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="15.0.23.1777"
 
 # WiFi SAR
 CONFIG_CHROMEOS_WIFI_SAR=y
 CONFIG_WIFI_SAR_CBFS_FILEPATH="3rdparty/blobs/baseboard-volteer/wifi_sar/wifi_sar-drobit.hex"
 
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
-
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt.bin"
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.eldrid b/sys-boot/coreboot/files/configs/config.eldrid
index 30267a2..ef7dce9 100644
--- a/sys-boot/coreboot/files/configs/config.eldrid
+++ b/sys-boot/coreboot/files/configs/config.eldrid
@@ -1,53 +1,17 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_ELDRID=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-eldrid.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-eldrid.bin"
 
 # Management Engine FW update
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-eldrid.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="15.0.23.1777"
-
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
 
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt-eldrid.bin"
 
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
-
+# Wifi
 CONFIG_CHROMEOS_WIFI_SAR=y
 CONFIG_WIFI_SAR_CBFS_FILEPATH="3rdparty/blobs/baseboard-volteer/wifi_sar/wifi_sar-eldrid.hex"
diff --git a/sys-boot/coreboot/files/configs/config.eldrid_npcx796 b/sys-boot/coreboot/files/configs/config.eldrid_npcx796
index 7d06fd8..1994ae3 100644
--- a/sys-boot/coreboot/files/configs/config.eldrid_npcx796
+++ b/sys-boot/coreboot/files/configs/config.eldrid_npcx796
@@ -12,6 +12,7 @@
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-eldrid.bin"
 
 # FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_HAVE_INTEL_FSP_REPO=y
 # CONFIG_FSP_USE_REPO is not set
diff --git a/sys-boot/coreboot/files/configs/config.elemi b/sys-boot/coreboot/files/configs/config.elemi
index f865c2e..3990c3c 100644
--- a/sys-boot/coreboot/files/configs/config.elemi
+++ b/sys-boot/coreboot/files/configs/config.elemi
@@ -1,50 +1,13 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_ELEMI=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-elemi.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-elemi.bin"
 
 # Management Engine FW update
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-elemi.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="15.0.23.1777"
-
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
 
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt-elemi.bin"
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.felwinter b/sys-boot/coreboot/files/configs/config.felwinter
new file mode 100644
index 0000000..c8d6d12
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.felwinter
@@ -0,0 +1,14 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_FELWINTER=y
+
+# SPI Descriptor
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/mainboard/google/brya/descriptor-felwinter.bin"
+
+# Management Engine
+CONFIG_ME_BIN_PATH="3rdparty/blobs/mainboard/google/brya/csme-felwinter.bin"
+
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-felwinter.bin"
+
+# Video Blob
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt.bin"
diff --git a/sys-boot/coreboot/files/configs/config.galtic b/sys-boot/coreboot/files/configs/config.galtic
index 43e0d7e..a52e0c0 100644
--- a/sys-boot/coreboot/files/configs/config.galtic
+++ b/sys-boot/coreboot/files/configs/config.galtic
@@ -45,7 +45,7 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-galtic.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # WiFi SAR
 CONFIG_CHROMEOS_WIFI_SAR=y
diff --git a/sys-boot/coreboot/files/configs/config.gimble b/sys-boot/coreboot/files/configs/config.gimble
index 0b1cb42..15f6ce2 100644
--- a/sys-boot/coreboot/files/configs/config.gimble
+++ b/sys-boot/coreboot/files/configs/config.gimble
@@ -1,51 +1,17 @@
 CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_GIMBLE=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/mainboard/google/brya/descriptor-gimble.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/adl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/adl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
-#CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/adl/fsp/Include/"
-#CONFIG_FSP_USE_REPO is not set
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/mainboard/google/brya/csme-gimble.bin"
 
 # Management Engine FW update
-### CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
-### CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-gimble.bin"
-### CONFIG_SOC_INTEL_CSE_RW_VERSION="a.b.c.d"
-
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/mainboard/google/brya/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-gimble.bin"
 
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
-CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt.bin"
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt_gimble.bin"
 
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
+#WIFI SAR
+CONFIG_CHROMEOS_WIFI_SAR=y
diff --git a/sys-boot/coreboot/files/configs/config.gooey b/sys-boot/coreboot/files/configs/config.gooey
new file mode 100644
index 0000000..2d1bfbd
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.gooey
@@ -0,0 +1,53 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_GOOEY=y
+CONFIG_USE_BLOBS=y
+CONFIG_PAYLOAD_NONE=y
+CONFIG_SPI_FLASH=y
+CONFIG_SPI_FLASH_SMM=y
+
+# Chrome OS
+CONFIG_CHROMEOS=y
+
+# Event Logging
+CONFIG_CMOS_POST=y
+CONFIG_CMOS_POST_OFFSET=0x70
+CONFIG_COLLECT_TIMESTAMPS=y
+CONFIG_ELOG=y
+CONFIG_ELOG_GSMI=y
+CONFIG_ELOG_BOOT_COUNT=y
+CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+
+# Firmware Support Package
+CONFIG_ADD_FSP_BINARIES=y
+CONFIG_HAVE_INTEL_FSP_REPO=y
+CONFIG_FSP_M_FILE="3rdparty/blobs/intel/jsl/fsp/fspm.bin"
+CONFIG_FSP_S_FILE="3rdparty/blobs/intel/jsl/fsp/fsps.bin"
+
+# Enable VBT
+CONFIG_INTEL_GMA_ADD_VBT=y
+CONFIG_RUN_FSP_GOP=y
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-dedede/vbt_gooey.bin"
+
+# Microcode
+CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-dedede/ucode.bin"
+
+# SPI Descriptor
+CONFIG_HAVE_IFD_BIN=y
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-dedede/descriptor-gooey.bin"
+
+# Management Engine
+CONFIG_HAVE_ME_BIN=y
+CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-dedede/me-gooey.bin"
+# CONFIG_LOCK_MANAGEMENT_ENGINE is not set
+
+# CSE RW Update Feature
+CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-gooey.bin"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
+# WiFi SAR
+CONFIG_CHROMEOS_WIFI_SAR=y
+# FILEPATH is set to blank to prevent any default SAR file from getting added.
+CONFIG_WIFI_SAR_CBFS_FILEPATH="3rdparty/blobs/baseboard-dedede/wifi_sar/wifi_sar-gooey.hex"
+
+# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.grunt b/sys-boot/coreboot/files/configs/config.grunt
index 40016df..edf6bf4 100644
--- a/sys-boot/coreboot/files/configs/config.grunt
+++ b/sys-boot/coreboot/files/configs/config.grunt
@@ -26,3 +26,7 @@
 CONFIG_SPI_FLASH_SMM=y
 CONFIG_ELOG_BOOT_COUNT=y
 CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+CONFIG_AMDFW_CONFIG_FILE=""
+CONFIG_STONEYRIDGE_XHCI_FWM_FILE=""
+CONFIG_AGESA_PRE_MEMORY_BINARY_PI_FILE=""
+CONFIG_AGESA_POST_MEMORY_BINARY_PI_FILE=""
diff --git a/sys-boot/coreboot/files/configs/config.guybrush b/sys-boot/coreboot/files/configs/config.guybrush
index 9096c61..0ded919 100644
--- a/sys-boot/coreboot/files/configs/config.guybrush
+++ b/sys-boot/coreboot/files/configs/config.guybrush
@@ -12,8 +12,6 @@
 CONFIG_VGA_BIOS_FILE="3rdparty/amd_blobs/cezanne/CezanneGenericVbios.bin"
 CONFIG_RUN_FSP_GOP=y
 # CONFIG_CONSOLE_SERIAL is not set
-CONFIG_GBB_FLAG_DISABLE_EC_SOFTWARE_SYNC=y
-CONFIG_GBB_FLAG_DISABLE_PD_SOFTWARE_SYNC=y
 CONFIG_CMOS_POST=y
 CONFIG_CMOS_POST_OFFSET=0x70
 CONFIG_COLLECT_TIMESTAMPS=y
diff --git a/sys-boot/coreboot/files/configs/config.haboki b/sys-boot/coreboot/files/configs/config.haboki
new file mode 100644
index 0000000..d3d4c10
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.haboki
@@ -0,0 +1,55 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_HABOKI=y
+CONFIG_USE_BLOBS=y
+CONFIG_PAYLOAD_NONE=y
+CONFIG_SPI_FLASH=y
+CONFIG_SPI_FLASH_SMM=y
+
+# Chrome OS
+CONFIG_CHROMEOS=y
+
+# Event Logging
+CONFIG_CMOS_POST=y
+CONFIG_CMOS_POST_OFFSET=0x70
+CONFIG_COLLECT_TIMESTAMPS=y
+CONFIG_ELOG=y
+CONFIG_ELOG_GSMI=y
+CONFIG_ELOG_BOOT_COUNT=y
+CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+
+# Firmware Support Package
+CONFIG_ADD_FSP_BINARIES=y
+CONFIG_HAVE_INTEL_FSP_REPO=y
+# CONFIG_FSP_USE_REPO is not set
+CONFIG_FSP_M_FILE="3rdparty/blobs/intel/jsl/fsp/fspm.bin"
+CONFIG_FSP_S_FILE="3rdparty/blobs/intel/jsl/fsp/fsps.bin"
+
+# Enable VBT
+CONFIG_INTEL_GMA_ADD_VBT=y
+CONFIG_RUN_FSP_GOP=y
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-dedede/vbt_haboki.bin"
+
+# Microcode
+CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-dedede/ucode.bin"
+
+# SPI Descriptor
+CONFIG_HAVE_IFD_BIN=y
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-dedede/descriptor-haboki.bin"
+
+# Management Engine
+CONFIG_HAVE_ME_BIN=y
+CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-dedede/me-haboki.bin"
+# CONFIG_LOCK_MANAGEMENT_ENGINE is not set
+
+# CSE RW Update Feature
+CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-haboki.bin"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
+
+# WiFi SAR
+CONFIG_CHROMEOS_WIFI_SAR=y
+# FILEPATH is set to blank to prevent any default SAR file from getting added.
+CONFIG_WIFI_SAR_CBFS_FILEPATH=""
+
+# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.halvor b/sys-boot/coreboot/files/configs/config.halvor
index 7fb2c00..e367bb9 100644
--- a/sys-boot/coreboot/files/configs/config.halvor
+++ b/sys-boot/coreboot/files/configs/config.halvor
@@ -12,6 +12,7 @@
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-halvor.bin"
 
 # FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_HAVE_INTEL_FSP_REPO=y
 # CONFIG_FSP_USE_REPO is not set
diff --git a/sys-boot/coreboot/files/configs/config.hoglin b/sys-boot/coreboot/files/configs/config.hoglin
new file mode 100644
index 0000000..177ccb2
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.hoglin
@@ -0,0 +1,6 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_HOGLIN=y
+CONFIG_CHROMEOS=y
+# CONFIG_CONSOLE_SERIAL is not set
+CONFIG_USE_BLOBS=y
+CONFIG_USE_QC_BLOBS=y
diff --git a/sys-boot/coreboot/files/configs/config.jslrvp b/sys-boot/coreboot/files/configs/config.jslrvp
index dde4ed0..0315dbc 100644
--- a/sys-boot/coreboot/files/configs/config.jslrvp
+++ b/sys-boot/coreboot/files/configs/config.jslrvp
@@ -8,7 +8,7 @@
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-dedede/me-jslrvp.bin"
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-jslrvp.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 CONFIG_HAVE_IFD_BIN=y
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_HAVE_INTEL_FSP_REPO=y
diff --git a/sys-boot/coreboot/files/configs/config.jslrvp_ext_ec b/sys-boot/coreboot/files/configs/config.jslrvp_ext_ec
index fadd622..5785f27 100644
--- a/sys-boot/coreboot/files/configs/config.jslrvp_ext_ec
+++ b/sys-boot/coreboot/files/configs/config.jslrvp_ext_ec
@@ -7,7 +7,7 @@
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-dedede/me-jslrvp.bin"
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-jslrvp.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.0.1269"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 CONFIG_HAVE_IFD_BIN=y
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_HAVE_INTEL_FSP_REPO=y
diff --git a/sys-boot/coreboot/files/configs/config.kano b/sys-boot/coreboot/files/configs/config.kano
new file mode 100644
index 0000000..ccf81e3
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.kano
@@ -0,0 +1,14 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_KANO=y
+
+# SPI Descriptor
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/mainboard/google/brya/descriptor-kano.bin"
+
+# Management Engine
+CONFIG_ME_BIN_PATH="3rdparty/blobs/mainboard/google/brya/csme-kano.bin"
+
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-kano.bin"
+
+# Video Blob
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt.bin"
diff --git a/sys-boot/coreboot/files/configs/config.kingoftown b/sys-boot/coreboot/files/configs/config.kingoftown
new file mode 100644
index 0000000..46a0be8
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.kingoftown
@@ -0,0 +1,6 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_KINGOFTOWN=y
+CONFIG_CHROMEOS=y
+# CONFIG_CONSOLE_SERIAL is not set
+CONFIG_USE_BLOBS=y
+CONFIG_USE_QC_BLOBS=y
diff --git a/sys-boot/coreboot/files/configs/config.kracko b/sys-boot/coreboot/files/configs/config.kracko
index 64cc796..0f64f0d 100644
--- a/sys-boot/coreboot/files/configs/config.kracko
+++ b/sys-boot/coreboot/files/configs/config.kracko
@@ -45,6 +45,6 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-kracko.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.lalala b/sys-boot/coreboot/files/configs/config.lalala
index eddc251..bdfce69 100644
--- a/sys-boot/coreboot/files/configs/config.lalala
+++ b/sys-boot/coreboot/files/configs/config.lalala
@@ -45,7 +45,7 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-lalala.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.0.1269"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # WiFi SAR
 CONFIG_CHROMEOS_WIFI_SAR=y
diff --git a/sys-boot/coreboot/files/configs/config.lantis b/sys-boot/coreboot/files/configs/config.lantis
index d0a1853..285ad39 100644
--- a/sys-boot/coreboot/files/configs/config.lantis
+++ b/sys-boot/coreboot/files/configs/config.lantis
@@ -45,6 +45,6 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-lantis.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.liara b/sys-boot/coreboot/files/configs/config.liara
index a5bb122..f9cb5e1 100644
--- a/sys-boot/coreboot/files/configs/config.liara
+++ b/sys-boot/coreboot/files/configs/config.liara
@@ -27,3 +27,7 @@
 CONFIG_SPI_FLASH_WINBOND=y
 CONFIG_ELOG_BOOT_COUNT=y
 CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+CONFIG_AMDFW_CONFIG_FILE=""
+CONFIG_STONEYRIDGE_XHCI_FWM_FILE=""
+CONFIG_AGESA_PRE_MEMORY_BINARY_PI_FILE=""
+CONFIG_AGESA_POST_MEMORY_BINARY_PI_FILE=""
diff --git a/sys-boot/coreboot/files/configs/config.lindar b/sys-boot/coreboot/files/configs/config.lindar
index af0415c..15135e2 100644
--- a/sys-boot/coreboot/files/configs/config.lindar
+++ b/sys-boot/coreboot/files/configs/config.lindar
@@ -1,55 +1,18 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_LINDAR=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-lindar.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-lindar.bin"
 
 # Management Engine FW update
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-lindar.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="15.0.23.1777"
 
 # WiFi SAR
 CONFIG_CHROMEOS_WIFI_SAR=y
 # FILEPATH is set to blank to prevent any default SAR file from getting added.
 CONFIG_WIFI_SAR_CBFS_FILEPATH=""
 
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
-
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE=""
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.madoo b/sys-boot/coreboot/files/configs/config.madoo
index c074f89..b0663bf 100644
--- a/sys-boot/coreboot/files/configs/config.madoo
+++ b/sys-boot/coreboot/files/configs/config.madoo
@@ -46,7 +46,7 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-madoo.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # WiFi SAR
 CONFIG_CHROMEOS_WIFI_SAR=y
diff --git a/sys-boot/coreboot/files/configs/config.magolor b/sys-boot/coreboot/files/configs/config.magolor
index ebec803..07d8143 100644
--- a/sys-boot/coreboot/files/configs/config.magolor
+++ b/sys-boot/coreboot/files/configs/config.magolor
@@ -45,7 +45,7 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-magolor.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # WiFi SAR
 CONFIG_CHROMEOS_WIFI_SAR=y
diff --git a/sys-boot/coreboot/files/configs/config.malefor b/sys-boot/coreboot/files/configs/config.malefor
index 21f3cf2..bf254b4 100644
--- a/sys-boot/coreboot/files/configs/config.malefor
+++ b/sys-boot/coreboot/files/configs/config.malefor
@@ -12,6 +12,7 @@
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-malefor.bin"
 
 # FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_HAVE_INTEL_FSP_REPO=y
 # CONFIG_FSP_USE_REPO is not set
diff --git a/sys-boot/coreboot/files/configs/config.mancomb b/sys-boot/coreboot/files/configs/config.mancomb
deleted file mode 100644
index c5b56c9..0000000
--- a/sys-boot/coreboot/files/configs/config.mancomb
+++ /dev/null
@@ -1,23 +0,0 @@
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_VENDOR_GOOGLE=y
-CONFIG_BOARD_GOOGLE_MANCOMB=y
-CONFIG_FSP_M_FILE="3rdparty/amd_blobs/cezanne/CEZANNE_M.fd"
-CONFIG_FSP_S_FILE="3rdparty/amd_blobs/cezanne/CEZANNE_S.fd"
-CONFIG_CHROMEOS=y
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-CONFIG_USE_AMD_BLOBS=y
-CONFIG_VGA_BIOS=y
-CONFIG_VGA_BIOS_ID="1002,1638"
-CONFIG_VGA_BIOS_FILE="3rdparty/amd_blobs/cezanne/CezanneGenericVbios.bin"
-CONFIG_RUN_FSP_GOP=y
-# CONFIG_CONSOLE_SERIAL is not set
-CONFIG_GBB_FLAG_DISABLE_EC_SOFTWARE_SYNC=y
-CONFIG_GBB_FLAG_DISABLE_PD_SOFTWARE_SYNC=y
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_COLLECT_TIMESTAMPS=y
-CONFIG_ELOG=y
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
diff --git a/sys-boot/coreboot/files/configs/config.metaknight b/sys-boot/coreboot/files/configs/config.metaknight
index 61e8322..6c10231 100644
--- a/sys-boot/coreboot/files/configs/config.metaknight
+++ b/sys-boot/coreboot/files/configs/config.metaknight
@@ -45,6 +45,6 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-metaknight.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.moonbuggy b/sys-boot/coreboot/files/configs/config.moonbuggy
new file mode 100644
index 0000000..cb7d45f
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.moonbuggy
@@ -0,0 +1,46 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_MOONBUGGY=y
+CONFIG_PAYLOAD_NONE=y
+CONFIG_USE_BLOBS=y
+
+# Chrome OS
+CONFIG_CHROMEOS=y
+
+# Event Logging
+CONFIG_CMOS_POST=y
+CONFIG_CMOS_POST_OFFSET=0x70
+CONFIG_ELOG_GSMI=y
+CONFIG_ELOG_BOOT_COUNT=y
+CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+
+# SPI Descriptor
+CONFIG_HAVE_IFD_BIN=y
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard/puff/descriptor-moonbuggy.bin"
+
+# FSP blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/cml/fsp/Include/"
+CONFIG_HAVE_INTEL_FSP_REPO=y
+# CONFIG_FSP_USE_REPO is not set
+CONFIG_FSP_M_FILE="3rdparty/blobs/intel/cml/fsp/Fsp_M.fd"
+CONFIG_FSP_S_FILE="3rdparty/blobs/intel/cml/fsp/Fsp_S.fd"
+CONFIG_ADD_FSP_BINARIES=y
+
+# vbt
+CONFIG_INTEL_GMA_ADD_VBT=y
+CONFIG_RUN_FSP_GOP=y
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard/puff/vbt-moonbuggy.bin"
+CONFIG_SPI_FLASH_SMM=y
+
+# Microcode
+CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard/puff/ucode.bin"
+
+# Management Engine
+CONFIG_HAVE_ME_BIN=y
+CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard/puff/me-moonbuggy.bin"
+
+# Disable
+# CONFIG_UART_DEBUG is not set
+# CONFIG_CONSOLE_SERIAL is not set
+# CONFIG_CONSOLE_SERIAL_115200 is not set
+# CONFIG_DRIVERS_UART_8250IO is not set
diff --git a/sys-boot/coreboot/files/configs/config.mrbland b/sys-boot/coreboot/files/configs/config.mrbland
new file mode 100644
index 0000000..c416c7e
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.mrbland
@@ -0,0 +1,6 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_MRBLAND=y
+CONFIG_CHROMEOS=y
+# CONFIG_CONSOLE_SERIAL is not set
+CONFIG_USE_BLOBS=y
+CONFIG_USE_QC_BLOBS=y
diff --git a/sys-boot/coreboot/files/configs/config.munna b/sys-boot/coreboot/files/configs/config.munna
new file mode 100644
index 0000000..8d747ff
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.munna
@@ -0,0 +1,5 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_MUNNA=y
+CONFIG_CHROMEOS=y
+# CONFIG_BOOTBLOCK_CONSOLE is not set
+# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.nipperkin b/sys-boot/coreboot/files/configs/config.nipperkin
new file mode 100644
index 0000000..9952a81
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.nipperkin
@@ -0,0 +1,21 @@
+CONFIG_ADD_FSP_BINARIES=y
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_NIPPERKIN=y
+CONFIG_FSP_M_FILE="3rdparty/amd_blobs/cezanne/CEZANNE_M.fd"
+CONFIG_FSP_S_FILE="3rdparty/amd_blobs/cezanne/CEZANNE_S.fd"
+CONFIG_CHROMEOS=y
+CONFIG_PAYLOAD_NONE=y
+CONFIG_USE_BLOBS=y
+CONFIG_USE_AMD_BLOBS=y
+CONFIG_VGA_BIOS=y
+CONFIG_VGA_BIOS_ID="1002,1638"
+CONFIG_VGA_BIOS_FILE="3rdparty/amd_blobs/cezanne/CezanneGenericVbios.bin"
+CONFIG_RUN_FSP_GOP=y
+# CONFIG_CONSOLE_SERIAL is not set
+CONFIG_CMOS_POST=y
+CONFIG_CMOS_POST_OFFSET=0x70
+CONFIG_COLLECT_TIMESTAMPS=y
+CONFIG_ELOG=y
+CONFIG_ELOG_GSMI=y
+CONFIG_ELOG_BOOT_COUNT=y
+CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
diff --git a/sys-boot/coreboot/files/configs/config.nuwani b/sys-boot/coreboot/files/configs/config.nuwani
index 812df9a..1441865 100644
--- a/sys-boot/coreboot/files/configs/config.nuwani
+++ b/sys-boot/coreboot/files/configs/config.nuwani
@@ -26,3 +26,7 @@
 CONFIG_SPI_FLASH_SMM=y
 CONFIG_ELOG_BOOT_COUNT=y
 CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+CONFIG_AMDFW_CONFIG_FILE=""
+CONFIG_STONEYRIDGE_XHCI_FWM_FILE=""
+CONFIG_AGESA_PRE_MEMORY_BINARY_PI_FILE=""
+CONFIG_AGESA_POST_MEMORY_BINARY_PI_FILE=""
diff --git a/sys-boot/coreboot/files/configs/config.pico b/sys-boot/coreboot/files/configs/config.pico
new file mode 100644
index 0000000..138e7b2
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.pico
@@ -0,0 +1,5 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_PICO=y
+CONFIG_CHROMEOS=y
+# CONFIG_BOOTBLOCK_CONSOLE is not set
+# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.piglin b/sys-boot/coreboot/files/configs/config.piglin
new file mode 100644
index 0000000..cd6f6a8
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.piglin
@@ -0,0 +1,6 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_PIGLIN=y
+CONFIG_CHROMEOS=y
+# CONFIG_CONSOLE_SERIAL is not set
+CONFIG_USE_BLOBS=y
+CONFIG_USE_QC_BLOBS=y
diff --git a/sys-boot/coreboot/files/configs/config.pirika b/sys-boot/coreboot/files/configs/config.pirika
index edffc7c..5bd395f 100644
--- a/sys-boot/coreboot/files/configs/config.pirika
+++ b/sys-boot/coreboot/files/configs/config.pirika
@@ -45,6 +45,6 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-pirika.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.primus b/sys-boot/coreboot/files/configs/config.primus
index 394a80f..967b89c 100644
--- a/sys-boot/coreboot/files/configs/config.primus
+++ b/sys-boot/coreboot/files/configs/config.primus
@@ -1,51 +1,14 @@
 CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_PRIMUS=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/mainboard/google/brya/descriptor-primus.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/adl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/adl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
-#CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/adl/fsp/Include/"
-#CONFIG_FSP_USE_REPO is not set
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/mainboard/google/brya/csme-primus.bin"
 
 # Management Engine FW update
-### CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
-### CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-primus.bin"
-### CONFIG_SOC_INTEL_CSE_RW_VERSION="a.b.c.d"
-
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/mainboard/google/brya/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-primus.bin"
 
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
-CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt.bin"
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt_primus.bin"
diff --git a/sys-boot/coreboot/files/configs/config.quackingstick b/sys-boot/coreboot/files/configs/config.quackingstick
new file mode 100644
index 0000000..fb0cd95
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.quackingstick
@@ -0,0 +1,6 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_QUACKINGSTICK=y
+CONFIG_CHROMEOS=y
+# CONFIG_CONSOLE_SERIAL is not set
+CONFIG_USE_BLOBS=y
+CONFIG_USE_QC_BLOBS=y
diff --git a/sys-boot/coreboot/files/configs/config.redrix b/sys-boot/coreboot/files/configs/config.redrix
new file mode 100644
index 0000000..ddcb66d
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.redrix
@@ -0,0 +1,17 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_REDRIX=y
+
+# SPI Descriptor
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/mainboard/google/brya/descriptor-redrix.bin"
+
+# Management Engine
+CONFIG_ME_BIN_PATH="3rdparty/blobs/mainboard/google/brya/csme-redrix.bin"
+
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-redrix.bin"
+
+# Video Blob
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt.bin"
+CONFIG_CHROMEOS_WIFI_SAR=y
+# FILEPATH is set to blank to prevent any default SAR file from getting added.
+CONFIG_WIFI_SAR_CBFS_FILEPATH=""
diff --git a/sys-boot/coreboot/files/configs/config.sasuke b/sys-boot/coreboot/files/configs/config.sasuke
index 9fb5856..f75ebd3 100644
--- a/sys-boot/coreboot/files/configs/config.sasuke
+++ b/sys-boot/coreboot/files/configs/config.sasuke
@@ -46,7 +46,7 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-sasuke.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # WiFi SAR
 CONFIG_CHROMEOS_WIFI_SAR=y
diff --git a/sys-boot/coreboot/files/configs/config.sasukette b/sys-boot/coreboot/files/configs/config.sasukette
index a89b22c..1e2aee4f 100644
--- a/sys-boot/coreboot/files/configs/config.sasukette
+++ b/sys-boot/coreboot/files/configs/config.sasukette
@@ -27,7 +27,7 @@
 # Enable VBT
 CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_RUN_FSP_GOP=y
-CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-dedede/vbt.bin"
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-dedede/vbt_sasukette.bin"
 
 # Microcode
 CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
@@ -45,7 +45,7 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-sasukette.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # WiFi SAR
 CONFIG_WIFI_SAR_CBFS=y
diff --git a/sys-boot/coreboot/files/configs/config.scout b/sys-boot/coreboot/files/configs/config.scout
index 0610f8a..182d836 100644
--- a/sys-boot/coreboot/files/configs/config.scout
+++ b/sys-boot/coreboot/files/configs/config.scout
@@ -28,7 +28,7 @@
 # vbt
 CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_RUN_FSP_GOP=y
-CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard/puff/vbt.bin"
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard/puff/vbt-scout.bin"
 CONFIG_SPI_FLASH_SMM=y
 
 # Microcode
diff --git a/sys-boot/coreboot/files/configs/config.senor b/sys-boot/coreboot/files/configs/config.senor
new file mode 100644
index 0000000..5c38afda
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.senor
@@ -0,0 +1,6 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_SENOR=y
+CONFIG_CHROMEOS=y
+# CONFIG_CONSOLE_SERIAL is not set
+CONFIG_USE_BLOBS=y
+CONFIG_USE_QC_BLOBS=y
diff --git a/sys-boot/coreboot/files/configs/config.storo b/sys-boot/coreboot/files/configs/config.storo
index 4837647..63fcc92 100644
--- a/sys-boot/coreboot/files/configs/config.storo
+++ b/sys-boot/coreboot/files/configs/config.storo
@@ -45,7 +45,7 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-storo.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.11.1304"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # WiFi SAR
 CONFIG_WIFI_SAR_CBFS=y
diff --git a/sys-boot/coreboot/files/configs/config.taeko b/sys-boot/coreboot/files/configs/config.taeko
new file mode 100644
index 0000000..5a940de
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.taeko
@@ -0,0 +1,14 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_TAEKO=y
+
+# SPI Descriptor
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/mainboard/google/brya/descriptor-taeko.bin"
+
+# Management Engine
+CONFIG_ME_BIN_PATH="3rdparty/blobs/mainboard/google/brya/csme-taeko.bin"
+
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/mainboard/google/brya/me_rw-taeko.bin"
+
+# Video Blob
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/mainboard/google/brya/vbt-taeko.bin"
diff --git a/sys-boot/coreboot/files/configs/config.terrador b/sys-boot/coreboot/files/configs/config.terrador
index 705b58b..6d96fe6 100644
--- a/sys-boot/coreboot/files/configs/config.terrador
+++ b/sys-boot/coreboot/files/configs/config.terrador
@@ -1,50 +1,13 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_TERRADOR=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-terrador.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-terrador.bin"
 
 # Management Engine FW update
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-terrador.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="15.0.23.1777"
-
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
 
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt-terrador.bin"
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.tglrvp_up3 b/sys-boot/coreboot/files/configs/config.tglrvp_up3
index 3387500..47a18d5 100644
--- a/sys-boot/coreboot/files/configs/config.tglrvp_up3
+++ b/sys-boot/coreboot/files/configs/config.tglrvp_up3
@@ -10,6 +10,8 @@
 CONFIG_SPI_FLASH_SMM=y
 CONFIG_DO_NOT_TOUCH_DESCRIPTOR_REGION=y
 
+# FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
 CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
diff --git a/sys-boot/coreboot/files/configs/config.tglrvp_up3_b0 b/sys-boot/coreboot/files/configs/config.tglrvp_up3_b0
index 3beba82..03079e9 100644
--- a/sys-boot/coreboot/files/configs/config.tglrvp_up3_b0
+++ b/sys-boot/coreboot/files/configs/config.tglrvp_up3_b0
@@ -10,6 +10,8 @@
 CONFIG_SPI_FLASH_SMM=y
 CONFIG_DO_NOT_TOUCH_DESCRIPTOR_REGION=y
 
+# FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
 CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
diff --git a/sys-boot/coreboot/files/configs/config.tglrvp_up4 b/sys-boot/coreboot/files/configs/config.tglrvp_up4
index 0cc0664..087ea63 100644
--- a/sys-boot/coreboot/files/configs/config.tglrvp_up4
+++ b/sys-boot/coreboot/files/configs/config.tglrvp_up4
@@ -10,6 +10,8 @@
 CONFIG_SPI_FLASH_SMM=y
 CONFIG_DO_NOT_TOUCH_DESCRIPTOR_REGION=y
 
+# FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
 CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
diff --git a/sys-boot/coreboot/files/configs/config.tglrvp_up4_b0 b/sys-boot/coreboot/files/configs/config.tglrvp_up4_b0
index 25b2344..72cdc7e 100644
--- a/sys-boot/coreboot/files/configs/config.tglrvp_up4_b0
+++ b/sys-boot/coreboot/files/configs/config.tglrvp_up4_b0
@@ -10,6 +10,8 @@
 CONFIG_SPI_FLASH_SMM=y
 CONFIG_DO_NOT_TOUCH_DESCRIPTOR_REGION=y
 
+# FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
 CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
diff --git a/sys-boot/coreboot/files/configs/config.todor b/sys-boot/coreboot/files/configs/config.todor
index 61434b9..0b023ad 100644
--- a/sys-boot/coreboot/files/configs/config.todor
+++ b/sys-boot/coreboot/files/configs/config.todor
@@ -12,6 +12,7 @@
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-todor.bin"
 
 # FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_HAVE_INTEL_FSP_REPO=y
 # CONFIG_FSP_USE_REPO is not set
diff --git a/sys-boot/coreboot/files/configs/config.tomato b/sys-boot/coreboot/files/configs/config.tomato
new file mode 100644
index 0000000..3cc8c60
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.tomato
@@ -0,0 +1,4 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_TOMATO=y
+CONFIG_CHROMEOS=y
+# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.treeya b/sys-boot/coreboot/files/configs/config.treeya
index 2651dd9..7cb0365 100644
--- a/sys-boot/coreboot/files/configs/config.treeya
+++ b/sys-boot/coreboot/files/configs/config.treeya
@@ -26,3 +26,7 @@
 CONFIG_SPI_FLASH_SMM=y
 CONFIG_ELOG_BOOT_COUNT=y
 CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+CONFIG_AMDFW_CONFIG_FILE=""
+CONFIG_STONEYRIDGE_XHCI_FWM_FILE=""
+CONFIG_AGESA_PRE_MEMORY_BINARY_PI_FILE=""
+CONFIG_AGESA_POST_MEMORY_BINARY_PI_FILE=""
diff --git a/sys-boot/coreboot/files/configs/config.trondo b/sys-boot/coreboot/files/configs/config.trondo
index 8de2fc3..0facc04 100644
--- a/sys-boot/coreboot/files/configs/config.trondo
+++ b/sys-boot/coreboot/files/configs/config.trondo
@@ -12,6 +12,7 @@
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-trondo.bin"
 
 # FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_HAVE_INTEL_FSP_REPO=y
 # CONFIG_FSP_USE_REPO is not set
diff --git a/sys-boot/coreboot/files/configs/config.voema b/sys-boot/coreboot/files/configs/config.voema
index c7e5937..aba1447 100644
--- a/sys-boot/coreboot/files/configs/config.voema
+++ b/sys-boot/coreboot/files/configs/config.voema
@@ -1,54 +1,17 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_VOEMA=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-voema.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-voema.bin"
 
 # Management Engine FW update
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-voema.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="15.0.23.1777"
-
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
 
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt-voema.bin"
 
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
-
 # WiFi SAR
 CONFIG_CHROMEOS_WIFI_SAR=y
 CONFIG_WIFI_SAR_CBFS_FILEPATH="3rdparty/blobs/baseboard-volteer/wifi_sar/wifi_sar-voema.hex"
diff --git a/sys-boot/coreboot/files/configs/config.voema_npcx796fc b/sys-boot/coreboot/files/configs/config.voema_npcx796fc
index 46fc2c6..bb9ab78 100644
--- a/sys-boot/coreboot/files/configs/config.voema_npcx796fc
+++ b/sys-boot/coreboot/files/configs/config.voema_npcx796fc
@@ -12,6 +12,7 @@
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-voema.bin"
 
 # FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_HAVE_INTEL_FSP_REPO=y
 # CONFIG_FSP_USE_REPO is not set
diff --git a/sys-boot/coreboot/files/configs/config.volet b/sys-boot/coreboot/files/configs/config.volet
index 57305ed..cd6dc03 100644
--- a/sys-boot/coreboot/files/configs/config.volet
+++ b/sys-boot/coreboot/files/configs/config.volet
@@ -1,45 +1,17 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_VOLET=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-volet.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-volet.bin"
 
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-volet.bin"
 
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt-volet.bin"
 
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
+# Wifi SAR
+CONFIG_CHROMEOS_WIFI_SAR=y
+CONFIG_WIFI_SAR_CBFS_FILEPATH="3rdparty/blobs/baseboard-volteer/wifi_sar/wifi_sar-volet.hex"
diff --git a/sys-boot/coreboot/files/configs/config.volteer b/sys-boot/coreboot/files/configs/config.volteer
index 9abd2eb..c929630 100644
--- a/sys-boot/coreboot/files/configs/config.volteer
+++ b/sys-boot/coreboot/files/configs/config.volteer
@@ -12,6 +12,7 @@
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-volteer.bin"
 
 # FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_HAVE_INTEL_FSP_REPO=y
 # CONFIG_FSP_USE_REPO is not set
diff --git a/sys-boot/coreboot/files/configs/config.volteer2 b/sys-boot/coreboot/files/configs/config.volteer2
index 8c5d899..5d65c70 100644
--- a/sys-boot/coreboot/files/configs/config.volteer2
+++ b/sys-boot/coreboot/files/configs/config.volteer2
@@ -1,50 +1,13 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_VOLTEER2=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-volteer2.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-volteer2.bin"
 
 # Management Engine FW update
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-volteer2.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="15.0.23.1777"
-
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
 
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt.bin"
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.volteer2_ti50 b/sys-boot/coreboot/files/configs/config.volteer2_ti50
index 2928705..b6ec4a2 100644
--- a/sys-boot/coreboot/files/configs/config.volteer2_ti50
+++ b/sys-boot/coreboot/files/configs/config.volteer2_ti50
@@ -1,45 +1,13 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_VOLTEER2_TI50=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-volteer2.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-volteer2.bin"
 
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+# Management Engine FW update
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-volteer2.bin"
 
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt.bin"
-
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
diff --git a/sys-boot/coreboot/files/configs/config.volteer_tcpmv1 b/sys-boot/coreboot/files/configs/config.volteer_tcpmv1
index 9abd2eb..c929630 100644
--- a/sys-boot/coreboot/files/configs/config.volteer_tcpmv1
+++ b/sys-boot/coreboot/files/configs/config.volteer_tcpmv1
@@ -12,6 +12,7 @@
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-volteer.bin"
 
 # FSP Blobs
+CONFIG_FSP_HEADER_PATH="3rdparty/blobs/intel/tgl/fsp/Include"
 CONFIG_ADD_FSP_BINARIES=y
 CONFIG_HAVE_INTEL_FSP_REPO=y
 # CONFIG_FSP_USE_REPO is not set
diff --git a/sys-boot/coreboot/files/configs/config.voxel b/sys-boot/coreboot/files/configs/config.voxel
index 2b73468..f031171 100644
--- a/sys-boot/coreboot/files/configs/config.voxel
+++ b/sys-boot/coreboot/files/configs/config.voxel
@@ -1,51 +1,17 @@
-CONFIG_VENDOR_GOOGLE=y
 CONFIG_BOARD_GOOGLE_VOXEL=y
 
-CONFIG_PAYLOAD_NONE=y
-CONFIG_USE_BLOBS=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
 # SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
 CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-volteer/descriptor-voxel.bin"
 
-# FSP Blobs
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/tgl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/tgl/fsp/fsps.bin"
-CONFIG_FSP_M_XIP=y
-CONFIG_RUN_FSP_GOP=y
-
 # Management Engine
-CONFIG_HAVE_ME_BIN=y
 CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-volteer/csme-voxel.bin"
 
 # Management Engine FW update
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-volteer/me_rw-voxel.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="15.0.23.1777"
-
-# Microcode
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-volteer/ucode.bin"
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
 
 # Video Blob
-CONFIG_INTEL_GMA_ADD_VBT=y
 CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-volteer/vbt-voxel.bin"
 
-# Serial console disabled by default (do not remove)
-# CONFIG_CONSOLE_SERIAL is not set
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-CONFIG_SPI_FLASH_SMM=y
-
+# Wifi SAR
 CONFIG_CHROMEOS_WIFI_SAR=y
 CONFIG_WIFI_SAR_CBFS_FILEPATH="3rdparty/blobs/baseboard-volteer/wifi_sar/wifi_sar-voxel.hex"
diff --git a/sys-boot/coreboot/files/configs/config.waddledee b/sys-boot/coreboot/files/configs/config.waddledee
index 1f2b9fc..f8ce157 100644
--- a/sys-boot/coreboot/files/configs/config.waddledee
+++ b/sys-boot/coreboot/files/configs/config.waddledee
@@ -45,6 +45,6 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-waddledee.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.0.1269"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.waddledee2 b/sys-boot/coreboot/files/configs/config.waddledee2
new file mode 100644
index 0000000..f8ce157
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.waddledee2
@@ -0,0 +1,50 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_WADDLEDEE=y
+CONFIG_USE_BLOBS=y
+CONFIG_PAYLOAD_NONE=y
+CONFIG_SPI_FLASH=y
+CONFIG_SPI_FLASH_SMM=y
+
+# Chrome OS
+CONFIG_CHROMEOS=y
+
+# Event Logging
+CONFIG_CMOS_POST=y
+CONFIG_CMOS_POST_OFFSET=0x70
+CONFIG_COLLECT_TIMESTAMPS=y
+CONFIG_ELOG=y
+CONFIG_ELOG_GSMI=y
+CONFIG_ELOG_BOOT_COUNT=y
+CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+
+# Firmware Support Package
+CONFIG_ADD_FSP_BINARIES=y
+CONFIG_HAVE_INTEL_FSP_REPO=y
+# CONFIG_FSP_USE_REPO is not set
+CONFIG_FSP_M_FILE="3rdparty/blobs/intel/jsl/fsp/fspm.bin"
+CONFIG_FSP_S_FILE="3rdparty/blobs/intel/jsl/fsp/fsps.bin"
+
+# Enable VBT
+CONFIG_INTEL_GMA_ADD_VBT=y
+CONFIG_RUN_FSP_GOP=y
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-dedede/vbt.bin"
+
+# Microcode
+CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-dedede/ucode.bin"
+
+# SPI Descriptor
+CONFIG_HAVE_IFD_BIN=y
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-dedede/descriptor-waddledee.bin"
+
+# Management Engine
+CONFIG_HAVE_ME_BIN=y
+CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-dedede/me-waddledee.bin"
+# CONFIG_LOCK_MANAGEMENT_ENGINE is not set
+
+# CSE RW Update Feature
+CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-waddledee.bin"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
+
+# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.waddledoo b/sys-boot/coreboot/files/configs/config.waddledoo
index 84eded1..2433d1d 100644
--- a/sys-boot/coreboot/files/configs/config.waddledoo
+++ b/sys-boot/coreboot/files/configs/config.waddledoo
@@ -46,6 +46,6 @@
 # CSE RW Update Feature
 CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
 CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-waddledoo.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.0.1269"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
 
 # CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.waddledoo2 b/sys-boot/coreboot/files/configs/config.waddledoo2
new file mode 100644
index 0000000..bdfce69
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.waddledoo2
@@ -0,0 +1,55 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_LALALA=y
+CONFIG_USE_BLOBS=y
+CONFIG_PAYLOAD_NONE=y
+CONFIG_SPI_FLASH=y
+CONFIG_SPI_FLASH_SMM=y
+
+# Chrome OS
+CONFIG_CHROMEOS=y
+
+# Event Logging
+CONFIG_CMOS_POST=y
+CONFIG_CMOS_POST_OFFSET=0x70
+CONFIG_COLLECT_TIMESTAMPS=y
+CONFIG_ELOG=y
+CONFIG_ELOG_GSMI=y
+CONFIG_ELOG_BOOT_COUNT=y
+CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
+
+# Firmware Support Package
+CONFIG_ADD_FSP_BINARIES=y
+CONFIG_HAVE_INTEL_FSP_REPO=y
+# CONFIG_FSP_USE_REPO is not set
+CONFIG_FSP_M_FILE="3rdparty/blobs/intel/jsl/fsp/fspm.bin"
+CONFIG_FSP_S_FILE="3rdparty/blobs/intel/jsl/fsp/fsps.bin"
+
+# Enable VBT
+CONFIG_INTEL_GMA_ADD_VBT=y
+CONFIG_RUN_FSP_GOP=y
+CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-dedede/vbt_lalala.bin"
+
+# Microcode
+CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
+CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-dedede/ucode.bin"
+
+# SPI Descriptor
+CONFIG_HAVE_IFD_BIN=y
+CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-dedede/descriptor-lalala.bin"
+
+# Management Engine
+CONFIG_HAVE_ME_BIN=y
+CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-dedede/me-lalala.bin"
+# CONFIG_LOCK_MANAGEMENT_ENGINE is not set
+
+# CSE RW Update Feature
+CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
+CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-lalala.bin"
+CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.15.1550"
+
+# WiFi SAR
+CONFIG_CHROMEOS_WIFI_SAR=y
+# FILEPATH is set to blank to prevent any default SAR file from getting added.
+CONFIG_WIFI_SAR_CBFS_FILEPATH=""
+
+# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.wheelie b/sys-boot/coreboot/files/configs/config.wheelie
deleted file mode 100644
index 14a96af..0000000
--- a/sys-boot/coreboot/files/configs/config.wheelie
+++ /dev/null
@@ -1,50 +0,0 @@
-CONFIG_VENDOR_GOOGLE=y
-CONFIG_BOARD_GOOGLE_WHEELIE=y
-CONFIG_USE_BLOBS=y
-CONFIG_PAYLOAD_NONE=y
-CONFIG_SPI_FLASH=y
-CONFIG_SPI_FLASH_SMM=y
-
-# Chrome OS
-CONFIG_CHROMEOS=y
-
-# Event Logging
-CONFIG_CMOS_POST=y
-CONFIG_CMOS_POST_OFFSET=0x70
-CONFIG_COLLECT_TIMESTAMPS=y
-CONFIG_ELOG=y
-CONFIG_ELOG_GSMI=y
-CONFIG_ELOG_BOOT_COUNT=y
-CONFIG_ELOG_BOOT_COUNT_CMOS_OFFSET=144
-
-# Firmware Support Package
-CONFIG_ADD_FSP_BINARIES=y
-CONFIG_HAVE_INTEL_FSP_REPO=y
-# CONFIG_FSP_USE_REPO is not set
-CONFIG_FSP_M_FILE="3rdparty/blobs/intel/jsl/fsp/fspm.bin"
-CONFIG_FSP_S_FILE="3rdparty/blobs/intel/jsl/fsp/fsps.bin"
-
-# Enable VBT
-CONFIG_INTEL_GMA_ADD_VBT=y
-CONFIG_RUN_FSP_GOP=y
-CONFIG_INTEL_GMA_VBT_FILE="3rdparty/blobs/baseboard-dedede/vbt.bin"
-
-# Microcode
-CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS=y
-CONFIG_CPU_UCODE_BINARIES="3rdparty/blobs/baseboard-dedede/ucode.bin"
-
-# SPI Descriptor
-CONFIG_HAVE_IFD_BIN=y
-CONFIG_IFD_BIN_PATH="3rdparty/blobs/baseboard-dedede/descriptor-wheelie.bin"
-
-# Management Engine
-CONFIG_HAVE_ME_BIN=y
-CONFIG_ME_BIN_PATH="3rdparty/blobs/baseboard-dedede/me-wheelie.bin"
-# CONFIG_LOCK_MANAGEMENT_ENGINE is not set
-
-# CSE RW Update Feature
-CONFIG_SOC_INTEL_CSE_RW_UPDATE=y
-CONFIG_SOC_INTEL_CSE_RW_FILE="3rdparty/blobs/baseboard-dedede/me_rw-wheelie.bin"
-CONFIG_SOC_INTEL_CSE_RW_VERSION="13.50.0.1269"
-
-# CONFIG_CONSOLE_SERIAL is not set
diff --git a/sys-boot/coreboot/files/configs/config.wormdingler b/sys-boot/coreboot/files/configs/config.wormdingler
new file mode 100644
index 0000000..d9fc45b
--- /dev/null
+++ b/sys-boot/coreboot/files/configs/config.wormdingler
@@ -0,0 +1,6 @@
+CONFIG_VENDOR_GOOGLE=y
+CONFIG_BOARD_GOOGLE_WORMDINGLER=y
+CONFIG_CHROMEOS=y
+# CONFIG_CONSOLE_SERIAL is not set
+CONFIG_USE_BLOBS=y
+CONFIG_USE_QC_BLOBS=y
diff --git a/sys-boot/coreboot/files/configs/fwserial.mancomb b/sys-boot/coreboot/files/configs/fwserial.mancomb
deleted file mode 100644
index 109ec16..0000000
--- a/sys-boot/coreboot/files/configs/fwserial.mancomb
+++ /dev/null
@@ -1,15 +0,0 @@
-CONFIG_CONSOLE_SERIAL=y
-CONFIG_FATAL_ASSERTS=y
-CONFIG_CONSOLE_SERIAL_115200=y
-CONFIG_DEFAULT_CONSOLE_LOGLEVEL_8=y
-CONFIG_CONSOLE_POST=y
-CONFIG_DEBUG_SMI=y
-CONFIG_TIMESTAMPS_ON_CONSOLE=y
-CONFIG_PSP_UNLOCK_SECURE_DEBUG=y
-CONFIG_FSP_M_FILE="3rdparty/amd_blobs/cezanne/CEZANNE_SERIAL_M.fd"
-CONFIG_FSP_S_FILE="3rdparty/amd_blobs/cezanne/CEZANNE_SERIAL_S.fd"
-CONFIG_DISPLAY_FSP_CALLS_AND_STATUS=y
-CONFIG_DISPLAY_FSP_HEADER=y
-CONFIG_DISPLAY_HOBS=y
-CONFIG_DISPLAY_UPD_DATA=y
-CONFIG_VERIFY_HOBS=y
diff --git a/sys-boot/depthcharge/depthcharge-0.0.1-r3288.ebuild b/sys-boot/depthcharge/depthcharge-0.0.1-r3288.ebuild
deleted file mode 100644
index 9632cd9..0000000
--- a/sys-boot/depthcharge/depthcharge-0.0.1-r3288.ebuild
+++ /dev/null
@@ -1,237 +0,0 @@
-# Copyright 2012 The Chromium OS Authors.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT=("3c668e1f6c4b41a0064612d8719a4d22dada8ac7" "5c0fcf0f8725b98043a4b18f36e21489375d133a")
-CROS_WORKON_TREE=("da095db43f621ecd0e59572cc290ac6f892753fc" "3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c")
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform/depthcharge"
-	"chromiumos/platform/vboot_reference"
-)
-
-DESCRIPTION="coreboot's depthcharge payload"
-HOMEPAGE="http://www.coreboot.org"
-LICENSE="GPL-2"
-KEYWORDS="*"
-IUSE="detachable diag_payload fwconsole mocktpm pd_sync
-	unibuild verbose debug +minidiag
-	physical_presence_power physical_presence_recovery"
-
-DEPEND="
-	sys-boot/coreboot:=
-	chromeos-base/chromeos-ec-headers:=
-	sys-boot/libpayload:=
-	unibuild? ( chromeos-base/chromeos-config:= )
-"
-
-BDEPEND="
-	dev-python/kconfiglib
-"
-
-CROS_WORKON_LOCALNAME=("../platform/depthcharge" "../platform/vboot_reference")
-VBOOT_REFERENCE_DESTDIR="${S}/vboot_reference"
-CROS_WORKON_DESTDIR=("${S}/depthcharge" "${VBOOT_REFERENCE_DESTDIR}")
-
-# Don't strip to ease remote GDB use (cbfstool strips final binaries anyway)
-STRIP_MASK="*"
-
-inherit cros-workon cros-board cros-unibuild
-
-# Get the depthcharge board config to build for.
-# Checks the current board with/without variant. Echoes the board config file
-# that should be used to build depthcharge.
-get_board() {
-	local board=$(get_current_board_with_variant)
-	if [[ ! -d "board/${board}" ]]; then
-		board=$(get_current_board_no_variant)
-	fi
-
-	echo "${board}"
-}
-
-# Build depthcharge with common options.
-# Usage example: dc_make dev "${BUILD_DIR}" "${LIBPAYLOAD_DIR}"
-# Args:
-#   $1: Target to build
-#   $2: Build directory to use.
-#   $3: Directory where libpayload is located.
-#   $4+: Any other Makefile arguments.
-dc_make() {
-	local target="$1"
-	local builddir="$2"
-	local libpayload="$3"
-
-	shift 3
-
-	local OPTS=(
-		"EC_HEADERS=${SYSROOT}/usr/include/chromeos/ec"
-		"VB_SOURCE=${VBOOT_REFERENCE_DESTDIR}"
-		"PD_SYNC=$(usev pd_sync)"
-		"LIBPAYLOAD_DIR=${libpayload}/libpayload"
-		"obj=${builddir}"
-	)
-
-	use verbose && OPTS+=( "V=1" )
-	use debug && OPTS+=( "SOURCE_DEBUG=1" )
-
-	emake "${OPTS[@]}" \
-		"${target}" \
-		"$@"
-}
-
-# Build depthcharge for the current board.
-# Builds the various output files for depthcharge:
-#   depthcharge.elf   - normal image
-#   dev.elf           - developer image
-#   netboot.elf       - network image
-# In addition, .map files are produced for each, and a .config file which
-# holds the configuration that was used.
-# Args
-#   $1: board to build for.
-#   $2: build directory
-#   $3: libpayload dir
-make_depthcharge() {
-	local board="$1"
-	local builddir="$2"
-	local libpayload="$3"
-	local base_defconfig="board/${board}/defconfig"
-	local defconfig="${T}/${board}-defconfig"
-	local config="${builddir}/depthcharge.config"
-
-	if [[ -e "${base_defconfig}" ]]; then
-		cp "${base_defconfig}" "${defconfig}"
-	else
-		ewarn "${base_defconfig} does not exist!"
-		touch "${defconfig}"
-	fi
-
-	chmod +w "${defconfig}"
-
-	if use mocktpm ; then
-		echo "CONFIG_MOCK_TPM=y" >> "${defconfig}"
-	fi
-	if use fwconsole ; then
-		echo "CONFIG_CLI=y" >> "${defconfig}"
-		echo "CONFIG_SYS_PROMPT=\"${board}: \"" >> "${defconfig}"
-	fi
-	if use detachable ; then
-		echo "CONFIG_DETACHABLE=y" >> "${defconfig}"
-	fi
-
-	# Both diag_payload and minidiag need special UI.
-	if use diag_payload || use minidiag ; then
-		echo "CONFIG_DIAGNOSTIC_UI=y" >> "${defconfig}"
-	fi
-
-	if use physical_presence_power || use physical_presence_recovery ; then
-		echo "CONFIG_PHYSICAL_PRESENCE_KEYBOARD=n" >> "${defconfig}"
-	fi
-
-	dc_make defconfig "${builddir}" "${libpayload}" \
-		KBUILD_DEFCONFIG="${defconfig}" \
-		DOTCONFIG="${config}"
-
-	dc_make depthcharge "${builddir}" "${libpayload}" \
-		DOTCONFIG="${config}"
-	dc_make dev "${builddir}" "${libpayload}.gdb" \
-		DOTCONFIG="${config}"
-	dc_make netboot "${builddir}" "${libpayload}.gdb" \
-		DOTCONFIG="${config}"
-}
-
-# Copy the fwconfig from libpayload to a path
-# Args:
-#    $1: libpayload dir
-#    $2: depthcharge build directory
-_copy_fwconfig() {
-	local src="${1}/libpayload/include/static_fw_config.h"
-	local dest="${2}/static_fw_config.h"
-
-	if [[ -s "${src}" ]]; then
-		cp "${src}" "${dest}"
-		einfo "Copying ${src} into local tree"
-	else
-		ewarn "${src} does not exist"
-	fi
-}
-
-src_compile() {
-	local builddir
-	local libpayload
-
-	# Firmware related binaries are compiled with a 32-bit toolchain
-	# on 64-bit platforms
-	if use amd64 ; then
-		export CROSS_COMPILE="i686-pc-linux-gnu-"
-		export CC="${CROSS_COMPILE}gcc"
-	else
-		export CROSS_COMPILE=${CHOST}-
-	fi
-
-	pushd depthcharge >/dev/null || \
-		die "Failed to change into ${PWD}/depthcharge"
-
-	if use unibuild; then
-		local name
-		local depthcharge
-
-		while read -r name && read -r depthcharge; do
-			libpayload="${SYSROOT}/firmware/${name}/libpayload"
-			builddir="$(cros-workon_get_build_dir)/${depthcharge}"
-			mkdir -p "${builddir}"
-
-			_copy_fwconfig "${libpayload}" "${builddir}"
-			make_depthcharge "${depthcharge}" "${builddir}" "${libpayload}"
-		done < <(cros_config_host get-firmware-build-combinations depthcharge)
-	else
-		libpayload="${SYSROOT}/firmware/legacy/libpayload"
-		builddir="$(cros-workon_get_build_dir)"
-		mkdir -p "${builddir}"
-
-		_copy_fwconfig "${libpayload}" "${builddir}"
-		make_depthcharge "$(get_board)" "${builddir}" "${libpayload}"
-	fi
-
-	popd >/dev/null || die
-}
-
-do_install() {
-	local board="$1"
-	local builddir="$2"
-	local dstdir="/firmware"
-
-	if [[ -n "${build_target}" ]]; then
-		dstdir+="/${build_target}"
-		einfo "Installing depthcharge ${build_target} into ${dest_dir}"
-	fi
-	insinto "${dstdir}"
-
-	pushd "${builddir}" >/dev/null || \
-		die "couldn't access ${builddir}/ directory"
-
-	local files_to_copy=(
-		depthcharge.config
-		{netboot,depthcharge,dev}.elf{,.map}
-	)
-
-	insinto "${dstdir}/depthcharge"
-	doins "${files_to_copy[@]}"
-
-	popd >/dev/null || die
-}
-
-src_install() {
-	if use unibuild; then
-		local build_target
-		local builddir
-
-		for build_target in $(cros_config_host \
-				get-firmware-build-targets depthcharge); do
-			builddir="$(cros-workon_get_build_dir)/${build_target}"
-
-			do_install "${build_target}" "${builddir}"
-		done
-	else
-		do_install "$(get_board)" "$(cros-workon_get_build_dir)"
-	fi
-}
diff --git a/sys-boot/depthcharge/depthcharge-0.0.1-r3453.ebuild b/sys-boot/depthcharge/depthcharge-0.0.1-r3453.ebuild
new file mode 100644
index 0000000..68e59af
--- /dev/null
+++ b/sys-boot/depthcharge/depthcharge-0.0.1-r3453.ebuild
@@ -0,0 +1,219 @@
+# Copyright 2012 The Chromium OS Authors.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT=("38a1b13da9d2838fe5e303239528965ec173a9f0" "1269365169791c65a6bf6f364583209195874138")
+CROS_WORKON_TREE=("d3d1417229734b694fbf97adaf1a8ea5788e6b41" "63abdfe41a1746dfd5452f030b2ff4646a15ff76")
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform/depthcharge"
+	"chromiumos/platform/vboot_reference"
+)
+
+DESCRIPTION="coreboot's depthcharge payload"
+HOMEPAGE="http://www.coreboot.org"
+LICENSE="GPL-2"
+KEYWORDS="*"
+IUSE="detachable fwconsole mocktpm pd_sync unibuild verbose debug
+	physical_presence_power physical_presence_recovery"
+
+# No pre-unibuild boards build firmware on ToT anymore.  Assume
+# unibuild to keep ebuild clean.
+REQUIRED_USE="unibuild"
+
+DEPEND="
+	sys-boot/coreboot:=
+	chromeos-base/chromeos-ec-headers:=
+	sys-boot/libpayload:=
+	chromeos-base/chromeos-config:=
+"
+
+# While this package is never actually executed, we still need to specify
+# RDEPEND. A binary version of this package could exist that was built using an
+# outdated version of chromeos-config. Without the RDEPEND this stale binary
+# package is considered valid by the package manager. This is problematic
+# because we could have two binary packages installed having been build with
+# different versions of chromeos-config. By specifying the RDEPEND we force
+# the package manager to ensure the two versions use the same chromeos-config.
+RDEPEND="${DEPEND}"
+
+BDEPEND="
+	dev-python/kconfiglib
+"
+
+CROS_WORKON_LOCALNAME=("../platform/depthcharge" "../platform/vboot_reference")
+VBOOT_REFERENCE_DESTDIR="${S}/vboot_reference"
+CROS_WORKON_DESTDIR=("${S}/depthcharge" "${VBOOT_REFERENCE_DESTDIR}")
+
+# Don't strip to ease remote GDB use (cbfstool strips final binaries anyway)
+STRIP_MASK="*"
+
+inherit cros-workon cros-unibuild
+
+# Build depthcharge with common options.
+# Usage example: dc_make dev "${BUILD_DIR}" "${LIBPAYLOAD_DIR}"
+# Args:
+#   $1: Target to build
+#   $2: Build directory to use.
+#   $3: Directory where libpayload is located.
+#   $4+: Any other Makefile arguments.
+dc_make() {
+	local target="$1"
+	local builddir="$2"
+	local libpayload="$3"
+
+	shift 3
+
+	local OPTS=(
+		"EC_HEADERS=${SYSROOT}/usr/include/chromeos/ec"
+		"VB_SOURCE=${VBOOT_REFERENCE_DESTDIR}"
+		"PD_SYNC=$(usev pd_sync)"
+		"LIBPAYLOAD_DIR=${libpayload}/libpayload"
+		"obj=${builddir}"
+	)
+
+	use verbose && OPTS+=( "V=1" )
+	use debug && OPTS+=( "SOURCE_DEBUG=1" )
+
+	emake "${OPTS[@]}" \
+		"${target}" \
+		"$@"
+}
+
+# Build depthcharge for the current board.
+# Builds the various output files for depthcharge:
+#   depthcharge.elf   - normal image
+#   dev.elf           - developer image
+#   netboot.elf       - network image
+# In addition, .map files are produced for each, and a .config file which
+# holds the configuration that was used.
+# Args
+#   $1: board to build for.
+#   $2: build directory
+#   $3: libpayload dir
+make_depthcharge() {
+	local board="$1"
+	local builddir="$2"
+	local libpayload="$3"
+	local base_defconfig="board/${board}/defconfig"
+	local defconfig="${T}/${board}-defconfig"
+	local config="${builddir}/depthcharge.config"
+
+	if [[ -e "${base_defconfig}" ]]; then
+		cp "${base_defconfig}" "${defconfig}"
+	else
+		ewarn "${base_defconfig} does not exist!"
+		touch "${defconfig}"
+	fi
+
+	chmod +w "${defconfig}"
+
+	if use mocktpm ; then
+		echo "CONFIG_MOCK_TPM=y" >> "${defconfig}"
+	fi
+	if use fwconsole ; then
+		echo "CONFIG_CLI=y" >> "${defconfig}"
+		echo "CONFIG_SYS_PROMPT=\"${board}: \"" >> "${defconfig}"
+	fi
+	if use detachable ; then
+		echo "CONFIG_DETACHABLE=y" >> "${defconfig}"
+	fi
+
+	if use physical_presence_power || use physical_presence_recovery ; then
+		echo "CONFIG_PHYSICAL_PRESENCE_KEYBOARD=n" >> "${defconfig}"
+	fi
+
+	dc_make defconfig "${builddir}" "${libpayload}" \
+		KBUILD_DEFCONFIG="${defconfig}" \
+		DOTCONFIG="${config}"
+
+	dc_make depthcharge "${builddir}" "${libpayload}" \
+		DOTCONFIG="${config}"
+	dc_make dev "${builddir}" "${libpayload}.gdb" \
+		DOTCONFIG="${config}"
+	dc_make netboot "${builddir}" "${libpayload}.gdb" \
+		DOTCONFIG="${config}"
+}
+
+# Copy the fwconfig from libpayload to a path
+# Args:
+#    $1: libpayload dir
+#    $2: depthcharge build directory
+_copy_fwconfig() {
+	local src="${1}/libpayload/include/static_fw_config.h"
+	local dest="${2}/static_fw_config.h"
+
+	if [[ -s "${src}" ]]; then
+		cp "${src}" "${dest}"
+		einfo "Copying ${src} into local tree"
+	else
+		ewarn "${src} does not exist"
+	fi
+}
+
+src_compile() {
+	local builddir
+	local libpayload
+
+	# Firmware related binaries are compiled with a 32-bit toolchain
+	# on 64-bit platforms
+	if use amd64 ; then
+		export CROSS_COMPILE="i686-pc-linux-gnu-"
+		export CC="${CROSS_COMPILE}gcc"
+	else
+		export CROSS_COMPILE=${CHOST}-
+	fi
+
+	pushd depthcharge >/dev/null || \
+		die "Failed to change into ${PWD}/depthcharge"
+
+		local name
+		local depthcharge
+
+	while read -r name && read -r depthcharge; do
+		libpayload="${SYSROOT}/firmware/${name}/libpayload"
+		builddir="$(cros-workon_get_build_dir)/${depthcharge}"
+		mkdir -p "${builddir}"
+
+		_copy_fwconfig "${libpayload}" "${builddir}"
+		make_depthcharge "${depthcharge}" "${builddir}" "${libpayload}"
+	done < <(cros_config_host get-firmware-build-combinations depthcharge)
+
+	popd >/dev/null || die
+}
+
+do_install() {
+	local board="$1"
+	local builddir="$2"
+	local dstdir="/firmware"
+
+	if [[ -n "${build_target}" ]]; then
+		dstdir+="/${build_target}"
+		einfo "Installing depthcharge ${build_target} into ${dest_dir}"
+	fi
+	insinto "${dstdir}"
+
+	pushd "${builddir}" >/dev/null || \
+		die "couldn't access ${builddir}/ directory"
+
+	local files_to_copy=(
+		depthcharge.config
+		{netboot,depthcharge,dev}.elf{,.map}
+	)
+
+	insinto "${dstdir}/depthcharge"
+	doins "${files_to_copy[@]}"
+
+	popd >/dev/null || die
+}
+
+src_install() {
+	local build_target
+	local builddir
+
+	for build_target in $(cros_config_host \
+			get-firmware-build-targets depthcharge); do
+		builddir="$(cros-workon_get_build_dir)/${build_target}"
+
+		do_install "${build_target}" "${builddir}"
+	done
+}
diff --git a/sys-boot/depthcharge/depthcharge-9999.ebuild b/sys-boot/depthcharge/depthcharge-9999.ebuild
index 13191c9..0ce0f7a 100644
--- a/sys-boot/depthcharge/depthcharge-9999.ebuild
+++ b/sys-boot/depthcharge/depthcharge-9999.ebuild
@@ -11,17 +11,29 @@
 HOMEPAGE="http://www.coreboot.org"
 LICENSE="GPL-2"
 KEYWORDS="~*"
-IUSE="detachable diag_payload fwconsole mocktpm pd_sync
-	unibuild verbose debug +minidiag
+IUSE="detachable fwconsole mocktpm pd_sync unibuild verbose debug
 	physical_presence_power physical_presence_recovery"
 
+# No pre-unibuild boards build firmware on ToT anymore.  Assume
+# unibuild to keep ebuild clean.
+REQUIRED_USE="unibuild"
+
 DEPEND="
 	sys-boot/coreboot:=
 	chromeos-base/chromeos-ec-headers:=
 	sys-boot/libpayload:=
-	unibuild? ( chromeos-base/chromeos-config:= )
+	chromeos-base/chromeos-config:=
 "
 
+# While this package is never actually executed, we still need to specify
+# RDEPEND. A binary version of this package could exist that was built using an
+# outdated version of chromeos-config. Without the RDEPEND this stale binary
+# package is considered valid by the package manager. This is problematic
+# because we could have two binary packages installed having been build with
+# different versions of chromeos-config. By specifying the RDEPEND we force
+# the package manager to ensure the two versions use the same chromeos-config.
+RDEPEND="${DEPEND}"
+
 BDEPEND="
 	dev-python/kconfiglib
 "
@@ -33,19 +45,7 @@
 # Don't strip to ease remote GDB use (cbfstool strips final binaries anyway)
 STRIP_MASK="*"
 
-inherit cros-workon cros-board cros-unibuild
-
-# Get the depthcharge board config to build for.
-# Checks the current board with/without variant. Echoes the board config file
-# that should be used to build depthcharge.
-get_board() {
-	local board=$(get_current_board_with_variant)
-	if [[ ! -d "board/${board}" ]]; then
-		board=$(get_current_board_no_variant)
-	fi
-
-	echo "${board}"
-}
+inherit cros-workon cros-unibuild
 
 # Build depthcharge with common options.
 # Usage example: dc_make dev "${BUILD_DIR}" "${LIBPAYLOAD_DIR}"
@@ -116,11 +116,6 @@
 		echo "CONFIG_DETACHABLE=y" >> "${defconfig}"
 	fi
 
-	# Both diag_payload and minidiag need special UI.
-	if use diag_payload || use minidiag ; then
-		echo "CONFIG_DIAGNOSTIC_UI=y" >> "${defconfig}"
-	fi
-
 	if use physical_presence_power || use physical_presence_recovery ; then
 		echo "CONFIG_PHYSICAL_PRESENCE_KEYBOARD=n" >> "${defconfig}"
 	fi
@@ -169,26 +164,17 @@
 	pushd depthcharge >/dev/null || \
 		die "Failed to change into ${PWD}/depthcharge"
 
-	if use unibuild; then
 		local name
 		local depthcharge
 
-		while read -r name && read -r depthcharge; do
-			libpayload="${SYSROOT}/firmware/${name}/libpayload"
-			builddir="$(cros-workon_get_build_dir)/${depthcharge}"
-			mkdir -p "${builddir}"
-
-			_copy_fwconfig "${libpayload}" "${builddir}"
-			make_depthcharge "${depthcharge}" "${builddir}" "${libpayload}"
-		done < <(cros_config_host get-firmware-build-combinations depthcharge)
-	else
-		libpayload="${SYSROOT}/firmware/legacy/libpayload"
-		builddir="$(cros-workon_get_build_dir)"
+	while read -r name && read -r depthcharge; do
+		libpayload="${SYSROOT}/firmware/${name}/libpayload"
+		builddir="$(cros-workon_get_build_dir)/${depthcharge}"
 		mkdir -p "${builddir}"
 
 		_copy_fwconfig "${libpayload}" "${builddir}"
-		make_depthcharge "$(get_board)" "${builddir}" "${libpayload}"
-	fi
+		make_depthcharge "${depthcharge}" "${builddir}" "${libpayload}"
+	done < <(cros_config_host get-firmware-build-combinations depthcharge)
 
 	popd >/dev/null || die
 }
@@ -219,17 +205,13 @@
 }
 
 src_install() {
-	if use unibuild; then
-		local build_target
-		local builddir
+	local build_target
+	local builddir
 
-		for build_target in $(cros_config_host \
-				get-firmware-build-targets depthcharge); do
-			builddir="$(cros-workon_get_build_dir)/${build_target}"
+	for build_target in $(cros_config_host \
+			get-firmware-build-targets depthcharge); do
+		builddir="$(cros-workon_get_build_dir)/${build_target}"
 
-			do_install "${build_target}" "${builddir}"
-		done
-	else
-		do_install "$(get_board)" "$(cros-workon_get_build_dir)"
-	fi
+		do_install "${build_target}" "${builddir}"
+	done
 }
diff --git a/sys-boot/grub/Manifest b/sys-boot/grub/Manifest
index 6ec5b6c..f32a1e4 100644
--- a/sys-boot/grub/Manifest
+++ b/sys-boot/grub/Manifest
@@ -1 +1 @@
-DIST grub-2.02.tar.xz 6113260 SHA256 810b3798d316394f94096ec2797909dbf23c858e48f7b3830826b8daa06b7b0f SHA512 cc6eb0a42b5c8df2f671cc128ff725afb3ff1f8832a196022e433cf0d3b75decfca2316d0aa5fabea75747d55e88f3d021dd93508563f8ca80fd7b9e7fe1f088 WHIRLPOOL a7f5d786064642f926faa444b9db1555ccfbb460655f81a0ca408bc5ad2acfb89fe596f81d161078944ce1b2dc00e82e8fb056f050bf026fc07f6417af7b9776
+DIST grub-2.06.tar.xz 6581924 BLAKE2B 2a40b9b03d7bb3b9e7b1309ab274d686f01b3c42e7035ebc6e5a0e59a59c3b7362ba518341664b314cb0dbc8222bb10ea05ce09f08ce9d58a293207cb909e417 SHA512 4f11c648f3078567e53fc0c74d5026fdc6da4be27d188975e79d9a4df817ade0fe5ad2ddd694238a07edc45adfa02943d83c57767dd51548102b375e529e8efe
diff --git a/sys-boot/grub/OWNERS b/sys-boot/grub/OWNERS
new file mode 100644
index 0000000..344d518
--- /dev/null
+++ b/sys-boot/grub/OWNERS
@@ -0,0 +1 @@
+eshimanovich@google.com
diff --git a/sys-boot/grub/README.md b/sys-boot/grub/README.md
new file mode 100644
index 0000000..d93f86a
--- /dev/null
+++ b/sys-boot/grub/README.md
@@ -0,0 +1,40 @@
+# sbat.csv
+
+sbat.csv is used by `/scripts/build_library/create_legacy_bootloader_templates.sh` to implement UEFI Secure Boot Advanced Targeting (SBAT), a mechanism to require a specific level of resistance to UEFI Secure Boot bypasses. It is stored in the grub ebuild directory so that it is easier to update it with grub.
+
+sbat.csv is required for the reven board.
+
+## Updating sbat.csv
+sbat.csv needs to be updated whenever grub or sbat is updated to a new version.
+
+**It has three lines in it containing info about the following:**
+
+1) sbat
+
+2) upstream grub
+
+3) our forked grub
+
+
+**Whenever grub is updated, the following needs to be updated:**
+
+1) grub version number (X.XX)
+
+**AND the following may need to be updated, depending on upstream grub requirements\*:**
+
+1) grub generation number (X)
+
+2) sbat generation number (X)
+
+3) sbat version number (X)
+
+Generation numbers are incremented whenever the most recent secure boot vulnerability becomes required by SBAT.
+
+\*As of right now, both SBAT and grub upstream documentation don't currently have generation numbers listed, as they are all set to 1.
+
+## Understanding SBAT
+Part of sbat.csv is meant to be human-readable, and part of it (specifically, the generation numbers) is processed by SBAT.
+
+As far as I understand, SBAT only needs to process the grub line with a generation number that matches its requirements, so having two grub lines (upstream and our version) as opposed to one is more for human-readability.
+
+SBAT official documentation is located here: https://github.com/rhboot/shim/blob/main/SBAT.md
diff --git a/sys-boot/grub/files/0003-tsc-Change-default-tsc-calibration-method-to-pmtimer.patch b/sys-boot/grub/files/0003-tsc-Change-default-tsc-calibration-method-to-pmtimer.patch
deleted file mode 100644
index b2782ff..0000000
--- a/sys-boot/grub/files/0003-tsc-Change-default-tsc-calibration-method-to-pmtimer.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 4d891071672efe32110f3c0503510418a01113f3 Mon Sep 17 00:00:00 2001
-From: "David E. Box" <david.e.box@linux.intel.com>
-Date: Fri, 15 Sep 2017 15:37:05 -0700
-Subject: [PATCH] tsc: Change default tsc calibration method to pmtimer on EFI
- systems
-
-On efi systems, make pmtimer based tsc calibration the default over the
-pit. This prevents Grub from hanging on Intel SoC systems that power gate
-the pit.
-
-Signed-off-by: David E. Box <david.e.box@linux.intel.com>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
----
- grub-core/kern/i386/tsc.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/grub-core/kern/i386/tsc.c b/grub-core/kern/i386/tsc.c
-index 2e85289..f266eb1 100644
---- a/grub-core/kern/i386/tsc.c
-+++ b/grub-core/kern/i386/tsc.c
-@@ -68,7 +68,7 @@ grub_tsc_init (void)
- #ifdef GRUB_MACHINE_XEN
-   (void) (grub_tsc_calibrate_from_xen () || calibrate_tsc_hardcode());
- #elif defined (GRUB_MACHINE_EFI)
--  (void) (grub_tsc_calibrate_from_pit () || grub_tsc_calibrate_from_pmtimer () || grub_tsc_calibrate_from_efi() || calibrate_tsc_hardcode());
-+  (void) (grub_tsc_calibrate_from_pmtimer () || grub_tsc_calibrate_from_pit () || grub_tsc_calibrate_from_efi() || calibrate_tsc_hardcode());
- #elif defined (GRUB_MACHINE_COREBOOT)
-   (void) (grub_tsc_calibrate_from_pmtimer () || grub_tsc_calibrate_from_pit () || calibrate_tsc_hardcode());
- #else
--- 
-1.9.1
-
diff --git a/sys-boot/grub/files/0004-grub-0x4-relocation.patch b/sys-boot/grub/files/0004-grub-0x4-relocation.patch
deleted file mode 100644
index 02945e8..0000000
--- a/sys-boot/grub/files/0004-grub-0x4-relocation.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 842c390469e2c2e10b5aa36700324cd3bde25875 Mon Sep 17 00:00:00 2001
-From: "H.J. Lu" <hjl.tools@gmail.com>
-Date: Sat, 17 Feb 2018 06:47:28 -0800
-Subject: x86-64: Treat R_X86_64_PLT32 as R_X86_64_PC32
-
-Starting from binutils commit bd7ab16b4537788ad53521c45469a1bdae84ad4a:
-
-https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=bd7ab16b4537788ad53521c45469a1bdae84ad4a
-
-x86-64 assembler generates R_X86_64_PLT32, instead of R_X86_64_PC32, for
-32-bit PC-relative branches.  Grub2 should treat R_X86_64_PLT32 as
-R_X86_64_PC32.
-
-Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
----
- util/grub-mkimagexx.c       | 1 +
- util/grub-module-verifier.c | 1 +
- 2 files changed, 2 insertions(+)
-
-(limited to 'util')
-
-diff --git a/util/grub-mkimagexx.c b/util/grub-mkimagexx.c
-index a2bb05439..39d7efb91 100644
---- a/util/grub-mkimagexx.c
-+++ b/util/grub-mkimagexx.c
-@@ -841,6 +841,7 @@ SUFFIX (relocate_addresses) (Elf_Ehdr *e, Elf_Shdr *sections,
- 		  break;
- 
- 		case R_X86_64_PC32:
-+		case R_X86_64_PLT32:
- 		  {
- 		    grub_uint32_t *t32 = (grub_uint32_t *) target;
- 		    *t32 = grub_host_to_target64 (grub_target_to_host32 (*t32)
-diff --git a/util/grub-module-verifier.c b/util/grub-module-verifier.c
-index 9179285a5..a79271f66 100644
---- a/util/grub-module-verifier.c
-+++ b/util/grub-module-verifier.c
-@@ -19,6 +19,7 @@ struct grub_module_verifier_arch archs[] = {
-       -1
-     }, (int[]){
-       R_X86_64_PC32,
-+      R_X86_64_PLT32,
-       -1
-     }
-   },
--- 
-cgit v1.2.1
-
diff --git a/sys-boot/grub/files/sbat.csv b/sys-boot/grub/files/sbat.csv
new file mode 100644
index 0000000..49de0b1
--- /dev/null
+++ b/sys-boot/grub/files/sbat.csv
@@ -0,0 +1,3 @@
+sbat,1,SBAT Version,sbat,1,https://github.com/rhboot/shim/blob/main/SBAT.md
+grub,1,Free Software Foundation,grub,2.06,https://www.gnu.org/software/grub/
+grub.chromeos,1,ChromeOS,grub2,2.06,https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/refs/heads/main/sys-boot/grub/grub-2.06.ebuild
diff --git a/sys-boot/grub/grub-2.02-r8.ebuild b/sys-boot/grub/grub-2.02-r8.ebuild
deleted file mode 120000
index bec419f..0000000
--- a/sys-boot/grub/grub-2.02-r8.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-grub-2.02.ebuild
\ No newline at end of file
diff --git a/sys-boot/grub/grub-2.02.ebuild b/sys-boot/grub/grub-2.02.ebuild
deleted file mode 100644
index 54dbd59..0000000
--- a/sys-boot/grub/grub-2.02.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit bash-completion-r1 eutils toolchain-funcs multiprocessing
-
-DESCRIPTION="GNU GRUB 2 boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="ftp://ftp.gnu.org/gnu/grub/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="-* amd64"
-
-PROVIDE="virtual/bootloader"
-
-export STRIP_MASK="*.img *.mod *.module"
-
-# The ordering doesn't seem to matter.
-PLATFORMS=( "efi" "pc" )
-TARGETS=( "i386" "x86_64" )
-
-src_prepare() {
-	epatch "${FILESDIR}/0001-Forward-port-ChromeOS-specific-GRUB-environment-vari.patch"
-	epatch "${FILESDIR}/0002-Forward-port-gptpriority-command-to-GRUB-2.00.patch"
-	epatch "${FILESDIR}/0003-tsc-Change-default-tsc-calibration-method-to-pmtimer.patch"
-	epatch "${FILESDIR}/0004-grub-0x4-relocation.patch"
-	epatch "${FILESDIR}/0005-strip-interp-from-diskboot.patch"
-	epatch "${FILESDIR}/b189992601-no-soft-float.patch"
-
-	bash autogen.sh || die
-}
-
-src_configure() {
-	local platform target
-	# Fix timestamps to prevent unnecessary rebuilding
-	find "${S}" -exec touch -r "${S}/configure" {} +
-	multijob_init
-	for platform in "${PLATFORMS[@]}" ; do
-		for target in "${TARGETS[@]}" ; do
-			mkdir -p ${target}-${platform}-build
-			pushd ${target}-${platform}-build >/dev/null
-			# GRUB defaults to a --program-prefix set based on target
-			# platform; explicitly set it to nothing to install unprefixed
-			# tools.  https://savannah.gnu.org/bugs/?39818
-			ECONF_SOURCE="${S}" multijob_child_init econf \
-				TARGET_CC="$(tc-getCC)" \
-				--disable-werror \
-				--disable-grub-mkfont \
-				--disable-grub-mount \
-				--disable-device-mapper \
-				--disable-efiemu \
-				--disable-libzfs \
-				--disable-nls \
-				--sbindir=/sbin \
-				--bindir=/bin \
-				--libdir=/$(get_libdir) \
-				--with-platform=${platform} \
-				--target=${target} \
-				--program-prefix=
-			popd >/dev/null
-		done
-	done
-	multijob_finish
-}
-
-src_compile() {
-	local platform target
-	multijob_init
-	for platform in "${PLATFORMS[@]}" ; do
-		for target in "${TARGETS[@]}" ; do
-			multijob_child_init \
-				emake -C ${target}-${platform}-build -j1
-		done
-	done
-	multijob_finish
-}
-
-src_install() {
-	local platform target
-	# The installations have several file conflicts that prevent
-	# parallel installation.
-	for platform in "${PLATFORMS[@]}" ; do
-		for target in "${TARGETS[@]}" ; do
-			emake -C ${target}-${platform}-build DESTDIR="${D}" \
-				install bashcompletiondir="$(get_bashcompdir)"
-		done
-	done
-}
diff --git a/sys-boot/grub/grub-2.06-r2.ebuild b/sys-boot/grub/grub-2.06-r2.ebuild
new file mode 120000
index 0000000..86b3249
--- /dev/null
+++ b/sys-boot/grub/grub-2.06-r2.ebuild
@@ -0,0 +1 @@
+grub-2.06.ebuild
\ No newline at end of file
diff --git a/sys-boot/grub/grub-2.06.ebuild b/sys-boot/grub/grub-2.06.ebuild
new file mode 100644
index 0000000..b2fd296
--- /dev/null
+++ b/sys-boot/grub/grub-2.06.ebuild
@@ -0,0 +1,88 @@
+# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+inherit bash-completion-r1 eutils toolchain-funcs multiprocessing
+
+DESCRIPTION="GNU GRUB 2 boot loader"
+HOMEPAGE="http://www.gnu.org/software/grub/"
+SRC_URI="ftp://ftp.gnu.org/gnu/grub/${P}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="-* amd64"
+
+PROVIDE="virtual/bootloader"
+
+export STRIP_MASK="*.img *.mod *.module"
+
+# The ordering doesn't seem to matter.
+PLATFORMS=( "efi" "pc" )
+TARGETS=( "i386" "x86_64" )
+
+src_prepare() {
+	epatch "${FILESDIR}/0001-Forward-port-ChromeOS-specific-GRUB-environment-vari.patch"
+	epatch "${FILESDIR}/0002-Forward-port-gptpriority-command-to-GRUB-2.00.patch"
+	epatch "${FILESDIR}/0005-strip-interp-from-diskboot.patch"
+	epatch "${FILESDIR}/b189992601-no-soft-float.patch"
+
+	bash autogen.sh || die
+}
+
+src_configure() {
+	local platform target
+	# Fix timestamps to prevent unnecessary rebuilding
+	find "${S}" -exec touch -r "${S}/configure" {} +
+	multijob_init
+	for platform in "${PLATFORMS[@]}" ; do
+		for target in "${TARGETS[@]}" ; do
+			mkdir -p ${target}-${platform}-build
+			pushd ${target}-${platform}-build >/dev/null
+			# GRUB defaults to a --program-prefix set based on target
+			# platform; explicitly set it to nothing to install unprefixed
+			# tools.  https://savannah.gnu.org/bugs/?39818
+			ECONF_SOURCE="${S}" multijob_child_init econf \
+				TARGET_CC="$(tc-getCC)" \
+				--disable-werror \
+				--disable-grub-mkfont \
+				--disable-grub-mount \
+				--disable-device-mapper \
+				--disable-efiemu \
+				--disable-libzfs \
+				--disable-nls \
+				--sbindir=/sbin \
+				--bindir=/bin \
+				--libdir=/$(get_libdir) \
+				--with-platform=${platform} \
+				--target=${target} \
+				--program-prefix=
+			popd >/dev/null
+		done
+	done
+	multijob_finish
+}
+
+src_compile() {
+	local platform target
+	multijob_init
+	for platform in "${PLATFORMS[@]}" ; do
+		for target in "${TARGETS[@]}" ; do
+			multijob_child_init \
+				emake -C ${target}-${platform}-build -j1
+		done
+	done
+	multijob_finish
+}
+
+src_install() {
+	local platform target
+	# The installations have several file conflicts that prevent
+	# parallel installation.
+	for platform in "${PLATFORMS[@]}" ; do
+		for target in "${TARGETS[@]}" ; do
+			emake -C ${target}-${platform}-build DESTDIR="${D}" \
+				install bashcompletiondir="$(get_bashcompdir)"
+		done
+	done
+}
diff --git a/sys-boot/libpayload/files/configs/config.cherry b/sys-boot/libpayload/files/configs/config.cherry
index 8dc8a80..521dbf8c 100644
--- a/sys-boot/libpayload/files/configs/config.cherry
+++ b/sys-boot/libpayload/files/configs/config.cherry
@@ -1,7 +1,7 @@
 CONFIG_LP_CHROMEOS=y
 CONFIG_LP_ARCH_ARM64=y
 CONFIG_LP_8250_SERIAL_CONSOLE=y
-CONFIG_LP_TIMER_MTK=y
+CONFIG_LP_TIMER_MTK_V2=y
 CONFIG_LP_USB_EHCI=y
 CONFIG_LP_USB_XHCI=y
 CONFIG_LP_USB_XHCI_MTK_QUIRK=y
diff --git a/sys-boot/libpayload/files/configs/config.corsola b/sys-boot/libpayload/files/configs/config.corsola
new file mode 100644
index 0000000..521dbf8c
--- /dev/null
+++ b/sys-boot/libpayload/files/configs/config.corsola
@@ -0,0 +1,7 @@
+CONFIG_LP_CHROMEOS=y
+CONFIG_LP_ARCH_ARM64=y
+CONFIG_LP_8250_SERIAL_CONSOLE=y
+CONFIG_LP_TIMER_MTK_V2=y
+CONFIG_LP_USB_EHCI=y
+CONFIG_LP_USB_XHCI=y
+CONFIG_LP_USB_XHCI_MTK_QUIRK=y
diff --git a/sys-boot/libpayload/files/configs/config.senor b/sys-boot/libpayload/files/configs/config.senor
new file mode 100644
index 0000000..ba08c41
--- /dev/null
+++ b/sys-boot/libpayload/files/configs/config.senor
@@ -0,0 +1,5 @@
+CONFIG_LP_CHROMEOS=y
+CONFIG_LP_ARCH_ARM64=y
+CONFIG_LP_QUALCOMM_QUPV3_SERIAL_CONSOLE=y
+CONFIG_LP_TIMER_ARM64_ARCH=y
+CONFIG_LP_USB_XHCI=y
diff --git a/sys-boot/libpayload/libpayload-0.0.1-r4178.ebuild b/sys-boot/libpayload/libpayload-0.0.1-r4178.ebuild
deleted file mode 100644
index dee7e78..0000000
--- a/sys-boot/libpayload/libpayload-0.0.1-r4178.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 2012 The Chromium OS Authors.
-# Distributed under the terms of the GNU General Public License v2
-
-# Change this version number when any change is made to configs/files under
-# libpayload and an auto-revbump is required.
-# VERSION=REVBUMP-0.0.17
-
-EAPI=7
-CROS_WORKON_COMMIT="9ea324c52e5e086de80f16b6a6b812854aad03ff"
-CROS_WORKON_TREE=("b5a9076b809964e8c39cac28e54a2e8ad99169c8" "705ef94c6144066c732bc3b44a3fed2e79debfd5" "3866d5128a8888a5cbbf8e2ea4a546537e16d2ce")
-CROS_WORKON_PROJECT="chromiumos/third_party/coreboot"
-CROS_WORKON_EGIT_BRANCH="chromeos-2016.05"
-
-DESCRIPTION="coreboot's libpayload library"
-HOMEPAGE="http://www.coreboot.org"
-LICENSE="GPL-2"
-KEYWORDS="*"
-IUSE="coreboot-sdk unibuild verbose"
-
-DEPEND="unibuild? ( chromeos-base/chromeos-config:= )"
-
-CROS_WORKON_LOCALNAME="coreboot"
-
-# kconfig and xcompile are reused from coreboot.
-# Everything else is not supposed to matter for
-# libpayload.
-CROS_WORKON_SUBTREE="payloads/libpayload util/kconfig util/xcompile"
-
-# Don't strip to ease remote GDB use (cbfstool strips final binaries anyway)
-STRIP_MASK="*"
-
-inherit cros-workon cros-board toolchain-funcs coreboot-sdk
-
-LIBPAYLOAD_BUILD_NAMES=()
-LIBPAYLOAD_BUILD_TARGETS=()
-
-src_unpack() {
-	cros-workon_src_unpack
-	S+="/payloads/libpayload"
-}
-
-src_configure() {
-	local name
-	local target
-
-	if use unibuild; then
-		while read -r name && read -r target; do
-			LIBPAYLOAD_BUILD_NAMES+=("${name}")
-			LIBPAYLOAD_BUILD_TARGETS+=("${target}")
-		done < <(cros_config_host get-firmware-build-combinations libpayload)
-	else
-		local board="$(get_current_board_with_variant)"
-		if [[ ! -s "${FILESDIR}/configs/config.${board}" ]]; then
-			board="$(get_current_board_no_variant)"
-		fi
-
-		LIBPAYLOAD_BUILD_NAMES=(legacy)
-		LIBPAYLOAD_BUILD_TARGETS=("${board}")
-	fi
-
-	for target in "${LIBPAYLOAD_BUILD_TARGETS[@]}"; do
-		if [[ ! -s "${FILESDIR}/configs/config.${target}" ]]; then
-			die "libpayload config does not exist for ${target}"
-		fi
-	done
-}
-
-# build libpayload for a certain config
-#   $1: path to the dotconfig
-#   $2: path to the build directory
-libpayload_compile() {
-	local dotconfig="$(realpath "$1")"
-	local objdir="$(realpath "$2")"
-	local OPTS=(
-		obj="${objdir}"
-		DOTCONFIG="${dotconfig}"
-	)
-	use verbose && OPTS+=( "V=1" )
-
-	yes "" | emake "${OPTS[@]}" oldconfig
-	emake "${OPTS[@]}"
-}
-
-src_compile() {
-	if ! use coreboot-sdk; then
-		tc-getCC
-		# Export the known cross compilers so there isn't a reliance
-		# on what the default profile is for exporting a compiler. The
-		# reasoning is that the firmware may need more than one to build
-		# and boot.
-		export CROSS_COMPILE_i386="i686-pc-linux-gnu-"
-		# For coreboot.org upstream architecture naming.
-		export CROSS_COMPILE_x86="i686-pc-linux-gnu-"
-		export CROSS_COMPILE_mipsel="mipsel-cros-linux-gnu-"
-		export CROSS_COMPILE_arm64="aarch64-cros-linux-gnu-"
-		export CROSS_COMPILE_arm="armv7a-cros-linux-gnu- armv7a-cros-linux-gnueabihf-"
-	else
-		export CROSS_COMPILE_x86=${COREBOOT_SDK_PREFIX_x86_32}
-		export CROSS_COMPILE_mipsel=${COREBOOT_SDK_PREFIX_mips}
-		export CROSS_COMPILE_arm64=${COREBOOT_SDK_PREFIX_arm64}
-		export CROSS_COMPILE_arm=${COREBOOT_SDK_PREFIX_arm}
-	fi
-
-	# we have all kinds of userland-cruft in CFLAGS that has no place in firmware.
-	# coreboot ignores CFLAGS, libpayload doesn't, so prune it.
-	unset CFLAGS
-
-	local unique_targets=()
-	readarray -t unique_targets \
-		< <(printf "%s\n" "${LIBPAYLOAD_BUILD_TARGETS[@]}" | sort -u)
-
-	local target
-	local dotconfig
-	local dotconfig_gdb
-	for target in "${unique_targets[@]}"; do
-		dotconfig="${FILESDIR}/configs/config.${target}"
-		cp "${dotconfig}" "${T}/config.${target}"
-		libpayload_compile "${T}/config.${target}" "${T}/${target}"
-
-		dotconfig_gdb="${T}/config_gdb.${target}"
-		# Build a second set of libraries with GDB support for developers
-		cp "${dotconfig}" "${dotconfig_gdb}"
-		(
-			echo
-			echo "CONFIG_LP_REMOTEGDB=y"
-		) >>"${dotconfig_gdb}"
-		libpayload_compile "${dotconfig_gdb}" "${T}/${target}.gdb"
-	done
-}
-
-src_install() {
-	local i
-	local name
-	local target
-
-	for i in "${!LIBPAYLOAD_BUILD_TARGETS[@]}"; do
-		name="${LIBPAYLOAD_BUILD_NAMES[${i}]}"
-		target="${LIBPAYLOAD_BUILD_TARGETS[${i}]}"
-
-		emake obj="${T}/${target}" DOTCONFIG="${T}/config.${target}" \
-			DESTDIR="${D}/firmware/${name}/libpayload" install
-		emake obj="${T}/${target}.gdb" DOTCONFIG="${T}/config_gdb.${target}" \
-			DESTDIR="${D}/firmware/${name}/libpayload.gdb" install
-	done
-}
diff --git a/sys-boot/libpayload/libpayload-0.0.1-r4197.ebuild b/sys-boot/libpayload/libpayload-0.0.1-r4197.ebuild
new file mode 100644
index 0000000..f5acd24
--- /dev/null
+++ b/sys-boot/libpayload/libpayload-0.0.1-r4197.ebuild
@@ -0,0 +1,152 @@
+# Copyright 2012 The Chromium OS Authors.
+# Distributed under the terms of the GNU General Public License v2
+
+# Change this version number when any change is made to configs/files under
+# libpayload and an auto-revbump is required.
+# VERSION=REVBUMP-0.0.18
+
+EAPI=7
+CROS_WORKON_COMMIT="925a3a4f5836e2f6f696975cf52c0ff6c86c9309"
+CROS_WORKON_TREE=("7214ebe25e04a80e92de5ca2640c95af554aa83b" "51a5dcd34b034f2cfac29061083859525130cf08" "bacdab8734794201bdb8ad183f79bab4051584db")
+CROS_WORKON_PROJECT="chromiumos/third_party/coreboot"
+CROS_WORKON_EGIT_BRANCH="chromeos-2016.05"
+
+DESCRIPTION="coreboot's libpayload library"
+HOMEPAGE="http://www.coreboot.org"
+LICENSE="GPL-2"
+KEYWORDS="*"
+IUSE="coreboot-sdk unibuild verbose"
+
+# No pre-unibuild boards build firmware on ToT anymore.  Assume
+# unibuild to keep ebuild clean.
+REQUIRED_USE="unibuild"
+
+DEPEND="chromeos-base/chromeos-config:="
+
+# While this package is never actually executed, we still need to specify
+# RDEPEND. A binary version of this package could exist that was built using an
+# outdated version of chromeos-config. Without the RDEPEND this stale binary
+# package is considered valid by the package manager. This is problematic
+# because we could have two binary packages installed having been build with
+# different versions of chromeos-config. By specifying the RDEPEND we force
+# the package manager to ensure the two versions use the same chromeos-config.
+RDEPEND="${DEPEND}"
+
+CROS_WORKON_LOCALNAME="coreboot"
+
+# kconfig and xcompile are reused from coreboot.
+# Everything else is not supposed to matter for
+# libpayload.
+CROS_WORKON_SUBTREE="payloads/libpayload util/kconfig util/xcompile"
+
+# Don't strip to ease remote GDB use (cbfstool strips final binaries anyway)
+STRIP_MASK="*"
+
+inherit cros-workon toolchain-funcs coreboot-sdk
+
+LIBPAYLOAD_BUILD_NAMES=()
+LIBPAYLOAD_BUILD_TARGETS=()
+
+src_unpack() {
+	cros-workon_src_unpack
+	S+="/payloads/libpayload"
+}
+
+src_configure() {
+	local name
+	local target
+
+	export GENERIC_COMPILER_PREFIX="invalid"
+
+	while read -r name && read -r target; do
+		LIBPAYLOAD_BUILD_NAMES+=("${name}")
+		LIBPAYLOAD_BUILD_TARGETS+=("${target}")
+	done < <(cros_config_host get-firmware-build-combinations libpayload)
+
+	for target in "${LIBPAYLOAD_BUILD_TARGETS[@]}"; do
+		if [[ ! -s "${FILESDIR}/configs/config.${target}" ]]; then
+			die "libpayload config does not exist for ${target}"
+		fi
+	done
+}
+
+# build libpayload for a certain config
+#   $1: path to the dotconfig
+#   $2: path to the build directory
+libpayload_compile() {
+	local dotconfig="$(realpath "$1")"
+	local objdir="$(realpath "$2")"
+	local OPTS=(
+		obj="${objdir}"
+		DOTCONFIG="${dotconfig}"
+		HOSTCC="$(tc-getBUILD_CC)"
+		HOSTCXX="$(tc-getBUILD_CXX)"
+	)
+	use verbose && OPTS+=( "V=1" )
+
+	yes "" | emake "${OPTS[@]}" oldconfig
+	emake "${OPTS[@]}"
+}
+
+src_compile() {
+	if ! use coreboot-sdk; then
+		tc-getCC
+		# Export the known cross compilers so there isn't a reliance
+		# on what the default profile is for exporting a compiler. The
+		# reasoning is that the firmware may need more than one to build
+		# and boot.
+		export CROSS_COMPILE_i386="i686-pc-linux-gnu-"
+		# For coreboot.org upstream architecture naming.
+		export CROSS_COMPILE_x86="i686-pc-linux-gnu-"
+		export CROSS_COMPILE_mipsel="mipsel-cros-linux-gnu-"
+		export CROSS_COMPILE_arm64="aarch64-cros-linux-gnu-"
+		export CROSS_COMPILE_arm="armv7a-cros-linux-gnu- armv7a-cros-linux-gnueabihf-"
+	else
+		export CROSS_COMPILE_x86=${COREBOOT_SDK_PREFIX_x86_32}
+		export CROSS_COMPILE_mipsel=${COREBOOT_SDK_PREFIX_mips}
+		export CROSS_COMPILE_arm64=${COREBOOT_SDK_PREFIX_arm64}
+		export CROSS_COMPILE_arm=${COREBOOT_SDK_PREFIX_arm}
+	fi
+
+	# we have all kinds of userland-cruft in CFLAGS that has no place in firmware.
+	# coreboot ignores CFLAGS, libpayload doesn't, so prune it.
+	unset CFLAGS
+
+	local unique_targets=()
+	readarray -t unique_targets \
+		< <(printf "%s\n" "${LIBPAYLOAD_BUILD_TARGETS[@]}" | sort -u)
+
+	local target
+	local dotconfig
+	local dotconfig_gdb
+	for target in "${unique_targets[@]}"; do
+		dotconfig="${FILESDIR}/configs/config.${target}"
+		cp "${dotconfig}" "${T}/config.${target}"
+		libpayload_compile "${T}/config.${target}" "${T}/${target}"
+
+		dotconfig_gdb="${T}/config_gdb.${target}"
+		# Build a second set of libraries with GDB support for developers
+		cp "${dotconfig}" "${dotconfig_gdb}"
+		(
+			echo
+			echo "CONFIG_LP_REMOTEGDB=y"
+		) >>"${dotconfig_gdb}"
+		libpayload_compile "${dotconfig_gdb}" "${T}/${target}.gdb"
+	done
+}
+
+src_install() {
+	local i
+	local name
+	local target
+
+	for i in "${!LIBPAYLOAD_BUILD_TARGETS[@]}"; do
+		name="${LIBPAYLOAD_BUILD_NAMES[${i}]}"
+		target="${LIBPAYLOAD_BUILD_TARGETS[${i}]}"
+
+		emake obj="${T}/${target}" DOTCONFIG="${T}/config.${target}" \
+			DESTDIR="${D}/firmware/${name}/libpayload" install
+		emake obj="${T}/${target}.gdb" DOTCONFIG="${T}/config_gdb.${target}" \
+			DESTDIR="${D}/firmware/${name}/libpayload.gdb" install
+	done
+}
diff --git a/sys-boot/libpayload/libpayload-9999.ebuild b/sys-boot/libpayload/libpayload-9999.ebuild
index 13a9635..80e107d 100644
--- a/sys-boot/libpayload/libpayload-9999.ebuild
+++ b/sys-boot/libpayload/libpayload-9999.ebuild
@@ -3,7 +3,7 @@
 
 # Change this version number when any change is made to configs/files under
 # libpayload and an auto-revbump is required.
-# VERSION=REVBUMP-0.0.17
+# VERSION=REVBUMP-0.0.18
 
 EAPI=7
 CROS_WORKON_PROJECT="chromiumos/third_party/coreboot"
@@ -15,7 +15,20 @@
 KEYWORDS="~*"
 IUSE="coreboot-sdk unibuild verbose"
 
-DEPEND="unibuild? ( chromeos-base/chromeos-config:= )"
+# No pre-unibuild boards build firmware on ToT anymore.  Assume
+# unibuild to keep ebuild clean.
+REQUIRED_USE="unibuild"
+
+DEPEND="chromeos-base/chromeos-config:="
+
+# While this package is never actually executed, we still need to specify
+# RDEPEND. A binary version of this package could exist that was built using an
+# outdated version of chromeos-config. Without the RDEPEND this stale binary
+# package is considered valid by the package manager. This is problematic
+# because we could have two binary packages installed having been build with
+# different versions of chromeos-config. By specifying the RDEPEND we force
+# the package manager to ensure the two versions use the same chromeos-config.
+RDEPEND="${DEPEND}"
 
 CROS_WORKON_LOCALNAME="coreboot"
 
@@ -27,7 +40,7 @@
 # Don't strip to ease remote GDB use (cbfstool strips final binaries anyway)
 STRIP_MASK="*"
 
-inherit cros-workon cros-board toolchain-funcs coreboot-sdk
+inherit cros-workon toolchain-funcs coreboot-sdk
 
 LIBPAYLOAD_BUILD_NAMES=()
 LIBPAYLOAD_BUILD_TARGETS=()
@@ -41,20 +54,12 @@
 	local name
 	local target
 
-	if use unibuild; then
-		while read -r name && read -r target; do
-			LIBPAYLOAD_BUILD_NAMES+=("${name}")
-			LIBPAYLOAD_BUILD_TARGETS+=("${target}")
-		done < <(cros_config_host get-firmware-build-combinations libpayload)
-	else
-		local board="$(get_current_board_with_variant)"
-		if [[ ! -s "${FILESDIR}/configs/config.${board}" ]]; then
-			board="$(get_current_board_no_variant)"
-		fi
+	export GENERIC_COMPILER_PREFIX="invalid"
 
-		LIBPAYLOAD_BUILD_NAMES=(legacy)
-		LIBPAYLOAD_BUILD_TARGETS=("${board}")
-	fi
+	while read -r name && read -r target; do
+		LIBPAYLOAD_BUILD_NAMES+=("${name}")
+		LIBPAYLOAD_BUILD_TARGETS+=("${target}")
+	done < <(cros_config_host get-firmware-build-combinations libpayload)
 
 	for target in "${LIBPAYLOAD_BUILD_TARGETS[@]}"; do
 		if [[ ! -s "${FILESDIR}/configs/config.${target}" ]]; then
@@ -72,6 +77,8 @@
 	local OPTS=(
 		obj="${objdir}"
 		DOTCONFIG="${dotconfig}"
+		HOSTCC="$(tc-getBUILD_CC)"
+		HOSTCXX="$(tc-getBUILD_CXX)"
 	)
 	use verbose && OPTS+=( "V=1" )
 
diff --git a/sys-boot/syslinux/Manifest b/sys-boot/syslinux/Manifest
new file mode 100644
index 0000000..10c5556
--- /dev/null
+++ b/sys-boot/syslinux/Manifest
@@ -0,0 +1 @@
+DIST syslinux-6.04-pre1.tar.xz 5283272 BLAKE2B 800e5977ed13b26a1756c33d8625e850631b642e26a86e3328196ddd998596693c3a26db0ada4c0ba78a4ba692a1cc01886b6eb693d877ddafcfb325ecdeb639 SHA512 7927dd39be8e2dcf4138a6fea33def67d19d938379d694f15b48fdd2f5924c028b7a9e7bd71d0c7c6630c203e9e2a54296628e530632ad5e6f55b1ebefe8fc98
diff --git a/sys-boot/syslinux/OWNERS b/sys-boot/syslinux/OWNERS
new file mode 100644
index 0000000..907d8c9
--- /dev/null
+++ b/sys-boot/syslinux/OWNERS
@@ -0,0 +1 @@
+tbrandston@google.com
diff --git a/sys-boot/syslinux/files/syslinux-6.03-sysmacros.patch b/sys-boot/syslinux/files/syslinux-6.03-sysmacros.patch
new file mode 100644
index 0000000..af464fe
--- /dev/null
+++ b/sys-boot/syslinux/files/syslinux-6.03-sysmacros.patch
@@ -0,0 +1,34 @@
+https://bugs.gentoo.org/579928
+
+From d84db34dbe39d55b4d7e868764c056689aa0793b Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Tue, 19 Apr 2016 01:56:41 -0400
+Subject: [PATCH] extlinux: pull in sys/sysmacros.h for major/minor/makedev
+
+These functions are defined in sys/sysmacros.h, so add the include to
+main.c.  This is already handled correctly in mountinfo.c.  Otherwise
+we get build failures like:
+
+main.o: In function 'find_device_sysfs':
+extlinux/main.c:1131: undefined reference to 'minor'
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ extlinux/main.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/extlinux/main.c b/extlinux/main.c
+index a7ebd49..ebff7ea 100644
+--- a/extlinux/main.c
++++ b/extlinux/main.c
+@@ -38,6 +38,7 @@
+ #include <sysexits.h>
+ #include <sys/ioctl.h>
+ #include <sys/stat.h>
++#include <sys/sysmacros.h>
+ #include <sys/types.h>
+ #include <sys/mount.h>
+ #include <sys/vfs.h>
+-- 
+2.7.4
+
diff --git a/sys-boot/syslinux/files/syslinux-6.04_pre1-fcommon.patch b/sys-boot/syslinux/files/syslinux-6.04_pre1-fcommon.patch
new file mode 100644
index 0000000..7d061db
--- /dev/null
+++ b/sys-boot/syslinux/files/syslinux-6.04_pre1-fcommon.patch
@@ -0,0 +1,54 @@
+https://bugs.gentoo.org/705730
+
+gcc-10 enabled f-no-common by default. Broke syslinux linking.
+--- a/mk/com32.mk
++++ b/mk/com32.mk
+@@ -47,6 +47,7 @@ GCCOPT += $(call gcc_ok,-falign-functions=0,-malign-functions=0)
+ GCCOPT += $(call gcc_ok,-falign-jumps=0,-malign-jumps=0)
+ GCCOPT += $(call gcc_ok,-falign-labels=0,-malign-labels=0)
+ GCCOPT += $(call gcc_ok,-falign-loops=0,-malign-loops=0)
++GCCOPT += $(call gcc_ok,-fcommon)
+ 
+ ifeq ($(FWCLASS),EFI)
+ GCCOPT += -mno-red-zone
+--- a/mk/elf.mk
++++ b/mk/elf.mk
+@@ -42,6 +42,7 @@ GCCOPT += $(call gcc_ok,-falign-functions=0,-malign-functions=0)
+ GCCOPT += $(call gcc_ok,-falign-jumps=0,-malign-jumps=0)
+ GCCOPT += $(call gcc_ok,-falign-labels=0,-malign-labels=0)
+ GCCOPT += $(call gcc_ok,-falign-loops=0,-malign-loops=0)
++GCCOPT += $(call gcc_ok,-fcommon)
+ 
+ com32 = $(topdir)/com32
+ core = $(topdir)/core
+--- a/mk/embedded.mk
++++ b/mk/embedded.mk
+@@ -51,6 +51,7 @@ GCCOPT    += $(call gcc_ok,-falign-jumps=0,-malign-jumps=0)
+ GCCOPT    += $(call gcc_ok,-falign-labels=0,-malign-labels=0)
+ GCCOPT    += $(call gcc_ok,-falign-loops=0,-malign-loops=0)
+ GCCOPT    += $(call gcc_ok,-fvisibility=hidden)
++GCCOPT    += $(call gcc_ok,-fcommon)
+ 
+ LIBGCC    := $(shell $(CC) $(GCCOPT) --print-libgcc)
+ 
+--- a/mk/lib.mk
++++ b/mk/lib.mk
+@@ -28,6 +28,7 @@ GCCOPT += $(call gcc_ok,-falign-functions=0,-malign-functions=0)
+ GCCOPT += $(call gcc_ok,-falign-jumps=0,-malign-jumps=0)
+ GCCOPT += $(call gcc_ok,-falign-labels=0,-malign-labels=0)
+ GCCOPT += $(call gcc_ok,-falign-loops=0,-malign-loops=0)
++GCCOPT += $(call gcc_ok,-fcommon)
+ 
+ INCLUDE	= -I$(SRC)
+ STRIP	= strip --strip-all -R .comment -R .note
+--- a/mk/efi.mk
++++ b/mk/efi.mk
+@@ -7,7 +7,7 @@ core = $(topdir)/core
+ # Set up architecture specifics; for cross compilation, set ARCH as apt
+ # gnuefi sets up architecture specifics in ia32 or x86_64 sub directories
+ # set up the LIBDIR and EFIINC for building for the appropriate architecture
+-GCCOPT := $(call gcc_ok,-fno-stack-protector,)
++GCCOPT := $(call gcc_ok,-fno-stack-protector,) $(call gcc_ok,-fcommon)
+ EFIINC = $(objdir)/include/efi
+ LIBDIR  = $(objdir)/lib
+ 
diff --git a/sys-boot/syslinux/files/syslinux-6.04_pre1-singleloadsegment.patch b/sys-boot/syslinux/files/syslinux-6.04_pre1-singleloadsegment.patch
new file mode 100644
index 0000000..db9b7d0
--- /dev/null
+++ b/sys-boot/syslinux/files/syslinux-6.04_pre1-singleloadsegment.patch
@@ -0,0 +1,304 @@
+Author: Lukas Schwaighofer <lukas@schwaighofer.name>
+Description: Force the linker to put all sections into a single PT_LOAD
+ segment. This is required when using binutils >= 2.31 which writes two PT_LOAD
+ segments by default. This is not supported by the wrapper.c script used to
+ convert the shared object into an elf binary.
+Forwarded: https://www.syslinux.org/archives/2018-August/026167.html
+
+---
+ efi/i386/syslinux.ld   | 37 +++++++++++++++++++++----------------
+ efi/x86_64/syslinux.ld | 37 +++++++++++++++++++++----------------
+ 2 files changed, 42 insertions(+), 32 deletions(-)
+
+diff --git a/efi/i386/syslinux.ld b/efi/i386/syslinux.ld
+index bab3fc7..5b4589d 100644
+--- a/efi/i386/syslinux.ld
++++ b/efi/i386/syslinux.ld
+@@ -19,6 +19,11 @@ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
+ OUTPUT_ARCH(i386)
+ ENTRY(_start)
+ 
++PHDRS
++{
++	all PT_LOAD ;
++}
++
+ SECTIONS
+ {
+ 	. = 0;
+@@ -31,7 +36,7 @@ SECTIONS
+ 		*(.text)
+ 		*(.text.*)
+ 		__text_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(16);
+ 
+@@ -40,7 +45,7 @@ SECTIONS
+ 		*(.rodata)
+ 		*(.rodata.*)
+ 		__rodata_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(4);
+ 
+@@ -49,14 +54,14 @@ SECTIONS
+ 		KEEP (*(SORT(.ctors.*)))
+ 		KEEP (*(.ctors))
+ 		__ctors_end = .;
+-	}
++	} :all
+ 
+ 	.dtors : {
+ 		__dtors_start = .;
+ 		KEEP (*(SORT(.dtors.*)))
+ 		KEEP (*(.dtors))
+ 		__dtors_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(4096);
+ 	.rel : {
+@@ -64,7 +69,7 @@ SECTIONS
+ 		*(.rel.data)
+ 		*(.rel.data.*)
+ 		*(.rel.ctors)
+-	}
++	} :all
+ 
+ 	. = ALIGN(4);
+ 
+@@ -72,14 +77,14 @@ SECTIONS
+ 		__gnu_hash_start = .;
+ 		*(.gnu.hash)
+ 		__gnu_hash_end = .;
+-	}
++	} :all
+ 
+ 
+ 	.dynsym : {
+ 		__dynsym_start = .;
+ 		*(.dynsym)
+ 		__dynsym_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(4);
+ 
+@@ -87,7 +92,7 @@ SECTIONS
+ 		__dynstr_start = .;
+ 		*(.dynstr)
+ 		__dynstr_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(4);
+ 
+@@ -104,7 +109,7 @@ SECTIONS
+ 		KEEP (*(.got.plt))
+ 		KEEP (*(.got))
+ 		__got_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(4);
+ 
+@@ -112,7 +117,7 @@ SECTIONS
+ 		__dynamic_start = .;
+ 		*(.dynamic)
+ 		__dynamic_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(16);
+ 
+@@ -122,19 +127,19 @@ SECTIONS
+ 		*(.data.*)
+ 		*(.lowmem)
+ 		__data_end = .;
+-	}
++	} :all
+ 
+ 	.reloc : {
+ 		*(.reloc)
+-	}
++	} :all
+ 
+ 	.symtab : {
+ 		*(.symtab)
+-	}
++	} :all
+ 
+ 	.strtab : {
+ 		*(.strtab)
+-	}
++	} :all
+ 
+ 	.bss (NOLOAD) : {
+ 		/* the EFI loader doesn't seem to like a .bss section,
+@@ -148,7 +153,7 @@ SECTIONS
+ 		__bss_end = .;
+ 		*(.sbss)
+ 		*(.scommon)
+-	}
++	} :all
+ 	__bss_len = ABSOLUTE(__bss_end) - ABSOLUTE(__bss_start);
+ 	__bss_dwords = (__bss_len + 3) >> 2;
+ 
+@@ -161,7 +166,7 @@ SECTIONS
+ 		*(.hugebss)
+ 		*(.hugebss.*)
+ 		__hugebss_end = .;
+-	}
++	} :all
+ 
+ 	_end = .;
+ 
+diff --git a/efi/x86_64/syslinux.ld b/efi/x86_64/syslinux.ld
+index 450641c..cad28a8 100644
+--- a/efi/x86_64/syslinux.ld
++++ b/efi/x86_64/syslinux.ld
+@@ -19,6 +19,11 @@ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64")
+ OUTPUT_ARCH(i386:x86-64)
+ ENTRY(_start)
+ 
++PHDRS
++{
++	all PT_LOAD ;
++}
++
+ SECTIONS
+ {
+ 	. = 0;
+@@ -31,7 +36,7 @@ SECTIONS
+ 		*(.text)
+ 		*(.text.*)
+ 		__text_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(16);
+ 
+@@ -40,7 +45,7 @@ SECTIONS
+ 		*(.rodata)
+ 		*(.rodata.*)
+ 		__rodata_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(4);
+ 
+@@ -49,14 +54,14 @@ SECTIONS
+ 		KEEP (*(SORT(.ctors.*)))
+ 		KEEP (*(.ctors))
+ 		__ctors_end = .;
+-	}
++	} :all
+ 
+ 	.dtors : {
+ 		__dtors_start = .;
+ 		KEEP (*(SORT(.dtors.*)))
+ 		KEEP (*(.dtors))
+ 		__dtors_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(4096);
+ 	.rel : {
+@@ -64,7 +69,7 @@ SECTIONS
+ 		*(.rel.data)
+ 		*(.rel.data.*)
+ 		*(.rel.ctors)
+-	}
++	} :all
+ 
+ 	. = ALIGN(4);
+ 
+@@ -72,14 +77,14 @@ SECTIONS
+ 		__gnu_hash_start = .;
+ 		*(.gnu.hash)
+ 		__gnu_hash_end = .;
+-	}
++	} :all
+ 
+ 
+ 	.dynsym : {
+ 		__dynsym_start = .;
+ 		*(.dynsym)
+ 		__dynsym_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(4);
+ 
+@@ -87,7 +92,7 @@ SECTIONS
+ 		__dynstr_start = .;
+ 		*(.dynstr)
+ 		__dynstr_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(4);
+ 
+@@ -104,7 +109,7 @@ SECTIONS
+ 		KEEP (*(.got.plt))
+ 		KEEP (*(.got))
+ 		__got_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(4);
+ 
+@@ -112,7 +117,7 @@ SECTIONS
+ 		__dynamic_start = .;
+ 		*(.dynamic)
+ 		__dynamic_end = .;
+-	}
++	} :all
+ 
+ 	. = ALIGN(16);
+ 
+@@ -122,19 +127,19 @@ SECTIONS
+ 		*(.data.*)
+ 		*(.lowmem)
+ 		__data_end = .;
+-	}
++	} :all
+ 
+ 	.reloc : {
+ 		*(.reloc)
+-	}
++	} :all
+ 
+ 	.symtab : {
+ 		*(.symtab)
+-	}
++	} :all
+ 
+ 	.strtab : {
+ 		*(.strtab)
+-	}
++	} :all
+ 
+ 	.bss (NOLOAD) : {
+ 		/* the EFI loader doesn't seem to like a .bss section,
+@@ -148,7 +153,7 @@ SECTIONS
+ 		__bss_end = .;
+ 		*(.sbss)
+ 		*(.scommon)
+-	}
++	} :all
+ 	__bss_len = ABSOLUTE(__bss_end) - ABSOLUTE(__bss_start);
+ 	__bss_dwords = (__bss_len + 3) >> 2;
+ 
+@@ -161,7 +166,7 @@ SECTIONS
+ 		*(.hugebss)
+ 		*(.hugebss.*)
+ 		__hugebss_end = .;
+-	}
++	} :all
+ 
+ 	_end = .;
+ 
diff --git a/sys-boot/syslinux/metadata.xml b/sys-boot/syslinux/metadata.xml
new file mode 100644
index 0000000..72e7472
--- /dev/null
+++ b/sys-boot/syslinux/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+	<email>chithanh@gentoo.org</email>
+</maintainer>
+<maintainer type="project">
+	<email>base-system@gentoo.org</email>
+	<name>Gentoo Base System</name>
+</maintainer>
+<upstream>
+	<remote-id type="cpe">cpe:/a:gentoo:syslinux</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/sys-boot/syslinux/syslinux-6.04_pre1-r3.ebuild b/sys-boot/syslinux/syslinux-6.04_pre1-r3.ebuild
new file mode 100644
index 0000000..f54dc8e
--- /dev/null
+++ b/sys-boot/syslinux/syslinux-6.04_pre1-r3.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="SYSLINUX, PXELINUX, ISOLINUX, EXTLINUX and MEMDISK bootloaders"
+HOMEPAGE="https://www.syslinux.org/"
+# Final releases in 6.xx/$PV.tar.* (literal "xx")
+# Testing releases in Testing/$PV/$PV.tar.*
+SRC_URI_DIR=${PV:0:1}.xx
+SRC_URI_TESTING=Testing/${PV:0:4}
+[[ ${PV/_alpha} != $PV ]] && SRC_URI_DIR=$SRC_URI_TESTING
+[[ ${PV/_beta} != $PV ]] && SRC_URI_DIR=$SRC_URI_TESTING
+[[ ${PV/_pre} != $PV ]] && SRC_URI_DIR=$SRC_URI_TESTING
+[[ ${PV/_rc} != $PV ]] && SRC_URI_DIR=$SRC_URI_TESTING
+SRC_URI="https://www.kernel.org/pub/linux/utils/boot/syslinux/${SRC_URI_DIR}/${P/_/-}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* amd64 x86"
+IUSE="custom-cflags"
+
+RDEPEND="sys-fs/mtools
+	dev-perl/Crypt-PasswdMD5
+	dev-perl/Digest-SHA1"
+DEPEND="${RDEPEND}
+	dev-lang/nasm
+	sys-apps/util-linux:=
+	>=sys-boot/gnu-efi-3.0u
+	virtual/os-headers"
+
+S=${WORKDIR}/${P/_/-}
+
+# This ebuild is a departure from the old way of rebuilding everything in syslinux
+# This departure is necessary since hpa doesn't support the rebuilding of anything other
+# than the installers.
+
+# These are executables which come precompiled and are run by the boot loader
+QA_PREBUILT="usr/share/${PN}/*.c32"
+
+# removed all the unpack/patching stuff since we aren't rebuilding the core stuff anymore
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.03-sysmacros.patch #579928
+	"${FILESDIR}"/${P}-singleloadsegment.patch #662678
+	"${FILESDIR}"/${P}-fcommon.patch #705730
+)
+
+src_prepare() {
+	default
+
+	rm -f gethostip #bug 137081
+
+	# Don't prestrip or override user LDFLAGS, bug #305783
+	local SYSLINUX_MAKEFILES="extlinux/Makefile linux/Makefile mtools/Makefile \
+		sample/Makefile utils/Makefile"
+	sed -i ${SYSLINUX_MAKEFILES} -e '/^LDFLAGS/d' || die "sed failed"
+
+	if use custom-cflags; then
+		sed -i ${SYSLINUX_MAKEFILES} \
+			-e 's|-g -Os||g' \
+			-e 's|-Os||g' \
+			-e 's|CFLAGS[[:space:]]\+=|CFLAGS +=|g' \
+			|| die "sed custom-cflags failed"
+	else
+		QA_FLAGS_IGNORED="
+			/sbin/extlinux
+			/usr/bin/memdiskfind
+			/usr/bin/gethostip
+			/usr/bin/isohybrid
+			/usr/bin/syslinux
+			"
+	fi
+	case ${ARCH} in
+		amd64)	loaderarch="efi64" ;;
+		x86)	loaderarch="efi32" ;;
+		*)	ewarn "Unsupported architecture, building installers only." ;;
+	esac
+
+	# building with ld.gold causes problems, bug #563364
+	if tc-ld-is-gold; then
+		ewarn "Building syslinux with the gold linker may cause problems, see bug #563364"
+		if [[ -z "${I_KNOW_WHAT_I_AM_DOING}" ]]; then
+			tc-ld-disable-gold
+			ewarn "set I_KNOW_WHAT_I_AM_DOING=1 to override this."
+		else
+			ewarn "Continuing anyway as requested."
+		fi
+	fi
+
+	tc-export AR CC LD OBJCOPY RANLIB
+}
+
+_emake() {
+	emake \
+		AR="${AR}" \
+		CC="${CC}" \
+		LD="${LD}" \
+		OBJCOPY="${OBJCOPY}" \
+		RANLIB="${RANLIB}" \
+		"$@"
+}
+
+src_compile() {
+	# build system abuses the LDFLAGS variable to pass arguments to ld
+	unset LDFLAGS
+	if [[ ! -z ${loaderarch} ]]; then
+		_emake ${loaderarch}
+	fi
+	_emake ${loaderarch} installer
+}
+
+src_install() {
+	# parallel install fails sometimes
+	einfo "loaderarch=${loaderarch}"
+	_emake -j1 INSTALLROOT="${D}" MANDIR=/usr/share/man bios ${loaderarch} install
+	dodoc README NEWS doc/*.txt
+}
diff --git a/sys-boot/u-boot/u-boot-2021.07-r2879.ebuild b/sys-boot/u-boot/u-boot-2021.07-r2879.ebuild
deleted file mode 100644
index 037d15c..0000000
--- a/sys-boot/u-boot/u-boot-2021.07-r2879.ebuild
+++ /dev/null
@@ -1,179 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("39ce6d27ad29fd324793a8d0c7db8ae712cc027c" "5c0fcf0f8725b98043a4b18f36e21489375d133a")
-CROS_WORKON_TREE=("de4f0c255aa3b757f43b4dd4f7a60f08ead04f30" "3bb07f6afc46a008c0dc9d3ae3f64b9b3273004c")
-CROS_WORKON_PROJECT=("chromiumos/third_party/u-boot" "chromiumos/platform/vboot_reference")
-CROS_WORKON_LOCALNAME=("u-boot/files" "../platform/vboot_reference")
-CROS_WORKON_EGIT_BRANCH=("chromeos-v2020.01" "master")
-VBOOT_REFERENCE_DESTDIR="${S}/vboot_reference"
-CROS_WORKON_DESTDIR=("${S}" "${VBOOT_REFERENCE_DESTDIR}")
-
-inherit toolchain-funcs flag-o-matic cros-workon
-
-DESCRIPTION="Das U-Boot boot loader"
-HOMEPAGE="http://www.denx.de/wiki/U-Boot"
-
-LICENSE="GPL-2"
-KEYWORDS="*"
-IUSE="dev generated_cros_config sandbox unibuild vboot werror"
-
-DEPEND="sandbox? ( media-libs/libsdl:= )"
-
-RDEPEND="${DEPEND}
-	chromeos-base/u-boot-scripts
-	!!sys-boot/chromeos-u-boot
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
-	"
-
-UB_BUILD_DIR="build"
-
-# To build for sandbox, check out the source:
-#
-#	cd src/third_party/u-boot/files
-#	git remote add dm git://git.denx.de/u-boot-dm.git
-#	git checkout dm/cros-working
-#
-# Then:
-#	cros_workon --host start u-boot
-#	USE="sandbox vboot" sudo -D emerge u-boot
-#	sudo chmod a+rw /firmware/image-u-boot.bin
-#	ln -s /firmware/image-u-boot.bin spi.bin
-#	/firmware/u-boot-tpl -d /firmware/u-boot.dtb.out \
-#		-L6 -c "host bind 0 $HOME/trunk/src/build/images/cheza/latest/chromiumos_image.bin; vboot go auto" -l
-#
-# See that it launches vboot (although without a functioning display) and
-# Ctrl-D attempts to boot the kernel.
-#
-# From outside the chroot:
-#
-#	ln -s  ${CROS}/chroot/firmware/image-u-boot.bin spi.bin
-#	${CROS}/chroot/firmware/u-boot-tpl -d \
-#		${CROS}/chroot/firmware/u-boot.dtb.out -L6 \
-#		-c "host bind 0 ${CROS}/src/build/images/cheza/latest/chromiumos_image.bin; vboot go auto" -l
-#
-# Outside the chroot the display and sound function correctly.
-
-# @FUNCTION: get_current_u_boot_config
-# @DESCRIPTION:
-# Finds the config for the current board by checking the master configuration.
-# The default is to use 'coreboot'.
-get_current_u_boot_config() {
-	local config
-
-	if use sandbox; then
-		config=chromeos_sandbox
-	else
-		config="$(cros_config_host get-firmware-build-targets u-boot)"
-	fi
-	echo "${config:-coreboot}"
-}
-
-umake() {
-	# Add `ARCH=` to reset ARCH env and let U-Boot choose it.
-	ARCH= emake "${COMMON_MAKE_FLAGS[@]}" "$@"
-}
-
-src_configure() {
-	local config
-
-	export LDFLAGS=$(raw-ldflags)
-	tc-export BUILD_CC
-
-	config="$(get_current_u_boot_config)"
-	[[ -n "${config}" ]] || die "No U-Boot config selected"
-	elog "Using U-Boot config: ${config}"
-
-	# Firmware related binaries are compiled with 32-bit toolchain
-	# on 64-bit platforms
-	if ! use cros_host && [[ ${CHOST} == x86_64-* ]]; then
-		CROSS_PREFIX="i686-pc-linux-gnu-"
-	else
-		CROSS_PREFIX="${CHOST}-"
-	fi
-
-	COMMON_MAKE_FLAGS=(
-		"CROSS_COMPILE=${CROSS_PREFIX}"
-		DEV_TREE_SEPARATE=1
-		"HOSTCC=${BUILD_CC}"
-		HOSTSTRIP=true
-		QEMU_ARCH=
-	)
-	if use vboot; then
-		COMMON_MAKE_FLAGS+=(
-			"VBOOT_SOURCE=${VBOOT_REFERENCE_DESTDIR}"
-			VBOOT_DEBUG=1
-		)
-	fi
-	if use dev; then
-		# Avoid hiding the errors and warnings
-		COMMON_MAKE_FLAGS+=(
-			-s
-			QUIET=1
-		)
-	else
-		COMMON_MAKE_FLAGS+=(
-			-k
-		)
-	fi
-	use werror && COMMON_MAKE_FLAGS+=( WERROR=y )
-
-	BUILD_FLAGS=(
-		"O=${UB_BUILD_DIR}"
-	)
-
-	umake "${BUILD_FLAGS[@]}" distclean
-	umake "${BUILD_FLAGS[@]}" "${config}_defconfig"
-}
-
-src_compile() {
-	umake "${BUILD_FLAGS[@]}" all
-}
-
-src_install() {
-	local inst_dir="/firmware"
-	local files_to_copy=(
-		System.map
-		u-boot.bin
-		u-boot.dtb
-		u-boot.dtb.out
-		u-boot.img
-	)
-	local exec_to_copy=(
-		u-boot
-		spl/u-boot-spl
-		tpl/u-boot-tpl
-	)
-	local f
-
-	if ! use sandbox; then
-		files_to_copy+=( "${exec_to_copy[@]}" )
-		exec_to_copy=()
-	fi
-
-	insinto "${inst_dir}"
-	exeinto "${inst_dir}"
-
-	for f in "${files_to_copy[@]}"; do
-		[[ -f "${UB_BUILD_DIR}/${f}" ]] &&
-			doins "${f/#/${UB_BUILD_DIR}/}"
-	done
-
-	for f in "${exec_to_copy[@]}"; do
-		[[ -f "${UB_BUILD_DIR}/${f}" ]] &&
-			doexe "${f/#/${UB_BUILD_DIR}/}"
-	done
-
-	# Install the full image needed by sandbox.
-	if use vboot; then
-		newins "${UB_BUILD_DIR}/image.bin" image-u-boot.bin
-	fi
-
-	insinto "${inst_dir}/dtb"
-	doins "${UB_BUILD_DIR}/dts/"*.dtb
-}
diff --git a/sys-boot/u-boot/u-boot-2021.07-r2934.ebuild b/sys-boot/u-boot/u-boot-2021.07-r2934.ebuild
new file mode 100644
index 0000000..3a708e4
--- /dev/null
+++ b/sys-boot/u-boot/u-boot-2021.07-r2934.ebuild
@@ -0,0 +1,175 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("39ce6d27ad29fd324793a8d0c7db8ae712cc027c" "1269365169791c65a6bf6f364583209195874138")
+CROS_WORKON_TREE=("de4f0c255aa3b757f43b4dd4f7a60f08ead04f30" "63abdfe41a1746dfd5452f030b2ff4646a15ff76")
+CROS_WORKON_PROJECT=("chromiumos/third_party/u-boot" "chromiumos/platform/vboot_reference")
+CROS_WORKON_LOCALNAME=("u-boot/files" "../platform/vboot_reference")
+CROS_WORKON_EGIT_BRANCH=("chromeos-v2020.01" "master")
+VBOOT_REFERENCE_DESTDIR="${S}/vboot_reference"
+CROS_WORKON_DESTDIR=("${S}" "${VBOOT_REFERENCE_DESTDIR}")
+
+inherit toolchain-funcs flag-o-matic cros-workon cros-unibuild
+
+DESCRIPTION="Das U-Boot boot loader"
+HOMEPAGE="http://www.denx.de/wiki/U-Boot"
+
+LICENSE="GPL-2"
+KEYWORDS="*"
+IUSE="dev sandbox vboot werror"
+
+DEPEND="sandbox? ( media-libs/libsdl:= )"
+
+RDEPEND="${DEPEND}
+	chromeos-base/u-boot-scripts
+	!!sys-boot/chromeos-u-boot
+	"
+
+UB_BUILD_DIR="build"
+
+# To build for sandbox, check out the source:
+#
+#	cd src/third_party/u-boot/files
+#	git remote add dm git://git.denx.de/u-boot-dm.git
+#	git checkout dm/cros-working
+#
+# Then:
+#	cros_workon --host start u-boot
+#	USE="sandbox vboot" sudo -D emerge u-boot
+#	sudo chmod a+rw /firmware/image-u-boot.bin
+#	ln -s /firmware/image-u-boot.bin spi.bin
+#	/firmware/u-boot-tpl -d /firmware/u-boot.dtb.out \
+#		-L6 -c "host bind 0 $HOME/trunk/src/build/images/cheza/latest/chromiumos_image.bin; vboot go auto" -l
+#
+# See that it launches vboot (although without a functioning display) and
+# Ctrl-D attempts to boot the kernel.
+#
+# From outside the chroot:
+#
+#	ln -s  ${CROS}/chroot/firmware/image-u-boot.bin spi.bin
+#	${CROS}/chroot/firmware/u-boot-tpl -d \
+#		${CROS}/chroot/firmware/u-boot.dtb.out -L6 \
+#		-c "host bind 0 ${CROS}/src/build/images/cheza/latest/chromiumos_image.bin; vboot go auto" -l
+#
+# Outside the chroot the display and sound function correctly.
+
+# @FUNCTION: get_current_u_boot_config
+# @DESCRIPTION:
+# Finds the config for the current board by checking the master configuration.
+# The default is to use 'coreboot'.
+get_current_u_boot_config() {
+	local config
+
+	if use sandbox; then
+		config=chromeos_sandbox
+	else
+		config="$(cros_config_host get-firmware-build-targets u-boot)"
+	fi
+	echo "${config:-coreboot}"
+}
+
+umake() {
+	# Add `ARCH=` to reset ARCH env and let U-Boot choose it.
+	ARCH= emake "${COMMON_MAKE_FLAGS[@]}" "$@"
+}
+
+src_configure() {
+	local config
+
+	export LDFLAGS=$(raw-ldflags)
+	tc-export BUILD_CC
+
+	config="$(get_current_u_boot_config)"
+	[[ -n "${config}" ]] || die "No U-Boot config selected"
+	elog "Using U-Boot config: ${config}"
+
+	# Firmware related binaries are compiled with 32-bit toolchain
+	# on 64-bit platforms
+	if ! use cros_host && [[ ${CHOST} == x86_64-* ]]; then
+		CROSS_PREFIX="i686-pc-linux-gnu-"
+	else
+		CROSS_PREFIX="${CHOST}-"
+	fi
+
+	COMMON_MAKE_FLAGS=(
+		"CROSS_COMPILE=${CROSS_PREFIX}"
+		DEV_TREE_SEPARATE=1
+		"HOSTCC=${BUILD_CC}"
+		HOSTSTRIP=true
+		QEMU_ARCH=
+	)
+	if use vboot; then
+		COMMON_MAKE_FLAGS+=(
+			"VBOOT_SOURCE=${VBOOT_REFERENCE_DESTDIR}"
+			VBOOT_DEBUG=1
+		)
+	fi
+	if use dev; then
+		# Avoid hiding the errors and warnings
+		COMMON_MAKE_FLAGS+=(
+			-s
+			QUIET=1
+		)
+	else
+		COMMON_MAKE_FLAGS+=(
+			-k
+		)
+	fi
+	use werror && COMMON_MAKE_FLAGS+=( WERROR=y )
+
+	BUILD_FLAGS=(
+		"O=${UB_BUILD_DIR}"
+	)
+
+	umake "${BUILD_FLAGS[@]}" distclean
+	umake "${BUILD_FLAGS[@]}" "${config}_defconfig"
+}
+
+src_compile() {
+	umake "${BUILD_FLAGS[@]}" all
+}
+
+src_install() {
+	local inst_dir="/firmware"
+	local files_to_copy=(
+		System.map
+		u-boot.bin
+		u-boot.dtb
+		u-boot.dtb.out
+		u-boot.img
+	)
+	local exec_to_copy=(
+		u-boot
+		spl/u-boot-spl
+		tpl/u-boot-tpl
+	)
+	local f
+
+	if ! use sandbox; then
+		files_to_copy+=( "${exec_to_copy[@]}" )
+		exec_to_copy=()
+	fi
+
+	insinto "${inst_dir}"
+	exeinto "${inst_dir}"
+
+	for f in "${files_to_copy[@]}"; do
+		[[ -f "${UB_BUILD_DIR}/${f}" ]] &&
+			doins "${f/#/${UB_BUILD_DIR}/}"
+	done
+
+	for f in "${exec_to_copy[@]}"; do
+		[[ -f "${UB_BUILD_DIR}/${f}" ]] &&
+			doexe "${f/#/${UB_BUILD_DIR}/}"
+	done
+
+	# Install the full image needed by sandbox.
+	if use vboot; then
+		newins "${UB_BUILD_DIR}/image.bin" image-u-boot.bin
+	fi
+
+	insinto "${inst_dir}/dtb"
+	doins "${UB_BUILD_DIR}/dts/"*.dtb
+}
diff --git a/sys-boot/u-boot/u-boot-9999.ebuild b/sys-boot/u-boot/u-boot-9999.ebuild
index 02f8c48..c4cd094 100644
--- a/sys-boot/u-boot/u-boot-9999.ebuild
+++ b/sys-boot/u-boot/u-boot-9999.ebuild
@@ -9,24 +9,20 @@
 VBOOT_REFERENCE_DESTDIR="${S}/vboot_reference"
 CROS_WORKON_DESTDIR=("${S}" "${VBOOT_REFERENCE_DESTDIR}")
 
-inherit toolchain-funcs flag-o-matic cros-workon
+inherit toolchain-funcs flag-o-matic cros-workon cros-unibuild
 
 DESCRIPTION="Das U-Boot boot loader"
 HOMEPAGE="http://www.denx.de/wiki/U-Boot"
 
 LICENSE="GPL-2"
 KEYWORDS="~*"
-IUSE="dev generated_cros_config sandbox unibuild vboot werror"
+IUSE="dev sandbox vboot werror"
 
 DEPEND="sandbox? ( media-libs/libsdl:= )"
 
 RDEPEND="${DEPEND}
 	chromeos-base/u-boot-scripts
 	!!sys-boot/chromeos-u-boot
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
 	"
 
 UB_BUILD_DIR="build"
diff --git a/sys-devel/arc-llvm/Manifest b/sys-devel/arc-llvm/Manifest
index ce59ca9..0966515 100644
--- a/sys-devel/arc-llvm/Manifest
+++ b/sys-devel/arc-llvm/Manifest
@@ -1,2 +1,2 @@
-DIST llvm-9.0.0-manpages.tar.bz2 158546 BLAKE2B eed6235698a0b5993affe305f7fd22cd4cf444adf931275a1685f2049a5f17cf2933907577d9ce142348a3c579769b0436aa2b5a9a953958504125a8c3e83b7d SHA512 64c8d18061eb2870b379a1df485be0b61eac07cb10b3f97347b54b2ee326faa63437ca04466776be282e120dd3f6147e14fffdd38ca370db85748fe5eb54d764
-DIST llvm-9.0.0.src.tar.xz 32994768 BLAKE2B 7f09bff9bcada95ab9c920c78aef92b57e665d9188bab39c734084ceb03a801c942fed48ea77fabeeb6110c648cb69363c659a6ce93ebf67dbba5c187219b13b SHA512 1bb3341e1d231559b948f1505b33c2e2e03989f9b8bbfef0e0cdaff5ac43f85574c9ec5ac53399b914f497d6899425d861411024e8d7e1d1a338c1c6951ac658
+DIST llvm-12.0.1-manpages.tar.bz2 191582 BLAKE2B a049cd305c257875d47e92d703c51aee8225854f999eddbd530c7a978704a981b05bc0819ba31a2f2a218d3569b078f0deb01b0eeb385966253b54a0fdc090d1 SHA512 9931a57f843709aed59193524fe980af695e4e23c8f53ec3cff308677ba4fc520ca58032b50b68440c7762305855317d9a705fe5ccbb543fb104f4deb5d10ea5
+DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1
diff --git a/sys-devel/arc-llvm/arc-llvm-12.0.1-r2.ebuild b/sys-devel/arc-llvm/arc-llvm-12.0.1-r2.ebuild
new file mode 120000
index 0000000..0f83999
--- /dev/null
+++ b/sys-devel/arc-llvm/arc-llvm-12.0.1-r2.ebuild
@@ -0,0 +1 @@
+arc-llvm-12.0.1.ebuild
\ No newline at end of file
diff --git a/sys-devel/arc-llvm/arc-llvm-12.0.1.ebuild b/sys-devel/arc-llvm/arc-llvm-12.0.1.ebuild
new file mode 100644
index 0000000..9d7e498
--- /dev/null
+++ b/sys-devel/arc-llvm/arc-llvm-12.0.1.ebuild
@@ -0,0 +1,272 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+MY_PN=llvm
+MY_P=${MY_PN}-${PV}
+S="${WORKDIR}/${P}"
+
+: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
+# (needed due to CMAKE_BUILD_TYPE != Gentoo)
+CMAKE_MIN_VERSION=3.7.0-r1
+PYTHON_COMPAT=( python3_{6..9} )
+
+inherit cmake-utils flag-o-matic multilib-minimal \
+	multiprocessing pax-utils python-any-r1 toolchain-funcs arc-build eapi7-ver
+
+DESCRIPTION="Low Level Virtual Machine"
+HOMEPAGE="https://llvm.org/"
+SRC_URI="https://github.com/llvm/llvm-project/archive/llvmorg-${PV/_/-}.tar.gz
+	!doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/${MY_P}-manpages.tar.bz2 )"
+
+# Keep in sync with CMakeLists.txt
+ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
+	NVPTX PowerPC Sparc SystemZ WebAssembly X86 XCore )
+ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
+
+# Additional licenses:
+# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD.
+# 2. ARM backend: LLVM Software Grant by ARM.
+# 3. MD5 code: public-domain.
+# 4. Tests (not installed):
+#  a. gtest: BSD.
+#  b. YAML tests: MIT.
+
+LICENSE="UoI-NCSA rc BSD public-domain
+	llvm_targets_ARM? ( LLVM-Grant )"
+SLOT="$(ver_cut 1)"
+KEYWORDS="*"
+IUSE="debug doc exegesis libedit libffi ncurses test xar xml
+	kernel_Darwin ${ALL_LLVM_TARGETS[*]}"
+RESTRICT="!test? ( test )"
+
+# There are no file collisions between these versions but having :0
+# installed means llvm-config there will take precedence.
+RDEPEND="!sys-devel/arc-llvm:0"
+# Remove previous version of llvm to avoid file collisions, since all slots end
+# up in the same install directory.
+RDEPEND="${RDEPEND}
+	!<sys-devel/arc-llvm-${SLOT}"
+
+REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )"
+
+S=${WORKDIR}/llvm-project-llvmorg-${PV}/llvm
+
+HOST_DIR="${WORKDIR}/${PF}-${CBUILD}"
+
+# least intrusive of all
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+src_prepare() {
+	# Fix llvm-config for shared linking and sane flags
+	# https://bugs.gentoo.org/show_bug.cgi?id=565358
+	eapply "${FILESDIR}"/9999/0007-llvm-config-Clean-up-exported-values-update-for-shar.patch
+
+	# Don't install static libraries when not requested
+	eapply "${FILESDIR}/arc-llvm-9.0.0-no-static-libraries.patch"
+
+	# disable use of SDK on OSX, bug #568758
+	sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die
+
+	# User patches + QA
+	eapply_user
+}
+
+build_host_tool() {
+	local tool="$1"
+	# Use host toolchain when building for the host.
+	local CC=clang
+	local CXX=clang++
+	local CFLAGS=''
+	local CXXFLAGS=''
+	local LDFLAGS=''
+	mkdir -p "${HOST_DIR}" || die
+	cd "${HOST_DIR}" || die
+	local libdir=$(get_libdir)
+	cmake -DLLVM_LIBDIR_SUFFIX=${libdir#lib} \
+		-DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" \
+		-DCMAKE_BUILD_TYPE=RelWithDebInfo \
+		-G "Unix Makefiles" ${S}
+	# Settings for the target and host may differ (e.g. system libs), but we
+	# need llvm-config's output to match the target behavior. Copy the
+	# config from the target into the host before embedding into the binary.
+	if [[ -f "${BUILD_DIR}/${tool}/BuildVariables.inc" ]]; then
+		cp "${BUILD_DIR}/${tool}/BuildVariables.inc" \
+			"${HOST_DIR}/${tool}"
+	fi
+	cd "${HOST_DIR}/${tool}" || die
+	emake
+}
+
+build_host_tblgen() {
+	build_host_tool "utils/TableGen"
+}
+
+build_host_config() {
+	build_host_tool "tools/llvm-config"
+	mv "${HOST_DIR}/bin/llvm-config" "${HOST_DIR}/bin/llvm-config-${ABI}"
+}
+
+src_configure() {
+	arc-build-select-clang
+	multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+	local ffi_cflags ffi_ldflags
+	if use libffi; then
+		ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
+		ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi)
+	fi
+
+	local libdir=$(get_libdir)
+	local mycmakeargs=(
+		# disable appending VCS revision to the version to improve
+		# direct cache hit ratio
+		-DLLVM_APPEND_VC_REV=OFF
+		-DCMAKE_INSTALL_PREFIX="${ARC_PREFIX}/build"
+		-DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+		
+		-DLLVM_BUILD_LLVM_DYLIB=ON
+		-DLLVM_LINK_LLVM_DYLIB=ON
+
+		-DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+		-DLLVM_BUILD_TESTS=$(usex test)
+		-DLLVM_BUILD_TOOLS=OFF
+		-DLLVM_BUILD_RUNTIMES=OFF
+		-DLLVM_TOOL_LTO_BUILD=OFF
+
+		-DLLVM_ENABLE_FFI=$(usex libffi)
+		-DLLVM_ENABLE_LIBEDIT=$(usex libedit)
+		-DLLVM_ENABLE_TERMINFO=$(usex ncurses)
+		-DLLVM_ENABLE_LIBXML2=$(usex xml)
+		-DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+		-DLLVM_ENABLE_LIBPFM=$(usex exegesis)
+		-DLLVM_ENABLE_EH=OFF
+		-DLLVM_ENABLE_RTTI=OFF
+		-DLLVM_ENABLE_ZLIB=OFF
+
+		-DWITH_POLLY=OFF # TODO
+
+		-DLLVM_HOST_TRIPLE="${CHOST}"
+
+		-DFFI_INCLUDE_DIR="${ffi_cflags#-I}"
+		-DFFI_LIBRARY_DIR="${ffi_ldflags#-L}"
+		# used only for llvm-objdump tool
+		-DHAVE_LIBXAR=$(multilib_native_usex xar 1 0)
+
+		# disable OCaml bindings (now in dev-ml/llvm-ocaml)
+		-DOCAMLFIND=NO
+	)
+
+#	Note: go bindings have no CMake rules at the moment
+#	but let's kill the check in case they are introduced
+#	if ! multilib_is_native_abi || ! use go; then
+		mycmakeargs+=(
+			-DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND
+		)
+#	fi
+
+	use test && mycmakeargs+=(
+		-DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}"
+	)
+
+	if multilib_is_native_abi; then
+		mycmakeargs+=(
+			-DLLVM_BUILD_DOCS=$(usex doc)
+			-DLLVM_ENABLE_OCAMLDOC=OFF
+			-DLLVM_ENABLE_SPHINX=$(usex doc)
+			-DLLVM_ENABLE_DOXYGEN=OFF
+			-DLLVM_INSTALL_UTILS=ON
+		)
+	fi
+
+	if tc-is-cross-compiler; then
+		# Force LLVM_BUILD_TOOLS=ON to ensure build_host_tools builds
+		# llvm-config
+		build_host_tblgen
+		# die early if the build tools are not installed
+		[[ -x "${HOST_DIR}/bin/llvm-tblgen" ]] \
+			|| die "${HOST_DIR}/bin/llvm-tblgen not found or usable"
+		mycmakeargs+=(
+			-DCMAKE_CROSSCOMPILING=ON
+			-DLLVM_TABLEGEN="${HOST_DIR}/bin/llvm-tblgen"
+		)
+	fi
+
+	# workaround BMI bug in gcc-7 (fixed in 7.4)
+	# https://bugs.gentoo.org/649880
+	# apply only to x86, https://bugs.gentoo.org/650506
+	if tc-is-gcc && [[ ${MULTILIB_ABI_FLAG} == abi_x86* ]] &&
+			[[ $(gcc-major-version) -eq 7 && $(gcc-minor-version) -lt 4 ]]
+	then
+		local CFLAGS="${CFLAGS} -mno-bmi"
+		local CXXFLAGS="${CXXFLAGS} -mno-bmi"
+	fi
+
+	# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+	use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+	cmake-utils_src_configure
+}
+
+multilib_src_compile() {
+	cmake-utils_src_compile
+
+	pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld
+	pax-mark m "${BUILD_DIR}"/bin/lli
+	pax-mark m "${BUILD_DIR}"/bin/lli-child-target
+
+	if use test; then
+		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests
+		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests
+		pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests
+	fi
+	
+	build_host_config
+}
+
+multilib_src_test() {
+	# respect TMPDIR!
+	local -x LIT_PRESERVES_TMP=1
+	cmake-utils_src_make check
+}
+
+src_install() {
+	local LLVM_LDPATHS=()
+	multilib-minimal_src_install
+}
+
+multilib_src_install() {
+	cmake-utils_src_install
+
+	into ${ARC_PREFIX}/build
+	newbin "${HOST_DIR}/bin/llvm-config-${ABI}" "llvm-config-host-${ABI}"
+
+	# Manually copy libLLVM-8.0.1.so into the android container.
+	# TODO(b/112313068): Statically link with this instead of installing
+	# this shared library.
+	into "${ARC_PREFIX}/vendor"
+	dolib $(get_libdir)/libLLVM-${SLOT}.so
+
+	# Then replace the copy in the build directory with a symlink to the
+	# vendor image copy.
+	dosym ../../vendor/$(get_libdir)/libLLVM-${SLOT}.so "${ARC_PREFIX}/build/$(get_libdir)/libLLVM-${SLOT}.so"
+}
+
+multilib_src_install_all() {
+	local LLVM_CONFIG_HOST="${D}/${ARC_PREFIX}/build/bin/llvm-config-host"
+	cat > "${LLVM_CONFIG_HOST}" <<EOF
+#!/bin/bash
+
+ABI_BIN="\$(dirname ""\$0"")/llvm-config-host-\${ABI}"
+
+if [[ -e "\${ABI_BIN}" ]]; then
+	exec "\${ABI_BIN}" "\$@"
+else
+	echo "\$0: Unsupported ABI: \${ABI}"
+	exit 1
+fi
+EOF
+	chmod a+rx "${LLVM_CONFIG_HOST}" || die
+}
diff --git a/sys-devel/arc-llvm/arc-llvm-9.0.0-r2.ebuild b/sys-devel/arc-llvm/arc-llvm-9.0.0-r2.ebuild
deleted file mode 120000
index 0372d92..0000000
--- a/sys-devel/arc-llvm/arc-llvm-9.0.0-r2.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-arc-llvm-9.0.0.ebuild
\ No newline at end of file
diff --git a/sys-devel/arc-llvm/arc-llvm-9.0.0.ebuild b/sys-devel/arc-llvm/arc-llvm-9.0.0.ebuild
deleted file mode 100644
index 733a278..0000000
--- a/sys-devel/arc-llvm/arc-llvm-9.0.0.ebuild
+++ /dev/null
@@ -1,271 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-MY_PN=llvm
-MY_P=${MY_PN}-${PV}
-S="${WORKDIR}/${P}"
-
-: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
-# (needed due to CMAKE_BUILD_TYPE != Gentoo)
-CMAKE_MIN_VERSION=3.7.0-r1
-PYTHON_COMPAT=( python3_{6..9} )
-
-inherit cmake-utils flag-o-matic multilib-minimal \
-	multiprocessing pax-utils python-any-r1 toolchain-funcs arc-build eapi7-ver
-
-DESCRIPTION="Low Level Virtual Machine"
-HOMEPAGE="https://llvm.org/"
-SRC_URI="https://github.com/llvm/llvm-project/releases/download/llvmorg-${PV}/${MY_P}.src.tar.xz
-	!doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/${MY_P}-manpages.tar.bz2 )"
-
-# Keep in sync with CMakeLists.txt
-ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
-	NVPTX PowerPC Sparc SystemZ WebAssembly X86 XCore )
-ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
-
-# Additional licenses:
-# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD.
-# 2. ARM backend: LLVM Software Grant by ARM.
-# 3. MD5 code: public-domain.
-# 4. Tests (not installed):
-#  a. gtest: BSD.
-#  b. YAML tests: MIT.
-
-LICENSE="UoI-NCSA rc BSD public-domain
-	llvm_targets_ARM? ( LLVM-Grant )"
-SLOT="$(ver_cut 1)"
-KEYWORDS="*"
-IUSE="debug doc exegesis libedit libffi ncurses test xar xml
-	kernel_Darwin ${ALL_LLVM_TARGETS[*]}"
-RESTRICT="!test? ( test )"
-
-# There are no file collisions between these versions but having :0
-# installed means llvm-config there will take precedence.
-RDEPEND="!sys-devel/arc-llvm:0"
-# Remove previous version of llvm to avoid file collisions, since all slots end
-# up in the same install directory.
-RDEPEND="${RDEPEND}
-	!<sys-devel/arc-llvm-${SLOT}"
-
-REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )"
-
-S=${WORKDIR}/${MY_P}.src
-
-HOST_DIR="${WORKDIR}/${PF}-${CBUILD}"
-
-# least intrusive of all
-CMAKE_BUILD_TYPE=RelWithDebInfo
-
-src_prepare() {
-	# Fix llvm-config for shared linking and sane flags
-	# https://bugs.gentoo.org/show_bug.cgi?id=565358
-	eapply "${FILESDIR}"/9999/0007-llvm-config-Clean-up-exported-values-update-for-shar.patch
-
-	# Don't install static libraries when not requested
-	eapply "${FILESDIR}/arc-llvm-9.0.0-no-static-libraries.patch"
-
-	# disable use of SDK on OSX, bug #568758
-	sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die
-
-	# User patches + QA
-	eapply_user
-}
-
-build_host_tool() {
-	local tool="$1"
-	# Use host toolchain when building for the host.
-	local CC=clang
-	local CXX=clang++
-	local CFLAGS=''
-	local CXXFLAGS=''
-	local LDFLAGS=''
-	mkdir -p "${HOST_DIR}" || die
-	cd "${HOST_DIR}" || die
-	local libdir=$(get_libdir)
-	cmake -DLLVM_LIBDIR_SUFFIX=${libdir#lib} \
-		-DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" \
-		-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-		-G "Unix Makefiles" ${S}
-	# Settings for the target and host may differ (e.g. system libs), but we
-	# need llvm-config's output to match the target behavior. Copy the
-	# config from the target into the host before embedding into the binary.
-	if [[ -f "${BUILD_DIR}/${tool}/BuildVariables.inc" ]]; then
-		cp "${BUILD_DIR}/${tool}/BuildVariables.inc" \
-			"${HOST_DIR}/${tool}"
-	fi
-	cd "${HOST_DIR}/${tool}" || die
-	emake
-}
-
-build_host_tblgen() {
-	build_host_tool "utils/TableGen"
-}
-
-build_host_config() {
-	build_host_tool "tools/llvm-config"
-	mv "${HOST_DIR}/bin/llvm-config" "${HOST_DIR}/bin/llvm-config-${ABI}"
-}
-
-src_configure() {
-	arc-build-select-clang
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	local ffi_cflags ffi_ldflags
-	if use libffi; then
-		ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
-		ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi)
-	fi
-
-	local libdir=$(get_libdir)
-	local mycmakeargs=(
-		# disable appending VCS revision to the version to improve
-		# direct cache hit ratio
-		-DLLVM_APPEND_VC_REV=OFF
-		-DCMAKE_INSTALL_PREFIX="${ARC_PREFIX}/build"
-		-DLLVM_LIBDIR_SUFFIX=${libdir#lib}
-		
-		-DLLVM_BUILD_LLVM_DYLIB=ON
-		-DLLVM_LINK_LLVM_DYLIB=ON
-
-		-DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
-		-DLLVM_BUILD_TESTS=$(usex test)
-		-DLLVM_BUILD_TOOLS=OFF
-		-DLLVM_BUILD_RUNTIMES=OFF
-		-DLLVM_TOOL_LTO_BUILD=OFF
-
-		-DLLVM_ENABLE_FFI=$(usex libffi)
-		-DLLVM_ENABLE_LIBEDIT=$(usex libedit)
-		-DLLVM_ENABLE_TERMINFO=$(usex ncurses)
-		-DLLVM_ENABLE_LIBXML2=$(usex xml)
-		-DLLVM_ENABLE_ASSERTIONS=$(usex debug)
-		-DLLVM_ENABLE_LIBPFM=$(usex exegesis)
-		-DLLVM_ENABLE_EH=OFF
-		-DLLVM_ENABLE_RTTI=OFF
-
-		-DWITH_POLLY=OFF # TODO
-
-		-DLLVM_HOST_TRIPLE="${CHOST}"
-
-		-DFFI_INCLUDE_DIR="${ffi_cflags#-I}"
-		-DFFI_LIBRARY_DIR="${ffi_ldflags#-L}"
-		# used only for llvm-objdump tool
-		-DHAVE_LIBXAR=$(multilib_native_usex xar 1 0)
-
-		# disable OCaml bindings (now in dev-ml/llvm-ocaml)
-		-DOCAMLFIND=NO
-	)
-
-#	Note: go bindings have no CMake rules at the moment
-#	but let's kill the check in case they are introduced
-#	if ! multilib_is_native_abi || ! use go; then
-		mycmakeargs+=(
-			-DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND
-		)
-#	fi
-
-	use test && mycmakeargs+=(
-		-DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}"
-	)
-
-	if multilib_is_native_abi; then
-		mycmakeargs+=(
-			-DLLVM_BUILD_DOCS=$(usex doc)
-			-DLLVM_ENABLE_OCAMLDOC=OFF
-			-DLLVM_ENABLE_SPHINX=$(usex doc)
-			-DLLVM_ENABLE_DOXYGEN=OFF
-			-DLLVM_INSTALL_UTILS=ON
-		)
-	fi
-
-	if tc-is-cross-compiler; then
-		# Force LLVM_BUILD_TOOLS=ON to ensure build_host_tools builds
-		# llvm-config
-		build_host_tblgen
-		# die early if the build tools are not installed
-		[[ -x "${HOST_DIR}/bin/llvm-tblgen" ]] \
-			|| die "${HOST_DIR}/bin/llvm-tblgen not found or usable"
-		mycmakeargs+=(
-			-DCMAKE_CROSSCOMPILING=ON
-			-DLLVM_TABLEGEN="${HOST_DIR}/bin/llvm-tblgen"
-		)
-	fi
-
-	# workaround BMI bug in gcc-7 (fixed in 7.4)
-	# https://bugs.gentoo.org/649880
-	# apply only to x86, https://bugs.gentoo.org/650506
-	if tc-is-gcc && [[ ${MULTILIB_ABI_FLAG} == abi_x86* ]] &&
-			[[ $(gcc-major-version) -eq 7 && $(gcc-minor-version) -lt 4 ]]
-	then
-		local CFLAGS="${CFLAGS} -mno-bmi"
-		local CXXFLAGS="${CXXFLAGS} -mno-bmi"
-	fi
-
-	# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
-	use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-	cmake-utils_src_configure
-}
-
-multilib_src_compile() {
-	cmake-utils_src_compile
-
-	pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld
-	pax-mark m "${BUILD_DIR}"/bin/lli
-	pax-mark m "${BUILD_DIR}"/bin/lli-child-target
-
-	if use test; then
-		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests
-		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests
-		pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests
-	fi
-	
-	build_host_config
-}
-
-multilib_src_test() {
-	# respect TMPDIR!
-	local -x LIT_PRESERVES_TMP=1
-	cmake-utils_src_make check
-}
-
-src_install() {
-	local LLVM_LDPATHS=()
-	multilib-minimal_src_install
-}
-
-multilib_src_install() {
-	cmake-utils_src_install
-
-	into ${ARC_PREFIX}/build
-	newbin "${HOST_DIR}/bin/llvm-config-${ABI}" "llvm-config-host-${ABI}"
-
-	# Manually copy libLLVM-8.0.1.so into the android container.
-	# TODO(b/112313068): Statically link with this instead of installing
-	# this shared library.
-	into "${ARC_PREFIX}/vendor"
-	dolib $(get_libdir)/libLLVM-${SLOT}.so
-
-	# Then replace the copy in the build directory with a symlink to the
-	# vendor image copy.
-	dosym ../../vendor/$(get_libdir)/libLLVM-${SLOT}.so "${ARC_PREFIX}/build/$(get_libdir)/libLLVM-${SLOT}.so"
-}
-
-multilib_src_install_all() {
-	local LLVM_CONFIG_HOST="${D}/${ARC_PREFIX}/build/bin/llvm-config-host"
-	cat > "${LLVM_CONFIG_HOST}" <<EOF
-#!/bin/bash
-
-ABI_BIN="\$(dirname ""\$0"")/llvm-config-host-\${ABI}"
-
-if [[ -e "\${ABI_BIN}" ]]; then
-	exec "\${ABI_BIN}" "\$@"
-else
-	echo "\$0: Unsupported ABI: \${ABI}"
-	exit 1
-fi
-EOF
-	chmod a+rx "${LLVM_CONFIG_HOST}" || die
-}
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 065b3ab..8d2f61d 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -1,2 +1,2 @@
-DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
-DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7ed8fbc43b60a58be1dfed05eae8a8fee857241d9e112ae673da6fc9778767675f536ece818cb85567367bb1c8f87a0693623f SHA512 35de5f227c745c5fb800784fe657b2a6216faf43e2498e8481e7b0dc79b0d2f86b3b6a10b896e060319a77a51c61d2e1b7a951ae962b3a6ef8c1a2a261d9bb6c
+DIST binutils-2.36.1-patches-3.tar.xz 32720 BLAKE2B 2a5a60168ec5ff612e7e58530092f306460cdb4a963320978dffcc22d73684486a14a5981f6eab2f7fc270def22cdc9954de455d680b2de4befc1ad4916347ba SHA512 e429cc82451675f14715d4e7640fe7b995495c8759a8e919c4291f8ca8358a663012f05c1ec6e60b1261114848379fefc9df723929770462dd676fa04fc7aa54
+DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
diff --git a/sys-devel/binutils/binutils-2.35.2-r3.ebuild b/sys-devel/binutils/binutils-2.35.2-r3.ebuild
deleted file mode 120000
index a0193ea..0000000
--- a/sys-devel/binutils/binutils-2.35.2-r3.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-binutils-2.35.2.ebuild
\ No newline at end of file
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
deleted file mode 100644
index 8a942f0..0000000
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ /dev/null
@@ -1,328 +0,0 @@
-# Copyright (c) 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit eutils libtool flag-o-matic gnuconfig multilib cros-constants
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="http://sources.redhat.com/binutils/"
-LICENSE="|| ( GPL-3 LGPL-3 )"
-IUSE="cet cros_host hardened multitarget nls test vanilla"
-
-# Variables that can be set here  (ignored for live ebuilds)
-# PATCH_VER          - the patchset version
-#                      Default: empty, no patching
-# PATCH_BINUTILS_VER - the binutils version in the patchset name
-#                    - Default: PV
-# PATCH_DEV          - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
-#                      for the patchsets
-PATCH_VER=1
-PATCH_DEV=dilfridge
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-KEYWORDS="*"
-
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
-	if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then
-		export CTARGET=${CATEGORY/cross-}
-	fi
-fi
-
-is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
-
-if is_cross ; then
-	SLOT="${CTARGET}"
-else
-	SLOT="0"
-fi
-
-SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz
-	https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-RDEPEND=">=sys-devel/binutils-config-3"
-DEPEND="${RDEPEND}
-	test? ( dev-util/dejagnu )
-	nls? ( sys-devel/gettext )
-	sys-devel/flex"
-
-RESTRICT="!test? ( test )"
-
-MY_BUILDDIR=${WORKDIR}/build
-
-toolchain-binutils_bugurl() {
-	printf "https://crbug.com"
-}
-
-toolchain_mips_use_sysv_gnuhash() {
-	if [[ ${CTARGET} == mips* ]] ; then
-		# For mips targets, GNU hash cannot work due to ABI constraints.
-		sed -i \
-			-e 's:--hash-style=gnu:--hash-style=sysv:' \
-			"${D}/${BINPATH}/$1" || die
-	fi
-}
-
-src_prepare() {
-	local patchsetname
-	patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
-	if [[ ! -z ${PATCH_VER} ]] ; then
-		if ! use vanilla; then
-			einfo "Applying binutils patchset ${patchsetname}"
-			eapply "${WORKDIR}/patch"
-			einfo "Done."
-		fi
-	fi
-
-	einfo "Applying local CrOS patches"
-	eapply "${FILESDIR}"
-	einfo "Done."
-
-	# Apply things from PATCHES and user dirs
-	default
-}
-
-src_configure() {
-	export LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV}
-	export INCPATH=${LIBPATH}/include
-	export DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV}
-
-	if is_cross ; then
-		export BINPATH=/usr/${CHOST}/${CTARGET}/binutils-bin/${PV}
-	else
-		export BINPATH=/usr/${CTARGET}/binutils-bin/${PV}
-	fi
-
-	cros_optimize_package_for_speed
-
-	# Use gcc to build binutils.
-	cros_use_gcc
-
-	# make sure we filter $LINGUAS so that only ones that
-	# actually work make it through #42033
-	strip-linguas -u */po
-
-	# keep things sane
-	strip-flags
-
-	local x
-	echo
-	for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
-		einfo "$(printf '%10s' ${x}:) ${!x}"
-	done
-	echo
-
-	cd "${MY_BUILDDIR}"
-	local myconf=( --enable-plugins )
-
-	# enable only the DWP tool which is part of gold, but don't
-	# install the gold linker because it is deprecated
-	myconf+=( --enable-gold=dwp )
-
-	use nls \
-		&& myconf+=( --without-included-gettext ) \
-		|| myconf+=( --disable-nls )
-
-	myconf+=( --enable-64-bit-bfd )
-
-	[[ -n ${CBUILD} ]] && myconf+=( --build=${CBUILD} )
-	is_cross && myconf+=(
-		--with-sysroot="${EPREFIX}"/usr/${CTARGET}
-		--enable-poison-system-directories
-	)
-
-	myconf+=(
-		--prefix="${EPREFIX}"/usr
-		--host=${CHOST}
-		--target=${CTARGET}
-		--datadir="${EPREFIX}"${DATAPATH}
-		--infodir="${EPREFIX}"${DATAPATH}/info
-		--mandir="${EPREFIX}"${DATAPATH}/man
-		--bindir="${EPREFIX}"${BINPATH}
-		--libdir="${EPREFIX}"${LIBPATH}
-		--libexecdir="${EPREFIX}"${LIBPATH}
-		--includedir="${EPREFIX}"${INCPATH}
-		--enable-compressed-debug-sections=none
-		--enable-threads
-		--enable-shared
-		--enable-deterministic-archives
-		--enable-install-libiberty
-		--enable-secureplt
-		--disable-werror
-		--with-bugurl="$(toolchain-binutils_bugurl)"
-		${EXTRA_ECONF}
-		# Disable modules that are in a combined binutils/gdb tree. #490566
-		--disable-{gdb,libdecnumber,readline,sim}
-		# Strip out broken static link flags.
-		# https://gcc.gnu.org/PR56750
-		--without-stage1-ldflags
-		# Allow user to opt into CET for host libraries.
-		# Ideally we would like automagic-or-disabled here.
-		# But the check does not quite work on i686: bug #760926.
-		$(use_enable cet)
-	)
-
-	echo ./configure "${myconf[@]}"
-	"${S}"/configure "${myconf[@]}" || die
-}
-
-src_compile() {
-	cd "${MY_BUILDDIR}"
-	emake all
-
-	# only build info pages if we user wants them, and if
-	# we have makeinfo (may not exist when we bootstrap)
-	if type -p makeinfo > /dev/null ; then
-		emake info
-	fi
-	# we nuke the manpages when we're left with junk
-	# (like when we bootstrap, no perl -> no manpages)
-	find . -name '*.1' -a -size 0 -delete
-}
-
-src_test() {
-	cd "${MY_BUILDDIR}"
-	emake -k check
-}
-
-src_install() {
-	local x d
-
-	cd "${MY_BUILDDIR}"
-	emake DESTDIR="${D}" tooldir="${LIBPATH}" install
-	rm -rf "${D}"/${LIBPATH}/bin
-
-	# Newer versions of binutils get fancy with ${LIBPATH} #171905
-	cd "${D}"/${LIBPATH}
-	for d in ../* ; do
-		[[ ${d} == ../${PV} ]] && continue
-		mv ${d}/* . || die
-		rmdir ${d} || die
-	done
-
-	# Now we collect everything intp the proper SLOT-ed dirs
-	# When something is built to cross-compile, it installs into
-	# /usr/$CHOST/ by default ... we have to 'fix' that :)
-	if is_cross ; then
-		cd "${D}"/${BINPATH}
-		for x in * ; do
-			mv ${x} ${x/${CTARGET}-}
-		done
-
-		if [[ -d ${D}/usr/${CHOST}/${CTARGET} ]] ; then
-			mv "${D}"/usr/${CHOST}/${CTARGET}/include "${D}"/${INCPATH}
-			mv "${D}"/usr/${CHOST}/${CTARGET}/lib/* "${D}"/${LIBPATH}/
-			rm -r "${D}"/usr/${CHOST}/{include,lib}
-		fi
-	fi
-	insinto ${INCPATH}
-	doins "${S}/include/libiberty.h"
-	if [[ -d ${D}/${LIBPATH}/lib ]] ; then
-		mv "${D}"/${LIBPATH}/lib/* "${D}"/${LIBPATH}/
-		rm -r "${D}"/${LIBPATH}/lib
-	fi
-
-	# Now, some binutils are tricky and actually provide
-	# for multiple TARGETS.  Really, we're talking just
-	# 32bit/64bit support (like mips/ppc/sparc).  Here
-	# we want to tell binutils-config that it's cool if
-	# it generates multiple sets of binutil symlinks.
-	# e.g. sparc gets {sparc,sparc64}-unknown-linux-gnu
-	local targ=${CTARGET/-*} src="" dst=""
-	local FAKE_TARGETS=${CTARGET}
-	case ${targ} in
-		mips*)    src="mips"    dst="mips64";;
-		powerpc*) src="powerpc" dst="powerpc64";;
-		s390*)    src="s390"    dst="s390x";;
-		sparc*)   src="sparc"   dst="sparc64";;
-	esac
-	case ${targ} in
-		mips64*|powerpc64*|s390x*|sparc64*) targ=${src} src=${dst} dst=${targ};;
-	esac
-	[[ -n ${src}${dst} ]] && FAKE_TARGETS="${FAKE_TARGETS} ${CTARGET/${src}/${dst}}"
-
-	# Generate an env.d entry for this binutils
-	insinto /etc/env.d/binutils
-	cat <<-EOF > "${T}"/env.d
-	TARGET="${CTARGET}"
-	VER="${PV}"
-	LIBPATH="${LIBPATH}"
-	FAKE_TARGETS="${FAKE_TARGETS}"
-	EOF
-	newins "${T}"/env.d ${CTARGET}-${PV}
-
-	# Handle documentation
-	if ! is_cross ; then
-		cd "${S}"
-		dodoc README
-		docinto bfd
-		dodoc bfd/ChangeLog* bfd/README bfd/PORTING bfd/TODO
-		docinto binutils
-		dodoc binutils/ChangeLog binutils/NEWS binutils/README
-		docinto gas
-		dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/NEWS gas/README*
-		docinto gprof
-		dodoc gprof/ChangeLog* gprof/TEST gprof/TODO gprof/bbconv.pl
-		docinto ld
-		dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
-		docinto libiberty
-		dodoc libiberty/ChangeLog* libiberty/README
-		docinto opcodes
-		dodoc opcodes/ChangeLog*
-	fi
-	# Remove shared info pages
-	rm -f "${D}"/${DATAPATH}/info/{dir,configure.info,standards.info}
-	# Trim all empty dirs
-	find "${D}" -type d | xargs rmdir >& /dev/null
-
-	if use hardened ; then
-		LDWRAPPER=ldwrapper.hardened
-		LDWRAPPER_LLD=ldwrapper_lld.hardened
-	else
-		LDWRAPPER=ldwrapper
-		LDWRAPPER_LLD=ldwrapper_lld
-	fi
-
-	mv "${D}/${BINPATH}/ld.bfd" "${D}/${BINPATH}/ld.bfd.real" || die
-	exeinto "${BINPATH}"
-	newexe "${FILESDIR}/${LDWRAPPER}" "ld.bfd" || die
-	toolchain_mips_use_sysv_gnuhash "ld.bfd"
-
-	# Set default to be ld.bfd in regular installation
-	dosym ld.bfd "${BINPATH}/ld"
-
-	# Install lld wrapper only for cross toolchains.
-	is_cross && newbin "${FILESDIR}/${LDWRAPPER_LLD}" "${CTARGET}-ld.lld"
-
-	# Move the locale directory to where it is supposed to be
-	mv "${D}/usr/share/locale" "${D}/${DATAPATH}/"
-}
-
-pkg_postinst() {
-	binutils-config ${CTARGET}-${PV}
-}
-
-pkg_postrm() {
-	local current_profile=$(binutils-config -c ${CTARGET})
-
-	# If no other versions exist, then uninstall for this
-	# target ... otherwise, switch to the newest version
-	# Note: only do this if this version is unmerged.  We
-	#       rerun binutils-config if this is a remerge, as
-	#       we want the mtimes on the symlinks updated (if
-	#       it is the same as the current selected profile)
-	if [[ ! -e ${BINPATH}/ld ]] && [[ ${current_profile} == ${CTARGET}-${PV} ]] ; then
-		local choice=$(binutils-config -l | grep ${CTARGET} | awk '{print $2}')
-		choice=${choice//$'\n'/ }
-		choice=${choice/* }
-		if [[ -z ${choice} ]] ; then
-			binutils-config -u ${CTARGET}
-		else
-			binutils-config ${choice}
-		fi
-	elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
-		binutils-config ${CTARGET}-${PV}
-	fi
-}
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
new file mode 120000
index 0000000..26f50d2
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -0,0 +1 @@
+binutils-2.36.1.ebuild
\ No newline at end of file
diff --git a/sys-devel/binutils/binutils-2.36.1.ebuild b/sys-devel/binutils/binutils-2.36.1.ebuild
new file mode 100644
index 0000000..dc8306e
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.36.1.ebuild
@@ -0,0 +1,336 @@
+# Copyright (c) 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit eutils libtool flag-o-matic gnuconfig multilib cros-constants
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="http://sources.redhat.com/binutils/"
+LICENSE="|| ( GPL-3 LGPL-3 )"
+IUSE="cet cros_host hardened multitarget nls test vanilla"
+
+# Variables that can be set here  (ignored for live ebuilds)
+# PATCH_VER          - the patchset version
+#                      Default: empty, no patching
+# PATCH_BINUTILS_VER - the binutils version in the patchset name
+#                    - Default: PV
+# PATCH_DEV          - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
+#                      for the patchsets
+PATCH_VER=3
+PATCH_DEV=dilfridge
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+KEYWORDS="*"
+
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then
+		export CTARGET=${CATEGORY/cross-}
+	fi
+fi
+
+is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
+
+if is_cross ; then
+	SLOT="${CTARGET}"
+else
+	SLOT="0"
+fi
+
+SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz
+	https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+RDEPEND=">=sys-devel/binutils-config-3"
+DEPEND="${RDEPEND}
+	test? ( dev-util/dejagnu )
+	nls? ( sys-devel/gettext )
+	sys-devel/flex"
+
+RESTRICT="!test? ( test )"
+
+# Disable split debug for cross-<abi>/binutils because
+# of race in installing .debug build-id files (b/187790168).
+if [[ ${CATEGORY} == cross-* ]]; then
+	RESTRICT+=" splitdebug"
+fi
+
+MY_BUILDDIR=${WORKDIR}/build
+
+toolchain-binutils_bugurl() {
+	printf "https://crbug.com"
+}
+
+toolchain_mips_use_sysv_gnuhash() {
+	if [[ ${CTARGET} == mips* ]] ; then
+		# For mips targets, GNU hash cannot work due to ABI constraints.
+		sed -i \
+			-e 's:--hash-style=gnu:--hash-style=sysv:' \
+			"${D}/${BINPATH}/$1" || die
+	fi
+}
+
+src_prepare() {
+	local patchsetname
+	patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
+	if [[ ! -z ${PATCH_VER} ]] ; then
+		if ! use vanilla; then
+			einfo "Applying binutils patchset ${patchsetname}"
+			eapply "${WORKDIR}/patch"
+			einfo "Done."
+		fi
+	fi
+
+	einfo "Applying local CrOS patches"
+	eapply "${FILESDIR}"
+	einfo "Done."
+
+	# Apply things from PATCHES and user dirs
+	default
+}
+
+src_configure() {
+	export LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV}
+	export INCPATH=${LIBPATH}/include
+	export DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV}
+
+	if is_cross ; then
+		export BINPATH=/usr/${CHOST}/${CTARGET}/binutils-bin/${PV}
+	else
+		export BINPATH=/usr/${CTARGET}/binutils-bin/${PV}
+	fi
+
+	cros_optimize_package_for_speed
+
+	# Use gcc to build binutils.
+	cros_use_gcc
+
+	# make sure we filter $LINGUAS so that only ones that
+	# actually work make it through #42033
+	strip-linguas -u */po
+
+	# keep things sane
+	strip-flags
+	# Use shared libgcc on non-host builds.
+	use cros_host || append-ldflags "-shared-libgcc"
+
+	local x
+	echo
+	for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+		einfo "$(printf '%10s' ${x}:) ${!x}"
+	done
+	echo
+
+	cd "${MY_BUILDDIR}"
+	local myconf=( --enable-plugins )
+
+	# enable only the DWP tool which is part of gold, but don't
+	# install the gold linker because it is deprecated.
+	use cros_host && myconf+=( --enable-gold=dwp )
+
+	use nls \
+		&& myconf+=( --without-included-gettext ) \
+		|| myconf+=( --disable-nls )
+
+	myconf+=( --enable-64-bit-bfd )
+
+	[[ -n ${CBUILD} ]] && myconf+=( --build=${CBUILD} )
+	is_cross && myconf+=(
+		--with-sysroot="${EPREFIX}"/usr/${CTARGET}
+		--enable-poison-system-directories
+	)
+
+	myconf+=(
+		--prefix="${EPREFIX}"/usr
+		--host=${CHOST}
+		--target=${CTARGET}
+		--datadir="${EPREFIX}"${DATAPATH}
+		--infodir="${EPREFIX}"${DATAPATH}/info
+		--mandir="${EPREFIX}"${DATAPATH}/man
+		--bindir="${EPREFIX}"${BINPATH}
+		--libdir="${EPREFIX}"${LIBPATH}
+		--libexecdir="${EPREFIX}"${LIBPATH}
+		--includedir="${EPREFIX}"${INCPATH}
+		--enable-compressed-debug-sections=none
+		--enable-threads
+		--enable-shared
+		--enable-deterministic-archives
+		--enable-install-libiberty
+		--enable-secureplt
+		--disable-werror
+		--with-bugurl="$(toolchain-binutils_bugurl)"
+		${EXTRA_ECONF}
+		# Disable modules that are in a combined binutils/gdb tree. #490566
+		--disable-{gdb,libdecnumber,readline,sim}
+		# Strip out broken static link flags.
+		# https://gcc.gnu.org/PR56750
+		--without-stage1-ldflags
+		# Allow user to opt into CET for host libraries.
+		# Ideally we would like automagic-or-disabled here.
+		# But the check does not quite work on i686: bug #760926.
+		$(use_enable cet)
+	)
+
+	echo ./configure "${myconf[@]}"
+	"${S}"/configure "${myconf[@]}" || die
+}
+
+src_compile() {
+	cd "${MY_BUILDDIR}"
+	emake all
+
+	# only build info pages if we user wants them, and if
+	# we have makeinfo (may not exist when we bootstrap)
+	if type -p makeinfo > /dev/null ; then
+		emake info
+	fi
+	# we nuke the manpages when we're left with junk
+	# (like when we bootstrap, no perl -> no manpages)
+	find . -name '*.1' -a -size 0 -delete
+}
+
+src_test() {
+	cd "${MY_BUILDDIR}"
+	emake -k check
+}
+
+src_install() {
+	local x d
+
+	cd "${MY_BUILDDIR}"
+	emake DESTDIR="${D}" tooldir="${LIBPATH}" install
+	rm -rf "${D}"/${LIBPATH}/bin
+
+	# Newer versions of binutils get fancy with ${LIBPATH} #171905
+	cd "${D}"/${LIBPATH}
+	for d in ../* ; do
+		[[ ${d} == ../${PV} ]] && continue
+		mv ${d}/* . || die
+		rmdir ${d} || die
+	done
+
+	# Now we collect everything intp the proper SLOT-ed dirs
+	# When something is built to cross-compile, it installs into
+	# /usr/$CHOST/ by default ... we have to 'fix' that :)
+	if is_cross ; then
+		cd "${D}"/${BINPATH}
+		for x in * ; do
+			mv ${x} ${x/${CTARGET}-}
+		done
+
+		if [[ -d ${D}/usr/${CHOST}/${CTARGET} ]] ; then
+			mv "${D}"/usr/${CHOST}/${CTARGET}/include "${D}"/${INCPATH}
+			mv "${D}"/usr/${CHOST}/${CTARGET}/lib/* "${D}"/${LIBPATH}/
+			rm -r "${D}"/usr/${CHOST}/{include,lib}
+		fi
+	fi
+	insinto ${INCPATH}
+	doins "${S}/include/libiberty.h"
+	if [[ -d ${D}/${LIBPATH}/lib ]] ; then
+		mv "${D}"/${LIBPATH}/lib/* "${D}"/${LIBPATH}/
+		rm -r "${D}"/${LIBPATH}/lib
+	fi
+
+	# Now, some binutils are tricky and actually provide
+	# for multiple TARGETS.  Really, we're talking just
+	# 32bit/64bit support (like mips/ppc/sparc).  Here
+	# we want to tell binutils-config that it's cool if
+	# it generates multiple sets of binutil symlinks.
+	# e.g. sparc gets {sparc,sparc64}-unknown-linux-gnu
+	local targ=${CTARGET/-*} src="" dst=""
+	local FAKE_TARGETS=${CTARGET}
+	case ${targ} in
+		mips*)    src="mips"    dst="mips64";;
+		powerpc*) src="powerpc" dst="powerpc64";;
+		s390*)    src="s390"    dst="s390x";;
+		sparc*)   src="sparc"   dst="sparc64";;
+	esac
+	case ${targ} in
+		mips64*|powerpc64*|s390x*|sparc64*) targ=${src} src=${dst} dst=${targ};;
+	esac
+	[[ -n ${src}${dst} ]] && FAKE_TARGETS="${FAKE_TARGETS} ${CTARGET/${src}/${dst}}"
+
+	# Generate an env.d entry for this binutils
+	insinto /etc/env.d/binutils
+	cat <<-EOF > "${T}"/env.d
+	TARGET="${CTARGET}"
+	VER="${PV}"
+	LIBPATH="${LIBPATH}"
+	FAKE_TARGETS="${FAKE_TARGETS}"
+	EOF
+	newins "${T}"/env.d ${CTARGET}-${PV}
+
+	# Handle documentation
+	if ! is_cross ; then
+		cd "${S}"
+		dodoc README
+		docinto bfd
+		dodoc bfd/ChangeLog* bfd/README bfd/PORTING bfd/TODO
+		docinto binutils
+		dodoc binutils/ChangeLog binutils/NEWS binutils/README
+		docinto gas
+		dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/NEWS gas/README*
+		docinto gprof
+		dodoc gprof/ChangeLog* gprof/TEST gprof/TODO gprof/bbconv.pl
+		docinto ld
+		dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
+		docinto libiberty
+		dodoc libiberty/ChangeLog* libiberty/README
+		docinto opcodes
+		dodoc opcodes/ChangeLog*
+	fi
+	# Remove shared info pages
+	rm -f "${D}"/${DATAPATH}/info/{dir,configure.info,standards.info}
+	# Trim all empty dirs
+	find "${D}" -type d | xargs rmdir >& /dev/null
+
+	if use hardened ; then
+		LDWRAPPER=ldwrapper.hardened
+		LDWRAPPER_LLD=ldwrapper_lld.hardened
+	else
+		LDWRAPPER=ldwrapper
+		LDWRAPPER_LLD=ldwrapper_lld
+	fi
+
+	mv "${D}/${BINPATH}/ld.bfd" "${D}/${BINPATH}/ld.bfd.real" || die
+	exeinto "${BINPATH}"
+	newexe "${FILESDIR}/${LDWRAPPER}" "ld.bfd" || die
+	toolchain_mips_use_sysv_gnuhash "ld.bfd"
+
+	# Set default to be ld.bfd in regular installation
+	dosym ld.bfd "${BINPATH}/ld"
+
+	# Install lld wrapper only for cross toolchains.
+	is_cross && newbin "${FILESDIR}/${LDWRAPPER_LLD}" "${CTARGET}-ld.lld"
+
+	# Move the locale directory to where it is supposed to be
+	mv "${D}/usr/share/locale" "${D}/${DATAPATH}/"
+}
+
+pkg_postinst() {
+	binutils-config ${CTARGET}-${PV}
+}
+
+pkg_postrm() {
+	local current_profile=$(binutils-config -c ${CTARGET})
+
+	# If no other versions exist, then uninstall for this
+	# target ... otherwise, switch to the newest version
+	# Note: only do this if this version is unmerged.  We
+	#       rerun binutils-config if this is a remerge, as
+	#       we want the mtimes on the symlinks updated (if
+	#       it is the same as the current selected profile)
+	if [[ ! -e ${BINPATH}/ld ]] && [[ ${current_profile} == ${CTARGET}-${PV} ]] ; then
+		local choice=$(binutils-config -l | grep ${CTARGET} | awk '{print $2}')
+		choice=${choice//$'\n'/ }
+		choice=${choice/* }
+		if [[ -z ${choice} ]] ; then
+			binutils-config -u ${CTARGET}
+		else
+			binutils-config ${choice}
+		fi
+	elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
+		binutils-config ${CTARGET}-${PV}
+	fi
+}
diff --git a/sys-devel/binutils/files/0001-gas-add-option-to-enable-disable-incbin-via-allow-in.patch b/sys-devel/binutils/files/0001-gas-add-option-to-enable-disable-incbin-via-allow-in.patch
index e2748fa..b2a4899 100644
--- a/sys-devel/binutils/files/0001-gas-add-option-to-enable-disable-incbin-via-allow-in.patch
+++ b/sys-devel/binutils/files/0001-gas-add-option-to-enable-disable-incbin-via-allow-in.patch
@@ -1,4 +1,4 @@
-From 6b1c73dfc14169c6e100e84c8b027d942fadb219 Mon Sep 17 00:00:00 2001
+From a03ae55558155370d34c4ffdaf15993d166f1255 Mon Sep 17 00:00:00 2001
 From: Rahul Chaudhry <rahulchaudhry@google.com>
 Date: Thu, 16 Mar 2017 11:11:21 -0700
 Subject: [PATCH 01/14] gas: add option to enable/disable incbin via
@@ -7,7 +7,7 @@
 This change is forward-port of google cl/80426738 and cl/80451836
 to binutils-2.35.1 branch with c/273909 squashed into it.
 
-[Adrian Ratiu: rebased from v2.27 to v2.35.1]
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 
 Change-Id: I5dcfc2f3141cbe3db5de31a819ed49ab8ad8968c
 ---
@@ -20,7 +20,7 @@
  6 files changed, 29 insertions(+), 3 deletions(-)
 
 diff --git a/gas/as.c b/gas/as.c
-index 0801903126e..04224fe82f9 100644
+index caa1c300ae7..f117730b5f8 100644
 --- a/gas/as.c
 +++ b/gas/as.c
 @@ -111,6 +111,9 @@ int flag_use_elf_stt_common = DEFAULT_GENERATE_ELF_STT_COMMON;
@@ -33,7 +33,7 @@
  /* Keep the output file.  */
  static int keep_it = 0;
  
-@@ -511,7 +514,9 @@ parse_args (int * pargc, char *** pargv)
+@@ -503,7 +506,9 @@ parse_args (int * pargc, char *** pargv)
        OPTION_WARN_FATAL,
        OPTION_COMPRESS_DEBUG,
        OPTION_NOCOMPRESS_DEBUG,
@@ -44,7 +44,7 @@
      /* When you add options here, check that they do
         not collide with OPTION_MD_BASE.  See as.h.  */
      };
-@@ -531,6 +536,8 @@ parse_args (int * pargc, char *** pargv)
+@@ -523,6 +528,8 @@ parse_args (int * pargc, char *** pargv)
      ,{"al", optional_argument, NULL, OPTION_AL}
      ,{"compress-debug-sections", optional_argument, NULL, OPTION_COMPRESS_DEBUG}
      ,{"nocompress-debug-sections", no_argument, NULL, OPTION_NOCOMPRESS_DEBUG}
@@ -53,7 +53,7 @@
      ,{"debug-prefix-map", required_argument, NULL, OPTION_DEBUG_PREFIX_MAP}
      ,{"defsym", required_argument, NULL, OPTION_DEFSYM}
      ,{"dump-config", no_argument, NULL, OPTION_DUMPCONFIG}
-@@ -758,6 +765,14 @@ This program has absolutely no warranty.\n"));
+@@ -750,6 +757,14 @@ This program has absolutely no warranty.\n"));
  	  flag_compress_debug = COMPRESS_DEBUG_NONE;
  	  break;
  
@@ -69,7 +69,7 @@
  	  add_debug_prefix_map (optarg);
  	  break;
 diff --git a/gas/as.h b/gas/as.h
-index 7a72239dc23..7f2ca9fef4e 100644
+index d6ac208289d..301666db955 100644
 --- a/gas/as.h
 +++ b/gas/as.h
 @@ -421,6 +421,9 @@ extern int max_macro_nest;
@@ -83,10 +83,10 @@
     increase malloc calls for monitoring memory allocation.  */
  extern int chunksize;
 diff --git a/gas/doc/as.texi b/gas/doc/as.texi
-index 8ce9fb73e2e..192fdc3b7c4 100644
+index cf3597f8983..73eb99527f1 100644
 --- a/gas/doc/as.texi
 +++ b/gas/doc/as.texi
-@@ -5618,6 +5618,8 @@ following section of code if the two strings are not the same.
+@@ -5619,6 +5619,8 @@ following section of code if the two strings are not the same.
  
  @cindex @code{incbin} directive
  @cindex binary files, including
@@ -96,10 +96,10 @@
  location. You can control the search paths used with the @samp{-I} command-line
  option (@pxref{Invoking,,Command-Line Options}).  Quotation marks are required
 diff --git a/gas/read.c b/gas/read.c
-index 69eb19c3784..8c823cef3cf 100644
+index be6e3e03d45..a74d3a94144 100644
 --- a/gas/read.c
 +++ b/gas/read.c
-@@ -5752,6 +5752,12 @@ s_incbin (int x ATTRIBUTE_UNUSED)
+@@ -5843,6 +5843,12 @@ s_incbin (int x ATTRIBUTE_UNUSED)
    long   bytes;
    int    len;
  
@@ -133,5 +133,5 @@
  #name: incbin
  
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0002-dwarf-add-experimental-DWARF-5-values-for-two-level-.patch b/sys-devel/binutils/files/0002-dwarf-add-experimental-DWARF-5-values-for-two-level-.patch
index 23e5935..a84c697 100644
--- a/sys-devel/binutils/files/0002-dwarf-add-experimental-DWARF-5-values-for-two-level-.patch
+++ b/sys-devel/binutils/files/0002-dwarf-add-experimental-DWARF-5-values-for-two-level-.patch
@@ -1,4 +1,4 @@
-From e5f06682e45bf2e088a6cd6096bce13d68f9122c Mon Sep 17 00:00:00 2001
+From fbd01745c4baf4a6f5c21f4e964e22d5724ffb4f Mon Sep 17 00:00:00 2001
 From: Cary Coutant <ccoutant@google.com>
 Date: Tue, 23 Dec 2014 14:44:58 -0800
 Subject: [PATCH 02/14] dwarf: add experimental DWARF-5 values for two-level
@@ -10,7 +10,7 @@
   - https://sourceware.org/git/?p=binutils-gdb.git;a=shortlog;h=refs/heads/users/ccoutant/two-level-line-150331
 to binutils-2_27-branch.
 
-[Adrian Ratiu: rebased from v2.27 to v2.35.1]
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 
 Change-Id: I9190449f8eee61fe824fe5bd031b5aa7e7629a11
 ---
@@ -18,7 +18,7 @@
  1 file changed, 13 insertions(+), 2 deletions(-)
 
 diff --git a/include/dwarf2.h b/include/dwarf2.h
-index 3f271fb0f7a..9c4203c22f7 100644
+index 50b6ddb1f11..8f4d6aab3ed 100644
 --- a/include/dwarf2.h
 +++ b/include/dwarf2.h
 @@ -244,7 +244,13 @@ enum dwarf_line_number_ops
@@ -58,5 +58,5 @@
      DW_LNCT_hi_user = 0x3fff
    };
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0003-gas-add-support-for-DWARF-5-and-experimental-two-lev.patch b/sys-devel/binutils/files/0003-gas-add-support-for-DWARF-5-and-experimental-two-lev.patch
index 59caee8..468b310 100644
--- a/sys-devel/binutils/files/0003-gas-add-support-for-DWARF-5-and-experimental-two-lev.patch
+++ b/sys-devel/binutils/files/0003-gas-add-support-for-DWARF-5-and-experimental-two-lev.patch
@@ -1,4 +1,4 @@
-From f41bbb23ef6e6a96d59f1ee49a2ec504e3bd748e Mon Sep 17 00:00:00 2001
+From 6e9c8e75162740068ecdd1f1a5d693597f9dbdb6 Mon Sep 17 00:00:00 2001
 From: Cary Coutant <ccoutant@google.com>
 Date: Tue, 23 Dec 2014 15:01:40 -0800
 Subject: [PATCH 03/14] gas: add support for DWARF-5 and experimental two-level
@@ -10,7 +10,7 @@
   - https://sourceware.org/git/?p=binutils-gdb.git;a=shortlog;h=refs/heads/users/ccoutant/two-level-line-150331
 to binutils-2_27-branch.
 
-[Adrian Ratiu: rebased from v2.27 to v2.35.1]
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 
 Change-Id: I84e4565576b9b4fbe88c29312cd75e3687a309d8
 ---
@@ -20,10 +20,10 @@
  3 files changed, 756 insertions(+), 88 deletions(-)
 
 diff --git a/gas/config/obj-elf.c b/gas/config/obj-elf.c
-index de22b5a1da8..f481b540c90 100644
+index 6c0a6ae9ee2..40b3ce296ea 100644
 --- a/gas/config/obj-elf.c
 +++ b/gas/config/obj-elf.c
-@@ -127,6 +127,8 @@ static const pseudo_typeS elf_pseudo_table[] =
+@@ -129,6 +129,8 @@ static const pseudo_typeS elf_pseudo_table[] =
    { "file", dwarf2_directive_file, 0 },
    { "loc",  dwarf2_directive_loc,  0 },
    { "loc_mark_labels", dwarf2_directive_loc_mark_labels, 0 },
@@ -33,7 +33,7 @@
    /* We need to trap the section changing calls to handle .previous.  */
    {"data", obj_elf_data, 0},
 diff --git a/gas/dwarf2dbg.c b/gas/dwarf2dbg.c
-index 419582f9aa8..48617eaa665 100644
+index 4fbd1e38ec2..700131f0ab8 100644
 --- a/gas/dwarf2dbg.c
 +++ b/gas/dwarf2dbg.c
 @@ -45,6 +45,8 @@
@@ -136,7 +136,7 @@
 +
 +/* DWARF-5: .debug_line_str string table.  */
 +struct string_table {
-+  struct hash_control *hashtab;
++  htab_t hashtab;
 +  const char **strings;
 +  unsigned int strings_in_use;
 +  unsigned int strings_allocated;
@@ -161,9 +161,9 @@
  };
  
  /* This symbol is used to recognize view number forced resets in loc
-@@ -567,6 +624,15 @@ dwarf2_gen_line_info (addressT ofs, struct dwarf2_line_info *loc)
+@@ -582,6 +639,15 @@ dwarf2_gen_line_info (addressT ofs, struct dwarf2_line_info *loc)
    else
-     sym = symbol_temp_new (now_seg, ofs, frag_now);
+     sym = symbol_temp_new (now_seg, frag_now, ofs);
    dwarf2_gen_line_info_1 (sym, loc);
 +
 +  /* Record the current symbol with all logical rows created since
@@ -177,7 +177,7 @@
  }
  
  static const char *
-@@ -901,6 +967,7 @@ dwarf2_where (struct dwarf2_line_info *line)
+@@ -916,6 +982,7 @@ dwarf2_where (struct dwarf2_line_info *line)
        line->isa = current.isa;
        line->discriminator = current.discriminator;
        line->view = NULL;
@@ -185,7 +185,7 @@
      }
    else
      *line = current;
-@@ -1007,6 +1074,68 @@ dwarf2_emit_label (symbolS *label)
+@@ -1022,6 +1089,68 @@ dwarf2_emit_label (symbolS *label)
    dwarf2_consume_line_info ();
  }
  
@@ -254,7 +254,7 @@
  /* Handle two forms of .file directive:
     - Pass .file "source.c" to s_app_file
     - Handle .file 1 "source.c" by adding an entry to the DWARF-2 file table
-@@ -1121,40 +1250,130 @@ dwarf2_directive_file (int dummy ATTRIBUTE_UNUSED)
+@@ -1136,40 +1265,130 @@ dwarf2_directive_file (int dummy ATTRIBUTE_UNUSED)
    (void) dwarf2_directive_filename ();
  }
  
@@ -399,7 +399,7 @@
  
  #ifndef NO_LISTING
    if (listing)
-@@ -1197,17 +1416,17 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
+@@ -1212,17 +1431,17 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
  	  current.flags |= DWARF2_FLAG_BASIC_BLOCK;
  	  *input_line_pointer = c;
  	}
@@ -420,7 +420,7 @@
  	{
  	  (void) restore_line_pointer (c);
  	  value = get_absolute_expression ();
-@@ -1233,7 +1452,7 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
+@@ -1248,7 +1467,7 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
  	      return;
  	    }
  	}
@@ -429,7 +429,7 @@
  	{
  	  (void) restore_line_pointer (c);
  	  value = get_absolute_expression ();
-@@ -1245,7 +1464,7 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
+@@ -1260,7 +1479,7 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
  	      return;
  	    }
  	}
@@ -438,7 +438,7 @@
  	{
  	  symbolS *sym;
  
-@@ -1296,6 +1515,30 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
+@@ -1311,6 +1530,30 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
  	    }
  	  current.view = sym;
  	}
@@ -469,7 +469,7 @@
        else
  	{
  	  as_bad (_("unknown .loc sub-directive `%s'"), p);
-@@ -1313,6 +1556,9 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
+@@ -1328,6 +1571,9 @@ dwarf2_directive_loc (int dummy ATTRIBUTE_UNUSED)
    /* If we were given a view id, emit the row right away.  */
    if (current.view)
      dwarf2_emit_insn (0);
@@ -479,7 +479,7 @@
  }
  
  void
-@@ -1444,6 +1690,15 @@ out_set_addr (symbolS *sym)
+@@ -1459,6 +1705,15 @@ out_set_addr (symbolS *sym)
    emit_expr (&exp, sizeof_address);
  }
  
@@ -495,7 +495,7 @@
  static void scale_addr_delta (addressT *);
  
  static void
-@@ -1482,7 +1737,7 @@ size_inc_line_addr (int line_delta, addressT addr_delta)
+@@ -1497,7 +1752,7 @@ size_inc_line_addr (int line_delta, addressT addr_delta)
       to emit the matrix entry.  */
    if (line_delta == INT_MAX)
      {
@@ -504,7 +504,7 @@
  	len = 1;
        else if (addr_delta)
  	len = 1 + sizeof_leb128 (addr_delta, 0);
-@@ -1490,30 +1745,30 @@ size_inc_line_addr (int line_delta, addressT addr_delta)
+@@ -1505,30 +1760,30 @@ size_inc_line_addr (int line_delta, addressT addr_delta)
      }
  
    /* Bias the line delta by the base.  */
@@ -542,7 +542,7 @@
        if (opcode <= 255)
  	return len + 2;
      }
-@@ -1546,7 +1801,7 @@ emit_inc_line_addr (int line_delta, addressT addr_delta, char *p, int len)
+@@ -1561,7 +1816,7 @@ emit_inc_line_addr (int line_delta, addressT addr_delta, char *p, int len)
       to emit the matrix entry.  */
    if (line_delta == INT_MAX)
      {
@@ -551,7 +551,7 @@
  	*p++ = DW_LNS_const_add_pc;
        else if (addr_delta)
  	{
-@@ -1561,17 +1816,17 @@ emit_inc_line_addr (int line_delta, addressT addr_delta, char *p, int len)
+@@ -1576,17 +1831,17 @@ emit_inc_line_addr (int line_delta, addressT addr_delta, char *p, int len)
      }
  
    /* Bias the line delta by the base.  */
@@ -572,7 +572,7 @@
        need_copy = 1;
      }
  
-@@ -1584,13 +1839,13 @@ emit_inc_line_addr (int line_delta, addressT addr_delta, char *p, int len)
+@@ -1599,13 +1854,13 @@ emit_inc_line_addr (int line_delta, addressT addr_delta, char *p, int len)
      }
  
    /* Bias the opcode by the special opcode base.  */
@@ -589,7 +589,7 @@
        if (opcode <= 255)
  	{
  	  *p++ = opcode;
-@@ -1598,7 +1853,7 @@ emit_inc_line_addr (int line_delta, addressT addr_delta, char *p, int len)
+@@ -1613,7 +1868,7 @@ emit_inc_line_addr (int line_delta, addressT addr_delta, char *p, int len)
  	}
  
        /* Try using DW_LNS_const_add_pc followed by special op.  */
@@ -598,7 +598,7 @@
        if (opcode <= 255)
  	{
  	  *p++ = DW_LNS_const_add_pc;
-@@ -1841,6 +2096,140 @@ dwarf2dbg_convert_frag (fragS *frag)
+@@ -1856,6 +2111,140 @@ dwarf2dbg_convert_frag (fragS *frag)
    frag->fr_offset = 0;
  }
  
@@ -739,7 +739,7 @@
  /* Generate .debug_line content for the chain of line number entries
     beginning at E, for segment SEG.  */
  
-@@ -1891,27 +2280,30 @@ process_entries (segT seg, struct line_entry *e)
+@@ -1906,27 +2295,30 @@ process_entries (segT seg, struct line_entry *e)
      {
        int line_delta;
  
@@ -789,7 +789,7 @@
  
        if (isa != e->loc.isa)
  	{
-@@ -1920,26 +2312,32 @@ process_entries (segT seg, struct line_entry *e)
+@@ -1935,26 +2327,32 @@ process_entries (segT seg, struct line_entry *e)
  	  out_uleb128 (isa);
  	}
  
@@ -833,7 +833,7 @@
        lab = e->label;
        frag = symbol_get_frag (lab);
        frag_ofs = S_GET_VALUE (lab);
-@@ -1958,15 +2356,26 @@ process_entries (segT seg, struct line_entry *e)
+@@ -1973,15 +2371,26 @@ process_entries (segT seg, struct line_entry *e)
  		     && ((offsetT)last_frag_ofs
  			 >= get_frag_fix (last_frag, seg))))))
  	{
@@ -863,7 +863,7 @@
        last_lab = lab;
        last_frag = frag;
        last_frag_ofs = frag_ofs;
-@@ -2232,6 +2641,160 @@ out_dir_and_file_list (segT line_seg, int sizeof_offset)
+@@ -2247,6 +2656,160 @@ out_dir_and_file_list (segT line_seg, int sizeof_offset)
      out_byte (0);
  }
  
@@ -880,10 +880,10 @@
 +      strtab->strings_allocated = 4;
 +      strtab->strings = (const char **)
 +	  xcalloc (strtab->strings_allocated, sizeof(char *));
-+      strtab->hashtab = hash_new ();
++      strtab->hashtab = str_htab_create ();
 +    }
 +
-+  val = (offsetT) hash_find (strtab->hashtab, str);
++  val = (offsetT) str_hash_find (strtab->hashtab, str);
 +  if (val != 0)
 +    return val;
 +
@@ -901,7 +901,7 @@
 +
 +  key = xstrdup (str);
 +  val = strtab->next_offset;
-+  hash_insert (strtab->hashtab, key, (void *) val);
++  str_hash_insert (strtab->hashtab, key, (void *) val, 0);
 +  strtab->strings[strtab->strings_in_use++] = key;
 +  strtab->next_offset += strlen(key) + 1;
 +  return val;
@@ -1024,7 +1024,7 @@
  /* Switch to SEC and output a header length field.  Return the size of
     offsets used in SEC.  The caller must set EXPR->X_add_symbol value
     to the end of the section.  EXPR->X_add_number will be set to the
-@@ -2291,22 +2854,38 @@ out_header (asection *sec, expressionS *exp)
+@@ -2306,22 +2869,38 @@ out_header (asection *sec, expressionS *exp)
  /* Emit the collected .debug_line data.  */
  
  static void
@@ -1067,7 +1067,7 @@
      {
        out_byte (sizeof_address);
        out_byte (0); /* Segment Selector size.  */
-@@ -2323,12 +2902,12 @@ out_debug_line (segT line_seg)
+@@ -2338,12 +2917,12 @@ out_debug_line (segT line_seg)
  
    /* Parameters of the state machine.  */
    out_byte (DWARF2_LINE_MIN_INSN_LENGTH);
@@ -1084,7 +1084,7 @@
  
    /* Standard opcode lengths.  */
    out_byte (0);			/* DW_LNS_copy */
-@@ -2345,11 +2924,64 @@ out_debug_line (segT line_seg)
+@@ -2360,11 +2939,64 @@ out_debug_line (segT line_seg)
    out_byte (1);			/* DW_LNS_set_isa */
    /* We have emitted 12 opcode lengths, so make that this
       matches up to the opcode base value we have been using.  */
@@ -1152,7 +1152,7 @@
  
    /* For each section, emit a statement program.  */
    for (s = all_segs; s; s = s->next)
-@@ -2768,11 +3400,13 @@ dwarf2_finish (void)
+@@ -2781,11 +3413,13 @@ dwarf2_finish (void)
    segT line_seg;
    struct line_seg *s;
    segT info_seg;
@@ -1167,7 +1167,7 @@
  
    line_seg = bfd_get_section_by_name (stdoutput, ".debug_line");
    empty_debug_line = line_seg == NULL || !seg_not_empty_p (line_seg);
-@@ -2826,8 +3460,24 @@ dwarf2_finish (void)
+@@ -2839,8 +3473,24 @@ dwarf2_finish (void)
  	}
      }
  
@@ -1193,7 +1193,7 @@
  
    /* If this is assembler generated line info, and there is no
       debug_info already, we need .debug_info, .debug_abbrev and
-@@ -2836,7 +3486,6 @@ dwarf2_finish (void)
+@@ -2849,7 +3499,6 @@ dwarf2_finish (void)
      {
        segT abbrev_seg;
        segT aranges_seg;
@@ -1202,7 +1202,7 @@
  
        gas_assert (all_segs);
 diff --git a/gas/dwarf2dbg.h b/gas/dwarf2dbg.h
-index c5ff24a2622..bf022c1ff4d 100644
+index 13824c407d9..9cf786c886a 100644
 --- a/gas/dwarf2dbg.h
 +++ b/gas/dwarf2dbg.h
 @@ -37,6 +37,7 @@ struct dwarf2_line_info
@@ -1245,5 +1245,5 @@
  /* Implements the .loc_mark_labels {0,1} directive.  */
  extern void dwarf2_directive_loc_mark_labels (int);
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0004-readelf-add-support-for-DWARF-5-and-experimental-two.patch b/sys-devel/binutils/files/0004-readelf-add-support-for-DWARF-5-and-experimental-two.patch
index aff15a4..9bbacea 100644
--- a/sys-devel/binutils/files/0004-readelf-add-support-for-DWARF-5-and-experimental-two.patch
+++ b/sys-devel/binutils/files/0004-readelf-add-support-for-DWARF-5-and-experimental-two.patch
@@ -1,4 +1,4 @@
-From 58c1565328927ed2b6966d695e8bc377b584cd5d Mon Sep 17 00:00:00 2001
+From 1c83b5fafca5615f9b202e4daaae929721f1a907 Mon Sep 17 00:00:00 2001
 From: Cary Coutant <ccoutant@google.com>
 Date: Tue, 6 Jan 2015 16:56:43 -0800
 Subject: [PATCH 04/14] readelf: add support for DWARF-5 and experimental
@@ -10,20 +10,20 @@
   - https://sourceware.org/git/?p=binutils-gdb.git;a=shortlog;h=refs/heads/users/ccoutant/two-level-line-150331
 to binutils-2_27-branch.
 
-[Adrian Ratiu: rebased from v2.27 to v2.35.1]
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 [TODO: make more use of the upstream implementation to slim our diff further]
 
 Change-Id: I26158b22c6a6652154b317db1ecf6d5c27d29337
 ---
- binutils/dwarf.c   | 992 +++++++++++++++++++++++++++------------------
+ binutils/dwarf.c   | 990 +++++++++++++++++++++++++++------------------
  binutils/readelf.c |   1 +
- 2 files changed, 595 insertions(+), 398 deletions(-)
+ 2 files changed, 594 insertions(+), 397 deletions(-)
 
 diff --git a/binutils/dwarf.c b/binutils/dwarf.c
-index 91b61e3fdfe..eb59da29eaf 100644
+index 19475e6cec3..dec611874ed 100644
 --- a/binutils/dwarf.c
 +++ b/binutils/dwarf.c
-@@ -478,6 +478,9 @@ typedef struct State_Machine_Registers
+@@ -479,6 +479,9 @@ typedef struct State_Machine_Registers
    unsigned int file;
    unsigned int line;
    unsigned int column;
@@ -33,7 +33,7 @@
    int is_stmt;
    int basic_block;
    unsigned char op_index;
-@@ -498,19 +501,65 @@ reset_state_machine (int is_stmt)
+@@ -499,19 +502,65 @@ reset_state_machine (int is_stmt)
    state_machine_regs.file = 1;
    state_machine_regs.line = 1;
    state_machine_regs.column = 0;
@@ -100,7 +100,7 @@
  {
    unsigned char op_code;
    size_t len, header_len;
-@@ -535,6 +584,8 @@ process_extended_line_op (unsigned char * data,
+@@ -536,6 +585,8 @@ process_extended_line_op (unsigned char * data,
      {
      case DW_LNE_end_sequence:
        printf (_("End of Sequence\n\n"));
@@ -109,7 +109,7 @@
        reset_state_machine (is_stmt);
        break;
  
-@@ -579,8 +630,11 @@ process_extended_line_op (unsigned char * data,
+@@ -580,8 +631,11 @@ process_extended_line_op (unsigned char * data,
        break;
  
      case DW_LNE_set_discriminator:
@@ -123,8 +123,8 @@
        break;
  
      /* HP extensions.  */
-@@ -798,8 +852,7 @@ fetch_indexed_string (dwarf_vma idx, struct cu_tu_set *this_set,
-       
+@@ -799,8 +853,7 @@ fetch_indexed_string (dwarf_vma idx, struct cu_tu_set *this_set,
+ 
    if (this_set != NULL)
      index_offset += this_set->section_offsets [DW_SECT_STR_OFFSETS];
 -
@@ -133,7 +133,7 @@
      {
        warn (_("DW_FORM_GNU_str_index offset too big: %s vs %s\n"),
  	    dwarf_vmatoa ("x", index_offset),
-@@ -4010,6 +4063,10 @@ load_debug_info (void * file)
+@@ -4070,6 +4123,10 @@ load_debug_info (void * file)
    return 0;
  }
  
@@ -144,7 +144,7 @@
  /* Read a DWARF .debug_line section header starting at DATA.
     Upon success returns an updated DATA pointer and the LINFO
     structure and the END_OF_SEQUENCE pointer will be filled in.
-@@ -4020,7 +4077,9 @@ read_debug_line_header (struct dwarf_section * section,
+@@ -4080,7 +4137,9 @@ read_debug_line_header (struct dwarf_section * section,
  			unsigned char * data,
  			unsigned char * end,
  			DWARF2_Internal_LineInfo * linfo,
@@ -155,7 +155,7 @@
  {
    unsigned char *hdrptr;
    unsigned int initial_length_size;
-@@ -4044,6 +4103,8 @@ read_debug_line_header (struct dwarf_section * section,
+@@ -4104,6 +4163,8 @@ read_debug_line_header (struct dwarf_section * section,
        linfo->li_offset_size = 4;
        initial_length_size = 4;
      }
@@ -164,7 +164,7 @@
  
    if (linfo->li_length + initial_length_size > section->size)
      {
-@@ -4068,17 +4129,25 @@ read_debug_line_header (struct dwarf_section * section,
+@@ -4128,17 +4189,25 @@ read_debug_line_header (struct dwarf_section * section,
    /* Get and check the version number.  */
    SAFE_BYTE_GET_AND_INC (linfo->li_version, hdrptr, 2, end);
  
@@ -192,7 +192,7 @@
      {
        SAFE_BYTE_GET_AND_INC (linfo->li_address_size, hdrptr, 1, end);
  
-@@ -4127,131 +4196,448 @@ read_debug_line_header (struct dwarf_section * section,
+@@ -4187,131 +4256,448 @@ read_debug_line_header (struct dwarf_section * section,
    return hdrptr;
  }
  
@@ -203,23 +203,22 @@
 -			 const DWARF2_Internal_LineInfo *  linfo,
 -			 struct dwarf_section *            section,
 -			 bfd_boolean                       is_dir)
--{
++static void
++display_directory_table_v4 (unsigned char *start, unsigned char *end,
++			    unsigned char **pdata)
+ {
 -  unsigned char *format_start, format_count, *format, formati;
 -  dwarf_vma data_count, datai;
 -  unsigned int namepass, last_entry = 0;
 -  const char * table_name = is_dir ? N_("Directory Table") : N_("File Name Table");
--  
++  unsigned char *data = *pdata;
++  unsigned int last_dir_entry = 0;
+ 
 -  SAFE_BYTE_GET_AND_INC (format_count, data, 1, end);
 -  if (do_checks && format_count > 5)
 -    warn (_("Unexpectedly large number of columns in the %s (%u)\n"),
 -	  table_name, format_count);
-+static void
-+display_directory_table_v4 (unsigned char *start, unsigned char *end,
-+			    unsigned char **pdata)
-+{
-+  unsigned char *data = *pdata;
-+  unsigned int last_dir_entry = 0;
- 
+-
 -  format_start = data;
 -  for (formati = 0; formati < format_count; formati++)
 +  if (*data == 0)
@@ -404,7 +403,7 @@
 +  free (content_forms);
  
 -  printf (_("  Entry"));
--  /* Delay displaying name as the last entry for better screen layout.  */ 
+-  /* Delay displaying name as the last entry for better screen layout.  */
 -  for (namepass = 0; namepass < 2; namepass++)
 -    {
 -      format = format_start;
@@ -467,12 +466,12 @@
 +      dwarf_vma uladv;
 +      unsigned int logical;
 +      int i;
++
++      printf ("  [0x%08lx]", (long)(data - start));
  
 -      printf ("  %d", last_entry++);
--      /* Delay displaying name as the last entry for better screen layout.  */ 
+-      /* Delay displaying name as the last entry for better screen layout.  */
 -      for (namepass = 0; namepass < 2; namepass++)
-+      printf ("  [0x%08lx]", (long)(data - start));
-+
 +      op_code = *data++;
 +
 +      if (op_code >= linfo->li_opcode_base)
@@ -483,6 +482,15 @@
 +	  op_code -= linfo->li_opcode_base;
 +	  uladv = (op_code / linfo->li_line_range);
 +	  if (linfo->li_max_ops_per_insn == 1)
++	    {
++	      uladv *= linfo->li_min_insn_length;
++	      state_machine_regs.address += uladv;
++	      printf (_("  Special opcode %d: "
++			"advance Address by %s to 0x%s"),
++		      op_code, dwarf_vmatoa ("u", uladv),
++		      dwarf_vmatoa ("x", state_machine_regs.address));
++	    }
++	  else
  	    {
 -	      dwarf_vma content_type, form;
 -
@@ -493,15 +501,6 @@
 -						  linfo->li_version, NULL,
 -			    ((content_type == DW_LNCT_path) != (namepass == 1)),
 -						  section, NULL, '\t', -1);
-+	      uladv *= linfo->li_min_insn_length;
-+	      state_machine_regs.address += uladv;
-+	      printf (_("  Special opcode %d: "
-+			"advance Address by %s to 0x%s"),
-+		      op_code, dwarf_vmatoa ("u", uladv),
-+		      dwarf_vmatoa ("x", state_machine_regs.address));
- 	    }
-+	  else
-+	    {
 +	      state_machine_regs.address
 +		+= ((state_machine_regs.op_index + uladv)
 +		    / linfo->li_max_ops_per_insn)
@@ -514,7 +513,7 @@
 +		      op_code, dwarf_vmatoa ("u", uladv),
 +		      dwarf_vmatoa ("x", state_machine_regs.address),
 +		      state_machine_regs.op_index);
-+	    }
+ 	    }
 +	  adv = (op_code % linfo->li_line_range) + linfo->li_line_base;
 +	  state_machine_regs.line += adv;
 +	  printf (_(" and Line by %s to %d\n"),
@@ -738,7 +737,7 @@
  static int
  display_debug_lines_raw (struct dwarf_section *  section,
  			 unsigned char *         data,
-@@ -4259,7 +4645,9 @@ display_debug_lines_raw (struct dwarf_section *  section,
+@@ -4319,7 +4705,9 @@ display_debug_lines_raw (struct dwarf_section *  section,
  			 void *                  file)
  {
    unsigned char *start = section->start;
@@ -749,7 +748,7 @@
  
    introduce (section, TRUE);
  
-@@ -4267,9 +4655,15 @@ display_debug_lines_raw (struct dwarf_section *  section,
+@@ -4327,9 +4715,15 @@ display_debug_lines_raw (struct dwarf_section *  section,
      {
        static DWARF2_Internal_LineInfo saved_linfo;
        DWARF2_Internal_LineInfo linfo;
@@ -765,7 +764,7 @@
  
        if (const_strneq (section->name, ".debug_line.")
  	  /* Note: the following does not apply to .debug_line.dwo sections.
-@@ -4286,7 +4680,9 @@ display_debug_lines_raw (struct dwarf_section *  section,
+@@ -4346,7 +4740,9 @@ display_debug_lines_raw (struct dwarf_section *  section,
  	     Since the section is a fragment it does not have the details
  	     needed to fill out a LineInfo structure, so instead we use the
  	     details from the last full debug_line section that we processed.  */
@@ -775,7 +774,7 @@
  	  standard_opcodes = NULL;
  	  linfo = saved_linfo;
  	  /* PR 17531: file: 0522b371.  */
-@@ -4299,16 +4695,17 @@ display_debug_lines_raw (struct dwarf_section *  section,
+@@ -4359,16 +4755,17 @@ display_debug_lines_raw (struct dwarf_section *  section,
  	}
        else
  	{
@@ -797,7 +796,7 @@
  	    {
  	      printf (_("  Address size (bytes):        %d\n"), linfo.li_address_size);
  	      printf (_("  Segment selector (bytes):    %d\n"), linfo.li_segment_size);
-@@ -4322,6 +4719,13 @@ display_debug_lines_raw (struct dwarf_section *  section,
+@@ -4382,6 +4779,13 @@ display_debug_lines_raw (struct dwarf_section *  section,
  	  printf (_("  Line Range:                  %d\n"), linfo.li_line_range);
  	  printf (_("  Opcode Base:                 %d\n"), linfo.li_opcode_base);
  
@@ -811,7 +810,7 @@
  	  /* PR 17512: file: 1665-6428-0.004.  */
  	  if (linfo.li_line_range == 0)
  	    {
-@@ -4349,314 +4753,100 @@ display_debug_lines_raw (struct dwarf_section *  section,
+@@ -4409,314 +4813,100 @@ display_debug_lines_raw (struct dwarf_section *  section,
  			      standard_opcodes[i - 1]),
  		    i, standard_opcodes[i - 1]);
  
@@ -838,19 +837,19 @@
 -
 -		  printf (_("\n The Directory Table (offset 0x%lx):\n"),
 -			  (long)(data - start));
-+	      /* Skip the fake directory and filename table.  */
-+	      data += 2;
- 
+-
 -		  while (data < end && *data != 0)
 -		    {
 -		      printf ("  %d\t%.*s\n", ++last_dir_entry, (int) (end - data), data);
++	      /* Skip the fake directory and filename table.  */
++	      data += 2;
+ 
+-		      data += strnlen ((char *) data, end - data) + 1;
+-		    }
 +	      /* Skip the fake extended opcode that wraps the rest
 +		 of the section.  */
 +	      data += 5;
  
--		      data += strnlen ((char *) data, end - data) + 1;
--		    }
--
 -		  /* PR 17512: file: 002-132094-0.004.  */
 -		  if (data >= end - 1)
 -		    break;
@@ -1199,7 +1198,7 @@
      }
  
    return 1;
-@@ -4680,6 +4870,8 @@ display_debug_lines_decoded (struct dwarf_section *  section,
+@@ -4740,6 +4930,8 @@ display_debug_lines_decoded (struct dwarf_section *  section,
  			     void *                  fileptr)
  {
    static DWARF2_Internal_LineInfo saved_linfo;
@@ -1208,7 +1207,7 @@
  
    introduce (section, FALSE);
  
-@@ -4717,7 +4909,9 @@ display_debug_lines_decoded (struct dwarf_section *  section,
+@@ -4777,7 +4969,9 @@ display_debug_lines_decoded (struct dwarf_section *  section,
  	  unsigned char *hdrptr;
  
  	  if ((hdrptr = read_debug_line_header (section, data, end, & linfo,
@@ -1219,7 +1218,7 @@
  	      return 0;
  
  	  /* PR 17531: file: 0522b371.  */
-@@ -5413,6 +5607,8 @@ display_debug_lines (struct dwarf_section *section, void *file)
+@@ -5510,6 +5704,8 @@ display_debug_lines (struct dwarf_section *section, void *file)
    if (do_debug_lines == 0)
      do_debug_lines |= FLAG_DEBUG_LINES_RAW;
  
@@ -1229,10 +1228,10 @@
      retValRaw = display_debug_lines_raw (section, data, end, file);
  
 diff --git a/binutils/readelf.c b/binutils/readelf.c
-index 41547a2594b..4af4c0c6e1a 100644
+index ad16b4571c9..a842ffbd07c 100644
 --- a/binutils/readelf.c
 +++ b/binutils/readelf.c
-@@ -6443,6 +6443,7 @@ process_section_headers (Filedata * filedata)
+@@ -6573,6 +6573,7 @@ process_section_headers (Filedata * filedata)
  	      || (do_debug_macinfo  && const_strneq (name, "macro"))
  	      || (do_debug_str      && const_strneq (name, "str"))
  	      || (do_debug_str_offsets && const_strneq (name, "str_offsets"))
@@ -1241,5 +1240,5 @@
  	      || (do_debug_loc      && const_strneq (name, "loclists"))
  	      || (do_debug_addr     && const_strneq (name, "addr"))
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0005-gas-enable-mshared-by-default.patch b/sys-devel/binutils/files/0005-gas-enable-mshared-by-default.patch
index 71c6cbc..f6d435c 100644
--- a/sys-devel/binutils/files/0005-gas-enable-mshared-by-default.patch
+++ b/sys-devel/binutils/files/0005-gas-enable-mshared-by-default.patch
@@ -1,4 +1,4 @@
-From 1885973cd4c8408d4c04a99a39ec145aecc3d6b2 Mon Sep 17 00:00:00 2001
+From 7ae9ad19d14982b07de904c2362896d36c41d5e4 Mon Sep 17 00:00:00 2001
 From: Rahul Chaudhry <rahulchaudhry@google.com>
 Date: Fri, 14 Jul 2017 13:16:08 -0700
 Subject: [PATCH 05/14] gas: enable -mshared by default.
@@ -13,7 +13,7 @@
   - https://bugs.chromium.org/p/chromium/issues/detail?id=738283
   - https://bugs.chromium.org/p/chromium/issues/detail?id=723906
 
-[Adrian Ratiu: rebased from v2.27 to v2.35.1]
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 
 Change-Id: Iced04054a7dfd18eef6b42c21f92c34286c215b4
 ---
@@ -23,10 +23,10 @@
  3 files changed, 11 insertions(+), 1 deletion(-)
 
 diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
-index 623ac77307e..1499a848d0c 100644
+index 9a2dfc92281..eb2bb1ba4c4 100644
 --- a/gas/config/tc-i386.c
 +++ b/gas/config/tc-i386.c
-@@ -595,7 +595,7 @@ static int use_big_obj = 0;
+@@ -601,7 +601,7 @@ static int use_big_obj = 0;
  
  #if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF)
  /* 1 if generating code for a shared library.  */
@@ -35,7 +35,7 @@
  #endif
  
  /* 1 for intel syntax,
-@@ -12735,6 +12735,7 @@ const char *md_shortopts = "qnO::";
+@@ -12887,6 +12887,7 @@ const char *md_shortopts = "qnO::";
  #define OPTION_MLFENCE_AFTER_LOAD (OPTION_MD_BASE + 31)
  #define OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH (OPTION_MD_BASE + 32)
  #define OPTION_MLFENCE_BEFORE_RET (OPTION_MD_BASE + 33)
@@ -43,7 +43,7 @@
  
  struct option md_longopts[] =
  {
-@@ -12746,6 +12747,7 @@ struct option md_longopts[] =
+@@ -12898,6 +12899,7 @@ struct option md_longopts[] =
  #if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF)
    {"x32", no_argument, NULL, OPTION_X32},
    {"mshared", no_argument, NULL, OPTION_MSHARED},
@@ -51,7 +51,7 @@
    {"mx86-used-note", required_argument, NULL, OPTION_X86_USED_NOTE},
  #endif
    {"divide", no_argument, NULL, OPTION_DIVIDE},
-@@ -12826,6 +12828,10 @@ md_parse_option (int c, const char *arg)
+@@ -12978,6 +12980,10 @@ md_parse_option (int c, const char *arg)
        shared = 1;
        break;
  
@@ -62,7 +62,7 @@
      case OPTION_X86_USED_NOTE:
        if (strcasecmp (arg, "yes") == 0)
          x86_used_note = 1;
-@@ -13513,6 +13519,8 @@ md_show_usage (FILE *stream)
+@@ -13665,6 +13671,8 @@ md_show_usage (FILE *stream)
    fprintf (stream, _("\
    -mshared                disable branch optimization for shared code\n"));
    fprintf (stream, _("\
@@ -82,7 +82,7 @@
  
  .*: +file format .*
 diff --git a/gas/testsuite/gas/i386/x86-64-relax-3.d b/gas/testsuite/gas/i386/x86-64-relax-3.d
-index bb605081452..b5010b4141d 100644
+index 01df9ef340e..f9ec1dcee5b 100644
 --- a/gas/testsuite/gas/i386/x86-64-relax-3.d
 +++ b/gas/testsuite/gas/i386/x86-64-relax-3.d
 @@ -1,4 +1,5 @@
@@ -92,5 +92,5 @@
  #notarget: *-*-solaris*
  
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0006-gold-readelf-add-experimental-support-for-SHT_RELR-s.patch b/sys-devel/binutils/files/0006-gold-readelf-add-experimental-support-for-SHT_RELR-s.patch
index 216d691..d748ca3 100644
--- a/sys-devel/binutils/files/0006-gold-readelf-add-experimental-support-for-SHT_RELR-s.patch
+++ b/sys-devel/binutils/files/0006-gold-readelf-add-experimental-support-for-SHT_RELR-s.patch
@@ -1,4 +1,4 @@
-From 5e133fc4d0f29591715a9b4558664e3631456be4 Mon Sep 17 00:00:00 2001
+From 7f0baf118ae65399f2c4b8c7ccb33c69ddf7bc7e Mon Sep 17 00:00:00 2001
 From: Rahul Chaudhry <rahulchaudhry@google.com>
 Date: Tue, 19 Dec 2017 15:31:31 -0800
 Subject: [PATCH 06/14] gold, readelf: add experimental support for SHT_RELR
@@ -22,7 +22,7 @@
 Test: 'gold --experimental-use-relr' creates PIE binaries with
       '.relr.dyn' sections to store relative relocations.
 
-[Adrian Ratiu: rebased from v2.27 to v2.35.1]
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 [Adrian Ratiu: squashed gold: simpler encoding for SHT_RELR sections.]
 ---
  bfd/elf-bfd.h            |   2 +-
@@ -47,10 +47,10 @@
  19 files changed, 1057 insertions(+), 121 deletions(-)
 
 diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h
-index c203e089525..5603caf9106 100644
+index 15206b4e876..3ea523ddfe3 100644
 --- a/bfd/elf-bfd.h
 +++ b/bfd/elf-bfd.h
-@@ -732,7 +732,7 @@ struct sym_cache
+@@ -735,7 +735,7 @@ struct elf_link_hash_table
  
  struct elf_size_info {
    unsigned char sizeof_ehdr, sizeof_phdr, sizeof_shdr;
@@ -60,10 +60,10 @@
    /* The size of entries in the .hash section.  */
    unsigned char sizeof_hash_entry;
 diff --git a/bfd/elf.c b/bfd/elf.c
-index 9f291663992..d0c9bfa5e8b 100644
+index 84a5d942817..36de5112d2d 100644
 --- a/bfd/elf.c
 +++ b/bfd/elf.c
-@@ -1748,6 +1748,9 @@ _bfd_elf_print_private_bfd_data (bfd *abfd, void *farg)
+@@ -1750,6 +1750,9 @@ _bfd_elf_print_private_bfd_data (bfd *abfd, void *farg)
  	    case DT_RELA: name = "RELA"; break;
  	    case DT_RELASZ: name = "RELASZ"; break;
  	    case DT_RELAENT: name = "RELAENT"; break;
@@ -73,7 +73,7 @@
  	    case DT_STRSZ: name = "STRSZ"; break;
  	    case DT_SYMENT: name = "SYMENT"; break;
  	    case DT_INIT: name = "INIT"; break;
-@@ -1785,6 +1788,7 @@ _bfd_elf_print_private_bfd_data (bfd *abfd, void *farg)
+@@ -1787,6 +1790,7 @@ _bfd_elf_print_private_bfd_data (bfd *abfd, void *farg)
  	    case DT_PLTPAD: name = "PLTPAD"; break;
  	    case DT_MOVETAB: name = "MOVETAB"; break;
  	    case DT_SYMINFO: name = "SYMINFO"; break;
@@ -81,7 +81,7 @@
  	    case DT_RELACOUNT: name = "RELACOUNT"; break;
  	    case DT_RELCOUNT: name = "RELCOUNT"; break;
  	    case DT_FLAGS_1: name = "FLAGS_1"; break;
-@@ -2367,16 +2371,30 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
+@@ -2342,16 +2346,30 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
  
      case SHT_REL:
      case SHT_RELA:
@@ -115,7 +115,7 @@
  	  goto fail;
  
  	/* Check for a bogus link to avoid crashing.  */
-@@ -2446,7 +2464,8 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
+@@ -2421,7 +2439,8 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
  	    || hdr->sh_info == SHN_UNDEF
  	    || hdr->sh_info >= num_sec
  	    || elf_elfsections (abfd)[hdr->sh_info]->sh_type == SHT_REL
@@ -126,10 +126,10 @@
  	    ret = _bfd_elf_make_section_from_shdr (abfd, hdr, name,
  						   shindex);
 diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c
-index 508f4236932..c45860a62bb 100644
+index d23f6c07e08..7bdd8c353fc 100644
 --- a/bfd/elf32-arm.c
 +++ b/bfd/elf32-arm.c
-@@ -19855,6 +19855,7 @@ const struct elf_size_info elf32_arm_size_info =
+@@ -19852,6 +19852,7 @@ const struct elf_size_info elf32_arm_size_info =
    sizeof (Elf32_External_Shdr),
    sizeof (Elf32_External_Rel),
    sizeof (Elf32_External_Rela),
@@ -138,7 +138,7 @@
    sizeof (Elf32_External_Dyn),
    sizeof (Elf_External_Note),
 diff --git a/bfd/elfcode.h b/bfd/elfcode.h
-index 54ef8906379..ea9cf6b4108 100644
+index 4e99fcc6b9b..1bcc2c7e1ed 100644
 --- a/bfd/elfcode.h
 +++ b/bfd/elfcode.h
 @@ -80,6 +80,7 @@
@@ -149,7 +149,7 @@
  #define Elf_External_Dyn	NAME(Elf,External_Dyn)
  
  #define elf_core_file_failing_command	NAME(bfd_elf,core_file_failing_command)
-@@ -1938,6 +1939,7 @@ const struct elf_size_info NAME(_bfd_elf,size_info) = {
+@@ -1959,6 +1960,7 @@ const struct elf_size_info NAME(_bfd_elf,size_info) = {
    sizeof (Elf_External_Shdr),
    sizeof (Elf_External_Rel),
    sizeof (Elf_External_Rela),
@@ -158,7 +158,7 @@
    sizeof (Elf_External_Dyn),
    sizeof (Elf_External_Note),
 diff --git a/bfd/elfnn-aarch64.c b/bfd/elfnn-aarch64.c
-index 312d11b4ff9..b568565ef95 100644
+index 1ec405ef1e0..dd08a39f917 100644
 --- a/bfd/elfnn-aarch64.c
 +++ b/bfd/elfnn-aarch64.c
 @@ -9925,6 +9925,7 @@ const struct elf_size_info elfNN_aarch64_size_info =
@@ -170,10 +170,10 @@
    sizeof (ElfNN_External_Dyn),
    sizeof (Elf_External_Note),
 diff --git a/binutils/readelf.c b/binutils/readelf.c
-index 4af4c0c6e1a..2b052c03f84 100644
+index a842ffbd07c..e3cfaee7c0c 100644
 --- a/binutils/readelf.c
 +++ b/binutils/readelf.c
-@@ -1138,6 +1138,80 @@ slurp_rel_relocs (Filedata *            filedata,
+@@ -1162,6 +1162,80 @@ slurp_rel_relocs (Filedata *            filedata,
    return TRUE;
  }
  
@@ -254,7 +254,7 @@
  /* Returns the reloc type extracted from the reloc info field.  */
  
  static unsigned int
-@@ -1191,6 +1265,7 @@ dump_relocations (Filedata *          filedata,
+@@ -1215,6 +1289,7 @@ dump_relocations (Filedata *          filedata,
  		  char *              strtab,
  		  unsigned long       strtablen,
  		  int                 is_rela,
@@ -262,7 +262,7 @@
  		  bfd_boolean         is_dynsym)
  {
    unsigned long i;
-@@ -1205,6 +1280,11 @@ dump_relocations (Filedata *          filedata,
+@@ -1229,6 +1304,11 @@ dump_relocations (Filedata *          filedata,
        if (!slurp_rela_relocs (filedata, rel_offset, rel_size, &rels, &rel_size))
  	return FALSE;
      }
@@ -274,7 +274,7 @@
    else
      {
        if (!slurp_rel_relocs (filedata, rel_offset, rel_size, &rels, &rel_size))
-@@ -1220,6 +1300,13 @@ dump_relocations (Filedata *          filedata,
+@@ -1244,6 +1324,13 @@ dump_relocations (Filedata *          filedata,
  	  else
  	    printf (_(" Offset     Info    Type            Sym.Value  Sym. Name + Addend\n"));
  	}
@@ -288,7 +288,7 @@
        else
  	{
  	  if (do_wide)
-@@ -1237,6 +1324,13 @@ dump_relocations (Filedata *          filedata,
+@@ -1261,6 +1348,13 @@ dump_relocations (Filedata *          filedata,
  	  else
  	    printf (_("  Offset          Info           Type           Sym. Value    Sym. Name + Addend\n"));
  	}
@@ -302,7 +302,7 @@
        else
  	{
  	  if (do_wide)
-@@ -1634,7 +1728,9 @@ dump_relocations (Filedata *          filedata,
+@@ -1636,7 +1730,9 @@ dump_relocations (Filedata *          filedata,
  	  break;
  	}
  
@@ -313,7 +313,7 @@
  	printf (_("unrecognized: %-7lx"), (unsigned long) type & 0xffffffff);
        else
  	printf (do_wide ? "%-22s" : "%-17.17s", rtype);
-@@ -2174,6 +2270,9 @@ get_dynamic_type (Filedata * filedata, unsigned long type)
+@@ -2177,6 +2273,9 @@ get_dynamic_type (Filedata * filedata, unsigned long type)
      case DT_REL:	return "REL";
      case DT_RELSZ:	return "RELSZ";
      case DT_RELENT:	return "RELENT";
@@ -323,7 +323,7 @@
      case DT_PLTREL:	return "PLTREL";
      case DT_DEBUG:	return "DEBUG";
      case DT_TEXTREL:	return "TEXTREL";
-@@ -2211,6 +2310,7 @@ get_dynamic_type (Filedata * filedata, unsigned long type)
+@@ -2214,6 +2313,7 @@ get_dynamic_type (Filedata * filedata, unsigned long type)
  
      case DT_TLSDESC_GOT: return "TLSDESC_GOT";
      case DT_TLSDESC_PLT: return "TLSDESC_PLT";
@@ -331,7 +331,7 @@
      case DT_RELACOUNT:	return "RELACOUNT";
      case DT_RELCOUNT:	return "RELCOUNT";
      case DT_FLAGS_1:	return "FLAGS_1";
-@@ -4332,6 +4432,7 @@ get_section_type_name (Filedata * filedata, unsigned int sh_type)
+@@ -4365,6 +4465,7 @@ get_section_type_name (Filedata * filedata, unsigned int sh_type)
      case SHT_SYMTAB:		return "SYMTAB";
      case SHT_STRTAB:		return "STRTAB";
      case SHT_RELA:		return "RELA";
@@ -339,7 +339,7 @@
      case SHT_HASH:		return "HASH";
      case SHT_DYNAMIC:		return "DYNAMIC";
      case SHT_NOTE:		return "NOTE";
-@@ -7400,12 +7501,14 @@ static struct
+@@ -7531,12 +7632,14 @@ static struct
    int reloc;
    int size;
    int rela;
@@ -357,7 +357,7 @@
  };
  
  /* Process the reloc section.  */
-@@ -7421,7 +7524,7 @@ process_relocs (Filedata * filedata)
+@@ -7552,7 +7655,7 @@ process_relocs (Filedata * filedata)
  
    if (do_using_dynamic)
      {
@@ -366,7 +366,7 @@
        const char * name;
        bfd_boolean  has_dynamic_reloc;
        unsigned int i;
-@@ -7431,6 +7534,7 @@ process_relocs (Filedata * filedata)
+@@ -7562,6 +7665,7 @@ process_relocs (Filedata * filedata)
        for (i = 0; i < ARRAY_SIZE (dynamic_relocations); i++)
  	{
  	  is_rela = dynamic_relocations [i].rela;
@@ -374,7 +374,7 @@
  	  name = dynamic_relocations [i].name;
  	  rel_size = filedata->dynamic_info[dynamic_relocations [i].size];
  	  rel_offset = filedata->dynamic_info[dynamic_relocations [i].reloc];
-@@ -7465,7 +7569,7 @@ process_relocs (Filedata * filedata)
+@@ -7596,7 +7700,7 @@ process_relocs (Filedata * filedata)
  				filedata->num_dynamic_syms,
  				filedata->dynamic_strings,
  				filedata->dynamic_strings_length,
@@ -383,7 +383,7 @@
  	    }
  	}
  
-@@ -7487,7 +7591,8 @@ process_relocs (Filedata * filedata)
+@@ -7618,7 +7722,8 @@ process_relocs (Filedata * filedata)
  	   i++, section++)
  	{
  	  if (   section->sh_type != SHT_RELA
@@ -393,7 +393,7 @@
  	    continue;
  
  	  rel_offset = section->sh_offset;
-@@ -7495,7 +7600,7 @@ process_relocs (Filedata * filedata)
+@@ -7626,7 +7731,7 @@ process_relocs (Filedata * filedata)
  
  	  if (rel_size)
  	    {
@@ -402,7 +402,7 @@
  	      unsigned long num_rela;
  
  	      printf (_("\nRelocation section "));
-@@ -7512,6 +7617,7 @@ process_relocs (Filedata * filedata)
+@@ -7643,6 +7748,7 @@ process_relocs (Filedata * filedata)
  		      rel_offset, num_rela);
  
  	      is_rela = section->sh_type == SHT_RELA;
@@ -410,7 +410,7 @@
  
  	      if (section->sh_link != 0
  		  && section->sh_link < filedata->file_header.e_shnum)
-@@ -7533,14 +7639,14 @@ process_relocs (Filedata * filedata)
+@@ -7664,14 +7770,14 @@ process_relocs (Filedata * filedata)
  
  		  dump_relocations (filedata, rel_offset, rel_size,
  				    symtab, nsyms, strtab, strtablen,
@@ -428,7 +428,7 @@
  
  	      found = TRUE;
 diff --git a/elfcpp/elfcpp.h b/elfcpp/elfcpp.h
-index 9c7c6294e42..9bbe4bfef86 100644
+index fdee7ce3b8b..72e8848f361 100644
 --- a/elfcpp/elfcpp.h
 +++ b/elfcpp/elfcpp.h
 @@ -386,6 +386,10 @@ enum SHT
@@ -442,7 +442,7 @@
    SHT_SPARC_GOTDATA = 0x70000000,
  
    // ARM-specific section types.
-@@ -765,6 +769,13 @@ enum DT
+@@ -771,6 +775,13 @@ enum DT
  
    DT_VERSYM = 0x6ffffff0,
  
@@ -456,7 +456,7 @@
    // Specify the value of _GLOBAL_OFFSET_TABLE_.
    DT_PPC_GOT = 0x70000000,
  
-@@ -1047,6 +1058,7 @@ struct Elf_sizes
+@@ -1071,6 +1082,7 @@ struct Elf_sizes
    // Sizes of ELF reloc entries.
    static const int rel_size = sizeof(internal::Rel_data<size>);
    static const int rela_size = sizeof(internal::Rela_data<size>);
@@ -464,7 +464,7 @@
    // Size of ELF dynamic entry.
    static const int dyn_size = sizeof(internal::Dyn_data<size>);
    // Size of ELF version structures.
-@@ -1709,6 +1721,49 @@ class Rela_write
+@@ -1741,6 +1753,49 @@ class Rela_write
    internal::Rela_data<size>* p_;
  };
  
@@ -515,7 +515,7 @@
  
  template<bool big_endian>
 diff --git a/elfcpp/elfcpp_internal.h b/elfcpp/elfcpp_internal.h
-index 36a6d6205f7..0c9accaa826 100644
+index 4aa4428dca3..3289550b689 100644
 --- a/elfcpp/elfcpp_internal.h
 +++ b/elfcpp/elfcpp_internal.h
 @@ -180,6 +180,12 @@ struct Rela_data
@@ -532,7 +532,7 @@
  
  struct Mips64_rel_data
 diff --git a/gold/aarch64.cc b/gold/aarch64.cc
-index 07abe44931f..85854867cbd 100644
+index 33485de61f6..d5cf625cecd 100644
 --- a/gold/aarch64.cc
 +++ b/gold/aarch64.cc
 @@ -2899,6 +2899,8 @@ class Target_aarch64 : public Sized_target<size, big_endian>
@@ -800,7 +800,7 @@
    // Emit any relocs we saved in an attempt to avoid generating COPY
    // relocs.
 diff --git a/gold/arm.cc b/gold/arm.cc
-index ad11c1bb007..e47b7b1278e 100644
+index a5a01bcd60e..7e11a02d97b 100644
 --- a/gold/arm.cc
 +++ b/gold/arm.cc
 @@ -2116,6 +2116,8 @@ class Target_arm : public Sized_target<32, big_endian>
@@ -1059,10 +1059,10 @@
        for (Stub_table_iterator sp = this->stub_tables_.begin();
  	   sp != this->stub_tables_.end();
 diff --git a/gold/layout.cc b/gold/layout.cc
-index 13e533aaf21..723a404d6ea 100644
+index a27cb071c75..73d1a47e4db 100644
 --- a/gold/layout.cc
 +++ b/gold/layout.cc
-@@ -5055,7 +5055,8 @@ void
+@@ -5068,7 +5068,8 @@ void
  Layout::add_target_dynamic_tags(bool use_rel, const Output_data* plt_got,
  				const Output_data* plt_rel,
  				const Output_data_reloc_generic* dyn_rel,
@@ -1072,7 +1072,7 @@
  {
    Output_data_dynamic* odyn = this->dynamic_data_;
    if (odyn == NULL)
-@@ -5128,6 +5129,17 @@ Layout::add_target_dynamic_tags(bool use_rel, const Output_data* plt_got,
+@@ -5141,6 +5142,17 @@ Layout::add_target_dynamic_tags(bool use_rel, const Output_data* plt_got,
  	}
      }
  
@@ -1091,7 +1091,7 @@
      {
        // The value of the DT_DEBUG tag is filled in by the dynamic
 diff --git a/gold/layout.h b/gold/layout.h
-index fd5878da18b..8a9d1864a67 100644
+index 0b378003679..04ceed35fbc 100644
 --- a/gold/layout.h
 +++ b/gold/layout.h
 @@ -945,7 +945,8 @@ class Layout
@@ -1105,7 +1105,7 @@
    // Add a target-specific dynamic tag with constant value.
    void
 diff --git a/gold/options.h b/gold/options.h
-index ea379080a97..6e32d5dd6ae 100644
+index 927e0734bba..0c95a07404d 100644
 --- a/gold/options.h
 +++ b/gold/options.h
 @@ -846,6 +846,10 @@ class General_options
@@ -1120,7 +1120,7 @@
  	      N_("Export all dynamic symbols"),
  	      N_("Do not export all dynamic symbols"));
 diff --git a/gold/output.cc b/gold/output.cc
-index 75d2fc354a5..697f179097e 100644
+index b7505ffd72c..81d1e8dbd00 100644
 --- a/gold/output.cc
 +++ b/gold/output.cc
 @@ -1236,6 +1236,26 @@ Output_reloc<elfcpp::SHT_RELA, dynamic, size, big_endian>::write(
@@ -1175,7 +1175,7 @@
  // Class Output_relocatable_relocs.
  
  template<int sh_type, int size, bool big_endian>
-@@ -5544,6 +5575,26 @@ template
+@@ -5545,6 +5576,26 @@ template
  class Output_data_reloc<elfcpp::SHT_RELA, true, 64, true>;
  #endif
  
@@ -1203,7 +1203,7 @@
  template
  class Output_relocatable_relocs<elfcpp::SHT_REL, 32, false>;
 diff --git a/gold/output.h b/gold/output.h
-index 77b6697e067..aff10f4ab9a 100644
+index 9c44f6259a2..84e473ee5a2 100644
 --- a/gold/output.h
 +++ b/gold/output.h
 @@ -558,7 +558,6 @@ class Output_data
@@ -1573,7 +1573,7 @@
  // relocatable link.  The actual data is written out in the target
  // hook relocate_relocs.  This just saves space for it.
 diff --git a/gold/reloc-types.h b/gold/reloc-types.h
-index 3671063ef0f..ee5388df6d7 100644
+index 106c54c1be6..da435b3d7e9 100644
 --- a/gold/reloc-types.h
 +++ b/gold/reloc-types.h
 @@ -79,6 +79,26 @@ struct Reloc_types<elfcpp::SHT_RELA, size, big_endian>
@@ -1604,7 +1604,7 @@
  
  #endif // !defined(GOLD_RELOC_TYPE_SH)
 diff --git a/gold/x86_64.cc b/gold/x86_64.cc
-index 1d9d9209bf3..d4e57e84ed5 100644
+index 2e4b2a70134..5add876cd34 100644
 --- a/gold/x86_64.cc
 +++ b/gold/x86_64.cc
 @@ -698,12 +698,13 @@ class Target_x86_64 : public Sized_target<size, false>
@@ -1621,8 +1621,8 @@
 +      rela_irelative_(NULL), relr_dyn_(NULL), copy_relocs_(elfcpp::R_X86_64_COPY),
        got_mod_index_offset_(-1U), tlsdesc_reloc_info_(),
        tls_base_symbol_defined_(false), isa_1_used_(0), isa_1_needed_(0),
-       feature_1_(0), object_isa_1_used_(0), object_feature_1_(0),
-@@ -982,6 +983,43 @@ class Target_x86_64 : public Sized_target<size, false>
+       feature_1_(0), feature_2_used_(0), feature_2_needed_(0),
+@@ -983,6 +984,43 @@ class Target_x86_64 : public Sized_target<size, false>
  		   Output_data_space* got_irelative,
  		   unsigned int plt_count);
  
@@ -1666,7 +1666,7 @@
   private:
    // The class which scans relocations.
    class Scan
-@@ -1289,6 +1327,10 @@ class Target_x86_64 : public Sized_target<size, false>
+@@ -1290,6 +1328,10 @@ class Target_x86_64 : public Sized_target<size, false>
    Reloc_section*
    rela_irelative_section(Layout*);
  
@@ -1677,7 +1677,7 @@
    // Add a potential copy relocation.
    void
    copy_reloc(Symbol_table* symtab, Layout* layout,
-@@ -1367,6 +1409,8 @@ class Target_x86_64 : public Sized_target<size, false>
+@@ -1368,6 +1410,8 @@ class Target_x86_64 : public Sized_target<size, false>
    Reloc_section* rela_dyn_;
    // The section to use for IRELATIVE relocs.
    Reloc_section* rela_irelative_;
@@ -1686,8 +1686,8 @@
    // Relocs saved to avoid a COPY reloc.
    Copy_relocs<elfcpp::SHT_RELA, size, false> copy_relocs_;
    // Offset of the GOT entry for the TLS module index.
-@@ -1678,6 +1722,23 @@ Target_x86_64<size>::do_finalize_gnu_properties(Layout* layout) const
- 		 this->feature_1_);
+@@ -1708,6 +1752,23 @@ Target_x86_64<size>::do_finalize_gnu_properties(Layout* layout) const
+ 		 this->feature_2_needed_);
  }
  
 +// Get the RELR dynamic reloc section, creating it if necessary.
@@ -1710,7 +1710,7 @@
  // Write the first three reserved words of the .got.plt section.
  // The remainder of the section is written while writing the PLT
  // in Output_data_plt_i386::do_write.
-@@ -3596,14 +3657,25 @@ Target_x86_64<size>::Scan::local(Symbol_table* symtab,
+@@ -3626,14 +3687,25 @@ Target_x86_64<size>::Scan::local(Symbol_table* symtab,
        if (parameters->options().output_is_position_independent())
  	{
  	  unsigned int r_sym = elfcpp::elf_r_sym<size>(reloc.get_r_info());
@@ -1744,7 +1744,7 @@
  	}
        break;
  
-@@ -3621,12 +3693,22 @@ Target_x86_64<size>::Scan::local(Symbol_table* symtab,
+@@ -3651,12 +3723,22 @@ Target_x86_64<size>::Scan::local(Symbol_table* symtab,
  	  if (size == 32 && r_type == elfcpp::R_X86_64_32)
  	    {
  	      unsigned int r_sym = elfcpp::elf_r_sym<size>(reloc.get_r_info());
@@ -1773,7 +1773,7 @@
  	      break;
  	    }
  
-@@ -3727,24 +3809,33 @@ Target_x86_64<size>::Scan::local(Symbol_table* symtab,
+@@ -3758,24 +3840,33 @@ Target_x86_64<size>::Scan::local(Symbol_table* symtab,
  	    // dynamic relocation for this symbol's GOT entry.
  	    if (parameters->options().output_is_position_independent())
  	      {
@@ -1817,7 +1817,7 @@
  		  }
  	      }
  	  }
-@@ -4108,12 +4199,24 @@ Target_x86_64<size>::Scan::global(Symbol_table* symtab,
+@@ -4125,12 +4216,24 @@ Target_x86_64<size>::Scan::global(Symbol_table* symtab,
  		      || (size == 32 && r_type == elfcpp::R_X86_64_32))
  		     && gsym->can_use_relative_reloc(false))
  	      {
@@ -1848,7 +1848,7 @@
  	      }
  	    else
  	      {
-@@ -4251,9 +4354,18 @@ Target_x86_64<size>::Scan::global(Symbol_table* symtab,
+@@ -4269,9 +4372,18 @@ Target_x86_64<size>::Scan::global(Symbol_table* symtab,
  		if (is_new)
  		  {
  		    unsigned int got_off = gsym->got_offset(GOT_TYPE_STANDARD);
@@ -1870,7 +1870,7 @@
  		  }
  	      }
  	  }
-@@ -4522,7 +4634,8 @@ Target_x86_64<size>::do_finalize_sections(
+@@ -4540,7 +4652,8 @@ Target_x86_64<size>::do_finalize_sections(
  				  ? NULL
  				  : this->plt_->rela_plt());
    layout->add_target_dynamic_tags(false, this->got_plt_, rel_plt,
@@ -1881,10 +1881,10 @@
    // Fill in some more dynamic tags.
    Output_data_dynamic* const odyn = layout->dynamic_data();
 diff --git a/include/elf/common.h b/include/elf/common.h
-index 4d94c4fd5b3..83374777d20 100644
+index e7d55ae0782..02e1bc7ca90 100644
 --- a/include/elf/common.h
 +++ b/include/elf/common.h
-@@ -526,6 +526,10 @@
+@@ -543,6 +543,10 @@
  #define SHT_GNU_verneed	SHT_SUNW_verneed
  #define SHT_GNU_versym	SHT_SUNW_versym
  
@@ -1895,7 +1895,7 @@
  #define SHT_LOPROC	0x70000000	/* Processor-specific semantics, lo */
  #define SHT_HIPROC	0x7FFFFFFF	/* Processor-specific semantics, hi */
  #define SHT_LOUSER	0x80000000	/* Application-specific semantics */
-@@ -1041,6 +1045,13 @@
+@@ -1085,6 +1089,13 @@
  /* This tag is a GNU extension to the Solaris version scheme.  */
  #define DT_VERSYM	0x6ffffff0
  
@@ -1910,7 +1910,7 @@
  #define DT_HIPROC	0x7fffffff
  
 diff --git a/include/elf/external.h b/include/elf/external.h
-index 230fdabd87a..6a43ebe9daf 100644
+index b24985687e6..9298021e5b9 100644
 --- a/include/elf/external.h
 +++ b/include/elf/external.h
 @@ -211,6 +211,10 @@ typedef struct {
@@ -1936,5 +1936,5 @@
  
  typedef struct {
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0007-move-SHT_RELR-section-type-to-the-generic-range.patch b/sys-devel/binutils/files/0007-move-SHT_RELR-section-type-to-the-generic-range.patch
index 4845a9f..4561bb4 100644
--- a/sys-devel/binutils/files/0007-move-SHT_RELR-section-type-to-the-generic-range.patch
+++ b/sys-devel/binutils/files/0007-move-SHT_RELR-section-type-to-the-generic-range.patch
@@ -1,4 +1,4 @@
-From 8bcba7032e380b69ef8a684706473509c1bcb5f7 Mon Sep 17 00:00:00 2001
+From b316ecee65c2c016adfbd4955016c949b61e88c7 Mon Sep 17 00:00:00 2001
 From: Rahul Chaudhry <rahulchaudhry@google.com>
 Date: Sat, 17 Mar 2018 15:31:31 -0800
 Subject: [PATCH 07/14] move SHT_RELR section type to the generic range.
@@ -22,7 +22,7 @@
 subject to change. We plan to send the patch upstream after the gABI has
 been updated to include the new definitions.
 
-[Adrian Ratiu: rebased from v2.27 to v2.35.1]
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 [Adrian Ratiu: regenerated as proper git format-patch.]
 
 Change-Id: I933355aa2da06b7c58de2e6e7ff93798ad6eb156
@@ -32,7 +32,7 @@
  2 files changed, 13 insertions(+), 22 deletions(-)
 
 diff --git a/elfcpp/elfcpp.h b/elfcpp/elfcpp.h
-index 9bbe4bfef86..a3a25de4c16 100644
+index 72e8848f361..4f4b16ee09f 100644
 --- a/elfcpp/elfcpp.h
 +++ b/elfcpp/elfcpp.h
 @@ -358,6 +358,7 @@ enum SHT
@@ -54,7 +54,7 @@
    SHT_SPARC_GOTDATA = 0x70000000,
  
    // ARM-specific section types.
-@@ -725,6 +722,11 @@ enum DT
+@@ -730,6 +727,11 @@ enum DT
  
    DT_PREINIT_ARRAY = 32,
    DT_PREINIT_ARRAYSZ = 33,
@@ -66,7 +66,7 @@
    DT_LOOS = 0x6000000d,
    DT_HIOS = 0x6ffff000,
    DT_LOPROC = 0x70000000,
-@@ -759,6 +761,7 @@ enum DT
+@@ -765,6 +767,7 @@ enum DT
    DT_SYMINFO = 0x6ffffeff,
    DT_ADDRRNGHI = 0x6ffffeff,
  
@@ -74,7 +74,7 @@
    DT_RELACOUNT = 0x6ffffff9,
    DT_RELCOUNT = 0x6ffffffa,
    DT_FLAGS_1 = 0x6ffffffb,
-@@ -769,13 +772,6 @@ enum DT
+@@ -775,13 +778,6 @@ enum DT
  
    DT_VERSYM = 0x6ffffff0,
  
@@ -89,10 +89,10 @@
    DT_PPC_GOT = 0x70000000,
  
 diff --git a/include/elf/common.h b/include/elf/common.h
-index 83374777d20..79c3a2fbbd5 100644
+index 02e1bc7ca90..7482572a3df 100644
 --- a/include/elf/common.h
 +++ b/include/elf/common.h
-@@ -506,6 +506,7 @@
+@@ -523,6 +523,7 @@
  #define SHT_PREINIT_ARRAY 16		/* Array of ptrs to pre-init funcs */
  #define SHT_GROUP	  17		/* Section contains a section group */
  #define SHT_SYMTAB_SHNDX  18		/* Indices for SHN_XINDEX entries */
@@ -100,7 +100,7 @@
  
  #define SHT_LOOS	0x60000000	/* First of OS specific semantics */
  #define SHT_HIOS	0x6fffffff	/* Last of OS specific semantics */
-@@ -526,10 +527,6 @@
+@@ -543,10 +544,6 @@
  #define SHT_GNU_verneed	SHT_SUNW_verneed
  #define SHT_GNU_versym	SHT_SUNW_versym
  
@@ -111,7 +111,7 @@
  #define SHT_LOPROC	0x70000000	/* Processor-specific semantics, lo */
  #define SHT_HIPROC	0x7FFFFFFF	/* Processor-specific semantics, hi */
  #define SHT_LOUSER	0x80000000	/* Application-specific semantics */
-@@ -988,6 +985,10 @@
+@@ -1031,6 +1028,10 @@
  #define DT_PREINIT_ARRAY   32
  #define DT_PREINIT_ARRAYSZ 33
  #define DT_SYMTAB_SHNDX    34
@@ -122,7 +122,7 @@
  
  /* Note, the Oct 4, 1999 draft of the ELF ABI changed the values
     for DT_LOOS and DT_HIOS.  Some implementations however, use
-@@ -1034,6 +1035,7 @@
+@@ -1078,6 +1079,7 @@
  #define DT_SYMINFO	0x6ffffeff
  #define DT_ADDRRNGHI	0x6ffffeff
  
@@ -130,7 +130,7 @@
  #define DT_RELACOUNT	0x6ffffff9
  #define DT_RELCOUNT	0x6ffffffa
  #define DT_FLAGS_1	0x6ffffffb
-@@ -1045,13 +1047,6 @@
+@@ -1089,13 +1091,6 @@
  /* This tag is a GNU extension to the Solaris version scheme.  */
  #define DT_VERSYM	0x6ffffff0
  
@@ -145,5 +145,5 @@
  #define DT_HIPROC	0x7fffffff
  
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0008-gold-turn-on-experimental-use-relr-by-default.patch b/sys-devel/binutils/files/0008-gold-turn-on-experimental-use-relr-by-default.patch
index 37b6f4f..73e46c2 100644
--- a/sys-devel/binutils/files/0008-gold-turn-on-experimental-use-relr-by-default.patch
+++ b/sys-devel/binutils/files/0008-gold-turn-on-experimental-use-relr-by-default.patch
@@ -1,9 +1,9 @@
-From d72141f5b99358984a0d6ffcd3c06534d7077942 Mon Sep 17 00:00:00 2001
+From 9644176a9eff283bcbabc1ae6d5344b3a4c3397f Mon Sep 17 00:00:00 2001
 From: Rahul Chaudhry <rahulchaudhry@google.com>
 Date: Sat, 17 Mar 2018 15:31:31 -0800
 Subject: [PATCH 08/14] gold: turn on --experimental-use-relr by default.
 
-[Adrian Ratiu: rebased from v2.27 to v2.35.1]
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 [Adrian Ratiu: regenerated as proper git format-patch.]
 
 Change-Id: I20cb32ebec8283017b8399d29fe8841a5c78aa0e
@@ -12,7 +12,7 @@
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/gold/options.h b/gold/options.h
-index 6e32d5dd6ae..9e47e5de999 100644
+index 0c95a07404d..037b5854188 100644
 --- a/gold/options.h
 +++ b/gold/options.h
 @@ -846,7 +846,7 @@ class General_options
@@ -25,5 +25,5 @@
  	      N_("Do not generate RELR dynamic relocations"));
  
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0009-gold-dwp-add-DWARF-v5-support.patch b/sys-devel/binutils/files/0009-gold-dwp-add-DWARF-v5-support.patch
index 8d63e99..c9a5ed8 100644
--- a/sys-devel/binutils/files/0009-gold-dwp-add-DWARF-v5-support.patch
+++ b/sys-devel/binutils/files/0009-gold-dwp-add-DWARF-v5-support.patch
@@ -1,4 +1,4 @@
-From c18475248187e73062b1dbed7550a46dfd623dcb Mon Sep 17 00:00:00 2001
+From de829eb5faf556f4affc81c7036bf9404d493562 Mon Sep 17 00:00:00 2001
 From: Caroline Tice <cmtice@google.com>
 Date: Fri, 20 Nov 2020 11:05:19 -0800
 Subject: [PATCH 09/14] gold: dwp: add DWARF v5 support
@@ -10,7 +10,7 @@
 
 This patch created for Chrome OS by Caroline Tice.
 Date: 19-Nov-2020
-[Adrian Ratiu: rebased from v2.27 to v2.35.2]
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 [Adrian Ratiu: regenerated as proper git format-patch.]
 
 Change-Id: I6e12e87747d0a005d8897eefd9639b50265e12d2
@@ -21,14 +21,14 @@
  gold/dwarf_reader.h  |   7 +-
  gold/dwp.cc          | 422 +++++++++++++++++++++++++++++++++----------
  gold/gdb-index.cc    |   4 +-
- include/dwarf2.h     |  13 +-
- 7 files changed, 400 insertions(+), 125 deletions(-)
+ include/dwarf2.h     |  41 ++---
+ 7 files changed, 406 insertions(+), 147 deletions(-)
 
 diff --git a/binutils/dwarf.c b/binutils/dwarf.c
-index eb59da29eaf..0d429632bc8 100644
+index dec611874ed..c49ed52899d 100644
 --- a/binutils/dwarf.c
 +++ b/binutils/dwarf.c
-@@ -1829,7 +1829,7 @@ find_cu_tu_set_v2 (dwarf_vma cu_offset, int do_types)
+@@ -1830,7 +1830,7 @@ find_cu_tu_set_v2 (dwarf_vma cu_offset, int do_types)
      {
        p = tu_sets;
        nsets = tu_count;
@@ -37,7 +37,7 @@
      }
    else
      {
-@@ -2800,7 +2800,7 @@ read_and_display_attr_value (unsigned long           attribute,
+@@ -2860,7 +2860,7 @@ read_and_display_attr_value (unsigned long           attribute,
  		  debug_info_p->max_loc_offsets = lmax;
  		}
  	      if (this_set != NULL)
@@ -46,7 +46,7 @@
  	      debug_info_p->have_frame_base [num] = have_frame_base;
  	      if (attribute != DW_AT_GNU_locviews)
  		{
-@@ -3760,8 +3760,8 @@ process_debug_info (struct dwarf_section *           section,
+@@ -3820,8 +3820,8 @@ process_debug_info (struct dwarf_section *           section,
  		      dwarf_vmatoa ("x", offsets [DW_SECT_LINE]),
  		      dwarf_vmatoa ("x", sizes [DW_SECT_LINE]));
  	      printf (_("    .debug_loc.dwo:          0x%s  0x%s\n"),
@@ -57,7 +57,7 @@
  	      printf (_("    .debug_str_offsets.dwo:  0x%s  0x%s\n"),
  		      dwarf_vmatoa ("x", offsets [DW_SECT_STR_OFFSETS]),
  		      dwarf_vmatoa ("x", sizes [DW_SECT_STR_OFFSETS]));
-@@ -10229,17 +10229,17 @@ get_DW_SECT_short_name (unsigned int dw_sect)
+@@ -10323,17 +10323,17 @@ get_DW_SECT_short_name (unsigned int dw_sect)
      {
        case DW_SECT_INFO:
  	return "info";
@@ -79,7 +79,7 @@
        case DW_SECT_MACRO:
  	return "macro";
 diff --git a/elfcpp/dwarf.h b/elfcpp/dwarf.h
-index d5e06d4d7d3..3392be6223b 100644
+index e24347f8481..c91c2871925 100644
 --- a/elfcpp/dwarf.h
 +++ b/elfcpp/dwarf.h
 @@ -253,14 +253,17 @@ enum DW_LANG
@@ -106,7 +106,7 @@
  
  } // End namespace elfcpp.
 diff --git a/gold/dwarf_reader.cc b/gold/dwarf_reader.cc
-index ba60654393c..d922300a6a1 100644
+index f0e6b89bde2..04d69353efa 100644
 --- a/gold/dwarf_reader.cc
 +++ b/gold/dwarf_reader.cc
 @@ -1313,6 +1313,21 @@ Dwarf_info_reader::do_parse()
@@ -201,7 +201,7 @@
  }
  
 diff --git a/gold/dwarf_reader.h b/gold/dwarf_reader.h
-index 9b140e7878e..3a28974b882 100644
+index 80b2231327c..e0efabd9004 100644
 --- a/gold/dwarf_reader.h
 +++ b/gold/dwarf_reader.h
 @@ -771,6 +771,10 @@ class Dwarf_info_reader
@@ -226,7 +226,7 @@
    // Visit a type unit.
    virtual void
 diff --git a/gold/dwp.cc b/gold/dwp.cc
-index 7c4eef090d4..29aa57c4308 100644
+index 102a98fda94..08300b220d5 100644
 --- a/gold/dwp.cc
 +++ b/gold/dwp.cc
 @@ -22,6 +22,7 @@
@@ -968,7 +968,7 @@
  
  }; // End namespace gold
 diff --git a/gold/gdb-index.cc b/gold/gdb-index.cc
-index d19b0446bb9..cf2d25b3ff9 100644
+index a9c080811a5..8b40d81f71d 100644
 --- a/gold/gdb-index.cc
 +++ b/gold/gdb-index.cc
 @@ -199,7 +199,8 @@ class Gdb_index_info_reader : public Dwarf_info_reader
@@ -990,32 +990,57 @@
  {
    ++Gdb_index_info_reader::dwarf_cu_count;
 diff --git a/include/dwarf2.h b/include/dwarf2.h
-index 9c4203c22f7..b91977afe4d 100644
+index 8f4d6aab3ed..1e74b00c8e3 100644
 --- a/include/dwarf2.h
 +++ b/include/dwarf2.h
-@@ -497,14 +497,17 @@ enum dwarf_range_list_entry
+@@ -496,33 +496,20 @@ enum dwarf_range_list_entry
+    (From the pre-standard formats Extensions for Fission.
+    See http://gcc.gnu.org/wiki/DebugFissionDWP).  */
  enum dwarf_sect
-   {
-     DW_SECT_INFO = 1,
--    DW_SECT_TYPES = 2,
+-{
+-  DW_SECT_INFO = 1,
+-  DW_SECT_TYPES = 2,
+-  DW_SECT_ABBREV = 3,
+-  DW_SECT_LINE = 4,
+-  DW_SECT_LOC = 5,
+-  DW_SECT_STR_OFFSETS = 6,
+-  DW_SECT_MACINFO = 7,
+-  DW_SECT_MACRO = 8,
+-  DW_SECT_MAX = 8
+-};
+-
+-/* Codes for the debug sections in a dwarf package (.dwp) file.
+-   (From the official DWARF v5 spec.
+-   See http://dwarfstd.org/doc/DWARF5.pdf, section 7.3.5).  */
+-enum dwarf_sect_v5
+-{
+-  DW_SECT_INFO_V5 = 1,
+-  DW_SECT_RESERVED_V5 = 2,
+-  DW_SECT_ABBREV_V5 = 3,
+-  DW_SECT_LINE_V5 = 4,
+-  DW_SECT_LOCLISTS_V5 = 5,
+-  DW_SECT_STR_OFFSETS_V5 = 6,
+-  DW_SECT_MACRO_V5 = 7,
+-  DW_SECT_RNGLISTS_V5 = 8,
+-  DW_SECT_MAX_V5 = 8
+-};
++  {
++    DW_SECT_INFO = 1,
 +    DW_SECT_TYPES = 2, // removed in v5
-     DW_SECT_ABBREV = 3,
-     DW_SECT_LINE = 4,
--    DW_SECT_LOC = 5,
++    DW_SECT_ABBREV = 3,
++    DW_SECT_LINE = 4,
 +    DW_SECT_LOCLISTS = 5, // was LOC pre-v5
-     DW_SECT_STR_OFFSETS = 6,
--    DW_SECT_MACINFO = 7,
--    DW_SECT_MACRO = 8,
--    DW_SECT_MAX = 8
++    DW_SECT_STR_OFFSETS = 6,
 +    DW_SECT_MACRO = 7, // was MACINFO pre-v5
 +    DW_SECT_RNGLISTS = 8, // was MACRO pre-v5
 +    LEGACY_DW_SECT_TYPES = 20,
 +    LEGACY_DW_SECT_LOC = 21,
 +    LEGACY_DW_SECT_MACINFO = 22,
 +    DW_SECT_MAX = LEGACY_DW_SECT_MACINFO
-   };
++  };
  
  #ifdef __cplusplus
+ extern "C" {
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0010-gold-dwp-improve-DWARF-v5-memory-efficiency.patch b/sys-devel/binutils/files/0010-gold-dwp-improve-DWARF-v5-memory-efficiency.patch
index 8462986..e0e81ff 100644
--- a/sys-devel/binutils/files/0010-gold-dwp-improve-DWARF-v5-memory-efficiency.patch
+++ b/sys-devel/binutils/files/0010-gold-dwp-improve-DWARF-v5-memory-efficiency.patch
@@ -1,4 +1,4 @@
-From fe74a17d59227b435e92edb60a040357a59a8cf3 Mon Sep 17 00:00:00 2001
+From 587f10af7a332eafa4f4e8f5ef0c4f595a6fe5ff Mon Sep 17 00:00:00 2001
 From: Caroline Tice <cmtice@google.com>
 Date: Fri, 20 Nov 2020 11:05:19 -0800
 Subject: [PATCH 10/14] gold: dwp: improve DWARF v5 memory efficiency
@@ -8,7 +8,7 @@
 
 This patch created for Chrome OS by Caroline Tice.
 Date: 20-Nov-2020
-[Adrian Ratiu: rebased from v2.27 to v2.35.1]
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 [Adrian Ratiu: regenerated as proper git format-patch.]
 
 Change-Id: I1f6fb66478d8e9eb9848e9628e2d2976b8d5be1d
@@ -19,7 +19,7 @@
  3 files changed, 77 insertions(+), 15 deletions(-)
 
 diff --git a/gold/dwp.cc b/gold/dwp.cc
-index 29aa57c4308..2beaa51879f 100644
+index 08300b220d5..d0c4d8bdfe4 100644
 --- a/gold/dwp.cc
 +++ b/gold/dwp.cc
 @@ -32,7 +32,7 @@
@@ -140,7 +140,7 @@
    return EXIT_SUCCESS;
  }
 diff --git a/gold/stringpool.cc b/gold/stringpool.cc
-index 8918f6f054f..406733cd99b 100644
+index 1329b35e1f1..b046e482b2e 100644
 --- a/gold/stringpool.cc
 +++ b/gold/stringpool.cc
 @@ -491,6 +491,38 @@ Stringpool_template<Stringpool_char>::write_to_buffer(
@@ -183,7 +183,7 @@
  
  template<typename Stringpool_char>
 diff --git a/gold/stringpool.h b/gold/stringpool.h
-index 9217b17910f..f4d0030758e 100644
+index cceb97e7219..35e1ddcffb1 100644
 --- a/gold/stringpool.h
 +++ b/gold/stringpool.h
 @@ -285,6 +285,12 @@ class Stringpool_template
@@ -200,5 +200,5 @@
    void
    print_stats(const char*) const;
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0011-gold-dwp-further-improve-DWARF-v5-memory-efficiency.patch b/sys-devel/binutils/files/0011-gold-dwp-further-improve-DWARF-v5-memory-efficiency.patch
index d37e189..38f702b 100644
--- a/sys-devel/binutils/files/0011-gold-dwp-further-improve-DWARF-v5-memory-efficiency.patch
+++ b/sys-devel/binutils/files/0011-gold-dwp-further-improve-DWARF-v5-memory-efficiency.patch
@@ -1,4 +1,4 @@
-From f8b42d640155ee466255ac6942056f858ea2c554 Mon Sep 17 00:00:00 2001
+From cc402029482b08427ea9343c17aa95338115ac39 Mon Sep 17 00:00:00 2001
 From: Caroline Tice <cmtice@google.com>
 Date: Fri, 20 Nov 2020 11:05:19 -0800
 Subject: [PATCH 11/14] gold: dwp: further improve DWARF v5 memory efficiency
@@ -10,7 +10,7 @@
 
 This patch created for Chrome OS by Caroline Tice.
 Date: 20-Nov-2020
-[Adrian Ratiu: rebased from v2.27 to v2.35.1]
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 [Adrian Ratiu: regenerated as proper git format-patch.]
 
 Change-Id: If45091e5590f7f71b45d58a861eb83bfeb9c5c26
@@ -20,7 +20,7 @@
  2 files changed, 14 insertions(+), 19 deletions(-)
 
 diff --git a/elfcpp/dwarf.h b/elfcpp/dwarf.h
-index 3392be6223b..04a6031bc29 100644
+index c91c2871925..c32188fcfc2 100644
 --- a/elfcpp/dwarf.h
 +++ b/elfcpp/dwarf.h
 @@ -253,16 +253,16 @@ enum DW_LANG
@@ -45,7 +45,7 @@
  };
  
 diff --git a/gold/dwp.cc b/gold/dwp.cc
-index 2beaa51879f..7acb9b401bc 100644
+index d0c4d8bdfe4..bb3f51b875e 100644
 --- a/gold/dwp.cc
 +++ b/gold/dwp.cc
 @@ -817,27 +817,15 @@ get_dwarf_section_name(elfcpp::DW_SECT section_id)
@@ -94,5 +94,5 @@
    unsigned int ncols = 0;
    for (unsigned int c = 1; c <= elfcpp::DW_SECT_MAX; ++c)
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0012-gold-dwp-implement-read-DW_FORM_strx-and-co.patch b/sys-devel/binutils/files/0012-gold-dwp-implement-read-DW_FORM_strx-and-co.patch
index a1107f1..2775c7c 100644
--- a/sys-devel/binutils/files/0012-gold-dwp-implement-read-DW_FORM_strx-and-co.patch
+++ b/sys-devel/binutils/files/0012-gold-dwp-implement-read-DW_FORM_strx-and-co.patch
@@ -1,4 +1,4 @@
-From 42ad09e2695365697e7d4432c9ac2d230381d3d2 Mon Sep 17 00:00:00 2001
+From 156466b10c4ffc896c1fd3c0e97a18259ac11d67 Mon Sep 17 00:00:00 2001
 From: Caroline Tice <cmtice@google.com>
 Date: Fri, 18 Dec 2020 00:59:16 -0800
 Subject: [PATCH 12/14] gold: dwp: implement read DW_FORM_strx and co
@@ -13,7 +13,7 @@
 
 This patch created for Chrome OS by Caroline Tice.
 Date: 17-Dec-2020
-[Adrian Ratiu: rebased from v2.27 to v2.35.1]
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 [Adrian Ratiu: regenerated as proper git format-patch.]
 
 Change-Id: I3bf5924bcd650123914297443323a9eb140f9272
@@ -24,7 +24,7 @@
  3 files changed, 203 insertions(+), 4 deletions(-)
 
 diff --git a/elfcpp/elfcpp_swap.h b/elfcpp/elfcpp_swap.h
-index 61b3ba57520..8f0ea518c44 100644
+index 4ccb48e2899..1c301f9ba0f 100644
 --- a/elfcpp/elfcpp_swap.h
 +++ b/elfcpp/elfcpp_swap.h
 @@ -131,6 +131,13 @@ struct Valtype_base<16>
@@ -89,7 +89,7 @@
  struct Swap_unaligned<32, false>
  {
 diff --git a/gold/dwarf_reader.cc b/gold/dwarf_reader.cc
-index d922300a6a1..9438665c35c 100644
+index 04d69353efa..2b6f04518c1 100644
 --- a/gold/dwarf_reader.cc
 +++ b/gold/dwarf_reader.cc
 @@ -33,6 +33,7 @@
@@ -301,7 +301,7 @@
  // hook methods normally provided by a derived class.  We provide
  // default implementations rather than no implementation so that
 diff --git a/gold/dwarf_reader.h b/gold/dwarf_reader.h
-index 3a28974b882..904f32b08c4 100644
+index e0efabd9004..c8f6c2eb3bc 100644
 --- a/gold/dwarf_reader.h
 +++ b/gold/dwarf_reader.h
 @@ -568,6 +568,15 @@ class Dwarf_die
@@ -416,5 +416,5 @@
  
  // We can't do better than to keep the offsets in a sorted vector.
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0013-gold-dwp-fix-null-dereference-on-executable-with-no-.patch b/sys-devel/binutils/files/0013-gold-dwp-fix-null-dereference-on-executable-with-no-.patch
index bced6cf..d602c6e 100644
--- a/sys-devel/binutils/files/0013-gold-dwp-fix-null-dereference-on-executable-with-no-.patch
+++ b/sys-devel/binutils/files/0013-gold-dwp-fix-null-dereference-on-executable-with-no-.patch
@@ -1,4 +1,4 @@
-From 3d61761717d87314f3fbbf751ec81574443af7ec Mon Sep 17 00:00:00 2001
+From 667c708b9920ac6ee700b0cc30ef2227925e8d9b Mon Sep 17 00:00:00 2001
 From: Adrian Ratiu <adrian.ratiu@collabora.com>
 Date: Tue, 12 Jan 2021 00:46:33 +0200
 Subject: [PATCH 13/14] gold: dwp: fix null dereference on executable with no
@@ -11,12 +11,14 @@
 is NULL.
 
 Fix the input validation and also add an assertion in finalize().
+
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 ---
  gold/dwp.cc | 10 ++++++++--
  1 file changed, 8 insertions(+), 2 deletions(-)
 
 diff --git a/gold/dwp.cc b/gold/dwp.cc
-index 7acb9b401bc..cc3eb324f2b 100644
+index bb3f51b875e..3e9b3e8df4f 100644
 --- a/gold/dwp.cc
 +++ b/gold/dwp.cc
 @@ -2025,6 +2025,8 @@ Dwp_output_file::finalize()
@@ -44,5 +46,5 @@
    if (verify_only)
      {
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0014-gold-add-option-to-install-only-the-dwp-tool.patch b/sys-devel/binutils/files/0014-gold-add-option-to-install-only-the-dwp-tool.patch
index 523a827..560d0ab 100644
--- a/sys-devel/binutils/files/0014-gold-add-option-to-install-only-the-dwp-tool.patch
+++ b/sys-devel/binutils/files/0014-gold-add-option-to-install-only-the-dwp-tool.patch
@@ -1,4 +1,4 @@
-From 69d663d2e2f7f161d09860f622cfe96271eaec1d Mon Sep 17 00:00:00 2001
+From 7595e4b1c258d86cdddf4048ff63b298c1960a37 Mon Sep 17 00:00:00 2001
 From: Adrian Ratiu <adrian.ratiu@collabora.com>
 Date: Sat, 9 Jan 2021 04:06:08 +0200
 Subject: [PATCH 14/14] gold: add option to install only the dwp tool
@@ -13,6 +13,8 @@
 is not, so an option to enable only dwp in gold builds can be
 helpful as well to avoid project specific hacks like removing
 the gold linker in do_install() scripts just to have dwp.
+
+[Adrian Ratiu: rebased from v2.27 to v2.36.1]
 ---
  configure         |  4 +++-
  configure.ac      |  4 +++-
@@ -25,10 +27,10 @@
  8 files changed, 26 insertions(+), 7 deletions(-)
 
 diff --git a/configure b/configure
-index 54d0339ab9e..b381d8c875a 100755
+index 68779feb42b..4551d750d63 100755
 --- a/configure
 +++ b/configure
-@@ -3036,6 +3036,8 @@ fi
+@@ -2986,6 +2986,8 @@ fi
  #     Build both gold (installed as "ld.gold") and ld (installed as "ld"
  #     and ld.bfd).
  #     In other words, ld is default
@@ -37,7 +39,7 @@
  # --enable-gold=default --enable-ld=default
  #     Error.
  
-@@ -3048,7 +3050,7 @@ else
+@@ -2998,7 +3000,7 @@ else
  fi
  
  case "${ENABLE_GOLD}" in
@@ -47,10 +49,10 @@
      is_elf=no
      case "${target}" in
 diff --git a/configure.ac b/configure.ac
-index a910c4fd6ba..28e64e8e856 100644
+index d16a2757689..7c0c03317ff 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -319,6 +319,8 @@ AC_ARG_ENABLE(offload-targets,
+@@ -318,6 +318,8 @@ AC_ARG_ENABLE(offload-targets,
  #     Build both gold (installed as "ld.gold") and ld (installed as "ld"
  #     and ld.bfd).
  #     In other words, ld is default
@@ -59,7 +61,7 @@
  # --enable-gold=default --enable-ld=default
  #     Error.
  
-@@ -329,7 +331,7 @@ AC_ARG_ENABLE(gold,
+@@ -328,7 +330,7 @@ AC_ARG_ENABLE(gold,
  ENABLE_GOLD=$enableval,
  ENABLE_GOLD=no)
  case "${ENABLE_GOLD}" in
@@ -69,7 +71,7 @@
      is_elf=no
      case "${target}" in
 diff --git a/gold/Makefile.am b/gold/Makefile.am
-index 3860e798106..a9758b46425 100644
+index 1947c18eba7..d62e6bb6566 100644
 --- a/gold/Makefile.am
 +++ b/gold/Makefile.am
 @@ -223,6 +223,7 @@ check: libgold.a
@@ -89,7 +91,7 @@
  
  # We want install to imply install-info as per GNU standards, despite
 diff --git a/gold/Makefile.in b/gold/Makefile.in
-index f2906ede8b6..c35a5e94f26 100644
+index 9fd2121473c..f500242f1c9 100644
 --- a/gold/Makefile.in
 +++ b/gold/Makefile.in
 @@ -628,6 +628,7 @@ htmldir = @htmldir@
@@ -100,7 +102,7 @@
  install_sh = @install_sh@
  installed_linker = @installed_linker@
  libdir = @libdir@
-@@ -1583,6 +1584,7 @@ check: libgold.a
+@@ -1584,6 +1585,7 @@ check: libgold.a
  
  install-exec-local: ld-new$(EXEEXT)
  	$(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(tooldir)/bin
@@ -108,7 +110,7 @@
  	n=`echo $(installed_linker) | sed '$(transform)'`; \
  	$(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) \
  	  ld-new$(EXEEXT) $(DESTDIR)$(bindir)/$${n}$(EXEEXT); \
-@@ -1601,6 +1603,7 @@ install-exec-local: ld-new$(EXEEXT)
+@@ -1602,6 +1604,7 @@ install-exec-local: ld-new$(EXEEXT)
  	    ln $(DESTDIR)$(bindir)/$${n}$(EXEEXT) $(DESTDIR)$(tooldir)/bin/ld$(EXEEXT) >/dev/null 2>/dev/null \
  	    || $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) ld-new$(EXEEXT) $(DESTDIR)$(tooldir)/bin/ld$(EXEEXT); \
  	  fi; \
@@ -117,10 +119,10 @@
  
  # We want install to imply install-info as per GNU standards, despite
 diff --git a/gold/configure b/gold/configure
-index 199a739e7d1..e30facb8f67 100755
+index e264a65ac3c..6a6cb8b1a09 100755
 --- a/gold/configure
 +++ b/gold/configure
-@@ -731,6 +731,7 @@ PLUGINS_FALSE
+@@ -735,6 +735,7 @@ PLUGINS_FALSE
  PLUGINS_TRUE
  installed_linker
  install_as_default
@@ -128,7 +130,7 @@
  EGREP
  GREP
  CPP
-@@ -4958,6 +4959,9 @@ if test "${enable_gold+set}" = set; then :
+@@ -4962,6 +4963,9 @@ if test "${enable_gold+set}" = set; then :
       install_as_default=yes
     fi
     ;;
@@ -139,7 +141,7 @@
  else
    install_as_default=no
 diff --git a/gold/configure.ac b/gold/configure.ac
-index eca4f01c111..7b3fa05b32c 100644
+index eed45664093..982db6c1356 100644
 --- a/gold/configure.ac
 +++ b/gold/configure.ac
 @@ -67,10 +67,12 @@ AC_DEFINE_UNQUOTED(TARGET_SYSTEM_ROOT_RELOCATABLE, $sysroot_relocatable,
@@ -173,10 +175,10 @@
  AC_PLUGINS
  if test "$plugins" = "yes"; then
 diff --git a/ld/configure b/ld/configure
-index e20f53c414d..bf6877ddd52 100755
+index b0969791959..a2f9be2ea12 100755
 --- a/ld/configure
 +++ b/ld/configure
-@@ -15803,7 +15803,7 @@ if test "${enable_gold+set}" = set; then :
+@@ -15827,7 +15827,7 @@ if test "${enable_gold+set}" = set; then :
     install_as_default=no
     installed_linker=ld.bfd
     ;;
@@ -186,10 +188,10 @@
     installed_linker=ld.bfd
     ;;
 diff --git a/ld/configure.ac b/ld/configure.ac
-index b77f8510ca6..a25b903fda5 100644
+index c9c69ab9245..9555d79e0e1 100644
 --- a/ld/configure.ac
 +++ b/ld/configure.ac
-@@ -108,13 +108,13 @@ dnl Use --enable-gold to decide if this linker should be the default.
+@@ -98,13 +98,13 @@ dnl Use --enable-gold to decide if this linker should be the default.
  dnl "install_as_default" is set to false if gold is the default linker.
  dnl "installed_linker" is the installed BFD linker name.
  AC_ARG_ENABLE(gold,
@@ -206,5 +208,5 @@
     installed_linker=ld.bfd
     ;;
 -- 
-2.31.1
+2.32.0
 
diff --git a/sys-devel/binutils/files/0015-gold-remove-iovec-and-add-missing-headers.patch b/sys-devel/binutils/files/0015-gold-remove-iovec-and-add-missing-headers.patch
new file mode 100644
index 0000000..abb1ce7
--- /dev/null
+++ b/sys-devel/binutils/files/0015-gold-remove-iovec-and-add-missing-headers.patch
@@ -0,0 +1,44 @@
+From b4b008ec7ee73128c84d0af63f7faab3074d1013 Mon Sep 17 00:00:00 2001
+From: Christopher Di Bella <cjdb@google.com>
+Date: Fri, 30 Jul 2021 23:33:06 +0000
+Subject: [PATCH] gold: remove iovec and add missing headers
+
+The struct iovec is already defined somewhere in libstdc++, so this is
+causing binutils to fail during emerge.
+
+The headers for mkdir weren't being included so they were causing
+`mkdir(...)` to fail.
+---
+ gold/fileread.cc | 1 -
+ gold/plugin.cc   | 3 +++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/gold/fileread.cc b/gold/fileread.cc
+index 12ae1b4a6e8..265fadef31f 100644
+--- a/gold/fileread.cc
++++ b/gold/fileread.cc
+@@ -84,7 +84,6 @@ gold_munmap(void *, size_t)
+ #endif
+ 
+ #ifndef HAVE_READV
+-struct iovec { void* iov_base; size_t iov_len; };
+ ssize_t
+ readv(int, const iovec*, int)
+ {
+diff --git a/gold/plugin.cc b/gold/plugin.cc
+index 838d5c80413..7a279d61712 100644
+--- a/gold/plugin.cc
++++ b/gold/plugin.cc
+@@ -32,6 +32,9 @@
+ #include <unistd.h>
+ #include "libiberty.h"
+ 
++#include <sys/stat.h>
++#include <sys/types.h>
++
+ #ifdef ENABLE_PLUGINS
+ #ifdef HAVE_DLFCN_H
+ #include <dlfcn.h>
+-- 
+2.32.0
+
diff --git a/sys-devel/binutils/files/binutils-2.35.1-cet.patch b/sys-devel/binutils/files/binutils-2.35.1-cet.patch
deleted file mode 100644
index 7477ff9..0000000
--- a/sys-devel/binutils/files/binutils-2.35.1-cet.patch
+++ /dev/null
@@ -1,103 +0,0 @@
-https://bugs.gentoo.org/771765
-https://sourceware.org/PR27397
-
-On i586-like CPUs endbr32 added by -Wl,-z,ibt,-z,shstk
-generates crashing binaries and causes ./configure failure.
-
-From 847e4b3207f97762dc641db8d3b188081c3370c3 Mon Sep 17 00:00:00 2001
-From: "H.J. Lu" <hjl.tools@gmail.com>
-Date: Fri, 12 Feb 2021 16:30:23 -0800
-Subject: [PATCH] GCC_CET_HOST_FLAGS: Check if host supports multi-byte NOPs
-
----
- config/cet.m4       | 19 ++++++++++++++++---
- libiberty/configure | 29 +++++++++++++++++++++++++++++
- 2 files changed, 45 insertions(+), 3 deletions(-)
-
-diff --git a/config/cet.m4 b/config/cet.m4
-index c67fb4f35b6..7718be1afe8 100644
---- a/config/cet.m4
-+++ b/config/cet.m4
-@@ -130,6 +130,18 @@ fi
- if test x$may_have_cet = xyes; then
-   if test x$cross_compiling = xno; then
-     AC_TRY_RUN([
-+int
-+main ()
-+{
-+  asm ("endbr32");
-+  return 0;
-+}
-+    ],
-+    [have_multi_byte_nop=yes],
-+    [have_multi_byte_nop=no])
-+    have_cet=no
-+    if test x$have_multi_byte_nop = xyes; then
-+      AC_TRY_RUN([
- static void
- foo (void)
- {
-@@ -155,9 +167,10 @@ main ()
-   bar ();
-   return 0;
- }
--    ],
--    [have_cet=no],
--    [have_cet=yes])
-+      ],
-+      [have_cet=no],
-+      [have_cet=yes])
-+    fi
-     if test x$enable_cet = xno -a x$have_cet = xyes; then
-       AC_MSG_ERROR([Intel CET must be enabled on Intel CET enabled host])
-     fi
-diff --git a/libiberty/configure b/libiberty/configure
-index 160b8c9e8b1..29a690d44fc 100755
---- a/libiberty/configure
-+++ b/libiberty/configure
-@@ -5539,6 +5539,34 @@ else
-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
- /* end confdefs.h.  */
- 
-+int
-+main ()
-+{
-+  asm ("endbr32");
-+  return 0;
-+}
-+
-+_ACEOF
-+if ac_fn_c_try_run "$LINENO"; then :
-+  have_multi_byte_nop=yes
-+else
-+  have_multi_byte_nop=no
-+fi
-+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-+  conftest.$ac_objext conftest.beam conftest.$ac_ext
-+fi
-+
-+    have_cet=no
-+    if test x$have_multi_byte_nop = xyes; then
-+      if test "$cross_compiling" = yes; then :
-+  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-+as_fn_error $? "cannot run test program while cross compiling
-+See \`config.log' for more details" "$LINENO" 5; }
-+else
-+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h.  */
-+
- static void
- foo (void)
- {
-@@ -5575,6 +5603,7 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-   conftest.$ac_objext conftest.beam conftest.$ac_ext
- fi
- 
-+    fi
-     if test x$enable_cet = xno -a x$have_cet = xyes; then
-       as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" "$LINENO" 5
-     fi
--- 
-2.29.2
-
diff --git a/sys-devel/binutils/files/ldwrapper_lld b/sys-devel/binutils/files/ldwrapper_lld
index 57e8eb6..5353fc3 100755
--- a/sys-devel/binutils/files/ldwrapper_lld
+++ b/sys-devel/binutils/files/ldwrapper_lld
@@ -6,4 +6,4 @@
 # This files wraps lld.
 # Pass --hash-style=gnu to match gold/bfd wrappers.
 
-exec "$(dirname "$(readlink -f "$0")")"/ld.lld --hash-style=gnu "$@"
+exec "$(dirname "$(readlink -f "$0")")"/ld.lld --hash-style=gnu -z nostart-stop-gc "$@"
diff --git a/sys-devel/binutils/files/ldwrapper_lld.hardened b/sys-devel/binutils/files/ldwrapper_lld.hardened
index f240615..8f94dfa 100755
--- a/sys-devel/binutils/files/ldwrapper_lld.hardened
+++ b/sys-devel/binutils/files/ldwrapper_lld.hardened
@@ -6,4 +6,4 @@
 # This files wraps lld.
 # Enable smallpie, now, relro and hash-style=gnu to match gold wrapper.
 # Enable norosegment to match gold wrapper, for symbolization. b/140622025
-exec "$(dirname "$(readlink -f "$0")")"/ld.lld --pack-dyn-relocs=relr -z now -z relro --no-rosegment --hash-style=gnu "$@"
+exec "$(dirname "$(readlink -f "$0")")"/ld.lld --pack-dyn-relocs=relr -z now -z relro --no-rosegment --hash-style=gnu -z nostart-stop-gc "$@"
diff --git a/sys-devel/gcc/gcc-10.2.0-r15.ebuild b/sys-devel/gcc/gcc-10.2.0-r23.ebuild
similarity index 100%
rename from sys-devel/gcc/gcc-10.2.0-r15.ebuild
rename to sys-devel/gcc/gcc-10.2.0-r23.ebuild
diff --git a/sys-devel/gcc/gcc-10.2.0.ebuild b/sys-devel/gcc/gcc-10.2.0.ebuild
index 7f4107f..c6ea3ca 100644
--- a/sys-devel/gcc/gcc-10.2.0.ebuild
+++ b/sys-devel/gcc/gcc-10.2.0.ebuild
@@ -404,9 +404,6 @@
 				dosym "${sysroot_wrapper_file}" "${BINPATH}/${CTARGET}-${x}" || die
 			fi
 		done
-		for x in clang clang++; do
-			dosym "${sysroot_wrapper_file}" "${BINPATH}/${CTARGET}-${x}" || die
-		done
 		if use go; then
 			local wrapper="sysroot_wrapper.gccgo"
 			doexe "${FILESDIR}/${wrapper}" || die
diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest
index 5f023b6..5816ebd 100644
--- a/sys-devel/llvm/Manifest
+++ b/sys-devel/llvm/Manifest
@@ -1,4 +1,3 @@
-DIST llvm-9.0.0-manpages.tar.bz2 158546 BLAKE2B eed6235698a0b5993affe305f7fd22cd4cf444adf931275a1685f2049a5f17cf2933907577d9ce142348a3c579769b0436aa2b5a9a953958504125a8c3e83b7d SHA512 64c8d18061eb2870b379a1df485be0b61eac07cb10b3f97347b54b2ee326faa63437ca04466776be282e120dd3f6147e14fffdd38ca370db85748fe5eb54d764
-DIST llvm-9.0.0.src.tar.xz 32994768 BLAKE2B 7f09bff9bcada95ab9c920c78aef92b57e665d9188bab39c734084ceb03a801c942fed48ea77fabeeb6110c648cb69363c659a6ce93ebf67dbba5c187219b13b SHA512 1bb3341e1d231559b948f1505b33c2e2e03989f9b8bbfef0e0cdaff5ac43f85574c9ec5ac53399b914f497d6899425d861411024e8d7e1d1a338c1c6951ac658
-DIST llvm-profdata-cd442157cff4aad209ae532cbf031abbe10bc1df.tar.xz 5842760 BLAKE2B dd1a8a6c07aa4102eb4e7f1cbfb9a8567684b0ae63c2e25d02d702459f6910f85f2c39a42a437c80622ad9be90512d52a8949bdadffb20ca9e2bddd3fc6192ae SHA512 09b69eb0bff6a8cfdcbed8857fdc1f8d76193fc93e67e724ffc74f1c2167877fd4f0dd29d9c3041686048979aab4b0de709f03b9000b05ef7dd2f0b39d4249dc
-DIST llvm-profdata-7f6f9f4cf966c78a315d15d6e913c43cfa45c47c.tar.xz 5643044 BLAKE2B f08fb0851b545dc38b32fc48fa00f743651bab0968290ef76ca1e5ed942faab27f72a53247822dcf4da7e12cf07b61897f96aeb518c5969f417a4290467fd350 SHA512 edb3b2628a016ee0fc3abf13d57b6663ce7b9a341c759b70f38c17ac1cd0d72dae8009f9b268c9992bf62ea0450f1681964b85540f2eac5c42fff4d6145eff24
+DIST llvm-profdata-9968896cd62a62b11ac61085534dd598c4bd3c60.tar.xz 6273388 BLAKE2B 59a4b7a7470c7a02e4223f4012c76ab3287e459fd064698bbafd14f8e28706388e94e628410839ce0be38ed1d93fe2f43d826bbd742b5a0ab37031abb2c785a3 SHA512 45f3f7ed00c82f51577046b4f26d66f1e4ff155a18f90b95793859111ce9b723060754433b139fa8fef04a7cd392ced897dc6d87a10b95023be44f1aa02e3da8
+DIST llvm-12.0.1-manpages.tar.bz2 191582 BLAKE2B a049cd305c257875d47e92d703c51aee8225854f999eddbd530c7a978704a981b05bc0819ba31a2f2a218d3569b078f0deb01b0eeb385966253b54a0fdc090d1 SHA512 9931a57f843709aed59193524fe980af695e4e23c8f53ec3cff308677ba4fc520ca58032b50b68440c7762305855317d9a705fe5ccbb543fb104f4deb5d10ea5
+DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1
diff --git a/sys-devel/llvm/files/PATCHES.json b/sys-devel/llvm/files/PATCHES.json
index c0096d5..b74000f 100644
--- a/sys-devel/llvm/files/PATCHES.json
+++ b/sys-devel/llvm/files/PATCHES.json
@@ -807,5 +807,232 @@
         "rel_patch_path": "cherry/801ab71032e157eb7bcd38efeb6486742a7c53bb.patch",
         "start_version": 422132,
         "end_version": 427980
+    },
+    {
+        "comment": "[ThinLTO] Respect ClearDSOLocalOnDeclarations for unimported functions",
+        "rel_patch_path": "cherry/252a1eecc04080d852ba58c6727970c688eb1619.patch",
+        "start_version": 389603,
+        "end_version": 431743
+    },
+    {
+        "comment": "[InstCombine] fix miscompile from vector select substitution",
+        "rel_patch_path": "cherry/7bb8bfa0622b8ee55c3f748004dcf4d83d48cf97.patch",
+        "start_version": 428724,
+        "end_version": 428786
+    },
+    {
+        "comment": "[SLP]Better detection of perfect/shuffles matches for gather nodes.",
+        "rel_patch_path": "cherry/36911971a58d1ba8b15e97790ac816eaadb0603e.patch",
+        "start_version": 428724,
+        "end_version": 428883
+    },
+    {
+        "comment": "[LTO] Fix -fwhole-program-vtables handling after HIP ThinLTO patch",
+        "rel_patch_path": "cherry/d0ee8b64ecf359737ce550d8f47f465ab6657be7.patch",
+        "start_version": 428724,
+        "end_version": 429138
+    },
+    {
+        "comment": "[X86] Check destination element type before forming VTRUNCS/VTRUNCUS in combineTruncateWithSat.",
+        "rel_patch_path": "cherry/765ef4bb2af604ea2bbd6c1bffaa6e1600804c9e.patch",
+        "start_version": 428724,
+        "end_version": 429620
+    },
+    {
+        "comment": "[libcxx][atomic] Fix failure mapping in compare_exchange_{strong,weak}.",
+        "rel_patch_path": "cherry/6d33362dafb66b3af4717990d9a06450ec13f367.patch",
+        "start_version": 428724,
+        "end_version": 430140
+    },
+    {
+        "comment": "Revert \"Add workaround for false positive in -Wfree-nonheap-object\"",
+        "rel_patch_path": "cherry/0082764605cc0e7e0363a41ffa77d214c3157aa6.patch",
+        "start_version": 423544,
+        "end_version": 433358
+    },
+    {
+        "comment": "[X86] Remove incorrect use of known bits in shuffle simplification.",
+        "rel_patch_path": "cherry/6601be441974cb1b91c47ee20bf9a284076cf6dd.patch",
+        "start_version": 425001,
+        "end_version": 432955
+    },
+    {
+        "comment": "Revert \"[cmake] [compiler-rt] Call llvm_setup_rpath() when adding shared libraries.\"",
+        "rel_patch_path": "cherry/21c008d5a5b1e0c2ec3c1659cff961f4b0ccea2c.patch",
+        "start_version": 428724,
+        "end_version": 430742
+    },
+    {
+        "comment": "Revert \"Revert \"DirectoryWatcher: add an implementation for Windows\"\"",
+        "rel_patch_path": "cherry/76f1baa7875acd88bdd4b431eed6e2d2decfc0fe.patch",
+        "start_version": 428724,
+        "end_version": 429922
+    },
+    {
+        "comment": "Revert \"[lldb] Add support for evaluating expressions in static member functions\"",
+        "rel_patch_path": "cherry/4125b46232caf6a558470670f87b56ccb46d61aa.patch",
+        "start_version": 425233,
+        "end_version": 429832
+    },
+    {
+        "comment": "Revert \"3rd Reapply \"[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands\"\"",
+        "rel_patch_path": "cherry/386b66b2fc297cda121a3cc8a36887a6ecbcfc68.patch",
+        "start_version": 428070,
+        "end_version": 429480
+    },
+    {
+        "comment": "Revert \"[LoopUnrollAndJam] Change LoopUnrollAndJamPass to LoopNest pass\"",
+        "rel_patch_path": "cherry/0a9d0799316c7a601a0b20a123bd99922ac6455b.patch",
+        "start_version": 428636,
+        "end_version": 429323
+    },
+    {
+        "comment": "Revert \"[clang-tidy] Simplify static assert check\"",
+        "rel_patch_path": "cherry/be6b9e8ae71768d2e09ec14619ca4ecfdef553fa.patch",
+        "start_version": 428724,
+        "end_version": 428788
+    },
+    {
+        "comment": "Revert \"[clang][Parse] Add parsing support for C++ attributes on using-declarations\"",
+        "rel_patch_path": "cherry/f63adf5b67f7a25b15f81d3a1a207aba4f226dc4.patch",
+        "start_version": 428722,
+        "end_version": 428737
+    },
+    {
+        "comment": "Revert \"[libc++] NFC: Move unwrap_iter to its own header\"",
+        "rel_patch_path": "cherry/b13edf6e907b32d0b8da09dfe08fa271638eca3c.patch",
+        "start_version": 428724,
+        "end_version": 428763
+    },
+    {
+        "comment": "Revert \"[NFCI][LoopDeletion] Do not call complex analysis for known non-zero BTC\"",
+        "rel_patch_path": "cherry/dd226803c220f02a5987f0ee9f9ac3ffe2b35c09.patch",
+        "start_version": 428588,
+        "end_version": 428728
+    },
+    {
+        "comment": "Revert \"[NFC] Reuse existing variables instead of re-requesting successors\"",
+        "rel_patch_path": "cherry/807fc7cdc97fc172b4967707a7718e7333351bff.patch",
+        "start_version": 428587,
+        "end_version": 428729
+    },
+    {
+        "comment": "Revert \"[NFC] Formatting fix\"",
+        "rel_patch_path": "cherry/fd553312031c7d8085fa6ee0755a957796eadf05.patch",
+        "start_version": 428581,
+        "end_version": 428730
+    },
+    {
+        "comment": "Revert \"[NFCI][LoopDeletion] Only query SCEV about loop successor if another successor is also in loop\"",
+        "rel_patch_path": "cherry/24bd657202379595b514ee17241f019294e86bc9.patch",
+        "start_version": 428580,
+        "end_version": 428731
+    },
+    {
+        "comment": "Revert \"Return \"[LoopDeletion] Break backedge if we can prove that the loop is exited on 1st iteration\" (try 2)\"",
+        "rel_patch_path": "cherry/0159652058ca555b05db6a209fe9cf660c3bf8e6.patch",
+        "start_version": 428490,
+        "end_version": 428732
+    },
+    {
+        "comment": "Revert \"[NFC] Use ArgListEntry indirect types more in ISel lowering\"",
+        "rel_patch_path": "cherry/3a6f12f9156bcebf38965d96007bd942024c75be.patch",
+        "start_version": 427793,
+        "end_version": 428781
+    },
+    {
+        "comment": "Revert \"[TargetLowering] Only inspect attributes in the arguments for ArgListEntry\"",
+        "rel_patch_path": "cherry/71cca4f728d7421e40ec9aec0816313391fe9b59.patch",
+        "start_version": 427792,
+        "end_version": 428782
+    },
+    {
+        "comment": "Revert \"[MemCpyOpt] Allow variable lengths in memcpy optimizer\"",
+        "rel_patch_path": "revert-f5446b769a7929806f72256fccd4826d66502e59.patch",
+        "start_version": 425181
+    },
+    {
+        "comment": "[compiler-rt] [builtins] [AArch64] Add missing AArch64 data synchronization barrier (dsb) to __clear_cache",
+        "rel_patch_path": "cherry/6455418d3d2a2de1a8251cc2ccf2e87b9ae3112d.patch",
+        "start_version": 428724,
+        "end_version": 429795
+    },
+    {
+        "comment": "DebugInfo: LTO with -g inlined into -gmlt combined with Split DWARF without CU cross-references",
+        "rel_patch_path": "cherry/1b112c80a68697687189ddf5bb01b2edacb618af.patch",
+        "start_version": 428724,
+        "end_version": 431151
+    },
+    {
+        "comment": "[ELF] --fortran-common: prefer STB_WEAK to COMMON",
+        "rel_patch_path": "cherry/7de2173c2a4c45711831cfee3ccf53690c76ff07.patch",
+        "start_version": 428724,
+        "end_version": 432575
+    },
+    {
+        "comment": "[NewPM] Add CrossDSOCFI pass irrespective of LTO optimization level",
+        "rel_patch_path": "cherry/c45e17f11f508d1aea97eded3f1bda2a448f2032.patch",
+        "start_version": 428724,
+        "end_version": 433637
+    },
+    {
+        "comment": "[Unwind] Split unwind.h",
+        "rel_patch_path": "cherry/9ed1c7e4964382b95a5886279c0dfc7147a57b17.patch",
+        "start_version": 422132,
+        "end_version": 435268
+    },
+    {
+        "comment": "[Arm][Unwind][libc++abi] Add _Unwind_ForcedUnwind to EHABI.",
+        "rel_patch_path": "cherry/db126ae243cd70e4f68fd50a7c619740e90e1dc6.patch",
+        "start_version": 422132,
+        "end_version": 435269
+    },
+    {
+        "comment": "[libunwind] Compile with -Wunused-but-set-variable",
+        "rel_patch_path": "cherry/6b6d3447317673015f62206b2669c2d0a74132dc.patch",
+        "start_version": 422132,
+        "end_version": 435270
+    },
+    {
+        "comment": "libunwind: add missing break statements in EHABI",
+        "rel_patch_path": "cherry/08a5ac36b956edeb989b4a65269a829eac26a5a2.patch",
+        "start_version": 428724,
+        "end_version": 435201
+    },
+    {
+        "comment": "[MBP] findBestLoopTopHelper should exit if OldTop is not a chain header",
+        "rel_patch_path": "cherry/50b62731452cb83979bbf3c06e828d26a4698dca.patch",
+        "start_version": 422132,
+        "end_version": 434174
+    },
+    {
+        "comment": "[MC][CodeGen] Emit constant pools earlier",
+        "rel_patch_path": "cherry/ad253446208a06902d3bc4939ac7a64f8026cc84.patch",
+        "start_version": 428724,
+        "end_version": 434684
+    },
+    {
+        "comment": "PR45881: Properly use CXXThisOverride for templated lambda",
+        "rel_patch_path": "cherry/61d1cce2f83571c00f76144d42a2dea2cb3ab1ca.patch",
+        "start_version": 428724,
+        "end_version": 437403
+    },
+    {
+        "comment": "[SampleFDO] Allow forward compatibility when adding a new section for extbinary format.",
+        "rel_patch_path": "cherry/8eb617d719bdc6a4ed7773925d2421b9bbdd4b7a.patch",
+        "start_version": 428724,
+        "end_version": 437409
+    },
+    {
+        "comment": "Fixed a bug in https://reviews.llvm.org/rG8eb617d719bdc6a4ed7773925d2421b9bbdd4b7a",
+        "rel_patch_path": "cherry/e8b376547b4b77671c36607ade025d3272699e7a.patch",
+        "start_version": 428724,
+        "end_version": 438900
+    },
+    {
+        "comment": "Add REQUIRES: zlib in forward-compatible.test since it handles compressed file",
+        "rel_patch_path": "cherry/80865f7579d619dee4ffd5abb72f641ef74dedbb.patch",
+        "start_version": 428724,
+        "end_version": 438901
     }
 ]
diff --git a/sys-devel/llvm/files/cherry/0082764605cc0e7e0363a41ffa77d214c3157aa6.patch b/sys-devel/llvm/files/cherry/0082764605cc0e7e0363a41ffa77d214c3157aa6.patch
new file mode 100644
index 0000000..4135566
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/0082764605cc0e7e0363a41ffa77d214c3157aa6.patch
@@ -0,0 +1,37 @@
+commit 0082764605cc0e7e0363a41ffa77d214c3157aa6
+Author: Christopher Di Bella <cjdb@google.com>
+Date:   Wed Jul 21 21:29:24 2021 +0000
+
+    Revert "Add workaround for false positive in -Wfree-nonheap-object"
+    
+    This reverts commit 499571ea835daf786626a0db1e12f890b6cd8f8d.
+
+diff --git a/mlir/lib/IR/OperationSupport.cpp b/mlir/lib/IR/OperationSupport.cpp
+index 60910f7f35de..b1feab3a60a8 100644
+--- a/mlir/lib/IR/OperationSupport.cpp
++++ b/mlir/lib/IR/OperationSupport.cpp
+@@ -237,9 +237,7 @@ detail::OperandStorage::~OperandStorage() {
+   if (isDynamicStorage()) {
+     TrailingOperandStorage &storage = getDynamicStorage();
+     storage.~TrailingOperandStorage();
+-    // Workaround false positive in -Wfree-nonheap-object
+-    auto *mem = &storage;
+-    free(mem);
++    free(&storage);
+   } else {
+     getInlineStorage().~TrailingOperandStorage();
+   }
+@@ -373,11 +371,8 @@ MutableArrayRef<OpOperand> detail::OperandStorage::resize(Operation *owner,
+     new (&newOperands[numOperands]) OpOperand(owner);
+ 
+   // If the current storage is also dynamic, free it.
+-  if (isDynamicStorage()) {
+-    // Workaround false positive in -Wfree-nonheap-object
+-    auto *mem = &storage;
+-    free(mem);
+-  }
++  if (isDynamicStorage())
++    free(&storage);
+ 
+   // Update the storage representation to use the new dynamic storage.
+   dynamicStorage.setPointerAndInt(newStorage, true);
diff --git a/sys-devel/llvm/files/cherry/0159652058ca555b05db6a209fe9cf660c3bf8e6.patch b/sys-devel/llvm/files/cherry/0159652058ca555b05db6a209fe9cf660c3bf8e6.patch
new file mode 100644
index 0000000..3cce7bc
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/0159652058ca555b05db6a209fe9cf660c3bf8e6.patch
@@ -0,0 +1,376 @@
+commit 0159652058ca555b05db6a209fe9cf660c3bf8e6
+Author: Stefan Pintilie <stefanp@ca.ibm.com>
+Date:   Fri May 28 11:35:25 2021 -0500
+
+    Revert "Return "[LoopDeletion] Break backedge if we can prove that the loop is exited on 1st iteration" (try 2)"
+    
+    This reverts commit be1a23203b1de655b8c7dac7549818d975a0cbbf.
+
+diff --git a/llvm/lib/Transforms/Scalar/LoopDeletion.cpp b/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
+index 41be776ec141..fd0e983b6199 100644
+--- a/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
++++ b/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
+@@ -17,7 +17,6 @@
+ #include "llvm/ADT/SmallVector.h"
+ #include "llvm/ADT/Statistic.h"
+ #include "llvm/Analysis/GlobalsModRef.h"
+-#include "llvm/Analysis/LoopIterator.h"
+ #include "llvm/Analysis/LoopPass.h"
+ #include "llvm/Analysis/MemorySSA.h"
+ #include "llvm/Analysis/OptimizationRemarkEmitter.h"
+@@ -136,168 +135,6 @@ static bool isLoopNeverExecuted(Loop *L) {
+   return true;
+ }
+ 
+-static const SCEV *
+-getSCEVOnFirstIteration(Value *V, Loop *L, ScalarEvolution &SE,
+-                        DenseMap<Value *, const SCEV *> &FirstIterSCEV) {
+-  // Fist, check in cache.
+-  auto Existing = FirstIterSCEV.find(V);
+-  if (Existing != FirstIterSCEV.end())
+-    return Existing->second;
+-  const SCEV *S = nullptr;
+-  // TODO: Once ScalarEvolution supports getValueOnNthIteration for anything
+-  // else but AddRecs, it's a good use case for it. So far, just consider some
+-  // simple cases, like arithmetic operations.
+-  Value *LHS, *RHS;
+-  using namespace PatternMatch;
+-  if (match(V, m_Add(m_Value(LHS), m_Value(RHS)))) {
+-    const SCEV *LHSS = getSCEVOnFirstIteration(LHS, L, SE, FirstIterSCEV);
+-    const SCEV *RHSS = getSCEVOnFirstIteration(RHS, L, SE, FirstIterSCEV);
+-    S = SE.getAddExpr(LHSS, RHSS);
+-  } else if (match(V, m_Sub(m_Value(LHS), m_Value(RHS)))) {
+-    const SCEV *LHSS = getSCEVOnFirstIteration(LHS, L, SE, FirstIterSCEV);
+-    const SCEV *RHSS = getSCEVOnFirstIteration(RHS, L, SE, FirstIterSCEV);
+-    S = SE.getMinusSCEV(LHSS, RHSS);
+-  } else if (match(V, m_Mul(m_Value(LHS), m_Value(RHS)))) {
+-    const SCEV *LHSS = getSCEVOnFirstIteration(LHS, L, SE, FirstIterSCEV);
+-    const SCEV *RHSS = getSCEVOnFirstIteration(RHS, L, SE, FirstIterSCEV);
+-    S = SE.getMulExpr(LHSS, RHSS);
+-  } else
+-    S = SE.getSCEV(V);
+-  assert(S && "Case not handled?");
+-  FirstIterSCEV[V] = S;
+-  return S;
+-}
+-
+-// Try to prove that one of conditions that dominates the latch must exit on 1st
+-// iteration.
+-static bool canProveExitOnFirstIteration(Loop *L, DominatorTree &DT,
+-                                         ScalarEvolution &SE, LoopInfo &LI) {
+-  BasicBlock *Latch = L->getLoopLatch();
+-
+-  if (!Latch)
+-    return false;
+-
+-  LoopBlocksRPO RPOT(L);
+-  RPOT.perform(&LI);
+-
+-  BasicBlock *Header = L->getHeader();
+-  // Blocks that are reachable on the 1st iteration.
+-  SmallPtrSet<BasicBlock *, 4> LiveBlocks;
+-  // Edges that are reachable on the 1st iteration.
+-  DenseSet<BasicBlockEdge> LiveEdges;
+-  LiveBlocks.insert(L->getHeader());
+-
+-  auto MarkLiveEdge = [&](BasicBlock *From, BasicBlock *To) {
+-    assert(LiveBlocks.count(From) && "Must be live!");
+-    LiveBlocks.insert(To);
+-    LiveEdges.insert({ From, To });
+-  };
+-
+-  auto MarkAllSuccessorsLive = [&](BasicBlock *BB) {
+-    for (auto *Succ : successors(BB))
+-      MarkLiveEdge(BB, Succ);
+-  };
+-
+-  // Check if there is only one predecessor on 1st iteration. Note that because
+-  // we iterate in RPOT, we have already visited all its (non-latch)
+-  // predecessors.
+-  auto GetSolePredecessorOnFirstIteration = [&](BasicBlock * BB)->BasicBlock * {
+-    if (BB == Header)
+-      return L->getLoopPredecessor();
+-    BasicBlock *OnlyPred = nullptr;
+-    for (auto *Pred : predecessors(BB))
+-      if (OnlyPred != Pred && LiveEdges.count({ Pred, BB })) {
+-        // 2 live preds.
+-        if (OnlyPred)
+-          return nullptr;
+-        OnlyPred = Pred;
+-      }
+-
+-    assert(OnlyPred && "No live predecessors?");
+-    return OnlyPred;
+-  };
+-  DenseMap<Value *, const SCEV *> FirstIterSCEV;
+-  SmallPtrSet<BasicBlock *, 4> Visited;
+-
+-  // Use the following algorithm to prove we never take the latch on the 1st
+-  // iteration:
+-  // 1. Traverse in topological order, so that whenever we visit a block, all
+-  //    its predecessors are already visited.
+-  // 2. If we can prove that the block may have only 1 predecessor on the 1st
+-  //    iteration, map all its phis onto input from this predecessor.
+-  // 3a. If we can prove which successor of out block is taken on the 1st
+-  //     iteration, mark this successor live.
+-  // 3b. If we cannot prove it, conservatively assume that all successors are
+-  //     live.
+-  for (auto *BB : RPOT) {
+-    Visited.insert(BB);
+-
+-    // This block is not reachable on the 1st iterations.
+-    if (!LiveBlocks.count(BB))
+-      continue;
+-
+-    // Skip inner loops.
+-    if (LI.getLoopFor(BB) != L) {
+-      MarkAllSuccessorsLive(BB);
+-      continue;
+-    }
+-
+-    // If RPOT exists, we should never visit a block before all of its
+-    // predecessors are visited. The only situation when this can be broken is
+-    // irreducible CFG. Do not deal with such cases.
+-    if (BB != Header)
+-      for (auto *Pred : predecessors(BB))
+-        if (!Visited.count(Pred))
+-          return false;
+-
+-    // If this block has only one live pred, map its phis onto their SCEVs.
+-    if (auto *OnlyPred = GetSolePredecessorOnFirstIteration(BB))
+-      for (auto &PN : BB->phis()) {
+-        if (!SE.isSCEVable(PN.getType()))
+-          continue;
+-        auto *Incoming = PN.getIncomingValueForBlock(OnlyPred);
+-        if (DT.dominates(Incoming, BB->getTerminator())) {
+-          const SCEV *IncSCEV =
+-              getSCEVOnFirstIteration(Incoming, L, SE, FirstIterSCEV);
+-          FirstIterSCEV[&PN] = IncSCEV;
+-        }
+-      }
+-
+-    using namespace PatternMatch;
+-    ICmpInst::Predicate Pred;
+-    Value *LHS, *RHS;
+-    const BasicBlock *IfTrue, *IfFalse;
+-    // TODO: Handle switches.
+-    if (!match(BB->getTerminator(),
+-               m_Br(m_ICmp(Pred, m_Value(LHS), m_Value(RHS)),
+-                    m_BasicBlock(IfTrue), m_BasicBlock(IfFalse)))) {
+-      MarkAllSuccessorsLive(BB);
+-      continue;
+-    }
+-
+-    if (!SE.isSCEVable(LHS->getType())) {
+-      MarkAllSuccessorsLive(BB);
+-      continue;
+-    }
+-
+-    // Can we prove constant true or false for this condition?
+-    const SCEV *LHSS = getSCEVOnFirstIteration(LHS, L, SE, FirstIterSCEV);
+-    const SCEV *RHSS = getSCEVOnFirstIteration(RHS, L, SE, FirstIterSCEV);
+-    // TODO: isKnownPredicateAt is more powerful, but it's too compile time
+-    // consuming. So we avoid using it here.
+-    if (SE.isKnownPredicate(Pred, LHSS, RHSS))
+-      MarkLiveEdge(BB, BB->getTerminator()->getSuccessor(0));
+-    else if (SE.isKnownPredicate(ICmpInst::getInversePredicate(Pred), LHSS,
+-                                 RHSS))
+-      MarkLiveEdge(BB, BB->getTerminator()->getSuccessor(1));
+-    else
+-      MarkAllSuccessorsLive(BB);
+-  }
+-
+-  // We can break the latch if it wasn't live.
+-  return !LiveEdges.count({ Latch, Header });
+-}
+-
+ /// If we can prove the backedge is untaken, remove it.  This destroys the
+ /// loop, but leaves the (now trivially loop invariant) control flow and
+ /// side effects (if any) in place.
+@@ -311,7 +148,7 @@ breakBackedgeIfNotTaken(Loop *L, DominatorTree &DT, ScalarEvolution &SE,
+     return LoopDeletionResult::Unmodified;
+ 
+   auto *BTC = SE.getBackedgeTakenCount(L);
+-  if (!BTC->isZero() && !canProveExitOnFirstIteration(L, DT, SE, LI))
++  if (!BTC->isZero())
+     return LoopDeletionResult::Unmodified;
+ 
+   breakLoopBackedge(L, DT, SE, LI, MSSA);
+diff --git a/llvm/test/Transforms/LoopDeletion/eval_first_iteration.ll b/llvm/test/Transforms/LoopDeletion/eval_first_iteration.ll
+index bed479e408eb..98dafebe0df0 100644
+--- a/llvm/test/Transforms/LoopDeletion/eval_first_iteration.ll
++++ b/llvm/test/Transforms/LoopDeletion/eval_first_iteration.ll
+@@ -344,19 +344,17 @@ define i32 @test_ne_const() {
+ ; CHECK-NEXT:  entry:
+ ; CHECK-NEXT:    br label [[LOOP:%.*]]
+ ; CHECK:       loop:
+-; CHECK-NEXT:    [[SUM:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ]
++; CHECK-NEXT:    [[SUM:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ], [ [[SUM_NEXT:%.*]], [[BACKEDGE:%.*]] ]
+ ; CHECK-NEXT:    [[SUB:%.*]] = sub i32 4, [[SUM]]
+ ; CHECK-NEXT:    [[IS_POSITIVE:%.*]] = icmp sgt i32 [[SUB]], 0
+-; CHECK-NEXT:    br i1 [[IS_POSITIVE]], label [[BACKEDGE:%.*]], label [[IF_FALSE:%.*]]
++; CHECK-NEXT:    br i1 [[IS_POSITIVE]], label [[BACKEDGE]], label [[IF_FALSE:%.*]]
+ ; CHECK:       if.false:
+ ; CHECK-NEXT:    br label [[BACKEDGE]]
+ ; CHECK:       backedge:
+ ; CHECK-NEXT:    [[MERGE_PHI:%.*]] = phi i32 [ 0, [[IF_FALSE]] ], [ [[SUB]], [[LOOP]] ]
+-; CHECK-NEXT:    [[SUM_NEXT:%.*]] = add i32 [[SUM]], [[MERGE_PHI]]
++; CHECK-NEXT:    [[SUM_NEXT]] = add i32 [[SUM]], [[MERGE_PHI]]
+ ; CHECK-NEXT:    [[LOOP_COND:%.*]] = icmp ne i32 [[SUM_NEXT]], 4
+-; CHECK-NEXT:    br i1 [[LOOP_COND]], label [[BACKEDGE_LOOP_CRIT_EDGE:%.*]], label [[DONE:%.*]]
+-; CHECK:       backedge.loop_crit_edge:
+-; CHECK-NEXT:    unreachable
++; CHECK-NEXT:    br i1 [[LOOP_COND]], label [[LOOP]], label [[DONE:%.*]]
+ ; CHECK:       done:
+ ; CHECK-NEXT:    [[SUM_NEXT_LCSSA:%.*]] = phi i32 [ [[SUM_NEXT]], [[BACKEDGE]] ]
+ ; CHECK-NEXT:    ret i32 [[SUM_NEXT_LCSSA]]
+@@ -396,19 +394,17 @@ define i32 @test_slt_const() {
+ ; CHECK-NEXT:  entry:
+ ; CHECK-NEXT:    br label [[LOOP:%.*]]
+ ; CHECK:       loop:
+-; CHECK-NEXT:    [[SUM:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ]
++; CHECK-NEXT:    [[SUM:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ], [ [[SUM_NEXT:%.*]], [[BACKEDGE:%.*]] ]
+ ; CHECK-NEXT:    [[SUB:%.*]] = sub i32 4, [[SUM]]
+ ; CHECK-NEXT:    [[IS_POSITIVE:%.*]] = icmp sgt i32 [[SUB]], 0
+-; CHECK-NEXT:    br i1 [[IS_POSITIVE]], label [[BACKEDGE:%.*]], label [[IF_FALSE:%.*]]
++; CHECK-NEXT:    br i1 [[IS_POSITIVE]], label [[BACKEDGE]], label [[IF_FALSE:%.*]]
+ ; CHECK:       if.false:
+ ; CHECK-NEXT:    br label [[BACKEDGE]]
+ ; CHECK:       backedge:
+ ; CHECK-NEXT:    [[MERGE_PHI:%.*]] = phi i32 [ 0, [[IF_FALSE]] ], [ [[SUB]], [[LOOP]] ]
+-; CHECK-NEXT:    [[SUM_NEXT:%.*]] = add i32 [[SUM]], [[MERGE_PHI]]
++; CHECK-NEXT:    [[SUM_NEXT]] = add i32 [[SUM]], [[MERGE_PHI]]
+ ; CHECK-NEXT:    [[LOOP_COND:%.*]] = icmp slt i32 [[SUM_NEXT]], 4
+-; CHECK-NEXT:    br i1 [[LOOP_COND]], label [[BACKEDGE_LOOP_CRIT_EDGE:%.*]], label [[DONE:%.*]]
+-; CHECK:       backedge.loop_crit_edge:
+-; CHECK-NEXT:    unreachable
++; CHECK-NEXT:    br i1 [[LOOP_COND]], label [[LOOP]], label [[DONE:%.*]]
+ ; CHECK:       done:
+ ; CHECK-NEXT:    [[SUM_NEXT_LCSSA:%.*]] = phi i32 [ [[SUM_NEXT]], [[BACKEDGE]] ]
+ ; CHECK-NEXT:    ret i32 [[SUM_NEXT_LCSSA]]
+@@ -448,19 +444,17 @@ define i32 @test_ult_const() {
+ ; CHECK-NEXT:  entry:
+ ; CHECK-NEXT:    br label [[LOOP:%.*]]
+ ; CHECK:       loop:
+-; CHECK-NEXT:    [[SUM:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ]
++; CHECK-NEXT:    [[SUM:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ], [ [[SUM_NEXT:%.*]], [[BACKEDGE:%.*]] ]
+ ; CHECK-NEXT:    [[SUB:%.*]] = sub i32 4, [[SUM]]
+ ; CHECK-NEXT:    [[IS_POSITIVE:%.*]] = icmp sgt i32 [[SUB]], 0
+-; CHECK-NEXT:    br i1 [[IS_POSITIVE]], label [[BACKEDGE:%.*]], label [[IF_FALSE:%.*]]
++; CHECK-NEXT:    br i1 [[IS_POSITIVE]], label [[BACKEDGE]], label [[IF_FALSE:%.*]]
+ ; CHECK:       if.false:
+ ; CHECK-NEXT:    br label [[BACKEDGE]]
+ ; CHECK:       backedge:
+ ; CHECK-NEXT:    [[MERGE_PHI:%.*]] = phi i32 [ 0, [[IF_FALSE]] ], [ [[SUB]], [[LOOP]] ]
+-; CHECK-NEXT:    [[SUM_NEXT:%.*]] = add i32 [[SUM]], [[MERGE_PHI]]
++; CHECK-NEXT:    [[SUM_NEXT]] = add i32 [[SUM]], [[MERGE_PHI]]
+ ; CHECK-NEXT:    [[LOOP_COND:%.*]] = icmp ult i32 [[SUM_NEXT]], 4
+-; CHECK-NEXT:    br i1 [[LOOP_COND]], label [[BACKEDGE_LOOP_CRIT_EDGE:%.*]], label [[DONE:%.*]]
+-; CHECK:       backedge.loop_crit_edge:
+-; CHECK-NEXT:    unreachable
++; CHECK-NEXT:    br i1 [[LOOP_COND]], label [[LOOP]], label [[DONE:%.*]]
+ ; CHECK:       done:
+ ; CHECK-NEXT:    [[SUM_NEXT_LCSSA:%.*]] = phi i32 [ [[SUM_NEXT]], [[BACKEDGE]] ]
+ ; CHECK-NEXT:    ret i32 [[SUM_NEXT_LCSSA]]
+@@ -500,19 +494,17 @@ define i32 @test_sgt_const() {
+ ; CHECK-NEXT:  entry:
+ ; CHECK-NEXT:    br label [[LOOP:%.*]]
+ ; CHECK:       loop:
+-; CHECK-NEXT:    [[SUM:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ]
++; CHECK-NEXT:    [[SUM:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ], [ [[SUM_NEXT:%.*]], [[BACKEDGE:%.*]] ]
+ ; CHECK-NEXT:    [[SUB:%.*]] = sub i32 4, [[SUM]]
+ ; CHECK-NEXT:    [[IS_POSITIVE:%.*]] = icmp sgt i32 [[SUB]], 0
+-; CHECK-NEXT:    br i1 [[IS_POSITIVE]], label [[BACKEDGE:%.*]], label [[IF_FALSE:%.*]]
++; CHECK-NEXT:    br i1 [[IS_POSITIVE]], label [[BACKEDGE]], label [[IF_FALSE:%.*]]
+ ; CHECK:       if.false:
+ ; CHECK-NEXT:    br label [[BACKEDGE]]
+ ; CHECK:       backedge:
+ ; CHECK-NEXT:    [[MERGE_PHI:%.*]] = phi i32 [ 0, [[IF_FALSE]] ], [ [[SUB]], [[LOOP]] ]
+-; CHECK-NEXT:    [[SUM_NEXT:%.*]] = add i32 [[SUM]], [[MERGE_PHI]]
++; CHECK-NEXT:    [[SUM_NEXT]] = add i32 [[SUM]], [[MERGE_PHI]]
+ ; CHECK-NEXT:    [[LOOP_COND:%.*]] = icmp sgt i32 [[SUM_NEXT]], 4
+-; CHECK-NEXT:    br i1 [[LOOP_COND]], label [[BACKEDGE_LOOP_CRIT_EDGE:%.*]], label [[DONE:%.*]]
+-; CHECK:       backedge.loop_crit_edge:
+-; CHECK-NEXT:    unreachable
++; CHECK-NEXT:    br i1 [[LOOP_COND]], label [[LOOP]], label [[DONE:%.*]]
+ ; CHECK:       done:
+ ; CHECK-NEXT:    [[SUM_NEXT_LCSSA:%.*]] = phi i32 [ [[SUM_NEXT]], [[BACKEDGE]] ]
+ ; CHECK-NEXT:    ret i32 [[SUM_NEXT_LCSSA]]
+@@ -552,19 +544,17 @@ define i32 @test_ugt_const() {
+ ; CHECK-NEXT:  entry:
+ ; CHECK-NEXT:    br label [[LOOP:%.*]]
+ ; CHECK:       loop:
+-; CHECK-NEXT:    [[SUM:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ]
++; CHECK-NEXT:    [[SUM:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ], [ [[SUM_NEXT:%.*]], [[BACKEDGE:%.*]] ]
+ ; CHECK-NEXT:    [[SUB:%.*]] = sub i32 4, [[SUM]]
+ ; CHECK-NEXT:    [[IS_POSITIVE:%.*]] = icmp sgt i32 [[SUB]], 0
+-; CHECK-NEXT:    br i1 [[IS_POSITIVE]], label [[BACKEDGE:%.*]], label [[IF_FALSE:%.*]]
++; CHECK-NEXT:    br i1 [[IS_POSITIVE]], label [[BACKEDGE]], label [[IF_FALSE:%.*]]
+ ; CHECK:       if.false:
+ ; CHECK-NEXT:    br label [[BACKEDGE]]
+ ; CHECK:       backedge:
+ ; CHECK-NEXT:    [[MERGE_PHI:%.*]] = phi i32 [ 0, [[IF_FALSE]] ], [ [[SUB]], [[LOOP]] ]
+-; CHECK-NEXT:    [[SUM_NEXT:%.*]] = add i32 [[SUM]], [[MERGE_PHI]]
++; CHECK-NEXT:    [[SUM_NEXT]] = add i32 [[SUM]], [[MERGE_PHI]]
+ ; CHECK-NEXT:    [[LOOP_COND:%.*]] = icmp ugt i32 [[SUM_NEXT]], 4
+-; CHECK-NEXT:    br i1 [[LOOP_COND]], label [[BACKEDGE_LOOP_CRIT_EDGE:%.*]], label [[DONE:%.*]]
+-; CHECK:       backedge.loop_crit_edge:
+-; CHECK-NEXT:    unreachable
++; CHECK-NEXT:    br i1 [[LOOP_COND]], label [[LOOP]], label [[DONE:%.*]]
+ ; CHECK:       done:
+ ; CHECK-NEXT:    [[SUM_NEXT_LCSSA:%.*]] = phi i32 [ [[SUM_NEXT]], [[BACKEDGE]] ]
+ ; CHECK-NEXT:    ret i32 [[SUM_NEXT_LCSSA]]
+@@ -604,24 +594,22 @@ define i32 @test_multiple_pred_const() {
+ ; CHECK-NEXT:  entry:
+ ; CHECK-NEXT:    br label [[LOOP:%.*]]
+ ; CHECK:       loop:
+-; CHECK-NEXT:    [[SUM:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ]
++; CHECK-NEXT:    [[SUM:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ], [ [[SUM_NEXT:%.*]], [[BACKEDGE:%.*]] ]
+ ; CHECK-NEXT:    [[SUB:%.*]] = sub i32 4, [[SUM]]
+ ; CHECK-NEXT:    [[IS_POSITIVE:%.*]] = icmp sgt i32 [[SUB]], 0
+ ; CHECK-NEXT:    br i1 [[IS_POSITIVE]], label [[IF_TRUE:%.*]], label [[IF_FALSE:%.*]]
+ ; CHECK:       if.true:
+ ; CHECK-NEXT:    switch i32 4, label [[FAILURE:%.*]] [
+-; CHECK-NEXT:    i32 100, label [[BACKEDGE:%.*]]
++; CHECK-NEXT:    i32 100, label [[BACKEDGE]]
+ ; CHECK-NEXT:    i32 200, label [[BACKEDGE]]
+ ; CHECK-NEXT:    ]
+ ; CHECK:       if.false:
+ ; CHECK-NEXT:    br label [[BACKEDGE]]
+ ; CHECK:       backedge:
+ ; CHECK-NEXT:    [[MERGE_PHI:%.*]] = phi i32 [ 0, [[IF_FALSE]] ], [ [[SUB]], [[IF_TRUE]] ], [ [[SUB]], [[IF_TRUE]] ]
+-; CHECK-NEXT:    [[SUM_NEXT:%.*]] = add i32 [[SUM]], [[MERGE_PHI]]
++; CHECK-NEXT:    [[SUM_NEXT]] = add i32 [[SUM]], [[MERGE_PHI]]
+ ; CHECK-NEXT:    [[LOOP_COND:%.*]] = icmp ne i32 [[SUM_NEXT]], 4
+-; CHECK-NEXT:    br i1 [[LOOP_COND]], label [[BACKEDGE_LOOP_CRIT_EDGE:%.*]], label [[DONE:%.*]]
+-; CHECK:       backedge.loop_crit_edge:
+-; CHECK-NEXT:    unreachable
++; CHECK-NEXT:    br i1 [[LOOP_COND]], label [[LOOP]], label [[DONE:%.*]]
+ ; CHECK:       done:
+ ; CHECK-NEXT:    [[SUM_NEXT_LCSSA:%.*]] = phi i32 [ [[SUM_NEXT]], [[BACKEDGE]] ]
+ ; CHECK-NEXT:    ret i32 [[SUM_NEXT_LCSSA]]
+diff --git a/llvm/test/Transforms/LoopDeletion/zero-btc.ll b/llvm/test/Transforms/LoopDeletion/zero-btc.ll
+index 958de0505af7..413b0a877dd4 100644
+--- a/llvm/test/Transforms/LoopDeletion/zero-btc.ll
++++ b/llvm/test/Transforms/LoopDeletion/zero-btc.ll
+@@ -161,16 +161,14 @@ define void @test_multi_exit3(i1 %cond1) {
+ ; CHECK-NEXT:  entry:
+ ; CHECK-NEXT:    br label [[LOOP:%.*]]
+ ; CHECK:       loop:
+-; CHECK-NEXT:    [[IV:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ]
++; CHECK-NEXT:    [[IV:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ], [ [[IV_INC:%.*]], [[LATCH:%.*]] ]
+ ; CHECK-NEXT:    store i32 0, i32* @G, align 4
+-; CHECK-NEXT:    br i1 [[COND1:%.*]], label [[LATCH:%.*]], label [[EXIT:%.*]]
++; CHECK-NEXT:    br i1 [[COND1:%.*]], label [[LATCH]], label [[EXIT:%.*]]
+ ; CHECK:       latch:
+ ; CHECK-NEXT:    store i32 1, i32* @G, align 4
+-; CHECK-NEXT:    [[IV_INC:%.*]] = add i32 [[IV]], 1
++; CHECK-NEXT:    [[IV_INC]] = add i32 [[IV]], 1
+ ; CHECK-NEXT:    [[BE_TAKEN:%.*]] = icmp ne i32 [[IV_INC]], 1
+-; CHECK-NEXT:    br i1 [[BE_TAKEN]], label [[LATCH_LOOP_CRIT_EDGE:%.*]], label [[EXIT]]
+-; CHECK:       latch.loop_crit_edge:
+-; CHECK-NEXT:    unreachable
++; CHECK-NEXT:    br i1 [[BE_TAKEN]], label [[LOOP]], label [[EXIT]]
+ ; CHECK:       exit:
+ ; CHECK-NEXT:    ret void
+ ;
diff --git a/sys-devel/llvm/files/cherry/08a5ac36b956edeb989b4a65269a829eac26a5a2.patch b/sys-devel/llvm/files/cherry/08a5ac36b956edeb989b4a65269a829eac26a5a2.patch
new file mode 100644
index 0000000..b0b786d
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/08a5ac36b956edeb989b4a65269a829eac26a5a2.patch
@@ -0,0 +1,30 @@
+commit 08a5ac36b956edeb989b4a65269a829eac26a5a2
+Author: Saleem Abdulrasool <compnerd@compnerd.org>
+Date:   Tue Aug 10 17:45:31 2021 +0000
+
+    libunwind: add missing break statements in EHABI
+    
+    Add missing break statements identified by static analysis tools.
+    
+    Patch by Andrii Kurdiumov!
+    
+    Reviewed By: compnerd, danielkiss
+    
+    Differential Revision: https://reviews.llvm.org/D107537
+
+diff --git a/libunwind/src/Unwind-EHABI.cpp b/libunwind/src/Unwind-EHABI.cpp
+index 32b5cbc3be92..8843db7f54c3 100644
+--- a/libunwind/src/Unwind-EHABI.cpp
++++ b/libunwind/src/Unwind-EHABI.cpp
+@@ -97,9 +97,11 @@ _Unwind_Reason_Code ProcessDescriptors(
+       case Descriptor::LU32:
+         descriptor = getNextWord(descriptor, &length);
+         descriptor = getNextWord(descriptor, &offset);
++        break;
+       case Descriptor::LU16:
+         descriptor = getNextNibble(descriptor, &length);
+         descriptor = getNextNibble(descriptor, &offset);
++        break;
+       default:
+         assert(false);
+         return _URC_FAILURE;
diff --git a/sys-devel/llvm/files/cherry/0a9d0799316c7a601a0b20a123bd99922ac6455b.patch b/sys-devel/llvm/files/cherry/0a9d0799316c7a601a0b20a123bd99922ac6455b.patch
new file mode 100644
index 0000000..5d0b063
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/0a9d0799316c7a601a0b20a123bd99922ac6455b.patch
@@ -0,0 +1,250 @@
+commit 0a9d0799316c7a601a0b20a123bd99922ac6455b
+Author: maekawatoshiki <konndennsa@gmail.com>
+Date:   Mon Jun 7 01:26:47 2021 +0900
+
+    Revert "[LoopUnrollAndJam] Change LoopUnrollAndJamPass to LoopNest pass"
+    
+    This reverts commit 21653600034084e8335374ddc1eb8d362158d9a8.
+    
+    To fix the crash problem in legacy pass manager
+
+diff --git a/llvm/include/llvm/Transforms/Scalar/LoopPassManager.h b/llvm/include/llvm/Transforms/Scalar/LoopPassManager.h
+index 480f5e5dfebd..c3833f363533 100644
+--- a/llvm/include/llvm/Transforms/Scalar/LoopPassManager.h
++++ b/llvm/include/llvm/Transforms/Scalar/LoopPassManager.h
+@@ -258,7 +258,7 @@ public:
+   /// state, this routine will mark that the current loop should be skipped by
+   /// the rest of the pass management infrastructure.
+   void markLoopAsDeleted(Loop &L, llvm::StringRef Name) {
+-    assert((!LoopNestMode || CurrentL == &L) &&
++    assert((!LoopNestMode || L.isOutermost()) &&
+            "L should be a top-level loop in loop-nest mode.");
+     LAM.clear(L, Name);
+     assert((&L == CurrentL || CurrentL->contains(&L)) &&
+diff --git a/llvm/include/llvm/Transforms/Scalar/LoopUnrollAndJamPass.h b/llvm/include/llvm/Transforms/Scalar/LoopUnrollAndJamPass.h
+index 6125fc7636a0..bd83a6a0cca4 100644
+--- a/llvm/include/llvm/Transforms/Scalar/LoopUnrollAndJamPass.h
++++ b/llvm/include/llvm/Transforms/Scalar/LoopUnrollAndJamPass.h
+@@ -10,7 +10,6 @@
+ #define LLVM_TRANSFORMS_SCALAR_LOOPUNROLLANDJAMPASS_H
+ 
+ #include "llvm/IR/PassManager.h"
+-#include "llvm/Transforms/Scalar/LoopPassManager.h"
+ 
+ namespace llvm {
+ class Function;
+@@ -21,8 +20,7 @@ class LoopUnrollAndJamPass : public PassInfoMixin<LoopUnrollAndJamPass> {
+ 
+ public:
+   explicit LoopUnrollAndJamPass(int OptLevel = 2) : OptLevel(OptLevel) {}
+-  PreservedAnalyses run(LoopNest &L, LoopAnalysisManager &AM,
+-                        LoopStandardAnalysisResults &AR, LPMUpdater &U);
++  PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM);
+ };
+ 
+ } // end namespace llvm
+diff --git a/llvm/lib/Passes/PassBuilder.cpp b/llvm/lib/Passes/PassBuilder.cpp
+index 2e782feebd44..072fd4672885 100644
+--- a/llvm/lib/Passes/PassBuilder.cpp
++++ b/llvm/lib/Passes/PassBuilder.cpp
+@@ -1207,8 +1207,7 @@ void PassBuilder::addVectorPasses(OptimizationLevel Level,
+     // across the loop nests.
+     // We do UnrollAndJam in a separate LPM to ensure it happens before unroll
+     if (EnableUnrollAndJam && PTO.LoopUnrolling)
+-      FPM.addPass(createFunctionToLoopPassAdaptor(
+-          LoopUnrollAndJamPass(Level.getSpeedupLevel())));
++      FPM.addPass(LoopUnrollAndJamPass(Level.getSpeedupLevel()));
+     FPM.addPass(LoopUnrollPass(LoopUnrollOptions(
+         Level.getSpeedupLevel(), /*OnlyWhenForced=*/!PTO.LoopUnrolling,
+         PTO.ForgetAllSCEVInLoopUnroll)));
+@@ -1288,8 +1287,7 @@ void PassBuilder::addVectorPasses(OptimizationLevel Level,
+     // across the loop nests.
+     // We do UnrollAndJam in a separate LPM to ensure it happens before unroll
+     if (EnableUnrollAndJam && PTO.LoopUnrolling) {
+-      FPM.addPass(createFunctionToLoopPassAdaptor(
+-          LoopUnrollAndJamPass(Level.getSpeedupLevel())));
++      FPM.addPass(LoopUnrollAndJamPass(Level.getSpeedupLevel()));
+     }
+     FPM.addPass(LoopUnrollPass(LoopUnrollOptions(
+         Level.getSpeedupLevel(), /*OnlyWhenForced=*/!PTO.LoopUnrolling,
+diff --git a/llvm/lib/Passes/PassRegistry.def b/llvm/lib/Passes/PassRegistry.def
+index f2f01bbf76d5..0c95e01ffefe 100644
+--- a/llvm/lib/Passes/PassRegistry.def
++++ b/llvm/lib/Passes/PassRegistry.def
+@@ -247,6 +247,7 @@ FUNCTION_PASS("guard-widening", GuardWideningPass())
+ FUNCTION_PASS("load-store-vectorizer", LoadStoreVectorizerPass())
+ FUNCTION_PASS("loop-simplify", LoopSimplifyPass())
+ FUNCTION_PASS("loop-sink", LoopSinkPass())
++FUNCTION_PASS("loop-unroll-and-jam", LoopUnrollAndJamPass())
+ FUNCTION_PASS("lowerinvoke", LowerInvokePass())
+ FUNCTION_PASS("lowerswitch", LowerSwitchPass())
+ FUNCTION_PASS("mem2reg", PromotePass())
+@@ -398,7 +399,6 @@ LOOP_PASS("loop-deletion", LoopDeletionPass())
+ LOOP_PASS("loop-simplifycfg", LoopSimplifyCFGPass())
+ LOOP_PASS("loop-reduce", LoopStrengthReducePass())
+ LOOP_PASS("indvars", IndVarSimplifyPass())
+-LOOP_PASS("loop-unroll-and-jam", LoopUnrollAndJamPass())
+ LOOP_PASS("loop-unroll-full", LoopFullUnrollPass())
+ LOOP_PASS("print-access-info", LoopAccessInfoPrinterPass(dbgs()))
+ LOOP_PASS("print<ddg>", DDGAnalysisPrinterPass(dbgs()))
+diff --git a/llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp b/llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp
+index 9b586e83027f..495906e1a763 100644
+--- a/llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp
++++ b/llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp
+@@ -22,7 +22,6 @@
+ #include "llvm/Analysis/DependenceAnalysis.h"
+ #include "llvm/Analysis/LoopAnalysisManager.h"
+ #include "llvm/Analysis/LoopInfo.h"
+-#include "llvm/Analysis/LoopPass.h"
+ #include "llvm/Analysis/OptimizationRemarkEmitter.h"
+ #include "llvm/Analysis/ScalarEvolution.h"
+ #include "llvm/Analysis/TargetTransformInfo.h"
+@@ -425,29 +424,35 @@ tryToUnrollAndJamLoop(Loop *L, DominatorTree &DT, LoopInfo *LI,
+   return UnrollResult;
+ }
+ 
+-static bool tryToUnrollAndJamLoop(LoopNest &LN, DominatorTree &DT, LoopInfo &LI,
++static bool tryToUnrollAndJamLoop(Function &F, DominatorTree &DT, LoopInfo &LI,
+                                   ScalarEvolution &SE,
+                                   const TargetTransformInfo &TTI,
+                                   AssumptionCache &AC, DependenceInfo &DI,
+-                                  OptimizationRemarkEmitter &ORE, int OptLevel,
+-                                  LPMUpdater &U) {
++                                  OptimizationRemarkEmitter &ORE,
++                                  int OptLevel) {
+   bool DidSomething = false;
+-  ArrayRef<Loop *> Loops = LN.getLoops();
+-  Loop *OutmostLoop = &LN.getOutermostLoop();
+ 
+-  // Add the loop nests in the reverse order of LN. See method
++  // The loop unroll and jam pass requires loops to be in simplified form, and
++  // also needs LCSSA. Since simplification may add new inner loops, it has to
++  // run before the legality and profitability checks. This means running the
++  // loop unroll and jam pass will simplify all loops, regardless of whether
++  // anything end up being unroll and jammed.
++  for (auto &L : LI) {
++    DidSomething |=
++        simplifyLoop(L, &DT, &LI, &SE, &AC, nullptr, false /* PreserveLCSSA */);
++    DidSomething |= formLCSSARecursively(*L, DT, &LI, &SE);
++  }
++
++  // Add the loop nests in the reverse order of LoopInfo. See method
+   // declaration.
+   SmallPriorityWorklist<Loop *, 4> Worklist;
+-  appendLoopsToWorklist(Loops, Worklist);
++  appendLoopsToWorklist(LI, Worklist);
+   while (!Worklist.empty()) {
+     Loop *L = Worklist.pop_back_val();
+-    std::string LoopName = std::string(L->getName());
+     LoopUnrollResult Result =
+         tryToUnrollAndJamLoop(L, DT, &LI, SE, TTI, AC, DI, ORE, OptLevel);
+     if (Result != LoopUnrollResult::Unmodified)
+       DidSomething = true;
+-    if (L == OutmostLoop && Result == LoopUnrollResult::FullyUnrolled)
+-      U.markLoopAsDeleted(*L, LoopName);
+   }
+ 
+   return DidSomething;
+@@ -455,35 +460,29 @@ static bool tryToUnrollAndJamLoop(LoopNest &LN, DominatorTree &DT, LoopInfo &LI,
+ 
+ namespace {
+ 
+-class LoopUnrollAndJam : public LoopPass {
++class LoopUnrollAndJam : public FunctionPass {
+ public:
+   static char ID; // Pass ID, replacement for typeid
+   unsigned OptLevel;
+ 
+-  LoopUnrollAndJam(int OptLevel = 2) : LoopPass(ID), OptLevel(OptLevel) {
++  LoopUnrollAndJam(int OptLevel = 2) : FunctionPass(ID), OptLevel(OptLevel) {
+     initializeLoopUnrollAndJamPass(*PassRegistry::getPassRegistry());
+   }
+ 
+-  bool runOnLoop(Loop *L, LPPassManager &LPM) override {
+-    if (skipLoop(L))
++  bool runOnFunction(Function &F) override {
++    if (skipFunction(F))
+       return false;
+ 
+-    auto *F = L->getHeader()->getParent();
+-    auto &SE = getAnalysis<ScalarEvolutionWrapperPass>().getSE();
+-    auto *LI = &getAnalysis<LoopInfoWrapperPass>().getLoopInfo();
+-    auto &DI = getAnalysis<DependenceAnalysisWrapperPass>().getDI();
+     auto &DT = getAnalysis<DominatorTreeWrapperPass>().getDomTree();
+-    auto &TTI = getAnalysis<TargetTransformInfoWrapperPass>().getTTI(*F);
++    LoopInfo &LI = getAnalysis<LoopInfoWrapperPass>().getLoopInfo();
++    ScalarEvolution &SE = getAnalysis<ScalarEvolutionWrapperPass>().getSE();
++    const TargetTransformInfo &TTI =
++        getAnalysis<TargetTransformInfoWrapperPass>().getTTI(F);
++    auto &AC = getAnalysis<AssumptionCacheTracker>().getAssumptionCache(F);
++    auto &DI = getAnalysis<DependenceAnalysisWrapperPass>().getDI();
+     auto &ORE = getAnalysis<OptimizationRemarkEmitterWrapperPass>().getORE();
+-    auto &AC = getAnalysis<AssumptionCacheTracker>().getAssumptionCache(*F);
+ 
+-    LoopUnrollResult Result =
+-        tryToUnrollAndJamLoop(L, DT, LI, SE, TTI, AC, DI, ORE, OptLevel);
+-
+-    if (Result == LoopUnrollResult::FullyUnrolled)
+-      LPM.markLoopAsDeleted(*L);
+-
+-    return Result != LoopUnrollResult::Unmodified;
++    return tryToUnrollAndJamLoop(F, DT, LI, SE, TTI, AC, DI, ORE, OptLevel);
+   }
+ 
+   /// This transformation requires natural loop information & requires that
+@@ -506,10 +505,7 @@ char LoopUnrollAndJam::ID = 0;
+ INITIALIZE_PASS_BEGIN(LoopUnrollAndJam, "loop-unroll-and-jam",
+                       "Unroll and Jam loops", false, false)
+ INITIALIZE_PASS_DEPENDENCY(DominatorTreeWrapperPass)
+-INITIALIZE_PASS_DEPENDENCY(LoopPass)
+ INITIALIZE_PASS_DEPENDENCY(LoopInfoWrapperPass)
+-INITIALIZE_PASS_DEPENDENCY(LoopSimplify)
+-INITIALIZE_PASS_DEPENDENCY(LCSSAWrapperPass)
+ INITIALIZE_PASS_DEPENDENCY(ScalarEvolutionWrapperPass)
+ INITIALIZE_PASS_DEPENDENCY(TargetTransformInfoWrapperPass)
+ INITIALIZE_PASS_DEPENDENCY(AssumptionCacheTracker)
+@@ -522,20 +518,19 @@ Pass *llvm::createLoopUnrollAndJamPass(int OptLevel) {
+   return new LoopUnrollAndJam(OptLevel);
+ }
+ 
+-PreservedAnalyses LoopUnrollAndJamPass::run(LoopNest &LN,
+-                                            LoopAnalysisManager &AM,
+-                                            LoopStandardAnalysisResults &AR,
+-                                            LPMUpdater &U) {
+-  Function &F = *LN.getParent();
+-
+-  DependenceInfo DI(&F, &AR.AA, &AR.SE, &AR.LI);
+-  OptimizationRemarkEmitter ORE(&F);
+-
+-  if (!tryToUnrollAndJamLoop(LN, AR.DT, AR.LI, AR.SE, AR.TTI, AR.AC, DI, ORE,
+-                             OptLevel, U))
++PreservedAnalyses LoopUnrollAndJamPass::run(Function &F,
++                                            FunctionAnalysisManager &AM) {
++  ScalarEvolution &SE = AM.getResult<ScalarEvolutionAnalysis>(F);
++  LoopInfo &LI = AM.getResult<LoopAnalysis>(F);
++  TargetTransformInfo &TTI = AM.getResult<TargetIRAnalysis>(F);
++  AssumptionCache &AC = AM.getResult<AssumptionAnalysis>(F);
++  DominatorTree &DT = AM.getResult<DominatorTreeAnalysis>(F);
++  DependenceInfo &DI = AM.getResult<DependenceAnalysis>(F);
++  OptimizationRemarkEmitter &ORE =
++      AM.getResult<OptimizationRemarkEmitterAnalysis>(F);
++
++  if (!tryToUnrollAndJamLoop(F, DT, LI, SE, TTI, AC, DI, ORE, OptLevel))
+     return PreservedAnalyses::all();
+ 
+-  auto PA = getLoopPassPreservedAnalyses();
+-  PA.preserve<LoopNestAnalysis>();
+-  return PA;
++  return getLoopPassPreservedAnalyses();
+ }
+diff --git a/llvm/test/Transforms/LoopUnrollAndJam/innerloop.ll b/llvm/test/Transforms/LoopUnrollAndJam/innerloop.ll
+index c3a4ebd6dede..79c32c90174e 100644
+--- a/llvm/test/Transforms/LoopUnrollAndJam/innerloop.ll
++++ b/llvm/test/Transforms/LoopUnrollAndJam/innerloop.ll
+@@ -1,5 +1,5 @@
+ ; RUN: opt -loop-unroll-and-jam -allow-unroll-and-jam -verify-loop-info < %s -S | FileCheck %s
+-; RUN: opt -passes='loop(loop-unroll-and-jam),verify<loops>' -allow-unroll-and-jam < %s -S | FileCheck %s
++; RUN: opt -passes='loop-unroll-and-jam,verify<loops>' -allow-unroll-and-jam < %s -S | FileCheck %s
+ 
+ ; Check that the newly created loops to not fail to be added to LI
+ ; This test deliberately disables UnJ on the middle loop, performing it instead on the
diff --git a/sys-devel/llvm/files/cherry/1b112c80a68697687189ddf5bb01b2edacb618af.patch b/sys-devel/llvm/files/cherry/1b112c80a68697687189ddf5bb01b2edacb618af.patch
new file mode 100644
index 0000000..d29e7bd
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/1b112c80a68697687189ddf5bb01b2edacb618af.patch
@@ -0,0 +1,192 @@
+commit 1b112c80a68697687189ddf5bb01b2edacb618af
+Author: David Blaikie <dblaikie@gmail.com>
+Date:   Sun Jun 27 14:34:18 2021 -0700
+
+    PR37255: DebugInfo: LTO with -g inlined into -gmlt combined with Split DWARF without CU cross-references
+    
+    A combination of features ^ that lead to a mismatch of expectations
+    about how a subprogram definition DIE would be produced with/without a
+    declaration when taking full -g debug info and inlining it into a -gmlt
+    CU - specifically when using Split DWARF that doesn't support cross-CU
+    references, so we have to put the -g debug info into the -gmlt CU, which
+    gets confusing about which mode is respected.
+    
+    This patch comes down on respecting the CU the debug info is emitted
+    into, rather than preserving the full debug info when it's emitted into
+    the gmlt CU.
+---
+ llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp          | 50 +++++++-------
+ llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h            |  2 +-
+ .../DebugInfo/X86/split-dwarf-cross-cu-gmlt-g.ll   | 80 ++++++++++++++++++++++
+ 3 files changed, 107 insertions(+), 25 deletions(-)
+
+diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
+index 82dbb8a74375..5c6dd43b8163 100644
+--- a/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
++++ b/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
+@@ -1130,32 +1130,34 @@ DIE *DwarfUnit::getOrCreateSubprogramDIE(const DISubprogram *SP, bool Minimal) {
+ }
+ 
+ bool DwarfUnit::applySubprogramDefinitionAttributes(const DISubprogram *SP,
+-                                                    DIE &SPDie) {
++                                                    DIE &SPDie, bool Minimal) {
+   DIE *DeclDie = nullptr;
+   StringRef DeclLinkageName;
+   if (auto *SPDecl = SP->getDeclaration()) {
+-    DITypeRefArray DeclArgs, DefinitionArgs;
+-    DeclArgs = SPDecl->getType()->getTypeArray();
+-    DefinitionArgs = SP->getType()->getTypeArray();
+-
+-    if (DeclArgs.size() && DefinitionArgs.size())
+-      if (DefinitionArgs[0] != NULL && DeclArgs[0] != DefinitionArgs[0])
+-        addType(SPDie, DefinitionArgs[0]);
+-
+-    DeclDie = getDIE(SPDecl);
+-    assert(DeclDie && "This DIE should've already been constructed when the "
+-                      "definition DIE was created in "
+-                      "getOrCreateSubprogramDIE");
+-    // Look at the Decl's linkage name only if we emitted it.
+-    if (DD->useAllLinkageNames())
+-      DeclLinkageName = SPDecl->getLinkageName();
+-    unsigned DeclID = getOrCreateSourceID(SPDecl->getFile());
+-    unsigned DefID = getOrCreateSourceID(SP->getFile());
+-    if (DeclID != DefID)
+-      addUInt(SPDie, dwarf::DW_AT_decl_file, None, DefID);
+-
+-    if (SP->getLine() != SPDecl->getLine())
+-      addUInt(SPDie, dwarf::DW_AT_decl_line, None, SP->getLine());
++    if (!Minimal) {
++      DITypeRefArray DeclArgs, DefinitionArgs;
++      DeclArgs = SPDecl->getType()->getTypeArray();
++      DefinitionArgs = SP->getType()->getTypeArray();
++
++      if (DeclArgs.size() && DefinitionArgs.size())
++        if (DefinitionArgs[0] != NULL && DeclArgs[0] != DefinitionArgs[0])
++          addType(SPDie, DefinitionArgs[0]);
++
++      DeclDie = getDIE(SPDecl);
++      assert(DeclDie && "This DIE should've already been constructed when the "
++                        "definition DIE was created in "
++                        "getOrCreateSubprogramDIE");
++      // Look at the Decl's linkage name only if we emitted it.
++      if (DD->useAllLinkageNames())
++        DeclLinkageName = SPDecl->getLinkageName();
++      unsigned DeclID = getOrCreateSourceID(SPDecl->getFile());
++      unsigned DefID = getOrCreateSourceID(SP->getFile());
++      if (DeclID != DefID)
++        addUInt(SPDie, dwarf::DW_AT_decl_file, None, DefID);
++
++      if (SP->getLine() != SPDecl->getLine())
++        addUInt(SPDie, dwarf::DW_AT_decl_line, None, SP->getLine());
++    }
+   }
+ 
+   // Add function template parameters.
+@@ -1187,7 +1189,7 @@ void DwarfUnit::applySubprogramAttributes(const DISubprogram *SP, DIE &SPDie,
+   bool SkipSPSourceLocation = SkipSPAttributes &&
+                               !CUNode->getDebugInfoForProfiling();
+   if (!SkipSPSourceLocation)
+-    if (applySubprogramDefinitionAttributes(SP, SPDie))
++    if (applySubprogramDefinitionAttributes(SP, SPDie, SkipSPAttributes))
+       return;
+ 
+   // Constructors and operators for anonymous aggregates do not have names.
+diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h b/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
+index df1ead03dc05..4d31dd0daf59 100644
+--- a/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
++++ b/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
+@@ -73,7 +73,7 @@ protected:
+   DwarfUnit(dwarf::Tag, const DICompileUnit *Node, AsmPrinter *A, DwarfDebug *DW,
+             DwarfFile *DWU);
+ 
+-  bool applySubprogramDefinitionAttributes(const DISubprogram *SP, DIE &SPDie);
++  bool applySubprogramDefinitionAttributes(const DISubprogram *SP, DIE &SPDie, bool Minimal);
+ 
+   bool isShareableAcrossCUs(const DINode *D) const;
+ 
+diff --git a/llvm/test/DebugInfo/X86/split-dwarf-cross-cu-gmlt-g.ll b/llvm/test/DebugInfo/X86/split-dwarf-cross-cu-gmlt-g.ll
+new file mode 100644
+index 000000000000..ac5a10652ba9
+--- /dev/null
++++ b/llvm/test/DebugInfo/X86/split-dwarf-cross-cu-gmlt-g.ll
+@@ -0,0 +1,80 @@
++; RUN: llc -mtriple=x86_64-linux -split-dwarf-file=foo.dwo -filetype=obj -o %t < %s
++; RUN: llvm-dwarfdump -debug-info %t | FileCheck %s
++
++; CHECK: DW_AT_name ("b.cpp")
++; CHECK: DW_TAG_subprogram
++; CHECK-NEXT:   DW_AT_linkage_name      ("_ZN5outer2f2Ev")
++; CHECK-NEXT:   DW_AT_name      ("f2")
++; CHECK-NEXT:   DW_AT_decl_file (0x02)
++; CHECK-NEXT:   DW_AT_decl_line (4)
++
++; Function Attrs: noinline nounwind optnone uwtable mustprogress
++define dso_local void @_Z2f1v() local_unnamed_addr #0 !dbg !12 {
++entry:
++  ret void, !dbg !15
++}
++
++; Function Attrs: nounwind uwtable mustprogress
++define dso_local void @_ZN5outer2f2Ev() local_unnamed_addr #1 align 2 !dbg !16 {
++entry:
++  tail call void @_Z2f1v(), !dbg !21
++  ret void, !dbg !22
++}
++
++; Function Attrs: nounwind uwtable mustprogress
++define dso_local void @_Z2f2v() local_unnamed_addr #1 !dbg !23 {
++entry:
++  tail call void @_Z2f1v(), !dbg !24
++  ret void, !dbg !25
++}
++
++; Function Attrs: norecurse nounwind uwtable mustprogress
++define dso_local i32 @main() local_unnamed_addr #2 !dbg !26 {
++entry:
++  tail call void @_Z2f1v() #3, !dbg !28
++  tail call void @_Z2f1v() #3, !dbg !30
++  ret i32 0, !dbg !32
++}
++
++attributes #0 = { noinline nounwind optnone uwtable mustprogress "frame-pointer"="none" "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
++attributes #1 = { nounwind uwtable mustprogress "frame-pointer"="none" "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
++attributes #2 = { norecurse nounwind uwtable mustprogress "frame-pointer"="none" "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
++attributes #3 = { nounwind }
++
++!llvm.dbg.cu = !{!0, !3}
++!llvm.ident = !{!5, !5}
++!llvm.module.flags = !{!6, !7, !8, !9, !10, !11}
++
++!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !1, producer: "clang version 13.0.0 (git@github.com:llvm/llvm-project.git 9aa951e80e72decd95c7d972e1e0dde24260d336)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, splitDebugInlining: false, debugInfoForProfiling: true, nameTableKind: None)
++!1 = !DIFile(filename: "a.cpp", directory: "/usr/local/google/home/blaikie/dev/scratch")
++!2 = !{}
++!3 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !4, producer: "clang version 13.0.0 (git@github.com:llvm/llvm-project.git 9aa951e80e72decd95c7d972e1e0dde24260d336)", isOptimized: true, runtimeVersion: 0, emissionKind: LineTablesOnly, enums: !2, splitDebugInlining: false, debugInfoForProfiling: true, nameTableKind: None)
++!4 = !DIFile(filename: "b.cpp", directory: "/usr/local/google/home/blaikie/dev/scratch")
++!5 = !{!"clang version 13.0.0 (git@github.com:llvm/llvm-project.git 9aa951e80e72decd95c7d972e1e0dde24260d336)"}
++!6 = !{i32 7, !"Dwarf Version", i32 4}
++!7 = !{i32 2, !"Debug Info Version", i32 3}
++!8 = !{i32 1, !"wchar_size", i32 4}
++!9 = !{i32 7, !"uwtable", i32 1}
++!10 = !{i32 1, !"ThinLTO", i32 0}
++!11 = !{i32 1, !"EnableSplitLTOUnit", i32 1}
++!12 = distinct !DISubprogram(name: "f1", linkageName: "_Z2f1v", scope: !1, file: !1, line: 2, type: !13, scopeLine: 2, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !0, retainedNodes: !2)
++!13 = !DISubroutineType(types: !14)
++!14 = !{null}
++!15 = !DILocation(line: 3, column: 1, scope: !12)
++!16 = distinct !DISubprogram(name: "f2", linkageName: "_ZN5outer2f2Ev", scope: !17, file: !1, line: 4, type: !13, scopeLine: 4, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !0, declaration: !20, retainedNodes: !2)
++!17 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "outer", file: !18, line: 1, size: 8, flags: DIFlagTypePassByValue, elements: !19, identifier: "_ZTS5outer")
++!18 = !DIFile(filename: "./a.h", directory: "/usr/local/google/home/blaikie/dev/scratch")
++!19 = !{!20}
++!20 = !DISubprogram(name: "f2", linkageName: "_ZN5outer2f2Ev", scope: !17, file: !18, line: 2, type: !13, scopeLine: 2, flags: DIFlagPrototyped | DIFlagStaticMember, spFlags: DISPFlagOptimized)
++!21 = !DILocation(line: 5, column: 3, scope: !16)
++!22 = !DILocation(line: 6, column: 1, scope: !16)
++!23 = distinct !DISubprogram(name: "f2", linkageName: "_Z2f2v", scope: !1, file: !1, line: 7, type: !13, scopeLine: 7, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !0, retainedNodes: !2)
++!24 = !DILocation(line: 8, column: 3, scope: !23)
++!25 = !DILocation(line: 9, column: 1, scope: !23)
++!26 = distinct !DISubprogram(name: "main", scope: !4, file: !4, line: 2, type: !27, scopeLine: 2, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !3, retainedNodes: !2)
++!27 = !DISubroutineType(types: !2)
++!28 = !DILocation(line: 5, column: 3, scope: !16, inlinedAt: !29)
++!29 = distinct !DILocation(line: 3, column: 3, scope: !26)
++!30 = !DILocation(line: 8, column: 3, scope: !23, inlinedAt: !31)
++!31 = distinct !DILocation(line: 4, column: 3, scope: !26)
++!32 = !DILocation(line: 5, column: 1, scope: !26)
diff --git a/sys-devel/llvm/files/cherry/21c008d5a5b1e0c2ec3c1659cff961f4b0ccea2c.patch b/sys-devel/llvm/files/cherry/21c008d5a5b1e0c2ec3c1659cff961f4b0ccea2c.patch
new file mode 100644
index 0000000..a6c0e04
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/21c008d5a5b1e0c2ec3c1659cff961f4b0ccea2c.patch
@@ -0,0 +1,23 @@
+commit 21c008d5a5b1e0c2ec3c1659cff961f4b0ccea2c
+Author: Petr Hosek <phosek@google.com>
+Date:   Tue Jun 22 11:55:23 2021 -0700
+
+    Revert "[cmake] [compiler-rt] Call llvm_setup_rpath() when adding shared libraries."
+    
+    This reverts commit 78fd93e0396a19cb89d4b874c7cc42255888df56 as
+    a follow up to D91099.
+
+diff --git a/compiler-rt/cmake/Modules/AddCompilerRT.cmake b/compiler-rt/cmake/Modules/AddCompilerRT.cmake
+index 1e9e7c58664b..e72df6f8666d 100644
+--- a/compiler-rt/cmake/Modules/AddCompilerRT.cmake
++++ b/compiler-rt/cmake/Modules/AddCompilerRT.cmake
+@@ -359,9 +359,6 @@ function(add_compiler_rt_runtime name type)
+       target_link_libraries(${libname} PRIVATE ${builtins_${libname}})
+     endif()
+     if(${type} STREQUAL "SHARED")
+-      if(COMMAND llvm_setup_rpath)
+-        llvm_setup_rpath(${libname})
+-      endif()
+       if(WIN32 AND NOT CYGWIN AND NOT MINGW)
+         set_target_properties(${libname} PROPERTIES IMPORT_PREFIX "")
+         set_target_properties(${libname} PROPERTIES IMPORT_SUFFIX ".lib")
diff --git a/sys-devel/llvm/files/cherry/24bd657202379595b514ee17241f019294e86bc9.patch b/sys-devel/llvm/files/cherry/24bd657202379595b514ee17241f019294e86bc9.patch
new file mode 100644
index 0000000..0d16cbc
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/24bd657202379595b514ee17241f019294e86bc9.patch
@@ -0,0 +1,50 @@
+commit 24bd657202379595b514ee17241f019294e86bc9
+Author: Stefan Pintilie <stefanp@ca.ibm.com>
+Date:   Fri May 28 11:35:12 2021 -0500
+
+    Revert "[NFCI][LoopDeletion] Only query SCEV about loop successor if another successor is also in loop"
+    
+    This reverts commit b0b2bf3b5da950679db1431aae431a6dedea2245.
+
+diff --git a/llvm/lib/Transforms/Scalar/LoopDeletion.cpp b/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
+index 14eb07ab17e6..41be776ec141 100644
+--- a/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
++++ b/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
+@@ -267,10 +267,10 @@ static bool canProveExitOnFirstIteration(Loop *L, DominatorTree &DT,
+     ICmpInst::Predicate Pred;
+     Value *LHS, *RHS;
+     const BasicBlock *IfTrue, *IfFalse;
+-    auto *Term = BB->getTerminator();
+     // TODO: Handle switches.
+-    if (!match(Term, m_Br(m_ICmp(Pred, m_Value(LHS), m_Value(RHS)),
+-                          m_BasicBlock(IfTrue), m_BasicBlock(IfFalse)))) {
++    if (!match(BB->getTerminator(),
++               m_Br(m_ICmp(Pred, m_Value(LHS), m_Value(RHS)),
++                    m_BasicBlock(IfTrue), m_BasicBlock(IfFalse)))) {
+       MarkAllSuccessorsLive(BB);
+       continue;
+     }
+@@ -283,16 +283,13 @@ static bool canProveExitOnFirstIteration(Loop *L, DominatorTree &DT,
+     // Can we prove constant true or false for this condition?
+     const SCEV *LHSS = getSCEVOnFirstIteration(LHS, L, SE, FirstIterSCEV);
+     const SCEV *RHSS = getSCEVOnFirstIteration(RHS, L, SE, FirstIterSCEV);
+-        // Only query for liveness of in-loop edge if another successor is also
+-        // in-loop.
+-        // TODO: isKnownPredicateAt is more powerful, but it's too compile time
+-        // consuming. So we avoid using it here.
+-        if (L->contains(Term->getSuccessor(1)) &&
+-            SE.isKnownPredicate(Pred, LHSS, RHSS))
+-        MarkLiveEdge(BB, Term->getSuccessor(0));
+-    else if (L->contains(Term->getSuccessor(0)) &&
+-             SE.isKnownPredicate(ICmpInst::getInversePredicate(Pred), LHSS,
+-                                 RHSS)) MarkLiveEdge(BB, Term->getSuccessor(1));
++    // TODO: isKnownPredicateAt is more powerful, but it's too compile time
++    // consuming. So we avoid using it here.
++    if (SE.isKnownPredicate(Pred, LHSS, RHSS))
++      MarkLiveEdge(BB, BB->getTerminator()->getSuccessor(0));
++    else if (SE.isKnownPredicate(ICmpInst::getInversePredicate(Pred), LHSS,
++                                 RHSS))
++      MarkLiveEdge(BB, BB->getTerminator()->getSuccessor(1));
+     else
+       MarkAllSuccessorsLive(BB);
+   }
diff --git a/sys-devel/llvm/files/cherry/252a1eecc04080d852ba58c6727970c688eb1619.patch b/sys-devel/llvm/files/cherry/252a1eecc04080d852ba58c6727970c688eb1619.patch
new file mode 100644
index 0000000..eb97593
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/252a1eecc04080d852ba58c6727970c688eb1619.patch
@@ -0,0 +1,180 @@
+commit 252a1eecc04080d852ba58c6727970c688eb1619
+Author: Fangrui Song <i@maskray.me>
+Date:   Fri Jul 2 17:08:25 2021 -0700
+
+    [ThinLTO] Respect ClearDSOLocalOnDeclarations for unimported functions
+    
+    D74751 added `ClearDSOLocalOnDeclarations` and dropped dso_local for
+    isDeclarationForLinker `GlobalValue`s. It missed a case for imported
+    declarations (`doImportAsDefinition` is false while `isPerformingImport` is
+    true). This can lead to a linker error for a default visibility symbol in
+    `ld.lld -shared`.
+    
+    When `ClearDSOLocalOnDeclarations` is true, we check
+    `isPerformingImport() && !doImportAsDefinition(&GV)` along with
+    `GV.isDeclarationForLinker()`. The new condition checks an imported declaration.
+    
+    This patch fixes a `LLVMPolly.so` link error using a trunk clang -DLLVM_ENABLE_LTO=Thin.
+    
+    Reviewed By: tejohnson
+    
+    Differential Revision: https://reviews.llvm.org/D104986
+
+diff --git a/llvm/lib/Transforms/Utils/FunctionImportUtils.cpp b/llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
+index 94c97bb1264f..2946c0018c31 100644
+--- a/llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
++++ b/llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
+@@ -276,7 +276,9 @@ void FunctionImportGlobalProcessing::processGlobalForThinLTO(GlobalValue &GV) {
+   // When ClearDSOLocalOnDeclarations is true, clear dso_local if GV is
+   // converted to a declaration, to disable direct access. Don't do this if GV
+   // is implicitly dso_local due to a non-default visibility.
+-  if (ClearDSOLocalOnDeclarations && GV.isDeclarationForLinker() &&
++  if (ClearDSOLocalOnDeclarations &&
++      (GV.isDeclarationForLinker() ||
++       (isPerformingImport() && !doImportAsDefinition(&GV))) &&
+       !GV.isImplicitDSOLocal()) {
+     GV.setDSOLocal(false);
+   } else if (VI && VI.isDSOLocal(ImportIndex.withDSOLocalPropagation())) {
+diff --git a/llvm/test/ThinLTO/X86/import-dsolocal.ll b/llvm/test/ThinLTO/X86/import-dsolocal.ll
+new file mode 100644
+index 000000000000..11d41e70e19b
+--- /dev/null
++++ b/llvm/test/ThinLTO/X86/import-dsolocal.ll
+@@ -0,0 +1,124 @@
++; RUN: split-file %s %t
++; RUN: opt -module-summary %t/a.ll -o %t/a.bc
++; RUN: opt -module-summary %t/b.ll -o %t/b.bc
++
++;; With a small limit, *_aux are either imported declarations (external/linkonce_odr/weak_odr)
++;; or unimported (linkonce/weak). Check we discard dso_local.
++; RUN: llvm-lto2 run %t/a.bc %t/b.bc -o %t1 -save-temps -import-instr-limit=3 \
++; RUN:   -r=%t/a.bc,main,plx -r=%t/a.bc,extern, -r=%t/a.bc,linkonce, -r=%t/a.bc,linkonceodr, -r=%t/a.bc,weak, -r=%t/a.bc,weakodr, \
++; RUN:   -r=%t/b.bc,a,pl -r=%t/b.bc,b,pl -r=%t/b.bc,extern,pl -r=%t/b.bc,extern_aux,pl \
++; RUN:   -r=%t/b.bc,linkonce,pl -r=%t/b.bc,linkonce_aux,pl -r=%t/b.bc,linkonceodr,pl -r=%t/b.bc,linkonceodr_aux,pl \
++; RUN:   -r=%t/b.bc,weak,pl -r=%t/b.bc,weak_aux,pl -r=%t/b.bc,weakodr,pl -r=%t/b.bc,weakodr_aux,pl
++; RUN: llvm-dis %t1.1.3.import.bc -o - | FileCheck %s --check-prefixes=DEST,DEST1
++
++;; With a large limit, *_aux are either imported definitions (external/linkonce_odr/weak_odr)
++;; or unimported (linkonce/weak). Check we discard dso_local as well.
++; RUN: llvm-lto2 run %t/a.bc %t/b.bc -o %t2 -save-temps -import-instr-limit=10 \
++; RUN:   -r=%t/a.bc,main,plx -r=%t/a.bc,extern, -r=%t/a.bc,linkonce, -r=%t/a.bc,linkonceodr, -r=%t/a.bc,weak, -r=%t/a.bc,weakodr, \
++; RUN:   -r=%t/b.bc,a,pl -r=%t/b.bc,b,pl -r=%t/b.bc,extern,pl -r=%t/b.bc,extern_aux,pl \
++; RUN:   -r=%t/b.bc,linkonce,pl -r=%t/b.bc,linkonce_aux,pl -r=%t/b.bc,linkonceodr,pl -r=%t/b.bc,linkonceodr_aux,pl \
++; RUN:   -r=%t/b.bc,weak,pl -r=%t/b.bc,weak_aux,pl -r=%t/b.bc,weakodr,pl -r=%t/b.bc,weakodr_aux,pl
++; RUN: llvm-dis %t2.1.3.import.bc -o - | FileCheck %s --check-prefixes=DEST,DEST2
++
++; DEST:      @a = available_externally global i32 42, align 4
++; DEST-NEXT: @b = external global i32*, align 8
++; DEST:      declare void @linkonce()
++; DEST:      declare void @weak()
++; DEST:      define dso_local i32 @main()
++; DEST:      define available_externally void @extern()
++
++; DEST1:     declare i32 @extern_aux(i32*, i32**)
++; DEST1:     declare i32 @linkonceodr_aux(i32*, i32**)
++; DEST2:     define available_externally i32 @extern_aux(i32* %a, i32** %b)
++; DEST2:     define available_externally i32 @linkonceodr_aux(i32* %a, i32** %b)
++
++; DEST:      define available_externally void @weakodr()
++
++; DEST1:     declare i32 @weakodr_aux(i32*, i32**)
++; DEST2:     define available_externally i32 @weakodr_aux(i32* %a, i32** %b)
++
++;--- a.ll
++target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
++target triple = "x86_64-unknown-linux-gnu"
++
++declare void @extern()
++declare void @linkonce()
++declare void @linkonceodr()
++declare void @weak()
++declare void @weakodr()
++
++define i32 @main() {
++  call void @extern()
++  call void @linkonce()
++  call void @linkonceodr()
++  call void @weak()
++  call void @weakodr()
++  ret i32 0
++}
++
++;--- b.ll
++target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
++target triple = "x86_64-unknown-linux-gnu"
++
++@a = dso_local global i32 42, align 4
++@b = dso_local global i32* @a, align 8
++
++define dso_local void @extern() {
++  call i32 @extern_aux(i32* @a, i32** @b)
++  ret void
++}
++
++define dso_local i32 @extern_aux(i32* %a, i32** %b) {
++  %p = load i32*, i32** %b, align 8
++  store i32 33, i32* %p, align 4
++  %v = load i32, i32* %a, align 4
++  ret i32 %v
++}
++
++define linkonce dso_local void @linkonce() {
++  call i32 @linkonce_aux(i32* @a, i32** @b)
++  ret void
++}
++
++define linkonce i32 @linkonce_aux(i32* %a, i32** %b) {
++  %p = load i32*, i32** %b, align 8
++  store i32 33, i32* %p, align 4
++  %v = load i32, i32* %a, align 4
++  ret i32 %v
++}
++
++define linkonce_odr dso_local void @linkonceodr() {
++  call i32 @linkonceodr_aux(i32* @a, i32** @b)
++  ret void
++}
++
++define linkonce_odr i32 @linkonceodr_aux(i32* %a, i32** %b) {
++  %p = load i32*, i32** %b, align 8
++  store i32 33, i32* %p, align 4
++  %v = load i32, i32* %a, align 4
++  ret i32 %v
++}
++
++define weak dso_local void @weak() {
++  call i32 @weak_aux(i32* @a, i32** @b)
++  ret void
++}
++
++define weak i32 @weak_aux(i32* %a, i32** %b) {
++  %p = load i32*, i32** %b, align 8
++  store i32 33, i32* %p, align 4
++  %v = load i32, i32* %a, align 4
++  ret i32 %v
++}
++
++define weak_odr dso_local void @weakodr() {
++  call i32 @weakodr_aux(i32* @a, i32** @b)
++  ret void
++}
++
++define weak_odr i32 @weakodr_aux(i32* %a, i32** %b) {
++  %p = load i32*, i32** %b, align 8
++  store i32 33, i32* %p, align 4
++  %v = load i32, i32* %a, align 4
++  ret i32 %v
++}
+diff --git a/llvm/test/ThinLTO/X86/index-const-prop-linkage.ll b/llvm/test/ThinLTO/X86/index-const-prop-linkage.ll
+index 9eb85da92698..80f3f11e2c54 100644
+--- a/llvm/test/ThinLTO/X86/index-const-prop-linkage.ll
++++ b/llvm/test/ThinLTO/X86/index-const-prop-linkage.ll
+@@ -10,7 +10,7 @@
+ ; - available_externally linkage
+ ; - reference from @llvm.used
+ ; CHECK:      @llvm.used = appending global [1 x i32*] [i32* @g2]
+-; CHECK-NEXT: @g1 = external dso_local global i32, align 4
++; CHECK-NEXT: @g1 = external global i32, align 4
+ ; CHECK-NEXT: @g2 = available_externally global i32 42, align 4
+ ; CHECK-NEXT: @g3 = available_externally global i32 42, align 4
+ 
diff --git a/sys-devel/llvm/files/cherry/36911971a58d1ba8b15e97790ac816eaadb0603e.patch b/sys-devel/llvm/files/cherry/36911971a58d1ba8b15e97790ac816eaadb0603e.patch
new file mode 100644
index 0000000..7be45a2
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/36911971a58d1ba8b15e97790ac816eaadb0603e.patch
@@ -0,0 +1,432 @@
+commit 36911971a58d1ba8b15e97790ac816eaadb0603e
+Author: Alexey Bataev <a.bataev@outlook.com>
+Date:   Fri May 21 06:29:23 2021 -0700
+
+    [SLP]Better detection of perfect/shuffles matches for gather nodes.
+    
+    Implemented better scheme for perfect/shuffled matches of the gather
+    nodes which allows to fix the performance regressions introduced by
+    earlier patches. Starting detecting matches for broadcast nodes and
+    extractelement gathering.
+    
+    Differential Revision: https://reviews.llvm.org/D102920
+
+diff --git a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+index 0f8fb09b6f6c..31d2c717f900 100644
+--- a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
++++ b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+@@ -22,6 +22,7 @@
+ #include "llvm/ADT/Optional.h"
+ #include "llvm/ADT/PostOrderIterator.h"
+ #include "llvm/ADT/STLExtras.h"
++#include "llvm/ADT/SetOperations.h"
+ #include "llvm/ADT/SetVector.h"
+ #include "llvm/ADT/SmallBitVector.h"
+ #include "llvm/ADT/SmallPtrSet.h"
+@@ -3689,32 +3690,17 @@ InstructionCost BoUpSLP::getEntryCost(const TreeEntry *E) {
+   if (E->State == TreeEntry::NeedToGather) {
+     if (allConstant(VL))
+       return 0;
+-    if (isSplat(VL)) {
+-      return ReuseShuffleCost +
+-             TTI->getShuffleCost(TargetTransformInfo::SK_Broadcast, VecTy, None,
+-                                 0);
+-    }
+     if (isa<InsertElementInst>(VL[0]))
+       return InstructionCost::getInvalid();
+-    if (E->getOpcode() == Instruction::ExtractElement &&
+-        allSameType(VL) && allSameBlock(VL)) {
+-      SmallVector<int> Mask;
+-      Optional<TargetTransformInfo::ShuffleKind> ShuffleKind =
+-          isShuffle(VL, Mask);
+-      if (ShuffleKind.hasValue()) {
+-        InstructionCost Cost =
+-            computeExtractCost(VL, VecTy, *ShuffleKind, Mask, *TTI);
+-        AdjustExtractsCost(Cost, /*IsGather=*/true);
+-        return ReuseShuffleCost + Cost;
+-      }
+-    }
+-    InstructionCost GatherCost = 0;
+     SmallVector<int> Mask;
+     SmallVector<const TreeEntry *> Entries;
+     Optional<TargetTransformInfo::ShuffleKind> Shuffle =
+         isGatherShuffledEntry(E, Mask, Entries);
+     if (Shuffle.hasValue()) {
++      InstructionCost GatherCost = 0;
+       if (ShuffleVectorInst::isIdentityMask(Mask)) {
++        // Perfect match in the graph, will reuse the previously vectorized
++        // node. Cost is 0.
+         LLVM_DEBUG(
+             dbgs()
+             << "SLP: perfect diamond match for gather bundle that starts with "
+@@ -3723,12 +3709,38 @@ InstructionCost BoUpSLP::getEntryCost(const TreeEntry *E) {
+         LLVM_DEBUG(dbgs() << "SLP: shuffled " << Entries.size()
+                           << " entries for bundle that starts with "
+                           << *VL.front() << ".\n");
++        // Detected that instead of gather we can emit a shuffle of single/two
++        // previously vectorized nodes. Add the cost of the permutation rather
++        // than gather.
+         GatherCost = TTI->getShuffleCost(*Shuffle, VecTy, Mask);
+       }
+-    } else {
+-      GatherCost = getGatherCost(VL);
++      return ReuseShuffleCost + GatherCost;
++    }
++    if (isSplat(VL)) {
++      // Found the broadcasting of the single scalar, calculate the cost as the
++      // broadcast.
++      return ReuseShuffleCost +
++             TTI->getShuffleCost(TargetTransformInfo::SK_Broadcast, VecTy, None,
++                                 0);
++    }
++    if (E->getOpcode() == Instruction::ExtractElement && allSameType(VL) &&
++        allSameBlock(VL)) {
++      // Check that gather of extractelements can be represented as just a
++      // shuffle of a single/two vectors the scalars are extracted from.
++      SmallVector<int> Mask;
++      Optional<TargetTransformInfo::ShuffleKind> ShuffleKind =
++          isShuffle(VL, Mask);
++      if (ShuffleKind.hasValue()) {
++        // Found the bunch of extractelement instructions that must be gathered
++        // into a vector and can be represented as a permutation elements in a
++        // single input vector or of 2 input vectors.
++        InstructionCost Cost =
++            computeExtractCost(VL, VecTy, *ShuffleKind, Mask, *TTI);
++        AdjustExtractsCost(Cost, /*IsGather=*/true);
++        return ReuseShuffleCost + Cost;
++      }
+     }
+-    return ReuseShuffleCost + GatherCost;
++    return ReuseShuffleCost + getGatherCost(VL);
+   }
+   assert((E->State == TreeEntry::Vectorize ||
+           E->State == TreeEntry::ScatterVectorize) &&
+@@ -4417,6 +4429,8 @@ InstructionCost BoUpSLP::getTreeCost() {
+             return false;
+           auto *IE1 = cast<InsertElementInst>(VU);
+           auto *IE2 = cast<InsertElementInst>(V);
++          // Go though of insertelement instructions trying to find either VU as
++          // the original vector for IE2 or V as the original vector for IE1.
+           do {
+             if (IE1 == VU || IE2 == V)
+               return true;
+@@ -4519,57 +4533,127 @@ InstructionCost BoUpSLP::getTreeCost() {
+ Optional<TargetTransformInfo::ShuffleKind>
+ BoUpSLP::isGatherShuffledEntry(const TreeEntry *TE, SmallVectorImpl<int> &Mask,
+                                SmallVectorImpl<const TreeEntry *> &Entries) {
++  // TODO: currently checking only for Scalars in the tree entry, need to count
++  // reused elements too for better cost estimation.
+   Mask.assign(TE->Scalars.size(), UndefMaskElem);
+   Entries.clear();
+-  DenseMap<Value *, const TreeEntry *> UsedValuesEntry;
+-  unsigned VF = 0;
+-  // FIXME: Shall be replaced by GetVF function once non-power-2 patch is
+-  // landed.
+-  auto &&GetVF = [](const TreeEntry *TE) {
+-    if (!TE->ReuseShuffleIndices.empty())
+-      return TE->ReuseShuffleIndices.size();
+-    return TE->Scalars.size();
+-  };
+-  for (int I = 0, E = TE->Scalars.size(); I < E; ++I) {
+-    Value *V = TE->Scalars[I];
++  // Build a lists of values to tree entries.
++  DenseMap<Value *, SmallPtrSet<const TreeEntry *, 4>> ValueToTEs;
++  for (const std::unique_ptr<TreeEntry> &EntryPtr : VectorizableTree) {
++    if (EntryPtr.get() == TE)
++      break;
++    if (EntryPtr->State != TreeEntry::NeedToGather)
++      continue;
++    for (Value *V : EntryPtr->Scalars)
++      ValueToTEs.try_emplace(V).first->getSecond().insert(EntryPtr.get());
++  }
++  // Find all tree entries used by the gathered values. If no common entries
++  // found - not a shuffle.
++  // Here we build a set of tree nodes for each gathered value and trying to
++  // find the intersection between these sets. If we have at least one common
++  // tree node for each gathered value - we have just a permutation of the
++  // single vector. If we have 2 different sets, we're in situation where we
++  // have a permutation of 2 input vectors.
++  SmallVector<SmallPtrSet<const TreeEntry *, 4>> UsedTEs;
++  DenseMap<Value *, int> UsedValuesEntry;
++  for (Value *V : TE->Scalars) {
+     if (isa<UndefValue>(V))
+       continue;
+-    const TreeEntry *VTE = UsedValuesEntry.lookup(V);
+-    if (!VTE) {
+-      if (Entries.size() == 2)
+-        return None;
+-      VTE = getTreeEntry(V);
+-      if (!VTE || find_if(
+-                      VectorizableTree,
+-                      [VTE, TE](const std::unique_ptr<TreeEntry> &EntryPtr) {
+-                        return EntryPtr.get() == VTE || EntryPtr.get() == TE;
+-                      })->get() == TE) {
+-        // Check if it is used in one of the gathered entries.
+-        const auto *It =
+-            find_if(VectorizableTree,
+-                    [V, TE](const std::unique_ptr<TreeEntry> &EntryPtr) {
+-                      return EntryPtr.get() == TE ||
+-                             (EntryPtr->State == TreeEntry::NeedToGather &&
+-                              is_contained(EntryPtr->Scalars, V));
+-                    });
+-        // The vector factor of shuffled entries must be the same.
+-        if (It->get() == TE)
++    // Build a list of tree entries where V is used.
++    SmallPtrSet<const TreeEntry *, 4> VToTEs;
++    auto It = ValueToTEs.find(V);
++    if (It != ValueToTEs.end())
++      VToTEs = It->second;
++    if (const TreeEntry *VTE = getTreeEntry(V))
++      VToTEs.insert(VTE);
++    if (VToTEs.empty())
++      return None;
++    if (UsedTEs.empty()) {
++      // The first iteration, just insert the list of nodes to vector.
++      UsedTEs.push_back(VToTEs);
++    } else {
++      // Need to check if there are any previously used tree nodes which use V.
++      // If there are no such nodes, consider that we have another one input
++      // vector.
++      SmallPtrSet<const TreeEntry *, 4> SavedVToTEs(VToTEs);
++      unsigned Idx = 0;
++      for (SmallPtrSet<const TreeEntry *, 4> &Set : UsedTEs) {
++        // Do we have a non-empty intersection of previously listed tree entries
++        // and tree entries using current V?
++        set_intersect(VToTEs, Set);
++        if (!VToTEs.empty()) {
++          // Yes, write the new subset and continue analysis for the next
++          // scalar.
++          Set.swap(VToTEs);
++          break;
++        }
++        VToTEs = SavedVToTEs;
++        ++Idx;
++      }
++      // No non-empty intersection found - need to add a second set of possible
++      // source vectors.
++      if (Idx == UsedTEs.size()) {
++        // If the number of input vectors is greater than 2 - not a permutation,
++        // fallback to the regular gather.
++        if (UsedTEs.size() == 2)
+           return None;
+-        VTE = It->get();
++        UsedTEs.push_back(SavedVToTEs);
++        Idx = UsedTEs.size() - 1;
+       }
+-      Entries.push_back(VTE);
+-      if (Entries.size() == 1) {
+-        VF = GetVF(VTE);
+-      } else if (VF != GetVF(VTE)) {
+-        assert(Entries.size() == 2 && "Expected shuffle of 1 or 2 entries.");
+-        assert(VF > 0 && "Expected non-zero vector factor.");
+-        return None;
++      UsedValuesEntry.try_emplace(V, Idx);
++    }
++  }
++
++  unsigned VF = 0;
++  if (UsedTEs.size() == 1) {
++    // Try to find the perfect match in another gather node at first.
++    auto It = find_if(UsedTEs.front(), [TE](const TreeEntry *EntryPtr) {
++      return EntryPtr->isSame(TE->Scalars);
++    });
++    if (It != UsedTEs.front().end()) {
++      Entries.push_back(*It);
++      std::iota(Mask.begin(), Mask.end(), 0);
++      return TargetTransformInfo::SK_PermuteSingleSrc;
++    }
++    // No perfect match, just shuffle, so choose the first tree node.
++    Entries.push_back(*UsedTEs.front().begin());
++  } else {
++    // Try to find nodes with the same vector factor.
++    assert(UsedTEs.size() == 2 && "Expected at max 2 permuted entries.");
++    // FIXME: Shall be replaced by GetVF function once non-power-2 patch is
++    // landed.
++    auto &&GetVF = [](const TreeEntry *TE) {
++      if (!TE->ReuseShuffleIndices.empty())
++        return TE->ReuseShuffleIndices.size();
++      return TE->Scalars.size();
++    };
++    DenseMap<int, const TreeEntry *> VFToTE;
++    for (const TreeEntry *TE : UsedTEs.front())
++      VFToTE.try_emplace(GetVF(TE), TE);
++    for (const TreeEntry *TE : UsedTEs.back()) {
++      auto It = VFToTE.find(GetVF(TE));
++      if (It != VFToTE.end()) {
++        VF = It->first;
++        Entries.push_back(It->second);
++        Entries.push_back(TE);
++        break;
+       }
+-      for (Value *SV : VTE->Scalars)
+-        UsedValuesEntry.try_emplace(SV, VTE);
+     }
++    // No 2 source vectors with the same vector factor - give up and do regular
++    // gather.
++    if (Entries.empty())
++      return None;
++  }
++
++  // Build a shuffle mask for better cost estimation and vector emission.
++  for (int I = 0, E = TE->Scalars.size(); I < E; ++I) {
++    Value *V = TE->Scalars[I];
++    if (isa<UndefValue>(V))
++      continue;
++    unsigned Idx = UsedValuesEntry.lookup(V);
++    const TreeEntry *VTE = Entries[Idx];
+     int FoundLane = findLaneForValue(VTE->Scalars, VTE->ReuseShuffleIndices, V);
+-    Mask[I] = (Entries.front() == VTE ? 0 : VF) + FoundLane;
++    Mask[I] = Idx * VF + FoundLane;
+     // Extra check required by isSingleSourceMaskImpl function (called by
+     // ShuffleVectorInst::isSingleSourceMask).
+     if (Mask[I] >= 2 * E)
+diff --git a/llvm/test/Transforms/SLPVectorizer/X86/blending-shuffle-inseltpoison.ll b/llvm/test/Transforms/SLPVectorizer/X86/blending-shuffle-inseltpoison.ll
+index f147911a6d1f..1c806c6b1f73 100644
+--- a/llvm/test/Transforms/SLPVectorizer/X86/blending-shuffle-inseltpoison.ll
++++ b/llvm/test/Transforms/SLPVectorizer/X86/blending-shuffle-inseltpoison.ll
+@@ -81,15 +81,18 @@ define i8 @i(<4 x i8> %x, <4 x i8> %y) {
+ 
+ define i8 @j(<4 x i8> %x, <4 x i8> %y) {
+ ; CHECK-LABEL: @j(
+-; CHECK-NEXT:    [[TMP1:%.*]] = shufflevector <4 x i8> [[X:%.*]], <4 x i8> [[Y:%.*]], <2 x i32> <i32 0, i32 5>
+-; CHECK-NEXT:    [[TMP2:%.*]] = mul <2 x i8> [[TMP1]], [[TMP1]]
+-; CHECK-NEXT:    [[TMP3:%.*]] = shufflevector <4 x i8> [[X]], <4 x i8> [[Y]], <2 x i32> <i32 3, i32 6>
+-; CHECK-NEXT:    [[TMP4:%.*]] = mul <2 x i8> [[TMP3]], [[TMP3]]
+-; CHECK-NEXT:    [[TMP5:%.*]] = add <2 x i8> [[TMP2]], [[TMP4]]
+-; CHECK-NEXT:    [[TMP6:%.*]] = extractelement <2 x i8> [[TMP5]], i32 0
+-; CHECK-NEXT:    [[TMP7:%.*]] = extractelement <2 x i8> [[TMP5]], i32 1
+-; CHECK-NEXT:    [[TMP8:%.*]] = sdiv i8 [[TMP6]], [[TMP7]]
+-; CHECK-NEXT:    ret i8 [[TMP8]]
++; CHECK-NEXT:    [[X0:%.*]] = extractelement <4 x i8> [[X:%.*]], i32 0
++; CHECK-NEXT:    [[X3:%.*]] = extractelement <4 x i8> [[X]], i32 3
++; CHECK-NEXT:    [[Y1:%.*]] = extractelement <4 x i8> [[Y:%.*]], i32 1
++; CHECK-NEXT:    [[Y2:%.*]] = extractelement <4 x i8> [[Y]], i32 2
++; CHECK-NEXT:    [[X0X0:%.*]] = mul i8 [[X0]], [[X0]]
++; CHECK-NEXT:    [[X3X3:%.*]] = mul i8 [[X3]], [[X3]]
++; CHECK-NEXT:    [[Y1Y1:%.*]] = mul i8 [[Y1]], [[Y1]]
++; CHECK-NEXT:    [[Y2Y2:%.*]] = mul i8 [[Y2]], [[Y2]]
++; CHECK-NEXT:    [[TMP1:%.*]] = add i8 [[X0X0]], [[X3X3]]
++; CHECK-NEXT:    [[TMP2:%.*]] = add i8 [[Y1Y1]], [[Y2Y2]]
++; CHECK-NEXT:    [[TMP3:%.*]] = sdiv i8 [[TMP1]], [[TMP2]]
++; CHECK-NEXT:    ret i8 [[TMP3]]
+ ;
+   %x0 = extractelement <4 x i8> %x, i32 0
+   %x3 = extractelement <4 x i8> %x, i32 3
+@@ -107,15 +110,18 @@ define i8 @j(<4 x i8> %x, <4 x i8> %y) {
+ 
+ define i8 @k(<4 x i8> %x) {
+ ; CHECK-LABEL: @k(
+-; CHECK-NEXT:    [[TMP1:%.*]] = mul <4 x i8> [[X:%.*]], [[X]]
+-; CHECK-NEXT:    [[TMP2:%.*]] = shufflevector <4 x i8> [[TMP1]], <4 x i8> undef, <2 x i32> <i32 0, i32 1>
+-; CHECK-NEXT:    [[TMP3:%.*]] = mul <4 x i8> [[X]], [[X]]
+-; CHECK-NEXT:    [[TMP4:%.*]] = shufflevector <4 x i8> [[TMP3]], <4 x i8> undef, <2 x i32> <i32 3, i32 2>
+-; CHECK-NEXT:    [[TMP5:%.*]] = add <2 x i8> [[TMP2]], [[TMP4]]
+-; CHECK-NEXT:    [[TMP6:%.*]] = extractelement <2 x i8> [[TMP5]], i32 0
+-; CHECK-NEXT:    [[TMP7:%.*]] = extractelement <2 x i8> [[TMP5]], i32 1
+-; CHECK-NEXT:    [[TMP8:%.*]] = sdiv i8 [[TMP6]], [[TMP7]]
+-; CHECK-NEXT:    ret i8 [[TMP8]]
++; CHECK-NEXT:    [[X0:%.*]] = extractelement <4 x i8> [[X:%.*]], i32 0
++; CHECK-NEXT:    [[X3:%.*]] = extractelement <4 x i8> [[X]], i32 3
++; CHECK-NEXT:    [[X1:%.*]] = extractelement <4 x i8> [[X]], i32 1
++; CHECK-NEXT:    [[X2:%.*]] = extractelement <4 x i8> [[X]], i32 2
++; CHECK-NEXT:    [[X0X0:%.*]] = mul i8 [[X0]], [[X0]]
++; CHECK-NEXT:    [[X3X3:%.*]] = mul i8 [[X3]], [[X3]]
++; CHECK-NEXT:    [[X1X1:%.*]] = mul i8 [[X1]], [[X1]]
++; CHECK-NEXT:    [[X2X2:%.*]] = mul i8 [[X2]], [[X2]]
++; CHECK-NEXT:    [[TMP1:%.*]] = add i8 [[X0X0]], [[X3X3]]
++; CHECK-NEXT:    [[TMP2:%.*]] = add i8 [[X1X1]], [[X2X2]]
++; CHECK-NEXT:    [[TMP3:%.*]] = sdiv i8 [[TMP1]], [[TMP2]]
++; CHECK-NEXT:    ret i8 [[TMP3]]
+ ;
+   %x0 = extractelement <4 x i8> %x, i32 0
+   %x3 = extractelement <4 x i8> %x, i32 3
+diff --git a/llvm/test/Transforms/SLPVectorizer/X86/blending-shuffle.ll b/llvm/test/Transforms/SLPVectorizer/X86/blending-shuffle.ll
+index 1a4d0c3b50bd..0fcc096773dd 100644
+--- a/llvm/test/Transforms/SLPVectorizer/X86/blending-shuffle.ll
++++ b/llvm/test/Transforms/SLPVectorizer/X86/blending-shuffle.ll
+@@ -81,15 +81,18 @@ define i8 @i(<4 x i8> %x, <4 x i8> %y) {
+ 
+ define i8 @j(<4 x i8> %x, <4 x i8> %y) {
+ ; CHECK-LABEL: @j(
+-; CHECK-NEXT:    [[TMP1:%.*]] = shufflevector <4 x i8> [[X:%.*]], <4 x i8> [[Y:%.*]], <2 x i32> <i32 0, i32 5>
+-; CHECK-NEXT:    [[TMP2:%.*]] = mul <2 x i8> [[TMP1]], [[TMP1]]
+-; CHECK-NEXT:    [[TMP3:%.*]] = shufflevector <4 x i8> [[X]], <4 x i8> [[Y]], <2 x i32> <i32 3, i32 6>
+-; CHECK-NEXT:    [[TMP4:%.*]] = mul <2 x i8> [[TMP3]], [[TMP3]]
+-; CHECK-NEXT:    [[TMP5:%.*]] = add <2 x i8> [[TMP2]], [[TMP4]]
+-; CHECK-NEXT:    [[TMP6:%.*]] = extractelement <2 x i8> [[TMP5]], i32 0
+-; CHECK-NEXT:    [[TMP7:%.*]] = extractelement <2 x i8> [[TMP5]], i32 1
+-; CHECK-NEXT:    [[TMP8:%.*]] = sdiv i8 [[TMP6]], [[TMP7]]
+-; CHECK-NEXT:    ret i8 [[TMP8]]
++; CHECK-NEXT:    [[X0:%.*]] = extractelement <4 x i8> [[X:%.*]], i32 0
++; CHECK-NEXT:    [[X3:%.*]] = extractelement <4 x i8> [[X]], i32 3
++; CHECK-NEXT:    [[Y1:%.*]] = extractelement <4 x i8> [[Y:%.*]], i32 1
++; CHECK-NEXT:    [[Y2:%.*]] = extractelement <4 x i8> [[Y]], i32 2
++; CHECK-NEXT:    [[X0X0:%.*]] = mul i8 [[X0]], [[X0]]
++; CHECK-NEXT:    [[X3X3:%.*]] = mul i8 [[X3]], [[X3]]
++; CHECK-NEXT:    [[Y1Y1:%.*]] = mul i8 [[Y1]], [[Y1]]
++; CHECK-NEXT:    [[Y2Y2:%.*]] = mul i8 [[Y2]], [[Y2]]
++; CHECK-NEXT:    [[TMP1:%.*]] = add i8 [[X0X0]], [[X3X3]]
++; CHECK-NEXT:    [[TMP2:%.*]] = add i8 [[Y1Y1]], [[Y2Y2]]
++; CHECK-NEXT:    [[TMP3:%.*]] = sdiv i8 [[TMP1]], [[TMP2]]
++; CHECK-NEXT:    ret i8 [[TMP3]]
+ ;
+   %x0 = extractelement <4 x i8> %x, i32 0
+   %x3 = extractelement <4 x i8> %x, i32 3
+@@ -107,15 +110,18 @@ define i8 @j(<4 x i8> %x, <4 x i8> %y) {
+ 
+ define i8 @k(<4 x i8> %x) {
+ ; CHECK-LABEL: @k(
+-; CHECK-NEXT:    [[TMP1:%.*]] = mul <4 x i8> [[X:%.*]], [[X]]
+-; CHECK-NEXT:    [[TMP2:%.*]] = shufflevector <4 x i8> [[TMP1]], <4 x i8> undef, <2 x i32> <i32 0, i32 1>
+-; CHECK-NEXT:    [[TMP3:%.*]] = mul <4 x i8> [[X]], [[X]]
+-; CHECK-NEXT:    [[TMP4:%.*]] = shufflevector <4 x i8> [[TMP3]], <4 x i8> undef, <2 x i32> <i32 3, i32 2>
+-; CHECK-NEXT:    [[TMP5:%.*]] = add <2 x i8> [[TMP2]], [[TMP4]]
+-; CHECK-NEXT:    [[TMP6:%.*]] = extractelement <2 x i8> [[TMP5]], i32 0
+-; CHECK-NEXT:    [[TMP7:%.*]] = extractelement <2 x i8> [[TMP5]], i32 1
+-; CHECK-NEXT:    [[TMP8:%.*]] = sdiv i8 [[TMP6]], [[TMP7]]
+-; CHECK-NEXT:    ret i8 [[TMP8]]
++; CHECK-NEXT:    [[X0:%.*]] = extractelement <4 x i8> [[X:%.*]], i32 0
++; CHECK-NEXT:    [[X3:%.*]] = extractelement <4 x i8> [[X]], i32 3
++; CHECK-NEXT:    [[X1:%.*]] = extractelement <4 x i8> [[X]], i32 1
++; CHECK-NEXT:    [[X2:%.*]] = extractelement <4 x i8> [[X]], i32 2
++; CHECK-NEXT:    [[X0X0:%.*]] = mul i8 [[X0]], [[X0]]
++; CHECK-NEXT:    [[X3X3:%.*]] = mul i8 [[X3]], [[X3]]
++; CHECK-NEXT:    [[X1X1:%.*]] = mul i8 [[X1]], [[X1]]
++; CHECK-NEXT:    [[X2X2:%.*]] = mul i8 [[X2]], [[X2]]
++; CHECK-NEXT:    [[TMP1:%.*]] = add i8 [[X0X0]], [[X3X3]]
++; CHECK-NEXT:    [[TMP2:%.*]] = add i8 [[X1X1]], [[X2X2]]
++; CHECK-NEXT:    [[TMP3:%.*]] = sdiv i8 [[TMP1]], [[TMP2]]
++; CHECK-NEXT:    ret i8 [[TMP3]]
+ ;
+   %x0 = extractelement <4 x i8> %x, i32 0
+   %x3 = extractelement <4 x i8> %x, i32 3
+diff --git a/llvm/test/Transforms/SLPVectorizer/X86/diamond_broadcast.ll b/llvm/test/Transforms/SLPVectorizer/X86/diamond_broadcast.ll
+index d34645707584..4eeebdbb2871 100644
+--- a/llvm/test/Transforms/SLPVectorizer/X86/diamond_broadcast.ll
++++ b/llvm/test/Transforms/SLPVectorizer/X86/diamond_broadcast.ll
+@@ -5,17 +5,16 @@ define i32 @diamond_broadcast(i32* noalias nocapture %B, i32* noalias nocapture
+ ; CHECK-LABEL: @diamond_broadcast(
+ ; CHECK-NEXT:  entry:
+ ; CHECK-NEXT:    [[LD:%.*]] = load i32, i32* [[A:%.*]], align 4
+-; CHECK-NEXT:    [[MUL:%.*]] = mul i32 [[LD]], [[LD]]
+-; CHECK-NEXT:    store i32 [[MUL]], i32* [[B:%.*]], align 4
+-; CHECK-NEXT:    [[MUL8:%.*]] = mul i32 [[LD]], [[LD]]
+-; CHECK-NEXT:    [[ARRAYIDX9:%.*]] = getelementptr inbounds i32, i32* [[B]], i64 1
+-; CHECK-NEXT:    store i32 [[MUL8]], i32* [[ARRAYIDX9]], align 4
+-; CHECK-NEXT:    [[MUL14:%.*]] = mul i32 [[LD]], [[LD]]
++; CHECK-NEXT:    [[ARRAYIDX9:%.*]] = getelementptr inbounds i32, i32* [[B:%.*]], i64 1
+ ; CHECK-NEXT:    [[ARRAYIDX15:%.*]] = getelementptr inbounds i32, i32* [[B]], i64 2
+-; CHECK-NEXT:    store i32 [[MUL14]], i32* [[ARRAYIDX15]], align 4
+-; CHECK-NEXT:    [[MUL20:%.*]] = mul i32 [[LD]], [[LD]]
++; CHECK-NEXT:    [[TMP0:%.*]] = insertelement <4 x i32> poison, i32 [[LD]], i32 0
++; CHECK-NEXT:    [[TMP1:%.*]] = insertelement <4 x i32> [[TMP0]], i32 [[LD]], i32 1
++; CHECK-NEXT:    [[TMP2:%.*]] = insertelement <4 x i32> [[TMP1]], i32 [[LD]], i32 2
++; CHECK-NEXT:    [[TMP3:%.*]] = insertelement <4 x i32> [[TMP2]], i32 [[LD]], i32 3
++; CHECK-NEXT:    [[TMP4:%.*]] = mul <4 x i32> [[TMP3]], [[TMP3]]
+ ; CHECK-NEXT:    [[ARRAYIDX21:%.*]] = getelementptr inbounds i32, i32* [[B]], i64 3
+-; CHECK-NEXT:    store i32 [[MUL20]], i32* [[ARRAYIDX21]], align 4
++; CHECK-NEXT:    [[TMP5:%.*]] = bitcast i32* [[B]] to <4 x i32>*
++; CHECK-NEXT:    store <4 x i32> [[TMP4]], <4 x i32>* [[TMP5]], align 4
+ ; CHECK-NEXT:    ret i32 0
+ ;
+ entry:
diff --git a/sys-devel/llvm/files/cherry/379f24ffde03d1730f1e8332574865277a5478fe.patch b/sys-devel/llvm/files/cherry/379f24ffde03d1730f1e8332574865277a5478fe.patch
new file mode 100644
index 0000000..f955198
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/379f24ffde03d1730f1e8332574865277a5478fe.patch
@@ -0,0 +1,2050 @@
+commit 379f24ffde03d1730f1e8332574865277a5478fe
+Author: Jim Ingham <jingham@apple.com>
+Date:   Thu Jul 8 18:08:11 2021 -0700
+
+    Revert "Revert "Reset the wakeup timeout when we re-enter the continue wait.""
+    
+    This reverts commit 82a38837150099288a1262391ef43e1fd69ffde4.
+    
+    The original version had a copy-paste error: using the Interrupt timeout
+    for the ResumeSynchronous wait, which is clearly wrong.  This error would
+    have been evident with real use, but the interrupt is long enough that it
+    only caused one testsuite failure (in the Swift fork).
+    
+    Anyway, I found that mistake and fixed it and checked all the other places
+    where I had to plumb through a timeout, and added a test with a short
+    interrupt timeout stepping over a function that takes 3x the interrupt timeout
+    to complete, so that should detect a similar mistake in the future.
+
+diff --git a/lldb/include/lldb/Target/Process.h b/lldb/include/lldb/Target/Process.h
+index 03b05c8e25d9..b125a38636c8 100644
+--- a/lldb/include/lldb/Target/Process.h
++++ b/lldb/include/lldb/Target/Process.h
+@@ -95,6 +95,7 @@ public:
+   bool GetWarningsUnsupportedLanguage() const;
+   bool GetStopOnExec() const;
+   std::chrono::seconds GetUtilityExpressionTimeout() const;
++  std::chrono::seconds GetInterruptTimeout() const;
+   bool GetOSPluginReportsAllThreads() const;
+   void SetOSPluginReportsAllThreads(bool does_report);
+   bool GetSteppingRunsAllThreads() const;
+diff --git a/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp b/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
+index 69c94c36cf0b..528208665a4e 100644
+--- a/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
++++ b/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
+@@ -740,8 +740,8 @@ const UnixSignalsSP &PlatformRemoteGDBServer::GetRemoteUnixSignals() {
+   m_remote_signals_sp = UnixSignals::Create(GetRemoteSystemArchitecture());
+ 
+   StringExtractorGDBRemote response;
+-  auto result = m_gdb_client.SendPacketAndWaitForResponse("jSignalsInfo",
+-                                                          response, false);
++  auto result =
++      m_gdb_client.SendPacketAndWaitForResponse("jSignalsInfo", response);
+ 
+   if (result != decltype(result)::Success ||
+       response.GetResponseType() != response.eResponse)
+diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp
+index fdaa60e2df41..a4c71e864a76 100644
+--- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp
++++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp
+@@ -20,7 +20,10 @@ using namespace lldb_private;
+ using namespace lldb_private::process_gdb_remote;
+ using namespace std::chrono;
+ 
+-static const seconds kInterruptTimeout(5);
++// When we've sent a continue packet and are waiting for the target to stop,
++// we wake up the wait with this interval to make sure the stub hasn't gone
++// away while we were waiting.
++static const seconds kWakeupInterval(5);
+ 
+ /////////////////////////
+ // GDBRemoteClientBase //
+@@ -35,7 +38,8 @@ GDBRemoteClientBase::GDBRemoteClientBase(const char *comm_name,
+ 
+ StateType GDBRemoteClientBase::SendContinuePacketAndWaitForResponse(
+     ContinueDelegate &delegate, const UnixSignals &signals,
+-    llvm::StringRef payload, StringExtractorGDBRemote &response) {
++    llvm::StringRef payload, std::chrono::seconds interrupt_timeout,
++    StringExtractorGDBRemote &response) {
+   Log *log(ProcessGDBRemoteLog::GetLogIfAllCategoriesSet(GDBR_LOG_PROCESS));
+   response.Clear();
+ 
+@@ -48,16 +52,37 @@ StateType GDBRemoteClientBase::SendContinuePacketAndWaitForResponse(
+   if (!cont_lock)
+     return eStateInvalid;
+   OnRunPacketSent(true);
+-
++  // The main ReadPacket loop wakes up at computed_timeout intervals, just to 
++  // check that the connection hasn't dropped.  When we wake up we also check
++  // whether there is an interrupt request that has reached its endpoint.
++  // If we want a shorter interrupt timeout that kWakeupInterval, we need to 
++  // choose the shorter interval for the wake up as well.
++  std::chrono::seconds computed_timeout = std::min(interrupt_timeout, 
++                                                   kWakeupInterval);
+   for (;;) {
+-    PacketResult read_result = ReadPacket(response, kInterruptTimeout, false);
++    PacketResult read_result = ReadPacket(response, computed_timeout, false);
++    // Reset the computed_timeout to the default value in case we are going
++    // round again.
++    computed_timeout = std::min(interrupt_timeout, kWakeupInterval);
+     switch (read_result) {
+     case PacketResult::ErrorReplyTimeout: {
+       std::lock_guard<std::mutex> lock(m_mutex);
+-      if (m_async_count == 0)
++      if (m_async_count == 0) {
+         continue;
+-      if (steady_clock::now() >= m_interrupt_time + kInterruptTimeout)
++      }
++      auto cur_time = steady_clock::now();
++      if (cur_time >= m_interrupt_endpoint)
+         return eStateInvalid;
++      else {
++        // We woke up and found an interrupt is in flight, but we haven't
++        // exceeded the interrupt wait time.  So reset the wait time to the
++        // time left till the interrupt timeout.  But don't wait longer
++        // than our wakeup timeout.
++        auto new_wait = m_interrupt_endpoint - cur_time;
++        computed_timeout = std::min(kWakeupInterval,
++            std::chrono::duration_cast<std::chrono::seconds>(new_wait));
++        continue;
++      }
+       break;
+     }
+     case PacketResult::Success:
+@@ -133,8 +158,9 @@ StateType GDBRemoteClientBase::SendContinuePacketAndWaitForResponse(
+   }
+ }
+ 
+-bool GDBRemoteClientBase::SendAsyncSignal(int signo) {
+-  Lock lock(*this, true);
++bool GDBRemoteClientBase::SendAsyncSignal(
++    int signo, std::chrono::seconds interrupt_timeout) {
++  Lock lock(*this, interrupt_timeout);
+   if (!lock || !lock.DidInterrupt())
+     return false;
+ 
+@@ -144,25 +170,26 @@ bool GDBRemoteClientBase::SendAsyncSignal(int signo) {
+   return true;
+ }
+ 
+-bool GDBRemoteClientBase::Interrupt() {
+-  Lock lock(*this, true);
++bool GDBRemoteClientBase::Interrupt(std::chrono::seconds interrupt_timeout) {
++  Lock lock(*this, interrupt_timeout);
+   if (!lock.DidInterrupt())
+     return false;
+   m_should_stop = true;
+   return true;
+ }
++
+ GDBRemoteCommunication::PacketResult
+ GDBRemoteClientBase::SendPacketAndWaitForResponse(
+     llvm::StringRef payload, StringExtractorGDBRemote &response,
+-    bool send_async) {
+-  Lock lock(*this, send_async);
++    std::chrono::seconds interrupt_timeout) {
++  Lock lock(*this, interrupt_timeout);
+   if (!lock) {
+     if (Log *log =
+             ProcessGDBRemoteLog::GetLogIfAllCategoriesSet(GDBR_LOG_PROCESS))
+       LLDB_LOGF(log,
+                 "GDBRemoteClientBase::%s failed to get mutex, not sending "
+-                "packet '%.*s' (send_async=%d)",
+-                __FUNCTION__, int(payload.size()), payload.data(), send_async);
++                "packet '%.*s'",
++                __FUNCTION__, int(payload.size()), payload.data());
+     return PacketResult::ErrorSendFailed;
+   }
+ 
+@@ -172,16 +199,16 @@ GDBRemoteClientBase::SendPacketAndWaitForResponse(
+ GDBRemoteCommunication::PacketResult
+ GDBRemoteClientBase::SendPacketAndReceiveResponseWithOutputSupport(
+     llvm::StringRef payload, StringExtractorGDBRemote &response,
+-    bool send_async,
++    std::chrono::seconds interrupt_timeout,
+     llvm::function_ref<void(llvm::StringRef)> output_callback) {
+-  Lock lock(*this, send_async);
++  Lock lock(*this, interrupt_timeout);
+   if (!lock) {
+     if (Log *log =
+             ProcessGDBRemoteLog::GetLogIfAllCategoriesSet(GDBR_LOG_PROCESS))
+       LLDB_LOGF(log,
+                 "GDBRemoteClientBase::%s failed to get mutex, not sending "
+-                "packet '%.*s' (send_async=%d)",
+-                __FUNCTION__, int(payload.size()), payload.data(), send_async);
++                "packet '%.*s'",
++                __FUNCTION__, int(payload.size()), payload.data());
+     return PacketResult::ErrorSendFailed;
+   }
+ 
+@@ -222,13 +249,14 @@ GDBRemoteClientBase::SendPacketAndWaitForResponseNoLock(
+   return packet_result;
+ }
+ 
+-bool GDBRemoteClientBase::SendvContPacket(llvm::StringRef payload,
+-                                          StringExtractorGDBRemote &response) {
++bool GDBRemoteClientBase::SendvContPacket(
++    llvm::StringRef payload, std::chrono::seconds interrupt_timeout,
++    StringExtractorGDBRemote &response) {
+   Log *log(ProcessGDBRemoteLog::GetLogIfAllCategoriesSet(GDBR_LOG_PROCESS));
+   LLDB_LOGF(log, "GDBRemoteCommunicationClient::%s ()", __FUNCTION__);
+ 
+   // we want to lock down packet sending while we continue
+-  Lock lock(*this, true);
++  Lock lock(*this, interrupt_timeout);
+ 
+   LLDB_LOGF(log,
+             "GDBRemoteCommunicationClient::%s () sending vCont packet: %.*s",
+@@ -336,18 +364,20 @@ GDBRemoteClientBase::ContinueLock::lock() {
+ // GDBRemoteClientBase::Lock //
+ ///////////////////////////////
+ 
+-GDBRemoteClientBase::Lock::Lock(GDBRemoteClientBase &comm, bool interrupt)
++GDBRemoteClientBase::Lock::Lock(GDBRemoteClientBase &comm,
++                                std::chrono::seconds interrupt_timeout)
+     : m_async_lock(comm.m_async_mutex, std::defer_lock), m_comm(comm),
+-      m_acquired(false), m_did_interrupt(false) {
+-  SyncWithContinueThread(interrupt);
++      m_interrupt_timeout(interrupt_timeout), m_acquired(false),
++      m_did_interrupt(false) {
++  SyncWithContinueThread();
+   if (m_acquired)
+     m_async_lock.lock();
+ }
+ 
+-void GDBRemoteClientBase::Lock::SyncWithContinueThread(bool interrupt) {
++void GDBRemoteClientBase::Lock::SyncWithContinueThread() {
+   Log *log(ProcessGDBRemoteLog::GetLogIfAllCategoriesSet(GDBR_LOG_PROCESS));
+   std::unique_lock<std::mutex> lock(m_comm.m_mutex);
+-  if (m_comm.m_is_running && !interrupt)
++  if (m_comm.m_is_running && m_interrupt_timeout == std::chrono::seconds(0))
+     return; // We were asked to avoid interrupting the sender. Lock is not
+             // acquired.
+ 
+@@ -365,9 +395,9 @@ void GDBRemoteClientBase::Lock::SyncWithContinueThread(bool interrupt) {
+                        "interrupt packet");
+         return;
+       }
++      m_comm.m_interrupt_endpoint = steady_clock::now() + m_interrupt_timeout;
+       if (log)
+         log->PutCString("GDBRemoteClientBase::Lock::Lock sent packet: \\x03");
+-      m_comm.m_interrupt_time = steady_clock::now();
+     }
+     m_comm.m_cv.wait(lock, [this] { return !m_comm.m_is_running; });
+     m_did_interrupt = true;
+diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.h b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.h
+index cd9f6ebd7642..518b81318b6c 100644
+--- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.h
++++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.h
+@@ -33,29 +33,46 @@ public:
+ 
+   GDBRemoteClientBase(const char *comm_name, const char *listener_name);
+ 
+-  bool SendAsyncSignal(int signo);
++  bool SendAsyncSignal(int signo, std::chrono::seconds interrupt_timeout);
+ 
+-  bool Interrupt();
++  bool Interrupt(std::chrono::seconds interrupt_timeout);
+ 
+   lldb::StateType SendContinuePacketAndWaitForResponse(
+       ContinueDelegate &delegate, const UnixSignals &signals,
+-      llvm::StringRef payload, StringExtractorGDBRemote &response);
+-
+-  PacketResult SendPacketAndWaitForResponse(llvm::StringRef payload,
+-                                            StringExtractorGDBRemote &response,
+-                                            bool send_async);
++      llvm::StringRef payload, std::chrono::seconds interrupt_timeout,
++      StringExtractorGDBRemote &response);
++
++  // If interrupt_timeout == 0 seconds, don't interrupt the target.
++  // Only send the packet if the target is stopped.
++  // If you want to use this mode, use the fact that the timeout is defaulted
++  // so it's clear from the call-site that you are using no-interrupt.
++  // If it is non-zero, interrupt the target if it is running, and
++  // send the packet.
++  // It the target doesn't respond within the given timeout, it returns
++  // ErrorReplyTimeout.
++  PacketResult SendPacketAndWaitForResponse(
++      llvm::StringRef payload, StringExtractorGDBRemote &response,
++      std::chrono::seconds interrupt_timeout = std::chrono::seconds(0));
+ 
+   PacketResult SendPacketAndReceiveResponseWithOutputSupport(
+       llvm::StringRef payload, StringExtractorGDBRemote &response,
+-      bool send_async,
++      std::chrono::seconds interrupt_timeout,
+       llvm::function_ref<void(llvm::StringRef)> output_callback);
+ 
+   bool SendvContPacket(llvm::StringRef payload,
++                       std::chrono::seconds interrupt_timeout,
+                        StringExtractorGDBRemote &response);
+ 
+   class Lock {
+   public:
+-    Lock(GDBRemoteClientBase &comm, bool interrupt);
++    // If interrupt_timeout == 0 seconds, only take the lock if the target is
++    // not running. If using this option, use the fact that the
++    // interrupt_timeout is defaulted so it will be obvious at the call site
++    // that you are choosing this mode. If it is non-zero, interrupt the target
++    // if it is running, waiting for the given timeout for the interrupt to
++    // succeed.
++    Lock(GDBRemoteClientBase &comm,
++         std::chrono::seconds interrupt_timeout = std::chrono::seconds(0));
+     ~Lock();
+ 
+     explicit operator bool() { return m_acquired; }
+@@ -67,10 +84,11 @@ public:
+   private:
+     std::unique_lock<std::recursive_mutex> m_async_lock;
+     GDBRemoteClientBase &m_comm;
++    std::chrono::seconds m_interrupt_timeout;
+     bool m_acquired;
+     bool m_did_interrupt;
+ 
+-    void SyncWithContinueThread(bool interrupt);
++    void SyncWithContinueThread();
+   };
+ 
+ protected:
+@@ -109,7 +127,7 @@ private:
+ 
+   /// When was the interrupt packet sent. Used to make sure we time out if the
+   /// stub does not respond to interrupt requests.
+-  std::chrono::time_point<std::chrono::steady_clock> m_interrupt_time;
++  std::chrono::time_point<std::chrono::steady_clock> m_interrupt_endpoint;
+ 
+   /// Number of threads interested in sending.
+   uint32_t m_async_count;
+diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
+index 8a1ebb98e5ba..a07a3f91c0c8 100644
+--- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
++++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
+@@ -182,7 +182,7 @@ bool GDBRemoteCommunicationClient::QueryNoAckModeSupported() {
+     ScopedTimeout timeout(*this, std::max(GetPacketTimeout(), seconds(6)));
+ 
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse("QStartNoAckMode", response, false) ==
++    if (SendPacketAndWaitForResponse("QStartNoAckMode", response) ==
+         PacketResult::Success) {
+       if (response.IsOKResponse()) {
+         m_send_acks = false;
+@@ -199,8 +199,8 @@ void GDBRemoteCommunicationClient::GetListThreadsInStopReplySupported() {
+     m_supports_threads_in_stop_reply = eLazyBoolNo;
+ 
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse("QListThreadsInStopReply", response,
+-                                     false) == PacketResult::Success) {
++    if (SendPacketAndWaitForResponse("QListThreadsInStopReply", response) ==
++        PacketResult::Success) {
+       if (response.IsOKResponse())
+         m_supports_threads_in_stop_reply = eLazyBoolYes;
+     }
+@@ -212,8 +212,8 @@ bool GDBRemoteCommunicationClient::GetVAttachOrWaitSupported() {
+     m_attach_or_wait_reply = eLazyBoolNo;
+ 
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse("qVAttachOrWaitSupported", response,
+-                                     false) == PacketResult::Success) {
++    if (SendPacketAndWaitForResponse("qVAttachOrWaitSupported", response) ==
++        PacketResult::Success) {
+       if (response.IsOKResponse())
+         m_attach_or_wait_reply = eLazyBoolYes;
+     }
+@@ -226,8 +226,8 @@ bool GDBRemoteCommunicationClient::GetSyncThreadStateSupported() {
+     m_prepare_for_reg_writing_reply = eLazyBoolNo;
+ 
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse("qSyncThreadStateSupported", response,
+-                                     false) == PacketResult::Success) {
++    if (SendPacketAndWaitForResponse("qSyncThreadStateSupported", response) ==
++        PacketResult::Success) {
+       if (response.IsOKResponse())
+         m_prepare_for_reg_writing_reply = eLazyBoolYes;
+     }
+@@ -327,8 +327,7 @@ void GDBRemoteCommunicationClient::GetRemoteQSupported() {
+   }
+ 
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(packet.GetString(), response,
+-                                   /*send_async=*/false) ==
++  if (SendPacketAndWaitForResponse(packet.GetString(), response) ==
+       PacketResult::Success) {
+     // Hang on to the qSupported packet, so that platforms can do custom
+     // configuration of the transport before attaching/launching the process.
+@@ -386,8 +385,8 @@ bool GDBRemoteCommunicationClient::GetThreadSuffixSupported() {
+   if (m_supports_thread_suffix == eLazyBoolCalculate) {
+     StringExtractorGDBRemote response;
+     m_supports_thread_suffix = eLazyBoolNo;
+-    if (SendPacketAndWaitForResponse("QThreadSuffixSupported", response,
+-                                     false) == PacketResult::Success) {
++    if (SendPacketAndWaitForResponse("QThreadSuffixSupported", response) ==
++        PacketResult::Success) {
+       if (response.IsOKResponse())
+         m_supports_thread_suffix = eLazyBoolYes;
+     }
+@@ -403,7 +402,7 @@ bool GDBRemoteCommunicationClient::GetVContSupported(char flavor) {
+     m_supports_vCont_C = eLazyBoolNo;
+     m_supports_vCont_s = eLazyBoolNo;
+     m_supports_vCont_S = eLazyBoolNo;
+-    if (SendPacketAndWaitForResponse("vCont?", response, false) ==
++    if (SendPacketAndWaitForResponse("vCont?", response) ==
+         PacketResult::Success) {
+       const char *response_cstr = response.GetStringRef().data();
+       if (::strstr(response_cstr, ";c"))
+@@ -455,9 +454,9 @@ bool GDBRemoteCommunicationClient::GetVContSupported(char flavor) {
+ 
+ GDBRemoteCommunication::PacketResult
+ GDBRemoteCommunicationClient::SendThreadSpecificPacketAndWaitForResponse(
+-    lldb::tid_t tid, StreamString &&payload, StringExtractorGDBRemote &response,
+-    bool send_async) {
+-  Lock lock(*this, send_async);
++    lldb::tid_t tid, StreamString &&payload,
++    StringExtractorGDBRemote &response) {
++  Lock lock(*this);
+   if (!lock) {
+     if (Log *log = ProcessGDBRemoteLog::GetLogIfAnyCategoryIsSet(
+             GDBR_LOG_PROCESS | GDBR_LOG_PACKETS))
+@@ -494,7 +493,7 @@ LazyBool GDBRemoteCommunicationClient::GetThreadPacketSupported(
+   payload.PutCString(packetStr);
+   StringExtractorGDBRemote response;
+   if (SendThreadSpecificPacketAndWaitForResponse(
+-          tid, std::move(payload), response, false) == PacketResult::Success &&
++          tid, std::move(payload), response) == PacketResult::Success &&
+       response.IsNormalResponse()) {
+     return eLazyBoolYes;
+   }
+@@ -508,7 +507,7 @@ StructuredData::ObjectSP GDBRemoteCommunicationClient::GetThreadsInfo() {
+   if (m_supports_jThreadsInfo) {
+     StringExtractorGDBRemote response;
+     response.SetResponseValidatorToJSON();
+-    if (SendPacketAndWaitForResponse("jThreadsInfo", response, false) ==
++    if (SendPacketAndWaitForResponse("jThreadsInfo", response) ==
+         PacketResult::Success) {
+       if (response.IsUnsupportedResponse()) {
+         m_supports_jThreadsInfo = false;
+@@ -525,7 +524,7 @@ bool GDBRemoteCommunicationClient::GetThreadExtendedInfoSupported() {
+   if (m_supports_jThreadExtendedInfo == eLazyBoolCalculate) {
+     StringExtractorGDBRemote response;
+     m_supports_jThreadExtendedInfo = eLazyBoolNo;
+-    if (SendPacketAndWaitForResponse("jThreadExtendedInfo:", response, false) ==
++    if (SendPacketAndWaitForResponse("jThreadExtendedInfo:", response) ==
+         PacketResult::Success) {
+       if (response.IsOKResponse()) {
+         m_supports_jThreadExtendedInfo = eLazyBoolYes;
+@@ -541,7 +540,7 @@ void GDBRemoteCommunicationClient::EnableErrorStringInPacket() {
+     // We try to enable error strings in remote packets but if we fail, we just
+     // work in the older way.
+     m_supports_error_string_reply = eLazyBoolNo;
+-    if (SendPacketAndWaitForResponse("QEnableErrorStrings", response, false) ==
++    if (SendPacketAndWaitForResponse("QEnableErrorStrings", response) ==
+         PacketResult::Success) {
+       if (response.IsOKResponse()) {
+         m_supports_error_string_reply = eLazyBoolYes;
+@@ -555,8 +554,7 @@ bool GDBRemoteCommunicationClient::GetLoadedDynamicLibrariesInfosSupported() {
+     StringExtractorGDBRemote response;
+     m_supports_jLoadedDynamicLibrariesInfos = eLazyBoolNo;
+     if (SendPacketAndWaitForResponse("jGetLoadedDynamicLibrariesInfos:",
+-                                     response,
+-                                     false) == PacketResult::Success) {
++                                     response) == PacketResult::Success) {
+       if (response.IsOKResponse()) {
+         m_supports_jLoadedDynamicLibrariesInfos = eLazyBoolYes;
+       }
+@@ -569,7 +567,7 @@ bool GDBRemoteCommunicationClient::GetSharedCacheInfoSupported() {
+   if (m_supports_jGetSharedCacheInfo == eLazyBoolCalculate) {
+     StringExtractorGDBRemote response;
+     m_supports_jGetSharedCacheInfo = eLazyBoolNo;
+-    if (SendPacketAndWaitForResponse("jGetSharedCacheInfo:", response, false) ==
++    if (SendPacketAndWaitForResponse("jGetSharedCacheInfo:", response) ==
+         PacketResult::Success) {
+       if (response.IsOKResponse()) {
+         m_supports_jGetSharedCacheInfo = eLazyBoolYes;
+@@ -595,7 +593,7 @@ DataBufferSP GDBRemoteCommunicationClient::ReadMemoryTags(lldb::addr_t addr,
+ 
+   Log *log = ProcessGDBRemoteLog::GetLogIfAnyCategoryIsSet(GDBR_LOG_MEMORY);
+ 
+-  if (SendPacketAndWaitForResponse(packet.GetString(), response, false) !=
++  if (SendPacketAndWaitForResponse(packet.GetString(), response) !=
+           PacketResult::Success ||
+       !response.IsNormalResponse()) {
+     LLDB_LOGF(log, "GDBRemoteCommunicationClient::%s: qMemTags packet failed",
+@@ -636,7 +634,7 @@ bool GDBRemoteCommunicationClient::GetxPacketSupported() {
+     m_supports_x = eLazyBoolNo;
+     char packet[256];
+     snprintf(packet, sizeof(packet), "x0,0");
+-    if (SendPacketAndWaitForResponse(packet, response, false) ==
++    if (SendPacketAndWaitForResponse(packet, response) ==
+         PacketResult::Success) {
+       if (response.IsOKResponse())
+         m_supports_x = eLazyBoolYes;
+@@ -648,7 +646,7 @@ bool GDBRemoteCommunicationClient::GetxPacketSupported() {
+ GDBRemoteCommunicationClient::PacketResult
+ GDBRemoteCommunicationClient::SendPacketsAndConcatenateResponses(
+     const char *payload_prefix, std::string &response_string) {
+-  Lock lock(*this, false);
++  Lock lock(*this);
+   if (!lock) {
+     Log *log(ProcessGDBRemoteLog::GetLogIfAnyCategoryIsSet(GDBR_LOG_PROCESS |
+                                                            GDBR_LOG_PACKETS));
+@@ -709,8 +707,7 @@ lldb::pid_t GDBRemoteCommunicationClient::GetCurrentProcessID(bool allow_lazy) {
+     // the thread id, which newer debugserver and lldb-gdbserver stubs return
+     // correctly.
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse("qC", response, false) ==
+-        PacketResult::Success) {
++    if (SendPacketAndWaitForResponse("qC", response) == PacketResult::Success) {
+       if (response.GetChar() == 'Q') {
+         if (response.GetChar() == 'C') {
+           m_curr_pid_run = m_curr_pid =
+@@ -746,7 +743,7 @@ lldb::pid_t GDBRemoteCommunicationClient::GetCurrentProcessID(bool allow_lazy) {
+ bool GDBRemoteCommunicationClient::GetLaunchSuccess(std::string &error_str) {
+   error_str.clear();
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse("qLaunchSuccess", response, false) ==
++  if (SendPacketAndWaitForResponse("qLaunchSuccess", response) ==
+       PacketResult::Success) {
+     if (response.IsOKResponse())
+       return true;
+@@ -800,7 +797,7 @@ int GDBRemoteCommunicationClient::SendArgumentsPacket(
+     }
+ 
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
++    if (SendPacketAndWaitForResponse(packet.GetString(), response) ==
+         PacketResult::Success) {
+       if (response.IsOKResponse())
+         return 0;
+@@ -850,7 +847,7 @@ int GDBRemoteCommunicationClient::SendEnvironmentPacket(
+       if (m_supports_QEnvironmentHexEncoded) {
+         packet.PutCString("QEnvironmentHexEncoded:");
+         packet.PutBytesAsRawHex8(name_equal_value, strlen(name_equal_value));
+-        if (SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
++        if (SendPacketAndWaitForResponse(packet.GetString(), response) ==
+             PacketResult::Success) {
+           if (response.IsOKResponse())
+             return 0;
+@@ -864,7 +861,7 @@ int GDBRemoteCommunicationClient::SendEnvironmentPacket(
+ 
+     } else if (m_supports_QEnvironment) {
+       packet.Printf("QEnvironment:%s", name_equal_value);
+-      if (SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
++      if (SendPacketAndWaitForResponse(packet.GetString(), response) ==
+           PacketResult::Success) {
+         if (response.IsOKResponse())
+           return 0;
+@@ -884,7 +881,7 @@ int GDBRemoteCommunicationClient::SendLaunchArchPacket(char const *arch) {
+     StreamString packet;
+     packet.Printf("QLaunchArch:%s", arch);
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
++    if (SendPacketAndWaitForResponse(packet.GetString(), response) ==
+         PacketResult::Success) {
+       if (response.IsOKResponse())
+         return 0;
+@@ -902,7 +899,7 @@ int GDBRemoteCommunicationClient::SendLaunchEventDataPacket(
+     StreamString packet;
+     packet.Printf("QSetProcessEvent:%s", data);
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
++    if (SendPacketAndWaitForResponse(packet.GetString(), response) ==
+         PacketResult::Success) {
+       if (response.IsOKResponse()) {
+         if (was_supported)
+@@ -987,7 +984,7 @@ bool GDBRemoteCommunicationClient::GetGDBServerVersion() {
+     m_qGDBServerVersion_is_valid = eLazyBoolNo;
+ 
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse("qGDBServerVersion", response, false) ==
++    if (SendPacketAndWaitForResponse("qGDBServerVersion", response) ==
+         PacketResult::Success) {
+       if (response.IsNormalResponse()) {
+         llvm::StringRef name, value;
+@@ -1079,7 +1076,7 @@ void GDBRemoteCommunicationClient::MaybeEnableCompression(
+   if (avail_type != CompressionType::None) {
+     StringExtractorGDBRemote response;
+     llvm::Twine packet = "QEnableCompression:type:" + avail_name + ";";
+-    if (SendPacketAndWaitForResponse(packet.str(), response, false) !=
++    if (SendPacketAndWaitForResponse(packet.str(), response) !=
+         PacketResult::Success)
+       return;
+ 
+@@ -1105,8 +1102,7 @@ uint32_t GDBRemoteCommunicationClient::GetGDBServerProgramVersion() {
+ 
+ bool GDBRemoteCommunicationClient::GetDefaultThreadId(lldb::tid_t &tid) {
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse("qC", response, false) !=
+-      PacketResult::Success)
++  if (SendPacketAndWaitForResponse("qC", response) != PacketResult::Success)
+     return false;
+ 
+   if (!response.IsNormalResponse())
+@@ -1156,7 +1152,7 @@ bool GDBRemoteCommunicationClient::GetHostInfo(bool force) {
+     ScopedTimeout timeout(*this, seconds(10));
+     m_qHostInfo_is_valid = eLazyBoolNo;
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse("qHostInfo", response, false) ==
++    if (SendPacketAndWaitForResponse("qHostInfo", response) ==
+         PacketResult::Success) {
+       if (response.IsNormalResponse()) {
+         llvm::StringRef name;
+@@ -1354,7 +1350,7 @@ int GDBRemoteCommunicationClient::SendAttach(
+         ::snprintf(packet, sizeof(packet), "vAttach;%" PRIx64, pid);
+     UNUSED_IF_ASSERT_DISABLED(packet_len);
+     assert(packet_len < (int)sizeof(packet));
+-    if (SendPacketAndWaitForResponse(packet, response, false) ==
++    if (SendPacketAndWaitForResponse(packet, response) ==
+         PacketResult::Success) {
+       if (response.IsErrorResponse())
+         return response.GetError();
+@@ -1370,7 +1366,7 @@ int GDBRemoteCommunicationClient::SendStdinNotification(const char *data,
+   packet.PutCString("I");
+   packet.PutBytesAsRawHex8(data, data_len);
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(packet.GetString(), response) ==
+       PacketResult::Success) {
+     return 0;
+   }
+@@ -1408,7 +1404,7 @@ addr_t GDBRemoteCommunicationClient::AllocateMemory(size_t size,
+     assert(packet_len < (int)sizeof(packet));
+     UNUSED_IF_ASSERT_DISABLED(packet_len);
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse(packet, response, false) ==
++    if (SendPacketAndWaitForResponse(packet, response) ==
+         PacketResult::Success) {
+       if (response.IsUnsupportedResponse())
+         m_supports_alloc_dealloc_memory = eLazyBoolNo;
+@@ -1430,7 +1426,7 @@ bool GDBRemoteCommunicationClient::DeallocateMemory(addr_t addr) {
+     assert(packet_len < (int)sizeof(packet));
+     UNUSED_IF_ASSERT_DISABLED(packet_len);
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse(packet, response, false) ==
++    if (SendPacketAndWaitForResponse(packet, response) ==
+         PacketResult::Success) {
+       if (response.IsUnsupportedResponse())
+         m_supports_alloc_dealloc_memory = eLazyBoolNo;
+@@ -1454,7 +1450,7 @@ Status GDBRemoteCommunicationClient::Detach(bool keep_stopped) {
+       assert(packet_len < (int)sizeof(packet));
+       UNUSED_IF_ASSERT_DISABLED(packet_len);
+       StringExtractorGDBRemote response;
+-      if (SendPacketAndWaitForResponse(packet, response, false) ==
++      if (SendPacketAndWaitForResponse(packet, response) ==
+               PacketResult::Success &&
+           response.IsOKResponse()) {
+         m_supports_detach_stay_stopped = eLazyBoolYes;
+@@ -1468,15 +1464,13 @@ Status GDBRemoteCommunicationClient::Detach(bool keep_stopped) {
+       return error;
+     } else {
+       StringExtractorGDBRemote response;
+-      PacketResult packet_result =
+-          SendPacketAndWaitForResponse("D1", response, false);
++      PacketResult packet_result = SendPacketAndWaitForResponse("D1", response);
+       if (packet_result != PacketResult::Success)
+         error.SetErrorString("Sending extended disconnect packet failed.");
+     }
+   } else {
+     StringExtractorGDBRemote response;
+-    PacketResult packet_result =
+-        SendPacketAndWaitForResponse("D", response, false);
++    PacketResult packet_result = SendPacketAndWaitForResponse("D", response);
+     if (packet_result != PacketResult::Success)
+       error.SetErrorString("Sending disconnect packet failed.");
+   }
+@@ -1496,7 +1490,7 @@ Status GDBRemoteCommunicationClient::GetMemoryRegionInfo(
+     assert(packet_len < (int)sizeof(packet));
+     UNUSED_IF_ASSERT_DISABLED(packet_len);
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse(packet, response, false) ==
++    if (SendPacketAndWaitForResponse(packet, response) ==
+             PacketResult::Success &&
+         response.GetResponseType() == StringExtractorGDBRemote::eResponse) {
+       llvm::StringRef name;
+@@ -1754,8 +1748,8 @@ Status GDBRemoteCommunicationClient::GetWatchpointSupportInfo(uint32_t &num) {
+   num = 0;
+   if (m_supports_watchpoint_support_info != eLazyBoolNo) {
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse("qWatchpointSupportInfo:", response,
+-                                     false) == PacketResult::Success) {
++    if (SendPacketAndWaitForResponse("qWatchpointSupportInfo:", response) ==
++        PacketResult::Success) {
+       m_supports_watchpoint_support_info = eLazyBoolYes;
+       llvm::StringRef name;
+       llvm::StringRef value;
+@@ -1823,7 +1817,7 @@ int GDBRemoteCommunicationClient::SetSTDIN(const FileSpec &file_spec) {
+     packet.PutStringAsRawHex8(path);
+ 
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
++    if (SendPacketAndWaitForResponse(packet.GetString(), response) ==
+         PacketResult::Success) {
+       if (response.IsOKResponse())
+         return 0;
+@@ -1843,7 +1837,7 @@ int GDBRemoteCommunicationClient::SetSTDOUT(const FileSpec &file_spec) {
+     packet.PutStringAsRawHex8(path);
+ 
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
++    if (SendPacketAndWaitForResponse(packet.GetString(), response) ==
+         PacketResult::Success) {
+       if (response.IsOKResponse())
+         return 0;
+@@ -1863,7 +1857,7 @@ int GDBRemoteCommunicationClient::SetSTDERR(const FileSpec &file_spec) {
+     packet.PutStringAsRawHex8(path);
+ 
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
++    if (SendPacketAndWaitForResponse(packet.GetString(), response) ==
+         PacketResult::Success) {
+       if (response.IsOKResponse())
+         return 0;
+@@ -1877,7 +1871,7 @@ int GDBRemoteCommunicationClient::SetSTDERR(const FileSpec &file_spec) {
+ 
+ bool GDBRemoteCommunicationClient::GetWorkingDir(FileSpec &working_dir) {
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse("qGetWorkingDir", response, false) ==
++  if (SendPacketAndWaitForResponse("qGetWorkingDir", response) ==
+       PacketResult::Success) {
+     if (response.IsUnsupportedResponse())
+       return false;
+@@ -1899,7 +1893,7 @@ int GDBRemoteCommunicationClient::SetWorkingDir(const FileSpec &working_dir) {
+     packet.PutStringAsRawHex8(path);
+ 
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
++    if (SendPacketAndWaitForResponse(packet.GetString(), response) ==
+         PacketResult::Success) {
+       if (response.IsOKResponse())
+         return 0;
+@@ -1918,8 +1912,7 @@ int GDBRemoteCommunicationClient::SetDisableASLR(bool enable) {
+   assert(packet_len < (int)sizeof(packet));
+   UNUSED_IF_ASSERT_DISABLED(packet_len);
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(packet, response, false) ==
+-      PacketResult::Success) {
++  if (SendPacketAndWaitForResponse(packet, response) == PacketResult::Success) {
+     if (response.IsOKResponse())
+       return 0;
+     uint8_t error = response.GetError();
+@@ -1936,8 +1929,7 @@ int GDBRemoteCommunicationClient::SetDetachOnError(bool enable) {
+   assert(packet_len < (int)sizeof(packet));
+   UNUSED_IF_ASSERT_DISABLED(packet_len);
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(packet, response, false) ==
+-      PacketResult::Success) {
++  if (SendPacketAndWaitForResponse(packet, response) == PacketResult::Success) {
+     if (response.IsOKResponse())
+       return 0;
+     uint8_t error = response.GetError();
+@@ -2055,7 +2047,7 @@ bool GDBRemoteCommunicationClient::GetProcessInfo(
+     assert(packet_len < (int)sizeof(packet));
+     UNUSED_IF_ASSERT_DISABLED(packet_len);
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse(packet, response, false) ==
++    if (SendPacketAndWaitForResponse(packet, response) ==
+         PacketResult::Success) {
+       return DecodeProcessInfoResponse(response, process_info);
+     } else {
+@@ -2080,7 +2072,7 @@ bool GDBRemoteCommunicationClient::GetCurrentProcessInfo(bool allow_lazy) {
+   GetHostInfo();
+ 
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse("qProcessInfo", response, false) ==
++  if (SendPacketAndWaitForResponse("qProcessInfo", response) ==
+       PacketResult::Success) {
+     if (response.IsNormalResponse()) {
+       llvm::StringRef name;
+@@ -2276,7 +2268,7 @@ uint32_t GDBRemoteCommunicationClient::FindProcesses(
+     // Increase timeout as the first qfProcessInfo packet takes a long time on
+     // Android. The value of 1min was arrived at empirically.
+     ScopedTimeout timeout(*this, minutes(1));
+-    if (SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
++    if (SendPacketAndWaitForResponse(packet.GetString(), response) ==
+         PacketResult::Success) {
+       do {
+         ProcessInstanceInfo process_info;
+@@ -2284,7 +2276,7 @@ uint32_t GDBRemoteCommunicationClient::FindProcesses(
+           break;
+         process_infos.push_back(process_info);
+         response = StringExtractorGDBRemote();
+-      } while (SendPacketAndWaitForResponse("qsProcessInfo", response, false) ==
++      } while (SendPacketAndWaitForResponse("qsProcessInfo", response) ==
+                PacketResult::Success);
+     } else {
+       m_supports_qfProcessInfo = false;
+@@ -2303,7 +2295,7 @@ bool GDBRemoteCommunicationClient::GetUserName(uint32_t uid,
+     assert(packet_len < (int)sizeof(packet));
+     UNUSED_IF_ASSERT_DISABLED(packet_len);
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse(packet, response, false) ==
++    if (SendPacketAndWaitForResponse(packet, response) ==
+         PacketResult::Success) {
+       if (response.IsNormalResponse()) {
+         // Make sure we parsed the right number of characters. The response is
+@@ -2330,7 +2322,7 @@ bool GDBRemoteCommunicationClient::GetGroupName(uint32_t gid,
+     assert(packet_len < (int)sizeof(packet));
+     UNUSED_IF_ASSERT_DISABLED(packet_len);
+     StringExtractorGDBRemote response;
+-    if (SendPacketAndWaitForResponse(packet, response, false) ==
++    if (SendPacketAndWaitForResponse(packet, response) ==
+         PacketResult::Success) {
+       if (response.IsNormalResponse()) {
+         // Make sure we parsed the right number of characters. The response is
+@@ -2358,8 +2350,7 @@ bool GDBRemoteCommunicationClient::SetNonStopMode(const bool enable) {
+ 
+   StringExtractorGDBRemote response;
+   // Send to target
+-  if (SendPacketAndWaitForResponse(packet, response, false) ==
+-      PacketResult::Success)
++  if (SendPacketAndWaitForResponse(packet, response) == PacketResult::Success)
+     if (response.IsOKResponse())
+       return true;
+ 
+@@ -2431,7 +2422,7 @@ void GDBRemoteCommunicationClient::TestPacketSpeed(const uint32_t num_packets,
+         for (i = 0; i < num_packets; ++i) {
+           const auto packet_start_time = steady_clock::now();
+           StringExtractorGDBRemote response;
+-          SendPacketAndWaitForResponse(packet.GetString(), response, false);
++          SendPacketAndWaitForResponse(packet.GetString(), response);
+           const auto packet_end_time = steady_clock::now();
+           packet_times.push_back(packet_end_time - packet_start_time);
+         }
+@@ -2485,7 +2476,7 @@ void GDBRemoteCommunicationClient::TestPacketSpeed(const uint32_t num_packets,
+         uint32_t packet_count = 0;
+         while (bytes_read < recv_amount) {
+           StringExtractorGDBRemote response;
+-          SendPacketAndWaitForResponse(packet.GetString(), response, false);
++          SendPacketAndWaitForResponse(packet.GetString(), response);
+           bytes_read += recv_size;
+           ++packet_count;
+         }
+@@ -2539,7 +2530,7 @@ bool GDBRemoteCommunicationClient::SendSpeedTestPacket(uint32_t send_size,
+   }
+ 
+   StringExtractorGDBRemote response;
+-  return SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
++  return SendPacketAndWaitForResponse(packet.GetString(), response) ==
+          PacketResult::Success;
+ }
+ 
+@@ -2569,7 +2560,7 @@ bool GDBRemoteCommunicationClient::LaunchGDBServer(
+   // give the process a few seconds to startup
+   ScopedTimeout timeout(*this, seconds(10));
+ 
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     llvm::StringRef name;
+     llvm::StringRef value;
+@@ -2593,7 +2584,7 @@ size_t GDBRemoteCommunicationClient::QueryGDBServer(
+   connection_urls.clear();
+ 
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse("qQueryGDBServer", response, false) !=
++  if (SendPacketAndWaitForResponse("qQueryGDBServer", response) !=
+       PacketResult::Success)
+     return 0;
+ 
+@@ -2632,7 +2623,7 @@ bool GDBRemoteCommunicationClient::KillSpawnedProcess(lldb::pid_t pid) {
+   stream.Printf("qKillSpawnedProcess:%" PRId64, pid);
+ 
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     if (response.IsOKResponse())
+       return true;
+@@ -2660,8 +2651,8 @@ GDBRemoteCommunicationClient::SendSetCurrentThreadPacket(uint64_t tid,
+     packet.PutHex64(tid);
+ 
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
+-      PacketResult::Success) {
++  if (SendPacketAndWaitForResponse(packet.GetString(), response) 
++      == PacketResult::Success) {
+     if (response.IsOKResponse())
+       return {{pid, tid}};
+ 
+@@ -2710,8 +2701,7 @@ bool GDBRemoteCommunicationClient::SetCurrentThreadForRun(uint64_t tid,
+ 
+ bool GDBRemoteCommunicationClient::GetStopReply(
+     StringExtractorGDBRemote &response) {
+-  if (SendPacketAndWaitForResponse("?", response, false) ==
+-      PacketResult::Success)
++  if (SendPacketAndWaitForResponse("?", response) == PacketResult::Success)
+     return response.IsNormalResponse();
+   return false;
+ }
+@@ -2724,7 +2714,7 @@ bool GDBRemoteCommunicationClient::GetThreadStopInfo(
+         ::snprintf(packet, sizeof(packet), "qThreadStopInfo%" PRIx64, tid);
+     assert(packet_len < (int)sizeof(packet));
+     UNUSED_IF_ASSERT_DISABLED(packet_len);
+-    if (SendPacketAndWaitForResponse(packet, response, false) ==
++    if (SendPacketAndWaitForResponse(packet, response) ==
+         PacketResult::Success) {
+       if (response.IsUnsupportedResponse())
+         m_supports_qThreadStopInfo = false;
+@@ -2740,7 +2730,8 @@ bool GDBRemoteCommunicationClient::GetThreadStopInfo(
+ }
+ 
+ uint8_t GDBRemoteCommunicationClient::SendGDBStoppointTypePacket(
+-    GDBStoppointType type, bool insert, addr_t addr, uint32_t length) {
++    GDBStoppointType type, bool insert, addr_t addr, uint32_t length,
++    std::chrono::seconds timeout) {
+   Log *log(GetLogIfAnyCategoriesSet(LIBLLDB_LOG_BREAKPOINTS));
+   LLDB_LOGF(log, "GDBRemoteCommunicationClient::%s() %s at addr = 0x%" PRIx64,
+             __FUNCTION__, insert ? "add" : "remove", addr);
+@@ -2761,7 +2752,7 @@ uint8_t GDBRemoteCommunicationClient::SendGDBStoppointTypePacket(
+   // or "" (unsupported)
+   response.SetResponseValidatorToOKErrorNotSupported();
+   // Try to send the breakpoint packet, and check that it was correctly sent
+-  if (SendPacketAndWaitForResponse(packet, response, true) ==
++  if (SendPacketAndWaitForResponse(packet, response, timeout) ==
+       PacketResult::Success) {
+     // Receive and OK packet when the breakpoint successfully placed
+     if (response.IsOKResponse())
+@@ -2804,7 +2795,7 @@ GDBRemoteCommunicationClient::GetCurrentProcessAndThreadIDs(
+     bool &sequence_mutex_unavailable) {
+   std::vector<std::pair<lldb::pid_t, lldb::tid_t>> ids;
+ 
+-  Lock lock(*this, false);
++  Lock lock(*this);
+   if (lock) {
+     sequence_mutex_unavailable = false;
+     StringExtractorGDBRemote response;
+@@ -2876,7 +2867,7 @@ size_t GDBRemoteCommunicationClient::GetCurrentThreadIDs(
+ 
+ lldb::addr_t GDBRemoteCommunicationClient::GetShlibInfoAddr() {
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse("qShlibInfoAddr", response, false) !=
++  if (SendPacketAndWaitForResponse("qShlibInfoAddr", response) !=
+           PacketResult::Success ||
+       !response.IsNormalResponse())
+     return LLDB_INVALID_ADDRESS;
+@@ -2909,7 +2900,7 @@ lldb_private::Status GDBRemoteCommunicationClient::RunShellCommand(
+     stream.PutStringAsRawHex8(path);
+   }
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     if (response.GetChar() != 'F')
+       return Status("malformed reply");
+@@ -2947,8 +2938,7 @@ Status GDBRemoteCommunicationClient::MakeDirectory(const FileSpec &file_spec,
+   llvm::StringRef packet = stream.GetString();
+   StringExtractorGDBRemote response;
+ 
+-  if (SendPacketAndWaitForResponse(packet, response, false) !=
+-      PacketResult::Success)
++  if (SendPacketAndWaitForResponse(packet, response) != PacketResult::Success)
+     return Status("failed to send '%s' packet", packet.str().c_str());
+ 
+   if (response.GetChar() != 'F')
+@@ -2969,8 +2959,7 @@ GDBRemoteCommunicationClient::SetFilePermissions(const FileSpec &file_spec,
+   llvm::StringRef packet = stream.GetString();
+   StringExtractorGDBRemote response;
+ 
+-  if (SendPacketAndWaitForResponse(packet, response, false) !=
+-      PacketResult::Success)
++  if (SendPacketAndWaitForResponse(packet, response) != PacketResult::Success)
+     return Status("failed to send '%s' packet", stream.GetData());
+ 
+   if (response.GetChar() != 'F')
+@@ -3012,7 +3001,7 @@ GDBRemoteCommunicationClient::OpenFile(const lldb_private::FileSpec &file_spec,
+   stream.PutChar(',');
+   stream.PutHex32(mode);
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     return ParseHostIOPacketResponse(response, UINT64_MAX, error);
+   }
+@@ -3024,7 +3013,7 @@ bool GDBRemoteCommunicationClient::CloseFile(lldb::user_id_t fd,
+   lldb_private::StreamString stream;
+   stream.Printf("vFile:close:%i", (int)fd);
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     return ParseHostIOPacketResponse(response, -1, error) == 0;
+   }
+@@ -3039,7 +3028,7 @@ lldb::user_id_t GDBRemoteCommunicationClient::GetFileSize(
+   stream.PutCString("vFile:size:");
+   stream.PutStringAsRawHex8(path);
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     if (response.GetChar() != 'F')
+       return UINT64_MAX;
+@@ -3057,7 +3046,7 @@ void GDBRemoteCommunicationClient::AutoCompleteDiskFileOrDirectory(
+   stream.PutChar(',');
+   stream.PutStringAsRawHex8(request.GetCursorArgumentPrefix());
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     StreamString strm;
+     char ch = response.GetChar();
+@@ -3083,7 +3072,7 @@ GDBRemoteCommunicationClient::GetFilePermissions(const FileSpec &file_spec,
+   stream.PutCString("vFile:mode:");
+   stream.PutStringAsRawHex8(path);
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     if (response.GetChar() != 'F') {
+       error.SetErrorStringWithFormat("invalid response to '%s' packet",
+@@ -3118,7 +3107,7 @@ uint64_t GDBRemoteCommunicationClient::ReadFile(lldb::user_id_t fd,
+   stream.Printf("vFile:pread:%i,%" PRId64 ",%" PRId64, (int)fd, dst_len,
+                 offset);
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     if (response.GetChar() != 'F')
+       return 0;
+@@ -3152,7 +3141,7 @@ uint64_t GDBRemoteCommunicationClient::WriteFile(lldb::user_id_t fd,
+   stream.Printf("vFile:pwrite:%i,%" PRId64 ",", (int)fd, offset);
+   stream.PutEscapedBytes(src, src_len);
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     if (response.GetChar() != 'F') {
+       error.SetErrorStringWithFormat("write file failed");
+@@ -3187,7 +3176,7 @@ Status GDBRemoteCommunicationClient::CreateSymlink(const FileSpec &src,
+   stream.PutChar(',');
+   stream.PutStringAsRawHex8(src_path);
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     if (response.GetChar() == 'F') {
+       uint32_t result = response.GetU32(UINT32_MAX);
+@@ -3218,7 +3207,7 @@ Status GDBRemoteCommunicationClient::Unlink(const FileSpec &file_spec) {
+   // so we follow suit here
+   stream.PutStringAsRawHex8(path);
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     if (response.GetChar() == 'F') {
+       uint32_t result = response.GetU32(UINT32_MAX);
+@@ -3248,7 +3237,7 @@ bool GDBRemoteCommunicationClient::GetFileExists(
+   stream.PutCString("vFile:exists:");
+   stream.PutStringAsRawHex8(path);
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     if (response.GetChar() != 'F')
+       return false;
+@@ -3267,7 +3256,7 @@ bool GDBRemoteCommunicationClient::CalculateMD5(
+   stream.PutCString("vFile:MD5:");
+   stream.PutStringAsRawHex8(path);
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(stream.GetString(), response, false) ==
++  if (SendPacketAndWaitForResponse(stream.GetString(), response) ==
+       PacketResult::Success) {
+     if (response.GetChar() != 'F')
+       return false;
+@@ -3314,7 +3303,7 @@ DataBufferSP GDBRemoteCommunicationClient::ReadRegister(lldb::tid_t tid,
+   payload.Printf("p%x", reg);
+   StringExtractorGDBRemote response;
+   if (SendThreadSpecificPacketAndWaitForResponse(
+-          tid, std::move(payload), response, false) != PacketResult::Success ||
++          tid, std::move(payload), response) != PacketResult::Success ||
+       !response.IsNormalResponse())
+     return nullptr;
+ 
+@@ -3329,7 +3318,7 @@ DataBufferSP GDBRemoteCommunicationClient::ReadAllRegisters(lldb::tid_t tid) {
+   payload.PutChar('g');
+   StringExtractorGDBRemote response;
+   if (SendThreadSpecificPacketAndWaitForResponse(
+-          tid, std::move(payload), response, false) != PacketResult::Success ||
++          tid, std::move(payload), response) != PacketResult::Success ||
+       !response.IsNormalResponse())
+     return nullptr;
+ 
+@@ -3348,9 +3337,8 @@ bool GDBRemoteCommunicationClient::WriteRegister(lldb::tid_t tid,
+                             endian::InlHostByteOrder(),
+                             endian::InlHostByteOrder());
+   StringExtractorGDBRemote response;
+-  return SendThreadSpecificPacketAndWaitForResponse(tid, std::move(payload),
+-                                                    response, false) ==
+-             PacketResult::Success &&
++  return SendThreadSpecificPacketAndWaitForResponse(
++             tid, std::move(payload), response) == PacketResult::Success &&
+          response.IsOKResponse();
+ }
+ 
+@@ -3362,9 +3350,8 @@ bool GDBRemoteCommunicationClient::WriteAllRegisters(
+                             endian::InlHostByteOrder(),
+                             endian::InlHostByteOrder());
+   StringExtractorGDBRemote response;
+-  return SendThreadSpecificPacketAndWaitForResponse(tid, std::move(payload),
+-                                                    response, false) ==
+-             PacketResult::Success &&
++  return SendThreadSpecificPacketAndWaitForResponse(
++             tid, std::move(payload), response) == PacketResult::Success &&
+          response.IsOKResponse();
+ }
+ 
+@@ -3379,7 +3366,7 @@ bool GDBRemoteCommunicationClient::SaveRegisterState(lldb::tid_t tid,
+   payload.PutCString("QSaveRegisterState");
+   StringExtractorGDBRemote response;
+   if (SendThreadSpecificPacketAndWaitForResponse(
+-          tid, std::move(payload), response, false) != PacketResult::Success)
++          tid, std::move(payload), response) != PacketResult::Success)
+     return false;
+ 
+   if (response.IsUnsupportedResponse())
+@@ -3405,7 +3392,7 @@ bool GDBRemoteCommunicationClient::RestoreRegisterState(lldb::tid_t tid,
+   payload.Printf("QRestoreRegisterState:%u", save_id);
+   StringExtractorGDBRemote response;
+   if (SendThreadSpecificPacketAndWaitForResponse(
+-          tid, std::move(payload), response, false) != PacketResult::Success)
++          tid, std::move(payload), response) != PacketResult::Success)
+     return false;
+ 
+   if (response.IsOKResponse())
+@@ -3423,13 +3410,13 @@ bool GDBRemoteCommunicationClient::SyncThreadState(lldb::tid_t tid) {
+   StreamString packet;
+   StringExtractorGDBRemote response;
+   packet.Printf("QSyncThreadState:%4.4" PRIx64 ";", tid);
+-  return SendPacketAndWaitForResponse(packet.GetString(), response, false) ==
++  return SendPacketAndWaitForResponse(packet.GetString(), response) ==
+              GDBRemoteCommunication::PacketResult::Success &&
+          response.IsOKResponse();
+ }
+ 
+ llvm::Expected<TraceSupportedResponse>
+-GDBRemoteCommunicationClient::SendTraceSupported() {
++GDBRemoteCommunicationClient::SendTraceSupported(std::chrono::seconds timeout) {
+   Log *log(ProcessGDBRemoteLog::GetLogIfAllCategoriesSet(GDBR_LOG_PROCESS));
+ 
+   StreamGDBRemote escaped_packet;
+@@ -3437,7 +3424,7 @@ GDBRemoteCommunicationClient::SendTraceSupported() {
+ 
+   StringExtractorGDBRemote response;
+   if (SendPacketAndWaitForResponse(escaped_packet.GetString(), response,
+-                                   true) ==
++                                   timeout) ==
+       GDBRemoteCommunication::PacketResult::Success) {
+     if (response.IsErrorResponse())
+       return response.GetStatus().ToError();
+@@ -3454,7 +3441,8 @@ GDBRemoteCommunicationClient::SendTraceSupported() {
+ }
+ 
+ llvm::Error
+-GDBRemoteCommunicationClient::SendTraceStop(const TraceStopRequest &request) {
++GDBRemoteCommunicationClient::SendTraceStop(const TraceStopRequest &request,
++                                            std::chrono::seconds timeout) {
+   Log *log(ProcessGDBRemoteLog::GetLogIfAllCategoriesSet(GDBR_LOG_PROCESS));
+ 
+   StreamGDBRemote escaped_packet;
+@@ -3469,7 +3457,7 @@ GDBRemoteCommunicationClient::SendTraceStop(const TraceStopRequest &request) {
+ 
+   StringExtractorGDBRemote response;
+   if (SendPacketAndWaitForResponse(escaped_packet.GetString(), response,
+-                                   true) ==
++                                   timeout) ==
+       GDBRemoteCommunication::PacketResult::Success) {
+     if (response.IsErrorResponse())
+       return response.GetStatus().ToError();
+@@ -3488,7 +3476,8 @@ GDBRemoteCommunicationClient::SendTraceStop(const TraceStopRequest &request) {
+ }
+ 
+ llvm::Error
+-GDBRemoteCommunicationClient::SendTraceStart(const llvm::json::Value &params) {
++GDBRemoteCommunicationClient::SendTraceStart(const llvm::json::Value &params,
++                                             std::chrono::seconds timeout) {
+   Log *log(ProcessGDBRemoteLog::GetLogIfAllCategoriesSet(GDBR_LOG_PROCESS));
+ 
+   StreamGDBRemote escaped_packet;
+@@ -3503,7 +3492,7 @@ GDBRemoteCommunicationClient::SendTraceStart(const llvm::json::Value &params) {
+ 
+   StringExtractorGDBRemote response;
+   if (SendPacketAndWaitForResponse(escaped_packet.GetString(), response,
+-                                   true) ==
++                                   timeout) ==
+       GDBRemoteCommunication::PacketResult::Success) {
+     if (response.IsErrorResponse())
+       return response.GetStatus().ToError();
+@@ -3522,7 +3511,8 @@ GDBRemoteCommunicationClient::SendTraceStart(const llvm::json::Value &params) {
+ }
+ 
+ llvm::Expected<std::string>
+-GDBRemoteCommunicationClient::SendTraceGetState(llvm::StringRef type) {
++GDBRemoteCommunicationClient::SendTraceGetState(llvm::StringRef type,
++                                                std::chrono::seconds timeout) {
+   Log *log(ProcessGDBRemoteLog::GetLogIfAllCategoriesSet(GDBR_LOG_PROCESS));
+ 
+   StreamGDBRemote escaped_packet;
+@@ -3537,7 +3527,7 @@ GDBRemoteCommunicationClient::SendTraceGetState(llvm::StringRef type) {
+ 
+   StringExtractorGDBRemote response;
+   if (SendPacketAndWaitForResponse(escaped_packet.GetString(), response,
+-                                   true) ==
++                                   timeout) ==
+       GDBRemoteCommunication::PacketResult::Success) {
+     if (response.IsErrorResponse())
+       return response.GetStatus().ToError();
+@@ -3556,7 +3546,7 @@ GDBRemoteCommunicationClient::SendTraceGetState(llvm::StringRef type) {
+ 
+ llvm::Expected<std::vector<uint8_t>>
+ GDBRemoteCommunicationClient::SendTraceGetBinaryData(
+-    const TraceGetBinaryDataRequest &request) {
++    const TraceGetBinaryDataRequest &request, std::chrono::seconds timeout) {
+   Log *log(ProcessGDBRemoteLog::GetLogIfAllCategoriesSet(GDBR_LOG_PROCESS));
+ 
+   StreamGDBRemote escaped_packet;
+@@ -3571,7 +3561,7 @@ GDBRemoteCommunicationClient::SendTraceGetBinaryData(
+ 
+   StringExtractorGDBRemote response;
+   if (SendPacketAndWaitForResponse(escaped_packet.GetString(), response,
+-                                   true) ==
++                                   timeout) ==
+       GDBRemoteCommunication::PacketResult::Success) {
+     if (response.IsErrorResponse())
+       return response.GetStatus().ToError();
+@@ -3591,8 +3581,8 @@ GDBRemoteCommunicationClient::SendTraceGetBinaryData(
+ 
+ llvm::Optional<QOffsets> GDBRemoteCommunicationClient::GetQOffsets() {
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(
+-          "qOffsets", response, /*send_async=*/false) != PacketResult::Success)
++  if (SendPacketAndWaitForResponse("qOffsets", response) !=
++      PacketResult::Success)
+     return llvm::None;
+   if (!response.IsNormalResponse())
+     return llvm::None;
+@@ -3647,7 +3637,7 @@ bool GDBRemoteCommunicationClient::GetModuleInfo(
+   packet.PutStringAsRawHex8(triple);
+ 
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(packet.GetString(), response, false) !=
++  if (SendPacketAndWaitForResponse(packet.GetString(), response) !=
+       PacketResult::Success)
+     return false;
+ 
+@@ -3754,7 +3744,7 @@ GDBRemoteCommunicationClient::GetModulesInfo(
+   ScopedTimeout timeout(*this, std::chrono::seconds(10));
+ 
+   StringExtractorGDBRemote response;
+-  if (SendPacketAndWaitForResponse(payload.GetString(), response, false) !=
++  if (SendPacketAndWaitForResponse(payload.GetString(), response) !=
+           PacketResult::Success ||
+       response.IsErrorResponse())
+     return llvm::None;
+@@ -3813,7 +3803,7 @@ bool GDBRemoteCommunicationClient::ReadExtFeature(
+            << "," << std::hex << size;
+ 
+     GDBRemoteCommunication::PacketResult res =
+-        SendPacketAndWaitForResponse(packet.str(), chunk, false);
++        SendPacketAndWaitForResponse(packet.str(), chunk);
+ 
+     if (res != GDBRemoteCommunication::PacketResult::Success) {
+       err.SetErrorString("Error sending $qXfer packet");
+@@ -3902,7 +3892,7 @@ void GDBRemoteCommunicationClient::ServeSymbolLookups(
+   bool first_qsymbol_query = true;
+ 
+   if (m_supports_qSymbol && !m_qSymbol_requests_done) {
+-    Lock lock(*this, false);
++    Lock lock(*this);
+     if (lock) {
+       StreamString packet;
+       packet.PutCString("qSymbol::");
+@@ -4030,9 +4020,8 @@ GDBRemoteCommunicationClient::GetSupportedStructuredDataPlugins() {
+ 
+     // Poll it now.
+     StringExtractorGDBRemote response;
+-    const bool send_async = false;
+-    if (SendPacketAndWaitForResponse("qStructuredDataPlugins", response,
+-                                     send_async) == PacketResult::Success) {
++    if (SendPacketAndWaitForResponse("qStructuredDataPlugins", response) ==
++        PacketResult::Success) {
+       m_supported_async_json_packets_sp =
+           StructuredData::ParseJSON(std::string(response.GetStringRef()));
+       if (m_supported_async_json_packets_sp &&
+@@ -4076,7 +4065,7 @@ Status GDBRemoteCommunicationClient::SendSignalsToIgnore(
+   std::string packet = formatv("QPassSignals:{0:$[;]@(x-2)}", range).str();
+ 
+   StringExtractorGDBRemote response;
+-  auto send_status = SendPacketAndWaitForResponse(packet, response, false);
++  auto send_status = SendPacketAndWaitForResponse(packet, response);
+ 
+   if (send_status != GDBRemoteCommunication::PacketResult::Success)
+     return Status("Sending QPassSignals packet failed");
+@@ -4115,10 +4104,8 @@ Status GDBRemoteCommunicationClient::ConfigureRemoteStructuredData(
+   stream.Flush();
+ 
+   // Send the packet.
+-  const bool send_async = false;
+   StringExtractorGDBRemote response;
+-  auto result =
+-      SendPacketAndWaitForResponse(stream.GetString(), response, send_async);
++  auto result = SendPacketAndWaitForResponse(stream.GetString(), response);
+   if (result == PacketResult::Success) {
+     // We failed if the config result comes back other than OK.
+     if (strcmp(response.GetStringRef().data(), "OK") == 0) {
+diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
+index 4fe05a8a4e54..48e3e5e41fde 100644
+--- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
++++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
+@@ -327,7 +327,8 @@ public:
+       GDBStoppointType type, // Type of breakpoint or watchpoint
+       bool insert,           // Insert or remove?
+       lldb::addr_t addr,     // Address of breakpoint or watchpoint
+-      uint32_t length);      // Byte Size of breakpoint or watchpoint
++      uint32_t length,       // Byte Size of breakpoint or watchpoint
++      std::chrono::seconds interrupt_timeout); // Time to wait for an interrupt
+ 
+   bool SetNonStopMode(const bool enable);
+ 
+@@ -526,16 +527,22 @@ public:
+   ConfigureRemoteStructuredData(ConstString type_name,
+                                 const StructuredData::ObjectSP &config_sp);
+ 
+-  llvm::Expected<TraceSupportedResponse> SendTraceSupported();
++  llvm::Expected<TraceSupportedResponse>
++  SendTraceSupported(std::chrono::seconds interrupt_timeout);
+ 
+-  llvm::Error SendTraceStart(const llvm::json::Value &request);
++  llvm::Error SendTraceStart(const llvm::json::Value &request,
++                             std::chrono::seconds interrupt_timeout);
+ 
+-  llvm::Error SendTraceStop(const TraceStopRequest &request);
++  llvm::Error SendTraceStop(const TraceStopRequest &request,
++                            std::chrono::seconds interrupt_timeout);
+ 
+-  llvm::Expected<std::string> SendTraceGetState(llvm::StringRef type);
++  llvm::Expected<std::string>
++  SendTraceGetState(llvm::StringRef type,
++                    std::chrono::seconds interrupt_timeout);
+ 
+   llvm::Expected<std::vector<uint8_t>>
+-  SendTraceGetBinaryData(const TraceGetBinaryDataRequest &request);
++  SendTraceGetBinaryData(const TraceGetBinaryDataRequest &request,
++                         std::chrono::seconds interrupt_timeout);
+ 
+ protected:
+   LazyBool m_supports_not_sending_acks = eLazyBoolCalculate;
+@@ -636,7 +643,7 @@ protected:
+ 
+   PacketResult SendThreadSpecificPacketAndWaitForResponse(
+       lldb::tid_t tid, StreamString &&payload,
+-      StringExtractorGDBRemote &response, bool send_async);
++      StringExtractorGDBRemote &response);
+ 
+   Status SendGetTraceDataPacket(StreamGDBRemote &packet, lldb::user_id_t uid,
+                                 lldb::tid_t thread_id,
+diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
+index d1ae85a14267..65cf9fb2a834 100644
+--- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
++++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
+@@ -364,7 +364,7 @@ bool GDBRemoteRegisterContext::WriteRegisterBytes(const RegisterInfo *reg_info,
+                                reg_info->byte_size,        // dst length
+                                m_reg_data.GetByteOrder())) // dst byte order
+   {
+-    GDBRemoteClientBase::Lock lock(gdb_comm, false);
++    GDBRemoteClientBase::Lock lock(gdb_comm);
+     if (lock) {
+       if (m_write_all_at_once) {
+         // Invalidate all register values
+@@ -508,7 +508,7 @@ bool GDBRemoteRegisterContext::ReadAllRegisterValues(
+   const bool use_g_packet =
+       !gdb_comm.AvoidGPackets((ProcessGDBRemote *)process);
+ 
+-  GDBRemoteClientBase::Lock lock(gdb_comm, false);
++  GDBRemoteClientBase::Lock lock(gdb_comm);
+   if (lock) {
+     if (gdb_comm.SyncThreadState(m_thread.GetProtocolID()))
+       InvalidateAllRegisters();
+@@ -574,7 +574,7 @@ bool GDBRemoteRegisterContext::WriteAllRegisterValues(
+   const bool use_g_packet =
+       !gdb_comm.AvoidGPackets((ProcessGDBRemote *)process);
+ 
+-  GDBRemoteClientBase::Lock lock(gdb_comm, false);
++  GDBRemoteClientBase::Lock lock(gdb_comm);
+   if (lock) {
+     // The data_sp contains the G response packet.
+     if (use_g_packet) {
+diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
+index 0bcfcb5f6d8f..4844d73e5310 100644
+--- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
++++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
+@@ -465,7 +465,7 @@ void ProcessGDBRemote::BuildDynamicRegisterInfo(bool force) {
+     assert(packet_len < (int)sizeof(packet));
+     UNUSED_IF_ASSERT_DISABLED(packet_len);
+     StringExtractorGDBRemote response;
+-    if (m_gdb_comm.SendPacketAndWaitForResponse(packet, response, false) ==
++    if (m_gdb_comm.SendPacketAndWaitForResponse(packet, response) ==
+         GDBRemoteCommunication::PacketResult::Success) {
+       response_type = response.GetResponseType();
+       if (response_type == StringExtractorGDBRemote::eResponse) {
+@@ -1015,7 +1015,7 @@ Status ProcessGDBRemote::ConnectToDebugserver(llvm::StringRef connect_url) {
+   for (size_t idx = 0; idx < num_cmds; idx++) {
+     StringExtractorGDBRemote response;
+     m_gdb_comm.SendPacketAndWaitForResponse(
+-        GetExtraStartupCommands().GetArgumentAtIndex(idx), response, false);
++        GetExtraStartupCommands().GetArgumentAtIndex(idx), response);
+   }
+   return error;
+ }
+@@ -1210,25 +1210,25 @@ Status ProcessGDBRemote::DoAttachToProcessWithName(
+ }
+ 
+ llvm::Expected<TraceSupportedResponse> ProcessGDBRemote::TraceSupported() {
+-  return m_gdb_comm.SendTraceSupported();
++  return m_gdb_comm.SendTraceSupported(GetInterruptTimeout());
+ }
+ 
+ llvm::Error ProcessGDBRemote::TraceStop(const TraceStopRequest &request) {
+-  return m_gdb_comm.SendTraceStop(request);
++  return m_gdb_comm.SendTraceStop(request, GetInterruptTimeout());
+ }
+ 
+ llvm::Error ProcessGDBRemote::TraceStart(const llvm::json::Value &request) {
+-  return m_gdb_comm.SendTraceStart(request);
++  return m_gdb_comm.SendTraceStart(request, GetInterruptTimeout());
+ }
+ 
+ llvm::Expected<std::string>
+ ProcessGDBRemote::TraceGetState(llvm::StringRef type) {
+-  return m_gdb_comm.SendTraceGetState(type);
++  return m_gdb_comm.SendTraceGetState(type, GetInterruptTimeout());
+ }
+ 
+ llvm::Expected<std::vector<uint8_t>>
+ ProcessGDBRemote::TraceGetBinaryData(const TraceGetBinaryDataRequest &request) {
+-  return m_gdb_comm.SendTraceGetBinaryData(request);
++  return m_gdb_comm.SendTraceGetBinaryData(request, GetInterruptTimeout());
+ }
+ 
+ void ProcessGDBRemote::DidExit() {
+@@ -1473,7 +1473,7 @@ void ProcessGDBRemote::HandleStopReplySequence() {
+   while (true) {
+     // Send vStopped
+     StringExtractorGDBRemote response;
+-    m_gdb_comm.SendPacketAndWaitForResponse("vStopped", response, false);
++    m_gdb_comm.SendPacketAndWaitForResponse("vStopped", response);
+ 
+     // OK represents end of signal list
+     if (response.IsOKResponse())
+@@ -2414,7 +2414,7 @@ Status ProcessGDBRemote::DoHalt(bool &caused_stop) {
+     // file handle and debugserver will go away, and we can be done...
+     m_gdb_comm.Disconnect();
+   } else
+-    caused_stop = m_gdb_comm.Interrupt();
++    caused_stop = m_gdb_comm.Interrupt(GetInterruptTimeout());
+   return error;
+ }
+ 
+@@ -2563,11 +2563,11 @@ Status ProcessGDBRemote::DoDestroy() {
+   if (m_gdb_comm.IsConnected()) {
+     if (m_public_state.GetValue() != eStateAttaching) {
+       StringExtractorGDBRemote response;
+-      bool send_async = true;
+       GDBRemoteCommunication::ScopedTimeout(m_gdb_comm,
+                                             std::chrono::seconds(3));
+ 
+-      if (m_gdb_comm.SendPacketAndWaitForResponse("k", response, send_async) ==
++      if (m_gdb_comm.SendPacketAndWaitForResponse("k", response,
++                                                  GetInterruptTimeout()) ==
+           GDBRemoteCommunication::PacketResult::Success) {
+         char packet_cmd = response.GetChar(0);
+ 
+@@ -2731,7 +2731,8 @@ size_t ProcessGDBRemote::DoReadMemory(addr_t addr, void *buf, size_t size,
+   assert(packet_len + 1 < (int)sizeof(packet));
+   UNUSED_IF_ASSERT_DISABLED(packet_len);
+   StringExtractorGDBRemote response;
+-  if (m_gdb_comm.SendPacketAndWaitForResponse(packet, response, true) ==
++  if (m_gdb_comm.SendPacketAndWaitForResponse(packet, response,
++                                              GetInterruptTimeout()) ==
+       GDBRemoteCommunication::PacketResult::Success) {
+     if (response.IsNormalResponse()) {
+       error.Clear();
+@@ -2880,7 +2881,7 @@ Status ProcessGDBRemote::FlashErase(lldb::addr_t addr, size_t size) {
+ 
+   StringExtractorGDBRemote response;
+   if (m_gdb_comm.SendPacketAndWaitForResponse(packet.GetString(), response,
+-                                              true) ==
++                                              GetInterruptTimeout()) ==
+       GDBRemoteCommunication::PacketResult::Success) {
+     if (response.IsOKResponse()) {
+       m_erased_flash_ranges.Insert(range, true);
+@@ -2909,7 +2910,8 @@ Status ProcessGDBRemote::FlashDone() {
+   if (m_erased_flash_ranges.IsEmpty())
+     return status;
+   StringExtractorGDBRemote response;
+-  if (m_gdb_comm.SendPacketAndWaitForResponse("vFlashDone", response, true) ==
++  if (m_gdb_comm.SendPacketAndWaitForResponse("vFlashDone", response,
++                                              GetInterruptTimeout()) ==
+       GDBRemoteCommunication::PacketResult::Success) {
+     if (response.IsOKResponse()) {
+       m_erased_flash_ranges.Clear();
+@@ -2970,7 +2972,7 @@ size_t ProcessGDBRemote::DoWriteMemory(addr_t addr, const void *buf,
+   }
+   StringExtractorGDBRemote response;
+   if (m_gdb_comm.SendPacketAndWaitForResponse(packet.GetString(), response,
+-                                              true) ==
++                                              GetInterruptTimeout()) ==
+       GDBRemoteCommunication::PacketResult::Success) {
+     if (response.IsOKResponse()) {
+       error.Clear();
+@@ -3146,7 +3148,7 @@ Status ProcessGDBRemote::EnableBreakpointSite(BreakpointSite *bp_site) {
+       (!bp_site->HardwareRequired())) {
+     // Try to send off a software breakpoint packet ($Z0)
+     uint8_t error_no = m_gdb_comm.SendGDBStoppointTypePacket(
+-        eBreakpointSoftware, true, addr, bp_op_size);
++        eBreakpointSoftware, true, addr, bp_op_size, GetInterruptTimeout());
+     if (error_no == 0) {
+       // The breakpoint was placed successfully
+       bp_site->SetEnabled(true);
+@@ -3186,7 +3188,7 @@ Status ProcessGDBRemote::EnableBreakpointSite(BreakpointSite *bp_site) {
+   if (m_gdb_comm.SupportsGDBStoppointPacket(eBreakpointHardware)) {
+     // Try to send off a hardware breakpoint packet ($Z1)
+     uint8_t error_no = m_gdb_comm.SendGDBStoppointTypePacket(
+-        eBreakpointHardware, true, addr, bp_op_size);
++        eBreakpointHardware, true, addr, bp_op_size, GetInterruptTimeout());
+     if (error_no == 0) {
+       // The breakpoint was placed successfully
+       bp_site->SetEnabled(true);
+@@ -3250,13 +3252,15 @@ Status ProcessGDBRemote::DisableBreakpointSite(BreakpointSite *bp_site) {
+ 
+     case BreakpointSite::eHardware:
+       if (m_gdb_comm.SendGDBStoppointTypePacket(eBreakpointHardware, false,
+-                                                addr, bp_op_size))
++                                                addr, bp_op_size,
++                                                GetInterruptTimeout()))
+         error.SetErrorToGenericError();
+       break;
+ 
+     case BreakpointSite::eExternal: {
+       if (m_gdb_comm.SendGDBStoppointTypePacket(eBreakpointSoftware, false,
+-                                                addr, bp_op_size))
++                                                addr, bp_op_size,
++                                                GetInterruptTimeout()))
+         error.SetErrorToGenericError();
+     } break;
+     }
+@@ -3312,7 +3316,8 @@ Status ProcessGDBRemote::EnableWatchpoint(Watchpoint *wp, bool notify) {
+     // Pass down an appropriate z/Z packet...
+     if (m_gdb_comm.SupportsGDBStoppointPacket(type)) {
+       if (m_gdb_comm.SendGDBStoppointTypePacket(type, true, addr,
+-                                                wp->GetByteSize()) == 0) {
++                                                wp->GetByteSize(),
++                                                GetInterruptTimeout()) == 0) {
+         wp->SetEnabled(true, notify);
+         return error;
+       } else
+@@ -3358,7 +3363,8 @@ Status ProcessGDBRemote::DisableWatchpoint(Watchpoint *wp, bool notify) {
+       GDBStoppointType type = GetGDBStoppointType(wp);
+       // Pass down an appropriate z/Z packet...
+       if (m_gdb_comm.SendGDBStoppointTypePacket(type, false, addr,
+-                                                wp->GetByteSize()) == 0) {
++                                                wp->GetByteSize(),
++                                                GetInterruptTimeout()) == 0) {
+         wp->SetEnabled(false, notify);
+         return error;
+       } else
+@@ -3383,7 +3389,7 @@ Status ProcessGDBRemote::DoSignal(int signo) {
+   Log *log(ProcessGDBRemoteLog::GetLogIfAllCategoriesSet(GDBR_LOG_PROCESS));
+   LLDB_LOGF(log, "ProcessGDBRemote::DoSignal (signal = %d)", signo);
+ 
+-  if (!m_gdb_comm.SendAsyncSignal(signo))
++  if (!m_gdb_comm.SendAsyncSignal(signo, GetInterruptTimeout()))
+     error.SetErrorStringWithFormat("failed to send signal %i", signo);
+   return error;
+ }
+@@ -3761,7 +3767,7 @@ thread_result_t ProcessGDBRemote::AsyncThread(void *arg) {
+               // send the vCont packet
+               if (!process->GetGDBRemote().SendvContPacket(
+                       llvm::StringRef(continue_cstr, continue_cstr_len),
+-                      response)) {
++                      process->GetInterruptTimeout(), response)) {
+                 // Something went wrong
+                 done = true;
+                 break;
+@@ -3773,6 +3779,7 @@ thread_result_t ProcessGDBRemote::AsyncThread(void *arg) {
+                   process->GetGDBRemote().SendContinuePacketAndWaitForResponse(
+                       *process, *process->GetUnixSignals(),
+                       llvm::StringRef(continue_cstr, continue_cstr_len),
++                      process->GetInterruptTimeout(),
+                       response);
+ 
+               // We need to immediately clear the thread ID list so we are sure
+@@ -4067,8 +4074,7 @@ ProcessGDBRemote::GetExtendedInfoForThread(lldb::tid_t tid) {
+ 
+     StringExtractorGDBRemote response;
+     response.SetResponseValidatorToJSON();
+-    if (m_gdb_comm.SendPacketAndWaitForResponse(packet.GetString(), response,
+-                                                false) ==
++    if (m_gdb_comm.SendPacketAndWaitForResponse(packet.GetString(), response) ==
+         GDBRemoteCommunication::PacketResult::Success) {
+       StringExtractorGDBRemote::ResponseType response_type =
+           response.GetResponseType();
+@@ -4140,8 +4146,7 @@ ProcessGDBRemote::GetLoadedDynamicLibrariesInfos_sender(
+ 
+     StringExtractorGDBRemote response;
+     response.SetResponseValidatorToJSON();
+-    if (m_gdb_comm.SendPacketAndWaitForResponse(packet.GetString(), response,
+-                                                false) ==
++    if (m_gdb_comm.SendPacketAndWaitForResponse(packet.GetString(), response) ==
+         GDBRemoteCommunication::PacketResult::Success) {
+       StringExtractorGDBRemote::ResponseType response_type =
+           response.GetResponseType();
+@@ -4174,8 +4179,7 @@ StructuredData::ObjectSP ProcessGDBRemote::GetSharedCacheInfo() {
+ 
+     StringExtractorGDBRemote response;
+     response.SetResponseValidatorToJSON();
+-    if (m_gdb_comm.SendPacketAndWaitForResponse(packet.GetString(), response,
+-                                                false) ==
++    if (m_gdb_comm.SendPacketAndWaitForResponse(packet.GetString(), response) ==
+         GDBRemoteCommunication::PacketResult::Success) {
+       StringExtractorGDBRemote::ResponseType response_type =
+           response.GetResponseType();
+@@ -4941,8 +4945,7 @@ Status ProcessGDBRemote::GetFileLoadAddress(const FileSpec &file,
+   packet.PutStringAsRawHex8(file_path);
+ 
+   StringExtractorGDBRemote response;
+-  if (m_gdb_comm.SendPacketAndWaitForResponse(packet.GetString(), response,
+-                                              false) !=
++  if (m_gdb_comm.SendPacketAndWaitForResponse(packet.GetString(), response) !=
+       GDBRemoteCommunication::PacketResult::Success)
+     return Status("Sending qFileLoadAddress packet failed");
+ 
+@@ -5317,10 +5320,9 @@ public:
+     if (process) {
+       for (size_t i = 0; i < argc; ++i) {
+         const char *packet_cstr = command.GetArgumentAtIndex(0);
+-        bool send_async = true;
+         StringExtractorGDBRemote response;
+         process->GetGDBRemote().SendPacketAndWaitForResponse(
+-            packet_cstr, response, send_async);
++            packet_cstr, response, process->GetInterruptTimeout());
+         result.SetStatus(eReturnStatusSuccessFinishResult);
+         Stream &output_strm = result.GetOutputStream();
+         output_strm.Printf("  packet: %s\n", packet_cstr);
+@@ -5368,11 +5370,10 @@ public:
+       packet.PutCString("qRcmd,");
+       packet.PutBytesAsRawHex8(command.data(), command.size());
+ 
+-      bool send_async = true;
+       StringExtractorGDBRemote response;
+       Stream &output_strm = result.GetOutputStream();
+       process->GetGDBRemote().SendPacketAndReceiveResponseWithOutputSupport(
+-          packet.GetString(), response, send_async,
++          packet.GetString(), response, process->GetInterruptTimeout(),
+           [&output_strm](llvm::StringRef output) { output_strm << output; });
+       result.SetStatus(eReturnStatusSuccessFinishResult);
+       output_strm.Printf("  packet: %s\n", packet.GetData());
+diff --git a/lldb/source/Target/Process.cpp b/lldb/source/Target/Process.cpp
+index 40ae5ab4568a..99e4314428c9 100644
+--- a/lldb/source/Target/Process.cpp
++++ b/lldb/source/Target/Process.cpp
+@@ -298,6 +298,13 @@ std::chrono::seconds ProcessProperties::GetUtilityExpressionTimeout() const {
+   return std::chrono::seconds(value);
+ }
+ 
++std::chrono::seconds ProcessProperties::GetInterruptTimeout() const {
++  const uint32_t idx = ePropertyInterruptTimeout;
++  uint64_t value = m_collection_sp->GetPropertyAtIndexAsUInt64(
++      nullptr, idx, g_process_properties[idx].default_uint_value);
++  return std::chrono::seconds(value);
++}
++
+ bool ProcessProperties::GetSteppingRunsAllThreads() const {
+   const uint32_t idx = ePropertySteppingRunsAllThreads;
+   return m_collection_sp->GetPropertyAtIndexAsBoolean(
+@@ -1335,8 +1342,8 @@ Status Process::ResumeSynchronous(Stream *stream) {
+ 
+   Status error = PrivateResume();
+   if (error.Success()) {
+-    StateType state =
+-        WaitForProcessToStop(llvm::None, nullptr, true, listener_sp, stream);
++    StateType state = WaitForProcessToStop(llvm::None, nullptr, true,
++                                           listener_sp, stream);
+     const bool must_be_alive =
+         false; // eStateExited is ok, so this must be false
+     if (!StateIsStoppedState(state, must_be_alive))
+@@ -3083,9 +3090,10 @@ Status Process::Halt(bool clear_thread_plans, bool use_run_lock) {
+     return Status();
+   }
+ 
+-  // Wait for 10 second for the process to stop.
+-  StateType state = WaitForProcessToStop(
+-      seconds(10), &event_sp, true, halt_listener_sp, nullptr, use_run_lock);
++  // Wait for the process halt timeout seconds for the process to stop.
++  StateType state =
++      WaitForProcessToStop(GetInterruptTimeout(), &event_sp, true,
++                           halt_listener_sp, nullptr, use_run_lock);
+   RestoreProcessEvents();
+ 
+   if (state == eStateInvalid || !event_sp) {
+@@ -3116,8 +3124,8 @@ Status Process::StopForDestroyOrDetach(lldb::EventSP &exit_event_sp) {
+     SendAsyncInterrupt();
+ 
+     // Consume the interrupt event.
+-    StateType state =
+-        WaitForProcessToStop(seconds(10), &exit_event_sp, true, listener_sp);
++    StateType state = WaitForProcessToStop(GetInterruptTimeout(),
++                                           &exit_event_sp, true, listener_sp);
+ 
+     RestoreProcessEvents();
+ 
+diff --git a/lldb/source/Target/TargetProperties.td b/lldb/source/Target/TargetProperties.td
+index a3634a0bd54f..8f627ad0f1a8 100644
+--- a/lldb/source/Target/TargetProperties.td
++++ b/lldb/source/Target/TargetProperties.td
+@@ -230,6 +230,9 @@ let Definition = "process" in {
+   def UtilityExpressionTimeout: Property<"utility-expression-timeout", "UInt64">,
+     DefaultUnsignedValue<15>,
+     Desc<"The time in seconds to wait for LLDB-internal utility expressions.">;
++  def InterruptTimeout: Property<"interrupt-timeout", "UInt64">,
++    DefaultUnsignedValue<20>,
++    Desc<"The time in seconds to wait for an interrupt succeed in stopping the target.">;
+   def SteppingRunsAllThreads: Property<"run-all-threads", "Boolean">,
+     DefaultFalse,
+     Desc<"If true, stepping operations will run all threads.  This is equivalent to setting the run-mode option to 'all-threads'.">;
+diff --git a/lldb/test/API/functionalities/gdb_remote_client/TestHaltFails.py b/lldb/test/API/functionalities/gdb_remote_client/TestHaltFails.py
+deleted file mode 100644
+index 9f8e39e8ecca..000000000000
+--- a/lldb/test/API/functionalities/gdb_remote_client/TestHaltFails.py
++++ /dev/null
+@@ -1,72 +0,0 @@
+-from __future__ import print_function
+-import lldb
+-from lldbsuite.test.lldbtest import *
+-from lldbsuite.test.decorators import *
+-from gdbclientutils import *
+-
+-
+-class TestHaltFails(GDBRemoteTestBase):
+-
+-    class MyResponder(MockGDBServerResponder):
+-        
+-        def setBreakpoint(self, packet):
+-            return "OK"
+-        
+-        def interrupt(self):
+-            # Simulate process waiting longer than the interrupt
+-            # timeout to stop, then sending the reply.
+-            time.sleep(14)
+-            return "T02reason:signal"
+-        
+-        def cont(self):
+-            # No response, wait for the client to interrupt us.
+-            return None
+-        
+-    def wait_for_and_check_event(self, wait_time, value):
+-        event = lldb.SBEvent()
+-        got_event = self.dbg.GetListener().WaitForEvent(wait_time, event)
+-        self.assertTrue(got_event, "Failed to get event after wait")
+-        self.assertTrue(lldb.SBProcess.EventIsProcessEvent(event), "Event was not a process event")
+-        event_type = lldb.SBProcess.GetStateFromEvent(event)
+-        self.assertEqual(event_type, value)
+-        
+-    def get_to_running(self):
+-        self.server.responder = self.MyResponder()
+-        self.target = self.createTarget("a.yaml")
+-        process = self.connect(self.target)
+-        self.dbg.SetAsync(True)
+-
+-        # There should be a stopped event, consume that:
+-        self.wait_for_and_check_event(2, lldb.eStateStopped)
+-        process.Continue()
+-
+-        # There should be a running event, consume that:
+-        self.wait_for_and_check_event(2, lldb.eStateRunning)
+-        return process
+-
+-    @skipIfReproducer # FIXME: Unexpected packet during (passive) replay
+-    def test_destroy_while_running(self):
+-        process = self.get_to_running()
+-        process.Destroy()
+-
+-        # Again pretend that after failing to be interrupted, we delivered the stop
+-        # and make sure we still exit properly.
+-        self.wait_for_and_check_event(14, lldb.eStateExited)
+-            
+-    @skipIfReproducer # FIXME: Unexpected packet during (passive) replay
+-    def test_async_interrupt(self):
+-        """
+-        Test that explicitly calling AsyncInterrupt, which then fails, leads
+-        to an "eStateExited" state.
+-        """
+-        process = self.get_to_running()
+-        # Now do the interrupt:
+-        process.SendAsyncInterrupt()
+-
+-        # That should have caused the Halt to time out and we should
+-        # be in eStateExited:
+-        self.wait_for_and_check_event(15, lldb.eStateExited)
+-
+-        
+-
+-        
+diff --git a/lldb/test/API/functionalities/step-vrs-interrupt/Makefile b/lldb/test/API/functionalities/step-vrs-interrupt/Makefile
+new file mode 100644
+index 000000000000..99998b20bcb0
+--- /dev/null
++++ b/lldb/test/API/functionalities/step-vrs-interrupt/Makefile
+@@ -0,0 +1,3 @@
++CXX_SOURCES := main.cpp
++
++include Makefile.rules
+diff --git a/lldb/test/API/functionalities/step-vrs-interrupt/TestStepVrsInterruptTimeout.py b/lldb/test/API/functionalities/step-vrs-interrupt/TestStepVrsInterruptTimeout.py
+new file mode 100644
+index 000000000000..43fbcffc8e4a
+--- /dev/null
++++ b/lldb/test/API/functionalities/step-vrs-interrupt/TestStepVrsInterruptTimeout.py
+@@ -0,0 +1,36 @@
++"""
++This is to make sure that the interrupt timer
++doesn't influence synchronous user level stepping.
++"""
++
++import lldb
++import lldbsuite.test.lldbutil as lldbutil
++from lldbsuite.test.lldbtest import *
++
++
++class TestStepVrsInterruptTimeout(TestBase):
++
++    mydir = TestBase.compute_mydir(__file__)
++
++    NO_DEBUG_INFO_TESTCASE = True
++
++    def test_step_vrs_interrupt(self):
++        """This test is to make sure that the interrupt timeout
++           doesn't cause use to flub events from a synchronous step."""
++        self.build()
++        self.main_source_file = lldb.SBFileSpec("main.cpp")
++        self.sample_test()
++
++    def sample_test(self):
++        """You might use the test implementation in several ways, say so here."""
++
++        # This function starts a process, "a.out" by default, sets a source
++        # breakpoint, runs to it, and returns the thread, process & target.
++        # It optionally takes an SBLaunchOption argument if you want to pass
++        # arguments or environment variables.
++        (target, process, thread, bkpt) = lldbutil.run_to_source_breakpoint(self,
++                                   "Set a breakpoint here", self.main_source_file)
++        self.dbg.SetAsync(False)
++        self.runCmd("settings set target.process.interrupt-timeout 1")
++        thread.StepOver()
++        self.assertEqual(process.GetState(), lldb.eStateStopped, "Stopped like we should")
+diff --git a/lldb/test/API/functionalities/step-vrs-interrupt/main.cpp b/lldb/test/API/functionalities/step-vrs-interrupt/main.cpp
+new file mode 100644
+index 000000000000..2c818921ee5f
+--- /dev/null
++++ b/lldb/test/API/functionalities/step-vrs-interrupt/main.cpp
+@@ -0,0 +1,16 @@
++#include <stdio.h>
++#include <chrono>
++#include <thread>
++
++void call_me() {
++  printf("I was called");
++  std::this_thread::sleep_for(std::chrono::seconds(3));
++}
++
++int
++main()
++{
++  call_me(); // Set a breakpoint here
++  return 0;
++}
++
+diff --git a/lldb/unittests/Process/gdb-remote/GDBRemoteClientBaseTest.cpp b/lldb/unittests/Process/gdb-remote/GDBRemoteClientBaseTest.cpp
+index 5bbcfdff4734..eb4fd29b4df5 100644
+--- a/lldb/unittests/Process/gdb-remote/GDBRemoteClientBaseTest.cpp
++++ b/lldb/unittests/Process/gdb-remote/GDBRemoteClientBaseTest.cpp
+@@ -55,6 +55,8 @@ public:
+   }
+ 
+ protected:
++  // We don't have a process to get the interrupt timeout from, so make one up.
++  static std::chrono::seconds g_timeout;
+   TestClient client;
+   MockServer server;
+   MockDelegate delegate;
+@@ -62,7 +64,8 @@ protected:
+ 
+   StateType SendCPacket(StringExtractorGDBRemote &response) {
+     return client.SendContinuePacketAndWaitForResponse(delegate, LinuxSignals(),
+-                                                       "c", response);
++                                                       "c", g_timeout, 
++                                                       response);
+   }
+ 
+   void WaitForRunEvent() {
+@@ -72,6 +75,8 @@ protected:
+   }
+ };
+ 
++std::chrono::seconds GDBRemoteClientBaseTest::g_timeout(10);
++
+ } // end anonymous namespace
+ 
+ TEST_F(GDBRemoteClientBaseTest, SendContinueAndWait) {
+@@ -103,7 +108,7 @@ TEST_F(GDBRemoteClientBaseTest, SendContinueAndAsyncSignal) {
+   StringExtractorGDBRemote continue_response, response;
+ 
+   // SendAsyncSignal should do nothing when we are not running.
+-  ASSERT_FALSE(client.SendAsyncSignal(0x47));
++  ASSERT_FALSE(client.SendAsyncSignal(0x47, g_timeout));
+ 
+   // Continue. After the run packet is sent, send an async signal.
+   std::future<StateType> continue_state = std::async(
+@@ -112,8 +117,9 @@ TEST_F(GDBRemoteClientBaseTest, SendContinueAndAsyncSignal) {
+   ASSERT_EQ("c", response.GetStringRef());
+   WaitForRunEvent();
+ 
+-  std::future<bool> async_result = std::async(
+-      std::launch::async, [&] { return client.SendAsyncSignal(0x47); });
++  std::future<bool> async_result = std::async(std::launch::async, [&] {
++    return client.SendAsyncSignal(0x47, g_timeout);
++  });
+ 
+   // First we'll get interrupted.
+   ASSERT_EQ(PacketResult::Success, server.GetPacket(response));
+@@ -133,7 +139,6 @@ TEST_F(GDBRemoteClientBaseTest, SendContinueAndAsyncSignal) {
+ 
+ TEST_F(GDBRemoteClientBaseTest, SendContinueAndAsyncPacket) {
+   StringExtractorGDBRemote continue_response, async_response, response;
+-  const bool send_async = true;
+ 
+   // Continue. After the run packet is sent, send an async packet.
+   std::future<StateType> continue_state = std::async(
+@@ -143,13 +148,12 @@ TEST_F(GDBRemoteClientBaseTest, SendContinueAndAsyncPacket) {
+   WaitForRunEvent();
+ 
+   // Sending without async enabled should fail.
+-  ASSERT_EQ(
+-      PacketResult::ErrorSendFailed,
+-      client.SendPacketAndWaitForResponse("qTest1", response, !send_async));
++  ASSERT_EQ(PacketResult::ErrorSendFailed,
++            client.SendPacketAndWaitForResponse("qTest1", response));
+ 
+   std::future<PacketResult> async_result = std::async(std::launch::async, [&] {
+     return client.SendPacketAndWaitForResponse("qTest2", async_response,
+-                                               send_async);
++                                               g_timeout);
+   });
+ 
+   // First we'll get interrupted.
+@@ -178,7 +182,7 @@ TEST_F(GDBRemoteClientBaseTest, SendContinueAndInterrupt) {
+   StringExtractorGDBRemote continue_response, response;
+ 
+   // Interrupt should do nothing when we're not running.
+-  ASSERT_FALSE(client.Interrupt());
++  ASSERT_FALSE(client.Interrupt(g_timeout));
+ 
+   // Continue. After the run packet is sent, send an interrupt.
+   std::future<StateType> continue_state = std::async(
+@@ -187,8 +191,8 @@ TEST_F(GDBRemoteClientBaseTest, SendContinueAndInterrupt) {
+   ASSERT_EQ("c", response.GetStringRef());
+   WaitForRunEvent();
+ 
+-  std::future<bool> async_result =
+-      std::async(std::launch::async, [&] { return client.Interrupt(); });
++  std::future<bool> async_result = std::async(
++      std::launch::async, [&] { return client.Interrupt(g_timeout); });
+ 
+   // We get interrupted.
+   ASSERT_EQ(PacketResult::Success, server.GetPacket(response));
+@@ -211,8 +215,8 @@ TEST_F(GDBRemoteClientBaseTest, SendContinueAndLateInterrupt) {
+   ASSERT_EQ("c", response.GetStringRef());
+   WaitForRunEvent();
+ 
+-  std::future<bool> async_result =
+-      std::async(std::launch::async, [&] { return client.Interrupt(); });
++  std::future<bool> async_result = std::async(
++      std::launch::async, [&] { return client.Interrupt(g_timeout); });
+ 
+   // However, the target stops due to a different reason than the original
+   // interrupt.
+@@ -233,10 +237,9 @@ TEST_F(GDBRemoteClientBaseTest, SendContinueAndLateInterrupt) {
+ 
+ TEST_F(GDBRemoteClientBaseTest, SendContinueAndInterrupt2PacketBug) {
+   StringExtractorGDBRemote continue_response, async_response, response;
+-  const bool send_async = true;
+ 
+   // Interrupt should do nothing when we're not running.
+-  ASSERT_FALSE(client.Interrupt());
++  ASSERT_FALSE(client.Interrupt(g_timeout));
+ 
+   // Continue. After the run packet is sent, send an async signal.
+   std::future<StateType> continue_state = std::async(
+@@ -245,8 +248,8 @@ TEST_F(GDBRemoteClientBaseTest, SendContinueAndInterrupt2PacketBug) {
+   ASSERT_EQ("c", response.GetStringRef());
+   WaitForRunEvent();
+ 
+-  std::future<bool> interrupt_result =
+-      std::async(std::launch::async, [&] { return client.Interrupt(); });
++  std::future<bool> interrupt_result = std::async(
++      std::launch::async, [&] { return client.Interrupt(g_timeout); });
+ 
+   // We get interrupted. We'll send two packets to simulate a buggy stub.
+   ASSERT_EQ(PacketResult::Success, server.GetPacket(response));
+@@ -261,8 +264,7 @@ TEST_F(GDBRemoteClientBaseTest, SendContinueAndInterrupt2PacketBug) {
+ 
+   // Packet stream should remain synchronized.
+   std::future<PacketResult> send_result = std::async(std::launch::async, [&] {
+-    return client.SendPacketAndWaitForResponse("qTest", async_response,
+-                                               !send_async);
++    return client.SendPacketAndWaitForResponse("qTest", async_response);
+   });
+   ASSERT_EQ(PacketResult::Success, server.GetPacket(response));
+   ASSERT_EQ("qTest", response.GetStringRef());
+@@ -328,8 +330,8 @@ TEST_F(GDBRemoteClientBaseTest, InterruptNoResponse) {
+   ASSERT_EQ("c", response.GetStringRef());
+   WaitForRunEvent();
+ 
+-  std::future<bool> async_result =
+-      std::async(std::launch::async, [&] { return client.Interrupt(); });
++  std::future<bool> async_result = std::async(
++      std::launch::async, [&] { return client.Interrupt(g_timeout); });
+ 
+   // We get interrupted, but we don't send a stop packet.
+   ASSERT_EQ(PacketResult::Success, server.GetPacket(response));
+@@ -352,7 +354,7 @@ TEST_F(GDBRemoteClientBaseTest, SendPacketAndReceiveResponseWithOutputSupport) {
+   ASSERT_EQ(PacketResult::Success, server.SendPacket("OK"));
+ 
+   PacketResult result = client.SendPacketAndReceiveResponseWithOutputSupport(
+-      "qRcmd,test", response, true,
++      "qRcmd,test", response, g_timeout,
+       [&command_output](llvm::StringRef output) { command_output << output; });
+ 
+   ASSERT_EQ(PacketResult::Success, result);
+diff --git a/lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationClientTest.cpp b/lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationClientTest.cpp
+index 45e0356c4948..781809297990 100644
+--- a/lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationClientTest.cpp
++++ b/lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationClientTest.cpp
+@@ -384,8 +384,9 @@ TEST_F(GDBRemoteCommunicationClientTest, SendTraceSupportedPacket) {
+   TraceSupportedResponse trace_type;
+   std::string error_message;
+   auto callback = [&] {
++    std::chrono::seconds timeout(10);
+     if (llvm::Expected<TraceSupportedResponse> trace_type_or_err =
+-            client.SendTraceSupported()) {
++            client.SendTraceSupported(timeout)) {
+       trace_type = *trace_type_or_err;
+       error_message = "";
+       return true;
+diff --git a/lldb/unittests/tools/lldb-server/tests/TestClient.cpp b/lldb/unittests/tools/lldb-server/tests/TestClient.cpp
+index 752b0bb2600b..0bb60f262191 100644
+--- a/lldb/unittests/tools/lldb-server/tests/TestClient.cpp
++++ b/lldb/unittests/tools/lldb-server/tests/TestClient.cpp
+@@ -193,7 +193,7 @@ Error TestClient::SendMessage(StringRef message, std::string &response_string,
+                               PacketResult expected_result) {
+   StringExtractorGDBRemote response;
+   GTEST_LOG_(INFO) << "Send Packet: " << message.str();
+-  PacketResult result = SendPacketAndWaitForResponse(message, response, false);
++  PacketResult result = SendPacketAndWaitForResponse(message, response);
+   response.GetEscapedBinaryData(response_string);
+   GTEST_LOG_(INFO) << "Read Packet: " << response_string;
+   if (result != expected_result)
diff --git a/sys-devel/llvm/files/cherry/386b66b2fc297cda121a3cc8a36887a6ecbcfc68.patch b/sys-devel/llvm/files/cherry/386b66b2fc297cda121a3cc8a36887a6ecbcfc68.patch
new file mode 100644
index 0000000..b769284
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/386b66b2fc297cda121a3cc8a36887a6ecbcfc68.patch
@@ -0,0 +1,960 @@
+commit 386b66b2fc297cda121a3cc8a36887a6ecbcfc68
+Author: Hans Wennborg <hans@chromium.org>
+Date:   Tue Jun 8 14:42:11 2021 +0200
+
+    Revert "3rd Reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands""
+    
+    > This reapplies c0f3dfb9, which was reverted following the discovery of
+    > crashes on linux kernel and chromium builds - these issues have since
+    > been fixed, allowing this patch to re-land.
+    
+    This reverts commit 36ec97f76ac0d8be76fb16ac521f55126766267d.
+    
+    The change caused non-determinism in the compiler, see comments on the code
+    review at https://reviews.llvm.org/D91722.
+    
+    Reverting to unbreak people's builds until that can be addressed.
+    
+    This also reverts the follow-up "[DebugInfo] Limit the number of values
+    that may be referenced by a dbg.value" in
+    a0bd6105d80698c53ceaa64bbe6e3b7e7bbf99ee.
+
+diff --git a/llvm/include/llvm/IR/DebugInfoMetadata.h b/llvm/include/llvm/IR/DebugInfoMetadata.h
+index 031f5c3a3914..e5d4c29ad228 100644
+--- a/llvm/include/llvm/IR/DebugInfoMetadata.h
++++ b/llvm/include/llvm/IR/DebugInfoMetadata.h
+@@ -2589,16 +2589,6 @@ public:
+   // return it's sign information.
+   llvm::Optional<SignedOrUnsignedConstant> isConstant() const;
+ 
+-  /// Return the number of unique location operands referred to (via
+-  /// DW_OP_LLVM_arg) in this expression; this is not necessarily the number of
+-  /// instances of DW_OP_LLVM_arg within the expression.
+-  /// For example, for the expression:
+-  ///   (DW_OP_LLVM_arg 0, DW_OP_LLVM_arg 1, DW_OP_plus,
+-  ///    DW_OP_LLVM_arg 0, DW_OP_mul)
+-  /// This function would return 2, as there are two unique location operands
+-  /// (0 and 1).
+-  uint64_t getNumLocationOperands() const;
+-
+   using element_iterator = ArrayRef<uint64_t>::iterator;
+ 
+   element_iterator elements_begin() const { return getElements().begin(); }
+@@ -2746,10 +2736,6 @@ public:
+   /// return true with an offset of zero.
+   bool extractIfOffset(int64_t &Offset) const;
+ 
+-  /// Returns true iff this DIExpression contains at least one instance of
+-  /// `DW_OP_LLVM_arg, n` for all n in [0, N).
+-  bool hasAllLocationOps(unsigned N) const;
+-
+   /// Checks if the last 4 elements of the expression are DW_OP_constu <DWARF
+   /// Address Space> DW_OP_swap DW_OP_xderef and extracts the <DWARF Address
+   /// Space>.
+diff --git a/llvm/include/llvm/IR/Instructions.h b/llvm/include/llvm/IR/Instructions.h
+index a008bb7cbb3c..a133267ffe9c 100644
+--- a/llvm/include/llvm/IR/Instructions.h
++++ b/llvm/include/llvm/IR/Instructions.h
+@@ -1148,9 +1148,7 @@ public:
+   /// must be at least as wide as the IntPtr type for the address space of
+   /// the base GEP pointer.
+   bool accumulateConstantOffset(const DataLayout &DL, APInt &Offset) const;
+-  bool collectOffset(const DataLayout &DL, unsigned BitWidth,
+-                     SmallDenseMap<Value *, APInt, 8> &VariableOffsets,
+-                     APInt &ConstantOffset) const;
++
+   // Methods for support type inquiry through isa, cast, and dyn_cast:
+   static bool classof(const Instruction *I) {
+     return (I->getOpcode() == Instruction::GetElementPtr);
+diff --git a/llvm/include/llvm/IR/IntrinsicInst.h b/llvm/include/llvm/IR/IntrinsicInst.h
+index 606c2b570c1b..e28544b6c097 100644
+--- a/llvm/include/llvm/IR/IntrinsicInst.h
++++ b/llvm/include/llvm/IR/IntrinsicInst.h
+@@ -204,11 +204,6 @@ public:
+ 
+   void replaceVariableLocationOp(Value *OldValue, Value *NewValue);
+   void replaceVariableLocationOp(unsigned OpIdx, Value *NewValue);
+-  /// Adding a new location operand will always result in this intrinsic using
+-  /// an ArgList, and must always be accompanied by a new expression that uses
+-  /// the new operand.
+-  void addVariableLocationOps(ArrayRef<Value *> NewValues,
+-                              DIExpression *NewExpr);
+ 
+   void setVariable(DILocalVariable *NewVar) {
+     setArgOperand(1, MetadataAsValue::get(NewVar->getContext(), NewVar));
+diff --git a/llvm/include/llvm/IR/Operator.h b/llvm/include/llvm/IR/Operator.h
+index 303539fd0bfc..03bcea3d91f6 100644
+--- a/llvm/include/llvm/IR/Operator.h
++++ b/llvm/include/llvm/IR/Operator.h
+@@ -576,12 +576,6 @@ public:
+       Type *SourceType, ArrayRef<const Value *> Index, const DataLayout &DL,
+       APInt &Offset,
+       function_ref<bool(Value &, APInt &)> ExternalAnalysis = nullptr);
+-
+-  /// Collect the offset of this GEP as a map of Values to their associated
+-  /// APInt multipliers, as well as a total Constant Offset.
+-  bool collectOffset(const DataLayout &DL, unsigned BitWidth,
+-                     SmallDenseMap<Value *, APInt, 8> &VariableOffsets,
+-                     APInt &ConstantOffset) const;
+ };
+ 
+ class PtrToIntOperator
+diff --git a/llvm/include/llvm/Transforms/Utils/Local.h b/llvm/include/llvm/Transforms/Utils/Local.h
+index 56dac033990c..9208ae8f2ad5 100644
+--- a/llvm/include/llvm/Transforms/Utils/Local.h
++++ b/llvm/include/llvm/Transforms/Utils/Local.h
+@@ -298,8 +298,7 @@ void salvageDebugInfoForDbgValues(Instruction &I,
+ /// appended to the expression. \p LocNo: the index of the location operand to
+ /// which \p I applies, should be 0 for debug info without a DIArgList.
+ DIExpression *salvageDebugInfoImpl(Instruction &I, DIExpression *DIExpr,
+-                                   bool StackVal, unsigned LocNo,
+-                                   SmallVectorImpl<Value *> &AdditionalValues);
++                                   bool StackVal, unsigned LocNo);
+ 
+ /// Point debug users of \p From to \p To or salvage them. Use this function
+ /// only when replacing all uses of \p From with \p To, with a guarantee that
+diff --git a/llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h b/llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h
+index 62ebadaf3cbe..525b839d67a0 100644
+--- a/llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h
++++ b/llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h
+@@ -121,6 +121,11 @@ public:
+     // Currently, DBG_VALUE_VAR expressions must use stack_value.
+     assert(Expr && Expr->isValid() &&
+            is_contained(Locs, dwarf::DW_OP_stack_value));
++    for (DbgValueLocEntry &Entry : ValueLocEntries) {
++      assert(!Entry.isConstantFP() && !Entry.isConstantInt() &&
++             "Constant values should only be present in non-variadic "
++             "DBG_VALUEs.");
++    }
+ #endif
+   }
+ 
+@@ -137,6 +142,11 @@ public:
+       // Currently, DBG_VALUE_VAR expressions must use stack_value.
+       assert(Expr && Expr->isValid() &&
+              is_contained(Expr->getElements(), dwarf::DW_OP_stack_value));
++      for (DbgValueLocEntry &Entry : ValueLocEntries) {
++        assert(!Entry.isConstantFP() && !Entry.isConstantInt() &&
++               "Constant values should only be present in non-variadic "
++               "DBG_VALUEs.");
++      }
+     }
+ #endif
+   }
+diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+index 01b06279c0f4..696a28a76e76 100644
+--- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
++++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+@@ -1248,10 +1248,6 @@ void SelectionDAGBuilder::resolveDanglingDebugInfo(const Value *V,
+ }
+ 
+ void SelectionDAGBuilder::salvageUnresolvedDbgValue(DanglingDebugInfo &DDI) {
+-  // TODO: For the variadic implementation, instead of only checking the fail
+-  // state of `handleDebugValue`, we need know specifically which values were
+-  // invalid, so that we attempt to salvage only those values when processing
+-  // a DIArgList.
+   assert(!DDI.getDI()->hasArgList() &&
+          "Not implemented for variadic dbg_values");
+   Value *V = DDI.getDI()->getValue(0);
+@@ -1275,21 +1271,16 @@ void SelectionDAGBuilder::salvageUnresolvedDbgValue(DanglingDebugInfo &DDI) {
+   while (isa<Instruction>(V)) {
+     Instruction &VAsInst = *cast<Instruction>(V);
+     // Temporary "0", awaiting real implementation.
+-    SmallVector<Value *, 4> AdditionalValues;
+-    DIExpression *SalvagedExpr =
+-        salvageDebugInfoImpl(VAsInst, Expr, StackValue, 0, AdditionalValues);
++    DIExpression *NewExpr = salvageDebugInfoImpl(VAsInst, Expr, StackValue, 0);
+ 
+     // If we cannot salvage any further, and haven't yet found a suitable debug
+     // expression, bail out.
+-    // TODO: If AdditionalValues isn't empty, then the salvage can only be
+-    // represented with a DBG_VALUE_LIST, so we give up. When we have support
+-    // here for variadic dbg_values, remove that condition.
+-    if (!SalvagedExpr || !AdditionalValues.empty())
++    if (!NewExpr)
+       break;
+ 
+     // New value and expr now represent this debuginfo.
+     V = VAsInst.getOperand(0);
+-    Expr = SalvagedExpr;
++    Expr = NewExpr;
+ 
+     // Some kind of simplification occurred: check whether the operand of the
+     // salvaged debug expression can be encoded in this DAG.
+diff --git a/llvm/lib/IR/DebugInfoMetadata.cpp b/llvm/lib/IR/DebugInfoMetadata.cpp
+index 7b0dab799e1a..5e8eaacfbdc7 100644
+--- a/llvm/lib/IR/DebugInfoMetadata.cpp
++++ b/llvm/lib/IR/DebugInfoMetadata.cpp
+@@ -1251,17 +1251,6 @@ bool DIExpression::extractIfOffset(int64_t &Offset) const {
+   return false;
+ }
+ 
+-bool DIExpression::hasAllLocationOps(unsigned N) const {
+-  SmallDenseSet<uint64_t, 4> SeenOps;
+-  for (auto ExprOp : expr_ops())
+-    if (ExprOp.getOp() == dwarf::DW_OP_LLVM_arg)
+-      SeenOps.insert(ExprOp.getArg(0));
+-  for (uint64_t Idx = 0; Idx < N; ++Idx)
+-    if (!is_contained(SeenOps, Idx))
+-      return false;
+-  return true;
+-}
+-
+ const DIExpression *DIExpression::extractAddressClass(const DIExpression *Expr,
+                                                       unsigned &AddrClass) {
+   // FIXME: This seems fragile. Nothing that verifies that these elements
+@@ -1476,16 +1465,6 @@ Optional<DIExpression *> DIExpression::createFragmentExpression(
+   return DIExpression::get(Expr->getContext(), Ops);
+ }
+ 
+-uint64_t DIExpression::getNumLocationOperands() const {
+-  uint64_t Result = 0;
+-  for (auto ExprOp : expr_ops())
+-    if (ExprOp.getOp() == dwarf::DW_OP_LLVM_arg)
+-      Result = std::max(Result, ExprOp.getArg(0) + 1);
+-  assert(hasAllLocationOps(Result) &&
+-         "Expression is missing one or more location operands.");
+-  return Result;
+-}
+-
+ llvm::Optional<DIExpression::SignedOrUnsignedConstant>
+ DIExpression::isConstant() const {
+ 
+diff --git a/llvm/lib/IR/Instructions.cpp b/llvm/lib/IR/Instructions.cpp
+index f1df5001c134..f2316b609193 100644
+--- a/llvm/lib/IR/Instructions.cpp
++++ b/llvm/lib/IR/Instructions.cpp
+@@ -1798,15 +1798,6 @@ bool GetElementPtrInst::accumulateConstantOffset(const DataLayout &DL,
+   return cast<GEPOperator>(this)->accumulateConstantOffset(DL, Offset);
+ }
+ 
+-bool GetElementPtrInst::collectOffset(
+-    const DataLayout &DL, unsigned BitWidth,
+-    SmallDenseMap<Value *, APInt, 8> &VariableOffsets,
+-    APInt &ConstantOffset) const {
+-  // Delegate to the generic GEPOperator implementation.
+-  return cast<GEPOperator>(this)->collectOffset(DL, BitWidth, VariableOffsets,
+-                                                ConstantOffset);
+-}
+-
+ //===----------------------------------------------------------------------===//
+ //                           ExtractElementInst Implementation
+ //===----------------------------------------------------------------------===//
+diff --git a/llvm/lib/IR/IntrinsicInst.cpp b/llvm/lib/IR/IntrinsicInst.cpp
+index 30c7ceb3c3f0..eab250adb738 100644
+--- a/llvm/lib/IR/IntrinsicInst.cpp
++++ b/llvm/lib/IR/IntrinsicInst.cpp
+@@ -118,23 +118,6 @@ void DbgVariableIntrinsic::replaceVariableLocationOp(unsigned OpIdx,
+       0, MetadataAsValue::get(getContext(), DIArgList::get(getContext(), MDs)));
+ }
+ 
+-void DbgVariableIntrinsic::addVariableLocationOps(ArrayRef<Value *> NewValues,
+-                                                  DIExpression *NewExpr) {
+-  assert(NewExpr->hasAllLocationOps(getNumVariableLocationOps() +
+-                                    NewValues.size()) &&
+-         "NewExpr for debug variable intrinsic does not reference every "
+-         "location operand.");
+-  assert(!is_contained(NewValues, nullptr) && "New values must be non-null");
+-  setArgOperand(2, MetadataAsValue::get(getContext(), NewExpr));
+-  SmallVector<ValueAsMetadata *, 4> MDs;
+-  for (auto *VMD : location_ops())
+-    MDs.push_back(getAsMetadata(VMD));
+-  for (auto *VMD : NewValues)
+-    MDs.push_back(getAsMetadata(VMD));
+-  setArgOperand(
+-      0, MetadataAsValue::get(getContext(), DIArgList::get(getContext(), MDs)));
+-}
+-
+ Optional<uint64_t> DbgVariableIntrinsic::getFragmentSizeInBits() const {
+   if (auto Fragment = getExpression()->getFragmentInfo())
+     return Fragment->SizeInBits;
+diff --git a/llvm/lib/IR/Operator.cpp b/llvm/lib/IR/Operator.cpp
+index e030cb552275..69181f35827b 100644
+--- a/llvm/lib/IR/Operator.cpp
++++ b/llvm/lib/IR/Operator.cpp
+@@ -142,61 +142,4 @@ bool GEPOperator::accumulateConstantOffset(
+   }
+   return true;
+ }
+-
+-bool GEPOperator::collectOffset(
+-    const DataLayout &DL, unsigned BitWidth,
+-    SmallDenseMap<Value *, APInt, 8> &VariableOffsets,
+-    APInt &ConstantOffset) const {
+-  assert(BitWidth == DL.getIndexSizeInBits(getPointerAddressSpace()) &&
+-         "The offset bit width does not match DL specification.");
+-
+-  auto CollectConstantOffset = [&](APInt Index, uint64_t Size) {
+-    Index = Index.sextOrTrunc(BitWidth);
+-    APInt IndexedSize = APInt(BitWidth, Size);
+-    ConstantOffset += Index * IndexedSize;
+-  };
+-
+-  for (gep_type_iterator GTI = gep_type_begin(this), GTE = gep_type_end(this);
+-       GTI != GTE; ++GTI) {
+-    // Scalable vectors are multiplied by a runtime constant.
+-    bool ScalableType = isa<ScalableVectorType>(GTI.getIndexedType());
+-
+-    Value *V = GTI.getOperand();
+-    StructType *STy = GTI.getStructTypeOrNull();
+-    // Handle ConstantInt if possible.
+-    if (auto ConstOffset = dyn_cast<ConstantInt>(V)) {
+-      if (ConstOffset->isZero())
+-        continue;
+-      // If the type is scalable and the constant is not zero (vscale * n * 0 =
+-      // 0) bailout.
+-      // TODO: If the runtime value is accessible at any point before DWARF
+-      // emission, then we could potentially keep a forward reference to it
+-      // in the debug value to be filled in later.
+-      if (ScalableType)
+-        return false;
+-      // Handle a struct index, which adds its field offset to the pointer.
+-      if (STy) {
+-        unsigned ElementIdx = ConstOffset->getZExtValue();
+-        const StructLayout *SL = DL.getStructLayout(STy);
+-        // Element offset is in bytes.
+-        CollectConstantOffset(APInt(BitWidth, SL->getElementOffset(ElementIdx)),
+-                              1);
+-        continue;
+-      }
+-      CollectConstantOffset(ConstOffset->getValue(),
+-                            DL.getTypeAllocSize(GTI.getIndexedType()));
+-      continue;
+-    }
+-
+-    if (STy || ScalableType)
+-      return false;
+-    // Insert an initial offset of 0 for V iff none exists already, then
+-    // increment the offset by IndexedSize.
+-    VariableOffsets.try_emplace(V, BitWidth, 0);
+-    APInt IndexedSize =
+-        APInt(BitWidth, DL.getTypeAllocSize(GTI.getIndexedType()));
+-    VariableOffsets[V] += IndexedSize;
+-  }
+-  return true;
+-}
+ } // namespace llvm
+diff --git a/llvm/lib/Transforms/Coroutines/CoroFrame.cpp b/llvm/lib/Transforms/Coroutines/CoroFrame.cpp
+index 18f8e5e61a40..51cf5b22021c 100644
+--- a/llvm/lib/Transforms/Coroutines/CoroFrame.cpp
++++ b/llvm/lib/Transforms/Coroutines/CoroFrame.cpp
+@@ -2467,15 +2467,10 @@ void coro::salvageDebugInfo(
+     } else if (auto *StInst = dyn_cast<StoreInst>(Storage)) {
+       Storage = StInst->getOperand(0);
+     } else if (auto *GEPInst = dyn_cast<GetElementPtrInst>(Storage)) {
+-      SmallVector<Value *> AdditionalValues;
+-      DIExpression *SalvagedExpr = llvm::salvageDebugInfoImpl(
+-          *GEPInst, Expr,
+-          /*WithStackValue=*/false, 0, AdditionalValues);
+-      // Debug declares cannot currently handle additional location
+-      // operands.
+-      if (!SalvagedExpr || !AdditionalValues.empty())
+-        break;
+-      Expr = SalvagedExpr;
++      Expr = llvm::salvageDebugInfoImpl(*GEPInst, Expr,
++                                        /*WithStackValue=*/false, 0);
++      if (!Expr)
++        return;
+       Storage = GEPInst->getOperand(0);
+     } else if (auto *BCInst = dyn_cast<llvm::BitCastInst>(Storage))
+       Storage = BCInst->getOperand(0);
+diff --git a/llvm/lib/Transforms/Utils/Local.cpp b/llvm/lib/Transforms/Utils/Local.cpp
+index eeaf43a4a55d..13a2f30442cc 100644
+--- a/llvm/lib/Transforms/Utils/Local.cpp
++++ b/llvm/lib/Transforms/Utils/Local.cpp
+@@ -1724,9 +1724,6 @@ void llvm::salvageDebugInfo(Instruction &I) {
+ 
+ void llvm::salvageDebugInfoForDbgValues(
+     Instruction &I, ArrayRef<DbgVariableIntrinsic *> DbgUsers) {
+-  // This is an arbitrary chosen limit on the maximum number of values we can
+-  // salvage up to in a DIArgList, used for performance reasons.
+-  const unsigned MaxDebugArgs = 16;
+   bool Salvaged = false;
+ 
+   for (auto *DII : DbgUsers) {
+@@ -1739,30 +1736,17 @@ void llvm::salvageDebugInfoForDbgValues(
+         is_contained(DIILocation, &I) &&
+         "DbgVariableIntrinsic must use salvaged instruction as its location");
+     unsigned LocNo = std::distance(DIILocation.begin(), find(DIILocation, &I));
+-    SmallVector<Value *, 4> AdditionalValues;
+-    DIExpression *SalvagedExpr = salvageDebugInfoImpl(
+-        I, DII->getExpression(), StackValue, LocNo, AdditionalValues);
++
++    DIExpression *DIExpr =
++        salvageDebugInfoImpl(I, DII->getExpression(), StackValue, LocNo);
+ 
+     // salvageDebugInfoImpl should fail on examining the first element of
+     // DbgUsers, or none of them.
+-    if (!SalvagedExpr)
++    if (!DIExpr)
+       break;
+ 
+     DII->replaceVariableLocationOp(&I, I.getOperand(0));
+-    if (AdditionalValues.empty()) {
+-      DII->setExpression(SalvagedExpr);
+-    } else if (isa<DbgValueInst>(DII) &&
+-               DII->getNumVariableLocationOps() + AdditionalValues.size() <=
+-                   MaxDebugArgs) {
+-      DII->addVariableLocationOps(AdditionalValues, SalvagedExpr);
+-    } else {
+-      // Do not salvage using DIArgList for dbg.addr/dbg.declare, as it is
+-      // currently only valid for stack value expressions.
+-      // Also do not salvage if the resulting DIArgList would contain an
+-      // unreasonably large number of values.
+-      Value *Undef = UndefValue::get(I.getOperand(0)->getType());
+-      DII->replaceVariableLocationOp(I.getOperand(0), Undef);
+-    }
++    DII->setExpression(DIExpr);
+     LLVM_DEBUG(dbgs() << "SALVAGE: " << *DII << '\n');
+     Salvaged = true;
+   }
+@@ -1777,27 +1761,12 @@ void llvm::salvageDebugInfoForDbgValues(
+ }
+ 
+ bool getSalvageOpsForGEP(GetElementPtrInst *GEP, const DataLayout &DL,
+-                         uint64_t CurrentLocOps,
+-                         SmallVectorImpl<uint64_t> &Opcodes,
+-                         SmallVectorImpl<Value *> &AdditionalValues) {
++                         SmallVectorImpl<uint64_t> &Opcodes) {
+   unsigned BitWidth = DL.getIndexSizeInBits(GEP->getPointerAddressSpace());
+-  // Rewrite a GEP into a DIExpression.
+-  SmallDenseMap<Value *, APInt, 8> VariableOffsets;
++  // Rewrite a constant GEP into a DIExpression.
+   APInt ConstantOffset(BitWidth, 0);
+-  if (!GEP->collectOffset(DL, BitWidth, VariableOffsets, ConstantOffset))
++  if (!GEP->accumulateConstantOffset(DL, ConstantOffset))
+     return false;
+-  if (!VariableOffsets.empty() && !CurrentLocOps) {
+-    Opcodes.insert(Opcodes.begin(), {dwarf::DW_OP_LLVM_arg, 0});
+-    CurrentLocOps = 1;
+-  }
+-  for (auto Offset : VariableOffsets) {
+-    AdditionalValues.push_back(Offset.first);
+-    assert(Offset.second.isStrictlyPositive() &&
+-           "Expected strictly positive multiplier for offset.");
+-    Opcodes.append({dwarf::DW_OP_LLVM_arg, CurrentLocOps++, dwarf::DW_OP_constu,
+-                    Offset.second.getZExtValue(), dwarf::DW_OP_mul,
+-                    dwarf::DW_OP_plus});
+-  }
+   DIExpression::appendOffset(Opcodes, ConstantOffset.getSExtValue());
+   return true;
+ }
+@@ -1832,35 +1801,23 @@ uint64_t getDwarfOpForBinOp(Instruction::BinaryOps Opcode) {
+   }
+ }
+ 
+-bool getSalvageOpsForBinOp(BinaryOperator *BI, uint64_t CurrentLocOps,
+-                           SmallVectorImpl<uint64_t> &Opcodes,
+-                           SmallVectorImpl<Value *> &AdditionalValues) {
+-  // Handle binary operations with constant integer operands as a special case.
++bool getSalvageOpsForBinOp(BinaryOperator *BI,
++                           SmallVectorImpl<uint64_t> &Opcodes) {
++  // Rewrite binary operations with constant integer operands.
+   auto *ConstInt = dyn_cast<ConstantInt>(BI->getOperand(1));
+-  // Values wider than 64 bits cannot be represented within a DIExpression.
+-  if (ConstInt && ConstInt->getBitWidth() > 64)
++  if (!ConstInt || ConstInt->getBitWidth() > 64)
+     return false;
+-
++  uint64_t Val = ConstInt->getSExtValue();
+   Instruction::BinaryOps BinOpcode = BI->getOpcode();
+-  // Push any Constant Int operand onto the expression stack.
+-  if (ConstInt) {
+-    uint64_t Val = ConstInt->getSExtValue();
+-    // Add or Sub Instructions with a constant operand can potentially be
+-    // simplified.
+-    if (BinOpcode == Instruction::Add || BinOpcode == Instruction::Sub) {
+-      uint64_t Offset = BinOpcode == Instruction::Add ? Val : -int64_t(Val);
+-      DIExpression::appendOffset(Opcodes, Offset);
+-      return true;
+-    }
+-    Opcodes.append({dwarf::DW_OP_constu, Val});
+-  } else {
+-    if (!CurrentLocOps) {
+-      Opcodes.append({dwarf::DW_OP_LLVM_arg, 0});
+-      CurrentLocOps = 1;
+-    }
+-    Opcodes.append({dwarf::DW_OP_LLVM_arg, CurrentLocOps});
+-    AdditionalValues.push_back(BI->getOperand(1));
++  // Add or Sub Instructions with a constant operand can potentially be
++  // simplified.
++  if (BinOpcode == Instruction::Add || BinOpcode == Instruction::Sub) {
++    uint64_t Offset = BinOpcode == Instruction::Add ? Val : -int64_t(Val);
++    DIExpression::appendOffset(Opcodes, Offset);
++    return true;
+   }
++  // Add constant int operand to expression stack.
++  Opcodes.append({dwarf::DW_OP_constu, Val});
+ 
+   // Add salvaged binary operator to expression stack, if it has a valid
+   // representation in a DIExpression.
+@@ -1872,11 +1829,9 @@ bool getSalvageOpsForBinOp(BinaryOperator *BI, uint64_t CurrentLocOps,
+   return true;
+ }
+ 
+-DIExpression *
+-llvm::salvageDebugInfoImpl(Instruction &I, DIExpression *SrcDIExpr,
+-                           bool WithStackValue, unsigned LocNo,
+-                           SmallVectorImpl<Value *> &AdditionalValues) {
+-  uint64_t CurrentLocOps = SrcDIExpr->getNumLocationOperands();
++DIExpression *llvm::salvageDebugInfoImpl(Instruction &I,
++                                         DIExpression *SrcDIExpr,
++                                         bool WithStackValue, unsigned LocNo) {
+   auto &M = *I.getModule();
+   auto &DL = M.getDataLayout();
+ 
+@@ -1890,7 +1845,7 @@ llvm::salvageDebugInfoImpl(Instruction &I, DIExpression *SrcDIExpr,
+   };
+ 
+   // initializer-list helper for applying operators to the source DIExpression.
+-  auto applyOps = [&](ArrayRef<uint64_t> Opcodes) {
++  auto applyOps = [&](ArrayRef<uint64_t> Opcodes) -> DIExpression * {
+     SmallVector<uint64_t, 8> Ops(Opcodes.begin(), Opcodes.end());
+     return doSalvage(Ops);
+   };
+@@ -1916,15 +1871,15 @@ llvm::salvageDebugInfoImpl(Instruction &I, DIExpression *SrcDIExpr,
+ 
+   SmallVector<uint64_t, 8> Ops;
+   if (auto *GEP = dyn_cast<GetElementPtrInst>(&I)) {
+-    if (getSalvageOpsForGEP(GEP, DL, CurrentLocOps, Ops, AdditionalValues))
++    if (getSalvageOpsForGEP(GEP, DL, Ops))
+       return doSalvage(Ops);
+   } else if (auto *BI = dyn_cast<BinaryOperator>(&I)) {
+-    if (getSalvageOpsForBinOp(BI, CurrentLocOps, Ops, AdditionalValues))
++    if (getSalvageOpsForBinOp(BI, Ops))
+       return doSalvage(Ops);
+   }
+-  // *Not* to do: we should not attempt to salvage load instructions,
+-  // because the validity and lifetime of a dbg.value containing
+-  // DW_OP_deref becomes difficult to analyze. See PR40628 for examples.
++    // *Not* to do: we should not attempt to salvage load instructions,
++    // because the validity and lifetime of a dbg.value containing
++    // DW_OP_deref becomes difficult to analyze. See PR40628 for examples.
+   return nullptr;
+ }
+ 
+diff --git a/llvm/test/DebugInfo/NVPTX/debug-info.ll b/llvm/test/DebugInfo/NVPTX/debug-info.ll
+index 15ea41e8ebdd..08a7e037ec49 100644
+--- a/llvm/test/DebugInfo/NVPTX/debug-info.ll
++++ b/llvm/test/DebugInfo/NVPTX/debug-info.ll
+@@ -702,12 +702,12 @@ if.end:                                           ; preds = %if.then, %entry
+ ; CHECK-NEXT:	}
+ ; CHECK-NEXT:	.section	.debug_info
+ ; CHECK-NEXT:	{
+-; CHECK-NEXT:.b32 10034                              // Length of Unit
++; CHECK-NEXT:.b32 10029                              // Length of Unit
+ ; CHECK-NEXT:.b8 2                                   // DWARF version number
+ ; CHECK-NEXT:.b8 0
+ ; CHECK-NEXT:.b32 .debug_abbrev                      // Offset Into Abbrev. Section
+ ; CHECK-NEXT:.b8 8                                   // Address Size (in bytes)
+-; CHECK-NEXT:.b8 1                                   // Abbrev [1] 0xb:0x272b DW_TAG_compile_unit
++; CHECK-NEXT:.b8 1                                   // Abbrev [1] 0xb:0x2726 DW_TAG_compile_unit
+ ; CHECK-NEXT:.b8 0                                   // DW_AT_producer
+ ; CHECK-NEXT:.b8 4                                   // DW_AT_language
+ ; CHECK-NEXT:.b8 0
+@@ -8306,7 +8306,7 @@ if.end:                                           ; preds = %if.then, %entry
+ ; CHECK-NEXT:.b8 3                                   // DW_AT_decl_line
+ ; CHECK-NEXT:.b32 3345                               // DW_AT_type
+ ; CHECK-NEXT:.b8 0                                   // End Of Children Mark
+-; CHECK-NEXT:.b8 40                                  // Abbrev [40] 0x2671:0xc4 DW_TAG_subprogram
++; CHECK-NEXT:.b8 40                                  // Abbrev [40] 0x2671:0xbf DW_TAG_subprogram
+ ; CHECK-NEXT:.b64 Lfunc_begin0                       // DW_AT_low_pc
+ ; CHECK-NEXT:.b64 Lfunc_end0                         // DW_AT_high_pc
+ ; CHECK-NEXT:.b8 1                                   // DW_AT_frame_base
+@@ -8386,7 +8386,7 @@ if.end:                                           ; preds = %if.then, %entry
+ ; CHECK-NEXT:.b8 12                                  // DW_AT_call_file
+ ; CHECK-NEXT:.b8 6                                   // DW_AT_call_line
+ ; CHECK-NEXT:.b8 37                                  // DW_AT_call_column
+-; CHECK-NEXT:.b8 43                                  // Abbrev [43] 0x2711:0x23 DW_TAG_inlined_subroutine
++; CHECK-NEXT:.b8 43                                  // Abbrev [43] 0x2711:0x1e DW_TAG_inlined_subroutine
+ ; CHECK-NEXT:.b32 9791                               // DW_AT_abstract_origin
+ ; CHECK-NEXT:.b64 Ltmp9                              // DW_AT_low_pc
+ ; CHECK-NEXT:.b64 Ltmp10                             // DW_AT_high_pc
+@@ -8395,8 +8395,6 @@ if.end:                                           ; preds = %if.then, %entry
+ ; CHECK-NEXT:.b8 5                                   // DW_AT_call_column
+ ; CHECK-NEXT:.b8 44                                  // Abbrev [44] 0x2729:0x5 DW_TAG_formal_parameter
+ ; CHECK-NEXT:.b32 9820                               // DW_AT_abstract_origin
+-; CHECK-NEXT:.b8 44                                  // Abbrev [44] 0x272e:0x5 DW_TAG_formal_parameter
+-; CHECK-NEXT:.b32 9829                               // DW_AT_abstract_origin
+ ; CHECK-NEXT:.b8 0                                   // End Of Children Mark
+ ; CHECK-NEXT:.b8 0                                   // End Of Children Mark
+ ; CHECK-NEXT:.b8 0                                   // End Of Children Mark
+diff --git a/llvm/test/DebugInfo/limit-arglist-size.ll b/llvm/test/DebugInfo/limit-arglist-size.ll
+deleted file mode 100644
+index 951cc0e1c3cc..000000000000
+--- a/llvm/test/DebugInfo/limit-arglist-size.ll
++++ /dev/null
+@@ -1,63 +0,0 @@
+-; RUN: opt -S -instcombine %s -o - | FileCheck %s
+-
+-; For performance reasons, we currently limit the number of values that can be
+-; referenced by a dbg.value to 16. This test checks that we do not exceed this
+-; limit during salvaging.
+-
+-; CHECK: DIArgList(i32 undef
+-; CHECK-NOT: DW_OP_LLVM_arg, 16
+-
+-target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
+-target triple = "x86_64-unknown-linux-gnu"
+-
+-define i32 @_Z3foov() local_unnamed_addr !dbg !9 {
+-entry:
+-  %call = call i32 @_Z3barv(), !dbg !14
+-  %call1 = call i32 @_Z3barv(), !dbg !14
+-  %add = add nsw i32 %call, %call1, !dbg !14
+-  %call2 = call i32 @_Z3barv(), !dbg !14
+-  %call4 = call i32 @_Z3barv(), !dbg !14
+-  %call6 = call i32 @_Z3barv(), !dbg !14
+-  %call8 = call i32 @_Z3barv(), !dbg !14
+-  %call10 = call i32 @_Z3barv(), !dbg !14
+-  %call12 = call i32 @_Z3barv(), !dbg !14
+-  %call14 = call i32 @_Z3barv(), !dbg !14
+-  %call16 = call i32 @_Z3barv(), !dbg !14
+-  %call18 = call i32 @_Z3barv(), !dbg !14
+-  %call20 = call i32 @_Z3barv(), !dbg !14
+-  %call22 = call i32 @_Z3barv(), !dbg !14
+-  %call24 = call i32 @_Z3barv(), !dbg !14
+-  %call26 = call i32 @_Z3barv(), !dbg !14
+-  %call28 = call i32 @_Z3barv(), !dbg !14
+-  %call30 = call i32 @_Z3barv(), !dbg !14
+-  call void @llvm.dbg.value(metadata !DIArgList(i32 %add, i32 %call30, i32 %call28, i32 %call26, i32 %call24, i32 %call22, i32 %call20, i32 %call18, i32 %call16, i32 %call14, i32 %call12, i32 %call10, i32 %call8, i32 %call6, i32 %call4, i32 %call2), metadata !15, metadata !DIExpression(DW_OP_LLVM_arg, 0, DW_OP_LLVM_arg, 15, DW_OP_plus, DW_OP_LLVM_arg, 14, DW_OP_plus, DW_OP_LLVM_arg, 13, DW_OP_plus, DW_OP_LLVM_arg, 12, DW_OP_plus, DW_OP_LLVM_arg, 11, DW_OP_plus, DW_OP_LLVM_arg, 10, DW_OP_plus, DW_OP_LLVM_arg, 9, DW_OP_plus, DW_OP_LLVM_arg, 8, DW_OP_plus, DW_OP_LLVM_arg, 7, DW_OP_plus, DW_OP_LLVM_arg, 6, DW_OP_plus, DW_OP_LLVM_arg, 5, DW_OP_plus, DW_OP_LLVM_arg, 4, DW_OP_plus, DW_OP_LLVM_arg, 3, DW_OP_plus, DW_OP_LLVM_arg, 2, DW_OP_plus, DW_OP_LLVM_arg, 1, DW_OP_plus, DW_OP_stack_value)), !dbg !16
+-  %call32 = call i32 @_Z3barv(), !dbg !17
+-  ret i32 %call32, !dbg !17
+-}
+-
+-declare dso_local i32 @_Z3barv() local_unnamed_addr
+-
+-declare void @llvm.dbg.value(metadata, metadata, metadata)
+-
+-!llvm.dbg.cu = !{!0}
+-!llvm.module.flags = !{!3, !4, !5, !6, !7}
+-!llvm.ident = !{!8}
+-
+-!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !1, producer: "clang version 13.0.0", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, splitDebugInlining: false, nameTableKind: None)
+-!1 = !DIFile(filename: "limit-arglist-size.cpp", directory: "/")
+-!2 = !{}
+-!3 = !{i32 7, !"Dwarf Version", i32 4}
+-!4 = !{i32 2, !"Debug Info Version", i32 3}
+-!5 = !{i32 1, !"wchar_size", i32 4}
+-!6 = !{i32 7, !"uwtable", i32 1}
+-!7 = !{i32 7, !"frame-pointer", i32 2}
+-!8 = !{!"clang version 13.0.0"}
+-!9 = distinct !DISubprogram(name: "foo", linkageName: "_Z3foov", scope: !10, file: !10, line: 3, type: !11, scopeLine: 3, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !2)
+-!10 = !DIFile(filename: "./limit-arglist-size.cpp", directory: "/")
+-!11 = !DISubroutineType(types: !12)
+-!12 = !{!13}
+-!13 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)
+-!14 = !DILocation(line: 4, scope: !9)
+-!15 = !DILocalVariable(name: "v16", scope: !9, file: !10, line: 4, type: !13)
+-!16 = !DILocation(line: 0, scope: !9)
+-!17 = !DILocation(line: 5, scope: !9)
+diff --git a/llvm/test/DebugInfo/salvage-gep.ll b/llvm/test/DebugInfo/salvage-gep.ll
+deleted file mode 100644
+index 6c31b0ff61de..000000000000
+--- a/llvm/test/DebugInfo/salvage-gep.ll
++++ /dev/null
+@@ -1,56 +0,0 @@
+-; RUN: opt %s -dce -S | FileCheck %s
+-
+-; Tests the salvaging of GEP instructions, specifically struct indexing and
+-; non-constant array indexing.
+-
+-%struct.S = type { i32, i32 }
+-
+-; CHECK: call void @llvm.dbg.value(metadata !DIArgList(%struct.S* %ptr, i64 %offset),
+-; CHECK-SAME: ![[VAR_OFFSET_PTR:[0-9]+]],
+-; CHECK-SAME: !DIExpression(DW_OP_LLVM_arg, 0, DW_OP_LLVM_arg, 1, DW_OP_constu, 8, DW_OP_mul, DW_OP_plus, DW_OP_plus_uconst, 4, DW_OP_stack_value))
+-
+-; CHECK: ![[VAR_OFFSET_PTR]] = !DILocalVariable(name: "offset_ptr"
+-
+-define void @"?foo@@YAXPEAUS@@_J@Z"(%struct.S* %ptr, i64 %offset) !dbg !8 {
+-entry:
+-  call void @llvm.dbg.value(metadata i64 %offset, metadata !20, metadata !DIExpression()), !dbg !24
+-  call void @llvm.dbg.value(metadata %struct.S* %ptr, metadata !21, metadata !DIExpression()), !dbg !24
+-  %arrayidx = getelementptr inbounds %struct.S, %struct.S* %ptr, i64 %offset, !dbg !25
+-  %b = getelementptr inbounds %struct.S, %struct.S* %arrayidx, i32 0, i32 1, !dbg !25
+-  call void @llvm.dbg.value(metadata i32* %b, metadata !22, metadata !DIExpression()), !dbg !24
+-  ret void, !dbg !26
+-}
+-
+-declare void @llvm.dbg.value(metadata, metadata, metadata)
+-
+-!llvm.dbg.cu = !{!0}
+-!llvm.module.flags = !{!3, !4, !5, !6}
+-!llvm.ident = !{!7}
+-
+-!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !1, producer: "clang version 11.0.0", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, nameTableKind: None)
+-!1 = !DIFile(filename: "salvage-gep.cpp", directory: "/")
+-!2 = !{}
+-!3 = !{i32 2, !"CodeView", i32 1}
+-!4 = !{i32 2, !"Debug Info Version", i32 3}
+-!5 = !{i32 1, !"wchar_size", i32 2}
+-!6 = !{i32 7, !"PIC Level", i32 2}
+-!7 = !{!"clang version 11.0.0"}
+-!8 = distinct !DISubprogram(name: "foo", linkageName: "?foo@@YAXPEAUS@@_J@Z", scope: !9, file: !9, line: 7, type: !10, scopeLine: 7, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !0, retainedNodes: !19)
+-!9 = !DIFile(filename: ".\\salvage-gep.cpp", directory: "/")
+-!10 = !DISubroutineType(types: !11)
+-!11 = !{null, !12, !18}
+-!12 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !13, size: 64)
+-!13 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "S", file: !9, line: 2, size: 64, flags: DIFlagTypePassByValue, elements: !14, identifier: ".?AUS@@")
+-!14 = !{!15, !17}
+-!15 = !DIDerivedType(tag: DW_TAG_member, name: "a", scope: !13, file: !9, line: 3, baseType: !16, size: 32)
+-!16 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)
+-!17 = !DIDerivedType(tag: DW_TAG_member, name: "b", scope: !13, file: !9, line: 4, baseType: !16, size: 32, offset: 32)
+-!18 = !DIBasicType(name: "long long int", size: 64, encoding: DW_ATE_signed)
+-!19 = !{!20, !21, !22}
+-!20 = !DILocalVariable(name: "offset", arg: 2, scope: !8, file: !9, line: 7, type: !18)
+-!21 = !DILocalVariable(name: "ptr", arg: 1, scope: !8, file: !9, line: 7, type: !12)
+-!22 = !DILocalVariable(name: "offset_ptr", scope: !8, file: !9, line: 8, type: !23)
+-!23 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !16, size: 64)
+-!24 = !DILocation(line: 0, scope: !8)
+-!25 = !DILocation(line: 8, scope: !8)
+-!26 = !DILocation(line: 9, scope: !8)
+diff --git a/llvm/test/DebugInfo/salvage-nonconst-binop.ll b/llvm/test/DebugInfo/salvage-nonconst-binop.ll
+deleted file mode 100644
+index b470bc1ad2a9..000000000000
+--- a/llvm/test/DebugInfo/salvage-nonconst-binop.ll
++++ /dev/null
+@@ -1,45 +0,0 @@
+-; RUN: opt %s -dce -S | FileCheck %s

+-

+-; Tests the salvaging of binary operators that use more than one non-constant

+-; SSA value.

+-

+-; CHECK: call void @llvm.dbg.value(metadata !DIArgList(i32 %a, i32 %b),

+-; CHECK-SAME: ![[VAR_C:[0-9]+]],

+-; CHECK-SAME: !DIExpression(DW_OP_LLVM_arg, 0, DW_OP_LLVM_arg, 1, DW_OP_plus, DW_OP_stack_value))

+-

+-; CHECK: ![[VAR_C]] = !DILocalVariable(name: "c"

+-

+-define i32 @"?multiply@@YAHHH@Z"(i32 %a, i32 %b) !dbg !8 {

+-entry:

+-  call void @llvm.dbg.value(metadata i32 %b, metadata !12, metadata !DIExpression()), !dbg !13

+-  call void @llvm.dbg.value(metadata i32 %a, metadata !14, metadata !DIExpression()), !dbg !13

+-  %add = add nsw i32 %a, %b, !dbg !15

+-  call void @llvm.dbg.value(metadata i32 %add, metadata !16, metadata !DIExpression()), !dbg !13

+-  %mul = mul nsw i32 %a, %b, !dbg !17

+-  ret i32 %mul, !dbg !17

+-}

+-

+-declare void @llvm.dbg.value(metadata, metadata, metadata)

+-

+-!llvm.dbg.cu = !{!0}

+-!llvm.module.flags = !{!3, !4, !5, !6}

+-!llvm.ident = !{!7}

+-

+-!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !1, producer: "clang version 11.0.0", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, nameTableKind: None)

+-!1 = !DIFile(filename: "test.cpp", directory: "/")

+-!2 = !{}

+-!3 = !{i32 2, !"CodeView", i32 1}

+-!4 = !{i32 2, !"Debug Info Version", i32 3}

+-!5 = !{i32 1, !"wchar_size", i32 2}

+-!6 = !{i32 7, !"PIC Level", i32 2}

+-!7 = !{!"clang version 11.0.0"}

+-!8 = distinct !DISubprogram(name: "multiply", linkageName: "?multiply@@YAHHH@Z", scope: !1, file: !1, line: 1, type: !9, scopeLine: 1, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !2)

+-!9 = !DISubroutineType(types: !10)

+-!10 = !{!11, !11, !11}

+-!11 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)

+-!12 = !DILocalVariable(name: "b", arg: 2, scope: !8, file: !1, line: 1, type: !11)

+-!13 = !DILocation(line: 0, scope: !8)

+-!14 = !DILocalVariable(name: "a", arg: 1, scope: !8, file: !1, line: 1, type: !11)

+-!15 = !DILocation(line: 2, scope: !8)

+-!16 = !DILocalVariable(name: "c", scope: !8, file: !1, line: 2, type: !11)

+-!17 = !DILocation(line: 3, scope: !8)

+diff --git a/llvm/test/Transforms/InstCombine/debuginfo-sink.ll b/llvm/test/Transforms/InstCombine/debuginfo-sink.ll
+index 3fb27637022a..5a8cc78b08c2 100644
+--- a/llvm/test/Transforms/InstCombine/debuginfo-sink.ll
++++ b/llvm/test/Transforms/InstCombine/debuginfo-sink.ll
+@@ -33,25 +33,23 @@ sink1:
+ ; value range.
+ 
+ ; CHECK-LABEL: define i32 @bar(
+-; CHECK:       call void @llvm.dbg.value(metadata <vscale x 4 x i32>* undef,
++; CHECK:       call void @llvm.dbg.value(metadata i32* undef,
+ ; CHECK-NEXT:  br label %sink2
+ 
+-define i32 @bar(<vscale x 4 x i32>* %a, i32 %b) !dbg !70 {
++define i32 @bar(i32 *%a, i32 %b) !dbg !70 {
+ entry:
+-  %gep = getelementptr <vscale x 4 x i32>, <vscale x 4 x i32>* %a, i32 %b
+-  call void @llvm.dbg.value(metadata <vscale x 4 x i32>* %gep, metadata !73, metadata !12), !dbg !74
++  %gep = getelementptr i32, i32 *%a, i32 %b
++  call void @llvm.dbg.value(metadata i32* %gep, metadata !73, metadata !12), !dbg !74
+   br label %sink2
+ 
+ sink2:
+ ; CHECK-LABEL: sink2:
+-; CHECK:       call void @llvm.dbg.value(metadata <vscale x 4 x i32>* %gep,
++; CHECK:       call void @llvm.dbg.value(metadata i32* %gep,
+ ; CHECK-SAME:                    metadata !{{[0-9]+}}, metadata !DIExpression())
+ ; CHECK-NEXT:  load
+-; CHECK-NEXT:  extractelement
+ ; CHECK-NEXT:  ret
+-  %0 = load <vscale x 4 x i32>, <vscale x 4 x i32>* %gep
+-  %extract = extractelement <vscale x 4 x i32> %0, i32 1
+-  ret i32 %extract
++  %0 = load i32, i32* %gep
++  ret i32 %0
+ }
+ 
+ ; This GEP is sunk, and has multiple debug uses in the same block. Check that

+diff --git a/llvm/test/Transforms/Reassociate/undef_intrinsics_when_deleting_instructions.ll b/llvm/test/Transforms/Reassociate/undef_intrinsics_when_deleting_instructions.ll
+index 349da85cc80f..98c51c5cf8bb 100644
+--- a/llvm/test/Transforms/Reassociate/undef_intrinsics_when_deleting_instructions.ll
++++ b/llvm/test/Transforms/Reassociate/undef_intrinsics_when_deleting_instructions.ll
+@@ -1,73 +1,95 @@
+-; RUN: opt < %s -reassociate -S | FileCheck %s

+-

+-; Check that reassociate pass now undefs debug intrinsics that reference a value

+-; that gets dropped and cannot be salvaged.

+-

+-; CHECK-NOT: %add = fadd fast float %a, %b

+-; CHECK: call void @llvm.dbg.value(metadata float undef, metadata [[VAR_X:![0-9]+]], metadata !DIExpression())

+-

+-; CHECK-LABEL: if.then:

+-; CHECK-NOT: %add1 = fadd fast float %add, %c

+-; CHECK: call void @llvm.dbg.value(metadata float undef, metadata [[VAR_Y:![0-9]+]], metadata !DIExpression())

+-; CHECK-LABEL: !0 =

+-; CHECK-DAG: [[VAR_Y]] = !DILocalVariable(name: "y"

+-; CHECK-DAG: [[VAR_X]] = !DILocalVariable(name: "x"

+-

+-define float @"?foo@@YAMMMMM@Z"(float %a, float %b, float %c, float %d) !dbg !8 {

+-entry:

+-  call void @llvm.dbg.value(metadata float %d, metadata !12, metadata !DIExpression()), !dbg !13

+-  call void @llvm.dbg.value(metadata float %c, metadata !14, metadata !DIExpression()), !dbg !13

+-  call void @llvm.dbg.value(metadata float %b, metadata !15, metadata !DIExpression()), !dbg !13

+-  call void @llvm.dbg.value(metadata float %a, metadata !16, metadata !DIExpression()), !dbg !13

+-  %add = fadd fast float %a, %b, !dbg !17

+-  call void @llvm.dbg.value(metadata float %add, metadata !18, metadata !DIExpression()), !dbg !13

+-  %cmp = fcmp fast oeq float %d, 4.000000e+00, !dbg !19

+-  br i1 %cmp, label %if.then, label %return, !dbg !19

++; RUN: opt < %s -reassociate -S | FileCheck %s
+ 
+-if.then:                                          ; preds = %entry

+-  %add1 = fadd fast float %add, %c, !dbg !20

+-  call void @llvm.dbg.value(metadata float %add1, metadata !23, metadata !DIExpression()), !dbg !24

+-  %sub = fsub fast float %add, 1.200000e+01, !dbg !25

+-  %sub2 = fsub fast float %add1, %sub, !dbg !25

+-  %mul = fmul fast float %sub2, 2.000000e+01, !dbg !25

+-  %div = fdiv fast float %mul, 3.000000e+00, !dbg !25

+-  br label %return, !dbg !25

++; Check that reassociate pass now undefs debug intrinsics that reference a value
++; that gets dropped and cannot be salvaged.
+ 
+-return:                                           ; preds = %entry, %if.then

+-  %retval.0 = phi float [ %div, %if.then ], [ 0.000000e+00, %entry ], !dbg !13

+-  ret float %retval.0, !dbg !26

++define hidden i32 @main() local_unnamed_addr {
++entry:
++  %foo = alloca i32, align 4, !dbg !20
++  %foo.0.foo.0..sroa_cast = bitcast i32* %foo to i8*, !dbg !20
++  call void @llvm.lifetime.start.p0i8(i64 4, i8* nonnull %foo.0.foo.0..sroa_cast), !dbg !20
++  store volatile i32 4, i32* %foo, align 4, !dbg !20, !tbaa !21
++  %foo.0.foo.0. = load volatile i32, i32* %foo, align 4, !dbg !25, !tbaa !21
++  %foo.0.foo.0.15 = load volatile i32, i32* %foo, align 4, !dbg !27, !tbaa !21
++  %foo.0.foo.0.16 = load volatile i32, i32* %foo, align 4, !dbg !28, !tbaa !21
++  ; CHECK-NOT: %add = add nsw i32 %foo.0.foo.0., %foo.0.foo.0.15
++  %add = add nsw i32 %foo.0.foo.0., %foo.0.foo.0.15, !dbg !29
++  ; CHECK: call void @llvm.dbg.value(metadata i32 undef, metadata [[VAR_A:![0-9]+]], metadata !DIExpression())
++  call void @llvm.dbg.value(metadata i32 %add, metadata !19, metadata !DIExpression()), !dbg !26
++  %foo.0.foo.0.17 = load volatile i32, i32* %foo, align 4, !dbg !30, !tbaa !21
++  %cmp = icmp eq i32 %foo.0.foo.0.17, 4, !dbg !30
++  br i1 %cmp, label %if.then, label %if.end, !dbg !32
++
++  ; CHECK-LABEL: if.then:
++if.then:
++  ; CHECK-NOT: %add1 = add nsw i32 %add, %foo.0.foo.0.16
++  %add1 = add nsw i32 %add, %foo.0.foo.0.16, !dbg !33
++  ; CHECK: call void @llvm.dbg.value(metadata i32 undef, metadata [[VAR_A]], metadata !DIExpression())
++  call void @llvm.dbg.value(metadata i32 %add1, metadata !19, metadata !DIExpression()), !dbg !26
++  ; CHECK: call void @llvm.dbg.value(metadata i32 undef, metadata [[VAR_CHEESE:![0-9]+]], metadata !DIExpression())
++  call void @llvm.dbg.value(metadata i32 %add, metadata !18, metadata !DIExpression()), !dbg !26
++  %sub = add nsw i32 %add, -12, !dbg !34
++  %sub3 = sub nsw i32 %add1, %sub, !dbg !34
++  %mul = mul nsw i32 %sub3, 20, !dbg !36
++  %div = sdiv i32 %mul, 3, !dbg !37
++  br label %if.end, !dbg !38
++
++if.end:
++  %a.0 = phi i32 [ %div, %if.then ], [ 0, %entry ], !dbg !39
++  call void @llvm.lifetime.end.p0i8(i64 4, i8* nonnull %foo.0.foo.0..sroa_cast), !dbg !40
++  ret i32 %a.0, !dbg !41
+ }
+ 
+-declare void @llvm.dbg.value(metadata, metadata, metadata)

++declare void @llvm.lifetime.start.p0i8(i64 immarg, i8* nocapture) #1
++declare void @llvm.dbg.declare(metadata, metadata, metadata) #2
++declare void @llvm.lifetime.end.p0i8(i64 immarg, i8* nocapture) #1
++declare void @llvm.dbg.value(metadata, metadata, metadata) #2
+ 
+ !llvm.dbg.cu = !{!0}
+ !llvm.module.flags = !{!3, !4, !5, !6}
+ !llvm.ident = !{!7}
+ 
+-!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !1, producer: "clang version 11.0.0", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, nameTableKind: None)

+-!1 = !DIFile(filename: "undef_intrinsics_when_deleting_instructions.cpp", directory: "/")

++!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !1, producer: "clang version 10.0.0", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, debugInfoForProfiling: true, nameTableKind: None)
++!1 = !DIFile(filename: "test.cpp", directory: "F:\")
+ !2 = !{}
+-!3 = !{i32 2, !"CodeView", i32 1}

++!3 = !{i32 2, !"Dwarf Version", i32 4}
+ !4 = !{i32 2, !"Debug Info Version", i32 3}
+ !5 = !{i32 1, !"wchar_size", i32 2}
+ !6 = !{i32 7, !"PIC Level", i32 2}
+-!7 = !{!"clang version 11.0.0"}

+-!8 = distinct !DISubprogram(name: "foo", linkageName: "?foo@@YAMMMMM@Z", scope: !1, file: !1, line: 1, type: !9, scopeLine: 1, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !2)

+-!9 = !DISubroutineType(types: !10)

+-!10 = !{!11, !11, !11, !11, !11}

+-!11 = !DIBasicType(name: "float", size: 32, encoding: DW_ATE_float)

+-!12 = !DILocalVariable(name: "d", arg: 4, scope: !8, file: !1, line: 1, type: !11)

+-!13 = !DILocation(line: 0, scope: !8)

+-!14 = !DILocalVariable(name: "c", arg: 3, scope: !8, file: !1, line: 1, type: !11)

+-!15 = !DILocalVariable(name: "b", arg: 2, scope: !8, file: !1, line: 1, type: !11)

+-!16 = !DILocalVariable(name: "a", arg: 1, scope: !8, file: !1, line: 1, type: !11)

+-!17 = !DILocation(line: 2, scope: !8)

+-!18 = !DILocalVariable(name: "x", scope: !8, file: !1, line: 2, type: !11)

+-!19 = !DILocation(line: 3, scope: !8)

+-!20 = !DILocation(line: 4, scope: !21)

+-!21 = distinct !DILexicalBlock(scope: !22, file: !1, line: 3)

+-!22 = distinct !DILexicalBlock(scope: !8, file: !1, line: 3)

+-!23 = !DILocalVariable(name: "y", scope: !21, file: !1, line: 4, type: !11)

+-!24 = !DILocation(line: 0, scope: !21)

+-!25 = !DILocation(line: 5, scope: !21)

+-!26 = !DILocation(line: 8, scope: !8)

++!7 = !{!"clang version 10.0.0"}
++!8 = distinct !DISubprogram(name: "main", scope: !9, file: !9, line: 1, type: !10, scopeLine: 1, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !0, retainedNodes: !13)
++!9 = !DIFile(filename: "./test.cpp", directory: "F:\")
++!10 = !DISubroutineType(types: !11)
++!11 = !{!12}
++!12 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)
++!13 = !{!14, !16, !17, !18, !19}
++!14 = !DILocalVariable(name: "foo", scope: !8, file: !9, line: 2, type: !15)
++!15 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !12)
++!16 = !DILocalVariable(name: "read1", scope: !8, file: !9, line: 3, type: !12)
++!17 = !DILocalVariable(name: "read2", scope: !8, file: !9, line: 4, type: !12)
++; CHECK: [[VAR_CHEESE]] = !DILocalVariable(name: "cheese"
++!18 = !DILocalVariable(name: "cheese", scope: !8, file: !9, line: 6, type: !12)
++; CHECK: [[VAR_A]] = !DILocalVariable(name: "a"
++!19 = !DILocalVariable(name: "a", scope: !8, file: !9, line: 7, type: !12)
++!20 = !DILocation(line: 2, scope: !8)
++!21 = !{!22, !22, i64 0}
++!22 = !{!"int", !23, i64 0}
++!23 = !{!"omnipotent char", !24, i64 0}
++!24 = !{!"Simple C++ TBAA"}
++!25 = !DILocation(line: 3, scope: !8)
++!26 = !DILocation(line: 0, scope: !8)
++!27 = !DILocation(line: 4, scope: !8)
++!28 = !DILocation(line: 6, scope: !8)
++!29 = !DILocation(line: 7, scope: !8)
++!30 = !DILocation(line: 10, scope: !31)
++!31 = distinct !DILexicalBlock(scope: !8, file: !9, line: 10)
++!32 = !DILocation(line: 10, scope: !8)
++!33 = !DILocation(line: 8, scope: !8)
++!34 = !DILocation(line: 12, scope: !35)
++!35 = distinct !DILexicalBlock(scope: !31, file: !9, line: 10)
++!36 = !DILocation(line: 13, scope: !35)
++!37 = !DILocation(line: 14, scope: !35)
++!38 = !DILocation(line: 15, scope: !35)
++!39 = !DILocation(line: 0, scope: !31)
++!40 = !DILocation(line: 20, scope: !8)
++!41 = !DILocation(line: 19, scope: !8)
diff --git a/sys-devel/llvm/files/cherry/3a6f12f9156bcebf38965d96007bd942024c75be.patch b/sys-devel/llvm/files/cherry/3a6f12f9156bcebf38965d96007bd942024c75be.patch
new file mode 100644
index 0000000..a0f6219
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/3a6f12f9156bcebf38965d96007bd942024c75be.patch
@@ -0,0 +1,145 @@
+commit 3a6f12f9156bcebf38965d96007bd942024c75be
+Author: Arthur Eubanks <aeubanks@google.com>
+Date:   Sat May 29 22:40:07 2021 -0700
+
+    Revert "[NFC] Use ArgListEntry indirect types more in ISel lowering"
+    
+    This reverts commit bc7d15c61da78864b35e3c114294d6e4db645611.
+    
+    Dependent change is to be reverted.
+
+diff --git a/llvm/include/llvm/CodeGen/TargetLowering.h b/llvm/include/llvm/CodeGen/TargetLowering.h
+index a837265446ad..fe9f72e840de 100644
+--- a/llvm/include/llvm/CodeGen/TargetLowering.h
++++ b/llvm/include/llvm/CodeGen/TargetLowering.h
+@@ -290,8 +290,8 @@ public:
+     bool IsSwiftError : 1;
+     bool IsCFGuardTarget : 1;
+     MaybeAlign Alignment = None;
+-    // Type for byval, inalloca, or preallocated.
+-    Type *IndirectType = nullptr;
++    Type *ByValType = nullptr;
++    Type *PreallocatedType = nullptr;
+ 
+     ArgListEntry()
+         : IsSExt(false), IsZExt(false), IsInReg(false), IsSRet(false),
+diff --git a/llvm/include/llvm/IR/InstrTypes.h b/llvm/include/llvm/IR/InstrTypes.h
+index 8ef59f15b252..5b106c200544 100644
+--- a/llvm/include/llvm/IR/InstrTypes.h
++++ b/llvm/include/llvm/IR/InstrTypes.h
+@@ -1729,17 +1729,14 @@ public:
+ 
+   /// Extract the byval type for a call or parameter.
+   Type *getParamByValType(unsigned ArgNo) const {
+-    return Attrs.getParamByValType(ArgNo);
+-  }
+-
+-  /// Extract the inalloca type for a call or parameter.
+-  Type *getParamInAllocaType(unsigned ArgNo) const {
+-    return Attrs.getParamInAllocaType(ArgNo);
++    Type *Ty = Attrs.getParamByValType(ArgNo);
++    return Ty ? Ty : getArgOperand(ArgNo)->getType()->getPointerElementType();
+   }
+ 
+   /// Extract the preallocated type for a call or parameter.
+   Type *getParamPreallocatedType(unsigned ArgNo) const {
+-    return Attrs.getParamPreallocatedType(ArgNo);
++    Type *Ty = Attrs.getParamPreallocatedType(ArgNo);
++    return Ty ? Ty : getArgOperand(ArgNo)->getType()->getPointerElementType();
+   }
+ 
+   /// Extract the number of dereferenceable bytes for a call or
+diff --git a/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp b/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
+index 7009fe0cd652..439b9041bbfd 100644
+--- a/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
++++ b/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
+@@ -1033,7 +1033,7 @@ bool FastISel::lowerCallTo(CallLoweringInfo &CLI) {
+   for (auto &Arg : CLI.getArgs()) {
+     Type *FinalType = Arg.Ty;
+     if (Arg.IsByVal)
+-      FinalType = Arg.IndirectType;
++      FinalType = cast<PointerType>(Arg.Ty)->getElementType();
+     bool NeedsRegBlock = TLI.functionArgumentNeedsConsecutiveRegisters(
+         FinalType, CLI.CallConv, CLI.IsVarArg);
+ 
+@@ -1076,10 +1076,10 @@ bool FastISel::lowerCallTo(CallLoweringInfo &CLI) {
+     }
+     MaybeAlign MemAlign = Arg.Alignment;
+     if (Arg.IsByVal || Arg.IsInAlloca || Arg.IsPreallocated) {
+-      Type *ElementTy = Arg.IndirectType;
+-      assert(ElementTy && "Indirect type not set in ArgListEntry");
+-
+-      unsigned FrameSize = DL.getTypeAllocSize(ElementTy);
++      PointerType *Ty = cast<PointerType>(Arg.Ty);
++      Type *ElementTy = Ty->getElementType();
++      unsigned FrameSize =
++          DL.getTypeAllocSize(Arg.ByValType ? Arg.ByValType : ElementTy);
+ 
+       // For ByVal, alignment should come from FE. BE will guess if this info
+       // is not there, but there are cases it cannot get right.
+diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+index 3594756f433c..01b06279c0f4 100644
+--- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
++++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+@@ -9499,7 +9499,7 @@ TargetLowering::LowerCallTo(TargetLowering::CallLoweringInfo &CLI) const {
+     // FIXME: Split arguments if CLI.IsPostTypeLegalization
+     Type *FinalType = Args[i].Ty;
+     if (Args[i].IsByVal)
+-      FinalType = Args[i].IndirectType;
++      FinalType = cast<PointerType>(Args[i].Ty)->getElementType();
+     bool NeedsRegBlock = functionArgumentNeedsConsecutiveRegisters(
+         FinalType, CLI.CallConv, CLI.IsVarArg);
+     for (unsigned Value = 0, NumValues = ValueVTs.size(); Value != NumValues;
+@@ -9572,10 +9572,11 @@ TargetLowering::LowerCallTo(TargetLowering::CallLoweringInfo &CLI) const {
+       }
+       Align MemAlign;
+       if (Args[i].IsByVal || Args[i].IsInAlloca || Args[i].IsPreallocated) {
+-        Type *ElementTy = Args[i].IndirectType;
+-        assert(ElementTy && "Indirect type not set in ArgListEntry");
++        PointerType *Ty = cast<PointerType>(Args[i].Ty);
++        Type *ElementTy = Ty->getElementType();
+ 
+-        unsigned FrameSize = DL.getTypeAllocSize(ElementTy);
++        unsigned FrameSize = DL.getTypeAllocSize(
++            Args[i].ByValType ? Args[i].ByValType : ElementTy);
+         Flags.setByValSize(FrameSize);
+ 
+         // info is not there but there are cases it cannot get right.
+diff --git a/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp b/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+index 8950bd9a301c..30393298ab72 100644
+--- a/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
++++ b/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+@@ -120,26 +120,17 @@ void TargetLoweringBase::ArgListEntry::setAttributes(const CallBase *Call,
+   Alignment = Attrs.getParamStackAlignment(ArgIdx);
+ 
+   IsByVal = Attrs.hasParamAttribute(ArgIdx, Attribute::ByVal);
+-  IsInAlloca = Attrs.hasParamAttribute(ArgIdx, Attribute::InAlloca);
+-  IsPreallocated = Attrs.hasParamAttribute(ArgIdx, Attribute::Preallocated);
+-
+-  assert(IsByVal + IsInAlloca + IsPreallocated <= 1 &&
+-         "can't have multiple indirect attributes");
+-  IndirectType = nullptr;
++  ByValType = nullptr;
+   if (IsByVal) {
+-    IndirectType = Call->getParamByValType(ArgIdx);
+-    assert(IndirectType && "no byval type?");
++    ByValType = Call->getParamByValType(ArgIdx);
+     if (!Alignment)
+       Alignment = Call->getParamAlign(ArgIdx);
+   }
+-  if (IsInAlloca) {
+-    IndirectType = Call->getParamInAllocaType(ArgIdx);
+-    assert(IndirectType && "no inalloca type?");
+-  }
+-  if (IsPreallocated) {
+-    IndirectType = Call->getParamPreallocatedType(ArgIdx);
+-    assert(IndirectType && "no preallocated type?");
+-  }
++  IsInAlloca = Attrs.hasParamAttribute(ArgIdx, Attribute::InAlloca);
++  IsPreallocated = Attrs.hasParamAttribute(ArgIdx, Attribute::Preallocated);
++  PreallocatedType = nullptr;
++  if (IsPreallocated)
++    PreallocatedType = Call->getParamPreallocatedType(ArgIdx);
+ }
+ 
+ /// Generate a libcall taking the given operands as arguments and returning a
diff --git a/sys-devel/llvm/files/cherry/4125b46232caf6a558470670f87b56ccb46d61aa.patch b/sys-devel/llvm/files/cherry/4125b46232caf6a558470670f87b56ccb46d61aa.patch
new file mode 100644
index 0000000..6ff9982
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/4125b46232caf6a558470670f87b56ccb46d61aa.patch
@@ -0,0 +1,304 @@
+commit 4125b46232caf6a558470670f87b56ccb46d61aa
+Author: Raphael Isemann <teemperor@gmail.com>
+Date:   Fri Jun 11 14:51:17 2021 +0200
+
+    Revert "[lldb] Add support for evaluating expressions in static member functions"
+    
+    This reverts commit 00764c36edf88ae9806e8d57a6addb782e6ceae8 and the
+    follow up d2223c7a49973a61cc2de62992662afa8d19065a.
+    
+    The original patch broke that one could use static member variables while
+    inside a static member functions without having a running target. It seems that
+    LLDB currently requires that static variables are only found via the global
+    variable lookup so that they can get materialized and mapped to the argument
+    struct of the expression.
+    
+    After 00764c36edf88ae9806e8d57a6addb782e6ceae8 static variables of the current
+    class could be found via Clang's lookup which LLDB isn't observing. This
+    resulting in expressions actually containing these variables as normal
+    globals that can't be rewritten to a member of the argument struct.
+    
+    More specifically, in the test TestCPPThis, the expression
+    `expr --j false -- s_a` is now only passing if we have a runnable target.
+    
+    I'll revert the patch as the possible fixes aren't trivial and it degrades
+    the debugging experience more than the issue that the revert patch addressed.
+    
+    The underlying bug can be reproduced before/after this patch by stopping
+    in `TestCPPThis` main function and running: `e -j false -- my_a; A<int>::s_a`.
+    The `my_a` will pull in the `A<int>` class and the second expression will
+    be resolved by Clang on its own (which causes LLDB to not materialize the
+    static variable).
+    
+    Note: A workaround is to just do `::s_a` which will force LLDB to take the global
+    variable lookup.
+
+diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
+index 761e6aa273f7..731b81c61a6f 100644
+--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
++++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
+@@ -810,7 +810,7 @@ void ClangExpressionDeclMap::LookUpLldbClass(NameSearchContext &context) {
+     LLDB_LOG(log, "  CEDM::FEVD Adding type for $__lldb_class: {1}",
+              class_qual_type.getAsString());
+ 
+-    AddContextClassType(context, class_user_type, method_decl);
++    AddContextClassType(context, class_user_type);
+ 
+     if (method_decl->isInstance()) {
+       // self is a pointer to the object
+@@ -1890,9 +1890,8 @@ void ClangExpressionDeclMap::AddOneFunction(NameSearchContext &context,
+   }
+ }
+ 
+-void ClangExpressionDeclMap::AddContextClassType(
+-    NameSearchContext &context, const TypeFromUser &ut,
+-    CXXMethodDecl *context_method) {
++void ClangExpressionDeclMap::AddContextClassType(NameSearchContext &context,
++                                                 const TypeFromUser &ut) {
+   CompilerType copied_clang_type = GuardedCopyType(ut);
+ 
+   Log *log(lldb_private::GetLogIfAllCategoriesSet(LIBLLDB_LOG_EXPRESSIONS));
+@@ -1914,12 +1913,7 @@ void ClangExpressionDeclMap::AddContextClassType(
+         void_clang_type, &void_ptr_clang_type, 1, false, 0);
+ 
+     const bool is_virtual = false;
+-    // If we evaluate an expression inside a static method, we also need to
+-    // make our lldb_expr method static so that Clang denies access to
+-    // non-static members.
+-    // If we don't have a context_method we are evaluating within a context
+-    // object and we can allow access to non-static members.
+-    const bool is_static = context_method ? context_method->isStatic() : false;
++    const bool is_static = false;
+     const bool is_inline = false;
+     const bool is_explicit = false;
+     const bool is_attr_used = true;
+diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
+index 1af5df95821e..93060bd6b587 100644
+--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
++++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
+@@ -607,13 +607,8 @@ private:
+   ///
+   /// \param[in] type
+   ///     The type of the class that serves as the evaluation context.
+-  ///
+-  /// \param[in] context_method
+-  ///     The member function declaration in which the expression is being
+-  ///     evaluated or null if the expression is not evaluated in the context
+-  ///     of a member function.
+-  void AddContextClassType(NameSearchContext &context, const TypeFromUser &type,
+-                           clang::CXXMethodDecl *context_method = nullptr);
++  void AddContextClassType(NameSearchContext &context,
++                           const TypeFromUser &type);
+ 
+   /// Move a type out of the current ASTContext into another, but make sure to
+   /// export all components of the type also.
+diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
+index 1a050fc5ffb4..31707f81a270 100644
+--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
++++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
+@@ -420,7 +420,6 @@ bool ClangExpressionSourceCode::GetText(
+                          module_imports.c_str(), m_name.c_str(),
+                          lldb_local_var_decls.GetData(), tagged_body.c_str());
+       break;
+-    case WrapKind::CppStaticMemberFunction:
+     case WrapKind::CppMemberFunction:
+       wrap_stream.Printf("%s"
+                          "void                                   \n"
+diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.h b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.h
+index 509cab98c875..54ae837fb30f 100644
+--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.h
++++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.h
+@@ -33,13 +33,12 @@ public:
+   enum class WrapKind {
+     /// Wrapped in a non-static member function of a C++ class.
+     CppMemberFunction,
+-    /// Wrapped in a static member function of a C++ class.
+-    CppStaticMemberFunction,
+     /// Wrapped in an instance Objective-C method.
+     ObjCInstanceMethod,
+     /// Wrapped in a static Objective-C method.
+     ObjCStaticMethod,
+     /// Wrapped in a non-member function.
++    /// Note that this is also used for static member functions of a C++ class.
+     Function
+   };
+ 
+diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp b/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
+index 978eb7d0a4f1..7db813d06a1c 100644
+--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
++++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
+@@ -155,35 +155,32 @@ void ClangUserExpression::ScanContext(ExecutionContext &exe_ctx, Status &err) {
+     m_needs_object_ptr = true;
+   } else if (clang::CXXMethodDecl *method_decl =
+           TypeSystemClang::DeclContextGetAsCXXMethodDecl(decl_context)) {
+-    if (m_allow_cxx) {
+-      if (method_decl->isInstance()) {
+-        if (m_enforce_valid_object) {
+-          lldb::VariableListSP variable_list_sp(
+-              function_block->GetBlockVariableList(true));
++    if (m_allow_cxx && method_decl->isInstance()) {
++      if (m_enforce_valid_object) {
++        lldb::VariableListSP variable_list_sp(
++            function_block->GetBlockVariableList(true));
+ 
+-          const char *thisErrorString =
+-              "Stopped in a C++ method, but 'this' "
+-              "isn't available; pretending we are in a "
+-              "generic context";
++        const char *thisErrorString = "Stopped in a C++ method, but 'this' "
++                                      "isn't available; pretending we are in a "
++                                      "generic context";
+ 
+-          if (!variable_list_sp) {
+-            err.SetErrorString(thisErrorString);
+-            return;
+-          }
++        if (!variable_list_sp) {
++          err.SetErrorString(thisErrorString);
++          return;
++        }
+ 
+-          lldb::VariableSP this_var_sp(
+-              variable_list_sp->FindVariable(ConstString("this")));
++        lldb::VariableSP this_var_sp(
++            variable_list_sp->FindVariable(ConstString("this")));
+ 
+-          if (!this_var_sp || !this_var_sp->IsInScope(frame) ||
+-              !this_var_sp->LocationIsValidForFrame(frame)) {
+-            err.SetErrorString(thisErrorString);
+-            return;
+-          }
++        if (!this_var_sp || !this_var_sp->IsInScope(frame) ||
++            !this_var_sp->LocationIsValidForFrame(frame)) {
++          err.SetErrorString(thisErrorString);
++          return;
+         }
+-        m_needs_object_ptr = true;
+       }
++
+       m_in_cplusplus_method = true;
+-      m_in_static_method = !method_decl->isInstance();
++      m_needs_object_ptr = true;
+     }
+   } else if (clang::ObjCMethodDecl *method_decl =
+                  TypeSystemClang::DeclContextGetAsObjCMethodDecl(
+@@ -405,11 +402,9 @@ ClangExpressionSourceCode::WrapKind ClangUserExpression::GetWrapKind() const {
+   assert(m_options.GetExecutionPolicy() != eExecutionPolicyTopLevel &&
+          "Top level expressions aren't wrapped.");
+   using Kind = ClangExpressionSourceCode::WrapKind;
+-  if (m_in_cplusplus_method) {
+-    if (m_in_static_method)
+-      return Kind::CppStaticMemberFunction;
++  if (m_in_cplusplus_method)
+     return Kind::CppMemberFunction;
+-  } else if (m_in_objectivec_method) {
++  else if (m_in_objectivec_method) {
+     if (m_in_static_method)
+       return Kind::ObjCStaticMethod;
+     return Kind::ObjCInstanceMethod;
+diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h b/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h
+index 5f6db2f80978..b628f6debf66 100644
+--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h
++++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h
+@@ -254,7 +254,7 @@ private:
+   bool m_in_objectivec_method = false;
+   /// True if the expression is compiled as a static (or class) method
+   /// (currently true if it was parsed when exe_ctx was in an Objective-C class
+-  /// method or static C++ member function).
++  /// method).
+   bool m_in_static_method = false;
+   /// True if "this" or "self" must be looked up and passed in.  False if the
+   /// expression doesn't really use them and they can be NULL.
+diff --git a/lldb/test/API/lang/cpp/stopped_in_static_member_function/Makefile b/lldb/test/API/lang/cpp/stopped_in_static_member_function/Makefile
+deleted file mode 100644
+index 99998b20bcb0..000000000000
+--- a/lldb/test/API/lang/cpp/stopped_in_static_member_function/Makefile
++++ /dev/null
+@@ -1,3 +0,0 @@
+-CXX_SOURCES := main.cpp
+-
+-include Makefile.rules
+diff --git a/lldb/test/API/lang/cpp/stopped_in_static_member_function/TestStoppedInStaticMemberFunction.py b/lldb/test/API/lang/cpp/stopped_in_static_member_function/TestStoppedInStaticMemberFunction.py
+deleted file mode 100644
+index b69263a00fd2..000000000000
+--- a/lldb/test/API/lang/cpp/stopped_in_static_member_function/TestStoppedInStaticMemberFunction.py
++++ /dev/null
+@@ -1,41 +0,0 @@
+-import lldb
+-from lldbsuite.test.decorators import *
+-from lldbsuite.test.lldbtest import *
+-from lldbsuite.test import lldbutil
+-
+-
+-class TestCase(TestBase):
+-
+-    mydir = TestBase.compute_mydir(__file__)
+-
+-    # On Windows we can lookup the declarations of static members but finding
+-    # up the underlying symbols doesn't work yet.
+-    @expectedFailureAll(oslist=["windows"])
+-    @no_debug_info_test
+-    def test(self):
+-        self.build()
+-        lldbutil.run_to_source_breakpoint(self, "// break in static member function", lldb.SBFileSpec("main.cpp"))
+-
+-        # Evaluate a static member and call a static member function.
+-        self.expect_expr("static_member_var", result_type="int", result_value="2")
+-        self.expect_expr("static_const_member_var", result_type="const int", result_value="3")
+-        self.expect_expr("static_constexpr_member_var", result_type="const int", result_value="4")
+-        self.expect_expr("static_func()", result_type="int", result_value="6")
+-
+-        # Check that accessing non-static members just reports a diagnostic.
+-        self.expect("expr member_var", error=True,
+-                    substrs=["invalid use of member 'member_var' in static member function"])
+-        self.expect("expr member_func()", error=True,
+-                    substrs=["call to non-static member function without an object argument"])
+-        self.expect("expr this", error=True,
+-                    substrs=["invalid use of 'this' outside of a non-static member function"])
+-
+-        # Continue to a non-static member function of the same class and make
+-        # sure that evaluating non-static members now works.
+-        breakpoint = self.target().BreakpointCreateBySourceRegex(
+-            "// break in member function", lldb.SBFileSpec("main.cpp"))
+-        self.assertNotEqual(breakpoint.GetNumResolvedLocations(), 0)
+-        stopped_threads = lldbutil.continue_to_breakpoint(self.process(), breakpoint)
+-
+-        self.expect_expr("member_var", result_type="int", result_value="1")
+-        self.expect_expr("member_func()", result_type="int", result_value="5")
+diff --git a/lldb/test/API/lang/cpp/stopped_in_static_member_function/main.cpp b/lldb/test/API/lang/cpp/stopped_in_static_member_function/main.cpp
+deleted file mode 100644
+index 8c8b7c183903..000000000000
+--- a/lldb/test/API/lang/cpp/stopped_in_static_member_function/main.cpp
++++ /dev/null
+@@ -1,31 +0,0 @@
+-struct A {
+-  int member_var = 1;
+-  static int static_member_var;
+-  static const int static_const_member_var;
+-  static constexpr int static_constexpr_member_var = 4;
+-  int member_func() { return 5; }
+-  static int static_func() { return 6; }
+-
+-  static int context_static_func() {
+-    int i = static_member_var;
+-    i += static_func();
+-    return i; // break in static member function
+-  }
+-
+-  int context_member_func() {
+-    int i = member_var;
+-    i += member_func();
+-    return i; // break in member function
+-  }
+-};
+-
+-int A::static_member_var = 2;
+-const int A::static_const_member_var = 3;
+-constexpr int A::static_constexpr_member_var;
+-
+-int main() {
+-  int i = A::context_static_func();
+-  A a;
+-  a.context_member_func();
+-  return i;
+-}
diff --git a/sys-devel/llvm/files/cherry/50b62731452cb83979bbf3c06e828d26a4698dca.patch b/sys-devel/llvm/files/cherry/50b62731452cb83979bbf3c06e828d26a4698dca.patch
new file mode 100644
index 0000000..b5a3690
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/50b62731452cb83979bbf3c06e828d26a4698dca.patch
@@ -0,0 +1,96 @@
+commit 50b62731452cb83979bbf3c06e828d26a4698dca
+Author: Guozhi Wei <carrot@google.com>
+Date:   Wed Jul 28 19:00:45 2021 -0700
+
+    [MBP] findBestLoopTopHelper should exit if OldTop is not a chain header
+    
+    Function findBestLoopTopHelper tries to find a new loop top block which can also
+    fall through to OldTop, but it's impossible if OldTop is not a chain header, so
+    it should exit immediately.
+    
+    Differential Revision: https://reviews.llvm.org/D106329
+
+diff --git a/llvm/lib/CodeGen/MachineBlockPlacement.cpp b/llvm/lib/CodeGen/MachineBlockPlacement.cpp
+index f61142d202eb..27c109242340 100644
+--- a/llvm/lib/CodeGen/MachineBlockPlacement.cpp
++++ b/llvm/lib/CodeGen/MachineBlockPlacement.cpp
+@@ -2050,6 +2050,8 @@ MachineBlockPlacement::findBestLoopTopHelper(
+   BlockChain &HeaderChain = *BlockToChain[OldTop];
+   if (!LoopBlockSet.count(*HeaderChain.begin()))
+     return OldTop;
++  if (OldTop != *HeaderChain.begin())
++    return OldTop;
+ 
+   LLVM_DEBUG(dbgs() << "Finding best loop top for: " << getBlockName(OldTop)
+                     << "\n");
+diff --git a/llvm/test/CodeGen/ARM/mbp.ll b/llvm/test/CodeGen/ARM/mbp.ll
+new file mode 100644
+index 000000000000..3741b4b4c500
+--- /dev/null
++++ b/llvm/test/CodeGen/ARM/mbp.ll
+@@ -0,0 +1,65 @@
++; RUN: llc < %s | FileCheck %s
++target datalayout = "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64"
++target triple = "thumbv7-unknown-linux-gnueabihf"
++
++%Target = type { %Target*, %List* }
++%List = type { i32, i32* }
++
++; The entry block should be the first block of the function.
++; CHECK-LABEL: foo
++; CHECK:       %entry
++; CHECK:       %for.body
++; CHECK:       %for.inc
++; CHECK:       %if.then
++; CHECK:       %for.cond.i
++; CHECK:       %for.body.i
++; CHECK:       %return
++
++define i1 @foo(%Target** %ha, i32 %he) !prof !39 {
++entry:
++  %TargetPtr = load %Target*, %Target** %ha, align 4
++  %cmp1 = icmp eq %Target* %TargetPtr, null
++  br i1 %cmp1, label %return, label %for.body, !prof !50
++
++for.body:
++  %TargetPhi = phi %Target* [ %NextPtr, %for.inc ], [ %TargetPtr, %entry ]
++  %ListAddr = getelementptr inbounds %Target, %Target* %TargetPhi, i32 0, i32 1
++  %ListPtr = load %List*, %List** %ListAddr, align 4
++  %cmp2 = icmp eq %List* %ListPtr, null
++  br i1 %cmp2, label %for.inc, label %if.then, !prof !59
++
++if.then:
++  %lenAddr = getelementptr inbounds %List, %List* %ListPtr, i32 0, i32 0
++  %len = load i32, i32* %lenAddr, align 4
++  %ptr = getelementptr inbounds %List, %List* %ListPtr, i32 0, i32 1
++  %ptr2 = load i32*, i32** %ptr, align 4
++  br label %for.cond.i
++
++for.cond.i:
++  %i = phi i32 [ %len, %if.then ], [ %index, %for.body.i ]
++  %index = add nsw i32 %i, -1
++  %cmp3 = icmp sgt i32 %i, 0
++  br i1 %cmp3, label %for.body.i, label %for.inc, !prof !75
++
++for.body.i:
++  %ptr3 = getelementptr inbounds i32, i32* %ptr2, i32 %index
++  %data = load i32, i32* %ptr3, align 4
++  %cmp4 = icmp eq i32 %data, %he
++  br i1 %cmp4, label %return, label %for.cond.i, !prof !79
++
++for.inc:
++  %NextAddr = getelementptr inbounds %Target, %Target* %TargetPhi, i32 0, i32 0
++  %NextPtr = load %Target*, %Target** %NextAddr, align 4
++  %cmp5 = icmp eq %Target* %NextPtr, null
++  br i1 %cmp5, label %return, label %for.body, !prof !50
++
++return:
++  %retval = phi i1 [ false, %entry ], [ true, %for.body.i ], [ false, %for.inc ]
++  ret i1 %retval
++}
++
++!39 = !{!"function_entry_count", i64 226}
++!50 = !{!"branch_weights", i32 451, i32 1}
++!59 = !{!"branch_weights", i32 1502, i32 1}
++!75 = !{!"branch_weights", i32 301, i32 1}
++!79 = !{!"branch_weights", i32 1, i32 301}
diff --git a/sys-devel/llvm/files/cherry/52aeacfbf5ce5f949efe0eae029e56db171ea1f7.patch b/sys-devel/llvm/files/cherry/52aeacfbf5ce5f949efe0eae029e56db171ea1f7.patch
new file mode 100644
index 0000000..c4649d6
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/52aeacfbf5ce5f949efe0eae029e56db171ea1f7.patch
@@ -0,0 +1,205 @@
+commit 52aeacfbf5ce5f949efe0eae029e56db171ea1f7
+Author: Roman Lebedev <lebedev.ri@gmail.com>
+Date:   Fri Jul 9 13:36:21 2021 +0300
+
+    Revert "Temporarily do not drop volatile stores before unreachable"
+    
+    This reverts commit 4e413e16216d0c94ada2171f3c59e0a85f4fa4b6,
+    which landed almost 10 months ago under premise that the original behavior
+    didn't match reality and was breaking users, even though it was correct as per
+    the LangRef. But the LangRef change still hasn't appeared, which might suggest
+    that the affected parties aren't really worried about this problem.
+    
+    Please refer to discussion in:
+    * https://reviews.llvm.org/D87399 (`Revert "[InstCombine] erase instructions leading up to unreachable"`)
+    * https://reviews.llvm.org/D53184 (`[LangRef] Clarify semantics of volatile operations.`)
+    * https://reviews.llvm.org/D87149 (`[InstCombine] erase instructions leading up to unreachable`)
+    
+    clang has `-Wnull-dereference` which will diagnose the obvious cases
+    of null dereference, it was adjusted in f4877c78c0fc98be47b926439bbfe33d5e1d1b6d,
+    but it will only catch the cases where the pointer is a null literal,
+    it will not catch the cases where an arbitrary store is expected to trap.
+    
+    Differential Revision: https://reviews.llvm.org/D105338
+
+diff --git a/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp b/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
+index e00bcf8826d0..7e4b7d0b636c 100644
+--- a/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
++++ b/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
+@@ -2888,14 +2888,6 @@ Instruction *InstCombinerImpl::visitUnreachableInst(UnreachableInst &I) {
+     // Otherwise, this instruction can be freely erased,
+     // even if it is not side-effect free.
+ 
+-    // Temporarily disable removal of volatile stores preceding unreachable,
+-    // pending a potential LangRef change permitting volatile stores to trap.
+-    // TODO: Either remove this code, or properly integrate the check into
+-    // isGuaranteedToTransferExecutionToSuccessor().
+-    if (auto *SI = dyn_cast<StoreInst>(Prev))
+-      if (SI->isVolatile())
+-        return nullptr; // Can not drop this instruction. We're done here.
+-
+     // A value may still have uses before we process it here (for example, in
+     // another unreachable block), so convert those to poison.
+     replaceInstUsesWith(*Prev, PoisonValue::get(Prev->getType()));
+diff --git a/llvm/lib/Transforms/Utils/Local.cpp b/llvm/lib/Transforms/Utils/Local.cpp
+index cfbc24c0001f..2ddf75229f41 100644
+--- a/llvm/lib/Transforms/Utils/Local.cpp
++++ b/llvm/lib/Transforms/Utils/Local.cpp
+@@ -2297,9 +2297,6 @@ static bool markAliveBlocks(Function &F,
+         // that they should be changed to unreachable by passes that can't
+         // modify the CFG.
+ 
+-        // Don't touch volatile stores.
+-        if (SI->isVolatile()) continue;
+-
+         Value *Ptr = SI->getOperand(1);
+ 
+         if (isa<UndefValue>(Ptr) ||
+diff --git a/llvm/lib/Transforms/Utils/SimplifyCFG.cpp b/llvm/lib/Transforms/Utils/SimplifyCFG.cpp
+index f08ab18b15b2..fa4b8c9a28ce 100644
+--- a/llvm/lib/Transforms/Utils/SimplifyCFG.cpp
++++ b/llvm/lib/Transforms/Utils/SimplifyCFG.cpp
+@@ -4672,14 +4672,6 @@ bool SimplifyCFGOpt::simplifyUnreachable(UnreachableInst *UI) {
+     // Otherwise, this instruction can be freely erased,
+     // even if it is not side-effect free.
+ 
+-    // Temporarily disable removal of volatile stores preceding unreachable,
+-    // pending a potential LangRef change permitting volatile stores to trap.
+-    // TODO: Either remove this code, or properly integrate the check into
+-    // isGuaranteedToTransferExecutionToSuccessor().
+-    if (auto *SI = dyn_cast<StoreInst>(&*BBI))
+-      if (SI->isVolatile())
+-        break; // Can not drop this instruction. We're done here.
+-
+     // Note that deleting EH's here is in fact okay, although it involves a bit
+     // of subtle reasoning. If this inst is an EH, all the predecessors of this
+     // block will be the unwind edges of Invoke/CatchSwitch/CleanupReturn,
+diff --git a/llvm/test/CodeGen/X86/indirect-branch-tracking-eh2.ll b/llvm/test/CodeGen/X86/indirect-branch-tracking-eh2.ll
+index b6a6ff35ea9c..32e984df8eb3 100644
+--- a/llvm/test/CodeGen/X86/indirect-branch-tracking-eh2.ll
++++ b/llvm/test/CodeGen/X86/indirect-branch-tracking-eh2.ll
+@@ -3,51 +3,38 @@
+ 
+ ; NUM-COUNT-3: endbr64
+ 
+-;SJLJ:       main:                                  # @main
+-;SJLJ-NEXT: .Lfunc_begin0:
+-;SJLJ-NEXT: # %bb.0:                                # %entry
+-;SJLJ-NEXT:         endbr64
+-;SJLJ-NEXT:         pushq   %rbp
+-;SJLJ:               callq   _Unwind_SjLj_Register
+-;SJLJ-NEXT: .Ltmp0:
+-;SJLJ-NEXT:         callq   _Z3foov
+-;SJLJ-NEXT: .Ltmp1:
+-;SJLJ-NEXT: # %bb.1:                                # %invoke.cont
+-;SJLJ-NEXT:         movl
+-;SJLJ-NEXT: .LBB0_7:                                # %return
+-;SJLJ:               callq   _Unwind_SjLj_Unregister
+-;SJLJ:               retq
+-;SJLJ-NEXT: .LBB0_9:
+-;SJLJ-NEXT:         endbr64
+-;SJLJ-NEXT:         movl
+-;SJLJ-NEXT:         cmpl
+-;SJLJ-NEXT:         jb      .LBB0_10
+-;SJLJ-NEXT: # %bb.11:
+-;SJLJ-NEXT:         ud2
+-;SJLJ-NEXT: .LBB0_10:
+-;SJLJ-NEXT:         leaq    .LJTI0_0(%rip), %rcx
+-;SJLJ-NEXT:         jmpq    *(%rcx,%rax,8)
+-;SJLJ-NEXT: .LBB0_2:                                # %lpad
+-;SJLJ-NEXT: .Ltmp2:
+-;SJLJ-NEXT:         endbr64
+-;SJLJ:               jne     .LBB0_4
+-;SJLJ-NEXT: # %bb.3:                                # %catch3
+-;SJLJ:               callq   __cxa_begin_catch
+-;SJLJ:               jmp     .LBB0_6
+-;SJLJ-NEXT: .LBB0_4:                                # %catch.fallthrough
+-;SJLJ-NEXT:         cmpl
+-;SJLJ-NEXT:         jne     .LBB0_8
+-;SJLJ-NEXT: # %bb.5:                                # %catch
+-;SJLJ:               callq   __cxa_begin_catch
+-;SJLJ:               cmpb
+-;SJLJ-NEXT: .LBB0_6:                                # %return
+-;SJLJ:               callq   __cxa_end_catch
+-;SJLJ-NEXT:         jmp     .LBB0_7
+-;SJLJ-NEXT: .LBB0_8:                                # %eh.resume
+-;SJLJ-NEXT:         movl
+-;SJLJ-NEXT: .Lfunc_end0:
+-;SJLJ:      .LJTI0_0:
+-;SJLJ-NEXT:         .quad   .LBB0_2
++; SJLJ-LABEL: main:
++; SJLJ:       # %bb.0: # %entry
++; SJLJ-NEXT:    endbr64
++; SJLJ:         callq _Unwind_SjLj_Register@PLT
++; SJLJ-NEXT:  .Ltmp0:
++; SJLJ-NEXT:    callq _Z3foov
++; SJLJ-NEXT:  .Ltmp1:
++; SJLJ-NEXT:  # %bb.1: # %invoke.cont
++; SJLJ:       .LBB0_6: # %return
++; SJLJ:         callq _Unwind_SjLj_Unregister@PLT
++; SJLJ:         retq
++; SJLJ-NEXT:  .LBB0_7:
++; SJLJ-NEXT:    endbr64
++; SJLJ:         jb .LBB0_8
++; SJLJ-NEXT:  # %bb.9:
++; SJLJ-NEXT:    ud2
++; SJLJ-NEXT:  .LBB0_8:
++; SJLJ:         jmpq *(%rcx,%rax,8)
++; SJLJ-NEXT:  .LBB0_2: # %lpad
++; SJLJ-NEXT:  .Ltmp2:
++; SJLJ-NEXT:    endbr64
++; SJLJ:         jne .LBB0_4
++; SJLJ-NEXT:  # %bb.3: # %catch3
++; SJLJ:         callq __cxa_begin_catch
++; SJLJ:         jmp .LBB0_5
++; SJLJ-NEXT:  .LBB0_4: # %catch
++; SJLJ:         callq __cxa_begin_catch
++; SJLJ:         cmpb $3, %al
++; SJLJ-NEXT:  .LBB0_5: # %return
++; SJLJ-NEXT:    setne %cl
++; SJLJ:         callq __cxa_end_catch
++; SJLJ-NEXT:    jmp .LBB0_6
+ 
+ @_ZTIi = external dso_local constant i8*
+ @_ZTIc = external dso_local constant i8*
+diff --git a/llvm/test/Transforms/InstCombine/volatile_store.ll b/llvm/test/Transforms/InstCombine/volatile_store.ll
+index 105ec83056d6..ae9e512afd6c 100644
+--- a/llvm/test/Transforms/InstCombine/volatile_store.ll
++++ b/llvm/test/Transforms/InstCombine/volatile_store.ll
+@@ -25,7 +25,6 @@ define void @volatile_store_before_unreachable(i1 %c, i8* %p) {
+ ; CHECK-LABEL: @volatile_store_before_unreachable(
+ ; CHECK-NEXT:    br i1 [[C:%.*]], label [[TRUE:%.*]], label [[FALSE:%.*]]
+ ; CHECK:       true:
+-; CHECK-NEXT:    store volatile i8 0, i8* [[P:%.*]], align 1
+ ; CHECK-NEXT:    unreachable
+ ; CHECK:       false:
+ ; CHECK-NEXT:    ret void
+diff --git a/llvm/test/Transforms/SimplifyCFG/trapping-load-unreachable.ll b/llvm/test/Transforms/SimplifyCFG/trapping-load-unreachable.ll
+index e437f40cbe75..06b0242f7850 100644
+--- a/llvm/test/Transforms/SimplifyCFG/trapping-load-unreachable.ll
++++ b/llvm/test/Transforms/SimplifyCFG/trapping-load-unreachable.ll
+@@ -76,8 +76,8 @@ entry:
+ define void @test3() nounwind {
+ ; CHECK-LABEL: @test3(
+ ; CHECK-NEXT:  entry:
+-; CHECK-NEXT:    store volatile i32 4, i32* null, align 4
+-; CHECK-NEXT:    ret void
++; CHECK-NEXT:    call void @llvm.trap()
++; CHECK-NEXT:    unreachable
+ ;
+ entry:
+   store volatile i32 4, i32* null
+@@ -101,11 +101,8 @@ entry:
+ define void @test4(i1 %C, i32* %P) {
+ ; CHECK-LABEL: @test4(
+ ; CHECK-NEXT:  entry:
+-; CHECK-NEXT:    br i1 [[C:%.*]], label [[T:%.*]], label [[F:%.*]]
+-; CHECK:       T:
+-; CHECK-NEXT:    store volatile i32 0, i32* [[P:%.*]], align 4
+-; CHECK-NEXT:    unreachable
+-; CHECK:       F:
++; CHECK-NEXT:    [[TMP0:%.*]] = xor i1 [[C:%.*]], true
++; CHECK-NEXT:    call void @llvm.assume(i1 [[TMP0]])
+ ; CHECK-NEXT:    ret void
+ ;
+ entry:
diff --git a/sys-devel/llvm/files/cherry/5f6fec2404c5135247ae9e4e515e8d9d3242f790.patch b/sys-devel/llvm/files/cherry/5f6fec2404c5135247ae9e4e515e8d9d3242f790.patch
deleted file mode 100644
index bebd008..0000000
--- a/sys-devel/llvm/files/cherry/5f6fec2404c5135247ae9e4e515e8d9d3242f790.patch
+++ /dev/null
@@ -1,243 +0,0 @@
-From 5f6fec2404c5135247ae9e4e515e8d9d3242f790 Mon Sep 17 00:00:00 2001
-From: Connor Abbott <cwabbott0@gmail.com>
-Date: Wed, 27 Nov 2019 14:09:13 +0100
-Subject: [PATCH] AMDGPU: Fix handling of infinite loops in fragment shaders
-
-Summary:
-Due to the fact that kill is just a normal intrinsic, even though it's
-supposed to terminate the thread, we can end up with provably infinite
-loops that are actually supposed to end successfully. The
-AMDGPUUnifyDivergentExitNodes pass breaks up these loops, but because
-there's no obvious place to make the loop branch to, it just makes it
-return immediately, which skips the exports that are supposed to happen
-at the end and hangs the GPU if all the threads end up being killed.
-
-While it would be nice if the fact that kill terminates the thread were
-modeled in the IR, I think that the structurizer as-is would make a mess if we
-did that when the kill is inside control flow. For now, we just add a null
-export at the end to make sure that it always exports something, which fixes
-the immediate problem without penalizing the more common case. This means that
-we sometimes do two "done" exports when only some of the threads enter the
-discard loop, but from tests the hardware seems ok with that.
-
-This fixes dEQP-VK.graphicsfuzz.while-inside-switch with radv.
-
-Reviewers: arsenm, nhaehnle
-
-Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, hiraditya, llvm-commits
-
-Tags: #llvm
-
-Differential Revision: https://reviews.llvm.org/D70781
-
-(cherry picked from commit 87d98c149504f9b0751189744472d7cc94883960)
----
- .../AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp  | 79 +++++++++++++++++--
- .../test/CodeGen/AMDGPU/kill-infinite-loop.ll | 68 ++++++++++++++++
- 2 files changed, 141 insertions(+), 6 deletions(-)
- create mode 100644 llvm/test/CodeGen/AMDGPU/kill-infinite-loop.ll
-
-diff --git a/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp b/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
-index 191f603a66d6..01bb60f07f2e 100644
---- a/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
-+++ b/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
-@@ -34,6 +34,7 @@
- #include "llvm/IR/InstrTypes.h"
- #include "llvm/IR/Instructions.h"
- #include "llvm/IR/Intrinsics.h"
-+#include "llvm/IR/IRBuilder.h"
- #include "llvm/IR/Type.h"
- #include "llvm/InitializePasses.h"
- #include "llvm/Pass.h"
-@@ -117,24 +118,58 @@ static bool isUniformlyReached(const LegacyDivergenceAnalysis &DA,
-   return true;
- }
- 
-+static void removeDoneExport(Function &F) {
-+  ConstantInt *BoolFalse = ConstantInt::getFalse(F.getContext());
-+  for (BasicBlock &BB : F) {
-+    for (Instruction &I : BB) {
-+      if (IntrinsicInst *Intrin = llvm::dyn_cast<IntrinsicInst>(&I)) {
-+        if (Intrin->getIntrinsicID() == Intrinsic::amdgcn_exp) {
-+          Intrin->setArgOperand(6, BoolFalse); // done
-+        } else if (Intrin->getIntrinsicID() == Intrinsic::amdgcn_exp_compr) {
-+          Intrin->setArgOperand(4, BoolFalse); // done
-+        }
-+      }
-+    }
-+  }
-+}
-+
- static BasicBlock *unifyReturnBlockSet(Function &F,
-                                        ArrayRef<BasicBlock *> ReturningBlocks,
-+                                       bool InsertExport,
-                                        const TargetTransformInfo &TTI,
-                                        StringRef Name) {
-   // Otherwise, we need to insert a new basic block into the function, add a PHI
-   // nodes (if the function returns values), and convert all of the return
-   // instructions into unconditional branches.
-   BasicBlock *NewRetBlock = BasicBlock::Create(F.getContext(), Name, &F);
-+  IRBuilder<> B(NewRetBlock);
-+
-+  if (InsertExport) {
-+    // Ensure that there's only one "done" export in the shader by removing the
-+    // "done" bit set on the original final export. More than one "done" export
-+    // can lead to undefined behavior.
-+    removeDoneExport(F);
-+
-+    Value *Undef = UndefValue::get(B.getFloatTy());
-+    B.CreateIntrinsic(Intrinsic::amdgcn_exp, { B.getFloatTy() },
-+                      {
-+                        B.getInt32(9), // target, SQ_EXP_NULL
-+                        B.getInt32(0), // enabled channels
-+                        Undef, Undef, Undef, Undef, // values
-+                        B.getTrue(), // done
-+                        B.getTrue(), // valid mask
-+                      });
-+  }
- 
-   PHINode *PN = nullptr;
-   if (F.getReturnType()->isVoidTy()) {
--    ReturnInst::Create(F.getContext(), nullptr, NewRetBlock);
-+    B.CreateRetVoid();
-   } else {
-     // If the function doesn't return void... add a PHI node to the block...
--    PN = PHINode::Create(F.getReturnType(), ReturningBlocks.size(),
--                         "UnifiedRetVal");
--    NewRetBlock->getInstList().push_back(PN);
--    ReturnInst::Create(F.getContext(), PN, NewRetBlock);
-+    PN = B.CreatePHI(F.getReturnType(), ReturningBlocks.size(),
-+                     "UnifiedRetVal");
-+    assert(!InsertExport);
-+    B.CreateRet(PN);
-   }
- 
-   // Loop over all of the blocks, replacing the return instruction with an
-@@ -173,6 +208,8 @@ bool AMDGPUUnifyDivergentExitNodes::runOnFunction(Function &F) {
-   // Dummy return block for infinite loop.
-   BasicBlock *DummyReturnBB = nullptr;
- 
-+  bool InsertExport = false;
-+
-   for (BasicBlock *BB : PDT.getRoots()) {
-     if (isa<ReturnInst>(BB->getTerminator())) {
-       if (!isUniformlyReached(DA, *BB))
-@@ -188,6 +225,36 @@ bool AMDGPUUnifyDivergentExitNodes::runOnFunction(Function &F) {
-                                            "DummyReturnBlock", &F);
-         Type *RetTy = F.getReturnType();
-         Value *RetVal = RetTy->isVoidTy() ? nullptr : UndefValue::get(RetTy);
-+
-+        // For pixel shaders, the producer guarantees that an export is
-+        // executed before each return instruction. However, if there is an
-+        // infinite loop and we insert a return ourselves, we need to uphold
-+        // that guarantee by inserting a null export. This can happen e.g. in
-+        // an infinite loop with kill instructions, which is supposed to
-+        // terminate. However, we don't need to do this if there is a non-void
-+        // return value, since then there is an epilog afterwards which will
-+        // still export.
-+        //
-+        // Note: In the case where only some threads enter the infinite loop,
-+        // this can result in the null export happening redundantly after the
-+        // original exports. However, The last "real" export happens after all
-+        // the threads that didn't enter an infinite loop converged, which
-+        // means that the only extra threads to execute the null export are
-+        // threads that entered the infinite loop, and they only could've
-+        // exited through being killed which sets their exec bit to 0.
-+        // Therefore, unless there's an actual infinite loop, which can have
-+        // invalid results, or there's a kill after the last export, which we
-+        // assume the frontend won't do, this export will have the same exec
-+        // mask as the last "real" export, and therefore the valid mask will be
-+        // overwritten with the same value and will still be correct. Also,
-+        // even though this forces an extra unnecessary export wait, we assume
-+        // that this happens rare enough in practice to that we don't have to
-+        // worry about performance.
-+        if (F.getCallingConv() == CallingConv::AMDGPU_PS &&
-+            RetTy->isVoidTy()) {
-+          InsertExport = true;
-+        }
-+
-         ReturnInst::Create(F.getContext(), RetVal, DummyReturnBB);
-         ReturningBlocks.push_back(DummyReturnBB);
-       }
-@@ -260,6 +327,6 @@ bool AMDGPUUnifyDivergentExitNodes::runOnFunction(Function &F) {
-   const TargetTransformInfo &TTI
-     = getAnalysis<TargetTransformInfoWrapperPass>().getTTI(F);
- 
--  unifyReturnBlockSet(F, ReturningBlocks, TTI, "UnifiedReturnBlock");
-+  unifyReturnBlockSet(F, ReturningBlocks, InsertExport, TTI, "UnifiedReturnBlock");
-   return true;
- }
-diff --git a/test/CodeGen/AMDGPU/kill-infinite-loop.ll b/test/CodeGen/AMDGPU/kill-infinite-loop.ll
-new file mode 100644
-index 000000000000..30280b967ad8
---- /dev/null
-+++ b/test/CodeGen/AMDGPU/kill-infinite-loop.ll
-@@ -0,0 +1,68 @@
-+; RUN: llc -march=amdgcn -verify-machineinstrs < %s | FileCheck -enable-var-scope %s
-+; Although it's modeled without any control flow in order to get better code
-+; out of the structurizer, @llvm.amdgcn.kill actually ends the thread that calls
-+; it with "true". In case it's called in a provably infinite loop, we still
-+; need to successfully exit and export something, even if we can't know where
-+; to jump to in the LLVM IR. Therefore we insert a null export ourselves in
-+; this case right before the s_endpgm to avoid GPU hangs, which is what this
-+; tests.
-+
-+; CHECK-LABEL: return_void
-+; Make sure that we remove the done bit from the original export
-+; CHECK: exp mrt0 v{{[0-9]+}}, v{{[0-9]+}}, v{{[0-9]+}}, v{{[0-9]+}} vm
-+; CHECK: exp null off, off, off, off done vm
-+; CHECK-NEXT: s_endpgm
-+define amdgpu_ps void @return_void(float %0) #0 {
-+main_body:
-+  %cmp = fcmp olt float %0, 1.000000e+01
-+  br i1 %cmp, label %end, label %loop
-+
-+loop:
-+  call void @llvm.amdgcn.kill(i1 false) #3
-+  br label %loop
-+
-+end:
-+  call void @llvm.amdgcn.exp.f32(i32 0, i32 15, float 0., float 0., float 0., float 1., i1 true, i1 true) #3
-+  ret void
-+}
-+
-+; Check that we also remove the done bit from compressed exports correctly.
-+; CHECK-LABEL: return_void_compr
-+; CHECK: exp mrt0 v{{[0-9]+}}, off, v{{[0-9]+}}, off compr vm
-+; CHECK: exp null off, off, off, off done vm
-+; CHECK-NEXT: s_endpgm
-+define amdgpu_ps void @return_void_compr(float %0) #0 {
-+main_body:
-+  %cmp = fcmp olt float %0, 1.000000e+01
-+  br i1 %cmp, label %end, label %loop
-+
-+loop:
-+  call void @llvm.amdgcn.kill(i1 false) #3
-+  br label %loop
-+
-+end:
-+  call void @llvm.amdgcn.exp.compr.v2i16(i32 0, i32 5, <2 x i16> < i16 0, i16 0 >, <2 x i16> < i16 0, i16 0 >, i1 true, i1 true) #3
-+  ret void
-+}
-+
-+; In case there's an epilog, we shouldn't have to do this.
-+; CHECK-LABEL: return_nonvoid
-+; CHECK-NOT: exp null off, off, off, off done vm
-+define amdgpu_ps float @return_nonvoid(float %0) #0 {
-+main_body:
-+  %cmp = fcmp olt float %0, 1.000000e+01
-+  br i1 %cmp, label %end, label %loop
-+
-+loop:
-+  call void @llvm.amdgcn.kill(i1 false) #3
-+  br label %loop
-+
-+end:
-+  ret float 0.
-+}
-+
-+declare void @llvm.amdgcn.kill(i1) #0
-+declare void @llvm.amdgcn.exp.f32(i32 immarg, i32 immarg, float, float, float, float, i1 immarg, i1 immarg) #0
-+declare void @llvm.amdgcn.exp.compr.v2i16(i32 immarg, i32 immarg, <2 x i16>, <2 x i16>, i1 immarg, i1 immarg) #0
-+
-+attributes #0 = { nounwind }
diff --git a/sys-devel/llvm/files/cherry/61d1cce2f83571c00f76144d42a2dea2cb3ab1ca.patch b/sys-devel/llvm/files/cherry/61d1cce2f83571c00f76144d42a2dea2cb3ab1ca.patch
new file mode 100644
index 0000000..f35941c
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/61d1cce2f83571c00f76144d42a2dea2cb3ab1ca.patch
@@ -0,0 +1,146 @@
+commit 61d1cce2f83571c00f76144d42a2dea2cb3ab1ca
+Author: Yuanfang Chen <yuanfang.chen@sony.com>
+Date:   Tue Sep 7 15:28:19 2021 -0700
+
+    PR45881: Properly use CXXThisOverride for templated lambda
+    
+    - `this` used in lambda expression parameter declarations needs no capture.
+    - Set up CXXThisOverride for default template arguments of a lambda.
+    
+    A similar fix to this is c3d2ebb60f604.
+    
+    Reviewed By: aaron.ballman
+    
+    Differential Revision: https://reviews.llvm.org/D102531
+---
+ clang/lib/Sema/SemaExprCXX.cpp                    |  9 +++----
+ clang/lib/Sema/SemaTemplate.cpp                   |  6 ++++-
+ clang/lib/Sema/SemaTemplateDeduction.cpp          | 21 ++++++++++++---
+ clang/test/SemaCXX/cxx1z-lambda-star-this.cpp     | 10 ++++++++
+ clang/test/SemaCXX/cxx20-lambda-decltype-this.cpp | 31 +++++++++++++++++++++++
+ 5 files changed, 68 insertions(+), 9 deletions(-)
+
+diff --git a/clang/lib/Sema/SemaExprCXX.cpp b/clang/lib/Sema/SemaExprCXX.cpp
+index ba2e17c4a631..e30e1bb7df78 100644
+--- a/clang/lib/Sema/SemaExprCXX.cpp
++++ b/clang/lib/Sema/SemaExprCXX.cpp
+@@ -1137,11 +1137,10 @@ static QualType adjustCVQualifiersForCXXThisWithinLambda(
+     }
+   }
+ 
+-  // 2) We've run out of ScopeInfos but check if CurDC is a lambda (which can
+-  // happen during instantiation of its nested generic lambda call operator)
+-  if (isLambdaCallOperator(CurDC)) {
+-    assert(CurLSI && "While computing 'this' capture-type for a generic "
+-                     "lambda, we must have a corresponding LambdaScopeInfo");
++  // 2) We've run out of ScopeInfos but check 1. if CurDC is a lambda (which
++  //    can happen during instantiation of its nested generic lambda call
++  //    operator); 2. if we're in a lambda scope (lambda body).
++  if (CurLSI && isLambdaCallOperator(CurDC)) {
+     assert(isGenericLambdaCallOperatorSpecialization(CurLSI->CallOperator) &&
+            "While computing 'this' capture-type for a generic lambda, when we "
+            "run out of enclosing LSI's, yet the enclosing DC is a "
+diff --git a/clang/lib/Sema/SemaTemplate.cpp b/clang/lib/Sema/SemaTemplate.cpp
+index 5d26f2d2c11a..6682b17f4e14 100644
+--- a/clang/lib/Sema/SemaTemplate.cpp
++++ b/clang/lib/Sema/SemaTemplate.cpp
+@@ -5110,7 +5110,11 @@ SubstDefaultTemplateArgument(Sema &SemaRef,
+     for (unsigned i = 0, e = Param->getDepth(); i != e; ++i)
+       TemplateArgLists.addOuterTemplateArguments(None);
+ 
+-    Sema::ContextRAII SavedContext(SemaRef, Template->getDeclContext());
++    bool ForLambdaCallOperator = false;
++    if (const auto *Rec = dyn_cast<CXXRecordDecl>(Template->getDeclContext()))
++      ForLambdaCallOperator = Rec->isLambda();
++    Sema::ContextRAII SavedContext(SemaRef, Template->getDeclContext(),
++                                   !ForLambdaCallOperator);
+     ArgType =
+         SemaRef.SubstType(ArgType, TemplateArgLists,
+                           Param->getDefaultArgumentLoc(), Param->getDeclName());
+diff --git a/clang/lib/Sema/SemaTemplateDeduction.cpp b/clang/lib/Sema/SemaTemplateDeduction.cpp
+index 5d93a1792226..f0a9e820c028 100644
+--- a/clang/lib/Sema/SemaTemplateDeduction.cpp
++++ b/clang/lib/Sema/SemaTemplateDeduction.cpp
+@@ -2858,9 +2858,24 @@ static Sema::TemplateDeductionResult ConvertDeducedTemplateArguments(
+       return Sema::TDK_Incomplete;
+     }
+ 
+-    TemplateArgumentLoc DefArg = S.SubstDefaultTemplateArgumentIfAvailable(
+-        TD, TD->getLocation(), TD->getSourceRange().getEnd(), Param, Builder,
+-        HasDefaultArg);
++    TemplateArgumentLoc DefArg;
++    {
++      Qualifiers ThisTypeQuals;
++      CXXRecordDecl *ThisContext = nullptr;
++      if (auto *Rec = dyn_cast<CXXRecordDecl>(TD->getDeclContext()))
++        if (Rec->isLambda())
++          if (auto *Method = dyn_cast<CXXMethodDecl>(Rec->getDeclContext())) {
++            ThisContext = Method->getParent();
++            ThisTypeQuals = Method->getMethodQualifiers();
++          }
++
++      Sema::CXXThisScopeRAII ThisScope(S, ThisContext, ThisTypeQuals,
++                                       S.getLangOpts().CPlusPlus17);
++
++      DefArg = S.SubstDefaultTemplateArgumentIfAvailable(
++          TD, TD->getLocation(), TD->getSourceRange().getEnd(), Param, Builder,
++          HasDefaultArg);
++    }
+ 
+     // If there was no default argument, deduction is incomplete.
+     if (DefArg.getArgument().isNull()) {
+diff --git a/clang/test/SemaCXX/cxx1z-lambda-star-this.cpp b/clang/test/SemaCXX/cxx1z-lambda-star-this.cpp
+index 2426e8f5a207..5a471fd6b694 100644
+--- a/clang/test/SemaCXX/cxx1z-lambda-star-this.cpp
++++ b/clang/test/SemaCXX/cxx1z-lambda-star-this.cpp
+@@ -298,3 +298,13 @@ class A {
+ 
+ } // namespace PR32831
+ 
++namespace PR45881 {
++struct A {
++    void f();
++};
++int id(A*);
++void A::f() {
++    auto z = [*this](auto z2, decltype(z2(this)) z3){};
++    z(id,3);
++}
++} // namespace PR45881
+diff --git a/clang/test/SemaCXX/cxx20-lambda-decltype-this.cpp b/clang/test/SemaCXX/cxx20-lambda-decltype-this.cpp
+new file mode 100644
+index 000000000000..161a2bcb25d7
+--- /dev/null
++++ b/clang/test/SemaCXX/cxx20-lambda-decltype-this.cpp
+@@ -0,0 +1,31 @@
++// RUN: %clang_cc1 -std=c++2a -fsyntax-only -emit-llvm-only %s
++// RUN: %clang_cc1 -std=c++2a -fsyntax-only -fdelayed-template-parsing %s
++// RUN: %clang_cc1 -std=c++2a -fsyntax-only -fms-extensions %s
++// RUN: %clang_cc1 -std=c++2a -fsyntax-only -fdelayed-template-parsing -fms-extensions %s
++
++namespace PR45881 {
++struct A {
++    void f();
++};
++int id(A*);
++void A::f() {
++    auto z = [*this](auto z2, decltype(z2(this)) z3){};
++    z(id,3);
++}
++
++struct B {
++    void f();
++};
++void B::f() {
++    auto z = []<typename TT, typename TTT=decltype(TT()(this))>(){return 0;};
++    z.template operator()<int(*)(B*)>();
++}
++
++struct C {
++    void f();
++};
++void C::f() {
++    auto z = []<typename TT, decltype(TT()(this)) n>(){return 0;};
++    z.template operator()<int(*)(C*), 8>();
++}
++} // namespace PR45881
diff --git a/sys-devel/llvm/files/cherry/6455418d3d2a2de1a8251cc2ccf2e87b9ae3112d.patch b/sys-devel/llvm/files/cherry/6455418d3d2a2de1a8251cc2ccf2e87b9ae3112d.patch
new file mode 100644
index 0000000..eb1e85f
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/6455418d3d2a2de1a8251cc2ccf2e87b9ae3112d.patch
@@ -0,0 +1,27 @@
+commit 6455418d3d2a2de1a8251cc2ccf2e87b9ae3112d
+Author: Stephen Hines <srhines@google.com>
+Date:   Fri Jun 11 02:07:59 2021 -0700
+
+    [compiler-rt] [builtins] [AArch64] Add missing AArch64 data synchronization barrier (dsb) to __clear_cache
+    
+    https://developer.arm.com/documentation/den0024/a/Caches/Cache-maintenance
+    covers how to properly clear caches on AArch64, and the builtin
+    implementation was missing a `dsb ish` after clearing the icache for the
+    selected range.
+    
+    Reviewed By: kristof.beyls
+    
+    Differential Revision: https://reviews.llvm.org/D104094
+
+diff --git a/compiler-rt/lib/builtins/clear_cache.c b/compiler-rt/lib/builtins/clear_cache.c
+index 5a443ddd4b03..0284cb699f74 100644
+--- a/compiler-rt/lib/builtins/clear_cache.c
++++ b/compiler-rt/lib/builtins/clear_cache.c
+@@ -126,6 +126,7 @@ void __clear_cache(void *start, void *end) {
+          addr += icache_line_size)
+       __asm __volatile("ic ivau, %0" ::"r"(addr));
+   }
++  __asm __volatile("dsb ish");
+   __asm __volatile("isb sy");
+ #elif defined(__powerpc64__)
+   const size_t line_size = 32;
diff --git a/sys-devel/llvm/files/cherry/6601be441974cb1b91c47ee20bf9a284076cf6dd.patch b/sys-devel/llvm/files/cherry/6601be441974cb1b91c47ee20bf9a284076cf6dd.patch
new file mode 100644
index 0000000..3b6c53d
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/6601be441974cb1b91c47ee20bf9a284076cf6dd.patch
@@ -0,0 +1,176 @@
+commit 6601be441974cb1b91c47ee20bf9a284076cf6dd
+Author: Eli Friedman <efriedma@quicinc.com>
+Date:   Sat Jul 17 11:11:41 2021 -0700
+
+    [X86] Remove incorrect use of known bits in shuffle simplification.
+    
+    This reverts commit 2a419a0b9957ebac9e11e4b43bc9fbe42a9207df.
+    
+    The result of a shufflevector must not propagate poison from any element
+    other than the one noted in the shuffle mask.
+    
+    The regressions outside of fptoui-may-overflow.ll can probably be
+    recovered some other way; for example, using isGuaranteedNotToBePoison.
+    
+    See discussion on https://reviews.llvm.org/D106053 for more background.
+    
+    Differential Revision: https://reviews.llvm.org/D106222
+
+diff --git a/llvm/include/llvm/CodeGen/SelectionDAG.h b/llvm/include/llvm/CodeGen/SelectionDAG.h
+index 8cbdf7e02385..4b10d6ea9ff3 100644
+--- a/llvm/include/llvm/CodeGen/SelectionDAG.h
++++ b/llvm/include/llvm/CodeGen/SelectionDAG.h
+@@ -1711,11 +1711,6 @@ public:
+   bool MaskedValueIsZero(SDValue Op, const APInt &Mask,
+                          const APInt &DemandedElts, unsigned Depth = 0) const;
+ 
+-  /// Return true if the DemandedElts of the vector Op are all zero.  We
+-  /// use this predicate to simplify operations downstream.
+-  bool MaskedElementsAreZero(SDValue Op, const APInt &DemandedElts,
+-                             unsigned Depth = 0) const;
+-
+   /// Return true if '(Op & Mask) == Mask'.
+   /// Op and Mask are known to be the same type.
+   bool MaskedValueIsAllOnes(SDValue Op, const APInt &Mask,
+diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+index 8886a2d5f54c..e058c40ce6ff 100644
+--- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
++++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+@@ -2446,15 +2446,6 @@ bool SelectionDAG::MaskedValueIsZero(SDValue V, const APInt &Mask,
+   return Mask.isSubsetOf(computeKnownBits(V, DemandedElts, Depth).Zero);
+ }
+ 
+-/// Return true if the DemandedElts of the vector Op are all zero.  We
+-/// use this predicate to simplify operations downstream.
+-bool SelectionDAG::MaskedElementsAreZero(SDValue Op, const APInt &DemandedElts,
+-                                         unsigned Depth) const {
+-  unsigned BitWidth = Op.getScalarValueSizeInBits();
+-  APInt DemandedBits = APInt::getAllOnesValue(BitWidth);
+-  return MaskedValueIsZero(Op, DemandedBits, DemandedElts, Depth);
+-}
+-
+ /// MaskedValueIsAllOnes - Return true if '(Op & Mask) == Mask'.
+ bool SelectionDAG::MaskedValueIsAllOnes(SDValue V, const APInt &Mask,
+                                         unsigned Depth) const {
+diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
+index 7b4de8047264..5c64114cc2b3 100644
+--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
++++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
+@@ -35974,15 +35974,6 @@ static SDValue combineX86ShuffleChain(ArrayRef<SDValue> Inputs, SDValue Root,
+       }
+     }
+ 
+-    // See if this is a blend with zero - in which case check if the zero'd
+-    // elements are already zero.
+-    if (isSequentialOrUndefOrZeroInRange(Mask, 0, NumMaskElts, 0)) {
+-      assert(!KnownZero.isNullValue() && "Shuffle has no zero elements");
+-      SDValue NewV1 = CanonicalizeShuffleInput(MaskVT, V1);
+-      if (DAG.MaskedElementsAreZero(NewV1, KnownZero))
+-        return DAG.getBitcast(RootVT, NewV1);
+-    }
+-
+     SDValue NewV1 = V1; // Save operand in case early exit happens.
+     if (matchUnaryShuffle(MaskVT, Mask, AllowFloatDomain, AllowIntDomain, NewV1,
+                           DL, DAG, Subtarget, Shuffle, ShuffleSrcVT,
+diff --git a/llvm/test/CodeGen/X86/fptoui-may-overflow.ll b/llvm/test/CodeGen/X86/fptoui-may-overflow.ll
+new file mode 100644
+index 000000000000..37bdfaadaf57
+--- /dev/null
++++ b/llvm/test/CodeGen/X86/fptoui-may-overflow.ll
+@@ -0,0 +1,36 @@
++; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
++; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=avx | FileCheck %s
++
++; @fptoui_zext is legal to optimize to a single vcvttps2dq: if one of the i8
++; results of fptoui is poisoned, the corresponding i32 result of the zext is
++; also poisoned. We currently don't implement this optimization.
++
++define <16 x i8> @fptoui_zext(<4 x float> %arg) {
++; CHECK-LABEL: fptoui_zext:
++; CHECK:       # %bb.0:
++; CHECK-NEXT:    vcvttps2dq %xmm0, %xmm0
++; CHECK-NEXT:    vpackusdw %xmm0, %xmm0, %xmm0
++; CHECK-NEXT:    vpackuswb %xmm0, %xmm0, %xmm0
++; CHECK-NEXT:    vpmovzxbd {{.*#+}} xmm0 = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero
++; CHECK-NEXT:    retq
++  %f = fptoui <4 x float> %arg to <4 x i8>
++  %z = zext <4 x i8> %f to <4 x i32>
++  %b = bitcast <4 x i32> %z to <16 x i8>
++  ret <16 x i8> %b
++}
++
++; In @fptoui_shuffle, we must preserve the vpand for correctnesss. Only the
++; i8 values extracted from %s are poison.  The values from the zeroinitializer
++; are not.
++
++define <16 x i8> @fptoui_shuffle(<4 x float> %arg) {
++; CHECK-LABEL: fptoui_shuffle:
++; CHECK:       # %bb.0:
++; CHECK-NEXT:    vcvttps2dq %xmm0, %xmm0
++; CHECK-NEXT:    vandps {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0
++; CHECK-NEXT:    retq
++  %f = fptoui <4 x float> %arg to <4 x i8>
++  %s = shufflevector <4 x i8> %f, <4 x i8> undef, <16 x i32> <i32 0, i32 1, i32 2, i32 3, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
++  %ss = shufflevector <16 x i8> %s, <16 x i8> zeroinitializer, <16 x i32> <i32 0, i32 17, i32 18, i32 19, i32 1, i32 21, i32 22, i32 23, i32 2, i32 25, i32 26, i32 27, i32 3, i32 29, i32 30, i32 31>
++  ret <16 x i8> %ss
++}
+diff --git a/llvm/test/CodeGen/X86/oddshuffles.ll b/llvm/test/CodeGen/X86/oddshuffles.ll
+index 53f44d496263..3d82cb352076 100644
+--- a/llvm/test/CodeGen/X86/oddshuffles.ll
++++ b/llvm/test/CodeGen/X86/oddshuffles.ll
+@@ -2264,8 +2264,8 @@ define <16 x i32> @splat_v3i32(<3 x i32>* %ptr) {
+ ; AVX1-NEXT:    vmovq {{.*#+}} xmm0 = mem[0],zero
+ ; AVX1-NEXT:    vpinsrd $2, 8(%rdi), %xmm0, %xmm1
+ ; AVX1-NEXT:    vxorps %xmm2, %xmm2, %xmm2
+-; AVX1-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0],ymm1[1],ymm2[2,3,4,5,6,7]
+-; AVX1-NEXT:    vpermilps {{.*#+}} xmm1 = xmm1[0,1,0,1]
++; AVX1-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0],ymm0[1],ymm2[2,3,4,5,6,7]
++; AVX1-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[0,1,0,1]
+ ; AVX1-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1],ymm1[2],ymm2[3,4,5,6,7]
+ ; AVX1-NEXT:    retq
+ ;
+@@ -2291,8 +2291,8 @@ define <16 x i32> @splat_v3i32(<3 x i32>* %ptr) {
+ ; XOP-NEXT:    vmovq {{.*#+}} xmm0 = mem[0],zero
+ ; XOP-NEXT:    vpinsrd $2, 8(%rdi), %xmm0, %xmm1
+ ; XOP-NEXT:    vxorps %xmm2, %xmm2, %xmm2
+-; XOP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0],ymm1[1],ymm2[2,3,4,5,6,7]
+-; XOP-NEXT:    vpermilps {{.*#+}} xmm1 = xmm1[0,1,0,1]
++; XOP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0],ymm0[1],ymm2[2,3,4,5,6,7]
++; XOP-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[0,1,0,1]
+ ; XOP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1],ymm1[2],ymm2[3,4,5,6,7]
+ ; XOP-NEXT:    retq
+   %1 = load <3 x i32>, <3 x i32>* %ptr, align 1
+diff --git a/llvm/test/CodeGen/X86/vector_splat-const-shift-of-constmasked.ll b/llvm/test/CodeGen/X86/vector_splat-const-shift-of-constmasked.ll
+index ffd19662807d..d751fc7ec002 100644
+--- a/llvm/test/CodeGen/X86/vector_splat-const-shift-of-constmasked.ll
++++ b/llvm/test/CodeGen/X86/vector_splat-const-shift-of-constmasked.ll
+@@ -3088,13 +3088,24 @@ define <2 x i64> @test_128_i64_x_2_18446744065119617024_mask_ashr_1(<2 x i64> %a
+ ; X64-SSE2:       # %bb.0:
+ ; X64-SSE2-NEXT:    pand {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
+ ; X64-SSE2-NEXT:    psrad $1, %xmm0
++; X64-SSE2-NEXT:    pand {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
+ ; X64-SSE2-NEXT:    retq
+ ;
+-; X64-AVX-LABEL: test_128_i64_x_2_18446744065119617024_mask_ashr_1:
+-; X64-AVX:       # %bb.0:
+-; X64-AVX-NEXT:    vpand {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0
+-; X64-AVX-NEXT:    vpsrad $1, %xmm0, %xmm0
+-; X64-AVX-NEXT:    retq
++; X64-AVX1-LABEL: test_128_i64_x_2_18446744065119617024_mask_ashr_1:
++; X64-AVX1:       # %bb.0:
++; X64-AVX1-NEXT:    vpand {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0
++; X64-AVX1-NEXT:    vpsrad $1, %xmm0, %xmm0
++; X64-AVX1-NEXT:    vpxor %xmm1, %xmm1, %xmm1
++; X64-AVX1-NEXT:    vpblendw {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3],xmm1[4,5],xmm0[6,7]
++; X64-AVX1-NEXT:    retq
++;
++; X64-AVX2-LABEL: test_128_i64_x_2_18446744065119617024_mask_ashr_1:
++; X64-AVX2:       # %bb.0:
++; X64-AVX2-NEXT:    vpand {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0, %xmm0
++; X64-AVX2-NEXT:    vpsrad $1, %xmm0, %xmm0
++; X64-AVX2-NEXT:    vpxor %xmm1, %xmm1, %xmm1
++; X64-AVX2-NEXT:    vpblendd {{.*#+}} xmm0 = xmm1[0],xmm0[1],xmm1[2],xmm0[3]
++; X64-AVX2-NEXT:    retq
+   %t0 = and <2 x i64> %a0, <i64 18446744065119617024, i64 18446744065119617024>
+   %t1 = ashr <2 x i64> %t0, <i64 1, i64 1>
+   ret <2 x i64> %t1
diff --git a/sys-devel/llvm/files/cherry/6b6d3447317673015f62206b2669c2d0a74132dc.patch b/sys-devel/llvm/files/cherry/6b6d3447317673015f62206b2669c2d0a74132dc.patch
new file mode 100644
index 0000000..e24933d
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/6b6d3447317673015f62206b2669c2d0a74132dc.patch
@@ -0,0 +1,148 @@
+commit 6b6d3447317673015f62206b2669c2d0a74132dc
+Author: Daniel Kiss <daniel.kiss@arm.com>
+Date:   Wed Aug 11 10:11:31 2021 +0200
+
+    [libunwind] Compile with -Wunused-but-set-variable
+    
+    -Wunused-but-set-variable triggers a warning even the block of code is effectively dead.
+    
+    Reviewed By: MaskRay
+    
+    Differential Revision: https://reviews.llvm.org/D107835
+
+diff --git a/libunwind/CMakeLists.txt b/libunwind/CMakeLists.txt
+index b1ef11bf7327..a73f5b0c7bdf 100644
+--- a/libunwind/CMakeLists.txt
++++ b/libunwind/CMakeLists.txt
+@@ -191,6 +191,7 @@ add_compile_flags_if_supported(-Wsign-compare)
+ add_compile_flags_if_supported(-Wsign-conversion)
+ add_compile_flags_if_supported(-Wstrict-aliasing=2)
+ add_compile_flags_if_supported(-Wstrict-overflow=4)
++add_compile_flags_if_supported(-Wunused-but-set-variable)
+ add_compile_flags_if_supported(-Wunused-parameter)
+ add_compile_flags_if_supported(-Wunused-variable)
+ add_compile_flags_if_supported(-Wwrite-strings)
+diff --git a/libunwind/src/Unwind-EHABI.cpp b/libunwind/src/Unwind-EHABI.cpp
+index ba6064d3ef00..a564fd5240dd 100644
+--- a/libunwind/src/Unwind-EHABI.cpp
++++ b/libunwind/src/Unwind-EHABI.cpp
+@@ -463,6 +463,7 @@ unwind_phase1(unw_context_t *uc, unw_cursor_t *cursor, _Unwind_Exception *except
+       return _URC_FATAL_PHASE1_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -481,6 +482,7 @@ unwind_phase1(unw_context_t *uc, unw_cursor_t *cursor, _Unwind_Exception *except
+           frameInfo.start_ip, functionName,
+           frameInfo.lsda, frameInfo.handler);
+     }
++#endif
+ 
+     // If there is a personality routine, ask it if it will want to stop at
+     // this frame.
+@@ -582,6 +584,7 @@ static _Unwind_Reason_Code unwind_phase2(unw_context_t *uc, unw_cursor_t *cursor
+       return _URC_FATAL_PHASE2_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -598,6 +601,7 @@ static _Unwind_Reason_Code unwind_phase2(unw_context_t *uc, unw_cursor_t *cursor
+           functionName, sp, frameInfo.lsda,
+           frameInfo.handler);
+     }
++#endif
+ 
+     // If there is a personality routine, tell it we are unwinding.
+     if (frameInfo.handler != 0) {
+@@ -689,6 +693,7 @@ unwind_phase2_forced(unw_context_t *uc, unw_cursor_t *cursor,
+       return _URC_FATAL_PHASE2_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -704,6 +709,7 @@ unwind_phase2_forced(unw_context_t *uc, unw_cursor_t *cursor,
+           (void *)exception_object, frameInfo.start_ip, functionName,
+           frameInfo.lsda, frameInfo.handler);
+     }
++#endif
+ 
+     // Call stop function at each frame.
+     _Unwind_Action action =
+diff --git a/libunwind/src/Unwind-seh.cpp b/libunwind/src/Unwind-seh.cpp
+index 6e2b4e73e41e..5a6a719730c8 100644
+--- a/libunwind/src/Unwind-seh.cpp
++++ b/libunwind/src/Unwind-seh.cpp
+@@ -244,6 +244,7 @@ unwind_phase2_forced(unw_context_t *uc,
+       return _URC_FATAL_PHASE2_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -259,6 +260,7 @@ unwind_phase2_forced(unw_context_t *uc,
+           (void *)exception_object, frameInfo.start_ip, functionName,
+           frameInfo.lsda, frameInfo.handler);
+     }
++#endif
+ 
+     // Call stop function at each frame.
+     _Unwind_Action action =
+diff --git a/libunwind/src/UnwindLevel1.c b/libunwind/src/UnwindLevel1.c
+index 68e5e48b8c05..8b8797fb88ad 100644
+--- a/libunwind/src/UnwindLevel1.c
++++ b/libunwind/src/UnwindLevel1.c
+@@ -68,6 +68,7 @@ unwind_phase1(unw_context_t *uc, unw_cursor_t *cursor, _Unwind_Exception *except
+       return _URC_FATAL_PHASE1_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -85,6 +86,7 @@ unwind_phase1(unw_context_t *uc, unw_cursor_t *cursor, _Unwind_Exception *except
+           (void *)exception_object, pc, frameInfo.start_ip, functionName,
+           frameInfo.lsda, frameInfo.handler);
+     }
++#endif
+ 
+     // If there is a personality routine, ask it if it will want to stop at
+     // this frame.
+@@ -167,6 +169,7 @@ unwind_phase2(unw_context_t *uc, unw_cursor_t *cursor, _Unwind_Exception *except
+       return _URC_FATAL_PHASE2_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -183,6 +186,7 @@ unwind_phase2(unw_context_t *uc, unw_cursor_t *cursor, _Unwind_Exception *except
+                                  functionName, sp, frameInfo.lsda,
+                                  frameInfo.handler);
+     }
++#endif
+ 
+     // If there is a personality routine, tell it we are unwinding.
+     if (frameInfo.handler != 0) {
+@@ -258,6 +262,7 @@ unwind_phase2_forced(unw_context_t *uc, unw_cursor_t *cursor,
+       return _URC_FATAL_PHASE2_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -273,6 +278,7 @@ unwind_phase2_forced(unw_context_t *uc, unw_cursor_t *cursor,
+           (void *)exception_object, frameInfo.start_ip, functionName,
+           frameInfo.lsda, frameInfo.handler);
+     }
++#endif
+ 
+     // Call stop function at each frame.
+     _Unwind_Action action =
diff --git a/sys-devel/llvm/files/cherry/6d33362dafb66b3af4717990d9a06450ec13f367.patch b/sys-devel/llvm/files/cherry/6d33362dafb66b3af4717990d9a06450ec13f367.patch
new file mode 100644
index 0000000..e02db86
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/6d33362dafb66b3af4717990d9a06450ec13f367.patch
@@ -0,0 +1,102 @@
+commit 6d33362dafb66b3af4717990d9a06450ec13f367
+Author: Jordan Rupprecht <rupprecht@google.com>
+Date:   Tue Jun 15 07:55:23 2021 -0700
+
+    [libcxx][atomic] Fix failure mapping in compare_exchange_{strong,weak}.
+    
+    https://eel.is/c++draft/atomics.types.operations#23 says: ... the value of failure is order except that a value of `memory_order::acq_rel` shall be replaced by the value `memory_order::acquire` and a value of `memory_order::release` shall be replaced by the value `memory_order::relaxed`.
+    
+    This failure mapping is only handled for `_LIBCPP_HAS_GCC_ATOMIC_IMP`. We are seeing bad code generation for `compare_exchange_strong(cmp, 1, std::memory_order_acq_rel)` when using libc++ in place of libstdc++: https://godbolt.org/z/v3onrrq4G.
+    
+    This was caught by tsan tests after D99434, `[TSAN] Honor failure memory orders in AtomicCAS`, but appears to be an issue in non-tsan code.
+    
+    Reviewed By: ldionne, dvyukov
+    
+    Differential Revision: https://reviews.llvm.org/D103846
+
+diff --git a/libcxx/include/atomic b/libcxx/include/atomic
+index 2f47f6b17b2a..90bed4f94766 100644
+--- a/libcxx/include/atomic
++++ b/libcxx/include/atomic
+@@ -1017,26 +1017,33 @@ _Tp __cxx_atomic_exchange(__cxx_atomic_base_impl<_Tp> * __a, _Tp __value, memory
+     return __c11_atomic_exchange(&__a->__a_value, __value, static_cast<__memory_order_underlying_t>(__order));
+ }
+ 
++_LIBCPP_INLINE_VISIBILITY inline _LIBCPP_CONSTEXPR memory_order __to_failure_order(memory_order __order) {
++  // Avoid switch statement to make this a constexpr.
++  return __order == memory_order_release ? memory_order_relaxed:
++         (__order == memory_order_acq_rel ? memory_order_acquire:
++             __order);
++}
++
+ template<class _Tp>
+ _LIBCPP_INLINE_VISIBILITY
+ bool __cxx_atomic_compare_exchange_strong(__cxx_atomic_base_impl<_Tp> volatile* __a, _Tp* __expected, _Tp __value, memory_order __success, memory_order __failure) _NOEXCEPT {
+-    return __c11_atomic_compare_exchange_strong(&__a->__a_value, __expected, __value, static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__failure));
++    return __c11_atomic_compare_exchange_strong(&__a->__a_value, __expected, __value, static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__to_failure_order(__failure)));
+ }
+ template<class _Tp>
+ _LIBCPP_INLINE_VISIBILITY
+ bool __cxx_atomic_compare_exchange_strong(__cxx_atomic_base_impl<_Tp> * __a, _Tp* __expected, _Tp __value, memory_order __success, memory_order __failure) _NOEXCEPT {
+-    return __c11_atomic_compare_exchange_strong(&__a->__a_value, __expected, __value, static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__failure));
++    return __c11_atomic_compare_exchange_strong(&__a->__a_value, __expected, __value, static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__to_failure_order(__failure)));
+ }
+ 
+ template<class _Tp>
+ _LIBCPP_INLINE_VISIBILITY
+ bool __cxx_atomic_compare_exchange_weak(__cxx_atomic_base_impl<_Tp> volatile* __a, _Tp* __expected, _Tp __value, memory_order __success, memory_order __failure) _NOEXCEPT {
+-    return __c11_atomic_compare_exchange_weak(&__a->__a_value, __expected, __value, static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__failure));
++    return __c11_atomic_compare_exchange_weak(&__a->__a_value, __expected, __value, static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__to_failure_order(__failure)));
+ }
+ template<class _Tp>
+ _LIBCPP_INLINE_VISIBILITY
+ bool __cxx_atomic_compare_exchange_weak(__cxx_atomic_base_impl<_Tp> * __a, _Tp* __expected, _Tp __value, memory_order __success, memory_order __failure) _NOEXCEPT {
+-    return __c11_atomic_compare_exchange_weak(&__a->__a_value, __expected, __value,  static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__failure));
++    return __c11_atomic_compare_exchange_weak(&__a->__a_value, __expected, __value,  static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__to_failure_order(__failure)));
+ }
+ 
+ template<class _Tp>
+diff --git a/libcxx/test/std/atomics/atomics.general/replace_failure_order_codegen.sh.cpp b/libcxx/test/std/atomics/atomics.general/replace_failure_order_codegen.sh.cpp
+new file mode 100644
+index 000000000000..a4e9e447f2a3
+--- /dev/null
++++ b/libcxx/test/std/atomics/atomics.general/replace_failure_order_codegen.sh.cpp
+@@ -0,0 +1,38 @@
++//===----------------------------------------------------------------------===//
++//
++// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
++// See https://llvm.org/LICENSE.txt for license information.
++// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
++//
++//===----------------------------------------------------------------------===//
++
++// REQUIRES: clang
++// UNSUPPORTED: libcpp-has-no-threads
++
++// Adding "-fsanitize=thread" directly causes many platforms to fail (because
++// they don't support tsan), and causes other sanitizer builds to fail (e.g.
++// asan and tsan don't mix). Instead, require the tsan feature.
++// REQUIRES: tsan
++
++// This test verifies behavior specified by [atomics.types.operations.req]/21:
++//
++//     When only one memory_order argument is supplied, the value of success is
++//     order, and the value of failure is order except that a value of
++//     memory_order_acq_rel shall be replaced by the value memory_order_acquire
++//     and a value of memory_order_release shall be replaced by the value
++//     memory_order_relaxed.
++//
++// This test mirrors replace_failure_order.pass.cpp. However, we also want to
++// verify the codegen is correct. This verifies a bug where memory_order_acq_rel
++// was not being replaced with memory_order_acquire in external
++// TSAN-instrumented tests.
++
++// RUN: %{cxx} -c %s %{flags} %{compile_flags} -O2 -stdlib=libc++ -S -emit-llvm -o %t.ll
++
++#include <atomic>
++
++// Note: libc++ tests do not use on FileCheck.
++// RUN: grep -E "call i32 @__tsan_atomic32_compare_exchange_val\(.*, i32 1, i32 4, i32 2\)" %t.ll
++bool strong_memory_order_acq_rel(std::atomic<int>* a, int cmp) {
++  return a->compare_exchange_strong(cmp, 1, std::memory_order_acq_rel);
++}
diff --git a/sys-devel/llvm/files/cherry/71cca4f728d7421e40ec9aec0816313391fe9b59.patch b/sys-devel/llvm/files/cherry/71cca4f728d7421e40ec9aec0816313391fe9b59.patch
new file mode 100644
index 0000000..fb514cf
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/71cca4f728d7421e40ec9aec0816313391fe9b59.patch
@@ -0,0 +1,132 @@
+commit 71cca4f728d7421e40ec9aec0816313391fe9b59
+Author: Arthur Eubanks <aeubanks@google.com>
+Date:   Sat May 29 23:08:15 2021 -0700
+
+    Revert "[TargetLowering] Only inspect attributes in the arguments for ArgListEntry"
+    
+    This reverts commit 1c7f32334d4becc725b9025fd32291a0e5729acd.
+    
+    Some code still needs to properly set parameter ABI attributes, see
+    D101806.
+
+diff --git a/llvm/docs/ReleaseNotes.rst b/llvm/docs/ReleaseNotes.rst
+index d96c2080ffa0..98117a24fcee 100644
+--- a/llvm/docs/ReleaseNotes.rst
++++ b/llvm/docs/ReleaseNotes.rst
+@@ -74,13 +74,6 @@ Changes to building LLVM
+ Changes to TableGen
+ -------------------
+ 
+-Changes to Backend Code Generation
+-----------------------------------
+-
+-* When lowering calls, only ABI attributes on the call itself are checked, not
+-  the caller. Frontends need to make sure to properly set ABI attributes on
+-  calls (and always should have).
+-
+ Changes to the ARM Backend
+ --------------------------
+ 
+diff --git a/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp b/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+index 30393298ab72..53b3bcbb42ab 100644
+--- a/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
++++ b/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+@@ -102,32 +102,29 @@ bool TargetLowering::parametersInCSRMatch(const MachineRegisterInfo &MRI,
+   return true;
+ }
+ 
+-/// Set CallLoweringInfo attribute flags based on the call instruction's
+-/// argument attributes.
++/// Set CallLoweringInfo attribute flags based on a call instruction
++/// and called function attributes.
+ void TargetLoweringBase::ArgListEntry::setAttributes(const CallBase *Call,
+                                                      unsigned ArgIdx) {
+-  auto Attrs = Call->getAttributes();
+-
+-  IsSExt = Attrs.hasParamAttribute(ArgIdx, Attribute::SExt);
+-  IsZExt = Attrs.hasParamAttribute(ArgIdx, Attribute::ZExt);
+-  IsInReg = Attrs.hasParamAttribute(ArgIdx, Attribute::InReg);
+-  IsSRet = Attrs.hasParamAttribute(ArgIdx, Attribute::StructRet);
+-  IsNest = Attrs.hasParamAttribute(ArgIdx, Attribute::Nest);
+-  IsReturned = Attrs.hasParamAttribute(ArgIdx, Attribute::Returned);
+-  IsSwiftSelf = Attrs.hasParamAttribute(ArgIdx, Attribute::SwiftSelf);
+-  IsSwiftAsync = Attrs.hasParamAttribute(ArgIdx, Attribute::SwiftAsync);
+-  IsSwiftError = Attrs.hasParamAttribute(ArgIdx, Attribute::SwiftError);
+-  Alignment = Attrs.getParamStackAlignment(ArgIdx);
+-
+-  IsByVal = Attrs.hasParamAttribute(ArgIdx, Attribute::ByVal);
++  IsSExt = Call->paramHasAttr(ArgIdx, Attribute::SExt);
++  IsZExt = Call->paramHasAttr(ArgIdx, Attribute::ZExt);
++  IsInReg = Call->paramHasAttr(ArgIdx, Attribute::InReg);
++  IsSRet = Call->paramHasAttr(ArgIdx, Attribute::StructRet);
++  IsNest = Call->paramHasAttr(ArgIdx, Attribute::Nest);
++  IsByVal = Call->paramHasAttr(ArgIdx, Attribute::ByVal);
++  IsPreallocated = Call->paramHasAttr(ArgIdx, Attribute::Preallocated);
++  IsInAlloca = Call->paramHasAttr(ArgIdx, Attribute::InAlloca);
++  IsReturned = Call->paramHasAttr(ArgIdx, Attribute::Returned);
++  IsSwiftSelf = Call->paramHasAttr(ArgIdx, Attribute::SwiftSelf);
++  IsSwiftAsync = Call->paramHasAttr(ArgIdx, Attribute::SwiftAsync);
++  IsSwiftError = Call->paramHasAttr(ArgIdx, Attribute::SwiftError);
++  Alignment = Call->getParamStackAlign(ArgIdx);
+   ByValType = nullptr;
+   if (IsByVal) {
+     ByValType = Call->getParamByValType(ArgIdx);
+     if (!Alignment)
+       Alignment = Call->getParamAlign(ArgIdx);
+   }
+-  IsInAlloca = Attrs.hasParamAttribute(ArgIdx, Attribute::InAlloca);
+-  IsPreallocated = Attrs.hasParamAttribute(ArgIdx, Attribute::Preallocated);
+   PreallocatedType = nullptr;
+   if (IsPreallocated)
+     PreallocatedType = Call->getParamPreallocatedType(ArgIdx);
+diff --git a/llvm/test/CodeGen/X86/mismatched-byval.ll b/llvm/test/CodeGen/X86/mismatched-byval.ll
+deleted file mode 100644
+index f03e347848c6..000000000000
+--- a/llvm/test/CodeGen/X86/mismatched-byval.ll
++++ /dev/null
+@@ -1,45 +0,0 @@
+-; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+-; RUN: llc < %s -mtriple=x86_64-unknown | FileCheck %s
+-
+-; This tests that we only look at the call site for ABI attributes, so f and f2 should codegen differently
+-
+-define void @b(i8* byval(i8) %p) {
+-; CHECK-LABEL: b:
+-; CHECK:       # %bb.0:
+-; CHECK-NEXT:    retq
+-    ret void
+-}
+-
+-define void @f(i8 %p) {
+-; CHECK-LABEL: f:
+-; CHECK:       # %bb.0:
+-; CHECK-NEXT:    subq $24, %rsp
+-; CHECK-NEXT:    .cfi_def_cfa_offset 32
+-; CHECK-NEXT:    movb {{[0-9]+}}(%rsp), %al
+-; CHECK-NEXT:    movb %al, (%rsp)
+-; CHECK-NEXT:    callq b@PLT
+-; CHECK-NEXT:    addq $24, %rsp
+-; CHECK-NEXT:    .cfi_def_cfa_offset 8
+-; CHECK-NEXT:    retq
+-    %a = alloca i8
+-    ;store i8 %p, i8* %a
+-    call void @b(i8* byval(i8) %a)
+-    ret void
+-}
+-
+-define void @f2(i8 %p) {
+-; CHECK-LABEL: f2:
+-; CHECK:       # %bb.0:
+-; CHECK-NEXT:    pushq %rax
+-; CHECK-NEXT:    .cfi_def_cfa_offset 16
+-; CHECK-NEXT:    leaq {{[0-9]+}}(%rsp), %rdi
+-; CHECK-NEXT:    callq b@PLT
+-; CHECK-NEXT:    popq %rax
+-; CHECK-NEXT:    .cfi_def_cfa_offset 8
+-; CHECK-NEXT:    retq
+-    %a = alloca i8
+-    ;store i8 %p, i8* %a
+-    call void @b(i8* %a)
+-    ret void
+-}
+-
diff --git a/sys-devel/llvm/files/cherry/765ef4bb2af604ea2bbd6c1bffaa6e1600804c9e.patch b/sys-devel/llvm/files/cherry/765ef4bb2af604ea2bbd6c1bffaa6e1600804c9e.patch
new file mode 100644
index 0000000..a1bff4c
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/765ef4bb2af604ea2bbd6c1bffaa6e1600804c9e.patch
@@ -0,0 +1,712 @@
+commit 765ef4bb2af604ea2bbd6c1bffaa6e1600804c9e
+Author: Craig Topper <craig.topper@sifive.com>
+Date:   Wed Jun 9 07:08:16 2021 -0700
+
+    [X86] Check destination element type before forming VTRUNCS/VTRUNCUS in combineTruncateWithSat.
+    
+    Fixes crash reported here https://reviews.llvm.org/D73607
+    
+    Using a store to keep the trunc intact. Returning v16i24 would
+    cause the trunc to be optimized away in SelectionDAGBuilder.
+    
+    Reviewed By: RKSimon
+    
+    Differential Revision: https://reviews.llvm.org/D103940
+
+diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
+index b89e1674d7f3..90babf3b87b6 100644
+--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
++++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
+@@ -45273,7 +45273,8 @@ static SDValue combineTruncateWithSat(SDValue In, EVT VT, const SDLoc &DL,
+ 
+   const TargetLowering &TLI = DAG.getTargetLoweringInfo();
+   if (TLI.isTypeLegal(InVT) && InVT.isVector() && SVT != MVT::i1 &&
+-      Subtarget.hasAVX512() && (InSVT != MVT::i16 || Subtarget.hasBWI())) {
++      Subtarget.hasAVX512() && (InSVT != MVT::i16 || Subtarget.hasBWI()) &&
++      (SVT == MVT::i32 || SVT == MVT::i16 || SVT == MVT::i8)) {
+     unsigned TruncOpc = 0;
+     SDValue SatVal;
+     if (auto SSatVal = detectSSatPattern(In, VT)) {
+diff --git a/llvm/test/CodeGen/X86/vector-trunc-ssat.ll b/llvm/test/CodeGen/X86/vector-trunc-ssat.ll
+index b6ac19660088..924cfc169086 100644
+--- a/llvm/test/CodeGen/X86/vector-trunc-ssat.ll
++++ b/llvm/test/CodeGen/X86/vector-trunc-ssat.ll
+@@ -5631,3 +5631,678 @@ define <32 x i8> @trunc_ssat_v32i32_v32i8(<32 x i32>* %p0) "min-legal-vector-wid
+   %5 = trunc <32 x i32> %4 to <32 x i8>
+   ret <32 x i8> %5
+ }
++
++; This used to crash with avx512 due because we were missing a check for
++; unsupported element types like i24.
++define void @trunc_ssat_v16i32_v16i24(<16 x i32> %x, <16 x i24>* %y) nounwind {
++; SSE2-LABEL: trunc_ssat_v16i32_v16i24:
++; SSE2:       # %bb.0:
++; SSE2-NEXT:    pushq %rbp
++; SSE2-NEXT:    pushq %r15
++; SSE2-NEXT:    pushq %r14
++; SSE2-NEXT:    pushq %r12
++; SSE2-NEXT:    pushq %rbx
++; SSE2-NEXT:    movdqa {{.*#+}} xmm5 = [8388607,8388607,8388607,8388607]
++; SSE2-NEXT:    movdqa %xmm5, %xmm4
++; SSE2-NEXT:    pcmpgtd %xmm3, %xmm4
++; SSE2-NEXT:    pand %xmm4, %xmm3
++; SSE2-NEXT:    pandn %xmm5, %xmm4
++; SSE2-NEXT:    por %xmm3, %xmm4
++; SSE2-NEXT:    movdqa %xmm5, %xmm3
++; SSE2-NEXT:    pcmpgtd %xmm2, %xmm3
++; SSE2-NEXT:    pand %xmm3, %xmm2
++; SSE2-NEXT:    pandn %xmm5, %xmm3
++; SSE2-NEXT:    por %xmm2, %xmm3
++; SSE2-NEXT:    movdqa %xmm5, %xmm2
++; SSE2-NEXT:    pcmpgtd %xmm1, %xmm2
++; SSE2-NEXT:    pand %xmm2, %xmm1
++; SSE2-NEXT:    pandn %xmm5, %xmm2
++; SSE2-NEXT:    por %xmm1, %xmm2
++; SSE2-NEXT:    movdqa %xmm5, %xmm1
++; SSE2-NEXT:    pcmpgtd %xmm0, %xmm1
++; SSE2-NEXT:    pand %xmm1, %xmm0
++; SSE2-NEXT:    pandn %xmm5, %xmm1
++; SSE2-NEXT:    por %xmm0, %xmm1
++; SSE2-NEXT:    movdqa {{.*#+}} xmm5 = [4286578688,4286578688,4286578688,4286578688]
++; SSE2-NEXT:    movdqa %xmm1, %xmm0
++; SSE2-NEXT:    pcmpgtd %xmm5, %xmm0
++; SSE2-NEXT:    pand %xmm0, %xmm1
++; SSE2-NEXT:    pandn %xmm5, %xmm0
++; SSE2-NEXT:    por %xmm1, %xmm0
++; SSE2-NEXT:    movdqa %xmm2, %xmm1
++; SSE2-NEXT:    pcmpgtd %xmm5, %xmm1
++; SSE2-NEXT:    pand %xmm1, %xmm2
++; SSE2-NEXT:    pandn %xmm5, %xmm1
++; SSE2-NEXT:    por %xmm2, %xmm1
++; SSE2-NEXT:    movdqa %xmm3, %xmm2
++; SSE2-NEXT:    pcmpgtd %xmm5, %xmm2
++; SSE2-NEXT:    pand %xmm2, %xmm3
++; SSE2-NEXT:    pandn %xmm5, %xmm2
++; SSE2-NEXT:    por %xmm3, %xmm2
++; SSE2-NEXT:    movdqa %xmm4, %xmm3
++; SSE2-NEXT:    pcmpgtd %xmm5, %xmm3
++; SSE2-NEXT:    pand %xmm3, %xmm4
++; SSE2-NEXT:    pandn %xmm5, %xmm3
++; SSE2-NEXT:    por %xmm4, %xmm3
++; SSE2-NEXT:    movd %xmm3, %edx
++; SSE2-NEXT:    movw %dx, 36(%rdi)
++; SSE2-NEXT:    movd %xmm2, %ecx
++; SSE2-NEXT:    movw %cx, 24(%rdi)
++; SSE2-NEXT:    movd %xmm1, %eax
++; SSE2-NEXT:    movw %ax, 12(%rdi)
++; SSE2-NEXT:    movd %xmm0, %r8d
++; SSE2-NEXT:    movw %r8w, (%rdi)
++; SSE2-NEXT:    pshufd {{.*#+}} xmm4 = xmm3[3,3,3,3]
++; SSE2-NEXT:    movd %xmm4, %r9d
++; SSE2-NEXT:    movw %r9w, 45(%rdi)
++; SSE2-NEXT:    pshufd {{.*#+}} xmm4 = xmm3[2,3,2,3]
++; SSE2-NEXT:    movd %xmm4, %r10d
++; SSE2-NEXT:    movw %r10w, 42(%rdi)
++; SSE2-NEXT:    pshufd {{.*#+}} xmm3 = xmm3[1,1,1,1]
++; SSE2-NEXT:    movd %xmm3, %r11d
++; SSE2-NEXT:    movw %r11w, 39(%rdi)
++; SSE2-NEXT:    shrl $16, %edx
++; SSE2-NEXT:    movb %dl, 38(%rdi)
++; SSE2-NEXT:    pshufd {{.*#+}} xmm3 = xmm2[3,3,3,3]
++; SSE2-NEXT:    movd %xmm3, %r14d
++; SSE2-NEXT:    movw %r14w, 33(%rdi)
++; SSE2-NEXT:    pshufd {{.*#+}} xmm3 = xmm2[2,3,2,3]
++; SSE2-NEXT:    movd %xmm3, %r15d
++; SSE2-NEXT:    movw %r15w, 30(%rdi)
++; SSE2-NEXT:    pshufd {{.*#+}} xmm2 = xmm2[1,1,1,1]
++; SSE2-NEXT:    movd %xmm2, %r12d
++; SSE2-NEXT:    movw %r12w, 27(%rdi)
++; SSE2-NEXT:    shrl $16, %ecx
++; SSE2-NEXT:    movb %cl, 26(%rdi)
++; SSE2-NEXT:    pshufd {{.*#+}} xmm2 = xmm1[3,3,3,3]
++; SSE2-NEXT:    movd %xmm2, %esi
++; SSE2-NEXT:    movw %si, 21(%rdi)
++; SSE2-NEXT:    pshufd {{.*#+}} xmm2 = xmm1[2,3,2,3]
++; SSE2-NEXT:    movd %xmm2, %ebx
++; SSE2-NEXT:    movw %bx, 18(%rdi)
++; SSE2-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]
++; SSE2-NEXT:    movd %xmm1, %ebp
++; SSE2-NEXT:    movw %bp, 15(%rdi)
++; SSE2-NEXT:    shrl $16, %eax
++; SSE2-NEXT:    movb %al, 14(%rdi)
++; SSE2-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[3,3,3,3]
++; SSE2-NEXT:    movd %xmm1, %eax
++; SSE2-NEXT:    movw %ax, 9(%rdi)
++; SSE2-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[2,3,2,3]
++; SSE2-NEXT:    movd %xmm1, %ecx
++; SSE2-NEXT:    movw %cx, 6(%rdi)
++; SSE2-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]
++; SSE2-NEXT:    movd %xmm0, %edx
++; SSE2-NEXT:    movw %dx, 3(%rdi)
++; SSE2-NEXT:    shrl $16, %r8d
++; SSE2-NEXT:    movb %r8b, 2(%rdi)
++; SSE2-NEXT:    shrl $16, %r9d
++; SSE2-NEXT:    movb %r9b, 47(%rdi)
++; SSE2-NEXT:    shrl $16, %r10d
++; SSE2-NEXT:    movb %r10b, 44(%rdi)
++; SSE2-NEXT:    shrl $16, %r11d
++; SSE2-NEXT:    movb %r11b, 41(%rdi)
++; SSE2-NEXT:    shrl $16, %r14d
++; SSE2-NEXT:    movb %r14b, 35(%rdi)
++; SSE2-NEXT:    shrl $16, %r15d
++; SSE2-NEXT:    movb %r15b, 32(%rdi)
++; SSE2-NEXT:    shrl $16, %r12d
++; SSE2-NEXT:    movb %r12b, 29(%rdi)
++; SSE2-NEXT:    shrl $16, %esi
++; SSE2-NEXT:    movb %sil, 23(%rdi)
++; SSE2-NEXT:    shrl $16, %ebx
++; SSE2-NEXT:    movb %bl, 20(%rdi)
++; SSE2-NEXT:    shrl $16, %ebp
++; SSE2-NEXT:    movb %bpl, 17(%rdi)
++; SSE2-NEXT:    shrl $16, %eax
++; SSE2-NEXT:    movb %al, 11(%rdi)
++; SSE2-NEXT:    shrl $16, %ecx
++; SSE2-NEXT:    movb %cl, 8(%rdi)
++; SSE2-NEXT:    shrl $16, %edx
++; SSE2-NEXT:    movb %dl, 5(%rdi)
++; SSE2-NEXT:    popq %rbx
++; SSE2-NEXT:    popq %r12
++; SSE2-NEXT:    popq %r14
++; SSE2-NEXT:    popq %r15
++; SSE2-NEXT:    popq %rbp
++; SSE2-NEXT:    retq
++;
++; SSSE3-LABEL: trunc_ssat_v16i32_v16i24:
++; SSSE3:       # %bb.0:
++; SSSE3-NEXT:    pushq %rbp
++; SSSE3-NEXT:    pushq %r15
++; SSSE3-NEXT:    pushq %r14
++; SSSE3-NEXT:    pushq %r12
++; SSSE3-NEXT:    pushq %rbx
++; SSSE3-NEXT:    movdqa {{.*#+}} xmm5 = [8388607,8388607,8388607,8388607]
++; SSSE3-NEXT:    movdqa %xmm5, %xmm4
++; SSSE3-NEXT:    pcmpgtd %xmm3, %xmm4
++; SSSE3-NEXT:    pand %xmm4, %xmm3
++; SSSE3-NEXT:    pandn %xmm5, %xmm4
++; SSSE3-NEXT:    por %xmm3, %xmm4
++; SSSE3-NEXT:    movdqa %xmm5, %xmm3
++; SSSE3-NEXT:    pcmpgtd %xmm2, %xmm3
++; SSSE3-NEXT:    pand %xmm3, %xmm2
++; SSSE3-NEXT:    pandn %xmm5, %xmm3
++; SSSE3-NEXT:    por %xmm2, %xmm3
++; SSSE3-NEXT:    movdqa %xmm5, %xmm2
++; SSSE3-NEXT:    pcmpgtd %xmm1, %xmm2
++; SSSE3-NEXT:    pand %xmm2, %xmm1
++; SSSE3-NEXT:    pandn %xmm5, %xmm2
++; SSSE3-NEXT:    por %xmm1, %xmm2
++; SSSE3-NEXT:    movdqa %xmm5, %xmm1
++; SSSE3-NEXT:    pcmpgtd %xmm0, %xmm1
++; SSSE3-NEXT:    pand %xmm1, %xmm0
++; SSSE3-NEXT:    pandn %xmm5, %xmm1
++; SSSE3-NEXT:    por %xmm0, %xmm1
++; SSSE3-NEXT:    movdqa {{.*#+}} xmm5 = [4286578688,4286578688,4286578688,4286578688]
++; SSSE3-NEXT:    movdqa %xmm1, %xmm0
++; SSSE3-NEXT:    pcmpgtd %xmm5, %xmm0
++; SSSE3-NEXT:    pand %xmm0, %xmm1
++; SSSE3-NEXT:    pandn %xmm5, %xmm0
++; SSSE3-NEXT:    por %xmm1, %xmm0
++; SSSE3-NEXT:    movdqa %xmm2, %xmm1
++; SSSE3-NEXT:    pcmpgtd %xmm5, %xmm1
++; SSSE3-NEXT:    pand %xmm1, %xmm2
++; SSSE3-NEXT:    pandn %xmm5, %xmm1
++; SSSE3-NEXT:    por %xmm2, %xmm1
++; SSSE3-NEXT:    movdqa %xmm3, %xmm2
++; SSSE3-NEXT:    pcmpgtd %xmm5, %xmm2
++; SSSE3-NEXT:    pand %xmm2, %xmm3
++; SSSE3-NEXT:    pandn %xmm5, %xmm2
++; SSSE3-NEXT:    por %xmm3, %xmm2
++; SSSE3-NEXT:    movdqa %xmm4, %xmm3
++; SSSE3-NEXT:    pcmpgtd %xmm5, %xmm3
++; SSSE3-NEXT:    pand %xmm3, %xmm4
++; SSSE3-NEXT:    pandn %xmm5, %xmm3
++; SSSE3-NEXT:    por %xmm4, %xmm3
++; SSSE3-NEXT:    movd %xmm3, %edx
++; SSSE3-NEXT:    movw %dx, 36(%rdi)
++; SSSE3-NEXT:    movd %xmm2, %ecx
++; SSSE3-NEXT:    movw %cx, 24(%rdi)
++; SSSE3-NEXT:    movd %xmm1, %eax
++; SSSE3-NEXT:    movw %ax, 12(%rdi)
++; SSSE3-NEXT:    movd %xmm0, %r8d
++; SSSE3-NEXT:    movw %r8w, (%rdi)
++; SSSE3-NEXT:    pshufd {{.*#+}} xmm4 = xmm3[3,3,3,3]
++; SSSE3-NEXT:    movd %xmm4, %r9d
++; SSSE3-NEXT:    movw %r9w, 45(%rdi)
++; SSSE3-NEXT:    pshufd {{.*#+}} xmm4 = xmm3[2,3,2,3]
++; SSSE3-NEXT:    movd %xmm4, %r10d
++; SSSE3-NEXT:    movw %r10w, 42(%rdi)
++; SSSE3-NEXT:    pshufd {{.*#+}} xmm3 = xmm3[1,1,1,1]
++; SSSE3-NEXT:    movd %xmm3, %r11d
++; SSSE3-NEXT:    movw %r11w, 39(%rdi)
++; SSSE3-NEXT:    shrl $16, %edx
++; SSSE3-NEXT:    movb %dl, 38(%rdi)
++; SSSE3-NEXT:    pshufd {{.*#+}} xmm3 = xmm2[3,3,3,3]
++; SSSE3-NEXT:    movd %xmm3, %r14d
++; SSSE3-NEXT:    movw %r14w, 33(%rdi)
++; SSSE3-NEXT:    pshufd {{.*#+}} xmm3 = xmm2[2,3,2,3]
++; SSSE3-NEXT:    movd %xmm3, %r15d
++; SSSE3-NEXT:    movw %r15w, 30(%rdi)
++; SSSE3-NEXT:    pshufd {{.*#+}} xmm2 = xmm2[1,1,1,1]
++; SSSE3-NEXT:    movd %xmm2, %r12d
++; SSSE3-NEXT:    movw %r12w, 27(%rdi)
++; SSSE3-NEXT:    shrl $16, %ecx
++; SSSE3-NEXT:    movb %cl, 26(%rdi)
++; SSSE3-NEXT:    pshufd {{.*#+}} xmm2 = xmm1[3,3,3,3]
++; SSSE3-NEXT:    movd %xmm2, %esi
++; SSSE3-NEXT:    movw %si, 21(%rdi)
++; SSSE3-NEXT:    pshufd {{.*#+}} xmm2 = xmm1[2,3,2,3]
++; SSSE3-NEXT:    movd %xmm2, %ebx
++; SSSE3-NEXT:    movw %bx, 18(%rdi)
++; SSSE3-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]
++; SSSE3-NEXT:    movd %xmm1, %ebp
++; SSSE3-NEXT:    movw %bp, 15(%rdi)
++; SSSE3-NEXT:    shrl $16, %eax
++; SSSE3-NEXT:    movb %al, 14(%rdi)
++; SSSE3-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[3,3,3,3]
++; SSSE3-NEXT:    movd %xmm1, %eax
++; SSSE3-NEXT:    movw %ax, 9(%rdi)
++; SSSE3-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[2,3,2,3]
++; SSSE3-NEXT:    movd %xmm1, %ecx
++; SSSE3-NEXT:    movw %cx, 6(%rdi)
++; SSSE3-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]
++; SSSE3-NEXT:    movd %xmm0, %edx
++; SSSE3-NEXT:    movw %dx, 3(%rdi)
++; SSSE3-NEXT:    shrl $16, %r8d
++; SSSE3-NEXT:    movb %r8b, 2(%rdi)
++; SSSE3-NEXT:    shrl $16, %r9d
++; SSSE3-NEXT:    movb %r9b, 47(%rdi)
++; SSSE3-NEXT:    shrl $16, %r10d
++; SSSE3-NEXT:    movb %r10b, 44(%rdi)
++; SSSE3-NEXT:    shrl $16, %r11d
++; SSSE3-NEXT:    movb %r11b, 41(%rdi)
++; SSSE3-NEXT:    shrl $16, %r14d
++; SSSE3-NEXT:    movb %r14b, 35(%rdi)
++; SSSE3-NEXT:    shrl $16, %r15d
++; SSSE3-NEXT:    movb %r15b, 32(%rdi)
++; SSSE3-NEXT:    shrl $16, %r12d
++; SSSE3-NEXT:    movb %r12b, 29(%rdi)
++; SSSE3-NEXT:    shrl $16, %esi
++; SSSE3-NEXT:    movb %sil, 23(%rdi)
++; SSSE3-NEXT:    shrl $16, %ebx
++; SSSE3-NEXT:    movb %bl, 20(%rdi)
++; SSSE3-NEXT:    shrl $16, %ebp
++; SSSE3-NEXT:    movb %bpl, 17(%rdi)
++; SSSE3-NEXT:    shrl $16, %eax
++; SSSE3-NEXT:    movb %al, 11(%rdi)
++; SSSE3-NEXT:    shrl $16, %ecx
++; SSSE3-NEXT:    movb %cl, 8(%rdi)
++; SSSE3-NEXT:    shrl $16, %edx
++; SSSE3-NEXT:    movb %dl, 5(%rdi)
++; SSSE3-NEXT:    popq %rbx
++; SSSE3-NEXT:    popq %r12
++; SSSE3-NEXT:    popq %r14
++; SSSE3-NEXT:    popq %r15
++; SSSE3-NEXT:    popq %rbp
++; SSSE3-NEXT:    retq
++;
++; SSE41-LABEL: trunc_ssat_v16i32_v16i24:
++; SSE41:       # %bb.0:
++; SSE41-NEXT:    movdqa {{.*#+}} xmm4 = [8388607,8388607,8388607,8388607]
++; SSE41-NEXT:    pminsd %xmm4, %xmm3
++; SSE41-NEXT:    pminsd %xmm4, %xmm2
++; SSE41-NEXT:    pminsd %xmm4, %xmm1
++; SSE41-NEXT:    pminsd %xmm4, %xmm0
++; SSE41-NEXT:    movdqa {{.*#+}} xmm4 = [4286578688,4286578688,4286578688,4286578688]
++; SSE41-NEXT:    pmaxsd %xmm4, %xmm0
++; SSE41-NEXT:    pmaxsd %xmm4, %xmm1
++; SSE41-NEXT:    pmaxsd %xmm4, %xmm2
++; SSE41-NEXT:    pmaxsd %xmm4, %xmm3
++; SSE41-NEXT:    pextrd $3, %xmm3, %eax
++; SSE41-NEXT:    movw %ax, 45(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 47(%rdi)
++; SSE41-NEXT:    pextrd $2, %xmm3, %eax
++; SSE41-NEXT:    movw %ax, 42(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 44(%rdi)
++; SSE41-NEXT:    pextrd $1, %xmm3, %eax
++; SSE41-NEXT:    movw %ax, 39(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 41(%rdi)
++; SSE41-NEXT:    movd %xmm3, %eax
++; SSE41-NEXT:    movw %ax, 36(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 38(%rdi)
++; SSE41-NEXT:    pextrd $3, %xmm2, %eax
++; SSE41-NEXT:    movw %ax, 33(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 35(%rdi)
++; SSE41-NEXT:    pextrd $2, %xmm2, %eax
++; SSE41-NEXT:    movw %ax, 30(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 32(%rdi)
++; SSE41-NEXT:    pextrd $1, %xmm2, %eax
++; SSE41-NEXT:    movw %ax, 27(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 29(%rdi)
++; SSE41-NEXT:    movd %xmm2, %eax
++; SSE41-NEXT:    movw %ax, 24(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 26(%rdi)
++; SSE41-NEXT:    pextrd $3, %xmm1, %eax
++; SSE41-NEXT:    movw %ax, 21(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 23(%rdi)
++; SSE41-NEXT:    pextrd $2, %xmm1, %eax
++; SSE41-NEXT:    movw %ax, 18(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 20(%rdi)
++; SSE41-NEXT:    pextrd $1, %xmm1, %eax
++; SSE41-NEXT:    movw %ax, 15(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 17(%rdi)
++; SSE41-NEXT:    movd %xmm1, %eax
++; SSE41-NEXT:    movw %ax, 12(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 14(%rdi)
++; SSE41-NEXT:    pextrd $3, %xmm0, %eax
++; SSE41-NEXT:    movw %ax, 9(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 11(%rdi)
++; SSE41-NEXT:    pextrd $2, %xmm0, %eax
++; SSE41-NEXT:    movw %ax, 6(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 8(%rdi)
++; SSE41-NEXT:    pextrd $1, %xmm0, %eax
++; SSE41-NEXT:    movw %ax, 3(%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 5(%rdi)
++; SSE41-NEXT:    movd %xmm0, %eax
++; SSE41-NEXT:    movw %ax, (%rdi)
++; SSE41-NEXT:    shrl $16, %eax
++; SSE41-NEXT:    movb %al, 2(%rdi)
++; SSE41-NEXT:    retq
++;
++; AVX1-LABEL: trunc_ssat_v16i32_v16i24:
++; AVX1:       # %bb.0:
++; AVX1-NEXT:    vextractf128 $1, %ymm1, %xmm2
++; AVX1-NEXT:    vmovdqa {{.*#+}} xmm3 = [8388607,8388607,8388607,8388607]
++; AVX1-NEXT:    vpminsd %xmm3, %xmm2, %xmm4
++; AVX1-NEXT:    vpminsd %xmm3, %xmm1, %xmm2
++; AVX1-NEXT:    vextractf128 $1, %ymm0, %xmm1
++; AVX1-NEXT:    vpminsd %xmm3, %xmm1, %xmm1
++; AVX1-NEXT:    vpminsd %xmm3, %xmm0, %xmm0
++; AVX1-NEXT:    vmovdqa {{.*#+}} xmm3 = [4286578688,4286578688,4286578688,4286578688]
++; AVX1-NEXT:    vpmaxsd %xmm3, %xmm0, %xmm0
++; AVX1-NEXT:    vpmaxsd %xmm3, %xmm1, %xmm1
++; AVX1-NEXT:    vpmaxsd %xmm3, %xmm2, %xmm2
++; AVX1-NEXT:    vpmaxsd %xmm3, %xmm4, %xmm3
++; AVX1-NEXT:    vpextrd $3, %xmm3, %eax
++; AVX1-NEXT:    movw %ax, 45(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 47(%rdi)
++; AVX1-NEXT:    vpextrd $2, %xmm3, %eax
++; AVX1-NEXT:    movw %ax, 42(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 44(%rdi)
++; AVX1-NEXT:    vpextrd $1, %xmm3, %eax
++; AVX1-NEXT:    movw %ax, 39(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 41(%rdi)
++; AVX1-NEXT:    vmovd %xmm3, %eax
++; AVX1-NEXT:    movw %ax, 36(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 38(%rdi)
++; AVX1-NEXT:    vpextrd $3, %xmm2, %eax
++; AVX1-NEXT:    movw %ax, 33(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 35(%rdi)
++; AVX1-NEXT:    vpextrd $2, %xmm2, %eax
++; AVX1-NEXT:    movw %ax, 30(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 32(%rdi)
++; AVX1-NEXT:    vpextrd $1, %xmm2, %eax
++; AVX1-NEXT:    movw %ax, 27(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 29(%rdi)
++; AVX1-NEXT:    vmovd %xmm2, %eax
++; AVX1-NEXT:    movw %ax, 24(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 26(%rdi)
++; AVX1-NEXT:    vpextrd $3, %xmm1, %eax
++; AVX1-NEXT:    movw %ax, 21(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 23(%rdi)
++; AVX1-NEXT:    vpextrd $2, %xmm1, %eax
++; AVX1-NEXT:    movw %ax, 18(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 20(%rdi)
++; AVX1-NEXT:    vpextrd $1, %xmm1, %eax
++; AVX1-NEXT:    movw %ax, 15(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 17(%rdi)
++; AVX1-NEXT:    vmovd %xmm1, %eax
++; AVX1-NEXT:    movw %ax, 12(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 14(%rdi)
++; AVX1-NEXT:    vpextrd $3, %xmm0, %eax
++; AVX1-NEXT:    movw %ax, 9(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 11(%rdi)
++; AVX1-NEXT:    vpextrd $2, %xmm0, %eax
++; AVX1-NEXT:    movw %ax, 6(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 8(%rdi)
++; AVX1-NEXT:    vpextrd $1, %xmm0, %eax
++; AVX1-NEXT:    movw %ax, 3(%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 5(%rdi)
++; AVX1-NEXT:    vmovd %xmm0, %eax
++; AVX1-NEXT:    movw %ax, (%rdi)
++; AVX1-NEXT:    shrl $16, %eax
++; AVX1-NEXT:    movb %al, 2(%rdi)
++; AVX1-NEXT:    vzeroupper
++; AVX1-NEXT:    retq
++;
++; AVX2-LABEL: trunc_ssat_v16i32_v16i24:
++; AVX2:       # %bb.0:
++; AVX2-NEXT:    vpbroadcastd {{.*#+}} ymm2 = [8388607,8388607,8388607,8388607,8388607,8388607,8388607,8388607]
++; AVX2-NEXT:    vpminsd %ymm2, %ymm1, %ymm1
++; AVX2-NEXT:    vpminsd %ymm2, %ymm0, %ymm0
++; AVX2-NEXT:    vpbroadcastd {{.*#+}} ymm2 = [4286578688,4286578688,4286578688,4286578688,4286578688,4286578688,4286578688,4286578688]
++; AVX2-NEXT:    vpmaxsd %ymm2, %ymm0, %ymm0
++; AVX2-NEXT:    vpmaxsd %ymm2, %ymm1, %ymm1
++; AVX2-NEXT:    vextracti128 $1, %ymm1, %xmm2
++; AVX2-NEXT:    vpextrd $3, %xmm2, %eax
++; AVX2-NEXT:    movw %ax, 45(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 47(%rdi)
++; AVX2-NEXT:    vpextrd $2, %xmm2, %eax
++; AVX2-NEXT:    movw %ax, 42(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 44(%rdi)
++; AVX2-NEXT:    vpextrd $1, %xmm2, %eax
++; AVX2-NEXT:    movw %ax, 39(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 41(%rdi)
++; AVX2-NEXT:    vmovd %xmm2, %eax
++; AVX2-NEXT:    movw %ax, 36(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 38(%rdi)
++; AVX2-NEXT:    vpextrd $3, %xmm1, %eax
++; AVX2-NEXT:    movw %ax, 33(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 35(%rdi)
++; AVX2-NEXT:    vpextrd $2, %xmm1, %eax
++; AVX2-NEXT:    movw %ax, 30(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 32(%rdi)
++; AVX2-NEXT:    vpextrd $1, %xmm1, %eax
++; AVX2-NEXT:    movw %ax, 27(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 29(%rdi)
++; AVX2-NEXT:    vmovd %xmm1, %eax
++; AVX2-NEXT:    movw %ax, 24(%rdi)
++; AVX2-NEXT:    vextracti128 $1, %ymm0, %xmm1
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 26(%rdi)
++; AVX2-NEXT:    vpextrd $3, %xmm1, %eax
++; AVX2-NEXT:    movw %ax, 21(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 23(%rdi)
++; AVX2-NEXT:    vpextrd $2, %xmm1, %eax
++; AVX2-NEXT:    movw %ax, 18(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 20(%rdi)
++; AVX2-NEXT:    vpextrd $1, %xmm1, %eax
++; AVX2-NEXT:    movw %ax, 15(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 17(%rdi)
++; AVX2-NEXT:    vmovd %xmm1, %eax
++; AVX2-NEXT:    movw %ax, 12(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 14(%rdi)
++; AVX2-NEXT:    vpextrd $3, %xmm0, %eax
++; AVX2-NEXT:    movw %ax, 9(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 11(%rdi)
++; AVX2-NEXT:    vpextrd $2, %xmm0, %eax
++; AVX2-NEXT:    movw %ax, 6(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 8(%rdi)
++; AVX2-NEXT:    vpextrd $1, %xmm0, %eax
++; AVX2-NEXT:    movw %ax, 3(%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 5(%rdi)
++; AVX2-NEXT:    vmovd %xmm0, %eax
++; AVX2-NEXT:    movw %ax, (%rdi)
++; AVX2-NEXT:    shrl $16, %eax
++; AVX2-NEXT:    movb %al, 2(%rdi)
++; AVX2-NEXT:    vzeroupper
++; AVX2-NEXT:    retq
++;
++; AVX512-LABEL: trunc_ssat_v16i32_v16i24:
++; AVX512:       # %bb.0:
++; AVX512-NEXT:    pushq %rbp
++; AVX512-NEXT:    pushq %r15
++; AVX512-NEXT:    pushq %r14
++; AVX512-NEXT:    pushq %rbx
++; AVX512-NEXT:    vpminsd {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to16}, %zmm0, %zmm0
++; AVX512-NEXT:    vpmaxsd {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to16}, %zmm0, %zmm0
++; AVX512-NEXT:    vextracti32x4 $3, %zmm0, %xmm1
++; AVX512-NEXT:    vpextrd $3, %xmm1, %ecx
++; AVX512-NEXT:    movw %cx, 45(%rdi)
++; AVX512-NEXT:    vpextrd $2, %xmm1, %eax
++; AVX512-NEXT:    movw %ax, 42(%rdi)
++; AVX512-NEXT:    vpextrd $1, %xmm1, %ebp
++; AVX512-NEXT:    movw %bp, 39(%rdi)
++; AVX512-NEXT:    vmovd %xmm1, %esi
++; AVX512-NEXT:    movw %si, 36(%rdi)
++; AVX512-NEXT:    vextracti32x4 $2, %zmm0, %xmm1
++; AVX512-NEXT:    vpextrd $3, %xmm1, %ebx
++; AVX512-NEXT:    movw %bx, 33(%rdi)
++; AVX512-NEXT:    vpextrd $2, %xmm1, %edx
++; AVX512-NEXT:    movw %dx, 30(%rdi)
++; AVX512-NEXT:    vpextrd $1, %xmm1, %r15d
++; AVX512-NEXT:    movw %r15w, 27(%rdi)
++; AVX512-NEXT:    vmovd %xmm1, %r14d
++; AVX512-NEXT:    movw %r14w, 24(%rdi)
++; AVX512-NEXT:    vpextrd $3, %xmm0, %r11d
++; AVX512-NEXT:    movw %r11w, 9(%rdi)
++; AVX512-NEXT:    vpextrd $2, %xmm0, %r10d
++; AVX512-NEXT:    movw %r10w, 6(%rdi)
++; AVX512-NEXT:    vpextrd $1, %xmm0, %r9d
++; AVX512-NEXT:    movw %r9w, 3(%rdi)
++; AVX512-NEXT:    vmovd %xmm0, %r8d
++; AVX512-NEXT:    movw %r8w, (%rdi)
++; AVX512-NEXT:    shrl $16, %ecx
++; AVX512-NEXT:    movb %cl, 47(%rdi)
++; AVX512-NEXT:    shrl $16, %eax
++; AVX512-NEXT:    movb %al, 44(%rdi)
++; AVX512-NEXT:    shrl $16, %ebp
++; AVX512-NEXT:    movb %bpl, 41(%rdi)
++; AVX512-NEXT:    shrl $16, %esi
++; AVX512-NEXT:    movb %sil, 38(%rdi)
++; AVX512-NEXT:    shrl $16, %ebx
++; AVX512-NEXT:    movb %bl, 35(%rdi)
++; AVX512-NEXT:    shrl $16, %edx
++; AVX512-NEXT:    movb %dl, 32(%rdi)
++; AVX512-NEXT:    shrl $16, %r15d
++; AVX512-NEXT:    movb %r15b, 29(%rdi)
++; AVX512-NEXT:    shrl $16, %r14d
++; AVX512-NEXT:    movb %r14b, 26(%rdi)
++; AVX512-NEXT:    vextracti128 $1, %ymm0, %xmm0
++; AVX512-NEXT:    vpextrd $3, %xmm0, %edx
++; AVX512-NEXT:    movw %dx, 21(%rdi)
++; AVX512-NEXT:    vpextrd $2, %xmm0, %esi
++; AVX512-NEXT:    movw %si, 18(%rdi)
++; AVX512-NEXT:    vpextrd $1, %xmm0, %ecx
++; AVX512-NEXT:    movw %cx, 15(%rdi)
++; AVX512-NEXT:    vmovd %xmm0, %eax
++; AVX512-NEXT:    movw %ax, 12(%rdi)
++; AVX512-NEXT:    shrl $16, %r11d
++; AVX512-NEXT:    movb %r11b, 11(%rdi)
++; AVX512-NEXT:    shrl $16, %r10d
++; AVX512-NEXT:    movb %r10b, 8(%rdi)
++; AVX512-NEXT:    shrl $16, %r9d
++; AVX512-NEXT:    movb %r9b, 5(%rdi)
++; AVX512-NEXT:    shrl $16, %r8d
++; AVX512-NEXT:    movb %r8b, 2(%rdi)
++; AVX512-NEXT:    shrl $16, %edx
++; AVX512-NEXT:    movb %dl, 23(%rdi)
++; AVX512-NEXT:    shrl $16, %esi
++; AVX512-NEXT:    movb %sil, 20(%rdi)
++; AVX512-NEXT:    shrl $16, %ecx
++; AVX512-NEXT:    movb %cl, 17(%rdi)
++; AVX512-NEXT:    shrl $16, %eax
++; AVX512-NEXT:    movb %al, 14(%rdi)
++; AVX512-NEXT:    popq %rbx
++; AVX512-NEXT:    popq %r14
++; AVX512-NEXT:    popq %r15
++; AVX512-NEXT:    popq %rbp
++; AVX512-NEXT:    vzeroupper
++; AVX512-NEXT:    retq
++;
++; SKX-LABEL: trunc_ssat_v16i32_v16i24:
++; SKX:       # %bb.0:
++; SKX-NEXT:    pushq %rbp
++; SKX-NEXT:    pushq %r15
++; SKX-NEXT:    pushq %r14
++; SKX-NEXT:    pushq %rbx
++; SKX-NEXT:    vpminsd {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to16}, %zmm0, %zmm0
++; SKX-NEXT:    vpmaxsd {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to16}, %zmm0, %zmm0
++; SKX-NEXT:    vextracti32x4 $3, %zmm0, %xmm1
++; SKX-NEXT:    vpextrd $3, %xmm1, %ecx
++; SKX-NEXT:    movw %cx, 45(%rdi)
++; SKX-NEXT:    vpextrd $2, %xmm1, %eax
++; SKX-NEXT:    movw %ax, 42(%rdi)
++; SKX-NEXT:    vpextrd $1, %xmm1, %ebp
++; SKX-NEXT:    movw %bp, 39(%rdi)
++; SKX-NEXT:    vmovd %xmm1, %esi
++; SKX-NEXT:    movw %si, 36(%rdi)
++; SKX-NEXT:    vextracti32x4 $2, %zmm0, %xmm1
++; SKX-NEXT:    vpextrd $3, %xmm1, %ebx
++; SKX-NEXT:    movw %bx, 33(%rdi)
++; SKX-NEXT:    vpextrd $2, %xmm1, %edx
++; SKX-NEXT:    movw %dx, 30(%rdi)
++; SKX-NEXT:    vpextrd $1, %xmm1, %r15d
++; SKX-NEXT:    movw %r15w, 27(%rdi)
++; SKX-NEXT:    vmovd %xmm1, %r14d
++; SKX-NEXT:    vpextrd $3, %xmm0, %r11d
++; SKX-NEXT:    movw %r14w, 24(%rdi)
++; SKX-NEXT:    movw %r11w, 9(%rdi)
++; SKX-NEXT:    vpextrd $2, %xmm0, %r10d
++; SKX-NEXT:    vpextrd $1, %xmm0, %r9d
++; SKX-NEXT:    movw %r10w, 6(%rdi)
++; SKX-NEXT:    movw %r9w, 3(%rdi)
++; SKX-NEXT:    vmovd %xmm0, %r8d
++; SKX-NEXT:    movw %r8w, (%rdi)
++; SKX-NEXT:    shrl $16, %ecx
++; SKX-NEXT:    movb %cl, 47(%rdi)
++; SKX-NEXT:    shrl $16, %eax
++; SKX-NEXT:    movb %al, 44(%rdi)
++; SKX-NEXT:    shrl $16, %ebp
++; SKX-NEXT:    movb %bpl, 41(%rdi)
++; SKX-NEXT:    shrl $16, %esi
++; SKX-NEXT:    movb %sil, 38(%rdi)
++; SKX-NEXT:    shrl $16, %ebx
++; SKX-NEXT:    movb %bl, 35(%rdi)
++; SKX-NEXT:    shrl $16, %edx
++; SKX-NEXT:    movb %dl, 32(%rdi)
++; SKX-NEXT:    shrl $16, %r15d
++; SKX-NEXT:    movb %r15b, 29(%rdi)
++; SKX-NEXT:    shrl $16, %r14d
++; SKX-NEXT:    movb %r14b, 26(%rdi)
++; SKX-NEXT:    vextracti128 $1, %ymm0, %xmm0
++; SKX-NEXT:    vpextrd $3, %xmm0, %edx
++; SKX-NEXT:    movw %dx, 21(%rdi)
++; SKX-NEXT:    vpextrd $2, %xmm0, %esi
++; SKX-NEXT:    movw %si, 18(%rdi)
++; SKX-NEXT:    vpextrd $1, %xmm0, %ecx
++; SKX-NEXT:    movw %cx, 15(%rdi)
++; SKX-NEXT:    vmovd %xmm0, %eax
++; SKX-NEXT:    movw %ax, 12(%rdi)
++; SKX-NEXT:    shrl $16, %r11d
++; SKX-NEXT:    movb %r11b, 11(%rdi)
++; SKX-NEXT:    shrl $16, %r10d
++; SKX-NEXT:    movb %r10b, 8(%rdi)
++; SKX-NEXT:    shrl $16, %r9d
++; SKX-NEXT:    movb %r9b, 5(%rdi)
++; SKX-NEXT:    shrl $16, %r8d
++; SKX-NEXT:    movb %r8b, 2(%rdi)
++; SKX-NEXT:    shrl $16, %edx
++; SKX-NEXT:    movb %dl, 23(%rdi)
++; SKX-NEXT:    shrl $16, %esi
++; SKX-NEXT:    movb %sil, 20(%rdi)
++; SKX-NEXT:    shrl $16, %ecx
++; SKX-NEXT:    movb %cl, 17(%rdi)
++; SKX-NEXT:    shrl $16, %eax
++; SKX-NEXT:    movb %al, 14(%rdi)
++; SKX-NEXT:    popq %rbx
++; SKX-NEXT:    popq %r14
++; SKX-NEXT:    popq %r15
++; SKX-NEXT:    popq %rbp
++; SKX-NEXT:    vzeroupper
++; SKX-NEXT:    retq
++  %a = call <16 x i32> @llvm.smin.v16i32(<16 x i32> %x, <16 x i32> <i32 8388607, i32 8388607, i32 8388607, i32 8388607, i32 8388607, i32 8388607, i32 8388607, i32 8388607, i32 8388607, i32 8388607, i32 8388607, i32 8388607, i32 8388607, i32 8388607, i32 8388607, i32 8388607>)
++  %b = call <16 x i32> @llvm.smax.v16i32(<16 x i32> %a, <16 x i32> <i32 -8388608, i32 -8388608, i32 -8388608, i32 -8388608, i32 -8388608, i32 -8388608, i32 -8388608, i32 -8388608, i32 -8388608, i32 -8388608, i32 -8388608, i32 -8388608, i32 -8388608, i32 -8388608, i32 -8388608, i32 -8388608>)
++  %c = trunc <16 x i32> %b to <16 x i24>
++  store <16 x i24> %c, <16 x i24>* %y
++  ret void
++}
++declare <16 x i32> @llvm.smax.v16i32(<16 x i32>, <16 x i32>)
++declare <16 x i32> @llvm.smin.v16i32(<16 x i32>, <16 x i32>)
diff --git a/sys-devel/llvm/files/cherry/76f1baa7875acd88bdd4b431eed6e2d2decfc0fe.patch b/sys-devel/llvm/files/cherry/76f1baa7875acd88bdd4b431eed6e2d2decfc0fe.patch
new file mode 100644
index 0000000..e1c1830
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/76f1baa7875acd88bdd4b431eed6e2d2decfc0fe.patch
@@ -0,0 +1,352 @@
+commit 76f1baa7875acd88bdd4b431eed6e2d2decfc0fe
+Author: Saleem Abdulrasool <compnerd@compnerd.org>
+Date:   Fri Jun 11 19:05:42 2021 -0700
+
+    Revert "Revert "DirectoryWatcher: add an implementation for Windows""
+    
+    This reverts commit 0ec1cf13f2a4e31aa2c5ccc665c5fbdcd3a94577.
+    
+    Restore the implementation with some minor tweaks:
+    - Use std::unique_ptr for the path instead of std::vector
+      * Stylistic improvement as the buffer is already heap allocated, this
+        just makes it clearer.
+    - Correct the notification buffer allocation size
+      * Memory usage fix: we were allocating 4x the computed size
+    - Correct the passing of the buffer size to RDC
+      * Memory usage fix: we were reporting 1/4th of the size
+    - Convert the operation event to auto-reset
+      * Bug Fix: we never reset the event
+    - Remove `FILE_NOTIFY_CHANGE_LAST_ACCESS` from RDC events
+      * Memory usage fix: we never needed this notification
+    - Fold events for the notification action
+      * Stylistic improvement to be clear how the events map
+    - Update comment
+      * Stylistic improvement to be clear what the RAII controls
+    - Fix the race condition that was uncovered previously
+      * We would return from the construction before the watcher thread
+        began execution.  The test would then proceed to begin execution,
+        and we would miss the initial notifications.  We now ensure that the
+        watcher thread is initialized before we return.  This ensures that
+        we do not miss the initial notifications.
+    
+    Running the test on a SSD was able to uncover the access pattern.  This
+    now seems to pass reliably where it was previously flaky locally.
+
+diff --git a/clang/lib/DirectoryWatcher/windows/DirectoryWatcher-windows.cpp b/clang/lib/DirectoryWatcher/windows/DirectoryWatcher-windows.cpp
+index 25cbcf536388..6bcfb86e7f99 100644
+--- a/clang/lib/DirectoryWatcher/windows/DirectoryWatcher-windows.cpp
++++ b/clang/lib/DirectoryWatcher/windows/DirectoryWatcher-windows.cpp
+@@ -6,19 +6,12 @@
+ //
+ //===----------------------------------------------------------------------===//
+ 
+-// TODO: This is not yet an implementation, but it will make it so Windows
+-//       builds don't fail.
+-
+ #include "DirectoryScanner.h"
+ #include "clang/DirectoryWatcher/DirectoryWatcher.h"
+-
+ #include "llvm/ADT/STLExtras.h"
+-#include "llvm/ADT/ScopeExit.h"
+-#include "llvm/Support/AlignOf.h"
+-#include "llvm/Support/Errno.h"
+-#include "llvm/Support/Mutex.h"
++#include "llvm/Support/ConvertUTF.h"
+ #include "llvm/Support/Path.h"
+-#include <atomic>
++#include "llvm/Support/Windows/WindowsSupport.h"
+ #include <condition_variable>
+ #include <mutex>
+ #include <queue>
+@@ -28,23 +21,271 @@
+ 
+ namespace {
+ 
++using DirectoryWatcherCallback =
++    std::function<void(llvm::ArrayRef<clang::DirectoryWatcher::Event>, bool)>;
++
+ using namespace llvm;
+ using namespace clang;
+ 
+ class DirectoryWatcherWindows : public clang::DirectoryWatcher {
++  OVERLAPPED Overlapped;
++
++  std::vector<DWORD> Notifications;
++
++  std::thread WatcherThread;
++  std::thread HandlerThread;
++  std::function<void(ArrayRef<DirectoryWatcher::Event>, bool)> Callback;
++  SmallString<MAX_PATH> Path;
++  HANDLE Terminate;
++
++  std::mutex Mutex;
++  bool WatcherActive = false;
++  std::condition_variable Ready;
++
++  class EventQueue {
++    std::mutex M;
++    std::queue<DirectoryWatcher::Event> Q;
++    std::condition_variable CV;
++
++  public:
++    void emplace(DirectoryWatcher::Event::EventKind Kind, StringRef Path) {
++      {
++        std::unique_lock<std::mutex> L(M);
++        Q.emplace(Kind, Path);
++      }
++      CV.notify_one();
++    }
++
++    DirectoryWatcher::Event pop_front() {
++      std::unique_lock<std::mutex> L(M);
++      while (true) {
++        if (!Q.empty()) {
++          DirectoryWatcher::Event E = Q.front();
++          Q.pop();
++          return E;
++        }
++        CV.wait(L, [this]() { return !Q.empty(); });
++      }
++    }
++  } Q;
++
+ public:
+-  ~DirectoryWatcherWindows() override { }
+-  void InitialScan() { }
+-  void EventReceivingLoop() { }
+-  void StopWork() { }
++  DirectoryWatcherWindows(HANDLE DirectoryHandle, bool WaitForInitialSync,
++                          DirectoryWatcherCallback Receiver);
++
++  ~DirectoryWatcherWindows() override;
++
++  void InitialScan();
++  void WatcherThreadProc(HANDLE DirectoryHandle);
++  void NotifierThreadProc(bool WaitForInitialSync);
+ };
++
++DirectoryWatcherWindows::DirectoryWatcherWindows(
++    HANDLE DirectoryHandle, bool WaitForInitialSync,
++    DirectoryWatcherCallback Receiver)
++    : Callback(Receiver), Terminate(INVALID_HANDLE_VALUE) {
++  // Pre-compute the real location as we will be handing over the directory
++  // handle to the watcher and performing synchronous operations.
++  {
++    DWORD Size = GetFinalPathNameByHandleW(DirectoryHandle, NULL, 0, 0);
++    std::unique_ptr<WCHAR[]> Buffer{new WCHAR[Size]};
++    Size = GetFinalPathNameByHandleW(DirectoryHandle, Buffer.get(), Size, 0);
++    Buffer[Size] = L'\0';
++    llvm::sys::windows::UTF16ToUTF8(Buffer.get(), Size, Path);
++  }
++
++  size_t EntrySize = sizeof(FILE_NOTIFY_INFORMATION) + MAX_PATH * sizeof(WCHAR);
++  Notifications.resize((4 * EntrySize) / sizeof(DWORD));
++
++  memset(&Overlapped, 0, sizeof(Overlapped));
++  Overlapped.hEvent =
++      CreateEventW(NULL, /*bManualReset=*/FALSE, /*bInitialState=*/FALSE, NULL);
++  assert(Overlapped.hEvent && "unable to create event");
++
++  Terminate =
++      CreateEventW(NULL, /*bManualReset=*/TRUE, /*bInitialState=*/FALSE, NULL);
++
++  WatcherThread = std::thread([this, DirectoryHandle]() {
++    this->WatcherThreadProc(DirectoryHandle);
++  });
++
++  if (WaitForInitialSync)
++    InitialScan();
++
++  HandlerThread = std::thread([this, WaitForInitialSync]() {
++    this->NotifierThreadProc(WaitForInitialSync);
++  });
++
++  std::unique_lock<std::mutex> lock(Mutex);
++  Ready.wait(lock, [this] { return this->WatcherActive; });
++}
++
++DirectoryWatcherWindows::~DirectoryWatcherWindows() {
++  // Signal the Watcher to exit.
++  SetEvent(Terminate);
++  HandlerThread.join();
++  WatcherThread.join();
++  CloseHandle(Terminate);
++  CloseHandle(Overlapped.hEvent);
++}
++
++void DirectoryWatcherWindows::InitialScan() {
++  Callback(getAsFileEvents(scanDirectory(Path.data())), /*IsInitial=*/true);
++}
++
++void DirectoryWatcherWindows::WatcherThreadProc(HANDLE DirectoryHandle) {
++  {
++    std::unique_lock<std::mutex> lock(Mutex);
++    WatcherActive = true;
++  }
++  Ready.notify_one();
++
++  while (true) {
++    // We do not guarantee subdirectories, but macOS already provides
++    // subdirectories, might as well as ...
++    BOOL WatchSubtree = TRUE;
++    DWORD NotifyFilter = FILE_NOTIFY_CHANGE_FILE_NAME
++                       | FILE_NOTIFY_CHANGE_DIR_NAME
++                       | FILE_NOTIFY_CHANGE_SIZE
++                       | FILE_NOTIFY_CHANGE_LAST_WRITE
++                       | FILE_NOTIFY_CHANGE_CREATION;
++
++    DWORD BytesTransferred;
++    if (!ReadDirectoryChangesW(DirectoryHandle, Notifications.data(),
++                               Notifications.size() * sizeof(DWORD),
++                               WatchSubtree, NotifyFilter, &BytesTransferred,
++                               &Overlapped, NULL)) {
++      Q.emplace(DirectoryWatcher::Event::EventKind::WatcherGotInvalidated,
++                "");
++      break;
++    }
++
++    HANDLE Handles[2] = { Terminate, Overlapped.hEvent };
++    switch (WaitForMultipleObjects(2, Handles, FALSE, INFINITE)) {
++    case WAIT_OBJECT_0: // Terminate Request
++    case WAIT_FAILED:   // Failure
++      Q.emplace(DirectoryWatcher::Event::EventKind::WatcherGotInvalidated,
++                "");
++      (void)CloseHandle(DirectoryHandle);
++      return;
++    case WAIT_TIMEOUT:  // Spurious wakeup?
++      continue;
++    case WAIT_OBJECT_0 + 1: // Directory change
++      break;
++    }
++
++    if (!GetOverlappedResult(DirectoryHandle, &Overlapped, &BytesTransferred,
++                             FALSE)) {
++      Q.emplace(DirectoryWatcher::Event::EventKind::WatchedDirRemoved,
++                "");
++      Q.emplace(DirectoryWatcher::Event::EventKind::WatcherGotInvalidated,
++                "");
++      break;
++    }
++
++    // There was a buffer underrun on the kernel side.  We may have lost
++    // events, please re-synchronize.
++    if (BytesTransferred == 0) {
++      Q.emplace(DirectoryWatcher::Event::EventKind::WatcherGotInvalidated,
++                "");
++      break;
++    }
++
++    for (FILE_NOTIFY_INFORMATION *I =
++            (FILE_NOTIFY_INFORMATION *)Notifications.data();
++         I;
++         I = I->NextEntryOffset
++              ? (FILE_NOTIFY_INFORMATION *)((CHAR *)I + I->NextEntryOffset)
++              : NULL) {
++      DirectoryWatcher::Event::EventKind Kind =
++          DirectoryWatcher::Event::EventKind::WatcherGotInvalidated;
++      switch (I->Action) {
++      case FILE_ACTION_ADDED:
++      case FILE_ACTION_MODIFIED:
++      case FILE_ACTION_RENAMED_NEW_NAME:
++        Kind = DirectoryWatcher::Event::EventKind::Modified;
++        break;
++      case FILE_ACTION_REMOVED:
++      case FILE_ACTION_RENAMED_OLD_NAME:
++        Kind = DirectoryWatcher::Event::EventKind::Removed;
++        break;
++      }
++
++      SmallString<MAX_PATH> filename;
++      sys::windows::UTF16ToUTF8(I->FileName, I->FileNameLength / sizeof(WCHAR),
++                                filename);
++      Q.emplace(Kind, filename);
++    }
++  }
++
++  (void)CloseHandle(DirectoryHandle);
++}
++
++void DirectoryWatcherWindows::NotifierThreadProc(bool WaitForInitialSync) {
++  // If we did not wait for the initial sync, then we should perform the
++  // scan when we enter the thread.
++  if (!WaitForInitialSync)
++    this->InitialScan();
++
++  while (true) {
++    DirectoryWatcher::Event E = Q.pop_front();
++    Callback(E, /*IsInitial=*/false);
++    if (E.Kind == DirectoryWatcher::Event::EventKind::WatcherGotInvalidated)
++      break;
++  }
++}
++
++auto error(DWORD ErrorCode) {
++  DWORD Flags = FORMAT_MESSAGE_ALLOCATE_BUFFER
++              | FORMAT_MESSAGE_FROM_SYSTEM
++              | FORMAT_MESSAGE_IGNORE_INSERTS;
++
++  LPSTR Buffer;
++  if (!FormatMessageA(Flags, NULL, ErrorCode,
++                      MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPSTR)&Buffer,
++                      0, NULL)) {
++    return make_error<llvm::StringError>("error " + utostr(ErrorCode),
++                                         inconvertibleErrorCode());
++  }
++  std::string Message{Buffer};
++  LocalFree(Buffer);
++  return make_error<llvm::StringError>(Message, inconvertibleErrorCode());
++}
++
+ } // namespace
+ 
+ llvm::Expected<std::unique_ptr<DirectoryWatcher>>
+-clang::DirectoryWatcher::create(
+-    StringRef Path,
+-    std::function<void(llvm::ArrayRef<DirectoryWatcher::Event>, bool)> Receiver,
+-    bool WaitForInitialSync) {
+-  return llvm::Expected<std::unique_ptr<DirectoryWatcher>>(
+-      llvm::errorCodeToError(std::make_error_code(std::errc::not_supported)));
++clang::DirectoryWatcher::create(StringRef Path,
++                                DirectoryWatcherCallback Receiver,
++                                bool WaitForInitialSync) {
++  if (Path.empty())
++    llvm::report_fatal_error(
++        "DirectoryWatcher::create can not accept an empty Path.");
++
++  if (!sys::fs::is_directory(Path))
++    llvm::report_fatal_error(
++        "DirectoryWatcher::create can not accept a filepath.");
++
++  SmallVector<wchar_t, MAX_PATH> WidePath;
++  if (sys::windows::UTF8ToUTF16(Path, WidePath))
++    return llvm::make_error<llvm::StringError>(
++        "unable to convert path to UTF-16", llvm::inconvertibleErrorCode());
++
++  DWORD DesiredAccess = FILE_LIST_DIRECTORY;
++  DWORD ShareMode = FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE;
++  DWORD CreationDisposition = OPEN_EXISTING;
++  DWORD FlagsAndAttributes = FILE_FLAG_BACKUP_SEMANTICS | FILE_FLAG_OVERLAPPED;
++
++  HANDLE DirectoryHandle =
++      CreateFileW(WidePath.data(), DesiredAccess, ShareMode,
++                  /*lpSecurityAttributes=*/NULL, CreationDisposition,
++                  FlagsAndAttributes, NULL);
++  if (DirectoryHandle == INVALID_HANDLE_VALUE)
++    return error(GetLastError());
++
++  // NOTE: We use the watcher instance as a RAII object to discard the handles
++  // for the directory in case of an error.  Hence, this is early allocated,
++  // with the state being written directly to the watcher.
++  return std::make_unique<DirectoryWatcherWindows>(
++      DirectoryHandle, WaitForInitialSync, Receiver);
+ }
+diff --git a/clang/unittests/DirectoryWatcher/CMakeLists.txt b/clang/unittests/DirectoryWatcher/CMakeLists.txt
+index 0355525a86b0..84a1a9d40c25 100644
+--- a/clang/unittests/DirectoryWatcher/CMakeLists.txt
++++ b/clang/unittests/DirectoryWatcher/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-if(APPLE OR CMAKE_SYSTEM_NAME MATCHES "Linux")
++if(APPLE OR CMAKE_SYSTEM_NAME MATCHES "Linux" OR CMAKE_SYSTEM_NAME STREQUAL Windows)
+ 
+   set(LLVM_LINK_COMPONENTS
+     Support
diff --git a/sys-devel/llvm/files/cherry/7bb8bfa0622b8ee55c3f748004dcf4d83d48cf97.patch b/sys-devel/llvm/files/cherry/7bb8bfa0622b8ee55c3f748004dcf4d83d48cf97.patch
new file mode 100644
index 0000000..49e29f6
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/7bb8bfa0622b8ee55c3f748004dcf4d83d48cf97.patch
@@ -0,0 +1,174 @@
+commit 7bb8bfa0622b8ee55c3f748004dcf4d83d48cf97
+Author: Sanjay Patel <spatel@rotateright.com>
+Date:   Sun May 30 06:43:33 2021 -0400
+
+    [InstCombine] fix miscompile from vector select substitution
+    
+    This is similar to the fix in c590a9880d7a ( PR49832 ), but
+    we missed handling the pattern for select of bools (no compare
+    inst).
+    
+    We can't substitute a vector value because the equality condition
+    replacement that we are attempting requires that the condition
+    is true/false for the entire value. Vector select can be partly
+    true/false.
+    
+    I added an assert for vector types, so we shouldn't hit this again.
+    Fixed formatting while auditing the callers.
+    
+    https://llvm.org/PR50500
+
+diff --git a/llvm/include/llvm/Analysis/InstructionSimplify.h b/llvm/include/llvm/Analysis/InstructionSimplify.h
+index e1e7da14376e..75ce4e38df16 100644
+--- a/llvm/include/llvm/Analysis/InstructionSimplify.h
++++ b/llvm/include/llvm/Analysis/InstructionSimplify.h
+@@ -299,7 +299,7 @@ Value *SimplifyInstruction(Instruction *I, const SimplifyQuery &Q,
+ /// return null.
+ /// AllowRefinement specifies whether the simplification can be a refinement
+ /// (e.g. 0 instead of poison), or whether it needs to be strictly identical.
+-Value *SimplifyWithOpReplaced(Value *V, Value *Op, Value *RepOp,
++Value *simplifyWithOpReplaced(Value *V, Value *Op, Value *RepOp,
+                               const SimplifyQuery &Q, bool AllowRefinement);
+ 
+ /// Replace all uses of 'I' with 'SimpleV' and simplify the uses recursively.
+diff --git a/llvm/lib/Analysis/InstructionSimplify.cpp b/llvm/lib/Analysis/InstructionSimplify.cpp
+index c72670b901fe..e6baed1779cd 100644
+--- a/llvm/lib/Analysis/InstructionSimplify.cpp
++++ b/llvm/lib/Analysis/InstructionSimplify.cpp
+@@ -3852,10 +3852,12 @@ Value *llvm::SimplifyFCmpInst(unsigned Predicate, Value *LHS, Value *RHS,
+   return ::SimplifyFCmpInst(Predicate, LHS, RHS, FMF, Q, RecursionLimit);
+ }
+ 
+-static Value *SimplifyWithOpReplaced(Value *V, Value *Op, Value *RepOp,
++static Value *simplifyWithOpReplaced(Value *V, Value *Op, Value *RepOp,
+                                      const SimplifyQuery &Q,
+                                      bool AllowRefinement,
+                                      unsigned MaxRecurse) {
++  assert(!Op->getType()->isVectorTy() && "This is not safe for vectors");
++
+   // Trivial replacement.
+   if (V == Op)
+     return RepOp;
+@@ -3965,10 +3967,10 @@ static Value *SimplifyWithOpReplaced(Value *V, Value *Op, Value *RepOp,
+   return ConstantFoldInstOperands(I, ConstOps, Q.DL, Q.TLI);
+ }
+ 
+-Value *llvm::SimplifyWithOpReplaced(Value *V, Value *Op, Value *RepOp,
++Value *llvm::simplifyWithOpReplaced(Value *V, Value *Op, Value *RepOp,
+                                     const SimplifyQuery &Q,
+                                     bool AllowRefinement) {
+-  return ::SimplifyWithOpReplaced(V, Op, RepOp, Q, AllowRefinement,
++  return ::simplifyWithOpReplaced(V, Op, RepOp, Q, AllowRefinement,
+                                   RecursionLimit);
+ }
+ 
+@@ -4090,17 +4092,17 @@ static Value *simplifySelectWithICmpCond(Value *CondVal, Value *TrueVal,
+   // Note that the equivalence/replacement opportunity does not hold for vectors
+   // because each element of a vector select is chosen independently.
+   if (Pred == ICmpInst::ICMP_EQ && !CondVal->getType()->isVectorTy()) {
+-    if (SimplifyWithOpReplaced(FalseVal, CmpLHS, CmpRHS, Q,
++    if (simplifyWithOpReplaced(FalseVal, CmpLHS, CmpRHS, Q,
+                                /* AllowRefinement */ false, MaxRecurse) ==
+             TrueVal ||
+-        SimplifyWithOpReplaced(FalseVal, CmpRHS, CmpLHS, Q,
++        simplifyWithOpReplaced(FalseVal, CmpRHS, CmpLHS, Q,
+                                /* AllowRefinement */ false, MaxRecurse) ==
+             TrueVal)
+       return FalseVal;
+-    if (SimplifyWithOpReplaced(TrueVal, CmpLHS, CmpRHS, Q,
++    if (simplifyWithOpReplaced(TrueVal, CmpLHS, CmpRHS, Q,
+                                /* AllowRefinement */ true, MaxRecurse) ==
+             FalseVal ||
+-        SimplifyWithOpReplaced(TrueVal, CmpRHS, CmpLHS, Q,
++        simplifyWithOpReplaced(TrueVal, CmpRHS, CmpLHS, Q,
+                                /* AllowRefinement */ true, MaxRecurse) ==
+             FalseVal)
+       return FalseVal;
+diff --git a/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp b/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
+index 68124a188f71..f48cc901b742 100644
+--- a/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
++++ b/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
+@@ -1142,7 +1142,7 @@ Instruction *InstCombinerImpl::foldSelectValueEquivalence(SelectInst &Sel,
+   Value *CmpLHS = Cmp.getOperand(0), *CmpRHS = Cmp.getOperand(1);
+   if (TrueVal != CmpLHS &&
+       isGuaranteedNotToBeUndefOrPoison(CmpRHS, SQ.AC, &Sel, &DT)) {
+-    if (Value *V = SimplifyWithOpReplaced(TrueVal, CmpLHS, CmpRHS, SQ,
++    if (Value *V = simplifyWithOpReplaced(TrueVal, CmpLHS, CmpRHS, SQ,
+                                           /* AllowRefinement */ true))
+       return replaceOperand(Sel, Swapped ? 2 : 1, V);
+ 
+@@ -1164,7 +1164,7 @@ Instruction *InstCombinerImpl::foldSelectValueEquivalence(SelectInst &Sel,
+   }
+   if (TrueVal != CmpRHS &&
+       isGuaranteedNotToBeUndefOrPoison(CmpLHS, SQ.AC, &Sel, &DT))
+-    if (Value *V = SimplifyWithOpReplaced(TrueVal, CmpRHS, CmpLHS, SQ,
++    if (Value *V = simplifyWithOpReplaced(TrueVal, CmpRHS, CmpLHS, SQ,
+                                           /* AllowRefinement */ true))
+       return replaceOperand(Sel, Swapped ? 2 : 1, V);
+ 
+@@ -1195,9 +1195,9 @@ Instruction *InstCombinerImpl::foldSelectValueEquivalence(SelectInst &Sel,
+   // We have an 'EQ' comparison, so the select's false value will propagate.
+   // Example:
+   // (X == 42) ? 43 : (X + 1) --> (X == 42) ? (X + 1) : (X + 1) --> X + 1
+-  if (SimplifyWithOpReplaced(FalseVal, CmpLHS, CmpRHS, SQ,
++  if (simplifyWithOpReplaced(FalseVal, CmpLHS, CmpRHS, SQ,
+                              /* AllowRefinement */ false) == TrueVal ||
+-      SimplifyWithOpReplaced(FalseVal, CmpRHS, CmpLHS, SQ,
++      simplifyWithOpReplaced(FalseVal, CmpRHS, CmpLHS, SQ,
+                              /* AllowRefinement */ false) == TrueVal) {
+     return replaceInstUsesWith(Sel, FalseVal);
+   }
+@@ -2714,12 +2714,14 @@ Instruction *InstCombinerImpl::visitSelectInst(SelectInst &SI) {
+         match(TrueVal, m_Specific(B)) && match(FalseVal, m_Zero()))
+       return replaceOperand(SI, 0, A);
+ 
+-    if (Value *S = SimplifyWithOpReplaced(TrueVal, CondVal, One, SQ,
+-                                          /* AllowRefinement */ true))
+-      return replaceOperand(SI, 1, S);
+-    if (Value *S = SimplifyWithOpReplaced(FalseVal, CondVal, Zero, SQ,
+-                                          /* AllowRefinement */ true))
+-      return replaceOperand(SI, 2, S);
++    if (!SelType->isVectorTy()) {
++      if (Value *S = simplifyWithOpReplaced(TrueVal, CondVal, One, SQ,
++                                            /* AllowRefinement */ true))
++        return replaceOperand(SI, 1, S);
++      if (Value *S = simplifyWithOpReplaced(FalseVal, CondVal, Zero, SQ,
++                                            /* AllowRefinement */ true))
++        return replaceOperand(SI, 2, S);
++    }
+ 
+     if (match(FalseVal, m_Zero()) || match(TrueVal, m_One())) {
+       Use *Y = nullptr;
+diff --git a/llvm/test/Transforms/InstCombine/select-safe-bool-transforms.ll b/llvm/test/Transforms/InstCombine/select-safe-bool-transforms.ll
+index c15a64ee7315..fef4081c0bb6 100644
+--- a/llvm/test/Transforms/InstCombine/select-safe-bool-transforms.ll
++++ b/llvm/test/Transforms/InstCombine/select-safe-bool-transforms.ll
+@@ -468,3 +468,28 @@ define i1 @bor_lor_right2(i1 %A, i1 %B) {
+   ret i1 %res
+ }
+ 
++; Value equivalence substitution does not account for vector
++; transforms, so it needs a scalar condition operand.
++; For example, this would miscompile if %a = {1, 0}.
++
++define <2 x i1> @PR50500_trueval(<2 x i1> %a, <2 x i1> %b) {
++; CHECK-LABEL: @PR50500_trueval(
++; CHECK-NEXT:    [[S:%.*]] = shufflevector <2 x i1> [[A:%.*]], <2 x i1> poison, <2 x i32> <i32 1, i32 0>
++; CHECK-NEXT:    [[R:%.*]] = select <2 x i1> [[A]], <2 x i1> [[S]], <2 x i1> [[B:%.*]]
++; CHECK-NEXT:    ret <2 x i1> [[R]]
++;
++  %s = shufflevector <2 x i1> %a, <2 x i1> poison, <2 x i32> <i32 1, i32 0>
++  %r = select <2 x i1> %a, <2 x i1> %s, <2 x i1> %b
++  ret <2 x i1> %r
++}
++
++define <2 x i1> @PR50500_falseval(<2 x i1> %a, <2 x i1> %b) {
++; CHECK-LABEL: @PR50500_falseval(
++; CHECK-NEXT:    [[S:%.*]] = shufflevector <2 x i1> [[A:%.*]], <2 x i1> poison, <2 x i32> <i32 1, i32 0>
++; CHECK-NEXT:    [[R:%.*]] = select <2 x i1> [[A]], <2 x i1> [[B:%.*]], <2 x i1> [[S]]
++; CHECK-NEXT:    ret <2 x i1> [[R]]
++;
++  %s = shufflevector <2 x i1> %a, <2 x i1> poison, <2 x i32> <i32 1, i32 0>
++  %r = select <2 x i1> %a, <2 x i1> %b, <2 x i1> %s
++  ret <2 x i1> %r
++}
diff --git a/sys-devel/llvm/files/cherry/7de2173c2a4c45711831cfee3ccf53690c76ff07.patch b/sys-devel/llvm/files/cherry/7de2173c2a4c45711831cfee3ccf53690c76ff07.patch
new file mode 100644
index 0000000..13c7c3e
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/7de2173c2a4c45711831cfee3ccf53690c76ff07.patch
@@ -0,0 +1,115 @@
+commit 7de2173c2a4c45711831cfee3ccf53690c76ff07
+Author: Fangrui Song <i@maskray.me>
+Date:   Wed Jul 14 10:18:30 2021 -0700
+
+    [ELF] --fortran-common: prefer STB_WEAK to COMMON
+    
+    The ELF specification says "The link editor honors the common definition and
+    ignores the weak ones." GNU ld and our Symbol::compare follow this, but the
+    --fortran-common code (D86142) made a mistake on the precedence.
+    
+    Fixes https://bugs.llvm.org/show_bug.cgi?id=51082
+    
+    Reviewed By: peter.smith, sfertile
+    
+    Differential Revision: https://reviews.llvm.org/D105945
+
+diff --git a/lld/ELF/InputFiles.cpp b/lld/ELF/InputFiles.cpp
+index 83a3788e0dc6..8487210eb6e1 100644
+--- a/lld/ELF/InputFiles.cpp
++++ b/lld/ELF/InputFiles.cpp
+@@ -1262,7 +1262,7 @@ void ArchiveFile::fetch(const Archive::Symbol &sym) {
+ //
+ // 2) Consider the tentative definition as still undefined (ie the promotion to
+ //    a real definition happens only after all symbol resolution is done).
+-//    The linker searches archive members for global or weak definitions to
++//    The linker searches archive members for STB_GLOBAL definitions to
+ //    replace the tentative definition with. This is the behavior used by
+ //    GNU ld.
+ //
+@@ -1278,7 +1278,7 @@ static bool isBitcodeNonCommonDef(MemoryBufferRef mb, StringRef symName,
+   for (const irsymtab::Reader::SymbolRef &sym :
+        symtabFile.TheReader.symbols()) {
+     if (sym.isGlobal() && sym.getName() == symName)
+-      return !sym.isUndefined() && !sym.isCommon();
++      return !sym.isUndefined() && !sym.isWeak() && !sym.isCommon();
+   }
+   return false;
+ }
+@@ -1292,7 +1292,8 @@ static bool isNonCommonDef(MemoryBufferRef mb, StringRef symName,
+   for (auto sym : obj->template getGlobalELFSyms<ELFT>()) {
+     Expected<StringRef> name = sym.getName(stringtable);
+     if (name && name.get() == symName)
+-      return sym.isDefined() && !sym.isCommon();
++      return sym.isDefined() && sym.getBinding() == STB_GLOBAL &&
++             !sym.isCommon();
+   }
+   return false;
+ }
+diff --git a/lld/test/ELF/common-archive-lookup.s b/lld/test/ELF/common-archive-lookup.s
+index efaad669b724..bbfadb448f2d 100644
+--- a/lld/test/ELF/common-archive-lookup.s
++++ b/lld/test/ELF/common-archive-lookup.s
+@@ -20,6 +20,7 @@
+ ## Bitcode files.
+ # RUN: llvm-as -o 1.bc commonblock.ll
+ # RUN: llvm-as -o 2.bc blockdata.ll
++# RUN: llvm-as -o 3.bc weak.ll
+ 
+ ## Bitcode archive.
+ # RUN: llvm-ar crs 4.a 1.bc 2.bc
+@@ -31,10 +32,10 @@
+ # RUN: llvm-objdump -D -j .data 2 | FileCheck --check-prefix=TEST1 %s
+ 
+ # RUN: ld.lld -o 3 main.o 2.a
+-# RUN: llvm-objdump -D -j .data 3 | FileCheck --check-prefix=TEST1 %s
++# RUN: llvm-objdump -t 3 | FileCheck --check-prefix=BSS %s
+ 
+ # RUN: ld.lld -o 4 main.o --start-lib 1.o weak_data_only.o --end-lib
+-# RUN: llvm-objdump -D -j .data 4 | FileCheck --check-prefix=TEST1 %s
++# RUN: llvm-objdump -t 4 | FileCheck --check-prefix=BSS %s
+ 
+ # RUN: ld.lld -o 5 main.o 3.a --print-map | FileCheck --check-prefix=MAP %s
+ 
+@@ -63,6 +64,9 @@
+ # RUN: ld.lld -o - main.o  --start-lib 1.bc 2.bc --end-lib --lto-emit-asm | \
+ # RUN:   FileCheck --check-prefix=ASM %s
+ 
++## COMMON overrides weak. Don't extract 3.bc which provides a weak definition.
++# RUN: ld.lld -o /dev/null main.o --start-lib 1.bc 3.bc --end-lib -y block | FileCheck --check-prefix=LTO_WEAK %s
++
+ ## Old FORTRAN that mixes use of COMMON blocks and BLOCK DATA requires that we
+ ## search through archives for non-tentative definitions (from the BLOCK DATA)
+ ## to replace the tentative definitions (from the COMMON block(s)).
+@@ -75,6 +79,7 @@
+ # TEST1-NEXT:       fb 21 09 40
+ # TEST1-NEXT:       ...
+ 
++# BSS:       [[#%x,]] g     O .bss   0000000000000028 block
+ 
+ # NFC:       Name: block
+ # NFC-NEXT:  Value:
+@@ -100,6 +105,10 @@
+ # ASM-NEXT:    .long 5
+ # ASM:         .size   block, 20
+ 
++# LTO_WEAK:     1.bc: common definition of block
++# LTO_WEAK:     <internal>: reference to block
++# LTO_WEAK-NOT: {{.}}
++
+ #--- ref.s
+   .text
+   .abiversion 2
+@@ -167,6 +176,12 @@ target triple = "powerpc64le-unknown-linux-gnu"
+ 
+ @block = dso_local local_unnamed_addr global [5 x i32] [i32 5, i32 0, i32 0, i32 0, i32 0], align 4
+ 
++#--- weak.ll
++target datalayout = "e-m:e-i64:64-n32:64-S128-v256:256:256-v512:512:512"
++target triple = "powerpc64le-unknown-linux-gnu"
++
++@block = weak dso_local global [5 x i32] [i32 5, i32 0, i32 0, i32 0, i32 0], align 4
++
+ #--- commonblock.ll
+ target datalayout = "e-m:e-i64:64-n32:64-S128-v256:256:256-v512:512:512"
+ target triple = "powerpc64le-unknown-linux-gnu"
diff --git a/sys-devel/llvm/files/cherry/807fc7cdc97fc172b4967707a7718e7333351bff.patch b/sys-devel/llvm/files/cherry/807fc7cdc97fc172b4967707a7718e7333351bff.patch
new file mode 100644
index 0000000..4fc8d52
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/807fc7cdc97fc172b4967707a7718e7333351bff.patch
@@ -0,0 +1,39 @@
+commit 807fc7cdc97fc172b4967707a7718e7333351bff
+Author: Stefan Pintilie <stefanp@ca.ibm.com>
+Date:   Fri May 28 11:33:45 2021 -0500
+
+    Revert "[NFC] Reuse existing variables instead of re-requesting successors"
+    
+    This reverts commit c467585682dcdda75e645ef3ab47c8b48440db12.
+
+diff --git a/llvm/lib/Transforms/Scalar/LoopDeletion.cpp b/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
+index acc2056c4a54..cd2a3fc48e3b 100644
+--- a/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
++++ b/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
+@@ -266,7 +266,7 @@ static bool canProveExitOnFirstIteration(Loop *L, DominatorTree &DT,
+     using namespace PatternMatch;
+     ICmpInst::Predicate Pred;
+     Value *LHS, *RHS;
+-    BasicBlock *IfTrue, *IfFalse;
++    const BasicBlock *IfTrue, *IfFalse;
+     auto *Term = BB->getTerminator();
+     // TODO: Handle switches.
+     if (!match(Term, m_Br(m_ICmp(Pred, m_Value(LHS), m_Value(RHS)),
+@@ -287,12 +287,13 @@ static bool canProveExitOnFirstIteration(Loop *L, DominatorTree &DT,
+     // in-loop.
+     // TODO: isKnownPredicateAt is more powerful, but it's too compile time
+     // consuming. So we avoid using it here.
+-    if (L->contains(IfFalse) && SE.isKnownPredicate(Pred, LHSS, RHSS))
+-      MarkLiveEdge(BB, IfTrue);
+-    else if (L->contains(IfTrue) &&
++    if (L->contains(Term->getSuccessor(1)) &&
++        SE.isKnownPredicate(Pred, LHSS, RHSS))
++      MarkLiveEdge(BB, Term->getSuccessor(0));
++    else if (L->contains(Term->getSuccessor(0)) &&
+              SE.isKnownPredicate(ICmpInst::getInversePredicate(Pred), LHSS,
+                                  RHSS))
+-      MarkLiveEdge(BB, IfFalse);
++      MarkLiveEdge(BB, Term->getSuccessor(1));
+     else
+       MarkAllSuccessorsLive(BB);
+   }
diff --git a/sys-devel/llvm/files/cherry/80865f7579d619dee4ffd5abb72f641ef74dedbb.patch b/sys-devel/llvm/files/cherry/80865f7579d619dee4ffd5abb72f641ef74dedbb.patch
new file mode 100644
index 0000000..b2c9c59
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/80865f7579d619dee4ffd5abb72f641ef74dedbb.patch
@@ -0,0 +1,18 @@
+commit 80865f7579d619dee4ffd5abb72f641ef74dedbb
+Author: Wei Mi <wmi@google.com>
+Date:   Fri Sep 24 15:35:07 2021 -0700
+
+    Add "REQUIRES: zlib" in forward-compatible.test since it handles compressed file.
+---
+ llvm/test/tools/llvm-profdata/forward-compatible.test | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/llvm/test/tools/llvm-profdata/forward-compatible.test b/llvm/test/tools/llvm-profdata/forward-compatible.test
+index 8d45ba7d8a73..51a7336bb405 100644
+--- a/llvm/test/tools/llvm-profdata/forward-compatible.test
++++ b/llvm/test/tools/llvm-profdata/forward-compatible.test
+@@ -1,3 +1,4 @@
++REQUIRES: zlib
+ RUN: llvm-profdata show -sample %S/Inputs/unknown.section.extbin.profdata | FileCheck %s
+ RUN: llvm-profdata show -sample %S/Inputs/unknown.section.compressed.extbin.profdata | FileCheck %s
+ RUN: llvm-profdata show -sample -show-sec-info-only %S/Inputs/unknown.section.extbin.profdata | FileCheck %s -check-prefix=HDR
diff --git a/sys-devel/llvm/files/cherry/8eb617d719bdc6a4ed7773925d2421b9bbdd4b7a.patch b/sys-devel/llvm/files/cherry/8eb617d719bdc6a4ed7773925d2421b9bbdd4b7a.patch
new file mode 100644
index 0000000..07730df
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/8eb617d719bdc6a4ed7773925d2421b9bbdd4b7a.patch
@@ -0,0 +1,79 @@
+commit 8eb617d719bdc6a4ed7773925d2421b9bbdd4b7a
+Author: Wei Mi <wmi@google.com>
+Date:   Tue Sep 7 19:33:36 2021 -0700
+
+    [SampleFDO] Allow forward compatibility when adding a new section for extbinary
+    format.
+    
+    Currently when we add a new section in the profile format and generate a profile
+    containing the new section, older compiler which reads the new profile will
+    issue an error. The forward incompatibility can cause unnecessary churn when
+    extending the profile. This patch removes the incompatibility when adding a new
+    section for extbinary format.
+    
+    Differential Revision: https://reviews.llvm.org/D109398
+
+diff --git a/llvm/include/llvm/ProfileData/SampleProf.h b/llvm/include/llvm/ProfileData/SampleProf.h
+index 043e40260307..124e07a93071 100644
+--- a/llvm/include/llvm/ProfileData/SampleProf.h
++++ b/llvm/include/llvm/ProfileData/SampleProf.h
+@@ -149,8 +149,9 @@ static inline std::string getSecName(SecType Type) {
+     return "CSNameTableSection";
+   case SecLBRProfile:
+     return "LBRProfileSection";
++  default:
++    return "UnknownSection";
+   }
+-  llvm_unreachable("A SecType has no name for output");
+ }
+ 
+ // Entry type of section header table used by SampleProfileExtBinaryBaseReader
+diff --git a/llvm/include/llvm/ProfileData/SampleProfReader.h b/llvm/include/llvm/ProfileData/SampleProfReader.h
+index f9a7830335bb..169ba28965fb 100644
+--- a/llvm/include/llvm/ProfileData/SampleProfReader.h
++++ b/llvm/include/llvm/ProfileData/SampleProfReader.h
+@@ -786,6 +786,8 @@ private:
+   virtual std::error_code verifySPMagic(uint64_t Magic) override;
+   virtual std::error_code
+   readCustomSection(const SecHdrTableEntry &Entry) override {
++    // Update the data reader pointer to the end of the section.
++    Data += Entry.Size;
+     return sampleprof_error::success;
+   };
+ 
+diff --git a/llvm/test/tools/llvm-profdata/Inputs/unknown.section.extbin.profdata b/llvm/test/tools/llvm-profdata/Inputs/unknown.section.extbin.profdata
+new file mode 100644
+index 000000000000..b7d0ddbf3657
+Binary files /dev/null and b/llvm/test/tools/llvm-profdata/Inputs/unknown.section.extbin.profdata differ
+diff --git a/llvm/test/tools/llvm-profdata/forward-compatible.test b/llvm/test/tools/llvm-profdata/forward-compatible.test
+new file mode 100644
+index 000000000000..50c79a0d3e51
+--- /dev/null
++++ b/llvm/test/tools/llvm-profdata/forward-compatible.test
+@@ -0,0 +1,26 @@
++RUN: llvm-profdata show -sample %S/Inputs/unknown.section.extbin.profdata | FileCheck %s
++RUN: llvm-profdata show -sample -show-sec-info-only %S/Inputs/unknown.section.extbin.profdata | FileCheck %s -check-prefix=HDR
++
++# The input unknown.section.extbin.profdata contains an unknown section type
++# which uses an enum value which won't be used in the near future. Check
++# llvm-profdata can read it without problem. This is to ensure adding new
++# section in extbinary format for SampleFDO won't cause forward compatibility
++# issue.
++
++CHECK: Function: main: 366846, 0, 3 sampled lines
++CHECK-NEXT: Samples collected in the function's body {
++CHECK-NEXT:   2.1: 60401
++CHECK-NEXT:   3: 0
++CHECK-NEXT:   4: 0
++CHECK-NEXT: }
++
++HDR: ProfileSummarySection - Offset: 242, Size: 121, Flags: {}
++HDR-NEXT: NameTableSection - Offset: 363, Size: 6, Flags: {}
++HDR-NEXT: UnknownSection - Offset: 369, Size: 1, Flags: {}
++HDR-NEXT: FuncOffsetTableSection - Offset: 391, Size: 3, Flags: {}
++HDR-NEXT: LBRProfileSection - Offset: 370, Size: 21, Flags: {}
++HDR-NEXT: ProfileSymbolListSection - Offset: 391, Size: 0, Flags: {}
++HDR-NEXT: FunctionMetadata - Offset: 394, Size: 0, Flags: {}
++HDR-NEXT: Header Size: 242
++HDR-NEXT: Total Sections Size: 152
++HDR-NEXT: File Size: 394
diff --git a/sys-devel/llvm/files/cherry/9ed1c7e4964382b95a5886279c0dfc7147a57b17.patch b/sys-devel/llvm/files/cherry/9ed1c7e4964382b95a5886279c0dfc7147a57b17.patch
new file mode 100644
index 0000000..97f89c9
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/9ed1c7e4964382b95a5886279c0dfc7147a57b17.patch
@@ -0,0 +1,512 @@
+commit 9ed1c7e4964382b95a5886279c0dfc7147a57b17
+Author: Daniel Kiss <daniel.kiss@arm.com>
+Date:   Wed Aug 11 10:11:27 2021 +0200
+
+    [Unwind] Split unwind.h
+    
+    Moving Itanium and ArmEHABI specific implementations to dedicated files.
+    This is a NFC patch.
+    
+    Reviewed By: MaskRay
+    
+    Differential Revision: https://reviews.llvm.org/D106461
+
+diff --git a/libunwind/include/unwind.h b/libunwind/include/unwind.h
+index 1d3444cd83b4..e8d114854325 100644
+--- a/libunwind/include/unwind.h
++++ b/libunwind/include/unwind.h
+@@ -56,211 +56,15 @@ typedef enum {
+ typedef struct _Unwind_Context _Unwind_Context;   // opaque
+ 
+ #if defined(_LIBUNWIND_ARM_EHABI)
+-typedef uint32_t _Unwind_State;
+-
+-static const _Unwind_State _US_VIRTUAL_UNWIND_FRAME   = 0;
+-static const _Unwind_State _US_UNWIND_FRAME_STARTING  = 1;
+-static const _Unwind_State _US_UNWIND_FRAME_RESUME    = 2;
+-static const _Unwind_State _US_ACTION_MASK            = 3;
+-/* Undocumented flag for force unwinding. */
+-static const _Unwind_State _US_FORCE_UNWIND           = 8;
+-
+-typedef uint32_t _Unwind_EHT_Header;
+-
+-struct _Unwind_Control_Block;
+-typedef struct _Unwind_Control_Block _Unwind_Control_Block;
+-typedef struct _Unwind_Control_Block _Unwind_Exception; /* Alias */
+-
+-struct _Unwind_Control_Block {
+-  uint64_t exception_class;
+-  void (*exception_cleanup)(_Unwind_Reason_Code, _Unwind_Control_Block*);
+-
+-  /* Unwinder cache, private fields for the unwinder's use */
+-  struct {
+-    uint32_t reserved1; /* init reserved1 to 0, then don't touch */
+-    uint32_t reserved2;
+-    uint32_t reserved3;
+-    uint32_t reserved4;
+-    uint32_t reserved5;
+-  } unwinder_cache;
+-
+-  /* Propagation barrier cache (valid after phase 1): */
+-  struct {
+-    uint32_t sp;
+-    uint32_t bitpattern[5];
+-  } barrier_cache;
+-
+-  /* Cleanup cache (preserved over cleanup): */
+-  struct {
+-    uint32_t bitpattern[4];
+-  } cleanup_cache;
+-
+-  /* Pr cache (for pr's benefit): */
+-  struct {
+-    uint32_t fnstart; /* function start address */
+-    _Unwind_EHT_Header* ehtp; /* pointer to EHT entry header word */
+-    uint32_t additional;
+-    uint32_t reserved1;
+-  } pr_cache;
+-
+-  long long int :0; /* Enforce the 8-byte alignment */
+-} __attribute__((__aligned__(8)));
+-
+-typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
+-      (_Unwind_State state,
+-       _Unwind_Exception* exceptionObject,
+-       struct _Unwind_Context* context);
+-
+-typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
+-    _Unwind_State state, _Unwind_Exception *exceptionObject,
+-    struct _Unwind_Context *context);
+-#else
+-struct _Unwind_Context;   // opaque
+-struct _Unwind_Exception; // forward declaration
+-typedef struct _Unwind_Exception _Unwind_Exception;
+-
+-struct _Unwind_Exception {
+-  uint64_t exception_class;
+-  void (*exception_cleanup)(_Unwind_Reason_Code reason,
+-                            _Unwind_Exception *exc);
+-#if defined(__SEH__) && !defined(__USING_SJLJ_EXCEPTIONS__)
+-  uintptr_t private_[6];
++#include "unwind_arm_ehabi.h"
+ #else
+-  uintptr_t private_1; // non-zero means forced unwind
+-  uintptr_t private_2; // holds sp that phase1 found for phase2 to use
+-#endif
+-#if __SIZEOF_POINTER__ == 4
+-  // The implementation of _Unwind_Exception uses an attribute mode on the
+-  // above fields which has the side effect of causing this whole struct to
+-  // round up to 32 bytes in size (48 with SEH). To be more explicit, we add
+-  // pad fields added for binary compatibility.
+-  uint32_t reserved[3];
+-#endif
+-  // The Itanium ABI requires that _Unwind_Exception objects are "double-word
+-  // aligned".  GCC has interpreted this to mean "use the maximum useful
+-  // alignment for the target"; so do we.
+-} __attribute__((__aligned__));
+-
+-typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
+-    (int version,
+-     _Unwind_Action actions,
+-     uint64_t exceptionClass,
+-     _Unwind_Exception* exceptionObject,
+-     struct _Unwind_Context* context,
+-     void* stop_parameter );
+-
+-typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
+-    int version, _Unwind_Action actions, uint64_t exceptionClass,
+-    _Unwind_Exception *exceptionObject, struct _Unwind_Context *context);
++#include "unwind_itanium.h"
+ #endif
+ 
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+ 
+-//
+-// The following are the base functions documented by the C++ ABI
+-//
+-#ifdef __USING_SJLJ_EXCEPTIONS__
+-extern _Unwind_Reason_Code
+-    _Unwind_SjLj_RaiseException(_Unwind_Exception *exception_object);
+-extern void _Unwind_SjLj_Resume(_Unwind_Exception *exception_object);
+-#else
+-extern _Unwind_Reason_Code
+-    _Unwind_RaiseException(_Unwind_Exception *exception_object);
+-extern void _Unwind_Resume(_Unwind_Exception *exception_object);
+-#endif
+-extern void _Unwind_DeleteException(_Unwind_Exception *exception_object);
+-
+-#if defined(_LIBUNWIND_ARM_EHABI)
+-typedef enum {
+-  _UVRSC_CORE = 0, /* integer register */
+-  _UVRSC_VFP = 1, /* vfp */
+-  _UVRSC_WMMXD = 3, /* Intel WMMX data register */
+-  _UVRSC_WMMXC = 4 /* Intel WMMX control register */
+-} _Unwind_VRS_RegClass;
+-
+-typedef enum {
+-  _UVRSD_UINT32 = 0,
+-  _UVRSD_VFPX = 1,
+-  _UVRSD_UINT64 = 3,
+-  _UVRSD_FLOAT = 4,
+-  _UVRSD_DOUBLE = 5
+-} _Unwind_VRS_DataRepresentation;
+-
+-typedef enum {
+-  _UVRSR_OK = 0,
+-  _UVRSR_NOT_IMPLEMENTED = 1,
+-  _UVRSR_FAILED = 2
+-} _Unwind_VRS_Result;
+-
+-extern void _Unwind_Complete(_Unwind_Exception* exception_object);
+-
+-extern _Unwind_VRS_Result
+-_Unwind_VRS_Get(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
+-                uint32_t regno, _Unwind_VRS_DataRepresentation representation,
+-                void *valuep);
+-
+-extern _Unwind_VRS_Result
+-_Unwind_VRS_Set(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
+-                uint32_t regno, _Unwind_VRS_DataRepresentation representation,
+-                void *valuep);
+-
+-extern _Unwind_VRS_Result
+-_Unwind_VRS_Pop(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
+-                uint32_t discriminator,
+-                _Unwind_VRS_DataRepresentation representation);
+-#endif
+-
+-#if !defined(_LIBUNWIND_ARM_EHABI)
+-
+-extern uintptr_t _Unwind_GetGR(struct _Unwind_Context *context, int index);
+-extern void _Unwind_SetGR(struct _Unwind_Context *context, int index,
+-                          uintptr_t new_value);
+-extern uintptr_t _Unwind_GetIP(struct _Unwind_Context *context);
+-extern void _Unwind_SetIP(struct _Unwind_Context *, uintptr_t new_value);
+-
+-#else  // defined(_LIBUNWIND_ARM_EHABI)
+-
+-#if defined(_LIBUNWIND_UNWIND_LEVEL1_EXTERNAL_LINKAGE)
+-#define _LIBUNWIND_EXPORT_UNWIND_LEVEL1 extern
+-#else
+-#define _LIBUNWIND_EXPORT_UNWIND_LEVEL1 static __inline__
+-#endif
+-
+-// These are de facto helper functions for ARM, which delegate the function
+-// calls to _Unwind_VRS_Get/Set().  These are not a part of ARM EHABI
+-// specification, thus these function MUST be inlined.  Please don't replace
+-// these with the "extern" function declaration; otherwise, the program
+-// including this <unwind.h> header won't be ABI compatible and will result in
+-// link error when we are linking the program with libgcc.
+-
+-_LIBUNWIND_EXPORT_UNWIND_LEVEL1
+-uintptr_t _Unwind_GetGR(struct _Unwind_Context *context, int index) {
+-  uintptr_t value = 0;
+-  _Unwind_VRS_Get(context, _UVRSC_CORE, (uint32_t)index, _UVRSD_UINT32, &value);
+-  return value;
+-}
+-
+-_LIBUNWIND_EXPORT_UNWIND_LEVEL1
+-void _Unwind_SetGR(struct _Unwind_Context *context, int index,
+-                   uintptr_t value) {
+-  _Unwind_VRS_Set(context, _UVRSC_CORE, (uint32_t)index, _UVRSD_UINT32, &value);
+-}
+-
+-_LIBUNWIND_EXPORT_UNWIND_LEVEL1
+-uintptr_t _Unwind_GetIP(struct _Unwind_Context *context) {
+-  // remove the thumb-bit before returning
+-  return _Unwind_GetGR(context, 15) & (~(uintptr_t)0x1);
+-}
+-
+-_LIBUNWIND_EXPORT_UNWIND_LEVEL1
+-void _Unwind_SetIP(struct _Unwind_Context *context, uintptr_t value) {
+-  uintptr_t thumb_bit = _Unwind_GetGR(context, 15) & ((uintptr_t)0x1);
+-  _Unwind_SetGR(context, 15, value | thumb_bit);
+-}
+-#endif  // defined(_LIBUNWIND_ARM_EHABI)
+-
+ extern uintptr_t _Unwind_GetRegionStart(struct _Unwind_Context *context);
+ extern uintptr_t
+     _Unwind_GetLanguageSpecificData(struct _Unwind_Context *context);
+diff --git a/libunwind/include/unwind_arm_ehabi.h b/libunwind/include/unwind_arm_ehabi.h
+new file mode 100644
+index 000000000000..58444d14eb8d
+--- /dev/null
++++ b/libunwind/include/unwind_arm_ehabi.h
+@@ -0,0 +1,173 @@
++//===------------------------------- unwind.h -----------------------------===//
++//
++// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
++// See https://llvm.org/LICENSE.txt for license information.
++// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
++//
++//
++// C++ ABI Level 1 ABI documented at:
++//   https://github.com/ARM-software/abi-aa/blob/main/ehabi32/ehabi32.rst
++//
++//===----------------------------------------------------------------------===//
++
++#ifndef __ARM_EHABI_UNWIND_H__
++#define __ARM_EHABI_UNWIND_H__
++
++typedef uint32_t _Unwind_State;
++
++static const _Unwind_State _US_VIRTUAL_UNWIND_FRAME   = 0;
++static const _Unwind_State _US_UNWIND_FRAME_STARTING  = 1;
++static const _Unwind_State _US_UNWIND_FRAME_RESUME    = 2;
++static const _Unwind_State _US_ACTION_MASK            = 3;
++/* Undocumented flag for force unwinding. */
++static const _Unwind_State _US_FORCE_UNWIND           = 8;
++
++typedef uint32_t _Unwind_EHT_Header;
++
++struct _Unwind_Control_Block;
++typedef struct _Unwind_Control_Block _Unwind_Control_Block;
++typedef struct _Unwind_Control_Block _Unwind_Exception; /* Alias */
++
++struct _Unwind_Control_Block {
++  uint64_t exception_class;
++  void (*exception_cleanup)(_Unwind_Reason_Code, _Unwind_Control_Block*);
++
++  /* Unwinder cache, private fields for the unwinder's use */
++  struct {
++    uint32_t reserved1; /* init reserved1 to 0, then don't touch */
++    uint32_t reserved2;
++    uint32_t reserved3;
++    uint32_t reserved4;
++    uint32_t reserved5;
++  } unwinder_cache;
++
++  /* Propagation barrier cache (valid after phase 1): */
++  struct {
++    uint32_t sp;
++    uint32_t bitpattern[5];
++  } barrier_cache;
++
++  /* Cleanup cache (preserved over cleanup): */
++  struct {
++    uint32_t bitpattern[4];
++  } cleanup_cache;
++
++  /* Pr cache (for pr's benefit): */
++  struct {
++    uint32_t fnstart; /* function start address */
++    _Unwind_EHT_Header* ehtp; /* pointer to EHT entry header word */
++    uint32_t additional;
++    uint32_t reserved1;
++  } pr_cache;
++
++  long long int :0; /* Enforce the 8-byte alignment */
++} __attribute__((__aligned__(8)));
++
++typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
++      (_Unwind_State state,
++       _Unwind_Exception* exceptionObject,
++       struct _Unwind_Context* context);
++
++typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
++    _Unwind_State state, _Unwind_Exception *exceptionObject,
++    struct _Unwind_Context *context);
++
++#ifdef __cplusplus
++extern "C" {
++#endif
++
++//
++// The following are the base functions documented by the C++ ABI
++//
++#ifdef __USING_SJLJ_EXCEPTIONS__
++extern _Unwind_Reason_Code
++    _Unwind_SjLj_RaiseException(_Unwind_Exception *exception_object);
++extern void _Unwind_SjLj_Resume(_Unwind_Exception *exception_object);
++#else
++extern _Unwind_Reason_Code
++    _Unwind_RaiseException(_Unwind_Exception *exception_object);
++extern void _Unwind_Resume(_Unwind_Exception *exception_object);
++#endif
++extern void _Unwind_DeleteException(_Unwind_Exception *exception_object);
++
++typedef enum {
++  _UVRSC_CORE = 0, /* integer register */
++  _UVRSC_VFP = 1, /* vfp */
++  _UVRSC_WMMXD = 3, /* Intel WMMX data register */
++  _UVRSC_WMMXC = 4 /* Intel WMMX control register */
++} _Unwind_VRS_RegClass;
++
++typedef enum {
++  _UVRSD_UINT32 = 0,
++  _UVRSD_VFPX = 1,
++  _UVRSD_UINT64 = 3,
++  _UVRSD_FLOAT = 4,
++  _UVRSD_DOUBLE = 5
++} _Unwind_VRS_DataRepresentation;
++
++typedef enum {
++  _UVRSR_OK = 0,
++  _UVRSR_NOT_IMPLEMENTED = 1,
++  _UVRSR_FAILED = 2
++} _Unwind_VRS_Result;
++
++extern void _Unwind_Complete(_Unwind_Exception* exception_object);
++
++extern _Unwind_VRS_Result
++_Unwind_VRS_Get(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
++                uint32_t regno, _Unwind_VRS_DataRepresentation representation,
++                void *valuep);
++
++extern _Unwind_VRS_Result
++_Unwind_VRS_Set(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
++                uint32_t regno, _Unwind_VRS_DataRepresentation representation,
++                void *valuep);
++
++extern _Unwind_VRS_Result
++_Unwind_VRS_Pop(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
++                uint32_t discriminator,
++                _Unwind_VRS_DataRepresentation representation);
++
++#if defined(_LIBUNWIND_UNWIND_LEVEL1_EXTERNAL_LINKAGE)
++#define _LIBUNWIND_EXPORT_UNWIND_LEVEL1 extern
++#else
++#define _LIBUNWIND_EXPORT_UNWIND_LEVEL1 static __inline__
++#endif
++
++// These are de facto helper functions for ARM, which delegate the function
++// calls to _Unwind_VRS_Get/Set().  These are not a part of ARM EHABI
++// specification, thus these function MUST be inlined.  Please don't replace
++// these with the "extern" function declaration; otherwise, the program
++// including this <unwind.h> header won't be ABI compatible and will result in
++// link error when we are linking the program with libgcc.
++
++_LIBUNWIND_EXPORT_UNWIND_LEVEL1
++uintptr_t _Unwind_GetGR(struct _Unwind_Context *context, int index) {
++  uintptr_t value = 0;
++  _Unwind_VRS_Get(context, _UVRSC_CORE, (uint32_t)index, _UVRSD_UINT32, &value);
++  return value;
++}
++
++_LIBUNWIND_EXPORT_UNWIND_LEVEL1
++void _Unwind_SetGR(struct _Unwind_Context *context, int index,
++                   uintptr_t value) {
++  _Unwind_VRS_Set(context, _UVRSC_CORE, (uint32_t)index, _UVRSD_UINT32, &value);
++}
++
++_LIBUNWIND_EXPORT_UNWIND_LEVEL1
++uintptr_t _Unwind_GetIP(struct _Unwind_Context *context) {
++  // remove the thumb-bit before returning
++  return _Unwind_GetGR(context, 15) & (~(uintptr_t)0x1);
++}
++
++_LIBUNWIND_EXPORT_UNWIND_LEVEL1
++void _Unwind_SetIP(struct _Unwind_Context *context, uintptr_t value) {
++  uintptr_t thumb_bit = _Unwind_GetGR(context, 15) & ((uintptr_t)0x1);
++  _Unwind_SetGR(context, 15, value | thumb_bit);
++}
++
++#ifdef __cplusplus
++}
++#endif
++
++#endif // __ARM_EHABI_UNWIND_H__
+diff --git a/libunwind/include/unwind_itanium.h b/libunwind/include/unwind_itanium.h
+new file mode 100644
+index 000000000000..1e1389c7f0da
+--- /dev/null
++++ b/libunwind/include/unwind_itanium.h
+@@ -0,0 +1,83 @@
++//===------------------------------- unwind.h -----------------------------===//
++//
++// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
++// See https://llvm.org/LICENSE.txt for license information.
++// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
++//
++//
++// C++ ABI Level 1 ABI documented at:
++//   https://itanium-cxx-abi.github.io/cxx-abi/abi-eh.html
++//
++//===----------------------------------------------------------------------===//
++
++#ifndef __ITANIUM_UNWIND_H__
++#define __ITANIUM_UNWIND_H__
++
++struct _Unwind_Context;   // opaque
++struct _Unwind_Exception; // forward declaration
++typedef struct _Unwind_Exception _Unwind_Exception;
++
++struct _Unwind_Exception {
++  uint64_t exception_class;
++  void (*exception_cleanup)(_Unwind_Reason_Code reason,
++                            _Unwind_Exception *exc);
++#if defined(__SEH__) && !defined(__USING_SJLJ_EXCEPTIONS__)
++  uintptr_t private_[6];
++#else
++  uintptr_t private_1; // non-zero means forced unwind
++  uintptr_t private_2; // holds sp that phase1 found for phase2 to use
++#endif
++#if __SIZEOF_POINTER__ == 4
++  // The implementation of _Unwind_Exception uses an attribute mode on the
++  // above fields which has the side effect of causing this whole struct to
++  // round up to 32 bytes in size (48 with SEH). To be more explicit, we add
++  // pad fields added for binary compatibility.
++  uint32_t reserved[3];
++#endif
++  // The Itanium ABI requires that _Unwind_Exception objects are "double-word
++  // aligned".  GCC has interpreted this to mean "use the maximum useful
++  // alignment for the target"; so do we.
++} __attribute__((__aligned__));
++
++typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
++    (int version,
++     _Unwind_Action actions,
++     uint64_t exceptionClass,
++     _Unwind_Exception* exceptionObject,
++     struct _Unwind_Context* context,
++     void* stop_parameter );
++
++typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
++    int version, _Unwind_Action actions, uint64_t exceptionClass,
++    _Unwind_Exception *exceptionObject, struct _Unwind_Context *context);
++
++#ifdef __cplusplus
++extern "C" {
++#endif
++
++//
++// The following are the base functions documented by the C++ ABI
++//
++#ifdef __USING_SJLJ_EXCEPTIONS__
++extern _Unwind_Reason_Code
++    _Unwind_SjLj_RaiseException(_Unwind_Exception *exception_object);
++extern void _Unwind_SjLj_Resume(_Unwind_Exception *exception_object);
++#else
++extern _Unwind_Reason_Code
++    _Unwind_RaiseException(_Unwind_Exception *exception_object);
++extern void _Unwind_Resume(_Unwind_Exception *exception_object);
++#endif
++extern void _Unwind_DeleteException(_Unwind_Exception *exception_object);
++
++
++extern uintptr_t _Unwind_GetGR(struct _Unwind_Context *context, int index);
++extern void _Unwind_SetGR(struct _Unwind_Context *context, int index,
++                          uintptr_t new_value);
++extern uintptr_t _Unwind_GetIP(struct _Unwind_Context *context);
++extern void _Unwind_SetIP(struct _Unwind_Context *, uintptr_t new_value);
++
++#ifdef __cplusplus
++}
++#endif
++
++#endif // __ITANIUM_UNWIND_H__
+diff --git a/libunwind/src/CMakeLists.txt b/libunwind/src/CMakeLists.txt
+index 093804fe4a2f..67fa61b8b0ba 100644
+--- a/libunwind/src/CMakeLists.txt
++++ b/libunwind/src/CMakeLists.txt
+@@ -47,6 +47,8 @@ set(LIBUNWIND_HEADERS
+     UnwindCursor.hpp
+     ../include/libunwind.h
+     ../include/unwind.h
++    ../include/unwind_itanium.h
++    ../include/unwind_arm_ehabi.h
+     )
+ if(APPLE)
+   list(APPEND LIBUNWIND_HEADERS
diff --git a/sys-devel/llvm/files/cherry/ad253446208a06902d3bc4939ac7a64f8026cc84.patch b/sys-devel/llvm/files/cherry/ad253446208a06902d3bc4939ac7a64f8026cc84.patch
new file mode 100644
index 0000000..9d737cf
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/ad253446208a06902d3bc4939ac7a64f8026cc84.patch
@@ -0,0 +1,188 @@
+commit ad253446208a06902d3bc4939ac7a64f8026cc84
+Author: Arthur Eubanks <aeubanks@google.com>
+Date:   Mon Aug 2 15:33:07 2021 -0700
+
+    [MC][CodeGen] Emit constant pools earlier
+    
+    Previously we would emit constant pool entries for ldr inline asm at the
+    very end of AsmPrinter::doFinalization(). However, if we're emitting
+    dwarf aranges, that would end all sections with aranges. Then if we have
+    constant pool entries to be emitted in those same sections, we'd hit an
+    assert that the section has already been ended.
+    
+    We want to emit constant pool entries before emitting dwarf aranges.
+    This patch splits out arm32/64's constant pool entry emission into its
+    own MCTargetStreamer virtual method.
+    
+    Fixes PR51208
+    
+    Reviewed By: MaskRay
+    
+    Differential Revision: https://reviews.llvm.org/D107314
+---
+ llvm/include/llvm/MC/MCStreamer.h                  |  4 ++-
+ llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp         |  5 ++++
+ llvm/lib/MC/MCParser/AsmParser.cpp                 |  7 +++--
+ llvm/lib/MC/MCStreamer.cpp                         |  2 ++
+ .../AArch64/MCTargetDesc/AArch64TargetStreamer.cpp |  6 +++--
+ .../AArch64/MCTargetDesc/AArch64TargetStreamer.h   |  1 +
+ .../Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp  |  4 ++-
+ llvm/test/CodeGen/ARM/arange-ldr.ll                | 31 ++++++++++++++++++++++
+ 8 files changed, 54 insertions(+), 6 deletions(-)
+
+diff --git a/llvm/include/llvm/MC/MCStreamer.h b/llvm/include/llvm/MC/MCStreamer.h
+index fd326ff18712..5f93f972a5de 100644
+--- a/llvm/include/llvm/MC/MCStreamer.h
++++ b/llvm/include/llvm/MC/MCStreamer.h
+@@ -123,6 +123,8 @@ public:
+   /// This is used to emit bytes in \p Data as sequence of .byte directives.
+   virtual void emitRawBytes(StringRef Data);
+ 
++  virtual void emitConstantPools();
++
+   virtual void finish();
+ };
+ 
+@@ -165,7 +167,7 @@ public:
+ 
+   virtual void emitThumbSet(MCSymbol *Symbol, const MCExpr *Value);
+ 
+-  void finish() override;
++  void emitConstantPools() override;
+ 
+   /// Reset any state between object emissions, i.e. the equivalent of
+   /// MCStreamer's reset method.
+diff --git a/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp b/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+index e528d33b5f8c..7171bfdd28e2 100644
+--- a/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
++++ b/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+@@ -1815,6 +1815,11 @@ bool AsmPrinter::doFinalization(Module &M) {
+     }
+   }
+ 
++  // This needs to happen before emitting debug information since that can end
++  // arbitrary sections.
++  if (auto *TS = OutStreamer->getTargetStreamer())
++    TS->emitConstantPools();
++
+   // Finalize debug and EH information.
+   for (const HandlerInfo &HI : Handlers) {
+     NamedRegionTimer T(HI.TimerName, HI.TimerDescription, HI.TimerGroupName,
+diff --git a/llvm/lib/MC/MCParser/AsmParser.cpp b/llvm/lib/MC/MCParser/AsmParser.cpp
+index d3cb5ca59bf3..6e93e3a1bdca 100644
+--- a/llvm/lib/MC/MCParser/AsmParser.cpp
++++ b/llvm/lib/MC/MCParser/AsmParser.cpp
+@@ -1052,11 +1052,14 @@ bool AsmParser::Run(bool NoInitialTextSection, bool NoFinalize) {
+       }
+     }
+   }
+-
+   // Finalize the output stream if there are no errors and if the client wants
+   // us to.
+-  if (!HadError && !NoFinalize)
++  if (!HadError && !NoFinalize) {
++    if (auto *TS = Out.getTargetStreamer())
++      TS->emitConstantPools();
++
+     Out.Finish(Lexer.getLoc());
++  }
+ 
+   return HadError || getContext().hadError();
+ }
+diff --git a/llvm/lib/MC/MCStreamer.cpp b/llvm/lib/MC/MCStreamer.cpp
+index fc7fb555f0b9..99b1290d2355 100644
+--- a/llvm/lib/MC/MCStreamer.cpp
++++ b/llvm/lib/MC/MCStreamer.cpp
+@@ -53,6 +53,8 @@ void MCTargetStreamer::emitLabel(MCSymbol *Symbol) {}
+ 
+ void MCTargetStreamer::finish() {}
+ 
++void MCTargetStreamer::emitConstantPools() {}
++
+ void MCTargetStreamer::changeSection(const MCSection *CurSection,
+                                      MCSection *Section,
+                                      const MCExpr *Subsection,
+diff --git a/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp b/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp
+index 557603c24ba5..cf1a60643efd 100644
+--- a/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp
++++ b/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp
+@@ -48,11 +48,13 @@ void AArch64TargetStreamer::emitCurrentConstantPool() {
+   ConstantPools->emitForCurrentSection(Streamer);
+ }
+ 
++void AArch64TargetStreamer::emitConstantPools() {
++  ConstantPools->emitAll(Streamer);
++}
++
+ // finish() - write out any non-empty assembler constant pools and
+ //   write out note.gnu.properties if need.
+ void AArch64TargetStreamer::finish() {
+-  ConstantPools->emitAll(Streamer);
+-
+   if (MarkBTIProperty)
+     emitNoteSection(ELF::GNU_PROPERTY_AARCH64_FEATURE_1_BTI);
+ }
+diff --git a/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h b/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
+index 9b030775094c..86c7baf8f429 100644
+--- a/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
++++ b/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
+@@ -23,6 +23,7 @@ public:
+   ~AArch64TargetStreamer() override;
+ 
+   void finish() override;
++  void emitConstantPools() override;
+ 
+   /// Callback used to implement the ldr= pseudo.
+   /// Add a new entry to the constant pool for the current section and return an
+diff --git a/llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp b/llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp
+index 1fee354cad93..3e4c97630af6 100644
+--- a/llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp
++++ b/llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp
+@@ -43,7 +43,9 @@ void ARMTargetStreamer::emitCurrentConstantPool() {
+ }
+ 
+ // finish() - write out any non-empty assembler constant pools.
+-void ARMTargetStreamer::finish() { ConstantPools->emitAll(Streamer); }
++void ARMTargetStreamer::emitConstantPools() {
++  ConstantPools->emitAll(Streamer);
++}
+ 
+ // reset() - Reset any state
+ void ARMTargetStreamer::reset() {}
+diff --git a/llvm/test/CodeGen/ARM/arange-ldr.ll b/llvm/test/CodeGen/ARM/arange-ldr.ll
+new file mode 100644
+index 000000000000..2c1d0c4f3c1e
+--- /dev/null
++++ b/llvm/test/CodeGen/ARM/arange-ldr.ll
+@@ -0,0 +1,31 @@
++; RUN: llc %s -o - -generate-arange-section | FileCheck %s
++
++; Make sure that emitting constants for ldr and emitting arange work together.
++; Emitting constants must come before emitting aranges since emitting aranges can end arbitrary sections.
++
++target datalayout = "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64"
++target triple = "armv7-unknown-linux-android21"
++
++; CHECK:       ldr r7, .Ltmp[[#TMP:]]
++
++; CHECK:      .Ltmp[[#TMP]]:
++; CHECK-NEXT: .long  83040
++
++; CHECK: .section        .debug_aranges
++
++define dso_local void @a() local_unnamed_addr !dbg !4 {
++entry:
++  call void asm sideeffect "  ldr r7, =${0:c}\0A", "i"(i32 83040)
++  ret void
++}
++
++!llvm.dbg.cu = !{!0}
++!llvm.module.flags = !{!3}
++
++!0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang version 14.0.0", isOptimized: true, runtimeVersion: 0, emissionKind: LineTablesOnly, enums: !2, splitDebugInlining: false, nameTableKind: None)
++!1 = !DIFile(filename: "/tmp/a.c", directory: "/tmp/")
++!2 = !{}
++!3 = !{i32 2, !"Debug Info Version", i32 3}
++!4 = distinct !DISubprogram(name: "a", scope: !5, file: !5, line: 1, type: !6, scopeLine: 1, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !0, retainedNodes: !2)
++!5 = !DIFile(filename: "/tmp/a.c", directory: "")
++!6 = !DISubroutineType(types: !2)
diff --git a/sys-devel/llvm/files/cherry/b13edf6e907b32d0b8da09dfe08fa271638eca3c.patch b/sys-devel/llvm/files/cherry/b13edf6e907b32d0b8da09dfe08fa271638eca3c.patch
new file mode 100644
index 0000000..20714a2
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/b13edf6e907b32d0b8da09dfe08fa271638eca3c.patch
@@ -0,0 +1,193 @@
+commit b13edf6e907b32d0b8da09dfe08fa271638eca3c
+Author: Mark de Wever <koraq@xs4all.nl>
+Date:   Sat May 29 09:50:26 2021 +0200
+
+    Revert "[libc++] NFC: Move unwrap_iter to its own header"
+    
+    This reverts commit 9968896cd62a62b11ac61085534dd598c4bd3c60.
+    
+    This commit seems to cause the build failures of main.
+
+diff --git a/libcxx/include/CMakeLists.txt b/libcxx/include/CMakeLists.txt
+index a38aaee24259..e5ae54b225a8 100644
+--- a/libcxx/include/CMakeLists.txt
++++ b/libcxx/include/CMakeLists.txt
+@@ -1,5 +1,4 @@
+ set(files
+-  __algorithm/unwrap_iter.h
+   __availability
+   __bit_reference
+   __bits
+diff --git a/libcxx/include/__algorithm/unwrap_iter.h b/libcxx/include/__algorithm/unwrap_iter.h
+deleted file mode 100644
+index 70dc22e7be83..000000000000
+--- a/libcxx/include/__algorithm/unwrap_iter.h
++++ /dev/null
+@@ -1,89 +0,0 @@
+-//===----------------------------------------------------------------------===//
+-//
+-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+-// See https://llvm.org/LICENSE.txt for license information.
+-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+-//
+-//===----------------------------------------------------------------------===//
+-
+-#ifndef _LIBCPP___ALGORITHM_UNWRAP_ITER_H
+-#define _LIBCPP___ALGORITHM_UNWRAP_ITER_H
+-
+-#include <__config>
+-#include <__iterator/iterator_traits.h> // __is_cpp17_contiguous_iterator
+-#include <__memory/pointer_traits.h> // __to_address
+-#include <utility>
+-
+-#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
+-#pragma GCC system_header
+-#endif
+-
+-_LIBCPP_PUSH_MACROS
+-#include <__undef_macros>
+-
+-_LIBCPP_BEGIN_NAMESPACE_STD
+-
+-// __unwrap_iter, __rewrap_iter
+-
+-// The job of __unwrap_iter is to lower contiguous iterators (such as
+-// vector<T>::iterator) into pointers, to reduce the number of template
+-// instantiations and to enable pointer-based optimizations e.g. in std::copy.
+-// For iterators that are not contiguous, it must be a no-op.
+-// In debug mode, we don't do this.
+-//
+-// __unwrap_iter is non-constexpr for user-defined iterators whose
+-// `to_address` and/or `operator->` is non-constexpr. This is okay; but we
+-// try to avoid doing __unwrap_iter in constant-evaluated contexts anyway.
+-//
+-// Some algorithms (e.g. std::copy, but not std::sort) need to convert an
+-// "unwrapped" result back into a contiguous iterator. Since contiguous iterators
+-// are random-access, we can do this portably using iterator arithmetic; this
+-// is the job of __rewrap_iter.
+-
+-template <class _Iter, bool = __is_cpp17_contiguous_iterator<_Iter>::value>
+-struct __unwrap_iter_impl {
+-    static _LIBCPP_CONSTEXPR _Iter
+-    __apply(_Iter __i) _NOEXCEPT {
+-        return __i;
+-    }
+-};
+-
+-#if _LIBCPP_DEBUG_LEVEL < 2
+-
+-template <class _Iter>
+-struct __unwrap_iter_impl<_Iter, true> {
+-    static _LIBCPP_CONSTEXPR decltype(_VSTD::__to_address(declval<_Iter>()))
+-    __apply(_Iter __i) _NOEXCEPT {
+-        return _VSTD::__to_address(__i);
+-    }
+-};
+-
+-#endif // _LIBCPP_DEBUG_LEVEL < 2
+-
+-template<class _Iter, class _Impl = __unwrap_iter_impl<_Iter> >
+-inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR
+-decltype(_Impl::__apply(_VSTD::declval<_Iter>()))
+-__unwrap_iter(_Iter __i) _NOEXCEPT
+-{
+-    return _Impl::__apply(__i);
+-}
+-
+-template<class _OrigIter>
+-_OrigIter __rewrap_iter(_OrigIter, _OrigIter __result)
+-{
+-    return __result;
+-}
+-
+-template<class _OrigIter, class _UnwrappedIter>
+-_OrigIter __rewrap_iter(_OrigIter __first, _UnwrappedIter __result)
+-{
+-    // Precondition: __result is reachable from __first
+-    // Precondition: _OrigIter is a contiguous iterator
+-    return __first + (__result - _VSTD::__unwrap_iter(__first));
+-}
+-
+-_LIBCPP_END_NAMESPACE_STD
+-
+-_LIBCPP_POP_MACROS
+-
+-#endif // _LIBCPP___ALGORITHM_UNWRAP_ITER_H
+diff --git a/libcxx/include/algorithm b/libcxx/include/algorithm
+index dbe7d5d64100..65655d70425f 100644
+--- a/libcxx/include/algorithm
++++ b/libcxx/include/algorithm
+@@ -645,7 +645,6 @@ template <class BidirectionalIterator, class Compare>
+ 
+ */
+ 
+-#include <__algorithm/unwrap_iter.h>
+ #include <__config>
+ #include <initializer_list>
+ #include <type_traits>
+@@ -1640,6 +1639,65 @@ search_n(_ForwardIterator __first, _ForwardIterator __last, _Size __count, const
+                            __value_, __equal_to<__v, _Tp>());
+ }
+ 
++// __unwrap_iter, __rewrap_iter
++
++// The job of __unwrap_iter is to lower contiguous iterators (such as
++// vector<T>::iterator) into pointers, to reduce the number of template
++// instantiations and to enable pointer-based optimizations e.g. in std::copy.
++// For iterators that are not contiguous, it must be a no-op.
++// In debug mode, we don't do this.
++//
++// __unwrap_iter is non-constexpr for user-defined iterators whose
++// `to_address` and/or `operator->` is non-constexpr. This is okay; but we
++// try to avoid doing __unwrap_iter in constant-evaluated contexts anyway.
++//
++// Some algorithms (e.g. std::copy, but not std::sort) need to convert an
++// "unwrapped" result back into a contiguous iterator. Since contiguous iterators
++// are random-access, we can do this portably using iterator arithmetic; this
++// is the job of __rewrap_iter.
++
++template <class _Iter, bool = __is_cpp17_contiguous_iterator<_Iter>::value>
++struct __unwrap_iter_impl {
++    static _LIBCPP_CONSTEXPR _Iter
++    __apply(_Iter __i) _NOEXCEPT {
++        return __i;
++    }
++};
++
++#if _LIBCPP_DEBUG_LEVEL < 2
++
++template <class _Iter>
++struct __unwrap_iter_impl<_Iter, true> {
++    static _LIBCPP_CONSTEXPR decltype(_VSTD::__to_address(declval<_Iter>()))
++    __apply(_Iter __i) _NOEXCEPT {
++        return _VSTD::__to_address(__i);
++    }
++};
++
++#endif // _LIBCPP_DEBUG_LEVEL < 2
++
++template<class _Iter, class _Impl = __unwrap_iter_impl<_Iter> >
++inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR
++decltype(_Impl::__apply(declval<_Iter>()))
++__unwrap_iter(_Iter __i) _NOEXCEPT
++{
++    return _Impl::__apply(__i);
++}
++
++template<class _OrigIter>
++_OrigIter __rewrap_iter(_OrigIter, _OrigIter __result)
++{
++    return __result;
++}
++
++template<class _OrigIter, class _UnwrappedIter>
++_OrigIter __rewrap_iter(_OrigIter __first, _UnwrappedIter __result)
++{
++    // Precondition: __result is reachable from __first
++    // Precondition: _OrigIter is a contiguous iterator
++    return __first + (__result - _VSTD::__unwrap_iter(__first));
++}
++
+ // copy
+ 
+ template <class _InputIterator, class _OutputIterator>
diff --git a/sys-devel/llvm/files/cherry/be6b9e8ae71768d2e09ec14619ca4ecfdef553fa.patch b/sys-devel/llvm/files/cherry/be6b9e8ae71768d2e09ec14619ca4ecfdef553fa.patch
new file mode 100644
index 0000000..cb2c357
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/be6b9e8ae71768d2e09ec14619ca4ecfdef553fa.patch
@@ -0,0 +1,100 @@
+commit be6b9e8ae71768d2e09ec14619ca4ecfdef553fa
+Author: Roman Lebedev <lebedev.ri@gmail.com>
+Date:   Sun May 30 16:40:01 2021 +0300
+
+    Revert "[clang-tidy] Simplify static assert check"
+    
+    This patch starts to produce a very obvious false-positives,
+    despite the fact the preexisting tests already cover the pattern.
+    they clearly don't actually cover it.
+    
+    https://godbolt.org/z/3zdqvbfxj
+    
+    This reverts commit 1709bb8c7395418236ec94fe3b9d91fed746452b.
+
+diff --git a/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp b/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
+index e9ea69aaeb32..224936887e03 100644
+--- a/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
++++ b/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
+@@ -27,37 +27,48 @@ StaticAssertCheck::StaticAssertCheck(StringRef Name, ClangTidyContext *Context)
+     : ClangTidyCheck(Name, Context) {}
+ 
+ void StaticAssertCheck::registerMatchers(MatchFinder *Finder) {
+-  auto NegatedString =
+-      unaryOperator(hasOperatorName("!"), hasUnaryOperand(stringLiteral()));
++  auto NegatedString = unaryOperator(
++      hasOperatorName("!"), hasUnaryOperand(ignoringImpCasts(stringLiteral())));
+   auto IsAlwaysFalse =
+       expr(anyOf(cxxBoolLiteral(equals(false)), integerLiteral(equals(0)),
+                  cxxNullPtrLiteralExpr(), gnuNullExpr(), NegatedString))
+           .bind("isAlwaysFalse");
+-  auto IsAlwaysFalseWithCast =
+-      anyOf(IsAlwaysFalse, cStyleCastExpr(has(IsAlwaysFalse)).bind("castExpr"));
+-  auto AssertExprRoot =
+-      anyOf(binaryOperator(
+-                hasAnyOperatorName("&&", "=="),
+-                hasEitherOperand(stringLiteral().bind("assertMSG")),
+-                anyOf(binaryOperator(hasEitherOperand(IsAlwaysFalseWithCast)),
+-                      anything()))
+-                .bind("assertExprRoot"),
+-            IsAlwaysFalse);
++  auto IsAlwaysFalseWithCast = ignoringParenImpCasts(anyOf(
++      IsAlwaysFalse, cStyleCastExpr(has(ignoringParenImpCasts(IsAlwaysFalse)))
++                         .bind("castExpr")));
++  auto AssertExprRoot = anyOf(
++      binaryOperator(
++          hasAnyOperatorName("&&", "=="),
++          hasEitherOperand(ignoringImpCasts(stringLiteral().bind("assertMSG"))),
++          anyOf(binaryOperator(hasEitherOperand(IsAlwaysFalseWithCast)),
++                anything()))
++          .bind("assertExprRoot"),
++      IsAlwaysFalse);
+   auto NonConstexprFunctionCall =
+       callExpr(hasDeclaration(functionDecl(unless(isConstexpr()))));
+   auto AssertCondition =
+-      expr(optionally(expr(anyOf(AssertExprRoot,
+-                            unaryOperator(hasUnaryOperand(AssertExprRoot))))),
+-           unless(findAll(NonConstexprFunctionCall)))
++      expr(
++          anyOf(expr(ignoringParenCasts(anyOf(
++                    AssertExprRoot, unaryOperator(hasUnaryOperand(
++                                        ignoringParenCasts(AssertExprRoot)))))),
++                anything()),
++          unless(findAll(NonConstexprFunctionCall)))
+           .bind("condition");
+   auto Condition =
+-      anyOf(callExpr(traverse(TK_AsIs, callExpr(hasDeclaration(functionDecl(
+-                                           hasName("__builtin_expect"))))),
+-                     hasArgument(0, AssertCondition)),
++      anyOf(ignoringParenImpCasts(callExpr(
++                hasDeclaration(functionDecl(hasName("__builtin_expect"))),
++                hasArgument(0, AssertCondition))),
+             AssertCondition);
+ 
++  Finder->addMatcher(conditionalOperator(hasCondition(Condition),
++                                         unless(isInTemplateInstantiation()))
++                         .bind("condStmt"),
++                     this);
++
+   Finder->addMatcher(
+-      mapAnyOf(ifStmt, conditionalOperator).with(hasCondition(Condition)).bind("condStmt"), this);
++      ifStmt(hasCondition(Condition), unless(isInTemplateInstantiation()))
++          .bind("condStmt"),
++      this);
+ }
+ 
+ void StaticAssertCheck::check(const MatchFinder::MatchResult &Result) {
+diff --git a/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.h b/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.h
+index 796fc4827db4..0168d1fcd107 100644
+--- a/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.h
++++ b/clang-tools-extra/clang-tidy/misc/StaticAssertCheck.h
+@@ -30,9 +30,6 @@ public:
+   }
+   void registerMatchers(ast_matchers::MatchFinder *Finder) override;
+   void check(const ast_matchers::MatchFinder::MatchResult &Result) override;
+-  llvm::Optional<TraversalKind> getCheckTraversalKind() const override {
+-    return TK_IgnoreUnlessSpelledInSource;
+-  }
+ 
+ private:
+   SourceLocation getLastParenLoc(const ASTContext *ASTCtx,
diff --git a/sys-devel/llvm/files/cherry/c45e17f11f508d1aea97eded3f1bda2a448f2032.patch b/sys-devel/llvm/files/cherry/c45e17f11f508d1aea97eded3f1bda2a448f2032.patch
new file mode 100644
index 0000000..7b5e31a
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/c45e17f11f508d1aea97eded3f1bda2a448f2032.patch
@@ -0,0 +1,69 @@
+commit c45e17f11f508d1aea97eded3f1bda2a448f2032
+Author: Pirama Arumuga Nainar <pirama@google.com>
+Date:   Fri Jul 23 12:16:22 2021 -0700
+
+    [NewPM] Add CrossDSOCFI pass irrespective of LTO optimization level
+    
+    This pass is not an optimization and is needed for CFI functionality
+    (cross-dso verification).
+    
+    Differential Revision: https://reviews.llvm.org/D106699
+
+diff --git a/llvm/lib/Passes/PassBuilder.cpp b/llvm/lib/Passes/PassBuilder.cpp
+index 0e0607c552ef..ec081e9e0f78 100644
+--- a/llvm/lib/Passes/PassBuilder.cpp
++++ b/llvm/lib/Passes/PassBuilder.cpp
+@@ -1647,6 +1647,10 @@ PassBuilder::buildLTODefaultPipeline(OptimizationLevel Level,
+   // Convert @llvm.global.annotations to !annotation metadata.
+   MPM.addPass(Annotation2MetadataPass());
+ 
++  // Create a function that performs CFI checks for cross-DSO calls with targets
++  // in the current module.
++  MPM.addPass(CrossDSOCFIPass());
++
+   if (Level == OptimizationLevel::O0) {
+     // The WPD and LowerTypeTest passes need to run at -O0 to lower type
+     // metadata and intrinsics.
+@@ -1865,10 +1869,6 @@ PassBuilder::buildLTODefaultPipeline(OptimizationLevel Level,
+   MainFPM.addPass(JumpThreadingPass(/*InsertFreezeWhenUnfoldingSelect*/ true));
+   MPM.addPass(createModuleToFunctionPassAdaptor(std::move(MainFPM)));
+ 
+-  // Create a function that performs CFI checks for cross-DSO calls with
+-  // targets in the current module.
+-  MPM.addPass(CrossDSOCFIPass());
+-
+   // Lower type metadata and the type.test intrinsic. This pass supports
+   // clang's control flow integrity mechanisms (-fsanitize=cfi*) and needs
+   // to be run at link time if CFI is enabled. This pass does nothing if
+diff --git a/llvm/test/Other/new-pm-O0-defaults.ll b/llvm/test/Other/new-pm-O0-defaults.ll
+index 43198f515569..e7c4dfdbc758 100644
+--- a/llvm/test/Other/new-pm-O0-defaults.ll
++++ b/llvm/test/Other/new-pm-O0-defaults.ll
+@@ -53,6 +53,7 @@
+ ; CHECK-THINLTO-NEXT: Running pass: EliminateAvailableExternallyPass
+ ; CHECK-THINLTO-NEXT: Running pass: GlobalDCEPass
+ ; CHECK-LTO: Running pass: Annotation2MetadataPass
++; CHECK-LTO-NEXT: Running pass: CrossDSOCFIPass on [module]
+ ; CHECK-LTO-NEXT: Running pass: WholeProgramDevirtPass
+ ; CHECK-LTO-NEXT: Running analysis: InnerAnalysisManagerProxy
+ ; CHECK-LTO-NEXT: Running pass: LowerTypeTestsPass
+diff --git a/llvm/test/Other/new-pm-lto-defaults.ll b/llvm/test/Other/new-pm-lto-defaults.ll
+index d1e7fc969b95..8f1830dbc610 100644
+--- a/llvm/test/Other/new-pm-lto-defaults.ll
++++ b/llvm/test/Other/new-pm-lto-defaults.ll
+@@ -26,6 +26,7 @@
+ ; RUN:     --check-prefix=CHECK-O3 --check-prefix=CHECK-EP-Peephole
+ 
+ ; CHECK-O: Running pass: Annotation2Metadata
++; CHECK-O-NEXT: Running pass: CrossDSOCFIPass
+ ; CHECK-O-NEXT: Running pass: GlobalDCEPass
+ ; CHECK-O-NEXT: Running pass: ForceFunctionAttrsPass
+ ; CHECK-O-NEXT: Running pass: InferFunctionAttrsPass
+@@ -123,7 +124,6 @@
+ ; CHECK-O23SZ-NEXT: Running pass: InstCombinePass on foo
+ ; CHECK-EP-Peephole-NEXT: Running pass: NoOpFunctionPass on foo
+ ; CHECK-O23SZ-NEXT: Running pass: JumpThreadingPass on foo
+-; CHECK-O23SZ-NEXT: Running pass: CrossDSOCFIPass
+ ; CHECK-O23SZ-NEXT: Running pass: LowerTypeTestsPass
+ ; CHECK-O-NEXT: Running pass: LowerTypeTestsPass
+ ; CHECK-O23SZ-NEXT: Running pass: SimplifyCFGPass
diff --git a/sys-devel/llvm/files/cherry/d0ee8b64ecf359737ce550d8f47f465ab6657be7.patch b/sys-devel/llvm/files/cherry/d0ee8b64ecf359737ce550d8f47f465ab6657be7.patch
new file mode 100644
index 0000000..b2dee82
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/d0ee8b64ecf359737ce550d8f47f465ab6657be7.patch
@@ -0,0 +1,159 @@
+commit d0ee8b64ecf359737ce550d8f47f465ab6657be7
+Author: Teresa Johnson <tejohnson@google.com>
+Date:   Wed Jun 2 16:37:23 2021 -0700
+
+    [LTO] Fix -fwhole-program-vtables handling after HIP ThinLTO patch
+    
+    A recent change (D99683) to support ThinLTO for HIP caused a regression
+    when compiling cuda code with -flto=thin -fwhole-program-vtables.
+    Specifically, we now get an error:
+    error: invalid argument '-fwhole-program-vtables' only allowed with '-flto'
+    
+    This error is coming from the device offload cc1 action being set up for
+    the cuda compile, for which -flto=thin doesn't apply and gets dropped.
+    This is a regression, but points to a potential issue that was silently
+    occurring before the patch, details below.
+    
+    Before D99683, the check for fwhole-program-vtables in the driver looked
+    like:
+    
+      if (WholeProgramVTables) {
+        if (!D.isUsingLTO())
+          D.Diag(diag::err_drv_argument_only_allowed_with)
+              << "-fwhole-program-vtables"
+              << "-flto";
+        CmdArgs.push_back("-fwhole-program-vtables");
+      }
+    
+    And D.isUsingLTO() returned true since we have -flto=thin. However,
+    because the cuda cc1 compile is doing device offloading, which didn't
+    support any LTO, there was other code that suppressed -flto* options
+    from being passed to the cc1 invocation. So the cc1 invocation silently
+    had -fwhole-program-vtables without any -flto*. This seems potentially
+    problematic, since if we had any virtual calls we would get type test
+    assume sequences without the corresponding LTO pass that handles them.
+    
+    However, with the patch, which adds support for device offloading LTO
+    option -foffload-lto=thin, the code has changed so that we set a bool
+    IsUsingLTO based on either -flto* or -foffload-lto*, depending on
+    whether this is the device offloading action. For the device offload
+    action in our compile, since we don't have -foffload-lto, IsUsingLTO is
+    false, and the check for LTO with -fwhole-program-vtables now fails.
+    
+    What we should do is only pass through -fwhole-program-vtables to the
+    cc1 invocation that has LTO enabled (either the device offload action
+    with -foffload-lto, or the non-device offload action with -flto), and
+    otherwise drop the -fwhole-program-vtables for the non-LTO action.
+    Then we should error only if we have -fwhole-program-vtables without any
+    -f*lto* options.
+    
+    Differential Revision: https://reviews.llvm.org/D103579
+
+diff --git a/clang/lib/Driver/ToolChains/Clang.cpp b/clang/lib/Driver/ToolChains/Clang.cpp
+index dea4ade683ef..ee40df35b850 100644
+--- a/clang/lib/Driver/ToolChains/Clang.cpp
++++ b/clang/lib/Driver/ToolChains/Clang.cpp
+@@ -6647,11 +6647,17 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
+   }
+ 
+   if (WholeProgramVTables) {
+-    if (!IsUsingLTO)
++    // Propagate -fwhole-program-vtables if this is an LTO compile.
++    if (IsUsingLTO)
++      CmdArgs.push_back("-fwhole-program-vtables");
++    // Check if we passed LTO options but they were suppressed because this is a
++    // device offloading action, or we passed device offload LTO options which
++    // were suppressed because this is not the device offload action.
++    // Otherwise, issue an error.
++    else if (!D.isUsingLTO(!IsDeviceOffloadAction))
+       D.Diag(diag::err_drv_argument_only_allowed_with)
+           << "-fwhole-program-vtables"
+           << "-flto";
+-    CmdArgs.push_back("-fwhole-program-vtables");
+   }
+ 
+   bool DefaultsSplitLTOUnit =
+diff --git a/clang/test/Driver/cuda-options.cu b/clang/test/Driver/cuda-options.cu
+index 175e4b877ce9..5b67d7e4d04f 100644
+--- a/clang/test/Driver/cuda-options.cu
++++ b/clang/test/Driver/cuda-options.cu
+@@ -183,6 +183,12 @@
+ // RUN:   -c %s 2>&1 \
+ // RUN: | FileCheck -check-prefixes FATBIN-COMMON,PTX-SM35,PTX-SM30 %s
+ 
++// Verify -flto=thin -fwhole-program-vtables handling. This should result in
++// both options being passed to the host compilation, with neither passed to
++// the device compilation.
++// RUN: %clang -### -target x86_64-linux-gnu -c -flto=thin -fwhole-program-vtables %s 2>&1 \
++// RUN: | FileCheck -check-prefixes DEVICE,DEVICE-NOSAVE,HOST,INCLUDES-DEVICE,NOLINK,THINLTOWPD %s
++// THINLTOWPD-NOT: error: invalid argument '-fwhole-program-vtables' only allowed with '-flto'
+ 
+ // ARCH-SM20: "-cc1"{{.*}}"-target-cpu" "sm_20"
+ // NOARCH-SM20-NOT: "-cc1"{{.*}}"-target-cpu" "sm_20"
+@@ -206,8 +212,10 @@
+ // Match the job that produces PTX assembly.
+ // DEVICE: "-cc1" "-triple" "nvptx64-nvidia-cuda"
+ // DEVICE-NOSAVE-SAME: "-aux-triple" "x86_64-unknown-linux-gnu"
++// THINLTOWPD-NOT: "-flto=thin"
+ // DEVICE-SAME: "-fcuda-is-device"
+ // DEVICE-SM30-SAME: "-target-cpu" "sm_30"
++// THINLTOWPD-NOT: "-fwhole-program-vtables"
+ // DEVICE-SAME: "-o" "[[PTXFILE:[^"]*]]"
+ // DEVICE-NOSAVE-SAME: "-x" "cuda"
+ // DEVICE-SAVE-SAME: "-x" "ir"
+@@ -252,12 +260,14 @@
+ // Match host-side compilation.
+ // HOST: "-cc1" "-triple" "x86_64-unknown-linux-gnu"
+ // HOST-SAME: "-aux-triple" "nvptx64-nvidia-cuda"
++// THINLTOWPD-SAME: "-flto=thin"
+ // HOST-NOT: "-fcuda-is-device"
+ // There is only one GPU binary after combining it with fatbinary!
+ // INCLUDES-DEVICE2-NOT: "-fcuda-include-gpubinary"
+ // INCLUDES-DEVICE-SAME: "-fcuda-include-gpubinary" "[[FATBINARY]]"
+ // There is only one GPU binary after combining it with fatbinary.
+ // INCLUDES-DEVICE2-NOT: "-fcuda-include-gpubinary"
++// THINLTOWPD-SAME: "-fwhole-program-vtables"
+ // HOST-SAME: "-o" "[[HOSTOUTPUT:[^"]*]]"
+ // HOST-NOSAVE-SAME: "-x" "cuda"
+ // HOST-SAVE-SAME: "-x" "cuda-cpp-output"
+diff --git a/clang/test/Driver/hip-options.hip b/clang/test/Driver/hip-options.hip
+index ec723053da05..08a821c89a19 100644
+--- a/clang/test/Driver/hip-options.hip
++++ b/clang/test/Driver/hip-options.hip
+@@ -60,13 +60,30 @@
+ // Check -foffload-lto=thin translated correctly.
+ 
+ // RUN: %clang -### -target x86_64-unknown-linux-gnu -nogpuinc -nogpulib \
+-// RUN:   --cuda-gpu-arch=gfx906 -foffload-lto=thin %s 2>&1 \
+-// RUN:   | FileCheck -check-prefix=THINLTO %s
++// RUN:   --cuda-gpu-arch=gfx906 -foffload-lto=thin -fwhole-program-vtables %s 2>&1 \
++// RUN:   | FileCheck -check-prefix=HIPTHINLTO %s
++
++// RUN: %clang -### -target x86_64-unknown-linux-gnu -nogpuinc -nogpulib \
++// RUN:   --cuda-gpu-arch=gfx906 -fgpu-rdc -foffload-lto=thin -fwhole-program-vtables %s 2>&1 \
++// RUN:   | FileCheck -check-prefix=HIPTHINLTO %s
+ 
++// Ensure we don't error about -fwhole-program-vtables for the non-device offload compile.
++// HIPTHINLTO-NOT: error: invalid argument '-fwhole-program-vtables' only allowed with '-flto'
++// HIPTHINLTO-NOT: clang{{.*}} "-triple" "x86_64-unknown-linux-gnu" {{.*}} "-flto-unit"
++// HIPTHINLTO: clang{{.*}} "-triple" "amdgcn-amd-amdhsa" {{.*}} "-flto=thin" "-flto-unit" {{.*}} "-fwhole-program-vtables"
++// HIPTHINLTO-NOT: clang{{.*}} "-triple" "x86_64-unknown-linux-gnu" {{.*}} "-flto-unit"
++// HIPTHINLTO: lld{{.*}}"-plugin-opt=mcpu=gfx906" "-plugin-opt=thinlto" "-plugin-opt=-force-import-all"
++
++// Check that -flto=thin is handled correctly, particularly with -fwhole-program-vtables.
++//
+ // RUN: %clang -### -target x86_64-unknown-linux-gnu -nogpuinc -nogpulib \
+-// RUN:   --cuda-gpu-arch=gfx906 -fgpu-rdc -foffload-lto=thin %s 2>&1 \
++// RUN:   --cuda-gpu-arch=gfx906 -flto=thin -fwhole-program-vtables %s 2>&1 \
+ // RUN:   | FileCheck -check-prefix=THINLTO %s
+ 
+-// THINLTO-NOT: clang{{.*}} "-triple" "x86_64-unknown-linux-gnu" {{.*}} "-flto-unit"
+-// THINLTO: clang{{.*}} "-triple" "amdgcn-amd-amdhsa" {{.*}} "-flto=thin" "-flto-unit"
+-// THINLTO: lld{{.*}}"-plugin-opt=mcpu=gfx906" "-plugin-opt=thinlto" "-plugin-opt=-force-import-all"
++// Ensure we don't error about -fwhole-program-vtables for the device offload compile. We should
++// drop -fwhole-program-vtables for the device offload compile and pass it through for the
++// non-device offload compile along with -flto=thin.
++// THINLTO-NOT: error: invalid argument '-fwhole-program-vtables' only allowed with '-flto'
++// THINLTO-NOT: clang{{.*}}" "-triple" "amdgcn-amd-amdhsa" {{.*}} "-fwhole-program-vtables"
++// THINLTO: clang{{.*}}" "-triple" "x86_64-unknown-linux-gnu" {{.*}} "-flto=thin" {{.*}} "-fwhole-program-vtables"
++// THINLTO-NOT: clang{{.*}}" "-triple" "amdgcn-amd-amdhsa" {{.*}} "-fwhole-program-vtables"
diff --git a/sys-devel/llvm/files/cherry/db126ae243cd70e4f68fd50a7c619740e90e1dc6.patch b/sys-devel/llvm/files/cherry/db126ae243cd70e4f68fd50a7c619740e90e1dc6.patch
new file mode 100644
index 0000000..2e30f51
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/db126ae243cd70e4f68fd50a7c619740e90e1dc6.patch
@@ -0,0 +1,441 @@
+commit db126ae243cd70e4f68fd50a7c619740e90e1dc6
+Author: Daniel Kiss <daniel.kiss@arm.com>
+Date:   Wed Aug 11 10:11:30 2021 +0200
+
+    [Arm][Unwind][libc++abi] Add _Unwind_ForcedUnwind to EHABI.
+    
+    _Unwind_ForcedUnwind is not mandated by the EHABI but for compatibilty
+    reasons adding so the interface to higher layers would be the same.
+    Dropping EHABI specific _Unwind_Stop_Fn definition since it is not defined by EHABI.
+    
+    Reviewed By: MaskRay
+    
+    Differential Revision: https://reviews.llvm.org/D89570
+
+diff --git a/libcxxabi/src/cxa_personality.cpp b/libcxxabi/src/cxa_personality.cpp
+index a4f81d74735f..d63741b19b3d 100644
+--- a/libcxxabi/src/cxa_personality.cpp
++++ b/libcxxabi/src/cxa_personality.cpp
+@@ -1109,7 +1109,14 @@ __gxx_personality_v0(_Unwind_State state,
+         // Either we didn't do a phase 1 search (due to forced unwinding), or
+         //  phase 1 reported no catching-handlers.
+         // Search for a (non-catching) cleanup
+-        scan_eh_tab(results, _UA_CLEANUP_PHASE, native_exception, unwind_exception, context);
++        if (is_force_unwinding)
++          scan_eh_tab(
++              results,
++              static_cast<_Unwind_Action>(_UA_CLEANUP_PHASE | _UA_FORCE_UNWIND),
++              native_exception, unwind_exception, context);
++        else
++          scan_eh_tab(results, _UA_CLEANUP_PHASE, native_exception,
++                      unwind_exception, context);
+         if (results.reason == _URC_HANDLER_FOUND)
+         {
+             // Found a non-catching handler
+diff --git a/libcxxabi/test/forced_unwind1.pass.cpp b/libcxxabi/test/forced_unwind1.pass.cpp
+index 69f93ffaacc0..b6963a024299 100644
+--- a/libcxxabi/test/forced_unwind1.pass.cpp
++++ b/libcxxabi/test/forced_unwind1.pass.cpp
+@@ -20,11 +20,6 @@
+ #include <tuple>
+ #include <__cxxabi_config.h>
+ 
+-#if defined(_LIBCXXABI_ARM_EHABI)
+-int main(int, char**) {
+-  return 0;
+-}
+-#else
+ static int bits = 0;
+ 
+ struct C {
+@@ -84,4 +79,3 @@ int main(int, char**) {
+   test();
+   return bits != 15;
+ }
+-#endif
+diff --git a/libcxxabi/test/forced_unwind2.pass.cpp b/libcxxabi/test/forced_unwind2.pass.cpp
+index cb527581687a..037f0499282f 100644
+--- a/libcxxabi/test/forced_unwind2.pass.cpp
++++ b/libcxxabi/test/forced_unwind2.pass.cpp
+@@ -21,11 +21,6 @@
+ #include <tuple>
+ #include <__cxxabi_config.h>
+ 
+-#if defined(_LIBCXXABI_ARM_EHABI)
+-int main(int, char**) {
+-  return 0;
+-}
+-#else
+ template <typename T>
+ struct Stop;
+ 
+@@ -64,4 +59,3 @@ int main(int, char**) {
+   }
+   abort();
+ }
+-#endif
+diff --git a/libunwind/include/unwind.h b/libunwind/include/unwind.h
+index e8d114854325..87c3cf6c804e 100644
+--- a/libunwind/include/unwind.h
++++ b/libunwind/include/unwind.h
+@@ -61,6 +61,14 @@ typedef struct _Unwind_Context _Unwind_Context;   // opaque
+ #include "unwind_itanium.h"
+ #endif
+ 
++typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
++    (int version,
++     _Unwind_Action actions,
++     uint64_t exceptionClass,
++     _Unwind_Exception* exceptionObject,
++     struct _Unwind_Context* context,
++     void* stop_parameter);
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+diff --git a/libunwind/include/unwind_arm_ehabi.h b/libunwind/include/unwind_arm_ehabi.h
+index 58444d14eb8d..5ad088722560 100644
+--- a/libunwind/include/unwind_arm_ehabi.h
++++ b/libunwind/include/unwind_arm_ehabi.h
+@@ -26,7 +26,7 @@ typedef uint32_t _Unwind_EHT_Header;
+ 
+ struct _Unwind_Control_Block;
+ typedef struct _Unwind_Control_Block _Unwind_Control_Block;
+-typedef struct _Unwind_Control_Block _Unwind_Exception; /* Alias */
++#define _Unwind_Exception _Unwind_Control_Block /* Alias */
+ 
+ struct _Unwind_Control_Block {
+   uint64_t exception_class;
+@@ -63,11 +63,6 @@ struct _Unwind_Control_Block {
+   long long int :0; /* Enforce the 8-byte alignment */
+ } __attribute__((__aligned__(8)));
+ 
+-typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
+-      (_Unwind_State state,
+-       _Unwind_Exception* exceptionObject,
+-       struct _Unwind_Context* context);
+-
+ typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
+     _Unwind_State state, _Unwind_Exception *exceptionObject,
+     struct _Unwind_Context *context);
+diff --git a/libunwind/include/unwind_itanium.h b/libunwind/include/unwind_itanium.h
+index 1e1389c7f0da..eeb45f622832 100644
+--- a/libunwind/include/unwind_itanium.h
++++ b/libunwind/include/unwind_itanium.h
+@@ -39,14 +39,6 @@ struct _Unwind_Exception {
+   // alignment for the target"; so do we.
+ } __attribute__((__aligned__));
+ 
+-typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
+-    (int version,
+-     _Unwind_Action actions,
+-     uint64_t exceptionClass,
+-     _Unwind_Exception* exceptionObject,
+-     struct _Unwind_Context* context,
+-     void* stop_parameter );
+-
+ typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
+     int version, _Unwind_Action actions, uint64_t exceptionClass,
+     _Unwind_Exception *exceptionObject, struct _Unwind_Context *context);
+diff --git a/libunwind/src/Unwind-EHABI.cpp b/libunwind/src/Unwind-EHABI.cpp
+index 8843db7f54c3..ba6064d3ef00 100644
+--- a/libunwind/src/Unwind-EHABI.cpp
++++ b/libunwind/src/Unwind-EHABI.cpp
+@@ -602,7 +602,7 @@ static _Unwind_Reason_Code unwind_phase2(unw_context_t *uc, unw_cursor_t *cursor
+     // If there is a personality routine, tell it we are unwinding.
+     if (frameInfo.handler != 0) {
+       _Unwind_Personality_Fn p =
+-          (_Unwind_Personality_Fn)(long)(frameInfo.handler);
++          (_Unwind_Personality_Fn)(intptr_t)(frameInfo.handler);
+       struct _Unwind_Context *context = (struct _Unwind_Context *)(cursor);
+       // EHABI #7.2
+       exception_object->pr_cache.fnstart = frameInfo.start_ip;
+@@ -670,6 +670,112 @@ static _Unwind_Reason_Code unwind_phase2(unw_context_t *uc, unw_cursor_t *cursor
+   return _URC_FATAL_PHASE2_ERROR;
+ }
+ 
++static _Unwind_Reason_Code
++unwind_phase2_forced(unw_context_t *uc, unw_cursor_t *cursor,
++                     _Unwind_Exception *exception_object, _Unwind_Stop_Fn stop,
++                     void *stop_parameter) {
++  // See comment at the start of unwind_phase1 regarding VRS integrity.
++  __unw_init_local(cursor, uc);
++  _LIBUNWIND_TRACE_UNWINDING("unwind_phase2_force(ex_ojb=%p)",
++                             static_cast<void *>(exception_object));
++  // Walk each frame until we reach where search phase said to stop
++  while (true) {
++    // Update info about this frame.
++    unw_proc_info_t frameInfo;
++    if (__unw_get_proc_info(cursor, &frameInfo) != UNW_ESUCCESS) {
++      _LIBUNWIND_TRACE_UNWINDING("unwind_phase2_forced(ex_ojb=%p): __unw_step "
++                                 "failed => _URC_END_OF_STACK",
++                                 (void *)exception_object);
++      return _URC_FATAL_PHASE2_ERROR;
++    }
++
++    // When tracing, print state information.
++    if (_LIBUNWIND_TRACING_UNWINDING) {
++      char functionBuf[512];
++      const char *functionName = functionBuf;
++      unw_word_t offset;
++      if ((__unw_get_proc_name(cursor, functionBuf, sizeof(functionBuf),
++                               &offset) != UNW_ESUCCESS) ||
++          (frameInfo.start_ip + offset > frameInfo.end_ip))
++        functionName = ".anonymous.";
++      _LIBUNWIND_TRACE_UNWINDING(
++          "unwind_phase2_forced(ex_ojb=%p): start_ip=0x%" PRIxPTR
++          ", func=%s, lsda=0x%" PRIxPTR ", personality=0x%" PRIxPTR,
++          (void *)exception_object, frameInfo.start_ip, functionName,
++          frameInfo.lsda, frameInfo.handler);
++    }
++
++    // Call stop function at each frame.
++    _Unwind_Action action =
++        (_Unwind_Action)(_UA_FORCE_UNWIND | _UA_CLEANUP_PHASE);
++    _Unwind_Reason_Code stopResult =
++        (*stop)(1, action, exception_object->exception_class, exception_object,
++                (_Unwind_Context *)(cursor), stop_parameter);
++    _LIBUNWIND_TRACE_UNWINDING(
++        "unwind_phase2_forced(ex_ojb=%p): stop function returned %d",
++        (void *)exception_object, stopResult);
++    if (stopResult != _URC_NO_REASON) {
++      _LIBUNWIND_TRACE_UNWINDING(
++          "unwind_phase2_forced(ex_ojb=%p): stopped by stop function",
++          (void *)exception_object);
++      return _URC_FATAL_PHASE2_ERROR;
++    }
++
++    // If there is a personality routine, tell it we are unwinding.
++    if (frameInfo.handler != 0) {
++      _Unwind_Personality_Fn p =
++          (_Unwind_Personality_Fn)(uintptr_t)(frameInfo.handler);
++      struct _Unwind_Context *context = (struct _Unwind_Context *)(cursor);
++      // EHABI #7.2
++      exception_object->pr_cache.fnstart = frameInfo.start_ip;
++      exception_object->pr_cache.ehtp =
++          (_Unwind_EHT_Header *)frameInfo.unwind_info;
++      exception_object->pr_cache.additional = frameInfo.flags;
++      _Unwind_Reason_Code personalityResult =
++          (*p)(_US_FORCE_UNWIND | _US_UNWIND_FRAME_STARTING, exception_object,
++               context);
++      switch (personalityResult) {
++      case _URC_CONTINUE_UNWIND:
++        _LIBUNWIND_TRACE_UNWINDING("unwind_phase2_forced(ex_ojb=%p): "
++                                   "personality returned "
++                                   "_URC_CONTINUE_UNWIND",
++                                   (void *)exception_object);
++        // Destructors called, continue unwinding
++        break;
++      case _URC_INSTALL_CONTEXT:
++        _LIBUNWIND_TRACE_UNWINDING("unwind_phase2_forced(ex_ojb=%p): "
++                                   "personality returned "
++                                   "_URC_INSTALL_CONTEXT",
++                                   (void *)exception_object);
++        // We may get control back if landing pad calls _Unwind_Resume().
++        __unw_resume(cursor);
++        break;
++      default:
++        // Personality routine returned an unknown result code.
++        _LIBUNWIND_TRACE_UNWINDING("unwind_phase2_forced(ex_ojb=%p): "
++                                   "personality returned %d, "
++                                   "_URC_FATAL_PHASE2_ERROR",
++                                   (void *)exception_object, personalityResult);
++        return _URC_FATAL_PHASE2_ERROR;
++      }
++    }
++  }
++
++  // Call stop function one last time and tell it we've reached the end
++  // of the stack.
++  _LIBUNWIND_TRACE_UNWINDING("unwind_phase2_forced(ex_ojb=%p): calling stop "
++                             "function with _UA_END_OF_STACK",
++                             (void *)exception_object);
++  _Unwind_Action lastAction =
++      (_Unwind_Action)(_UA_FORCE_UNWIND | _UA_CLEANUP_PHASE | _UA_END_OF_STACK);
++  (*stop)(1, lastAction, exception_object->exception_class, exception_object,
++          (struct _Unwind_Context *)(cursor), stop_parameter);
++
++  // Clean up phase did not resume at the frame that the search phase said it
++  // would.
++  return _URC_FATAL_PHASE2_ERROR;
++}
++
+ /// Called by __cxa_throw.  Only returns if there is a fatal error.
+ _LIBUNWIND_EXPORT _Unwind_Reason_Code
+ _Unwind_RaiseException(_Unwind_Exception *exception_object) {
+@@ -717,10 +823,13 @@ _Unwind_Resume(_Unwind_Exception *exception_object) {
+   unw_cursor_t cursor;
+   __unw_getcontext(&uc);
+ 
+-  // _Unwind_RaiseException on EHABI will always set the reserved1 field to 0,
+-  // which is in the same position as private_1 below.
+-  // TODO(ajwong): Who wronte the above? Why is it true?
+-  unwind_phase2(&uc, &cursor, exception_object, true);
++  if (exception_object->unwinder_cache.reserved1)
++    unwind_phase2_forced(
++        &uc, &cursor, exception_object,
++        (_Unwind_Stop_Fn)exception_object->unwinder_cache.reserved1,
++        (void *)exception_object->unwinder_cache.reserved3);
++  else
++    unwind_phase2(&uc, &cursor, exception_object, true);
+ 
+   // Clients assume _Unwind_Resume() does not return, so all we can do is abort.
+   _LIBUNWIND_ABORT("_Unwind_Resume() can't return");
+@@ -967,6 +1076,27 @@ _Unwind_VRS_Pop(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
+   _LIBUNWIND_ABORT("unsupported register class");
+ }
+ 
++/// Not used by C++.
++/// Unwinds stack, calling "stop" function at each frame.
++/// Could be used to implement longjmp().
++_LIBUNWIND_EXPORT _Unwind_Reason_Code
++_Unwind_ForcedUnwind(_Unwind_Exception *exception_object, _Unwind_Stop_Fn stop,
++                     void *stop_parameter) {
++  _LIBUNWIND_TRACE_API("_Unwind_ForcedUnwind(ex_obj=%p, stop=%p)",
++                       (void *)exception_object, (void *)(uintptr_t)stop);
++  unw_context_t uc;
++  unw_cursor_t cursor;
++  __unw_getcontext(&uc);
++
++  // Mark that this is a forced unwind, so _Unwind_Resume() can do
++  // the right thing.
++  exception_object->unwinder_cache.reserved1 = (uintptr_t)stop;
++  exception_object->unwinder_cache.reserved3 = (uintptr_t)stop_parameter;
++
++  return unwind_phase2_forced(&uc, &cursor, exception_object, stop,
++                              stop_parameter);
++}
++
+ /// Called by personality handler during phase 2 to find the start of the
+ /// function.
+ _LIBUNWIND_EXPORT uintptr_t
+diff --git a/libunwind/src/UnwindLevel1-gcc-ext.c b/libunwind/src/UnwindLevel1-gcc-ext.c
+index 310b836d129e..d69267ba25fe 100644
+--- a/libunwind/src/UnwindLevel1-gcc-ext.c
++++ b/libunwind/src/UnwindLevel1-gcc-ext.c
+@@ -25,31 +25,24 @@
+ #if defined(_LIBUNWIND_BUILD_ZERO_COST_APIS)
+ 
+ #if defined(_LIBUNWIND_SUPPORT_SEH_UNWIND)
+-#define private_1 private_[0]
++#define PRIVATE_1 private_[0]
++#elif defined(_LIBUNWIND_ARM_EHABI)
++#define PRIVATE_1 unwinder_cache.reserved1
++#else
++#define PRIVATE_1 private_1
+ #endif
+ 
+ ///  Called by __cxa_rethrow().
+ _LIBUNWIND_EXPORT _Unwind_Reason_Code
+ _Unwind_Resume_or_Rethrow(_Unwind_Exception *exception_object) {
+-#if defined(_LIBUNWIND_ARM_EHABI)
+-  _LIBUNWIND_TRACE_API("_Unwind_Resume_or_Rethrow(ex_obj=%p), private_1=%ld",
+-                       (void *)exception_object,
+-                       (long)exception_object->unwinder_cache.reserved1);
+-#else
+-  _LIBUNWIND_TRACE_API("_Unwind_Resume_or_Rethrow(ex_obj=%p), private_1=%" PRIdPTR,
+-                       (void *)exception_object,
+-                       (intptr_t)exception_object->private_1);
+-#endif
++  _LIBUNWIND_TRACE_API(
++      "_Unwind_Resume_or_Rethrow(ex_obj=%p), private_1=%" PRIdPTR,
++      (void *)exception_object, (intptr_t)exception_object->PRIVATE_1);
+ 
+-#if defined(_LIBUNWIND_ARM_EHABI)
+-  // _Unwind_RaiseException on EHABI will always set the reserved1 field to 0,
+-  // which is in the same position as private_1 below.
+-  return _Unwind_RaiseException(exception_object);
+-#else
+   // If this is non-forced and a stopping place was found, then this is a
+   // re-throw.
+   // Call _Unwind_RaiseException() as if this was a new exception
+-  if (exception_object->private_1 == 0) {
++  if (exception_object->PRIVATE_1 == 0) {
+     return _Unwind_RaiseException(exception_object);
+     // Will return if there is no catch clause, so that __cxa_rethrow can call
+     // std::terminate().
+@@ -60,10 +53,8 @@ _Unwind_Resume_or_Rethrow(_Unwind_Exception *exception_object) {
+   _Unwind_Resume(exception_object);
+   _LIBUNWIND_ABORT("_Unwind_Resume_or_Rethrow() called _Unwind_RaiseException()"
+                    " which unexpectedly returned");
+-#endif
+ }
+ 
+-
+ /// Called by personality handler during phase 2 to get base address for data
+ /// relative encodings.
+ _LIBUNWIND_EXPORT uintptr_t
+diff --git a/libunwind/test/forceunwind.pass.cpp b/libunwind/test/forceunwind.pass.cpp
+new file mode 100644
+index 000000000000..e74aa3faa080
+--- /dev/null
++++ b/libunwind/test/forceunwind.pass.cpp
+@@ -0,0 +1,68 @@
++// -*- C++ -*-
++//===----------------------------------------------------------------------===//
++//
++// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
++// See https://llvm.org/LICENSE.txt for license information.
++// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
++//
++//===----------------------------------------------------------------------===//
++
++// REQUIRES: linux
++
++// Basic test for _Unwind_ForcedUnwind.
++// See libcxxabi/test/forced_unwind* tests too.
++
++#include <assert.h>
++#include <dlfcn.h>
++#include <signal.h>
++#include <stdint.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++#include <sys/types.h>
++#include <unistd.h>
++#include <unwind.h>
++
++void foo();
++_Unwind_Exception ex;
++
++_Unwind_Reason_Code stop(int version, _Unwind_Action actions,
++                         uint64_t exceptionClass,
++                         _Unwind_Exception *exceptionObject,
++                         struct _Unwind_Context *context,
++                         void *stop_parameter) {
++  assert(version == 1);
++  assert((actions & _UA_FORCE_UNWIND) != 0);
++  (void)exceptionClass;
++  assert(exceptionObject == &ex);
++  assert(stop_parameter == &foo);
++
++  Dl_info info = {0, 0, 0, 0};
++
++  // Unwind util the main is reached, above frames depend on the platform and
++  // architecture.
++  if (dladdr(reinterpret_cast<void *>(_Unwind_GetIP(context)), &info) &&
++      info.dli_sname && !strcmp("main", info.dli_sname)) {
++    _Exit(0);
++  }
++  return _URC_NO_REASON;
++}
++
++__attribute__((noinline)) void foo() {
++
++  // Arm EHABI defines struct _Unwind_Control_Block as exception
++  // object. Ensure struct _Unwind_Exception* work there too,
++  // because _Unwind_Exception in this case is just an alias.
++  struct _Unwind_Exception *e = &ex;
++#if defined(_LIBUNWIND_ARM_EHABI)
++  // Create a mock exception object.
++  memset(e, '\0', sizeof(*e));
++  e->exception_class = 0x434C4E47554E5700; // CLNGUNW\0
++#endif
++  _Unwind_ForcedUnwind(e, stop, (void *)&foo);
++}
++
++int main() {
++  foo();
++  return -2;
++}
diff --git a/sys-devel/llvm/files/cherry/dd226803c220f02a5987f0ee9f9ac3ffe2b35c09.patch b/sys-devel/llvm/files/cherry/dd226803c220f02a5987f0ee9f9ac3ffe2b35c09.patch
new file mode 100644
index 0000000..dafedcf
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/dd226803c220f02a5987f0ee9f9ac3ffe2b35c09.patch
@@ -0,0 +1,21 @@
+commit dd226803c220f02a5987f0ee9f9ac3ffe2b35c09
+Author: Stefan Pintilie <stefanp@ca.ibm.com>
+Date:   Fri May 28 11:17:46 2021 -0500
+
+    Revert "[NFCI][LoopDeletion] Do not call complex analysis for known non-zero BTC"
+    
+    This reverts commit 7d418dadf6b1e6fd9bcccf7c5b5e1db74992ee70.
+
+diff --git a/llvm/lib/Transforms/Scalar/LoopDeletion.cpp b/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
+index da9a767d6fea..acc2056c4a54 100644
+--- a/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
++++ b/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
+@@ -314,8 +314,6 @@ breakBackedgeIfNotTaken(Loop *L, DominatorTree &DT, ScalarEvolution &SE,
+     return LoopDeletionResult::Unmodified;
+ 
+   auto *BTC = SE.getBackedgeTakenCount(L);
+-  if (!isa<SCEVCouldNotCompute>(BTC) && SE.isKnownNonZero(BTC))
+-    return LoopDeletionResult::Unmodified;
+   if (!BTC->isZero() && !canProveExitOnFirstIteration(L, DT, SE, LI))
+     return LoopDeletionResult::Unmodified;
+ 
diff --git a/sys-devel/llvm/files/cherry/e8b376547b4b77671c36607ade025d3272699e7a.patch b/sys-devel/llvm/files/cherry/e8b376547b4b77671c36607ade025d3272699e7a.patch
new file mode 100644
index 0000000..ecdfb86
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/e8b376547b4b77671c36607ade025d3272699e7a.patch
@@ -0,0 +1,66 @@
+commit e8b376547b4b77671c36607ade025d3272699e7a
+Author: Wei Mi <wmi@google.com>
+Date:   Fri Sep 24 15:20:16 2021 -0700
+
+    Fixed a bug in https://reviews.llvm.org/rG8eb617d719bdc6a4ed7773925d2421b9bbdd4b7a.
+    
+    For compressed profile when reading an unknown section, the data reader pointer
+    adjustment was incorrect. This patch fixed that.
+---
+ llvm/include/llvm/ProfileData/SampleProfReader.h         |   2 +-
+ .../Inputs/unknown.section.compressed.extbin.profdata    | Bin 0 -> 401 bytes
+ llvm/test/tools/llvm-profdata/forward-compatible.test    |  15 +++++++++++++++
+ 3 files changed, 16 insertions(+), 1 deletion(-)
+
+diff --git a/llvm/include/llvm/ProfileData/SampleProfReader.h b/llvm/include/llvm/ProfileData/SampleProfReader.h
+index 169ba28965fb..e6d31f1b9098 100644
+--- a/llvm/include/llvm/ProfileData/SampleProfReader.h
++++ b/llvm/include/llvm/ProfileData/SampleProfReader.h
+@@ -787,7 +787,7 @@ private:
+   virtual std::error_code
+   readCustomSection(const SecHdrTableEntry &Entry) override {
+     // Update the data reader pointer to the end of the section.
+-    Data += Entry.Size;
++    Data = End;
+     return sampleprof_error::success;
+   };
+ 
+diff --git a/llvm/test/tools/llvm-profdata/Inputs/unknown.section.compressed.extbin.profdata b/llvm/test/tools/llvm-profdata/Inputs/unknown.section.compressed.extbin.profdata
+new file mode 100644
+index 000000000000..f08c7ba3d562
+Binary files /dev/null and b/llvm/test/tools/llvm-profdata/Inputs/unknown.section.compressed.extbin.profdata differ
+diff --git a/llvm/test/tools/llvm-profdata/forward-compatible.test b/llvm/test/tools/llvm-profdata/forward-compatible.test
+index 50c79a0d3e51..8d45ba7d8a73 100644
+--- a/llvm/test/tools/llvm-profdata/forward-compatible.test
++++ b/llvm/test/tools/llvm-profdata/forward-compatible.test
+@@ -1,11 +1,15 @@
+ RUN: llvm-profdata show -sample %S/Inputs/unknown.section.extbin.profdata | FileCheck %s
++RUN: llvm-profdata show -sample %S/Inputs/unknown.section.compressed.extbin.profdata | FileCheck %s
+ RUN: llvm-profdata show -sample -show-sec-info-only %S/Inputs/unknown.section.extbin.profdata | FileCheck %s -check-prefix=HDR
++RUN: llvm-profdata show -sample -show-sec-info-only %S/Inputs/unknown.section.compressed.extbin.profdata | FileCheck %s -check-prefix=HDR-COMPRESS
+ 
+ # The input unknown.section.extbin.profdata contains an unknown section type
+ # which uses an enum value which won't be used in the near future. Check
+ # llvm-profdata can read it without problem. This is to ensure adding new
+ # section in extbinary format for SampleFDO won't cause forward compatibility
+ # issue.
++# unknown.section.compressed.extbin.profdata is the compressed version of
++# unknown.section.extbin.profdata.
+ 
+ CHECK: Function: main: 366846, 0, 3 sampled lines
+ CHECK-NEXT: Samples collected in the function's body {
+@@ -24,3 +28,14 @@ HDR-NEXT: FunctionMetadata - Offset: 394, Size: 0, Flags: {}
+ HDR-NEXT: Header Size: 242
+ HDR-NEXT: Total Sections Size: 152
+ HDR-NEXT: File Size: 394
++
++HDR-COMPRESS: ProfileSummarySection - Offset: 242, Size: 89, Flags: {compressed}
++HDR-COMPRESS-NEXT: NameTableSection - Offset: 331, Size: 16, Flags: {compressed}
++HDR-COMPRESS-NEXT: UnknownSection - Offset: 347, Size: 11, Flags: {compressed}
++HDR-COMPRESS-NEXT: FuncOffsetTableSection - Offset: 388, Size: 13, Flags: {compressed}
++HDR-COMPRESS-NEXT: LBRProfileSection - Offset: 358, Size: 30, Flags: {compressed}
++HDR-COMPRESS-NEXT: ProfileSymbolListSection - Offset: 388, Size: 0, Flags: {compressed}
++HDR-COMPRESS-NEXT: FunctionMetadata - Offset: 401, Size: 0, Flags: {compressed}
++HDR-COMPRESS-NEXT: Header Size: 242
++HDR-COMPRESS-NEXT: Total Sections Size: 159
++HDR-COMPRESS-NEXT: File Size: 401
diff --git a/sys-devel/llvm/files/cherry/f63adf5b67f7a25b15f81d3a1a207aba4f226dc4.patch b/sys-devel/llvm/files/cherry/f63adf5b67f7a25b15f81d3a1a207aba4f226dc4.patch
new file mode 100644
index 0000000..eaf65ed
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/f63adf5b67f7a25b15f81d3a1a207aba4f226dc4.patch
@@ -0,0 +1,397 @@
+commit f63adf5b67f7a25b15f81d3a1a207aba4f226dc4
+Author: Nico Weber <thakis@chromium.org>
+Date:   Fri May 28 14:49:18 2021 -0400
+
+    Revert "[clang][Parse] Add parsing support for C++ attributes on using-declarations"
+    
+    This reverts commit dc672999a9b12a156991891dc400308b52d569ba.
+    Breaks check-clang everywhere, see https://reviews.llvm.org/D91630
+
+diff --git a/clang/docs/LanguageExtensions.rst b/clang/docs/LanguageExtensions.rst
+index c60b8b39e1c9..129e73345b2a 100644
+--- a/clang/docs/LanguageExtensions.rst
++++ b/clang/docs/LanguageExtensions.rst
+@@ -632,20 +632,6 @@ Attributes on the ``enum`` declaration do not apply to individual enumerators.
+ 
+ Query for this feature with ``__has_extension(enumerator_attributes)``.
+ 
+-C++11 Attributes on using-declarations
+-======================================
+-
+-Clang allows C++-style ``[[]]`` attributes to be written on using-declarations.
+-For instance:
+-
+-.. code-block:: c++
+-
+-  [[clang::using_if_exists]] using foo::bar;
+-  using foo::baz [[clang::using_if_exists]];
+-
+-You can test for support for this extension with
+-``__has_extension(cxx_attributes_on_using_declarations)``.
+-
+ 'User-Specified' System Frameworks
+ ==================================
+ 
+diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst
+index b43300ad6646..81609fa6efdf 100644
+--- a/clang/docs/ReleaseNotes.rst
++++ b/clang/docs/ReleaseNotes.rst
+@@ -113,9 +113,6 @@ Attribute Changes in Clang
+ 
+ - ...
+ 
+-- Added support for C++11-style ``[[]]`` attributes on using-declarations, as a
+-  clang extension.
+-
+ Windows Support
+ ---------------
+ 
+diff --git a/clang/include/clang/Basic/DiagnosticParseKinds.td b/clang/include/clang/Basic/DiagnosticParseKinds.td
+index 6d5d08e5fbad..97cb7020f345 100644
+--- a/clang/include/clang/Basic/DiagnosticParseKinds.td
++++ b/clang/include/clang/Basic/DiagnosticParseKinds.td
+@@ -693,9 +693,6 @@ def ext_using_attribute_ns : ExtWarn<
+ def err_using_attribute_ns_conflict : Error<
+   "attribute with scope specifier cannot follow default scope specifier">;
+ def err_attributes_not_allowed : Error<"an attribute list cannot appear here">;
+-def ext_cxx11_attr_placement : ExtWarn<
+-  "ISO C++ does not allow an attribute list to appear here">,
+-  InGroup<DiagGroup<"cxx-attribute-extension">>;
+ def err_attributes_misplaced : Error<"misplaced attributes; expected attributes here">;
+ def err_l_square_l_square_not_attribute : Error<
+   "C++11 only allows consecutive left square brackets when "
+diff --git a/clang/include/clang/Basic/DiagnosticSemaKinds.td b/clang/include/clang/Basic/DiagnosticSemaKinds.td
+index 80130c2584fe..4b653b8b4737 100644
+--- a/clang/include/clang/Basic/DiagnosticSemaKinds.td
++++ b/clang/include/clang/Basic/DiagnosticSemaKinds.td
+@@ -3957,9 +3957,6 @@ def warn_attribute_sentinel_named_arguments : Warning<
+ def warn_attribute_sentinel_not_variadic : Warning<
+   "'sentinel' attribute only supported for variadic %select{functions|blocks}0">,
+   InGroup<IgnoredAttributes>;
+-def warn_deprecated_ignored_on_using : Warning<
+-  "%0 currently has no effect on a using declaration">,
+-  InGroup<IgnoredAttributes>;
+ def err_attribute_sentinel_less_than_zero : Error<
+   "'sentinel' parameter 1 less than zero">;
+ def err_attribute_sentinel_not_zero_or_one : Error<
+diff --git a/clang/include/clang/Basic/Features.def b/clang/include/clang/Basic/Features.def
+index 592e3e33baf1..a7a5e06a937e 100644
+--- a/clang/include/clang/Basic/Features.def
++++ b/clang/include/clang/Basic/Features.def
+@@ -259,7 +259,6 @@ EXTENSION(gnu_asm, LangOpts.GNUAsm)
+ EXTENSION(gnu_asm_goto_with_outputs, LangOpts.GNUAsm)
+ EXTENSION(matrix_types, LangOpts.MatrixTypes)
+ EXTENSION(matrix_types_scalar_division, true)
+-EXTENSION(cxx_attributes_on_using_declarations, LangOpts.CPlusPlus11)
+ 
+ FEATURE(cxx_abi_relative_vtable, LangOpts.CPlusPlus && LangOpts.RelativeCXXABIVTables)
+ 
+diff --git a/clang/include/clang/Parse/Parser.h b/clang/include/clang/Parse/Parser.h
+index cb618d172c5b..e3e6509b025e 100644
+--- a/clang/include/clang/Parse/Parser.h
++++ b/clang/include/clang/Parse/Parser.h
+@@ -2634,10 +2634,6 @@ private:
+   /// locations where attributes are not allowed.
+   void DiagnoseAndSkipCXX11Attributes();
+ 
+-  /// Emit warnings for C++11 and C2x attributes that are in a position that
+-  /// clang accepts as an extension.
+-  void DiagnoseCXX11AttributeExtension(ParsedAttributesWithRange &Attrs);
+-
+   /// Parses syntax-generic attribute arguments for attributes which are
+   /// known to the implementation, and adds them to the given ParsedAttributes
+   /// list with the given attribute syntax. Returns the number of arguments
+@@ -3063,7 +3059,6 @@ private:
+                                        const ParsedTemplateInfo &TemplateInfo,
+                                        SourceLocation UsingLoc,
+                                        SourceLocation &DeclEnd,
+-                                       ParsedAttributesWithRange &Attrs,
+                                        AccessSpecifier AS = AS_none);
+   Decl *ParseAliasDeclarationAfterDeclarator(
+       const ParsedTemplateInfo &TemplateInfo, SourceLocation UsingLoc,
+diff --git a/clang/lib/Parse/ParseDecl.cpp b/clang/lib/Parse/ParseDecl.cpp
+index 76d031b62e9d..fda427508c05 100644
+--- a/clang/lib/Parse/ParseDecl.cpp
++++ b/clang/lib/Parse/ParseDecl.cpp
+@@ -1650,13 +1650,6 @@ void Parser::ProhibitCXX11Attributes(ParsedAttributesWithRange &Attrs,
+   }
+ }
+ 
+-void Parser::DiagnoseCXX11AttributeExtension(ParsedAttributesWithRange &Attrs) {
+-  for (const ParsedAttr &PA : Attrs) {
+-    if (PA.isCXX11Attribute() || PA.isC2xAttribute())
+-      Diag(PA.getLoc(), diag::ext_cxx11_attr_placement) << PA << PA.getRange();
+-  }
+-}
+-
+ // Usually, `__attribute__((attrib)) class Foo {} var` means that attribute
+ // applies to var, not the type Foo.
+ // As an exception to the rule, __declspec(align(...)) before the
+diff --git a/clang/lib/Parse/ParseDeclCXX.cpp b/clang/lib/Parse/ParseDeclCXX.cpp
+index 1d7b953a627b..af3d0df53e91 100644
+--- a/clang/lib/Parse/ParseDeclCXX.cpp
++++ b/clang/lib/Parse/ParseDeclCXX.cpp
+@@ -497,7 +497,11 @@ Parser::ParseUsingDirectiveOrDeclaration(DeclaratorContext Context,
+   }
+ 
+   // Otherwise, it must be a using-declaration or an alias-declaration.
+-  return ParseUsingDeclaration(Context, TemplateInfo, UsingLoc, DeclEnd, attrs,
++
++  // Using declarations can't have attributes.
++  ProhibitAttributes(attrs);
++
++  return ParseUsingDeclaration(Context, TemplateInfo, UsingLoc, DeclEnd,
+                                AS_none);
+ }
+ 
+@@ -623,8 +627,7 @@ bool Parser::ParseUsingDeclarator(DeclaratorContext Context,
+   if (getLangOpts().CPlusPlus11 && Context == DeclaratorContext::Member &&
+       Tok.is(tok::identifier) &&
+       (NextToken().is(tok::semi) || NextToken().is(tok::comma) ||
+-       NextToken().is(tok::ellipsis) || NextToken().is(tok::l_square) ||
+-       NextToken().is(tok::kw___attribute)) &&
++       NextToken().is(tok::ellipsis)) &&
+       D.SS.isNotEmpty() && LastII == Tok.getIdentifierInfo() &&
+       !D.SS.getScopeRep()->getAsNamespace() &&
+       !D.SS.getScopeRep()->getAsNamespaceAlias()) {
+@@ -667,10 +670,11 @@ bool Parser::ParseUsingDeclarator(DeclaratorContext Context,
+ ///     alias-declaration: C++11 [dcl.dcl]p1
+ ///       'using' identifier attribute-specifier-seq[opt] = type-id ;
+ ///
+-Parser::DeclGroupPtrTy Parser::ParseUsingDeclaration(
+-    DeclaratorContext Context, const ParsedTemplateInfo &TemplateInfo,
+-    SourceLocation UsingLoc, SourceLocation &DeclEnd,
+-    ParsedAttributesWithRange &PrefixAttrs, AccessSpecifier AS) {
++Parser::DeclGroupPtrTy
++Parser::ParseUsingDeclaration(DeclaratorContext Context,
++                              const ParsedTemplateInfo &TemplateInfo,
++                              SourceLocation UsingLoc, SourceLocation &DeclEnd,
++                              AccessSpecifier AS) {
+   // Check for misplaced attributes before the identifier in an
+   // alias-declaration.
+   ParsedAttributesWithRange MisplacedAttrs(AttrFactory);
+@@ -682,17 +686,6 @@ Parser::DeclGroupPtrTy Parser::ParseUsingDeclaration(
+   ParsedAttributesWithRange Attrs(AttrFactory);
+   MaybeParseAttributes(PAKM_GNU | PAKM_CXX11, Attrs);
+ 
+-  // If we had any misplaced attributes from earlier, this is where they
+-  // should have been written.
+-  if (MisplacedAttrs.Range.isValid()) {
+-    Diag(MisplacedAttrs.Range.getBegin(), diag::err_attributes_not_allowed)
+-        << FixItHint::CreateInsertionFromRange(
+-               Tok.getLocation(),
+-               CharSourceRange::getTokenRange(MisplacedAttrs.Range))
+-        << FixItHint::CreateRemoval(MisplacedAttrs.Range);
+-    Attrs.takeAllFrom(MisplacedAttrs);
+-  }
+-
+   // Maybe this is an alias-declaration.
+   if (Tok.is(tok::equal)) {
+     if (InvalidDeclarator) {
+@@ -700,7 +693,16 @@ Parser::DeclGroupPtrTy Parser::ParseUsingDeclaration(
+       return nullptr;
+     }
+ 
+-    ProhibitAttributes(PrefixAttrs);
++    // If we had any misplaced attributes from earlier, this is where they
++    // should have been written.
++    if (MisplacedAttrs.Range.isValid()) {
++      Diag(MisplacedAttrs.Range.getBegin(), diag::err_attributes_not_allowed)
++        << FixItHint::CreateInsertionFromRange(
++               Tok.getLocation(),
++               CharSourceRange::getTokenRange(MisplacedAttrs.Range))
++        << FixItHint::CreateRemoval(MisplacedAttrs.Range);
++      Attrs.takeAllFrom(MisplacedAttrs);
++    }
+ 
+     Decl *DeclFromDeclSpec = nullptr;
+     Decl *AD = ParseAliasDeclarationAfterDeclarator(
+@@ -708,7 +710,10 @@ Parser::DeclGroupPtrTy Parser::ParseUsingDeclaration(
+     return Actions.ConvertDeclToDeclGroup(AD, DeclFromDeclSpec);
+   }
+ 
+-  DiagnoseCXX11AttributeExtension(PrefixAttrs);
++  // C++11 attributes are not allowed on a using-declaration, but GNU ones
++  // are.
++  ProhibitAttributes(MisplacedAttrs);
++  ProhibitAttributes(Attrs);
+ 
+   // Diagnose an attempt to declare a templated using-declaration.
+   // In C++11, alias-declarations can be templates:
+@@ -726,10 +731,8 @@ Parser::DeclGroupPtrTy Parser::ParseUsingDeclaration(
+ 
+   SmallVector<Decl *, 8> DeclsInGroup;
+   while (true) {
+-    // Parse (optional) attributes.
+-    MaybeParseAttributes(PAKM_GNU | PAKM_CXX11, Attrs);
+-    DiagnoseCXX11AttributeExtension(Attrs);
+-    Attrs.addAll(PrefixAttrs.begin(), PrefixAttrs.end());
++    // Parse (optional) attributes (most likely GNU strong-using extension).
++    MaybeParseGNUAttributes(Attrs);
+ 
+     if (InvalidDeclarator)
+       SkipUntil(tok::comma, tok::semi, StopBeforeMatch);
+@@ -2615,6 +2618,8 @@ Parser::ParseCXXClassMemberDeclaration(AccessSpecifier AS,
+   MaybeParseMicrosoftAttributes(attrs);
+ 
+   if (Tok.is(tok::kw_using)) {
++    ProhibitAttributes(attrs);
++
+     // Eat 'using'.
+     SourceLocation UsingLoc = ConsumeToken();
+ 
+@@ -2633,7 +2638,7 @@ Parser::ParseCXXClassMemberDeclaration(AccessSpecifier AS,
+     SourceLocation DeclEnd;
+     // Otherwise, it must be a using-declaration or an alias-declaration.
+     return ParseUsingDeclaration(DeclaratorContext::Member, TemplateInfo,
+-                                 UsingLoc, DeclEnd, attrs, AS);
++                                 UsingLoc, DeclEnd, AS);
+   }
+ 
+   // Hold late-parsed attributes so we can attach a Decl to them later.
+diff --git a/clang/lib/Sema/SemaDeclAttr.cpp b/clang/lib/Sema/SemaDeclAttr.cpp
+index 130ec7675820..65467a828a5a 100644
+--- a/clang/lib/Sema/SemaDeclAttr.cpp
++++ b/clang/lib/Sema/SemaDeclAttr.cpp
+@@ -2446,13 +2446,6 @@ AvailabilityAttr *Sema::mergeAvailabilityAttr(
+ }
+ 
+ static void handleAvailabilityAttr(Sema &S, Decl *D, const ParsedAttr &AL) {
+-  if (isa<UsingDecl, UnresolvedUsingTypenameDecl, UnresolvedUsingValueDecl>(
+-          D)) {
+-    S.Diag(AL.getRange().getBegin(), diag::warn_deprecated_ignored_on_using)
+-        << AL;
+-    return;
+-  }
+-
+   if (!AL.checkExactlyNumArgs(S, 1))
+     return;
+   IdentifierLoc *Platform = AL.getArgAsIdent(0);
+@@ -7264,11 +7257,6 @@ static void handleDeprecatedAttr(Sema &S, Decl *D, const ParsedAttr &AL) {
+       // namespace.
+       return;
+     }
+-  } else if (isa<UsingDecl, UnresolvedUsingTypenameDecl,
+-                 UnresolvedUsingValueDecl>(D)) {
+-    S.Diag(AL.getRange().getBegin(), diag::warn_deprecated_ignored_on_using)
+-        << AL;
+-    return;
+   }
+ 
+   // Handle the cases where the attribute has a text message.
+diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp
+index 7739625c1b9f..f4d8f4d9aa33 100644
+--- a/clang/lib/Sema/SemaDeclCXX.cpp
++++ b/clang/lib/Sema/SemaDeclCXX.cpp
+@@ -12071,9 +12071,9 @@ NamedDecl *Sema::BuildUsingDeclaration(
+     return nullptr;
+ 
+   DeclContext *LookupContext = computeDeclContext(SS);
++  NamedDecl *D;
+   NestedNameSpecifierLoc QualifierLoc = SS.getWithLocInContext(Context);
+   if (!LookupContext || EllipsisLoc.isValid()) {
+-    NamedDecl *D;
+     if (HasTypenameKeyword) {
+       // FIXME: not all declaration name kinds are legal here
+       D = UnresolvedUsingTypenameDecl::Create(Context, CurContext,
+@@ -12087,7 +12087,6 @@ NamedDecl *Sema::BuildUsingDeclaration(
+     }
+     D->setAccess(AS);
+     CurContext->addDecl(D);
+-    ProcessDeclAttributeList(S, D, AttrList);
+     return D;
+   }
+ 
+@@ -12097,7 +12096,6 @@ NamedDecl *Sema::BuildUsingDeclaration(
+                           UsingName, HasTypenameKeyword);
+     UD->setAccess(AS);
+     CurContext->addDecl(UD);
+-    ProcessDeclAttributeList(S, UD, AttrList);
+     UD->setInvalidDecl(Invalid);
+     return UD;
+   };
+diff --git a/clang/test/Parser/cxx0x-attributes.cpp b/clang/test/Parser/cxx0x-attributes.cpp
+index 1b34c8cfd103..0b2bad6b0002 100644
+--- a/clang/test/Parser/cxx0x-attributes.cpp
++++ b/clang/test/Parser/cxx0x-attributes.cpp
+@@ -131,12 +131,12 @@ extern "C++" [[]] { } // expected-error {{an attribute list cannot appear here}}
+ [[]] static_assert(true, ""); //expected-error {{an attribute list cannot appear here}}
+ [[]] asm(""); // expected-error {{an attribute list cannot appear here}}
+ 
+-[[]] using ns::i;
++[[]] using ns::i; // expected-error {{an attribute list cannot appear here}}
+ [[unknown]] using namespace ns; // expected-warning {{unknown attribute 'unknown' ignored}}
+ [[noreturn]] using namespace ns; // expected-error {{'noreturn' attribute only applies to functions}}
+ namespace [[]] ns2 {} // expected-warning {{attributes on a namespace declaration are a C++17 extension}}
+ 
+-using[[]] alignas(4)[[]] ns::i;          // expected-error {{an attribute list cannot appear here}} expected-error {{'alignas' attribute only applies to variables, data members and tag types}} expected-warning {{ISO C++}}
++using [[]] alignas(4) [[]] ns::i; // expected-error {{an attribute list cannot appear here}}
+ using [[]] alignas(4) [[]] foobar = int; // expected-error {{an attribute list cannot appear here}} expected-error {{'alignas' attribute only applies to}}
+ 
+ void bad_attributes_in_do_while() {
+@@ -157,16 +157,7 @@ void bad_attributes_in_do_while() {
+ [[]] using T = int; // expected-error {{an attribute list cannot appear here}}
+ using T [[]] = int; // ok
+ template<typename T> using U [[]] = T;
+-using ns::i [[]];
+-using ns::i [[]], ns::i [[]]; // expected-warning {{use of multiple declarators in a single using declaration is a C++17 extension}}
+-struct using_in_struct_base {
+-  typedef int i, j, k, l;
+-};
+-struct using_in_struct : using_in_struct_base {
+-  [[]] using using_in_struct_base::i;
+-  using using_in_struct_base::j [[]];
+-  [[]] using using_in_struct_base::k [[]], using_in_struct_base::l [[]]; // expected-warning {{use of multiple declarators in a single using declaration is a C++17 extension}}
+-};
++using ns::i [[]]; // expected-error {{an attribute list cannot appear here}}
+ using [[]] ns::i; // expected-error {{an attribute list cannot appear here}}
+ using T [[unknown]] = int; // expected-warning {{unknown attribute 'unknown' ignored}}
+ using T [[noreturn]] = int; // expected-error {{'noreturn' attribute only applies to functions}}
+diff --git a/clang/test/SemaCXX/cxx11-attributes-on-using-declaration.cpp b/clang/test/SemaCXX/cxx11-attributes-on-using-declaration.cpp
+deleted file mode 100644
+index 0377a5920358..000000000000
+--- a/clang/test/SemaCXX/cxx11-attributes-on-using-declaration.cpp
++++ /dev/null
+@@ -1,42 +0,0 @@
+-// RUN: %clang_cc1 -pedantic -triple x86_64-apple-macos11 -std=c++20 -fsyntax-only -verify %s
+-
+-static_assert(__has_extension(cxx_attributes_on_using_declarations), "");
+-
+-namespace NS { typedef int x; }
+-
+-[[clang::annotate("foo")]] using NS::x; // expected-warning{{ISO C++ does not allow an attribute list to appear here}}
+-
+-
+-[[deprecated]] using NS::x;                                    // expected-warning {{'deprecated' currently has no effect on using-declarations}} expected-warning{{ISO C++ does not allow}}
+-using NS::x [[deprecated]];                                    // expected-warning {{'deprecated' currently has no effect on using-declarations}} expected-warning{{ISO C++ does not allow}}
+-using NS::x __attribute__((deprecated));                       // expected-warning {{'deprecated' currently has no effect on using-declarations}}
+-using NS::x __attribute__((availability(macos,introduced=1))); // expected-warning {{'availability' currently has no effect on using-declarations}}
+-
+-[[clang::availability(macos,introduced=1)]] using NS::x; // expected-warning {{'availability' currently has no effect on using-declarations}} expected-warning{{ISO C++ does not allow}}
+-
+-// expected-warning@+1 3 {{ISO C++ does not allow an attribute list to appear here}}
+-[[clang::annotate("A")]] using NS::x [[clang::annotate("Y")]], NS::x [[clang::annotate("Z")]];
+-
+-template <class T>
+-struct S : T {
+-  [[deprecated]] using typename T::x; // expected-warning{{ISO C++ does not allow}} expected-warning {{'deprecated' currently has no effect on using-declarations}}
+-  [[deprecated]] using T::y;          // expected-warning{{ISO C++ does not allow}} expected-warning {{'deprecated' currently has no effect on using-declarations}}
+-
+-  using typename T::z [[deprecated]]; // expected-warning{{ISO C++ does not allow}} expected-warning {{'deprecated' currently has no effect on using-declarations}}
+-  using T::a [[deprecated]];          // expected-warning{{ISO C++ does not allow}} expected-warning {{'deprecated' currently has no effect on using-declarations}}
+-};
+-
+-struct Base {};
+-
+-template <class B>
+-struct DepBase1 : B {
+-  using B::B [[]];
+-
+-};
+-template <class B>
+-struct DepBase2 : B {
+-  using B::B __attribute__(());
+-};
+-
+-DepBase1<Base> db1;
+-DepBase2<Base> db2;
diff --git a/sys-devel/llvm/files/cherry/fd553312031c7d8085fa6ee0755a957796eadf05.patch b/sys-devel/llvm/files/cherry/fd553312031c7d8085fa6ee0755a957796eadf05.patch
new file mode 100644
index 0000000..25d3aaa
--- /dev/null
+++ b/sys-devel/llvm/files/cherry/fd553312031c7d8085fa6ee0755a957796eadf05.patch
@@ -0,0 +1,38 @@
+commit fd553312031c7d8085fa6ee0755a957796eadf05
+Author: Stefan Pintilie <stefanp@ca.ibm.com>
+Date:   Fri May 28 11:34:02 2021 -0500
+
+    Revert "[NFC] Formatting fix"
+    
+    This reverts commit 59d938e649e62db0cef4903d495e838fbc6a6eb8.
+
+diff --git a/llvm/lib/Transforms/Scalar/LoopDeletion.cpp b/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
+index cd2a3fc48e3b..14eb07ab17e6 100644
+--- a/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
++++ b/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
+@@ -283,17 +283,16 @@ static bool canProveExitOnFirstIteration(Loop *L, DominatorTree &DT,
+     // Can we prove constant true or false for this condition?
+     const SCEV *LHSS = getSCEVOnFirstIteration(LHS, L, SE, FirstIterSCEV);
+     const SCEV *RHSS = getSCEVOnFirstIteration(RHS, L, SE, FirstIterSCEV);
+-    // Only query for liveness of in-loop edge if another successor is also
+-    // in-loop.
+-    // TODO: isKnownPredicateAt is more powerful, but it's too compile time
+-    // consuming. So we avoid using it here.
+-    if (L->contains(Term->getSuccessor(1)) &&
+-        SE.isKnownPredicate(Pred, LHSS, RHSS))
+-      MarkLiveEdge(BB, Term->getSuccessor(0));
++        // Only query for liveness of in-loop edge if another successor is also
++        // in-loop.
++        // TODO: isKnownPredicateAt is more powerful, but it's too compile time
++        // consuming. So we avoid using it here.
++        if (L->contains(Term->getSuccessor(1)) &&
++            SE.isKnownPredicate(Pred, LHSS, RHSS))
++        MarkLiveEdge(BB, Term->getSuccessor(0));
+     else if (L->contains(Term->getSuccessor(0)) &&
+              SE.isKnownPredicate(ICmpInst::getInversePredicate(Pred), LHSS,
+-                                 RHSS))
+-      MarkLiveEdge(BB, Term->getSuccessor(1));
++                                 RHSS)) MarkLiveEdge(BB, Term->getSuccessor(1));
+     else
+       MarkAllSuccessorsLive(BB);
+   }
diff --git a/sys-devel/llvm/files/compiler_wrapper/README b/sys-devel/llvm/files/compiler_wrapper/README
index ee48df6..60da4f3 100644
--- a/sys-devel/llvm/files/compiler_wrapper/README
+++ b/sys-devel/llvm/files/compiler_wrapper/README
@@ -15,4 +15,4 @@
 - modify third_party/toolchain_utils/compiler_wrapper
 - run third_party/toolchain_utils/compiler_wrapper/bundle.py --output_dir=...
 
-Source: https://chromium-review.googlesource.com/q/I29ec205822a75088d2c4c5897508b8dc05419a2e
+Source: https://chromium-review.googlesource.com/q/Icdd2cbe3ced7b8427257c87f9e527b0d0e8da57d
diff --git a/sys-devel/llvm/files/compiler_wrapper/VERSION b/sys-devel/llvm/files/compiler_wrapper/VERSION
index c7eba15..718bf95 100644
--- a/sys-devel/llvm/files/compiler_wrapper/VERSION
+++ b/sys-devel/llvm/files/compiler_wrapper/VERSION
@@ -1 +1 @@
-I29ec205822a75088d2c4c5897508b8dc05419a2e
\ No newline at end of file
+Icdd2cbe3ced7b8427257c87f9e527b0d0e8da57d
\ No newline at end of file
diff --git a/sys-devel/llvm/files/compiler_wrapper/clang_flags.go b/sys-devel/llvm/files/compiler_wrapper/clang_flags.go
index c69d1b3..84149bf 100644
--- a/sys-devel/llvm/files/compiler_wrapper/clang_flags.go
+++ b/sys-devel/llvm/files/compiler_wrapper/clang_flags.go
@@ -63,11 +63,8 @@
 
 	// Clang may use different options for the same or similar functionality.
 	gccToClang := map[string]string{
-		"-Wno-error=cpp":                     "-Wno-#warnings",
-		"-Wno-error=maybe-uninitialized":     "-Wno-error=uninitialized",
-		"-Wno-error=unused-but-set-variable": "-Wno-error=unused-variable",
-		"-Wno-unused-but-set-variable":       "-Wno-unused-variable",
-		"-Wunused-but-set-variable":          "-Wunused-variable",
+		"-Wno-error=cpp":                 "-Wno-#warnings",
+		"-Wno-error=maybe-uninitialized": "-Wno-error=uninitialized",
 	}
 
 	// Note: not using builder.transformArgs as we need to add multiple arguments
diff --git a/sys-devel/llvm/files/compiler_wrapper/command.go b/sys-devel/llvm/files/compiler_wrapper/command.go
index e6ea669..95fce7e 100644
--- a/sys-devel/llvm/files/compiler_wrapper/command.go
+++ b/sys-devel/llvm/files/compiler_wrapper/command.go
@@ -134,7 +134,12 @@
 	if err != nil {
 		return nil, err
 	}
-	rootPath := filepath.Join(filepath.Dir(absWrapperPath), cfg.rootRelPath)
+	var rootPath string
+	if compilerType == gccType {
+		rootPath = filepath.Join(filepath.Dir(absWrapperPath), cfg.gccRootRelPath)
+	} else {
+		rootPath = filepath.Join(filepath.Dir(absWrapperPath), cfg.clangRootRelPath)
+	}
 	return &commandBuilder{
 		path:           cmd.Path,
 		args:           createBuilderArgs( /*fromUser=*/ true, cmd.Args),
@@ -200,8 +205,10 @@
 	}
 }
 
-func (builder *commandBuilder) wrapPath(path string) {
-	builder.args = append([]builderArg{{value: builder.path, fromUser: false}}, builder.args...)
+func (builder *commandBuilder) wrapPath(path string, extraFlags ...string) {
+	newArgs := createBuilderArgs( /*fromUser=*/ false, extraFlags)
+	newArgs = append(newArgs, builderArg{value: builder.path, fromUser: false})
+	builder.args = append(newArgs, builder.args...)
 	builder.path = path
 }
 
diff --git a/sys-devel/llvm/files/compiler_wrapper/compiler_wrapper.go b/sys-devel/llvm/files/compiler_wrapper/compiler_wrapper.go
index 9d7b76e..6d29ff0 100644
--- a/sys-devel/llvm/files/compiler_wrapper/compiler_wrapper.go
+++ b/sys-devel/llvm/files/compiler_wrapper/compiler_wrapper.go
@@ -81,7 +81,7 @@
 	// Disable CCache for rusage logs
 	// Note: Disabling Goma causes timeout related INFRA_FAILUREs in builders
 	allowCCache := !rusageEnabled
-	gomaUsed := false
+	remoteBuildUsed := false
 
 	workAroundKernelBugWithRetries := false
 	if cfg.isAndroidWrapper {
@@ -91,7 +91,9 @@
 			mainBuilder.addPreUserArgs(mainBuilder.cfg.clangFlags...)
 			mainBuilder.addPreUserArgs(mainBuilder.cfg.commonFlags...)
 			mainBuilder.addPostUserArgs(mainBuilder.cfg.clangPostFlags...)
-			if gomaUsed, err = processGomaCccFlags(mainBuilder); err != nil {
+			inheritGomaFromEnv := true
+			// Android doesn't support rewrapper; don't try to use it.
+			if remoteBuildUsed, err = processGomaCccFlags(mainBuilder, inheritGomaFromEnv); err != nil {
 				return 0, err
 			}
 			compilerCmd = mainBuilder.build()
@@ -109,16 +111,16 @@
 			}
 			if tidyMode != tidyModeNone {
 				allowCCache = false
-				clangCmdWithoutGomaAndCCache := mainBuilder.build()
+				clangCmdWithoutRemoteBuildAndCCache := mainBuilder.build()
 				var err error
 				switch tidyMode {
 				case tidyModeTricium:
 					if cfg.triciumNitsDir == "" {
 						return 0, newErrorwithSourceLocf("tricium linting was requested, but no nits directory is configured")
 					}
-					err = runClangTidyForTricium(env, clangCmdWithoutGomaAndCCache, cSrcFile, cfg.triciumNitsDir, tidyFlags, cfg.crashArtifactsDir)
+					err = runClangTidyForTricium(env, clangCmdWithoutRemoteBuildAndCCache, cSrcFile, cfg.triciumNitsDir, tidyFlags, cfg.crashArtifactsDir)
 				case tidyModeAll:
-					err = runClangTidy(env, clangCmdWithoutGomaAndCCache, cSrcFile, tidyFlags)
+					err = runClangTidy(env, clangCmdWithoutRemoteBuildAndCCache, cSrcFile, tidyFlags)
 				default:
 					panic(fmt.Sprintf("Unknown tidy mode: %v", tidyMode))
 				}
@@ -127,7 +129,7 @@
 					return 0, err
 				}
 			}
-			if gomaUsed, err = processGomaCCacheFlags(allowCCache, mainBuilder); err != nil {
+			if remoteBuildUsed, err = processRemoteBuildAndCCacheFlags(allowCCache, mainBuilder); err != nil {
 				return 0, err
 			}
 			compilerCmd = mainBuilder.build()
@@ -144,7 +146,7 @@
 				}
 				return checkClangSyntax(env, clangCmd, gccCmd)
 			}
-			gomaUsed, compilerCmd, err = calcGccCommand(rusageEnabled, mainBuilder)
+			remoteBuildUsed, compilerCmd, err = calcGccCommand(rusageEnabled, mainBuilder)
 			if err != nil {
 				return 0, err
 			}
@@ -245,7 +247,7 @@
 		case err != nil:
 			return exitCode, err
 		default:
-			if !gomaUsed {
+			if !remoteBuildUsed {
 				if err := commitRusage(exitCode); err != nil {
 					return exitCode, fmt.Errorf("commiting rusage: %v", err)
 				}
@@ -273,11 +275,11 @@
 	if err != nil {
 		return false, nil, err
 	}
-	gomaUsed, err := processGomaCCacheFlags(allowCCache, builder)
+	remoteBuildUsed, err := processRemoteBuildAndCCacheFlags(allowCCache, builder)
 	if err != nil {
-		return gomaUsed, nil, err
+		return remoteBuildUsed, nil, err
 	}
-	return gomaUsed, builder.build(), nil
+	return remoteBuildUsed, builder.build(), nil
 }
 
 func calcGccCommand(enableRusage bool, builder *commandBuilder) (bool, *command, error) {
@@ -288,19 +290,20 @@
 	calcCommonPreUserArgs(builder)
 	processGccFlags(builder)
 
-	gomaUsed := false
+	remoteBuildUsed := false
 	if !builder.cfg.isHostWrapper {
 		var err error
-		if gomaUsed, err = processGomaCCacheFlags(!enableRusage, builder); err != nil {
-			return gomaUsed, nil, err
+		if remoteBuildUsed, err = processRemoteBuildAndCCacheFlags(!enableRusage, builder); err != nil {
+			return remoteBuildUsed, nil, err
 		}
 	}
-	return gomaUsed, builder.build(), nil
+	return remoteBuildUsed, builder.build(), nil
 }
 
 func calcCommonPreUserArgs(builder *commandBuilder) {
 	builder.addPreUserArgs(builder.cfg.commonFlags...)
 	if !builder.cfg.isHostWrapper {
+		processLibGCCFlags(builder)
 		processPieFlags(builder)
 		processThumbCodeFlags(builder)
 		processStackProtectorFlags(builder)
@@ -309,19 +312,18 @@
 	processSanitizerFlags(builder)
 }
 
-func processGomaCCacheFlags(allowCCache bool, builder *commandBuilder) (gomaccUsed bool, err error) {
-
-	gomaccUsed = false
+func processRemoteBuildAndCCacheFlags(allowCCache bool, builder *commandBuilder) (remoteBuildUsed bool, err error) {
+	remoteBuildUsed = false
 	if !builder.cfg.isHostWrapper {
-		gomaccUsed, err = processGomaCccFlags(builder)
+		remoteBuildUsed, err = processRemoteBuildFlags(builder)
 		if err != nil {
-			return gomaccUsed, err
+			return remoteBuildUsed, err
 		}
 	}
-	if !gomaccUsed && allowCCache {
+	if !remoteBuildUsed && allowCCache {
 		processCCacheFlag(builder)
 	}
-	return gomaccUsed, nil
+	return remoteBuildUsed, nil
 }
 
 func getAbsWrapperPath(env env, wrapperCmd *command) (string, error) {
diff --git a/sys-devel/llvm/files/compiler_wrapper/config.go b/sys-devel/llvm/files/compiler_wrapper/config.go
index cd2eb1d..11d77ba 100644
--- a/sys-devel/llvm/files/compiler_wrapper/config.go
+++ b/sys-devel/llvm/files/compiler_wrapper/config.go
@@ -26,7 +26,8 @@
 	// by the user).
 	clangPostFlags []string
 	// Toolchain root path relative to the wrapper binary.
-	rootRelPath string
+	clangRootRelPath string
+	gccRootRelPath   string
 	// Directory to store errors that were prevented with -Wno-error.
 	newWarningsDir string
 	// Directory to store nits in when using `WITH_TIDY=tricium`.
@@ -105,7 +106,8 @@
 // Full hardening.
 // Temporarily disable function splitting because of chromium:434751.
 var crosHardenedConfig = &config{
-	rootRelPath: "../../../../..",
+	clangRootRelPath: "../..",
+	gccRootRelPath:   "../../../../..",
 	// Pass "-fcommon" till the packages are fixed to work with new clang/gcc
 	// default of "-fno-common", crbug.com/1060413.
 	commonFlags: []string{
@@ -127,6 +129,8 @@
 	// Disable "-faddrsig" since it produces object files that strip doesn't understand, chromium:915742.
 	// crbug.com/1103065: -grecord-gcc-switches pollutes the Goma cache;
 	//   removed that flag for now.
+	// Temporarily disable Wdeprecated-declarations. b/193860318
+
 	clangFlags: []string{
 		"-Qunused-arguments",
 		"-fno-addrsig",
@@ -135,18 +139,21 @@
 		"-Wno-tautological-unsigned-enum-zero-compare",
 		"-Wno-unknown-warning-option",
 		"-Wno-section",
-		"-static-libgcc",
 		"-fuse-ld=lld",
 		"--unwindlib=libgcc",
 		"-Wno-final-dtor-non-final-class",
 		"-Werror=poison-system-directories",
 		"-fexperimental-new-pass-manager",
 		"-Wno-compound-token-split-by-macro",
+		"-Wno-deprecated-declarations",
 	},
+
+	// Temporarily disable Wdeprecated-copy. b/191479033
 	clangPostFlags: []string{
 		"-Wno-implicit-int-float-conversion",
 		"-Wno-compound-token-split-by-space",
 		"-Wno-string-concatenation",
+		"-Wno-deprecated-copy",
 	},
 	newWarningsDir:    "/tmp/fatal_clang_warnings",
 	triciumNitsDir:    "/tmp/linting_output/clang-tidy",
@@ -155,8 +162,9 @@
 
 // Flags to be added to non-hardened toolchain.
 var crosNonHardenedConfig = &config{
-	rootRelPath: "../../../../..",
-	commonFlags: []string{},
+	clangRootRelPath: "../..",
+	gccRootRelPath:   "../../../../..",
+	commonFlags:      []string{},
 	gccFlags: []string{
 		"-Wno-maybe-uninitialized",
 		"-Wno-unused-local-typedefs",
@@ -166,6 +174,7 @@
 	// Temporarily disable tautological-*-compare chromium:778316.
 	// Temporarily add no-unknown-warning-option to deal with old clang versions.
 	// Temporarily disable Wsection since kernel gets a bunch of these. chromium:778867
+	// Temporarily disable Wdeprecated-declarations. b/193860318
 	clangFlags: []string{
 		"-Qunused-arguments",
 		"-fdebug-default-version=5",
@@ -173,16 +182,19 @@
 		"-Wno-tautological-unsigned-enum-zero-compare",
 		"-Wno-unknown-warning-option",
 		"-Wno-section",
-		"-static-libgcc",
 		"-Wno-final-dtor-non-final-class",
 		"-Werror=poison-system-directories",
 		"-fexperimental-new-pass-manager",
 		"-Wno-compound-token-split-by-macro",
+		"-Wno-deprecated-declarations",
 	},
+
+	// Temporarily disable Wdeprecated-copy. b/191479033
 	clangPostFlags: []string{
 		"-Wno-implicit-int-float-conversion",
 		"-Wno-compound-token-split-by-space",
 		"-Wno-string-concatenation",
+		"-Wno-deprecated-copy",
 	},
 	newWarningsDir:    "/tmp/fatal_clang_warnings",
 	triciumNitsDir:    "/tmp/linting_output/clang-tidy",
@@ -191,8 +203,9 @@
 
 // Flags to be added to host toolchain.
 var crosHostConfig = &config{
-	isHostWrapper: true,
-	rootRelPath:   "../..",
+	isHostWrapper:    true,
+	clangRootRelPath: "../..",
+	gccRootRelPath:   "../..",
 	// Pass "-fcommon" till the packages are fixed to work with new clang/gcc
 	// default of "-fno-common", crbug.com/1060413.
 	commonFlags: []string{
@@ -207,13 +220,13 @@
 	// Temporarily add no-unknown-warning-option to deal with old clang versions.
 	// crbug.com/1103065: -grecord-gcc-switches pollutes the Goma cache;
 	//   removed that flag for now.
+	// Temporarily disable Wdeprecated-declarations. b/193860318
 	clangFlags: []string{
 		"-Qunused-arguments",
 		"-fno-addrsig",
 		"-fuse-ld=lld",
 		"-fdebug-default-version=5",
 		"-Wno-unused-local-typedefs",
-		"-Wno-deprecated-declarations",
 		"-Wno-tautological-constant-compare",
 		"-Wno-tautological-unsigned-enum-zero-compare",
 		"-Wno-final-dtor-non-final-class",
@@ -221,11 +234,15 @@
 		"-Wno-unknown-warning-option",
 		"-fexperimental-new-pass-manager",
 		"-Wno-compound-token-split-by-macro",
+		"-Wno-deprecated-declarations",
 	},
+
+	// Temporarily disable Wdeprecated-copy. b/191479033
 	clangPostFlags: []string{
 		"-Wno-implicit-int-float-conversion",
 		"-Wno-compound-token-split-by-space",
 		"-Wno-string-concatenation",
+		"-Wno-deprecated-copy",
 	},
 	newWarningsDir:    "/tmp/fatal_clang_warnings",
 	triciumNitsDir:    "/tmp/linting_output/clang-tidy",
@@ -235,7 +252,8 @@
 var androidConfig = &config{
 	isHostWrapper:     false,
 	isAndroidWrapper:  true,
-	rootRelPath:       "./",
+	gccRootRelPath:    "./",
+	clangRootRelPath:  "./",
 	commonFlags:       []string{},
 	gccFlags:          []string{},
 	clangFlags:        []string{},
diff --git a/sys-devel/llvm/files/compiler_wrapper/cros_llvm_next_flags.go b/sys-devel/llvm/files/compiler_wrapper/cros_llvm_next_flags.go
index 0c8dc67..2211ae1 100644
--- a/sys-devel/llvm/files/compiler_wrapper/cros_llvm_next_flags.go
+++ b/sys-devel/llvm/files/compiler_wrapper/cros_llvm_next_flags.go
@@ -2,6 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
+//go:build !android_llvm_next_flags
 // +build !android_llvm_next_flags
 
 package main
@@ -13,8 +14,8 @@
 // tag is set.
 
 // TODO: Enable test in config_test.go, once we have new llvm-next flags.
-var llvmNextFlags = []string{
-	"-Wl,-z,nostart-stop-gc",
-}
+var llvmNextFlags = []string{}
 
-var llvmNextPostFlags = []string{}
+var llvmNextPostFlags = []string{
+	"-Wno-unused-but-set-variable",
+}
diff --git a/sys-devel/llvm/files/compiler_wrapper/disable_werror_flag.go b/sys-devel/llvm/files/compiler_wrapper/disable_werror_flag.go
index 5c21b1a..cb770b7 100644
--- a/sys-devel/llvm/files/compiler_wrapper/disable_werror_flag.go
+++ b/sys-devel/llvm/files/compiler_wrapper/disable_werror_flag.go
@@ -14,7 +14,6 @@
 	"path"
 	"strconv"
 	"strings"
-	"syscall"
 )
 
 const numWErrorEstimate = 30
@@ -176,8 +175,8 @@
 
 	// Buildbots use a nonzero umask, which isn't quite what we want: these directories should
 	// be world-readable and world-writable.
-	oldMask := syscall.Umask(0)
-	defer syscall.Umask(oldMask)
+	oldMask := env.umask(0)
+	defer env.umask(oldMask)
 
 	// Allow root and regular users to write to this without issue.
 	if err := os.MkdirAll(cfg.newWarningsDir, 0777); err != nil {
diff --git a/sys-devel/llvm/files/compiler_wrapper/env.go b/sys-devel/llvm/files/compiler_wrapper/env.go
index 2c48ad3..3fc547c 100644
--- a/sys-devel/llvm/files/compiler_wrapper/env.go
+++ b/sys-devel/llvm/files/compiler_wrapper/env.go
@@ -10,9 +10,11 @@
 	"io"
 	"os"
 	"strings"
+	"syscall"
 )
 
 type env interface {
+	umask(int) int
 	getenv(key string) (string, bool)
 	environ() []string
 	getwd() string
@@ -52,6 +54,10 @@
 
 var _ env = (*processEnv)(nil)
 
+func (env *processEnv) umask(newmask int) (oldmask int) {
+	return syscall.Umask(newmask)
+}
+
 func (env *processEnv) getenv(key string) (string, bool) {
 	return os.LookupEnv(key)
 }
diff --git a/sys-devel/llvm/files/compiler_wrapper/gomacc_flag.go b/sys-devel/llvm/files/compiler_wrapper/gomacc_flag.go
deleted file mode 100644
index ac298b1..0000000
--- a/sys-devel/llvm/files/compiler_wrapper/gomacc_flag.go
+++ /dev/null
@@ -1,41 +0,0 @@
-// Copyright 2019 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.
-
-package main
-
-import (
-	"os"
-)
-
-func processGomaCccFlags(builder *commandBuilder) (gomaUsed bool, err error) {
-	gomaPath := ""
-	nextArgIsGomaPath := false
-	builder.transformArgs(func(arg builderArg) string {
-		if arg.fromUser {
-			if arg.value == "--gomacc-path" {
-				nextArgIsGomaPath = true
-				return ""
-			}
-			if nextArgIsGomaPath {
-				gomaPath = arg.value
-				nextArgIsGomaPath = false
-				return ""
-			}
-		}
-		return arg.value
-	})
-	if nextArgIsGomaPath {
-		return false, newUserErrorf("--gomacc-path given without value")
-	}
-	if gomaPath == "" {
-		gomaPath, _ = builder.env.getenv("GOMACC_PATH")
-	}
-	if gomaPath != "" {
-		if _, err := os.Lstat(gomaPath); err == nil {
-			builder.wrapPath(gomaPath)
-			return true, nil
-		}
-	}
-	return false, nil
-}
diff --git a/sys-devel/llvm/files/compiler_wrapper/libgcc_flags.go b/sys-devel/llvm/files/compiler_wrapper/libgcc_flags.go
new file mode 100644
index 0000000..d3a5f50
--- /dev/null
+++ b/sys-devel/llvm/files/compiler_wrapper/libgcc_flags.go
@@ -0,0 +1,25 @@
+// Copyright 2019 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.
+
+package main
+
+import (
+	"strings"
+)
+
+// Add "-static-libgcc" flag to compiler command line unless
+// already specified by user or user has passed "-shared-libgcc".
+func processLibGCCFlags(builder *commandBuilder) {
+	fromUser := false
+	for _, arg := range builder.args {
+		if arg.fromUser && (strings.HasPrefix(arg.value, "-shared-libgcc") ||
+			strings.HasPrefix(arg.value, "-static-libgcc")) {
+			fromUser = true
+			break
+		}
+	}
+	if !fromUser {
+		builder.addPreUserArgs("-static-libgcc")
+	}
+}
diff --git a/sys-devel/llvm/files/compiler_wrapper/remote_build_flags.go b/sys-devel/llvm/files/compiler_wrapper/remote_build_flags.go
new file mode 100644
index 0000000..fc26c93
--- /dev/null
+++ b/sys-devel/llvm/files/compiler_wrapper/remote_build_flags.go
@@ -0,0 +1,160 @@
+// Copyright 2019 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.
+
+package main
+
+import (
+	"errors"
+	"fmt"
+	"os"
+	"strings"
+)
+
+var errNoSuchCmdlineArg = errors.New("no such commandline argument")
+
+// Removes one flag from `builder`, assuming that a value follows the flag. Two formats are
+// supported for this: `--foo=bar` and `--foo bar`. In either case, "bar" will be returned as the
+// `value`.
+//
+// If no flag is found on the commandline, this returns the `errNoSuchCmdlineArg` error. `builder`
+// is unmodified if this error is returned, but its contents are unspecified if any other error is
+// returned.
+//
+// In the case of multiple such flags, only the first encountered will be removed.
+func removeOneUserCmdlineFlagWithValue(builder *commandBuilder, flagName string) (flagValue string, err error) {
+	const (
+		searchingForFlag uint8 = iota
+		searchingForValue
+		searchComplete
+	)
+
+	flagRequiresAValue := func() error { return newUserErrorf("flag %q requires a value", flagName) }
+	searchState := searchingForFlag
+	builder.transformArgs(func(arg builderArg) string {
+		if err != nil {
+			return arg.value
+		}
+
+		switch searchState {
+		case searchingForFlag:
+			if !arg.fromUser {
+				return arg.value
+			}
+
+			if arg.value == flagName {
+				searchState = searchingForValue
+				return ""
+			}
+
+			isArgEq := strings.HasPrefix(arg.value, flagName) && arg.value[len(flagName)] == '='
+			if !isArgEq {
+				return arg.value
+			}
+
+			flagValue = arg.value[len(flagName)+1:]
+			searchState = searchComplete
+			return ""
+
+		case searchingForValue:
+			if !arg.fromUser {
+				err = flagRequiresAValue()
+				return arg.value
+			}
+
+			flagValue = arg.value
+			searchState = searchComplete
+			return ""
+
+		case searchComplete:
+			return arg.value
+
+		default:
+			panic(fmt.Sprintf("unknown search state: %v", searchState))
+		}
+	})
+
+	if err != nil {
+		return "", err
+	}
+
+	switch searchState {
+	case searchingForFlag:
+		return "", errNoSuchCmdlineArg
+
+	case searchingForValue:
+		return "", flagRequiresAValue()
+
+	case searchComplete:
+		return flagValue, nil
+
+	default:
+		panic(fmt.Sprintf("unknown search state: %v", searchState))
+	}
+}
+
+func processGomaCccFlags(builder *commandBuilder, inheritFromEnv bool) (gomaUsed bool, err error) {
+	gomaPath, err := removeOneUserCmdlineFlagWithValue(builder, "--gomacc-path")
+	if err != nil && err != errNoSuchCmdlineArg {
+		return false, err
+	}
+
+	if inheritFromEnv && (err == errNoSuchCmdlineArg || gomaPath == "") {
+		gomaPath, _ = builder.env.getenv("GOMACC_PATH")
+	}
+
+	if gomaPath != "" {
+		if _, err := os.Lstat(gomaPath); err == nil {
+			builder.wrapPath(gomaPath)
+			return true, nil
+		}
+	}
+	return false, nil
+}
+
+func processRewrapperCcFlags(builder *commandBuilder) (rewrapperUsed bool, err error) {
+	rewrapperPath, pathErr := removeOneUserCmdlineFlagWithValue(builder, "--rewrapper-path")
+	if pathErr != nil && pathErr != errNoSuchCmdlineArg {
+		return false, err
+	}
+
+	rewrapperCfg, cfgErr := removeOneUserCmdlineFlagWithValue(builder, "--rewrapper-cfg")
+	if cfgErr != nil && cfgErr != errNoSuchCmdlineArg {
+		return false, err
+	}
+
+	if pathErr == errNoSuchCmdlineArg {
+		if cfgErr != errNoSuchCmdlineArg {
+			return false, newUserErrorf("--rewrapper-path must be specified if --rewrapper-cfg is")
+		}
+		return false, nil
+	}
+
+	if cfgErr == errNoSuchCmdlineArg {
+		return false, newUserErrorf("--rewrapper-cfg must be specified if --rewrapper-path is")
+	}
+
+	// It's unclear that we should have a similar fallback to gomacc if --rewrapper-path doesn't
+	// exist, so don't until it's obviously necessary.
+	builder.wrapPath(rewrapperPath, "-cfg", rewrapperCfg)
+	return true, nil
+}
+
+func processRemoteBuildFlags(builder *commandBuilder) (remoteBuildUsed bool, err error) {
+	rewrapperUsed, err := processRewrapperCcFlags(builder)
+	if err != nil {
+		return rewrapperUsed, err
+	}
+
+	inheritGomaFromEnv := !rewrapperUsed
+	gomaUsed, err := processGomaCccFlags(builder, inheritGomaFromEnv)
+	remoteBuildUsed = gomaUsed || rewrapperUsed
+	if err != nil {
+		return remoteBuildUsed, err
+	}
+
+	if gomaUsed && rewrapperUsed {
+		return true, newUserErrorf("rewrapper and gomacc are mutually exclusive")
+	}
+	return remoteBuildUsed, nil
+}
diff --git a/sys-devel/llvm/files/compiler_wrapper/rusage_flag.go b/sys-devel/llvm/files/compiler_wrapper/rusage_flag.go
index 4aa40b4..6346960 100644
--- a/sys-devel/llvm/files/compiler_wrapper/rusage_flag.go
+++ b/sys-devel/llvm/files/compiler_wrapper/rusage_flag.go
@@ -101,8 +101,8 @@
 
 		// We need to temporarily set umask to 0 to ensure 777 permissions are actually 777
 		// This effects builderbots in particular
-		oldMask := syscall.Umask(0)
-		defer syscall.Umask(oldMask)
+		oldMask := env.umask(0)
+		defer env.umask(oldMask)
 
 		// We want to know what package is being compiled. The working directory gives us a good clue.
 		cwd, err := os.Getwd()
diff --git a/sys-devel/llvm/files/compiler_wrapper/sysroot_flag.go b/sys-devel/llvm/files/compiler_wrapper/sysroot_flag.go
index 501fb20..e0583b2 100644
--- a/sys-devel/llvm/files/compiler_wrapper/sysroot_flag.go
+++ b/sys-devel/llvm/files/compiler_wrapper/sysroot_flag.go
@@ -11,9 +11,14 @@
 
 func processSysrootFlag(builder *commandBuilder) {
 	fromUser := false
+	userSysroot := ""
 	for _, arg := range builder.args {
 		if arg.fromUser && strings.HasPrefix(arg.value, "--sysroot=") {
 			fromUser = true
+			sysrootArg := strings.Split(arg.value, "=")
+			if len(sysrootArg) == 2 {
+				userSysroot = sysrootArg[1]
+			}
 			break
 		}
 	}
@@ -27,5 +32,13 @@
 	}
 	if !fromUser {
 		builder.addPreUserArgs("--sysroot=" + sysroot)
+	} else {
+		sysroot = userSysroot
 	}
+
+	libdir := "-L" + sysroot + "/usr/lib"
+	if strings.Contains(builder.target.target, "64") {
+		libdir += "64"
+	}
+	builder.addPostUserArgs(libdir)
 }
diff --git a/sys-devel/llvm/files/revert-f5446b769a7929806f72256fccd4826d66502e59.patch b/sys-devel/llvm/files/revert-f5446b769a7929806f72256fccd4826d66502e59.patch
new file mode 100644
index 0000000..e89a858
--- /dev/null
+++ b/sys-devel/llvm/files/revert-f5446b769a7929806f72256fccd4826d66502e59.patch
@@ -0,0 +1,426 @@
+commit dac18474ad4a27ba9285b6ae46f7b4b3def8b433
+Author: Luis Lozano <llozano@google.com>
+Date:   Mon Aug 2 00:51:50 2021 -0700
+
+    Revert "[MemCpyOpt] Allow variable lengths in memcpy optimizer"
+    
+    This reverts commit f5446b769a7929806f72256fccd4826d66502e59.
+    
+    This was bisected to be the cause of a build failure for sqlite.
+    
+    BUG=b:194845770
+    TEST=CQ, chromiumos-sdk-next
+
+diff --git a/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp b/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
+index 6cf317a1c47f..9d24afea148e 100644
+--- a/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
++++ b/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
+@@ -1057,12 +1057,10 @@ bool MemCpyOptPass::processMemCpyMemCpyDependence(MemCpyInst *M,
+ 
+   // Second, the length of the memcpy's must be the same, or the preceding one
+   // must be larger than the following one.
+-  if (MDep->getLength() != M->getLength()) {
+-    ConstantInt *MDepLen = dyn_cast<ConstantInt>(MDep->getLength());
+-    ConstantInt *MLen = dyn_cast<ConstantInt>(M->getLength());
+-    if (!MDepLen || !MLen || MDepLen->getZExtValue() < MLen->getZExtValue())
+-      return false;
+-  }
++  ConstantInt *MDepLen = dyn_cast<ConstantInt>(MDep->getLength());
++  ConstantInt *MLen = dyn_cast<ConstantInt>(M->getLength());
++  if (!MDepLen || !MLen || MDepLen->getZExtValue() < MLen->getZExtValue())
++    return false;
+ 
+   // Verify that the copied-from memory doesn't change in between the two
+   // transfers.  For example, in:
+@@ -1238,23 +1236,21 @@ bool MemCpyOptPass::processMemSetMemCpyDependence(MemCpyInst *MemCpy,
+ 
+ /// Determine whether the instruction has undefined content for the given Size,
+ /// either because it was freshly alloca'd or started its lifetime.
+-static bool hasUndefContents(Instruction *I, Value *Size) {
++static bool hasUndefContents(Instruction *I, ConstantInt *Size) {
+   if (isa<AllocaInst>(I))
+     return true;
+ 
+-  if (ConstantInt *CSize = dyn_cast<ConstantInt>(Size)) {
+-    if (IntrinsicInst *II = dyn_cast<IntrinsicInst>(I))
+-      if (II->getIntrinsicID() == Intrinsic::lifetime_start)
+-        if (ConstantInt *LTSize = dyn_cast<ConstantInt>(II->getArgOperand(0)))
+-          if (LTSize->getZExtValue() >= CSize->getZExtValue())
+-            return true;
+-  }
++  if (IntrinsicInst *II = dyn_cast<IntrinsicInst>(I))
++    if (II->getIntrinsicID() == Intrinsic::lifetime_start)
++      if (ConstantInt *LTSize = dyn_cast<ConstantInt>(II->getArgOperand(0)))
++        if (LTSize->getZExtValue() >= Size->getZExtValue())
++          return true;
+ 
+   return false;
+ }
+ 
+ static bool hasUndefContentsMSSA(MemorySSA *MSSA, AliasAnalysis *AA, Value *V,
+-                                 MemoryDef *Def, Value *Size) {
++                                 MemoryDef *Def, ConstantInt *Size) {
+   if (MSSA->isLiveOnEntryDef(Def))
+     return isa<AllocaInst>(getUnderlyingObject(V));
+ 
+@@ -1262,17 +1258,14 @@ static bool hasUndefContentsMSSA(MemorySSA *MSSA, AliasAnalysis *AA, Value *V,
+           dyn_cast_or_null<IntrinsicInst>(Def->getMemoryInst())) {
+     if (II->getIntrinsicID() == Intrinsic::lifetime_start) {
+       ConstantInt *LTSize = cast<ConstantInt>(II->getArgOperand(0));
++      if (AA->isMustAlias(V, II->getArgOperand(1)) &&
++          LTSize->getZExtValue() >= Size->getZExtValue())
++        return true;
+ 
+-      if (ConstantInt *CSize = dyn_cast<ConstantInt>(Size)) {
+-        if (AA->isMustAlias(V, II->getArgOperand(1)) &&
+-            LTSize->getZExtValue() >= CSize->getZExtValue())
+-          return true;
+-      }
+-
+-      // If the lifetime.start covers a whole alloca (as it almost always
+-      // does) and we're querying a pointer based on that alloca, then we know
+-      // the memory is definitely undef, regardless of how exactly we alias.
+-      // The size also doesn't matter, as an out-of-bounds access would be UB.
++      // If the lifetime.start covers a whole alloca (as it almost always does)
++      // and we're querying a pointer based on that alloca, then we know the
++      // memory is definitely undef, regardless of how exactly we alias. The
++      // size also doesn't matter, as an out-of-bounds access would be UB.
+       AllocaInst *Alloca = dyn_cast<AllocaInst>(getUnderlyingObject(V));
+       if (getUnderlyingObject(II->getArgOperand(1)) == Alloca) {
+         DataLayout DL = Alloca->getModule()->getDataLayout();
+@@ -1298,6 +1291,8 @@ static bool hasUndefContentsMSSA(MemorySSA *MSSA, AliasAnalysis *AA, Value *V,
+ ///   memset(dst2, c, dst2_size);
+ /// \endcode
+ /// When dst2_size <= dst1_size.
++///
++/// The \p MemCpy must have a Constant length.
+ bool MemCpyOptPass::performMemCpyToMemSetOptzn(MemCpyInst *MemCpy,
+                                                MemSetInst *MemSet) {
+   // Make sure that memcpy(..., memset(...), ...), that is we are memsetting and
+@@ -1305,47 +1300,38 @@ bool MemCpyOptPass::performMemCpyToMemSetOptzn(MemCpyInst *MemCpy,
+   if (!AA->isMustAlias(MemSet->getRawDest(), MemCpy->getRawSource()))
+     return false;
+ 
+-  Value *MemSetSize = MemSet->getLength();
+-  Value *CopySize = MemCpy->getLength();
+-
+-  if (MemSetSize != CopySize) {
+-    // Make sure the memcpy doesn't read any more than what the memset wrote.
+-    // Don't worry about sizes larger than i64.
+-
+-    // A known memset size is required.
+-    ConstantInt *CMemSetSize = dyn_cast<ConstantInt>(MemSetSize);
+-    if (!CMemSetSize)
+-      return false;
++  // A known memset size is required.
++  ConstantInt *MemSetSize = dyn_cast<ConstantInt>(MemSet->getLength());
++  if (!MemSetSize)
++    return false;
+ 
+-    // A known memcpy size is also required.
+-    ConstantInt *CCopySize = dyn_cast<ConstantInt>(CopySize);
+-    if (!CCopySize)
+-      return false;
+-    if (CCopySize->getZExtValue() > CMemSetSize->getZExtValue()) {
+-      // If the memcpy is larger than the memset, but the memory was undef prior
+-      // to the memset, we can just ignore the tail. Technically we're only
+-      // interested in the bytes from MemSetSize..CopySize here, but as we can't
+-      // easily represent this location, we use the full 0..CopySize range.
+-      MemoryLocation MemCpyLoc = MemoryLocation::getForSource(MemCpy);
+-      bool CanReduceSize = false;
+-      if (EnableMemorySSA) {
+-        MemoryUseOrDef *MemSetAccess = MSSA->getMemoryAccess(MemSet);
+-        MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess(
+-            MemSetAccess->getDefiningAccess(), MemCpyLoc);
+-        if (auto *MD = dyn_cast<MemoryDef>(Clobber))
+-          if (hasUndefContentsMSSA(MSSA, AA, MemCpy->getSource(), MD, CopySize))
+-            CanReduceSize = true;
+-      } else {
+-        MemDepResult DepInfo = MD->getPointerDependencyFrom(
+-            MemCpyLoc, true, MemSet->getIterator(), MemSet->getParent());
+-        if (DepInfo.isDef() && hasUndefContents(DepInfo.getInst(), CopySize))
++  // Make sure the memcpy doesn't read any more than what the memset wrote.
++  // Don't worry about sizes larger than i64.
++  ConstantInt *CopySize = cast<ConstantInt>(MemCpy->getLength());
++  if (CopySize->getZExtValue() > MemSetSize->getZExtValue()) {
++    // If the memcpy is larger than the memset, but the memory was undef prior
++    // to the memset, we can just ignore the tail. Technically we're only
++    // interested in the bytes from MemSetSize..CopySize here, but as we can't
++    // easily represent this location, we use the full 0..CopySize range.
++    MemoryLocation MemCpyLoc = MemoryLocation::getForSource(MemCpy);
++    bool CanReduceSize = false;
++    if (EnableMemorySSA) {
++      MemoryUseOrDef *MemSetAccess = MSSA->getMemoryAccess(MemSet);
++      MemoryAccess *Clobber = MSSA->getWalker()->getClobberingMemoryAccess(
++          MemSetAccess->getDefiningAccess(), MemCpyLoc);
++      if (auto *MD = dyn_cast<MemoryDef>(Clobber))
++        if (hasUndefContentsMSSA(MSSA, AA, MemCpy->getSource(), MD, CopySize))
+           CanReduceSize = true;
+-      }
+-
+-      if (!CanReduceSize)
+-        return false;
+-      CopySize = MemSetSize;
++    } else {
++      MemDepResult DepInfo = MD->getPointerDependencyFrom(
++          MemCpyLoc, true, MemSet->getIterator(), MemSet->getParent());
++      if (DepInfo.isDef() && hasUndefContents(DepInfo.getInst(), CopySize))
++        CanReduceSize = true;
+     }
++
++    if (!CanReduceSize)
++      return false;
++    CopySize = MemSetSize;
+   }
+ 
+   IRBuilder<> Builder(MemCpy);
+@@ -1417,6 +1403,10 @@ bool MemCpyOptPass::processMemCpy(MemCpyInst *M, BasicBlock::iterator &BBI) {
+           if (processMemSetMemCpyDependence(M, MDep))
+             return true;
+ 
++    // The optimizations after this point require the memcpy size.
++    ConstantInt *CopySize = dyn_cast<ConstantInt>(M->getLength());
++    if (!CopySize) return false;
++
+     MemoryAccess *SrcClobber = MSSA->getWalker()->getClobberingMemoryAccess(
+         AnyClobber, MemoryLocation::getForSource(M));
+ 
+@@ -1429,29 +1419,26 @@ bool MemCpyOptPass::processMemCpy(MemCpyInst *M, BasicBlock::iterator &BBI) {
+     //   d) memcpy from a just-memset'd source can be turned into memset.
+     if (auto *MD = dyn_cast<MemoryDef>(SrcClobber)) {
+       if (Instruction *MI = MD->getMemoryInst()) {
+-        if (ConstantInt *CopySize = dyn_cast<ConstantInt>(M->getLength())) {
+-          if (auto *C = dyn_cast<CallInst>(MI)) {
+-            // The memcpy must post-dom the call. Limit to the same block for
+-            // now. Additionally, we need to ensure that there are no accesses
+-            // to dest between the call and the memcpy. Accesses to src will be
+-            // checked by performCallSlotOptzn().
+-            // TODO: Support non-local call-slot optimization?
+-            if (C->getParent() == M->getParent() &&
+-                !accessedBetween(*AA, DestLoc, MD, MA)) {
+-              // FIXME: Can we pass in either of dest/src alignment here instead
+-              // of conservatively taking the minimum?
+-              Align Alignment = std::min(M->getDestAlign().valueOrOne(),
+-                                         M->getSourceAlign().valueOrOne());
+-              if (performCallSlotOptzn(M, M, M->getDest(), M->getSource(),
+-                                       CopySize->getZExtValue(), Alignment,
+-                                       C)) {
+-                LLVM_DEBUG(dbgs() << "Performed call slot optimization:\n"
+-                                  << "    call: " << *C << "\n"
+-                                  << "    memcpy: " << *M << "\n");
+-                eraseInstruction(M);
+-                ++NumMemCpyInstr;
+-                return true;
+-              }
++        if (auto *C = dyn_cast<CallInst>(MI)) {
++          // The memcpy must post-dom the call. Limit to the same block for now.
++          // Additionally, we need to ensure that there are no accesses to dest
++          // between the call and the memcpy. Accesses to src will be checked
++          // by performCallSlotOptzn().
++          // TODO: Support non-local call-slot optimization?
++          if (C->getParent() == M->getParent() &&
++              !accessedBetween(*AA, DestLoc, MD, MA)) {
++            // FIXME: Can we pass in either of dest/src alignment here instead
++            // of conservatively taking the minimum?
++            Align Alignment = std::min(M->getDestAlign().valueOrOne(),
++                                       M->getSourceAlign().valueOrOne());
++            if (performCallSlotOptzn(M, M, M->getDest(), M->getSource(),
++                                     CopySize->getZExtValue(), Alignment, C)) {
++              LLVM_DEBUG(dbgs() << "Performed call slot optimization:\n"
++                                << "    call: " << *C << "\n"
++                                << "    memcpy: " << *M << "\n");
++              eraseInstruction(M);
++              ++NumMemCpyInstr;
++              return true;
+             }
+           }
+         }
+@@ -1467,7 +1454,7 @@ bool MemCpyOptPass::processMemCpy(MemCpyInst *M, BasicBlock::iterator &BBI) {
+         }
+       }
+ 
+-      if (hasUndefContentsMSSA(MSSA, AA, M->getSource(), MD, M->getLength())) {
++      if (hasUndefContentsMSSA(MSSA, AA, M->getSource(), MD, CopySize)) {
+         LLVM_DEBUG(dbgs() << "Removed memcpy from undef\n");
+         eraseInstruction(M);
+         ++NumMemCpyInstr;
+@@ -1484,6 +1471,10 @@ bool MemCpyOptPass::processMemCpy(MemCpyInst *M, BasicBlock::iterator &BBI) {
+         if (processMemSetMemCpyDependence(M, MDep))
+           return true;
+ 
++    // The optimizations after this point require the memcpy size.
++    ConstantInt *CopySize = dyn_cast<ConstantInt>(M->getLength());
++    if (!CopySize) return false;
++
+     // There are four possible optimizations we can do for memcpy:
+     //   a) memcpy-memcpy xform which exposes redundance for DSE.
+     //   b) call-memcpy xform for return slot optimization.
+@@ -1491,19 +1482,17 @@ bool MemCpyOptPass::processMemCpy(MemCpyInst *M, BasicBlock::iterator &BBI) {
+     //      its lifetime copies undefined data, and we can therefore eliminate
+     //      the memcpy in favor of the data that was already at the destination.
+     //   d) memcpy from a just-memset'd source can be turned into memset.
+-    if (ConstantInt *CopySize = dyn_cast<ConstantInt>(M->getLength())) {
+-      if (DepInfo.isClobber()) {
+-        if (CallInst *C = dyn_cast<CallInst>(DepInfo.getInst())) {
+-          // FIXME: Can we pass in either of dest/src alignment here instead
+-          // of conservatively taking the minimum?
+-          Align Alignment = std::min(M->getDestAlign().valueOrOne(),
+-                                     M->getSourceAlign().valueOrOne());
+-          if (performCallSlotOptzn(M, M, M->getDest(), M->getSource(),
+-                                   CopySize->getZExtValue(), Alignment, C)) {
+-            eraseInstruction(M);
+-            ++NumMemCpyInstr;
+-            return true;
+-          }
++    if (DepInfo.isClobber()) {
++      if (CallInst *C = dyn_cast<CallInst>(DepInfo.getInst())) {
++        // FIXME: Can we pass in either of dest/src alignment here instead
++        // of conservatively taking the minimum?
++        Align Alignment = std::min(M->getDestAlign().valueOrOne(),
++                                   M->getSourceAlign().valueOrOne());
++        if (performCallSlotOptzn(M, M, M->getDest(), M->getSource(),
++                                 CopySize->getZExtValue(), Alignment, C)) {
++          eraseInstruction(M);
++          ++NumMemCpyInstr;
++          return true;
+         }
+       }
+     }
+@@ -1516,7 +1505,7 @@ bool MemCpyOptPass::processMemCpy(MemCpyInst *M, BasicBlock::iterator &BBI) {
+       if (MemCpyInst *MDep = dyn_cast<MemCpyInst>(SrcDepInfo.getInst()))
+         return processMemCpyMemCpyDependence(M, MDep);
+     } else if (SrcDepInfo.isDef()) {
+-      if (hasUndefContents(SrcDepInfo.getInst(), M->getLength())) {
++      if (hasUndefContents(SrcDepInfo.getInst(), CopySize)) {
+         eraseInstruction(M);
+         ++NumMemCpyInstr;
+         return true;
+diff --git a/llvm/test/Transforms/MemCpyOpt/variable-sized-memcpy-memcpy.ll b/llvm/test/Transforms/MemCpyOpt/variable-sized-memcpy-memcpy.ll
+deleted file mode 100644
+index 0006c4c1d68f..000000000000
+--- a/llvm/test/Transforms/MemCpyOpt/variable-sized-memcpy-memcpy.ll
++++ /dev/null
+@@ -1,39 +0,0 @@
+-; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
+-; RUN: opt < %s -memcpyopt -S -enable-memcpyopt-memoryssa=0 | FileCheck %s
+-; RUN: opt < %s -memcpyopt -S -enable-memcpyopt-memoryssa=1 -verify-memoryssa | FileCheck %s
+-target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+-
+-define void @test(i8* %src, i64 %size) {
+-; CHECK-LABEL: @test(
+-; CHECK-NEXT:    [[TMP:%.*]] = alloca i8, i64 [[SIZE:%.*]], align 1
+-; CHECK-NEXT:    [[DST:%.*]] = alloca i8, i64 [[SIZE]], align 1
+-; CHECK-NEXT:    call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 [[TMP]], i8* align 8 [[SRC:%.*]], i64 [[SIZE]], i1 false)
+-; CHECK-NEXT:    call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 [[DST]], i8* align 8 [[SRC]], i64 [[SIZE]], i1 false)
+-; CHECK-NEXT:    ret void
+-;
+-  %tmp = alloca i8, i64 %size
+-  %dst = alloca i8, i64 %size
+-  call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %tmp, i8* align 8 %src, i64 %size, i1 false)
+-  call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %dst, i8* align 8 %tmp, i64 %size, i1 false)
+-
+-  ret void
+-}
+-
+-; Differing sizes, so left as it is.
+-define void @negative_test(i8* %src, i64 %size1, i64 %size2) {
+-; CHECK-LABEL: @negative_test(
+-; CHECK-NEXT:    [[TMP:%.*]] = alloca i8, i64 [[SIZE1:%.*]], align 1
+-; CHECK-NEXT:    [[DST:%.*]] = alloca i8, i64 [[SIZE2:%.*]], align 1
+-; CHECK-NEXT:    call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 [[TMP]], i8* align 8 [[SRC:%.*]], i64 [[SIZE1]], i1 false)
+-; CHECK-NEXT:    call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 [[DST]], i8* align 8 [[TMP]], i64 [[SIZE2]], i1 false)
+-; CHECK-NEXT:    ret void
+-;
+-  %tmp = alloca i8, i64 %size1
+-  %dst = alloca i8, i64 %size2
+-  call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %tmp, i8* align 8 %src, i64 %size1, i1 false)
+-  call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %dst, i8* align 8 %tmp, i64 %size2, i1 false)
+-
+-  ret void
+-}
+-
+-declare void @llvm.memcpy.p0i8.p0i8.i64(i8*, i8*, i64, i1)
+diff --git a/llvm/test/Transforms/MemCpyOpt/variable-sized-memcpy-uninit.ll b/llvm/test/Transforms/MemCpyOpt/variable-sized-memcpy-uninit.ll
+deleted file mode 100644
+index ed1028f7b9d7..000000000000
+--- a/llvm/test/Transforms/MemCpyOpt/variable-sized-memcpy-uninit.ll
++++ /dev/null
+@@ -1,32 +0,0 @@
+-; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
+-; RUN: opt < %s -memcpyopt -S -enable-memcpyopt-memoryssa=0 | FileCheck %s
+-; RUN: opt < %s -memcpyopt -S -enable-memcpyopt-memoryssa=1 -verify-memoryssa | FileCheck %s
+-target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+-
+-define void @test(i64 %size) {
+-; CHECK-LABEL: @test(
+-; CHECK-NEXT:    [[SRC:%.*]] = alloca i8, i64 [[SIZE:%.*]], align 1
+-; CHECK-NEXT:    [[DST:%.*]] = alloca i8, i64 [[SIZE]], align 1
+-; CHECK-NEXT:    ret void
+-;
+-  %src = alloca i8, i64 %size
+-  %dst = alloca i8, i64 %size
+-  call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %dst, i8* align 8 %src, i64 %size, i1 false)
+-
+-  ret void
+-}
+-
+-define void @test2(i64 %size1, i64 %size2, i64 %cpy_size) {
+-; CHECK-LABEL: @test2(
+-; CHECK-NEXT:    [[SRC:%.*]] = alloca i8, i64 [[SIZE1:%.*]], align 1
+-; CHECK-NEXT:    [[DST:%.*]] = alloca i8, i64 [[SIZE2:%.*]], align 1
+-; CHECK-NEXT:    ret void
+-;
+-  %src = alloca i8, i64 %size1
+-  %dst = alloca i8, i64 %size2
+-  call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %dst, i8* align 8 %src, i64 %cpy_size, i1 false)
+-
+-  ret void
+-}
+-
+-declare void @llvm.memcpy.p0i8.p0i8.i64(i8*, i8*, i64, i1)
+diff --git a/llvm/test/Transforms/MemCpyOpt/variable-sized-memset-memcpy.ll b/llvm/test/Transforms/MemCpyOpt/variable-sized-memset-memcpy.ll
+deleted file mode 100644
+index e80bab819fe2..000000000000
+--- a/llvm/test/Transforms/MemCpyOpt/variable-sized-memset-memcpy.ll
++++ /dev/null
+@@ -1,40 +0,0 @@
+-; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
+-; RUN: opt < %s -memcpyopt -S -enable-memcpyopt-memoryssa=0 | FileCheck %s
+-; RUN: opt < %s -memcpyopt -S -enable-memcpyopt-memoryssa=1 -verify-memoryssa | FileCheck %s
+-target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+-
+-define void @test(i8* %src, i8 %c, i64 %size) {
+-; CHECK-LABEL: @test(
+-; CHECK-NEXT:    [[DST1:%.*]] = alloca i8, i64 [[SIZE:%.*]], align 1
+-; CHECK-NEXT:    [[DST2:%.*]] = alloca i8, i64 [[SIZE]], align 1
+-; CHECK-NEXT:    call void @llvm.memset.p0i8.i64(i8* align 8 [[DST1]], i8 [[C:%.*]], i64 [[SIZE]], i1 false)
+-; CHECK-NEXT:    call void @llvm.memset.p0i8.i64(i8* align 8 [[DST2]], i8 [[C]], i64 [[SIZE]], i1 false)
+-; CHECK-NEXT:    ret void
+-;
+-  %dst1 = alloca i8, i64 %size
+-  %dst2 = alloca i8, i64 %size
+-  call void @llvm.memset.p0i8.i64(i8* align 8 %dst1, i8 %c, i64 %size, i1 false)
+-  call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %dst2, i8* align 8 %dst1, i64 %size, i1 false)
+-
+-  ret void
+-}
+-
+-; Differing sizes, so left as it is.
+-define void @negative_test(i8* %src, i8 %c, i64 %size1, i64 %size2) {
+-; CHECK-LABEL: @negative_test(
+-; CHECK-NEXT:    [[DST1:%.*]] = alloca i8, i64 [[SIZE1:%.*]], align 1
+-; CHECK-NEXT:    [[DST2:%.*]] = alloca i8, i64 [[SIZE2:%.*]], align 1
+-; CHECK-NEXT:    call void @llvm.memset.p0i8.i64(i8* align 8 [[DST1]], i8 [[C:%.*]], i64 [[SIZE1]], i1 false)
+-; CHECK-NEXT:    call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 [[DST2]], i8* align 8 [[DST1]], i64 [[SIZE2]], i1 false)
+-; CHECK-NEXT:    ret void
+-;
+-  %dst1 = alloca i8, i64 %size1
+-  %dst2 = alloca i8, i64 %size2
+-  call void @llvm.memset.p0i8.i64(i8* align 8 %dst1, i8 %c, i64 %size1, i1 false)
+-  call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %dst2, i8* align 8 %dst1, i64 %size2, i1 false)
+-
+-  ret void
+-}
+-
+-declare void @llvm.memset.p0i8.i64(i8*, i8, i64, i1)
+-declare void @llvm.memcpy.p0i8.p0i8.i64(i8*, i8*, i64, i1)
diff --git a/sys-devel/llvm/files/update_compiler_wrapper.sh b/sys-devel/llvm/files/update_compiler_wrapper.sh
index c106c93..d08e9f6 100755
--- a/sys-devel/llvm/files/update_compiler_wrapper.sh
+++ b/sys-devel/llvm/files/update_compiler_wrapper.sh
@@ -11,4 +11,4 @@
 TOOLCHAIN_UTILS_DIR="${DIR}/../../../../toolchain-utils"
 COMPILER_WRAPPER_DIR="${DIR}/compiler_wrapper"
 
-"${TOOLCHAIN_UTILS_DIR}/compiler_wrapper/bundle.py" "${COMPILER_WRAPPER_DIR}"
\ No newline at end of file
+"${TOOLCHAIN_UTILS_DIR}/compiler_wrapper/bundle.py" --output_dir "${COMPILER_WRAPPER_DIR}"
diff --git a/sys-devel/llvm/llvm-12.0.1-r2.ebuild b/sys-devel/llvm/llvm-12.0.1-r2.ebuild
new file mode 120000
index 0000000..66dca2f
--- /dev/null
+++ b/sys-devel/llvm/llvm-12.0.1-r2.ebuild
@@ -0,0 +1 @@
+llvm-12.0.1.ebuild
\ No newline at end of file
diff --git a/sys-devel/llvm/llvm-12.0.1.ebuild b/sys-devel/llvm/llvm-12.0.1.ebuild
new file mode 100644
index 0000000..70a2907
--- /dev/null
+++ b/sys-devel/llvm/llvm-12.0.1.ebuild
@@ -0,0 +1,309 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
+# (needed due to CMAKE_BUILD_TYPE != Gentoo)
+CMAKE_MIN_VERSION=3.7.0-r1
+PYTHON_COMPAT=( python3_{6..9} )
+
+inherit cmake-utils flag-o-matic multilib-minimal \
+	multiprocessing pax-utils python-any-r1 toolchain-funcs eapi7-ver
+
+DESCRIPTION="Low Level Virtual Machine"
+HOMEPAGE="https://llvm.org/"
+SRC_URI="https://github.com/llvm/llvm-project/archive/llvmorg-${PV/_/-}.tar.gz
+	!doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/${P}-manpages.tar.bz2 )"
+
+# Keep in sync with CMakeLists.txt
+ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
+	NVPTX PowerPC Sparc SystemZ WebAssembly X86 XCore )
+ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
+
+# Additional licenses:
+# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD.
+# 2. ARM backend: LLVM Software Grant by ARM.
+# 3. MD5 code: public-domain.
+# 4. Tests (not installed):
+#  a. gtest: BSD.
+#  b. YAML tests: MIT.
+
+LICENSE="UoI-NCSA rc BSD public-domain
+	llvm_targets_ARM? ( LLVM-Grant )"
+SLOT="$(ver_cut 1)"
+KEYWORDS="*"
+IUSE="debug doc exegesis gold libedit +libffi ncurses test tools xar xml
+	kernel_Darwin ${ALL_LLVM_TARGETS[*]}"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	sys-libs/zlib:0=
+	exegesis? ( dev-libs/libpfm:= )
+	gold? ( >=sys-devel/binutils-2.31.1-r4:*[plugins] )
+	libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
+	libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
+	ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
+	xar? ( app-arch/xar )
+	xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] )"
+DEPEND="${RDEPEND}
+	gold? ( sys-libs/binutils-libs )"
+BDEPEND="
+	dev-lang/perl
+	>=dev-util/cmake-3.16
+	sys-devel/gnuconfig
+	kernel_Darwin? (
+		<sys-libs/libcxx-$(ver_cut 1-3).9999
+		>=sys-devel/binutils-apple-5.1
+	)
+	doc? ( $(python_gen_any_dep '
+		dev-python/recommonmark[${PYTHON_USEDEP}]
+		dev-python/sphinx[${PYTHON_USEDEP}]
+	') )
+	libffi? ( virtual/pkgconfig )
+	${PYTHON_DEPS}"
+# Note: Gentoo supports multiple SLOTs of llvm, but we don't currently for the board.
+# Force older versions to be removed first.
+RDEPEND="${RDEPEND}
+	!<sys-devel/llvm-${SLOT}"
+PDEPEND="sys-devel/llvm-common
+	gold? ( sys-devel/llvmgold )"
+
+REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )"
+
+S=${WORKDIR}/llvm-project-llvmorg-${PV}/llvm
+
+HOST_DIR="${WORKDIR}/${PF}-${CBUILD}"
+
+# least intrusive of all
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+python_check_deps() {
+	use doc || return 0
+
+	has_version "dev-python/recommonmark[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
+}
+
+src_prepare() {
+	# Fix llvm-config for shared linking and sane flags
+	# https://bugs.gentoo.org/show_bug.cgi?id=565358
+	eapply "${FILESDIR}"/9999/0007-llvm-config-Clean-up-exported-values-update-for-shar.patch
+
+	# disable use of SDK on OSX, bug #568758
+	sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die
+
+	# User patches + QA
+	eapply_user
+}
+
+# Is LLVM being linked against libc++?
+is_libcxx_linked() {
+	local code='#include <ciso646>
+#if defined(_LIBCPP_VERSION)
+	HAVE_LIBCXX
+#endif
+'
+	local out=$($(tc-getCXX) ${CXXFLAGS} ${CPPFLAGS} -x c++ -E -P - <<<"${code}") || return 1
+
+	[[ ${out} == *HAVE_LIBCXX* ]]
+}
+
+build_host_tools() {
+	# Use host toolchain when building for the host.
+	local CC=clang
+	local CXX=clang++
+	local CFLAGS=''
+	local CXXFLAGS=''
+	local LDFLAGS=''
+	mkdir -p "${HOST_DIR}" || die
+	cd "${HOST_DIR}" || die
+	cmake "${@}" -G "Unix Makefiles" "${S}" || die
+	cd "${HOST_DIR}/utils/TableGen" || die
+	emake
+	cd "${HOST_DIR}/tools/llvm-config" || die
+	emake
+}
+
+multilib_src_configure() {
+	local ffi_cflags ffi_ldflags
+	if use libffi; then
+		ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
+		ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi)
+	fi
+
+	local libdir=$(get_libdir)
+	local mycmakeargs=(
+		# disable appending VCS revision to the version to improve
+		# direct cache hit ratio
+		-DLLVM_APPEND_VC_REV=OFF
+		-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm"
+		-DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+		-DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+		-DLLVM_BUILD_TESTS=$(usex test)
+		-DLLVM_BUILD_TOOLS=$(usex tools)
+
+		-DLLVM_ENABLE_FFI=$(usex libffi)
+		-DLLVM_ENABLE_LIBEDIT=$(usex libedit)
+		-DLLVM_ENABLE_TERMINFO=$(usex ncurses)
+		-DLLVM_ENABLE_LIBXML2=$(usex xml)
+		-DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+		-DLLVM_ENABLE_LIBPFM=$(usex exegesis)
+		-DLLVM_ENABLE_EH=ON
+		-DLLVM_ENABLE_RTTI=ON
+
+		-DWITH_POLLY=OFF # TODO
+
+		-DLLVM_HOST_TRIPLE="${CHOST}"
+
+		-DFFI_INCLUDE_DIR="${ffi_cflags#-I}"
+		-DFFI_LIBRARY_DIR="${ffi_ldflags#-L}"
+		# used only for llvm-objdump tool
+		-DHAVE_LIBXAR=$(multilib_native_usex xar 1 0)
+
+		# disable OCaml bindings (now in dev-ml/llvm-ocaml)
+		-DOCAMLFIND=NO
+	)
+
+	if is_libcxx_linked; then
+		# Smart hack: alter version suffix -> SOVERSION when linking
+		# against libc++. This way we won't end up mixing LLVM libc++
+		# libraries with libstdc++ clang, and the other way around.
+		mycmakeargs+=(
+			-DLLVM_VERSION_SUFFIX="libcxx"
+		)
+	fi
+
+#	Note: go bindings have no CMake rules at the moment
+#	but let's kill the check in case they are introduced
+#	if ! multilib_is_native_abi || ! use go; then
+		mycmakeargs+=(
+			-DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND
+		)
+#	fi
+
+	use test && mycmakeargs+=(
+		-DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}"
+	)
+
+	if multilib_is_native_abi; then
+		mycmakeargs+=(
+			-DLLVM_BUILD_DOCS=$(usex doc)
+			-DLLVM_ENABLE_OCAMLDOC=OFF
+			-DLLVM_ENABLE_SPHINX=$(usex doc)
+			-DLLVM_ENABLE_DOXYGEN=OFF
+			-DLLVM_INSTALL_UTILS=ON
+		)
+		use doc && mycmakeargs+=(
+			-DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/share/man"
+			-DLLVM_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html"
+			-DSPHINX_WARNINGS_AS_ERRORS=OFF
+		)
+		use gold && mycmakeargs+=(
+			-DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include
+		)
+	fi
+
+	if tc-is-cross-compiler; then
+		# Force LLVM_BUILD_TOOLS=ON to ensure build_host_tools builds
+		# llvm-config
+		build_host_tools "${mycmakeargs[@]}" -DLLVM_BUILD_TOOLS=ON
+		# die early if the build tools are not installed
+		[[ -x "${HOST_DIR}/bin/llvm-tblgen" ]] \
+			|| die "${HOST_DIR}/bin/llvm-tblgen not found or usable"
+		mycmakeargs+=(
+			-DCMAKE_CROSSCOMPILING=ON
+			-DLLVM_TABLEGEN="${HOST_DIR}/bin/llvm-tblgen"
+		)
+	fi
+
+	# workaround BMI bug in gcc-7 (fixed in 7.4)
+	# https://bugs.gentoo.org/649880
+	# apply only to x86, https://bugs.gentoo.org/650506
+	if tc-is-gcc && [[ ${MULTILIB_ABI_FLAG} == abi_x86* ]] &&
+			[[ $(gcc-major-version) -eq 7 && $(gcc-minor-version) -lt 4 ]]
+	then
+		local CFLAGS="${CFLAGS} -mno-bmi"
+		local CXXFLAGS="${CXXFLAGS} -mno-bmi"
+	fi
+
+	# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+	use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+	cmake-utils_src_configure
+}
+
+multilib_src_compile() {
+	cmake-utils_src_compile
+
+	pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld
+	pax-mark m "${BUILD_DIR}"/bin/lli
+	pax-mark m "${BUILD_DIR}"/bin/lli-child-target
+
+	if use test; then
+		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests
+		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests
+		pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests
+	fi
+}
+
+multilib_src_test() {
+	# respect TMPDIR!
+	local -x LIT_PRESERVES_TMP=1
+	cmake-utils_src_make check
+}
+
+src_install() {
+	local MULTILIB_CHOST_TOOLS=()
+
+	if use tools; then
+		MULTILIB_CHOST_TOOLS+=(
+			/usr/lib/llvm/bin/llvm-config
+		)
+	fi
+
+	local MULTILIB_WRAPPED_HEADERS=(
+		/usr/include/llvm/Config/llvm-config.h
+	)
+
+	local LLVM_LDPATHS=()
+	multilib-minimal_src_install
+
+	# move wrapped headers back
+	mv "${ED%/}"/usr/include "${ED%/}"/usr/lib/llvm/include || die
+	# llvm-config --includedir and --libdir print output based on where
+	# llvm-config itself is located. So to get an includedir of
+	# .../usr/lib/llvm/include, llvm-config needs to be in
+	# .../usr/lib/llvm/bin.
+	mv "${HOST_DIR}"/bin/llvm-config "${ED%/}"/usr/lib/llvm/bin/llvm-config-host || die
+}
+
+multilib_src_install() {
+	cmake-utils_src_install
+
+	# move headers to /usr/include for wrapping
+	rm -rf "${ED%/}"/usr/include || die
+	mv "${ED%/}"/usr/lib/llvm/include "${ED%/}"/usr/include || die
+
+	LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/$(get_libdir)" )
+}
+
+multilib_src_install_all() {
+	local revord=$(( 9999 - ${SLOT} ))
+	newenvd - "10llvm-${revord}" <<-_EOF_
+		PATH="${EPREFIX}/usr/lib/llvm/bin"
+		# we need to duplicate it in ROOTPATH for Portage to respect...
+		ROOTPATH="${EPREFIX}/usr/lib/llvm/bin"
+		MANPATH="${EPREFIX}/usr/lib/llvm/share/man"
+		LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )"
+	_EOF_
+
+	# install pre-generated manpages
+	if ! use doc; then
+		# (doman does not support custom paths)
+		insinto "/usr/lib/llvm/share/man/man1"
+		doins "${WORKDIR}/${P}-manpages/llvm"/*.1
+	fi
+
+	docompress "/usr/lib/llvm/share/man"
+}
diff --git a/sys-devel/llvm/llvm-12.0_pre422132_p20210405-r9.ebuild b/sys-devel/llvm/llvm-12.0_pre422132_p20210405-r9.ebuild
deleted file mode 120000
index a4c5f7c..0000000
--- a/sys-devel/llvm/llvm-12.0_pre422132_p20210405-r9.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-llvm-12.0_pre422132_p20210405.ebuild
\ No newline at end of file
diff --git a/sys-devel/llvm/llvm-12.0_pre422132_p20210405.ebuild b/sys-devel/llvm/llvm-12.0_pre422132_p20210405.ebuild
deleted file mode 100644
index 0cd5010..0000000
--- a/sys-devel/llvm/llvm-12.0_pre422132_p20210405.ebuild
+++ /dev/null
@@ -1,380 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6..9} )
-
-inherit cros-constants cmake flag-o-matic git-r3 multilib-minimal  \
-	python-any-r1 pax-utils toolchain-funcs
-
-LLVM_HASH="cd442157cff4aad209ae532cbf031abbe10bc1df" # r422132
-LLVM_NEXT_HASH="cd442157cff4aad209ae532cbf031abbe10bc1df" # r422132
-
-DESCRIPTION="Low Level Virtual Machine"
-HOMEPAGE="http://llvm.org/"
-SRC_URI="
-	!llvm-tot? (
-		!llvm-next? ( llvm_pgo_use? ( gs://chromeos-localmirror/distfiles/llvm-profdata-${LLVM_HASH}.tar.xz ) )
-		llvm-next? ( llvm-next_pgo_use? ( gs://chromeos-localmirror/distfiles/llvm-profdata-${LLVM_NEXT_HASH}.tar.xz ) )
-	)
-"
-EGIT_REPO_URI="${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project
-	${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project"
-EGIT_BRANCH=main
-
-LICENSE="UoI-NCSA"
-SLOT="8"
-KEYWORDS="-* amd64"
-# FIXME: llvm-tot is somewhat misleading: at the moment, it's essentially
-# llvm-next with a few extra checks enabled
-IUSE="debug +default-compiler-rt +default-libcxx doc libedit +libffi +llvm-crt
-	llvm-next llvm_pgo_generate +llvm_pgo_use llvm-next_pgo_use llvm-tot
-	multitarget ncurses ocaml test +thinlto xml video_cards_radeon"
-
-COMMON_DEPEND="
-	sys-libs/zlib:0=[${MULTILIB_USEDEP}]
-	libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
-	libffi? ( >=virtual/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
-	ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
-	ocaml? (
-		>=dev-lang/ocaml-4.00.0:0=
-		dev-ml/findlib
-		dev-ml/ocaml-ctypes )"
-# configparser-3.2 breaks the build (3.3 or none at all are fine)
-DEPEND="${COMMON_DEPEND}
-	sys-devel/binutils
-	ocaml? ( test? ( dev-ml/ounit ) )"
-RDEPEND="${COMMON_DEPEND}
-	abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r2
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )
-	!<=sys-devel/llvm-8.0_pre
-	!sys-devel/lld
-	!sys-devel/clang"
-BDEPEND="
-	dev-lang/perl
-	libffi? ( virtual/pkgconfig )
-	sys-devel/gnuconfig
-	$(python_gen_any_dep '
-		dev-python/sphinx[${PYTHON_USEDEP}]
-		doc? ( dev-python/recommonmark[${PYTHON_USEDEP}] )
-	')
-"
-
-# pypy gives me around 1700 unresolved tests due to open file limit
-# being exceeded. probably GC does not close them fast enough.
-REQUIRED_USE="
-	llvm_pgo_generate? ( !llvm_pgo_use )"
-
-check_lld_works() {
-	echo 'int main() {return 0;}' > "${T}"/lld.cxx || die
-	echo "Trying to link program with lld"
-	$(tc-getCXX) -fuse-ld=lld -std=c++11 -o /dev/null "${T}"/lld.cxx
-}
-
-apply_pgo_profile() {
-	! use llvm-tot && ( \
-		( use llvm-next && use llvm-next_pgo_use ) ||
-		( ! use llvm-next && use llvm_pgo_use ) )
-}
-
-src_unpack() {
-	export CMAKE_USE_DIR="${S}/llvm"
-
-	if use llvm-next || use llvm-tot; then
-		EGIT_COMMIT="${LLVM_NEXT_HASH}"
-	else
-		EGIT_COMMIT="${LLVM_HASH}"
-	fi
-
-	git-r3_src_unpack
-
-	if apply_pgo_profile; then
-		cd "${WORKDIR}"
-		local profile_hash
-		if use llvm-next; then
-			profile_hash="${LLVM_NEXT_HASH}"
-		else
-			profile_hash="${LLVM_HASH}"
-		fi
-		unpack "llvm-profdata-${profile_hash}.tar.xz"
-	fi
-}
-
-get_most_recent_revision() {
-	local subdir="${S}/llvm"
-
-	# Tries to get the revision ID of the most recent commit
-	"${FILESDIR}"/patch_manager/git_llvm_rev.py --llvm_dir "${subdir}" --sha "$(git -C "${subdir}" rev-parse HEAD)" | cut -d 'r' -f 2
-}
-
-src_prepare() {
-	# Make ocaml warnings non-fatal, bug #537308
-	sed -e "/RUN/s/-warn-error A//" -i llvm/test/Bindings/OCaml/*ml  || die
-
-	python_setup
-
-	"${FILESDIR}"/patch_manager/patch_manager.py \
-		--svn_version "$(get_most_recent_revision)" \
-		--patch_metadata_file "${FILESDIR}"/PATCHES.json \
-		--filesdir_path "${FILESDIR}" \
-		--src_path "${S}" || die
-
-	cmake_src_prepare
-
-	# Native libdir is used to hold LLVMgold.so
-	NATIVE_LIBDIR=$(get_libdir)
-}
-
-enable_asserts() {
-	# keep asserts enabled for llvm-tot
-	if use llvm-tot; then
-		echo yes
-	else
-		usex debug
-	fi
-}
-
-multilib_src_configure() {
-	export CMAKE_BUILD_TYPE="RelWithDebInfo"
-
-	append-flags -Wno-poison-system-directories
-
-	local targets
-	if use multitarget; then
-		targets='host;X86;ARM;AArch64;NVPTX'
-	else
-		targets='host;CppBackend'
-		use video_cards_radeon && targets+=';AMDGPU'
-	fi
-
-	local ffi_cflags ffi_ldflags
-	if use libffi; then
-		ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
-		ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi)
-	fi
-
-	local libdir=$(get_libdir)
-	local mycmakeargs=(
-		"${mycmakeargs[@]}"
-		"-DLLVM_ENABLE_PROJECTS=llvm;clang;lld;lldb;compiler-rt;clang-tools-extra"
-		"-DLLVM_LIBDIR_SUFFIX=${libdir#lib}"
-
-		"-DLLVM_BUILD_LLVM_DYLIB=ON"
-		# Link LLVM statically
-		"-DLLVM_LINK_LLVM_DYLIB=OFF"
-		"-DBUILD_SHARED_LIBS=OFF"
-
-		"-DLLVM_ENABLE_TIMESTAMPS=OFF"
-		"-DLLVM_TARGETS_TO_BUILD=${targets}"
-		"-DLLVM_BUILD_TESTS=$(usex test)"
-
-		"-DLLVM_ENABLE_FFI=$(usex libffi)"
-		"-DLLVM_ENABLE_TERMINFO=$(usex ncurses)"
-		"-DLLVM_ENABLE_ASSERTIONS=$(enable_asserts)"
-		"-DLLVM_ENABLE_EH=ON"
-		"-DLLVM_ENABLE_RTTI=ON"
-
-		"-DWITH_POLLY=OFF" # TODO
-
-		"-DLLVM_HOST_TRIPLE=${CHOST}"
-
-		"-DFFI_INCLUDE_DIR=${ffi_cflags#-I}"
-		"-DFFI_LIBRARY_DIR=${ffi_ldflags#-L}"
-		"-DLLVM_BINUTILS_INCDIR=${SYSROOT}/usr/include"
-
-		"-DHAVE_HISTEDIT_H=$(usex libedit)"
-		"-DENABLE_LINKER_BUILD_ID=ON"
-		"-DCLANG_VENDOR=Chromium OS ${PVR}"
-		# override default stdlib and rtlib
-		"-DCLANG_DEFAULT_CXX_STDLIB=$(usex default-libcxx libc++ "")"
-		"-DCLANG_DEFAULT_RTLIB=$(usex default-compiler-rt compiler-rt "")"
-
-		# Turn on new pass manager for LLVM
-		"-DENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=ON"
-
-		# crbug/855759
-		"-DCOMPILER_RT_BUILD_CRT=$(usex llvm-crt)"
-
-		"-DCMAKE_POSITION_INDEPENDENT_CODE=ON"
-		"-DCLANG_DEFAULT_UNWINDLIB=libgcc"
-
-		# workaround for crbug/1198796
-		"-DCLANG_TOOLING_BUILD_AST_INTROSPECTION=OFF"
-
-		# By default do not enable PGO for compiler-rt
-		"-DCOMPILER_RT_ENABLE_PGO=OFF"
-
-		# compiler-rt needs libc++ sources to be specified to build
-		# an internal copy for libfuzzer, can be removed if libc++
-		# is built inside llvm ebuild.
-		"-DCOMPILER_RT_LIBCXXABI_PATH=${S}/libcxxabi"
-		"-DCOMPILER_RT_LIBCXX_PATH=${S}/libcxx"
-		"-DCOMPILER_RT_BUILTINS_HIDE_SYMBOLS=OFF"
-
-		# crbug/1146898: setting this to ON causes boot failures
-		"-DENABLE_X86_RELAX_RELOCATIONS=OFF"
-	)
-
-	# Update LLVM to 9.0 will cause LLVM to complain GCC
-	# version is < 5.1. Add this flag to suppress the error.
-	mycmakeargs+=(
-		"-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1"
-	)
-
-	if check_lld_works; then
-		mycmakeargs+=(
-			# We use lld to link llvm, because:
-			# 1) Gold has issue with no index for archive,
-			# 2) Gold doesn't support instrumented compiler-rt well.
-			"-DLLVM_USE_LINKER=lld"
-		)
-		# The standalone toolchain may be run at places not supporting
-		# smallPIE, disabling it for lld.
-		# Pass -fuse-ld=lld to make cmake happy.
-		append-ldflags "-fuse-ld=lld -Wl,--pack-dyn-relocs=none"
-		# Disable warning about profile not matching.
-		append-flags "-Wno-backend-plugin"
-
-		if use thinlto; then
-			mycmakeargs+=(
-				"-DLLVM_ENABLE_LTO=thin"
-			)
-		fi
-
-		if apply_pgo_profile; then
-			mycmakeargs+=(
-				"-DLLVM_PROFDATA_FILE=${WORKDIR}/llvm.profdata"
-			)
-		fi
-
-		if use llvm_pgo_generate; then
-			mycmakeargs+=(
-				"-DLLVM_BUILD_INSTRUMENTED=IR"
-			)
-		fi
-	fi
-
-	if ! multilib_is_native_abi || ! use ocaml; then
-		mycmakeargs+=(
-			"-DOCAMLFIND=NO"
-		)
-	fi
-#	Note: go bindings have no CMake rules at the moment
-#	but let's kill the check in case they are introduced
-#	if ! multilib_is_native_abi || ! use go; then
-		mycmakeargs+=(
-			"-DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND"
-		)
-#	fi
-
-	if multilib_is_native_abi; then
-		mycmakeargs+=(
-			"-DLLVM_BUILD_DOCS=$(usex doc)"
-			"-DLLVM_ENABLE_SPHINX=$(usex doc)"
-			"-DLLVM_ENABLE_DOXYGEN=OFF"
-			"-DLLVM_INSTALL_HTML=${EPREFIX}/usr/share/doc/${PF}/html"
-			"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
-			"-DLLVM_INSTALL_UTILS=ON"
-		)
-	fi
-
-	if ! use debug; then
-		append-cppflags -DNDEBUG
-	fi
-
-	cmake_src_configure
-}
-
-multilib_src_compile() {
-	cmake_src_compile
-
-	pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld
-	pax-mark m "${BUILD_DIR}"/bin/lli
-	pax-mark m "${BUILD_DIR}"/bin/lli-child-target
-
-	if use test; then
-		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests
-		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests
-		pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests
-	fi
-}
-
-multilib_src_test() {
-	# respect TMPDIR!
-	local -x LIT_PRESERVES_TMP=1
-	cmake_src_test
-}
-
-src_install() {
-	local MULTILIB_CHOST_TOOLS=(
-		/usr/bin/llvm-config
-	)
-
-	local MULTILIB_WRAPPED_HEADERS=(
-		/usr/include/llvm/Config/config.h
-		/usr/include/llvm/Config/llvm-config.h
-	)
-
-	multilib-minimal_src_install
-}
-
-multilib_src_install() {
-	cmake_src_install
-
-	local use_llvm_next=false
-	if use llvm-next || use llvm-tot
-	then
-		use_llvm_next=true
-	fi
-	local wrapper_script=clang_host_wrapper
-
-	"${FILESDIR}/compiler_wrapper/build.py" --config=cros.host --use_ccache=false \
-		--use_llvm_next="${use_llvm_next}" \
-		--output_file="${D}/usr/bin/${wrapper_script}" || die
-
-	newbin "${D}/usr/bin/clang-tidy" "clang-tidy"
-	dobin "${FILESDIR}/bisect_driver.py"
-	exeinto "/usr/bin"
-	dosym "${wrapper_script}" "/usr/bin/${CHOST}-clang"
-	dosym "${wrapper_script}" "/usr/bin/${CHOST}-clang++"
-	newexe "${FILESDIR}/ldwrapper_lld.host" "${CHOST}-ld.lld"
-
-	# llvm-strip is a symlink to llvm-objcopy and distinguished by a argv[0] check.
-	# When creating standalone toolchain, argv[0] information is lost and causes
-	# llvm-strip invocations to be treated as llvm-objcopy breaking builds
-	# (crbug.com/1151787). Handle this by making llvm-strip a full binary.
-	if [[ -L "${D}/usr/bin/llvm-strip" ]]; then
-		rm "${D}/usr/bin/llvm-strip" || die
-		newbin "${D}/usr/bin/llvm-objcopy" "llvm-strip"
-	fi
-
-	# Remove this file, if it exists, to avoid installation file collision,
-	# as this file is also generated/installed by the dev-python/six package.
-	if [[ -f "${D}/usr/lib/python3.6/site-packages/six.py" ]]; then
-		rm "${D}/usr/lib/python3.6/site-packages/six.py" || die
-	fi
-}
-
-multilib_src_install_all() {
-	insinto /usr/share/vim/vimfiles
-	doins -r llvm/utils/vim/*/.
-	# some users may find it useful
-	dodoc llvm/utils/vim/vimrc
-	dobin "${S}/compiler-rt/lib/asan/scripts/asan_symbolize.py"
-}
-
-pkg_postinst() {
-	if has_version ">=dev-util/ccache-3.1.9-r2" ; then
-		#add ccache links as clang might get installed after ccache
-		"${EROOT}"/usr/bin/ccache-config --install-links
-	fi
-}
-
-pkg_postrm() {
-	if has_version ">=dev-util/ccache-3.1.9-r2" && [[ -z ${REPLACED_BY_VERSION} ]]; then
-		# --remove-links would remove all links, --install-links updates them
-		"${EROOT}"/usr/bin/ccache-config --install-links
-	fi
-}
diff --git a/sys-devel/llvm/llvm-13.0_pre428724_p20210813-r10.ebuild b/sys-devel/llvm/llvm-13.0_pre428724_p20210813-r10.ebuild
new file mode 120000
index 0000000..05f9d4f
--- /dev/null
+++ b/sys-devel/llvm/llvm-13.0_pre428724_p20210813-r10.ebuild
@@ -0,0 +1 @@
+llvm-13.0_pre428724_p20210813.ebuild
\ No newline at end of file
diff --git a/sys-devel/llvm/llvm-13.0_pre428724_p20210813.ebuild b/sys-devel/llvm/llvm-13.0_pre428724_p20210813.ebuild
new file mode 100644
index 0000000..c0412ae
--- /dev/null
+++ b/sys-devel/llvm/llvm-13.0_pre428724_p20210813.ebuild
@@ -0,0 +1,422 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+
+inherit cros-constants cmake flag-o-matic git-r3 multilib-minimal  \
+	python-any-r1 pax-utils toolchain-funcs
+
+LLVM_HASH="9968896cd62a62b11ac61085534dd598c4bd3c60" # r428724
+LLVM_NEXT_HASH="0fe7531b75e54909a7cb7f7080634ab2053964ad" # r433403
+
+DESCRIPTION="Low Level Virtual Machine"
+HOMEPAGE="http://llvm.org/"
+SRC_URI="
+	!llvm-tot? (
+		!llvm-next? ( llvm_pgo_use? ( gs://chromeos-localmirror/distfiles/llvm-profdata-${LLVM_HASH}.tar.xz ) )
+		llvm-next? ( llvm-next_pgo_use? ( gs://chromeos-localmirror/distfiles/llvm-profdata-${LLVM_NEXT_HASH}.tar.xz ) )
+	)
+"
+EGIT_REPO_URI="${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project
+	${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project"
+EGIT_BRANCH=main
+
+LICENSE="UoI-NCSA"
+SLOT="8"
+KEYWORDS="-* amd64"
+# FIXME: llvm-tot is somewhat misleading: at the moment, it's essentially
+# llvm-next with a few extra checks enabled
+IUSE="debug +default-compiler-rt +default-libcxx doc libedit +libffi +llvm-crt
+	llvm-next llvm_pgo_generate +llvm_pgo_use llvm-next_pgo_use llvm-tot
+	multitarget ncurses ocaml test +thinlto xml video_cards_radeon"
+
+COMMON_DEPEND="
+	sys-libs/zlib:0=[${MULTILIB_USEDEP}]
+	libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
+	libffi? ( >=virtual/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
+	ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
+	ocaml? (
+		>=dev-lang/ocaml-4.00.0:0=
+		dev-ml/findlib
+		dev-ml/ocaml-ctypes )"
+# configparser-3.2 breaks the build (3.3 or none at all are fine)
+DEPEND="${COMMON_DEPEND}
+	sys-devel/binutils
+	ocaml? ( test? ( dev-ml/ounit ) )"
+RDEPEND="${COMMON_DEPEND}
+	abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r2
+		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )
+	!<=sys-devel/llvm-8.0_pre
+	!sys-devel/lld
+	!sys-devel/clang"
+BDEPEND="
+	dev-lang/perl
+	libffi? ( virtual/pkgconfig )
+	sys-devel/gnuconfig
+	$(python_gen_any_dep '
+		dev-python/sphinx[${PYTHON_USEDEP}]
+		doc? ( dev-python/recommonmark[${PYTHON_USEDEP}] )
+	')
+"
+
+# pypy gives me around 1700 unresolved tests due to open file limit
+# being exceeded. probably GC does not close them fast enough.
+REQUIRED_USE="
+	llvm_pgo_generate? ( !llvm_pgo_use )"
+
+check_lld_works() {
+	echo 'int main() {return 0;}' > "${T}"/lld.cxx || die
+	echo "Trying to link program with lld"
+	$(tc-getCXX) -fuse-ld=lld -std=c++11 -o /dev/null "${T}"/lld.cxx
+}
+
+apply_pgo_profile() {
+	! use llvm-tot && ( \
+		( use llvm-next && use llvm-next_pgo_use ) ||
+		( ! use llvm-next && use llvm_pgo_use ) )
+}
+
+src_unpack() {
+	export CMAKE_USE_DIR="${S}/llvm"
+
+	if use llvm-next || use llvm-tot; then
+		EGIT_COMMIT="${LLVM_NEXT_HASH}"
+	else
+		EGIT_COMMIT="${LLVM_HASH}"
+	fi
+
+	git-r3_src_unpack
+
+	if apply_pgo_profile; then
+		cd "${WORKDIR}"
+		local profile_hash
+		if use llvm-next; then
+			profile_hash="${LLVM_NEXT_HASH}"
+		else
+			profile_hash="${LLVM_HASH}"
+		fi
+		unpack "llvm-profdata-${profile_hash}.tar.xz"
+	fi
+}
+
+get_most_recent_revision() {
+	local subdir="${S}/llvm"
+
+	# Tries to get the revision ID of the most recent commit
+	"${FILESDIR}"/patch_manager/git_llvm_rev.py --llvm_dir "${subdir}" --sha "$(git -C "${subdir}" rev-parse HEAD)" | cut -d 'r' -f 2
+}
+
+src_prepare() {
+	# Make ocaml warnings non-fatal, bug #537308
+	sed -e "/RUN/s/-warn-error A//" -i llvm/test/Bindings/OCaml/*ml  || die
+
+	python_setup
+
+	"${FILESDIR}"/patch_manager/patch_manager.py \
+		--svn_version "$(get_most_recent_revision)" \
+		--patch_metadata_file "${FILESDIR}"/PATCHES.json \
+		--filesdir_path "${FILESDIR}" \
+		--src_path "${S}" || die
+
+	cmake_src_prepare
+
+	# Native libdir is used to hold LLVMgold.so
+	NATIVE_LIBDIR=$(get_libdir)
+}
+
+enable_asserts() {
+	# keep asserts enabled for llvm-tot
+	if use llvm-tot; then
+		echo yes
+	else
+		usex debug
+	fi
+}
+
+multilib_src_configure() {
+	export CMAKE_BUILD_TYPE="RelWithDebInfo"
+
+	append-flags -Wno-poison-system-directories
+
+	local targets
+	if use multitarget; then
+		targets='host;X86;ARM;AArch64;NVPTX'
+	else
+		targets='host;CppBackend'
+		use video_cards_radeon && targets+=';AMDGPU'
+	fi
+
+	local ffi_cflags ffi_ldflags
+	if use libffi; then
+		ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
+		ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi)
+	fi
+
+	local libdir=$(get_libdir)
+	local mycmakeargs=(
+		"${mycmakeargs[@]}"
+		"-DLLVM_ENABLE_PROJECTS=llvm;clang;lld;lldb;compiler-rt;clang-tools-extra"
+		"-DLLVM_LIBDIR_SUFFIX=${libdir#lib}"
+
+		"-DLLVM_BUILD_LLVM_DYLIB=ON"
+		# Link LLVM statically
+		"-DLLVM_LINK_LLVM_DYLIB=OFF"
+		"-DBUILD_SHARED_LIBS=OFF"
+
+		"-DLLVM_ENABLE_TIMESTAMPS=OFF"
+		"-DLLVM_TARGETS_TO_BUILD=${targets}"
+		"-DLLVM_BUILD_TESTS=$(usex test)"
+
+		"-DLLVM_ENABLE_FFI=$(usex libffi)"
+		"-DLLVM_ENABLE_TERMINFO=$(usex ncurses)"
+		"-DLLVM_ENABLE_ASSERTIONS=$(enable_asserts)"
+		"-DLLVM_ENABLE_EH=ON"
+		"-DLLVM_ENABLE_RTTI=ON"
+
+		"-DWITH_POLLY=OFF" # TODO
+
+		"-DLLVM_HOST_TRIPLE=${CHOST}"
+
+		"-DFFI_INCLUDE_DIR=${ffi_cflags#-I}"
+		"-DFFI_LIBRARY_DIR=${ffi_ldflags#-L}"
+		"-DLLVM_BINUTILS_INCDIR=${SYSROOT}/usr/include"
+
+		"-DHAVE_HISTEDIT_H=$(usex libedit)"
+		"-DENABLE_LINKER_BUILD_ID=ON"
+		"-DCLANG_VENDOR=Chromium OS ${PVR}"
+		# override default stdlib and rtlib
+		"-DCLANG_DEFAULT_CXX_STDLIB=$(usex default-libcxx libc++ "")"
+		"-DCLANG_DEFAULT_RTLIB=$(usex default-compiler-rt compiler-rt "")"
+
+		# Turn on new pass manager for LLVM
+		"-DENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=ON"
+
+		# crbug/855759
+		"-DCOMPILER_RT_BUILD_CRT=$(usex llvm-crt)"
+
+		"-DCMAKE_POSITION_INDEPENDENT_CODE=ON"
+		"-DCLANG_DEFAULT_UNWINDLIB=libgcc"
+
+		# workaround for crbug/1198796
+		"-DCLANG_TOOLING_BUILD_AST_INTROSPECTION=OFF"
+
+		# By default do not enable PGO for compiler-rt
+		"-DCOMPILER_RT_ENABLE_PGO=OFF"
+
+		# compiler-rt needs libc++ sources to be specified to build
+		# an internal copy for libfuzzer, can be removed if libc++
+		# is built inside llvm ebuild.
+		"-DCOMPILER_RT_LIBCXXABI_PATH=${S}/libcxxabi"
+		"-DCOMPILER_RT_LIBCXX_PATH=${S}/libcxx"
+		"-DCOMPILER_RT_BUILTINS_HIDE_SYMBOLS=OFF"
+
+		# b/200831212: Disable per runtime install dirs.
+		"-DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=OFF"
+	)
+
+	# Update LLVM to 9.0 will cause LLVM to complain GCC
+	# version is < 5.1. Add this flag to suppress the error.
+	mycmakeargs+=(
+		"-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1"
+	)
+
+	if check_lld_works; then
+		mycmakeargs+=(
+			# We use lld to link llvm, because:
+			# 1) Gold has issue with no index for archive,
+			# 2) Gold doesn't support instrumented compiler-rt well.
+			"-DLLVM_USE_LINKER=lld"
+		)
+		# The standalone toolchain may be run at places not supporting
+		# smallPIE, disabling it for lld.
+		# Pass -fuse-ld=lld to make cmake happy.
+		append-ldflags "-fuse-ld=lld -Wl,--pack-dyn-relocs=none"
+		# Disable warning about profile not matching.
+		append-flags "-Wno-backend-plugin"
+
+		if use thinlto; then
+			mycmakeargs+=(
+				"-DLLVM_ENABLE_LTO=thin"
+			)
+		fi
+
+		if apply_pgo_profile; then
+			mycmakeargs+=(
+				"-DLLVM_PROFDATA_FILE=${WORKDIR}/llvm.profdata"
+			)
+		fi
+
+		if use llvm_pgo_generate; then
+			mycmakeargs+=(
+				"-DLLVM_BUILD_INSTRUMENTED=IR"
+			)
+		fi
+	fi
+
+	if ! multilib_is_native_abi || ! use ocaml; then
+		mycmakeargs+=(
+			"-DOCAMLFIND=NO"
+		)
+	fi
+#	Note: go bindings have no CMake rules at the moment
+#	but let's kill the check in case they are introduced
+#	if ! multilib_is_native_abi || ! use go; then
+		mycmakeargs+=(
+			"-DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND"
+		)
+#	fi
+
+	if multilib_is_native_abi; then
+		mycmakeargs+=(
+			"-DLLVM_BUILD_DOCS=$(usex doc)"
+			"-DLLVM_ENABLE_SPHINX=$(usex doc)"
+			"-DLLVM_ENABLE_DOXYGEN=OFF"
+			"-DLLVM_INSTALL_HTML=${EPREFIX}/usr/share/doc/${PF}/html"
+			"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
+			"-DLLVM_INSTALL_UTILS=ON"
+		)
+	fi
+
+	if ! use debug; then
+		append-cppflags -DNDEBUG
+	fi
+
+	cmake_src_configure
+}
+
+multilib_src_compile() {
+	cmake_src_compile
+
+	pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld
+	pax-mark m "${BUILD_DIR}"/bin/lli
+	pax-mark m "${BUILD_DIR}"/bin/lli-child-target
+
+	if use test; then
+		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests
+		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests
+		pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests
+	fi
+}
+
+multilib_src_test() {
+	# respect TMPDIR!
+	local -x LIT_PRESERVES_TMP=1
+	cmake_src_test
+}
+
+src_install() {
+	local MULTILIB_CHOST_TOOLS=(
+		/usr/bin/llvm-config
+	)
+
+	local MULTILIB_WRAPPED_HEADERS=(
+		/usr/include/llvm/Config/config.h
+		/usr/include/llvm/Config/llvm-config.h
+	)
+
+	multilib-minimal_src_install
+}
+
+multilib_src_install() {
+	cmake_src_install
+
+	local use_llvm_next=false
+	if use llvm-next || use llvm-tot
+	then
+		use_llvm_next=true
+	fi
+	local wrapper_script=clang_host_wrapper
+
+	"${FILESDIR}/compiler_wrapper/build.py" --config=cros.host --use_ccache=false \
+		--use_llvm_next="${use_llvm_next}" \
+		--output_file="${D}/usr/bin/${wrapper_script}" || die
+
+	newbin "${D}/usr/bin/clang-tidy" "clang-tidy"
+	dobin "${FILESDIR}/bisect_driver.py"
+	exeinto "/usr/bin"
+	dosym "${wrapper_script}" "/usr/bin/${CHOST}-clang"
+	dosym "${wrapper_script}" "/usr/bin/${CHOST}-clang++"
+	newexe "${FILESDIR}/ldwrapper_lld.host" "${CHOST}-ld.lld"
+
+	# llvm-strip is a symlink to llvm-objcopy and distinguished by a argv[0] check.
+	# When creating standalone toolchain, argv[0] information is lost and causes
+	# llvm-strip invocations to be treated as llvm-objcopy breaking builds
+	# (crbug.com/1151787). Handle this by making llvm-strip a full binary.
+	if [[ -L "${D}/usr/bin/llvm-strip" ]]; then
+		rm "${D}/usr/bin/llvm-strip" || die
+		newbin "${D}/usr/bin/llvm-objcopy" "llvm-strip"
+	fi
+
+	# Build and install cross-compiler wrappers for supported ABIs.
+	# ccache wrapper is used in chroot and non-ccache wrapper is used
+	# in standalone SDK.
+	local ccache_suffixes=(noccache ccache)
+	local ccache_option_values=(false true)
+	for ccache_index in {0,1}; do
+		local ccache_suffix="${ccache_suffixes[${ccache_index}]}"
+		local ccache_option="${ccache_option_values[${ccache_index}]}"
+		# Build hardened wrapper written in golang.
+		"${FILESDIR}/compiler_wrapper/build.py" --config="cros.hardened" \
+			--use_ccache="${ccache_option}" \
+			--use_llvm_next="${use_llvm_next}" \
+			--output_file="${D}/usr/bin/sysroot_wrapper.hardened.${ccache_suffix}" || die
+
+		# Build non-hardened wrapper written in golang.
+		"${FILESDIR}/compiler_wrapper/build.py" --config="cros.nonhardened" \
+			--use_ccache="${ccache_option}" \
+			--use_llvm_next="${use_llvm_next}" \
+			--output_file="${D}/usr/bin/sysroot_wrapper.${ccache_suffix}" || die
+	done
+
+	local cros_hardened_targets=(
+		"aarch64-cros-linux-gnu"
+		"armv7a-cros-linux-gnueabihf"
+		"i686-pc-linux-gnu"
+		"x86_64-cros-linux-gnu"
+	)
+	local cros_nonhardened_targets=(
+		"arm-none-eabi"
+		"armv7m-cros-eabi"
+	)
+
+	local target
+	for target in "${cros_hardened_targets[@]}"; do
+		dosym "sysroot_wrapper.hardened.ccache" "/usr/bin/${target}-clang"
+		dosym "sysroot_wrapper.hardened.ccache" "/usr/bin/${target}-clang++"
+	done
+	for target in "${cros_nonhardened_targets[@]}"; do
+		dosym "sysroot_wrapper.ccache" "/usr/bin/${target}-clang"
+		dosym "sysroot_wrapper.ccache" "/usr/bin/${target}-clang++"
+	done
+
+	# Remove this file, if it exists, to avoid installation file collision,
+	# as this file is also generated/installed by the dev-python/six package.
+	if [[ -f "${D}/usr/lib/python3.6/site-packages/six.py" ]]; then
+		rm "${D}/usr/lib/python3.6/site-packages/six.py" || die
+	fi
+}
+
+multilib_src_install_all() {
+	insinto /usr/share/vim/vimfiles
+	doins -r llvm/utils/vim/*/.
+	# some users may find it useful
+	dodoc llvm/utils/vim/vimrc
+	dobin "${S}/compiler-rt/lib/asan/scripts/asan_symbolize.py"
+}
+
+pkg_postinst() {
+	if has_version ">=dev-util/ccache-3.1.9-r2" ; then
+		#add ccache links as clang might get installed after ccache
+		"${EROOT}"/usr/bin/ccache-config --install-links
+	fi
+}
+
+pkg_postrm() {
+	if has_version ">=dev-util/ccache-3.1.9-r2" && [[ -z ${REPLACED_BY_VERSION} ]]; then
+		# --remove-links would remove all links, --install-links updates them
+		"${EROOT}"/usr/bin/ccache-config --install-links
+	fi
+}
diff --git a/sys-devel/llvm/llvm-9.0.0-r4.ebuild b/sys-devel/llvm/llvm-9.0.0-r4.ebuild
deleted file mode 120000
index 516f5af..0000000
--- a/sys-devel/llvm/llvm-9.0.0-r4.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-llvm-9.0.0.ebuild
\ No newline at end of file
diff --git a/sys-devel/llvm/llvm-9.0.0.ebuild b/sys-devel/llvm/llvm-9.0.0.ebuild
deleted file mode 100644
index 4f0f69d..0000000
--- a/sys-devel/llvm/llvm-9.0.0.ebuild
+++ /dev/null
@@ -1,321 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
-# (needed due to CMAKE_BUILD_TYPE != Gentoo)
-CMAKE_MIN_VERSION=3.7.0-r1
-PYTHON_COMPAT=( python3_{6..9} )
-
-inherit cmake-utils flag-o-matic multilib-minimal \
-	multiprocessing pax-utils python-any-r1 toolchain-funcs eapi7-ver
-
-MY_P=${P}.src
-DESCRIPTION="Low Level Virtual Machine"
-HOMEPAGE="https://llvm.org/"
-SRC_URI="https://github.com/llvm/llvm-project/releases/download/llvmorg-${PV}/${MY_P}.tar.xz
-	!doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/${P}-manpages.tar.bz2 )"
-
-# Keep in sync with CMakeLists.txt
-ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
-	NVPTX PowerPC Sparc SystemZ WebAssembly X86 XCore )
-ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
-
-# Additional licenses:
-# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD.
-# 2. ARM backend: LLVM Software Grant by ARM.
-# 3. MD5 code: public-domain.
-# 4. Tests (not installed):
-#  a. gtest: BSD.
-#  b. YAML tests: MIT.
-
-LICENSE="UoI-NCSA rc BSD public-domain
-	llvm_targets_ARM? ( LLVM-Grant )"
-SLOT="$(ver_cut 1)"
-KEYWORDS="*"
-IUSE="debug doc exegesis gold libedit +libffi ncurses test tools xar xml
-	kernel_Darwin ${ALL_LLVM_TARGETS[*]}"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-	sys-libs/zlib:0=
-	exegesis? ( dev-libs/libpfm:= )
-	gold? (
-		|| (
-			>=sys-devel/binutils-2.31.1-r4:*[plugins]
-			<sys-devel/binutils-2.31.1-r4:*[cxx]
-		)
-	)
-	libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
-	libffi? ( >=virtual/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
-	ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
-	xar? ( app-arch/xar )
-	xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] )"
-# configparser-3.2 breaks the build (3.3 or none at all are fine)
-DEPEND="${RDEPEND}
-	dev-lang/perl
-	|| ( >=sys-devel/gcc-3.0 >=sys-devel/llvm-3.5
-		( >=sys-freebsd/freebsd-lib-9.1-r10 sys-libs/libcxx )
-	)
-	kernel_Darwin? (
-		<sys-libs/libcxx-$(ver_cut 1-3).9999
-		>=sys-devel/binutils-apple-5.1
-	)
-	doc? ( $(python_gen_any_dep '
-		dev-python/recommonmark[${PYTHON_USEDEP}]
-		dev-python/sphinx[${PYTHON_USEDEP}]
-	') )
-	!doc? ( ${PYTHON_DEPS} )
-	gold? ( sys-libs/binutils-libs )
-	libffi? ( virtual/pkgconfig )
-	!!<dev-python/configparser-3.3.0.2
-	${PYTHON_DEPS}"
-# Note: Gentoo supports multiple SLOTs of llvm, but we don't currently for the board.
-# Force older versions to be removed first.
-RDEPEND="${RDEPEND}
-	!<sys-devel/llvm-${SLOT}"
-PDEPEND="sys-devel/llvm-common
-	gold? ( sys-devel/llvmgold )"
-
-REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )"
-
-S=${WORKDIR}/${MY_P}
-
-HOST_DIR="${WORKDIR}/${PF}-${CBUILD}"
-
-# least intrusive of all
-CMAKE_BUILD_TYPE=RelWithDebInfo
-
-python_check_deps() {
-	use doc || return 0
-
-	has_version "dev-python/recommonmark[${PYTHON_USEDEP}]" &&
-	has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
-}
-
-src_prepare() {
-	# Fix llvm-config for shared linking and sane flags
-	# https://bugs.gentoo.org/show_bug.cgi?id=565358
-	eapply "${FILESDIR}"/9999/0007-llvm-config-Clean-up-exported-values-update-for-shar.patch
-
-	# Vulkan hang fix with AMDGPU, can be removed when upreving to >= 10.0
-	eapply "${FILESDIR}"/cherry/5f6fec2404c5135247ae9e4e515e8d9d3242f790.patch
-
-	# disable use of SDK on OSX, bug #568758
-	sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die
-
-	# User patches + QA
-	eapply_user
-}
-
-# Is LLVM being linked against libc++?
-is_libcxx_linked() {
-	local code='#include <ciso646>
-#if defined(_LIBCPP_VERSION)
-	HAVE_LIBCXX
-#endif
-'
-	local out=$($(tc-getCXX) ${CXXFLAGS} ${CPPFLAGS} -x c++ -E -P - <<<"${code}") || return 1
-
-	[[ ${out} == *HAVE_LIBCXX* ]]
-}
-
-build_host_tools() {
-	# Use host toolchain when building for the host.
-	local CC=clang
-	local CXX=clang++
-	local CFLAGS=''
-	local CXXFLAGS=''
-	local LDFLAGS=''
-	mkdir -p "${HOST_DIR}" || die
-	cd "${HOST_DIR}" || die
-	cmake "${@}" -G "Unix Makefiles" "${S}" || die
-	cd "${HOST_DIR}/utils/TableGen" || die
-	emake
-	cd "${HOST_DIR}/tools/llvm-config" || die
-	emake
-}
-
-multilib_src_configure() {
-	local ffi_cflags ffi_ldflags
-	if use libffi; then
-		ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
-		ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi)
-	fi
-
-	local libdir=$(get_libdir)
-	local mycmakeargs=(
-		# disable appending VCS revision to the version to improve
-		# direct cache hit ratio
-		-DLLVM_APPEND_VC_REV=OFF
-		-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm"
-		-DLLVM_LIBDIR_SUFFIX=${libdir#lib}
-
-		-DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
-		-DLLVM_BUILD_TESTS=$(usex test)
-		-DLLVM_BUILD_TOOLS=$(usex tools)
-
-		-DLLVM_ENABLE_FFI=$(usex libffi)
-		-DLLVM_ENABLE_LIBEDIT=$(usex libedit)
-		-DLLVM_ENABLE_TERMINFO=$(usex ncurses)
-		-DLLVM_ENABLE_LIBXML2=$(usex xml)
-		-DLLVM_ENABLE_ASSERTIONS=$(usex debug)
-		-DLLVM_ENABLE_LIBPFM=$(usex exegesis)
-		-DLLVM_ENABLE_EH=ON
-		-DLLVM_ENABLE_RTTI=ON
-
-		-DWITH_POLLY=OFF # TODO
-
-		-DLLVM_HOST_TRIPLE="${CHOST}"
-
-		-DFFI_INCLUDE_DIR="${ffi_cflags#-I}"
-		-DFFI_LIBRARY_DIR="${ffi_ldflags#-L}"
-		# used only for llvm-objdump tool
-		-DHAVE_LIBXAR=$(multilib_native_usex xar 1 0)
-
-		# disable OCaml bindings (now in dev-ml/llvm-ocaml)
-		-DOCAMLFIND=NO
-	)
-
-	if is_libcxx_linked; then
-		# Smart hack: alter version suffix -> SOVERSION when linking
-		# against libc++. This way we won't end up mixing LLVM libc++
-		# libraries with libstdc++ clang, and the other way around.
-		mycmakeargs+=(
-			-DLLVM_VERSION_SUFFIX="libcxx"
-		)
-	fi
-
-#	Note: go bindings have no CMake rules at the moment
-#	but let's kill the check in case they are introduced
-#	if ! multilib_is_native_abi || ! use go; then
-		mycmakeargs+=(
-			-DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND
-		)
-#	fi
-
-	use test && mycmakeargs+=(
-		-DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}"
-	)
-
-	if multilib_is_native_abi; then
-		mycmakeargs+=(
-			-DLLVM_BUILD_DOCS=$(usex doc)
-			-DLLVM_ENABLE_OCAMLDOC=OFF
-			-DLLVM_ENABLE_SPHINX=$(usex doc)
-			-DLLVM_ENABLE_DOXYGEN=OFF
-			-DLLVM_INSTALL_UTILS=ON
-		)
-		use doc && mycmakeargs+=(
-			-DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/share/man"
-			-DLLVM_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html"
-			-DSPHINX_WARNINGS_AS_ERRORS=OFF
-		)
-		use gold && mycmakeargs+=(
-			-DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include
-		)
-	fi
-
-	if tc-is-cross-compiler; then
-		# Force LLVM_BUILD_TOOLS=ON to ensure build_host_tools builds
-		# llvm-config
-		build_host_tools "${mycmakeargs[@]}" -DLLVM_BUILD_TOOLS=ON
-		# die early if the build tools are not installed
-		[[ -x "${HOST_DIR}/bin/llvm-tblgen" ]] \
-			|| die "${HOST_DIR}/bin/llvm-tblgen not found or usable"
-		mycmakeargs+=(
-			-DCMAKE_CROSSCOMPILING=ON
-			-DLLVM_TABLEGEN="${HOST_DIR}/bin/llvm-tblgen"
-		)
-	fi
-
-	# workaround BMI bug in gcc-7 (fixed in 7.4)
-	# https://bugs.gentoo.org/649880
-	# apply only to x86, https://bugs.gentoo.org/650506
-	if tc-is-gcc && [[ ${MULTILIB_ABI_FLAG} == abi_x86* ]] &&
-			[[ $(gcc-major-version) -eq 7 && $(gcc-minor-version) -lt 4 ]]
-	then
-		local CFLAGS="${CFLAGS} -mno-bmi"
-		local CXXFLAGS="${CXXFLAGS} -mno-bmi"
-	fi
-
-	# LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
-	use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-	cmake-utils_src_configure
-}
-
-multilib_src_compile() {
-	cmake-utils_src_compile
-
-	pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld
-	pax-mark m "${BUILD_DIR}"/bin/lli
-	pax-mark m "${BUILD_DIR}"/bin/lli-child-target
-
-	if use test; then
-		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests
-		pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests
-		pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests
-	fi
-}
-
-multilib_src_test() {
-	# respect TMPDIR!
-	local -x LIT_PRESERVES_TMP=1
-	cmake-utils_src_make check
-}
-
-src_install() {
-	local MULTILIB_CHOST_TOOLS=()
-
-	if use tools; then
-		MULTILIB_CHOST_TOOLS+=(
-			/usr/lib/llvm/bin/llvm-config
-		)
-	fi
-
-	local MULTILIB_WRAPPED_HEADERS=(
-		/usr/include/llvm/Config/llvm-config.h
-	)
-
-	local LLVM_LDPATHS=()
-	multilib-minimal_src_install
-
-	# move wrapped headers back
-	mv "${ED%/}"/usr/include "${ED%/}"/usr/lib/llvm/include || die
-	# llvm-config --includedir and --libdir print output based on where
-	# llvm-config itself is located. So to get an includedir of
-	# .../usr/lib/llvm/include, llvm-config needs to be in
-	# .../usr/lib/llvm/bin.
-	mv "${HOST_DIR}"/bin/llvm-config "${ED%/}"/usr/lib/llvm/bin/llvm-config-host || die
-}
-
-multilib_src_install() {
-	cmake-utils_src_install
-
-	# move headers to /usr/include for wrapping
-	rm -rf "${ED%/}"/usr/include || die
-	mv "${ED%/}"/usr/lib/llvm/include "${ED%/}"/usr/include || die
-
-	LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/$(get_libdir)" )
-}
-
-multilib_src_install_all() {
-	local revord=$(( 9999 - ${SLOT} ))
-	newenvd - "10llvm-${revord}" <<-_EOF_
-		PATH="${EPREFIX}/usr/lib/llvm/bin"
-		# we need to duplicate it in ROOTPATH for Portage to respect...
-		ROOTPATH="${EPREFIX}/usr/lib/llvm/bin"
-		MANPATH="${EPREFIX}/usr/lib/llvm/share/man"
-		LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )"
-	_EOF_
-
-	# install pre-generated manpages
-	if ! use doc; then
-		# (doman does not support custom paths)
-		insinto "/usr/lib/llvm/share/man/man1"
-		doins "${WORKDIR}/${P}-manpages/llvm"/*.1
-	fi
-
-	docompress "/usr/lib/llvm/share/man"
-}
diff --git a/sys-firmware/chromeos-fpmcu-release-bloonchipper/chromeos-fpmcu-release-bloonchipper-0.0.1-r48.ebuild b/sys-firmware/chromeos-fpmcu-release-bloonchipper/chromeos-fpmcu-release-bloonchipper-0.0.1-r48.ebuild
deleted file mode 100644
index 2b0c034..0000000
--- a/sys-firmware/chromeos-fpmcu-release-bloonchipper/chromeos-fpmcu-release-bloonchipper-0.0.1-r48.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# Increment the "eclass bug workaround count" below when you change
-# "cros-ec-release.eclass" to work around http://crbug.com/220902.
-#
-# eclass bug workaround count: 3
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("d46e286155693f9cb6bd66f8c2c0bc101f2006ee" "37335af9c5488ed349271a8ba9ff209c940a5e2c" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
-CROS_WORKON_TREE=("57ec13f9095b7a6d49a429f8d6b1c14c6837344d" "679fa8b14bd105ad9959a0f82eaa928d5b18890d" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
-FIRMWARE_EC_BOARD="bloonchipper"
-FIRMWARE_EC_RELEASE_REPLACE_RO="yes"
-
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform/ec"
-	"chromiumos/third_party/tpm2"
-	"chromiumos/third_party/cryptoc"
-)
-
-CROS_WORKON_LOCALNAME=(
-	"../platform/release-firmware/fpmcu-bloonchipper"
-	"tpm2"
-	"cryptoc"
-)
-
-CROS_WORKON_DESTDIR=(
-	"${S}/platform/ec"
-	"${S}/third_party/tpm2"
-	"${S}/third_party/cryptoc"
-)
-
-CROS_WORKON_EGIT_BRANCH=(
-	"firmware-fpmcu-bloonchipper-release"
-	"master"
-	"master"
-)
-
-inherit cros-workon cros-ec-release
-
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md"
-LICENSE="BSD-Google"
-KEYWORDS="*"
diff --git a/sys-firmware/chromeos-fpmcu-release-bloonchipper/chromeos-fpmcu-release-bloonchipper-0.0.1-r55.ebuild b/sys-firmware/chromeos-fpmcu-release-bloonchipper/chromeos-fpmcu-release-bloonchipper-0.0.1-r55.ebuild
new file mode 100644
index 0000000..dc07bb2
--- /dev/null
+++ b/sys-firmware/chromeos-fpmcu-release-bloonchipper/chromeos-fpmcu-release-bloonchipper-0.0.1-r55.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+# Increment the "eclass bug workaround count" below when you change
+# "cros-ec-release.eclass" to work around http://crbug.com/220902.
+#
+# eclass bug workaround count: 4
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("87ebfe5f6aee4f88a58851f0cda5ef4f8fab53ed" "89e0c94916b4874f72074c40521f67e3ca90e42d" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
+CROS_WORKON_TREE=("cc86e13c5ceccafd485c6aaba4ede227c01b0f16" "2159375e60a21a4f4cd6da052dcc95a4a0dec15d" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
+FIRMWARE_EC_BOARD="bloonchipper"
+FIRMWARE_EC_RELEASE_REPLACE_RO="yes"
+
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform/ec"
+	"chromiumos/third_party/tpm2"
+	"chromiumos/third_party/cryptoc"
+)
+
+CROS_WORKON_LOCALNAME=(
+	"../platform/release-firmware/fpmcu-bloonchipper"
+	"tpm2"
+	"cryptoc"
+)
+
+CROS_WORKON_DESTDIR=(
+	"${S}/platform/ec"
+	"${S}/third_party/tpm2"
+	"${S}/third_party/cryptoc"
+)
+
+CROS_WORKON_EGIT_BRANCH=(
+	"firmware-fpmcu-bloonchipper-release"
+	"master"
+	"master"
+)
+
+inherit cros-workon cros-ec-release
+
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md"
+LICENSE="BSD-Google"
+KEYWORDS="*"
diff --git a/sys-firmware/chromeos-fpmcu-release-bloonchipper/chromeos-fpmcu-release-bloonchipper-9999.ebuild b/sys-firmware/chromeos-fpmcu-release-bloonchipper/chromeos-fpmcu-release-bloonchipper-9999.ebuild
index 631a914..62b0a8b 100644
--- a/sys-firmware/chromeos-fpmcu-release-bloonchipper/chromeos-fpmcu-release-bloonchipper-9999.ebuild
+++ b/sys-firmware/chromeos-fpmcu-release-bloonchipper/chromeos-fpmcu-release-bloonchipper-9999.ebuild
@@ -4,7 +4,7 @@
 # Increment the "eclass bug workaround count" below when you change
 # "cros-ec-release.eclass" to work around http://crbug.com/220902.
 #
-# eclass bug workaround count: 3
+# eclass bug workaround count: 4
 
 EAPI=7
 
diff --git a/sys-firmware/chromeos-fpmcu-release-dartmonkey/chromeos-fpmcu-release-dartmonkey-0.0.1-r37.ebuild b/sys-firmware/chromeos-fpmcu-release-dartmonkey/chromeos-fpmcu-release-dartmonkey-0.0.1-r37.ebuild
deleted file mode 100644
index 1d8b4e7..0000000
--- a/sys-firmware/chromeos-fpmcu-release-dartmonkey/chromeos-fpmcu-release-dartmonkey-0.0.1-r37.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# Increment the "eclass bug workaround count" below when you change
-# "cros-ec-release.eclass" to work around http://crbug.com/220902.
-#
-# eclass bug workaround count: 3
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("8b63078abb67d76366cd3e01b077188bbcdb20a9" "37335af9c5488ed349271a8ba9ff209c940a5e2c" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
-CROS_WORKON_TREE=("c58fb6b1d5dcbcdf2a513e88558e47031f0ae606" "679fa8b14bd105ad9959a0f82eaa928d5b18890d" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
-FIRMWARE_EC_BOARD="dartmonkey"
-FIRMWARE_EC_RELEASE_REPLACE_RO="yes"
-
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform/ec"
-	"chromiumos/third_party/tpm2"
-	"chromiumos/third_party/cryptoc"
-)
-
-CROS_WORKON_LOCALNAME=(
-	"../platform/release-firmware/fpmcu-dartmonkey"
-	"tpm2"
-	"cryptoc"
-)
-
-CROS_WORKON_DESTDIR=(
-	"${S}/platform/ec"
-	"${S}/third_party/tpm2"
-	"${S}/third_party/cryptoc"
-)
-
-CROS_WORKON_EGIT_BRANCH=(
-	"firmware-fpmcu-dartmonkey-release"
-	"master"
-	"master"
-)
-
-inherit cros-workon cros-ec-release
-
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md"
-LICENSE="BSD-Google"
-KEYWORDS="*"
diff --git a/sys-firmware/chromeos-fpmcu-release-dartmonkey/chromeos-fpmcu-release-dartmonkey-0.0.1-r44.ebuild b/sys-firmware/chromeos-fpmcu-release-dartmonkey/chromeos-fpmcu-release-dartmonkey-0.0.1-r44.ebuild
new file mode 100644
index 0000000..9ca1edf
--- /dev/null
+++ b/sys-firmware/chromeos-fpmcu-release-dartmonkey/chromeos-fpmcu-release-dartmonkey-0.0.1-r44.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+# Increment the "eclass bug workaround count" below when you change
+# "cros-ec-release.eclass" to work around http://crbug.com/220902.
+#
+# eclass bug workaround count: 4
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("eecc138183ae7ef8545e9871ff5e6c5c41862dcc" "89e0c94916b4874f72074c40521f67e3ca90e42d" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
+CROS_WORKON_TREE=("cc86e13c5ceccafd485c6aaba4ede227c01b0f16" "2159375e60a21a4f4cd6da052dcc95a4a0dec15d" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
+FIRMWARE_EC_BOARD="dartmonkey"
+FIRMWARE_EC_RELEASE_REPLACE_RO="yes"
+
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform/ec"
+	"chromiumos/third_party/tpm2"
+	"chromiumos/third_party/cryptoc"
+)
+
+CROS_WORKON_LOCALNAME=(
+	"../platform/release-firmware/fpmcu-dartmonkey"
+	"tpm2"
+	"cryptoc"
+)
+
+CROS_WORKON_DESTDIR=(
+	"${S}/platform/ec"
+	"${S}/third_party/tpm2"
+	"${S}/third_party/cryptoc"
+)
+
+CROS_WORKON_EGIT_BRANCH=(
+	"firmware-fpmcu-dartmonkey-release"
+	"master"
+	"master"
+)
+
+inherit cros-workon cros-ec-release
+
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md"
+LICENSE="BSD-Google"
+KEYWORDS="*"
diff --git a/sys-firmware/chromeos-fpmcu-release-dartmonkey/chromeos-fpmcu-release-dartmonkey-9999.ebuild b/sys-firmware/chromeos-fpmcu-release-dartmonkey/chromeos-fpmcu-release-dartmonkey-9999.ebuild
index fb86ce8..cd686be 100644
--- a/sys-firmware/chromeos-fpmcu-release-dartmonkey/chromeos-fpmcu-release-dartmonkey-9999.ebuild
+++ b/sys-firmware/chromeos-fpmcu-release-dartmonkey/chromeos-fpmcu-release-dartmonkey-9999.ebuild
@@ -4,7 +4,7 @@
 # Increment the "eclass bug workaround count" below when you change
 # "cros-ec-release.eclass" to work around http://crbug.com/220902.
 #
-# eclass bug workaround count: 3
+# eclass bug workaround count: 4
 
 EAPI=7
 
diff --git a/sys-firmware/chromeos-fpmcu-release-nami/chromeos-fpmcu-release-nami-0.0.1-r36.ebuild b/sys-firmware/chromeos-fpmcu-release-nami/chromeos-fpmcu-release-nami-0.0.1-r36.ebuild
deleted file mode 100644
index 3f89046..0000000
--- a/sys-firmware/chromeos-fpmcu-release-nami/chromeos-fpmcu-release-nami-0.0.1-r36.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# Increment the "eclass bug workaround count" below when you change
-# "cros-ec-release.eclass" to work around http://crbug.com/220902.
-#
-# eclass bug workaround count: 3
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("8b63078abb67d76366cd3e01b077188bbcdb20a9" "37335af9c5488ed349271a8ba9ff209c940a5e2c" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
-CROS_WORKON_TREE=("c58fb6b1d5dcbcdf2a513e88558e47031f0ae606" "679fa8b14bd105ad9959a0f82eaa928d5b18890d" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
-FIRMWARE_EC_BOARD="nami_fp"
-FIRMWARE_EC_RELEASE_REPLACE_RO="yes"
-
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform/ec"
-	"chromiumos/third_party/tpm2"
-	"chromiumos/third_party/cryptoc"
-)
-
-CROS_WORKON_LOCALNAME=(
-	"../platform/release-firmware/fpmcu-nami"
-	"tpm2"
-	"cryptoc"
-)
-
-CROS_WORKON_DESTDIR=(
-	"${S}/platform/ec"
-	"${S}/third_party/tpm2"
-	"${S}/third_party/cryptoc"
-)
-
-CROS_WORKON_EGIT_BRANCH=(
-	"firmware-fpmcu-dartmonkey-release"
-	"master"
-	"master"
-)
-
-inherit cros-workon cros-ec-release
-
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md"
-LICENSE="BSD-Google"
-KEYWORDS="*"
diff --git a/sys-firmware/chromeos-fpmcu-release-nami/chromeos-fpmcu-release-nami-0.0.1-r43.ebuild b/sys-firmware/chromeos-fpmcu-release-nami/chromeos-fpmcu-release-nami-0.0.1-r43.ebuild
new file mode 100644
index 0000000..e9ccaad
--- /dev/null
+++ b/sys-firmware/chromeos-fpmcu-release-nami/chromeos-fpmcu-release-nami-0.0.1-r43.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+# Increment the "eclass bug workaround count" below when you change
+# "cros-ec-release.eclass" to work around http://crbug.com/220902.
+#
+# eclass bug workaround count: 4
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("eecc138183ae7ef8545e9871ff5e6c5c41862dcc" "89e0c94916b4874f72074c40521f67e3ca90e42d" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
+CROS_WORKON_TREE=("cc86e13c5ceccafd485c6aaba4ede227c01b0f16" "2159375e60a21a4f4cd6da052dcc95a4a0dec15d" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
+FIRMWARE_EC_BOARD="nami_fp"
+FIRMWARE_EC_RELEASE_REPLACE_RO="yes"
+
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform/ec"
+	"chromiumos/third_party/tpm2"
+	"chromiumos/third_party/cryptoc"
+)
+
+CROS_WORKON_LOCALNAME=(
+	"../platform/release-firmware/fpmcu-nami"
+	"tpm2"
+	"cryptoc"
+)
+
+CROS_WORKON_DESTDIR=(
+	"${S}/platform/ec"
+	"${S}/third_party/tpm2"
+	"${S}/third_party/cryptoc"
+)
+
+CROS_WORKON_EGIT_BRANCH=(
+	"firmware-fpmcu-dartmonkey-release"
+	"master"
+	"master"
+)
+
+inherit cros-workon cros-ec-release
+
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md"
+LICENSE="BSD-Google"
+KEYWORDS="*"
diff --git a/sys-firmware/chromeos-fpmcu-release-nami/chromeos-fpmcu-release-nami-9999.ebuild b/sys-firmware/chromeos-fpmcu-release-nami/chromeos-fpmcu-release-nami-9999.ebuild
index 0b2599e..bf875db 100644
--- a/sys-firmware/chromeos-fpmcu-release-nami/chromeos-fpmcu-release-nami-9999.ebuild
+++ b/sys-firmware/chromeos-fpmcu-release-nami/chromeos-fpmcu-release-nami-9999.ebuild
@@ -4,7 +4,7 @@
 # Increment the "eclass bug workaround count" below when you change
 # "cros-ec-release.eclass" to work around http://crbug.com/220902.
 #
-# eclass bug workaround count: 3
+# eclass bug workaround count: 4
 
 EAPI=7
 
diff --git a/sys-firmware/chromeos-fpmcu-release-nocturne/chromeos-fpmcu-release-nocturne-0.0.1-r36.ebuild b/sys-firmware/chromeos-fpmcu-release-nocturne/chromeos-fpmcu-release-nocturne-0.0.1-r36.ebuild
deleted file mode 100644
index cce54e6..0000000
--- a/sys-firmware/chromeos-fpmcu-release-nocturne/chromeos-fpmcu-release-nocturne-0.0.1-r36.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-# Increment the "eclass bug workaround count" below when you change
-# "cros-ec-release.eclass" to work around http://crbug.com/220902.
-#
-# eclass bug workaround count: 3
-
-EAPI=7
-
-CROS_WORKON_COMMIT=("8b63078abb67d76366cd3e01b077188bbcdb20a9" "37335af9c5488ed349271a8ba9ff209c940a5e2c" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
-CROS_WORKON_TREE=("c58fb6b1d5dcbcdf2a513e88558e47031f0ae606" "679fa8b14bd105ad9959a0f82eaa928d5b18890d" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
-FIRMWARE_EC_BOARD="nocturne_fp"
-FIRMWARE_EC_RELEASE_REPLACE_RO="yes"
-
-CROS_WORKON_PROJECT=(
-	"chromiumos/platform/ec"
-	"chromiumos/third_party/tpm2"
-	"chromiumos/third_party/cryptoc"
-)
-
-CROS_WORKON_LOCALNAME=(
-	"../platform/release-firmware/fpmcu-nocturne"
-	"tpm2"
-	"cryptoc"
-)
-
-CROS_WORKON_DESTDIR=(
-	"${S}/platform/ec"
-	"${S}/third_party/tpm2"
-	"${S}/third_party/cryptoc"
-)
-
-CROS_WORKON_EGIT_BRANCH=(
-	"firmware-fpmcu-dartmonkey-release"
-	"master"
-	"master"
-)
-
-inherit cros-workon cros-ec-release
-
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md"
-LICENSE="BSD-Google"
-KEYWORDS="*"
diff --git a/sys-firmware/chromeos-fpmcu-release-nocturne/chromeos-fpmcu-release-nocturne-0.0.1-r43.ebuild b/sys-firmware/chromeos-fpmcu-release-nocturne/chromeos-fpmcu-release-nocturne-0.0.1-r43.ebuild
new file mode 100644
index 0000000..19e5b96
--- /dev/null
+++ b/sys-firmware/chromeos-fpmcu-release-nocturne/chromeos-fpmcu-release-nocturne-0.0.1-r43.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+# Increment the "eclass bug workaround count" below when you change
+# "cros-ec-release.eclass" to work around http://crbug.com/220902.
+#
+# eclass bug workaround count: 4
+
+EAPI=7
+
+CROS_WORKON_COMMIT=("eecc138183ae7ef8545e9871ff5e6c5c41862dcc" "89e0c94916b4874f72074c40521f67e3ca90e42d" "3830fffbc5c5205bb8fb1b9f366fe44559923592")
+CROS_WORKON_TREE=("cc86e13c5ceccafd485c6aaba4ede227c01b0f16" "2159375e60a21a4f4cd6da052dcc95a4a0dec15d" "f3d026c790bd3d7121bb96ed2a4932360d698a73")
+FIRMWARE_EC_BOARD="nocturne_fp"
+FIRMWARE_EC_RELEASE_REPLACE_RO="yes"
+
+CROS_WORKON_PROJECT=(
+	"chromiumos/platform/ec"
+	"chromiumos/third_party/tpm2"
+	"chromiumos/third_party/cryptoc"
+)
+
+CROS_WORKON_LOCALNAME=(
+	"../platform/release-firmware/fpmcu-nocturne"
+	"tpm2"
+	"cryptoc"
+)
+
+CROS_WORKON_DESTDIR=(
+	"${S}/platform/ec"
+	"${S}/third_party/tpm2"
+	"${S}/third_party/cryptoc"
+)
+
+CROS_WORKON_EGIT_BRANCH=(
+	"firmware-fpmcu-dartmonkey-release"
+	"master"
+	"master"
+)
+
+inherit cros-workon cros-ec-release
+
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/ec/+/master/README.md"
+LICENSE="BSD-Google"
+KEYWORDS="*"
diff --git a/sys-firmware/chromeos-fpmcu-release-nocturne/chromeos-fpmcu-release-nocturne-9999.ebuild b/sys-firmware/chromeos-fpmcu-release-nocturne/chromeos-fpmcu-release-nocturne-9999.ebuild
index d037cfc..2ca7590 100644
--- a/sys-firmware/chromeos-fpmcu-release-nocturne/chromeos-fpmcu-release-nocturne-9999.ebuild
+++ b/sys-firmware/chromeos-fpmcu-release-nocturne/chromeos-fpmcu-release-nocturne-9999.ebuild
@@ -4,7 +4,7 @@
 # Increment the "eclass bug workaround count" below when you change
 # "cros-ec-release.eclass" to work around http://crbug.com/220902.
 #
-# eclass bug workaround count: 3
+# eclass bug workaround count: 4
 
 EAPI=7
 
diff --git a/sys-firmware/fw-engprod-tools/fw-engprod-tools-0.0.1-r58.ebuild b/sys-firmware/fw-engprod-tools/fw-engprod-tools-0.0.1-r58.ebuild
deleted file mode 100644
index 4f90924..0000000
--- a/sys-firmware/fw-engprod-tools/fw-engprod-tools-0.0.1-r58.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-CROS_WORKON_COMMIT="fd9120658cb5253b7feffa8903742a367ed7571c"
-CROS_WORKON_TREE="b2f14f8919270f945f2fe0a397e2de5b19eecac8"
-CROS_WORKON_PROJECT="chromiumos/platform/crostestutils"
-CROS_WORKON_LOCALNAME="../platform/crostestutils"
-
-CROS_GO_WORKSPACE="${S}/go"
-CROS_GO_BINARIES=(
-	"firmware/cmd/dut_info:/usr/bin/fw_dut_info"
-	"firmware/cmd/e2e_coverage_summarizer:/usr/bin/fw_e2e_coverage_summarizer"
-	"firmware/cmd/lab_triage_helper:/usr/bin/fw_lab_triage_helper"
-)
-
-inherit cros-go cros-workon
-
-DESCRIPTION="Tooling related to firmware release testing."
-HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crostestutils/+/HEAD/go/src/firmware/"
-
-LICENSE="BSD-Google"
-SLOT="0/0"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="
-	dev-go/crypto:=
-	dev-go/gapi-discovery:=
-	dev-go/gapi-option:="
-RDEPEND=""
diff --git a/sys-firmware/fw-engprod-tools/fw-engprod-tools-0.0.1-r65.ebuild b/sys-firmware/fw-engprod-tools/fw-engprod-tools-0.0.1-r65.ebuild
new file mode 100644
index 0000000..3e27c43
--- /dev/null
+++ b/sys-firmware/fw-engprod-tools/fw-engprod-tools-0.0.1-r65.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+CROS_WORKON_COMMIT="0515327957ce2c1a4d816ed0a68bbdcdddb3d026"
+CROS_WORKON_TREE="4e37e73d8386a092c04f41a1258e97f8df30d235"
+CROS_WORKON_PROJECT="chromiumos/platform/crostestutils"
+CROS_WORKON_LOCALNAME="../platform/crostestutils"
+
+CROS_GO_WORKSPACE="${S}/go"
+CROS_GO_BINARIES=(
+	"firmware/cmd/dut_info:/usr/bin/fw_dut_info"
+	"firmware/cmd/e2e_coverage_summarizer:/usr/bin/fw_e2e_coverage_summarizer"
+	"firmware/cmd/lab_triage_helper:/usr/bin/fw_lab_triage_helper"
+)
+
+inherit cros-go cros-workon
+
+DESCRIPTION="Tooling related to firmware release testing."
+HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform/crostestutils/+/HEAD/go/src/firmware/"
+
+LICENSE="BSD-Google"
+SLOT="0/0"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND="
+	dev-go/crypto:=
+	dev-go/gapi-discovery:=
+	dev-go/gapi-option:="
+RDEPEND=""
diff --git a/sys-firmware/mmc-firmware/Manifest b/sys-firmware/mmc-firmware/Manifest
new file mode 100644
index 0000000..95dcfdc
--- /dev/null
+++ b/sys-firmware/mmc-firmware/Manifest
@@ -0,0 +1 @@
+DIST ee85c8b40e538cd41ecbdd0d10ef7ef6f48c12eddffe1c934c988ef8f77f375e-MCEM131.cab 887940 BLAKE2B 029c34a4faf35245214b46ecb26b134e9718e6f2014061cb5c0919fa544be4e807a90057801a36ee5d28851427ef7938143ce1b432562819521ad453abb07acd SHA512 df1fd99ead3752052fa51dca20111425dc5312cbe3d32b8ee83eccc5b9f6bc3973287f2837519e1d363b16fa545d493c32077d32fc97f5522c649e10c9ebaa29
diff --git a/sys-firmware/mmc-firmware/OWNERS b/sys-firmware/mmc-firmware/OWNERS
new file mode 100644
index 0000000..b2babf7
--- /dev/null
+++ b/sys-firmware/mmc-firmware/OWNERS
@@ -0,0 +1,3 @@
+campello@chromium.org
+bleung@chromium.org
+dlunev@chromium.org
diff --git a/sys-firmware/mmc-firmware/files/91-fwupdtool-wdc-firmware.rules b/sys-firmware/mmc-firmware/files/91-fwupdtool-wdc-firmware.rules
new file mode 100644
index 0000000..a2e7f39
--- /dev/null
+++ b/sys-firmware/mmc-firmware/files/91-fwupdtool-wdc-firmware.rules
@@ -0,0 +1,25 @@
+# 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.
+
+ACTION!="add", GOTO="emmc_fw_end"
+SUBSYSTEM!="block", GOTO="emmc_fw_end"
+KERNEL!="mmcblk[0-9]", GOTO="emmc_fw_end"
+ATTRS{manfid}!="0x000045", GOTO="emmc_fw_end"
+
+# DA4032 @ QS1.0|QS1.0D|QS1.1D
+ATTRS{name}=="DA4032", \
+ATTRS{fwrev}=="0x3536323330613137|0x3637303330363138|0x3739323330363138", \
+RUN+="/sbin/initctl emit fwupdtool-update PLUGIN=emmc GUID=5500994c-1b73-52b4-acf4-bb574b6f3029"
+
+# DA4064 @ QS1.0|QS1.0D|QS1.1D
+ATTRS{name}=="DA4064", \
+ATTRS{fwrev}=="0x3536323330613137|0x3637303330363138|0x3739323330363138", \
+RUN+="/sbin/initctl emit fwupdtool-update PLUGIN=emmc GUID=f2e60d79-dc6c-519c-babb-95e68d6d5f16"
+
+# DA4128 @ QS1.0|QS1.0D|QS1.1D
+ATTRS{name}=="DA4128", \
+ATTRS{fwrev}=="0x3536323330613137|0x3637303330363138|0x3739323330363138", \
+RUN+="/sbin/initctl emit fwupdtool-update PLUGIN=emmc GUID=4fc1a707-0290-53f8-aa18-2f2d0e1f4627"
+
+LABEL="emmc_fw_end"
diff --git a/sys-firmware/mmc-firmware/metadata.xml b/sys-firmware/mmc-firmware/metadata.xml
new file mode 100644
index 0000000..93cb7e8
--- /dev/null
+++ b/sys-firmware/mmc-firmware/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type='project'>
+		<email>chromium-os-dev@chromium.org</email>
+		<name>Maintained by The Chromium OS Authors.</name>
+	</maintainer>
+	<longdescription>
+		Installs eMMC firmware update files used by fwupd.
+	</longdescription>
+</pkgmetadata>
diff --git a/sys-firmware/mmc-firmware/mmc-firmware-0.0.1-r1.ebuild b/sys-firmware/mmc-firmware/mmc-firmware-0.0.1-r1.ebuild
new file mode 100644
index 0000000..95c6cdf
--- /dev/null
+++ b/sys-firmware/mmc-firmware/mmc-firmware-0.0.1-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
+# the canonical empty project.
+CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
+CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="../platform/empty-project"
+
+inherit cros-workon cros-fwupd
+
+DESCRIPTION="Installs eMMC firmware update files used by fwupd."
+HOMEPAGE="https://fwupd.org/downloads"
+
+KEYWORDS="*"
+
+FILENAMES=(
+	"ee85c8b40e538cd41ecbdd0d10ef7ef6f48c12eddffe1c934c988ef8f77f375e-MCEM131.cab"
+)
+SRC_URI="${FILENAMES[*]/#/${CROS_FWUPD_URL}/}"
+LICENSE="LVFS-Vendor-Agreement-v1"
+
+DEPEND=""
+RDEPEND="sys-apps/fwupd"
diff --git a/sys-firmware/mmc-firmware/mmc-firmware-9999.ebuild b/sys-firmware/mmc-firmware/mmc-firmware-9999.ebuild
new file mode 100644
index 0000000..875a817
--- /dev/null
+++ b/sys-firmware/mmc-firmware/mmc-firmware-9999.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
+# the canonical empty project.
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="../platform/empty-project"
+
+inherit cros-workon cros-fwupd
+
+DESCRIPTION="Installs eMMC firmware update files used by fwupd."
+HOMEPAGE="https://fwupd.org/downloads"
+
+KEYWORDS="~*"
+
+FILENAMES=(
+	"ee85c8b40e538cd41ecbdd0d10ef7ef6f48c12eddffe1c934c988ef8f77f375e-MCEM131.cab"
+)
+SRC_URI="${FILENAMES[*]/#/${CROS_FWUPD_URL}/}"
+LICENSE="LVFS-Vendor-Agreement-v1"
+
+DEPEND=""
+RDEPEND="sys-apps/fwupd"
diff --git a/sys-firmware/parade-ps8705a2-firmware/parade-ps8705a2-firmware-2.ebuild b/sys-firmware/parade-ps8705a2-firmware/parade-ps8705a2-firmware-2.ebuild
index 21e6ca9..6057577 100644
--- a/sys-firmware/parade-ps8705a2-firmware/parade-ps8705a2-firmware-2.ebuild
+++ b/sys-firmware/parade-ps8705a2-firmware/parade-ps8705a2-firmware-2.ebuild
@@ -34,7 +34,7 @@
 	local bf=ps8705_a2.bin
 	local hf=ps8705_a2.hash
 
-	printf '0xa2 0x%02x' "${fw_rev_hex}" | xxd -r > "${hf}"
+	printf '0xa2 0x%02x' "${PV}" | xxd -r > "${hf}"
 	insinto /firmware/ps8705
 	newins "${hf}" "${hf}"
 	newins "${P}/ps8705_a2_0x${fw_rev_hex}.bin" "${bf}"
diff --git a/sys-firmware/parade-ps8755a2-firmware/Manifest b/sys-firmware/parade-ps8755a2-firmware/Manifest
index 0d951ff..4a42942 100644
--- a/sys-firmware/parade-ps8755a2-firmware/Manifest
+++ b/sys-firmware/parade-ps8755a2-firmware/Manifest
@@ -1,2 +1,4 @@
 DIST parade-ps8755a2-firmware-2.tar.xz 3180 BLAKE2B efa21858b947e333c6c2e5a66afa977683da85fdd3538d21ccbf8b51ecbe0cd6855fb988179b7ababd02c5998b075c235171617001e394e372795284c267163c SHA512 b254991a35a7c15c1d16064a46dea07ec4fa36b66badf203761b307381fc2ae063233e15b8500e676c47fb239e102e836279ab00004ed00b851b316f29ef4ec8
 DIST parade-ps8755a2-firmware-3.tar.xz 3252 BLAKE2B 8e7c36a2965896731df6fa6939a3de8ee1395f782196fb9612a79621a41882338b756b442e614c872647d69a9faa1994abe0ec2fed060579da9a3d6ee2f77be3 SHA512 92e81e84ff24e0f9399ce189792aab2c76f6c371c365c55f9a7300c276a879d8a86caaabc5f6f0ecc18475b98f17b1c5b3ec5f13e57cc422dab3b666561ae2cb
+DIST parade-ps8755a2-firmware-7.tar.xz 3336 BLAKE2B a3e325287666742bd4c877f3866696e24723bdd442600f8ba794be90f3aae22c30fb446c17e506b76da2a1b2bbbd01bbe2ccf8fc9d9ec0b89c5d5c661652a17c SHA512 afd289f30cddea5ef28b21c3b0a49983bd4186e4d20f6d189184794c50ad5f72a194b0297227f060475b3b2e50d5ede801d2c74c1b6774ed65aa475847ecc129
+DIST parade-ps8755a2-firmware-8.tar.xz 3396 BLAKE2B d44ef7c5d8b33a6b39ebcf798cd5a3da3b6a8e186d40d1688426b8a0260344dc340797164daff9a782cbd55459e0dc1a83af8b03ecdea599e9ff3f32aa22e3e4 SHA512 928b8981cb2d283b1d0c4087b5aec9b733f8467903189a2a82e7ac7cc27c9dd8c0bd49a1bf232ba01d4122c8c36d9cf3be76395c62995d94359936736a396ad6
diff --git a/sys-firmware/parade-ps8755a2-firmware/parade-ps8755a2-firmware-2.ebuild b/sys-firmware/parade-ps8755a2-firmware/parade-ps8755a2-firmware-2.ebuild
index 3e4d963..4373c54 100644
--- a/sys-firmware/parade-ps8755a2-firmware/parade-ps8755a2-firmware-2.ebuild
+++ b/sys-firmware/parade-ps8755a2-firmware/parade-ps8755a2-firmware-2.ebuild
@@ -34,7 +34,7 @@
 	local bf=ps8755_a2.bin
 	local hf=ps8755_a2.hash
 
-	printf '0xa2 0x%02x' "${fw_rev_hex}" | xxd -r > "${hf}"
+	printf '0xa2 0x%02x' "${PV}" | xxd -r > "${hf}"
 	insinto /firmware/ps8755
 	newins "${hf}" "${hf}"
 	newins "${P}/ps8755_a2_0x${fw_rev_hex}.bin" "${bf}"
diff --git a/sys-firmware/parade-ps8755a2-firmware/parade-ps8755a2-firmware-7-r1.ebuild b/sys-firmware/parade-ps8755a2-firmware/parade-ps8755a2-firmware-7-r1.ebuild
new file mode 120000
index 0000000..32f2a59
--- /dev/null
+++ b/sys-firmware/parade-ps8755a2-firmware/parade-ps8755a2-firmware-7-r1.ebuild
@@ -0,0 +1 @@
+parade-ps8755a2-firmware-2.ebuild
\ No newline at end of file
diff --git a/sys-firmware/parade-ps8755a2-firmware/parade-ps8755a2-firmware-8-r2.ebuild b/sys-firmware/parade-ps8755a2-firmware/parade-ps8755a2-firmware-8-r2.ebuild
new file mode 120000
index 0000000..32f2a59
--- /dev/null
+++ b/sys-firmware/parade-ps8755a2-firmware/parade-ps8755a2-firmware-8-r2.ebuild
@@ -0,0 +1 @@
+parade-ps8755a2-firmware-2.ebuild
\ No newline at end of file
diff --git a/sys-firmware/parade-ps8805a3-firmware/Manifest b/sys-firmware/parade-ps8805a3-firmware/Manifest
new file mode 100644
index 0000000..27136fa
--- /dev/null
+++ b/sys-firmware/parade-ps8805a3-firmware/Manifest
@@ -0,0 +1 @@
+DIST parade-ps8805a3-firmware-22.tar.xz 3392 BLAKE2B a2d6f364d2620d768c969eeaf5930718348c2b38c8e5ce0a2f4ab507c80f57ff9378b974988e33f634096f1b5260d2a7e3392fcf8a543a76c18894846c6605fb SHA512 fc28e94c8b341ac47eb916282b7eec67a4a31f6e7f380698bb4c4f8767fa88ca7a048406f1ab7e06ffd28e5491d7bf2e1fd00f3785ae04aacc400b8a6b14bd52
diff --git a/sys-firmware/parade-ps8805a3-firmware/OWNERS b/sys-firmware/parade-ps8805a3-firmware/OWNERS
new file mode 100644
index 0000000..c2045c4
--- /dev/null
+++ b/sys-firmware/parade-ps8805a3-firmware/OWNERS
@@ -0,0 +1 @@
+include ../OWNERS
diff --git a/sys-firmware/parade-ps8805a3-firmware/parade-ps8805a3-firmware-22.ebuild b/sys-firmware/parade-ps8805a3-firmware/parade-ps8805a3-firmware-22.ebuild
new file mode 100644
index 0000000..281e00e
--- /dev/null
+++ b/sys-firmware/parade-ps8805a3-firmware/parade-ps8805a3-firmware-22.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="PS8805-A3 Firmware Binary"
+SRC_URI="gs://chromeos-localmirror/distfiles/${P}.tar.xz"
+
+LICENSE="Google-Partners-Website"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+S="${WORKDIR}"
+
+# Here are the steps to uprev the PS8805 firmware.
+#
+# 1) Unzip the .zip file emailed from the vendor.
+# 2) Convert from hex to bin.
+#    ex: objcopy -I ihex --output-target=binary PS8805_FW_0x0C_20180810_A3.hex \
+#          parade-ps8805a3-firmware-12/ps8805_a3_0x0c.bin
+# 3) Tarball it up using XZ, including the right directory.
+#    ex: tar -cJf parade-ps8805a3-firmware-12.tar.xz \
+#          parade-ps8805a3-firmware-12/ps8805_a3_0x0c.bin
+# 4) Then upload it at https://pantheon.corp.google.com/storage/browser/chromeos-localmirror/distfiles
+# 5) On the uploaded file, click the three-dot-menu, "Edit Permissions", and
+#    add a new User "allUsers" with Reader permission.
+# 6) Finally run `ebuild parade-ps8805a3-firmware-22.ebuild manifest`
+
+src_install() {
+	local fw_rev_hex=$(printf '%02x' "${PV}")
+	local bf=ps8805_a3.bin
+	local hf=ps8805_a3.hash
+
+	printf "\\xa3\\x${fw_rev_hex}" > "${hf}"
+	insinto /firmware/ps8805
+	newins "${hf}" "${hf}"
+	newins "${P}/ps8805_a3_0x${fw_rev_hex}.bin" "${bf}"
+}
diff --git a/sys-firmware/parade-ps8815a2-firmware/Manifest b/sys-firmware/parade-ps8815a2-firmware/Manifest
index f7b4f74..59ff4de 100644
--- a/sys-firmware/parade-ps8815a2-firmware/Manifest
+++ b/sys-firmware/parade-ps8815a2-firmware/Manifest
@@ -1 +1,4 @@
 DIST parade-ps8815a2-firmware-19.tar.xz 3976 BLAKE2B 30736559d6bd3790d5c8d6f62d1fa8cf3d6377c751959b3de2fabde202179e0e76f14c9e368659f96f6e319c758d2efd306b304cdbe5696bf09d0d66caba687f SHA512 303aa167fd160428f37c4219ad5f8434353a76af962ffec3673a61d367b4dc92e28983dd0bac4d3cd52dfb0d323fae992141673be7caba869c7058258cc9ec8a
+DIST parade-ps8815a2-firmware-32.tar.xz 3976 BLAKE2B b99acdaf58bdc0ab14312e585e98faeabcba262f96080390dfead4db399984410c81e6a364c58e8de3c480b00746f653ed9f8128912646e05f488f90b9be0f94 SHA512 554c34144b3912b5dc64b51e6f58cad283b09e8830fa44f27cca46f9765ab181d646ffe1864cf9e017a0e53589d0cc89d38ee89a1d6648bd5fa403c191120caa
+DIST parade-ps8815a2-firmware-34.tar.xz 4280 BLAKE2B e7774dd91c89124ac9dcb979c9b287f023ceeba81baff028b24e0a37dc001d9d8806e6bd93bd3829f8a4c6f30e1fbc84b0eb406b1c2b61297238b97f32846d6c SHA512 2790f3f6780fd012c8fa49cea342e324b3642c03267d58f5c8126877251839da441c522b6f37b42df8d8fc57ac76c9f4f3df05c5a40c85c5b5fdd971e9a66186
+DIST parade-ps8815a2-firmware-35.tar.xz 4132 BLAKE2B 084ad886ac16631e1f03f7463d9c5877f6e713b8a6a8d94171732a373dd5687657d67c4d98dc815a1f0f09a41aee2210c07c261b4885f3e435b3865c858236e6 SHA512 6bc86a0a171cf1485023435cc1b35a1308434e24fd0a99719342d713d2fec2ae3832d81d7effdb77b0b09f3c9144c46f7a5c9aa6a8cee28497d73d8d439b9d0d
diff --git a/sys-firmware/parade-ps8815a2-firmware/parade-ps8815a2-firmware-32-r1.ebuild b/sys-firmware/parade-ps8815a2-firmware/parade-ps8815a2-firmware-32-r1.ebuild
new file mode 120000
index 0000000..60f102d
--- /dev/null
+++ b/sys-firmware/parade-ps8815a2-firmware/parade-ps8815a2-firmware-32-r1.ebuild
@@ -0,0 +1 @@
+parade-ps8815a2-firmware-19.ebuild
\ No newline at end of file
diff --git a/sys-firmware/parade-ps8815a2-firmware/parade-ps8815a2-firmware-34-r1.ebuild b/sys-firmware/parade-ps8815a2-firmware/parade-ps8815a2-firmware-34-r1.ebuild
new file mode 120000
index 0000000..60f102d
--- /dev/null
+++ b/sys-firmware/parade-ps8815a2-firmware/parade-ps8815a2-firmware-34-r1.ebuild
@@ -0,0 +1 @@
+parade-ps8815a2-firmware-19.ebuild
\ No newline at end of file
diff --git a/sys-firmware/parade-ps8815a2-firmware/parade-ps8815a2-firmware-35-r1.ebuild b/sys-firmware/parade-ps8815a2-firmware/parade-ps8815a2-firmware-35-r1.ebuild
new file mode 120000
index 0000000..60f102d
--- /dev/null
+++ b/sys-firmware/parade-ps8815a2-firmware/parade-ps8815a2-firmware-35-r1.ebuild
@@ -0,0 +1 @@
+parade-ps8815a2-firmware-19.ebuild
\ No newline at end of file
diff --git a/sys-fs/archivemount/Manifest b/sys-fs/archivemount/Manifest
deleted file mode 100644
index e8a4519..0000000
--- a/sys-fs/archivemount/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST archivemount-0.8.12.tar.gz 131934 BLAKE2B f4fda78f3f91fa2586795807ef616fd8eb67e224d99bcdfbd80ec59b851770a5c914c25786a183ce0dc9e8cf35b628ecd56bd35b181f2b51b4eb7f0bb727839c SHA512 4ce9e7ec8585b07d5bf48df41cc4a1b4ba7fe2268864ec70c445a6b9c21237f267a19814f00c5ef5a940a90ebaa47c9626aff1dbbff6fbb22e2c260da666ccd9
diff --git a/sys-fs/archivemount/archivemount-0.8.12-r2.ebuild b/sys-fs/archivemount/archivemount-0.8.12-r2.ebuild
deleted file mode 120000
index be04fbf..0000000
--- a/sys-fs/archivemount/archivemount-0.8.12-r2.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-archivemount-0.8.12.ebuild
\ No newline at end of file
diff --git a/sys-fs/archivemount/archivemount-0.8.12.ebuild b/sys-fs/archivemount/archivemount-0.8.12.ebuild
deleted file mode 100644
index 000a8ec..0000000
--- a/sys-fs/archivemount/archivemount-0.8.12.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools
-
-DESCRIPTION="Mount archives using libarchive and FUSE"
-HOMEPAGE="https://www.cybernoia.de/software/archivemount.html https://github.com/cybernoid/archivemount"
-SRC_URI="https://www.cybernoia.de/software/archivemount/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="*"
-
-RDEPEND="
-	app-arch/libarchive:=
-	sys-fs/fuse:0"
-DEPEND="${RDEPEND}"
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
-	"${FILESDIR}/archivemount-0.8.12-dev-fd.patch"
-	"${FILESDIR}/archivemount-0.8.12-raw-pathname.patch"
-)
-
-src_prepare() {
-	default
-
-	# https://bugs.gentoo.org/725998
-	sed -i -e 's/CFLAGS=//g' configure.ac || die
-	eautoreconf
-}
diff --git a/sys-fs/archivemount/files/archivemount-0.8.12-dev-fd.patch b/sys-fs/archivemount/files/archivemount-0.8.12-dev-fd.patch
deleted file mode 100644
index ed9d467..0000000
--- a/sys-fs/archivemount/files/archivemount-0.8.12-dev-fd.patch
+++ /dev/null
@@ -1,98 +0,0 @@
-commit 96249ce2fc4111e413c80c7462dac2477cd092bf
-Author: Nigel Tao <nigeltao@golang.org>
-Date:   Thu May 20 15:06:02 2021 +1000
-
-    Add support for /dev/fd/%u mountpoints
-    
-    The motivation follows libfuse's "Allow passing /dev/fuse file
-    descriptor from parent process" 2018 commit:
-    https://github.com/libfuse/libfuse/commit/64e11073b9347fcf9c6d1eea143763ba9e946f70
-    
-    Also remove a superfluous archive_entry_set_mode call that was (1)
-    mistakenly passing st_mtime instead of st_mode and (2) immediately
-    overwritten by a subsequent archive_entry_set_mode call. That
-    superfluous call / typo was introduced in 2006 by commit
-    5bd0d35ef8035edd0faefc018108c79c4950c025. It presumably never did
-    anything noticable, so we remove it instead of trying to fix it.
-
-diff --git a/archivemount.c b/archivemount.c
-index d6e200d..6342d7e 100755
---- a/archivemount.c
-+++ b/archivemount.c
-@@ -185,6 +185,21 @@ usage(const char *progname)
- 		"\n",progname);
- }
- 
-+// fuse_mnt_parse_fuse_fd was copied from libfuse's lib/mount_util.c.
-+static int //
-+fuse_mnt_parse_fuse_fd(const char *mountpoint)
-+{
-+	int fd = -1;
-+	int len = 0;
-+
-+	if (sscanf(mountpoint, "/dev/fd/%u%n", &fd, &len) == 1 &&
-+			len == strlen(mountpoint)) {
-+		return fd;
-+	}
-+
-+	return -1;
-+}
-+
- static struct fuse_operations ar_oper;
- 
- static int
-@@ -398,7 +413,7 @@ insert_by_path(NODE *root, NODE *node)
- }
- 
- static int
--build_tree(const char *mtpt)
-+build_tree(mode_t mtpt_mode)
- {
- 	struct archive *archive;
- 	struct stat st;
-@@ -480,11 +495,9 @@ build_tree(const char *mtpt)
- 	}
- 	archive_entry_set_gid(root->entry, getgid());
- 	archive_entry_set_uid(root->entry, getuid());
--	archive_entry_set_mode(root->entry, st.st_mtime);
- 	archive_entry_set_pathname(root->entry, "/");
- 	archive_entry_set_size(root->entry, st.st_size);
--	stat(mtpt, &st);
--	archive_entry_set_mode(root->entry, st.st_mode);
-+	archive_entry_set_mode(root->entry, mtpt_mode);
- 
- 	if ((cur = init_node()) == NULL) {
- 		return -ENOMEM;
-@@ -2742,6 +2755,7 @@ int
- main(int argc, char **argv)
- {
- 	struct stat st;
-+	mode_t mtpt_mode;
- 	int oldpwd;
- 	struct fuse_args args = FUSE_ARGS_INIT(argc, argv);
- 
-@@ -2765,7 +2779,14 @@ main(int argc, char **argv)
- 		perror("Error stat'ing mountpoint");
- 		exit(EXIT_FAILURE);
- 	}
--	if (! S_ISDIR(st.st_mode)) {
-+	/* Check that the mountpoint is either a /dev/fd/%u pre-mounted file
-+	 * descriptor or a directory on the file system. For a file descriptor,
-+	 * the build_tree function still expects mode bits whose file type
-+	 * satisfies S_ISDIR. */
-+	mtpt_mode = st.st_mode;
-+	if (fuse_mnt_parse_fuse_fd(mtpt) >= 0) {
-+		mtpt_mode = (mtpt_mode & ~S_IFMT) | S_IFDIR;
-+	} else if (! S_ISDIR(st.st_mode)) {
- 		fprintf(stderr, "Problem with mountpoint: %s\n",
- 			strerror(ENOTDIR));
- 		exit(EXIT_FAILURE);
-@@ -2789,7 +2810,7 @@ main(int argc, char **argv)
- 		perror("opening archive failed");
- 		return EXIT_FAILURE;
- 	}
--	if (build_tree(mtpt) != 0) {
-+	if (build_tree(mtpt_mode) != 0) {
- 		exit(EXIT_FAILURE);
- 	}
- 
diff --git a/sys-fs/archivemount/files/archivemount-0.8.12-raw-pathname.patch b/sys-fs/archivemount/files/archivemount-0.8.12-raw-pathname.patch
deleted file mode 100644
index e0c0f68..0000000
--- a/sys-fs/archivemount/files/archivemount-0.8.12-raw-pathname.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-commit d17ad6011d4235e7d8e20ea40699f6463fe828e7
-Author: Nigel Tao <nigeltao@golang.org>
-Date:   Sun Jun 20 22:20:23 2021 +1000
-
-    Honor raw archives' pathname
-    
-    Libarchive's default is "/data", per archive_read_format_raw_read_header
-    in libarchive/archive_read_support_format_raw.c, but some raw archives
-    provide their own pathname and libarchive passes that on since 2019:
-    https://github.com/libarchive/libarchive/commit/a4744f65
-
-diff --git a/archivemount.c b/archivemount.c
-index 6342d7e..64a3fc2 100755
---- a/archivemount.c
-+++ b/archivemount.c
-@@ -142,6 +142,9 @@ char *mtpt = NULL;
- char *archiveFile = NULL;
- pthread_mutex_t lock; /* global node tree lock */
- 
-+const char formatraw_default_path[] = "/data";
-+const char* formatraw_path = formatraw_default_path;
-+
- /* Taken from the GNU under the GPL */
- char *
- strchrnul (const char *s, int c_in)
-@@ -511,6 +514,9 @@ build_tree(mode_t mtpt_mode)
- 		if (memcmp(name, "./\0", 3) == 0) {
- 			/* special case: the directory "./" must be skipped! */
- 			continue;
-+		} else if (options.formatraw && (formatraw_path == formatraw_default_path)) {
-+			/* save the first entry's name */
-+			formatraw_path = strdup(name);
- 		}
- 		if (options.subtree_filter) {
- 			regex_error = regexec(&subtree, name, 1, &regmatch, REG_NOTEOL);
-@@ -1132,12 +1138,10 @@ _ar_open_raw(void)
- {
- 	// open archive and search first entry
- 
--	const char path[] = "/data";
--
- 	int ret = -1;
- 	const char *realpath;
- 	NODE *node;
--	log("_ar_open_raw called, path: '%s'", path);
-+	log("_ar_open_raw called, path: '%s'", formatraw_path);
- 
- 
- 	if (rawcache->opened!=0) {
-@@ -1149,7 +1153,7 @@ _ar_open_raw(void)
- 
- 	/* find node */
- 
--	node = get_node_for_path(root, path);
-+	node = get_node_for_path(root, formatraw_path);
- 	if (! node) {
- 		log("get_node_for_path error");
- 		return -ENOENT;
-@@ -2819,7 +2823,7 @@ main(int argc, char **argv)
- 		if ((rawcache=init_rawcache()) == NULL)
- 			return -ENOMEM;
- 		fprintf(stderr,"Calculating uncompressed file size. Please wait.\n");
--		rawcache->st.st_size=_ar_getsizeraw("/data");
-+		rawcache->st.st_size=_ar_getsizeraw(formatraw_path);
- 		//log("cache st_size = %ld",rawcache->st.st_size);
- 	}
- 
diff --git a/sys-fs/fuse-archive/Manifest b/sys-fs/fuse-archive/Manifest
new file mode 100644
index 0000000..e347633
--- /dev/null
+++ b/sys-fs/fuse-archive/Manifest
@@ -0,0 +1 @@
+DIST fuse-archive-0.1.7.tar.gz 50080 SHA256 8eb9497866e476776f841f106a0ca15d426de78d02b7cdd3d25405302aa0f73f SHA512 33f2efd514b9cae06556a47979e5c0139a2ea82ae0169d3b31380e205f781603c5d492afafea375a1b7dd49dde5683bc341e2df32df44fbdc0c47c8c3437c3e6 WHIRLPOOL 86f89f07983dd1ee3f2919e80c45488fdc8b7ece48e044f002ca2561386e964552524639d960dbf06c03550e21c8ac99a8d37ca52027f5d46c0ad6e5388b0b6d
diff --git a/sys-fs/archivemount/OWNERS b/sys-fs/fuse-archive/OWNERS
similarity index 100%
rename from sys-fs/archivemount/OWNERS
rename to sys-fs/fuse-archive/OWNERS
diff --git a/sys-fs/fuse-archive/fuse-archive-0.1.7.ebuild b/sys-fs/fuse-archive/fuse-archive-0.1.7.ebuild
new file mode 100644
index 0000000..732003a
--- /dev/null
+++ b/sys-fs/fuse-archive/fuse-archive-0.1.7.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Serve an archive or compressed file as a FUSE file system"
+HOMEPAGE="https://github.com/google/fuse-archive"
+SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="*"
+
+RDEPEND="
+	app-arch/libarchive:=
+	sys-fs/fuse:0"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
diff --git a/sys-fs/fuse-common/Manifest b/sys-fs/fuse-common/Manifest
index 0f01351..eed853b 100644
--- a/sys-fs/fuse-common/Manifest
+++ b/sys-fs/fuse-common/Manifest
@@ -1 +1,2 @@
-DIST fuse-3.2.6.tar.xz 1456220 BLAKE2B 9b09504ed04abd0134188c28f3908e69e3416c345a96aefbca0f64447f3c3a8907550874f5fec9cd8f65fbaa892be6cc0213a7f61d7ad51c955ce3acf955ee17 SHA512 3a1ef77ab4c79a24aad0b259e17f568a30a5faf53ac17eb25d05f30dc7423f0081583f5b3c284ca9196a01885843e97c323a84231272b7e2b55c8e73848a61b8
+DIST fuse-3.10.1.tar.xz 1898800 BLAKE2B ddccf4dc697547edb6ed48ca76b4379a5f94884fd19118926d82b82316d4b83fa80b9f4bda7edc51eb80ec72c06763fd766ab1216767456db8d6238c725f838b SHA512 7cf16c41060a8aaee2f815f271b4dd410c2e072e7629e55b92faca9b2b47544592704736c7da11a598f18ad4a537f0ba76964fa76e3f1a23b4facfe5c6053302
+DIST fuse-3.10.4.tar.xz 2787472 BLAKE2B 174b51bf55544bbc08e04089a4d8685b371d3f584e337ed0d8d82c62e10c14b6ef14a964d6627e8a121036db1ab4c6c1ccd413c08f8685d3d91893874427e46f SHA512 1cb7600dc04f148b15ec3183d0348320dd946cf15d4077798e7e34fe7e8202837718c8b8bd1f190b7dddda2453ee2b0433d77e18f142ecb7affec1cae29520f6
diff --git a/sys-fs/fuse-common/files/fuse-common-3.2.6-conf.patch b/sys-fs/fuse-common/files/fuse-common-3.10.4-conf.patch
similarity index 100%
rename from sys-fs/fuse-common/files/fuse-common-3.2.6-conf.patch
rename to sys-fs/fuse-common/files/fuse-common-3.10.4-conf.patch
diff --git a/sys-fs/fuse-common/fuse-common-3.10.4-r1.ebuild b/sys-fs/fuse-common/fuse-common-3.10.4-r1.ebuild
new file mode 100644
index 0000000..264922c
--- /dev/null
+++ b/sys-fs/fuse-common/fuse-common-3.10.4-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit udev
+
+DESCRIPTION="Common files for multiple slots of sys-fs/fuse"
+HOMEPAGE="https://github.com/libfuse/libfuse"
+SRC_URI="https://github.com/libfuse/libfuse/releases/download/fuse-${PV}/fuse-${PV}.tar.xz"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="*"
+
+BDEPEND="virtual/pkgconfig"
+RDEPEND="!<sys-fs/fuse-2.9.7-r1:0"
+
+S=${WORKDIR}/fuse-${PV}
+
+PATCHES=(
+	"${FILESDIR}"/${P}-conf.patch
+)
+
+src_install() {
+	udev_newrules util/udev.rules 99-fuse.rules
+
+	if use kernel_linux ; then
+		newinitd "${FILESDIR}"/fuse.init fuse
+	elif use kernel_FreeBSD ; then
+		newinitd "${FILESDIR}"/fuse-fbsd.init fuse
+	else
+		die "We don't know what init code install for your kernel, please file a bug."
+	fi
+
+	insinto /etc
+	doins util/fuse.conf
+}
diff --git a/sys-fs/fuse-common/fuse-common-3.2.6-r2.ebuild b/sys-fs/fuse-common/fuse-common-3.2.6-r2.ebuild
deleted file mode 100644
index aa2fec3..0000000
--- a/sys-fs/fuse-common/fuse-common-3.2.6-r2.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit meson udev flag-o-matic
-
-DESCRIPTION="Common files for multiple slots of sys-fs/fuse"
-HOMEPAGE="https://github.com/libfuse/libfuse"
-SRC_URI="https://github.com/libfuse/libfuse/releases/download/fuse-${PV}/fuse-${PV}.tar.xz"
-
-LICENSE="GPL-2 LGPL-2.1"
-SLOT="0"
-KEYWORDS="*"
-
-DEPEND="virtual/pkgconfig"
-RDEPEND="!<sys-fs/fuse-2.9.8"
-
-S=${WORKDIR}/fuse-${PV}
-
-# tests run in sys-fs/fuse
-RESTRICT="test"
-
-PATCHES=(
-	"${FILESDIR}"/${P}-conf.patch
-)
-
-src_prepare() {
-	default
-
-	# lto not supported yet -- https://github.com/libfuse/libfuse/issues/198
-	filter-flags -flto*
-}
-
-src_configure() {
-	local emesonargs=( -Dudevrulesdir="$(get_udevdir)"/rules.d )
-	meson_src_configure
-}
-
-src_install() {
-	newsbin "${BUILD_DIR}"/util/mount.fuse3 mount.fuse
-	newman doc/mount.fuse3.8 mount.fuse.8
-
-	udev_newrules util/udev.rules 99-fuse.rules
-
-	if use kernel_linux ; then
-		newinitd "${FILESDIR}"/fuse.init fuse
-	elif use kernel_FreeBSD ; then
-		newinitd "${FILESDIR}"/fuse-fbsd.init fuse
-	else
-		die "We don't know what init code install for your kernel, please file a bug."
-	fi
-
-	insinto /etc
-	doins util/fuse.conf
-}
diff --git a/sys-fs/fuse-common/metadata.xml b/sys-fs/fuse-common/metadata.xml
index b8fe5ae..4ef3e54 100644
--- a/sys-fs/fuse-common/metadata.xml
+++ b/sys-fs/fuse-common/metadata.xml
@@ -2,8 +2,11 @@
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
 	<maintainer type="person">
-		<email>radhermit@gentoo.org</email>
-		<name>Tim Harder</name>
+		<email>bman@gentoo.org</email>
+		<name>Aaron Bauman</name>
+	</maintainer>
+	<maintainer type="project">
+		<email>base-system@gentoo.org</email>
 	</maintainer>
 	<upstream>
 		<remote-id type="github">libfuse/libfuse</remote-id>
diff --git a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-chrome-icu.patch b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-chrome-icu.patch
index 15432ec..fa2dbf5 100644
--- a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-chrome-icu.patch
+++ b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-chrome-icu.patch
@@ -1,4 +1,4 @@
-From a6d463794be51d5f48af655da22c3acb8f24fd02 Mon Sep 17 00:00:00 2001
+From 5422ef0015b4bffd7ef78b2a3331ad22a0330b0f Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Fran=C3=A7ois=20Degros?= <fdegros@chromium.org>
 Date: Tue, 17 Nov 2020 14:26:09 +1100
 Subject: [PATCH] Link and initialize chrome-icu
@@ -43,14 +43,15 @@
  CXXFLAGS = -g -O0 $(COMMON_CXXFLAGS)
  RELEASE_CXXFLAGS = -O2 $(COMMON_CXXFLAGS)
 diff --git a/lib/fuseZipData.cpp b/lib/fuseZipData.cpp
-index 9639a8e..6666d6e 100644
+index f8b4cbe..9ed7bbb 100644
 --- a/lib/fuseZipData.cpp
 +++ b/lib/fuseZipData.cpp
-@@ -25,10 +25,18 @@
+@@ -26,11 +26,19 @@
  #include <stdexcept>
  #include <functional>
  #include <memory>
 +#include <system_error>
+ #include <vector>
  
 +#include <fcntl.h>
  #include <syslog.h>
@@ -65,7 +66,7 @@
  
  #include "fuseZipData.h"
  #include "extraField.h"
-@@ -60,6 +68,105 @@ static void SetPassword(zip_t *const archive) {
+@@ -62,6 +70,105 @@ static void SetPassword(zip_t *const archive) {
  
  namespace {
  
@@ -182,5 +183,5 @@
      const std::string encoding = DetectEncoding(allNames);
      allNames.clear();
 -- 
-2.29.2.576.ga3fc446d84-goog
+2.33.0.464.g1972c5931b-goog
 
diff --git a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-deduplicate-filenames.patch b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-deduplicate-filenames.patch
index 04d8864..b656f84 100644
--- a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-deduplicate-filenames.patch
+++ b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-deduplicate-filenames.patch
@@ -1,4 +1,4 @@
-From 8272f98ee26144fc8108ca35bc49b7e25868535f Mon Sep 17 00:00:00 2001
+From 8c7edca489ac151e18d4fda02778b146f38ea1ee Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Fran=C3=A7ois=20Degros?= <fdegros@chromium.org>
 Date: Thu, 17 Sep 2020 18:06:27 +1000
 Subject: [PATCH] Deduplicate file names
@@ -12,7 +12,7 @@
  5 files changed, 46 insertions(+), 47 deletions(-)
 
 diff --git a/lib/fileNode.cpp b/lib/fileNode.cpp
-index 62723d6..8a5b16a 100644
+index efe1105..cedaaa6 100644
 --- a/lib/fileNode.cpp
 +++ b/lib/fileNode.cpp
 @@ -89,7 +89,6 @@ FileNode *FileNode::createDir(struct zip *zip, const char *fname,
@@ -65,7 +65,7 @@
          mode |= 2;
      }
 diff --git a/lib/fileNode.h b/lib/fileNode.h
-index ab07cd9..e20cd0d 100644
+index 998bc9e..0d18b01 100644
 --- a/lib/fileNode.h
 +++ b/lib/fileNode.h
 @@ -191,10 +191,9 @@ public:
@@ -92,10 +92,10 @@
      nodelist_t childs;
      FileNode *parent;
 diff --git a/lib/fuse-zip.cpp b/lib/fuse-zip.cpp
-index 7c33999..5310925 100644
+index 4a1b139..f69e60a 100644
 --- a/lib/fuse-zip.cpp
 +++ b/lib/fuse-zip.cpp
-@@ -167,8 +167,8 @@ int fusezip_readdir(const char *path, void *buf, fuse_fill_dir_t filler, off_t o
+@@ -170,8 +170,8 @@ int fusezip_readdir(const char *path, void *buf, fuse_fill_dir_t filler, off_t o
      }
      filler(buf, ".", NULL, 0);
      filler(buf, "..", NULL, 0);
@@ -107,10 +107,10 @@
  
      return 0;
 diff --git a/lib/fuseZipData.cpp b/lib/fuseZipData.cpp
-index 6d5d498..c511e1d 100644
+index 461cd4b..36a3451 100644
 --- a/lib/fuseZipData.cpp
 +++ b/lib/fuseZipData.cpp
-@@ -298,22 +298,40 @@ mode_t FuseZipData::getEntryAttributes(zip_uint64_t id, const char *name, bool &
+@@ -297,22 +297,40 @@ mode_t FuseZipData::getEntryAttributes(zip_uint64_t id, const char *name, bool &
      return mode;
  }
  
@@ -160,7 +160,7 @@
  }
  
  bool FuseZipData::attachHardlink(zip_int64_t sid, const char *name, mode_t mode, bool readonly,
-@@ -378,16 +396,9 @@ bool FuseZipData::attachHardlink(zip_int64_t sid, const char *name, mode_t mode,
+@@ -375,16 +393,9 @@ bool FuseZipData::attachHardlink(zip_int64_t sid, const char *name, mode_t mode,
      std::string converted;
      convertFileName(name, readonly, needPrefix, converted);
      const char *cname = converted.c_str();
@@ -201,5 +201,5 @@
  #endif
 -
 -- 
-2.29.1.341.ge80a0c044ae-goog
+2.33.0.464.g1972c5931b-goog
 
diff --git a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-error-reporting.patch b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-error-reporting.patch
index 1bf08b0..9783fd7 100644
--- a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-error-reporting.patch
+++ b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-error-reporting.patch
@@ -1,4 +1,4 @@
-From 42243c105b6a067b9e680ba84c417c972eaa4d3f Mon Sep 17 00:00:00 2001
+From e4fd0b7046a0e505f2cbdfcc37ca899951e01680 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Fran=C3=A7ois=20Degros?= <fdegros@chromium.org>
 Date: Mon, 29 Jun 2020 00:29:00 +1000
 Subject: [PATCH] Better error reporting via exceptions
@@ -17,17 +17,15 @@
 fusezip_read, fusezip_write, fusezip_release, fusezip_ftruncate,
 fusezip_truncate and fusezip_rename. This pattern could (should) be
 applied to the rest of these FUSE callbacks.
-
-Avoid logging filenames in syslog. Filenames can contain PII.
 ---
  lib/dataNode.cpp    |  30 ++----
  lib/fileNode.cpp    |  33 ------
- lib/fuse-zip.cpp    | 243 ++++++++++++++++++++++----------------------
+ lib/fuse-zip.cpp    | 246 ++++++++++++++++++++++----------------------
  lib/fuse-zip.h      |   4 +-
- lib/fuseZipData.cpp |  74 ++++++++------
+ lib/fuseZipData.cpp |  39 ++++---
  lib/util.h          |  50 +++++++++
- main.cpp            |  17 ++--
- 7 files changed, 231 insertions(+), 220 deletions(-)
+ main.cpp            |  20 ++--
+ 7 files changed, 215 insertions(+), 207 deletions(-)
 
 diff --git a/lib/dataNode.cpp b/lib/dataNode.cpp
 index 17c94c2..0efd7bc 100644
@@ -197,10 +195,10 @@
      }
  
 diff --git a/lib/fuse-zip.cpp b/lib/fuse-zip.cpp
-index 0db402e..061cc6d 100644
+index 0db402e..661e03b 100644
 --- a/lib/fuse-zip.cpp
 +++ b/lib/fuse-zip.cpp
-@@ -41,76 +41,67 @@
+@@ -41,76 +41,70 @@
  #include <cstring>
  #include <cstdlib>
  #include <limits>
@@ -224,8 +222,11 @@
 +// Must be called from within a catch block.
 +static int exceptionToError(const char *const action, const char *const file) {
 +    const auto log = [action, file](const char *const reason) {
-+        fprintf(stderr, "Cannot %s '%s': %s\n", action, file, reason);
-+        syslog(LOG_ERR, "Cannot %s: %s", action, reason);
++        if (false) {
++            syslog(LOG_ERR, "Cannot %s '%s': %s", action, file, reason);
++        } else {
++            syslog(LOG_ERR, "Cannot %s: %s", action, reason);
++        }
 +    };
 +
 +    try {
@@ -317,7 +318,7 @@
      return data;
  }
  
-@@ -126,7 +117,6 @@ void fusezip_destroy(void *data) {
+@@ -126,7 +120,6 @@ void fusezip_destroy(void *data) {
      FuseZipData *d = (FuseZipData*)data;
      d->save ();
      delete d;
@@ -325,7 +326,7 @@
  }
  
  FileNode *get_file_node(const char *fname) {
-@@ -208,7 +198,7 @@ int fusezip_statfs(const char *path, struct statvfs *buf) {
+@@ -208,7 +201,7 @@ int fusezip_statfs(const char *path, struct statvfs *buf) {
      return 0;
  }
  
@@ -334,7 +335,7 @@
      if (*path == '\0') {
          return -ENOENT;
      }
-@@ -221,18 +211,13 @@ int fusezip_open(const char *path, struct fuse_file_info *fi) {
+@@ -221,18 +214,13 @@ int fusezip_open(const char *path, struct fuse_file_info *fi) {
      }
      fi->fh = (uint64_t)node;
  
@@ -358,7 +359,7 @@
      if (*path == '\0') {
          return -EACCES;
      }
-@@ -240,18 +225,20 @@ int fusezip_create(const char *path, mode_t mode, struct fuse_file_info *fi) {
+@@ -240,18 +228,20 @@ int fusezip_create(const char *path, mode_t mode, struct fuse_file_info *fi) {
      if (node != NULL) {
          return -EEXIST;
      }
@@ -383,7 +384,7 @@
      if (*path == '\0') {
          return -EACCES;
      }
-@@ -259,47 +246,55 @@ int fusezip_mknod(const char *path, mode_t mode, dev_t dev) {
+@@ -259,47 +249,55 @@ int fusezip_mknod(const char *path, mode_t mode, dev_t dev) {
      if (node != NULL) {
          return -EEXIST;
      }
@@ -459,7 +460,7 @@
      if (*path == '\0') {
          return -EACCES;
      }
-@@ -321,6 +316,8 @@ int fusezip_truncate(const char *path, off_t offset) {
+@@ -321,6 +319,8 @@ int fusezip_truncate(const char *path, off_t offset) {
          return -res;
      }
      return node->close();
@@ -468,7 +469,7 @@
  }
  
  int fusezip_unlink(const char *path) {
-@@ -371,7 +368,7 @@ int fusezip_mkdir(const char *path, mode_t mode) {
+@@ -371,7 +371,7 @@ int fusezip_mkdir(const char *path, mode_t mode) {
      return 0;
  }
  
@@ -477,7 +478,7 @@
      if (*path == '\0') {
          return -ENOENT;
      }
-@@ -385,7 +382,7 @@ int fusezip_rename(const char *path, const char *new_path) {
+@@ -385,7 +385,7 @@ int fusezip_rename(const char *path, const char *new_path) {
      FileNode *new_node = get_file_node(new_path + 1);
      if (new_node != NULL) {
          int res = get_data()->removeNode(new_node);
@@ -486,7 +487,7 @@
              return -res;
          }
      }
-@@ -403,48 +400,46 @@ int fusezip_rename(const char *path, const char *new_path) {
+@@ -403,48 +403,46 @@ int fusezip_rename(const char *path, const char *new_path) {
          new_name.push_back('/');
      }
  
@@ -593,47 +594,31 @@
   * (see https://bitbucket.org/agalanin/fuse-zip/issues/7).
   */
 diff --git a/lib/fuseZipData.cpp b/lib/fuseZipData.cpp
-index 6852678..d9ff5cb 100644
+index 6852678..11893d8 100644
 --- a/lib/fuseZipData.cpp
 +++ b/lib/fuseZipData.cpp
-@@ -18,7 +18,6 @@
- ////////////////////////////////////////////////////////////////////////////
- 
- #include <zip.h>
--#include <syslog.h>
- #include <cassert>
- #include <cerrno>
- #include <cstring>
-@@ -37,21 +36,24 @@ FuseZipData::FuseZipData(const char *archiveName, struct zip *z, const char *cwd
+@@ -37,15 +37,16 @@ FuseZipData::FuseZipData(const char *archiveName, struct zip *z, const char *cwd
  
  FuseZipData::~FuseZipData() {
      if (chdir(m_cwd.c_str()) != 0) {
 -        syslog(LOG_ERR, "Unable to chdir() to archive directory %s: %s. Trying to save file into $TMP or /tmp...",
-+        fprintf(stderr, "Cannot chdir to archive directory '%s': %s\n",
-                 m_cwd.c_str(), strerror(errno));
+-                m_cwd.c_str(), strerror(errno));
++        syslog(LOG_ERR, "Cannot chdir to archive directory '%s': %s",
++               m_cwd.c_str(), strerror(errno));
          const char *tmpDir = getenv("TMP");
          if (tmpDir == NULL || chdir(tmpDir) != 0) {
              if (tmpDir != NULL) {
 -                syslog(LOG_WARNING, "Unable to chdir() to %s: %s.", tmpDir, strerror(errno));
-+                fprintf(stderr, "Cannot chdir to '%s': %s\n", tmpDir,
-+                        strerror(errno));
++                syslog(LOG_ERR, "Cannot chdir to '%s': %s", tmpDir,
++                       strerror(errno));
              }
              if (chdir("/tmp") != 0) {
 -                syslog(LOG_ERR, "Unable to chdir() to /tmp: %s!", strerror(errno));
-+                fprintf(stderr, "Cannot chdir to '/tmp': %s\n",
-+                        strerror(errno));
++                syslog(LOG_ERR, "Cannot chdir to '/tmp': %s", strerror(errno));
              }
          }
      }
-     int res = zip_close(m_zip);
-     if (res != 0) {
--        syslog(LOG_ERR, "Error while closing archive: %s", zip_strerror(m_zip));
-+        fprintf(stderr, "Error while closing archive: %s\n",
-+                zip_strerror(m_zip));
-     }
-     for (filemap_t::iterator i = files.begin(); i != files.end(); ++i) {
-         delete i->second;
-@@ -103,7 +105,8 @@ void FuseZipData::build_tree(bool readonly) {
+@@ -103,7 +104,8 @@ void FuseZipData::build_tree(bool readonly) {
          if (notHLink)
              attachNode(i, name, mode, readonly, needPrefix, origNames);
          else if (!readonly)
@@ -643,7 +628,7 @@
      }
      // Connect nodes to tree. Missing intermediate nodes created on demand.
      for (filemap_t::const_iterator i = files.begin(); i != files.end(); ++i)
-@@ -126,7 +129,7 @@ void FuseZipData::connectNodeToTree (FileNode *node) {
+@@ -126,7 +128,7 @@ void FuseZipData::connectNodeToTree (FileNode *node) {
          files[parent->full_name.c_str()] = parent;
          connectNodeToTree (parent);
      } else if (!parent->is_dir()) {
@@ -652,7 +637,7 @@
      }
      // connecting to parent
      node->parent = parent;
-@@ -241,8 +244,8 @@ void FuseZipData::attachNode(zip_int64_t id, const char *name, mode_t mode, bool
+@@ -241,8 +243,8 @@ void FuseZipData::attachNode(zip_int64_t id, const char *name, mode_t mode, bool
      convertFileName(name, readonly, needPrefix, converted);
      const char *cname = converted.c_str();
      if (files.find(cname) != files.end()) {
@@ -663,52 +648,7 @@
      }
      FileNode *node = FileNode::createNodeForZipEntry(m_zip, cname, id, mode);
      if (node == NULL) {
-@@ -263,7 +266,7 @@ bool FuseZipData::attachHardlink(zip_int64_t sid, const char *name, mode_t mode,
-         field = zip_file_extra_field_get_by_id(m_zip, id, FZ_EF_PKWARE_UNIX, 0, &len, ZIP_FL_LOCAL);
-     if (!field) {
-         // ignoring hardlink without PKWARE UNIX field
--        syslog(LOG_INFO, "%s: PKWARE UNIX field is absent for hardlink\n", name);
-+        fprintf(stderr, "%s: PKWARE UNIX field is absent for hardlink\n", name);
-         return false;
-     }
- 
-@@ -276,13 +279,13 @@ bool FuseZipData::attachHardlink(zip_int64_t sid, const char *name, mode_t mode,
-     if (!ExtraField::parsePkWareUnixField(len, field, mode, mt, at,
-                 uid, gid, dev, link, link_len))
-     {
--        syslog(LOG_WARNING, "%s: unable to parse PKWARE UNIX field\n", name);
-+        fprintf(stderr, "%s: unable to parse PKWARE UNIX field\n", name);
-         return false;
-     }
- 
-     if (link_len == 0 || !link)
-     {
--        syslog(LOG_ERR, "%s: hard link target is empty\n", name);
-+        fprintf(stderr, "%s: hard link target is empty\n", name);
-         return true;
-     }
- 
-@@ -291,7 +294,8 @@ bool FuseZipData::attachHardlink(zip_int64_t sid, const char *name, mode_t mode,
-     auto it = origNames.find(linkStr.c_str());
-     if (it == origNames.end())
-     {
--        syslog(LOG_ERR, "%s: unable to find link target %s\n", name, linkStr.c_str());
-+        fprintf(stderr, "%s: unable to find link target %s\n", name,
-+                linkStr.c_str());
-         return true;
-     }
- 
-@@ -304,7 +308,8 @@ bool FuseZipData::attachHardlink(zip_int64_t sid, const char *name, mode_t mode,
-         }
-         else
-         {
--            syslog(LOG_ERR, "%s: file format differs with link target %s\n", name, linkStr.c_str());
-+            fprintf(stderr, "%s: file format differs with link target %s\n",
-+                    name, linkStr.c_str());
-             return true;
-         }
-     }
-@@ -313,8 +318,8 @@ bool FuseZipData::attachHardlink(zip_int64_t sid, const char *name, mode_t mode,
+@@ -313,8 +315,8 @@ bool FuseZipData::attachHardlink(zip_int64_t sid, const char *name, mode_t mode,
      convertFileName(name, readonly, needPrefix, converted);
      const char *cname = converted.c_str();
      if (files.find(cname) != files.end()) {
@@ -719,7 +659,7 @@
      }
      FileNode *node = FileNode::createHardlink(m_zip, cname, sid, it->second);
      if (node == NULL) {
-@@ -345,10 +350,10 @@ int FuseZipData::removeNode(FileNode *node) {
+@@ -345,10 +347,10 @@ int FuseZipData::removeNode(FileNode *node) {
  
  void FuseZipData::validateFileName(const char *fname) {
      if (fname[0] == 0) {
@@ -732,7 +672,7 @@
      }
  }
  
-@@ -367,7 +372,9 @@ void FuseZipData::convertFileName(const char *fname, bool readonly,
+@@ -367,7 +369,9 @@ void FuseZipData::convertFileName(const char *fname, bool readonly,
      // add prefix
      if (fname[0] == '/') {
          if (!readonly) {
@@ -743,7 +683,7 @@
          } else {
              assert(needPrefix);
              converted.append(ROOT_PREFIX);
-@@ -377,7 +384,9 @@ void FuseZipData::convertFileName(const char *fname, bool readonly,
+@@ -377,7 +381,9 @@ void FuseZipData::convertFileName(const char *fname, bool readonly,
          bool parentRelative = false;
          while (strncmp(fname, "../", 3) == 0) {
              if (!readonly) {
@@ -754,7 +694,7 @@
              }
              assert(needPrefix);
              converted.append(UP_PREFIX);
-@@ -400,14 +409,15 @@ void FuseZipData::convertFileName(const char *fname, bool readonly,
+@@ -400,14 +406,15 @@ void FuseZipData::convertFileName(const char *fname, bool readonly,
      while (start[0] != 0 && (cur = strchr(start + 1, '/')) != NULL) {
          if ((cur - start == 1 && start[0] == '.') ||
              (cur - start == 2 && start[0] == '.' && start[1] == '.')) {
@@ -772,58 +712,6 @@
      }
      converted.append(start);
  }
-@@ -471,7 +481,8 @@ void FuseZipData::save () {
-             if (node->isCommentChanged()) {
-                 int res = node->saveComment();
-                 if (res != 0) {
--                    syslog(LOG_ERR, "Error while saving archive comment: %d", res);
-+                    fprintf(stderr, "Error %d while saving archive comment\n",
-+                            res);
-                 }
-             }
-             continue;
-@@ -483,8 +494,8 @@ void FuseZipData::save () {
-             int res = node->save();
-             if (res != 0) {
-                 saveMetadata = false;
--                syslog(LOG_ERR, "Error while saving file %s in ZIP archive: %d",
--                        node->full_name.c_str(), res);
-+                fprintf(stderr, "Error %d while saving file '%s'\n", res,
-+                        node->full_name.c_str());
-             }
-         }
-         if (saveMetadata) {
-@@ -493,23 +504,24 @@ void FuseZipData::save () {
-                 zip_int64_t idx = zip_dir_add(m_zip,
-                         node->full_name.c_str(), ZIP_FL_ENC_GUESS);
-                 if (idx < 0) {
--                    syslog(LOG_ERR, "Unable to save directory %s in ZIP archive",
--                        node->full_name.c_str());
-+                    fprintf(stderr, "Cannot save directory '%s'\n",
-+                            node->full_name.c_str());
-                     continue;
-                 }
-                 node->set_id(idx);
-             }
-             int res = node->saveMetadata(m_force_precise_time);
-             if (res != 0) {
--                syslog(LOG_ERR, "Error while saving metadata for file %s in ZIP archive: %d",
--                        node->full_name.c_str(), res);
-+                fprintf(stderr,
-+                        "Error %d while saving metadata for file '%s'\n", res,
-+                        node->full_name.c_str());
-             }
-         }
-         if (node->isCommentChanged()) {
-             int res = node->saveComment();
-             if (res != 0) {
--                syslog(LOG_ERR, "Error while saving comment for file %s in ZIP archive: %d",
--                        node->full_name.c_str(), res);
-+                fprintf(stderr, "Error %d while saving comment for file '%s'\n",
-+                        res, node->full_name.c_str());
-             }
-         }
-     }
 diff --git a/lib/util.h b/lib/util.h
 index 94ac191..1fe63be 100644
 --- a/lib/util.h
@@ -888,7 +776,7 @@
 +
  #endif
 diff --git a/main.cpp b/main.cpp
-index cb19ac5..1503523 100644
+index cb19ac5..f1e605d 100644
 --- a/main.cpp
 +++ b/main.cpp
 @@ -41,6 +41,7 @@
@@ -908,33 +796,35 @@
      if (sizeof(void*) > sizeof(uint64_t)) {
          fprintf(stderr,"%s: This program cannot be run on your system because of FUSE design limitation\n", PROGRAM);
          return EXIT_FAILURE;
-@@ -237,11 +238,7 @@ int main(int argc, char *argv[]) {
+@@ -236,12 +237,8 @@ int main(int argc, char *argv[]) {
+             param.readonly = true;
          }
  
-         openlog(PROGRAM, LOG_PID, LOG_USER);
+-        openlog(PROGRAM, LOG_PID, LOG_USER);
 -        if ((data = initFuseZip(PROGRAM, param.fileName, param.readonly, param.force_precise_time))
 -                == NULL) {
 -            fuse_opt_free_args(&args);
 -            return EXIT_FAILURE;
 -        }
++        openlog(PROGRAM, LOG_PID | LOG_PERROR, LOG_USER);
 +        data = initFuseZip(PROGRAM, param.fileName, param.readonly, param.force_precise_time);
      }
  
      static struct fuse_operations fusezip_oper;
-@@ -301,5 +298,13 @@ int main(int argc, char *argv[]) {
+@@ -301,5 +298,12 @@ int main(int argc, char *argv[]) {
      res = fuse_loop(fuse);
      fuse_teardown(fuse, mountpoint);
      return (res == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
-+} catch (const ZipError& e) {
-+  fprintf(stderr,"%s: %s\n", PROGRAM, e.what());
-+  // Shift libzip error codes in order to avoid collision with FUSE errors.
-+  const int ZIP_ER_BASE = 10;
-+  return ZIP_ER_BASE + e.code();
-+} catch (const std::exception& e) {
-+  fprintf(stderr,"%s: %s\n", PROGRAM, e.what());
-+  return EXIT_FAILURE;
++} catch (const ZipError &e) {
++    fprintf(stderr, "%s: %s\n", PROGRAM, e.what());
++    // Shift libzip error codes in order to avoid collision with FUSE errors.
++    const int ZIP_ER_BASE = 10;
++    return ZIP_ER_BASE + e.code();
++} catch (const std::exception &e) {
++    fprintf(stderr, "%s: %s\n", PROGRAM, e.what());
++    return EXIT_FAILURE;
  }
- 
+-
 -- 
-2.29.1.341.ge80a0c044ae-goog
+2.33.0.464.g1972c5931b-goog
 
diff --git a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-guess-encoding.patch b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-guess-encoding.patch
index d363108d..c6b11f3 100644
--- a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-guess-encoding.patch
+++ b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-guess-encoding.patch
@@ -1,4 +1,4 @@
-From 37e24eb0fe1fed110bf7f5309ed131f8ca25f11d Mon Sep 17 00:00:00 2001
+From 97e6eab3d71d3c49ee5ae799f4fd88928dae03ce Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Fran=C3=A7ois=20Degros?= <fdegros@chromium.org>
 Date: Mon, 15 Jun 2020 10:56:27 +1000
 Subject: [PATCH] Detect filename encoding and convert filenames to UTF-8 using
@@ -7,8 +7,8 @@
 ---
  Makefile            |  15 ++--
  lib/Makefile        |  14 ++--
- lib/fuseZipData.cpp | 193 ++++++++++++++++++++++++++++++++++++++++----
- 3 files changed, 194 insertions(+), 28 deletions(-)
+ lib/fuseZipData.cpp | 192 ++++++++++++++++++++++++++++++++++++++++----
+ 3 files changed, 193 insertions(+), 28 deletions(-)
 
 diff --git a/Makefile b/Makefile
 index 1b40859..e72ce52 100644
@@ -45,15 +45,15 @@
  	    -o $@
  
 diff --git a/lib/Makefile b/lib/Makefile
-index af2df55..4e4b23a 100644
+index d092e0e..4e4b23a 100644
 --- a/lib/Makefile
 +++ b/lib/Makefile
 @@ -1,10 +1,10 @@
  DEST=libfusezip.a
 -PKG_CONFIG?=pkg-config
 -LIBS=$(shell $(PKG_CONFIG) fuse --libs) $(shell $(PKG_CONFIG) libzip --libs)
--CXXFLAGS=-g -O0 -Wall -Wextra -Wconversion -Wno-sign-compare -Wlogical-op -Wshadow -pedantic -Werror -std=c++11
--RELEASE_CXXFLAGS=-O2 -Wall -Wextra -Wconversion -Wno-sign-compare -Wlogical-op -Wshadow -pedantic -Werror -std=c++11
+-CXXFLAGS=-g -O0 -Wall -Wextra -Wconversion -Wsign-conversion -Wlogical-op -Wshadow -pedantic -Werror -std=c++11
+-RELEASE_CXXFLAGS=-O2 -Wall -Wextra -Wconversion -Wsign-conversion -Wlogical-op -Wshadow -pedantic -Werror -std=c++11
 -FUSEFLAGS=$(shell $(PKG_CONFIG) fuse --cflags)
 -ZIPFLAGS=$(shell $(PKG_CONFIG) libzip --cflags)
 +PKG_CONFIG ?= pkg-config
@@ -75,15 +75,16 @@
  clean:
  	rm -f $(DEST) $(OBJECTS)
 diff --git a/lib/fuseZipData.cpp b/lib/fuseZipData.cpp
-index c511e1d..9639a8e 100644
+index 36a3451..29ff2c4 100644
 --- a/lib/fuseZipData.cpp
 +++ b/lib/fuseZipData.cpp
-@@ -23,6 +23,12 @@
+@@ -24,6 +24,13 @@
  #include <cstring>
  #include <iostream>
  #include <stdexcept>
 +#include <functional>
 +#include <memory>
++#include <vector>
 +
 +#include <syslog.h>
 +#include <unicode/ucnv.h>
@@ -91,7 +92,7 @@
  
  #include "fuseZipData.h"
  #include "extraField.h"
-@@ -52,6 +58,118 @@ static void SetPassword(zip_t *const archive) {
+@@ -53,6 +60,118 @@ static void SetPassword(zip_t *const archive) {
          throw ZipError("Cannot set default password", archive);
  }
  
@@ -131,7 +132,7 @@
 +                                            in, inlen, &error);
 +
 +        if (U_FAILURE(error)) {
-+            fprintf(stderr, "Cannot convert to UTF-16: %s\n", u_errorName(error));
++            syslog(LOG_ERR, "Cannot convert to UTF-16: %s", u_errorName(error));
 +            return nullptr;
 +        }
 +
@@ -140,7 +141,7 @@
 +                                             utf16.data(), len16, &error);
 +
 +        if (U_FAILURE(error)) {
-+            fprintf(stderr, "Cannot convert to UTF-8: %s\n", u_errorName(error));
++            syslog(LOG_ERR, "Cannot convert to UTF-8: %s", u_errorName(error));
 +            return nullptr;
 +        }
 +
@@ -184,11 +185,11 @@
 +    const UCharsetMatch *const ucm = ucsdet_detect(csd.get(), &error);
 +    const char *const encoding = ucsdet_getName(ucm, &error);
 +    if (U_FAILURE(error)) {
-+        fprintf(stderr, "Cannot detect encoding: %s\n", u_errorName(error));
++        syslog(LOG_ERR, "Cannot detect encoding: %s", u_errorName(error));
 +        return std::string();
 +    }
 +
-+    printf("Detected encoding %s with %d%% confidence\n", encoding,
++    syslog(LOG_INFO, "Detected encoding %s with %d%% confidence", encoding,
 +           ucsdet_getConfidence(ucm, &error));
 +
 +    // Check if we want to convert the detected encoding via ICU.
@@ -210,7 +211,7 @@
  FuseZipData::FuseZipData(const char *archiveName, struct zip *z, const char *cwd,
          bool force_precise_time):
      m_zip(z), m_archiveName(archiveName), m_cwd(cwd), m_force_precise_time(force_precise_time) {
-@@ -91,18 +209,58 @@ void FuseZipData::build_tree(bool readonly) {
+@@ -90,18 +209,56 @@ void FuseZipData::build_tree(bool readonly) {
      m_root->parent = NULL;
      files[m_root->full_name.c_str()] = m_root;
      zip_int64_t n = zip_get_num_entries(m_zip, 0);
@@ -272,14 +273,12 @@
 +            };
 +            zipFlags = ZIP_FL_ENC_RAW;
 +        } catch (const std::exception &e) {
-+            printf("Cannot create converter for %s: %s\n", encoding.c_str(),
-+                   e.what());
 +            syslog(LOG_ERR, "Cannot create converter for %s: %s",
 +                   encoding.c_str(), e.what());
          }
      }
  
-@@ -115,13 +273,16 @@ void FuseZipData::build_tree(bool readonly) {
+@@ -114,13 +271,16 @@ void FuseZipData::build_tree(bool readonly) {
          zip_uint64_t id = static_cast<zip_uint64_t>(i);
          bool isHardlink;
  
@@ -298,7 +297,7 @@
          mode_t mode = getEntryAttributes(id, name, isHardlink);
          if (S_ISLNK(mode))
              continue;
-@@ -154,7 +315,11 @@ void FuseZipData::build_tree(bool readonly) {
+@@ -153,7 +313,11 @@ void FuseZipData::build_tree(bool readonly) {
      for (zip_int64_t i = 0; i < n; ++i) {
          zip_uint64_t id = static_cast<zip_uint64_t>(i);
          bool isHardlink;
@@ -311,15 +310,15 @@
          mode_t mode = getEntryAttributes(id, name, isHardlink);
          if (S_ISLNK(mode))
              continue;
-@@ -574,7 +739,7 @@ void FuseZipData::save () {
+@@ -570,7 +734,7 @@ void FuseZipData::save () {
              if (node->isTemporaryDir()) {
                  // persist temporary directory
                  zip_int64_t idx = zip_dir_add(m_zip,
 -                        node->full_name.c_str(), ZIP_FL_ENC_GUESS);
 +                        node->full_name.c_str(), ZIP_FL_ENC_UTF_8);
                  if (idx < 0) {
-                     fprintf(stderr, "Cannot save directory '%s'\n",
-                             node->full_name.c_str());
+                     syslog(LOG_ERR, "Unable to save directory %s in ZIP archive",
+                         node->full_name.c_str());
 -- 
-2.29.2.576.ga3fc446d84-goog
+2.33.0.464.g1972c5931b-goog
 
diff --git a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-lazy-caching.patch b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-lazy-caching.patch
deleted file mode 100644
index ab62abd..0000000
--- a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-lazy-caching.patch
+++ /dev/null
@@ -1,784 +0,0 @@
-From a99828c075003eaf08b078d904f4b001af772571 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Fran=C3=A7ois=20Degros?= <fdegros@chromium.org>
-Date: Thu, 18 Jun 2020 23:35:55 +1000
-Subject: [PATCH] Lazy caching of files
-
-Only cache a file in memory if it needs to be cached and if it is less
-than 1GB.
-
-Keep cached uncompressed data in memory, even after the matching file
-has been closed. Some applications keep closing and reopening the same
-file, and we don't want to keep decompressing the same file over and
-over again.
----
- lib/Makefile      |   4 +-
- lib/bigBuffer.cpp | 362 ++++++++++++++++++++++++----------------------
- lib/bigBuffer.h   |  91 +++++++-----
- lib/dataNode.cpp  |  11 +-
- lib/dataNode.h    |   3 +-
- lib/fileNode.cpp  |   2 +-
- lib/fileNode.h    |   2 +-
- lib/fuse-zip.cpp  |   4 +-
- 8 files changed, 259 insertions(+), 220 deletions(-)
-
-diff --git a/lib/Makefile b/lib/Makefile
-index d092e0e..af2df55 100644
---- a/lib/Makefile
-+++ b/lib/Makefile
-@@ -1,8 +1,8 @@
- DEST=libfusezip.a
- PKG_CONFIG?=pkg-config
- LIBS=$(shell $(PKG_CONFIG) fuse --libs) $(shell $(PKG_CONFIG) libzip --libs)
--CXXFLAGS=-g -O0 -Wall -Wextra -Wconversion -Wsign-conversion -Wlogical-op -Wshadow -pedantic -Werror -std=c++11
--RELEASE_CXXFLAGS=-O2 -Wall -Wextra -Wconversion -Wsign-conversion -Wlogical-op -Wshadow -pedantic -Werror -std=c++11
-+CXXFLAGS=-g -O0 -Wall -Wextra -Wconversion -Wno-sign-compare -Wlogical-op -Wshadow -pedantic -Werror -std=c++11
-+RELEASE_CXXFLAGS=-O2 -Wall -Wextra -Wconversion -Wno-sign-compare -Wlogical-op -Wshadow -pedantic -Werror -std=c++11
- FUSEFLAGS=$(shell $(PKG_CONFIG) fuse --cflags)
- ZIPFLAGS=$(shell $(PKG_CONFIG) libzip --cflags)
- SOURCES=$(sort $(wildcard *.cpp))
-diff --git a/lib/bigBuffer.cpp b/lib/bigBuffer.cpp
-index 109d2f0..268807a 100644
---- a/lib/bigBuffer.cpp
-+++ b/lib/bigBuffer.cpp
-@@ -17,6 +17,8 @@
- //  along with this program.  If not, see <https://www.gnu.org/licenses/>.//
- ////////////////////////////////////////////////////////////////////////////
- 
-+#include "bigBuffer.h"
-+
- #include <cassert>
- #include <cerrno>
- #include <cstdlib>
-@@ -28,67 +30,54 @@
- #include <limits.h>
- #include <syslog.h>
- 
--#include "bigBuffer.h"
-+#include "util.h"
- 
- /**
-- * Class that keep chunk of file data.
-+ * Operate with chunks of 4 KiB.
-  */
--class BigBuffer::ChunkWrapper {
--private:
--    /**
--     * Pointer that keeps data for chunk. Can be NULL.
--     */
--    char *m_ptr;
-+static const unsigned int chunkBits = 12;
-+static const unsigned int chunkSize = 1u << chunkBits;
- 
--public:
--    /**
--     * By default internal buffer is NULL, so this can be used for creating
--     * sparse files.
--     */
--    ChunkWrapper(): m_ptr(NULL) {
--    }
-+/**
-+ * Return number of chunks needed to keep 'size' bytes.
-+ */
-+inline size_t chunksCount(size_t size) {
-+    return (size + (chunkSize - 1)) >> chunkBits;
-+}
- 
--    /**
--     * Take ownership on internal pointer from 'other' object.
--     */
--    ChunkWrapper(const ChunkWrapper &other) {
--        m_ptr = other.m_ptr;
--        const_cast<ChunkWrapper*>(&other)->m_ptr = NULL;
--    }
-+/**
-+ * Return number of chunk where 'offset'-th byte is located.
-+ */
-+inline size_t chunkNumber(size_t offset) { return offset >> chunkBits; }
- 
--    /**
--     * Free pointer if allocated.
--     */
--    ~ChunkWrapper() {
--        if (m_ptr != NULL) {
--            free(m_ptr);
--        }
--    }
-+/**
-+ * Return offset inside chunk to 'offset'-th byte.
-+ */
-+inline unsigned int chunkOffset(size_t offset) {
-+    return offset & (chunkSize - 1);
-+}
- 
-+/**
-+ * Class that keep chunk of file data.
-+ */
-+class BigBuffer::Chunk {
-+  private:
-     /**
--     * Take ownership on internal pointer from 'other' object.
-+     * Pointer that keeps data for chunk. Can be NULL.
-      */
--    ChunkWrapper &operator=(const ChunkWrapper &other) {
--        if (&other != this) {
--            m_ptr = other.m_ptr;
--            const_cast<ChunkWrapper*>(&other)->m_ptr = NULL;
--        }
--        return *this;
--    }
-+    std::unique_ptr<char[]> m_ptr;
- 
-+  public:
-     /**
-      * Return pointer to internal storage and initialize it if needed.
-      * @throws
-      *      std::bad_alloc  If memory can not be allocated
-      */
--    char *ptr(bool init = false) {
--        if (init && m_ptr == NULL) {
--            m_ptr = (char *)malloc(chunkSize);
--            if (m_ptr == NULL) {
--                throw std::bad_alloc();
--            }
-+    char *ptr() {
-+        if (!m_ptr) {
-+            m_ptr.reset(new char[chunkSize]{});
-         }
--        return m_ptr;
-+        return m_ptr.get();
-     }
- 
-     /**
-@@ -106,8 +95,8 @@ public:
-         if (offset + count > chunkSize) {
-             count = chunkSize - offset;
-         }
--        if (m_ptr != NULL) {
--            memcpy(dest, m_ptr + offset, count);
-+        if (m_ptr) {
-+            memcpy(dest, m_ptr.get() + offset, count);
-         } else {
-             memset(dest, 0, count);
-         }
-@@ -132,16 +121,7 @@ public:
-         if (offset + count > chunkSize) {
-             count = chunkSize - offset;
-         }
--        if (m_ptr == NULL) {
--            m_ptr = (char *)malloc(chunkSize);
--            if (m_ptr == NULL) {
--                throw std::bad_alloc();
--            }
--            if (offset > 0) {
--                memset(m_ptr, 0, offset);
--            }
--        }
--        memcpy(m_ptr + offset, src, count);
-+        memcpy(ptr() + offset, src, count);
-         return count;
-     }
- 
-@@ -149,192 +129,230 @@ public:
-      * Clear tail of internal buffer with zeroes starting from 'offset'.
-      */
-     void clearTail(unsigned int offset) {
--        if (m_ptr != NULL && offset < chunkSize) {
--            memset(m_ptr + offset, 0, chunkSize - offset);
-+        if (m_ptr && offset < chunkSize) {
-+            memset(m_ptr.get() + offset, 0, chunkSize - offset);
-         }
-     }
--
- };
- 
--BigBuffer::BigBuffer(): len(0) {
-+BigBuffer::~BigBuffer() {}
-+
-+BigBuffer::BigBuffer() {}
-+
-+BigBuffer::BigBuffer(zip *archive, zip_uint64_t nodeId, off_t length)
-+    : archive_(archive), nodeId_(nodeId), file_(OpenFile()), len(length) {}
-+
-+ZipFile BigBuffer::OpenFile() const {
-+    if (zip_file *file = zip_fopen_index(archive_, nodeId_, 0))
-+        return ZipFile(file);
-+
-+    throw ZipError("Cannot open file at index " + std::to_string(nodeId_),
-+                   archive_);
- }
- 
--BigBuffer::BigBuffer(struct zip *z, zip_uint64_t nodeId, size_t length):
--        len(length) {
--    struct zip_file *zf = zip_fopen_index(z, nodeId, 0);
--    if (zf == NULL) {
--        syslog(LOG_WARNING, "%s", zip_strerror(z));
--        throw std::runtime_error(zip_strerror(z));
--    }
--    size_t ccount = chunksCount(length);
--    chunks.resize(ccount, ChunkWrapper());
--    size_t chunk = 0;
--    while (length > 0) {
--        size_t readSize = chunkSize;
--        if (readSize > length) {
--            readSize = length;
--        }
--        zip_int64_t nr = zip_fread(zf, chunks[chunk].ptr(true), readSize);
--        if (nr < 0) {
--            std::string err = zip_file_strerror(zf);
--            syslog(LOG_WARNING, "%s", err.c_str());
--            zip_fclose(zf);
--            throw std::runtime_error(err);
-+void BigBuffer::CacheInMemory() {
-+    if (!archive_)
-+        return;
-+
-+    // Don't cache files bigger than 1 GiB.
-+    if ((len >> 30) > 0)
-+        throw std::bad_alloc();
-+
-+    file_.reset();
-+    chunks_.clear();
-+    chunks_.reserve(len / chunkSize + 1);
-+    const ZipFile file = OpenFile();
-+    archive_ = nullptr;
-+    len = 0;
-+    Chunk chunk;
-+    zip_int64_t nr;
-+    do {
-+        nr = zip_fread(file.get(), chunk.ptr(), chunkSize);
-+        if (nr < 0)
-+            throw ZipError("Cannot read file " + std::to_string(nodeId_),
-+                           file.get());
-+
-+        len += nr;
-+        chunks_.push_back(std::move(chunk));
-+    } while (nr == chunkSize);
-+
-+    if (nr == 0)
-+        chunks_.pop_back();
-+}
-+
-+int BigBuffer::read(char *buf, size_t size, off_t offset) {
-+    size = std::min<size_t>(size, std::numeric_limits<int>::max());
-+
-+    if (offset < 0)
-+        throw std::runtime_error("Negative offset");
-+
-+    if (file_) {
-+        if (pos_ != offset) {
-+            // Try to adjust the actual position in the file.
-+            if (zip_fseek(file_.get(), offset, SEEK_SET) < 0) {
-+                // Cannot adjust position. The file is probably compressed.
-+                // We'll have to cache it in memory.
-+                file_.reset();
-+            } else {
-+                // Adjust recorded position.
-+                pos_ = offset;
-+            }
-         }
--        ++chunk;
--        length -= static_cast<size_t>(nr);
--        if ((nr == 0 || chunk == ccount) && length != 0) {
--            // Allocated memory are exhausted, but there are unread bytes (or
--            // file is longer that given length). Possibly CRC error.
--            zip_fclose(zf);
--            syslog(LOG_WARNING, "length of file %s differ from data length",
--                    zip_get_name(z, nodeId, ZIP_FL_ENC_GUESS));
--            throw std::runtime_error("data length differ");
-+
-+        if (file_) {
-+            // Read from file.
-+            assert(pos_ == offset);
-+            const zip_int64_t n = zip_fread(file_.get(), buf, size);
-+            if (n < 0) {
-+                throw ZipError("Cannot read file " + std::to_string(nodeId_),
-+                               file_.get());
-+            }
-+
-+            // Adjust recorded position.
-+            pos_ += n;
-+            return static_cast<int>(n);
-         }
-     }
--    if (zip_fclose(zf)) {
--        syslog(LOG_WARNING, "%s", zip_strerror(z));
--        throw std::runtime_error(zip_strerror(z));
--    }
--}
- 
--BigBuffer::~BigBuffer() {
--}
-+    assert(!file_);
-+    CacheInMemory();
- 
--int BigBuffer::read(char *buf, size_t size, size_t offset) const {
--    if (offset > len) {
-+    if (offset >= len)
-         return 0;
--    }
--    size_t chunk = chunkNumber(offset);
--    unsigned int pos = chunkOffset(offset);
--    if (size > len - offset) {
--        size = len - offset;
--    }
--    if (size > INT_MAX)
--        size = INT_MAX;
--    int nread = static_cast<int>(size);
--    while (size > 0) {
--        size_t r = chunks[chunk].read(buf, pos, size);
- 
-+    // Read from in-memory cache.
-+    size = std::min<off_t>(size, len - offset);
-+    Chunks::const_iterator chunk = chunks_.cbegin() + chunkNumber(offset);
-+    unsigned int pos_in_chunk = chunkOffset(offset);
-+    const int nread = static_cast<int>(size);
-+
-+    while (size > 0) {
-+        const size_t r = chunk->read(buf, pos_in_chunk, size);
-+        assert(r <= size);
-         size -= r;
-         buf += r;
-         ++chunk;
--        pos = 0;
-+        pos_in_chunk = 0;
-     }
-+
-     return nread;
- }
- 
- int BigBuffer::write(const char *buf, size_t size, size_t offset) {
-+    CacheInMemory();
-+    size = std::min<size_t>(size, std::numeric_limits<int>::max());
-     size_t chunk = chunkNumber(offset);
-     unsigned int pos = chunkOffset(offset);
--    if (size > INT_MAX)
--        size = INT_MAX;
--    int nwritten = static_cast<int>(size);
-+    const int nwritten = static_cast<int>(size);
- 
-     if (offset > len) {
-         if (chunkNumber(len) < chunksCount(len)) {
--            chunks[chunkNumber(len)].clearTail(chunkOffset(len));
-+            chunks_[chunkNumber(len)].clearTail(chunkOffset(len));
-         }
-         len = size + offset;
--    } else if (size > unsigned(len - offset)) {
-+    } else if (size > len - offset) {
-         len = size + offset;
-     }
--    chunks.resize(chunksCount(len));
-+    chunks_.resize(chunksCount(len));
-     while (size > 0) {
--        size_t w = chunks[chunk].write(buf, pos, size);
-+        size_t w = chunks_[chunk].write(buf, pos, size);
- 
-         size -= w;
-         buf += w;
--        ++ chunk;
-+        ++chunk;
-         pos = 0;
-     }
-     return nwritten;
- }
- 
- void BigBuffer::truncate(size_t offset) {
--    chunks.resize(chunksCount(offset));
-+    CacheInMemory();
-+    chunks_.resize(chunksCount(offset));
- 
-     if (offset > len && chunkNumber(len) < chunksCount(len)) {
-         // Fill end of last non-empty chunk with zeroes
--        chunks[chunkNumber(len)].clearTail(chunkOffset(len));
-+        chunks_[chunkNumber(len)].clearTail(chunkOffset(len));
-     }
- 
-     len = offset;
- }
- 
- zip_int64_t BigBuffer::zipUserFunctionCallback(void *state, void *data,
--        zip_uint64_t len, enum zip_source_cmd cmd) {
--    CallBackStruct *b = (CallBackStruct*)state;
-+                                               zip_uint64_t len,
-+                                               enum zip_source_cmd cmd) {
-+    CallBackStruct *b = static_cast<CallBackStruct *>(state);
-     switch (cmd) {
--        case ZIP_SOURCE_OPEN: {
--            b->pos = 0;
--            return 0;
--        }
--        case ZIP_SOURCE_READ: {
--            size_t rlen = std::numeric_limits<size_t>::max();
--            if (len < rlen)
--                rlen = static_cast<size_t>(len);
--            int r = b->buf->read((char*)data, rlen, b->pos);
--            b->pos += static_cast<unsigned int>(r);
--            return r;
--        }
--        case ZIP_SOURCE_STAT: {
--            struct zip_stat *st = (struct zip_stat*)data;
--            zip_stat_init(st);
--            st->valid = ZIP_STAT_SIZE | ZIP_STAT_MTIME;
--            st->size = b->buf->len;
--            st->mtime = b->mtime;
--            return sizeof(struct zip_stat);
--        }
--        case ZIP_SOURCE_FREE: {
--            delete b;
--            return 0;
--        }
--        case ZIP_SOURCE_CLOSE:
--            return 0;
--        case ZIP_SOURCE_ERROR: {
--            // This code should not be called in normal case because none of
--            // implemented functions raises error flag.
--            int *errs = static_cast<int *>(data);
--            errs[0] = ZIP_ER_OPNOTSUPP;
--            errs[1] = EINVAL;
--            return 2 * sizeof(int);
--        }
--        case ZIP_SOURCE_SUPPORTS:
--            return ZIP_SOURCE_SUPPORTS_READABLE;
--        default:
--            // indicate unsupported operation
--            return -1;
-+    case ZIP_SOURCE_OPEN: {
-+        b->pos = 0;
-+        return 0;
-+    }
-+    case ZIP_SOURCE_READ: {
-+        size_t rlen = std::numeric_limits<size_t>::max();
-+        if (len < rlen)
-+            rlen = static_cast<size_t>(len);
-+        const int r = b->buf->read(static_cast<char *>(data), rlen, b->pos);
-+        b->pos += r;
-+        return r;
-+    }
-+    case ZIP_SOURCE_STAT: {
-+        struct zip_stat *st = static_cast<struct zip_stat *>(data);
-+        zip_stat_init(st);
-+        st->valid = ZIP_STAT_SIZE | ZIP_STAT_MTIME;
-+        st->size = b->buf->len;
-+        st->mtime = b->mtime;
-+        return sizeof(struct zip_stat);
-+    }
-+    case ZIP_SOURCE_FREE: {
-+        delete b;
-+        return 0;
-+    }
-+    case ZIP_SOURCE_CLOSE:
-+        return 0;
-+    case ZIP_SOURCE_ERROR: {
-+        // This code should not be called in normal case because none of
-+        // implemented functions raises error flag.
-+        int *errs = static_cast<int *>(data);
-+        errs[0] = ZIP_ER_OPNOTSUPP;
-+        errs[1] = EINVAL;
-+        return 2 * sizeof(int);
-+    }
-+    case ZIP_SOURCE_SUPPORTS:
-+        return ZIP_SOURCE_SUPPORTS_READABLE;
-+    default:
-+        // indicate unsupported operation
-+        return -1;
-     }
- }
- 
- int BigBuffer::saveToZip(time_t mtime, struct zip *z, const char *fname,
--        bool newFile, zip_int64_t &index) {
--    struct zip_source *s;
--    struct CallBackStruct *cbs = new CallBackStruct();
-+                         bool newFile, zip_int64_t &index) {
-+    CallBackStruct *const cbs = new CallBackStruct();
-     cbs->buf = this;
-     cbs->mtime = mtime;
--    if ((s=zip_source_function(z, zipUserFunctionCallback, cbs)) == NULL) {
-+    zip_source *const s = zip_source_function(z, zipUserFunctionCallback, cbs);
-+    if (!s) {
-         delete cbs;
-         return -ENOMEM;
-     }
-+
-     if (newFile) {
--        zip_int64_t nid = zip_file_add(z, fname, s, ZIP_FL_ENC_GUESS);
-+        const zip_int64_t nid = zip_file_add(z, fname, s, ZIP_FL_ENC_GUESS);
-         if (nid < 0) {
-             delete cbs;
-             zip_source_free(s);
-             return -ENOMEM;
--        } else {
--            // indices are actually in range [0..2^63-1]
--            index = nid;
-         }
-+
-+        // indices are actually in range [0..2^63-1]
-+        index = nid;
-     } else {
-         assert(index >= 0);
--        if (zip_file_replace(z, static_cast<zip_uint64_t>(index), s, ZIP_FL_ENC_GUESS) < 0) {
-+        if (zip_file_replace(z, index, s, ZIP_FL_ENC_GUESS) < 0) {
-             delete cbs;
-             zip_source_free(s);
-             return -ENOMEM;
-         }
-     }
-+
-     return 0;
- }
-diff --git a/lib/bigBuffer.h b/lib/bigBuffer.h
-index 2ec92d6..82fe303 100644
---- a/lib/bigBuffer.h
-+++ b/lib/bigBuffer.h
-@@ -20,60 +20,86 @@
- #ifndef BIG_BUFFER_H
- #define BIG_BUFFER_H
- 
--#include <zip.h>
- #include <unistd.h>
-+#include <zip.h>
- 
-+#include <memory>
- #include <vector>
- 
- #include "types.h"
- 
--class BigBuffer {
--private:
--    //TODO: use >> and <<
--    static const unsigned int chunkSize = 4*1024; //4 Kilobytes
--
--    class ChunkWrapper;
-+struct ZipClose {
-+    void operator()(zip_file_t *const file) const { zip_fclose(file); }
-+};
- 
--    typedef std::vector<ChunkWrapper> chunks_t;
-+using ZipFile = std::unique_ptr<zip_file_t, ZipClose>;
- 
-+class BigBuffer {
-+  private:
-     struct CallBackStruct {
--        size_t pos;
--        const BigBuffer *buf;
-+        off_t pos;
-+        BigBuffer *buf;
-         time_t mtime;
-     };
- 
--    chunks_t chunks;
--
-     /**
-      * Callback for zip_source_function.
-      * See zip_source_function(3) for details.
-      */
-     static zip_int64_t zipUserFunctionCallback(void *state, void *data,
--            zip_uint64_t len, enum zip_source_cmd cmd);
-+                                               zip_uint64_t len,
-+                                               enum zip_source_cmd cmd);
-+
-+    /**
-+     * Opens the file at index nodeId_ in archive_.
-+     * @throws std::runtime_error on error.
-+     */
-+    ZipFile OpenFile() const;
-+
-+    /**
-+     * Cache file in memory if it isn't cached yet.
-+     * @throws
-+     *      std::bad_alloc if there is not enough memory.
-+     *      std::runtime_error on file read error.
-+     */
-+    void CacheInMemory();
-+
-+    class Chunk;
-+    using Chunks = std::vector<Chunk>;
-+
-+    /**
-+     * Pointer to the ZIP archive.
-+     * Becomes null when file is cached in memory.
-+     */
-+    zip *archive_ = nullptr;
- 
-     /**
--     * Return number of chunks needed to keep 'size' bytes.
-+     * Index of the file in the ZIP archive.
-      */
--    inline static size_t chunksCount(size_t size) {
--        return (size + chunkSize - 1) / chunkSize;
--    }
-+    const zip_uint64_t nodeId_ = 0;
- 
-     /**
--     * Return number of chunk where 'offset'-th byte is located.
-+     * File being streamed.
-+     * Becomes null when file is cached in memory.
-      */
--    inline static size_t chunkNumber(size_t offset) {
--        return offset / chunkSize;
--    }
-+    ZipFile file_ = nullptr;
- 
-     /**
--     * Return offset inside chunk to 'offset'-th byte.
-+     * Current position of the file being streamed.
-+     * Not used when file is cached in memory.
-      */
--    inline static unsigned int chunkOffset(size_t offset) {
--        return offset % chunkSize;
--    }
-+    off_t pos_ = 0;
- 
--public:
--    size_t len;
-+    /**
-+     * Cached file in memory.
-+     * Used only when archive_ is null.
-+     */
-+    Chunks chunks_;
-+
-+  public:
-+    off_t len = 0;
-+
-+    bool IsCachedInMemory() const { return !archive_; }
- 
-     /**
-      * Create new file buffer without mapping to file in a zip archive
-@@ -86,11 +112,11 @@ public:
-      * @param z         Zip file
-      * @param nodeId    Node index inside zip file
-      * @param length    File length
--     * @throws 
-+     * @throws
-      *      std::exception  On file read error
-      *      std::bad_alloc  On memory insufficiency
-      */
--    BigBuffer(struct zip *z, zip_uint64_t nodeId, size_t length);
-+    BigBuffer(struct zip *z, zip_uint64_t nodeId, off_t length);
- 
-     ~BigBuffer();
- 
-@@ -105,7 +131,7 @@ public:
-      * @param offset    offset to start reading from
-      * @return number of bytes read
-      */
--    int read(char *buf, size_t size, size_t offset) const;
-+    int read(char *buf, size_t size, off_t offset);
- 
-     /**
-      * Dispatch write request to chunks of a file and grow 'chunks' vector if
-@@ -135,8 +161,8 @@ public:
-      *      0       If successfull
-      *      -ENOMEM If there are no memory
-      */
--    int saveToZip(time_t mtime, struct zip *z, const char *fname,
--            bool newFile, zip_int64_t &index);
-+    int saveToZip(time_t mtime, struct zip *z, const char *fname, bool newFile,
-+                  zip_int64_t &index);
- 
-     /**
-      * Truncate buffer at position offset.
-@@ -151,4 +177,3 @@ public:
- };
- 
- #endif
--
-diff --git a/lib/dataNode.cpp b/lib/dataNode.cpp
-index 0efd7bc..86566cd 100644
---- a/lib/dataNode.cpp
-+++ b/lib/dataNode.cpp
-@@ -116,17 +116,15 @@ int DataNode::open(struct zip *zip) {
-     if (_state == NodeState::CLOSED) {
-         _open_count = 1;
-         assert(zip != NULL);
--        if (_size > std::numeric_limits<size_t>::max()) {
--            return -ENOMEM;
--        }
-         assert(_id != FAKE_ID);
--        _buffer.reset(new BigBuffer(zip, _id, static_cast<size_t>(_size)));
-+        if (!_buffer)
-+            _buffer.reset(new BigBuffer(zip, _id, _size));
-         _state = NodeState::OPENED;
-     }
-     return 0;
- }
- 
--int DataNode::read(char *buf, size_t sz, size_t offset) {
-+int DataNode::read(char *buf, size_t sz, off_t offset) {
-     _atime = currentTime();
-     return _buffer->read(buf, sz, offset);
- }
-@@ -144,7 +142,8 @@ int DataNode::write(const char *buf, size_t sz, size_t offset) {
- int DataNode::close() {
-     _size = _buffer->len;
-     if (_state == NodeState::OPENED && --_open_count == 0) {
--        _buffer.reset();
-+        if (!_buffer->IsCachedInMemory())
-+            _buffer.reset();
-         _state = NodeState::CLOSED;
-     }
-     return 0;
-diff --git a/lib/dataNode.h b/lib/dataNode.h
-index 7489ec9..550593c 100644
---- a/lib/dataNode.h
-+++ b/lib/dataNode.h
-@@ -73,7 +73,7 @@ public:
-     static std::shared_ptr<DataNode> createExisting(struct zip *zip, zip_uint64_t id, mode_t mode);
- 
-     int open(struct zip *zip);
--    int read(char *buf, size_t size, size_t offset);
-+    int read(char *buf, size_t size, off_t offset);
-     int write(const char *buf, size_t size, size_t offset);
-     int close();
- 
-@@ -166,4 +166,3 @@ public:
-     zip_uint64_t size() const;
- };
- #endif
--
-diff --git a/lib/fileNode.cpp b/lib/fileNode.cpp
-index efe1105..62723d6 100644
---- a/lib/fileNode.cpp
-+++ b/lib/fileNode.cpp
-@@ -189,7 +189,7 @@ int FileNode::open() {
-     return _data->open(zip);
- }
- 
--int FileNode::read(char *buf, size_t sz, size_t offset) {
-+int FileNode::read(char *buf, size_t sz, off_t offset) {
-     return _data->read(buf, sz, offset);
- }
- 
-diff --git a/lib/fileNode.h b/lib/fileNode.h
-index 998bc9e..ab07cd9 100644
---- a/lib/fileNode.h
-+++ b/lib/fileNode.h
-@@ -111,7 +111,7 @@ public:
-     void rename (const char *new_name);
- 
-     int open();
--    int read(char *buf, size_t size, size_t offset);
-+    int read(char *buf, size_t size, off_t offset);
-     int write(const char *buf, size_t size, size_t offset);
-     int close();
- 
-diff --git a/lib/fuse-zip.cpp b/lib/fuse-zip.cpp
-index 061cc6d..113065c 100644
---- a/lib/fuse-zip.cpp
-+++ b/lib/fuse-zip.cpp
-@@ -262,8 +262,7 @@ int fusezip_read(const char *path, char *buf, size_t size, off_t offset,
-                  struct fuse_file_info *fi) try {
-     if (offset < 0)
-         return -EINVAL;
--    return reinterpret_cast<FileNode *>(fi->fh)->read(
--        buf, size, static_cast<size_t>(offset));
-+    return reinterpret_cast<FileNode *>(fi->fh)->read(buf, size, offset);
- } catch (...) {
-     return exceptionToError("read file", path);
- }
-@@ -655,4 +654,3 @@ int fusezip_symlink(const char *dest, const char *path) {
-     node->close();
-     return (res < 0) ? -ENOMEM : 0;
- }
--
--- 
-2.31.1.498.g6c1eba8ee3d-goog
-
diff --git a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-no-symlinks.patch b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-no-symlinks.patch
index 5447bb5f..b4f30b2 100644
--- a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-no-symlinks.patch
+++ b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-no-symlinks.patch
@@ -1,4 +1,4 @@
-From c9db2fb9497e4605183e0c5b124403bf4f5e76ba Mon Sep 17 00:00:00 2001
+From 86894bf6dcaff212b695460f4c81ac7b220a8968 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Fran=C3=A7ois=20Degros?= <fdegros@chromium.org>
 Date: Wed, 2 Sep 2020 19:52:36 +1000
 Subject: [PATCH] No symlinks
@@ -6,28 +6,90 @@
 Do not show symbolic links recorded in the ZIP.
 Pretend they don't exist.
 ---
- lib/fuse-zip.cpp    | 2 ++
- lib/fuseZipData.cpp | 4 ++++
- 2 files changed, 6 insertions(+)
+ lib/fuse-zip.cpp    | 50 ---------------------------------------------
+ lib/fuse-zip.h      |  4 ----
+ lib/fuseZipData.cpp |  4 ++++
+ main.cpp            |  2 --
+ 4 files changed, 4 insertions(+), 56 deletions(-)
 
 diff --git a/lib/fuse-zip.cpp b/lib/fuse-zip.cpp
-index 113065c..7c33999 100644
+index 661e03b..4a1b139 100644
 --- a/lib/fuse-zip.cpp
 +++ b/lib/fuse-zip.cpp
-@@ -606,6 +606,8 @@ int fusezip_access(const char *, int) {
+@@ -609,53 +609,3 @@ int fusezip_access(const char *, int) {
+     return 0;
  }
  
- int fusezip_readlink(const char *path, char *buf, size_t size) {
-+    return -ENOENT;
-+
-     if (*path == '\0') {
-         return -ENOENT;
-     }
+-int fusezip_readlink(const char *path, char *buf, size_t size) {
+-    if (*path == '\0') {
+-        return -ENOENT;
+-    }
+-    FileNode *node = get_file_node(path + 1);
+-    if (node == NULL) {
+-        return -ENOENT;
+-    }
+-    if (!S_ISLNK(node->mode())) {
+-        return -EINVAL;
+-    }
+-    int res;
+-    if ((res = node->open()) != 0) {
+-        if (res == -EMFILE) {
+-            res = -ENOMEM;
+-        }
+-        return res;
+-    }
+-    int count = node->read(buf, size - 1, 0);
+-    buf[count] = '\0';
+-    node->close();
+-    return 0;
+-}
+-
+-int fusezip_symlink(const char *dest, const char *path) {
+-    if (*path == '\0') {
+-        return -EACCES;
+-    }
+-    FileNode *node = get_file_node(path + 1);
+-    if (node != NULL) {
+-        return -EEXIST;
+-    }
+-    node = FileNode::createSymlink (get_zip(), path + 1);
+-    if (node == NULL) {
+-        return -ENOMEM;
+-    }
+-    get_data()->insertNode (node);
+-
+-    int res;
+-    if ((res = node->open()) != 0) {
+-        if (res == -EMFILE) {
+-            res = -ENOMEM;
+-        }
+-        return res;
+-    }
+-    res = node->write(dest, strlen(dest), 0);
+-    node->close();
+-    return (res < 0) ? -ENOMEM : 0;
+-}
+-
+diff --git a/lib/fuse-zip.h b/lib/fuse-zip.h
+index 0e9730f..74990db 100644
+--- a/lib/fuse-zip.h
++++ b/lib/fuse-zip.h
+@@ -115,10 +115,6 @@ int fusezip_releasedir(const char *, struct fuse_file_info *);
+ 
+ int fusezip_access(const char *, int);
+ 
+-int fusezip_readlink(const char *, char *, size_t);
+-
+-int fusezip_symlink(const char *, const char *);
+-
+ }
+ 
+ #endif
 diff --git a/lib/fuseZipData.cpp b/lib/fuseZipData.cpp
-index bdddb94..6d5d498 100644
+index 3a71b0a..461cd4b 100644
 --- a/lib/fuseZipData.cpp
 +++ b/lib/fuseZipData.cpp
-@@ -123,6 +123,8 @@ void FuseZipData::build_tree(bool readonly) {
+@@ -122,6 +122,8 @@ void FuseZipData::build_tree(bool readonly) {
  
          const char *const name = sb.name;
          mode_t mode = getEntryAttributes(id, name, isHardlink);
@@ -36,7 +98,7 @@
          
          if (isHardlink)
              continue;
-@@ -154,6 +156,8 @@ void FuseZipData::build_tree(bool readonly) {
+@@ -153,6 +155,8 @@ void FuseZipData::build_tree(bool readonly) {
          bool isHardlink;
          const char *name = zip_get_name(m_zip, id, ZIP_FL_ENC_GUESS);
          mode_t mode = getEntryAttributes(id, name, isHardlink);
@@ -45,6 +107,19 @@
  
          if (!isHardlink)
              continue;
+diff --git a/main.cpp b/main.cpp
+index f1e605d..63cc2c5 100644
+--- a/main.cpp
++++ b/main.cpp
+@@ -272,8 +272,6 @@ int main(int argc, char *argv[]) try {
+     fusezip_oper.getxattr   =   fusezip_getxattr;
+     fusezip_oper.listxattr  =   fusezip_listxattr;
+     fusezip_oper.removexattr=   fusezip_removexattr;
+-    fusezip_oper.readlink   =   fusezip_readlink;
+-    fusezip_oper.symlink    =   fusezip_symlink;
+ 
+ #if FUSE_VERSION >= 28
+     // don't allow NULL path
 -- 
-2.29.1.341.ge80a0c044ae-goog
+2.33.0.464.g1972c5931b-goog
 
diff --git a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-password.patch b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-password.patch
index d558fbc..3a9811e 100644
--- a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-password.patch
+++ b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-password.patch
@@ -1,4 +1,4 @@
-From 919af38414bfa455b8da2d0a3b48245c97dbbcfc Mon Sep 17 00:00:00 2001
+From 683f0115e3a07173e1d69313bdf5463d404b808a Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Fran=C3=A7ois=20Degros?= <fdegros@chromium.org>
 Date: Sat, 11 Jul 2020 19:19:54 +1000
 Subject: [PATCH] Read password from stdin
@@ -13,14 +13,37 @@
 ZIPs containing files encrypted with different passwords are thus not
 supported.
 ---
+ lib/bigBuffer.h     |  7 ++++++
  lib/fuseZipData.cpp | 59 ++++++++++++++++++++++++++++++++++++++++++++-
- 1 file changed, 58 insertions(+), 1 deletion(-)
+ 2 files changed, 65 insertions(+), 1 deletion(-)
 
+diff --git a/lib/bigBuffer.h b/lib/bigBuffer.h
+index 2ec92d6..578d491 100644
+--- a/lib/bigBuffer.h
++++ b/lib/bigBuffer.h
+@@ -23,10 +23,17 @@
+ #include <zip.h>
+ #include <unistd.h>
+ 
++#include <memory>
+ #include <vector>
+ 
+ #include "types.h"
+ 
++struct ZipClose {
++    void operator()(zip_file_t *const file) const { zip_fclose(file); }
++};
++
++using ZipFile = std::unique_ptr<zip_file_t, ZipClose>;
++
+ class BigBuffer {
+ private:
+     //TODO: use >> and <<
 diff --git a/lib/fuseZipData.cpp b/lib/fuseZipData.cpp
-index d9ff5cb..bdddb94 100644
+index 11893d8..3a71b0a 100644
 --- a/lib/fuseZipData.cpp
 +++ b/lib/fuseZipData.cpp
-@@ -21,6 +21,7 @@
+@@ -22,6 +22,7 @@
  #include <cassert>
  #include <cerrno>
  #include <cstring>
@@ -28,7 +51,7 @@
  #include <stdexcept>
  
  #include "fuseZipData.h"
-@@ -29,6 +30,28 @@
+@@ -30,6 +31,28 @@
  
  #define FZ_ATTR_HARDLINK (0x800)
  
@@ -57,7 +80,7 @@
  FuseZipData::FuseZipData(const char *archiveName, struct zip *z, const char *cwd,
          bool force_precise_time):
      m_zip(z), m_archiveName(archiveName), m_cwd(cwd), m_force_precise_time(force_precise_time) {
-@@ -73,22 +96,56 @@ void FuseZipData::build_tree(bool readonly) {
+@@ -72,22 +95,56 @@ void FuseZipData::build_tree(bool readonly) {
      if (readonly) {
          for (zip_int64_t i = 0; i < n; ++i) {
              const char *name = zip_get_name(m_zip, static_cast<zip_uint64_t>(i), ZIP_FL_ENC_GUESS);
@@ -116,5 +139,5 @@
      }
      // add hardlinks
 -- 
-2.29.1.341.ge80a0c044ae-goog
+2.33.0.464.g1972c5931b-goog
 
diff --git a/sys-fs/fuse-zip/files/fuse-zip-0.7.0-rolling-cache.patch b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-rolling-cache.patch
new file mode 100644
index 0000000..8cd7277
--- /dev/null
+++ b/sys-fs/fuse-zip/files/fuse-zip-0.7.0-rolling-cache.patch
@@ -0,0 +1,1045 @@
+From 98c02858983d8e54e0169aa8f12f6bed6a1061e9 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Fran=C3=A7ois=20Degros?= <fdegros@chromium.org>
+Date: Thu, 18 Jun 2020 23:35:55 +1000
+Subject: [PATCH] Rolling cache
+
+Use a rolling cache of uncompressed data for each file being read.
+
+This allows to accomodate out-of-order read operations.
+---
+ lib/dataNode.cpp    | 113 ++----------------
+ lib/dataNode.h      |  30 +----
+ lib/fileNode.cpp    |  25 +---
+ lib/fileNode.h      |  25 +---
+ lib/fuse-zip.cpp    |  84 ++-----------
+ lib/fuse-zip.h      |   8 --
+ lib/fuseZipData.cpp |  52 --------
+ lib/fuseZipData.h   |   5 -
+ lib/reader.cpp      | 282 ++++++++++++++++++++++++++++++++++++++++++++
+ lib/reader.h        | 162 +++++++++++++++++++++++++
+ main.cpp            |   4 -
+ 11 files changed, 469 insertions(+), 321 deletions(-)
+ create mode 100644 lib/reader.cpp
+ create mode 100644 lib/reader.h
+
+diff --git a/lib/dataNode.cpp b/lib/dataNode.cpp
+index 0efd7bc..893e3d1 100644
+--- a/lib/dataNode.cpp
++++ b/lib/dataNode.cpp
+@@ -47,8 +47,6 @@ std::shared_ptr<DataNode> DataNode::createNew(mode_t mode, uid_t uid, gid_t gid,
+     std::shared_ptr<DataNode> n(new DataNode(FAKE_ID, mode, uid, gid, dev));
+ 
+     n->_state = NodeState::NEW;
+-    n->_buffer.reset(new BigBuffer());
+-
+     n->_has_btime = true;
+     n->_metadataChanged = true;
+     n->_mtime = n->_atime = n->_ctime = n->_btime = currentTime();
+@@ -60,8 +58,6 @@ std::shared_ptr<DataNode> DataNode::createTmpDir(mode_t mode, uid_t uid, gid_t g
+     std::shared_ptr<DataNode> n(new DataNode(FAKE_ID, mode, uid, gid, dev));
+ 
+     n->_state = NodeState::NEW;
+-    n->_buffer.reset(new BigBuffer());
+-
+     n->_has_btime = true;
+     n->_metadataChanged = false;
+     n->_mtime = n->_atime = n->_ctime = n->_btime = currentTime();
+@@ -102,94 +98,24 @@ std::shared_ptr<DataNode> DataNode::createExisting(struct zip *zip, zip_uint64_t
+     return n;
+ }
+ 
+-int DataNode::open(struct zip *zip) {
+-    if (_state == NodeState::NEW || _state == NodeState::VIRTUAL_SYMLINK) {
+-        return 0;
+-    }
+-    if (_state == NodeState::OPENED) {
+-        if (_open_count == INT_MAX) {
+-            return -EMFILE;
+-        } else {
+-            ++_open_count;
+-        }
+-    }
+-    if (_state == NodeState::CLOSED) {
+-        _open_count = 1;
+-        assert(zip != NULL);
+-        if (_size > std::numeric_limits<size_t>::max()) {
+-            return -ENOMEM;
+-        }
+-        assert(_id != FAKE_ID);
+-        _buffer.reset(new BigBuffer(zip, _id, static_cast<size_t>(_size)));
+-        _state = NodeState::OPENED;
+-    }
+-    return 0;
+-}
++ReaderPtr DataNode::open(struct zip *zip) {
++    struct zip_stat st = {};
++    if (zip_stat_index(zip, _id, 0, &st) < 0)
++      throw ZipError("Cannot stat file", zip);
+ 
+-int DataNode::read(char *buf, size_t sz, size_t offset) {
+     _atime = currentTime();
+-    return _buffer->read(buf, sz, offset);
+-}
+ 
+-int DataNode::write(const char *buf, size_t sz, size_t offset) {
+-    assert(_state != NodeState::VIRTUAL_SYMLINK);
+-    if (_state == NodeState::OPENED) {
+-        _state = NodeState::CHANGED;
++    if ((st.valid & ZIP_STAT_COMP_METHOD) != 0 &&
++        st.comp_method == ZIP_CM_STORE) {
++        // The file is stored without compression.
++        return ReaderPtr(new UnbufferedReader(zip, _id, st.size));
+     }
+-    _mtime = currentTime();
+-    _metadataChanged = true;
+-    return _buffer->write(buf, sz, offset);
+-}
+ 
+-int DataNode::close() {
+-    _size = _buffer->len;
+-    if (_state == NodeState::OPENED && --_open_count == 0) {
+-        _buffer.reset();
+-        _state = NodeState::CLOSED;
+-    }
+-    return 0;
++    // The file is compressed.
++    return ReaderPtr(new BufferedReader(zip, _id, st.size));
+ }
+ 
+-int DataNode::save(struct zip *zip, const char *full_name, zip_int64_t &index) {
+-    assert(zip != NULL);
+-    assert(full_name != NULL);
+-    return _buffer->saveToZip(_mtime.tv_sec, zip, full_name,
+-            _state == NodeState::NEW, index);
+-}
+-
+-//int DataNode::saveMetadata(bool force_precise_time) const {
+-//    assert(zip != NULL);
+-//    assert(_id >= 0);
+-//
+-//    int res = updateExtraFields(force_precise_time);
+-//    if (res != 0)
+-//        return res;
+-//    return updateExternalAttributes();
+-//}
+-
+-int DataNode::truncate(size_t offset) {
+-    assert(_state != NodeState::VIRTUAL_SYMLINK);
+-    if (_state != NodeState::CLOSED) {
+-        if (_state != NodeState::NEW) {
+-            _state = NodeState::CHANGED;
+-        }
+-        _buffer->truncate(offset);
+-        _mtime = currentTime();
+-        _metadataChanged = true;
+-        return 0;
+-    } else {
+-        return EBADF;
+-    }
+-}
+-
+-zip_uint64_t DataNode::size() const {
+-    if (_state == NodeState::NEW || _state == NodeState::OPENED || _state == NodeState::CHANGED ||
+-            _state == NodeState::VIRTUAL_SYMLINK) {
+-        return _buffer->len;
+-    } else {
+-        return _size;
+-    }
+-}
++zip_uint64_t DataNode::size() const { return _size; }
+ 
+ /**
+  * Get timestamp information from extra fields.
+@@ -355,23 +281,6 @@ void DataNode::processPkWareUnixField(zip_uint16_t type, zip_uint16_t len, const
+         _atime.tv_nsec = 0;
+     }
+     _device = dev;
+-    // use PKWARE link target only if link target in Info-ZIP format is not
+-    // specified (empty file content)
+-    if (S_ISLNK(_mode) && _size == 0 && link_len > 0) {
+-        assert(_state == NodeState::CLOSED || _state == NodeState::VIRTUAL_SYMLINK);
+-        if (_state == NodeState::VIRTUAL_SYMLINK)
+-        {
+-            _state = NodeState::CLOSED;
+-            _buffer.reset();
+-        }
+-        _buffer.reset(new BigBuffer());
+-        if (!_buffer)
+-            return;
+-        assert(link != NULL);
+-        _buffer->write(link, link_len, 0);
+-        _state = NodeState::VIRTUAL_SYMLINK;
+-    }
+-    // hardlinks are handled in FuseZipData::build_tree
+ }
+ 
+ void DataNode::chmod (mode_t mode) {
+diff --git a/lib/dataNode.h b/lib/dataNode.h
+index 7489ec9..e1552f5 100644
+--- a/lib/dataNode.h
++++ b/lib/dataNode.h
+@@ -27,8 +27,8 @@
+ #include <sys/stat.h>
+ #include <unistd.h>
+ 
++#include "reader.h"
+ #include "types.h"
+-#include "bigBuffer.h"
+ 
+ class DataNode {
+ private:
+@@ -46,7 +46,6 @@ private:
+     };
+ 
+     zip_uint64_t _id;
+-    std::unique_ptr<BigBuffer> _buffer;
+     int _open_count;
+     NodeState _state;
+ 
+@@ -72,21 +71,7 @@ public:
+     static std::shared_ptr<DataNode> createTmpDir(mode_t mode, uid_t uid, gid_t gid, dev_t dev);
+     static std::shared_ptr<DataNode> createExisting(struct zip *zip, zip_uint64_t id, mode_t mode);
+ 
+-    int open(struct zip *zip);
+-    int read(char *buf, size_t size, size_t offset);
+-    int write(const char *buf, size_t size, size_t offset);
+-    int close();
+-
+-    /**
+-     * Invoke zip_file_add() or zip_file_replace() for file to save it.
+-     * Should be called only if item is needed to ba saved into zip file.
+-     *
+-     * @param zip zip structure pointer
+-     * @param full_name full file name
+-     * @param index file node index (updated if state is NEW)
+-     * @return 0 if success, != 0 on error
+-     */
+-    int save(struct zip *zip, const char *full_name, zip_int64_t &index);
++    ReaderPtr open(struct zip *zip);
+ 
+     /**
+      * Save file metadata to ZIP
+@@ -95,17 +80,6 @@ public:
+      */
+     int saveMetadata (bool force_precise_time) const;
+ 
+-    /**
+-     * Truncate file.
+-     *
+-     * @return
+-     *      0       If successful
+-     *      EBADF   If file is currently closed
+-     *      EIO     If insufficient memory available (because ENOMEM not
+-     *              listed in truncate() error codes)
+-     */
+-    int truncate(size_t offset);
+-
+     inline bool isChanged() const {
+         return _state == NodeState::CHANGED
+             || _state == NodeState::NEW
+diff --git a/lib/fileNode.cpp b/lib/fileNode.cpp
+index cedaaa6..e0acd87 100644
+--- a/lib/fileNode.cpp
++++ b/lib/fileNode.cpp
+@@ -170,28 +170,10 @@ void FileNode::rename(const char *new_name) {
+     parse_name();
+ }
+ 
+-int FileNode::open() {
++ReaderPtr FileNode::open() {
+     return _data->open(zip);
+ }
+ 
+-int FileNode::read(char *buf, size_t sz, size_t offset) {
+-    return _data->read(buf, sz, offset);
+-}
+-
+-int FileNode::write(const char *buf, size_t sz, size_t offset) {
+-    return _data->write(buf, sz, offset);
+-}
+-
+-int FileNode::close() {
+-    return _data->close();
+-}
+-
+-int FileNode::save() {
+-    assert (!is_dir());
+-    // index is modified if state == NEW
+-    return _data->save(zip, full_name.c_str(), _id);
+-}
+-
+ int FileNode::saveMetadata(bool force_precise_time) const {
+     assert(zip != NULL);
+     assert(_id >= 0);
+@@ -209,11 +191,6 @@ int FileNode::saveComment() const {
+         return zip_file_set_comment(zip, id(), m_comment, m_commentLen, 0);
+ }
+ 
+-int FileNode::truncate(size_t offset) {
+-    assert(_data);
+-    return _data->truncate(offset);
+-}
+-
+ zip_uint64_t FileNode::size() const {
+     return _data->size();
+ }
+diff --git a/lib/fileNode.h b/lib/fileNode.h
+index 0d18b01..08dc42c 100644
+--- a/lib/fileNode.h
++++ b/lib/fileNode.h
+@@ -27,7 +27,6 @@
+ #include <sys/stat.h>
+ 
+ #include "types.h"
+-#include "bigBuffer.h"
+ #include "dataNode.h"
+ 
+ class FileNode {
+@@ -110,18 +109,7 @@ public:
+      */
+     void rename (const char *new_name);
+ 
+-    int open();
+-    int read(char *buf, size_t size, size_t offset);
+-    int write(const char *buf, size_t size, size_t offset);
+-    int close();
+-
+-    /**
+-     * Invoke zip_file_add() or zip_file_replace() for file to save it.
+-     * Should be called only if item is needed to ba saved into zip file.
+-     *
+-     * @return 0 if success, != 0 on error
+-     */
+-    int save();
++    ReaderPtr open();
+ 
+     /**
+      * Save file metadata to ZIP
+@@ -136,17 +124,6 @@ public:
+      */
+     int saveComment() const;
+ 
+-    /**
+-     * Truncate file.
+-     *
+-     * @return
+-     *      0       If successful
+-     *      EBADF   If file is currently closed
+-     *      EIO     If insufficient memory available (because ENOMEM not
+-     *              listed in truncate() error codes)
+-     */
+-    int truncate(size_t offset);
+-
+     inline bool isChanged() const {
+         return _data->isChanged();
+     }
+diff --git a/lib/fuse-zip.cpp b/lib/fuse-zip.cpp
+index f69e60a..a1c2ea0 100644
+--- a/lib/fuse-zip.cpp
++++ b/lib/fuse-zip.cpp
+@@ -118,7 +118,6 @@ inline struct zip *get_zip() {
+ 
+ void fusezip_destroy(void *data) {
+     FuseZipData *d = (FuseZipData*)data;
+-    d->save ();
+     delete d;
+ }
+ 
+@@ -212,35 +211,14 @@ int fusezip_open(const char *path, struct fuse_file_info *fi) try {
+     if (node->is_dir()) {
+         return -EISDIR;
+     }
+-    fi->fh = (uint64_t)node;
+ 
+-    return node->open();
++    ReaderPtr reader = node->open();
++    fi->fh = reinterpret_cast<uint64_t>(reader.release());
++    return 0;
+ } catch (...) {
+     return exceptionToError("open file", path);
+ }
+ 
+-int fusezip_create(const char *path, mode_t mode,
+-                   struct fuse_file_info *fi) try {
+-    if (*path == '\0') {
+-        return -EACCES;
+-    }
+-    FileNode *node = get_file_node(path + 1);
+-    if (node != NULL) {
+-        return -EEXIST;
+-    }
+-    node = FileNode::createFile(get_zip(), path + 1, fuse_get_context()->uid,
+-                                fuse_get_context()->gid, mode);
+-    if (node == NULL) {
+-        return -ENOMEM;
+-    }
+-    get_data()->insertNode(node);
+-    fi->fh = (uint64_t)node;
+-
+-    return node->open();
+-} catch (...) {
+-    return exceptionToError("create file", path);
+-}
+-
+ int fusezip_mknod(const char *path, mode_t mode, dev_t dev) try {
+     if (*path == '\0') {
+         return -EACCES;
+@@ -265,64 +243,22 @@ int fusezip_read(const char *path, char *buf, size_t size, off_t offset,
+                  struct fuse_file_info *fi) try {
+     if (offset < 0)
+         return -EINVAL;
+-    return reinterpret_cast<FileNode *>(fi->fh)->read(
+-        buf, size, static_cast<size_t>(offset));
++    return static_cast<int>(
++        reinterpret_cast<Reader *>(fi->fh)->Read(
++            buf, buf + std::min<size_t>(size, std::numeric_limits<int>::max()),
++            offset) -
++        buf);
+ } catch (...) {
+     return exceptionToError("read file", path);
+ }
+ 
+-int fusezip_write(const char *path, const char *buf, size_t size, off_t offset,
+-                  struct fuse_file_info *fi) try {
+-    if (offset < 0)
+-        return -EINVAL;
+-    return reinterpret_cast<FileNode *>(fi->fh)->write(
+-        buf, size, static_cast<size_t>(offset));
+-} catch (...) {
+-    return exceptionToError("write file", path);
+-}
+-
+ int fusezip_release(const char *path, struct fuse_file_info *fi) try {
+-    return reinterpret_cast<FileNode *>(fi->fh)->close();
++    const ReaderPtr p(reinterpret_cast<Reader *>(fi->fh));
++    return 0;
+ } catch (...) {
+     return exceptionToError("close file", path);
+ }
+ 
+-int fusezip_ftruncate(const char *path, off_t offset,
+-                      struct fuse_file_info *fi) try {
+-    if (offset < 0)
+-        return -EINVAL;
+-    return -reinterpret_cast<FileNode *>(fi->fh)->truncate(
+-        static_cast<size_t>(offset));
+-} catch (...) {
+-    return exceptionToError("truncate file", path);
+-}
+-
+-int fusezip_truncate(const char *path, off_t offset) try {
+-    if (*path == '\0') {
+-        return -EACCES;
+-    }
+-    if (offset < 0)
+-        return -EINVAL;
+-    FileNode *node = get_file_node(path + 1);
+-    if (node == NULL) {
+-        return -ENOENT;
+-    }
+-    if (node->is_dir()) {
+-        return -EISDIR;
+-    }
+-    int res;
+-    if ((res = node->open()) != 0) {
+-        return res;
+-    }
+-    if ((res = node->truncate(static_cast<size_t>(offset))) != 0) {
+-        node->close();
+-        return -res;
+-    }
+-    return node->close();
+-} catch (...) {
+-    return exceptionToError("truncate file", path);
+-}
+-
+ int fusezip_unlink(const char *path) {
+     if (*path == '\0') {
+         return -ENOENT;
+diff --git a/lib/fuse-zip.h b/lib/fuse-zip.h
+index 74990db..b40270c 100644
+--- a/lib/fuse-zip.h
++++ b/lib/fuse-zip.h
+@@ -63,20 +63,12 @@ int fusezip_statfs(const char *path, struct statvfs *buf);
+ 
+ int fusezip_open(const char *path, struct fuse_file_info *fi);
+ 
+-int fusezip_create(const char *path, mode_t mode, struct fuse_file_info *fi);
+-
+ int fusezip_mknod(const char *path, mode_t mode, dev_t dev);
+ 
+ int fusezip_read(const char *path, char *buf, size_t size, off_t offset, struct fuse_file_info *fi);
+ 
+-int fusezip_write(const char *path, const char *buf, size_t size, off_t offset, struct fuse_file_info *fi);
+-
+ int fusezip_release (const char *path, struct fuse_file_info *fi);
+ 
+-int fusezip_ftruncate(const char *path, off_t offset, struct fuse_file_info *fi);
+-
+-int fusezip_truncate(const char *path, off_t offset);
+-
+ int fusezip_unlink(const char *path);
+ 
+ int fusezip_rmdir(const char *path);
+diff --git a/lib/fuseZipData.cpp b/lib/fuseZipData.cpp
+index 29ff2c4..f8b4cbe 100644
+--- a/lib/fuseZipData.cpp
++++ b/lib/fuseZipData.cpp
+@@ -706,55 +706,3 @@ FileNode *FuseZipData::find (const char *fname) const {
+         return i->second;
+     }
+ }
+-
+-void FuseZipData::save () {
+-    for (filemap_t::const_iterator i = files.begin(); i != files.end(); ++i) {
+-        FileNode *node = i->second;
+-        if (node == m_root) {
+-            if (node->isCommentChanged()) {
+-                int res = node->saveComment();
+-                if (res != 0) {
+-                    syslog(LOG_ERR, "Error while saving archive comment: %d", res);
+-                }
+-            }
+-            continue;
+-        }
+-        assert(node != NULL);
+-        bool saveMetadata = node->isMetadataChanged();
+-        if (node->isChanged() && !node->is_dir()) {
+-            saveMetadata = true;
+-            int res = node->save();
+-            if (res != 0) {
+-                saveMetadata = false;
+-                syslog(LOG_ERR, "Error while saving file %s in ZIP archive: %d",
+-                        node->full_name.c_str(), res);
+-            }
+-        }
+-        if (saveMetadata) {
+-            if (node->isTemporaryDir()) {
+-                // persist temporary directory
+-                zip_int64_t idx = zip_dir_add(m_zip,
+-                        node->full_name.c_str(), ZIP_FL_ENC_UTF_8);
+-                if (idx < 0) {
+-                    syslog(LOG_ERR, "Unable to save directory %s in ZIP archive",
+-                        node->full_name.c_str());
+-                    continue;
+-                }
+-                node->set_id(idx);
+-            }
+-            int res = node->saveMetadata(m_force_precise_time);
+-            if (res != 0) {
+-                syslog(LOG_ERR, "Error while saving metadata for file %s in ZIP archive: %d",
+-                        node->full_name.c_str(), res);
+-            }
+-        }
+-        if (node->isCommentChanged()) {
+-            int res = node->saveComment();
+-            if (res != 0) {
+-                syslog(LOG_ERR, "Error while saving comment for file %s in ZIP archive: %d",
+-                        node->full_name.c_str(), res);
+-            }
+-        }
+-    }
+-}
+-
+diff --git a/lib/fuseZipData.h b/lib/fuseZipData.h
+index 92d4191..17275e7 100644
+--- a/lib/fuseZipData.h
++++ b/lib/fuseZipData.h
+@@ -140,11 +140,6 @@ public:
+     size_t numFiles () const {
+         return files.size() - 1;
+     }
+-
+-    /**
+-     * Save archive
+-     */
+-    void save ();
+ };
+ 
+ #endif
+diff --git a/lib/reader.cpp b/lib/reader.cpp
+new file mode 100644
+index 0000000..45555d0
+--- /dev/null
++++ b/lib/reader.cpp
+@@ -0,0 +1,282 @@
++////////////////////////////////////////////////////////////////////////////
++//  Copyright 2021 Google LLC                                             //
++//                                                                        //
++//  This program is free software: you can redistribute it and/or modify  //
++//  it under the terms of the GNU General Public License as published by  //
++//  the Free Software Foundation, either version 3 of the License, or     //
++//  (at your option) any later version.                                   //
++//                                                                        //
++//  This program is distributed in the hope that it will be useful,       //
++//  but WITHOUT ANY WARRANTY; without even the implied warranty of        //
++//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         //
++//  GNU General Public License for more details.                          //
++//                                                                        //
++//  You should have received a copy of the GNU General Public License     //
++//  along with this program.  If not, see <https://www.gnu.org/licenses/>.//
++////////////////////////////////////////////////////////////////////////////
++
++#include "reader.h"
++
++#include <cassert>
++#include <limits>
++#include <stdexcept>
++
++#include <syslog.h>
++
++#include "util.h"
++
++// Flag for debug logs.
++static const bool debug_log = false;
++
++zip_uint64_t Reader::reader_count_ = 0;
++
++static void LimitSize(ssize_t *const a, off_t b) {
++    if (*a > b)
++        *a = static_cast<ssize_t>(b);
++}
++
++Reader::~Reader() {
++    if (debug_log)
++        syslog(LOG_INFO, "Reader %" PRIu64 ": Close", reader_id_);
++}
++
++Reader::Reader(struct zip *const archive, const zip_uint64_t file_id,
++               const off_t expected_size)
++    : file_id_(file_id), expected_size_(expected_size),
++      file_(Open(archive, file_id)) {
++    if (debug_log)
++        syslog(LOG_INFO, "Reader %" PRIu64 ": Open file %" PRIu64, reader_id_,
++               file_id_);
++}
++
++ZipFile Reader::Open(struct zip *const archive, const zip_uint64_t file_id) {
++    ZipFile file(zip_fopen_index(archive, file_id, 0));
++    if (!file)
++        throw ZipError("Cannot open file", archive);
++    return file;
++}
++
++ssize_t Reader::ReadAtCurrentPosition(char *dest, ssize_t size) {
++    assert(size >= 0);
++
++    if (pos_ >= expected_size_)
++        return 0;
++
++    // Avoid reading bytes past the expected end of file.
++    // https://github.com/nih-at/libzip/issues/261
++    LimitSize(&size, expected_size_ - pos_);
++
++    if (size == 0)
++        return 0;
++
++    const ssize_t n = static_cast<ssize_t>(zip_fread(file_.get(), dest, size));
++
++    if (false && debug_log)
++        syslog(LOG_INFO, "Reader %" PRIu64 ": zip_fread(%zd) returned %zd",
++               reader_id_, size, n);
++
++    if (n < 0)
++        throw ZipError("Cannot read file", file_.get());
++
++    pos_ += n;
++    return n;
++}
++
++char *UnbufferedReader::Read(char *dest, char *dest_end, off_t offset) {
++    if (pos_ != offset) {
++        if (debug_log)
++            syslog(LOG_INFO,
++                   "Reader %" PRIu64 ": Jump %+" PRIi64 " from %" PRIu64
++                   " to %" PRIu64,
++                   reader_id_, offset - pos_, pos_, offset);
++
++        if (zip_fseek(file_.get(), offset, SEEK_SET) < 0)
++            throw ZipError("Cannot fseek file", file_.get());
++
++        pos_ = offset;
++    }
++
++    assert(pos_ == offset);
++
++    while (const ssize_t n = ReadAtCurrentPosition(dest, dest_end - dest)) {
++        dest += n;
++    }
++
++    return dest;
++}
++
++void BufferedReader::AllocateBuffer(ssize_t buffer_size) {
++    LimitSize(&buffer_size, expected_size_);
++
++    if (buffer_size == 0)
++        buffer_size = 1;
++
++    if (buffer_size == buffer_size_) {
++        assert(buffer_);
++        // Already got a buffer of the right size.
++        return;
++    }
++
++    buffer_.reset();
++    buffer_size_ = 0;
++
++    while (true) {
++        // Try to allocate buffer.
++        try {
++            buffer_.reset(new char[buffer_size]);
++            buffer_size_ = buffer_size;
++            if (debug_log)
++                syslog(LOG_INFO, "Reader %" PRIu64 ": Allocate %zd KB buffer",
++                       reader_id_, buffer_size_ >> 10);
++            return;
++        } catch (const std::bad_alloc &error) {
++            // Probably too big.
++            if (debug_log)
++                syslog(LOG_ERR,
++                       "Reader %" PRIu64 ": Cannot allocate %zd KB buffer: %s",
++                       reader_id_, buffer_size >> 10, error.what());
++
++            // If we couldn't even allocate 1KB, we ran out of memory or of
++            // addressable space. Simply propagate the error.
++            if (buffer_size <= 1024)
++                throw;
++
++            // Try a smaller buffer.
++            buffer_size >>= 1;
++        }
++    }
++}
++
++void BufferedReader::Restart() {
++    if (debug_log)
++        syslog(LOG_INFO, "Reader %" PRIu64 ": Rewind", reader_id_);
++
++    // Restart from the file beginning.
++    file_ = Open(archive_, file_id_);
++    pos_ = 0;
++    buffer_start_ = 0;
++
++    // Allocate a possibly bigger buffer. We have to be careful on 32-bit
++    // devices, since they have a limited addressable space.
++    AllocateBuffer((std::numeric_limits<ssize_t>::max() >> 1) + 1);
++}
++
++void BufferedReader::Advance(off_t jump) {
++    assert(jump >= 0);
++
++    if (jump <= 0)
++        return;
++
++    if (debug_log)
++        syslog(LOG_INFO,
++               "Reader %" PRIu64 ": Skip %" PRIi64 " bytes from %" PRIu64
++               " to %" PRIu64,
++               reader_id_, jump, pos_, pos_ + jump);
++
++    do {
++        ssize_t count = buffer_size_ - buffer_start_;
++        LimitSize(&count, jump);
++
++        assert(count > 0);
++        count = ReadAtCurrentPosition(&buffer_[buffer_start_], count);
++        if (count == 0)
++            return;
++
++        buffer_start_ += count;
++        if (buffer_start_ >= buffer_size_) {
++            assert(buffer_start_ == buffer_size_);
++            buffer_start_ = 0;
++        }
++
++        jump -= count;
++    } while (jump > 0);
++
++    assert(jump == 0);
++}
++
++char *BufferedReader::ReadFromBufferAndAdvance(char *dest, char *const dest_end,
++                                               const off_t offset) {
++    const off_t jump = offset - pos_;
++
++    if (jump >= 0) {
++        // Jump forwards.
++        Advance(jump);
++        return dest;
++    }
++
++    // Jump backwards.
++    assert(jump < 0);
++
++    if (jump + buffer_size_ < 0) {
++        // The backwards jump is too big and falls outside the buffer.
++        Restart();
++        Advance(offset);
++        return dest;
++    }
++
++    // The backwards jump is small enough to fall inside the buffer.
++    assert(-jump <= buffer_size_);
++
++    // Read data from the buffer.
++    ssize_t i = buffer_start_ + jump;
++
++    do {
++        ssize_t size = -i;
++        ssize_t start = i;
++        if (i < 0) {
++            if (debug_log)
++                syslog(LOG_INFO, "Reader %" PRIu64 ": Negative part of buffer",
++                       reader_id_);
++            start += buffer_size_;
++        } else {
++            size += buffer_start_;
++        }
++
++        LimitSize(&size, dest_end - dest);
++        assert(size > 0);
++
++        if (debug_log)
++            syslog(LOG_INFO,
++                   "Reader %" PRIu64 ": Read %zd bytes from cache position %zd",
++                   reader_id_, size, i - buffer_start_);
++
++        std::memcpy(dest, &buffer_[start], size);
++        dest += size;
++        i += size;
++    } while (i < buffer_start_ && dest < dest_end);
++
++    return dest;
++}
++
++char *BufferedReader::Read(char *dest, char *const dest_end,
++                           const off_t offset) {
++    if (offset >= expected_size_)
++        return dest;
++
++    if (dest == dest_end)
++        return dest;
++
++    // If we don't have a buffer, then we don't have enough memory.
++    if (!buffer_)
++        throw std::bad_alloc();
++
++    assert(buffer_);
++    assert(buffer_size_ > 0);
++
++    // Read data from buffer if possible.
++    dest = ReadFromBufferAndAdvance(dest, dest_end, offset);
++
++    // Read data from file while keeping the rolling buffer up to date.
++    while (
++        const ssize_t size = ReadAtCurrentPosition(
++            &buffer_[buffer_start_],
++            std::min<ssize_t>(dest_end - dest, buffer_size_ - buffer_start_))) {
++        memcpy(dest, &buffer_[buffer_start_], size);
++        dest += size;
++        buffer_start_ += size;
++        if (buffer_start_ == buffer_size_)
++            buffer_start_ = 0;
++    }
++
++    return dest;
++}
+diff --git a/lib/reader.h b/lib/reader.h
+new file mode 100644
+index 0000000..3ca195e
+--- /dev/null
++++ b/lib/reader.h
+@@ -0,0 +1,162 @@
++////////////////////////////////////////////////////////////////////////////
++//  Copyright 2021 Google LLC                                             //
++//                                                                        //
++//  This program is free software: you can redistribute it and/or modify  //
++//  it under the terms of the GNU General Public License as published by  //
++//  the Free Software Foundation, either version 3 of the License, or     //
++//  (at your option) any later version.                                   //
++//                                                                        //
++//  This program is distributed in the hope that it will be useful,       //
++//  but WITHOUT ANY WARRANTY; without even the implied warranty of        //
++//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         //
++//  GNU General Public License for more details.                          //
++//                                                                        //
++//  You should have received a copy of the GNU General Public License     //
++//  along with this program.  If not, see <https://www.gnu.org/licenses/>.//
++////////////////////////////////////////////////////////////////////////////
++
++#ifndef READER_H
++#define READER_H
++
++#include <memory>
++
++#include <zip.h>
++
++#include "types.h"
++
++struct ZipClose {
++    void operator()(zip_file_t *const file) const { zip_fclose(file); }
++};
++
++using ZipFile = std::unique_ptr<zip_file_t, ZipClose>;
++
++// Base abstract class for Reader objects that reads and return bytes from a
++// file stored or compressed in a ZIP archive.
++class Reader {
++  public:
++    virtual ~Reader();
++
++    Reader(struct zip *archive, zip_uint64_t file_id, off_t expected_size);
++
++    Reader(const Reader &) = delete;
++    Reader &operator=(const Reader &) = delete;
++
++    // Reads |dest_end - dest| bytes at the given file |offset| and stores them
++    // into |dest|. Tries to fill the |dest| buffer, and only returns a "short
++    // read" with fewer than |dest_end - dest| bytes if the end of the file is
++    // reached. Returns a pointer past the last byte written in |dest|, which
++    // should be |dest_end| if the end of the file has not been reached. Throws
++    // ZipError in case of error
++    virtual char *Read(char *dest, char *dest_end, off_t offset) = 0;
++
++  protected:
++    // Opens the file at index |file_id|. Throws ZipError in case of error.
++    static ZipFile Open(struct zip *archive, zip_uint64_t file_id);
++
++    // Reads up to |size| bytes at the current position pos_ and stores them
++    // into |dest|. Returns the number of bytes actually read, which could be
++    // less than |size|. Returns 0 if |size| is 0. Returns 0 if the end of file
++    // has been reached, and there is nothing left to be read. Updates the
++    // current position pos_. Throws ZipError in case of error
++    ssize_t ReadAtCurrentPosition(char *dest, ssize_t size);
++
++    // Number of created Reader objects.
++    static zip_uint64_t reader_count_;
++
++    // ID of this Reader (for debug traces).
++    const zip_uint64_t reader_id_ = ++reader_count_;
++
++    // ID of the file being read.
++    const zip_uint64_t file_id_;
++
++    // Expected size of the file being read.
++    const off_t expected_size_;
++
++    // File being read.
++    ZipFile file_;
++
++    // Current position of the file being read.
++    off_t pos_ = 0;
++};
++
++using ReaderPtr = std::unique_ptr<Reader>;
++
++// Reader used for uncompressed files, ie files that are simply stored without
++// compression in the ZIP archive. These files can be accessed in random order,
++// and don't require any buffering.
++class UnbufferedReader : public Reader {
++  public:
++    using Reader::Reader;
++
++    char *Read(char *dest, char *dest_end, off_t offset) override;
++};
++
++// Reader used for compressed files. It features a decompression engine and a
++// rolling buffer holding the latest decompressed bytes.
++//
++// During the first decompression pass, the rolling buffer contains 500KB (or
++// less if the |expected_size| is smaller). This is usually enough to
++// accommodate the possible out-of-order read operations due to the kernel's
++// readahead optimization.
++//
++// If a read operation starts at an offset located before the start of the
++// rolling buffer, then this BufferedReader restarts decompressing the file from
++// the beginning, but for this second pass it will use a rolling buffer as big
++// as possible (as big as |expected_size| if there is enough addressable space).
++class BufferedReader : public Reader {
++  public:
++    BufferedReader(struct zip *const archive, const zip_uint64_t file_id,
++                   const off_t expected_size)
++        : Reader(archive, file_id, expected_size), archive_(archive) {
++        AllocateBuffer(500 << 10); // 500KB
++    }
++
++    char *Read(char *dest, char *dest_end, off_t offset) override;
++
++  protected:
++    // Allocates a rolling buffer up to |buffer_size| or the |expected_size|
++    // passed to the constructor, whichever is smaller.
++    // Throws std::bad_alloc in case of memory allocation error.
++    void AllocateBuffer(ssize_t buffer_size);
++
++    // Allocates a bigger buffer and restarts decompressing from the beginning.
++    // Throws std::bad_alloc in case of memory allocation error.
++    // Throws a ZipError in case of error.
++    void Restart();
++
++    // Advances the position of the decompression engine by |jump| bytes.
++    // Throws a ZipError in case of error.
++    // Precondition: the buffer is allocated.
++    // Precondition: |jump >= 0|
++    void Advance(off_t jump);
++
++    // Reads as many bytes as possible (up to |dest_end - dest| bytes) from the
++    // rolling buffer and stores them in |dest|. If the start |offset| is not in
++    // the rolling buffer, then advances the position of the decompression
++    // engine (while keeping the rolling buffer up to date) to the position
++    // |offset| or the end of the file, whichever comes first. Returns a pointer
++    // past the last byte written in |dest|. Throws a ZipError in case of error.
++    // Precondition: the buffer is allocated.
++    char *ReadFromBufferAndAdvance(char *dest, char *dest_end, off_t offset);
++
++    // Pointer to the ZIP structure. Used when starting a second decompression
++    // pass.
++    struct zip *const archive_;
++
++    // Index of the rolling buffer where the oldest byte is currently stored
++    // (and where the next decompressed byte at the file position |pos_| will be
++    // stored).
++    // Invariant: 0 <= buffer_start_ < buffer_size_ once the buffer is
++    // allocated.
++    ssize_t buffer_start_ = 0;
++
++    // Size of the rolling buffer.
++    // Invariant: 0 < buffer_size_ once the buffer is allocated.
++    ssize_t buffer_size_ = 0;
++
++    // Rolling buffer.
++    // Invariant: buffer_ != nullptr once the buffer is allocated.
++    std::unique_ptr<char[]> buffer_;
++};
++
++#endif
+diff --git a/main.cpp b/main.cpp
+index 63cc2c5..6f18201 100644
+--- a/main.cpp
++++ b/main.cpp
+@@ -249,13 +249,11 @@ int main(int argc, char *argv[]) try {
+     fusezip_oper.statfs     =   fusezip_statfs;
+     fusezip_oper.open       =   fusezip_open;
+     fusezip_oper.read       =   fusezip_read;
+-    fusezip_oper.write      =   fusezip_write;
+     fusezip_oper.release    =   fusezip_release;
+     fusezip_oper.unlink     =   fusezip_unlink;
+     fusezip_oper.rmdir      =   fusezip_rmdir;
+     fusezip_oper.mkdir      =   fusezip_mkdir;
+     fusezip_oper.rename     =   fusezip_rename;
+-    fusezip_oper.create     =   fusezip_create;
+     fusezip_oper.mknod      =   fusezip_mknod;
+     fusezip_oper.chmod      =   fusezip_chmod;
+     fusezip_oper.chown      =   fusezip_chown;
+@@ -266,8 +264,6 @@ int main(int argc, char *argv[]) try {
+     fusezip_oper.releasedir =   fusezip_releasedir;
+     fusezip_oper.access     =   fusezip_access;
+     fusezip_oper.utimens    =   fusezip_utimens;
+-    fusezip_oper.ftruncate  =   fusezip_ftruncate;
+-    fusezip_oper.truncate   =   fusezip_truncate;
+     fusezip_oper.setxattr   =   fusezip_setxattr;
+     fusezip_oper.getxattr   =   fusezip_getxattr;
+     fusezip_oper.listxattr  =   fusezip_listxattr;
+-- 
+2.33.0.464.g1972c5931b-goog
+
diff --git a/sys-fs/fuse-zip/fuse-zip-0.7.0-r15.ebuild b/sys-fs/fuse-zip/fuse-zip-0.7.0-r15.ebuild
deleted file mode 100644
index e34022b..0000000
--- a/sys-fs/fuse-zip/fuse-zip-0.7.0-r15.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs cros-sanitizers
-
-DESCRIPTION="FUSE file system to navigate, extract, create and modify ZIP archives"
-HOMEPAGE="https://bitbucket.org/agalanin/fuse-zip"
-SRC_URI="https://bitbucket.org/agalanin/${PN}/downloads/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-DEPEND="
-	chromeos-base/chrome-icu
-	dev-libs/libzip:=
-	sys-fs/fuse:0
-"
-RDEPEND="${DEPEND}"
-
-RESTRICT="test"
-
-DOCS=( changelog README.md )
-
-PATCHES=(
-	"${FILESDIR}/${PN}-0.4.5-makefile.patch"
-	"${FILESDIR}/${PN}-0.7.0-makefile.patch"
-	"${FILESDIR}/${PN}-0.7.0-fix-unknown-file-types.patch"
-	"${FILESDIR}/${PN}-0.7.0-fix-utf8-filenames.patch"
-	"${FILESDIR}/${PN}-0.7.0-error-reporting.patch"
-	"${FILESDIR}/${PN}-0.7.0-lazy-caching.patch"
-	"${FILESDIR}/${PN}-0.7.0-password.patch"
-	"${FILESDIR}/${PN}-0.7.0-no-symlinks.patch"
-	"${FILESDIR}/${PN}-0.7.0-deduplicate-filenames.patch"
-	"${FILESDIR}/${PN}-0.7.0-guess-encoding.patch"
-	"${FILESDIR}/${PN}-0.7.0-chrome-icu.patch"
-)
-
-src_compile() {
-	sanitizers-setup-env
-	tc-export PKG_CONFIG
-	emake CXX="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS} ${LDFLAGS}"
-}
-
-src_install() {
-	default
-	doman fuse-zip.1
-}
diff --git a/sys-fs/fuse-zip/fuse-zip-0.7.0-r17.ebuild b/sys-fs/fuse-zip/fuse-zip-0.7.0-r17.ebuild
new file mode 120000
index 0000000..59d8098
--- /dev/null
+++ b/sys-fs/fuse-zip/fuse-zip-0.7.0-r17.ebuild
@@ -0,0 +1 @@
+fuse-zip-0.7.0.ebuild
\ No newline at end of file
diff --git a/sys-fs/fuse-zip/fuse-zip-0.7.0.ebuild b/sys-fs/fuse-zip/fuse-zip-0.7.0.ebuild
new file mode 100644
index 0000000..2dd6af2
--- /dev/null
+++ b/sys-fs/fuse-zip/fuse-zip-0.7.0.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs cros-sanitizers
+
+DESCRIPTION="FUSE file system to navigate, extract, create and modify ZIP archives"
+HOMEPAGE="https://bitbucket.org/agalanin/fuse-zip"
+SRC_URI="https://bitbucket.org/agalanin/${PN}/downloads/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+DEPEND="
+	>=chromeos-base/chrome-icu-89
+	dev-libs/libzip:=
+	sys-fs/fuse:0
+"
+RDEPEND="${DEPEND}"
+
+RESTRICT="test"
+
+DOCS=( changelog README.md )
+
+PATCHES=(
+	"${FILESDIR}/${PN}-0.4.5-makefile.patch"
+	"${FILESDIR}/${PN}-0.7.0-makefile.patch"
+	"${FILESDIR}/${PN}-0.7.0-fix-unknown-file-types.patch"
+	"${FILESDIR}/${PN}-0.7.0-fix-utf8-filenames.patch"
+	"${FILESDIR}/${PN}-0.7.0-error-reporting.patch"
+	"${FILESDIR}/${PN}-0.7.0-password.patch"
+	"${FILESDIR}/${PN}-0.7.0-no-symlinks.patch"
+	"${FILESDIR}/${PN}-0.7.0-deduplicate-filenames.patch"
+	"${FILESDIR}/${PN}-0.7.0-guess-encoding.patch"
+	"${FILESDIR}/${PN}-0.7.0-rolling-cache.patch"
+	"${FILESDIR}/${PN}-0.7.0-chrome-icu.patch"
+)
+
+src_compile() {
+	sanitizers-setup-env
+	tc-export PKG_CONFIG
+	emake CXX="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS} ${LDFLAGS}"
+}
+
+src_install() {
+	default
+	doman fuse-zip.1
+}
diff --git a/sys-fs/fuse/Manifest b/sys-fs/fuse/Manifest
index 9be808c..a6fb3c7 100644
--- a/sys-fs/fuse/Manifest
+++ b/sys-fs/fuse/Manifest
@@ -1 +1,2 @@
 DIST fuse-2.9.8.tar.gz 4610904 BLAKE2B 803eebea510834676379df8c9514050efcf47d83c06ba1f5b5756d27f5c32d3a0cc199d826b0c041118c5d2260ff023f58432a0d7b623807c0a4af4da7c34eff SHA512 0a9b14d96c6f98f5c903baf00114bfff72f9aeb97224702bbed370516b2b582401d5b436fcef979918ffd85d69ba4a82c8f722c0b35ebd50f7aa5f4ddfdcf8ad
+DIST fuse-3.10.4.tar.xz 2787472 BLAKE2B 174b51bf55544bbc08e04089a4d8685b371d3f584e337ed0d8d82c62e10c14b6ef14a964d6627e8a121036db1ab4c6c1ccd413c08f8685d3d91893874427e46f SHA512 1cb7600dc04f148b15ec3183d0348320dd946cf15d4077798e7e34fe7e8202837718c8b8bd1f190b7dddda2453ee2b0433d77e18f142ecb7affec1cae29520f6
diff --git a/sys-fs/fuse/files/fuse-2.9.9-avoid-calling-umount.patch b/sys-fs/fuse/files/fuse-2.9.9-avoid-calling-umount.patch
new file mode 100644
index 0000000..b5c141d
--- /dev/null
+++ b/sys-fs/fuse/files/fuse-2.9.9-avoid-calling-umount.patch
@@ -0,0 +1,38 @@
+From acb69eca6c25db44523efb4cb1e7088ae66d093d Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Tue, 3 Aug 2021 23:14:12 +0100
+Subject: [PATCH] Avoid calling umount
+
+Converting a sed into a patch.
+
+Ebuild had:
+	# sandbox violation with mtab writability wrt #438250
+	# don't sed configure.in without eautoreconf because of maintainer mode
+	sed -i 's:umount --fake:true --fake:' configure || die
+
+Bug: https://bugs.gentoo.org/438250
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 9946a0e..de433cb 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -101,11 +101,11 @@ util_linux_ok=yes
+ if test "$arch" = linux -a "$cross_compiling" != "yes"; then
+ 	AC_MSG_CHECKING([if umount supports --fake --no-canonicalize])
+ 	# exit code of umount is 1 if option is unrecognised, 2 otherwise
+-	umount --fake --no-canonicalize > /dev/null 2>&1
++	true --fake --no-canonicalize > /dev/null 2>&1
+ 	if test $? != 1; then
+ 		AC_MSG_RESULT([yes])
+ 	else
+-		firstline=`umount --fake --no-canonicalize 2>&1 | head -1`
++		firstline=`true --fake --no-canonicalize 2>&1 | head -1`
+ 		if test "$firstline" = 'umount: only root can use "--fake" option'; then
+ 			AC_MSG_RESULT([yes])
+ 		else
+-- 
+2.32.0
+
diff --git a/sys-fs/fuse/files/fuse-2.9.9-closefrom-glibc-2-34.patch b/sys-fs/fuse/files/fuse-2.9.9-closefrom-glibc-2-34.patch
new file mode 100644
index 0000000..beb8d51
--- /dev/null
+++ b/sys-fs/fuse/files/fuse-2.9.9-closefrom-glibc-2-34.patch
@@ -0,0 +1,60 @@
+From ae2352bca9b4e607538412da0cc2a9625cd8b692 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sat, 24 Jul 2021 22:02:45 +0100
+Subject: [PATCH] util/ulockmgr_server.c: conditionally define closefrom (fix
+ glibc-2.34+)
+
+closefrom(3) has joined us in glibc-land from *BSD and Solaris. Since
+it's available in glibc 2.34+, we want to detect it and only define our
+fallback if the libc doesn't provide it.
+
+Bug: https://bugs.gentoo.org/803923
+Signed-off-by: Sam James <sam@gentoo.org>
+---
+ configure.ac           | 1 +
+ util/ulockmgr_server.c | 6 ++++++
+ 2 files changed, 7 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 9946a0efa..a2d481aa9 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -55,6 +55,7 @@ fi
+ 
+ AC_CHECK_FUNCS([fork setxattr fdatasync splice vmsplice utimensat])
+ AC_CHECK_FUNCS([posix_fallocate])
++AC_CHECK_FUNCS([closefrom])
+ AC_CHECK_MEMBERS([struct stat.st_atim])
+ AC_CHECK_MEMBERS([struct stat.st_atimespec])
+ 
+diff --git a/util/ulockmgr_server.c b/util/ulockmgr_server.c
+index 273c7d923..a04dac5c6 100644
+--- a/util/ulockmgr_server.c
++++ b/util/ulockmgr_server.c
+@@ -22,6 +22,10 @@
+ #include <sys/socket.h>
+ #include <sys/wait.h>
+ 
++#ifdef HAVE_CONFIG_H
++	#include "config.h"
++#endif
++
+ struct message {
+ 	unsigned intr : 1;
+ 	unsigned nofd : 1;
+@@ -124,6 +128,7 @@ static int receive_message(int sock, void *buf, size_t buflen, int *fdp,
+ 	return res;
+ }
+ 
++#if !defined(HAVE_CLOSEFROM)
+ static int closefrom(int minfd)
+ {
+ 	DIR *dir = opendir("/proc/self/fd");
+@@ -141,6 +146,7 @@ static int closefrom(int minfd)
+ 	}
+ 	return 0;
+ }
++#endif
+ 
+ static void send_reply(int cfd, struct message *msg)
+ {
diff --git a/sys-fs/fuse/fuse-3.10.4.ebuild b/sys-fs/fuse/fuse-3.10.4.ebuild
new file mode 100644
index 0000000..9d02b0b
--- /dev/null
+++ b/sys-fs/fuse/fuse-3.10.4.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9} )
+inherit meson-multilib udev python-any-r1
+
+DESCRIPTION="An interface for filesystems implemented in userspace"
+HOMEPAGE="https://github.com/libfuse/libfuse"
+SRC_URI="https://github.com/libfuse/libfuse/releases/download/${P}/${P}.tar.xz"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="3"
+KEYWORDS="*"
+IUSE="+suid test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="virtual/pkgconfig
+	test? (
+		${PYTHON_DEPS}
+		$(python_gen_any_dep 'dev-python/pytest[${PYTHON_USEDEP}]')
+	)"
+RDEPEND=">=sys-fs/fuse-common-3.3.0-r1"
+
+DOCS=( AUTHORS ChangeLog.rst README.md doc/README.NFS doc/kernel.txt )
+
+python_check_deps() {
+	has_version -b "dev-python/pytest[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+	use test && python_setup
+}
+
+multilib_src_configure() {
+	local emesonargs=(
+		$(meson_use test examples)
+		-Duseroot=false
+		-Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
+	)
+	meson_src_configure
+}
+
+src_test() {
+	if [[ ${EUID} != 0 ]]; then
+		ewarn "Running as non-root user, skipping tests"
+	elif has sandbox ${FEATURES}; then
+		ewarn "Sandbox enabled, skipping tests"
+	else
+		multilib-minimal_src_test
+	fi
+}
+
+multilib_src_test() {
+	${EPYTHON} -m pytest test || die
+}
+
+multilib_src_install_all() {
+	# installed via fuse-common
+	rm -r "${ED}"{/etc,$(get_udevdir)} || die
+
+	# init script location is hard-coded in install_helper.sh
+	rm -rf "${D}"/etc || die
+
+	# useroot=false prevents the build system from doing this.
+	use suid && fperms u+s /usr/bin/fusermount3
+
+	# manually install man pages to respect compression
+	rm -r "${ED}"/usr/share/man || die
+	doman doc/{fusermount3.1,mount.fuse3.8}
+}
diff --git a/sys-fs/fuse/metadata.xml b/sys-fs/fuse/metadata.xml
index 4234371..b23dca6 100644
--- a/sys-fs/fuse/metadata.xml
+++ b/sys-fs/fuse/metadata.xml
@@ -1,12 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-  <maintainer type="person">
-    <email>radhermit@gentoo.org</email>
-    <name>Tim Harder</name>
-  </maintainer>
-  <upstream>
-    <remote-id type="cpe">cpe:/a:fuse:fuse</remote-id>
-    <remote-id type="github">libfuse/libfuse</remote-id>
-  </upstream>
+	<maintainer type="project">
+		<email>base-system@gentoo.org</email>
+	</maintainer>
+	<upstream>
+		<remote-id type="cpe">cpe:/a:fuse:fuse</remote-id>
+		<remote-id type="github">libfuse/libfuse</remote-id>
+	</upstream>
 </pkgmetadata>
diff --git a/sys-fs/lxcfs/Manifest b/sys-fs/lxcfs/Manifest
index 641404b..67d5e65 100644
--- a/sys-fs/lxcfs/Manifest
+++ b/sys-fs/lxcfs/Manifest
@@ -1,2 +1,2 @@
-DIST lxcfs-4.0.8.tar.gz 458975 BLAKE2B 19ac81c36c3aad0ee3301eda73aa29399304dff1c827041678be73c4134181667a4d92b3efa37a44b2853b825031fef2e07e7cbfcaf552676a01f5f9faedf9c3 SHA512 830a4a25583a645b59c75327701af24c239323bfe822180c2cb7cb7cc284f50e8bb7c38e771ea869b4449370af1ab1a4fed9611c6495883d193f5a0f6f71380e
-DIST lxcfs-4.0.8.tar.gz.asc 833 BLAKE2B da4ef0f8d6dea59d83f708b6aa7c1835773537e3111d8e9aaf4a7c111d21a0b57486cc9828919bea55ea06ee6bf3e03eeae89eb26199e287066b309d6d798c8d SHA512 f8fc10e52472fff599df7e008d34346489754d64347d005794a4b280949130bb0370ade0d65c9eb182914cae3a6c55f9872bc38481b0b64ea1218c8d1640a74f
+DIST lxcfs-4.0.9.tar.gz 453383 BLAKE2B 06694218d45d93baa9041aeae39e52d827ca1b53d616284d0ee04ddfe98436a15b3cf900c7b58f14e506a0726f30679b0a04e6b5047087201ad2a9c35f0cc09e SHA512 c8d02cefb42dee82ea9467631e8e59243a6cb06d4ea53f0ce8da0a9bbc9018480bb0f12723091da672446a75ba200cca044b84c2f13388009dde9e5ad0ca3ebe
+DIST lxcfs-4.0.9.tar.gz.asc 833 BLAKE2B fa71f7a6a7a35fbc7613ec2d7549197fe0d33c9584aea86fe3db959848eeb1b0e69a75ca2d596578f3c7f3a9deca5cec1badce428b4aa52e6f112cf3fe544b3b SHA512 fd9feac31469db7785c8b486ddc4f5c0431ab2aa52aed715e853fcab322e8c6ee755aa87d9bdee7a969a8030be1956863662f8b2db09bfe4b8ba69ef8f2fbb3e
diff --git a/sys-fs/lxcfs/lxcfs-4.0.8.ebuild b/sys-fs/lxcfs/lxcfs-4.0.9.ebuild
similarity index 100%
rename from sys-fs/lxcfs/lxcfs-4.0.8.ebuild
rename to sys-fs/lxcfs/lxcfs-4.0.9.ebuild
diff --git a/sys-fs/rar2fs/files/rar2fs-1.29.4-no-archive-path-on-stdout.patch b/sys-fs/rar2fs/files/rar2fs-1.29.4-no-archive-path-on-stdout.patch
deleted file mode 100644
index be3dd9b..0000000
--- a/sys-fs/rar2fs/files/rar2fs-1.29.4-no-archive-path-on-stdout.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From a23a3cbcf9c888d8bd9453f6ddbffd095604734c Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Fran=C3=A7ois=20Degros?= <fdegros@chromium.org>
-Date: Wed, 20 Jan 2021 14:39:58 +1100
-Subject: [PATCH] Don't print archive file path on stdout
-
-Messages printed by rar2fs on stdout or stderr can be logged in system
-logs by the calling system. The file path can contain PII and should not
-be logged in system logs readable by everyone on the system.
----
- src/rar2fs.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/src/rar2fs.c b/src/rar2fs.c
-index f28493d..e1a1a20 100644
---- a/src/rar2fs.c
-+++ b/src/rar2fs.c
-@@ -5728,18 +5728,18 @@ int main(int argc, char *argv[])
-                 const int ret = collect_files(src_path_full);
-                 if (ret < 0) {
-                         const int err = -ret;
--                        printf("%s: cannot open '%s': %s\n", argv[0],
--                               src_path_full, error_to_string(err));
-+                        printf("%s: cannot open RAR: %s\n", argv[0],
-+                               error_to_string(err));
-                         return err;
-                 }
-                 if (ret == 0) {
--                        printf("%s: cannot find primary file for multipart archive '%s'\n",
--                               argv[0], src_path_full);
-+                        printf(
-+                            "%s: cannot find primary file for multipart RAR\n",
-+                            argv[0]);
-                         return 1;
-                 }
-         }
- 
--
-         /* Check I/O buffer and history size */
-         if (check_iob(argv[0], 1))
-                 return -1;
--- 
-2.30.0.284.gd98b1dd5eaa7-goog
-
diff --git a/sys-fs/rar2fs/files/rar2fs-1.29.4-password-from-stdin.patch b/sys-fs/rar2fs/files/rar2fs-1.29.4-password-from-stdin.patch
deleted file mode 100644
index 2637f1d..0000000
--- a/sys-fs/rar2fs/files/rar2fs-1.29.4-password-from-stdin.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 498e195ca77cd43d2dc281aae6219ff2b8e8b35f Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Fran=C3=A7ois=20Degros?= <fdegros@chromium.org>
-Date: Thu, 23 Jul 2020 18:15:29 +1000
-Subject: [PATCH] Read password from stdin
-
----
- src/rar2fs.c | 27 +++++++++++++++++++++++++++
- 1 file changed, 27 insertions(+)
-
-diff --git a/src/rar2fs.c b/src/rar2fs.c
-index 1e6f23b..f28493d 100644
---- a/src/rar2fs.c
-+++ b/src/rar2fs.c
-@@ -463,6 +463,33 @@ static wchar_t *get_password(const char *file, wchar_t *buf, size_t len)
- static char *get_password(const char *file, char *buf, size_t len)
- #endif
- {
-+#define GPASSWORD_SIZE 256
-+  
-+        static char gpassword[GPASSWORD_SIZE];
-+
-+        if (!gpassword[0]) {
-+                /* Read password from stdin. */
-+                printf("Password?\n");
-+                if (!fgets(gpassword, GPASSWORD_SIZE, stdin))
-+                        return NULL;
-+
-+                /* Remove newline at the end of password. */
-+                const size_t n = strlen(gpassword);
-+                if (n > 0) {
-+                        char *const last = &gpassword[n - 1];
-+                        if (*last == '\n')
-+                                *last = '\0';
-+                }
-+        }
-+
-+        if (!gpassword[0])
-+                return NULL;
-+
-+        if (mbstowcs(buf, gpassword, len) < len)
-+                return buf;
-+
-+        return NULL;
-+
-         char *f[2] = {NULL, NULL};
-         int l[2] = {0, 0};
-         int i;
--- 
-2.30.0.284.gd98b1dd5eaa7-goog
-
diff --git a/sys-fs/rar2fs/files/rar2fs-1.29.5-directory-cache-invalidation.patch b/sys-fs/rar2fs/files/rar2fs-1.29.5-directory-cache-invalidation.patch
new file mode 100644
index 0000000..a785805
--- /dev/null
+++ b/sys-fs/rar2fs/files/rar2fs-1.29.5-directory-cache-invalidation.patch
@@ -0,0 +1,91 @@
+From 11819a872b0db016c4d9abacf226c9351105da95 Mon Sep 17 00:00:00 2001
+From: Hans Beckerus <hans.beckerus at gmail.com>
+Date: Sat, 24 Jul 2021 22:53:12 +0200
+Subject: [PATCH] Fix directory cache invalidation
+
+Commit 99d7a61bfbe7a37628543f15f71f63e7681ae8b3 changed from a linear
+search algorithm to a recursive approach. There was however a flaw in
+the latter which has now hopefully been corrected.
+
+Resolves-issue: #162
+Signed-off-by: Hans Beckerus <hans.beckerus at gmail.com>
+---
+ src/hashtable.c | 21 +++++++++++++--------
+ 1 file changed, 13 insertions(+), 8 deletions(-)
+
+diff --git a/src/hashtable.c b/src/hashtable.c
+index 08180e9..2fb01fe 100644
+--- a/src/hashtable.c
++++ b/src/hashtable.c
+@@ -1,4 +1,3 @@
+-
+ /*
+     Copyright (C) 2009 Hans Beckerus (hans.beckerus@gmail.com)
+ 
+@@ -208,6 +207,7 @@ static int __hashtable_entry_delete_subkeys(void *h, const char *key,
+         struct hash_table *ht = h;
+         struct hash_table_entry *p;
+         struct hash_table_entry *b;
++        struct hash_table_entry *n;
+ 
+         if (++level > MAX_SUBKEY_LEVELS)
+                 return level;
+@@ -217,25 +217,28 @@ static int __hashtable_entry_delete_subkeys(void *h, const char *key,
+ 
+         /* Search collision chain first to reduce bucket updates */
+         while (p->next) {
++                n = p;
+                 p = p->next;
+-                if ((hash == p->hash) && (strstr(p->key, key) == p->key)) {
++                if ((hash == b->hash) && (strstr(p->key, key) == p->key)) {
+                         level = __hashtable_entry_delete_subkeys(h, key,
+                                                          get_hash(p->key, 0),
+                                                          level);
++                        if (level >= MAX_SUBKEY_LEVELS)
++                                return level;
+                         hashtable_entry_delete_hash(h, p->key, hash);
+-                        if (level > MAX_SUBKEY_LEVELS)
+-                                goto out;
+-                        p = b;
++                        p = n;
+                 }
+         }
+         /* Finally check the bucket */
+         if (b->key && (hash == b->hash) && (strstr(b->key, key) == b->key)) {
+                 level = __hashtable_entry_delete_subkeys(h, key,
+-                                                 get_hash(b->key, 0), level);
++                                                 get_hash(b->key, 0),
++                                                 level);
++                if (level >= MAX_SUBKEY_LEVELS)
++                        return level;
+                 hashtable_entry_delete_hash(h, b->key, hash);
+         }
+ 
+-out:
+         --level;
+         return level;
+ }
+@@ -250,6 +253,7 @@ void hashtable_entry_delete_subkeys(void *h, const char *key, uint32_t hash)
+         struct hash_table *ht = h;
+         struct hash_table_entry *p;
+         struct hash_table_entry *b;
++        struct hash_table_entry *n;
+         size_t i;
+ 
+         if (!__hashtable_entry_delete_subkeys(h, key, hash, 0))
+@@ -261,10 +265,11 @@ void hashtable_entry_delete_subkeys(void *h, const char *key, uint32_t hash)
+                 p = b;
+                 /* Search collision chain first to reduce bucket updates */
+                 while (p->next) {
++                        n = p;
+                         p = p->next;
+                         if (strstr(p->key, key) == p->key) {
+                                 hashtable_entry_delete_hash(h, p->key, p->hash);
+-                                p = b;
++                                p = n;
+                         }
+                 }
+                 /* Finally check the bucket */
+-- 
+2.33.0.rc1.237.g0d66db33f3-goog
+
diff --git a/sys-fs/rar2fs/files/rar2fs-1.29.5-fix-crash-in-collect-files.patch b/sys-fs/rar2fs/files/rar2fs-1.29.5-fix-crash-in-collect-files.patch
new file mode 100644
index 0000000..090e8dd
--- /dev/null
+++ b/sys-fs/rar2fs/files/rar2fs-1.29.5-fix-crash-in-collect-files.patch
@@ -0,0 +1,295 @@
+From 46b1bceb88928e75124a63805899fb4498d571c0 Mon Sep 17 00:00:00 2001
+From: Hans Beckerus <hans.beckerus at gmail.com>
+Date: Mon, 9 Aug 2021 21:08:18 +0200
+Subject: [PATCH] Fix crash in collect files()
+
+When collect_files() tries to identify first volume file there is a
+missing check on a pointer to be valid or not. There are two identified
+scenarios in which this can happen.
+
+1) Failing to allocate memory that in current design could still produce
+a pointer that is not NULL but still not valid. This is due to how C++
+'operator new' by default works since the time exceptions were introduced.
+In this case simply checking for NULL would not be enough.
+
+2) Probably a lot more likely but still must be considered an extremely
+rare case is that the function involved returns ERAR_EOPEN without
+first having allocated this memory in the first place. This can only
+happen in a very specific branch in the unrar library that has been
+overlooked or it was introduced in a later version of it. It covers a
+very old RAR compression format/version that had a flaw in the way
+length of each file was calculated. It could result in that an entire
+file fitted in one volume but still indicated in the header that it
+continued in the next. Such archives must not be allowed to be opened
+and hence an error is thrown. A simple test for NULL would cure that
+since pointer is initialized to 0 and if no allocation is performed it
+will remain 0 across the function call.
+
+Thus to solve both these scenarios the solution is to:
+  - check for NULL where relevant
+  - call operator new with the (std:nothrow) argument
+
+This patch also introduce some stability changes to collect_files()
+and should avoid some other potential problems for obfuscated and
+non-standard archive names.
+
+Resolves-issue: #167
+Signed-off-by: Hans Beckerus <hans.beckerus at gmail.com>
+---
+ src/dllext.cpp |  10 +++--
+ src/rar2fs.c   | 117 ++++++++++++++++++++++++++-----------------------
+ 2 files changed, 69 insertions(+), 58 deletions(-)
+
+diff --git a/src/dllext.cpp b/src/dllext.cpp
+index df459ed..3b8c240 100644
+--- a/src/dllext.cpp
++++ b/src/dllext.cpp
+@@ -86,7 +86,9 @@ int PASCAL RARListArchiveEx(HANDLE hArcData, RARArchiveDataEx **NN)
+ 
+     if (!*NN)
+     {
+-      *NN = new RARArchiveDataEx;
++      *NN = new (std::nothrow) RARArchiveDataEx;
++      if (!*NN)
++        return ERAR_NO_MEMORY;
+     }
+     N = *NN;
+     memcpy(&N->hdr, &h, sizeof(h));
+@@ -180,8 +182,6 @@ int PASCAL RARListArchiveEx(HANDLE hArcData, RARArchiveDataEx **NN)
+       }
+     }
+ #endif
+-    // Skip to next header
+-    return RARProcessFile(hArcData,RAR_SKIP,NULL,NULL);
+   }
+ #if RARVER_MAJOR > 4 || ( RARVER_MAJOR == 4 && RARVER_MINOR >= 20 )
+   catch (std::bad_alloc&) // Catch 'new' exception.
+@@ -191,9 +191,11 @@ int PASCAL RARListArchiveEx(HANDLE hArcData, RARArchiveDataEx **NN)
+       *NN = NULL;
+     }
+     cerr << "RARListArchiveEx() caught std:bac_alloc error" << endl;
++    return ERAR_NO_MEMORY;
+   }
+ #endif
+-  return 0;
++  // Skip to next header
++  return RARProcessFile(hArcData,RAR_SKIP,NULL,NULL);
+ }
+ 
+ void PASCAL RARFreeArchiveDataEx(RARArchiveDataEx **NN)
+diff --git a/src/rar2fs.c b/src/rar2fs.c
+index 7d25735..1d97d8a 100644
+--- a/src/rar2fs.c
++++ b/src/rar2fs.c
+@@ -886,6 +886,10 @@ static int get_vformat(const char *s, int t, int *l, int *p)
+                 }
+         }
+ 
++        /* Sanity check */
++        if (len <= 0 || pos < 0 || (size_t)(len + pos) > SLEN)
++                return -1;
++
+         if (l) *l = len;
+         if (p) *p = pos;
+         return vol;
+@@ -907,6 +911,8 @@ static int __RARVolNameToFirstName(char *arch, int vtype)
+         int ret = 0;
+ 
+         vol = get_vformat(arch, !vtype, &len, &pos);
++        if (vol == -1)
++                return -1;
+         RARVolNameToFirstName(arch, vtype);
+ 
+         memset(&header, 0, sizeof(header));
+@@ -1748,20 +1754,15 @@ out:
+  * Identifies all the files that are part of the same multipart archive and
+  * located in the same directory as |arch| and stores their paths.
+  *
+- * Returns the number of files making the multipart archive.
+- * Returns 1 if |arch| is not part of a multipart archive.
+- * Returns a negative ERAR error code in case of error.
++ * Returns 0 on success.
++ * Returns a negative ERAR_ error code in case of error.
+  ****************************************************************************/
+ static int collect_files(const char *arch)
+ {
+         RAROpenArchiveDataEx d;
+-        int files;
++        struct RARHeaderDataEx header;
+         char *arch_;
+-        int format;
+         struct dir_entry_list *list;
+-        int vol = -1;
+-        int pos;
+-        int len;
+ 
+         memset(&d, 0, sizeof(RAROpenArchiveDataEx));
+         d.ArcName = (char *)arch;   /* Horrible cast! But hey... it is the API! */
+@@ -1774,7 +1775,6 @@ static int collect_files(const char *arch)
+         if (!arch_)
+                 return -ERAR_NO_MEMORY;
+ 
+-again:
+         h = RAROpenArchiveEx(&d);
+ 
+         /* Check for fault */
+@@ -1785,41 +1785,47 @@ again:
+                 return -d.OpenResult;
+         }
+ 
+-        format = IS_NNN(arch) ? 1 : VTYPE(d.Flags);
+-        if (vol == -1)
+-                vol = get_vformat(arch, format, &len, &pos);
+-        if (d.Flags & ROADF_VOLUME && !(d.Flags & ROADF_FIRSTVOLUME)) {
+-                if (vol) {
+-                        char *tmp;
+-                        RARCloseArchive(h);
+-                        --vol;
+-                        tmp = get_vname(format, arch_, vol, len, pos);
++        if (d.Flags & ROADF_VOLUME) {
++                int format = IS_NNN(arch_) ? 1 : VTYPE(d.Flags);
++                if (__RARVolNameToFirstName(arch_, !format)) {
+                         free(arch_);
+-                        arch_ = tmp;
+-                        d.ArcName = (char *)arch_;
+-                        goto again;
++                        return -ERAR_EOPEN;
++                }
++                RARCloseArchive(h);
++                d.ArcName = (char *)arch_;
++                h = RAROpenArchiveEx(&d);
++
++                /* Check for fault */
++                if (d.OpenResult != ERAR_SUCCESS) {
++                        if (h)
++                                RARCloseArchive(h);
++                        free(arch_);
++                        return -d.OpenResult;
+                 }
+         }
+ 
+         RARArchiveDataEx *arc = NULL;
+         int dll_result = RARListArchiveEx(h, &arc);
+-        if (dll_result && dll_result != ERAR_EOPEN) {
+-                if (dll_result != ERAR_END_ARCHIVE) {
+-                        RARFreeArchiveDataEx(&arc);
+-                        RARCloseArchive(h);
+-                        free(arch_);
+-                        return -dll_result;
+-                }
++        if (dll_result != ERAR_SUCCESS) {
++                if (dll_result == ERAR_EOPEN && arc)
++                        dll_result = ERAR_SUCCESS;
++                if (dll_result == ERAR_END_ARCHIVE && !arc)
++                        dll_result = ERAR_EOPEN;
++        }
++        if (dll_result != ERAR_SUCCESS && dll_result != ERAR_END_ARCHIVE) {
++                RARFreeArchiveDataEx(&arc);
++                RARCloseArchive(h);
++                free(arch_);
++                return -dll_result;
+         }
+ 
+         /* Pointless to test for encrypted files if header is already encrypted
+          * and could be read. */
+         if (d.Flags & ROADF_ENCHEADERS)
+                 goto skip_file_check;
+-
+         if (arc->hdr.Flags & RHDF_ENCRYPTED) {
+                 dll_result = extract_rar(arch_, arc->hdr.FileName, NULL);
+-                if (dll_result && dll_result != ERAR_UNKNOWN) {
++                if (dll_result != ERAR_SUCCESS && dll_result != ERAR_UNKNOWN) {
+                         RARFreeArchiveDataEx(&arc);
+                         RARCloseArchive(h);
+                         free(arch_);
+@@ -1829,37 +1835,47 @@ again:
+ 
+ skip_file_check:
+         RARFreeArchiveDataEx(&arc);
++        RARCloseArchive(h);
++
+         list = arch_list;
+         dir_list_open(list);
+ 
+-        files = 0;
++        /* Let libunrar deal with the collection of volume parts */
+         if (d.Flags & ROADF_VOLUME) {
+-                off_t prev_size = 0;
++                h = RAROpenArchiveEx(&d);
++
++                /* Check for fault */
++                if (d.OpenResult != ERAR_SUCCESS) {
++                        if (h)
++                                RARCloseArchive(h);
++                        free(arch_);
++                        return -d.OpenResult;
++                }
+                 while (1) {
+-                        struct stat st;
+-                        if (stat(arch_, &st))
++                        dll_result = RARReadHeaderEx(h, &header);
++                        if (dll_result != ERAR_SUCCESS) {
++                                if (dll_result == ERAR_END_ARCHIVE)
++                                        dll_result = ERAR_SUCCESS;
++                                else
++                                        dll_result = ERAR_EOPEN;
+                                 break;
+-                        if (files && st.st_size != prev_size)
+-                                if (is_first_volume_by_name(arch_))
+-                                        break;
+-                        prev_size = st.st_size;
+-                        list = dir_entry_add(list, arch_, NULL,
+-                                                DIR_E_NRM);
+-                        ++files;
+-                        RARNextVolumeName(arch_, !format);
++                        }
++                        (void)RARProcessFile(h, RAR_SKIP, NULL, NULL);
++                        list = dir_entry_add(list, header.ArcName, NULL,
++                                             DIR_E_NRM);
+                 }
++                RARCloseArchive(h);
+         } else {
+                 (void)dir_entry_add(list, arch_, NULL, DIR_E_NRM);
+-                files = 1;
++                dll_result = ERAR_SUCCESS;
+         }
+ 
+-        RARCloseArchive(h);
+-        free(arch_);
+-        if (!files)
++        if (dll_result != ERAR_SUCCESS)
+                 dir_list_free(arch_list);
++        free(arch_);
+ 
+         /* Do not close the list since it could re-order the entries! */
+-        return files;
++        return -dll_result;
+ }
+ 
+ /*!
+@@ -2638,7 +2654,6 @@ static int listrar(const char *path, struct dir_entry_list **buffer,
+                 const char *arch, char **first_arch, int *final)
+ {
+         ENTER_("%s   arch=%s", path, arch);
+-
+         RAROpenArchiveDataEx d;
+         memset(&d, 0, sizeof(RAROpenArchiveDataEx));
+         d.ArcName = (char *)arch;   /* Horrible cast! But hey... it is the API! */
+@@ -5733,14 +5748,8 @@ int main(int argc, char *argv[])
+                                src_path_full, error_to_string(err));
+                         return err;
+                 }
+-                if (ret == 0) {
+-                        printf("%s: cannot find primary file for multipart archive '%s'\n",
+-                               argv[0], src_path_full);
+-                        return 1;
+-                }
+         }
+ 
+-
+         /* Check I/O buffer and history size */
+         if (check_iob(argv[0], 1))
+                 return -1;
+-- 
+2.33.0.rc1.237.g0d66db33f3-goog
+
diff --git a/sys-fs/rar2fs/files/rar2fs-1.29.5-no-archive-path-on-stdout.patch b/sys-fs/rar2fs/files/rar2fs-1.29.5-no-archive-path-on-stdout.patch
new file mode 100644
index 0000000..a5b4d0c
--- /dev/null
+++ b/sys-fs/rar2fs/files/rar2fs-1.29.5-no-archive-path-on-stdout.patch
@@ -0,0 +1,30 @@
+From 7dcd0612973759ac66fc5ed9a3ef53aa6b1eac5e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Fran=C3=A7ois=20Degros?= <fdegros@chromium.org>
+Date: Wed, 20 Jan 2021 14:39:58 +1100
+Subject: [PATCH] Don't print archive file path on stdout
+
+Messages printed by rar2fs on stdout or stderr can be logged in system
+logs by the calling system. The file path can contain PII and should not
+be logged in system logs readable by everyone on the system.
+---
+ src/rar2fs.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/rar2fs.c b/src/rar2fs.c
+index 5728548..122f653 100644
+--- a/src/rar2fs.c
++++ b/src/rar2fs.c
+@@ -5771,8 +5771,8 @@ int main(int argc, char *argv[])
+                 const int ret = collect_files(src_path_full);
+                 if (ret < 0) {
+                         const int err = -ret;
+-                        printf("%s: cannot open '%s': %s\n", argv[0],
+-                               src_path_full, error_to_string(err));
++                        printf("%s: cannot open RAR: %s\n", argv[0],
++                               error_to_string(err));
+                         return err;
+                 }
+         }
+-- 
+2.33.0.rc1.237.g0d66db33f3-goog
+
diff --git a/sys-fs/rar2fs/files/rar2fs-1.29.5-password-from-stdin.patch b/sys-fs/rar2fs/files/rar2fs-1.29.5-password-from-stdin.patch
new file mode 100644
index 0000000..bf41574
--- /dev/null
+++ b/sys-fs/rar2fs/files/rar2fs-1.29.5-password-from-stdin.patch
@@ -0,0 +1,50 @@
+From e35c3126419da583a2937d712d24b39cbcfaa76d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Fran=C3=A7ois=20Degros?= <fdegros@chromium.org>
+Date: Thu, 23 Jul 2020 18:15:29 +1000
+Subject: [PATCH] Read password from stdin
+
+---
+ src/rar2fs.c | 27 +++++++++++++++++++++++++++
+ 1 file changed, 27 insertions(+)
+
+diff --git a/src/rar2fs.c b/src/rar2fs.c
+index 1d97d8a..5728548 100644
+--- a/src/rar2fs.c
++++ b/src/rar2fs.c
+@@ -463,6 +463,33 @@ static wchar_t *get_password(const char *file, wchar_t *buf, size_t len)
+ static char *get_password(const char *file, char *buf, size_t len)
+ #endif
+ {
++#define GPASSWORD_SIZE 256
++  
++        static char gpassword[GPASSWORD_SIZE];
++
++        if (!gpassword[0]) {
++                /* Read password from stdin. */
++                printf("Password?\n");
++                if (!fgets(gpassword, GPASSWORD_SIZE, stdin))
++                        return NULL;
++
++                /* Remove newline at the end of password. */
++                const size_t n = strlen(gpassword);
++                if (n > 0) {
++                        char *const last = &gpassword[n - 1];
++                        if (*last == '\n')
++                                *last = '\0';
++                }
++        }
++
++        if (!gpassword[0])
++                return NULL;
++
++        if (mbstowcs(buf, gpassword, len) < len)
++                return buf;
++
++        return NULL;
++
+         char *f[2] = {NULL, NULL};
+         int l[2] = {0, 0};
+         int i;
+-- 
+2.33.0.rc1.237.g0d66db33f3-goog
+
diff --git a/sys-fs/rar2fs/rar2fs-1.29.5-r1.ebuild b/sys-fs/rar2fs/rar2fs-1.29.5-r1.ebuild
deleted file mode 100644
index c880e90..0000000
--- a/sys-fs/rar2fs/rar2fs-1.29.5-r1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools
-
-DESCRIPTION="A FUSE based filesystem that can mount one or multiple RAR archive(s)"
-HOMEPAGE="https://hasse69.github.io/rar2fs/ https://github.com/hasse69/rar2fs"
-SRC_URI="https://github.com/hasse69/${PN}/releases/download/v${PV}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="*"
-IUSE="debug"
-
-# Note that upstream unrar sometimes breaks ABI without updating the SONAME
-# version so try rebuilding rar2fs if it doesn't work following an unrar
-# upgrade.
-RDEPEND=">=app-arch/unrar-5:=
-	sys-fs/fuse:0"
-DEPEND="${RDEPEND}"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-1.29.4-password-from-stdin.patch"
-	"${FILESDIR}/${PN}-1.29.4-no-archive-path-on-stdout.patch"
-)
-
-src_prepare() {
-	default
-	eautoreconf
-}
-
-src_configure() {
-	export USER_CFLAGS="${CFLAGS}"
-
-	econf \
-		--with-unrar="${ESYSROOT}"/usr/include/libunrar \
-		--disable-static-unrar \
-		$(use_enable debug)
-}
diff --git a/sys-fs/rar2fs/rar2fs-1.29.5-r2.ebuild b/sys-fs/rar2fs/rar2fs-1.29.5-r2.ebuild
new file mode 100644
index 0000000..9ff137c
--- /dev/null
+++ b/sys-fs/rar2fs/rar2fs-1.29.5-r2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools
+
+DESCRIPTION="A FUSE based filesystem that can mount one or multiple RAR archive(s)"
+HOMEPAGE="https://hasse69.github.io/rar2fs/ https://github.com/hasse69/rar2fs"
+SRC_URI="https://github.com/hasse69/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="*"
+IUSE="debug"
+
+# Note that upstream unrar sometimes breaks ABI without updating the SONAME
+# version so try rebuilding rar2fs if it doesn't work following an unrar
+# upgrade.
+RDEPEND=">=app-arch/unrar-5:=
+	sys-fs/fuse:0"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-1.29.5-directory-cache-invalidation.patch"
+	"${FILESDIR}/${PN}-1.29.5-fix-crash-in-collect-files.patch"
+	"${FILESDIR}/${PN}-1.29.5-password-from-stdin.patch"
+	"${FILESDIR}/${PN}-1.29.5-no-archive-path-on-stdout.patch"
+)
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+src_configure() {
+	export USER_CFLAGS="${CFLAGS}"
+
+	econf \
+		--with-unrar="${ESYSROOT}"/usr/include/libunrar \
+		--disable-static-unrar \
+		$(use_enable debug)
+}
diff --git a/sys-fs/udev/files/udev-225-bypass-v4l_id-query-for-mipi-camera-related-dev.patch b/sys-fs/udev/files/udev-225-bypass-v4l_id-query-for-mipi-camera-related-dev.patch
new file mode 100644
index 0000000..a952c15
--- /dev/null
+++ b/sys-fs/udev/files/udev-225-bypass-v4l_id-query-for-mipi-camera-related-dev.patch
@@ -0,0 +1,24 @@
+From d78a44cc1b380a94e2f349ebb062e90be910a3d1 Mon Sep 17 00:00:00 2001
+From: Tianshu Qiu <tian.shu.qiu@intel.com>
+Date: Thu, 3 Jun 2021 19:10:08 +0800
+Subject: [PATCH] udev: bypass v4l_id query for mipi camera related devices
+
+---
+ rules/60-persistent-v4l.rules | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/rules/60-persistent-v4l.rules b/rules/60-persistent-v4l.rules
+index 93c5ee8c276a..5502681eefeb 100644
+--- a/rules/60-persistent-v4l.rules
++++ b/rules/60-persistent-v4l.rules
+@@ -3,6 +3,7 @@
+ ACTION=="remove", GOTO="persistent_v4l_end"
+ SUBSYSTEM!="video4linux", GOTO="persistent_v4l_end"
+ ENV{MAJOR}=="", GOTO="persistent_v4l_end"
++SUBSYSTEM=="video4linux", SUBSYSTEMS=="i2c", GOTO="persistent_v4l_end"
+ 
+ IMPORT{program}="v4l_id $devnode"
+ 
+-- 
+2.17.1
+
diff --git a/sys-fs/udev/files/udev-225-sd-device-udev-db-handle-properties-with-empty-value.patch b/sys-fs/udev/files/udev-225-sd-device-udev-db-handle-properties-with-empty-value.patch
new file mode 100644
index 0000000..67cdb40
--- /dev/null
+++ b/sys-fs/udev/files/udev-225-sd-device-udev-db-handle-properties-with-empty-value.patch
@@ -0,0 +1,33 @@
+From bee26651fc3ca2fe6bed00cb0d9c91c429e9bb57 Mon Sep 17 00:00:00 2001
+From: Tom Gundersen <teg@jklm.no>
+Date: Tue, 24 May 2016 01:34:29 +0200
+Subject: [PATCH] sd-device: udev-db - handle properties with empty value
+ (#3330)
+
+The statemachine was unable to parse properties with empty values,
+reported in [0].
+
+When reaching the start of the KEY, we would unconditionally read
+one more character before starting to look for the end-of-line.
+Simply look for the end-of-line from the first character.
+
+[0]: <https://bugzilla.redhat.com/show_bug.cgi?id=1338823>
+---
+ src/libsystemd/sd-device/sd-device.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/src/libsystemd/sd-device/sd-device.c b/src/libsystemd/sd-device/sd-device.c
+index b1c3d5f228..2d7e482b46 100644
+--- a/src/libsystemd/sd-device/sd-device.c
++++ b/src/libsystemd/sd-device/sd-device.c
+@@ -561,7 +561,6 @@ int device_read_uevent_file(sd_device *device) {
+ 
+                         state = VALUE;
+ 
+-                        break;
+                 case VALUE:
+                         if (strchr(NEWLINE, uevent[i])) {
+                                 uevent[i] = '\0';
+-- 
+2.32.0.554.ge1b32706d8-goog
+
diff --git a/sys-fs/udev/udev-225-r35.ebuild b/sys-fs/udev/udev-225-r35.ebuild
deleted file mode 100644
index b3dcd36..0000000
--- a/sys-fs/udev/udev-225-r35.ebuild
+++ /dev/null
@@ -1,407 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools bash-completion-r1 eutils multilib multilib-minimal toolchain-funcs udev user versionator
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="git://anongit.freedesktop.org/systemd/systemd"
-	inherit git-r3
-else
-	patchset=
-	SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> systemd-${PV}.tar.gz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz"
-	fi
-	KEYWORDS="*"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod openrc selinux static-libs"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.24
-	sys-libs/libcap[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20130224-r7
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-	)"
-# Force new make >= -r4 to skip some parallel build issues
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=sys-apps/coreutils-8.16
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-devel/make-3.82-r4
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	openrc? ( >=sys-fs/udev-init-scripts-26 )"
-
-S=${WORKDIR}/systemd-${PV}
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-225-50-udev-default.rules-set-default-group-for-mediaX.patch
-	"${FILESDIR}"/${PN}-225-60-persistent-storage.rules-add-nvme-symlinks.patch
-	"${FILESDIR}"/${PN}-225-libudev-util-change-util_replace_whitespace.patch
-	"${FILESDIR}"/${PN}-225-udev-event-add-replace_whitespace-param.patch
-	"${FILESDIR}"/${PN}-225-udev-rules-perform-whitespace-replacement.patch
-	"${FILESDIR}"/${PN}-225-60-persistent-storage.rules-add-nvme-id-model.patch
-	"${FILESDIR}"/${PN}-225-udev-rules-all-values-can-contain-escaped-double-quotes-now.patch
-	"${FILESDIR}"/${PN}-225-udevadm-trigger-add-settle.patch
-	"${FILESDIR}"/${PN}-225-v4l_id-check-mplane-video-capture-and-output-capaili.patch
-	"${FILESDIR}"/${PN}-225-udevadm-hwdb-Return-non-zero-exit-code-on-error.patch
-	"${FILESDIR}"/${PN}-225-sysmacros.patch
-	"${FILESDIR}"/${PN}-225-50-udev-default.rules-set-default-group-for-udmabuf.patch
-	"${FILESDIR}"/${PN}-225-50-udev-default.rules-disable-REMOVE_CMD-support.patch
-	"${FILESDIR}"/${PN}-225-udev-rules-no-slash-run.patch
-	"${FILESDIR}"/${PN}-225-udev-use-interface-before-the-string-that-interface-.patch
-	"${FILESDIR}"/${PN}-225-udev-stop-freeing-value-after-using-it-for-setting-s.patch
-	"${FILESDIR}"/${PN}-225-workaround-renameat-syscall-wrapper-misdetection.patch
-	"${FILESDIR}"/${PN}-225-udevadm-add-ping-option-to-control-command.patch
-	"${FILESDIR}"/${PN}-225-fix-joystick-with-mouse-identification.patch
-)
-
-check_default_rules() {
-	# Make sure there are no sudden changes to upstream rules file
-	# (more for my own needs than anything else ...)
-	local udev_rules_md5=b8ad860dccae0ca51656b33c405ea2ca
-	MD5=$(md5sum < "${S}"/rules/50-udev-default.rules)
-	MD5=${MD5/  -/}
-	if [[ ${MD5} != ${udev_rules_md5} ]]; then
-		eerror "50-udev-default.rules has been updated, please validate!"
-		eerror "md5sum: ${MD5}"
-		die "50-udev-default.rules has been updated, please validate!"
-	fi
-}
-
-src_prepare() {
-	if ! [[ ${PV} = 9999* ]]; then
-		# secure_getenv() disable for non-glibc systems wrt bug #443030
-		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 25 ]]; then
-			eerror "The line count for secure_getenv() failed, see bug #443030"
-			die
-		fi
-	fi
-
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		EPATCH_SUFFIX=patch EPATCH_FORCE=yes epatch
-	fi
-
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	# change rules back to group uucp instead of dialout for now wrt #454556
-	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
-
-	# stub out the am_path_libcrypt function
-	echo 'AC_DEFUN([AM_PATH_LIBGCRYPT],[:])' > m4/gcrypt.m4
-
-	# apply user patches
-	epatch_user
-
-	eautoreconf
-
-	if ! [[ ${PV} = 9999* ]]; then
-		check_default_rules
-	fi
-
-	# Restore possibility of running --enable-static wrt #472608
-	sed -i \
-		-e '/--enable-static is not supported by systemd/s:as_fn_error:echo:' \
-		configure || die
-
-	if ! use elibc_glibc; then #443030
-		echo '#define secure_getenv(x) NULL' >> config.h.in
-		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
-	fi
-
-	epatch "${PATCHES[@]}"
-}
-
-src_configure() {
-	cros_optimize_package_for_speed
-
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	tc-export CC #463846
-	export cc_cv_CFLAGS__flto=no #502950
-	export cc_cv_CFLAGS__Werror_shadow=no #554454
-
-	# Keep sorted by ./configure --help and only pass --disable flags
-	# when *required* to avoid external deps or unnecessary compile
-	local econf_args
-	econf_args=(
-		--libdir=/usr/$(get_libdir)
-		--docdir=/usr/share/doc/${PF}
-		$(multilib_native_use_enable static-libs static)
-		--disable-nls
-		--disable-dbus
-		$(multilib_native_use_enable kmod)
-		--disable-xkbcommon
-		--disable-seccomp
-		$(multilib_native_use_enable selinux)
-		--disable-xz
-		--disable-lz4
-		--disable-pam
-		$(multilib_native_use_enable acl)
-		--disable-gcrypt
-		--disable-audit
-		--disable-libcryptsetup
-		--disable-qrencode
-		--disable-microhttpd
-		--disable-gnuefi
-		--disable-gnutls
-		--disable-libcurl
-		--disable-libidn
-		--disable-quotacheck
-		--disable-logind
-		--disable-polkit
-		--disable-myhostname
-		$(multilib_is_native_abi || echo "--disable-manpages")
-		--enable-split-usr
-		--without-python
-		--with-bashcompletiondir="$(get_bashcompdir)"
-		--with-rootprefix=
-		$(multilib_is_native_abi && echo "--with-rootlibdir=/$(get_libdir)")
-		--disable-elfutils
-	)
-
-	if ! multilib_is_native_abi; then
-		econf_args+=(
-			MOUNT_{CFLAGS,LIBS}=' '
-		)
-	fi
-
-	ECONF_SOURCE=${S} econf "${econf_args[@]}"
-}
-
-multilib_src_compile() {
-	echo 'BUILT_SOURCES: $(BUILT_SOURCES)' > "${T}"/Makefile.extra
-	emake -f Makefile -f "${T}"/Makefile.extra BUILT_SOURCES
-
-	# Most of the parallel build problems were solved by >=sys-devel/make-3.82-r4,
-	# but not everything -- separate building of the binaries as a workaround,
-	# which will force internal libraries required for the helpers to be built
-	# early enough, like eg. libsystemd-shared.la
-	if multilib_is_native_abi; then
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-
-		local exec_targets=(
-			systemd-udevd
-			udevadm
-		)
-		emake "${exec_targets[@]}"
-
-		local helper_targets=(
-			ata_id
-			cdrom_id
-			collect
-			scsi_id
-			v4l_id
-			mtd_probe
-		)
-		emake "${helper_targets[@]}"
-
-		local man_targets=(
-			man/udev.conf.5
-			man/systemd.link.5
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-		emake "${man_targets[@]}"
-	else
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		local lib_LTLIBRARIES="libudev.la"
-		local pkgconfiglib_DATA="src/libudev/libudev.pc"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-rootbinPROGRAMS
-			install-rootlibexecPROGRAMS
-			install-udevlibexecPROGRAMS
-			install-dist_udevconfDATA
-			install-dist_udevrulesDATA
-			install-pkgconfiglibDATA
-			install-pkgconfigdataDATA
-			install-dist_docDATA
-			libudev-install-hook
-			install-directories-hook
-			install-dist_bashcompletionDATA
-			install-dist_networkDATA
-		)
-
-		# add final values of variables:
-		targets+=(
-			rootlibexec_PROGRAMS=systemd-udevd
-			rootbin_PROGRAMS=udevadm
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			pkgconfigdata_DATA="src/udev/udev.pc"
-			INSTALL_DIRS='$(sysconfdir)/udev/rules.d $(sysconfdir)/udev/hwdb.d $(sysconfdir)/systemd/network'
-			dist_bashcompletion_DATA="shell-completion/bash/udevadm"
-			dist_network_DATA="network/99-default.link"
-		)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-		doman man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-	else
-		local lib_LTLIBRARIES="libudev.la"
-		local pkgconfiglib_DATA="src/libudev/libudev.pc"
-		local include_HEADERS="src/libudev/libudev.h"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-pkgconfiglibDATA
-		)
-
-		targets+=(
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			include_HEADERS="${include_HEADERS}"
-			)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-	fi
-
-	# Move back to the old path since we filter out */systemd/* from images.
-	dodir /sbin
-	mv "${ED}"/lib/systemd/systemd-udevd "${ED}"/sbin/udevd || die
-}
-
-multilib_src_install_all() {
-	dodoc TODO
-
-	prune_libtool_files --all
-	rm -f "${D}"/lib/udev/rules.d/99-systemd.rules
-	rm -f "${D}"/usr/share/doc/${PF}/{LICENSE.*,GVARIANT-SERIALIZATION,DIFFERENCES,PORTING-DBUS1,sd-shutdown.h}
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-
-	# Install ChromeOS-specific rules
-	doins "${FILESDIR}"/91-chromeos-keyboard.rules
-
-	# maintainer note: by not letting the upstream build-sys create the .so
-	# link, you also avoid a parallel make problem
-	mv "${D}"/usr/share/man/man8/systemd-udevd{.service,}.8
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# https://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}
diff --git a/sys-fs/udev/udev-225-r38.ebuild b/sys-fs/udev/udev-225-r38.ebuild
new file mode 100644
index 0000000..008f3ff
--- /dev/null
+++ b/sys-fs/udev/udev-225-r38.ebuild
@@ -0,0 +1,395 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="7"
+
+inherit autotools bash-completion-r1 eutils multilib multilib-minimal toolchain-funcs udev user
+
+if [[ ${PV} = 9999* ]]; then
+	EGIT_REPO_URI="git://anongit.freedesktop.org/systemd/systemd"
+	inherit git-r3
+else
+	SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> systemd-${PV}.tar.gz"
+	KEYWORDS="*"
+fi
+
+DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
+HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
+
+LICENSE="LGPL-2.1 MIT GPL-2"
+SLOT="0"
+IUSE="acl +kmod openrc selinux static-libs"
+
+RESTRICT="test"
+
+# Force new make >= -r4 to skip some parallel build issues
+BDEPEND="
+	dev-util/gperf
+	>=dev-util/intltool-0.50
+	>=sys-apps/coreutils-8.16
+	virtual/pkgconfig
+	>=sys-devel/make-3.82-r4
+	app-text/docbook-xml-dtd:4.2
+	app-text/docbook-xml-dtd:4.5
+	app-text/docbook-xsl-stylesheets
+	dev-libs/libxslt
+"
+COMMON_DEPEND=">=sys-apps/util-linux-2.24
+	sys-libs/libcap[${MULTILIB_USEDEP}]
+	acl? ( sys-apps/acl )
+	kmod? ( >=sys-apps/kmod-16 )
+	selinux? ( >=sys-libs/libselinux-2.1.9 )
+	!<sys-libs/glibc-2.11
+	!sys-apps/gentoo-systemd-integration
+	!sys-apps/systemd
+	abi_x86_32? (
+		!<=app-emulation/emul-linux-x86-baselibs-20130224-r7
+		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+	)"
+DEPEND="${COMMON_DEPEND}
+	virtual/os-headers
+	>=sys-kernel/linux-headers-3.9"
+RDEPEND="${COMMON_DEPEND}
+	!<sec-policy/selinux-base-2.20120725-r10"
+PDEPEND=">=sys-apps/hwids-20140304[udev]
+	openrc? ( >=sys-fs/udev-init-scripts-26 )"
+
+S=${WORKDIR}/systemd-${PV}
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-225-50-udev-default.rules-set-default-group-for-mediaX.patch
+	"${FILESDIR}"/${PN}-225-60-persistent-storage.rules-add-nvme-symlinks.patch
+	"${FILESDIR}"/${PN}-225-libudev-util-change-util_replace_whitespace.patch
+	"${FILESDIR}"/${PN}-225-udev-event-add-replace_whitespace-param.patch
+	"${FILESDIR}"/${PN}-225-udev-rules-perform-whitespace-replacement.patch
+	"${FILESDIR}"/${PN}-225-60-persistent-storage.rules-add-nvme-id-model.patch
+	"${FILESDIR}"/${PN}-225-udev-rules-all-values-can-contain-escaped-double-quotes-now.patch
+	"${FILESDIR}"/${PN}-225-udevadm-trigger-add-settle.patch
+	"${FILESDIR}"/${PN}-225-v4l_id-check-mplane-video-capture-and-output-capaili.patch
+	"${FILESDIR}"/${PN}-225-udevadm-hwdb-Return-non-zero-exit-code-on-error.patch
+	"${FILESDIR}"/${PN}-225-sysmacros.patch
+	"${FILESDIR}"/${PN}-225-50-udev-default.rules-set-default-group-for-udmabuf.patch
+	"${FILESDIR}"/${PN}-225-50-udev-default.rules-disable-REMOVE_CMD-support.patch
+	"${FILESDIR}"/${PN}-225-udev-rules-no-slash-run.patch
+	"${FILESDIR}"/${PN}-225-udev-use-interface-before-the-string-that-interface-.patch
+	"${FILESDIR}"/${PN}-225-udev-stop-freeing-value-after-using-it-for-setting-s.patch
+	"${FILESDIR}"/${PN}-225-workaround-renameat-syscall-wrapper-misdetection.patch
+	"${FILESDIR}"/${PN}-225-udevadm-add-ping-option-to-control-command.patch
+	"${FILESDIR}"/${PN}-225-fix-joystick-with-mouse-identification.patch
+	"${FILESDIR}"/${PN}-225-bypass-v4l_id-query-for-mipi-camera-related-dev.patch
+	"${FILESDIR}"/${PN}-225-sd-device-udev-db-handle-properties-with-empty-value.patch
+)
+
+check_default_rules() {
+	# Make sure there are no sudden changes to upstream rules file
+	# (more for my own needs than anything else ...)
+	local udev_rules_md5=870fa6b180bb6b9527905da2cf85e170
+	MD5=$(md5sum < "${S}"/rules/50-udev-default.rules)
+	MD5=${MD5/  -/}
+	if [[ ${MD5} != ${udev_rules_md5} ]]; then
+		eerror "50-udev-default.rules has been updated, please validate!"
+		eerror "md5sum: ${MD5}"
+		die "50-udev-default.rules has been updated, please validate!"
+	fi
+}
+
+src_prepare() {
+	if ! [[ ${PV} = 9999* ]]; then
+		check_default_rules
+
+		# secure_getenv() disable for non-glibc systems wrt bug #443030
+		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 25 ]]; then
+			eerror "The line count for secure_getenv() failed, see bug #443030"
+			die
+		fi
+	fi
+
+	default
+
+	cat <<-EOF > "${T}"/40-gentoo.rules
+	# Gentoo specific floppy and usb groups
+	SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
+	SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
+	EOF
+
+	# change rules back to group uucp instead of dialout for now wrt #454556
+	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
+
+	# stub out the am_path_libcrypt function
+	echo 'AC_DEFUN([AM_PATH_LIBGCRYPT],[:])' > m4/gcrypt.m4
+
+	eautoreconf
+
+	# Restore possibility of running --enable-static wrt #472608
+	sed -i \
+		-e '/--enable-static is not supported by systemd/s:as_fn_error:echo:' \
+		configure || die
+
+	if ! use elibc_glibc; then #443030
+		echo '#define secure_getenv(x) NULL' >> config.h.in
+		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
+	fi
+}
+
+src_configure() {
+	cros_optimize_package_for_speed
+
+	# Prevent conflicts with i686 cross toolchain, bug 559726
+	tc-export AR CC NM OBJCOPY RANLIB
+	multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+	tc-export CC #463846
+	export cc_cv_CFLAGS__flto=no #502950
+	export cc_cv_CFLAGS__Werror_shadow=no #554454
+
+	# Keep sorted by ./configure --help and only pass --disable flags
+	# when *required* to avoid external deps or unnecessary compile
+	local econf_args
+	econf_args=(
+		--libdir=/usr/$(get_libdir)
+		--docdir=/usr/share/doc/${PF}
+		$(multilib_native_use_enable static-libs static)
+		--disable-nls
+		--disable-dbus
+		$(multilib_native_use_enable kmod)
+		--disable-xkbcommon
+		--disable-seccomp
+		$(multilib_native_use_enable selinux)
+		--disable-xz
+		--disable-lz4
+		--disable-pam
+		$(multilib_native_use_enable acl)
+		--disable-gcrypt
+		--disable-audit
+		--disable-libcryptsetup
+		--disable-qrencode
+		--disable-microhttpd
+		--disable-gnuefi
+		--disable-gnutls
+		--disable-libcurl
+		--disable-libidn
+		--disable-quotacheck
+		--disable-logind
+		--disable-polkit
+		--disable-myhostname
+		$(multilib_is_native_abi || echo "--disable-manpages")
+		--enable-split-usr
+		--without-python
+		--with-bashcompletiondir="$(get_bashcompdir)"
+		--with-rootprefix=
+		$(multilib_is_native_abi && echo "--with-rootlibdir=/$(get_libdir)")
+		--disable-elfutils
+	)
+
+	if ! multilib_is_native_abi; then
+		econf_args+=(
+			MOUNT_{CFLAGS,LIBS}=' '
+		)
+	fi
+
+	ECONF_SOURCE=${S} econf "${econf_args[@]}"
+}
+
+multilib_src_compile() {
+	echo 'BUILT_SOURCES: $(BUILT_SOURCES)' > "${T}"/Makefile.extra
+	emake -f Makefile -f "${T}"/Makefile.extra BUILT_SOURCES
+
+	# Most of the parallel build problems were solved by >=sys-devel/make-3.82-r4,
+	# but not everything -- separate building of the binaries as a workaround,
+	# which will force internal libraries required for the helpers to be built
+	# early enough, like eg. libsystemd-shared.la
+	if multilib_is_native_abi; then
+		local lib_targets=( libudev.la )
+		emake "${lib_targets[@]}"
+
+		local exec_targets=(
+			systemd-udevd
+			udevadm
+		)
+		emake "${exec_targets[@]}"
+
+		local helper_targets=(
+			ata_id
+			cdrom_id
+			collect
+			scsi_id
+			v4l_id
+			mtd_probe
+		)
+		emake "${helper_targets[@]}"
+
+		local man_targets=(
+			man/udev.conf.5
+			man/systemd.link.5
+			man/udev.7
+			man/systemd-udevd.service.8
+			man/udevadm.8
+		)
+		emake "${man_targets[@]}"
+	else
+		local lib_targets=( libudev.la )
+		emake "${lib_targets[@]}"
+	fi
+}
+
+multilib_src_install() {
+	if multilib_is_native_abi; then
+		local lib_LTLIBRARIES="libudev.la"
+		local pkgconfiglib_DATA="src/libudev/libudev.pc"
+
+		local targets=(
+			install-libLTLIBRARIES
+			install-includeHEADERS
+			install-rootbinPROGRAMS
+			install-rootlibexecPROGRAMS
+			install-udevlibexecPROGRAMS
+			install-dist_udevconfDATA
+			install-dist_udevrulesDATA
+			install-pkgconfiglibDATA
+			install-pkgconfigdataDATA
+			install-dist_docDATA
+			libudev-install-hook
+			install-directories-hook
+			install-dist_bashcompletionDATA
+			install-dist_networkDATA
+		)
+
+		# add final values of variables:
+		targets+=(
+			rootlibexec_PROGRAMS=systemd-udevd
+			rootbin_PROGRAMS=udevadm
+			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
+			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
+			pkgconfigdata_DATA="src/udev/udev.pc"
+			INSTALL_DIRS='$(sysconfdir)/udev/rules.d $(sysconfdir)/udev/hwdb.d $(sysconfdir)/systemd/network'
+			dist_bashcompletion_DATA="shell-completion/bash/udevadm"
+			dist_network_DATA="network/99-default.link"
+		)
+		emake -j1 DESTDIR="${D}" "${targets[@]}"
+		doman man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
+	else
+		local lib_LTLIBRARIES="libudev.la"
+		local pkgconfiglib_DATA="src/libudev/libudev.pc"
+		local include_HEADERS="src/libudev/libudev.h"
+
+		local targets=(
+			install-libLTLIBRARIES
+			install-includeHEADERS
+			install-pkgconfiglibDATA
+		)
+
+		targets+=(
+			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
+			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
+			include_HEADERS="${include_HEADERS}"
+			)
+		emake -j1 DESTDIR="${D}" "${targets[@]}"
+	fi
+
+	# Move back to the old path since we filter out */systemd/* from images.
+	dodir /sbin
+	mv "${ED}"/lib/systemd/systemd-udevd "${ED}"/sbin/udevd || die
+}
+
+multilib_src_install_all() {
+	dodoc TODO
+
+	find "${D}"/usr -name '*.la' -delete
+	rm -f "${D}"/lib/udev/rules.d/99-systemd.rules
+	rm -f "${D}"/usr/share/doc/${PF}/{LICENSE.*,GVARIANT-SERIALIZATION,DIFFERENCES,PORTING-DBUS1,sd-shutdown.h}
+
+	# see src_prepare() for content of 40-gentoo.rules
+	insinto /lib/udev/rules.d
+	doins "${T}"/40-gentoo.rules
+
+	# Install ChromeOS-specific rules
+	doins "${FILESDIR}"/91-chromeos-keyboard.rules
+
+	# maintainer note: by not letting the upstream build-sys create the .so
+	# link, you also avoid a parallel make problem
+	mv "${D}"/usr/share/man/man8/systemd-udevd{.service,}.8
+}
+
+pkg_postinst() {
+	mkdir -p "${ROOT%/}"/run
+
+	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
+	# So try to remove it here (will only work if empty).
+	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
+	if [[ -d ${ROOT%/}/dev/loop ]]; then
+		ewarn "Please make sure your remove /dev/loop,"
+		ewarn "else losetup may be confused when looking for unused devices."
+	fi
+
+	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
+	while read -r dev path fstype rest; do
+		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
+			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
+			ewarn "filesystem. Otherwise udev won't be able to boot."
+			ewarn "See, https://bugs.gentoo.org/453186"
+		fi
+	done < "${fstab}"
+
+	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
+		ewarn
+		ewarn "Please re-emerge all packages on your system which install"
+		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
+		ewarn "/lib/udev."
+		ewarn
+		ewarn "One way to do this is to run the following command:"
+		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
+		ewarn "Note that qfile can be found in app-portage/portage-utils"
+	fi
+
+	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
+	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
+	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
+		if [[ -f ${old_rules} ]]; then
+			ewarn
+			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
+			ewarn "rename it to something else starting with 70- to silence this deprecation"
+			ewarn "warning."
+		fi
+	done
+
+	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
+	# do the same for 80-net-setup-link.rules to keep the old behavior
+	local net_move=no
+	local net_name_slot_sym=no
+	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
+	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
+	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
+	if [[ ! -e ${net_setup_link} ]]; then
+		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
+		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
+			net_move=yes
+			net_name_slot_sym=yes
+		fi
+	fi
+	if [[ ${net_move} == yes ]]; then
+		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
+
+		if [[ ${net_name_slot_sym} == yes ]]; then
+			ln -nfs /dev/null "${net_setup_link}"
+		else
+			cp "${net_name_slot}" "${net_setup_link}"
+		fi
+		eend $?
+	fi
+
+	# https://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
+	# https://bugs.gentoo.org/246847
+	# https://bugs.gentoo.org/514174
+	enewgroup input
+
+	# Update hwdb database in case the format is changed by udev version.
+	if has_version 'sys-apps/hwids[udev]'; then
+		udevadm hwdb --update --root="${ROOT%/}"
+		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
+		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
+		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
+	fi
+}
diff --git a/sys-kernel/chromeos-kernel-3_18/Manifest b/sys-kernel/chromeos-kernel-3_18/Manifest
index 98684d5..3b195a7 100644
--- a/sys-kernel/chromeos-kernel-3_18/Manifest
+++ b/sys-kernel/chromeos-kernel-3_18/Manifest
@@ -1,2 +1,2 @@
-DIST chromeos-kernel-3_18-R93-13982.4-1622453520.gcov.xz 678796 BLAKE2B a3b8fbe19882113ee9d0d5e22ae1b6122732370d38be409f4e2607d44020808e097a6e11f7f4b07f9aeb9c18eb0950908f750d0c9c245ca2c6b336e85255521f SHA512 1fdabc239abb5f7345a9f6c66b3e6df482ea08829ced209157a3ea085dad3e6e56357733656c6bdaea199b582acee7158639d010ab47a85b15512b7f09fc1a12
-DIST chromeos-kernel-3_18-R93-14010.0-1623663215.gcov.xz 503852 BLAKE2B da6553254cf4d9467040e9fc2f949c6e8909ce71c6e53292d5ed42b6167bd949030a6cf33076db3b55aee32b1f2ba65d7293ad87d264fc1544557426ee971a3d SHA512 a6bc1620c5f84526ca21884d287a586898d9db665bf4d1ba657f8109af4586fc08020dbae8fdf236770861c6efec09f58bbdf6375ebb6f14e6d46c4dad051460
+DIST chromeos-kernel-3_18-R93-14059.0-1626082409.gcov.xz 538416 BLAKE2B 2f6713879b9983381ece3555c6553e84e9e24d8ce16a7e5f5ace61ac636c0021fdd167cfbd8ce5464c9453b808060b4493685583d4cbbd242f781bb7d3d9fff7 SHA512 bb4be3424826949a99ee0ed579610e5be07628f2de406dbf22b706b337db233d8625c08be42549519e18356b4bd48c46a0ec545930809af60c9ca877ebaafee4
+DIST chromeos-kernel-3_18-R94-14150.17-1631525840.gcov.xz 523556 BLAKE2B c8f3235d8b80e8ce23bddf4f59bcde6328ad954dc2f02d2e7503dfb814059d43fbce7c39d83cb9ed4b52ae4075ec9151081b74ab5528ba33b5467d9458595e8a SHA512 7781161c770845d3976efb7aaf547796dc5dfc7cb1db58d035852b9a6aaad5dd8474d5060f560c702461f40c1c5f9f3417768157364e8ffb925bdbfe7f8e799d
diff --git a/sys-kernel/chromeos-kernel-3_18/chromeos-kernel-3_18-3.18-r2668.ebuild b/sys-kernel/chromeos-kernel-3_18/chromeos-kernel-3_18-3.18-r2668.ebuild
deleted file mode 100644
index 132175d..0000000
--- a/sys-kernel/chromeos-kernel-3_18/chromeos-kernel-3_18-3.18-r2668.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="3ae30eac2507ebbeffc66284c0ffb892cbe753ee"
-CROS_WORKON_TREE="584f5e2f76ae08f52c5abfaeaa1dba472471bb83"
-CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
-CROS_WORKON_LOCALNAME="kernel/v3.18"
-CROS_WORKON_EGIT_BRANCH="chromeos-3.18"
-
-# AFDO_PROFILE_VERSION is the build on which the profile is collected.
-# This is required by kernel_afdo.
-#
-# TODO: Allow different versions for different CHROMEOS_KERNEL_SPLITCONFIGs
-
-# By default, let cros-kernel2 define AFDO_LOCATION.  This is used in the
-# kernel AFDO verify jobs to specify the location.
-AFDO_LOCATION=""
-
-# Auto-generated by PFQ, don't modify.
-AFDO_PROFILE_VERSION="R93-14010.0-1623663215"
-
-# Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
-# If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
-# Note: Run "ebuild-<board> /path/to/ebuild manifest" afterwards to create new
-# Manifest file.
-AFDO_FROZEN_PROFILE_VERSION=""
-
-# This must be inherited *after* EGIT/CROS_WORKON variables defined
-inherit cros-workon cros-kernel2
-
-HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
-DESCRIPTION="Chrome OS Linux Kernel 3.18"
-KEYWORDS="*"
-
-RDEPEND="!!sys-kernel/gale-kernel-3_18"
-
-# Change the following (commented out) number to the next prime number
-# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
-#
-# NOTE: There's nothing magic keeping this number prime but you just need to
-# make _any_ change to this file.  ...so why not keep it prime?
-#
-# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
-# files (!!!)
-#
-# The coolest prime number is: 173
diff --git a/sys-kernel/chromeos-kernel-3_18/chromeos-kernel-3_18-3.18-r2681.ebuild b/sys-kernel/chromeos-kernel-3_18/chromeos-kernel-3_18-3.18-r2681.ebuild
new file mode 100644
index 0000000..1c3bbaf
--- /dev/null
+++ b/sys-kernel/chromeos-kernel-3_18/chromeos-kernel-3_18-3.18-r2681.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="48d3d74ca8dbbdf3a241609a2ccb6e6599b4d95f"
+CROS_WORKON_TREE="428b606f3040135d83acd83b89dadbd509aa6a9c"
+CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
+CROS_WORKON_LOCALNAME="kernel/v3.18"
+CROS_WORKON_EGIT_BRANCH="chromeos-3.18"
+
+# AFDO_PROFILE_VERSION is the build on which the profile is collected.
+# This is required by kernel_afdo.
+#
+# TODO: Allow different versions for different CHROMEOS_KERNEL_SPLITCONFIGs
+
+# By default, let cros-kernel2 define AFDO_LOCATION.  This is used in the
+# kernel AFDO verify jobs to specify the location.
+AFDO_LOCATION=""
+
+# Auto-generated by PFQ, don't modify.
+AFDO_PROFILE_VERSION="R94-14150.17-1631525840"
+
+# Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
+# If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
+# Note: Run "ebuild-<board> /path/to/ebuild manifest" afterwards to create new
+# Manifest file.
+AFDO_FROZEN_PROFILE_VERSION=""
+
+# This must be inherited *after* EGIT/CROS_WORKON variables defined
+inherit cros-workon cros-kernel2
+
+HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
+DESCRIPTION="Chrome OS Linux Kernel 3.18"
+KEYWORDS="*"
+
+RDEPEND="!!sys-kernel/gale-kernel-3_18"
+
+# Change the following (commented out) number to the next prime number
+# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
+#
+# NOTE: There's nothing magic keeping this number prime but you just need to
+# make _any_ change to this file.  ...so why not keep it prime?
+#
+# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
+# files (!!!)
+#
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-3_18/chromeos-kernel-3_18-9999.ebuild b/sys-kernel/chromeos-kernel-3_18/chromeos-kernel-3_18-9999.ebuild
index 1770de4..4b294fd 100644
--- a/sys-kernel/chromeos-kernel-3_18/chromeos-kernel-3_18-9999.ebuild
+++ b/sys-kernel/chromeos-kernel-3_18/chromeos-kernel-3_18-9999.ebuild
@@ -16,7 +16,7 @@
 AFDO_LOCATION=""
 
 # Auto-generated by PFQ, don't modify.
-AFDO_PROFILE_VERSION="R93-14010.0-1623663215"
+AFDO_PROFILE_VERSION="R94-14150.17-1631525840"
 
 # Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
 # If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
@@ -42,4 +42,4 @@
 # Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
 # files (!!!)
 #
-# The coolest prime number is: 173
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-4_14/Manifest b/sys-kernel/chromeos-kernel-4_14/Manifest
index 63363b9..5d14d02 100644
--- a/sys-kernel/chromeos-kernel-4_14/Manifest
+++ b/sys-kernel/chromeos-kernel-4_14/Manifest
@@ -1,2 +1,2 @@
-DIST chromeos-kernel-4_14-R93-13982.4-1622453960.gcov.xz 1012740 BLAKE2B 7739213406647f9daf43f809c90732f398a03e55f2314025aef251f37bb4f18d12062c5bf35a95bf7eec9bd5a4f707ae61476a5ca90796261ea7c629da6eccff SHA512 78b8b3192b6f808c62ee3b479d39a2fd1553427a2d667ca4a3d939986d3932312568cade8654545bd40a31e7c1c099c8dd3237f76d30773e4ad944d4c8433152
-DIST chromeos-kernel-4_14-R93-14023.0-1623663563.gcov.xz 1116728 BLAKE2B c3462dee34067221997ba16fff16949b139c4a076ec235fd7c6fe77e342aff59c45fe88306766e13aec46d911baf1f34c3b000b6b537bc3a8cf9587715760d70 SHA512 8c81cb3ccfd730ca3e2f71920b3cc40126d0eae0bdc6119275ac05d712f6f33206cd50a413f9a985c0a08fa958fc035446d9cd6e4b155656f8efe7e4ff8ccb2a
+DIST chromeos-kernel-4_14-R94-14150.23-1631525668.gcov.xz 897524 BLAKE2B 29621d6c06d49c4817b252ec208ca0738f52bb79abfd975d14ed9466dbdb1b28ea3f0e47244e8e26b1a5269c9edcf55cc2ad63639e8d79415cbde0268be242f3 SHA512 5bb8593783e6ba3637710765348c0b3e03f1ef33fabcac480363b2066dd70c04d177a76e4be873f9ad14e7274978ab2a8b27444c650c554e0f6c14e060288f24
+DIST chromeos-kernel-4_14-R96-14244.0-1633340189.gcov.xz 1090628 BLAKE2B 234da3fe78eb263b8b3e0320d653669f521315f4642bd2f608ea3e480864ba911d6ae5b8a1f71228363eb724c76d25f05956601ea204e4d26930bdd4c4c88f42 SHA512 168f77c6ad2b0ff209d1448cd4423494c756361b261115ff54eee6c4a48382424ce13ecc7fb22a07111014564e750f1ab77decc75f850fef9fbede8d949339f4
diff --git a/sys-kernel/chromeos-kernel-4_14/chromeos-kernel-4_14-4.14.237-r1641.ebuild b/sys-kernel/chromeos-kernel-4_14/chromeos-kernel-4_14-4.14.237-r1641.ebuild
deleted file mode 100644
index 8ea8e4f..0000000
--- a/sys-kernel/chromeos-kernel-4_14/chromeos-kernel-4_14-4.14.237-r1641.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="1cb1949d80a8fbf201c98279804d1d46dd1812e4"
-CROS_WORKON_TREE="66e638dfefa1448cbb74e4aa39634a314ab106a4"
-CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
-CROS_WORKON_LOCALNAME="kernel/v4.14"
-CROS_WORKON_EGIT_BRANCH="chromeos-4.14"
-
-# AFDO_PROFILE_VERSION is the build on which the profile is collected.
-# This is required by kernel_afdo.
-#
-# TODO: Allow different versions for different CHROMEOS_KERNEL_SPLITCONFIGs
-
-# By default, let cros-kernel2 define AFDO_LOCATION.  This is used in the
-# kernel AFDO verify jobs to specify the location.
-AFDO_LOCATION=""
-
-# Auto-generated by PFQ, don't modify.
-AFDO_PROFILE_VERSION="R93-14023.0-1623663563"
-
-# Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
-# If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
-# Note: Run "ebuild-<board> /path/to/ebuild manifest" afterwards to create new
-# Manifest file.
-AFDO_FROZEN_PROFILE_VERSION=""
-
-# This must be inherited *after* EGIT/CROS_WORKON variables defined
-inherit cros-workon cros-kernel2
-
-HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
-DESCRIPTION="Chrome OS Linux Kernel 4.14"
-KEYWORDS="*"
-
-# Change the following (commented out) number to the next prime number
-# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
-#
-# NOTE: There's nothing magic keeping this number prime but you just need to
-# make _any_ change to this file.  ...so why not keep it prime?
-#
-# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
-# files (!!!)
-#
-# The coolest prime number is: 173
diff --git a/sys-kernel/chromeos-kernel-4_14/chromeos-kernel-4_14-4.14.250-r1710.ebuild b/sys-kernel/chromeos-kernel-4_14/chromeos-kernel-4_14-4.14.250-r1710.ebuild
new file mode 100644
index 0000000..1328c05
--- /dev/null
+++ b/sys-kernel/chromeos-kernel-4_14/chromeos-kernel-4_14-4.14.250-r1710.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="f9a89da46e3b8c52618a92365ee7b69d180994a1"
+CROS_WORKON_TREE="ea3f4935b04180e213c42c0492cb440a64cea0b9"
+CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
+CROS_WORKON_LOCALNAME="kernel/v4.14"
+CROS_WORKON_EGIT_BRANCH="chromeos-4.14"
+
+# AFDO_PROFILE_VERSION is the build on which the profile is collected.
+# This is required by kernel_afdo.
+#
+# TODO: Allow different versions for different CHROMEOS_KERNEL_SPLITCONFIGs
+
+# By default, let cros-kernel2 define AFDO_LOCATION.  This is used in the
+# kernel AFDO verify jobs to specify the location.
+AFDO_LOCATION=""
+
+# Auto-generated by PFQ, don't modify.
+AFDO_PROFILE_VERSION="R96-14244.0-1633340189"
+
+# Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
+# If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
+# Note: Run "ebuild-<board> /path/to/ebuild manifest" afterwards to create new
+# Manifest file.
+AFDO_FROZEN_PROFILE_VERSION=""
+
+# This must be inherited *after* EGIT/CROS_WORKON variables defined
+inherit cros-workon cros-kernel2
+
+HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
+DESCRIPTION="Chrome OS Linux Kernel 4.14"
+KEYWORDS="*"
+
+# Change the following (commented out) number to the next prime number
+# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
+#
+# NOTE: There's nothing magic keeping this number prime but you just need to
+# make _any_ change to this file.  ...so why not keep it prime?
+#
+# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
+# files (!!!)
+#
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-4_14/chromeos-kernel-4_14-9999.ebuild b/sys-kernel/chromeos-kernel-4_14/chromeos-kernel-4_14-9999.ebuild
index f8a6d48..ef22783 100644
--- a/sys-kernel/chromeos-kernel-4_14/chromeos-kernel-4_14-9999.ebuild
+++ b/sys-kernel/chromeos-kernel-4_14/chromeos-kernel-4_14-9999.ebuild
@@ -17,7 +17,7 @@
 AFDO_LOCATION=""
 
 # Auto-generated by PFQ, don't modify.
-AFDO_PROFILE_VERSION="R93-14023.0-1623663563"
+AFDO_PROFILE_VERSION="R96-14244.0-1633340189"
 
 # Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
 # If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
@@ -41,4 +41,4 @@
 # Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
 # files (!!!)
 #
-# The coolest prime number is: 173
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-4_19-ht/chromeos-kernel-4_19-ht-4.19.115-r10.ebuild b/sys-kernel/chromeos-kernel-4_19-ht/chromeos-kernel-4_19-ht-4.19.115-r10.ebuild
deleted file mode 100644
index 1f0d0d1..0000000
--- a/sys-kernel/chromeos-kernel-4_19-ht/chromeos-kernel-4_19-ht-4.19.115-r10.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="32c067a0e895f8d2e65c56ef4c43da87f00394dd"
-CROS_WORKON_TREE="fa55a46690cd73594e89eb9b5066e99177dabc8e"
-CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
-CROS_WORKON_LOCALNAME="kernel/v4.19-ht"
-CROS_WORKON_EGIT_BRANCH="chromeos-4.19-ht"
-
-
-# AFDO_PROFILE_VERSION is the build on which the profile is collected.
-# This is required by kernel_afdo.
-#
-# TODO: Allow different versions for different CHROMEOS_KERNEL_SPLITCONFIGs
-
-# By default, let cros-kernel2 define AFDO_LOCATION.  This is used in the
-# kernel AFDO verify jobs to specify the location.
-AFDO_LOCATION=""
-
-# Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
-# If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
-# Note: Run "ebuild-<board> /path/to/ebuild manifest" afterwards to create new
-# Manifest file.
-AFDO_FROZEN_PROFILE_VERSION=""
-
-# This must be inherited *after* EGIT/CROS_WORKON variables defined
-inherit cros-workon cros-kernel2
-
-HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
-DESCRIPTION="Chrome OS Linux Kernel 4.19-ht"
-KEYWORDS="*"
-
-# Change the following (commented out) number to the next prime number
-# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
-#
-# NOTE: There's nothing magic keeping this number prime but you just need to
-# make _any_ change to this file.  ...so why not keep it prime?
-#
-# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
-# files (!!!)
-#
-# The coolest prime number is: 173
diff --git a/sys-kernel/chromeos-kernel-4_19-ht/chromeos-kernel-4_19-ht-4.19.115-r12.ebuild b/sys-kernel/chromeos-kernel-4_19-ht/chromeos-kernel-4_19-ht-4.19.115-r12.ebuild
new file mode 100644
index 0000000..b3325ca
--- /dev/null
+++ b/sys-kernel/chromeos-kernel-4_19-ht/chromeos-kernel-4_19-ht-4.19.115-r12.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="32c067a0e895f8d2e65c56ef4c43da87f00394dd"
+CROS_WORKON_TREE="fa55a46690cd73594e89eb9b5066e99177dabc8e"
+CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
+CROS_WORKON_LOCALNAME="kernel/v4.19-ht"
+CROS_WORKON_EGIT_BRANCH="chromeos-4.19-ht"
+
+
+# AFDO_PROFILE_VERSION is the build on which the profile is collected.
+# This is required by kernel_afdo.
+#
+# TODO: Allow different versions for different CHROMEOS_KERNEL_SPLITCONFIGs
+
+# By default, let cros-kernel2 define AFDO_LOCATION.  This is used in the
+# kernel AFDO verify jobs to specify the location.
+AFDO_LOCATION=""
+
+# Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
+# If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
+# Note: Run "ebuild-<board> /path/to/ebuild manifest" afterwards to create new
+# Manifest file.
+AFDO_FROZEN_PROFILE_VERSION=""
+
+# This must be inherited *after* EGIT/CROS_WORKON variables defined
+inherit cros-workon cros-kernel2
+
+HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
+DESCRIPTION="Chrome OS Linux Kernel 4.19-ht"
+KEYWORDS="*"
+
+# Change the following (commented out) number to the next prime number
+# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
+#
+# NOTE: There's nothing magic keeping this number prime but you just need to
+# make _any_ change to this file.  ...so why not keep it prime?
+#
+# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
+# files (!!!)
+#
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-4_19-ht/chromeos-kernel-4_19-ht-9999.ebuild b/sys-kernel/chromeos-kernel-4_19-ht/chromeos-kernel-4_19-ht-9999.ebuild
index e3d4caa..0954c3c 100644
--- a/sys-kernel/chromeos-kernel-4_19-ht/chromeos-kernel-4_19-ht-9999.ebuild
+++ b/sys-kernel/chromeos-kernel-4_19-ht/chromeos-kernel-4_19-ht-9999.ebuild
@@ -39,4 +39,4 @@
 # Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
 # files (!!!)
 #
-# The coolest prime number is: 173
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-4_19/Manifest b/sys-kernel/chromeos-kernel-4_19/Manifest
index 992ec6a..03c8a2b 100644
--- a/sys-kernel/chromeos-kernel-4_19/Manifest
+++ b/sys-kernel/chromeos-kernel-4_19/Manifest
@@ -1,2 +1,2 @@
-DIST chromeos-kernel-4_19-R93-13982.4-1622453578.gcov.xz 775008 BLAKE2B 21a00aa2335486b7c755e58d50547eca90fd512ad3f635076cf1a2ab527848c7faacc8ff19946b998987f9e73d8aefab4a3b02cfbcdc90a7b1da1dad66e38760 SHA512 53d837cec0f0daaffd2a263b3291776d3a091f2e2c618d259d8b927cac6c49321c5dc15e94ab5749f7f6b580bd622193792c09b8c1f2a4522457c13c82ef48ec
-DIST chromeos-kernel-4_19-R93-14021.0-1623663098.gcov.xz 765556 BLAKE2B 47907a90c31f2e7ea83a831abb76b172833882b7e2b25456596a1053d3171dfbc197823b4d63f7c42bc57922bc4500e9a9feceb079c51ae4c79af6a991ca2c2b SHA512 c4a6f7003ea3530dc26665bd036336c258b5ada9f97d48bdac088088a7db15626ae44645b7934386cda9f8abda5fbd8c5dc699895dacd63e08126d6eac438dc3
+DIST chromeos-kernel-4_19-R94-14150.23-1631525516.gcov.xz 697668 BLAKE2B 920ebc96cdda4fe01825d47fd04942169ffe2efffb6ff6d8c11ec4cf46a62d14e7dc7b8811f7606a9a0c7fcdcb24cb5ba58c3306cd187c0834b48de28e38792c SHA512 c80f805f90d88b44e9d39574c78c8c5a872933dd78fa79689467357c9ae5e651c3b65c39b7bbab8ad85eb53d278037b9fc0e98344561ebe08f39cd751fe97b2f
+DIST chromeos-kernel-4_19-R96-14244.0-1633339943.gcov.xz 772220 BLAKE2B 51635b76cb370329d710ce9599b0ac446b3e1f27216ccf4080fbcea3a0fde1fa03a4104bfcfefbc0da18803a457b21bf2407b1342a0a7a6b2bcda6fa35a5ece0 SHA512 b6feef422a9ce14100da216e3becd87d4960e232c0ef6a8c2e088be58d1316df55ba10dfa74e3687bdf7a1f4f48e2627e3fc70cb2a13913259ccfbb816e0d9b5
diff --git a/sys-kernel/chromeos-kernel-4_19/chromeos-kernel-4_19-4.19.195-r2048.ebuild b/sys-kernel/chromeos-kernel-4_19/chromeos-kernel-4_19-4.19.195-r2048.ebuild
deleted file mode 100644
index 2592214..0000000
--- a/sys-kernel/chromeos-kernel-4_19/chromeos-kernel-4_19-4.19.195-r2048.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="73c0563326069fb2a47d15484d37aa3e37aaab23"
-CROS_WORKON_TREE="0ea0bfa48fd873d3f53398e55979de8ea14ed1a1"
-CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
-CROS_WORKON_LOCALNAME="kernel/v4.19"
-CROS_WORKON_EGIT_BRANCH="chromeos-4.19"
-
-# AFDO_PROFILE_VERSION is the build on which the profile is collected.
-# This is required by kernel_afdo.
-#
-# TODO: Allow different versions for different CHROMEOS_KERNEL_SPLITCONFIGs
-
-# By default, let cros-kernel2 define AFDO_LOCATION.  This is used in the
-# kernel AFDO verify jobs to specify the location.
-AFDO_LOCATION=""
-
-# Auto-generated by PFQ, don't modify.
-AFDO_PROFILE_VERSION="R93-14021.0-1623663098"
-
-# Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
-# If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
-# Note: Run "ebuild-<board> /path/to/ebuild manifest" afterwards to create new
-# Manifest file.
-AFDO_FROZEN_PROFILE_VERSION=""
-
-# This must be inherited *after* EGIT/CROS_WORKON variables defined
-inherit cros-workon cros-kernel2
-
-HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
-DESCRIPTION="Chrome OS Linux Kernel 4.19"
-KEYWORDS="*"
-
-# Change the following (commented out) number to the next prime number
-# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
-#
-# NOTE: There's nothing magic keeping this number prime but you just need to
-# make _any_ change to this file.  ...so why not keep it prime?
-#
-# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
-# files (!!!)
-#
-# The coolest prime number is: 173
diff --git a/sys-kernel/chromeos-kernel-4_19/chromeos-kernel-4_19-4.19.210-r2138.ebuild b/sys-kernel/chromeos-kernel-4_19/chromeos-kernel-4_19-4.19.210-r2138.ebuild
new file mode 100644
index 0000000..8f53b3a
--- /dev/null
+++ b/sys-kernel/chromeos-kernel-4_19/chromeos-kernel-4_19-4.19.210-r2138.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="fade06069b8d6321c1276f3d2e1fe150b18c4cef"
+CROS_WORKON_TREE="816626f61b1998739aaa0f54b58576603f53de3d"
+CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
+CROS_WORKON_LOCALNAME="kernel/v4.19"
+CROS_WORKON_EGIT_BRANCH="chromeos-4.19"
+
+# AFDO_PROFILE_VERSION is the build on which the profile is collected.
+# This is required by kernel_afdo.
+#
+# TODO: Allow different versions for different CHROMEOS_KERNEL_SPLITCONFIGs
+
+# By default, let cros-kernel2 define AFDO_LOCATION.  This is used in the
+# kernel AFDO verify jobs to specify the location.
+AFDO_LOCATION=""
+
+# Auto-generated by PFQ, don't modify.
+AFDO_PROFILE_VERSION="R96-14244.0-1633339943"
+
+# Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
+# If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
+# Note: Run "ebuild-<board> /path/to/ebuild manifest" afterwards to create new
+# Manifest file.
+AFDO_FROZEN_PROFILE_VERSION=""
+
+# This must be inherited *after* EGIT/CROS_WORKON variables defined
+inherit cros-workon cros-kernel2
+
+HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
+DESCRIPTION="Chrome OS Linux Kernel 4.19"
+KEYWORDS="*"
+
+# Change the following (commented out) number to the next prime number
+# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
+#
+# NOTE: There's nothing magic keeping this number prime but you just need to
+# make _any_ change to this file.  ...so why not keep it prime?
+#
+# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
+# files (!!!)
+#
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-4_19/chromeos-kernel-4_19-9999.ebuild b/sys-kernel/chromeos-kernel-4_19/chromeos-kernel-4_19-9999.ebuild
index ae5abd6..582aa44 100644
--- a/sys-kernel/chromeos-kernel-4_19/chromeos-kernel-4_19-9999.ebuild
+++ b/sys-kernel/chromeos-kernel-4_19/chromeos-kernel-4_19-9999.ebuild
@@ -17,7 +17,7 @@
 AFDO_LOCATION=""
 
 # Auto-generated by PFQ, don't modify.
-AFDO_PROFILE_VERSION="R93-14021.0-1623663098"
+AFDO_PROFILE_VERSION="R96-14244.0-1633339943"
 
 # Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
 # If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
@@ -41,4 +41,4 @@
 # Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
 # files (!!!)
 #
-# The coolest prime number is: 173
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-4_4/Manifest b/sys-kernel/chromeos-kernel-4_4/Manifest
index 6f6a61d..bef8365 100644
--- a/sys-kernel/chromeos-kernel-4_4/Manifest
+++ b/sys-kernel/chromeos-kernel-4_4/Manifest
@@ -1,2 +1,2 @@
-DIST chromeos-kernel-4_4-R93-13982.4-1622453587.gcov.xz 783180 BLAKE2B a5bb70f806d19a71dd2fa7b1e88a5308e264cf4510e0758cdd8139591e3cbb87d0bd480459f5f419df9e7b547bb1feb5abb388e9463e9a20591e10a614ab3d36 SHA512 e7985f80bb4d99a862b10c503302fd3b22877d0fb39c901f2133d34ac0a3da83f8a1d9f5164fa14077457e85d2c02c8effa9d1aa856c597d7aab632b12f44c61
-DIST chromeos-kernel-4_4-R93-14021.0-1623663147.gcov.xz 779648 BLAKE2B 8ac03d5287e93509a5ad053ac84b5ac650ecaa0c687b8ad73e1f0ec356214b39b164b15a9a08d437f8cbc7c815389dc09d366f0b29ebbba44fe02501ae1ee4e1 SHA512 71af8cf41844a4dc0c7fdb79d0cfe0abef8c54cc478b47aa62aee0bba70ab5bf6050cb6133ae4eb4d28d08a4508563e6ddfb1f1295a6afcd534a170e70336370
+DIST chromeos-kernel-4_4-R94-14150.23-1631525585.gcov.xz 611372 BLAKE2B 751e5e411d32a016b7ae34c70975655145bbc52de16826c7dd8f0d2eeaadb0f99ce90e243b0a01bd16c7f5a3ccb9eda595b587607c3b702ff7a0e4faa0d7e9d7 SHA512 710e72889ebec40f8e792f091ddacb7b6c4980583a62366b369e4b67341fe5b53eeed1a8d1122d844a0f1cb6bd275a45981fc38e085ed3a6219e1d7f239306de
+DIST chromeos-kernel-4_4-R96-14244.0-1633340299.gcov.xz 820600 BLAKE2B b2e666224c652b0ff25768af1d88a21e72bc38443ca945fe6ea978fb71ec1e63363f27adb6d17d2523621cc7321d2ee63e69394585a3b26a2fab99b7cec004b2 SHA512 8cf209286b175b77961fe6fee221486576f3b6420e41a96d5b924e20541a28bd03c7e4d3f29b3c90ea1371666ec509b6bff0b21125815d6ae0814d6a491bbd69
diff --git a/sys-kernel/chromeos-kernel-4_4/chromeos-kernel-4_4-4.4.273-r2681.ebuild b/sys-kernel/chromeos-kernel-4_4/chromeos-kernel-4_4-4.4.273-r2681.ebuild
deleted file mode 100644
index 4671be3..0000000
--- a/sys-kernel/chromeos-kernel-4_4/chromeos-kernel-4_4-4.4.273-r2681.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="f4303b2117000a234e959c0f69286c219d3ab1b4"
-CROS_WORKON_TREE="e3252c59b87ed40c9ff881fe2f97048605e0a3bf"
-CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
-CROS_WORKON_LOCALNAME="kernel/v4.4"
-CROS_WORKON_EGIT_BRANCH="chromeos-4.4"
-
-# AFDO_PROFILE_VERSION is the build on which the profile is collected.
-# This is required by kernel_afdo.
-#
-# TODO: Allow different versions for different CHROMEOS_KERNEL_SPLITCONFIGs
-
-# By default, let cros-kernel2 define AFDO_LOCATION.  This is used in the
-# kernel AFDO verify jobs to specify the location.
-AFDO_LOCATION=""
-
-# Auto-generated by PFQ, don't modify.
-AFDO_PROFILE_VERSION="R93-14021.0-1623663147"
-
-# Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
-# If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
-# Note: Run "ebuild-<board> /path/to/ebuild manifest" afterwards to create new
-# Manifest file.
-AFDO_FROZEN_PROFILE_VERSION=""
-
-# This must be inherited *after* EGIT/CROS_WORKON variables defined
-inherit cros-workon cros-kernel2
-
-HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
-DESCRIPTION="Chrome OS Linux Kernel 4.4"
-KEYWORDS="*"
-
-# Change the following (commented out) number to the next prime number
-# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
-#
-# NOTE: There's nothing magic keeping this number prime but you just need to
-# make _any_ change to this file.  ...so why not keep it prime?
-#
-# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
-# files (!!!)
-#
-# The coolest prime number is: 173
diff --git a/sys-kernel/chromeos-kernel-4_4/chromeos-kernel-4_4-4.4.288-r2726.ebuild b/sys-kernel/chromeos-kernel-4_4/chromeos-kernel-4_4-4.4.288-r2726.ebuild
new file mode 100644
index 0000000..d05d69b
--- /dev/null
+++ b/sys-kernel/chromeos-kernel-4_4/chromeos-kernel-4_4-4.4.288-r2726.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="16a4367ab6b4be706ad28142a5c4b3a4d35277b8"
+CROS_WORKON_TREE="13bb9fb92bbfbdbb19ca1984dafdaf8568f3625e"
+CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
+CROS_WORKON_LOCALNAME="kernel/v4.4"
+CROS_WORKON_EGIT_BRANCH="chromeos-4.4"
+
+# AFDO_PROFILE_VERSION is the build on which the profile is collected.
+# This is required by kernel_afdo.
+#
+# TODO: Allow different versions for different CHROMEOS_KERNEL_SPLITCONFIGs
+
+# By default, let cros-kernel2 define AFDO_LOCATION.  This is used in the
+# kernel AFDO verify jobs to specify the location.
+AFDO_LOCATION=""
+
+# Auto-generated by PFQ, don't modify.
+AFDO_PROFILE_VERSION="R96-14244.0-1633340299"
+
+# Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
+# If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
+# Note: Run "ebuild-<board> /path/to/ebuild manifest" afterwards to create new
+# Manifest file.
+AFDO_FROZEN_PROFILE_VERSION=""
+
+# This must be inherited *after* EGIT/CROS_WORKON variables defined
+inherit cros-workon cros-kernel2
+
+HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
+DESCRIPTION="Chrome OS Linux Kernel 4.4"
+KEYWORDS="*"
+
+# Change the following (commented out) number to the next prime number
+# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
+#
+# NOTE: There's nothing magic keeping this number prime but you just need to
+# make _any_ change to this file.  ...so why not keep it prime?
+#
+# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
+# files (!!!)
+#
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-4_4/chromeos-kernel-4_4-9999.ebuild b/sys-kernel/chromeos-kernel-4_4/chromeos-kernel-4_4-9999.ebuild
index e511c8c..8236758 100644
--- a/sys-kernel/chromeos-kernel-4_4/chromeos-kernel-4_4-9999.ebuild
+++ b/sys-kernel/chromeos-kernel-4_4/chromeos-kernel-4_4-9999.ebuild
@@ -16,7 +16,7 @@
 AFDO_LOCATION=""
 
 # Auto-generated by PFQ, don't modify.
-AFDO_PROFILE_VERSION="R93-14021.0-1623663147"
+AFDO_PROFILE_VERSION="R96-14244.0-1633340299"
 
 # Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
 # If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
@@ -40,4 +40,4 @@
 # Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
 # files (!!!)
 #
-# The coolest prime number is: 173
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-5_10/chromeos-kernel-5_10-5.10.46-r477.ebuild b/sys-kernel/chromeos-kernel-5_10/chromeos-kernel-5_10-5.10.46-r477.ebuild
deleted file mode 100644
index aae99e6..0000000
--- a/sys-kernel/chromeos-kernel-5_10/chromeos-kernel-5_10-5.10.46-r477.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="6edc6175aeacd80e1b1a432284ca2be14cdf1dd5"
-CROS_WORKON_TREE="9a3e6b51afa8764e98a98e805c1ecd7ec2f041b2"
-CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
-CROS_WORKON_LOCALNAME="kernel/v5.10"
-CROS_WORKON_EGIT_BRANCH="chromeos-5.10"
-
-# This must be inherited *after* EGIT/CROS_WORKON variables defined
-inherit cros-workon cros-kernel2
-
-HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
-DESCRIPTION="Chrome OS Linux Kernel 5.10"
-KEYWORDS="*"
-
-# Change the following (commented out) number to the next prime number
-# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
-#
-# NOTE: There's nothing magic keeping this number prime but you just need to
-# make _any_ change to this file.  ...so why not keep it prime?
-#
-# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
-# files (!!!)
-#
-# The coolest prime number is: 173
diff --git a/sys-kernel/chromeos-kernel-5_10/chromeos-kernel-5_10-5.10.72-r988.ebuild b/sys-kernel/chromeos-kernel-5_10/chromeos-kernel-5_10-5.10.72-r988.ebuild
new file mode 100644
index 0000000..1aef791
--- /dev/null
+++ b/sys-kernel/chromeos-kernel-5_10/chromeos-kernel-5_10-5.10.72-r988.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="51fb1be745e9595b9d2087eb02c503e1e15a41a6"
+CROS_WORKON_TREE="92f869e5869c6e52d7ad924b3f49da1a219ceead"
+CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
+CROS_WORKON_LOCALNAME="kernel/v5.10"
+CROS_WORKON_EGIT_BRANCH="chromeos-5.10"
+
+# This must be inherited *after* EGIT/CROS_WORKON variables defined
+inherit cros-workon cros-kernel2
+
+HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
+DESCRIPTION="Chrome OS Linux Kernel 5.10"
+KEYWORDS="*"
+
+# Change the following (commented out) number to the next prime number
+# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
+#
+# NOTE: There's nothing magic keeping this number prime but you just need to
+# make _any_ change to this file.  ...so why not keep it prime?
+#
+# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
+# files (!!!)
+#
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-5_10/chromeos-kernel-5_10-9999.ebuild b/sys-kernel/chromeos-kernel-5_10/chromeos-kernel-5_10-9999.ebuild
index 01ba42f..58ea3b1 100644
--- a/sys-kernel/chromeos-kernel-5_10/chromeos-kernel-5_10-9999.ebuild
+++ b/sys-kernel/chromeos-kernel-5_10/chromeos-kernel-5_10-9999.ebuild
@@ -23,4 +23,4 @@
 # Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
 # files (!!!)
 #
-# The coolest prime number is: 173
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-5_4/Manifest b/sys-kernel/chromeos-kernel-5_4/Manifest
index 9840e28..f72be78 100644
--- a/sys-kernel/chromeos-kernel-5_4/Manifest
+++ b/sys-kernel/chromeos-kernel-5_4/Manifest
@@ -1,2 +1,2 @@
-DIST chromeos-kernel-5_4-R93-13982.4-1622453744.gcov.xz 757040 BLAKE2B bfffdee869cb4fdd2f8f50dddbf1e2a127354f2a0a407f134b2a423ba939634d1491b45923f2ca8088518084fe298953cb5554a60cf8718a980bf37513891246 SHA512 fad271e01ef8ea351fe8be44a14bd8c9deebc225e6f22151c710166b744e943987f735989f69a5e016b539f04ff56d2e6ca7f202d56d944676143dcda0893114
-DIST chromeos-kernel-5_4-R93-14021.0-1623663354.gcov.xz 783700 BLAKE2B ebef8b5dfaf66c349b62bb53f407a16339f394029d76c01845578a229bcb1f47fd70fe6c3b8669fb5c8403e6388ab4ce7864cff5e07702bade6e934c43d604db SHA512 f9f94f3256edc85a6e666b34ca0fe952b3e4a8dbaaff3fe8cd7f06ab88be46d9d7a4b97e6964c47f3b56d28b69c5c0722c3da3aff57f7fa4ac7eb02cb216bfe6
+DIST chromeos-kernel-5_4-R94-14150.23-1631526044.gcov.xz 1005444 BLAKE2B a1264afbdf59cd6e4ae1b5658936e6c18b9448721cbe51162213d711a9905eeac4bacc5564a5a5f019db4e711e8554736a1191bf1d199f6bb372a66d862570d9 SHA512 a51ec9eb86c4fc337e6e8d1071f29cb9cdd8cc39ba9794378a8366887f703a7652463c8badb822740484a573af2c106b70bce31bb8a79a326894abd13d66cb27
+DIST chromeos-kernel-5_4-R96-14244.0-1633339893.gcov.xz 801704 BLAKE2B 4553806f1bde4c0f140d6f2311215418884b2c2d4495a19cc4a93f710a1e4284d3c52decf87b1fff57734b7d98ceecac86e8864b33ba8cc4c494c71575481229 SHA512 a850a7bacbd78c25de7ccbef449f120ac2c8a12173b0743c3b84c7c77dc691c78d6961236a91ec68d20c70a8ec1711f371055719e9ce353f34cd04f0e5eb5db6
diff --git a/sys-kernel/chromeos-kernel-5_4/chromeos-kernel-5_4-5.4.128-r2362.ebuild b/sys-kernel/chromeos-kernel-5_4/chromeos-kernel-5_4-5.4.128-r2362.ebuild
deleted file mode 100644
index 254e919..0000000
--- a/sys-kernel/chromeos-kernel-5_4/chromeos-kernel-5_4-5.4.128-r2362.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 2019 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="686e2baf4c9b63cf85be71074565b76bb95b9b67"
-CROS_WORKON_TREE="d2088f2a2ad01abfc14810345aa1f171011ad20a"
-CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
-CROS_WORKON_LOCALNAME="kernel/v5.4"
-CROS_WORKON_EGIT_BRANCH="chromeos-5.4"
-
-# AFDO_PROFILE_VERSION is the build on which the profile is collected.
-# This is required by kernel_afdo.
-#
-# TODO: Allow different versions for different CHROMEOS_KERNEL_SPLITCONFIGs
-
-# By default, let cros-kernel2 define AFDO_LOCATION.  This is used in the
-# kernel AFDO verify jobs to specify the location.
-AFDO_LOCATION=""
-
-# Auto-generated by PFQ, don't modify.
-AFDO_PROFILE_VERSION="R93-14021.0-1623663354"
-
-# Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
-# If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
-# Note: Run "ebuild-<board> /path/to/ebuild manifest" afterwards to create new
-# Manifest file.
-AFDO_FROZEN_PROFILE_VERSION=""
-
-# This must be inherited *after* EGIT/CROS_WORKON variables defined
-inherit cros-workon cros-kernel2
-
-HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
-DESCRIPTION="Chrome OS Linux Kernel 5.4"
-KEYWORDS="*"
-
-# Change the following (commented out) number to the next prime number
-# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
-#
-# NOTE: There's nothing magic keeping this number prime but you just need to
-# make _any_ change to this file.  ...so why not keep it prime?
-#
-# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
-# files (!!!)
-#
-# The coolest prime number is: 173
diff --git a/sys-kernel/chromeos-kernel-5_4/chromeos-kernel-5_4-5.4.153-r2692.ebuild b/sys-kernel/chromeos-kernel-5_4/chromeos-kernel-5_4-5.4.153-r2692.ebuild
new file mode 100644
index 0000000..dd3feab
--- /dev/null
+++ b/sys-kernel/chromeos-kernel-5_4/chromeos-kernel-5_4-5.4.153-r2692.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2019 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="e50da6a39213eef573a662c7e37f0369677133b1"
+CROS_WORKON_TREE="6de95a3b2f41af2e2388b0b0d16acbd716713a4d"
+CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
+CROS_WORKON_LOCALNAME="kernel/v5.4"
+CROS_WORKON_EGIT_BRANCH="chromeos-5.4"
+
+# AFDO_PROFILE_VERSION is the build on which the profile is collected.
+# This is required by kernel_afdo.
+#
+# TODO: Allow different versions for different CHROMEOS_KERNEL_SPLITCONFIGs
+
+# By default, let cros-kernel2 define AFDO_LOCATION.  This is used in the
+# kernel AFDO verify jobs to specify the location.
+AFDO_LOCATION=""
+
+# Auto-generated by PFQ, don't modify.
+AFDO_PROFILE_VERSION="R96-14244.0-1633339893"
+
+# Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
+# If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
+# Note: Run "ebuild-<board> /path/to/ebuild manifest" afterwards to create new
+# Manifest file.
+AFDO_FROZEN_PROFILE_VERSION=""
+
+# This must be inherited *after* EGIT/CROS_WORKON variables defined
+inherit cros-workon cros-kernel2
+
+HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
+DESCRIPTION="Chrome OS Linux Kernel 5.4"
+KEYWORDS="*"
+
+# Change the following (commented out) number to the next prime number
+# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
+#
+# NOTE: There's nothing magic keeping this number prime but you just need to
+# make _any_ change to this file.  ...so why not keep it prime?
+#
+# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
+# files (!!!)
+#
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-5_4/chromeos-kernel-5_4-9999.ebuild b/sys-kernel/chromeos-kernel-5_4/chromeos-kernel-5_4-9999.ebuild
index 20e6d0c..0e191b1 100644
--- a/sys-kernel/chromeos-kernel-5_4/chromeos-kernel-5_4-9999.ebuild
+++ b/sys-kernel/chromeos-kernel-5_4/chromeos-kernel-5_4-9999.ebuild
@@ -17,7 +17,7 @@
 AFDO_LOCATION=""
 
 # Auto-generated by PFQ, don't modify.
-AFDO_PROFILE_VERSION="R93-14021.0-1623663354"
+AFDO_PROFILE_VERSION="R96-14244.0-1633339893"
 
 # Set AFDO_FROZEN_PROFILE_VERSION to freeze the afdo profiles.
 # If non-empty, it overrides the value set by AFDO_PROFILE_VERSION.
@@ -41,4 +41,4 @@
 # Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
 # files (!!!)
 #
-# The coolest prime number is: 173
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-experimental/chromeos-kernel-experimental-9999.ebuild b/sys-kernel/chromeos-kernel-experimental/chromeos-kernel-experimental-9999.ebuild
index e408c92..4d09f98 100644
--- a/sys-kernel/chromeos-kernel-experimental/chromeos-kernel-experimental-9999.ebuild
+++ b/sys-kernel/chromeos-kernel-experimental/chromeos-kernel-experimental-9999.ebuild
@@ -22,4 +22,4 @@
 # Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
 # files (!!!)
 #
-# The coolest prime number is: 173
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-next/chromeos-kernel-next-9999.ebuild b/sys-kernel/chromeos-kernel-next/chromeos-kernel-next-9999.ebuild
index 2f06466..1782782 100644
--- a/sys-kernel/chromeos-kernel-next/chromeos-kernel-next-9999.ebuild
+++ b/sys-kernel/chromeos-kernel-next/chromeos-kernel-next-9999.ebuild
@@ -23,4 +23,4 @@
 # Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
 # files (!!!)
 #
-# The coolest prime number is: 173
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-upstream/chromeos-kernel-upstream-5.13_rc7-r28.ebuild b/sys-kernel/chromeos-kernel-upstream/chromeos-kernel-upstream-5.13_rc7-r28.ebuild
deleted file mode 100644
index f30cbc0..0000000
--- a/sys-kernel/chromeos-kernel-upstream/chromeos-kernel-upstream-5.13_rc7-r28.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 2020 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="5df47c2e333151487e18a391cb2e3ff04d9a4b57"
-CROS_WORKON_TREE="05cff5472871455d25debb0f398a4fa861e5a5c3"
-CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
-CROS_WORKON_LOCALNAME="kernel/upstream"
-
-# This must be inherited *after* EGIT/CROS_WORKON variables defined
-inherit cros-workon cros-kernel2
-
-HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
-DESCRIPTION="Chrome OS Linux Kernel latest upstream rc"
-KEYWORDS="*"
-
-# Change the following (commented out) number to the next prime number
-# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
-#
-# NOTE: There's nothing magic keeping this number prime but you just need to
-# make _any_ change to this file.  ...so why not keep it prime?
-#
-# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
-# files (!!!)
-#
-# The coolest prime number is: 173
diff --git a/sys-kernel/chromeos-kernel-upstream/chromeos-kernel-upstream-5.15_rc4-r45.ebuild b/sys-kernel/chromeos-kernel-upstream/chromeos-kernel-upstream-5.15_rc4-r45.ebuild
new file mode 100644
index 0000000..49dcada
--- /dev/null
+++ b/sys-kernel/chromeos-kernel-upstream/chromeos-kernel-upstream-5.15_rc4-r45.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2020 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="093c806747cf2e49b15e0efae5629cc9a1c6218e"
+CROS_WORKON_TREE="9a99f338899927afd5e734348ad41b5a88274bfa"
+CROS_WORKON_PROJECT="chromiumos/third_party/kernel"
+CROS_WORKON_LOCALNAME="kernel/upstream"
+
+# This must be inherited *after* EGIT/CROS_WORKON variables defined
+inherit cros-workon cros-kernel2
+
+HOMEPAGE="https://www.chromium.org/chromium-os/chromiumos-design-docs/chromium-os-kernel"
+DESCRIPTION="Chrome OS Linux Kernel latest upstream rc"
+KEYWORDS="*"
+
+# Change the following (commented out) number to the next prime number
+# when you change "cros-kernel2.eclass" to work around http://crbug.com/220902
+#
+# NOTE: There's nothing magic keeping this number prime but you just need to
+# make _any_ change to this file.  ...so why not keep it prime?
+#
+# Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
+# files (!!!)
+#
+# The coolest prime number is: 181
diff --git a/sys-kernel/chromeos-kernel-upstream/chromeos-kernel-upstream-9999.ebuild b/sys-kernel/chromeos-kernel-upstream/chromeos-kernel-upstream-9999.ebuild
index 8774bc0..5ef51a3 100644
--- a/sys-kernel/chromeos-kernel-upstream/chromeos-kernel-upstream-9999.ebuild
+++ b/sys-kernel/chromeos-kernel-upstream/chromeos-kernel-upstream-9999.ebuild
@@ -22,4 +22,4 @@
 # Don't forget to update the comment in _all_ chromeos-kernel-x_x-9999.ebuild
 # files (!!!)
 #
-# The coolest prime number is: 173
+# The coolest prime number is: 181
diff --git a/sys-kernel/linux-firmware/linux-firmware-0.0.1-r467.ebuild b/sys-kernel/linux-firmware/linux-firmware-0.0.1-r467.ebuild
deleted file mode 100644
index 0287495..0000000
--- a/sys-kernel/linux-firmware/linux-firmware-0.0.1-r467.ebuild
+++ /dev/null
@@ -1,473 +0,0 @@
-# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-CROS_WORKON_COMMIT="2e2a084dadf1acbe1dbf6abc54de66c8941fa561"
-CROS_WORKON_TREE="88bba44e96f96f30758702983502712897feeafa"
-CROS_WORKON_PROJECT="chromiumos/third_party/linux-firmware"
-CROS_WORKON_OUTOFTREE_BUILD=1
-CROS_WORKON_EGIT_BRANCH="master"
-
-inherit cros-workon
-
-DESCRIPTION="Firmware images from the upstream linux-fimware package"
-HOMEPAGE="https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/"
-
-SLOT="0"
-KEYWORDS="*"
-
-
-IUSE_KERNEL_VERS=(
-	kernel-4_19
-	kernel-5_4
-	kernel-upstream
-)
-IUSE_ATH3K=(
-	ath3k-all
-	ath3k-ar3011
-	ath3k-ar3012
-)
-IUSE_IWLWIFI=(
-	iwlwifi-all
-	iwlwifi-100
-	iwlwifi-105
-	iwlwifi-135
-	iwlwifi-1000
-	iwlwifi-1000
-	iwlwifi-2000
-	iwlwifi-2030
-	iwlwifi-3160
-	iwlwifi-3945
-	iwlwifi-4965
-	iwlwifi-5000
-	iwlwifi-5150
-	iwlwifi-6000
-	iwlwifi-6005
-	iwlwifi-6030
-	iwlwifi-6050
-	iwlwifi-7260
-	iwlwifi-7265
-	iwlwifi-7265D
-	iwlwifi-9000
-	iwlwifi-9260
-	iwlwifi-cc
-	iwlwifi-QuZ
-)
-IUSE_BRCMWIFI=(
-	brcmfmac-all
-	brcmfmac4354-sdio
-	brcmfmac4356-pcie
-	brcmfmac4371-pcie
-)
-IUSE_LINUX_FIRMWARE=(
-	adreno-630
-	adreno-660
-	adsp_apl
-	adsp_cnl
-	adsp_glk
-	adsp_kbl
-	adsp_skl
-	ath9k_htc
-	ath10k_qca6174a-5
-	ath10k_qca6174a-3
-	ath10k_wcn3990
-	amdgpu_carrizo
-	amdgpu_green_sardine
-	amdgpu_picasso
-	amdgpu_raven2
-	amdgpu_renoir
-	amdgpu_stoney
-	amdgpu_vega12
-	bcm4354-bt
-	cros-pd
-	fw_sst
-	fw_sst2
-	i915_adl
-	i915_bxt
-	i915_cnl
-	i915_glk
-	i915_jsl
-	i915_kbl
-	i915_skl
-	i915_tgl
-	ibt_9260
-	ibt_9560
-	ibt_ax200
-	ibt_ax201
-	ibt-hw
-	ipu3_fw
-	keyspan_usb
-	marvell-mwlwifi
-	marvell-pcie8897
-	marvell-pcie8997
-	mt7921e
-	mt7921e-bt
-	mt8173-vpu
-	nvidia-xusb
-	qca6174a-3-bt
-	qca6174a-5-bt
-	qca-wcn3990-bt
-	qca-wcn3991-bt
-	rockchip-dptx
-	rt2870
-	rtl8107e-1
-	rtl8107e-2
-	rtl8125a-3
-	rtl8153
-	rtl8168fp-3
-	rtl8168g-1
-	rtl8168g-2
-	rtl8168h-1
-	rtl8168h-2
-	rtl_bt-8822ce-uart
-	rtl_bt-8822ce-usb
-	rtl_bt-8852ae-usb
-	rtw8822c
-	rtw8852a
-	venus-52
-	venus-54
-	"${IUSE_ATH3K[@]}"
-	"${IUSE_IWLWIFI[@]}"
-	"${IUSE_BRCMWIFI[@]}"
-)
-IUSE="
-	${IUSE_KERNEL_VERS[*]}
-	${IUSE_LINUX_FIRMWARE[@]/#/linux_firmware_}
-	video_cards_radeon
-	video_cards_amdgpu"
-REQUIRED_USE="?? ( ${IUSE_KERNEL_VERS[*]} )"
-LICENSE="
-	linux_firmware_adreno-630? ( LICENSE.qcom )
-	linux_firmware_adreno-660? ( LICENSE.qcom )
-	linux_firmware_adsp_apl? ( LICENCE.adsp_sst )
-	linux_firmware_adsp_cnl? ( LICENCE.adsp_sst )
-	linux_firmware_adsp_glk? ( LICENCE.adsp_sst )
-	linux_firmware_adsp_kbl? ( LICENCE.adsp_sst )
-	linux_firmware_adsp_skl? ( LICENCE.adsp_sst )
-	linux_firmware_amdgpu_carrizo? ( LICENSE.amdgpu )
-	linux_firmware_amdgpu_green_sardine? ( LICENSE.amdgpu )
-	linux_firmware_amdgpu_picasso? ( LICENSE.amdgpu )
-	linux_firmware_amdgpu_raven2? ( LICENSE.amdgpu )
-	linux_firmware_amdgpu_renoir? ( LICENSE.amdgpu )
-	linux_firmware_amdgpu_stoney? ( LICENSE.amdgpu )
-	linux_firmware_amdgpu_vega12? ( LICENSE.amdgpu )
-	linux_firmware_ath3k-all? ( LICENCE.atheros_firmware )
-	linux_firmware_ath3k-ar3011? ( LICENCE.atheros_firmware )
-	linux_firmware_ath3k-ar3012? ( LICENCE.atheros_firmware )
-	linux_firmware_ath9k_htc? ( LICENCE.atheros_firmware )
-	linux_firmware_ath10k_qca6174a-5? ( LICENSE.QualcommAtheros_ath10k )
-	linux_firmware_ath10k_qca6174a-3? ( LICENSE.QualcommAtheros_ath10k )
-	linux_firmware_ath10k_wcn3990? ( LICENCE.atheros_firmware )
-	linux_firmware_bcm4354-bt? ( LICENCE.broadcom_bcm43xx )
-	linux_firmware_cros-pd? ( BSD-Google )
-	linux_firmware_fw_sst? ( LICENCE.fw_sst )
-	linux_firmware_fw_sst2? ( LICENCE.IntcSST2 )
-	linux_firmware_i915_adl? ( LICENSE.i915 )
-	linux_firmware_i915_bxt? ( LICENSE.i915 )
-	linux_firmware_i915_cnl? ( LICENSE.i915 )
-	linux_firmware_i915_glk? ( LICENSE.i915 )
-	linux_firmware_i915_jsl? ( LICENSE.i915 )
-	linux_firmware_i915_kbl? ( LICENSE.i915 )
-	linux_firmware_i915_skl? ( LICENSE.i915 )
-	linux_firmware_i915_tgl? ( LICENSE.i915 )
-	linux_firmware_ipu3_fw? ( LICENSE.ipu3_firmware )
-	linux_firmware_ibt_9260? ( LICENCE.ibt_firmware )
-	linux_firmware_ibt_9560? ( LICENCE.ibt_firmware )
-	linux_firmware_ibt_ax200? ( LICENCE.ibt_firmware )
-	linux_firmware_ibt_ax201? ( LICENCE.ibt_firmware )
-	linux_firmware_ibt-hw? ( LICENCE.ibt_firmware )
-	linux_firmware_keyspan_usb? ( LICENSE.keyspan_usb )
-	linux_firmware_marvell-mwlwifi? ( LICENCE.Marvell )
-	linux_firmware_marvell-pcie8897? ( LICENCE.Marvell )
-	linux_firmware_marvell-pcie8997? ( LICENCE.Marvell )
-	linux_firmware_mt7921e? ( LICENCE.mediatek-nic )
-	linux_firmware_mt7921e-bt? ( LICENCE.mediatek-nic )
-	linux_firmware_mt8173-vpu? ( LICENCE.mediatek-vpu )
-	linux_firmware_nvidia-xusb? ( LICENCE.nvidia )
-	linux_firmware_qca6174a-3-bt? ( LICENSE.QualcommAtheros_ath10k )
-	linux_firmware_qca6174a-5-bt? ( LICENSE.QualcommAtheros_ath10k )
-	linux_firmware_qca-wcn3990-bt? ( LICENSE.QualcommAtheros_ath10k )
-	linux_firmware_qca-wcn3991-bt? ( LICENSE.QualcommAtheros_ath10k )
-	linux_firmware_rockchip-dptx? ( LICENCE.rockchip )
-	linux_firmware_rt2870? ( LICENCE.ralink-firmware.txt LICENCE.ralink_a_mediatek_company_firmware )
-	linux_firmware_rtl8107e-1? ( LICENCE.rtl_nic )
-	linux_firmware_rtl8107e-2? ( LICENCE.rtl_nic )
-	linux_firmware_rtl8125a-3? ( LICENCE.rtl_nic )
-	linux_firmware_rtl8153? ( LICENCE.rtlwifi_firmware )
-	linux_firmware_rtl8168fp-3? ( LICENCE.rtl_nic )
-	linux_firmware_rtl8168g-1? ( LICENCE.rtl_nic )
-	linux_firmware_rtl8168g-2? ( LICENCE.rtl_nic )
-	linux_firmware_rtl8168h-1? ( LICENCE.rtl_nic )
-	linux_firmware_rtl8168h-2? ( LICENCE.rtl_nic )
-	linux_firmware_rtl_bt-8822ce-uart? ( LICENCE.rtlwifi_firmware )
-	linux_firmware_rtl_bt-8822ce-usb? ( LICENCE.rtlwifi_firmware )
-	linux_firmware_rtl_bt-8852ae-usb? ( LICENCE.rtlwifi_firmware )
-	linux_firmware_rtw8822c? ( LICENCE.rtlwifi_firmware )
-	linux_firmware_rtw8852a? ( LICENCE.rtlwifi_firmware )
-	linux_firmware_venus-52? ( LICENSE.qcom )
-	linux_firmware_venus-54? ( LICENSE.qcom )
-	$(printf 'linux_firmware_%s? ( LICENCE.iwlwifi_firmware ) ' "${IUSE_IWLWIFI[@]}")
-	$(printf 'linux_firmware_%s? ( LICENCE.broadcom_bcm43xx ) ' "${IUSE_BRCMWIFI[@]}")
-	video_cards_radeon? ( LICENSE.radeon )
-	video_cards_amdgpu? ( LICENSE.amdgpu )
-"
-
-BDEPEND="
-	dev-lang/python
-	dev-vcs/git
-"
-
-RDEPEND="
-	linux_firmware_adreno-630? ( !media-libs/a630-fw )
-	linux_firmware_adreno-630? ( !media-libs/a660-fw )
-	linux_firmware_ath3k-all? ( !net-wireless/ath3k )
-	linux_firmware_ath3k-ar3011? ( !net-wireless/ath3k )
-	linux_firmware_ath3k-ar3012? ( !net-wireless/ath3k )
-	linux_firmware_keyspan_usb? (
-		!sys-kernel/chromeos-kernel-3_18[firmware_install]
-		!sys-kernel/chromeos-kernel-4_4[firmware_install]
-	)
-	linux_firmware_marvell-pcie8897? ( !net-wireless/marvell_sd8787[pcie] )
-	linux_firmware_marvell-pcie8997? ( !net-wireless/marvell_sd8787[pcie] )
-	linux_firmware_mt8173-vpu? ( !media-libs/vpu-fw )
-	linux_firmware_nvidia-xusb? ( !sys-kernel/xhci-firmware )
-	linux_firmware_rt2870? ( !net-wireless/realtek-rt2800-firmware )
-	!net-wireless/ath6k
-	!net-wireless/ath10k
-	!net-wireless/iwl1000-ucode
-	!net-wireless/iwl2000-ucode
-	!net-wireless/iwl2030-ucode
-	!net-wireless/iwl3945-ucode
-	!net-wireless/iwl4965-ucode
-	!net-wireless/iwl5000-ucode
-	!net-wireless/iwl6000-ucode
-	!net-wireless/iwl6005-ucode
-	!net-wireless/iwl6030-ucode
-	!net-wireless/iwl6050-ucode
-"
-
-RESTRICT="binchecks strip"
-
-FIRMWARE_INSTALL_ROOT="/lib/firmware"
-
-use_fw() {
-	use linux_firmware_$1
-}
-
-doins_subdir() {
-	# Avoid having this insinto command affecting later doins calls.
-	local file
-	for file in "${@}"; do
-		(
-		insinto "${FIRMWARE_INSTALL_ROOT}/${file%/*}"
-		doins "${file}"
-		)
-	done
-}
-
-install_iwlwifi() {
-	# We do not always need to detect the kernel version when all kernels
-	# have the same iwlwifi firmware version. However, this changes every so
-	# often for the 2 most recent kernels during bring up, where we can
-	# typically use a more recent firmware on the in-development board but
-	# keep the previous version for stable boards to avoid regressions.
-	# Keep the logic around to avoid having to rewrite it every single time.
-	local kernel=""
-	local k
-	for k in "${IUSE_KERNEL_VERS[@]}"; do
-		if use "${k}"; then
-			kernel="${k}"
-			break
-		fi
-	done
-	if [[ -z "${kernel}" ]]; then
-		einfo "No kernel USE flag set."
-		einfo "Expected if all kernels have the same iwlwifi firmware."
-	fi
-
-	for x in "${IUSE_IWLWIFI[@]}"; do
-		use_fw "${x}" || continue
-		case "${x}" in
-		iwlwifi-all)   doins iwlwifi-*.ucode ;;
-		iwlwifi-6005)  doins iwlwifi-6000g2a-*.ucode ;;
-		iwlwifi-6030)  doins iwlwifi-6000g2b-*.ucode ;;
-		iwlwifi-7260)  doins "${x}-17.ucode" ;;
-		iwlwifi-7265D) doins "${x}-29.ucode" ;;
-		iwlwifi-9000)  doins "${x}-pu-b0-jf-b0-46.ucode" ;;
-		iwlwifi-9260)  doins "${x}-th-b0-jf-b0-46.ucode" ;;
-		iwlwifi-cc)
-			case "${kernel}" in
-			kernel-upstream) doins "${x}-a0-62.ucode" ;;
-			*)               doins "${x}-a0-65.ucode" ;;
-			esac
-			;;
-		iwlwifi-QuZ)
-			case "${kernel}" in
-			kernel-4_19) doins "${x}-a0-hr-b0-65.ucode" ;;
-			kernel-5_4)  doins "${x}-a0-hr-b0-65.ucode" ;;
-			kernel-upstream)  doins "${x}-a0-hr-b0-62.ucode" ;;
-			*)
-				ewarn "Unexpected kernel version '${kernel}'."
-				ewarn "Installing all '${x}' files."
-				doins "${x}"-*.ucode
-				;;
-			esac
-			;;
-		iwlwifi-*) doins "${x}"-*.ucode ;;
-		esac
-		# At least with EAPI 7, it's ok to call 'doins' with the same
-		# file multiple times. So an overlay declaring multiple
-		# 'iwlwifi-*' USE flags (e.g. volteer) won't break the build.
-		doins "iwl-dbg-cfg.ini"
-	done
-}
-
-src_install() {
-	local x
-	insinto "${FIRMWARE_INSTALL_ROOT}"
-	use_fw adreno-630 && doins_subdir qcom/a630*
-	use_fw adreno-660 && doins_subdir qcom/a660*
-	use_fw adsp_apl && doins_subdir intel/dsp_fw_bxtn*
-	use_fw adsp_cnl && doins_subdir intel/dsp_fw_cnl*
-	use_fw adsp_glk && doins_subdir intel/dsp_fw_glk*
-	use_fw adsp_kbl && doins_subdir intel/dsp_fw_kbl*
-	use_fw adsp_skl && doins_subdir intel/dsp_fw_*
-	use_fw ath9k_htc && doins htc_*.fw
-	use_fw ath10k_qca6174a-5 && doins_subdir ath10k/QCA6174/hw3.0/{firmware-6,board-2}.bin
-	use_fw ath10k_qca6174a-3 && doins_subdir ath10k/QCA6174/hw3.0/{firmware-sdio-6,board-2}.bin
-	use_fw ath10k_wcn3990 && doins_subdir ath10k/WCN3990/hw1.0/*
-	use_fw bcm4354-bt && doins_subdir brcm/BCM4354_*.hcd
-	use_fw cros-pd && doins_subdir cros-pd/*
-	use_fw fw_sst && doins_subdir intel/fw_sst*
-	use_fw fw_sst2 && doins_subdir intel/IntcSST2.bin
-	use_fw i915_adl && doins_subdir i915/adl*
-	use_fw i915_bxt && doins_subdir i915/bxt*
-	use_fw i915_cnl && doins_subdir i915/cnl*
-	use_fw i915_glk && doins_subdir i915/glk*
-	use_fw i915_jsl && doins_subdir i915/icl_dmc_ver1_09.bin && doins_subdir i915/ehl*
-	use_fw i915_kbl && doins_subdir i915/kbl*
-	use_fw i915_skl && doins_subdir i915/skl*
-	use_fw i915_tgl && doins_subdir i915/tgl*
-	use_fw ipu3_fw && doins_subdir intel/irci_*
-	use_fw ibt_9260 && doins_subdir intel/ibt-18-16-1.*
-	use_fw ibt_9560 && doins_subdir intel/ibt-17-16-1.*
-	use_fw ibt_ax200 && doins_subdir intel/ibt-20-*.*
-	use_fw ibt_ax201 && doins_subdir intel/ibt-19-*.*
-	use_fw ibt-hw && doins_subdir intel/ibt-hw-*.bseq
-	use_fw keyspan_usb && doins_subdir keyspan/*
-	use_fw marvell-mwlwifi && doins_subdir mwlwifi/*.bin
-	use_fw marvell-pcie8897 && doins_subdir mrvl/pcie8897_uapsta.bin
-	use_fw marvell-pcie8997 && doins_subdir mrvl/pcieusb8997_combo_v4.bin
-	use_fw mt7921e && doins_subdir mediatek/WIFI_{MT7961_patch_mcu_1_2_hdr,RAM_CODE_MT7961_1}.bin
-	use_fw mt7921e-bt && doins_subdir mediatek/BT_RAM_CODE_MT7961_1_2_hdr.bin
-	use_fw mt8173-vpu && doins vpu_{d,p}.bin
-	use_fw nvidia-xusb && doins_subdir nvidia/tegra*/xusb.bin
-	use_fw qca6174a-3-bt && doins_subdir qca/{nvm,rampatch}_0044*.bin
-	use_fw qca6174a-5-bt && doins_subdir qca/{nvm,rampatch}_usb_*.bin
-	use_fw qca-wcn3990-bt && doins_subdir qca/{crbtfw21.tlv,crnv21.bin}
-	use_fw qca-wcn3991-bt && doins_subdir qca/{crbtfw32.tlv,crnv32.bin,crnv32u.bin}
-	use_fw rockchip-dptx && doins_subdir rockchip/dptx.bin
-	use_fw rtl8107e-1 && doins_subdir rtl_nic/rtl8107e-1.fw
-	use_fw rtl8107e-2 && doins_subdir rtl_nic/rtl8107e-2.fw
-	use_fw rtl8125a-3 && doins_subdir rtl_nic/rtl8125a-3.fw
-	use_fw rtl8153 && doins_subdir rtl_nic/rtl8153*.fw
-	use_fw rtl8168fp-3 && doins_subdir rtl_nic/rtl8168fp-3.fw
-	use_fw rtl8168g-1 && doins_subdir rtl_nic/rtl8168g-1.fw
-	use_fw rtl8168g-2 && doins_subdir rtl_nic/rtl8168g-2.fw
-	use_fw rtl8168h-1 && doins_subdir rtl_nic/rtl8168h-1.fw
-	use_fw rtl8168h-2 && doins_subdir rtl_nic/rtl8168h-2.fw
-	use_fw rtl_bt-8822ce-uart && doins_subdir rtl_bt/rtl8822cs*.bin
-	use_fw rtl_bt-8822ce-usb && doins_subdir rtl_bt/rtl8822cu*.bin
-	use_fw rtl_bt-8852ae-usb && doins_subdir rtl_bt/rtl8852au*.bin
-	use_fw rtw8822c && doins_subdir rtw88/rtw8822c*.bin
-	use_fw rtw8852a && doins_subdir rtw89/rtw8852a*.bin
-	use_fw venus-52 && doins_subdir qcom/venus-5.2/*
-	use_fw venus-54 && doins_subdir qcom/venus-5.4/*
-	use video_cards_radeon && doins_subdir radeon/*
-
-	local ignore_legacy_amdgpu=0
-
-	if use_fw amdgpu_carrizo; then
-		doins_subdir amdgpu/carrizo*
-		ignore_legacy_amdgpu=1
-	fi
-
-	if use_fw amdgpu_green_sardine; then
-		doins_subdir amdgpu/green_sardine*
-		ignore_legacy_amdgpu=1
-	fi
-
-	if use_fw amdgpu_picasso; then
-		doins_subdir amdgpu/picasso*
-		ignore_legacy_amdgpu=1
-	fi
-
-	if use_fw amdgpu_raven2; then
-		doins_subdir amdgpu/raven_dmcu*
-		doins_subdir amdgpu/raven2*
-		ignore_legacy_amdgpu=1
-	fi
-
-	if use_fw amdgpu_renoir; then
-		doins_subdir amdgpu/renoir*
-		ignore_legacy_amdgpu=1
-	fi
-
-	if use_fw amdgpu_stoney; then
-		doins_subdir amdgpu/stoney*
-		ignore_legacy_amdgpu=1
-	fi
-
-	if use_fw amdgpu_vega12; then
-		doins_subdir amdgpu/vega12*
-		ignore_legacy_amdgpu=1
-	fi
-
-	# This use flag is deprecated and being removed
-	if [[ "${ignore_legacy_amdgpu}" -eq 0 ]] && use video_cards_amdgpu; then
-		doins_subdir amdgpu/{carrizo,picasso,raven_dmcu,raven2,stoney,vega12}*
-	fi
-
-	use_fw rt2870 && doins rt2870.bin
-
-	# The firmware here is a mess; install specific files by hand.
-	if use linux_firmware_ath3k-all || use linux_firmware_ath3k-ar3011; then
-		doins ath3k-1.fw
-	fi
-	if use linux_firmware_ath3k-all || use linux_firmware_ath3k-ar3012; then
-		(
-		insinto "${FIRMWARE_INSTALL_ROOT}/ar3k"
-		doins ar3k/*.dfu
-		)
-	fi
-
-	install_iwlwifi
-
-	for x in "${IUSE_BRCMWIFI[@]}"; do
-		use_fw ${x} || continue
-		case ${x} in
-		brcmfmac-all)      doins_subdir brcm/brcmfmac* ;;
-		brcmfmac4354-sdio) doins_subdir brcm/brcmfmac4354-sdio.* ;;
-		brcmfmac4356-pcie) doins_subdir brcm/brcmfmac4356-pcie.* ;;
-		brcmfmac4371-pcie) doins_subdir brcm/brcmfmac4371-pcie.* ;;
-		esac
-	done
-
-	# Hanle 'Link:' directives in WHENCE. The Makefile's copy-firmware.sh
-	# does this too, but we trim down the install list a lot, so we don't
-	# use that script.
-	local link target
-	while read -r link target; do
-		# ${target} is link-relative, so we need to construct a full path.
-		local install_target="${D}/${FIRMWARE_INSTALL_ROOT}/$(dirname "${link}")/${target}"
-		# Skip 'Link' directives for files we didn't install already.
-		[[ -f "${install_target}" ]] || continue
-		einfo "Creating link ${link} (${target})"
-		dodir "${FIRMWARE_INSTALL_ROOT}/$(dirname "${link}")"
-		dosym "${target}" "${FIRMWARE_INSTALL_ROOT}/${link}"
-	done < <(grep -E '^Link:' WHENCE | sed -e's/^Link: *//g' -e's/-> //g')
-}
-
-src_test() {
-	emake check
-}
diff --git a/sys-kernel/linux-firmware/linux-firmware-0.0.1-r493.ebuild b/sys-kernel/linux-firmware/linux-firmware-0.0.1-r493.ebuild
new file mode 100644
index 0000000..e73f3021
--- /dev/null
+++ b/sys-kernel/linux-firmware/linux-firmware-0.0.1-r493.ebuild
@@ -0,0 +1,491 @@
+# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+CROS_WORKON_COMMIT="1ad04936b4e616a3cc6d05354c5fa257b68eb30f"
+CROS_WORKON_TREE="2d91d63b8e88955ece22fe15bcddcf7750194ee9"
+CROS_WORKON_PROJECT="chromiumos/third_party/linux-firmware"
+CROS_WORKON_OUTOFTREE_BUILD=1
+CROS_WORKON_EGIT_BRANCH="master"
+
+inherit cros-workon
+
+DESCRIPTION="Firmware images from the upstream linux-fimware package"
+HOMEPAGE="https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/"
+
+SLOT="0"
+KEYWORDS="*"
+
+
+IUSE_KERNEL_VERS=(
+	kernel-4_19
+	kernel-5_4
+	kernel-upstream
+)
+IUSE_ATH3K=(
+	ath3k-all
+	ath3k-ar3011
+	ath3k-ar3012
+)
+IUSE_IWLWIFI=(
+	iwlwifi-all
+	iwlwifi-100
+	iwlwifi-105
+	iwlwifi-135
+	iwlwifi-1000
+	iwlwifi-1000
+	iwlwifi-2000
+	iwlwifi-2030
+	iwlwifi-3160
+	iwlwifi-3945
+	iwlwifi-4965
+	iwlwifi-5000
+	iwlwifi-5150
+	iwlwifi-6000
+	iwlwifi-6005
+	iwlwifi-6030
+	iwlwifi-6050
+	iwlwifi-7260
+	iwlwifi-7265
+	iwlwifi-7265D
+	iwlwifi-9000
+	iwlwifi-9260
+	iwlwifi-cc
+	iwlwifi-QuZ
+	iwlwifi-so
+)
+IUSE_BRCMWIFI=(
+	brcmfmac-all
+	brcmfmac4354-sdio
+	brcmfmac4356-pcie
+	brcmfmac4371-pcie
+)
+IUSE_LINUX_FIRMWARE=(
+	adreno-630
+	adreno-660
+	adsp_apl
+	adsp_cnl
+	adsp_glk
+	adsp_kbl
+	adsp_skl
+	ath9k_htc
+	ath10k_qca6174a-5
+	ath10k_qca6174a-3
+	ath10k_wcn3990
+	ath11k_wcn6855
+	amdgpu_carrizo
+	amdgpu_green_sardine
+	amdgpu_picasso
+	amdgpu_raven2
+	amdgpu_renoir
+	amdgpu_stoney
+	amdgpu_vega12
+	bcm4354-bt
+	cros-pd
+	fw_sst
+	fw_sst2
+	i915_adl
+	i915_bxt
+	i915_cnl
+	i915_glk
+	i915_jsl
+	i915_kbl
+	i915_skl
+	i915_tgl
+	ibt_9260
+	ibt_9560
+	ibt_ax200
+	ibt_ax201
+	ibt_ax211
+	ibt-hw
+	ipu3_fw
+	keyspan_usb
+	marvell-mwlwifi
+	marvell-pcie8897
+	marvell-pcie8997
+	mt7921e
+	mt7921e-bt
+	mt8173-vpu
+	nvidia-xusb
+	qca6174a-3-bt
+	qca6174a-5-bt
+	qca-wcn3990-bt
+	qca-wcn3991-bt
+	qca-wcn685x-bt
+	rockchip-dptx
+	rt2870
+	rtl8107e-1
+	rtl8107e-2
+	rtl8125a-3
+	rtl8153
+	rtl8168fp-3
+	rtl8168g-1
+	rtl8168g-2
+	rtl8168h-1
+	rtl8168h-2
+	rtl_bt-8822ce-uart
+	rtl_bt-8822ce-usb
+	rtl_bt-8852ae-usb
+	rtw8822c
+	rtw8852a
+	venus-52
+	venus-54
+	venus-vpu-2
+	"${IUSE_ATH3K[@]}"
+	"${IUSE_IWLWIFI[@]}"
+	"${IUSE_BRCMWIFI[@]}"
+)
+IUSE="
+	${IUSE_KERNEL_VERS[*]}
+	${IUSE_LINUX_FIRMWARE[@]/#/linux_firmware_}
+	video_cards_radeon
+	video_cards_amdgpu"
+REQUIRED_USE="?? ( ${IUSE_KERNEL_VERS[*]} )"
+LICENSE="
+	linux_firmware_adreno-630? ( LICENSE.qcom )
+	linux_firmware_adreno-660? ( LICENSE.qcom )
+	linux_firmware_adsp_apl? ( LICENCE.adsp_sst )
+	linux_firmware_adsp_cnl? ( LICENCE.adsp_sst )
+	linux_firmware_adsp_glk? ( LICENCE.adsp_sst )
+	linux_firmware_adsp_kbl? ( LICENCE.adsp_sst )
+	linux_firmware_adsp_skl? ( LICENCE.adsp_sst )
+	linux_firmware_amdgpu_carrizo? ( LICENSE.amdgpu )
+	linux_firmware_amdgpu_green_sardine? ( LICENSE.amdgpu )
+	linux_firmware_amdgpu_picasso? ( LICENSE.amdgpu )
+	linux_firmware_amdgpu_raven2? ( LICENSE.amdgpu )
+	linux_firmware_amdgpu_renoir? ( LICENSE.amdgpu )
+	linux_firmware_amdgpu_stoney? ( LICENSE.amdgpu )
+	linux_firmware_amdgpu_vega12? ( LICENSE.amdgpu )
+	linux_firmware_ath3k-all? ( LICENCE.atheros_firmware )
+	linux_firmware_ath3k-ar3011? ( LICENCE.atheros_firmware )
+	linux_firmware_ath3k-ar3012? ( LICENCE.atheros_firmware )
+	linux_firmware_ath9k_htc? ( LICENCE.atheros_firmware )
+	linux_firmware_ath10k_qca6174a-5? ( LICENSE.QualcommAtheros_ath10k )
+	linux_firmware_ath10k_qca6174a-3? ( LICENSE.QualcommAtheros_ath10k )
+	linux_firmware_ath10k_wcn3990? ( LICENCE.atheros_firmware )
+	linux_firmware_ath11k_wcn6855? ( LICENSE.QualcommAtheros_ath10k )
+	linux_firmware_bcm4354-bt? ( LICENCE.broadcom_bcm43xx )
+	linux_firmware_cros-pd? ( BSD-Google )
+	linux_firmware_fw_sst? ( LICENCE.fw_sst )
+	linux_firmware_fw_sst2? ( LICENCE.IntcSST2 )
+	linux_firmware_i915_adl? ( LICENSE.i915 )
+	linux_firmware_i915_bxt? ( LICENSE.i915 )
+	linux_firmware_i915_cnl? ( LICENSE.i915 )
+	linux_firmware_i915_glk? ( LICENSE.i915 )
+	linux_firmware_i915_jsl? ( LICENSE.i915 )
+	linux_firmware_i915_kbl? ( LICENSE.i915 )
+	linux_firmware_i915_skl? ( LICENSE.i915 )
+	linux_firmware_i915_tgl? ( LICENSE.i915 )
+	linux_firmware_ipu3_fw? ( LICENSE.ipu3_firmware )
+	linux_firmware_ibt_9260? ( LICENCE.ibt_firmware )
+	linux_firmware_ibt_9560? ( LICENCE.ibt_firmware )
+	linux_firmware_ibt_ax200? ( LICENCE.ibt_firmware )
+	linux_firmware_ibt_ax201? ( LICENCE.ibt_firmware )
+	linux_firmware_ibt_ax211? ( LICENCE.ibt_firmware )
+	linux_firmware_ibt-hw? ( LICENCE.ibt_firmware )
+	linux_firmware_keyspan_usb? ( LICENSE.keyspan_usb )
+	linux_firmware_marvell-mwlwifi? ( LICENCE.Marvell )
+	linux_firmware_marvell-pcie8897? ( LICENCE.NXP )
+	linux_firmware_marvell-pcie8997? ( LICENCE.NXP )
+	linux_firmware_mt7921e? ( LICENCE.mediatek-nic )
+	linux_firmware_mt7921e-bt? ( LICENCE.mediatek-nic )
+	linux_firmware_mt8173-vpu? ( LICENCE.mediatek-vpu )
+	linux_firmware_nvidia-xusb? ( LICENCE.nvidia )
+	linux_firmware_qca6174a-3-bt? ( LICENSE.QualcommAtheros_ath10k )
+	linux_firmware_qca6174a-5-bt? ( LICENSE.QualcommAtheros_ath10k )
+	linux_firmware_qca-wcn3990-bt? ( LICENSE.QualcommAtheros_ath10k )
+	linux_firmware_qca-wcn3991-bt? ( LICENSE.QualcommAtheros_ath10k )
+	linux_firmware_qca-wcn685x-bt? ( LICENSE.QualcommAtheros_ath10k )
+	linux_firmware_rockchip-dptx? ( LICENCE.rockchip )
+	linux_firmware_rt2870? ( LICENCE.ralink-firmware.txt LICENCE.ralink_a_mediatek_company_firmware )
+	linux_firmware_rtl8107e-1? ( LICENCE.rtl_nic )
+	linux_firmware_rtl8107e-2? ( LICENCE.rtl_nic )
+	linux_firmware_rtl8125a-3? ( LICENCE.rtl_nic )
+	linux_firmware_rtl8153? ( LICENCE.rtlwifi_firmware )
+	linux_firmware_rtl8168fp-3? ( LICENCE.rtl_nic )
+	linux_firmware_rtl8168g-1? ( LICENCE.rtl_nic )
+	linux_firmware_rtl8168g-2? ( LICENCE.rtl_nic )
+	linux_firmware_rtl8168h-1? ( LICENCE.rtl_nic )
+	linux_firmware_rtl8168h-2? ( LICENCE.rtl_nic )
+	linux_firmware_rtl_bt-8822ce-uart? ( LICENCE.rtlwifi_firmware )
+	linux_firmware_rtl_bt-8822ce-usb? ( LICENCE.rtlwifi_firmware )
+	linux_firmware_rtl_bt-8852ae-usb? ( LICENCE.rtlwifi_firmware )
+	linux_firmware_rtw8822c? ( LICENCE.rtlwifi_firmware )
+	linux_firmware_rtw8852a? ( LICENCE.rtlwifi_firmware )
+	linux_firmware_venus-52? ( LICENSE.qcom )
+	linux_firmware_venus-54? ( LICENSE.qcom )
+	linux_firmware_venus-vpu-2? ( LICENSE.qcom )
+	$(printf 'linux_firmware_%s? ( LICENCE.iwlwifi_firmware ) ' "${IUSE_IWLWIFI[@]}")
+	$(printf 'linux_firmware_%s? ( LICENCE.broadcom_bcm43xx ) ' "${IUSE_BRCMWIFI[@]}")
+	video_cards_radeon? ( LICENSE.radeon )
+	video_cards_amdgpu? ( LICENSE.amdgpu )
+"
+
+BDEPEND="
+	dev-lang/python
+	dev-vcs/git
+"
+
+RDEPEND="
+	linux_firmware_adreno-630? ( !media-libs/a630-fw )
+	linux_firmware_adreno-630? ( !media-libs/a660-fw )
+	linux_firmware_ath3k-all? ( !net-wireless/ath3k )
+	linux_firmware_ath3k-ar3011? ( !net-wireless/ath3k )
+	linux_firmware_ath3k-ar3012? ( !net-wireless/ath3k )
+	linux_firmware_keyspan_usb? (
+		!sys-kernel/chromeos-kernel-3_18[firmware_install]
+		!sys-kernel/chromeos-kernel-4_4[firmware_install]
+	)
+	linux_firmware_marvell-pcie8897? ( !net-wireless/marvell_sd8787[pcie] )
+	linux_firmware_marvell-pcie8997? ( !net-wireless/marvell_sd8787[pcie] )
+	linux_firmware_mt8173-vpu? ( !media-libs/vpu-fw )
+	linux_firmware_nvidia-xusb? ( !sys-kernel/xhci-firmware )
+	linux_firmware_rt2870? ( !net-wireless/realtek-rt2800-firmware )
+	!net-wireless/ath6k
+	!net-wireless/ath10k
+	!net-wireless/iwl1000-ucode
+	!net-wireless/iwl2000-ucode
+	!net-wireless/iwl2030-ucode
+	!net-wireless/iwl3945-ucode
+	!net-wireless/iwl4965-ucode
+	!net-wireless/iwl5000-ucode
+	!net-wireless/iwl6000-ucode
+	!net-wireless/iwl6005-ucode
+	!net-wireless/iwl6030-ucode
+	!net-wireless/iwl6050-ucode
+	!sys-kernel/iwlwifi-gfp2-private
+"
+
+RESTRICT="binchecks strip"
+
+FIRMWARE_INSTALL_ROOT="/lib/firmware"
+
+use_fw() {
+	use linux_firmware_$1
+}
+
+doins_subdir() {
+	# Avoid having this insinto command affecting later doins calls.
+	local file
+	for file in "${@}"; do
+		(
+		insinto "${FIRMWARE_INSTALL_ROOT}/${file%/*}"
+		doins "${file}"
+		)
+	done
+}
+
+install_iwlwifi() {
+	# We do not always need to detect the kernel version when all kernels
+	# have the same iwlwifi firmware version. However, this changes every so
+	# often for the 2 most recent kernels during bring up, where we can
+	# typically use a more recent firmware on the in-development board but
+	# keep the previous version for stable boards to avoid regressions.
+	# Keep the logic around to avoid having to rewrite it every single time.
+	local kernel=""
+	local k
+	for k in "${IUSE_KERNEL_VERS[@]}"; do
+		if use "${k}"; then
+			kernel="${k}"
+			break
+		fi
+	done
+	if [[ -z "${kernel}" ]]; then
+		einfo "No kernel USE flag set."
+		einfo "Expected if all kernels have the same iwlwifi firmware."
+	fi
+
+	for x in "${IUSE_IWLWIFI[@]}"; do
+		use_fw "${x}" || continue
+		case "${x}" in
+		iwlwifi-all)   doins iwlwifi-*.ucode ;;
+		iwlwifi-6005)  doins iwlwifi-6000g2a-*.ucode ;;
+		iwlwifi-6030)  doins iwlwifi-6000g2b-*.ucode ;;
+		iwlwifi-7260)  doins "${x}-17.ucode" ;;
+		iwlwifi-7265D) doins "${x}-29.ucode" ;;
+		iwlwifi-9000)  doins "${x}-pu-b0-jf-b0-46.ucode" ;;
+		iwlwifi-9260)  doins "${x}-th-b0-jf-b0-46.ucode" ;;
+		iwlwifi-cc)
+			case "${kernel}" in
+			kernel-upstream) doins "${x}-a0-62.ucode" ;;
+			*)               doins "${x}-a0-67.ucode" ;;
+			esac
+			;;
+		iwlwifi-QuZ)
+			case "${kernel}" in
+			kernel-4_19) doins "${x}-a0-hr-b0-67.ucode" ;;
+			kernel-5_4)  doins "${x}-a0-hr-b0-67.ucode" ;;
+			kernel-upstream)  doins "${x}-a0-hr-b0-62.ucode" ;;
+			*)
+				ewarn "Unexpected kernel version '${kernel}'."
+				ewarn "Installing all '${x}' files."
+				doins "${x}"-*.ucode
+				;;
+			esac
+			;;
+		iwlwifi-so)
+			doins "${x}-a0-gf-a0-67.ucode"
+			doins "${x}-a0-gf-a0.pnvm"
+			;;
+		iwlwifi-*) doins "${x}"-*.ucode ;;
+		esac
+		# At least with EAPI 7, it's ok to call 'doins' with the same
+		# file multiple times. So an overlay declaring multiple
+		# 'iwlwifi-*' USE flags (e.g. volteer) won't break the build.
+		doins "iwl-dbg-cfg.ini"
+	done
+}
+
+src_install() {
+	local x
+	insinto "${FIRMWARE_INSTALL_ROOT}"
+	use_fw adreno-630 && doins_subdir qcom/a630*
+	use_fw adreno-660 && doins_subdir qcom/a660*
+	use_fw adsp_apl && doins_subdir intel/dsp_fw_bxtn*
+	use_fw adsp_cnl && doins_subdir intel/dsp_fw_cnl*
+	use_fw adsp_glk && doins_subdir intel/dsp_fw_glk*
+	use_fw adsp_kbl && doins_subdir intel/dsp_fw_kbl*
+	use_fw adsp_skl && doins_subdir intel/dsp_fw_*
+	use_fw ath9k_htc && doins htc_*.fw
+	use_fw ath10k_qca6174a-5 && doins_subdir ath10k/QCA6174/hw3.0/{firmware-6,board-2}.bin
+	use_fw ath10k_qca6174a-3 && doins_subdir ath10k/QCA6174/hw3.0/{firmware-sdio-6,board-2}.bin
+	use_fw ath10k_wcn3990 && doins_subdir ath10k/WCN3990/hw1.0/*
+	use_fw ath11k_wcn6855 && doins_subdir ath11k/WCN6855/hw2.0/*
+	use_fw bcm4354-bt && doins_subdir brcm/BCM4354_*.hcd
+	use_fw cros-pd && doins_subdir cros-pd/*
+	use_fw fw_sst && doins_subdir intel/fw_sst*
+	use_fw fw_sst2 && doins_subdir intel/IntcSST2.bin
+	use_fw i915_adl && doins_subdir i915/adl*
+	use_fw i915_bxt && doins_subdir i915/bxt*
+	use_fw i915_cnl && doins_subdir i915/cnl*
+	use_fw i915_glk && doins_subdir i915/glk*
+	use_fw i915_jsl && doins_subdir i915/icl_dmc_ver1_09.bin && doins_subdir i915/ehl*
+	use_fw i915_kbl && doins_subdir i915/kbl*
+	use_fw i915_skl && doins_subdir i915/skl*
+	use_fw i915_tgl && doins_subdir i915/tgl*
+	use_fw ipu3_fw && doins_subdir intel/irci_*
+	use_fw ibt_9260 && doins_subdir intel/ibt-18-16-1.*
+	use_fw ibt_9560 && doins_subdir intel/ibt-17-16-1.*
+	use_fw ibt_ax200 && doins_subdir intel/ibt-20-*.*
+	use_fw ibt_ax201 && doins_subdir intel/ibt-19-*.*
+	use_fw ibt_ax211 && doins_subdir intel/ibt-0040-0041.*
+	use_fw ibt-hw && doins_subdir intel/ibt-hw-*.bseq
+	use_fw keyspan_usb && doins_subdir keyspan/*
+	use_fw marvell-mwlwifi && doins_subdir mwlwifi/*.bin
+	use_fw marvell-pcie8897 && doins_subdir mrvl/pcie8897_uapsta.bin
+	use_fw marvell-pcie8997 && doins_subdir mrvl/pcieusb8997_combo_v4.bin
+	use_fw mt7921e && doins_subdir mediatek/WIFI_{MT7961_patch_mcu_1_2_hdr,RAM_CODE_MT7961_1}.bin
+	use_fw mt7921e-bt && doins_subdir mediatek/BT_RAM_CODE_MT7961_1_2_hdr.bin
+	use_fw mt8173-vpu && doins vpu_{d,p}.bin
+	use_fw nvidia-xusb && doins_subdir nvidia/tegra*/xusb.bin
+	use_fw qca6174a-3-bt && doins_subdir qca/{nvm,rampatch}_0044*.bin
+	use_fw qca6174a-5-bt && doins_subdir qca/{nvm,rampatch}_usb_00000302*.bin
+	use_fw qca-wcn3990-bt && doins_subdir qca/{crbtfw21.tlv,crnv21.bin}
+	use_fw qca-wcn3991-bt && doins_subdir qca/{crbtfw32.tlv,crnv32.bin,crnv32u.bin}
+	use_fw qca-wcn685x-bt && doins_subdir qca/{nvm,rampatch}_usb_0013*.bin
+	use_fw rockchip-dptx && doins_subdir rockchip/dptx.bin
+	use_fw rtl8107e-1 && doins_subdir rtl_nic/rtl8107e-1.fw
+	use_fw rtl8107e-2 && doins_subdir rtl_nic/rtl8107e-2.fw
+	use_fw rtl8125a-3 && doins_subdir rtl_nic/rtl8125a-3.fw
+	use_fw rtl8153 && doins_subdir rtl_nic/rtl8153*.fw
+	use_fw rtl8168fp-3 && doins_subdir rtl_nic/rtl8168fp-3.fw
+	use_fw rtl8168g-1 && doins_subdir rtl_nic/rtl8168g-1.fw
+	use_fw rtl8168g-2 && doins_subdir rtl_nic/rtl8168g-2.fw
+	use_fw rtl8168h-1 && doins_subdir rtl_nic/rtl8168h-1.fw
+	use_fw rtl8168h-2 && doins_subdir rtl_nic/rtl8168h-2.fw
+	use_fw rtl_bt-8822ce-uart && doins_subdir rtl_bt/rtl8822cs*.bin
+	use_fw rtl_bt-8822ce-usb && doins_subdir rtl_bt/rtl8822cu*.bin
+	use_fw rtl_bt-8852ae-usb && doins_subdir rtl_bt/rtl8852au*.bin
+	use_fw rtw8822c && doins_subdir rtw88/rtw8822c*.bin
+	use_fw rtw8852a && doins_subdir rtw89/rtw8852a*.bin
+	use_fw venus-52 && doins_subdir qcom/venus-5.2/*
+	use_fw venus-54 && doins_subdir qcom/venus-5.4/*
+	use_fw venus-vpu-2 && doins_subdir qcom/vpu-2.0/*
+	use video_cards_radeon && doins_subdir radeon/*
+
+	local ignore_legacy_amdgpu=0
+
+	if use_fw amdgpu_carrizo; then
+		doins_subdir amdgpu/carrizo*
+		ignore_legacy_amdgpu=1
+	fi
+
+	if use_fw amdgpu_green_sardine; then
+		doins_subdir amdgpu/green_sardine*
+		ignore_legacy_amdgpu=1
+	fi
+
+	if use_fw amdgpu_picasso; then
+		doins_subdir amdgpu/picasso*
+		ignore_legacy_amdgpu=1
+	fi
+
+	if use_fw amdgpu_raven2; then
+		doins_subdir amdgpu/raven_dmcu*
+		doins_subdir amdgpu/raven2*
+		ignore_legacy_amdgpu=1
+	fi
+
+	if use_fw amdgpu_renoir; then
+		doins_subdir amdgpu/renoir*
+		ignore_legacy_amdgpu=1
+	fi
+
+	if use_fw amdgpu_stoney; then
+		doins_subdir amdgpu/stoney*
+		ignore_legacy_amdgpu=1
+	fi
+
+	if use_fw amdgpu_vega12; then
+		doins_subdir amdgpu/vega12*
+		ignore_legacy_amdgpu=1
+	fi
+
+	# This use flag is deprecated and being removed
+	if [[ "${ignore_legacy_amdgpu}" -eq 0 ]] && use video_cards_amdgpu; then
+		doins_subdir amdgpu/{carrizo,picasso,raven_dmcu,raven2,stoney,vega12}*
+	fi
+
+	use_fw rt2870 && doins rt2870.bin
+
+	# The firmware here is a mess; install specific files by hand.
+	if use linux_firmware_ath3k-all || use linux_firmware_ath3k-ar3011; then
+		doins ath3k-1.fw
+	fi
+	if use linux_firmware_ath3k-all || use linux_firmware_ath3k-ar3012; then
+		(
+		insinto "${FIRMWARE_INSTALL_ROOT}/ar3k"
+		doins ar3k/*.dfu
+		)
+	fi
+
+	install_iwlwifi
+
+	for x in "${IUSE_BRCMWIFI[@]}"; do
+		use_fw ${x} || continue
+		case ${x} in
+		brcmfmac-all)      doins_subdir brcm/brcmfmac* ;;
+		brcmfmac4354-sdio) doins_subdir brcm/brcmfmac4354-sdio.* ;;
+		brcmfmac4356-pcie) doins_subdir brcm/brcmfmac4356-pcie.* ;;
+		brcmfmac4371-pcie) doins_subdir brcm/brcmfmac4371-pcie.* ;;
+		esac
+	done
+
+	# Hanle 'Link:' directives in WHENCE. The Makefile's copy-firmware.sh
+	# does this too, but we trim down the install list a lot, so we don't
+	# use that script.
+	local link target
+	while read -r link target; do
+		# ${target} is link-relative, so we need to construct a full path.
+		local install_target="${D}/${FIRMWARE_INSTALL_ROOT}/$(dirname "${link}")/${target}"
+		# Skip 'Link' directives for files we didn't install already.
+		[[ -f "${install_target}" ]] || continue
+		einfo "Creating link ${link} (${target})"
+		dodir "${FIRMWARE_INSTALL_ROOT}/$(dirname "${link}")"
+		dosym "${target}" "${FIRMWARE_INSTALL_ROOT}/${link}"
+	done < <(grep -E '^Link:' WHENCE | sed -e's/^Link: *//g' -e's/-> //g')
+}
+
+src_test() {
+	emake check
+}
diff --git a/sys-kernel/linux-firmware/linux-firmware-9999.ebuild b/sys-kernel/linux-firmware/linux-firmware-9999.ebuild
index 2ac89f2..6692a43 100644
--- a/sys-kernel/linux-firmware/linux-firmware-9999.ebuild
+++ b/sys-kernel/linux-firmware/linux-firmware-9999.ebuild
@@ -50,6 +50,7 @@
 	iwlwifi-9260
 	iwlwifi-cc
 	iwlwifi-QuZ
+	iwlwifi-so
 )
 IUSE_BRCMWIFI=(
 	brcmfmac-all
@@ -69,6 +70,7 @@
 	ath10k_qca6174a-5
 	ath10k_qca6174a-3
 	ath10k_wcn3990
+	ath11k_wcn6855
 	amdgpu_carrizo
 	amdgpu_green_sardine
 	amdgpu_picasso
@@ -92,6 +94,7 @@
 	ibt_9560
 	ibt_ax200
 	ibt_ax201
+	ibt_ax211
 	ibt-hw
 	ipu3_fw
 	keyspan_usb
@@ -106,6 +109,7 @@
 	qca6174a-5-bt
 	qca-wcn3990-bt
 	qca-wcn3991-bt
+	qca-wcn685x-bt
 	rockchip-dptx
 	rt2870
 	rtl8107e-1
@@ -124,6 +128,7 @@
 	rtw8852a
 	venus-52
 	venus-54
+	venus-vpu-2
 	"${IUSE_ATH3K[@]}"
 	"${IUSE_IWLWIFI[@]}"
 	"${IUSE_BRCMWIFI[@]}"
@@ -156,6 +161,7 @@
 	linux_firmware_ath10k_qca6174a-5? ( LICENSE.QualcommAtheros_ath10k )
 	linux_firmware_ath10k_qca6174a-3? ( LICENSE.QualcommAtheros_ath10k )
 	linux_firmware_ath10k_wcn3990? ( LICENCE.atheros_firmware )
+	linux_firmware_ath11k_wcn6855? ( LICENSE.QualcommAtheros_ath10k )
 	linux_firmware_bcm4354-bt? ( LICENCE.broadcom_bcm43xx )
 	linux_firmware_cros-pd? ( BSD-Google )
 	linux_firmware_fw_sst? ( LICENCE.fw_sst )
@@ -173,11 +179,12 @@
 	linux_firmware_ibt_9560? ( LICENCE.ibt_firmware )
 	linux_firmware_ibt_ax200? ( LICENCE.ibt_firmware )
 	linux_firmware_ibt_ax201? ( LICENCE.ibt_firmware )
+	linux_firmware_ibt_ax211? ( LICENCE.ibt_firmware )
 	linux_firmware_ibt-hw? ( LICENCE.ibt_firmware )
 	linux_firmware_keyspan_usb? ( LICENSE.keyspan_usb )
 	linux_firmware_marvell-mwlwifi? ( LICENCE.Marvell )
-	linux_firmware_marvell-pcie8897? ( LICENCE.Marvell )
-	linux_firmware_marvell-pcie8997? ( LICENCE.Marvell )
+	linux_firmware_marvell-pcie8897? ( LICENCE.NXP )
+	linux_firmware_marvell-pcie8997? ( LICENCE.NXP )
 	linux_firmware_mt7921e? ( LICENCE.mediatek-nic )
 	linux_firmware_mt7921e-bt? ( LICENCE.mediatek-nic )
 	linux_firmware_mt8173-vpu? ( LICENCE.mediatek-vpu )
@@ -186,6 +193,7 @@
 	linux_firmware_qca6174a-5-bt? ( LICENSE.QualcommAtheros_ath10k )
 	linux_firmware_qca-wcn3990-bt? ( LICENSE.QualcommAtheros_ath10k )
 	linux_firmware_qca-wcn3991-bt? ( LICENSE.QualcommAtheros_ath10k )
+	linux_firmware_qca-wcn685x-bt? ( LICENSE.QualcommAtheros_ath10k )
 	linux_firmware_rockchip-dptx? ( LICENCE.rockchip )
 	linux_firmware_rt2870? ( LICENCE.ralink-firmware.txt LICENCE.ralink_a_mediatek_company_firmware )
 	linux_firmware_rtl8107e-1? ( LICENCE.rtl_nic )
@@ -204,6 +212,7 @@
 	linux_firmware_rtw8852a? ( LICENCE.rtlwifi_firmware )
 	linux_firmware_venus-52? ( LICENSE.qcom )
 	linux_firmware_venus-54? ( LICENSE.qcom )
+	linux_firmware_venus-vpu-2? ( LICENSE.qcom )
 	$(printf 'linux_firmware_%s? ( LICENCE.iwlwifi_firmware ) ' "${IUSE_IWLWIFI[@]}")
 	$(printf 'linux_firmware_%s? ( LICENCE.broadcom_bcm43xx ) ' "${IUSE_BRCMWIFI[@]}")
 	video_cards_radeon? ( LICENSE.radeon )
@@ -242,6 +251,7 @@
 	!net-wireless/iwl6005-ucode
 	!net-wireless/iwl6030-ucode
 	!net-wireless/iwl6050-ucode
+	!sys-kernel/iwlwifi-gfp2-private
 "
 
 RESTRICT="binchecks strip"
@@ -296,13 +306,13 @@
 		iwlwifi-cc)
 			case "${kernel}" in
 			kernel-upstream) doins "${x}-a0-62.ucode" ;;
-			*)               doins "${x}-a0-65.ucode" ;;
+			*)               doins "${x}-a0-67.ucode" ;;
 			esac
 			;;
 		iwlwifi-QuZ)
 			case "${kernel}" in
-			kernel-4_19) doins "${x}-a0-hr-b0-65.ucode" ;;
-			kernel-5_4)  doins "${x}-a0-hr-b0-65.ucode" ;;
+			kernel-4_19) doins "${x}-a0-hr-b0-67.ucode" ;;
+			kernel-5_4)  doins "${x}-a0-hr-b0-67.ucode" ;;
 			kernel-upstream)  doins "${x}-a0-hr-b0-62.ucode" ;;
 			*)
 				ewarn "Unexpected kernel version '${kernel}'."
@@ -311,6 +321,10 @@
 				;;
 			esac
 			;;
+		iwlwifi-so)
+			doins "${x}-a0-gf-a0-67.ucode"
+			doins "${x}-a0-gf-a0.pnvm"
+			;;
 		iwlwifi-*) doins "${x}"-*.ucode ;;
 		esac
 		# At least with EAPI 7, it's ok to call 'doins' with the same
@@ -334,6 +348,7 @@
 	use_fw ath10k_qca6174a-5 && doins_subdir ath10k/QCA6174/hw3.0/{firmware-6,board-2}.bin
 	use_fw ath10k_qca6174a-3 && doins_subdir ath10k/QCA6174/hw3.0/{firmware-sdio-6,board-2}.bin
 	use_fw ath10k_wcn3990 && doins_subdir ath10k/WCN3990/hw1.0/*
+	use_fw ath11k_wcn6855 && doins_subdir ath11k/WCN6855/hw2.0/*
 	use_fw bcm4354-bt && doins_subdir brcm/BCM4354_*.hcd
 	use_fw cros-pd && doins_subdir cros-pd/*
 	use_fw fw_sst && doins_subdir intel/fw_sst*
@@ -351,6 +366,7 @@
 	use_fw ibt_9560 && doins_subdir intel/ibt-17-16-1.*
 	use_fw ibt_ax200 && doins_subdir intel/ibt-20-*.*
 	use_fw ibt_ax201 && doins_subdir intel/ibt-19-*.*
+	use_fw ibt_ax211 && doins_subdir intel/ibt-0040-0041.*
 	use_fw ibt-hw && doins_subdir intel/ibt-hw-*.bseq
 	use_fw keyspan_usb && doins_subdir keyspan/*
 	use_fw marvell-mwlwifi && doins_subdir mwlwifi/*.bin
@@ -361,9 +377,10 @@
 	use_fw mt8173-vpu && doins vpu_{d,p}.bin
 	use_fw nvidia-xusb && doins_subdir nvidia/tegra*/xusb.bin
 	use_fw qca6174a-3-bt && doins_subdir qca/{nvm,rampatch}_0044*.bin
-	use_fw qca6174a-5-bt && doins_subdir qca/{nvm,rampatch}_usb_*.bin
+	use_fw qca6174a-5-bt && doins_subdir qca/{nvm,rampatch}_usb_00000302*.bin
 	use_fw qca-wcn3990-bt && doins_subdir qca/{crbtfw21.tlv,crnv21.bin}
 	use_fw qca-wcn3991-bt && doins_subdir qca/{crbtfw32.tlv,crnv32.bin,crnv32u.bin}
+	use_fw qca-wcn685x-bt && doins_subdir qca/{nvm,rampatch}_usb_0013*.bin
 	use_fw rockchip-dptx && doins_subdir rockchip/dptx.bin
 	use_fw rtl8107e-1 && doins_subdir rtl_nic/rtl8107e-1.fw
 	use_fw rtl8107e-2 && doins_subdir rtl_nic/rtl8107e-2.fw
@@ -381,6 +398,7 @@
 	use_fw rtw8852a && doins_subdir rtw89/rtw8852a*.bin
 	use_fw venus-52 && doins_subdir qcom/venus-5.2/*
 	use_fw venus-54 && doins_subdir qcom/venus-5.4/*
+	use_fw venus-vpu-2 && doins_subdir qcom/vpu-2.0/*
 	use video_cards_radeon && doins_subdir radeon/*
 
 	local ignore_legacy_amdgpu=0
diff --git a/sys-kernel/linux-headers/files/0044-CHROMIUM-v4l2-controls-use-very-high-ID-for-ROI-auto.patch b/sys-kernel/linux-headers/files/0044-CHROMIUM-v4l2-controls-use-very-high-ID-for-ROI-auto.patch
new file mode 100644
index 0000000..052241e
--- /dev/null
+++ b/sys-kernel/linux-headers/files/0044-CHROMIUM-v4l2-controls-use-very-high-ID-for-ROI-auto.patch
@@ -0,0 +1,48 @@
+From d4c499c54ab8964beabed5cad377ba398b71a8f4 Mon Sep 17 00:00:00 2001
+From: Sergey Senozhatsky <senozhatsky@chromium.org>
+Date: Thu, 24 Jun 2021 11:47:32 +0900
+Subject: [PATCH] CHROMIUM: v4l2-controls: use very high ID for ROI
+ auto-controls
+
+UVC 1.5 ROI patches did not go into upstream, so new V4L2_CIDs can
+be added, which will cause ID collision on our side. In fact, this
+has happened already on v5.10, where `V4L2_CID_CAMERA_CLASS_BASE+34`
+is being used for camera orientation CID.
+
+Allocate V4L2_CID_REGION_OF_INTEREST_AUTO a very high ID.
+
+BUG=b:186835892
+TEST=tested ROI (v4l2-ctl) on hatch
+
+Signed-off-by: Sergey Senozhatsky <senozhatsky@chromium.org>
+Change-Id: I04578c3cfac20d5656d16f7f25ef246f73b2dcc8
+---
+ include/uapi/linux/v4l2-controls.h | 12 +++++++++++-
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h
+index d1d37f3b7be9..f76d2d8e69ba 100644
+--- a/include/uapi/linux/v4l2-controls.h
++++ b/include/uapi/linux/v4l2-controls.h
+@@ -894,7 +894,17 @@ enum v4l2_auto_focus_range {
+ 
+ #define V4L2_CID_PAN_SPEED			(V4L2_CID_CAMERA_CLASS_BASE+32)
+ #define V4L2_CID_TILT_SPEED			(V4L2_CID_CAMERA_CLASS_BASE+33)
+-#define V4L2_CID_REGION_OF_INTEREST_AUTO	(V4L2_CID_CAMERA_CLASS_BASE+34)
++
++/*
++ * senozhatsky@ b:191930245
++ *
++ * These are FROMLIST defines. Use very high value to avoid collisions
++ * with upstream patches. Controls classes are USHRT_MAX apart from each
++ * other, but the lower 0x900 are not being used. This leaves us with the
++ * USHRT_MAX - 0x900 values. Use SHRT_MAX.
++ */
++#define V4L2_CID_REGION_OF_INTEREST_AUTO	\
++	(V4L2_CID_CAMERA_CLASS_BASE + SHRT_MAX)
+ #define V4L2_CID_REGION_OF_INTEREST_AUTO_EXPOSURE		(1 << 0)
+ #define V4L2_CID_REGION_OF_INTEREST_AUTO_IRIS			(1 << 1)
+ #define V4L2_CID_REGION_OF_INTEREST_AUTO_WHITE_BALANCE		(1 << 2)
+-- 
+2.31.0
+
diff --git a/sys-kernel/linux-headers/files/0045-CHROMIUM-media-add-vb2-buffer-memory-coherency-hints.patch b/sys-kernel/linux-headers/files/0045-CHROMIUM-media-add-vb2-buffer-memory-coherency-hints.patch
new file mode 100644
index 0000000..80a11b7
--- /dev/null
+++ b/sys-kernel/linux-headers/files/0045-CHROMIUM-media-add-vb2-buffer-memory-coherency-hints.patch
@@ -0,0 +1,59 @@
+From 34f8c2b4de70e14153dd74e05db97fc3c12829a5 Mon Sep 17 00:00:00 2001
+From: Sergey Senozhatsky <senozhatsky@chromium.org>
+Date: Wed, 15 Sep 2021 12:58:32 +0900
+Subject: [PATCH] CHROMIUM: media: add vb2 buffer memory coherency hints
+
+Add V4L2_MEMORY_FLAG_NON_COHERENT macro which user-space can pass
+via v4l2_requestbuffers and v4l2_create_buffers flags to request
+non-coherent memory type.
+
+BUG=b:167319762
+TEST=none
+
+Signed-off-by: Sergey Senozhatsky <senozhatsky@chromium.org>
+Change-Id: I423372d40ed1445f00edf2ffbdadd2bd11b2ad52
+---
+ include/uapi/linux/videodev2.h | 11 +++++++++--
+ 1 file changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
+index a86b4f346fa5..8c822fbaaa37 100644
+--- a/include/uapi/linux/videodev2.h
++++ b/include/uapi/linux/videodev2.h
+@@ -1000,9 +1000,12 @@ struct v4l2_requestbuffers {
+ 	__u32			type;		/* enum v4l2_buf_type */
+ 	__u32			memory;		/* enum v4l2_memory */
+ 	__u32			capabilities;
+-	__u32			reserved[1];
++	__u8			flags;
++	__u8			reserved[3];
+ };
+ 
++#define V4L2_MEMORY_FLAG_NON_COHERENT			(1 << 0)
++
+ /* capabilities for struct v4l2_requestbuffers and v4l2_create_buffers */
+ #define V4L2_BUF_CAP_SUPPORTS_MMAP			(1 << 0)
+ #define V4L2_BUF_CAP_SUPPORTS_USERPTR			(1 << 1)
+@@ -2529,6 +2532,9 @@ struct v4l2_dbg_chip_info {
+  * @memory:	enum v4l2_memory; buffer memory type
+  * @format:	frame format, for which buffers are requested
+  * @capabilities: capabilities of this buffer type.
++ * @flags:	additional buffer management attributes (ignored unless the
++ *		queue has V4L2_BUF_CAP_SUPPORTS_MMAP_CACHE_HINTS capability
++ *		and configured for MMAP streaming I/O).
+  * @reserved:	future extensions
+  */
+ struct v4l2_create_buffers {
+@@ -2537,7 +2543,8 @@ struct v4l2_create_buffers {
+ 	__u32			memory;
+ 	struct v4l2_format	format;
+ 	__u32			capabilities;
+-	__u32			reserved[7];
++	__u32			flags;
++	__u32			reserved[6];
+ };
+ 
+ /*
+-- 
+2.31.0
+
diff --git a/sys-kernel/linux-headers/files/0046-CHROMIUM-v4l2-add-upstream-V4L2-VP8-stateless-contro.patch b/sys-kernel/linux-headers/files/0046-CHROMIUM-v4l2-add-upstream-V4L2-VP8-stateless-contro.patch
new file mode 100644
index 0000000..6716a49
--- /dev/null
+++ b/sys-kernel/linux-headers/files/0046-CHROMIUM-v4l2-add-upstream-V4L2-VP8-stateless-contro.patch
@@ -0,0 +1,255 @@
+From e6a0d784eb43c2ce7ddab7481c84044effeb9452 Mon Sep 17 00:00:00 2001
+From: Chen-Yu Tsai <wenst@chromium.org>
+Date: Mon, 4 Oct 2021 14:58:51 +0800
+Subject: [PATCH] CHROMIUM: v4l2: add upstream V4L2 VP8 stateless controls
+
+Add the official stable VP8 stateless controls so Chromium can use them.
+The controls are up-to-date as of commit e6a7d7c342cb, the last commit
+to touch the VP8 stateless controls before the v5.13 release.
+
+This simply makes the control definitions available to userspace. It is
+up to the individual userspace components to switch over.
+
+BUG=b:198118193
+
+Change-Id: Ifb215512806d1c5906d269eab998f1a3d1ceb722
+---
+ include/uapi/linux/media/vp8-ctrls-upstream.h | 226 ++++++++++++++++++
+ 1 file changed, 226 insertions(+)
+ create mode 100644 include/uapi/linux/media/vp8-ctrls-upstream.h
+
+diff --git a/include/uapi/linux/media/vp8-ctrls-upstream.h b/include/uapi/linux/media/vp8-ctrls-upstream.h
+new file mode 100644
+index 000000000000..3631c6e2bcf2
+--- /dev/null
++++ b/include/uapi/linux/media/vp8-ctrls-upstream.h
+@@ -0,0 +1,226 @@
++/* SPDX-License-Identifier: GPL-2.0 */
++/*
++ * These are the VP8 state controls for use with stateless VP8
++ * codec drivers.
++ *
++ * This is the final stable version, as found in Linux Kernel v5.13.
++ * The controls are up-to-date as of commit e6a7d7c342cb, the last
++ * commit to touch the VP8 stateless controls before the v5.13 release.
++ *
++ * The definitions are kept in this separate file instead of merged into
++ * `include/uapi/linux/videodev2.h` and `include/uapi/linux/v4l2-controls.h`
++ * to avoid possible conflicts with the other VP8 header files. A separate
++ * file also provides an easier migration path for components using these
++ * definitions.
++ */
++
++#ifndef __LINUX_MEDIA_VP8_CTRLS_UPSTREAM_H
++#define __LINUX_MEDIA_VP8_CTRLS_UPSTREAM_H
++
++#include <linux/videodev2.h>
++
++#define V4L2_PIX_FMT_VP8_FRAME v4l2_fourcc('V', 'P', '8', 'F')
++
++#define V4L2_CTRL_TYPE_VP8_FRAME 0x240
++
++#define V4L2_CTRL_CLASS_CODEC_STATELESS 0x00a40000	/* Stateless codecs controls */
++
++/*  Stateless CODECs controls */
++#define V4L2_CID_CODEC_STATELESS_BASE          (V4L2_CTRL_CLASS_CODEC_STATELESS | 0x900)
++#define V4L2_CID_CODEC_STATELESS_CLASS         (V4L2_CTRL_CLASS_CODEC_STATELESS | 1)
++
++#define V4L2_VP8_SEGMENT_FLAG_ENABLED              0x01
++#define V4L2_VP8_SEGMENT_FLAG_UPDATE_MAP           0x02
++#define V4L2_VP8_SEGMENT_FLAG_UPDATE_FEATURE_DATA  0x04
++#define V4L2_VP8_SEGMENT_FLAG_DELTA_VALUE_MODE     0x08
++
++/**
++ * struct v4l2_vp8_segment - VP8 segment-based adjustments parameters
++ *
++ * @quant_update: update values for the segment quantizer.
++ * @lf_update: update values for the loop filter level.
++ * @segment_probs: branch probabilities of the segment_id decoding tree.
++ * @padding: padding field. Should be zeroed by applications.
++ * @flags: see V4L2_VP8_SEGMENT_FLAG_{}.
++ *
++ * This structure contains segment-based adjustments related parameters.
++ * See the 'update_segmentation()' part of the frame header syntax,
++ * and section '9.3. Segment-Based Adjustments' of the VP8 specification
++ * for more details.
++ */
++struct v4l2_vp8_segment {
++	__s8 quant_update[4];
++	__s8 lf_update[4];
++	__u8 segment_probs[3];
++	__u8 padding;
++	__u32 flags;
++};
++
++#define V4L2_VP8_LF_ADJ_ENABLE	0x01
++#define V4L2_VP8_LF_DELTA_UPDATE	0x02
++#define V4L2_VP8_LF_FILTER_TYPE_SIMPLE	0x04
++
++/**
++ * struct v4l2_vp8_loop_filter - VP8 loop filter parameters
++ *
++ * @ref_frm_delta: Reference frame signed delta values.
++ * @mb_mode_delta: MB prediction mode signed delta values.
++ * @sharpness_level: matches sharpness_level syntax element.
++ * @level: matches loop_filter_level syntax element.
++ * @padding: padding field. Should be zeroed by applications.
++ * @flags: see V4L2_VP8_LF_FLAG_{}.
++ *
++ * This structure contains loop filter related parameters.
++ * See the 'mb_lf_adjustments()' part of the frame header syntax,
++ * and section '9.4. Loop Filter Type and Levels' of the VP8 specification
++ * for more details.
++ */
++struct v4l2_vp8_loop_filter {
++	__s8 ref_frm_delta[4];
++	__s8 mb_mode_delta[4];
++	__u8 sharpness_level;
++	__u8 level;
++	__u16 padding;
++	__u32 flags;
++};
++
++/**
++ * struct v4l2_vp8_quantization - VP8 quantizattion indices
++ *
++ * @y_ac_qi: luma AC coefficient table index.
++ * @y_dc_delta: luma DC delta vaue.
++ * @y2_dc_delta: y2 block DC delta value.
++ * @y2_ac_delta: y2 block AC delta value.
++ * @uv_dc_delta: chroma DC delta value.
++ * @uv_ac_delta: chroma AC delta value.
++ * @padding: padding field. Should be zeroed by applications.
++ *
++ * This structure contains the quantization indices present
++ * in 'quant_indices()' part of the frame header syntax.
++ * See section '9.6. Dequantization Indices' of the VP8 specification
++ * for more details.
++ */
++struct v4l2_vp8_quantization {
++	__u8 y_ac_qi;
++	__s8 y_dc_delta;
++	__s8 y2_dc_delta;
++	__s8 y2_ac_delta;
++	__s8 uv_dc_delta;
++	__s8 uv_ac_delta;
++	__u16 padding;
++};
++
++#define V4L2_VP8_COEFF_PROB_CNT 11
++#define V4L2_VP8_MV_PROB_CNT 19
++
++/**
++ * struct v4l2_vp8_entropy - VP8 update probabilities
++ *
++ * @coeff_probs: coefficient probability update values.
++ * @y_mode_probs: luma intra-prediction probabilities.
++ * @uv_mode_probs: chroma intra-prediction probabilities.
++ * @mv_probs: mv decoding probability.
++ * @padding: padding field. Should be zeroed by applications.
++ *
++ * This structure contains the update probabilities present in
++ * 'token_prob_update()' and 'mv_prob_update()' part of the frame header.
++ * See section '17.2. Probability Updates' of the VP8 specification
++ * for more details.
++ */
++struct v4l2_vp8_entropy {
++	__u8 coeff_probs[4][8][3][V4L2_VP8_COEFF_PROB_CNT];
++	__u8 y_mode_probs[4];
++	__u8 uv_mode_probs[3];
++	__u8 mv_probs[2][V4L2_VP8_MV_PROB_CNT];
++	__u8 padding[3];
++};
++
++/**
++ * struct v4l2_vp8_entropy_coder_state - VP8 boolean coder state
++ *
++ * @range: coder state value for "Range"
++ * @value: coder state value for "Value"
++ * @bit_count: number of bits left in range "Value".
++ * @padding: padding field. Should be zeroed by applications.
++ *
++ * This structure contains the state for the boolean coder, as
++ * explained in section '7. Boolean Entropy Decoder' of the VP8 specification.
++ */
++struct v4l2_vp8_entropy_coder_state {
++	__u8 range;
++	__u8 value;
++	__u8 bit_count;
++	__u8 padding;
++};
++
++#define V4L2_VP8_FRAME_FLAG_KEY_FRAME		0x01
++#define V4L2_VP8_FRAME_FLAG_EXPERIMENTAL		0x02
++#define V4L2_VP8_FRAME_FLAG_SHOW_FRAME		0x04
++#define V4L2_VP8_FRAME_FLAG_MB_NO_SKIP_COEFF	0x08
++#define V4L2_VP8_FRAME_FLAG_SIGN_BIAS_GOLDEN	0x10
++#define V4L2_VP8_FRAME_FLAG_SIGN_BIAS_ALT	0x20
++
++#define VP8_FRAME_IS_KEY_FRAME(hdr) \
++	(!!((hdr)->flags & V4L2_VP8_FRAME_FLAG_KEY_FRAME))
++
++#define V4L2_CID_STATELESS_VP8_FRAME (V4L2_CID_CODEC_STATELESS_BASE + 200)
++/**
++ * struct v4l2_ctrl_vp8_frame - VP8 frame parameters
++ *
++ * @segment: segmentation parameters. See &v4l2_vp8_segment for more details
++ * @lf: loop filter parameters. See &v4l2_vp8_loop_filter for more details
++ * @quant: quantization parameters. See &v4l2_vp8_quantization for more details
++ * @entropy: update probabilities. See &v4l2_vp8_entropy for more details
++ * @coder_state: boolean coder state. See &v4l2_vp8_entropy_coder_state for more details
++ * @width: frame width.
++ * @height: frame height.
++ * @horizontal_scale: horizontal scaling factor.
++ * @vertical_scale: vertical scaling factor.
++ * @version: bitstream version.
++ * @prob_skip_false: frame header syntax element.
++ * @prob_intra: frame header syntax element.
++ * @prob_last: frame header syntax element.
++ * @prob_gf: frame header syntax element.
++ * @num_dct_parts: number of DCT coefficients partitions.
++ * @first_part_size: size of the first partition, i.e. the control partition.
++ * @first_part_header_bits: size in bits of the first partition header portion.
++ * @dct_part_sizes: DCT coefficients sizes.
++ * @last_frame_ts: "last" reference buffer timestamp.
++ * The timestamp refers to the timestamp field in struct v4l2_buffer.
++ * Use v4l2_timeval_to_ns() to convert the struct timeval to a __u64.
++ * @golden_frame_ts: "golden" reference buffer timestamp.
++ * @alt_frame_ts: "alt" reference buffer timestamp.
++ * @flags: see V4L2_VP8_FRAME_FLAG_{}.
++ */
++struct v4l2_ctrl_vp8_frame {
++	struct v4l2_vp8_segment segment;
++	struct v4l2_vp8_loop_filter lf;
++	struct v4l2_vp8_quantization quant;
++	struct v4l2_vp8_entropy entropy;
++	struct v4l2_vp8_entropy_coder_state coder_state;
++
++	__u16 width;
++	__u16 height;
++
++	__u8 horizontal_scale;
++	__u8 vertical_scale;
++
++	__u8 version;
++	__u8 prob_skip_false;
++	__u8 prob_intra;
++	__u8 prob_last;
++	__u8 prob_gf;
++	__u8 num_dct_parts;
++
++	__u32 first_part_size;
++	__u32 first_part_header_bits;
++	__u32 dct_part_sizes[8];
++
++	__u64 last_frame_ts;
++	__u64 golden_frame_ts;
++	__u64 alt_frame_ts;
++
++	__u64 flags;
++};
++
++#endif
+-- 
+2.31.0
+
diff --git a/sys-kernel/linux-headers/linux-headers-4.14-r37.ebuild b/sys-kernel/linux-headers/linux-headers-4.14-r40.ebuild
similarity index 100%
rename from sys-kernel/linux-headers/linux-headers-4.14-r37.ebuild
rename to sys-kernel/linux-headers/linux-headers-4.14-r40.ebuild
diff --git a/sys-kernel/linux-headers/linux-headers-4.14.ebuild b/sys-kernel/linux-headers/linux-headers-4.14.ebuild
index 8e3585d..4968418 100644
--- a/sys-kernel/linux-headers/linux-headers-4.14.ebuild
+++ b/sys-kernel/linux-headers/linux-headers-4.14.ebuild
@@ -65,6 +65,9 @@
 	"${FILESDIR}/0041-CHROMIUM-v4l-add-request-based-VP9-stateless-control.patch"
 	"${FILESDIR}/0042-CHROMIUM-linux-headers-update-headers-with-UVC-1.5-R.patch"
 	"${FILESDIR}/0043-BACKPORT-vfs-add-faccessat2-syscall.patch"
+	"${FILESDIR}/0044-CHROMIUM-v4l2-controls-use-very-high-ID-for-ROI-auto.patch"
+	"${FILESDIR}/0045-CHROMIUM-media-add-vb2-buffer-memory-coherency-hints.patch"
+	"${FILESDIR}/0046-CHROMIUM-v4l2-add-upstream-V4L2-VP8-stateless-contro.patch"
 )
 
 src_unpack() {
diff --git a/sys-libs/compiler-rt/compiler-rt-12.0_pre422132-r4.ebuild b/sys-libs/compiler-rt/compiler-rt-12.0_pre422132-r4.ebuild
deleted file mode 120000
index 3098b4b..0000000
--- a/sys-libs/compiler-rt/compiler-rt-12.0_pre422132-r4.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-compiler-rt-12.0_pre422132.ebuild
\ No newline at end of file
diff --git a/sys-libs/compiler-rt/compiler-rt-12.0_pre422132.ebuild b/sys-libs/compiler-rt/compiler-rt-12.0_pre422132.ebuild
deleted file mode 100644
index 0781125..0000000
--- a/sys-libs/compiler-rt/compiler-rt-12.0_pre422132.ebuild
+++ /dev/null
@@ -1,129 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-
-inherit eutils toolchain-funcs cros-constants cmake-utils git-2 cros-llvm
-
-EGIT_REPO_URI="${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project
-	${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project"
-EGIT_BRANCH=main
-
-LLVM_HASH="cd442157cff4aad209ae532cbf031abbe10bc1df" # r422132
-LLVM_NEXT_HASH="cd442157cff4aad209ae532cbf031abbe10bc1df" # r422132
-
-DESCRIPTION="Compiler runtime library for clang"
-HOMEPAGE="http://compiler-rt.llvm.org/"
-
-LICENSE="UoI-NCSA"
-SLOT="0"
-KEYWORDS="*"
-IUSE="+llvm-crt llvm-next llvm-tot"
-DEPEND="sys-devel/llvm"
-if [[ ${CATEGORY} == cross-* ]] ; then
-	DEPEND+="
-		${CATEGORY}/binutils
-		${CATEGORY}/gcc
-		"
-fi
-
-pkg_setup() {
-	export CMAKE_USE_DIR="${S}/compiler-rt"
-}
-
-src_unpack() {
-	if use llvm-next || use llvm-tot; then
-		export EGIT_COMMIT="${LLVM_NEXT_HASH}"
-	else
-		export EGIT_COMMIT="${LLVM_HASH}"
-	fi
-	git-2_src_unpack
-}
-
-src_prepare() {
-	"${FILESDIR}"/patch_manager/patch_manager.py \
-		--svn_version "$(get_most_recent_revision)" \
-		--patch_metadata_file "${FILESDIR}"/PATCHES.json \
-		--filesdir_path "${FILESDIR}" \
-		--src_path "${S}" || die
-	eapply_user
-}
-
-src_configure() {
-	setup_cross_toolchain
-	append-flags "-fomit-frame-pointer"
-	if [[ ${CTARGET} == armv7a* ]]; then
-		# Use vfpv3 to be able to target non-neon targets
-		append-flags -mfpu=vfpv3
-	elif [[ ${CTARGET} == armv7m* ]]; then
-		# Some of the arm32 assembly builtins in compiler-rt need vfpv2.
-		# Passing this flag should not be required but currently
-		# upstream compiler-rt's cmake config does not provide a way to
-		# exclude these asm files.
-		append-flags -Wa,-mfpu=vfpv2
-	fi
-	BUILD_DIR=${WORKDIR}/${P}_build
-
-	local mycmakeargs=(
-		"-DLLVM_ENABLE_PROJECTS=compiler-rt"
-		"-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
-		# crbug/855759
-		"-DCOMPILER_RT_BUILD_CRT=$(usex llvm-crt)"
-		"-DCOMPILER_RT_USE_LIBCXX=yes"
-		"-DCOMPILER_RT_LIBCXXABI_PATH=${S}/libcxxabi"
-		"-DCOMPILER_RT_LIBCXX_PATH=${S}/libcxx"
-		"-DCOMPILER_RT_HAS_GNU_VERSION_SCRIPT_COMPAT=no"
-		"-DCOMPILER_RT_BUILD_LIBFUZZER=no"
-		"-DCOMPILER_RT_BUILTINS_HIDE_SYMBOLS=OFF"
-		"-DCOMPILER_RT_SANITIZERS_TO_BUILD=asan;msan;hwasan;tsan;cfi;ubsan_minimal;gwp_asan"
-	)
-
-	if [[ ${CTARGET} == *-eabi ]]; then
-		mycmakeargs+=(
-			"-DCOMPILER_RT_OS_DIR=baremetal"
-			"-DCOMPILER_RT_BAREMETAL_BUILD=yes"
-			"-DCMAKE_C_COMPILER_TARGET=${CTARGET}"
-			"-DCOMPILER_RT_DEFAULT_TARGET_ONLY=yes"
-		)
-	else
-		mycmakeargs+=(
-			"-DCOMPILER_RT_TEST_TARGET_TRIPLE=${CTARGET}"
-		)
-	fi
-	mycmakeargs+=(
-		"-DCOMPILER_RT_INSTALL_PATH=${EPREFIX}$(${CC} --print-resource-dir)"
-	)
-	cmake-utils_src_configure
-}
-
-src_install() {
-	# There is install conflict between cross-armv7a-cros-linux-gnueabihf
-	# and cross-armv7a-cros-linux-gnueabi. Remove this once we are ready to
-	# move to cross-armv7a-cros-linux-gnueabihf.
-	if [[ ${CTARGET} == armv7a-cros-linux-gnueabi ]] ; then
-		return
-	fi
-	cmake-utils_src_install
-
-	# includes and docs are installed for all sanitizers and xray
-	# These files conflict with files provided in llvm ebuild
-	local libdir=$(llvm-config --libdir)
-	rm -rf "${ED}"usr/share || die
-	rm -rf "${ED}${libdir}"/clang/*/include || die
-	rm -f "${ED}${libdir}"/clang/*/*list.txt || die
-	rm -f "${ED}${libdir}"/clang/*/*/*list.txt || die
-	rm -f "${ED}${libdir}"/clang/*/dfsan_abilist.txt || die
-	rm -f "${ED}${libdir}"/clang/*/*/dfsan_abilist.txt || die
-	rm -f "${ED}${libdir}"/clang/*/bin/* || die
-
-	# Copy compiler-rt files to a new clang version to handle llvm updates gracefully.
-	local llvm_version=$(llvm-config --version)
-	local clang_version=${llvm_version%svn*}
-	clang_version=${clang_version%git*}
-	local compiler_rt_version=${clang_version%%.*}
-	new_version="$((compiler_rt_version + 1)).0.0"
-	old_version="$((compiler_rt_version - 1)).0.0"
-	cp -r  "${D}${libdir}/clang/${clang_version}" "${D}${libdir}/clang/${new_version}"
-	cp -r  "${D}${libdir}/clang/${clang_version}" "${D}${libdir}/clang/${old_version}"
-}
diff --git a/sys-libs/compiler-rt/compiler-rt-13.0_pre428724-r4.ebuild b/sys-libs/compiler-rt/compiler-rt-13.0_pre428724-r4.ebuild
new file mode 120000
index 0000000..74bfe0e
--- /dev/null
+++ b/sys-libs/compiler-rt/compiler-rt-13.0_pre428724-r4.ebuild
@@ -0,0 +1 @@
+compiler-rt-13.0_pre428724.ebuild
\ No newline at end of file
diff --git a/sys-libs/compiler-rt/compiler-rt-13.0_pre428724.ebuild b/sys-libs/compiler-rt/compiler-rt-13.0_pre428724.ebuild
new file mode 100644
index 0000000..8ffd34e
--- /dev/null
+++ b/sys-libs/compiler-rt/compiler-rt-13.0_pre428724.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit eutils toolchain-funcs cros-constants cmake-utils git-2 cros-llvm
+
+EGIT_REPO_URI="${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project
+	${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project"
+EGIT_BRANCH=main
+
+LLVM_HASH="9968896cd62a62b11ac61085534dd598c4bd3c60" # r428724
+LLVM_NEXT_HASH="0fe7531b75e54909a7cb7f7080634ab2053964ad" # r433403
+
+DESCRIPTION="Compiler runtime library for clang"
+HOMEPAGE="http://compiler-rt.llvm.org/"
+
+LICENSE="UoI-NCSA"
+SLOT="0"
+KEYWORDS="*"
+IUSE="+llvm-crt llvm-next llvm-tot"
+DEPEND="sys-devel/llvm"
+if [[ ${CATEGORY} == cross-* ]] ; then
+	DEPEND+="
+		${CATEGORY}/binutils
+		${CATEGORY}/gcc
+		"
+fi
+
+pkg_setup() {
+	export CMAKE_USE_DIR="${S}/compiler-rt"
+}
+
+src_unpack() {
+	if use llvm-next || use llvm-tot; then
+		export EGIT_COMMIT="${LLVM_NEXT_HASH}"
+	else
+		export EGIT_COMMIT="${LLVM_HASH}"
+	fi
+	git-2_src_unpack
+}
+
+src_prepare() {
+	"${FILESDIR}"/patch_manager/patch_manager.py \
+		--svn_version "$(get_most_recent_revision)" \
+		--patch_metadata_file "${FILESDIR}"/PATCHES.json \
+		--filesdir_path "${FILESDIR}" \
+		--src_path "${S}" || die
+	eapply_user
+}
+
+src_configure() {
+	setup_cross_toolchain
+	append-flags "-fomit-frame-pointer"
+	if [[ ${CTARGET} == armv7a* ]]; then
+		# Use vfpv3 to be able to target non-neon targets
+		append-flags -mfpu=vfpv3
+	elif [[ ${CTARGET} == armv7m* ]]; then
+		# Some of the arm32 assembly builtins in compiler-rt need vfpv2.
+		# Passing this flag should not be required but currently
+		# upstream compiler-rt's cmake config does not provide a way to
+		# exclude these asm files.
+		append-flags -Wa,-mfpu=vfpv2
+	fi
+	BUILD_DIR=${WORKDIR}/${P}_build
+
+	local mycmakeargs=(
+		"-DLLVM_ENABLE_PROJECTS=compiler-rt"
+		"-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
+		# crbug/855759
+		"-DCOMPILER_RT_BUILD_CRT=$(usex llvm-crt)"
+		"-DCOMPILER_RT_USE_LIBCXX=yes"
+		"-DCOMPILER_RT_LIBCXXABI_PATH=${S}/libcxxabi"
+		"-DCOMPILER_RT_LIBCXX_PATH=${S}/libcxx"
+		"-DCOMPILER_RT_HAS_GNU_VERSION_SCRIPT_COMPAT=no"
+		"-DCOMPILER_RT_BUILD_LIBFUZZER=no"
+		"-DCOMPILER_RT_BUILTINS_HIDE_SYMBOLS=OFF"
+		"-DCOMPILER_RT_SANITIZERS_TO_BUILD=asan;msan;hwasan;tsan;cfi;ubsan_minimal;gwp_asan"
+		# b/200831212: Disable per runtime install dirs.
+		"-DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=OFF"
+	)
+
+	if [[ ${CTARGET} == *-eabi ]]; then
+		mycmakeargs+=(
+			"-DCOMPILER_RT_OS_DIR=baremetal"
+			"-DCOMPILER_RT_BAREMETAL_BUILD=yes"
+			"-DCMAKE_C_COMPILER_TARGET=${CTARGET}"
+			"-DCOMPILER_RT_DEFAULT_TARGET_ONLY=yes"
+		)
+	else
+		mycmakeargs+=(
+			"-DCOMPILER_RT_DEFAULT_TARGET_TRIPLE=${CTARGET}"
+			"-DCOMPILER_RT_TEST_TARGET_TRIPLE=${CTARGET}"
+		)
+	fi
+	mycmakeargs+=(
+		"-DCOMPILER_RT_INSTALL_PATH=${EPREFIX}$(${CC} --print-resource-dir)"
+	)
+	cmake-utils_src_configure
+}
+
+src_install() {
+	# There is install conflict between cross-armv7a-cros-linux-gnueabihf
+	# and cross-armv7a-cros-linux-gnueabi. Remove this once we are ready to
+	# move to cross-armv7a-cros-linux-gnueabihf.
+	if [[ ${CTARGET} == armv7a-cros-linux-gnueabi ]] ; then
+		return
+	fi
+	cmake-utils_src_install
+
+	# includes and docs are installed for all sanitizers and xray
+	# These files conflict with files provided in llvm ebuild
+	local libdir=$(llvm-config --libdir)
+	rm -rf "${ED}"usr/share || die
+	rm -rf "${ED}${libdir}"/clang/*/include || die
+	rm -f "${ED}${libdir}"/clang/*/*list.txt || die
+	rm -f "${ED}${libdir}"/clang/*/*/*list.txt || die
+	rm -f "${ED}${libdir}"/clang/*/dfsan_abilist.txt || die
+	rm -f "${ED}${libdir}"/clang/*/*/dfsan_abilist.txt || die
+	rm -f "${ED}${libdir}"/clang/*/bin/* || die
+
+	# Copy compiler-rt files to a new clang version to handle llvm updates gracefully.
+	local llvm_version=$(llvm-config --version)
+	local clang_version=${llvm_version%svn*}
+	clang_version=${clang_version%git*}
+	local compiler_rt_version=${clang_version%%.*}
+	new_version="$((compiler_rt_version + 1)).0.0"
+	old_version="$((compiler_rt_version - 1)).0.0"
+	cp -r  "${D}${libdir}/clang/${clang_version}" "${D}${libdir}/clang/${new_version}"
+	cp -r  "${D}${libdir}/clang/${clang_version}" "${D}${libdir}/clang/${old_version}"
+}
diff --git a/sys-libs/compiler-rt/files/21c008d5a5b1e0c2ec3c1659cff961f4b0ccea2c.patch b/sys-libs/compiler-rt/files/21c008d5a5b1e0c2ec3c1659cff961f4b0ccea2c.patch
new file mode 100644
index 0000000..a6c0e04
--- /dev/null
+++ b/sys-libs/compiler-rt/files/21c008d5a5b1e0c2ec3c1659cff961f4b0ccea2c.patch
@@ -0,0 +1,23 @@
+commit 21c008d5a5b1e0c2ec3c1659cff961f4b0ccea2c
+Author: Petr Hosek <phosek@google.com>
+Date:   Tue Jun 22 11:55:23 2021 -0700
+
+    Revert "[cmake] [compiler-rt] Call llvm_setup_rpath() when adding shared libraries."
+    
+    This reverts commit 78fd93e0396a19cb89d4b874c7cc42255888df56 as
+    a follow up to D91099.
+
+diff --git a/compiler-rt/cmake/Modules/AddCompilerRT.cmake b/compiler-rt/cmake/Modules/AddCompilerRT.cmake
+index 1e9e7c58664b..e72df6f8666d 100644
+--- a/compiler-rt/cmake/Modules/AddCompilerRT.cmake
++++ b/compiler-rt/cmake/Modules/AddCompilerRT.cmake
+@@ -359,9 +359,6 @@ function(add_compiler_rt_runtime name type)
+       target_link_libraries(${libname} PRIVATE ${builtins_${libname}})
+     endif()
+     if(${type} STREQUAL "SHARED")
+-      if(COMMAND llvm_setup_rpath)
+-        llvm_setup_rpath(${libname})
+-      endif()
+       if(WIN32 AND NOT CYGWIN AND NOT MINGW)
+         set_target_properties(${libname} PROPERTIES IMPORT_PREFIX "")
+         set_target_properties(${libname} PROPERTIES IMPORT_SUFFIX ".lib")
diff --git a/sys-libs/compiler-rt/files/6455418d3d2a2de1a8251cc2ccf2e87b9ae3112d.patch b/sys-libs/compiler-rt/files/6455418d3d2a2de1a8251cc2ccf2e87b9ae3112d.patch
new file mode 100644
index 0000000..eb1e85f
--- /dev/null
+++ b/sys-libs/compiler-rt/files/6455418d3d2a2de1a8251cc2ccf2e87b9ae3112d.patch
@@ -0,0 +1,27 @@
+commit 6455418d3d2a2de1a8251cc2ccf2e87b9ae3112d
+Author: Stephen Hines <srhines@google.com>
+Date:   Fri Jun 11 02:07:59 2021 -0700
+
+    [compiler-rt] [builtins] [AArch64] Add missing AArch64 data synchronization barrier (dsb) to __clear_cache
+    
+    https://developer.arm.com/documentation/den0024/a/Caches/Cache-maintenance
+    covers how to properly clear caches on AArch64, and the builtin
+    implementation was missing a `dsb ish` after clearing the icache for the
+    selected range.
+    
+    Reviewed By: kristof.beyls
+    
+    Differential Revision: https://reviews.llvm.org/D104094
+
+diff --git a/compiler-rt/lib/builtins/clear_cache.c b/compiler-rt/lib/builtins/clear_cache.c
+index 5a443ddd4b03..0284cb699f74 100644
+--- a/compiler-rt/lib/builtins/clear_cache.c
++++ b/compiler-rt/lib/builtins/clear_cache.c
+@@ -126,6 +126,7 @@ void __clear_cache(void *start, void *end) {
+          addr += icache_line_size)
+       __asm __volatile("ic ivau, %0" ::"r"(addr));
+   }
++  __asm __volatile("dsb ish");
+   __asm __volatile("isb sy");
+ #elif defined(__powerpc64__)
+   const size_t line_size = 32;
diff --git a/sys-libs/compiler-rt/files/PATCHES.json b/sys-libs/compiler-rt/files/PATCHES.json
index 19e8067..6f8d5ff 100644
--- a/sys-libs/compiler-rt/files/PATCHES.json
+++ b/sys-libs/compiler-rt/files/PATCHES.json
@@ -43,5 +43,17 @@
         "rel_patch_path": "d7ec48d71bd67118e7996c45e9c7fb1b09d4f59a.patch",
         "start_version": 422132,
         "end_version": 426368
+    },
+    {
+        "comment": "Revert \"[cmake] [compiler-rt] Call llvm_setup_rpath() when adding shared libraries.\"",
+        "rel_patch_path": "21c008d5a5b1e0c2ec3c1659cff961f4b0ccea2c.patch",
+        "start_version": 428724,
+        "end_version": 430742
+    },
+    {
+        "comment": "[compiler-rt] [builtins] [AArch64] Add missing AArch64 data synchronization barrier (dsb) to __clear_cache",
+        "rel_patch_path": "6455418d3d2a2de1a8251cc2ccf2e87b9ae3112d.patch",
+        "start_version": 428724,
+        "end_version": 429795
     }
-]
\ No newline at end of file
+]
diff --git a/sys-libs/gcc-libs/gcc-libs-10.2.0-r1.ebuild b/sys-libs/gcc-libs/gcc-libs-10.2.0-r2.ebuild
similarity index 100%
rename from sys-libs/gcc-libs/gcc-libs-10.2.0-r1.ebuild
rename to sys-libs/gcc-libs/gcc-libs-10.2.0-r2.ebuild
diff --git a/sys-libs/gcc-libs/gcc-libs-10.2.0.ebuild b/sys-libs/gcc-libs/gcc-libs-10.2.0.ebuild
index 57d85f5..f2d92f3 100644
--- a/sys-libs/gcc-libs/gcc-libs-10.2.0.ebuild
+++ b/sys-libs/gcc-libs/gcc-libs-10.2.0.ebuild
@@ -13,7 +13,7 @@
 
 LICENSE="GPL-3 LGPL-3 FDL-1.2"
 KEYWORDS="*"
-IUSE="go hardened hardfp libatomic +thumb vtable_verify"
+IUSE="go hardened hardfp libatomic +thumb vtable_verify libunwind"
 REQUIRED_USE="go? ( libatomic )"
 
 : ${CTARGET:=${CHOST}}
@@ -206,6 +206,7 @@
 	# make this a configure option but hardcode the toolexeclibdir when
 	# they're being cross-compiled.
 	dolib.so "${D}"/usr/${CTARGET}/$(get_libdir)/lib*.so*
+	use libunwind && rm -f "${D}"/usr/$(get_libdir)/libgcc_s*
 	rm -rf "${D}"/usr/${CTARGET}
 }
 
diff --git a/sys-libs/glibc/files/glibc-locale-gen-omit-more-spam-when-in-quiet-mode.patch b/sys-libs/glibc/files/glibc-locale-gen-omit-more-spam-when-in-quiet-mode.patch
new file mode 100644
index 0000000..5f126a6
--- /dev/null
+++ b/sys-libs/glibc/files/glibc-locale-gen-omit-more-spam-when-in-quiet-mode.patch
@@ -0,0 +1,35 @@
+From 7e7ec15d2c96b8b13923b470b4f5f31a993ab756 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Mon, 27 Sep 2021 01:38:10 -0400
+Subject: [PATCH] omit more spam when in quiet mode
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ locale-gen | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/locale-gen b/locale-gen
+index 264cd23..d313c23 100755
+--- a/extra/locale/locale-gen
++++ b/extra/locale/locale-gen
+@@ -379,7 +379,7 @@ einfo "Generation complete"
+ if ${LOCALE_ARCHIVE} && [[ -z ${JUST_LIST} ]] ; then
+ 	# need to check that at least one locale has to be added
+ 	if [[ $(echo "${LOCALEDIR}"/*/) != "${LOCALEDIR}"'/*/' ]] ; then
+-		ebegin "Adding locales to archive"
++		[[ ${QUIET} -eq 0 ]] && ebegin "Adding locales to archive"
+ 		# The pattern ends with / on purpose: we don't care about files (like
+ 		# locale-archive) in the locale subdir, and we definitely don't want to
+ 		# delete them!
+@@ -416,7 +416,7 @@ if ${LOCALE_ARCHIVE} && [[ -z ${JUST_LIST} ]] ; then
+ 				exit ${ret}
+ 			)
+ 		done
+-		eend $ret
++		[[ ${QUIET} -eq 0 ]] && eend ${ret}
+ 	elif [[ ${QUIET} -eq 0 ]] ; then
+ 		einfo "No locales are to be added to the archive."
+ 	fi
+-- 
+2.33.0
+
diff --git a/sys-libs/glibc/files/glibc-locale-gen-skip-duplicate-locales-when-normalized.patch b/sys-libs/glibc/files/glibc-locale-gen-skip-duplicate-locales-when-normalized.patch
new file mode 100644
index 0000000..6b53d8b
--- /dev/null
+++ b/sys-libs/glibc/files/glibc-locale-gen-skip-duplicate-locales-when-normalized.patch
@@ -0,0 +1,78 @@
+From 78802b1270bf48bea2e39039877096c4867afbb3 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Mon, 27 Sep 2021 02:31:11 -0400
+Subject: skip duplicate locales when normalized
+
+If you try to generate "en_US.UTF-8 UTF-8" and "en_US.UTF8 UTF-8", we
+end up generating the locale twice even though it normalizes down to
+the same value (or, in the case of --update, we skip the 1st and then
+always generate the 2nd).  Keep track of all locales we've processed
+so we can dedupe as we go.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ locale-gen | 33 +++++++++++++++++++++------------
+ 1 file changed, 21 insertions(+), 12 deletions(-)
+
+diff --git a/locale-gen b/locale-gen
+index d313c23..d4417d8 100755
+--- a/extra/locale/locale-gen
++++ b/extra/locale/locale-gen
+@@ -192,9 +192,9 @@ if [[ -z ${locales_to_generate} ]] && [[ -e ${CONFIG} ]] ; then
+ 	fi
+ fi
+ 
+-# Transform the name in locales.gen to the name used when storing
+-# the locale data in /usr/lib/locale/ ... this normalize algo is
+-# taken out of the glibc localedef source code ...
++# Transform the name in locales.gen to the name used when storing the locale data in
++# /usr/lib/locale/.  This normalize algo is taken out of the glibc localedef source:
++# https://sourceware.org/git/?p=glibc.git;a=blob;f=locale/programs/localedef.c;hb=glibc-2.34#l562
+ normalize() {
+ 	if [[ $1 == *.* ]] ; then
+ 		local ret=$(echo ${1##*.} | tr '[[:upper:]]' '[[:lower:]]')
+@@ -316,6 +316,10 @@ JOB_IDX_S=0
+ JOB_IDX_E=0
+ cnt=0
+ lidx=0
++# Keep track of (normalized) locales generated in case the request has different inputs that
++# normalize down to the same value.  We trim $existing_locales as we go for later use which
++# prevents its direct use.
++generated_locales=" "
+ while [[ -n ${locales_to_generate[${lidx}]} ]] ; do
+ 	: $(( ++cnt ))
+ 	locale=${locales_to_generate[$((lidx++))]}
+@@ -334,16 +338,21 @@ while [[ -n ${locales_to_generate[${lidx}]} ]] ; do
+ 
+ 	disp=${locales_disp[$(( cnt - 1 ))]}
+ 
+-	if [[ -n ${UPDATE} ]] ; then
+-		normalized_locale=$(normalize ${locale})
+-		if [[ ${existing_locales} == *" ${normalized_locale} "* ]] ; then
+-			existing_locales=${existing_locales/ ${normalized_locale} / }
+-			if [[ ${QUIET} -eq 0 ]] ; then
+-				cnt_fmt=$(printf "%${#total}i" ${cnt})
+-				einfo " (${cnt_fmt}/${total}) Skipping ${disp}"
+-			fi
+-			continue
++	normalized_locale=$(normalize ${locale})
++	if [[ ${generated_locales} == *" ${normalized_locale} "* ]] ; then
++		already_generated="true"
++	else
++		already_generated="false"
++	fi
++	generated_locales+="${normalized_locale} "
++	if ${already_generated} || \
++	   [[ -n ${UPDATE} && ${existing_locales} == *" ${normalized_locale} "* ]] ; then
++		existing_locales=${existing_locales/ ${normalized_locale} / }
++		if [[ ${QUIET} -eq 0 ]] ; then
++			cnt_fmt=$(printf "%${#total}i" ${cnt})
++			einfo " (${cnt_fmt}/${total}) Skipping ${disp}"
+ 		fi
++		continue
+ 	fi
+ 
+ 	# If the locale is like 'en_US.UTF8', then we really want 'en_US'
+-- 
+cgit v1.2.3-18-g5258
+
diff --git a/sys-libs/glibc/files/local/glibc-2.32/0012-nptl-mitigate-failed-pthread_cond_signal-wakeup.patch b/sys-libs/glibc/files/local/glibc-2.32/0012-nptl-mitigate-failed-pthread_cond_signal-wakeup.patch
new file mode 100644
index 0000000..24c0e3cc
--- /dev/null
+++ b/sys-libs/glibc/files/local/glibc-2.32/0012-nptl-mitigate-failed-pthread_cond_signal-wakeup.patch
@@ -0,0 +1,46 @@
+From ce240a1124a5b8d09263a7fa853bf575ec0565c0 Mon Sep 17 00:00:00 2001
+From: Adrian Ratiu <adrian.ratiu@collabora.com>
+Date: Fri, 9 Jul 2021 11:49:23 +0300
+Subject: [PATCH] nptl: mitigate failed pthread_cond_signal wakeup
+
+This mitigation is applied until the bug reported at [1]
+gets a proper fix in glibc upstream. Work is on-going and
+the proposed fixes are more complex than this mitigation,
+so for now use it to avoid the deadlock because it safest.
+
+The mitigation is at location [2] in the above bug report
+and was also tested and deployed in Ubuntu starting with
+Bionic onward [3].
+
+[1] https://sourceware.org/bugzilla/show_bug.cgi?id=25847
+[2] https://sourceware.org/bugzilla/attachment.cgi?id=12484
+[3] https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1899800
+
+Signed-off-by: Adrian Ratiu <adrian.ratiu@collabora.com>
+---
+ nptl/pthread_cond_wait.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/nptl/pthread_cond_wait.c b/nptl/pthread_cond_wait.c
+index 85ddbc1011..28ef330ac2 100644
+--- a/nptl/pthread_cond_wait.c
++++ b/nptl/pthread_cond_wait.c
+@@ -608,6 +608,15 @@ __pthread_cond_wait_common (pthread_cond_t *cond, pthread_mutex_t *mutex,
+ 		     the signal from, which cause it to block using the
+ 		     futex).  */
+ 		  futex_wake (cond->__data.__g_signals + g, 1, private);
++
++		  /* We might be wrong about stealing, we got the signal
++		     from the an old g1, but ended up returning it to
++		     a different g1. We can't tell whether it is the case.
++		     If it is, we now caused another issue:
++		     now g_refs[g1] is one less than g_size[g1].
++		     The mitigation step is to broadcast g1 and g2, let every
++		     waiter wake up spuriosly. */
++		  __pthread_cond_broadcast(cond);
+ 		  break;
+ 		}
+ 	      /* TODO Back off.  */
+-- 
+2.32.0
+
diff --git a/sys-libs/glibc/files/local/glibc-2.32/0013-Deny-LD_PRELOAD-of-files-in-NOEXEC-mount.patch b/sys-libs/glibc/files/local/glibc-2.32/0013-Deny-LD_PRELOAD-of-files-in-NOEXEC-mount.patch
new file mode 100644
index 0000000..10f1c18
--- /dev/null
+++ b/sys-libs/glibc/files/local/glibc-2.32/0013-Deny-LD_PRELOAD-of-files-in-NOEXEC-mount.patch
@@ -0,0 +1,68 @@
+From 3620037c6316d2a715bdd1c745fccfa6ac5b991f Mon Sep 17 00:00:00 2001
+From: Jordan R Abrahams <ajordanr@google.com>
+Date: Wed, 19 May 2021 22:09:57 +0000
+Subject: [PATCH] Deny LD_PRELOAD of files in NOEXEC mount
+
+This commit hardens against a security bug in dl-load.c
+
+Previously, one could dynamically load any shared object files even if
+they resided on a NOEXEC mount partition. This introduces an exploit
+where an attacker may load shared objects. These shared objects may
+then usea ROP attack to conduct arbitrary execution, getting around
+the NOEXEC requirement.
+
+This fixes it by checking the file before reading if it lies in
+a NOEXEC mount via an fstatvfs call.
+---
+ elf/dl-load.c | 21 +++++++++++++++++++++
+ 1 file changed, 21 insertions(+)
+
+diff --git a/elf/dl-load.c b/elf/dl-load.c
+index e39980fb19..0d15c46e1d 100644
+--- a/elf/dl-load.c
++++ b/elf/dl-load.c
+@@ -29,6 +29,7 @@
+ #include <sys/mman.h>
+ #include <sys/param.h>
+ #include <sys/stat.h>
++#include <sys/statvfs.h>
+ #include <sys/types.h>
+ #include <gnu/lib-names.h>
+ 
+@@ -1541,6 +1542,18 @@ print_search_path (struct r_search_path_elem **list,
+     _dl_debug_printf_c ("\t\t(%s)\n", what);
+ }
+ 
++/* Check if a the passed in file descriptor points to file on an executable mount.  */
++static bool
++check_exec (int fd)
++{
++  struct statvfs buf;
++  int stated = fstatvfs (fd, &buf);
++  if (stated == 0)
++    return !(buf.f_flag & ST_NOEXEC);
++  /* Could not fstat the file.  */
++  return false;
++}
++
+ /* Open a file and verify it is an ELF file for this architecture.  We
+    ignore only ELF files for other architectures.  Non-ELF files and
+    ELF files with different header information cause fatal errors since
+@@ -1636,6 +1649,14 @@ open_verify (const char *name, int fd,
+       __set_errno (0);
+       fbp->len = 0;
+       assert (sizeof (fbp->buf) > sizeof (ElfW(Ehdr)));
++
++      /* Before we read in the file, check if the file is in an exec mount */
++      if (__glibc_unlikely (!check_exec(fd)))
++	{
++	  errstring = N_("file not located on exec mount");
++	  goto call_lose;
++	}
++
+       /* Read in the header.  */
+       do
+ 	{
+-- 
+2.32.0.288.g62a8d224e6-goog
+
diff --git a/sys-libs/glibc/files/local/glibc-2.32/0014-librt-fix-NULL-pointer-dereference-bug-28213.patch b/sys-libs/glibc/files/local/glibc-2.32/0014-librt-fix-NULL-pointer-dereference-bug-28213.patch
new file mode 100644
index 0000000..8062d0f
--- /dev/null
+++ b/sys-libs/glibc/files/local/glibc-2.32/0014-librt-fix-NULL-pointer-dereference-bug-28213.patch
@@ -0,0 +1,40 @@
+From 76dfec932475fa1a8751149520fa39bc4bbc9125 Mon Sep 17 00:00:00 2001
+From: Nikita Popov <npv1310@gmail.com>
+Date: Mon, 9 Aug 2021 20:17:34 +0530
+Subject: [PATCH] librt: fix NULL pointer dereference (bug 28213)
+
+Helper thread frees copied attribute on NOTIFY_REMOVED message
+received from the OS kernel.  Unfortunately, it fails to check whether
+copied attribute actually exists (data.attr != NULL).  This worked
+earlier because free() checks passed pointer before actually
+attempting to release corresponding memory.  But
+__pthread_attr_destroy assumes pointer is not NULL.
+
+So passing NULL pointer to __pthread_attr_destroy will result in
+segmentation fault.  This scenario is possible if
+notification->sigev_notify_attributes == NULL (which means default
+thread attributes should be used).
+
+Signed-off-by: Nikita Popov <npv1310@gmail.com>
+Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
+(cherry picked from commit b805aebd42364fe696e417808a700fdb9800c9e8)
+---
+ sysdeps/unix/sysv/linux/mq_notify.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sysdeps/unix/sysv/linux/mq_notify.c b/sysdeps/unix/sysv/linux/mq_notify.c
+index b5a903c3a2..2bb98172c8 100644
+--- a/sysdeps/unix/sysv/linux/mq_notify.c
++++ b/sysdeps/unix/sysv/linux/mq_notify.c
+@@ -132,7 +132,7 @@ helper_thread (void *arg)
+ 	       to wait until it is done with it.  */
+ 	    (void) __pthread_barrier_wait (&notify_barrier);
+ 	}
+-      else if (data.raw[NOTIFY_COOKIE_LEN - 1] == NOTIFY_REMOVED)
++      else if (data.raw[NOTIFY_COOKIE_LEN - 1] == NOTIFY_REMOVED && data.attr != NULL)
+ 	{
+ 	  /* The only state we keep is the copy of the thread attributes.  */
+ 	  pthread_attr_destroy (data.attr);
+-- 
+2.33.0.464.g1972c5931b-goog
+
diff --git a/sys-libs/glibc/files/local/glibc-2.32/0015-wordexp-handle-overflow-in-positional-parameter-number-bug-28011.patch b/sys-libs/glibc/files/local/glibc-2.32/0015-wordexp-handle-overflow-in-positional-parameter-number-bug-28011.patch
new file mode 100644
index 0000000..4ad5da6
--- /dev/null
+++ b/sys-libs/glibc/files/local/glibc-2.32/0015-wordexp-handle-overflow-in-positional-parameter-number-bug-28011.patch
@@ -0,0 +1,40 @@
+From 5adda61f62b77384718b4c0d8336ade8f2b4b35c Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@linux-m68k.org>
+Date: Fri, 25 Jun 2021 15:02:47 +0200
+Subject: [PATCH] wordexp: handle overflow in positional parameter number (bug
+ 28011)
+
+Use strtoul instead of atoi so that overflow can be detected.
+---
+ posix/wordexp-test.c | 1 +
+ posix/wordexp.c      | 2 +-
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/posix/wordexp-test.c b/posix/wordexp-test.c
+index f93a546d7e..9df02dbbb3 100644
+--- a/posix/wordexp-test.c
++++ b/posix/wordexp-test.c
+@@ -183,6 +183,7 @@ struct test_case_struct
+     { 0, NULL, "$var", 0, 0, { NULL, }, IFS },
+     { 0, NULL, "\"\\n\"", 0, 1, { "\\n", }, IFS },
+     { 0, NULL, "", 0, 0, { NULL, }, IFS },
++    { 0, NULL, "${1234567890123456789012}", 0, 0, { NULL, }, IFS },
+ 
+     /* Flags not already covered (testit() has special handling for these) */
+     { 0, NULL, "one two", WRDE_DOOFFS, 2, { "one", "two", }, IFS },
+diff --git a/posix/wordexp.c b/posix/wordexp.c
+index bcbe96e48d..1f3b09f721 100644
+--- a/posix/wordexp.c
++++ b/posix/wordexp.c
+@@ -1399,7 +1399,7 @@ envsubst:
+   /* Is it a numeric parameter? */
+   else if (isdigit (env[0]))
+     {
+-      int n = atoi (env);
++      unsigned long n = strtoul (env, NULL, 10);
+ 
+       if (n >= __libc_argc)
+ 	/* Substitute NULL. */
+-- 
+2.27.0
+
diff --git a/sys-libs/glibc/glibc-2.32-r14.ebuild b/sys-libs/glibc/glibc-2.32-r14.ebuild
deleted file mode 100644
index b25e2fe..0000000
--- a/sys-libs/glibc/glibc-2.32-r14.ebuild
+++ /dev/null
@@ -1,1551 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8,9} )
-
-inherit python-any-r1 prefix eutils toolchain-funcs flag-o-matic gnuconfig \
-	multilib systemd multiprocessing
-
-DESCRIPTION="GNU libc C library"
-HOMEPAGE="https://www.gnu.org/software/libc/"
-LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE"
-SLOT="2.2"
-
-EMULTILIB_PKG="true"
-
-# Gentoo patchset (ignored for live ebuilds)
-PATCH_VER=8
-PATCH_DEV=dilfridge
-
-if [[ ${PV} == 9999* ]]; then
-	inherit git-r3
-else
-	KEYWORDS="*"
-	SRC_URI="mirror://gnu/glibc/${P}.tar.xz"
-	SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz"
-	SRC_URI+=" riscv? ( https://dev.gentoo.org/~dilfridge/distfiles/backport-rv32.txz )"
-fi
-
-RELEASE_VER=${PV}
-
-GCC_BOOTSTRAP_VER=20201208
-
-LOCALE_GEN_VER=2.10
-
-SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz"
-SRC_URI+=" multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
-
-IUSE="audit caps cet compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib nscd profile selinux +ssp +static-libs static-pie suid systemtap test vanilla crosscompile_opts_headers-only"
-
-# Minimum kernel version that glibc requires
-MIN_KERN_VER="3.2.0"
-
-# Here's how the cross-compile logic breaks down ...
-#  CTARGET - machine that will target the binaries
-#  CHOST   - machine that will host the binaries
-#  CBUILD  - machine that will build the binaries
-# If CTARGET != CHOST, it means you want a libc for cross-compiling.
-# If CHOST != CBUILD, it means you want to cross-compile the libc.
-#  CBUILD = CHOST = CTARGET    - native build/install
-#  CBUILD != (CHOST = CTARGET) - cross-compile a native build
-#  (CBUILD = CHOST) != CTARGET - libc for cross-compiler
-#  CBUILD != CHOST != CTARGET  - cross-compile a libc for a cross-compiler
-# For install paths:
-#  CHOST = CTARGET  - install into /
-#  CHOST != CTARGET - install into /usr/CTARGET/
-#
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
-	if [[ ${CATEGORY} == cross-* ]] ; then
-		export CTARGET=${CATEGORY#cross-}
-	fi
-fi
-
-# We need a new-enough binutils/gcc to match upstream baseline.
-# Also we need to make sure our binutils/gcc supports TLS,
-# and that gcc already contains the hardened patches.
-# Lastly, let's avoid some openssh nastiness, bug 708224, as
-# convenience to our users.
-
-# gzip, grep, awk are needed by locale-gen, bug 740750
-
-BDEPEND="
-	${PYTHON_DEPS}
-	>=app-misc/pax-utils-0.1.10
-	sys-devel/bison
-	doc? ( sys-apps/texinfo )
-	!compile-locales? (
-		app-arch/gzip
-		sys-apps/grep
-		virtual/awk
-	)
-"
-COMMON_DEPEND="
-	gd? ( media-libs/gd:2= )
-	nscd? ( selinux? (
-		audit? ( sys-process/audit )
-		caps? ( sys-libs/libcap )
-	) )
-	suid? ( caps? ( sys-libs/libcap ) )
-	selinux? ( sys-libs/libselinux )
-	systemtap? ( dev-util/systemtap )
-	!<net-misc/openssh-8.1_p1-r2
-"
-DEPEND="${COMMON_DEPEND}
-	compile-locales? (
-		app-arch/gzip
-		sys-apps/grep
-		virtual/awk
-	)
-	test? ( >=net-dns/libidn2-2.3.0 )
-"
-PDEPEND="${COMMON_DEPEND}
-	app-arch/gzip
-	sys-apps/grep
-	virtual/awk
-	sys-apps/gentoo-functions
-"
-
-RESTRICT="!test? ( test )"
-
-if [[ ${CATEGORY} == cross-* ]] ; then
-	BDEPEND+=" !headers-only? (
-		!crosscompile_opts_headers-only? (
-			>=${CATEGORY}/binutils-2.24
-			>=${CATEGORY}/gcc-4.9
-			)
-	)"
-	[[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers"
-else
-	BDEPEND+="
-		>=sys-devel/binutils-2.24
-		>=sys-devel/gcc-6
-	"
-	DEPEND+=" virtual/os-headers "
-	RDEPEND+="
-		>=net-dns/libidn2-2.3.0
-		vanilla? ( !sys-libs/timezone-data )
-	"
-	PDEPEND+=" !vanilla? ( sys-libs/timezone-data )"
-fi
-
-# Ignore tests allowlisted below
-GENTOO_GLIBC_XFAIL_TESTS="${GENTOO_GLIBC_XFAIL_TESTS:-yes}"
-
-# The following tests fail due to the Gentoo build system and are thus
-# executed but ignored:
-XFAIL_TEST_LIST=(
-	# 9) Failures of unknown origin
-	tst-latepthread
-
-	# buggy test, assumes /dev/ and /dev/null on a single filesystem
-	# 'mount --bind /dev/null /chroot/dev/null' breaks it.
-	# https://sourceware.org/PR25909
-	tst-support_descriptors
-
-	# Flaky test, known to fail occasionally:
-	# https://sourceware.org/PR19329
-	# https://bugs.gentoo.org/719674#c12
-	tst-stack4
-)
-
-#
-# Small helper functions
-#
-
-is_crosscompile() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-
-just_headers() {
-	is_crosscompile && ( use headers-only || use crosscompile_opts_headers-only )
-}
-
-alt_prefix() {
-	is_crosscompile && echo /usr/${CTARGET}
-}
-
-# This prefix is applicable to CHOST when building against this
-# glibc. It is baked into the library at configure time.
-host_eprefix() {
-	is_crosscompile || echo "${EPREFIX}"
-}
-
-# This prefix is applicable to CBUILD when building against this
-# glibc. It determines the destination path at install time.
-build_eprefix() {
-	is_crosscompile && echo "${EPREFIX}"
-}
-
-# We need to be able to set alternative headers for compiling for non-native
-# platform. Will also become useful for testing kernel-headers without screwing
-# up the whole system.
-alt_headers() {
-	echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
-}
-
-alt_build_headers() {
-	if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
-		ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)"
-		if tc-is-cross-compiler ; then
-			ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
-			if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
-				local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h')
-				ALT_BUILD_HEADERS=${header_path%/linux/version.h}
-			fi
-		fi
-	fi
-	echo "${ALT_BUILD_HEADERS}"
-}
-
-alt_libdir() {
-	echo $(alt_prefix)/$(get_libdir)
-}
-alt_usrlibdir() {
-	echo $(alt_prefix)/usr/$(get_libdir)
-}
-
-builddir() {
-	echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1"
-}
-
-do_compile_test() {
-	local ret save_cflags=${CFLAGS}
-	CFLAGS+=" $1"
-	shift
-
-	pushd "${T}" >/dev/null
-
-	rm -f glibc-test*
-	printf '%b' "$*" > glibc-test.c
-
-	# Most of the time CC is already set, but not in early sanity checks.
-	nonfatal emake glibc-test CC="${CC-$(tc-getCC ${CTARGET})}"
-	ret=$?
-
-	popd >/dev/null
-
-	CFLAGS=${save_cflags}
-	return ${ret}
-}
-
-do_run_test() {
-	local ret
-
-	if [[ ${MERGE_TYPE} == "binary" ]] ; then
-		# ignore build failures when installing a binary package #324685
-		do_compile_test "" "$@" 2>/dev/null || return 0
-	else
-		if ! do_compile_test "" "$@" ; then
-			ewarn "Simple build failed ... assuming this is desired #324685"
-			return 0
-		fi
-	fi
-
-	pushd "${T}" >/dev/null
-
-	./glibc-test
-	ret=$?
-	rm -f glibc-test*
-
-	popd >/dev/null
-
-	return ${ret}
-}
-
-setup_target_flags() {
-	# This largely mucks with compiler flags.  None of which should matter
-	# when building up just the headers.
-	just_headers && return 0
-
-	# Needed as workaround to fix:
-	# http://code.google.com/p/chromium-os/issues/detail?id=22373
-	# Can be removed when we emerge glibc to the target:
-	# http://code.google.com/p/chromium-os/issues/detail?id=20792
-	append-cflags "-ggdb"
-
-	# ChromiumOS: Need to unset the SYSROOT value so that the
-	# compiler uses the default sysroot when building glibc. This
-	# is because the glibc startup objects are needed to configure
-	# glibc. We don't want to bootstrap libc again.
-	export SYSROOT=""
-
-	case $(tc-arch) in
-		x86)
-			# -march needed for #185404 #199334
-			# TODO: When creating the first glibc cross-compile, this test will
-			# always fail as it does a full link which in turn requires glibc.
-			# Probably also applies when changing multilib profile settings (e.g.
-			# enabling x86 when the profile was amd64-only previously).
-			# We could change main to _start and pass -nostdlib here so that we
-			# only test the gcc code compilation.  Or we could do a compile and
-			# then look for the symbol via scanelf.
-			if ! do_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then
-				local t=${CTARGET_OPT:-${CTARGET}}
-				t=${t%%-*}
-				filter-flags '-march=*'
-				export CFLAGS="-march=${t} ${CFLAGS}"
-				einfo "Auto adding -march=${t} to CFLAGS #185404"
-			fi
-		;;
-		amd64)
-			# -march needed for #185404 #199334
-			# TODO: See cross-compile issues listed above for x86.
-			[[ ${ABI} == x86 ]] &&
-			if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then
-				local t=${CTARGET_OPT:-${CTARGET}}
-				t=${t%%-*}
-				# Normally the target is x86_64-xxx, so turn that into the -march that
-				# gcc actually accepts. #528708
-				[[ ${t} == "x86_64" ]] && t="x86-64"
-				filter-flags '-march=*'
-				# ugly, ugly, ugly.  ugly.
-				CFLAGS_x86=$(CFLAGS=${CFLAGS_x86} filter-flags '-march=*'; echo "${CFLAGS}")
-				export CFLAGS_x86="${CFLAGS_x86} -march=${t}"
-				einfo "Auto adding -march=${t} to CFLAGS_x86 #185404 (ABI=${ABI})"
-			fi
-		;;
-		mips)
-			# The mips abi cannot support the GNU style hashes. #233233
-			filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both
-		;;
-		ppc|ppc64)
-			# Many arch-specific implementations do not work on ppc with
-			# cache-block not equal to 128 bytes. This breaks memset:
-			#   https://sourceware.org/PR26522
-			#   https://bugs.gentoo.org/737996
-			# Use default -mcpu=. For ppc it means non-multiarch setup.
-			filter-flags '-mcpu=*'
-		;;
-		sparc)
-			# Both sparc and sparc64 can use -fcall-used-g6.  -g7 is bad, though.
-			filter-flags "-fcall-used-g7"
-			append-flags "-fcall-used-g6"
-
-			local cpu
-			case ${CTARGET} in
-			sparc64-*)
-				cpu="sparc64"
-				case $(get-flag mcpu) in
-				v9)
-					# We need to force at least v9a because the base build doesn't
-					# work with just v9.
-					# https://sourceware.org/bugzilla/show_bug.cgi?id=19477
-					append-flags "-Wa,-xarch=v9a"
-					;;
-				esac
-				;;
-			sparc-*)
-				case $(get-flag mcpu) in
-				v8|supersparc|hypersparc|leon|leon3)
-					cpu="sparcv8"
-					;;
-				*)
-					cpu="sparcv9"
-					;;
-				esac
-			;;
-			esac
-			[[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}"
-		;;
-	esac
-}
-
-setup_flags() {
-	# Glibc controls its own optimization settings, so this would be a nop
-	# if we were to run it. Leave it here anyway as a grep-friendly marker.
-	# cros_optimize_package_for_speed
-
-	# Make sure host make.conf doesn't pollute us
-	if is_crosscompile || tc-is-cross-compiler ; then
-		CHOST=${CTARGET} strip-unsupported-flags
-	fi
-
-	# Store our CFLAGS because it's changed depending on which CTARGET
-	# we are building when pulling glibc on a multilib profile
-	CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}}
-	CFLAGS=${CFLAGS_BASE}
-	CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}}
-	CXXFLAGS=${CXXFLAGS_BASE}
-	ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}}
-	ASFLAGS=${ASFLAGS_BASE}
-
-	# Allow users to explicitly avoid flag sanitization via
-	# USE=custom-cflags.
-	if ! use custom-cflags; then
-		# Over-zealous CFLAGS can often cause problems.  What may work for one
-		# person may not work for another.  To avoid a large influx of bugs
-		# relating to failed builds, we strip most CFLAGS out to ensure as few
-		# problems as possible.
-		strip-flags
-		# Lock glibc at -O2; we want to be conservative here.
-		filter-flags '-O?'
-		append-flags -O2
-	fi
-	strip-unsupported-flags
-	filter-flags -m32 -m64 '-mabi=*'
-
-	# glibc aborts if rpath is set by LDFLAGS
-	filter-ldflags '-Wl,-rpath=*'
-
-	# #492892
-	filter-flags -frecord-gcc-switches
-
-	unset CBUILD_OPT CTARGET_OPT
-	if use multilib ; then
-		CTARGET_OPT=$(get_abi_CTARGET)
-		[[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST)
-	fi
-
-	setup_target_flags
-
-	if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then
-		CBUILD_OPT=${CTARGET_OPT}
-	fi
-
-	# glibc's headers disallow -O0 and fail at build time:
-	#  include/libc-symbols.h:75:3: #error "glibc cannot be compiled without optimization"
-	replace-flags -O0 -O1
-
-	filter-flags '-fstack-protector*'
-}
-
-want_tls() {
-	# Archs that can use TLS (Thread Local Storage)
-	case $(tc-arch) in
-		x86)
-			# requires i486 or better #106556
-			[[ ${CTARGET} == i[4567]86* ]] && return 0
-			return 1
-		;;
-	esac
-	return 0
-}
-
-want__thread() {
-	want_tls || return 1
-
-	# For some reason --with-tls --with__thread is causing segfaults on sparc32.
-	[[ ${PROFILE_ARCH} == "sparc" ]] && return 1
-
-	[[ -n ${WANT__THREAD} ]] && return ${WANT__THREAD}
-
-	# only test gcc -- can't test linking yet
-	tc-has-tls -c ${CTARGET}
-	WANT__THREAD=$?
-
-	return ${WANT__THREAD}
-}
-
-use_multiarch() {
-	# Allow user to disable runtime arch detection in multilib.
-	use multiarch || return 1
-	# Make sure binutils is new enough to support indirect functions,
-	# #336792. This funky sed supports gold and bfd linkers.
-	local bver nver
-	bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}')
-	case $(tc-arch ${CTARGET}) in
-	amd64|x86) nver="2.20" ;;
-	arm)       nver="2.22" ;;
-	hppa)      nver="2.23" ;;
-	ppc|ppc64) nver="2.20" ;;
-	# ifunc support was added in 2.23, but glibc also needs
-	# machinemode which is in 2.24.
-	s390)      nver="2.24" ;;
-	sparc)     nver="2.21" ;;
-	*)         return 1 ;;
-	esac
-	ver_test ${bver} -ge ${nver}
-}
-
-# Setup toolchain variables that had historically been defined in the
-# profiles for these archs.
-setup_env() {
-	# silly users
-	unset LD_RUN_PATH
-	unset LD_ASSUME_KERNEL
-
-	if is_crosscompile || tc-is-cross-compiler ; then
-		multilib_env ${CTARGET_OPT:-${CTARGET}}
-
-		if ! use multilib ; then
-			MULTILIB_ABIS=${DEFAULT_ABI}
-		else
-			MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}}
-		fi
-
-		# If the user has CFLAGS_<CTARGET> in their make.conf, use that,
-		# and fall back on CFLAGS.
-		local VAR=CFLAGS_${CTARGET//[-.]/_}
-		CFLAGS=${!VAR-${CFLAGS}}
-		einfo " $(printf '%15s' 'Manual CFLAGS:')   ${CFLAGS}"
-	fi
-
-	setup_flags
-
-	export ABI=${ABI:-${DEFAULT_ABI:-default}}
-
-	if just_headers ; then
-		# Avoid mixing host's CC and target's CFLAGS_${ABI}:
-		# At this bootstrap stage we have only binutils for
-		# target but not compiler yet.
-		einfo "Skip CC ABI injection. We can't use (cross-)compiler yet."
-		return 0
-	fi
-	local VAR=CFLAGS_${ABI}
-	# We need to export CFLAGS with abi information in them because glibc's
-	# configure script checks CFLAGS for some targets (like mips).  Keep
-	# around the original clean value to avoid appending multiple ABIs on
-	# top of each other.
-
-	# For ChromiumOS, the default compiler is clang, we need to set it to gcc.
-	: ${__GLIBC_CC:=$(tc-getCC ${CTARGET})}
-	export __GLIBC_CC CC="${__GLIBC_CC}"
-	cros_use_gcc
-	export CC="${CC} ${!VAR}"
-	einfo " $(printf '%15s' 'Manual CC:')   ${CC}"
-}
-
-foreach_abi() {
-	# For ChromiumOS, we need to unset __GLIBC_CC CC here. Otherwise
-	# we could not run sudo emerge sys-libs/glibc inside chroot.
-	unset __GLIBC_CC CC
-	setup_env
-
-	local ret=0
-	local abilist=""
-	if use multilib ; then
-		abilist=$(get_install_abis)
-	else
-		abilist=${DEFAULT_ABI}
-	fi
-	local -x ABI
-	for ABI in ${abilist:-default} ; do
-		setup_env
-		einfo "Running $1 for ABI ${ABI}"
-		$1
-		: $(( ret |= $? ))
-	done
-	return ${ret}
-}
-
-glibc_banner() {
-	local b="Gentoo ${PVR}"
-	[[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}"
-	echo "${b}"
-}
-
-# The following Kernel version handling functions are mostly copied from portage
-# source. It's better not to use linux-info.eclass here since a) it adds too
-# much magic, see bug 326693 for some of the arguments, and b) some of the
-# functions are just not provided.
-
-g_get_running_KV() {
-	uname -r
-	return $?
-}
-
-g_KV_major() {
-	[[ -z $1 ]] && return 1
-	local KV=$@
-	echo "${KV%%.*}"
-}
-
-g_KV_minor() {
-	[[ -z $1 ]] && return 1
-	local KV=$@
-	KV=${KV#*.}
-	echo "${KV%%.*}"
-}
-
-g_KV_micro() {
-	[[ -z $1 ]] && return 1
-	local KV=$@
-	KV=${KV#*.*.}
-	echo "${KV%%[^[:digit:]]*}"
-}
-
-g_KV_to_int() {
-	[[ -z $1 ]] && return 1
-	local KV_MAJOR=$(g_KV_major "$1")
-	local KV_MINOR=$(g_KV_minor "$1")
-	local KV_MICRO=$(g_KV_micro "$1")
-	local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO ))
-
-	# We make version 2.2.0 the minimum version we will handle as
-	# a sanity check ... if its less, we fail ...
-	if [[ ${KV_int} -ge 131584 ]] ; then
-		echo "${KV_int}"
-		return 0
-	fi
-	return 1
-}
-
-g_int_to_KV() {
-	local version=$1 major minor micro
-	major=$((version / 65536))
-	minor=$(((version % 65536) / 256))
-	micro=$((version % 256))
-	echo ${major}.${minor}.${micro}
-}
-
-eend_KV() {
-	[[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]]
-	eend $?
-}
-
-get_kheader_version() {
-	printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
-	$(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \
-	tail -n 1
-}
-
-# We collect all sanity checks here. Consistency is not guranteed between
-# pkg_ and src_ phases, so we call this function both in pkg_pretend and in
-# src_unpack.
-sanity_prechecks() {
-	# CrOS makes sure these checks all pass.
-	return
-
-	# Prevent native builds from downgrading
-	if [[ ${MERGE_TYPE} != "buildonly" ]] && \
-		[[ -z ${ROOT} ]] && \
-		[[ ${CBUILD} == ${CHOST} ]] && \
-		[[ ${CHOST} == ${CTARGET} ]] ; then
-
-		# The high rev # is to allow people to downgrade between -r#
-		# versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2
-		# should be fine. Hopefully we never actually use a r# this
-		# high.
-		if has_version ">${CATEGORY}/${P}-r10000" ; then
-			eerror "Sanity check to keep you from breaking your system:"
-			eerror " Downgrading glibc is not supported and a sure way to destruction."
-			[[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system."
-		fi
-
-		if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then
-			eerror "Your old kernel is broken. You need to update it to a newer"
-			eerror "version as syscall(<bignum>) will break. See bug 279260."
-			die "Old and broken kernel."
-		fi
-	fi
-
-	# Users have had a chance to phase themselves, time to give em the boot
-	if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then
-		eerror "You still haven't deleted ${EROOT}/etc/locales.build."
-		eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher."
-		die "Lazy upgrader detected"
-	fi
-
-	if [[ ${CTARGET} == i386-* ]] ; then
-		eerror "i386 CHOSTs are no longer supported."
-		eerror "Chances are you don't actually want/need i386."
-		eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml"
-		die "Please fix your CHOST"
-	fi
-
-	if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then
-		ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS."
-		ewarn "This will result in a 50% performance penalty when running with a 32bit"
-		ewarn "hypervisor, which is probably not what you want."
-	fi
-
-	# Check for sanity of /etc/nsswitch.conf
-	if [[ -e ${EROOT}/etc/nsswitch.conf ]] ; then
-		local entry
-		for entry in passwd group shadow; do
-			if ! egrep -q "^[ \t]*${entry}:.*files" "${EROOT}"/etc/nsswitch.conf; then
-				eerror "Your ${EROOT}/etc/nsswitch.conf is out of date."
-				eerror "Please make sure you have 'files' entries for"
-				eerror "'passwd:', 'group:' and 'shadow:' databases."
-				eerror "For more details see:"
-				eerror "  https://wiki.gentoo.org/wiki/Project:Toolchain/nsswitch.conf_in_glibc-2.26"
-				die "nsswitch.conf has no 'files' provider in '${entry}'."
-			fi
-		done
-	fi
-
-	# ABI-specific checks follow here. Hey, we have a lot more specific conditions that
-	# we test for...
-	if ! is_crosscompile ; then
-		if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then
-			ebegin "Checking that IA32 emulation is enabled in the running kernel"
-			echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c"
-			local STAT
-			if "${CC-${CHOST}-gcc}" ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then
-				"${T}/check-ia32-emulation.elf32"
-				STAT=$?
-			else
-				# Don't fail here to allow single->multi ABI switch
-				# or recover from breakage like bug #646424
-				ewarn "Failed to compile the ABI test. Broken host glibc?"
-				STAT=0
-			fi
-			rm -f "${T}/check-ia32-emulation.elf32"
-			eend $STAT
-			[[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc."
-		fi
-
-	fi
-
-	# When we actually have to compile something...
-	if ! just_headers ; then
-		ebegin "Checking gcc for __thread support"
-		if ! eend $(want__thread ; echo $?) ; then
-			echo
-			eerror "Could not find a gcc that supports the __thread directive!"
-			eerror "Please update your binutils/gcc and try again."
-			die "No __thread support in gcc!"
-		fi
-
-		if [[ ${CTARGET} == *-linux* ]] ; then
-			local run_kv build_kv want_kv
-
-			run_kv=$(g_get_running_KV)
-			build_kv=$(g_int_to_KV $(get_kheader_version))
-			want_kv=${MIN_KERN_VER}
-
-			if ! is_crosscompile && ! tc-is-cross-compiler ; then
-				# Building fails on an non-supporting kernel
-				ebegin "Checking running kernel version (${run_kv} >= ${want_kv})"
-				if ! eend_KV ${run_kv} ${want_kv} ; then
-					echo
-					eerror "You need a kernel of at least ${want_kv}!"
-					die "Kernel version too low!"
-				fi
-			fi
-
-			ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})"
-			if ! eend_KV ${build_kv} ${want_kv} ; then
-				echo
-				eerror "You need linux-headers of at least ${want_kv}!"
-				die "linux-headers version too low!"
-			fi
-		fi
-	fi
-}
-
-#
-# the phases
-#
-
-# pkg_pretend
-
-# CrOS doesn't care about these checks.
-disabled_pkg_pretend() {
-	# All the checks...
-	einfo "Checking general environment sanity."
-	sanity_prechecks
-}
-
-pkg_setup() {
-	# see bug 682570
-	[[ -z ${BOOTSTRAP_RAP} ]] && python-any-r1_pkg_setup
-}
-
-# src_unpack
-
-src_unpack() {
-	# Consistency is not guaranteed between pkg_ and src_ ...
-	sanity_prechecks
-
-	use multilib && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz
-
-	setup_env
-
-	if [[ ${PV} == 9999* ]] ; then
-		EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/glibc-patches.git"
-		EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git
-		git-r3_src_unpack
-		mv patches-git/9999 patches || die
-
-		EGIT_REPO_URI="https://sourceware.org/git/glibc.git"
-		EGIT_CHECKOUT_DIR=${S}
-		git-r3_src_unpack
-	else
-		unpack ${P}.tar.xz
-
-		cd "${WORKDIR}" || die
-		unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz
-	fi
-
-	cd "${WORKDIR}" || die
-	unpack locale-gen-${LOCALE_GEN_VER}.tar.gz
-	use riscv && unpack backport-rv32.txz
-}
-
-src_prepare() {
-	local patchsetname
-	if ! use vanilla ; then
-		if [[ ${PV} == 9999* ]] ; then
-			patchsetname="from git master"
-		else
-			patchsetname="${RELEASE_VER}-${PATCH_VER}"
-		fi
-		elog "Applying Gentoo Glibc Patchset ${RELEASE_VER}"
-		EPATCH_SUFFIX="patch" EPATCH_FORCE="yes" eapply "${WORKDIR}"/patches
-		einfo "Done."
-
-		if use riscv ; then
-			elog "Adding rv32 backport patchset for glibc-2.32 (experimental)"
-			eapply "${WORKDIR}"/backport-rv32
-			einfo "Done."
-		fi
-	fi
-	EPATCH_SUFFIX="patch" EPATCH_FORCE="yes" eapply "${FILESDIR}"/local/${PN}-${PV}
-
-	default
-
-	gnuconfig_update
-
-	cd "${WORKDIR}"
-	find . -name configure -exec touch {} +
-
-	# move the external locale-gen to its old place
-	mkdir extra || die
-	mv locale-gen-${LOCALE_GEN_VER} extra/locale || die
-	EPATCH_FORCE="yes" eapply "${FILESDIR}"/glibc-locale-gen-omit-spam-when-in-quiet-mode.patch
-
-	eprefixify extra/locale/locale-gen
-
-	# Fix permissions on some of the scripts.
-	chmod u+x "${S}"/scripts/*.sh
-
-	cd "${S}"
-}
-
-glibc_do_configure() {
-	# Glibc does not work with gold (for various reasons) #269274.
-	tc-ld-disable-gold
-
-	# CXX isnt handled by the multilib system, so if we dont unset here
-	# we accumulate crap across abis
-	unset CXX
-
-	einfo "Configuring glibc for nptl"
-
-	if use doc ; then
-		export MAKEINFO=makeinfo
-	else
-		export MAKEINFO=/dev/null
-	fi
-
-	local v
-	for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM READELF; do
-		einfo " $(printf '%15s' ${v}:)   ${!v}"
-	done
-
-	# CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760
-	# To build .S (assembly) files with the same ABI-specific flags
-	# upstream currently recommends adding CFLAGS to CC/CXX:
-	#    https://sourceware.org/PR23273
-	# Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS
-	# and breaks multiarch support. See 659030#c3 for an example.
-	# The glibc configure script doesn't properly use LDFLAGS all the time.
-	export CC="$(tc-getCC ${CTARGET})"
-	export CXX="$(tc-getCXX ${CTARGET})"
-	cros_use_gcc
-	export CC="${CC} ${CFLAGS} ${LDFLAGS}"
-	export CXX="${CXX} $(get_abi_CFLAGS) ${CFLAGS}"
-	einfo " $(printf '%15s' 'Manual CC:')   ${CC}"
-
-	if is_crosscompile; then
-		# Assume worst-case bootstrap: glibc is buil first time
-		# when ${CTARGET}-g++ is not available yet. We avoid
-		# building auxiliary programs that require C++: bug #683074
-		# It should not affect final result.
-		export libc_cv_cxx_link_ok=no
-	fi
-	einfo " $(printf '%15s' 'Manual CXX:')   ${CXX}"
-
-	# Always use tuple-prefixed toolchain. For non-native ABI glibc's configure
-	# can't detect them automatically due to ${CHOST} mismatch and fallbacks
-	# to unprefixed tools. Similar to multilib.eclass:multilib_toolchain_setup().
-	export NM="$(tc-getNM ${CTARGET})"
-	export READELF="$(tc-getREADELF ${CTARGET})"
-	einfo " $(printf '%15s' 'Manual NM:')   ${NM}"
-	einfo " $(printf '%15s' 'Manual READELF:')   ${READELF}"
-
-	echo
-
-	local myconf=()
-
-	case ${CTARGET} in
-		m68k*)
-			# setjmp() is not compatible with stack protection:
-			# https://sourceware.org/PR24202
-			myconf+=( --enable-stack-protector=no )
-			;;
-		powerpc-*)
-			# Currently gcc on powerpc32 generates invalid code for
-			# __builtin_return_address(0) calls. Normally programs
-			# don't do that but malloc hooks in glibc do:
-			# https://gcc.gnu.org/PR81996
-			# https://bugs.gentoo.org/629054
-			myconf+=( --enable-stack-protector=no )
-			;;
-		*)
-			# Use '=strong' instead of '=all' to protect only functions
-			# worth protecting from stack smashes.
-			# '=all' is also known to have a problem in IFUNC resolution
-			# tests: https://sourceware.org/PR25680, bug #712356.
-			myconf+=( --enable-stack-protector=strong )
-			;;
-	esac
-	myconf+=( --enable-stackguard-randomization )
-
-	# Keep an allowlist of targets supporing IFUNC. glibc's ./configure
-	# is not robust enough to detect proper support:
-	#    https://bugs.gentoo.org/641216
-	#    https://sourceware.org/PR22634#c0
-	case $(tc-arch ${CTARGET}) in
-		# Keep an allowlist of targets where autodetection mostly works.
-		amd64|x86|sparc|ppc|ppc64|arm|arm64|s390) ;;
-		# Denylist everywhere else
-		*) myconf+=( libc_cv_ld_gnu_indirect_function=no ) ;;
-	esac
-
-	# Enable Intel Control-flow Enforcement Technology on amd64 if requested
-	case ${CTARGET} in
-		x86_64-*) myconf+=( $(use_enable cet) ) ;;
-		*) ;;
-	esac
-
-	[[ $(tc-is-softfloat) == "yes" ]] && myconf+=( --without-fp )
-
-	myconf+=( --enable-kernel=${MIN_KERN_VER} )
-
-	# Since SELinux support is only required for nscd, only enable it if:
-	# 1. USE selinux
-	# 2. only for the primary ABI on multilib systems
-	# 3. Not a crosscompile
-	if ! is_crosscompile && use selinux ; then
-		if use multilib ; then
-			if is_final_abi ; then
-				myconf+=( --with-selinux )
-			else
-				myconf+=( --without-selinux )
-			fi
-		else
-			myconf+=( --with-selinux )
-		fi
-	else
-		myconf+=( --without-selinux )
-	fi
-
-	# Force a few tests where we always know the answer but
-	# configure is incapable of finding it.
-	if is_crosscompile ; then
-		export \
-			libc_cv_c_cleanup=yes \
-			libc_cv_forced_unwind=yes
-	fi
-
-	myconf+=(
-		--without-cvs
-		--disable-werror
-		--enable-bind-now
-		--build=${CBUILD_OPT:-${CBUILD}}
-		--host=${CTARGET_OPT:-${CTARGET}}
-		$(use_enable profile)
-		$(use_with gd)
-		--with-headers=$(build_eprefix)$(alt_build_headers)
-		--prefix="$(host_eprefix)/usr"
-		--sysconfdir="$(host_eprefix)/etc"
-		--localstatedir="$(host_eprefix)/var"
-		--libdir='$(prefix)'/$(get_libdir)
-		--mandir='$(prefix)'/share/man
-		--infodir='$(prefix)'/share/info
-		--libexecdir='$(libdir)'/misc/glibc
-		--with-bugurl=https://bugs.gentoo.org/
-		--with-pkgversion="$(glibc_banner)"
-		$(use_enable crypt)
-		$(use_multiarch || echo --disable-multi-arch)
-		$(use_enable static-pie)
-		$(use_enable systemtap)
-		$(use_enable nscd)
-
-		# locale data is arch-independent
-		# https://bugs.gentoo.org/753740
-		libc_cv_complocaledir='${exec_prefix}/lib/locale'
-
-		${EXTRA_ECONF}
-	)
-
-	# We rely on sys-libs/timezone-data for timezone tools normally.
-	myconf+=( $(use_enable vanilla timezone-tools) )
-
-	# These libs don't have configure flags.
-	ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no)
-	ac_cv_lib_cap_cap_init=$(usex caps || echo no)
-
-	# There is no configure option for this and we need to export it
-	# since the glibc build will re-run configure on itself
-	export libc_cv_rootsbindir="$(host_eprefix)/sbin"
-	export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)"
-
-	# We take care of patching our binutils to use both hash styles,
-	# and many people like to force gnu hash style only, so disable
-	# this overriding check.  #347761
-	export libc_cv_hashstyle=no
-
-	local builddir=$(builddir nptl)
-	mkdir -p "${builddir}"
-	cd "${builddir}"
-	set -- "${S}"/configure "${myconf[@]}"
-	echo "$@"
-	"$@" || die "failed to configure glibc"
-
-	# ia64 static cross-compilers are a pita in so much that they
-	# can't produce static ELFs (as the libgcc.a is broken).  so
-	# disable building of the programs for those targets if it
-	# doesn't work.
-	# XXX: We could turn this into a compiler test, but ia64 is
-	# the only one that matters, so this should be fine for now.
-	if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then
-		sed -i '1i+link-static = touch $@' config.make
-	fi
-
-	# If we're trying to migrate between ABI sets, we need
-	# to lie and use a local copy of gcc.  Like if the system
-	# is built with MULTILIB_ABIS="amd64 x86" but we want to
-	# add x32 to it, gcc/glibc don't yet support x32.
-	#
-	if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib ; then
-		echo 'main(){}' > "${T}"/test.c
-		if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then
-			sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die
-		fi
-	fi
-}
-
-glibc_headers_configure() {
-	export ABI=default
-
-	cros_use_gcc
-
-	local builddir=$(builddir "headers")
-	mkdir -p "${builddir}"
-	cd "${builddir}"
-
-	# if we don't have a compiler yet, we can't really test it now ...
-	# hopefully they don't affect header generation, so let's hope for
-	# the best here ...
-	local v vars=(
-		ac_cv_header_cpuid_h=yes
-		libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes
-		libc_cv_asm_cfi_directives=yes
-		libc_cv_broken_visibility_attribute=no
-		libc_cv_c_cleanup=yes
-		libc_cv_compiler_powerpc64le_binary128_ok=yes
-		libc_cv_forced_unwind=yes
-		libc_cv_gcc___thread=yes
-		libc_cv_mlong_double_128=yes
-		libc_cv_mlong_double_128ibm=yes
-		libc_cv_ppc_machine=yes
-		libc_cv_ppc_rel16=yes
-		libc_cv_predef_fortify_source=no
-		libc_cv_target_power8_ok=yes
-		libc_cv_visibility_attribute=yes
-		libc_cv_z_combreloc=yes
-		libc_cv_z_execstack=yes
-		libc_cv_z_initfirst=yes
-		libc_cv_z_nodelete=yes
-		libc_cv_z_nodlopen=yes
-		libc_cv_z_relro=yes
-		libc_mips_abi=${ABI}
-		libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard)
-		# These libs don't have configure flags.
-		ac_cv_lib_audit_audit_log_user_avc_message=no
-		ac_cv_lib_cap_cap_init=no
-	)
-
-	einfo "Forcing cached settings:"
-	for v in "${vars[@]}" ; do
-		einfo " ${v}"
-		export ${v}
-	done
-
-	local headers_only_arch_CPPFLAGS=()
-
-	# Blow away some random CC settings that screw things up. #550192
-	if [[ -d ${S}/sysdeps/mips ]]; then
-		pushd "${S}"/sysdeps/mips >/dev/null
-		sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die
-		sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die
-
-		# Force the mips ABI to the default.  This is OK because the set of
-		# installed headers in this phase is the same between the 3 ABIs.
-		# If this ever changes, this hack will break, but that's unlikely
-		# as glibc discourages that behavior.
-		# https://crbug.com/647033
-		sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die
-
-		popd >/dev/null
-	fi
-
-	case ${CTARGET} in
-	riscv*)
-		# RISC-V interrogates the compiler to determine which target to
-		# build.  If building the headers then we don't strictly need a
-		# RISC-V compiler, so the built-in definitions that are provided
-		# along with all RISC-V compiler might not exist.  This causes
-		# glibc's RISC-V preconfigure script to blow up.  Since we're just
-		# building the headers any value will actually work here, so just
-		# pick the standard one (rv64g/lp64d) to make the build scripts
-		# happy for now -- the headers are all the same anyway so it
-		# doesn't matter.
-		headers_only_arch_CPPFLAGS+=(
-			-D__riscv_xlen=64
-			-D__riscv_flen=64
-			-D__riscv_float_abi_double=1
-			-D__riscv_atomic=1
-		) ;;
-	esac
-
-	local myconf=()
-	myconf+=(
-		--disable-sanity-checks
-		--enable-hacker-mode
-		--without-cvs
-		--disable-werror
-		--enable-bind-now
-		--build=${CBUILD_OPT:-${CBUILD}}
-		--host=${CTARGET_OPT:-${CTARGET}}
-		--with-headers=$(build_eprefix)$(alt_build_headers)
-		--prefix="$(host_eprefix)/usr"
-		${EXTRA_ECONF}
-	)
-
-	# Nothing is compiled here which would affect the headers for the target.
-	# So forcing CC/CFLAGS is sane.
-	local headers_only_CC=$(tc-getBUILD_CC)
-	local headers_only_CFLAGS="-O1 -pipe"
-	local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}"
-	local headers_only_LDFLAGS=""
-	set -- "${S}"/configure "${myconf[@]}"
-	echo \
-		"CC=${headers_only_CC}" \
-		"CFLAGS=${headers_only_CFLAGS}" \
-		"CPPFLAGS=${headers_only_CPPFLAGS}" \
-		"LDFLAGS=${headers_only_LDFLAGS}" \
-		"$@"
-	CC=${headers_only_CC} \
-	CFLAGS=${headers_only_CFLAGS} \
-	CPPFLAGS=${headers_only_CPPFLAGS} \
-	LDFLAGS="" \
-	"$@" || die "failed to configure glibc"
-}
-
-do_src_configure() {
-	if just_headers ; then
-		glibc_headers_configure
-	else
-		glibc_do_configure nptl
-	fi
-}
-
-src_configure() {
-	EXTRA_ECONF+=" --with-bugurl=http://crbug.com/new"
-	foreach_abi do_src_configure
-}
-
-do_src_compile() {
-	emake -C "$(builddir nptl)"
-}
-
-src_compile() {
-	if just_headers ; then
-		return
-	fi
-
-	foreach_abi do_src_compile
-}
-
-glibc_src_test() {
-	cd "$(builddir nptl)"
-
-	local myxfailparams=""
-	if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then
-		for myt in ${XFAIL_TEST_LIST[@]} ; do
-			myxfailparams+="test-xfail-${myt}=yes "
-		done
-	fi
-
-	# sandbox does not understand unshare() and prevents
-	# writes to /proc/, which makes many tests fail
-
-	SANDBOX_ON=0 LD_PRELOAD= emake ${myxfailparams} check
-}
-
-do_src_test() {
-	local ret=0
-
-	glibc_src_test
-	: $(( ret |= $? ))
-
-	return ${ret}
-}
-
-src_test() {
-	if just_headers ; then
-		return
-	fi
-
-	# Give tests more time to complete.
-	export TIMEOUTFACTOR=5
-
-	foreach_abi do_src_test || die "tests failed"
-}
-
-run_locale_gen() {
-	# if the host locales.gen contains no entries, we'll install everything
-	local root="$1"
-	local inplace=""
-
-	if [[ "${root}" == "--inplace-glibc" ]] ; then
-		inplace="--inplace-glibc"
-		root="$2"
-	fi
-
-	local locale_list="${root}/etc/locale.gen"
-
-	pushd "${ED}"/$(get_libdir) >/dev/null
-
-	if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then
-		[[ -z ${inplace} ]] && ewarn "Generating all locales; edit /etc/locale.gen to save time/space"
-		locale_list="${root}/usr/share/i18n/SUPPORTED"
-	fi
-
-	set -- locale-gen ${inplace} --jobs $(makeopts_jobs) --config "${locale_list}" \
-		--destdir "${root}"
-	echo "$@"
-	"$@"
-
-	popd >/dev/null
-}
-
-glibc_do_src_install() {
-	# Chrome OS: Use strip-debug to keep ".symtab" inside the stripped files.
-	# This matches the suggestion at: https://sourceware.org/gdb/wiki/FAQ under heading:
-	# GDB does not see any threads besides the thread in which crash occurred; or SIGTRAP kills my program when I set a breakpoint.
-	# Therefore, Chrome OS glibc can strip all files including libpthread.so even though Gentoo
-	# disables it.
-	# To reproduce: Use `gdb -q -ex run -ex q --args perf --version` where perf --version
-	# is simply a binary that links with libpthread. gdb will produce the message:
-	# warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
-	# Also see Note [Disable automatic stripping] in Gentoo's glibc ebuild.
-	export PORTAGE_STRIP_FLAGS="--strip-debug -N __gentoo_check_ldflags__ -R .comment"
-
-	local builddir=$(builddir nptl)
-	cd "${builddir}"
-
-	emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install
-
-	# This version (2.26) provides some compatibility libraries for the NIS/NIS+ support
-	# which come without headers etc. Only needed for binary packages since the
-	# external net-libs/libnsl has increased soversion. Keep only versioned libraries.
-	find "${D}" -name "libnsl.a" -delete
-	find "${D}" -name "libnsl.so" -delete
-
-	# Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need
-	# to infer upstream version:
-	# '#define VERSION "2.26.90"' -> '2.26.90'
-	local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h)
-	if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then
-		# Move versioned .a file out of libdir to evade portage QA checks
-		# instead of using gen_usr_ldscript(). We fix ldscript as:
-		# "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..."
-		sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" "${ED}"/$(alt_usrlibdir)/libm.a || die
-		dodir $(alt_usrlibdir)/${P}
-		mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die
-	fi
-
-	if is_crosscompile ; then
-		# punt all the junk not needed by a cross-compiler
-		cd "${D}"/usr/${CTARGET} || die
-		rm -rf ./{,usr/}{etc,share} ./{,usr/}*/misc
-
-		# Remove all executables except getent, ldd, and ldconfig.
-		# See http://crosbug.com/1570
-		find ./usr/bin -name getent -o -name ldd -o -type f -exec rm {} ';'
-		find ./sbin -name ldconfig -o -type f -exec rm {} ';'
-		rm -rf ./usr/sbin
-	fi
-
-	# We'll take care of the cache ourselves
-	rm -f "${ED}"/etc/ld.so.cache
-
-	# Everything past this point just needs to be done once ...
-	is_final_abi || return 0
-
-	# Make sure the non-native interp can be found on multilib systems even
-	# if the main library set isn't installed into the right place.  Maybe
-	# we should query the active gcc for info instead of hardcoding it ?
-	local i ldso_abi ldso_name
-	local ldso_abi_list=(
-		# x86
-		amd64   /lib64/ld-linux-x86-64.so.2
-		x32     /libx32/ld-linux-x32.so.2
-		x86     /lib/ld-linux.so.2
-		# mips
-		o32     /lib/ld.so.1
-		n32     /lib32/ld.so.1
-		n64     /lib64/ld.so.1
-		# powerpc
-		ppc     /lib/ld.so.1
-		ppc64   /lib64/ld64.so.1
-		# riscv
-		ilp32d  /lib/ld-linux-riscv32-ilp32d.so.1
-		ilp32   /lib/ld-linux-riscv32-ilp32.so.1
-		lp64d   /lib/ld-linux-riscv64-lp64d.so.1
-		lp64    /lib/ld-linux-riscv64-lp64.so.1
-		# s390
-		s390    /lib/ld.so.1
-		s390x   /lib/ld64.so.1
-		# sparc
-		sparc32 /lib/ld-linux.so.2
-		sparc64 /lib64/ld-linux.so.2
-	)
-	case $(tc-endian) in
-	little)
-		ldso_abi_list+=(
-			# arm
-			arm64   /lib/ld-linux-aarch64.so.1
-		)
-		;;
-	big)
-		ldso_abi_list+=(
-			# arm
-			arm64   /lib/ld-linux-aarch64_be.so.1
-		)
-		;;
-	esac
-	if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then
-		dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib
-	fi
-	for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do
-		ldso_abi=${ldso_abi_list[i]}
-		has ${ldso_abi} $(get_install_abis) || continue
-
-		ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}"
-		if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then
-			dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name}
-		fi
-	done
-
-	# With devpts under Linux mounted properly, we do not need the pt_chown
-	# binary to be setuid.  This is because the default owners/perms will be
-	# exactly what we want.
-	if ! use suid ; then
-		find "${ED}" -name pt_chown -exec chmod -s {} +
-	fi
-
-	#################################################################
-	# EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY #
-	# Make sure we install some symlink hacks so that when we build
-	# a 2nd stage cross-compiler, gcc finds the target system
-	# headers correctly.  See gcc/doc/gccinstall.info
-	if is_crosscompile ; then
-		# We need to make sure that /lib and /usr/lib always exists.
-		# gcc likes to use relative paths to get to its multilibs like
-		# /usr/lib/../lib64/.  So while we don't install any files into
-		# /usr/lib/, we do need it to exist.
-		cd "${ED}"$(alt_libdir)/..
-		[[ -e lib ]] || mkdir lib
-		cd "${ED}"$(alt_usrlibdir)/..
-		[[ -e lib ]] || mkdir lib
-
-		cd "${ED}"${alt_libdir} || die
-		rm -rf ./{,usr/}{etc,share} ./{,usr/}*/misc
-
-		# Remove all executables except getent, ldd, and ldconfig.
-		# See http://crosbug.com/1570
-		find ./usr/bin -name getent -o -name ldd -o -type f -exec rm {} ';'
-		find ./sbin -name ldconfig -o -type f -exec rm {} ';'
-		rm -rf ./usr/sbin
-
-		dosym usr/include $(alt_prefix)/sys-include
-		return 0
-	fi
-
-	# Files for Debian-style locale updating
-	dodir /usr/share/i18n
-	sed \
-		-e "/^#/d" \
-		-e "/SUPPORTED-LOCALES=/d" \
-		-e "s: \\\\::g" -e "s:/: :g" \
-		"${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \
-		|| die "generating /usr/share/i18n/SUPPORTED failed"
-	cd "${WORKDIR}"/extra/locale
-	dosbin locale-gen
-	doman *.[0-8]
-	insinto /etc
-	doins locale.gen
-
-	keepdir /usr/lib/locale
-
-	cd "${S}"
-
-	# Install misc network config files
-	insinto /etc
-	doins posix/gai.conf nss/nsswitch.conf
-
-	# Gentoo-specific
-	newins "${FILESDIR}"/host.conf-1 host.conf
-
-	if use nscd ; then
-		doins nscd/nscd.conf
-
-		newinitd "$(prefixify_ro "${FILESDIR}"/nscd-1)" nscd
-
-		local nscd_args=(
-			-e "s:@PIDFILE@:$(strings "${ED}"/usr/sbin/nscd | grep nscd.pid):"
-		)
-
-		sed -i "${nscd_args[@]}" "${ED}"/etc/init.d/nscd
-
-		systemd_dounit nscd/nscd.service
-		systemd_newtmpfilesd nscd/nscd.tmpfiles nscd.conf
-	fi
-
-	echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00glibc
-	doenvd "${T}"/00glibc
-
-	for d in BUGS ChangeLog CONFORMANCE FAQ NEWS NOTES PROJECTS README* ; do
-		[[ -s ${d} ]] && dodoc ${d}
-	done
-	dodoc -r ChangeLog.old
-
-	# Prevent overwriting of the /etc/localtime symlink.  We'll handle the
-	# creation of the "factory" symlink in pkg_postinst().
-	rm -f "${ED}"/etc/localtime
-
-	# Generate all locales if this is a native build as locale generation
-	if use compile-locales && ! is_crosscompile ; then
-		run_locale_gen --inplace-glibc "${ED}/"
-		sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die
-	fi
-}
-
-glibc_headers_install() {
-	local builddir=$(builddir "headers")
-	cd "${builddir}"
-	emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers
-
-	insinto $(alt_headers)/gnu
-	doins "${S}"/include/gnu/stubs.h
-
-	# Make sure we install the sys-include symlink so that when
-	# we build a 2nd stage cross-compiler, gcc finds the target
-	# system headers correctly.  See gcc/doc/gccinstall.info
-	dosym usr/include $(alt_prefix)/sys-include
-}
-
-src_install() {
-	if just_headers ; then
-		export ABI=default
-		glibc_headers_install
-		return
-	fi
-
-	foreach_abi glibc_do_src_install
-
-	if ! use static-libs ; then
-		elog "Not installing static glibc libraries"
-		find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete
-	fi
-}
-
-# Simple test to make sure our new glibc isn't completely broken.
-# Make sure we don't test with statically built binaries since
-# they will fail.  Also, skip if this glibc is a cross compiler.
-#
-# If coreutils is built with USE=multicall, some of these files
-# will just be wrapper scripts, not actual ELFs we can test.
-glibc_sanity_check() {
-	cd / #228809
-
-	# We enter ${ED} so to avoid trouble if the path contains
-	# special characters; for instance if the path contains the
-	# colon character (:), then the linker will try to split it
-	# and look for the libraries in an unexpected place. This can
-	# lead to unsafe code execution if the generated prefix is
-	# within a world-writable directory.
-	# (e.g. /var/tmp/portage:${HOSTNAME})
-	pushd "${ED}"/$(get_libdir) >/dev/null
-
-	local x striptest
-	for x in cal date env free ls true uname uptime ; do
-		x=$(type -p ${x})
-		[[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue
-		striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue
-		case ${striptest} in
-		*"statically linked"*) continue;;
-		*"ASCII text"*) continue;;
-		esac
-		# We need to clear the locale settings as the upgrade might want
-		# incompatible locale data.  This test is not for verifying that.
-		LC_ALL=C \
-		./ld-*.so --library-path . ${x} > /dev/null \
-			|| die "simple run test (${x}) failed"
-	done
-
-	popd >/dev/null
-}
-
-pkg_preinst() {
-	# nothing to do if just installing headers
-	just_headers && return
-
-	# prepare /etc/ld.so.conf.d/ for files
-	mkdir -p "${EROOT}"/etc/ld.so.conf.d
-
-	# Default /etc/hosts.conf:multi to on for systems with small dbs.
-	if [[ $(wc -l < "${EROOT}"/etc/hosts) -lt 1000 ]] ; then
-		sed -i '/^multi off/s:off:on:' "${ED}"/etc/host.conf
-		einfo "Defaulting /etc/host.conf:multi to on"
-	fi
-
-	[[ -n ${ROOT} ]] && return 0
-	[[ -d ${ED}/$(get_libdir) ]] || return 0
-	[[ -z ${BOOTSTRAP_RAP} ]] && glibc_sanity_check
-
-	if [[ -L ${EROOT}/usr/lib/locale ]]; then
-		# Help portage migrate this to a directory
-		# https://bugs.gentoo.org/753740
-		rm "${EROOT}"/usr/lib/locale || die
-	fi
-}
-
-pkg_postinst() {
-	# nothing to do if just installing headers
-	just_headers && return
-
-	if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then
-		# Generate fastloading iconv module configuration file.
-		"${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/"
-	fi
-
-	if ! is_crosscompile && [[ -z ${ROOT} ]] ; then
-		use compile-locales || run_locale_gen "${EROOT}/"
-	fi
-
-	# Check for sanity of /etc/nsswitch.conf, take 2
-	if [[ -e ${EROOT}/etc/nsswitch.conf ]] && ! has_version sys-auth/libnss-nis ; then
-		local entry
-		for entry in passwd group shadow; do
-			if egrep -q "^[ \t]*${entry}:.*nis" "${EROOT}"/etc/nsswitch.conf; then
-				ewarn ""
-				ewarn "Your ${EROOT}/etc/nsswitch.conf uses NIS. Support for that has been"
-				ewarn "removed from glibc and is now provided by the package"
-				ewarn "  sys-auth/libnss-nis"
-				ewarn "Install it now to keep your NIS setup working."
-				ewarn ""
-			fi
-		done
-	fi
-}
diff --git a/sys-libs/glibc/glibc-2.32-r18.ebuild b/sys-libs/glibc/glibc-2.32-r18.ebuild
new file mode 100644
index 0000000..5160ccb
--- /dev/null
+++ b/sys-libs/glibc/glibc-2.32-r18.ebuild
@@ -0,0 +1,1553 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9} )
+
+inherit python-any-r1 prefix eutils toolchain-funcs flag-o-matic gnuconfig \
+	multilib systemd multiprocessing
+
+DESCRIPTION="GNU libc C library"
+HOMEPAGE="https://www.gnu.org/software/libc/"
+LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE"
+SLOT="2.2"
+
+EMULTILIB_PKG="true"
+
+# Gentoo patchset (ignored for live ebuilds)
+PATCH_VER=8
+PATCH_DEV=dilfridge
+
+if [[ ${PV} == 9999* ]]; then
+	inherit git-r3
+else
+	KEYWORDS="*"
+	SRC_URI="mirror://gnu/glibc/${P}.tar.xz"
+	SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz"
+	SRC_URI+=" riscv? ( https://dev.gentoo.org/~dilfridge/distfiles/backport-rv32.txz )"
+fi
+
+RELEASE_VER=${PV}
+
+GCC_BOOTSTRAP_VER=20201208
+
+LOCALE_GEN_VER=2.10
+
+SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz"
+SRC_URI+=" multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
+
+IUSE="audit caps cet compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib nscd profile selinux +ssp +static-libs static-pie suid systemtap test vanilla crosscompile_opts_headers-only"
+
+# Minimum kernel version that glibc requires
+MIN_KERN_VER="3.2.0"
+
+# Here's how the cross-compile logic breaks down ...
+#  CTARGET - machine that will target the binaries
+#  CHOST   - machine that will host the binaries
+#  CBUILD  - machine that will build the binaries
+# If CTARGET != CHOST, it means you want a libc for cross-compiling.
+# If CHOST != CBUILD, it means you want to cross-compile the libc.
+#  CBUILD = CHOST = CTARGET    - native build/install
+#  CBUILD != (CHOST = CTARGET) - cross-compile a native build
+#  (CBUILD = CHOST) != CTARGET - libc for cross-compiler
+#  CBUILD != CHOST != CTARGET  - cross-compile a libc for a cross-compiler
+# For install paths:
+#  CHOST = CTARGET  - install into /
+#  CHOST != CTARGET - install into /usr/CTARGET/
+#
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+	if [[ ${CATEGORY} == cross-* ]] ; then
+		export CTARGET=${CATEGORY#cross-}
+	fi
+fi
+
+# We need a new-enough binutils/gcc to match upstream baseline.
+# Also we need to make sure our binutils/gcc supports TLS,
+# and that gcc already contains the hardened patches.
+# Lastly, let's avoid some openssh nastiness, bug 708224, as
+# convenience to our users.
+
+# gzip, grep, awk are needed by locale-gen, bug 740750
+
+BDEPEND="
+	${PYTHON_DEPS}
+	>=app-misc/pax-utils-0.1.10
+	sys-devel/bison
+	doc? ( sys-apps/texinfo )
+	!compile-locales? (
+		app-arch/gzip
+		sys-apps/grep
+		virtual/awk
+	)
+"
+COMMON_DEPEND="
+	gd? ( media-libs/gd:2= )
+	nscd? ( selinux? (
+		audit? ( sys-process/audit )
+		caps? ( sys-libs/libcap )
+	) )
+	suid? ( caps? ( sys-libs/libcap ) )
+	selinux? ( sys-libs/libselinux )
+	systemtap? ( dev-util/systemtap )
+	!<net-misc/openssh-8.1_p1-r2
+"
+DEPEND="${COMMON_DEPEND}
+	compile-locales? (
+		app-arch/gzip
+		sys-apps/grep
+		virtual/awk
+	)
+	test? ( >=net-dns/libidn2-2.3.0 )
+"
+PDEPEND="${COMMON_DEPEND}
+	app-arch/gzip
+	sys-apps/grep
+	virtual/awk
+	sys-apps/gentoo-functions
+"
+
+RESTRICT="!test? ( test )"
+
+if [[ ${CATEGORY} == cross-* ]] ; then
+	BDEPEND+=" !headers-only? (
+		!crosscompile_opts_headers-only? (
+			>=${CATEGORY}/binutils-2.24
+			>=${CATEGORY}/gcc-4.9
+			)
+	)"
+	[[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers"
+else
+	BDEPEND+="
+		>=sys-devel/binutils-2.24
+		>=sys-devel/gcc-6
+	"
+	DEPEND+=" virtual/os-headers "
+	RDEPEND+="
+		>=net-dns/libidn2-2.3.0
+		vanilla? ( !sys-libs/timezone-data )
+	"
+	PDEPEND+=" !vanilla? ( sys-libs/timezone-data )"
+fi
+
+# Ignore tests allowlisted below
+GENTOO_GLIBC_XFAIL_TESTS="${GENTOO_GLIBC_XFAIL_TESTS:-yes}"
+
+# The following tests fail due to the Gentoo build system and are thus
+# executed but ignored:
+XFAIL_TEST_LIST=(
+	# 9) Failures of unknown origin
+	tst-latepthread
+
+	# buggy test, assumes /dev/ and /dev/null on a single filesystem
+	# 'mount --bind /dev/null /chroot/dev/null' breaks it.
+	# https://sourceware.org/PR25909
+	tst-support_descriptors
+
+	# Flaky test, known to fail occasionally:
+	# https://sourceware.org/PR19329
+	# https://bugs.gentoo.org/719674#c12
+	tst-stack4
+)
+
+#
+# Small helper functions
+#
+
+is_crosscompile() {
+	[[ ${CHOST} != ${CTARGET} ]]
+}
+
+just_headers() {
+	is_crosscompile && ( use headers-only || use crosscompile_opts_headers-only )
+}
+
+alt_prefix() {
+	is_crosscompile && echo /usr/${CTARGET}
+}
+
+# This prefix is applicable to CHOST when building against this
+# glibc. It is baked into the library at configure time.
+host_eprefix() {
+	is_crosscompile || echo "${EPREFIX}"
+}
+
+# This prefix is applicable to CBUILD when building against this
+# glibc. It determines the destination path at install time.
+build_eprefix() {
+	is_crosscompile && echo "${EPREFIX}"
+}
+
+# We need to be able to set alternative headers for compiling for non-native
+# platform. Will also become useful for testing kernel-headers without screwing
+# up the whole system.
+alt_headers() {
+	echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
+}
+
+alt_build_headers() {
+	if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
+		ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)"
+		if tc-is-cross-compiler ; then
+			ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
+			if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
+				local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h')
+				ALT_BUILD_HEADERS=${header_path%/linux/version.h}
+			fi
+		fi
+	fi
+	echo "${ALT_BUILD_HEADERS}"
+}
+
+alt_libdir() {
+	echo $(alt_prefix)/$(get_libdir)
+}
+alt_usrlibdir() {
+	echo $(alt_prefix)/usr/$(get_libdir)
+}
+
+builddir() {
+	echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1"
+}
+
+do_compile_test() {
+	local ret save_cflags=${CFLAGS}
+	CFLAGS+=" $1"
+	shift
+
+	pushd "${T}" >/dev/null
+
+	rm -f glibc-test*
+	printf '%b' "$*" > glibc-test.c
+
+	# Most of the time CC is already set, but not in early sanity checks.
+	nonfatal emake glibc-test CC="${CC-$(tc-getCC ${CTARGET})}"
+	ret=$?
+
+	popd >/dev/null
+
+	CFLAGS=${save_cflags}
+	return ${ret}
+}
+
+do_run_test() {
+	local ret
+
+	if [[ ${MERGE_TYPE} == "binary" ]] ; then
+		# ignore build failures when installing a binary package #324685
+		do_compile_test "" "$@" 2>/dev/null || return 0
+	else
+		if ! do_compile_test "" "$@" ; then
+			ewarn "Simple build failed ... assuming this is desired #324685"
+			return 0
+		fi
+	fi
+
+	pushd "${T}" >/dev/null
+
+	./glibc-test
+	ret=$?
+	rm -f glibc-test*
+
+	popd >/dev/null
+
+	return ${ret}
+}
+
+setup_target_flags() {
+	# This largely mucks with compiler flags.  None of which should matter
+	# when building up just the headers.
+	just_headers && return 0
+
+	# Needed as workaround to fix:
+	# http://code.google.com/p/chromium-os/issues/detail?id=22373
+	# Can be removed when we emerge glibc to the target:
+	# http://code.google.com/p/chromium-os/issues/detail?id=20792
+	append-cflags "-ggdb"
+
+	# ChromiumOS: Need to unset the SYSROOT value so that the
+	# compiler uses the default sysroot when building glibc. This
+	# is because the glibc startup objects are needed to configure
+	# glibc. We don't want to bootstrap libc again.
+	export SYSROOT=""
+
+	case $(tc-arch) in
+		x86)
+			# -march needed for #185404 #199334
+			# TODO: When creating the first glibc cross-compile, this test will
+			# always fail as it does a full link which in turn requires glibc.
+			# Probably also applies when changing multilib profile settings (e.g.
+			# enabling x86 when the profile was amd64-only previously).
+			# We could change main to _start and pass -nostdlib here so that we
+			# only test the gcc code compilation.  Or we could do a compile and
+			# then look for the symbol via scanelf.
+			if ! do_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then
+				local t=${CTARGET_OPT:-${CTARGET}}
+				t=${t%%-*}
+				filter-flags '-march=*'
+				export CFLAGS="-march=${t} ${CFLAGS}"
+				einfo "Auto adding -march=${t} to CFLAGS #185404"
+			fi
+		;;
+		amd64)
+			# -march needed for #185404 #199334
+			# TODO: See cross-compile issues listed above for x86.
+			[[ ${ABI} == x86 ]] &&
+			if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then
+				local t=${CTARGET_OPT:-${CTARGET}}
+				t=${t%%-*}
+				# Normally the target is x86_64-xxx, so turn that into the -march that
+				# gcc actually accepts. #528708
+				[[ ${t} == "x86_64" ]] && t="x86-64"
+				filter-flags '-march=*'
+				# ugly, ugly, ugly.  ugly.
+				CFLAGS_x86=$(CFLAGS=${CFLAGS_x86} filter-flags '-march=*'; echo "${CFLAGS}")
+				export CFLAGS_x86="${CFLAGS_x86} -march=${t}"
+				einfo "Auto adding -march=${t} to CFLAGS_x86 #185404 (ABI=${ABI})"
+			fi
+		;;
+		mips)
+			# The mips abi cannot support the GNU style hashes. #233233
+			filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both
+		;;
+		ppc|ppc64)
+			# Many arch-specific implementations do not work on ppc with
+			# cache-block not equal to 128 bytes. This breaks memset:
+			#   https://sourceware.org/PR26522
+			#   https://bugs.gentoo.org/737996
+			# Use default -mcpu=. For ppc it means non-multiarch setup.
+			filter-flags '-mcpu=*'
+		;;
+		sparc)
+			# Both sparc and sparc64 can use -fcall-used-g6.  -g7 is bad, though.
+			filter-flags "-fcall-used-g7"
+			append-flags "-fcall-used-g6"
+
+			local cpu
+			case ${CTARGET} in
+			sparc64-*)
+				cpu="sparc64"
+				case $(get-flag mcpu) in
+				v9)
+					# We need to force at least v9a because the base build doesn't
+					# work with just v9.
+					# https://sourceware.org/bugzilla/show_bug.cgi?id=19477
+					append-flags "-Wa,-xarch=v9a"
+					;;
+				esac
+				;;
+			sparc-*)
+				case $(get-flag mcpu) in
+				v8|supersparc|hypersparc|leon|leon3)
+					cpu="sparcv8"
+					;;
+				*)
+					cpu="sparcv9"
+					;;
+				esac
+			;;
+			esac
+			[[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}"
+		;;
+	esac
+}
+
+setup_flags() {
+	# Glibc controls its own optimization settings, so this would be a nop
+	# if we were to run it. Leave it here anyway as a grep-friendly marker.
+	# cros_optimize_package_for_speed
+
+	# Make sure host make.conf doesn't pollute us
+	if is_crosscompile || tc-is-cross-compiler ; then
+		CHOST=${CTARGET} strip-unsupported-flags
+	fi
+
+	# Store our CFLAGS because it's changed depending on which CTARGET
+	# we are building when pulling glibc on a multilib profile
+	CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}}
+	CFLAGS=${CFLAGS_BASE}
+	CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}}
+	CXXFLAGS=${CXXFLAGS_BASE}
+	ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}}
+	ASFLAGS=${ASFLAGS_BASE}
+
+	# Allow users to explicitly avoid flag sanitization via
+	# USE=custom-cflags.
+	if ! use custom-cflags; then
+		# Over-zealous CFLAGS can often cause problems.  What may work for one
+		# person may not work for another.  To avoid a large influx of bugs
+		# relating to failed builds, we strip most CFLAGS out to ensure as few
+		# problems as possible.
+		strip-flags
+		# Lock glibc at -O2; we want to be conservative here.
+		filter-flags '-O?'
+		append-flags -O2
+	fi
+	strip-unsupported-flags
+	filter-flags -m32 -m64 '-mabi=*'
+
+	# glibc aborts if rpath is set by LDFLAGS
+	filter-ldflags '-Wl,-rpath=*'
+
+	# #492892
+	filter-flags -frecord-gcc-switches
+
+	unset CBUILD_OPT CTARGET_OPT
+	if use multilib ; then
+		CTARGET_OPT=$(get_abi_CTARGET)
+		[[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST)
+	fi
+
+	setup_target_flags
+
+	if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then
+		CBUILD_OPT=${CTARGET_OPT}
+	fi
+
+	# glibc's headers disallow -O0 and fail at build time:
+	#  include/libc-symbols.h:75:3: #error "glibc cannot be compiled without optimization"
+	replace-flags -O0 -O1
+
+	filter-flags '-fstack-protector*'
+}
+
+want_tls() {
+	# Archs that can use TLS (Thread Local Storage)
+	case $(tc-arch) in
+		x86)
+			# requires i486 or better #106556
+			[[ ${CTARGET} == i[4567]86* ]] && return 0
+			return 1
+		;;
+	esac
+	return 0
+}
+
+want__thread() {
+	want_tls || return 1
+
+	# For some reason --with-tls --with__thread is causing segfaults on sparc32.
+	[[ ${PROFILE_ARCH} == "sparc" ]] && return 1
+
+	[[ -n ${WANT__THREAD} ]] && return ${WANT__THREAD}
+
+	# only test gcc -- can't test linking yet
+	tc-has-tls -c ${CTARGET}
+	WANT__THREAD=$?
+
+	return ${WANT__THREAD}
+}
+
+use_multiarch() {
+	# Allow user to disable runtime arch detection in multilib.
+	use multiarch || return 1
+	# Make sure binutils is new enough to support indirect functions,
+	# #336792. This funky sed supports gold and bfd linkers.
+	local bver nver
+	bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}')
+	case $(tc-arch ${CTARGET}) in
+	amd64|x86) nver="2.20" ;;
+	arm)       nver="2.22" ;;
+	hppa)      nver="2.23" ;;
+	ppc|ppc64) nver="2.20" ;;
+	# ifunc support was added in 2.23, but glibc also needs
+	# machinemode which is in 2.24.
+	s390)      nver="2.24" ;;
+	sparc)     nver="2.21" ;;
+	*)         return 1 ;;
+	esac
+	ver_test ${bver} -ge ${nver}
+}
+
+# Setup toolchain variables that had historically been defined in the
+# profiles for these archs.
+setup_env() {
+	# silly users
+	unset LD_RUN_PATH
+	unset LD_ASSUME_KERNEL
+
+	if is_crosscompile || tc-is-cross-compiler ; then
+		multilib_env ${CTARGET_OPT:-${CTARGET}}
+
+		if ! use multilib ; then
+			MULTILIB_ABIS=${DEFAULT_ABI}
+		else
+			MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}}
+		fi
+
+		# If the user has CFLAGS_<CTARGET> in their make.conf, use that,
+		# and fall back on CFLAGS.
+		local VAR=CFLAGS_${CTARGET//[-.]/_}
+		CFLAGS=${!VAR-${CFLAGS}}
+		einfo " $(printf '%15s' 'Manual CFLAGS:')   ${CFLAGS}"
+	fi
+
+	setup_flags
+
+	export ABI=${ABI:-${DEFAULT_ABI:-default}}
+
+	if just_headers ; then
+		# Avoid mixing host's CC and target's CFLAGS_${ABI}:
+		# At this bootstrap stage we have only binutils for
+		# target but not compiler yet.
+		einfo "Skip CC ABI injection. We can't use (cross-)compiler yet."
+		return 0
+	fi
+	local VAR=CFLAGS_${ABI}
+	# We need to export CFLAGS with abi information in them because glibc's
+	# configure script checks CFLAGS for some targets (like mips).  Keep
+	# around the original clean value to avoid appending multiple ABIs on
+	# top of each other.
+
+	# For ChromiumOS, the default compiler is clang, we need to set it to gcc.
+	: ${__GLIBC_CC:=$(tc-getCC ${CTARGET})}
+	export __GLIBC_CC CC="${__GLIBC_CC}"
+	cros_use_gcc
+	export CC="${CC} ${!VAR}"
+	einfo " $(printf '%15s' 'Manual CC:')   ${CC}"
+}
+
+foreach_abi() {
+	# For ChromiumOS, we need to unset __GLIBC_CC CC here. Otherwise
+	# we could not run sudo emerge sys-libs/glibc inside chroot.
+	unset __GLIBC_CC CC
+	setup_env
+
+	local ret=0
+	local abilist=""
+	if use multilib ; then
+		abilist=$(get_install_abis)
+	else
+		abilist=${DEFAULT_ABI}
+	fi
+	local -x ABI
+	for ABI in ${abilist:-default} ; do
+		setup_env
+		einfo "Running $1 for ABI ${ABI}"
+		$1
+		: $(( ret |= $? ))
+	done
+	return ${ret}
+}
+
+glibc_banner() {
+	local b="Gentoo ${PVR}"
+	[[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}"
+	echo "${b}"
+}
+
+# The following Kernel version handling functions are mostly copied from portage
+# source. It's better not to use linux-info.eclass here since a) it adds too
+# much magic, see bug 326693 for some of the arguments, and b) some of the
+# functions are just not provided.
+
+g_get_running_KV() {
+	uname -r
+	return $?
+}
+
+g_KV_major() {
+	[[ -z $1 ]] && return 1
+	local KV=$@
+	echo "${KV%%.*}"
+}
+
+g_KV_minor() {
+	[[ -z $1 ]] && return 1
+	local KV=$@
+	KV=${KV#*.}
+	echo "${KV%%.*}"
+}
+
+g_KV_micro() {
+	[[ -z $1 ]] && return 1
+	local KV=$@
+	KV=${KV#*.*.}
+	echo "${KV%%[^[:digit:]]*}"
+}
+
+g_KV_to_int() {
+	[[ -z $1 ]] && return 1
+	local KV_MAJOR=$(g_KV_major "$1")
+	local KV_MINOR=$(g_KV_minor "$1")
+	local KV_MICRO=$(g_KV_micro "$1")
+	local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO ))
+
+	# We make version 2.2.0 the minimum version we will handle as
+	# a sanity check ... if its less, we fail ...
+	if [[ ${KV_int} -ge 131584 ]] ; then
+		echo "${KV_int}"
+		return 0
+	fi
+	return 1
+}
+
+g_int_to_KV() {
+	local version=$1 major minor micro
+	major=$((version / 65536))
+	minor=$(((version % 65536) / 256))
+	micro=$((version % 256))
+	echo ${major}.${minor}.${micro}
+}
+
+eend_KV() {
+	[[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]]
+	eend $?
+}
+
+get_kheader_version() {
+	printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
+	$(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \
+	tail -n 1
+}
+
+# We collect all sanity checks here. Consistency is not guranteed between
+# pkg_ and src_ phases, so we call this function both in pkg_pretend and in
+# src_unpack.
+sanity_prechecks() {
+	# CrOS makes sure these checks all pass.
+	return
+
+	# Prevent native builds from downgrading
+	if [[ ${MERGE_TYPE} != "buildonly" ]] && \
+		[[ -z ${ROOT} ]] && \
+		[[ ${CBUILD} == ${CHOST} ]] && \
+		[[ ${CHOST} == ${CTARGET} ]] ; then
+
+		# The high rev # is to allow people to downgrade between -r#
+		# versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2
+		# should be fine. Hopefully we never actually use a r# this
+		# high.
+		if has_version ">${CATEGORY}/${P}-r10000" ; then
+			eerror "Sanity check to keep you from breaking your system:"
+			eerror " Downgrading glibc is not supported and a sure way to destruction."
+			[[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system."
+		fi
+
+		if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then
+			eerror "Your old kernel is broken. You need to update it to a newer"
+			eerror "version as syscall(<bignum>) will break. See bug 279260."
+			die "Old and broken kernel."
+		fi
+	fi
+
+	# Users have had a chance to phase themselves, time to give em the boot
+	if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then
+		eerror "You still haven't deleted ${EROOT}/etc/locales.build."
+		eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher."
+		die "Lazy upgrader detected"
+	fi
+
+	if [[ ${CTARGET} == i386-* ]] ; then
+		eerror "i386 CHOSTs are no longer supported."
+		eerror "Chances are you don't actually want/need i386."
+		eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml"
+		die "Please fix your CHOST"
+	fi
+
+	if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then
+		ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS."
+		ewarn "This will result in a 50% performance penalty when running with a 32bit"
+		ewarn "hypervisor, which is probably not what you want."
+	fi
+
+	# Check for sanity of /etc/nsswitch.conf
+	if [[ -e ${EROOT}/etc/nsswitch.conf ]] ; then
+		local entry
+		for entry in passwd group shadow; do
+			if ! egrep -q "^[ \t]*${entry}:.*files" "${EROOT}"/etc/nsswitch.conf; then
+				eerror "Your ${EROOT}/etc/nsswitch.conf is out of date."
+				eerror "Please make sure you have 'files' entries for"
+				eerror "'passwd:', 'group:' and 'shadow:' databases."
+				eerror "For more details see:"
+				eerror "  https://wiki.gentoo.org/wiki/Project:Toolchain/nsswitch.conf_in_glibc-2.26"
+				die "nsswitch.conf has no 'files' provider in '${entry}'."
+			fi
+		done
+	fi
+
+	# ABI-specific checks follow here. Hey, we have a lot more specific conditions that
+	# we test for...
+	if ! is_crosscompile ; then
+		if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then
+			ebegin "Checking that IA32 emulation is enabled in the running kernel"
+			echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c"
+			local STAT
+			if "${CC-${CHOST}-gcc}" ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then
+				"${T}/check-ia32-emulation.elf32"
+				STAT=$?
+			else
+				# Don't fail here to allow single->multi ABI switch
+				# or recover from breakage like bug #646424
+				ewarn "Failed to compile the ABI test. Broken host glibc?"
+				STAT=0
+			fi
+			rm -f "${T}/check-ia32-emulation.elf32"
+			eend $STAT
+			[[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc."
+		fi
+
+	fi
+
+	# When we actually have to compile something...
+	if ! just_headers ; then
+		ebegin "Checking gcc for __thread support"
+		if ! eend $(want__thread ; echo $?) ; then
+			echo
+			eerror "Could not find a gcc that supports the __thread directive!"
+			eerror "Please update your binutils/gcc and try again."
+			die "No __thread support in gcc!"
+		fi
+
+		if [[ ${CTARGET} == *-linux* ]] ; then
+			local run_kv build_kv want_kv
+
+			run_kv=$(g_get_running_KV)
+			build_kv=$(g_int_to_KV $(get_kheader_version))
+			want_kv=${MIN_KERN_VER}
+
+			if ! is_crosscompile && ! tc-is-cross-compiler ; then
+				# Building fails on an non-supporting kernel
+				ebegin "Checking running kernel version (${run_kv} >= ${want_kv})"
+				if ! eend_KV ${run_kv} ${want_kv} ; then
+					echo
+					eerror "You need a kernel of at least ${want_kv}!"
+					die "Kernel version too low!"
+				fi
+			fi
+
+			ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})"
+			if ! eend_KV ${build_kv} ${want_kv} ; then
+				echo
+				eerror "You need linux-headers of at least ${want_kv}!"
+				die "linux-headers version too low!"
+			fi
+		fi
+	fi
+}
+
+#
+# the phases
+#
+
+# pkg_pretend
+
+# CrOS doesn't care about these checks.
+disabled_pkg_pretend() {
+	# All the checks...
+	einfo "Checking general environment sanity."
+	sanity_prechecks
+}
+
+pkg_setup() {
+	# see bug 682570
+	[[ -z ${BOOTSTRAP_RAP} ]] && python-any-r1_pkg_setup
+}
+
+# src_unpack
+
+src_unpack() {
+	# Consistency is not guaranteed between pkg_ and src_ ...
+	sanity_prechecks
+
+	use multilib && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz
+
+	setup_env
+
+	if [[ ${PV} == 9999* ]] ; then
+		EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/glibc-patches.git"
+		EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git
+		git-r3_src_unpack
+		mv patches-git/9999 patches || die
+
+		EGIT_REPO_URI="https://sourceware.org/git/glibc.git"
+		EGIT_CHECKOUT_DIR=${S}
+		git-r3_src_unpack
+	else
+		unpack ${P}.tar.xz
+
+		cd "${WORKDIR}" || die
+		unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz
+	fi
+
+	cd "${WORKDIR}" || die
+	unpack locale-gen-${LOCALE_GEN_VER}.tar.gz
+	use riscv && unpack backport-rv32.txz
+}
+
+src_prepare() {
+	local patchsetname
+	if ! use vanilla ; then
+		if [[ ${PV} == 9999* ]] ; then
+			patchsetname="from git master"
+		else
+			patchsetname="${RELEASE_VER}-${PATCH_VER}"
+		fi
+		elog "Applying Gentoo Glibc Patchset ${RELEASE_VER}"
+		EPATCH_SUFFIX="patch" EPATCH_FORCE="yes" eapply "${WORKDIR}"/patches
+		einfo "Done."
+
+		if use riscv ; then
+			elog "Adding rv32 backport patchset for glibc-2.32 (experimental)"
+			eapply "${WORKDIR}"/backport-rv32
+			einfo "Done."
+		fi
+	fi
+	EPATCH_SUFFIX="patch" EPATCH_FORCE="yes" eapply "${FILESDIR}"/local/${PN}-${PV}
+
+	default
+
+	gnuconfig_update
+
+	cd "${WORKDIR}"
+	find . -name configure -exec touch {} +
+
+	# move the external locale-gen to its old place
+	mkdir extra || die
+	mv locale-gen-${LOCALE_GEN_VER} extra/locale || die
+	EPATCH_FORCE="yes" eapply "${FILESDIR}"/glibc-locale-gen-omit-spam-when-in-quiet-mode.patch
+	EPATCH_FORCE="yes" eapply "${FILESDIR}"/glibc-locale-gen-omit-more-spam-when-in-quiet-mode.patch
+	EPATCH_FORCE="yes" eapply "${FILESDIR}"/glibc-locale-gen-skip-duplicate-locales-when-normalized.patch
+
+	eprefixify extra/locale/locale-gen
+
+	# Fix permissions on some of the scripts.
+	chmod u+x "${S}"/scripts/*.sh
+
+	cd "${S}"
+}
+
+glibc_do_configure() {
+	# Glibc does not work with gold (for various reasons) #269274.
+	tc-ld-disable-gold
+
+	# CXX isnt handled by the multilib system, so if we dont unset here
+	# we accumulate crap across abis
+	unset CXX
+
+	einfo "Configuring glibc for nptl"
+
+	if use doc ; then
+		export MAKEINFO=makeinfo
+	else
+		export MAKEINFO=/dev/null
+	fi
+
+	local v
+	for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM READELF; do
+		einfo " $(printf '%15s' ${v}:)   ${!v}"
+	done
+
+	# CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760
+	# To build .S (assembly) files with the same ABI-specific flags
+	# upstream currently recommends adding CFLAGS to CC/CXX:
+	#    https://sourceware.org/PR23273
+	# Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS
+	# and breaks multiarch support. See 659030#c3 for an example.
+	# The glibc configure script doesn't properly use LDFLAGS all the time.
+	export CC="$(tc-getCC ${CTARGET})"
+	export CXX="$(tc-getCXX ${CTARGET})"
+	cros_use_gcc
+	export CC="${CC} ${CFLAGS} ${LDFLAGS}"
+	export CXX="${CXX} $(get_abi_CFLAGS) ${CFLAGS}"
+	einfo " $(printf '%15s' 'Manual CC:')   ${CC}"
+
+	if is_crosscompile; then
+		# Assume worst-case bootstrap: glibc is buil first time
+		# when ${CTARGET}-g++ is not available yet. We avoid
+		# building auxiliary programs that require C++: bug #683074
+		# It should not affect final result.
+		export libc_cv_cxx_link_ok=no
+	fi
+	einfo " $(printf '%15s' 'Manual CXX:')   ${CXX}"
+
+	# Always use tuple-prefixed toolchain. For non-native ABI glibc's configure
+	# can't detect them automatically due to ${CHOST} mismatch and fallbacks
+	# to unprefixed tools. Similar to multilib.eclass:multilib_toolchain_setup().
+	export NM="$(tc-getNM ${CTARGET})"
+	export READELF="$(tc-getREADELF ${CTARGET})"
+	einfo " $(printf '%15s' 'Manual NM:')   ${NM}"
+	einfo " $(printf '%15s' 'Manual READELF:')   ${READELF}"
+
+	echo
+
+	local myconf=()
+
+	case ${CTARGET} in
+		m68k*)
+			# setjmp() is not compatible with stack protection:
+			# https://sourceware.org/PR24202
+			myconf+=( --enable-stack-protector=no )
+			;;
+		powerpc-*)
+			# Currently gcc on powerpc32 generates invalid code for
+			# __builtin_return_address(0) calls. Normally programs
+			# don't do that but malloc hooks in glibc do:
+			# https://gcc.gnu.org/PR81996
+			# https://bugs.gentoo.org/629054
+			myconf+=( --enable-stack-protector=no )
+			;;
+		*)
+			# Use '=strong' instead of '=all' to protect only functions
+			# worth protecting from stack smashes.
+			# '=all' is also known to have a problem in IFUNC resolution
+			# tests: https://sourceware.org/PR25680, bug #712356.
+			myconf+=( --enable-stack-protector=strong )
+			;;
+	esac
+	myconf+=( --enable-stackguard-randomization )
+
+	# Keep an allowlist of targets supporing IFUNC. glibc's ./configure
+	# is not robust enough to detect proper support:
+	#    https://bugs.gentoo.org/641216
+	#    https://sourceware.org/PR22634#c0
+	case $(tc-arch ${CTARGET}) in
+		# Keep an allowlist of targets where autodetection mostly works.
+		amd64|x86|sparc|ppc|ppc64|arm|arm64|s390) ;;
+		# Denylist everywhere else
+		*) myconf+=( libc_cv_ld_gnu_indirect_function=no ) ;;
+	esac
+
+	# Enable Intel Control-flow Enforcement Technology on amd64 if requested
+	case ${CTARGET} in
+		x86_64-*) myconf+=( $(use_enable cet) ) ;;
+		*) ;;
+	esac
+
+	[[ $(tc-is-softfloat) == "yes" ]] && myconf+=( --without-fp )
+
+	myconf+=( --enable-kernel=${MIN_KERN_VER} )
+
+	# Since SELinux support is only required for nscd, only enable it if:
+	# 1. USE selinux
+	# 2. only for the primary ABI on multilib systems
+	# 3. Not a crosscompile
+	if ! is_crosscompile && use selinux ; then
+		if use multilib ; then
+			if is_final_abi ; then
+				myconf+=( --with-selinux )
+			else
+				myconf+=( --without-selinux )
+			fi
+		else
+			myconf+=( --with-selinux )
+		fi
+	else
+		myconf+=( --without-selinux )
+	fi
+
+	# Force a few tests where we always know the answer but
+	# configure is incapable of finding it.
+	if is_crosscompile ; then
+		export \
+			libc_cv_c_cleanup=yes \
+			libc_cv_forced_unwind=yes
+	fi
+
+	myconf+=(
+		--without-cvs
+		--disable-werror
+		--enable-bind-now
+		--build=${CBUILD_OPT:-${CBUILD}}
+		--host=${CTARGET_OPT:-${CTARGET}}
+		$(use_enable profile)
+		$(use_with gd)
+		--with-headers=$(build_eprefix)$(alt_build_headers)
+		--prefix="$(host_eprefix)/usr"
+		--sysconfdir="$(host_eprefix)/etc"
+		--localstatedir="$(host_eprefix)/var"
+		--libdir='$(prefix)'/$(get_libdir)
+		--mandir='$(prefix)'/share/man
+		--infodir='$(prefix)'/share/info
+		--libexecdir='$(libdir)'/misc/glibc
+		--with-bugurl=https://bugs.gentoo.org/
+		--with-pkgversion="$(glibc_banner)"
+		$(use_enable crypt)
+		$(use_multiarch || echo --disable-multi-arch)
+		$(use_enable static-pie)
+		$(use_enable systemtap)
+		$(use_enable nscd)
+
+		# locale data is arch-independent
+		# https://bugs.gentoo.org/753740
+		libc_cv_complocaledir='${exec_prefix}/lib/locale'
+
+		${EXTRA_ECONF}
+	)
+
+	# We rely on sys-libs/timezone-data for timezone tools normally.
+	myconf+=( $(use_enable vanilla timezone-tools) )
+
+	# These libs don't have configure flags.
+	ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no)
+	ac_cv_lib_cap_cap_init=$(usex caps || echo no)
+
+	# There is no configure option for this and we need to export it
+	# since the glibc build will re-run configure on itself
+	export libc_cv_rootsbindir="$(host_eprefix)/sbin"
+	export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)"
+
+	# We take care of patching our binutils to use both hash styles,
+	# and many people like to force gnu hash style only, so disable
+	# this overriding check.  #347761
+	export libc_cv_hashstyle=no
+
+	local builddir=$(builddir nptl)
+	mkdir -p "${builddir}"
+	cd "${builddir}"
+	set -- "${S}"/configure "${myconf[@]}"
+	echo "$@"
+	"$@" || die "failed to configure glibc"
+
+	# ia64 static cross-compilers are a pita in so much that they
+	# can't produce static ELFs (as the libgcc.a is broken).  so
+	# disable building of the programs for those targets if it
+	# doesn't work.
+	# XXX: We could turn this into a compiler test, but ia64 is
+	# the only one that matters, so this should be fine for now.
+	if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then
+		sed -i '1i+link-static = touch $@' config.make
+	fi
+
+	# If we're trying to migrate between ABI sets, we need
+	# to lie and use a local copy of gcc.  Like if the system
+	# is built with MULTILIB_ABIS="amd64 x86" but we want to
+	# add x32 to it, gcc/glibc don't yet support x32.
+	#
+	if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib ; then
+		echo 'main(){}' > "${T}"/test.c
+		if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then
+			sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die
+		fi
+	fi
+}
+
+glibc_headers_configure() {
+	export ABI=default
+
+	cros_use_gcc
+
+	local builddir=$(builddir "headers")
+	mkdir -p "${builddir}"
+	cd "${builddir}"
+
+	# if we don't have a compiler yet, we can't really test it now ...
+	# hopefully they don't affect header generation, so let's hope for
+	# the best here ...
+	local v vars=(
+		ac_cv_header_cpuid_h=yes
+		libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes
+		libc_cv_asm_cfi_directives=yes
+		libc_cv_broken_visibility_attribute=no
+		libc_cv_c_cleanup=yes
+		libc_cv_compiler_powerpc64le_binary128_ok=yes
+		libc_cv_forced_unwind=yes
+		libc_cv_gcc___thread=yes
+		libc_cv_mlong_double_128=yes
+		libc_cv_mlong_double_128ibm=yes
+		libc_cv_ppc_machine=yes
+		libc_cv_ppc_rel16=yes
+		libc_cv_predef_fortify_source=no
+		libc_cv_target_power8_ok=yes
+		libc_cv_visibility_attribute=yes
+		libc_cv_z_combreloc=yes
+		libc_cv_z_execstack=yes
+		libc_cv_z_initfirst=yes
+		libc_cv_z_nodelete=yes
+		libc_cv_z_nodlopen=yes
+		libc_cv_z_relro=yes
+		libc_mips_abi=${ABI}
+		libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard)
+		# These libs don't have configure flags.
+		ac_cv_lib_audit_audit_log_user_avc_message=no
+		ac_cv_lib_cap_cap_init=no
+	)
+
+	einfo "Forcing cached settings:"
+	for v in "${vars[@]}" ; do
+		einfo " ${v}"
+		export ${v}
+	done
+
+	local headers_only_arch_CPPFLAGS=()
+
+	# Blow away some random CC settings that screw things up. #550192
+	if [[ -d ${S}/sysdeps/mips ]]; then
+		pushd "${S}"/sysdeps/mips >/dev/null
+		sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die
+		sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die
+
+		# Force the mips ABI to the default.  This is OK because the set of
+		# installed headers in this phase is the same between the 3 ABIs.
+		# If this ever changes, this hack will break, but that's unlikely
+		# as glibc discourages that behavior.
+		# https://crbug.com/647033
+		sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die
+
+		popd >/dev/null
+	fi
+
+	case ${CTARGET} in
+	riscv*)
+		# RISC-V interrogates the compiler to determine which target to
+		# build.  If building the headers then we don't strictly need a
+		# RISC-V compiler, so the built-in definitions that are provided
+		# along with all RISC-V compiler might not exist.  This causes
+		# glibc's RISC-V preconfigure script to blow up.  Since we're just
+		# building the headers any value will actually work here, so just
+		# pick the standard one (rv64g/lp64d) to make the build scripts
+		# happy for now -- the headers are all the same anyway so it
+		# doesn't matter.
+		headers_only_arch_CPPFLAGS+=(
+			-D__riscv_xlen=64
+			-D__riscv_flen=64
+			-D__riscv_float_abi_double=1
+			-D__riscv_atomic=1
+		) ;;
+	esac
+
+	local myconf=()
+	myconf+=(
+		--disable-sanity-checks
+		--enable-hacker-mode
+		--without-cvs
+		--disable-werror
+		--enable-bind-now
+		--build=${CBUILD_OPT:-${CBUILD}}
+		--host=${CTARGET_OPT:-${CTARGET}}
+		--with-headers=$(build_eprefix)$(alt_build_headers)
+		--prefix="$(host_eprefix)/usr"
+		${EXTRA_ECONF}
+	)
+
+	# Nothing is compiled here which would affect the headers for the target.
+	# So forcing CC/CFLAGS is sane.
+	local headers_only_CC=$(tc-getBUILD_CC)
+	local headers_only_CFLAGS="-O1 -pipe"
+	local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}"
+	local headers_only_LDFLAGS=""
+	set -- "${S}"/configure "${myconf[@]}"
+	echo \
+		"CC=${headers_only_CC}" \
+		"CFLAGS=${headers_only_CFLAGS}" \
+		"CPPFLAGS=${headers_only_CPPFLAGS}" \
+		"LDFLAGS=${headers_only_LDFLAGS}" \
+		"$@"
+	CC=${headers_only_CC} \
+	CFLAGS=${headers_only_CFLAGS} \
+	CPPFLAGS=${headers_only_CPPFLAGS} \
+	LDFLAGS="" \
+	"$@" || die "failed to configure glibc"
+}
+
+do_src_configure() {
+	if just_headers ; then
+		glibc_headers_configure
+	else
+		glibc_do_configure nptl
+	fi
+}
+
+src_configure() {
+	EXTRA_ECONF+=" --with-bugurl=http://crbug.com/new"
+	foreach_abi do_src_configure
+}
+
+do_src_compile() {
+	emake -C "$(builddir nptl)"
+}
+
+src_compile() {
+	if just_headers ; then
+		return
+	fi
+
+	foreach_abi do_src_compile
+}
+
+glibc_src_test() {
+	cd "$(builddir nptl)"
+
+	local myxfailparams=""
+	if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then
+		for myt in ${XFAIL_TEST_LIST[@]} ; do
+			myxfailparams+="test-xfail-${myt}=yes "
+		done
+	fi
+
+	# sandbox does not understand unshare() and prevents
+	# writes to /proc/, which makes many tests fail
+
+	SANDBOX_ON=0 LD_PRELOAD= emake ${myxfailparams} check
+}
+
+do_src_test() {
+	local ret=0
+
+	glibc_src_test
+	: $(( ret |= $? ))
+
+	return ${ret}
+}
+
+src_test() {
+	if just_headers ; then
+		return
+	fi
+
+	# Give tests more time to complete.
+	export TIMEOUTFACTOR=5
+
+	foreach_abi do_src_test || die "tests failed"
+}
+
+run_locale_gen() {
+	# if the host locales.gen contains no entries, we'll install everything
+	local root="$1"
+	local inplace=""
+
+	if [[ "${root}" == "--inplace-glibc" ]] ; then
+		inplace="--inplace-glibc"
+		root="$2"
+	fi
+
+	local locale_list="${root}/etc/locale.gen"
+
+	pushd "${ED}"/$(get_libdir) >/dev/null
+
+	if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then
+		[[ -z ${inplace} ]] && ewarn "Generating all locales; edit /etc/locale.gen to save time/space"
+		locale_list="${root}/usr/share/i18n/SUPPORTED"
+	fi
+
+	set -- locale-gen ${inplace} --jobs $(makeopts_jobs) --config "${locale_list}" \
+		--destdir "${root}"
+	echo "$@"
+	"$@"
+
+	popd >/dev/null
+}
+
+glibc_do_src_install() {
+	# Chrome OS: Use strip-debug to keep ".symtab" inside the stripped files.
+	# This matches the suggestion at: https://sourceware.org/gdb/wiki/FAQ under heading:
+	# GDB does not see any threads besides the thread in which crash occurred; or SIGTRAP kills my program when I set a breakpoint.
+	# Therefore, Chrome OS glibc can strip all files including libpthread.so even though Gentoo
+	# disables it.
+	# To reproduce: Use `gdb -q -ex run -ex q --args perf --version` where perf --version
+	# is simply a binary that links with libpthread. gdb will produce the message:
+	# warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
+	# Also see Note [Disable automatic stripping] in Gentoo's glibc ebuild.
+	export PORTAGE_STRIP_FLAGS="--strip-debug -N __gentoo_check_ldflags__ -R .comment"
+
+	local builddir=$(builddir nptl)
+	cd "${builddir}"
+
+	emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install
+
+	# This version (2.26) provides some compatibility libraries for the NIS/NIS+ support
+	# which come without headers etc. Only needed for binary packages since the
+	# external net-libs/libnsl has increased soversion. Keep only versioned libraries.
+	find "${D}" -name "libnsl.a" -delete
+	find "${D}" -name "libnsl.so" -delete
+
+	# Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need
+	# to infer upstream version:
+	# '#define VERSION "2.26.90"' -> '2.26.90'
+	local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h)
+	if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then
+		# Move versioned .a file out of libdir to evade portage QA checks
+		# instead of using gen_usr_ldscript(). We fix ldscript as:
+		# "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..."
+		sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" "${ED}"/$(alt_usrlibdir)/libm.a || die
+		dodir $(alt_usrlibdir)/${P}
+		mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die
+	fi
+
+	if is_crosscompile ; then
+		# punt all the junk not needed by a cross-compiler
+		cd "${D}"/usr/${CTARGET} || die
+		rm -rf ./{,usr/}{etc,share} ./{,usr/}*/misc
+
+		# Remove all executables except getent, ldd, and ldconfig.
+		# See http://crosbug.com/1570
+		find ./usr/bin -name getent -o -name ldd -o -type f -exec rm {} ';'
+		find ./sbin -name ldconfig -o -type f -exec rm {} ';'
+		rm -rf ./usr/sbin
+	fi
+
+	# We'll take care of the cache ourselves
+	rm -f "${ED}"/etc/ld.so.cache
+
+	# Everything past this point just needs to be done once ...
+	is_final_abi || return 0
+
+	# Make sure the non-native interp can be found on multilib systems even
+	# if the main library set isn't installed into the right place.  Maybe
+	# we should query the active gcc for info instead of hardcoding it ?
+	local i ldso_abi ldso_name
+	local ldso_abi_list=(
+		# x86
+		amd64   /lib64/ld-linux-x86-64.so.2
+		x32     /libx32/ld-linux-x32.so.2
+		x86     /lib/ld-linux.so.2
+		# mips
+		o32     /lib/ld.so.1
+		n32     /lib32/ld.so.1
+		n64     /lib64/ld.so.1
+		# powerpc
+		ppc     /lib/ld.so.1
+		ppc64   /lib64/ld64.so.1
+		# riscv
+		ilp32d  /lib/ld-linux-riscv32-ilp32d.so.1
+		ilp32   /lib/ld-linux-riscv32-ilp32.so.1
+		lp64d   /lib/ld-linux-riscv64-lp64d.so.1
+		lp64    /lib/ld-linux-riscv64-lp64.so.1
+		# s390
+		s390    /lib/ld.so.1
+		s390x   /lib/ld64.so.1
+		# sparc
+		sparc32 /lib/ld-linux.so.2
+		sparc64 /lib64/ld-linux.so.2
+	)
+	case $(tc-endian) in
+	little)
+		ldso_abi_list+=(
+			# arm
+			arm64   /lib/ld-linux-aarch64.so.1
+		)
+		;;
+	big)
+		ldso_abi_list+=(
+			# arm
+			arm64   /lib/ld-linux-aarch64_be.so.1
+		)
+		;;
+	esac
+	if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then
+		dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib
+	fi
+	for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do
+		ldso_abi=${ldso_abi_list[i]}
+		has ${ldso_abi} $(get_install_abis) || continue
+
+		ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}"
+		if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then
+			dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name}
+		fi
+	done
+
+	# With devpts under Linux mounted properly, we do not need the pt_chown
+	# binary to be setuid.  This is because the default owners/perms will be
+	# exactly what we want.
+	if ! use suid ; then
+		find "${ED}" -name pt_chown -exec chmod -s {} +
+	fi
+
+	#################################################################
+	# EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY #
+	# Make sure we install some symlink hacks so that when we build
+	# a 2nd stage cross-compiler, gcc finds the target system
+	# headers correctly.  See gcc/doc/gccinstall.info
+	if is_crosscompile ; then
+		# We need to make sure that /lib and /usr/lib always exists.
+		# gcc likes to use relative paths to get to its multilibs like
+		# /usr/lib/../lib64/.  So while we don't install any files into
+		# /usr/lib/, we do need it to exist.
+		cd "${ED}"$(alt_libdir)/..
+		[[ -e lib ]] || mkdir lib
+		cd "${ED}"$(alt_usrlibdir)/..
+		[[ -e lib ]] || mkdir lib
+
+		cd "${ED}"${alt_libdir} || die
+		rm -rf ./{,usr/}{etc,share} ./{,usr/}*/misc
+
+		# Remove all executables except getent, ldd, and ldconfig.
+		# See http://crosbug.com/1570
+		find ./usr/bin -name getent -o -name ldd -o -type f -exec rm {} ';'
+		find ./sbin -name ldconfig -o -type f -exec rm {} ';'
+		rm -rf ./usr/sbin
+
+		dosym usr/include $(alt_prefix)/sys-include
+		return 0
+	fi
+
+	# Files for Debian-style locale updating
+	dodir /usr/share/i18n
+	sed \
+		-e "/^#/d" \
+		-e "/SUPPORTED-LOCALES=/d" \
+		-e "s: \\\\::g" -e "s:/: :g" \
+		"${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \
+		|| die "generating /usr/share/i18n/SUPPORTED failed"
+	cd "${WORKDIR}"/extra/locale
+	dosbin locale-gen
+	doman *.[0-8]
+	insinto /etc
+	doins locale.gen
+
+	keepdir /usr/lib/locale
+
+	cd "${S}"
+
+	# Install misc network config files
+	insinto /etc
+	doins posix/gai.conf nss/nsswitch.conf
+
+	# Gentoo-specific
+	newins "${FILESDIR}"/host.conf-1 host.conf
+
+	if use nscd ; then
+		doins nscd/nscd.conf
+
+		newinitd "$(prefixify_ro "${FILESDIR}"/nscd-1)" nscd
+
+		local nscd_args=(
+			-e "s:@PIDFILE@:$(strings "${ED}"/usr/sbin/nscd | grep nscd.pid):"
+		)
+
+		sed -i "${nscd_args[@]}" "${ED}"/etc/init.d/nscd
+
+		systemd_dounit nscd/nscd.service
+		systemd_newtmpfilesd nscd/nscd.tmpfiles nscd.conf
+	fi
+
+	echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00glibc
+	doenvd "${T}"/00glibc
+
+	for d in BUGS ChangeLog CONFORMANCE FAQ NEWS NOTES PROJECTS README* ; do
+		[[ -s ${d} ]] && dodoc ${d}
+	done
+	dodoc -r ChangeLog.old
+
+	# Prevent overwriting of the /etc/localtime symlink.  We'll handle the
+	# creation of the "factory" symlink in pkg_postinst().
+	rm -f "${ED}"/etc/localtime
+
+	# Generate all locales if this is a native build as locale generation
+	if use compile-locales && ! is_crosscompile ; then
+		run_locale_gen --inplace-glibc "${ED}/"
+		sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die
+	fi
+}
+
+glibc_headers_install() {
+	local builddir=$(builddir "headers")
+	cd "${builddir}"
+	emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers
+
+	insinto $(alt_headers)/gnu
+	doins "${S}"/include/gnu/stubs.h
+
+	# Make sure we install the sys-include symlink so that when
+	# we build a 2nd stage cross-compiler, gcc finds the target
+	# system headers correctly.  See gcc/doc/gccinstall.info
+	dosym usr/include $(alt_prefix)/sys-include
+}
+
+src_install() {
+	if just_headers ; then
+		export ABI=default
+		glibc_headers_install
+		return
+	fi
+
+	foreach_abi glibc_do_src_install
+
+	if ! use static-libs ; then
+		elog "Not installing static glibc libraries"
+		find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete
+	fi
+}
+
+# Simple test to make sure our new glibc isn't completely broken.
+# Make sure we don't test with statically built binaries since
+# they will fail.  Also, skip if this glibc is a cross compiler.
+#
+# If coreutils is built with USE=multicall, some of these files
+# will just be wrapper scripts, not actual ELFs we can test.
+glibc_sanity_check() {
+	cd / #228809
+
+	# We enter ${ED} so to avoid trouble if the path contains
+	# special characters; for instance if the path contains the
+	# colon character (:), then the linker will try to split it
+	# and look for the libraries in an unexpected place. This can
+	# lead to unsafe code execution if the generated prefix is
+	# within a world-writable directory.
+	# (e.g. /var/tmp/portage:${HOSTNAME})
+	pushd "${ED}"/$(get_libdir) >/dev/null
+
+	local x striptest
+	for x in cal date env free ls true uname uptime ; do
+		x=$(type -p ${x})
+		[[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue
+		striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue
+		case ${striptest} in
+		*"statically linked"*) continue;;
+		*"ASCII text"*) continue;;
+		esac
+		# We need to clear the locale settings as the upgrade might want
+		# incompatible locale data.  This test is not for verifying that.
+		LC_ALL=C \
+		./ld-*.so --library-path . ${x} > /dev/null \
+			|| die "simple run test (${x}) failed"
+	done
+
+	popd >/dev/null
+}
+
+pkg_preinst() {
+	# nothing to do if just installing headers
+	just_headers && return
+
+	# prepare /etc/ld.so.conf.d/ for files
+	mkdir -p "${EROOT}"/etc/ld.so.conf.d
+
+	# Default /etc/hosts.conf:multi to on for systems with small dbs.
+	if [[ $(wc -l < "${EROOT}"/etc/hosts) -lt 1000 ]] ; then
+		sed -i '/^multi off/s:off:on:' "${ED}"/etc/host.conf
+		einfo "Defaulting /etc/host.conf:multi to on"
+	fi
+
+	[[ -n ${ROOT} ]] && return 0
+	[[ -d ${ED}/$(get_libdir) ]] || return 0
+	[[ -z ${BOOTSTRAP_RAP} ]] && glibc_sanity_check
+
+	if [[ -L ${EROOT}/usr/lib/locale ]]; then
+		# Help portage migrate this to a directory
+		# https://bugs.gentoo.org/753740
+		rm "${EROOT}"/usr/lib/locale || die
+	fi
+}
+
+pkg_postinst() {
+	# nothing to do if just installing headers
+	just_headers && return
+
+	if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then
+		# Generate fastloading iconv module configuration file.
+		"${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/"
+	fi
+
+	if ! is_crosscompile && [[ -z ${ROOT} ]] ; then
+		use compile-locales || run_locale_gen "${EROOT}/"
+	fi
+
+	# Check for sanity of /etc/nsswitch.conf, take 2
+	if [[ -e ${EROOT}/etc/nsswitch.conf ]] && ! has_version sys-auth/libnss-nis ; then
+		local entry
+		for entry in passwd group shadow; do
+			if egrep -q "^[ \t]*${entry}:.*nis" "${EROOT}"/etc/nsswitch.conf; then
+				ewarn ""
+				ewarn "Your ${EROOT}/etc/nsswitch.conf uses NIS. Support for that has been"
+				ewarn "removed from glibc and is now provided by the package"
+				ewarn "  sys-auth/libnss-nis"
+				ewarn "Install it now to keep your NIS setup working."
+				ewarn ""
+			fi
+		done
+	fi
+}
diff --git a/sys-libs/libcxx/files/6d33362dafb66b3af4717990d9a06450ec13f367.patch b/sys-libs/libcxx/files/6d33362dafb66b3af4717990d9a06450ec13f367.patch
new file mode 100644
index 0000000..e02db86
--- /dev/null
+++ b/sys-libs/libcxx/files/6d33362dafb66b3af4717990d9a06450ec13f367.patch
@@ -0,0 +1,102 @@
+commit 6d33362dafb66b3af4717990d9a06450ec13f367
+Author: Jordan Rupprecht <rupprecht@google.com>
+Date:   Tue Jun 15 07:55:23 2021 -0700
+
+    [libcxx][atomic] Fix failure mapping in compare_exchange_{strong,weak}.
+    
+    https://eel.is/c++draft/atomics.types.operations#23 says: ... the value of failure is order except that a value of `memory_order::acq_rel` shall be replaced by the value `memory_order::acquire` and a value of `memory_order::release` shall be replaced by the value `memory_order::relaxed`.
+    
+    This failure mapping is only handled for `_LIBCPP_HAS_GCC_ATOMIC_IMP`. We are seeing bad code generation for `compare_exchange_strong(cmp, 1, std::memory_order_acq_rel)` when using libc++ in place of libstdc++: https://godbolt.org/z/v3onrrq4G.
+    
+    This was caught by tsan tests after D99434, `[TSAN] Honor failure memory orders in AtomicCAS`, but appears to be an issue in non-tsan code.
+    
+    Reviewed By: ldionne, dvyukov
+    
+    Differential Revision: https://reviews.llvm.org/D103846
+
+diff --git a/libcxx/include/atomic b/libcxx/include/atomic
+index 2f47f6b17b2a..90bed4f94766 100644
+--- a/libcxx/include/atomic
++++ b/libcxx/include/atomic
+@@ -1017,26 +1017,33 @@ _Tp __cxx_atomic_exchange(__cxx_atomic_base_impl<_Tp> * __a, _Tp __value, memory
+     return __c11_atomic_exchange(&__a->__a_value, __value, static_cast<__memory_order_underlying_t>(__order));
+ }
+ 
++_LIBCPP_INLINE_VISIBILITY inline _LIBCPP_CONSTEXPR memory_order __to_failure_order(memory_order __order) {
++  // Avoid switch statement to make this a constexpr.
++  return __order == memory_order_release ? memory_order_relaxed:
++         (__order == memory_order_acq_rel ? memory_order_acquire:
++             __order);
++}
++
+ template<class _Tp>
+ _LIBCPP_INLINE_VISIBILITY
+ bool __cxx_atomic_compare_exchange_strong(__cxx_atomic_base_impl<_Tp> volatile* __a, _Tp* __expected, _Tp __value, memory_order __success, memory_order __failure) _NOEXCEPT {
+-    return __c11_atomic_compare_exchange_strong(&__a->__a_value, __expected, __value, static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__failure));
++    return __c11_atomic_compare_exchange_strong(&__a->__a_value, __expected, __value, static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__to_failure_order(__failure)));
+ }
+ template<class _Tp>
+ _LIBCPP_INLINE_VISIBILITY
+ bool __cxx_atomic_compare_exchange_strong(__cxx_atomic_base_impl<_Tp> * __a, _Tp* __expected, _Tp __value, memory_order __success, memory_order __failure) _NOEXCEPT {
+-    return __c11_atomic_compare_exchange_strong(&__a->__a_value, __expected, __value, static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__failure));
++    return __c11_atomic_compare_exchange_strong(&__a->__a_value, __expected, __value, static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__to_failure_order(__failure)));
+ }
+ 
+ template<class _Tp>
+ _LIBCPP_INLINE_VISIBILITY
+ bool __cxx_atomic_compare_exchange_weak(__cxx_atomic_base_impl<_Tp> volatile* __a, _Tp* __expected, _Tp __value, memory_order __success, memory_order __failure) _NOEXCEPT {
+-    return __c11_atomic_compare_exchange_weak(&__a->__a_value, __expected, __value, static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__failure));
++    return __c11_atomic_compare_exchange_weak(&__a->__a_value, __expected, __value, static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__to_failure_order(__failure)));
+ }
+ template<class _Tp>
+ _LIBCPP_INLINE_VISIBILITY
+ bool __cxx_atomic_compare_exchange_weak(__cxx_atomic_base_impl<_Tp> * __a, _Tp* __expected, _Tp __value, memory_order __success, memory_order __failure) _NOEXCEPT {
+-    return __c11_atomic_compare_exchange_weak(&__a->__a_value, __expected, __value,  static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__failure));
++    return __c11_atomic_compare_exchange_weak(&__a->__a_value, __expected, __value,  static_cast<__memory_order_underlying_t>(__success), static_cast<__memory_order_underlying_t>(__to_failure_order(__failure)));
+ }
+ 
+ template<class _Tp>
+diff --git a/libcxx/test/std/atomics/atomics.general/replace_failure_order_codegen.sh.cpp b/libcxx/test/std/atomics/atomics.general/replace_failure_order_codegen.sh.cpp
+new file mode 100644
+index 000000000000..a4e9e447f2a3
+--- /dev/null
++++ b/libcxx/test/std/atomics/atomics.general/replace_failure_order_codegen.sh.cpp
+@@ -0,0 +1,38 @@
++//===----------------------------------------------------------------------===//
++//
++// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
++// See https://llvm.org/LICENSE.txt for license information.
++// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
++//
++//===----------------------------------------------------------------------===//
++
++// REQUIRES: clang
++// UNSUPPORTED: libcpp-has-no-threads
++
++// Adding "-fsanitize=thread" directly causes many platforms to fail (because
++// they don't support tsan), and causes other sanitizer builds to fail (e.g.
++// asan and tsan don't mix). Instead, require the tsan feature.
++// REQUIRES: tsan
++
++// This test verifies behavior specified by [atomics.types.operations.req]/21:
++//
++//     When only one memory_order argument is supplied, the value of success is
++//     order, and the value of failure is order except that a value of
++//     memory_order_acq_rel shall be replaced by the value memory_order_acquire
++//     and a value of memory_order_release shall be replaced by the value
++//     memory_order_relaxed.
++//
++// This test mirrors replace_failure_order.pass.cpp. However, we also want to
++// verify the codegen is correct. This verifies a bug where memory_order_acq_rel
++// was not being replaced with memory_order_acquire in external
++// TSAN-instrumented tests.
++
++// RUN: %{cxx} -c %s %{flags} %{compile_flags} -O2 -stdlib=libc++ -S -emit-llvm -o %t.ll
++
++#include <atomic>
++
++// Note: libc++ tests do not use on FileCheck.
++// RUN: grep -E "call i32 @__tsan_atomic32_compare_exchange_val\(.*, i32 1, i32 4, i32 2\)" %t.ll
++bool strong_memory_order_acq_rel(std::atomic<int>* a, int cmp) {
++  return a->compare_exchange_strong(cmp, 1, std::memory_order_acq_rel);
++}
diff --git a/sys-libs/libcxx/files/PATCHES.json b/sys-libs/libcxx/files/PATCHES.json
index c91ac1a..419a98b 100644
--- a/sys-libs/libcxx/files/PATCHES.json
+++ b/sys-libs/libcxx/files/PATCHES.json
@@ -33,5 +33,17 @@
         "rel_patch_path": "bab74864168bb5e28ecbc0294fe1095d8da7f569.patch",
         "start_version": 415517,
         "end_version": 417837
+    },
+    {
+        "comment": "[libcxx][atomic] Fix failure mapping in compare_exchange_{strong,weak}.",
+        "rel_patch_path": "6d33362dafb66b3af4717990d9a06450ec13f367.patch",
+        "start_version": 428724,
+        "end_version": 430140
+    },
+    {
+        "comment": "Revert \"[libc++] NFC: Move unwrap_iter to its own header\"",
+        "rel_patch_path": "b13edf6e907b32d0b8da09dfe08fa271638eca3c.patch",
+        "start_version": 428724,
+        "end_version": 428763
     }
-]
\ No newline at end of file
+]
diff --git a/sys-libs/libcxx/files/b13edf6e907b32d0b8da09dfe08fa271638eca3c.patch b/sys-libs/libcxx/files/b13edf6e907b32d0b8da09dfe08fa271638eca3c.patch
new file mode 100644
index 0000000..20714a2
--- /dev/null
+++ b/sys-libs/libcxx/files/b13edf6e907b32d0b8da09dfe08fa271638eca3c.patch
@@ -0,0 +1,193 @@
+commit b13edf6e907b32d0b8da09dfe08fa271638eca3c
+Author: Mark de Wever <koraq@xs4all.nl>
+Date:   Sat May 29 09:50:26 2021 +0200
+
+    Revert "[libc++] NFC: Move unwrap_iter to its own header"
+    
+    This reverts commit 9968896cd62a62b11ac61085534dd598c4bd3c60.
+    
+    This commit seems to cause the build failures of main.
+
+diff --git a/libcxx/include/CMakeLists.txt b/libcxx/include/CMakeLists.txt
+index a38aaee24259..e5ae54b225a8 100644
+--- a/libcxx/include/CMakeLists.txt
++++ b/libcxx/include/CMakeLists.txt
+@@ -1,5 +1,4 @@
+ set(files
+-  __algorithm/unwrap_iter.h
+   __availability
+   __bit_reference
+   __bits
+diff --git a/libcxx/include/__algorithm/unwrap_iter.h b/libcxx/include/__algorithm/unwrap_iter.h
+deleted file mode 100644
+index 70dc22e7be83..000000000000
+--- a/libcxx/include/__algorithm/unwrap_iter.h
++++ /dev/null
+@@ -1,89 +0,0 @@
+-//===----------------------------------------------------------------------===//
+-//
+-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+-// See https://llvm.org/LICENSE.txt for license information.
+-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+-//
+-//===----------------------------------------------------------------------===//
+-
+-#ifndef _LIBCPP___ALGORITHM_UNWRAP_ITER_H
+-#define _LIBCPP___ALGORITHM_UNWRAP_ITER_H
+-
+-#include <__config>
+-#include <__iterator/iterator_traits.h> // __is_cpp17_contiguous_iterator
+-#include <__memory/pointer_traits.h> // __to_address
+-#include <utility>
+-
+-#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
+-#pragma GCC system_header
+-#endif
+-
+-_LIBCPP_PUSH_MACROS
+-#include <__undef_macros>
+-
+-_LIBCPP_BEGIN_NAMESPACE_STD
+-
+-// __unwrap_iter, __rewrap_iter
+-
+-// The job of __unwrap_iter is to lower contiguous iterators (such as
+-// vector<T>::iterator) into pointers, to reduce the number of template
+-// instantiations and to enable pointer-based optimizations e.g. in std::copy.
+-// For iterators that are not contiguous, it must be a no-op.
+-// In debug mode, we don't do this.
+-//
+-// __unwrap_iter is non-constexpr for user-defined iterators whose
+-// `to_address` and/or `operator->` is non-constexpr. This is okay; but we
+-// try to avoid doing __unwrap_iter in constant-evaluated contexts anyway.
+-//
+-// Some algorithms (e.g. std::copy, but not std::sort) need to convert an
+-// "unwrapped" result back into a contiguous iterator. Since contiguous iterators
+-// are random-access, we can do this portably using iterator arithmetic; this
+-// is the job of __rewrap_iter.
+-
+-template <class _Iter, bool = __is_cpp17_contiguous_iterator<_Iter>::value>
+-struct __unwrap_iter_impl {
+-    static _LIBCPP_CONSTEXPR _Iter
+-    __apply(_Iter __i) _NOEXCEPT {
+-        return __i;
+-    }
+-};
+-
+-#if _LIBCPP_DEBUG_LEVEL < 2
+-
+-template <class _Iter>
+-struct __unwrap_iter_impl<_Iter, true> {
+-    static _LIBCPP_CONSTEXPR decltype(_VSTD::__to_address(declval<_Iter>()))
+-    __apply(_Iter __i) _NOEXCEPT {
+-        return _VSTD::__to_address(__i);
+-    }
+-};
+-
+-#endif // _LIBCPP_DEBUG_LEVEL < 2
+-
+-template<class _Iter, class _Impl = __unwrap_iter_impl<_Iter> >
+-inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR
+-decltype(_Impl::__apply(_VSTD::declval<_Iter>()))
+-__unwrap_iter(_Iter __i) _NOEXCEPT
+-{
+-    return _Impl::__apply(__i);
+-}
+-
+-template<class _OrigIter>
+-_OrigIter __rewrap_iter(_OrigIter, _OrigIter __result)
+-{
+-    return __result;
+-}
+-
+-template<class _OrigIter, class _UnwrappedIter>
+-_OrigIter __rewrap_iter(_OrigIter __first, _UnwrappedIter __result)
+-{
+-    // Precondition: __result is reachable from __first
+-    // Precondition: _OrigIter is a contiguous iterator
+-    return __first + (__result - _VSTD::__unwrap_iter(__first));
+-}
+-
+-_LIBCPP_END_NAMESPACE_STD
+-
+-_LIBCPP_POP_MACROS
+-
+-#endif // _LIBCPP___ALGORITHM_UNWRAP_ITER_H
+diff --git a/libcxx/include/algorithm b/libcxx/include/algorithm
+index dbe7d5d64100..65655d70425f 100644
+--- a/libcxx/include/algorithm
++++ b/libcxx/include/algorithm
+@@ -645,7 +645,6 @@ template <class BidirectionalIterator, class Compare>
+ 
+ */
+ 
+-#include <__algorithm/unwrap_iter.h>
+ #include <__config>
+ #include <initializer_list>
+ #include <type_traits>
+@@ -1640,6 +1639,65 @@ search_n(_ForwardIterator __first, _ForwardIterator __last, _Size __count, const
+                            __value_, __equal_to<__v, _Tp>());
+ }
+ 
++// __unwrap_iter, __rewrap_iter
++
++// The job of __unwrap_iter is to lower contiguous iterators (such as
++// vector<T>::iterator) into pointers, to reduce the number of template
++// instantiations and to enable pointer-based optimizations e.g. in std::copy.
++// For iterators that are not contiguous, it must be a no-op.
++// In debug mode, we don't do this.
++//
++// __unwrap_iter is non-constexpr for user-defined iterators whose
++// `to_address` and/or `operator->` is non-constexpr. This is okay; but we
++// try to avoid doing __unwrap_iter in constant-evaluated contexts anyway.
++//
++// Some algorithms (e.g. std::copy, but not std::sort) need to convert an
++// "unwrapped" result back into a contiguous iterator. Since contiguous iterators
++// are random-access, we can do this portably using iterator arithmetic; this
++// is the job of __rewrap_iter.
++
++template <class _Iter, bool = __is_cpp17_contiguous_iterator<_Iter>::value>
++struct __unwrap_iter_impl {
++    static _LIBCPP_CONSTEXPR _Iter
++    __apply(_Iter __i) _NOEXCEPT {
++        return __i;
++    }
++};
++
++#if _LIBCPP_DEBUG_LEVEL < 2
++
++template <class _Iter>
++struct __unwrap_iter_impl<_Iter, true> {
++    static _LIBCPP_CONSTEXPR decltype(_VSTD::__to_address(declval<_Iter>()))
++    __apply(_Iter __i) _NOEXCEPT {
++        return _VSTD::__to_address(__i);
++    }
++};
++
++#endif // _LIBCPP_DEBUG_LEVEL < 2
++
++template<class _Iter, class _Impl = __unwrap_iter_impl<_Iter> >
++inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR
++decltype(_Impl::__apply(declval<_Iter>()))
++__unwrap_iter(_Iter __i) _NOEXCEPT
++{
++    return _Impl::__apply(__i);
++}
++
++template<class _OrigIter>
++_OrigIter __rewrap_iter(_OrigIter, _OrigIter __result)
++{
++    return __result;
++}
++
++template<class _OrigIter, class _UnwrappedIter>
++_OrigIter __rewrap_iter(_OrigIter __first, _UnwrappedIter __result)
++{
++    // Precondition: __result is reachable from __first
++    // Precondition: _OrigIter is a contiguous iterator
++    return __first + (__result - _VSTD::__unwrap_iter(__first));
++}
++
+ // copy
+ 
+ template <class _InputIterator, class _OutputIterator>
diff --git a/sys-libs/libcxx/libcxx-12.0_pre422132-r1.ebuild b/sys-libs/libcxx/libcxx-12.0_pre422132-r1.ebuild
deleted file mode 120000
index 01965b8..0000000
--- a/sys-libs/libcxx/libcxx-12.0_pre422132-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-libcxx-12.0_pre422132.ebuild
\ No newline at end of file
diff --git a/sys-libs/libcxx/libcxx-12.0_pre422132.ebuild b/sys-libs/libcxx/libcxx-12.0_pre422132.ebuild
deleted file mode 100644
index 8ce3d65..0000000
--- a/sys-libs/libcxx/libcxx-12.0_pre422132.ebuild
+++ /dev/null
@@ -1,206 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-# Ninja provides better scalability and cleaner verbose output, and is used
-# throughout all LLVM projects.
-: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
-PYTHON_COMPAT=( python3_6 )
-
-inherit cmake-multilib cros-constants cros-llvm git-2 llvm python-any-r1 toolchain-funcs
-
-DESCRIPTION="New implementation of the C++ standard library, targeting C++11"
-HOMEPAGE="http://libcxx.llvm.org/"
-SRC_URI=""
-
-EGIT_REPO_URI="${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project
-	${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project"
-EGIT_BRANCH=main
-
-LLVM_HASH="cd442157cff4aad209ae532cbf031abbe10bc1df" # r422132
-LLVM_NEXT_HASH="cd442157cff4aad209ae532cbf031abbe10bc1df" # r422132
-
-LICENSE="|| ( UoI-NCSA MIT )"
-SLOT="0"
-KEYWORDS="*"
-IUSE="+compiler-rt cros_host elibc_glibc elibc_musl +libcxxabi libcxxrt libunwind llvm-next llvm-tot msan +static-libs"
-REQUIRED_USE="libunwind? ( || ( libcxxabi libcxxrt ) )
-	?? ( libcxxabi libcxxrt )"
-
-RDEPEND="
-	libcxxabi? ( ${CATEGORY}/libcxxabi[libunwind=,static-libs?,${MULTILIB_USEDEP}] )
-	libcxxrt? ( ${CATEGORY}/libcxxrt[libunwind=,static-libs?,${MULTILIB_USEDEP}] )
-	!libcxxabi? ( !libcxxrt? ( >=sys-devel/gcc-4.7:=[cxx] ) )
-	!cros_host? ( sys-libs/gcc-libs )"
-DEPEND="${RDEPEND}
-	cros_host? ( sys-devel/llvm )
-	app-arch/xz-utils"
-
-python_check_deps() {
-	has_version "dev-python/lit[${PYTHON_USEDEP}]"
-}
-
-src_unpack() {
-	if use llvm-next || use llvm-tot; then
-		export EGIT_COMMIT="${LLVM_NEXT_HASH}"
-	else
-		export EGIT_COMMIT="${LLVM_HASH}"
-	fi
-	git-2_src_unpack
-}
-
-src_prepare() {
-	"${FILESDIR}"/patch_manager/patch_manager.py \
-		--svn_version "$(get_most_recent_revision)" \
-		--patch_metadata_file "${FILESDIR}"/PATCHES.json \
-		--filesdir_path "${FILESDIR}" \
-		--src_path "${S}" || die
-
-	eapply_user
-}
-
-pkg_setup() {
-	setup_cross_toolchain
-	llvm_pkg_setup
-	export CMAKE_USE_DIR="${S}/libcxx"
-}
-
-multilib_src_configure() {
-	# Filter sanitzers flags.
-	filter_sanitizers
-
-	cros_optimize_package_for_speed
-
-	local cxxabi cxxabi_incs
-	if use libcxxabi; then
-		cxxabi=libcxxabi
-		cxxabi_incs="${SYSROOT}/${PREFIX}/include/libcxxabi"
-	elif use libcxxrt; then
-		cxxabi=libcxxrt
-		cxxabi_incs="${EPREFIX}/usr/include/libcxxrt"
-	else
-		local gcc_inc="${EPREFIX}/usr/lib/gcc/${CHOST}/$(gcc-fullversion)/include/g++-v$(gcc-major-version)"
-		cxxabi=libsupc++
-		cxxabi_incs="${gcc_inc};${gcc_inc}/${CHOST}"
-	fi
-	# Use vfpv3 to be able to target non-neon targets.
-	if [[ $(tc-arch) == "arm" ]] ; then
-		append-flags -mfpu=vfpv3
-	fi
-
-	# we want -lgcc_s for unwinder, and for compiler runtime when using
-	# gcc, clang with gcc runtime (or any unknown compiler)
-	local extra_libs=() want_gcc_s=ON
-	if use libunwind || use compiler-rt; then
-		# work-around missing -lunwind upstream
-		use libunwind && extra_libs+=( -lunwind )
-		# if we're using libunwind and clang with compiler-rt, we want
-		# to link to compiler-rt instead of -lgcc_s
-		if tc-is-clang; then
-			# get the full library list out of 'pretend mode'
-			# and grep it for libclang_rt references
-			local args=( $($(tc-getCC) -### -x c - 2>&1 | tail -n 1) )
-			local i
-			for i in "${args[@]}"; do
-				if [[ ${i} == *libclang_rt* ]]; then
-					want_gcc_s=OFF
-					extra_libs+=( "${i}" )
-				fi
-			done
-		fi
-	fi
-
-	local libdir=$(get_libdir)
-	local mycmakeargs=(
-		"-DLLVM_ENABLE_PROJECTS=libcxx"
-		"-DLIBCXX_LIBDIR_SUFFIX=${libdir#lib}"
-		"-DCMAKE_C_COMPILER_WORKS=yes"
-		"-DCMAKE_CXX_COMPILER_WORKS=yes"
-		"-DLIBCXX_ENABLE_SHARED=ON"
-		"-DLIBCXX_ENABLE_STATIC=$(usex static-libs)"
-		"-DLIBCXX_CXX_ABI=${cxxabi}"
-		"-DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi_incs}"
-		# we're using our own mechanism for generating linker scripts
-		"-DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF"
-		"-DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl)"
-		"-DLIBCXX_HAS_GCC_S_LIB=${want_gcc_s}"
-		"-DLIBCXX_USE_COMPILER_RT=$(usex compiler-rt)"
-		"-DLIBCXX_INCLUDE_TESTS=OFF"
-		"-DLIBCXXABI_USE_LLVM_UNWINDER=$(usex libunwind)"
-		"-DCMAKE_INSTALL_PREFIX=${PREFIX}"
-		"-DCMAKE_SHARED_LINKER_FLAGS=${extra_libs[*]} ${LDFLAGS}"
-	)
-
-	# Building 32-bit libc++ on host requires using host compiler
-	# with LIBCXX_BUILD_32_BITS flag enabled.
-	if use cros_host; then
-		if [[ "${CATEGORY}" != "cross-*" && "$(get_abi_CTARGET)" == "i686"* ]]; then
-			CC="$(tc-getBUILD_CC)"
-			CXX="$(tc-getBUILD_CXX)"
-			mycmakeargs+=(
-				"-DLIBCXX_BUILD_32_BITS=ON"
-			)
-		fi
-	fi
-	if use msan; then
-		mycmakeargs+=(
-			"-DLLVM_USE_SANITIZER=Memory"
-		)
-	fi
-
-	cmake-utils_src_configure
-}
-
-# Usage: deps
-gen_ldscript() {
-	local output_format
-	output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p')
-	[[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )"
-
-	cat <<-END_LDSCRIPT
-/* GNU ld script
-	Include missing dependencies
-*/
-${output_format}
-GROUP ( $@ )
-END_LDSCRIPT
-}
-
-gen_static_ldscript() {
-	local libdir=$(get_libdir)
-	local cxxabi_lib=$(usex libcxxabi "libc++abi.a" "$(usex libcxxrt "libcxxrt.a" "libsupc++.a")")
-
-	# Move it first.
-	mv "${ED}/${PREFIX}/${libdir}/libc++.a" "${ED}/${PREFIX}/${libdir}/libc++_static.a" || die
-	# Generate libc++.a ldscript for inclusion of its dependencies so that
-	# clang++ -stdlib=libc++ -static works out of the box.
-	local deps="libc++_static.a ${cxxabi_lib} $(usex libunwind libunwind.a libgcc_eh.a)"
-	# On Linux/glibc it does not link without libpthread or libdl. It is
-	# fine on FreeBSD.
-	use elibc_glibc && deps+=" libpthread.a libdl.a"
-
-	gen_ldscript "${deps}" > "${ED}/${PREFIX}/${libdir}/libc++.a" || die
-}
-
-gen_shared_ldscript() {
-	local libdir=$(get_libdir)
-	# libsupc++ doesn't have a shared version
-	local cxxabi_lib=$(usex libcxxabi "libc++abi.so" "$(usex libcxxrt "libcxxrt.so" "libsupc++.a")")
-	mv "${ED}/${PREFIX}/${libdir}/libc++.so" "${ED}/${PREFIX}/${libdir}/libc++_shared.so" || die
-	local deps="libc++_shared.so ${cxxabi_lib} $(usex compiler-rt '' $(usex libunwind libunwind.so libgcc_s.so))"
-
-	gen_ldscript "${deps}" > "${ED}/${PREFIX}/${libdir}/libc++.so" || die
-}
-
-multilib_src_install() {
-	cmake-utils_src_install
-	gen_shared_ldscript
-	use static-libs && gen_static_ldscript
-}
-
-multilib_src_install_all() {
-	if [[ ${CATEGORY} == cross-* ]]; then
-		rm -r "${ED}/usr/share/doc"
-	fi
-}
diff --git a/sys-libs/libcxx/libcxx-13.0_pre428724-r3.ebuild b/sys-libs/libcxx/libcxx-13.0_pre428724-r3.ebuild
new file mode 120000
index 0000000..632a50b
--- /dev/null
+++ b/sys-libs/libcxx/libcxx-13.0_pre428724-r3.ebuild
@@ -0,0 +1 @@
+libcxx-13.0_pre428724.ebuild
\ No newline at end of file
diff --git a/sys-libs/libcxx/libcxx-13.0_pre428724.ebuild b/sys-libs/libcxx/libcxx-13.0_pre428724.ebuild
new file mode 100644
index 0000000..535e543
--- /dev/null
+++ b/sys-libs/libcxx/libcxx-13.0_pre428724.ebuild
@@ -0,0 +1,210 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+# Ninja provides better scalability and cleaner verbose output, and is used
+# throughout all LLVM projects.
+: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
+PYTHON_COMPAT=( python3_6 )
+
+inherit cmake-multilib cros-constants cros-llvm git-2 llvm python-any-r1 toolchain-funcs
+
+DESCRIPTION="New implementation of the C++ standard library, targeting C++11"
+HOMEPAGE="http://libcxx.llvm.org/"
+SRC_URI=""
+
+EGIT_REPO_URI="${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project
+	${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project"
+EGIT_BRANCH=main
+
+LLVM_HASH="9968896cd62a62b11ac61085534dd598c4bd3c60" # r428724
+LLVM_NEXT_HASH="0fe7531b75e54909a7cb7f7080634ab2053964ad" # r433403
+
+LICENSE="|| ( UoI-NCSA MIT )"
+SLOT="0"
+KEYWORDS="*"
+IUSE="+compiler-rt cros_host elibc_glibc elibc_musl +libcxxabi libcxxrt libunwind llvm-next llvm-tot msan +static-libs"
+REQUIRED_USE="libunwind? ( || ( libcxxabi libcxxrt ) )
+	?? ( libcxxabi libcxxrt )"
+
+RDEPEND="
+	libcxxabi? ( ${CATEGORY}/libcxxabi[libunwind=,static-libs?,${MULTILIB_USEDEP}] )
+	libcxxrt? ( ${CATEGORY}/libcxxrt[libunwind=,static-libs?,${MULTILIB_USEDEP}] )
+	!libcxxabi? ( !libcxxrt? ( >=sys-devel/gcc-4.7:=[cxx] ) )
+	!cros_host? ( sys-libs/gcc-libs )"
+DEPEND="${RDEPEND}
+	cros_host? ( sys-devel/llvm )
+	app-arch/xz-utils"
+
+python_check_deps() {
+	has_version "dev-python/lit[${PYTHON_USEDEP}]"
+}
+
+src_unpack() {
+	if use llvm-next || use llvm-tot; then
+		export EGIT_COMMIT="${LLVM_NEXT_HASH}"
+	else
+		export EGIT_COMMIT="${LLVM_HASH}"
+	fi
+	git-2_src_unpack
+}
+
+src_prepare() {
+	"${FILESDIR}"/patch_manager/patch_manager.py \
+		--svn_version "$(get_most_recent_revision)" \
+		--patch_metadata_file "${FILESDIR}"/PATCHES.json \
+		--filesdir_path "${FILESDIR}" \
+		--src_path "${S}" || die
+
+	eapply_user
+}
+
+pkg_setup() {
+	setup_cross_toolchain
+	llvm_pkg_setup
+	export CMAKE_USE_DIR="${S}/libcxx"
+}
+
+multilib_src_configure() {
+	# Filter sanitzers flags.
+	filter_sanitizers
+
+	cros_optimize_package_for_speed
+
+	local cxxabi cxxabi_incs
+	if use libcxxabi; then
+		cxxabi=libcxxabi
+		cxxabi_incs="${SYSROOT}/${PREFIX}/include/libcxxabi"
+	elif use libcxxrt; then
+		cxxabi=libcxxrt
+		cxxabi_incs="${EPREFIX}/usr/include/libcxxrt"
+	else
+		local gcc_inc="${EPREFIX}/usr/lib/gcc/${CHOST}/$(gcc-fullversion)/include/g++-v$(gcc-major-version)"
+		cxxabi=libsupc++
+		cxxabi_incs="${gcc_inc};${gcc_inc}/${CHOST}"
+	fi
+	# Use vfpv3 to be able to target non-neon targets.
+	if [[ $(tc-arch) == "arm" ]] ; then
+		append-flags -mfpu=vfpv3
+	fi
+
+	# we want -lgcc_s for unwinder, and for compiler runtime when using
+	# gcc, clang with gcc runtime (or any unknown compiler)
+	local extra_libs=() want_gcc_s=ON
+	if use libunwind || use compiler-rt; then
+		# work-around missing -lunwind upstream
+		use libunwind && extra_libs+=( -lunwind )
+		# if we're using libunwind and clang with compiler-rt, we want
+		# to link to compiler-rt instead of -lgcc_s
+		if tc-is-clang; then
+			# get the full library list out of 'pretend mode'
+			# and grep it for libclang_rt references
+			local args=( $($(tc-getCC) -### -x c - 2>&1 | tail -n 1) )
+			local i
+			for i in "${args[@]}"; do
+				if [[ ${i} == *libclang_rt* ]]; then
+					want_gcc_s=OFF
+					extra_libs+=( "${i}" )
+				fi
+			done
+		fi
+	fi
+
+	# Link with libunwind.so.
+	use libunwind && append-ldflags "-shared-libgcc"
+
+	local libdir=$(get_libdir)
+	local mycmakeargs=(
+		"-DLLVM_ENABLE_PROJECTS=libcxx"
+		"-DLIBCXX_LIBDIR_SUFFIX=${libdir#lib}"
+		"-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
+		"-DCMAKE_POSITION_INDEPENDENT_CODE=ON"
+		"-DLIBCXX_ENABLE_SHARED=ON"
+		"-DLIBCXX_ENABLE_STATIC=$(usex static-libs)"
+		"-DLIBCXX_CXX_ABI=${cxxabi}"
+		"-DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi_incs}"
+		# we're using our own mechanism for generating linker scripts
+		"-DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF"
+		"-DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl)"
+		"-DLIBCXX_HAS_GCC_S_LIB=${want_gcc_s}"
+		"-DLIBCXX_USE_COMPILER_RT=$(usex compiler-rt)"
+		"-DLIBCXX_INCLUDE_TESTS=OFF"
+		"-DLIBCXXABI_USE_LLVM_UNWINDER=$(usex libunwind)"
+		"-DCMAKE_INSTALL_PREFIX=${PREFIX}"
+		"-DCMAKE_SHARED_LINKER_FLAGS=${extra_libs[*]} ${LDFLAGS}"
+		"-DLIBCXX_HAS_ATOMIC_LIB=OFF"
+	)
+
+	# Building 32-bit libc++ on host requires using host compiler
+	# with LIBCXX_BUILD_32_BITS flag enabled.
+	if use cros_host; then
+		if [[ "${CATEGORY}" != "cross-"* && "$(get_abi_CTARGET)" == "i686"* ]]; then
+			CC="$(tc-getBUILD_CC)"
+			CXX="$(tc-getBUILD_CXX)"
+			mycmakeargs+=(
+				"-DLIBCXX_BUILD_32_BITS=ON"
+			)
+		fi
+	fi
+	if use msan; then
+		mycmakeargs+=(
+			"-DLLVM_USE_SANITIZER=Memory"
+		)
+	fi
+
+	cmake-utils_src_configure
+}
+
+# Usage: deps
+gen_ldscript() {
+	local output_format
+	output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p')
+	[[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )"
+
+	cat <<-END_LDSCRIPT
+/* GNU ld script
+	Include missing dependencies
+*/
+${output_format}
+GROUP ( $@ )
+END_LDSCRIPT
+}
+
+gen_static_ldscript() {
+	local libdir=$(get_libdir)
+	local cxxabi_lib=$(usex libcxxabi "libc++abi.a" "$(usex libcxxrt "libcxxrt.a" "libsupc++.a")")
+
+	# Move it first.
+	mv "${ED}/${PREFIX}/${libdir}/libc++.a" "${ED}/${PREFIX}/${libdir}/libc++_static.a" || die
+	# Generate libc++.a ldscript for inclusion of its dependencies so that
+	# clang++ -stdlib=libc++ -static works out of the box.
+	local deps="libc++_static.a ${cxxabi_lib} $(usex libunwind libunwind.a libgcc_eh.a)"
+	# On Linux/glibc it does not link without libpthread or libdl. It is
+	# fine on FreeBSD.
+	use elibc_glibc && deps+=" libpthread.a libdl.a"
+
+	gen_ldscript "${deps}" > "${ED}/${PREFIX}/${libdir}/libc++.a" || die
+}
+
+gen_shared_ldscript() {
+	local libdir=$(get_libdir)
+	# libsupc++ doesn't have a shared version
+	local cxxabi_lib=$(usex libcxxabi "libc++abi.so" "$(usex libcxxrt "libcxxrt.so" "libsupc++.a")")
+	mv "${ED}/${PREFIX}/${libdir}/libc++.so" "${ED}/${PREFIX}/${libdir}/libc++_shared.so" || die
+	local deps="libc++_shared.so ${cxxabi_lib} $(usex compiler-rt '' $(usex libunwind libunwind.so libgcc_s.so))"
+
+	gen_ldscript "${deps}" > "${ED}/${PREFIX}/${libdir}/libc++.so" || die
+}
+
+multilib_src_install() {
+	cmake-utils_src_install
+	gen_shared_ldscript
+	use static-libs && gen_static_ldscript
+}
+
+multilib_src_install_all() {
+	if [[ ${CATEGORY} == cross-* ]]; then
+		rm -r "${ED}/usr/share/doc"
+	fi
+}
diff --git a/sys-libs/libcxxabi/files/PATCHES.json b/sys-libs/libcxxabi/files/PATCHES.json
index b6b46c2..4faf691 100644
--- a/sys-libs/libcxxabi/files/PATCHES.json
+++ b/sys-libs/libcxxabi/files/PATCHES.json
@@ -2,6 +2,12 @@
     {
         "comment": "Link libcxx with gcc_eh when linking with gcc_s is not desired",
         "rel_patch_path": "libcxxabi-7-use-libgcc_eh.patch",
-	"end_version": 419078
+        "end_version": 419078
+    },
+    {
+        "comment": "[Arm][Unwind][libc++abi] Add _Unwind_ForcedUnwind to EHABI.",
+        "rel_patch_path": "db126ae243cd70e4f68fd50a7c619740e90e1dc6.patch",
+        "start_version": 422132,
+        "end_version": 435269
     }
 ]
diff --git a/sys-libs/libcxxabi/files/db126ae243cd70e4f68fd50a7c619740e90e1dc6.patch b/sys-libs/libcxxabi/files/db126ae243cd70e4f68fd50a7c619740e90e1dc6.patch
new file mode 100644
index 0000000..0a40197
--- /dev/null
+++ b/sys-libs/libcxxabi/files/db126ae243cd70e4f68fd50a7c619740e90e1dc6.patch
@@ -0,0 +1,76 @@
+commit db126ae243cd70e4f68fd50a7c619740e90e1dc6
+Author: Daniel Kiss <daniel.kiss@arm.com>
+Date:   Wed Aug 11 10:11:30 2021 +0200
+
+    [Arm][Unwind][libc++abi] Add _Unwind_ForcedUnwind to EHABI.
+    
+    _Unwind_ForcedUnwind is not mandated by the EHABI but for compatibilty
+    reasons adding so the interface to higher layers would be the same.
+    Dropping EHABI specific _Unwind_Stop_Fn definition since it is not defined by EHABI.
+    
+    Reviewed By: MaskRay
+    
+    Differential Revision: https://reviews.llvm.org/D89570
+
+diff --git a/libcxxabi/src/cxa_personality.cpp b/libcxxabi/src/cxa_personality.cpp
+index a4f81d74735f..d63741b19b3d 100644
+--- a/libcxxabi/src/cxa_personality.cpp
++++ b/libcxxabi/src/cxa_personality.cpp
+@@ -1109,7 +1109,14 @@ __gxx_personality_v0(_Unwind_State state,
+         // Either we didn't do a phase 1 search (due to forced unwinding), or
+         //  phase 1 reported no catching-handlers.
+         // Search for a (non-catching) cleanup
+-        scan_eh_tab(results, _UA_CLEANUP_PHASE, native_exception, unwind_exception, context);
++        if (is_force_unwinding)
++          scan_eh_tab(
++              results,
++              static_cast<_Unwind_Action>(_UA_CLEANUP_PHASE | _UA_FORCE_UNWIND),
++              native_exception, unwind_exception, context);
++        else
++          scan_eh_tab(results, _UA_CLEANUP_PHASE, native_exception,
++                      unwind_exception, context);
+         if (results.reason == _URC_HANDLER_FOUND)
+         {
+             // Found a non-catching handler
+diff --git a/libcxxabi/test/forced_unwind1.pass.cpp b/libcxxabi/test/forced_unwind1.pass.cpp
+index 69f93ffaacc0..b6963a024299 100644
+--- a/libcxxabi/test/forced_unwind1.pass.cpp
++++ b/libcxxabi/test/forced_unwind1.pass.cpp
+@@ -20,11 +20,6 @@
+ #include <tuple>
+ #include <__cxxabi_config.h>
+ 
+-#if defined(_LIBCXXABI_ARM_EHABI)
+-int main(int, char**) {
+-  return 0;
+-}
+-#else
+ static int bits = 0;
+ 
+ struct C {
+@@ -84,4 +79,3 @@ int main(int, char**) {
+   test();
+   return bits != 15;
+ }
+-#endif
+diff --git a/libcxxabi/test/forced_unwind2.pass.cpp b/libcxxabi/test/forced_unwind2.pass.cpp
+index cb527581687a..037f0499282f 100644
+--- a/libcxxabi/test/forced_unwind2.pass.cpp
++++ b/libcxxabi/test/forced_unwind2.pass.cpp
+@@ -21,11 +21,6 @@
+ #include <tuple>
+ #include <__cxxabi_config.h>
+ 
+-#if defined(_LIBCXXABI_ARM_EHABI)
+-int main(int, char**) {
+-  return 0;
+-}
+-#else
+ template <typename T>
+ struct Stop;
+ 
+@@ -64,4 +59,3 @@ int main(int, char**) {
+   }
+   abort();
+ }
+-#endif
diff --git a/sys-libs/libcxxabi/libcxxabi-12.0_pre422132-r1.ebuild b/sys-libs/libcxxabi/libcxxabi-12.0_pre422132-r1.ebuild
deleted file mode 120000
index 7848deb..0000000
--- a/sys-libs/libcxxabi/libcxxabi-12.0_pre422132-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-libcxxabi-12.0_pre422132.ebuild
\ No newline at end of file
diff --git a/sys-libs/libcxxabi/libcxxabi-12.0_pre422132.ebuild b/sys-libs/libcxxabi/libcxxabi-12.0_pre422132.ebuild
deleted file mode 100644
index ba0c902..0000000
--- a/sys-libs/libcxxabi/libcxxabi-12.0_pre422132.ebuild
+++ /dev/null
@@ -1,158 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
-PYTHON_COMPAT=( python3_6 )
-
-inherit cmake-multilib cros-constants cros-llvm flag-o-matic git-2 llvm python-any-r1
-
-DESCRIPTION="Low level support for a standard C++ library"
-HOMEPAGE="http://libcxxabi.llvm.org/"
-
-SRC_URI=""
-EGIT_REPO_URI="${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project
-	${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project"
-EGIT_BRANCH=main
-
-LLVM_HASH="cd442157cff4aad209ae532cbf031abbe10bc1df" # r422132
-LLVM_NEXT_HASH="cd442157cff4aad209ae532cbf031abbe10bc1df" # r422132
-
-LICENSE="|| ( UoI-NCSA MIT )"
-SLOT="0"
-KEYWORDS="*"
-IUSE="+compiler-rt cros_host libunwind msan llvm-next llvm-tot +static-libs"
-
-RDEPEND="
-	libunwind? (
-			|| (
-				>=${CATEGORY}/libunwind-1[static-libs?,${MULTILIB_USEDEP}]
-				>=${CATEGORY}/llvm-libunwind-3.9.0-r1[static-libs?,${MULTILIB_USEDEP}]
-			)
-	)
-	!cros_host? ( sys-libs/gcc-libs )"
-
-DEPEND="${RDEPEND}
-	cros_host? ( sys-devel/llvm )"
-
-python_check_deps() {
-	has_version "dev-python/lit[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
-	setup_cross_toolchain
-	llvm_pkg_setup
-	export CMAKE_USE_DIR="${S}/libcxxabi"
-}
-
-src_unpack() {
-	if use llvm-next || use llvm-tot; then
-		export EGIT_COMMIT="${LLVM_NEXT_HASH}"
-	else
-		export EGIT_COMMIT="${LLVM_HASH}"
-	fi
-	git-2_src_unpack
-}
-
-src_prepare() {
-	"${FILESDIR}"/patch_manager/patch_manager.py \
-		--svn_version "$(get_most_recent_revision)" \
-		--patch_metadata_file "${FILESDIR}"/PATCHES.json \
-		--filesdir_path "${FILESDIR}" \
-		--src_path "${S}" || die
-
-	eapply_user
-}
-
-multilib_src_configure() {
-	# Filter sanitzers flags.
-	filter_sanitizers
-	# Use vpfv3 fpu to be able to target non-neon targets.
-	if [[ $(tc-arch) == "arm" ]] ; then
-		append-flags -mfpu=vfpv3
-	fi
-	append-flags -I"${S}/libunwind/include"
-	# Enable futex in libc++abi to match prod toolchain.
-	append-cppflags -D_LIBCXXABI_USE_FUTEX
-	local libdir=$(get_libdir)
-	local mycmakeargs=(
-		"-DLLVM_ENABLE_PROJECTS=libcxxabi"
-		"-DCMAKE_C_COMPILER_WORKS=yes"
-		"-DCMAKE_CXX_COMPILER_WORKS=yes"
-		"-DLIBCXXABI_LIBDIR_SUFFIX=${libdir#lib}"
-		"-DLIBCXXABI_ENABLE_SHARED=ON"
-		"-DLIBCXXABI_ENABLE_STATIC=$(usex static-libs)"
-		"-DLIBCXXABI_USE_LLVM_UNWINDER=$(usex libunwind)"
-		"-DLIBCXXABI_INCLUDE_TESTS=OFF"
-		"-DCMAKE_INSTALL_PREFIX=${PREFIX}"
-		"-DLIBCXXABI_LIBCXX_INCLUDES=libcxx_build/include/c++/v1"
-		"-DLIBCXXABI_USE_COMPILER_RT=$(usex compiler-rt)"
-	)
-
-	# Update LLVM to 9.0 will cause LLVM to complain
-	# libstdc++ version is old. Add this flag as suggested in the error
-	# message.
-	mycmakeargs+=(
-		"-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1"
-	)
-
-	# Building 32-bit libc++abi on host requires using host compiler
-	# with LIBCXXABI_BUILD_32_BITS flag enabled.
-	if use cros_host; then
-		if [[ "${CATEGORY}" != "cross-*" && "$(get_abi_CTARGET)" == "i686"* ]]; then
-			CC="$(tc-getBUILD_CC)"
-			CXX="$(tc-getBUILD_CXX)"
-			mycmakeargs+=(
-				"-DLIBCXXABI_BUILD_32_BITS=ON"
-			)
-		fi
-	fi
-
-	if use msan; then
-		mycmakeargs+=(
-			"-DLLVM_USE_SANITIZER=Memory"
-		)
-	fi
-
-	libcxx_configure
-	cmake-utils_src_configure
-}
-
-# Works around libcxx/libcxxabi cyclic dependency where libcxx needs libcxxabi,
-# but libcxxabi needs libcxx headers by generating the libcxx headers for
-# libcxxabi.
-libcxx_configure() {
-	mkdir -p libcxx_build
-	cd libcxx_build || die
-	local libdir=$(get_libdir)
-	local mycmakeargs=(
-		"-DLLVM_ENABLE_PROJECTS=libcxx"
-		"-DLIBCXX_LIBDIR_SUFFIX=${libdir#lib}"
-		"-DCMAKE_C_COMPILER_WORKS=yes"
-		"-DCMAKE_CXX_COMPILER_WORKS=yes"
-		"-DLIBCXX_ENABLE_SHARED=ON"
-		"-DLIBCXX_ENABLE_STATIC=yes"
-		"-DLIBCXX_CXX_ABI=libcxxabi"
-		# we're using our own mechanism for generating linker scripts
-		"-DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF"
-		"-DLIBCXX_HAS_MUSL_LIBC=off"
-		"-DLIBCXX_HAS_GCC_S_LIB=no"
-		"-DLIBCXX_USE_COMPILER_RT=yes"
-		"-DLIBCXX_INCLUDE_TESTS=OFF"
-		"-DLIBCXXABI_USE_LLVM_UNWINDER=$(usex libunwind)"
-		"-DCMAKE_INSTALL_PREFIX=${PREFIX}"
-	)
-	cmake -GNinja "${S}/libcxx" "${mycmakeargs[@]}"
-	ninja generate-cxx-headers
-	cd .. || die
-}
-
-multilib_src_install_all() {
-	if [[ ${CATEGORY} == cross-* ]]; then
-		rm -r "${ED}/usr/share/doc"
-	fi
-	insinto "${PREFIX}"/include/libcxxabi
-	doins -r "${S}"/libcxxabi/include/.
-}
-
diff --git a/sys-libs/libcxxabi/libcxxabi-13.0_pre428724-r3.ebuild b/sys-libs/libcxxabi/libcxxabi-13.0_pre428724-r3.ebuild
new file mode 120000
index 0000000..5a93b0a
--- /dev/null
+++ b/sys-libs/libcxxabi/libcxxabi-13.0_pre428724-r3.ebuild
@@ -0,0 +1 @@
+libcxxabi-13.0_pre428724.ebuild
\ No newline at end of file
diff --git a/sys-libs/libcxxabi/libcxxabi-13.0_pre428724.ebuild b/sys-libs/libcxxabi/libcxxabi-13.0_pre428724.ebuild
new file mode 100644
index 0000000..8525918
--- /dev/null
+++ b/sys-libs/libcxxabi/libcxxabi-13.0_pre428724.ebuild
@@ -0,0 +1,162 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
+PYTHON_COMPAT=( python3_6 )
+
+inherit cmake-multilib cros-constants cros-llvm flag-o-matic git-2 llvm python-any-r1
+
+DESCRIPTION="Low level support for a standard C++ library"
+HOMEPAGE="http://libcxxabi.llvm.org/"
+
+SRC_URI=""
+EGIT_REPO_URI="${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project
+	${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project"
+EGIT_BRANCH=main
+
+LLVM_HASH="9968896cd62a62b11ac61085534dd598c4bd3c60" # r428724
+LLVM_NEXT_HASH="0fe7531b75e54909a7cb7f7080634ab2053964ad" # r433403
+
+LICENSE="|| ( UoI-NCSA MIT )"
+SLOT="0"
+KEYWORDS="*"
+IUSE="+compiler-rt cros_host libunwind msan llvm-next llvm-tot +static-libs"
+
+RDEPEND="
+	libunwind? (
+			|| (
+				>=${CATEGORY}/libunwind-1[static-libs?,${MULTILIB_USEDEP}]
+				>=${CATEGORY}/llvm-libunwind-3.9.0-r1[static-libs?,${MULTILIB_USEDEP}]
+			)
+	)
+	!cros_host? ( sys-libs/gcc-libs )"
+
+DEPEND="${RDEPEND}
+	cros_host? ( sys-devel/llvm )"
+
+python_check_deps() {
+	has_version "dev-python/lit[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+	setup_cross_toolchain
+	llvm_pkg_setup
+	export CMAKE_USE_DIR="${S}/libcxxabi"
+}
+
+src_unpack() {
+	if use llvm-next || use llvm-tot; then
+		export EGIT_COMMIT="${LLVM_NEXT_HASH}"
+	else
+		export EGIT_COMMIT="${LLVM_HASH}"
+	fi
+	git-2_src_unpack
+}
+
+src_prepare() {
+	"${FILESDIR}"/patch_manager/patch_manager.py \
+		--svn_version "$(get_most_recent_revision)" \
+		--patch_metadata_file "${FILESDIR}"/PATCHES.json \
+		--filesdir_path "${FILESDIR}" \
+		--src_path "${S}" || die
+
+	eapply_user
+}
+
+multilib_src_configure() {
+	# Filter sanitzers flags.
+	filter_sanitizers
+	# Use vpfv3 fpu to be able to target non-neon targets.
+	if [[ $(tc-arch) == "arm" ]] ; then
+		append-flags -mfpu=vfpv3
+	fi
+	append-flags -I"${S}/libunwind/include"
+	# Enable futex in libc++abi to match prod toolchain.
+	append-cppflags -D_LIBCXXABI_USE_FUTEX
+	local libdir=$(get_libdir)
+	local mycmakeargs=(
+		"-DLLVM_ENABLE_PROJECTS=libcxxabi"
+		"-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
+		"-DCMAKE_POSITION_INDEPENDENT_CODE=ON"
+		"-DLIBCXXABI_LIBDIR_SUFFIX=${libdir#lib}"
+		"-DLIBCXXABI_ENABLE_SHARED=ON"
+		"-DLIBCXXABI_ENABLE_STATIC=$(usex static-libs)"
+		"-DLIBCXXABI_USE_LLVM_UNWINDER=$(usex libunwind)"
+		"-DLIBCXXABI_INCLUDE_TESTS=OFF"
+		"-DCMAKE_INSTALL_PREFIX=${PREFIX}"
+		"-DLIBCXXABI_LIBCXX_INCLUDES=libcxx_build/include/c++/v1"
+		"-DLIBCXXABI_USE_COMPILER_RT=$(usex compiler-rt)"
+	)
+
+	# Update LLVM to 9.0 will cause LLVM to complain
+	# libstdc++ version is old. Add this flag as suggested in the error
+	# message.
+	mycmakeargs+=(
+		"-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1"
+	)
+
+	# Building 32-bit libc++abi on host requires using host compiler
+	# with LIBCXXABI_BUILD_32_BITS flag enabled.
+	if use cros_host; then
+		if [[ "${CATEGORY}" != "cross-"* && "$(get_abi_CTARGET)" == "i686"* ]]; then
+			CC="$(tc-getBUILD_CC)"
+			CXX="$(tc-getBUILD_CXX)"
+			mycmakeargs+=(
+				"-DLIBCXXABI_BUILD_32_BITS=ON"
+			)
+		fi
+	fi
+
+	if use msan; then
+		mycmakeargs+=(
+			"-DLLVM_USE_SANITIZER=Memory"
+		)
+	fi
+
+	libcxx_configure
+
+	# Link with libunwind.so.
+	use libunwind && append-ldflags "-shared-libgcc"
+	cmake-utils_src_configure
+}
+
+# Works around libcxx/libcxxabi cyclic dependency where libcxx needs libcxxabi,
+# but libcxxabi needs libcxx headers by generating the libcxx headers for
+# libcxxabi.
+libcxx_configure() {
+	mkdir -p libcxx_build
+	cd libcxx_build || die
+	local libdir=$(get_libdir)
+	local mycmakeargs=(
+		"-DLLVM_ENABLE_PROJECTS=libcxx"
+		"-DLIBCXX_LIBDIR_SUFFIX=${libdir#lib}"
+		"-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
+		"-DCMAKE_POSITION_INDEPENDENT_CODE=ON"
+		"-DLIBCXX_ENABLE_SHARED=ON"
+		"-DLIBCXX_ENABLE_STATIC=yes"
+		"-DLIBCXX_CXX_ABI=libcxxabi"
+		# we're using our own mechanism for generating linker scripts
+		"-DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF"
+		"-DLIBCXX_HAS_MUSL_LIBC=off"
+		"-DLIBCXX_HAS_GCC_S_LIB=no"
+		"-DLIBCXX_USE_COMPILER_RT=yes"
+		"-DLIBCXX_INCLUDE_TESTS=OFF"
+		"-DLIBCXX_HAS_ATOMIC_LIB=OFF"
+		"-DLIBCXXABI_USE_LLVM_UNWINDER=$(usex libunwind)"
+		"-DCMAKE_INSTALL_PREFIX=${PREFIX}"
+	)
+	cmake -GNinja "${S}/libcxx" "${mycmakeargs[@]}"
+	ninja generate-cxx-headers || die
+	cd .. || die
+}
+
+multilib_src_install_all() {
+	if [[ ${CATEGORY} == cross-* ]]; then
+		rm -r "${ED}/usr/share/doc"
+	fi
+	insinto "${PREFIX}"/include/libcxxabi
+	doins -r "${S}"/libcxxabi/include/.
+}
+
diff --git a/sys-libs/llvm-libunwind/files/08a5ac36b956edeb989b4a65269a829eac26a5a2.patch b/sys-libs/llvm-libunwind/files/08a5ac36b956edeb989b4a65269a829eac26a5a2.patch
new file mode 100644
index 0000000..b0b786d
--- /dev/null
+++ b/sys-libs/llvm-libunwind/files/08a5ac36b956edeb989b4a65269a829eac26a5a2.patch
@@ -0,0 +1,30 @@
+commit 08a5ac36b956edeb989b4a65269a829eac26a5a2
+Author: Saleem Abdulrasool <compnerd@compnerd.org>
+Date:   Tue Aug 10 17:45:31 2021 +0000
+
+    libunwind: add missing break statements in EHABI
+    
+    Add missing break statements identified by static analysis tools.
+    
+    Patch by Andrii Kurdiumov!
+    
+    Reviewed By: compnerd, danielkiss
+    
+    Differential Revision: https://reviews.llvm.org/D107537
+
+diff --git a/libunwind/src/Unwind-EHABI.cpp b/libunwind/src/Unwind-EHABI.cpp
+index 32b5cbc3be92..8843db7f54c3 100644
+--- a/libunwind/src/Unwind-EHABI.cpp
++++ b/libunwind/src/Unwind-EHABI.cpp
+@@ -97,9 +97,11 @@ _Unwind_Reason_Code ProcessDescriptors(
+       case Descriptor::LU32:
+         descriptor = getNextWord(descriptor, &length);
+         descriptor = getNextWord(descriptor, &offset);
++        break;
+       case Descriptor::LU16:
+         descriptor = getNextNibble(descriptor, &length);
+         descriptor = getNextNibble(descriptor, &offset);
++        break;
+       default:
+         assert(false);
+         return _URC_FAILURE;
diff --git a/sys-libs/llvm-libunwind/files/6b6d3447317673015f62206b2669c2d0a74132dc.patch b/sys-libs/llvm-libunwind/files/6b6d3447317673015f62206b2669c2d0a74132dc.patch
new file mode 100644
index 0000000..e24933d
--- /dev/null
+++ b/sys-libs/llvm-libunwind/files/6b6d3447317673015f62206b2669c2d0a74132dc.patch
@@ -0,0 +1,148 @@
+commit 6b6d3447317673015f62206b2669c2d0a74132dc
+Author: Daniel Kiss <daniel.kiss@arm.com>
+Date:   Wed Aug 11 10:11:31 2021 +0200
+
+    [libunwind] Compile with -Wunused-but-set-variable
+    
+    -Wunused-but-set-variable triggers a warning even the block of code is effectively dead.
+    
+    Reviewed By: MaskRay
+    
+    Differential Revision: https://reviews.llvm.org/D107835
+
+diff --git a/libunwind/CMakeLists.txt b/libunwind/CMakeLists.txt
+index b1ef11bf7327..a73f5b0c7bdf 100644
+--- a/libunwind/CMakeLists.txt
++++ b/libunwind/CMakeLists.txt
+@@ -191,6 +191,7 @@ add_compile_flags_if_supported(-Wsign-compare)
+ add_compile_flags_if_supported(-Wsign-conversion)
+ add_compile_flags_if_supported(-Wstrict-aliasing=2)
+ add_compile_flags_if_supported(-Wstrict-overflow=4)
++add_compile_flags_if_supported(-Wunused-but-set-variable)
+ add_compile_flags_if_supported(-Wunused-parameter)
+ add_compile_flags_if_supported(-Wunused-variable)
+ add_compile_flags_if_supported(-Wwrite-strings)
+diff --git a/libunwind/src/Unwind-EHABI.cpp b/libunwind/src/Unwind-EHABI.cpp
+index ba6064d3ef00..a564fd5240dd 100644
+--- a/libunwind/src/Unwind-EHABI.cpp
++++ b/libunwind/src/Unwind-EHABI.cpp
+@@ -463,6 +463,7 @@ unwind_phase1(unw_context_t *uc, unw_cursor_t *cursor, _Unwind_Exception *except
+       return _URC_FATAL_PHASE1_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -481,6 +482,7 @@ unwind_phase1(unw_context_t *uc, unw_cursor_t *cursor, _Unwind_Exception *except
+           frameInfo.start_ip, functionName,
+           frameInfo.lsda, frameInfo.handler);
+     }
++#endif
+ 
+     // If there is a personality routine, ask it if it will want to stop at
+     // this frame.
+@@ -582,6 +584,7 @@ static _Unwind_Reason_Code unwind_phase2(unw_context_t *uc, unw_cursor_t *cursor
+       return _URC_FATAL_PHASE2_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -598,6 +601,7 @@ static _Unwind_Reason_Code unwind_phase2(unw_context_t *uc, unw_cursor_t *cursor
+           functionName, sp, frameInfo.lsda,
+           frameInfo.handler);
+     }
++#endif
+ 
+     // If there is a personality routine, tell it we are unwinding.
+     if (frameInfo.handler != 0) {
+@@ -689,6 +693,7 @@ unwind_phase2_forced(unw_context_t *uc, unw_cursor_t *cursor,
+       return _URC_FATAL_PHASE2_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -704,6 +709,7 @@ unwind_phase2_forced(unw_context_t *uc, unw_cursor_t *cursor,
+           (void *)exception_object, frameInfo.start_ip, functionName,
+           frameInfo.lsda, frameInfo.handler);
+     }
++#endif
+ 
+     // Call stop function at each frame.
+     _Unwind_Action action =
+diff --git a/libunwind/src/Unwind-seh.cpp b/libunwind/src/Unwind-seh.cpp
+index 6e2b4e73e41e..5a6a719730c8 100644
+--- a/libunwind/src/Unwind-seh.cpp
++++ b/libunwind/src/Unwind-seh.cpp
+@@ -244,6 +244,7 @@ unwind_phase2_forced(unw_context_t *uc,
+       return _URC_FATAL_PHASE2_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -259,6 +260,7 @@ unwind_phase2_forced(unw_context_t *uc,
+           (void *)exception_object, frameInfo.start_ip, functionName,
+           frameInfo.lsda, frameInfo.handler);
+     }
++#endif
+ 
+     // Call stop function at each frame.
+     _Unwind_Action action =
+diff --git a/libunwind/src/UnwindLevel1.c b/libunwind/src/UnwindLevel1.c
+index 68e5e48b8c05..8b8797fb88ad 100644
+--- a/libunwind/src/UnwindLevel1.c
++++ b/libunwind/src/UnwindLevel1.c
+@@ -68,6 +68,7 @@ unwind_phase1(unw_context_t *uc, unw_cursor_t *cursor, _Unwind_Exception *except
+       return _URC_FATAL_PHASE1_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -85,6 +86,7 @@ unwind_phase1(unw_context_t *uc, unw_cursor_t *cursor, _Unwind_Exception *except
+           (void *)exception_object, pc, frameInfo.start_ip, functionName,
+           frameInfo.lsda, frameInfo.handler);
+     }
++#endif
+ 
+     // If there is a personality routine, ask it if it will want to stop at
+     // this frame.
+@@ -167,6 +169,7 @@ unwind_phase2(unw_context_t *uc, unw_cursor_t *cursor, _Unwind_Exception *except
+       return _URC_FATAL_PHASE2_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -183,6 +186,7 @@ unwind_phase2(unw_context_t *uc, unw_cursor_t *cursor, _Unwind_Exception *except
+                                  functionName, sp, frameInfo.lsda,
+                                  frameInfo.handler);
+     }
++#endif
+ 
+     // If there is a personality routine, tell it we are unwinding.
+     if (frameInfo.handler != 0) {
+@@ -258,6 +262,7 @@ unwind_phase2_forced(unw_context_t *uc, unw_cursor_t *cursor,
+       return _URC_FATAL_PHASE2_ERROR;
+     }
+ 
++#ifndef NDEBUG
+     // When tracing, print state information.
+     if (_LIBUNWIND_TRACING_UNWINDING) {
+       char functionBuf[512];
+@@ -273,6 +278,7 @@ unwind_phase2_forced(unw_context_t *uc, unw_cursor_t *cursor,
+           (void *)exception_object, frameInfo.start_ip, functionName,
+           frameInfo.lsda, frameInfo.handler);
+     }
++#endif
+ 
+     // Call stop function at each frame.
+     _Unwind_Action action =
diff --git a/sys-libs/llvm-libunwind/files/9ed1c7e4964382b95a5886279c0dfc7147a57b17.patch b/sys-libs/llvm-libunwind/files/9ed1c7e4964382b95a5886279c0dfc7147a57b17.patch
new file mode 100644
index 0000000..97f89c9
--- /dev/null
+++ b/sys-libs/llvm-libunwind/files/9ed1c7e4964382b95a5886279c0dfc7147a57b17.patch
@@ -0,0 +1,512 @@
+commit 9ed1c7e4964382b95a5886279c0dfc7147a57b17
+Author: Daniel Kiss <daniel.kiss@arm.com>
+Date:   Wed Aug 11 10:11:27 2021 +0200
+
+    [Unwind] Split unwind.h
+    
+    Moving Itanium and ArmEHABI specific implementations to dedicated files.
+    This is a NFC patch.
+    
+    Reviewed By: MaskRay
+    
+    Differential Revision: https://reviews.llvm.org/D106461
+
+diff --git a/libunwind/include/unwind.h b/libunwind/include/unwind.h
+index 1d3444cd83b4..e8d114854325 100644
+--- a/libunwind/include/unwind.h
++++ b/libunwind/include/unwind.h
+@@ -56,211 +56,15 @@ typedef enum {
+ typedef struct _Unwind_Context _Unwind_Context;   // opaque
+ 
+ #if defined(_LIBUNWIND_ARM_EHABI)
+-typedef uint32_t _Unwind_State;
+-
+-static const _Unwind_State _US_VIRTUAL_UNWIND_FRAME   = 0;
+-static const _Unwind_State _US_UNWIND_FRAME_STARTING  = 1;
+-static const _Unwind_State _US_UNWIND_FRAME_RESUME    = 2;
+-static const _Unwind_State _US_ACTION_MASK            = 3;
+-/* Undocumented flag for force unwinding. */
+-static const _Unwind_State _US_FORCE_UNWIND           = 8;
+-
+-typedef uint32_t _Unwind_EHT_Header;
+-
+-struct _Unwind_Control_Block;
+-typedef struct _Unwind_Control_Block _Unwind_Control_Block;
+-typedef struct _Unwind_Control_Block _Unwind_Exception; /* Alias */
+-
+-struct _Unwind_Control_Block {
+-  uint64_t exception_class;
+-  void (*exception_cleanup)(_Unwind_Reason_Code, _Unwind_Control_Block*);
+-
+-  /* Unwinder cache, private fields for the unwinder's use */
+-  struct {
+-    uint32_t reserved1; /* init reserved1 to 0, then don't touch */
+-    uint32_t reserved2;
+-    uint32_t reserved3;
+-    uint32_t reserved4;
+-    uint32_t reserved5;
+-  } unwinder_cache;
+-
+-  /* Propagation barrier cache (valid after phase 1): */
+-  struct {
+-    uint32_t sp;
+-    uint32_t bitpattern[5];
+-  } barrier_cache;
+-
+-  /* Cleanup cache (preserved over cleanup): */
+-  struct {
+-    uint32_t bitpattern[4];
+-  } cleanup_cache;
+-
+-  /* Pr cache (for pr's benefit): */
+-  struct {
+-    uint32_t fnstart; /* function start address */
+-    _Unwind_EHT_Header* ehtp; /* pointer to EHT entry header word */
+-    uint32_t additional;
+-    uint32_t reserved1;
+-  } pr_cache;
+-
+-  long long int :0; /* Enforce the 8-byte alignment */
+-} __attribute__((__aligned__(8)));
+-
+-typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
+-      (_Unwind_State state,
+-       _Unwind_Exception* exceptionObject,
+-       struct _Unwind_Context* context);
+-
+-typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
+-    _Unwind_State state, _Unwind_Exception *exceptionObject,
+-    struct _Unwind_Context *context);
+-#else
+-struct _Unwind_Context;   // opaque
+-struct _Unwind_Exception; // forward declaration
+-typedef struct _Unwind_Exception _Unwind_Exception;
+-
+-struct _Unwind_Exception {
+-  uint64_t exception_class;
+-  void (*exception_cleanup)(_Unwind_Reason_Code reason,
+-                            _Unwind_Exception *exc);
+-#if defined(__SEH__) && !defined(__USING_SJLJ_EXCEPTIONS__)
+-  uintptr_t private_[6];
++#include "unwind_arm_ehabi.h"
+ #else
+-  uintptr_t private_1; // non-zero means forced unwind
+-  uintptr_t private_2; // holds sp that phase1 found for phase2 to use
+-#endif
+-#if __SIZEOF_POINTER__ == 4
+-  // The implementation of _Unwind_Exception uses an attribute mode on the
+-  // above fields which has the side effect of causing this whole struct to
+-  // round up to 32 bytes in size (48 with SEH). To be more explicit, we add
+-  // pad fields added for binary compatibility.
+-  uint32_t reserved[3];
+-#endif
+-  // The Itanium ABI requires that _Unwind_Exception objects are "double-word
+-  // aligned".  GCC has interpreted this to mean "use the maximum useful
+-  // alignment for the target"; so do we.
+-} __attribute__((__aligned__));
+-
+-typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
+-    (int version,
+-     _Unwind_Action actions,
+-     uint64_t exceptionClass,
+-     _Unwind_Exception* exceptionObject,
+-     struct _Unwind_Context* context,
+-     void* stop_parameter );
+-
+-typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
+-    int version, _Unwind_Action actions, uint64_t exceptionClass,
+-    _Unwind_Exception *exceptionObject, struct _Unwind_Context *context);
++#include "unwind_itanium.h"
+ #endif
+ 
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+ 
+-//
+-// The following are the base functions documented by the C++ ABI
+-//
+-#ifdef __USING_SJLJ_EXCEPTIONS__
+-extern _Unwind_Reason_Code
+-    _Unwind_SjLj_RaiseException(_Unwind_Exception *exception_object);
+-extern void _Unwind_SjLj_Resume(_Unwind_Exception *exception_object);
+-#else
+-extern _Unwind_Reason_Code
+-    _Unwind_RaiseException(_Unwind_Exception *exception_object);
+-extern void _Unwind_Resume(_Unwind_Exception *exception_object);
+-#endif
+-extern void _Unwind_DeleteException(_Unwind_Exception *exception_object);
+-
+-#if defined(_LIBUNWIND_ARM_EHABI)
+-typedef enum {
+-  _UVRSC_CORE = 0, /* integer register */
+-  _UVRSC_VFP = 1, /* vfp */
+-  _UVRSC_WMMXD = 3, /* Intel WMMX data register */
+-  _UVRSC_WMMXC = 4 /* Intel WMMX control register */
+-} _Unwind_VRS_RegClass;
+-
+-typedef enum {
+-  _UVRSD_UINT32 = 0,
+-  _UVRSD_VFPX = 1,
+-  _UVRSD_UINT64 = 3,
+-  _UVRSD_FLOAT = 4,
+-  _UVRSD_DOUBLE = 5
+-} _Unwind_VRS_DataRepresentation;
+-
+-typedef enum {
+-  _UVRSR_OK = 0,
+-  _UVRSR_NOT_IMPLEMENTED = 1,
+-  _UVRSR_FAILED = 2
+-} _Unwind_VRS_Result;
+-
+-extern void _Unwind_Complete(_Unwind_Exception* exception_object);
+-
+-extern _Unwind_VRS_Result
+-_Unwind_VRS_Get(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
+-                uint32_t regno, _Unwind_VRS_DataRepresentation representation,
+-                void *valuep);
+-
+-extern _Unwind_VRS_Result
+-_Unwind_VRS_Set(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
+-                uint32_t regno, _Unwind_VRS_DataRepresentation representation,
+-                void *valuep);
+-
+-extern _Unwind_VRS_Result
+-_Unwind_VRS_Pop(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
+-                uint32_t discriminator,
+-                _Unwind_VRS_DataRepresentation representation);
+-#endif
+-
+-#if !defined(_LIBUNWIND_ARM_EHABI)
+-
+-extern uintptr_t _Unwind_GetGR(struct _Unwind_Context *context, int index);
+-extern void _Unwind_SetGR(struct _Unwind_Context *context, int index,
+-                          uintptr_t new_value);
+-extern uintptr_t _Unwind_GetIP(struct _Unwind_Context *context);
+-extern void _Unwind_SetIP(struct _Unwind_Context *, uintptr_t new_value);
+-
+-#else  // defined(_LIBUNWIND_ARM_EHABI)
+-
+-#if defined(_LIBUNWIND_UNWIND_LEVEL1_EXTERNAL_LINKAGE)
+-#define _LIBUNWIND_EXPORT_UNWIND_LEVEL1 extern
+-#else
+-#define _LIBUNWIND_EXPORT_UNWIND_LEVEL1 static __inline__
+-#endif
+-
+-// These are de facto helper functions for ARM, which delegate the function
+-// calls to _Unwind_VRS_Get/Set().  These are not a part of ARM EHABI
+-// specification, thus these function MUST be inlined.  Please don't replace
+-// these with the "extern" function declaration; otherwise, the program
+-// including this <unwind.h> header won't be ABI compatible and will result in
+-// link error when we are linking the program with libgcc.
+-
+-_LIBUNWIND_EXPORT_UNWIND_LEVEL1
+-uintptr_t _Unwind_GetGR(struct _Unwind_Context *context, int index) {
+-  uintptr_t value = 0;
+-  _Unwind_VRS_Get(context, _UVRSC_CORE, (uint32_t)index, _UVRSD_UINT32, &value);
+-  return value;
+-}
+-
+-_LIBUNWIND_EXPORT_UNWIND_LEVEL1
+-void _Unwind_SetGR(struct _Unwind_Context *context, int index,
+-                   uintptr_t value) {
+-  _Unwind_VRS_Set(context, _UVRSC_CORE, (uint32_t)index, _UVRSD_UINT32, &value);
+-}
+-
+-_LIBUNWIND_EXPORT_UNWIND_LEVEL1
+-uintptr_t _Unwind_GetIP(struct _Unwind_Context *context) {
+-  // remove the thumb-bit before returning
+-  return _Unwind_GetGR(context, 15) & (~(uintptr_t)0x1);
+-}
+-
+-_LIBUNWIND_EXPORT_UNWIND_LEVEL1
+-void _Unwind_SetIP(struct _Unwind_Context *context, uintptr_t value) {
+-  uintptr_t thumb_bit = _Unwind_GetGR(context, 15) & ((uintptr_t)0x1);
+-  _Unwind_SetGR(context, 15, value | thumb_bit);
+-}
+-#endif  // defined(_LIBUNWIND_ARM_EHABI)
+-
+ extern uintptr_t _Unwind_GetRegionStart(struct _Unwind_Context *context);
+ extern uintptr_t
+     _Unwind_GetLanguageSpecificData(struct _Unwind_Context *context);
+diff --git a/libunwind/include/unwind_arm_ehabi.h b/libunwind/include/unwind_arm_ehabi.h
+new file mode 100644
+index 000000000000..58444d14eb8d
+--- /dev/null
++++ b/libunwind/include/unwind_arm_ehabi.h
+@@ -0,0 +1,173 @@
++//===------------------------------- unwind.h -----------------------------===//
++//
++// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
++// See https://llvm.org/LICENSE.txt for license information.
++// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
++//
++//
++// C++ ABI Level 1 ABI documented at:
++//   https://github.com/ARM-software/abi-aa/blob/main/ehabi32/ehabi32.rst
++//
++//===----------------------------------------------------------------------===//
++
++#ifndef __ARM_EHABI_UNWIND_H__
++#define __ARM_EHABI_UNWIND_H__
++
++typedef uint32_t _Unwind_State;
++
++static const _Unwind_State _US_VIRTUAL_UNWIND_FRAME   = 0;
++static const _Unwind_State _US_UNWIND_FRAME_STARTING  = 1;
++static const _Unwind_State _US_UNWIND_FRAME_RESUME    = 2;
++static const _Unwind_State _US_ACTION_MASK            = 3;
++/* Undocumented flag for force unwinding. */
++static const _Unwind_State _US_FORCE_UNWIND           = 8;
++
++typedef uint32_t _Unwind_EHT_Header;
++
++struct _Unwind_Control_Block;
++typedef struct _Unwind_Control_Block _Unwind_Control_Block;
++typedef struct _Unwind_Control_Block _Unwind_Exception; /* Alias */
++
++struct _Unwind_Control_Block {
++  uint64_t exception_class;
++  void (*exception_cleanup)(_Unwind_Reason_Code, _Unwind_Control_Block*);
++
++  /* Unwinder cache, private fields for the unwinder's use */
++  struct {
++    uint32_t reserved1; /* init reserved1 to 0, then don't touch */
++    uint32_t reserved2;
++    uint32_t reserved3;
++    uint32_t reserved4;
++    uint32_t reserved5;
++  } unwinder_cache;
++
++  /* Propagation barrier cache (valid after phase 1): */
++  struct {
++    uint32_t sp;
++    uint32_t bitpattern[5];
++  } barrier_cache;
++
++  /* Cleanup cache (preserved over cleanup): */
++  struct {
++    uint32_t bitpattern[4];
++  } cleanup_cache;
++
++  /* Pr cache (for pr's benefit): */
++  struct {
++    uint32_t fnstart; /* function start address */
++    _Unwind_EHT_Header* ehtp; /* pointer to EHT entry header word */
++    uint32_t additional;
++    uint32_t reserved1;
++  } pr_cache;
++
++  long long int :0; /* Enforce the 8-byte alignment */
++} __attribute__((__aligned__(8)));
++
++typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
++      (_Unwind_State state,
++       _Unwind_Exception* exceptionObject,
++       struct _Unwind_Context* context);
++
++typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
++    _Unwind_State state, _Unwind_Exception *exceptionObject,
++    struct _Unwind_Context *context);
++
++#ifdef __cplusplus
++extern "C" {
++#endif
++
++//
++// The following are the base functions documented by the C++ ABI
++//
++#ifdef __USING_SJLJ_EXCEPTIONS__
++extern _Unwind_Reason_Code
++    _Unwind_SjLj_RaiseException(_Unwind_Exception *exception_object);
++extern void _Unwind_SjLj_Resume(_Unwind_Exception *exception_object);
++#else
++extern _Unwind_Reason_Code
++    _Unwind_RaiseException(_Unwind_Exception *exception_object);
++extern void _Unwind_Resume(_Unwind_Exception *exception_object);
++#endif
++extern void _Unwind_DeleteException(_Unwind_Exception *exception_object);
++
++typedef enum {
++  _UVRSC_CORE = 0, /* integer register */
++  _UVRSC_VFP = 1, /* vfp */
++  _UVRSC_WMMXD = 3, /* Intel WMMX data register */
++  _UVRSC_WMMXC = 4 /* Intel WMMX control register */
++} _Unwind_VRS_RegClass;
++
++typedef enum {
++  _UVRSD_UINT32 = 0,
++  _UVRSD_VFPX = 1,
++  _UVRSD_UINT64 = 3,
++  _UVRSD_FLOAT = 4,
++  _UVRSD_DOUBLE = 5
++} _Unwind_VRS_DataRepresentation;
++
++typedef enum {
++  _UVRSR_OK = 0,
++  _UVRSR_NOT_IMPLEMENTED = 1,
++  _UVRSR_FAILED = 2
++} _Unwind_VRS_Result;
++
++extern void _Unwind_Complete(_Unwind_Exception* exception_object);
++
++extern _Unwind_VRS_Result
++_Unwind_VRS_Get(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
++                uint32_t regno, _Unwind_VRS_DataRepresentation representation,
++                void *valuep);
++
++extern _Unwind_VRS_Result
++_Unwind_VRS_Set(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
++                uint32_t regno, _Unwind_VRS_DataRepresentation representation,
++                void *valuep);
++
++extern _Unwind_VRS_Result
++_Unwind_VRS_Pop(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
++                uint32_t discriminator,
++                _Unwind_VRS_DataRepresentation representation);
++
++#if defined(_LIBUNWIND_UNWIND_LEVEL1_EXTERNAL_LINKAGE)
++#define _LIBUNWIND_EXPORT_UNWIND_LEVEL1 extern
++#else
++#define _LIBUNWIND_EXPORT_UNWIND_LEVEL1 static __inline__
++#endif
++
++// These are de facto helper functions for ARM, which delegate the function
++// calls to _Unwind_VRS_Get/Set().  These are not a part of ARM EHABI
++// specification, thus these function MUST be inlined.  Please don't replace
++// these with the "extern" function declaration; otherwise, the program
++// including this <unwind.h> header won't be ABI compatible and will result in
++// link error when we are linking the program with libgcc.
++
++_LIBUNWIND_EXPORT_UNWIND_LEVEL1
++uintptr_t _Unwind_GetGR(struct _Unwind_Context *context, int index) {
++  uintptr_t value = 0;
++  _Unwind_VRS_Get(context, _UVRSC_CORE, (uint32_t)index, _UVRSD_UINT32, &value);
++  return value;
++}
++
++_LIBUNWIND_EXPORT_UNWIND_LEVEL1
++void _Unwind_SetGR(struct _Unwind_Context *context, int index,
++                   uintptr_t value) {
++  _Unwind_VRS_Set(context, _UVRSC_CORE, (uint32_t)index, _UVRSD_UINT32, &value);
++}
++
++_LIBUNWIND_EXPORT_UNWIND_LEVEL1
++uintptr_t _Unwind_GetIP(struct _Unwind_Context *context) {
++  // remove the thumb-bit before returning
++  return _Unwind_GetGR(context, 15) & (~(uintptr_t)0x1);
++}
++
++_LIBUNWIND_EXPORT_UNWIND_LEVEL1
++void _Unwind_SetIP(struct _Unwind_Context *context, uintptr_t value) {
++  uintptr_t thumb_bit = _Unwind_GetGR(context, 15) & ((uintptr_t)0x1);
++  _Unwind_SetGR(context, 15, value | thumb_bit);
++}
++
++#ifdef __cplusplus
++}
++#endif
++
++#endif // __ARM_EHABI_UNWIND_H__
+diff --git a/libunwind/include/unwind_itanium.h b/libunwind/include/unwind_itanium.h
+new file mode 100644
+index 000000000000..1e1389c7f0da
+--- /dev/null
++++ b/libunwind/include/unwind_itanium.h
+@@ -0,0 +1,83 @@
++//===------------------------------- unwind.h -----------------------------===//
++//
++// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
++// See https://llvm.org/LICENSE.txt for license information.
++// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
++//
++//
++// C++ ABI Level 1 ABI documented at:
++//   https://itanium-cxx-abi.github.io/cxx-abi/abi-eh.html
++//
++//===----------------------------------------------------------------------===//
++
++#ifndef __ITANIUM_UNWIND_H__
++#define __ITANIUM_UNWIND_H__
++
++struct _Unwind_Context;   // opaque
++struct _Unwind_Exception; // forward declaration
++typedef struct _Unwind_Exception _Unwind_Exception;
++
++struct _Unwind_Exception {
++  uint64_t exception_class;
++  void (*exception_cleanup)(_Unwind_Reason_Code reason,
++                            _Unwind_Exception *exc);
++#if defined(__SEH__) && !defined(__USING_SJLJ_EXCEPTIONS__)
++  uintptr_t private_[6];
++#else
++  uintptr_t private_1; // non-zero means forced unwind
++  uintptr_t private_2; // holds sp that phase1 found for phase2 to use
++#endif
++#if __SIZEOF_POINTER__ == 4
++  // The implementation of _Unwind_Exception uses an attribute mode on the
++  // above fields which has the side effect of causing this whole struct to
++  // round up to 32 bytes in size (48 with SEH). To be more explicit, we add
++  // pad fields added for binary compatibility.
++  uint32_t reserved[3];
++#endif
++  // The Itanium ABI requires that _Unwind_Exception objects are "double-word
++  // aligned".  GCC has interpreted this to mean "use the maximum useful
++  // alignment for the target"; so do we.
++} __attribute__((__aligned__));
++
++typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
++    (int version,
++     _Unwind_Action actions,
++     uint64_t exceptionClass,
++     _Unwind_Exception* exceptionObject,
++     struct _Unwind_Context* context,
++     void* stop_parameter );
++
++typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
++    int version, _Unwind_Action actions, uint64_t exceptionClass,
++    _Unwind_Exception *exceptionObject, struct _Unwind_Context *context);
++
++#ifdef __cplusplus
++extern "C" {
++#endif
++
++//
++// The following are the base functions documented by the C++ ABI
++//
++#ifdef __USING_SJLJ_EXCEPTIONS__
++extern _Unwind_Reason_Code
++    _Unwind_SjLj_RaiseException(_Unwind_Exception *exception_object);
++extern void _Unwind_SjLj_Resume(_Unwind_Exception *exception_object);
++#else
++extern _Unwind_Reason_Code
++    _Unwind_RaiseException(_Unwind_Exception *exception_object);
++extern void _Unwind_Resume(_Unwind_Exception *exception_object);
++#endif
++extern void _Unwind_DeleteException(_Unwind_Exception *exception_object);
++
++
++extern uintptr_t _Unwind_GetGR(struct _Unwind_Context *context, int index);
++extern void _Unwind_SetGR(struct _Unwind_Context *context, int index,
++                          uintptr_t new_value);
++extern uintptr_t _Unwind_GetIP(struct _Unwind_Context *context);
++extern void _Unwind_SetIP(struct _Unwind_Context *, uintptr_t new_value);
++
++#ifdef __cplusplus
++}
++#endif
++
++#endif // __ITANIUM_UNWIND_H__
+diff --git a/libunwind/src/CMakeLists.txt b/libunwind/src/CMakeLists.txt
+index 093804fe4a2f..67fa61b8b0ba 100644
+--- a/libunwind/src/CMakeLists.txt
++++ b/libunwind/src/CMakeLists.txt
+@@ -47,6 +47,8 @@ set(LIBUNWIND_HEADERS
+     UnwindCursor.hpp
+     ../include/libunwind.h
+     ../include/unwind.h
++    ../include/unwind_itanium.h
++    ../include/unwind_arm_ehabi.h
+     )
+ if(APPLE)
+   list(APPEND LIBUNWIND_HEADERS
diff --git a/sys-libs/llvm-libunwind/files/PATCHES.json b/sys-libs/llvm-libunwind/files/PATCHES.json
index a90f907..5fc59cd 100644
--- a/sys-libs/llvm-libunwind/files/PATCHES.json
+++ b/sys-libs/llvm-libunwind/files/PATCHES.json
@@ -4,5 +4,29 @@
         "rel_patch_path": "5c3fc5093aaf7d9422459d295eb4eb769abcbaa4.patch",
         "start_version": 420365,
         "end_version": 420477
+    },
+    {
+        "comment": "[Unwind] Split unwind.h",
+        "rel_patch_path": "9ed1c7e4964382b95a5886279c0dfc7147a57b17.patch",
+        "start_version": 422132,
+        "end_version": 435268
+    },
+    {
+        "comment": "[Arm][Unwind][libc++abi] Add _Unwind_ForcedUnwind to EHABI.",
+        "rel_patch_path": "db126ae243cd70e4f68fd50a7c619740e90e1dc6.patch",
+        "start_version": 422132,
+        "end_version": 435269
+    },
+    {
+        "comment": "[libunwind] Compile with -Wunused-but-set-variable",
+        "rel_patch_path": "6b6d3447317673015f62206b2669c2d0a74132dc.patch",
+        "start_version": 422132,
+        "end_version": 435270
+    },
+    {
+        "comment": "libunwind: add missing break statements in EHABI",
+        "rel_patch_path": "08a5ac36b956edeb989b4a65269a829eac26a5a2.patch",
+        "start_version": 428724,
+        "end_version": 435201
     }
-]
\ No newline at end of file
+]
diff --git a/sys-libs/llvm-libunwind/files/db126ae243cd70e4f68fd50a7c619740e90e1dc6.patch b/sys-libs/llvm-libunwind/files/db126ae243cd70e4f68fd50a7c619740e90e1dc6.patch
new file mode 100644
index 0000000..4f7055b
--- /dev/null
+++ b/sys-libs/llvm-libunwind/files/db126ae243cd70e4f68fd50a7c619740e90e1dc6.patch
@@ -0,0 +1,379 @@
+commit db126ae243cd70e4f68fd50a7c619740e90e1dc6
+Author: Daniel Kiss <daniel.kiss@arm.com>
+Date:   Wed Aug 11 10:11:30 2021 +0200
+
+    [Arm][Unwind][libc++abi] Add _Unwind_ForcedUnwind to EHABI.
+    
+    _Unwind_ForcedUnwind is not mandated by the EHABI but for compatibilty
+    reasons adding so the interface to higher layers would be the same.
+    Dropping EHABI specific _Unwind_Stop_Fn definition since it is not defined by EHABI.
+    
+    Reviewed By: MaskRay
+    
+    Differential Revision: https://reviews.llvm.org/D89570
+
+diff --git a/libunwind/include/unwind.h b/libunwind/include/unwind.h
+index e8d114854325..87c3cf6c804e 100644
+--- a/libunwind/include/unwind.h
++++ b/libunwind/include/unwind.h
+@@ -61,6 +61,14 @@ typedef struct _Unwind_Context _Unwind_Context;   // opaque
+ #include "unwind_itanium.h"
+ #endif
+ 
++typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
++    (int version,
++     _Unwind_Action actions,
++     uint64_t exceptionClass,
++     _Unwind_Exception* exceptionObject,
++     struct _Unwind_Context* context,
++     void* stop_parameter);
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+diff --git a/libunwind/include/unwind_arm_ehabi.h b/libunwind/include/unwind_arm_ehabi.h
+index 58444d14eb8d..5ad088722560 100644
+--- a/libunwind/include/unwind_arm_ehabi.h
++++ b/libunwind/include/unwind_arm_ehabi.h
+@@ -26,7 +26,7 @@ typedef uint32_t _Unwind_EHT_Header;
+ 
+ struct _Unwind_Control_Block;
+ typedef struct _Unwind_Control_Block _Unwind_Control_Block;
+-typedef struct _Unwind_Control_Block _Unwind_Exception; /* Alias */
++#define _Unwind_Exception _Unwind_Control_Block /* Alias */
+ 
+ struct _Unwind_Control_Block {
+   uint64_t exception_class;
+@@ -63,11 +63,6 @@ struct _Unwind_Control_Block {
+   long long int :0; /* Enforce the 8-byte alignment */
+ } __attribute__((__aligned__(8)));
+ 
+-typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
+-      (_Unwind_State state,
+-       _Unwind_Exception* exceptionObject,
+-       struct _Unwind_Context* context);
+-
+ typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
+     _Unwind_State state, _Unwind_Exception *exceptionObject,
+     struct _Unwind_Context *context);
+diff --git a/libunwind/include/unwind_itanium.h b/libunwind/include/unwind_itanium.h
+index 1e1389c7f0da..eeb45f622832 100644
+--- a/libunwind/include/unwind_itanium.h
++++ b/libunwind/include/unwind_itanium.h
+@@ -39,14 +39,6 @@ struct _Unwind_Exception {
+   // alignment for the target"; so do we.
+ } __attribute__((__aligned__));
+ 
+-typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
+-    (int version,
+-     _Unwind_Action actions,
+-     uint64_t exceptionClass,
+-     _Unwind_Exception* exceptionObject,
+-     struct _Unwind_Context* context,
+-     void* stop_parameter );
+-
+ typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
+     int version, _Unwind_Action actions, uint64_t exceptionClass,
+     _Unwind_Exception *exceptionObject, struct _Unwind_Context *context);
+diff --git a/libunwind/src/Unwind-EHABI.cpp b/libunwind/src/Unwind-EHABI.cpp
+index 8843db7f54c3..ba6064d3ef00 100644
+--- a/libunwind/src/Unwind-EHABI.cpp
++++ b/libunwind/src/Unwind-EHABI.cpp
+@@ -602,7 +602,7 @@ static _Unwind_Reason_Code unwind_phase2(unw_context_t *uc, unw_cursor_t *cursor
+     // If there is a personality routine, tell it we are unwinding.
+     if (frameInfo.handler != 0) {
+       _Unwind_Personality_Fn p =
+-          (_Unwind_Personality_Fn)(long)(frameInfo.handler);
++          (_Unwind_Personality_Fn)(intptr_t)(frameInfo.handler);
+       struct _Unwind_Context *context = (struct _Unwind_Context *)(cursor);
+       // EHABI #7.2
+       exception_object->pr_cache.fnstart = frameInfo.start_ip;
+@@ -670,6 +670,112 @@ static _Unwind_Reason_Code unwind_phase2(unw_context_t *uc, unw_cursor_t *cursor
+   return _URC_FATAL_PHASE2_ERROR;
+ }
+ 
++static _Unwind_Reason_Code
++unwind_phase2_forced(unw_context_t *uc, unw_cursor_t *cursor,
++                     _Unwind_Exception *exception_object, _Unwind_Stop_Fn stop,
++                     void *stop_parameter) {
++  // See comment at the start of unwind_phase1 regarding VRS integrity.
++  __unw_init_local(cursor, uc);
++  _LIBUNWIND_TRACE_UNWINDING("unwind_phase2_force(ex_ojb=%p)",
++                             static_cast<void *>(exception_object));
++  // Walk each frame until we reach where search phase said to stop
++  while (true) {
++    // Update info about this frame.
++    unw_proc_info_t frameInfo;
++    if (__unw_get_proc_info(cursor, &frameInfo) != UNW_ESUCCESS) {
++      _LIBUNWIND_TRACE_UNWINDING("unwind_phase2_forced(ex_ojb=%p): __unw_step "
++                                 "failed => _URC_END_OF_STACK",
++                                 (void *)exception_object);
++      return _URC_FATAL_PHASE2_ERROR;
++    }
++
++    // When tracing, print state information.
++    if (_LIBUNWIND_TRACING_UNWINDING) {
++      char functionBuf[512];
++      const char *functionName = functionBuf;
++      unw_word_t offset;
++      if ((__unw_get_proc_name(cursor, functionBuf, sizeof(functionBuf),
++                               &offset) != UNW_ESUCCESS) ||
++          (frameInfo.start_ip + offset > frameInfo.end_ip))
++        functionName = ".anonymous.";
++      _LIBUNWIND_TRACE_UNWINDING(
++          "unwind_phase2_forced(ex_ojb=%p): start_ip=0x%" PRIxPTR
++          ", func=%s, lsda=0x%" PRIxPTR ", personality=0x%" PRIxPTR,
++          (void *)exception_object, frameInfo.start_ip, functionName,
++          frameInfo.lsda, frameInfo.handler);
++    }
++
++    // Call stop function at each frame.
++    _Unwind_Action action =
++        (_Unwind_Action)(_UA_FORCE_UNWIND | _UA_CLEANUP_PHASE);
++    _Unwind_Reason_Code stopResult =
++        (*stop)(1, action, exception_object->exception_class, exception_object,
++                (_Unwind_Context *)(cursor), stop_parameter);
++    _LIBUNWIND_TRACE_UNWINDING(
++        "unwind_phase2_forced(ex_ojb=%p): stop function returned %d",
++        (void *)exception_object, stopResult);
++    if (stopResult != _URC_NO_REASON) {
++      _LIBUNWIND_TRACE_UNWINDING(
++          "unwind_phase2_forced(ex_ojb=%p): stopped by stop function",
++          (void *)exception_object);
++      return _URC_FATAL_PHASE2_ERROR;
++    }
++
++    // If there is a personality routine, tell it we are unwinding.
++    if (frameInfo.handler != 0) {
++      _Unwind_Personality_Fn p =
++          (_Unwind_Personality_Fn)(uintptr_t)(frameInfo.handler);
++      struct _Unwind_Context *context = (struct _Unwind_Context *)(cursor);
++      // EHABI #7.2
++      exception_object->pr_cache.fnstart = frameInfo.start_ip;
++      exception_object->pr_cache.ehtp =
++          (_Unwind_EHT_Header *)frameInfo.unwind_info;
++      exception_object->pr_cache.additional = frameInfo.flags;
++      _Unwind_Reason_Code personalityResult =
++          (*p)(_US_FORCE_UNWIND | _US_UNWIND_FRAME_STARTING, exception_object,
++               context);
++      switch (personalityResult) {
++      case _URC_CONTINUE_UNWIND:
++        _LIBUNWIND_TRACE_UNWINDING("unwind_phase2_forced(ex_ojb=%p): "
++                                   "personality returned "
++                                   "_URC_CONTINUE_UNWIND",
++                                   (void *)exception_object);
++        // Destructors called, continue unwinding
++        break;
++      case _URC_INSTALL_CONTEXT:
++        _LIBUNWIND_TRACE_UNWINDING("unwind_phase2_forced(ex_ojb=%p): "
++                                   "personality returned "
++                                   "_URC_INSTALL_CONTEXT",
++                                   (void *)exception_object);
++        // We may get control back if landing pad calls _Unwind_Resume().
++        __unw_resume(cursor);
++        break;
++      default:
++        // Personality routine returned an unknown result code.
++        _LIBUNWIND_TRACE_UNWINDING("unwind_phase2_forced(ex_ojb=%p): "
++                                   "personality returned %d, "
++                                   "_URC_FATAL_PHASE2_ERROR",
++                                   (void *)exception_object, personalityResult);
++        return _URC_FATAL_PHASE2_ERROR;
++      }
++    }
++  }
++
++  // Call stop function one last time and tell it we've reached the end
++  // of the stack.
++  _LIBUNWIND_TRACE_UNWINDING("unwind_phase2_forced(ex_ojb=%p): calling stop "
++                             "function with _UA_END_OF_STACK",
++                             (void *)exception_object);
++  _Unwind_Action lastAction =
++      (_Unwind_Action)(_UA_FORCE_UNWIND | _UA_CLEANUP_PHASE | _UA_END_OF_STACK);
++  (*stop)(1, lastAction, exception_object->exception_class, exception_object,
++          (struct _Unwind_Context *)(cursor), stop_parameter);
++
++  // Clean up phase did not resume at the frame that the search phase said it
++  // would.
++  return _URC_FATAL_PHASE2_ERROR;
++}
++
+ /// Called by __cxa_throw.  Only returns if there is a fatal error.
+ _LIBUNWIND_EXPORT _Unwind_Reason_Code
+ _Unwind_RaiseException(_Unwind_Exception *exception_object) {
+@@ -717,10 +823,13 @@ _Unwind_Resume(_Unwind_Exception *exception_object) {
+   unw_cursor_t cursor;
+   __unw_getcontext(&uc);
+ 
+-  // _Unwind_RaiseException on EHABI will always set the reserved1 field to 0,
+-  // which is in the same position as private_1 below.
+-  // TODO(ajwong): Who wronte the above? Why is it true?
+-  unwind_phase2(&uc, &cursor, exception_object, true);
++  if (exception_object->unwinder_cache.reserved1)
++    unwind_phase2_forced(
++        &uc, &cursor, exception_object,
++        (_Unwind_Stop_Fn)exception_object->unwinder_cache.reserved1,
++        (void *)exception_object->unwinder_cache.reserved3);
++  else
++    unwind_phase2(&uc, &cursor, exception_object, true);
+ 
+   // Clients assume _Unwind_Resume() does not return, so all we can do is abort.
+   _LIBUNWIND_ABORT("_Unwind_Resume() can't return");
+@@ -967,6 +1076,27 @@ _Unwind_VRS_Pop(_Unwind_Context *context, _Unwind_VRS_RegClass regclass,
+   _LIBUNWIND_ABORT("unsupported register class");
+ }
+ 
++/// Not used by C++.
++/// Unwinds stack, calling "stop" function at each frame.
++/// Could be used to implement longjmp().
++_LIBUNWIND_EXPORT _Unwind_Reason_Code
++_Unwind_ForcedUnwind(_Unwind_Exception *exception_object, _Unwind_Stop_Fn stop,
++                     void *stop_parameter) {
++  _LIBUNWIND_TRACE_API("_Unwind_ForcedUnwind(ex_obj=%p, stop=%p)",
++                       (void *)exception_object, (void *)(uintptr_t)stop);
++  unw_context_t uc;
++  unw_cursor_t cursor;
++  __unw_getcontext(&uc);
++
++  // Mark that this is a forced unwind, so _Unwind_Resume() can do
++  // the right thing.
++  exception_object->unwinder_cache.reserved1 = (uintptr_t)stop;
++  exception_object->unwinder_cache.reserved3 = (uintptr_t)stop_parameter;
++
++  return unwind_phase2_forced(&uc, &cursor, exception_object, stop,
++                              stop_parameter);
++}
++
+ /// Called by personality handler during phase 2 to find the start of the
+ /// function.
+ _LIBUNWIND_EXPORT uintptr_t
+diff --git a/libunwind/src/UnwindLevel1-gcc-ext.c b/libunwind/src/UnwindLevel1-gcc-ext.c
+index 310b836d129e..d69267ba25fe 100644
+--- a/libunwind/src/UnwindLevel1-gcc-ext.c
++++ b/libunwind/src/UnwindLevel1-gcc-ext.c
+@@ -25,31 +25,24 @@
+ #if defined(_LIBUNWIND_BUILD_ZERO_COST_APIS)
+ 
+ #if defined(_LIBUNWIND_SUPPORT_SEH_UNWIND)
+-#define private_1 private_[0]
++#define PRIVATE_1 private_[0]
++#elif defined(_LIBUNWIND_ARM_EHABI)
++#define PRIVATE_1 unwinder_cache.reserved1
++#else
++#define PRIVATE_1 private_1
+ #endif
+ 
+ ///  Called by __cxa_rethrow().
+ _LIBUNWIND_EXPORT _Unwind_Reason_Code
+ _Unwind_Resume_or_Rethrow(_Unwind_Exception *exception_object) {
+-#if defined(_LIBUNWIND_ARM_EHABI)
+-  _LIBUNWIND_TRACE_API("_Unwind_Resume_or_Rethrow(ex_obj=%p), private_1=%ld",
+-                       (void *)exception_object,
+-                       (long)exception_object->unwinder_cache.reserved1);
+-#else
+-  _LIBUNWIND_TRACE_API("_Unwind_Resume_or_Rethrow(ex_obj=%p), private_1=%" PRIdPTR,
+-                       (void *)exception_object,
+-                       (intptr_t)exception_object->private_1);
+-#endif
++  _LIBUNWIND_TRACE_API(
++      "_Unwind_Resume_or_Rethrow(ex_obj=%p), private_1=%" PRIdPTR,
++      (void *)exception_object, (intptr_t)exception_object->PRIVATE_1);
+ 
+-#if defined(_LIBUNWIND_ARM_EHABI)
+-  // _Unwind_RaiseException on EHABI will always set the reserved1 field to 0,
+-  // which is in the same position as private_1 below.
+-  return _Unwind_RaiseException(exception_object);
+-#else
+   // If this is non-forced and a stopping place was found, then this is a
+   // re-throw.
+   // Call _Unwind_RaiseException() as if this was a new exception
+-  if (exception_object->private_1 == 0) {
++  if (exception_object->PRIVATE_1 == 0) {
+     return _Unwind_RaiseException(exception_object);
+     // Will return if there is no catch clause, so that __cxa_rethrow can call
+     // std::terminate().
+@@ -60,10 +53,8 @@ _Unwind_Resume_or_Rethrow(_Unwind_Exception *exception_object) {
+   _Unwind_Resume(exception_object);
+   _LIBUNWIND_ABORT("_Unwind_Resume_or_Rethrow() called _Unwind_RaiseException()"
+                    " which unexpectedly returned");
+-#endif
+ }
+ 
+-
+ /// Called by personality handler during phase 2 to get base address for data
+ /// relative encodings.
+ _LIBUNWIND_EXPORT uintptr_t
+diff --git a/libunwind/test/forceunwind.pass.cpp b/libunwind/test/forceunwind.pass.cpp
+new file mode 100644
+index 000000000000..e74aa3faa080
+--- /dev/null
++++ b/libunwind/test/forceunwind.pass.cpp
+@@ -0,0 +1,68 @@
++// -*- C++ -*-
++//===----------------------------------------------------------------------===//
++//
++// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
++// See https://llvm.org/LICENSE.txt for license information.
++// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
++//
++//===----------------------------------------------------------------------===//
++
++// REQUIRES: linux
++
++// Basic test for _Unwind_ForcedUnwind.
++// See libcxxabi/test/forced_unwind* tests too.
++
++#include <assert.h>
++#include <dlfcn.h>
++#include <signal.h>
++#include <stdint.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++#include <sys/types.h>
++#include <unistd.h>
++#include <unwind.h>
++
++void foo();
++_Unwind_Exception ex;
++
++_Unwind_Reason_Code stop(int version, _Unwind_Action actions,
++                         uint64_t exceptionClass,
++                         _Unwind_Exception *exceptionObject,
++                         struct _Unwind_Context *context,
++                         void *stop_parameter) {
++  assert(version == 1);
++  assert((actions & _UA_FORCE_UNWIND) != 0);
++  (void)exceptionClass;
++  assert(exceptionObject == &ex);
++  assert(stop_parameter == &foo);
++
++  Dl_info info = {0, 0, 0, 0};
++
++  // Unwind util the main is reached, above frames depend on the platform and
++  // architecture.
++  if (dladdr(reinterpret_cast<void *>(_Unwind_GetIP(context)), &info) &&
++      info.dli_sname && !strcmp("main", info.dli_sname)) {
++    _Exit(0);
++  }
++  return _URC_NO_REASON;
++}
++
++__attribute__((noinline)) void foo() {
++
++  // Arm EHABI defines struct _Unwind_Control_Block as exception
++  // object. Ensure struct _Unwind_Exception* work there too,
++  // because _Unwind_Exception in this case is just an alias.
++  struct _Unwind_Exception *e = &ex;
++#if defined(_LIBUNWIND_ARM_EHABI)
++  // Create a mock exception object.
++  memset(e, '\0', sizeof(*e));
++  e->exception_class = 0x434C4E47554E5700; // CLNGUNW\0
++#endif
++  _Unwind_ForcedUnwind(e, stop, (void *)&foo);
++}
++
++int main() {
++  foo();
++  return -2;
++}
diff --git a/sys-libs/llvm-libunwind/files/version-scripts/gcc_s-aarch64.ver b/sys-libs/llvm-libunwind/files/version-scripts/gcc_s-aarch64.ver
new file mode 100644
index 0000000..3911dd9
--- /dev/null
+++ b/sys-libs/llvm-libunwind/files/version-scripts/gcc_s-aarch64.ver
@@ -0,0 +1,145 @@
+GCC_3.0 {
+  _Unwind_DeleteException;
+  _Unwind_Find_FDE;
+  _Unwind_ForcedUnwind;
+  _Unwind_GetDataRelBase;
+  _Unwind_GetGR;
+  _Unwind_GetIP;
+  _Unwind_GetLanguageSpecificData;
+  _Unwind_GetRegionStart;
+  _Unwind_GetTextRelBase;
+  _Unwind_RaiseException;
+  _Unwind_Resume;
+  _Unwind_SetGR;
+  _Unwind_SetIP;
+  __absvdi2;
+  __absvsi2;
+  __addtf3;
+  __addvdi3;
+  __addvsi3;
+  __ashlti3;
+  __ashrti3;
+  __clear_cache;
+  __cmpti2;
+  __divtf3;
+  __divti3;
+  __eqtf2;
+  __extenddftf2;
+  __extendsftf2;
+  __ffsdi2;
+  __ffsti2;
+  __fixdfti;
+  __fixsfti;
+  __fixtfdi;
+  __fixtfsi;
+  __fixtfti;
+  __fixunsdfdi;
+  __fixunsdfti;
+  __fixunssfdi;
+  __fixunssfti;
+  __fixunstfdi;
+  __fixunstfsi;
+  __fixunstfti;
+  __floatditf;
+  __floatsitf;
+  __floattidf;
+  __floattisf;
+  __floattitf;
+  __getf2;
+  __gttf2;
+  __letf2;
+  __lshrti3;
+  __lttf2;
+  __modti3;
+  __multf3;
+  __multi3;
+  __mulvdi3;
+  __mulvsi3;
+  __negti2;
+  __negvdi2;
+  __negvsi2;
+  __netf2;
+  __subtf3;
+  __subvdi3;
+  __subvsi3;
+  __trunctfdf2;
+  __trunctfsf2;
+  __ucmpti2;
+  __udivmodti4;
+  __udivti3;
+  __umodti3;
+};
+
+GCC_3.3 {
+  _Unwind_Backtrace;
+  _Unwind_FindEnclosingFunction;
+  _Unwind_GetCFA;
+  _Unwind_Resume_or_Rethrow;
+};
+
+GCC_3.3.1 {
+  __gcc_personality_v0;
+};
+
+GCC_3.4 {
+  __clzdi2;
+  __clzti2;
+  __ctzdi2;
+  __ctzti2;
+  __paritydi2;
+  __parityti2;
+  __popcountdi2;
+  __popcountti2;
+};
+
+GCC_3.4.2 {
+  __enable_execute_stack;
+};
+
+GCC_3.4.4 {
+  __absvti2;
+  __addvti3;
+  __mulvti3;
+  __negvti2;
+  __subvti3;
+};
+
+GCC_4.0.0 {
+  __divdc3;
+  __divsc3;
+  __divtc3;
+  __muldc3;
+  __mulsc3;
+  __multc3;
+  __powidf2;
+  __powisf2;
+  __powitf2;
+};
+
+GCC_4.2.0 {
+  _Unwind_GetIPInfo;
+  __floatunditf;
+  __floatunsitf;
+  __floatuntidf;
+  __floatuntisf;
+  __floatuntitf;
+};
+
+GCC_4.3.0 {
+  __bswapdi2;
+  __bswapsi2;
+  __emutls_get_address;
+};
+
+GCC_4.5.0 {
+  __unordtf2;
+};
+
+GCC_7.0.0 {
+  __divmodti4;
+};
+
+GLIBC_2.0 {
+  __deregister_frame;
+  __register_frame;
+};
diff --git a/sys-libs/llvm-libunwind/files/version-scripts/gcc_s-armhf.ver b/sys-libs/llvm-libunwind/files/version-scripts/gcc_s-armhf.ver
new file mode 100644
index 0000000..e84f0da
--- /dev/null
+++ b/sys-libs/llvm-libunwind/files/version-scripts/gcc_s-armhf.ver
@@ -0,0 +1,206 @@
+GCC_3.0 {
+  _Unwind_DeleteException;
+  _Unwind_GetDataRelBase;
+  _Unwind_GetLanguageSpecificData;
+  _Unwind_GetRegionStart;
+  _Unwind_GetTextRelBase;
+  _Unwind_RaiseException;
+  _Unwind_Resume;
+  __absvdi2;
+  __absvsi2;
+  __adddf3;
+  __addsf3;
+  __addvdi3;
+  __addvsi3;
+  __ashldi3;
+  __ashrdi3;
+  __clear_cache;
+  __cmpdi2;
+  __divdf3;
+  __divsf3;
+  __divsi3;
+  __eqdf2;
+  __eqsf2;
+  __extendsfdf2;
+  __ffsdi2;
+  __fixdfdi;
+  __fixdfsi;
+  __fixsfdi;
+  __fixsfsi;
+  __fixunsdfdi;
+  __fixunsdfsi;
+  __fixunssfdi;
+  __fixunssfsi;
+  __floatdidf;
+  __floatdisf;
+  __floatsidf;
+  __floatsisf;
+  __gedf2;
+  __gesf2;
+  __gtdf2;
+  __gtsf2;
+  __ledf2;
+  __lesf2;
+  __lshrdi3;
+  __ltdf2;
+  __ltsf2;
+  __modsi3;
+  __muldf3;
+  __muldi3;
+  __mulsf3;
+  __mulvdi3;
+  __mulvsi3;
+  __nedf2;
+  __negdf2;
+  __negdi2;
+  __negsf2;
+  __negvdi2;
+  __negvsi2;
+  __nesf2;
+  __subdf3;
+  __subsf3;
+  __subvdi3;
+  __subvsi3;
+  __truncdfsf2;
+  __ucmpdi2;
+  __udivmoddi4;
+  __udivsi3;
+  __umodsi3;
+};
+
+GCC_3.3 {
+  _Unwind_GetCFA;
+  _Unwind_Resume_or_Rethrow;
+};
+
+GCC_3.3.1 {
+  __gcc_personality_v0;
+};
+
+GCC_3.3.4 {
+  __unorddf2;
+  __unordsf2;
+};
+
+GCC_3.4 {
+  __clzdi2;
+  __clzsi2;
+  __ctzdi2;
+  __ctzsi2;
+  __paritydi2;
+  __paritysi2;
+  __popcountdi2;
+  __popcountsi2;
+};
+
+GCC_3.4.2 {
+  __enable_execute_stack;
+};
+
+GCC_3.5 {
+  _Unwind_Complete;
+  _Unwind_VRS_Get;
+  _Unwind_VRS_Pop;
+  _Unwind_VRS_Set;
+  __aeabi_cdcmpeq;
+  __aeabi_cdcmple;
+  __aeabi_cdrcmple;
+  __aeabi_cfcmpeq;
+  __aeabi_cfcmple;
+  __aeabi_cfrcmple;
+  __aeabi_d2f;
+  __aeabi_d2iz;
+  __aeabi_d2lz;
+  __aeabi_d2uiz;
+  __aeabi_d2ulz;
+  __aeabi_dadd;
+  __aeabi_dcmpeq;
+  __aeabi_dcmpge;
+  __aeabi_dcmpgt;
+  __aeabi_dcmple;
+  __aeabi_dcmplt;
+  __aeabi_dcmpun;
+  __aeabi_ddiv;
+  __aeabi_dmul;
+  __aeabi_dneg;
+  __aeabi_drsub;
+  __aeabi_dsub;
+  __aeabi_f2d;
+  __aeabi_f2iz;
+  __aeabi_f2lz;
+  __aeabi_f2uiz;
+  __aeabi_f2ulz;
+  __aeabi_fadd;
+  __aeabi_fcmpeq;
+  __aeabi_fcmpge;
+  __aeabi_fcmpgt;
+  __aeabi_fcmple;
+  __aeabi_fcmplt;
+  __aeabi_fcmpun;
+  __aeabi_fdiv;
+  __aeabi_fmul;
+  __aeabi_fneg;
+  __aeabi_frsub;
+  __aeabi_fsub;
+  __aeabi_i2d;
+  __aeabi_i2f;
+  __aeabi_idiv;
+  __aeabi_idiv0;
+  __aeabi_idivmod;
+  __aeabi_l2d;
+  __aeabi_l2f;
+  __aeabi_lasr;
+  __aeabi_lcmp;
+  __aeabi_ldiv0;
+  __aeabi_ldivmod;
+  __aeabi_llsl;
+  __aeabi_llsr;
+  __aeabi_lmul;
+  __aeabi_ui2d;
+  __aeabi_ui2f;
+  __aeabi_uidiv;
+  __aeabi_uidivmod;
+  __aeabi_ul2d;
+  __aeabi_ul2f;
+  __aeabi_ulcmp;
+  __aeabi_uldivmod;
+  __aeabi_unwind_cpp_pr0;
+  __aeabi_unwind_cpp_pr1;
+  __aeabi_unwind_cpp_pr2;
+  __gnu_unwind_frame;
+};
+
+GCC_4.0.0 {
+  __divdc3;
+  __divsc3;
+  __muldc3;
+  __mulsc3;
+  __powidf2;
+  __powisf2;
+};
+
+GCC_4.2.0 {
+  __floatundidf;
+  __floatundisf;
+  __floatunsidf;
+  __floatunsisf;
+};
+
+GCC_4.3.0 {
+  _Unwind_Backtrace;
+  __bswapdi2;
+  __bswapsi2;
+  __emutls_get_address;
+  __ffssi2;
+};
+
+GCC_7.0.0 {
+  __divmoddi4;
+};
+
+GLIBC_2.0 {
+  __divdi3;
+  __moddi3;
+  __udivdi3;
+  __umoddi3;
+};
diff --git a/sys-libs/llvm-libunwind/files/version-scripts/gcc_s-i386.ver b/sys-libs/llvm-libunwind/files/version-scripts/gcc_s-i386.ver
new file mode 100644
index 0000000..d6a95bc
--- /dev/null
+++ b/sys-libs/llvm-libunwind/files/version-scripts/gcc_s-i386.ver
@@ -0,0 +1,123 @@
+GCC_3.0 {
+  _Unwind_DeleteException;
+  _Unwind_Find_FDE;
+  _Unwind_ForcedUnwind;
+  _Unwind_GetDataRelBase;
+  _Unwind_GetGR;
+  _Unwind_GetIP;
+  _Unwind_GetLanguageSpecificData;
+  _Unwind_GetRegionStart;
+  _Unwind_GetTextRelBase;
+  _Unwind_RaiseException;
+  _Unwind_Resume;
+  _Unwind_SetGR;
+  _Unwind_SetIP;
+  __absvdi2;
+  __absvsi2;
+  __addvdi3;
+  __addvsi3;
+  __ashldi3;
+  __ashrdi3;
+  __clear_cache;
+  __cmpdi2;
+  __deregister_frame_info_bases;
+  __ffsdi2;
+  __fixdfdi;
+  __fixsfdi;
+  __fixunsdfdi;
+  __fixunsdfsi;
+  __fixunssfdi;
+  __fixunssfsi;
+  __fixunsxfdi;
+  __fixunsxfsi;
+  __fixxfdi;
+  __floatdidf;
+  __floatdisf;
+  __floatdixf;
+  __lshrdi3;
+  __muldi3;
+  __mulvdi3;
+  __mulvsi3;
+  __negdi2;
+  __negvdi2;
+  __negvsi2;
+  __register_frame_info_bases;
+  __register_frame_info_table_bases;
+  __subvdi3;
+  __subvsi3;
+  __ucmpdi2;
+  __udivmoddi4;
+};
+
+GCC_3.3 {
+  _Unwind_Backtrace;
+  _Unwind_FindEnclosingFunction;
+  _Unwind_GetCFA;
+  _Unwind_Resume_or_Rethrow;
+};
+
+GCC_3.3.1 {
+  __gcc_personality_v0;
+};
+
+GCC_3.4 {
+  __clzdi2;
+  __clzsi2;
+  __ctzdi2;
+  __ctzsi2;
+  __paritydi2;
+  __paritysi2;
+  __popcountdi2;
+  __popcountsi2;
+};
+
+GCC_3.4.2 {
+  __enable_execute_stack;
+};
+
+GCC_4.0.0 {
+  __divdc3;
+  __divsc3;
+  __divxc3;
+  __muldc3;
+  __mulsc3;
+  __mulxc3;
+  __powidf2;
+  __powisf2;
+  __powixf2;
+};
+
+GCC_4.2.0 {
+  _Unwind_GetIPInfo;
+  __floatundidf;
+  __floatundisf;
+  __floatundixf;
+};
+
+GCC_4.3.0 {
+  __bswapdi2;
+  __bswapsi2;
+  __emutls_get_address;
+  __ffssi2;
+};
+
+GCC_4.8.0 {
+  __cpu_indicator_init;
+};
+
+GCC_7.0.0 {
+  __divmoddi4;
+};
+
+GLIBC_2.0 {
+  __deregister_frame;
+  __deregister_frame_info;
+  __divdi3;
+  __moddi3;
+  __register_frame;
+  __register_frame_info;
+  __register_frame_info_table;
+  __register_frame_table;
+  __udivdi3;
+  __umoddi3;
+};
diff --git a/sys-libs/llvm-libunwind/files/version-scripts/gcc_s-x86_64.ver b/sys-libs/llvm-libunwind/files/version-scripts/gcc_s-x86_64.ver
new file mode 100644
index 0000000..390275b
--- /dev/null
+++ b/sys-libs/llvm-libunwind/files/version-scripts/gcc_s-x86_64.ver
@@ -0,0 +1,130 @@
+GCC_3.0 {
+  _Unwind_DeleteException;
+  _Unwind_Find_FDE;
+  _Unwind_ForcedUnwind;
+  _Unwind_GetDataRelBase;
+  _Unwind_GetGR;
+  _Unwind_GetIP;
+  _Unwind_GetLanguageSpecificData;
+  _Unwind_GetRegionStart;
+  _Unwind_GetTextRelBase;
+  _Unwind_RaiseException;
+  _Unwind_Resume;
+  _Unwind_SetGR;
+  _Unwind_SetIP;
+  __absvdi2;
+  __absvsi2;
+  __addvdi3;
+  __addvsi3;
+  __ashlti3;
+  __ashrti3;
+  __clear_cache;
+  __cmpti2;
+  __deregister_frame;
+  __deregister_frame_info;
+  __deregister_frame_info_bases;
+  __divti3;
+  __ffsdi2;
+  __ffsti2;
+  __fixdfti;
+  __fixsfti;
+  __fixunsdfdi;
+  __fixunsdfti;
+  __fixunssfdi;
+  __fixunssfti;
+  __fixunsxfdi;
+  __fixunsxfti;
+  __fixxfti;
+  __floattidf;
+  __floattisf;
+  __floattixf;
+  __lshrti3;
+  __modti3;
+  __multi3;
+  __mulvdi3;
+  __mulvsi3;
+  __negti2;
+  __negvdi2;
+  __negvsi2;
+  __register_frame;
+  __register_frame_info;
+  __register_frame_info_bases;
+  __register_frame_info_table;
+  __register_frame_info_table_bases;
+  __register_frame_table;
+  __subvdi3;
+  __subvsi3;
+  __ucmpti2;
+  __udivmodti4;
+  __udivti3;
+  __umodti3;
+};
+
+GCC_3.3 {
+  _Unwind_Backtrace;
+  _Unwind_FindEnclosingFunction;
+  _Unwind_GetCFA;
+  _Unwind_Resume_or_Rethrow;
+};
+
+GCC_3.3.1 {
+  __gcc_personality_v0;
+};
+
+GCC_3.4 {
+  __clzdi2;
+  __clzti2;
+  __ctzdi2;
+  __ctzti2;
+  __paritydi2;
+  __parityti2;
+  __popcountdi2;
+  __popcountti2;
+};
+
+GCC_3.4.2 {
+  __enable_execute_stack;
+};
+
+GCC_3.4.4 {
+  __absvti2;
+  __addvti3;
+  __mulvti3;
+  __negvti2;
+  __subvti3;
+};
+
+GCC_4.0.0 {
+  __divdc3;
+  __divsc3;
+  __divxc3;
+  __muldc3;
+  __mulsc3;
+  __mulxc3;
+  __powidf2;
+  __powisf2;
+  __powixf2;
+};
+
+GCC_4.2.0 {
+  _Unwind_GetIPInfo;
+  __floatuntidf;
+  __floatuntisf;
+  __floatuntixf;
+};
+
+GCC_4.3.0 {
+  __bswapdi2;
+  __bswapsi2;
+  __divtc3;
+  __emutls_get_address;
+  __multc3;
+};
+
+GCC_4.8.0 {
+  __cpu_indicator_init;
+};
+
+GCC_7.0.0 {
+  __divmodti4;
+};
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-12.0_pre422132-r1.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-12.0_pre422132-r1.ebuild
deleted file mode 120000
index c0c1a20a..0000000
--- a/sys-libs/llvm-libunwind/llvm-libunwind-12.0_pre422132-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-llvm-libunwind-12.0_pre422132.ebuild
\ No newline at end of file
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-12.0_pre422132.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-12.0_pre422132.ebuild
deleted file mode 100644
index fcef50f..0000000
--- a/sys-libs/llvm-libunwind/llvm-libunwind-12.0_pre422132.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit cros-constants cmake-multilib cmake-utils git-2 cros-llvm
-
-DESCRIPTION="C++ runtime stack unwinder from LLVM"
-HOMEPAGE="https://github.com/llvm-mirror/libunwind"
-SRC_URI=""
-EGIT_REPO_URI="${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project
-	${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project"
-EGIT_BRANCH=main
-
-LLVM_HASH="cd442157cff4aad209ae532cbf031abbe10bc1df" # r422132
-LLVM_NEXT_HASH="cd442157cff4aad209ae532cbf031abbe10bc1df" # r422132
-
-LICENSE="|| ( UoI-NCSA MIT )"
-SLOT="0"
-KEYWORDS="*"
-IUSE="cros_host debug llvm-next llvm-tot +static-libs +shared-libs"
-RDEPEND="!${CATEGORY}/libunwind"
-
-DEPEND="${RDEPEND}
-	cros_host? ( sys-devel/llvm )"
-
-pkg_setup() {
-	# Setup llvm toolchain for cross-compilation
-	setup_cross_toolchain
-	export CMAKE_USE_DIR="${S}/libunwind"
-}
-
-src_unpack() {
-	if use llvm-next || use llvm-tot; then
-		export EGIT_COMMIT="${LLVM_NEXT_HASH}"
-	else
-		export EGIT_COMMIT="${LLVM_HASH}"
-	fi
-	git-2_src_unpack
-}
-
-src_prepare() {
-	"${FILESDIR}"/patch_manager/patch_manager.py \
-		--svn_version "$(get_most_recent_revision)" \
-		--patch_metadata_file "${FILESDIR}"/PATCHES.json \
-		--filesdir_path "${FILESDIR}" \
-		--src_path "${S}" || die
-
-	eapply_user
-}
-
-should_enable_asserts() {
-	if use debug || use llvm-tot; then
-		echo yes
-	else
-		echo no
-	fi
-}
-
-multilib_src_configure() {
-	# Allow targeting non-neon targets for armv7a.
-	if [[ ${CATEGORY} == cross-armv7a* ]] ; then
-		append-flags -mfpu=vfpv3
-	fi
-	local libdir=$(get_libdir)
-	local mycmakeargs=(
-		"${mycmakeargs[@]}"
-		"-DLLVM_ENABLE_PROJECTS=libunwind"
-		"-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
-		"-DCMAKE_POSITION_INDEPENDENT_CODE=ON"
-		"-DLLVM_LIBDIR_SUFFIX=${libdir#lib}"
-		"-DLIBUNWIND_ENABLE_ASSERTIONS=$(should_enable_asserts)"
-		"-DLIBUNWIND_ENABLE_STATIC=$(usex static-libs)"
-		"-DLIBUNWIND_ENABLE_SHARED=$(usex shared-libs)"
-		"-DLIBUNWIND_TARGET_TRIPLE=${CTARGET}"
-		"-DLIBUNWIND_ENABLE_THREADS=OFF"
-		"-DLIBUNWIND_ENABLE_CROSS_UNWINDING=ON"
-		"-DCMAKE_INSTALL_PREFIX=${PREFIX}"
-		# Avoid old libstdc++ errors when bootstrapping.
-		"-DLLVM_ENABLE_LIBCXX=ON"
-	)
-
-	cmake-utils_src_configure
-}
-
-multilib_src_install_all() {
-	# Remove files that are installed by sys-libs/llvm-libunwind
-	# to avoid collision when installing cross-${TARGET}/llvm-libunwind.
-	if [[ ${CATEGORY} == cross-* ]]; then
-		rm -rf "${ED}"usr/share || die
-	fi
-
-	# Install headers.
-	insinto "${PREFIX}"/include
-	doins -r "${S}"/libunwind/include/.
-}
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-13.0_pre428724-r4.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-13.0_pre428724-r4.ebuild
new file mode 120000
index 0000000..31ba18f
--- /dev/null
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-13.0_pre428724-r4.ebuild
@@ -0,0 +1 @@
+llvm-libunwind-13.0_pre428724.ebuild
\ No newline at end of file
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-13.0_pre428724.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-13.0_pre428724.ebuild
new file mode 100644
index 0000000..25155b7
--- /dev/null
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-13.0_pre428724.ebuild
@@ -0,0 +1,153 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cros-fuzzer cros-sanitizers cros-constants cmake-multilib cmake-utils git-2 cros-llvm
+
+DESCRIPTION="C++ runtime stack unwinder from LLVM"
+HOMEPAGE="https://github.com/llvm-mirror/libunwind"
+SRC_URI=""
+EGIT_REPO_URI="${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project
+	${CROS_GIT_HOST_URL}/external/github.com/llvm/llvm-project"
+EGIT_BRANCH=main
+
+LLVM_HASH="9968896cd62a62b11ac61085534dd598c4bd3c60" # r428724
+LLVM_NEXT_HASH="0fe7531b75e54909a7cb7f7080634ab2053964ad" # r433403
+
+LICENSE="|| ( UoI-NCSA MIT )"
+SLOT="0"
+KEYWORDS="*"
+IUSE="cros_host debug llvm-next llvm-tot +static-libs +shared-libs synth_libgcc +compiler-rt"
+RDEPEND="!${CATEGORY}/libunwind"
+
+DEPEND="${RDEPEND}
+	cros_host? ( sys-devel/llvm )"
+
+pkg_setup() {
+	# Setup llvm toolchain for cross-compilation
+	setup_cross_toolchain
+	export CMAKE_USE_DIR="${S}/libunwind"
+}
+
+src_unpack() {
+	if use llvm-next || use llvm-tot; then
+		export EGIT_COMMIT="${LLVM_NEXT_HASH}"
+	else
+		export EGIT_COMMIT="${LLVM_HASH}"
+	fi
+	git-2_src_unpack
+}
+
+src_prepare() {
+	"${FILESDIR}"/patch_manager/patch_manager.py \
+		--svn_version "$(get_most_recent_revision)" \
+		--patch_metadata_file "${FILESDIR}"/PATCHES.json \
+		--filesdir_path "${FILESDIR}" \
+		--src_path "${S}" || die
+
+	eapply_user
+}
+
+should_enable_asserts() {
+	if use debug || use llvm-tot; then
+		echo yes
+	else
+		echo no
+	fi
+}
+
+multilib_src_configure() {
+	# Disable sanitization of llvm-libunwind (b/193934733).
+	use_sanitizers && filter_sanitizers
+
+	# Filter default portage flags to allow unwinding.
+	cros_enable_cxx_exceptions
+	append-cppflags "-D_LIBUNWIND_USE_DLADDR=0"
+	# Allow targeting non-neon targets for armv7a.
+	if [[ ${CATEGORY} == cross-armv7a* ]] ; then
+		append-flags -mfpu=vfpv3
+	fi
+
+	local libdir=$(get_libdir)
+	local mycmakeargs=(
+		"${mycmakeargs[@]}"
+		"-DLLVM_ENABLE_PROJECTS=libunwind"
+		"-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY"
+		"-DCMAKE_POSITION_INDEPENDENT_CODE=ON"
+		"-DLLVM_LIBDIR_SUFFIX=${libdir#lib}"
+		"-DLIBUNWIND_ENABLE_ASSERTIONS=$(should_enable_asserts)"
+		"-DLIBUNWIND_ENABLE_STATIC=$(usex static-libs)"
+		"-DLIBUNWIND_ENABLE_SHARED=OFF"
+		"-DLIBUNWIND_ENABLE_THREADS=OFF"
+		"-DLIBUNWIND_ENABLE_CROSS_UNWINDING=OFF"
+		"-DLIBUNWIND_USE_COMPILER_RT=$(usex compiler-rt)"
+		"-DLIBUNWIND_TARGET_TRIPLE=$(get_abi_CTARGET)"
+		"-DCMAKE_INSTALL_PREFIX=${PREFIX}"
+		# Avoid old libstdc++ errors when bootstrapping.
+		"-DLLVM_ENABLE_LIBCXX=ON"
+		"-DLIBUNWIND_HAS_COMMENT_LIB_PRAGMA=OFF"
+		"-DLIBUNWIND_HAS_DL_LIB=OFF"
+		"-DLIBUNWIND_HAS_PTHREAD_LIB=OFF"
+	)
+
+	cmake-utils_src_configure
+}
+
+multilib_src_install_all() {
+	# Remove files that are installed by sys-libs/llvm-libunwind
+	# to avoid collision when installing cross-${TARGET}/llvm-libunwind.
+	if [[ ${CATEGORY} == cross-* ]]; then
+		rm -rf "${ED}"usr/share || die
+	fi
+
+	# Install headers.
+	insinto "${PREFIX}"/include
+	doins -r "${S}"/libunwind/include/.
+}
+
+multilib_src_install() {
+	cmake-utils_src_install
+
+	# Generate libunwind.so
+	local myabi=$(get_abi_CTARGET)
+	if [[ ${myabi} == *armv7a* ]]; then
+		LIBGCC_ARCH="armhf"
+	elif [[ ${myabi} == *aarch64* ]]; then
+		LIBGCC_ARCH="aarch64"
+	elif [[ ${myabi} =~ ^i[0-9]86 ]]; then
+		LIBGCC_ARCH="i386"
+	elif [[ ${myabi} == *x86_64* ]] ; then
+		LIBGCC_ARCH="x86_64"
+	else
+		echo "unsupported arch" && die
+	fi
+
+	local COMPILER_RT_BUILTINS=$($(tc-getCC) -print-libgcc-file-name -rtlib=compiler-rt)
+	local my_installdir="${D%/}${PREFIX}/$(get_libdir)"
+	$(tc-getCC) -o "${my_installdir}"/libunwind.so.1.0                              \
+		${CFLAGS}                                                                   \
+		${LDFLAGS}                                                                  \
+		-shared                                                                     \
+		-nostdlib                                                                   \
+		-Wl,--whole-archive                                                         \
+		-Wl,--version-script,"${FILESDIR}/version-scripts/gcc_s-${LIBGCC_ARCH}.ver" \
+		-Wl,-soname,libunwind.so.1                                                  \
+		"${COMPILER_RT_BUILTINS}"                                                   \
+		"${my_installdir}"/libunwind.a                                              \
+		-Wl,--no-whole-archive                                                      \
+		-lm                                                                         \
+		-lc                                                                         \
+	|| die
+
+	ln -s libunwind.so.1.0                  "${my_installdir}"/libunwind.so.1 || die
+	ln -s libunwind.so.1                    "${my_installdir}"/libunwind.so || die
+	# Generate libgcc{,_eh,_s}
+	if ! use synth_libgcc; then
+		return
+	fi
+	ln -s libunwind.so                      "${my_installdir}"/libgcc_s.so || die
+	ln -s libunwind.so.1                    "${my_installdir}"/libgcc_s.so.1 || die
+	ln -s    libunwind.a                       "${my_installdir}"/libgcc_eh.a || die
+	cp    ${COMPILER_RT_BUILTINS}           "${my_installdir}"/libgcc.a || die
+}
diff --git a/sys-power/dptf-policy-ap/Manifest b/sys-power/dptf-policy-ap/Manifest
index 37b97ad..5ef31f9 100644
--- a/sys-power/dptf-policy-ap/Manifest
+++ b/sys-power/dptf-policy-ap/Manifest
@@ -1 +1 @@
-DIST DptfPolicyAdaptivePerformance-9.0.10500.tbz2 279203 BLAKE2B 591873a8d822435b5cd3e50de39a09c15f21792c3eb38f3e246349da15cce2110e7dc40d5b85597e86930029eb6ff1c705b68c495db03adb4a363b2859059847 SHA512 183b7c1ed7d0a0f318e073936a94d57d865b7e4854a521307224e449c985ec5bda2b3c03e001f5090163ecccdac3c02d229f7593253a01f4001bfbd68bb351f5
+DIST DptfPolicyAdaptivePerformance-9.0.10600.tbz2 292195 BLAKE2B f8ecfcfd021f49e670b80d939b962d4fb47feb41a95394ab8aeb10c6fa0b03c4d77f1fb7af2dd052de64abea14f39cd16d9f095ac24cabf182be1911ab2d4e55 SHA512 85afdde793d8ad6d45ec9c4a291b698f30f2427cb5a1cd1e6598d16fc39b9a89264b5c2eb5a0aed2bb3eb28b8d2a4620a88e92dec8b9834734c76987f7ff3e0f
diff --git a/sys-power/dptf-policy-ap/dptf-policy-ap-9.0.10500-r1.ebuild b/sys-power/dptf-policy-ap/dptf-policy-ap-9.0.10600-r1.ebuild
similarity index 100%
rename from sys-power/dptf-policy-ap/dptf-policy-ap-9.0.10500-r1.ebuild
rename to sys-power/dptf-policy-ap/dptf-policy-ap-9.0.10600-r1.ebuild
diff --git a/sys-power/dptf-policy-passive2/Manifest b/sys-power/dptf-policy-passive2/Manifest
index 36bdcca..e8e3fa5 100644
--- a/sys-power/dptf-policy-passive2/Manifest
+++ b/sys-power/dptf-policy-passive2/Manifest
@@ -1 +1 @@
-DIST DptfPolicyPassive2-9.0.10500.tbz2 228301 BLAKE2B b75797cd229efbcb8bfca31030fc2d15111edcec6fcf8e679c28ea0c32adc2746d50528f21f328122ef48ca8c6cea4f7c2ec37d136337eceb218cb8034866457 SHA512 53accebf7ad2bf3bd062c02e58143e34f850c45bb454f42055251fa33f65a59368e12235d8001b197963af85169d8575a81f3fd78a36ff2c8caa3544291786ca
+DIST DptfPolicyPassive2-9.0.10600.tbz2 239126 BLAKE2B dffde9f12fec37b9c4d38bd0fb4f5bd7a9346a35f7bc5c6700ed79bbf479ab40f84998701312d98143c0ac83fe7772f28f163004acac30f6a57ecbfe7211d548 SHA512 fec61abae0eeb9882491c7d8fe85e0f8f3a9fb3e81482d9e6c3aff2379d02897e9a828169aabeb365a47d73a81a5dbc97d82c46cfbc0fe487338f4a0e9aa89f4
diff --git a/sys-power/dptf-policy-passive2/dptf-policy-passive2-9.0.10500-r1.ebuild b/sys-power/dptf-policy-passive2/dptf-policy-passive2-9.0.10600-r1.ebuild
similarity index 100%
rename from sys-power/dptf-policy-passive2/dptf-policy-passive2-9.0.10500-r1.ebuild
rename to sys-power/dptf-policy-passive2/dptf-policy-passive2-9.0.10600-r1.ebuild
diff --git a/sys-power/dptf-policy-vs/Manifest b/sys-power/dptf-policy-vs/Manifest
index 66c2c22..0f08ac2 100644
--- a/sys-power/dptf-policy-vs/Manifest
+++ b/sys-power/dptf-policy-vs/Manifest
@@ -1 +1 @@
-DIST DptfPolicyVirtualSensor-9.0.10500.tbz2 204679 BLAKE2B 236f7adac3e7537a4bd6e7775f92e4329cd1c9779bb184054722f4a710abcf82f9dbb23cc6693665b7686528fb1c90fe903fe8aa8e0dad8b98f11c65c94c0d0c SHA512 f429c886ca1e2bde150396a28d4b922ea4a9e4c0d3ce951ada0f06d4d990e7195fc126e9496b2d66415ee8e4134c4a9cc050492630fe2089236dc530c519760a
+DIST DptfPolicyVirtualSensor-9.0.10600.tbz2 213015 BLAKE2B e7234076a40d905e6f2a262ef5522abe4cc22af6ba4526a6b53f0062647a8986188262bd997f1caaa1527f0c8989c86ac528fad9d2976d6318e60cad9dc93ccf SHA512 ee142d5eb55cba81c1a125e7ac682d9770a10a17f4f683245a49174e6c7578c02dfeb68c5e0b5f6d08f1c9477e7b7a28eb9fe8610b7c9ac3310ff3e121976f9d
diff --git a/sys-power/dptf-policy-vs/dptf-policy-vs-9.0.10500-r1.ebuild b/sys-power/dptf-policy-vs/dptf-policy-vs-9.0.10600-r1.ebuild
similarity index 100%
rename from sys-power/dptf-policy-vs/dptf-policy-vs-9.0.10500-r1.ebuild
rename to sys-power/dptf-policy-vs/dptf-policy-vs-9.0.10600-r1.ebuild
diff --git a/sys-power/dptf/Manifest b/sys-power/dptf/Manifest
index 1f3f46e..7e2f1ab 100644
--- a/sys-power/dptf/Manifest
+++ b/sys-power/dptf/Manifest
@@ -1 +1 @@
-DIST dptf-9.0.10500.tar.gz 1001105 BLAKE2B a7ccd7a95e430259055ad0f3715e38f41eb1c8b6c25ad96f6e9ab12f1aa550bbba0ead6c087c6e35767df3a81a05f275f1b4cf54d46a1d29f2f942475cdb227d SHA512 0aa470ac8110a4ec19f7b275c2f3af8c12d7fbf6e0afc640d5edeefb09a40ba6dc14bc8b46a601091caa0e721802c31aa9fea708b4329ba9b2d70c8fc894ca46
+DIST dptf-9.0.10600.tar.gz 1018481 BLAKE2B bb22fda444ccbbcdcdb0207a01785b17e59a3520e00631a125f754cbe65c352ed33850dfaa704a29518d5b27f43b3c99ca2f8f0d7290d7d7f92c0a2da0c4aab6 SHA512 419ce9259e11687be5b2b93be6dc6f310d8cd07c968c360ceace608bfbbfad96ac950add8f2f8b513319203f516a05f191dc2057fe73a32dbd7ed50994bc7c5e
diff --git a/sys-power/dptf/dptf-9.0.10500-r1.ebuild b/sys-power/dptf/dptf-9.0.10500-r1.ebuild
deleted file mode 100644
index 4389c74..0000000
--- a/sys-power/dptf/dptf-9.0.10500-r1.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright (c) 2015 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=6
-
-inherit cmake-utils toolchain-funcs
-
-DESCRIPTION="Intel(R) Dynamic Platform & Thermal Framework"
-HOMEPAGE="https://01.org/dptf/"
-SRC_URI="https://github.com/intel/dptf/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0 GPL-2 BSD"
-SLOT="0"
-KEYWORDS="-* amd64 x86"
-IUSE="debug generated_cros_config unibuild"
-
-# Makefile for DPTF policies
-CMAKE_USE_DIR="${S}/DPTF/Linux"
-# Makefile for ESIF daemon
-ESIF_BUILD_DIR="ESIF/Products/ESIF_UF/Linux"
-# Makefile for ESIF compression library
-ESIFCMP_BUILD_DIR="ESIF/Products/ESIF_CMP/Linux"
-# Makefile for ESIF web server
-ESIFWS_BUILD_DIR="ESIF/Products/ESIF_WS/Linux"
-
-DEPEND="
-	unibuild? (
-		!generated_cros_config? ( chromeos-base/chromeos-config )
-		generated_cros_config? ( chromeos-base/chromeos-config-bsp:= )
-	)
-	chromeos-base/chromeos-config-tools
-	sys-apps/dbus
-	sys-libs/ncurses sys-libs/readline"
-RDEPEND="${DEPEND}"
-
-src_configure() {
-	# cmake configuration for DPTF policy shared libraries
-	# TODO(crbug.com/1044735): Temporary disable the warning. Remove when fixed.
-	append-flags -Wno-unsequenced
-	local mycmakeargs=( -DCHROMIUM_BUILD=YES )
-	use x86 && mycmakeargs+=( -DBUILD_ARCH=32bit )
-	use amd64 && mycmakeargs+=( -DBUILD_ARCH=64bit )
-	cmake-utils_src_configure
-}
-
-src_compile() {
-	# Build ESIF daemon
-	local extra_cflags=""
-	use debug && extra_cflags="Debug"
-
-	for build_dir in "${ESIF_BUILD_DIR}" "${ESIFCMP_BUILD_DIR}" "${ESIFWS_BUILD_DIR}"; do
-		emake \
-			-C ${build_dir} \
-			CC="$(tc-getCC)" \
-			BUILD="${extra_cflags}" \
-			OS=Chrome
-	done
-
-	# Build DPTF policy shared libraries
-	cmake-utils_src_compile
-}
-
-src_install() {
-	# Install ESIF daemon and configuration files
-	local startcmd_src_dir="ESIF/Packages/Installers/chrome"
-	dobin "${ESIF_BUILD_DIR}/esif_ufd"
-	insinto "/etc/dptf"
-	doins ESIF/Packages/DSP/dsp.dv
-	insinto "/etc/init"
-	doins "${startcmd_src_dir}/dptf.conf"
-
-	# Install ESIF loadable libraries
-	dolib.so "${ESIFCMP_BUILD_DIR}/esif_cmp.so"
-	dolib.so "${ESIFWS_BUILD_DIR}/esif_ws.so"
-
-	# Install DPTF policy shared libraries
-	local policy_build_dir="${BUILD_DIR}"/$(usex amd64 x64 x32)
-	dolib.so "${policy_build_dir}/Dptf.so"
-	dolib.so ${policy_build_dir}/DptfPolicyActive.so
-	dolib.so ${policy_build_dir}/DptfPolicyCritical.so
-	dolib.so ${policy_build_dir}/DptfPolicyPassive.so
-}
diff --git a/sys-power/dptf/dptf-9.0.10600-r1.ebuild b/sys-power/dptf/dptf-9.0.10600-r1.ebuild
new file mode 100644
index 0000000..d68c42f
--- /dev/null
+++ b/sys-power/dptf/dptf-9.0.10600-r1.ebuild
@@ -0,0 +1,79 @@
+# Copyright (c) 2015 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=6
+
+inherit cros-unibuild cmake-utils toolchain-funcs
+
+DESCRIPTION="Intel(R) Dynamic Platform & Thermal Framework"
+HOMEPAGE="https://01.org/dptf/"
+SRC_URI="https://github.com/intel/dptf/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0 GPL-2 BSD"
+SLOT="0"
+KEYWORDS="-* amd64 x86"
+IUSE="debug"
+
+# Makefile for DPTF policies
+CMAKE_USE_DIR="${S}/DPTF/Linux"
+# Makefile for ESIF daemon
+ESIF_BUILD_DIR="ESIF/Products/ESIF_UF/Linux"
+# Makefile for ESIF compression library
+ESIFCMP_BUILD_DIR="ESIF/Products/ESIF_CMP/Linux"
+# Makefile for ESIF web server
+ESIFWS_BUILD_DIR="ESIF/Products/ESIF_WS/Linux"
+
+DEPEND="
+	chromeos-base/chromeos-config-tools
+	sys-apps/dbus
+	sys-libs/ncurses sys-libs/readline"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+	# cmake configuration for DPTF policy shared libraries
+	# TODO(crbug.com/1044735): Temporary disable the warning. Remove when fixed.
+	append-flags -Wno-unsequenced
+	local mycmakeargs=( -DCHROMIUM_BUILD=YES )
+	use x86 && mycmakeargs+=( -DBUILD_ARCH=32bit )
+	use amd64 && mycmakeargs+=( -DBUILD_ARCH=64bit )
+	cmake-utils_src_configure
+}
+
+src_compile() {
+	# Build ESIF daemon
+	local extra_cflags=""
+	use debug && extra_cflags="Debug"
+
+	for build_dir in "${ESIF_BUILD_DIR}" "${ESIFCMP_BUILD_DIR}" "${ESIFWS_BUILD_DIR}"; do
+		emake \
+			-C ${build_dir} \
+			CC="$(tc-getCC)" \
+			BUILD="${extra_cflags}" \
+			OS=Chrome
+	done
+
+	# Build DPTF policy shared libraries
+	cmake-utils_src_compile
+}
+
+src_install() {
+	# Install ESIF daemon and configuration files
+	local startcmd_src_dir="ESIF/Packages/Installers/chrome"
+	dobin "${ESIF_BUILD_DIR}/esif_ufd"
+	insinto "/etc/dptf"
+	doins ESIF/Packages/DSP/dsp.dv
+	insinto "/etc/init"
+	doins "${startcmd_src_dir}/dptf.conf"
+
+	# Install ESIF loadable libraries
+	dolib.so "${ESIFCMP_BUILD_DIR}/esif_cmp.so"
+	dolib.so "${ESIFWS_BUILD_DIR}/esif_ws.so"
+
+	# Install DPTF policy shared libraries
+	local policy_build_dir="${BUILD_DIR}"/$(usex amd64 x64 x32)
+	dolib.so "${policy_build_dir}/Dptf.so"
+	dolib.so ${policy_build_dir}/DptfPolicyActive.so
+	dolib.so ${policy_build_dir}/DptfPolicyCritical.so
+	dolib.so ${policy_build_dir}/DptfPolicyPassive.so
+}
diff --git a/virtual/chromeos-config-bsp/chromeos-config-bsp-1-r4.ebuild b/virtual/chromeos-config-bsp/chromeos-config-bsp-1-r4.ebuild
deleted file mode 120000
index 087abaf..0000000
--- a/virtual/chromeos-config-bsp/chromeos-config-bsp-1-r4.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-chromeos-config-bsp-1.ebuild
\ No newline at end of file
diff --git a/virtual/chromeos-config-bsp/chromeos-config-bsp-1.ebuild b/virtual/chromeos-config-bsp/chromeos-config-bsp-1.ebuild
deleted file mode 100644
index ff3299e..0000000
--- a/virtual/chromeos-config-bsp/chromeos-config-bsp-1.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright (c) 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Chrome OS BSP config virtual package"
-HOMEPAGE="http://src.chromium.org"
-
-LICENSE="metapackage"
-SLOT="0"
-KEYWORDS="*"
-
-IUSE=""
-
-# TODO(bmgordon): Remove chromeos-base/chromeos-config-bsp once all the
-#                 boards using unibuild are adjusted to use virtual package.
-DEPEND="
-	chromeos-base/chromeos-config-bsp
-"
-
-RDEPEND="${DEPEND}"
diff --git a/virtual/chromium-os-fuzzers/chromium-os-fuzzers-1-r59.ebuild b/virtual/chromium-os-fuzzers/chromium-os-fuzzers-1-r59.ebuild
deleted file mode 100644
index 6b2618b..0000000
--- a/virtual/chromium-os-fuzzers/chromium-os-fuzzers-1-r59.ebuild
+++ /dev/null
@@ -1,77 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
-# the canonical empty project.
-CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
-CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
-CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
-CROS_WORKON_LOCALNAME="../platform/empty-project"
-
-inherit cros-workon
-
-DESCRIPTION="List of packages that should be fuzzed"
-HOMEPAGE="https://dev.chromium.org/"
-
-LICENSE="metapackage"
-SLOT="0"
-KEYWORDS="*"
-IUSE="asan msan"
-
-RDEPEND="
-	chromeos-base/arc-adbd[fuzzer]
-	asan? ( chromeos-base/arc-keymaster[fuzzer] )
-	chromeos-base/arc-obb-mounter[fuzzer]
-	chromeos-base/arc-setup[fuzzer]
-	chromeos-base/authpolicy[fuzzer]
-	chromeos-base/biod[fuzzer]
-	chromeos-base/chaps[fuzzer]
-	chromeos-base/chromeos-ec[fuzzer]
-	chromeos-base/chromeos-login[fuzzer]
-	chromeos-base/crash-reporter[fuzzer]
-	chromeos-base/cros-disks[fuzzer]
-	chromeos-base/crosdns[fuzzer]
-	chromeos-base/cryptohome[fuzzer]
-	chromeos-base/cups-fuzz[fuzzer]
-	chromeos-base/diagnostics[fuzzer]
-	chromeos-base/dlcservice[fuzzer]
-	chromeos-base/foomatic_shell[fuzzer]
-	chromeos-base/ghostscript-fuzz[fuzzer]
-	chromeos-base/hammerd[fuzzer]
-	chromeos-base/imageloader[fuzzer]
-	chromeos-base/kerberos[fuzzer]
-	chromeos-base/libbrillo[fuzzer]
-	chromeos-base/libipp[fuzzer]
-	asan? ( chromeos-base/libvda[fuzzer] )
-	chromeos-base/metrics[fuzzer]
-	chromeos-base/ml[fuzzer]
-	chromeos-base/modemfwd[fuzzer]
-	chromeos-base/p2p[fuzzer]
-	chromeos-base/patchpanel[fuzzer]
-	chromeos-base/patchpanel-client[fuzzer]
-	chromeos-base/permission_broker[fuzzer]
-	chromeos-base/power_manager[fuzzer]
-	chromeos-base/runtime_probe[fuzzer]
-	>=chromeos-base/shill-0.0.1-r2205[fuzzer]
-	chromeos-base/smbprovider[fuzzer]
-	chromeos-base/system-proxy[fuzzer]
-	chromeos-base/trunks[fuzzer]
-	chromeos-base/u2fd[fuzzer]
-	chromeos-base/update_engine[fuzzer]
-	chromeos-base/usb_bouncer[fuzzer]
-	chromeos-base/vboot_reference[fuzzer]
-	chromeos-base/vm_guest_tools[fuzzer]
-	chromeos-base/vpn-manager[fuzzer]
-	asan? ( chromeos-base/vm_host_tools[fuzzer] )
-	dev-libs/modp_b64[fuzzer]
-	asan? ( dev-rust/p9[fuzzer] )
-	dev-util/bsdiff[fuzzer]
-	dev-util/puffin[fuzzer]
-	media-gfx/sane-airscan[fuzzer]
-	media-libs/virglrenderer[fuzzer]
-	media-sound/adhd[fuzzer]
-	net-dns/avahi[fuzzer]
-	net-wireless/bluez[fuzzer]
-"
diff --git a/virtual/chromium-os-fuzzers/chromium-os-fuzzers-1-r62.ebuild b/virtual/chromium-os-fuzzers/chromium-os-fuzzers-1-r62.ebuild
new file mode 100644
index 0000000..6f2b4b8
--- /dev/null
+++ b/virtual/chromium-os-fuzzers/chromium-os-fuzzers-1-r62.ebuild
@@ -0,0 +1,80 @@
+# Copyright 2018 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
+# the canonical empty project.
+CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
+CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="../platform/empty-project"
+
+inherit cros-workon
+
+DESCRIPTION="List of packages that should be fuzzed"
+HOMEPAGE="https://dev.chromium.org/"
+
+LICENSE="metapackage"
+SLOT="0"
+KEYWORDS="*"
+IUSE="asan msan"
+
+RDEPEND="
+	chromeos-base/arc-adbd[fuzzer]
+	asan? ( chromeos-base/arc-keymaster[fuzzer] )
+	chromeos-base/arc-obb-mounter[fuzzer]
+	chromeos-base/arc-setup[fuzzer]
+	chromeos-base/authpolicy[fuzzer]
+	chromeos-base/biod[fuzzer]
+	chromeos-base/chaps[fuzzer]
+	chromeos-base/chromeos-ec[fuzzer]
+	chromeos-base/chromeos-login[fuzzer]
+	chromeos-base/crash-reporter[fuzzer]
+	chromeos-base/cros-disks[fuzzer]
+	chromeos-base/crosdns[fuzzer]
+	chromeos-base/cryptohome[fuzzer]
+	chromeos-base/cups-fuzz[fuzzer]
+	chromeos-base/diagnostics[fuzzer]
+	chromeos-base/dlcservice[fuzzer]
+	chromeos-base/dns-proxy[fuzzer]
+	chromeos-base/foomatic_shell[fuzzer]
+	chromeos-base/ghostscript-fuzz[fuzzer]
+	chromeos-base/hammerd[fuzzer]
+	chromeos-base/imageloader[fuzzer]
+	chromeos-base/kerberos[fuzzer]
+	chromeos-base/libbrillo[fuzzer]
+	chromeos-base/libipp[fuzzer]
+	asan? ( chromeos-base/libvda[fuzzer] )
+	chromeos-base/metrics[fuzzer]
+	chromeos-base/ml[fuzzer]
+	chromeos-base/modemfwd[fuzzer]
+	chromeos-base/p2p[fuzzer]
+	chromeos-base/patchpanel[fuzzer]
+	chromeos-base/patchpanel-client[fuzzer]
+	chromeos-base/permission_broker[fuzzer]
+	chromeos-base/power_manager[fuzzer]
+	chromeos-base/runtime_probe[fuzzer]
+	>=chromeos-base/shill-0.0.1-r2205[fuzzer]
+	chromeos-base/smbprovider[fuzzer]
+	chromeos-base/sommelier[fuzzer]
+	chromeos-base/system-proxy[fuzzer]
+	chromeos-base/trunks[fuzzer]
+	chromeos-base/u2fd[fuzzer]
+	chromeos-base/update_engine[fuzzer]
+	chromeos-base/usb_bouncer[fuzzer]
+	chromeos-base/vboot_reference[fuzzer]
+	chromeos-base/vm_guest_tools[fuzzer]
+	chromeos-base/vpn-manager[fuzzer]
+	asan? ( chromeos-base/vm_host_tools[fuzzer] )
+	dev-libs/modp_b64[fuzzer]
+	asan? ( dev-rust/p9[fuzzer] )
+	dev-util/bsdiff[fuzzer]
+	dev-util/puffin[fuzzer]
+	media-gfx/sane-airscan[fuzzer]
+	media-libs/virglrenderer[fuzzer]
+	media-sound/adhd[fuzzer]
+	net-dns/avahi[fuzzer]
+	net-wireless/bluez[fuzzer]
+	net-wireless/wpa_supplicant-cros[fuzzer]
+"
diff --git a/virtual/chromium-os-fuzzers/chromium-os-fuzzers-9999.ebuild b/virtual/chromium-os-fuzzers/chromium-os-fuzzers-9999.ebuild
index da8ca41..c9225ff 100644
--- a/virtual/chromium-os-fuzzers/chromium-os-fuzzers-9999.ebuild
+++ b/virtual/chromium-os-fuzzers/chromium-os-fuzzers-9999.ebuild
@@ -35,6 +35,7 @@
 	chromeos-base/cups-fuzz[fuzzer]
 	chromeos-base/diagnostics[fuzzer]
 	chromeos-base/dlcservice[fuzzer]
+	chromeos-base/dns-proxy[fuzzer]
 	chromeos-base/foomatic_shell[fuzzer]
 	chromeos-base/ghostscript-fuzz[fuzzer]
 	chromeos-base/hammerd[fuzzer]
@@ -54,6 +55,7 @@
 	chromeos-base/runtime_probe[fuzzer]
 	>=chromeos-base/shill-0.0.1-r2205[fuzzer]
 	chromeos-base/smbprovider[fuzzer]
+	chromeos-base/sommelier[fuzzer]
 	chromeos-base/system-proxy[fuzzer]
 	chromeos-base/trunks[fuzzer]
 	chromeos-base/u2fd[fuzzer]
@@ -72,4 +74,5 @@
 	media-sound/adhd[fuzzer]
 	net-dns/avahi[fuzzer]
 	net-wireless/bluez[fuzzer]
+	net-wireless/wpa_supplicant-cros[fuzzer]
 "
diff --git a/virtual/lpe-support/lpe-support-1-r7.ebuild b/virtual/lpe-support/lpe-support-1-r8.ebuild
similarity index 100%
rename from virtual/lpe-support/lpe-support-1-r7.ebuild
rename to virtual/lpe-support/lpe-support-1-r8.ebuild
diff --git a/virtual/lpe-support/lpe-support-1.ebuild b/virtual/lpe-support/lpe-support-1.ebuild
index c71e569..0bffaaa 100644
--- a/virtual/lpe-support/lpe-support-1.ebuild
+++ b/virtual/lpe-support/lpe-support-1.ebuild
@@ -10,14 +10,15 @@
 SLOT="0"
 KEYWORDS="-* amd64 x86"
 S="${WORKDIR}"
-IUSE="skl_lpe apl_lpe kbl_lpe cnl_lpe glk_lpe"
+IUSE="skl_lpe apl_lpe kbl_lpe cnl_lpe glk_lpe has_private_audio_topology"
 # Add dependencies on other ebuilds from within this board overlay
 RDEPEND="
 	apl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_apl] )
 	cnl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_cnl] )
 	glk_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_glk] )
 	kbl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_kbl] )
-	media-libs/lpe-support-topology
+	!has_private_audio_topology? ( media-libs/lpe-support-topology )
+	has_private_audio_topology? ( media-libs/lpe-support-topology-private )
 	media-libs/lpe-support-blacklist
 	skl_lpe? ( sys-kernel/linux-firmware[linux_firmware_adsp_skl] )
 "
diff --git a/virtual/rust/rust-1.47.0-r7.ebuild b/virtual/rust/rust-1.47.0-r7.ebuild
deleted file mode 120000
index d8aa9da..0000000
--- a/virtual/rust/rust-1.47.0-r7.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-rust-1.47.0.ebuild
\ No newline at end of file
diff --git a/virtual/rust/rust-1.51.0-r1.ebuild b/virtual/rust/rust-1.51.0-r1.ebuild
deleted file mode 120000
index 47e6435..0000000
--- a/virtual/rust/rust-1.51.0-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-rust-1.51.0.ebuild
\ No newline at end of file
diff --git a/virtual/rust/rust-1.51.0.ebuild b/virtual/rust/rust-1.51.0.ebuild
deleted file mode 100644
index 6f680ad..0000000
--- a/virtual/rust/rust-1.51.0.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 2018 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-DESCRIPTION="Virtual for the Rust language compiler"
-HOMEPAGE=""
-
-LICENSE="metapackage"
-SLOT="0/${PV}"
-KEYWORDS="*"
-
-DEPEND="
-	~dev-lang/rust-${PV}:=
-"
diff --git a/virtual/rust/rust-1.47.0.ebuild b/virtual/rust/rust-1.55.0.ebuild
similarity index 100%
rename from virtual/rust/rust-1.47.0.ebuild
rename to virtual/rust/rust-1.55.0.ebuild
diff --git a/virtual/target-chromium-os-dev/target-chromium-os-dev-1-r69.ebuild b/virtual/target-chromium-os-dev/target-chromium-os-dev-1-r69.ebuild
deleted file mode 100644
index bc62ec3..0000000
--- a/virtual/target-chromium-os-dev/target-chromium-os-dev-1-r69.ebuild
+++ /dev/null
@@ -1,186 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
-# the canonical empty project.
-CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
-CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
-CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
-CROS_WORKON_LOCALNAME="../platform/empty-project"
-
-inherit cros-workon
-
-DESCRIPTION="List of packages that are needed inside the Chromium OS dev image"
-HOMEPAGE="https://dev.chromium.org/"
-
-LICENSE="metapackage"
-SLOT="0"
-KEYWORDS="*"
-# Note: Do not utilize USE=internal here.  Update virtual/target-chrome-os-dev.
-IUSE="
-	chromeless_tty
-	cras
-	diag
-	nvme
-	opengl
-	pam
-	+power_management
-	+profile
-	python_targets_python2_7
-	+shill
-	tpm
-	tpm2
-	usb
-	vaapi
-	video_cards_amdgpu
-	video_cards_intel
-	vulkan
-"
-
-# The dependencies here are meant to capture "all the packages
-# developers want to use for development, test, or debug".  This
-# category is meant to include all developer use cases, including
-# software test and debug, performance tuning, hardware validation,
-# and debugging failures running autotest.
-#
-# To protect developer images from changes in other ebuilds you
-# should include any package with a user constituency, regardless of
-# whether that package is included in the base Chromium OS image or
-# any other ebuild.
-#
-# Don't include packages that are indirect dependencies: only
-# include a package if a file *in that package* is expected to be
-# useful.
-
-################################################################################
-#
-# CROS_* : Dependencies for CrOS devices (coreutils, etc.)
-#
-################################################################################
-CROS_X86_RDEPEND="
-	app-benchmarks/i7z
-	power_management? ( dev-util/turbostat )
-	sys-apps/dmidecode
-	sys-apps/pciutils
-	sys-boot/syslinux
-	vaapi? (
-		chromeos-base/libva-fake-driver
-		media-gfx/vadumpcaps
-		media-video/libva-utils
-	)
-	video_cards_amdgpu? ( x11-apps/igt-gpu-tools )
-	video_cards_intel? ( x11-apps/igt-gpu-tools )
-"
-
-RDEPEND="
-	x86? ( ${CROS_X86_RDEPEND} )
-	amd64? ( ${CROS_X86_RDEPEND} )
-"
-
-RDEPEND="${RDEPEND}
-	pam? ( app-admin/sudo )
-	app-admin/sysstat
-	app-arch/bzip2
-	app-arch/gzip
-	app-arch/tar
-	app-arch/unzip
-	app-arch/xz-utils
-	app-arch/zip
-	profile? (
-		chromeos-base/quipper
-		app-benchmarks/libc-bench
-		net-analyzer/netperf
-		dev-util/perf
-	)
-	app-benchmarks/stress-ng
-	app-crypt/nss
-	tpm? ( app-crypt/tpm-tools )
-	app-editors/nano
-	app-editors/qemacs
-	app-editors/vim
-	app-misc/edid-decode
-	app-misc/evtest
-	app-misc/pax-utils
-	app-misc/screen
-	app-portage/portage-utils
-	app-shells/bash
-	app-text/tree
-	cras? (
-		chromeos-base/audiotest
-		media-sound/sox
-	)
-	chromeos-base/avtest_label_detect
-	chromeos-base/chromeos-dev-root
-	chromeos-base/cros-config-test
-	chromeos-base/cryptohome-dev-utils
-	tpm2? ( chromeos-base/g2f_tools )
-	!chromeless_tty? ( chromeos-base/graphics-utils-go )
-	chromeos-base/policy_utils
-	chromeos-base/protofiles
-	!chromeless_tty? ( chromeos-base/screen-capture-utils )
-	shill? ( chromeos-base/shill-test-scripts )
-	python_targets_python2_7? ( chromeos-base/touch_firmware_test )
-	chromeos-base/usi-test
-	dev-vcs/git
-	net-analyzer/tcpdump
-	net-analyzer/traceroute
-	net-dialup/minicom
-	net-dns/bind-tools
-	net-misc/dhcp
-	diag? ( net-misc/diag )
-	net-misc/iperf:2
-	net-misc/iputils
-	net-misc/openssh
-	net-misc/rsync
-	net-wireless/iw
-	net-wireless/wireless-tools
-	python_targets_python2_7? ( dev-lang/python:2.7 )
-	dev-lang/python:3.6
-	dev-libs/libgpiod
-	dev-python/protobuf-python
-	dev-python/cherrypy
-	dev-python/dbus-python
-	dev-python/hid-tools
-	python_targets_python2_7? ( dev-util/hdctools )
-	dev-util/mem
-	dev-util/strace
-	media-libs/libyuv-test
-	media-libs/openh264
-	vulkan? ( media-libs/vulkan-layers )
-	media-tv/v4l-utils
-	media-video/yavta
-	net-dialup/lrzsz
-	net-fs/sshfs
-	net-misc/curl
-	net-misc/wget
-	sys-apps/coreboot-utils
-	sys-apps/coreutils
-	sys-apps/diffutils
-	sys-apps/file
-	sys-apps/findutils
-	sys-apps/flashrom-tester
-	sys-apps/gawk
-	sys-apps/i2c-tools
-	sys-apps/iotools
-	sys-apps/kbd
-	sys-apps/less
-	sys-apps/mmc-utils
-	nvme? ( sys-apps/nvme-cli )
-	sys-apps/portage
-	sys-apps/smartmontools
-	usb? ( sys-apps/usbutils )
-	sys-apps/which
-	sys-block/fio
-	sys-devel/gdb
-	sys-fs/fuse
-	sys-fs/lvm2
-	sys-fs/mtd-utils
-	power_management? ( sys-power/powertop )
-	sys-process/procps
-	sys-process/psmisc
-	sys-process/time
-	virtual/autotest-capability
-	virtual/chromeos-bsp-dev
-"
diff --git a/virtual/target-chromium-os-dev/target-chromium-os-dev-1-r73.ebuild b/virtual/target-chromium-os-dev/target-chromium-os-dev-1-r73.ebuild
new file mode 100644
index 0000000..f3588e2
--- /dev/null
+++ b/virtual/target-chromium-os-dev/target-chromium-os-dev-1-r73.ebuild
@@ -0,0 +1,192 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
+# the canonical empty project.
+CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
+CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="../platform/empty-project"
+
+inherit cros-workon
+
+DESCRIPTION="List of packages that are needed inside the Chromium OS dev image"
+HOMEPAGE="https://dev.chromium.org/"
+
+LICENSE="metapackage"
+SLOT="0"
+KEYWORDS="*"
+# Note: Do not utilize USE=internal here.  Update virtual/target-chrome-os-dev.
+IUSE="
+	chromeless_tty
+	cras
+	diag
+	lldbserver
+	nvme
+	opengl
+	pam
+	+power_management
+	+profile
+	python_targets_python2_7
+	+shill
+	tpm
+	tpm2
+	usb
+	vaapi
+	video_cards_amdgpu
+	video_cards_intel
+	video_cards_mediatek
+	video_cards_msm
+	vulkan
+"
+
+# The dependencies here are meant to capture "all the packages
+# developers want to use for development, test, or debug".  This
+# category is meant to include all developer use cases, including
+# software test and debug, performance tuning, hardware validation,
+# and debugging failures running autotest.
+#
+# To protect developer images from changes in other ebuilds you
+# should include any package with a user constituency, regardless of
+# whether that package is included in the base Chromium OS image or
+# any other ebuild.
+#
+# Don't include packages that are indirect dependencies: only
+# include a package if a file *in that package* is expected to be
+# useful.
+
+################################################################################
+#
+# CROS_* : Dependencies for CrOS devices (coreutils, etc.)
+#
+################################################################################
+CROS_X86_RDEPEND="
+	app-benchmarks/i7z
+	power_management? ( dev-util/turbostat )
+	sys-apps/dmidecode
+	sys-apps/pciutils
+	sys-boot/syslinux
+	vaapi? (
+		chromeos-base/libva-fake-driver
+		media-gfx/vadumpcaps
+		media-video/libva-utils
+	)
+"
+
+RDEPEND="
+	x86? ( ${CROS_X86_RDEPEND} )
+	amd64? ( ${CROS_X86_RDEPEND} )
+"
+
+RDEPEND="${RDEPEND}
+	pam? ( app-admin/sudo )
+	app-admin/sysstat
+	app-arch/bzip2
+	app-arch/gzip
+	app-arch/tar
+	app-arch/unzip
+	app-arch/xz-utils
+	app-arch/zip
+	profile? (
+		chromeos-base/quipper
+		app-benchmarks/libc-bench
+		net-analyzer/netperf
+		dev-util/perf
+	)
+	app-benchmarks/stress-ng
+	app-crypt/nss
+	tpm? ( app-crypt/tpm-tools )
+	app-editors/nano
+	app-editors/qemacs
+	app-editors/vim
+	app-misc/edid-decode
+	app-misc/evtest
+	app-misc/pax-utils
+	app-misc/screen
+	app-portage/portage-utils
+	app-shells/bash
+	app-text/tree
+	cras? (
+		chromeos-base/audiotest
+		media-sound/sox
+	)
+	chromeos-base/avtest_label_detect
+	chromeos-base/chromeos-dev-root
+	chromeos-base/cros-config-test
+	chromeos-base/cryptohome-dev-utils
+	tpm2? ( chromeos-base/g2f_tools )
+	!chromeless_tty? ( chromeos-base/graphics-utils-go )
+	chromeos-base/policy_utils
+	chromeos-base/protofiles
+	!chromeless_tty? ( chromeos-base/screen-capture-utils )
+	shill? ( chromeos-base/shill-test-scripts )
+	python_targets_python2_7? ( chromeos-base/touch_firmware_test )
+	chromeos-base/usi-test
+	dev-vcs/git
+	net-analyzer/tcpdump
+	net-analyzer/traceroute
+	net-dialup/minicom
+	net-dns/bind-tools
+	net-misc/dhcp
+	diag? ( net-misc/diag )
+	net-misc/iperf:2
+	net-misc/iputils
+	net-misc/openssh
+	net-misc/rsync
+	net-wireless/iw
+	net-wireless/wireless-tools
+	python_targets_python2_7? ( dev-lang/python:2.7 )
+	dev-lang/python:3.6
+	dev-libs/libgpiod
+	dev-python/protobuf-python
+	dev-python/cherrypy
+	dev-python/dbus-python
+	dev-python/hid-tools
+	python_targets_python2_7? ( dev-util/hdctools )
+	lldbserver? ( dev-util/lldb-server )
+	dev-util/mem
+	dev-util/strace
+	media-libs/libyuv-test
+	media-libs/openh264
+	vulkan? ( media-libs/vulkan-layers )
+	media-tv/v4l-utils
+	media-video/yavta
+	net-dialup/lrzsz
+	net-fs/sshfs
+	net-misc/curl
+	net-misc/wget
+	sys-apps/coreboot-utils
+	sys-apps/coreutils
+	sys-apps/diffutils
+	sys-apps/file
+	sys-apps/findutils
+	sys-apps/flashrom-tester
+	sys-apps/gawk
+	sys-apps/i2c-tools
+	sys-apps/iotools
+	sys-apps/kbd
+	sys-apps/less
+	sys-apps/mmc-utils
+	nvme? ( sys-apps/nvme-cli )
+	sys-apps/portage
+	sys-apps/smartmontools
+	usb? ( sys-apps/usbutils )
+	sys-apps/which
+	sys-block/fio
+	sys-devel/gdb
+	sys-fs/fuse
+	sys-fs/lvm2
+	sys-fs/mtd-utils
+	power_management? ( sys-power/powertop )
+	sys-process/procps
+	sys-process/psmisc
+	sys-process/time
+	virtual/autotest-capability
+	virtual/chromeos-bsp-dev
+	video_cards_amdgpu? ( x11-apps/igt-gpu-tools )
+	video_cards_intel? ( x11-apps/igt-gpu-tools )
+	video_cards_mediatek? ( x11-apps/igt-gpu-tools )
+	video_cards_msm? ( x11-apps/igt-gpu-tools )
+"
diff --git a/virtual/target-chromium-os-dev/target-chromium-os-dev-9999.ebuild b/virtual/target-chromium-os-dev/target-chromium-os-dev-9999.ebuild
index f083a3d..29a4fec 100644
--- a/virtual/target-chromium-os-dev/target-chromium-os-dev-9999.ebuild
+++ b/virtual/target-chromium-os-dev/target-chromium-os-dev-9999.ebuild
@@ -21,6 +21,7 @@
 	chromeless_tty
 	cras
 	diag
+	lldbserver
 	nvme
 	opengl
 	pam
@@ -34,6 +35,8 @@
 	vaapi
 	video_cards_amdgpu
 	video_cards_intel
+	video_cards_mediatek
+	video_cards_msm
 	vulkan
 "
 
@@ -68,8 +71,6 @@
 		media-gfx/vadumpcaps
 		media-video/libva-utils
 	)
-	video_cards_amdgpu? ( x11-apps/igt-gpu-tools )
-	video_cards_intel? ( x11-apps/igt-gpu-tools )
 "
 
 RDEPEND="
@@ -142,6 +143,7 @@
 	dev-python/dbus-python
 	dev-python/hid-tools
 	python_targets_python2_7? ( dev-util/hdctools )
+	lldbserver? ( dev-util/lldb-server )
 	dev-util/mem
 	dev-util/strace
 	media-libs/libyuv-test
@@ -181,4 +183,8 @@
 	sys-process/time
 	virtual/autotest-capability
 	virtual/chromeos-bsp-dev
+	video_cards_amdgpu? ( x11-apps/igt-gpu-tools )
+	video_cards_intel? ( x11-apps/igt-gpu-tools )
+	video_cards_mediatek? ( x11-apps/igt-gpu-tools )
+	video_cards_msm? ( x11-apps/igt-gpu-tools )
 "
diff --git a/virtual/target-chromium-os-initramfs/target-chromium-os-initramfs-1-r1.ebuild b/virtual/target-chromium-os-initramfs/target-chromium-os-initramfs-1-r1.ebuild
deleted file mode 100644
index 9b571e1..0000000
--- a/virtual/target-chromium-os-initramfs/target-chromium-os-initramfs-1-r1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 2021 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
-# the canonical empty project.
-CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
-CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
-CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
-CROS_WORKON_LOCALNAME="../platform/empty-project"
-
-inherit cros-workon
-
-DESCRIPTION="List of packages that are needed inside the Chromium OS initramfs"
-HOMEPAGE="https://dev.chromium.org/"
-
-LICENSE="metapackage"
-SLOT="0"
-KEYWORDS="*"
-
-IUSE="
-	minios
-	minios_ramfs
-"
-
-REQUIRED_USE="
-	minios? ( minios_ramfs )
-	minios_ramfs? ( minios )
-"
-
-RDEPEND="
-	minios? ( chromeos-base/minios )
-	chromeos-base/chromeos-initramfs
-"
diff --git a/virtual/target-chromium-os-initramfs/target-chromium-os-initramfs-1-r2.ebuild b/virtual/target-chromium-os-initramfs/target-chromium-os-initramfs-1-r2.ebuild
new file mode 100644
index 0000000..82ce4d6
--- /dev/null
+++ b/virtual/target-chromium-os-initramfs/target-chromium-os-initramfs-1-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
+# the canonical empty project.
+CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
+CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="../platform/empty-project"
+
+inherit cros-workon
+
+DESCRIPTION="List of packages that are needed inside the Chromium OS initramfs"
+HOMEPAGE="https://dev.chromium.org/"
+
+LICENSE="metapackage"
+SLOT="0"
+KEYWORDS="*"
+
+IUSE="
+	minios
+"
+
+RDEPEND="
+	minios? ( chromeos-base/minios )
+"
diff --git a/virtual/target-chromium-os-initramfs/target-chromium-os-initramfs-9999.ebuild b/virtual/target-chromium-os-initramfs/target-chromium-os-initramfs-9999.ebuild
index 571f351..a06924a 100644
--- a/virtual/target-chromium-os-initramfs/target-chromium-os-initramfs-9999.ebuild
+++ b/virtual/target-chromium-os-initramfs/target-chromium-os-initramfs-9999.ebuild
@@ -19,15 +19,8 @@
 
 IUSE="
 	minios
-	minios_ramfs
-"
-
-REQUIRED_USE="
-	minios? ( minios_ramfs )
-	minios_ramfs? ( minios )
 "
 
 RDEPEND="
 	minios? ( chromeos-base/minios )
-	chromeos-base/chromeos-initramfs
 "
diff --git a/virtual/target-chromium-os-sdk-post-cross/target-chromium-os-sdk-post-cross-1-r5.ebuild b/virtual/target-chromium-os-sdk-post-cross/target-chromium-os-sdk-post-cross-1-r5.ebuild
deleted file mode 100644
index 956dc67..0000000
--- a/virtual/target-chromium-os-sdk-post-cross/target-chromium-os-sdk-post-cross-1-r5.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 2017 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
-CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
-CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
-CROS_WORKON_LOCALNAME="../platform/empty-project"
-
-inherit cros-workon
-
-DESCRIPTION="List of packages that are needed inside the SDK, but after we've
-built all the toolchain packages that we install separately via binpkgs.  This
-avoids circular dependencies when bootstrapping."
-HOMEPAGE="http://dev.chromium.org/"
-
-LICENSE="metapackage"
-SLOT="0"
-KEYWORDS="*"
-IUSE=""
-
-# The vast majority of packages should not be listed here!  You most likely
-# want to update virtual/target-chromium-os-sdk instead.  Only list packages
-# here that need the cross-compiler toolchains installed first.
-RDEPEND="
-	dev-lang/rust
-	dev-rust/bindgen
-	dev-rust/dbus-codegen
-	dev-rust/protobuf-codegen
-	dev-util/cxxbridge-cmd
-	sys-apps/mosys
-	sys-apps/ripgrep
-	dev-embedded/coreboot-sdk
-"
diff --git a/virtual/target-chromium-os-sdk-post-cross/target-chromium-os-sdk-post-cross-1-r8.ebuild b/virtual/target-chromium-os-sdk-post-cross/target-chromium-os-sdk-post-cross-1-r8.ebuild
new file mode 100644
index 0000000..0e34b95
--- /dev/null
+++ b/virtual/target-chromium-os-sdk-post-cross/target-chromium-os-sdk-post-cross-1-r8.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2017 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
+CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="../platform/empty-project"
+
+inherit cros-workon
+
+DESCRIPTION="List of packages that are needed inside the SDK, but after we've
+built all the toolchain packages that we install separately via binpkgs.  This
+avoids circular dependencies when bootstrapping."
+HOMEPAGE="http://dev.chromium.org/"
+
+LICENSE="metapackage"
+SLOT="0"
+KEYWORDS="*"
+IUSE=""
+
+# The vast majority of packages should not be listed here!  You most likely
+# want to update virtual/target-chromium-os-sdk instead.  Only list packages
+# here that need the cross-compiler toolchains installed first.
+RDEPEND="
+	dev-lang/rust
+	dev-rust/bindgen
+	dev-rust/dbus-codegen
+	dev-rust/protobuf-codegen
+	dev-util/cxxbridge-cmd
+	sys-apps/ripgrep
+	dev-embedded/coreboot-sdk
+	dev-embedded/ti50-sdk
+	chromeos-base/sirenia-tools
+"
diff --git a/virtual/target-chromium-os-sdk-post-cross/target-chromium-os-sdk-post-cross-9999.ebuild b/virtual/target-chromium-os-sdk-post-cross/target-chromium-os-sdk-post-cross-9999.ebuild
index f306b13..dd41219 100644
--- a/virtual/target-chromium-os-sdk-post-cross/target-chromium-os-sdk-post-cross-9999.ebuild
+++ b/virtual/target-chromium-os-sdk-post-cross/target-chromium-os-sdk-post-cross-9999.ebuild
@@ -27,7 +27,8 @@
 	dev-rust/dbus-codegen
 	dev-rust/protobuf-codegen
 	dev-util/cxxbridge-cmd
-	sys-apps/mosys
 	sys-apps/ripgrep
 	dev-embedded/coreboot-sdk
+	dev-embedded/ti50-sdk
+	chromeos-base/sirenia-tools
 "
diff --git a/virtual/target-chromium-os-sdk/target-chromium-os-sdk-1-r205.ebuild b/virtual/target-chromium-os-sdk/target-chromium-os-sdk-1-r205.ebuild
deleted file mode 100644
index 8701e98..0000000
--- a/virtual/target-chromium-os-sdk/target-chromium-os-sdk-1-r205.ebuild
+++ /dev/null
@@ -1,548 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
-# the canonical empty project.
-CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
-CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
-CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
-CROS_WORKON_LOCALNAME="../platform/empty-project"
-
-inherit cros-workon
-
-DESCRIPTION="List of packages that are needed inside the Chromium OS SDK"
-HOMEPAGE="https://dev.chromium.org/"
-
-LICENSE="metapackage"
-SLOT="0"
-KEYWORDS="*"
-# Note: Do not utilize USE=internal here.  Update virtual/target-chrome-os-sdk.
-IUSE=""
-
-# Block the old package to force people to clean up.
-RDEPEND="
-	!chromeos-base/hard-host-depends
-	!virtual/hard-host-depends-bsp
-"
-
-# Basic utilities
-RDEPEND="${RDEPEND}
-	app-arch/bzip2
-	app-arch/cpio
-	app-arch/gcab
-	app-arch/gzip
-	app-arch/p7zip
-	app-arch/tar
-	app-shells/bash
-	net-misc/iputils
-	net-misc/rsync
-	sys-apps/baselayout
-	sys-apps/coreutils
-	sys-apps/diffutils
-	sys-apps/dtc
-	sys-apps/file
-	sys-apps/findutils
-	sys-apps/gawk
-	sys-apps/grep
-	sys-apps/sed
-	sys-apps/shadow
-	sys-apps/texinfo
-	sys-apps/util-linux
-	sys-apps/which
-	sys-devel/autoconf
-	sys-devel/autoconf-archive
-	sys-devel/automake:1.10
-	sys-devel/automake:1.11
-	sys-devel/automake:1.15
-	sys-devel/binutils
-	sys-devel/bison
-	sys-devel/flex
-	sys-devel/gcc
-	sys-devel/gnuconfig
-	sys-devel/grit-i18n
-	sys-devel/libtool
-	sys-devel/m4
-	sys-devel/make
-	sys-devel/patch
-	sys-fs/e2fsprogs
-	sys-fs/f2fs-tools
-	sys-libs/ncurses
-	sys-libs/readline
-	sys-libs/zlib
-	sys-process/procps
-	sys-process/psmisc
-	virtual/editor
-	virtual/libc
-	virtual/man
-	virtual/os-headers
-	virtual/package-manager
-	virtual/pager
-	"
-
-# Needed to run setup crossdev, run build scripts, and make a bootable image.
-RDEPEND="${RDEPEND}
-	app-arch/lbzip2
-	app-arch/lz4
-	app-arch/lzop
-	app-arch/pigz
-	app-arch/pixz
-	app-admin/sudo
-	app-crypt/efitools
-	app-crypt/sbsigntools
-	chromeos-base/zephyr-build-tools
-	dev-embedded/binman
-	dev-embedded/cbootimage
-	dev-embedded/tegrarcm
-	dev-embedded/u-boot-tools
-	dev-util/ccache
-	media-gfx/pngcrush
-	>=sys-apps/dtc-1.3.0-r5
-	sys-boot/bootstub
-	sys-boot/grub
-	sys-boot/syslinux
-	sys-devel/crossdev
-	sys-fs/dosfstools
-	sys-fs/squashfs-tools
-	sys-fs/mtd-utils
-	"
-
-# Needed to build Android/ARC userland code.
-RDEPEND="${RDEPEND}
-	app-misc/jq
-	sys-devel/aapt
-	sys-devel/arc-toolchain-master
-	sys-devel/arc-toolchain-p
-	sys-devel/arc-toolchain-r
-	sys-devel/dex2oatds
-	"
-
-# Needed to run 'repo selfupdate'
-RDEPEND="${RDEPEND}
-	app-crypt/gnupg
-	"
-
-# Host dependencies for building cross-compiled packages.
-RDEPEND="${RDEPEND}
-	app-admin/eselect-opengl
-	app-admin/eselect-mesa
-	app-arch/cabextract
-	app-arch/makeself
-	>=app-arch/pbzip2-1.1.1-r1
-	app-arch/rpm2targz
-	app-arch/sharutils
-	app-arch/unzip
-	app-crypt/nss
-	app-doc/xmltoman
-	app-emulation/qemu
-	app-emulation/qemu-binfmt-wrapper
-	!app-emulation/qemu-kvm
-	!app-emulation/qemu-user
-	app-text/asciidoc
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	app-text/texi2html
-	app-text/xmlto
-	chromeos-base/google-breakpad
-	chromeos-base/chromeos-base
-	chromeos-base/chromeos-common-script
-	>=chromeos-base/chromeos-config-host-0.0.2-r491
-	chromeos-base/chromite-sdk
-	chromeos-base/cros-devutils[cros_host]
-	chromeos-base/cros-testutils
-	chromeos-base/ec-devutils
-	chromeos-base/minijail
-	chromeos-base/test-server
-	dev-db/m17n-contrib
-	dev-db/m17n-db
-	dev-go/protobuf
-	dev-lang/closure-compiler-bin
-	dev-lang/nasm
-	dev-lang/python:2.7
-	dev-lang/python:3.6
-	dev-lang/swig
-	dev-lang/tcl
-	dev-lang/yasm
-	dev-libs/dbus-glib
-	dev-libs/flatbuffers
-	>=dev-libs/glib-2.26.1
-	net-libs/grpc
-	dev-libs/libgcrypt
-	dev-libs/libxslt
-	dev-libs/libyaml
-	dev-libs/m17n-lib
-	dev-libs/protobuf
-	dev-libs/protobuf-c
-	dev-libs/wayland
-	dev-python/cffi
-	dev-python/cherrypy
-	dev-python/dbus-python
-	dev-python/dpkt
-	dev-python/ecdsa
-	dev-python/future
-	dev-python/intelhex
-	dev-python/kconfiglib
-	dev-python/m2crypto
-	dev-python/mako
-	dev-python/netifaces
-	dev-python/pexpect
-	dev-python/pillow
-	dev-python/psutil
-	dev-python/py
-	dev-python/pycairo
-	dev-python/pycparser
-	dev-python/pygobject
-	dev-python/pyopenssl
-	dev-python/pytest
-	dev-python/python-evdev
-	dev-python/pyudev
-	dev-python/pyusb
-	dev-python/setproctitle
-	!dev-python/socksipy
-	dev-python/tempita
-	dev-python/ws4py
-	dev-util/bazel
-	dev-util/cmake
-	dev-util/dwarves
-	dev-util/gob
-	dev-util/gdbus-codegen
-	dev-util/gperf
-	dev-util/gtk-doc
-	dev-util/hdctools
-	>=dev-util/gtk-doc-am-1.13
-	>=dev-util/intltool-0.30
-	dev-util/scons
-	dev-util/vulkan-headers
-	>=dev-vcs/git-1.7.2
-	>=media-libs/freetype-2.2.1
-	>=media-libs/lcms-2.6:2
-	net-fs/sshfs
-	net-libs/rpcsvc-proto
-	net-misc/gsutil
-	sys-apps/usbutils
-	!sys-apps/nih-dbus-tool
-	sys-devel/autofdo
-	sys-devel/bc
-	>=sys-libs/glibc-2.27
-	sys-libs/libcxxabi
-	sys-libs/libcxx
-	sys-libs/llvm-libunwind
-	virtual/udev
-	sys-libs/libnih
-	sys-power/iasl
-	virtual/modutils
-	x11-apps/mkfontscale
-	x11-apps/xcursorgen
-	x11-apps/xkbcomp
-	>=x11-misc/util-macros-1.2
-	"
-
-# Various fonts are needed in order to generate messages for the
-# chromeos-initramfs package.
-RDEPEND="${RDEPEND}
-	chromeos-base/chromeos-fonts
-	"
-
-# Host dependencies for bitmap block (chromeos-bmpblk) to to render messages.
-RDEPEND="${RDEPEND}
-	gnome-base/librsvg
-	"
-
-# Host dependencies for building chromium.
-# Intermediate executables built for the host, then run to generate data baked
-# into chromium, need these packages to be present in the host environment in
-# order to successfully build.
-# See: http://codereview.chromium.org/7550002/
-RDEPEND="${RDEPEND}
-	dev-libs/atk
-	dev-libs/glib
-	media-libs/fontconfig
-	media-libs/freetype
-	x11-libs/cairo
-	x11-libs/libX11
-	x11-libs/libXi
-	x11-libs/libXrandr
-	x11-libs/libXtst
-	x11-libs/pango
-	"
-
-# Host dependencies that create usernames/groups we need to pull over to target.
-RDEPEND="${RDEPEND}
-	sys-apps/dbus
-	"
-
-# Host dependencies that are needed by mod_image_for_test.
-RDEPEND="${RDEPEND}
-	sys-process/lsof
-	"
-
-# Useful utilities for developers.
-RDEPEND="${RDEPEND}
-	app-arch/zip
-	app-editors/nano
-	app-editors/qemacs
-	app-editors/vim
-	app-portage/eclass-manpages
-	app-portage/gentoolkit
-	app-portage/portage-utils
-	app-shells/bash-completion
-	dev-go/go-tools
-	dev-go/golint
-	dev-lang/go
-	dev-python/ipython
-	dev-util/codespell
-	dev-util/patchutils
-	dev-util/perf
-	dev-util/shfmt
-	net-analyzer/netperf
-	sys-apps/less
-	sys-apps/man-pages
-	sys-apps/pv
-	sys-devel/smatch
-	"
-
-# Host dependencies used by chromite on build servers
-RDEPEND="${RDEPEND}
-	dev-python/google-cloud-logging
-	dev-python/mysqlclient
-	dev-python/pyparsing
-	dev-python/virtualenv
-	"
-
-# Host dependencies that are needed for unit tests
-RDEPEND="${RDEPEND}
-	x11-misc/xkeyboard-config
-	"
-
-# Host dependencies that are needed to build the autotest server components.
-RDEPEND="${RDEPEND}
-	dev-util/google-web-toolkit
-	"
-
-# Host dependencies that are needed for autotests.
-RDEPEND="${RDEPEND}
-	dev-python/btsocket
-	dev-python/selenium
-	sys-apps/iproute2
-	sys-apps/net-tools
-	"
-
-# Host dependencies that are needed for media applications (ex, mplayer) used in
-# factory.
-RDEPEND="${RDEPEND}
-	media-video/ffmpeg
-	"
-
-# Host dependencies that are needed to create and sign images
-RDEPEND="${RDEPEND}
-	>=chromeos-base/vboot_reference-1.0-r174
-	chromeos-base/verity
-	!dev-python/ahocorasick
-	dev-python/pyahocorasick
-	sys-fs/libfat
-	"
-
-# Host dependencies that are needed for cros_generate_update_payload.
-RDEPEND="${RDEPEND}
-	chromeos-base/update_engine
-	sys-fs/e2tools
-	"
-
-# Host dependencies to run unit tests within the chroot
-RDEPEND="${RDEPEND}
-	dev-cpp/gflags
-	dev-go/mock
-	dev-python/mock
-	dev-python/mox
-	dev-python/unittest2
-	"
-# Host dependencies to run autotest's unit tests within the chroot.
-RDEPEND="${RDEPEND}
-	dev-python/httplib2
-	dev-python/pyshark
-	dev-python/python-dateutil
-	dev-python/six
-	"
-
-# Host dependencies for running pylint within the chroot
-RDEPEND="${RDEPEND}
-	dev-python/pylint
-	"
-
-# Host dependencies to scp binaries from the binary component server
-RDEPEND="${RDEPEND}
-	net-misc/openssh
-	net-misc/socat
-	net-misc/wget
-	"
-
-# Host dependencies for HWID processing
-RDEPEND="${RDEPEND}
-	dev-python/pyyaml
-	"
-
-# Tools for working with compiler generated profile information
-# (such as coverage analysis in common.mk)
-RDEPEND="${RDEPEND}
-	dev-util/lcov
-	"
-
-# Host dependencies for building Platform2
-RDEPEND="${RDEPEND}
-	chromeos-base/chromeos-dbus-bindings
-	dev-util/meson
-	dev-util/ninja
-	"
-
-# Host dependencies for converting sparse into raw images (simg2img).
-RDEPEND="${RDEPEND}
-	brillo-base/libsparse
-	"
-
-# Host dependencies for building Chromium code (libmojo)
-RDEPEND="${RDEPEND}
-	dev-python/ply
-	dev-util/gn
-	"
-
-# Host dependencies for building
-RDEPEND="${RDEPEND}
-	dev-util/tclint
-	"
-
-# Uninstall these packages.
-RDEPEND="${RDEPEND}
-	!net-misc/dhcpcd
-	"
-
-# Host dependencies for building/testing factory software
-RDEPEND="${RDEPEND}
-	dev-libs/closure-library
-	dev-libs/closure_linter
-	dev-python/autopep8
-	dev-python/django
-	dev-python/enum34
-	dev-python/jsonrpclib
-	dev-python/jsonschema
-	dev-python/python-gnupg
-	dev-python/requests
-	dev-python/sphinx
-	dev-python/twisted
-	!dev-python/twisted-core
-	!dev-python/twisted-web
-	www-servers/nginx
-	"
-
-# Host dependencies for running integration tests
-RDEPEND="${RDEPEND}
-	chromeos-base/tast-cmd
-	chromeos-base/tast-remote-tests-cros
-	"
-
-# Host dependencies for building harfbuzz
-RDEPEND="${RDEPEND}
-	dev-util/ragel
-	"
-
-# Host dependencies for building chromeos-bootimage
-RDEPEND="${RDEPEND}
-	sys-apps/coreboot-utils
-	"
-
-# Host dependencies for building chromeos-firmware-*
-RDEPEND="${RDEPEND}
-	chromeos-base/ec-utils
-	"
-
-# Host dependencies for the chromeos-ec workflow
-RDEPEND="${RDEPEND}
-	dev-libs/libprotobuf-mutator
-	dev-libs/openssl
-	dev-util/unifdef
-	"
-
-# Host dependencies for the AP/EC/GSC firmware release testing workflow
-RDEPEND="${RDEPEND}
-	sys-firmware/fw-engprod-tools
-	"
-
-# Host dependencies for audio topology generation
-RDEPEND="${RDEPEND}
-	media-sound/alsa-utils"
-
-# Host dependency for dev-libs/boost package
-RDEPEND="${RDEPEND}
-	dev-util/boost-build"
-
-# Host dependency for managing SELinux
-RDEPEND="${RDEPEND}
-	chromeos-base/sepolicy-analyze
-	sys-apps/checkpolicy
-	sys-apps/restorecon
-	sys-apps/secilc
-	sys-apps/selinux-python"
-
-# Host dependencies that are needed for chromite/bin/cros_generate_android_breakpad_symbols
-RDEPEND="${RDEPEND}
-	chromeos-base/android-relocation-packer"
-
-# Host dependencies for generating and testing update payloads
-RDEPEND="${RDEPEND}
-	chromeos-base/update_payload"
-
-# Needed to compile moblab mobmonitor ui
-RDEPEND="${RDEPEND}
-	net-libs/nodejs"
-
-# Needed to compile img-ddk
-RDEPEND="${RDEPEND}
-	dev-python/clang-python"
-
-# Moblab's new RPC server backend will use grpc
-RDEPEND="${RDEPEND}
-	dev-python/grpcio-tools
-	net-libs/grpc-web"
-
-# Autotest's new RPC server will use grpc
-RDEPEND="${RDEPEND}
-	dev-python/grpcio"
-
-# Needed for unit tests of tast-local-tests-cros
-RDEPEND="${RDEPEND}
-	dev-util/strace"
-
-# Host dependencies for termina_build_image
-RDEPEND="${RDEPEND}
-	app-misc/fdupes"
-
-# Host dependencies that lets us boost to performance governor
-# to speed up builds.  https://crbug.com/1008932
-RDEPEND="${RDEPEND}
-	sys-power/cpupower"
-
-# Base layout for java that installs cacerts
-RDEPEND="${RDEPEND}
-	sys-apps/baselayout-java"
-
-# CTS P depends on Java 8 or 9, CTS R depends on Java 9 or later.
-# Include android-sdk to contain both JDK8 and JDK11 in the chroot.
-RDEPEND="${RDEPEND}
-	chromeos-base/android-sdk"
-
-# Needed to optimise Android APKs shipped in demo_mode_resources.
-RDEPEND="${RDEPEND}
-	sys-devel/zipalign"
-
-# Needed to build IPA interface in libcamera.
-RDEPEND="${RDEPEND}
-	dev-python/jinja"
-
-# Needed for packages that need older 4.9.2 GCC.
-RDEPEND="${RDEPEND}
-	sys-devel/gcc-bin"
-
-# Needed to build crosvm without ebuild in chroot.
-RDEPEND="${RDEPEND}
-	dev-libs/wayland-protocols"
diff --git a/virtual/target-chromium-os-sdk/target-chromium-os-sdk-1-r208.ebuild b/virtual/target-chromium-os-sdk/target-chromium-os-sdk-1-r208.ebuild
new file mode 100644
index 0000000..4ac1c4e
--- /dev/null
+++ b/virtual/target-chromium-os-sdk/target-chromium-os-sdk-1-r208.ebuild
@@ -0,0 +1,544 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
+# the canonical empty project.
+CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
+CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="../platform/empty-project"
+
+inherit cros-workon
+
+DESCRIPTION="List of packages that are needed inside the Chromium OS SDK"
+HOMEPAGE="https://dev.chromium.org/"
+
+LICENSE="metapackage"
+SLOT="0"
+KEYWORDS="*"
+# Note: Do not utilize USE=internal here.  Update virtual/target-chrome-os-sdk.
+IUSE=""
+
+# Block the old package to force people to clean up.
+RDEPEND="
+	!chromeos-base/hard-host-depends
+	!virtual/hard-host-depends-bsp
+"
+
+# Basic utilities
+RDEPEND="${RDEPEND}
+	app-arch/bzip2
+	app-arch/cpio
+	app-arch/gcab
+	app-arch/gzip
+	app-arch/p7zip
+	app-arch/tar
+	app-shells/bash
+	net-misc/iputils
+	net-misc/rsync
+	sys-apps/baselayout
+	sys-apps/coreutils
+	sys-apps/diffutils
+	sys-apps/dtc
+	sys-apps/file
+	sys-apps/findutils
+	sys-apps/gawk
+	sys-apps/grep
+	sys-apps/sed
+	sys-apps/shadow
+	sys-apps/texinfo
+	sys-apps/util-linux
+	sys-apps/which
+	sys-devel/autoconf
+	sys-devel/autoconf-archive
+	sys-devel/automake:1.10
+	sys-devel/automake:1.11
+	sys-devel/automake:1.15
+	sys-devel/binutils
+	sys-devel/bison
+	sys-devel/flex
+	sys-devel/gcc
+	sys-devel/gnuconfig
+	sys-devel/grit-i18n
+	sys-devel/libtool
+	sys-devel/m4
+	sys-devel/make
+	sys-devel/patch
+	sys-fs/e2fsprogs
+	sys-fs/f2fs-tools
+	sys-libs/ncurses
+	sys-libs/readline
+	sys-libs/zlib
+	sys-process/procps
+	sys-process/psmisc
+	virtual/editor
+	virtual/libc
+	virtual/man
+	virtual/os-headers
+	virtual/package-manager
+	virtual/pager
+	"
+
+# Needed to run setup crossdev, run build scripts, and make a bootable image.
+RDEPEND="${RDEPEND}
+	app-arch/lbzip2
+	app-arch/lz4
+	app-arch/lzop
+	app-arch/pigz
+	app-arch/pixz
+	app-admin/sudo
+	app-crypt/efitools
+	app-crypt/sbsigntools
+	chromeos-base/zephyr-build-tools
+	dev-embedded/binman
+	dev-embedded/cbootimage
+	dev-embedded/tegrarcm
+	dev-embedded/u-boot-tools
+	dev-util/ccache
+	media-gfx/pngcrush
+	>=sys-apps/dtc-1.3.0-r5
+	sys-boot/bootstub
+	sys-boot/grub
+	sys-boot/syslinux
+	sys-devel/crossdev
+	sys-fs/dosfstools
+	sys-fs/squashfs-tools
+	sys-fs/mtd-utils
+	"
+
+# Needed to build Android/ARC userland code.
+RDEPEND="${RDEPEND}
+	app-misc/jq
+	sys-devel/aapt
+	sys-devel/arc-toolchain-master
+	sys-devel/arc-toolchain-p
+	sys-devel/arc-toolchain-r
+	sys-devel/dex2oatds
+	"
+
+# Needed to run 'repo selfupdate'
+RDEPEND="${RDEPEND}
+	app-crypt/gnupg
+	"
+
+# Host dependencies for building cross-compiled packages.
+RDEPEND="${RDEPEND}
+	app-admin/eselect-opengl
+	app-admin/eselect-mesa
+	app-arch/cabextract
+	app-arch/makeself
+	>=app-arch/pbzip2-1.1.1-r1
+	app-arch/rpm2targz
+	app-arch/sharutils
+	app-arch/unzip
+	app-crypt/nss
+	app-doc/xmltoman
+	app-emulation/qemu
+	app-emulation/qemu-binfmt-wrapper
+	!app-emulation/qemu-kvm
+	!app-emulation/qemu-user
+	app-text/asciidoc
+	app-text/docbook-xml-dtd:4.2
+	app-text/docbook-xml-dtd:4.5
+	app-text/docbook-xsl-stylesheets
+	app-text/texi2html
+	app-text/xmlto
+	chromeos-base/google-breakpad
+	chromeos-base/chromeos-base
+	chromeos-base/chromeos-common-script
+	>=chromeos-base/chromeos-config-host-0.0.2-r491
+	chromeos-base/chromite-sdk
+	chromeos-base/cros-devutils[cros_host]
+	chromeos-base/cros-testutils
+	chromeos-base/ec-devutils
+	chromeos-base/minijail
+	dev-db/m17n-contrib
+	dev-db/m17n-db
+	dev-go/protobuf
+	dev-lang/closure-compiler-bin
+	dev-lang/nasm
+	dev-lang/python:2.7
+	dev-lang/python:3.6
+	dev-lang/swig
+	dev-lang/tcl
+	dev-lang/yasm
+	dev-libs/dbus-glib
+	dev-libs/flatbuffers
+	>=dev-libs/glib-2.26.1
+	net-libs/grpc
+	dev-libs/libgcrypt
+	dev-libs/libxslt
+	dev-libs/libyaml
+	dev-libs/m17n-lib
+	dev-libs/protobuf
+	dev-libs/protobuf-c
+	dev-libs/wayland
+	dev-python/cffi
+	dev-python/cherrypy
+	dev-python/dbus-python
+	dev-python/dpkt
+	dev-python/ecdsa
+	dev-python/future
+	dev-python/intelhex
+	dev-python/kconfiglib
+	dev-python/m2crypto
+	dev-python/mako
+	dev-python/netifaces
+	dev-python/pexpect
+	dev-python/pillow
+	dev-python/psutil
+	dev-python/py
+	dev-python/pycairo
+	dev-python/pycparser
+	dev-python/pygobject
+	dev-python/pyopenssl
+	dev-python/pytest
+	dev-python/python-evdev
+	dev-python/python-magic
+	dev-python/pyudev
+	dev-python/pyusb
+	dev-python/setproctitle
+	!dev-python/socksipy
+	dev-python/tempita
+	dev-python/ws4py
+	dev-util/bazel
+	dev-util/cmake
+	dev-util/dwarves
+	dev-util/gob
+	dev-util/gdbus-codegen
+	dev-util/gperf
+	dev-util/gtk-doc
+	dev-util/hdctools
+	>=dev-util/gtk-doc-am-1.13
+	>=dev-util/intltool-0.30
+	dev-util/scons
+	dev-util/test-services
+	dev-util/vulkan-headers
+	>=dev-vcs/git-1.7.2
+	>=media-libs/freetype-2.2.1
+	>=media-libs/lcms-2.6:2
+	net-fs/sshfs
+	net-libs/rpcsvc-proto
+	net-misc/gsutil
+	sys-apps/usbutils
+	!sys-apps/nih-dbus-tool
+	sys-devel/autofdo
+	sys-devel/bc
+	>=sys-libs/glibc-2.27
+	sys-libs/libcxxabi
+	sys-libs/libcxx
+	sys-libs/llvm-libunwind
+	virtual/udev
+	sys-libs/libnih
+	sys-power/iasl
+	virtual/modutils
+	x11-apps/mkfontscale
+	x11-apps/xcursorgen
+	x11-apps/xkbcomp
+	>=x11-misc/util-macros-1.2
+	"
+
+# Various fonts are needed in order to generate messages for the
+# chromeos-initramfs package.
+RDEPEND="${RDEPEND}
+	chromeos-base/chromeos-fonts
+	"
+
+# Host dependencies for bitmap block (chromeos-bmpblk) to to render messages.
+RDEPEND="${RDEPEND}
+	gnome-base/librsvg
+	"
+
+# Host dependencies for building chromium.
+# Intermediate executables built for the host, then run to generate data baked
+# into chromium, need these packages to be present in the host environment in
+# order to successfully build.
+# See: http://codereview.chromium.org/7550002/
+RDEPEND="${RDEPEND}
+	dev-libs/atk
+	dev-libs/glib
+	media-libs/fontconfig
+	media-libs/freetype
+	x11-libs/cairo
+	x11-libs/libX11
+	x11-libs/libXi
+	x11-libs/libXrandr
+	x11-libs/libXtst
+	x11-libs/pango
+	"
+
+# Host dependencies that create usernames/groups we need to pull over to target.
+RDEPEND="${RDEPEND}
+	sys-apps/dbus
+	"
+
+# Host dependencies that are needed by mod_image_for_test.
+RDEPEND="${RDEPEND}
+	sys-process/lsof
+	"
+
+# Useful utilities for developers.
+RDEPEND="${RDEPEND}
+	app-arch/zip
+	app-editors/nano
+	app-editors/qemacs
+	app-editors/vim
+	app-portage/eclass-manpages
+	app-portage/gentoolkit
+	app-portage/portage-utils
+	app-shells/bash-completion
+	dev-go/go-tools
+	dev-go/golint
+	dev-lang/go
+	dev-python/ipython
+	dev-util/codespell
+	dev-util/patchutils
+	dev-util/perf
+	dev-util/shfmt
+	net-analyzer/netperf
+	sys-apps/less
+	sys-apps/man-pages
+	sys-apps/pv
+	sys-devel/smatch
+	"
+
+# Host dependencies used by chromite on build servers
+RDEPEND="${RDEPEND}
+	dev-python/google-cloud-logging
+	dev-python/mysqlclient
+	dev-python/pyparsing
+	dev-python/virtualenv
+	"
+
+# Host dependencies that are needed for unit tests
+RDEPEND="${RDEPEND}
+	x11-misc/xkeyboard-config
+	"
+
+# Host dependencies that are needed to build the autotest server components.
+RDEPEND="${RDEPEND}
+	dev-util/google-web-toolkit
+	"
+
+# Host dependencies that are needed for autotests.
+RDEPEND="${RDEPEND}
+	dev-python/btsocket
+	dev-python/selenium
+	sys-apps/iproute2
+	sys-apps/net-tools
+	"
+
+# Host dependencies that are needed for media applications (ex, mplayer) used in
+# factory.
+RDEPEND="${RDEPEND}
+	media-video/ffmpeg
+	"
+
+# Host dependencies that are needed to create and sign images
+RDEPEND="${RDEPEND}
+	>=chromeos-base/vboot_reference-1.0-r174
+	chromeos-base/verity
+	!dev-python/ahocorasick
+	dev-python/pyahocorasick
+	sys-fs/libfat
+	"
+
+# Host dependencies that are needed for cros_generate_update_payload.
+RDEPEND="${RDEPEND}
+	chromeos-base/update_engine
+	sys-fs/e2tools
+	"
+
+# Host dependencies to run unit tests within the chroot
+RDEPEND="${RDEPEND}
+	dev-cpp/gflags
+	dev-go/mock
+	dev-python/mock
+	dev-python/mox
+	dev-python/unittest2
+	"
+# Host dependencies to run autotest's unit tests within the chroot.
+RDEPEND="${RDEPEND}
+	dev-python/httplib2
+	dev-python/pyshark
+	dev-python/python-dateutil
+	dev-python/six
+	"
+
+# Host dependencies for running pylint within the chroot
+RDEPEND="${RDEPEND}
+	dev-python/pylint
+	"
+
+# Host dependencies to scp binaries from the binary component server
+RDEPEND="${RDEPEND}
+	net-misc/openssh
+	net-misc/socat
+	net-misc/wget
+	"
+
+# Host dependencies for HWID processing
+RDEPEND="${RDEPEND}
+	dev-python/pyyaml
+	"
+
+# Tools for working with compiler generated profile information
+# (such as coverage analysis in common.mk)
+RDEPEND="${RDEPEND}
+	dev-util/lcov
+	"
+
+# Host dependencies for building Platform2
+RDEPEND="${RDEPEND}
+	chromeos-base/chromeos-dbus-bindings
+	dev-util/meson
+	dev-util/ninja
+	"
+
+# Host dependencies for converting sparse into raw images (simg2img).
+RDEPEND="${RDEPEND}
+	brillo-base/libsparse
+	"
+
+# Host dependencies for building Chromium code (libmojo)
+RDEPEND="${RDEPEND}
+	dev-python/ply
+	dev-util/gn
+	"
+
+# Uninstall these packages.
+RDEPEND="${RDEPEND}
+	!net-misc/dhcpcd
+	"
+
+# Host dependencies for building/testing factory software
+RDEPEND="${RDEPEND}
+	dev-libs/closure-library
+	dev-libs/closure_linter
+	dev-python/autopep8
+	dev-python/django
+	dev-python/enum34
+	dev-python/jsonrpclib
+	dev-python/jsonschema
+	dev-python/python-gnupg
+	dev-python/requests
+	dev-python/sphinx
+	dev-python/twisted
+	!dev-python/twisted-core
+	!dev-python/twisted-web
+	www-servers/nginx
+	"
+
+# Host dependencies for running integration tests
+RDEPEND="${RDEPEND}
+	chromeos-base/tast-cmd
+	chromeos-base/tast-remote-tests-cros
+	"
+
+# Host dependencies for building harfbuzz
+RDEPEND="${RDEPEND}
+	dev-util/ragel
+	"
+
+# Host dependencies for building chromeos-bootimage
+RDEPEND="${RDEPEND}
+	sys-apps/coreboot-utils
+	"
+
+# Host dependencies for building chromeos-firmware-*
+RDEPEND="${RDEPEND}
+	chromeos-base/ec-utils
+	"
+
+# Host dependencies for the chromeos-ec workflow
+RDEPEND="${RDEPEND}
+	dev-libs/libprotobuf-mutator
+	dev-libs/openssl
+	dev-util/unifdef
+	"
+
+# Host dependencies for the AP/EC/GSC firmware release testing workflow
+RDEPEND="${RDEPEND}
+	sys-firmware/fw-engprod-tools
+	"
+
+# Host dependencies for audio topology generation
+RDEPEND="${RDEPEND}
+	media-sound/alsa-utils"
+
+# Host dependency for dev-libs/boost package
+RDEPEND="${RDEPEND}
+	dev-util/boost-build"
+
+# Host dependency for managing SELinux
+RDEPEND="${RDEPEND}
+	chromeos-base/sepolicy-analyze
+	sys-apps/checkpolicy
+	sys-apps/restorecon
+	sys-apps/secilc
+	sys-apps/selinux-python"
+
+# Host dependencies that are needed for chromite/bin/cros_generate_android_breakpad_symbols
+RDEPEND="${RDEPEND}
+	chromeos-base/android-relocation-packer"
+
+# Host dependencies for generating and testing update payloads
+RDEPEND="${RDEPEND}
+	chromeos-base/update_payload"
+
+# Needed to compile moblab mobmonitor ui
+RDEPEND="${RDEPEND}
+	net-libs/nodejs"
+
+# Needed to compile img-ddk
+RDEPEND="${RDEPEND}
+	dev-python/clang-python"
+
+# Moblab's new RPC server backend will use grpc
+RDEPEND="${RDEPEND}
+	dev-python/grpcio-tools
+	net-libs/grpc-web"
+
+# Autotest's new RPC server will use grpc
+RDEPEND="${RDEPEND}
+	dev-python/grpcio"
+
+# Needed for unit tests of tast-local-tests-cros
+RDEPEND="${RDEPEND}
+	dev-util/strace"
+
+# Host dependencies for termina_build_image
+RDEPEND="${RDEPEND}
+	app-misc/fdupes"
+
+# Host dependencies that lets us boost to performance governor
+# to speed up builds.  https://crbug.com/1008932
+RDEPEND="${RDEPEND}
+	sys-power/cpupower"
+
+# Base layout for java that installs cacerts
+RDEPEND="${RDEPEND}
+	sys-apps/baselayout-java"
+
+# CTS P depends on Java 8 or 9, CTS R depends on Java 9 or later.
+# Include android-sdk to contain both JDK8 and JDK11 in the chroot.
+RDEPEND="${RDEPEND}
+	chromeos-base/android-sdk"
+
+# Needed to optimise Android APKs shipped in demo_mode_resources.
+RDEPEND="${RDEPEND}
+	sys-devel/zipalign"
+
+# Needed to build IPA interface in libcamera.
+RDEPEND="${RDEPEND}
+	dev-python/jinja"
+
+# Needed for packages that need older 4.9.2 GCC.
+RDEPEND="${RDEPEND}
+	sys-devel/gcc-bin"
+
+# Needed to build crosvm without ebuild in chroot.
+RDEPEND="${RDEPEND}
+	dev-libs/wayland-protocols"
diff --git a/virtual/target-chromium-os-sdk/target-chromium-os-sdk-9999.ebuild b/virtual/target-chromium-os-sdk/target-chromium-os-sdk-9999.ebuild
index 1948b92..1ed6219 100644
--- a/virtual/target-chromium-os-sdk/target-chromium-os-sdk-9999.ebuild
+++ b/virtual/target-chromium-os-sdk/target-chromium-os-sdk-9999.ebuild
@@ -152,7 +152,6 @@
 	chromeos-base/cros-testutils
 	chromeos-base/ec-devutils
 	chromeos-base/minijail
-	chromeos-base/test-server
 	dev-db/m17n-contrib
 	dev-db/m17n-db
 	dev-go/protobuf
@@ -195,6 +194,7 @@
 	dev-python/pyopenssl
 	dev-python/pytest
 	dev-python/python-evdev
+	dev-python/python-magic
 	dev-python/pyudev
 	dev-python/pyusb
 	dev-python/setproctitle
@@ -212,6 +212,7 @@
 	>=dev-util/gtk-doc-am-1.13
 	>=dev-util/intltool-0.30
 	dev-util/scons
+	dev-util/test-services
 	dev-util/vulkan-headers
 	>=dev-vcs/git-1.7.2
 	>=media-libs/freetype-2.2.1
@@ -405,11 +406,6 @@
 	dev-util/gn
 	"
 
-# Host dependencies for building
-RDEPEND="${RDEPEND}
-	dev-util/tclint
-	"
-
 # Uninstall these packages.
 RDEPEND="${RDEPEND}
 	!net-misc/dhcpcd
diff --git a/virtual/target-chromium-os-test/target-chromium-os-test-1-r151.ebuild b/virtual/target-chromium-os-test/target-chromium-os-test-1-r151.ebuild
deleted file mode 100644
index ab62319..0000000
--- a/virtual/target-chromium-os-test/target-chromium-os-test-1-r151.ebuild
+++ /dev/null
@@ -1,292 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
-# the canonical empty project.
-CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
-CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
-CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
-CROS_WORKON_LOCALNAME="../platform/empty-project"
-
-inherit cros-workon
-
-DESCRIPTION="List of packages that are needed inside the Chromium OS test image;
-Note: test images are a superset of dev images."
-HOMEPAGE="https://dev.chromium.org/"
-
-LICENSE="metapackage"
-SLOT="0"
-KEYWORDS="*"
-# Note: Do not utilize USE=internal here.  Update virtual/target-chrome-os-test.
-IUSE="
-	arc-camera3
-	biod
-	-chromeless_tests
-	cheets
-	chromeless_tty
-	cr50_onboard
-	+cras
-	cros_ec
-	cros_embedded
-	dlc
-	hammerd
-	iioservice
-	ml_service
-	hps
-	nnapi
-	opengl
-	opengles
-	p2p
-	+perfetto
-	python_targets_python2_7
-	scanner
-	+shill
-	+tpm
-	tpm2
-	unibuild
-	vaapi
-	vulkan
-	wifi_hostap_test
-	wifi_testbed_ap
-	+wired_8021x
-"
-
-# Packages required to support autotest images.  Dependencies here
-# are for packages that must be present on a local device and that
-# are not downloaded by the autotest server.  This includes both
-# packages relied on by the server, as well as packages relied on by
-# specific tests.
-#
-# This package is not meant to capture tools useful for test debug;
-# use the chromeos-dev package for that purpose.
-#
-# Note that some packages used by autotest are actually built by the
-# autotest package and downloaded by the server, regardless of
-# whether the package is present on the target device; those
-# packages aren't listed here.
-#
-# Developers should be aware that packages installed by this ebuild
-# are rooted in /usr/local.  This means that libraries are installed
-# in /usr/local/lib, executables in /usr/local/bin, etc.
-#
-# TODO(jrbarnette):  It's not known definitively that the list
-# below contains no unneeded dependencies.  More work is needed to
-# determine for sure that every package listed is actually used.
-
-
-################################################################################
-#
-# CROS_COMMON_* : Dependencies common to all CrOS flavors (embedded, regular)
-#
-################################################################################
-
-CROS_COMMON_RDEPEND="
-	tpm? (
-		app-crypt/tpm-tools
-		chromeos-base/hwsec-test-utils
-		chromeos-base/tpm_softclear_utils
-	)
-	tpm2? (
-		chromeos-base/hwsec-test-utils
-		chromeos-base/tpm_softclear_utils
-	)
-	chromeos-base/chromeos-test-root
-	chromeos-base/ec-utils
-	chromeos-base/ec-utils-test
-	chromeos-base/factory-deps
-	biod? (
-		virtual/chromeos-fpmcu-test
-		chromeos-base/chromeos-fpmcu-unittests
-	)
-	hammerd? ( chromeos-base/hammerd-test-utils )
-	iioservice? ( chromeos-base/iioservice_simpleclient )
-	scanner? (
-		chromeos-base/lorgnette_cli
-		chromeos-base/sane-backends-test
-	)
-	ml_service? ( chromeos-base/ml-cmdline )
-	hps? ( chromeos-base/hps-tool )
-	nnapi? (
-		chromeos-base/aosp-frameworks-ml-nn-vts
-		chromeos-base/ml-test-assets
-	)
-	chromeos-base/recover-duts
-	chromeos-base/tast-local-test-runner
-	chromeos-base/tast-local-tests
-	chromeos-base/tast-use-flags
-	chromeos-base/verity
-	chromeos-base/vpd
-	cros_ec? ( chromeos-base/ec-devutils )
-	!chromeless_tty? (
-		!chromeless_tests? (
-			>=dev-cpp/gflags-2.0
-		)
-	)
-	wifi_testbed_ap? (
-		dev-python/btsocket
-	)
-	python_targets_python2_7? ( dev-lang/python:2.7 )
-	dev-lang/python:3.6
-	dev-libs/opensc
-	p2p? ( dev-python/dpkt )
-	perfetto? (
-		chromeos-base/perfetto
-		chromeos-base/perfetto_simple_producer
-	)
-	cr50_onboard? ( dev-util/u2f-ref-code )
-	net-misc/rsync
-	sys-apps/memtester
-	virtual/autotest-capability
-	virtual/chromeos-bsp-test
-"
-
-# Packages needed by FAFT.
-CROS_COMMON_RDEPEND+="
-	sys-apps/hdparm
-	sys-apps/mmc-utils
-"
-
-################################################################################
-#
-# CROS_* : Dependencies for "regular" CrOS devices (coreutils, etc.)
-#
-################################################################################
-CROS_X86_RDEPEND="
-	app-benchmarks/sysbench
-	sys-apps/pciutils
-	sys-power/iasl
-	vaapi? ( media-gfx/vadumpcaps media-video/libva-utils )
-	x11-misc/read-edid
-"
-
-CROS_RDEPEND="
-	x86? ( ${CROS_X86_RDEPEND} )
-	amd64? ( ${CROS_X86_RDEPEND} )
-"
-
-CROS_RDEPEND="${CROS_RDEPEND}
-	app-admin/sudo
-	app-arch/gzip
-	app-arch/tar
-	app-benchmarks/blktests
-	app-benchmarks/blogbench
-	app-benchmarks/lmbench
-	app-benchmarks/microbenchmarks
-	app-benchmarks/pjdfstest
-	app-benchmarks/xfstests
-	app-misc/ckermit
-	opengles? ( app-misc/eglinfo )
-	app-misc/tmux
-	app-misc/utouch-evemu
-	app-mobilephone/dfu-util
-	chromeos-base/autotest-client
-	cras? (
-		chromeos-base/audiotest
-		media-sound/cras_bench
-	)
-	chromeos-base/avtest_label_detect
-	chromeos-base/chrome-binary-tests
-	chromeos-base/cros-camera-tool
-	chromeos-base/cros-config-test
-	!chromeless_tty? ( !chromeless_tests? ( chromeos-base/drm-tests ) )
-	chromeos-base/factory-mini
-	chromeos-base/glbench
-	chromeos-base/graphics-utils-python
-	chromeos-base/libvda-gpu-tests
-	chromeos-base/modem-diagnostics
-	chromeos-base/policy_utils
-	chromeos-base/protofiles
-	chromeos-base/pywalt
-	!chromeless_tty? ( chromeos-base/screen-capture-utils )
-	chromeos-base/secure-wipe
-	shill? (
-		chromeos-base/shill-test-scripts
-		wired_8021x? ( net-wireless/hostapd )
-	)
-	!chromeless_tests? ( chromeos-base/telemetry )
-	chromeos-base/toolchain-tests
-	vulkan? (
-		chromeos-base/vkbench
-	)
-	dev-embedded/dfu-programmer
-	dev-go/syzkaller
-	dev-libs/re2
-	dev-python/protobuf-python
-	dev-python/btsocket
-	dev-python/contextlib2
-	dev-python/dbus-python
-	dev-python/dpkt
-	dev-python/httplib2
-	dev-python/jsonrpclib
-	dev-python/mkvparse
-	dev-python/netifaces
-	dev-python/pygobject
-	dev-python/pyserial
-	dev-python/pytest
-	dev-python/python-evdev
-	dev-python/python-uinput
-	dev-python/pyudev
-	dev-python/pyxattr
-	dev-python/pyyaml
-	dev-python/selenium
-	dev-python/setproctitle
-	dev-python/setuptools
-	dev-python/ws4py
-	!chromeless_tty? ( !chromeless_tests? ( dev-util/apitrace ) )
-	dev-util/stressapptest
-	dev-util/trace-cmd
-	dlc? ( sys-fs/squashfs-tools )
-	games-util/joystick
-	media-gfx/imagemagick[jpeg,png,svg,tiff]
-	media-gfx/perceptualdiff
-	media-gfx/zbar
-	arc-camera3? ( media-libs/cros-camera-libcamera_connector_test )
-	arc-camera3? ( media-libs/cros-camera-libjea_test )
-	arc-camera3? ( media-libs/cros-camera-test )
-	media-libs/cros-camera-v4l2_test
-	media-libs/libexif
-	media-libs/libvpx
-	media-libs/opencv
-	media-libs/openh264
-	!chromeless_tty? ( !chromeless_tests? (
-		media-gfx/deqp
-		media-gfx/deqp-runner
-	) )
-	media-libs/tiff
-	opengles? ( media-libs/waffle )
-	opengl? ( media-libs/waffle )
-	media-sound/sox
-	net-analyzer/netperf
-	net-dialup/minicom
-	net-dns/dnsmasq
-	net-misc/dhcp
-	net-misc/iperf:2
-	net-misc/iputils
-	net-misc/openssh
-	net-misc/radvd
-	net-proxy/tinyproxy
-	wifi_hostap_test? ( net-wireless/hostap-test )
-	sci-geosciences/gpsd
-	sys-apps/coreutils
-	sys-apps/dtc
-	sys-apps/ethtool
-	sys-apps/file
-	sys-apps/findutils
-	sys-apps/kbd
-	sys-apps/shadow
-	sys-devel/binutils
-	sys-process/iotop
-	sys-process/procps
-	sys-process/psmisc
-	sys-process/time
-	x11-libs/libdrm
-	"
-
-################################################################################
-# Assemble the final RDEPEND and DEPEND variables for portage
-################################################################################
-RDEPEND="${CROS_COMMON_RDEPEND}
-	!cros_embedded? ( ${CROS_RDEPEND} )
-"
diff --git a/virtual/target-chromium-os-test/target-chromium-os-test-1-r153.ebuild b/virtual/target-chromium-os-test/target-chromium-os-test-1-r153.ebuild
new file mode 100644
index 0000000..632868f
--- /dev/null
+++ b/virtual/target-chromium-os-test/target-chromium-os-test-1-r153.ebuild
@@ -0,0 +1,297 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
+# the canonical empty project.
+CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
+CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="../platform/empty-project"
+
+inherit cros-workon
+
+DESCRIPTION="List of packages that are needed inside the Chromium OS test image;
+Note: test images are a superset of dev images."
+HOMEPAGE="https://dev.chromium.org/"
+
+LICENSE="metapackage"
+SLOT="0"
+KEYWORDS="*"
+# Note: Do not utilize USE=internal here.  Update virtual/target-chrome-os-test.
+IUSE="
+	arc-camera3
+	biod
+	-chromeless_tests
+	cheets
+	chromeless_tty
+	cr50_onboard
+	+cras
+	cros_ec
+	cros_embedded
+	dlc
+	hammerd
+	iioservice
+	ml_service
+	hps
+	nnapi
+	ondevice_document_scanner
+	opengl
+	opengles
+	p2p
+	+perfetto
+	python_targets_python2_7
+	scanner
+	+shill
+	+tpm
+	tpm2
+	unibuild
+	vaapi
+	vulkan
+	wifi_hostap_test
+	wifi_testbed_ap
+	+wired_8021x
+"
+
+# Packages required to support autotest images.  Dependencies here
+# are for packages that must be present on a local device and that
+# are not downloaded by the autotest server.  This includes both
+# packages relied on by the server, as well as packages relied on by
+# specific tests.
+#
+# This package is not meant to capture tools useful for test debug;
+# use the chromeos-dev package for that purpose.
+#
+# Note that some packages used by autotest are actually built by the
+# autotest package and downloaded by the server, regardless of
+# whether the package is present on the target device; those
+# packages aren't listed here.
+#
+# Developers should be aware that packages installed by this ebuild
+# are rooted in /usr/local.  This means that libraries are installed
+# in /usr/local/lib, executables in /usr/local/bin, etc.
+#
+# TODO(jrbarnette):  It's not known definitively that the list
+# below contains no unneeded dependencies.  More work is needed to
+# determine for sure that every package listed is actually used.
+
+
+################################################################################
+#
+# CROS_COMMON_* : Dependencies common to all CrOS flavors (embedded, regular)
+#
+################################################################################
+
+CROS_COMMON_RDEPEND="
+	tpm? (
+		app-crypt/tpm-tools
+		chromeos-base/hwsec-test-utils
+		chromeos-base/tpm_softclear_utils
+	)
+	tpm2? (
+		chromeos-base/hwsec-test-utils
+		chromeos-base/tpm_softclear_utils
+	)
+	chromeos-base/chromeos-test-root
+	chromeos-base/ec-utils
+	chromeos-base/ec-utils-test
+	chromeos-base/factory-deps
+	biod? (
+		virtual/chromeos-fpmcu-test
+		chromeos-base/chromeos-fpmcu-unittests
+	)
+	hammerd? ( chromeos-base/hammerd-test-utils )
+	iioservice? ( chromeos-base/iioservice_simpleclient )
+	scanner? (
+		chromeos-base/lorgnette_cli
+		chromeos-base/lorgnette-wwcb-tests
+		chromeos-base/sane-backends-test
+	)
+	ml_service? ( chromeos-base/ml-cmdline )
+	hps? ( chromeos-base/hps-tool )
+	nnapi? (
+		chromeos-base/aosp-frameworks-ml-nn-vts
+		chromeos-base/ml-test-assets
+	)
+	ondevice_document_scanner? (
+		media-libs/cros-camera-document-scanning-test
+	)
+	chromeos-base/recover-duts
+	chromeos-base/tast-local-test-runner
+	chromeos-base/tast-local-tests
+	chromeos-base/tast-use-flags
+	chromeos-base/verity
+	chromeos-base/vpd
+	cros_ec? ( chromeos-base/ec-devutils )
+	!chromeless_tty? (
+		!chromeless_tests? (
+			>=dev-cpp/gflags-2.0
+		)
+	)
+	wifi_testbed_ap? (
+		dev-python/btsocket
+	)
+	python_targets_python2_7? ( dev-lang/python:2.7 )
+	dev-lang/python:3.6
+	dev-libs/opensc
+	p2p? ( dev-python/dpkt )
+	perfetto? (
+		chromeos-base/perfetto
+		chromeos-base/perfetto_simple_producer
+	)
+	cr50_onboard? ( dev-util/u2f-ref-code )
+	net-misc/rsync
+	sys-apps/memtester
+	virtual/autotest-capability
+	virtual/chromeos-bsp-test
+"
+
+# Packages needed by FAFT.
+CROS_COMMON_RDEPEND+="
+	sys-apps/hdparm
+	sys-apps/mmc-utils
+"
+
+################################################################################
+#
+# CROS_* : Dependencies for "regular" CrOS devices (coreutils, etc.)
+#
+################################################################################
+CROS_X86_RDEPEND="
+	app-benchmarks/sysbench
+	sys-apps/pciutils
+	sys-power/iasl
+	vaapi? ( media-gfx/vadumpcaps media-video/libva-utils )
+	x11-misc/read-edid
+"
+
+CROS_RDEPEND="
+	x86? ( ${CROS_X86_RDEPEND} )
+	amd64? ( ${CROS_X86_RDEPEND} )
+"
+
+CROS_RDEPEND="${CROS_RDEPEND}
+	app-admin/sudo
+	app-arch/gzip
+	app-arch/tar
+	app-benchmarks/blktests
+	app-benchmarks/blogbench
+	app-benchmarks/lmbench
+	app-benchmarks/microbenchmarks
+	app-benchmarks/pjdfstest
+	app-benchmarks/xfstests
+	app-misc/ckermit
+	opengles? ( app-misc/eglinfo )
+	app-misc/tmux
+	app-misc/utouch-evemu
+	app-mobilephone/dfu-util
+	chromeos-base/autotest-client
+	cras? (
+		chromeos-base/audiotest
+		media-sound/cras_bench
+	)
+	chromeos-base/avtest_label_detect
+	chromeos-base/chrome-binary-tests
+	chromeos-base/cros-camera-tool
+	chromeos-base/cros-config-test
+	!chromeless_tty? ( !chromeless_tests? ( chromeos-base/drm-tests ) )
+	chromeos-base/factory-mini
+	chromeos-base/glbench
+	chromeos-base/graphics-utils-python
+	chromeos-base/libvda-gpu-tests
+	chromeos-base/modem-diagnostics
+	chromeos-base/policy_utils
+	chromeos-base/protofiles
+	chromeos-base/pywalt
+	!chromeless_tty? ( chromeos-base/screen-capture-utils )
+	chromeos-base/secure-wipe
+	shill? (
+		chromeos-base/shill-test-scripts
+		wired_8021x? ( net-wireless/hostapd )
+	)
+	!chromeless_tests? ( chromeos-base/telemetry )
+	chromeos-base/toolchain-tests
+	vulkan? (
+		chromeos-base/vkbench
+	)
+	dev-embedded/dfu-programmer
+	dev-go/syzkaller
+	dev-libs/re2
+	dev-python/protobuf-python
+	dev-python/btsocket
+	dev-python/contextlib2
+	dev-python/dbus-python
+	dev-python/dpkt
+	dev-python/httplib2
+	dev-python/jsonrpclib
+	dev-python/mkvparse
+	dev-python/netifaces
+	dev-python/pygobject
+	dev-python/pyserial
+	dev-python/pytest
+	dev-python/python-evdev
+	dev-python/python-uinput
+	dev-python/pyudev
+	dev-python/pyxattr
+	dev-python/pyyaml
+	dev-python/selenium
+	dev-python/setproctitle
+	dev-python/setuptools
+	dev-python/ws4py
+	!chromeless_tty? ( !chromeless_tests? ( dev-util/apitrace ) )
+	dev-util/stressapptest
+	dev-util/trace-cmd
+	dlc? ( sys-fs/squashfs-tools )
+	games-util/joystick
+	media-gfx/imagemagick[jpeg,png,svg,tiff]
+	media-gfx/perceptualdiff
+	media-gfx/zbar
+	arc-camera3? ( media-libs/cros-camera-libcamera_connector_test )
+	arc-camera3? ( media-libs/cros-camera-libjea_test )
+	arc-camera3? ( media-libs/cros-camera-test )
+	media-libs/cros-camera-v4l2_test
+	media-libs/libexif
+	media-libs/libvpx
+	media-libs/opencv
+	media-libs/openh264
+	!chromeless_tty? ( !chromeless_tests? (
+		media-gfx/deqp
+		media-gfx/deqp-runner
+	) )
+	media-libs/tiff
+	opengles? ( media-libs/waffle )
+	opengl? ( media-libs/waffle )
+	media-sound/sox
+	net-analyzer/netperf
+	net-dialup/minicom
+	net-dns/dnsmasq
+	net-misc/dhcp
+	net-misc/iperf:2
+	net-misc/iputils
+	net-misc/openssh
+	net-misc/radvd
+	net-proxy/tinyproxy
+	wifi_hostap_test? ( net-wireless/hostap-test )
+	sci-geosciences/gpsd
+	sys-apps/coreutils
+	sys-apps/dtc
+	sys-apps/ethtool
+	sys-apps/file
+	sys-apps/findutils
+	sys-apps/kbd
+	sys-apps/shadow
+	sys-devel/binutils
+	sys-process/iotop
+	sys-process/procps
+	sys-process/psmisc
+	sys-process/time
+	x11-libs/libdrm
+	"
+
+################################################################################
+# Assemble the final RDEPEND and DEPEND variables for portage
+################################################################################
+RDEPEND="${CROS_COMMON_RDEPEND}
+	!cros_embedded? ( ${CROS_RDEPEND} )
+"
diff --git a/virtual/target-chromium-os-test/target-chromium-os-test-9999.ebuild b/virtual/target-chromium-os-test/target-chromium-os-test-9999.ebuild
index 924520f..1b3dcf8 100644
--- a/virtual/target-chromium-os-test/target-chromium-os-test-9999.ebuild
+++ b/virtual/target-chromium-os-test/target-chromium-os-test-9999.ebuild
@@ -34,6 +34,7 @@
 	ml_service
 	hps
 	nnapi
+	ondevice_document_scanner
 	opengl
 	opengles
 	p2p
@@ -102,6 +103,7 @@
 	iioservice? ( chromeos-base/iioservice_simpleclient )
 	scanner? (
 		chromeos-base/lorgnette_cli
+		chromeos-base/lorgnette-wwcb-tests
 		chromeos-base/sane-backends-test
 	)
 	ml_service? ( chromeos-base/ml-cmdline )
@@ -110,6 +112,9 @@
 		chromeos-base/aosp-frameworks-ml-nn-vts
 		chromeos-base/ml-test-assets
 	)
+	ondevice_document_scanner? (
+		media-libs/cros-camera-document-scanning-test
+	)
 	chromeos-base/recover-duts
 	chromeos-base/tast-local-test-runner
 	chromeos-base/tast-local-tests
diff --git a/virtual/target-chromium-os/target-chromium-os-1-r172.ebuild b/virtual/target-chromium-os/target-chromium-os-1-r172.ebuild
deleted file mode 100644
index ed5e384..0000000
--- a/virtual/target-chromium-os/target-chromium-os-1-r172.ebuild
+++ /dev/null
@@ -1,363 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
-# the canonical empty project.
-CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
-CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
-CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
-CROS_WORKON_LOCALNAME="../platform/empty-project"
-
-inherit cros-workon
-
-DESCRIPTION="List of packages that are needed inside the Chromium OS base (release)"
-HOMEPAGE="https://dev.chromium.org/"
-
-LICENSE="metapackage"
-SLOT="0"
-KEYWORDS="*"
-# Note: Do not utilize USE=internal here.  Update virtual/target-chrome-os instead.
-# Note: You almost never want to use + here to enable settings by default.
-# Please see https://crrev.com/c/2776455 as an example instead.
-IUSE="
-	arc-camera1
-	arc-camera3
-	biod
-	bluetooth
-	bootchart
-	buffet
-	cellular
-	compupdates
-	containers
-	cr50_onboard
-	+cras
-	+crash_reporting
-	+cros_disks
-	cros_embedded
-	cups
-	+debugd
-	diagnostics
-	dlc
-	dlc_test
-	dlp
-	dns-proxy
-	dptf
-	eclog
-	+fonts
-	fpstudy
-	fuzzer
-	fwupd
-	hammerd
-	iioservice
-	ime
-	input_devices_evdev
-	intel_lpe
-	iwlwifi_rescan
-	kerberos_daemon
-	kvm_host
-	lacros_rootfs
-	manatee
-	media_perception
-	memd
-	missive
-	mist
-	minios
-	secanomalyd
-	modemfwd
-	ml_service
-	hps
-	mtd
-	+network_time
-	nfc
-	os_install_service
-	pam
-	pciguard
-	perfetto
-	postscript
-	+power_management
-	+profile
-	racc
-	+readahead
-	resourced
-	rmad
-	scanner
-	selinux
-	+shill
-	sirenia
-	smbprovider
-	+syslog
-	+system_locales
-	system_proxy
-	systemd
-	ti50_onboard
-	touchview
-	+tpm
-	-tpm2
-	+trim_supported
-	typecd
-	usb_bouncer
-	usbguard
-	+vpn
-	watchdog
-"
-
-REQUIRED_USE="
-	cellular? ( shill )
-	modemfwd? ( cellular )
-"
-
-################################################################################
-#
-# READ THIS BEFORE ADDING PACKAGES TO THIS EBUILD!
-#
-################################################################################
-#
-# Every chromeos dependency (along with its dependencies) is included in the
-# release image -- more packages contribute to longer build times, a larger
-# image, slower and bigger auto-updates, increased security risks, etc. Consider
-# the following before adding a new package:
-#
-# 1. Does the package really need to be part of the release image?
-#
-# Some packages can be included only in the developer or test images, i.e., the
-# target-os-dev or chromeos-test ebuilds. If the package will eventually be used
-# in the release but it's still under development, consider adding it to
-# target-os-dev initially until it's ready for production.
-#
-# 2. Why is the package a direct dependency of the chromeos ebuild?
-#
-# It makes sense for some packages to be included as a direct dependency of the
-# chromeos ebuild but for most it doesn't. The package should be added as a
-# direct dependency of the ebuilds for all packages that actually use it -- in
-# time, this ensures correct builds and allows easier cleanup of obsolete
-# packages. For example, if a utility will be invoked by the session manager,
-# its package should be added as a dependency in the chromeos-login ebuild. If
-# the package really needs to be a direct dependency of the chromeos ebuild,
-# consider adding a comment why the package is needed and how it's used.
-#
-# 3. Are all default package features and dependent packages needed?
-#
-# The release image should include only packages and features that are needed in
-# the production system. Often packages pull in features and additional packages
-# that are never used. Review these and consider pruning them (e.g., through USE
-# flags).
-#
-# 4. What is the impact on the image size?
-#
-# Before adding a package, evaluate the impact on the image size. If the package
-# and its dependencies increase the image size significantly, consider
-# alternative packages or approaches.
-#
-# 5. Is the package needed on all targets?
-#
-# If the package is needed only on some target boards, consider making it
-# conditional through USE flags in the board overlays.
-#
-# Variable Naming Convention:
-# ---------------------------
-# CROS_COMMON_* : Dependencies common to all CrOS flavors
-# CROS_* : Dependencies for "regular" CrOS devices (coreutils, etc.)
-################################################################################
-
-################################################################################
-#
-# Per Package Comments:
-# --------------------
-# Please add any comments specific to why certain packages are
-# pulled into the dependecy here. This is optional and required only when
-# the dependency isn't obvious
-#
-################################################################################
-
-################################################################################
-#
-# Dependencies common to all CrOS flavors (embedded, regular).
-# Everything in here should be behind a USE flag.
-#
-################################################################################
-RDEPEND="
-	input_devices_evdev? ( app-misc/evtest )
-	syslog? ( app-admin/rsyslog chromeos-base/croslog )
-	biod? ( chromeos-base/biod )
-	fpstudy? ( chromeos-base/fingerprint_study )
-	compupdates? ( chromeos-base/imageloader )
-	dlc? ( chromeos-base/dlcservice )
-	dlc_test? (
-		chromeos-base/sample-dlc
-		chromeos-base/test-dlc
-	)
-	bluetooth? ( net-wireless/bluez )
-	bootchart? ( app-benchmarks/bootchart )
-	tpm? (
-		!tpm2? ( app-crypt/trousers )
-		chromeos-base/chaps
-	)
-	tpm2? ( chromeos-base/trunks )
-	pam? ( virtual/chromeos-auth-config )
-	fonts? ( chromeos-base/chromeos-fonts )
-	chromeos-base/chromeos-installer
-	chromeos-base/dev-install
-	os_install_service? ( chromeos-base/os_install_service )
-	perfetto? ( chromeos-base/perfetto )
-	crash_reporting? ( chromeos-base/crash-reporter )
-	missive? ( chromeos-base/missive )
-	mist? ( chromeos-base/mist )
-	modemfwd? ( chromeos-base/modemfwd )
-	buffet? ( chromeos-base/buffet )
-	containers? ( chromeos-base/run_oci )
-	cros_disks? ( chromeos-base/cros-disks )
-	debugd? ( chromeos-base/debugd )
-	diagnostics? ( chromeos-base/diagnostics )
-	dlp? ( chromeos-base/dlp )
-	kerberos_daemon? ( chromeos-base/kerberos )
-	scanner? ( chromeos-base/lorgnette )
-	ml_service? ( chromeos-base/ml )
-	hps? ( chromeos-base/hpsd )
-	hammerd? ( chromeos-base/hammerd )
-	racc? (
-		chromeos-base/hardware_verifier
-		chromeos-base/runtime_probe
-	)
-	rmad? ( chromeos-base/rmad )
-	iioservice? ( chromeos-base/iioservice )
-	media_perception? ( chromeos-base/mri_package )
-	memd? ( chromeos-base/memd )
-	power_management? ( chromeos-base/power_manager )
-	!chromeos-base/platform2
-	profile? ( chromeos-base/quipper )
-	resourced? ( chromeos-base/resourced )
-	selinux? ( chromeos-base/selinux-policy )
-	shill? ( >=chromeos-base/shill-0.0.1-r2205 )
-	manatee? ( chromeos-base/sirenia )
-	sirenia? ( chromeos-base/sirenia )
-	usb_bouncer? ( chromeos-base/usb_bouncer )
-	chromeos-base/update_engine
-	vpn? ( chromeos-base/vpn-manager )
-	cras? (
-		media-sound/adhd
-		media-sound/cras_tests
-	)
-	trim_supported? ( chromeos-base/chromeos-trim )
-	network_time? ( net-misc/tlsdate )
-	iwlwifi_rescan? ( net-wireless/iwlwifi_rescan )
-	nfc? ( net-wireless/neard chromeos-base/neard-configs )
-	readahead? ( sys-apps/ureadahead )
-	pam? ( sys-auth/pam_pwdfile )
-	watchdog? ( sys-apps/daisydog )
-	mtd? ( sys-fs/mtd-utils )
-	cups? ( virtual/chromium-os-printing )
-	touchview? (
-		!iioservice? ( chromeos-base/chromeos-accelerometer-init )
-	)
-	system_locales? ( chromeos-base/system-locales )
-	system_proxy? ( chromeos-base/system-proxy )
-	eclog? ( chromeos-base/timberslide )
-	chromeos-base/chromeos-machine-id-regen
-	systemd? ( sys-apps/systemd )
-	!systemd? ( sys-apps/systemd-tmpfiles )
-	usbguard? ( sys-apps/usbguard )
-	kvm_host? (
-		chromeos-base/crosdns
-		chromeos-base/crostini_client
-		chromeos-base/vm_host_tools
-		chromeos-base/termina-dlc
-	)
-	sys-kernel/linux-firmware
-	virtual/chromeos-bsp
-	virtual/chromeos-firewall
-	virtual/chromeos-firmware
-	virtual/chromeos-interface
-	virtual/chromeos-regions
-	virtual/implicit-system
-	virtual/linux-sources
-	virtual/modutils
-	virtual/service-manager
-	cr50_onboard? (
-		chromeos-base/chromeos-cr50
-		chromeos-base/u2fd
-	)
-	ti50_onboard? (
-		chromeos-base/chromeos-ti50
-		chromeos-base/u2fd
-	)
-	ime? (
-		app-i18n/chinese-input
-		app-i18n/keyboard-input
-		app-i18n/japanese-input
-		app-i18n/hangul-input
-	)
-	fuzzer? ( virtual/target-fuzzers )
-	!dev-python/socksipy
-	arc-camera1? ( chromeos-base/cros-camera )
-	arc-camera3? ( chromeos-base/cros-camera )
-	fwupd? ( sys-apps/fwupd )
-	smbprovider? (
-		chromeos-base/smbfs
-		chromeos-base/smbprovider
-	)
-	typecd? ( chromeos-base/typecd )
-	pciguard? ( chromeos-base/pciguard )
-	minios? ( chromeos-base/minios )
-	secanomalyd? ( chromeos-base/secanomalyd )
-	lacros_rootfs? ( chromeos-base/chromeos-lacros )
-	dns-proxy? ( chromeos-base/dns-proxy )
-"
-
-################################################################################
-#
-# CROS_* : Dependencies for "regular" CrOS devices (coreutils, X etc)
-#
-# Comments on individual packages:
-# --------------------------------
-# app-editors/vim:
-# Specifically include the editor we want to appear in chromeos images, so that
-# it is deterministic which editor is chosen by 'virtual/editor' dependencies
-# (such as in the 'sudo' package).  See crosbug.com/5777.
-#
-# app-shells/bash:
-# We depend on dash for the /bin/sh shell for runtime speeds, but we also
-# depend on bash to make the dev mode experience better.  We do not enable
-# things like line editing in dash, so its interactive mode is very bare.
-################################################################################
-
-CROS_X86_RDEPEND="
-	dptf? ( virtual/dptf )
-	intel_lpe? ( virtual/lpe-support )
-"
-
-CROS_RDEPEND="
-	x86? ( ${CROS_X86_RDEPEND} )
-	amd64? ( ${CROS_X86_RDEPEND} )
-"
-
-# Anything behind a USE flag belongs in the main RDEPEND list above.
-# New packages usually should be behind a USE flag.
-CROS_RDEPEND="${CROS_RDEPEND}
-	app-arch/tar
-	app-editors/vim
-	app-shells/bash
-	chromeos-base/common-assets
-	chromeos-base/chromeos-imageburner
-	chromeos-base/crosh
-	chromeos-base/crosh-extension
-	chromeos-base/inputcontrol
-	chromeos-base/mtpd
-	chromeos-base/permission_broker
-	chromeos-base/userfeedback
-	chromeos-base/vboot_reference
-	chromeos-base/vpd
-	net-wireless/crda
-	sys-apps/dbus
-	sys-apps/flashrom
-	sys-apps/iproute2
-	sys-apps/rootdev
-	!systemd? ( sys-apps/upstart )
-	sys-fs/e2fsprogs
-	virtual/assets
-	virtual/cheets
-	virtual/udev
-"
-
-RDEPEND+="!cros_embedded? ( ${CROS_RDEPEND} )"
diff --git a/virtual/target-chromium-os/target-chromium-os-1-r185.ebuild b/virtual/target-chromium-os/target-chromium-os-1-r185.ebuild
new file mode 100644
index 0000000..a46204f
--- /dev/null
+++ b/virtual/target-chromium-os/target-chromium-os-1-r185.ebuild
@@ -0,0 +1,387 @@
+# Copyright 2014 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+# This ebuild only cares about its own FILESDIR and ebuild file, so it tracks
+# the canonical empty project.
+CROS_WORKON_COMMIT="3a01873e59ec25ecb10d1b07ff9816e69f3bbfee"
+CROS_WORKON_TREE="8ce164efd78fcb4a68e898d8c92c7579657a49b1"
+CROS_WORKON_PROJECT="chromiumos/infra/build/empty-project"
+CROS_WORKON_LOCALNAME="../platform/empty-project"
+
+inherit cros-workon
+
+DESCRIPTION="List of packages that are needed inside the Chromium OS base (release)"
+HOMEPAGE="https://dev.chromium.org/"
+
+LICENSE="metapackage"
+SLOT="0"
+KEYWORDS="*"
+# Note: Do not utilize USE=internal here.  Update virtual/target-chrome-os instead.
+# Note: You almost never want to use + here to enable settings by default.
+# Please see https://crrev.com/c/2776455 as an example instead.
+IUSE="
+	asan
+	arc-camera1
+	arc-camera3
+	biod
+	bluetooth
+	bootchart
+	buffet
+	cellular
+	compupdates
+	containers
+	cr50_onboard
+	+cras
+	+crash_reporting
+	+cros_disks
+	cros_embedded
+	cups
+	+debugd
+	diagnostics
+	dlc
+	dlc_test
+	dlp
+	dns-proxy
+	dptf
+	eclog
+	factory_branch
+	featured
+	federated_service
+	floss
+	+fonts
+	fpstudy
+	fuzzer
+	fwupd
+	hammerd
+	iioservice
+	ime
+	input_devices_evdev
+	intel_lpe
+	iwlwifi_rescan
+	kerberos_daemon
+	kvm_host
+	lacros_rootfs
+	manatee
+	media_perception
+	memd
+	missive
+	mist
+	minios
+	mmc
+	secanomalyd
+	modemfwd
+	ml_service
+	hps
+	mtd
+	+network_time
+	nfc
+	os_install_service
+	pam
+	pciguard
+	perfetto
+	postscript
+	+power_management
+	+profile
+	racc
+	+readahead
+	resourced
+	rmad
+	scanner
+	selinux
+	+shill
+	sirenia
+	smbprovider
+	+spaced
+	+syslog
+	+system_locales
+	system_proxy
+	systemd
+	ti50_onboard
+	touchview
+	+tpm
+	-tpm2
+	+trim_supported
+	typecd
+	ubsan
+	usb_bouncer
+	usbguard
+	+vpn
+	watchdog
+"
+
+REQUIRED_USE="
+	cellular? ( shill )
+	modemfwd? ( cellular )
+"
+
+################################################################################
+#
+# READ THIS BEFORE ADDING PACKAGES TO THIS EBUILD!
+#
+################################################################################
+#
+# Every chromeos dependency (along with its dependencies) is included in the
+# release image -- more packages contribute to longer build times, a larger
+# image, slower and bigger auto-updates, increased security risks, etc. Consider
+# the following before adding a new package:
+#
+# 1. Does the package really need to be part of the release image?
+#
+# Some packages can be included only in the developer or test images, i.e., the
+# target-os-dev or chromeos-test ebuilds. If the package will eventually be used
+# in the release but it's still under development, consider adding it to
+# target-os-dev initially until it's ready for production.
+#
+# 2. Why is the package a direct dependency of the chromeos ebuild?
+#
+# It makes sense for some packages to be included as a direct dependency of the
+# chromeos ebuild but for most it doesn't. The package should be added as a
+# direct dependency of the ebuilds for all packages that actually use it -- in
+# time, this ensures correct builds and allows easier cleanup of obsolete
+# packages. For example, if a utility will be invoked by the session manager,
+# its package should be added as a dependency in the chromeos-login ebuild. If
+# the package really needs to be a direct dependency of the chromeos ebuild,
+# consider adding a comment why the package is needed and how it's used.
+#
+# 3. Are all default package features and dependent packages needed?
+#
+# The release image should include only packages and features that are needed in
+# the production system. Often packages pull in features and additional packages
+# that are never used. Review these and consider pruning them (e.g., through USE
+# flags).
+#
+# 4. What is the impact on the image size?
+#
+# Before adding a package, evaluate the impact on the image size. If the package
+# and its dependencies increase the image size significantly, consider
+# alternative packages or approaches.
+#
+# 5. Is the package needed on all targets?
+#
+# If the package is needed only on some target boards, consider making it
+# conditional through USE flags in the board overlays.
+#
+# Variable Naming Convention:
+# ---------------------------
+# CROS_COMMON_* : Dependencies common to all CrOS flavors
+# CROS_* : Dependencies for "regular" CrOS devices (coreutils, etc.)
+################################################################################
+
+################################################################################
+#
+# Per Package Comments:
+# --------------------
+# Please add any comments specific to why certain packages are
+# pulled into the dependecy here. This is optional and required only when
+# the dependency isn't obvious
+#
+################################################################################
+
+################################################################################
+#
+# Dependencies common to all CrOS flavors (embedded, regular).
+# Everything in here should be behind a USE flag.
+#
+################################################################################
+RDEPEND="
+	input_devices_evdev? ( app-misc/evtest )
+	syslog? (
+		app-admin/rsyslog
+		chromeos-base/croslog
+		chromeos-base/bootid-logger
+	)
+	biod? ( chromeos-base/biod )
+	fpstudy? ( chromeos-base/fingerprint_study )
+	compupdates? ( chromeos-base/imageloader )
+	dlc? ( chromeos-base/dlcservice )
+	dlc_test? (
+		chromeos-base/sample-dlc
+		chromeos-base/test-dlc
+	)
+	bluetooth? ( net-wireless/bluez )
+	floss? ( net-wireless/floss )
+	bootchart? ( app-benchmarks/bootchart )
+	tpm? (
+		app-crypt/trousers
+		chromeos-base/chaps
+	)
+	tpm2? ( chromeos-base/trunks )
+	pam? ( virtual/chromeos-auth-config )
+	federated_service? ( chromeos-base/federated-service )
+	fonts? ( chromeos-base/chromeos-fonts )
+	chromeos-base/chromeos-installer
+	chromeos-base/dev-install
+	os_install_service? ( chromeos-base/os_install_service )
+	perfetto? ( chromeos-base/perfetto )
+	crash_reporting? ( chromeos-base/crash-reporter )
+	missive? ( chromeos-base/missive )
+	mist? ( chromeos-base/mist )
+	modemfwd? ( chromeos-base/modemfwd )
+	buffet? ( chromeos-base/buffet )
+	containers? ( chromeos-base/run_oci )
+	cros_disks? ( chromeos-base/cros-disks )
+	debugd? ( chromeos-base/debugd )
+	diagnostics? ( chromeos-base/diagnostics )
+	dlp? ( chromeos-base/dlp )
+	kerberos_daemon? ( chromeos-base/kerberos )
+	scanner? ( chromeos-base/lorgnette )
+	ml_service? ( chromeos-base/ml )
+	hps? (
+		chromeos-base/hpsd
+		!asan? (
+			!ubsan? ( chromeos-base/hps-firmware )
+		)
+	)
+	hammerd? ( chromeos-base/hammerd )
+	racc? (
+		chromeos-base/hardware_verifier
+		chromeos-base/runtime_probe
+	)
+	rmad? ( chromeos-base/rmad )
+	iioservice? ( chromeos-base/iioservice )
+	media_perception? ( chromeos-base/mri_package )
+	memd? ( chromeos-base/memd )
+	power_management? ( chromeos-base/power_manager )
+	!chromeos-base/platform2
+	profile? ( chromeos-base/quipper )
+	resourced? ( chromeos-base/resourced )
+	selinux? ( chromeos-base/selinux-policy )
+	shill? ( >=chromeos-base/shill-0.0.1-r2205 )
+	manatee? ( chromeos-base/sirenia )
+	sirenia? ( chromeos-base/sirenia )
+	spaced? ( chromeos-base/spaced )
+	usb_bouncer? ( chromeos-base/usb_bouncer )
+	chromeos-base/update_engine
+	vpn? ( chromeos-base/vpn-manager )
+	cras? (
+		media-sound/adhd
+		media-sound/cras_tests
+	)
+	trim_supported? ( chromeos-base/chromeos-trim )
+	network_time? ( net-misc/tlsdate )
+	iwlwifi_rescan? ( net-wireless/iwlwifi_rescan )
+	nfc? ( net-wireless/neard chromeos-base/neard-configs )
+	readahead? ( sys-apps/ureadahead )
+	pam? ( sys-auth/pam_pwdfile )
+	watchdog? ( sys-apps/daisydog )
+	mtd? ( sys-fs/mtd-utils )
+	cups? ( virtual/chromium-os-printing )
+	touchview? (
+		!iioservice? ( chromeos-base/chromeos-accelerometer-init )
+	)
+	system_locales? ( chromeos-base/system-locales )
+	system_proxy? ( chromeos-base/system-proxy )
+	eclog? ( chromeos-base/timberslide )
+	chromeos-base/chromeos-machine-id-regen
+	systemd? ( sys-apps/systemd )
+	!systemd? ( sys-apps/systemd-tmpfiles )
+	usbguard? ( sys-apps/usbguard )
+	kvm_host? (
+		chromeos-base/crosdns
+		chromeos-base/crostini_client
+		chromeos-base/vm_host_tools
+		chromeos-base/termina-dlc
+	)
+	sys-kernel/linux-firmware
+	virtual/chromeos-bsp
+	virtual/chromeos-firewall
+	!factory_branch? ( virtual/chromeos-firmware )
+	virtual/chromeos-interface
+	virtual/chromeos-regions
+	virtual/implicit-system
+	virtual/linux-sources
+	virtual/modutils
+	virtual/service-manager
+	cr50_onboard? (
+		chromeos-base/chromeos-cr50
+		chromeos-base/u2fd
+	)
+	ti50_onboard? (
+		chromeos-base/chromeos-ti50
+		chromeos-base/u2fd
+	)
+	ime? (
+		app-i18n/chinese-input
+		app-i18n/keyboard-input
+		app-i18n/japanese-input
+		app-i18n/hangul-input
+	)
+	fuzzer? ( virtual/target-fuzzers )
+	!dev-python/socksipy
+	arc-camera1? ( chromeos-base/cros-camera )
+	arc-camera3? ( chromeos-base/cros-camera )
+	fwupd? (
+		sys-apps/fwupd
+		mmc? ( sys-firmware/mmc-firmware )
+	)
+	smbprovider? (
+		chromeos-base/smbfs
+		chromeos-base/smbprovider
+	)
+	typecd? ( chromeos-base/typecd )
+	pciguard? ( chromeos-base/pciguard )
+	minios? ( chromeos-base/minios )
+	secanomalyd? ( chromeos-base/secanomalyd )
+	lacros_rootfs? ( chromeos-base/chromeos-lacros )
+	dns-proxy? ( chromeos-base/dns-proxy )
+	featured? ( chromeos-base/featured )
+"
+
+################################################################################
+#
+# CROS_* : Dependencies for "regular" CrOS devices (coreutils, X etc)
+#
+# Comments on individual packages:
+# --------------------------------
+# app-editors/vim:
+# Specifically include the editor we want to appear in chromeos images, so that
+# it is deterministic which editor is chosen by 'virtual/editor' dependencies
+# (such as in the 'sudo' package).  See crosbug.com/5777.
+#
+# app-shells/bash:
+# We depend on dash for the /bin/sh shell for runtime speeds, but we also
+# depend on bash to make the dev mode experience better.  We do not enable
+# things like line editing in dash, so its interactive mode is very bare.
+################################################################################
+
+CROS_X86_RDEPEND="
+	dptf? ( virtual/dptf )
+	intel_lpe? ( virtual/lpe-support )
+"
+
+CROS_RDEPEND="
+	x86? ( ${CROS_X86_RDEPEND} )
+	amd64? ( ${CROS_X86_RDEPEND} )
+"
+
+# Anything behind a USE flag belongs in the main RDEPEND list above.
+# New packages usually should be behind a USE flag.
+CROS_RDEPEND="${CROS_RDEPEND}
+	app-arch/tar
+	app-editors/vim
+	app-shells/bash
+	chromeos-base/common-assets
+	chromeos-base/chromeos-imageburner
+	chromeos-base/crosh
+	chromeos-base/crosh-extension
+	chromeos-base/inputcontrol
+	chromeos-base/mtpd
+	chromeos-base/permission_broker
+	chromeos-base/userfeedback
+	chromeos-base/vboot_reference
+	chromeos-base/vpd
+	net-wireless/crda
+	sys-apps/dbus
+	sys-apps/flashrom
+	sys-apps/iproute2
+	sys-apps/rootdev
+	!systemd? ( sys-apps/upstart )
+	sys-fs/e2fsprogs
+	virtual/assets
+	virtual/cheets
+	virtual/udev
+"
+
+RDEPEND+="!cros_embedded? ( ${CROS_RDEPEND} )"
diff --git a/virtual/target-chromium-os/target-chromium-os-9999.ebuild b/virtual/target-chromium-os/target-chromium-os-9999.ebuild
index 70e4321..d6a920a 100644
--- a/virtual/target-chromium-os/target-chromium-os-9999.ebuild
+++ b/virtual/target-chromium-os/target-chromium-os-9999.ebuild
@@ -20,6 +20,7 @@
 # Note: You almost never want to use + here to enable settings by default.
 # Please see https://crrev.com/c/2776455 as an example instead.
 IUSE="
+	asan
 	arc-camera1
 	arc-camera3
 	biod
@@ -43,6 +44,10 @@
 	dns-proxy
 	dptf
 	eclog
+	factory_branch
+	featured
+	federated_service
+	floss
 	+fonts
 	fpstudy
 	fuzzer
@@ -62,6 +67,7 @@
 	missive
 	mist
 	minios
+	mmc
 	secanomalyd
 	modemfwd
 	ml_service
@@ -85,6 +91,7 @@
 	+shill
 	sirenia
 	smbprovider
+	+spaced
 	+syslog
 	+system_locales
 	system_proxy
@@ -95,6 +102,7 @@
 	-tpm2
 	+trim_supported
 	typecd
+	ubsan
 	usb_bouncer
 	usbguard
 	+vpn
@@ -177,7 +185,11 @@
 ################################################################################
 RDEPEND="
 	input_devices_evdev? ( app-misc/evtest )
-	syslog? ( app-admin/rsyslog chromeos-base/croslog )
+	syslog? (
+		app-admin/rsyslog
+		chromeos-base/croslog
+		chromeos-base/bootid-logger
+	)
 	biod? ( chromeos-base/biod )
 	fpstudy? ( chromeos-base/fingerprint_study )
 	compupdates? ( chromeos-base/imageloader )
@@ -187,13 +199,15 @@
 		chromeos-base/test-dlc
 	)
 	bluetooth? ( net-wireless/bluez )
+	floss? ( net-wireless/floss )
 	bootchart? ( app-benchmarks/bootchart )
 	tpm? (
-		!tpm2? ( app-crypt/trousers )
+		app-crypt/trousers
 		chromeos-base/chaps
 	)
 	tpm2? ( chromeos-base/trunks )
 	pam? ( virtual/chromeos-auth-config )
+	federated_service? ( chromeos-base/federated-service )
 	fonts? ( chromeos-base/chromeos-fonts )
 	chromeos-base/chromeos-installer
 	chromeos-base/dev-install
@@ -212,7 +226,12 @@
 	kerberos_daemon? ( chromeos-base/kerberos )
 	scanner? ( chromeos-base/lorgnette )
 	ml_service? ( chromeos-base/ml )
-	hps? ( chromeos-base/hpsd )
+	hps? (
+		chromeos-base/hpsd
+		!asan? (
+			!ubsan? ( chromeos-base/hps-firmware )
+		)
+	)
 	hammerd? ( chromeos-base/hammerd )
 	racc? (
 		chromeos-base/hardware_verifier
@@ -230,6 +249,7 @@
 	shill? ( >=chromeos-base/shill-0.0.1-r2205 )
 	manatee? ( chromeos-base/sirenia )
 	sirenia? ( chromeos-base/sirenia )
+	spaced? ( chromeos-base/spaced )
 	usb_bouncer? ( chromeos-base/usb_bouncer )
 	chromeos-base/update_engine
 	vpn? ( chromeos-base/vpn-manager )
@@ -265,7 +285,7 @@
 	sys-kernel/linux-firmware
 	virtual/chromeos-bsp
 	virtual/chromeos-firewall
-	virtual/chromeos-firmware
+	!factory_branch? ( virtual/chromeos-firmware )
 	virtual/chromeos-interface
 	virtual/chromeos-regions
 	virtual/implicit-system
@@ -290,7 +310,10 @@
 	!dev-python/socksipy
 	arc-camera1? ( chromeos-base/cros-camera )
 	arc-camera3? ( chromeos-base/cros-camera )
-	fwupd? ( sys-apps/fwupd )
+	fwupd? (
+		sys-apps/fwupd
+		mmc? ( sys-firmware/mmc-firmware )
+	)
 	smbprovider? (
 		chromeos-base/smbfs
 		chromeos-base/smbprovider
@@ -301,6 +324,7 @@
 	secanomalyd? ( chromeos-base/secanomalyd )
 	lacros_rootfs? ( chromeos-base/chromeos-lacros )
 	dns-proxy? ( chromeos-base/dns-proxy )
+	featured? ( chromeos-base/featured )
 "
 
 ################################################################################
diff --git a/virtual/wpa_supplicant/wpa_supplicant-1-r3.ebuild b/virtual/wpa_supplicant/wpa_supplicant-1-r4.ebuild
similarity index 100%
rename from virtual/wpa_supplicant/wpa_supplicant-1-r3.ebuild
rename to virtual/wpa_supplicant/wpa_supplicant-1-r4.ebuild
diff --git a/virtual/wpa_supplicant/wpa_supplicant-1.ebuild b/virtual/wpa_supplicant/wpa_supplicant-1.ebuild
index bfefd8d..84a6782 100644
--- a/virtual/wpa_supplicant/wpa_supplicant-1.ebuild
+++ b/virtual/wpa_supplicant/wpa_supplicant-1.ebuild
@@ -12,7 +12,8 @@
 KEYWORDS="*"
 IUSE=""
 RDEPEND="
-	net-wireless/wpa_supplicant-2_9:=[dbus]
+	net-wireless/wpa_supplicant-cros:=[dbus]
+	!net-wireless/wpa_supplicant-2_9
 	!net-wireless/wpa_supplicant-2_8
 	!net-wireless/wpa_supplicant
 "
diff --git a/x11-apps/igt-gpu-tools/igt-gpu-tools-1.25-r7.ebuild b/x11-apps/igt-gpu-tools/igt-gpu-tools-1.25-r18.ebuild
similarity index 100%
rename from x11-apps/igt-gpu-tools/igt-gpu-tools-1.25-r7.ebuild
rename to x11-apps/igt-gpu-tools/igt-gpu-tools-1.25-r18.ebuild
diff --git a/x11-apps/igt-gpu-tools/igt-gpu-tools-9999.ebuild b/x11-apps/igt-gpu-tools/igt-gpu-tools-9999.ebuild
index 224e86d..da118c7 100644
--- a/x11-apps/igt-gpu-tools/igt-gpu-tools-9999.ebuild
+++ b/x11-apps/igt-gpu-tools/igt-gpu-tools-9999.ebuild
@@ -8,8 +8,9 @@
 fi
 
 if [[ ${PV} != *9999* ]]; then
-	CROS_WORKON_COMMIT=138a29e30277b1039e9934fca5c782dc1e7a9f99
-	CROS_WORKON_TREE=79e9b31715154f1cfb9bc5e1a2bbc8ec4d5af188
+	CROS_WORKON_COMMIT=b232a092b9e1b10a8be13601acaa440903b226bc
+	CROS_WORKON_TREE=a12acd360976cad2585d069bc1af65c25e5dcd6f
+	CROS_WORKON_EGIT_BRANCH=master
 fi
 
 CROS_WORKON_PROJECT=chromiumos/third_party/igt-gpu-tools
@@ -29,9 +30,9 @@
 fi
 LICENSE="MIT"
 SLOT="0"
-IUSE="chamelium doc man overlay runner tests unwind valgrind video_cards_amdgpu video_cards_intel video_cards_nouveau video_cards_msm X xv"
+IUSE="chamelium doc man overlay runner tests unwind valgrind video_cards_amdgpu video_cards_intel video_cards_nouveau video_cards_mediatek video_cards_msm X xv"
 REQUIRED_USE="
-	|| ( video_cards_amdgpu video_cards_intel video_cards_nouveau video_cards_msm )
+	|| ( video_cards_amdgpu video_cards_intel video_cards_nouveau video_cards_mediatek video_cards_msm )
 	overlay? (
 		video_cards_intel
 		|| ( X xv )
diff --git a/x11-drivers/opengles-headers/opengles-headers-0.0.1-r36.ebuild b/x11-drivers/opengles-headers/opengles-headers-0.0.1-r36.ebuild
deleted file mode 100644
index 1975d6d..0000000
--- a/x11-drivers/opengles-headers/opengles-headers-0.0.1-r36.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-CROS_WORKON_COMMIT="ed9a04037053347e4ad2fd779a73ea615fd2e513"
-CROS_WORKON_TREE="1de25b0683139e5255fcf749bc31bcb20dbc6533"
-CROS_WORKON_PROJECT="chromiumos/third_party/khronos"
-CROS_WORKON_LOCALNAME="khronos"
-
-inherit cros-workon
-
-DESCRIPTION="OpenGL|ES headers."
-HOMEPAGE="http://www.khronos.org/opengles/2_X/"
-SRC_URI=""
-LICENSE="SGI-B-2.0"
-KEYWORDS="*"
-IUSE=""
-
-# libX11 needs to be in RDEPEND because we depend on the header being present
-RDEPEND="x11-libs/libX11:="
-DEPEND="
-	${RDEPEND}
-	>=dev-util/spirv-headers-1.5.4.1
-"
-
-src_install() {
-	# headers
-	insinto /usr/include/EGL
-	doins "${S}/include/EGL/egl.h"
-	doins "${S}/include/EGL/eglplatform.h"
-	doins "${S}/include/EGL/eglext.h"
-	insinto /usr/include/KHR
-	doins "${S}/include/KHR/khrplatform.h"
-	insinto /usr/include/GLES
-	doins "${S}/include/GLES/gl.h"
-	doins "${S}/include/GLES/glext.h"
-	doins "${S}/include/GLES/glplatform.h"
-	insinto /usr/include/GLES2
-	doins "${S}/include/GLES2/gl2.h"
-	doins "${S}/include/GLES2/gl2ext.h"
-	doins "${S}/include/GLES2/gl2platform.h"
-	insinto /usr/include/GLES3
-	doins "${S}/include/GLES3/gl3.h"
-	doins "${S}/include/GLES3/gl31.h"
-	doins "${S}/include/GLES3/gl32.h"
-	doins "${S}/include/GLES3/gl3platform.h"
-	insinto /usr/include/CL
-	doins "${S}/include/CL/cl.h"
-	doins "${S}/include/CL/cl_egl.h"
-	doins "${S}/include/CL/cl_ext.h"
-	doins "${S}/include/CL/cl_gl.h"
-	doins "${S}/include/CL/cl_gl_ext.h"
-	doins "${S}/include/CL/cl_platform.h"
-	doins "${S}/include/CL/opencl.h"
-}
diff --git a/x11-drivers/opengles-headers/opengles-headers-0.0.1-r37.ebuild b/x11-drivers/opengles-headers/opengles-headers-0.0.1-r37.ebuild
new file mode 100644
index 0000000..5892838
--- /dev/null
+++ b/x11-drivers/opengles-headers/opengles-headers-0.0.1-r37.ebuild
@@ -0,0 +1,48 @@
+# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+CROS_WORKON_COMMIT="ed9a04037053347e4ad2fd779a73ea615fd2e513"
+CROS_WORKON_TREE="1de25b0683139e5255fcf749bc31bcb20dbc6533"
+CROS_WORKON_PROJECT="chromiumos/third_party/khronos"
+CROS_WORKON_LOCALNAME="khronos"
+
+inherit cros-workon
+
+DESCRIPTION="OpenGL|ES headers."
+HOMEPAGE="http://www.khronos.org/opengles/2_X/"
+SRC_URI=""
+LICENSE="SGI-B-2.0"
+KEYWORDS="*"
+IUSE=""
+
+# libX11 needs to be in RDEPEND because we depend on the header being present
+RDEPEND="x11-libs/libX11:="
+DEPEND="
+	${RDEPEND}
+	>=dev-util/opencl-headers-2021.04.29
+	>=dev-util/spirv-headers-1.5.4.1
+"
+
+src_install() {
+	# headers
+	insinto /usr/include/EGL
+	doins "${S}/include/EGL/egl.h"
+	doins "${S}/include/EGL/eglplatform.h"
+	doins "${S}/include/EGL/eglext.h"
+	insinto /usr/include/KHR
+	doins "${S}/include/KHR/khrplatform.h"
+	insinto /usr/include/GLES
+	doins "${S}/include/GLES/gl.h"
+	doins "${S}/include/GLES/glext.h"
+	doins "${S}/include/GLES/glplatform.h"
+	insinto /usr/include/GLES2
+	doins "${S}/include/GLES2/gl2.h"
+	doins "${S}/include/GLES2/gl2ext.h"
+	doins "${S}/include/GLES2/gl2platform.h"
+	insinto /usr/include/GLES3
+	doins "${S}/include/GLES3/gl3.h"
+	doins "${S}/include/GLES3/gl31.h"
+	doins "${S}/include/GLES3/gl32.h"
+	doins "${S}/include/GLES3/gl3platform.h"
+}
diff --git a/x11-drivers/opengles-headers/opengles-headers-9999.ebuild b/x11-drivers/opengles-headers/opengles-headers-9999.ebuild
index e50600b..412912e 100644
--- a/x11-drivers/opengles-headers/opengles-headers-9999.ebuild
+++ b/x11-drivers/opengles-headers/opengles-headers-9999.ebuild
@@ -18,6 +18,7 @@
 RDEPEND="x11-libs/libX11:="
 DEPEND="
 	${RDEPEND}
+	>=dev-util/opencl-headers-2021.04.29
 	>=dev-util/spirv-headers-1.5.4.1
 "
 
@@ -42,12 +43,4 @@
 	doins "${S}/include/GLES3/gl31.h"
 	doins "${S}/include/GLES3/gl32.h"
 	doins "${S}/include/GLES3/gl3platform.h"
-	insinto /usr/include/CL
-	doins "${S}/include/CL/cl.h"
-	doins "${S}/include/CL/cl_egl.h"
-	doins "${S}/include/CL/cl_ext.h"
-	doins "${S}/include/CL/cl_gl.h"
-	doins "${S}/include/CL/cl_gl_ext.h"
-	doins "${S}/include/CL/cl_platform.h"
-	doins "${S}/include/CL/opencl.h"
 }
diff --git a/x11-libs/arc-libdrm/arc-libdrm-2.4.105-r1.ebuild b/x11-libs/arc-libdrm/arc-libdrm-2.4.107-r1.ebuild
similarity index 100%
rename from x11-libs/arc-libdrm/arc-libdrm-2.4.105-r1.ebuild
rename to x11-libs/arc-libdrm/arc-libdrm-2.4.107-r1.ebuild
diff --git a/x11-libs/arc-libdrm/arc-libdrm-9999.ebuild b/x11-libs/arc-libdrm/arc-libdrm-9999.ebuild
index ca42a3a..767d8d9 100644
--- a/x11-libs/arc-libdrm/arc-libdrm-9999.ebuild
+++ b/x11-libs/arc-libdrm/arc-libdrm-9999.ebuild
@@ -4,8 +4,8 @@
 EAPI="7"
 EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/drm.git"
 if [[ ${PV} != *9999* ]]; then
-	CROS_WORKON_COMMIT="40f73d0b0b3936ccadc693edc25aad70c1225766"
-	CROS_WORKON_TREE="7d7f7823d7a6c217122b4402ed8c8b77bdec4952"
+	CROS_WORKON_COMMIT="9cef5dee3cd817728c83aeb3c2010c1954e4c402"
+	CROS_WORKON_TREE="25ac2f44628d93835f86f30b10d797a652f34cea"
 fi
 CROS_WORKON_PROJECT="chromiumos/third_party/libdrm"
 CROS_WORKON_LOCALNAME="libdrm"
@@ -59,6 +59,8 @@
 }
 
 multilib_src_configure() {
+	arc-build-create-cross-file
+
 	local emesonargs=(
 		-Dinstall-test-programs=false
 		$(meson_use video_cards_amdgpu amdgpu)
@@ -76,6 +78,7 @@
 		-Dintel=false
 		--prefix="${ARC_PREFIX}/vendor"
 		--datadir="${ARC_PREFIX}/vendor/usr/share"
+		--cross-file="${ARC_CROSS_FILE}"
 	)
 	meson_src_configure
 }
diff --git a/x11-libs/libdrm/files/Add-Rockchip-AFBC-modifier.patch b/x11-libs/libdrm/files/Add-Rockchip-AFBC-modifier.patch
index 714e96f..1cbe1f2 100644
--- a/x11-libs/libdrm/files/Add-Rockchip-AFBC-modifier.patch
+++ b/x11-libs/libdrm/files/Add-Rockchip-AFBC-modifier.patch
@@ -23,7 +23,6 @@
 Change-Id: Id0d35736047e1fede88c1ce844d834262c7db2ef
 ---
  include/drm/drm_fourcc.h  | 17 +++++++++++++++++
- tests/modetest/modetest.c |  2 ++
  2 files changed, 19 insertions(+)
 
 diff --git a/include/drm/drm_fourcc.h b/include/drm/drm_fourcc.h
@@ -61,19 +60,4 @@
  #if defined(__cplusplus)
  }
  #endif
-diff --git a/tests/modetest/modetest.c b/tests/modetest/modetest.c
-index e66be660..4cdbcd21 100644
---- a/tests/modetest/modetest.c
-+++ b/tests/modetest/modetest.c
-@@ -298,6 +298,8 @@ static const char *modifier_to_string(uint64_t modifier)
- 		return "MOD_BROADCOM_VC4_T_TILED";
- 	case DRM_FORMAT_MOD_QCOM_COMPRESSED:
- 		return "QCOM_COMPRESSED";
-+	case DRM_FORMAT_MOD_CHROMEOS_ROCKCHIP_AFBC:
-+		return "MOD_CHROMEOS_ROCKCHIP_AFBC";
- 	default:
- 		return "(UNKNOWN MODIFIER)";
- 	}
 -- 
-2.22.0.510.g264f2c817a-goog
-
diff --git a/x11-libs/libdrm/libdrm-2.4.105-r2.ebuild b/x11-libs/libdrm/libdrm-2.4.107-r1.ebuild
similarity index 100%
rename from x11-libs/libdrm/libdrm-2.4.105-r2.ebuild
rename to x11-libs/libdrm/libdrm-2.4.107-r1.ebuild
diff --git a/x11-libs/libdrm/libdrm-9999.ebuild b/x11-libs/libdrm/libdrm-9999.ebuild
index 109ad94..ffd9492 100644
--- a/x11-libs/libdrm/libdrm-9999.ebuild
+++ b/x11-libs/libdrm/libdrm-9999.ebuild
@@ -4,8 +4,8 @@
 EAPI="7"
 EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/drm.git"
 if [[ ${PV} != *9999* ]]; then
-	CROS_WORKON_COMMIT="40f73d0b0b3936ccadc693edc25aad70c1225766"
-	CROS_WORKON_TREE="7d7f7823d7a6c217122b4402ed8c8b77bdec4952"
+	CROS_WORKON_COMMIT="9cef5dee3cd817728c83aeb3c2010c1954e4c402"
+	CROS_WORKON_TREE="25ac2f44628d93835f86f30b10d797a652f34cea"
 fi
 CROS_WORKON_PROJECT="chromiumos/third_party/libdrm"
 CROS_WORKON_EGIT_BRANCH="upstream/master"
diff --git a/x11-libs/libva-intel-driver/files/0002-Fix-VP9.2-config-verification.patch b/x11-libs/libva-intel-driver/files/0002-Fix-VP9.2-config-verification.patch
new file mode 100644
index 0000000..c159284
--- /dev/null
+++ b/x11-libs/libva-intel-driver/files/0002-Fix-VP9.2-config-verification.patch
@@ -0,0 +1,82 @@
+From 3ed3f6a783fdfff3fa1b567888518dcbda7eb2a3 Mon Sep 17 00:00:00 2001
+From: Ed Baker <edward.baker@intel.com>
+Date: Thu, 26 Aug 2021 16:27:39 -0700
+Subject: [PATCH] Fix VP9.2 config verification
+
+This commit addresses the following test_va_api failures collected on
+a Braswell with the hybrid codec enabled. Fixes #534.
+
+localhost ~ # test_va_api
+<snip>
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/210, where GetParam() = (21:VAProfileVP9Profile2, 1:VAEntrypointVLD)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/211, where GetParam() = (21:VAProfileVP9Profile2, 2:VAEntrypointIZZ)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/212, where GetParam() = (21:VAProfileVP9Profile2, 3:VAEntrypointIDCT)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/213, where GetParam() = (21:VAProfileVP9Profile2, 4:VAEntrypointMoComp)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/214, where GetParam() = (21:VAProfileVP9Profile2, 5:VAEntrypointDeblocking)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/215, where GetParam() = (21:VAProfileVP9Profile2, 6:VAEntrypointEncSlice)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/216, where GetParam() = (21:VAProfileVP9Profile2, 7:VAEntrypointEncPicture)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/217, where GetParam() = (21:VAProfileVP9Profile2, 8:VAEntrypointEncSliceLP)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/218, where GetParam() = (21:VAProfileVP9Profile2, 10:VAEntrypointVideoProc)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigWithAttributes/219, where GetParam() = (21:VAProfileVP9Profile2, 11:VAEntrypointFEI)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/210, where GetParam() = (21:VAProfileVP9Profile2, 1:VAEntrypointVLD)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/211, where GetParam() = (21:VAProfileVP9Profile2, 2:VAEntrypointIZZ)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/212, where GetParam() = (21:VAProfileVP9Profile2, 3:VAEntrypointIDCT)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/213, where GetParam() = (21:VAProfileVP9Profile2, 4:VAEntrypointMoComp)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/214, where GetParam() = (21:VAProfileVP9Profile2, 5:VAEntrypointDeblocking)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/215, where GetParam() = (21:VAProfileVP9Profile2, 6:VAEntrypointEncSlice)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/216, where GetParam() = (21:VAProfileVP9Profile2, 7:VAEntrypointEncPicture)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/217, where GetParam() = (21:VAProfileVP9Profile2, 8:VAEntrypointEncSliceLP)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/218, where GetParam() = (21:VAProfileVP9Profile2, 10:VAEntrypointVideoProc)
+[  FAILED  ] GetCreateConfig/VAAPIGetCreateConfig.CreateConfigNoAttributes/219, where GetParam() = (21:VAProfileVP9Profile2, 11:VAEntrypointFEI)
+
+Signed-off-by: Ed Baker <edward.baker@intel.com>
+---
+ src/i965_drv_video.c | 25 +++++++++++++++++++++----
+ 1 file changed, 21 insertions(+), 4 deletions(-)
+
+diff --git a/src/i965_drv_video.c b/src/i965_drv_video.c
+index 80278bb..2948d5b 100644
+--- a/src/i965_drv_video.c
++++ b/src/i965_drv_video.c
+@@ -885,10 +885,6 @@ i965_validate_config(VADriverContextP ctx, VAProfile profile,
+                     profile == VAProfileVP9Profile0 &&
+                     entrypoint == VAEntrypointEncSliceLP)) {
+             va_status = VA_STATUS_SUCCESS;
+-        } else if (profile == VAProfileVP9Profile0 &&
+-                   entrypoint == VAEntrypointVLD &&
+-                   i965->wrapper_pdrvctx) {
+-            va_status = VA_STATUS_SUCCESS;
+         } else if (!HAS_VP9_DECODING_PROFILE(i965, profile) &&
+                    !HAS_VP9_ENCODING(i965) &&
+                    !HAS_LP_VP9_ENCODING(i965) &&
+@@ -898,6 +894,27 @@ i965_validate_config(VADriverContextP ctx, VAProfile profile,
+             va_status = VA_STATUS_ERROR_UNSUPPORTED_ENTRYPOINT;
+         }
+ 
++        if (i965->wrapper_pdrvctx && va_status != VA_STATUS_SUCCESS) {
++            VAEntrypoint wrapper_entrypoints[5] = {0};
++            int32_t wrapper_num_entrypoints = 0;
++            VADriverContextP pdrvctx = i965->wrapper_pdrvctx;
++
++            CALL_VTABLE(pdrvctx, va_status,
++                        vaQueryConfigEntrypoints(pdrvctx,
++                                                 profile,
++                                                 wrapper_entrypoints,
++                                                 &wrapper_num_entrypoints));
++
++            if (va_status == VA_STATUS_SUCCESS) {
++                va_status = VA_STATUS_ERROR_UNSUPPORTED_ENTRYPOINT;
++                for (int i = 0; i < wrapper_num_entrypoints; i++) {
++                    if (entrypoint == wrapper_entrypoints[i]) {
++                        va_status = VA_STATUS_SUCCESS;
++                    }
++                }
++            }
++        }
++
+         break;
+ 
+     default:
+-- 
+2.25.1
+
diff --git a/x11-libs/libva-intel-driver/libva-intel-driver-2.4.1-r9.ebuild b/x11-libs/libva-intel-driver/libva-intel-driver-2.4.1-r10.ebuild
similarity index 100%
rename from x11-libs/libva-intel-driver/libva-intel-driver-2.4.1-r9.ebuild
rename to x11-libs/libva-intel-driver/libva-intel-driver-2.4.1-r10.ebuild
diff --git a/x11-libs/libva-intel-driver/libva-intel-driver-2.4.1.ebuild b/x11-libs/libva-intel-driver/libva-intel-driver-2.4.1.ebuild
index 08d061b..4a2fdb6 100644
--- a/x11-libs/libva-intel-driver/libva-intel-driver-2.4.1.ebuild
+++ b/x11-libs/libva-intel-driver/libva-intel-driver-2.4.1.ebuild
@@ -31,6 +31,7 @@
 	eapply "${FILESDIR}"/set_multisample_state_for_gen6.patch
 	eapply "${FILESDIR}"/0001-Remove-blitter-usage-from-driver.patch
 	eapply "${FILESDIR}"/Handle-the-odd-resolution.patch
+	eapply "${FILESDIR}"/0002-Fix-VP9.2-config-verification.patch
 	eapply_user
 	sed -e 's/intel-gen4asm/\0diSaBlEd/g' -i configure.ac || die
 	eautoreconf
diff --git a/x11-libs/libva-intel-media-driver/Manifest b/x11-libs/libva-intel-media-driver/Manifest
index 29def13..4c01ba6 100644
--- a/x11-libs/libva-intel-media-driver/Manifest
+++ b/x11-libs/libva-intel-media-driver/Manifest
@@ -1 +1 @@
-DIST intel-media-21.1.3.tar.gz 22507169 BLAKE2B 68962db57d6f4c11e50b5d44584adf0458d08a118234a091aa55734885ee9fab6449658a8736c4a23233be38b58311953492482c3d9b258dd2cf8008cf363f20 SHA512 a5a4c26d86191138245e0cc62304aeeccfb6627b04310e4b1d35cc2050b909d9b856b6176d868562336dd6342f93b1909b46fb481eb353ef02cc188eea5da121
+DIST intel-media-21.2.3.tar.gz 23025524 BLAKE2B 0652563f8e8494c9fa181822a7af348cc5ce1e2446063c743fa89072ae46c6a4af0c71001fb8249b0306d67a220312f883a8f54dde1981078e6ee8fad71eaaa1 SHA512 b12ff5b3afbc4d4f34353c7a4ea50b1c66746b33920e450d7d17cffdc234921e82fc4c1afb025274caf2a5efbe87e577b6790d0648a52de08ea19b11a103ac81
diff --git a/x11-libs/libva-intel-media-driver/files/0001-Disable-IPC-usage.patch b/x11-libs/libva-intel-media-driver/files/0001-Disable-IPC-usage.patch
index d840abd..b4295da 100644
--- a/x11-libs/libva-intel-media-driver/files/0001-Disable-IPC-usage.patch
+++ b/x11-libs/libva-intel-media-driver/files/0001-Disable-IPC-usage.patch
@@ -1,4 +1,4 @@
-From 59aab46720785e76b73f19f282a486d79071eb0e Mon Sep 17 00:00:00 2001
+From c4895ccb7d63bef19ed984c28574f031b91d6030 Mon Sep 17 00:00:00 2001
 From: Yu Kang Ku <yu.kang.ku@intel.com>
 Date: Thu, 8 Oct 2020 09:41:24 -0700
 Subject: [PATCH 1/2] Disable IPC usage
@@ -26,7 +26,7 @@
  #include <sys/ipc.h>
  #include <sys/shm.h>
 diff --git a/media_driver/linux/common/os/mos_os_specific.c b/media_driver/linux/common/os/mos_os_specific.c
-index b6251e7c27bf..d1c05079b84b 100644
+index b07739aaa9d3..5b5d9a756a39 100644
 --- a/media_driver/linux/common/os/mos_os_specific.c
 +++ b/media_driver/linux/common/os/mos_os_specific.c
 @@ -50,6 +50,8 @@
diff --git a/x11-libs/libva-intel-media-driver/files/0002-change-slice-header-prefix-for-AVC-Vdenc.patch b/x11-libs/libva-intel-media-driver/files/0002-change-slice-header-prefix-for-AVC-Vdenc.patch
index 149bf3b..e6b2967 100644
--- a/x11-libs/libva-intel-media-driver/files/0002-change-slice-header-prefix-for-AVC-Vdenc.patch
+++ b/x11-libs/libva-intel-media-driver/files/0002-change-slice-header-prefix-for-AVC-Vdenc.patch
@@ -1,4 +1,4 @@
-From c88a628295a4458820bbb793cbc361a90971f38f Mon Sep 17 00:00:00 2001
+From 0f86271811dabd47e4ff74b7a04a6492a208c3a5 Mon Sep 17 00:00:00 2001
 From: Abhishek Kumar <abhishek4.kumar@intel.com>
 Date: Fri, 12 Jun 2020 11:29:18 +0530
 Subject: [PATCH 2/2] change slice header prefix for AVC Vdenc
@@ -11,7 +11,7 @@
  1 file changed, 1 insertion(+), 2 deletions(-)
 
 diff --git a/media_driver/agnostic/common/codec/hal/codechal_encode_avc_base.cpp b/media_driver/agnostic/common/codec/hal/codechal_encode_avc_base.cpp
-index c80773a51c4f..7f6170a7d8c1 100644
+index d536eda8c7f6..bf3a812c820a 100644
 --- a/media_driver/agnostic/common/codec/hal/codechal_encode_avc_base.cpp
 +++ b/media_driver/agnostic/common/codec/hal/codechal_encode_avc_base.cpp
 @@ -1762,8 +1762,7 @@ MOS_STATUS CodecHalAvcEncode_PackSliceHeader(
diff --git a/x11-libs/libva-intel-media-driver/files/0003-Fix-MMD-Device-Init-Fail-issue.patch b/x11-libs/libva-intel-media-driver/files/0003-Fix-MMD-Device-Init-Fail-issue.patch
new file mode 100644
index 0000000..9618a36
--- /dev/null
+++ b/x11-libs/libva-intel-media-driver/files/0003-Fix-MMD-Device-Init-Fail-issue.patch
@@ -0,0 +1,27 @@
+From 0d99c835c83e3a37ee1c962cdf77ad8983b9bd70 Mon Sep 17 00:00:00 2001
+From: Guangyao-Bai <guangyao.bai@intel.com>
+Date: Fri, 16 Jul 2021 11:55:02 +0800
+Subject: [PATCH] [Media Common] Fix MMD Device Init Fail issue
+
+Fix MMD Device Init Fail issue:
+Decompressed output corruption on the image
+---
+ .../media_interfaces_m12_adlp/media_interfaces_g12_adlp.cpp     | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/media_driver/media_interface/media_interfaces_m12_adlp/media_interfaces_g12_adlp.cpp b/media_driver/media_interface/media_interfaces_m12_adlp/media_interfaces_g12_adlp.cpp
+index 5b6eccf5a4bc..2f2b50887b44 100644
+--- a/media_driver/media_interface/media_interfaces_m12_adlp/media_interfaces_g12_adlp.cpp
++++ b/media_driver/media_interface/media_interfaces_m12_adlp/media_interfaces_g12_adlp.cpp
+@@ -47,7 +47,7 @@ static bool adlpRegisteredMhw =
+ #ifdef _MMC_SUPPORTED
+ static bool adlsRegisteredMmd =
+     MediaInterfacesFactory<MmdDevice>::
+-    RegisterHal<MmdDeviceG12Tgllp>((uint32_t)IGFX_TIGERLAKE_LP);
++    RegisterHal<MmdDeviceG12Tgllp>((uint32_t)IGFX_ALDERLAKE_P);
+ #endif
+ 
+ #define PLATFORM_INTEL_ADLP   23
+-- 
+2.29.0
+
diff --git a/x11-libs/libva-intel-media-driver/files/0003-Stop-using-mos_bo_subdata.patch b/x11-libs/libva-intel-media-driver/files/0003-Stop-using-mos_bo_subdata.patch
deleted file mode 100644
index c099fb3..0000000
--- a/x11-libs/libva-intel-media-driver/files/0003-Stop-using-mos_bo_subdata.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From 77b5f37181243bb2b471419335e3a8dbae27bc25 Mon Sep 17 00:00:00 2001
-From: Jason Ekstrand <jason@jlekstrand.net>
-Date: Thu, 11 Mar 2021 13:59:12 -0600
-Subject: [PATCH 3/3] Stop using mos_bo_subdata
-
-This maps to the kernel's PWRITE ioctl but there's no real advantage in
-using it since the first thing the kernel does is i915_gem_object_wait().
-We may as well do the wait in userspace and just write to it through a
-map.  We're attempting to remove PWRITE support from i915 for future
-platforms and this prepares the media driver for the move.
----
- .../codec/ddi/media_ddi_decode_base.cpp       |  9 +++-----
- .../common/codec/ddi/media_ddi_decode_vp8.cpp | 21 ++++++-------------
- 2 files changed, 9 insertions(+), 21 deletions(-)
-
-diff --git a/media_driver/linux/common/codec/ddi/media_ddi_decode_base.cpp b/media_driver/linux/common/codec/ddi/media_ddi_decode_base.cpp
-index 5807066d90a8..3b8307d3ece4 100644
---- a/media_driver/linux/common/codec/ddi/media_ddi_decode_base.cpp
-+++ b/media_driver/linux/common/codec/ddi/media_ddi_decode_base.cpp
-@@ -1096,13 +1096,10 @@ VAStatus DdiMediaDecode::CreateBuffer(
- 
-     if( true == buf->bCFlushReq )
-     {
--        mos_bo_subdata(buf->bo, buf->uiOffset, size * numElements, data);
--    }
--    else
--    {
--        status = MOS_SecureMemcpy((void *)(buf->pData + buf->uiOffset), size * numElements, data, size * numElements);
--        DDI_CHK_CONDITION((status != MOS_STATUS_SUCCESS), "DDI:Failed to copy buffer data!", VA_STATUS_ERROR_OPERATION_FAILED);
-+        mos_bo_wait_rendering(buf->bo);
-     }
-+    status = MOS_SecureMemcpy((void *)(buf->pData + buf->uiOffset), size * numElements, data, size * numElements);
-+    DDI_CHK_CONDITION((status != MOS_STATUS_SUCCESS), "DDI:Failed to copy buffer data!", VA_STATUS_ERROR_OPERATION_FAILED);
-     return va;
- 
- CleanUpandReturn:
-diff --git a/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp b/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp
-index 02c677ae2add..72891d584334 100644
---- a/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp
-+++ b/media_driver/linux/common/codec/ddi/media_ddi_decode_vp8.cpp
-@@ -264,21 +264,12 @@ VAStatus DdiDecodeVP8::ParseProbabilityData(
- {
-     if (vp8ProbDataBuff->pData && probInputBuf)
-     {
--        MOS_LINUX_BO *boDes = nullptr;
--        boDes               = vp8ProbDataBuff->bo;
--
--        mos_bo_wait_rendering(boDes);
--        if (0 == mos_bo_subdata(boDes,
--                     0,
--                     sizeof(CODECHAL_VP8_COEFFPROB_DATA),
--                     probInputBuf))
--        {
--            return VA_STATUS_SUCCESS;
--        }
--        else
--        {
--            return VA_STATUS_ERROR_INVALID_PARAMETER;
--        }
-+        mos_bo_wait_rendering(vp8ProbDataBuff->bo);
-+        MOS_SecureMemcpy(vp8ProbDataBuff->pData,
-+                         sizeof(CODECHAL_VP8_COEFFPROB_DATA),
-+                         probInputBuf,
-+                         sizeof(CODECHAL_VP8_COEFFPROB_DATA));
-+        return VA_STATUS_SUCCESS;
-     }
-     else
-     {
--- 
-2.29.0
-
diff --git a/x11-libs/libva-intel-media-driver/files/0004-reset-brc-when-frame-rate-changes-for-VP8e.patch b/x11-libs/libva-intel-media-driver/files/0004-reset-brc-when-frame-rate-changes-for-VP8e.patch
new file mode 100644
index 0000000..0ca123f
--- /dev/null
+++ b/x11-libs/libva-intel-media-driver/files/0004-reset-brc-when-frame-rate-changes-for-VP8e.patch
@@ -0,0 +1,40 @@
+From 64f8cf79f9ce82cbfea2319bb88d3983c1cbe052 Mon Sep 17 00:00:00 2001
+From: XinfengZhang <carl.zhang@intel.com>
+Date: Thu, 22 Jul 2021 12:34:02 -0400
+Subject: [PATCH] reset brc when frame rate changes for VP8e
+
+Signed-off-by: XinfengZhang <carl.zhang@intel.com>
+---
+ media_driver/linux/common/codec/ddi/media_ddi_encode_vp8.cpp | 5 +++++
+ media_driver/linux/common/codec/ddi/media_ddi_encode_vp8.h   | 1 +
+ 2 files changed, 6 insertions(+)
+
+diff --git a/media_driver/linux/common/codec/ddi/media_ddi_encode_vp8.cpp b/media_driver/linux/common/codec/ddi/media_ddi_encode_vp8.cpp
+index 9a69be8f..2a3a599b 100644
+--- a/media_driver/linux/common/codec/ddi/media_ddi_encode_vp8.cpp
++++ b/media_driver/linux/common/codec/ddi/media_ddi_encode_vp8.cpp
+@@ -710,6 +710,11 @@ void DdiEncodeVp8::ParseMiscParamFR(void *data)
+     tmpId = vaFrameRate->framerate_flags.bits.temporal_id;
+ #endif
+     seqParams->FramesPer100Sec[tmpId] = numerator/denominator;
++    if(m_framesPer100Sec && m_framesPer100Sec != seqParams->FramesPer100Sec[tmpId])
++    {
++        seqParams->ResetBRC = 0x1;
++    }
++    m_framesPer100Sec = seqParams->FramesPer100Sec[tmpId];
+ }
+ 
+ void DdiEncodeVp8::ParseMiscParamRC(void *data)
+diff --git a/media_driver/linux/common/codec/ddi/media_ddi_encode_vp8.h b/media_driver/linux/common/codec/ddi/media_ddi_encode_vp8.h
+index 4ffde91b..f42f3309 100644
+--- a/media_driver/linux/common/codec/ddi/media_ddi_encode_vp8.h
++++ b/media_driver/linux/common/codec/ddi/media_ddi_encode_vp8.h
+@@ -287,4 +287,5 @@ private:
+         bool                                  picReference);
+ 
+     uint32_t   m_mvOffset = 0; //!< Motion vector offset.
++    uint32_t   m_framesPer100Sec = 0;
+ };
+-- 
+2.25.1
+
diff --git a/x11-libs/libva-intel-media-driver/files/0004-set-the-picture-flag-to-be-invalid-frame-if-the-ref-.patch b/x11-libs/libva-intel-media-driver/files/0004-set-the-picture-flag-to-be-invalid-frame-if-the-ref-.patch
deleted file mode 100644
index 1a13a69..0000000
--- a/x11-libs/libva-intel-media-driver/files/0004-set-the-picture-flag-to-be-invalid-frame-if-the-ref-.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From f14fd05d1a010b23e62ceb6e1dfff7908afde55d Mon Sep 17 00:00:00 2001
-From: XinfengZhang <carl.zhang@intel.com>
-Date: Tue, 15 Jun 2021 18:07:24 -0400
-Subject: [PATCH] set the picture flag to be invalid frame if the ref frame is
- invalid
-
-fixes #1189
-
-Signed-off-by: XinfengZhang <carl.zhang@intel.com>
----
- media_driver/linux/common/codec/ddi/media_ddi_encode_avc.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/media_driver/linux/common/codec/ddi/media_ddi_encode_avc.cpp b/media_driver/linux/common/codec/ddi/media_ddi_encode_avc.cpp
-index f398467e..02453ab0 100644
---- a/media_driver/linux/common/codec/ddi/media_ddi_encode_avc.cpp
-+++ b/media_driver/linux/common/codec/ddi/media_ddi_encode_avc.cpp
-@@ -2201,6 +2201,7 @@ void DdiEncodeAvc::GetSlcRefIdx(CODEC_PICTURE *picReference, CODEC_PICTURE *slcR
-         if (i == CODEC_MAX_NUM_REF_FRAME)
-         {
-             slcReference->FrameIdx = CODEC_AVC_NUM_UNCOMPRESSED_SURFACE;
-+            slcReference->PicFlags = PICTURE_INVALID;
-         }
-     }
- }
--- 
-2.25.1
-
diff --git a/x11-libs/libva-intel-media-driver/files/0005-Encode-Fix-default-MMC-enabling-for-JPEG-encoder.patch b/x11-libs/libva-intel-media-driver/files/0005-Encode-Fix-default-MMC-enabling-for-JPEG-encoder.patch
new file mode 100644
index 0000000..c50d91e
--- /dev/null
+++ b/x11-libs/libva-intel-media-driver/files/0005-Encode-Fix-default-MMC-enabling-for-JPEG-encoder.patch
@@ -0,0 +1,40 @@
+From 90de0f7a1e9b7dc9ef34423739ffacf2fe917584 Mon Sep 17 00:00:00 2001
+From: dmitrybrazhkin <dmitry.brazhkin@intel.com>
+Date: Fri, 9 Jul 2021 06:02:10 +0800
+Subject: [PATCH 1/2] [Encode] Fix default MMC enabling for JPEG encoder
+
+m_mmcState should be initialized after m_hwInterface, since m_hwInterface->m_enableCodecMmc is used as a condition for enabling/disabling MMC. So move InitMmcState() from CodechalEncodeJpegStateG12 constructor (where m_hwInterface is not inited) to CodechalEncodeJpegStateG12::Initialize()
+---
+ .../agnostic/gen12/codec/hal/codechal_encode_jpeg_g12.cpp     | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/media_driver/agnostic/gen12/codec/hal/codechal_encode_jpeg_g12.cpp b/media_driver/agnostic/gen12/codec/hal/codechal_encode_jpeg_g12.cpp
+index 84296273c7cf..e6d8826b7a12 100644
+--- a/media_driver/agnostic/gen12/codec/hal/codechal_encode_jpeg_g12.cpp
++++ b/media_driver/agnostic/gen12/codec/hal/codechal_encode_jpeg_g12.cpp
+@@ -1,5 +1,5 @@
+ /*
+-* Copyright (c) 2017-2019, Intel Corporation
++* Copyright (c) 2017-2021, Intel Corporation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+@@ -36,7 +36,6 @@ CodechalEncodeJpegStateG12::CodechalEncodeJpegStateG12(
+         m_sinlgePipeVeState(nullptr)
+ {
+     CODECHAL_ENCODE_FUNCTION_ENTER;
+-    InitMmcState();
+ 
+     CODECHAL_ENCODE_CHK_NULL_NO_STATUS_RETURN(m_osInterface);
+     Mos_SetVirtualEngineSupported(m_osInterface, true);
+@@ -150,6 +149,7 @@ MOS_STATUS CodechalEncodeJpegStateG12::Initialize(CodechalSetting  *settings)
+     CODECHAL_ENCODE_CHK_NULL_RETURN(m_miInterface);
+     CODECHAL_ENCODE_CHK_NULL_RETURN(settings);
+ 
++    CODECHAL_ENCODE_CHK_STATUS_RETURN(InitMmcState());
+     CODECHAL_ENCODE_CHK_STATUS_RETURN(CodechalEncoderState::Initialize(settings));
+ 
+     // Picture Level Commands
+-- 
+2.29.0
+
diff --git a/x11-libs/libva-intel-media-driver/files/0006-Encode-Enable-Jpeg-MMC-for-G12.patch b/x11-libs/libva-intel-media-driver/files/0006-Encode-Enable-Jpeg-MMC-for-G12.patch
new file mode 100644
index 0000000..1df0a3f
--- /dev/null
+++ b/x11-libs/libva-intel-media-driver/files/0006-Encode-Enable-Jpeg-MMC-for-G12.patch
@@ -0,0 +1,199 @@
+From 8c59834aa9050a7305901506e8b9125f54e38e5e Mon Sep 17 00:00:00 2001
+From: IvanLosev <ivan.losev@intel.com>
+Date: Mon, 26 Jul 2021 22:26:38 +0800
+Subject: [PATCH 2/2] [Encode] Enable Jpeg MMC for G12
+
+Set propper mmc state for jpeg raw surface
+---
+ .../common/codec/hal/codechal_encode_jpeg.cpp |  3 +
+ .../codec/hal/codechal_encode_jpeg_g12.cpp    |  4 +-
+ .../hal/codechal_mmc_encode_jpeg_g12.cpp      | 57 +++++++++++++++++++
+ .../codec/hal/codechal_mmc_encode_jpeg_g12.h  | 53 +++++++++++++++++
+ .../agnostic/gen12/codec/hal/media_srcs.cmake | 11 ++++
+ 5 files changed, 126 insertions(+), 2 deletions(-)
+ create mode 100644 media_driver/agnostic/gen12/codec/hal/codechal_mmc_encode_jpeg_g12.cpp
+ create mode 100644 media_driver/agnostic/gen12/codec/hal/codechal_mmc_encode_jpeg_g12.h
+
+diff --git a/media_driver/agnostic/common/codec/hal/codechal_encode_jpeg.cpp b/media_driver/agnostic/common/codec/hal/codechal_encode_jpeg.cpp
+index 55ced95f685d..49dcfdd95b2b 100644
+--- a/media_driver/agnostic/common/codec/hal/codechal_encode_jpeg.cpp
++++ b/media_driver/agnostic/common/codec/hal/codechal_encode_jpeg.cpp
+@@ -599,6 +599,9 @@ MOS_STATUS CodechalEncodeJpegState::ExecutePictureLevel()
+     pipeBufAddrParams.Mode          = m_mode;
+     pipeBufAddrParams.psRawSurface  = &m_rawSurface; // original picture to be encoded
+ 
++    CODECHAL_ENCODE_CHK_NULL_RETURN(m_mmcState);
++    CODECHAL_ENCODE_CHK_STATUS_RETURN(m_mmcState->SetPipeBufAddr(&pipeBufAddrParams, &cmdBuffer));
++
+     CODECHAL_DEBUG_TOOL(
+         CODECHAL_ENCODE_CHK_STATUS_RETURN(m_debugInterface->DumpYUVSurface(
+             &m_rawSurface,
+diff --git a/media_driver/agnostic/gen12/codec/hal/codechal_encode_jpeg_g12.cpp b/media_driver/agnostic/gen12/codec/hal/codechal_encode_jpeg_g12.cpp
+index e6d8826b7a12..e480866fb92b 100644
+--- a/media_driver/agnostic/gen12/codec/hal/codechal_encode_jpeg_g12.cpp
++++ b/media_driver/agnostic/gen12/codec/hal/codechal_encode_jpeg_g12.cpp
+@@ -25,7 +25,7 @@
+ //!
+ 
+ #include "codechal_encode_jpeg_g12.h"
+-#include "codechal_mmc_g12.h"
++#include "codechal_mmc_encode_jpeg_g12.h"
+ #include "mos_util_user_interface.h"
+ 
+ CodechalEncodeJpegStateG12::CodechalEncodeJpegStateG12(
+@@ -72,7 +72,7 @@ MOS_STATUS CodechalEncodeJpegStateG12::InitMmcState()
+ {
+     CODECHAL_ENCODE_FUNCTION_ENTER;
+ #ifdef _MMC_SUPPORTED
+-    m_mmcState = MOS_New(CodecHalMmcStateG12, m_hwInterface);
++    m_mmcState = MOS_New(CodechalMmcEncodeJpegG12, m_hwInterface, this);
+     CODECHAL_ENCODE_CHK_NULL_RETURN(m_mmcState);
+ #endif
+     return MOS_STATUS_SUCCESS;
+diff --git a/media_driver/agnostic/gen12/codec/hal/codechal_mmc_encode_jpeg_g12.cpp b/media_driver/agnostic/gen12/codec/hal/codechal_mmc_encode_jpeg_g12.cpp
+new file mode 100644
+index 000000000000..07f71c59924a
+--- /dev/null
++++ b/media_driver/agnostic/gen12/codec/hal/codechal_mmc_encode_jpeg_g12.cpp
+@@ -0,0 +1,57 @@
++/*
++* Copyright (c) 2021, Intel Corporation
++*
++* Permission is hereby granted, free of charge, to any person obtaining a
++* copy of this software and associated documentation files (the "Software"),
++* to deal in the Software without restriction, including without limitation
++* the rights to use, copy, modify, merge, publish, distribute, sublicense,
++* and/or sell copies of the Software, and to permit persons to whom the
++* Software is furnished to do so, subject to the following conditions:
++*
++* The above copyright notice and this permission notice shall be included
++* in all copies or substantial portions of the Software.
++*
++* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
++* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
++* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
++* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
++* OTHER DEALINGS IN THE SOFTWARE.
++*/
++//!
++//! \file     codechal_mmc_encode_jpeg_g12.cpp
++//! \brief    Impelements the public interface for Gen12 CodecHal Media Memory Compression
++//!
++
++#include "codechal_mmc_encode_jpeg_g12.h"
++
++CodechalMmcEncodeJpegG12::CodechalMmcEncodeJpegG12(
++    CodechalHwInterface    *hwInterface,
++    void *standardState):
++    CodecHalMmcStateG12(hwInterface)
++{
++    MOS_FUNCTION_ENTER(MOS_COMPONENT_CODEC, MOS_CODEC_SUBCOMP_ENCODE);
++    InitEncodeMmcEnable(hwInterface);
++}
++
++MOS_STATUS CodechalMmcEncodeJpegG12::SetPipeBufAddr(
++    PMHW_VDBOX_PIPE_BUF_ADDR_PARAMS pipeBufAddrParams,
++    PMOS_COMMAND_BUFFER cmdBuffer)
++{
++    MOS_FUNCTION_ENTER(MOS_COMPONENT_CODEC,  MOS_CODEC_SUBCOMP_ENCODE);
++    MOS_CHK_NULL_RETURN(MOS_COMPONENT_CODEC, MOS_CODEC_SUBCOMP_ENCODE, pipeBufAddrParams);
++    MOS_CHK_NULL_RETURN(MOS_COMPONENT_CODEC, MOS_CODEC_SUBCOMP_ENCODE, pipeBufAddrParams->psRawSurface);
++
++    if (m_mmcEnabled)
++    {
++        MOS_CHK_STATUS_RETURN(MOS_COMPONENT_CODEC, MOS_CODEC_SUBCOMP_ENCODE, m_osInterface->pfnGetMemoryCompressionMode(m_osInterface,
++            &pipeBufAddrParams->psRawSurface->OsResource, &pipeBufAddrParams->RawSurfMmcState));
++    }
++    else
++    {
++        pipeBufAddrParams->RawSurfMmcState = MOS_MEMCOMP_DISABLED;
++    }
++
++    return MOS_STATUS_SUCCESS;
++}
+diff --git a/media_driver/agnostic/gen12/codec/hal/codechal_mmc_encode_jpeg_g12.h b/media_driver/agnostic/gen12/codec/hal/codechal_mmc_encode_jpeg_g12.h
+new file mode 100644
+index 000000000000..79636fd1769d
+--- /dev/null
++++ b/media_driver/agnostic/gen12/codec/hal/codechal_mmc_encode_jpeg_g12.h
+@@ -0,0 +1,53 @@
++/*
++* Copyright (c) 2021, Intel Corporation
++*
++* Permission is hereby granted, free of charge, to any person obtaining a
++* copy of this software and associated documentation files (the "Software"),
++* to deal in the Software without restriction, including without limitation
++* the rights to use, copy, modify, merge, publish, distribute, sublicense,
++* and/or sell copies of the Software, and to permit persons to whom the
++* Software is furnished to do so, subject to the following conditions:
++*
++* The above copyright notice and this permission notice shall be included
++* in all copies or substantial portions of the Software.
++*
++* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
++* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
++* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
++* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
++* OTHER DEALINGS IN THE SOFTWARE.
++*/
++//!
++//! \file     codechal_mmc_encode_jpeg_g12.h
++//! \brief    Defines the public interface for CodecHal Media Memory Compression
++//!
++#pragma once
++
++#include "codechal_mmc_g12.h"
++
++//! \class CodechalMmcEncodeJpegG12
++//! \brief Media memory compression encode JPEG state for Gen12. This class defines the member fields
++//!        functions etc used by encode JPEG memory compression.
++//!
++class CodechalMmcEncodeJpegG12 : public CodecHalMmcStateG12
++{
++public:
++
++    //!
++    //! \brief    Constructor
++    //!
++    CodechalMmcEncodeJpegG12(
++        CodechalHwInterface *hwInterface,
++        void                *encoderState);
++
++    //!
++    //! \brief    Destructor
++    //!
++    virtual ~CodechalMmcEncodeJpegG12() {}
++
++    MOS_STATUS SetPipeBufAddr(
++        PMHW_VDBOX_PIPE_BUF_ADDR_PARAMS pipeBufAddrParams,
++        PMOS_COMMAND_BUFFER             cmdBuffer = nullptr) override;
++};
+diff --git a/media_driver/agnostic/gen12/codec/hal/media_srcs.cmake b/media_driver/agnostic/gen12/codec/hal/media_srcs.cmake
+index a6d715f6009c..829cf2444c17 100644
+--- a/media_driver/agnostic/gen12/codec/hal/media_srcs.cmake
++++ b/media_driver/agnostic/gen12/codec/hal/media_srcs.cmake
+@@ -435,6 +435,17 @@ if(${JPEG_Encode_Supported} STREQUAL "yes")
+         ${TMP_3_HEADERS_}
+         ${CMAKE_CURRENT_LIST_DIR}/codechal_encode_jpeg_g12.h
+     )
++
++    if(${MMC_Supported} STREQUAL "yes")
++        set(TMP_2_SOURCES_
++            ${TMP_2_SOURCES_}
++            ${CMAKE_CURRENT_LIST_DIR}/codechal_mmc_encode_jpeg_g12.cpp
++        )
++        set(TMP_2_HEADERS_
++            ${TMP_2_HEADERS_}
++            ${CMAKE_CURRENT_LIST_DIR}/codechal_mmc_encode_jpeg_g12.h
++        )
++    endif()
+ endif()
+ 
+ set(SOURCES_
+-- 
+2.29.0
+
diff --git a/x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.1.3-r5.ebuild b/x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.1.3-r5.ebuild
deleted file mode 120000
index d24f936..0000000
--- a/x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.1.3-r5.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-libva-intel-media-driver-21.1.3.ebuild
\ No newline at end of file
diff --git a/x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.1.3.ebuild b/x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.1.3.ebuild
deleted file mode 100644
index 56083b4..0000000
--- a/x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.1.3.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-RESTRICT="nomirror"
-
-inherit cmake
-
-SRC_URI="https://github.com/intel/media-driver/archive/intel-media-${PV}.tar.gz"
-S="${WORKDIR}/media-driver-intel-media-${PV}"
-KEYWORDS="*"
-DESCRIPTION="Intel Media Driver for VAAPI (iHD)"
-HOMEPAGE="https://github.com/intel/media-driver"
-
-LICENSE="MIT BSD"
-SLOT="0"
-IUSE="ihd_cmrtlib"
-
-DEPEND=">=media-libs/gmmlib-21.1.1
-	>=x11-libs/libva-2.11.0
-"
-RDEPEND="${DEPEND}"
-
-PATCHES=(
-	"${FILESDIR}"/0001-Disable-IPC-usage.patch
-	"${FILESDIR}"/0002-change-slice-header-prefix-for-AVC-Vdenc.patch
-	"${FILESDIR}"/0003-Stop-using-mos_bo_subdata.patch
-	"${FILESDIR}"/0004-set-the-picture-flag-to-be-invalid-frame-if-the-ref-.patch
-)
-
-src_configure() {
-	local mycmakeargs=(
-		-DMEDIA_RUN_TEST_SUITE=OFF
-		-DBUILD_TYPE=Release
-		-DPLATFORM=linux
-		-DBUILD_CMRTLIB="$(usex ihd_cmrtlib ON OFF)"
-		-DCMAKE_DISABLE_FIND_PACKAGE_X11=TRUE
-	)
-
-	cmake_src_configure
-}
diff --git a/x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.2.3-r7.ebuild b/x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.2.3-r7.ebuild
new file mode 120000
index 0000000..468d8dd
--- /dev/null
+++ b/x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.2.3-r7.ebuild
@@ -0,0 +1 @@
+libva-intel-media-driver-21.2.3.ebuild
\ No newline at end of file
diff --git a/x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.2.3.ebuild b/x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.2.3.ebuild
new file mode 100644
index 0000000..19f2dcc
--- /dev/null
+++ b/x11-libs/libva-intel-media-driver/libva-intel-media-driver-21.2.3.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+SRC_URI="https://github.com/intel/media-driver/archive/intel-media-${PV}.tar.gz"
+S="${WORKDIR}/media-driver-intel-media-${PV}"
+KEYWORDS="*"
+DESCRIPTION="Intel Media Driver for VAAPI (iHD)"
+HOMEPAGE="https://github.com/intel/media-driver"
+
+LICENSE="MIT BSD"
+SLOT="0"
+IUSE="ihd_cmrtlib"
+
+DEPEND=">=media-libs/gmmlib-21.2.1
+	>=x11-libs/libva-2.12.0
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+	"${FILESDIR}"/0001-Disable-IPC-usage.patch
+	"${FILESDIR}"/0002-change-slice-header-prefix-for-AVC-Vdenc.patch
+	"${FILESDIR}"/0003-Fix-MMD-Device-Init-Fail-issue.patch
+	"${FILESDIR}"/0004-reset-brc-when-frame-rate-changes-for-VP8e.patch
+	"${FILESDIR}"/0005-Encode-Fix-default-MMC-enabling-for-JPEG-encoder.patch
+	"${FILESDIR}"/0006-Encode-Enable-Jpeg-MMC-for-G12.patch
+)
+
+src_configure() {
+	local mycmakeargs=(
+		-DMEDIA_RUN_TEST_SUITE=OFF
+		-DBUILD_TYPE=Release
+		-DPLATFORM=linux
+		-DBUILD_CMRTLIB="$(usex ihd_cmrtlib ON OFF)"
+		-DCMAKE_DISABLE_FIND_PACKAGE_X11=TRUE
+	)
+
+	cmake_src_configure
+}
diff --git a/x11-libs/libva/Manifest b/x11-libs/libva/Manifest
index cf79390..58de513 100644
--- a/x11-libs/libva/Manifest
+++ b/x11-libs/libva/Manifest
@@ -1 +1 @@
-DIST libva-2.11.0.tar.gz 252204 BLAKE2B b56c47296493a9ecce7758661386d98d9a47082d8f16ab3b352f84591291e85aefc336a209433a901f7c4be1f54570221e9955666b22125740cc060542099394 SHA512 592df16bca06c93d252d27b2105032f020b0ca30f7937533918a497f385ec59b8a1e19c5d89047c197ddc1aab056128ab114b9ec29de3e968cb96bfa8d85f02a
+DIST libva-2.12.0.tar.gz 257645 BLAKE2B 8436f654e3fec57dd490aad6ff19d7fd9aa33a90f32535c0bd57ad47ab6c5728b7a67b277c46f854b781747fd641a76d068f052d95104d515eb9a9b206041edc SHA512 53b22dd5166b92bceb508e7ecd73ae023d95928a76db0e61f4326652f23f6603c507b2ee604779293c7d7a02ef0f7b082e3b181bbb55f0a63416196088af1b51
diff --git a/x11-libs/libva/libva-2.11.0-r1.ebuild b/x11-libs/libva/libva-2.11.0-r1.ebuild
deleted file mode 120000
index cebc34e..0000000
--- a/x11-libs/libva/libva-2.11.0-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-libva-2.11.0.ebuild
\ No newline at end of file
diff --git a/x11-libs/libva/libva-2.11.0.ebuild b/x11-libs/libva/libva-2.11.0.ebuild
deleted file mode 100644
index 6e9a0cc..0000000
--- a/x11-libs/libva/libva-2.11.0.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools multilib-minimal
-
-DESCRIPTION="Video Acceleration (VA) API for Linux"
-HOMEPAGE="https://01.org/linuxmedia/vaapi"
-SRC_URI="https://github.com/intel/libva/releases/download/${PV}/${P}.tar.gz"
-KEYWORDS="*"
-LICENSE="MIT"
-SLOT="0/$(ver_cut 1)"
-IUSE="utils beanstalk internal intel_ihd_pavp"
-
-VIDEO_CARDS="i965 amdgpu iHD"
-for x in ${VIDEO_CARDS}; do
-	IUSE+=" video_cards_${x}"
-done
-
-RDEPEND="
-	>=x11-libs/libdrm-2.4.46[${MULTILIB_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
-	virtual/pkgconfig
-"
-PDEPEND="
-	video_cards_i965? ( >=x11-libs/libva-intel-driver-2.0.0[${MULTILIB_USEDEP}] )
-	video_cards_iHD? (
-		beanstalk? (
-			internal? ( x11-libs/libva-intel-media-driver-pavp[${MULTILIB_USEDEP}] )
-			!internal? (
-				intel_ihd_pavp? ( x11-libs/libva-intel-media-driver-pavp[${MULTILIB_USEDEP}] )
-				!intel_ihd_pavp? ( ~x11-libs/libva-intel-media-driver-21.1.3[${MULTILIB_USEDEP}] )
-			)
-		)
-		!beanstalk? ( ~x11-libs/libva-intel-media-driver-21.1.3[${MULTILIB_USEDEP}] )
-	)
-	video_cards_amdgpu? ( virtual/opengles[${MULTILIB_USEDEP}] )
-	utils? ( media-video/libva-utils )
-"
-
-DOCS=( NEWS )
-
-MULTILIB_WRAPPED_HEADERS=(
-/usr/include/va/va_backend_glx.h
-/usr/include/va/va_x11.h
-/usr/include/va/va_dri2.h
-/usr/include/va/va_dricommon.h
-/usr/include/va/va_glx.h
-)
-
-src_prepare() {
-	default
-	eautoreconf
-}
-
-multilib_src_configure() {
-	local myeconfargs=(
-		--with-drivers-path="${EPREFIX}/usr/$(get_libdir)/va/drivers"
-		--enable-drm
-		--disable-x11
-		--disable-glx
-		--disable-wayland
-		--enable-va-messaging
-	)
-	ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-}
-
-multilib_src_install_all() {
-	default
-	find "${ED}" -type f -name "*.la" -delete || die
-}
diff --git a/x11-libs/libva/libva-2.12.0-r1.ebuild b/x11-libs/libva/libva-2.12.0-r1.ebuild
new file mode 120000
index 0000000..901b79a
--- /dev/null
+++ b/x11-libs/libva/libva-2.12.0-r1.ebuild
@@ -0,0 +1 @@
+libva-2.12.0.ebuild
\ No newline at end of file
diff --git a/x11-libs/libva/libva-2.12.0.ebuild b/x11-libs/libva/libva-2.12.0.ebuild
new file mode 100644
index 0000000..c6179d7
--- /dev/null
+++ b/x11-libs/libva/libva-2.12.0.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools multilib-minimal
+
+DESCRIPTION="Video Acceleration (VA) API for Linux"
+HOMEPAGE="https://01.org/linuxmedia/vaapi"
+SRC_URI="https://github.com/intel/libva/releases/download/${PV}/${P}.tar.gz"
+KEYWORDS="*"
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1)"
+IUSE="utils intel_oemcrypto internal intel_ihd_pavp"
+
+VIDEO_CARDS="i965 amdgpu iHD"
+for x in ${VIDEO_CARDS}; do
+	IUSE+=" video_cards_${x}"
+done
+
+RDEPEND="
+	>=x11-libs/libdrm-2.4.46[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+	virtual/pkgconfig
+"
+PDEPEND="
+	video_cards_i965? ( >=x11-libs/libva-intel-driver-2.0.0[${MULTILIB_USEDEP}] )
+	video_cards_iHD? (
+		intel_oemcrypto? (
+			internal? ( x11-libs/libva-intel-media-driver-pavp[${MULTILIB_USEDEP}] )
+			!internal? (
+				intel_ihd_pavp? ( x11-libs/libva-intel-media-driver-pavp[${MULTILIB_USEDEP}] )
+				!intel_ihd_pavp? ( ~x11-libs/libva-intel-media-driver-21.2.3[${MULTILIB_USEDEP}] )
+			)
+		)
+		!intel_oemcrypto? ( ~x11-libs/libva-intel-media-driver-21.2.3[${MULTILIB_USEDEP}] )
+	)
+	video_cards_amdgpu? ( virtual/opengles[${MULTILIB_USEDEP}] )
+	utils? ( media-video/libva-utils )
+"
+
+DOCS=( NEWS )
+
+MULTILIB_WRAPPED_HEADERS=(
+/usr/include/va/va_backend_glx.h
+/usr/include/va/va_x11.h
+/usr/include/va/va_dri2.h
+/usr/include/va/va_dricommon.h
+/usr/include/va/va_glx.h
+)
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+multilib_src_configure() {
+	local myeconfargs=(
+		--with-drivers-path="${EPREFIX}/usr/$(get_libdir)/va/drivers"
+		--enable-drm
+		--disable-x11
+		--disable-glx
+		--disable-wayland
+		--enable-va-messaging
+	)
+	ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_install_all() {
+	default
+	find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/x11-misc/xkeyboard-config/OWNERS b/x11-misc/xkeyboard-config/OWNERS
index c0f047e..938e18e 100644
--- a/x11-misc/xkeyboard-config/OWNERS
+++ b/x11-misc/xkeyboard-config/OWNERS
@@ -1,2 +1,6 @@
+set noparent
+
 dvallet@chromium.org
 shend@chromium.org
+
+# Please send reviews to e14s-review@google.com and one of the owners above.
diff --git a/x11-misc/xkeyboard-config/files/xkeyboard-config-2.27-gb-colemak.patch b/x11-misc/xkeyboard-config/files/xkeyboard-config-2.27-gb-colemak.patch
new file mode 100644
index 0000000..d6c7819
--- /dev/null
+++ b/x11-misc/xkeyboard-config/files/xkeyboard-config-2.27-gb-colemak.patch
@@ -0,0 +1,12 @@
+Patch for https://crbug.com/1149426 . Fixed in upstream 2.32
+
+index c2529ef..809fe1b 100644
+--- a/symbols/gb
++++ b/symbols/gb
+@@ -118,7 +118,7 @@ xkb_symbols "colemak" {
+     key <BKSL> { [numbersign, asciitilde,   dead_grave,   dead_breve ] };
+     key <LSGT> { [ backslash,        bar,          bar,    brokenbar ] };
+ 
+-    include "level3(ralt_switch_multikey)"
++    include "level3(ralt_switch)"
+ };
diff --git a/x11-misc/xkeyboard-config/xkeyboard-config-2.27-r11.ebuild b/x11-misc/xkeyboard-config/xkeyboard-config-2.27-r12.ebuild
similarity index 100%
rename from x11-misc/xkeyboard-config/xkeyboard-config-2.27-r11.ebuild
rename to x11-misc/xkeyboard-config/xkeyboard-config-2.27-r12.ebuild
diff --git a/x11-misc/xkeyboard-config/xkeyboard-config-2.27.ebuild b/x11-misc/xkeyboard-config/xkeyboard-config-2.27.ebuild
index 8f375f6..7ee8722 100644
--- a/x11-misc/xkeyboard-config/xkeyboard-config-2.27.ebuild
+++ b/x11-misc/xkeyboard-config/xkeyboard-config-2.27.ebuild
@@ -32,6 +32,7 @@
 "
 
 PATCHES=(
+	"${FILESDIR}"/${P}-gb-colemak.patch
 	"${FILESDIR}"/${P}-gb-dvorak-deadkey.patch
 	"${FILESDIR}"/${P}-neo-capslock-remap.patch
 	"${FILESDIR}"/${P}-disable-level5-lock.patch